From 886d631a3c27d1cbb97ffba97c8361057595b17d Mon Sep 17 00:00:00 2001 From: Donna-Marie Smith Date: Thu, 21 Nov 2024 12:40:22 +0000 Subject: [PATCH 1/6] Created initial 2024.11 Branch --- config/_default/config.toml | 9 +- content/en/docs/2024.11/FAQs/_index.md | 8 + content/en/docs/2024.11/Guides/_index.md | 6 + .../2024.11/Guides/cortex-gateway/_index.md | 8 + .../Guides/cortex-gateway/help/_index.md | 7 + .../help/cortex-release-notes.md | 7 + .../Guides/cortex-gateway/settings/_index.md | 7 + .../settings/ldap-authorisation.md | 7 + .../settings/ldap-connection.md | 7 + .../settings/license-consumption.md | 7 + .../cortex-gateway/settings/packages.md | 7 + .../settings/studio-authorisation.md | 7 + .../cortex-gateway/settings/studio-export.md | 7 + .../settings/studio-hierarchy.md | 7 + .../cortex-gateway/settings/studio-import.md | 7 + .../settings/version-control.md | 7 + .../cortex-gateway/welcome-page/_index.md | 13 + .../Guides/cortex-innovation/_index.md | 6 + .../core-application/_index.md | 6 + .../core-application/services/_index.md | 6 + .../services/api-gateway-service/_index.md | 7 + .../services/authorisation-service/_index.md | 7 + .../concurrency-management-service/_index.md | 7 + .../_index.md | 7 + .../services/data-storage-service/_index.md | 7 + .../execution-management-service/_index.md | 7 + .../licence-management-service/_index.md | 7 + .../services/listeners-service/_index.md | 7 + .../package-management-service/_index.md | 7 + .../services/provisioning-service/_index.md | 7 + .../services/scheduling-service/_index.md | 7 + .../services/triggers-service/_index.md | 7 + .../execution-application/_index.md | 6 + .../execution-application/services/_index.md | 6 + .../services/execution-service/_index.md | 7 + .../cortex-interaction-portal/_index.md | 10 + .../2024.11/Guides/cortex-studio/_index.md | 8 + .../2024.11/Guides/cortex-studio/debugging.md | 20 + .../Guides/cortex-studio/east-panel.md | 40 + .../Guides/cortex-studio/expression-editor.md | 34 + .../Guides/cortex-studio/literal-editor.md | 26 + .../Guides/cortex-studio/main-display-area.md | 72 ++ .../Guides/cortex-studio/navigation.md | 24 + .../cortex-studio/package-management.md | 20 + .../2024.11/Guides/cortex-studio/palettes.md | 8 + .../Guides/cortex-studio/south-panel.md | 68 ++ .../Guides/cortex-studio/variable-editor.md | 31 + .../upgrade-cortex/2024.1-to-2024.3/_index.md | 6 + .../multiple-server-with-ha/_index.md | 6 + .../multiple-server-with-ha/try-it-out.md | 19 + ...de-application-and-loadbalancer-servers.md | 65 ++ .../upgrade-web-application-server/_index.md | 10 + .../prerequisites.md | 30 + .../upgrade-debugger.md | 32 + .../upgrade-gateway.md | 29 + .../single-server-without-ha/_index.md | 6 + .../single-server-without-ha/try-it-out.md | 19 + .../upgrade-application-server.md | 37 + .../upgrade-web-application-server.md | 38 + .../upgrade-cortex/2024.3-to-2024.5/_index.md | 6 + .../multiple-server-with-ha/_index.md | 6 + .../multiple-server-with-ha/try-it-out.md | 19 + ...de-application-and-loadbalancer-servers.md | 65 ++ .../upgrade-web-application-server/_index.md | 10 + .../prerequisites.md | 30 + .../upgrade-debugger.md | 32 + .../upgrade-gateway.md | 29 + .../single-server-without-ha/_index.md | 6 + .../single-server-without-ha/try-it-out.md | 19 + .../upgrade-application-server.md | 37 + .../upgrade-web-application-server.md | 38 + .../upgrade-cortex/2024.5-to-2024.7/_index.md | 6 + .../multiple-server-with-ha/_index.md | 6 + .../multiple-server-with-ha/try-it-out.md | 19 + ...de-application-and-loadbalancer-servers.md | 79 ++ .../upgrade-web-application-server/_index.md | 10 + .../prerequisites.md | 32 + .../upgrade-debugger.md | 32 + .../upgrade-gateway.md | 37 + .../single-server-without-ha/_index.md | 6 + .../single-server-without-ha/try-it-out.md | 19 + .../upgrade-application-server.md | 37 + .../upgrade-web-application-server.md | 48 + .../upgrade-cortex/2024.7-to-2024.9/_index.md | 6 + .../multiple-server-with-ha/_index.md | 6 + .../multiple-server-with-ha/try-it-out.md | 19 + ...de-application-and-loadbalancer-servers.md | 79 ++ .../upgrade-web-application-server/_index.md | 10 + .../prerequisites.md | 30 + .../upgrade-debugger.md | 33 + .../upgrade-gateway.md | 59 ++ .../single-server-without-ha/_index.md | 6 + .../single-server-without-ha/try-it-out.md | 19 + .../upgrade-application-server.md | 37 + .../upgrade-web-application-server.md | 64 ++ .../2024.11/Guides/upgrade-cortex/_index.md | 6 + .../Guides/upgrade-cortex/advanced/_index.md | 6 + .../advanced/ssl-best-practices.md | 9 + .../upgrade-cortex/advanced/upgrade-flows.md | 23 + .../Guides/upgrade-observability/_index.md | 6 + .../upgrade-observability/cloud/_index.md | 6 + .../cloud/grafana/_index.md | 6 + .../cloud/grafana/prerequisites.md | 44 + .../cloud/grafana/try-it-out.md | 48 + .../cloud/grafana/upgrade-promtail.md | 75 ++ .../dashboards/Grafana/_index.md | 6 + .../dashboards/Grafana/try-it-out.md | 36 + .../dashboards/Grafana/upgrade-dashboards.md | 40 + .../dashboards/_index.md | 6 + .../on-premise/_index.md | 6 + .../on-premise/grafana/_index.md | 6 + .../on-premise/grafana/prerequisites.md | 60 ++ .../on-premise/grafana/try-it-out.md | 54 ++ .../on-premise/grafana/upgrade-grafana.md | 31 + .../on-premise/grafana/upgrade-loki.md | 93 ++ .../on-premise/grafana/upgrade-promtail.md | 75 ++ content/en/docs/2024.11/Overview/_index.md | 87 ++ .../en/docs/2024.11/Reference/APIs/_index.md | 6 + .../Reference/APIs/cortex-gateway/_index.md | 8 + .../APIs/cortex-innovation/_index.md | 6 + .../core-application/_index.md | 6 + .../core-application/services/_index.md | 6 + .../services/api-gateway-service/_index.md | 8 + .../licence-management-service/_index.md | 8 + .../package-management-service/_index.md | 8 + .../services/provisioning-service/_index.md | 8 + .../execution-application/_index.md | 6 + .../execution-application/services/_index.md | 6 + .../services/execution-service/_index.md | 8 + .../Reference/APIs/cortex-studio/_index.md | 9 + .../Reference/Blocks/Dictionaries/_index.md | 5 + .../Blocks/Dictionaries/add-item/_index.md | 5 + .../add-item/add-item-with-key-block-3.md | 172 ++++ .../Dictionaries/contains-item/_index.md | 5 + ...ontains-item-with-key-and-value-block-3.md | 192 ++++ .../contains-item-with-key-block-3.md | 167 ++++ .../contains-item-with-value-block-3.md | 169 ++++ .../contains-items-with-keys-block-3.md | 174 ++++ .../contains-items-with-values-block-3.md | 170 ++++ .../Blocks/Dictionaries/get-count/_index.md | 5 + .../get-count-of-all-items-block-3.md | 116 +++ .../get-count-of-items-with-value-block-3.md | 146 +++ ...get-counts-of-items-with-values-block-3.md | 151 +++ .../Blocks/Dictionaries/get-item/_index.md | 5 + .../get-item/get-all-items-block-3.md | 116 +++ .../get-item/get-item-with-key-block-3.md | 202 ++++ .../get-item/get-items-with-key-block-3.md | 145 +++ .../Blocks/Dictionaries/get-key/_index.md | 5 + .../get-key/get-all-keys-block-3.md | 116 +++ .../Blocks/Dictionaries/remove-item/_index.md | 5 + .../remove-item/remove-all-items-block-3.md | 121 +++ .../remove-item-with-key-block-3.md | 216 +++++ .../remove-item-with-value-block-3.md | 213 ++++ .../remove-items-with-key-block-3.md | 162 ++++ .../remove-items-with-keys-block-3.md | 167 ++++ .../remove-items-with-value-block-3.md | 161 +++ .../remove-items-with-values-block-3.md | 164 ++++ .../Blocks/Dictionaries/set-item/_index.md | 5 + .../set-item/set-all-items-block-3.md | 123 +++ .../set-item/set-item-with-key-block-3.md | 211 ++++ .../set-item/set-item-with-value-block-3.md | 206 ++++ .../set-item/set-items-with-key-block-3.md | 155 +++ .../set-item/set-items-with-keys-block-3.md | 150 +++ .../set-item/set-items-with-value-block-3.md | 152 +++ .../set-item/set-items-with-values-block-3.md | 160 +++ .../Reference/Blocks/Exceptions/_index.md | 5 + .../handle-block-exception/_index.md | 5 + .../handle-block-exception-block.md | 132 +++ ...-block-exception-matching-message-block.md | 229 +++++ ...block-exception-matching-messages-block.md | 233 +++++ ...lock-exception-matching-type-name-block.md | 228 +++++ ...ock-exception-matching-type-names-block.md | 232 +++++ .../handle-flow-exception/_index.md | 5 + .../handle-flow-exception-workspace-block.md | 143 +++ .../handle-workspace-exception/_index.md | 5 + .../handle-workspace-exception-block.md | 144 +++ .../Exceptions/rethrow-exception/_index.md | 5 + .../rethrow-exception-block.md | 89 ++ .../Exceptions/throw-exception/_index.md | 5 + .../throw-new-flow-exception-block.md | 185 ++++ .../Blocks/Files-And-Folders/_index.md | 5 + .../Files-And-Folders/check-file/_index.md | 5 + .../check-file/check-file-exists-block.md | 159 +++ .../Files-And-Folders/check-folder/_index.md | 5 + .../check-folder/check-folder-exists-block.md | 159 +++ .../Files-And-Folders/copy-file/_index.md | 5 + .../copy-file/copy-file-block.md | 224 +++++ .../copy-file/copy-files-block.md | 215 ++++ .../Files-And-Folders/copy-folder/_index.md | 5 + .../copy-folder/copy-folder-block.md | 386 ++++++++ .../copy-folder/copy-folders-block.md | 496 ++++++++++ .../copy-folder/duplicate-folder-block.md | 181 ++++ .../Files-And-Folders/create-folder/_index.md | 5 + .../create-folder/create-folder-block.md | 108 +++ .../create-folder/create-folders-block.md | 115 +++ .../Files-And-Folders/delete-file/_index.md | 5 + .../delete-file/delete-file-block.md | 110 +++ .../delete-file/delete-files-block.md | 121 +++ .../Files-And-Folders/delete-folder/_index.md | 5 + .../delete-folder/delete-folder-block.md | 163 ++++ .../delete-folder/delete-folders-block.md | 176 ++++ .../get-file-information/_index.md | 5 + .../get-file-information-block.md | 154 +++ .../get-folder-content/_index.md | 5 + .../get-folder-content-block.md | 389 ++++++++ .../get-folder-information/_index.md | 5 + .../get-folder-information-block.md | 158 +++ .../Files-And-Folders/move-file/_index.md | 5 + .../move-file/move-file-block.md | 223 +++++ .../move-file/move-files-block.md | 214 ++++ .../Files-And-Folders/move-folder/_index.md | 5 + .../move-folder/move-folder-block.md | 384 ++++++++ .../move-folder/move-folders-block.md | 494 ++++++++++ .../Files-And-Folders/read-file/_index.md | 5 + .../read-file/read-all-lines-block.md | 178 ++++ .../read-file/read-all-text-block.md | 173 ++++ .../Files-And-Folders/rename-folder/_index.md | 5 + .../rename-folder/rename-folder-block.md | 158 +++ .../Files-And-Folders/search-file/_index.md | 5 + .../search-file/search-file-block.md | 406 ++++++++ .../search-file/search-files-block.md | 527 ++++++++++ .../Files-And-Folders/write-file/_index.md | 5 + .../write-file/write-all-lines-block.md | 226 +++++ .../write-file/write-all-text-block.md | 223 +++++ .../Blocks/Lists/Get-Count/_index.md | 5 + .../get-count-of-all-items-block-2.md | 115 +++ .../get-count-of-items-with-value-block-2.md | 145 +++ .../get-count-of-items-with-values-block-2.md | 149 +++ .../Blocks/Lists/Get-Index/_index.md | 5 + .../get-index-of-item-with-value-block-2.md | 207 ++++ ...get-indexes-of-items-with-value-block-2.md | 153 +++ .../2024.11/Reference/Blocks/Lists/_index.md | 5 + .../Reference/Blocks/Lists/add-item/_index.md | 5 + .../add-item/add-item-at-beginning-block-2.md | 137 +++ .../Lists/add-item/add-item-at-end-block-2.md | 138 +++ .../add-item/add-item-at-index-block-2.md | 186 ++++ .../add-items-at-beginning-block-2.md | 139 +++ .../add-item/add-items-at-end-block-2.md | 139 +++ .../add-item/add-items-at-index-block-2.md | 185 ++++ .../Blocks/Lists/contains-item/_index.md | 5 + .../contains-item-with-value-block-2.md | 167 ++++ .../contains-items-with-values-block-2.md | 168 ++++ .../Reference/Blocks/Lists/get-item/_index.md | 5 + .../get-item/get-item-at-beginning-block-2.md | 113 +++ .../Lists/get-item/get-item-at-end-block-2.md | 113 +++ .../get-item/get-item-at-index-block-2.md | 157 +++ .../get-items-at-beginning-block-2.md | 137 +++ .../get-item/get-items-at-end-block-2.md | 137 +++ .../get-item/get-items-at-index-block-2.md | 162 ++++ .../get-item/get-items-at-indexes-block-2.md | 139 +++ .../Blocks/Lists/remove-item/_index.md | 5 + .../remove-item/remove-all-items-block-2.md | 121 +++ .../remove-duplicate-items-block-2.md | 153 +++ .../remove-item-at-beginning-block-2.md | 121 +++ .../remove-item/remove-item-at-end-block-2.md | 121 +++ .../remove-item-at-index-block-2.md | 163 ++++ .../remove-item-with-value-block-2.md | 207 ++++ .../remove-items-at-beginning-block-2.md | 123 +++ .../remove-items-at-end-block-2.md | 123 +++ .../remove-items-at-index-block-2.md | 148 +++ .../remove-items-at-indexes-block-2.md | 125 +++ .../remove-items-with-value-block-2.md | 156 +++ .../remove-items-with-values-block-2.md | 161 +++ .../Reference/Blocks/Lists/set-item/_index.md | 5 + .../Lists/set-item/set-all-items-block-2.md | 122 +++ .../set-item/set-item-at-beginning-block-2.md | 120 +++ .../Lists/set-item/set-item-at-end-block-2.md | 120 +++ .../set-item/set-item-at-index-block-2.md | 163 ++++ .../set-item/set-item-with-value-block-2.md | 200 ++++ .../set-items-at-beginning-block-2.md | 123 +++ .../set-item/set-items-at-end-block-2.md | 123 +++ .../set-item/set-items-at-index-block-2.md | 146 +++ .../set-item/set-items-at-indexes-block-2.md | 146 +++ .../set-item/set-items-with-value-block-2.md | 149 +++ .../set-item/set-items-with-values-block-2.md | 157 +++ .../Reference/Blocks/PowerShell/_index.md | 5 + .../execute-powershell-script/_index.md | 5 + .../execute-powershell-script-block-1.md | 392 ++++++++ .../Blocks/Text/Convert-To/_index.md | 5 + .../Convert-To/convert-to-camel-case-block.md | 120 +++ .../Convert-To/convert-to-lower-case-block.md | 120 +++ .../convert-to-pascal-case-block.md | 120 +++ .../Convert-To/convert-to-title-case-block.md | 120 +++ .../Convert-To/convert-to-upper-case-block.md | 120 +++ .../Reference/Blocks/Text/Get-Index/_index.md | 5 + .../Text/Get-Index/get-index-of-text-block.md | 335 +++++++ .../Get-Index/get-indexes-of-text-block.md | 303 ++++++ .../Blocks/Text/Get-Length/_index.md | 5 + .../Text/Get-Length/get-length-block.md | 89 ++ .../2024.11/Reference/Blocks/Text/_index.md | 5 + .../Reference/Blocks/Text/add-text/_index.md | 5 + .../add-text/add-text-after-index-block.md | 142 +++ .../add-text/add-text-at-beginning-block.md | 143 +++ .../Text/add-text/add-text-at-end-block.md | 143 +++ .../add-text/add-text-before-index-block.md | 144 +++ .../Blocks/Text/contains-text/_index.md | 5 + .../contains-text/contains-all-text-block.md | 261 +++++ .../contains-text/contains-any-text-block.md | 261 +++++ .../Text/contains-text/contains-text-block.md | 258 +++++ .../Blocks/Text/decode-text/_index.md | 5 + .../Text/decode-text/decode-text-block.md | 227 +++++ .../Blocks/Text/encode-text/_index.md | 5 + .../Text/encode-text/encode-text-block.md | 177 ++++ .../Text/find-and-remove-text/_index.md | 5 + .../find-and-remove-all-text-block.md | 349 +++++++ .../find-and-remove-text-block.md | 394 ++++++++ .../Text/find-and-replace-text/_index.md | 5 + .../find-and-replace-all-text-block.md | 370 +++++++ .../find-and-replace-text-block.md | 416 ++++++++ .../Reference/Blocks/Text/find-text/_index.md | 5 + .../Text/find-text/find-all-text-block.md | 470 +++++++++ .../Blocks/Text/find-text/find-text-block.md | 513 ++++++++++ .../Blocks/Text/format-text/_index.md | 5 + .../format-text-with-value-block-1.md | 186 ++++ .../format-text-with-values-block-1.md | 209 ++++ .../Reference/Blocks/Text/get-text/_index.md | 5 + .../get-text/get-text-at-beginning-block.md | 114 +++ .../Text/get-text/get-text-at-end-block.md | 114 +++ .../Text/get-text/get-text-at-index-block.md | 136 +++ .../get-text/get-text-before-index-block.md | 136 +++ .../get-text-between-indexes-block.md | 164 ++++ .../Reference/Blocks/Text/is-text/_index.md | 5 + .../Text/is-text/is-text-empty-block.md | 165 ++++ .../is-text-empty-or-whitespace-block.md | 160 +++ .../Text/is-text/is-text-equal-block.md | 189 ++++ .../Blocks/Text/is-text/is-text-null-block.md | 165 ++++ .../is-text-null-empty-or-whitespace-block.md | 160 +++ .../is-text/is-text-null-or-empty-block.md | 164 ++++ .../Reference/Blocks/Text/join-text/_index.md | 5 + .../Text/join-text/join-text-block-1.md | 154 +++ .../Blocks/Text/remove-text/_index.md | 5 + .../remove-text-at-beginning-block.md | 106 ++ .../remove-text/remove-text-at-end-block.md | 106 ++ .../remove-text/remove-text-at-index-block.md | 128 +++ .../remove-text-before-index-block.md | 129 +++ .../remove-text-between-indexes-block.md | 155 +++ .../Blocks/Text/split-text/_index.md | 5 + .../Text/split-text/split-text-block.md | 244 +++++ .../docs/2024.11/Reference/Blocks/_index.md | 6 + .../Reference/Blocks/data-storage/_index.md | 5 + .../data-storage/create-collection/_index.md | 5 + .../create-collection-block.md | 139 +++ .../data-storage/delete-collection/_index.md | 5 + .../delete-collection-block.md | 147 +++ .../Blocks/data-storage/delete-data/_index.md | 5 + .../delete-data/delete-data-with-key-block.md | 189 ++++ .../Blocks/data-storage/read-data/_index.md | 5 + .../read-data/read-data-with-key-block.md | 175 ++++ .../wait-for-collection/_index.md | 5 + .../wait-for-collection-to-exist-block.md | 149 +++ .../wait-for-collection-to-not-exist-block.md | 154 +++ .../wait-for-key-in-collection/_index.md | 5 + ...t-for-key-in-collection-to-be-set-block.md | 227 +++++ ...ey-in-collection-to-contain-value-block.md | 198 ++++ ...it-for-key-in-collection-to-exist-block.md | 182 ++++ ...or-key-in-collection-to-not-exist-block.md | 177 ++++ .../Blocks/data-storage/write-data/_index.md | 5 + .../write-data/write-data-with-key-block.md | 209 ++++ .../2024.11/Reference/Blocks/data/_index.md | 5 + .../data/execute-data-command/_index.md | 5 + .../execute-data-command-block-1.md | 806 +++++++++++++++ .../Reference/Blocks/date-and-time/_index.md | 5 + .../date-and-time/add-time-period/_index.md | 5 + .../add-time-period/add-time-period-block.md | 157 +++ .../date-and-time/convert-date-time/_index.md | 5 + .../convert-date-time-to-text-block.md | 254 +++++ .../convert-text-to-date-time-block.md | 270 ++++++ .../date-and-time/get-date-time/_index.md | 5 + .../get-current-date-time-block.md | 80 ++ .../get-date-time-component-block.md | 426 ++++++++ .../date-and-time/get-time-period/_index.md | 5 + ...et-time-period-between-date-times-block.md | 146 +++ .../date-and-time/is-date-time/_index.md | 5 + .../is-date-time/is-date-time-after-block.md | 156 +++ .../is-date-time/is-date-time-before-block.md | 156 +++ .../is-date-time-between-block.md | 161 +++ .../is-date-time/is-date-time-equal-block.md | 156 +++ .../subtract-time-period/_index.md | 5 + .../subtract-time-period-block.md | 157 +++ .../Reference/Blocks/decisions/_index.md | 5 + .../Reference/Blocks/decisions/if/_index.md | 5 + .../if/if-null-exit-bottom-block-1.md | 96 ++ .../if/if-null-exit-right-block-1.md | 96 ++ .../decisions/if/if-true-exit-bottom-block.md | 81 ++ .../decisions/if/if-true-exit-right-block.md | 81 ++ .../2024.11/Reference/Blocks/email/_index.md | 5 + .../Blocks/email/send-email/_index.md | 5 + .../send-email-using-smtp-server-block.md | 581 +++++++++++ .../2024.11/Reference/Blocks/flows/_index.md | 5 + .../Reference/Blocks/flows/end-flow/_index.md | 5 + .../Blocks/flows/end-flow/end-flow-block.md | 37 + .../Reference/Blocks/flows/run-flow/_index.md | 5 + .../flows/run-flow/run-flow-async-block.md | 272 ++++++ .../Blocks/flows/run-flow/run-flow-block.md | 246 +++++ .../Blocks/flows/start-flow/_index.md | 5 + .../flows/start-flow/start-flow-block.md | 37 + .../Blocks/google-workspace/_index.md | 5 + .../Blocks/google-workspace/gmail/_index.md | 5 + .../gmail/send-email/_index.md | 5 + .../send-email-using-gmail-block.md | 741 ++++++++++++++ .../2024.11/Reference/Blocks/http/_index.md | 5 + .../http/execute-http-request/_index.md | 5 + .../execute-http-request-block-1.md | 518 ++++++++++ .../http/execute-soap-request/_index.md | 5 + .../execute-soap-request-block-1.md | 494 ++++++++++ .../2024.11/Reference/Blocks/json/_index.md | 5 + .../Blocks/json/convert-json/_index.md | 5 + .../convert-json-to-object-block.md | 248 +++++ .../convert-object-to-json-block.md | 191 ++++ .../2024.11/Reference/Blocks/logs/_index.md | 5 + .../Reference/Blocks/logs/log-event/_index.md | 5 + .../Blocks/logs/log-event/log-event-block.md | 554 +++++++++++ .../2024.11/Reference/Blocks/loops/_index.md | 5 + .../Reference/Blocks/loops/for-each/_index.md | 5 + .../loops/for-each/for-each-loop-block.md | 186 ++++ .../Reference/Blocks/loops/for/_index.md | 5 + .../Blocks/loops/for/for-loop-block.md | 254 +++++ .../Reference/Blocks/microsoft365/_index.md | 5 + .../Blocks/microsoft365/outlook/_index.md | 5 + .../microsoft365/outlook/send-email/_index.md | 5 + .../send-email-using-microsoft365-block.md | 278 ++++++ .../Reference/Blocks/objects/_index.md | 5 + .../Blocks/objects/convert-object/_index.md | 5 + .../convert-object-to-text-block-1.md | 250 +++++ .../Blocks/objects/copy-object/_index.md | 5 + .../copy-object/copy-object-block-1.md | 112 +++ .../2024.11/Reference/Blocks/queues/_index.md | 5 + .../Blocks/queues/dequeue-item/_index.md | 5 + .../dequeue-item/dequeue-item-block-2.md | 155 +++ .../dequeue-item/dequeue-items-block-2.md | 176 ++++ .../Blocks/queues/enqueue-item/_index.md | 5 + .../enqueue-item/enqueue-item-block-2.md | 211 ++++ .../enqueue-item/enqueue-items-block-2.md | 240 +++++ .../Blocks/queues/get-count/_index.md | 5 + .../get-count-of-all-items-block-2.md | 102 ++ .../Blocks/queues/peek-item/_index.md | 5 + .../queues/peek-item/peek-item-block.md | 116 +++ .../Blocks/queues/remove-item/_index.md | 5 + .../remove-item/remove-all-items-block.md | 86 ++ .../Reference/Blocks/schedules/_index.md | 5 + .../Blocks/schedules/wait-for/_index.md | 5 + .../wait-for/wait-for-duration-block.md | 90 ++ .../2024.11/Reference/Blocks/ssh/_index.md | 5 + .../Blocks/ssh/execute-ssh-command/_index.md | 5 + .../execute-ssh-command-block.md | 315 ++++++ .../2024.11/Reference/Blocks/tasks/_index.md | 5 + .../Blocks/tasks/cancel-task/_index.md | 5 + .../cancel-task/cancel-all-tasks-block-2.md | 171 ++++ .../tasks/cancel-task/cancel-task-block-1.md | 163 ++++ .../Blocks/tasks/wait-for-task/_index.md | 5 + .../wait-for-all-tasks-block-2.md | 282 ++++++ .../wait-for-task/wait-for-task-block-1.md | 196 ++++ .../2024.11/Reference/Blocks/telnet/_index.md | 5 + .../telnet/execute-telnet-command/_index.md | 5 + .../execute-telnet-command-block.md | 419 ++++++++ .../Reference/Blocks/variables/_index.md | 5 + .../Blocks/variables/set-variable/_index.md | 5 + .../set-variable/set-variable-block-1.md | 202 ++++ .../Reference/Blocks/wireless/_index.md | 5 + .../wireless/wireless-receiver/_index.md | 5 + .../wireless-receiver-block.md | 53 + .../Blocks/wireless/wireless-sender/_index.md | 5 + .../wireless-sender/wireless-sender-block.md | 88 ++ .../Reference/Blocks/workspaces/_index.md | 5 + .../Blocks/workspaces/end-workspace/_index.md | 5 + .../end-workspace/end-workspace-block.md | 45 + .../workspaces/start-workspace/_index.md | 5 + .../start-workspace/start-workspace-block.md | 45 + .../Blocks/workspaces/workspace/_index.md | 5 + .../workspaces/workspace/workspace-block.md | 79 ++ .../2024.11/Reference/Blocks/xml/_index.md | 5 + .../Blocks/xml/convert-xml/_index.md | 5 + .../convert-structure-to-xml-block.md | 368 +++++++ .../convert-xml-to-structure-block.md | 332 +++++++ .../docs/2024.11/Reference/Concepts/_index.md | 8 + .../Reference/Concepts/fundamentals/_index.md | 6 + .../Concepts/fundamentals/blocks/_index.md | 6 + .../blocks/block-properties/_index.md | 6 + .../block-properties/advanced-properties.md | 71 ++ .../block-properties/common-properties.md | 154 +++ .../property-editors/_index.md | 6 + .../property-editors/expression-editor.md | 917 ++++++++++++++++++ .../property-editors/literal-editor.md | 74 ++ .../property-editors/variable-editor.md | 102 ++ .../what-is-a-block-property.md | 152 +++ .../handling-exceptions-within-a-block.md | 54 ++ .../fundamentals/blocks/what-is-a-block.md | 243 +++++ .../fundamentals/data-types/_index.md | 6 + .../fundamentals/data-types/generics.md | 38 + .../data-types/null-and-nullable-types.md | 46 + .../data-types/what-is-a-data-type.md | 95 ++ .../fundamentals/exceptions/_index.md | 7 + .../exceptions/handling-exceptions.md | 186 ++++ .../exceptions/throwing-exceptions.md | 55 ++ .../exceptions/what-is-an-exception.md | 110 +++ .../fundamentals/executions/_index.md | 6 + .../executions/executions-in-development.md | 229 +++++ .../executions/executions-in-production.md | 121 +++ .../executions/what-is-an-execution.md | 148 +++ .../Concepts/fundamentals/flows/_index.md | 6 + .../fundamentals/flows/calling-other-flows.md | 75 ++ .../handling-exceptions-within-a-flow.md | 68 ++ .../fundamentals/flows/what-is-a-flow.md | 208 ++++ .../Concepts/fundamentals/messages/_index.md | 6 + .../messages/what-is-a-message.md | 107 ++ .../Concepts/fundamentals/variables/_index.md | 6 + .../fundamentals/variables/using-variables.md | 212 ++++ .../fundamentals/variables/variable-scopes.md | 99 ++ .../variables/what-is-a-variable.md | 259 +++++ .../fundamentals/workspaces/_index.md | 6 + .../handling-exceptions-within-a-workspace.md | 64 ++ .../workspaces/what-is-a-workspace.md | 176 ++++ .../Reference/Concepts/working-with/_index.md | 8 + .../working-with/collections/_index.md | 5 + .../working-with/collections/indexes.md | 50 + .../working-with/collections/items.md | 46 + .../Concepts/working-with/collections/keys.md | 57 ++ .../working-with/collections/occurrences.md | 66 ++ .../collections/what-is-a-collection.md | 125 +++ .../working-with/concurrency/_index.md | 5 + .../concurrency/semaphores/_index.md | 5 + .../semaphores/what-is-a-semaphore.md | 125 +++ .../Concepts/working-with/culture/_index.md | 5 + .../working-with/culture/current-culture.md | 38 + .../working-with/culture/custom-cultures.md | 38 + .../working-with/culture/invariant-culture.md | 38 + .../working-with/culture/specific-cultures.md | 40 + .../working-with/culture/what-is-a-culture.md | 45 + .../working-with/data-sources/_index.md | 5 + .../supported-data-sources/_index.md | 5 + .../supported-data-sources/odbc.md | 40 + .../supported-data-sources/oracle.md | 40 + .../supported-data-sources/sql-server.md | 45 + .../data-sources/what-is-a-data-source.md | 53 + .../working-with/date-and-time/_index.md | 5 + .../date-and-time/date-and-time-formatting.md | 181 ++++ .../date-and-time/what-is-date-and-time.md | 51 + .../Concepts/working-with/email/_index.md | 5 + .../working-with/email/authentication.md | 20 + .../working-with/email/what-is-email.md | 68 ++ .../Concepts/working-with/enums/_index.md | 5 + .../working-with/enums/what-is-an-enum.md | 60 ++ .../working-with/files-and-folders/_index.md | 5 + .../files-and-folders/attributes.md | 41 + .../working-with/files-and-folders/paths.md | 53 + .../what-are-files-and-folders.md | 46 + .../Concepts/working-with/loops/_index.md | 5 + .../working-with/loops/what-is-a-loop.md | 74 ++ .../Concepts/working-with/numbers/_index.md | 5 + .../working-with/numbers/what-is-a-number.md | 68 ++ .../Concepts/working-with/objects/_index.md | 5 + .../working-with/objects/object-casting.md | 50 + .../working-with/objects/object-equality.md | 57 ++ .../working-with/objects/what-is-an-object.md | 44 + .../Concepts/working-with/scopes/_index.md | 5 + .../working-with/scopes/what-is-a-scope.md | 38 + .../Concepts/working-with/tasks/_index.md | 7 + .../Concepts/working-with/text/_index.md | 5 + .../Concepts/working-with/text/casing.md | 128 +++ .../text/converting-objects-to-text.md | 87 ++ .../text/empty-text-and-whitespace.md | 51 + .../Concepts/working-with/text/encoding.md | 49 + .../Concepts/working-with/text/equality.md | 126 +++ .../Concepts/working-with/text/formatting.md | 113 +++ .../text/pattern-matching-syntax.md | 48 + .../working-with/text/regex-syntax.md | 216 +++++ .../working-with/text/what-is-text.md | 68 ++ .../Exceptions/Common/Property/_index.md | 5 + .../property-contains-null-item-exception.md | 106 ++ ...y-contains-null-or-empty-item-exception.md | 104 ++ .../Property/property-empty-exception.md | 239 +++++ .../Property/property-item-count-exception.md | 121 +++ .../Property/property-null-exception.md | 403 ++++++++ .../property-value-out-of-range-exception.md | 371 +++++++ .../Reference/Exceptions/Common/_index.md | 5 + .../Reference/Exceptions/Lists/_index.md | 5 + .../cannot-modify-read-only-list-exception.md | 72 ++ .../Lists/duplicate-value-exception.md | 54 ++ .../Reference/Exceptions/Xml/_index.md | 5 + .../Xml/xml-serialization-exception.md | 113 +++ .../2024.11/Reference/Exceptions/_index.md | 6 + .../Exceptions/collections/_index.md | 5 + .../occurrence-not-present-exception.md | 111 +++ .../Exceptions/concurrency/_index.md | 5 + .../concurrency/semaphores/_index.md | 5 + ...maphore-could-not-be-acquired-exception.md | 195 ++++ .../Exceptions/data-storage/_index.md | 5 + ...-storage-collection-not-found-exception.md | 121 +++ ...-storage-collection-not-found-exception.md | 129 +++ .../Reference/Exceptions/data/_index.md | 5 + .../Exceptions/data/command-exception.md | 347 +++++++ .../invalid-connection-string-exception.md | 68 ++ .../Reference/Exceptions/decisions/_index.md | 5 + .../property-not-nullable-exception.md | 71 ++ .../Exceptions/dictionaries/_index.md | 5 + ...t-modify-read-only-dictionary-exception.md | 67 ++ .../dictionaries/key-not-present-exception.md | 81 ++ .../dictionaries/key-present-exception.md | 59 ++ .../keys-not-present-exception.md | 83 ++ .../Reference/Exceptions/email/_index.md | 5 + .../email/email-session-exception.md | 323 ++++++ .../Exceptions/files-and-folders/_index.md | 5 + .../invalid-folder-name-exception.md | 55 ++ .../invalid-path-exception.md | 78 ++ .../operation-failed-exception.md | 83 ++ .../Reference/Exceptions/flows/_index.md | 5 + .../Exceptions/flows/blocks/_index.md | 5 + .../flows/blocks/block-timeout-exception.md | 175 ++++ .../blocks/invalid-block-timeout-exception.md | 145 +++ .../invalid-property-value-exception.md | 210 ++++ .../Exceptions/flows/execution/_index.md | 5 + .../flow-execution-cancelled-exception.md | 99 ++ .../invalid-default-values-exception.md | 42 + .../invalid-input-variables-exception.md | 140 +++ .../output-port-not-connected-exception.md | 47 + .../runtime-translation-exception.md | 45 + .../Exceptions/flows/flow-exception.md | 50 + .../Reference/Exceptions/http/_index.md | 5 + .../http/http-authorisation-exception.md | 111 +++ .../http/invalid-request-exception.md | 335 +++++++ .../http/invalid-response-exception.md | 49 + .../Exceptions/impersonation/_index.md | 5 + .../impersonation/run-as-exception.md | 136 +++ .../Reference/Exceptions/loops/_index.md | 5 + .../loops/infinite-loop-exception.md | 173 ++++ .../Reference/Exceptions/powershell/_index.md | 5 + .../Exceptions/powershell/ps-exception.md | 53 + .../powershell/ps-remoting-exception.md | 337 +++++++ .../Reference/Exceptions/services/_index.md | 5 + .../service-does-not-exist-exception.md | 129 +++ .../services/service-unavailable-exception.md | 129 +++ .../Reference/Exceptions/ssh/_index.md | 5 + .../Exceptions/ssh/ssh-client-exception.md | 106 ++ .../Exceptions/ssh/ssh-response-exception.md | 55 ++ .../Reference/Exceptions/tasks/_index.md | 5 + .../tasks/aggregate-task-exception.md | 123 +++ .../Reference/Exceptions/telnet/_index.md | 5 + .../telnet/telnet-client-exception.md | 203 ++++ .../telnet/telnet-server-exception.md | 132 +++ .../Reference/Exceptions/text/_index.md | 5 + .../Exceptions/text/encoding/_index.md | 5 + .../text/encoding/format-exception.md | 87 ++ .../text/encoding/text-decoding-exception.md | 165 ++++ .../Reference/Exceptions/text/regex/_index.md | 5 + .../regex/regex-parsing-failed-exception.md | 74 ++ .../Reference/Exceptions/wireless/_index.md | 5 + ...less-receiver-block-not-found-exception.md | 142 +++ .../en/docs/2024.11/Reference/Glossary/0-9.md | 52 + .../docs/2024.11/Reference/Glossary/_index.md | 6 + .../en/docs/2024.11/Reference/Glossary/a-e.md | 447 +++++++++ .../en/docs/2024.11/Reference/Glossary/f-j.md | 267 +++++ .../en/docs/2024.11/Reference/Glossary/k-o.md | 162 ++++ .../en/docs/2024.11/Reference/Glossary/p-t.md | 210 ++++ .../en/docs/2024.11/Reference/Glossary/u-z.md | 67 ++ content/en/docs/2024.11/Reference/_index.md | 6 + .../2024.11/Reference/data-types/_index.md | 6 + .../Reference/data-types/all/_index.md | 6 + .../Reference/data-types/all/dynamic.md | 83 ++ .../Reference/data-types/all/object.md | 92 ++ .../data-types/collections/_index.md | 6 + .../Reference/data-types/collections/array.md | 114 +++ .../data-types/collections/dictionary-2.md | 96 ++ .../data-types/collections/icomparer-1.md | 87 ++ .../data-types/collections/idictionary-2.md | 103 ++ .../data-types/collections/ienumerable-1.md | 115 +++ .../data-types/collections/ienumerable.md | 114 +++ .../data-types/collections/ilist-1.md | 90 ++ .../data-types/collections/ireadonlylist-1.md | 66 ++ .../data-types/collections/list-1.md | 95 ++ .../collections/queuewithpriority-2.md | 110 +++ .../data-types/collections/structure.md | 93 ++ .../data-types/concurrency/_index.md | 6 + .../concurrency/semaphores/_index.md | 6 + .../concurrency/semaphores/queue-settings.md | 120 +++ .../semaphores/semaphore-settings.md | 164 ++++ .../data-types/conditional-logic/_index.md | 6 + .../data-types/conditional-logic/boolean.md | 99 ++ .../data-types/credentials/_index.md | 6 + .../credentials/iusercredentials.md | 83 ++ .../data-types/credentials/logontype.md | 173 ++++ .../data-types/credentials/usercredentials.md | 173 ++++ .../Reference/data-types/data/_index.md | 6 + .../Reference/data-types/data/command.md | 156 +++ .../Reference/data-types/data/commands.md | 156 +++ .../data-types/data/connectiondetails.md | 76 ++ .../Reference/data-types/data/datacommand.md | 140 +++ .../data-types/data/datacommanderrorcode.md | 228 +++++ .../Reference/data-types/data/iparameter.md | 88 ++ .../data-types/data/iparameters-1.md | 93 ++ .../data-types/data/nonquerycommand.md | 152 +++ .../data-types/data/odbcconnectiondetails.md | 102 ++ .../data/oracleconnectiondetails.md | 114 +++ .../data-types/data/oraclemappingtype.md | 619 ++++++++++++ .../data-types/data/oracleparameter.md | 172 ++++ .../data-types/data/oracleparameters.md | 134 +++ .../Reference/data-types/data/querycommand.md | 152 +++ .../data/sqlserverconnectiondetails.md | 102 ++ .../data-types/date-and-time/_index.md | 6 + .../data-types/date-and-time/datetime.md | 133 +++ .../date-and-time/datetimecomponenttype.md | 74 ++ .../date-and-time/datetimeoffset.md | 157 +++ .../data-types/date-and-time/dayofweek.md | 193 ++++ .../data-types/date-and-time/timeperiod.md | 60 ++ .../data-types/date-and-time/timespan.md | 62 ++ .../Reference/data-types/email/_index.md | 6 + .../email/authentication/EmailCredentials.md | 12 + .../authentication/EmailUserCredentials.md | 12 + .../email/authentication/IEmailCredentials.md | 12 + .../data-types/email/authentication/_index.md | 6 + .../email/basicemailsessiondetails.md | 139 +++ .../data-types/email/emailaddress.md | 117 +++ .../data-types/email/emailmessage.md | 228 +++++ .../email/emailmessagebodyformat.md | 150 +++ .../data-types/email/emailmessagepriority.md | 169 ++++ .../data-types/email/emailsessionerrorcode.md | 265 +++++ .../Reference/data-types/exceptions/_index.md | 6 + .../data-types/exceptions/exception.md | 60 ++ .../FileSystemInformation.md | 62 ++ .../data-types/files-and-folders/_index.md | 6 + .../files-and-folders/contentoptions.md | 76 ++ .../files-and-folders/fileinformation.md | 60 ++ .../data-types/files-and-folders/filematch.md | 67 ++ .../files-and-folders/folderinformation.md | 60 ++ .../Reference/data-types/flows/_index.md | 6 + .../data-types/flows/flowreference.md | 78 ++ .../data-types/flows/inputvariables.md | 83 ++ .../data-types/google-workspace/_index.md | 6 + .../google-workspace/gmail/_index.md | 6 + .../gmail/authentication/_index.md | 6 + .../gmail/authentication/oauth/_index.md | 6 + .../oauth/gmailoauthcertificatecredentials.md | 151 +++ .../gmail/gmailsessiondetails.md | 161 +++ .../Reference/data-types/http/_index.md | 6 + .../http/authentication/HttpCredentials.md | 67 ++ .../authentication/HttpUserCredentials.md | 61 ++ .../http/authentication/IHttpCredentials.md | 67 ++ .../data-types/http/authentication/_index.md | 6 + .../http/authentication/oauth/_index.md | 6 + .../oauth/clientauthentication.md | 109 +++ .../authentication/oauth/clientauthtype.md | 78 ++ .../oauth/httpoauthclientcredentials.md | 115 +++ .../oauth/httpoauthcredentials.md | 65 ++ .../oauth/httpoauthpasswordcredentials.md | 140 +++ .../data-types/http/httprequestversion.md | 89 ++ .../data-types/http/httpstatuscode.md | 80 ++ .../Reference/data-types/http/request.md | 63 ++ .../Reference/data-types/http/requestverb.md | 130 +++ .../Reference/data-types/http/rest/_index.md | 6 + .../data-types/http/rest/httprequest.md | 156 +++ .../data-types/http/rest/httpresponse.md | 121 +++ .../Reference/data-types/http/soap/_index.md | 6 + .../data-types/http/soap/soap11message.md | 116 +++ .../data-types/http/soap/soap12message.md | 64 ++ .../data-types/http/soap/soapmessage.md | 101 ++ .../data-types/http/soap/soaprequest.md | 133 +++ .../data-types/http/soap/soapresponse.md | 120 +++ .../Reference/data-types/json/_index.md | 6 + .../data-types/json/jsonserializersettings.md | 35 + .../Reference/data-types/logs/_index.md | 6 + .../data-types/logs/eventseverity.md | 72 ++ .../Reference/data-types/loops/_index.md | 6 + .../data-types/loops/infinitelooperrorcode.md | 77 ++ .../data-types/microsoft365/_index.md | 6 + .../microsoft365/authentication/_index.md | 6 + .../authentication/oauth/_index.md | 6 + .../oauth/microsoft365credentials.md | 63 ++ ...microsoft365oauthcertificatecredentials.md | 129 +++ .../oauth/microsoft365oauthcredentials.md | 115 +++ .../data-types/most-common/_index.md | 16 + .../Reference/data-types/numbers/_index.md | 6 + .../Reference/data-types/numbers/double.md | 112 +++ .../Reference/data-types/numbers/int16.md | 106 ++ .../Reference/data-types/numbers/int32.md | 115 +++ .../Reference/data-types/numbers/int64.md | 115 +++ .../Reference/data-types/numbers/single.md | 108 +++ .../Reference/data-types/other/_index.md | 6 + .../Reference/data-types/other/guid.md | 31 + .../Reference/data-types/other/nullable-1.md | 31 + .../Reference/data-types/powershell/_index.md | 6 + .../powershell/powershellsessiondetails.md | 142 +++ .../powershellwinrmsessiondetails.md | 126 +++ .../powershell/psremotingerrorcode.md | 75 ++ .../data-types/powershell/records.md | 145 +++ .../Reference/data-types/scopes/_index.md | 6 + .../data-types/scopes/scope-definition.md | 152 +++ .../data-types/scopes/scope-option.md | 138 +++ .../Reference/data-types/scopes/scope.md | 131 +++ .../data-types/session-details/_index.md | 6 + .../session-details/serverdetails.md | 156 +++ .../Reference/data-types/ssh/_index.md | 6 + .../ssh/authentication/ISshCredentials.md | 68 ++ .../ssh/authentication/SshCredentials.md | 67 ++ .../ssh/authentication/SshUserCredentials.md | 69 ++ .../data-types/ssh/authentication/_index.md | 6 + .../sshcertificatecredentials.md | 68 ++ .../Reference/data-types/ssh/sshlogs.md | 123 +++ .../data-types/ssh/sshsessiondetails.md | 163 ++++ .../Reference/data-types/tasks/_index.md | 6 + .../data-types/tasks/executiontask.md | 163 ++++ .../data-types/tasks/iexecutiontask.md | 165 ++++ .../Reference/data-types/tasks/itask-1.md | 150 +++ .../Reference/data-types/telnet/_index.md | 6 + .../telnet/telnetclienterrorcode.md | 194 ++++ .../Reference/data-types/telnet/telnetlogs.md | 122 +++ .../telnet/telnetservererrorcode.md | 130 +++ .../data-types/telnet/telnetsessiondetails.md | 133 +++ .../Reference/data-types/text/_index.md | 6 + .../2024.11/Reference/data-types/text/char.md | 73 ++ .../Reference/data-types/text/cultureinfo.md | 116 +++ .../Reference/data-types/text/encoding.md | 65 ++ .../data-types/text/encryptabletext.md | 63 ++ .../data-types/text/encryptedtext.md | 63 ++ .../data-types/text/iformatprovider.md | 63 ++ .../Reference/data-types/text/regex/_index.md | 6 + .../data-types/text/regex/capturedetails.md | 129 +++ .../Reference/data-types/text/regex/group.md | 145 +++ .../Reference/data-types/text/regex/match.md | 140 +++ .../data-types/text/searchoptions.md | 166 ++++ .../Reference/data-types/text/string.md | 83 ++ .../data-types/text/stringcomparer.md | 151 +++ .../data-types/text/stringcomparison.md | 76 ++ .../data-types/text/stringsplitoptions.md | 179 ++++ .../data-types/text/textdecodingerrorcode.md | 168 ++++ .../data-types/text/textencodingformat.md | 222 +++++ .../Reference/data-types/text/texttofind.md | 138 +++ .../data-types/text/unicodeencoding.md | 64 ++ .../data-types/text/utf32encoding.md | 64 ++ .../Reference/data-types/text/utf8encoding.md | 64 ++ .../Reference/data-types/wireless/_index.md | 6 + .../wirelessreceiverblockreference.md | 78 ++ .../wirelessreceivernotfounderrorcode.md | 146 +++ .../en/docs/2024.11/Reference/logs/_index.md | 6 + .../Reference/logs/cortex-gateway/_index.md | 8 + .../logs/cortex-innovation/_index.md | 6 + .../core-application/_index.md | 6 + .../core-application/services/_index.md | 6 + .../services/api-gateway-service/_index.md | 8 + .../cortex-provisioning-service/_index.md | 8 + .../licence-management-service/_index.md | 8 + .../package-management-service/_index.md | 8 + .../execution-application/_index.md | 6 + .../execution-application/services/_index.md | 6 + .../services/execution-service/_index.md | 8 + .../Reference/logs/cortex-studio/_index.md | 8 + .../docs/2024.11/Reference/messages/_index.md | 8 + .../Reference/messages/validation/_index.md | 8 + .../messages/validation/errors/_index.md | 8 + .../2024.11/Reference/observability/_index.md | 6 + .../Reference/observability/grafana/_index.md | 6 + .../grafana/advanced-setup/_index.md | 6 + .../advanced-setup/configuring-thresholds.md | 32 + .../grafana/dashboards/_index.md | 6 + .../dashboards/flow-execution-requests.md | 216 +++++ .../grafana/dashboards/platform-health.md | 237 +++++ .../Reference/troubleshooting/_index.md | 6 + .../Reference/troubleshooting/installation.md | 344 +++++++ .../Reference/troubleshooting/upgrade.md | 11 + .../Tutorials/Administration/_index.md | 48 + .../2024.11/Tutorials/Development/_index.md | 120 +++ .../2024.11/Tutorials/Installation/_index.md | 8 + .../en/docs/2024.11/Tutorials/Setup/_index.md | 8 + .../Tutorials/Troubleshooting/_index.md | 18 + content/en/docs/2024.11/Tutorials/_index.md | 6 + content/en/docs/2024.11/Whats New/_index.md | 125 +++ content/en/docs/2024.11/_index.md | 6 + content/en/docs/2024.11/_shared/_index.md | 3 + .../_shared/advanced/ssl-best-practices.md | 79 ++ .../architecture/components/multi-server.md | 53 + .../architecture/components/node-details.md | 3 + .../components/purpose/api-gateway-service.md | 1 + .../purpose/authorisation-service.md | 1 + .../purpose/concurrency-management-service.md | 1 + .../configuration-management-service.md | 1 + .../purpose/cortex-block-packages.md | 1 + .../purpose/cortex-gateway-databases.md | 1 + .../components/purpose/cortex-gateway.md | 1 + .../cortex-innovation-core-application.md | 1 + ...cortex-innovation-execution-application.md | 1 + .../components/purpose/cortex-studio.md | 1 + .../purpose/data-storage-service.md | 1 + .../components/purpose/erlang-otp.md | 1 + .../purpose/execution-management-service.md | 1 + .../components/purpose/execution-service.md | 1 + .../components/purpose/gobetween.md | 1 + .../purpose/licence-management-service.md | 1 + .../components/purpose/listeners-service.md | 1 + .../purpose/ms-service-fabric-explorer.md | 1 + .../components/purpose/ms-service-fabric.md | 1 + .../components/purpose/ms-sql-server.md | 1 + .../architecture/components/purpose/nssm.md | 1 + .../purpose/package-management-service.md | 1 + .../purpose/particular-nservicebus.md | 1 + .../components/purpose/pivotal-rabbitmq.md | 1 + .../purpose/provisioning-service.md | 1 + .../components/purpose/scheduling-service.md | 1 + .../components/purpose/triggers-service.md | 1 + .../architecture/components/single-server.md | 49 + .../en/docs/2024.11/_shared/currentVersion.md | 1 + .../apply-recommended-security-measures.md | 36 + .../install-dot-net-framework.md | 17 + .../make-installation-artefacts-available.md | 6 + .../check-application-services.md | 37 + .../single-server/add-antivirus-exclusions.md | 15 + .../configure-installation-script.md | 77 ++ .../configure-installation-script.md | 77 ++ .../add-permissions-to-crypto-folder.md | 14 + .../check-application-services.md | 37 + .../single-server/check-port-useage.md | 23 + .../single-server/run-installation-script.md | 31 + .../single-server/test-installation-script.md | 31 + .../assign-certificate-friendly-name.md | 11 + .../configure-debugger-installation-script.md | 78 ++ ...eway-user-additional-folder-permissions.md | 49 + .../add-innovation-only/licensing.md | 3 + .../assign-certificate-friendly-name.md | 11 + .../configure-debugger-installation-script.md | 78 ++ ...eway-user-additional-folder-permissions.md | 19 + .../add-innovation-to-7.2/licensing.md | 3 + .../grant-gateway-user-folder-permissions.md | 24 + .../make-installation-artefacts-available.md | 10 + .../description/api-gateway.md | 1 + .../description/authorisation.md | 1 + .../description/configuration-management.md | 1 + .../description/data-storage.md | 1 + .../description/execution-management.md | 1 + .../description/execution.md | 1 + .../description/licence-management.md | 1 + .../description/package-management.md | 1 + .../description/provisioning.md | 1 + .../description/triggers-snmp.md | 1 + .../encryption-requirements.md | 3 + .../multi-server/encryption-requirements.md | 37 + .../single-server/encryption-requirements.md | 33 + .../_shared/preserve-installation-files.md | 1 + .../multi-server/run-upgrade-script.md | 29 + .../single-server/configure-upgrade-script.md | 23 + .../make-installation-artefacts-available.md | 6 + .../single-server/run-upgrade-script.md | 29 + .../upgrade-flows.md | 28 + .../configure-gateway-script.md | 35 + .../run-gateway-script.md | 32 + .../test-upgrade.md | 28 + .../multi-server/run-upgrade-script.md | 29 + .../single-server/configure-upgrade-script.md | 23 + .../make-installation-artefacts-available.md | 6 + .../single-server/run-upgrade-script.md | 29 + .../upgrade-flows.md | 28 + .../configure-gateway-script.md | 35 + .../run-gateway-script.md | 32 + .../test-upgrade.md | 28 + .../multi-server/run-upgrade-script.md | 29 + .../single-server/configure-upgrade-script.md | 37 + .../make-installation-artefacts-available.md | 6 + .../single-server/run-upgrade-script.md | 29 + .../configure-gateway-script.md | 48 + .../run-gateway-script.md | 32 + .../test-upgrade.md | 28 + .../upgrade-flows.md | 43 + .../multi-server/run-upgrade-script.md | 30 + .../single-server/configure-upgrade-script.md | 37 + .../make-installation-artefacts-available.md | 6 + .../single-server/run-upgrade-script.md | 30 + .../configure-gateway-script.md | 48 + .../run-gateway-script.md | 32 + .../test-upgrade.md | 31 + .../test-executing-production-flows.md | 15 + .../test-executing-production-flows.md | 15 + .../check-application-services.md | 43 + .../check-application-services.md | 43 + .../en/docs/2024.11/getting-started/_index.md | 6 + .../2024.11/getting-started/cloud/_index.md | 5 + .../Grafana/_index.md | 10 + .../Grafana/architecture.md | 32 + .../Grafana/import-dashboards.md | 71 ++ .../Grafana/install-promtail/_index.md | 6 + .../install-promtail/configure-promtail.md | 51 + .../install-promtail/install-promtail.md | 30 + .../Grafana/prerequisites.md | 59 ++ .../Grafana/setup-grafana.md | 33 + .../Grafana/setup-loki.md | 33 + .../Grafana/try-it-out.md | 49 + .../add-observability-to-innovation/_index.md | 6 + .../getting-started/on-premise/_index.md | 9 + .../on-premise/add-innovation-to-72/_index.md | 10 + .../multiple-server-with-ha/_index.md | 12 + .../multiple-server-with-ha/architecture.md | 41 + ...ll-application-and-loadbalancer-servers.md | 335 +++++++ .../install-web-application-server/_index.md | 10 + .../perform-debugger-installation.md | 60 ++ .../perform-gateway-installation.md | 124 +++ .../prerequisites.md | 56 ++ .../multiple-server-with-ha/prerequisites.md | 354 +++++++ .../multiple-server-with-ha/try-it-out.md | 66 ++ .../single-server-without-ha/_index.md | 12 + .../single-server-without-ha/architecture.md | 30 + .../install-application-server.md | 64 ++ .../install-web-application-server.md | 215 ++++ .../single-server-without-ha/prerequisites.md | 261 +++++ .../single-server-without-ha/try-it-out.md | 66 ++ .../_index.md | 8 + .../Grafana/_index.md | 10 + .../Grafana/advanced/_index.md | 6 + .../Grafana/advanced/port-requirements.md | 16 + .../advanced/self-signed-certificates.md | 239 +++++ .../Grafana/advanced/ssl-best-practices.md | 83 ++ .../Grafana/architecture.md | 40 + .../Grafana/install-grafana/_index.md | 6 + .../install-grafana/configure-grafana.md | 67 ++ .../install-grafana/install-grafana.md | 24 + .../Grafana/install-loki/_index.md | 6 + .../Grafana/install-loki/configure-loki.md | 132 +++ .../Grafana/install-loki/install-loki.md | 32 + .../Grafana/install-promtail/_index.md | 6 + .../install-promtail/configure-promtail.md | 80 ++ .../install-promtail/install-promtail.md | 31 + .../Grafana/prerequisites.md | 170 ++++ .../Grafana/setup-grafana.md | 84 ++ .../Grafana/try-it-out.md | 47 + .../add-observability-to-innovation/_index.md | 6 + .../install-innovation-only/_index.md | 10 + .../advanced/_index.md | 6 + .../advanced/advanced-config-changes.md | 207 ++++ .../advanced/configure-firewalls.md | 23 + .../advanced/encrypt-text.md | 33 + .../advanced/port-requirements.md | 80 ++ .../advanced/rollover-certificates.md | 166 ++++ .../advanced/self-signed-certificates.md | 236 +++++ .../advanced/ssl-best-practices.md | 9 + .../multiple-server-with-ha/_index.md | 12 + .../multiple-server-with-ha/architecture.md | 30 + ...ll-application-and-loadbalancer-servers.md | 334 +++++++ .../install-web-application-server/_index.md | 10 + .../perform-debugger-installation.md | 61 ++ .../perform-gateway-installation.md | 133 +++ .../prerequisites.md | 104 ++ .../multiple-server-with-ha/prerequisites.md | 304 ++++++ .../multiple-server-with-ha/setup-gateway.md | 84 ++ .../multiple-server-with-ha/try-it-out.md | 66 ++ .../single-server-without-ha/_index.md | 12 + .../single-server-without-ha/architecture.md | 28 + .../install-application-server.md | 64 ++ .../install-web-application-server.md | 234 +++++ .../single-server-without-ha/prerequisites.md | 232 +++++ .../single-server-without-ha/setup-gateway.md | 84 ++ .../single-server-without-ha/try-it-out.md | 66 ++ ...CreateCollection_CreateCollectionBlock.png | Bin 0 -> 1250 bytes ...DeleteCollection_DeleteCollectionBlock.png | Bin 0 -> 1311 bytes ...rage_DeleteData_DeleteDataWithKeyBlock.png | Bin 0 -> 1311 bytes ...aStorage_ReadData_ReadDataWithKeyBlock.png | Bin 0 -> 1359 bytes ...llection_WaitForCollectionToExistBlock.png | Bin 0 -> 1311 bytes ...ction_WaitForCollectionToNotExistBlock.png | Bin 0 -> 1311 bytes ...ion_WaitForKeyInCollectionToBeSetBlock.png | Bin 0 -> 1311 bytes ...tForKeyInCollectionToContainValueBlock.png | Bin 0 -> 1311 bytes ...ion_WaitForKeyInCollectionToExistBlock.png | Bin 0 -> 1311 bytes ..._WaitForKeyInCollectionToNotExistBlock.png | Bin 0 -> 1311 bytes ...torage_WriteData_WriteDataWithKeyBlock.png | Bin 0 -> 1318 bytes ...eDataCommand_ExecuteDataCommandBlock_1.png | Bin 0 -> 1124 bytes ...dTime_AddTimePeriod_AddTimePeriodBlock.png | Bin 0 -> 1071 bytes ...ertDateTime_ConvertDateTimeToTextBlock.png | Bin 0 -> 1178 bytes ...ertDateTime_ConvertTextToDateTimeBlock.png | Bin 0 -> 1178 bytes ...me_GetDateTime_GetCurrentDateTimeBlock.png | Bin 0 -> 1162 bytes ..._GetDateTime_GetDateTimeComponentBlock.png | Bin 0 -> 1162 bytes ...iod_GetTimePeriodBetweenDateTimesBlock.png | Bin 0 -> 1162 bytes ...ndTime_IsDateTime_IsDateTimeAfterBlock.png | Bin 0 -> 1145 bytes ...dTime_IsDateTime_IsDateTimeBeforeBlock.png | Bin 0 -> 1145 bytes ...Time_IsDateTime_IsDateTimeBetweenBlock.png | Bin 0 -> 1145 bytes ...ndTime_IsDateTime_IsDateTimeEqualBlock.png | Bin 0 -> 1145 bytes ...ractTimePeriod_SubtractTimePeriodBlock.png | Bin 0 -> 1053 bytes ...s_Decisions_If_IfNullExitBottomBlock_1.png | Bin 0 -> 892 bytes ...ks_Decisions_If_IfNullExitRightBlock_1.png | Bin 0 -> 892 bytes ...cks_Decisions_If_IfTrueExitBottomBlock.png | Bin 0 -> 892 bytes ...ocks_Decisions_If_IfTrueExitRightBlock.png | Bin 0 -> 892 bytes ...ionaries_AddItem_AddItemWithKeyBlock_3.png | Bin 0 -> 933 bytes ...tem_ContainsItemWithKeyAndValueBlock_3.png | Bin 0 -> 1008 bytes ...ontainsItem_ContainsItemWithKeyBlock_3.png | Bin 0 -> 1008 bytes ...tainsItem_ContainsItemWithValueBlock_3.png | Bin 0 -> 1008 bytes ...tainsItem_ContainsItemsWithKeysBlock_3.png | Bin 0 -> 1008 bytes ...insItem_ContainsItemsWithValuesBlock_3.png | Bin 0 -> 1008 bytes ...ies_GetCount_GetCountOfAllItemsBlock_3.png | Bin 0 -> 1047 bytes ...tCount_GetCountOfItemsWithValueBlock_3.png | Bin 0 -> 1047 bytes ...ount_GetCountsOfItemsWithValuesBlock_3.png | Bin 0 -> 1047 bytes ...ictionaries_GetItem_GetAllItemsBlock_3.png | Bin 0 -> 1019 bytes ...ionaries_GetItem_GetItemWithKeyBlock_3.png | Bin 0 -> 1019 bytes ...onaries_GetItem_GetItemsWithKeyBlock_3.png | Bin 0 -> 1019 bytes ..._Dictionaries_GetKey_GetAllKeysBlock_3.png | Bin 0 -> 1019 bytes ...aries_RemoveItem_RemoveAllItemsBlock_3.png | Bin 0 -> 911 bytes ...es_RemoveItem_RemoveItemWithKeyBlock_3.png | Bin 0 -> 911 bytes ..._RemoveItem_RemoveItemWithValueBlock_3.png | Bin 0 -> 911 bytes ...s_RemoveItem_RemoveItemsWithKeyBlock_3.png | Bin 0 -> 911 bytes ..._RemoveItem_RemoveItemsWithKeysBlock_3.png | Bin 0 -> 911 bytes ...RemoveItem_RemoveItemsWithValueBlock_3.png | Bin 0 -> 911 bytes ...emoveItem_RemoveItemsWithValuesBlock_3.png | Bin 0 -> 911 bytes ...ictionaries_SetItem_SetAllItemsBlock_3.png | Bin 0 -> 1017 bytes ...ionaries_SetItem_SetItemWithKeyBlock_3.png | Bin 0 -> 1017 bytes ...naries_SetItem_SetItemWithValueBlock_3.png | Bin 0 -> 1017 bytes ...onaries_SetItem_SetItemsWithKeyBlock_3.png | Bin 0 -> 1017 bytes ...naries_SetItem_SetItemsWithKeysBlock_3.png | Bin 0 -> 1017 bytes ...aries_SetItem_SetItemsWithValueBlock_3.png | Bin 0 -> 1017 bytes ...ries_SetItem_SetItemsWithValuesBlock_3.png | Bin 0 -> 1017 bytes ...endEmail_SendEmailUsingSmtpServerBlock.png | Bin 0 -> 1203 bytes ...ockException_HandleBlockExceptionBlock.png | Bin 0 -> 752 bytes ...ndleBlockExceptionMatchingMessageBlock.png | Bin 0 -> 752 bytes ...dleBlockExceptionMatchingMessagesBlock.png | Bin 0 -> 752 bytes ...dleBlockExceptionMatchingTypeNameBlock.png | Bin 0 -> 752 bytes ...leBlockExceptionMatchingTypeNamesBlock.png | Bin 0 -> 752 bytes ...tion_HandleFlowExceptionWorkspaceBlock.png | Bin 0 -> 860 bytes ...xception_HandleWorkspaceExceptionBlock.png | Bin 0 -> 844 bytes ...RethrowException_RethrowExceptionBlock.png | Bin 0 -> 1199 bytes ...owException_ThrowNewFlowExceptionBlock.png | Bin 0 -> 1105 bytes ...Folders_CheckFile_CheckFileExistsBlock.png | Bin 0 -> 1002 bytes ...ers_CheckFolder_CheckFolderExistsBlock.png | Bin 0 -> 1017 bytes ...FilesAndFolders_CopyFile_CopyFileBlock.png | Bin 0 -> 986 bytes ...ilesAndFolders_CopyFile_CopyFilesBlock.png | Bin 0 -> 986 bytes ...sAndFolders_CopyFolder_CopyFolderBlock.png | Bin 0 -> 1003 bytes ...AndFolders_CopyFolder_CopyFoldersBlock.png | Bin 0 -> 1003 bytes ...olders_CopyFolder_DuplicateFolderBlock.png | Bin 0 -> 1003 bytes ...Folders_CreateFolder_CreateFolderBlock.png | Bin 0 -> 942 bytes ...olders_CreateFolder_CreateFoldersBlock.png | Bin 0 -> 942 bytes ...sAndFolders_DeleteFile_DeleteFileBlock.png | Bin 0 -> 989 bytes ...AndFolders_DeleteFile_DeleteFilesBlock.png | Bin 0 -> 989 bytes ...Folders_DeleteFolder_DeleteFolderBlock.png | Bin 0 -> 1002 bytes ...olders_DeleteFolder_DeleteFoldersBlock.png | Bin 0 -> 1002 bytes ...ileInformation_GetFileInformationBlock.png | Bin 0 -> 966 bytes ...GetFolderContent_GetFolderContentBlock.png | Bin 0 -> 1017 bytes ...rInformation_GetFolderInformationBlock.png | Bin 0 -> 978 bytes ...FilesAndFolders_MoveFile_MoveFileBlock.png | Bin 0 -> 1007 bytes ...ilesAndFolders_MoveFile_MoveFilesBlock.png | Bin 0 -> 1007 bytes ...sAndFolders_MoveFolder_MoveFolderBlock.png | Bin 0 -> 1020 bytes ...AndFolders_MoveFolder_MoveFoldersBlock.png | Bin 0 -> 1020 bytes ...sAndFolders_ReadFile_ReadAllLinesBlock.png | Bin 0 -> 1025 bytes ...esAndFolders_ReadFile_ReadAllTextBlock.png | Bin 0 -> 1025 bytes ...Folders_RenameFolder_RenameFolderBlock.png | Bin 0 -> 980 bytes ...sAndFolders_SearchFile_SearchFileBlock.png | Bin 0 -> 1040 bytes ...AndFolders_SearchFile_SearchFilesBlock.png | Bin 0 -> 1040 bytes ...ndFolders_WriteFile_WriteAllLinesBlock.png | Bin 0 -> 993 bytes ...AndFolders_WriteFile_WriteAllTextBlock.png | Bin 0 -> 993 bytes ...rtex_Blocks_Flows_EndFlow_EndFlowBlock.png | Bin 0 -> 682 bytes ...Blocks_Flows_RunFlow_RunFlowAsyncBlock.png | Bin 0 -> 1053 bytes ...rtex_Blocks_Flows_RunFlow_RunFlowBlock.png | Bin 0 -> 1053 bytes ..._Blocks_Flows_StartFlow_StartFlowBlock.png | Bin 0 -> 790 bytes ...ail_SendEmail_SendEmailUsingGmailBlock.png | Bin 0 -> 1198 bytes ...eHttpRequest_ExecuteHttpRequestBlock_1.png | Bin 0 -> 1130 bytes ...eSoapRequest_ExecuteSoapRequestBlock_1.png | Bin 0 -> 1262 bytes ...n_ConvertJson_ConvertJsonToObjectBlock.png | Bin 0 -> 1215 bytes ...n_ConvertJson_ConvertObjectToJsonBlock.png | Bin 0 -> 1215 bytes ...ists_AddItem_AddItemAtBeginningBlock_2.png | Bin 0 -> 932 bytes ...ocks_Lists_AddItem_AddItemAtEndBlock_2.png | Bin 0 -> 932 bytes ...ks_Lists_AddItem_AddItemAtIndexBlock_2.png | Bin 0 -> 932 bytes ...sts_AddItem_AddItemsAtBeginningBlock_2.png | Bin 0 -> 932 bytes ...cks_Lists_AddItem_AddItemsAtEndBlock_2.png | Bin 0 -> 932 bytes ...s_Lists_AddItem_AddItemsAtIndexBlock_2.png | Bin 0 -> 932 bytes ...tainsItem_ContainsItemWithValueBlock_2.png | Bin 0 -> 1004 bytes ...insItem_ContainsItemsWithValuesBlock_2.png | Bin 0 -> 1004 bytes ...sts_GetCount_GetCountOfAllItemsBlock_2.png | Bin 0 -> 1057 bytes ...tCount_GetCountOfItemsWithValueBlock_2.png | Bin 0 -> 1057 bytes ...ount_GetCountsOfItemsWithValuesBlock_2.png | Bin 0 -> 1057 bytes ...etIndex_GetIndexOfItemWithValueBlock_2.png | Bin 0 -> 1055 bytes ...ndex_GetIndexesOfItemsWithValueBlock_2.png | Bin 0 -> 1055 bytes ...ists_GetItem_GetItemAtBeginningBlock_2.png | Bin 0 -> 1030 bytes ...ocks_Lists_GetItem_GetItemAtEndBlock_2.png | Bin 0 -> 1030 bytes ...ks_Lists_GetItem_GetItemAtIndexBlock_2.png | Bin 0 -> 1030 bytes ...sts_GetItem_GetItemsAtBeginningBlock_2.png | Bin 0 -> 1030 bytes ...cks_Lists_GetItem_GetItemsAtEndBlock_2.png | Bin 0 -> 1030 bytes ...s_Lists_GetItem_GetItemsAtIndexBlock_2.png | Bin 0 -> 1030 bytes ...Lists_GetItem_GetItemsAtIndexesBlock_2.png | Bin 0 -> 1030 bytes ...Lists_RemoveItem_RemoveAllItemsBlock_2.png | Bin 0 -> 912 bytes ...RemoveItem_RemoveDuplicateItemsBlock_2.png | Bin 0 -> 912 bytes ...emoveItem_RemoveItemAtBeginningBlock_2.png | Bin 0 -> 912 bytes ...ists_RemoveItem_RemoveItemAtEndBlock_2.png | Bin 0 -> 912 bytes ...ts_RemoveItem_RemoveItemAtIndexBlock_2.png | Bin 0 -> 912 bytes ..._RemoveItem_RemoveItemWithValueBlock_2.png | Bin 0 -> 912 bytes ...moveItem_RemoveItemsAtBeginningBlock_2.png | Bin 0 -> 912 bytes ...sts_RemoveItem_RemoveItemsAtEndBlock_2.png | Bin 0 -> 912 bytes ...s_RemoveItem_RemoveItemsAtIndexBlock_2.png | Bin 0 -> 912 bytes ...RemoveItem_RemoveItemsAtIndexesBlock_2.png | Bin 0 -> 912 bytes ...RemoveItem_RemoveItemsWithValueBlock_2.png | Bin 0 -> 912 bytes ...emoveItem_RemoveItemsWithValuesBlock_2.png | Bin 0 -> 912 bytes ...locks_Lists_SetItem_SetAllItemsBlock_2.png | Bin 0 -> 1029 bytes ...ists_SetItem_SetItemAtBeginningBlock_2.png | Bin 0 -> 1029 bytes ...ocks_Lists_SetItem_SetItemAtEndBlock_2.png | Bin 0 -> 1029 bytes ...ks_Lists_SetItem_SetItemAtIndexBlock_2.png | Bin 0 -> 1029 bytes ..._Lists_SetItem_SetItemWithValueBlock_2.png | Bin 0 -> 1029 bytes ...sts_SetItem_SetItemsAtBeginningBlock_2.png | Bin 0 -> 1029 bytes ...cks_Lists_SetItem_SetItemsAtEndBlock_2.png | Bin 0 -> 1029 bytes ...s_Lists_SetItem_SetItemsAtIndexBlock_2.png | Bin 0 -> 1029 bytes ...Lists_SetItem_SetItemsAtIndexesBlock_2.png | Bin 0 -> 1029 bytes ...Lists_SetItem_SetItemsWithValueBlock_2.png | Bin 0 -> 1029 bytes ...ists_SetItem_SetItemsWithValuesBlock_2.png | Bin 0 -> 1029 bytes ...tex_Blocks_Logs_LogEvent_LogEventBlock.png | Bin 0 -> 1144 bytes ..._Blocks_Loops_ForEach_ForEachLoopBlock.png | Bin 0 -> 1218 bytes .../Cortex_Blocks_Loops_For_ForLoopBlock.png | Bin 0 -> 1276 bytes ...dEmail_SendEmailUsingMicrosoft365Block.png | Bin 0 -> 1239 bytes ...nvertObject_ConvertObjectToTextBlock_1.png | Bin 0 -> 1271 bytes ...s_Objects_CopyObject_CopyObjectBlock_1.png | Bin 0 -> 1231 bytes ...lScript_ExecutePowerShellScriptBlock_1.png | Bin 0 -> 1218 bytes ..._Queues_DequeueItem_DequeueItemBlock_2.png | Bin 0 -> 1094 bytes ...Queues_DequeueItem_DequeueItemsBlock_2.png | Bin 0 -> 1094 bytes ..._Queues_EnqueueItem_EnqueueItemBlock_2.png | Bin 0 -> 1097 bytes ...Queues_EnqueueItem_EnqueueItemsBlock_2.png | Bin 0 -> 1097 bytes ...ues_GetCount_GetCountOfAllItemsBlock_2.png | Bin 0 -> 1168 bytes ...Blocks_Queues_PeekItem_PeekItemBlock_2.png | Bin 0 -> 1085 bytes ...ueues_RemoveItem_RemoveAllItemsBlock_2.png | Bin 0 -> 1020 bytes ...Schedules_WaitFor_WaitForDurationBlock.png | Bin 0 -> 1164 bytes ...ecuteSshCommand_ExecuteSshCommandBlock.png | Bin 0 -> 1137 bytes ...Tasks_CancelTask_CancelAllTasksBlock_2.png | Bin 0 -> 1080 bytes ...cks_Tasks_CancelTask_CancelTaskBlock_1.png | Bin 0 -> 1080 bytes ...sks_WaitForTask_WaitForAllTasksBlock_2.png | Bin 0 -> 1130 bytes ...s_Tasks_WaitForTask_WaitForTaskBlock_1.png | Bin 0 -> 1130 bytes ...elnetCommand_ExecuteTelnetCommandBlock.png | Bin 0 -> 1168 bytes ...ks_Text_AddText_AddTextAfterIndexBlock.png | Bin 0 -> 998 bytes ...s_Text_AddText_AddTextAtBeginningBlock.png | Bin 0 -> 998 bytes ..._Blocks_Text_AddText_AddTextAtEndBlock.png | Bin 0 -> 998 bytes ...s_Text_AddText_AddTextBeforeIndexBlock.png | Bin 0 -> 998 bytes ...Text_ContainsText_ContainsAllTextBlock.png | Bin 0 -> 1073 bytes ...Text_ContainsText_ContainsAnyTextBlock.png | Bin 0 -> 1073 bytes ...ks_Text_ContainsText_ContainsTextBlock.png | Bin 0 -> 1073 bytes ...Text_ConvertTo_ConvertToCamelCaseBlock.png | Bin 0 -> 1110 bytes ...Text_ConvertTo_ConvertToLowerCaseBlock.png | Bin 0 -> 1110 bytes ...ext_ConvertTo_ConvertToPascalCaseBlock.png | Bin 0 -> 1110 bytes ...Text_ConvertTo_ConvertToTitleCaseBlock.png | Bin 0 -> 1110 bytes ...Text_ConvertTo_ConvertToUpperCaseBlock.png | Bin 0 -> 1110 bytes ...Blocks_Text_DecodeText_DecodeTextBlock.png | Bin 0 -> 1125 bytes ...Blocks_Text_EncodeText_EncodeTextBlock.png | Bin 0 -> 1124 bytes ...ndRemoveText_FindAndRemoveAllTextBlock.png | Bin 0 -> 1102 bytes ...ndAndRemoveText_FindAndRemoveTextBlock.png | Bin 0 -> 1102 bytes ...ReplaceText_FindAndReplaceAllTextBlock.png | Bin 0 -> 1126 bytes ...AndReplaceText_FindAndReplaceTextBlock.png | Bin 0 -> 1126 bytes ..._Blocks_Text_FindText_FindAllTextBlock.png | Bin 0 -> 1121 bytes ...tex_Blocks_Text_FindText_FindTextBlock.png | Bin 0 -> 1121 bytes ..._FormatText_FormatTextWithValueBlock_1.png | Bin 0 -> 1095 bytes ...FormatText_FormatTextWithValuesBlock_1.png | Bin 0 -> 1095 bytes ...ocks_Text_GetIndex_GetIndexOfTextBlock.png | Bin 0 -> 1125 bytes ...ks_Text_GetIndex_GetIndexesOfTextBlock.png | Bin 0 -> 1125 bytes ...x_Blocks_Text_GetLength_GetLengthBlock.png | Bin 0 -> 1121 bytes ...s_Text_GetText_GetTextAtBeginningBlock.png | Bin 0 -> 1092 bytes ..._Blocks_Text_GetText_GetTextAtEndBlock.png | Bin 0 -> 1092 bytes ...locks_Text_GetText_GetTextAtIndexBlock.png | Bin 0 -> 1125 bytes ...s_Text_GetText_GetTextBeforeIndexBlock.png | Bin 0 -> 1092 bytes ...ext_GetText_GetTextBetweenIndexesBlock.png | Bin 0 -> 1092 bytes ...ex_Blocks_Text_IsText_IsTextEmptyBlock.png | Bin 0 -> 1073 bytes ...xt_IsText_IsTextEmptyOrWhitespaceBlock.png | Bin 0 -> 1073 bytes ...ex_Blocks_Text_IsText_IsTextEqualBlock.png | Bin 0 -> 1073 bytes ...tex_Blocks_Text_IsText_IsTextNullBlock.png | Bin 0 -> 1073 bytes ...sText_IsTextNullEmptyOrWhitespaceBlock.png | Bin 0 -> 1073 bytes ...cks_Text_IsText_IsTextNullOrEmptyBlock.png | Bin 0 -> 1073 bytes ...x_Blocks_Text_JoinText_JoinTextBlock_1.png | Bin 0 -> 1041 bytes ..._RemoveText_RemoveTextAtBeginningBlock.png | Bin 0 -> 975 bytes ...s_Text_RemoveText_RemoveTextAtEndBlock.png | Bin 0 -> 975 bytes ...Text_RemoveText_RemoveTextAtIndexBlock.png | Bin 0 -> 975 bytes ..._RemoveText_RemoveTextBeforeIndexBlock.png | Bin 0 -> 975 bytes ...moveText_RemoveTextBetweenIndexesBlock.png | Bin 0 -> 975 bytes ...x_Blocks_Text_SplitText_SplitTextBlock.png | Bin 0 -> 1061 bytes ...riables_SetVariable_SetVariableBlock_1.png | Bin 0 -> 1521 bytes ...WirelessReceiver_WirelessReceiverBlock.png | Bin 0 -> 882 bytes ...ess_WirelessSender_WirelessSenderBlock.png | Bin 0 -> 874 bytes ...kspaces_EndWorkspace_EndWorkspaceBlock.png | Bin 0 -> 680 bytes ...ces_StartWorkspace_StartWorkspaceBlock.png | Bin 0 -> 783 bytes ...ks_Workspaces_Workspace_WorkspaceBlock.png | Bin 0 -> 677 bytes ..._ConvertXml_ConvertStructureToXmlBlock.png | Bin 0 -> 1148 bytes ..._ConvertXml_ConvertXmlToStructureBlock.png | Bin 0 -> 1148 bytes .../static/2024.11/images/Gateway Setup1.png | Bin 0 -> 24878 bytes .../static/2024.11/images/Gateway Setup2.png | Bin 0 -> 24126 bytes .../static/2024.11/images/Gateway Setup3.png | Bin 0 -> 24380 bytes .../static/2024.11/images/Gateway Setup4.png | Bin 0 -> 29021 bytes .../static/2024.11/images/Gateway Setup5.png | Bin 0 -> 36910 bytes .../images/Grafana Cloud - Create Stack.png | Bin 0 -> 36356 bytes ...rafana Cloud - Hosted Logs Config Data.png | Bin 0 -> 86843 bytes ... Cloud - Hosted Logs Config Token Name.png | Bin 0 -> 46487 bytes ...ana Cloud - Hosted Logs Config Usecase.png | Bin 0 -> 11405 bytes .../static/2024.11/images/GrafanaMenuIcon.png | Bin 0 -> 353 bytes .../static/2024.11/images/IIS Bindings.png | Bin 0 -> 14415 bytes .../2024.11/images/Network Discovery 1.png | Bin 0 -> 6523 bytes .../2024.11/images/Network Discovery 2.png | Bin 0 -> 11930 bytes .../2024.11/images/Network Discovery 3.png | Bin 0 -> 10670 bytes .../images/New Innovation Flow View.PNG | Bin 0 -> 52670 bytes .../static/2024.11/images/RabbitMQ Status.png | Bin 0 -> 27734 bytes .../static/2024.11/images/Screenshots.pptx | Bin 0 -> 192187 bytes ...Fabric Explorer - Expiring Certificate.PNG | Bin 0 -> 78840 bytes ...ce Fabric Explorer - Instance - Single.png | Bin 0 -> 83654 bytes .../Service Fabric Explorer - Instance.png | Bin 0 -> 84486 bytes ...ervice Fabric Explorer - Node - Single.png | Bin 0 -> 75847 bytes .../images/Service Fabric Explorer - Node.png | Bin 0 -> 80201 bytes ...ice Fabric Explorer - Service - Single.png | Bin 0 -> 94472 bytes .../Service Fabric Explorer - Service.png | Bin 0 -> 95065 bytes .../Service Fabric Explorer - Single.png | Bin 0 -> 96929 bytes .../images/Service Fabric Explorer.png | Bin 0 -> 98215 bytes .../2024.11/images/Url Rewrite Icon.png | Bin 0 -> 1619 bytes .../static/2024.11/images/Variable-Scopes.png | Bin 0 -> 156981 bytes .../2024.11/images/WaitForAllTasksExample.png | Bin 0 -> 80050 bytes .../images/Web Platform Installer Icon.png | Bin 0 -> 2706 bytes content/static/2024.11/images/_ReadMe.md | 9 + .../static/2024.11/images/action-blocks.svg | 4 + .../static/2024.11/images/block-exception.gif | Bin 0 -> 17918 bytes .../2024.11/images/chained-exception.gif | Bin 0 -> 110462 bytes ...chaining-handle-block-exception-blocks.png | Bin 0 -> 11831 bytes .../images/child-execution-in-grid.PNG | Bin 0 -> 69451 bytes .../static/2024.11/images/decision-blocks.svg | 4 + .../2024.11/images/discarded-variable.PNG | Bin 0 -> 2429 bytes .../Cortex Innovation Node Details.png | Bin 0 -> 131068 bytes ...rtex Innovation Overview-Single Server.png | Bin 0 -> 13806 bytes .../editable/Cortex Innovation Overview.png | Bin 0 -> 49812 bytes ... Innovation and v7.2 Best Architecture.png | Bin 0 -> 81115 bytes .../Cortex Innovation v7.2 Single Server.png | Bin 0 -> 26720 bytes .../Flow Execution Requests - Duration.png | Bin 0 -> 382464 bytes .../Flow Execution Requests - Errors.png | Bin 0 -> 335979 bytes .../Flow Execution Requests - Filters.png | Bin 0 -> 20158 bytes .../Flow Execution Requests - Not Zero.png | Bin 0 -> 175012 bytes .../Flow Execution Requests - Overview.png | Bin 0 -> 603554 bytes .../Flow Execution Requests - Requests.png | Bin 0 -> 397547 bytes ...ecution Requests - Time Range extended.png | Bin 0 -> 65200 bytes .../Flow Execution Requests - Time Range.png | Bin 0 -> 312197 bytes .../Flow Execution Requests Dashboard.png | Bin 0 -> 2041447 bytes ... Platform Architecture Diagram - Cloud.png | Bin 0 -> 171339 bytes ...form Architecture Diagram - On-Premise.png | Bin 0 -> 187938 bytes .../Platform Health - Availability.png | Bin 0 -> 173788 bytes .../Platform Health - Break in Line.png | Bin 0 -> 149286 bytes .../editable/Platform Health - Duration.png | Bin 0 -> 304543 bytes .../editable/Platform Health - Errors.png | Bin 0 -> 246802 bytes .../editable/Platform Health - Filters.png | Bin 0 -> 17559 bytes .../editable/Platform Health - Not Zeros.png | Bin 0 -> 158708 bytes .../editable/Platform Health - Overview.png | Bin 0 -> 609302 bytes .../editable/Platform Health - Requests.png | Bin 0 -> 316764 bytes .../Platform Health - Time Range extended.png | Bin 0 -> 65109 bytes .../editable/Platform Health - Time Range.png | Bin 0 -> 313107 bytes .../editable/Platform Health Dashboard.png | Bin 0 -> 1739773 bytes .../2024.11/images/editable/editor-types.png | Bin 0 -> 51155 bytes .../editable/exception-handling-blocks.png | Bin 0 -> 49209 bytes .../images/editable/expression-editor.png | Bin 0 -> 8458 bytes .../images/editable/variable-editor.png | Bin 0 -> 9239 bytes .../2024.11/images/exception-in-viewer.PNG | Bin 0 -> 22188 bytes .../2024.11/images/execution-in-grid.PNG | Bin 0 -> 61676 bytes .../2024.11/images/flow-control-blocks.svg | 4 + .../2024.11/images/flow-error-status.png | Bin 0 -> 22260 bytes .../flow-exception-full-configuration.png | Bin 0 -> 37091 bytes .../flow-exception-no-configuration.png | Bin 0 -> 19715 bytes .../static/2024.11/images/flow-exception.gif | Bin 0 -> 27703 bytes content/static/2024.11/images/loading.gif | Bin 0 -> 49613 bytes .../static/2024.11/images/messages-grid.PNG | Bin 0 -> 19180 bytes .../2024.11/images/nested-workspace.svg | 4 + .../what-is-a-variable-command-panel.png | Bin 0 -> 11548 bytes .../what-is-a-variable-dictionary-panel.png | Bin 0 -> 14767 bytes .../what-is-a-variable-exception-panel.png | Bin 0 -> 30153 bytes .../what-is-a-variable-variable-panel-2.png | Bin 0 -> 36728 bytes .../images/rethrow-from-list-exception.png | Bin 0 -> 22471 bytes .../2024.11/images/rethrow-from-subflow.gif | Bin 0 -> 966527 bytes .../rethrow-original-list-exception.png | Bin 0 -> 22695 bytes .../images/run-flow-contract-change.gif | Bin 0 -> 269466 bytes .../images/run-flow-selecting-a-flow.gif | Bin 0 -> 359895 bytes ...end-email-using-smtp-server-html-email.png | Bin 0 -> 4051 bytes ...mail-using-smtp-server-important-email.png | Bin 0 -> 4447 bytes .../set-variable-block-timeout.svg | 4 + .../set-variable/set-variable-description.svg | 4 + .../set-variable-expression-arithmetic.PNG | Bin 0 -> 11611 bytes .../set-variable-expression-boolean-and.PNG | Bin 0 -> 13172 bytes .../set-variable-expression-boolean.PNG | Bin 0 -> 10927 bytes .../set-variable-expression-casting.PNG | Bin 0 -> 12217 bytes .../set-variable-expression-char.PNG | Bin 0 -> 10299 bytes .../set-variable-expression-comparison.PNG | Bin 0 -> 13019 bytes ...ariable-expression-concatenated-string.PNG | Bin 0 -> 12749 bytes .../set-variable-expression-constructor.PNG | Bin 0 -> 13252 bytes .../set-variable-expression-decomposition.PNG | Bin 0 -> 14983 bytes .../set-variable-expression-double.PNG | Bin 0 -> 11165 bytes .../set-variable-expression-empty.PNG | Bin 0 -> 9587 bytes .../set-variable-expression-enum.PNG | Bin 0 -> 12021 bytes .../set-variable-expression-index.PNG | Bin 0 -> 11604 bytes .../set-variable-expression-int.PNG | Bin 0 -> 10659 bytes .../set-variable-expression-int64.PNG | Bin 0 -> 11122 bytes ...ariable-expression-interpolated-string.PNG | Bin 0 -> 12955 bytes .../set-variable-expression-list.PNG | Bin 0 -> 10511 bytes .../set-variable-expression-method.PNG | Bin 0 -> 12305 bytes .../set-variable-expression-properties.PNG | Bin 0 -> 12794 bytes .../set-variable-expression-single.PNG | Bin 0 -> 11241 bytes .../set-variable-expression-string.PNG | Bin 0 -> 11501 bytes .../set-variable-expression-structure.PNG | Bin 0 -> 12344 bytes .../set-variable-expression-variable.PNG | Bin 0 -> 11456 bytes ...et-variable-expression-verbatim-string.PNG | Bin 0 -> 12230 bytes .../set-variable/set-variable-run-as.svg | 4 + .../images/top-level-workspace-activity.svg | 4 + .../images/top-level-workspace-process.svg | 4 + .../static/2024.11/images/variables-grid.PNG | Bin 0 -> 21190 bytes .../2024.11/images/work-in-progress.jpg | Bin 0 -> 99357 bytes .../2024.11/images/workspace-blocks.svg | 4 + .../2024.11/images/workspace-exception.gif | Bin 0 -> 45897 bytes .../workspace/workspace-block-semaphore.svg | 4 + ...ex Interaction Portal Deployment Guide.pdf | Bin 0 -> 1001921 bytes ...tex Interaction Portal Developer Guide.pdf | Bin 0 -> 2366527 bytes ...ortex Interaction Portal Merging Guide.pdf | Bin 0 -> 492253 bytes .../Cortex Interaction Portal User Guide.pdf | Bin 0 -> 1634385 bytes 1388 files changed, 85307 insertions(+), 2 deletions(-) create mode 100644 content/en/docs/2024.11/FAQs/_index.md create mode 100644 content/en/docs/2024.11/Guides/_index.md create mode 100644 content/en/docs/2024.11/Guides/cortex-gateway/_index.md create mode 100644 content/en/docs/2024.11/Guides/cortex-gateway/help/_index.md create mode 100644 content/en/docs/2024.11/Guides/cortex-gateway/help/cortex-release-notes.md create mode 100644 content/en/docs/2024.11/Guides/cortex-gateway/settings/_index.md create mode 100644 content/en/docs/2024.11/Guides/cortex-gateway/settings/ldap-authorisation.md create mode 100644 content/en/docs/2024.11/Guides/cortex-gateway/settings/ldap-connection.md create mode 100644 content/en/docs/2024.11/Guides/cortex-gateway/settings/license-consumption.md create mode 100644 content/en/docs/2024.11/Guides/cortex-gateway/settings/packages.md create mode 100644 content/en/docs/2024.11/Guides/cortex-gateway/settings/studio-authorisation.md create mode 100644 content/en/docs/2024.11/Guides/cortex-gateway/settings/studio-export.md create mode 100644 content/en/docs/2024.11/Guides/cortex-gateway/settings/studio-hierarchy.md create mode 100644 content/en/docs/2024.11/Guides/cortex-gateway/settings/studio-import.md create mode 100644 content/en/docs/2024.11/Guides/cortex-gateway/settings/version-control.md create mode 100644 content/en/docs/2024.11/Guides/cortex-gateway/welcome-page/_index.md create mode 100644 content/en/docs/2024.11/Guides/cortex-innovation/_index.md create mode 100644 content/en/docs/2024.11/Guides/cortex-innovation/core-application/_index.md create mode 100644 content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/_index.md create mode 100644 content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/api-gateway-service/_index.md create mode 100644 content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/authorisation-service/_index.md create mode 100644 content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/concurrency-management-service/_index.md create mode 100644 content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/configuration-management-service/_index.md create mode 100644 content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/data-storage-service/_index.md create mode 100644 content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/execution-management-service/_index.md create mode 100644 content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/licence-management-service/_index.md create mode 100644 content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/listeners-service/_index.md create mode 100644 content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/package-management-service/_index.md create mode 100644 content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/provisioning-service/_index.md create mode 100644 content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/scheduling-service/_index.md create mode 100644 content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/triggers-service/_index.md create mode 100644 content/en/docs/2024.11/Guides/cortex-innovation/execution-application/_index.md create mode 100644 content/en/docs/2024.11/Guides/cortex-innovation/execution-application/services/_index.md create mode 100644 content/en/docs/2024.11/Guides/cortex-innovation/execution-application/services/execution-service/_index.md create mode 100644 content/en/docs/2024.11/Guides/cortex-interaction-portal/_index.md create mode 100644 content/en/docs/2024.11/Guides/cortex-studio/_index.md create mode 100644 content/en/docs/2024.11/Guides/cortex-studio/debugging.md create mode 100644 content/en/docs/2024.11/Guides/cortex-studio/east-panel.md create mode 100644 content/en/docs/2024.11/Guides/cortex-studio/expression-editor.md create mode 100644 content/en/docs/2024.11/Guides/cortex-studio/literal-editor.md create mode 100644 content/en/docs/2024.11/Guides/cortex-studio/main-display-area.md create mode 100644 content/en/docs/2024.11/Guides/cortex-studio/navigation.md create mode 100644 content/en/docs/2024.11/Guides/cortex-studio/package-management.md create mode 100644 content/en/docs/2024.11/Guides/cortex-studio/palettes.md create mode 100644 content/en/docs/2024.11/Guides/cortex-studio/south-panel.md create mode 100644 content/en/docs/2024.11/Guides/cortex-studio/variable-editor.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/_index.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/multiple-server-with-ha/_index.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/multiple-server-with-ha/try-it-out.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/multiple-server-with-ha/upgrade-application-and-loadbalancer-servers.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/multiple-server-with-ha/upgrade-web-application-server/_index.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/multiple-server-with-ha/upgrade-web-application-server/prerequisites.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/multiple-server-with-ha/upgrade-web-application-server/upgrade-debugger.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/multiple-server-with-ha/upgrade-web-application-server/upgrade-gateway.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/single-server-without-ha/_index.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/single-server-without-ha/try-it-out.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/single-server-without-ha/upgrade-application-server.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/single-server-without-ha/upgrade-web-application-server.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/_index.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/multiple-server-with-ha/_index.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/multiple-server-with-ha/try-it-out.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/multiple-server-with-ha/upgrade-application-and-loadbalancer-servers.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/multiple-server-with-ha/upgrade-web-application-server/_index.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/multiple-server-with-ha/upgrade-web-application-server/prerequisites.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/multiple-server-with-ha/upgrade-web-application-server/upgrade-debugger.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/multiple-server-with-ha/upgrade-web-application-server/upgrade-gateway.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/single-server-without-ha/_index.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/single-server-without-ha/try-it-out.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/single-server-without-ha/upgrade-application-server.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/single-server-without-ha/upgrade-web-application-server.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/_index.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/multiple-server-with-ha/_index.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/multiple-server-with-ha/try-it-out.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/multiple-server-with-ha/upgrade-application-and-loadbalancer-servers.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/multiple-server-with-ha/upgrade-web-application-server/_index.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/multiple-server-with-ha/upgrade-web-application-server/prerequisites.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/multiple-server-with-ha/upgrade-web-application-server/upgrade-debugger.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/multiple-server-with-ha/upgrade-web-application-server/upgrade-gateway.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/single-server-without-ha/_index.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/single-server-without-ha/try-it-out.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/single-server-without-ha/upgrade-application-server.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/single-server-without-ha/upgrade-web-application-server.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/_index.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/multiple-server-with-ha/_index.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/multiple-server-with-ha/try-it-out.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/multiple-server-with-ha/upgrade-application-and-loadbalancer-servers.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/multiple-server-with-ha/upgrade-web-application-server/_index.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/multiple-server-with-ha/upgrade-web-application-server/prerequisites.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/multiple-server-with-ha/upgrade-web-application-server/upgrade-debugger.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/multiple-server-with-ha/upgrade-web-application-server/upgrade-gateway.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/single-server-without-ha/_index.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/single-server-without-ha/try-it-out.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/single-server-without-ha/upgrade-application-server.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/single-server-without-ha/upgrade-web-application-server.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/_index.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/advanced/_index.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/advanced/ssl-best-practices.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-cortex/advanced/upgrade-flows.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-observability/_index.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-observability/cloud/_index.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-observability/cloud/grafana/_index.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-observability/cloud/grafana/prerequisites.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-observability/cloud/grafana/try-it-out.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-observability/cloud/grafana/upgrade-promtail.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-observability/dashboards/Grafana/_index.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-observability/dashboards/Grafana/try-it-out.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-observability/dashboards/Grafana/upgrade-dashboards.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-observability/dashboards/_index.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-observability/on-premise/_index.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-observability/on-premise/grafana/_index.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-observability/on-premise/grafana/prerequisites.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-observability/on-premise/grafana/try-it-out.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-observability/on-premise/grafana/upgrade-grafana.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-observability/on-premise/grafana/upgrade-loki.md create mode 100644 content/en/docs/2024.11/Guides/upgrade-observability/on-premise/grafana/upgrade-promtail.md create mode 100644 content/en/docs/2024.11/Overview/_index.md create mode 100644 content/en/docs/2024.11/Reference/APIs/_index.md create mode 100644 content/en/docs/2024.11/Reference/APIs/cortex-gateway/_index.md create mode 100644 content/en/docs/2024.11/Reference/APIs/cortex-innovation/_index.md create mode 100644 content/en/docs/2024.11/Reference/APIs/cortex-innovation/core-application/_index.md create mode 100644 content/en/docs/2024.11/Reference/APIs/cortex-innovation/core-application/services/_index.md create mode 100644 content/en/docs/2024.11/Reference/APIs/cortex-innovation/core-application/services/api-gateway-service/_index.md create mode 100644 content/en/docs/2024.11/Reference/APIs/cortex-innovation/core-application/services/licence-management-service/_index.md create mode 100644 content/en/docs/2024.11/Reference/APIs/cortex-innovation/core-application/services/package-management-service/_index.md create mode 100644 content/en/docs/2024.11/Reference/APIs/cortex-innovation/core-application/services/provisioning-service/_index.md create mode 100644 content/en/docs/2024.11/Reference/APIs/cortex-innovation/execution-application/_index.md create mode 100644 content/en/docs/2024.11/Reference/APIs/cortex-innovation/execution-application/services/_index.md create mode 100644 content/en/docs/2024.11/Reference/APIs/cortex-innovation/execution-application/services/execution-service/_index.md create mode 100644 content/en/docs/2024.11/Reference/APIs/cortex-studio/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Dictionaries/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Dictionaries/add-item/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Dictionaries/add-item/add-item-with-key-block-3.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Dictionaries/contains-item/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Dictionaries/contains-item/contains-item-with-key-and-value-block-3.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Dictionaries/contains-item/contains-item-with-key-block-3.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Dictionaries/contains-item/contains-item-with-value-block-3.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Dictionaries/contains-item/contains-items-with-keys-block-3.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Dictionaries/contains-item/contains-items-with-values-block-3.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Dictionaries/get-count/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Dictionaries/get-count/get-count-of-all-items-block-3.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Dictionaries/get-count/get-count-of-items-with-value-block-3.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Dictionaries/get-count/get-counts-of-items-with-values-block-3.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Dictionaries/get-item/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Dictionaries/get-item/get-all-items-block-3.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Dictionaries/get-item/get-item-with-key-block-3.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Dictionaries/get-item/get-items-with-key-block-3.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Dictionaries/get-key/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Dictionaries/get-key/get-all-keys-block-3.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Dictionaries/remove-item/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Dictionaries/remove-item/remove-all-items-block-3.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Dictionaries/remove-item/remove-item-with-key-block-3.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Dictionaries/remove-item/remove-item-with-value-block-3.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Dictionaries/remove-item/remove-items-with-key-block-3.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Dictionaries/remove-item/remove-items-with-keys-block-3.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Dictionaries/remove-item/remove-items-with-value-block-3.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Dictionaries/remove-item/remove-items-with-values-block-3.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Dictionaries/set-item/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Dictionaries/set-item/set-all-items-block-3.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Dictionaries/set-item/set-item-with-key-block-3.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Dictionaries/set-item/set-item-with-value-block-3.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Dictionaries/set-item/set-items-with-key-block-3.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Dictionaries/set-item/set-items-with-keys-block-3.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Dictionaries/set-item/set-items-with-value-block-3.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Dictionaries/set-item/set-items-with-values-block-3.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Exceptions/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Exceptions/handle-block-exception/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Exceptions/handle-block-exception/handle-block-exception-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Exceptions/handle-block-exception/handle-block-exception-matching-message-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Exceptions/handle-block-exception/handle-block-exception-matching-messages-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Exceptions/handle-block-exception/handle-block-exception-matching-type-name-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Exceptions/handle-block-exception/handle-block-exception-matching-type-names-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Exceptions/handle-flow-exception/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Exceptions/handle-flow-exception/handle-flow-exception-workspace-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Exceptions/handle-workspace-exception/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Exceptions/handle-workspace-exception/handle-workspace-exception-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Exceptions/rethrow-exception/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Exceptions/rethrow-exception/rethrow-exception-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Exceptions/throw-exception/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Exceptions/throw-exception/throw-new-flow-exception-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/check-file/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/check-file/check-file-exists-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/check-folder/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/check-folder/check-folder-exists-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/copy-file/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/copy-file/copy-file-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/copy-file/copy-files-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/copy-folder/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/copy-folder/copy-folder-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/copy-folder/copy-folders-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/copy-folder/duplicate-folder-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/create-folder/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/create-folder/create-folder-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/create-folder/create-folders-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/delete-file/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/delete-file/delete-file-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/delete-file/delete-files-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/delete-folder/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/delete-folder/delete-folder-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/delete-folder/delete-folders-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/get-file-information/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/get-file-information/get-file-information-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/get-folder-content/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/get-folder-content/get-folder-content-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/get-folder-information/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/get-folder-information/get-folder-information-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/move-file/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/move-file/move-file-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/move-file/move-files-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/move-folder/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/move-folder/move-folder-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/move-folder/move-folders-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/read-file/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/read-file/read-all-lines-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/read-file/read-all-text-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/rename-folder/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/rename-folder/rename-folder-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/search-file/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/search-file/search-file-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/search-file/search-files-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/write-file/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/write-file/write-all-lines-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/write-file/write-all-text-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/Get-Count/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/Get-Count/get-count-of-all-items-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/Get-Count/get-count-of-items-with-value-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/Get-Count/get-count-of-items-with-values-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/Get-Index/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/Get-Index/get-index-of-item-with-value-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/Get-Index/get-indexes-of-items-with-value-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/add-item/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/add-item/add-item-at-beginning-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/add-item/add-item-at-end-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/add-item/add-item-at-index-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/add-item/add-items-at-beginning-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/add-item/add-items-at-end-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/add-item/add-items-at-index-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/contains-item/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/contains-item/contains-item-with-value-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/contains-item/contains-items-with-values-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/get-item/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/get-item/get-item-at-beginning-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/get-item/get-item-at-end-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/get-item/get-item-at-index-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/get-item/get-items-at-beginning-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/get-item/get-items-at-end-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/get-item/get-items-at-index-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/get-item/get-items-at-indexes-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-all-items-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-duplicate-items-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-item-at-beginning-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-item-at-end-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-item-at-index-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-item-with-value-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-items-at-beginning-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-items-at-end-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-items-at-index-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-items-at-indexes-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-items-with-value-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-items-with-values-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/set-item/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-all-items-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-item-at-beginning-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-item-at-end-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-item-at-index-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-item-with-value-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-items-at-beginning-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-items-at-end-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-items-at-index-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-items-at-indexes-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-items-with-value-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-items-with-values-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/PowerShell/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/PowerShell/execute-powershell-script/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/PowerShell/execute-powershell-script/execute-powershell-script-block-1.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/Convert-To/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/Convert-To/convert-to-camel-case-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/Convert-To/convert-to-lower-case-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/Convert-To/convert-to-pascal-case-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/Convert-To/convert-to-title-case-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/Convert-To/convert-to-upper-case-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/Get-Index/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/Get-Index/get-index-of-text-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/Get-Index/get-indexes-of-text-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/Get-Length/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/Get-Length/get-length-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/add-text/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/add-text/add-text-after-index-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/add-text/add-text-at-beginning-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/add-text/add-text-at-end-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/add-text/add-text-before-index-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/contains-text/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/contains-text/contains-all-text-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/contains-text/contains-any-text-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/contains-text/contains-text-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/decode-text/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/decode-text/decode-text-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/encode-text/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/encode-text/encode-text-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/find-and-remove-text/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/find-and-remove-text/find-and-remove-all-text-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/find-and-remove-text/find-and-remove-text-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/find-and-replace-text/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/find-and-replace-text/find-and-replace-all-text-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/find-and-replace-text/find-and-replace-text-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/find-text/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/find-text/find-all-text-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/find-text/find-text-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/format-text/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/format-text/format-text-with-value-block-1.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/format-text/format-text-with-values-block-1.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/get-text/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/get-text/get-text-at-beginning-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/get-text/get-text-at-end-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/get-text/get-text-at-index-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/get-text/get-text-before-index-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/get-text/get-text-between-indexes-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/is-text/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/is-text/is-text-empty-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/is-text/is-text-empty-or-whitespace-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/is-text/is-text-equal-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/is-text/is-text-null-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/is-text/is-text-null-empty-or-whitespace-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/is-text/is-text-null-or-empty-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/join-text/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/join-text/join-text-block-1.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/remove-text/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/remove-text/remove-text-at-beginning-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/remove-text/remove-text-at-end-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/remove-text/remove-text-at-index-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/remove-text/remove-text-before-index-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/remove-text/remove-text-between-indexes-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/split-text/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/Text/split-text/split-text-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/data-storage/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/data-storage/create-collection/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/data-storage/create-collection/create-collection-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/data-storage/delete-collection/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/data-storage/delete-collection/delete-collection-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/data-storage/delete-data/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/data-storage/delete-data/delete-data-with-key-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/data-storage/read-data/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/data-storage/read-data/read-data-with-key-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/data-storage/wait-for-collection/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/data-storage/wait-for-collection/wait-for-collection-to-exist-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/data-storage/wait-for-collection/wait-for-collection-to-not-exist-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/data-storage/wait-for-key-in-collection/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/data-storage/wait-for-key-in-collection/wait-for-key-in-collection-to-be-set-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/data-storage/wait-for-key-in-collection/wait-for-key-in-collection-to-contain-value-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/data-storage/wait-for-key-in-collection/wait-for-key-in-collection-to-exist-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/data-storage/wait-for-key-in-collection/wait-for-key-in-collection-to-not-exist-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/data-storage/write-data/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/data-storage/write-data/write-data-with-key-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/data/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/data/execute-data-command/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/data/execute-data-command/execute-data-command-block-1.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/date-and-time/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/date-and-time/add-time-period/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/date-and-time/add-time-period/add-time-period-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/date-and-time/convert-date-time/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/date-and-time/convert-date-time/convert-date-time-to-text-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/date-and-time/convert-date-time/convert-text-to-date-time-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/date-and-time/get-date-time/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/date-and-time/get-date-time/get-current-date-time-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/date-and-time/get-date-time/get-date-time-component-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/date-and-time/get-time-period/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/date-and-time/get-time-period/get-time-period-between-date-times-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/date-and-time/is-date-time/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/date-and-time/is-date-time/is-date-time-after-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/date-and-time/is-date-time/is-date-time-before-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/date-and-time/is-date-time/is-date-time-between-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/date-and-time/is-date-time/is-date-time-equal-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/date-and-time/subtract-time-period/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/date-and-time/subtract-time-period/subtract-time-period-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/decisions/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/decisions/if/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/decisions/if/if-null-exit-bottom-block-1.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/decisions/if/if-null-exit-right-block-1.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/decisions/if/if-true-exit-bottom-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/decisions/if/if-true-exit-right-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/email/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/email/send-email/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/email/send-email/send-email-using-smtp-server-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/flows/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/flows/end-flow/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/flows/end-flow/end-flow-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/flows/run-flow/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/flows/run-flow/run-flow-async-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/flows/run-flow/run-flow-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/flows/start-flow/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/flows/start-flow/start-flow-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/google-workspace/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/google-workspace/gmail/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/google-workspace/gmail/send-email/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/google-workspace/gmail/send-email/send-email-using-gmail-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/http/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/http/execute-http-request/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/http/execute-http-request/execute-http-request-block-1.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/http/execute-soap-request/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/http/execute-soap-request/execute-soap-request-block-1.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/json/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/json/convert-json/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/json/convert-json/convert-json-to-object-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/json/convert-json/convert-object-to-json-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/logs/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/logs/log-event/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/logs/log-event/log-event-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/loops/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/loops/for-each/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/loops/for-each/for-each-loop-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/loops/for/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/loops/for/for-loop-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/microsoft365/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/microsoft365/outlook/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/microsoft365/outlook/send-email/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/microsoft365/outlook/send-email/send-email-using-microsoft365-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/objects/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/objects/convert-object/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/objects/convert-object/convert-object-to-text-block-1.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/objects/copy-object/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/objects/copy-object/copy-object-block-1.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/queues/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/queues/dequeue-item/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/queues/dequeue-item/dequeue-item-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/queues/dequeue-item/dequeue-items-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/queues/enqueue-item/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/queues/enqueue-item/enqueue-item-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/queues/enqueue-item/enqueue-items-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/queues/get-count/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/queues/get-count/get-count-of-all-items-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/queues/peek-item/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/queues/peek-item/peek-item-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/queues/remove-item/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/queues/remove-item/remove-all-items-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/schedules/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/schedules/wait-for/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/schedules/wait-for/wait-for-duration-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/ssh/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/ssh/execute-ssh-command/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/ssh/execute-ssh-command/execute-ssh-command-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/tasks/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/tasks/cancel-task/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/tasks/cancel-task/cancel-all-tasks-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/tasks/cancel-task/cancel-task-block-1.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/tasks/wait-for-task/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/tasks/wait-for-task/wait-for-all-tasks-block-2.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/tasks/wait-for-task/wait-for-task-block-1.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/telnet/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/telnet/execute-telnet-command/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/telnet/execute-telnet-command/execute-telnet-command-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/variables/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/variables/set-variable/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/variables/set-variable/set-variable-block-1.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/wireless/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/wireless/wireless-receiver/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/wireless/wireless-receiver/wireless-receiver-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/wireless/wireless-sender/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/wireless/wireless-sender/wireless-sender-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/workspaces/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/workspaces/end-workspace/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/workspaces/end-workspace/end-workspace-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/workspaces/start-workspace/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/workspaces/start-workspace/start-workspace-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/workspaces/workspace/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/workspaces/workspace/workspace-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/xml/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/xml/convert-xml/_index.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/xml/convert-xml/convert-structure-to-xml-block.md create mode 100644 content/en/docs/2024.11/Reference/Blocks/xml/convert-xml/convert-xml-to-structure-block.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/_index.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/fundamentals/_index.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/_index.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/block-properties/_index.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/block-properties/advanced-properties.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/block-properties/common-properties.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/block-properties/property-editors/_index.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/block-properties/property-editors/expression-editor.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/block-properties/property-editors/literal-editor.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/block-properties/property-editors/variable-editor.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/block-properties/what-is-a-block-property.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/handling-exceptions-within-a-block.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/what-is-a-block.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/fundamentals/data-types/_index.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/fundamentals/data-types/generics.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/fundamentals/data-types/null-and-nullable-types.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/fundamentals/data-types/what-is-a-data-type.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/fundamentals/exceptions/_index.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/fundamentals/exceptions/handling-exceptions.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/fundamentals/exceptions/throwing-exceptions.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/fundamentals/exceptions/what-is-an-exception.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/fundamentals/executions/_index.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/fundamentals/executions/executions-in-development.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/fundamentals/executions/executions-in-production.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/fundamentals/executions/what-is-an-execution.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/fundamentals/flows/_index.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/fundamentals/flows/calling-other-flows.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/fundamentals/flows/handling-exceptions-within-a-flow.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/fundamentals/flows/what-is-a-flow.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/fundamentals/messages/_index.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/fundamentals/messages/what-is-a-message.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/fundamentals/variables/_index.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/fundamentals/variables/using-variables.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/fundamentals/variables/variable-scopes.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/fundamentals/variables/what-is-a-variable.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/fundamentals/workspaces/_index.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/fundamentals/workspaces/handling-exceptions-within-a-workspace.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/fundamentals/workspaces/what-is-a-workspace.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/_index.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/collections/_index.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/collections/indexes.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/collections/items.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/collections/keys.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/collections/occurrences.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/collections/what-is-a-collection.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/concurrency/_index.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/concurrency/semaphores/_index.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/concurrency/semaphores/what-is-a-semaphore.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/culture/_index.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/culture/current-culture.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/culture/custom-cultures.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/culture/invariant-culture.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/culture/specific-cultures.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/culture/what-is-a-culture.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/data-sources/_index.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/data-sources/supported-data-sources/_index.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/data-sources/supported-data-sources/odbc.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/data-sources/supported-data-sources/oracle.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/data-sources/supported-data-sources/sql-server.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/data-sources/what-is-a-data-source.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/date-and-time/_index.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/date-and-time/date-and-time-formatting.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/date-and-time/what-is-date-and-time.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/email/_index.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/email/authentication.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/email/what-is-email.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/enums/_index.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/enums/what-is-an-enum.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/files-and-folders/_index.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/files-and-folders/attributes.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/files-and-folders/paths.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/files-and-folders/what-are-files-and-folders.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/loops/_index.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/loops/what-is-a-loop.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/numbers/_index.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/numbers/what-is-a-number.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/objects/_index.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/objects/object-casting.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/objects/object-equality.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/objects/what-is-an-object.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/scopes/_index.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/scopes/what-is-a-scope.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/tasks/_index.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/text/_index.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/text/casing.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/text/converting-objects-to-text.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/text/empty-text-and-whitespace.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/text/encoding.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/text/equality.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/text/formatting.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/text/pattern-matching-syntax.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/text/regex-syntax.md create mode 100644 content/en/docs/2024.11/Reference/Concepts/working-with/text/what-is-text.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/Common/Property/_index.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/Common/Property/property-contains-null-item-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/Common/Property/property-contains-null-or-empty-item-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/Common/Property/property-empty-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/Common/Property/property-item-count-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/Common/Property/property-null-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/Common/Property/property-value-out-of-range-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/Common/_index.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/Lists/_index.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/Lists/cannot-modify-read-only-list-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/Lists/duplicate-value-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/Xml/_index.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/Xml/xml-serialization-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/_index.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/collections/_index.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/collections/occurrence-not-present-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/concurrency/_index.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/concurrency/semaphores/_index.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/concurrency/semaphores/semaphore-could-not-be-acquired-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/data-storage/_index.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/data-storage/data-storage-collection-not-found-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/data-storage/key-in-data-storage-collection-not-found-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/data/_index.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/data/command-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/data/invalid-connection-string-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/decisions/_index.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/decisions/property-not-nullable-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/dictionaries/_index.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/dictionaries/cannot-modify-read-only-dictionary-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/dictionaries/key-not-present-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/dictionaries/key-present-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/dictionaries/keys-not-present-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/email/_index.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/email/email-session-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/files-and-folders/_index.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/files-and-folders/invalid-folder-name-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/files-and-folders/invalid-path-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/files-and-folders/operation-failed-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/flows/_index.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/flows/blocks/_index.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/flows/blocks/block-timeout-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/flows/blocks/invalid-block-timeout-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/flows/blocks/invalid-property-value-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/flows/execution/_index.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/flows/execution/flow-execution-cancelled-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/flows/execution/invalid-default-values-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/flows/execution/invalid-input-variables-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/flows/execution/output-port-not-connected-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/flows/execution/runtime-translation-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/flows/flow-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/http/_index.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/http/http-authorisation-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/http/invalid-request-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/http/invalid-response-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/impersonation/_index.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/impersonation/run-as-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/loops/_index.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/loops/infinite-loop-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/powershell/_index.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/powershell/ps-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/powershell/ps-remoting-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/services/_index.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/services/service-does-not-exist-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/services/service-unavailable-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/ssh/_index.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/ssh/ssh-client-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/ssh/ssh-response-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/tasks/_index.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/tasks/aggregate-task-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/telnet/_index.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/telnet/telnet-client-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/telnet/telnet-server-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/text/_index.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/text/encoding/_index.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/text/encoding/format-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/text/encoding/text-decoding-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/text/regex/_index.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/text/regex/regex-parsing-failed-exception.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/wireless/_index.md create mode 100644 content/en/docs/2024.11/Reference/Exceptions/wireless/wireless-receiver-block-not-found-exception.md create mode 100644 content/en/docs/2024.11/Reference/Glossary/0-9.md create mode 100644 content/en/docs/2024.11/Reference/Glossary/_index.md create mode 100644 content/en/docs/2024.11/Reference/Glossary/a-e.md create mode 100644 content/en/docs/2024.11/Reference/Glossary/f-j.md create mode 100644 content/en/docs/2024.11/Reference/Glossary/k-o.md create mode 100644 content/en/docs/2024.11/Reference/Glossary/p-t.md create mode 100644 content/en/docs/2024.11/Reference/Glossary/u-z.md create mode 100644 content/en/docs/2024.11/Reference/_index.md create mode 100644 content/en/docs/2024.11/Reference/data-types/_index.md create mode 100644 content/en/docs/2024.11/Reference/data-types/all/_index.md create mode 100644 content/en/docs/2024.11/Reference/data-types/all/dynamic.md create mode 100644 content/en/docs/2024.11/Reference/data-types/all/object.md create mode 100644 content/en/docs/2024.11/Reference/data-types/collections/_index.md create mode 100644 content/en/docs/2024.11/Reference/data-types/collections/array.md create mode 100644 content/en/docs/2024.11/Reference/data-types/collections/dictionary-2.md create mode 100644 content/en/docs/2024.11/Reference/data-types/collections/icomparer-1.md create mode 100644 content/en/docs/2024.11/Reference/data-types/collections/idictionary-2.md create mode 100644 content/en/docs/2024.11/Reference/data-types/collections/ienumerable-1.md create mode 100644 content/en/docs/2024.11/Reference/data-types/collections/ienumerable.md create mode 100644 content/en/docs/2024.11/Reference/data-types/collections/ilist-1.md create mode 100644 content/en/docs/2024.11/Reference/data-types/collections/ireadonlylist-1.md create mode 100644 content/en/docs/2024.11/Reference/data-types/collections/list-1.md create mode 100644 content/en/docs/2024.11/Reference/data-types/collections/queuewithpriority-2.md create mode 100644 content/en/docs/2024.11/Reference/data-types/collections/structure.md create mode 100644 content/en/docs/2024.11/Reference/data-types/concurrency/_index.md create mode 100644 content/en/docs/2024.11/Reference/data-types/concurrency/semaphores/_index.md create mode 100644 content/en/docs/2024.11/Reference/data-types/concurrency/semaphores/queue-settings.md create mode 100644 content/en/docs/2024.11/Reference/data-types/concurrency/semaphores/semaphore-settings.md create mode 100644 content/en/docs/2024.11/Reference/data-types/conditional-logic/_index.md create mode 100644 content/en/docs/2024.11/Reference/data-types/conditional-logic/boolean.md create mode 100644 content/en/docs/2024.11/Reference/data-types/credentials/_index.md create mode 100644 content/en/docs/2024.11/Reference/data-types/credentials/iusercredentials.md create mode 100644 content/en/docs/2024.11/Reference/data-types/credentials/logontype.md create mode 100644 content/en/docs/2024.11/Reference/data-types/credentials/usercredentials.md create mode 100644 content/en/docs/2024.11/Reference/data-types/data/_index.md create mode 100644 content/en/docs/2024.11/Reference/data-types/data/command.md create mode 100644 content/en/docs/2024.11/Reference/data-types/data/commands.md create mode 100644 content/en/docs/2024.11/Reference/data-types/data/connectiondetails.md create mode 100644 content/en/docs/2024.11/Reference/data-types/data/datacommand.md create mode 100644 content/en/docs/2024.11/Reference/data-types/data/datacommanderrorcode.md create mode 100644 content/en/docs/2024.11/Reference/data-types/data/iparameter.md create mode 100644 content/en/docs/2024.11/Reference/data-types/data/iparameters-1.md create mode 100644 content/en/docs/2024.11/Reference/data-types/data/nonquerycommand.md create mode 100644 content/en/docs/2024.11/Reference/data-types/data/odbcconnectiondetails.md create mode 100644 content/en/docs/2024.11/Reference/data-types/data/oracleconnectiondetails.md create mode 100644 content/en/docs/2024.11/Reference/data-types/data/oraclemappingtype.md create mode 100644 content/en/docs/2024.11/Reference/data-types/data/oracleparameter.md create mode 100644 content/en/docs/2024.11/Reference/data-types/data/oracleparameters.md create mode 100644 content/en/docs/2024.11/Reference/data-types/data/querycommand.md create mode 100644 content/en/docs/2024.11/Reference/data-types/data/sqlserverconnectiondetails.md create mode 100644 content/en/docs/2024.11/Reference/data-types/date-and-time/_index.md create mode 100644 content/en/docs/2024.11/Reference/data-types/date-and-time/datetime.md create mode 100644 content/en/docs/2024.11/Reference/data-types/date-and-time/datetimecomponenttype.md create mode 100644 content/en/docs/2024.11/Reference/data-types/date-and-time/datetimeoffset.md create mode 100644 content/en/docs/2024.11/Reference/data-types/date-and-time/dayofweek.md create mode 100644 content/en/docs/2024.11/Reference/data-types/date-and-time/timeperiod.md create mode 100644 content/en/docs/2024.11/Reference/data-types/date-and-time/timespan.md create mode 100644 content/en/docs/2024.11/Reference/data-types/email/_index.md create mode 100644 content/en/docs/2024.11/Reference/data-types/email/authentication/EmailCredentials.md create mode 100644 content/en/docs/2024.11/Reference/data-types/email/authentication/EmailUserCredentials.md create mode 100644 content/en/docs/2024.11/Reference/data-types/email/authentication/IEmailCredentials.md create mode 100644 content/en/docs/2024.11/Reference/data-types/email/authentication/_index.md create mode 100644 content/en/docs/2024.11/Reference/data-types/email/basicemailsessiondetails.md create mode 100644 content/en/docs/2024.11/Reference/data-types/email/emailaddress.md create mode 100644 content/en/docs/2024.11/Reference/data-types/email/emailmessage.md create mode 100644 content/en/docs/2024.11/Reference/data-types/email/emailmessagebodyformat.md create mode 100644 content/en/docs/2024.11/Reference/data-types/email/emailmessagepriority.md create mode 100644 content/en/docs/2024.11/Reference/data-types/email/emailsessionerrorcode.md create mode 100644 content/en/docs/2024.11/Reference/data-types/exceptions/_index.md create mode 100644 content/en/docs/2024.11/Reference/data-types/exceptions/exception.md create mode 100644 content/en/docs/2024.11/Reference/data-types/files-and-folders/FileSystemInformation.md create mode 100644 content/en/docs/2024.11/Reference/data-types/files-and-folders/_index.md create mode 100644 content/en/docs/2024.11/Reference/data-types/files-and-folders/contentoptions.md create mode 100644 content/en/docs/2024.11/Reference/data-types/files-and-folders/fileinformation.md create mode 100644 content/en/docs/2024.11/Reference/data-types/files-and-folders/filematch.md create mode 100644 content/en/docs/2024.11/Reference/data-types/files-and-folders/folderinformation.md create mode 100644 content/en/docs/2024.11/Reference/data-types/flows/_index.md create mode 100644 content/en/docs/2024.11/Reference/data-types/flows/flowreference.md create mode 100644 content/en/docs/2024.11/Reference/data-types/flows/inputvariables.md create mode 100644 content/en/docs/2024.11/Reference/data-types/google-workspace/_index.md create mode 100644 content/en/docs/2024.11/Reference/data-types/google-workspace/gmail/_index.md create mode 100644 content/en/docs/2024.11/Reference/data-types/google-workspace/gmail/authentication/_index.md create mode 100644 content/en/docs/2024.11/Reference/data-types/google-workspace/gmail/authentication/oauth/_index.md create mode 100644 content/en/docs/2024.11/Reference/data-types/google-workspace/gmail/authentication/oauth/gmailoauthcertificatecredentials.md create mode 100644 content/en/docs/2024.11/Reference/data-types/google-workspace/gmail/gmailsessiondetails.md create mode 100644 content/en/docs/2024.11/Reference/data-types/http/_index.md create mode 100644 content/en/docs/2024.11/Reference/data-types/http/authentication/HttpCredentials.md create mode 100644 content/en/docs/2024.11/Reference/data-types/http/authentication/HttpUserCredentials.md create mode 100644 content/en/docs/2024.11/Reference/data-types/http/authentication/IHttpCredentials.md create mode 100644 content/en/docs/2024.11/Reference/data-types/http/authentication/_index.md create mode 100644 content/en/docs/2024.11/Reference/data-types/http/authentication/oauth/_index.md create mode 100644 content/en/docs/2024.11/Reference/data-types/http/authentication/oauth/clientauthentication.md create mode 100644 content/en/docs/2024.11/Reference/data-types/http/authentication/oauth/clientauthtype.md create mode 100644 content/en/docs/2024.11/Reference/data-types/http/authentication/oauth/httpoauthclientcredentials.md create mode 100644 content/en/docs/2024.11/Reference/data-types/http/authentication/oauth/httpoauthcredentials.md create mode 100644 content/en/docs/2024.11/Reference/data-types/http/authentication/oauth/httpoauthpasswordcredentials.md create mode 100644 content/en/docs/2024.11/Reference/data-types/http/httprequestversion.md create mode 100644 content/en/docs/2024.11/Reference/data-types/http/httpstatuscode.md create mode 100644 content/en/docs/2024.11/Reference/data-types/http/request.md create mode 100644 content/en/docs/2024.11/Reference/data-types/http/requestverb.md create mode 100644 content/en/docs/2024.11/Reference/data-types/http/rest/_index.md create mode 100644 content/en/docs/2024.11/Reference/data-types/http/rest/httprequest.md create mode 100644 content/en/docs/2024.11/Reference/data-types/http/rest/httpresponse.md create mode 100644 content/en/docs/2024.11/Reference/data-types/http/soap/_index.md create mode 100644 content/en/docs/2024.11/Reference/data-types/http/soap/soap11message.md create mode 100644 content/en/docs/2024.11/Reference/data-types/http/soap/soap12message.md create mode 100644 content/en/docs/2024.11/Reference/data-types/http/soap/soapmessage.md create mode 100644 content/en/docs/2024.11/Reference/data-types/http/soap/soaprequest.md create mode 100644 content/en/docs/2024.11/Reference/data-types/http/soap/soapresponse.md create mode 100644 content/en/docs/2024.11/Reference/data-types/json/_index.md create mode 100644 content/en/docs/2024.11/Reference/data-types/json/jsonserializersettings.md create mode 100644 content/en/docs/2024.11/Reference/data-types/logs/_index.md create mode 100644 content/en/docs/2024.11/Reference/data-types/logs/eventseverity.md create mode 100644 content/en/docs/2024.11/Reference/data-types/loops/_index.md create mode 100644 content/en/docs/2024.11/Reference/data-types/loops/infinitelooperrorcode.md create mode 100644 content/en/docs/2024.11/Reference/data-types/microsoft365/_index.md create mode 100644 content/en/docs/2024.11/Reference/data-types/microsoft365/authentication/_index.md create mode 100644 content/en/docs/2024.11/Reference/data-types/microsoft365/authentication/oauth/_index.md create mode 100644 content/en/docs/2024.11/Reference/data-types/microsoft365/authentication/oauth/microsoft365credentials.md create mode 100644 content/en/docs/2024.11/Reference/data-types/microsoft365/authentication/oauth/microsoft365oauthcertificatecredentials.md create mode 100644 content/en/docs/2024.11/Reference/data-types/microsoft365/authentication/oauth/microsoft365oauthcredentials.md create mode 100644 content/en/docs/2024.11/Reference/data-types/most-common/_index.md create mode 100644 content/en/docs/2024.11/Reference/data-types/numbers/_index.md create mode 100644 content/en/docs/2024.11/Reference/data-types/numbers/double.md create mode 100644 content/en/docs/2024.11/Reference/data-types/numbers/int16.md create mode 100644 content/en/docs/2024.11/Reference/data-types/numbers/int32.md create mode 100644 content/en/docs/2024.11/Reference/data-types/numbers/int64.md create mode 100644 content/en/docs/2024.11/Reference/data-types/numbers/single.md create mode 100644 content/en/docs/2024.11/Reference/data-types/other/_index.md create mode 100644 content/en/docs/2024.11/Reference/data-types/other/guid.md create mode 100644 content/en/docs/2024.11/Reference/data-types/other/nullable-1.md create mode 100644 content/en/docs/2024.11/Reference/data-types/powershell/_index.md create mode 100644 content/en/docs/2024.11/Reference/data-types/powershell/powershellsessiondetails.md create mode 100644 content/en/docs/2024.11/Reference/data-types/powershell/powershellwinrmsessiondetails.md create mode 100644 content/en/docs/2024.11/Reference/data-types/powershell/psremotingerrorcode.md create mode 100644 content/en/docs/2024.11/Reference/data-types/powershell/records.md create mode 100644 content/en/docs/2024.11/Reference/data-types/scopes/_index.md create mode 100644 content/en/docs/2024.11/Reference/data-types/scopes/scope-definition.md create mode 100644 content/en/docs/2024.11/Reference/data-types/scopes/scope-option.md create mode 100644 content/en/docs/2024.11/Reference/data-types/scopes/scope.md create mode 100644 content/en/docs/2024.11/Reference/data-types/session-details/_index.md create mode 100644 content/en/docs/2024.11/Reference/data-types/session-details/serverdetails.md create mode 100644 content/en/docs/2024.11/Reference/data-types/ssh/_index.md create mode 100644 content/en/docs/2024.11/Reference/data-types/ssh/authentication/ISshCredentials.md create mode 100644 content/en/docs/2024.11/Reference/data-types/ssh/authentication/SshCredentials.md create mode 100644 content/en/docs/2024.11/Reference/data-types/ssh/authentication/SshUserCredentials.md create mode 100644 content/en/docs/2024.11/Reference/data-types/ssh/authentication/_index.md create mode 100644 content/en/docs/2024.11/Reference/data-types/ssh/authentication/sshcertificatecredentials.md create mode 100644 content/en/docs/2024.11/Reference/data-types/ssh/sshlogs.md create mode 100644 content/en/docs/2024.11/Reference/data-types/ssh/sshsessiondetails.md create mode 100644 content/en/docs/2024.11/Reference/data-types/tasks/_index.md create mode 100644 content/en/docs/2024.11/Reference/data-types/tasks/executiontask.md create mode 100644 content/en/docs/2024.11/Reference/data-types/tasks/iexecutiontask.md create mode 100644 content/en/docs/2024.11/Reference/data-types/tasks/itask-1.md create mode 100644 content/en/docs/2024.11/Reference/data-types/telnet/_index.md create mode 100644 content/en/docs/2024.11/Reference/data-types/telnet/telnetclienterrorcode.md create mode 100644 content/en/docs/2024.11/Reference/data-types/telnet/telnetlogs.md create mode 100644 content/en/docs/2024.11/Reference/data-types/telnet/telnetservererrorcode.md create mode 100644 content/en/docs/2024.11/Reference/data-types/telnet/telnetsessiondetails.md create mode 100644 content/en/docs/2024.11/Reference/data-types/text/_index.md create mode 100644 content/en/docs/2024.11/Reference/data-types/text/char.md create mode 100644 content/en/docs/2024.11/Reference/data-types/text/cultureinfo.md create mode 100644 content/en/docs/2024.11/Reference/data-types/text/encoding.md create mode 100644 content/en/docs/2024.11/Reference/data-types/text/encryptabletext.md create mode 100644 content/en/docs/2024.11/Reference/data-types/text/encryptedtext.md create mode 100644 content/en/docs/2024.11/Reference/data-types/text/iformatprovider.md create mode 100644 content/en/docs/2024.11/Reference/data-types/text/regex/_index.md create mode 100644 content/en/docs/2024.11/Reference/data-types/text/regex/capturedetails.md create mode 100644 content/en/docs/2024.11/Reference/data-types/text/regex/group.md create mode 100644 content/en/docs/2024.11/Reference/data-types/text/regex/match.md create mode 100644 content/en/docs/2024.11/Reference/data-types/text/searchoptions.md create mode 100644 content/en/docs/2024.11/Reference/data-types/text/string.md create mode 100644 content/en/docs/2024.11/Reference/data-types/text/stringcomparer.md create mode 100644 content/en/docs/2024.11/Reference/data-types/text/stringcomparison.md create mode 100644 content/en/docs/2024.11/Reference/data-types/text/stringsplitoptions.md create mode 100644 content/en/docs/2024.11/Reference/data-types/text/textdecodingerrorcode.md create mode 100644 content/en/docs/2024.11/Reference/data-types/text/textencodingformat.md create mode 100644 content/en/docs/2024.11/Reference/data-types/text/texttofind.md create mode 100644 content/en/docs/2024.11/Reference/data-types/text/unicodeencoding.md create mode 100644 content/en/docs/2024.11/Reference/data-types/text/utf32encoding.md create mode 100644 content/en/docs/2024.11/Reference/data-types/text/utf8encoding.md create mode 100644 content/en/docs/2024.11/Reference/data-types/wireless/_index.md create mode 100644 content/en/docs/2024.11/Reference/data-types/wireless/wirelessreceiverblockreference.md create mode 100644 content/en/docs/2024.11/Reference/data-types/wireless/wirelessreceivernotfounderrorcode.md create mode 100644 content/en/docs/2024.11/Reference/logs/_index.md create mode 100644 content/en/docs/2024.11/Reference/logs/cortex-gateway/_index.md create mode 100644 content/en/docs/2024.11/Reference/logs/cortex-innovation/_index.md create mode 100644 content/en/docs/2024.11/Reference/logs/cortex-innovation/core-application/_index.md create mode 100644 content/en/docs/2024.11/Reference/logs/cortex-innovation/core-application/services/_index.md create mode 100644 content/en/docs/2024.11/Reference/logs/cortex-innovation/core-application/services/api-gateway-service/_index.md create mode 100644 content/en/docs/2024.11/Reference/logs/cortex-innovation/core-application/services/cortex-provisioning-service/_index.md create mode 100644 content/en/docs/2024.11/Reference/logs/cortex-innovation/core-application/services/licence-management-service/_index.md create mode 100644 content/en/docs/2024.11/Reference/logs/cortex-innovation/core-application/services/package-management-service/_index.md create mode 100644 content/en/docs/2024.11/Reference/logs/cortex-innovation/execution-application/_index.md create mode 100644 content/en/docs/2024.11/Reference/logs/cortex-innovation/execution-application/services/_index.md create mode 100644 content/en/docs/2024.11/Reference/logs/cortex-innovation/execution-application/services/execution-service/_index.md create mode 100644 content/en/docs/2024.11/Reference/logs/cortex-studio/_index.md create mode 100644 content/en/docs/2024.11/Reference/messages/_index.md create mode 100644 content/en/docs/2024.11/Reference/messages/validation/_index.md create mode 100644 content/en/docs/2024.11/Reference/messages/validation/errors/_index.md create mode 100644 content/en/docs/2024.11/Reference/observability/_index.md create mode 100644 content/en/docs/2024.11/Reference/observability/grafana/_index.md create mode 100644 content/en/docs/2024.11/Reference/observability/grafana/advanced-setup/_index.md create mode 100644 content/en/docs/2024.11/Reference/observability/grafana/advanced-setup/configuring-thresholds.md create mode 100644 content/en/docs/2024.11/Reference/observability/grafana/dashboards/_index.md create mode 100644 content/en/docs/2024.11/Reference/observability/grafana/dashboards/flow-execution-requests.md create mode 100644 content/en/docs/2024.11/Reference/observability/grafana/dashboards/platform-health.md create mode 100644 content/en/docs/2024.11/Reference/troubleshooting/_index.md create mode 100644 content/en/docs/2024.11/Reference/troubleshooting/installation.md create mode 100644 content/en/docs/2024.11/Reference/troubleshooting/upgrade.md create mode 100644 content/en/docs/2024.11/Tutorials/Administration/_index.md create mode 100644 content/en/docs/2024.11/Tutorials/Development/_index.md create mode 100644 content/en/docs/2024.11/Tutorials/Installation/_index.md create mode 100644 content/en/docs/2024.11/Tutorials/Setup/_index.md create mode 100644 content/en/docs/2024.11/Tutorials/Troubleshooting/_index.md create mode 100644 content/en/docs/2024.11/Tutorials/_index.md create mode 100644 content/en/docs/2024.11/Whats New/_index.md create mode 100644 content/en/docs/2024.11/_index.md create mode 100644 content/en/docs/2024.11/_shared/_index.md create mode 100644 content/en/docs/2024.11/_shared/advanced/ssl-best-practices.md create mode 100644 content/en/docs/2024.11/_shared/architecture/components/multi-server.md create mode 100644 content/en/docs/2024.11/_shared/architecture/components/node-details.md create mode 100644 content/en/docs/2024.11/_shared/architecture/components/purpose/api-gateway-service.md create mode 100644 content/en/docs/2024.11/_shared/architecture/components/purpose/authorisation-service.md create mode 100644 content/en/docs/2024.11/_shared/architecture/components/purpose/concurrency-management-service.md create mode 100644 content/en/docs/2024.11/_shared/architecture/components/purpose/configuration-management-service.md create mode 100644 content/en/docs/2024.11/_shared/architecture/components/purpose/cortex-block-packages.md create mode 100644 content/en/docs/2024.11/_shared/architecture/components/purpose/cortex-gateway-databases.md create mode 100644 content/en/docs/2024.11/_shared/architecture/components/purpose/cortex-gateway.md create mode 100644 content/en/docs/2024.11/_shared/architecture/components/purpose/cortex-innovation-core-application.md create mode 100644 content/en/docs/2024.11/_shared/architecture/components/purpose/cortex-innovation-execution-application.md create mode 100644 content/en/docs/2024.11/_shared/architecture/components/purpose/cortex-studio.md create mode 100644 content/en/docs/2024.11/_shared/architecture/components/purpose/data-storage-service.md create mode 100644 content/en/docs/2024.11/_shared/architecture/components/purpose/erlang-otp.md create mode 100644 content/en/docs/2024.11/_shared/architecture/components/purpose/execution-management-service.md create mode 100644 content/en/docs/2024.11/_shared/architecture/components/purpose/execution-service.md create mode 100644 content/en/docs/2024.11/_shared/architecture/components/purpose/gobetween.md create mode 100644 content/en/docs/2024.11/_shared/architecture/components/purpose/licence-management-service.md create mode 100644 content/en/docs/2024.11/_shared/architecture/components/purpose/listeners-service.md create mode 100644 content/en/docs/2024.11/_shared/architecture/components/purpose/ms-service-fabric-explorer.md create mode 100644 content/en/docs/2024.11/_shared/architecture/components/purpose/ms-service-fabric.md create mode 100644 content/en/docs/2024.11/_shared/architecture/components/purpose/ms-sql-server.md create mode 100644 content/en/docs/2024.11/_shared/architecture/components/purpose/nssm.md create mode 100644 content/en/docs/2024.11/_shared/architecture/components/purpose/package-management-service.md create mode 100644 content/en/docs/2024.11/_shared/architecture/components/purpose/particular-nservicebus.md create mode 100644 content/en/docs/2024.11/_shared/architecture/components/purpose/pivotal-rabbitmq.md create mode 100644 content/en/docs/2024.11/_shared/architecture/components/purpose/provisioning-service.md create mode 100644 content/en/docs/2024.11/_shared/architecture/components/purpose/scheduling-service.md create mode 100644 content/en/docs/2024.11/_shared/architecture/components/purpose/triggers-service.md create mode 100644 content/en/docs/2024.11/_shared/architecture/components/single-server.md create mode 100644 content/en/docs/2024.11/_shared/currentVersion.md create mode 100644 content/en/docs/2024.11/_shared/install-application-server/apply-recommended-security-measures.md create mode 100644 content/en/docs/2024.11/_shared/install-application-server/install-dot-net-framework.md create mode 100644 content/en/docs/2024.11/_shared/install-application-server/make-installation-artefacts-available.md create mode 100644 content/en/docs/2024.11/_shared/install-application-server/multi-server/check-application-services.md create mode 100644 content/en/docs/2024.11/_shared/install-application-server/single-server/add-antivirus-exclusions.md create mode 100644 content/en/docs/2024.11/_shared/install-application-server/single-server/add-innovation-only/configure-installation-script.md create mode 100644 content/en/docs/2024.11/_shared/install-application-server/single-server/add-innovation-to-7.2/configure-installation-script.md create mode 100644 content/en/docs/2024.11/_shared/install-application-server/single-server/add-permissions-to-crypto-folder.md create mode 100644 content/en/docs/2024.11/_shared/install-application-server/single-server/check-application-services.md create mode 100644 content/en/docs/2024.11/_shared/install-application-server/single-server/check-port-useage.md create mode 100644 content/en/docs/2024.11/_shared/install-application-server/single-server/run-installation-script.md create mode 100644 content/en/docs/2024.11/_shared/install-application-server/single-server/test-installation-script.md create mode 100644 content/en/docs/2024.11/_shared/install-web-application-server/add-innovation-only/assign-certificate-friendly-name.md create mode 100644 content/en/docs/2024.11/_shared/install-web-application-server/add-innovation-only/configure-debugger-installation-script.md create mode 100644 content/en/docs/2024.11/_shared/install-web-application-server/add-innovation-only/grant-gateway-user-additional-folder-permissions.md create mode 100644 content/en/docs/2024.11/_shared/install-web-application-server/add-innovation-only/licensing.md create mode 100644 content/en/docs/2024.11/_shared/install-web-application-server/add-innovation-to-7.2/assign-certificate-friendly-name.md create mode 100644 content/en/docs/2024.11/_shared/install-web-application-server/add-innovation-to-7.2/configure-debugger-installation-script.md create mode 100644 content/en/docs/2024.11/_shared/install-web-application-server/add-innovation-to-7.2/grant-gateway-user-additional-folder-permissions.md create mode 100644 content/en/docs/2024.11/_shared/install-web-application-server/add-innovation-to-7.2/licensing.md create mode 100644 content/en/docs/2024.11/_shared/install-web-application-server/grant-gateway-user-folder-permissions.md create mode 100644 content/en/docs/2024.11/_shared/install-web-application-server/make-installation-artefacts-available.md create mode 100644 content/en/docs/2024.11/_shared/port-requirements/description/api-gateway.md create mode 100644 content/en/docs/2024.11/_shared/port-requirements/description/authorisation.md create mode 100644 content/en/docs/2024.11/_shared/port-requirements/description/configuration-management.md create mode 100644 content/en/docs/2024.11/_shared/port-requirements/description/data-storage.md create mode 100644 content/en/docs/2024.11/_shared/port-requirements/description/execution-management.md create mode 100644 content/en/docs/2024.11/_shared/port-requirements/description/execution.md create mode 100644 content/en/docs/2024.11/_shared/port-requirements/description/licence-management.md create mode 100644 content/en/docs/2024.11/_shared/port-requirements/description/package-management.md create mode 100644 content/en/docs/2024.11/_shared/port-requirements/description/provisioning.md create mode 100644 content/en/docs/2024.11/_shared/port-requirements/description/triggers-snmp.md create mode 100644 content/en/docs/2024.11/_shared/prerequisites/add-innovation-to-7.2/encryption-requirements.md create mode 100644 content/en/docs/2024.11/_shared/prerequisites/install-innovation-only/multi-server/encryption-requirements.md create mode 100644 content/en/docs/2024.11/_shared/prerequisites/install-innovation-only/single-server/encryption-requirements.md create mode 100644 content/en/docs/2024.11/_shared/preserve-installation-files.md create mode 100644 content/en/docs/2024.11/_shared/upgrade/2024.3/upgrade-application-server/multi-server/run-upgrade-script.md create mode 100644 content/en/docs/2024.11/_shared/upgrade/2024.3/upgrade-application-server/single-server/configure-upgrade-script.md create mode 100644 content/en/docs/2024.11/_shared/upgrade/2024.3/upgrade-application-server/single-server/make-installation-artefacts-available.md create mode 100644 content/en/docs/2024.11/_shared/upgrade/2024.3/upgrade-application-server/single-server/run-upgrade-script.md create mode 100644 content/en/docs/2024.11/_shared/upgrade/2024.3/upgrade-application-server/upgrade-flows.md create mode 100644 content/en/docs/2024.11/_shared/upgrade/2024.3/upgrade-web-application-server/configure-gateway-script.md create mode 100644 content/en/docs/2024.11/_shared/upgrade/2024.3/upgrade-web-application-server/run-gateway-script.md create mode 100644 content/en/docs/2024.11/_shared/upgrade/2024.3/upgrade-web-application-server/test-upgrade.md create mode 100644 content/en/docs/2024.11/_shared/upgrade/2024.5/upgrade-application-server/multi-server/run-upgrade-script.md create mode 100644 content/en/docs/2024.11/_shared/upgrade/2024.5/upgrade-application-server/single-server/configure-upgrade-script.md create mode 100644 content/en/docs/2024.11/_shared/upgrade/2024.5/upgrade-application-server/single-server/make-installation-artefacts-available.md create mode 100644 content/en/docs/2024.11/_shared/upgrade/2024.5/upgrade-application-server/single-server/run-upgrade-script.md create mode 100644 content/en/docs/2024.11/_shared/upgrade/2024.5/upgrade-application-server/upgrade-flows.md create mode 100644 content/en/docs/2024.11/_shared/upgrade/2024.5/upgrade-web-application-server/configure-gateway-script.md create mode 100644 content/en/docs/2024.11/_shared/upgrade/2024.5/upgrade-web-application-server/run-gateway-script.md create mode 100644 content/en/docs/2024.11/_shared/upgrade/2024.5/upgrade-web-application-server/test-upgrade.md create mode 100644 content/en/docs/2024.11/_shared/upgrade/2024.7/upgrade-application-server/multi-server/run-upgrade-script.md create mode 100644 content/en/docs/2024.11/_shared/upgrade/2024.7/upgrade-application-server/single-server/configure-upgrade-script.md create mode 100644 content/en/docs/2024.11/_shared/upgrade/2024.7/upgrade-application-server/single-server/make-installation-artefacts-available.md create mode 100644 content/en/docs/2024.11/_shared/upgrade/2024.7/upgrade-application-server/single-server/run-upgrade-script.md create mode 100644 content/en/docs/2024.11/_shared/upgrade/2024.7/upgrade-web-application-server/configure-gateway-script.md create mode 100644 content/en/docs/2024.11/_shared/upgrade/2024.7/upgrade-web-application-server/run-gateway-script.md create mode 100644 content/en/docs/2024.11/_shared/upgrade/2024.7/upgrade-web-application-server/test-upgrade.md create mode 100644 content/en/docs/2024.11/_shared/upgrade/2024.7/upgrade-web-application-server/upgrade-flows.md create mode 100644 content/en/docs/2024.11/_shared/upgrade/2024.9/upgrade-application-server/multi-server/run-upgrade-script.md create mode 100644 content/en/docs/2024.11/_shared/upgrade/2024.9/upgrade-application-server/single-server/configure-upgrade-script.md create mode 100644 content/en/docs/2024.11/_shared/upgrade/2024.9/upgrade-application-server/single-server/make-installation-artefacts-available.md create mode 100644 content/en/docs/2024.11/_shared/upgrade/2024.9/upgrade-application-server/single-server/run-upgrade-script.md create mode 100644 content/en/docs/2024.11/_shared/upgrade/2024.9/upgrade-web-application-server/configure-gateway-script.md create mode 100644 content/en/docs/2024.11/_shared/upgrade/2024.9/upgrade-web-application-server/run-gateway-script.md create mode 100644 content/en/docs/2024.11/_shared/upgrade/2024.9/upgrade-web-application-server/test-upgrade.md create mode 100644 content/en/docs/2024.11/_shared/upgrade/try-it-out/multi-server/test-executing-production-flows.md create mode 100644 content/en/docs/2024.11/_shared/upgrade/try-it-out/single-server/test-executing-production-flows.md create mode 100644 content/en/docs/2024.11/_shared/upgrade/upgrade-application-server/multi-server/check-application-services.md create mode 100644 content/en/docs/2024.11/_shared/upgrade/upgrade-application-server/single-server/check-application-services.md create mode 100644 content/en/docs/2024.11/getting-started/_index.md create mode 100644 content/en/docs/2024.11/getting-started/cloud/_index.md create mode 100644 content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/Grafana/_index.md create mode 100644 content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/Grafana/architecture.md create mode 100644 content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/Grafana/import-dashboards.md create mode 100644 content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/Grafana/install-promtail/_index.md create mode 100644 content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/Grafana/install-promtail/configure-promtail.md create mode 100644 content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/Grafana/install-promtail/install-promtail.md create mode 100644 content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/Grafana/prerequisites.md create mode 100644 content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/Grafana/setup-grafana.md create mode 100644 content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/Grafana/setup-loki.md create mode 100644 content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/Grafana/try-it-out.md create mode 100644 content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/_index.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/_index.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/_index.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/multiple-server-with-ha/_index.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/multiple-server-with-ha/architecture.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/multiple-server-with-ha/install-application-and-loadbalancer-servers.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/multiple-server-with-ha/install-web-application-server/_index.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/multiple-server-with-ha/install-web-application-server/perform-debugger-installation.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/multiple-server-with-ha/install-web-application-server/perform-gateway-installation.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/multiple-server-with-ha/install-web-application-server/prerequisites.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/multiple-server-with-ha/prerequisites.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/multiple-server-with-ha/try-it-out.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/single-server-without-ha/_index.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/single-server-without-ha/architecture.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/single-server-without-ha/install-application-server.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/single-server-without-ha/install-web-application-server.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/single-server-without-ha/prerequisites.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/single-server-without-ha/try-it-out.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/add-interaction-portal-to-innovation/_index.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/_index.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/advanced/_index.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/advanced/port-requirements.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/advanced/self-signed-certificates.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/advanced/ssl-best-practices.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/architecture.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/install-grafana/_index.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/install-grafana/configure-grafana.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/install-grafana/install-grafana.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/install-loki/_index.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/install-loki/configure-loki.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/install-loki/install-loki.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/install-promtail/_index.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/install-promtail/configure-promtail.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/install-promtail/install-promtail.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/prerequisites.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/setup-grafana.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/try-it-out.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/_index.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/_index.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/advanced/_index.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/advanced/advanced-config-changes.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/advanced/configure-firewalls.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/advanced/encrypt-text.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/advanced/port-requirements.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/advanced/rollover-certificates.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/advanced/self-signed-certificates.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/advanced/ssl-best-practices.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/multiple-server-with-ha/_index.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/multiple-server-with-ha/architecture.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/multiple-server-with-ha/install-application-and-loadbalancer-servers.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/multiple-server-with-ha/install-web-application-server/_index.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/multiple-server-with-ha/install-web-application-server/perform-debugger-installation.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/multiple-server-with-ha/install-web-application-server/perform-gateway-installation.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/multiple-server-with-ha/install-web-application-server/prerequisites.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/multiple-server-with-ha/prerequisites.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/multiple-server-with-ha/setup-gateway.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/multiple-server-with-ha/try-it-out.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/single-server-without-ha/_index.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/single-server-without-ha/architecture.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/single-server-without-ha/install-application-server.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/single-server-without-ha/install-web-application-server.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/single-server-without-ha/prerequisites.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/single-server-without-ha/setup-gateway.md create mode 100644 content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/single-server-without-ha/try-it-out.md create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_DataStorage_CreateCollection_CreateCollectionBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_DataStorage_DeleteCollection_DeleteCollectionBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_DataStorage_DeleteData_DeleteDataWithKeyBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_DataStorage_ReadData_ReadDataWithKeyBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_DataStorage_WaitForCollection_WaitForCollectionToExistBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_DataStorage_WaitForCollection_WaitForCollectionToNotExistBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_DataStorage_WaitForKeyInCollection_WaitForKeyInCollectionToBeSetBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_DataStorage_WaitForKeyInCollection_WaitForKeyInCollectionToContainValueBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_DataStorage_WaitForKeyInCollection_WaitForKeyInCollectionToExistBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_DataStorage_WaitForKeyInCollection_WaitForKeyInCollectionToNotExistBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_DataStorage_WriteData_WriteDataWithKeyBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Data_ExecuteDataCommand_ExecuteDataCommandBlock_1.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_DateAndTime_AddTimePeriod_AddTimePeriodBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_DateAndTime_ConvertDateTime_ConvertDateTimeToTextBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_DateAndTime_ConvertDateTime_ConvertTextToDateTimeBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_DateAndTime_GetDateTime_GetCurrentDateTimeBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_DateAndTime_GetDateTime_GetDateTimeComponentBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_DateAndTime_GetTimePeriod_GetTimePeriodBetweenDateTimesBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_DateAndTime_IsDateTime_IsDateTimeAfterBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_DateAndTime_IsDateTime_IsDateTimeBeforeBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_DateAndTime_IsDateTime_IsDateTimeBetweenBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_DateAndTime_IsDateTime_IsDateTimeEqualBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_DateAndTime_SubtractTimePeriod_SubtractTimePeriodBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Decisions_If_IfNullExitBottomBlock_1.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Decisions_If_IfNullExitRightBlock_1.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Decisions_If_IfTrueExitBottomBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Decisions_If_IfTrueExitRightBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_AddItem_AddItemWithKeyBlock_3.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_ContainsItem_ContainsItemWithKeyAndValueBlock_3.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_ContainsItem_ContainsItemWithKeyBlock_3.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_ContainsItem_ContainsItemWithValueBlock_3.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_ContainsItem_ContainsItemsWithKeysBlock_3.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_ContainsItem_ContainsItemsWithValuesBlock_3.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_GetCount_GetCountOfAllItemsBlock_3.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_GetCount_GetCountOfItemsWithValueBlock_3.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_GetCount_GetCountsOfItemsWithValuesBlock_3.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_GetItem_GetAllItemsBlock_3.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_GetItem_GetItemWithKeyBlock_3.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_GetItem_GetItemsWithKeyBlock_3.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_GetKey_GetAllKeysBlock_3.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_RemoveItem_RemoveAllItemsBlock_3.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_RemoveItem_RemoveItemWithKeyBlock_3.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_RemoveItem_RemoveItemWithValueBlock_3.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_RemoveItem_RemoveItemsWithKeyBlock_3.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_RemoveItem_RemoveItemsWithKeysBlock_3.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_RemoveItem_RemoveItemsWithValueBlock_3.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_RemoveItem_RemoveItemsWithValuesBlock_3.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_SetItem_SetAllItemsBlock_3.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_SetItem_SetItemWithKeyBlock_3.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_SetItem_SetItemWithValueBlock_3.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_SetItem_SetItemsWithKeyBlock_3.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_SetItem_SetItemsWithKeysBlock_3.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_SetItem_SetItemsWithValueBlock_3.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_SetItem_SetItemsWithValuesBlock_3.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Email_SendEmail_SendEmailUsingSmtpServerBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Exceptions_HandleBlockException_HandleBlockExceptionBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Exceptions_HandleBlockException_HandleBlockExceptionMatchingMessageBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Exceptions_HandleBlockException_HandleBlockExceptionMatchingMessagesBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Exceptions_HandleBlockException_HandleBlockExceptionMatchingTypeNameBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Exceptions_HandleBlockException_HandleBlockExceptionMatchingTypeNamesBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Exceptions_HandleFlowException_HandleFlowExceptionWorkspaceBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Exceptions_HandleWorkspaceException_HandleWorkspaceExceptionBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Exceptions_RethrowException_RethrowExceptionBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Exceptions_ThrowException_ThrowNewFlowExceptionBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_CheckFile_CheckFileExistsBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_CheckFolder_CheckFolderExistsBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_CopyFile_CopyFileBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_CopyFile_CopyFilesBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_CopyFolder_CopyFolderBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_CopyFolder_CopyFoldersBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_CopyFolder_DuplicateFolderBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_CreateFolder_CreateFolderBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_CreateFolder_CreateFoldersBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_DeleteFile_DeleteFileBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_DeleteFile_DeleteFilesBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_DeleteFolder_DeleteFolderBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_DeleteFolder_DeleteFoldersBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_GetFileInformation_GetFileInformationBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_GetFolderContent_GetFolderContentBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_GetFolderInformation_GetFolderInformationBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_MoveFile_MoveFileBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_MoveFile_MoveFilesBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_MoveFolder_MoveFolderBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_MoveFolder_MoveFoldersBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_ReadFile_ReadAllLinesBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_ReadFile_ReadAllTextBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_RenameFolder_RenameFolderBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_SearchFile_SearchFileBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_SearchFile_SearchFilesBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_WriteFile_WriteAllLinesBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_WriteFile_WriteAllTextBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Flows_EndFlow_EndFlowBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Flows_RunFlow_RunFlowAsyncBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Flows_RunFlow_RunFlowBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Flows_StartFlow_StartFlowBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_GoogleWorkspace_Gmail_SendEmail_SendEmailUsingGmailBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Http_ExecuteHttpRequest_ExecuteHttpRequestBlock_1.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Http_ExecuteSoapRequest_ExecuteSoapRequestBlock_1.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Json_ConvertJson_ConvertJsonToObjectBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Json_ConvertJson_ConvertObjectToJsonBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Lists_AddItem_AddItemAtBeginningBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Lists_AddItem_AddItemAtEndBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Lists_AddItem_AddItemAtIndexBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Lists_AddItem_AddItemsAtBeginningBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Lists_AddItem_AddItemsAtEndBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Lists_AddItem_AddItemsAtIndexBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Lists_ContainsItem_ContainsItemWithValueBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Lists_ContainsItem_ContainsItemsWithValuesBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Lists_GetCount_GetCountOfAllItemsBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Lists_GetCount_GetCountOfItemsWithValueBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Lists_GetCount_GetCountsOfItemsWithValuesBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Lists_GetIndex_GetIndexOfItemWithValueBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Lists_GetIndex_GetIndexesOfItemsWithValueBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Lists_GetItem_GetItemAtBeginningBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Lists_GetItem_GetItemAtEndBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Lists_GetItem_GetItemAtIndexBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Lists_GetItem_GetItemsAtBeginningBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Lists_GetItem_GetItemsAtEndBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Lists_GetItem_GetItemsAtIndexBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Lists_GetItem_GetItemsAtIndexesBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Lists_RemoveItem_RemoveAllItemsBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Lists_RemoveItem_RemoveDuplicateItemsBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Lists_RemoveItem_RemoveItemAtBeginningBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Lists_RemoveItem_RemoveItemAtEndBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Lists_RemoveItem_RemoveItemAtIndexBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Lists_RemoveItem_RemoveItemWithValueBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Lists_RemoveItem_RemoveItemsAtBeginningBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Lists_RemoveItem_RemoveItemsAtEndBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Lists_RemoveItem_RemoveItemsAtIndexBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Lists_RemoveItem_RemoveItemsAtIndexesBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Lists_RemoveItem_RemoveItemsWithValueBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Lists_RemoveItem_RemoveItemsWithValuesBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Lists_SetItem_SetAllItemsBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Lists_SetItem_SetItemAtBeginningBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Lists_SetItem_SetItemAtEndBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Lists_SetItem_SetItemAtIndexBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Lists_SetItem_SetItemWithValueBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Lists_SetItem_SetItemsAtBeginningBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Lists_SetItem_SetItemsAtEndBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Lists_SetItem_SetItemsAtIndexBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Lists_SetItem_SetItemsAtIndexesBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Lists_SetItem_SetItemsWithValueBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Lists_SetItem_SetItemsWithValuesBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Logs_LogEvent_LogEventBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Loops_ForEach_ForEachLoopBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Loops_For_ForLoopBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Microsoft365_Outlook_SendEmail_SendEmailUsingMicrosoft365Block.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Objects_ConvertObject_ConvertObjectToTextBlock_1.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Objects_CopyObject_CopyObjectBlock_1.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_PowerShell_ExecutePowerShellScript_ExecutePowerShellScriptBlock_1.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Queues_DequeueItem_DequeueItemBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Queues_DequeueItem_DequeueItemsBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Queues_EnqueueItem_EnqueueItemBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Queues_EnqueueItem_EnqueueItemsBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Queues_GetCount_GetCountOfAllItemsBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Queues_PeekItem_PeekItemBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Queues_RemoveItem_RemoveAllItemsBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Schedules_WaitFor_WaitForDurationBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Ssh_ExecuteSshCommand_ExecuteSshCommandBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Tasks_CancelTask_CancelAllTasksBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Tasks_CancelTask_CancelTaskBlock_1.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Tasks_WaitForTask_WaitForAllTasksBlock_2.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Tasks_WaitForTask_WaitForTaskBlock_1.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Telnet_ExecuteTelnetCommand_ExecuteTelnetCommandBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Text_AddText_AddTextAfterIndexBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Text_AddText_AddTextAtBeginningBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Text_AddText_AddTextAtEndBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Text_AddText_AddTextBeforeIndexBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Text_ContainsText_ContainsAllTextBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Text_ContainsText_ContainsAnyTextBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Text_ContainsText_ContainsTextBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Text_ConvertTo_ConvertToCamelCaseBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Text_ConvertTo_ConvertToLowerCaseBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Text_ConvertTo_ConvertToPascalCaseBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Text_ConvertTo_ConvertToTitleCaseBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Text_ConvertTo_ConvertToUpperCaseBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Text_DecodeText_DecodeTextBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Text_EncodeText_EncodeTextBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Text_FindAndRemoveText_FindAndRemoveAllTextBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Text_FindAndRemoveText_FindAndRemoveTextBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Text_FindAndReplaceText_FindAndReplaceAllTextBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Text_FindAndReplaceText_FindAndReplaceTextBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Text_FindText_FindAllTextBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Text_FindText_FindTextBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Text_FormatText_FormatTextWithValueBlock_1.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Text_FormatText_FormatTextWithValuesBlock_1.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Text_GetIndex_GetIndexOfTextBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Text_GetIndex_GetIndexesOfTextBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Text_GetLength_GetLengthBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Text_GetText_GetTextAtBeginningBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Text_GetText_GetTextAtEndBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Text_GetText_GetTextAtIndexBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Text_GetText_GetTextBeforeIndexBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Text_GetText_GetTextBetweenIndexesBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Text_IsText_IsTextEmptyBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Text_IsText_IsTextEmptyOrWhitespaceBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Text_IsText_IsTextEqualBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Text_IsText_IsTextNullBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Text_IsText_IsTextNullEmptyOrWhitespaceBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Text_IsText_IsTextNullOrEmptyBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Text_JoinText_JoinTextBlock_1.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Text_RemoveText_RemoveTextAtBeginningBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Text_RemoveText_RemoveTextAtEndBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Text_RemoveText_RemoveTextAtIndexBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Text_RemoveText_RemoveTextBeforeIndexBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Text_RemoveText_RemoveTextBetweenIndexesBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Text_SplitText_SplitTextBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Variables_SetVariable_SetVariableBlock_1.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Wireless_WirelessReceiver_WirelessReceiverBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Wireless_WirelessSender_WirelessSenderBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Workspaces_EndWorkspace_EndWorkspaceBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Workspaces_StartWorkspace_StartWorkspaceBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Workspaces_Workspace_WorkspaceBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Xml_ConvertXml_ConvertStructureToXmlBlock.png create mode 100644 content/static/2024.11/blocks/Cortex_Blocks_Xml_ConvertXml_ConvertXmlToStructureBlock.png create mode 100644 content/static/2024.11/images/Gateway Setup1.png create mode 100644 content/static/2024.11/images/Gateway Setup2.png create mode 100644 content/static/2024.11/images/Gateway Setup3.png create mode 100644 content/static/2024.11/images/Gateway Setup4.png create mode 100644 content/static/2024.11/images/Gateway Setup5.png create mode 100644 content/static/2024.11/images/Grafana Cloud - Create Stack.png create mode 100644 content/static/2024.11/images/Grafana Cloud - Hosted Logs Config Data.png create mode 100644 content/static/2024.11/images/Grafana Cloud - Hosted Logs Config Token Name.png create mode 100644 content/static/2024.11/images/Grafana Cloud - Hosted Logs Config Usecase.png create mode 100644 content/static/2024.11/images/GrafanaMenuIcon.png create mode 100644 content/static/2024.11/images/IIS Bindings.png create mode 100644 content/static/2024.11/images/Network Discovery 1.png create mode 100644 content/static/2024.11/images/Network Discovery 2.png create mode 100644 content/static/2024.11/images/Network Discovery 3.png create mode 100644 content/static/2024.11/images/New Innovation Flow View.PNG create mode 100644 content/static/2024.11/images/RabbitMQ Status.png create mode 100644 content/static/2024.11/images/Screenshots.pptx create mode 100644 content/static/2024.11/images/Service Fabric Explorer - Expiring Certificate.PNG create mode 100644 content/static/2024.11/images/Service Fabric Explorer - Instance - Single.png create mode 100644 content/static/2024.11/images/Service Fabric Explorer - Instance.png create mode 100644 content/static/2024.11/images/Service Fabric Explorer - Node - Single.png create mode 100644 content/static/2024.11/images/Service Fabric Explorer - Node.png create mode 100644 content/static/2024.11/images/Service Fabric Explorer - Service - Single.png create mode 100644 content/static/2024.11/images/Service Fabric Explorer - Service.png create mode 100644 content/static/2024.11/images/Service Fabric Explorer - Single.png create mode 100644 content/static/2024.11/images/Service Fabric Explorer.png create mode 100644 content/static/2024.11/images/Url Rewrite Icon.png create mode 100644 content/static/2024.11/images/Variable-Scopes.png create mode 100644 content/static/2024.11/images/WaitForAllTasksExample.png create mode 100644 content/static/2024.11/images/Web Platform Installer Icon.png create mode 100644 content/static/2024.11/images/_ReadMe.md create mode 100644 content/static/2024.11/images/action-blocks.svg create mode 100644 content/static/2024.11/images/block-exception.gif create mode 100644 content/static/2024.11/images/chained-exception.gif create mode 100644 content/static/2024.11/images/chaining-handle-block-exception-blocks.png create mode 100644 content/static/2024.11/images/child-execution-in-grid.PNG create mode 100644 content/static/2024.11/images/decision-blocks.svg create mode 100644 content/static/2024.11/images/discarded-variable.PNG create mode 100644 content/static/2024.11/images/editable/Cortex Innovation Node Details.png create mode 100644 content/static/2024.11/images/editable/Cortex Innovation Overview-Single Server.png create mode 100644 content/static/2024.11/images/editable/Cortex Innovation Overview.png create mode 100644 content/static/2024.11/images/editable/Cortex Innovation and v7.2 Best Architecture.png create mode 100644 content/static/2024.11/images/editable/Cortex Innovation v7.2 Single Server.png create mode 100644 content/static/2024.11/images/editable/Flow Execution Requests - Duration.png create mode 100644 content/static/2024.11/images/editable/Flow Execution Requests - Errors.png create mode 100644 content/static/2024.11/images/editable/Flow Execution Requests - Filters.png create mode 100644 content/static/2024.11/images/editable/Flow Execution Requests - Not Zero.png create mode 100644 content/static/2024.11/images/editable/Flow Execution Requests - Overview.png create mode 100644 content/static/2024.11/images/editable/Flow Execution Requests - Requests.png create mode 100644 content/static/2024.11/images/editable/Flow Execution Requests - Time Range extended.png create mode 100644 content/static/2024.11/images/editable/Flow Execution Requests - Time Range.png create mode 100644 content/static/2024.11/images/editable/Flow Execution Requests Dashboard.png create mode 100644 content/static/2024.11/images/editable/Grafana Platform Architecture Diagram - Cloud.png create mode 100644 content/static/2024.11/images/editable/Grafana Platform Architecture Diagram - On-Premise.png create mode 100644 content/static/2024.11/images/editable/Platform Health - Availability.png create mode 100644 content/static/2024.11/images/editable/Platform Health - Break in Line.png create mode 100644 content/static/2024.11/images/editable/Platform Health - Duration.png create mode 100644 content/static/2024.11/images/editable/Platform Health - Errors.png create mode 100644 content/static/2024.11/images/editable/Platform Health - Filters.png create mode 100644 content/static/2024.11/images/editable/Platform Health - Not Zeros.png create mode 100644 content/static/2024.11/images/editable/Platform Health - Overview.png create mode 100644 content/static/2024.11/images/editable/Platform Health - Requests.png create mode 100644 content/static/2024.11/images/editable/Platform Health - Time Range extended.png create mode 100644 content/static/2024.11/images/editable/Platform Health - Time Range.png create mode 100644 content/static/2024.11/images/editable/Platform Health Dashboard.png create mode 100644 content/static/2024.11/images/editable/editor-types.png create mode 100644 content/static/2024.11/images/editable/exception-handling-blocks.png create mode 100644 content/static/2024.11/images/editable/expression-editor.png create mode 100644 content/static/2024.11/images/editable/variable-editor.png create mode 100644 content/static/2024.11/images/exception-in-viewer.PNG create mode 100644 content/static/2024.11/images/execution-in-grid.PNG create mode 100644 content/static/2024.11/images/flow-control-blocks.svg create mode 100644 content/static/2024.11/images/flow-error-status.png create mode 100644 content/static/2024.11/images/flow-exception-full-configuration.png create mode 100644 content/static/2024.11/images/flow-exception-no-configuration.png create mode 100644 content/static/2024.11/images/flow-exception.gif create mode 100644 content/static/2024.11/images/loading.gif create mode 100644 content/static/2024.11/images/messages-grid.PNG create mode 100644 content/static/2024.11/images/nested-workspace.svg create mode 100644 content/static/2024.11/images/reference/concepts/fundamentals/variables/what-is-a-variable-command-panel.png create mode 100644 content/static/2024.11/images/reference/concepts/fundamentals/variables/what-is-a-variable-dictionary-panel.png create mode 100644 content/static/2024.11/images/reference/concepts/fundamentals/variables/what-is-a-variable-exception-panel.png create mode 100644 content/static/2024.11/images/reference/concepts/fundamentals/variables/what-is-a-variable-variable-panel-2.png create mode 100644 content/static/2024.11/images/rethrow-from-list-exception.png create mode 100644 content/static/2024.11/images/rethrow-from-subflow.gif create mode 100644 content/static/2024.11/images/rethrow-original-list-exception.png create mode 100644 content/static/2024.11/images/run-flow-contract-change.gif create mode 100644 content/static/2024.11/images/run-flow-selecting-a-flow.gif create mode 100644 content/static/2024.11/images/send-email-using-smtp-server-html-email.png create mode 100644 content/static/2024.11/images/send-email-using-smtp-server-important-email.png create mode 100644 content/static/2024.11/images/set-variable/set-variable-block-timeout.svg create mode 100644 content/static/2024.11/images/set-variable/set-variable-description.svg create mode 100644 content/static/2024.11/images/set-variable/set-variable-expression-arithmetic.PNG create mode 100644 content/static/2024.11/images/set-variable/set-variable-expression-boolean-and.PNG create mode 100644 content/static/2024.11/images/set-variable/set-variable-expression-boolean.PNG create mode 100644 content/static/2024.11/images/set-variable/set-variable-expression-casting.PNG create mode 100644 content/static/2024.11/images/set-variable/set-variable-expression-char.PNG create mode 100644 content/static/2024.11/images/set-variable/set-variable-expression-comparison.PNG create mode 100644 content/static/2024.11/images/set-variable/set-variable-expression-concatenated-string.PNG create mode 100644 content/static/2024.11/images/set-variable/set-variable-expression-constructor.PNG create mode 100644 content/static/2024.11/images/set-variable/set-variable-expression-decomposition.PNG create mode 100644 content/static/2024.11/images/set-variable/set-variable-expression-double.PNG create mode 100644 content/static/2024.11/images/set-variable/set-variable-expression-empty.PNG create mode 100644 content/static/2024.11/images/set-variable/set-variable-expression-enum.PNG create mode 100644 content/static/2024.11/images/set-variable/set-variable-expression-index.PNG create mode 100644 content/static/2024.11/images/set-variable/set-variable-expression-int.PNG create mode 100644 content/static/2024.11/images/set-variable/set-variable-expression-int64.PNG create mode 100644 content/static/2024.11/images/set-variable/set-variable-expression-interpolated-string.PNG create mode 100644 content/static/2024.11/images/set-variable/set-variable-expression-list.PNG create mode 100644 content/static/2024.11/images/set-variable/set-variable-expression-method.PNG create mode 100644 content/static/2024.11/images/set-variable/set-variable-expression-properties.PNG create mode 100644 content/static/2024.11/images/set-variable/set-variable-expression-single.PNG create mode 100644 content/static/2024.11/images/set-variable/set-variable-expression-string.PNG create mode 100644 content/static/2024.11/images/set-variable/set-variable-expression-structure.PNG create mode 100644 content/static/2024.11/images/set-variable/set-variable-expression-variable.PNG create mode 100644 content/static/2024.11/images/set-variable/set-variable-expression-verbatim-string.PNG create mode 100644 content/static/2024.11/images/set-variable/set-variable-run-as.svg create mode 100644 content/static/2024.11/images/top-level-workspace-activity.svg create mode 100644 content/static/2024.11/images/top-level-workspace-process.svg create mode 100644 content/static/2024.11/images/variables-grid.PNG create mode 100644 content/static/2024.11/images/work-in-progress.jpg create mode 100644 content/static/2024.11/images/workspace-blocks.svg create mode 100644 content/static/2024.11/images/workspace-exception.gif create mode 100644 content/static/2024.11/images/workspace/workspace-block-semaphore.svg create mode 100644 content/static/2024.11/pdf/Cortex Interaction Portal Deployment Guide.pdf create mode 100644 content/static/2024.11/pdf/Cortex Interaction Portal Developer Guide.pdf create mode 100644 content/static/2024.11/pdf/Cortex Interaction Portal Merging Guide.pdf create mode 100644 content/static/2024.11/pdf/Cortex Interaction Portal User Guide.pdf diff --git a/config/_default/config.toml b/config/_default/config.toml index 8bacca8b8..1838857cd 100644 --- a/config/_default/config.toml +++ b/config/_default/config.toml @@ -200,15 +200,20 @@ enable = true [[menu.main]] identifier = 'documentation' name = 'Documentation' - url = '/docs/2024.9' + url = '/docs/2024.11' weight = 10 # Releases menu +[[params.versions]] + version = "2024.11" + url = "/docs/2024.11/" + dotNetVersion = "net-8.0" + latest = true + [[params.versions]] version = "2024.9" url = "/docs/2024.9/" dotNetVersion = "net-8.0" - latest = true [[params.versions]] version = "2024.7" diff --git a/content/en/docs/2024.11/FAQs/_index.md b/content/en/docs/2024.11/FAQs/_index.md new file mode 100644 index 000000000..654613e9b --- /dev/null +++ b/content/en/docs/2024.11/FAQs/_index.md @@ -0,0 +1,8 @@ +--- +title: "FAQs" +linkTitle: "FAQs" +description: "Answers to our most frequently asked questions." +weight: 10000 +--- + +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Guides/_index.md b/content/en/docs/2024.11/Guides/_index.md new file mode 100644 index 000000000..e9ff0c934 --- /dev/null +++ b/content/en/docs/2024.11/Guides/_index.md @@ -0,0 +1,6 @@ +--- +title: "Guides" +linkTitle: "Guides" +description: "This section includes all guides for the {{% ctx %}} Innovation platform." +weight: 10 +--- diff --git a/content/en/docs/2024.11/Guides/cortex-gateway/_index.md b/content/en/docs/2024.11/Guides/cortex-gateway/_index.md new file mode 100644 index 000000000..30d09957b --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-gateway/_index.md @@ -0,0 +1,8 @@ +--- +title: "CORTEX Gateway" +linkTitle: "CORTEX Gateway" +description: "The centralised web-based portal for accessing all user applications and tooling in the {{% ctx %}} Innovation platform." +weight: 1 +--- + +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Guides/cortex-gateway/help/_index.md b/content/en/docs/2024.11/Guides/cortex-gateway/help/_index.md new file mode 100644 index 000000000..dae7d1fc2 --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-gateway/help/_index.md @@ -0,0 +1,7 @@ +--- +title: "Help" +linkTitle: "Help" +description: "System level help" +--- + +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Guides/cortex-gateway/help/cortex-release-notes.md b/content/en/docs/2024.11/Guides/cortex-gateway/help/cortex-release-notes.md new file mode 100644 index 000000000..e60258650 --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-gateway/help/cortex-release-notes.md @@ -0,0 +1,7 @@ +--- +title: "Release Notes" +linkTitle: "Release Notes" +description: "Release notes for all currently available {{% ctx %}} Versions." +--- + +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Guides/cortex-gateway/settings/_index.md b/content/en/docs/2024.11/Guides/cortex-gateway/settings/_index.md new file mode 100644 index 000000000..4303ed2bb --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-gateway/settings/_index.md @@ -0,0 +1,7 @@ +--- +title: "CORTEX Gateway Management" +linkTitle: "CORTEX Gateway Management" +description: "{{% ctx %}} Gateway and Studio Management tools and settings" +--- + +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Guides/cortex-gateway/settings/ldap-authorisation.md b/content/en/docs/2024.11/Guides/cortex-gateway/settings/ldap-authorisation.md new file mode 100644 index 000000000..e4e6647d0 --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-gateway/settings/ldap-authorisation.md @@ -0,0 +1,7 @@ +--- +title: "LDAP Authorisation" +linkTitle: "LDAP Authorisation" +description: "Configure RBAC by assining roles to security groups." +--- + +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Guides/cortex-gateway/settings/ldap-connection.md b/content/en/docs/2024.11/Guides/cortex-gateway/settings/ldap-connection.md new file mode 100644 index 000000000..9d4f4c87f --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-gateway/settings/ldap-connection.md @@ -0,0 +1,7 @@ +--- +title: "LDAP Connection" +linkTitle: "LDAP Connection" +description: "Connect to an Active Directory using LDAP." +--- + +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Guides/cortex-gateway/settings/license-consumption.md b/content/en/docs/2024.11/Guides/cortex-gateway/settings/license-consumption.md new file mode 100644 index 000000000..fdb2d879d --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-gateway/settings/license-consumption.md @@ -0,0 +1,7 @@ +--- +title: "License Consumption" +linkTitle: "License Consumption" +description: "Review current license consumption of flows in master." +--- + +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Guides/cortex-gateway/settings/packages.md b/content/en/docs/2024.11/Guides/cortex-gateway/settings/packages.md new file mode 100644 index 000000000..c42f0f395 --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-gateway/settings/packages.md @@ -0,0 +1,7 @@ +--- +title: "Packages" +linkTitle: "Packages" +description: "Create and Manage {{% ctx %}} Innovation Packages" +--- + +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Guides/cortex-gateway/settings/studio-authorisation.md b/content/en/docs/2024.11/Guides/cortex-gateway/settings/studio-authorisation.md new file mode 100644 index 000000000..58ecac5b6 --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-gateway/settings/studio-authorisation.md @@ -0,0 +1,7 @@ +--- +title: "Studio Authorisation" +linkTitle: "Studio Authorisation" +description: "Assign access rights to flows based on security groups." +--- + +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Guides/cortex-gateway/settings/studio-export.md b/content/en/docs/2024.11/Guides/cortex-gateway/settings/studio-export.md new file mode 100644 index 000000000..21de622a6 --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-gateway/settings/studio-export.md @@ -0,0 +1,7 @@ +--- +title: "Studio Export" +linkTitle: "Studio Export" +description: "Create {{% ctx %}} Studio Packages by exporting flows." +--- + +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Guides/cortex-gateway/settings/studio-hierarchy.md b/content/en/docs/2024.11/Guides/cortex-gateway/settings/studio-hierarchy.md new file mode 100644 index 000000000..27a09993e --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-gateway/settings/studio-hierarchy.md @@ -0,0 +1,7 @@ +--- +title: "Studio Hierarchy" +linkTitle: "Studio Hierarchy" +description: "Manage the location of flows in the Flow Hierarchy." +--- + +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Guides/cortex-gateway/settings/studio-import.md b/content/en/docs/2024.11/Guides/cortex-gateway/settings/studio-import.md new file mode 100644 index 000000000..28a685526 --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-gateway/settings/studio-import.md @@ -0,0 +1,7 @@ +--- +title: "Studio Import" +linkTitle: "Studio Import" +description: "Import {{% ctx %}} Studio Packages." +--- + +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Guides/cortex-gateway/settings/version-control.md b/content/en/docs/2024.11/Guides/cortex-gateway/settings/version-control.md new file mode 100644 index 000000000..7033dc287 --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-gateway/settings/version-control.md @@ -0,0 +1,7 @@ +--- +title: "Version Control" +linkTitle: "Version Control" +description: "High level view of flows out of sync with master. Allow for mass Commit or Get Master" +--- + +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Guides/cortex-gateway/welcome-page/_index.md b/content/en/docs/2024.11/Guides/cortex-gateway/welcome-page/_index.md new file mode 100644 index 000000000..04b16f12a --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-gateway/welcome-page/_index.md @@ -0,0 +1,13 @@ +--- +title: "Welcome Page" +linkTitle: "Welcome Page" +description: "Welcome Page" +--- + +{{< workinprogress >}} + +## Summary + +## Recently Edited Flows + +TODO: Summary, Screenshots diff --git a/content/en/docs/2024.11/Guides/cortex-innovation/_index.md b/content/en/docs/2024.11/Guides/cortex-innovation/_index.md new file mode 100644 index 000000000..47faeb366 --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-innovation/_index.md @@ -0,0 +1,6 @@ +--- +title: "CORTEX Innovation" +linkTitle: "CORTEX Innovation" +description: "The {{% ctx %}} Innovation platform." +weight: 300 +--- diff --git a/content/en/docs/2024.11/Guides/cortex-innovation/core-application/_index.md b/content/en/docs/2024.11/Guides/cortex-innovation/core-application/_index.md new file mode 100644 index 000000000..87cdd11cd --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-innovation/core-application/_index.md @@ -0,0 +1,6 @@ +--- +title: "Core Application" +linkTitle: "Core Application" +description: "The Core Application." +weight: 1 +--- diff --git a/content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/_index.md b/content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/_index.md new file mode 100644 index 000000000..3bb8a5855 --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/_index.md @@ -0,0 +1,6 @@ +--- +title: "Services" +linkTitle: "Services" +description: "The Core Application Services." +weight: 1 +--- diff --git a/content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/api-gateway-service/_index.md b/content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/api-gateway-service/_index.md new file mode 100644 index 000000000..31c122c46 --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/api-gateway-service/_index.md @@ -0,0 +1,7 @@ +--- +title: "API Gateway Service" +linkTitle: "API Gateway Service" +description: "The API Gateway Service." +--- + +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/authorisation-service/_index.md b/content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/authorisation-service/_index.md new file mode 100644 index 000000000..9ff8c5979 --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/authorisation-service/_index.md @@ -0,0 +1,7 @@ +--- +title: "Authorisation Service" +linkTitle: "Authorisation Service" +description: "The Authorisation Service." +--- + +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/concurrency-management-service/_index.md b/content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/concurrency-management-service/_index.md new file mode 100644 index 000000000..8974784b2 --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/concurrency-management-service/_index.md @@ -0,0 +1,7 @@ +--- +title: "Concurrency Management Service" +linkTitle: "Concurrency Management Service" +description: "The Concurrency Management Service." +--- + +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/configuration-management-service/_index.md b/content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/configuration-management-service/_index.md new file mode 100644 index 000000000..0e25b5739 --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/configuration-management-service/_index.md @@ -0,0 +1,7 @@ +--- +title: "Configuration Management Service" +linkTitle: "Configuration Management Service" +description: "The Configuration Management Service." +--- + +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/data-storage-service/_index.md b/content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/data-storage-service/_index.md new file mode 100644 index 000000000..61d5fb9d1 --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/data-storage-service/_index.md @@ -0,0 +1,7 @@ +--- +title: "Data Storage Service" +linkTitle: "Data Storage Service" +description: "The Data Storage Service." +--- + +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/execution-management-service/_index.md b/content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/execution-management-service/_index.md new file mode 100644 index 000000000..4b49b1866 --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/execution-management-service/_index.md @@ -0,0 +1,7 @@ +--- +title: "Execution Management Service" +linkTitle: "Execution Management Service" +description: "The Execution Management Service." +--- + +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/licence-management-service/_index.md b/content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/licence-management-service/_index.md new file mode 100644 index 000000000..ad3a309fd --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/licence-management-service/_index.md @@ -0,0 +1,7 @@ +--- +title: "Licence Management Service" +linkTitle: "Licence Management Service" +description: "The Licence Management Service." +--- + +{{< workinprogress >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/listeners-service/_index.md b/content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/listeners-service/_index.md new file mode 100644 index 000000000..3cc2cd206 --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/listeners-service/_index.md @@ -0,0 +1,7 @@ +--- +title: "Listeners Service" +linkTitle: "Listeners Service" +description: "The Listeners Service." +--- + +{{< workinprogress >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/package-management-service/_index.md b/content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/package-management-service/_index.md new file mode 100644 index 000000000..8e451b3a7 --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/package-management-service/_index.md @@ -0,0 +1,7 @@ +--- +title: "Package Management Service" +linkTitle: "Package Management Service" +description: "The Package Management Service." +--- + +{{< workinprogress >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/provisioning-service/_index.md b/content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/provisioning-service/_index.md new file mode 100644 index 000000000..165229e50 --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/provisioning-service/_index.md @@ -0,0 +1,7 @@ +--- +title: "Provisioning Service" +linkTitle: "Provisioning Service" +description: "The Provisioning Service." +--- + +{{< workinprogress >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/scheduling-service/_index.md b/content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/scheduling-service/_index.md new file mode 100644 index 000000000..4a06f4fdf --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/scheduling-service/_index.md @@ -0,0 +1,7 @@ +--- +title: "Scheduling Service" +linkTitle: "Scheduling Service" +description: "The Scheduling Service." +--- + +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/triggers-service/_index.md b/content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/triggers-service/_index.md new file mode 100644 index 000000000..415b9aa71 --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-innovation/core-application/services/triggers-service/_index.md @@ -0,0 +1,7 @@ +--- +title: "Triggers Service" +linkTitle: "Triggers Service" +description: "The Triggers Service." +--- + +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Guides/cortex-innovation/execution-application/_index.md b/content/en/docs/2024.11/Guides/cortex-innovation/execution-application/_index.md new file mode 100644 index 000000000..3ec60b6f4 --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-innovation/execution-application/_index.md @@ -0,0 +1,6 @@ +--- +title: "Execution Application" +linkTitle: "Execution Application" +description: "The Execution Application." +weight: 1 +--- diff --git a/content/en/docs/2024.11/Guides/cortex-innovation/execution-application/services/_index.md b/content/en/docs/2024.11/Guides/cortex-innovation/execution-application/services/_index.md new file mode 100644 index 000000000..33f2fe7b6 --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-innovation/execution-application/services/_index.md @@ -0,0 +1,6 @@ +--- +title: "Services" +linkTitle: "Services" +description: "The Execution Application Services." +weight: 1 +--- diff --git a/content/en/docs/2024.11/Guides/cortex-innovation/execution-application/services/execution-service/_index.md b/content/en/docs/2024.11/Guides/cortex-innovation/execution-application/services/execution-service/_index.md new file mode 100644 index 000000000..3c8bea4c3 --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-innovation/execution-application/services/execution-service/_index.md @@ -0,0 +1,7 @@ +--- +title: "Execution Service" +linkTitle: "Execution Service" +description: "The Execution Service." +--- + +{{< workinprogress >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/Guides/cortex-interaction-portal/_index.md b/content/en/docs/2024.11/Guides/cortex-interaction-portal/_index.md new file mode 100644 index 000000000..797357f30 --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-interaction-portal/_index.md @@ -0,0 +1,10 @@ +--- +title: "CORTEX Interaction Portal" +linkTitle: "CORTEX Interaction Portal" +description: "A web application that provides Human-in-the-Loop capabilities to the {{% ctx %}} Innovation platform." +weight: 400 +--- + +* {{< filelink src="/pdf/Cortex Interaction Portal User Guide.pdf" name="CORTEX Interaction Portal User Guide" >}} +* {{< filelink src="/pdf/Cortex Interaction Portal Developer Guide.pdf" name="CORTEX Interaction Portal Developer Guide" >}} +* {{< filelink src="/pdf/Cortex Interaction Portal Merging Guide.pdf" name="CORTEX Interaction Portal Merging Guide" >}} diff --git a/content/en/docs/2024.11/Guides/cortex-studio/_index.md b/content/en/docs/2024.11/Guides/cortex-studio/_index.md new file mode 100644 index 000000000..d54973ba6 --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-studio/_index.md @@ -0,0 +1,8 @@ +--- +title: "CORTEX Studio" +linkTitle: "CORTEX Studio" +description: "The web-based, low-code, integrated development environment (IDE) for creating, editing, debugging, testing and managing flows that define the logic and actions required to capture and automate simple user tasks through to complex business or IT processes." +weight: 100 +--- + +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Guides/cortex-studio/debugging.md b/content/en/docs/2024.11/Guides/cortex-studio/debugging.md new file mode 100644 index 000000000..3e3ed9f9e --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-studio/debugging.md @@ -0,0 +1,20 @@ +--- +title: "Debugging" +linkTitle: "Debugging" +description: "" +weight: 1 +--- + +{{< workinprogress >}} + +## Summary + +## Property Viewer + +## Remarks + +### Known Limitations + +## See Also + +### Related Concepts diff --git a/content/en/docs/2024.11/Guides/cortex-studio/east-panel.md b/content/en/docs/2024.11/Guides/cortex-studio/east-panel.md new file mode 100644 index 000000000..94a52f91e --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-studio/east-panel.md @@ -0,0 +1,40 @@ +--- +title: "CORTEX Studio - East Panel (TBC)" +linkTitle: "CORTEX Studio - East Panel (TBC)" +description: "Eastern panel for Property Editor, Execution Viewer and Exceptions" +weight: 1 +--- + +{{< workinprogress >}} + +## Summary + +## Property Editor + +### Add Variables button + +### Show/Hide Advanced Properties button + +### Help button + +## Execution Viewer + +### Variables Viewer + +#### Variable Details Viewer + +##### Load Value Button + +### Exceptions Viewer + +## Settings Editor + +### Inputs Property + +## Remarks + +### Known Limitations + +## See Also + +### Related Concepts diff --git a/content/en/docs/2024.11/Guides/cortex-studio/expression-editor.md b/content/en/docs/2024.11/Guides/cortex-studio/expression-editor.md new file mode 100644 index 000000000..c2016f173 --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-studio/expression-editor.md @@ -0,0 +1,34 @@ +--- +title: "CORTEX Studio - Expression Editor" +linkTitle: "CORTEX Studio - Expression Editor" +description: "A guide on how to use the Expression Editor" +weight: 0 +--- + +{{< workinprogress >}} + +## Summary + +TODO: What is used for, etc. + +## Snippets + +TODO: How to Access, Whats Available, etc + +## Tools + +TODO: Full Screen, Find and Replace, Command Menu, Replace All (Ctrl F2), etc + +## Example Expressions + +TODO: Variable, Object Construct (Complex/Collection), String Concatenation/Interpolation, Arithmetics, etc + +## Remarks + +### Known Limitations + +## See Also + +### Related Concepts + +TODO diff --git a/content/en/docs/2024.11/Guides/cortex-studio/literal-editor.md b/content/en/docs/2024.11/Guides/cortex-studio/literal-editor.md new file mode 100644 index 000000000..5b76f0261 --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-studio/literal-editor.md @@ -0,0 +1,26 @@ +--- +title: "CORTEX Studio - Literal Editor" +linkTitle: "CORTEX Studio - Literal Editor" +description: "A guide on how to use the Literal Editor" +weight: 0 +--- + +{{< workinprogress >}} + +## Summary + +TODO: What is used for, etc. + +## Selecting a Literal Type + +TODO: Searching/Filtering + +## Remarks + +### Known Limitations + +## See Also + +### Related Concepts + +TODO diff --git a/content/en/docs/2024.11/Guides/cortex-studio/main-display-area.md b/content/en/docs/2024.11/Guides/cortex-studio/main-display-area.md new file mode 100644 index 000000000..2547a75c9 --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-studio/main-display-area.md @@ -0,0 +1,72 @@ +--- +title: "CORTEX Studio - Main Display Area" +linkTitle: "CORTEX Studio - Main Display Area" +description: "The Main Display Area for developing and managing a flow" +weight: 1 +--- + +{{< workinprogress >}} + +## Summary + +## Main Toolbar + +### Undo + +TODO: + +- What happens when an undo action is taken +- What can be undone +- Keyboard Shortcuts? + +### Redo + +TODO: + +- What happens when an redo action is taken +- What can be redone +- Keyboard Shortcuts? + +### Start an execution + +TODO: + +- Should this be called 'starting an execution' or 'debugging an execution' +- Start execution via API or Studio + - describe the steps of starting from API (API call is made to Gateway, Authentication and Authorisation is performed, etc) + - describe the steps of starting from Studio (User clicks button, call is made to Gateway, Authentication and Authorisation is performed, etc) +- Image of button and token after button was pressed +- Executions are private and only displayed to the user that requested them (Check this is true, look at the APIs). +- link debugging in this page to glossary +- link 'what is an execution.md' debugging/production to glossary +- Providing input variables (API or Studio) + - literals and expression +- Retrieving Output variables (API or Studio) + +#### Break On Exception + +TODO + +### Edit and Continue an Execution + +## Workspaces + +### Blocks + +#### Breakpoints + +### Executions + +Executions are represented by tokens on a workspace. + +#### Set Next Block to Execute + +## Workspace Toolbar + +## Remarks + +### Known Limitations + +## See Also + +### Related Concepts diff --git a/content/en/docs/2024.11/Guides/cortex-studio/navigation.md b/content/en/docs/2024.11/Guides/cortex-studio/navigation.md new file mode 100644 index 000000000..25ffb0804 --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-studio/navigation.md @@ -0,0 +1,24 @@ +--- +title: "CORTEX Studio - Navigation" +linkTitle: "CORTEX Studio - Navigation" +description: "How to navigate between and in flows" +weight: 1 +--- + +{{< workinprogress >}} + +## Summary + +## Breadcrumb trail + +## Quick Navigation + +## Swimlane Management + +## Remarks + +### Known Limitations + +## See Also + +### Related Concepts diff --git a/content/en/docs/2024.11/Guides/cortex-studio/package-management.md b/content/en/docs/2024.11/Guides/cortex-studio/package-management.md new file mode 100644 index 000000000..31bea9f7b --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-studio/package-management.md @@ -0,0 +1,20 @@ +--- +title: "CORTEX Studio - Package Management (TBC)" +linkTitle: "CORTEX Studio - Package Management (TBC)" +description: "Package Management" +weight: 1 +--- + +{{< workinprogress >}} + +## Summary + +## Automatic Selection of Dependent Flows + +## Remarks + +### Known Limitations + +## See Also + +### Related Concepts diff --git a/content/en/docs/2024.11/Guides/cortex-studio/palettes.md b/content/en/docs/2024.11/Guides/cortex-studio/palettes.md new file mode 100644 index 000000000..38e9742f5 --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-studio/palettes.md @@ -0,0 +1,8 @@ +--- +title: "CORTEX Studio - Palettes" +linkTitle: "CORTEX Studio - Palettes" +description: "Block palette information" +weight: 1 +--- + +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Guides/cortex-studio/south-panel.md b/content/en/docs/2024.11/Guides/cortex-studio/south-panel.md new file mode 100644 index 000000000..0e8f75286 --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-studio/south-panel.md @@ -0,0 +1,68 @@ +--- +title: "CORTEX Studio - South Panel (TBC)" +linkTitle: "CORTEX Studio - South Panel (TBC)" +description: "Southern panel for Executions, Messages, and Variables" +weight: 1 +--- + +{{< workinprogress >}} + +## Summary + +## Executions Grid + +### Pausing an Execution + +### Stepping an Execution + +### Continuing an Execution + +### Stopping an Execution + +## Variables Grid + +TODO: Add Screenshot of Grid + +### Creating Variables + +TODO: Screenshots, How to create + +### Viewing Variables + +TODO: Screenshots, Searching/Filtering + +### Renaming Variables + +TODO: Screenshots, Searching/Filtering + +### Modifying Variables + +TODO: Screenshots, How to modify + +#### Changing a Variable's Scope + +TODO: Screenshots, how to modify scope + +1. Find the variable in the [Variable Grid][] +2. Double-click the **Scope** to load a dropdown menu +3. Select the desired workspace + +If the variable does not appear in the grid, the most likely reason is the variable is not in scope of the workspace currently in focus. To resolve this, either select the appropriate workspace, or change the **Scope** filter on the [Variable Grid][] to **All**. + +### Deleting Variables + +TODO: Screenshots, How to delete + +### Validating Variables + +TODO: Screenshots + +## Messages Grid + +## Remarks + +### Known Limitations + +## See Also + +### Related Concepts diff --git a/content/en/docs/2024.11/Guides/cortex-studio/variable-editor.md b/content/en/docs/2024.11/Guides/cortex-studio/variable-editor.md new file mode 100644 index 000000000..79b9d2faa --- /dev/null +++ b/content/en/docs/2024.11/Guides/cortex-studio/variable-editor.md @@ -0,0 +1,31 @@ +--- +title: "CORTEX Studio - Variable Editor" +linkTitle: "CORTEX Studio - Variable Editor" +description: "A guide on how to use the Variable Editor" +weight: 0 +--- + +{{< workinprogress >}} + +## Summary + +TODO: What is used for, etc. + +## Selecting Variables + +TODO: Searching/Filtering +TODO: Complex/Collection variable referencing + +## Creating Variables + +TODO: Create variable from property, create all undefined variables + +## Remarks + +### Known Limitations + +## See Also + +### Related Concepts + +TODO diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/_index.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/_index.md new file mode 100644 index 000000000..719b7315d --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/_index.md @@ -0,0 +1,6 @@ +--- +title: "2024.1 to 2024.3" +linkTitle: "2024.1 to 2024.3" +description: "Instructions to upgrade {{% ctx %}} 2024.1 to 2024.3" +weight: 1000 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/multiple-server-with-ha/_index.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/multiple-server-with-ha/_index.md new file mode 100644 index 000000000..10ed76d03 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/multiple-server-with-ha/_index.md @@ -0,0 +1,6 @@ +--- +title: "Multiple Server - With HA" +linkTitle: "Multiple Server - With HA" +description: "Upgrade instructions for multiple on-premise servers with high availability (HA)." +weight: 10 +--- diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/multiple-server-with-ha/try-it-out.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/multiple-server-with-ha/try-it-out.md new file mode 100644 index 000000000..5a8a0e4d3 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/multiple-server-with-ha/try-it-out.md @@ -0,0 +1,19 @@ +--- +title: "Try it out" +linkTitle: "Try it out" +description: "Information about trying out {{% ctx %}} after upgrade." +weight: 60 +--- + +# {{% param title %}} + +This guide describes how to try out an upgraded {{% ctx %}} to make sure it is working. Please ensure that both the [Application Servers and Load Balancer Upgrade][] and [Web Application Server Upgrade][] has been completed before taking these steps. + +{{< section "/upgrade/2024.3/upgrade-web-application-server/test-upgrade.md" >}} + +## Test Executing Production Flows + +{{< section "/upgrade/try-it-out/multi-server/test-executing-production-flows.md" >}} + +[Application Servers and Load Balancer Upgrade]: {{< url path="Cortex.Guides.UpgradeCortex.2024.1to2024.3.MultipleServerWithHA.UpgradeApplicationAndLoadBalancerServers" >}} +[Web Application Server Upgrade]: {{< url path="Cortex.Guides.UpgradeCortex.2024.1to2024.3.MultipleServerWithHA.UpgradeWebApplicationServer" >}} diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/multiple-server-with-ha/upgrade-application-and-loadbalancer-servers.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/multiple-server-with-ha/upgrade-application-and-loadbalancer-servers.md new file mode 100644 index 000000000..7aa892b26 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/multiple-server-with-ha/upgrade-application-and-loadbalancer-servers.md @@ -0,0 +1,65 @@ +--- +title: "Upgrade Application Servers and Load Balancer" +linkTitle: "Upgrade Application Servers and Load Balancer" +description: "Information about upgrading the Application Servers and Load Balancer Server." +weight: 30 +--- + +# {{< param title >}} + +This guide describes how to upgrade the Application Servers and Load Balancer Server from 2024.1 to 2024.3. + +## Make Installation Artefacts Available + +1. Choose one of the Application Servers to be used to perform the upgrade from, and copy the following artefacts to a folder on it: + * Cortex Innovation 2024.3 - App Server Install Scripts.zip + * Cortex Innovation 2024.3 - App Services.zip + * Cortex Innovation 2024.3 - Block Packages.zip + +1. Extract the `Cortex Innovation 2024.3 - App Server Install Scripts.zip` file to a folder with the same name. + +## Configure Upgrade Script + +1. In the `Cortex Innovation 2024.3 - App Server Install Scripts\Upgrade Application Server` folder, locate the `Cortex.Innovation.Upgrade.ps1` script and open it with a text editor. +1. Configure the script, changing the parameters according to the details given below: + + ```powershell + .\Cortex.Upgrade.ps1 ` + -AppServicesPath "C:\Install\Cortex Innovation 2024.3 - App Services.zip" ` + -BlockPackagesPath "C:\Install\Cortex Innovation 2024.3 - Block Packages.zip" ` + -ApplicationServerIPv4Addresses @("192.168.1.1, 192.168.1.2, 192.168.1.3") ` + -LoadBalancerServerIPv4Address "192.168.1.4" ` + -Credential $Credential ` + -AcceptEULA:$AcceptEULA ` + *>&1 | Tee-Object -FilePath "cortex-ha-upgrade-log.txt" + ``` + + | Name | Description | + |----------------------------------------------|-------------| + |`AppServicesPath` | Configure this value with the location of the Application Services zip file on the Application Server being used for the upgrade. | + |`BlockPackagesPath` | Configure this value with the location of the Block Packages zip file on the Application Server being used for the upgrade. | + |`ApplicationServerIPv4Addresses` | The IPv4 addresses of the Application Servers. The first of these must be the Application Server being used for the upgrade.| + |`LoadBalancerServerIPv4Address` | The IPv4 address of the Load Balancer Server. If the built-in load balancer is not being used, this should be removed.| + |`Credential` | The credentials of the user which will be used to perform remote operations on the Application Servers. It must be a domain user that is a member of the local Administrators group on all servers.

This does not need to be changed, a prompt will appear to enter this information when the script is run. | + |`AcceptEULA` | This does not need to be changed, the EULA will be accepted at a later stage. | + |`FilePath` | The filename that upgrade logs are written to. If this should be written to a different location than where the installation files are then a full path should be specified. | + +1. Save and close `Cortex.Innovation.Upgrade.ps1`. + +## Run Upgrade Script + +{{< section "/upgrade/2024.3/upgrade-application-server/multi-server/run-upgrade-script.md" >}} + +## Check Application Services + +{{< section "/upgrade/upgrade-application-server/multi-server/check-application-services.md" >}} + +## Preserve installation files + +{{< section "/preserve-installation-files.md" >}} + +## Next Steps? + +1. [Upgrade Web Application Server][] + +[Upgrade Web Application Server]: {{< url path="Cortex.Guides.UpgradeCortex.2024.1to2024.3.MultipleServerWithHA.UpgradeWebApplicationServer" >}} diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/multiple-server-with-ha/upgrade-web-application-server/_index.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/multiple-server-with-ha/upgrade-web-application-server/_index.md new file mode 100644 index 000000000..956ddc1d6 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/multiple-server-with-ha/upgrade-web-application-server/_index.md @@ -0,0 +1,10 @@ +--- +title: "Upgrade the Web Application Server" +linkTitle: "Upgrade Web Application Server" +description: "Information about upgrading the Web Application Server." +weight: 40 +--- + +This guide describes how to upgrade the Web Application Server. Please ensure that [Upgrade Application Servers and Load Balancer][] has been completed before starting this installation. These steps assume that the v2024.1 version of Gateway and its prerequisites have already been installed. + +[Upgrade Application Servers and Load Balancer]: {{< url path="Cortex.Guides.UpgradeCortex.2024.1to2024.3.MultipleServerWithHA.UpgradeApplicationAndLoadBalancerServers" >}} diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/multiple-server-with-ha/upgrade-web-application-server/prerequisites.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/multiple-server-with-ha/upgrade-web-application-server/prerequisites.md new file mode 100644 index 000000000..97990aab4 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/multiple-server-with-ha/upgrade-web-application-server/prerequisites.md @@ -0,0 +1,30 @@ +--- +title: "Prerequisites" +linkTitle: "Prerequisites" +description: "Information about performing the prerequisities for the Upgrade of the Web Application Server." +weight: 10 +--- + +# {{% param title %}} + +Please ensure that [Upgrade Application Servers and Load Balancer][] has been completed before starting this installation. These steps assume that the v2024.1 version of Gateway and its prerequisites have already been installed. + +## Make Installation Artefacts Available + +1. Copy the following artefacts to a folder on the machine: + + * Cortex Innovation 2024.3 - App Services.zip + * Cortex Innovation 2024.3 - App Server Install Scripts.zip + * Cortex Innovation 2024.3 - Block Packages.zip + * Cortex Innovation 2024.3 - Gateway.zip + * Cortex Innovation 2024.3 - Web App Server Install Scripts.zip + +1. Extract the `Cortex Innovation 2024.3 - App Server Install Scripts.zip` file to a folder with the same name. +1. Extract the `Cortex Innovation 2024.3 - Web App Server Install Scripts.zip` zip file to a folder with the same name. + +## Next Steps? + +1. [Upgrade Flow Debugger][] + +[Upgrade Application Servers and Load Balancer]: {{< url path="Cortex.Guides.UpgradeCortex.2024.1to2024.3.MultipleServerWithHA.UpgradeApplicationAndLoadBalancerServers" >}} +[Upgrade Flow Debugger]: {{< url path="Cortex.Guides.UpgradeCortex.2024.1to2024.3.MultipleServerWithHA.UpgradeDebugger" >}} diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/multiple-server-with-ha/upgrade-web-application-server/upgrade-debugger.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/multiple-server-with-ha/upgrade-web-application-server/upgrade-debugger.md new file mode 100644 index 000000000..e896f3e3a --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/multiple-server-with-ha/upgrade-web-application-server/upgrade-debugger.md @@ -0,0 +1,32 @@ +--- +title: "Upgrade Flow Debugger" +linkTitle: "Upgrade Flow Debugger" +description: "Information about upgrading the Flow Debugger." +weight: 30 +--- + +# {{< param title >}} + +This guide describes how to upgrade the Flow Debugger on the Web Application Server from 2024.1 to 2024.3. + +## Configure Upgrade Script + +{{< section "/upgrade/2024.3/upgrade-application-server/single-server/configure-upgrade-script.md" >}} + +## Run Upgrade Script + +{{< section "/upgrade/2024.3/upgrade-application-server/single-server/run-upgrade-script.md">}} + +## Check Application Services + +{{< section "/upgrade/upgrade-application-server/single-server/check-application-services.md">}} + +## Preserve installation files + +{{< section "/preserve-installation-files.md">}} + +## Next Steps? + +1. [Upgrade Gateway][] + +[Upgrade Gateway]: {{< url path="Cortex.Guides.UpgradeCortex.2024.1to2024.3.MultipleServerWithHA.UpgradeGateway" >}} diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/multiple-server-with-ha/upgrade-web-application-server/upgrade-gateway.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/multiple-server-with-ha/upgrade-web-application-server/upgrade-gateway.md new file mode 100644 index 000000000..e13598a03 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/multiple-server-with-ha/upgrade-web-application-server/upgrade-gateway.md @@ -0,0 +1,29 @@ +--- +title: "Upgrade Gateway" +linkTitle: "Upgrade Gateway" +description: "Information about upgrading {{% ctx %}} Gateway from 2024.1 to 2024.3." +weight: 30 +--- + +# {{% param title %}} + +This guide describes how to upgrade {{% ctx %}} Gateway from 2024.1 to 2024.3. Please ensure that the [Flow Debugger upgrade][] has been completed before starting this upgrade. + +## Configure Upgrade Script + +{{< section "/upgrade/2024.3/upgrade-web-application-server/configure-gateway-script.md" >}} + +## Run Upgrade Script + +{{< section "/upgrade/2024.3/upgrade-web-application-server/run-gateway-script.md" >}} + +## Preserve installation files + +{{< section "/preserve-installation-files.md" >}} + +## Next Steps? + +1. [Try It Out][] + +[Flow Debugger upgrade]: {{< url path="Cortex.Guides.UpgradeCortex.2024.1to2024.3.MultipleServerWithHA.UpgradeDebugger" >}} +[Try It Out]: {{< url path="Cortex.Guides.UpgradeCortex.2024.1to2024.3.MultipleServerWithHA.TryItOut" >}} diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/single-server-without-ha/_index.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/single-server-without-ha/_index.md new file mode 100644 index 000000000..a43e88369 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/single-server-without-ha/_index.md @@ -0,0 +1,6 @@ +--- +title: "Single Server - Without HA" +linkTitle: "Single Server - Without HA" +description: "Upgrade instructions for a single on-premise server without high availability (HA)." +weight: 500 +--- diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/single-server-without-ha/try-it-out.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/single-server-without-ha/try-it-out.md new file mode 100644 index 000000000..05aa5aa36 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/single-server-without-ha/try-it-out.md @@ -0,0 +1,19 @@ +--- +title: "Try it out" +linkTitle: "Try it out" +description: "Information about trying out {{% ctx %}} after upgrade." +weight: 60 +--- + +# {{% param title %}} + +This guide describes how to try out an upgraded {{% ctx %}} to make sure it is working. Please ensure that both the [Application Server Upgrade][] and [Web Application Server Upgrade][] has been completed before taking these steps. + +{{< section "/upgrade/2024.3/upgrade-web-application-server/test-upgrade.md" >}} + +## Test Executing Production Flows + +{{< section "/upgrade/try-it-out/single-server/test-executing-production-flows.md" >}} + +[Application Server Upgrade]: {{< url path="Cortex.Guides.UpgradeCortex.2024.1to2024.3.SingleServerWithoutHA.UpgradeApplicationServer" >}} +[Web Application Server Upgrade]: {{< url path="Cortex.Guides.UpgradeCortex.2024.1to2024.3.SingleServerWithoutHA.UpgradeWebApplicationServer" >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/single-server-without-ha/upgrade-application-server.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/single-server-without-ha/upgrade-application-server.md new file mode 100644 index 000000000..4f698ff4c --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/single-server-without-ha/upgrade-application-server.md @@ -0,0 +1,37 @@ +--- +title: "Upgrade Application Server" +linkTitle: "Upgrade Application Server" +description: "Information about upgrading the Application Server." +weight: 30 +--- + +# {{< param title >}} + +This guide describes how to upgrade the Application Server components on the server from 2024.1 to 2024.3. + +## Make Installation Artefacts Available + +{{< section "/upgrade/2024.3/upgrade-application-server/single-server/make-installation-artefacts-available.md" >}} + +## Configure Upgrade Script + +{{< section "/upgrade/2024.3/upgrade-application-server/single-server/configure-upgrade-script.md" >}} + +## Run Upgrade Script + +{{< section "/upgrade/2024.3/upgrade-application-server/single-server/run-upgrade-script.md" >}} + +## Check Application Services + +{{< section "/upgrade/upgrade-application-server/single-server/check-application-services.md" >}} + +## Preserve installation files + +{{< section "/preserve-installation-files.md" >}} + +## Next Steps? + +1. [Upgrade Web Application Server][] + +[Upgrade Web Application Server]: {{< url path="Cortex.Guides.UpgradeCortex.2024.1to2024.3.SingleServerWithoutHA.UpgradeWebApplicationServer" >}} + diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/single-server-without-ha/upgrade-web-application-server.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/single-server-without-ha/upgrade-web-application-server.md new file mode 100644 index 000000000..7757a353f --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.1-to-2024.3/single-server-without-ha/upgrade-web-application-server.md @@ -0,0 +1,38 @@ +--- +title: "Upgrade Web Application Server" +linkTitle: "Upgrade Web Application Server" +description: "Information about upgrading the Web Application Server from 2024.1 to 2024.3." +weight: 30 +--- + +# {{% param title %}} + +This guide describes how to upgrade {{% ctx %}} Gateway from 2024.1 to 2024.3. Please ensure that the [Upgrade Application Server][] has been completed before starting this upgrade. + +## Make Installation Artefacts Available + +1. Copy the following artefacts to a folder on the server: + + * Cortex Innovation 2024.5 - Gateway.zip + * Cortex Innovation 2024.5 - Web App Server Install Scripts.zip + +1. Extract the `Cortex Innovation 2024.5 - Web App Server Install Scripts.zip` zip file to a folder with the same name. + +## Configure Upgrade Script + +{{< section "/upgrade/2024.3/upgrade-web-application-server/configure-gateway-script.md" >}} + +## Run Upgrade Script + +{{< section "/upgrade/2024.3/upgrade-web-application-server/run-gateway-script.md" >}} + +## Preserve installation files + +{{< section "/preserve-installation-files.md" >}} + +## Next Steps? + +1. [Try It Out][] + +[Try It Out]: {{< url path="Cortex.Guides.UpgradeCortex.2024.1to2024.3.SingleServerWithoutHA.TryItOut" >}} +[Upgrade Application Server]: {{< url path="Cortex.Guides.UpgradeCortex.2024.1to2024.3.SingleServerWithoutHA.UpgradeApplicationServer" >}} diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/_index.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/_index.md new file mode 100644 index 000000000..d180e4d11 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/_index.md @@ -0,0 +1,6 @@ +--- +title: "2024.3 to 2024.5" +linkTitle: "2024.3 to 2024.5" +description: "Instructions to upgrade {{% ctx %}} 2024.3 to 2024.5" +weight: 999 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/multiple-server-with-ha/_index.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/multiple-server-with-ha/_index.md new file mode 100644 index 000000000..10ed76d03 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/multiple-server-with-ha/_index.md @@ -0,0 +1,6 @@ +--- +title: "Multiple Server - With HA" +linkTitle: "Multiple Server - With HA" +description: "Upgrade instructions for multiple on-premise servers with high availability (HA)." +weight: 10 +--- diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/multiple-server-with-ha/try-it-out.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/multiple-server-with-ha/try-it-out.md new file mode 100644 index 000000000..df5e453b7 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/multiple-server-with-ha/try-it-out.md @@ -0,0 +1,19 @@ +--- +title: "Try it out" +linkTitle: "Try it out" +description: "Information about trying out {{% ctx %}} after upgrade." +weight: 60 +--- + +# {{% param title %}} + +This guide describes how to try out an upgraded {{% ctx %}} to make sure it is working. Please ensure that both the [Application Servers and Load Balancer Upgrade][] and [Web Application Server Upgrade][] has been completed before taking these steps. + +{{< section "/upgrade/2024.5/upgrade-web-application-server/test-upgrade.md" >}} + +## Test Executing Production Flows + +{{< section "/upgrade/try-it-out/multi-server/test-executing-production-flows.md" >}} + +[Application Servers and Load Balancer Upgrade]: {{< url path="Cortex.Guides.UpgradeCortex.2024.3to2024.5.MultipleServerWithHA.UpgradeApplicationAndLoadBalancerServers" >}} +[Web Application Server Upgrade]: {{< url path="Cortex.Guides.UpgradeCortex.2024.3to2024.5.MultipleServerWithHA.UpgradeWebApplicationServer" >}} diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/multiple-server-with-ha/upgrade-application-and-loadbalancer-servers.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/multiple-server-with-ha/upgrade-application-and-loadbalancer-servers.md new file mode 100644 index 000000000..2b7972aa8 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/multiple-server-with-ha/upgrade-application-and-loadbalancer-servers.md @@ -0,0 +1,65 @@ +--- +title: "Upgrade Application Servers and Load Balancer" +linkTitle: "Upgrade Application Servers and Load Balancer" +description: "Information about upgrading the Application Servers and Load Balancer Server." +weight: 30 +--- + +# {{< param title >}} + +This guide describes how to upgrade the Application Servers and Load Balancer Server from 2024.3 to 2024.5. + +## Make Installation Artefacts Available + +1. Choose one of the Application Servers to be used to perform the upgrade from, and copy the following artefacts to a folder on it: + * Cortex Innovation 2024.5 - App Server Install Scripts.zip + * Cortex Innovation 2024.5 - App Services.zip + * Cortex Innovation 2024.5 - Block Packages.zip + +1. Extract the `Cortex Innovation 2024.5 - App Server Install Scripts.zip` file to a folder with the same name. + +## Configure Upgrade Script + +1. In the `Cortex Innovation 2024.5 - App Server Install Scripts\Upgrade Application Server` folder, locate the `Cortex.Innovation.Upgrade.ps1` script and open it with a text editor. +1. Configure the script, changing the parameters according to the details given below: + + ```powershell + .\Cortex.Upgrade.ps1 ` + -AppServicesPath "C:\Install\Cortex Innovation 2024.5 - App Services.zip" ` + -BlockPackagesPath "C:\Install\Cortex Innovation 2024.5 - Block Packages.zip" ` + -ApplicationServerIPv4Addresses @("192.168.1.1, 192.168.1.2, 192.168.1.3") ` + -LoadBalancerServerIPv4Address "192.168.1.4" ` + -Credential $Credential ` + -AcceptEULA:$AcceptEULA ` + *>&1 | Tee-Object -FilePath "cortex-ha-upgrade-log.txt" + ``` + + | Name | Description | + |----------------------------------------------|-------------| + |`AppServicesPath` | Configure this value with the location of the Application Services zip file on the Application Server being used for the upgrade. | + |`BlockPackagesPath` | Configure this value with the location of the Block Packages zip file on the Application Server being used for the upgrade. | + |`ApplicationServerIPv4Addresses` | The IPv4 addresses of the Application Servers. The first of these must be the Application Server being used for the upgrade.| + |`LoadBalancerServerIPv4Address` | The IPv4 address of the Load Balancer Server. If the built-in load balancer is not being used, this should be removed.| + |`Credential` | The credentials of the user which will be used to perform remote operations on the Application Servers. It must be a domain user that is a member of the local Administrators group on all servers.

This does not need to be changed, a prompt will appear to enter this information when the script is run. | + |`AcceptEULA` | This does not need to be changed, the EULA will be accepted at a later stage. | + |`FilePath` | The filename that upgrade logs are written to. If this should be written to a different location than where the installation files are then a full path should be specified. | + +1. Save and close `Cortex.Innovation.Upgrade.ps1`. + +## Run Upgrade Script + +{{< section "/upgrade/2024.5/upgrade-application-server/multi-server/run-upgrade-script.md" >}} + +## Check Application Services + +{{< section "/upgrade/upgrade-application-server/multi-server/check-application-services.md" >}} + +## Preserve installation files + +{{< section "/preserve-installation-files.md" >}} + +## Next Steps? + +1. [Upgrade Web Application Server][] + +[Upgrade Web Application Server]: {{< url path="Cortex.Guides.UpgradeCortex.2024.3to2024.5.MultipleServerWithHA.UpgradeWebApplicationServer" >}} diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/multiple-server-with-ha/upgrade-web-application-server/_index.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/multiple-server-with-ha/upgrade-web-application-server/_index.md new file mode 100644 index 000000000..d935713ea --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/multiple-server-with-ha/upgrade-web-application-server/_index.md @@ -0,0 +1,10 @@ +--- +title: "Upgrade the Web Application Server" +linkTitle: "Upgrade Web Application Server" +description: "Information about upgrading the Web Application Server." +weight: 40 +--- + +This guide describes how to upgrade the Web Application Server. Please ensure that [Upgrade Application Servers and Load Balancer][] has been completed before starting this installation. These steps assume that the v2024.3 version of Gateway and its prerequisites have already been installed. + +[Upgrade Application Servers and Load Balancer]: {{< url path="Cortex.Guides.UpgradeCortex.2024.3to2024.5.MultipleServerWithHA.UpgradeApplicationAndLoadBalancerServers" >}} diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/multiple-server-with-ha/upgrade-web-application-server/prerequisites.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/multiple-server-with-ha/upgrade-web-application-server/prerequisites.md new file mode 100644 index 000000000..d749f6f71 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/multiple-server-with-ha/upgrade-web-application-server/prerequisites.md @@ -0,0 +1,30 @@ +--- +title: "Prerequisites" +linkTitle: "Prerequisites" +description: "Information about performing the prerequisities for the Upgrade of the Web Application Server." +weight: 10 +--- + +# {{% param title %}} + +Please ensure that [Upgrade Application Servers and Load Balancer][] has been completed before starting this installation. These steps assume that the v2024.3 version of Gateway and its prerequisites have already been installed. + +## Make Installation Artefacts Available + +1. Copy the following artefacts to a folder on the machine: + + * Cortex Innovation 2024.5 - App Services.zip + * Cortex Innovation 2024.5 - App Server Install Scripts.zip + * Cortex Innovation 2024.5 - Block Packages.zip + * Cortex Innovation 2024.5 - Gateway.zip + * Cortex Innovation 2024.5 - Web App Server Install Scripts.zip + +1. Extract the `Cortex Innovation 2024.5 - App Server Install Scripts.zip` file to a folder with the same name. +1. Extract the `Cortex Innovation 2024.5 - Web App Server Install Scripts.zip` zip file to a folder with the same name. + +## Next Steps? + +1. [Upgrade Flow Debugger][] + +[Upgrade Application Servers and Load Balancer]: {{< url path="Cortex.Guides.UpgradeCortex.2024.3to2024.5.MultipleServerWithHA.UpgradeApplicationAndLoadBalancerServers" >}} +[Upgrade Flow Debugger]: {{< url path="Cortex.Guides.UpgradeCortex.2024.3to2024.5.MultipleServerWithHA.UpgradeDebugger" >}} diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/multiple-server-with-ha/upgrade-web-application-server/upgrade-debugger.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/multiple-server-with-ha/upgrade-web-application-server/upgrade-debugger.md new file mode 100644 index 000000000..cdf7307cc --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/multiple-server-with-ha/upgrade-web-application-server/upgrade-debugger.md @@ -0,0 +1,32 @@ +--- +title: "Upgrade Flow Debugger" +linkTitle: "Upgrade Flow Debugger" +description: "Information about upgrading the Flow Debugger." +weight: 30 +--- + +# {{< param title >}} + +This guide describes how to upgrade the Flow Debugger on the Web Application Server from 2024.3 to 2024.5. + +## Configure Upgrade Script + +{{< section "/upgrade/2024.5/upgrade-application-server/single-server/configure-upgrade-script.md" >}} + +## Run Upgrade Script + +{{< section "/upgrade/2024.5/upgrade-application-server/single-server/run-upgrade-script.md">}} + +## Check Application Services + +{{< section "/upgrade/upgrade-application-server/single-server/check-application-services.md">}} + +## Preserve installation files + +{{< section "/preserve-installation-files.md">}} + +## Next Steps? + +1. [Upgrade Gateway][] + +[Upgrade Gateway]: {{< url path="Cortex.Guides.UpgradeCortex.2024.3to2024.5.MultipleServerWithHA.UpgradeGateway" >}} diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/multiple-server-with-ha/upgrade-web-application-server/upgrade-gateway.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/multiple-server-with-ha/upgrade-web-application-server/upgrade-gateway.md new file mode 100644 index 000000000..92748ba31 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/multiple-server-with-ha/upgrade-web-application-server/upgrade-gateway.md @@ -0,0 +1,29 @@ +--- +title: "Upgrade Gateway" +linkTitle: "Upgrade Gateway" +description: "Information about upgrading {{% ctx %}} Gateway from 2024.3 to 2024.5." +weight: 30 +--- + +# {{% param title %}} + +This guide describes how to upgrade {{% ctx %}} Gateway from 2024.3 to 2024.5. Please ensure that the [Flow Debugger upgrade][] has been completed before starting this upgrade. + +## Configure Upgrade Script + +{{< section "/upgrade/2024.5/upgrade-web-application-server/configure-gateway-script.md" >}} + +## Run Upgrade Script + +{{< section "/upgrade/2024.5/upgrade-web-application-server/run-gateway-script.md" >}} + +## Preserve installation files + +{{< section "/preserve-installation-files.md" >}} + +## Next Steps? + +1. [Try It Out][] + +[Flow Debugger upgrade]: {{< url path="Cortex.Guides.UpgradeCortex.2024.3to2024.5.MultipleServerWithHA.UpgradeDebugger" >}} +[Try It Out]: {{< url path="Cortex.Guides.UpgradeCortex.2024.3to2024.5.MultipleServerWithHA.TryItOut" >}} diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/single-server-without-ha/_index.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/single-server-without-ha/_index.md new file mode 100644 index 000000000..a43e88369 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/single-server-without-ha/_index.md @@ -0,0 +1,6 @@ +--- +title: "Single Server - Without HA" +linkTitle: "Single Server - Without HA" +description: "Upgrade instructions for a single on-premise server without high availability (HA)." +weight: 500 +--- diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/single-server-without-ha/try-it-out.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/single-server-without-ha/try-it-out.md new file mode 100644 index 000000000..e6deaefdb --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/single-server-without-ha/try-it-out.md @@ -0,0 +1,19 @@ +--- +title: "Try it out" +linkTitle: "Try it out" +description: "Information about trying out {{% ctx %}} after upgrade." +weight: 60 +--- + +# {{% param title %}} + +This guide describes how to try out an upgraded {{% ctx %}} to make sure it is working. Please ensure that both the [Application Server Upgrade][] and [Web Application Server Upgrade][] has been completed before taking these steps. + +{{< section "/upgrade/2024.5/upgrade-web-application-server/test-upgrade.md" >}} + +## Test Executing Production Flows + +{{< section "/upgrade/try-it-out/single-server/test-executing-production-flows.md" >}} + +[Application Server Upgrade]: {{< url path="Cortex.Guides.UpgradeCortex.2024.3to2024.5.SingleServerWithoutHA.UpgradeApplicationServer" >}} +[Web Application Server Upgrade]: {{< url path="Cortex.Guides.UpgradeCortex.2024.3to2024.5.SingleServerWithoutHA.UpgradeWebApplicationServer" >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/single-server-without-ha/upgrade-application-server.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/single-server-without-ha/upgrade-application-server.md new file mode 100644 index 000000000..a378b3b86 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/single-server-without-ha/upgrade-application-server.md @@ -0,0 +1,37 @@ +--- +title: "Upgrade Application Server" +linkTitle: "Upgrade Application Server" +description: "Information about upgrading the Application Server." +weight: 30 +--- + +# {{< param title >}} + +This guide describes how to upgrade the Application Server components on the server from 2024.3 to 2024.5. + +## Make Installation Artefacts Available + +{{< section "/upgrade/2024.5/upgrade-application-server/single-server/make-installation-artefacts-available.md" >}} + +## Configure Upgrade Script + +{{< section "/upgrade/2024.5/upgrade-application-server/single-server/configure-upgrade-script.md" >}} + +## Run Upgrade Script + +{{< section "/upgrade/2024.5/upgrade-application-server/single-server/run-upgrade-script.md" >}} + +## Check Application Services + +{{< section "/upgrade/upgrade-application-server/single-server/check-application-services.md" >}} + +## Preserve installation files + +{{< section "/preserve-installation-files.md" >}} + +## Next Steps? + +1. [Upgrade Web Application Server][] + +[Upgrade Web Application Server]: {{< url path="Cortex.Guides.UpgradeCortex.2024.3to2024.5.SingleServerWithoutHA.UpgradeWebApplicationServer" >}} + diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/single-server-without-ha/upgrade-web-application-server.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/single-server-without-ha/upgrade-web-application-server.md new file mode 100644 index 000000000..2011d979e --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.3-to-2024.5/single-server-without-ha/upgrade-web-application-server.md @@ -0,0 +1,38 @@ +--- +title: "Upgrade Web Application Server" +linkTitle: "Upgrade Web Application Server" +description: "Information about upgrading the Web Application Server from 2024.3 to 2024.5." +weight: 30 +--- + +# {{% param title %}} + +This guide describes how to upgrade {{% ctx %}} Gateway from 2024.3 to 2024.5. Please ensure that the [Upgrade Application Server][] has been completed before starting this upgrade. + +## Make Installation Artefacts Available + +1. Copy the following artefacts to a folder on the server: + + * Cortex Innovation 2024.5 - Gateway.zip + * Cortex Innovation 2024.5 - Web App Server Install Scripts.zip + +1. Extract the `Cortex Innovation 2024.5 - Web App Server Install Scripts.zip` zip file to a folder with the same name. + +## Configure Upgrade Script + +{{< section "/upgrade/2024.5/upgrade-web-application-server/configure-gateway-script.md" >}} + +## Run Upgrade Script + +{{< section "/upgrade/2024.5/upgrade-web-application-server/run-gateway-script.md" >}} + +## Preserve installation files + +{{< section "/preserve-installation-files.md" >}} + +## Next Steps? + +1. [Try It Out][] + +[Try It Out]: {{< url path="Cortex.Guides.UpgradeCortex.2024.3to2024.5.SingleServerWithoutHA.TryItOut" >}} +[Upgrade Application Server]: {{< url path="Cortex.Guides.UpgradeCortex.2024.3to2024.5.SingleServerWithoutHA.UpgradeApplicationServer" >}} diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/_index.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/_index.md new file mode 100644 index 000000000..b8251f69d --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/_index.md @@ -0,0 +1,6 @@ +--- +title: "2024.5 to 2024.7" +linkTitle: "2024.5 to 2024.7" +description: "Instructions to upgrade {{% ctx %}} 2024.5 to 2024.7" +weight: 998 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/multiple-server-with-ha/_index.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/multiple-server-with-ha/_index.md new file mode 100644 index 000000000..10ed76d03 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/multiple-server-with-ha/_index.md @@ -0,0 +1,6 @@ +--- +title: "Multiple Server - With HA" +linkTitle: "Multiple Server - With HA" +description: "Upgrade instructions for multiple on-premise servers with high availability (HA)." +weight: 10 +--- diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/multiple-server-with-ha/try-it-out.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/multiple-server-with-ha/try-it-out.md new file mode 100644 index 000000000..f2dd5df57 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/multiple-server-with-ha/try-it-out.md @@ -0,0 +1,19 @@ +--- +title: "Try it out" +linkTitle: "Try it out" +description: "Information about trying out {{% ctx %}} after upgrade." +weight: 60 +--- + +# {{% param title %}} + +This guide describes how to try out an upgraded {{% ctx %}} to make sure it is working. Please ensure that both the [Application Servers and Load Balancer Upgrade][] and [Web Application Server Upgrade][] has been completed before taking these steps. + +{{< section "/upgrade/2024.7/upgrade-web-application-server/test-upgrade.md" >}} + +## Test Executing Production Flows + +{{< section "/upgrade/try-it-out/multi-server/test-executing-production-flows.md" >}} + +[Application Servers and Load Balancer Upgrade]: {{< url path="Cortex.Guides.UpgradeCortex.2024.5to2024.7.MultipleServerWithHA.UpgradeApplicationAndLoadBalancerServers" >}} +[Web Application Server Upgrade]: {{< url path="Cortex.Guides.UpgradeCortex.2024.5to2024.7.MultipleServerWithHA.UpgradeWebApplicationServer" >}} diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/multiple-server-with-ha/upgrade-application-and-loadbalancer-servers.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/multiple-server-with-ha/upgrade-application-and-loadbalancer-servers.md new file mode 100644 index 000000000..61d52ecd6 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/multiple-server-with-ha/upgrade-application-and-loadbalancer-servers.md @@ -0,0 +1,79 @@ +--- +title: "Upgrade Application Servers and Load Balancer" +linkTitle: "Upgrade Application Servers and Load Balancer" +description: "Information about upgrading the Application Servers and Load Balancer Server." +weight: 30 +--- + +# {{< param title >}} + +This guide describes how to upgrade the Application Servers and Load Balancer Server from 2024.5 to 2024.7. + +## Make Installation Artefacts Available + +1. Choose one of the Application Servers to be used to perform the upgrade from, and copy the following artefacts to a folder on it: + * Cortex Innovation 2024.7 - App Server Install Scripts.zip + * Cortex Innovation 2024.7 - App Services.zip + * Cortex Innovation 2024.7 - Block Packages.zip + +1. Extract the `Cortex Innovation 2024.7 - App Server Install Scripts.zip` file to a folder with the same name. + +## Configure Upgrade Script + +1. In the `Cortex Innovation 2024.7 - App Server Install Scripts\Upgrade Application Server` folder, locate the `Cortex.Innovation.Upgrade.ps1` script and open it with a text editor. +1. Choose the tab below that matches the configuration for this upgrade, then update the script to match, changing the parameters according to the details given below: + + {{% alert title="Note" %}} +To check the previous configuration values open the `Cortex.Upgrade.ApplicationConfig.json` file located in `%ProgramData%\Cortex\Upgrade`. If the file does not exist or the values should be changed then use the `Use New Configuration Values` tab. + {{% /alert %}} + + {{< tabpane lang="powershell" >}} + {{< tab header="Use Previous Configuration Values" >}} +.\Cortex.Upgrade.ps1 ` + -AppServicesPath "C:\Install\Cortex Innovation 2024.7 - App Services.zip" ` + -BlockPackagesPath "C:\Install\Cortex Innovation 2024.7 - Block Packages.zip" ` + -Credential $Credential ` + -AcceptEULA:$AcceptEULA ` + *>&1 | Tee-Object -FilePath "cortex-ha-upgrade-log.txt" + {{< /tab >}} + {{< tab header="Use New Configuration Values">}} +.\Cortex.Upgrade.ps1 ` + -AppServicesPath "C:\Install\Cortex Innovation 2024.7 - App Services.zip" ` + -BlockPackagesPath "C:\Install\Cortex Innovation 2024.7 - Block Packages.zip" ` + -ApplicationServerIPv4Addresses @("192.168.1.1, 192.168.1.2, 192.168.1.3") ` + -LoadBalancerServerIPv4Address "192.168.1.4" ` + -Credential $Credential ` + -AcceptEULA:$AcceptEULA ` + *>&1 | Tee-Object -FilePath "cortex-ha-upgrade-log.txt" + {{< /tab >}} + {{< /tabpane >}} + + | Name | Description | + |----------------------------------------------|-------------| + |`AppServicesPath` | Configure this value with the location of the Application Services zip file on the Application Server being used for the upgrade. | + |`BlockPackagesPath` | Configure this value with the location of the Block Packages zip file on the Application Server being used for the upgrade. | + |`ApplicationServerIPv4Addresses` | The IPv4 addresses of the Application Servers. The first of these must be the Application Server being used for the upgrade.| + |`LoadBalancerServerIPv4Address` | The IPv4 address of the Load Balancer Server. If the built-in load balancer is not being used, this should be removed.| + |`Credential` | The credentials of the user which will be used to perform remote operations on the Application Servers. It must be a domain user that is a member of the local Administrators group on all servers.

This does not need to be changed, a prompt will appear to enter this information when the script is run. | + |`AcceptEULA` | This does not need to be changed, the EULA will be accepted at a later stage. | + |`FilePath` | The filename that upgrade logs are written to. If this should be written to a different location than where the installation files are then a full path should be specified. | + +1. Save and close `Cortex.Innovation.Upgrade.ps1`. + +## Run Upgrade Script + +{{< section "/upgrade/2024.7/upgrade-application-server/multi-server/run-upgrade-script.md" >}} + +## Check Application Services + +{{< section "/upgrade/upgrade-application-server/multi-server/check-application-services.md" >}} + +## Preserve installation files + +{{< section "/preserve-installation-files.md" >}} + +## Next Steps? + +1. [Upgrade Web Application Server][] + +[Upgrade Web Application Server]: {{< url path="Cortex.Guides.UpgradeCortex.2024.5to2024.7.MultipleServerWithHA.UpgradeWebApplicationServer" >}} diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/multiple-server-with-ha/upgrade-web-application-server/_index.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/multiple-server-with-ha/upgrade-web-application-server/_index.md new file mode 100644 index 000000000..82bc958cb --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/multiple-server-with-ha/upgrade-web-application-server/_index.md @@ -0,0 +1,10 @@ +--- +title: "Upgrade the Web Application Server" +linkTitle: "Upgrade Web Application Server" +description: "Information about upgrading the Web Application Server." +weight: 40 +--- + +This guide describes how to upgrade the Web Application Server. Please ensure that [Upgrade Application Servers and Load Balancer][] has been completed before starting this installation. These steps assume that the v2024.5 version of Gateway and its prerequisites have already been installed. + +[Upgrade Application Servers and Load Balancer]: {{< url path="Cortex.Guides.UpgradeCortex.2024.5to2024.7.MultipleServerWithHA.UpgradeApplicationAndLoadBalancerServers" >}} diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/multiple-server-with-ha/upgrade-web-application-server/prerequisites.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/multiple-server-with-ha/upgrade-web-application-server/prerequisites.md new file mode 100644 index 000000000..5645bd0eb --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/multiple-server-with-ha/upgrade-web-application-server/prerequisites.md @@ -0,0 +1,32 @@ +--- +title: "Prerequisites" +linkTitle: "Prerequisites" +description: "Information about performing the prerequisities for the Upgrade of the Web Application Server." +weight: 10 +--- + +# {{% param title %}} + +Please ensure that [Upgrade Application Servers and Load Balancer][] has been completed before starting this installation. These steps assume that the v2024.5 version of Gateway and its prerequisites have already been installed. + +## Make Installation Artefacts Available + +1. Copy the following artefacts to a folder on the machine: + + * Cortex Innovation 2024.7 - App Services.zip + * Cortex Innovation 2024.7 - App Server Install Scripts.zip + * Cortex Innovation 2024.7 - Block Packages.zip + * Cortex Innovation 2024.7 - Gateway.zip + * Cortex Innovation 2024.7 - Flows Upgrader.zip + * Cortex Innovation 2024.7 - Web App Server Install Scripts.zip + +1. Extract the `Cortex Innovation 2024.7 - App Server Install Scripts.zip` file to a folder with the same name. +1. Extract the `Cortex Innovation 2024.7 - Flows Upgrader.zip` zip file to a folder with the same name. +1. Extract the `Cortex Innovation 2024.7 - Web App Server Install Scripts.zip` zip file to a folder with the same name. + +## Next Steps? + +1. [Upgrade Flow Debugger][] + +[Upgrade Application Servers and Load Balancer]: {{< url path="Cortex.Guides.UpgradeCortex.2024.5to2024.7.MultipleServerWithHA.UpgradeApplicationAndLoadBalancerServers" >}} +[Upgrade Flow Debugger]: {{< url path="Cortex.Guides.UpgradeCortex.2024.5to2024.7.MultipleServerWithHA.UpgradeDebugger" >}} diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/multiple-server-with-ha/upgrade-web-application-server/upgrade-debugger.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/multiple-server-with-ha/upgrade-web-application-server/upgrade-debugger.md new file mode 100644 index 000000000..a0bd3fc93 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/multiple-server-with-ha/upgrade-web-application-server/upgrade-debugger.md @@ -0,0 +1,32 @@ +--- +title: "Upgrade Flow Debugger" +linkTitle: "Upgrade Flow Debugger" +description: "Information about upgrading the Flow Debugger." +weight: 30 +--- + +# {{< param title >}} + +This guide describes how to upgrade the Flow Debugger on the Web Application Server from 2024.5 to 2024.7. + +## Configure Upgrade Script + +{{< section "/upgrade/2024.7/upgrade-application-server/single-server/configure-upgrade-script.md" >}} + +## Run Upgrade Script + +{{< section "/upgrade/2024.7/upgrade-application-server/single-server/run-upgrade-script.md">}} + +## Check Application Services + +{{< section "/upgrade/upgrade-application-server/single-server/check-application-services.md">}} + +## Preserve installation files + +{{< section "/preserve-installation-files.md">}} + +## Next Steps? + +1. [Upgrade Gateway][] + +[Upgrade Gateway]: {{< url path="Cortex.Guides.UpgradeCortex.2024.5to2024.7.MultipleServerWithHA.UpgradeGateway" >}} diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/multiple-server-with-ha/upgrade-web-application-server/upgrade-gateway.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/multiple-server-with-ha/upgrade-web-application-server/upgrade-gateway.md new file mode 100644 index 000000000..813475bf1 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/multiple-server-with-ha/upgrade-web-application-server/upgrade-gateway.md @@ -0,0 +1,37 @@ +--- +title: "Upgrade Gateway" +linkTitle: "Upgrade Gateway" +description: "Information about upgrading {{% ctx %}} Gateway from 2024.5 to 2024.7." +weight: 30 +--- + +# {{% param title %}} + +This guide describes how to upgrade {{% ctx %}} Gateway from 2024.5 to 2024.7. Please ensure that the [Flow Debugger upgrade][] has been completed before starting this upgrade. + +## Configure Upgrade Script + +{{< section "/upgrade/2024.7/upgrade-web-application-server/configure-gateway-script.md" >}} + +## Run Upgrade Script + +{{< section "/upgrade/2024.7/upgrade-web-application-server/run-gateway-script.md" >}} + +## Upgrade Flows + +{{< section "/upgrade/2024.7/upgrade-web-application-server/upgrade-flows.md" >}} + +{{% alert title="Note" %}} +If the {{% ctx %}} Interaction Portal is used in your environment, you must also upgrade those flows. +{{% /alert %}} + +## Preserve installation files + +{{< section "/preserve-installation-files.md" >}} + +## Next Steps? + +1. [Try It Out][] + +[Flow Debugger upgrade]: {{< url path="Cortex.Guides.UpgradeCortex.2024.5to2024.7.MultipleServerWithHA.UpgradeDebugger" >}} +[Try It Out]: {{< url path="Cortex.Guides.UpgradeCortex.2024.5to2024.7.MultipleServerWithHA.TryItOut" >}} diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/single-server-without-ha/_index.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/single-server-without-ha/_index.md new file mode 100644 index 000000000..a43e88369 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/single-server-without-ha/_index.md @@ -0,0 +1,6 @@ +--- +title: "Single Server - Without HA" +linkTitle: "Single Server - Without HA" +description: "Upgrade instructions for a single on-premise server without high availability (HA)." +weight: 500 +--- diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/single-server-without-ha/try-it-out.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/single-server-without-ha/try-it-out.md new file mode 100644 index 000000000..4577a2be6 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/single-server-without-ha/try-it-out.md @@ -0,0 +1,19 @@ +--- +title: "Try it out" +linkTitle: "Try it out" +description: "Information about trying out {{% ctx %}} after upgrade." +weight: 60 +--- + +# {{% param title %}} + +This guide describes how to try out an upgraded {{% ctx %}} to make sure it is working. Please ensure that both the [Application Server Upgrade][] and [Web Application Server Upgrade][] has been completed before taking these steps. + +{{< section "/upgrade/2024.7/upgrade-web-application-server/test-upgrade.md" >}} + +## Test Executing Production Flows + +{{< section "/upgrade/try-it-out/single-server/test-executing-production-flows.md" >}} + +[Application Server Upgrade]: {{< url path="Cortex.Guides.UpgradeCortex.2024.5to2024.7.SingleServerWithoutHA.UpgradeApplicationServer" >}} +[Web Application Server Upgrade]: {{< url path="Cortex.Guides.UpgradeCortex.2024.5to2024.7.SingleServerWithoutHA.UpgradeWebApplicationServer" >}} diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/single-server-without-ha/upgrade-application-server.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/single-server-without-ha/upgrade-application-server.md new file mode 100644 index 000000000..6f25888bf --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/single-server-without-ha/upgrade-application-server.md @@ -0,0 +1,37 @@ +--- +title: "Upgrade Application Server" +linkTitle: "Upgrade Application Server" +description: "Information about upgrading the Application Server." +weight: 30 +--- + +# {{< param title >}} + +This guide describes how to upgrade the Application Server components on the server from 2024.5 to 2024.7. + +## Make Installation Artefacts Available + +{{< section "/upgrade/2024.7/upgrade-application-server/single-server/make-installation-artefacts-available.md" >}} + +## Configure Upgrade Script + +{{< section "/upgrade/2024.7/upgrade-application-server/single-server/configure-upgrade-script.md" >}} + +## Run Upgrade Script + +{{< section "/upgrade/2024.7/upgrade-application-server/single-server/run-upgrade-script.md" >}} + +## Check Application Services + +{{< section "/upgrade/upgrade-application-server/single-server/check-application-services.md" >}} + +## Preserve installation files + +{{< section "/preserve-installation-files.md" >}} + +## Next Steps? + +1. [Upgrade Web Application Server][] + +[Upgrade Web Application Server]: {{< url path="Cortex.Guides.UpgradeCortex.2024.5to2024.7.SingleServerWithoutHA.UpgradeWebApplicationServer" >}} + diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/single-server-without-ha/upgrade-web-application-server.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/single-server-without-ha/upgrade-web-application-server.md new file mode 100644 index 000000000..947a007c9 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.5-to-2024.7/single-server-without-ha/upgrade-web-application-server.md @@ -0,0 +1,48 @@ +--- +title: "Upgrade Web Application Server" +linkTitle: "Upgrade Web Application Server" +description: "Information about upgrading the Web Application Server from 2024.5 to 2024.7." +weight: 30 +--- + +# {{% param title %}} + +This guide describes how to upgrade {{% ctx %}} Gateway from 2024.5 to 2024.7. Please ensure that the [Upgrade Application Server][] has been completed before starting this upgrade. + +## Make Installation Artefacts Available + +1. Copy the following artefacts to a folder on the server: + + * Cortex Innovation 2024.7 - Gateway.zip + * Cortex Innovation 2024.7 - Flows Upgrader.zip + * Cortex Innovation 2024.7 - Web App Server Install Scripts.zip + +1. Extract the `Cortex Innovation 2024.7 - Flows Upgrader.zip` zip file to a folder with the same name. +1. Extract the `Cortex Innovation 2024.7 - Web App Server Install Scripts.zip` zip file to a folder with the same name. + +## Configure Upgrade Script + +{{< section "/upgrade/2024.7/upgrade-web-application-server/configure-gateway-script.md" >}} + +## Run Upgrade Script + +{{< section "/upgrade/2024.7/upgrade-web-application-server/run-gateway-script.md" >}} + +## Upgrade Flows + +{{< section "/upgrade/2024.7/upgrade-web-application-server/upgrade-flows.md" >}} + +{{% alert title="Note" %}} +If the {{% ctx %}} Interaction Portal is used in your environment, you must also upgrade those flows. +{{% /alert %}} + +## Preserve installation files + +{{< section "/preserve-installation-files.md" >}} + +## Next Steps? + +1. [Try It Out][] + +[Try It Out]: {{< url path="Cortex.Guides.UpgradeCortex.2024.5to2024.7.SingleServerWithoutHA.TryItOut" >}} +[Upgrade Application Server]: {{< url path="Cortex.Guides.UpgradeCortex.2024.5to2024.7.SingleServerWithoutHA.UpgradeApplicationServer" >}} diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/_index.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/_index.md new file mode 100644 index 000000000..4a29d5dca --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/_index.md @@ -0,0 +1,6 @@ +--- +title: "2024.7 to 2024.9" +linkTitle: "2024.7 to 2024.9" +description: "Instructions to upgrade {{% ctx %}} 2024.7 to 2024.9" +weight: 997 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/multiple-server-with-ha/_index.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/multiple-server-with-ha/_index.md new file mode 100644 index 000000000..10ed76d03 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/multiple-server-with-ha/_index.md @@ -0,0 +1,6 @@ +--- +title: "Multiple Server - With HA" +linkTitle: "Multiple Server - With HA" +description: "Upgrade instructions for multiple on-premise servers with high availability (HA)." +weight: 10 +--- diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/multiple-server-with-ha/try-it-out.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/multiple-server-with-ha/try-it-out.md new file mode 100644 index 000000000..8750d3ba8 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/multiple-server-with-ha/try-it-out.md @@ -0,0 +1,19 @@ +--- +title: "Try it out" +linkTitle: "Try it out" +description: "Information about trying out {{% ctx %}} after upgrade." +weight: 60 +--- + +# {{% param title %}} + +This guide describes how to try out an upgraded {{% ctx %}} to make sure it is working. Please ensure that both the [Application Servers and Load Balancer Upgrade][] and [Web Application Server Upgrade][] has been completed before taking these steps. + +{{< section "/upgrade/2024.9/upgrade-web-application-server/test-upgrade.md" >}} + +## Test Executing Production Flows + +{{< section "/upgrade/try-it-out/multi-server/test-executing-production-flows.md" >}} + +[Application Servers and Load Balancer Upgrade]: {{< url path="Cortex.Guides.UpgradeCortex.2024.7to2024.9.MultipleServerWithHA.UpgradeApplicationAndLoadBalancerServers" >}} +[Web Application Server Upgrade]: {{< url path="Cortex.Guides.UpgradeCortex.2024.7to2024.9.MultipleServerWithHA.UpgradeWebApplicationServer" >}} diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/multiple-server-with-ha/upgrade-application-and-loadbalancer-servers.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/multiple-server-with-ha/upgrade-application-and-loadbalancer-servers.md new file mode 100644 index 000000000..7f23a7095 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/multiple-server-with-ha/upgrade-application-and-loadbalancer-servers.md @@ -0,0 +1,79 @@ +--- +title: "Upgrade Application Servers and Load Balancer" +linkTitle: "Upgrade Application Servers and Load Balancer" +description: "Information about upgrading the Application Servers and Load Balancer Server." +weight: 30 +--- + +# {{< param title >}} + +This guide describes how to upgrade the Application Servers and Load Balancer Server from 2024.7 to 2024.9. + +## Make Installation Artefacts Available + +1. Choose one of the Application Servers to be used to perform the upgrade from, and copy the following artefacts to a folder on it: + * Cortex Innovation 2024.9 - App Server Install Scripts.zip + * Cortex Innovation 2024.9 - App Services.zip + * Cortex Innovation 2024.9 - Block Packages.zip + +1. Extract the `Cortex Innovation 2024.9 - App Server Install Scripts.zip` file to a folder with the same name. + +## Configure Upgrade Script + +1. In the `Cortex Innovation 2024.9 - App Server Install Scripts\Upgrade Application Server` folder, locate the `Cortex.Innovation.Upgrade.ps1` script and open it with a text editor. +1. Choose the tab below that matches the configuration for this upgrade, then update the script to match, changing the parameters according to the details given below: + + {{% alert title="Note" %}} +To check the previous configuration values open the `Cortex.Upgrade.ApplicationConfig.json` file located in `%ProgramData%\Cortex\Upgrade`. If the file does not exist or the values should be changed then use the `Use New Configuration Values` tab. + {{% /alert %}} + + {{< tabpane lang="powershell" >}} + {{< tab header="Use Previous Configuration Values" >}} +.\Cortex.Upgrade.ps1 ` + -AppServicesPath "C:\Install\Cortex Innovation 2024.9 - App Services.zip" ` + -BlockPackagesPath "C:\Install\Cortex Innovation 2024.9 - Block Packages.zip" ` + -Credential $Credential ` + -AcceptEULA:$AcceptEULA ` + *>&1 | Tee-Object -FilePath "cortex-ha-upgrade-log.txt" + {{< /tab >}} + {{< tab header="Use New Configuration Values">}} +.\Cortex.Upgrade.ps1 ` + -AppServicesPath "C:\Install\Cortex Innovation 2024.9 - App Services.zip" ` + -BlockPackagesPath "C:\Install\Cortex Innovation 2024.9 - Block Packages.zip" ` + -ApplicationServerIPv4Addresses @("192.168.1.1, 192.168.1.2, 192.168.1.3") ` + -LoadBalancerServerIPv4Address "192.168.1.4" ` + -Credential $Credential ` + -AcceptEULA:$AcceptEULA ` + *>&1 | Tee-Object -FilePath "cortex-ha-upgrade-log.txt" + {{< /tab >}} + {{< /tabpane >}} + + | Name | Description | + |----------------------------------------------|-------------| + |`AppServicesPath` | Configure this value with the location of the Application Services zip file on the Application Server being used for the upgrade. | + |`BlockPackagesPath` | Configure this value with the location of the Block Packages zip file on the Application Server being used for the upgrade. | + |`ApplicationServerIPv4Addresses` | The IPv4 addresses of the Application Servers. The first of these must be the Application Server being used for the upgrade.| + |`LoadBalancerServerIPv4Address` | The IPv4 address of the Load Balancer Server. If the built-in load balancer is not being used, this should be removed.| + |`Credential` | The credentials of the user which will be used to perform remote operations on the Application Servers. It must be a domain user that is a member of the local Administrators group on all servers.

This does not need to be changed, a prompt will appear to enter this information when the script is run. | + |`AcceptEULA` | This does not need to be changed, the EULA will be accepted at a later stage. | + |`FilePath` | The filename that upgrade logs are written to. If this should be written to a different location than where the installation files are then a full path should be specified. | + +1. Save and close `Cortex.Innovation.Upgrade.ps1`. + +## Run Upgrade Script + +{{< section "/upgrade/2024.9/upgrade-application-server/multi-server/run-upgrade-script.md" >}} + +## Check Application Services + +{{< section "/upgrade/upgrade-application-server/multi-server/check-application-services.md" >}} + +## Preserve installation files + +{{< section "/preserve-installation-files.md" >}} + +## Next Steps? + +1. [Upgrade Web Application Server][] + +[Upgrade Web Application Server]: {{< url path="Cortex.Guides.UpgradeCortex.2024.7to2024.9.MultipleServerWithHA.UpgradeWebApplicationServer" >}} diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/multiple-server-with-ha/upgrade-web-application-server/_index.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/multiple-server-with-ha/upgrade-web-application-server/_index.md new file mode 100644 index 000000000..ec4c6a59d --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/multiple-server-with-ha/upgrade-web-application-server/_index.md @@ -0,0 +1,10 @@ +--- +title: "Upgrade the Web Application Server" +linkTitle: "Upgrade Web Application Server" +description: "Information about upgrading the Web Application Server." +weight: 40 +--- + +This guide describes how to upgrade the Web Application Server. Please ensure that [Upgrade Application Servers and Load Balancer][] has been completed before starting this installation. These steps assume that the v2024.7 version of Gateway and its prerequisites have already been installed. + +[Upgrade Application Servers and Load Balancer]: {{< url path="Cortex.Guides.UpgradeCortex.2024.7to2024.9.MultipleServerWithHA.UpgradeApplicationAndLoadBalancerServers" >}} diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/multiple-server-with-ha/upgrade-web-application-server/prerequisites.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/multiple-server-with-ha/upgrade-web-application-server/prerequisites.md new file mode 100644 index 000000000..fbbadcc08 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/multiple-server-with-ha/upgrade-web-application-server/prerequisites.md @@ -0,0 +1,30 @@ +--- +title: "Prerequisites" +linkTitle: "Prerequisites" +description: "Information about performing the prerequisities for the Upgrade of the Web Application Server." +weight: 10 +--- + +# {{% param title %}} + +Please ensure that [Upgrade Application Servers and Load Balancer][] has been completed before starting this installation. These steps assume that the v2024.7 version of Gateway and its prerequisites have already been installed. + +## Make Installation Artefacts Available + +1. Copy the following artefacts to a folder on the machine: + + * Cortex Innovation 2024.9 - App Services.zip + * Cortex Innovation 2024.9 - App Server Install Scripts.zip + * Cortex Innovation 2024.9 - Block Packages.zip + * Cortex Innovation 2024.9 - Gateway.zip + * Cortex Innovation 2024.9 - Web App Server Install Scripts.zip + +1. Extract the `Cortex Innovation 2024.9 - App Server Install Scripts.zip` file to a folder with the same name. +1. Extract the `Cortex Innovation 2024.9 - Web App Server Install Scripts.zip` zip file to a folder with the same name. + +## Next Steps? + +1. [Upgrade Flow Debugger][] + +[Upgrade Application Servers and Load Balancer]: {{< url path="Cortex.Guides.UpgradeCortex.2024.7to2024.9.MultipleServerWithHA.UpgradeApplicationAndLoadBalancerServers" >}} +[Upgrade Flow Debugger]: {{< url path="Cortex.Guides.UpgradeCortex.2024.7to2024.9.MultipleServerWithHA.UpgradeDebugger" >}} diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/multiple-server-with-ha/upgrade-web-application-server/upgrade-debugger.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/multiple-server-with-ha/upgrade-web-application-server/upgrade-debugger.md new file mode 100644 index 000000000..e79dc6f38 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/multiple-server-with-ha/upgrade-web-application-server/upgrade-debugger.md @@ -0,0 +1,33 @@ +--- +title: "Upgrade Flow Debugger" +linkTitle: "Upgrade Flow Debugger" +description: "Information about upgrading the Flow Debugger." +weight: 30 +--- + +# {{< param title >}} + +This guide describes how to upgrade the Flow Debugger on the Web Application Server from 2024.7 to 2024.9. Please ensure that the [prerequisites][] have been completed before starting this upgrade. + +## Configure Upgrade Script + +{{< section "/upgrade/2024.9/upgrade-application-server/single-server/configure-upgrade-script.md" >}} + +## Run Upgrade Script + +{{< section "/upgrade/2024.9/upgrade-application-server/single-server/run-upgrade-script.md">}} + +## Check Application Services + +{{< section "/upgrade/upgrade-application-server/single-server/check-application-services.md">}} + +## Preserve installation files + +{{< section "/preserve-installation-files.md">}} + +## Next Steps? + +1. [Upgrade Gateway][] + +[prerequisites]: {{< url path="Cortex.Guides.UpgradeCortex.2024.7to2024.9.MultipleServerWithHA.WebApplicationServerPreqrequisites" >}} +[Upgrade Gateway]: {{< url path="Cortex.Guides.UpgradeCortex.2024.7to2024.9.MultipleServerWithHA.UpgradeGateway" >}} diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/multiple-server-with-ha/upgrade-web-application-server/upgrade-gateway.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/multiple-server-with-ha/upgrade-web-application-server/upgrade-gateway.md new file mode 100644 index 000000000..c10bf9752 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/multiple-server-with-ha/upgrade-web-application-server/upgrade-gateway.md @@ -0,0 +1,59 @@ +--- +title: "Upgrade Gateway" +linkTitle: "Upgrade Gateway" +description: "Information about upgrading {{% ctx %}} Gateway from 2024.7 to 2024.9." +weight: 30 +--- + +# {{% param title %}} + +This guide describes how to upgrade {{% ctx %}} Gateway from 2024.7 to 2024.9. Please ensure that the [Flow Debugger upgrade][] has been completed before starting this upgrade. + +## Configure Upgrade Script + +{{< section "/upgrade/2024.9/upgrade-web-application-server/configure-gateway-script.md" >}} + +## Run Upgrade Script + +{{< section "/upgrade/2024.9/upgrade-web-application-server/run-gateway-script.md" >}} + +## Republish Packages + {{< alert type="note" title="Note" >}} This only needs to happen for upgrading to this release version as breaking changes were introduced as part of the cleanup of the NServiceBus endpoint and RabbitMQ queues.{{< /alert >}} +1. Log in to Gateway with a user that has the `Admin` role. +1. Click on the `Admin` charm, then `Packages`. +1. In the `Package Definitions` grid, select `Is Published` filter option on the `Is Published` column to show all published packages. +1. For each published package version: + * Select the package. + * Click `Unpublish` at the bottom of the `Definition` tab and click `Unpublish` on the confirmation pop-up dialog. A success message should appear. If it doesn't it means that there is a problem with the configuration in the `web.config` file for {{% ctx %}} Gateway, or the Application Services aren't healthy + * Click `Create New Version` then click `Save` and wait for the new version to be created. + * Click `Publish`. A success message should appear. If it doesn't it means that there is a problem with the configuration in the `web.config` file for {{% ctx %}} Gateway, or the Application Services aren't healthy. + * Sometimes the list of published packages in the `Package Definitions` grid disappears. To fix, set the `Is Published` filter in the `Package Definitions` grid to blank option and then set the filter to `Is Published` option again to show all published packages. + +## Delete Old Execution Services + {{< alert type="note" title="Note" >}} This only needs to happen for upgrading to this release version as breaking changes were introduced as part of the cleanup of the NServiceBus endpoint and RabbitMQ queues.{{< /alert >}} + +1. Open a web browser. +1. Navigate to `https://server.domain.com:9080/Explorer`, where `server.domain.com` is the fully qualified domain name of one of the application servers. Replace `9080` with new `httpGatewayEndpointPort` value if it was changed during configuration of the original installation. +1. Expand `Cluster` then `Applications` then `Cortex.Innovation.Execution`. +1. For all old execution applications: + * Click on the drop down menu and select `Delete Application`. Confirm application deletion by following the on-screen instructions. + * Give this a few minutes. If the application does not delete: + * Expand `Nodes` + * For each node: + * Expand the node and select the application that matches the engine version number of the application that is being attempted to be deleted. + * Expand each level up to and including `Code Packages`. + * Click on the drop down menu for `Code` and select `Restart`. Confirm application restart by following the on-screen instructions. + * Give this a few minutes. Once all nodes have been restarted the application should be deleted and disappear from the list of applications. + +Repeat the above instructions for the `Flow Debugger`. In step 2 `server.domain.com` is the fully qualified domain name of the web application server. + +## Preserve installation files + +{{< section "/preserve-installation-files.md" >}} + +## Next Steps? + +1. [Try It Out][] + +[Flow Debugger upgrade]: {{< url path="Cortex.Guides.UpgradeCortex.2024.7to2024.9.MultipleServerWithHA.UpgradeDebugger" >}} +[Try It Out]: {{< url path="Cortex.Guides.UpgradeCortex.2024.7to2024.9.MultipleServerWithHA.TryItOut" >}} diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/single-server-without-ha/_index.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/single-server-without-ha/_index.md new file mode 100644 index 000000000..a43e88369 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/single-server-without-ha/_index.md @@ -0,0 +1,6 @@ +--- +title: "Single Server - Without HA" +linkTitle: "Single Server - Without HA" +description: "Upgrade instructions for a single on-premise server without high availability (HA)." +weight: 500 +--- diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/single-server-without-ha/try-it-out.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/single-server-without-ha/try-it-out.md new file mode 100644 index 000000000..de31c3621 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/single-server-without-ha/try-it-out.md @@ -0,0 +1,19 @@ +--- +title: "Try it out" +linkTitle: "Try it out" +description: "Information about trying out {{% ctx %}} after upgrade." +weight: 60 +--- + +# {{% param title %}} + +This guide describes how to try out an upgraded {{% ctx %}} to make sure it is working. Please ensure that both the [Application Server Upgrade][] and [Web Application Server Upgrade][] has been completed before taking these steps. + +{{< section "/upgrade/2024.9/upgrade-web-application-server/test-upgrade.md" >}} + +## Test Executing Production Flows + +{{< section "/upgrade/try-it-out/single-server/test-executing-production-flows.md" >}} + +[Application Server Upgrade]: {{< url path="Cortex.Guides.UpgradeCortex.2024.7to2024.9.SingleServerWithoutHA.UpgradeApplicationServer" >}} +[Web Application Server Upgrade]: {{< url path="Cortex.Guides.UpgradeCortex.2024.7to2024.9.SingleServerWithoutHA.UpgradeWebApplicationServer" >}} diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/single-server-without-ha/upgrade-application-server.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/single-server-without-ha/upgrade-application-server.md new file mode 100644 index 000000000..c2e76965f --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/single-server-without-ha/upgrade-application-server.md @@ -0,0 +1,37 @@ +--- +title: "Upgrade Application Server" +linkTitle: "Upgrade Application Server" +description: "Information about upgrading the Application Server." +weight: 30 +--- + +# {{< param title >}} + +This guide describes how to upgrade the Application Server components on the server from 2024.7 to 2024.9. + +## Make Installation Artefacts Available + +{{< section "/upgrade/2024.9/upgrade-application-server/single-server/make-installation-artefacts-available.md" >}} + +## Configure Upgrade Script + +{{< section "/upgrade/2024.9/upgrade-application-server/single-server/configure-upgrade-script.md" >}} + +## Run Upgrade Script + +{{< section "/upgrade/2024.9/upgrade-application-server/single-server/run-upgrade-script.md" >}} + +## Check Application Services + +{{< section "/upgrade/upgrade-application-server/single-server/check-application-services.md" >}} + +## Preserve installation files + +{{< section "/preserve-installation-files.md" >}} + +## Next Steps? + +1. [Upgrade Web Application Server][] + +[Upgrade Web Application Server]: {{< url path="Cortex.Guides.UpgradeCortex.2024.7to2024.9.SingleServerWithoutHA.UpgradeWebApplicationServer" >}} + diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/single-server-without-ha/upgrade-web-application-server.md b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/single-server-without-ha/upgrade-web-application-server.md new file mode 100644 index 000000000..e4fc5c5ca --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/2024.7-to-2024.9/single-server-without-ha/upgrade-web-application-server.md @@ -0,0 +1,64 @@ +--- +title: "Upgrade Web Application Server" +linkTitle: "Upgrade Web Application Server" +description: "Information about upgrading the Web Application Server from 2024.7 to 2024.9." +weight: 30 +--- + +# {{% param title %}} + +This guide describes how to upgrade {{% ctx %}} Gateway from 2024.7 to 2024.9. Please ensure that the [Upgrade Application Server][] has been completed before starting this upgrade. + +## Make Installation Artefacts Available + +1. Copy the following artefacts to a folder on the server: + + * Cortex Innovation 2024.9 - Gateway.zip + * Cortex Innovation 2024.9 - Web App Server Install Scripts.zip + +1. Extract the `Cortex Innovation 2024.9 - Web App Server Install Scripts.zip` zip file to a folder with the same name. + +## Configure Upgrade Script + +{{< section "/upgrade/2024.9/upgrade-web-application-server/configure-gateway-script.md" >}} + +## Run Upgrade Script + +{{< section "/upgrade/2024.9/upgrade-web-application-server/run-gateway-script.md" >}} + +## Publish New Package Versions + {{< alert type="note" title="Note" >}} This only needs to happen for upgrading to this release version as breaking changes were introduced as part of the cleanup of the NServiceBus endpoint and RabbitMQ queues.{{< /alert >}} +1. Log in to Gateway with a user that has the `Admin` role. +1. Click on the `Admin` charm, then `Packages`. +1. For each previously published package version: + * Select the package. + * Click `Create New Version` then click `Save` and wait for the new version to be created. + * Click `Publish`. A success message should appear. If it doesn't it means that there is a problem with the configuration in the `web.config` file for {{% ctx %}} Gateway, or the Application Services aren't healthy. + +## Delete Old Execution Service + {{< alert type="note" title="Note" >}} This only needs to happen for upgrading to this release version as breaking changes were introduced as part of the cleanup of the NServiceBus endpoint and RabbitMQ queues.{{< /alert >}} + +1. Open a web browser. +1. Navigate to `https://server.domain.com:9080/Explorer`, where `server.domain.com` is the fully qualified domain name of the server. Replace `9080` with new `httpGatewayEndpointPort` value if it was changed during configuration of the original installation. +1. Expand `Cluster` then `Applications` then `Cortex.Innovation.Execution`. +1. For all old execution applications: + * Click on the drop down menu and select `Delete Application`. Confirm application deletion by following the on-screen instructions. + * Give this a few minutes. If the application does not delete: + * Expand `Nodes` + * For each node: + * Expand the node and select the application that matches the engine version number of the application that is being attempted to be deleted. + * Expand each level up to and including `Code Packages`. + * Click on the drop down menu for `Code` and select `Restart`. Confirm application restart by following the on-screen instructions. + * Give this a few minutes. Once all nodes have been restarted the application should be deleted and disappear from the list of applications. + + +## Preserve installation files + +{{< section "/preserve-installation-files.md" >}} + +## Next Steps? + +1. [Try It Out][] + +[Try It Out]: {{< url path="Cortex.Guides.UpgradeCortex.2024.7to2024.9.SingleServerWithoutHA.TryItOut" >}} +[Upgrade Application Server]: {{< url path="Cortex.Guides.UpgradeCortex.2024.7to2024.9.SingleServerWithoutHA.UpgradeApplicationServer" >}} diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/_index.md b/content/en/docs/2024.11/Guides/upgrade-cortex/_index.md new file mode 100644 index 000000000..4d02a4f21 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/_index.md @@ -0,0 +1,6 @@ +--- +title: "Upgrade CORTEX" +linkTitle: "Upgrade CORTEX" +description: "Guides to upgrade {{% ctx %}}" +weight: 1000 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/advanced/_index.md b/content/en/docs/2024.11/Guides/upgrade-cortex/advanced/_index.md new file mode 100644 index 000000000..c28d33a5c --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/advanced/_index.md @@ -0,0 +1,6 @@ +--- +title: "Advanced Setup" +linkTitle: "Advanced Setup" +description: "Supporting information about upgrading {{% ctx %}}." +weight: 1000 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/advanced/ssl-best-practices.md b/content/en/docs/2024.11/Guides/upgrade-cortex/advanced/ssl-best-practices.md new file mode 100644 index 000000000..5e6b69e78 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/advanced/ssl-best-practices.md @@ -0,0 +1,9 @@ +--- +title: "SSL Best Practices" +linkTitle: "SSL Best Practices" +description: "Information about the recommended security settings for {{% ctx %}} servers." +--- + +# {{% param title %}} + +{{< section "/advanced/ssl-best-practices.md" >}} diff --git a/content/en/docs/2024.11/Guides/upgrade-cortex/advanced/upgrade-flows.md b/content/en/docs/2024.11/Guides/upgrade-cortex/advanced/upgrade-flows.md new file mode 100644 index 000000000..149033b99 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-cortex/advanced/upgrade-flows.md @@ -0,0 +1,23 @@ +--- +title: "Upgrade Flows" +linkTitle: "Upgrade Flows" +description: "Information about upgrading flows." +--- + +# {{% param title %}} + +{{% alert title="Note" %}} +Sometimes, between versions of {{% ctx %}}, breaking or non-breaking changes have to be made to blocks. This can cause existing flows to break or not work as expected which requires them to be upgraded to resolve the issues. +{{% /alert %}} + +## Prerequisites + +1. Copy the following artefacts to a folder on a machine: + + * Cortex Innovation 2024.7 - Flows Upgrader.zip + +1. Extract the `Cortex Innovation 2024.7 - Flows Upgrader.zip` zip file to a folder with the same name. + +## Upgrade the flows + +{{< section "/upgrade/2024.7/upgrade-web-application-server/upgrade-flows.md" >}} diff --git a/content/en/docs/2024.11/Guides/upgrade-observability/_index.md b/content/en/docs/2024.11/Guides/upgrade-observability/_index.md new file mode 100644 index 000000000..8faaea3a2 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-observability/_index.md @@ -0,0 +1,6 @@ +--- +title: "Upgrade Observability" +linkTitle: "Upgrade Observability" +description: "Information about upgrading your observability platform for {{% ctx %}}." +weight: 1000 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Guides/upgrade-observability/cloud/_index.md b/content/en/docs/2024.11/Guides/upgrade-observability/cloud/_index.md new file mode 100644 index 000000000..4eaa242d6 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-observability/cloud/_index.md @@ -0,0 +1,6 @@ +--- +title: "Cloud" +linkTitle: "Cloud" +description: "Information about upgrading a cloud-hosted observability platform for {{% ctx %}}." +weight: 500 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Guides/upgrade-observability/cloud/grafana/_index.md b/content/en/docs/2024.11/Guides/upgrade-observability/cloud/grafana/_index.md new file mode 100644 index 000000000..1337f8126 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-observability/cloud/grafana/_index.md @@ -0,0 +1,6 @@ +--- +title: "Grafana" +linkTitle: "Grafana" +description: "Information about upgrading a cloud-hosted Grafana platform for {{% ctx %}}." +weight: 1000 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Guides/upgrade-observability/cloud/grafana/prerequisites.md b/content/en/docs/2024.11/Guides/upgrade-observability/cloud/grafana/prerequisites.md new file mode 100644 index 000000000..d141133bc --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-observability/cloud/grafana/prerequisites.md @@ -0,0 +1,44 @@ +--- +title: "Prerequisites" +linkTitle: "Prerequisites" +description: "The prerequisites required before performing the observability upgrade." +weight: 1 +--- + +# {{% param title %}} + +## Verify Old Version + +1. Navigate to your Grafana website e.g. `https://{Team URL}.grafana.net` +1. Login to Grafana. +1. Open the *Dashboards* page via the menu on the left sidebar. +1. Select the folder that hosts the Cortex Dashboards, e.g. *Cortex* +1. Click the *Flow Execution Requests* dashboard to open it. +1. Change the time period to be *Last 90 days* and confirm data is present. +1. Make a note of values returned in the Overview tiles, or alternatively take a screenshot of the dashboard, to use later to verify the upgrade. + +## Make Artefacts Available + +1. Download the required artefacts to a folder on your machine: + + * [Promtail 3.0.0][] archive. + * [Promtail Install][] archive. + +1. Extract the downloaded `promtail-windows-amd64.exe` archive to a folder with the same name. +1. Extract the downloaded `Promtail.Install` archive to a folder with the same name. + +## Backup Old Files + +On each Application Server that Promtail is installed on: + +1. Create a folder called `Observability Backups` in a known location. +1. Open File Explorer and navigate to the location where Promtail is running from, e.g. `C:\Promtail`. +1. Copy the `promtail-local-config.yaml` file and save it to the `Observability Backups` folder created at step 1. + +## Next Steps? + +1. [Upgrade Promtail][] + +[Promtail 3.0.0]: {{< url path="Grafana.SelfManaged.Downloads.Promtail.3.0.0.PromtailInstallZip" >}} +[Promtail Install]: {{< url path="GitHub.Cortex.Observability.3.0.0.PromtailInstallZip" >}} +[Upgrade Promtail]: {{< url path="Cortex.Guides.UpgradeObservability.Cloud.Grafana.UpgradePromtail" >}} diff --git a/content/en/docs/2024.11/Guides/upgrade-observability/cloud/grafana/try-it-out.md b/content/en/docs/2024.11/Guides/upgrade-observability/cloud/grafana/try-it-out.md new file mode 100644 index 000000000..f6d53e219 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-observability/cloud/grafana/try-it-out.md @@ -0,0 +1,48 @@ +--- +title: "Try it out" +linkTitle: "Try it out" +description: "Information about trying out the observability platform after upgrade." +weight: 3 +--- + +# {{% param title %}} + +This guide describes how to verify that the upgrade has been successful. Please ensure that [Upgrade Promtail][] has been completed before taking these steps. + +## Confirm Dashboards Load + +1. Navigate to your Grafana website e.g. `https://{Team URL}.grafana.net` +1. Login to Grafana. +1. Open the *Dashboards* page via the menu on the left sidebar. +1. Select the folder that hosts the Cortex Dashboards, e.g. *Cortex* +1. Click the *Flow Execution Requests* dashboard to open it. +1. Change the time period to be *Last 90 days* and confirm data is present. +1. Confirm the data from the previous step is similar to the data captured when [verifying the old version][]. + +## Confirm New Data is Processed + +{{% alert title="Note" %}} +Any flow can be used that exists on the system and can be executed. +{{% / alert %}} + +1. Open a web browser and navigate to your installed {{% ctx %}} Gateway URL, e.g. `https://server.domain.com/gateway`, and log in when prompted. +1. Open a flow that you are able to execute on an ad hoc basis. +1. Start the flow. +1. Once the request has completed, in your web browser, navigate to and log in to your configured Grafana. +1. Open the *Dashboards* page via the menu on the left sidebar. +1. Click the folder name that the dashboards were imported to. +1. Click the *Flow Execution Requests* dashboard to open it. +1. The request made at step 1 should be visible on the dashboard. +{{% alert title="Note" %}} +If other requests have been made then there may be more than one request visible on the dashboard. +{{% / alert %}} +1. Open the *Dashboards* page via the menu on the left sidebar. +1. Click the folder name that the dashboards were imported to. +1. Click the *Platform Health* dashboard to open it. +1. The request made at step 1 should be visible on the dashboard. +{{% alert title="Note" %}} +If other requests have been made then there may be more than one request visible on the dashboard. +{{% / alert %}} + +[Upgrade Promtail]: {{< url path="Cortex.Guides.UpgradeObservability.Cloud.Grafana.UpgradePromtail" >}} +[verifying the old version]: {{< url path="Cortex.Guides.UpgradeObservability.Cloud.Grafana.VerifyOldVersion" >}} diff --git a/content/en/docs/2024.11/Guides/upgrade-observability/cloud/grafana/upgrade-promtail.md b/content/en/docs/2024.11/Guides/upgrade-observability/cloud/grafana/upgrade-promtail.md new file mode 100644 index 000000000..001236749 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-observability/cloud/grafana/upgrade-promtail.md @@ -0,0 +1,75 @@ +--- +title: "Upgrade Promtail" +linkTitle: "Upgrade Promtail" +description: "The steps to upgrade Promtail." +weight: 2 +--- + +# {{% param title %}} + +This guide describes how to upgrade the Promtail installation. Please ensure that the [Prerequisites] for upgrading Observability have been completed before starting this upgrade. + +## Perform Upgrade + +{{% alert title="Note" %}} +These steps will need to be performed on all application servers that host a Promtail service. +{{% / alert %}} + +1. Log in to the application server. +1. Run Windows PowerShell as Administrator. +1. Change the directory to the folder where Promtail is running from, e.g. `cd C:\Program Data\Cortex\Observability\Promtail`. +1. Remove the current Promtail installation by executing the following command: + + ``` powershell + .\Remove-Promtail.ps1 + ``` + +1. Click *Yes* when prompted for confirmation that you wish to remove the service. +1. Click *OK* when the successful removal of the Promtail service is confirmed. +1. Open a File Explorer and navigate to the folder where Promtail was running from, e.g. `C:\Program Data\Cortex\Observability\Promtail` +1. Delete the following files from the directory: + + * Install-Promtail.ps1 + * nssm.exe + * Promtail-local-config.yaml + * Promtail-windows-amd64.exe + * Remove-Promtail.ps1 + * Start-Promtail.ps1 + * Stop-Promtail.ps1 + +1. In File Explorer, navigate to the extracted `promtail-windows-amd64.exe` folder created as part of [Make Artefacts Available][]. +1. Copy the `promtail-windows-amd64.exe` file into the folder that Promtail was previously running from, e.g. `C:\Program Data\Cortex\Observability\Promtail`. +1. In File Explorer, navigate to the extracted `Promtail.Install` folder created as part of [Make Artefacts Available][]. +1. Copy the contents of this location into the folder that Promtail was previously running from, e.g. `C:\Program Data\Cortex\Observability\Promtail`. +1. Open `promtail-local-config.yaml` in a text editor: + + * Update the *filename* property under *positions* to be the value found in the [backed up][] version. + * Update the *url* property under *clients* to be the value found in the [backed up][] version. + * Save the new `promtail-local-config.yaml` file. + +1. Run Windows PowerShell as Administrator. +1. Change the directory to the folder where the Promtail files have been copied to, e.g. `cd C:\Program Data\Cortex\Observability\Promtail`. +1. Install Promtail by executing the following command: + + ``` powershell + .\Install-Promtail.ps1 + ``` + +1. Start the Promtail service by executing the following command: + + ``` powershell + .\Start-Promtail.ps1 + ``` + +1. Check that the Promtail service has installed and started correctly: + * Open Services.msc from the Start menu. + * Locate the *Promtail* service and confirm that it is *Running*. + +## Next Steps? + +1. [Try it out][] + +[backed up]: {{< url path="Cortex.Guides.UpgradeObservability.Cloud.Grafana.BackupOldFiles" >}} +[Make Artefacts Available]: {{< url path="Cortex.Guides.UpgradeObservability.Cloud.Grafana.MakeArtefactsAvailable" >}} +[Prerequisites]: {{< url path="Cortex.Guides.UpgradeObservability.Cloud.Grafana.Prerequisites" >}} +[Try it out]: {{< url path="Cortex.Guides.UpgradeObservability.Cloud.Grafana.TryItOut" >}} diff --git a/content/en/docs/2024.11/Guides/upgrade-observability/dashboards/Grafana/_index.md b/content/en/docs/2024.11/Guides/upgrade-observability/dashboards/Grafana/_index.md new file mode 100644 index 000000000..83fd0b271 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-observability/dashboards/Grafana/_index.md @@ -0,0 +1,6 @@ +--- +title: "Grafana" +linkTitle: "Grafana" +description: "Information about upgrading the default Grafana dashboards for your observability platform." +weight: 1000 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Guides/upgrade-observability/dashboards/Grafana/try-it-out.md b/content/en/docs/2024.11/Guides/upgrade-observability/dashboards/Grafana/try-it-out.md new file mode 100644 index 000000000..09b163023 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-observability/dashboards/Grafana/try-it-out.md @@ -0,0 +1,36 @@ +--- +title: "Try it out" +linkTitle: "Try it out" +description: "Information about trying out the observability platform after upgrading the dashboards." +weight: 3 +--- + +# {{% param title %}} + +## Confirm New Dashboards Display Data + +{{% alert title="Note" %}} +Any flow can be used that exists on the system and can be executed. +{{% / alert %}} + +1. Open a web browser and navigate to your installed {{% ctx %}} Gateway URL, e.g. `https://server.domain.com/gateway`, and log in when prompted. +1. Open a flow that you are able to execute on an ad hoc basis. +1. Start the flow. +1. Once the request has completed, in your web browser, navigate to and log in to your configured Grafana. +1. Open the *Dashboards* page via the menu on the left sidebar. +1. Click the folder name that the dashboards were imported to. +1. Click the *Flow Execution Requests* dashboard to open it. +1. The request made at step 1 should be visible on the dashboard. +{{% alert title="Note" %}} +If other requests have been made then there may be more than one request visible on the dashboard. +{{% / alert %}} +1. Open the *Dashboards* page via the menu on the left sidebar. +1. Click the folder name that the dashboards were imported to. +1. Click the *Platform Health* dashboard to open it. +1. The request made at step 1 should be visible on the dashboard. +{{% alert title="Note" %}} +If other requests have been made then there may be more than one request visible on the dashboard. +{{% / alert %}} + +[Upgrade Promtail]: {{< url path="Cortex.Guides.UpgradeObservability.Cloud.Grafana.UpgradePromtail" >}} +[verifying the old version]: {{< url path="Cortex.Guides.UpgradeObservability.Cloud.Grafana.VerifyOldVersion" >}} diff --git a/content/en/docs/2024.11/Guides/upgrade-observability/dashboards/Grafana/upgrade-dashboards.md b/content/en/docs/2024.11/Guides/upgrade-observability/dashboards/Grafana/upgrade-dashboards.md new file mode 100644 index 000000000..6f95386b5 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-observability/dashboards/Grafana/upgrade-dashboards.md @@ -0,0 +1,40 @@ +--- +title: "Upgrade Dashboards" +linkTitle: "Upgrade Dashboards" +description: "Information about upgrading your Grafana dashboards." +weight: 1 +--- + +# {{% param title %}} + +This guide describes how to upgrade the default dashboards that are provided for your observability platform. + +## Download the Default Dashboards + +1. Download [Grafana.Dashboards.zip][] archive containing the {{% ctx %}} Innovation default dashboards. +1. Extract the content of the downloaded archive to a suitable location. + +## Import New Dashboards + +1. Log in to your configured Grafana with a user that has the *Admin* role. +1. Go to *Dashboards* via the menu on the left sidebar. +1. Click the *New* button and select *Import* from the drop-down menu. +1. Click the *Upload JSON file* button. +1. Locate the `Flow Execution Requests.json` file [extracted][] from the downloaded `Grafana.Dashboards.zip`. +1. Select the file and click *Open*. +{{% alert title="Note" %}} +You will receive warnings that *A dashboard or folder with the same name already exists* and *Dashboard named 'Flow Execution Requests' in folder 'Cortex' has the same UID*. These can be ignored. +{{% / alert %}} + +1. Select the folder in Grafana you wish the dashboard to be saved in, e.g. *Cortex*. +1. Select your configured Loki data source from the dropdown menu. +1. Click *Import (Overwrite)*. +1. Repeat steps 2 - 9 for the `Platform Health.json` file. + +## Next Steps? + +1. [Try it out][] + +[extracted]: {{< url path="Cortex.Guides.UpgradeObservability.Dashboards.Grafana.Download" >}} +[Grafana.Dashboards.zip]: {{< url path="GitHub.Cortex.Observability.3.0.0.GrafanaDashboardsZip" >}} +[Try it out]: {{< url path="Cortex.Guides.UpgradeObservability.Dashboards.Grafana.TryItOut" >}} diff --git a/content/en/docs/2024.11/Guides/upgrade-observability/dashboards/_index.md b/content/en/docs/2024.11/Guides/upgrade-observability/dashboards/_index.md new file mode 100644 index 000000000..4078c1304 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-observability/dashboards/_index.md @@ -0,0 +1,6 @@ +--- +title: "Dashboards" +linkTitle: "Dashboards" +description: "Information about upgrading the default dashboards provided for your observability platform." +weight: 1000 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Guides/upgrade-observability/on-premise/_index.md b/content/en/docs/2024.11/Guides/upgrade-observability/on-premise/_index.md new file mode 100644 index 000000000..59f2ef8fd --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-observability/on-premise/_index.md @@ -0,0 +1,6 @@ +--- +title: "On-Premise" +linkTitle: "On-Premise" +description: "Information about upgrading an on-premise observability platform for {{% ctx %}}." +weight: 1 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Guides/upgrade-observability/on-premise/grafana/_index.md b/content/en/docs/2024.11/Guides/upgrade-observability/on-premise/grafana/_index.md new file mode 100644 index 000000000..0b777445d --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-observability/on-premise/grafana/_index.md @@ -0,0 +1,6 @@ +--- +title: "Grafana" +linkTitle: "Grafana" +description: "Information about upgrading an on-premise Grafana platform for {{% ctx %}}." +weight: 1 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Guides/upgrade-observability/on-premise/grafana/prerequisites.md b/content/en/docs/2024.11/Guides/upgrade-observability/on-premise/grafana/prerequisites.md new file mode 100644 index 000000000..1a7dbf3e1 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-observability/on-premise/grafana/prerequisites.md @@ -0,0 +1,60 @@ +--- +title: "Prerequisites" +linkTitle: "Prerequisites" +description: "The prerequisites required before performing the observability upgrade." +weight: 1 +--- + +# {{% param title %}} + +## Verify Old Version + +1. Navigate to your Grafana website e.g. `https://machinename.domain.com:3000` +1. Make a note of the version number under the login prompt. +1. Login to Grafana. +1. Open the *Dashboards* page via the menu on the left sidebar. +1. Select the folder that hosts the Cortex Dashboards, e.g. *Cortex* +1. Click the *Flow Execution Requests* dashboard to open it. +1. Change the time period to be *Last 90 days* and confirm data is present. +1. Make a note of values returned in the Overview tiles, or alternatively take a screenshot of the dashboard, to use later to verify the upgrade. + +## Make Artefacts Available + +1. Download the required artefacts to a folder on your machine: + + * [Grafana 10.4.1][] Standalone Windows Binaries archive. + * [Grafana Loki 3.0.0][] archive. + * [Grafana Loki Install][] archive. + * [Promtail 3.0.0][] archive. + * [Promtail Install][] archive. + +1. Extract the downloaded `grafana-enterprise-10.4.1.windows-amd64` archive to a folder with the same name. +1. Extract the downloaded `loki-windows-amd64.exe` archive to a folder with the same name. +1. Extract the downloaded `Grafana.Loki.Install` archive to a folder with the same name. +1. Extract the downloaded `promtail-windows-amd64.exe` archive to a folder with the same name. +1. Extract the downloaded `Promtail.Install` archive to a folder with the same name. + +## Backup Old Files + +1. On the server that Grafana and Loki is installed on, create a folder called `Observability Backups` in a known location. +1. Open File Explorer and navigate to the location that Grafana was previously installed to, typically `%SystemDrive%\Program Files\GrafanaLabs\grafana\conf`. +1. Copy the `custom.ini` file and save it to the `Observability Backups` folder created at step 1. +1. Copy the `defaults.ini` file and save it to the `Observability Backups` folder created at step 1. +1. In File Explorer, navigate to the location that Loki is running from, e.g. `C:\Loki\`. +1. Copy the `loki-local-config.yaml` file and save it to the `Observability Backups` folder created at step 1. +1. On each Application Server that Promtail is installed on: + + 1. Create a folder called `Observability Backups` in a known location. + 1. Open File Explorer and navigate to the location that Promtail is running from, e.g. `C:\Promtail`. + 1. Copy the `promtail-local-config.yaml` file and save it to the `Observability Backups` folder created at step 7.1. + +## Next Steps? + +1. [Upgrade Grafana][] + +[Grafana 10.4.1]: {{< url path="Grafana.SelfManaged.Downloads.GrafanaWebApp.10.4.1.Windows" >}} +[Grafana Loki 3.0.0]: {{< url path="Grafana.SelfManaged.Downloads.GrafanaLoki.3.0.0.GrafanaLokiInstallZip" >}} +[Grafana Loki Install]: {{< url path="GitHub.Cortex.Observability.3.0.0.GrafanaLokiInstallZip" >}} +[Promtail 3.0.0]: {{< url path="Grafana.SelfManaged.Downloads.Promtail.3.0.0.PromtailInstallZip" >}} +[Promtail Install]: {{< url path="GitHub.Cortex.Observability.3.0.0.PromtailInstallZip" >}} +[Upgrade Grafana]: {{< url path="Cortex.Guides.UpgradeObservability.OnPremise.Grafana.UpgradeGrafana" >}} diff --git a/content/en/docs/2024.11/Guides/upgrade-observability/on-premise/grafana/try-it-out.md b/content/en/docs/2024.11/Guides/upgrade-observability/on-premise/grafana/try-it-out.md new file mode 100644 index 000000000..3f46dd3c6 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-observability/on-premise/grafana/try-it-out.md @@ -0,0 +1,54 @@ +--- +title: "Try it out" +linkTitle: "Try it out" +description: "Information about trying out the observability platform after upgrade." +weight: 5 +--- + +# {{% param title %}} + +This guide describes how to verify that the upgrade has been successful. Please ensure that [Upgrade Promtail][] has been completed before taking these steps. + +## Confirm Grafana Upgrade + +1. Navigate to your Grafana website e.g. `https://machinename.domain.com:3000`. +1. Identify the version number under the login prompt. +1. Confirm the version has updated to be 10.4.1. + +## Confirm Dashboards Load + +1. Navigate to your Grafana website e.g. `https://machinename.domain.com:3000` +1. Login to Grafana. +1. Open the *Dashboards* page via the menu on the left sidebar. +1. Select the folder that hosts the Cortex Dashboards, e.g. *Cortex* +1. Click the *Flow Execution Requests* dashboard to open it. +1. Change the time period to be *Last 90 days* and confirm data is present. +1. Confirm the data from the previous step is similar to the data captured when [verifying the old version][]. + +## Confirm New Data is Processed + +{{% alert title="Note" %}} +Any flow can be used that exists on the system and can be executed. +{{% / alert %}} + +1. Open a web browser and navigate to your installed {{% ctx %}} Gateway URL, e.g. `https://server.domain.com/gateway`, and log in when prompted. +1. Open a flow that you are able to execute on an ad hoc basis. +1. Start the flow. +1. Once the request has completed, in your web browser, navigate to and log in to your configured Grafana. +1. Open the *Dashboards* page via the menu on the left sidebar. +1. Click the folder name that the dashboards were imported to. +1. Click the *Flow Execution Requests* dashboard to open it. +1. The request made at step 1 should be visible on the dashboard. +{{% alert title="Note" %}} +If other requests have been made then there may be more than one request visible on the dashboard. +{{% / alert %}} +1. Open the *Dashboards* page via the menu on the left sidebar. +1. Click the folder name that the dashboards were imported to. +1. Click the *Platform Health* dashboard to open it. +1. The request made at step 1 should be visible on the dashboard. +{{% alert title="Note" %}} +If other requests have been made then there may be more than one request visible on the dashboard. +{{% / alert %}} + +[Upgrade Promtail]: {{< url path="Cortex.Guides.UpgradeObservability.OnPremise.Grafana.UpgradePromtail" >}} +[verifying the old version]: {{< url path="Cortex.Guides.UpgradeObservability.OnPremise.Grafana.VerifyOldVersion" >}} diff --git a/content/en/docs/2024.11/Guides/upgrade-observability/on-premise/grafana/upgrade-grafana.md b/content/en/docs/2024.11/Guides/upgrade-observability/on-premise/grafana/upgrade-grafana.md new file mode 100644 index 000000000..c60d9a272 --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-observability/on-premise/grafana/upgrade-grafana.md @@ -0,0 +1,31 @@ +--- +title: "Upgrade Grafana" +linkTitle: "Upgrade Grafana" +description: "The steps to upgrade Grafana." +weight: 2 +--- + +# {{% param title %}} + +This guide describes how to upgrade the Grafana installation. Please ensure that the [Prerequisites] for upgrading Observability have been completed before starting this upgrade. + +## Perform Upgrade + +1. Log in to the server hosting your Grafana website. +1. Open Services.msc from the Start menu. +1. Locate the *Grafana* service and stop it by right-clicking on the service and selecting *Stop*. +1. In File Explorer, navigate to the `grafana-enterprise-10.4.1.windows-amd64` folder created as part of [Make Artefacts Available][]. +1. Open the `grafana-v10.4.1` subfolder. +1. Copy the contents of this folder into the Grafana install location, typically `%SystemDrive%\Program Files\GrafanaLabs\grafana`, and click `Replace the files in the destination` when prompted. +1. Copy the [backed up][] `custom.ini` and `defaults.ini` files into the Grafana install configuration location, typically `%SystemDrive%\Program Files\GrafanaLabs\grafana\conf`, and click `Replace the files in the destination` when prompted. +1. Open Services.msc from the Start menu. +1. Locate the *Grafana* service and start it by right-clicking on the service and selecting *Start*. + +## Next Steps? + +1. [Upgrade Loki][] + +[backed up]: {{< url path="Cortex.Guides.UpgradeObservability.OnPremise.Grafana.BackupOldFiles" >}} +[Make Artefacts Available]: {{< url path="Cortex.Guides.UpgradeObservability.OnPremise.Grafana.MakeArtefactsAvailable" >}} +[Prerequisites]: {{< url path="Cortex.Guides.UpgradeObservability.OnPremise.Grafana.Prerequisites" >}} +[Upgrade Loki]: {{< url path="Cortex.Guides.UpgradeObservability.OnPremise.Grafana.UpgradeLoki" >}} diff --git a/content/en/docs/2024.11/Guides/upgrade-observability/on-premise/grafana/upgrade-loki.md b/content/en/docs/2024.11/Guides/upgrade-observability/on-premise/grafana/upgrade-loki.md new file mode 100644 index 000000000..8da4dd9db --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-observability/on-premise/grafana/upgrade-loki.md @@ -0,0 +1,93 @@ +--- +title: "Upgrade Loki" +linkTitle: "Upgrade Loki" +description: "The steps to upgrade Loki." +weight: 3 +--- + +# {{% param title %}} + +This guide describes how to upgrade the Loki installation. Please ensure that the [Grafana Upgrade] has been completed before starting this upgrade. + +## Perform Upgrade + +1. Log in to the server hosting your Loki service. +1. Run Windows PowerShell as Administrator. +1. Change the directory to the folder where Loki is running from, e.g. `cd C:\Program Data\Cortex\Observability\Loki`. +1. Remove the current Loki installation by executing the following command: + + ``` powershell + .\Remove-Loki.ps1 + ``` + +1. Click *Yes* when prompted for confirmation that you wish to remove the service. +1. Click *OK* when the successful removal of the Loki service is confirmed. +1. Open a File Explorer and navigate to the folder where Loki was running from, e.g. `C:\Program Data\Cortex\Observability\Loki`. +1. Delete the following files from the directory: + + * Install-Loki.ps1 + * loki-local-config.yaml + * loki-windows-amd64.exe + * nssm.exe + * Remove-Loki.ps1 + * Start-Loki.ps1 + * Stop-Loki.ps1 + +1. In File Explorer, navigate to the extracted `loki-windows-amd64.exe` folder created as part of [Make Artefacts Available][]. +1. Copy the `loki-windows-amd64.exe` file into the folder that Loki was previously running from, e.g. `C:\Program Data\Cortex\Observability\Loki`. +1. In File Explorer, navigate to the extracted `Grafana.Loki.Install` folder created as part of [Make Artefacts Available][]. +1. Copy the contents of this location into the folder that Loki was previously running from, e.g. `C:\Program Data\Cortex\Observability\Loki`. +1. Open the new `loki-local-config.yaml` file in a text editor and compare against the [backed up][] version. If there are differences between the two files in the *schema_config* > *configs* section: + + 1. In the new file, change the date next to `- from` to be today's date. + 1. Copy the old config section from the backup and add it immediately under *configs* and before the existing `- from ` line ensuring that formatting (including indentations) remain identical to that which is used in the new file. + + The new *schema_config* should result in something similar to: + + ```yaml + schema_config: + configs: + - from: 2020-10-24 + store: boltdb-shipper + object_store: filesystem + schema: v11 + index: + prefix: index_ + period: 24h + - from: 2024-08-29 + store: tsdb + object_store: filesystem + schema: v13 + index: + prefix: index_ + period: 24h + ``` + + 1. Save the new `loki-local-config.yaml` file. + +1. Run Windows PowerShell as Administrator. +1. Change the directory to the folder where the Loki files have been copied to, e.g. `cd C:\Program Data\Cortex\Observability\Loki`. +1. Install Loki by executing the following command: + + ``` powershell + .\Install-Loki.ps1 + ``` + +1. Start the Loki service by executing the following command: + + ``` powershell + .\Start-Loki.ps1 + ``` + +1. Check that the Loki service has installed and started correctly: + * Open Services.msc from the Start menu. + * Locate the *Loki* service and confirm that it is *Running*. + +## Next Steps? + +1. [Upgrade Promtail][] + +[backed up]: {{< url path="Cortex.Guides.UpgradeObservability.OnPremise.Grafana.BackupOldFiles" >}} +[Grafana Upgrade]: {{< url path="Cortex.Guides.UpgradeObservability.OnPremise.Grafana.UpgradeGrafana" >}} +[Make Artefacts Available]: {{< url path="Cortex.Guides.UpgradeObservability.OnPremise.Grafana.MakeArtefactsAvailable" >}} +[Upgrade Promtail]: {{< url path="Cortex.Guides.UpgradeObservability.OnPremise.Grafana.UpgradePromtail" >}} diff --git a/content/en/docs/2024.11/Guides/upgrade-observability/on-premise/grafana/upgrade-promtail.md b/content/en/docs/2024.11/Guides/upgrade-observability/on-premise/grafana/upgrade-promtail.md new file mode 100644 index 000000000..267e2e10b --- /dev/null +++ b/content/en/docs/2024.11/Guides/upgrade-observability/on-premise/grafana/upgrade-promtail.md @@ -0,0 +1,75 @@ +--- +title: "Upgrade Promtail" +linkTitle: "Upgrade Promtail" +description: "The steps to upgrade Promtail." +weight: 4 +--- + +# {{% param title %}} + +This guide describes how to upgrade the Promtail installation. Please ensure that the [Loki Upgrade][] has been completed before starting this upgrade. + +## Perform Upgrade + +{{% alert title="Note" %}} +These steps will need to be performed on all application servers that host a Promtail service. +{{% / alert %}} + +1. Log in to the application server. +1. Run Windows PowerShell as Administrator. +1. Change the directory to the folder where Promtail is running from, e.g. `cd C:\Program Data\Cortex\Observability\Promtail`. +1. Remove the current Promtail installation by executing the following command: + + ``` powershell + .\Remove-Promtail.ps1 + ``` + +1. Click *Yes* when prompted for confirmation that you wish to remove the service. +1. Click *OK* when the successful removal of the Promtail service is confirmed. +1. Open a File Explorer and navigate to the folder where Promtail was running from, e.g. `C:\Program Data\Cortex\Observability\Promtail` +1. Delete the following files from the directory: + + * Install-Promtail.ps1 + * nssm.exe + * Promtail-local-config.yaml + * Promtail-windows-amd64.exe + * Remove-Promtail.ps1 + * Start-Promtail.ps1 + * Stop-Promtail.ps1 + +1. In File Explorer, navigate to the extracted `promtail-windows-amd64.exe` folder created as part of [Make Artefacts Available][]. +1. Copy the `promtail-windows-amd64.exe` file into the folder that Promtail was previously running from, e.g. `C:\Program Data\Cortex\Observability\Promtail`. +1. In File Explorer, navigate to the extracted `Promtail.Install` folder created as part of [Make Artefacts Available][]. +1. Copy the contents of this location into the folder that Promtail was previously running from, e.g. `C:\Program Data\Cortex\Observability\Promtail`. +1. Open the new `promtail-local-config.yaml` in a text editor: + + * Update the *filename* property under *positions* to be the value found in the [backed up][] version. + * Update the *url* property under *clients* to be the value found in the [backed up][] version. + * Save the new `promtail-local-config.yaml` file. + +1. Run Windows PowerShell as Administrator. +1. Change the directory to the folder where the Promtail files have been copied to, e.g. `cd C:\Program Data\Cortex\Observability\Promtail`. +1. Install Promtail by executing the following command: + + ``` powershell + .\Install-Promtail.ps1 + ``` + +1. Start the Promtail service by executing the following command: + + ``` powershell + .\Start-Promtail.ps1 + ``` + +1. Check that the Promtail service has installed and started correctly: + * Open Services.msc from the Start menu. + * Locate the *Promtail* service and confirm that it is *Running*. + +## Next Steps? + +1. [Try it out][] + +[backed up]: {{< url path="Cortex.Guides.UpgradeObservability.OnPremise.Grafana.BackupOldFiles" >}} +[Loki Upgrade]: {{< url path="Cortex.Guides.UpgradeObservability.OnPremise.Grafana.UpgradeLoki" >}} +[Make Artefacts Available]: {{< url path="Cortex.Guides.UpgradeObservability.OnPremise.Grafana.MakeArtefactsAvailable" >}} +[Try it out]: {{< url path="Cortex.Guides.UpgradeObservability.OnPremise.Grafana.TryItOut" >}} diff --git a/content/en/docs/2024.11/Overview/_index.md b/content/en/docs/2024.11/Overview/_index.md new file mode 100644 index 000000000..408a100e8 --- /dev/null +++ b/content/en/docs/2024.11/Overview/_index.md @@ -0,0 +1,87 @@ +--- +title: "Overview" +linkTitle: "Overview" +description: "Find out what the {{% ctx %}} platform is, what it can do, and how you can get started?" +weight: 2 +--- + +## What is {{% ctx %}}? + +### Low-code automation + +{{% ctx %}} is a **[low-code][Studio]**, **automation and orchestration platform**, that enables organisations to graphically **capture** and **automate** anything from simple **tasks**, to interactive **workflows**, to complex IT and business **processes** that span the entire organisation. + +### Enterprise-grade + +Evolved from process and control engineering for mission-critical environments, {{% ctx %}} provides **enterprise-grade** functionality to cover the **full automation lifecycle**; enabling **rapid delivery** of automation **[on-premise][]** or in the **cloud**, from inception to production, **without** the need for **software development experience**. + +### Built for everyone + +{{% ctx %}} is being **built for everyone**, not just software developers, with the goal of **removing barriers** to entry and putting your people at the heart of your automation. + +### Comprehensive functionality + +With a **[comprehensive set of functionality][Blocks]** and interfaces with **3rd party systems** available **out-of-the-box**, it's **[quick and easy to get started][Getting Started]** on your automation journey. + +## What can it do? + +### Deliver quickly + +Using {{% ctx %}}, global organisations have been able to **increase** their **capacity, velocity, quality, efficiency, agility** and **transform** their business and IT **operations in months**. + +### For diverse sets of use cases + +{{% ctx %}} has been deployed for a diverse set of **[use cases][]**, including: + +* Lights out **monitoring** and **management** of fixed-line telephony networks +* Data center **provisioning** +* **Patching** of servers +* IT service **diagnostics** +* **Swivel chair** operations +* Employee **onboarding** and offboarding +* Animal welfare **compliance checks** + +### Resulting in successful outcomes + +{{% ctx %}} has resulted in many successful **outcomes**, including: + +* Increased **revenue** +* Increased **profit** +* **Redeployment** of skilled employees +* Reduction in **MTTR** +* Reduction in **average handling time** + +### Accelerate your digital transformation + +Wherever you are on your automation journey and whatever you are trying to achieve, small or large, simple or complex, {{% ctx %}} can help **accelerate a successful transformation of your operations**. + +## How do I get started? + +||| +|-----------|-------------| +|**[Getting Started][Getting Started]**|Install {{% ctx %}} and start your automation journey today.| +|**[Guides][]**|Learn how to use the various components that make up the {{% ctx %}} platform.| +|**[Tutorials][]**|Explore all of the tutorials for the {{% ctx %}} platform.| +|**[Reference][]**|Browse through the reference documentation, including details about APIs, blocks, data types, exceptions.| +|**[FAQs][]**|Find the answers to your questions.| +|**[Videos][]**|View a range of videos about the {{% ctx %}} platform, automation, strategies and methodologies, as well as industry specific content.| +|**[Engage With Us][Engage With Us]**|Let us help you to get started by reaching out to us. | + +[FAQs]: {{< url path="Cortex.Faqs.MainDoc" >}} + +[Getting Started]: {{< url path="Cortex.GettingStarted.MainDoc" >}} +[on-premise]: {{< url path="Cortex.GettingStarted.OnPremise.MainDoc" >}} + +[Guides]: {{< url path="Cortex.Guides.MainDoc" >}} +[Studio]: {{< url path="Cortex.Guides.Studio.MainDoc" >}} + +[Tutorials]: {{< url path="Cortex.Tutorials.MainDoc" >}} + +[Reference]: {{< url path="Cortex.Reference.MainDoc" >}} +[Blocks]: {{< url path="Cortex.Reference.Blocks.MainDoc" >}} + +[Engage With Us]: {{< url path="Cortex.Website.EngageWithUs.MainDoc" >}} + +[use cases]: {{< url path="Cortex.Website.UseCases.MainDoc" >}} + +[Videos]: {{< url path="Cortex.YouTube.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/APIs/_index.md b/content/en/docs/2024.11/Reference/APIs/_index.md new file mode 100644 index 000000000..c1ff26a3d --- /dev/null +++ b/content/en/docs/2024.11/Reference/APIs/_index.md @@ -0,0 +1,6 @@ +--- +title: "APIs" +linkTitle: "APIs" +description: "This section includes all reference documentation for APIs." +weight: 10 +--- diff --git a/content/en/docs/2024.11/Reference/APIs/cortex-gateway/_index.md b/content/en/docs/2024.11/Reference/APIs/cortex-gateway/_index.md new file mode 100644 index 000000000..d9bbeaffa --- /dev/null +++ b/content/en/docs/2024.11/Reference/APIs/cortex-gateway/_index.md @@ -0,0 +1,8 @@ +--- +title: "CORTEX Gateway" +linkTitle: "CORTEX Gateway" +description: "This section includes all reference documentation for the APIs exposed by {{% ctx %}} Gateway." +weight: 1 +--- + +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Reference/APIs/cortex-innovation/_index.md b/content/en/docs/2024.11/Reference/APIs/cortex-innovation/_index.md new file mode 100644 index 000000000..d5185d02e --- /dev/null +++ b/content/en/docs/2024.11/Reference/APIs/cortex-innovation/_index.md @@ -0,0 +1,6 @@ +--- +title: "CORTEX Innovation" +linkTitle: "CORTEX Innovation" +description: "This section includes all reference documentation for the APIs exposed by the {{% ctx %}} Innovation platform." +weight: 300 +--- diff --git a/content/en/docs/2024.11/Reference/APIs/cortex-innovation/core-application/_index.md b/content/en/docs/2024.11/Reference/APIs/cortex-innovation/core-application/_index.md new file mode 100644 index 000000000..35082aa64 --- /dev/null +++ b/content/en/docs/2024.11/Reference/APIs/cortex-innovation/core-application/_index.md @@ -0,0 +1,6 @@ +--- +title: "Core Application" +linkTitle: "Core Application" +description: "This section includes all reference documentation for the APIs exposed by the Core Application." +weight: 1 +--- diff --git a/content/en/docs/2024.11/Reference/APIs/cortex-innovation/core-application/services/_index.md b/content/en/docs/2024.11/Reference/APIs/cortex-innovation/core-application/services/_index.md new file mode 100644 index 000000000..e144554b5 --- /dev/null +++ b/content/en/docs/2024.11/Reference/APIs/cortex-innovation/core-application/services/_index.md @@ -0,0 +1,6 @@ +--- +title: "Services" +linkTitle: "Services" +description: "This section includes all reference documentation for the APIs exposed by the Core Application Services." +weight: 1 +--- diff --git a/content/en/docs/2024.11/Reference/APIs/cortex-innovation/core-application/services/api-gateway-service/_index.md b/content/en/docs/2024.11/Reference/APIs/cortex-innovation/core-application/services/api-gateway-service/_index.md new file mode 100644 index 000000000..c41056aee --- /dev/null +++ b/content/en/docs/2024.11/Reference/APIs/cortex-innovation/core-application/services/api-gateway-service/_index.md @@ -0,0 +1,8 @@ +--- +title: "API Gateway Service" +linkTitle: "API Gateway Service" +type: swagger +description: "This section includes all reference documentation for the APIs exposed by the API Gateway Service." +--- + +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Reference/APIs/cortex-innovation/core-application/services/licence-management-service/_index.md b/content/en/docs/2024.11/Reference/APIs/cortex-innovation/core-application/services/licence-management-service/_index.md new file mode 100644 index 000000000..d83ca2a97 --- /dev/null +++ b/content/en/docs/2024.11/Reference/APIs/cortex-innovation/core-application/services/licence-management-service/_index.md @@ -0,0 +1,8 @@ +--- +title: "Licence Management Service" +linkTitle: "Licence Management Service" +type: swagger +description: "This section includes all reference documentation for the APIs exposed by the Licence Management Service." +--- + +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Reference/APIs/cortex-innovation/core-application/services/package-management-service/_index.md b/content/en/docs/2024.11/Reference/APIs/cortex-innovation/core-application/services/package-management-service/_index.md new file mode 100644 index 000000000..0e21b7ced --- /dev/null +++ b/content/en/docs/2024.11/Reference/APIs/cortex-innovation/core-application/services/package-management-service/_index.md @@ -0,0 +1,8 @@ +--- +title: "Package Management Service" +linkTitle: "Package Management Service" +type: swagger +description: "This section includes all reference documentation for the APIs exposed by the Package Management Service." +--- + +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Reference/APIs/cortex-innovation/core-application/services/provisioning-service/_index.md b/content/en/docs/2024.11/Reference/APIs/cortex-innovation/core-application/services/provisioning-service/_index.md new file mode 100644 index 000000000..3d4300820 --- /dev/null +++ b/content/en/docs/2024.11/Reference/APIs/cortex-innovation/core-application/services/provisioning-service/_index.md @@ -0,0 +1,8 @@ +--- +title: "Provisioning Service" +linkTitle: "Provisioning Service" +type: swagger +description: "This section includes all reference documentation for the APIs exposed by the Provisioning Service." +--- + +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Reference/APIs/cortex-innovation/execution-application/_index.md b/content/en/docs/2024.11/Reference/APIs/cortex-innovation/execution-application/_index.md new file mode 100644 index 000000000..9e97eb21a --- /dev/null +++ b/content/en/docs/2024.11/Reference/APIs/cortex-innovation/execution-application/_index.md @@ -0,0 +1,6 @@ +--- +title: "Execution Application" +linkTitle: "Execution Application" +description: "This section includes all reference documentation for the APIs exposed by the Execution Application." +weight: 1 +--- diff --git a/content/en/docs/2024.11/Reference/APIs/cortex-innovation/execution-application/services/_index.md b/content/en/docs/2024.11/Reference/APIs/cortex-innovation/execution-application/services/_index.md new file mode 100644 index 000000000..058daec0c --- /dev/null +++ b/content/en/docs/2024.11/Reference/APIs/cortex-innovation/execution-application/services/_index.md @@ -0,0 +1,6 @@ +--- +title: "Services" +linkTitle: "Services" +description: "This section includes all reference documentation for the APIs exposed by the Execution Application Services." +weight: 1 +--- diff --git a/content/en/docs/2024.11/Reference/APIs/cortex-innovation/execution-application/services/execution-service/_index.md b/content/en/docs/2024.11/Reference/APIs/cortex-innovation/execution-application/services/execution-service/_index.md new file mode 100644 index 000000000..b25716e02 --- /dev/null +++ b/content/en/docs/2024.11/Reference/APIs/cortex-innovation/execution-application/services/execution-service/_index.md @@ -0,0 +1,8 @@ +--- +title: "Execution Service" +linkTitle: "Execution Service" +type: swagger +description: "This section includes all reference documentation for the APIs exposed by the Execution Service." +--- + +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Reference/APIs/cortex-studio/_index.md b/content/en/docs/2024.11/Reference/APIs/cortex-studio/_index.md new file mode 100644 index 000000000..930596c18 --- /dev/null +++ b/content/en/docs/2024.11/Reference/APIs/cortex-studio/_index.md @@ -0,0 +1,9 @@ +--- +title: "CORTEX Studio" +linkTitle: "CORTEX Studio" +type: swagger +description: "This section includes all reference documentation for the APIs exposed by {{% ctx %}} Studio." +weight: 100 +--- + +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Dictionaries/_index.md b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/_index.md new file mode 100644 index 000000000..00ec618d3 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/_index.md @@ -0,0 +1,5 @@ +--- +title: "Dictionaries" +linkTitle: "Dictionaries" +description: "Blocks related to working with Dictionaries." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Dictionaries/add-item/_index.md b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/add-item/_index.md new file mode 100644 index 000000000..b2b2a09a8 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/add-item/_index.md @@ -0,0 +1,5 @@ +--- +title: "Add Item(s)" +linkTitle: "Add Item(s)" +description: "Add an item or multiple items to a dictionary." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Dictionaries/add-item/add-item-with-key-block-3.md b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/add-item/add-item-with-key-block-3.md new file mode 100644 index 000000000..698f90fda --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/add-item/add-item-with-key-block-3.md @@ -0,0 +1,172 @@ +--- +title: "Add Item With Key" +linkTitle: "Add Item With Key" +description: "Adds an item to a Dictionary with the specified key." +--- + +{{< figure src="/blocks/Cortex_Blocks_Dictionaries_AddItem_AddItemWithKeyBlock_3.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Dictionaries.AddItem.AddItemWithKeyBlock`3)

+ +## Description + +Adds an [Item][Item Property] to a [Dictionary][Dictionary Property] with the specified [Key][Key Property]. + +## Examples + +### Add an Item to an empty Dictionary + +This example will add `1` to `{}` with a key of `"Key1"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{}` | `($)Dictionary` is a variable of type [IDictionary][]<[dynamic][], [dynamic][]> | +| [Key][Key Property] | `($)Key`, with value `"Key1"` | `($)Key` is a variable of type [String][] | +| [Item][Item Property] | `($)Item`, with value `1` | `($)Item` is a variable of type [Int32][] | + +#### Result + +Adding `1` to `{}` with a key of `"Key1"` results in the variable `($)Dictionary` being updated to the following: + +```json +{"Key1" : 1} +``` + +*** + +### Add an Item to a Dictionary + +This example will add `2` to `{"Key1" : 1}` with a key of `"Key2"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{"Key1" : 1}` | `($)Dictionary` is a variable of type [IDictionary][]<[String][], [Int32][]> | +| [Key][Key Property] | `($)Key`, with value `"Key2"` | `($)Key` is a variable of type [String][] | +| [Item][Item Property] | `($)Item`, with value `2` | `($)Item` is a variable of type [Int32][] | + +#### Result + +Adding `2` to `{"Key1" : 1}` with a key of `"Key2"` results in the variable `($)Dictionary` being updated to the following: + +```json +{"Key1" : 1, "Key2" : 2} +``` + +*** + +## Properties + +### Dictionary + +The [Dictionary][Dictionary Property] where the [Item][Item Property] is added with the specified [Key][Key Property]. + +[Dictionary][Dictionary Property] can be any [IDictionary][]<[TKey][], [TItem][]>, where [TKey][] represents the type of keys used to lookup items in the [Dictionary][Dictionary Property], and [TItem][] represents the type of items in the [Dictionary][Dictionary Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IDictionary][]<[TKey][], [TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Dictionary` with no value | + +### Key + +The [Key][Key Property] to add the [Item][Item Property] with. + +Keys cannot be `null` and must be unique within a dictionary, as they are used to lookup the item they correspond to. + +For information and examples of how it is determined whether a key is already present, please see [Object Equality][]. + +For information about what a key is, please see [Keys][]. + +| | | +|--------------------|---------------------------| +| Data Type | [TKey][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### Item + +The [Item][Item Property] to be added to the [Dictionary][Dictionary Property] with the specified [Key][Key Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [TItem][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [CannotModifyReadOnlyDictionaryException][] | Thrown when [Dictionary][Dictionary Property] is read-only. | +| [InvalidPropertyValueException][] | Thrown when [Item][Item Property] is `null` and [Dictionary][Dictionary Property] only accepts non-nullable value types. See [Value Is Invalid][]. | +| [KeyPresentException][] | Thrown when an item with the specified [Key][Key Property] is already present. | +| [PropertyNullException][] | Thrown when [Dictionary][Dictionary Property] or [Key][Key Property] are `null`. | + +## Remarks + +### Key Equality + +For information and examples of how it is determined whether a key is already present, please see [Object Equality][]. + +### Defining dictionaries using literal syntax + +For information about how to define dictionaries using literal syntax, see [Dictionary Literals][]. + +### Defining dictionaries using expression syntax + +For information about how to define dictionaries using expression syntax, see [Create a Dictionary<TKey, TItem>][]. + +### Dictionaries containing items with same data types vs different data types + +For information about the different types of dictionaries, including those that can contain only the same type of item, and those that can contain different types of item, see [Dictionaries][]. + +[Dictionary Property]: {{< ref "#dictionary" >}} +[Key Property]: {{< ref "#key" >}} +[Item Property]: {{< ref "#item" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Keys]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Keys.MainDoc" >}} + +[Object Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectEquality.MainDoc" >}} + +[Dictionary Literals]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.DictionaryLiteral" >}} +[Create a Dictionary<TKey, TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.CreateNew" >}} +[Dictionaries]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Dictionaries" >}} + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[TKey]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[CannotModifyReadOnlyDictionaryException]: {{< url path="Cortex.Reference.Exceptions.Dictionaries.CannotModifyReadOnlyDictionaryException.MainDoc" >}} + +[InvalidPropertyValueException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.MainDoc" >}} +[Value Is Invalid]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.ValueIsInvalid" >}} + +[KeyPresentException]: {{< url path="Cortex.Reference.Exceptions.Dictionaries.KeyPresentException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IDictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Dictionaries/contains-item/_index.md b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/contains-item/_index.md new file mode 100644 index 000000000..18d91f743 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/contains-item/_index.md @@ -0,0 +1,5 @@ +--- +title: "Contains Item(s)" +linkTitle: "Contains Item(s)" +description: "Check if an item or multiple items are contained in a dictionary." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Dictionaries/contains-item/contains-item-with-key-and-value-block-3.md b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/contains-item/contains-item-with-key-and-value-block-3.md new file mode 100644 index 000000000..03feaaaa9 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/contains-item/contains-item-with-key-and-value-block-3.md @@ -0,0 +1,192 @@ +--- +title: "Contains Item With Key And Value" +linkTitle: "Contains Item With Key And Value" +description: "Checks if a Dictionary contains at least one item with the specified key and matching the specified value." +--- + +{{< figure src="/blocks/Cortex_Blocks_Dictionaries_ContainsItem_ContainsItemWithKeyAndValueBlock_3.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Dictionaries.ContainsItem.ContainsItemWithKeyAndValueBlock`3)

+ +## Description + +Checks if [Dictionary][Dictionary Property] contains at least one item with the specified [Key][Key Property] and matching the specified [Value][Value Property]. + +## Examples + +### Dictionary contains item with Key and Value + +This example will check whether `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` contains at least one item with the key `"Key1"` and value `1`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` | `($)Dictionary` is a variable of type [IDictionary][]<[String][], [Int32][]> | +| [Key][Key Property] | `($)Key`, with value `"Key1"` | `($)Key` is a variable of type [String][] | +| [Value][Value Property] | `($)Value`, with value `1` | `($)Value` is a variable of type [Int32][] | +| [Contains Item][ContainsItem Property] | `($)ContainsItem`, with no value | `($)ContainsItem` is a variable that will be set to a [Boolean][] value | + +#### Result + +`{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` contains one item with the key `Key1` and value `1`. Therefore, the variable `($)ContainsItem` will be updated to the following: + +```json +true +``` + +*** + +### Dictionary does not contain item with Key and Value + +This example will check whether `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` contains at least one item with the key `"Key1"` and value `10`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` | `($)Dictionary` is a variable of type [IDictionary][]<[String][], [Int32][]> | +| [Key][Key Property] | `($)Key`, with value `"Key1"` | `($)Key` is a variable of type [String][] | +| [Value][Value Property] | `($)Value`, with value `10` | `($)Value` is a variable of type [Int32][] | +| [Contains Item][ContainsItem Property] | `($)ContainsItem`, with no value | `($)ContainsItem` is a variable that will be set to a [Boolean][] value | + +#### Result + +`{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` contains one item with the key `"Key1"`, but its value is not `10`. Therefore, the variable `($)ContainsItem` will be updated to the following: + +```json +false +``` + +*** + +## Properties + +### Dictionary + +The [Dictionary][Dictionary Property] to check whether it contains at least one item with the specified [Key][Key Property] and matching [Value][Value Property]. + +[Dictionary][Dictionary Property] can be any [IDictionary][]<[TKey][], [TItem][]>, where [TKey][] represents the type of keys used to lookup items in the [Dictionary][Dictionary Property], and [TItem][] represents the type of items in the [Dictionary][Dictionary Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IDictionary][]<[TKey][], [TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Dictionary` with no value | + +### Key + +The [Key][Key Property] to check for matching items. + +For information and examples of how it is determined whether an item has a specified key, please see [Object Equality][]. + +For information about what a key is, please see [Keys][]. + +| | | +|--------------------|---------------------------| +| Data Type | [TKey][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### Value + +The [Value][Value Property] to check for matching items. + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [TItem][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### Contains Item + +The result of the contains item check. + +If [Dictionary][Dictionary Property] contains at least one item with the specified [Key][Key Property] and matching [Value][Value Property], the specified variable will be set to `true`, otherwise it will be set to `false`. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)ContainsItem` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [InvalidPropertyValueException][] | Thrown when [Value][Value Property] is `null` and [Dictionary][Dictionary Property] only accepts non-nullable value types. See [Value Is Invalid]. | +| [PropertyNullException][] | Thrown when [Dictionary][Dictionary Property] or [Key][Key Property] are `null`. | + +## Remarks + +### Key Equality + +For information and examples of how it is determined whether an item has a specified key, please see [Object Equality][]. + +### Item Equality + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +### Empty Dictionary + +If [Dictionary][Dictionary Property] is empty (i.e. `{}`), the variable specified in the [Contains Item][ContainsItem Property] property is set to `false`. + +### Defining dictionaries using literal syntax + +For information about how to define dictionaries using literal syntax, see [Dictionary Literals][]. + +### Defining dictionaries using expression syntax + +For information about how to define dictionaries using expression syntax, see [Create a Dictionary<TKey, TItem>][]. + +### Dictionaries containing items with same data types vs different data types + +For information about the different types of dictionaries, including those that can contain only the same type of item, and those that can contain different types of item, see [Dictionaries][]. + +[Dictionary Property]: {{< ref "#dictionary" >}} +[Key Property]: {{< ref "#key" >}} +[Value Property]: {{< ref "#value" >}} +[ContainsItem Property]: {{< ref "#contains-item" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Keys]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Keys.MainDoc" >}} + +[Object Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectEquality.MainDoc" >}} + +[Dictionary Literals]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.DictionaryLiteral" >}} +[Create a Dictionary<TKey, TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.CreateNew" >}} +[Dictionaries]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Dictionaries" >}} + +[TKey]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[InvalidPropertyValueException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.MainDoc" >}} +[Value Is Invalid]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.ValueIsInvalid" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IDictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Dictionaries/contains-item/contains-item-with-key-block-3.md b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/contains-item/contains-item-with-key-block-3.md new file mode 100644 index 000000000..bb89338fe --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/contains-item/contains-item-with-key-block-3.md @@ -0,0 +1,167 @@ +--- +title: "Contains Item With Key" +linkTitle: "Contains Item With Key" +description: "Checks if a Dictionary contains at least one item with the specified key." +--- + +{{< figure src="/blocks/Cortex_Blocks_Dictionaries_ContainsItem_ContainsItemWithKeyBlock_3.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Dictionaries.ContainsItem.ContainsItemWithKeyBlock`3)

+ +## Description + +Checks if [Dictionary][Dictionary Property] contains at least one item with the specified [Key][Key Property]. + +## Examples + +### Dictionary contains item with Key + +This example will check whether `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` contains at least one item with the key `"Key1"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` | `($)Dictionary` is a variable of type [IDictionary][]<[String][], [Int32][]> | +| [Key][Key Property] | `($)Key`, with value `"Key1"` | `($)Key` is a variable of type [String][] | +| [Contains Item][ContainsItem Property] | `($)ContainsItem`, with no value | `($)ContainsItem` is a variable that will be set to a [Boolean][] value | + +#### Result + +`{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` contains one item with the key `Key1`. Therefore, the variable `($)ContainsItem` will be updated to the following: + +```json +true +``` + +*** + +### Dictionary does not contain item with Key + +This example will check whether `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` contains at least one item with the key `"Key10"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` | `($)Dictionary` is a variable of type [IDictionary][]<[String][], [Int32][]> | +| [Key][Key Property] | `($)Key`, with value `"Key10"` | `($)Key` is a variable of type [String][] | +| [Contains Item][ContainsItem Property] | `($)ContainsItem`, with no value | `($)ContainsItem` is a variable that will be set to a [Boolean][] value | + +#### Result + +`{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` does not contain any items with the key `"Key10"`. Therefore, the variable `($)ContainsItem` will be updated to the following: + +```json +false +``` + +*** + +## Properties + +### Dictionary + +The [Dictionary][Dictionary Property] to check whether it contains at least one item with the specified [Key][Key Property]. + +[Dictionary][Dictionary Property] can be any [IDictionary][]<[TKey][], [TItem][]>, where [TKey][] represents the type of keys used to lookup items in the [Dictionary][Dictionary Property], and [TItem][] represents the type of items in the [Dictionary][Dictionary Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IDictionary][]<[TKey][], [TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Dictionary` with no value | + +### Key + +The [Key][Key Property] to check for matching items. + +For information and examples of how it is determined whether an item has a specified key, please see [Object Equality][]. + +For information about what a key is, please see [Keys][]. + +| | | +|--------------------|---------------------------| +| Data Type | [TKey][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### Contains Item + +The result of the contains item check. + +If [Dictionary][Dictionary Property] contains at least one item with the specified [Key][Key Property], the specified variable will be set to `true`, otherwise it will be set to `false`. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)ContainsItem` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyNullException][] | Thrown when [Dictionary][Dictionary Property] or [Key][Key Property] are `null`. | + +## Remarks + +### Key Equality + +For information and examples of how it is determined whether an item has a specified key, please see [Object Equality][]. + +### Empty Dictionary + +If [Dictionary][Dictionary Property] is empty (i.e. `{}`), the variable specified in the [Contains Item][ContainsItem Property] property is set to `false`. + +### Defining dictionaries using literal syntax + +For information about how to define dictionaries using literal syntax, see [Dictionary Literals][]. + +### Defining dictionaries using expression syntax + +For information about how to define dictionaries using expression syntax, see [Create a Dictionary<TKey, TItem>][]. + +### Dictionaries containing items with same data types vs different data types + +For information about the different types of dictionaries, including those that can contain only the same type of item, and those that can contain different types of item, see [Dictionaries][]. + +[Dictionary Property]: {{< ref "#dictionary" >}} +[Key Property]: {{< ref "#key" >}} +[ContainsItem Property]: {{< ref "#contains-item" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Keys]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Keys.MainDoc" >}} + +[Object Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectEquality.MainDoc" >}} + +[Dictionary Literals]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.DictionaryLiteral" >}} +[Create a Dictionary<TKey, TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.CreateNew" >}} +[Dictionaries]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Dictionaries" >}} + +[TKey]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IDictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Dictionaries/contains-item/contains-item-with-value-block-3.md b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/contains-item/contains-item-with-value-block-3.md new file mode 100644 index 000000000..b10ad335f --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/contains-item/contains-item-with-value-block-3.md @@ -0,0 +1,169 @@ +--- +title: "Contains Item With Value" +linkTitle: "Contains Item With Value" +description: "Checks if a Dictionary contains at least one item matching the specified value." +--- + +{{< figure src="/blocks/Cortex_Blocks_Dictionaries_ContainsItem_ContainsItemWithValueBlock_3.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Dictionaries.ContainsItem.ContainsItemWithValueBlock`3)

+ +## Description + +Checks if [Dictionary][Dictionary Property] contains at least one item matching [Value][Value Property]. + +## Examples + +### Dictionary contains item with Value + +This example will check whether `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` contains the value `1`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` | `($)Dictionary` is a variable of type [IDictionary][]<[String][], [Int32][]> | +| [Value][Value Property] | `($)Value`, with value `1` | `($)Value` is a variable of type [Int32][] | +| [Contains Item][ContainsItem Property] | `($)ContainsItem`, with no value | `($)ContainsItem` is a variable that will be set to a [Boolean][] value | + +#### Result + +`{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` contains two items with the value `1`. Therefore, the variable `($)ContainsItem` will be updated to the following: + +```json +true +``` + +*** + +### Dictionary does not contain item with Value + +This example will check whether `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` contains the value `10`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` | `($)Dictionary` is a variable of type [IDictionary][]<[String][], [Int32][]> | +| [Value][Value Property] | `($)Value`, with value `10` | `($)Value` is a variable of type [Int32][] | +| [Contains Item][ContainsItem Property] | `($)ContainsItem`, with no value | `($)ContainsItem` is a variable that will be set to a [Boolean][] value | + +#### Result + +`{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` does not contain any items with the value `10`. Therefore, the variable `($)ContainsItem` will be updated to the following: + +```json +false +``` + +*** + +## Properties + +### Dictionary + +The [Dictionary][Dictionary Property] to check whether it contains at least one item matching the specified [Value][Value Property]. + +Items are considered matching if they have the specified [Value][Value Property]. + +[Dictionary][Dictionary Property] can be any [IDictionary][]<[TKey][], [TItem][]>, where [TKey][] represents the type of keys used to lookup items in the [Dictionary][Dictionary Property], and [TItem][] represents the type of items in the [Dictionary][Dictionary Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IDictionary][]<[TKey][], [TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Dictionary` with no value | + +### Value + +The [Value][Value Property] to check for matching items. + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [TItem][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### Contains Item + +The result of the contains item check. + +If [Dictionary][Dictionary Property] contains at least one item matching the specified [Value][Value Property], the specified variable will be set to `true`, otherwise it will be set to `false`. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)ContainsItem` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [InvalidPropertyValueException][] | Thrown when [Value][Value Property] is `null` and [Dictionary][Dictionary Property] only accepts non-nullable value types. See [Value Is Invalid][]. | +| [PropertyNullException][] | Thrown when [Dictionary][Dictionary Property] is `null`. | + +## Remarks + +### Item Equality + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +### Empty Dictionary + +If [Dictionary][Dictionary Property] is empty (i.e. `{}`), the variable specified in the [Contains Item][ContainsItem Property] property is set to `false`. + +### Defining dictionaries using literal syntax + +For information about how to define dictionaries using literal syntax, see [Dictionary Literals][]. + +### Defining dictionaries using expression syntax + +For information about how to define dictionaries using expression syntax, see [Create a Dictionary<TKey, TItem>][]. + +### Dictionaries containing items with same data types vs different data types + +For information about the different types of dictionaries, including those that can contain only the same type of item, and those that can contain different types of item, see [Dictionaries][]. + +[Dictionary Property]: {{< ref "#dictionary" >}} +[Value Property]: {{< ref "#value" >}} +[ContainsItem Property]: {{< ref "#contains-item" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Object Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectEquality.MainDoc" >}} + +[Dictionary Literals]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.DictionaryLiteral" >}} +[Create a Dictionary<TKey, TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.CreateNew" >}} +[Dictionaries]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Dictionaries" >}} + +[TKey]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[InvalidPropertyValueException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.MainDoc" >}} +[Value Is Invalid]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.ValueIsInvalid" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IDictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Dictionaries/contains-item/contains-items-with-keys-block-3.md b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/contains-item/contains-items-with-keys-block-3.md new file mode 100644 index 000000000..28239d5a6 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/contains-item/contains-items-with-keys-block-3.md @@ -0,0 +1,174 @@ +--- +title: "Contains Items With Keys" +linkTitle: "Contains Items With Keys" +description: "Checks if a Dictionary contains at least one item with each of the specified keys." +--- + +{{< figure src="/blocks/Cortex_Blocks_Dictionaries_ContainsItem_ContainsItemsWithKeysBlock_3.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Dictionaries.ContainsItem.ContainsItemsWithKeysBlock`3)

+ +## Description + +Checks if [Dictionary][Dictionary Property] contains at least one item with each of the specified [Keys][Keys Property]. + +## Examples + +### Dictionary contains items with Keys + +This example will check whether `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` contains at least one item with each of the keys in `["Key1", "Key2", "Key3"]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` | `($)Dictionary` is a variable of type [IDictionary][]<[String][], [Int32][]> | +| [Keys][Keys Property] | `($)Keys`, with value `["Key1", "Key2", "Key3"]` | `($)Keys` is a variable of type [IEnumerable][]<[String][]> | +| [Contains Items][ContainsItems Property] | `($)ContainsItems`, with no value | `($)ContainsItems` is a variable that will be set to a [Boolean][] value | + +#### Result + +`{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` contains at least one item matching each of the values in `["Key1", "Key2", "Key3"]`; it contains one item with the key `"Key1"`, one item with the key `"Key2"` and one item with the key `"Key3"`. Therefore, the variable `($)ContainsItems` will be updated to the following: + +```json +true +``` + +*** + +### Dictionary does not contain items with Keys + +This example will check whether `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` contains at least one item with each of the keys in `["Key1", "Key2", "Key3", "Key10"]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` | `($)Dictionary` is a variable of type [IDictionary][]<[String][], [Int32][]> | +| [Keys][Keys Property] | `($)Keys`, with value `["Key1", "Key2", "Key3", "Key10"]` | `($)Keys` is a variable of type [IEnumerable][]<[String][]> | +| [Contains Items][ContainsItems Property] | `($)ContainsItems`, with no value | `($)ContainsItems` is a variable that will be set to a [Boolean][] value | + +#### Result + +`{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` does not contain at least one item matching each of the values in `["Key1", "Key2", "Key3"]`; it contains one item with the key `"Key1"`, one item with the key `"Key2"` and one item with the key `"Key3"`, but no items with the key `"Key10"`. Therefore, the variable `($)ContainsItems` will be updated to the following: + +```json +false +``` + +*** + +## Properties + +### Dictionary + +The [Dictionary][Dictionary Property] to check whether it contains at least one item with each of the specified [Keys][Keys Property]. + +[Dictionary][Dictionary Property] can be any [IDictionary][]<[TKey][], [TItem][]>, where [TKey][] represents the type of keys used to lookup items in the [Dictionary][Dictionary Property], and [TItem][] represents the type of items in the [Dictionary][Dictionary Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IDictionary][]<[TKey][], [TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Dictionary` with no value | + +### Keys + +The [Keys][Keys Property] to check for matching items. + +For information and examples of how it is determined whether an item has a specified key, please see [Object Equality][]. + +For information about what a key is, please see [Keys][]. + +| | | +|--------------------|---------------------------| +| Data Type | [IEnumerable][]<[TKey][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### Contains Items + +The result of the contains items check. + +If [Dictionary][Dictionary Property] contains at least one item with each of the specified [Keys][Keys Property], the specified variable will be set to `true`, otherwise it will be set to `false`. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)ContainsItems` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [ArgumentNullException][] | Thrown when any key in [Keys][Keys Property] is `null`| +| [PropertyNullException][] | Thrown when [Dictionary][Dictionary Property] or [Keys][Keys Property] are `null`. | + +## Remarks + +### Key Equality + +For information and examples of how it is determined whether an item has a specified key, please see [Object Equality][]. + +### Empty Dictionary + +If [Dictionary][Dictionary Property] is empty (i.e. `{}`), the variable specified in the [Contains Items][ContainsItems Property] property is set to `false`. + +### Empty Keys + +If [Keys][Keys Property] is empty (i.e. `[]`), the variable specified in the [Contains Items][ContainsItems Property] property is set to `false`. + +### Defining dictionaries using literal syntax + +For information about how to define dictionaries using literal syntax, see [Dictionary Literals][]. + +### Defining dictionaries using expression syntax + +For information about how to define dictionaries using expression syntax, see [Create a Dictionary<TKey, TItem>][]. + +### Dictionaries containing items with same data types vs different data types + +For information about the different types of dictionaries, including those that can contain only the same type of item, and those that can contain different types of item, see [Dictionaries][]. + +[Dictionary Property]: {{< ref "#dictionary" >}} +[Keys Property]: {{< ref "#keys" >}} +[ContainsItems Property]: {{< ref "#contains-items" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Keys]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Keys.MainDoc" >}} + +[Object Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectEquality.MainDoc" >}} + +[Dictionary Literals]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.DictionaryLiteral" >}} +[Create a Dictionary<TKey, TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.CreateNew" >}} +[Dictionaries]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Dictionaries" >}} + +[TKey]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[ArgumentNullException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentNullException" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IDictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Dictionaries/contains-item/contains-items-with-values-block-3.md b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/contains-item/contains-items-with-values-block-3.md new file mode 100644 index 000000000..f15ec6f13 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/contains-item/contains-items-with-values-block-3.md @@ -0,0 +1,170 @@ +--- +title: "Contains Items With Values" +linkTitle: "Contains Items With Values" +description: "Checks if a Dictionary contains at least one item matching each of the specified values." +--- + +{{< figure src="/blocks/Cortex_Blocks_Dictionaries_ContainsItem_ContainsItemsWithValuesBlock_3.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Dictionaries.ContainsItem.ContainsItemsWithValuesBlock`3)

+ +## Description + +Checks if [Dictionary][Dictionary Property] contains at least one item matching each of the specified [Values][Values Property]. + +## Examples + +### Dictionary contains items with Values + +This example will check whether `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` contains at least one item matching each of the values in `[1, 2, 3]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` | `($)Dictionary` is a variable of type [IDictionary][]<[String][], [Int32][]> | +| [Values][Values Property] | `($)Values`, with value `[1, 2, 3]` | `($)Values` is a variable of type [IEnumerable][]<[Int32][]> | +| [Contains Items][ContainsItems Property] | `($)ContainsItems`, with no value | `($)ContainsItems` is a variable that will be set to a [Boolean][] value | + +#### Result + +`{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` contains at least one item matching each of the values in `[1, 2, 3]`; it contains two items with the value `1`, two items with the value `2` and two items with the value `3`. Therefore, the variable `($)ContainsItems` will be updated to the following: + +```json +true +``` + +*** + +### Dictionary does not contain items with Values + +This example will check whether `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` contains at least one item matching each of the values in `[1, 2, 3, 10]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` | `($)Dictionary` is a variable of type [IDictionary][]<[String][], [Int32][]> | +| [Values][Values Property] | `($)Values`, with value `[1, 2, 3, 10]` | `($)Values` is a variable of type [IEnumerable][]<[Int32][]> | +| [Contains Items][ContainsItems Property] | `($)ContainsItems`, with no value | `($)ContainsItems` is a variable that will be set to a [Boolean][] value | + +#### Result + +`{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` does not contain at least one item matching each of the values in `[1, 2, 3, 10]`; it contains two items with the value `1`, two items with the value `2` and two items with the value `3`, but no items with the value `10`. Therefore, the variable `($)ContainsItems` will be updated to the following: + +```json +false +``` + +*** + +## Properties + +### Dictionary + +The [Dictionary][Dictionary Property] to check whether it contains at least one item matching each of the specified [Values][Values Property]. + +Items are considered matching if they have a value matching one of the specified [Values][Values Property]. + +[Dictionary][Dictionary Property] can be any [IDictionary][]<[TKey][], [TItem][]>, where [TKey][] represents the type of keys used to lookup items in the [Dictionary][Dictionary Property], and [TItem][] represents the type of items in the [Dictionary][Dictionary Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IDictionary][]<[TKey][], [TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Dictionary` with no value | + +### Values + +The [Values][Values Property] to check for matching items. + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [IEnumerable][]<[TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### Contains Items + +The result of the contains items check. + +If [Dictionary][Dictionary Property] contains at least one item matching each of the specified [Values][Values Property], the specified variable will be set to `true`, otherwise it will be set to `false`. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)ContainsItems` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyNullException][] | Thrown when [Dictionary][Dictionary Property] or [Values][Values Property] are `null`. | + +## Remarks + +### Item Equality + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +### Empty Dictionary + +If [Dictionary][Dictionary Property] is empty (i.e. `{}`), the variable specified in the [Contains Items][ContainsItems Property] property is set to `false`. + +### Empty Values + +If [Values][Values Property] is empty (i.e. `[]`), the variable specified in the [Contains Items][ContainsItems Property] property is set to `false`. + +### Defining dictionaries using literal syntax + +For information about how to define dictionaries using literal syntax, see [Dictionary Literals][]. + +### Defining dictionaries using expression syntax + +For information about how to define dictionaries using expression syntax, see [Create a Dictionary<TKey, TItem>][]. + +### Dictionaries containing items with same data types vs different data types + +For information about the different types of dictionaries, including those that can contain only the same type of item, and those that can contain different types of item, see [Dictionaries][]. + +[Dictionary Property]: {{< ref "#dictionary" >}} +[Values Property]: {{< ref "#values" >}} +[ContainsItems Property]: {{< ref "#contains-items" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Object Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectEquality.MainDoc" >}} + +[Dictionary Literals]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.DictionaryLiteral" >}} +[Create a Dictionary<TKey, TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.CreateNew" >}} +[Dictionaries]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Dictionaries" >}} + +[TKey]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IDictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Dictionaries/get-count/_index.md b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/get-count/_index.md new file mode 100644 index 000000000..ec65cd646 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/get-count/_index.md @@ -0,0 +1,5 @@ +--- +title: "Get Count(s) of Items" +linkTitle: "Get Count(s) of Items" +description: "Get the count(s) of items in a dictionary." +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Blocks/Dictionaries/get-count/get-count-of-all-items-block-3.md b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/get-count/get-count-of-all-items-block-3.md new file mode 100644 index 000000000..ea5be2e69 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/get-count/get-count-of-all-items-block-3.md @@ -0,0 +1,116 @@ +--- +title: "Get Count Of All Items" +linkTitle: "Get Count Of All Items" +description: "Gets the count of all items in a Dictionary." +--- + +{{< figure src="/blocks/Cortex_Blocks_Dictionaries_GetCount_GetCountOfAllItemsBlock_3.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Dictionaries.GetCount.GetCountOfAllItemsBlock`3)

+ +## Description + +Gets the [Count][Count Property] of all items in a [Dictionary][Dictionary Property]. + +## Examples + +### Get Count of all items in a Dictionary + +This example will get the count of all items in `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` | `($)Dictionary` is a variable of type [IDictionary][]<[String][], [Int32][]> | +| [Count][Count Property] | `($)Count`, with no value | `($)Count` is a variable that will be set to an [Int32][] value | + +#### Result + +Getting the count of all items in `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` results in the variable `($)Count` being updated to the following: + +```json +6 +``` + +*** + +## Properties + +### Dictionary + +The [Dictionary][Dictionary Property] to get the [Count][Count Property] of all items for. + +[Dictionary][Dictionary Property] can be any [IDictionary][]<[TKey][], [TItem][]>, where [TKey][] represents the type of keys used to lookup items in the [Dictionary][Dictionary Property], and [TItem][] represents the type of items in the [Dictionary][Dictionary Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IDictionary][]<[TKey][], [TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Dictionary` with no value | + +### Count + +The [Count][Count Property] of all items in [Dictionary][Dictionary Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Count` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyNullException][] | Thrown when [Dictionary][Dictionary Property] is `null`. | + +## Remarks + +### Empty Dictionary + +If [Dictionary][Dictionary Property] is empty (i.e. `{}`), the variable specified in the [Count][Count Property] property is set to `0`. + +### Defining dictionaries using literal syntax + +For information about how to define dictionaries using literal syntax, see [Dictionary Literals][]. + +### Defining dictionaries using expression syntax + +For information about how to define dictionaries using expression syntax, see [Create a Dictionary<TKey, TItem>][]. + +### Dictionaries containing items with same data types vs different data types + +For information about the different types of dictionaries, including those that can contain only the same type of item, and those that can contain different types of item, see [Dictionaries][]. + +[Dictionary Property]: {{< ref "#dictionary" >}} +[Count Property]: {{< ref "#count" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Dictionary Literals]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.DictionaryLiteral" >}} +[Create a Dictionary<TKey, TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.CreateNew" >}} +[Dictionaries]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Dictionaries" >}} + +[TKey]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IDictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Dictionaries/get-count/get-count-of-items-with-value-block-3.md b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/get-count/get-count-of-items-with-value-block-3.md new file mode 100644 index 000000000..149466793 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/get-count/get-count-of-items-with-value-block-3.md @@ -0,0 +1,146 @@ +--- +title: "Get Count Of Items With Value" +linkTitle: "Get Count Of Items With Value" +description: "Gets the count of items in a Dictionary with the specified value." +--- + +{{< figure src="/blocks/Cortex_Blocks_Dictionaries_GetCount_GetCountOfItemsWithValueBlock_3.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Dictionaries.GetCount.GetCountOfItemsWithValueBlock`3)

+ +## Description + +Gets the [Count][Count Property] of items in a [Dictionary][Dictionary Property] with the specified [Value][Value Property]. + +## Examples + +### Get Count of items in a Dictionary with a Value + +This example will get the count of items in `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` with the value `1`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` | `($)Dictionary` is a variable of type [IDictionary][]<[String][], [Int32][]> | +| [Value][Value Property] | `($)Value`, with value `1` | `($)Value` is a variable of type [Int32][] | +| [Count][Count Property] | `($)Count`, with no value | `($)Count` is a variable that will be set to an [Int32][] value | + +#### Result + +Getting the count of items in `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` with the value `1` results in the variable `($)Count` being updated to the following: + +```json +2 +``` + +*** + +## Properties + +### Dictionary + +The [Dictionary][Dictionary Property] to get the [Count][Count Property] of items with the specified [Value][Value Property] for. + +[Dictionary][Dictionary Property] can be any [IDictionary][]<[TKey][], [TItem][]>, where [TKey][] represents the type of keys used to lookup items in the [Dictionary][Dictionary Property], and [TItem][] represents the type of items in the [Dictionary][Dictionary Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IDictionary][]<[TKey][], [TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Dictionary` with no value | + +### Value + +The [Value][Value Property] items must match to be included in the [Count][Count Property]. + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [TItem][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### Count + +The [Count][Count Property] of items in [Dictionary][Dictionary Property] with the specified [Value][Value Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Count` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [InvalidPropertyValueException][] | Thrown when [Value][Value Property] is `null` and [Dictionary][Dictionary Property] only accepts non-nullable value types. See [Value Is Invalid][]. | +| [PropertyNullException][] | Thrown when [Dictionary][Dictionary Property] is `null`. | + +## Remarks + +### Item Equality + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +### Empty Dictionary + +If [Dictionary][Dictionary Property] is empty (i.e. `{}`), the variable specified in the [Count][Count Property] property is set to `0`. + +### No items matching Value + +If [Dictionary][Dictionary Property] does not contain items matching the specified [Value][Value Property], the variable specified in the [Count][Count Property] property is set to `0`. + +### Defining dictionaries using literal syntax + +For information about how to define dictionaries using literal syntax, see [Dictionary Literals][]. + +### Defining dictionaries using expression syntax + +For information about how to define dictionaries using expression syntax, see [Create a Dictionary<TKey, TItem>][]. + +### Dictionaries containing items with same data types vs different data types + +For information about the different types of dictionaries, including those that can contain only the same type of item, and those that can contain different types of item, see [Dictionaries][]. + +[Dictionary Property]: {{< ref "#dictionary" >}} +[Value Property]: {{< ref "#value" >}} +[Count Property]: {{< ref "#count" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Dictionary Literals]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.DictionaryLiteral" >}} +[Create a Dictionary<TKey, TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.CreateNew" >}} +[Dictionaries]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Dictionaries" >}} + +[TKey]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[Object Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectEquality.MainDoc" >}} + +[InvalidPropertyValueException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.MainDoc" >}} +[Value Is Invalid]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.ValueIsInvalid" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IDictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Dictionaries/get-count/get-counts-of-items-with-values-block-3.md b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/get-count/get-counts-of-items-with-values-block-3.md new file mode 100644 index 000000000..a95a114ef --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/get-count/get-counts-of-items-with-values-block-3.md @@ -0,0 +1,151 @@ +--- +title: "Get Counts Of Items With Values" +linkTitle: "Get Counts Of Items With Values" +description: "Gets the counts of items in a Dictionary matching each of the specified values." +--- + +{{< figure src="/blocks/Cortex_Blocks_Dictionaries_GetCount_GetCountsOfItemsWithValuesBlock_3.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Dictionaries.GetCount.GetCountsOfItemsWithValuesBlock`3)

+ +## Description + +Gets the [Counts][Counts Property] of items in a [Dictionary][Dictionary Property] matching each of the specified [Values][Values Property]. + +## Examples + +### Get Counts of items in a Dictionary matching each of the Values + +This example will get the counts of items in `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` matching each of the values `[1, 2, 3]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` | `($)Dictionary` is a variable of type [IDictionary][]<[String][], [Int32][]> | +| [Values][Values Property] | `($)Values`, with value `[1, 2, 3]` | `($)Values` is a variable of type [IEnumerable][]<[Int32][]> | +| [Counts][Counts Property] | `($)Counts`, with no value | `($)Counts` is a variable that will be set to an [IList][]<[Int32][]> value | + +#### Result + +Getting the counts of items in `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` matching each of the values `[1, 2, 3]` results in the variable `($)Counts` being updated to the following: + +```json +[2, 2, 2] +``` + +The counts of items matching each value are added to `($)Counts` at the same [index][Indexes] the value is in `($)Values`. In this example, there are two items matching the first value `1`, two items matching the second value `2` and two items matching the third value `3`, resulting in `($)Counts` being set to `[2, 2, 2]`. + +*** + +## Properties + +### Dictionary + +The [Dictionary][Dictionary Property] to get the [Counts][Counts Property] of items matching each of the specified [Values][Values Property] for. + +[Dictionary][Dictionary Property] can be any [IDictionary][]<[TKey][], [TItem][]>, where [TKey][] represents the type of keys used to lookup items in the [Dictionary][Dictionary Property], and [TItem][] represents the type of items in the [Dictionary][Dictionary Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IDictionary][]<[TKey][], [TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Dictionary` with no value | + +### Values + +The [Values][Values Property] items must match to be included in the [Counts][Counts Property]. + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [IEnumerable][]<[TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### Counts + +The [Counts][Counts Property] of items in [Dictionary][Dictionary Property] matching each of the specified [Values][Values Property]. + +For each value in [Values][Values Property], [Counts][Counts Property] will have a corresponding item whose value is the count of items in [Dictionary][Dictionary Property] matching the value. + +I.e. The count of items matching the first value in [Values][Values Property] will be saved as the first item in [Counts][Counts Property]; the count of items matching the second value in [Values][Values Property] will be saved as the second item in [Counts][Counts Property] etc. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[Int32][]> | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Counts` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyNullException][] | Thrown when [Dictionary][Dictionary Property] or [Values][Values Property] are `null`. | + +## Remarks + +### Item Equality + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +### Empty Values + +If [Values][Values Property] is empty (i.e. `[]`), the variable specified in the [Counts][Counts Property] property is set to empty (i.e. `[]`). + +### No items matching a specified value in Values + +If [Dictionary][Dictionary Property] does not contain items matching one of the specified [Values][Values Property], `0` is written to the corresponding item in [Counts][Counts Property] for that value. + +### Defining dictionaries using literal syntax + +For information about how to define dictionaries using literal syntax, see [Dictionary Literals][]. + +### Defining dictionaries using expression syntax + +For information about how to define dictionaries using expression syntax, see [Create a Dictionary<TKey, TItem>][]. + +### Dictionaries containing items with same data types vs different data types + +For information about the different types of dictionaries, including those that can contain only the same type of item, and those that can contain different types of item, see [Dictionaries][]. + +[Dictionary Property]: {{< ref "#dictionary" >}} +[Values Property]: {{< ref "#values" >}} +[Counts Property]: {{< ref "#counts" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Dictionary Literals]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.DictionaryLiteral" >}} +[Create a Dictionary<TKey, TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.CreateNew" >}} +[Dictionaries]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Dictionaries" >}} + +[TKey]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[Object Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectEquality.MainDoc" >}} +[Indexes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Indexes.MainDoc" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IDictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Dictionaries/get-item/_index.md b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/get-item/_index.md new file mode 100644 index 000000000..9a60abac1 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/get-item/_index.md @@ -0,0 +1,5 @@ +--- +title: "Get Item(s)" +linkTitle: "Get Item(s)" +description: "Get an item or multiple items from a dictionary." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Dictionaries/get-item/get-all-items-block-3.md b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/get-item/get-all-items-block-3.md new file mode 100644 index 000000000..694e4c54b --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/get-item/get-all-items-block-3.md @@ -0,0 +1,116 @@ +--- +title: "Get All Items" +linkTitle: "Get All Items" +description: "Gets all items from a Dictionary." +--- + +{{< figure src="/blocks/Cortex_Blocks_Dictionaries_GetItem_GetAllItemsBlock_3.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Dictionaries.GetItem.GetAllItemsBlock`3)

+ +## Description + +Get all [Items][Items Property] from a [Dictionary][Dictionary Property]. + +## Examples + +### Get all items from a Dictionary + +This example will get all items in `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` | `($)Dictionary` is a variable of type [IDictionary][]<[String][], [Int32][]> | +| [Items][Items Property] | `($)Items`, with no value | `($)Items` is a variable that will be set to an [IList][]<[Int32][]> | + +#### Result + +Getting all items from `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` results in the variable `($)Items` being updated to the following: + +```json +[1, 2, 3, 3, 2, 1] +``` + +*** + +## Properties + +### Dictionary + +The [Dictionary][Dictionary Property] to get all [Items][Items Property] from. + +[Dictionary][Dictionary Property] can be any [IDictionary][]<[TKey][], [TItem][]>, where [TKey][] represents the type of keys used to lookup items in the [Dictionary][Dictionary Property], and [TItem][] represents the type of items in the [Dictionary][Dictionary Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IDictionary][]<[TKey][], [TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Dictionary` with no value | + +### Items + +The [Items][Items Property] in the [Dictionary][Dictionary Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Items` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyNullException][] | Thrown when [Dictionary][Dictionary Property] is `null`. | + +## Remarks + +### Empty Dictionary + +If [Dictionary][Dictionary Property] is empty (i.e. `{}`) the variable specified in the [Items][Items Property] property is set to an empty [IList][]<[TItem][]> (i.e. `[]`). + +### Defining dictionaries using literal syntax + +For information about how to define dictionaries using literal syntax, see [Dictionary Literals][]. + +### Defining dictionaries using expression syntax + +For information about how to define dictionaries using expression syntax, see [Create a Dictionary<TKey, TItem>][]. + +### Dictionaries containing items with same data types vs different data types + +For information about the different types of dictionaries, including those that can contain only the same type of item, and those that can contain different types of item, see [Dictionaries][]. + +[Dictionary Property]: {{< ref "#dictionary" >}} +[Items Property]: {{< ref "#items" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Dictionary Literals]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.DictionaryLiteral" >}} +[Create a Dictionary<TKey, TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.CreateNew" >}} +[Dictionaries]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Dictionaries" >}} + +[TKey]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IDictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Dictionaries/get-item/get-item-with-key-block-3.md b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/get-item/get-item-with-key-block-3.md new file mode 100644 index 000000000..ca6314730 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/get-item/get-item-with-key-block-3.md @@ -0,0 +1,202 @@ +--- +title: "Get Item With Key" +linkTitle: "Get Item With Key" +description: "Gets the specified occurrence of an item with the given key from a Dictionary." +--- + +{{< figure src="/blocks/Cortex_Blocks_Dictionaries_GetItem_GetItemWithKeyBlock_3.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Dictionaries.GetItem.GetItemWithKeyBlock`3)

+ +## Description + +Gets the specified [Occurrence][Occurrence Property] of an [Item][Item Property] with the given [Key][Key Property] from a [Dictionary][Dictionary Property]. + +## Examples + +### Get the first Occurrence of an Item with a Key from a Dictionary + +This example will attempt to get the first occurrence of an item with the key `"Key1"` from `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` | `($)Dictionary` is a variable of type [IDictionary][]<[String][], [Int32][]> | +| [Key][Key Property] | `($)Key`, with value `"Key1"` | `($)Key` is a variable of type [String][] | +| [Occurrence][Occurrence Property] | `($)Occurrence`, with value `1` | `($)Occurrence` is a variable of type [Int32][] | +| [Item][Item Property] | `($)Item`, with no value | `($)Item` is a variable that will be set to the type of the item (i.e. [Int32][]) | + +#### Result + +An [Occurrence][Occurrence Property] of `1` means get the first occurrence; `2` means second etc. + +Attempting to get the first occurrence of an item with the key `"Key1"` from `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` results in the variable `($)Item` being updated to the following: + +```json +1 +``` + +*** + +### Get the last Occurrence of an Item with a Key from a Dictionary + +Typically keys are simple data types such as [String][], [Int32][], [Boolean][], and for these a dictionary cannot the same key value more than once. This is due to how the data type's object equality is implemented (two items are considered equal if they have the same value rather than being the same object reference). + +However, other data types such as [IList][]<[Int32][]> can also be used as keys. For these data types, object equality only considers two items equal if they are the same reference; it does not care about whether they have the same value. Therefore, it is possible to have the same key value more than once, and as a result you should be able to get an occurrence of item with that key. + +This example will illustrate this, by attempting to get the last occurrence of an item with the key `[1]` from `{[1] : 1, [2] : 2, [3] : 3, [3] : 3, [2] : 2, [1] : 10}`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{[1] : 1, [2] : 2, [3] : 3, [3] : 3, [2] : 2, [1] : 10}` | `($)Dictionary` is a variable of type [IDictionary][]<[IList][]<[Int32][]>, [Int32][]> | +| [Key][Key Property] | `($)Key`, with value `[1]` | `($)Key` is a variable of type [IList][]<[Int32][]> | +| [Occurrence][Occurrence Property] | `($)Occurrence`, with value `-1` | `($)Occurrence` is a variable of type [Int32][] | +| [Item][Item Property] | `($)Item`, with no value | `($)Item` is a variable that will be set to the type of the item (i.e. [Int32][]) | + +#### Result + +An [Occurrence][Occurrence Property] of `-1` means get the last occurrence; `-2` means second last etc. + +Attempting to get the last occurrence of an item with the key `[1]` from `{[1] : 1, [2] : 2, [3] : 3, [3] : 3, [2] : 2, [1] : 10}` results in the variable `($)Item` being updated to the following: + +```json +10 +``` + +*** + +## Properties + +### Dictionary + +The [Dictionary][Dictionary Property] to get the specified [Occurrence][Occurrence Property] of [Item][Item Property] with the given [Key][Key Property] from. + +[Dictionary][Dictionary Property] can be any [IDictionary][]<[TKey][], [TItem][]>, where [TKey][] represents the type of keys used to lookup items in the [Dictionary][Dictionary Property], and [TItem][] represents the type of items in the [Dictionary][Dictionary Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IDictionary][]<[TKey][], [TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Dictionary` with no value | + +### Key + +The [Key][Key Property] the [Item][Item Property] to get must have. + +For information and examples of how it is determined whether an item has a specified key, please see [Object Equality][]. + +For information about what a key is, please see [Keys][]. + +| | | +|--------------------|---------------------------| +| Data Type | [TKey][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### Occurrence + +The [Occurrence][Occurrence Property] of matching [Item][Item Property] to get from the [Dictionary][Dictionary Property]. + +Items are considered matching if they have the specified [Key][Key Property]. + +Unlike lists, dictionaries do not have a defined order. This means the nth occurrence is determined by the underlying Microsoft .Net implementation; this is not published and could change if the algorithm were to change. + +For information about [supported values][Occurrences] for the [Occurrence][Occurrence Property] property and examples of how it can be used, please see [Occurrences][]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `1` | + +### Item + +The specified [Occurrence][Occurrence Property] of [Item][Item Property] with the given [Key][Key Property] from [Dictionary][Dictionary Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [TItem][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Item` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [KeyNotPresentException][] | Thrown when the [Key][Key Property] is not present in the [Dictionary][Dictionary Property]. | +| [OccurrenceNotPresentException][] | Thrown when the specified [Occurrence][Occurrence Property] of [Item][Item Property] with the given [Key][Key Property] is not present in the [Dictionary][Dictionary Property]. | +| [PropertyNullException][] | Thrown when [Dictionary][Dictionary Property] or [Key][Key Property] are `null`. | + +## Remarks + +### Key Equality + +For information and examples of how it is determined whether a key is already present, please see [Object Equality][]. + +### Occurrences + +Unlike lists, dictionaries do not have a defined order. This means the nth occurrence is determined by the underlying Microsoft .Net implementation; this is not published and could change if the algorithm were to change. + +For information about [supported values][Occurrences] for the [Occurrence][Occurrence Property] property and examples of how it can be used, please see [Occurrences][]. + +### Defining dictionaries using literal syntax + +For information about how to define dictionaries using literal syntax, see [Dictionary Literals][]. + +### Defining dictionaries using expression syntax + +For information about how to define dictionaries using expression syntax, see [Create a Dictionary<TKey, TItem>][]. + +### Dictionaries containing items with same data types vs different data types + +For information about the different types of dictionaries, including those that can contain only the same type of item, and those that can contain different types of item, see [Dictionaries][]. + +[Dictionary Property]: {{< ref "#dictionary" >}} +[Key Property]: {{< ref "#key" >}} +[Occurrence Property]: {{< ref "#occurrence" >}} +[Item Property]: {{< ref "#item" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Keys]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Keys.MainDoc" >}} +[Object Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectEquality.MainDoc" >}} +[Occurrences]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Occurrences.MainDoc" >}} + +[Dictionary Literals]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.DictionaryLiteral" >}} +[Create a Dictionary<TKey, TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.CreateNew" >}} +[Dictionaries]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Dictionaries" >}} + +[TKey]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[KeyNotPresentException]: {{< url path="Cortex.Reference.Exceptions.Dictionaries.KeyNotPresentException.MainDoc" >}} +[OccurrenceNotPresentException]: {{< url path="Cortex.Reference.Exceptions.Collections.OccurrenceNotPresentException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IDictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Dictionaries/get-item/get-items-with-key-block-3.md b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/get-item/get-items-with-key-block-3.md new file mode 100644 index 000000000..e72a62b5c --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/get-item/get-items-with-key-block-3.md @@ -0,0 +1,145 @@ +--- +title: "Get Items With Key" +linkTitle: "Get Items With Key" +description: "Gets all items with the given key from a Dictionary." +--- + +{{< figure src="/blocks/Cortex_Blocks_Dictionaries_GetItem_GetItemsWithKeyBlock_3.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Dictionaries.GetItem.GetItemsWithKeyBlock`3)

+ +## Description + +Gets all [Items][Items Property] with the given [Key][Key Property] from a [Dictionary][Dictionary Property]. + +## Examples + +### Get all Items with a Key from a Dictionary + +Typically keys are simple data types such as [String][], [Int32][], [Boolean][], and for these a dictionary cannot the same key value more than once. This is due to how the data type's object equality is implemented (two items are considered equal if they have the same value rather than being the same object reference). + +However, other data types such as [IList][]<[Int32][]> can also be used as keys. For these data types, object equality only considers two items equal if they are the same reference; it does not care about whether they have the same value. Therefore, it is possible to have the same key value more than once, and as a result you should be able to get all items with that key. + +This example will illustrate this, by attempting to get all items with the key `[1]` from `{[1] : 1, [2] : 2, [3] : 3, [3] : 3, [2] : 2, [1] : 10}`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{[1] : 1, [2] : 2, [3] : 3, [3] : 3, [2] : 2, [1] : 10}` | `($)Dictionary` is a variable of type [IDictionary][]<[IList][]<[Int32][]>, [Int32][]> | +| [Key][Key Property] | `($)Key`, with value `[1]` | `($)Key` is a variable of type [IList][]<[Int32][]> | +| [Items][Items Property] | `($)Items`, with no value | `($)Items` is a variable that will be set to an [IList][]<[Int32][]> | + +#### Result + +Attempting to get all items with the key `[1]` from `{[1] : 1, [2] : 2, [3] : 3, [3] : 3, [2] : 2, [1] : 10}` results in the variable `($)Items` being updated to the following: + +```json +[1, 10] +``` + +*** + +## Properties + +### Dictionary + +The [Dictionary][Dictionary Property] to get all [Items][Items Property] with the given [Key][Key Property] from. + +[Dictionary][Dictionary Property] can be any [IDictionary][]<[TKey][], [TItem][]>, where [TKey][] represents the type of keys used to lookup items in the [Dictionary][Dictionary Property], and [TItem][] represents the type of items in the [Dictionary][Dictionary Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IDictionary][]<[TKey][], [TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Dictionary` with no value | + +### Key + +The [Key][Key Property] the [Items][Items Property] to get must have. + +For information and examples of how it is determined whether an item has a specified key, please see [Object Equality][]. + +For information about what a key is, please see [Keys][]. + +| | | +|--------------------|---------------------------| +| Data Type | [TKey][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### Items + +All [Items][Items Property] with the given [Key][Key Property] in [Dictionary][Dictionary Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Items` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [KeyNotPresentException][] | Thrown when the [Key][Key Property] is not present in the [Dictionary][Dictionary Property]. | +| [PropertyNullException][] | Thrown when [Dictionary][Dictionary Property] or [Key][Key Property] are `null`. | + +## Remarks + +### Key Equality + +For information and examples of how it is determined whether a key is already present, please see [Object Equality][]. + +### Defining dictionaries using literal syntax + +For information about how to define dictionaries using literal syntax, see [Dictionary Literals][]. + +### Defining dictionaries using expression syntax + +For information about how to define dictionaries using expression syntax, see [Create a Dictionary<TKey, TItem>][]. + +### Dictionaries containing items with same data types vs different data types + +For information about the different types of dictionaries, including those that can contain only the same type of item, and those that can contain different types of item, see [Dictionaries][]. + +[Dictionary Property]: {{< ref "#dictionary" >}} +[Key Property]: {{< ref "#key" >}} +[Items Property]: {{< ref "#items" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Keys]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Keys.MainDoc" >}} +[Object Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectEquality.MainDoc" >}} + +[Dictionary Literals]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.DictionaryLiteral" >}} +[Create a Dictionary<TKey, TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.CreateNew" >}} +[Dictionaries]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Dictionaries" >}} + +[TKey]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[KeyNotPresentException]: {{< url path="Cortex.Reference.Exceptions.Dictionaries.KeyNotPresentException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IDictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Dictionaries/get-key/_index.md b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/get-key/_index.md new file mode 100644 index 000000000..d0504c442 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/get-key/_index.md @@ -0,0 +1,5 @@ +--- +title: "Get Key(s)" +linkTitle: "Get Key(s)" +description: "Get a key or multiple keys from a dictionary." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Dictionaries/get-key/get-all-keys-block-3.md b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/get-key/get-all-keys-block-3.md new file mode 100644 index 000000000..3486432e2 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/get-key/get-all-keys-block-3.md @@ -0,0 +1,116 @@ +--- +title: "Get All Keys" +linkTitle: "Get All Keys" +description: "Gets all keys from a Dictionary." +--- + +{{< figure src="/blocks/Cortex_Blocks_Dictionaries_GetKey_GetAllKeysBlock_3.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Dictionaries.GetKey.GetAllKeysBlock`3)

+ +## Description + +Get all [Keys][Keys Property] from a [Dictionary][Dictionary Property]. + +## Examples + +### Get all keys from a Dictionary + +This example will get all keys in `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` | `($)Dictionary` is a variable of type [IDictionary][]<[String][], [Int32][]> | +| [Keys][Keys Property] | `($)Keys`, with no value | `($)Keys` is a variable that will be set to an [IList][]<[String][]> | + +#### Result + +Getting all keys from `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` results in the variable `($)Keys` being updated to the following: + +```json +["Key1", "Key2", "Key3", "Key4", "Key5", "Key6"] +``` + +*** + +## Properties + +### Dictionary + +The [Dictionary][Dictionary Property] to get all [Keys][Keys Property] from. + +[Dictionary][Dictionary Property] can be any [IDictionary][]<[TKey][], [TItem][]>, where [TKey][] represents the type of keys used to lookup items in the [Dictionary][Dictionary Property], and [TItem][] represents the type of items in the [Dictionary][Dictionary Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IDictionary][]<[TKey][], [TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Dictionary` with no value | + +### Keys + +The [Keys][Keys Property] in the [Dictionary][Dictionary Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TKey][]> | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Keys` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyNullException][] | Thrown when [Dictionary][Dictionary Property] is `null`. | + +## Remarks + +### Empty Dictionary + +If [Dictionary][Dictionary Property] is empty (i.e. `{}`) the variable specified in the [Keys][Keys Property] property is set to an empty [IList][]<[TKey][]> (i.e. `[]`). + +### Defining dictionaries using literal syntax + +For information about how to define dictionaries using literal syntax, see [Dictionary Literals][]. + +### Defining dictionaries using expression syntax + +For information about how to define dictionaries using expression syntax, see [Create a Dictionary<TKey, TItem>][]. + +### Dictionaries containing items with same data types vs different data types + +For information about the different types of dictionaries, including those that can contain only the same type of item, and those that can contain different types of item, see [Dictionaries][]. + +[Dictionary Property]: {{< ref "#dictionary" >}} +[Keys Property]: {{< ref "#keys" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Dictionary Literals]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.DictionaryLiteral" >}} +[Create a Dictionary<TKey, TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.CreateNew" >}} +[Dictionaries]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Dictionaries" >}} + +[TKey]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IDictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Dictionaries/remove-item/_index.md b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/remove-item/_index.md new file mode 100644 index 000000000..a516b96dd --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/remove-item/_index.md @@ -0,0 +1,5 @@ +--- +title: "Remove Item(s)" +linkTitle: "Remove Item(s)" +description: "Remove an item or multiple items from a dictionary." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Dictionaries/remove-item/remove-all-items-block-3.md b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/remove-item/remove-all-items-block-3.md new file mode 100644 index 000000000..cbcf93b83 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/remove-item/remove-all-items-block-3.md @@ -0,0 +1,121 @@ +--- +title: "Remove All Items" +linkTitle: "Remove All Items" +description: "Removes all items from a Dictionary." +--- + +{{< figure src="/blocks/Cortex_Blocks_Dictionaries_RemoveItem_RemoveAllItemsBlock_3.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Dictionaries.RemoveItem.RemoveAllItemsBlock`3)

+ +## Description + +Removes all items from a [Dictionary][Dictionary Property]. + +## Examples + +### Remove all items from an empty Dictionary + +This example will attempt to remove all items from `{}`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{}` | `($)Dictionary` is a variable of type [IDictionary][]<[dynamic][], [dynamic][]> | + +#### Result + +Attempting to remove all items from `{}` results in no operation, as there is nothing to remove. Therefore, the variable `($)Dictionary` remains: + +```json +{} +``` + +*** + +### Remove all items from a Dictionary + +This example will remove all items from `{"Key1" : 1, "Key2" : 2}`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{"Key1" : 1, "Key2" : 2}` | `($)Dictionary` is a variable of type [IDictionary][]<[String][], [Int32][]> | + +#### Result + +Removing all items from `{"Key1" : 1, "Key2" : 2}` results in the variable `($)Dictionary` being updated to the following: + +```json +{} +``` + +*** + +## Properties + +### Dictionary + +The [Dictionary][Dictionary Property] where all items are removed from. + +[Dictionary][Dictionary Property] can be any [IDictionary][]<[TKey][], [TItem][]>, where [TKey][] represents the type of keys used to lookup items in the [Dictionary][Dictionary Property], and [TItem][] represents the type of items in the [Dictionary][Dictionary Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IDictionary][]<[TKey][], [TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Dictionary` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [CannotModifyReadOnlyDictionaryException][] | Thrown when [Dictionary][Dictionary Property] is read-only. | +| [PropertyNullException][] | Thrown when [Dictionary][Dictionary Property] is `null`. | + +## Remarks + +### Empty Dictionary + +If [Dictionary][Dictionary Property] is empty (i.e. `{}`) there is nothing to remove, so no operation is performed. + +### Defining dictionaries using literal syntax + +For information about how to define dictionaries using literal syntax, see [Dictionary Literals][]. + +### Defining dictionaries using expression syntax + +For information about how to define dictionaries using expression syntax, see [Create a Dictionary<TKey, TItem>][]. + +### Dictionaries containing items with same data types vs different data types + +For information about the different types of dictionaries, including those that can contain only the same type of item, and those that can contain different types of item, see [Dictionaries][]. + +[Dictionary Property]: {{< ref "#dictionary" >}} + +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Dictionary Literals]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.DictionaryLiteral" >}} +[Create a Dictionary<TKey, TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.CreateNew" >}} +[Dictionaries]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Dictionaries" >}} + +[TKey]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[CannotModifyReadOnlyDictionaryException]: {{< url path="Cortex.Reference.Exceptions.Dictionaries.CannotModifyReadOnlyDictionaryException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IDictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Dictionaries/remove-item/remove-item-with-key-block-3.md b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/remove-item/remove-item-with-key-block-3.md new file mode 100644 index 000000000..5fc75bc2f --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/remove-item/remove-item-with-key-block-3.md @@ -0,0 +1,216 @@ +--- +title: "Remove Item With Key" +linkTitle: "Remove Item With Key" +description: "Removes the specified occurrence of an item with the given key from a Dictionary." +--- + +{{< figure src="/blocks/Cortex_Blocks_Dictionaries_RemoveItem_RemoveItemWithKeyBlock_3.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Dictionaries.RemoveItem.RemoveItemWithKeyBlock`3)

+ +## Description + +Removes the specified [Occurrence][Occurrence Property] of an item with the given [Key][Key Property] from a [Dictionary][Dictionary Property]. + +## Examples + +### Remove the first Occurrence of an item with a Key from an empty Dictionary + +This example will attempt to remove the first occurrence of an item with the key `"Key1"` from `{}`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{}` | `($)Dictionary` is a variable of type [IDictionary][]<[dynamic][], [dynamic][]> | +| [Key][Key Property] | `($)Key`, with value `"Key1"` | `($)Key` is a variable of type [String][] | +| [Occurrence][Occurrence Property] | `($)Occurrence`, with value `1` | `($)Occurrence` is a variable of type [Int32][] | + +#### Result + +Attempting to remove the first occurrence of an item with the key `"Key1"` from `{}` results in no operation, as there is nothing to remove. Therefore, the variable `($)Dictionary` remains: + +```json +{} +``` + +*** + +### Remove the first Occurrence of an item with a Key from a Dictionary + +This example will attempt to remove the first occurrence of an item with the key `"Key1"` from `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` | `($)Dictionary` is a variable of type [IDictionary][]<[String][], [Int32][]> | +| [Key][Key Property] | `($)Key`, with value `"Key1"` | `($)Key` is a variable of type [String][] | +| [Occurrence][Occurrence Property] | `($)Occurrence`, with value `1` | `($)Occurrence` is a variable of type [Int32][] | + +#### Result + +An [Occurrence][Occurrence Property] of `1` means remove the first occurrence; `2` means second etc. + +Attempting to remove the first occurrence of an item with the key `"Key1"` from `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` results in the variable `($)Dictionary` being updated to the following: + +```json +{"Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1} +``` + +*** + +### Remove the last Occurrence of an item with a Key from a Dictionary + +Typically keys are simple data types such as [String][], [Int32][], [Boolean][], and for these a dictionary cannot the same key value more than once. This is due to how the data type's object equality is implemented (two items are considered equal if they have the same value rather than being the same object reference). + +However, other data types such as [IList][]<[Int32][]> can also be used as keys. For these data types, object equality only considers two items equal if they are the same reference; it does not care about whether they have the same value. Therefore, it is possible to have the same key value more than once, and as a result you should be able to remove any occurrence of item with that key. + +This example will illustrate this, by attempting to remove the last occurrence of an item with the key `[1]` from `{[1] : 1, [2] : 2, [3] : 3, [3] : 3, [2] : 2, [1] : 1}`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{[1] : 1, [2] : 2, [3] : 3, [3] : 3, [2] : 2, [1] : 1}` | `($)Dictionary` is a variable of type [IDictionary][]<[IList][]<[Int32][]>, [Int32][]> | +| [Key][Key Property] | `($)Key`, with value `[1]` | `($)Key` is a variable of type [IList][]<[Int32][]> | +| [Occurrence][Occurrence Property] | `($)Occurrence`, with value `-1` | `($)Occurrence` is a variable of type [Int32][] | + +#### Result + +An [Occurrence][Occurrence Property] of `-1` means remove the last occurrence; `-2` means second last etc. + +Attempting to remove the last occurrence of an item with the key `[1]` from `{[1] : 1, [2] : 2, [3] : 3, [3] : 3, [2] : 2, [1] : 1}` results in the variable `($)Dictionary` being updated to the following: + +```csharp +{[1] : 1, [2] : 2, [3] : 3, [3] : 3, [2] : 2} +``` + +*** + +## Properties + +### Dictionary + +The [Dictionary][Dictionary Property] to remove the specified [Occurrence][Occurrence Property] of item with the given [Key][Key Property] from. + +[Dictionary][Dictionary Property] can be any [IDictionary][]<[TKey][], [TItem][]>, where [TKey][] represents the type of keys used to lookup items in the [Dictionary][Dictionary Property], and [TItem][] represents the type of items in the [Dictionary][Dictionary Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IDictionary][]<[TKey][], [TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Dictionary` with no value | + +### Key + +The [Key][Key Property] the item to remove must have. + +For information and examples of how it is determined whether an item has a specified key, please see [Object Equality][]. + +For information about what a key is, please see [Keys][]. + +| | | +|--------------------|---------------------------| +| Data Type | [TKey][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### Occurrence + +The [Occurrence][Occurrence Property] of matching item to remove from the [Dictionary][Dictionary Property]. + +Items are considered matching if they have the specified [Key][Key Property]. + +Unlike lists, dictionaries do not have a defined order. This means the nth occurrence is determined by the underlying Microsoft .Net implementation; this is not published and could change if the algorithm were to change. + +For information about [supported values][Occurrences] for the [Occurrence][Occurrence Property] property and examples of how it can be used, please see [Occurrences][]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `1` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [CannotModifyReadOnlyDictionaryException][] | Thrown when [Dictionary][Dictionary Property] is read-only. | +| [PropertyNullException][] | Thrown when [Dictionary][Dictionary Property] or [Key][Key Property] are `null`. | + +## Remarks + +### Key Equality + +For information and examples of how it is determined whether a key is already present, please see [Object Equality][]. + +### Occurrences + +Unlike lists, dictionaries do not have a defined order. This means the nth occurrence is determined by the underlying Microsoft .Net implementation; this is not published and could change if the algorithm were to change. + +For information about [supported values][Occurrences] for the [Occurrence][Occurrence Property] property and examples of how it can be used, please see [Occurrences][]. + +### Empty Dictionary + +If [Dictionary][Dictionary Property] is empty (i.e. `{}`) there is nothing to remove, so no operation is performed. + +### No items with given Key, or Occurrence is not present + +If [Dictionary][Dictionary Property] does not contain items with the given [Key][Key Property] or the specified [Occurrence][Occurrence Property] is not present, there is nothing to remove, so no operation is performed. + +### Defining dictionaries using literal syntax + +For information about how to define dictionaries using literal syntax, see [Dictionary Literals][]. + +### Defining dictionaries using expression syntax + +For information about how to define dictionaries using expression syntax, see [Create a Dictionary<TKey, TItem>][]. + +### Dictionaries containing items with same data types vs different data types + +For information about the different types of dictionaries, including those that can contain only the same type of item, and those that can contain different types of item, see [Dictionaries][]. + +[Dictionary Property]: {{< ref "#dictionary" >}} +[Key Property]: {{< ref "#key" >}} +[Occurrence Property]: {{< ref "#occurrence" >}} + +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[Keys]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Keys.MainDoc" >}} +[Object Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectEquality.MainDoc" >}} +[Occurrences]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Occurrences.MainDoc" >}} + +[Dictionary Literals]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.DictionaryLiteral" >}} +[Create a Dictionary<TKey, TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.CreateNew" >}} +[Dictionaries]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Dictionaries" >}} + +[TKey]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[CannotModifyReadOnlyDictionaryException]: {{< url path="Cortex.Reference.Exceptions.Dictionaries.CannotModifyReadOnlyDictionaryException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IDictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Dictionaries/remove-item/remove-item-with-value-block-3.md b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/remove-item/remove-item-with-value-block-3.md new file mode 100644 index 000000000..aa9ff35fb --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/remove-item/remove-item-with-value-block-3.md @@ -0,0 +1,213 @@ +--- +title: "Remove Item With Value" +linkTitle: "Remove Item With Value" +description: "Removes the specified occurrence of an item matching a value from a Dictionary." +--- + +{{< figure src="/blocks/Cortex_Blocks_Dictionaries_RemoveItem_RemoveItemWithValueBlock_3.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Dictionaries.RemoveItem.RemoveItemWithValueBlock`3)

+ +## Description + +Removes the specified [Occurrence][Occurrence Property] of an item matching a [Value][Value Property] from a [Dictionary][Dictionary Property]. + +## Examples + +### Remove the first Occurrence of an item matching a Value from an empty Dictionary + +This example will attempt to remove the first occurrence of an item matching the value `1` from `{}`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{}` | `($)Dictionary` is a variable of type [IDictionary][]<[dynamic][], [dynamic][]> | +| [Value][Value Property] | `($)Value`, with value `1` | `($)Value` is a variable of type [Int32][] | +| [Occurrence][Occurrence Property] | `($)Occurrence`, with value `1` | `($)Occurrence` is a variable of type [Int32][] | + +#### Result + +Attempting to remove the first occurrence of an item matching the value `1` from `{}` results in no operation, as there is nothing to remove. Therefore, the variable `($)Dictionary` remains: + +```json +{} +``` + +*** + +### Remove the first Occurrence of an item matching a Value from a Dictionary + +This example will attempt to remove the first occurrence of an item matching the value `1` from `{"Key1" : 1, "Key2" : 1}`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{"Key1" : 1, "Key2" : 1}` | `($)Dictionary` is a variable of type [IDictionary][]<[String][], [Int32][]> | +| [Value][Value Property] | `($)Value`, with value `1` | `($)Value` is a variable of type [Int32][] | +| [Occurrence][Occurrence Property] | `($)Occurrence`, with value `1` | `($)Occurrence` is a variable of type [Int32][] | + +#### Result + +An [Occurrence][Occurrence Property] of `1` means remove the first occurrence; `2` means second etc. + +Attempting to remove the first occurrence of an item matching the value `1` from `{"Key1" : 1, "Key2" : 1}` results in the variable `($)Dictionary` being updated to the following: + +```json +{"Key2" : 1} +``` + +*** + +### Remove the last Occurrence of an item matching a Value from a Dictionary + +This example will attempt to remove the last occurrence of an item matching the value `1` from `{"Key1" : 1, "Key2" : 1}`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{"Key1" : 1, "Key2" : 1}` | `($)Dictionary` is a variable of type [IDictionary][]<[String][], [Int32][]> | +| [Value][Value Property] | `($)Value`, with value `1` | `($)Value` is a variable of type [Int32][] | +| [Occurrence][Occurrence Property] | `($)Occurrence`, with value `-1` | `($)Occurrence` is a variable of type [Int32][] | + +#### Result + +An [Occurrence][Occurrence Property] of `-1`, means remove the last occurrence; `-2` means second last etc. + +Attempting to remove the last occurrence of an item matching the value `1` from `{"Key1" : 1, "Key2" : 1}` results in the variable `($)Dictionary` being updated to the following: + +```json +{"Key1" : 1} +``` + +*** + +## Properties + +### Dictionary + +The [Dictionary][Dictionary Property] to remove the specified [Occurrence][Occurrence Property] of matching item from. + +Items are considered matching if they have the specified [Value][Value Property]. + +[Dictionary][Dictionary Property] can be any [IDictionary][]<[TKey][], [TItem][]>, where [TKey][] represents the type of keys used to lookup items in the [Dictionary][Dictionary Property], and [TItem][] represents the type of items in the [Dictionary][Dictionary Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IDictionary][]<[TKey][], [TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Dictionary` with no value | + +### Value + +The [Value][Value Property] the item to remove must match. + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [TItem][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### Occurrence + +The [Occurrence][Occurrence Property] of matching item to remove from the [Dictionary][Dictionary Property]. + +Items are considered matching if they have the specified [Value][Value Property]. + +Unlike lists, dictionaries do not have a defined order. This means the nth occurrence is determined by the underlying Microsoft .Net implementation; this is not published and could change if the algorithm were to change. + +For information about [supported values][Occurrences] for the [Occurrence][Occurrence Property] property and examples of how it can be used, please see [Occurrences][]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `1` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [CannotModifyReadOnlyDictionaryException][] | Thrown when [Dictionary][Dictionary Property] is read-only. | +| [InvalidPropertyValueException][] | Thrown when [Value][Value Property] is `null` and [Dictionary][Dictionary Property] only accepts non-nullable value types. See [Value Is Invalid][]. | +| [PropertyNullException][] | Thrown when [Dictionary][Dictionary Property] is `null`. | + +## Remarks + +### Item Equality + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +### Occurrences + +Unlike lists, dictionaries do not have a defined order. This means the nth occurrence is determined by the underlying Microsoft .Net implementation; this is not published and could change if the algorithm were to change. + +For information about [supported values][Occurrences] for the [Occurrence][Occurrence Property] property and examples of how it can be used, please see [Occurrences][]. + +### Empty Dictionary + +If [Dictionary][Dictionary Property] is empty (i.e. `{}`) there is nothing to remove, so no operation is performed. + +### No items matching Value, or Occurrence is not present + +If [Dictionary][Dictionary Property] does not contain items matching the specified [Value][Value Property] or the specified [Occurrence][Occurrence Property] is not present, there is nothing to remove, so no operation is performed. + +### Defining dictionaries using literal syntax + +For information about how to define dictionaries using literal syntax, see [Dictionary Literals][]. + +### Defining dictionaries using expression syntax + +For information about how to define dictionaries using expression syntax, see [Create a Dictionary<TKey, TItem>][]. + +### Dictionaries containing items with same data types vs different data types + +For information about the different types of dictionaries, including those that can contain only the same type of item, and those that can contain different types of item, see [Dictionaries][]. + +[Dictionary Property]: {{< ref "#dictionary" >}} +[Value Property]: {{< ref "#value" >}} +[Occurrence Property]: {{< ref "#occurrence" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Object Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectEquality.MainDoc" >}} +[Occurrences]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Occurrences.MainDoc" >}} + +[Dictionary Literals]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.DictionaryLiteral" >}} +[Create a Dictionary<TKey, TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.CreateNew" >}} +[Dictionaries]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Dictionaries" >}} + +[TKey]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[CannotModifyReadOnlyDictionaryException]: {{< url path="Cortex.Reference.Exceptions.Dictionaries.CannotModifyReadOnlyDictionaryException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[InvalidPropertyValueException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.MainDoc" >}} +[Value Is Invalid]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.ValueIsInvalid" >}} + +[IDictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Dictionaries/remove-item/remove-items-with-key-block-3.md b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/remove-item/remove-items-with-key-block-3.md new file mode 100644 index 000000000..70c10e14b --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/remove-item/remove-items-with-key-block-3.md @@ -0,0 +1,162 @@ +--- +title: "Remove Items With Key" +linkTitle: "Remove Items With Key" +description: "Removes all items with the given key from a Dictionary." +--- + +{{< figure src="/blocks/Cortex_Blocks_Dictionaries_RemoveItem_RemoveItemsWithKeyBlock_3.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Dictionaries.RemoveItem.RemoveItemsWithKeyBlock`3)

+ +## Description + +Removes all items with the given [Key][Key Property] from a [Dictionary][Dictionary Property]. + +## Examples + +### Remove all items with a Key from an empty Dictionary + +This example will attempt to remove all items with the key `"Key1"` from `{}`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{}` | `($)Dictionary` is a variable of type [IDictionary][]<[dynamic][], [dynamic][]> | +| [Key][Key Property] | `($)Key`, with value `"Key1"` | `($)Key` is a variable of type [String][] | + +#### Result + +Attempting to remove all items with the key `"Key1"` from `{}` results in no operation, as there is nothing to remove. Therefore, the variable `($)Dictionary` remains: + +```json +{} +``` + +*** + +### Remove all items with a Key from a Dictionary + +Typically keys are simple data types such as [String][], [Int32][], [Boolean][], and for these a dictionary cannot the same key value more than once. This is due to how the data type's object equality is implemented (two items are considered equal if they have the same value rather than being the same object reference). + +However, other data types such as [IList][]<[Int32][]> can also be used as keys. For these data types, object equality only considers two items equal if they are the same reference; it does not care about whether they have the same value. Therefore, it is possible to have the same key value more than once, and as a result you should be able to remove all items with that key. + +This example will illustrate this, by attempting to remove all items with the key `[1]` from `{[1] : 1, [2] : 2, [3] : 3, [3] : 3, [2] : 2, [1] : 1}`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{[1] : 1, [2] : 2, [3] : 3, [3] : 3, [2] : 2, [1] : 1}` | `($)Dictionary` is a variable of type [IDictionary][]<[IList][]<[Int32][]>, [Int32][]> | +| [Key][Key Property] | `($)Key`, with value `[1]` | `($)Key` is a variable of type [IList][]<[Int32][]> | + +#### Result + +Attempting to remove all items with the key `[1]` from `{[1] : 1, [2] : 2, [3] : 3, [3] : 3, [2] : 2, [1] : 1}` results in the variable `($)Dictionary` being updated to the following: + +```csharp +{[2] : 2, [3] : 3, [3] : 3, [2] : 2} +``` + +*** + +## Properties + +### Dictionary + +The [Dictionary][Dictionary Property] to remove all items with the given [Key][Key Property] from. + +[Dictionary][Dictionary Property] can be any [IDictionary][]<[TKey][], [TItem][]>, where [TKey][] represents the type of keys used to lookup items in the [Dictionary][Dictionary Property], and [TItem][] represents the type of items in the [Dictionary][Dictionary Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IDictionary][]<[TKey][], [TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Dictionary` with no value | + +### Key + +The [Key][Key Property] the items to remove must have. + +For information and examples of how it is determined whether an item has a specified key, please see [Object Equality][]. + +For information about what a key is, please see [Keys][]. + +| | | +|--------------------|---------------------------| +| Data Type | [TKey][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [CannotModifyReadOnlyDictionaryException][] | Thrown when [Dictionary][Dictionary Property] is read-only. | +| [PropertyNullException][] | Thrown when [Dictionary][Dictionary Property] or [Key][Key Property] are `null`. | + +## Remarks + +### Key Equality + +For information and examples of how it is determined whether a key is already present, please see [Object Equality][]. + +### Empty Dictionary + +If [Dictionary][Dictionary Property] is empty (i.e. `{}`) there is nothing to remove, so no operation is performed. + +### No items with given Key + +If [Dictionary][Dictionary Property] does not contain items with the given [Key][Key Property] there is nothing to remove, so no operation is performed. + +### Defining dictionaries using literal syntax + +For information about how to define dictionaries using literal syntax, see [Dictionary Literals][]. + +### Defining dictionaries using expression syntax + +For information about how to define dictionaries using expression syntax, see [Create a Dictionary<TKey, TItem>][]. + +### Dictionaries containing items with same data types vs different data types + +For information about the different types of dictionaries, including those that can contain only the same type of item, and those that can contain different types of item, see [Dictionaries][]. + +[Dictionary Property]: {{< ref "#dictionary" >}} +[Key Property]: {{< ref "#key" >}} + +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[Keys]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Keys.MainDoc" >}} +[Object Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectEquality.MainDoc" >}} + +[Dictionary Literals]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.DictionaryLiteral" >}} +[Create a Dictionary<TKey, TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.CreateNew" >}} +[Dictionaries]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Dictionaries" >}} + +[TKey]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[CannotModifyReadOnlyDictionaryException]: {{< url path="Cortex.Reference.Exceptions.Dictionaries.CannotModifyReadOnlyDictionaryException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IDictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Dictionaries/remove-item/remove-items-with-keys-block-3.md b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/remove-item/remove-items-with-keys-block-3.md new file mode 100644 index 000000000..e91bcb477 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/remove-item/remove-items-with-keys-block-3.md @@ -0,0 +1,167 @@ +--- +title: "Remove Items With Keys" +linkTitle: "Remove Items With Keys" +description: "Removes all items with any of the given keys from a Dictionary." +--- + +{{< figure src="/blocks/Cortex_Blocks_Dictionaries_RemoveItem_RemoveItemsWithKeysBlock_3.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Dictionaries.RemoveItem.RemoveItemsWithKeysBlock`3)

+ +## Description + +Removes all items with any of the given [Keys][Keys Property] from a [Dictionary][Dictionary Property]. + +## Examples + +### Remove all items with any of the given Keys from an empty Dictionary + +This example will attempt to remove all items with any of the given keys in `["Key1", "Key2"]` from `{}`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{}` | `($)Dictionary` is a variable of type [IDictionary][]<[dynamic][], [dynamic][]> | +| [Keys][Keys Property] | `($)Keys`, with value `["Key1", "Key2"]` | `($)Keys` is a variable of type [IDictionary][]<[String][]> | + +#### Result + +Attempting to remove all items with any of the given keys in `["Key1", "Key2"]` from `{}` results in no operation, as there is nothing to remove. Therefore, the variable `($)Dictionary` remains: + +```json +{} +``` + +*** + +### Remove all items with any of the given Keys from a Dictionary + +This example will attempt to remove all items with any of the given keys in `["Key1", "Key2"]` from `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{}` | `($)Dictionary` is a variable of type [IDictionary][]<[String][], [Int32][]> | +| [Keys][Keys Property] | `($)Keys`, with value `["Key1", "Key2"]` | `($)Keys` is a variable of type [IDictionary][]<[String][]> | + +#### Result + +Attempting to remove all items with any of the given keys in `["Key1", "Key2"]` from `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` results in the variable `($)Dictionary` being updated to the following: + +```json +{"Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1} +``` + +*** + +## Properties + +### Dictionary + +The [Dictionary][Dictionary Property] to remove all items with any of the given [Keys][Keys Property] from. + +[Dictionary][Dictionary Property] can be any [IDictionary][]<[TKey][], [TItem][]>, where [TKey][] represents the type of keys used to lookup items in the [Dictionary][Dictionary Property], and [TItem][] represents the type of items in the [Dictionary][Dictionary Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IDictionary][]<[TKey][], [TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Dictionary` with no value | + +### Keys + +The [Keys][Keys Property] the items to remove must have one of. + +For information and examples of how it is determined whether an item has a specified key, please see [Object Equality][]. + +For information about what a key is, please see [Keys][]. + +| | | +|--------------------|---------------------------| +| Data Type | [IEnumerable][]<[TKey][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [ArgumentNullException][] | Thrown when any key in [Keys][Keys Property] is `null`| +| [CannotModifyReadOnlyDictionaryException][] | Thrown when [Dictionary][Dictionary Property] is read-only. | +| [PropertyNullException][] | Thrown when [Dictionary][Dictionary Property] or [Keys][Keys Property] are `null`. | + +## Remarks + +### Key Equality + +For information and examples of how it is determined whether a key is already present, please see [Object Equality][]. + +### Empty Dictionary + +If [Dictionary][Dictionary Property] is empty (i.e. `{}`) there is nothing to remove, so no operation is performed. + +### Empty Keys + +If [Keys][Keys Property] is empty (i.e. `[]`) there are no keys to match, therefore nothing can be removed and no operation is performed. + +### No items with one of the given Keys + +If [Dictionary][Dictionary Property] does not contain items with one of the given [Keys][Keys Property], there is nothing to remove for that key. + +### No items with any of the given Keys + +If [Dictionary][Dictionary Property] does not contain items with any of the given [Keys][Keys Property] there is nothing to remove, so no operation is performed. + +### Defining dictionaries using literal syntax + +For information about how to define dictionaries using literal syntax, see [Dictionary Literals][]. + +### Defining dictionaries using expression syntax + +For information about how to define dictionaries using expression syntax, see [Create a Dictionary<TKey, TItem>][]. + +### Dictionaries containing items with same data types vs different data types + +For information about the different types of dictionaries, including those that can contain only the same type of item, and those that can contain different types of item, see [Dictionaries][]. + +[Dictionary Property]: {{< ref "#dictionary" >}} +[Keys Property]: {{< ref "#keys" >}} + +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[Keys]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Keys.MainDoc" >}} +[Object Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectEquality.MainDoc" >}} + +[Dictionary Literals]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.DictionaryLiteral" >}} +[Create a Dictionary<TKey, TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.CreateNew" >}} +[Dictionaries]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Dictionaries" >}} + +[TKey]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[ArgumentNullException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentNullException" >}} +[CannotModifyReadOnlyDictionaryException]: {{< url path="Cortex.Reference.Exceptions.Dictionaries.CannotModifyReadOnlyDictionaryException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IDictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Dictionaries/remove-item/remove-items-with-value-block-3.md b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/remove-item/remove-items-with-value-block-3.md new file mode 100644 index 000000000..3775948b6 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/remove-item/remove-items-with-value-block-3.md @@ -0,0 +1,161 @@ +--- +title: "Remove Items With Value" +linkTitle: "Remove Items With Value" +description: "Removes all items matching a value from a Dictionary." +--- + +{{< figure src="/blocks/Cortex_Blocks_Dictionaries_RemoveItem_RemoveItemsWithValueBlock_3.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Dictionaries.RemoveItem.RemoveItemsWithValueBlock`3)

+ +## Description + +Removes all items matching a [Value][Value Property] from a [Dictionary][Dictionary Property]. + +## Examples + +### Remove all items matching a Value from an empty Dictionary + +This example will attempt to remove all items matching the value `1` from `{}`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{}` | `($)Dictionary` is a variable of type [IDictionary][]<[dynamic][], [dynamic][]> | +| [Value][Value Property] | `($)Value`, with value `1` | `($)Value` is a variable of type [Int32][] | + +#### Result + +Attempting to remove all items matching the value `1` from `{}` results in no operation, as there is nothing to remove. Therefore, the variable `($)Dictionary` remains: + +```json +{} +``` + +*** + +### Remove all items matching a Value from a Dictionary + +This example will attempt to remove all items matching the value `1` from `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` | `($)Dictionary` is a variable of type [IDictionary][]<[String][], [Int32][]> | +| [Value][Value Property] | `($)Value`, with value `1` | `($)Value` is a variable of type [Int32][] | + +#### Result + +Attempting to remove all items matching the value `1` from `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` results in the variable `($)Dictionary` being updated to the following: + +```json +{"Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2} +``` + +*** + +## Properties + +### Dictionary + +The [Dictionary][Dictionary Property] to remove all matching items from. + +Items are considered matching if they have the specified [Value][Value Property]. + +[Dictionary][Dictionary Property] can be any [IDictionary][]<[TKey][], [TItem][]>, where [TKey][] represents the type of keys used to lookup items in the [Dictionary][Dictionary Property], and [TItem][] represents the type of items in the [Dictionary][Dictionary Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IDictionary][]<[TKey][], [TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Dictionary` with no value | + +### Value + +The [Value][Value Property] the items to remove must match. + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [TItem][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [CannotModifyReadOnlyDictionaryException][] | Thrown when [Dictionary][Dictionary Property] is read-only. | +| [InvalidPropertyValueException][] | Thrown when [Value][Value Property] is `null` and [Dictionary][Dictionary Property] only accepts non-nullable value types. See [Value Is Invalid][]. | +| [PropertyNullException][] | Thrown when [Dictionary][Dictionary Property] is `null`. | + +## Remarks + +### Item Equality + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +### Empty Dictionary + +If [Dictionary][Dictionary Property] is empty (i.e. `{}`) there is nothing to remove, so no operation is performed. + +### No items matching Value + +If [Dictionary][Dictionary Property] does not contain items matching the specified [Value][Value Property], there is nothing to remove, so no operation is performed. + +### Defining dictionaries using literal syntax + +For information about how to define dictionaries using literal syntax, see [Dictionary Literals][]. + +### Defining dictionaries using expression syntax + +For information about how to define dictionaries using expression syntax, see [Create a Dictionary<TKey, TItem>][]. + +### Dictionaries containing items with same data types vs different data types + +For information about the different types of dictionaries, including those that can contain only the same type of item, and those that can contain different types of item, see [Dictionaries][]. + +[Dictionary Property]: {{< ref "#dictionary" >}} +[Value Property]: {{< ref "#value" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Object Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectEquality.MainDoc" >}} + +[Dictionary Literals]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.DictionaryLiteral" >}} +[Create a Dictionary<TKey, TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.CreateNew" >}} +[Dictionaries]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Dictionaries" >}} + +[TKey]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[CannotModifyReadOnlyDictionaryException]: {{< url path="Cortex.Reference.Exceptions.Dictionaries.CannotModifyReadOnlyDictionaryException.MainDoc" >}} + +[InvalidPropertyValueException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.MainDoc" >}} +[Value Is Invalid]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.ValueIsInvalid" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IDictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Dictionaries/remove-item/remove-items-with-values-block-3.md b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/remove-item/remove-items-with-values-block-3.md new file mode 100644 index 000000000..37712ef00 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/remove-item/remove-items-with-values-block-3.md @@ -0,0 +1,164 @@ +--- +title: "Remove Items With Values" +linkTitle: "Remove Items With Values" +description: "Removes all items matching one of the specified values from a Dictionary." +--- + +{{< figure src="/blocks/Cortex_Blocks_Dictionaries_RemoveItem_RemoveItemsWithValuesBlock_3.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Dictionaries.RemoveItem.RemoveItemsWithValuesBlock`3)

+ +## Description + +Removes all items matching one of the specified [Values][Values Property] from a [Dictionary][Dictionary Property]. + +## Examples + +### Remove all items matching one of the specified Values from an empty Dictionary + +This example will attempt to remove all items matching one of the values `[1, 2]` from `{}`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{}` | `($)Dictionary` is a variable of type [IDictionary][]<[dynamic][], [dynamic][]> | +| [Values][Values Property] | `($)Values`, with value `[1, 2]` | `($)Values` is a variable of type [IEnumerable][]<[Int32][]> | + +#### Result + +Attempting to remove all items matching one of the values `[1, 2]` from `{}` results in no operation, as there is nothing to remove. Therefore, the variable `($)Dictionary` remains: + +```json +{} +``` + +*** + +### Remove all items matching one of the specified Values from a Dictionary + +This example will attempt to remove all items matching one of the values `[1, 2]` from `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` | `($)Dictionary` is a variable of type [IDictionary][]<[String][], [Int32][]> | +| [Values][Values Property] | `($)Values`, with value `[1, 2]` | `($)Values` is a variable of type [IEnumerable][]<[Int32][]> | + +#### Result + +Attempting to remove all items matching one of the values `[1, 2]` from `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` results in the variable `($)Dictionary` being updated to the following: + +```json +{"Key3" : 3, "Key4" : 3} +``` + +*** + +## Properties + +### Dictionary + +The [Dictionary][Dictionary Property] to remove all matching items from. + +Items are considered matching if they have one of the specified [Values][Values Property]. + +[Dictionary][Dictionary Property] can be any [IDictionary][]<[TKey][], [TItem][]>, where [TKey][] represents the type of keys used to lookup items in the [Dictionary][Dictionary Property], and [TItem][] represents the type of items in the [Dictionary][Dictionary Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IDictionary][]<[TKey][], [TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Dictionary` with no value | + +### Values + +The [Values][Values Property] the items to remove must match one of. + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [IEnumerable][]<[TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [CannotModifyReadOnlyDictionaryException][] | Thrown when [Dictionary][Dictionary Property] is read-only. | +| [PropertyNullException][] | Thrown when [Dictionary][Dictionary Property] or [Values][Values Property] is `null`. | + +## Remarks + +### Item Equality + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +### Empty Dictionary + +If [Dictionary][Dictionary Property] is empty (i.e. `{}`) there is nothing to remove, so no operation is performed. + +### Empty Values + +If [Values][Values Property] is empty (i.e. `[]`) there are no values to match, therefore nothing can be removed and no operation is performed. + +### No items matching a specified value in Values + +If [Dictionary][Dictionary Property] does not contain items matching one of the specified [Values][Values Property], there is nothing to remove for that value. + +### No items matching Values + +If [Dictionary][Dictionary Property] does not contain items matching any of the specified [Values][Values Property], there is nothing to remove, so no operation is performed. + +### Defining dictionaries using literal syntax + +For information about how to define dictionaries using literal syntax, see [Dictionary Literals][]. + +### Defining dictionaries using expression syntax + +For information about how to define dictionaries using expression syntax, see [Create a Dictionary<TKey, TItem>][]. + +### Dictionaries containing items with same data types vs different data types + +For information about the different types of dictionaries, including those that can contain only the same type of item, and those that can contain different types of item, see [Dictionaries][]. + +[Dictionary Property]: {{< ref "#dictionary" >}} +[Values Property]: {{< ref "#values" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Object Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectEquality.MainDoc" >}} + +[Dictionary Literals]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.DictionaryLiteral" >}} +[Create a Dictionary<TKey, TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.CreateNew" >}} +[Dictionaries]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Dictionaries" >}} + +[TKey]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[CannotModifyReadOnlyDictionaryException]: {{< url path="Cortex.Reference.Exceptions.Dictionaries.CannotModifyReadOnlyDictionaryException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IDictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Dictionaries/set-item/_index.md b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/set-item/_index.md new file mode 100644 index 000000000..56379859a --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/set-item/_index.md @@ -0,0 +1,5 @@ +--- +title: "Set Item(s)" +linkTitle: "Set Item(s)" +description: "Set an item or multiple items in a dictionary to a new value." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Dictionaries/set-item/set-all-items-block-3.md b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/set-item/set-all-items-block-3.md new file mode 100644 index 000000000..67b6571ce --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/set-item/set-all-items-block-3.md @@ -0,0 +1,123 @@ +--- +title: "Set All Items" +linkTitle: "Set All Items" +description: "Sets all items in a Dictionary to a new value." +--- + +{{< figure src="/blocks/Cortex_Blocks_Dictionaries_SetItem_SetAllItemsBlock_3.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Dictionaries.SetItem.SetAllItemsBlock`3)

+ +## Description + +Sets all items in a [Dictionary][Dictionary Property] to a [New Value][NewValue Property]. + +## Examples + +### Set all items in a Dictionary to a New Value + +This example will set all items in `{"Key1" : 1, "Key2" : 2}` to `10`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{"Key1" : 1, "Key2" : 2}` | `($)Dictionary` is a variable of type [IDictionary][]<[String][], [Int32][]> | +| [New Value][NewValue Property] | `($)NewValue`, with value `10` | `($)NewValue` is a variable of type [Int32][] | + +#### Result + +Setting all items in `{"Key1" : 1, "Key2" : 2}` to `10` results in the variable `($)Dictionary` being updated to the following: + +```json +{"Key1" : 10, "Key2" : 10} +``` + +*** + +## Properties + +### Dictionary + +The [Dictionary][Dictionary Property] to set all items in. + +[Dictionary][Dictionary Property] can be any [IDictionary][]<[TKey][], [TItem][]>, where [TKey][] represents the type of keys used to lookup items in the [Dictionary][Dictionary Property], and [TItem][] represents the type of items in the [Dictionary][Dictionary Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IDictionary][]<[TKey][], [TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Dictionary` with no value | + +### New Value + +The [New Value][NewValue Property] to set all items in [Dictionary][Dictionary Property] to. + +| | | +|--------------------|---------------------------| +| Data Type | [TItem][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|-------------| +| [CannotModifyReadOnlyDictionaryException][] | Thrown when [Dictionary][Dictionary Property] is read-only. | +| [InvalidPropertyValueException][] | Thrown when [New Value][NewValue Property] is `null` and [Dictionary][Dictionary Property] only accepts non-nullable value types. See [Value Is Invalid][]. | +| [PropertyNullException][] | Thrown when [Dictionary][Dictionary Property] is `null`. | + +## Remarks + +### Empty Dictionary + +If [Dictionary][Dictionary Property] is empty (i.e. `{}`) there is nothing to set, so no operation is performed. + +### Defining dictionaries using literal syntax + +For information about how to define dictionaries using literal syntax, see [Dictionary Literals][]. + +### Defining dictionaries using expression syntax + +For information about how to define dictionaries using expression syntax, see [Create a Dictionary<TKey, TItem>][]. + +### Dictionaries containing items with same data types vs different data types + +For information about the different types of dictionaries, including those that can contain only the same type of item, and those that can contain different types of item, see [Dictionaries][]. + +[Dictionary Property]: {{< ref "#dictionary" >}} +[NewValue Property]: {{< ref "#new-value" >}} + +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[Dictionary Literals]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.DictionaryLiteral" >}} +[Create a Dictionary<TKey, TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.CreateNew" >}} +[Dictionaries]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Dictionaries" >}} + +[TKey]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[CannotModifyReadOnlyDictionaryException]: {{< url path="Cortex.Reference.Exceptions.Dictionaries.CannotModifyReadOnlyDictionaryException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[InvalidPropertyValueException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.MainDoc" >}} +[Value Is Invalid]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.ValueIsInvalid" >}} + +[IDictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Dictionaries/set-item/set-item-with-key-block-3.md b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/set-item/set-item-with-key-block-3.md new file mode 100644 index 000000000..6d984389a --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/set-item/set-item-with-key-block-3.md @@ -0,0 +1,211 @@ +--- +title: "Set Item With Key" +linkTitle: "Set Item With Key" +description: "Sets the specified occurrence of an item with the given key in a Dictionary to a new value." +--- + +{{< figure src="/blocks/Cortex_Blocks_Dictionaries_SetItem_SetItemWithKeyBlock_3.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Dictionaries.SetItem.SetItemWithKeyBlock`3)

+ +## Description + +Sets the specified [Occurrence][Occurrence Property] of an item with the given [Key][Key Property] in a [Dictionary][Dictionary Property] to a [New Value][NewValue Property]. + +## Examples + +### Set the first Occurrence of an item with a Key in a Dictionary to a New Value + +This example will attempt to set the first occurrence of an item with the key `"Key1"` in `{"Key1" : 1, "Key2" : 2}` to `10`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{"Key1" : 1, "Key2" : 2}` | `($)Dictionary` is a variable of type [IDictionary][]<[String][], [Int32][]> | +| [Key][Key Property] | `($)Key`, with value `"Key1"` | `($)Key` is a variable of type [String][] | +| [New Value][NewValue Property] | `($)NewValue`, with value `10` | `($)NewValue` is a variable of type [Int32][] | +| [Occurrence][Occurrence Property] | `($)Occurrence`, with value `1` | `($)Occurrence` is a variable of type [Int32][] | + +#### Result + +An [Occurrence][Occurrence Property] of `1` means set the first occurrence; `2` means second etc. + +Attempting to set the first occurrence of an item with the key `"Key1"` in `{"Key1" : 1, "Key2" : 2}` to `10` results in the variable `($)Dictionary` being updated to the following: + +```json +{"Key1" : 10, "Key2" : 1} +``` + +*** + +### Set the last Occurrence of an item with a Key in a Dictionary to a New Value + +Typically keys are simple data types such as [String][], [Int32][], [Boolean][], and for these a dictionary cannot the same key value more than once. This is due to how the data type's object equality is implemented (two items are considered equal if they have the same value rather than being the same object reference). + +However, other data types such as [IList][]<[Int32][]> can also be used as keys. For these data types, object equality only considers two items equal if they are the same reference; it does not care about whether they have the same value. Therefore, it is possible to have the same key value more than once, and as a result you should be able to set an occurrence of item with that key. + +This example will illustrate this, by attempting to set the last occurrence of an item with the key `[1]` in `{[1] : 1, [2] : 2, [3] : 3, [3] : 3, [2] : 2, [1] : 1}` to `10`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{[1] : 1, [2] : 2, [3] : 3, [3] : 3, [2] : 2, [1] : 1}` | `($)Dictionary` is a variable of type [IDictionary][]<[IList][]<[Int32][]>, [Int32][]> | +| [Key][Key Property] | `($)Key`, with value `[1]` | `($)Key` is a variable of type [IList][]<[Int32][]> | +| [New Value][NewValue Property] | `($)NewValue`, with value `10` | `($)NewValue` is a variable of type [Int32][] | +| [Occurrence][Occurrence Property] | `($)Occurrence`, with value `-1` | `($)Occurrence` is a variable of type [Int32][] | + +#### Result + +An [Occurrence][Occurrence Property] of `-1`, means set the last occurrence; `-2` means second last etc. + +Attempting to set the last occurrence of an item with the key `[1]` in `{[1] : 1, [2] : 2, [3] : 3, [3] : 3, [2] : 2, [1] : 1}` to `10` results in the variable `($)Dictionary` being updated to the following: + +```csharp +{[1] : 1, [2] : 2, [3] : 3, [3] : 3, [2] : 2, [1] : 10} +``` + +*** + +## Properties + +### Dictionary + +The [Dictionary][Dictionary Property] to set the specified [Occurrence][Occurrence Property] of item with the given [Key][Key Property] in. + +Items are considered matching if they have the specified [Key][Key Property]. + +[Dictionary][Dictionary Property] can be any [IDictionary][]<[TKey][], [TItem][]>, where [TKey][] represents the type of keys used to lookup items in the [Dictionary][Dictionary Property], and [TItem][] represents the type of items in the [Dictionary][Dictionary Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IDictionary][]<[TKey][], [TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Dictionary` with no value | + +### Key + +The [Key][Key Property] the item to set must have. + +For information and examples of how it is determined whether an item has a specified key, please see [Object Equality][]. + +For information about what a key is, please see [Keys][]. + +| | | +|--------------------|---------------------------| +| Data Type | [TKey][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### New Value + +The [New Value][NewValue Property] to set the specified [Occurrence][Occurrence Property] of item with the given [Key][Key Property] in [Dictionary][Dictionary Property] to. + +| | | +|--------------------|---------------------------| +| Data Type | [TItem][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### Occurrence + +The [Occurrence][Occurrence Property] of item with the given [Key][Key Property] to set in the [Dictionary][Dictionary Property]. + +Items are considered matching if they have the specified [Key][Key Property]. + +Unlike lists, dictionaries do not have a defined order. This means the nth occurrence is determined by the underlying Microsoft .Net implementation; this is not published and could change if the algorithm were to change. + +For information about [supported values][Occurrences] for the [Occurrence][Occurrence Property] property and examples of how it can be used, please see [Occurrences][]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `1` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [CannotModifyReadOnlyDictionaryException][] | Thrown when [Dictionary][Dictionary Property] is read-only. | +| [InvalidPropertyValueException][] | Thrown when [New Value][NewValue Property] is `null` and [Dictionary][Dictionary Property] only accepts non-nullable value types. See [Value Is Invalid][]. | +| [KeyNotPresentException][] | Thrown when the [Key][Key Property] is not present in the [Dictionary][Dictionary Property]. | +| [OccurrenceNotPresentException][] | Thrown when the specified [Occurrence][Occurrence Property] of item with the given [Key][Key Property] is not present in the [Dictionary][Dictionary Property]. | +| [PropertyNullException][] | Thrown when [Dictionary][Dictionary Property] or [Key][Key Property] are `null`. | + +## Remarks + +### Key Equality + +For information and examples of how it is determined whether a key is already present, please see [Object Equality][]. + +### Occurrences + +Unlike lists, dictionaries do not have a defined order. This means the nth occurrence is determined by the underlying Microsoft .Net implementation; this is not published and could change if the algorithm were to change. + +For information about [supported values][Occurrences] for the [Occurrence][Occurrence Property] property and examples of how it can be used, please see [Occurrences][]. + +### Defining dictionaries using literal syntax + +For information about how to define dictionaries using literal syntax, see [Dictionary Literals][]. + +### Defining dictionaries using expression syntax + +For information about how to define dictionaries using expression syntax, see [Create a Dictionary<TKey, TItem>][]. + +### Dictionaries containing items with same data types vs different data types + +For information about the different types of dictionaries, including those that can contain only the same type of item, and those that can contain different types of item, see [Dictionaries][]. + +[Dictionary Property]: {{< ref "#dictionary" >}} +[Key Property]: {{< ref "#key" >}} +[NewValue Property]: {{< ref "#new-value" >}} +[Occurrence Property]: {{< ref "#occurrence" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Keys]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Keys.MainDoc" >}} +[Object Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectEquality.MainDoc" >}} +[Occurrences]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Occurrences.MainDoc" >}} + +[Dictionary Literals]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.DictionaryLiteral" >}} +[Create a Dictionary<TKey, TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.CreateNew" >}} +[Dictionaries]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Dictionaries" >}} + +[TKey]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[CannotModifyReadOnlyDictionaryException]: {{< url path="Cortex.Reference.Exceptions.Dictionaries.CannotModifyReadOnlyDictionaryException.MainDoc" >}} + +[InvalidPropertyValueException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.MainDoc" >}} +[Value Is Invalid]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.ValueIsInvalid" >}} + +[KeyNotPresentException]: {{< url path="Cortex.Reference.Exceptions.Dictionaries.KeyNotPresentException.MainDoc" >}} +[OccurrenceNotPresentException]: {{< url path="Cortex.Reference.Exceptions.Collections.OccurrenceNotPresentException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IDictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Dictionaries/set-item/set-item-with-value-block-3.md b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/set-item/set-item-with-value-block-3.md new file mode 100644 index 000000000..bbd0a76a2 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/set-item/set-item-with-value-block-3.md @@ -0,0 +1,206 @@ +--- +title: "Set Item With Value" +linkTitle: "Set Item With Value" +description: "Sets the specified occurrence of an item matching a value in a Dictionary to a new value." +--- + +{{< figure src="/blocks/Cortex_Blocks_Dictionaries_SetItem_SetItemWithValueBlock_3.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Dictionaries.SetItem.SetItemWithValueBlock`3)

+ +## Description + +Sets the specified [Occurrence][Occurrence Property] of an item matching a [Value][Value Property] in a [Dictionary][Dictionary Property] to a [New Value][NewValue Property]. + +## Examples + +### Set the first Occurrence of an item matching a Value in a Dictionary to a New Value + +This example will attempt to set the first occurrence of an item matching the value `1` in `{"Key1" : 1, "Key2" : 1}` to `10`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{"Key1" : 1, "Key2" : 1}` | `($)Dictionary` is a variable of type [IDictionary][]<[String][], [Int32][]> | +| [Value][Value Property] | `($)Value`, with value `1` | `($)Value` is a variable of type [Int32][] | +| [New Value][NewValue Property] | `($)NewValue`, with value `10` | `($)NewValue` is a variable of type [Int32][] | +| [Occurrence][Occurrence Property] | `($)Occurrence`, with value `1` | `($)Occurrence` is a variable of type [Int32][] | + +#### Result + +An [Occurrence][Occurrence Property] of `1` means set the first occurrence; `2` means second etc. + +Attempting to set the first occurrence of an item matching the value `1` in `{"Key1" : 1, "Key2" : 1}` to `10` results in the variable `($)Dictionary` being updated to the following: + +```json +{"Key1" : 10, "Key2" : 1} +``` + +*** + +### Set the last Occurrence of an item matching a Value in a Dictionary to a New Value + +This example will attempt to set the last occurrence of an item matching the value `1` in `{"Key1" : 1, "Key2" : 1}` to `10`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{"Key1" : 1, "Key2" : 1}` | `($)Dictionary` is a variable of type [IDictionary][]<[String][], [Int32][]> | +| [Value][Value Property] | `($)Value`, with value `1` | `($)Value` is a variable of type [Int32][] | +| [New Value][NewValue Property] | `($)NewValue`, with value `10` | `($)NewValue` is a variable of type [Int32][] | +| [Occurrence][Occurrence Property] | `($)Occurrence`, with value `-1` | `($)Occurrence` is a variable of type [Int32][] | + +#### Result + +An [Occurrence][Occurrence Property] of `-1`, means set the last occurrence; `-2` means second last etc. + +Attempting to set the last occurrence of an item matching the value `1` in `{"Key1" : 1, "Key2" : 1}` to `10` results in the variable `($)Dictionary` being updated to the following: + +```json +{"Key1" : 1, "Key2" : 10} +``` + +*** + +## Properties + +### Dictionary + +The [Dictionary][Dictionary Property] to set the specified [Occurrence][Occurrence Property] of matching item in. + +Items are considered matching if they have the specified [Value][Value Property]. + +[Dictionary][Dictionary Property] can be any [IDictionary][]<[TKey][], [TItem][]>, where [TKey][] represents the type of keys used to lookup items in the [Dictionary][Dictionary Property], and [TItem][] represents the type of items in the [Dictionary][Dictionary Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IDictionary][]<[TKey][], [TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Dictionary` with no value | + +### Value + +The [Value][Value Property] the item to set must match. + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [TItem][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### New Value + +The [New Value][NewValue Property] to set the specified [Occurrence][Occurrence Property] of matching item in [Dictionary][Dictionary Property] to. + +| | | +|--------------------|---------------------------| +| Data Type | [TItem][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### Occurrence + +The [Occurrence][Occurrence Property] of matching item to set in the [Dictionary][Dictionary Property]. + +Items are considered matching if they have the specified [Value][Value Property]. + +Unlike lists, dictionaries do not have a defined order. This means the nth occurrence is determined by the underlying Microsoft .Net implementation; this is not published and could change if the algorithm were to change. + +For information about [supported values][Occurrences] for the [Occurrence][Occurrence Property] property and examples of how it can be used, please see [Occurrences][]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `1` | + + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [CannotModifyReadOnlyDictionaryException][] | Thrown when [Dictionary][Dictionary Property] is read-only. | +| [InvalidPropertyValueException][] | Thrown when [Value][Value Property] or [New Value][NewValue Property] are `null` and [Dictionary][Dictionary Property] only accepts non-nullable value types. See [Value Is Invalid][]. | +| [PropertyNullException][] | Thrown when [Dictionary][Dictionary Property] is `null`. | + +## Remarks + +### Item Equality + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +### Occurrences + +Unlike lists, dictionaries do not have a defined order. This means the nth occurrence is determined by the underlying Microsoft .Net implementation; this is not published and could change if the algorithm were to change. + +For information about [supported values][Occurrences] for the [Occurrence][Occurrence Property] property and examples of how it can be used, please see [Occurrences][]. + +### Empty Dictionary + +If [Dictionary][Dictionary Property] is empty (i.e. `{}`) there is nothing to set, so no operation is performed. + +### No items matching Value, or Occurrence is not present + +If [Dictionary][Dictionary Property] does not contain items matching the specified [Value][Value Property] or the specified [Occurrence][Occurrence Property] is not present, there is nothing to set, so no operation is performed. + +### Defining dictionaries using literal syntax + +For information about how to define dictionaries using literal syntax, see [Dictionary Literals][]. + +### Defining dictionaries using expression syntax + +For information about how to define dictionaries using expression syntax, see [Create a Dictionary<TKey, TItem>][]. + +### Dictionaries containing items with same data types vs different data types + +For information about the different types of dictionaries, including those that can contain only the same type of item, and those that can contain different types of item, see [Dictionaries][]. + +[Dictionary Property]: {{< ref "#dictionary" >}} +[Value Property]: {{< ref "#value" >}} +[NewValue Property]: {{< ref "#new-value" >}} +[Occurrence Property]: {{< ref "#occurrence" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Object Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectEquality.MainDoc" >}} +[Occurrences]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Occurrences.MainDoc" >}} + +[Dictionary Literals]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.DictionaryLiteral" >}} +[Create a Dictionary<TKey, TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.CreateNew" >}} +[Dictionaries]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Dictionaries" >}} + +[TKey]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[CannotModifyReadOnlyDictionaryException]: {{< url path="Cortex.Reference.Exceptions.Dictionaries.CannotModifyReadOnlyDictionaryException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[InvalidPropertyValueException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.MainDoc" >}} +[Value Is Invalid]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.ValueIsInvalid" >}} + +[IDictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Dictionaries/set-item/set-items-with-key-block-3.md b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/set-item/set-items-with-key-block-3.md new file mode 100644 index 000000000..132557d01 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/set-item/set-items-with-key-block-3.md @@ -0,0 +1,155 @@ +--- +title: "Set Items With Key" +linkTitle: "Set Items With Key" +description: "Sets all items with the given key in a Dictionary to a new value." +--- + +{{< figure src="/blocks/Cortex_Blocks_Dictionaries_SetItem_SetItemsWithKeyBlock_3.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Dictionaries.SetItem.SetItemsWithKeyBlock`3)

+ +## Description + +Sets all items with the given [Key][Key Property] in a [Dictionary][Dictionary Property] to a [New Value][NewValue Property]. + +## Examples + +### Sets all items with a Key in a Dictionary to a New Value + +Typically keys are simple data types such as [String][], [Int32][], [Boolean][], and for these a dictionary cannot the same key value more than once. This is due to how the data type's object equality is implemented (two items are considered equal if they have the same value rather than being the same object reference). + +However, other data types such as [IList][]<[Int32][]> can also be used as keys. For these data types, object equality only considers two items equal if they are the same reference; it does not care about whether they have the same value. Therefore, it is possible to have the same key value more than once, and as a result you should be able to set all items with that key. + +This example will illustrate this, by attempting to set all items with the key `[1]` in `{[1] : 1, [2] : 2, [3] : 3, [3] : 3, [2] : 2, [1] : 1}` to `10`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{[1] : 1, [2] : 2, [3] : 3, [3] : 3, [2] : 2, [1] : 1}` | `($)Dictionary` is a variable of type [IDictionary][]<[IList][]<[Int32][]>, [Int32][]> | +| [Key][Key Property] | `($)Key`, with value `[1]` | `($)Key` is a variable of type [IList][]<[Int32][]> | +| [New Value][NewValue Property] | `($)NewValue`, with value `10` | `($)NewValue` is a variable of type [Int32][] | + +#### Result + +Attempting to set all items with the key `[1]` in `{[1] : 1, [2] : 2, [3] : 3, [3] : 3, [2] : 2, [1] : 1}` to `10` results in the variable `($)Dictionary` being updated to the following: + +```csharp +{[1] : 10, [2] : 2, [3] : 3, [3] : 3, [2] : 2, [1] : 10} +``` + +*** + +## Properties + +### Dictionary + +The [Dictionary][Dictionary Property] to set all items with the given [Key][Key Property] in. + +Items are considered matching if they have the specified [Key][Key Property]. + +[Dictionary][Dictionary Property] can be any [IDictionary][]<[TKey][], [TItem][]>, where [TKey][] represents the type of keys used to lookup items in the [Dictionary][Dictionary Property], and [TItem][] represents the type of items in the [Dictionary][Dictionary Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IDictionary][]<[TKey][], [TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Dictionary` with no value | + +### Key + +The [Key][Key Property] the items to set must have. + +For information and examples of how it is determined whether an item has a specified key, please see [Object Equality][]. + +For information about what a key is, please see [Keys][]. + +| | | +|--------------------|---------------------------| +| Data Type | [TKey][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### New Value + +The [New Value][NewValue Property] to set all items with the given [Key][Key Property] in [Dictionary][Dictionary Property] to. + +| | | +|--------------------|---------------------------| +| Data Type | [TItem][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [CannotModifyReadOnlyDictionaryException][] | Thrown when [Dictionary][Dictionary Property] is read-only. | +| [InvalidPropertyValueException][] | Thrown when [New Value][NewValue Property] is `null` and [Dictionary][Dictionary Property] only accepts non-nullable value types. See [Value Is Invalid][]. | +| [KeyNotPresentException][] | Thrown when the [Key][Key Property] is not present in the [Dictionary][Dictionary Property]. | +| [PropertyNullException][] | Thrown when [Dictionary][Dictionary Property] or [Key][Key Property] are `null`. | + +## Remarks + +### Key Equality + +For information and examples of how it is determined whether a key is already present, please see [Object Equality][]. + +### Defining dictionaries using literal syntax + +For information about how to define dictionaries using literal syntax, see [Dictionary Literals][]. + +### Defining dictionaries using expression syntax + +For information about how to define dictionaries using expression syntax, see [Create a Dictionary<TKey, TItem>][]. + +### Dictionaries containing items with same data types vs different data types + +For information about the different types of dictionaries, including those that can contain only the same type of item, and those that can contain different types of item, see [Dictionaries][]. + +[Dictionary Property]: {{< ref "#dictionary" >}} +[Key Property]: {{< ref "#key" >}} +[NewValue Property]: {{< ref "#new-value" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Keys]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Keys.MainDoc" >}} +[Object Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectEquality.MainDoc" >}} + +[Dictionary Literals]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.DictionaryLiteral" >}} +[Create a Dictionary<TKey, TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.CreateNew" >}} +[Dictionaries]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Dictionaries" >}} + +[TKey]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[CannotModifyReadOnlyDictionaryException]: {{< url path="Cortex.Reference.Exceptions.Dictionaries.CannotModifyReadOnlyDictionaryException.MainDoc" >}} + +[InvalidPropertyValueException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.MainDoc" >}} +[Value Is Invalid]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.ValueIsInvalid" >}} + +[KeyNotPresentException]: {{< url path="Cortex.Reference.Exceptions.Dictionaries.KeyNotPresentException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IDictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Dictionaries/set-item/set-items-with-keys-block-3.md b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/set-item/set-items-with-keys-block-3.md new file mode 100644 index 000000000..49388153c --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/set-item/set-items-with-keys-block-3.md @@ -0,0 +1,150 @@ +--- +title: "Set Items With Keys" +linkTitle: "Set Items With Keys" +description: "Sets all items with any of the given keys in a Dictionary to new values." +--- + +{{< figure src="/blocks/Cortex_Blocks_Dictionaries_SetItem_SetItemsWithKeysBlock_3.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Dictionaries.SetItem.SetItemsWithKeysBlock`3)

+ +## Description + +Sets all items with any of the given [Keys][Keys Property] in a [Dictionary][Dictionary Property] to [New Values][NewValues Property]. + +## Examples + +### Set all items with any of the given Keys in a Dictionary to New Values + +This example will attempt to set all items with any of the keys `["Key1", "Key2"]` in `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` to `[10, 20]` respectively. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` | `($)Dictionary` is a variable of type [IDictionary][]<[String][], [Int32][]> | +| [Keys][Keys Property] | `($)Keys`, with value `["Key1", "Key2"]` | `($)Keys` is a variable of type [IEnumerable][]<[String][]> | +| [NewValues][NewValues Property] | `($)NewValues`, with value `[10, 20]` | `($)NewValues` is a variable of type [IEnumerable][]<[Int32][]> | + +#### Result + +Attempting to set all items with any of the keys `["Key1", "Key2"]` in `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` to `[10, 20]` respectively, results in the variable `($)Dictionary` being updated to the following: + +```json +{"Key1" : 10, "Key2" : 20, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1} +``` + +*** + +## Properties + +### Dictionary + +The [Dictionary][Dictionary Property] to set all matching items in. + +Items are considered matching if they have any of the specified [Keys][Keys Property]. + +[Dictionary][Dictionary Property] can be any [IDictionary][]<[TKey][], [TItem][]>, where [TKey][] represents the type of keys used to lookup items in the [Dictionary][Dictionary Property], and [TItem][] represents the type of items in the [Dictionary][Dictionary Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IDictionary][]<[TKey][], [TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Dictionary` with no value | +### Keys + +The [Keys][Keys Property] the items to set must have one of. + +For information and examples of how it is determined whether an item has a specified key, please see [Object Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [IEnumerable][]<[TKey][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### New Values + +The [New Values][NewValues Property] to set the items with the corresponding [Keys][Keys Property] in [Dictionary][Dictionary Property] to. + +The number of items in [New Values][NewValues Property] must match the number of items in [Keys][Keys Property]. + +[Dictionary][Dictionary Property] items with the first key in [Keys][Keys Property] will be set to the first value in [New Values][NewValues Property]; [Dictionary][Dictionary Property] items with the second key in [Keys][Keys Property] will be set to the second value in [New Values][NewValues Property] etc. + +| | | +|--------------------|---------------------------| +| Data Type | [IEnumerable][]<[TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [ArgumentNullException][] | Thrown when any key in [Keys][Keys Property] is `null`| +| [CannotModifyReadOnlyDictionaryException][] | Thrown when [Dictionary][Dictionary Property] is read-only. | +| [KeysNotPresentException][] | Thrown when any key in the [Keys][Keys Property] is not present in the [Dictionary][Dictionary Property]. | +| [PropertyItemCountException][] | Thrown when the count of items in [Keys][Keys Property] and the count of items in [New Values][NewValues Property] are not the same, or neither contain any items. | +| [PropertyNullException][] | Thrown when [Dictionary][Dictionary Property] or [Keys][Keys Property] or [New Values][NewValues Property] are `null`. | + +## Remarks + +### Key Equality + +For information and examples of how it is determined whether an item has a specified key, please see [Object Equality][]. + +### Defining dictionaries using literal syntax + +For information about how to define dictionaries using literal syntax, see [Dictionary Literals][]. + +### Defining dictionaries using expression syntax + +For information about how to define dictionaries using expression syntax, see [Create a Dictionary<TKey, TItem>][]. + +### Dictionaries containing items with same data types vs different data types + +For information about the different types of dictionaries, including those that can contain only the same type of item, and those that can contain different types of item, see [Dictionaries][]. + +[Dictionary Property]: {{< ref "#dictionary" >}} +[Keys Property]: {{< ref "#keys" >}} +[NewValues Property]: {{< ref "#new-values" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Keys]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Keys.MainDoc" >}} +[Object Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectEquality.MainDoc" >}} + +[Dictionary Literals]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.DictionaryLiteral" >}} +[Create a Dictionary<TKey, TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.CreateNew" >}} +[Dictionaries]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Dictionaries" >}} + +[TKey]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[ArgumentNullException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentNullException" >}} +[CannotModifyReadOnlyDictionaryException]: {{< url path="Cortex.Reference.Exceptions.Dictionaries.CannotModifyReadOnlyDictionaryException.MainDoc" >}} +[KeysNotPresentException]: {{< url path="Cortex.Reference.Exceptions.Dictionaries.KeysNotPresentException.MainDoc" >}} +[PropertyItemCountException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyItemCountException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IDictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Dictionaries/set-item/set-items-with-value-block-3.md b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/set-item/set-items-with-value-block-3.md new file mode 100644 index 000000000..482d394a7 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/set-item/set-items-with-value-block-3.md @@ -0,0 +1,152 @@ +--- +title: "Set Items With Value" +linkTitle: "Set Items With Value" +description: "Sets all items matching a value in a Dictionary to a new value." +--- + +{{< figure src="/blocks/Cortex_Blocks_Dictionaries_SetItem_SetItemsWithValueBlock_3.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Dictionaries.SetItem.SetItemsWithValueBlock`3)

+ +## Description + +Sets all items matching a [Value][Value Property] in a [Dictionary][Dictionary Property] to a [New Value][NewValue Property]. + +## Examples + +### Set all items matching a Value in a Dictionary to a New Value + +This example will attempt to set all items matching the value `1` in `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` to `10`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` | `($)Dictionary` is a variable of type [IDictionary][]<[String][], [Int32][]> | +| [Value][Value Property] | `($)Value`, with value `1` | `($)Value` is a variable of type [Int32][] | +| [New Value][NewValue Property] | `($)NewValue`, with value `10` | `($)NewValue` is a variable of type [Int32][] | + +#### Result + +Attempting to set all items matching the value `1` in `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` to `10` results in the variable `($)Dictionary` being updated to the following: + +```json +{"Key1" : 10, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 10} +``` + +*** + +## Properties + +### Dictionary + +The [Dictionary][Dictionary Property] to set all matching items in. + +Items are considered matching if they have the specified [Value][Value Property]. + +[Dictionary][Dictionary Property] can be any [IDictionary][]<[TKey][], [TItem][]>, where [TKey][] represents the type of keys used to lookup items in the [Dictionary][Dictionary Property], and [TItem][] represents the type of items in the [Dictionary][Dictionary Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IDictionary][]<[TKey][], [TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Dictionary` with no value | + +### Value + +The [Value][Value Property] the items to set must match. + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [TItem][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### New Value + +The [New Value][NewValue Property] to set all matching items in [Dictionary][Dictionary Property] to. + +| | | +|--------------------|---------------------------| +| Data Type | [TItem][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [CannotModifyReadOnlyDictionaryException][] | Thrown when [Dictionary][Dictionary Property] is read-only. | +| [InvalidPropertyValueException][] | Thrown when [Value][Value Property] or [New Value][NewValue Property] are `null` and [Dictionary][Dictionary Property] only accepts non-nullable value types. See [Value Is Invalid][]. | +| [PropertyNullException][] | Thrown when [Dictionary][Dictionary Property] is `null`. | + +## Remarks + +### Item Equality + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +### Empty Dictionary + +If [Dictionary][Dictionary Property] is empty (i.e. `{}`) there is nothing to set, so no operation is performed. + +### No items matching Value + +If [Dictionary][Dictionary Property] does not contain items matching the specified [Value][Value Property], there is nothing to set, so no operation is performed. + +### Defining dictionaries using literal syntax + +For information about how to define dictionaries using literal syntax, see [Dictionary Literals][]. + +### Defining dictionaries using expression syntax + +For information about how to define dictionaries using expression syntax, see [Create a Dictionary<TKey, TItem>][]. + +### Dictionaries containing items with same data types vs different data types + +For information about the different types of dictionaries, including those that can contain only the same type of item, and those that can contain different types of item, see [Dictionaries][]. + +[Dictionary Property]: {{< ref "#dictionary" >}} +[Value Property]: {{< ref "#value" >}} +[NewValue Property]: {{< ref "#new-value" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Object Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectEquality.MainDoc" >}} + +[Dictionary Literals]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.DictionaryLiteral" >}} +[Create a Dictionary<TKey, TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.CreateNew" >}} +[Dictionaries]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Dictionaries" >}} + +[TKey]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[CannotModifyReadOnlyDictionaryException]: {{< url path="Cortex.Reference.Exceptions.Dictionaries.CannotModifyReadOnlyDictionaryException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[InvalidPropertyValueException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.MainDoc" >}} +[Value Is Invalid]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.ValueIsInvalid" >}} + +[IDictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Dictionaries/set-item/set-items-with-values-block-3.md b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/set-item/set-items-with-values-block-3.md new file mode 100644 index 000000000..51771bfc0 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Dictionaries/set-item/set-items-with-values-block-3.md @@ -0,0 +1,160 @@ +--- +title: "Set Items With Values" +linkTitle: "Set Items With Values" +description: "Sets all items matching one of the specified values in a Dictionary to new values." +--- + +{{< figure src="/blocks/Cortex_Blocks_Dictionaries_SetItem_SetItemsWithValuesBlock_3.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Dictionaries.SetItem.SetItemsWithValuesBlock`3)

+ +## Description + +Set all items matching one of the specified [Values][Values Property] in a [Dictionary][Dictionary Property] to [New Values][NewValues Property]. + +## Examples + +### Set all items matching one of the specified Values in a Dictionary to New Values + +This example will attempt to set all items matching one of the values `[1, 2]` in `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` to `[10, 20]` respectively. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Dictionary][Dictionary Property] | `($)Dictionary`, with value `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` | `($)Dictionary` is a variable of type [IDictionary][]<[String][], [Int32][]> | +| [Values][Values Property] | `($)Values`, with value `[1, 2]` | `($)Values` is a variable of type [IEnumerable][]<[Int32][]> | +| [NewValues][NewValues Property] | `($)NewValues`, with value `[10, 20]` | `($)NewValues` is a variable of type [IEnumerable][]<[Int32][]> | + +#### Result + +Attempting to set all items matching one of the values `[1, 2]` in `{"Key1" : 1, "Key2" : 2, "Key3" : 3, "Key4" : 3, "Key5" : 2, "Key6" : 1}` to `[10, 20]` respectively, results in the variable `($)Dictionary` being updated to the following: + +```json +{"Key1" : 10, "Key2" : 20, "Key3" : 3, "Key4" : 3, "Key5" : 20, "Key6" : 10} +``` + +*** + +## Properties + +### Dictionary + +The [Dictionary][Dictionary Property] to set all matching items in. + +Items are considered matching if they have one of the specified [Values][Values Property]. + +[Dictionary][Dictionary Property] can be any [IDictionary][]<[TKey][], [TItem][]>, where [TKey][] represents the type of keys used to lookup items in the [Dictionary][Dictionary Property], and [TItem][] represents the type of items in the [Dictionary][Dictionary Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IDictionary][]<[TKey][], [TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Dictionary` with no value | + +### Values + +The [Values][Values Property] the items to set must match one of. + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [IEnumerable][]<[TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### New Values + +The [New Values][NewValues Property] to set the items matching the corresponding [Values][Values Property] in [Dictionary][Dictionary Property] to. + +The number of items in [New Values][NewValues Property] must match the number of items in [Values][Values Property]. + +[Dictionary][Dictionary Property] items matching the first value in [Values][Values Property] will be set to the first value in [New Values][NewValues Property]; [Dictionary][Dictionary Property] items matching the second value in [Values][Values Property] will be set to the second value in [New Values][NewValues Property] etc. + +| | | +|--------------------|---------------------------| +| Data Type | [IEnumerable][]<[TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [CannotModifyReadOnlyDictionaryException][] | Thrown when [Dictionary][Dictionary Property] is read-only. | +| [DuplicateValueException][] | Thrown when [Values][Values Property] contains duplicate values. | +| [PropertyItemCountException][] | Thrown when the count of items in [Values][Values Property] and the count of items in [New Values][NewValues Property] are not the same, or neither contain any items. | +| [PropertyNullException][] | Thrown when [Dictionary][Dictionary Property] or [Values][Values Property] or [New Values][NewValues Property] are `null`. | + +## Remarks + +### Item Equality + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +### Empty Dictionary + +If [Dictionary][Dictionary Property] is empty (i.e. `{}`) there is nothing to set, so no operation is performed. + +### No items matching a specified value in Values + +If [Dictionary][Dictionary Property] does not contain items matching one of the specified [Values][Values Property], there is nothing to set for that value. + +### No items matching Values + +If [Dictionary][Dictionary Property] does not contain items matching any of the specified [Values][Values Property], there is nothing to set, so no operation is performed. + +### Defining dictionaries using literal syntax + +For information about how to define dictionaries using literal syntax, see [Dictionary Literals][]. + +### Defining dictionaries using expression syntax + +For information about how to define dictionaries using expression syntax, see [Create a Dictionary<TKey, TItem>][]. + +### Dictionaries containing items with same data types vs different data types + +For information about the different types of dictionaries, including those that can contain only the same type of item, and those that can contain different types of item, see [Dictionaries][]. + +[Dictionary Property]: {{< ref "#dictionary" >}} +[Values Property]: {{< ref "#values" >}} +[NewValues Property]: {{< ref "#new-values" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Object Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectEquality.MainDoc" >}} + +[Dictionary Literals]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.DictionaryLiteral" >}} +[Create a Dictionary<TKey, TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.CreateNew" >}} +[Dictionaries]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Dictionaries" >}} + +[TKey]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[CannotModifyReadOnlyDictionaryException]: {{< url path="Cortex.Reference.Exceptions.Dictionaries.CannotModifyReadOnlyDictionaryException.MainDoc" >}} +[DuplicateValueException]: {{< url path="Cortex.Reference.Exceptions.Lists.DuplicateValueException.MainDoc" >}} +[PropertyItemCountException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyItemCountException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IDictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Exceptions/_index.md b/content/en/docs/2024.11/Reference/Blocks/Exceptions/_index.md new file mode 100644 index 000000000..517a2760b --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Exceptions/_index.md @@ -0,0 +1,5 @@ +--- +title: "Exceptions" +linkTitle: "Exceptions" +description: "Blocks related to handling and throwing Exceptions." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Exceptions/handle-block-exception/_index.md b/content/en/docs/2024.11/Reference/Blocks/Exceptions/handle-block-exception/_index.md new file mode 100644 index 000000000..0b363a866 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Exceptions/handle-block-exception/_index.md @@ -0,0 +1,5 @@ +--- +title: "Handle Block Exception(s)" +linkTitle: "Handle Block Exception(s)" +description: "Handle exceptions that occur during block execution." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Exceptions/handle-block-exception/handle-block-exception-block.md b/content/en/docs/2024.11/Reference/Blocks/Exceptions/handle-block-exception/handle-block-exception-block.md new file mode 100644 index 000000000..6e454a488 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Exceptions/handle-block-exception/handle-block-exception-block.md @@ -0,0 +1,132 @@ +--- +title: "Handle Block Exception" +linkTitle: "Handle Block Exception" +description: "Handles any exception thrown by the block it is connected to." +--- + +{{< figure src="/blocks/Cortex_Blocks_Exceptions_HandleBlockException_HandleBlockExceptionBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Exceptions.HandleBlockException.HandleBlockExceptionBlock)

+ +## Description + +Handles any [Exception][Exception Property] thrown by the block it is connected to. + +## Examples + +### Handle and save the Exception + +This example will handle any exception thrown by the block it is connected to; saving the exception to a variable, so the flow execution can use it to make decisions or take further action. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Exception][Exception Property] | `($)Exception`, with no value | `($)Exception` is a variable that will be set to a [dynamic][] value | + +#### Result + +The block will handle any exception and save the exception to the `($)Exception` variable for use later in the flow execution. + +*** + +### Handle and discard the Exception from being saved + +This example will handle any exception thrown by the block it is connected to; not saving the exception to a variable, as the flow execution does not need it to make decisions or take further action. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Exception][Exception Property] | `($)_`, with no value | `($)_` is a built-in variable that indicates the flow execution does not need to save the exception, so it can be discarded | + +#### Result + +The block will handle any exception, but will not save the exception as the `($)_` variable indicates it is not needed and can be discarded. + +For more infomation about using the built-in `($)_` variable, please see [Discarding Output Properties][]. + +*** + +## Properties + +### Exception + +The [Exception][Exception Property] that is handled. + +[Exception][Exception Property] can be any [Exception data type][Exception]. + +If the flow execution does not need the exception, it can be discarded by assigning the built-in `($)_` variable. + +For more infomation about using the built-in `($)_` variable, please see [Discarding Output Properties][]. + +| | | +|--------------------|---------------------------| +| Data Type | [dynamic][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)_` to [discard][] | + +## Exceptions + +No exceptions are thrown by the block. + +## Remarks + +### Chaining Exception handling blocks + +Blocks that handle block exceptions can be chained together so different exceptions can be handled separately. The blocks are listed below: + +* [Handle Block Exception Matching Message][] +* [Handle Block Exception Matching Messages][] +* [Handle Block Exception Matching Type Name][] +* [Handle Block Exception Matching Type Names][] +* [Handle Block Exception][] + +{{< figure src="/images/chaining-handle-block-exception-blocks.png" >}} + +Each block has an input port on its left-hand side and, with the exception of this block, also have an output port on their right-hand side; this is so they can pass any exception they do not handle to the next block. + +As this block handles any exception, it does not require the output port. + +For more information about chaining of exception handling blocks and passing of exceptions, please see [Exception Handling][]. + +### Why does the Exception property return a dynamic data type? + +The decision for the [Exception][Exception Property] to return a [dynamic data type][dynamic] rather than an [Exception data type][Exception], was to avoid users having to [cast][Object Casting] the exception to its correct type to be able to use all of its properties. + +As a result, any issues with using the [Exception data type][Exception] (i.e. trying to access a property it does not have) will not be reported as messages when trying to debug the flow; they will only be discovered when the flow execution reaches the part of the flow with the issue. + +If it is desirable to have any issues reported as messages when trying to debug the flow, the user can [cast][Object Casting] the exception to its correct type. + +### Using the built-in ($)_ variable to discard the Exception from being saved + +Sometimes when an exception occurs the flow execution wants to use the exception to make decisions or take further action. However, there are occasions when the exception is not needed, and being forced to create another variable to save the exception is extra work for no benefit. In these circumstances it is possible to use the built-in `($)_` variable to indicate the exception does not need to be saved. + +For more information about using the built-in `($)_` variable, please see [Discarding Output Properties][]. + +[Exception Property]: {{< ref "#exception" >}} +[discard]: {{< ref "#using-the-built-in-_-variable-to-discard-the-exception-from-being-saved" >}} + +[Handle Block Exception]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleBlock.HandleBlockException.MainDoc" >}} +[Handle Block Exception Matching Message]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleBlock.HandleBlockExceptionMatchingMessage.MainDoc" >}} +[Handle Block Exception Matching Messages]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleBlock.HandleBlockExceptionMatchingMessages.MainDoc" >}} +[Handle Block Exception Matching Type Name]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleBlock.HandleBlockExceptionMatchingTypeName.MainDoc" >}} +[Handle Block Exception Matching Type Names]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleBlock.HandleBlockExceptionMatchingTypeNames.MainDoc" >}} +[Discarding Output Properties]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.DiscardingOutputs" >}} +[Exception Handling]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.HandlingExceptions.MainDoc" >}} +[Object Casting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectCasting.MainDoc" >}} + +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[Exception]: {{< url path="Cortex.Reference.DataTypes.Exceptions.Exception.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Exceptions/handle-block-exception/handle-block-exception-matching-message-block.md b/content/en/docs/2024.11/Reference/Blocks/Exceptions/handle-block-exception/handle-block-exception-matching-message-block.md new file mode 100644 index 000000000..fe0107c23 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Exceptions/handle-block-exception/handle-block-exception-matching-message-block.md @@ -0,0 +1,229 @@ +--- +title: "Handle Block Exception Matching Message" +linkTitle: "Handle Block Exception Matching Message" +description: "Handles any exception thrown by the block it is connected to that matches a specified message." +--- + +{{< figure src="/blocks/Cortex_Blocks_Exceptions_HandleBlockException_HandleBlockExceptionMatchingMessageBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Exceptions.HandleBlockException.HandleBlockExceptionMatchingMessageBlock)

+ +## Description + +Handles any [Exception][Exception Property] thrown by the block it is connected to that matches a specified [Message][Message Property]. + +## Examples + +### Handle Exception containing Message and save the Exception + +This example will handle any exception thrown by the block it is connected to that contains `"'List' is null"` in its `Message` property; saving the exception to a variable, so the flow execution can use it to make decisions or take further action. + +It performs a [case-sensitive, culture-insensitive][Ordinal] comparison of messages. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Message][Message Property] | `($)Message`, with value `"'List' is null"` | `($)Message` is a variable of type [String][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Exception][Exception Property] | `($)Exception`, with no value | `($)Exception` is a variable that will be set to a [dynamic][] value | + +#### Result + +The block will handle any exception containing `"'List' is null"` in its `Message` property and save the exception to the `($)Exception` variable for use later in the flow execution. + +E.g. + +If the List property of the Add Item At Beginning list block was set to null, it would throw a [PropertyNullException][] when executed. + +This exception's `Message` property would be `"'List' is null; it must be provided with a non-null value.\r\nPlease click the HelpLink for more information on how to fix this."`; therefore as we are checking for exceptions containing `"'List' is null"` in their `Message`, this exception would be handled and saved to the `($)Exception` variable. + +*** + +### Handle Exception containing Message and discard the Exception + +This example is the same as the example above, except it does not save the exception to a variable, as the flow execution does not need it to make decisions or take further action. + +It performs a [case-sensitive, culture-insensitive][Ordinal] comparison of messages. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Message][Message Property] | `($)Message`, with value `"'List' is null"` | `($)Message` is a variable of type [String][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Exception][Exception Property] | `($)_`, with no value | `($)_` is a built-in variable that indicates the flow execution does not need to save the exception, so it can be discarded | + +#### Result + +The block will handle any exception containing `"'List' is null"` in its `Message` property, but will not save the exception as the `($)_` variable indicates it is not needed and can be discarded. + +E.g. + +If the List property of the Add Item At Beginning list block was set to null, it would throw a [PropertyNullException][] when executed. + +This exception's `Message` property would be `"'List' is null; it must be provided with a non-null value.\r\nPlease click the HelpLink for more information on how to fix this."`; therefore as we are checking for exceptions containing `"'List' is null"` in their `Message`, this exception would be handled, but because the `($)_` variable is used it will not be saved to the `($)Exception` variable. + +For more infomation about using the built-in `($)_` variable, please see [Discarding Output Properties][]. + +*** + +### Exception does not contain Message + +This example will not handle an exception thrown by the block it is connected to that does not contain `"'List' is null"` in its `Message` property; the exception will be passed to the next exception handling block. + +It performs a [case-sensitive, culture-insensitive][Ordinal] comparison of messages. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Message][Message Property] | `($)Message`, with value `"'List' is null"` | `($)Message` is a variable of type [String][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Exception][Exception Property] | `($)Exception`, with no value | `($)Exception` is a variable that won't be set | + +#### Result + +The block will not handle any exception that does not contain `"'List' is null"` in its `Message` property; instead the exception will be passed to the next exception handling block. + +E.g. + +If the List property of the Add Item At Beginning list block was set to a read-only List, it would throw a [CannotModifyReadOnlyListException][] when executed. + +This exception's `Message` property would be `"'List' cannot be modified because it's read-only.\r\nPlease click the HelpLink for more information on how to fix this."`; therefore as we are checking for exceptions containing `"'List' is null"` in their `Message`, this exception would not be handled. + +*** + +## Properties + +### Message + +The [Message][Message Property] the [Exception's][Exception Property] `Message` property must contain for this block to handle the [Exception][Exception Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | `$@""` | + +### Comparison Type + +The [Comparison Type][ComparisonType Property] specifying the rules used to determine whether [Message][Message Property] is contained in the [Exception's][Exception Property] `Message` property. + +For information about the [supported values][ComparisonTypes] for the [Comparison Type][ComparisonType Property] property and examples of how it is determined whether two pieces of text match, please see [Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [StringComparison][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | `Ordinal` | + +### Exception + +The [Exception][Exception Property] if it is handled by the block. + +[Exception][Exception Property] can be any [Exception data type][Exception]. + +If the flow execution does not need the exception, it can be discarded by assigning the built-in `($)_` variable. + +For more infomation about using the built-in `($)_` variable, please see [Discarding Output Properties][]. + +| | | +|--------------------|---------------------------| +| Data Type | [dynamic][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)_` to [discard][] | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [ArgumentException][] | Thrown when [Comparison Type][ComparisonType Property] is not one of the specified [StringComparison][] types (e.g. `(StringComparison)10`). | + +## Remarks + +### Comparison Types + +For information about the [supported values][ComparisonTypes] for the [Comparison Type][ComparisonType Property] property and examples of how it is determined whether two pieces of text match, please see [Equality][]. + +### Null or empty Message + +If [Message][Message Property] is `null` or empty (i.e. `""`), and the thrown exception's `Message` property is also `null` or empty (i.e. `""`), the exception will be handled and saved to the variable specified in the [Exception][Exception Property] property. + +### Chaining Exception handling blocks + +Blocks that handle block exceptions can be chained together so different exceptions can be handled separately. The blocks are listed below: + +* [Handle Block Exception Matching Message][] +* [Handle Block Exception Matching Messages][] +* [Handle Block Exception Matching Type Name][] +* [Handle Block Exception Matching Type Names][] +* [Handle Block Exception][] + +{{< figure src="/images/chaining-handle-block-exception-blocks.png" >}} + +Each block has an input port on its left-hand side and, with the exception of the [Handle Block Exception][] block, also have an output port on their right-hand side; this is so they can pass any exception they do not handle to the next block. + +As the [Handle Block Exception][] block handles any exception, it does not require the output port. + +For more information about chaining of exception handling blocks and passing of exceptions, please see [Exception Handling][]. + +### Why does the Exception property return a dynamic data type? + +The decision for the [Exception][Exception Property] to return a [dynamic data type][dynamic] rather than an [Exception data type][Exception], was to avoid users having to [cast][Object Casting] the exception to its correct type to be able to use all of its properties. + +As a result, any issues with using the [Exception data type][Exception] (i.e. trying to access a property it does not have) will not be reported as messages when trying to debug the flow; they will only be discovered when the flow execution reaches the part of the flow with the issue. + +If it is desirable to have any issues reported as messages when trying to debug the flow, the user can [cast][Object Casting] the exception to its correct type. + +### Using the built-in ($)_ variable to discard the Exception from being saved + +Sometimes when an exception occurs the flow execution wants to use the exception to make decisions or take further action. However, there are occasions when the exception is not needed, and being forced to create another variable to save the exception is extra work for no benefit. In these circumstances it is possible to use the built-in `($)_` variable to indicate the exception does not need to be saved. + +For more infomation about using the built-in `($)_` variable, please see [Discarding Output Properties][]. + +[Message Property]: {{< ref "#message" >}} +[ComparisonType Property]: {{< ref "#comparison-type" >}} +[Exception Property]: {{< ref "#exception" >}} +[discard]: {{< ref "#using-the-built-in-_-variable-to-discard-the-exception-from-being-saved" >}} + +[Handle Block Exception]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleBlock.HandleBlockException.MainDoc" >}} +[Handle Block Exception Matching Message]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleBlock.HandleBlockExceptionMatchingMessage.MainDoc" >}} +[Handle Block Exception Matching Messages]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleBlock.HandleBlockExceptionMatchingMessages.MainDoc" >}} +[Handle Block Exception Matching Type Name]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleBlock.HandleBlockExceptionMatchingTypeName.MainDoc" >}} +[Handle Block Exception Matching Type Names]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleBlock.HandleBlockExceptionMatchingTypeNames.MainDoc" >}} +[Discarding Output Properties]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.DiscardingOutputs" >}} +[Exception Handling]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.HandlingExceptions.MainDoc" >}} +[Object Casting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectCasting.MainDoc" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.MainDoc" >}} +[ComparisonTypes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.MainDoc" >}} +[Ordinal]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.Ordinal" >}} + +[ArgumentException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentException" >}} +[CannotModifyReadOnlyListException]: {{< url path="Cortex.Reference.Exceptions.Lists.CannotModifyReadOnlyListException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[StringComparison]: {{< url path="Cortex.Reference.DataTypes.Text.StringComparison.MainDoc" >}} +[Exception]: {{< url path="Cortex.Reference.DataTypes.Exceptions.Exception.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Exceptions/handle-block-exception/handle-block-exception-matching-messages-block.md b/content/en/docs/2024.11/Reference/Blocks/Exceptions/handle-block-exception/handle-block-exception-matching-messages-block.md new file mode 100644 index 000000000..bd37e0708 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Exceptions/handle-block-exception/handle-block-exception-matching-messages-block.md @@ -0,0 +1,233 @@ +--- +title: "Handle Block Exception Matching Messages" +linkTitle: "Handle Block Exception Matching Messages" +description: "Handles any exception thrown by the block it is connected to that matches any message in a given set of messages." +--- + +{{< figure src="/blocks/Cortex_Blocks_Exceptions_HandleBlockException_HandleBlockExceptionMatchingMessagesBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Exceptions.HandleBlockException.HandleBlockExceptionMatchingMessagesBlock)

+ +## Description + +Handles any [Exception][Exception Property] thrown by the block it is connected to that matches any message in a given set of [Messages][Messages Property]. + +## Examples + +### Handle Exception containing any of the Messages and save the Exception + +This example will handle any exception thrown by the block it is connected to that contains any of the messages in `["'List' is null", "'List' is empty"]` in its `Message` property; saving the exception to a variable, so the flow execution can use it to make decisions or take further action. + +It performs a [case-sensitive, culture-insensitive][Ordinal] comparison of messages. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Messages][Messages Property] | `($)Messages`, with value `["'List' is null", "'List' is empty"]` | `($)Messages` is a variable of type [IEnumerable][]<[String][]> | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Exception][Exception Property] | `($)Exception`, with no value | `($)Exception` is a variable that will be set to a [dynamic][] value | + +#### Result + +The block will handle any exception containing any of the messages in `["'List' is null", "'List' is empty"]` in its `Message` property and save the exception to the `($)Exception` variable for use later in the flow execution. + +E.g. + +If the List property of the Add Item At Beginning list block was set to null, it would throw a [PropertyNullException][] when executed. + +This exception's `Message` property would be `"'List' is null; it must be provided with a non-null value.\r\nPlease click the HelpLink for more information on how to fix this."`; therefore as we are checking for exceptions containing any of `["'List' is null", "'List' is empty"]` in their `Message`, this exception would be handled and saved to the `($)Exception` variable. + +*** + +### Handle Exception containing any of the Messages and discard the Exception + +This example is the same as the example above, except it does not save the exception to a variable, as the flow execution does not need it to make decisions or take further action. + +It performs a [case-sensitive, culture-insensitive][Ordinal] comparison of messages. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Messages][Messages Property] | `($)Messages`, with value `["'List' is null", "'List' is empty"]` | `($)Messages` is a variable of type [IEnumerable][]<[String][]> | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Exception][Exception Property] | `($)_`, with no value | `($)_` is a built-in variable that indicates the flow execution does not need to save the exception, so it can be discarded | + +#### Result + +The block will handle any exception containing any of the messages in `["'List' is null", "'List' is empty"]` in its `Message` property, but will not save the exception as the `($)_` variable indicates it is not needed and can be discarded. + +E.g. + +If the List property of the Add Item At Beginning list block was set to null, it would throw a [PropertyNullException][] when executed. + +This exception's `Message` property would be `"'List' is null; it must be provided with a non-null value.\r\nPlease click the HelpLink for more information on how to fix this."`; therefore as we are checking for exceptions containing any of `["'List' is null", "'List' is empty"]` in their `Message`, this exception would be handled, but because the `($)_` variable is used it will not be saved to the `($)Exception` variable. + +For more infomation about using the built-in `($)_` variable, please see [Discarding Output Properties][]. + +*** + +### Exception does not contain any of the Messages + +This example will not handle an exception thrown by the block it is connected to that does not contain any of `["'List' is null", "'List' is empty"]` in its `Message` property; the exception will be passed to the next exception handling block. + +It performs a [case-sensitive, culture-insensitive][Ordinal] comparison of messages. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Messages][Messages Property] | `($)Messages`, with value `["'List' is null", "'List' is empty"]` | `($)Messages` is a variable of type [IEnumerable][]<[String][]> | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Exception][Exception Property] | `($)Exception`, with no value | `($)Exception` is a variable that won't be set | + +#### Result + +The block will not handle any exception that does not contain any of `["'List' is null", "'List' is empty"]` in its `Message` property; instead the exception will be passed to the next exception handling block. + +E.g. + +If the List property of the Add Item At Beginning list block was set to a read-only List, it would throw a [CannotModifyReadOnlyListException][] when executed. + +This exception's `Message` property would be `"'List' cannot be modified because it's read-only.\r\nPlease click the HelpLink for more information on how to fix this."`; therefore as we are checking for exceptions containing any of `["'List' is null", "'List' is empty"]` in their `Message`, this exception would not be handled. + +*** + +## Properties + +### Messages + +The [Messages][Messages Property] the [Exception's][Exception Property] `Message` property must contain any of for this block to handle the [Exception][Exception Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IEnumerable][]<[String][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | `new List() {}` | + +### Comparison Type + +The [Comparison Type][ComparisonType Property] specifying the rules used to determine whether any of the [Messages][Messages Property] are contained in the [Exception's][Exception Property] `Message` property. + +For information about the [supported values][ComparisonTypes] for the [Comparison Type][ComparisonType Property] property and examples of how it is determined whether two pieces of text match, please see [Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [StringComparison][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | `Ordinal` | + +### Exception + +The [Exception][Exception Property] if it is handled by the block. + +[Exception][Exception Property] can be any [Exception data type][Exception]. + +If the flow execution does not need the exception, it can be discarded by assigning the built-in `($)_` variable. + +For more infomation about using the built-in `($)_` variable, please see [Discarding Output Properties][]. + +| | | +|--------------------|---------------------------| +| Data Type | [dynamic][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)_` to [discard][] | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [ArgumentException][] | Thrown when [Comparison Type][ComparisonType Property] is not one of the specified [StringComparison][] types (e.g. `(StringComparison)10`). | +| [PropertyEmptyException][] | Thrown when [Messages][Messages Property] contains no items. | +| [PropertyNullException][] | Thrown when [Messages][Messages Property] is `null`. | + +## Remarks + +### Comparison Types + +For information about the [supported values][ComparisonTypes] for the [Comparison Type][ComparisonType Property] property and examples of how it is determined whether two pieces of text match, please see [Equality][]. + +### Null or empty Message in Messages + +If any message in [Messages][Messages Property] is `null` or empty (i.e. `""`), and the thrown exception's `Message` property is also `null` or empty (i.e. `""`), the exception will be handled and saved to the variable specified in the [Exception][Exception Property] property. + +### Chaining Exception handling blocks + +Blocks that handle block exceptions can be chained together so different exceptions can be handled separately. The blocks are listed below: + +* [Handle Block Exception Matching Message][] +* [Handle Block Exception Matching Messages][] +* [Handle Block Exception Matching Type Name][] +* [Handle Block Exception Matching Type Names][] +* [Handle Block Exception][] + +{{< figure src="/images/chaining-handle-block-exception-blocks.png" >}} + +Each block has an input port on its left-hand side and, with the exception of the [Handle Block Exception][] block, also have an output port on their right-hand side; this is so they can pass any exception they do not handle to the next block. + +As the [Handle Block Exception][] block handles any exception, it does not require the output port. + +For more information about chaining of exception handling blocks and passing of exceptions, please see [Exception Handling][]. + +### Why does the Exception property return a dynamic data type? + +The decision for the [Exception][Exception Property] to return a [dynamic data type][dynamic] rather than an [Exception data type][Exception], was to avoid users having to [cast][Object Casting] the exception to its correct type to be able to use all of its properties. + +As a result, any issues with using the [Exception data type][Exception] (i.e. trying to access a property it does not have) will not be reported as messages when trying to debug the flow; they will only be discovered when the flow execution reaches the part of the flow with the issue. + +If it is desirable to have any issues reported as messages when trying to debug the flow, the user can [cast][Object Casting] the exception to its correct type. + +### Using the built-in ($)_ variable to discard the Exception from being saved + +Sometimes when an exception occurs the flow execution wants to use the exception to make decisions or take further action. However, there are occasions when the exception is not needed, and being forced to create another variable to save the exception is extra work for no benefit. In these circumstances it is possible to use the built-in `($)_` variable to indicate the exception does not need to be saved. + +For more infomation about using the built-in `($)_` variable, please see [Discarding Output Properties][]. + +[Messages Property]: {{< ref "#messages" >}} +[ComparisonType Property]: {{< ref "#comparison-type" >}} +[Exception Property]: {{< ref "#exception" >}} +[discard]: {{< ref "#using-the-built-in-_-variable-to-discard-the-exception-from-being-saved" >}} + +[Handle Block Exception]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleBlock.HandleBlockException.MainDoc" >}} +[Handle Block Exception Matching Message]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleBlock.HandleBlockExceptionMatchingMessage.MainDoc" >}} +[Handle Block Exception Matching Messages]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleBlock.HandleBlockExceptionMatchingMessages.MainDoc" >}} +[Handle Block Exception Matching Type Name]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleBlock.HandleBlockExceptionMatchingTypeName.MainDoc" >}} +[Handle Block Exception Matching Type Names]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleBlock.HandleBlockExceptionMatchingTypeNames.MainDoc" >}} +[Discarding Output Properties]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.DiscardingOutputs" >}} +[Exception Handling]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.HandlingExceptions.MainDoc" >}} +[Object Casting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectCasting.MainDoc" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.MainDoc" >}} +[ComparisonTypes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.MainDoc" >}} +[Ordinal]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.Ordinal" >}} + +[ArgumentException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentException" >}} +[CannotModifyReadOnlyListException]: {{< url path="Cortex.Reference.Exceptions.Lists.CannotModifyReadOnlyListException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[StringComparison]: {{< url path="Cortex.Reference.DataTypes.Text.StringComparison.MainDoc" >}} +[Exception]: {{< url path="Cortex.Reference.DataTypes.Exceptions.Exception.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Exceptions/handle-block-exception/handle-block-exception-matching-type-name-block.md b/content/en/docs/2024.11/Reference/Blocks/Exceptions/handle-block-exception/handle-block-exception-matching-type-name-block.md new file mode 100644 index 000000000..83f461a9a --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Exceptions/handle-block-exception/handle-block-exception-matching-type-name-block.md @@ -0,0 +1,228 @@ +--- +title: "Handle Block Exception Matching Type Name" +linkTitle: "Handle Block Exception Matching Type Name" +description: "Handles any exception thrown by the block it is connected to that matches a specified type name." +--- + +{{< figure src="/blocks/Cortex_Blocks_Exceptions_HandleBlockException_HandleBlockExceptionMatchingTypeNameBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Exceptions.HandleBlockException.HandleBlockExceptionMatchingTypeNameBlock)

+ +## Description + +Handles any [Exception][Exception Property] thrown by the block it is connected to that matches a specified [Type Name][TypeName Property]. + +## Examples + +### Handle Exception matching Type Name and save the Exception + +This example will handle any exception thrown by the block it is connected to that contains `"PropertyNull"` in its fully qualified `TypeName`; saving the exception to a variable, so the flow execution can use it to make decisions or take further action. + +It performs a [case-sensitive, culture-insensitive][Ordinal] comparison of type names. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Type Name][TypeName Property] | `($)TypeName`, with value `"PropertyNull"` | `($)TypeName` is a variable of type [String][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Exception][Exception Property] | `($)Exception`, with no value | `($)Exception` is a variable that will be set to a [dynamic][] value | + +#### Result + +The block will handle any exception containing `"PropertyNull"` in its fully qualified `TypeName` and save the exception to the `($)Exception` variable for use later in the flow execution. + +E.g. + +If the List property of the Add Item At Beginning list block was set to null, it would throw a [PropertyNullException][] when executed. + +This exception's fully qualified `TypeName` is `"Cortex.Exceptions.Common.Property.PropertyNullException"`; therefore as we are checking for exceptions containing `"PropertyNull"` in their `TypeName`, this exception would be handled and saved to the `($)Exception` variable. + +*** + +### Handle Exception matching Type Name and discard the Exception + +This example is the same as the example above, except it does not save the exception to a variable, as the flow execution does not need it to make decisions or take further action. + +It performs a [case-sensitive, culture-insensitive][Ordinal] comparison of type names. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Type Name][TypeName Property] | `($)TypeName`, with value `"PropertyNull"` | `($)TypeName` is a variable of type [String][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Exception][Exception Property] | `($)_`, with no value | `($)_` is a built-in variable that indicates the flow execution does not need to save the exception, so it can be discarded | + +#### Result + +The block will handle any exception containing `"PropertyNull"` in its fully qualified `TypeName`, but will not save the exception as the `($)_` variable indicates it is not needed and can be discarded. + +E.g. + +If the List property of the Add Item At Beginning list block was set to null, it would throw a [PropertyNullException][] when executed. + +This exception's fully qualified `TypeName` is `"Cortex.Exceptions.Common.Property.PropertyNullException"`; therefore as we are checking for exceptions containing `"PropertyNull"` in their `TypeName`, this exception would be handled, but because the `($)_` variable is used it will not be saved to the `($)Exception` variable. + +For more infomation about using the built-in `($)_` variable, please see [Discarding Output Properties][]. + +*** + +### Exception does not match Type Name + +This example will not handle an exception thrown by the block it is connected to that does not contain `"PropertyNull"` in its fully qualified `TypeName`; the exception will be passed to the next exception handling block. + +It performs a [case-sensitive, culture-insensitive][Ordinal] comparison of type names. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Type Name][TypeName Property] | `($)TypeName`, with value `"PropertyNull"` | `($)TypeName` is a variable of type [String][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Exception][Exception Property] | `($)Exception`, with no value | `($)Exception` is a variable that won't be set | + +#### Result + +The block will not handle any exception that does not contain `"PropertyNull"` in its fully qualified `TypeName`; instead the exception will be passed to the next exception handling block. + +E.g. + +If the List property of the Add Item At Beginning list block was set to a read-only List, it would throw a [CannotModifyReadOnlyListException][] when executed. + +This exception's fully qualified `TypeName` is `"Cortex.Exceptions.Lists.CannotModifyReadOnlyListException"`; therefore as we are checking for exceptions containing `"PropertyNull"` in their `TypeName`, this exception would not be handled. + +*** + +## Properties + +### Type Name + +The [Type Name][TypeName Property] the [Exception's][Exception Property] fully qualified `TypeName` must contain for this block to handle the [Exception][Exception Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | No value (defaults to `null`) | + +### Comparison Type + +The [Comparison Type][ComparisonType Property] specifying the rules used to determine whether [Type Name][TypeName Property] is contained in the [Exception's][Exception Property] fully qualified `TypeName`. + +For information about the [supported values][ComparisonTypes] for the [Comparison Type][ComparisonType Property] property and examples of how it is determined whether two pieces of text match, please see [Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [StringComparison][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | `Ordinal` | + +### Exception + +The [Exception][Exception Property] if it is handled by the block. + +[Exception][Exception Property] can be any [Exception data type][Exception]. + +If the flow execution does not need the exception, it can be discarded by assigning the built-in `($)_` variable. + +For more infomation about using the built-in `($)_` variable, please see [Discarding Output Properties][]. + +| | | +|--------------------|---------------------------| +| Data Type | [dynamic][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)_` to [discard][] | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [ArgumentException][] | Thrown when [Comparison Type][ComparisonType Property] is not one of the specified [StringComparison][] types (e.g. `(StringComparison)10`). | +| [PropertyEmptyException][] | Thrown when [Type Name][TypeName Property] is empty (i.e. `""`). | +| [PropertyNullException][] | Thrown when [Type Name][TypeName Property] is `null`. | + +## Remarks + +### Comparison Types + +For information about the [supported values][ComparisonTypes] for the [Comparison Type][ComparisonType Property] property and examples of how it is determined whether two pieces of text match, please see [Equality][]. + +### Chaining Exception handling blocks + +Blocks that handle block exceptions can be chained together so different exceptions can be handled separately. The blocks are listed below: + +* [Handle Block Exception Matching Message][] +* [Handle Block Exception Matching Messages][] +* [Handle Block Exception Matching Type Name][] +* [Handle Block Exception Matching Type Names][] +* [Handle Block Exception][] + +{{< figure src="/images/chaining-handle-block-exception-blocks.png" >}} + +Each block has an input port on its left-hand side and, with the exception of the [Handle Block Exception][] block, also have an output port on their right-hand side; this is so they can pass any exception they do not handle to the next block. + +As the [Handle Block Exception][] block handles any exception, it does not require the output port. + +For more information about chaining of exception handling blocks and passing of exceptions, please see [Exception Handling][]. + +### Why does the Exception property return a dynamic data type? + +The decision for the [Exception][Exception Property] to return a [dynamic data type][dynamic] rather than an [Exception data type][Exception], was to avoid users having to [cast][Object Casting] the exception to its correct type to be able to use all of its properties. + +As a result, any issues with using the [Exception data type][Exception] (i.e. trying to access a property it does not have) will not be reported as messages when trying to debug the flow; they will only be discovered when the flow execution reaches the part of the flow with the issue. + +If it is desirable to have any issues reported as messages when trying to debug the flow, the user can [cast][Object Casting] the exception to its correct type. + +### Using the built-in ($)_ variable to discard the Exception from being saved + +Sometimes when an exception occurs the flow execution wants to use the exception to make decisions or take further action. However, there are occasions when the exception is not needed, and being forced to create another variable to save the exception is extra work for no benefit. In these circumstances it is possible to use the built-in `($)_` variable to indicate the exception does not need to be saved. + +For more infomation about using the built-in `($)_` variable, please see [Discarding Output Properties][]. + +[TypeName Property]: {{< ref "#type-name" >}} +[ComparisonType Property]: {{< ref "#comparison-type" >}} +[Exception Property]: {{< ref "#exception" >}} +[discard]: {{< ref "#using-the-built-in-_-variable-to-discard-the-exception-from-being-saved" >}} + +[Handle Block Exception]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleBlock.HandleBlockException.MainDoc" >}} +[Handle Block Exception Matching Message]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleBlock.HandleBlockExceptionMatchingMessage.MainDoc" >}} +[Handle Block Exception Matching Messages]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleBlock.HandleBlockExceptionMatchingMessages.MainDoc" >}} +[Handle Block Exception Matching Type Name]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleBlock.HandleBlockExceptionMatchingTypeName.MainDoc" >}} +[Handle Block Exception Matching Type Names]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleBlock.HandleBlockExceptionMatchingTypeNames.MainDoc" >}} +[Discarding Output Properties]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.DiscardingOutputs" >}} +[Exception Handling]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.HandlingExceptions.MainDoc" >}} +[Object Casting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectCasting.MainDoc" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.MainDoc" >}} +[ComparisonTypes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.MainDoc" >}} +[Ordinal]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.Ordinal" >}} + +[ArgumentException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentException" >}} +[CannotModifyReadOnlyListException]: {{< url path="Cortex.Reference.Exceptions.Lists.CannotModifyReadOnlyListException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[StringComparison]: {{< url path="Cortex.Reference.DataTypes.Text.StringComparison.MainDoc" >}} +[Exception]: {{< url path="Cortex.Reference.DataTypes.Exceptions.Exception.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Exceptions/handle-block-exception/handle-block-exception-matching-type-names-block.md b/content/en/docs/2024.11/Reference/Blocks/Exceptions/handle-block-exception/handle-block-exception-matching-type-names-block.md new file mode 100644 index 000000000..a6f198f1d --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Exceptions/handle-block-exception/handle-block-exception-matching-type-names-block.md @@ -0,0 +1,232 @@ +--- +title: "Handle Block Exception Matching Type Names" +linkTitle: "Handle Block Exception Matching Type Names" +description: "Handles any exception thrown by the block it is connected to that matches any type name in a given set of type names." +--- + +{{< figure src="/blocks/Cortex_Blocks_Exceptions_HandleBlockException_HandleBlockExceptionMatchingTypeNamesBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Exceptions.HandleBlockException.HandleBlockExceptionMatchingTypeNamesBlock)

+ +## Description + +Handles any [Exception][Exception Property] thrown by the block it is connected to that matches any type name in a given set of [Type Names][TypeNames Property]. + +## Examples + +### Handle Exception matching any of the Type Names and save the Exception + +This example will handle any exception thrown by the block it is connected to that contains any of the type names in `["PropertyNull", "PropertyEmpty"]` in its fully qualified `TypeName`; saving the exception to a variable, so the flow execution can use it to make decisions or take further action. + +It performs a [case-sensitive, culture-insensitive][Ordinal] comparison of messages. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Type Names][TypeNames Property] | `($)TypeNames`, with value `["PropertyNull", "PropertyEmpty"]` | `($)TypeNames` is a variable of type [IEnumerable][]<[String][]> | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Exception][Exception Property] | `($)Exception`, with no value | `($)Exception` is a variable that will be set to a [dynamic][] value | + +#### Result + +The block will handle any exception containing any of the type names in `["PropertyNull", "PropertyEmpty"]` in its fully qualified `TypeName` and save the exception to the `($)Exception` variable for use later in the flow execution. + +E.g. + +If the List property of the Add Item At Beginning list block was set to null, it would throw a [PropertyNullException][] when executed. + +This exception's fully qualified `TypeName` is `"Cortex.Exceptions.Common.Property.PropertyNullException"`; therefore as we are checking for exceptions containing any of `["PropertyNull", "PropertyEmpty"]` in their `TypeName`, this exception would be handled and saved to the `($)Exception` variable. + +*** + +### Handle Exception containing any of the Type Names and discard the Exception + +This example is the same as the example above, except it does not save the exception to a variable, as the flow execution does not need it to make decisions or take further action. + +It performs a [case-sensitive, culture-insensitive][Ordinal] comparison of messages. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Type Names][TypeNames Property] | `($)TypeNames`, with value `["PropertyNull", "PropertyEmpty"]` | `($)TypeNames` is a variable of type [IEnumerable][]<[String][]> | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Exception][Exception Property] | `($)_`, with no value | `($)_` is a built-in variable that indicates the flow execution does not need to save the exception, so it can be discarded | + +#### Result + +The block will handle any exception containing any of the type names in `["PropertyNull", "PropertyEmpty"]` in its fully qualified `TypeName`, but will not save the exception as the `($)_` variable indicates it is not needed and can be discarded. + +E.g. + +If the List property of the Add Item At Beginning list block was set to null, it would throw a [PropertyNullException][] when executed. + +This exception's fully qualified `TypeName` is `"Cortex.Exceptions.Common.Property.PropertyNullException"`; therefore as we are checking for exceptions containing any of `["PropertyNull", "PropertyEmpty"]` in their `TypeName`, this exception would be handled, but because the `($)_` variable is used it will not be saved to the `($)Exception` variable. + +For more infomation about using the built-in `($)_` variable, please see [Discarding Output Properties][]. + +*** + +### Exception does not contain any of the Type Names + +This example will not handle an exception thrown by the block it is connected to that does not contain any of `["PropertyNull", "PropertyEmpty"]` in its fully qualified `TypeName`; the exception will be passed to the next exception handling block. + +It performs a [case-sensitive, culture-insensitive][Ordinal] comparison of messages. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Type Names][TypeNames Property] | `($)TypeNames`, with value `["PropertyNull", "PropertyEmpty"]` | `($)TypeNames` is a variable of type [IEnumerable][]<[String][]> | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Exception][Exception Property] | `($)Exception`, with no value | `($)Exception` is a variable that won't be set | + +#### Result + +The block will not handle any exception that does not contain any of `["PropertyNull", "PropertyEmpty"]` in its fully qualified `TypeName`; instead the exception will be passed to the next exception handling block. + +E.g. + +If the List property of the Add Item At Beginning list block was set to a read-only List, it would throw a [CannotModifyReadOnlyListException][] when executed. + +This exception's fully qualified `TypeName` is `"Cortex.Exceptions.Lists.CannotModifyReadOnlyListException"`; therefore as we are checking for exceptions containing any of `["PropertyNull", "PropertyEmpty"]` in their `TypeName`, this exception would not be handled. + +*** + +## Properties + +### Type Names + +The [Type Names][TypeNames Property] the [Exception's][Exception Property] fully qualified `TypeName` must contain any of for this block to handle the [Exception][Exception Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IEnumerable][]<[String][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | `new List() {}` | + +### Comparison Type + +The [Comparison Type][ComparisonType Property] specifying the rules used to determine whether any of the [Type Names][TypeNames Property] are contained in the [Exception's][Exception Property] fully qualified `TypeName`. + +For information about the [supported values][ComparisonTypes] for the [Comparison Type][ComparisonType Property] property and examples of how it is determined whether two pieces of text match, please see [Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [StringComparison][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | `Ordinal` | + +### Exception + +The [Exception][Exception Property] if it is handled by the block. + +[Exception][Exception Property] can be any [Exception data type][Exception]. + +If the flow execution does not need the exception, it can be discarded by assigning the built-in `($)_` variable. + +For more infomation about using the built-in `($)_` variable, please see [Discarding Output Properties][]. + +| | | +|--------------------|---------------------------| +| Data Type | [dynamic][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)_` to [discard][] | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [ArgumentException][] | Thrown when [Comparison Type][ComparisonType Property] is not one of the specified [StringComparison][] types (e.g. `(StringComparison)10`). | +| [PropertyContainsNullOrEmptyItemException][] | Thrown when any Type Name in [Type Names][TypeNames Property] is `null` or empty (i.e. `""`). | +| [PropertyEmptyException][] | Thrown when [Type Names][TypeNames Property] contains no items. | +| [PropertyNullException][] | Thrown when [Type Names][TypeNames Property] is `null`. | + +## Remarks + +### Comparison Types + +For information about the [supported values][ComparisonTypes] for the [Comparison Type][ComparisonType Property] property and examples of how it is determined whether two pieces of text match, please see [Equality][]. + +### Chaining Exception handling blocks + +Blocks that handle block exceptions can be chained together so different exceptions can be handled separately. The blocks are listed below: + +* [Handle Block Exception Matching Message][] +* [Handle Block Exception Matching Messages][] +* [Handle Block Exception Matching Type Name][] +* [Handle Block Exception Matching Type Names][] +* [Handle Block Exception][] + +{{< figure src="/images/chaining-handle-block-exception-blocks.png" >}} + +Each block has an input port on its left-hand side and, with the exception of the [Handle Block Exception][] block, also have an output port on their right-hand side; this is so they can pass any exception they do not handle to the next block. + +As the [Handle Block Exception][] block handles any exception, it does not require the output port. + +For more information about chaining of exception handling blocks and passing of exceptions, please see [Exception Handling][]. + +### Why does the Exception property return a dynamic data type? + +The decision for the [Exception][Exception Property] to return a [dynamic data type][dynamic] rather than an [Exception data type][Exception], was to avoid users having to [cast][Object Casting] the exception to its correct type to be able to use all of its properties. + +As a result, any issues with using the [Exception data type][Exception] (i.e. trying to access a property it does not have) will not be reported as messages when trying to debug the flow; they will only be discovered when the flow execution reaches the part of the flow with the issue. + +If it is desirable to have any issues reported as messages when trying to debug the flow, the user can [cast][Object Casting] the exception to its correct type. + +### Using the built-in ($)_ variable to discard the Exception from being saved + +Sometimes when an exception occurs the flow execution wants to use the exception to make decisions or take further action. However, there are occasions when the exception is not needed, and being forced to create another variable to save the exception is extra work for no benefit. In these circumstances it is possible to use the built-in `($)_` variable to indicate the exception does not need to be saved. + +For more infomation about using the built-in `($)_` variable, please see [Discarding Output Properties][]. + +[TypeNames Property]: {{< ref "#type-names" >}} +[ComparisonType Property]: {{< ref "#comparison-type" >}} +[Exception Property]: {{< ref "#exception" >}} +[discard]: {{< ref "#using-the-built-in-_-variable-to-discard-the-exception-from-being-saved" >}} + +[Handle Block Exception]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleBlock.HandleBlockException.MainDoc" >}} +[Handle Block Exception Matching Message]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleBlock.HandleBlockExceptionMatchingMessage.MainDoc" >}} +[Handle Block Exception Matching Messages]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleBlock.HandleBlockExceptionMatchingMessages.MainDoc" >}} +[Handle Block Exception Matching Type Name]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleBlock.HandleBlockExceptionMatchingTypeName.MainDoc" >}} +[Handle Block Exception Matching Type Names]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleBlock.HandleBlockExceptionMatchingTypeNames.MainDoc" >}} +[Discarding Output Properties]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.DiscardingOutputs" >}} +[Exception Handling]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.HandlingExceptions.MainDoc" >}} +[Object Casting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectCasting.MainDoc" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.MainDoc" >}} +[ComparisonTypes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.MainDoc" >}} +[Ordinal]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.Ordinal" >}} + +[ArgumentException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentException" >}} +[CannotModifyReadOnlyListException]: {{< url path="Cortex.Reference.Exceptions.Lists.CannotModifyReadOnlyListException.MainDoc" >}} +[PropertyContainsNullOrEmptyItemException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyContainsNullOrEmptyItemException.MainDoc" >}} + +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[StringComparison]: {{< url path="Cortex.Reference.DataTypes.Text.StringComparison.MainDoc" >}} +[Exception]: {{< url path="Cortex.Reference.DataTypes.Exceptions.Exception.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Exceptions/handle-flow-exception/_index.md b/content/en/docs/2024.11/Reference/Blocks/Exceptions/handle-flow-exception/_index.md new file mode 100644 index 000000000..9a2fdbacc --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Exceptions/handle-flow-exception/_index.md @@ -0,0 +1,5 @@ +--- +title: "Handle Flow Exception(s)" +linkTitle: "Handle Flow Exception(s)" +description: "Handle exceptions not handled by any Handle Block Exception or Handle Workspace Exception blocks." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Exceptions/handle-flow-exception/handle-flow-exception-workspace-block.md b/content/en/docs/2024.11/Reference/Blocks/Exceptions/handle-flow-exception/handle-flow-exception-workspace-block.md new file mode 100644 index 000000000..77d9d9a97 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Exceptions/handle-flow-exception/handle-flow-exception-workspace-block.md @@ -0,0 +1,143 @@ +--- +title: "Handle Flow Exception" +linkTitle: "Handle Flow Exception" +description: "Handles any unhandled exception within the Flow." +--- + +{{< figure src="/blocks/Cortex_Blocks_Exceptions_HandleFlowException_HandleFlowExceptionWorkspaceBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Exceptions.HandleFlowException.HandleFlowExceptionWorkspaceBlock)

+ +## Description + +Handles any unhandled [Exception][Exception Property] within the Flow. + +For more information, please see [Unhandled Exceptions][]. + +## Examples + +### Handle and save the Exception + +This example will handle any unhandled exception within the Flow; saving the exception to a variable, so the flow execution can use it to make decisions or take further action. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Exception][Exception Property] | `($)Exception`, with no value | `($)Exception` is a variable that will be set to a [dynamic][] value | + +#### Result + +The block will handle any unhandled exception within the Flow and save the exception to the `($)Exception` variable for use later in the flow execution. + +*** + +### Handle and discard the Exception from being saved + +This example will handle any unhandled exception within the Flow; not saving the exception to a variable, as the flow execution does not need it to make decisions or take further action. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Exception][Exception Property] | `($)_`, with no value | `($)_` is a built-in variable that indicates the flow execution does not need to save the exception, so it can be discarded | + +#### Result + +The block will handle any unhandled exception within the Flow, but will not save the exception as the `($)_` variable indicates it is not needed and can be discarded. + +For more infomation about using the built-in `($)_` variable, please see [Discarding Output Properties][]. + +*** + +## Properties + +### Exception + +The [Exception][Exception Property] that is handled. + +[Exception][Exception Property] can be any [Exception data type][Exception]. + +By default, this property is assigned the built-in `($)_` variable, so the exception will be discarded. If the flow execution does need the exception, a variable can be assigned to save it in. + +For more infomation about using the built-in `($)_` variable, please see [Discarding Output Properties][]. + +| | | +|--------------------|---------------------------| +| Data Type | [dynamic][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)_` to [discard][] | + +## Exceptions + +No exceptions are thrown by the block. + +## Remarks + +### Block Restrictions + +The following restrictions apply to this block: + +* A flow cannot contain more than one [Handle Flow Exception][] block. +* The [Handle Flow Exception][] block is not available on any palette. +* The [Handle Flow Exception][] block cannot be copied. +* The [Handle Flow Exception][] block cannot be deleted. + +### Unhandled Exceptions + +If an exception thrown by a block is not handled by any connected [Handle Block Exception blocks][], it will be passed to the [Handle Workspace Exception][] block on the same workspace. + +If the workspace does not contain a [Handle Workspace Exception][] block it will be rethrown by the Workspace block the workspace belongs to. + +This process repeats until: + +* The exception is handled, or +* The exception reaches the flow's top-level workspace, is not handled by any [Handle Block Exception blocks][] and the top-level workspace does not contain a [Handle Workspace Exception][] block. At this stage, the exception is handled by the flow's [Handle Flow Exception][] block. + +If an exception occurs within the workspace of the [Handle Flow Exception][] block and is not handled, the flow will end with a status of Error. + +{{< figure src="/images/flow-error-status.png" >}} + +For more information about chaining of exception handling blocks and passing of exceptions, please see [Exception Handling][]. + +### Why does the Exception property return a dynamic data type? + +The decision for the [Exception][Exception Property] to return a [dynamic data type][dynamic] rather than an [Exception data type][Exception], was to avoid users having to [cast][Object Casting] the exception to its correct type to be able to use all of its properties. + +As a result, any issues with using the [Exception data type][Exception] (i.e. trying to access a property it does not have) will not be reported as messages when trying to debug the flow; they will only be discovered when the flow execution reaches the part of the flow with the issue. + +If it is desirable to have any issues reported as messages when trying to debug the flow, the user can [cast][Object Casting] the exception to its correct type. + +### Using the built-in ($)_ variable to discard the Exception from being saved + +Sometimes when an exception occurs the flow execution wants to use the exception to make decisions or take further action. However, there are occasions when the exception is not needed, and being forced to create another variable to save the exception is extra work for no benefit. In these circumstances it is possible to use the built-in `($)_` variable to indicate the exception does not need to be saved. + +For more infomation about using the built-in `($)_` variable, please see [Discarding Output Properties][]. + +[Exception Property]: {{< ref "#exception" >}} +[discard]: {{< ref "#using-the-built-in-_-variable-to-discard-the-exception-from-being-saved" >}} + +[Unhandled Exceptions]: {{< ref "#unhandled-exceptions" >}} + +[Exception Handling]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.HandlingExceptions.MainDoc" >}} +[Object Casting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectCasting.MainDoc" >}} +[Discarding Output Properties]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.DiscardingOutputs" >}} + +[Handle Block Exception blocks]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleBlock.MainDoc" >}} +[Handle Flow Exception]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleFlow.HandleFlowException.MainDoc" >}} +[Handle Workspace Exception]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleWorkspace.HandleWorkspaceException.MainDoc" >}} + +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[Exception]: {{< url path="Cortex.Reference.DataTypes.Exceptions.Exception.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Exceptions/handle-workspace-exception/_index.md b/content/en/docs/2024.11/Reference/Blocks/Exceptions/handle-workspace-exception/_index.md new file mode 100644 index 000000000..bfe98fb7b --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Exceptions/handle-workspace-exception/_index.md @@ -0,0 +1,5 @@ +--- +title: "Handle Workspace Exception(s)" +linkTitle: "Handle Workspace Exception(s)" +description: "Handle exceptions not handled by any Handle Block Exception blocks." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Exceptions/handle-workspace-exception/handle-workspace-exception-block.md b/content/en/docs/2024.11/Reference/Blocks/Exceptions/handle-workspace-exception/handle-workspace-exception-block.md new file mode 100644 index 000000000..822923d3c --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Exceptions/handle-workspace-exception/handle-workspace-exception-block.md @@ -0,0 +1,144 @@ +--- +title: "Handle Workspace Exception" +linkTitle: "Handle Workspace Exception" +description: "Handles any unhandled exception within its workspace." +--- + +{{< figure src="/blocks/Cortex_Blocks_Exceptions_HandleWorkspaceException_HandleWorkspaceExceptionBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Exceptions.HandleWorkspaceException.HandleWorkspaceExceptionBlock)

+ +## Description + +Handles any unhandled [Exception][Exception Property] within its workspace. + +For more information, please see [Unhandled Exceptions][]. + +## Examples + +### Handle and save the Exception + +This example will handle any unhandled exception within the block's workspace; saving the exception to a variable, so the flow execution can use it to make decisions or take further action. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Exception][Exception Property] | `($)Exception`, with no value | `($)Exception` is a variable that will be set to a [dynamic][] value | + +#### Result + +The block will handle any unhandled exception within the block's workspace and save the exception to the `($)Exception` variable for use later in the flow execution. + +*** + +### Handle and discard the Exception from being saved + +This example will handle any unhandled exception within the block's workspace; not saving the exception to a variable, as the flow execution does not need it to make decisions or take further action. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Exception][Exception Property] | `($)_`, with no value | `($)_` is a built-in variable that indicates the flow execution does not need to save the exception, so it can be discarded | + +#### Result + +The block will handle any unhandled exception within the block's workspace, but will not save the exception as the `($)_` variable indicates it is not needed and can be discarded. + +For more infomation about using the built-in `($)_` variable, please see [Discarding Output Properties][]. + +*** + +## Properties + +### Exception + +The [Exception][Exception Property] that is handled. + +[Exception][Exception Property] can be any [Exception data type][Exception]. + +If the flow execution does not need the exception, it can be discarded by assigning the built-in `($)_` variable. + +For more infomation about using the built-in `($)_` variable, please see [Discarding Output Properties][]. + +| | | +|--------------------|---------------------------| +| Data Type | [dynamic][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)_` to [discard][] | + + +## Exceptions + +No exceptions are thrown by the block. + +## Remarks + +### Block Restrictions + +The following restrictions apply to this block: + +* A workspace cannot contain more than one [Handle Workspace Exception][] block. If more than one is added, it will be reported as a message when trying to debug the flow. +* The [Handle Workspace Exception][] block will only handle the first unhandled exception within its workspace. This is to prevent infinite recursion within the flow. Subsequent unhandled exceptions are passed to the next relevant exception handling block. For more information about chaining of exception handling blocks and passing of exceptions, please see [Exception Handling][]. +* A flow's Top-Level Workspace cannot contain a [Handle Workspace Exception][] block. If one is added, it will be reported as a message when trying to debug the flow. + +### Unhandled Exceptions + +If an exception thrown by a block is not handled by any connected [Handle Block Exception blocks][], it will be passed to the [Handle Workspace Exception][] block on the same workspace. + +If the workspace does not contain a [Handle Workspace Exception][] block it will be rethrown by the [Workspace][] block the workspace belongs to. + +This process repeats until: + +* The exception is handled, or +* The exception reaches the flow's top-level workspace, is not handled by any [Handle Block Exception blocks][] and the top-level workspace does not contain a [Handle Workspace Exception][] block. At this stage, the exception is handled by the flow's [Handle Flow Exception][] block. + +If an exception occurs within the workspace of the [Handle Flow Exception][] block and is not handled, the flow will end with a status of Error. + +{{< figure src="/images/flow-error-status.png" >}} + +For more information about chaining of exception handling blocks and passing of exceptions, please see [Exception Handling][]. + +### Why does the Exception property return a dynamic data type? + +The decision for the [Exception][Exception Property] to return a [dynamic data type][dynamic] rather than an [Exception data type][Exception], was to avoid users having to [cast][Object Casting] the exception to its correct type to be able to use all of its properties. + +As a result, any issues with using the [Exception data type][Exception] (i.e. trying to access a property it does not have) will not be reported as messages when trying to debug the flow; they will only be discovered when the flow execution reaches the part of the flow with the issue. + +If it is desirable to have any issues reported as messages when trying to debug the flow, the user can [cast][Object Casting] the exception to its correct type. + +### Using the built-in ($)_ variable to discard the Exception from being saved + +Sometimes when an exception occurs the flow execution wants to use the exception to make decisions or take further action. However, there are occasions when the exception is not needed, and being forced to create another variable to save the exception is extra work for no benefit. In these circumstances it is possible to use the built-in `($)_` variable to indicate the exception does not need to be saved. + +For more infomation about using the built-in `($)_` variable, please see [Discarding Output Properties][]. + +[Exception Property]: {{< ref "#exception" >}} +[discard]: {{< ref "#using-the-built-in-_-variable-to-discard-the-exception-from-being-saved" >}} + +[Unhandled Exceptions]: {{< ref "#unhandled-exceptions" >}} + +[Exception Handling]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.HandlingExceptions.MainDoc" >}} +[Object Casting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectCasting.MainDoc" >}} +[Discarding Output Properties]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.DiscardingOutputs" >}} + +[Handle Block Exception blocks]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleBlock.MainDoc" >}} +[Handle Flow Exception]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleFlow.HandleFlowException.MainDoc" >}} +[Handle Workspace Exception]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleWorkspace.HandleWorkspaceException.MainDoc" >}} +[Workspace]: {{< url path="Cortex.Reference.Blocks.Workspaces.Workspace.Workspace.MainDoc" >}} + +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[Exception]: {{< url path="Cortex.Reference.DataTypes.Exceptions.Exception.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Exceptions/rethrow-exception/_index.md b/content/en/docs/2024.11/Reference/Blocks/Exceptions/rethrow-exception/_index.md new file mode 100644 index 000000000..2867ac09a --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Exceptions/rethrow-exception/_index.md @@ -0,0 +1,5 @@ +--- +title: "Rethrow Exception" +linkTitle: "Rethrow Exception" +description: "Rethrow a previously thrown and handled exception." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Exceptions/rethrow-exception/rethrow-exception-block.md b/content/en/docs/2024.11/Reference/Blocks/Exceptions/rethrow-exception/rethrow-exception-block.md new file mode 100644 index 000000000..1289c161d --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Exceptions/rethrow-exception/rethrow-exception-block.md @@ -0,0 +1,89 @@ +--- +title: "Rethrow Exception" +linkTitle: "Rethrow Exception" +description: "Rethrows an Exception which has previously been thrown and handled." +--- + +{{< figure src="/blocks/Cortex_Blocks_Exceptions_RethrowException_RethrowExceptionBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Exceptions.RethrowException.RethrowExceptionBlock)

+ +## Description + +Rethrows an [Exception][Exception Property] which has previously been thrown and handled. + +## Examples + +### Rethrowing an Exception + +This example will rethrow the following handled [Exception][] thrown by an [Add Item At Beginning][] block: + +{{< figure src="/images/rethrow-original-list-exception.png" >}} + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Exception][Exception Property] | `($)Exception`, with value of`{"Exception Type": "PropertyNullException","Message": "'List' is null; it must be provided with a non-null value.\r\nPlease click the HelpLink for more information on how to fix this.","HelpLink": "https://docs.wearecortex.com/docs/2023.5/reference/exceptions/common/property/property-null-exception/"}` | `($)Exception` is a variable of type [PropertyNullException][] | + +#### Result + +Rethrowing `($)Exception` results in the [Exception][Exception Property] being rethrown and shown in the [Exceptions Viewer][]: + +{{< figure src="/images/rethrow-from-list-exception.png" >}} + +*** + +## Properties + +### Exception + +The [Exception][Exception Property] that is rethrown. + +[Exception][Exception Property] can be any [Exception data type][Exception]. + +| | | +|--------------------|---------------------------| +| Data Type | [Exception][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Exception` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyNullException][] | Thrown when [Exception][Exception Property] is `null`. | + +## Remarks + +### Propagating Exceptions + +Sometimes it is necessary to propagate exceptions thrown in a child flow to the flow that called it. Currently, using the [Rethrow Exception][] block to rethrow the [Exception][] from the [Handle Flow Exception][] workspace is the only way to achieve this. This can be seen below: + +{{< figure src="/images/rethrow-from-subflow.gif" >}} + +In future, additional ways to propagate exceptions between flows may be added. + +[Exception Property]: {{< ref "#exception" >}} + +[Rethrow Exception]: {{< url path="Cortex.Reference.Blocks.Exceptions.RethrowException.RethrowException.MainDoc" >}} +[Handle Flow Exception]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleFlow.HandleFlowException.MainDoc" >}} +[Add Item At Beginning]: {{< url path="Cortex.Reference.Blocks.Lists.AddItem.AddItemAtBeginning.MainDoc" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[Exception]: {{< url path="Cortex.Reference.DataTypes.Exceptions.Exception.MainDoc" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} + +[Exceptions Viewer]: {{< url path="Cortex.Guides.Studio.EastPanel.ExceptionsViewer">}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Blocks/Exceptions/throw-exception/_index.md b/content/en/docs/2024.11/Reference/Blocks/Exceptions/throw-exception/_index.md new file mode 100644 index 000000000..6825cb935 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Exceptions/throw-exception/_index.md @@ -0,0 +1,5 @@ +--- +title: "Throw Exception" +linkTitle: "Throw Exception" +description: "Throw an exception." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Exceptions/throw-exception/throw-new-flow-exception-block.md b/content/en/docs/2024.11/Reference/Blocks/Exceptions/throw-exception/throw-new-flow-exception-block.md new file mode 100644 index 000000000..31007f815 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Exceptions/throw-exception/throw-new-flow-exception-block.md @@ -0,0 +1,185 @@ +--- +title: "Throw New Flow Exception" +linkTitle: "Throw New Flow Exception" +description: "Throws a new FlowException with the specified message, category, error code, details, inner exception and help link." +--- + +{{< figure src="/blocks/Cortex_Blocks_Exceptions_ThrowException_ThrowNewFlowExceptionBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Exceptions.ThrowException.ThrowNewFlowExceptionBlock)

+ +## Description + +Throws a new [FlowException][] with the specified [Message][Message Property], [Category][Category Property], [Error Code][ErrorCode Property], [Details][Details Property], [Inner Exception][InnerException Property] and [Help Link][HelpLink Property]. + +All properties are optional, and if not supplied will be set to the following default values: + +| Property | Default Value | +|--------------------|-----------------------------------| +| [Message][Message Property] | `"Exception of type 'Cortex.Exceptions.Flows.FlowException' was thrown."` | +| [Category][Category Property] | `null` | +| [Error Code][ErrorCode Property] | `null` | +| [Details][Details Property] | `null`| +| [InnerException][InnerException Property] | `null` | +| [HelpLink][HelpLink Property] | `https://docs.wearecortex.com/docs/2023.5/reference/exceptions/flows/flow-exception/` | + +## Examples + +### Throw new FlowException with full configuration + +This example will throw a new [FlowException][] with all properties configured. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Message][Message Property] | `($)Message`, with value `"Custom Message"` | `($)Message` is a variable of type [String][] | +| [Category][Category Property] | `($)Category`, with value `"Custom Category"` | `($)Category` is a variable of type [String][] | +| [Error Code][ErrorCode Property] | `($)ErrorCode`, with value `100` | `($)ErrorCode` is a variable of type [Nullable][]<[Int32][]> | +| [Details][Details Property] | `($)Details`, with value `{"DetailsKey1" : "DetailsValue1", "DetailsKey2" : "DetailsValue2"}` | `($)Details` is a variable of type [IDictionary][]<[String][], [String][]> | +| [InnerException][InnerException Property] | `($)InnerException`, with value `($)Exception` containing another [FlowException][] with default properties | `($)InnerException` is a variable of type [FlowException][] | +| [HelpLink][HelpLink Property] | `($)HelpLink`, with value `"http://customdomain.com/customurl"` | `($)HelpLink` is a variable of type [String][] | + +#### Result + +Throwing a new [FlowException][] with properties configured as above will result in the following exception: + +{{< figure src="/images/flow-exception-full-configuration.png" >}} + +*** + +### Throw new FlowException with no configuration + +This example will throw a new [FlowException][] with no configuration. + +#### Properties + +No properties are configured for this example. + +#### Result + +Throwing a new [FlowException][] without configuring any of the block's properties will result in the following exception: + +{{< figure src="/images/flow-exception-no-configuration.png" >}} + +*** + +## Properties + +### Message + +A [Message][Message Property] describing the exception that occurred. + +If [Message][Message Property] is not provided or is set to `null`, it will default to `"Exception of type 'Cortex.Exceptions.Flows.FlowException' was thrown."`. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | `$@""` | + +### Category + +A [Category][Category Property] that can be used to categorise similar types of exception that has occurred (e.g. an `AuthenticationError` category may be set for exceptions relating to authentication issues). This can then be used for future decision making in the flow, or to assist in troubleshooting and reporting. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### Error Code + +An [Error Code][ErrorCode Property] that can be used to uniquely identify the type of exception (e.g. There may be multiple exceptions with the same `AuthenticationError` category set, such as `InvalidCredentials`, `TokenExpired`. In this case each exception can be assigned its own unique [Error Code][ErrorCode Property]; `InvalidCredentials` = `100` and `TokenExpired` = `101`). This can then be used for future decision making in the flow, or to assist in troubleshooting and reporting. + +If [Error Code][ErrorCode Property] is not provided, it will default to `null`. + +| | | +|--------------------|---------------------------| +| Data Type | [Nullable][]<[Int32][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### Details + +[Details][Details Property] can be used to provide more detailed information about the exception. It can be any type of [Object][]. This can then be used for future decision making in the flow, or to assist in troubleshooting and reporting. + +| | | +|--------------------|---------------------------| +| Data Type | [dynamic][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### Inner Exception + +[Inner Exception][InnerException Property] can be used to include another [exception][] within the thrown exception (e.g. If the [FlowException][] has been thrown as a result of handling another [exception][], then the handled [exception][] can be included within the [FlowException][] to add traceability). + +| | | +|--------------------|---------------------------| +| Data Type | [Exception][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### Help Link + +A [Help Link][HelpLink Property] can be specified where further information can be found about the exception being thrown. + +If [Help Link][HelpLink Property] is not provided or is set to `null`, it will default to a link to the [FlowException][] page; please note this page will not provide any guidance on how to fix the solution specific [exception][]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +## Exceptions + +No exceptions are thrown by the block. + +## Remarks + +### Null Message + +If [Message][Message Property] is not provided or is set to `null`, it will default to `"Exception of type 'Cortex.Exceptions.Flows.FlowException' was thrown."`. + +### Null Help Link + +If [Help Link][HelpLink Property] is not provided or is set to `null`, it will default to a link to the [FlowException][] page, please note this page will not provide any guidance on how to fix the solution specific [exception][]. + +[Message Property]: {{< ref "#message" >}} +[Category Property]: {{< ref "#category" >}} +[ErrorCode Property]: {{< ref "#error-code" >}} +[Details Property]: {{< ref "#details" >}} +[InnerException Property]: {{< ref "#inner-exception" >}} +[HelpLink Property]: {{< ref "#help-link" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[Object]: {{< url path="Cortex.Reference.DataTypes.All.Object.MainDoc" >}} +[IDictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[Exception]: {{< url path="Cortex.Reference.DataTypes.Exceptions.Exception.MainDoc" >}} +[FlowException]: {{< url path="Cortex.Reference.Exceptions.Flows.FlowException.MainDoc" >}} +[Nullable]: {{< url path="Cortex.Reference.DataTypes.Other.Nullable.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/_index.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/_index.md new file mode 100644 index 000000000..f42a0941a --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/_index.md @@ -0,0 +1,5 @@ +--- +title: "Files & Folders" +linkTitle: "Files & Folders" +description: "Blocks related to working with Files and Folders." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/check-file/_index.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/check-file/_index.md new file mode 100644 index 000000000..e5fb6edbb --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/check-file/_index.md @@ -0,0 +1,5 @@ +--- +title: "Check File Exists" +linkTitle: "Check File Exists" +description: "Check if a file exists." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/check-file/check-file-exists-block.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/check-file/check-file-exists-block.md new file mode 100644 index 000000000..2a00b2f51 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/check-file/check-file-exists-block.md @@ -0,0 +1,159 @@ +--- +title: "Check File Exists" +linkTitle: "Check File Exists" +description: "Checks if a file exists at the specified file path." +--- + +{{< figure src="/blocks/Cortex_Blocks_FilesAndFolders_CheckFile_CheckFileExistsBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.FilesAndFolders.CheckFile.CheckFileExistsBlock)

+ +## Description + +Checks if a [File Exists][FileExists Property] at the specified [File Path][FilePath Property]. + +## Examples + +### File exists at the specified File Path + +This example will check if `"C:\Windows\System32\cmd.exe"` exists on the Windows server executing the flow. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [File Path][FilePath Property] | `($)FilePath`, with value `@"C:\Windows\System32\cmd.exe"` | `($)FilePath` is a variable of type [String][] | +| [File Exists][FileExists Property] | `($)FileExists`, with no value | `($)FileExists` is a variable that will be set to a [Boolean][] value | + +#### Result + +`"C:\Windows\System32\cmd.exe"` is the command prompt application on Windows machines. Checking this on the Windows server executing the flow will result in the variable `($)FileExists` being updated to the following: + +```json +true +``` + +*** + +### File does not exist at the specified File Path + +This example will check if `"/etc/passwd"` exists on the Windows server executing the flow. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [File Path][FilePath Property] | `($)FilePath`, with value `"/etc/passwd"` | `($)FilePath` is a variable of type [String][] | +| [File Exists][FileExists Property] | `($)FileExists`, with no value | `($)FileExists` is a variable that will be set to a [Boolean][] value | + +#### Result + +`"/etc/passwd"` is a file that exists on Linux machines containing the list of system accounts. Checking this on the Windows server executing the flow will result in the variable `($)FileExists` being updated to the following: + +```json +false +``` + +*** + +## Properties + +### File Path + +The [File Path][FilePath Property] to check a file exists at. + +The [File Path][FilePath Property] is case-insensitive, and any trailing spaces will be automatically removed. + +For information about the supported file path formats (i.e. absolute, relative, UNC etc.) and examples of each, please see [File & Folder Paths][]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)FilePath` with no value | + +### File Exists + +The result of the file exists check. + +If the file exists at the specified [File Path][FilePath Property], the specified variable will be set to `true`, otherwise it will be set to `false`. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)FileExists` with no value | + +## Exceptions + +No exceptions are thrown by the block. + +## Remarks + +### File Paths + +For information about the supported file path formats (i.e. absolute, relative, UNC etc.) and examples of each, please see [File & Folder Paths][]. + +### File Path needs escaping + +[File Path][FilePath Property] requires `\` characters to be escaped, otherwise each unescaped `\` will be reported as an `Invalid property value` message when trying to debug the flow. + +Escaping can be done in two ways: + +* Escaping the `\` character with another `\` character (e.g. `"C:\\Windows\\System32\\cmd.exe"`), or +* Prepending an `@` character before the start of the [File Path][FilePath Property] (e.g. `@"C:\Windows\System32\cmd.exe"`) + +### Null File Path + +If [File Path][FilePath Property] is `null` the variable specified in the [File Exists][FileExists Property] property will be set to `false`. + +### Empty File Path + +If [File Path][FilePath Property] is empty (i.e. `""`) the variable specified in the [File Exists][FileExists Property] property will be set to `false`. + +### Invalid File Path + +If [File Path][FilePath Property] is invalid (i.e. contains any of the following characters: `"`, `*`, `?`, `|`, `<`, `>`, `:`, `\`, `/`) the variable specified in the [File Exists][FileExists Property] property will be set to `false`. + +### File Path points to a folder + +If [File Path][FilePath Property] points to a folder, the variable specified in the [File Exists][FileExists Property] property will be set to `false`. + +To check if a folder exists, use the [Check Folder Exists block][]. + +### File Path contains leading spaces + +If [File Path][FilePath Property] contains leading spaces they are not removed; however, trailing spaces are removed. + +### Error occurs whilst checking if the file exists + +If any error occurs whilst checking if a file exists at the specified [File Path][FilePath Property], the variable specified in the [File Exists][FileExists Property] property will be set to `false`. + +### User does not have necessary permissions to check if the file exists + +If the user the flow is executing as does not have permissions to check if a file exists at the specified [File Path][FilePath Property], the variable specified in the [File Exists][FileExists Property] property will be set to `false`. + +[FilePath Property]: {{< ref "#file-path" >}} +[FileExists Property]: {{< ref "#file-exists" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[File & Folder Paths]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.Paths.MainDoc" >}} + +[Check Folder Exists block]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.CheckFolder.CheckFolderExists.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/check-folder/_index.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/check-folder/_index.md new file mode 100644 index 000000000..4ae62e559 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/check-folder/_index.md @@ -0,0 +1,5 @@ +--- +title: "Check Folder Exists" +linkTitle: "Check Folder Exists" +description: "Check if a folder exists." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/check-folder/check-folder-exists-block.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/check-folder/check-folder-exists-block.md new file mode 100644 index 000000000..182858896 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/check-folder/check-folder-exists-block.md @@ -0,0 +1,159 @@ +--- +title: "Check Folder Exists" +linkTitle: "Check Folder Exists" +description: "Checks if a folder exists at the specified folder path." +--- + +{{< figure src="/blocks/Cortex_Blocks_FilesAndFolders_CheckFolder_CheckFolderExistsBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.FilesAndFolders.CheckFolder.CheckFolderExistsBlock)

+ +## Description + +Checks if a [Folder Exists][FolderExists Property] at the specified [Folder Path][FolderPath Property]. + +## Examples + +### Folder exists at the specified Folder Path + +This example will check if `"C:\Windows\System32"` exists on the Windows server executing the flow. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Folder Path][FolderPath Property] | `($)FolderPath`, with value `@"C:\Windows\System32"` | `($)FolderPath` is a variable of type [String][] | +| [Folder Exists][FolderExists Property] | `($)FolderExists`, with no value | `($)FolderExists` is a variable that will be set to a [Boolean][] value | + +#### Result + +`"C:\Windows\System32"` is the folder on Windows machines that contains files critical to the functioning of the operating system. Checking this on the Windows server executing the flow will result in the variable `($)FolderExists` being updated to the following: + +```json +true +``` + +*** + +### Folder does not exist at the specified Folder Path + +This example will check if `"/etc"` exists on the Windows server executing the flow. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Folder Path][FolderPath Property] | `($)FolderPath`, with value `"/etc"` | `($)FolderPath` is a variable of type [String][] | +| [Folder Exists][FolderExists Property] | `($)FolderExists`, with no value | `($)FolderExists` is a variable that will be set to a [Boolean][] value | + +#### Result + +`"/etc"` is the folder on Linux machines containing system configuration files. Checking this on the Windows server executing the flow will result in the variable `($)FolderExists` being updated to the following: + +```json +false +``` + +*** + +## Properties + +### Folder Path + +The [Folder Path][FolderPath Property] to check a folder exists at. + +The [Folder Path][FolderPath Property] is case-insensitive, any trailing spaces will be automatically removed, and can end with or without a trailing `\` (e.g. `@"C:\Windows\System32"` or `@"C:\Windows\System32\"`). + +For information about the supported folder path formats (i.e. absolute, relative, UNC etc.) and examples of each, please see [File & Folder Paths][]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)FolderPath` with no value | + +### Folder Exists + +The result of the folder exists check. + +If the folder exists at the specified [Folder Path][FolderPath Property], the specified variable will be set to `true`, otherwise it will be set to `false`. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)FolderExists` with no value | + +## Exceptions + +No exceptions are thrown by the block. + +## Remarks + +### Folder Paths + +For information about the supported folder path formats (i.e. absolute, relative, UNC etc.) and examples of each, please see [File & Folder Paths][]. + +### Folder Path needs escaping + +[Folder Path][FolderPath Property] requires `\` characters to be escaped, otherwise each unescaped `\` will be reported as an `Invalid property value` message when trying to debug the flow. + +Escaping can be done in two ways: + +* Escaping the `\` character with another `\` character (e.g. `"C:\\Windows\\System32"`), or +* Prepending an `@` character before the start of the [Folder Path][FolderPath Property] (e.g. `@"C:\Windows\System32"`) + +### Null Folder Path + +If [Folder Path][FolderPath Property] is `null` the variable specified in the [Folder Exists][FolderExists Property] property will be set to `false`. + +### Empty Folder Path + +If [Folder Path][FolderPath Property] is empty (i.e. `""`) the variable specified in the [Folder Exists][FolderExists Property] property will be set to `false`. + +### Invalid Folder Path + +If [Folder Path][FolderPath Property] is invalid (i.e. contains any of the following characters: `"`, `*`, `?`, `|`, `<`, `>`, `:`, `\`, `/`) the variable specified in the [Folder Exists][FolderExists Property] property will be set to `false`. + +### Folder Path points to a file + +If [Folder Path][FolderPath Property] points to a file, the variable specified in the [Folder Exists][FolderExists Property] property will be set to `false`. + +To check if a file exists, use the [Check File Exists block][]. + +### Folder Path contains leading spaces + +If [Folder Path][FolderPath Property] contains leading spaces they are not removed; however, trailing spaces are removed. + +### Error occurs whilst checking if the folder exists + +If any error occurs whilst checking if a folder exists at the specified [Folder Path][FolderPath Property], the variable specified in the [Folder Exists][FolderExists Property] property will be set to `false`. + +### User does not have necessary permissions to check if the folder exists + +If the user the flow is executing as does not have permissions to check if a folder exists at the specified [Folder Path][FolderPath Property], the variable specified in the [Folder Exists][FolderExists Property] property will be set to `false`. + +[FolderPath Property]: {{< ref "#folder-path" >}} +[FolderExists Property]: {{< ref "#folder-exists" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[File & Folder Paths]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.Paths.MainDoc" >}} + +[Check File Exists block]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.CheckFile.CheckFileExists.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/copy-file/_index.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/copy-file/_index.md new file mode 100644 index 000000000..71e54f21e --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/copy-file/_index.md @@ -0,0 +1,5 @@ +--- +title: "Copy File(s)" +linkTitle: "Copy File(s)" +description: "Copy a file or multiple files." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/copy-file/copy-file-block.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/copy-file/copy-file-block.md new file mode 100644 index 000000000..0542f41e9 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/copy-file/copy-file-block.md @@ -0,0 +1,224 @@ +--- +title: "Copy File" +linkTitle: "Copy File" +description: "Copies a file at the specified file path to the given destination path." +--- + +{{< figure src="/blocks/Cortex_Blocks_FilesAndFolders_CopyFile_CopyFileBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.FilesAndFolders.CopyFile.CopyFileBlock)

+ +## Description + +Copies a file at the specified [File Path][FilePath Property] to the given [Destination Path][DestinationPath Property], with an option to [Overwrite][Overwrite Property] the file if it already exists. + +## Examples + +### Copy a file to a folder keeping the same file name + +This example will copy `"C:\Source\OriginalFile.txt"` to `"C:\Destination"`, with the same file name of `"OriginalFile.txt"`. + +In this example assume `"C:\Destination"` does not already contain a file named `"OriginalFile.txt"`, so overwrite can be set to either `true` or `false` and it will still work. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [File Path][FilePath Property] | `($)FilePath`, with value `@"C:\Source\OriginalFile.txt"` | `($)FilePath` is a variable of type [String][] | +| [Destination Path][DestinationPath Property] | `($)DestinationPath`, with value `@"C:\Destination"` | `($)DestinationPath` is a variable of type [String][] | +| [Overwrite][Overwrite Property] | `($)Overwrite`, with value `false` | `($)Overwrite` is a variable of type [Boolean][] | + +#### Result + +Copying `"C:\Source\OriginalFile.txt"` to `"C:\Destination"` that does not already contain a file named `"OriginalFile.txt"` will: + +* Create a new file at `"C:\Destination\OriginalFile.txt"` with: + * The content copied from `"C:\Source\OriginalFile.txt"`. + * The `Date Created` set to the time the copy occurred. + * The `Date Accessed` set to the time the copy occurred. + * The `Date Modified` copied from `"C:\Source\OriginalFile.txt"`. + * The [File Attributes][] copied from `"C:\Source\OriginalFile.txt"`. + +*** + +### Copy a file to a folder with a new name + +This example will copy `"C:\Source\OriginalFile.txt"` to `"C:\Destination"`, with a new file name of `"NewFile.txt"`. + +To rename the file when it is being copied, please note that the [Destination Path][DestinationPath Property] must be a file path, rather than a folder path (e.g. `"C:\Destination\NewFile.txt"` rather than `"C:\Destination"`). + +In this example assume `"C:\Destination"` does not already contain a file named `"NewFile.txt"`, so overwrite can be set to either `true` or `false` and it will still work. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [File Path][FilePath Property] | `($)FilePath`, with value `@"C:\Source\OriginalFile.txt"` | `($)FilePath` is a variable of type [String][] | +| [Destination Path][DestinationPath Property] | `($)DestinationPath`, with value `@"C:\Destination\NewFile.txt"` | `($)DestinationPath` is a variable of type [String][] | +| [Overwrite][Overwrite Property] | `($)Overwrite`, with value `false` | `($)Overwrite` is a variable of type [Boolean][] | + +#### Result + +Copying `"C:\Source\OriginalFile.txt"` to the path `"C:\Destination\NewFile.txt"` that does not already exist will: + +* Create a new file at `"C:\Destination\NewFile.txt"` with: + * The content copied from `"C:\Source\OriginalFile.txt"`. + * The `Date Created` set to the time the copy occurred. + * The `Date Accessed` set to the time the copy occurred. + * The `Date Modified` copied from `"C:\Source\OriginalFile.txt"`. + * The [File Attributes][] copied from `"C:\Source\OriginalFile.txt"`. + +*** + +### Copy a file to a folder overwriting any file that already exists with the same name + +This example will copy `"C:\Source\FileAlreadyExists.txt"` to `"C:\Destination"`, with the same file name of `"FileAlreadyExists.txt"`. + +In this example assume `"C:\Destination"` already contains a file named `"FileAlreadyExists.txt"`, so overwrite must be set to `true` to ensure the content of the existing file can be overwritten. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [File Path][FilePath Property] | `($)FilePath`, with value `@"C:\Source\FileAlreadyExists.txt"` | `($)FilePath` is a variable of type [String][] | +| [Destination Path][DestinationPath Property] | `($)DestinationPath`, with value `@"C:\Destination"` | `($)DestinationPath` is a variable of type [String][] | +| [Overwrite][Overwrite Property] | `($)Overwrite`, with value `true` | `($)Overwrite` is a variable of type [Boolean][] | + +#### Result + +Copying `"C:\Source\FileAlreadyExists.txt"` to `"C:\Destination"` and overwriting the existing file named `"FileAlreadyExists.txt"` will: + +* Overwrite the existing file at `"C:\Destination\FileAlreadyExists.txt"` with: + * The content copied from `"C:\Source\FileAlreadyExists.txt"`. + * The `Date Created` left unchanged. + * The `Date Accessed` set to the time the copy occurred. + * The `Date Modified` copied from `"C:\Source\FileAlreadyExists.txt"`. + * The [File Attributes][] copied from `"C:\Source\FileAlreadyExists.txt"`. + +*** + +## Properties + +### File Path + +The [File Path][FilePath Property] to copy the file from. + +The [File Path][FilePath Property] is case-insensitive, cannot contain any wildcard characters, and any trailing spaces will be automatically removed. + +For information about the supported file path formats (i.e. absolute, relative, UNC etc.) and examples of each, please see [File & Folder Paths][]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)FilePath` with no value | + +### Destination Path + +The [Destination Path][DestinationPath Property] to copy the file to. + +The [Destination Path][DestinationPath Property] is case-insensitive, cannot contain any wildcard characters, and any trailing spaces will be automatically removed. + +The [Destination Path][DestinationPath Property] can either point to a folder or a file: + +* If it points to a folder, the copied file will have the name specified in the [File Path][FilePath Property]. +* If it points to a file, the copied file will have the name specified in the [Destination Path][DestinationPath Property]. + +Any non-existing folders within the [Destination Path][DestinationPath Property] will be automatically created. + +For information about the supported file and folder path formats (i.e. absolute, relative, UNC etc.) and examples of each, including how it is determined if a path points to a folder or a file, please see [File & Folder Paths][]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | No value (defaults to `""`) | + +### Overwrite + +Option to [Overwrite][Overwrite Property] the file in the [Destination Path][DestinationPath Property] if it already exists. + +If the file exists, [Overwrite][Overwrite Property] must be set to `true`, otherwise an [OperationFailedException][] will be thrown. By default, this is set to `false` to avoid implicit and accidental overwriting of existing files. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `false` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [InvalidPathException][] | The [Destination Path][DestinationPath Property] contains leading spaces. | +| | The [Destination Path][DestinationPath Property] contains only whitespace, or the NUL character (i.e. `\0`), or contains one or more invalid characters (i.e. `"`, `*`, `?`, `\|`, `<`, `>`, `:`, `\`, `/`) in any file or folder names. | +| | The [Destination Path][DestinationPath Property] (if it points to a file), or the [Destination Path][DestinationPath Property] (if it points to a folder) plus the file name, exceeds the system-defined maximum length (typically 32,767 characters). | +| [OperationFailedException][] | The [File Path][FilePath Property] does not exist. | +| | The [File Path][FilePath Property] points to a folder. | +| | The [File Path][FilePath Property] contains leading spaces. | +| | The [File Path][FilePath Property] contains only whitespace, or the NUL character (i.e. `\0`), or contains one or more invalid characters (i.e. `"`, `*`, `?`, `\|`, `<`, `>`, `:`, `\`, `/`) in any file or folder names. | +| | The [File Path][FilePath Property] exceeds the system-defined maximum length (typically 32,767 characters). | +| | The [File Path][FilePath Property] or [Destination Path][DestinationPath Property] is invalid (for example, it is on an unmapped drive). | +| | The file in the specified [Destination Path][DestinationPath Property] exists and overwrite is `false`. | +| | The file in the specified [Destination Path][DestinationPath Property] exists, is read-only and overwrite is `true`. | +| | The file in the specified [Destination Path][DestinationPath Property] exists, is hidden and overwrite is `true`, but the file in the specified [File Path][FilePath Property] is not hidden.| +| | The user the flow is executing as does not have the required permissions to copy the file (e.g. not having read access to the [File Path][FilePath Property] or write access to the [Destination Path][DestinationPath Property]). | +| | An unexpected error occurs when copying the file. | +| [PropertyEmptyException][] | Thrown when [File Path][FilePath Property] or [Destination Path][DestinationPath Property] are empty (i.e. `""`). | +| [PropertyNullException][] | Thrown when [File Path][FilePath Property] or [Destination Path][DestinationPath Property] are `null`. | + +## Remarks + +### File and Folder Paths + +For information about the supported file and folder path formats (i.e. absolute, relative, UNC etc.) and examples of each, including how it is determined if a path points to a folder or a file, please see [File & Folder Paths][]. + +### File Path and Destination Path need escaping + +[File Path][FilePath Property] and [Destination Path][DestinationPath Property] require `\` characters to be escaped, otherwise each unescaped `\` will be reported as an `Invalid property value` message when trying to debug the flow. + +Escaping can be done in two ways: + +* Escaping the `\` character with another `\` character (e.g. `"C:\\Source\\OriginalFile.txt"`), or +* Prepending an `@` character before the start of the [File Path][FilePath Property] (e.g. `@"C:\Source\OriginalFile.txt"`) and [Destination Path][DestinationPath Property] (e.g. `@"C:\Destination"`). + +### File Attributes + +When copying a file from the [File Path][FilePath Property] to the new [Destination Path][DestinationPath Property], all of the file's attributes will also be copied. + +For information about the file attributes (i.e. ReadOnly, Hidden, Archive etc.), please see [File & Folder Attributes][]. + +[FilePath Property]: {{< ref "#file-path" >}} +[DestinationPath Property]: {{< ref "#destination-path" >}} +[Overwrite Property]: {{< ref "#overwrite" >}} + +[File Attributes]: {{< ref "#file-attributes" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[InvalidPathException]: {{< url path="Cortex.Reference.Exceptions.FilesAndFolders.InvalidPathException.MainDoc" >}} +[OperationFailedException]: {{< url path="Cortex.Reference.Exceptions.FilesAndFolders.OperationFailedException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[File & Folder Attributes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.Attributes.MainDoc" >}} +[File & Folder Paths]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.Paths.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/copy-file/copy-files-block.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/copy-file/copy-files-block.md new file mode 100644 index 000000000..c54a51005 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/copy-file/copy-files-block.md @@ -0,0 +1,215 @@ +--- +title: "Copy Files" +linkTitle: "Copy Files" +description: "Copies files at the specified file paths to the given destination path." +--- + +{{< figure src="/blocks/Cortex_Blocks_FilesAndFolders_CopyFile_CopyFilesBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.FilesAndFolders.CopyFile.CopyFilesBlock)

+ +## Description + +Copies files at the specified [File Paths][FilePaths Property] to the given [Destination Path][DestinationPath Property], with an option to [Overwrite][Overwrite Property] the files if they already exist. + +## Examples + +### Copy files to a folder keeping the same file names + +This example will copy `["C:\Source\OriginalFile1.txt", "C:\Source\OriginalFile2.txt"]` to `"C:\Destination"`, with the same file names of `"OriginalFile1.txt"` and `"OriginalFile2.txt"`. + +In this example assume `"C:\Destination"` does not already contain a file named `"OriginalFile1.txt"` or a file named `"OriginalFile2.txt"`, so overwrite can be set to either `true` or `false` and it will still work. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [File Paths][FilePaths Property] | `($)FilePaths`, with value `[@"C:\Source\OriginalFile1.txt", @"C:\Source\OriginalFile2.txt"]` | `($)FilePaths` is a variable of type [IEnumerable][]<[String][]> | +| [Destination Path][DestinationPath Property] | `($)DestinationPath`, with value `@"C:\Destination"` | `($)DestinationPath` is a variable of type [String][] | +| [Overwrite][Overwrite Property] | `($)Overwrite`, with value `false` | `($)Overwrite` is a variable of type [Boolean][] | + +#### Result + +Copying `["C:\Source\OriginalFile1.txt", "C:\Source\OriginalFile2.txt"]` to `"C:\Destination"` that does not already contain files named `"OriginalFile1.txt"` and `"OriginalFile2.txt"` will: + +* Create a new file at `"C:\Destination\OriginalFile1.txt"` with: + * The content copied from `"C:\Source\OriginalFile1.txt"`. + * The `Date Created` set to the time the copy occurred. + * The `Date Accessed` set to the time the copy occurred. + * The `Date Modified` copied from `"C:\Source\OriginalFile1.txt"`. + * The [File Attributes][] copied from `"C:\Source\OriginalFile1.txt"`. +* Create a new file at `"C:\Destination\OriginalFile2.txt"` with: + * The content copied from `"C:\Source\OriginalFile2.txt"`. + * The `Date Created` set to the time the copy occurred. + * The `Date Accessed` set to the time the copy occurred. + * The `Date Modified` copied from `"C:\Source\OriginalFile2.txt"`. + * The [File Attributes][] copied from `"C:\Source\OriginalFile2.txt"`. + +*** + +### Copy files to a folder overwriting any files that already exists with the same names + +This example will copy `["C:\Source\FileAlreadyExists1.txt", "C:\Source\FileAlreadyExists2.txt"]` to `"C:\Destination"`, with the same file names of `"FileAlreadyExists1.txt"` and `"FileAlreadyExists2.txt"`. + +In this example assume `"C:\Destination"` already contains a file named `"FileAlreadyExists1.txt"` and a file named `"FileAlreadyExists2.txt"`, so overwrite must be set to `true` to ensure the content of the existing files can be overwritten. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [File Paths][FilePaths Property] | `($)FilePaths`, with value `[@"C:\Source\FileAlreadyExists1.txt", @"C:\Source\FileAlreadyExists2.txt"]` | `($)FilePaths` is a variable of type [IEnumerable][]<[String][]> | +| [Destination Path][DestinationPath Property] | `($)DestinationPath`, with value `@"C:\Destination"` | `($)DestinationPath` is a variable of type [String][] | +| [Overwrite][Overwrite Property] | `($)Overwrite`, with value `true` | `($)Overwrite` is a variable of type [Boolean][] | + +#### Result + +Copying `["C:\Source\FileAlreadyExists1.txt", "C:\Source\FileAlreadyExists2.txt"]` to `"C:\Destination"` and overwriting the existing files named `"FileAlreadyExists1.txt"` and `"FileAlreadyExists2.txt"` will: + +* Overwrite the existing file at `"C:\Destination\FileAlreadyExists1.txt"` with: + * The content copied from `"C:\Source\FileAlreadyExists1.txt"`. + * The `Date Created` left unchanged. + * The `Date Accessed` set to the time the copy occurred. + * The `Date Modified` copied from `"C:\Source\FileAlreadyExists1.txt"`. + * The [File Attributes][] copied from `"C:\Source\FileAlreadyExists1.txt"`. +* Overwrite the existing file at `"C:\Destination\FileAlreadyExists2.txt"` with: + * The content copied from `"C:\Source\FileAlreadyExists2.txt"`. + * The `Date Created` left unchanged. + * The `Date Accessed` set to the time the copy occurred. + * The `Date Modified` copied from `"C:\Source\FileAlreadyExists2.txt"`. + * The [File Attributes][] copied from `"C:\Source\FileAlreadyExists2.txt"`. + +*** + +## Properties + +### File Paths + +The [File Paths][FilePaths Property] to copy the files from. + +Each file path in [File Paths][FilePaths Property] is case-insensitive, cannot contain any wildcard characters, and any trailing spaces will be automatically removed. + +For information about the supported file path formats (i.e. absolute, relative, UNC etc.) and examples of each, please see [File & Folder Paths][]. + +| | | +|--------------------|---------------------------| +| Data Type | [IEnumerable][]<[String][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)FilePaths` with no value | + +### Destination Path + +The [Destination Path][DestinationPath Property] to copy the files to. + +The [Destination Path][DestinationPath Property] is case-insensitive, cannot contain any wildcard characters, and any trailing spaces will be automatically removed. + +The [Destination Path][DestinationPath Property] must point to a folder, otherwise an [InvalidPathException][] will be thrown. + +The copied files will have the names specified in the [File Paths][FilePaths Property]. + +Any non-existing folders within the [Destination Path][DestinationPath Property] will be automatically created. + +For information about the supported file and folder path formats (i.e. absolute, relative, UNC etc.) and examples of each, including how it is determined if a path points to a folder or a file, please see [File & Folder Paths][]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | No value (defaults to `""`) | + +### Overwrite + +Option to [Overwrite][Overwrite Property] the files in the [Destination Path][DestinationPath Property] if they already exist. + +If any file exists, [Overwrite][Overwrite Property] must be set to `true`, otherwise an [OperationFailedException][] will be thrown. By default, this is set to `false` to avoid implicit and accidental overwriting of existing files. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `false` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [InvalidPathException][] | The [Destination Path][DestinationPath Property] does not point to a folder. | +| | The [Destination Path][DestinationPath Property] contains leading spaces. | +| | The [Destination Path][DestinationPath Property] contains only whitespace, or the NUL character (i.e. `\0`), or contains one or more invalid characters (i.e. `"`, `*`, `?`, `\|`, `<`, `>`, `:`, `\`, `/`) in any file or folder names. | +| | The [Destination Path][DestinationPath Property] (if it points to a file), or the [Destination Path][DestinationPath Property] (if it points to a folder) plus the file name, exceeds the system-defined maximum length (typically 32,767 characters). | +| [OperationFailedException][] | Any file path in [File Paths][FilePaths Property] is `null` or empty (i.e. `""`). | +| | Any file path in [File Paths][FilePaths Property] is duplicated. | +| | Any file path in [File Paths][FilePaths Property] does not exist. | +| | Any file path in [File Paths][FilePaths Property] points to a folder. | +| | Any file path in [File Paths][FilePaths Property] contains leading spaces. | +| | Any file path in [File Paths][FilePaths Property] contains only whitespace, or the NUL character (i.e. `\0`), or contains one or more invalid characters (i.e. `"`, `*`, `?`, `\|`, `<`, `>`, `:`, `\`, `/`) in any file or folder names. | +| | Any file path in [File Paths][FilePaths Property] exceeds the system-defined maximum length (typically 32,767 characters). | +| | Any file path in [File Paths][FilePaths Property] or [Destination Path][DestinationPath Property] is invalid (for example, it is on an unmapped drive). | +| | Any file path in [File Paths][FilePaths Property] exists in the specified [Destination Path][DestinationPath Property] and overwrite is `false`. | +| | Any file path in [File Paths][FilePaths Property] exists in the specified [Destination Path][DestinationPath Property] with the same name, is read-only and overwrite is `true`. | +| | Any file path in [File Paths][FilePaths Property] exists in the specified [Destination Path][DestinationPath Property] with the same name, is hidden and overwrite is `true`, but the file in the specified [File Paths][FilePaths Property] is not hidden.| +| | The user the flow is executing as does not have the required permissions to copy any file (e.g. not having read access to a file path in [File Paths][FilePaths Property] or write access to the [Destination Path][DestinationPath Property]). | +| | An unexpected error occurs when copying a file. | +| [PropertyEmptyException][] | Thrown when [File Paths][FilePaths Property] does not contain any items, or [Destination Path][DestinationPath Property] is empty (i.e. `""`). | +| [PropertyNullException][] | Thrown when [File Paths][FilePaths Property] or [Destination Path][DestinationPath Property] are `null`. | + +## Remarks + +### File and Folder Paths + +For information about the supported file and folder path formats (i.e. absolute, relative, UNC etc.) and examples of each, including how it is determined if a path points to a folder or a file, please see [File & Folder Paths][]. + +### File Paths and Destination Path need escaping + +Each file path in [File Paths][FilePaths Property] and [Destination Path][DestinationPath Property] require `\` characters to be escaped, otherwise each unescaped `\` will be reported as an `Invalid property value` message when trying to debug the flow. + +Escaping can be done in two ways: + +* Escaping the `\` character with another `\` character (e.g. `"C:\\Source\\OriginalFile.txt"`), or +* Prepending an `@` character before the start of the +file path (e.g. `@"C:\Source\OriginalFile.txt"`) and [Destination Path][DestinationPath Property] (e.g. `@"C:\Destination"`). + +### File Attributes + +When copying a file in the [File Paths][FilePaths Property] to the new [Destination Path][DestinationPath Property], all of the file's attributes will also be copied. + +For information about the file attributes (i.e. ReadOnly, Hidden, Archive etc.), please see [File & Folder Attributes][]. + +### Handling of Exceptions + +If an exception occurs when trying to copy a file in the [File Paths][FilePaths Property], it will be recorded and the block will continue processing the remaining files. Once all files are processed, recorded exceptions will be thrown within an [OperationFailedException][]. + +[FilePaths Property]: {{< ref "#file-paths" >}} +[DestinationPath Property]: {{< ref "#destination-path" >}} +[Overwrite Property]: {{< ref "#overwrite" >}} + +[File Attributes]: {{< ref "#file-attributes" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[InvalidPathException]: {{< url path="Cortex.Reference.Exceptions.FilesAndFolders.InvalidPathException.MainDoc" >}} +[OperationFailedException]: {{< url path="Cortex.Reference.Exceptions.FilesAndFolders.OperationFailedException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[File & Folder Attributes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.Attributes.MainDoc" >}} +[File & Folder Paths]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.Paths.MainDoc" >}} + +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/copy-folder/_index.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/copy-folder/_index.md new file mode 100644 index 000000000..0b4717a91 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/copy-folder/_index.md @@ -0,0 +1,5 @@ +--- +title: "Copy Folder(s)" +linkTitle: "Copy Folder(s)" +description: "Copy a folder or multiple folders." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/copy-folder/copy-folder-block.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/copy-folder/copy-folder-block.md new file mode 100644 index 000000000..c759f552f --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/copy-folder/copy-folder-block.md @@ -0,0 +1,386 @@ +--- +title: "Copy Folder" +linkTitle: "Copy Folder" +description: "Copies a folder at the specified folder path to the given destination path." +--- + +{{< figure src="/blocks/Cortex_Blocks_FilesAndFolders_CopyFolder_CopyFolderBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.FilesAndFolders.CopyFolder.CopyFolderBlock)

+ +## Description + +Copies a folder at the specified [Folder Path][FolderPath Property] to the given [Destination Path][DestinationPath Property], with an option to copy the folder and its content, or just its [Content Only][ContentOnly Property]. + +An option can also be specified to [Overwrite][Overwrite Property] anything being copied that already exists in the [Destination Path][DestinationPath Property]. + +## Examples + +### Copy a folder and its content + +This example will copy `"C:\Source\Folder"` and its content to `"C:\Destination"`. + +In this example assume: + +* `"C:\Source\Folder"` contains: + * An empty sub-folder named `"SubFolder"`. + * A file named `"File.txt"`. +* `"C:\Destination"` does not already contain a folder named `"Folder"`, so overwrite can be set to either `true` or `false` and it will still work. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Folder Path][FolderPath Property] | `($)FolderPath`, with value `@"C:\Source\Folder"` | `($)FolderPath` is a variable of type [String][] | +| [Destination Path][DestinationPath Property] | `($)DestinationPath`, with value `@"C:\Destination"` | `($)DestinationPath` is a variable of type [String][] | +| [Overwrite][Overwrite Property] | `($)Overwrite`, with value `false` | `($)Overwrite` is a variable of type [Boolean][] | +| [Content Only][ContentOnly Property] | `($)ContentOnly`, with value `false` | `($)ContentOnly` is a variable of type [Boolean][] | + +#### Result + +Copying `"C:\Source\Folder"` and its content to `"C:\Destination"` that does not already contain a folder named `"Folder"` will: + +* Create a new folder at `"C:\Destination\Folder"` with: + * The `Date Created` set to the time the copy occurred. + * The `Date Accessed` set to the time the copy occurred. + * The `Date Modified` set to the time the copy occurred. + * The [Folder attributes][] copied from `"C:\Source\Folder"`. +* Create a new folder at `"C:\Destination\Folder\SubFolder"` with: + * The `Date Created` set to the time the copy occurred. + * The `Date Accessed` set to the time the copy occurred. + * The `Date Modified` set to the time the copy occurred. + * The [Folder attributes][] copied from `"C:\Source\Folder\SubFolder"`. +* Create a new file at `"C:\Destination\Folder\File.txt"` with: + * The content copied from `"C:\Source\Folder\File.txt"`. + * The `Date Created` set to the time the copy occurred. + * The `Date Accessed` set to the time the copy occurred. + * The `Date Modified` copied from `"C:\Source\Folder\File.txt"`. + * The [File attributes][] copied from `"C:\Source\Folder\File.txt"`. + +*** + +### Copy a folder and its content, overwriting any content that already exists + +This example will copy `"C:\Source\Folder"` and its content to `"C:\Destination"`, overwriting any content that already exists. + +In this example assume: + +* `"C:\Source\Folder"` contains: + * An empty sub-folder named `"SubFolder"`. + * An empty sub-folder named `"SubFolderAlreadyExists"`. + * A file named `"File.txt"`. + * A file named `"FileAlreadyExists.txt"`. +* `"C:\Destination"` already contains a folder named `"Folder"`, which already contains: + * A folder named `"SubFolderAlreadyExists"`. + * A file named `"FileAlreadyExists.txt"`. + +Therefore, overwrite must be set to `true` to ensure the existing `"SubFolderAlreadyExists"` and `"FileAlreadyExists.txt"` can be overwritten. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Folder Path][FolderPath Property] | `($)FolderPath`, with value `@"C:\Source\Folder"` | `($)FolderPath` is a variable of type [String][] | +| [Destination Path][DestinationPath Property] | `($)DestinationPath`, with value `@"C:\Destination"` | `($)DestinationPath` is a variable of type [String][] | +| [Overwrite][Overwrite Property] | `($)Overwrite`, with value `true` | `($)Overwrite` is a variable of type [Boolean][] | +| [Content Only][ContentOnly Property] | `($)ContentOnly`, with value `false` | `($)ContentOnly` is a variable of type [Boolean][] | + +#### Result + +Copying `"C:\Source\Folder"` and its content to `"C:\Destination"` with the [Overwrite][Overwrite Property] option set to `true`, and where `"C:\Destination\Folder"`, `"C:\Destination\Folder\SubFolderAlreadyExists"` and `"C:\Destination\Folder\FileAlreadyExists.txt"` already exist will: + +* Overwrite the existing folder at `"C:\Destination\Folder"` with: + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [Folder attributes][] left unchanged. +* Create a new empty folder at `"C:\Destination\Folder\SubFolder"` with: + * The `Date Created` set to the time the copy occurred. + * The `Date Accessed` set to the time the copy occurred. + * The `Date Modified` set to the time the copy occurred. + * The [Folder attributes][] copied from `"C:\Source\Folder\SubFolder"`. +* Overwrite the existing folder at `"C:\Destination\Folder\SubFolderAlreadyExists"` with: + * The content left unchanged. + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [Folder attributes][] left unchanged. +* Create a new file at `"C:\Destination\Folder\File.txt"` with: + * The content copied from `"C:\Source\Folder\File.txt"`. + * The `Date Created` set to the time the copy occurred. + * The `Date Accessed` set to the time the copy occurred. + * The `Date Modified` copied from `"C:\Source\Folder\File.txt"`. + * The [File attributes][] copied from `"C:\Source\Folder\File.txt"`. +* Overwrite the existing file at `"C:\Destination\Folder\FileAlreadyExists.txt"` with: + * The content copied from `"C:\Source\Folder\FileAlreadyExists.txt"`. + * The `Date Created` left unchanged. + * The `Date Accessed` set to the time the copy occurred. + * The `Date Modified` copied from `"C:\Source\Folder\FileAlreadyExists.txt"`. + * The [File attributes][] copied from `"C:\Source\Folder\FileAlreadyExists.txt"`. + +*** + +### Copy a folder's content only + +This example will copy `"C:\Source\Folder"` content only to `"C:\Destination"`. + +In this example assume: + +* `"C:\Source\Folder"` contains: + * An empty sub-folder named `"SubFolder"`. + * A file named `"File.txt"`. +* `"C:\Destination"` does not already contain a folder named `"SubFolder"` or a file named `"File.txt"`, so overwrite can be set to either `true` or `false` and it will still work. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Folder Path][FolderPath Property] | `($)FolderPath`, with value `@"C:\Source\Folder"` | `($)FolderPath` is a variable of type [String][] | +| [Destination Path][DestinationPath Property] | `($)DestinationPath`, with value `@"C:\Destination"` | `($)DestinationPath` is a variable of type [String][] | +| [Overwrite][Overwrite Property] | `($)Overwrite`, with value `false` | `($)Overwrite` is a variable of type [Boolean][] | +| [Content Only][ContentOnly Property] | `($)ContentOnly`, with value `true` | `($)ContentOnly` is a variable of type [Boolean][] | + +#### Result + +Copying `"C:\Source\Folder"` content only to `"C:\Destination"` that does not already contain a folder named `"SubFolder"` or a file named `"File.txt"` will: + +* Create a new folder at `"C:\Destination\SubFolder"` with: + * The `Date Created` set to the time the copy occurred. + * The `Date Accessed` set to the time the copy occurred. + * The `Date Modified` set to the time the copy occurred. + * The [Folder attributes][] copied from `"C:\Source\Folder\SubFolder"`. +* Create a new file at `"C:\Destination\File.txt"` with: + * The content copied from `"C:\Source\Folder\File.txt"`. + * The `Date Created` set to the time the copy occurred. + * The `Date Accessed` set to the time the copy occurred. + * The `Date Modified` copied from `"C:\Source\Folder\File.txt"`. + * The [File attributes][] copied from `"C:\Source\Folder\File.txt"`. + +*** + +### Copy a folder's content only, overwriting any content that already exists + +This example will copy `"C:\Source\Folder"` content only to `"C:\Destination"`, overwriting any content that already exists. + +In this example assume: + +* `"C:\Source\Folder"` contains: + * An empty sub-folder named `"SubFolder"`. + * An empty sub-folder named `"SubFolderAlreadyExists"`. + * A file named `"File.txt"`. + * A file named `"FileAlreadyExists.txt"`. +* `"C:\Destination"` already contains: + * A folder named `"SubFolderAlreadyExists"`. + * A file named `"FileAlreadyExists.txt"`. + +Therefore, overwrite must be set to `true` to ensure the existing `"SubFolderAlreadyExists"` and `"FileAlreadyExists.txt"` can be overwritten. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Folder Path][FolderPath Property] | `($)FolderPath`, with value `@"C:\Source\Folder"` | `($)FolderPath` is a variable of type [String][] | +| [Destination Path][DestinationPath Property] | `($)DestinationPath`, with value `@"C:\Destination"` | `($)DestinationPath` is a variable of type [String][] | +| [Overwrite][Overwrite Property] | `($)Overwrite`, with value `true` | `($)Overwrite` is a variable of type [Boolean][] | +| [Content Only][ContentOnly Property] | `($)ContentOnly`, with value `true` | `($)ContentOnly` is a variable of type [Boolean][] | + +#### Result + +Copying `"C:\Source\Folder"` content only to `"C:\Destination"` with the [Overwrite][Overwrite Property] option set to `true`, and where `"C:\Destination\SubFolderAlreadyExists"` and `"C:\Destination\FileAlreadyExists.txt"` already exist will: + +* Create a new empty folder at `"C:\Destination\SubFolder"` with: + * The `Date Created` set to the time the copy occurred. + * The `Date Accessed` set to the time the copy occurred. + * The `Date Modified` set to the time the copy occurred. + * The [Folder attributes][] copied from `"C:\Source\Folder\SubFolder"`. +* Overwrite the existing folder at `"C:\Destination\SubFolderAlreadyExists"` with: + * The content left unchanged. + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [Folder attributes][] left unchanged. +* Create a new file at `"C:\Destination\File.txt"` with: + * The content copied from `"C:\Source\Folder\File.txt"`. + * The `Date Created` set to the time the copy occurred. + * The `Date Accessed` set to the time the copy occurred. + * The `Date Modified` copied from `"C:\Source\Folder\File.txt"`. + * The [File attributes][] copied from `"C:\Source\Folder\File.txt"`. +* Overwrite the existing file at `"C:\Destination\FileAlreadyExists.txt"` with: + * The content copied from `"C:\Source\Folder\FileAlreadyExists.txt"`. + * The `Date Created` left unchanged. + * The `Date Accessed` set to the time the copy occurred. + * The `Date Modified` copied from `"C:\Source\Folder\FileAlreadyExists.txt"`. + * The [File attributes][] copied from `"C:\Source\Folder\FileAlreadyExists.txt"`. + +*** + +### Copy a folder and its content to the same location but with a different name + +If it is required to copy a folder and its content into the same folder it is currently located in, but with a different name, then it is not possible to do with this block; the [Duplicate Folder][] block must be used instead. + +*** + +### Copy a folder and its content to a different location but with a different name + +If it is required to copy a folder and its content into a different folder than the one it is currently located in, but with a different name, then it is not possible to do with this block; the [Rename Folder][] block must be used instead. + +*** + +## Properties + +### Folder Path + +The [Folder Path][FolderPath Property] to copy the folder and/or its content from. + +The [Folder Path][FolderPath Property] is case-insensitive, cannot contain any wildcard characters, and any trailing spaces will be automatically removed. + +For information about the supported folder path formats (i.e. absolute, relative, UNC etc.) and examples of each, please see [File & Folder Paths][]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)FolderPath` with no value | + +### Destination Path + +The [Destination Path][DestinationPath Property] to copy the folder and/or its content to. + +The [Destination Path][DestinationPath Property] is case-insensitive, cannot contain any wildcard characters, and any trailing spaces will be automatically removed. + +The [Destination Path][DestinationPath Property] must point to a folder, otherwise an [InvalidPathException][] will be thrown. + +The copied folders and files will have the same names as the folders and files copied. + +Any non-existing folders within the [Destination Path][DestinationPath Property] will be automatically created. + +For information about the supported file and folder path formats (i.e. absolute, relative, UNC etc.) and examples of each, including how it is determined if a path points to a folder or a file, please see [File & Folder Paths][]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | No value (defaults to `""`) | + +### Overwrite + +Option to [Overwrite][Overwrite Property] the folder and/or contents being copied to in the [Destination Path][DestinationPath Property] if they already exist. + +If the folder and/or contents exists, [Overwrite][Overwrite Property] must be set to `true`, otherwise an [OperationFailedException][] will be thrown. By default, this is set to `false` to avoid implicit and accidental overwriting of existing folders and files. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `false` | + +### Content Only + +Option to specify whether to copy the folder and its content or just the [Content Only][ContentOnly Property]. + +To copy the folder and its content, [Content Only][ContentOnly Property] must be set to `false`; to copy just the content, [Content Only][ContentOnly Property] must be set to `true`. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `false` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [InvalidPathException][] | The [Destination Path][DestinationPath Property] points to a file. | +| | The [Destination Path][DestinationPath Property] contains leading spaces. | +| | The [Destination Path][DestinationPath Property] contains only whitespace, or the NUL character (i.e. `\0`), or contains one or more invalid characters (i.e. `"`, `*`, `?`, `\|`, `<`, `>`, `:`, `\`, `/`) in any folder names. | +| | The [Destination Path][DestinationPath Property] exceeds the system-defined maximum length (typically 32,767 characters). | +| [OperationFailedException][] | The [Folder Path][FolderPath Property] does not exist. | +| | The [Folder Path][FolderPath Property] points to a file. | +| | The [Folder Path][FolderPath Property] contains leading spaces. | +| | The [Folder Path][FolderPath Property] contains only whitespace, or the NUL character (i.e. `\0`), or contains one or more invalid characters (i.e. `"`, `*`, `?`, `\|`, `<`, `>`, `:`, `\`, `/`) in any folder names. | +| | The [Folder Path][FolderPath Property] exceeds the system-defined maximum length (typically 32,767 characters). | +| | The [Folder Path][FolderPath Property] or [Destination Path][DestinationPath Property] is a win32 device path (i.e starts with a `"\\.\"`). | +| | The [Folder Path][FolderPath Property] or [Destination Path][DestinationPath Property] is invalid (for example, it is on an unmapped drive). | +| | The [Folder Path][FolderPath Property] and [Destination Path][DestinationPath Property] point to the same folder and [Content Only][ContentOnly Property] is `true`. | +| | The [Folder Path][FolderPath Property] is a child folder in the [Destination Path][DestinationPath Property] and [Content Only][ContentOnly Property] is `false`. | +| | Any file being copied already exists in the specified [Destination Path][DestinationPath Property] and overwrite is `false`. | +| | Any file being copied already exists in the specified [Destination Path][DestinationPath Property], is read-only and overwrite is `true`. | +| | Any file being copied already exists in the specified [Destination Path][DestinationPath Property], is hidden and overwrite is `true`, but the file under the specified [Folder Path][FolderPath Property] is not hidden.| +| | The user the flow is executing as does not have the required permissions to copy the folder or any of its content (e.g. not having read access to the [Folder Path][FolderPath Property] or its content, or write access to the [Destination Path][DestinationPath Property]). | +| | The operation is cyclic (e.g. copying a folder into one of its sub-folders). | +| | An unexpected error occurs when copying the folder or any of its content. | +| [PropertyEmptyException][] | Thrown when [Folder Path][FolderPath Property] or [Destination Path][DestinationPath Property] are empty (i.e. `""`). | +| [PropertyNullException][] | Thrown when [Folder Path][FolderPath Property] or [Destination Path][DestinationPath Property] are `null`. | + +## Remarks + +### Folder Paths + +For information about the supported folder path formats (i.e. absolute, relative, UNC etc.) and examples of each, including how it is determined if a path points to a folder or a file, please see [File & Folder Paths][]. + +### Folder Path and Destination Path need escaping + +[Folder Path][FolderPath Property] and [Destination Path][DestinationPath Property] require `\` characters to be escaped, otherwise each unescaped `\` will be reported as an `Invalid property value` message when trying to debug the flow. + +Escaping can be done in two ways: + +* Escaping the `\` character with another `\` character (e.g. `"C:\\Source\\"`), or +* Prepending an `@` character before the start of the [Folder Path][FolderPath Property] (e.g. `@"C:\Source"`) and [Destination Path][DestinationPath Property] (e.g. `@"C:\Destination"`). + +### Folder Attributes + +When copying the folder at the specified [Folder Path][FolderPath Property] or any folder under it to the new [Destination Path][DestinationPath Property], if the copied folder already exists its attributes remain unchanged, otherwise they are copied. + +For information about the folder attributes (i.e. ReadOnly, Hidden, Archive etc.), please see [File & Folder Attributes][]. + +### File Attributes + +When copying a file under [Folder Path][FolderPath Property] to the new [Destination Path][DestinationPath Property], all of the file's attributes are also copied. + +For information about the file attributes (i.e. ReadOnly, Hidden, Archive etc.), please see [File & Folder Attributes][]. + +### Handling of Exceptions + +If an exception occurs when trying to copy [Folder Path][FolderPath Property], an [OperationFailedException][] will be thrown. + +[FolderPath Property]: {{< ref "#folder-path" >}} +[DestinationPath Property]: {{< ref "#destination-path" >}} +[Overwrite Property]: {{< ref "#overwrite" >}} +[ContentOnly Property]: {{< ref "#content-only" >}} + +[Folder Attributes]: {{< ref "#folder-attributes" >}} +[File Attributes]: {{< ref "#file-attributes" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[InvalidPathException]: {{< url path="Cortex.Reference.Exceptions.FilesAndFolders.InvalidPathException.MainDoc" >}} +[OperationFailedException]: {{< url path="Cortex.Reference.Exceptions.FilesAndFolders.OperationFailedException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[File & Folder Attributes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.Attributes.MainDoc" >}} +[File & Folder Paths]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.Paths.MainDoc" >}} + +[Rename Folder]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.RenameFolder.RenameFolder.MainDoc" >}} +[Duplicate Folder]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.CopyFolder.DuplicateFolder.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/copy-folder/copy-folders-block.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/copy-folder/copy-folders-block.md new file mode 100644 index 000000000..f1f10885c --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/copy-folder/copy-folders-block.md @@ -0,0 +1,496 @@ +--- +title: "Copy Folders" +linkTitle: "Copy Folders" +description: "Copies folders at the specified folder paths to the given destination path." +--- + +{{< figure src="/blocks/Cortex_Blocks_FilesAndFolders_CopyFolder_CopyFoldersBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.FilesAndFolders.CopyFolder.CopyFoldersBlock)

+ +## Description + +Copies folders at the specified [Folder Paths][FolderPaths Property] to the given [Destination Path][DestinationPath Property], with an option to copy the folders and their content, or just their [Content Only][ContentOnly Property]. + +An option can also be specified to [Overwrite][Overwrite Property] anything being copied that already exists in the [Destination Path][DestinationPath Property]. + +## Examples + +### Copy folders and their content + +This example will copy `["C:\Source\Folder1", "C:\Source\Folder2"]` and their content to `"C:\Destination"`. + +In this example assume: + +* `"C:\Source\Folder1"` contains: + * An empty sub-folder named `"SubFolder1"`. + * A file named `"File1.txt"`. +* `"C:\Source\Folder2"` contains: + * An empty sub-folder named `"SubFolder2"`. + * A file named `"File2.txt"`. +* `"C:\Destination"` does not already contain a folder named `"Folder1"` or `"Folder2"`, so overwrite can be set to either `true` or `false` and it will still work. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Folder Paths][FolderPaths Property] | `($)FolderPaths`, with value `[@"C:\Source\Folder1", @"C:\Source\Folder2"]` | `($)FolderPaths` is a variable of type [IEnumerable][]<[String][]> | +| [Destination Path][DestinationPath Property] | `($)DestinationPath`, with value `@"C:\Destination"` | `($)DestinationPath` is a variable of type [String][] | +| [Overwrite][Overwrite Property] | `($)Overwrite`, with value `false` | `($)Overwrite` is a variable of type [Boolean][] | +| [Content Only][ContentOnly Property] | `($)ContentOnly`, with value `false` | `($)ContentOnly` is a variable of type [Boolean][] | + +#### Result + +Copying `["C:\Source\Folder1", "C:\Source\Folder2"]` and their content to `"C:\Destination"` that does not already contain folders named `"Folder1"` and `"Folder2"` will: + +* Create a new folder at `"C:\Destination\Folder1"` with: + * The `Date Created` set to the time the copy occurred. + * The `Date Accessed` set to the time the copy occurred. + * The `Date Modified` set to the time the copy occurred. + * The [Folder attributes][] copied from `"C:\Source\Folder1"`. +* Create a new folder at `"C:\Destination\Folder1\SubFolder1"` with: + * The `Date Created` set to the time the copy occurred. + * The `Date Accessed` set to the time the copy occurred. + * The `Date Modified` set to the time the copy occurred. + * The [Folder attributes][] copied from `"C:\Source\Folder1\SubFolder1"`. +* Create a new file at `"C:\Destination\Folder1\File1.txt"` with: + * The content copied from `"C:\Source\Folder1\File1.txt"`. + * The `Date Created` set to the time the copy occurred. + * The `Date Accessed` set to the time the copy occurred. + * The `Date Modified` copied from `"C:\Source\Folder1\File1.txt"`. + * The [File attributes][] copied from `"C:\Source\Folder1\File1.txt"`. +* Create a new folder at `"C:\Destination\Folder2"` with: + * The `Date Created` set to the time the copy occurred. + * The `Date Accessed` set to the time the copy occurred. + * The `Date Modified` set to the time the copy occurred. + * The [Folder attributes][] copied from `"C:\Source\Folder2"`. +* Create a new folder at `"C:\Destination\Folder2\SubFolder2"` with: + * The `Date Created` set to the time the copy occurred. + * The `Date Accessed` set to the time the copy occurred. + * The `Date Modified` set to the time the copy occurred. + * The [Folder attributes][] copied from `"C:\Source\Folder2\SubFolder2"`. +* Create a new file at `"C:\Destination\Folder2\File2.txt"` with: + * The content copied from `"C:\Source\Folder2\File2.txt"`. + * The `Date Created` set to the time the copy occurred. + * The `Date Accessed` set to the time the copy occurred. + * The `Date Modified` copied from `"C:\Source\Folder2\File2.txt"`. + * The [File attributes][] copied from `"C:\Source\Folder2\File2.txt"`. + +*** + +### Copy folders and their content, overwriting any content that already exists + +This example will copy `["C:\Source\Folder1", "C:\Source\Folder2"]` and their content to `"C:\Destination"`, overwriting any content that already exists. + +In this example assume: + +* `"C:\Source\Folder1"` contains: + * An empty sub-folder named `"SubFolder1"`. + * An empty sub-folder named `"SubFolderAlreadyExists1"`. + * A file named `"File1.txt"`. + * A file named `"FileAlreadyExists1.txt"`. +* `"C:\Source\Folder2"` contains: + * An empty sub-folder named `"SubFolder2"`. + * An empty sub-folder named `"SubFolderAlreadyExists2"`. + * A file named `"File2.txt"`. + * A file named `"FileAlreadyExists2.txt"`. +* `"C:\Destination"` already contains: + * A folder named `"Folder1"`, which already contains: + * A folder named `"SubFolderAlreadyExists1"`. + * A file named `"FileAlreadyExists1.txt"`. + * A folder named `"Folder2"`, which already contains: + * A folder named `"SubFolderAlreadyExists2"`. + * A file named `"FileAlreadyExists2.txt"`. + +Therefore, overwrite must be set to `true` to ensure the existing folders and files can be overwritten. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Folder Paths][FolderPaths Property] | `($)FolderPaths`, with value `[@"C:\Source\Folder1", @"C:\Source\Folder2"]` | `($)FolderPaths` is a variable of type [IEnumerable][]<[String][]> | +| [Destination Path][DestinationPath Property] | `($)DestinationPath`, with value `@"C:\Destination"` | `($)DestinationPath` is a variable of type [String][] | +| [Overwrite][Overwrite Property] | `($)Overwrite`, with value `true` | `($)Overwrite` is a variable of type [Boolean][] | +| [Content Only][ContentOnly Property] | `($)ContentOnly`, with value `false` | `($)ContentOnly` is a variable of type [Boolean][] | + +#### Result + +Copying `["C:\Source\Folder1", "C:\Source\Folder2"]` and their content to `"C:\Destination"` with the [Overwrite][Overwrite Property] option set to `true`, and where `"C:\Destination\Folder1"`, `"C:\Destination\Folder1\SubFolderAlreadyExists1"`, `"C:\Destination\Folder1\FileAlreadyExists1.txt"`, `"C:\Destination\Folder2"`, `"C:\Destination\Folder2\SubFolderAlreadyExists2"` and `"C:\Destination\Folder2\FileAlreadyExists2.txt"` already exist will: + +* Overwrite the existing folder at `"C:\Destination\Folder1"` with: + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [Folder attributes][] left unchanged. +* Create a new empty folder at `"C:\Destination\Folder1\SubFolder1"` with: + * The `Date Created` set to the time the copy occurred. + * The `Date Accessed` set to the time the copy occurred. + * The `Date Modified` set to the time the copy occurred. + * The [Folder attributes][] copied from `"C:\Source\Folder1\SubFolder1"`. +* Overwrite the existing folder at `"C:\Destination\Folder1\SubFolderAlreadyExists1"` with: + * The content left unchanged. + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [Folder attributes][] left unchanged. +* Create a new file at `"C:\Destination\Folder1\File1.txt"` with: + * The content copied from `"C:\Source\Folder1\File1.txt"`. + * The `Date Created` set to the time the copy occurred. + * The `Date Accessed` set to the time the copy occurred. + * The `Date Modified` copied from `"C:\Source\Folder1\File1.txt"`. + * The [File attributes][] copied from `"C:\Source\Folder1\File1.txt"`. +* Overwrite the existing file at `"C:\Destination\Folder1\FileAlreadyExists1.txt"` with: + * The content copied from `"C:\Source\Folder1\FileAlreadyExists1.txt"`. + * The `Date Created` left unchanged. + * The `Date Accessed` set to the time the copy occurred. + * The `Date Modified` copied from `"C:\Source\Folder1\FileAlreadyExists1.txt"`. + * The [File attributes][] copied from `"C:\Source\Folder1\FileAlreadyExists1.txt"`. +* Overwrite the existing folder at `"C:\Destination\Folder2"` with: + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [Folder attributes][] left unchanged. +* Create a new empty folder at `"C:\Destination\Folder2\SubFolder2"` with: + * The `Date Created` set to the time the copy occurred. + * The `Date Accessed` set to the time the copy occurred. + * The `Date Modified` set to the time the copy occurred. + * The [Folder attributes][] copied from `"C:\Source\Folder2\SubFolder2"`. +* Overwrite the existing folder at `"C:\Destination\Folder2\SubFolderAlreadyExists2"` with: + * The content left unchanged. + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [Folder attributes][] left unchanged. +* Create a new file at `"C:\Destination\Folder2\File2.txt"` with: + * The content copied from `"C:\Source\Folder2\File2.txt"`. + * The `Date Created` set to the time the copy occurred. + * The `Date Accessed` set to the time the copy occurred. + * The `Date Modified` copied from `"C:\Source\Folder2\File2.txt"`. + * The [File attributes][] copied from `"C:\Source\Folder2\File2.txt"`. +* Overwrite the existing file at `"C:\Destination\Folder2\FileAlreadyExists2.txt"` with: + * The content copied from `"C:\Source\Folder2\FileAlreadyExists2.txt"`. + * The `Date Created` left unchanged. + * The `Date Accessed` set to the time the copy occurred. + * The `Date Modified` copied from `"C:\Source\Folder2\FileAlreadyExists2.txt"`. + * The [File attributes][] copied from `"C:\Source\Folder2\FileAlreadyExists2.txt"`. + +*** + +### Copy the folders' content only + +This example will copy `["C:\Source\Folder1", "C:\Source\Folder2"]` content only to `"C:\Destination"`. + +In this example assume: + +* `"C:\Source\Folder1"` contains: + * An empty sub-folder named `"SubFolder1"`. + * A file named `"File1.txt"`. +* `"C:\Source\Folder2"` contains: + * An empty sub-folder named `"SubFolder2"`. + * A file named `"File2.txt"`. +* `"C:\Destination"` does not already contain a folder named `"SubFolder1"` or `"SubFolder2"` or a file named `"File1.txt"` or `"File2.txt"`, so overwrite can be set to either `true` or `false` and it will still work. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Folder Paths][FolderPaths Property] | `($)FolderPaths`, with value `[@"C:\Source\Folder1", @"C:\Source\Folder2"]` | `($)FolderPaths` is a variable of type [IEnumerable][]<[String][]> | +| [Destination Path][DestinationPath Property] | `($)DestinationPath`, with value `@"C:\Destination"` | `($)DestinationPath` is a variable of type [String][] | +| [Overwrite][Overwrite Property] | `($)Overwrite`, with value `false` | `($)Overwrite` is a variable of type [Boolean][] | +| [Content Only][ContentOnly Property] | `($)ContentOnly`, with value `true` | `($)ContentOnly` is a variable of type [Boolean][] | + +#### Result + +Copying `["C:\Source\Folder1", "C:\Source\Folder2"]` content only to `"C:\Destination"` that does not already contain a folder named `"SubFolder1"` or `"SubFolder2"` or a file named `"File1.txt"` or `"File2.txt"` will: + +* Create a new folder at `"C:\Destination\SubFolder1"` with: + * The `Date Created` set to the time the copy occurred. + * The `Date Accessed` set to the time the copy occurred. + * The `Date Modified` set to the time the copy occurred. + * The [Folder attributes][] copied from `"C:\Source\Folder1\SubFolder1"`. +* Create a new file at `"C:\Destination\File1.txt"` with: + * The content copied from `"C:\Source\Folder1\File1.txt"`. + * The `Date Created` set to the time the copy occurred. + * The `Date Accessed` set to the time the copy occurred. + * The `Date Modified` copied from `"C:\Source\Folder1\File1.txt"`. + * The [File attributes][] copied from `"C:\Source\Folder1\File1.txt"`. +* Create a new folder at `"C:\Destination\SubFolder2"` with: + * The `Date Created` set to the time the copy occurred. + * The `Date Accessed` set to the time the copy occurred. + * The `Date Modified` set to the time the copy occurred. + * The [Folder attributes][] copied from `"C:\Source\Folder2\SubFolder2"`. +* Create a new file at `"C:\Destination\File2.txt"` with: + * The content copied from `"C:\Source\Folder2\File2.txt"`. + * The `Date Created` set to the time the copy occurred. + * The `Date Accessed` set to the time the copy occurred. + * The `Date Modified` copied from `"C:\Source\Folder2\File2.txt"`. + * The [File attributes][] copied from `"C:\Source\Folder2\File2.txt"`. + +*** + +### Copy folders' content only, overwriting any content that already exists + +This example will copy `["C:\Source\Folder1", "C:\Source\Folder2"]` content only to `"C:\Destination"`, overwriting any content that already exists. + +In this example assume: + +* `"C:\Source\Folder1"` contains: + * An empty sub-folder named `"SubFolder1"`. + * An empty sub-folder named `"SubFolderAlreadyExists1"`. + * A file named `"File1.txt"`. + * A file named `"FileAlreadyExists1.txt"`. +* `"C:\Source\Folder2"` contains: + * An empty sub-folder named `"SubFolder2"`. + * An empty sub-folder named `"SubFolderAlreadyExists2"`. + * A file named `"File2.txt"`. + * A file named `"FileAlreadyExists2.txt"`. +* `"C:\Destination"` already contains: + * A folder named `"SubFolderAlreadyExists1"`. + * A folder named `"SubFolderAlreadyExists2"`. + * A file named `"FileAlreadyExists1.txt"`. + * A file named `"FileAlreadyExists2.txt"`. + +Therefore, overwrite must be set to `true` to ensure the existing folders and files can be overwritten. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Folder Paths][FolderPaths Property] | `($)FolderPaths`, with value `[@"C:\Source\Folder1", @"C:\Source\Folder2"]` | `($)FolderPaths` is a variable of type [IEnumerable][]<[String][]> | +| [Destination Path][DestinationPath Property] | `($)DestinationPath`, with value `@"C:\Destination"` | `($)DestinationPath` is a variable of type [String][] | +| [Overwrite][Overwrite Property] | `($)Overwrite`, with value `true` | `($)Overwrite` is a variable of type [Boolean][] | +| [Content Only][ContentOnly Property] | `($)ContentOnly`, with value `true` | `($)ContentOnly` is a variable of type [Boolean][] | + +#### Result + +Copying `["C:\Source\Folder1", "C:\Source\Folder2"]` content only to `"C:\Destination"` with the [Overwrite][Overwrite Property] option set to `true`, and where `"C:\Destination\SubFolderAlreadyExists1"`, `"C:\Destination\SubFolderAlreadyExists2"`, `"C:\Destination\FileAlreadyExists1.txt"` and `"C:\Destination\FileAlreadyExists2.txt"` already exist will: + +* Create a new empty folder at `"C:\Destination\SubFolder1"` with: + * The `Date Created` set to the time the copy occurred. + * The `Date Accessed` set to the time the copy occurred. + * The `Date Modified` set to the time the copy occurred. + * The [Folder attributes][] copied from `"C:\Source\Folder1\SubFolder1"`. +* Overwrite the existing folder at `"C:\Destination\SubFolderAlreadyExists1"` with: + * The content left unchanged. + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [Folder attributes][] left unchanged. +* Create a new file at `"C:\Destination\File1.txt"` with: + * The content copied from `"C:\Source\Folder1\File1.txt"`. + * The `Date Created` set to the time the copy occurred. + * The `Date Accessed` set to the time the copy occurred. + * The `Date Modified` copied from `"C:\Source\Folder1\File1.txt"`. + * The [File attributes][] copied from `"C:\Source\Folder1\File1.txt"`. +* Overwrite the existing file at `"C:\Destination\FileAlreadyExists1.txt"` with: + * The content copied from `"C:\Source\Folder1\FileAlreadyExists1.txt"`. + * The `Date Created` left unchanged. + * The `Date Accessed` set to the time the copy occurred. + * The `Date Modified` copied from `"C:\Source\Folder1\FileAlreadyExists1.txt"`. + * The [File attributes][] copied from `"C:\Source\Folder1\FileAlreadyExists1.txt"`. +* Create a new empty folder at `"C:\Destination\SubFolder2"` with: + * The `Date Created` set to the time the copy occurred. + * The `Date Accessed` set to the time the copy occurred. + * The `Date Modified` set to the time the copy occurred. + * The [Folder attributes][] copied from `"C:\Source\Folder2\SubFolder2"`. +* Overwrite the existing folder at `"C:\Destination\SubFolderAlreadyExists2"` with: + * The content left unchanged. + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [Folder attributes][] left unchanged. +* Create a new file at `"C:\Destination\File2.txt"` with: + * The content copied from `"C:\Source\Folder2\File2.txt"`. + * The `Date Created` set to the time the copy occurred. + * The `Date Accessed` set to the time the copy occurred. + * The `Date Modified` copied from `"C:\Source\Folder2\File2.txt"`. + * The [File attributes][] copied from `"C:\Source\Folder2\File2.txt"`. +* Overwrite the existing file at `"C:\Destination\FileAlreadyExists2.txt"` with: + * The content copied from `"C:\Source\Folder2\FileAlreadyExists2.txt"`. + * The `Date Created` left unchanged. + * The `Date Accessed` set to the time the copy occurred. + * The `Date Modified` copied from `"C:\Source\Folder2\FileAlreadyExists2.txt"`. + * The [File attributes][] copied from `"C:\Source\Folder2\FileAlreadyExists2.txt"`. + +*** + +### Copy folders and their content to the same location but with a different name + +If it is required to copy folders and their content into the same folder they are currently located in, but with a different name, then it is not possible to do with this block; the [Duplicate Folder][] block must be used instead. + +*** + +### Copy folders and their content to a different location but with a different name + +If it is required to copy folders and their content into a different folder than the one they are currently located in, but with a different name, then it is not possible to do with this block; the [Rename Folder][] block must be used instead. + +*** + +## Properties + +### Folder Paths + +The [Folder Paths][FolderPaths Property] to copy the folders and/or their content from. + +Each folder path in [Folder Paths][FolderPaths Property] is case-insensitive, cannot contain any wildcard characters, and any trailing spaces will be automatically removed. + +For information about the supported folder path formats (i.e. absolute, relative, UNC etc.) and examples of each, please see [File & Folder Paths][]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)FolderPaths` with no value | + +### Destination Path + +The [Destination Path][DestinationPath Property] to copy the folders and/or their content to. + +The [Destination Path][DestinationPath Property] is case-insensitive, cannot contain any wildcard characters, and any trailing spaces will be automatically removed. + +The [Destination Path][DestinationPath Property] must point to a folder, otherwise an [InvalidPathException][] will be thrown. + +The copied folders and files will have the same names as the folders and files copied. + +Any non-existing folders within the [Destination Path][DestinationPath Property] will be automatically created. + +For information about the supported file and folder path formats (i.e. absolute, relative, UNC etc.) and examples of each, including how it is determined if a path points to a folder or a file, please see [File & Folder Paths][]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | No value (defaults to `""`) | + +### Overwrite + +Option to [Overwrite][Overwrite Property] the folders and/or contents being copied to in the [Destination Path][DestinationPath Property] if they already exist. + +If any of the folders and/or contents exists, [Overwrite][Overwrite Property] must be set to `true`, otherwise an [OperationFailedException][] will be thrown. By default, this is set to `false` to avoid implicit and accidental overwriting of existing folders and files. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `false` | + +### Content Only + +Option to specify whether to copy the folders and their content or just the [Content Only][ContentOnly Property]. + +To copy the folders and their content, [Content Only][ContentOnly Property] must be set to `false`; to copy just the content, [Content Only][ContentOnly Property] must be set to `true`. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `false` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [InvalidPathException][] | The [Destination Path][DestinationPath Property] points to a file. | +| | The [Destination Path][DestinationPath Property] contains leading spaces. | +| | The [Destination Path][DestinationPath Property] contains only whitespace, or the NUL character (i.e. `\0`), or contains one or more invalid characters (i.e. `"`, `*`, `?`, `\|`, `<`, `>`, `:`, `\`, `/`) in any folder names. | +| | The [Destination Path][DestinationPath Property] exceeds the system-defined maximum length (typically 32,767 characters). | +| [OperationFailedException][] | Any folder path in [Folder Paths][FolderPaths Property] is `null` or empty (i.e. `""`). | +| | Any folder path in [Folder Paths][FolderPaths Property] is duplicated. | +| | Any folder path in [Folder Paths][FolderPaths Property] does not exist. | +| | Any folder path in [Folder Paths][FolderPaths Property] points to a file. | +| | Any folder path in [Folder Paths][FolderPaths Property] contains leading spaces. | +| | Any folder path in [Folder Paths][FolderPaths Property] contains only whitespace, or the NUL character (i.e. `\0`), or contains one or more invalid characters (i.e. `"`, `*`, `?`, `\|`, `<`, `>`, `:`, `\`, `/`) in any folder names. | +| | Any folder path in [Folder Paths][FolderPaths Property] exceeds the system-defined maximum length (typically 32,767 characters). | +| | Any folder path in [Folder Paths][FolderPaths Property] or [Destination Path][DestinationPath Property] is a win32 device path (i.e starts with a `"\\.\"`). | +| | Any folder path in [Folder Paths][FolderPaths Property] or [Destination Path][DestinationPath Property] is invalid (for example, it is on an unmapped drive). | +| | Any folder path in [Folder Paths][FolderPaths Property] and [Destination Path][DestinationPath Property] point to the same folder and [Content Only][ContentOnly Property] is `true`. | +| | Any folder path in [Folder Paths][FolderPaths Property] is a child folder in the [Destination Path][DestinationPath Property] and [Content Only][ContentOnly Property] is `false`. | +| | Any file being copied already exists in the specified [Destination Path][DestinationPath Property] and overwrite is `false`. | +| | Any file being copied already exists in the specified [Destination Path][DestinationPath Property], is read-only and overwrite is `true`. | +| | Any file being copied already exists in the specified [Destination Path][DestinationPath Property], is hidden and overwrite is `true`, but the file under any of the specified [Folder Paths][FolderPaths Property] is not hidden.| +| | The user the flow is executing as does not have the required permissions to copy the folder or any of its content (e.g. not having read access to any of the folders in [Folder Paths][FolderPaths Property] or its content, or write access to the [Destination Path][DestinationPath Property]). | +| | The operation is cyclic (e.g. copying a folder into one of its sub-folders). | +| | An unexpected error occurs when copying a folder or any of its content. | +| [PropertyEmptyException][] | Thrown when [Folder Paths][FolderPaths Property] does not contain any items, or [Destination Path][DestinationPath Property] are empty (i.e. `""`). | +| [PropertyNullException][] | Thrown when [Folder Paths][FolderPaths Property] or [Destination Path][DestinationPath Property] are `null`. | + +## Remarks + +### Folder Paths + +For information about the supported folder path formats (i.e. absolute, relative, UNC etc.) and examples of each, including how it is determined if a path points to a folder or a file, please see [File & Folder Paths][]. + +### Folder Path and Destination Path need escaping + +Each folder paths in [Folder Paths][FolderPaths Property] and [Destination Path][DestinationPath Property] require `\` characters to be escaped, otherwise each unescaped `\` will be reported as an `Invalid property value` message when trying to debug the flow. + +Escaping can be done in two ways: + +* Escaping the `\` character with another `\` character (e.g. `"C:\\Source\\"`), or +* Prepending an `@` character before the start of the folder path (e.g. `@"C:\Source"`) and [Destination Path][DestinationPath Property] (e.g. `@"C:\Destination"`). + +### Folder Attributes + +When copying the folders at the specified [Folder Paths][FolderPaths Property] or any folder under them to the new [Destination Path][DestinationPath Property], if the copied folder already exists its attributes remain unchanged, otherwise they are copied. + +For information about the folder attributes (i.e. ReadOnly, Hidden, Archive etc.), please see [File & Folder Attributes][]. + +### File Attributes + +When copying a file under any of the [Folder Paths][FolderPaths Property] to the new [Destination Path][DestinationPath Property], all of the file's attributes are also copied. + +For information about the file attributes (i.e. ReadOnly, Hidden, Archive etc.), please see [File & Folder Attributes][]. + +### Conflicting Content + +If two or more paths in the specified [Folder Paths][FolderPaths Property] contain content (folders or files) with the same name, and [Overwrite][Overwrite Property] and [Content Only][ContentOnly Property] are `true`: + +* The attributes of the folder/file in the [Destination Path][DestinationPath Property] will be that of the first one copied. +* For files, the content of the file in the [Destination Path][DestinationPath Property] will be that of the last one copied. + +### Handling of Exceptions + +If an exception occurs when trying to copy a folder in [Folder Paths][FolderPaths Property], it will be recorded and the block will continue processing the remaining folders. Once all folders are processed, recorded exceptions will be thrown within an [OperationFailedException][]. + +[FolderPaths Property]: {{< ref "#folder-paths" >}} +[DestinationPath Property]: {{< ref "#destination-path" >}} +[Overwrite Property]: {{< ref "#overwrite" >}} +[ContentOnly Property]: {{< ref "#content-only" >}} + +[Folder Attributes]: {{< ref "#folder-attributes" >}} +[File Attributes]: {{< ref "#file-attributes" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[InvalidPathException]: {{< url path="Cortex.Reference.Exceptions.FilesAndFolders.InvalidPathException.MainDoc" >}} +[OperationFailedException]: {{< url path="Cortex.Reference.Exceptions.FilesAndFolders.OperationFailedException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[File & Folder Attributes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.Attributes.MainDoc" >}} +[File & Folder Paths]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.Paths.MainDoc" >}} + +[Rename Folder]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.RenameFolder.RenameFolder.MainDoc" >}} +[Duplicate Folder]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.CopyFolder.DuplicateFolder.MainDoc" >}} + +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/copy-folder/duplicate-folder-block.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/copy-folder/duplicate-folder-block.md new file mode 100644 index 000000000..0cc8ffb25 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/copy-folder/duplicate-folder-block.md @@ -0,0 +1,181 @@ +--- +title: "Duplicate Folder" +linkTitle: "Duplicate Folder" +description: "Copies a folder at the specified folder path to the same location but with a new name." +--- + +{{< figure src="/blocks/Cortex_Blocks_FilesAndFolders_CopyFolder_DuplicateFolderBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.FilesAndFolders.CopyFolder.DuplicateFolderBlock)

+ +## Description + +Copies a folder at the specified [Folder Path][FolderPath Property] to the same location but with a [New Name][NewName Property]. + +## Examples + +### Duplicate a folder + +This example will make a copy of `"C:\Source\Folder"` at `"C:\Source\CopyOfFolder"`. + +In this example assume: + +* `"C:\Source\Folder"` contains: + * An empty sub-folder named `"SubFolder"`. + * A file named `"File.txt"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Folder Path][FolderPath Property] | `($)FolderPath`, with value `@"C:\Source\Folder"` | `($)FolderPath` is a variable of type [String][] | +| [New Name][NewName Property] | `($)NewName`, with value `"CopyOfFolder"` | `($)NewName` is a variable of type [String][] | + +#### Result + +Making a copy of `"C:\Source\Folder"` with a new name of `"CopyOfFolder"` will: + +* Create a new folder at `"C:\Source\CopyOfFolder"` with: + * The `Date Created` set to the time the copy occurred. + * The `Date Accessed` set to the time the copy occurred. + * The `Date Modified` set to the time the copy occurred. + * The [Folder attributes][] copied from `"C:\Source\Folder"`. +* Create a new folder at `"C:\Source\CopyOfFolder\SubFolder"` with: + * The `Date Created` set to the time the copy occurred. + * The `Date Accessed` set to the time the copy occurred. + * The `Date Modified` set to the time the copy occurred. + * The [Folder attributes][] copied from `"C:\Source\Folder\SubFolder"`. +* Create a new file at `"C:\Source\CopyOfFolder\File.txt"` with: + * The content copied from `"C:\Source\Folder\File.txt"`. + * The `Date Created` set to the time the copy occurred. + * The `Date Accessed` set to the time the copy occurred. + * The `Date Modified` copied from `"C:\Source\Folder\File.txt"`. + * The [File attributes][] copied from `"C:\Source\Folder\File.txt"`. + +*** + +### Other Copy Operations + +If any other folder copying operation is required, the [Copy Folder][] or [Copy Folders][] blocks must be used instead. + +*** + +## Properties + +### Folder Path + +The [Folder Path][FolderPath Property] to copy the folder and its content from. + +The [Folder Path][FolderPath Property] is case-insensitive, cannot contain any wildcard characters, and any trailing spaces will be automatically removed. + +For information about the supported folder path formats (i.e. absolute, relative, UNC etc.) and examples of each, please see [File & Folder Paths][]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)FolderPath` with no value | + +### New Name + +The [New Name][NewName Property] to use for the copy of the folder. + +The [New Name][NewName Property] is case-insensitive and any trailing spaces will be automatically removed. + +The [New Name][NewName Property] must be a valid folder name, otherwise an [InvalidFolderNameException][] will be thrown. + +All child folders and files copied will have the same names as the folders and files copied. + +For information about valid folder names, please see [File & Folder Paths][]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | No value (defaults to `""`) | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [InvalidFolderNameException][] | A folder or file with the [New Name][NewName Property] already exists. | +| | The [New Name][NewName Property] contains only whitespace, or the NUL character (i.e. `\0`), or contains one or more invalid characters (i.e. `"`, `*`, `?`, `\|`, `<`, `>`, `:`, `\`, `/`). | +| | The [New Name][NewName Property] exceeds the system-defined maximum length (typically 32,767 characters). | +| [OperationFailedException][] | The [Folder Path][FolderPath Property] does not exist. | +| | The [Folder Path][FolderPath Property] points to a file. | +| | The [Folder Path][FolderPath Property] contains leading spaces. | +| | The [Folder Path][FolderPath Property] contains only whitespace, or the NUL character (i.e. `\0`), or contains one or more invalid characters (i.e. `"`, `*`, `?`, `\|`, `<`, `>`, `:`, `\`, `/`) in any folder names. | +| | The [Folder Path][FolderPath Property] exceeds the system-defined maximum length (typically 32,767 characters). | +| | The [Folder Path][FolderPath Property] is a win32 device path (i.e starts with a `"\\.\"`). | +| | The [Folder Path][FolderPath Property] is invalid (for example, it is on an unmapped drive). | +| | The user the flow is executing as does not have the required permissions to copy the folder or any of its content (e.g. not having read access to the [Folder Path][FolderPath Property] or its content, or write access to the parent of [Folder Path][FolderPath Property]. | +| | An unexpected error occurs when copying the folder or any of its content. | +| [PropertyEmptyException][] | Thrown when [Folder Path][FolderPath Property] or [New Name][NewName Property] are empty (i.e. `""`). | +| [PropertyNullException][] | Thrown when [Folder Path][FolderPath Property] or [New Name][NewName Property] are `null`. | + +## Remarks + +### Folder Paths + +For information about the supported folder path formats (i.e. absolute, relative, UNC etc.) and examples of each, including how it is determined if a path points to a folder or a file, please see [File & Folder Paths][]. + +### Folder Path needs escaping + +[Folder Path][FolderPath Property] requires `\` characters to be escaped, otherwise each unescaped `\` will be reported as an `Invalid property value` message when trying to debug the flow. + +Escaping can be done in two ways: + +* Escaping the `\` character with another `\` character (e.g. `"C:\\Source\\"`), or +* Prepending an `@` character before the start of the [Folder Path][FolderPath Property] (e.g. `@"C:\Source"`). + +### Folder Attributes + +When copying the folder at or any folder under the specified [Folder Path][FolderPath Property] all of the folder's attributes are also copied. + +For information about the folder attributes (i.e. ReadOnly, Hidden, Archive etc.), please see [File & Folder Attributes][]. + +### File Attributes + +When copying a file under [Folder Path][FolderPath Property] all of the file's attributes are also copied. + +For information about the file attributes (i.e. ReadOnly, Hidden, Archive etc.), please see [File & Folder Attributes][]. + +### Handling of Exceptions + +If an exception occurs when trying to copy [Folder Path][FolderPath Property], an [OperationFailedException][] will be thrown. + +[FolderPath Property]: {{< ref "#folder-path" >}} +[NewName Property]: {{< ref "#new-name" >}} + +[Folder Attributes]: {{< ref "#folder-attributes" >}} +[File Attributes]: {{< ref "#file-attributes" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[InvalidFolderNameException]: {{< url path="Cortex.Reference.Exceptions.FilesAndFolders.InvalidFolderNameException.MainDoc" >}} +[OperationFailedException]: {{< url path="Cortex.Reference.Exceptions.FilesAndFolders.OperationFailedException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[File & Folder Attributes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.Attributes.MainDoc" >}} +[File & Folder Paths]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.Paths.MainDoc" >}} + +[Copy Folder]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.CopyFolder.CopyFolder.MainDoc" >}} +[Copy Folders]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.CopyFolder.CopyFolders.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/create-folder/_index.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/create-folder/_index.md new file mode 100644 index 000000000..91e4e4279 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/create-folder/_index.md @@ -0,0 +1,5 @@ +--- +title: "Create Folder(s)" +linkTitle: "Create Folder(s)" +description: "Create a folder or multiple folders." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/create-folder/create-folder-block.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/create-folder/create-folder-block.md new file mode 100644 index 000000000..ef24a457f --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/create-folder/create-folder-block.md @@ -0,0 +1,108 @@ +--- +title: "Create Folder" +linkTitle: "Create Folder" +description: "Creates a folder at the specified folder path." +--- + +{{< figure src="/blocks/Cortex_Blocks_FilesAndFolders_CreateFolder_CreateFolderBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.FilesAndFolders.CreateFolder.CreateFolderBlock)

+ +## Description + +Creates a folder at the specified [Folder Path][FolderPath Property]. + +## Examples + +### Create a folder + +This example will create `"C:\Source\NewFolder"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Folder Path][FolderPath Property] | `($)FolderPath`, with value `@"C:\Source\NewFolder"` | `($)FolderPath` is a variable of type [String][] | + +#### Result + +Creating `"C:\Source\NewFolder"` results in the folder `"NewFolder"` being created in the folder `"C:\Source"`. + +*** + +## Properties + +### Folder Path + +The [Folder Path][FolderPath Property] to create the folder at. + +The [Folder Path][FolderPath Property] is case-insensitive, cannot contain any wildcard characters, and any trailing spaces will be automatically removed. + +Any folders that do not exist in the [Folder Path][FolderPath Property] will be created. + +If the [Folder Path][FolderPath Property] already exists, a new folder is not created, and no exception is thrown. + +For information about the supported folder path formats (i.e. absolute, relative, UNC etc.) and examples of each, please see [File & Folder Paths][]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)FolderPath` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [OperationFailedException][] | The [Folder Path][FolderPath Property] points to a file. | +| | The [Folder Path][FolderPath Property] contains leading spaces. | +| | The [Folder Path][FolderPath Property] contains only whitespace, or the NUL character (i.e. `\0`), or contains one or more invalid characters (i.e. `"`, `*`, `?`, `\|`, `<`, `>`, `:`, `\`, `/`) in any folder names. | +| | The [Folder Path][FolderPath Property] exceeds the system-defined maximum length (typically 32,767 characters). | +| | The [Folder Path][FolderPath Property] is invalid (for example, it is on an unmapped drive). | +| | The user the flow is executing as does not have the required permissions to create the folder at the [Folder Path][FolderPath Property]. | +| | An unexpected error occurs when creating the folder at the [Folder Path][FolderPath Property] or any of its content. | +| [PropertyEmptyException][] | Thrown when [Folder Path][FolderPath Property] is empty (i.e. `""`). | +| [PropertyNullException][] | Thrown when [Folder Path][FolderPath Property] is `null`. | + +## Remarks + +### Folder Paths + +For information about the supported folder path formats (i.e. absolute, relative, UNC etc.) and examples of each, including how it is determined if a path points to a folder or a file, please see [File & Folder Paths][]. + +### Folder Path needs escaping + +[Folder Path][FolderPath Property] requires `\` characters to be escaped, otherwise each unescaped `\` will be reported as an `Invalid property value` message when trying to debug the flow. + +Escaping can be done in two ways: + +* Escaping the `\` character with another `\` character (e.g. `"C:\\Source\\"`), or +* Prepending an `@` character before the start of the [Folder Path][FolderPath Property] (e.g. `@"C:\Source"`). + +### Folder Path already exists + +If the [Folder Path][FolderPath Property] already exists nothing is created, and no exception is thrown. + +[FolderPath Property]: {{< ref "#folder-path" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[OperationFailedException]: {{< url path="Cortex.Reference.Exceptions.FilesAndFolders.OperationFailedException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[File & Folder Paths]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.Paths.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/create-folder/create-folders-block.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/create-folder/create-folders-block.md new file mode 100644 index 000000000..e055574d7 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/create-folder/create-folders-block.md @@ -0,0 +1,115 @@ +--- +title: "Create Folders" +linkTitle: "Create Folders" +description: "Create folders at the specified folder paths." +--- + +{{< figure src="/blocks/Cortex_Blocks_FilesAndFolders_CreateFolder_CreateFoldersBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.FilesAndFolders.CreateFolder.CreateFoldersBlock)

+ +## Description + +Creates folders at the specified [Folder Paths][FolderPaths Property]. + +## Examples + +### Create folders + +This example will create `["C:\Source\NewFolder1", "C:\Source\NewFolder2"]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Folder Paths][FolderPaths Property] | `($)FolderPaths`, with value `[@"C:\Source\NewFolder1", @"C:\Source\NewFolder2"]` | `($)FolderPaths` is a variable of type [IEnumerable][]<[String][]> | + +#### Result + +Creating `["C:\Source\NewFolder1", "C:\Source\NewFolder2"]` results in the folders `"NewFolder1"` and `"NewFolder2"` being create in the folder `"C:\Source"`. + +*** + +## Properties + +### Folder Paths + +The [Folder Paths][FolderPaths Property] to create the folders at. + +Each folder path in [Folder Paths][FolderPaths Property] is case-insensitive, cannot contain any wildcard characters, and any trailing spaces will be automatically removed. + +Any folders that do not exist in any of the [Folder Paths][FolderPaths Property] will be created. + +If a folder in [Folder Paths][FolderPaths Property] already exists, a new folder is not created, and no exception is thrown. + +For information about the supported folder path formats (i.e. absolute, relative, UNC etc.) and examples of each, please see [File & Folder Paths][]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)FolderPaths` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [OperationFailedException][] | Any folder path in [Folder Paths][FolderPaths Property] is `null` or empty (i.e. `""`). | +| | Any folder path in [Folder Paths][FolderPaths Property] is duplicated. | +| | Any folder path in [Folder Paths][FolderPaths Property] points to a file. | +| | Any folder path in [Folder Paths][FolderPaths Property] contains leading spaces. | +| | Any folder path in [Folder Paths][FolderPaths Property] contains only whitespace, or the NUL character (i.e. `\0`), or contains one or more invalid characters (i.e. `"`, `*`, `?`, `\|`, `<`, `>`, `:`, `\`, `/`) in any folder names. | +| | Any folder path in [Folder Paths][FolderPaths Property] exceeds the system-defined maximum length (typically 32,767 characters). | +| | Any folder path in [Folder Paths][FolderPaths Property] is invalid (for example, it is on an unmapped drive). | +| | The user the flow is executing as does not have the required permissions to create a folder in the [Folder Paths][FolderPaths Property]. | +| | An unexpected error occurs when creating a folder in the [Folder Paths][FolderPaths Property] or any of its content. | +| [PropertyEmptyException][] | Thrown when [Folder Paths][FolderPaths Property] does not contain any items. | | +| [PropertyNullException][] | Thrown when [Folder Paths][FolderPaths Property] is `null`. | + +## Remarks + +### Folder Paths + +For information about the supported folder path formats (i.e. absolute, relative, UNC etc.) and examples of each, including how it is determined if a path points to a folder or a file, please see [File & Folder Paths][]. + +### Folder Paths need escaping + +Each folder path in [Folder Paths][FolderPaths Property] requires `\` characters to be escaped, otherwise each unescaped `\` will be reported as an `Invalid property value` message when trying to debug the flow. + +Escaping can be done in two ways: + +* Escaping the `\` character with another `\` character (e.g. `"C:\\Source\\"`), or +* Prepending an `@` character before the start of the folder path (e.g. `@"C:\Source"`). + +### Folder Path already exists + +If a folder path in [Folder Paths][FolderPaths Property] already exists nothing is created, and no exception is thrown. + +### Handling of Exceptions + +If an exception occurs when trying to create a folder in [Folder Paths][FolderPaths Property], it will be recorded and the block will continue processing the remaining folders. Once all folders are processed, recorded exceptions will be thrown within an [OperationFailedException][]. + +[FolderPaths Property]: {{< ref "#folder-paths" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[OperationFailedException]: {{< url path="Cortex.Reference.Exceptions.FilesAndFolders.OperationFailedException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[File & Folder Paths]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.Paths.MainDoc" >}} + +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/delete-file/_index.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/delete-file/_index.md new file mode 100644 index 000000000..e4e10375e --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/delete-file/_index.md @@ -0,0 +1,5 @@ +--- +title: "Delete File(s)" +linkTitle: "Delete File(s)" +description: "Delete a file or multiple files." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/delete-file/delete-file-block.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/delete-file/delete-file-block.md new file mode 100644 index 000000000..a3596286b --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/delete-file/delete-file-block.md @@ -0,0 +1,110 @@ +--- +title: "Delete File" +linkTitle: "Delete File" +description: "Deletes a file at the specified file path." +--- + +{{< figure src="/blocks/Cortex_Blocks_FilesAndFolders_DeleteFile_DeleteFileBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.FilesAndFolders.DeleteFile.DeleteFileBlock)

+ +## Description + +Deletes a file at the specified [File Path][FilePath Property]. + +## Examples + +### Delete a file + +This example will delete `"C:\Source\File.txt"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [File Path][FilePath Property] | `($)FilePath`, with value `@"C:\Source\File.txt"` | `($)FilePath` is a variable of type [String][] | + +#### Result + +Deleting `"C:\Source\File.txt"` results in the file `"File.txt"` being deleted from the folder `"C:\Source"`. + +*** + +## Properties + +### File Path + +The [File Path][FilePath Property] to delete the file from. + +The [File Path][FilePath Property] is case-insensitive, cannot contain any wildcard characters, and any trailing spaces will be automatically removed. + +If the [File Path][FilePath Property] exists it is permanently deleted; it does not go into a recycle bin. + +If the [File Path][FilePath Property] does not exist no exception is thrown. + +For information about the supported file path formats (i.e. absolute, relative, UNC etc.) and examples of each, please see [File & Folder Paths][]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)FilePath` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [OperationFailedException][] | The [File Path][FilePath Property] points to a folder. | +| | The [File Path][FilePath Property] contains leading spaces. | +| | The [File Path][FilePath Property] contains only whitespace, or the NUL character (i.e. `\0`), or contains one or more invalid characters (i.e. `"`, `*`, `?`, `\|`, `<`, `>`, `:`, `\`, `/`) in any file or folder names. | +| | The [File Path][FilePath Property] exceeds the system-defined maximum length (typically 32,767 characters). | +| | The [File Path][FilePath Property] is invalid (for example, it is on an unmapped drive). | +| | The file at the specified [File Path][FilePath Property] is read-only. | +| | The file at the specified [File Path][FilePath Property] is in use by another application. | +| | The user the flow is executing as does not have the required permissions to delete the file. | +| | An unexpected error occurs when deleting the file. | +| [PropertyEmptyException][] | Thrown when [File Path][FilePath Property] is empty (i.e. `""`). | +| [PropertyNullException][] | Thrown when [File Path][FilePath Property] is `null`. | + +## Remarks + +### File Paths + +For information about the supported file path formats (i.e. absolute, relative, UNC etc.) and examples of each, including how it is determined if a path points to a folder or a file, please see [File & Folder Paths][]. + +### File Path needs escaping + +[File Path][FilePath Property] requires `\` characters to be escaped, otherwise each unescaped `\` will be reported as an `Invalid property value` message when trying to debug the flow. + +Escaping can be done in two ways: + +* Escaping the `\` character with another `\` character (e.g. `"C:\\Source\\File.txt"`), or +* Prepending an `@` character before the start of the [File Path][FilePath Property] (e.g. `@"C:\Source\File.txt"`). + +### File Path does not exist + +If the [File Path][FilePath Property] does not exist nothing is deleted, and no exception is thrown. + +[FilePath Property]: {{< ref "#file-path" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[OperationFailedException]: {{< url path="Cortex.Reference.Exceptions.FilesAndFolders.OperationFailedException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[File & Folder Paths]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.Paths.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/delete-file/delete-files-block.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/delete-file/delete-files-block.md new file mode 100644 index 000000000..1f775355a --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/delete-file/delete-files-block.md @@ -0,0 +1,121 @@ +--- +title: "Delete Files" +linkTitle: "Delete Files" +description: "Deletes files at the specified file paths." +--- + +{{< figure src="/blocks/Cortex_Blocks_FilesAndFolders_DeleteFile_DeleteFilesBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.FilesAndFolders.DeleteFile.DeleteFilesBlock)

+ +## Description + +Deletes files at the specified [File Paths][FilePaths Property]. + +## Examples + +### Delete files + +This example will delete files `["C:\Source\File1.txt", "C:\Source\File2.txt"]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [File Paths][FilePaths Property] | `($)FilePaths`, with value `[@"C:\Source\File1.txt", @"C:\Source\File2.txt"]` | `($)FilePaths` is a variable of type [IEnumerable][]<[String][]> | + +#### Result + +Deleting `["C:\Source\File1.txt", "C:\Source\File2.txt"]` results in files `"File1.txt"` and `"File2.txt"` being deleted from the folder `"C:\Source"`. + +*** + +## Properties + +### File Paths + +The [File Paths][FilePaths Property] to delete the files from. + +Each file path in [File Paths][FilePaths Property] is case-insensitive, cannot contain any wildcard characters, and any trailing spaces will be automatically removed. + +If a file path in [File Paths][FilePaths Property] exists it is permanently deleted; it does not go into a recycle bin. + +If a file path in [File Paths][FilePaths Property] does not exist no exception is recorded for that file path. + +For information about the supported file path formats (i.e. absolute, relative, UNC etc.) and examples of each, please see [File & Folder Paths][]. + +| | | +|--------------------|---------------------------| +| Data Type | [IEnumerable][]<[String][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)FilePaths` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [OperationFailedException][] | Any file path in [File Paths][FilePaths Property] is `null` or empty (i.e. `""`). | +| | Any file path in [File Paths][FilePaths Property] is duplicated. | +| | Any file path in [File Paths][FilePaths Property] points to a folder. | +| | Any file path in [File Paths][FilePaths Property] contains leading spaces. | +| | Any file path in [File Paths][FilePaths Property] contains only whitespace, or the NUL character (i.e. `\0`), or contains one or more invalid characters (i.e. `"`, `*`, `?`, `\|`, `<`, `>`, `:`, `\`, `/`) in any file or folder names. | +| | Any file path in [File Paths][FilePaths Property] exceeds the system-defined maximum length (typically 32,767 characters). | +| | Any file path in [File Paths][FilePaths Property] is invalid (for example, it is on an unmapped drive). | +| | Any file path in [File Paths][FilePaths Property] is read-only. | +| | Any file path in [File Paths][FilePaths Property] is in use by another application. | +| | The user the flow is executing as does not have the required permissions to delete a file in [File Paths][FilePaths Property]. | +| | An unexpected error occurs when deleting a file in [File Paths][FilePaths Property]. | +| [PropertyEmptyException][] | Thrown when [File Paths][FilePaths Property] does not contain any items. | +| [PropertyNullException][] | Thrown when [File Paths][FilePaths Property] is `null`. | + +## Remarks + +### File Paths + +For information about the supported file path formats (i.e. absolute, relative, UNC etc.) and examples of each, including how it is determined if a path points to a folder or a file, please see [File & Folder Paths][]. + +### File Paths need escaping + +Each file path in [File Paths][FilePaths Property] requires `\` characters to be escaped, otherwise each unescaped `\` will be reported as an `Invalid property value` message when trying to debug the flow. + +Escaping can be done in two ways: + +* Escaping the `\` character with another `\` character (e.g. `"C:\\Source\\File.txt"`), or +* Prepending an `@` character before the start of the +file path (e.g. `@"C:\Source\File.txt"`). + +### File Path does not exist + +If a file path in [File Paths][FilePaths Property] does not exist no exception is recorded for that file path. + +### Handling of Exceptions + +If an exception occurs when trying to delete a file in the [File Paths][FilePaths Property], it will be recorded and the block will continue processing the remaining files. Once all files are processed, recorded exceptions will be thrown within an [OperationFailedException][]. + +[FilePaths Property]: {{< ref "#file-paths" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[OperationFailedException]: {{< url path="Cortex.Reference.Exceptions.FilesAndFolders.OperationFailedException.MainDoc" >}} +[Duplicate File Paths]: {{< url path="Cortex.Reference.Exceptions.FilesAndFolders.OperationFailedException.IndexesOfDuplicatePaths" >}} +[Null Or Empty File Paths]: {{< url path="Cortex.Reference.Exceptions.FilesAndFolders.OperationFailedException.IndexesOfNullOrEmptyPaths" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[File & Folder Paths]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.Paths.MainDoc" >}} + +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/delete-folder/_index.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/delete-folder/_index.md new file mode 100644 index 000000000..03f110087 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/delete-folder/_index.md @@ -0,0 +1,5 @@ +--- +title: "Delete Folder(s)" +linkTitle: "Delete Folder(s)" +description: "Delete a folder or multiple folders." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/delete-folder/delete-folder-block.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/delete-folder/delete-folder-block.md new file mode 100644 index 000000000..c10eede1b --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/delete-folder/delete-folder-block.md @@ -0,0 +1,163 @@ +--- +title: "Delete Folder" +linkTitle: "Delete Folder" +description: "Deletes a folder at the specified folder path." +--- + +{{< figure src="/blocks/Cortex_Blocks_FilesAndFolders_DeleteFolder_DeleteFolderBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.FilesAndFolders.DeleteFolder.DeleteFolderBlock)

+ +## Description + +Deletes a folder at the specified [Folder Path][FolderPath Property]. + +A [Recursive][Recursive Property] option must be set to `true` to be able to delete a folder that contains files and/or other folders. This is to prevent unintentional and destructive deletion of files and folders. + +## Examples + +### Delete an empty folder + +This example will delete `"C:\Source\EmptyFolder"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Folder Path][FolderPath Property] | `($)FolderPath`, with value `@"C:\Source\EmptyFolder"` | `($)FolderPath` is a variable of type [String][] | +| [Recursive][Recursive Property] | `($)Recursive`, with value `false` | `($)Recursive` is a variable of type [Boolean][] | + +#### Result + +Deleting `"C:\Source\EmptyFolder"` results in the folder `"EmptyFolder"` being deleted from the folder `"C:\Source"`. + +*** + +### Delete a folder and its content + +This example will delete `"C:\Source\Folder"` and its content. + +In this example assume: + +* `"C:\Source\Folder"` contains: + * A file named `"FileInFolder.txt"`. + * An empty sub-folder named `"EmptySubFolder"`. + * An sub-folder named `"SubFolder"` that contains. + * A file named `"FileInSubFolder.txt"`. + +Therefore, recursive must be set to `true` to ensure child folders and files can be deleted. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Folder Path][FolderPath Property] | `($)FolderPath`, with value `@"C:\Source\Folder"` | `($)FolderPath` is a variable of type [String][] | +| [Recursive][Recursive Property] | `($)Recursive`, with value `true` | `($)Recursive` is a variable of type [Boolean][] | + +#### Result + +Deleting `"C:\Source\Folder"` and its content results in: + +* File `"FileInSubFolder.txt"` being deleted from the folder `"C:\Source\Folder\SubFolder"`. +* Folder `"SubFolder"` being deleted from the folder `"C:\Source\Folder"`. +* Folder `"EmptySubFolder"` being deleted from the folder `"C:\Source\Folder"`. +* File `"FileInFolder.txt"` being deleted from the folder `"C:\Source\Folder"`. +* Folder `"Folder"` being deleted from the folder `"C:\Source"`. + +*** + +## Properties + +### Folder Path + +The [Folder Path][FolderPath Property] to delete the folder from. + +The [Folder Path][FolderPath Property] is case-insensitive, cannot contain any wildcard characters, and any trailing spaces will be automatically removed. + +For information about the supported folder path formats (i.e. absolute, relative, UNC etc.) and examples of each, please see [File & Folder Paths][]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)FolderPath` with no value | + +### Recursive + +[Recursive][Recursive Property] option that must be set to `true` to be able to delete a folder that contains files and/or other folders. + +If [Recursive][Recursive Property] is set to `false`, only an empty folder will be able to be deleted; for a non-empty folder an [OperationFailedException][] will be thrown. + +By default, this is set to `false` to prevent unintentional and destructive deletion of files and folders. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `false` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [OperationFailedException][] | The [Folder Path][FolderPath Property] points to a file. | +| | The [Folder Path][FolderPath Property] contains leading spaces. | +| | The [Folder Path][FolderPath Property] contains only whitespace, or the NUL character (i.e. `\0`), or contains one or more invalid characters (i.e. `"`, `*`, `?`, `\|`, `<`, `>`, `:`, `\`, `/`) in any folder names. | +| | The [Folder Path][FolderPath Property] exceeds the system-defined maximum length (typically 32,767 characters). | +| | The folder at the [Folder Path][FolderPath Property] is not empty and recursive is `false`. | +| | The folder at the [Folder Path][FolderPath Property] or any sub-folders are read-only or contain read-only files and/or folders. +| | The user the flow is executing as does not have the required permissions to delete the folder at the [Folder Path][FolderPath Property] or any of its content. | +| | An unexpected error occurs when deleting the folder at the [Folder Path][FolderPath Property] or any of its content. | +| [PropertyEmptyException][] | Thrown when [Folder Path][FolderPath Property] is empty (i.e. `""`). | +| [PropertyNullException][] | Thrown when [Folder Path][FolderPath Property] is `null`. | + +## Remarks + +### Folder Paths + +For information about the supported folder path formats (i.e. absolute, relative, UNC etc.) and examples of each, including how it is determined if a path points to a folder or a file, please see [File & Folder Paths][]. + +### Folder Path needs escaping + +[Folder Path][FolderPath Property] requires `\` characters to be escaped, otherwise each unescaped `\` will be reported as an `Invalid property value` message when trying to debug the flow. + +Escaping can be done in two ways: + +* Escaping the `\` character with another `\` character (e.g. `"C:\\Source\\"`), or +* Prepending an `@` character before the start of the [Folder Path][FolderPath Property] (e.g. `@"C:\Source"`). + +### Folder Path does not exist + +If the [Folder Path][FolderPath Property] does not exist nothing is deleted, and no exception is thrown. + +### Handling of Exceptions + +If an exception occurs when trying to delete [Folder Path][FolderPath Property], an [OperationFailedException][] will be thrown. + +[FolderPath Property]: {{< ref "#folder-path" >}} +[Recursive Property]: {{< ref "#recursive" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[OperationFailedException]: {{< url path="Cortex.Reference.Exceptions.FilesAndFolders.OperationFailedException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[File & Folder Paths]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.Paths.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/delete-folder/delete-folders-block.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/delete-folder/delete-folders-block.md new file mode 100644 index 000000000..99c2b2b7d --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/delete-folder/delete-folders-block.md @@ -0,0 +1,176 @@ +--- +title: "Delete Folders" +linkTitle: "Delete Folders" +description: "Deletes folders at the specified folder paths." +--- + +{{< figure src="/blocks/Cortex_Blocks_FilesAndFolders_DeleteFolder_DeleteFoldersBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.FilesAndFolders.DeleteFolder.DeleteFoldersBlock)

+ +## Description + +Deletes folders at the specified [Folder Paths][FolderPaths Property]. + +A [Recursive][Recursive Property] option must be set to `true` to be able to delete folders that contain files and/or other folders. This is to prevent unintentional and destructive deletion of files and folders. + +## Examples + +### Delete empty folders + +This example will delete `["C:\Source\EmptyFolder1", "C:\Source\EmptyFolder2"]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Folder Paths][FolderPaths Property] | `($)FolderPaths`, with value `[@"C:\Source\EmptyFolder1", @"C:\Source\EmptyFolder2"]` | `($)FolderPaths` is a variable of type [IEnumerable][]<[String][]> | +| [Recursive][Recursive Property] | `($)Recursive`, with value `false` | `($)Recursive` is a variable of type [Boolean][] | + +#### Result + +Deleting `["C:\Source\EmptyFolder1", "C:\Source\EmptyFolder2"]` results in the folders `"EmptyFolder1"` and `"EmptyFolder2"` being deleted from the folder `"C:\Source"`. + +*** + +### Delete folders and their content + +This example will delete `["C:\Source\Folder1", "C:\Source\Folder2"]` and their content. + +In this example assume: + +* `"C:\Source\Folder1"` contains: + * A file named `"FileInFolder1.txt"`. + * An empty sub-folder named `"EmptySubFolder1"`. + * An sub-folder named `"SubFolder1"` that contains. + * A file named `"FileInSubFolder1.txt"`. +* `"C:\Source\Folder2"` contains: + * A file named `"FileInFolder2.txt"`. + * An empty sub-folder named `"EmptySubFolder2"`. + * An sub-folder named `"SubFolder2"` that contains. + * A file named `"FileInSubFolder2.txt"`. + +Therefore, recursive must be set to `true` to ensure child folders and files can be deleted. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Folder Paths][FolderPaths Property] | `($)FolderPaths`, with value `[@"C:\Source\Folder1", @"C:\Source\Folder2"]` | `($)FolderPaths` is a variable of type [IEnumerable][]<[String][]> | +| [Recursive][Recursive Property] | `($)Recursive`, with value `true` | `($)Recursive` is a variable of type [Boolean][] | + +#### Result + +Deleting `[@"C:\Source\Folder1", @"C:\Source\Folder2"]` and their content results in: + +* File `"FileInSubFolder1.txt"` being deleted from the folder `"C:\Source\Folder1\SubFolder1"`. +* File `"FileInSubFolder2.txt"` being deleted from the folder `"C:\Source\Folder2\SubFolder2"`. +* Folder `"SubFolder1"` being deleted from the folder `"C:\Source\Folder1"`. +* Folder `"SubFolder2"` being deleted from the folder `"C:\Source\Folder2"`. +* Folder `"EmptySubFolder1"` being deleted from the folder `"C:\Source\Folder1"`. +* Folder `"EmptySubFolder2"` being deleted from the folder `"C:\Source\Folder2"`. +* File `"FileInFolder1.txt"` being deleted from the folder `"C:\Source\Folder1"`. +* File `"FileInFolder2.txt"` being deleted from the folder `"C:\Source\Folder2"`. +* Folder `"Folder1"` being deleted from the folder `"C:\Source"`. +* Folder `"Folder2"` being deleted from the folder `"C:\Source"`. + +*** + +## Properties + +### Folder Paths + +The [Folder Paths][FolderPaths Property] to delete the folders from. + +Each folder path in [Folder Paths][FolderPaths Property] is case-insensitive, cannot contain any wildcard characters, and any trailing spaces will be automatically removed. + +For information about the supported folder path formats (i.e. absolute, relative, UNC etc.) and examples of each, please see [File & Folder Paths][]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)FolderPaths` with no value | + +### Recursive + +[Recursive][Recursive Property] option that must be set to `true` to be able to delete folders that contain files and/or other folders. + +If [Recursive][Recursive Property] is set to `false`, only empty folders will be able to be deleted; for non-empty folders an [OperationFailedException][] will be thrown. + +By default, this is set to `false` to prevent unintentional and destructive deletion of files and folders. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `false` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [OperationFailedException][] | Any folder path in [Folder Paths][FolderPaths Property] is `null` or empty (i.e. `""`). | +| | Any folder path in [Folder Paths][FolderPaths Property] is duplicated. For more information, see [Duplicate Folder Paths][]. | +| | Any folder path in [Folder Paths][FolderPaths Property] points to a file. | +| | Any folder path in [Folder Paths][FolderPaths Property] contains leading spaces. | +| | Any folder path in [Folder Paths][FolderPaths Property] contains only whitespace, or the NUL character (i.e. `\0`), or contains one or more invalid characters (i.e. `"`, `*`, `?`, `\|`, `<`, `>`, `:`, `\`, `/`) in any folder names. | +| | Any folder path in [Folder Paths][FolderPaths Property] exceeds the system-defined maximum length (typically 32,767 characters). | +| | Any folder path in [Folder Paths][FolderPaths Property] is not empty and recursive is `false`. | +| | Any folder path in [Folder Paths][FolderPaths Property] or any of their sub-folders are read-only or contain read-only files and/or folders. +| | The user the flow is executing as does not have the required permissions to delete a folder in the [Folder Paths][FolderPaths Property] or any of its content. | +| | An unexpected error occurs when deleting a folder in the [Folder Paths][FolderPaths Property] or any of its content. | +| [PropertyEmptyException][] | Thrown when [Folder Paths][FolderPaths Property] does not contain any items. | | +| [PropertyNullException][] | Thrown when [Folder Paths][FolderPaths Property] is `null`. | + +## Remarks + +### Folder Paths + +For information about the supported folder path formats (i.e. absolute, relative, UNC etc.) and examples of each, including how it is determined if a path points to a folder or a file, please see [File & Folder Paths][]. + +### Folder Paths need escaping + +Each folder path in [Folder Paths][FolderPaths Property] requires `\` characters to be escaped, otherwise each unescaped `\` will be reported as an `Invalid property value` message when trying to debug the flow. + +Escaping can be done in two ways: + +* Escaping the `\` character with another `\` character (e.g. `"C:\\Source\\"`), or +* Prepending an `@` character before the start of the folder path (e.g. `@"C:\Source"`). + +### Folder Path does not exist + +If a folder path in [Folder Paths][FolderPaths Property] does not exist no exception is recorded for that folder path. + +### Handling of Exceptions + +If an exception occurs when trying to delete a folder in [Folder Paths][FolderPaths Property], it will be recorded and the block will continue processing the remaining folders. Once all folders are processed, recorded exceptions will be thrown within an [OperationFailedException][]. + +[FolderPaths Property]: {{< ref "#folder-paths" >}} +[Recursive Property]: {{< ref "#recursive" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[OperationFailedException]: {{< url path="Cortex.Reference.Exceptions.FilesAndFolders.OperationFailedException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[File & Folder Paths]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.Paths.MainDoc" >}} + +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/get-file-information/_index.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/get-file-information/_index.md new file mode 100644 index 000000000..e2945e03a --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/get-file-information/_index.md @@ -0,0 +1,5 @@ +--- +title: "Get File Information" +linkTitle: "Get File Information" +description: "Get information about a file (i.e. file attributes, created, accessed and modified dates etc.)." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/get-file-information/get-file-information-block.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/get-file-information/get-file-information-block.md new file mode 100644 index 000000000..f788b2e41 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/get-file-information/get-file-information-block.md @@ -0,0 +1,154 @@ +--- +title: "Get File Information" +linkTitle: "Get File Information" +description: "Gets information about a file (e.g. file attributes, created, accessed, modified dates etc.) at the specified file path." +--- + +{{< figure src="/blocks/Cortex_Blocks_FilesAndFolders_GetFileInformation_GetFileInformationBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.FilesAndFolders.GetFileInformation.GetFileInformationBlock)

+ +## Description + +Gets [File Information][FileInformation Property] about a file (e.g. file attributes, created, accessed, modified dates etc.) at the specified [File Path][FilePath Property]. + +## Examples + +### Get file information + +This example will get information about `"C:\Source\File.txt"`. + +In this example assume `"C:\Source\File.txt"`: + +* Is on a server where local time and UTC time are the same (e.g. in UK). +* Was created at 10.00am on the 1st January 2021. +* Was last modified at 10.00am on the 1st January 2021. +* Was last accessed at 1.00pm on the 10th January 2021. +* Is 100 bytes in size. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [File Path][FilePath Property] | `($)FilePath`, with value `@"C:\Source\File.txt"` | `($)FilePath` is a variable of type [String][] | +| [File Information][FileInformation Property] | `($)FileInformation`, with no value | `($)FilePath` is a variable that will be set to a [FileInformation][] value | + +#### Result + +Getting file information for `"C:\Source\File.txt"` results in the variable `($)FileInformation` being updated to the following: + +```json +{ + "Extension": ".exe", + "Path": "C:\\Source\\File.txt", + "Name": "File.txt", + "ParentRoot": "C:\\", + "ParentPath": "C:\\Source", + "SizeInBytes": 100, + "IsArchive": false, + "IsCompressed": false, + "IsEncrypted": false, + "IsHidden": false, + "IsNormal": false, + "IsTemporary": false, + "IsReadOnly": false, + "IsSystem": false, + "CreationTimeLocal": "2021-01-01T10:00:00+00:00", + "CreationTimeUtc": "2021-01-01T10:00:00Z", + "LastAccessTimeLocal": "2021-01-10T13:00:00+00:00", + "LastAccessTimeUtc": "2021-01-10T13:00:00Z", + "LastWriteTimeLocal": "2021-01-01T10:00:00+00:00", + "LastWriteTimeUtc": "2021-01-01T10:00:00Z" +} +``` + +*** + +## Properties + +### File Path + +The [File Path][FilePath Property] to get the [File Information][FileInformation Property] of. + +The [File Path][FilePath Property] is case-insensitive, cannot contain any wildcard characters, and any trailing spaces will be automatically removed. + +For information about the supported file path formats (i.e. absolute, relative, UNC etc.) and examples of each, please see [File & Folder Paths][]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)FilePath` with no value | + +### File Information + +The [File Information][FileInformation Property] retrieved from the file at the specified [File Path][FilePath Property]. + +[File Information][FileInformation Property] includes file attributes, create, access and write dates and path details. + +For more information see the [example][] above, or the [FileInformation][] data type. + +| | | +|--------------------|---------------------------| +| Data Type | [FileInformation][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)FileInformation` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [OperationFailedException][] | The [File Path][FilePath Property] points to a folder. | +| | The [File Path][FilePath Property] contains leading spaces. | +| | The [File Path][FilePath Property] contains only whitespace, or the NUL character (i.e. `\0`), or contains one or more invalid characters (i.e. `"`, `*`, `?`, `\|`, `<`, `>`, `:`, `\`, `/`) in any folder or file names. | +| | The [File Path][FilePath Property] exceeds the system-defined maximum length (typically 32,767 characters). | +| | The [File Path][FilePath Property] is invalid (for example, it is on an unmapped drive). | +| | The user the flow is executing as does not have the required permissions to get information about the file at the [File Path][FilePath Property]. | +| | An unexpected error occurs when getting information for the file at the [File Path][FilePath Property]. | +| [PropertyEmptyException][] | Thrown when [File Path][FilePath Property] is empty (i.e. `""`). | +| [PropertyNullException][] | Thrown when [File Path][FilePath Property] is `null`. | + +## Remarks + +### File Paths + +For information about the supported file path formats (i.e. absolute, relative, UNC etc.) and examples of each, including how it is determined if a path points to a folder or a file, please see [File & Folder Paths][]. + +### File Path needs escaping + +[File Path][FilePath Property] requires `\` characters to be escaped, otherwise each unescaped `\` will be reported as an `Invalid property value` message when trying to debug the flow. + +Escaping can be done in two ways: + +* Escaping the `\` character with another `\` character (e.g. `"C:\\Source\\File.txt"`), or +* Prepending an `@` character before the start of the [File Path][FilePath Property] (e.g. `@"C:\Source\File.txt"`). + +[FilePath Property]: {{< ref "#file-path" >}} +[FileInformation Property]: {{< ref "#file-information" >}} +[Example]: {{< ref "#get-file-information" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[OperationFailedException]: {{< url path="Cortex.Reference.Exceptions.FilesAndFolders.OperationFailedException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[File & Folder Paths]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.Paths.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[FileInformation]: {{< url path="Cortex.Reference.DataTypes.FilesAndFolders.FileInformation.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/get-folder-content/_index.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/get-folder-content/_index.md new file mode 100644 index 000000000..4c4696535 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/get-folder-content/_index.md @@ -0,0 +1,5 @@ +--- +title: "Get Folder Content" +linkTitle: "Get Folder Content" +description: "Get the paths of files or folders in another folder." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/get-folder-content/get-folder-content-block.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/get-folder-content/get-folder-content-block.md new file mode 100644 index 000000000..80f16e84f --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/get-folder-content/get-folder-content-block.md @@ -0,0 +1,389 @@ +--- +title: "Get Folder Content" +linkTitle: "Get Folder Content" +description: "Gets the paths of files or folders under the specified folder path." +--- + +{{< figure src="/blocks/Cortex_Blocks_FilesAndFolders_GetFolderContent_GetFolderContentBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.FilesAndFolders.GetFolderContent.GetFolderContentBlock)

+ +## Description + +Gets the [Paths][Paths Property] of files or folders under the specified [Folder Path][FolderPath Property] whose name matches the given [Search Pattern][SearchPattern Property]. + +The returned [Paths][Paths Property] can then be used in other file and folder blocks that require paths. + +Additional options can be specified: + +* [Search Options][SearchOptions Property] can be specified to choose whether to use a LiteralText, PatternMatching or Regex search. +* [Content Options][ContentOptions Property] can be specified to choose whether to search for files or folders. +* A [Recursive][Recursive Property] option can specified to choose whether to search only in the specified [Folder Path][FolderPath Property], or include all subfolders. +* A [Comparison Type][ComparisonType Property] option can specified to choose how it is determined whether the file or folder name matches the [Search Pattern][SearchPattern Property] (e.g. whether the search is case-sensitive or case-insensitive). + +## Examples + +### Get paths of files in a folder whose names contain a given text + +This example will get the paths of all files in `"C:\Source\Folder"` that contain `"file"` in their name. + +It will perform a case-insensitive search, and will not get any paths of folders or any paths of files that reside in subfolders of `"C:\Source\Folder"`. + +In this example assume `"C:\Source\Folder"` contains: + +* A file named `"FileInFolder1.txt"`. +* A file named `"FileInFolder2.txt"`. +* A folder named `"SubFolder"` which contains: + * A file named `"FileInSubFolder1.txt"`. + * A file named `"FileInSubFolder2.txt"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Folder Path][FolderPath Property] | `($)FolderPath`, with value `@"C:\Source\Folder"` | `($)FolderPath` is a variable of type [String][] | +| [Search Pattern][SearchPattern Property] | `($)SearchPattern`, with value `"file"` | `($)SearchPattern` is a variable of type [String][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.LiteralText` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Content Options][ContentOptions Property] | `($)ContentOptions`, with value `ContentOptions.Files` | `($)ContentOptions` is a variable of type [ContentOptions][] | +| [Recursive][Recursive Property] | `($)Recursive`, with value `false` | `($)Recursive` is a variable of type [Boolean][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.OrdinalIgnoreCase` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Paths][Paths Property] | `($)Paths`, with no value | `($)Paths` is a variable that will be set to an [IList][]<[String][]> value | + +#### Result + +Getting all file paths that contain `"file"` (case-insensitive) in `"C:\Source\Folder"` excluding any of its subfolders, results in the variable `($)Paths` being updated to the following: + +```json +[ + "C:\\Source\\Folder\\FileInFolder1.txt", + "C:\\Source\\Folder\\FileInFolder2.txt" +] +``` + +*** + +### Get paths of files in a folder (and its subfolders) whose names contain a given text + +This example will get the paths of all files in `"C:\Source\Folder"` or any of its subfolders, that contain `"File"` in their name. + +It will perform a case-sensitive search and will not get any paths of folders. + +In this example assume `"C:\Source\Folder"` contains: + +* A file named `"FileInFolder1.txt"`. +* A file named `"FileInFolder2.txt"`. +* A folder named `"SubFolder"` which contains: + * A file named `"FileInSubFolder1.txt"`. + * A file named `"FileInSubFolder2.txt"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Folder Path][FolderPath Property] | `($)FolderPath`, with value `@"C:\Source\Folder"` | `($)FolderPath` is a variable of type [String][] | +| [Search Pattern][SearchPattern Property] | `($)SearchPattern`, with value `"File"` | `($)SearchPattern` is a variable of type [String][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.LiteralText` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Content Options][ContentOptions Property] | `($)ContentOptions`, with value `ContentOptions.Files` | `($)ContentOptions` is a variable of type [ContentOptions][] | +| [Recursive][Recursive Property] | `($)Recursive`, with value `true` | `($)Recursive` is a variable of type [Boolean][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Paths][Paths Property] | `($)Paths`, with no value | `($)Paths` is a variable that will be set to an [IList][]<[String][]> value | + +#### Result + +Getting all file paths that contain `"File"` (case-sensitive) in `"C:\Source\Folder"` or any of its subfolders, results in the variable `($)Paths` being updated to the following: + +```json +[ + "C:\\Source\\Folder\\FileInFolder1.txt", + "C:\\Source\\Folder\\FileInFolder2.txt", + "C:\\Source\\Folder\\SubFolder\\FileInSubFolder1.txt", + "C:\\Source\\Folder\\SubFolder\\FileInSubFolder2.txt" +] +``` + +*** + +### Get paths of folders in a folder whose names match a given pattern + +This example will get the paths of all folders that are in `"C:\Source\Folder"`, and match the pattern `"*"` in their name. + +It will perform a case-insensitive search, will not get any paths of files, and will match any folder in `"C:\Source\Folder"`. It will not match any child folders of folders in `"C:\Source\Folder"`. + +In this example assume `"C:\Source\Folder"` contains: + +* A file named `"FileInFolder1.txt"`. +* A file named `"FileInFolder2.txt"`. +* A folder named `"SubFolder"` which contains: + * A file named `"FileInSubFolder1.txt"`. + * A file named `"FileInSubFolder2.txt"`. + * An empty folder named `"NestedSubFolder"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Folder Path][FolderPath Property] | `($)FolderPath`, with value `@"C:\Source\Folder"` | `($)FolderPath` is a variable of type [String][] | +| [Search Pattern][SearchPattern Property] | `($)SearchPattern`, with value `"*"` | `($)SearchPattern` is a variable of type [String][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.PatternMatching` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Content Options][ContentOptions Property] | `($)ContentOptions`, with value `ContentOptions.Folders` | `($)ContentOptions` is a variable of type [ContentOptions][] | +| [Recursive][Recursive Property] | `($)Recursive`, with value `false` | `($)Recursive` is a variable of type [Boolean][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.OrdinalIgnoreCase` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Paths][Paths Property] | `($)Paths`, with no value | `($)Paths` is a variable that will be set to an [IList][]<[String][]> value | + +#### Result + +Getting all folder paths that match the pattern `"*"` (case-insensitive) in `"C:\Source\Folder"` excluding any of its subfolders, results in the variable `($)Paths` being updated to the following: + +```json +[ + "C:\\Source\\Folder\\SubFolder" +] +``` + +*** + +### Get paths of folders in a folder (and its subfolders) whose names match a given regex + +This example will get the paths of all folders that are in `"C:\Source\Folder"` or any of its subfolders, and match the regex `"Folder$"` in their name. + +It will perform a case-sensitive search, will not get any paths of files, and will match folders whose name ends with `"Folder"`. + +In this example assume `"C:\Source\Folder"` contains: + +* A file named `"FileInFolder1.txt"`. +* A file named `"FileInFolder2.txt"`. +* A folder named `"SubFolder"` which contains: + * A file named `"FileInSubFolder1.txt"`. + * A file named `"FileInSubFolder2.txt"`. + * An empty folder named `"NestedSubFolder"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Folder Path][FolderPath Property] | `($)FolderPath`, with value `@"C:\Source\Folder"` | `($)FolderPath` is a variable of type [String][] | +| [Search Pattern][SearchPattern Property] | `($)SearchPattern`, with value `"Folder$"` | `($)SearchPattern` is a variable of type [String][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.Regex` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Content Options][ContentOptions Property] | `($)ContentOptions`, with value `ContentOptions.Folders` | `($)ContentOptions` is a variable of type [ContentOptions][] | +| [Recursive][Recursive Property] | `($)Recursive`, with value `true` | `($)Recursive` is a variable of type [Boolean][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Paths][Paths Property] | `($)Paths`, with no value | `($)Paths` is a variable that will be set to an [IList][]<[String][]> value | + +#### Result + +Getting all folder paths that match the regex `"Folder$"` (case-sensitive) in `"C:\Source\Folder"` or any of its subfolders, results in the variable `($)Paths` being updated to the following: + +```json +[ + "C:\\Source\\Folder\\SubFolder", + "C:\\Source\\Folder\\SubFolder\\NestedSubFolder" +] +``` + +*** + +## Properties + +### Folder Path + +The [Folder Path][FolderPath Property] to get the [Paths][Paths Property] of files or folders whose name matches the given [Search Pattern][SearchPattern Property]. + +The [Folder Path][FolderPath Property] is case-insensitive, cannot contain any wildcard characters, and any trailing spaces will be automatically removed. + +For information about the supported folder path formats (i.e. absolute, relative, UNC etc.) and examples of each, please see [File & Folder Paths][]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)FolderPath` with no value | + +### Search Pattern + +The [Search Pattern][SearchPattern Property] file or folder names must match to be included in the returned [Paths][Paths Property]. + +Only file or folder names are matched, not the whole path. + +A [Search Pattern][SearchPattern Property] of `null` or empty (i.e. `""`) means match any name; all additional block options such as [Content Options][ContentOptions Property] etc. still take effect. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | No value (defaults to `""`) | + +### Search Options + +[Search Options][SearchOptions Property] can be specified to choose whether [Search Pattern][SearchPattern Property] should be interpreted as a LiteralText, PatternMatching or Regex search: + +* `SearchOptions.LiteralText` matches text exactly; as long as the file or folder name contains the text specified in [Search Pattern][SearchPattern Property] it will be considered a match. +* `SearchOptions.PatternMatching` allows wildcard text matching using [Pattern Matching Syntax][]: + * `*` wildcard character can be used to match `0` or more characters. + * `?` wildcard character can be used to match `0` or `1` character. + * All other characters are treated as a literal character. +* `SearchOptions.Regex` allows regex text matching using [.Net Regex Syntax][Regex Syntax]. + +Please note that with `SearchOptions.LiteralText` overlapping matches are detected (e.g. searching for `"aa"` in `"aaa"` matches `"aa"` at index `0` and `"aa"` at index `1`). With `SearchOptions.Regex` only `"aa"` at index `0` will be matched. + +| | | +|--------------------|---------------------------| +| Data Type | [SearchOptions][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | `LiteralText` | + +### Content Options + +[Content Options][ContentOptions Property] can be specified to choose whether [Search Pattern][SearchPattern Property] should be match file or folder names. + +* ContentOptions.Files restricts the search to match only files. +* ContentOptions.Folders restricts the search to match only folders. + +| | | +|--------------------|---------------------------| +| Data Type | [ContentOptions][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `Files` | + +### Recursive + +[Recursive][Recursive Property] option can specified to choose whether to search only in the specified [Folder Path][FolderPath Property], or include all subfolders. + +To search only in the specified [Folder Path][FolderPath Property] set [Recursive][Recursive Property] to `false`, or to include all subfolders set [Recursive][Recursive Property] to `true`. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `false` | + +### Comparison Type + +The [Comparison Type][ComparisonType Property] specifying the rules used to match file or folder names against the given [Search Pattern][SearchPattern Property]. + +For information about the [supported values][ComparisonTypes] for the [Comparison Type][ComparisonType Property] property and examples of how it is determined whether two pieces of text match, please see [Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [StringComparison][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | `Ordinal` | + +### Paths + +All [Paths][Paths Property] that match the specified [Search Pattern][SearchPattern Property] based on the other specified options. + +The [Paths][Paths Property] returned will be absolute paths, and based on the [Folder Path][FolderPath Property] provided (i.e. if a UNC path is specified, all returned paths will be UNC paths). + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[String][]> | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Paths` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [ArgumentException][] | Thrown when [Search Options][SearchOptions Property] is not one of the specified [SearchOptions][] types (e.g. `(SearchOptions)10`). | +| | Thrown when [Content Options][ContentOptions Property] is not one of the specified [ContentOptions][] types (e.g. `(ContentOptions)10`). | +| | Thrown when [Comparison Type][ComparisonType Property] is not one of the specified [StringComparison][] types (e.g. `(StringComparison)10`). | +| [OperationFailedException][] | The [Folder Path][FolderPath Property] points to a file. | +| | The [Folder Path][FolderPath Property] contains leading spaces. | +| | The [Folder Path][FolderPath Property] contains only whitespace, or the NUL character (i.e. `\0`), or contains one or more invalid characters (i.e. `"`, `*`, `?`, `\|`, `<`, `>`, `:`, `\`, `/`) in any folder names. | +| | The [Folder Path][FolderPath Property] exceeds the system-defined maximum length (typically 32,767 characters). | +| | The [Folder Path][FolderPath Property] is invalid (for example, it is on an unmapped drive). | +| | The user the flow is executing as does not have the required permissions to get the paths of files or folders in the [Folder Path][FolderPath Property], or any of its subfolders if [Recursive][Recursive Property] is `true`. | +| | An unexpected error occurs when getting the paths of files or folders in the [Folder Path][FolderPath Property], or any of its subfolders if [Recursive][Recursive Property] is `true`. | +| [PropertyEmptyException][] | Thrown when [Folder Path][FolderPath Property] is empty (i.e. `""`). | +| [PropertyNullException][] | Thrown when [Folder Path][FolderPath Property] is `null`. | +| [RegexMatchTimeoutException][] | Thrown when using [Search Options][SearchOptions Property] is either `SearchOptions.Regex` or `SearchOptions.PatternMatching` and the execution time of the search exceeds `30` seconds. | +| [RegexParsingFailedException][] | Thrown when [Search Options][SearchOptions Property] is `SearchOptions.Regex` and the [Search Pattern][SearchPattern Property] is not a valid regex (e.g. `(`). | + +## Remarks + +### Folder Paths + +For information about the supported folder path formats (i.e. absolute, relative, UNC etc.) and examples of each, including how it is determined if a path points to a folder or a file, please see [File & Folder Paths][]. + +### Folder Path needs escaping + +[Folder Path][FolderPath Property] requires `\` characters to be escaped, otherwise each unescaped `\` will be reported as an `Invalid property value` message when trying to debug the flow. + +Escaping can be done in two ways: + +* Escaping the `\` character with another `\` character (e.g. `"C:\\Source\\"`), or +* Prepending an `@` character before the start of the [Folder Path][FolderPath Property] (e.g. `@"C:\Source"`). + +### Null or empty Search Pattern + +A `null` or empty (i.e. `""`) [Search Pattern][SearchPattern Property] means match any name; all additional block options such as [Content Options][ContentOptions Property] etc. still take effect. + +### Comparison Types + +For information about the [supported values][ComparisonTypes] for the [Comparison Type][ComparisonType Property] property and examples of how it is determined whether two pieces of text match, please see [Equality][]. + +### Handling of Exceptions + +If an exception occurs when trying to match a file or folder name, it will be recorded and the block will continue processing the remaining files or folders. Once all files or folders are processed, recorded exceptions will be thrown within an [OperationFailedException][]. + +### Known Limitations + +If [Search Options][SearchOptions Property] is set to `SearchOptions.Regex` or `SearchOptions.PatternMatching` and [Comparison Type][ComparisonType Property] is set to `StringComparison.CurrentCulture`, some characters such as `æ` that is equivalent to `ae` may not evaluate as equal. + +[FolderPath Property]: {{< ref "#folder-path" >}} +[SearchPattern Property]: {{< ref "#search-pattern" >}} +[SearchOptions Property]: {{< ref "#search-options" >}} +[ContentOptions Property]: {{< ref "#content-options" >}} +[Recursive Property]: {{< ref "#recursive" >}} +[ComparisonType Property]: {{< ref "#comparison-type" >}} +[Paths Property]: {{< ref "#paths" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.MainDoc" >}} +[ComparisonTypes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.MainDoc" >}} +[Ordinal]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.Ordinal" >}} +[OrdinalIgnoreCase]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.OrdinalIgnoreCase" >}} + +[ArgumentException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentException" >}} +[OperationFailedException]: {{< url path="Cortex.Reference.Exceptions.FilesAndFolders.OperationFailedException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[RegexMatchTimeoutException]: {{< url path="MSDocs.DotNet.Api.System.Text.RegularExpressions.RegexMatchTimeoutException" >}} +[RegexParsingFailedException]: {{< url path="Cortex.Reference.Exceptions.Text.Regex.RegexParsingFailedException.MainDoc" >}} + +[File & Folder Paths]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.Paths.MainDoc" >}} +[Pattern Matching Syntax]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.PatternMatchingSyntax.MainDoc" >}} +[Regex Syntax]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.RegexSyntax.MainDoc" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[SearchOptions]: {{< url path="Cortex.Reference.DataTypes.Text.SearchOptions.MainDoc" >}} +[ContentOptions]: {{< url path="Cortex.Reference.DataTypes.FilesAndFolders.ContentOptions.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} +[StringComparison]: {{< url path="Cortex.Reference.DataTypes.Text.StringComparison.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/get-folder-information/_index.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/get-folder-information/_index.md new file mode 100644 index 000000000..9b3213535 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/get-folder-information/_index.md @@ -0,0 +1,5 @@ +--- +title: "Get Folder Information" +linkTitle: "Get Folder Information" +description: "Get information about a folder (i.e. folder attributes, created, accessed and modified dates etc.)." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/get-folder-information/get-folder-information-block.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/get-folder-information/get-folder-information-block.md new file mode 100644 index 000000000..8f53d6999 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/get-folder-information/get-folder-information-block.md @@ -0,0 +1,158 @@ +--- +title: "Get Folder Information" +linkTitle: "Get Folder Information" +description: "Gets information about a folder (e.g. folder attributes, created, accessed, modified dates etc.) at the specified folder path." +--- + +{{< figure src="/blocks/Cortex_Blocks_FilesAndFolders_GetFolderInformation_GetFolderInformationBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.FilesAndFolders.GetFolderInformation.GetFolderInformationBlock)

+ +## Description + +Gets [Folder Information][FolderInformation Property] about a folder (e.g. folder attributes, created, accessed, modified dates etc.) at the specified [Folder Path][FolderPath Property]. + +## Examples + +### Get folder information + +This example will get information about `"C:\Source\Folder"`. + +In this example assume `"C:\Source\Folder"`: + +* Is on a server where local time and UTC time are the same (e.g. in UK). +* Was created at 10.00am on the 1st January 2021. +* Was last modified at 10.00am on the 1st January 2021. +* Was last accessed at 1.00pm on the 10th January 2021. +* Contains a single file named `"File.txt"` which is 100 bytes in size. +* Contains a single empty folder named `"SubFolder"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Folder Path][FolderPath Property] | `($)FolderPath`, with value `@"C:\Source\Folder"` | `($)FolderPath` is a variable of type [String][] | +| [Folder Information][FolderInformation Property] | `($)FolderInformation`, with no value | `($)FolderPath` is a variable that will be set to a [FolderInformation][] value | + +#### Result + +Getting folder information for `"C:\Source\Folder"` results in the variable `($)FolderInformation` being updated to the following: + +```json +{ + "FileCount": 1, + "FolderCount": 1, + "TotalItemCount": 2, + "Path": "C:\\Source\\Folder", + "Name": "Test", + "ParentRoot": "C:\\", + "ParentPath": "C:\\Source", + "SizeInBytes": 100, + "IsArchive": false, + "IsCompressed": false, + "IsEncrypted": false, + "IsHidden": false, + "IsNormal": false, + "IsTemporary": false, + "IsReadOnly": false, + "IsSystem": false, + "CreationTimeLocal": "2021-01-01T10:00:00+00:00", + "CreationTimeUtc": "2021-01-01T10:00:00Z", + "LastAccessTimeLocal": "2021-01-10T13:00:00+00:00", + "LastAccessTimeUtc": "2021-01-10T13:00:00Z", + "LastWriteTimeLocal": "2021-01-01T10:00:00+00:00", + "LastWriteTimeUtc": "2021-01-01T10:00:00Z" +} +``` + +*** + +## Properties + +### Folder Path + +The [Folder Path][FolderPath Property] to get the [Folder Information][FolderInformation Property] of. + +The [Folder Path][FolderPath Property] is case-insensitive, cannot contain any wildcard characters, and any trailing spaces will be automatically removed. + +For information about the supported folder path formats (i.e. absolute, relative, UNC etc.) and examples of each, please see [File & Folder Paths][]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)FolderPath` with no value | + +### Folder Information + +The [Folder Information][FolderInformation Property] retrieved from the folder at the specified [Folder Path][FolderPath Property]. + +[Folder Information][FolderInformation Property] includes folder attributes, create, access and write dates, path details and folder and file counts. + +For more information see the [example][] above, or the [FolderInformation][] data type. + +| | | +|--------------------|---------------------------| +| Data Type | [FolderInformation][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)FolderInformation` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [OperationFailedException][] | The [Folder Path][FolderPath Property] points to a file. | +| | The [Folder Path][FolderPath Property] contains leading spaces. | +| | The [Folder Path][FolderPath Property] contains only whitespace, or the NUL character (i.e. `\0`), or contains one or more invalid characters (i.e. `"`, `*`, `?`, `\|`, `<`, `>`, `:`, `\`, `/`) in any folder names. | +| | The [Folder Path][FolderPath Property] exceeds the system-defined maximum length (typically 32,767 characters). | +| | The [Folder Path][FolderPath Property] is invalid (for example, it is on an unmapped drive). | +| | The user the flow is executing as does not have the required permissions to get information about the folder at the [Folder Path][FolderPath Property]. | +| | An unexpected error occurs when getting information for the folder at the [Folder Path][FolderPath Property] or any of its content. | +| [PropertyEmptyException][] | Thrown when [Folder Path][FolderPath Property] is empty (i.e. `""`). | +| [PropertyNullException][] | Thrown when [Folder Path][FolderPath Property] is `null`. | + +## Remarks + +### Folder Paths + +For information about the supported folder path formats (i.e. absolute, relative, UNC etc.) and examples of each, including how it is determined if a path points to a folder or a file, please see [File & Folder Paths][]. + +### Folder Path needs escaping + +[Folder Path][FolderPath Property] requires `\` characters to be escaped, otherwise each unescaped `\` will be reported as an `Invalid property value` message when trying to debug the flow. + +Escaping can be done in two ways: + +* Escaping the `\` character with another `\` character (e.g. `"C:\\Source\\"`), or +* Prepending an `@` character before the start of the [Folder Path][FolderPath Property] (e.g. `@"C:\Source"`). + +[FolderPath Property]: {{< ref "#folder-path" >}} +[FolderInformation Property]: {{< ref "#folder-information" >}} + +[Example]: {{< ref "#get-folder-information" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[OperationFailedException]: {{< url path="Cortex.Reference.Exceptions.FilesAndFolders.OperationFailedException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[File & Folder Paths]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.Paths.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[FolderInformation]: {{< url path="Cortex.Reference.DataTypes.FilesAndFolders.FolderInformation.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/move-file/_index.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/move-file/_index.md new file mode 100644 index 000000000..72624ef3e --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/move-file/_index.md @@ -0,0 +1,5 @@ +--- +title: "Move File(s)" +linkTitle: "Move File(s)" +description: "Move a file or multiple files." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/move-file/move-file-block.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/move-file/move-file-block.md new file mode 100644 index 000000000..f28976562 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/move-file/move-file-block.md @@ -0,0 +1,223 @@ +--- +title: "Move File" +linkTitle: "Move File" +description: "Moves a file at the specified file path to the given destination path." +--- + +{{< figure src="/blocks/Cortex_Blocks_FilesAndFolders_MoveFile_MoveFileBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.FilesAndFolders.MoveFile.MoveFileBlock)

+ +## Description + +Moves a file at the specified [File Path][FilePath Property] to the given [Destination Path][DestinationPath Property], with an option to [Overwrite][Overwrite Property] the file if it already exists. + +## Examples + +### Move a file to a folder keeping the same file name + +This example will move `"C:\Source\OriginalFile.txt"` to `"C:\Destination"`, with the same file name of `"OriginalFile.txt"`. + +In this example assume `"C:\Destination"` does not already contain a file named `"OriginalFile.txt"`, so overwrite can be set to either `true` or `false` and it will still work. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [File Path][FilePath Property] | `($)FilePath`, with value `@"C:\Source\OriginalFile.txt"` | `($)FilePath` is a variable of type [String][] | +| [Destination Path][DestinationPath Property] | `($)DestinationPath`, with value `@"C:\Destination"` | `($)DestinationPath` is a variable of type [String][] | +| [Overwrite][Overwrite Property] | `($)Overwrite`, with value `false` | `($)Overwrite` is a variable of type [Boolean][] | + +#### Result + +Moving `"C:\Source\OriginalFile.txt"` to `"C:\Destination"` that does not already contain a file named `"OriginalFile.txt"` will: + +* Move `"C:\Source\OriginalFile.txt"` to `"C:\Destination\OriginalFile.txt"` with: + * The content left unchanged. + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [File attributes][] left unchanged. + +*** + +### Move a file to a folder with a new name + +This example will move `"C:\Source\OriginalFile.txt"` to `"C:\Destination"`, with a new file name of `"NewFile.txt"`. + +To rename the file when it is being moved, please note that the [Destination Path][DestinationPath Property] must be a file path, rather than a folder path (e.g. `"C:\Destination\NewFile.txt"` rather than `"C:\Destination"`). + +In this example assume `"C:\Destination"` does not already contain a file named `"NewFile.txt"`, so overwrite can be set to either `true` or `false` and it will still work. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [File Path][FilePath Property] | `($)FilePath`, with value `@"C:\Source\OriginalFile.txt"` | `($)FilePath` is a variable of type [String][] | +| [Destination Path][DestinationPath Property] | `($)DestinationPath`, with value `@"C:\Destination\NewFile.txt"` | `($)DestinationPath` is a variable of type [String][] | +| [Overwrite][Overwrite Property] | `($)Overwrite`, with value `false` | `($)Overwrite` is a variable of type [Boolean][] | + +#### Result + +Move `"C:\Source\OriginalFile.txt"` to the path `"C:\Destination\NewFile.txt"` that does not already exist will: + +* Move `"C:\Source\OriginalFile.txt"` to `"C:\Destination\NewFile.txt"` with: + * The content left unchanged. + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [File attributes][] left unchanged. + +*** + +### Move a file to a folder overwriting any file that already exists with the same name + +This example will move `"C:\Source\FileAlreadyExists.txt"` to `"C:\Destination"`, with the same file name of `"FileAlreadyExists.txt"`. + +In this example assume `"C:\Destination"` already contains a file named `"FileAlreadyExists.txt"`, so overwrite must be set to `true` to ensure the content of the existing file can be overwritten. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [File Path][FilePath Property] | `($)FilePath`, with value `@"C:\Source\FileAlreadyExists.txt"` | `($)FilePath` is a variable of type [String][] | +| [Destination Path][DestinationPath Property] | `($)DestinationPath`, with value `@"C:\Destination"` | `($)DestinationPath` is a variable of type [String][] | +| [Overwrite][Overwrite Property] | `($)Overwrite`, with value `true` | `($)Overwrite` is a variable of type [Boolean][] | + +#### Result + +Moving `"C:\Source\FileAlreadyExists.txt"` to `"C:\Destination"` and overwriting the existing file named `"FileAlreadyExists.txt"` will: + +* Overwrite the existing file at `"C:\Destination\FileAlreadyExists.txt"` with: + * The content copied from `"C:\Source\FileAlreadyExists.txt"`. + * The `Date Created` copied from `"C:\Source\FileAlreadyExists.txt"`. + * The `Date Accessed` copied from `"C:\Source\FileAlreadyExists.txt"` + * The `Date Modified` copied from `"C:\Source\FileAlreadyExists.txt"`. + * The [File Attributes][] copied from `"C:\Source\FileAlreadyExists.txt"`. + +*** + +## Properties + +### File Path + +The [File Path][FilePath Property] to move the file from. + +The [File Path][FilePath Property] is case-insensitive, cannot contain any wildcard characters, and any trailing spaces will be automatically removed. + +For information about the supported file path formats (i.e. absolute, relative, UNC etc.) and examples of each, please see [File & Folder Paths][]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)FilePath` with no value | + +### Destination Path + +The [Destination Path][DestinationPath Property] to move the file to. + +The [Destination Path][DestinationPath Property] is case-insensitive, cannot contain any wildcard characters, and any trailing spaces will be automatically removed. + +The [Destination Path][DestinationPath Property] can either point to a folder or a file: + +* If it points to a folder, the moved file will have the name specified in the [File Path][FilePath Property]. +* If it points to a file, the moved file will have the name specified in the [Destination Path][DestinationPath Property]. + +Any non-existing folders within the [Destination Path][DestinationPath Property] will be automatically created. + +For information about the supported file and folder path formats (i.e. absolute, relative, UNC etc.) and examples of each, including how it is determined if a path points to a folder or a file, please see [File & Folder Paths][]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | No value (defaults to `""`) | + +### Overwrite + +Option to [Overwrite][Overwrite Property] the file in the [Destination Path][DestinationPath Property] if it already exists. + +If the file exists, [Overwrite][Overwrite Property] must be set to `true`, otherwise an [OperationFailedException][] will be thrown. By default, this is set to `false` to avoid implicit and accidental overwriting of existing files. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `false` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [InvalidPathException][] | The [Destination Path][DestinationPath Property] contains leading spaces. | +| | The [Destination Path][DestinationPath Property] contains only whitespace, or the NUL character (i.e. `\0`), or contains one or more invalid characters (i.e. `"`, `*`, `?`, `\|`, `<`, `>`, `:`, `\`, `/`) in any file or folder names. | +| | The [Destination Path][DestinationPath Property] (if it points to a file), or the [Destination Path][DestinationPath Property] (if it points to a folder) plus the file name, exceeds the system-defined maximum length (typically 32,767 characters). | +| [OperationFailedException][] | The [File Path][FilePath Property] does not exist. | +| | The [File Path][FilePath Property] points to a folder. | +| | The [File Path][FilePath Property] contains leading spaces. | +| | The [File Path][FilePath Property] contains only whitespace, or the NUL character (i.e. `\0`), or contains one or more invalid characters (i.e. `"`, `*`, `?`, `\|`, `<`, `>`, `:`, `\`, `/`) in any file or folder names. | +| | The [File Path][FilePath Property] exceeds the system-defined maximum length (typically 32,767 characters). | +| | The [File Path][FilePath Property] or [Destination Path][DestinationPath Property] is invalid (for example, it is on an unmapped drive). | +| | The file in the specified [Destination Path][DestinationPath Property] exists and overwrite is `false`. | +| | The file in the specified [Destination Path][DestinationPath Property] exists, is read-only and overwrite is `true`. | +| | The user the flow is executing as does not have the required permissions to move the file (e.g. not having read access to the [File Path][FilePath Property] or write access to the [Destination Path][DestinationPath Property]). | +| | An unexpected error occurs when moving the file. | +| [PropertyEmptyException][] | Thrown when [File Path][FilePath Property] or [Destination Path][DestinationPath Property] are empty (i.e. `""`). | +| [PropertyNullException][] | Thrown when [File Path][FilePath Property] or [Destination Path][DestinationPath Property] are `null`. | + +## Remarks + +### File and Folder Paths + +For information about the supported file and folder path formats (i.e. absolute, relative, UNC etc.) and examples of each, including how it is determined if a path points to a folder or a file, please see [File & Folder Paths][]. + +### File Path and Destination Path need escaping + +[File Path][FilePath Property] and [Destination Path][DestinationPath Property] require `\` characters to be escaped, otherwise each unescaped `\` will be reported as an `Invalid property value` message when trying to debug the flow. + +Escaping can be done in two ways: + +* Escaping the `\` character with another `\` character (e.g. `"C:\\Source\\OriginalFile.txt"`), or +* Prepending an `@` character before the start of the [File Path][FilePath Property] (e.g. `@"C:\Source\OriginalFile.txt"`) and [Destination Path][DestinationPath Property] (e.g. `@"C:\Destination"`). + +### File Attributes + +When moving a file from the [File Path][FilePath Property] to the new [Destination Path][DestinationPath Property], all of the file's attributes will also be moved. + +For information about the file attributes (i.e. ReadOnly, Hidden, Archive etc.), please see [File & Folder Attributes][]. + +[FilePath Property]: {{< ref "#file-path" >}} +[DestinationPath Property]: {{< ref "#destination-path" >}} +[Overwrite Property]: {{< ref "#overwrite" >}} + +[File Attributes]: {{< ref "#file-attributes" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[InvalidPathException]: {{< url path="Cortex.Reference.Exceptions.FilesAndFolders.InvalidPathException.MainDoc" >}} +[OperationFailedException]: {{< url path="Cortex.Reference.Exceptions.FilesAndFolders.OperationFailedException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[File & Folder Attributes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.Attributes.MainDoc" >}} +[File & Folder Paths]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.Paths.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/move-file/move-files-block.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/move-file/move-files-block.md new file mode 100644 index 000000000..b99f6d675 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/move-file/move-files-block.md @@ -0,0 +1,214 @@ +--- +title: "Move Files" +linkTitle: "Move Files" +description: "Moves files at the specified file paths to the given destination path." +--- + +{{< figure src="/blocks/Cortex_Blocks_FilesAndFolders_MoveFile_MoveFilesBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.FilesAndFolders.MoveFile.MoveFilesBlock)

+ +## Description + +Moves files at the specified [File Paths][FilePaths Property] to the given [Destination Path][DestinationPath Property], with an option to [Overwrite][Overwrite Property] the files if they already exist. + +## Examples + +### Move files to a folder keeping the same file names + +This example will move `["C:\Source\OriginalFile1.txt", "C:\Source\OriginalFile2.txt"]` to `"C:\Destination"`, with the same file names of `"OriginalFile1.txt"` and `"OriginalFile2.txt"`. + +In this example assume `"C:\Destination"` does not already contain a file named `"OriginalFile1.txt"` or a file named `"OriginalFile2.txt"`, so overwrite can be set to either `true` or `false` and it will still work. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [File Paths][FilePaths Property] | `($)FilePaths`, with value `[@"C:\Source\OriginalFile1.txt", @"C:\Source\OriginalFile2.txt"]` | `($)FilePaths` is a variable of type [IEnumerable][]<[String][]> | +| [Destination Path][DestinationPath Property] | `($)DestinationPath`, with value `@"C:\Destination"` | `($)DestinationPath` is a variable of type [String][] | +| [Overwrite][Overwrite Property] | `($)Overwrite`, with value `false` | `($)Overwrite` is a variable of type [Boolean][] | + +#### Result + +Moving `["C:\Source\OriginalFile1.txt", "C:\Source\OriginalFile2.txt"]` to `"C:\Destination"` that does not already contain files named `"OriginalFile1.txt"` and `"OriginalFile2.txt"` will: + +* Move `"C:\Source\OriginalFile1.txt"` to `"C:\Destination\OriginalFile1.txt"` with: + * The content left unchanged. + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [File attributes][] left unchanged. +* Move `"C:\Source\OriginalFile2.txt"` to `"C:\Destination\OriginalFile2.txt"` with: + * The content left unchanged. + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [File attributes][] left unchanged. + +*** + +### Move files to a folder overwriting any files that already exists with the same names + +This example will move `["C:\Source\FileAlreadyExists1.txt", "C:\Source\FileAlreadyExists2.txt"]` to `"C:\Destination"`, with the same file names of `"FileAlreadyExists1.txt"` and `"FileAlreadyExists2.txt"`. + +In this example assume `"C:\Destination"` already contains a file named `"FileAlreadyExists1.txt"` and a file named `"FileAlreadyExists2.txt"`, so overwrite must be set to `true` to ensure the content of the existing files can be overwritten. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [File Paths][FilePaths Property] | `($)FilePaths`, with value `[@"C:\Source\FileAlreadyExists1.txt", @"C:\Source\FileAlreadyExists2.txt"]` | `($)FilePaths` is a variable of type [IEnumerable][]<[String][]> | +| [Destination Path][DestinationPath Property] | `($)DestinationPath`, with value `@"C:\Destination"` | `($)DestinationPath` is a variable of type [String][] | +| [Overwrite][Overwrite Property] | `($)Overwrite`, with value `true` | `($)Overwrite` is a variable of type [Boolean][] | + +#### Result + +Moving `["C:\Source\FileAlreadyExists1.txt", "C:\Source\FileAlreadyExists2.txt"]` to `"C:\Destination"` and overwriting the existing files named `"FileAlreadyExists1.txt"` and `"FileAlreadyExists2.txt"` will: + +* Overwrite the existing file at `"C:\Destination\FileAlreadyExists1.txt"` with: + * The content copied from `"C:\Source\FileAlreadyExists1.txt"`. + * The `Date Created` copied from `"C:\Source\FileAlreadyExists1.txt"`. + * The `Date Accessed` copied from `"C:\Source\FileAlreadyExists1.txt"` + * The `Date Modified` copied from `"C:\Source\FileAlreadyExists1.txt"`. + * The [File Attributes][] copied from `"C:\Source\FileAlreadyExists1.txt"`. +* Overwrite the existing file at `"C:\Destination\FileAlreadyExists2.txt"` with: + * The content copied from `"C:\Source\FileAlreadyExists2.txt"`. + * The `Date Created` copied from `"C:\Source\FileAlreadyExists2.txt"`. + * The `Date Accessed` copied from `"C:\Source\FileAlreadyExists2.txt"`. + * The `Date Modified` copied from `"C:\Source\FileAlreadyExists2.txt"`. + * The [File Attributes][] copied from `"C:\Source\FileAlreadyExists2.txt"`. + +*** + +## Properties + +### File Paths + +The [File Paths][FilePaths Property] to move the files from. + +Each file path in [File Paths][FilePaths Property] is case-insensitive, cannot contain any wildcard characters, and any trailing spaces will be automatically removed. + +For information about the supported file path formats (i.e. absolute, relative, UNC etc.) and examples of each, please see [File & Folder Paths][]. + +| | | +|--------------------|---------------------------| +| Data Type | [IEnumerable][]<[String][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)FilePaths` with no value | + +### Destination Path + +The [Destination Path][DestinationPath Property] to move the files to. + +The [Destination Path][DestinationPath Property] is case-insensitive, cannot contain any wildcard characters, and any trailing spaces will be automatically removed. + +The [Destination Path][DestinationPath Property] must point to a folder, otherwise an [InvalidPathException][] will be thrown. + +The moved files will have the names specified in the [File Paths][FilePaths Property]. + +Any non-existing folders within the [Destination Path][DestinationPath Property] will be automatically created. + +For information about the supported file and folder path formats (i.e. absolute, relative, UNC etc.) and examples of each, including how it is determined if a path points to a folder or a file, please see [File & Folder Paths][]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | No value (defaults to `""`) | + +### Overwrite + +Option to [Overwrite][Overwrite Property] the files in the [Destination Path][DestinationPath Property] if they already exist. + +If any file exists, [Overwrite][Overwrite Property] must be set to `true`, otherwise an [OperationFailedException][] will be thrown. By default, this is set to `false` to avoid implicit and accidental overwriting of existing files. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `false` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [InvalidPathException][] | The [Destination Path][DestinationPath Property] does not point to a folder. | +| | The [Destination Path][DestinationPath Property] contains leading spaces. | +| | The [Destination Path][DestinationPath Property] contains only whitespace, or the NUL character (i.e. `\0`), or contains one or more invalid characters (i.e. `"`, `*`, `?`, `\|`, `<`, `>`, `:`, `\`, `/`) in any file or folder names. | +| | The [Destination Path][DestinationPath Property] (if it points to a file), or the [Destination Path][DestinationPath Property] (if it points to a folder) plus the file name, exceeds the system-defined maximum length (typically 32,767 characters). | +| [OperationFailedException][] | Any file path in [File Paths][FilePaths Property] is `null` or empty (i.e. `""`). | +| | Any file path in [File Paths][FilePaths Property] is duplicated. | +| | Any file path in [File Paths][FilePaths Property] does not exist. | +| | Any file path in [File Paths][FilePaths Property] points to a folder. | +| | Any file path in [File Paths][FilePaths Property] contains leading spaces. | +| | Any file path in [File Paths][FilePaths Property] contains only whitespace, or the NUL character (i.e. `\0`), or contains one or more invalid characters (i.e. `"`, `*`, `?`, `\|`, `<`, `>`, `:`, `\`, `/`) in any file or folder names. | +| | Any file path in [File Paths][FilePaths Property] exceeds the system-defined maximum length (typically 32,767 characters). | +| | Any file path in [File Paths][FilePaths Property] or [Destination Path][DestinationPath Property] is invalid (for example, it is on an unmapped drive). | +| | Any file path in [File Paths][FilePaths Property] exists in the specified [Destination Path][DestinationPath Property] and overwrite is `false`. | +| | Any file path in [File Paths][FilePaths Property] exists in the specified [Destination Path][DestinationPath Property] with the same name, is read-only and overwrite is `true`. | +| | The user the flow is executing as does not have the required permissions to move any file (e.g. not having read access to a file path in [File Paths][FilePaths Property] or write access to the [Destination Path][DestinationPath Property]). | +| | An unexpected error occurs when moving a file. | +| [PropertyEmptyException][] | Thrown when [File Paths][FilePaths Property] does not contain any items, or [Destination Path][DestinationPath Property] is empty (i.e. `""`). | +| [PropertyNullException][] | Thrown when [File Paths][FilePaths Property] or [Destination Path][DestinationPath Property] are `null`. | + +## Remarks + +### File and Folder Paths + +For information about the supported file and folder path formats (i.e. absolute, relative, UNC etc.) and examples of each, including how it is determined if a path points to a folder or a file, please see [File & Folder Paths][]. + +### File Paths and Destination Path need escaping + +Each file path in [File Paths][FilePaths Property] and [Destination Path][DestinationPath Property] require `\` characters to be escaped, otherwise each unescaped `\` will be reported as an `Invalid property value` message when trying to debug the flow. + +Escaping can be done in two ways: + +* Escaping the `\` character with another `\` character (e.g. `"C:\\Source\\OriginalFile.txt"`), or +* Prepending an `@` character before the start of the +file path (e.g. `@"C:\Source\OriginalFile.txt"`) and [Destination Path][DestinationPath Property] (e.g. `@"C:\Destination"`). + +### File Attributes + +When moving a file in the [File Paths][FilePaths Property] to the new [Destination Path][DestinationPath Property], all of the file's attributes will also be moved. + +For information about the file attributes (i.e. ReadOnly, Hidden, Archive etc.), please see [File & Folder Attributes][]. + +### Handling of Exceptions + +If an exception occurs when trying to move a file in the [File Paths][FilePaths Property], it will be recorded and the block will continue processing the remaining files. Once all files are processed, recorded exceptions will be thrown within an [OperationFailedException][]. + +[FilePaths Property]: {{< ref "#file-paths" >}} +[DestinationPath Property]: {{< ref "#destination-path" >}} +[Overwrite Property]: {{< ref "#overwrite" >}} + +[File Attributes]: {{< ref "#file-attributes" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[InvalidPathException]: {{< url path="Cortex.Reference.Exceptions.FilesAndFolders.InvalidPathException.MainDoc" >}} +[OperationFailedException]: {{< url path="Cortex.Reference.Exceptions.FilesAndFolders.OperationFailedException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[File & Folder Attributes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.Attributes.MainDoc" >}} +[File & Folder Paths]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.Paths.MainDoc" >}} + +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/move-folder/_index.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/move-folder/_index.md new file mode 100644 index 000000000..facdb6dda --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/move-folder/_index.md @@ -0,0 +1,5 @@ +--- +title: "Move Folder(s)" +linkTitle: "Move Folder(s)" +description: "Move a folder or folders." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/move-folder/move-folder-block.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/move-folder/move-folder-block.md new file mode 100644 index 000000000..b36340253 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/move-folder/move-folder-block.md @@ -0,0 +1,384 @@ +--- +title: "Move Folder" +linkTitle: "Move Folder" +description: "Moves a folder at the specified folder path to the given destination path." +--- + +{{< figure src="/blocks/Cortex_Blocks_FilesAndFolders_MoveFolder_MoveFolderBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.FilesAndFolders.MoveFolder.MoveFolderBlock)

+ +## Description + +Moves a folder at the specified [Folder Path][FolderPath Property] to the given [Destination Path][DestinationPath Property], with an option to move the folder and its content, or just its [Content Only][ContentOnly Property]. + +An option can also be specified to [Overwrite][Overwrite Property] anything being moved that already exists in the [Destination Path][DestinationPath Property]. + +## Examples + +### Move a folder and its content + +This example will move `"C:\Source\Folder"` and its content to `"C:\Destination"`. + +In this example assume: + +* `"C:\Source\Folder"` contains: + * An empty sub-folder named `"SubFolder"`. + * A file named `"File.txt"`. +* `"C:\Destination"` does not already contain a folder named `"Folder"`, so overwrite can be set to either `true` or `false` and it will still work. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Folder Path][FolderPath Property] | `($)FolderPath`, with value `@"C:\Source\Folder"` | `($)FolderPath` is a variable of type [String][] | +| [Destination Path][DestinationPath Property] | `($)DestinationPath`, with value `@"C:\Destination"` | `($)DestinationPath` is a variable of type [String][] | +| [Overwrite][Overwrite Property] | `($)Overwrite`, with value `false` | `($)Overwrite` is a variable of type [Boolean][] | +| [Content Only][ContentOnly Property] | `($)ContentOnly`, with value `false` | `($)ContentOnly` is a variable of type [Boolean][] | + +#### Result + +Moving `"C:\Source\Folder"` and its content to `"C:\Destination"` that does not already contain a folder named `"Folder"` will: + +* Move `"C:\Source\Folder"` to `"C:\Destination\Folder"` with: + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [Folder attributes][] left unchanged. +* Move `"C:\Source\Folder\SubFolder"` to `"C:\Destination\Folder\SubFolder"` with: + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [Folder attributes][] left unchanged. +* Move `"C:\Source\Folder\File.txt"` to `"C:\Destination\Folder\File.txt"` with: + * The content left unchanged. + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [File attributes][] left unchanged. + +*** + +### Move a folder and its content, overwriting any content that already exists + +This example will move `"C:\Source\Folder"` and its content to `"C:\Destination"`, overwriting any content that already exists. + +In this example assume: + +* `"C:\Source\Folder"` contains: + * An empty sub-folder named `"SubFolder"`. + * An empty sub-folder named `"SubFolderAlreadyExists"`. + * A file named `"File.txt"`. + * A file named `"FileAlreadyExists.txt"`. +* `"C:\Destination"` already contains a folder named `"Folder"`, which already contains: + * A folder named `"SubFolderAlreadyExists"`. + * A file named `"FileAlreadyExists.txt"`. + +Therefore, overwrite must be set to `true` to ensure the existing `"SubFolderAlreadyExists"` and `"FileAlreadyExists.txt"` can be overwritten. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Folder Path][FolderPath Property] | `($)FolderPath`, with value `@"C:\Source\Folder"` | `($)FolderPath` is a variable of type [String][] | +| [Destination Path][DestinationPath Property] | `($)DestinationPath`, with value `@"C:\Destination"` | `($)DestinationPath` is a variable of type [String][] | +| [Overwrite][Overwrite Property] | `($)Overwrite`, with value `true` | `($)Overwrite` is a variable of type [Boolean][] | +| [Content Only][ContentOnly Property] | `($)ContentOnly`, with value `false` | `($)ContentOnly` is a variable of type [Boolean][] | + +#### Result + +Moving `"C:\Source\Folder"` and its content to `"C:\Destination"` with the [Overwrite][Overwrite Property] option set to `true`, and where `"C:\Destination\Folder"`, `"C:\Destination\Folder\SubFolderAlreadyExists"` and `"C:\Destination\Folder\FileAlreadyExists.txt"` already exist will: + +* Overwrite the existing folder at `"C:\Destination\Folder"` with: + * The `Date Created` left unchanged. + * The `Date Accessed` set to the time the move occurred. + * The `Date Modified` set to the time the move occurred. + * The [Folder attributes][] left unchanged. +* Move `"C:\Source\Folder\SubFolder"` to `"C:\Destination\Folder\SubFolder"` with: + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [Folder attributes][] left unchanged. +* Overwrite the existing folder at `"C:\Destination\Folder\SubFolderAlreadyExists"` with: + * The content left unchanged. + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [Folder attributes][] left unchanged. +* Move `"C:\Source\Folder\File.txt"` to `"C:\Destination\Folder\File.txt"` with: + * The content left unchanged. + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [File attributes][] left unchanged. +* Overwrite the existing file at `"C:\Destination\Folder\FileAlreadyExists.txt"` with: + * The content copied from `"C:\Source\Folder\FileAlreadyExists.txt"`. + * The `Date Created` copied from `"C:\Source\Folder\FileAlreadyExists.txt"`. + * The `Date Accessed` copied from `"C:\Source\Folder\FileAlreadyExists.txt"`. + * The `Date Modified` copied from `"C:\Source\Folder\FileAlreadyExists.txt"`. + * The [File attributes][] copied from `"C:\Source\Folder\FileAlreadyExists.txt"`. + +*** + +### Move a folder's content only + +This example will move `"C:\Source\Folder"` content only to `"C:\Destination"`. + +In this example assume: + +* `"C:\Source\Folder"` contains: + * An empty sub-folder named `"SubFolder"`. + * A file named `"File.txt"`. +* `"C:\Destination"` does not already contain a folder named `"SubFolder"` or a file named `"File.txt"`, so overwrite can be set to either `true` or `false` and it will still work. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Folder Path][FolderPath Property] | `($)FolderPath`, with value `@"C:\Source\Folder"` | `($)FolderPath` is a variable of type [String][] | +| [Destination Path][DestinationPath Property] | `($)DestinationPath`, with value `@"C:\Destination"` | `($)DestinationPath` is a variable of type [String][] | +| [Overwrite][Overwrite Property] | `($)Overwrite`, with value `false` | `($)Overwrite` is a variable of type [Boolean][] | +| [Content Only][ContentOnly Property] | `($)ContentOnly`, with value `true` | `($)ContentOnly` is a variable of type [Boolean][] | + +#### Result + +Moving `"C:\Source\Folder"` content only to `"C:\Destination"` that does not already contain a folder named `"SubFolder"` or a file named `"File.txt"` will: + +* Move `"C:\Source\Folder\SubFolder"` to `"C:\Destination\SubFolder"` with: + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [Folder attributes][] left unchanged. +* Move `"C:\Source\Folder\File.txt"` to `"C:\Destination\File.txt"` with: + * The content left unchanged. + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [File attributes][] left unchanged. + +*** + +### Move a folder's content only, overwriting any content that already exists + +This example will move `"C:\Source\Folder"` content only to `"C:\Destination"`, overwriting any content that already exists. + +In this example assume: + +* `"C:\Source\Folder"` contains: + * An empty sub-folder named `"SubFolder"`. + * An empty sub-folder named `"SubFolderAlreadyExists"`. + * A file named `"File.txt"`. + * A file named `"FileAlreadyExists.txt"`. +* `"C:\Destination"` already contains: + * A folder named `"SubFolderAlreadyExists"`. + * A file named `"FileAlreadyExists.txt"`. + +Therefore, overwrite must be set to `true` to ensure the existing `"SubFolderAlreadyExists"` and `"FileAlreadyExists.txt"` can be overwritten. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Folder Path][FolderPath Property] | `($)FolderPath`, with value `@"C:\Source\Folder"` | `($)FolderPath` is a variable of type [String][] | +| [Destination Path][DestinationPath Property] | `($)DestinationPath`, with value `@"C:\Destination"` | `($)DestinationPath` is a variable of type [String][] | +| [Overwrite][Overwrite Property] | `($)Overwrite`, with value `true` | `($)Overwrite` is a variable of type [Boolean][] | +| [Content Only][ContentOnly Property] | `($)ContentOnly`, with value `true` | `($)ContentOnly` is a variable of type [Boolean][] | + +#### Result + +Moving `"C:\Source\Folder"` content only to `"C:\Destination"` with the [Overwrite][Overwrite Property] option set to `true`, and where `"C:\Destination\SubFolderAlreadyExists"` and `"C:\Destination\FileAlreadyExists.txt"` already exist will: + +* Move `"C:\Source\Folder\SubFolder"` to `"C:\Destination\SubFolder"` with: + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [Folder attributes][] left unchanged. +* Overwrite the existing folder at `"C:\Destination\SubFolderAlreadyExists"` with: + * The content left unchanged. + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [Folder attributes][] left unchanged. +* Move `"C:\Source\Folder\File.txt"` to `"C:\Destination\File.txt"` with: + * The content left unchanged. + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [File attributes][] left unchanged. +* Overwrite the existing file at `"C:\Destination\FileAlreadyExists.txt"` with: + * The content copied from `"C:\Source\Folder\FileAlreadyExists.txt"`. + * The `Date Created` copied from `"C:\Source\Folder\FileAlreadyExists.txt"`. + * The `Date Accessed` copied from `"C:\Source\Folder\FileAlreadyExists.txt"`. + * The `Date Modified` copied from `"C:\Source\Folder\FileAlreadyExists.txt"`. + * The [File attributes][] copied from `"C:\Source\Folder\FileAlreadyExists.txt"`. + +*** + +### Move a folder and its content to the same location but with a different name + +If it is required to move a folder and its content into the same folder it is currently located in, but with a different name, then it is not possible to do with this block; the [Rename Folder][] block must be used instead. + +*** + +### Move a folder and its content to a different location but with a different name + +If it is required to move a folder and its content into a different folder than the one it is currently located in, but with a different name, it is not possible to do with a single block; you must use a combination of this block and the [Rename Folder][] block. + +*** + +## Properties + +### Folder Path + +The [Folder Path][FolderPath Property] to move the folder and/or its content from. + +The [Folder Path][FolderPath Property] is case-insensitive, cannot contain any wildcard characters, and any trailing spaces will be automatically removed. + +For information about the supported folder path formats (i.e. absolute, relative, UNC etc.) and examples of each, please see [File & Folder Paths][]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)FolderPath` with no value | + +### Destination Path + +The [Destination Path][DestinationPath Property] to move the folder and/or its content to. + +The [Destination Path][DestinationPath Property] is case-insensitive, cannot contain any wildcard characters, and any trailing spaces will be automatically removed. + +The [Destination Path][DestinationPath Property] must point to a folder, otherwise an [InvalidPathException][] will be thrown. + +The moved folders and files will have the same names as the folders and files moved. + +Any non-existing folders within the [Destination Path][DestinationPath Property] will be automatically created. + +For information about the supported file and folder path formats (i.e. absolute, relative, UNC etc.) and examples of each, including how it is determined if a path points to a folder or a file, please see [File & Folder Paths][]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | No value (defaults to `""`) | + +### Overwrite + +Option to [Overwrite][Overwrite Property] the folder and/or contents being moved to in the [Destination Path][DestinationPath Property] if they already exist. + +If the folder and/or contents exists, [Overwrite][Overwrite Property] must be set to `true`, otherwise an [OperationFailedException][] will be thrown. By default, this is set to `false` to avoid implicit and accidental overwriting of existing folders and files. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `false` | + +### Content Only + +Option to specify whether to move the folder and its content or just the [Content Only][ContentOnly Property]. + +To move the folder and its content, [Content Only][ContentOnly Property] must be set to `false`; to move just the content, [Content Only][ContentOnly Property] must be set to `true`. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `false` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [InvalidPathException][] | The [Destination Path][DestinationPath Property] points to a file. | +| | The [Destination Path][DestinationPath Property] contains leading spaces. | +| | The [Destination Path][DestinationPath Property] contains only whitespace, or the NUL character (i.e. `\0`), or contains one or more invalid characters (i.e. `"`, `*`, `?`, `\|`, `<`, `>`, `:`, `\`, `/`) in any folder names. | +| | The [Destination Path][DestinationPath Property] exceeds the system-defined maximum length (typically 32,767 characters). | +| [OperationFailedException][] | The [Folder Path][FolderPath Property] does not exist. | +| | The [Folder Path][FolderPath Property] points to a file. | +| | The [Folder Path][FolderPath Property] contains leading spaces. | +| | The [Folder Path][FolderPath Property] contains only whitespace, or the NUL character (i.e. `\0`), or contains one or more invalid characters (i.e. `"`, `*`, `?`, `\|`, `<`, `>`, `:`, `\`, `/`) in any folder names. | +| | The [Folder Path][FolderPath Property] exceeds the system-defined maximum length (typically 32,767 characters). | +| | The [Folder Path][FolderPath Property] or [Destination Path][DestinationPath Property] is a win32 device path (i.e starts with a `"\\.\"`). | +| | The [Folder Path][FolderPath Property] or [Destination Path][DestinationPath Property] is invalid (for example, it is on an unmapped drive). | +| | The [Folder Path][FolderPath Property] and [Destination Path][DestinationPath Property] point to the same folder and [Content Only][ContentOnly Property] is `true`. | +| | The [Folder Path][FolderPath Property] is a child folder in the [Destination Path][DestinationPath Property] and [Content Only][ContentOnly Property] is `false`. | +| | Any file being moved already exists in the specified [Destination Path][DestinationPath Property] and overwrite is `false`. | +| | Any file being moved already exists in the specified [Destination Path][DestinationPath Property], is read-only and overwrite is `true`. | +| | The user the flow is executing as does not have the required permissions to move the folder or any of its content (e.g. not having read access to the [Folder Path][FolderPath Property] or its content, or write access to the [Destination Path][DestinationPath Property]). | +| | The operation is cyclic (e.g. moving a folder into one of its sub-folders). | +| | An unexpected error occurs when moving the folder or any of its content. | +| [PropertyEmptyException][] | Thrown when [Folder Path][FolderPath Property] or [Destination Path][DestinationPath Property] are empty (i.e. `""`). | +| [PropertyNullException][] | Thrown when [Folder Path][FolderPath Property] or [Destination Path][DestinationPath Property] are `null`. | + +## Remarks + +### Folder Paths + +For information about the supported folder path formats (i.e. absolute, relative, UNC etc.) and examples of each, including how it is determined if a path points to a folder or a file, please see [File & Folder Paths][]. + +### Folder Path and Destination Path need escaping + +[Folder Path][FolderPath Property] and [Destination Path][DestinationPath Property] require `\` characters to be escaped, otherwise each unescaped `\` will be reported as an `Invalid property value` message when trying to debug the flow. + +Escaping can be done in two ways: + +* Escaping the `\` character with another `\` character (e.g. `"C:\\Source\\"`), or +* Prepending an `@` character before the start of the [Folder Path][FolderPath Property] (e.g. `@"C:\Source"`) and [Destination Path][DestinationPath Property] (e.g. `@"C:\Destination"`). + +### Folder Attributes + +When moving the folder at the specified [Folder Path][FolderPath Property] or any folder under it to the new [Destination Path][DestinationPath Property], if the folder already exists in the destination its attributes remain unchanged. + +For information about the folder attributes (i.e. ReadOnly, Hidden, Archive etc.), please see [File & Folder Attributes][]. + +### File Attributes + +When moving a file under [Folder Path][FolderPath Property] to the new [Destination Path][DestinationPath Property], all of the file's attributes are also moved. + +For information about the file attributes (i.e. ReadOnly, Hidden, Archive etc.), please see [File & Folder Attributes][]. + +### Handling of Exceptions + +If an exception occurs when trying to move [Folder Path][FolderPath Property], an [OperationFailedException][] will be thrown. + +[FolderPath Property]: {{< ref "#folder-path" >}} +[DestinationPath Property]: {{< ref "#destination-path" >}} +[Overwrite Property]: {{< ref "#overwrite" >}} +[ContentOnly Property]: {{< ref "#content-only" >}} + +[Folder Attributes]: {{< ref "#folder-attributes" >}} +[File Attributes]: {{< ref "#file-attributes" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[InvalidPathException]: {{< url path="Cortex.Reference.Exceptions.FilesAndFolders.InvalidPathException.MainDoc" >}} +[OperationFailedException]: {{< url path="Cortex.Reference.Exceptions.FilesAndFolders.OperationFailedException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[File & Folder Attributes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.Attributes.MainDoc" >}} +[File & Folder Paths]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.Paths.MainDoc" >}} + +[Rename Folder]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.RenameFolder.RenameFolder.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/move-folder/move-folders-block.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/move-folder/move-folders-block.md new file mode 100644 index 000000000..da4312d0d --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/move-folder/move-folders-block.md @@ -0,0 +1,494 @@ +--- +title: "Move Folders" +linkTitle: "Move Folders" +description: "Moves folders at the specified folder paths to the given destination path." +--- + +{{< figure src="/blocks/Cortex_Blocks_FilesAndFolders_MoveFolder_MoveFoldersBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.FilesAndFolders.MoveFolder.MoveFoldersBlock)

+ +## Description + +Moves folders at the specified [Folder Paths][FolderPaths Property] to the given [Destination Path][DestinationPath Property], with an option to move the folders and their content, or just their [Content Only][ContentOnly Property]. + +An option can also be specified to [Overwrite][Overwrite Property] anything being moved that already exists in the [Destination Path][DestinationPath Property]. + +## Examples + +### Move folders and their content + +This example will move `["C:\Source\Folder1", "C:\Source\Folder2"]` and their content to `"C:\Destination"`. + +In this example assume: + +* `"C:\Source\Folder1"` contains: + * An empty sub-folder named `"SubFolder1"`. + * A file named `"File1.txt"`. +* `"C:\Source\Folder2"` contains: + * An empty sub-folder named `"SubFolder2"`. + * A file named `"File2.txt"`. +* `"C:\Destination"` does not already contain a folder named `"Folder1"` or `"Folder2"`, so overwrite can be set to either `true` or `false` and it will still work. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Folder Paths][FolderPaths Property] | `($)FolderPaths`, with value `[@"C:\Source\Folder1", @"C:\Source\Folder2"]` | `($)FolderPaths` is a variable of type [IEnumerable][]<[String][]> | +| [Destination Path][DestinationPath Property] | `($)DestinationPath`, with value `@"C:\Destination"` | `($)DestinationPath` is a variable of type [String][] | +| [Overwrite][Overwrite Property] | `($)Overwrite`, with value `false` | `($)Overwrite` is a variable of type [Boolean][] | +| [Content Only][ContentOnly Property] | `($)ContentOnly`, with value `false` | `($)ContentOnly` is a variable of type [Boolean][] | + +#### Result + +Moving `["C:\Source\Folder1", "C:\Source\Folder2"]` and their content to `"C:\Destination"` that does not already contain folders named `"Folder1"` and `"Folder2"` will: + +* Move `"C:\Source\Folder1"` to `"C:\Destination\Folder1"` with: + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [Folder attributes][] left unchanged. +* Move `"C:\Source\Folder1\SubFolder1"` to `"C:\Destination\Folder1\SubFolder1"` with: + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [Folder attributes][] left unchanged. +* Move `"C:\Source\Folder1\File1.txt"` to `"C:\Destination\Folder1\File1.txt"` with: + * The content left unchanged. + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [File attributes][] left unchanged. +* Move `"C:\Source\Folder2"` to `"C:\Destination\Folder2"` with: + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [Folder attributes][] left unchanged. +* Move `"C:\Source\Folder2\SubFolder2"` to `"C:\Destination\Folder2\SubFolder2"` with: + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [Folder attributes][] left unchanged. +* Move `"C:\Source\Folder2\File2.txt"` to `"C:\Destination\Folder2\File2.txt"` with: + * The content left unchanged. + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [File attributes][] left unchanged. + +*** + +### Move folders and their content, overwriting any content that already exists + +This example will move `["C:\Source\Folder1", "C:\Source\Folder2"]` and their content to `"C:\Destination"`, overwriting any content that already exists. + +In this example assume: + +* `"C:\Source\Folder1"` contains: + * An empty sub-folder named `"SubFolder1"`. + * An empty sub-folder named `"SubFolderAlreadyExists1"`. + * A file named `"File1.txt"`. + * A file named `"FileAlreadyExists1.txt"`. +* `"C:\Source\Folder2"` contains: + * An empty sub-folder named `"SubFolder2"`. + * An empty sub-folder named `"SubFolderAlreadyExists2"`. + * A file named `"File2.txt"`. + * A file named `"FileAlreadyExists2.txt"`. +* `"C:\Destination"` already contains: + * A folder named `"Folder1"`, which already contains: + * A folder named `"SubFolderAlreadyExists1"`. + * A file named `"FileAlreadyExists1.txt"`. + * A folder named `"Folder2"`, which already contains: + * A folder named `"SubFolderAlreadyExists2"`. + * A file named `"FileAlreadyExists2.txt"`. + +Therefore, overwrite must be set to `true` to ensure the existing folders and files can be overwritten. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Folder Paths][FolderPaths Property] | `($)FolderPaths`, with value `[@"C:\Source\Folder1", @"C:\Source\Folder2"]` | `($)FolderPaths` is a variable of type [IEnumerable][]<[String][]> | +| [Destination Path][DestinationPath Property] | `($)DestinationPath`, with value `@"C:\Destination"` | `($)DestinationPath` is a variable of type [String][] | +| [Overwrite][Overwrite Property] | `($)Overwrite`, with value `true` | `($)Overwrite` is a variable of type [Boolean][] | +| [Content Only][ContentOnly Property] | `($)ContentOnly`, with value `false` | `($)ContentOnly` is a variable of type [Boolean][] | + +#### Result + +Moving `["C:\Source\Folder1", "C:\Source\Folder2"]` and their content to `"C:\Destination"` with the [Overwrite][Overwrite Property] option set to `true`, and where `"C:\Destination\Folder1"`, `"C:\Destination\Folder1\SubFolderAlreadyExists1"`, `"C:\Destination\Folder1\FileAlreadyExists1.txt"`, `"C:\Destination\Folder2"`, `"C:\Destination\Folder2\SubFolderAlreadyExists2"` and `"C:\Destination\Folder2\FileAlreadyExists2.txt"` already exist will: + +* Overwrite the existing folder at `"C:\Destination\Folder1"` with: + * The `Date Created` left unchanged. + * The `Date Accessed` set to the time the move occurred. + * The `Date Modified` set to the time the move occurred. + * The [Folder attributes][] left unchanged. +* Move `"C:\Source\Folder1\SubFolder1"` to `"C:\Destination\Folder1\SubFolder1"` with: + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [Folder attributes][] left unchanged. +* Overwrite the existing folder at `"C:\Destination\Folder1\SubFolderAlreadyExists1"` with: + * The content left unchanged. + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [Folder attributes][] left unchanged. +* Move `"C:\Source\Folder1\File1.txt"` to `"C:\Destination\Folder1\File1.txt"` with: + * The content left unchanged. + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [File attributes][] left unchanged. +* Overwrite the existing file at `"C:\Destination\Folder1\FileAlreadyExists1.txt"` with: + * The content copied from `"C:\Source\Folder1\FileAlreadyExists1.txt"`. + * The `Date Created` copied from `"C:\Source\Folder1\FileAlreadyExists1.txt"`. + * The `Date Accessed` copied from `"C:\Source\Folder1\FileAlreadyExists1.txt"`. + * The `Date Modified` copied from `"C:\Source\Folder1\FileAlreadyExists1.txt"`. + * The [File attributes][] copied from `"C:\Source\Folder1\FileAlreadyExists1.txt"`. +* Overwrite the existing folder at `"C:\Destination\Folder2"` with: + * The `Date Created` left unchanged. + * The `Date Accessed` set to the time the move occurred. + * The `Date Modified` set to the time the move occurred. + * The [Folder attributes][] left unchanged. +* Move `"C:\Source\Folder2\SubFolder2"` to `"C:\Destination\Folder2\SubFolder2"` with: + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [Folder attributes][] left unchanged. +* Overwrite the existing folder at `"C:\Destination\Folder2\SubFolderAlreadyExists2"` with: + * The content left unchanged. + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [Folder attributes][] left unchanged. +* Move `"C:\Source\Folder2\File2.txt"` to `"C:\Destination\Folder2\File2.txt"` with: + * The content left unchanged. + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [File attributes][] left unchanged. +* Overwrite the existing file at `"C:\Destination\Folder2\FileAlreadyExists2.txt"` with: + * The content copied from `"C:\Source\Folder2\FileAlreadyExists2.txt"`. + * The `Date Created` copied from `"C:\Source\Folder2\FileAlreadyExists2.txt"`. + * The `Date Accessed` copied from `"C:\Source\Folder2\FileAlreadyExists2.txt"`. + * The `Date Modified` copied from `"C:\Source\Folder2\FileAlreadyExists2.txt"`. + * The [File attributes][] copied from `"C:\Source\Folder2\FileAlreadyExists2.txt"`. + +*** + +### Move the folders' content only + +This example will move `["C:\Source\Folder1", "C:\Source\Folder2"]` content only to `"C:\Destination"`. + +In this example assume: + +* `"C:\Source\Folder1"` contains: + * An empty sub-folder named `"SubFolder1"`. + * A file named `"File1.txt"`. +* `"C:\Source\Folder2"` contains: + * An empty sub-folder named `"SubFolder2"`. + * A file named `"File2.txt"`. +* `"C:\Destination"` does not already contain a folder named `"SubFolder1"` or `"SubFolder2"` or a file named `"File1.txt"` or `"File2.txt"`, so overwrite can be set to either `true` or `false` and it will still work. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Folder Paths][FolderPaths Property] | `($)FolderPaths`, with value `[@"C:\Source\Folder1", @"C:\Source\Folder2"]` | `($)FolderPaths` is a variable of type [IEnumerable][]<[String][]> | +| [Destination Path][DestinationPath Property] | `($)DestinationPath`, with value `@"C:\Destination"` | `($)DestinationPath` is a variable of type [String][] | +| [Overwrite][Overwrite Property] | `($)Overwrite`, with value `false` | `($)Overwrite` is a variable of type [Boolean][] | +| [Content Only][ContentOnly Property] | `($)ContentOnly`, with value `true` | `($)ContentOnly` is a variable of type [Boolean][] | + +#### Result + +Moving `["C:\Source\Folder1", "C:\Source\Folder2"]` content only to `"C:\Destination"` that does not already contain a folder named `"SubFolder1"` or `"SubFolder2"` or a file named `"File1.txt"` or `"File2.txt"` will: + +* Move `"C:\Source\Folder1\SubFolder1"` to `"C:\Destination\SubFolder1"` with: + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [Folder attributes][] left unchanged. +* Move `"C:\Source\Folder1\File1.txt"` to `"C:\Destination\File1.txt"` with: + * The content left unchanged. + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [File attributes][] left unchanged. +* Move `"C:\Source\Folder2\SubFolder2"` to `"C:\Destination\SubFolder2"` with: + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [Folder attributes][] left unchanged. +* Move `"C:\Source\Folder2\File2.txt"` to `"C:\Destination\File2.txt"` with: + * The content left unchanged. + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [File attributes][] left unchanged. + +*** + +### Move folders' content only, overwriting any content that already exists + +This example will move `["C:\Source\Folder1", "C:\Source\Folder2"]` content only to `"C:\Destination"`, overwriting any content that already exists. + +In this example assume: + +* `"C:\Source\Folder1"` contains: + * An empty sub-folder named `"SubFolder1"`. + * An empty sub-folder named `"SubFolderAlreadyExists1"`. + * A file named `"File1.txt"`. + * A file named `"FileAlreadyExists1.txt"`. +* `"C:\Source\Folder2"` contains: + * An empty sub-folder named `"SubFolder2"`. + * An empty sub-folder named `"SubFolderAlreadyExists2"`. + * A file named `"File2.txt"`. + * A file named `"FileAlreadyExists2.txt"`. +* `"C:\Destination"` already contains: + * A folder named `"SubFolderAlreadyExists1"`. + * A folder named `"SubFolderAlreadyExists2"`. + * A file named `"FileAlreadyExists1.txt"`. + * A file named `"FileAlreadyExists2.txt"`. + +Therefore, overwrite must be set to `true` to ensure the existing folders and files can be overwritten. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Folder Paths][FolderPaths Property] | `($)FolderPaths`, with value `[@"C:\Source\Folder1", @"C:\Source\Folder2"]` | `($)FolderPaths` is a variable of type [IEnumerable][]<[String][]> | +| [Destination Path][DestinationPath Property] | `($)DestinationPath`, with value `@"C:\Destination"` | `($)DestinationPath` is a variable of type [String][] | +| [Overwrite][Overwrite Property] | `($)Overwrite`, with value `true` | `($)Overwrite` is a variable of type [Boolean][] | +| [Content Only][ContentOnly Property] | `($)ContentOnly`, with value `true` | `($)ContentOnly` is a variable of type [Boolean][] | + +#### Result + +Moving `["C:\Source\Folder1", "C:\Source\Folder2"]` content only to `"C:\Destination"` with the [Overwrite][Overwrite Property] option set to `true`, and where `"C:\Destination\SubFolderAlreadyExists1"`, `"C:\Destination\SubFolderAlreadyExists2"`, `"C:\Destination\FileAlreadyExists1.txt"` and `"C:\Destination\FileAlreadyExists2.txt"` already exist will: + +* Move `"C:\Source\Folder1\SubFolder1"` to `"C:\Destination\SubFolder1"` with: + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [Folder attributes][] left unchanged. +* Overwrite the existing folder at `"C:\Destination\SubFolderAlreadyExists1"` with: + * The content left unchanged. + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [Folder attributes][] left unchanged. +* Move `"C:\Source\Folder1\File1.txt"` to `"C:\Destination\File1.txt"` with: + * The content copied left unchanged. + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [File attributes][] left unchanged. +* Overwrite the existing file at `"C:\Destination\FileAlreadyExists1.txt"` with: + * The content copied from `"C:\Source\Folder1\FileAlreadyExists1.txt"`. + * The `Date Created` copied from `"C:\Source\Folder1\FileAlreadyExists1.txt"`. + * The `Date Accessed` copied from `"C:\Source\Folder1\FileAlreadyExists1.txt"`. + * The `Date Modified` copied from `"C:\Source\Folder1\FileAlreadyExists1.txt"`. + * The [File attributes][] copied from `"C:\Source\Folder1\FileAlreadyExists1.txt"`. +* Move `"C:\Source\Folder2\SubFolder2"` to `"C:\Destination\SubFolder2"` with: + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [Folder attributes][] left unchanged. +* Overwrite the existing folder at `"C:\Destination\SubFolderAlreadyExists2"` with: + * The content left unchanged. + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [Folder attributes][] left unchanged. +* Move `"C:\Source\Folder2\File2.txt"` to `"C:\Destination\File2.txt"` with: + * The content copied left unchanged. + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [File attributes][] left unchanged. +* Overwrite the existing file at `"C:\Destination\FileAlreadyExists2.txt"` with: + * The content copied from `"C:\Source\Folder2\FileAlreadyExists2.txt"`. + * The `Date Created` copied from `"C:\Source\Folder2\FileAlreadyExists2.txt"`. + * The `Date Accessed` copied from `"C:\Source\Folder2\FileAlreadyExists2.txt"`. + * The `Date Modified` copied from `"C:\Source\Folder2\FileAlreadyExists2.txt"`. + * The [File attributes][] copied from `"C:\Source\Folder2\FileAlreadyExists2.txt"`. + +*** + +### Move folders and their content to the same location but with a different name + +If it is required to move folders and their content into the same folder they are currently located in, but with a different name, then it is not possible to do with this block; the [Rename Folder][] block must be used instead. + +*** + +### Move folders and their content to a different location but with a different name + +If it is required to move folders and their content into a different folder than the one they are currently located in, but with a different name, it is not possible to do with a single block; you must use a combination of this block and the [Rename Folder][] block. + +*** + +## Properties + +### Folder Paths + +The [Folder Paths][FolderPaths Property] to move the folders and/or their content from. + +Each folder path in [Folder Paths][FolderPaths Property] is case-insensitive, cannot contain any wildcard characters, and any trailing spaces will be automatically removed. + +For information about the supported folder path formats (i.e. absolute, relative, UNC etc.) and examples of each, please see [File & Folder Paths][]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)FolderPaths` with no value | + +### Destination Path + +The [Destination Path][DestinationPath Property] to move the folders and/or their content to. + +The [Destination Path][DestinationPath Property] is case-insensitive, cannot contain any wildcard characters, and any trailing spaces will be automatically removed. + +The [Destination Path][DestinationPath Property] must point to a folder, otherwise an [InvalidPathException][] will be thrown. + +The moved folders and files will have the same names as the folders and files copied. + +Any non-existing folders within the [Destination Path][DestinationPath Property] will be automatically created. + +For information about the supported file and folder path formats (i.e. absolute, relative, UNC etc.) and examples of each, including how it is determined if a path points to a folder or a file, please see [File & Folder Paths][]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | No value (defaults to `""`) | + +### Overwrite + +Option to [Overwrite][Overwrite Property] the folders and/or contents being moved to in the [Destination Path][DestinationPath Property] if they already exist. + +If any of the folders and/or contents exists, [Overwrite][Overwrite Property] must be set to `true`, otherwise an [OperationFailedException][] will be thrown. By default, this is set to `false` to avoid implicit and accidental overwriting of existing folders and files. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `false` | + +### Content Only + +Option to specify whether to move the folders and their content or just the [Content Only][ContentOnly Property]. + +To move the folders and their content, [Content Only][ContentOnly Property] must be set to `false`; to move just the content, [Content Only][ContentOnly Property] must be set to `true`. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `false` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [InvalidPathException][] | The [Destination Path][DestinationPath Property] points to a file. | +| | The [Destination Path][DestinationPath Property] contains leading spaces. | +| | The [Destination Path][DestinationPath Property] contains only whitespace, or the NUL character (i.e. `\0`), or contains one or more invalid characters (i.e. `"`, `*`, `?`, `\|`, `<`, `>`, `:`, `\`, `/`) in any folder names. | +| | The [Destination Path][DestinationPath Property] exceeds the system-defined maximum length (typically 32,767 characters). | +| [OperationFailedException][] | Any folder path in [Folder Paths][FolderPaths Property] is `null` or empty (i.e. `""`). | +| | Any folder path in [Folder Paths][FolderPaths Property] is duplicated. | +| | Any folder path in [Folder Paths][FolderPaths Property] does not exist. | +| | Any folder path in [Folder Paths][FolderPaths Property] points to a file. | +| | Any folder path in [Folder Paths][FolderPaths Property] contains leading spaces. | +| | Any folder path in [Folder Paths][FolderPaths Property] contains only whitespace, or the NUL character (i.e. `\0`), or contains one or more invalid characters (i.e. `"`, `*`, `?`, `\|`, `<`, `>`, `:`, `\`, `/`) in any folder names. | +| | Any folder path in [Folder Paths][FolderPaths Property] exceeds the system-defined maximum length (typically 32,767 characters). | +| | Any folder path in [Folder Paths][FolderPaths Property] or [Destination Path][DestinationPath Property] is a win32 device path (i.e starts with a `"\\.\"`). | +| | Any folder path in [Folder Paths][FolderPaths Property] or [Destination Path][DestinationPath Property] is invalid (for example, it is on an unmapped drive). | +| | Any folder path in [Folder Paths][FolderPaths Property] and [Destination Path][DestinationPath Property] point to the same folder and [Content Only][ContentOnly Property] is `true`. | +| | Any folder path in [Folder Paths][FolderPaths Property] is a child folder in the [Destination Path][DestinationPath Property] and [Content Only][ContentOnly Property] is `false`. | +| | Any file being moved already exists in the specified [Destination Path][DestinationPath Property] and overwrite is `false`. | +| | Any file being moved already exists in the specified [Destination Path][DestinationPath Property], is read-only and overwrite is `true`. | +| | The user the flow is executing as does not have the required permissions to move the folder or any of its content (e.g. not having read access to any of the folders in [Folder Paths][FolderPaths Property] or its content, or write access to the [Destination Path][DestinationPath Property]). | +| | The operation is cyclic (e.g. moving a folder into one of its sub-folders). | +| | An unexpected error occurs when moving a folder or any of its content. | +| [PropertyEmptyException][] | Thrown when [Folder Paths][FolderPaths Property] does not contain any items, or [Destination Path][DestinationPath Property] are empty (i.e. `""`). | +| [PropertyNullException][] | Thrown when [Folder Paths][FolderPaths Property] or [Destination Path][DestinationPath Property] are `null`. | + +## Remarks + +### Folder Paths + +For information about the supported folder path formats (i.e. absolute, relative, UNC etc.) and examples of each, including how it is determined if a path points to a folder or a file, please see [File & Folder Paths][]. + +### Folder Path and Destination Path need escaping + +Each folder paths in [Folder Paths][FolderPaths Property] and [Destination Path][DestinationPath Property] require `\` characters to be escaped, otherwise each unescaped `\` will be reported as an `Invalid property value` message when trying to debug the flow. + +Escaping can be done in two ways: + +* Escaping the `\` character with another `\` character (e.g. `"C:\\Source\\"`), or +* Prepending an `@` character before the start of the folder path (e.g. `@"C:\Source"`) and [Destination Path][DestinationPath Property] (e.g. `@"C:\Destination"`). + +### Folder Attributes + +When moving the folders at the specified [Folder Paths][FolderPaths Property] or any folder under them to the new [Destination Path][DestinationPath Property], if the folder already exists in the destination its attributes remain unchanged. + +For information about the folder attributes (i.e. ReadOnly, Hidden, Archive etc.), please see [File & Folder Attributes][]. + +### File Attributes + +When moving a file under any of the [Folder Paths][FolderPaths Property] to the new [Destination Path][DestinationPath Property], all of the file's attributes are also moved. + +For information about the file attributes (i.e. ReadOnly, Hidden, Archive etc.), please see [File & Folder Attributes][]. + +### Conflicting Content + +If two or more paths in the specified [Folder Paths][FolderPaths Property] contain content (folders or files) with the same name, and [Overwrite][Overwrite Property] and [Content Only][ContentOnly Property] are `true`: + +* The attributes of the folder/file in the [Destination Path][DestinationPath Property] will be that of the first one moved. +* For files, the content of the file in the [Destination Path][DestinationPath Property] will be that of the last one moved. + +### Handling of Exceptions + +If an exception occurs when trying to move a folder in [Folder Paths][FolderPaths Property], it will be recorded and the block will continue processing the remaining folders. Once all folders are processed, recorded exceptions will be thrown within an [OperationFailedException][]. + +[FolderPaths Property]: {{< ref "#folder-paths" >}} +[DestinationPath Property]: {{< ref "#destination-path" >}} +[Overwrite Property]: {{< ref "#overwrite" >}} +[ContentOnly Property]: {{< ref "#content-only" >}} + +[Folder Attributes]: {{< ref "#folder-attributes" >}} +[File Attributes]: {{< ref "#file-attributes" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[InvalidPathException]: {{< url path="Cortex.Reference.Exceptions.FilesAndFolders.InvalidPathException.MainDoc" >}} +[OperationFailedException]: {{< url path="Cortex.Reference.Exceptions.FilesAndFolders.OperationFailedException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[File & Folder Attributes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.Attributes.MainDoc" >}} +[File & Folder Paths]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.Paths.MainDoc" >}} + +[Rename Folder]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.RenameFolder.RenameFolder.MainDoc" >}} + +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/read-file/_index.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/read-file/_index.md new file mode 100644 index 000000000..172a52744 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/read-file/_index.md @@ -0,0 +1,5 @@ +--- +title: "Read File" +linkTitle: "Read File" +description: "Read the content of a file." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/read-file/read-all-lines-block.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/read-file/read-all-lines-block.md new file mode 100644 index 000000000..5b4b345a7 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/read-file/read-all-lines-block.md @@ -0,0 +1,178 @@ +--- +title: "Read All Lines" +linkTitle: "Read All Lines" +description: "Reads all lines from a file at the specified file path." +--- + +{{< figure src="/blocks/Cortex_Blocks_FilesAndFolders_ReadFile_ReadAllLinesBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.FilesAndFolders.ReadFile.ReadAllLinesBlock)

+ +## Description + +Reads all [Lines][Lines Property] from a file at the specified [File Path][FilePath Property], with an option to explicitly specify the [Encoding][Encoding Property] of the file if needed. + +## Examples + +### Read all lines + +This example will read all lines from `"C:\Source\File.txt"`, automatically detecting the encoding. + +In this example assume `"C:\Source\File.txt"` is a UTF-8 encoded file containing 10 lines: + +```plaintext +This is Line 1 +This is Line 2 +This is Line 3 +This is Line 4 +This is Line 5 +This is Line 6 +This is Line 7 +This is Line 8 +This is Line 9 +This is Line 10 +``` + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [File Path][FilePath Property] | `($)FilePath`, with value `@"C:\Source\File.txt"` | `($)FilePath` is a variable of type [String][] | +| [Encoding][Encoding Property] | `($)Encoding`, with value `null` | `($)Encoding` is a variable of type [Encoding][] | +| [Lines][Lines Property] | `($)Lines`, with no value | `($)Lines` is a variable that will be set to an [IList][]<[String][]> | + +#### Result + +Reading all lines from `"C:\Source\File.txt"` results in the variable `($)Lines` being updated to the following: + +```json +[ + "This is Line 1", + "This is Line 2", + "This is Line 3", + "This is Line 4", + "This is Line 5", + "This is Line 6", + "This is Line 7", + "This is Line 8", + "This is Line 9", + "This is Line 10" +] +``` + +*** + +## Properties + +### File Path + +The [File Path][FilePath Property] to read all lines of the file from. + +The [File Path][FilePath Property] is case-insensitive, cannot contain any wildcard characters, and any trailing spaces will be automatically removed. + +For information about the supported file path formats (i.e. absolute, relative, UNC etc.) and examples of each, please see [File & Folder Paths][]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)FilePath` with no value | + +### Encoding + +Option to specify the [Encoding][Encoding Property] that should be used to read the file. + +Most of the time [Encoding][Encoding Property] can be left as `null`; allowing the block to automatically attempt to detect the encoding of the file based on the presence of byte order marks. However, if it is found that the returned [Lines][Lines Property] are not in the correct format because the block was unable to detect the encoding of the file, it is possible to specify the [Encoding][Encoding Property] explicitly using this property. + +For information about encoding, examples of available encodings and using them, please see [Encoding][Working with Text - Encoding]. + +| | | +|--------------------|---------------------------| +| Data Type | [Encoding][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### Lines + +All [Lines][Lines Property] that were read from the file. + +A line is defined as a sequence of characters followed by a carriage return (i.e. `\r`), a line feed (i.e. `\n`), or a carriage return immediately followed by a line feed. The resulting [Lines][Lines Property] do not contain the terminating carriage returns and/or line feeds. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[String][]> | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Lines` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [InvalidPropertyValueException][] | Thrown when [Encoding][Encoding Property] is invalid (e.g. `Encoding.GetEncoding(-1)`). See [Value Is Invalid][]. | +| [OperationFailedException][] | The [File Path][FilePath Property] does not exist. | +| | The [File Path][FilePath Property] points to a folder. | +| | The [File Path][FilePath Property] contains leading spaces. | +| | The [File Path][FilePath Property] contains only whitespace, or the NUL character (i.e. `\0`), or contains one or more invalid characters (i.e. `"`, `*`, `?`, `\|`, `<`, `>`, `:`, `\`, `/`) in any file or folder names. | +| | The [File Path][FilePath Property] exceeds the system-defined maximum length (typically 32,767 characters). | +| | The [File Path][FilePath Property] is invalid (for example, it is on an unmapped drive). | +| | The user the flow is executing as does not have the required permissions to read the file. | +| | An unexpected error occurs when reading the file. | +| [PropertyEmptyException][] | Thrown when [File Path][FilePath Property] is empty (i.e. `""`). | +| [PropertyNullException][] | Thrown when [File Path][FilePath Property] is `null`. | + +## Remarks + +### File Paths + +For information about the supported file path formats (i.e. absolute, relative, UNC etc.) and examples of each, including how it is determined if a path points to a folder or a file, please see [File & Folder Paths][]. + +### File Path needs escaping + +[File Path][FilePath Property] requires `\` characters to be escaped, otherwise each unescaped `\` will be reported as an `Invalid property value` message when trying to debug the flow. + +Escaping can be done in two ways: + +* Escaping the `\` character with another `\` character (e.g. `"C:\\Source\\File.txt"`), or +* Prepending an `@` character before the start of the [File Path][FilePath Property] (e.g. `@"C:\Source\File.txt"`). + +### Encoding of text + +For information about encoding of text, examples of available encodings and using them, please see [Encoding][Working with Text - Encoding]. + +[FilePath Property]: {{< ref "#file-path" >}} +[Encoding Property]: {{< ref "#encoding" >}} +[Lines Property]: {{< ref "#lines" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Working with Text - Encoding]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Encoding.MainDoc" >}} + +[InvalidPropertyValueException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.MainDoc" >}} +[Value Is Invalid]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.ValueIsInvalid" >}} + +[OperationFailedException]: {{< url path="Cortex.Reference.Exceptions.FilesAndFolders.OperationFailedException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[File & Folder Paths]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.Paths.MainDoc" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Encoding]: {{< url path="Cortex.Reference.DataTypes.Text.Encoding.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/read-file/read-all-text-block.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/read-file/read-all-text-block.md new file mode 100644 index 000000000..60f4e5c2c --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/read-file/read-all-text-block.md @@ -0,0 +1,173 @@ +--- +title: "Read All Text" +linkTitle: "Read All Text" +description: "Reads all text from a file at the specified file path." +--- + +{{< figure src="/blocks/Cortex_Blocks_FilesAndFolders_ReadFile_ReadAllTextBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.FilesAndFolders.ReadFile.ReadAllTextBlock)

+ +## Description + +Reads all [Text][Text Property] from a file at the specified [File Path][FilePath Property], with an option to explicitly specify the [Encoding][Encoding Property] of the file if needed. + +## Examples + +### Read all text + +This example will read all text from `"C:\Source\File.txt"`, automatically detecting the encoding. + +In this example assume `"C:\Source\File.txt"` is a UTF-8 encoded file containing the following text: + +```plaintext +This is Line 1 +This is Line 2 +This is Line 3 +This is Line 4 +This is Line 5 +This is Line 6 +This is Line 7 +This is Line 8 +This is Line 9 +This is Line 10 +``` + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [File Path][FilePath Property] | `($)FilePath`, with value `@"C:\Source\File.txt"` | `($)FilePath` is a variable of type [String][] | +| [Encoding][Encoding Property] | `($)Encoding`, with value `null` | `($)Encoding` is a variable of type [Encoding][] | +| [Text][Text Property] | `($)Text`, with no value | `($)Text` is a variable that will be set to a [String][] | + +#### Result + +Reading all text from `"C:\Source\File.txt"` results in the variable `($)Text` being updated to the following: + +```json +"This is Line 1 +This is Line 2 +This is Line 3 +This is Line 4 +This is Line 5 +This is Line 6 +This is Line 7 +This is Line 8 +This is Line 9 +This is Line 10" +``` + +*** + +## Properties + +### File Path + +The [File Path][FilePath Property] to read all text of the file from. + +The [File Path][FilePath Property] is case-insensitive, cannot contain any wildcard characters, and any trailing spaces will be automatically removed. + +For information about the supported file path formats (i.e. absolute, relative, UNC etc.) and examples of each, please see [File & Folder Paths][]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)FilePath` with no value | + +### Encoding + +Option to specify the [Encoding][Encoding Property] that should be used to read the file. + +Most of the time [Encoding][Encoding Property] can be left as `null`; allowing the block to automatically attempt to detect the encoding of the file based on the presence of byte order marks. However, if it is found that the returned [Text][Text Property] are not in the correct format because the block was unable to detect the encoding of the file, it is possible to specify the [Encoding][Encoding Property] explicitly using this property. + +For information about encoding, examples of available encodings and using them, please see [Encoding][Working with Text - Encoding]. + +| | | +|--------------------|---------------------------| +| Data Type | [Encoding][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### Text + +All [Text][Text Property] that was read from the file. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [InvalidPropertyValueException][] | Thrown when [Encoding][Encoding Property] is invalid (e.g. `Encoding.GetEncoding(-1)`). See [Value Is Invalid][]. | +| [OperationFailedException][] | The [File Path][FilePath Property] does not exist. | +| | The [File Path][FilePath Property] points to a folder. | +| | The [File Path][FilePath Property] contains leading spaces. | +| | The [File Path][FilePath Property] contains only whitespace, or the NUL character (i.e. `\0`), or contains one or more invalid characters (i.e. `"`, `*`, `?`, `\|`, `<`, `>`, `:`, `\`, `/`) in any file or folder names. | +| | The [File Path][FilePath Property] exceeds the system-defined maximum length (typically 32,767 characters). | +| | The [File Path][FilePath Property] is invalid (for example, it is on an unmapped drive). | +| | The user the flow is executing as does not have the required permissions to read the file. | +| | An unexpected error occurs when reading the file. | +| [PropertyEmptyException][] | Thrown when [File Path][FilePath Property] is empty (i.e. `""`). | +| [PropertyNullException][] | Thrown when [File Path][FilePath Property] is `null`. | + +## Remarks + +### File Paths + +For information about the supported file path formats (i.e. absolute, relative, UNC etc.) and examples of each, including how it is determined if a path points to a folder or a file, please see [File & Folder Paths][]. + +### File Path needs escaping + +[File Path][FilePath Property] requires `\` characters to be escaped, otherwise each unescaped `\` will be reported as an `Invalid property value` message when trying to debug the flow. + +Escaping can be done in two ways: + +* Escaping the `\` character with another `\` character (e.g. `"C:\\Source\\File.txt"`), or +* Prepending an `@` character before the start of the [File Path][FilePath Property] (e.g. `@"C:\Source\File.txt"`). + +### Encoding of text + +For information about encoding of text, examples of available encodings and using them, please see [Encoding][Working with Text - Encoding]. + +[FilePath Property]: {{< ref "#file-path" >}} +[Encoding Property]: {{< ref "#encoding" >}} +[Text Property]: {{< ref "#text" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Working with Text - Encoding]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Encoding.MainDoc" >}} + +[InvalidPropertyValueException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.MainDoc" >}} +[Value Is Invalid]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.ValueIsInvalid" >}} + +[OperationFailedException]: {{< url path="Cortex.Reference.Exceptions.FilesAndFolders.OperationFailedException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[File & Folder Paths]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.Paths.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Encoding]: {{< url path="Cortex.Reference.DataTypes.Text.Encoding.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/rename-folder/_index.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/rename-folder/_index.md new file mode 100644 index 000000000..e4b6c16b7 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/rename-folder/_index.md @@ -0,0 +1,5 @@ +--- +title: "Rename Folder" +linkTitle: "Rename Folder" +description: "Rename a folder." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/rename-folder/rename-folder-block.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/rename-folder/rename-folder-block.md new file mode 100644 index 000000000..0595cb931 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/rename-folder/rename-folder-block.md @@ -0,0 +1,158 @@ +--- +title: "Rename Folder" +linkTitle: "Rename Folder" +description: "Renames a folder at the specified folder path to a new name." +--- + +{{< figure src="/blocks/Cortex_Blocks_FilesAndFolders_RenameFolder_RenameFolderBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.FilesAndFolders.RenameFolder.RenameFolderBlock)

+ +## Description + +Renames a folder at the specified [Folder Path][FolderPath Property] to a [New Name][NewName Property]. + +## Examples + +### Rename a folder + +This example will rename `"C:\Source\Folder"` to `"C:\Source\RenamedFolder"`. + +In this example assume: + +* `"C:\Source\Folder"` contains: + * An empty sub-folder named `"SubFolder"`. + * A file named `"File.txt"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Folder Path][FolderPath Property] | `($)FolderPath`, with value `@"C:\Source\Folder"` | `($)FolderPath` is a variable of type [String][] | +| [New Name][NewName Property] | `($)NewName`, with value `"RenamedFolder"` | `($)NewName` is a variable of type [String][] | + +#### Result + +Renaming `"C:\Source\Folder"` to `"RenamedFolder"` will: + +* Rename the existing folder at `"C:\Source\Folder"` to `"C:\Source\RenamedFolder"` with: + * The `Date Created` left unchanged. + * The `Date Accessed` left unchanged. + * The `Date Modified` left unchanged. + * The [Folder attributes][] left unchanged. +* `"SubFolder"` and `"File.txt"` will be located under `"C:\Source\RenamedFolder"` and their names, dates, attributes and content will be left unchanged. + +*** + +### Other Move Operations + +If any other folder move operation is required, the [Move Folder][] or [Move Folders][] blocks must be used instead. + +*** + +## Properties + +### Folder Path + +The [Folder Path][FolderPath Property] of the folder to rename. + +The [Folder Path][FolderPath Property] is case-insensitive, cannot contain any wildcard characters, and any trailing spaces will be automatically removed. + +For information about the supported folder path formats (i.e. absolute, relative, UNC etc.) and examples of each, please see [File & Folder Paths][]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)FolderPath` with no value | + +### New Name + +The [New Name][NewName Property] to rename the folder to. + +The [New Name][NewName Property] is case-insensitive and any trailing spaces will be automatically removed. + +The [New Name][NewName Property] must be a valid folder name, otherwise an [InvalidFolderNameException][] will be thrown. + +For information about valid folder names, please see [File & Folder Paths][]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | No value (defaults to `""`) | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [InvalidFolderNameException][] | A folder or file with the [New Name][NewName Property] already exists. | +| | The [New Name][NewName Property] contains only whitespace, or the NUL character (i.e. `\0`), or contains one or more invalid characters (i.e. `"`, `*`, `?`, `\|`, `<`, `>`, `:`, `\`, `/`). | +| | The [New Name][NewName Property] exceeds the system-defined maximum length (typically 32,767 characters). | +| [OperationFailedException][] | The [Folder Path][FolderPath Property] does not exist. | +| | The [Folder Path][FolderPath Property] points to a file. | +| | The [Folder Path][FolderPath Property] contains leading spaces. | +| | The [Folder Path][FolderPath Property] contains only whitespace, or the NUL character (i.e. `\0`), or contains one or more invalid characters (i.e. `"`, `*`, `?`, `\|`, `<`, `>`, `:`, `\`, `/`) in any folder names. | +| | The [Folder Path][FolderPath Property] exceeds the system-defined maximum length (typically 32,767 characters). | +| | The [Folder Path][FolderPath Property] is a win32 device path (i.e starts with a `"\\.\"`). | +| | The [Folder Path][FolderPath Property] is invalid (for example, it is on an unmapped drive). | +| | The user the flow is executing as does not have the required permissions to rename the folder or any of its content (e.g. not having read access to the [Folder Path][FolderPath Property] or its content, or write access to the parent of [Folder Path][FolderPath Property]. | +| | An unexpected error occurs when renaming the folder. | +| [PropertyEmptyException][] | Thrown when [Folder Path][FolderPath Property] or [New Name][NewName Property] are empty (i.e. `""`). | +| [PropertyNullException][] | Thrown when [Folder Path][FolderPath Property] or [New Name][NewName Property] are `null`. | + +## Remarks + +### Folder Paths + +For information about the supported folder path formats (i.e. absolute, relative, UNC etc.) and examples of each, including how it is determined if a path points to a folder or a file, please see [File & Folder Paths][]. + +### Folder Path needs escaping + +[Folder Path][FolderPath Property] requires `\` characters to be escaped, otherwise each unescaped `\` will be reported as an `Invalid property value` message when trying to debug the flow. + +Escaping can be done in two ways: + +* Escaping the `\` character with another `\` character (e.g. `"C:\\Source\\"`), or +* Prepending an `@` character before the start of the [Folder Path][FolderPath Property] (e.g. `@"C:\Source"`). + +### Folder Attributes + +When renaming the folder at the specified [Folder Path][FolderPath Property] all of the folder's attributes are left unchanged. + +For information about the folder attributes (i.e. ReadOnly, Hidden, Archive etc.), please see [File & Folder Attributes][]. + +[FolderPath Property]: {{< ref "#folder-path" >}} +[NewName Property]: {{< ref "#new-name" >}} + +[Folder Attributes]: {{< ref "#folder-attributes" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[InvalidFolderNameException]: {{< url path="Cortex.Reference.Exceptions.FilesAndFolders.InvalidFolderNameException.MainDoc" >}} +[OperationFailedException]: {{< url path="Cortex.Reference.Exceptions.FilesAndFolders.OperationFailedException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[File & Folder Attributes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.Attributes.MainDoc" >}} +[File & Folder Paths]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.Paths.MainDoc" >}} + +[Move Folder]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.MoveFolder.MoveFolder.MainDoc" >}} +[Move Folders]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.MoveFolder.MoveFolders.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/search-file/_index.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/search-file/_index.md new file mode 100644 index 000000000..5bdc44c30 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/search-file/_index.md @@ -0,0 +1,5 @@ +--- +title: "Search File(s)" +linkTitle: "Search File(s)" +description: "Search a file or multiple files." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/search-file/search-file-block.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/search-file/search-file-block.md new file mode 100644 index 000000000..0362dca0f --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/search-file/search-file-block.md @@ -0,0 +1,406 @@ +--- +title: "Search File" +linkTitle: "Search File" +description: "Searches a file at a specified file path for a matching search pattern." +--- + +{{< figure src="/blocks/Cortex_Blocks_FilesAndFolders_SearchFile_SearchFileBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.FilesAndFolders.SearchFile.SearchFileBlock)

+ +## Description + +Searches the file at the specified [File Path][FilePath Property] for text that matches a given [Search Pattern][SearchPattern Property]. + +Results are returned as a list of [Matches][Matches Property]. + +Additional options can be specified: + +* [Search Options][SearchOptions Property] can be specified to choose whether to use a LiteralText, PatternMatching or Regex search. +* [Encoding][Encoding Property] can be specified if needed to explicitly state the encoding that should be used to read and search the file. +* A [Comparison Type][ComparisonType Property] option can specified to choose how it is determined whether text matches the [Search Pattern][SearchPattern Property] (e.g. whether the search is case-sensitive or case-insensitive). + +## Examples + +### Get matches for a given text + +This example will get all matches in the file `"C:\Source\File.txt"` that match the text `"error"`. + +It will perform a case-insensitive search, and let the block determine the encoding of the file automatically. + +In this example assume `"C:\Source\File.txt"` contains the following text: + +```plaintext +Error: Failed to determine uptime. +Information: Uptime is 2 hours. +Information: Uptime is 3 hours. +Error: An terminal error has occurred. The service will restart now. +``` + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [File Path][FilePath Property] | `($)FilePath`, with value `@"C:\Source\File.txt"` | `($)FilePath` is a variable of type [String][] | +| [Search Pattern][SearchPattern Property] | `($)SearchPattern`, with value `"error"` | `($)SearchPattern` is a variable of type [String][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.LiteralText` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Encoding][Encoding Property] | `($)Encoding`, with value `null` | `($)Encoding` is a variable of type [Encoding][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.OrdinalIgnoreCase` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Matches][Matches Property] | `($)Matches`, with no value | `($)Matches` is a variable that will be set to an [IList][]<[FileMatch][]> value | + +#### Result + +Searching `"C:\Source\File.txt"` for all text matching `"error"` (case-insensitive), results in the variable `($)Matches` being updated to the following: + +```json +[ + { + "FilePath": "C:\\Source\\File.txt", + "Line": 1, + "Value": "Error", + "Index": 0, + "Length": 5, + "Groups": {} + }, + { + "FilePath": "C:\\Source\\File.txt", + "Line": 4, + "Value": "Error", + "Index": 0, + "Length": 5, + "Groups": {} + }, + { + "FilePath": "C:\\Source\\File.txt", + "Line": 4, + "Value": "error", + "Index": 19, + "Length": 5, + "Groups": {} + } +] +``` + +*** + +### Get matches for a given pattern + +This example will get all matches in the file `"C:\Source\File.txt"` that match the pattern `"Uptime is * hours."`. + +It will perform a case-sensitive search, and let the block determine the encoding of the file automatically. + +In this example assume `"C:\Source\File.txt"` contains the following text: + +```plaintext +Error: Failed to determine uptime. +Information: Uptime is 2 hours. +Information: Uptime is 3 hours. +Error: An terminal error has occurred. The service will restart now. +``` + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [File Path][FilePath Property] | `($)FilePath`, with value `@"C:\Source\File.txt"` | `($)FilePath` is a variable of type [String][] | +| [Search Pattern][SearchPattern Property] | `($)SearchPattern`, with value `"Uptime is * hours."` | `($)SearchPattern` is a variable of type [String][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.PatternMatching` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Encoding][Encoding Property] | `($)Encoding`, with value `null` | `($)Encoding` is a variable of type [Encoding][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Matches][Matches Property] | `($)Matches`, with no value | `($)Matches` is a variable that will be set to an [IList][]<[FileMatch][]> value | + +#### Result + +Searching `"C:\Source\File.txt"` for all text matching the pattern `"Uptime is * hours."` (case-sensitive), results in the variable `($)Matches` being updated to the following: + +```json +[ + { + "FilePath": "C:\\Source\\File.txt", + "Line": 2, + "Value": "Uptime is 2 hours.", + "Index": 13, + "Length": 18, + "Groups": {} + }, + { + "FilePath": "C:\\Source\\File.txt", + "Line": 3, + "Value": "Uptime is 3 hours.", + "Index": 13, + "Length": 18, + "Groups": {} + } +] +``` + +*** + +### Get matches for a given regex + +This example will get all matches in the file `"C:\Source\File.txt"` that match the regex `"^Error:.*$"`. + +It will perform a case-sensitive search, explicitly specify the encoding of the file as UTF-8 and will match any line that starts with `"Error:"`. + +In this example assume `"C:\Source\File.txt"` contains the following text: + +```plaintext +Error: Failed to determine uptime. +Information: Uptime is 2 hours. +Information: Uptime is 3 hours. +Error: An terminal error has occurred. The service will restart now. +``` + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [File Path][FilePath Property] | `($)FilePath`, with value `@"C:\Source\File.txt"` | `($)FilePath` is a variable of type [String][] | +| [Search Pattern][SearchPattern Property] | `($)SearchPattern`, with value `"^Error:.*$"` | `($)SearchPattern` is a variable of type [String][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.Regex` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Encoding][Encoding Property] | `($)Encoding`, with value `Encoding.UTF8` | `($)Encoding` is a variable of type [Encoding][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Matches][Matches Property] | `($)Matches`, with no value | `($)Matches` is a variable that will be set to an [IList][]<[FileMatch][]> value | + +#### Result + +Searching `"C:\Source\File.txt"` for all text matching the regex `"^Error:.*$"` (case-sensitive), results in the variable `($)Matches` being updated to the following: + +```json +[ + { + "FilePath": "C:\\Source\\File.txt", + "Line": 1, + "Value": "Error: Failed to determine uptime.", + "Index": 0, + "Length": 34, + "Groups": {} + }, + { + "FilePath": "C:\\Source\\File.txt", + "Line": 4, + "Value": "Error: An terminal error has occurred. The service will restart now.", + "Index": 0, + "Length": 68, + "Groups": {} + } +] +``` + +*** + +## Properties + +### File Path + +The [File Path][FilePath Property] to search for text that matches a given [Search Pattern][SearchPattern Property]. + +The [File Path][FilePath Property] is case-insensitive, cannot contain any wildcard characters, and any trailing spaces will be automatically removed. + +For information about the supported file path formats (i.e. absolute, relative, UNC etc.) and examples of each, please see [File & Folder Paths][]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)FilePath` with no value | + +### Search Pattern + +The [Search Pattern][SearchPattern Property] which text must match to be included in the returned [Matches][Matches Property]. + +A `null` or empty (i.e. `""`) [Search Pattern][SearchPattern Property] means match anything; all additional block options such as [Search Options][SearchOptions Property] etc. still take effect. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | No value (defaults to `""`) | + +### Search Options + +[Search Options][SearchOptions Property] can be specified to choose whether [Search Pattern][SearchPattern Property] should be interpreted as a LiteralText, PatternMatching or Regex search: + +* `SearchOptions.LiteralText` matches text exactly. +* `SearchOptions.PatternMatching` allows wildcard text matching using [Pattern Matching Syntax][]: + * `*` wildcard character can be used to match `0` or more characters. + * `?` wildcard character can be used to match `0` or `1` character. + * All other characters are treated as a literal character. +* `SearchOptions.Regex` allows regex text matching using [.Net Regex Syntax][Regex Syntax]. + +Please note that with `SearchOptions.LiteralText` overlapping matches are detected (e.g. searching for `"aa"` in `"aaa"` matches `"aa"` at index `0` and `"aa"` at index `1`). With `SearchOptions.Regex` only `"aa"` at index `0` will be matched. + +| | | +|--------------------|---------------------------| +| Data Type | [SearchOptions][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | `LiteralText` | + +### Encoding + +Option to specify the [Encoding][Encoding Property] that should be used to read and search the file. + +Most of the time [Encoding][Encoding Property] can be left as `null`; allowing the block to automatically attempt to detect the encoding of the file based on the presence of byte order marks. However, if it is found that the returned [Matches][Matches Property] are not correct because the block was unable to detect the encoding of the file, it is possible to specify the [Encoding][Encoding Property] explicitly using this property. + +For information about encoding, examples of available encodings and using them, please see [Encoding][Working with Text - Encoding]. + +| | | +|--------------------|---------------------------| +| Data Type | [Encoding][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### Comparison Type + +The [Comparison Type][ComparisonType Property] specifying the rules used to match text against the given [Search Pattern][SearchPattern Property]. + +For information about the [supported values][ComparisonTypes] for the [Comparison Type][ComparisonType Property] property and examples of how it is determined whether two pieces of text match, please see [Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [StringComparison][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | `Ordinal` | + +### Matches + +[Matches][Matches Property] containing a [FileMatch][] for every text that matches the specified [Search Pattern][SearchPattern Property] based on the other specified options. + +A basic example with a single [FileMatch][] can be seen below: + +```json +[ + { + "FilePath": "C:\\Source\\File.txt", + "Line": 1, + "Value": "Error: Failed to determine uptime.", + "Index": 0, + "Length": 34, + "Groups": {} + } +] +``` + +For more information see the [example][] above, or the [FileMatch][] data type. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[FileMatch][]> | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Matches` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [ArgumentException][] | Thrown when [Search Options][SearchOptions Property] is not one of the specified [SearchOptions][] types (e.g. `(SearchOptions)10`). | +| | Thrown when [Comparison Type][ComparisonType Property] is not one of the specified [StringComparison][] types (e.g. `(StringComparison)10`). | +| [InvalidPropertyValueException][] | Thrown when [Encoding][Encoding Property] is invalid (e.g. `Encoding.GetEncoding(-1)`). See [Value Is Invalid][]. | +| [OperationFailedException][] | The [File Path][FilePath Property] does not exist. | +| | The [File Path][FilePath Property] points to a folder. | +| | The [File Path][FilePath Property] contains leading spaces. | +| | The [File Path][FilePath Property] contains only whitespace, or the NUL character (i.e. `\0`), or contains one or more invalid characters (i.e. `"`, `*`, `?`, `\|`, `<`, `>`, `:`, `\`, `/`) in any file or folder names. | +| | The [File Path][FilePath Property] exceeds the system-defined maximum length (typically 32,767 characters). | +| | The [File Path][FilePath Property] is invalid (for example, it is on an unmapped drive). | +| | The user the flow is executing as does not have the required permissions to search the [File Path][FilePath Property]. | +| | An unexpected error occurs when searching the [File Path][FilePath Property]. | +| [PropertyEmptyException][] | Thrown when [File Path][FilePath Property] is empty (i.e. `""`). | +| [PropertyNullException][] | Thrown when [File Path][FilePath Property] is `null`. | +| [RegexMatchTimeoutException][] | Thrown when using [Search Options][SearchOptions Property] is either `SearchOptions.Regex` or `SearchOptions.PatternMatching` and the execution time of the search exceeds `30` seconds. | +| [RegexParsingFailedException][] | Thrown when [Search Options][SearchOptions Property] is `SearchOptions.Regex` and the [Search Pattern][SearchPattern Property] is not a valid regex (e.g. `(`). | + +## Remarks + +### File Paths + +For information about the supported file path formats (i.e. absolute, relative, UNC etc.) and examples of each, including how it is determined if a path points to a folder or a file, please see [File & Folder Paths][]. + +### File Path needs escaping + +[File Path][FilePath Property] requires `\` characters to be escaped, otherwise each unescaped `\` will be reported as an `Invalid property value` message when trying to debug the flow. + +Escaping can be done in two ways: + +* Escaping the `\` character with another `\` character (e.g. `"C:\\Source\\File.txt"`), or +* Prepending an `@` character before the start of the [File Path][FilePath Property] (e.g. `@"C:\Source\File.txt"`). + +### Null or empty Search Pattern + +A `null` or empty (i.e. `""`) [Search Pattern][SearchPattern Property] means match anything; all additional block options such as [Search Options][SearchOptions Property] etc. still take effect. + +### Encoding of text + +For information about encoding of text, examples of available encodings and using them, please see [Encoding][Working with Text - Encoding]. + +### Comparison Types + +For information about the [supported values][ComparisonTypes] for the [Comparison Type][ComparisonType Property] property and examples of how it is determined whether two pieces of text match, please see [Equality][]. + +### Known Limitations + +* The text in the file at the specified [File Path][FilePath Property] is searched line-by-line. As a result, when using `SearchOptions.Regex` the in-line `s` regex character is not supported. +* If the text in the file at the specified [File Path][FilePath Property] ends with a blank line (`0` length) that line will not be read and therefore not matched against. +* If [Search Options][SearchOptions Property] is set to `SearchOptions.Regex` or `SearchOptions.PatternMatching` and [Comparison Type][ComparisonType Property] is set to `StringComparison.CurrentCulture`, some characters such as `æ` that is equivalent to `ae` may not evaluate as equal. + +[FilePath Property]: {{< ref "#file-path" >}} +[SearchPattern Property]: {{< ref "#search-pattern" >}} +[SearchOptions Property]: {{< ref "#search-options" >}} +[Encoding Property]: {{< ref "#encoding" >}} +[ComparisonType Property]: {{< ref "#comparison-type" >}} +[Matches Property]: {{< ref "#matches" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.MainDoc" >}} +[ComparisonTypes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.MainDoc" >}} +[Ordinal]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.Ordinal" >}} +[OrdinalIgnoreCase]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.OrdinalIgnoreCase" >}} + +[Working with Text - Encoding]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Encoding.MainDoc" >}} + +[ArgumentException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentException" >}} + +[InvalidPropertyValueException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.MainDoc" >}} +[Value Is Invalid]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.ValueIsInvalid" >}} + +[OperationFailedException]: {{< url path="Cortex.Reference.Exceptions.FilesAndFolders.OperationFailedException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[RegexMatchTimeoutException]: {{< url path="MSDocs.DotNet.Api.System.Text.RegularExpressions.RegexMatchTimeoutException" >}} +[RegexParsingFailedException]: {{< url path="Cortex.Reference.Exceptions.Text.Regex.RegexParsingFailedException.MainDoc" >}} + +[Example]: {{< ref "#get-matches-for-a-given-text" >}} + +[File & Folder Paths]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.Paths.MainDoc" >}} +[Pattern Matching Syntax]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.PatternMatchingSyntax.MainDoc" >}} +[Regex Syntax]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.RegexSyntax.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[SearchOptions]: {{< url path="Cortex.Reference.DataTypes.Text.SearchOptions.MainDoc" >}} +[Encoding]: {{< url path="Cortex.Reference.DataTypes.Text.Encoding.MainDoc" >}} +[StringComparison]: {{< url path="Cortex.Reference.DataTypes.Text.StringComparison.MainDoc" >}} +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[FileMatch]: {{< url path="Cortex.Reference.DataTypes.FilesAndFolders.FileMatch.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/search-file/search-files-block.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/search-file/search-files-block.md new file mode 100644 index 000000000..d5129d3dc --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/search-file/search-files-block.md @@ -0,0 +1,527 @@ +--- +title: "Search Files" +linkTitle: "Search Files" +description: "Searches files at the specified file paths for a matching search pattern." +--- + +{{< figure src="/blocks/Cortex_Blocks_FilesAndFolders_SearchFile_SearchFilesBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.FilesAndFolders.SearchFile.SearchFilesBlock)

+ +## Description + +Searches the files at the specified [File Paths][FilePaths Property] for text that matches a given [Search Pattern][SearchPattern Property]. + +Results are returned as [Matches][Matches Property]. + +Additional options can be specified: + +* [Search Options][SearchOptions Property] can be specified to choose whether to use a LiteralText, PatternMatching or Regex search. +* [Encoding][Encoding Property] can be specified if needed to explicitly state the encoding that should be used to read and search the files. +* A [Comparison Type][ComparisonType Property] option can specified to choose how it is determined whether text matches the [Search Pattern][SearchPattern Property] (e.g. whether the search is case-sensitive or case-insensitive). + +## Examples + +### Get matches for a given text + +This example will get all matches in the files `["C:\Source\File1.txt", "C:\Source\File2.txt"]` that match the text `"error"`. + +It will perform a case-insensitive search, and let the block determine the encoding of the files automatically. + +In this example assume `"C:\Source\File1.txt"` contains the following text: + +```plaintext +Error: Failed to determine uptime. +Information: Uptime is 2 hours. +Information: Uptime is 3 hours. +Error: An terminal error has occurred. The service will restart now. +``` + +and `"C:\Source\File2.txt"` contains the following text: + +```plaintext +Information: Uptime is 1 hour. +Information: Uptime is 2 hours. +Information: Uptime is 3 hours. +Error: Failed to determine uptime. +Error: Failed to determine uptime. +Information: Uptime is 6 hours. +``` + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [File Paths][FilePaths Property] | `($)FilePaths`, with value `[@"C:\Source\File1.txt", @"C:\Source\File2.txt"]` | `($)FilePaths` is a variable of type [IEnumerable]<[String][]> | +| [Search Pattern][SearchPattern Property] | `($)SearchPattern`, with value `"error"` | `($)SearchPattern` is a variable of type [String][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.LiteralText` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Encoding][Encoding Property] | `($)Encoding`, with value `null` | `($)Encoding` is a variable of type [Encoding][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.OrdinalIgnoreCase` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Matches][Matches Property] | `($)Matches`, with no value | `($)Matches` is a variable that will be set to an [IDictionary][]<[String][], [IList][]<[FileMatch][]>> value | + +#### Result + +Searching `"C:\Source\File.txt"` for all text matching `"error"` (case-insensitive), results in the variable `($)Matches` being updated to the following: + +```json +{ + "C:\\Source\\File1.txt" : [ + { + "FilePath": "C:\\Source\\File1.txt", + "Line": 1, + "Value": "Error", + "Index": 0, + "Length": 5, + "Groups": {} + }, + { + "FilePath": "C:\\Source\\File1.txt", + "Line": 4, + "Value": "Error", + "Index": 0, + "Length": 5, + "Groups": {} + }, + { + "FilePath": "C:\\Source\\File1.txt", + "Line": 4, + "Value": "error", + "Index": 19, + "Length": 5, + "Groups": {} + } + ], + "C:\\Source\\File2.txt" : [ + { + "FilePath": "C:\\Source\\File2.txt", + "Line": 4, + "Value": "Error", + "Index": 0, + "Length": 5, + "Groups": {} + }, + { + "FilePath": "C:\\Source\\File2.txt", + "Line": 5, + "Value": "Error", + "Index": 0, + "Length": 5, + "Groups": {} + } + ] +} +``` + +*** + +### Get matches for a given pattern + +This example will get all matches in the files `["C:\Source\File1.txt", "C:\Source\File2.txt"]` that match the pattern `"Uptime is * hour?."`. + +It will perform a case-sensitive search, and let the block determine the encoding of the files automatically. + +In this example assume `"C:\Source\File1.txt"` contains the following text: + +```plaintext +Error: Failed to determine uptime. +Information: Uptime is 2 hours. +Information: Uptime is 3 hours. +Error: An terminal error has occurred. The service will restart now. +``` + +and `"C:\Source\File2.txt"` contains the following text: + +```plaintext +Information: Uptime is 1 hour. +Information: Uptime is 2 hours. +Information: Uptime is 3 hours. +Error: Failed to determine uptime. +Error: Failed to determine uptime. +Information: Uptime is 6 hours. +``` + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [File Paths][FilePaths Property] | `($)FilePaths`, with value `[@"C:\Source\File1.txt", @"C:\Source\File2.txt"]` | `($)FilePaths` is a variable of type [IEnumerable]<[String][]> | +| [Search Pattern][SearchPattern Property] | `($)SearchPattern`, with value `"Uptime is * hour?."` | `($)SearchPattern` is a variable of type [String][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.PatternMatching` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Encoding][Encoding Property] | `($)Encoding`, with value `null` | `($)Encoding` is a variable of type [Encoding][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Matches][Matches Property] | `($)Matches`, with no value | `($)Matches` is a variable that will be set to an [IDictionary][]<[String][], [IList][]<[FileMatch][]>> value | + +#### Result + +Searching the files `["C:\Source\File1.txt", "C:\Source\File2.txt"]` for all text matching the pattern `"Uptime is * hour?."` (case-sensitive), results in the variable `($)Matches` being updated to the following: + +```json +{ + "C:\\Source\\File1.txt" : [ + { + "FilePath": "C:\\Source\\File1.txt", + "Line": 2, + "Value": "Uptime is 2 hours.", + "Index": 13, + "Length": 18, + "Groups": {} + }, + { + "FilePath": "C:\\Source\\File1.txt", + "Line": 3, + "Value": "Uptime is 3 hours.", + "Index": 13, + "Length": 18, + "Groups": {} + } + ], + "C:\\Source\\File2.txt" : [ + { + "FilePath": "C:\\Source\\File2.txt", + "Line": 1, + "Value": "Uptime is 1 hour.", + "Index": 13, + "Length": 17, + "Groups": {} + }, + { + "FilePath": "C:\\Source\\File2.txt", + "Line": 2, + "Value": "Uptime is 2 hours.", + "Index": 13, + "Length": 18, + "Groups": {} + }, + { + "FilePath": "C:\\Source\\File2.txt", + "Line": 3, + "Value": "Uptime is 3 hours.", + "Index": 13, + "Length": 18, + "Groups": {} + }, + { + "FilePath": "C:\\Source\\File2.txt", + "Line": 6, + "Value": "Uptime is 6 hours.", + "Index": 13, + "Length": 18, + "Groups": {} + } + ] +} +``` + +*** + +### Get matches for a given regex + +This example will get all matches in the files `["C:\Source\File1.txt", "C:\Source\File2.txt"]` that match the regex `"^Error:.*$"`. + +It will perform a case-sensitive search, explicitly specify the encoding of the files as UTF-8 and will match any lines that start with `"Error:"`. + +In this example assume `"C:\Source\File1.txt"` contains the following text: + +```plaintext +Error: Failed to determine uptime. +Information: Uptime is 2 hours. +Information: Uptime is 3 hours. +Error: An terminal error has occurred. The service will restart now. +``` + +and `"C:\Source\File2.txt"` contains the following text: + +```plaintext +Information: Uptime is 1 hour. +Information: Uptime is 2 hours. +Information: Uptime is 3 hours. +Error: Failed to determine uptime. +Error: Failed to determine uptime. +Information: Uptime is 6 hours. +``` + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [File Paths][FilePaths Property] | `($)FilePaths`, with value `[@"C:\Source\File1.txt", @"C:\Source\File2.txt"]` | `($)FilePaths` is a variable of type [IEnumerable]<[String][]> | +| [Search Pattern][SearchPattern Property] | `($)SearchPattern`, with value `"^Error:.*$"` | `($)SearchPattern` is a variable of type [String][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.Regex` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Encoding][Encoding Property] | `($)Encoding`, with value `Encoding.UTF8` | `($)Encoding` is a variable of type [Encoding][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Matches][Matches Property] | `($)Matches`, with no value | `($)Matches` is a variable that will be set to an [IDictionary][]<[String][], [IList][]<[FileMatch][]>> value | + +#### Result + +Searching the files `["C:\Source\File1.txt", "C:\Source\File2.txt"]` for all text matching the regex `"^Error:.*$"` (case-sensitive), results in the variable `($)Matches` being updated to the following: + +```json +{ + "C:\\Source\\File1.txt" : [ + { + "FilePath": "C:\\Source\\File1.txt", + "Line": 1, + "Value": "Error: Failed to determine uptime.", + "Index": 0, + "Length": 34, + "Groups": {} + }, + { + "FilePath": "C:\\Source\\File1.txt", + "Line": 4, + "Value": "Error: An terminal error has occurred. The service will restart now.", + "Index": 0, + "Length": 68, + "Groups": {} + } + ], + "C:\\Source\\File2.txt" : [ + { + "FilePath": "C:\\Source\\File2.txt", + "Line": 4, + "Value": "Error: Failed to determine uptime.", + "Index": 0, + "Length": 34, + "Groups": {} + }, + { + "FilePath": "C:\\Source\\File2.txt", + "Line": 5, + "Value": "Error: Failed to determine uptime.", + "Index": 0, + "Length": 34, + "Groups": {} + } + ] +} +``` + +*** + +## Properties + +### File Paths + +The [File Paths][FilePaths Property] to search for text that matches a given [Search Pattern][SearchPattern Property]. + +Each file path in [File Paths][FilePaths Property] is case-insensitive, cannot contain any wildcard characters, and any trailing spaces will be automatically removed. + +For information about the supported file path formats (i.e. absolute, relative, UNC etc.) and examples of each, please see [File & Folder Paths][]. + +| | | +|--------------------|---------------------------| +| Data Type | [IEnumerable][]<[String][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)FilePaths` with no value | + +### Search Pattern + +The [Search Pattern][SearchPattern Property] which text must match to be included in the returned [Matches][Matches Property]. + +A `null` or empty (i.e. `""`) [Search Pattern][SearchPattern Property] means match anything; all additional block options such as [Search Options][SearchOptions Property] etc. still take effect. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | No value (defaults to `""`) | + +### Search Options + +[Search Options][SearchOptions Property] can be specified to choose whether [Search Pattern][SearchPattern Property] should be interpreted as a LiteralText, PatternMatching or Regex search: + +* `SearchOptions.LiteralText` matches text exactly. +* `SearchOptions.PatternMatching` allows wildcard text matching using [Pattern Matching Syntax][]: + * `*` wildcard character can be used to match `0` or more characters. + * `?` wildcard character can be used to match `0` or `1` character. + * All other characters are treated as a literal character. +* `SearchOptions.Regex` allows regex text matching using [.Net Regex Syntax][Regex Syntax]. + +Please note that with `SearchOptions.LiteralText` overlapping matches are detected (e.g. searching for `"aa"` in `"aaa"` matches `"aa"` at index `0` and `"aa"` at index `1`). With `SearchOptions.Regex` only `"aa"` at index `0` will be matched. + +| | | +|--------------------|---------------------------| +| Data Type | [SearchOptions][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | `LiteralText` | + +### Encoding + +Option to specify the [Encoding][Encoding Property] that should be used to read and search the files. + +Most of the time [Encoding][Encoding Property] can be left as `null`; allowing the block to automatically attempt to detect the encoding of the files based on the presence of byte order marks. However, if it is found that the returned [Matches][Matches Property] are not correct because the block was unable to detect the encoding of the files, it is possible to specify the [Encoding][Encoding Property] explicitly using this property. + +For information about encoding, examples of available encodings and using them, please see [Encoding][Working with Text - Encoding]. + +| | | +|--------------------|---------------------------| +| Data Type | [Encoding][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### Comparison Type + +The [Comparison Type][ComparisonType Property] specifying the rules used to match text against the given [Search Pattern][SearchPattern Property]. + +For information about the [supported values][ComparisonTypes] for the [Comparison Type][ComparisonType Property] property and examples of how it is determined whether two pieces of text match, please see [Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [StringComparison][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | `Ordinal` | + +### Matches + +[Matches][Matches Property] containing an entry for each file in [File Paths][FilePaths Property]. + +The key of each entry is the file path, and the value contains a [FileMatch][] for every text in the file path that matches the specified [Search Pattern][SearchPattern Property] based on the other specified options. + +A basic example with a single file path and a single [FileMatch][] can be seen below: + +```json +{ + "C:\\Source\\File1.txt" : [ + { + "FilePath": "C:\\Source\\File1.txt", + "Line": 1, + "Value": "Error: Failed to determine uptime.", + "Index": 0, + "Length": 34, + "Groups": {} + } + ] +} +``` + +For more information see the [example][] above, or the [FileMatch][] data type. + +| | | +|--------------------|---------------------------| +| Data Type | [IDictionary][]<[String][], [IList][]<[FileMatch][]>> | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Matches` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [ArgumentException][] | Thrown when [Search Options][SearchOptions Property] is not one of the specified [SearchOptions][] types (e.g. `(SearchOptions)10`). | +| | Thrown when [Comparison Type][ComparisonType Property] is not one of the specified [StringComparison][] types (e.g. `(StringComparison)10`). | +| [InvalidPropertyValueException][] | Thrown when [Encoding][Encoding Property] is invalid (e.g. `Encoding.GetEncoding(-1)`). See [Value Is Invalid][]. | +| [OperationFailedException][] | Any file path in [File Paths][FilePaths Property] is `null` or empty (i.e. `""`).| +| | Any file path in [File Paths][FilePaths Property] is duplicated. | +| | Any file path in [File Paths][FilePaths Property] does not exist. | +| | Any file path in [File Paths][FilePaths Property] points to a folder. | +| | Any file path in [File Paths][FilePaths Property] contains leading spaces. | +| | Any file path in [File Paths][FilePaths Property] contains only whitespace, or the NUL character (i.e. `\0`), or contains one or more invalid characters (i.e. `"`, `*`, `?`, `\|`, `<`, `>`, `:`, `\`, `/`) in any file or folder names. | +| | Any file path in [File Paths][FilePaths Property] exceeds the system-defined maximum length (typically 32,767 characters). | +| | Any file path in [File Paths][FilePaths Property] is invalid (for example, it is on an unmapped drive). | +| | The user the flow is executing as does not have the required permissions to search a file path in [File Paths][FilePaths Property]. | +| | An unexpected error occurs when searching any file path in [File Paths][FilePaths Property]. | +| [PropertyEmptyException][] | Thrown when [File Paths][FilePaths Property] does not contain any items. | +| [PropertyNullException][] | Thrown when [File Paths][FilePaths Property] is `null`. | +| [RegexMatchTimeoutException][] | Thrown when using [Search Options][SearchOptions Property] is either `SearchOptions.Regex` or `SearchOptions.PatternMatching` and the execution time of the search exceeds `30` seconds. | +| [RegexParsingFailedException][] | Thrown when [Search Options][SearchOptions Property] is `SearchOptions.Regex` and the [Search Pattern][SearchPattern Property] is not a valid regex (e.g. `(`). | + +## Remarks + +### File Paths + +For information about the supported file path formats (i.e. absolute, relative, UNC etc.) and examples of each, including how it is determined if a path points to a folder or a file, please see [File & Folder Paths][]. + +### File Paths needs escaping + +Each file path in [File Paths][FilePaths Property] requires `\` characters to be escaped, otherwise each unescaped `\` will be reported as an `Invalid property value` message when trying to debug the flow. + +Escaping can be done in two ways: + +* Escaping the `\` character with another `\` character (e.g. `"C:\\Source\\File.txt"`), or +* Prepending an `@` character before the start of the [File Paths][FilePaths Property] (e.g. `@"C:\Source\File.txt"`). + +### Null or empty Search Pattern + +A `null` or empty (i.e. `""`) [Search Pattern][SearchPattern Property] means match anything; all additional block options such as [Search Options][SearchOptions Property] etc. still take effect. + +### Encoding of text + +For information about encoding of text, examples of available encodings and using them, please see [Encoding][Working with Text - Encoding]. + +### Comparison Types + +For information about the [supported values][ComparisonTypes] for the [Comparison Type][ComparisonType Property] property and examples of how it is determined whether two pieces of text match, please see [Equality][]. + +### Handling of Exceptions + +If an exception occurs when trying to search a file in the [File Paths][FilePaths Property], it will be recorded and the block will continue processing the remaining files. Once all files are processed, recorded exceptions will be thrown within an [OperationFailedException][]. + +### Known Limitations + +* The text in the files at the specified [File Paths][FilePaths Property] is searched line-by-line. As a result, when using `SearchOptions.Regex` the in-line `s` regex character is not supported. +* If the text in the files at the specified [File Paths][FilePaths Property] ends with a blank line (`0` length) that line will not be read and therefore not matched against. +* If [Search Options][SearchOptions Property] is set to `SearchOptions.Regex` or `SearchOptions.PatternMatching` and [Comparison Type][ComparisonType Property] is set to `StringComparison.CurrentCulture`, some characters such as `æ` that is equivalent to `ae` may not evaluate as equal. + +[FilePaths Property]: {{< ref "#file-paths" >}} +[SearchPattern Property]: {{< ref "#search-pattern" >}} +[SearchOptions Property]: {{< ref "#search-options" >}} +[Encoding Property]: {{< ref "#encoding" >}} +[ComparisonType Property]: {{< ref "#comparison-type" >}} +[Matches Property]: {{< ref "#matches" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.MainDoc" >}} +[ComparisonTypes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.MainDoc" >}} +[Ordinal]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.Ordinal" >}} +[OrdinalIgnoreCase]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.OrdinalIgnoreCase" >}} + +[Working with Text - Encoding]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Encoding.MainDoc" >}} + +[ArgumentException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentException" >}} + +[InvalidPropertyValueException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.MainDoc" >}} +[Value Is Invalid]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.ValueIsInvalid" >}} + +[OperationFailedException]: {{< url path="Cortex.Reference.Exceptions.FilesAndFolders.OperationFailedException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[RegexMatchTimeoutException]: {{< url path="MSDocs.DotNet.Api.System.Text.RegularExpressions.RegexMatchTimeoutException" >}} +[RegexParsingFailedException]: {{< url path="Cortex.Reference.Exceptions.Text.Regex.RegexParsingFailedException.MainDoc" >}} + +[Example]: {{< ref "#get-matches-for-a-given-text" >}} + +[File & Folder Paths]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.Paths.MainDoc" >}} +[Pattern Matching Syntax]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.PatternMatchingSyntax.MainDoc" >}} +[Regex Syntax]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.RegexSyntax.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[SearchOptions]: {{< url path="Cortex.Reference.DataTypes.Text.SearchOptions.MainDoc" >}} +[Encoding]: {{< url path="Cortex.Reference.DataTypes.Text.Encoding.MainDoc" >}} +[StringComparison]: {{< url path="Cortex.Reference.DataTypes.Text.StringComparison.MainDoc" >}} +[IDictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[FileMatch]: {{< url path="Cortex.Reference.DataTypes.FilesAndFolders.FileMatch.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/write-file/_index.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/write-file/_index.md new file mode 100644 index 000000000..bcadbe7f5 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/write-file/_index.md @@ -0,0 +1,5 @@ +--- +title: "Write File" +linkTitle: "Write File" +description: "Write the content of a file." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/write-file/write-all-lines-block.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/write-file/write-all-lines-block.md new file mode 100644 index 000000000..f492aae35 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/write-file/write-all-lines-block.md @@ -0,0 +1,226 @@ +--- +title: "Write All Lines" +linkTitle: "Write All Lines" +description: "Writes all specified lines to a file at the given file path." +--- + +{{< figure src="/blocks/Cortex_Blocks_FilesAndFolders_WriteFile_WriteAllLinesBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.FilesAndFolders.WriteFile.WriteAllLinesBlock)

+ +## Description + +Writes all specified [Lines][Lines Property] to the end of the file at the given [File Path][FilePath Property], with an option to explicitly specify the [Encoding][Encoding Property] to write the file as if needed. + +An option can also be specified to [Overwrite][Overwrite Property] rather than append to the file. + +## Examples + +### Write all lines, appending to the end of the file + +This example will append `["New Line 1", "New Line 2"]` to `"C:\Source\File.txt"`, using UTF-8 encoding without a byte order mark. + +In this example assume `"C:\Source\File.txt"` contains 2 lines: + +```plaintext +Original Line 1 +Original Line 2 +``` + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [File Path][FilePath Property] | `($)FilePath`, with value `@"C:\Source\File.txt"` | `($)FilePath` is a variable of type [String][] | +| [Lines][Lines Property] | `($)Lines`, with value `["New Line 1", "New Line 2"]` | `($)Lines` is a variable of type [IEnumerable][]<[String][]> | +| [Overwrite][Overwrite Property] | `($)Overwrite`, with value `false` | `($)Overwrite` is a variable of type [Boolean][] | +| [Encoding][Encoding Property] | `($)Encoding`, with value `null` | `($)Encoding` is a variable of type [Encoding][] | + +#### Result + +Writing `["New Line 1", "New Line 2"]` to `"C:\Source\File.txt"` results in the content being updated to the following: + +```plaintext +Original Line 1 +Original Line 2 +New Line 1 +New Line 2 +``` + +*** + +### Write all lines, overwriting the file content + +This example will overwrite the content of `"C:\Source\File.txt"` with `["New Line 1", "New Line 2"]`, using UTF-8 encoding without a byte order mark. + +In this example assume `"C:\Source\File.txt"` contains 2 lines: + +```plaintext +Original Line 1 +Original Line 2 +``` + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [File Path][FilePath Property] | `($)FilePath`, with value `@"C:\Source\File.txt"` | `($)FilePath` is a variable of type [String][] | +| [Lines][Lines Property] | `($)Lines`, with value `["New Line 1", "New Line 2"]` | `($)Lines` is a variable of type [IEnumerable][]<[String][]> | +| [Overwrite][Overwrite Property] | `($)Overwrite`, with value `true` | `($)Overwrite` is a variable of type [Boolean][] | +| [Encoding][Encoding Property] | `($)Encoding`, with value `null` | `($)Encoding` is a variable of type [Encoding][] | + +#### Result + +Overwriting `"C:\Source\File.txt"` with `["New Line 1", "New Line 2"]` results in the content being updated to the following: + +```plaintext +New Line 1 +New Line 2 +``` + +*** + +## Properties + +### File Path + +The [File Path][FilePath Property] to write all [Lines][Lines Property] to. + +The [File Path][FilePath Property] is case-insensitive, cannot contain any wildcard characters, and any trailing spaces will be automatically removed. + +If the file does not exist at the [File Path][FilePath Property], a new file is created, and any non-existing folders will also be created. + +If the file already exists at the [File Path][FilePath Property] and [Overwrite][Overwrite Property] is: + +* `true`, the [Lines][Lines Property] overwrite the existing file content. +* `false`, the [Lines][Lines Property] are appended to the existing file content. + +For information about the supported file path formats (i.e. absolute, relative, UNC etc.) and examples of each, please see [File & Folder Paths][]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)FilePath` with no value | + +### Lines + +The [Lines][Lines Property] to write to the file. + +[Lines][Lines Property] can be `null` or empty (i.e. `""`). + +If [Lines][Lines Property] is `null` or empty (i.e. `""`) and [Overwrite][Overwrite Property] is: + +* `true`, a blank file will be written. +* `false`, nothing is written. + +If [Lines][Lines Property] contains an entry that is `null` or empty (i.e. `""`) a blank line will be written for that entry. + +| | | +|--------------------|---------------------------| +| Data Type | [IEnumerable][]<[String][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Lines` with no value | + +### Overwrite + +Option to [Overwrite][Overwrite Property] the file content with the [Lines][Lines Property], rather than appending them. + +By default, this is set to `false` to avoid implicit and accidental overwriting of the file content. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `false` | + +### Encoding + +Option to specify the [Encoding][Encoding Property] that should be used to write the file. + +If the [Encoding][Encoding Property] is left as `null`, the [Lines][Lines Property] will be written using UTF-8 encoding without a byte order mark. + +For information about encoding, examples of available encodings and using them, please see [Encoding][Working with Text - Encoding]. + +| | | +|--------------------|---------------------------| +| Data Type | [Encoding][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [InvalidPropertyValueException][] | Thrown when [Encoding][Encoding Property] is invalid (e.g. `Encoding.GetEncoding(-1)`). See [Value Is Invalid][]. | +| [OperationFailedException][] | The [File Path][FilePath Property] points to a folder. | +| | The [File Path][FilePath Property] contains leading spaces. | +| | The [File Path][FilePath Property] contains only whitespace, or the NUL character (i.e. `\0`), or contains one or more invalid characters (i.e. `"`, `*`, `?`, `\|`, `<`, `>`, `:`, `\`, `/`) in any file or folder names. | +| | The [File Path][FilePath Property] exceeds the system-defined maximum length (typically 32,767 characters). | +| | The [File Path][FilePath Property] is invalid (for example, it is on an unmapped drive). | +| | The file at the specified [File Path][FilePath Property] is hidden or is a System file, and overwrite is `true`. | +| | The file at the specified [File Path][FilePath Property] is a read-only file. | +| | The user the flow is executing as does not have the required permissions to write to the file. | +| | An unexpected error occurs when writing the file. | +| [PropertyEmptyException][] | Thrown when [File Path][FilePath Property] is empty (i.e. `""`). | +| [PropertyNullException][] | Thrown when [File Path][FilePath Property] is `null`. | + +## Remarks + +### File Paths + +For information about the supported file path formats (i.e. absolute, relative, UNC etc.) and examples of each, including how it is determined if a path points to a folder or a file, please see [File & Folder Paths][]. + +### File Path needs escaping + +[File Path][FilePath Property] requires `\` characters to be escaped, otherwise each unescaped `\` will be reported as an `Invalid property value` message when trying to debug the flow. + +Escaping can be done in two ways: + +* Escaping the `\` character with another `\` character (e.g. `"C:\\Source\\File.txt"`), or +* Prepending an `@` character before the start of the [File Path][FilePath Property] (e.g. `@"C:\Source\File.txt"`). + +### Encoding of text + +For information about encoding of text, examples of available encodings and using them, please see [Encoding][Working with Text - Encoding]. + +[FilePath Property]: {{< ref "#file-path" >}} +[Lines Property]: {{< ref "#lines" >}} +[Overwrite Property]: {{< ref "#overwrite" >}} +[Encoding Property]: {{< ref "#encoding" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[Working with Text - Encoding]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Encoding.MainDoc" >}} + +[InvalidPropertyValueException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.MainDoc" >}} +[Value Is Invalid]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.ValueIsInvalid" >}} + +[OperationFailedException]: {{< url path="Cortex.Reference.Exceptions.FilesAndFolders.OperationFailedException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[File & Folder Paths]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.Paths.MainDoc" >}} + +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Encoding]: {{< url path="Cortex.Reference.DataTypes.Text.Encoding.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/write-file/write-all-text-block.md b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/write-file/write-all-text-block.md new file mode 100644 index 000000000..842f74cf8 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Files-And-Folders/write-file/write-all-text-block.md @@ -0,0 +1,223 @@ +--- +title: "Write All Text" +linkTitle: "Write All Text" +description: "Writes all specified text to a file at the given file path." +--- + +{{< figure src="/blocks/Cortex_Blocks_FilesAndFolders_WriteFile_WriteAllTextBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.FilesAndFolders.WriteFile.WriteAllTextBlock)

+ +## Description + +Writes all specified [Text][Text Property] to the end of the file at the given [File Path][FilePath Property], with an option to explicitly specify the [Encoding][Encoding Property] to write the file as if needed. + +An option can also be specified to [Overwrite][Overwrite Property] rather than append to the file. + +## Examples + +### Write all text, appending to the end of the file + +This example will append `"New Line 1\r\nNew Line 2"` to `"C:\Source\File.txt"`, using UTF-8 encoding without a byte order mark. + +In this example assume `"C:\Source\File.txt"` contains the following text: + +```plaintext +Original Line 1 +Original Line 2 +``` + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [File Path][FilePath Property] | `($)FilePath`, with value `@"C:\Source\File.txt"` | `($)FilePath` is a variable of type [String][] | +| [Text][Text Property] | `($)Text`, with value `"New Line 1\r\nNew Line 2"` | `($)Text` is a variable of type [String][] | +| [Overwrite][Overwrite Property] | `($)Overwrite`, with value `false` | `($)Overwrite` is a variable of type [Boolean][] | +| [Encoding][Encoding Property] | `($)Encoding`, with value `null` | `($)Encoding` is a variable of type [Encoding][] | + +#### Result + +Writing `"New Line 1\r\nNew Line 2"` to `"C:\Source\File.txt"` results in the content being updated to the following: + +```plaintext +Original Line 1 +Original Line 2 +New Line 1 +New Line 2 +``` + +*** + +### Write all text, overwriting the file content + +This example will overwrite the content of `"C:\Source\File.txt"` with `"New Line 1\r\nNew Line 2"`, using UTF-8 encoding without a byte order mark. + +In this example assume `"C:\Source\File.txt"` contains the following text: + +```plaintext +Original Line 1 +Original Line 2 +``` + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [File Path][FilePath Property] | `($)FilePath`, with value `@"C:\Source\File.txt"` | `($)FilePath` is a variable of type [String][] | +| [Text][Text Property] | `($)Text`, with value `"New Line 1\r\nNew Line 2"` | `($)Text` is a variable of type [String][] | +| [Overwrite][Overwrite Property] | `($)Overwrite`, with value `true` | `($)Overwrite` is a variable of type [Boolean][] | +| [Encoding][Encoding Property] | `($)Encoding`, with value `null` | `($)Encoding` is a variable of type [Encoding][] | + +#### Result + +Overwriting `"C:\Source\File.txt"` with `"New Line 1\r\nNew Line 2"` results in the content being updated to the following: + +```plaintext +New Line 1 +New Line 2 +``` + +*** + +## Properties + +### File Path + +The [File Path][FilePath Property] to write the [Text][Text Property] to. + +The [File Path][FilePath Property] is case-insensitive, cannot contain any wildcard characters, and any trailing spaces will be automatically removed. + +If the file does not exist at the [File Path][FilePath Property], a new file is created, and any non-existing folders will also be created. + +If the file already exists at the [File Path][FilePath Property] and [Overwrite][Overwrite Property] is: + +* `true`, the [Text][Text Property] overwrites the existing file content. +* `false`, the [Text][Text Property] is appended to the existing file content. + +For information about the supported file path formats (i.e. absolute, relative, UNC etc.) and examples of each, please see [File & Folder Paths][]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)FilePath` with no value | + +### Text + +The [Text][Text Property] to write to the file. + +[Text][Text Property] can be `null` or empty (i.e. `""`). + +If [Text][Text Property] is `null` or empty (i.e. `""`) and [Overwrite][Overwrite Property] is: + +* `true`, a blank file will be written. +* `false`, nothing is written. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +### Overwrite + +Option to [Overwrite][Overwrite Property] the file content with the [Text][Text Property], rather than appending it. + +By default, this is set to `false` to avoid implicit and accidental overwriting of the file content. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `false` | + +### Encoding + +Option to specify the [Encoding][Encoding Property] that should be used to write the file. + +If the [Encoding][Encoding Property] is left as `null`, the [Text][Text Property] will be written using UTF-8 encoding without a byte order mark. + +For information about encoding, examples of available encodings and using them, please see [Encoding][Working with Text - Encoding]. + +| | | +|--------------------|---------------------------| +| Data Type | [Encoding][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [InvalidPropertyValueException][] | Thrown when [Encoding][Encoding Property] is invalid (e.g. `Encoding.GetEncoding(-1)`). See [Value Is Invalid][]. | +| [OperationFailedException][] | The [File Path][FilePath Property] points to a folder. | +| | The [File Path][FilePath Property] contains leading spaces. | +| | The [File Path][FilePath Property] contains only whitespace, or the NUL character (i.e. `\0`), or contains one or more invalid characters (i.e. `"`, `*`, `?`, `\|`, `<`, `>`, `:`, `\`, `/`) in any file or folder names. | +| | The [File Path][FilePath Property] exceeds the system-defined maximum length (typically 32,767 characters). | +| | The [File Path][FilePath Property] is invalid (for example, it is on an unmapped drive). | +| | The file at the specified [File Path][FilePath Property] is hidden or is a System file, and overwrite is `true`. | +| | The file at the specified [File Path][FilePath Property] is a read-only file. | +| | The user the flow is executing as does not have the required permissions to write to the file. | +| | An unexpected error occurs when writing the file. | +| [PropertyEmptyException][] | Thrown when [File Path][FilePath Property] is empty (i.e. `""`). | +| [PropertyNullException][] | Thrown when [File Path][FilePath Property] is `null`. | + +## Remarks + +### File Paths + +For information about the supported file path formats (i.e. absolute, relative, UNC etc.) and examples of each, including how it is determined if a path points to a folder or a file, please see [File & Folder Paths][]. + +### File Path needs escaping + +[File Path][FilePath Property] requires `\` characters to be escaped, otherwise each unescaped `\` will be reported as an `Invalid property value` message when trying to debug the flow. + +Escaping can be done in two ways: + +* Escaping the `\` character with another `\` character (e.g. `"C:\\Source\\File.txt"`), or +* Prepending an `@` character before the start of the [File Path][FilePath Property] (e.g. `@"C:\Source\File.txt"`). + +### Encoding of text + +For information about encoding of text, examples of available encodings and using them, please see [Encoding][Working with Text - Encoding]. + +[FilePath Property]: {{< ref "#file-path" >}} +[Text Property]: {{< ref "#text" >}} +[Overwrite Property]: {{< ref "#overwrite" >}} +[Encoding Property]: {{< ref "#encoding" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[Working with Text - Encoding]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Encoding.MainDoc" >}} + +[InvalidPropertyValueException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.MainDoc" >}} +[Value Is Invalid]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.ValueIsInvalid" >}} + +[OperationFailedException]: {{< url path="Cortex.Reference.Exceptions.FilesAndFolders.OperationFailedException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[File & Folder Paths]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.Paths.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Encoding]: {{< url path="Cortex.Reference.DataTypes.Text.Encoding.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/Get-Count/_index.md b/content/en/docs/2024.11/Reference/Blocks/Lists/Get-Count/_index.md new file mode 100644 index 000000000..6e11b63ca --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/Get-Count/_index.md @@ -0,0 +1,5 @@ +--- +title: "Get Count(s) of Items" +linkTitle: "Get Count(s) of Items" +description: "Get the count(s) of items in a list." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/Get-Count/get-count-of-all-items-block-2.md b/content/en/docs/2024.11/Reference/Blocks/Lists/Get-Count/get-count-of-all-items-block-2.md new file mode 100644 index 000000000..5b9210bcd --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/Get-Count/get-count-of-all-items-block-2.md @@ -0,0 +1,115 @@ +--- +title: "Get Count Of All Items" +linkTitle: "Get Count Of All Items" +description: "Gets the count of all items in a List." +--- + +{{< figure src="/blocks/Cortex_Blocks_Lists_GetCount_GetCountOfAllItemsBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Lists.GetCount.GetCountOfAllItemsBlock`2)

+ +## Description + +Gets the [Count][Count Property] of all items in a [List][List Property]. + +## Examples + +### Get Count of all items in a List + +This example will get the count of all items in `["Some Text", 1]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `["Some Text", 1]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [Count][Count Property] | `($)Count`, with no value | `($)Count` is a variable that will be set to an [Int32][] value | + +#### Result + +Getting the count of all items in `["Some Text", 1]` results in the variable `($)Count` being updated to the following: + +```json +2 +``` + +*** + +## Properties + +### List + +The [List][List Property] to get the [Count][Count Property] of all items for. + +[List][List Property] can be any [IList][]<[TItem][]>, where [TItem][] represents the type of items in the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)List` with no value | + +### Count + +The [Count][Count Property] of all items in [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Count` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyNullException][] | Thrown when [List][List Property] is `null`. | + +## Remarks + +### Empty List + +If [List][List Property] is empty (i.e. `[]`), the variable specified in the [Count][Count Property] property is set to `0`. + +### Defining lists using literal syntax + +For information about how to define lists using literal syntax, see [Create a List<TItem>][]. + +### Defining lists using expression syntax + +For information about how to define lists using expression syntax, see [Create a List<TItem>][]. + +### Lists containing items of a single data type vs multiple data types + +For information about the different types of lists, including those that can contain only a single type of item, and those that can contain multiple types of item, see [Lists][]. + +[List Property]: {{< ref "#list" >}} +[Count Property]: {{< ref "#count" >}} + +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[Create a List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[Lists]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Lists" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/Get-Count/get-count-of-items-with-value-block-2.md b/content/en/docs/2024.11/Reference/Blocks/Lists/Get-Count/get-count-of-items-with-value-block-2.md new file mode 100644 index 000000000..7b68af599 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/Get-Count/get-count-of-items-with-value-block-2.md @@ -0,0 +1,145 @@ +--- +title: "Get Count Of Items With Value" +linkTitle: "Get Count Of Items With Value" +description: "Gets the count of items in a List with the specified value." +--- + +{{< figure src="/blocks/Cortex_Blocks_Lists_GetCount_GetCountOfItemsWithValueBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Lists.GetCount.GetCountOfItemsWithValueBlock`2)

+ +## Description + +Gets the [Count][Count Property] of items in a [List][List Property] with the specified [Value][Value Property]. + +## Examples + +### Get Count of items in a List with a Value + +This example will get the count of items in `["Some Text", 1]` with the value `1`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `["Some Text", 1]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [Value][Value Property] | `($)Value`, with value `1` | `($)Value` is a variable of type [Int32][] | +| [Count][Count Property] | `($)Count`, with no value | `($)Count` is a variable that will be set to an [Int32][] value | + +#### Result + +Getting the count of items in `["Some Text", 1]` with the value `1` results in the variable `($)Count` being updated to the following: + +```json +1 +``` + +*** + +## Properties + +### List + +The [List][List Property] to get the [Count][Count Property] of items with the specified [Value][Value Property] for. + +[List][List Property] can be any [IList][]<[TItem][]>, where [TItem][] represents the type of items in the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)List` with no value | + +### Value + +The [Value][Value Property] items must match to be included in the [Count][Count Property]. + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [TItem][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### Count + +The [Count][Count Property] of items in [List][List Property] with the specified [Value][Value Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Count` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [InvalidPropertyValueException][] | Thrown when [Value][Value Property] is `null` and [List][List Property] only accepts non-nullable value types. See [Value Is Invalid][]. | +| [PropertyNullException][] | Thrown when [List][List Property] is `null`. | + +## Remarks + +### Item Equality + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +### Empty List + +If [List][List Property] is empty (i.e. `[]`), the variable specified in the [Count][Count Property] property is set to `0`. + +### No items matching Value + +If [List][List Property] does not contain items matching the specified [Value][Value Property], the variable specified in the [Count][Count Property] property is set to `0`. + +### Defining lists using literal syntax + +For information about how to define lists using literal syntax, see [Create a List<TItem>][]. + +### Defining lists using expression syntax + +For information about how to define lists using expression syntax, see [Create a List<TItem>][]. + +### Lists containing items of a single data type vs multiple data types + +For information about the different types of lists, including those that can contain only a single type of item, and those that can contain multiple types of item, see [Lists][]. + +[List Property]: {{< ref "#list" >}} +[Value Property]: {{< ref "#value" >}} +[Count Property]: {{< ref "#count" >}} + +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[Create a List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[Lists]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Lists" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[Object Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectEquality.MainDoc" >}} + +[InvalidPropertyValueException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.MainDoc" >}} +[Value Is Invalid]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.ValueIsInvalid" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/Get-Count/get-count-of-items-with-values-block-2.md b/content/en/docs/2024.11/Reference/Blocks/Lists/Get-Count/get-count-of-items-with-values-block-2.md new file mode 100644 index 000000000..9571a09f0 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/Get-Count/get-count-of-items-with-values-block-2.md @@ -0,0 +1,149 @@ +--- +title: "Get Counts Of Items With Values" +linkTitle: "Get Counts Of Items With Values" +description: "Gets the counts of items in a List matching each of the specified values." +--- + +{{< figure src="/blocks/Cortex_Blocks_Lists_GetCount_GetCountsOfItemsWithValuesBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Lists.GetCount.GetCountsOfItemsWithValuesBlock`2)

+ +## Description + +Gets the [Counts][Counts Property] of items in a [List][List Property] matching each of the specified [Values][Values Property]. + +## Examples + +### Get Counts of items in a List matching each of the Values + +This example will get the counts of items in `["Some Text", 1]` matching each of the values `[1, 2, 3]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `["Some Text", 1]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [Values][Values Property] | `($)Values`, with value `[1, 2, 3]` | `($)Values` is a variable of type [IEnumerable][]<[Int32][]> | +| [Counts][Counts Property] | `($)Counts`, with no value | `($)Counts` is a variable that will be set to an [IList][]<[Int32][]> value | + +#### Result + +Getting the counts of items in `["Some Text", 1]` matching each of the values `[1, 2, 3]` results in the variable `($)Counts` being updated to the following: + +```json +[1, 0, 0] +``` + +The counts of items matching each value are added to `($)Counts` at the same [index][Indexes] the value is in `($)Values`. In this example, there is one item matching the first value `1`, zero items matching the second value `2` and zero items matching the third value `3`, resulting in `($)Counts` being set to `[1, 0, 0]`. + +*** + +## Properties + +### List + +The [List][List Property] to get the [Counts][Counts Property] of items matching each of the specified [Values][Values Property] for. + +[List][List Property] can be any [IList][]<[TItem][]>, where [TItem][] represents the type of items in the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)List` with no value | + +### Values + +The [Values][Values Property] items must match to be included in the [Counts][Counts Property]. + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [IEnumerable][]<[TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### Counts + +The [Counts][Counts Property] of items in [List][List Property] matching each of the specified [Values][Values Property]. + +For each value in [Values][Values Property], [Counts][Counts Property] will have a corresponding item whose value is the count of items in [List][List Property] matching the value. + +I.e. The count of items matching the first value in [Values][Values Property] will be saved as the first item in [Counts][Counts Property]; the count of items matching the second value in [Values][Values Property] will be saved as the second item in [Counts][Counts Property] etc. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[Int32][]> | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Counts` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyNullException][] | Thrown when [List][List Property] or [Values][Values Property] are `null`. | + +## Remarks + +### Item Equality + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +### Empty Values + +If [Values][Values Property] is empty (i.e. `[]`), the variable specified in the [Counts][Counts Property] property is set to empty (i.e. `[]`). + +### No items matching a specified value in Values + +If [List][List Property] does not contain items matching one of the specified [Values][Values Property], `0` is written to the corresponding item in [Counts][Counts Property] for that value. + +### Defining lists using literal syntax + +For information about how to define lists using literal syntax, see [Create a List<TItem>][]. + +### Defining lists using expression syntax + +For information about how to define lists using expression syntax, see [Create a List<TItem>][]. + +### Lists containing items of a single data type vs multiple data types + +For information about the different types of lists, including those that can contain only a single type of item, and those that can contain multiple types of item, see [Lists][]. + +[List Property]: {{< ref "#list" >}} +[Values Property]: {{< ref "#values" >}} +[Counts Property]: {{< ref "#counts" >}} + +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[Create a List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[Lists]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Lists" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[Object Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectEquality.MainDoc" >}} +[Indexes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Indexes.MainDoc" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/Get-Index/_index.md b/content/en/docs/2024.11/Reference/Blocks/Lists/Get-Index/_index.md new file mode 100644 index 000000000..f76c2f371 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/Get-Index/_index.md @@ -0,0 +1,5 @@ +--- +title: "Get Index(es) of Items" +linkTitle: "Get Index(es) of Items" +description: "Get the index of an item or indexes of multiple items contained in a list." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/Get-Index/get-index-of-item-with-value-block-2.md b/content/en/docs/2024.11/Reference/Blocks/Lists/Get-Index/get-index-of-item-with-value-block-2.md new file mode 100644 index 000000000..b21ce2717 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/Get-Index/get-index-of-item-with-value-block-2.md @@ -0,0 +1,207 @@ +--- +title: "Get Index Of Item With Value" +linkTitle: "Get Index Of Item With Value" +description: "Gets the index of the specified occurrence of an item in a List matching a value." +--- + +{{< figure src="/blocks/Cortex_Blocks_Lists_GetIndex_GetIndexOfItemWithValueBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Lists.GetIndex.GetIndexOfItemWithValueBlock`2)

+ +## Description + +Gets the [Index][Index Property] of the specified [Occurrence][Occurrence Property] of an item in a [List][List Property] matching a [Value][Value Property]. + +## Examples + +### Get the Index of the first Occurrence of an item in a List matching a Value + +This example will attempt to get the index of the first occurrence of an item matching the value `1` from `[1, 2, 3, 3, 2, 1]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `[1, 2, 3, 3, 2, 1]` | `($)List` is a variable of type [IList][]<[Int32][]> | +| [Value][Value Property] | `($)Value`, with value `1` | `($)Value` is a variable of type [Int32][] | +| [Occurrence][Occurrence Property] | `($)Occurrence`, with value `1` | `($)Occurrence` is a variable of type [Int32][] | +| [Index][Index Property] | `($)Index`, with no value | `($)Index` is a variable that will be set to an [Int32][] value | + +#### Result + +An [Occurrence][Occurrence Property] of `1` means the first occurrence; `2` means second etc. + +Attempting to get the index of the first occurrence of an item matching the value `1` from `[1, 2, 3, 3, 2, 1]` results in the variable `($)Index` being updated to the following: + +```json +0 +``` + +*** + +### Get the Index of the last Occurrence of an item in a List matching a Value + +This example will attempt to get the index of the last occurrence of an item matching the value `1` from `[1, 2, 3, 3, 2, 1]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `[1, 2, 3, 3, 2, 1]` | `($)List` is a variable of type [IList][]<[Int32][]> | +| [Value][Value Property] | `($)Value`, with value `1` | `($)Value` is a variable of type [Int32][] | +| [Occurrence][Occurrence Property] | `($)Occurrence`, with value `-1` | `($)Occurrence` is a variable of type [Int32][] | +| [Index][Index Property] | `($)Index`, with no value | `($)Index` is a variable that will be set to an [Int32][] value | + +#### Result + +An [Occurrence][Occurrence Property] of `-1`, means the last occurrence; `-2` means second last etc. + +Attempting to get the index of the last occurrence of an item matching the value `1` from `[1, 2, 3, 3, 2, 1]` results in the variable `($)List` being updated to the following: + +```json +5 +``` + +*** + +## Properties + +### List + +The [List][List Property] to get the [Index][Index Property] of the specified [Occurrence][Occurrence Property] of matching item from. + +Items are considered matching if they have the specified [Value][Value Property]. + +[List][List Property] can be any [IList][]<[TItem][]>, where [TItem][] represents the type of items in the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)List` with no value | + +### Value + +The [Value][Value Property] the item to get the [Index][Index Property] of the specified [Occurrence][Occurrence Property] must match. + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [TItem][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### Occurrence + +The [Occurrence][Occurrence Property] of matching item to get the [Index][Index Property] of. + +Items are considered matching if they have the specified [Value][Value Property]. + +For information about [supported values][Occurrences] for the [Occurrence][Occurrence Property] property and examples of how it can be used, please see [Occurrences][]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `1` | + +### Index + +[Int32][] indicating the [Index][Index Property] of the specified [Occurrence][Occurrence Property] of item matching [Value][Value Property] in [List][List Property]. + +If there is no specified [Occurrence][Occurrence Property] of item matching [Value][Value Property] in [List][List Property], the specified variable will be set to `-1`. + +For information about what an index is, please see [Indexes][]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Index` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|-------------| +| [InvalidPropertyValueException][] | Thrown when [Value][Value Property] is `null` and [List][List Property] only accepts non-nullable value types. See [Value Is Invalid][]. | +| [PropertyNullException][] | Thrown when [List][List Property] is `null`. | + +## Remarks + +### Item Equality + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +### Occurrences + +For information about [supported values][Occurrences] for the [Occurrence][Occurrence Property] property and examples of how it can be used, please see [Occurrences][]. + +### Empty List + +If [List][List Property] is empty (i.e. `[]`), the variable specified in the [Index][Index Property] property is set to `-1`. + +### No items matching Value, or Occurrence is not present + +If [List][List Property] does not contain items matching the specified [Value][Value Property] or the specified [Occurrence][Occurrence Property] is not present, the variable specified in the [Index][Index Property] property is set to `-1`. + +### Occurrence is zero + +If the [Occurrence][Occurrence Property] is set to `0`, the variable specified in the [Index][Index Property] property is set to `-1`. + +### Defining lists using literal syntax + +For information about how to define lists using literal syntax, see [Create a List<TItem>][]. + +### Defining lists using expression syntax + +For information about how to define lists using expression syntax, see [Create a List<TItem>][]. + +### Lists containing items of a single data type vs multiple data types + +For information about the different types of lists, including those that can contain only a single type of item, and those that can contain multiple types of item, see [Lists][]. + +[List Property]: {{< ref "#list" >}} +[Value Property]: {{< ref "#value" >}} +[Occurrence Property]: {{< ref "#occurrence" >}} +[Index Property]: {{< ref "#index" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Indexes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Indexes.MainDoc" >}} +[Occurrences]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Occurrences.MainDoc" >}} + +[Create a List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[Lists]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Lists" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[Object Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectEquality.MainDoc" >}} + +[CannotModifyReadOnlyListException]: {{< url path="Cortex.Reference.Exceptions.Lists.CannotModifyReadOnlyListException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[InvalidPropertyValueException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.MainDoc" >}} +[Value Is Invalid]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.ValueIsInvalid" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/Get-Index/get-indexes-of-items-with-value-block-2.md b/content/en/docs/2024.11/Reference/Blocks/Lists/Get-Index/get-indexes-of-items-with-value-block-2.md new file mode 100644 index 000000000..46cc20c8e --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/Get-Index/get-indexes-of-items-with-value-block-2.md @@ -0,0 +1,153 @@ +--- +title: "Get Indexes Of Items With Value" +linkTitle: "Get Indexes Of Items With Value" +description: "Gets the indexes of all items in a List matching a value." +--- + +{{< figure src="/blocks/Cortex_Blocks_Lists_GetIndex_GetIndexesOfItemsWithValueBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Lists.GetIndex.GetIndexesOfItemsWithValueBlock`2)

+ +## Description + +Gets the [Indexes][Indexes Property] of all items in a [List][List Property] matching a [Value][Value Property]. + +## Examples + +### Get the Indexes of all items in a List matching a Value + +This example will attempt to get the indexes of all items matching the value `1` from `[1, 2, 3, 3, 2, 1]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `[1, 2, 3, 3, 2, 1]` | `($)List` is a variable of type [IList][]<[Int32][]> | +| [Value][Value Property] | `($)Value`, with value `1` | `($)Value` is a variable of type [Int32][] | +| [Indexes][Indexes Property] | `($)Indexes`, with no value | `($)Indexes` is a variable that will be set to an [IList][]<[Int32][]> value | + +#### Result + +Attempting to get the indexes of all items matching the value `1` from `[1, 2, 3, 3, 2, 1]` results in the variable `($)Indexes` being updated to the following: + +```json +[0, 5] +``` + +*** + +## Properties + +### List + +The [List][List Property] to get the [Indexes][Indexes Property] of matching items from. + +Items are considered matching if they have the specified [Value][Value Property]. + +[List][List Property] can be any [IList][]<[TItem][]>, where [TItem][] represents the type of items in the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)List` with no value | + +### Value + +The [Value][Value Property] the items to get the [Indexes][Indexes Property] of must match. + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [TItem][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### Indexes + +[IList][]<[Int32][]> containing the [Indexes][Indexes Property] of items matching [Value][Value Property] in [List][List Property]. + +If there are no items matching [Value][Value Property] in [List][List Property], the specified variable will be set to `[-1]`. + +For information about what an index is, please see [Indexes][]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[Int32][]> | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Indexes` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|-------------| +| [InvalidPropertyValueException][] | Thrown when [Value][Value Property] is `null` and [List][List Property] only accepts non-nullable value types. See [Value Is Invalid][]. | +| [PropertyNullException][] | Thrown when [List][List Property] is `null`. | + +## Remarks + +### Item Equality + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +### Empty List + +If [List][List Property] is empty (i.e. `[]`), the variable specified in the [Indexes][Indexes Property] property is set to `[-1]`. + +### No items matching Value + +If [List][List Property] does not contain items matching the specified [Value][Value Property], the variable specified in the [Indexes][Indexes Property] property is set to `[-1]`. + +### Defining lists using literal syntax + +For information about how to define lists using literal syntax, see [Create a List<TItem>][]. + +### Defining lists using expression syntax + +For information about how to define lists using expression syntax, see [Create a List<TItem>][]. + +### Lists containing items of a single data type vs multiple data types + +For information about the different types of lists, including those that can contain only a single type of item, and those that can contain multiple types of item, see [Lists][]. + +[List Property]: {{< ref "#list" >}} +[Value Property]: {{< ref "#value" >}} +[Indexes Property]: {{< ref "#indexes" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Indexes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Indexes.MainDoc" >}} +[Occurrences]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Occurrences.MainDoc" >}} + +[Create a List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[Lists]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Lists" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[Object Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectEquality.MainDoc" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[InvalidPropertyValueException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.MainDoc" >}} +[Value Is Invalid]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.ValueIsInvalid" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/_index.md b/content/en/docs/2024.11/Reference/Blocks/Lists/_index.md new file mode 100644 index 000000000..81c3fb421 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/_index.md @@ -0,0 +1,5 @@ +--- +title: "Lists" +linkTitle: "Lists" +description: "Blocks related to working with Lists." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/add-item/_index.md b/content/en/docs/2024.11/Reference/Blocks/Lists/add-item/_index.md new file mode 100644 index 000000000..46346dea3 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/add-item/_index.md @@ -0,0 +1,5 @@ +--- +title: "Add Item(s)" +linkTitle: "Add Item(s)" +description: "Add an item or multiple items to a list." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/add-item/add-item-at-beginning-block-2.md b/content/en/docs/2024.11/Reference/Blocks/Lists/add-item/add-item-at-beginning-block-2.md new file mode 100644 index 000000000..2127a3d94 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/add-item/add-item-at-beginning-block-2.md @@ -0,0 +1,137 @@ +--- +title: "Add Item At Beginning" +linkTitle: "Add Item At Beginning" +description: "Adds an Item at the beginning of a List." +--- + +{{< figure src="/blocks/Cortex_Blocks_Lists_AddItem_AddItemAtBeginningBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Lists.AddItem.AddItemAtBeginningBlock`2)

+ +## Description + +Adds an [Item][Item Property] at the beginning of a [List][List Property]. + +## Examples + +### Add an Item at the beginning of an empty List + +This example will add `"New Item"` at the beginning of `[]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `[]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [Item][Item Property] | `($)Item`, with value `"New Item"` | `($)Item` is a variable of type [String][] | + +#### Result + +Adding `"New Item"` at the beginning of `[]` results in the variable `($)List` being updated to the following: + +```json +["New Item"] +``` + +*** + +### Add an Item at the beginning of a List + +This example will add `"New Item"` at the beginning of `["Some Text", 1]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `["Some Text", 1]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [Item][Item Property] | `($)Item`, with value `"New Item"` | `($)Item` is a variable of type [String][] | + +#### Result + +Adding `"New Item"` at the beginning of `["Some Text", 1]` results in the variable `($)List` being updated to the following: + +```json +["New Item", "Some Text", 1] +``` + +*** + +## Properties + +### List + +The [List][List Property] where the [Item][Item Property] is added. + +[List][List Property] can be any [IList][]<[TItem][]>, where [TItem][] represents the type of items that can be added to the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)List` with no value | + +### Item + +The [Item][Item Property] to be added at the beginning of the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [TItem][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [CannotModifyReadOnlyListException][] | Thrown when [List][List Property] is read-only. | +| [InvalidPropertyValueException][] | Thrown when [Item][Item Property] is `null` and [List][List Property] only accepts non-nullable value types. See [Value Is Invalid][]. | +| [PropertyNullException][] | Thrown when [List][List Property] is `null`. | + +## Remarks + +### Defining lists using literal syntax + +For information about how to define lists using literal syntax, see [Create a List<TItem>][]. + +### Defining lists using expression syntax + +For information about how to define lists using expression syntax, see [Create a List<TItem>][]. + +### Lists containing items of a single data type vs multiple data types + +For information about the different types of lists, including those that can contain only a single type of item, and those that can contain multiple types of item, see [Lists][]. + +[List Property]: {{< ref "#list" >}} +[Item Property]: {{< ref "#item" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Create a List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[Lists]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Lists" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[CannotModifyReadOnlyListException]: {{< url path="Cortex.Reference.Exceptions.Lists.CannotModifyReadOnlyListException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[InvalidPropertyValueException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.MainDoc" >}} +[Value Is Invalid]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.ValueIsInvalid" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/add-item/add-item-at-end-block-2.md b/content/en/docs/2024.11/Reference/Blocks/Lists/add-item/add-item-at-end-block-2.md new file mode 100644 index 000000000..38c27bb97 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/add-item/add-item-at-end-block-2.md @@ -0,0 +1,138 @@ +--- +title: "Add Item At End" +linkTitle: "Add Item At End" +description: "Adds an Item at the end of a List." +--- + +{{< figure src="/blocks/Cortex_Blocks_Lists_AddItem_AddItemAtEndBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Lists.AddItem.AddItemAtEndBlock`2)

+ +## Description + +Adds an [Item][Item Property] at the end of a [List][List Property]. + +## Examples + +### Add an Item at the end of an empty List + +This example will add `"New Item"` at the end of `[]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `[]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [Item][Item Property] | `($)Item`, with value `"New Item"` | `($)Item` is a variable of type [String][] | + +#### Result + +Adding `"New Item"` at the end of `[]` results in the variable `($)List` being updated to the following: + +```json +["New Item"] +``` + +*** + +### Add an Item at the end of a List + +This example will add `"New Item"` at the end of `["Some Text", 1]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `["Some Text", 1]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [Item][Item Property] | `($)Item`, with value `"New Item"` | `($)Item` is a variable of type [String][] | + +#### Result + +Adding `"New Item"` at the end of `["Some Text", 1]` results in the variable `($)List` being updated to the following: + +```json +["Some Text", 1, "New Item"] +``` + +*** + +## Properties + +### List + +The [List][List Property] where the [Item][Item Property] is added. + +[List][List Property] can be any [IList][]<[TItem][]>, where [TItem][] represents the type of items that can be added to the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)List` with no value | + +### Item + +The [Item][Item Property] to be added at the end of the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [TItem][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [CannotModifyReadOnlyListException][] | Thrown when [List][List Property] is read-only. | +| [InvalidPropertyValueException][] | Thrown when [Item][Item Property] is `null` and [List][List Property] only accepts non-nullable value types. See [Value Is Invalid][]. | +| [PropertyNullException][] | Thrown when [List][List Property] is `null`. | + +## Remarks + +### Defining lists using literal syntax + +For information about how to define lists using literal syntax, see [Create a List<TItem>][]. + +### Defining lists using expression syntax + +For information about how to define lists using expression syntax, see [Create a List<TItem>][]. + +### Lists containing items of a single data type vs multiple data types + +For information about the different types of lists, including those that can contain only a single type of item, and those that can contain multiple types of item, see [Lists][]. + +[List Property]: {{< ref "#list" >}} +[Item Property]: {{< ref "#item" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Create a List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[Lists]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Lists" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[CannotModifyReadOnlyListException]: {{< url path="Cortex.Reference.Exceptions.Lists.CannotModifyReadOnlyListException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[InvalidPropertyValueException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.MainDoc" >}} +[Value Is Invalid]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.ValueIsInvalid" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/add-item/add-item-at-index-block-2.md b/content/en/docs/2024.11/Reference/Blocks/Lists/add-item/add-item-at-index-block-2.md new file mode 100644 index 000000000..af7c4a13b --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/add-item/add-item-at-index-block-2.md @@ -0,0 +1,186 @@ +--- +title: "Add Item At Index" +linkTitle: "Add Item At Index" +description: "Adds an Item at the specified Index of a List." +--- + +{{< figure src="/blocks/Cortex_Blocks_Lists_AddItem_AddItemAtIndexBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Lists.AddItem.AddItemAtIndexBlock`2)

+ +## Description + +Adds an [Item][Item Property] at the specified [Index][Index Property] of a [List][List Property]. + +## Examples + +### Add an Item at the first Index (i.e. `0`) of an empty List + +This example will add `"New Item"` at index `0` of `[]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `[]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [Item][Item Property] | `($)Item`, with value `"New Item"` | `($)Item` is a variable of type [String][] | +| [Index][Index Property] | `($)Index`, with value `0` | `($)Index` is a variable of type [Int32][] | + +#### Result + +Adding `"New Item"` at index `0` of `[]` results in the variable `($)List` being updated to the following: + +```json +["New Item"] +``` + +*** + +### Add an Item at the first Index (i.e. `0`) of a List + +This example will add `"New Item"` at index `0` of `["Some Text", 1]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `["Some Text", 1]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [Item][Item Property] | `($)Item`, with value `"New Item"` | `($)Item` is a variable of type [String][] | +| [Index][Index Property] | `($)Index`, with value `0` | `($)Index` is a variable of type [Int32][] | + +#### Result + +Adding `"New Item"` at index `0` of `["Some Text", 1]` results in the variable `($)List` being updated to the following: + +```json +["New Item", "Some Text", 1] +``` + +*** + +### Add an Item at the end (i.e. Index equals count of items) of a List + +This example will add `"New Item"` at index `2` of `["Some Text", 1]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `["Some Text", 1]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [Item][Item Property] | `($)Item`, with value `"New Item"` | `($)Item` is a variable of type [String][] | +| [Index][Index Property] | `($)Index`, with value `2` | `($)Index` is a variable of type [Int32][] | + +#### Result + +Adding `"New Item"` at index `2` of `["Some Text", 1]` results in the variable `($)List` being updated to the following: + +```json +["Some Text", 1, "New Item"] +``` + +*** + +## Properties + +### List + +The [List][List Property] where the [Item][Item Property] is added. + +[List][List Property] can be any [IList][]<[TItem][]>, where [TItem][] represents the type of items that can be added to the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)List` with no value | + +### Item + +The [Item][Item Property] to be added at the specified [Index][Index Property] of the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [TItem][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### Index + +The [Index][Index Property] to add the [Item][Item Property] at. + +Valid values are between and including `0` and the total count of items in the [List][List Property]. + +For information about what an index is, please see [Indexes][]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `0` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [CannotModifyReadOnlyListException][] | Thrown when [List][List Property] is read-only. | +| [InvalidPropertyValueException][] | Thrown when [Item][Item Property] is `null` and [List][List Property] only accepts non-nullable value types. See [Value Is Invalid][]. | +| [PropertyNullException][] | Thrown when [List][List Property] is `null`. | +| [PropertyValueOutOfRangeException][] | Thrown when [Index][Index Property] is out of the range of the list indexes. Valid indexes are between and including `0` and the count of items in the [List][List Property]. | + +## Remarks + +### Defining lists using literal syntax + +For information about how to define lists using literal syntax, see [Create a List<TItem>][]. + +### Defining lists using expression syntax + +For information about how to define lists using expression syntax, see [Create a List<TItem>][]. + +### Lists containing items of a single data type vs multiple data types + +For information about the different types of lists, including those that can contain only a single type of item, and those that can contain multiple types of item, see [Lists][]. + +[List Property]: {{< ref "#list" >}} +[Item Property]: {{< ref "#item" >}} +[Index Property]: {{< ref "#index" >}} + +[Indexes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Indexes.MainDoc" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Create a List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[Lists]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Lists" >}} + +[CannotModifyReadOnlyListException]: {{< url path="Cortex.Reference.Exceptions.Lists.CannotModifyReadOnlyListException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[InvalidPropertyValueException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.MainDoc" >}} +[Value Is Invalid]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.ValueIsInvalid" >}} + +[PropertyValueOutOfRangeException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.MainDoc" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/add-item/add-items-at-beginning-block-2.md b/content/en/docs/2024.11/Reference/Blocks/Lists/add-item/add-items-at-beginning-block-2.md new file mode 100644 index 000000000..f8a90c90c --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/add-item/add-items-at-beginning-block-2.md @@ -0,0 +1,139 @@ +--- +title: "Add Items At Beginning" +linkTitle: "Add Items At Beginning" +description: "Adds Items at the beginning of a List." +--- + +{{< figure src="/blocks/Cortex_Blocks_Lists_AddItem_AddItemsAtBeginningBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Lists.AddItem.AddItemsAtBeginningBlock`2)

+ +## Description + +Adds [Items][Items Property] at the beginning of a [List][List Property]. + +## Examples + +### Add Items at the beginning of an empty List + +This example will add `["New Item 1", "New Item 2"]` at the beginning of `[]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `[]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [Items][Items Property] | `($)Items`, with value `["New Item 1", "New Item 2"]` | `($)Items` is a variable of type [IEnumerable][]<[String][]> | + +#### Result + +Adding `["New Item 1", "New Item 2"]` at the beginning of `[]` results in the variable `($)List` being updated to the following: + +```json +["New Item 1", "New Item 2"] +``` + +*** + +### Add Items at the beginning of a List + +This example will add `["New Item 1", "New Item 2"]` at the beginning of `["Some Text", 1]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `["Some Text", 1]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [Items][Items Property] | `($)Items`, with value `["New Item 1", "New Item 2"]` | `($)Items` is a variable of type [IEnumerable][]<[String][]> | + +#### Result + +Adding `["New Item 1", "New Item 2"]` at the beginning of `["Some Text", 1]` results in the variable `($)List` being updated to the following: + +```json +["New Item 1", "New Item 2", "Some Text", 1] +``` + +*** + +## Properties + +### List + +The [List][List Property] where the [Items][Items Property] are added. + +[List][List Property] can be any [IList][]<[TItem][]>, where [TItem][] represents the type of items that can be added to the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)List` with no value | + +### Items + +The [Items][Items Property] to be added at the beginning of the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IEnumerable][]<[TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [CannotModifyReadOnlyListException][] | Thrown when [List][List Property] is read-only. | +| [PropertyNullException][] | Thrown when [List][List Property] or [Items][Items Property] is `null`. | + +## Remarks + +### Empty Items + +If [Items][Items Property] is empty (i.e. `[]`) there is nothing to add, so no operation is performed. + +### Defining lists using literal syntax + +For information about how to define lists using literal syntax, see [Create a List<TItem>][]. + +### Defining lists using expression syntax + +For information about how to define lists using expression syntax, see [Create a List<TItem>][]. + +### Lists containing items of a single data type vs multiple data types + +For information about the different types of lists, including those that can contain only a single type of item, and those that can contain multiple types of item, see [Lists][]. + +[List Property]: {{< ref "#list" >}} +[Items Property]: {{< ref "#items" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Create a List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[Lists]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Lists" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[CannotModifyReadOnlyListException]: {{< url path="Cortex.Reference.Exceptions.Lists.CannotModifyReadOnlyListException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/add-item/add-items-at-end-block-2.md b/content/en/docs/2024.11/Reference/Blocks/Lists/add-item/add-items-at-end-block-2.md new file mode 100644 index 000000000..d447abfea --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/add-item/add-items-at-end-block-2.md @@ -0,0 +1,139 @@ +--- +title: "Add Items At End" +linkTitle: "Add Items At End" +description: "Adds Items at the end of a List." +--- + +{{< figure src="/blocks/Cortex_Blocks_Lists_AddItem_AddItemsAtEndBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Lists.AddItem.AddItemsAtEndBlock`2)

+ +## Description + +Adds [Items][Items Property] at the end of a [List][List Property]. + +## Examples + +### Add Items at the end of an empty List + +This example will add `["New Item 1", "New Item 2"]` at the end of `[]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `[]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [Items][Items Property] | `($)Items`, with value `["New Item 1", "New Item 2"]` | `($)Items` is a variable of type [IEnumerable][]<[String][]> | + +#### Result + +Adding `["New Item 1", "New Item 2"]` at the end of `[]` results in the variable `($)List` being updated to the following: + +```json +["New Item 1", "New Item 2"] +``` + +*** + +### Add Items at the end of a List + +This example will add `["New Item 1", "New Item 2"]` at the end of `["Some Text", 1]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `["Some Text", 1]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [Items][Items Property] | `($)Items`, with value `["New Item 1", "New Item 2"]` | `($)Items` is a variable of type [IEnumerable][]<[String][]> | + +#### Result + +Adding `["New Item 1", "New Item 2"]` at the end of `["Some Text", 1]` results in the variable `($)List` being updated to the following: + +```json +["Some Text", 1, "New Item 1", "New Item 2"] +``` + +*** + +## Properties + +### List + +The [List][List Property] where the [Items][Items Property] are added. + +[List][List Property] can be any [IList][]<[TItem][]>, where [TItem][] represents the type of items that can be added to the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)List` with no value | + +### Items + +The [Items][Items Property] to be added at the end of the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IEnumerable][]<[TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [CannotModifyReadOnlyListException][] | Thrown when [List][List Property] is read-only. | +| [PropertyNullException][] | Thrown when [List][List Property] or [Items][Items Property] is `null`. | + +## Remarks + +### Empty Items + +If [Items][Items Property] is empty (i.e. `[]`) there is nothing to add, so no operation is performed. + +### Defining lists using literal syntax + +For information about how to define lists using literal syntax, see [Create a List<TItem>][]. + +### Defining lists using expression syntax + +For information about how to define lists using expression syntax, see [Create a List<TItem>][]. + +### Lists containing items of a single data type vs multiple data types + +For information about the different types of lists, including those that can contain only a single type of item, and those that can contain multiple types of item, see [Lists][]. + +[List Property]: {{< ref "#list" >}} +[Items Property]: {{< ref "#items" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Create a List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[Lists]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Lists" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[CannotModifyReadOnlyListException]: {{< url path="Cortex.Reference.Exceptions.Lists.CannotModifyReadOnlyListException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/add-item/add-items-at-index-block-2.md b/content/en/docs/2024.11/Reference/Blocks/Lists/add-item/add-items-at-index-block-2.md new file mode 100644 index 000000000..07914cdbd --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/add-item/add-items-at-index-block-2.md @@ -0,0 +1,185 @@ +--- +title: "Add Items At Index" +linkTitle: "Add Items At Index" +description: "Adds Items at the specified Index of a List." +--- + +{{< figure src="/blocks/Cortex_Blocks_Lists_AddItem_AddItemsAtIndexBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Lists.AddItem.AddItemsAtIndexBlock`2)

+ +## Description + +Adds [Items][Items Property] at the specified [Index][Index Property] of a [List][List Property]. + +## Examples + +### Add Items at the first index (i.e. `0`) of an empty List + +This example will add `["New Item 1", "New Item 2"]` at index `0` of `[]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `[]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [Items][Items Property] | `($)Items`, with value `["New Item 1", "New Item 2"]` | `($)Items` is a variable of type [IEnumerable][]<[String][]> | +| [Index][Index Property] | `($)Index`, with value `0` | `($)Index` is a variable of type [Int32][] | + +#### Result + +Adding `["New Item 1", "New Item 2"]` at index `0` of `[]` results in the variable `($)List` being updated to the following: + +```json +["New Item 1", "New Item 2"] +``` + +*** + +### Add Items at the first Index (i.e. `0`) of a List + +This example will add `["New Item 1", "New Item 2"]` at index `0` of `["Some Text", 1]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `["Some Text", 1]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [Items][Items Property] | `($)Items`, with value `["New Item 1", "New Item 2"]` | `($)Items` is a variable of type [IEnumerable][]<[String][]> | +| [Index][Index Property] | `($)Index`, with value `0` | `($)Index` is a variable of type [Int32][] | + +#### Result + +Adding `["New Item 1", "New Item 2"]` at index `0` of `["Some Text", 1]` results in the variable `($)List` being updated to the following: + +```json +["New Item 1", "New Item 2", "Some Text", 1] +``` + +*** + +### Add Items at the end (i.e. Index equals count of items) of a List + +This example will add `["New Item 1", "New Item 2"]` at index `2` of `["Some Text", 1]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `["Some Text", 1]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [Items][Items Property] | `($)Items`, with value `["New Item 1", "New Item 2"]` | `($)Items` is a variable of type [IEnumerable][]<[String][]> | +| [Index][Index Property] | `($)Index`, with value `2` | `($)Index` is a variable of type [Int32][] | + +#### Result + +Adding `["New Item 1", "New Item 2"]` at index `2` of `["Some Text", 1]` results in the variable `($)List` being updated to the following: + +```json +["Some Text", 1, "New Item 1", "New Item 2"] +``` + +*** + +## Properties + +### List + +The [List][List Property] where the [Items][Items Property] are added. + +[List][List Property] can be any [IList][]<[TItem][]>, where [TItem][] represents the type of items that can be added to the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)List` with no value | + +### Items + +The [Items][Items Property] to be added at the specified [Index][Index Property] of the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IEnumerable][]<[TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### Index + +The [Index][Index Property] to add the [Items][Items Property] at. + +Valid values are between and including `0` and the total count of items in the [List][List Property]. + +For information about what an index is, please see [Indexes][]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `0` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [CannotModifyReadOnlyListException][] | Thrown when [List][List Property] is read-only. | +| [PropertyNullException][] | Thrown when [List][List Property] or [Items][Items Property] is `null`. | +| [PropertyValueOutOfRangeException][] | Thrown when [Index][Index Property] is out of the range of the list indexes. Valid indexes are between and including `0` and the count of items in the [List][List Property]. | + +## Remarks + +### Empty Items + +If [Items][Items Property] is empty (i.e. `[]`) there is nothing to add, so no operation is performed. + +### Defining lists using literal syntax + +For information about how to define lists using literal syntax, see [Create a List<TItem>][]. + +### Defining lists using expression syntax + +For information about how to define lists using expression syntax, see [Create a List<TItem>][]. + +### Lists containing items of a single data type vs multiple data types + +For information about the different types of lists, including those that can contain only a single type of item, and those that can contain multiple types of item, see [Lists][]. + +[List Property]: {{< ref "#list" >}} +[Items Property]: {{< ref "#items" >}} +[Index Property]: {{< ref "#index" >}} + +[Indexes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Indexes.MainDoc" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Create a List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[Lists]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Lists" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[CannotModifyReadOnlyListException]: {{< url path="Cortex.Reference.Exceptions.Lists.CannotModifyReadOnlyListException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[PropertyValueOutOfRangeException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.MainDoc" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/contains-item/_index.md b/content/en/docs/2024.11/Reference/Blocks/Lists/contains-item/_index.md new file mode 100644 index 000000000..30f4fc7df --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/contains-item/_index.md @@ -0,0 +1,5 @@ +--- +title: "Contains Item(s)" +linkTitle: "Contains Item(s)" +description: "Check if an item or multiple items are contained in a list." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/contains-item/contains-item-with-value-block-2.md b/content/en/docs/2024.11/Reference/Blocks/Lists/contains-item/contains-item-with-value-block-2.md new file mode 100644 index 000000000..7f1b5c433 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/contains-item/contains-item-with-value-block-2.md @@ -0,0 +1,167 @@ +--- +title: "Contains Item With Value" +linkTitle: "Contains Item With Value" +description: "Checks if a List contains at least one item matching the specified value." +--- + +{{< figure src="/blocks/Cortex_Blocks_Lists_ContainsItem_ContainsItemWithValueBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Lists.ContainsItem.ContainsItemWithValueBlock`2)

+ +## Description + +Checks if [List][List Property] contains at least one item matching [Value][Value Property]. + +## Examples + +### List contains item with Value + +This example will check whether `[1, 2, 3, 3, 2, 1]` contains the value `1`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `[1, 2, 3, 3, 2, 1]` | `($)List` is a variable of type [IList][]<[Int32][]> | +| [Value][Value Property] | `($)Value`, with value `1` | `($)Value` is a variable of type [Int32][] | +| [Contains Item][ContainsItem Property] | `($)ContainsItem`, with no value | `($)ContainsItem` is a variable that will be set to a [Boolean][] value | + +#### Result + +`[1, 2, 3, 3, 2, 1]` contains two items with the value `1`. Therefore, the variable `($)ContainsItem` will be updated to the following: + +```json +true +``` + +*** + +### List does not contain item with Value + +This example will check whether `[1, 2, 3, 3, 2, 1]` contains the value `10`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `[1, 2, 3, 3, 2, 1]` | `($)List` is a variable of type [IList][]<[Int32][]> | +| [Value][Value Property] | `($)Value`, with value `10` | `($)Value` is a variable of type [Int32][] | +| [Contains Item][ContainsItem Property] | `($)ContainsItem`, with no value | `($)ContainsItem` is a variable that will be set to a [Boolean][] value | + +#### Result + +`[1, 2, 3, 3, 2, 1]` does not contain any items with the value `10`. Therefore, the variable `($)ContainsItem` will be updated to the following: + +```json +false +``` + +*** + +## Properties + +### List + +The [List][List Property] to check whether it contains at least one item matching the specified [Value][Value Property]. + +Items are considered matching if they have the specified [Value][Value Property]. + +[List][List Property] can be any [IList][]<[TItem][]>, where [TItem][] represents the type of items in the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)List` with no value | + +### Value + +The [Value][Value Property] to check for matching items. + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [TItem][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### Contains Item + +The result of the contains item check. + +If [List][List Property] contains at least one item matching the specified [Value][Value Property], the specified variable will be set to `true`, otherwise it will be set to `false`. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)ContainsItem` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [InvalidPropertyValueException][] | Thrown when [Value][Value Property] is `null` and [List][List Property] only accepts non-nullable value types. See [Value Is Invalid][]. | +| [PropertyNullException][] | Thrown when [List][List Property] is `null`. | + +## Remarks + +### Item Equality + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +### Empty List + +If [List][List Property] is empty (i.e. `[]`), the variable specified in the [Contains Item][ContainsItem Property] property is set to `false`. + +### Defining lists using literal syntax + +For information about how to define lists using literal syntax, see [Create a List<TItem>][]. + +### Defining lists using expression syntax + +For information about how to define lists using expression syntax, see [Create a List<TItem>][]. + +### Lists containing items of a single data type vs multiple data types + +For information about the different types of lists, including those that can contain only a single type of item, and those that can contain multiple types of item, see [Lists][]. + +[List Property]: {{< ref "#list" >}} +[Value Property]: {{< ref "#value" >}} +[ContainsItem Property]: {{< ref "#contains-item" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Create a List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[Lists]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Lists" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[Object Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectEquality.MainDoc" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[InvalidPropertyValueException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.MainDoc" >}} +[Value Is Invalid]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.ValueIsInvalid" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/contains-item/contains-items-with-values-block-2.md b/content/en/docs/2024.11/Reference/Blocks/Lists/contains-item/contains-items-with-values-block-2.md new file mode 100644 index 000000000..2786f60c7 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/contains-item/contains-items-with-values-block-2.md @@ -0,0 +1,168 @@ +--- +title: "Contains Items With Values" +linkTitle: "Contains Items With Values" +description: "Checks if a List contains at least one item matching each of the specified values." +--- + +{{< figure src="/blocks/Cortex_Blocks_Lists_ContainsItem_ContainsItemsWithValuesBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Lists.ContainsItem.ContainsItemsWithValuesBlock`2)

+ +## Description + +Checks if [List][List Property] contains at least one item matching each of the specified [Values][Values Property]. + +## Examples + +### List contains items with Values + +This example will check whether `[1, 2, 3, 3, 2, 1]` contains at least one item matching each of the values in `[1, 2, 3]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `[1, 2, 3, 3, 2, 1]` | `($)List` is a variable of type [IList][]<[Int32][]> | +| [Values][Values Property] | `($)Values`, with value `[1, 2, 3]` | `($)Values` is a variable of type [IEnumerable][]<[Int32][]> | +| [Contains Items][ContainsItems Property] | `($)ContainsItems`, with no value | `($)ContainsItems` is a variable that will be set to a [Boolean][] value | + +#### Result + +`[1, 2, 3, 3, 2, 1]` contains at least one item matching each of the values in `[1, 2, 3]`; it contains two items with the value `1`, two items with the value `2` and two items with the value `3`. Therefore, the variable `($)ContainsItems` will be updated to the following: + +```json +true +``` + +*** + +### List does not contain items with Values + +This example will check whether `[1, 2, 3, 3, 2, 1]` contains at least one item matching each of the values in `[1, 2, 3, 10]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `[1, 2, 3, 3, 2, 1]` | `($)List` is a variable of type [IList][]<[Int32][]> | +| [Values][Values Property] | `($)Values`, with value `[1, 2, 3, 10]` | `($)Values` is a variable of type [IEnumerable][]<[Int32][]> | +| [Contains Items][ContainsItems Property] | `($)ContainsItems`, with no value | `($)ContainsItems` is a variable that will be set to a [Boolean][] value | + +#### Result + +`[1, 2, 3, 3, 2, 1]` does not contain at least one item matching each of the values in `[1, 2, 3, 10]`; it contains two items with the value `1`, two items with the value `2` and two items with the value `3`, but no items with the value `10`. Therefore, the variable `($)ContainsItems` will be updated to the following: + +```json +false +``` + +*** + +## Properties + +### List + +The [List][List Property] to check whether it contains at least one item matching each of the specified [Values][Values Property]. + +Items are considered matching if they have a value matching one of the specified [Values][Values Property]. + +[List][List Property] can be any [IList][]<[TItem][]>, where [TItem][] represents the type of items in the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)List` with no value | + +### Values + +The [Values][Values Property] to check for matching items. + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [IEnumerable][]<[TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### Contains Items + +The result of the contains items check. + +If [List][List Property] contains at least one item matching each of the specified [Values][Values Property], the specified variable will be set to `true`, otherwise it will be set to `false`. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)ContainsItems` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyNullException][] | Thrown when [List][List Property] or [Values][Values Property] are `null`. | + +## Remarks + +### Item Equality + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +### Empty List + +If [List][List Property] is empty (i.e. `[]`), the variable specified in the [Contains Items][ContainsItems Property] property is set to `false`. + +### Empty Values + +If [Values][Values Property] is empty (i.e. `[]`), the variable specified in the [Contains Items][ContainsItems Property] property is set to `false`. + +### Defining lists using literal syntax + +For information about how to define lists using literal syntax, see [Create a List<TItem>][]. + +### Defining lists using expression syntax + +For information about how to define lists using expression syntax, see [Create a List<TItem>][]. + +### Lists containing items of a single data type vs multiple data types + +For information about the different types of lists, including those that can contain only a single type of item, and those that can contain multiple types of item, see [Lists][]. + +[List Property]: {{< ref "#list" >}} +[Values Property]: {{< ref "#values" >}} +[ContainsItems Property]: {{< ref "#contains-items" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Create a List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[Lists]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Lists" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[Object Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectEquality.MainDoc" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/get-item/_index.md b/content/en/docs/2024.11/Reference/Blocks/Lists/get-item/_index.md new file mode 100644 index 000000000..cb3bb09ff --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/get-item/_index.md @@ -0,0 +1,5 @@ +--- +title: "Get Item(s)" +linkTitle: "Get Item(s)" +description: "Get an item or multiple items from a list." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/get-item/get-item-at-beginning-block-2.md b/content/en/docs/2024.11/Reference/Blocks/Lists/get-item/get-item-at-beginning-block-2.md new file mode 100644 index 000000000..23a5e294c --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/get-item/get-item-at-beginning-block-2.md @@ -0,0 +1,113 @@ +--- +title: "Get Item At Beginning" +linkTitle: "Get Item At Beginning" +description: "Gets the item at the beginning of a List." +--- + +{{< figure src="/blocks/Cortex_Blocks_Lists_GetItem_GetItemAtBeginningBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Lists.GetItem.GetItemAtBeginningBlock`2)

+ +## Description + +Gets the [Item][Item Property] at the beginning of a [List][List Property]. + +## Examples + +### Get the Item at the beginning of a List + +This example will get the item at the beginning of `["Some Text", 1]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `["Some Text", 1]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [Item][Item Property] | `($)Item`, with no value | `($)Item` is a variable that will be set to the type of the item (i.e. [String]) | + +#### Result + +Getting the item at the beginning of `["Some Text", 1]` results in the variable `($)Item` being updated to the following: + +```json +"Some Text" +``` + +*** + +## Properties + +### List + +The [List][List Property] to get the item from. + +[List][List Property] can be any [IList][]<[TItem][]>, where [TItem][] represents the type of items in the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)List` with no value | + +### Item + +The [Item][Item Property] at the beginning of [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [TItem][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyEmptyException][] | Thrown when [List][List Property] contains no items. | +| [PropertyNullException][] | Thrown when [List][List Property] is `null`. | + +## Remarks + +### Defining lists using literal syntax + +For information about how to define lists using literal syntax, see [Create a List<TItem>][]. + +### Defining lists using expression syntax + +For information about how to define lists using expression syntax, see [Create a List<TItem>][]. + +### Lists containing items of a single data type vs multiple data types + +For information about the different types of lists, including those that can contain only a single type of item, and those that can contain multiple types of item, see [Lists][]. + +[List Property]: {{< ref "#list" >}} +[Item Property]: {{< ref "#item" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Create a List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[Lists]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Lists" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/get-item/get-item-at-end-block-2.md b/content/en/docs/2024.11/Reference/Blocks/Lists/get-item/get-item-at-end-block-2.md new file mode 100644 index 000000000..97d639aaa --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/get-item/get-item-at-end-block-2.md @@ -0,0 +1,113 @@ +--- +title: "Get Item At End" +linkTitle: "Get Item At End" +description: "Gets the item at the end of a List." +--- + +{{< figure src="/blocks/Cortex_Blocks_Lists_GetItem_GetItemAtEndBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Lists.GetItem.GetItemAtEndBlock`2)

+ +## Description + +Gets the [Item][Item Property] at the end of a [List][List Property]. + +## Examples + +### Get the Item at the end of a List + +This example will get the item at the end of `["Some Text", 1]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `["Some Text", 1]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [Item][Item Property] | `($)Item`, with no value | `($)Item` is a variable that will be set to the type of the item (i.e. [Int32]) | + +#### Result + +Getting the item at the end of `["Some Text", 1]` results in the variable `($)Item` being updated to the following: + +```json +1 +``` + +*** + +## Properties + +### List + +The [List][List Property] to get the item from. + +[List][List Property] can be any [IList][]<[TItem][]>, where [TItem][] represents the type of items in the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)List` with no value | + +### Item + +The [Item][Item Property] at the end of [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [TItem][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyEmptyException][] | Thrown when [List][List Property] contains no items. | +| [PropertyNullException][] | Thrown when [List][List Property] is `null`. | + +## Remarks + +### Defining lists using literal syntax + +For information about how to define lists using literal syntax, see [Create a List<TItem>][]. + +### Defining lists using expression syntax + +For information about how to define lists using expression syntax, see [Create a List<TItem>][]. + +### Lists containing items of a single data type vs multiple data types + +For information about the different types of lists, including those that can contain only a single type of item, and those that can contain multiple types of item, see [Lists][]. + +[List Property]: {{< ref "#list" >}} +[Item Property]: {{< ref "#item" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Create a List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[Lists]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Lists" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/get-item/get-item-at-index-block-2.md b/content/en/docs/2024.11/Reference/Blocks/Lists/get-item/get-item-at-index-block-2.md new file mode 100644 index 000000000..69d663f1b --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/get-item/get-item-at-index-block-2.md @@ -0,0 +1,157 @@ +--- +title: "Get Item At Index" +linkTitle: "Get Item At Index" +description: "Gets the item at the specified index of a List." +--- + +{{< figure src="/blocks/Cortex_Blocks_Lists_GetItem_GetItemAtIndexBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Lists.GetItem.GetItemAtIndexBlock`2)

+ +## Description + +Gets the [Item][Item Property] at the specified [Index][Index Property] of a [List][List Property]. + +## Examples + +### Get the Item at the first Index (i.e. `0`) of a List + +This example will get the item at index `0` of `["Some Text", 1]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `["Some Text", 1]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [Index][Index Property] | `($)Index`, with value `0` | `($)Index` is a variable of type [Int32][] | +| [Item][Item Property] | `($)Item`, with no value | `($)Item` is a variable that will be set to the type of the item (i.e. [String]) | + +#### Result + +Getting the item at index `0` of `["Some Text", 1]` results in the variable `($)Item` being updated to the following: + +```json +"Some Text" +``` + +*** + +### Get the Item at the last Index (i.e. Index equals count of items - `1`) of a List + +This example will get the item at index `1` of `["Some Text", 1]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `["Some Text", 1]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [Index][Index Property] | `($)Index`, with value `1` | `($)Index` is a variable of type [Int32][] | +| [Item][Item Property] | `($)Item`, with no value | `($)Item` is a variable that will be set to the type of the item (i.e. [Int32]) | + +#### Result + +Getting the item at index `1` of `["Some Text", 1]` results in the variable `($)Item` being updated to the following: + +```json +1 +``` + +*** + +## Properties + +### List + +The [List][List Property] to get the item from. + +[List][List Property] can be any [IList][]<[TItem][]>, where [TItem][] represents the type of items in the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)List` with no value | + +### Index + +The [Index][Index Property] to get the item at. + +Valid values are between and including `0` and the total count of items in the [List][List Property] - `1`. + +For information about what an index is, please see [Indexes][]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `0` | + +### Item + +The [Item][Item Property] at the specified [Index][Index Property] of [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [TItem][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Item` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyNullException][] | Thrown when [List][List Property] is `null`. | +| [PropertyValueOutOfRangeException][] | Thrown when [List][List Property] contains no items. | +| | Thrown when [Index][Index Property] is out of the range of the list indexes. Valid indexes are between and including `0` and the count of items in the [List][List Property] - `1`. | + +## Remarks + +### Defining lists using literal syntax + +For information about how to define lists using literal syntax, see [Create a List<TItem>][]. + +### Defining lists using expression syntax + +For information about how to define lists using expression syntax, see [Create a List<TItem>][]. + +### Lists containing items of a single data type vs multiple data types + +For information about the different types of lists, including those that can contain only a single type of item, and those that can contain multiple types of item, see [Lists][]. + +[List Property]: {{< ref "#list" >}} +[Index Property]: {{< ref "#index" >}} +[Item Property]: {{< ref "#item" >}} + +[Indexes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Indexes.MainDoc" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Create a List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[Lists]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Lists" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[PropertyValueOutOfRangeException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.MainDoc" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/get-item/get-items-at-beginning-block-2.md b/content/en/docs/2024.11/Reference/Blocks/Lists/get-item/get-items-at-beginning-block-2.md new file mode 100644 index 000000000..75dc649e9 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/get-item/get-items-at-beginning-block-2.md @@ -0,0 +1,137 @@ +--- +title: "Get Items At Beginning" +linkTitle: "Get Items At Beginning" +description: "Gets a count of items at the beginning of a List." +--- + +{{< figure src="/blocks/Cortex_Blocks_Lists_GetItem_GetItemsAtBeginningBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Lists.GetItem.GetItemsAtBeginningBlock`2)

+ +## Description + +Gets the specified [Count][Count Property] of [Items][Items Property] at the beginning of a [List][List Property]. + +## Examples + +### Get Count of Items at the beginning of a List + +This example will get `2` items at the beginning of `["Some Text", 1, "Some More Text", 2]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `["Some Text", 1, "Some More Text", 2]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [Count][Count Property] | `($)Count`, with value `2` | `($)Count` is a variable of type [Int32][] | +| [Items][Items Property] | `($)Items`, with no value | `($)Items` is a variable that will be set to an [IList][]<[dynamic][]> value | + +#### Result + +Getting `2` items from the beginning of `["Some Text", 1, "Some More Text", 2]` results in the variable `($)Items` being updated to the following: + +```json +["Some Text", 1] +``` + +*** + +## Properties + +### List + +The [List][List Property] to get the [Items][Items Property] from. + +[List][List Property] can be any [IList][]<[TItem][]>, where [TItem][] represents the type of items in the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)List` with no value | + +### Count + +The [Count][Count Property] of [Items][Items Property] to get. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `-1` | + +### Items + +The [Items][Items Property] at the beginning of [List][List Property]. + +[Items][Items Property] will be in the same order they are defined in [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Items` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyNullException][] | Thrown when [List][List Property] is `null`. | +| [PropertyValueOutOfRangeException][] | Thrown when [Count][Count Property] is greater than the count of items in the [List][List Property] - `1`. | + +## Remarks + +### Negative Count + +If [Count][Count Property] is negative, [Items][Items Property] contains all items in the [List][List Property]. + +### Zero Count + +If [Count][Count Property] is `0`, [Items][Items Property] is set to an empty list (i.e. `[]`). + +### Defining lists using literal syntax + +For information about how to define lists using literal syntax, see [Create a List<TItem>][]. + +### Defining lists using expression syntax + +For information about how to define lists using expression syntax, see [Create a List<TItem>][]. + +### Lists containing items of a single data type vs multiple data types + +For information about the different types of lists, including those that can contain only a single type of item, and those that can contain multiple types of item, see [Lists][]. + +[List Property]: {{< ref "#list" >}} +[Count Property]: {{< ref "#count" >}} +[Items Property]: {{< ref "#items" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Create a List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[Lists]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Lists" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[PropertyValueOutOfRangeException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.MainDoc" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/get-item/get-items-at-end-block-2.md b/content/en/docs/2024.11/Reference/Blocks/Lists/get-item/get-items-at-end-block-2.md new file mode 100644 index 000000000..5ee1c5db0 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/get-item/get-items-at-end-block-2.md @@ -0,0 +1,137 @@ +--- +title: "Get Items At End" +linkTitle: "Get Items At End" +description: "Gets a count of items at the end of a List." +--- + +{{< figure src="/blocks/Cortex_Blocks_Lists_GetItem_GetItemsAtEndBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Lists.GetItem.GetItemsAtEndBlock`2)

+ +## Description + +Gets the specified [Count][Count Property] of [Items][Items Property] at the end of a [List][List Property]. + +## Examples + +### Get Count of Items at the end of a List + +This example will get `2` items at the end of `["Some Text", 1, "Some More Text", 2]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `["Some Text", 1, "Some More Text", 2]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [Count][Count Property] | `($)Count`, with value `2` | `($)Count` is a variable of type [Int32][] | +| [Items][Items Property] | `($)Items`, with no value | `($)Items` is a variable that will be set to an [IList][]<[dynamic][]> value | + +#### Result + +Getting `2` items from the end of `["Some Text", 1, "Some More Text", 2]` results in the variable `($)Items` being updated to the following: + +```json +["Some More Text", 2] +``` + +*** + +## Properties + +### List + +The [List][List Property] to get the [Items][Items Property] from. + +[List][List Property] can be any [IList][]<[TItem][]>, where [TItem][] represents the type of items in the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)List` with no value | + +### Count + +The [Count][Count Property] of [Items][Items Property] to get. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `-1` | + +### Items + +The [Items][Items Property] at the end of [List][List Property]. + +[Items][Items Property] will be in the same order they are defined in [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Items` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyNullException][] | Thrown when [List][List Property] is `null`. | +| [PropertyValueOutOfRangeException][] | Thrown when [Count][Count Property] is greater than the count of items in the [List][List Property] - `1`. | + +## Remarks + +### Negative Count + +If [Count][Count Property] is negative, [Items][Items Property] contains all items in the [List][List Property]. + +### Zero Count + +If [Count][Count Property] is `0`, [Items][Items Property] is set to an empty list (i.e. `[]`). + +### Defining lists using literal syntax + +For information about how to define lists using literal syntax, see [Create a List<TItem>][]. + +### Defining lists using expression syntax + +For information about how to define lists using expression syntax, see [Create a List<TItem>][]. + +### Lists containing items of a single data type vs multiple data types + +For information about the different types of lists, including those that can contain only a single type of item, and those that can contain multiple types of item, see [Lists][]. + +[List Property]: {{< ref "#list" >}} +[Count Property]: {{< ref "#count" >}} +[Items Property]: {{< ref "#items" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Create a List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[Lists]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Lists" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[PropertyValueOutOfRangeException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.MainDoc" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/get-item/get-items-at-index-block-2.md b/content/en/docs/2024.11/Reference/Blocks/Lists/get-item/get-items-at-index-block-2.md new file mode 100644 index 000000000..c48e83d76 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/get-item/get-items-at-index-block-2.md @@ -0,0 +1,162 @@ +--- +title: "Get Items At Index" +linkTitle: "Get Items At Index" +description: "Gets a count of items starting at the specified index of a List." +--- + +{{< figure src="/blocks/Cortex_Blocks_Lists_GetItem_GetItemsAtIndexBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Lists.GetItem.GetItemsAtIndexBlock`2)

+ +## Description + +Gets the specified [Count][Count Property] of [Items][Items Property] starting at the given [Index][Index Property] of a [List][List Property]. + +## Examples + +### Get Count of Items at the first Index (i.e. `0`) of a List + +This example will get `2` items at index `0` of `["Some Text", 1, "Some More Text", 2]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `["Some Text", 1, "Some More Text", 2]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [Index][Index Property] | `($)Index`, with value `0` | `($)Index` is a variable of type [Int32][] | +| [Count][Count Property] | `($)Count`, with value `2` | `($)Count` is a variable of type [Int32][] | +| [Items][Items Property] | `($)Items`, with no value | `($)Items` is a variable that will be set to an [IList][]<[dynamic][]> value | + +#### Result + +Getting `2` items at index `0` of `["Some Text", 1, "Some More Text", 2]` results in the variable `($)Items` being updated to the following: + +```json +["Some Text", 1] +``` + +*** + +## Properties + +### List + +The [List][List Property] to get the [Items][Items Property] from. + +[List][List Property] can be any [IList][]<[TItem][]>, where [TItem][] represents the type of items in the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)List` with no value | + +### Index + +The [Index][Index Property] to get the [Count][Count Property] of [Items][Items Property] at. This is an inclusive index, which means the item at the specified index will be included. + +Valid values are between and including `0` and the total count of items in the [List][List Property] - `1`. + +For information about what an index is, please see [Indexes][]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `0` | + +### Count + +The [Count][Count Property] of [Items][Items Property] to get. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `-1` | + +### Items + +The [Items][Items Property] at the specified [Index][Index Property] of [List][List Property]. + +[Items][Items Property] will be in the same order they are defined in [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Items` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyNullException][] | Thrown when [List][List Property] is `null`. | +| [PropertyValueOutOfRangeException][] | Thrown when [Index][Index Property] is less than `0` or greater than the count of items in [List][List Property] - `1`. | +| | Thrown when [Index][Index Property] + [Count][Count Property] is greater than the count of items in the [List][List Property] - `1`. | + +## Remarks + +### Index is inclusive + +The [Index][Index Property] is an inclusive [index][Indexes], which means the item at the index will be included in [Items][Items Property]. + +### Negative Count + +If [Count][Count Property] is negative, [Items][Items Property] contains all items after and including the item at the specified [Index][Index Property] in the [List][List Property]. + +### Zero Count + +If [Count][Count Property] is `0`, [Items][Items Property] is set to an empty list (i.e. `[]`). + +### Defining lists using literal syntax + +For information about how to define lists using literal syntax, see [Create a List<TItem>][]. + +### Defining lists using expression syntax + +For information about how to define lists using expression syntax, see [Create a List<TItem>][]. + +### Lists containing items of a single data type vs multiple data types + +For information about the different types of lists, including those that can contain only a single type of item, and those that can contain multiple types of item, see [Lists][]. + +[List Property]: {{< ref "#list" >}} +[Index Property]: {{< ref "#index" >}} +[Count Property]: {{< ref "#count" >}} +[Items Property]: {{< ref "#items" >}} + +[Indexes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Indexes.MainDoc" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Create a List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[Lists]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Lists" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[PropertyValueOutOfRangeException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.MainDoc" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/get-item/get-items-at-indexes-block-2.md b/content/en/docs/2024.11/Reference/Blocks/Lists/get-item/get-items-at-indexes-block-2.md new file mode 100644 index 000000000..9ae92f53e --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/get-item/get-items-at-indexes-block-2.md @@ -0,0 +1,139 @@ +--- +title: "Get Items At Indexes" +linkTitle: "Get Items At Indexes" +description: "Gets the items at each of the specified indexes of a List." +--- + +{{< figure src="/blocks/Cortex_Blocks_Lists_GetItem_GetItemsAtIndexesBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Lists.GetItem.GetItemsAtIndexesBlock`2)

+ +## Description + +Gets the [Items][Items Property] at each of the specified [Indexes][Indexes Property] of a [List][List Property]. + +## Examples + +### Get Items at the first and third Indexes (i.e. [`0`, `2`]) of a List + +This example will get items at indexes `0` and `2` of `["Some Text", 1, "Some More Text", 2]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `["Some Text", 1, "Some More Text", 2]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [Indexes][Indexes Property] | `($)Indexes`, with value [`0`, `2`] | `($)Indexes` is a variable of type [IEnumerable][]<[Int32][]> | +| [Items][Items Property] | `($)Items`, with no value | `($)Items` is a variable that will be set to an [IList][]<[dynamic][]> value | + +#### Result + +Getting items at indexes `0` and `2` of `["Some Text", 1, "Some More Text", 2]` results in the variable `($)Items` being updated to the following: + +```json +["Some Text", "Some More Text"] +``` + +*** + +## Properties + +### List + +The [List][List Property] to get the [Items][Items Property] from. + +[List][List Property] can be any [IList][]<[TItem][]>, where [TItem][] represents the type of items in the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)List` with no value | + +### Indexes + +The [Indexes][Indexes Property] of the [Items][Items Property] to get. + +Valid values are between and including `0` and the total count of items in the [List][List Property] - `1`. + +For information about what an index is, please see [Indexes][]. + +| | | +|--------------------|---------------------------| +| Data Type | [IEnumerable][]<[Int32][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | `new List() {}` | + +### Items + +The [Items][Items Property] at the specified [Indexes][Indexes Property] of [List][List Property]. + +[Items][Items Property] will be in the order they are defined in [Indexes][Indexes Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Items` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [DuplicateValueException][] | Thrown when [Indexes][Indexes Property] contains duplicate values. | +| [PropertyNullException][] | Thrown when [List][List Property] or [Indexes][Indexes Property] is `null`. | +| [PropertyValueOutOfRangeException][] | Thrown when [Indexes][Indexes Property] contains no values. | +| | Thrown when any index in [Indexes][Indexes Property] is less than `0` or greater than the count of items in [List][List Property] - `1`. | + +## Remarks + +### Defining lists using literal syntax + +For information about how to define lists using literal syntax, see [Create a List<TItem>][]. + +### Defining lists using expression syntax + +For information about how to define lists using expression syntax, see [Create a List<TItem>][]. + +### Lists containing items of a single data type vs multiple data types + +For information about the different types of lists, including those that can contain only a single type of item, and those that can contain multiple types of item, see [Lists][]. + +[List Property]: {{< ref "#list" >}} +[Indexes Property]: {{< ref "#indexes" >}} +[Items Property]: {{< ref "#items" >}} + +[Indexes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Indexes.MainDoc" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Create a List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[Lists]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Lists" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[DuplicateValueException]: {{< url path="Cortex.Reference.Exceptions.Lists.DuplicateValueException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[PropertyValueOutOfRangeException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.MainDoc" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/_index.md b/content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/_index.md new file mode 100644 index 000000000..233ff40fb --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/_index.md @@ -0,0 +1,5 @@ +--- +title: "Remove Item(s)" +linkTitle: "Remove Item(s)" +description: "Remove an item or multiple items from a list." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-all-items-block-2.md b/content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-all-items-block-2.md new file mode 100644 index 000000000..de5db2ef2 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-all-items-block-2.md @@ -0,0 +1,121 @@ +--- +title: "Remove All Items" +linkTitle: "Remove All Items" +description: "Removes all items from a List." +--- + +{{< figure src="/blocks/Cortex_Blocks_Lists_RemoveItem_RemoveAllItemsBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Lists.RemoveItem.RemoveAllItemsBlock`2)

+ +## Description + +Removes all items from a [List][List Property]. + +## Examples + +### Remove all items from an empty List + +This example will attempt to remove all items from `[]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `[]` | `($)List` is a variable of type [IList][]<[dynamic][]> | + +#### Result + +Attempting to remove all items from `[]` results in no operation, as there is nothing to remove. Therefore, the variable `($)List` remains: + +```json +[] +``` + +*** + +### Remove all items from a List + +This example will remove all items from `["Some Text", 1]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `["Some Text", 1]` | `($)List` is a variable of type [IList][]<[dynamic][]> | + +#### Result + +Removing all items from `["Some Text", 1]` results in the variable `($)List` being updated to the following: + +```json +[] +``` + +*** + +## Properties + +### List + +The [List][List Property] where all items are removed from. + +[List][List Property] can be any [IList][]<[TItem][]>, where [TItem][] represents the type of items that can be removed from the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)List` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [CannotModifyReadOnlyListException][] | Thrown when [List][List Property] is read-only. | +| [PropertyNullException][] | Thrown when [List][List Property] is `null`. | + +## Remarks + +### Empty List + +If [List][List Property] is empty (i.e. `[]`) there is nothing to remove, so no operation is performed. + +### Defining lists using literal syntax + +For information about how to define lists using literal syntax, see [Create a List<TItem>][]. + +### Defining lists using expression syntax + +For information about how to define lists using expression syntax, see [Create a List<TItem>][]. + +### Lists containing items of a single data type vs multiple data types + +For information about the different types of lists, including those that can contain only a single type of item, and those that can contain multiple types of item, see [Lists][]. + +[List Property]: {{< ref "#list" >}} + +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Create a List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[Lists]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Lists" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[CannotModifyReadOnlyListException]: {{< url path="Cortex.Reference.Exceptions.Lists.CannotModifyReadOnlyListException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-duplicate-items-block-2.md b/content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-duplicate-items-block-2.md new file mode 100644 index 000000000..9763d5c85 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-duplicate-items-block-2.md @@ -0,0 +1,153 @@ +--- +title: "Remove Duplicate Items" +linkTitle: "Remove Duplicate Items" +description: "Removes duplicate items from a List." +--- + +{{< figure src="/blocks/Cortex_Blocks_Lists_RemoveItem_RemoveDuplicateItemsBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Lists.RemoveItem.RemoveDuplicateItemsBlock`2)

+ +## Description + +Removes duplicate items from a [List][List Property]. + +## Examples + +### Remove duplicate items from an empty List + +This example will attempt to remove duplicate items from `[]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `[]` | `($)List` is a variable of type [IList][]<[dynamic][]> | + +#### Result + +Attempting to remove duplicate items from `[]` results in no operation, as there is nothing to remove. Therefore, the variable `($)List` remains: + +```json +[] +``` + +*** + +### Remove duplicate items from a List without duplicates + +This example will attempt to remove duplicate items from `["Some Text", 1]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `["Some Text", 1]` | `($)List` is a variable of type [IList][]<[dynamic][]> | + +#### Result + +Attempting to remove duplicate items from `["Some Text", 1]` results in no operation, as there are no duplicates to remove. Therefore, the variable `($)List` remains: + +```json +["Some Text", 1] +``` + +*** + +### Remove duplicate items from a List containing duplicates + +This example will remove duplicate items from `["Some Text", 1, "Some Text", 1]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `["Some Text", 1, "Some Text", 1]` | `($)List` is a variable of type [IList][]<[dynamic][]> | + +#### Result + +Removing duplicate items from `["Some Text", 1, "Some Text", 1]` results in the second occurrences of `"Some Text"` and `1` being removed; with the variable `($)List` being updated to the following: + +```json +["Some Text", 1] +``` + +*** + +## Properties + +### List + +The [List][List Property] where duplicate items are removed from. + +[List][List Property] can be any [IList][]<[TItem][]>, where [TItem][] represents the type of items that can be removed from the [List][List Property]. + +For information and examples of how it is determined whether two items are considered the same, please see [Object Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)List` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [CannotModifyReadOnlyListException][] | Thrown when [List][List Property] is read-only. | +| [PropertyNullException][] | Thrown when [List][List Property] is `null`. | + +## Remarks + +### Empty List + +If [List][List Property] is empty (i.e. `[]`) there is nothing to remove, so no operation is performed. + +### List with no duplicates + +If [List][List Property] does not contain duplicates there is nothing to remove, so no operation is performed. + +### Which duplicates are removed? + +If [List][List Property] contains duplicates, the first occurrences of the duplicated items are kept; all other occurrences are removed. + +### Defining lists using literal syntax + +For information about how to define lists using literal syntax, see [Create a List<TItem>][]. + +### Defining lists using expression syntax + +For information about how to define lists using expression syntax, see [Create a List<TItem>][]. + +### Lists containing items of a single data type vs multiple data types + +For information about the different types of lists, including those that can contain only a single type of item, and those that can contain multiple types of item, see [Lists][]. + +[List Property]: {{< ref "#list" >}} + +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Object Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectEquality.MainDoc" >}} + +[Create a List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[Lists]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Lists" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[CannotModifyReadOnlyListException]: {{< url path="Cortex.Reference.Exceptions.Lists.CannotModifyReadOnlyListException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-item-at-beginning-block-2.md b/content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-item-at-beginning-block-2.md new file mode 100644 index 000000000..f863a6ab9 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-item-at-beginning-block-2.md @@ -0,0 +1,121 @@ +--- +title: "Remove Item At Beginning" +linkTitle: "Remove Item At Beginning" +description: "Removes the item at the beginning of a List." +--- + +{{< figure src="/blocks/Cortex_Blocks_Lists_RemoveItem_RemoveItemAtBeginningBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Lists.RemoveItem.RemoveItemAtBeginningBlock`2)

+ +## Description + +Removes the item at the beginning of a [List][List Property]. + +## Examples + +### Remove the Item at the beginning of an empty List + +This example will attempt to remove the item at the beginning of `[]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `[]` | `($)List` is a variable of type [IList][]<[dynamic][]> | + +#### Result + +Attempting to remove the item at the beginning of `[]` results in no operation, as there is nothing to remove. Therefore, the variable `($)List` remains: + +```json +[] +``` + +*** + +### Remove the Item at the beginning of a List + +This example will remove the item at the beginning of `["Some Text", 1]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `["Some Text", 1]` | `($)List` is a variable of type [IList][]<[dynamic][]> | + +#### Result + +Removing the item at the beginning of `["Some Text", 1]` results in the variable `($)List` being updated to the following: + +```json +[1] +``` + +*** + +## Properties + +### List + +The [List][List Property] where the item is removed from. + +[List][List Property] can be any [IList][]<[TItem][]>, where [TItem][] represents the type of items that can be removed from the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)List` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [CannotModifyReadOnlyListException][] | Thrown when [List][List Property] is read-only. | +| [PropertyNullException][] | Thrown when [List][List Property] is `null`. | + +## Remarks + +### Empty List + +If [List][List Property] is empty (i.e. `[]`) there is nothing to remove, so no operation is performed. + +### Defining lists using literal syntax + +For information about how to define lists using literal syntax, see [Create a List<TItem>][]. + +### Defining lists using expression syntax + +For information about how to define lists using expression syntax, see [Create a List<TItem>][]. + +### Lists containing items of a single data type vs multiple data types + +For information about the different types of lists, including those that can contain only a single type of item, and those that can contain multiple types of item, see [Lists][]. + +[List Property]: {{< ref "#list" >}} + +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Create a List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[Lists]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Lists" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[CannotModifyReadOnlyListException]: {{< url path="Cortex.Reference.Exceptions.Lists.CannotModifyReadOnlyListException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-item-at-end-block-2.md b/content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-item-at-end-block-2.md new file mode 100644 index 000000000..96dc25d90 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-item-at-end-block-2.md @@ -0,0 +1,121 @@ +--- +title: "Remove Item At End" +linkTitle: "Remove Item At End" +description: "Removes the item at the end of a List." +--- + +{{< figure src="/blocks/Cortex_Blocks_Lists_RemoveItem_RemoveItemAtEndBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Lists.RemoveItem.RemoveItemAtEndBlock`2)

+ +## Description + +Removes the item at the end of a [List][List Property]. + +## Examples + +### Remove the Item at the end of an empty List + +This example will attempt to remove the item at the end of `[]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `[]` | `($)List` is a variable of type [IList][]<[dynamic][]> | + +#### Result + +Attempting to remove the item at the end of `[]` results in no operation, as there is nothing to remove. Therefore, the variable `($)List` remains: + +```json +[] +``` + +*** + +### Remove the Item at the end of a List + +This example will remove the item at the end of `["Some Text", 1]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `["Some Text", 1]` | `($)List` is a variable of type [IList][]<[dynamic][]> | + +#### Result + +Removing the item at the end of `["Some Text", 1]` results in the variable `($)List` being updated to the following: + +```json +["Some Text"] +``` + +*** + +## Properties + +### List + +The [List][List Property] where the item is removed from. + +[List][List Property] can be any [IList][]<[TItem][]>, where [TItem][] represents the type of items that can be removed from the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)List` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [CannotModifyReadOnlyListException][] | Thrown when [List][List Property] is read-only. | +| [PropertyNullException][] | Thrown when [List][List Property] is `null`. | + +## Remarks + +### Empty List + +If [List][List Property] is empty (i.e. `[]`) there is nothing to remove, so no operation is performed. + +### Defining lists using literal syntax + +For information about how to define lists using literal syntax, see [Create a List<TItem>][]. + +### Defining lists using expression syntax + +For information about how to define lists using expression syntax, see [Create a List<TItem>][]. + +### Lists containing items of a single data type vs multiple data types + +For information about the different types of lists, including those that can contain only a single type of item, and those that can contain multiple types of item, see [Lists][]. + +[List Property]: {{< ref "#list" >}} + +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Create a List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[Lists]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Lists" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[CannotModifyReadOnlyListException]: {{< url path="Cortex.Reference.Exceptions.Lists.CannotModifyReadOnlyListException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-item-at-index-block-2.md b/content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-item-at-index-block-2.md new file mode 100644 index 000000000..558e0390f --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-item-at-index-block-2.md @@ -0,0 +1,163 @@ +--- +title: "Remove Item At Index" +linkTitle: "Remove Item At Index" +description: "Removes the item at the specified index of a List." +--- + +{{< figure src="/blocks/Cortex_Blocks_Lists_RemoveItem_RemoveItemAtIndexBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Lists.RemoveItem.RemoveItemAtIndexBlock`2)

+ +## Description + +Removes the item at the specified [Index][Index Property] of a [List][List Property]. + +## Examples + +### Remove the Item at the first Index (i.e. `0`) of an empty List + +This example will attempt to remove the item at index `0` of `[]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `[]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [Index][Index Property] | `($)Index`, with value `0` | `($)Index` is a variable of type [Int32][] | + +#### Result + +Attempting to remove the item at index `0` of `[]` results in no operation, as there is nothing to remove. Therefore, the variable `($)List` remains: + +```json +[] +``` + +*** + +### Remove the Item at the first Index (i.e. `0`) of a List + +This example will remove the item at index `0` of `["Some Text", 1]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `["Some Text", 1]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [Index][Index Property] | `($)Index`, with value `0` | `($)Index` is a variable of type [Int32][] | + +#### Result + +Removing the item at index `0` of `["Some Text", 1]` results in the variable `($)List` being updated to the following: + +```json +[1] +``` + +*** + +### Remove the Item at the last Index (i.e. Index equals count of items - `1`) of a List + +This example will remove the item at index `1` of `["Some Text", 1]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `["Some Text", 1]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [Index][Index Property] | `($)Index`, with value `1` | `($)Index` is a variable of type [Int32][] | + +#### Result + +Remove the item at index `1` of `["Some Text", 1]` results in the variable `($)List` being updated to the following: + +```json +["Some Text"] +``` + +*** + +## Properties + +### List + +The [List][List Property] where the item is removed from. + +[List][List Property] can be any [IList][]<[TItem][]>, where [TItem][] represents the type of items that can be removed from the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)List` with no value | + +### Index + +The [Index][Index Property] to remove the item at. + +Valid values are between and including `0` and the total count of items in the [List][List Property] - `1`. + +For information about what an index is, please see [Indexes][]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `0` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [CannotModifyReadOnlyListException][] | Thrown when [List][List Property] is read-only. | +| [PropertyNullException][] | Thrown when [List][List Property] is `null`. | +| [PropertyValueOutOfRangeException][] | Thrown when [Index][Index Property] is out of the range of the list indexes. Valid indexes are between and including `0` and the count of items in the [List][List Property] - `1`. | + +## Remarks + +### Defining lists using literal syntax + +For information about how to define lists using literal syntax, see [Create a List<TItem>][]. + +### Defining lists using expression syntax + +For information about how to define lists using expression syntax, see [Create a List<TItem>][]. + +### Lists containing items of a single data type vs multiple data types + +For information about the different types of lists, including those that can contain only a single type of item, and those that can contain multiple types of item, see [Lists][]. + +[List Property]: {{< ref "#list" >}} +[Index Property]: {{< ref "#index" >}} + +[Indexes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Indexes.MainDoc" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Create a List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[Lists]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Lists" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[CannotModifyReadOnlyListException]: {{< url path="Cortex.Reference.Exceptions.Lists.CannotModifyReadOnlyListException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[PropertyValueOutOfRangeException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.MainDoc" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-item-with-value-block-2.md b/content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-item-with-value-block-2.md new file mode 100644 index 000000000..e63608b42 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-item-with-value-block-2.md @@ -0,0 +1,207 @@ +--- +title: "Remove Item With Value" +linkTitle: "Remove Item With Value" +description: "Removes the specified occurrence of an item matching a value from a List." +--- + +{{< figure src="/blocks/Cortex_Blocks_Lists_RemoveItem_RemoveItemWithValueBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Lists.RemoveItem.RemoveItemWithValueBlock`2)

+ +## Description + +Removes the specified [Occurrence][Occurrence Property] of an item matching a [Value][Value Property] from a [List][List Property]. + +## Examples + +### Remove the first Occurrence of an item matching a Value from an empty List + +This example will attempt to remove the first occurrence of an item matching the value `1` from `[]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `[]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [Value][Value Property] | `($)Value`, with value `1` | `($)Value` is a variable of type [Int32][] | +| [Occurrence][Occurrence Property] | `($)Occurrence`, with value `1` | `($)Occurrence` is a variable of type [Int32][] | + +#### Result + +Attempting to remove the first occurrence of an item matching the value `1` from `[]` results in no operation, as there is nothing to remove. Therefore, the variable `($)List` remains: + +```json +[] +``` + +*** + +### Remove the first Occurrence of an item matching a Value from a List + +This example will attempt to remove the first occurrence of an item matching the value `1` from `[1, 2, 3, 3, 2, 1]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `[1, 2, 3, 3, 2, 1]` | `($)List` is a variable of type [IList][]<[Int32][]> | +| [Value][Value Property] | `($)Value`, with value `1` | `($)Value` is a variable of type [Int32][] | +| [Occurrence][Occurrence Property] | `($)Occurrence`, with value `1` | `($)Occurrence` is a variable of type [Int32][] | + +#### Result + +An [Occurrence][Occurrence Property] of `1` means remove the first occurrence; `2` means second etc. + +Attempting to remove the first occurrence of an item matching the value `1` from `[1, 2, 3, 3, 2, 1]` results in the variable `($)List` being updated to the following: + +```json +[2, 3, 3, 2, 1] +``` + +*** + +### Remove the last Occurrence of an item matching a Value from a List + +This example will attempt to remove the last occurrence of an item matching the value `1` from `[1, 2, 3, 3, 2, 1]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `[1, 2, 3, 3, 2, 1]` | `($)List` is a variable of type [IList][]<[Int32][]> | +| [Value][Value Property] | `($)Value`, with value `1` | `($)Value` is a variable of type [Int32][] | +| [Occurrence][Occurrence Property] | `($)Occurrence`, with value `-1` | `($)Occurrence` is a variable of type [Int32][] | + +#### Result + +An [Occurrence][Occurrence Property] of `-1`, means remove the last occurrence; `-2` means second last etc. + +Attempting to remove the last occurrence of an item matching the value `1` from `[1, 2, 3, 3, 2, 1]` results in the variable `($)List` being updated to the following: + +```json +[1, 2, 3, 3, 2] +``` + +*** + +## Properties + +### List + +The [List][List Property] to remove the specified [Occurrence][Occurrence Property] of matching item from. + +Items are considered matching if they have the specified [Value][Value Property]. + +[List][List Property] can be any [IList][]<[TItem][]>, where [TItem][] represents the type of items that can be removed from the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)List` with no value | + +### Value + +The [Value][Value Property] the item to remove must match. + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [TItem][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### Occurrence + +The [Occurrence][Occurrence Property] of matching item to remove from the [List][List Property]. + +Items are considered matching if they have the specified [Value][Value Property]. + +For information about [supported values][Occurrences] for the [Occurrence][Occurrence Property] property and examples of how it can be used, please see [Occurrences][]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `1` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [CannotModifyReadOnlyListException][] | Thrown when [List][List Property] is read-only. | +| [InvalidPropertyValueException][] | Thrown when [Value][Value Property] is `null` and [List][List Property] only accepts non-nullable value types. See [Value Is Invalid][]. | +| [PropertyNullException][] | Thrown when [List][List Property] is `null`. | + +## Remarks + +### Item Equality + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +### Occurrences + +For information about [supported values][Occurrences] for the [Occurrence][Occurrence Property] property and examples of how it can be used, please see [Occurrences][]. + +### Empty List + +If [List][List Property] is empty (i.e. `[]`) there is nothing to remove, so no operation is performed. + +### No items matching Value, or Occurrence is not present + +If [List][List Property] does not contain items matching the specified [Value][Value Property] or the specified [Occurrence][Occurrence Property] is not present, there is nothing to remove, so no operation is performed. + +### Defining lists using literal syntax + +For information about how to define lists using literal syntax, see [Create a List<TItem>][]. + +### Defining lists using expression syntax + +For information about how to define lists using expression syntax, see [Create a List<TItem>][]. + +### Lists containing items of a single data type vs multiple data types + +For information about the different types of lists, including those that can contain only a single type of item, and those that can contain multiple types of item, see [Lists][]. + +[List Property]: {{< ref "#list" >}} +[Value Property]: {{< ref "#value" >}} +[Occurrence Property]: {{< ref "#occurrence" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Occurrences]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Occurrences.MainDoc" >}} + +[Create a List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[Lists]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Lists" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[Object Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectEquality.MainDoc" >}} + +[CannotModifyReadOnlyListException]: {{< url path="Cortex.Reference.Exceptions.Lists.CannotModifyReadOnlyListException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[InvalidPropertyValueException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.MainDoc" >}} +[Value Is Invalid]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.ValueIsInvalid" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-items-at-beginning-block-2.md b/content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-items-at-beginning-block-2.md new file mode 100644 index 000000000..9b06f2d6f --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-items-at-beginning-block-2.md @@ -0,0 +1,123 @@ +--- +title: "Remove Items At Beginning" +linkTitle: "Remove Items At Beginning" +description: "Removes a count of items from the beginning of a List." +--- + +{{< figure src="/blocks/Cortex_Blocks_Lists_RemoveItem_RemoveItemsAtBeginningBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Lists.RemoveItem.RemoveItemsAtBeginningBlock`2)

+ +## Description + +Removes the specified [Count][Count Property] of items from the beginning of a [List][List Property]. + +## Examples + +### Remove Count of items from the beginning of a List + +This example will remove `2` items from the beginning of `["Some Text", 1, "Some More Text", 2]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `["Some Text", 1, "Some More Text", 2]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [Count][Count Property] | `($)Count`, with value `2` | `($)Count` is a variable of type [Int32][] | + +#### Result + +Removing `2` items from the beginning of `["Some Text", 1, "Some More Text", 2]` results in the variable `($)List` being updated to the following: + +```json +["Some More Text", 2] +``` + +*** + +## Properties + +### List + +The [List][List Property] where the items are removed from. + +[List][List Property] can be any [IList][]<[TItem][]>, where [TItem][] represents the type of items that can be removed from the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)List` with no value | + +### Count + +The [Count][Count Property] of items to remove. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `0` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [CannotModifyReadOnlyListException][] | Thrown when [List][List Property] is read-only. | +| [PropertyNullException][] | Thrown when [List][List Property] is `null`. | +| [PropertyValueOutOfRangeException][] | Thrown when [Count][Count Property] is greater than the count of items in the [List][List Property] - `1`. | + +## Remarks + +### Negative Count + +If [Count][Count Property] is negative all items in the [List][List Property] are removed. + +### Zero Count + +If [Count][Count Property] is `0` there is nothing to remove, so no operation is performed. + +### Defining lists using literal syntax + +For information about how to define lists using literal syntax, see [Create a List<TItem>][]. + +### Defining lists using expression syntax + +For information about how to define lists using expression syntax, see [Create a List<TItem>][]. + +### Lists containing items of a single data type vs multiple data types + +For information about the different types of lists, including those that can contain only a single type of item, and those that can contain multiple types of item, see [Lists][]. + +[List Property]: {{< ref "#list" >}} +[Count Property]: {{< ref "#count" >}} + +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[Create a List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[Lists]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Lists" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[CannotModifyReadOnlyListException]: {{< url path="Cortex.Reference.Exceptions.Lists.CannotModifyReadOnlyListException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[PropertyValueOutOfRangeException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.MainDoc" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-items-at-end-block-2.md b/content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-items-at-end-block-2.md new file mode 100644 index 000000000..7b1f535a6 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-items-at-end-block-2.md @@ -0,0 +1,123 @@ +--- +title: "Remove Items At End" +linkTitle: "Remove Items At End" +description: "Removes a count of items from the end of a List." +--- + +{{< figure src="/blocks/Cortex_Blocks_Lists_RemoveItem_RemoveItemsAtEndBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Lists.RemoveItem.RemoveItemsAtEndBlock`2)

+ +## Description + +Removes the specified [Count][Count Property] of items from the end of a [List][List Property]. + +## Examples + +### Remove Count of items from the end of a List + +This example will remove `2` items from the end of `["Some Text", 1, "Some More Text", 2]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `["Some Text", 1, "Some More Text", 2]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [Count][Count Property] | `($)Count`, with value `2` | `($)Count` is a variable of type [Int32][] | + +#### Result + +Removing `2` items from the end of `["Some Text", 1, "Some More Text", 2]` results in the variable `($)List` being updated to the following: + +```json +["Some Text", 1] +``` + +*** + +## Properties + +### List + +The [List][List Property] where the items are removed from. + +[List][List Property] can be any [IList][]<[TItem][]>, where [TItem][] represents the type of items that can be removed from the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)List` with no value | + +### Count + +The [Count][Count Property] of items to remove. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `0` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [CannotModifyReadOnlyListException][] | Thrown when [List][List Property] is read-only. | +| [PropertyNullException][] | Thrown when [List][List Property] is `null`. | +| [PropertyValueOutOfRangeException][] | Thrown when [Count][Count Property] is greater than the count of items in the [List][List Property] - `1`. | + +## Remarks + +### Negative Count + +If [Count][Count Property] is negative all items in the [List][List Property] are removed. + +### Zero Count + +If [Count][Count Property] is `0` there is nothing to remove, so no operation is performed. + +### Defining lists using literal syntax + +For information about how to define lists using literal syntax, see [Create a List<TItem>][]. + +### Defining lists using expression syntax + +For information about how to define lists using expression syntax, see [Create a List<TItem>][]. + +### Lists containing items of a single data type vs multiple data types + +For information about the different types of lists, including those that can contain only a single type of item, and those that can contain multiple types of item, see [Lists][]. + +[List Property]: {{< ref "#list" >}} +[Count Property]: {{< ref "#count" >}} + +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[Create a List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[Lists]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Lists" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[CannotModifyReadOnlyListException]: {{< url path="Cortex.Reference.Exceptions.Lists.CannotModifyReadOnlyListException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[PropertyValueOutOfRangeException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.MainDoc" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-items-at-index-block-2.md b/content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-items-at-index-block-2.md new file mode 100644 index 000000000..57e59601c --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-items-at-index-block-2.md @@ -0,0 +1,148 @@ +--- +title: "Remove Items At Index" +linkTitle: "Remove Items At Index" +description: "Removes a count of items starting at the specified index of a List." +--- + +{{< figure src="/blocks/Cortex_Blocks_Lists_RemoveItem_RemoveItemsAtIndexBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Lists.RemoveItem.RemoveItemsAtIndexBlock`2)

+ +## Description + +Removes the specified [Count][Count Property] of items starting at the given [Index][Index Property] of a [List][List Property]. + +## Examples + +### Remove Count of items at the first Index (i.e. `0`) of a List + +This example will remove `2` items at index `0` of `["Some Text", 1, "Some More Text", 2]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `["Some Text", 1, "Some More Text", 2]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [Index][Index Property] | `($)Index`, with value `0` | `($)Index` is a variable of type [Int32][] | +| [Count][Count Property] | `($)Count`, with value `2` | `($)Count` is a variable of type [Int32][] | + +#### Result + +Removing `2` items at index `0` of `["Some Text", 1, "Some More Text", 2]` results in the variable `($)List` being updated to the following: + +```json +["Some More Text", 2] +``` + +*** + +## Properties + +### List + +The [List][List Property] where the items are removed from. + +[List][List Property] can be any [IList][]<[TItem][]>, where [TItem][] represents the type of items that can be removed from the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)List` with no value | + +### Index + +The [Index][Index Property] to remove the [Count][Count Property] of items at. This is an inclusive index, which means the item at the specified index will be included. + +Valid values are between and including `0` and the total count of items in the [List][List Property] - `1`. + +For information about what an index is, please see [Indexes][]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `0` | + +### Count + +The [Count][Count Property] of items to remove. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `0` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [CannotModifyReadOnlyListException][] | Thrown when [List][List Property] is read-only. | +| [PropertyNullException][] | Thrown when [List][List Property] is `null`. | +| [PropertyValueOutOfRangeException][] | Thrown when [Index][Index Property] is less than `0` or greater than the count of items in [List][List Property] - `1`. | +| | Thrown when [Index][Index Property] + [Count][Count Property] is greater than the count of items in the [List][List Property] - `1`. | + +## Remarks + +### Index is inclusive + +The [Index][Index Property] is an inclusive [index][Indexes], which means the item at the index will be included in the removed items. + +### Negative Count + +If [Count][Count Property] is negative all items after and including the specified [Index][Index property] in the [List][List Property] are removed. + +### Zero Count + +If [Count][Count Property] is `0` there is nothing to remove, so no operation is performed. + +### Defining lists using literal syntax + +For information about how to define lists using literal syntax, see [Create a List<TItem>][]. + +### Defining lists using expression syntax + +For information about how to define lists using expression syntax, see [Create a List<TItem>][]. + +### Lists containing items of a single data type vs multiple data types + +For information about the different types of lists, including those that can contain only a single type of item, and those that can contain multiple types of item, see [Lists][]. + +[List Property]: {{< ref "#list" >}} +[Index Property]: {{< ref "#index" >}} +[Count Property]: {{< ref "#count" >}} + +[Indexes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Indexes.MainDoc" >}} + +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[Create a List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[Lists]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Lists" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[CannotModifyReadOnlyListException]: {{< url path="Cortex.Reference.Exceptions.Lists.CannotModifyReadOnlyListException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[PropertyValueOutOfRangeException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.MainDoc" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-items-at-indexes-block-2.md b/content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-items-at-indexes-block-2.md new file mode 100644 index 000000000..5ae474585 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-items-at-indexes-block-2.md @@ -0,0 +1,125 @@ +--- +title: "Remove Items At Indexes" +linkTitle: "Remove Items At Indexes" +description: "Removes the items at each of the specified indexes of a List." +--- + +{{< figure src="/blocks/Cortex_Blocks_Lists_RemoveItem_RemoveItemsAtIndexesBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Lists.RemoveItem.RemoveItemsAtIndexesBlock`2)

+ +## Description + +Removes the items at each of the specified [Indexes][Indexes Property] of a [List][List Property]. + +## Examples + +### Remove items at the first and third Indexes (i.e. [`0`, `2`]) of a List + +This example will remove items at indexes `0` and `2` of `["Some Text", 1, "Some More Text", 2]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `["Some Text", 1, "Some More Text", 2]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [Indexes][Indexes Property] | `($)Indexes`, with value [`0`, `2`] | `($)Indexes` is a variable of type [IEnumerable][]<[Int32][]> | + +#### Result + +Removing items at indexes `0` and `2` of `["Some Text", 1, "Some More Text", 2]` results in the variable `($)List` being updated to the following: + +```json +[1, 2] +``` + +*** + +## Properties + +### List + +The [List][List Property] where the items are removed from. + +[List][List Property] can be any [IList][]<[TItem][]>, where [TItem][] represents the type of items that can be removed from the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)List` with no value | + +### Indexes + +The [Indexes][Indexes Property] of the items to remove. + +Valid values are between and including `0` and the total count of items in the [List][List Property] - `1`. + +For information about what an index is, please see [Indexes][]. + +| | | +|--------------------|---------------------------| +| Data Type | [IEnumerable][]<[Int32][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | `new List() {}` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [CannotModifyReadOnlyListException][] | Thrown when [List][List Property] is read-only. | +| [DuplicateValueException][] | Thrown when [Indexes][Indexes Property] contains duplicate values. | +| [PropertyNullException][] | Thrown when [List][List Property] or [Indexes][Indexes Property] is `null`. | +| [PropertyValueOutOfRangeException][] | Thrown when [Indexes][Indexes Property] contains no values. | +| | Thrown when any index in [Indexes][Indexes Property] is less than `0` or greater than the count of items in [List][List Property] - `1`. | + +## Remarks + +### Defining lists using literal syntax + +For information about how to define lists using literal syntax, see [Create a List<TItem>][]. + +### Defining lists using expression syntax + +For information about how to define lists using expression syntax, see [Create a List<TItem>][]. + +### Lists containing items of a single data type vs multiple data types + +For information about the different types of lists, including those that can contain only a single type of item, and those that can contain multiple types of item, see [Lists][]. + +[List Property]: {{< ref "#list" >}} +[Indexes Property]: {{< ref "#indexes" >}} + +[Indexes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Indexes.MainDoc" >}} + +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[Create a List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[Lists]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Lists" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[CannotModifyReadOnlyListException]: {{< url path="Cortex.Reference.Exceptions.Lists.CannotModifyReadOnlyListException.MainDoc" >}} +[DuplicateValueException]: {{< url path="Cortex.Reference.Exceptions.Lists.DuplicateValueException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[PropertyValueOutOfRangeException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.MainDoc" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-items-with-value-block-2.md b/content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-items-with-value-block-2.md new file mode 100644 index 000000000..f64d98740 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-items-with-value-block-2.md @@ -0,0 +1,156 @@ +--- +title: "Remove Items With Value" +linkTitle: "Remove Items With Value" +description: "Removes all items matching a value from a List." +--- + +{{< figure src="/blocks/Cortex_Blocks_Lists_RemoveItem_RemoveItemsWithValueBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Lists.RemoveItem.RemoveItemsWithValueBlock`2)

+ +## Description + +Removes all items matching a [Value][Value Property] from a [List][List Property]. + +## Examples + +### Remove all items matching a Value from an empty List + +This example will attempt to remove all items matching the value `1` from `[]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `[]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [Value][Value Property] | `($)Value`, with value `1` | `($)Value` is a variable of type [Int32][] | + +#### Result + +Attempting to remove all items matching the value `1` from `[]` results in no operation, as there is nothing to remove. Therefore, the variable `($)List` remains: + +```json +[] +``` + +*** + +### Remove all items matching a Value from a List + +This example will attempt to remove all items matching the value `1` from `[1, 2, 3, 3, 2, 1]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `[1, 2, 3, 3, 2, 1]` | `($)List` is a variable of type [IList][]<[Int32][]> | +| [Value][Value Property] | `($)Value`, with value `1` | `($)Value` is a variable of type [Int32][] | + +#### Result + +Attempting to remove all items matching the value `1` from `[1, 2, 3, 3, 2, 1]` results in the variable `($)List` being updated to the following: + +```json +[2, 3, 3, 2] +``` + +*** + +## Properties + +### List + +The [List][List Property] to remove all matching items from. + +Items are considered matching if they have the specified [Value][Value Property]. + +[List][List Property] can be any [IList][]<[TItem][]>, where [TItem][] represents the type of items that can be removed from the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)List` with no value | + +### Value + +The [Value][Value Property] the items to remove must match. + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [TItem][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [CannotModifyReadOnlyListException][] | Thrown when [List][List Property] is read-only. | +| [InvalidPropertyValueException][] | Thrown when [Value][Value Property] is `null` and [List][List Property] only accepts non-nullable value types. See [Value Is Invalid][]. | +| [PropertyNullException][] | Thrown when [List][List Property] is `null`. | + +## Remarks + +### Item Equality + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +### Empty List + +If [List][List Property] is empty (i.e. `[]`) there is nothing to remove, so no operation is performed. + +### No items matching Value + +If [List][List Property] does not contain items matching the specified [Value][Value Property], there is nothing to remove, so no operation is performed. + +### Defining lists using literal syntax + +For information about how to define lists using literal syntax, see [Create a List<TItem>][]. + +### Defining lists using expression syntax + +For information about how to define lists using expression syntax, see [Create a List<TItem>][]. + +### Lists containing items of a single data type vs multiple data types + +For information about the different types of lists, including those that can contain only a single type of item, and those that can contain multiple types of item, see [Lists][]. + +[List Property]: {{< ref "#list" >}} +[Value Property]: {{< ref "#value" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Create a List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[Lists]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Lists" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[Object Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectEquality.MainDoc" >}} + +[CannotModifyReadOnlyListException]: {{< url path="Cortex.Reference.Exceptions.Lists.CannotModifyReadOnlyListException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[InvalidPropertyValueException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.MainDoc" >}} +[Value Is Invalid]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.ValueIsInvalid" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-items-with-values-block-2.md b/content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-items-with-values-block-2.md new file mode 100644 index 000000000..407501cf9 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/remove-item/remove-items-with-values-block-2.md @@ -0,0 +1,161 @@ +--- +title: "Remove Items With Values" +linkTitle: "Remove Items With Values" +description: "Removes all items matching one of the specified values from a List." +--- + +{{< figure src="/blocks/Cortex_Blocks_Lists_RemoveItem_RemoveItemsWithValuesBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Lists.RemoveItem.RemoveItemsWithValuesBlock`2)

+ +## Description + +Removes all items matching one of the specified [Values][Values Property] from a [List][List Property]. + +## Examples + +### Remove all items matching one of the specified Values from an empty List + +This example will attempt to remove all items matching one of the values `[1, 2]` from `[]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `[]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [Values][Values Property] | `($)Values`, with value `[1, 2]` | `($)Values` is a variable of type [IEnumerable][]<[Int32][]> | + +#### Result + +Attempting to remove all items matching one of the values `[1, 2]` from `[]` results in no operation, as there is nothing to remove. Therefore, the variable `($)List` remains: + +```json +[] +``` + +*** + +### Remove all items matching one of the specified Values from a List + +This example will attempt to remove all items matching one of the values `[1, 2]` from `[1, 2, 3, 3, 2, 1]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `[1, 2, 3, 3, 2, 1]` | `($)List` is a variable of type [IList][]<[Int32][]> | +| [Values][Values Property] | `($)Values`, with value `[1, 2]` | `($)Values` is a variable of type [IEnumerable][]<[Int32][]> | + +#### Result + +Attempting to remove all items matching one of the values `[1, 2]` from `[1, 2, 3, 3, 2, 1]` results in the variable `($)List` being updated to the following: + +```json +[3, 3] +``` + +*** + +## Properties + +### List + +The [List][List Property] to remove all matching items from. + +Items are considered matching if they have one of the specified [Values][Values Property]. + +[List][List Property] can be any [IList][]<[TItem][]>, where [TItem][] represents the type of items that can be removed from the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)List` with no value | + +### Values + +The [Values][Values Property] the items to remove must match one of. + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [IEnumerable][]<[TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [CannotModifyReadOnlyListException][] | Thrown when [List][List Property] is read-only. | +| [PropertyNullException][] | Thrown when [List][List Property] or [Values][Values Property] is `null`. | + +## Remarks + +### Item Equality + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +### Empty List + +If [List][List Property] is empty (i.e. `[]`) there is nothing to remove, so no operation is performed. + +### Empty Values + +If [Values][Values Property] is empty (i.e. `[]`) there are no values to match, therefore nothing can be removed and no operation is performed. + +### No items matching a specified value in Values + +If [List][List Property] does not contain items matching one of the specified [Values][Values Property], there is nothing to remove for that value. + +### No items matching Values + +If [List][List Property] does not contain items matching any of the specified [Values][Values Property], there is nothing to remove, so no operation is performed. + +### Defining lists using literal syntax + +For information about how to define lists using literal syntax, see [Create a List<TItem>][]. + +### Defining lists using expression syntax + +For information about how to define lists using expression syntax, see [Create a List<TItem>][]. + +### Lists containing items of a single data type vs multiple data types + +For information about the different types of lists, including those that can contain only a single type of item, and those that can contain multiple types of item, see [Lists][]. + +[List Property]: {{< ref "#list" >}} +[Values Property]: {{< ref "#values" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Create a List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[Lists]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Lists" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[Object Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectEquality.MainDoc" >}} + +[CannotModifyReadOnlyListException]: {{< url path="Cortex.Reference.Exceptions.Lists.CannotModifyReadOnlyListException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/set-item/_index.md b/content/en/docs/2024.11/Reference/Blocks/Lists/set-item/_index.md new file mode 100644 index 000000000..1a848c4be --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/set-item/_index.md @@ -0,0 +1,5 @@ +--- +title: "Set Item(s)" +linkTitle: "Set Item(s)" +description: "Set an item or multiple items in a list to a new value." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-all-items-block-2.md b/content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-all-items-block-2.md new file mode 100644 index 000000000..0c6cde53a --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-all-items-block-2.md @@ -0,0 +1,122 @@ +--- +title: "Set All Items" +linkTitle: "Set All Items" +description: "Sets all items in a List to a new value." +--- + +{{< figure src="/blocks/Cortex_Blocks_Lists_SetItem_SetAllItemsBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Lists.SetItem.SetAllItemsBlock`2)

+ +## Description + +Sets all items in a [List][List Property] to a [New Value][NewValue Property]. + +## Examples + +### Set all items in a List to a New Value + +This example will set all items in `["Some Text", 1]` to `"New Value"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `["Some Text", 1]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [New Value][NewValue Property] | `($)NewValue`, with value `"New Value"` | `($)NewValue` is a variable of type [String] | + +#### Result + +Setting all items in `["Some Text", 1]` to `"New Value"` results in the variable `($)List` being updated to the following: + +```json +["New Value", "New Value"] +``` + +*** + +## Properties + +### List + +The [List][List Property] to set all items in. + +[List][List Property] can be any [IList][]<[TItem][]>, where [TItem][] represents the type of items in the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)List` with no value | + +### New Value + +The [New Value][NewValue Property] to set all items in [List][List Property] to. + +| | | +|--------------------|---------------------------| +| Data Type | [TItem][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|-------------| +| [CannotModifyReadOnlyListException][] | Thrown when [List][List Property] is read-only. | +| [InvalidPropertyValueException][] | Thrown when [New Value][NewValue Property] is `null` and [List][List Property] only accepts non-nullable value types. See [Value Is Invalid][]. | +| [PropertyNullException][] | Thrown when [List][List Property] is `null`. | + +## Remarks + +### Empty List + +If [List][List Property] is empty (i.e. `[]`) there is nothing to set, so no operation is performed. + +### Defining lists using literal syntax + +For information about how to define lists using literal syntax, see [Create a List<TItem>][]. + +### Defining lists using expression syntax + +For information about how to define lists using expression syntax, see [Create a List<TItem>][]. + +### Lists containing items of a single data type vs multiple data types + +For information about the different types of lists, including those that can contain only a single type of item, and those that can contain multiple types of item, see [Lists][]. + +[List Property]: {{< ref "#list" >}} +[NewValue Property]: {{< ref "#new-value" >}} + +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[Create a List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[Lists]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Lists" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[CannotModifyReadOnlyListException]: {{< url path="Cortex.Reference.Exceptions.Lists.CannotModifyReadOnlyListException.MainDoc" >}} + +[InvalidPropertyValueException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.MainDoc" >}} +[Value Is Invalid]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.ValueIsInvalid" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-item-at-beginning-block-2.md b/content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-item-at-beginning-block-2.md new file mode 100644 index 000000000..4dcfab374 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-item-at-beginning-block-2.md @@ -0,0 +1,120 @@ +--- +title: "Set Item At Beginning" +linkTitle: "Set Item At Beginning" +description: "Sets the item at the beginning of a List to a new value." +--- + +{{< figure src="/blocks/Cortex_Blocks_Lists_SetItem_SetItemAtBeginningBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Lists.SetItem.SetItemAtBeginningBlock`2)

+ +## Description + +Sets the item at the beginning of a [List][List Property] to a [New Value][NewValue Property]. + +## Examples + +### Set the item at the beginning of a List to a New Value + +This example will set the item at the beginning of `["Some Text", 1]` to `"Some Modified Text"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `["Some Text", 1]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [New Value][NewValue Property] | `($)NewValue`, with value `"Some Modified Text"` | `($)NewValue` is a variable of type [String] | + +#### Result + +Setting the item at the beginning of `["Some Text", 1]` to `"Some Modified Text"` results in the variable `($)List` being updated to the following: + +```json +["Some Modified Text", 1] +``` + +*** + +## Properties + +### List + +The [List][List Property] to set the item in. + +[List][List Property] can be any [IList][]<[TItem][]>, where [TItem][] represents the type of items in the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)List` with no value | + +### New Value + +The [New Value][NewValue Property] to set the item at the beginning of [List][List Property] to. + +| | | +|--------------------|---------------------------| +| Data Type | [TItem][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|-------------| +| [CannotModifyReadOnlyListException][] | Thrown when [List][List Property] is read-only. | +| [InvalidPropertyValueException][] | Thrown when [New Value][NewValue Property] is `null` and [List][List Property] only accepts non-nullable value types. See [Value Is Invalid][]. | +| [PropertyEmptyException][] | Thrown when [List][List Property] contains no items. | +| [PropertyNullException][] | Thrown when [List][List Property] is `null`. | + +## Remarks + +### Defining lists using literal syntax + +For information about how to define lists using literal syntax, see [Create a List<TItem>][]. + +### Defining lists using expression syntax + +For information about how to define lists using expression syntax, see [Create a List<TItem>][]. + +### Lists containing items of a single data type vs multiple data types + +For information about the different types of lists, including those that can contain only a single type of item, and those that can contain multiple types of item, see [Lists][]. + +[List Property]: {{< ref "#list" >}} +[NewValue Property]: {{< ref "#new-value" >}} + +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[Create a List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[Lists]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Lists" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[CannotModifyReadOnlyListException]: {{< url path="Cortex.Reference.Exceptions.Lists.CannotModifyReadOnlyListException.MainDoc" >}} + +[InvalidPropertyValueException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.MainDoc" >}} +[Value Is Invalid]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.ValueIsInvalid" >}} + +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-item-at-end-block-2.md b/content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-item-at-end-block-2.md new file mode 100644 index 000000000..10c267ac4 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-item-at-end-block-2.md @@ -0,0 +1,120 @@ +--- +title: "Set Item At End" +linkTitle: "Set Item At End" +description: "Sets the item at the end of a List to a new value." +--- + +{{< figure src="/blocks/Cortex_Blocks_Lists_SetItem_SetItemAtEndBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Lists.SetItem.SetItemAtEndBlock`2)

+ +## Description + +Sets the item at the end of a [List][List Property] to a [New Value][NewValue Property]. + +## Examples + +### Set the item at the end of a List to a New Value + +This example will set the item at the end of `["Some Text", 1]` to `10`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `["Some Text", 1]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [New Value][NewValue Property] | `($)NewValue`, with value `10` | `($)NewValue` is a variable of type [Int32] | + +#### Result + +Setting the item at the end of `["Some Text", 1]` to `10` results in the variable `($)List` being updated to the following: + +```json +["Some Text", 10] +``` + +*** + +## Properties + +### List + +The [List][List Property] to set the item in. + +[List][List Property] can be any [IList][]<[TItem][]>, where [TItem][] represents the type of items in the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)List` with no value | + +### New Value + +The [New Value][NewValue Property] to set the item at the end of [List][List Property] to. + +| | | +|--------------------|---------------------------| +| Data Type | [TItem][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|-------------| +| [CannotModifyReadOnlyListException][] | Thrown when [List][List Property] is read-only. | +| [InvalidPropertyValueException][] | Thrown when [New Value][NewValue Property] is `null` and [List][List Property] only accepts non-nullable value types. See [Value Is Invalid][]. | +| [PropertyEmptyException][] | Thrown when [List][List Property] contains no items. | +| [PropertyNullException][] | Thrown when [List][List Property] is `null`. | + +## Remarks + +### Defining lists using literal syntax + +For information about how to define lists using literal syntax, see [Create a List<TItem>][]. + +### Defining lists using expression syntax + +For information about how to define lists using expression syntax, see [Create a List<TItem>][]. + +### Lists containing items of a single data type vs multiple data types + +For information about the different types of lists, including those that can contain only a single type of item, and those that can contain multiple types of item, see [Lists][]. + +[List Property]: {{< ref "#list" >}} +[NewValue Property]: {{< ref "#new-value" >}} + +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[Create a List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[Lists]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Lists" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[CannotModifyReadOnlyListException]: {{< url path="Cortex.Reference.Exceptions.Lists.CannotModifyReadOnlyListException.MainDoc" >}} + +[InvalidPropertyValueException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.MainDoc" >}} +[Value Is Invalid]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.ValueIsInvalid" >}} + +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-item-at-index-block-2.md b/content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-item-at-index-block-2.md new file mode 100644 index 000000000..4aca09744 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-item-at-index-block-2.md @@ -0,0 +1,163 @@ +--- +title: "Set Item At Index" +linkTitle: "Set Item At Index" +description: "Sets the item at the specified index of a List to a new value." +--- + +{{< figure src="/blocks/Cortex_Blocks_Lists_SetItem_SetItemAtIndexBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Lists.SetItem.SetItemAtIndexBlock`2)

+ +## Description + +Sets the item at the specified [Index][Index Property] of a [List][List Property] to a [New Value][NewValue Property]. + +## Examples + +### Set the Item at the first Index (i.e. `0`) of a List to a New Value + +This example will set the item at index `0` of `["Some Text", 1]` to `10`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `["Some Text", 1]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [New Value][NewValue Property] | `($)NewValue`, with value `10` | `($)NewValue` is a variable of type [Int32] | +| [Index][Index Property] | `($)Index`, with value `0` | `($)Index` is a variable of type [Int32][] | + +#### Result + +Setting the item at index `0` of `["Some Text", 1]` to `10` results in the variable `($)List` being updated to the following: + +```json +[10, 1] +``` + +*** + +### Set the Item at the last Index (i.e. Index equals count of items - `1`) of a List + +This example will set the item at index `1` of `["Some Text", 1]` to `10`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `["Some Text", 1]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [New Value][NewValue Property] | `($)NewValue`, with value `10` | `($)NewValue` is a variable of type [Int32] | +| [Index][Index Property] | `($)Index`, with value `1` | `($)Index` is a variable of type [Int32][] | + +#### Result + +Setting the item at index `1` of `["Some Text", 1]` to `10` results in the variable `($)List` being updated to the following: + +```json +["Some Text", 10] +``` + +*** + +## Properties + +### List + +The [List][List Property] to set the item in. + +[List][List Property] can be any [IList][]<[TItem][]>, where [TItem][] represents the type of items in the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)List` with no value | + +### New Value + +The [New Value][NewValue Property] to set the item at the specified [Index][Index Property] of [List][List Property] to. + +| | | +|--------------------|---------------------------| +| Data Type | [TItem][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### Index + +The [Index][Index Property] to set the item at. + +Valid values are between and including `0` and the total count of items in the [List][List Property] - `1`. + +For information about what an index is, please see [Indexes][]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `0` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|-------------| +| [CannotModifyReadOnlyListException][] | Thrown when [List][List Property] is read-only. | +| [InvalidPropertyValueException][] | Thrown when [New Value][NewValue Property] is `null` and [List][List Property] only accepts non-nullable value types. See [Value Is Invalid][]. | +| [PropertyNullException][] | Thrown when [List][List Property] is `null`. | +| [PropertyValueOutOfRangeException][] | Thrown when [List][List Property] contains no items. | +| | Thrown when [Index][Index Property] is out of the range of the list indexes. Valid indexes are between and including `0` and the count of items in the [List][List Property] - `1`. | + +## Remarks + +### Defining lists using literal syntax + +For information about how to define lists using literal syntax, see [Create a List<TItem>][]. + +### Defining lists using expression syntax + +For information about how to define lists using expression syntax, see [Create a List<TItem>][]. + +### Lists containing items of a single data type vs multiple data types + +For information about the different types of lists, including those that can contain only a single type of item, and those that can contain multiple types of item, see [Lists][]. + +[List Property]: {{< ref "#list" >}} +[NewValue Property]: {{< ref "#new-value" >}} +[Index Property]: {{< ref "#index" >}} + +[Indexes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Indexes.MainDoc" >}} + +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[Create a List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[Lists]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Lists" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[CannotModifyReadOnlyListException]: {{< url path="Cortex.Reference.Exceptions.Lists.CannotModifyReadOnlyListException.MainDoc" >}} + +[InvalidPropertyValueException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.MainDoc" >}} +[Value Is Invalid]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.ValueIsInvalid" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[PropertyValueOutOfRangeException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.MainDoc" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-item-with-value-block-2.md b/content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-item-with-value-block-2.md new file mode 100644 index 000000000..f4f278cbd --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-item-with-value-block-2.md @@ -0,0 +1,200 @@ +--- +title: "Set Item With Value" +linkTitle: "Set Item With Value" +description: "Sets the specified occurrence of an item matching a value in a List to a new value." +--- + +{{< figure src="/blocks/Cortex_Blocks_Lists_SetItem_SetItemsWithValueBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Lists.SetItem.SetItemWithValueBlock`2)

+ +## Description + +Sets the specified [Occurrence][Occurrence Property] of an item matching a [Value][Value Property] in a [List][List Property] to a [New Value][NewValue Property]. + +## Examples + +### Set the first Occurrence of an item matching a Value in a List to a New Value + +This example will attempt to set the first occurrence of an item matching the value `1` in `[1, 2, 3, 3, 2, 1]` to `10`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `[1, 2, 3, 3, 2, 1]` | `($)List` is a variable of type [IList][]<[Int32][]> | +| [Value][Value Property] | `($)Value`, with value `1` | `($)Value` is a variable of type [Int32][] | +| [New Value][NewValue Property] | `($)NewValue`, with value `10` | `($)NewValue` is a variable of type [Int32][] | +| [Occurrence][Occurrence Property] | `($)Occurrence`, with value `1` | `($)Occurrence` is a variable of type [Int32][] | + +#### Result + +An [Occurrence][Occurrence Property] of `1` means set the first occurrence; `2` means second etc. + +Attempting to set the first occurrence of an item matching the value `1` in `[1, 2, 3, 3, 2, 1]` to `10` results in the variable `($)List` being updated to the following: + +```json +[10, 2, 3, 3, 2, 1] +``` + +*** + +### Set the last Occurrence of an item matching a Value in a List to a New Value + +This example will attempt to set the last occurrence of an item matching the value `1` in `[1, 2, 3, 3, 2, 1]` to `10`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `[1, 2, 3, 3, 2, 1]` | `($)List` is a variable of type [IList][]<[Int32][]> | +| [Value][Value Property] | `($)Value`, with value `1` | `($)Value` is a variable of type [Int32][] | +| [New Value][NewValue Property] | `($)NewValue`, with value `10` | `($)NewValue` is a variable of type [Int32][] | +| [Occurrence][Occurrence Property] | `($)Occurrence`, with value `-1` | `($)Occurrence` is a variable of type [Int32][] | + +#### Result + +An [Occurrence][Occurrence Property] of `-1`, means set the last occurrence; `-2` means second last etc. + +Attempting to set the last occurrence of an item matching the value `1` in `[1, 2, 3, 3, 2, 1]` to `10` results in the variable `($)List` being updated to the following: + +```json +[1, 2, 3, 3, 2, 10] +``` + +*** + +## Properties + +### List + +The [List][List Property] to set the specified [Occurrence][Occurrence Property] of matching item in. + +Items are considered matching if they have the specified [Value][Value Property]. + +[List][List Property] can be any [IList][]<[TItem][]>, where [TItem][] represents the type of items in the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)List` with no value | + +### Value + +The [Value][Value Property] the item to set must match. + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [TItem][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### New Value + +The [New Value][NewValue Property] to set the specified [Occurrence][Occurrence Property] of matching item in [List][List Property] to. + +| | | +|--------------------|---------------------------| +| Data Type | [TItem][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### Occurrence + +The [Occurrence][Occurrence Property] of matching item to set in the [List][List Property]. + +Items are considered matching if they have the specified [Value][Value Property]. + +For information about [supported values][Occurrences] for the [Occurrence][Occurrence Property] property and examples of how it can be used, please see [Occurrences][]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `1` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [CannotModifyReadOnlyListException][] | Thrown when [List][List Property] is read-only. | +| [InvalidPropertyValueException][] | Thrown when [Value][Value Property] or [New Value][NewValue Property] are `null` and [List][List Property] only accepts non-nullable value types. See [Value Is Invalid][]. | +| [PropertyNullException][] | Thrown when [List][List Property] is `null`. | + +## Remarks + +### Item Equality + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +### Occurrences + +For information about [supported values][Occurrences] for the [Occurrence][Occurrence Property] property and examples of how it can be used, please see [Occurrences][]. + +### Empty List + +If [List][List Property] is empty (i.e. `[]`) there is nothing to set, so no operation is performed. + +### No items matching Value, or Occurrence is not present + +If [List][List Property] does not contain items matching the specified [Value][Value Property] or the specified [Occurrence][Occurrence Property] is not present, there is nothing to set, so no operation is performed. + +### Defining lists using literal syntax + +For information about how to define lists using literal syntax, see [Create a List<TItem>][]. + +### Defining lists using expression syntax + +For information about how to define lists using expression syntax, see [Create a List<TItem>][]. + +### Lists containing items of a single data type vs multiple data types + +For information about the different types of lists, including those that can contain only a single type of item, and those that can contain multiple types of item, see [Lists][]. + +[List Property]: {{< ref "#list" >}} +[Value Property]: {{< ref "#value" >}} +[NewValue Property]: {{< ref "#new-value" >}} +[Occurrence Property]: {{< ref "#occurrence" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Occurrences]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Occurrences.MainDoc" >}} + +[Create a List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[Lists]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Lists" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[Object Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectEquality.MainDoc" >}} + +[CannotModifyReadOnlyListException]: {{< url path="Cortex.Reference.Exceptions.Lists.CannotModifyReadOnlyListException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[InvalidPropertyValueException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.MainDoc" >}} +[Value Is Invalid]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.ValueIsInvalid" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-items-at-beginning-block-2.md b/content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-items-at-beginning-block-2.md new file mode 100644 index 000000000..c7636b076 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-items-at-beginning-block-2.md @@ -0,0 +1,123 @@ +--- +title: "Set Items At Beginning" +linkTitle: "Set Items At Beginning" +description: "Sets the items at the beginning of a List to new values." +--- + +{{< figure src="/blocks/Cortex_Blocks_Lists_SetItem_SetItemsAtBeginningBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Lists.SetItem.SetItemsAtBeginningBlock`2)

+ +## Description + +Sets the items at the beginning of a [List][List Property] to [New Values][NewValues Property]. + +## Examples + +### Set the items at the beginning of a List to New Values + +This example will set the first and second items at the beginning of `["Some Text", 1, "Some More Text", 2]` to `["Some Modified Text", 10]` respectively. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `["Some Text", 1, "Some More Text", 2]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [New Values][NewValues Property] | `($)NewValues`, with value `["Some Modified Text", 10]` | `($)NewValues` is a variable of type [IEnumerable][]<[dynamic][]> | + +#### Result + +Setting the first and second items at the beginning of `["Some Text", 1, "Some More Text", 2]` to `["Some Modified Text", 10]` respectively, results in the variable `($)List` being updated to the following: + +```json +["Some Modified Text", 10, "Some More Text", 2] +``` + +*** + +## Properties + +### List + +The [List][List Property] to set the items in. + +[List][List Property] can be any [IList][]<[TItem][]>, where [TItem][] represents the type of items in the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)List` with no value | + +### New Values + +The [New Values][NewValues Property] to set the items at the beginning of [List][List Property] to. + +The number of items in [New Values][NewValues Property] determines the number of items that will be set at the beginning of [List][List Property]. One item means only the first item is set, two items means the first and second items are set etc. + +The first item in [List][List Property] will be set to the first value in [New Values][NewValues Property]; the second item in [List][List Property] will be set to the second value in [New Values][NewValues Property] etc. + +| | | +|--------------------|---------------------------| +| Data Type | [IEnumerable][]<[TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|-------------| +| [CannotModifyReadOnlyListException][] | Thrown when [List][List Property] is read-only. | +| [PropertyEmptyException][] | Thrown when [List][List Property] contains no items. | +| [PropertyNullException][] | Thrown when [List][List Property] or [New Values][NewValues Property] is `null`. | + +## Remarks + +### Empty New Values + +If [New Values][NewValues Property] is empty (i.e. `[]`) there is nothing to set, so no operation is performed. + +### Defining lists using literal syntax + +For information about how to define lists using literal syntax, see [Create a List<TItem>][]. + +### Defining lists using expression syntax + +For information about how to define lists using expression syntax, see [Create a List<TItem>][]. + +### Lists containing items of a single data type vs multiple data types + +For information about the different types of lists, including those that can contain only a single type of item, and those that can contain multiple types of item, see [Lists][]. + +[List Property]: {{< ref "#list" >}} +[NewValues Property]: {{< ref "#new-values" >}} + +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[Create a List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[Lists]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Lists" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[CannotModifyReadOnlyListException]: {{< url path="Cortex.Reference.Exceptions.Lists.CannotModifyReadOnlyListException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-items-at-end-block-2.md b/content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-items-at-end-block-2.md new file mode 100644 index 000000000..d9bb48327 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-items-at-end-block-2.md @@ -0,0 +1,123 @@ +--- +title: "Set Items At End" +linkTitle: "Set Items At End" +description: "Sets the items at the end of a List to new values." +--- + +{{< figure src="/blocks/Cortex_Blocks_Lists_SetItem_SetItemsAtEndBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Lists.SetItem.SetItemsAtEndBlock`2)

+ +## Description + +Sets the items at the end of a [List][List Property] to [New Values][NewValues Property]. + +## Examples + +### Set the items at the end of a List to New Values + +This example will set the second last and last items at the end of `["Some Text", 1, "Some More Text", 2]` to `["Some Modified Text", 10]` respectively. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `["Some Text", 1, "Some More Text", 2]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [New Values][NewValues Property] | `($)NewValues`, with value `["Some Modified Text", 10]` | `($)NewValues` is a variable of type [IEnumerable][]<[dynamic][]> | + +#### Result + +Setting the second last and last items at the end of `["Some Text", 1, "Some More Text", 2]` to `["Some Modified Text", 10]` respectively, results in the variable `($)List` being updated to the following: + +```json +["Some Text", 1, "Some Modified Text", 10] +``` + +*** + +## Properties + +### List + +The [List][List Property] to set the items in. + +[List][List Property] can be any [IList][]<[TItem][]>, where [TItem][] represents the type of items in the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)List` with no value | + +### New Values + +The [New Values][NewValues Property] to set the items at the end of [List][List Property] to. + +The number of items in [New Values][NewValues Property] determines the number of items that will be set at the end of [List][List Property]. One item means only the last item is set, two items means the second last and last items are set etc. + +The last item in [List][List Property] will be set to the last value in [New Values][NewValues Property]; the second last item in [List][List Property] will be set to the second last value in [New Values][NewValues Property] etc. + +| | | +|--------------------|---------------------------| +| Data Type | [IEnumerable][]<[TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|-------------| +| [CannotModifyReadOnlyListException][] | Thrown when [List][List Property] is read-only. | +| [PropertyEmptyException][] | Thrown when [List][List Property] contains no items. | +| [PropertyNullException][] | Thrown when [List][List Property] or [New Values][NewValues Property] is `null`. | + +## Remarks + +### Empty New Values + +If [New Values][NewValues Property] is empty (i.e. `[]`) there is nothing to set, so no operation is performed. + +### Defining lists using literal syntax + +For information about how to define lists using literal syntax, see [Create a List<TItem>][]. + +### Defining lists using expression syntax + +For information about how to define lists using expression syntax, see [Create a List<TItem>][]. + +### Lists containing items of a single data type vs multiple data types + +For information about the different types of lists, including those that can contain only a single type of item, and those that can contain multiple types of item, see [Lists][]. + +[List Property]: {{< ref "#list" >}} +[NewValues Property]: {{< ref "#new-values" >}} + +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[Create a List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[Lists]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Lists" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[CannotModifyReadOnlyListException]: {{< url path="Cortex.Reference.Exceptions.Lists.CannotModifyReadOnlyListException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-items-at-index-block-2.md b/content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-items-at-index-block-2.md new file mode 100644 index 000000000..ee33c69b4 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-items-at-index-block-2.md @@ -0,0 +1,146 @@ +--- +title: "Set Items At Index" +linkTitle: "Set Items At Index" +description: "Sets the items at the specified index of a List to new values." +--- + +{{< figure src="/blocks/Cortex_Blocks_Lists_SetItem_SetItemsAtIndexBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Lists.SetItem.SetItemsAtIndexBlock`2)

+ +## Description + +Sets the items at the specified [Index][Index Property] of a [List][List Property] to [New Values][NewValues Property]. + +## Examples + +### Set the Items at the first Index (i.e. `0`) of a List to New Values + +This example will set the 2 items starting at index `0` of `["Some Text", 1, "Some More Text", 2]` to `["Some Modified Text", 10]` respectively. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `["Some Text", 1, "Some More Text", 2]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [New Values][NewValues Property] | `($)NewValues`, with value `["Some Modified Text", 10]` | `($)NewValues` is a variable of type [IEnumerable][]<[dynamic][]> | +| [Index][Index Property] | `($)Index`, with value `0` | `($)Index` is a variable of type [Int32][] | + +#### Result + +Setting the two items at index `0` of `["Some Text", 1, "Some More Text", 2]` to `["Some Modified Text", 10]` respectively, results in the variable `($)List` being updated to the following: + +```json +["Some Modified Text", 10, "Some More Text", 2] +``` + +*** + +## Properties + +### List + +The [List][List Property] to set the items in. + +[List][List Property] can be any [IList][]<[TItem][]>, where [TItem][] represents the type of items in the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)List` with no value | + +### New Values + +The [New Values][NewValues Property] to set the items at the specified [Index][Index Property] of [List][List Property] to. + +The number of items in [New Values][NewValues Property] determines the number of items that will be set at the end of [List][List Property]. One item means one item is set, two items means two items are set etc. + +The item at [Index][Index Property] of [List][List Property] will be set to the first value in [New Values][NewValues Property]; the item at [Index][Index Property] + `1` of [List][List Property] will be set to the second value in [New Values][NewValues Property] etc. + +| | | +|--------------------|---------------------------| +| Data Type | [IEnumerable][]<[TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### Index + +The [Index][Index Property] to start setting the items at. This is an inclusive index, which means the item at the specified index will be included. + +Valid values are between and including `0` and the total count of items in the [List][List Property] - `1`. + +For information about what an index is, please see [Indexes][]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `0` | +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|-------------| +| [CannotModifyReadOnlyListException][] | Thrown when [List][List Property] is read-only. | +| [PropertyEmptyException][] | Thrown when [New Values][NewValues Property] contains no items. | +| [PropertyNullException][] | Thrown when [List][List Property] or [New Values][NewValues Property] is `null`. | +| [PropertyValueOutOfRangeException][] | Thrown when [Index][Index Property] is less than `0` or greater than the count of items in [List][List Property] - `1`. | +| | Thrown when [Index][Index Property] + count of items in [New Values][NewValues Property] is greater than the count of items in the [List][List Property] - `1`. | + +## Remarks + +### Index is inclusive + +The [Index][Index Property] is an inclusive [index][Indexes], which means the item at the index will be included in the set items. + +### Defining lists using literal syntax + +For information about how to define lists using literal syntax, see [Create a List<TItem>][]. + +### Defining lists using expression syntax + +For information about how to define lists using expression syntax, see [Create a List<TItem>][]. + +### Lists containing items of a single data type vs multiple data types + +For information about the different types of lists, including those that can contain only a single type of item, and those that can contain multiple types of item, see [Lists][]. + +[List Property]: {{< ref "#list" >}} +[NewValues Property]: {{< ref "#new-values" >}} +[Index Property]: {{< ref "#index" >}} + +[Indexes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Indexes.MainDoc" >}} + +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[Create a List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[Lists]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Lists" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[CannotModifyReadOnlyListException]: {{< url path="Cortex.Reference.Exceptions.Lists.CannotModifyReadOnlyListException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[PropertyValueOutOfRangeException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.MainDoc" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-items-at-indexes-block-2.md b/content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-items-at-indexes-block-2.md new file mode 100644 index 000000000..3de4ba4e9 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-items-at-indexes-block-2.md @@ -0,0 +1,146 @@ +--- +title: "Set Items At Indexes" +linkTitle: "Set Items At Indexes" +description: "Sets the items at each of the specified indexes of a List to new values." +--- + +{{< figure src="/blocks/Cortex_Blocks_Lists_SetItem_SetItemsAtIndexesBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Lists.SetItem.SetItemsAtIndexesBlock`2)

+ +## Description + +Sets the items at each of the specified [Indexes][Indexes Property] of a [List][List Property] to [New Values][NewValues Property]. + +## Examples + +### Sets items at the first and third Indexes (i.e. [`0`, `2`]) of a List to New Values + +This example will set items at indexes `0` and `2` of `["Some Text", 1, "Some More Text", 2]` to `["Some Modified Text", "Some More Modified Text"]` respectively. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `["Some Text", 1, "Some More Text", 2]` | `($)List` is a variable of type [IList][]<[dynamic][]> | +| [New Values][NewValues Property] | `($)NewValues`, with value `["Some Modified Text", "Some More Modified Text"]` | `($)NewValues` is a variable of type [IEnumerable][]<[String][]> | +| [Indexes][Indexes Property] | `($)Indexes`, with value [`0`, `2`] | `($)Indexes` is a variable of type [IEnumerable][]<[Int32][]> | + +#### Result + +Setting items at indexes `0` and `2` of `["Some Text", 1, "Some More Text", 2]` to `["Some Modified Text", "Some More Modified Text"]` respectively, results in the variable `($)List` being updated to the following: + +```json +["Some Modified Text", 1, "Some More Modified Text", 2] +``` + +*** + +## Properties + +### List + +The [List][List Property] to set the items in. + +[List][List Property] can be any [IList][]<[TItem][]>, where [TItem][] represents the type of items in the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)List` with no value | + +### New Values + +The [New Values][NewValues Property] to set the items at the specified [Indexes][Indexes Property] of [List][List Property] to. + +The number of items in [New Values][NewValues Property] must match the number of items in [Indexes][Indexes Property]. + +The [List][List Property] item at the first index in [Indexes][Indexes Property] will be set to the first value in [New Values][NewValues Property]; the [List][List Property] item at the second index in [Indexes][Indexes Property] will be set to the second value in [New Values][NewValues Property] etc. + +| | | +|--------------------|---------------------------| +| Data Type | [IEnumerable][]<[TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### Indexes + +The [Indexes][Indexes Property] of the items to set. + +Valid values are between and including `0` and the total count of items in the [List][List Property] - `1`. + +For information about what an index is, please see [Indexes][]. + +| | | +|--------------------|---------------------------| +| Data Type | [IEnumerable][]<[Int32][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | `new List() {}` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [CannotModifyReadOnlyListException][] | Thrown when [List][List Property] is read-only. | +| [DuplicateValueException][] | Thrown when [Indexes][Indexes Property] contains duplicate values. | +| [PropertyItemCountException][] | Thrown when the count of items in [New Values][NewValues Property] and the count of items in [Indexes][Indexes Property] are not the same. | +| [PropertyNullException][] | Thrown when [List][List Property] or [New Values][NewValues Property] or [Indexes][Indexes Property] is `null`. | +| [PropertyValueOutOfRangeException][] | Thrown when [Indexes][Indexes Property] contains no values. | +| | Thrown when any index in [Indexes][Indexes Property] is less than `0` or greater than the count of items in [List][List Property] - `1`. | + +## Remarks + +### Defining lists using literal syntax + +For information about how to define lists using literal syntax, see [Create a List<TItem>][]. + +### Defining lists using expression syntax + +For information about how to define lists using expression syntax, see [Create a List<TItem>][]. + +### Lists containing items of a single data type vs multiple data types + +For information about the different types of lists, including those that can contain only a single type of item, and those that can contain multiple types of item, see [Lists][]. + +[List Property]: {{< ref "#list" >}} +[NewValues Property]: {{< ref "#new-values" >}} +[Indexes Property]: {{< ref "#indexes" >}} + +[Indexes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Indexes.MainDoc" >}} + +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[Create a List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[Lists]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Lists" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[CannotModifyReadOnlyListException]: {{< url path="Cortex.Reference.Exceptions.Lists.CannotModifyReadOnlyListException.MainDoc" >}} +[DuplicateValueException]: {{< url path="Cortex.Reference.Exceptions.Lists.DuplicateValueException.MainDoc" >}} +[PropertyItemCountException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyItemCountException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[PropertyValueOutOfRangeException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.MainDoc" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-items-with-value-block-2.md b/content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-items-with-value-block-2.md new file mode 100644 index 000000000..a7fb27054 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-items-with-value-block-2.md @@ -0,0 +1,149 @@ +--- +title: "Set Items With Value" +linkTitle: "Set Items With Value" +description: "Sets all items matching a value in a List to a new value." +--- + +{{< figure src="/blocks/Cortex_Blocks_Lists_SetItem_SetItemsWithValueBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Lists.SetItem.SetItemsWithValueBlock`2)

+ +## Description + +Sets all items matching a [Value][Value Property] in a [List][List Property] to a [New Value][NewValue Property]. + +## Examples + +### Set all items matching a Value in a List to a New Value + +This example will attempt to set all items matching the value `1` in `[1, 2, 3, 3, 2, 1]` to `10`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `[1, 2, 3, 3, 2, 1]` | `($)List` is a variable of type [IList][]<[Int32][]> | +| [Value][Value Property] | `($)Value`, with value `1` | `($)Value` is a variable of type [Int32][] | +| [New Value][NewValue Property] | `($)NewValue`, with value `10` | `($)NewValue` is a variable of type [Int32][] | + +#### Result + +Attempting to set all items matching the value `1` in `[1, 2, 3, 3, 2, 1]` to `10` results in the variable `($)List` being updated to the following: + +```json +[10, 2, 3, 3, 2, 10] +``` + +*** + +## Properties + +### List + +The [List][List Property] to set all matching items in. + +Items are considered matching if they have the specified [Value][Value Property]. + +[List][List Property] can be any [IList][]<[TItem][]>, where [TItem][] represents the type of items in the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)List` with no value | + +### Value + +The [Value][Value Property] the items to set must match. + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [TItem][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### New Value + +The [New Value][NewValue Property] to set all matching items in [List][List Property] to. + +| | | +|--------------------|---------------------------| +| Data Type | [TItem][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [CannotModifyReadOnlyListException][] | Thrown when [List][List Property] is read-only. | +| [InvalidPropertyValueException][] | Thrown when [Value][Value Property] or [New Value][NewValue Property] are `null` and [List][List Property] only accepts non-nullable value types. See [Value Is Invalid][]. | +| [PropertyNullException][] | Thrown when [List][List Property] is `null`. | + +## Remarks + +### Item Equality + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +### Empty List + +If [List][List Property] is empty (i.e. `[]`) there is nothing to set, so no operation is performed. + +### No items matching Value + +If [List][List Property] does not contain items matching the specified [Value][Value Property], there is nothing to set, so no operation is performed. + +### Defining lists using literal syntax + +For information about how to define lists using literal syntax, see [Create a List<TItem>][]. + +### Defining lists using expression syntax + +For information about how to define lists using expression syntax, see [Create a List<TItem>][]. + +### Lists containing items of a single data type vs multiple data types + +For information about the different types of lists, including those that can contain only a single type of item, and those that can contain multiple types of item, see [Lists][]. + +[List Property]: {{< ref "#list" >}} +[Value Property]: {{< ref "#value" >}} +[NewValue Property]: {{< ref "#new-value" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Create a List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[Lists]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Lists" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[Object Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectEquality.MainDoc" >}} + +[CannotModifyReadOnlyListException]: {{< url path="Cortex.Reference.Exceptions.Lists.CannotModifyReadOnlyListException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[InvalidPropertyValueException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.MainDoc" >}} +[Value Is Invalid]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.ValueIsInvalid" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-items-with-values-block-2.md b/content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-items-with-values-block-2.md new file mode 100644 index 000000000..8100b1aee --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Lists/set-item/set-items-with-values-block-2.md @@ -0,0 +1,157 @@ +--- +title: "Set Items With Values" +linkTitle: "Set Items With Values" +description: "Sets all items matching one of the specified values in a List to new values." +--- + +{{< figure src="/blocks/Cortex_Blocks_Lists_SetItem_SetItemsWithValuesBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Lists.SetItem.SetItemsWithValuesBlock`2)

+ +## Description + +Set all items matching one of the specified [Values][Values Property] in a [List][List Property] to [New Values][NewValues Property]. + +## Examples + +### Set all items matching one of the specified Values in a List to New Values + +This example will attempt to set all items matching one of the values `[1, 2]` in `[1, 2, 3, 3, 2, 1]` to `[10, 20]` respectively. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [List][List Property] | `($)List`, with value `[1, 2, 3, 3, 2, 1]` | `($)List` is a variable of type [IList][]<[Int32][]> | +| [Values][Values Property] | `($)Values`, with value `[1, 2]` | `($)Values` is a variable of type [IEnumerable][]<[Int32][]> | +| [NewValues][NewValues Property] | `($)NewValues`, with value `[10, 20]` | `($)NewValues` is a variable of type [IEnumerable][]<[Int32][]> | + +#### Result + +Attempting to set all items matching one of the values `[1, 2]` in `[1, 2, 3, 3, 2, 1]` to `[10, 20]` respectively, results in the variable `($)List` being updated to the following: + +```json +[10, 20, 3, 3, 20, 10] +``` + +*** + +## Properties + +### List + +The [List][List Property] to set all matching items in. + +Items are considered matching if they have one of the specified [Values][Values Property]. + +[List][List Property] can be any [IList][]<[TItem][]>, where [TItem][] represents the type of items in the [List][List Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)List` with no value | + +### Values + +The [Values][Values Property] the items to set must match one of. + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [IEnumerable][]<[TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### New Values + +The [New Values][NewValues Property] to set the items matching the corresponding [Values][Values Property] in [List][List Property] to. + +The number of items in [New Values][NewValues Property] must match the number of items in [Values][Values Property]. + +[List][List Property] items matching the first value in [Values][Values Property] will be set to the first value in [New Values][NewValues Property]; [List][List Property] items matching the second value in [Values][Values Property] will be set to the second value in [New Values][NewValues Property] etc. + +| | | +|--------------------|---------------------------| +| Data Type | [IEnumerable][]<[TItem][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [CannotModifyReadOnlyListException][] | Thrown when [List][List Property] is read-only. | +| [DuplicateValueException][] | Thrown when [Values][Values Property] contains duplicate values. | +| [PropertyItemCountException][] | Thrown when the count of items in [Values][Values Property] and the count of items in [New Values][NewValues Property] are not the same, or neither contain any items. | +| [PropertyNullException][] | Thrown when [List][List Property] or [Values][Values Property] or [New Values][NewValues Property] are `null`. | + +## Remarks + +### Item Equality + +For information and examples of how it is determined whether an item matches a specified value, please see [Object Equality][]. + +### Empty List + +If [List][List Property] is empty (i.e. `[]`) there is nothing to set, so no operation is performed. + +### No items matching a specified value in Values + +If [List][List Property] does not contain items matching one of the specified [Values][Values Property], there is nothing to set for that value. + +### No items matching Values + +If [List][List Property] does not contain items matching any of the specified [Values][Values Property], there is nothing to set, so no operation is performed. + +### Defining lists using literal syntax + +For information about how to define lists using literal syntax, see [Create a List<TItem>][]. + +### Defining lists using expression syntax + +For information about how to define lists using expression syntax, see [Create a List<TItem>][]. + +### Lists containing items of a single data type vs multiple data types + +For information about the different types of lists, including those that can contain only a single type of item, and those that can contain multiple types of item, see [Lists][]. + +[List Property]: {{< ref "#list" >}} +[Values Property]: {{< ref "#values" >}} +[NewValues Property]: {{< ref "#new-values" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Create a List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[Lists]: {{< url path="Cortex.Reference.DataTypes.MostCommon.Lists" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[Object Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectEquality.MainDoc" >}} + +[CannotModifyReadOnlyListException]: {{< url path="Cortex.Reference.Exceptions.Lists.CannotModifyReadOnlyListException.MainDoc" >}} +[DuplicateValueException]: {{< url path="Cortex.Reference.Exceptions.Lists.DuplicateValueException.MainDoc" >}} +[PropertyItemCountException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyItemCountException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/PowerShell/_index.md b/content/en/docs/2024.11/Reference/Blocks/PowerShell/_index.md new file mode 100644 index 000000000..7bb3eb21b --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/PowerShell/_index.md @@ -0,0 +1,5 @@ +--- +title: "PowerShell" +linkTitle: "PowerShell" +description: "Blocks related to working with Windows PowerShell and PowerShell Core." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/PowerShell/execute-powershell-script/_index.md b/content/en/docs/2024.11/Reference/Blocks/PowerShell/execute-powershell-script/_index.md new file mode 100644 index 000000000..abc8da99e --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/PowerShell/execute-powershell-script/_index.md @@ -0,0 +1,5 @@ +--- +title: "Execute PowerShell Script" +linkTitle: "Execute PowerShell Script" +description: "Blocks related to executing PowerShell scripts with Windows PowerShell and PowerShell Core." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/PowerShell/execute-powershell-script/execute-powershell-script-block-1.md b/content/en/docs/2024.11/Reference/Blocks/PowerShell/execute-powershell-script/execute-powershell-script-block-1.md new file mode 100644 index 000000000..710c76d7b --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/PowerShell/execute-powershell-script/execute-powershell-script-block-1.md @@ -0,0 +1,392 @@ +--- +title: "Execute PowerShell Script" +linkTitle: "Execute PowerShell Script" +description: "Executes a PowerShell script on the specified host." +--- + +{{< figure src="/blocks/Cortex_Blocks_PowerShell_ExecutePowerShellScript_ExecutePowerShellScriptBlock_1.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.PowerShell.ExecutePowerShellScript.ExecutePowerShellScriptBlock`1)

+ +{{% alert type="information" title="Information" %}}Improvements to this page are planned for the future; this will include further examples and remarks.{{% /alert %}} + +## Description + +Connects to a host using the specified [PowerShell Session Details][PowerShell Session Details Property], and executes a [Script][Script Property], returning the [Outputs][Outputs Property] and [Records][Records Property]. + +[Close Session][Close Session Property] can be specified to choose whether the session on the host is closed or is kept open for use on subsequent Execute PowerShell Script blocks. + +## Examples + +### Execute a Script using PowerShellWinRMSessionDetails + +This example will execute a script on the server with the following details: + +- Host - `"host.domain.com"` +- Port - `5986` +- UseSsl - `true` + +The host can be connected to with the following credentials: + +- Domain - `"domain.com"` +- Username - `"username"` +- Password - `"password"` + +The server that the script will be executed on contains a text file in the following location `C:\Folder\Example.txt`, the file contains the following text before the script is executed: + +`"This is the content of the file located on the host the script is running on."` + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Script][Script Property] | `($)Script` with value `"Get-Content \"C:\\Folder\\Example.txt\""` | `($)Script` is a variable of type [String][] | +| [Parameters][Parameters Property] | `($)Parameters` with no value | `($)Parameters` is a variable of type [Dictionary][]<[String][], [dynamic][]> | +| [PowerShell Session Details][PowerShell Session Details Property] | `($)PowerShellSessionDetails` with value `{"ServerDetails": {"Host": "host.domain.com", "Port": 5986, "UseSsl": "true"}, "Credentials": {"Domain": "domain.com", "Username": "username", "Password": "encryptedPassword"}}`

In this example `($)PowerShellSessionDetails` has been set up using the following [Expression][]:

`new PowerShellWinRMSessionDetails(serverDetails: new ServerDetails("host.domain.com", 5986, true), credentials: new UserCredentials("domain.com", "username", "encryptedPassword"))` | `($)Credentials` is a variable of type [PowerShellWinRMSessionDetails][]

The [Password][UserCredentials Password] property within [UserCredentials][] of the [PowerShellWinRMSessionDetails][] must be encrypted, for more information on how to encrypt the password, see [EncryptedText][]. | +| [Close Session][Close Session Property] | `($)CloseSession`, with value `true` | `($)CloseSession` is a variable of type [Boolean][] | +| [Outputs][Outputs Property] | `($)Outputs`, with no value | `($)Outputs` will be set to the type [IList][]<[dynamic][]> | +| [Records][Records Property] | `($)Records`, with no value | `($)Records` will be set to the type [Records][] | + +#### Result + +Running the [Script][Script Property] results in the variable `($)Outputs` being updated to the following: + +```json +[ + "This is the content of the file located on the host the script is running on." +] +``` + +It also results in the variable `($)Records` being updated to the following: + +```json +{ + "ErrorRecords": [], + "WarningRecords": [], + "DebugRecords": [], + "ProgressRecords": [], + "VerboseRecords": [], + "InformationRecords": [] +} +``` + +After the [Script][Script Property] has been executed, the session will be closed, for more information see [Closing Sessions][]. + +*** + +### Execute a Script with Parameters using PowerShellWinRMSessionDetails + +This example will execute a script on the server with the following details: + +- Host - `"host.domain.com"` +- Port - `5986` +- UseSsl - `true` + +The host can be connected to with the following credentials: + +- Domain - `"domain.com"` +- Username - `"username"` +- Password - `"password"` + +The server that the script will be executed on contains a text file in the following location `C:\Folder\Example.txt`, the file contains the following text before the script is executed: + +`"This is the content of the file located on the host the script is running on."` + +In this example assume the following variables have been set before the script has been executed: + +- `($)FilePath` with the value `"Get-Content \"C:\\Folder\\Example.txt\""` + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Script][Script Property] | `($)Script` with value `"Get-Content $FilePath"` | `($)Script` is a variable of type [String][] | +| [Parameters][Parameters Property] | `($)Parameters` with value `{"FilePath": ($)FilePath"}` | `($)Parameters` is a variable of type [Dictionary][]<[String][], [dynamic][]> | +| [PowerShell Session Details][PowerShell Session Details Property] | `($)PowerShellSessionDetails` with value `{"ServerDetails": {"Host": "host.domain.com", "Port": 5986, "UseSsl": "true"}, "Credentials": {"Domain": "domain.com", "Username": "username", "Password": "encryptedPassword"}}`

In this example `($)PowerShellSessionDetails` has been set up using the following [Expression][]:

`new PowerShellWinRMSessionDetails(serverDetails: new ServerDetails("host.domain.com", 5986, true), credentials: new UserCredentials("domain.com", "username", "encryptedPassword"))` | `($)Credentials` is a variable of type [PowerShellWinRMSessionDetails][]

The [Password][UserCredentials Password] property within [UserCredentials][] of the [PowerShellWinRMSessionDetails][] must be encrypted, for more information on how to encrypt the password, see [EncryptedText][]. | +| [Close Session][Close Session Property] | `($)CloseSession`, with value `true` | `($)CloseSession` is a variable of type [Boolean][] | +| [Outputs][Outputs Property] | `($)Outputs`, with no value | `($)Outputs` will be set to the type [IList][]<[dynamic][]> | +| [Records][Records Property] | `($)Records`, with no value | `($)Records` will be set to the type [Records][] | + +#### Result + +Running the [Script][Script Property] results in the variable `($)Outputs` being updated to the following: + +```json +[ + "This is the content of the file located on the host the script is running on." +] +``` + +It also results in the variable `($)Records` being updated to the following: + +```json +{ + "ErrorRecords": [], + "WarningRecords": [], + "DebugRecords": [], + "ProgressRecords": [], + "VerboseRecords": [], + "InformationRecords": [] +} +``` + +After the [Script][Script Property] has been executed, the session will be closed, for more information see [Closing Sessions][]. + +*** + +### Execute a Script that returns Records using PowerShellWinRMSessionDetails + +This example will execute a script on the server with the following details: + +- Host - `"host.domain.com"` +- Port - `5986` +- UseSsl - `true` + +The host can be connected to with the following credentials: + +- Domain - `"domain.com"` +- Username - `"username"` +- Password - `"password"` + +The server that the script will be executed on contains a text file in the following location `C:\Folder\Example.txt`, the file contains the following text before the script is executed: + +`"This is the content of the file located on the host the script is running on."` + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Script][Script Property] | `($)Script` with value `$@"Get-Content \"C:\\Folder\\Example.txt\"; $DebugPreference = 'Continue'; Write-Warning 'Warning'; Write-Debug 'Debug'; Write-Information 'Information'; Write-Verbose 'Verbose' -Verbose; Get-Error"` | `($)Script` is a variable of type [String][] | +| [Parameters][Parameters Property] | `($)Parameters` with no value | `($)Parameters` is a variable of type [Dictionary][]<[String][], [dynamic][]> | +| [PowerShell Session Details][PowerShell Session Details Property] | `($)PowerShellSessionDetails` with value `{"ServerDetails": {"Host": "host.domain.com", "Port": 5986, "UseSsl": "true"}, "Credentials": {"Domain": "domain.com", "Username": "username", "Password": "encryptedPassword"}}`

In this example `($)PowerShellSessionDetails` has been set up using the following [Expression][]:

`new PowerShellWinRMSessionDetails(serverDetails: new ServerDetails("host.domain.com", 5986, true), credentials: new UserCredentials("domain.com", "username", "encryptedPassword"))` | `($)Credentials` is a variable of type [PowerShellWinRMSessionDetails][]

The [Password][UserCredentials Password] property within [UserCredentials][] of the [PowerShellWinRMSessionDetails][] must be encrypted, for more information on how to encrypt the password, see [EncryptedText][]. | +| [Close Session][Close Session Property] | `($)CloseSession`, with value `true` | `($)CloseSession` is a variable of type [Boolean][] | +| [Outputs][Outputs Property] | `($)Outputs`, with no value | `($)Outputs` will be set to the type [IList][]<[dynamic][]> | +| [Records][Records Property] | `($)Records`, with no value | `($)Records` will be set to the type [Records][] | + +#### Result + +Running the [Script][Script Property] results in the variable `($)Outputs` being updated to the following: + +```json +[ + "This is the content of the file located on the host the script is running on." +] +``` + +It also results in the variable `($)Records` being updated to the following: + +```json +{ + "ErrorRecords": [ + "The term 'Get-Error' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again." + ], + "WarningRecords": [ + "Warning" + ], + "DebugRecords": [ + "Debug" + ], + "ProgressRecords": [ + "parent = -1 id = 0 act = Preparing modules for first use. stat = cur = pct = -1 sec = -1 type = Completed" + ], + "VerboseRecords": [ + "Verbose" + ], + "InformationRecords": [ + "Information" + ] +} +``` + +After the [Script][Script Property] has been executed, the session will be closed, for more information see [Closing Sessions][]. + +*** + +## Properties + +### Script + +The [Script][Script Property] which will be executed on the [Host][ServerDetails Host] provided within the [PowerShell Session Details][PowerShell Session Details Property], this can be a script, a file path of a script on the host, or a cmdlet. + +Note that to execute a script using its file path, the file path must accessible to the [Host][ServerDetails Host]. + +||| +|----------|----------| +| Data Type | [EncryptableText][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | `$@""` | + +### Parameters + +The parameters to be passed into the [Script][Script Property]. + +||| +|----------|----------| +| Data Type | [IDictionary][]<[String][], [dynamic][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### PowerShell Session Details + +The [PowerShell Session Details][PowerShell Session Details Property] object that includes all of the information required to connect and maintain a PowerShell Session. This property contains all of the information in relation to the server the script will be executed on, these are: + +- [ServerDetails][PowerShellSessionDetails Server Details] +- [Credentials][] +- [PsConfiguration][] + +||| +|----------|----------| +| Data Type | [PowerShellSessionDetails][] | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)PowerShellSessionDetails` with no value | + +### Close Session + +[Close Session][Close Session Property] can be specified to choose whether the session on the [Host][ServerDetails Host] is closed or is kept open for use on subsequent Execute PowerShell Script blocks, this defaults to `false` if left blank, please see [Closing Sessions][] for more information. + +||| +|----------|----------| +| Data Type | [Boolean][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [Boolean][] with value `true` | + +### Outputs + +IList<dynamic> of outputs from the execution of the [Script][Script Property]. + +||| +|----------|----------| +| Data Type | [IList][]<[dynamic][]> | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Outputs` with no value | + +### Records + +The Records object that includes the error, warning, debug, progress, verbose, and information records from the execution of the script or cmdlet. + +||| +|----------|----------| +| Data Type | [Records][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Records` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|--------------------------------------|-------------| +| [PSRemotingException][] | Thrown when the [Host][ServerDetails Host] within the [PowerShell Session Details][PowerShell Session Details Property] is invalid (e.g. host does not exist or invalid characters/whitespace). | +| | Thrown when the [Host][ServerDetails Host] within the [PowerShell Session Details][PowerShell Session Details Property] does not have PSRemoting configured correctly. | +| | Thrown when the [Host][ServerDetails Host] within the [PowerShell Session Details][PowerShell Session Details Property] is a host name; is being accessed through a private or domain network, and Kerberos authentication is disabled on the host's WinRM service or the server's WinRM client. | +| | Thrown when the [Host][ServerDetails Host] within the [PowerShell Session Details][PowerShell Session Details Property] is a host name; is being accessed through a public network, and its name is not on the server's WinRM TrustedHosts list. | +| | Thrown when the [Host][ServerDetails Host] within the [PowerShell Session Details][PowerShell Session Details Property] is an IP Address; is being accessed through any network (i.e. public, private or domain), and is not on the server's WinRM TrustedHosts list. | +| | Thrown when the [Host][ServerDetails Host] within the [PowerShell Session Details][PowerShell Session Details Property] is an IP Address being accessed through any network (i.e. public, private or domain) or a host name being accessed through a public network, and Negotiate authentication is disabled on the host's WinRM service. | +| | Thrown when the [Port][ServerDetails Port] within the [PowerShell Session Details][PowerShell Session Details Property] is invalid. | +| | Thrown when the [UseSsl][ServerDetails UseSsl] is `false` and the specified [Port][ServerDetails Port] within the [PowerShell Session Details][PowerShell Session Details Property] is not configured for HTTP protocols. | +| | Thrown when the [UseSsl][ServerDetails UseSsl] is `true` and the specified [Port][ServerDetails Port] within the [PowerShell Session Details][PowerShell Session Details Property] is not configured for HTTPS protocols. | +| | Thrown when the [UseSsl][ServerDetails UseSsl] is `true` and the host does not have a valid certificate configured. | +| | Thrown when the [Domain][UserCredentials Domain], [Username][UserCredentials Username], or [Password][UserCredentials Password] in the [Credentials][] within the [PowerShell Session Details][PowerShell Session Details Property] is invalid. | +| | Thrown when the [Domain][UserCredentials Domain] in the [Credentials][] within the [PowerShell Session Details][PowerShell Session Details Property] is `null` or empty and is required. | +| | Thrown when the user does not have the correct user permissions to execute PowerShell scripts or cmdlets on the [Host][ServerDetails Host]. | +| | Thrown when the [PsConfiguration][] within the [PowerShell Session Details][PowerShell Session Details Property] is invalid or is not configured on the [Host][ServerDetails Host]. | +| [PSException][] | Thrown when the [Script][Script Property] contains any unexpected or invalid tokens. | +| | Thrown when the [Script][Script Property] is missing any necessary tokens. | +| [PropertyNullException][] | Thrown when the [Script][Script Property] is `null`. | +| | Thrown when [PowerShell Session Details][PowerShell Session Details Property] is `null`. | +| | Thrown when the [ServerDetails][] within the [PowerShell Session Details][PowerShell Session Details Property] is `null`. | +| | Thrown when the [Host][ServerDetails Host] within the [ServerDetails][] within the [PowerShell Session Details][PowerShell Session Details Property] is `null`. | +| | Thrown when the [Credentials][] within the [PowerShell Session Details][PowerShell Session Details Property] is `null`. | +| | Thrown when the [Username][UserCredentials Username] in the [Credentials][] within the [PowerShell Session Details][PowerShell Session Details Property] is `null`. | +| | Thrown when the [Password][UserCredentials Password] in the [Credentials][] within the [PowerShell Session Details][PowerShell Session Details Property] is `null`. | +| [PropertyEmptyException][] | Thrown when [Script][Script Property] is empty. | +| | Thrown when the [Host][ServerDetails Host] within the [ServerDetails][] within the [PowerShell Session Details][PowerShell Session Details Property] is empty. | +| | Thrown when the [Username][UserCredentials Username] in the [Credentials][] within the [PowerShell Session Details][PowerShell Session Details Property] is empty. | +| | Thrown when the [Password][UserCredentials Password] in the [Credentials][] within the [PowerShell Session Details][PowerShell Session Details Property] is empty. | +| [PropertyValueOutOfRangeException][] | Thrown when the [Port][ServerDetails Port] within the [ServerDetails][] within the [PowerShell Session Details][PowerShell Session Details Property] is below `1` or above `65535`. | + +## Remarks + +### Opening Sessions + +The Execute PowerShell Script block automatically handles creating and opening session for the specified [PowerShell Session Details][PowerShell Session Details Property] using the following rules: + +- If a session does not exist, a new session will be created, opened and used when the block runs. +- If a session already exists but is closed, the session will be opened and used when the block runs. +- If a session already exists and is open, the session will used the block runs. + +For information on how to explicitly close a session, please see [Closing Sessions][]. + +### Closing Sessions + +Sessions can be explicitly closed by setting [Close Session][Close Session Property] to `true`. This causes the session to be closed after the [Script][Script Property] has been executed. + +For information on how to open a session, please see [Opening Sessions][]. + +### Known Limitations + +None + +[Script Property]: {{< ref "#script" >}} +[PowerShell Session Details Property]: {{< ref "#powershell-session-details" >}} +[Parameters Property]: {{< ref "#parameters" >}} +[Close Session Property]: {{< ref "#close-session" >}} +[Outputs Property]: {{< ref "#outputs" >}} +[Records Property]: {{< ref "#records" >}} + +[Opening Sessions]: {{< ref "#opening-sessions" >}} +[Closing Sessions]: {{< ref "#closing-sessions" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[IDictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} +[Dictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[EncryptableText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptableText.MainDoc" >}} +[EncryptedText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptedText.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} +[ServerDetails]: {{< url path="Cortex.Reference.DataTypes.SessionDetails.ServerDetails.MainDoc" >}} +[ServerDetails Host]: {{< url path="Cortex.Reference.DataTypes.SessionDetails.ServerDetails.Host" >}} +[ServerDetails Port]: {{< url path="Cortex.Reference.DataTypes.SessionDetails.ServerDetails.Port" >}} +[ServerDetails UseSsl]: {{< url path="Cortex.Reference.DataTypes.SessionDetails.ServerDetails.UseSsl" >}} + +[UserCredentials]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.MainDoc" >}} +[UserCredentials Domain]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.Domain" >}} +[UserCredentials Username]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.Username" >}} +[UserCredentials Password]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.Password" >}} + +[PowerShellWinRMSessionDetails]: {{< url path="Cortex.Reference.DataTypes.PowerShell.PowerShellWinRMSessionDetails.MainDoc" >}} +[Records]: {{< url path="Cortex.Reference.DataTypes.PowerShell.Records.MainDoc" >}} + +[PowerShellSessionDetails]: {{< url path="Cortex.Reference.DataTypes.PowerShell.PowerShellSessionDetails.MainDoc" >}} +[PowerShellSessionDetails Server Details]: {{< url path="Cortex.Reference.DataTypes.PowerShell.PowerShellSessionDetails.ServerDetails" >}} +[Credentials]: {{< url path="Cortex.Reference.DataTypes.PowerShell.PowerShellSessionDetails.Credentials" >}} +[PsConfiguration]: {{< url path="Cortex.Reference.DataTypes.PowerShell.PowerShellSessionDetails.PsConfiguration" >}} + +[PSException]: {{< url path="Cortex.Reference.Exceptions.PowerShell.PSException.MainDoc" >}} +[PSRemotingException]: {{< url path="Cortex.Reference.Exceptions.PowerShell.PSRemotingException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyValueOutOfRangeException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.MainDoc" >}} + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/Convert-To/_index.md b/content/en/docs/2024.11/Reference/Blocks/Text/Convert-To/_index.md new file mode 100644 index 000000000..414eb632e --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/Convert-To/_index.md @@ -0,0 +1,5 @@ +--- +title: "Convert To" +linkTitle: "Convert To" +description: "Convert text to a different format (e.g. `\"lowercase\"`, `\"UPPERCASE\"`, `\"Title Case\"`, `\"camelCase\"`, `\"PascalCase\"`)." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/Convert-To/convert-to-camel-case-block.md b/content/en/docs/2024.11/Reference/Blocks/Text/Convert-To/convert-to-camel-case-block.md new file mode 100644 index 000000000..d63ef328a --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/Convert-To/convert-to-camel-case-block.md @@ -0,0 +1,120 @@ +--- +title: "Convert To Camel Case" +linkTitle: "Convert To Camel Case" +description: "Converts text to camel case (e.g. `\"camelCase\"`)." +--- + +{{< figure src="/blocks/Cortex_Blocks_Text_ConvertTo_ConvertToCamelCaseBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Text.ConvertTo.ConvertToCamelCaseBlock)

+ +## Description + +Converts [Text][Text Property] to camel case. + +Converting to camel case will result in all words (except the first) having their first letter capitalized, all other letters lower cased, and all spaces and punctuation being removed (e.g. `"TEXT to convert to camel-case!"` will be converted to `"textToConvertToCamelCase"`). + +## Examples + +### Text converted to camel case + +This example will convert `"The quick brown fox jumps over the lazy dog"` to camel case. + +It performs a [culture-insensitive][InvariantCulture] conversion of the text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog"` | `($)Text` is a variable of type [String][] | +| [Culture Info][CultureInfo Property] | `($)CultureInfo`, with value `CultureInfo.InvariantCulture` | `($)CultureInfo` is a variable of type [CultureInfo][] | + +#### Result + +Converting `"The quick brown fox jumps over the lazy dog"` to camel case will result in the variable `($)Text` being updated to the following: + +```json +"theQuickBrownFoxJumpsOverTheLazyDog" +``` + +*** + +## Properties + +### Text + +The [Text][Text Property] to convert to camel case. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +### Culture Info + +The [Culture Info][CultureInfo Property] used to perform the conversion of the [Text][Text Property]. + +For information about the [supported values][CultureInfos] for the [Culture Info][CultureInfo Property] property and examples of how it affects casing rules, please see [Casing][]. + +| | | +|--------------------|---------------------------| +| Data Type | [CultureInfo][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Expression][] | +| Default Value | `CultureInfo.InvariantCulture` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [InvalidPropertyValueException][] | Thrown when the culture identifier of the [Culture Info][CultureInfo Property] is invalid (e.g. `new CultureInfo("InvalidCultureIdentifier")`). See [Value Is Invalid][]. | + +## Remarks + +### Culture Info + +For information about the [supported values][CultureInfos] for the [CultureInfo][CultureInfo Property] property and examples of how it affects casing rules, please see [Casing][]. + +### Null Culture Info + +If [Culture Info][CultureInfo Property] is `null`, it will be set to `CultureInfo.InvariantCulture`. + +### Null or empty Text + +If [Text][Text Property] is `null` or empty (i.e. `""`), no operation is performed. + +### Immutable String data type + +The [String][] data type used to represent [Text][Text Property] is immutable, which means it is read-only and cannot be changed once created. + +To overcome this, this block creates a new [String][] which has the [Text][Text Property] converted to camel case and re-assigns it to the variable specified in the [Text][Text Property] property. + +[Text Property]: {{< ref "#text" >}} +[CultureInfo Property]: {{< ref "#culture-info" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Casing]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Casing.MainDoc" >}} +[CultureInfos]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Casing.CultureInfo.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[CultureInfo]: {{< url path="Cortex.Reference.DataTypes.Text.CultureInfo.MainDoc" >}} +[InvariantCulture]: {{< url path="Cortex.Reference.DataTypes.MostCommon.InvariantCulture" >}} + +[InvalidPropertyValueException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.MainDoc" >}} +[Value Is Invalid]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.ValueIsInvalid" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/Convert-To/convert-to-lower-case-block.md b/content/en/docs/2024.11/Reference/Blocks/Text/Convert-To/convert-to-lower-case-block.md new file mode 100644 index 000000000..f9eb6e2d0 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/Convert-To/convert-to-lower-case-block.md @@ -0,0 +1,120 @@ +--- +title: "Convert To Lower Case" +linkTitle: "Convert To Lower Case" +description: "Converts text to lower case (e.g. `\"lowercase\"`)." +--- + +{{< figure src="/blocks/Cortex_Blocks_Text_ConvertTo_ConvertToLowerCaseBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Text.ConvertTo.ConvertToLowerCaseBlock)

+ +## Description + +Converts [Text][Text Property] to lower case. + +Converting to lower case will result in all letters being lower cased; spaces and punctuation will be preserved (e.g. `"TEXT to convert to lower-case!"` will be converted to `"text to convert to lower-case!"`). + +## Examples + +### Text converted to lower case + +This example will convert `"The quick brown fox jumps over the lazy dog"` to lower case. + +It performs a [culture-insensitive][InvariantCulture] conversion of the text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog"` | `($)Text` is a variable of type [String][] | +| [Culture Info][CultureInfo Property] | `($)CultureInfo`, with value `CultureInfo.InvariantCulture` | `($)CultureInfo` is a variable of type [CultureInfo][] | + +#### Result + +Converting `"The quick brown fox jumps over the lazy dog"` to lower case will result in the variable `($)Text` being updated to the following: + +```json +"the quick brown fox jumps over the lazy dog" +``` + +*** + +## Properties + +### Text + +The [Text][Text Property] to convert to lower case. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +### Culture Info + +The [Culture Info][CultureInfo Property] used to perform the conversion of the [Text][Text Property]. + +For information about the [supported values][CultureInfos] for the [Culture Info][CultureInfo Property] property and examples of how it affects casing rules, please see [Casing][]. + +| | | +|--------------------|---------------------------| +| Data Type | [CultureInfo][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Expression][] | +| Default Value | `CultureInfo.InvariantCulture` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [InvalidPropertyValueException][] | Thrown when the culture identifier of the [Culture Info][CultureInfo Property] is invalid (e.g. `new CultureInfo("InvalidCultureIdentifier")`). See [Value Is Invalid][]. | + +## Remarks + +### Culture Info + +For information about the [supported values][CultureInfos] for the [CultureInfo][CultureInfo Property] property and examples of how it affects casing rules, please see [Casing][]. + +### Null Culture Info + +If [Culture Info][CultureInfo Property] is `null`, it will be set to `CultureInfo.InvariantCulture`. + +### Null or empty Text + +If [Text][Text Property] is `null` or empty (i.e. `""`), no operation is performed. + +### Immutable String data type + +The [String][] data type used to represent [Text][Text Property] is immutable, which means it is read-only and cannot be changed once created. + +To overcome this, this block creates a new [String][] which has the [Text][Text Property] converted to lower case and re-assigns it to the variable specified in the [Text][Text Property] property. + +[Text Property]: {{< ref "#text" >}} +[CultureInfo Property]: {{< ref "#culture-info" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Casing]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Casing.MainDoc" >}} +[CultureInfos]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Casing.CultureInfo.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[CultureInfo]: {{< url path="Cortex.Reference.DataTypes.Text.CultureInfo.MainDoc" >}} +[InvariantCulture]: {{< url path="Cortex.Reference.DataTypes.MostCommon.InvariantCulture" >}} + +[InvalidPropertyValueException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.MainDoc" >}} +[Value Is Invalid]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.ValueIsInvalid" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/Convert-To/convert-to-pascal-case-block.md b/content/en/docs/2024.11/Reference/Blocks/Text/Convert-To/convert-to-pascal-case-block.md new file mode 100644 index 000000000..cce527f40 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/Convert-To/convert-to-pascal-case-block.md @@ -0,0 +1,120 @@ +--- +title: "Convert To Pascal Case" +linkTitle: "Convert To Pascal Case" +description: "Converts text to pascal case (e.g. `\"PascalCase\"`)." +--- + +{{< figure src="/blocks/Cortex_Blocks_Text_ConvertTo_ConvertToPascalCaseBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Text.ConvertTo.ConvertToPascalCaseBlock)

+ +## Description + +Converts [Text][Text Property] to pascal case. + +Converting to pascal case will result in all words having their first letter capitalized, all other letters lower cased, and all spaces and punctuation being removed (e.g. `"TEXT to convert to pascal-case!"` will be converted to `"TextToConvertToPascalCase"`). + +## Examples + +### Text converted to pascal case + +This example will convert `"The quick brown fox jumps over the lazy dog"` to pascal case. + +It performs a [culture-insensitive][InvariantCulture] conversion of the text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog"` | `($)Text` is a variable of type [String][] | +| [Culture Info][CultureInfo Property] | `($)CultureInfo`, with value `CultureInfo.InvariantCulture` | `($)CultureInfo` is a variable of type [CultureInfo][] | + +#### Result + +Converting `"The quick brown fox jumps over the lazy dog"` to pascal case will result in the variable `($)Text` being updated to the following: + +```json +"TheQuickBrownFoxJumpsOverTheLazyDog" +``` + +*** + +## Properties + +### Text + +The [Text][Text Property] to convert to pascal case. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +### Culture Info + +The [Culture Info][CultureInfo Property] used to perform the conversion of the [Text][Text Property]. + +For information about the [supported values][CultureInfos] for the [Culture Info][CultureInfo Property] property and examples of how it affects casing rules, please see [Casing][]. + +| | | +|--------------------|---------------------------| +| Data Type | [CultureInfo][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Expression][] | +| Default Value | `CultureInfo.InvariantCulture` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [InvalidPropertyValueException][] | Thrown when the culture identifier of the [Culture Info][CultureInfo Property] is invalid (e.g. `new CultureInfo("InvalidCultureIdentifier")`). See [Value Is Invalid][]. | + +## Remarks + +### Culture Info + +For information about the [supported values][CultureInfos] for the [CultureInfo][CultureInfo Property] property and examples of how it affects casing rules, please see [Casing][]. + +### Null Culture Info + +If [Culture Info][CultureInfo Property] is `null`, it will be set to `CultureInfo.InvariantCulture`. + +### Null or empty Text + +If [Text][Text Property] is `null` or empty (i.e. `""`), no operation is performed. + +### Immutable String data type + +The [String][] data type used to represent [Text][Text Property] is immutable, which means it is read-only and cannot be changed once created. + +To overcome this, this block creates a new [String][] which has the [Text][Text Property] converted to pascal case and re-assigns it to the variable specified in the [Text][Text Property] property. + +[Text Property]: {{< ref "#text" >}} +[CultureInfo Property]: {{< ref "#culture-info" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Casing]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Casing.MainDoc" >}} +[CultureInfos]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Casing.CultureInfo.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[CultureInfo]: {{< url path="Cortex.Reference.DataTypes.Text.CultureInfo.MainDoc" >}} +[InvariantCulture]: {{< url path="Cortex.Reference.DataTypes.MostCommon.InvariantCulture" >}} + +[InvalidPropertyValueException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.MainDoc" >}} +[Value Is Invalid]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.ValueIsInvalid" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/Convert-To/convert-to-title-case-block.md b/content/en/docs/2024.11/Reference/Blocks/Text/Convert-To/convert-to-title-case-block.md new file mode 100644 index 000000000..b3d013e36 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/Convert-To/convert-to-title-case-block.md @@ -0,0 +1,120 @@ +--- +title: "Convert To Title Case" +linkTitle: "Convert To Title Case" +description: "Converts text to title case (e.g. `\"Title Case\"`)." +--- + +{{< figure src="/blocks/Cortex_Blocks_Text_ConvertTo_ConvertToTitleCaseBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Text.ConvertTo.ConvertToTitleCaseBlock)

+ +## Description + +Converts [Text][Text Property] to title case. + +Converting to title case will result in all words having their first letter capitalized and all other letters lower cased; except for words that are entirely upper cased, such as acronyms, which remain upper cased; spaces and punctuation will be preserved (e.g. `"TEXT to convert to title-case!"` will be converted to `"TEXT To Convert To Title-Case!"`). + +## Examples + +### Text converted to title case + +This example will convert `"The quick brown fox jumps over the lazy dog"` to title case. + +It performs a [culture-insensitive][InvariantCulture] conversion of the text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog"` | `($)Text` is a variable of type [String][] | +| [Culture Info][CultureInfo Property] | `($)CultureInfo`, with value `CultureInfo.InvariantCulture` | `($)CultureInfo` is a variable of type [CultureInfo][] | + +#### Result + +Converting `"The quick brown fox jumps over the lazy dog"` to title case will result in the variable `($)Text` being updated to the following: + +```json +"The Quick Brown Fox Jumps Over The Lazy Dog" +``` + +*** + +## Properties + +### Text + +The [Text][Text Property] to convert to title case. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +### Culture Info + +The [Culture Info][CultureInfo Property] used to perform the conversion of the [Text][Text Property]. + +For information about the [supported values][CultureInfos] for the [Culture Info][CultureInfo Property] property and examples of how it affects casing rules, please see [Casing][]. + +| | | +|--------------------|---------------------------| +| Data Type | [CultureInfo][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Expression][] | +| Default Value | `CultureInfo.InvariantCulture` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [InvalidPropertyValueException][] | Thrown when the culture identifier of the [Culture Info][CultureInfo Property] is invalid (e.g. `new CultureInfo("InvalidCultureIdentifier")`). See [Value Is Invalid][]. | + +## Remarks + +### Culture Info + +For information about the [supported values][CultureInfos] for the [CultureInfo][CultureInfo Property] property and examples of how it affects casing rules, please see [Casing][]. + +### Null Culture Info + +If [Culture Info][CultureInfo Property] is `null`, it will be set to `CultureInfo.InvariantCulture`. + +### Null or empty Text + +If [Text][Text Property] is `null` or empty (i.e. `""`), no operation is performed. + +### Immutable String data type + +The [String][] data type used to represent [Text][Text Property] is immutable, which means it is read-only and cannot be changed once created. + +To overcome this, this block creates a new [String][] which has the [Text][Text Property] converted to title case and re-assigns it to the variable specified in the [Text][Text Property] property. + +[Text Property]: {{< ref "#text" >}} +[CultureInfo Property]: {{< ref "#culture-info" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Casing]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Casing.MainDoc" >}} +[CultureInfos]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Casing.CultureInfo.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[CultureInfo]: {{< url path="Cortex.Reference.DataTypes.Text.CultureInfo.MainDoc" >}} +[InvariantCulture]: {{< url path="Cortex.Reference.DataTypes.MostCommon.InvariantCulture" >}} + +[InvalidPropertyValueException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.MainDoc" >}} +[Value Is Invalid]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.ValueIsInvalid" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/Convert-To/convert-to-upper-case-block.md b/content/en/docs/2024.11/Reference/Blocks/Text/Convert-To/convert-to-upper-case-block.md new file mode 100644 index 000000000..3f1effcb6 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/Convert-To/convert-to-upper-case-block.md @@ -0,0 +1,120 @@ +--- +title: "Convert To Upper Case" +linkTitle: "Convert To Upper Case" +description: "Converts text to upper case (e.g. `\"UPPERCASE\"`)." +--- + +{{< figure src="/blocks/Cortex_Blocks_Text_ConvertTo_ConvertToUpperCaseBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Text.ConvertTo.ConvertToUpperCaseBlock)

+ +## Description + +Converts [Text][Text Property] to upper case. + +Converting to upper case will result in all letters being upper cased; spaces and punctuation will be preserved (e.g. `"TEXT to convert to upper-case!"` will be converted to `"TEXT TO CONVERT TO UPPER-CASE!"`). + +## Examples + +### Text converted to upper case + +This example will convert `"The quick brown fox jumps over the lazy dog"` to upper case. + +It performs a [culture-insensitive][InvariantCulture] conversion of the text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog"` | `($)Text` is a variable of type [String][] | +| [Culture Info][CultureInfo Property] | `($)CultureInfo`, with value `CultureInfo.InvariantCulture` | `($)CultureInfo` is a variable of type [CultureInfo][] | + +#### Result + +Converting `"The quick brown fox jumps over the lazy dog"` to upper case will result in the variable `($)Text` being updated to the following: + +```json +"THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG" +``` + +*** + +## Properties + +### Text + +The [Text][Text Property] to convert to upper case. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +### Culture Info + +The [Culture Info][CultureInfo Property] used to perform the conversion of the [Text][Text Property]. + +For information about the [supported values][CultureInfos] for the [Culture Info][CultureInfo Property] property and examples of how it affects casing rules, please see [Casing][]. + +| | | +|--------------------|---------------------------| +| Data Type | [CultureInfo][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Expression][] | +| Default Value | `CultureInfo.InvariantCulture` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [InvalidPropertyValueException][] | Thrown when the culture identifier of the [Culture Info][CultureInfo Property] is invalid (e.g. `new CultureInfo("InvalidCultureIdentifier")`). See [Value Is Invalid][]. | + +## Remarks + +### Culture Info + +For information about the [supported values][CultureInfos] for the [CultureInfo][CultureInfo Property] property and examples of how it affects casing rules, please see [Casing][]. + +### Null Culture Info + +If [Culture Info][CultureInfo Property] is `null`, it will be set to `CultureInfo.InvariantCulture`. + +### Null or empty Text + +If [Text][Text Property] is `null` or empty (i.e. `""`), no operation is performed. + +### Immutable String data type + +The [String][] data type used to represent [Text][Text Property] is immutable, which means it is read-only and cannot be changed once created. + +To overcome this, this block creates a new [String][] which has the [Text][Text Property] converted to upper case and re-assigns it to the variable specified in the [Text][Text Property] property. + +[Text Property]: {{< ref "#text" >}} +[CultureInfo Property]: {{< ref "#culture-info" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Casing]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Casing.MainDoc" >}} +[CultureInfos]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Casing.CultureInfo.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[CultureInfo]: {{< url path="Cortex.Reference.DataTypes.Text.CultureInfo.MainDoc" >}} +[InvariantCulture]: {{< url path="Cortex.Reference.DataTypes.MostCommon.InvariantCulture" >}} + +[InvalidPropertyValueException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.MainDoc" >}} +[Value Is Invalid]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.ValueIsInvalid" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/Get-Index/_index.md b/content/en/docs/2024.11/Reference/Blocks/Text/Get-Index/_index.md new file mode 100644 index 000000000..b1f69b98a --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/Get-Index/_index.md @@ -0,0 +1,5 @@ +--- +title: "Get Index(es) of Text" +linkTitle: "Get Index(es) of Text" +description: "Get the index for the specified occurrence of text, or the indexes of all occurrences of text contained in another text." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/Get-Index/get-index-of-text-block.md b/content/en/docs/2024.11/Reference/Blocks/Text/Get-Index/get-index-of-text-block.md new file mode 100644 index 000000000..8b860d2ee --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/Get-Index/get-index-of-text-block.md @@ -0,0 +1,335 @@ +--- +title: "Get Index Of Text" +linkTitle: "Get Index Of Text" +description: "Gets the index of the specified occurrence of a text in another text." +--- + +{{< figure src="/blocks/Cortex_Blocks_Text_GetIndex_GetIndexOfTextBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Text.GetIndex.GetIndexOfTextBlock)

+ +## Description + +Gets the [Index][Index Property] of the specified [Occurrence][Occurrence Property] of [Text To Find][TextToFind Property] in [Text][Text Property]. + +[Search Options][SearchOptions Property] can be specified to choose whether to use a LiteralText, PatternMatching or Regex search to find the [Text To Find][TextToFind Property]. + +## Examples + +### Get the Index of the first Occurrence of Text To Find (Ordinal) + +This example will get the index of the first occurrence of `"The"` in `"The quick brown fox jumps over the lazy dog"`. + +It performs a [case-sensitive, culture-insensitive][Ordinal] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog"` | `($)Text` is a variable of type [String][] | +| [Text To Find][TextToFind Property] | `($)TextToFind`, with value `"The"` | `($)TextToFind` is a variable of type [String][] | +| [Occurrence][Occurrence Property] | `($)Occurrence`, with value `1` | `($)Occurrence` is a variable of type [Int32][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.LiteralText` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Index][Index Property] | `($)Index`, with no value | `($)Index` is a variable that will be set to an [Int32][] value | + +#### Result + +An [Occurrence][Occurrence Property] of `1` means get the index of the first occurrence; `2` means second etc. + +As this example is performing a [case-sensitive, culture-insensitive][Ordinal] comparison of text, `"The quick brown fox jumps over the lazy dog"` only contains the text `"The"` once; `"the"` has a different case so does not match. Therefore, the variable `($)Index` will be updated to the following: + +```json +0 +``` + +where `0` indicates the index of the first character of the first and only occurrence matching `"The"`. + +*** + +### Get the Index of the last Occurrence of Text To Find (Ordinal Ignore Case) + +This example will get the index of the last occurrence of `"The"` in `"The quick brown fox jumps over the lazy dog"`. + +It performs a [case-insensitive, culture-insensitive][OrdinalIgnoreCase] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog"` | `($)Text` is a variable of type [String][] | +| [Text To Find][TextToFind Property] | `($)TextToFind`, with value `"The"` | `($)TextToFind` is a variable of type [String][] | +| [Occurrence][Occurrence Property] | `($)Occurrence`, with value `-1` | `($)Occurrence` is a variable of type [Int32][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.LiteralText` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.OrdinalIgnoreCase` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Index][Index Property] | `($)Index`, with no value | `($)Index` is a variable that will be set to an [Int32][] value | + +#### Result + +An [Occurrence][Occurrence Property] of `-1` means get the index of the last occurrence; `2` means second last etc. + +As this example is performing a [case-insensitive, culture-insensitive][OrdinalIgnoreCase] comparison of text, `"The quick brown fox jumps over the lazy dog"` contains the text `"The"` twice; the first occurrence is `"The"` and the second and last occurrence is `"the"`. Therefore, the variable `($)Index` will be updated to the following: + +```json +31 +``` + +where `31` indicates the index of the first character of the last matching occurrence, `"the"`. + +*** + +### Text does not contain Text To Find + +This example will attempt to get the index of the first occurrence of `"slow"` in `"The quick brown fox jumps over the lazy dog"`. + +It performs a [case-sensitive, culture-insensitive][Ordinal] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog"` | `($)Text` is a variable of type [String][] | +| [Text To Find][TextToFind Property] | `($)TextToFind`, with value `"slow"` | `($)TextToFind` is a variable of type [String][] | +| [Occurrence][Occurrence Property] | `($)Occurrence`, with value `1` | `($)Occurrence` is a variable of type [Int32][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.LiteralText` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Index][Index Property] | `($)Index`, with no value | `($)Index` is a variable that will be set to an [Int32][] value | + +#### Result + +`"The quick brown fox jumps over the lazy dog"` does not contain the text `"slow"`, so the index cannot be found. Therefore, the variable `($)Index` will be updated to the following: + +```json +-1 +``` + +where `-1` indicates that there are no matching occurrences. + +*** + +### Get the Index of the first Occurrence matching the pattern in Text To Find + +This example will get the index of the first occurrence of text matching the pattern `"?he"` from `"The quick brown fox jumps over the lazy dog"`. + +It performs a [case-sensitive, culture-insensitive][Ordinal] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog"` | `($)Text` is a variable of type [String][] | +| [Text To Find][TextToFind Property] | `($)TextToFind`, with value `"?he"` | `($)TextToFind` is a variable of type [String][] | +| [Occurrence][Occurrence Property] | `($)Occurrence`, with value `1` | `($)Occurrence` is a variable of type [Int32][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.PatternMatching` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Index][Index Property] | `($)Index`, with no value | `($)Index` is a variable that will be set to an [Int32][] value | + +#### Result + +An [Occurrence][Occurrence Property] of `1` means get the index of the first occurrence; `2` means second etc. + +`"The quick brown fox jumps over the lazy dog"` contains two occurrences that match the pattern `"?he"`; the first occurrence is `"The"` and the second occurrence is `"the"`. Therefore, the variable `($)Index` will be updated to the following: + +```json +0 +``` + +where `0` indicates the index of the first character of the first occurrence matching the pattern `"?he"`. + +*** + +### Get the Index of the last Occurrence matching the regex in Text To Remove + +This example will get the index of the last occurrence of text matching the regex `"(fox|dog)"` from `"The quick brown fox jumps over the lazy dog"`. + +It performs a [case-sensitive, culture-insensitive][Ordinal] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog"` | `($)Text` is a variable of type [String][] | +| [Text To Find][TextToFind Property] | `($)TextToFind`, with value `"(fox\|dog)"` | `($)TextToFind` is a variable of type [String][] | +| [Occurrence][Occurrence Property] | `($)Occurrence`, with value `-1` | `($)Occurrence` is a variable of type [Int32][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.Regex` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Index][Index Property] | `($)Index`, with no value | `($)Index` is a variable that will be set to an [Int32][] value | + +#### Result + +An [Occurrence][Occurrence Property] of `-1` means get the index of the last occurrence; `2` means second last etc. + +`"The quick brown fox jumps over the lazy dog"` contains two occurrences that match the regex `"(fox|dog)"`; the first occurrence is `"fox"` and the second and last occurrence is `"dog"`. Therefore, the variable `($)Index` will be updated to the following: + +```json +40 +``` + +where `0` indicates the index of the first character of the last occurrence matching the regex `"(fox|dog)"`. + +*** + +## Properties + +### Text + +The [Text][Text Property] to get the [Index][Index Property] of the specified [Occurrence][Occurrence Property] of [Text To Find][TextToFind Property] from. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +### Text To Find + +The [Text To Find][TextToFind Property] the [Index][Index Property] of the specified [Occurrence][Occurrence Property] of, in [Text][Text Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | `$@""` | + +### Occurrence + +The specified [Occurrence][Occurrence Property] of [Text To Find][TextToFind Property] in [Text][Text Property]. + +For information about [supported values][Occurrences] for the [Occurrence][Occurrence Property] property and examples of how it can be used, please see [Occurrences][]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `1` | + +### Search Options + +[Search Options][SearchOptions Property] can be specified to choose whether [Text To Find][TextToFind Property] should be interpreted as a LiteralText, PatternMatching or Regex search: + +* `SearchOptions.LiteralText` matches text exactly; as long as the [Text][Text Property] contains the text specified in [Text To Find][TextToFind Property] it will be considered a match. +* `SearchOptions.PatternMatching` allows wildcard text matching using [Pattern Matching Syntax][]: + * `*` wildcard character can be used to match `0` or more characters. + * `?` wildcard character can be used to match `0` or `1` character. + * All other characters are treated as a literal character. +* `SearchOptions.Regex` allows regex text matching using [.Net Regex Syntax][Regex Syntax]. + +Please note that with `SearchOptions.LiteralText` overlapping matches are detected (e.g. searching for `"aa"` in `"aaa"` matches `"aa"` at index `0` and `"aa"` at index `1`). With `SearchOptions.Regex` only `"aa"` at index `0` will be matched. + +| | | +|--------------------|---------------------------| +| Data Type | [SearchOptions][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | `LiteralText` | + +### Comparison Type + +The [Comparison Type][ComparisonType Property] specifying the rules used to match [Text To Find][TextToFind Property] in [Text][Text Property]. + +For information about the [supported values][ComparisonTypes] for the [Comparison Type][ComparisonType Property] property and examples of how it is determined whether two pieces of text match, please see [Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [StringComparison][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | `Ordinal` | + +### Index + +[Int32][] indicating the [Index][Index Property] of the first character of the specified [Occurrence][Occurrence Property] of [Text To Find][TextToFind Property] in [Text][Text Property]. + +If there is no specified [Occurrence][Occurrence Property] of [Text To Find][TextToFind Property] in [Text][Text Property], the specified variable will be set to `-1`. + +For information about what an index is, please see [Indexes][]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Index` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [ArgumentException][] | Thrown when [Comparison Type][ComparisonType Property] is not one of the specified [StringComparison][] types (e.g. `(StringComparison)10`). | +| | Thrown when [Search Options][SearchOptions Property] is not one of the specified [SearchOptions][] types (e.g. `(SearchOptions)10`). | +| [RegexMatchTimeoutException][] | Thrown when [Search Options][SearchOptions Property] is either `SearchOptions.Regex` or `SearchOptions.PatternMatching` and the execution time of the search exceeds `30` seconds. | +| [RegexParsingFailedException][] | Thrown when [Search Options][SearchOptions Property] is `SearchOptions.Regex` and [Text To Find][TextToFind Property] is not a valid regex (e.g. `(`). | + +## Remarks + +### Comparison Types + +For information about the [supported values][ComparisonTypes] for the [Comparison Type][ComparisonType Property] property and examples of how it is determined whether two pieces of text match, please see [Equality][]. + +### Null or empty Text + +If [Text][Text Property] is `null` or empty (i.e. `""`), the variable specified in the [Index][Index Property] property is set to `-1`. + +### Null or empty Text To Find + +If [Text To Find][TextToFind Property] is `null` or empty (i.e. `""`), the variable specified in the [Index][Index Property] property is set to `-1`. + +### Occurrence is zero + +If the [Occurrence][Occurrence Property] is set to `0`, the variable specified in the [Index][Index Property] property is set to `-1`. + +### Occurrence of Text To Find not found + +If the specified [Occurrence][Occurrence Property] of [Text To Find][TextToFind Property] is not found in [Text][Text Property], the variable specified in the [Index][Index Property] property is set to `-1`. + +### Known Limitations + +If [Search Options][SearchOptions Property] is set to `SearchOptions.Regex` or `SearchOptions.PatternMatching` and [Comparison Type][ComparisonType Property] is set to `StringComparison.CurrentCulture`, some characters such as `æ` that is equivalent to `ae` may not evaluate as equal. + +[Text Property]: {{< ref "#text" >}} +[TextToFind Property]: {{< ref "#text-to-find" >}} +[Occurrence Property]: {{< ref "#occurrence" >}} +[SearchOptions Property]: {{< ref "#search-options" >}} +[ComparisonType Property]: {{< ref "#comparison-type" >}} +[Index Property]: {{< ref "#index" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Indexes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Indexes.MainDoc" >}} +[Occurrences]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Occurrences.MainDoc" >}} +[Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.MainDoc" >}} +[ComparisonTypes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.MainDoc" >}} +[Ordinal]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.Ordinal" >}} +[OrdinalIgnoreCase]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.OrdinalIgnoreCase" >}} +[Pattern Matching Syntax]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.PatternMatchingSyntax.MainDoc" >}} +[Regex Syntax]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.RegexSyntax.MainDoc" >}} + +[RegexParsingFailedException]: {{< url path="Cortex.Reference.Exceptions.Text.Regex.RegexParsingFailedException.MainDoc" >}} + +[ArgumentException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentException" >}} +[RegexMatchTimeoutException]: {{< url path="MSDocs.DotNet.Api.System.Text.RegularExpressions.RegexMatchTimeoutException" >}} + +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[StringComparison]: {{< url path="Cortex.Reference.DataTypes.Text.StringComparison.MainDoc" >}} +[SearchOptions]: {{< url path="Cortex.Reference.DataTypes.Text.SearchOptions.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/Get-Index/get-indexes-of-text-block.md b/content/en/docs/2024.11/Reference/Blocks/Text/Get-Index/get-indexes-of-text-block.md new file mode 100644 index 000000000..a973e520d --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/Get-Index/get-indexes-of-text-block.md @@ -0,0 +1,303 @@ +--- +title: "Get Indexes Of Text" +linkTitle: "Get Indexes Of Text" +description: "Gets the indexes of all occurrences of a text in another text." +--- + +{{< figure src="/blocks/Cortex_Blocks_Text_GetIndex_GetIndexesOfTextBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Text.GetIndex.GetIndexesOfTextBlock)

+ +## Description + +Gets the [Indexes][Indexes Property] of all occurrences of [Text To Find][TextToFind Property] in [Text][Text Property]. + +[Search Options][SearchOptions Property] can be specified to choose whether to use a LiteralText, PatternMatching or Regex search to find the [Text To Find][TextToFind Property]. + +## Examples + +### Get Indexes of all occurrences of Text To Find (Ordinal) + +This example will get the indexes of all occurrences of `"The"` in `"The quick brown fox jumps over the lazy dog"`. + +It performs a [case-sensitive, culture-insensitive][Ordinal] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog"` | `($)Text` is a variable of type [String][] | +| [Text To Find][TextToFind Property] | `($)TextToFind`, with value `"The"` | `($)TextToFind` is a variable of type [String][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.LiteralText` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Indexes][Indexes Property] | `($)Indexes`, with no value | `($)Indexes` is a variable that will be set to an [IList][]<[Int32][]> value | + +#### Result + +As this example is performing a [case-sensitive, culture-insensitive][Ordinal] comparison of text, `"The quick brown fox jumps over the lazy dog"` only contains the text `"The"` once; `"the"` has a different case so does not match. Therefore, the variable `($)Indexes` will be updated to the following: + +```json +[0] +``` + +where `0` indicates the index of the first character of the matching `"The"` occurrence. + +*** + +### Get Indexes of all occurrences of Text To Find (Ordinal Ignore Case) + +This example will get the indexes of all occurrences of `"The"` in `"The quick brown fox jumps over the lazy dog"`. + +It performs a [case-insensitive, culture-insensitive][OrdinalIgnoreCase] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog"` | `($)Text` is a variable of type [String][] | +| [Text To Find][TextToFind Property] | `($)TextToFind`, with value `"The"` | `($)TextToFind` is a variable of type [String][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.LiteralText` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.OrdinalIgnoreCase` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Indexes][Indexes Property] | `($)Indexes`, with no value | `($)Indexes` is a variable that will be set to an [IList][]<[Int32][]> value | + +#### Result + +As this example is performing a [case-insensitive, culture-insensitive][OrdinalIgnoreCase] comparison of text, `"The quick brown fox jumps over the lazy dog"` contains the text `"The"` twice; the first occurrence is `"The"` and the second occurrence is `"the"`. Therefore, the variable `($)Indexes` will be updated to the following: + +```json +[0, 31] +``` + +where `0` indicates the index of the first character of the matching `"The"` occurrence, and `31` indicates the index of the first character of the matching `"the"` occurrence. + +*** + +### Text does not contain Text To Find + +This example will attempt to get the indexes of all occurrences of `"slow"` in `"The quick brown fox jumps over the lazy dog"`. + +It performs a [case-sensitive, culture-insensitive][Ordinal] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog"` | `($)Text` is a variable of type [String][] | +| [Text To Find][TextToFind Property] | `($)TextToFind`, with value `"slow"` | `($)TextToFind` is a variable of type [String][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.LiteralText` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Indexes][Indexes Property] | `($)Indexes`, with no value | `($)Indexes` is a variable that will be set to an [IList][]<[Int32][]> value | + +#### Result + +`"The quick brown fox jumps over the lazy dog"` does not contain the text `"slow"`, so the index cannot be found. Therefore, the variable `($)Indexes` will be updated to the following: + +```json +[-1] +``` + +where `-1` indicates that there are no matching occurrences. + +*** + +### Get Indexes of all occurrences matching the pattern in Text To Find + +This example will get the indexes of all occurrences of text matching the pattern `"?he"` from `"The quick brown fox jumps over the lazy dog"`. + +It performs a [case-sensitive, culture-insensitive][Ordinal] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog"` | `($)Text` is a variable of type [String][] | +| [Text To Find][TextToFind Property] | `($)TextToFind`, with value `"?he"` | `($)TextToFind` is a variable of type [String][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.PatternMatching` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Indexes][Indexes Property] | `($)Indexes`, with no value | `($)Indexes` is a variable that will be set to an [IList][]<[Int32][]> value | + +#### Result + +`"The quick brown fox jumps over the lazy dog"` contains two occurrences that match the pattern `"?he"`; the first occurrence is `"The"` and the second occurrence is `"the"`. Therefore, the variable `($)Indexes` will be updated to the following: + +```json +[0, 31] +``` + +where `0` indicates the index of the first character of the matching `"The"` occurrence, and `31` indicates the index of the first character of the matching `"the"` occurrence. + +*** + +### Get Indexes of all occurrences matching the regex in Text To Remove + +This example will get the indexes of all occurrences of text matching the regex `"(fox|dog)"` from `"The quick brown fox jumps over the lazy dog"`. + +It performs a [case-sensitive, culture-insensitive][Ordinal] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog"` | `($)Text` is a variable of type [String][] | +| [Text To Find][TextToFind Property] | `($)TextToFind`, with value `"(fox\|dog)"` | `($)TextToFind` is a variable of type [String][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.Regex` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Indexes][Indexes Property] | `($)Indexes`, with no value | `($)Indexes` is a variable that will be set to an [IList][]<[Int32][]> value | + +#### Result + +`"The quick brown fox jumps over the lazy dog"` contains two occurrences that match the regex `"(fox|dog)"`; the first occurrence is `"fox"` and the second and last occurrence is `"dog"`. Therefore, the variable `($)Indexes` will be updated to the following: + +```json +[16, 40] +``` + +where `16` indicates the index of the first character of the matching `"fox"` occurrence, and `40` indicates the index of the first character of the matching `"dog"` occurrence. + +*** + +## Properties + +### Text + +The [Text][Text Property] to get the [Indexes][Indexes Property] of all occurrences of [Text To Find][TextToFind Property] from. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +### Text To Find + +The [Text To Find][TextToFind Property] the [Indexes][Indexes Property] of all occurrences of, in [Text][Text Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | `$@""` | + +### Search Options + +[Search Options][SearchOptions Property] can be specified to choose whether [Text To Find][TextToFind Property] should be interpreted as a LiteralText, PatternMatching or Regex search: + +* `SearchOptions.LiteralText` matches text exactly; as long as the [Text][Text Property] contains the text specified in [Text To Find][TextToFind Property] it will be considered a match. +* `SearchOptions.PatternMatching` allows wildcard text matching using [Pattern Matching Syntax][]: + * `*` wildcard character can be used to match `0` or more characters. + * `?` wildcard character can be used to match `0` or `1` character. + * All other characters are treated as a literal character. +* `SearchOptions.Regex` allows regex text matching using [.Net Regex Syntax][Regex Syntax]. + +Please note that with `SearchOptions.LiteralText` overlapping matches are detected (e.g. searching for `"aa"` in `"aaa"` matches `"aa"` at index `0` and `"aa"` at index `1`). With `SearchOptions.Regex` only `"aa"` at index `0` will be matched. + +| | | +|--------------------|---------------------------| +| Data Type | [SearchOptions][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | `LiteralText` | + +### Comparison Type + +The [Comparison Type][ComparisonType Property] specifying the rules used to match [Text To Find][TextToFind Property] in [Text][Text Property]. + +For information about the [supported values][ComparisonTypes] for the [Comparison Type][ComparisonType Property] property and examples of how it is determined whether two pieces of text match, please see [Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [StringComparison][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | `Ordinal` | + +### Indexes + +[IList][]<[Int32][]> containing the [Indexes][Indexes Property] of the first character of each occurrence of [Text To Find][TextToFind Property] in [Text][Text Property]. + +If there are no occurrences of [Text To Find][TextToFind Property] in [Text][Text Property], the specified variable will be set to `[-1]`. + +For information about what an index is, please see [Indexes][]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[Int32][]> | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Indexes` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [ArgumentException][] | Thrown when [Comparison Type][ComparisonType Property] is not one of the specified [StringComparison][] types (e.g. `(StringComparison)10`). | +| | Thrown when [Search Options][SearchOptions Property] is not one of the specified [SearchOptions][] types (e.g. `(SearchOptions)10`). | +| [RegexMatchTimeoutException][] | Thrown when [Search Options][SearchOptions Property] is either `SearchOptions.Regex` or `SearchOptions.PatternMatching` and the execution time of the search exceeds `30` seconds. | +| [RegexParsingFailedException][] | Thrown when [Search Options][SearchOptions Property] is `SearchOptions.Regex` and [Text To Find][TextToFind Property] is not a valid regex (e.g. `(`). | + +## Remarks + +### Comparison Types + +For information about the [supported values][ComparisonTypes] for the [Comparison Type][ComparisonType Property] property and examples of how it is determined whether two pieces of text match, please see [Equality][]. + +### Null or empty Text + +If [Text][Text Property] is `null` or empty (i.e. `""`), the variable specified in the [Indexes][Indexes Property] property is set to `[-1]`. + +### Null or empty Text To Find + +If [Text To Find][TextToFind Property] is `null` or empty (i.e. `""`), the variable specified in the [Indexes][Indexes Property] property is set to `[-1]`. + +### Text To Find not found + +If [Text To Find][TextToFind Property] is not found in [Text][Text Property], the variable specified in the [Indexes][Indexes Property] property is set to `[-1]`. + +### Known Limitations + +If [Search Options][SearchOptions Property] is set to `SearchOptions.Regex` or `SearchOptions.PatternMatching` and [Comparison Type][ComparisonType Property] is set to `StringComparison.CurrentCulture`, some characters such as `æ` that is equivalent to `ae` may not evaluate as equal. + +[Text Property]: {{< ref "#text" >}} +[TextToFind Property]: {{< ref "#text-to-find" >}} +[SearchOptions Property]: {{< ref "#search-options" >}} +[ComparisonType Property]: {{< ref "#comparison-type" >}} +[Indexes Property]: {{< ref "#indexes" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Indexes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Indexes.MainDoc" >}} +[Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.MainDoc" >}} +[ComparisonTypes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.MainDoc" >}} +[Ordinal]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.Ordinal" >}} +[OrdinalIgnoreCase]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.OrdinalIgnoreCase" >}} +[Pattern Matching Syntax]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.PatternMatchingSyntax.MainDoc" >}} +[Regex Syntax]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.RegexSyntax.MainDoc" >}} + +[RegexParsingFailedException]: {{< url path="Cortex.Reference.Exceptions.Text.Regex.RegexParsingFailedException.MainDoc" >}} + +[ArgumentException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentException" >}} +[RegexMatchTimeoutException]: {{< url path="MSDocs.DotNet.Api.System.Text.RegularExpressions.RegexMatchTimeoutException" >}} + +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[StringComparison]: {{< url path="Cortex.Reference.DataTypes.Text.StringComparison.MainDoc" >}} +[SearchOptions]: {{< url path="Cortex.Reference.DataTypes.Text.SearchOptions.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/Get-Length/_index.md b/content/en/docs/2024.11/Reference/Blocks/Text/Get-Length/_index.md new file mode 100644 index 000000000..0602a8e34 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/Get-Length/_index.md @@ -0,0 +1,5 @@ +--- +title: "Get Length" +linkTitle: "Get Length" +description: "Get the length of a text." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/Get-Length/get-length-block.md b/content/en/docs/2024.11/Reference/Blocks/Text/Get-Length/get-length-block.md new file mode 100644 index 000000000..216193d6a --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/Get-Length/get-length-block.md @@ -0,0 +1,89 @@ +--- +title: "Get Length" +linkTitle: "Get Length" +description: "Gets the length of a given text." +--- + +{{< figure src="/blocks/Cortex_Blocks_Text_GetLength_GetLengthBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Text.GetLength.GetLengthBlock)

+ +## Description + +Gets the [Length][Length Property] of a given [Text][Text Property]. + +## Examples + +### Get the Length of a given Text + +This example will get the length of `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"` | `($)Text` is a variable of type [String][] | +| [Length][Length Property] | `($)Length`, with no value | `($)Length` is a variable that will be set to an [Int32][] | + +#### Result + +Getting the length of `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"` results in the variable `($)Length` being updated to the following: + +```json +26 +``` + +*** + +## Properties + +### Text + +The [Text][Text Property] to get the [Length][Length Property] of. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +### Length + +The [Length][Length Property] of the [Text][Text Property] (i.e. the number of characters it contains). + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Length` with no value | + +## Exceptions + +No exceptions are thrown by the block. + +## Remarks + +### Null or empty Text + +If [Text][Text Property] is `null` or empty (i.e. `""`) the variable specified in the [Length][Length Property] property will be set to `0`. + +[Text Property]: {{< ref "#text" >}} +[Length Property]: {{< ref "#length" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/_index.md b/content/en/docs/2024.11/Reference/Blocks/Text/_index.md new file mode 100644 index 000000000..cfd3af806 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/_index.md @@ -0,0 +1,5 @@ +--- +title: "Text" +linkTitle: "Text" +description: "Blocks related to working with Text." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/add-text/_index.md b/content/en/docs/2024.11/Reference/Blocks/Text/add-text/_index.md new file mode 100644 index 000000000..bafeeb0f4 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/add-text/_index.md @@ -0,0 +1,5 @@ +--- +title: "Add Text" +linkTitle: "Add Text" +description: "Add text to another text." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/add-text/add-text-after-index-block.md b/content/en/docs/2024.11/Reference/Blocks/Text/add-text/add-text-after-index-block.md new file mode 100644 index 000000000..01aff80cf --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/add-text/add-text-after-index-block.md @@ -0,0 +1,142 @@ +--- +title: "Add Text After Index" +linkTitle: "Add Text After Index" +description: "Adds text to another text after a given index." +--- + +{{< figure src="/blocks/Cortex_Blocks_Text_AddText_AddTextAfterIndexBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Text.AddText.AddTextAfterIndexBlock)

+ +## Description + +Adds [Text To Add][TextToAdd Property] to another [Text][Text Property] after the given [Index][Index Property]. + +## Examples + +### Add Text To Add to another Text after the given Index + +This example will add `"|"` after `"A"` (which is at index `0`) in `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"` | `($)Text` is a variable of type [String][] | +| [Text To Add][TextToAdd Property] | `($)TextToAdd`, with value `"\|"` | `($)TextToAdd` is a variable of type [String][] | +| [Index][Index Property] | `($)Index`, with value `0` | `($)Index` is a variable of type [Int32][] | + +#### Result + +`"A"` is at index `0` in `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"`. Therefore, adding `"|"` after index `0` results in the variable `($)Text` being updated to the following: + +```json +"A|BCDEFGHIJKLMNOPQRSTUVWXYZ" +``` + +*** + +### Add null or empty Text To Add to another Text after the given Index + +This example will try to add `null` or `""` after `"A"` (which is at index `0`) in `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"` | `($)Text` is a variable of type [String][] | +| [Text To Add][TextToAdd Property] | `($)TextToAdd`, with value `null` or `""` | `($)TextToAdd` is a variable of type [String][] | +| [Index][Index Property] | `($)Index`, with value `0` | `($)Index` is a variable of type [Int32][] | + +#### Result + +Adding `null` or `""` performs no operation as there is nothing to add, so the variable `($)Text` will remain as follows: + +```json +"ABCDEFGHIJKLMNOPQRSTUVWXYZ" +``` + +*** + +## Properties + +### Text + +The [Text][Text Property] where the [Text To Add][TextToAdd Property] is added. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +### Text To Add + +The [Text To Add][TextToAdd Property] to the [Text][Text Property] after the given [Index][Index Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | `$@""` | + +### Index + +The [Index][Index Property] to add the [Text To Add][TextToAdd Property] after. + +For information about what an index is, please see [Indexes][]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `0` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyValueOutOfRangeException][] | Thrown when [Text][Text Property] is `null` or empty (i.e. `""`). | +| | Thrown when [Index][Index Property] is less than zero or greater than the length of [Text][Text Property] - `1`. | + +## Remarks + +### Null or empty Text To Add + +If [Text To Add][TextToAdd Property] is `null` or empty (i.e. `""`) nothing is added to [Text][Text Property]. See [Example][NullOrEmptyTextToAdd Example] above. + +### Immutable String data type + +The [String][] data type used to represent [Text][Text Property] is immutable, which means it is read-only and cannot be changed once created. + +To overcome this, this block creates a new [String][] which has the [Text To Add][TextToAdd Property] added in the correct place and re-assigns it to the variable specified in the [Text][Text Property] property. + +[Text Property]: {{< ref "#text" >}} +[TextToAdd Property]: {{< ref "#text-to-add" >}} +[Index Property]: {{< ref "#index" >}} + +[NullOrEmptyTextToAdd Example]: {{< ref "#add-null-or-empty-text-to-add-to-another-text-after-the-given-index" >}} + +[Indexes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Indexes.MainDoc" >}} +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[PropertyValueOutOfRangeException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.MainDoc" >}} + +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/add-text/add-text-at-beginning-block.md b/content/en/docs/2024.11/Reference/Blocks/Text/add-text/add-text-at-beginning-block.md new file mode 100644 index 000000000..9bc8f3ed2 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/add-text/add-text-at-beginning-block.md @@ -0,0 +1,143 @@ +--- +title: "Add Text At Beginning" +linkTitle: "Add Text At Beginning" +description: "Adds text at the beginning of another text." +--- + +{{< figure src="/blocks/Cortex_Blocks_Text_AddText_AddTextAtBeginningBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Text.AddText.AddTextAtBeginningBlock)

+ +## Description + +Adds [Text To Add][TextToAdd Property] at the beginning of another [Text][Text Property]. + +## Examples + +### Add Text To Add at the beginning of another Text + +This example will add `"|"` at the beginning of `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"` | `($)Text` is a variable of type [String][] | +| [Text To Add][TextToAdd Property] | `($)TextToAdd`, with value `"\|"` | `($)TextToAdd` is a variable of type [String][] | + +#### Result + +Adding `"|"` at the beginning of `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"` results in the variable `($)Text` being updated to the following: + +```json +"|ABCDEFGHIJKLMNOPQRSTUVWXYZ" +``` + +*** + +### Add Text To Add at the beginning of a null or empty Text + +This example will try to add `"|"` at the beginning of `null` or `""`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `null` or `""` | `($)Text` is a variable of type [String][] | +| [Text To Add][TextToAdd Property] | `($)TextToAdd`, with value `"\|"` | `($)TextToAdd` is a variable of type [String][] | + +#### Result + +Adding `"|"` to `null` or `""` results in the variable `($)Text` being updated to the following: + +```json +"|" +``` + +*** + +### Add null or empty Text To Add at the beginning of another Text + +This example will try to add `null` or `""` at the beginnning of `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"` | `($)Text` is a variable of type [String][] | +| [Text To Add][TextToAdd Property] | `($)TextToAdd`, with value `null` or `""` | `($)TextToAdd` is a variable of type [String][] | + +#### Result + +Adding `null` or `""` performs no operation as there is nothing to add, so the variable `($)Text` will remain as follows: + +```json +"ABCDEFGHIJKLMNOPQRSTUVWXYZ" +``` + +*** + +## Properties + +### Text + +The [Text][Text Property] where the [Text To Add][TextToAdd Property] is added. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +### Text To Add + +The [Text To Add][TextToAdd Property] at the beginning of the [Text][Text Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | `$@""` | + +## Exceptions + +No exceptions are thrown by the block. + +## Remarks + +### Null or empty Text + +If [Text][Text Property] is `null` or empty (i.e. `""`) it is replaced with the [Text To Add][TextToAdd Property]. See [Example][NullOrEmptyText Example] above. + +### Null or empty Text To Add + +If [Text To Add][TextToAdd Property] is `null` or empty (i.e. `""`) nothing is added to [Text][Text Property]. See [Example][NullOrEmptyTextToAdd Example] above. + +### Immutable String data type + +The [String][] data type used to represent [Text][Text Property] is immutable, which means it is read-only and cannot be changed once created. + +To overcome this, this block creates a new [String][] which has the [Text To Add][TextToAdd Property] added in the correct place and re-assigns it to the variable specified in the [Text][Text Property] property. + +[Text Property]: {{< ref "#text" >}} +[TextToAdd Property]: {{< ref "#text-to-add" >}} + +[NullOrEmptyText Example]: {{< ref "#add-text-to-add-at-the-beginning-of-a-null-or-empty-text" >}} +[NullOrEmptyTextToAdd Example]: {{< ref "#add-null-or-empty-text-to-add-at-the-beginning-of-another-text" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/add-text/add-text-at-end-block.md b/content/en/docs/2024.11/Reference/Blocks/Text/add-text/add-text-at-end-block.md new file mode 100644 index 000000000..604cd2d67 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/add-text/add-text-at-end-block.md @@ -0,0 +1,143 @@ +--- +title: "Add Text At End" +linkTitle: "Add Text At End" +description: "Adds text at the end of another text." +--- + +{{< figure src="/blocks/Cortex_Blocks_Text_AddText_AddTextAtEndBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Text.AddText.AddTextAtEndBlock)

+ +## Description + +Adds [Text To Add][TextToAdd Property] at the end of another [Text][Text Property]. + +## Examples + +### Add Text To Add at the end of another Text + +This example will add `"|"` at the end of `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"` | `($)Text` is a variable of type [String][] | +| [Text To Add][TextToAdd Property] | `($)TextToAdd`, with value `"\|"` | `($)TextToAdd` is a variable of type [String][] | + +#### Result + +Adding `"|"` at the end of `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"` results in the variable `($)Text` being updated to the following: + +```json +"ABCDEFGHIJKLMNOPQRSTUVWXYZ|" +``` + +*** + +### Add Text To Add at the end of a null or empty Text + +This example will try to add `"|"` at the end of `null` or `""`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `null` or `""` | `($)Text` is a variable of type [String][] | +| [Text To Add][TextToAdd Property] | `($)TextToAdd`, with value `"\|"` | `($)TextToAdd` is a variable of type [String][] | + +#### Result + +Adding `"|"` to `null` or `""` results in the variable `($)Text` being updated to the following: + +```json +"|" +``` + +*** + +### Add null or empty Text To Add at the end of another Text + +This example will try to add `null` or `""` at the end of `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"` | `($)Text` is a variable of type [String][] | +| [Text To Add][TextToAdd Property] | `($)TextToAdd`, with value `null` or `""` | `($)TextToAdd` is a variable of type [String][] | + +#### Result + +Adding `null` or `""` performs no operation as there is nothing to add, so the variable `($)Text` will remain as follows: + +```json +"ABCDEFGHIJKLMNOPQRSTUVWXYZ" +``` + +*** + +## Properties + +### Text + +The [Text][Text Property] where the [Text To Add][TextToAdd Property] is added. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +### Text To Add + +The [Text To Add][TextToAdd Property] at the end of the [Text][Text Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | `$@""` | + +## Exceptions + +No exceptions are thrown by the block. + +## Remarks + +### Null or empty Text + +If [Text][Text Property] is `null` or empty (i.e. `""`) it is replaced with the [Text To Add][TextToAdd Property]. See [Example][NullOrEmptyText Example] above. + +### Null or empty Text To Add + +If [Text To Add][TextToAdd Property] is `null` or empty (i.e. `""`) nothing is added to [Text][Text Property]. See [Example][NullOrEmptyTextToAdd Example] above. + +### Immutable String data type + +The [String][] data type used to represent [Text][Text Property] is immutable, which means it is read-only and cannot be changed once created. + +To overcome this, this block creates a new [String][] which has the [Text To Add][TextToAdd Property] added in the correct place and re-assigns it to the variable specified in the [Text][Text Property] property. + +[Text Property]: {{< ref "#text" >}} +[TextToAdd Property]: {{< ref "#text-to-add" >}} + +[NullOrEmptyText Example]: {{< ref "#add-text-to-add-at-the-end-of-a-null-or-empty-text" >}} +[NullOrEmptyTextToAdd Example]: {{< ref "#add-null-or-empty-text-to-add-at-the-end-of-another-text" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/add-text/add-text-before-index-block.md b/content/en/docs/2024.11/Reference/Blocks/Text/add-text/add-text-before-index-block.md new file mode 100644 index 000000000..03f569a5f --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/add-text/add-text-before-index-block.md @@ -0,0 +1,144 @@ +--- +title: "Add Text Before Index" +linkTitle: "Add Text Before Index" +description: "Adds text to another text before the specified index." +--- + +{{< figure src="/blocks/Cortex_Blocks_Text_AddText_AddTextBeforeIndexBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Text.AddText.AddTextBeforeIndexBlock)

+ +## Description + +Adds [Text To Add][TextToAdd Property] to another [Text][Text Property] before the specified [Index][Index Property]. + +## Examples + +### Add Text To Add to another Text before the given Index + +This example will add `"|"` before `"A"` (which is at index `0`) in `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"` | `($)Text` is a variable of type [String][] | +| [Text To Add][TextToAdd Property] | `($)TextToAdd`, with value `"\|"` | `($)TextToAdd` is a variable of type [String][] | +| [Index][Index Property] | `($)Index`, with value `0` | `($)Index` is a variable of type [Int32][] | + +#### Result + +`"A"` is at index `0` in `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"`. Therefore, adding `"|"` before index `0` results in the variable `($)Text` being updated to the following: + +```json +"|ABCDEFGHIJKLMNOPQRSTUVWXYZ" +``` + +*** + +### Add null or empty Text To Add to another Text before the given Index + +This example will try to add `null` or `""` before `"A"` (which is at index `0`) in `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"` | `($)Text` is a variable of type [String][] | +| [Text To Add][TextToAdd Property] | `($)TextToAdd`, with value `null` or `""` | `($)TextToAdd` is a variable of type [String][] | +| [Index][Index Property] | `($)Index`, with value `0` | `($)Index` is a variable of type [Int32][] | + +#### Result + +Adding `null` or `""` performs no operation as there is nothing to add, so the variable `($)Text` will remain as follows: + +```json +"ABCDEFGHIJKLMNOPQRSTUVWXYZ" +``` + +*** + +## Properties + +### Text + +The [Text][Text Property] where the [Text To Add][TextToAdd Property] is added. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +### Text To Add + +The [Text To Add][TextToAdd Property] to the [Text][Text Property] before the given [Index][Index Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | `$@""` | + +### Index + +The [Index][Index Property] to add the [Text To Add][TextToAdd Property] before. + +For information about what an index is, please see [Indexes]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `0` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyValueOutOfRangeException][] | Thrown when [Text][Text Property] is `null` or empty (i.e. `""`). | +| | Thrown when [Index][Index Property] is less than zero or greater than the length of [Text][Text Property] - `1`. | + +## Remarks + +### Null or empty Text To Add + +If [Text To Add][TextToAdd Property] is `null` or empty (i.e. `""`) nothing is added to [Text][Text Property]. See [Example][NullOrEmptyTextToAdd Example] above. + +### Immutable String data type + +The [String][] data type used to represent [Text][Text Property] is immutable, which means it is read-only and cannot be changed once created. + +To overcome this, this block creates a new [String][] which has the [Text To Add][TextToAdd Property] added in the correct place and re-assigns it to the variable specified in the [Text][Text Property] property. + +[Text Property]: {{< ref "#text" >}} +[TextToAdd Property]: {{< ref "#text-to-add" >}} +[Index Property]: {{< ref "#index" >}} + +[NullOrEmptyTextToAdd Example]: {{< ref "#add-null-or-empty-text-to-add-to-another-text-before-the-given-index" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Indexes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Indexes.MainDoc" >}} + +[PropertyValueOutOfRangeException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.MainDoc" >}} + +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/contains-text/_index.md b/content/en/docs/2024.11/Reference/Blocks/Text/contains-text/_index.md new file mode 100644 index 000000000..a39909591 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/contains-text/_index.md @@ -0,0 +1,5 @@ +--- +title: "Contains Text" +linkTitle: "Contains Text" +description: "Check if text is contained in another text." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/contains-text/contains-all-text-block.md b/content/en/docs/2024.11/Reference/Blocks/Text/contains-text/contains-all-text-block.md new file mode 100644 index 000000000..e369d9766 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/contains-text/contains-all-text-block.md @@ -0,0 +1,261 @@ +--- +title: "Contains All Text" +linkTitle: "Contains All Text" +description: "Checks if text contains all of the texts in a given set of texts." +--- + +{{< figure src="/blocks/Cortex_Blocks_Text_ContainsText_ContainsAllTextBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Text.ContainsText.ContainsAllTextBlock)

+ +## Description + +Checks if [Text][Text Property] contains all of the texts in a given set of [Texts To Find][TextsToFind Property]. + +[Search Options][SearchOptions Property] can be specified to choose whether to use a LiteralText, PatternMatching or Regex search to perform the check. + +## Examples + +### Text contains all of the texts in Texts To Find + +This example will check whether `"The quick brown fox jumps over the lazy dog"` contains all of the texts in `["The", "quick", "brown", "fox"]`. + +It performs a [case-sensitive, culture-insensitive][Ordinal] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog"` | `($)Text` is a variable of type [String][] | +| [Texts To Find][TextsToFind Property] | `($)TextsToFind`, with value `["The", "quick", "brown", "fox"]` | `($)TextsToFind` is a variable of type [IEnumerable][]<[String][]> | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.LiteralText` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Contains All Text][ContainsAllText Property] | `($)ContainsAllText`, with no value | `($)ContainsAllText` is a variable that will be set to a [Boolean][] value | + +#### Result + +`"The quick brown fox jumps over the lazy dog"` contains all of the texts in `["The", "quick", "brown", "fox"]`. Therefore, the variable `($)ContainsAllText` will be updated to the following: + +```json +true +``` + +*** + +### Text does not contain all of the texts in Texts To Find + +This example will check whether `"The quick brown fox jumps over the lazy dog"` contains all of the texts in `["the", "slow", "brown", "fox"]`. + +It performs a [case-sensitive, culture-insensitive][Ordinal] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog"` | `($)Text` is a variable of type [String][] | +| [Texts To Find][TextsToFind Property] | `($)TextsToFind`, with value `["the", "slow", "brown", "fox"]` | `($)TextsToFind` is a variable of type [IEnumerable][]<[String][]> | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.LiteralText` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Contains All Text][ContainsAllText Property] | `($)ContainsAllText`, with no value | `($)ContainsAllText` is a variable that will be set to a [Boolean][] value | + +#### Result + +`"The quick brown fox jumps over the lazy dog"` does not contain all of the texts in `["the", "slow", "brown", "fox"]`; `"slow"` is missing, and `"the"` does not match `"The"` as the specified [Comparison Type][ComparisonType Property] uses case-sensitive matching. Therefore, the variable `($)ContainsAllText` will be updated to the following: + +```json +false +``` + +*** + +### Text contains text that matches all of the patterns in Texts To Find + +This example will check whether `"The quick brown fox jumps over the lazy dog"` contains text that matches all of the patterns in `["?he", "?uick", "*?own", "fox"]`. + +It performs a [case-sensitive, culture-insensitive][Ordinal] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog"` | `($)Text` is a variable of type [String][] | +| [Texts To Find][TextsToFind Property] | `($)TextsToFind`, with value `["?he", "?uick", "*?own", "fox"]` | `($)TextsToFind` is a variable of type [IEnumerable][]<[String][]> | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.PatternMatching` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Contains All Text][ContainsAllText Property] | `($)ContainsAllText`, with no value | `($)ContainsAllText` is a variable that will be set to a [Boolean][] value | + +#### Result + +`"The quick brown fox jumps over the lazy dog"` contains text that matches all of the patterns in `["?he", "?uick", "*?own", "fox"]`. Therefore, the variable `($)ContainsAllText` will be updated to the following: + +```json +true +``` + +*** + +### Text contains text that matches all of the regexes in Texts To Find + +This example will check whether `"The quick brown fox jumps over the lazy dog"` contains text that matches all of the regexes in `["^The", "(quick|fast)", "b.* ", "(fox|Fox)"]`. + +It performs a [case-sensitive, culture-insensitive][Ordinal] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog"` | `($)Text` is a variable of type [String][] | +| [Texts To Find][TextsToFind Property] | `($)TextsToFind`, with value `["^The", "(quick\|fast)", "b.* ", "(fox\|Fox)"]` | `($)TextsToFind` is a variable of type [IEnumerable][]<[String][]> | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.Regex` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Contains All Text][ContainsAllText Property] | `($)ContainsAllText`, with no value | `($)ContainsAllText` is a variable that will be set to a [Boolean][] value | + +#### Result + +`"The quick brown fox jumps over the lazy dog"` contains text that matches all of the regexes in `["^The", "(quick|fast)", "b.* ", "(fox|Fox)"]`. Therefore, the variable `($)ContainsAllText` will be updated to the following: + +```json +true +``` + +*** + +## Properties + +### Text + +The [Text][Text Property] to check whether it contains all of the texts in the given set of [Texts To Find][TextsToFind Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +### Texts To Find + +The set of [Texts To Find][TextsToFind Property] to check are all contained in [Text][Text Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IEnumerable][]<[String][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | `new List() {}` | + +### Search Options + +[Search Options][SearchOptions Property] can be specified to choose whether items in [Texts To Find][TextsToFind Property] should be interpreted as a LiteralText, PatternMatching or Regex search: + +* `SearchOptions.LiteralText` matches text exactly; as long as the [Text][Text Property] contains the text specified in [Texts To Find][TextsToFind Property] it will be considered a match. +* `SearchOptions.PatternMatching` allows wildcard text matching using [Pattern Matching Syntax][]: + * `*` wildcard character can be used to match `0` or more characters. + * `?` wildcard character can be used to match `0` or `1` character. + * All other characters are treated as a literal character. +* `SearchOptions.Regex` allows regex text matching using [.Net Regex Syntax][Regex Syntax]. + +Please note that with `SearchOptions.LiteralText` overlapping matches are detected (e.g. searching for `"aa"` in `"aaa"` matches `"aa"` at index `0` and `"aa"` at index `1`). With `SearchOptions.Regex` only `"aa"` at index `0` will be matched. + +| | | +|--------------------|---------------------------| +| Data Type | [SearchOptions][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | `LiteralText` | + +### Comparison Type + +The [Comparison Type][ComparisonType Property] specifying the rules used to determine whether each text in [Texts To Find][TextsToFind Property] is contained in [Text][Text Property] + +For information about the [supported values][ComparisonTypes] for the [Comparison Type][ComparisonType Property] property and examples of how it is determined whether two pieces of text match, please see [Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [StringComparison][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | `Ordinal` | + +### Contains All Text + +The result of the contains all text check. + +If all of the texts in [Texts To Find][TextsToFind Property] are contained in [Text][Text Property], the specified variable will be set to `true`, otherwise it will be set to `false`. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)ContainsAllText` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [ArgumentException][] | Thrown when [Comparison Type][ComparisonType Property] is not one of the specified [StringComparison][] types (e.g. `(StringComparison)10`). | +| | Thrown when [Search Options][SearchOptions Property] is not one of the specified [SearchOptions][] types (e.g. `(SearchOptions)10`). | +| [PropertyNullException][] | Thrown when [Texts To Find][TextsToFind Property] is `null`. | +| [RegexMatchTimeoutException][] | Thrown when [Search Options][SearchOptions Property] is either `SearchOptions.Regex` or `SearchOptions.PatternMatching` and the execution time of the search exceeds `30` seconds. | +| [RegexParsingFailedException][] | Thrown when [Search Options][SearchOptions Property] is `SearchOptions.Regex` and one or more items in [Texts To Find][TextsToFind Property] are not a valid regex (e.g. `(`). | + +## Remarks + +### Comparison Types + +For information about the [supported values][ComparisonTypes] for the [Comparison Type][ComparisonType Property] property and examples of how it is determined whether two pieces of text match, please see [Equality][]. + +### Null or empty Text + +If [Text][Text Property] is `null` or empty (i.e. `""`), the variable specified in the [Contains All Text][ContainsAllText Property] property is set to `false`. + +### Null or empty Texts To Find + +If [Texts To Find][TextsToFind Property] is empty or contains any `null` or empty (i.e. `""`) text, the variable specified in the [Contains All Text][ContainsAllText Property] property is set to `false`. + +### Known Limitations + +If [Search Options][SearchOptions Property] is set to `SearchOptions.Regex` or `SearchOptions.PatternMatching` and [Comparison Type][ComparisonType Property] is set to `StringComparison.CurrentCulture`, some characters such as `æ` that is equivalent to `ae` may not evaluate as equal. + +[Text Property]: {{< ref "#text" >}} +[TextsToFind Property]: {{< ref "#texts-to-find" >}} +[SearchOptions Property]: {{< ref "#search-options" >}} +[ComparisonType Property]: {{< ref "#comparison-type" >}} +[ContainsAllText Property]: {{< ref "#contains-all-text" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.MainDoc" >}} +[ComparisonTypes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.MainDoc" >}} +[Ordinal]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.Ordinal" >}} +[Pattern Matching Syntax]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.PatternMatchingSyntax.MainDoc" >}} +[Regex Syntax]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.RegexSyntax.MainDoc" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[RegexParsingFailedException]: {{< url path="Cortex.Reference.Exceptions.Text.Regex.RegexParsingFailedException.MainDoc" >}} + +[ArgumentException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentException" >}} +[RegexMatchTimeoutException]: {{< url path="MSDocs.DotNet.Api.System.Text.RegularExpressions.RegexMatchTimeoutException" >}} + +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[StringComparison]: {{< url path="Cortex.Reference.DataTypes.Text.StringComparison.MainDoc" >}} +[SearchOptions]: {{< url path="Cortex.Reference.DataTypes.Text.SearchOptions.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/contains-text/contains-any-text-block.md b/content/en/docs/2024.11/Reference/Blocks/Text/contains-text/contains-any-text-block.md new file mode 100644 index 000000000..35cf47be0 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/contains-text/contains-any-text-block.md @@ -0,0 +1,261 @@ +--- +title: "Contains Any Text" +linkTitle: "Contains Any Text" +description: "Checks if text contains any of the texts in a given set of texts." +--- + +{{< figure src="/blocks/Cortex_Blocks_Text_ContainsText_ContainsAnyTextBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Text.ContainsText.ContainsAnyTextBlock)

+ +## Description + +Checks if [Text][Text Property] contains any of the texts in a given set of [Texts To Find][TextsToFind Property]. + +[Search Options][SearchOptions Property] can be specified to choose whether to use a LiteralText, PatternMatching or Regex search to perform the check. + +## Examples + +### Text contains any of the texts in Texts To Find + +This example will check whether `"The quick brown fox jumps over the lazy dog"` contains at least one of the texts in `["The", "fast", "red", "fox"]`. + +It performs a [case-sensitive, culture-insensitive][Ordinal] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog"` | `($)Text` is a variable of type [String][] | +| [Texts To Find][TextsToFind Property] | `($)TextsToFind`, with value `["The", "fast", "red", "fox"]` | `($)TextsToFind` is a variable of type [IEnumerable][]<[String][]> | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.LiteralText` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Contains Any Text][ContainsAnyText Property] | `($)ContainsAnyText`, with no value | `($)ContainsAnyText` is a variable that will be set to a [Boolean][] value | + +#### Result + +`"The quick brown fox jumps over the lazy dog"` contains the text `"The"` and `"fox"` in `["The", "fast", "red", "fox"]`. Therefore, the variable `($)ContainsAnyText` will be updated to the following: + +```json +true +``` + +*** + +### Text does not contain any of the texts in Texts To Find + +This example will check whether `"The quick brown fox jumps over the lazy dog"` contains at least one of the texts in `["the", "slow", "red", "Fox"]`. + +It performs a [case-sensitive, culture-insensitive][Ordinal] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog"` | `($)Text` is a variable of type [String][] | +| [Texts To Find][TextsToFind Property] | `($)TextsToFind`, with value `["the", "slow", "red", "Fox"]` | `($)TextsToFind` is a variable of type [IEnumerable][]<[String][]> | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.LiteralText` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Contains Any Text][ContainsAnyText Property] | `($)ContainsAnyText`, with no value | `($)ContainsAnyText` is a variable that will be set to a [Boolean][] value | + +#### Result + +`"The quick brown fox jumps over the lazy dog"` does not contain any of the texts in `["the", "slow", "red", "Flow"]`; `"slow"` and `"red"` are both missing, and `"the"` and `"Fox"` do not match `"The"` and `"fox"` respectively as the specified [Comparison Type][ComparisonType Property] uses case-sensitive matching. Therefore, the variable `($)ContainsAnyText` will be updated to the following: + +```json +false +``` + +*** + +### Text contains text that matches any of the patterns in Texts To Find + +This example will check whether `"The quick brown fox jumps over the lazy dog"` contains text that matches any of the patterns in `["?he", "Q?ick", "B*?wn", "Fox"]`. + +It performs a [case-sensitive, culture-insensitive][Ordinal] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog"` | `($)Text` is a variable of type [String][] | +| [Texts To Find][TextsToFind Property] | `($)TextsToFind`, with value `["?he", "Q?ick", "B*?wn", "Fox"]` | `($)TextsToFind` is a variable of type [IEnumerable][]<[String][]> | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.PatternMatching` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Contains Any Text][ContainsAnyText Property] | `($)ContainsAnyText`, with no value | `($)ContainsAnyText` is a variable that will be set to a [Boolean][] value | + +#### Result + +`"The quick brown fox jumps over the lazy dog"` contains text that matches one of the patterns in `["?he", "Q?ick", "B*?wn", "Fox"]`; `"?he"` matches `"The"` and `"the"`. Therefore, the variable `($)ContainsAnyText` will be updated to the following: + +```json +true +``` + +*** + +### Text contains text that matches any of the regexes in Texts To Find + +This example will check whether `"The quick brown fox jumps over the lazy dog"` contains text that matches any of the regexes in `["^The", "(Quick|Fast)", "b.* ", "(fox|Fox)$"]`. + +It performs a [case-sensitive, culture-insensitive][Ordinal] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog"` | `($)Text` is a variable of type [String][] | +| [Texts To Find][TextsToFind Property] | `($)TextsToFind`, with value `["^The", "(Quick\|Fast)", "b.* ", "(fox\|Fox)$"]` | `($)TextsToFind` is a variable of type [IEnumerable][]<[String][]> | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.Regex` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Contains Any Text][ContainsAnyText Property] | `($)ContainsAnyText`, with no value | `($)ContainsAnyText` is a variable that will be set to a [Boolean][] value | + +#### Result + +`"The quick brown fox jumps over the lazy dog"` contains text that matches any of the regexes in `["^The", "(Quick|Fast)", "b.* ", "(fox|Fox)$"]`; `"^The"` matches `"The"` at the start of the sentence. Therefore, the variable `($)ContainsAnyText` will be updated to the following: + +```json +true +``` + +*** + +## Properties + +### Text + +The [Text][Text Property] to check whether it contains any of the texts in the given set of [Texts To Find][TextsToFind Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +### Texts To Find + +The set of [Texts To Find][TextsToFind Property] to check any are contained in [Text][Text Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IEnumerable][]<[String][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | `new List() {}` | + +### Search Options + +[Search Options][SearchOptions Property] can be specified to choose whether items in [Texts To Find][TextsToFind Property] should be interpreted as a LiteralText, PatternMatching or Regex search: + +* `SearchOptions.LiteralText` matches text exactly; as long as the [Text][Text Property] contains the text specified in [Texts To Find][TextsToFind Property] it will be considered a match. +* `SearchOptions.PatternMatching` allows wildcard text matching using [Pattern Matching Syntax][]: + * `*` wildcard character can be used to match `0` or more characters. + * `?` wildcard character can be used to match `0` or `1` character. + * All other characters are treated as a literal character. +* `SearchOptions.Regex` allows regex text matching using [.Net Regex Syntax][Regex Syntax]. + +Please note that with `SearchOptions.LiteralText` overlapping matches are detected (e.g. searching for `"aa"` in `"aaa"` matches `"aa"` at index `0` and `"aa"` at index `1`). With `SearchOptions.Regex` only `"aa"` at index `0` will be matched. + +| | | +|--------------------|---------------------------| +| Data Type | [SearchOptions][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | `LiteralText` | + +### Comparison Type + +The [Comparison Type][ComparisonType Property] specifying the rules used to determine whether each text in [Texts To Find][TextsToFind Property] is contained in [Text][Text Property] + +For information about the [supported values][ComparisonTypes] for the [Comparison Type][ComparisonType Property] property and examples of how it is determined whether two pieces of text match, please see [Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [StringComparison][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | `Ordinal` | + +### Contains Any Text + +The result of the contains any text check. + +If any of the texts in [Texts To Find][TextsToFind Property] is contained in [Text][Text Property], the specified variable will be set to `true`, otherwise it will be set to `false`. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)ContainsAnyText` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [ArgumentException][] | Thrown when [Comparison Type][ComparisonType Property] is not one of the specified [StringComparison][] types (e.g. `(StringComparison)10`). | +| | Thrown when [Search Options][SearchOptions Property] is not one of the specified [SearchOptions][] types (e.g. `(SearchOptions)10`). | +| [PropertyNullException][] | Thrown when [Texts To Find][TextsToFind Property] is `null`. | +| [RegexMatchTimeoutException][] | Thrown when [Search Options][SearchOptions Property] is either `SearchOptions.Regex` or `SearchOptions.PatternMatching` and the execution time of the search exceeds `30` seconds. | +| [RegexParsingFailedException][] | Thrown when [Search Options][SearchOptions Property] is `SearchOptions.Regex` and one or more items in [Texts To Find][TextsToFind Property] are not a valid regex (e.g. `(`). | + +## Remarks + +### Comparison Types + +For information about the [supported values][ComparisonTypes] for the [Comparison Type][ComparisonType Property] property and examples of how it is determined whether two pieces of text match, please see [Equality][]. + +### Null or empty Text + +If [Text][Text Property] is `null` or empty (i.e. `""`), the variable specified in the [Contains Any Text][ContainsAnyText Property] property is set to `false`. + +### Null or empty Texts To Find + +If [Texts To Find][TextsToFind Property] is empty or only contains `null` or empty (i.e. `""`) text, the variable specified in the [Contains Any Text][ContainsAnyText Property] property is set to `false`. + +### Known Limitations + +If [Search Options][SearchOptions Property] is set to `SearchOptions.Regex` or `SearchOptions.PatternMatching` and [Comparison Type][ComparisonType Property] is set to `StringComparison.CurrentCulture`, some characters such as `æ` that is equivalent to `ae` may not evaluate as equal. + +[Text Property]: {{< ref "#text" >}} +[TextsToFind Property]: {{< ref "#texts-to-find" >}} +[SearchOptions Property]: {{< ref "#search-options" >}} +[ComparisonType Property]: {{< ref "#comparison-type" >}} +[ContainsAnyText Property]: {{< ref "#contains-any-text" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.MainDoc" >}} +[ComparisonTypes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.MainDoc" >}} +[Ordinal]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.Ordinal" >}} +[Pattern Matching Syntax]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.PatternMatchingSyntax.MainDoc" >}} +[Regex Syntax]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.RegexSyntax.MainDoc" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[RegexParsingFailedException]: {{< url path="Cortex.Reference.Exceptions.Text.Regex.RegexParsingFailedException.MainDoc" >}} + +[ArgumentException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentException" >}} +[RegexMatchTimeoutException]: {{< url path="MSDocs.DotNet.Api.System.Text.RegularExpressions.RegexMatchTimeoutException" >}} + +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[StringComparison]: {{< url path="Cortex.Reference.DataTypes.Text.StringComparison.MainDoc" >}} +[SearchOptions]: {{< url path="Cortex.Reference.DataTypes.Text.SearchOptions.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/contains-text/contains-text-block.md b/content/en/docs/2024.11/Reference/Blocks/Text/contains-text/contains-text-block.md new file mode 100644 index 000000000..5d43abc66 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/contains-text/contains-text-block.md @@ -0,0 +1,258 @@ +--- +title: "Contains Text" +linkTitle: "Contains Text" +description: "Checks if text contains another text." +--- + +{{< figure src="/blocks/Cortex_Blocks_Text_ContainsText_ContainsTextBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Text.ContainsText.ContainsTextBlock)

+ +## Description + +Checks if [Text][Text Property] contains [Text To Find][TextToFind Property]. + +[Search Options][SearchOptions Property] can be specified to choose whether to use a LiteralText, PatternMatching or Regex search to perform the check. + +## Examples + +### Text contains Text To Find + +This example will check whether `"The quick brown fox jumps over the lazy dog"` contains the text `"quick brown fox"`. + +It performs a [case-sensitive, culture-insensitive][Ordinal] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog"` | `($)Text` is a variable of type [String][] | +| [Text To Find][TextToFind Property] | `($)TextToFind`, with value `"quick brown fox"` | `($)TextToFind` is a variable of type [String][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.LiteralText` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Contains Text][ContainsText Property] | `($)ContainsText`, with no value | `($)ContainsText` is a variable that will be set to a [Boolean][] value | + +#### Result + +`"The quick brown fox jumps over the lazy dog"` contains the text `"quick brown fox"`. Therefore, the variable `($)ContainsText` will be updated to the following: + +```json +true +``` + +*** + +### Text does not contain Text To Find + +This example will check whether `"The quick brown fox jumps over the lazy dog"` contains the text `"quick red fox"`. + +It performs a [case-sensitive, culture-insensitive][Ordinal] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog"` | `($)Text` is a variable of type [String][] | +| [Text To Find][TextToFind Property] | `($)TextToFind`, with value `"quick red fox"` | `($)TextToFind` is a variable of type [String][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.LiteralText` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Contains Text][ContainsText Property] | `($)ContainsText`, with no value | `($)ContainsText` is a variable that will be set to a [Boolean][] value | + +#### Result + +`"The quick brown fox jumps over the lazy dog"` does not contain `"quick red fox"`. Therefore, the variable `($)ContainsText` will be updated to the following: + +```json +false +``` + +*** + +### Text contains text that matches the pattern in Text To Find + +This example will check whether `"The quick brown fox jumps over the lazy dog"` contains text that matches the pattern `"*?he"`. + +It performs a [case-sensitive, culture-insensitive][Ordinal] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog"` | `($)Text` is a variable of type [String][] | +| [Text To Find][TextToFind Property] | `($)TextToFind`, with value `"?he"` | `($)TextToFind` is a variable of type [String][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.PatternMatching` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Contains Text][ContainsText Property] | `($)ContainsText`, with no value | `($)ContainsText` is a variable that will be set to a [Boolean][] value | + +#### Result + +`"The quick brown fox jumps over the lazy dog"` contains `"The"` and `"the"` that matches the pattern `"?he"`. Therefore, the variable `($)ContainsText` will be updated to the following: + +```json +true +``` + +*** + +### Text contains text that matches the regex in Text To Find + +This example will check whether `"The quick brown fox jumps over the lazy dog"` contains text that matches the regex `"^The"`. + +It performs a [case-sensitive, culture-insensitive][Ordinal] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog"` | `($)Text` is a variable of type [String][] | +| [Text To Find][TextToFind Property] | `($)TextToFind`, with value `"^The"` | `($)TextToFind` is a variable of type [String][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.Regex` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Contains Text][ContainsText Property] | `($)ContainsText`, with no value | `($)ContainsText` is a variable that will be set to a [Boolean][] value | + +#### Result + +`"The quick brown fox jumps over the lazy dog"` contains `"The"` at the start of the sentence that matches the regex `"^The"`. Therefore, the variable `($)ContainsText` will be updated to the following: + +```json +true +``` + +*** + +## Properties + +### Text + +The [Text][Text Property] to check whether it contains [Text To Find][TextToFind Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +### Text To Find + +The [Text To Find][TextToFind Property] in [Text][Text Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | `$@""` | + +### Search Options + +[Search Options][SearchOptions Property] can be specified to choose whether [Text To Find][TextToFind Property] should be interpreted as a LiteralText, PatternMatching or Regex search: + +* `SearchOptions.LiteralText` matches text exactly; as long as the [Text][Text Property] contains the text specified in [Text To Find][TextToFind Property] it will be considered a match. +* `SearchOptions.PatternMatching` allows wildcard text matching using [Pattern Matching Syntax][]: + * `*` wildcard character can be used to match `0` or more characters. + * `?` wildcard character can be used to match `0` or `1` character. + * All other characters are treated as a literal character. +* `SearchOptions.Regex` allows regex text matching using [.Net Regex Syntax][Regex Syntax]. + +Please note that with `SearchOptions.LiteralText` overlapping matches are detected (e.g. searching for `"aa"` in `"aaa"` matches `"aa"` at index `0` and `"aa"` at index `1`). With `SearchOptions.Regex` only `"aa"` at index `0` will be matched. + +| | | +|--------------------|---------------------------| +| Data Type | [SearchOptions][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | `LiteralText` | + +### Comparison Type + +The [Comparison Type][ComparisonType Property] specifying the rules used to determine whether [Text To Find][TextToFind Property] is contained in [Text][Text Property] + +For information about the [supported values][ComparisonTypes] for the [Comparison Type][ComparisonType Property] property and examples of how it is determined whether two pieces of text match, please see [Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [StringComparison][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | `Ordinal` | + +### Contains Text + +The result of the contains text check. + +If [Text To Find][TextToFind Property] is contained in [Text][Text Property], the specified variable will be set to `true`, otherwise it will be set to `false`. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)ContainsText` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [ArgumentException][] | Thrown when [Comparison Type][ComparisonType Property] is not one of the specified [StringComparison][] types (e.g. `(StringComparison)10`). | +| | Thrown when [Search Options][SearchOptions Property] is not one of the specified [SearchOptions][] types (e.g. `(SearchOptions)10`). | +| [RegexMatchTimeoutException][] | Thrown when [Search Options][SearchOptions Property] is either `SearchOptions.Regex` or `SearchOptions.PatternMatching` and the execution time of the search exceeds `30` seconds. | +| [RegexParsingFailedException][] | Thrown when [Search Options][SearchOptions Property] is `SearchOptions.Regex` and [Text To Find][TextToFind Property] is not a valid regex (e.g. `(`). | + +## Remarks + +### Comparison Types + +For information about the [supported values][ComparisonTypes] for the [Comparison Type][ComparisonType Property] property and examples of how it is determined whether two pieces of text match, please see [Equality][]. + +### Null or empty Text + +If [Text][Text Property] is `null` or empty (i.e. `""`), the variable specified in the [Contains Text][ContainsText Property] property is set to `false`. + +### Null or empty Text To Find + +If [Text To Find][TextToFind Property] is `null` or empty (i.e. `""`), the variable specified in the [Contains Text][ContainsText Property] property is set to `false`. + +### Known Limitations + +If [Search Options][SearchOptions Property] is set to `SearchOptions.Regex` or `SearchOptions.PatternMatching` and [Comparison Type][ComparisonType Property] is set to `StringComparison.CurrentCulture`, some characters such as `æ` that is equivalent to `ae` may not evaluate as equal. + +[Text Property]: {{< ref "#text" >}} +[TextToFind Property]: {{< ref "#text-to-find" >}} +[SearchOptions Property]: {{< ref "#search-options" >}} +[ComparisonType Property]: {{< ref "#comparison-type" >}} +[ContainsText Property]: {{< ref "#contains-text" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.MainDoc" >}} +[ComparisonTypes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.MainDoc" >}} +[Ordinal]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.Ordinal" >}} +[Pattern Matching Syntax]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.PatternMatchingSyntax.MainDoc" >}} +[Regex Syntax]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.RegexSyntax.MainDoc" >}} + +[RegexParsingFailedException]: {{< url path="Cortex.Reference.Exceptions.Text.Regex.RegexParsingFailedException.MainDoc" >}} + +[ArgumentException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentException" >}} +[RegexMatchTimeoutException]: {{< url path="MSDocs.DotNet.Api.System.Text.RegularExpressions.RegexMatchTimeoutException" >}} + +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[StringComparison]: {{< url path="Cortex.Reference.DataTypes.Text.StringComparison.MainDoc" >}} +[SearchOptions]: {{< url path="Cortex.Reference.DataTypes.Text.SearchOptions.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/decode-text/_index.md b/content/en/docs/2024.11/Reference/Blocks/Text/decode-text/_index.md new file mode 100644 index 000000000..fc6653945 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/decode-text/_index.md @@ -0,0 +1,5 @@ +--- +title: "Decode Text" +linkTitle: "Decode Text" +description: "Decode text from a specified format (e.g. `\"Base64\"`)." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/decode-text/decode-text-block.md b/content/en/docs/2024.11/Reference/Blocks/Text/decode-text/decode-text-block.md new file mode 100644 index 000000000..afde31ce1 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/decode-text/decode-text-block.md @@ -0,0 +1,227 @@ +--- +title: "Decode Text" +linkTitle: "Decode Text" +description: "Decodes text from a specified format (e.g. `\"Base64\"`)." +--- + +{{< figure src="/blocks/Cortex_Blocks_Text_DecodeText_DecodeTextBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Text.DecodeText.DecodeTextBlock)

+ +## Description + +Decodes [Text][Text Property] from the specified [Format][Format Property]. + +## Examples + +### Text decoded from Base64 + +This example will decode the [Base64][] encoded text `"VGhlIHF1aWNrIGJyb3duIGZveCBqdW1wcyBvdmVyIHRoZSBsYXp5IGRvZw=="` to `"The quick brown fox jumps over the lazy dog"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"VGhlIHF1aWNrIGJyb3duIGZveCBqdW1wcyBvdmVyIHRoZSBsYXp5IGRvZw=="` | `($)Text` is a variable of type [String][] | +| [Format][Format Property] | `($)Format`, with value `"TextEncodingFormat.Base64"` | `($)Format` is a variable of type [TextEncodingFormat][] + +#### Result + +Decoding `"VGhlIHF1aWNrIGJyb3duIGZveCBqdW1wcyBvdmVyIHRoZSBsYXp5IGRvZw=="` with the [Format][Format Property] [Base64] will result in the variable `($)Text` being updated to the following: + +```json +"The quick brown fox jumps over the lazy dog" +``` + +*** + +### Text decoded from Url + +This example will decode the [Url][] encoded text `"The%20quick%20brown%20fox%20jumps%20over%20the%20lazy%20dog%21"` to `"The quick brown fox jumps over the lazy dog!"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The%20quick%20brown%20fox%20jumps%20over%20the%20lazy%20dog%21"` | `($)Text` is a variable of type [String][] | +| [Format][Format Property] | `($)Format`, with value `"TextEncodingFormat.Url"` | `($)Format` is a variable of type [TextEncodingFormat][] + +#### Result + +Decoding `"The%20quick%20brown%20fox%20jumps%20over%20the%20lazy%20dog%21"` with the [Format][Format Property] [Url] will result in the variable `($)Text` being updated to the following: + +```json +"The quick brown fox jumps over the lazy dog!" +``` + +*** + +### Text decoded from Hex + +This example will decode the [Hex][] encoded text `"54686520717569636B2062726F776E20666F78206A756D7073206F76657220746865206C617A7920646F67"` to `"The quick brown fox jumps over the lazy dog"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"54686520717569636B2062726F776E20666F78206A756D7073206F76657220746865206C617A7920646F67"` | `($)Text` is a variable of type [String][] | +| [Format][Format Property] | `($)Format`, with value `"TextEncodingFormat.Hex"` | `($)Format` is a variable of type [TextEncodingFormat][] + +#### Result + +Decoding `"54686520717569636B2062726F776E20666F78206A756D7073206F76657220746865206C617A7920646F67"` with the [Format][Format Property] [Hex] will result in the variable `($)Text` being updated to the following: + +```json +"The quick brown fox jumps over the lazy dog" +``` + +*** + +### Text decoded from Html + +This example will decode the [Html][] encoded text `"<p>The quick brown fox jumps over the lazy dog!</p>"` to `"

The quick brown fox jumps over the lazy dog!

"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"<p>The quick brown fox jumps over the lazy dog!</p>"` | `($)Text` is a variable of type [String][] | +| [Format][Format Property] | `($)Format`, with value `"TextEncodingFormat.Html"` | `($)Format` is a variable of type [TextEncodingFormat][] + +#### Result + +Decoding `"<p>The quick brown fox jumps over the lazy dog!</p>"` with the [Format][Format Property] [Html] will result in the variable `($)Text` being updated to the following: + +```json +"

The quick brown fox jumps over the lazy dog!

" +``` + +*** + +## Properties + +### Text + +The [Text][Text Property] to decode from the specified [Format][Format Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +### Format + +The [Format][Format Property] used to decode the given [Text][Text Property]. + +[Format][Format Property] can be any of the predefined values: + +* `TextEncodingFormat.Base64` +* `TextEncodingFormat.Url` +* `TextEncodingFormat.Hex` +* `TextEncodingFormat.Html` +* `TextEncodingFormat.Utf8` +* `TextEncodingFormat.Base64Url` + +| | | +|--------------------|---------------------------| +| Data Type | [TextEncodingFormat][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `Base64` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [ArgumentException][] | Thrown when [Format][Format Property] is not one of the specified [TextEncodingFormat][] types (e.g. `(TextEncodingFormat)10`). | +| [TextDecodingException][] | Thrown when [Text][Text Property] contains an invalid character for [Base64] decoding. For more information, see [Invalid Base64 Character][InvalidBase64]. | +||Thrown when [Text][Text Property] contains an odd number of characters for [Hex] decoding. For more information, see [Odd number of characters using Hex][InvalidHex]. | +|| Thrown when [Text][Text Property] contains an invalid character for [Base64Url] decoding. For more information, see [Invalid Base64Url Character][InvalidBase64Url]. | + +## Remarks + +### Null or empty Text + +If [Text][Text Property] is `null` or empty (i.e. `""`) there is nothing to decode, so no operation is performed. + +### Decoding out of range URL characters + +When decoding using the [Url][] [Format][Format Property], characters not in the valid range (i.e.`%00` to `%ff`) will be treated as literal characters (e.g. `"%zzExample%21"` will decode to `"%zzExample!"`). + +### Decoding invalid Hex values + +When decoding using the [Hex] [Format][Format Property], characters not in the valid set (i.e. `0-9` and `A-F`) will overflow (e.g. `G` overflows to `0`), further examples are shown below: +| Encoded Text | Overflows To | Decoded Text | +|--------------|--------------|--------------| +| 4G           | 40           | @            | +| 4H           | 41           | A            | +| 4I           | 42           | B            | +| J1           | 31           | 1            | +| K1           | 41           | A            | +| L1           | 51           | Q            | + +### Decoding invalid HTML entities + +When decoding using the [Html] [Format][Format Property], invalid [HTML Entities][HTMLEntity] will be removed (e.g. `"Example&InvalidEntity;"` will decode to `"Example"`). + +### Decoding HTML ampersand + +When decoding using the [Html] [Format][Format Property], any ampersand that is not part of an [HTML Entity][HTMLEntity] will be removed (e.g. `"Example&Something"` will decode to `"ExampleSomething"`). + +### Decoding HTML semicolon + +When decoding using the [Html] [Format][Format Property], any semicolon that is not part of an [HTML Entity][HTMLEntity] will be treated as a literal character (e.g. `"ExampleSomething;"` will decode to `"ExampleSomething;"`). + +### Round-Tripping + +It should be possible to pass the text created by an [Encode Text block][Encode Text] to this block, and then pass the text created by this block back to an [Encode Text block][Encode Text]; this is called round-tripping. + +### Immutable String data type + +The [String][] data type used to represent [Text][Text Property] is immutable, which means it is read-only and cannot be changed once created. + +To overcome this, this block creates a new [String][] which has the [Text][Text Property] decoded from the specified format and reassigns it to the specified [Text][Text Property] property. + +### Known Limitations + +When decoding using the [Html] [Format][Format Property], any HTML5 named [entities][HTMLEntity] (e.g. `"φ"`) will be removed. + +This limitation may be removed in the future. + +[Text Property]: {{< ref "#text" >}} +[Format Property]: {{< ref "#format" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[TextEncodingFormat]: {{< url path="Cortex.Reference.DataTypes.Text.Encoding.TextEncodingFormat.MainDoc" >}} + +[ArgumentException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentException" >}} +[TextDecodingException]: {{< url path="Cortex.Reference.Exceptions.Text.Encoding.TextDecodingException.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Html]: {{< url path="Cortex.Reference.DataTypes.Text.Encoding.TextEncodingFormat.Html" >}} +[Base64]: {{< url path="Cortex.Reference.DataTypes.Text.Encoding.TextEncodingFormat.Base64" >}} +[Hex]: {{< url path="Cortex.Reference.DataTypes.Text.Encoding.TextEncodingFormat.Hex" >}} +[Base64Url]: {{< url path="Cortex.Reference.DataTypes.Text.Encoding.TextEncodingFormat.Base64Url" >}} +[Url]: {{< url path="Cortex.Reference.DataTypes.Text.Encoding.TextEncodingFormat.Url" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} + +[InvalidBase64]: {{< url path="Cortex.Reference.Exceptions.Text.Encoding.TextDecodingException.InvalidBase64" >}} +[InvalidHex]: {{< url path="Cortex.Reference.Exceptions.Text.Encoding.TextDecodingException.InvalidHex" >}} +[InvalidBase64Url]: {{< url path="Cortex.Reference.Exceptions.Text.Encoding.TextDecodingException.InvalidBase64Url" >}} + +[Encode Text]: {{< url path="Cortex.Reference.Blocks.Text.EncodeText.EncodeText.MainDoc" >}} +[HTMLEntity]: {{< url path="Cortex.Reference.Glossary.F-J.HTMLEntity" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/encode-text/_index.md b/content/en/docs/2024.11/Reference/Blocks/Text/encode-text/_index.md new file mode 100644 index 000000000..38ce0b2f7 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/encode-text/_index.md @@ -0,0 +1,5 @@ +--- +title: "Encode Text" +linkTitle: "Encode Text" +description: "Encode text to a specified format (e.g. `\"Base64\"`)." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/encode-text/encode-text-block.md b/content/en/docs/2024.11/Reference/Blocks/Text/encode-text/encode-text-block.md new file mode 100644 index 000000000..1b5d720a1 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/encode-text/encode-text-block.md @@ -0,0 +1,177 @@ +--- +title: "Encode Text" +linkTitle: "Encode Text" +description: "Encodes text to a specified format (e.g. `\"Base64\"`)." +--- + +{{< figure src="/blocks/Cortex_Blocks_Text_EncodeText_EncodeTextBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Text.EncodeText.EncodeTextBlock)

+ +## Description + +Encodes [Text][Text Property] to a specified [Format][Format Property]. + +## Examples + +### Text encoded to Base64 + +This example will encode the text `"The quick brown fox jumps over the lazy dog"` to `"VGhlIHF1aWNrIGJyb3duIGZveCBqdW1wcyBvdmVyIHRoZSBsYXp5IGRvZw=="`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog"` | `($)Text` is a variable of type [String][] | +| [Format][Format Property] | `($)Format`, with value `"TextEncodingFormat.Base64"` | `($)Format` is a variable of type [TextEncodingFormat][] | + +#### Result + +Encoding `"The quick brown fox jumps over the lazy dog"` to the [Format][Format Property] [Base64][] will result in the variable `($)Text` being updated to the following: + +```json +"VGhlIHF1aWNrIGJyb3duIGZveCBqdW1wcyBvdmVyIHRoZSBsYXp5IGRvZw==" +``` + +*** + +### Text encoded to Url + +This example will encode the text `"The quick brown fox jumps over the lazy dog!"` to `"The%20quick%20brown%20fox%20jumps%20over%20the%20lazy%20dog%21"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The%20quick%20brown%20fox%20jumps%20over%20the%20lazy%20dog%21"` | `($)Text` is a variable of type [String][] | +| [Format][Format Property] | `($)Format`, with value `"TextEncodingFormat.Url"` | `($)Format` is a variable of type [TextEncodingFormat][] + +#### Result + +Encoding `"The%20quick%20brown%20fox%20jumps%20over%20the%20lazy%20dog%21"` to the [Format][Format Property] [Url] will result in the variable `($)Text` being updated to the following: + +```json +"The%20quick%20brown%20fox%20jumps%20over%20the%20lazy%20dog%21" +``` + +*** + +### Text encoded to Hex + +This example will encode the text `"The quick brown fox jumps over the lazy dog"` to `"54686520717569636b2062726f776e20666f78206a756d7073206f76657220746865206c617a7920646f67"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog"` | `($)Text` is a variable of type [String][] | +| [Format][Format Property] | `($)Format`, with value `"TextEncodingFormat.Hex"` | `($)Format` is a variable of type [TextEncodingFormat][] | + +#### Result + +Encoding `"The quick brown fox jumps over the lazy dog"` to the [Format][Format Property] [Hex][] will result in the variable `($)Text` being updated to the following: + +```json +"54686520717569636b2062726f776e20666f78206a756d7073206f76657220746865206c617a7920646f67" +``` + +*** + +### Text encoded to Html + +This example will encode the text `"

The quick brown fox jumps over the lazy dog!

"` to `"<p>The quick brown fox jumps over the lazy dog!</p>"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"

The quick brown fox jumps over the lazy dog!

"` | `($)Text` is a variable of type [String][] | +| [Format][Format Property] | `($)Format`, with value `"TextEncodingFormat.Html"` | `($)Format` is a variable of type [TextEncodingFormat][] | + +#### Result + +Encoding `"

The quick brown fox jumps over the lazy dog!

"` to the [Format][Format Property] [Html][] will result in the variable `($)Text` being updated to the following: + +```json +"<p>The quick brown fox jumps over the lazy dog!</p>" +``` + +*** + +## Properties + +### Text + +The [Text][Text Property] to encode to the specified [Format][Format Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +### Format + +The [Format][Format Property] used to encode the given [Text][Text Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [TextEncodingFormat][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `Base64` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [ArgumentException][] | Thrown when the format is not one of the specified [Format][Format Property] types (e.g. `(TextEncodingFormat)10`). | + +## Remarks + +### Encoding to Base64 + +When encoding to [Base64][] a new line character is added every 76 characters. + +### Null or empty Text + +If [Text][Text Property] is `null` or empty (i.e. `""`), no operation is performed. + +### Round-Tripping + +It should be possible to pass the text created by a [Decode Text][] block to this block, and then pass the text created by this block back to an [Decode Text][] block; this is called round-tripping. + +### Immutable String data type + +The [String][] data type used to represent [Text][Text Property] is immutable, which means it is read-only and cannot be changed once created. + +To overcome this, this block creates a new [String][] which has the [Text][Text Property], encodes to [Format][Format Property] and re-assigns it to the variable specified in the [Text][Text Property] property. + +[Text Property]: {{< ref "#text" >}} +[Format Property]: {{< ref "#format" >}} +[Decode Text]: {{< url path="Cortex.Reference.Blocks.Text.DecodeText.DecodeText.MainDoc" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[TextEncodingFormat]: {{< url path="Cortex.Reference.DataTypes.Text.Encoding.TextEncodingFormat.MainDoc" >}} +[Html]: {{< url path="Cortex.Reference.DataTypes.Text.Encoding.TextEncodingFormat.Html" >}} +[Base64]: {{< url path="Cortex.Reference.DataTypes.Text.Encoding.TextEncodingFormat.Base64" >}} +[Hex]: {{< url path="Cortex.Reference.DataTypes.Text.Encoding.TextEncodingFormat.Hex" >}} +[Base64Url]: {{< url path="Cortex.Reference.DataTypes.Text.Encoding.TextEncodingFormat.Base64Url" >}} +[Url]: {{< url path="Cortex.Reference.DataTypes.Text.Encoding.TextEncodingFormat.Url" >}} + +[ArgumentException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentException" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/find-and-remove-text/_index.md b/content/en/docs/2024.11/Reference/Blocks/Text/find-and-remove-text/_index.md new file mode 100644 index 000000000..f11296cc6 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/find-and-remove-text/_index.md @@ -0,0 +1,5 @@ +--- +title: "Find And Remove Text" +linkTitle: "Find And Remove Text" +description: "Find text in another text, and remove it." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/find-and-remove-text/find-and-remove-all-text-block.md b/content/en/docs/2024.11/Reference/Blocks/Text/find-and-remove-text/find-and-remove-all-text-block.md new file mode 100644 index 000000000..2086bbac2 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/find-and-remove-text/find-and-remove-all-text-block.md @@ -0,0 +1,349 @@ +--- +title: "Find And Remove All Text" +linkTitle: "Find And Remove All Text" +description: "Finds and removes all occurrences of text from a given text." +--- + +{{< figure src="/blocks/Cortex_Blocks_Text_FindAndRemoveText_FindAndRemoveAllTextBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Text.FindAndRemoveText.FindAndRemoveAllTextBlock)

+ +## Description + +Finds and removes all occurrences of [Text To Find][TextToFind Property] from a given [Text][Text Property]. + +[Search Options][SearchOptions Property] can be specified to choose whether to use a LiteralText, PatternMatching or Regex search to find the [Text To Find][TextToFind Property]. + +## Examples + +### Remove all occurrences when there are multiple matches + +This example will find and remove all occurrences of `"The"` in `"The quick brown fox jumps over the lazy dog."`. + +It performs a [case-insensitive, culture-insensitive][OrdinalIgnoreCase] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog."` | `($)Text` is a variable of type [String][] | +| [Text To Find][TextToFind Property] | `($)TextToFind`, with value `{"startsWith": "", "contains": "The", "endsWith": ""}`

In this example `($)TextToFind` has been set up using the following [Expression][]:

`new TextToFind(startsWith: "", contains: "The", endsWith: "")` | `($)TextToFind` is a variable of type [TextToFind][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.LiteralText` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.OrdinalIgnoreCase` | `($)ComparisonType` is a variable of type [StringComparison][] | + +#### Result + +As this example is performing a [case-insensitive, culture-insensitive][OrdinalIgnoreCase] comparison of text (`"The quick brown fox jumps over the lazy dog."`), the text contains `"The"` twice; the first occurrence is `"The"` and the second occurrence is `"the"`. Therefore, the variable `($)Text` will be updated to `" quick brown fox jumps over{{% nbsp %}}{{% nbsp %}}lazy dog."`. + +For more information on using [SearchOptions][SearchOptions Property] and [Text To Find][TextToFind Property] see [Advanced Examples][]. + +*** + +### Remove all occurrences when there is a single match + +This example will find and remove all occurrences of `"The"` in `"The quick brown fox jumps over the lazy dog."`. + +It performs a [case-sensitive, culture-insensitive][Ordinal] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog."` | `($)Text` is a variable of type [String][] | +| [Text To Find][TextToFind Property] | `($)TextToFind`, with value `{"startsWith": "", "contains": "The", "endsWith": ""}`

In this example `($)TextToFind` has been set up using the following [Expression][]:

`new TextToFind(startsWith: "", contains: "The", endsWith: "")` | `($)TextToFind` is a variable of type [TextToFind][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.LiteralText` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | + +#### Result + +As this example is performing a [case-sensitive, culture-insensitive][Ordinal] comparison of text (`"The quick brown fox jumps over the lazy dog."`), the text contains `"The"` once; `"the"` has a different case so does not match. Therefore, the variable `($)Text` will be updated to `" quick brown fox jumps over the lazy dog."`. + +For more information on using [SearchOptions][SearchOptions Property] and [Text To Find][TextToFind Property] see [Advanced Examples][]. + +*** + +### Remove all occurrences when there are no matches + +This example will find and remove all occurrences of `"cat"` in `"The quick brown fox jumps over the lazy dog."`. + +It performs a [case-sensitive, culture-insensitive][Ordinal] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog."` | `($)Text` is a variable of type [String][] | +| [Text To Find][TextToFind Property] | `($)TextToFind`, with value `{"startsWith": "", "contains": "cat", "endsWith": ""}`

In this example `($)TextToFind` has been set up using the following [Expression][]:

`new TextToFind(startsWith: "", contains: "cat", endsWith: "")` | `($)TextToFind` is a variable of type [TextToFind][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.LiteralText` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | + +#### Results + +`"The quick brown fox jumps over the lazy dog."` does not contain an occurrence of `"cat"`. Therefore, `($)Text` is not updated and remains as `"The quick brown fox jumps over the lazy dog."`. + +For more information on using [SearchOptions][SearchOptions Property] and [Text To Find][TextToFind Property] see [Advanced Examples][]. + +*** + +## Properties + +### Text + +The [Text][Text Property] to find and remove all occurrences of [Text To Find][TextToFind Property] from. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +### Text To Find + +The [Text To Find][TextToFind Property] search query used to find and remove all matching occurrences from [Text][Text Property]. This property contains the following sub-properties: + +* [Starts With][StartsWith] +* [Contains][Contains] +* [Ends With][EndsWith] + +See [Advanced Examples][] for more information on how to use these sub-properties. + +| | | +|--------------------|---------------------------| +| Data Type | [TextToFind][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `TextToFind` with the value shown below: | + +```json +{ + "StartsWith":"", + "Contains":"", + "EndsWith":"", +} +``` + +### Search Options + +[Search Options][SearchOptions Property] can be specified to choose whether [Text To Find][TextToFind Property] should be interpreted as a LiteralText, PatternMatching or Regex search: + +* `SearchOptions.LiteralText` matches text exactly; as long as the [Text][Text Property] contains the text specified in [Text To Find][TextToFind Property] it will be considered a match. +* `SearchOptions.PatternMatching` allows wildcard text matching using [Pattern Matching Syntax][]: + * `*` wildcard character can be used to match `0` or more characters. + * `?` wildcard character can be used to match `0` or `1` character. + * All other characters are treated as a literal character. +* `SearchOptions.Regex` allows regex text matching using [.Net Regex Syntax][Regex Syntax]. + +Please note that overlapping matches are not detected (i.e. searching for `"aa"` in `"aaa"` matches `"aa"` at index `0` but not `"aa"` at index `1`). + +| | | +|--------------------|---------------------------| +| Data Type | [SearchOptions][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | `LiteralText` | + +### Comparison Type + +The [Comparison Type][ComparisonType Property] specifying the rules used to match occurrences of [Text To Find][TextToFind Property] in [Text][Text Property]. + +For information about the [supported values][ComparisonTypes] for the [Comparison Type][ComparisonType Property] property and examples of how it is determined whether two pieces of text match, please see [Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [StringComparison][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | `Ordinal` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [ArgumentException][] | Thrown when [Comparison Type][ComparisonType Property] is not one of the specified [StringComparison][] types (e.g. `(StringComparison)10`). | +| | Thrown when [Search Options][SearchOptions Property] is not one of the specified [SearchOptions][] types (e.g. `(SearchOptions)10`). | +| [RegexMatchTimeoutException][] | Thrown when the execution time of any search done to find all occurrences of [Text to Find][TextToFind Property] exceeds the [BlockTimeout][], or `60` seconds if that is undefined. | +| [RegexParsingFailedException][] | Thrown when [Search Options][SearchOptions Property] is `SearchOptions.Regex` and [TextToFind][TextToFind Property] has a property which is not a valid regex (e.g. `(`). | + +## Remarks + +### Advanced Examples + +The following sections will show examples for each possible value of [Search Options][SearchOptions Property]. + +In these examples, the following properties are common: + +| Property | Value | +|----------|-------| +| [Text][Text Property] | `"The quick brown fox jumps over the lazy dog."` | +| [Comparison Type][ComparisonType Property] | `Ordinal` | + +These sections contain tables for the examples. The columns of these tables are explained below: + +| Column Name | Explanation | +|-------------|-------------| +| TextToFind.StartsWith | Value used to define the StartsWith property of [Text To Find][TextToFind Property]. | +| TextToFind.Contains | Value used to define the Contains property of [Text To Find][TextToFind Property]. | +| TextToFind.EndsWith | Value used to define the EndsWith property of [Text To Find][TextToFind Property]. | +| Output Text | The value of the [Text][Text Property] after executing the block. \* | +\* *DEFAULT* indicates that nothing has been found and removed in [Text][Text Property], and that [Text][Text Property] is the same as was initially provided. + +Please note that these examples all perform a search which has at most one valid match in the text. + +#### SearchOptions.LiteralText + +These examples find and remove all occurrences in [Text][Text Property] with [Search Options][SearchOptions Property] set to `LiteralText` using a [case-sensitive, culture-insensitive][Ordinal] search. + +| TextToFind.StartsWith | TextToFind.Contains | TextToFind.EndsWith | Output Text | +|-----------------------|---------------------|---------------------|-------------| +| `"The"` | `"quick"` | `"brown"` | `" fox jumps over the lazy dog."` | +| `"The"` | `"quick"` | `""` | `" brown fox jumps over the lazy dog."` | +| `"The"` | `""` | `"brown"` | *DEFAULT* | +| `"The"` | `""` | `""` | `" quick brown fox jumps over the lazy dog."` | +| `""` | `"quick"` | `"brown"` | `"The{{% nbsp %}}{{% nbsp %}}fox jumps over the lazy dog."` | +| `""` | `"quick"` | `""` | `"The{{% nbsp %}}{{% nbsp %}}brown fox jumps over the lazy dog."` | +| `""` | `""` | `"brown"` | `"The quick{{% nbsp %}}{{% nbsp %}}fox jumps over the lazy dog."` | +| `""` | `""` | `""` | *DEFAULT* | + +#### SearchOptions.PatternMatching + +These examples find and remove all occurrences in [Text][Text Property] with [Search Options][SearchOptions Property] set to `PatternMatching` using a [case-sensitive, culture-insensitive][Ordinal] search. + +| TextToFind.StartsWith | TextToFind.Contains | TextToFind.EndsWith | Output Text | +|-----------------------|---------------------|---------------------|-------------| +| `"The"` | `"quick"` | `"brown"` | `" fox jumps over the lazy dog."` | +| `"The"` | `"quick"` | `""` | `" brown fox jumps over the lazy dog."` | +| `"The"` | `""` | `"brown"` | *DEFAULT* | +| `"The"` | `""` | `""` | `" quick brown fox jumps over the lazy dog."` | +| `""` | `"quick"` | `"brown"` | `"The{{% nbsp %}}{{% nbsp %}}fox jumps over the lazy dog."` | +| `""` | `"quick"` | `""` | `"The{{% nbsp %}}{{% nbsp %}}brown fox jumps over the lazy dog."` | +| `""` | `""` | `"brown"` | `"The quick{{% nbsp %}}{{% nbsp %}}fox jumps over the lazy dog."` | +| `""` | `""` | `""` | *DEFAULT* | +| `"The"` | `"quick"` | `"*"` | `""` | +| `"The"` | `"*"` | `"brown"` | `" fox jumps over the lazy dog."` | +| `"The"` | `"*"` | `"*"` | `""` | +| `"The"` | `"*"` | `""` | `""` | +| `"The"` | `""` | `"*"` | `""` | +| `"*"` | `"quick"` | `"brown"` | `" fox jumps over the lazy dog."` | +| `"*"` | `"quick"` | `"*"` | `""` | +| `"*"` | `"quick"` | `""` | `" brown fox jumps over the lazy dog."` | +| `"*"` | `"*"` | `"brown"` | `" fox jumps over the lazy dog."` | +| `"*"` | `""` | `"brown"` | `" fox jumps over the lazy dog."` | +| `"*"` | `"*"` | `"*"` | `""` | +| `"*"` | `"*"` | `""` | `""` | +| `"*"` | `""` | `"*"` | `""` | +| `"*"` | `""` | `""` | `""` | +| `""` | `"quick"` | `"*"` | `"The "` | +| `""` | `"*"` | `"brown"` | `" fox jumps over the lazy dog."` | +| `""` | `"*"` | `"*"` | `""` | +| `""` | `"*"` | `""` | `""` | +| `""` | `""` | `"*"` | `""` | + +#### SearchOptions.Regex + +These examples find and remove all occurrences in [Text][Text Property] with [Search Options][SearchOptions Property] set to `Regex` using a [case-sensitive, culture-insensitive][Ordinal] search. + +| TextToFind.StartsWith | TextToFind.Contains | TextToFind.EndsWith | Output Text | +|-----------------------|---------------------|---------------------|-------------| +| `"The"` | `"quick"` | `"brown"` | `" fox jumps over the lazy dog."` | +| `"The"` | `"quick"` | `""` | `" brown fox jumps over the lazy dog."` | +| `"The"` | `""` | `"brown"` | *DEFAULT* | +| `"The"` | `""` | `""` | `" quick brown fox jumps over the lazy dog."` | +| `""` | `"quick"` | `"brown"` | `"The{{% nbsp %}}{{% nbsp %}}fox jumps over the lazy dog."` | +| `""` | `"quick"` | `""` | `"The{{% nbsp %}}{{% nbsp %}}brown fox jumps over the lazy dog."` | +| `""` | `""` | `"brown"` | `"The quick{{% nbsp %}}{{% nbsp %}}fox jumps over the lazy dog."` | +| `""` | `""` | `""` | *DEFAULT* | +| `"The"` | `"quick"` | `".*"` | `""` | +| `"The"` | `".*"` | `"brown"` | `" fox jumps over the lazy dog."` | +| `"The"` | `".*"` | `".*"` | `""` | +| `"The"` | `".*"` | `""` | `""` | +| `"The"` | `""` | `".*"` | `""` | +| `".*"` | `"quick"` | `"brown"` | `" fox jumps over the lazy dog."` | +| `".*"` | `"quick"` | `".*"` | `""` | +| `".*"` | `"quick"` | `""` | `" brown fox jumps over the lazy dog."` | +| `".*"` | `".*"` | `"brown"` | `" fox jumps over the lazy dog."` | +| `".*"` | `""` | `"brown"` | `" fox jumps over the lazy dog."` | +| `".*"` | `".*"` | `".*"` | `""` | +| `".*"` | `".*"` | `""` | `""` | +| `".*"` | `""` | `".*"` | `""` | +| `".*"` | `""` | `""` | `""` | +| `""` | `"quick"` | `".*"` | `"The "` | +| `""` | `".*"` | `"brown"` | `" fox jumps over the lazy dog."` | +| `""` | `".*"` | `".*"` | `""` | +| `""` | `".*"` | `""` | `""` | +| `""` | `""` | `".*"` | `""` | + +### Comparison Types + +For information about the [supported values][ComparisonTypes] for the [Comparison Type][ComparisonType Property] property and examples of how it is determined whether two pieces of text match, please see [Equality][]. + +### Null or empty Text + +If [Text][Text Property] is `null` or empty (i.e. `""`) there is nothing to remove from, so no operation is performed. + +### Null or empty Text To Find + +If all properties of [Text To Find][TextToFind Property] are `null` or empty (i.e. `""`), or [Text To Find][TextToFind Property] is `null`; no operation is performed and the [Text][Text Property] remains unchanged. + +### Null or empty property of Text To Find + +If a property of [Text To Find][TextToFind Property] is `null` or empty (i.e. `""`), then it is not considered as part of the matches for [Text to Find][TextToFind Property] when determining what to remove; see [Advanced Examples][]. + +### Text To Find is not present + +If [Text To Find][TextToFind Property] is not present there is nothing to remove, so no operation is performed. + +### Immutable String data type + +The [String][] data type used to represent [Text][Text Property] is immutable, which means it is read-only and cannot be changed once created. + +To overcome this, this block creates a new [String][] with all occurrences of [Text To Find][TextToFind Property] removed and re-assigns it to the variable specified in the [Text][Text Property] property. + +### Known Limitations + +If [Comparison Type][ComparisonType Property] is set to `StringComparison.CurrentCulture`, some characters such as `æ` that is equivalent to `ae` may not evaluate as equal. + +[Advanced Examples]: {{}} +[ComparisonType Property]: {{}} +[SearchOptions Property]: {{}} +[Text Property]: {{}} +[TextToFind Property]: {{}} + +[Input]: {{}} +[InputOutput]: {{}} + +[Equality]: {{}} +[ComparisonTypes]: {{}} +[Ordinal]: {{}} +[OrdinalIgnoreCase]: {{}} +[Pattern Matching Syntax]: {{}} +[Regex Syntax]: {{}} + +[RegexParsingFailedException]: {{< url path="Cortex.Reference.Exceptions.Text.Regex.RegexParsingFailedException.MainDoc" >}} + +[ArgumentException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentException" >}} +[RegexMatchTimeoutException]: {{< url path="MSDocs.DotNet.Api.System.Text.RegularExpressions.RegexMatchTimeoutException" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[StringComparison]: {{< url path="Cortex.Reference.DataTypes.Text.StringComparison.MainDoc" >}} +[SearchOptions]: {{< url path="Cortex.Reference.DataTypes.Text.SearchOptions.MainDoc" >}} + +[TextToFind]: {{< url path="Cortex.Reference.DataTypes.Text.TextToFind.MainDoc">}} +[StartsWith]: {{< url path="Cortex.Reference.DataTypes.Text.TextToFind.StartsWith">}} +[Contains]: {{< url path="Cortex.Reference.DataTypes.Text.TextToFind.Contains">}} +[EndsWith]: {{< url path="Cortex.Reference.DataTypes.Text.TextToFind.EndsWith">}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} +[BlockTimeout]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.CommonProperties.BlockTimeoutProperty" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/find-and-remove-text/find-and-remove-text-block.md b/content/en/docs/2024.11/Reference/Blocks/Text/find-and-remove-text/find-and-remove-text-block.md new file mode 100644 index 000000000..d4f941c7c --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/find-and-remove-text/find-and-remove-text-block.md @@ -0,0 +1,394 @@ +--- +title: "Find And Remove Text" +linkTitle: "Find And Remove Text" +description: "Finds and removes the specified occurrence of text from a given text." +--- + +{{< figure src="/blocks/Cortex_Blocks_Text_FindAndRemoveText_FindAndRemoveTextBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Text.FindAndRemoveText.FindAndRemoveTextBlock)

+ +## Description + +Finds and removes the specified [Occurrence][Occurrence Property] of [Text To Find][TextToFind Property] from a given [Text][Text Property]. + +[Search Options][SearchOptions Property] can be specified to choose whether to use a LiteralText, PatternMatching or Regex search to find the [Text To Find][TextToFind Property]. + +## Examples + +### Remove the first Occurrence of text + +This example will find and remove the first occurrence of `"The"` in `"The quick brown fox jumps over the lazy dog."`. + +It performs a [case-sensitive, culture-insensitive][Ordinal] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog."` | `($)Text` is a variable of type [String][] | +| [Text To Find][TextToFind Property] | `($)TextToFind`, with value `{"startsWith": "", "contains": "The", "endsWith": ""}`

In this example `($)TextToFind` has been set up using the following [Expression][]:

`new TextToFind(startsWith: "", contains: "The", endsWith: "")` | `($)TextToFind` is a variable of type [TextToFind][] | +| [Occurrence][Occurrence Property] | `($)Occurrence`, with value `1` | `($)Occurrence` is a variable of type [Int32][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.LiteralText` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | + +#### Result + +As this example is performing a [case-sensitive, culture-insensitive][Ordinal] comparison of text (`"The quick brown fox jumps over the lazy dog."`), the text contains `"The"` once; `"the"` has a different case so does not match. Therefore, the variable `($)Text` will be updated to `" quick brown fox jumps over the lazy dog."`. + +For more information on using [SearchOptions][SearchOptions Property] and [Text To Find][TextToFind Property] see [Advanced Examples][]. + +*** + +### Remove the second Occurrence of text + +This example will find and remove the second occurrence of `"The"` in `"The quick brown fox jumps over the lazy dog."`. + +It performs a [case-insensitive, culture-insensitive][OrdinalIgnoreCase] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog."` | `($)Text` is a variable of type [String][] | +| [Text To Find][TextToFind Property] | `($)TextToFind`, with value `{"startsWith": "", "contains": "The", "endsWith": ""}`

In this example `($)TextToFind` has been set up using the following [Expression][]:

`new TextToFind(startsWith: "", contains: "The", endsWith: "")` | `($)TextToFind` is a variable of type [TextToFind][] | +| [Occurrence][Occurrence Property] | `($)Occurrence`, with value `2` | `($)Occurrence` is a variable of type [Int32][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.LiteralText` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.OrdinalIgnoreCase` | `($)ComparisonType` is a variable of type [StringComparison][] | + +#### Result + +As this example is performing a [case-insensitive, culture-insensitive][OrdinalIgnoreCase] comparison of text (`"The quick brown fox jumps over the lazy dog."`), the text contains `"The"` twice; the first occurrence is `"The"` and the second occurrence `"the"`. Therefore, the variable `($)Text` will be updated to `"The quick brown fox jumps over{{% nbsp %}}{{% nbsp %}}lazy dog."`. + +For more information on using [SearchOptions][SearchOptions Property] and [Text To Find][TextToFind Property] see [Advanced Examples][]. + +*** + +### Remove the last Occurrence of text + +This example will find and remove the last occurrence of `"The"` in `"The quick brown fox jumps over the lazy dog."`. + +It performs a [case-insensitive, culture-insensitive][OrdinalIgnoreCase] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog."` | `($)Text` is a variable of type [String][] | +| [Text To Find][TextToFind Property] | `($)TextToFind`, with value `{"startsWith": "", "contains": "The", "endsWith": ""}`

In this example `($)TextToFind` has been set up using the following [Expression][]:

`new TextToFind(startsWith: "", contains: "The", endsWith: "")` | `($)TextToFind` is a variable of type [TextToFind][] | +| [Occurrence][Occurrence Property] | `($)Occurrence`, with value `-1` | `($)Occurrence` is a variable of type [Int32][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.LiteralText` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.OrdinalIgnoreCase` | `($)ComparisonType` is a variable of type [StringComparison][] | + +#### Result + +As this example is performing a [case-insensitive, culture-insensitive][OrdinalIgnoreCase] comparison of text (`"The quick brown fox jumps over the lazy dog."`), the text contains `"The"` twice; the first occurrence is `"The"` and the second occurrence `"the"`. The second occurrence is also the last occurrence, and therefore, the variable `($)Text` will be updated to `"The quick brown fox jumps over{{% nbsp %}}{{% nbsp %}}lazy dog."`. + +For more information on using [SearchOptions][SearchOptions Property] and [Text To Find][TextToFind Property] see [Advanced Examples][]. + +*** + +### Remove an invalid Occurrence of text + +This example will find and remove the third occurrence of `"The"`, which is not present, in `"The quick brown fox jumps over the lazy dog."`. + +It performs a [case-insensitive, culture-insensitive][OrdinalIgnoreCase] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog."` | `($)Text` is a variable of type [String][] | +| [Text To Find][TextToFind Property] | `($)TextToFind`, with value `{"startsWith": "", "contains": "The", "endsWith": ""}`

In this example `($)TextToFind` has been set up using the following [Expression][]:

`new TextToFind(startsWith: "", contains: "The", endsWith: "")` | `($)TextToFind` is a variable of type [TextToFind][] | +| [Occurrence][Occurrence Property] | `($)Occurrence`, with value `3` | `($)Occurrence` is a variable of type [Int32][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.LiteralText` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.OrdinalIgnoreCase` | `($)ComparisonType` is a variable of type [StringComparison][] | + +#### Result + +As this example is performing a [case-insensitive, culture-insensitive][OrdinalIgnoreCase] comparison of the text (`"The quick brown fox jumps over the lazy dog."`), the text contains `"The"` twice; the first occurrence is `"The"` and the second occurrence is `"the"`. There is no match for the third occurrence. Therefore, the variable `($)Text` will be not be updated and remains as `"The quick brown fox jumps over the lazy dog."`. + +For more information on using [SearchOptions][SearchOptions Property] and [Text To Find][TextToFind Property] see [Advanced Examples][]. + +*** + +## Properties + +### Text + +The [Text][Text Property] to find and remove the specified [Occurrence][Occurrence Property] of [Text To Find][TextToFind Property] from. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +### Text To Find + +The [Text To Find][TextToFind Property] search query used to find and remove the specified matching occurrence from [Text][Text Property]. This property contains the following sub-properties: + +* [Starts With][StartsWith] +* [Contains][Contains] +* [Ends With][EndsWith] + +See [Advanced Examples][] for more information on how to use these sub-properties. + +| | | +|--------------------|---------------------------| +| Data Type | [TextToFind][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `TextToFind` with the value shown below: | + +```json +{ + "StartsWith":"", + "Contains":"", + "EndsWith":"", +} +``` + +### Occurrence + +The [Occurrence][Occurrence Property] of [Text To Find][TextToFind Property] in [Text][Text Property]. + +For information about [supported values][Occurrences] for the [Occurrence][Occurrence Property] property and examples of how it can be used, please see [Occurrences][]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `1` | + +### Search Options + +[Search Options][SearchOptions Property] can be specified to choose whether [Text To Find][TextToFind Property] should be interpreted as a LiteralText, PatternMatching or Regex search: + +* `SearchOptions.LiteralText` matches text exactly; as long as the [Text][Text Property] contains the text specified in [Text To Find][TextToFind Property] it will be considered a match. +* `SearchOptions.PatternMatching` allows wildcard text matching using [Pattern Matching Syntax][]: + * `*` wildcard character can be used to match `0` or more characters. + * `?` wildcard character can be used to match `0` or `1` character. + * All other characters are treated as a literal character. +* `SearchOptions.Regex` allows regex text matching using [.Net Regex Syntax][Regex Syntax]. + +Please note that overlapping matches are not detected (i.e. searching for `"aa"` in `"aaa"` matches `"aa"` at index `0` but not `"aa"` at index `1`). + +| | | +|--------------------|---------------------------| +| Data Type | [SearchOptions][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | `LiteralText` | + +### Comparison Type + +The [Comparison Type][ComparisonType Property] specifying the rules used to match occurrences of [Text To Find][TextToFind Property] in [Text][Text Property]. + +For information about the [supported values][ComparisonTypes] for the [Comparison Type][ComparisonType Property] property and examples of how it is determined whether two pieces of text match, please see [Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [StringComparison][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | `Ordinal` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [ArgumentException][] | Thrown when [Comparison Type][ComparisonType Property] is not one of the specified [StringComparison][] types (e.g. `(StringComparison)10`). | +| | Thrown when [Search Options][SearchOptions Property] is not one of the specified [SearchOptions][] types (e.g. `(SearchOptions)10`). | +| [RegexMatchTimeoutException][] | Thrown when the execution time of any search done to find the specific occurrence of [Text to Find][TextToFind Property] exceeds the [BlockTimeout][], or `60` seconds if that is undefined. | +| [RegexParsingFailedException][] | Thrown when [Search Options][SearchOptions Property] is `SearchOptions.Regex` and [TextToFind][TextToFind Property] has a property which is not a valid regex (e.g. `(`). | + +## Remarks + +### Advanced Examples + +The following sections will show examples for each possible value of [Search Options][SearchOptions Property]. + +In these examples, the following properties are common: + +| Property | Value | +|----------|-------| +| [Text][Text Property] | `"The quick brown fox jumps over the lazy dog."` | +| [Occurrence][Occurrence Property] | `1` | +| [Comparison Type][ComparisonType Property] | `Ordinal` | + +These sections contain tables for the examples. The columns of these tables are explained below: + +| Column Name | Explanation | +|-------------|-------------| +| TextToFind.StartsWith | Value used to define the StartsWith property of [Text To Find][TextToFind Property]. | +| TextToFind.Contains | Value used to define the Contains property of [Text To Find][TextToFind Property]. | +| TextToFind.EndsWith | Value used to define the EndsWith property of [Text To Find][TextToFind Property]. | +| Output Text | The value of the [Text][Text Property] after executing the block. \* | +\* *DEFAULT* indicates that nothing has been found and removed in [Text][Text Property], and that [Text][Text Property] is the same as was initially provided. + +Please note that these examples all perform a search which has at most one valid match in the text. + +#### SearchOptions.LiteralText + +These examples find and remove the first occurrence from [Text][Text Property] with [Search Options][SearchOptions Property] set to `LiteralText` using a [case-sensitive, culture-insensitive][Ordinal] search. + +| TextToFind.StartsWith | TextToFind.Contains | TextToFind.EndsWith | Output Text | +|-----------------------|---------------------|---------------------|-------------| +| `"The"` | `"quick"` | `"brown"` | `" fox jumps over the lazy dog."` | +| `"The"` | `"quick"` | `""` | `" brown fox jumps over the lazy dog."` | +| `"The"` | `""` | `"brown"` | *DEFAULT* | +| `"The"` | `""` | `""` | `" quick brown fox jumps over the lazy dog."` | +| `""` | `"quick"` | `"brown"` | `"The{{% nbsp %}}{{% nbsp %}}fox jumps over the lazy dog."` | +| `""` | `"quick"` | `""` | `"The{{% nbsp %}}{{% nbsp %}}brown fox jumps over the lazy dog."` | +| `""` | `""` | `"brown"` | `"The quick{{% nbsp %}}{{% nbsp %}}fox jumps over the lazy dog."` | +| `""` | `""` | `""` | *DEFAULT* | + +#### SearchOptions.PatternMatching + +These examples find and remove the first occurrence from [Text][Text Property] with [Search Options][SearchOptions Property] set to `PatternMatching` using a [case-sensitive, culture-insensitive][Ordinal] search. + +| TextToFind.StartsWith | TextToFind.Contains | TextToFind.EndsWith | Output Text | +|-----------------------|---------------------|---------------------|-------------| +| `"The"` | `"quick"` | `"brown"` | `" fox jumps over the lazy dog."` | +| `"The"` | `"quick"` | `""` | `" brown fox jumps over the lazy dog."` | +| `"The"` | `""` | `"brown"` | *DEFAULT* | +| `"The"` | `""` | `""` | `" quick brown fox jumps over the lazy dog."` | +| `""` | `"quick"` | `"brown"` | `"The{{% nbsp %}}{{% nbsp %}}fox jumps over the lazy dog."` | +| `""` | `"quick"` | `""` | `"The{{% nbsp %}}{{% nbsp %}}brown fox jumps over the lazy dog."` | +| `""` | `""` | `"brown"` | `"The quick{{% nbsp %}}{{% nbsp %}}fox jumps over the lazy dog."` | +| `""` | `""` | `""` | *DEFAULT* | +| `"The"` | `"quick"` | `"*"` | `""` | +| `"The"` | `"*"` | `"brown"` | `" fox jumps over the lazy dog."` | +| `"The"` | `"*"` | `"*"` | `""` | +| `"The"` | `"*"` | `""` | `""` | +| `"The"` | `""` | `"*"` | `""` | +| `"*"` | `"quick"` | `"brown"` | `" fox jumps over the lazy dog."` | +| `"*"` | `"quick"` | `"*"` | `""` | +| `"*"` | `"quick"` | `""` | `" brown fox jumps over the lazy dog."` | +| `"*"` | `"*"` | `"brown"` | `" fox jumps over the lazy dog."` | +| `"*"` | `""` | `"brown"` | `" fox jumps over the lazy dog."` | +| `"*"` | `"*"` | `"*"` | `""` | +| `"*"` | `"*"` | `""` | `""` | +| `"*"` | `""` | `"*"` | `""` | +| `"*"` | `""` | `""` | `""` | +| `""` | `"quick"` | `"*"` | `"The "` | +| `""` | `"*"` | `"brown"` | `" fox jumps over the lazy dog."` | +| `""` | `"*"` | `"*"` | `""` | +| `""` | `"*"` | `""` | `""` | +| `""` | `""` | `"*"` | `""` | + +#### SearchOptions.Regex + +These examples find and remove the first occurrence from [Text][Text Property] with [Search Options][SearchOptions Property] set to `Regex` using a [case-sensitive, culture-insensitive][Ordinal] search. + +| TextToFind.StartsWith | TextToFind.Contains | TextToFind.EndsWith | Output Text | +|-----------------------|---------------------|---------------------|-------------| +| `"The"` | `"quick"` | `"brown"` | `" fox jumps over the lazy dog."` | +| `"The"` | `"quick"` | `""` | `" brown fox jumps over the lazy dog."` | +| `"The"` | `""` | `"brown"` | *DEFAULT* | +| `"The"` | `""` | `""` | `" quick brown fox jumps over the lazy dog."` | +| `""` | `"quick"` | `"brown"` | `"The{{% nbsp %}}{{% nbsp %}}fox jumps over the lazy dog."` | +| `""` | `"quick"` | `""` | `"The{{% nbsp %}}{{% nbsp %}}brown fox jumps over the lazy dog."` | +| `""` | `""` | `"brown"` | `"The quick{{% nbsp %}}{{% nbsp %}}fox jumps over the lazy dog."` | +| `""` | `""` | `""` | *DEFAULT* | +| `"The"` | `"quick"` | `".*"` | `""` | +| `"The"` | `".*"` | `"brown"` | `" fox jumps over the lazy dog."` | +| `"The"` | `".*"` | `".*"` | `""` | +| `"The"` | `".*"` | `""` | `""` | +| `"The"` | `""` | `".*"` | `""` | +| `".*"` | `"quick"` | `"brown"` | `" fox jumps over the lazy dog."` | +| `".*"` | `"quick"` | `".*"` | `""` | +| `".*"` | `"quick"` | `""` | `" brown fox jumps over the lazy dog."` | +| `".*"` | `".*"` | `"brown"` | `" fox jumps over the lazy dog."` | +| `".*"` | `""` | `"brown"` | `" fox jumps over the lazy dog."` | +| `".*"` | `".*"` | `".*"` | `""` | +| `".*"` | `".*"` | `""` | `""` | +| `".*"` | `""` | `".*"` | `""` | +| `".*"` | `""` | `""` | `""` | +| `""` | `"quick"` | `".*"` | `"The "` | +| `""` | `".*"` | `"brown"` | `" fox jumps over the lazy dog."` | +| `""` | `".*"` | `".*"` | `""` | +| `""` | `".*"` | `""` | `""` | +| `""` | `""` | `".*"` | `""` | + +### Comparison Types + +For information about the [supported values][ComparisonTypes] for the [Comparison Type][ComparisonType Property] property and examples of how it is determined whether two pieces of text match, please see [Equality][]. + +### Null or empty Text + +If [Text][Text Property] is `null` or empty (i.e. `""`) there is nothing to remove from, so no operation is performed. + +### Null or empty Text To Find + +If all properties of [Text To Find][TextToFind Property] are `null` or empty (i.e. `""`), or [Text To Find][TextToFind Property] is `null`; no operation is performed and the [Text][Text Property] remains unchanged. + +### Null or empty property of Text To Find + +If a property of [Text To Find][TextToFind Property] is `null` or empty (i.e. `""`), then it is not considered as part of the matches for [Text to Find][TextToFind Property] when determining what to remove; see [Advanced Examples][]. + +### Text To Find is not present + +If [Text To Find][TextToFind Property] is not present there is nothing to remove, so no operation is performed. + +### Immutable String data type + +The [String][] data type used to represent [Text][Text Property] is immutable, which means it is read-only and cannot be changed once created. + +To overcome this, this block creates a new [String][] with all occurrences of [Text To Find][TextToFind Property] removed and re-assigns it to the variable specified in the [Text][Text Property] property. + +### Known Limitations + +If [Comparison Type][ComparisonType Property] is set to `StringComparison.CurrentCulture`, some characters such as `æ` that is equivalent to `ae` may not evaluate as equal. + +[Advanced Examples]: {{}} +[Text Property]: {{}} +[TextToFind Property]: {{}} +[Occurrence Property]: {{}} +[SearchOptions Property]: {{}} +[ComparisonType Property]: {{}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Occurrences]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Occurrences.MainDoc" >}} +[Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.MainDoc" >}} +[ComparisonTypes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.MainDoc" >}} +[Ordinal]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.Ordinal" >}} +[OrdinalIgnoreCase]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.OrdinalIgnoreCase" >}} +[Pattern Matching Syntax]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.PatternMatchingSyntax.MainDoc" >}} +[Regex Syntax]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.RegexSyntax.MainDoc" >}} + +[RegexParsingFailedException]: {{< url path="Cortex.Reference.Exceptions.Text.Regex.RegexParsingFailedException.MainDoc" >}} + +[ArgumentException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentException" >}} +[RegexMatchTimeoutException]: {{< url path="MSDocs.DotNet.Api.System.Text.RegularExpressions.RegexMatchTimeoutException" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[StringComparison]: {{< url path="Cortex.Reference.DataTypes.Text.StringComparison.MainDoc" >}} +[SearchOptions]: {{< url path="Cortex.Reference.DataTypes.Text.SearchOptions.MainDoc" >}} + +[TextToFind]: {{< url path="Cortex.Reference.DataTypes.Text.TextToFind.MainDoc">}} +[StartsWith]: {{< url path="Cortex.Reference.DataTypes.Text.TextToFind.StartsWith">}} +[Contains]: {{< url path="Cortex.Reference.DataTypes.Text.TextToFind.Contains">}} +[EndsWith]: {{< url path="Cortex.Reference.DataTypes.Text.TextToFind.EndsWith">}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} +[BlockTimeout]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.CommonProperties.BlockTimeoutProperty" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/find-and-replace-text/_index.md b/content/en/docs/2024.11/Reference/Blocks/Text/find-and-replace-text/_index.md new file mode 100644 index 000000000..f9038379b --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/find-and-replace-text/_index.md @@ -0,0 +1,5 @@ +--- +title: "Find And Replace Text" +linkTitle: "Find And Replace Text" +description: "Find text in another text, and replace it." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/find-and-replace-text/find-and-replace-all-text-block.md b/content/en/docs/2024.11/Reference/Blocks/Text/find-and-replace-text/find-and-replace-all-text-block.md new file mode 100644 index 000000000..c498f9338 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/find-and-replace-text/find-and-replace-all-text-block.md @@ -0,0 +1,370 @@ +--- +title: "Find And Replace All Text" +linkTitle: "Find And Replace All Text" +description: "Finds and replaces all occurrences of a text in a given text." +--- + +{{< figure src="/blocks/Cortex_Blocks_Text_FindAndReplaceText_FindAndReplaceAllTextBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Text.FindAndReplaceText.FindAndReplaceAllTextBlock)

+ +## Description + +Finds and replaces all occurrences of [Text To Find][TextToFind Property] with the specified [Replacement Text][ReplacementText Property] in a given [Text][Text Property]. + +[Search Options][SearchOptions Property] can be specified to choose whether to use a LiteralText, PatternMatching or Regex search to find the [Text To Find][TextToFind Property]. + +## Examples + +### Replace all occurrences when there are multiple matches + +This example will find and replace all occurrences of `"The"` in `"The quick brown fox jumps over the lazy dog."` with `"a"`. + +It performs a [case-insensitive, culture-insensitive][OrdinalIgnoreCase] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog."` | `($)Text` is a variable of type [String][] | +| [Text To Find][TextToFind Property] | `($)TextToFind`, with value `{"startsWith": "", "contains": "The", "endsWith": ""}`

In this example `($)TextToFind` has been set up using the following [Expression][]:

`new TextToFind(startsWith: "", contains: "The", endsWith: "")` | `($)TextToFind` is a variable of type [TextToFind][] | +| [Replacement Text][ReplacementText Property] | `($)ReplacementText` with value `"a"`| `($)ReplacementText` is a variable of type [String][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.LiteralText` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.OrdinalIgnoreCase` | `($)ComparisonType` is a variable of type [StringComparison][] | + +#### Result + +As this example is performing a [case-insensitive, culture-insensitive][OrdinalIgnoreCase] comparison of text (`"The quick brown fox jumps over the lazy dog."`), the text contains `"The"` twice; the first occurrence is `"The"` and the second occurrence is `"the"`. Therefore, the variable `($)Text` will be updated to `"a quick brown fox jumps over a lazy dog."`. + +For more information on using [SearchOptions][SearchOptions Property] and [Text To Find][TextToFind Property] see [Advanced Examples][]. + +*** + +### Replace all occurrences when there is a single match + +This example will find and replace all occurrences of `"The"` in `"The quick brown fox jumps over the lazy dog."` with `"a"`. + +It performs a [case-sensitive, culture-insensitive][Ordinal] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog."` | `($)Text` is a variable of type [String][] | +| [Text To Find][TextToFind Property] | `($)TextToFind`, with value `{"startsWith": "", "contains": "The", "endsWith": ""}`

In this example `($)TextToFind` has been set up using the following [Expression][]:

`new TextToFind(startsWith: "", contains: "The", endsWith: "")` | `($)TextToFind` is a variable of type [TextToFind][] | +| [Replacement Text][ReplacementText Property] | `($)ReplacementText` with value `"a"`| `($)ReplacementText` is a variable of type [String][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.LiteralText` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | + +#### Result + +As this example is performing a [case-sensitive, culture-insensitive][Ordinal] comparison of text (`"The quick brown fox jumps over the lazy dog."`), the text contains `"The"` once; `"the"` has a different case so does not match. Therefore, the variable `($)Text` will be updated to `"a quick brown fox jumps over the lazy dog."`. + +For more information on using [SearchOptions][SearchOptions Property] and [Text To Find][TextToFind Property] see [Advanced Examples][]. + +*** + +### Replace all occurrences when there are no matches + +This example will find and replace all occurrences of `"cat"` in `"The quick brown fox jumps over the lazy dog."` with `"a"`. + +It performs a [case-sensitive, culture-insensitive][Ordinal] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog."` | `($)Text` is a variable of type [String][] | +| [Text To Find][TextToFind Property] | `($)TextToFind`, with value `{"startsWith": "", "contains": "cat", "endsWith": ""}`

In this example `($)TextToFind` has been set up using the following [Expression][]:

`new TextToFind(startsWith: "", contains: "cat", endsWith: "")` | `($)TextToFind` is a variable of type [TextToFind][] | +| [Replacement Text][ReplacementText Property] | `($)ReplacementText` with value `"a"`| `($)ReplacementText` is a variable of type [String][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.LiteralText` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | + +#### Results + +`"The quick brown fox jumps over the lazy dog."` does not contain an occurrence of `"cat"`. Therefore, `($)Text` is not updated and remains as `"The quick brown fox jumps over the lazy dog."`. + +For more information on using [SearchOptions][SearchOptions Property] and [Text To Find][TextToFind Property] see [Advanced Examples][]. + +*** + +## Properties + +### Text + +The [Text][Text Property] to find and replace all occurrences of [Text To Find][TextToFind Property] in. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +### Text To Find + +The [Text To Find][TextToFind Property] search query used to find and replace all matching occurrences in [Text][Text Property]. This property contains the following sub-properties: + +* [Starts With][StartsWith] +* [Contains][Contains] +* [Ends With][EndsWith] + +See [Advanced Examples][] for more information on how to use these sub-properties. + +| | | +|--------------------|---------------------------| +| Data Type | [TextToFind][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `TextToFind` with the value shown below: | + +```json +{ + "StartsWith":"", + "Contains":"", + "EndsWith":"", +} +``` + +### Replacement Text + +The [Replacement Text][ReplacementText Property] used to replace all occurrences of [Text To Find][TextToFind Property] in [Text][Text Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | `$@""` | + +### Search Options + +[Search Options][SearchOptions Property] can be specified to choose whether [Text To Find][TextToFind Property] should be interpreted as a LiteralText, PatternMatching or Regex search: + +* `SearchOptions.LiteralText` matches text exactly; as long as the [Text][Text Property] contains the text specified in [Text To Find][TextToFind Property] it will be considered a match. +* `SearchOptions.PatternMatching` allows wildcard text matching using [Pattern Matching Syntax][]: + * `*` wildcard character can be used to match `0` or more characters. + * `?` wildcard character can be used to match `0` or `1` character. + * All other characters are treated as a literal character. +* `SearchOptions.Regex` allows regex text matching using [.Net Regex Syntax][Regex Syntax]. + +Please note that overlapping matches are not detected (i.e. searching for `"aa"` in `"aaa"` matches `"aa"` at index `0` but not `"aa"` at index `1`). + +| | | +|--------------------|---------------------------| +| Data Type | [SearchOptions][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | `LiteralText` | + +### Comparison Type + +The [Comparison Type][ComparisonType Property] specifying the rules used to match occurrences of [Text To Find][TextToFind Property] in [Text][Text Property]. + +For information about the [supported values][ComparisonTypes] for the [Comparison Type][ComparisonType Property] property and examples of how it is determined whether two pieces of text match, please see [Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [StringComparison][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | `Ordinal` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [ArgumentException][] | Thrown when [Comparison Type][ComparisonType Property] is not one of the specified [StringComparison][] types (e.g. `(StringComparison)10`). | +| | Thrown when [Search Options][SearchOptions Property] is not one of the specified [SearchOptions][] types (e.g. `(SearchOptions)10`). | +| [RegexMatchTimeoutException][] | Thrown when the execution time of any search done to find all occurrences of [Text to Find][TextToFind Property] exceeds the [BlockTimeout][], or `60` seconds if that is undefined. | +| [RegexParsingFailedException][] | Thrown when [Search Options][SearchOptions Property] is `SearchOptions.Regex` and [TextToFind][TextToFind Property] has a property which is not a valid regex (e.g. `(`). | + +## Remarks + +### Advanced Examples + +The following sections will show examples for each possible value of [Search Options][SearchOptions Property]. + +In these examples, the following properties are common: + +| Property | Value | +|----------|-------| +| [Text][Text Property] | `"The quick brown fox jumps over the lazy dog."` | +| [Comparison Type][ComparisonType Property] | `Ordinal` | +| [Replacement Text][ReplacementText Property] | `"ReplacementText"` | + +These sections contain tables for the examples. The columns of these tables are explained below: + +| Column Name | Explanation | +|-------------|-------------| +| TextToFind.StartsWith | Value used to define the StartsWith property of [Text To Find][TextToFind Property]. | +| TextToFind.Contains | Value used to define the Contains property of [Text To Find][TextToFind Property]. | +| TextToFind.EndsWith | Value used to define the EndsWith property of [Text To Find][TextToFind Property]. | +| Output Text | The value of the [Text][Text Property] after executing the block. \* | +\* *DEFAULT* indicates that nothing has been found and replaced in [Text][Text Property], and that [Text][Text Property] is the same as was initially provided. + +Please note that these examples all perform a search which has at most one valid match in the text. + +#### SearchOptions.LiteralText + +These examples find and replace all occurrences in [Text][Text Property] with [Search Options][SearchOptions Property] set to `LiteralText` using a [case-sensitive, culture-insensitive][Ordinal] search. + +| TextToFind.StartsWith | TextToFind.Contains | TextToFind.EndsWith | Output Text | +|-----------------------|---------------------|---------------------|-------------| +| `"The"` | `"quick"` | `"brown"` | `"ReplacementText fox jumps over the lazy dog."` | +| `"The"` | `"quick"` | `""` | `"ReplacementText brown fox jumps over the lazy dog."` | +| `"The"` | `""` | `"brown"` | *DEFAULT* | +| `"The"` | `""` | `""` | `"ReplacementText quick brown fox jumps over the lazy dog."` | +| `""` | `"quick"` | `"brown"` | `"The ReplacementText fox jumps over the lazy dog."` | +| `""` | `"quick"` | `""` | `"The ReplacementText brown fox jumps over the lazy dog."` | +| `""` | `""` | `"brown"` | `"The quick ReplacementText fox jumps over the lazy dog."` | +| `""` | `""` | `""` | *DEFAULT* | + +#### SearchOptions.PatternMatching + +These examples find and replace all occurrences in [Text][Text Property] with [Search Options][SearchOptions Property] set to `PatternMatching` using a [case-sensitive, culture-insensitive][Ordinal] search. + +| TextToFind.StartsWith | TextToFind.Contains | TextToFind.EndsWith | Output Text | +|-----------------------|---------------------|---------------------|-------------| +| `"The"` | `"quick"` | `"brown"` | `"ReplacementText fox jumps over the lazy dog."` | +| `"The"` | `"quick"` | `""` | `"ReplacementText brown fox jumps over the lazy dog."` | +| `"The"` | `""` | `"brown"` | *DEFAULT* | +| `"The"` | `""` | `""` | `"ReplacementText quick brown fox jumps over the lazy dog."` | +| `""` | `"quick"` | `"brown"` | `"The ReplacementText fox jumps over the lazy dog."` | +| `""` | `"quick"` | `""` | `"The ReplacementText brown fox jumps over the lazy dog."` | +| `""` | `""` | `"brown"` | `"The quick ReplacementText fox jumps over the lazy dog."` | +| `""` | `""` | `""` | *DEFAULT* | +| `"The"` | `"quick"` | `"*"` | `"ReplacementText"` | +| `"The"` | `"*"` | `"brown"` | `"ReplacementText fox jumps over the lazy dog."` | +| `"The"` | `"*"` | `"*"` | `"ReplacementText"` | +| `"The"` | `"*"` | `""` | `"ReplacementText"` | +| `"The"` | `""` | `"*"` | `"ReplacementText"` | +| `"*"` | `"quick"` | `"brown"` | `"ReplacementText fox jumps over the lazy dog."` | +| `"*"` | `"quick"` | `"*"` | `"ReplacementText"` | +| `"*"` | `"quick"` | `""` | `"ReplacementText brown fox jumps over the lazy dog."` | +| `"*"` | `"*"` | `"brown"` | `"ReplacementText fox jumps over the lazy dog."` | +| `"*"` | `""` | `"brown"` | `"ReplacementText fox jumps over the lazy dog."` | +| `"*"` | `"*"` | `"*"` | `"ReplacementText"` | +| `"*"` | `"*"` | `""` | `"ReplacementText"` | +| `"*"` | `""` | `"*"` | `"ReplacementText"` | +| `"*"` | `""` | `""` | `"ReplacementText"` | +| `""` | `"quick"` | `"*"` | `"The ReplacementText"` | +| `""` | `"*"` | `"brown"` | `"ReplacementText fox jumps over the lazy dog."` | +| `""` | `"*"` | `"*"` | `"ReplacementText"` | +| `""` | `"*"` | `""` | `"ReplacementText"` | +| `""` | `""` | `"*"` | `"ReplacementText"` | + +#### SearchOptions.Regex + +These examples find and replace all occurrences in [Text][Text Property] with [Search Options][SearchOptions Property] set to `Regex` using a [case-sensitive, culture-insensitive][Ordinal] search. + +| TextToFind.StartsWith | TextToFind.Contains | TextToFind.EndsWith | Output Text | +|-----------------------|---------------------|---------------------|-------------| +| `"The"` | `"quick"` | `"brown"` | `"ReplacementText fox jumps over the lazy dog."` | +| `"The"` | `"quick"` | `""` | `"ReplacementText brown fox jumps over the lazy dog."` | +| `"The"` | `""` | `"brown"` | *DEFAULT* | +| `"The"` | `""` | `""` | `"ReplacementText quick brown fox jumps over the lazy dog."` | +| `""` | `"quick"` | `"brown"` | `"The ReplacementText fox jumps over the lazy dog."` | +| `""` | `"quick"` | `""` | `"The ReplacementText brown fox jumps over the lazy dog."` | +| `""` | `""` | `"brown"` | `"The quick ReplacementText fox jumps over the lazy dog."` | +| `""` | `""` | `""` | *DEFAULT* | +| `"The"` | `"quick"` | `".*"` | `"ReplacementText"` | +| `"The"` | `".*"` | `"brown"` | `"ReplacementText fox jumps over the lazy dog."` | +| `"The"` | `".*"` | `".*"` | `"ReplacementText"` | +| `"The"` | `".*"` | `""` | `"ReplacementText"` | +| `"The"` | `""` | `".*"` | `"ReplacementText"` | +| `".*"` | `"quick"` | `"brown"` | `"ReplacementText fox jumps over the lazy dog."` | +| `".*"` | `"quick"` | `".*"` | `"ReplacementText"` | +| `".*"` | `"quick"` | `""` | `"ReplacementText brown fox jumps over the lazy dog."` | +| `".*"` | `".*"` | `"brown"` | `"ReplacementText fox jumps over the lazy dog."` | +| `".*"` | `""` | `"brown"` | `"ReplacementText fox jumps over the lazy dog."` | +| `".*"` | `".*"` | `".*"` | `"ReplacementText"` | +| `".*"` | `".*"` | `""` | `"ReplacementText"` | +| `".*"` | `""` | `".*"` | `"ReplacementText"` | +| `".*"` | `""` | `""` | `"ReplacementText"` | +| `""` | `"quick"` | `".*"` | `"The ReplacementText"` | +| `""` | `".*"` | `"brown"` | `"ReplacementText fox jumps over the lazy dog."` | +| `""` | `".*"` | `".*"` | `"ReplacementText"` | +| `""` | `".*"` | `""` | `"ReplacementText"` | +| `""` | `""` | `".*"` | `"ReplacementText"` | + +### Comparison Types + +For information about the [supported values][ComparisonTypes] for the [Comparison Type][ComparisonType Property] property and examples of how it is determined whether two pieces of text match, please see [Equality][]. + +### Null or empty Text + +If [Text][Text Property] is `null` or empty (i.e. `""`) there is nothing to replace in, so no operation is performed. + +### Null or empty Text To Find + +If all properties of [Text To Find][TextToFind Property] are `null` or empty (i.e. `""`), or [Text To Find][TextToFind Property] is `null`; no operation is performed and the [Text][Text Property] remains unchanged. + +### Null or empty property of Text To Find + +If a property of [Text To Find][TextToFind Property] is `null` or empty (i.e. `""`), then it is not considered as part of the matches for [Text to Find][TextToFind Property] when determining what to replace; see [Advanced Examples][]. + +### Null or empty Replacement Text + +If [Replacement Text][ReplacementText Property] is `null` or empty (i.e. `""`) all occurrences of [Text To Find][TextToFind Property] are replaced with an empty text (i.e. `""`). + +### Text To Find is not present + +If [Text To Find][TextToFind Property] is not present there is nothing to replace, so no operation is performed. + +### Immutable String data type + +The [String][] data type used to represent [Text][Text Property] is immutable, which means it is read-only and cannot be changed once created. + +To overcome this, this block creates a new [String][] with all occurrences of [Text To Find][TextToFind Property] replaced and re-assigns it to the variable specified in the [Text][Text Property] property. + +### Known Limitations + +If [Comparison Type][ComparisonType Property] is set to `StringComparison.CurrentCulture`, some characters such as `æ` that is equivalent to `ae` may not evaluate as equal. + +[Advanced Examples]: {{}} +[ComparisonType Property]: {{< ref "#comparison-type" >}} +[ReplacementText Property]: {{< ref "#replacement-text" >}} +[SearchOptions Property]: {{< ref "#search-options" >}} +[Text Property]: {{< ref "#text" >}} +[TextToFind Property]: {{< ref "#text-to-find" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.MainDoc" >}} +[ComparisonTypes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.MainDoc" >}} +[Ordinal]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.Ordinal" >}} +[OrdinalIgnoreCase]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.OrdinalIgnoreCase" >}} +[Pattern Matching Syntax]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.PatternMatchingSyntax.MainDoc" >}} +[Regex Syntax]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.RegexSyntax.MainDoc" >}} + +[RegexParsingFailedException]: {{< url path="Cortex.Reference.Exceptions.Text.Regex.RegexParsingFailedException.MainDoc" >}} + +[ArgumentException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentException" >}} +[RegexMatchTimeoutException]: {{< url path="MSDocs.DotNet.Api.System.Text.RegularExpressions.RegexMatchTimeoutException" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[StringComparison]: {{< url path="Cortex.Reference.DataTypes.Text.StringComparison.MainDoc" >}} +[SearchOptions]: {{< url path="Cortex.Reference.DataTypes.Text.SearchOptions.MainDoc" >}} + +[TextToFind]: {{< url path="Cortex.Reference.DataTypes.Text.TextToFind.MainDoc">}} +[StartsWith]: {{< url path="Cortex.Reference.DataTypes.Text.TextToFind.StartsWith">}} +[Contains]: {{< url path="Cortex.Reference.DataTypes.Text.TextToFind.Contains">}} +[EndsWith]: {{< url path="Cortex.Reference.DataTypes.Text.TextToFind.EndsWith">}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} +[BlockTimeout]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.CommonProperties.BlockTimeoutProperty" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/find-and-replace-text/find-and-replace-text-block.md b/content/en/docs/2024.11/Reference/Blocks/Text/find-and-replace-text/find-and-replace-text-block.md new file mode 100644 index 000000000..74cde5de1 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/find-and-replace-text/find-and-replace-text-block.md @@ -0,0 +1,416 @@ +--- +title: "Find And Replace Text" +linkTitle: "Find And Replace Text" +description: "Finds and replaces the specified occurrence of text in a given text." +--- + +{{< figure src="/blocks/Cortex_Blocks_Text_FindAndReplaceText_FindAndReplaceTextBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Text.FindAndReplaceText.FindAndReplaceTextBlock)

+ +## Description + +Finds and replaces the specified [Occurrence][Occurrence Property] of [Text To Find][TextToFind Property] with the specified [Replacement Text][ReplacementText Property] in a given [Text][Text Property]. + +[Search Options][SearchOptions Property] can be specified to choose whether to use a LiteralText, PatternMatching or Regex search to find the [Text To Find][TextToFind Property]. + +## Examples + +### Replace the first Occurrence of text + +This example will find and replace the first occurrence of `"The"` in `"The quick brown fox jumps over the lazy dog."` with `"a"`. + +It performs a [case-sensitive, culture-insensitive][Ordinal] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog."` | `($)Text` is a variable of type [String][] | +| [Text To Find][TextToFind Property] | `($)TextToFind`, with value `{"startsWith": "", "contains": "The", "endsWith": ""}`

In this example `($)TextToFind` has been set up using the following [Expression][]:

`new TextToFind(startsWith: "", contains: "The", endsWith: "")` | `($)TextToFind` is a variable of type [TextToFind][] | +| [Replacement Text][ReplacementText Property] | `($)ReplacementText` with value `"a"`| `($)ReplacementText` is a variable of type [String][] | +| [Occurrence][Occurrence Property] | `($)Occurrence`, with value `1` | `($)Occurrence` is a variable of type [Int32][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.LiteralText` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | + +#### Result + +As this example is performing a [case-sensitive, culture-insensitive][Ordinal] comparison of text (`"The quick brown fox jumps over the lazy dog."`), the text contains `"The"` once; `"the"` has a different case so does not match. Therefore, the variable `($)Text` will be updated to `"a quick brown fox jumps over the lazy dog."`. + +For more information on using [SearchOptions][SearchOptions Property] and [Text To Find][TextToFind Property] see [Advanced Examples][]. + +*** + +### Replace the second Occurrence of text + +This example will find and replace the second occurrence of `"The"` in `"The quick brown fox jumps over the lazy dog."` with `"a"`. + +It performs a [case-insensitive, culture-insensitive][OrdinalIgnoreCase] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog."` | `($)Text` is a variable of type [String][] | +| [Text To Find][TextToFind Property] | `($)TextToFind`, with value `{"startsWith": "", "contains": "The", "endsWith": ""}`

In this example `($)TextToFind` has been set up using the following [Expression][]:

`new TextToFind(startsWith: "", contains: "The", endsWith: "")` | `($)TextToFind` is a variable of type [TextToFind][] | +| [Replacement Text][ReplacementText Property] | `($)ReplacementText` with value `"a"`| `($)ReplacementText` is a variable of type [String][] | +| [Occurrence][Occurrence Property] | `($)Occurrence`, with value `2` | `($)Occurrence` is a variable of type [Int32][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.LiteralText` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.OrdinalIgnoreCase` | `($)ComparisonType` is a variable of type [StringComparison][] | + +#### Result + +As this example is performing a [case-insensitive, culture-insensitive][OrdinalIgnoreCase] comparison of text (`"The quick brown fox jumps over the lazy dog."`), the text contains `"The"` twice; the first occurrence is `"The"` and the second occurrence `"the"`. Therefore, the variable `($)Text` will be updated to `"The quick brown fox jumps over a lazy dog."`. + +For more information on using [SearchOptions][SearchOptions Property] and [Text To Find][TextToFind Property] see [Advanced Examples][]. + +*** + +### Replace the last Occurrence of text + +This example will find and replace the last occurrence of `"The"` in `"The quick brown fox jumps over the lazy dog."` with `"a"`. + +It performs a [case-insensitive, culture-insensitive][OrdinalIgnoreCase] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog."` | `($)Text` is a variable of type [String][] | +| [Text To Find][TextToFind Property] | `($)TextToFind`, with value `{"startsWith": "", "contains": "The", "endsWith": ""}`

In this example `($)TextToFind` has been set up using the following [Expression][]:

`new TextToFind(startsWith: "", contains: "The", endsWith: "")` | `($)TextToFind` is a variable of type [TextToFind][] | +| [Replacement Text][ReplacementText Property] | `($)ReplacementText` with value `"a"`| `($)ReplacementText` is a variable of type [String][] | +| [Occurrence][Occurrence Property] | `($)Occurrence`, with value `-1` | `($)Occurrence` is a variable of type [Int32][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.LiteralText` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.OrdinalIgnoreCase` | `($)ComparisonType` is a variable of type [StringComparison][] | + +#### Result + +As this example is performing a [case-insensitive, culture-insensitive][OrdinalIgnoreCase] comparison of text (`"The quick brown fox jumps over the lazy dog."`), the text contains `"The"` twice; the first occurrence is `"The"` and the second occurrence `"the"`. The second occurrence is also the last occurrence, and therefore, the variable `($)Text` will be updated to `"The quick brown fox jumps over a lazy dog."`. + +For more information on using [SearchOptions][SearchOptions Property] and [Text To Find][TextToFind Property] see [Advanced Examples][]. + +*** + +### Replace an invalid Occurrence of text + +This example will find and replace the third occurrence of `"The"`, which is not present, in `"The quick brown fox jumps over the lazy dog."` with `"a"`. + +It performs a [case-insensitive, culture-insensitive][OrdinalIgnoreCase] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog."` | `($)Text` is a variable of type [String][] | +| [Text To Find][TextToFind Property] | `($)TextToFind`, with value `{"startsWith": "", "contains": "The", "endsWith": ""}`

In this example `($)TextToFind` has been set up using the following [Expression][]:

`new TextToFind(startsWith: "", contains: "The", endsWith: "")` | `($)TextToFind` is a variable of type [TextToFind][] | +| [Replacement Text][ReplacementText Property] | `($)ReplacementText` with value `"a"`| `($)ReplacementText` is a variable of type [String][] | +| [Occurrence][Occurrence Property] | `($)Occurrence`, with value `3` | `($)Occurrence` is a variable of type [Int32][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.LiteralText` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.OrdinalIgnoreCase` | `($)ComparisonType` is a variable of type [StringComparison][] | + +#### Result + +As this example is performing a [case-insensitive, culture-insensitive][OrdinalIgnoreCase] comparison of the text (`"The quick brown fox jumps over the lazy dog."`), the text contains `"The"` twice; the first occurrence is `"The"` and the second occurrence is `"the"`. There is no match for the third occurrence. Therefore, the variable `($)Text` will be not be updated and remains as `"The quick brown fox jumps over the lazy dog."`. + +For more information on using [SearchOptions][SearchOptions Property] and [Text To Find][TextToFind Property] see [Advanced Examples][]. + +*** + +## Properties + +### Text + +The [Text][Text Property] to find and replace the specified [Occurrence][Occurrence Property] of [Text To Find][TextToFind Property] in. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +### Text To Find + +The [Text To Find][TextToFind Property] search query used to find and replace the specified matching occurrence in [Text][Text Property]. This property contains the following sub-properties: + +* [Starts With][StartsWith] +* [Contains][Contains] +* [Ends With][EndsWith] + +See [Advanced Examples][] for more information on how to use these sub-properties. + +| | | +|--------------------|---------------------------| +| Data Type | [TextToFind][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `TextToFind` with the value shown below: | + +```json +{ + "StartsWith":"", + "Contains":"", + "EndsWith":"", +} +``` + +### Replacement Text + +The [Replacement Text][ReplacementText Property] used to replace the specified [Occurrence][Occurrence Property] of [Text To Find][TextToFind Property] in [Text][Text Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | `$@""` | + +### Occurrence + +The [Occurrence][Occurrence Property] of [Text To Find][TextToFind Property] in [Text][Text Property]. + +For information about [supported values][Occurrences] for the [Occurrence][Occurrence Property] property and examples of how it can be used, please see [Occurrences][]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `1` | + +### Search Options + +[Search Options][SearchOptions Property] can be specified to choose whether [Text To Find][TextToFind Property] should be interpreted as a LiteralText, PatternMatching or Regex search: + +* `SearchOptions.LiteralText` matches text exactly; as long as the [Text][Text Property] contains the text specified in [Text To Find][TextToFind Property] it will be considered a match. +* `SearchOptions.PatternMatching` allows wildcard text matching using [Pattern Matching Syntax][]: + * `*` wildcard character can be used to match `0` or more characters. + * `?` wildcard character can be used to match `0` or `1` character. + * All other characters are treated as a literal character. +* `SearchOptions.Regex` allows regex text matching using [.Net Regex Syntax][Regex Syntax]. + +Please note that overlapping matches are not detected (i.e. searching for `"aa"` in `"aaa"` matches `"aa"` at index `0` but not `"aa"` at index `1`). + +| | | +|--------------------|---------------------------| +| Data Type | [SearchOptions][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | `LiteralText` | + +### Comparison Type + +The [Comparison Type][ComparisonType Property] specifying the rules used to match occurrences of [Text To Find][TextToFind Property] in [Text][Text Property]. + +For information about the [supported values][ComparisonTypes] for the [Comparison Type][ComparisonType Property] property and examples of how it is determined whether two pieces of text match, please see [Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [StringComparison][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | `Ordinal` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [ArgumentException][] | Thrown when [Comparison Type][ComparisonType Property] is not one of the specified [StringComparison][] types (e.g. `(StringComparison)10`). | +| | Thrown when [Search Options][SearchOptions Property] is not one of the specified [SearchOptions][] types (e.g. `(SearchOptions)10`). | +| [RegexMatchTimeoutException][] | Thrown when the execution time of any search done to find the specific occurrence of [Text to Find][TextToFind Property] exceeds the [BlockTimeout][], or `60` seconds if that is undefined. | +| [RegexParsingFailedException][] | Thrown when [Search Options][SearchOptions Property] is `SearchOptions.Regex` and [TextToFind][TextToFind Property] has a property which is not a valid regex (e.g. `(`). | + +## Remarks + +### Advanced Examples + +The following sections will show examples for each possible value of [Search Options][SearchOptions Property]. + +In these examples, the following properties are common: + +| Property | Value | +|----------|-------| +| [Text][Text Property] | `"The quick brown fox jumps over the lazy dog."` | +| [Occurrence][Occurrence Property] | `1` | +| [Comparison Type][ComparisonType Property] | `Ordinal` | +| [Replacement Text][ReplacementText Property] | `"ReplacementText"` | + +These sections contain tables for the examples. The columns of these tables are explained below: + +| Column Name | Explanation | +|-------------|-------------| +| TextToFind.StartsWith | Value used to define the StartsWith property of [Text To Find][TextToFind Property]. | +| TextToFind.Contains | Value used to define the Contains property of [Text To Find][TextToFind Property]. | +| TextToFind.EndsWith | Value used to define the EndsWith property of [Text To Find][TextToFind Property]. | +| Output Text | The value of the [Text][Text Property] after executing the block. \* | +\* *DEFAULT* indicates that nothing has been found and replaced in [Text][Text Property], and that [Text][Text Property] is the same as was initially provided. + +Please note that these examples all perform a search which has at most one valid match in the text. + +#### SearchOptions.LiteralText + +These examples find and replace the first occurrence in [Text][Text Property] with [Search Options][SearchOptions Property] set to `LiteralText` using a [case-sensitive, culture-insensitive][Ordinal] search. + +| TextToFind.StartsWith | TextToFind.Contains | TextToFind.EndsWith | Output Text | +|-----------------------|---------------------|---------------------|-------------| +| `"The"` | `"quick"` | `"brown"` | `"ReplacementText fox jumps over the lazy dog."` | +| `"The"` | `"quick"` | `""` | `"ReplacementText brown fox jumps over the lazy dog."` | +| `"The"` | `""` | `"brown"` | *DEFAULT* | +| `"The"` | `""` | `""` | `"ReplacementText quick brown fox jumps over the lazy dog."` | +| `""` | `"quick"` | `"brown"` | `"The ReplacementText fox jumps over the lazy dog."` | +| `""` | `"quick"` | `""` | `"The ReplacementText brown fox jumps over the lazy dog."` | +| `""` | `""` | `"brown"` | `"The quick ReplacementText fox jumps over the lazy dog."` | +| `""` | `""` | `""` | *DEFAULT* | + +#### SearchOptions.PatternMatching + +These examples find and replace the first occurrence in [Text][Text Property] with [Search Options][SearchOptions Property] set to `PatternMatching` using a [case-sensitive, culture-insensitive][Ordinal] search. + +| TextToFind.StartsWith | TextToFind.Contains | TextToFind.EndsWith | Output Text | +|-----------------------|---------------------|---------------------|-------------| +| `"The"` | `"quick"` | `"brown"` | `"ReplacementText fox jumps over the lazy dog."` | +| `"The"` | `"quick"` | `""` | `"ReplacementText brown fox jumps over the lazy dog."` | +| `"The"` | `""` | `"brown"` | *DEFAULT* | +| `"The"` | `""` | `""` | `"ReplacementText quick brown fox jumps over the lazy dog."` | +| `""` | `"quick"` | `"brown"` | `"The ReplacementText fox jumps over the lazy dog."` | +| `""` | `"quick"` | `""` | `"The ReplacementText brown fox jumps over the lazy dog."` | +| `""` | `""` | `"brown"` | `"The quick ReplacementText fox jumps over the lazy dog."` | +| `""` | `""` | `""` | *DEFAULT* | +| `"The"` | `"quick"` | `"*"` | `"ReplacementText"` | +| `"The"` | `"*"` | `"brown"` | `"ReplacementText fox jumps over the lazy dog."` | +| `"The"` | `"*"` | `"*"` | `"ReplacementText"` | +| `"The"` | `"*"` | `""` | `"ReplacementText"` | +| `"The"` | `""` | `"*"` | `"ReplacementText"` | +| `"*"` | `"quick"` | `"brown"` | `"ReplacementText fox jumps over the lazy dog."` | +| `"*"` | `"quick"` | `"*"` | `"ReplacementText"` | +| `"*"` | `"quick"` | `""` | `"ReplacementText brown fox jumps over the lazy dog."` | +| `"*"` | `"*"` | `"brown"` | `"ReplacementText fox jumps over the lazy dog."` | +| `"*"` | `""` | `"brown"` | `"ReplacementText fox jumps over the lazy dog."` | +| `"*"` | `"*"` | `"*"` | `"ReplacementText"` | +| `"*"` | `"*"` | `""` | `"ReplacementText"` | +| `"*"` | `""` | `"*"` | `"ReplacementText"` | +| `"*"` | `""` | `""` | `"ReplacementText"` | +| `""` | `"quick"` | `"*"` | `"The ReplacementText"` | +| `""` | `"*"` | `"brown"` | `"ReplacementText fox jumps over the lazy dog."` | +| `""` | `"*"` | `"*"` | `"ReplacementText"` | +| `""` | `"*"` | `""` | `"ReplacementText"` | +| `""` | `""` | `"*"` | `"ReplacementText"` | + +#### SearchOptions.Regex + +These examples find and replace the first occurrence in [Text][Text Property] with [Search Options][SearchOptions Property] set to `Regex` using a [case-sensitive, culture-insensitive][Ordinal] search. + +| TextToFind.StartsWith | TextToFind.Contains | TextToFind.EndsWith | Output Text | +|-----------------------|---------------------|---------------------|-------------| +| `"The"` | `"quick"` | `"brown"` | `"ReplacementText fox jumps over the lazy dog."` | +| `"The"` | `"quick"` | `""` | `"ReplacementText brown fox jumps over the lazy dog."` | +| `"The"` | `""` | `"brown"` | *DEFAULT* | +| `"The"` | `""` | `""` | `"ReplacementText quick brown fox jumps over the lazy dog."` | +| `""` | `"quick"` | `"brown"` | `"The ReplacementText fox jumps over the lazy dog."` | +| `""` | `"quick"` | `""` | `"The ReplacementText brown fox jumps over the lazy dog."` | +| `""` | `""` | `"brown"` | `"The quick ReplacementText fox jumps over the lazy dog."` | +| `""` | `""` | `""` | *DEFAULT* | +| `"The"` | `"quick"` | `".*"` | `"ReplacementText"` | +| `"The"` | `".*"` | `"brown"` | `"ReplacementText fox jumps over the lazy dog."` | +| `"The"` | `".*"` | `".*"` | `"ReplacementText"` | +| `"The"` | `".*"` | `""` | `"ReplacementText"` | +| `"The"` | `""` | `".*"` | `"ReplacementText"` | +| `".*"` | `"quick"` | `"brown"` | `"ReplacementText fox jumps over the lazy dog."` | +| `".*"` | `"quick"` | `".*"` | `"ReplacementText"` | +| `".*"` | `"quick"` | `""` | `"ReplacementText brown fox jumps over the lazy dog."` | +| `".*"` | `".*"` | `"brown"` | `"ReplacementText fox jumps over the lazy dog."` | +| `".*"` | `""` | `"brown"` | `"ReplacementText fox jumps over the lazy dog."` | +| `".*"` | `".*"` | `".*"` | `"ReplacementText"` | +| `".*"` | `".*"` | `""` | `"ReplacementText"` | +| `".*"` | `""` | `".*"` | `"ReplacementText"` | +| `".*"` | `""` | `""` | `"ReplacementText"` | +| `""` | `"quick"` | `".*"` | `"The ReplacementText"` | +| `""` | `".*"` | `"brown"` | `"ReplacementText fox jumps over the lazy dog."` | +| `""` | `".*"` | `".*"` | `"ReplacementText"` | +| `""` | `".*"` | `""` | `"ReplacementText"` | +| `""` | `""` | `".*"` | `"ReplacementText"` | + +### Comparison Types + +For information about the [supported values][ComparisonTypes] for the [Comparison Type][ComparisonType Property] property and examples of how it is determined whether two pieces of text match, please see [Equality][]. + +### Null or empty Text + +If [Text][Text Property] is `null` or empty (i.e. `""`) there is nothing to replace in, so no operation is performed. + +### Null or empty Text To Find + +If all properties of [Text To Find][TextToFind Property] are `null` or empty (i.e. `""`), or [Text To Find][TextToFind Property] is `null`; no operation is performed and the [Text][Text Property] remains unchanged. + +### Null or empty property of Text To Find + +If a property of [Text To Find][TextToFind Property] is `null` or empty (i.e. `""`), then it is not considered as part of the matches for [Text to Find][TextToFind Property] when determining what to replace; see [Advanced Examples][]. + +### Null or empty Replacement Text + +If [Replacement Text][ReplacementText Property] is `null` or empty (i.e. `""`) all occurrences of [Text To Find][TextToFind Property] are replaced with an empty text (i.e. `""`). + +### Text To Find is not present + +If [Text To Find][TextToFind Property] is not present there is nothing to replace, so no operation is performed. + +### Immutable String data type + +The [String][] data type used to represent [Text][Text Property] is immutable, which means it is read-only and cannot be changed once created. + +To overcome this, this block creates a new [String][] with all occurrences of [Text To Find][TextToFind Property] replaced and re-assigns it to the variable specified in the [Text][Text Property] property. + +### Known Limitations + +If [Comparison Type][ComparisonType Property] is set to `StringComparison.CurrentCulture`, some characters such as `æ` that is equivalent to `ae` may not evaluate as equal. + +[Advanced Examples]: {{}} +[Text Property]: {{}} +[TextToFind Property]: {{}} +[ReplacementText Property]: {{}} +[Occurrence Property]: {{}} +[SearchOptions Property]: {{}} +[ComparisonType Property]: {{}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Occurrences]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Occurrences.MainDoc" >}} +[Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.MainDoc" >}} +[ComparisonTypes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.MainDoc" >}} +[Ordinal]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.Ordinal" >}} +[OrdinalIgnoreCase]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.OrdinalIgnoreCase" >}} +[Pattern Matching Syntax]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.PatternMatchingSyntax.MainDoc" >}} +[Regex Syntax]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.RegexSyntax.MainDoc" >}} + +[RegexParsingFailedException]: {{< url path="Cortex.Reference.Exceptions.Text.Regex.RegexParsingFailedException.MainDoc" >}} + +[ArgumentException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentException" >}} +[RegexMatchTimeoutException]: {{< url path="MSDocs.DotNet.Api.System.Text.RegularExpressions.RegexMatchTimeoutException" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[StringComparison]: {{< url path="Cortex.Reference.DataTypes.Text.StringComparison.MainDoc" >}} +[SearchOptions]: {{< url path="Cortex.Reference.DataTypes.Text.SearchOptions.MainDoc" >}} + +[TextToFind]: {{< url path="Cortex.Reference.DataTypes.Text.TextToFind.MainDoc">}} +[StartsWith]: {{< url path="Cortex.Reference.DataTypes.Text.TextToFind.StartsWith">}} +[Contains]: {{< url path="Cortex.Reference.DataTypes.Text.TextToFind.Contains">}} +[EndsWith]: {{< url path="Cortex.Reference.DataTypes.Text.TextToFind.EndsWith">}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} +[BlockTimeout]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.CommonProperties.BlockTimeoutProperty" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/find-text/_index.md b/content/en/docs/2024.11/Reference/Blocks/Text/find-text/_index.md new file mode 100644 index 000000000..e04585aac --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/find-text/_index.md @@ -0,0 +1,5 @@ +--- +title: "Find Text" +linkTitle: "Find Text" +description: "Find text in another text" +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/find-text/find-all-text-block.md b/content/en/docs/2024.11/Reference/Blocks/Text/find-text/find-all-text-block.md new file mode 100644 index 000000000..65d013756 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/find-text/find-all-text-block.md @@ -0,0 +1,470 @@ +--- +title: "Find All Text" +linkTitle: "Find All Text" +description: "Finds all occurrences of a text in a given text." +--- +{{< figure src="/blocks/Cortex_Blocks_Text_FindText_FindAllTextBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Text.FindText.FindAllTextBlock)

+ +## Description + +Finds all occurrences of [Text To Find][TextToFind Property] in a given [Text][Text Property]. + +[Search Options][SearchOptions Property] can be specified to choose whether to use a LiteralText, PatternMatching or Regex search to match the [Text To Find][TextToFind Property] input. + +## Examples + +### Find all occurrences when there are multiple matches + +This example will find all occurrences of `"The"` in `"The quick brown fox jumps over the lazy dog."`. + +It performs a [case-insensitive, culture-insensitive][OrdinalIgnoreCase] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog."` | `($)Text` is a variable of type [String][] | +| [Text To Find][TextToFind Property] | `($)TextToFind`, with value `{"startsWith": "", "contains": "The", "endsWith": ""}`

In this example `($)TextToFind` has been set up using the following [Expression][]:

`new TextToFind(startsWith: "", contains: "The", endsWith: "")` | `($)TextToFind` is a variable of type [TextToFind][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.LiteralText` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.OrdinalIgnoreCase` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Matches][Matches Property] | `($)Matches`, with no value | `($)Matches` is a variable that will be set to an [List][]<[Match][]> value | + +#### Result + +As this example is performing a [case-insensitive, culture-insensitive][OrdinalIgnoreCase] comparison of text (`"The quick brown fox jumps over the lazy dog."`), the text contains `"The"` twice; the first occurrence is `"The"` and the second occurrence is `"the"`. Therefore, the variable `($)Matches` will be updated to the following: + +```json +[ + { + "Value": "The", + "Index": 0, + "Length": 3, + "Groups": { + "0": { + "Value": "The", + "Index": 0, + "Length": 3, + "Captures": [ + { + "Value": "The", + "Index": 0, + "Length": 3 + } + ] + }, + "contains": { + "Value": "The", + "Index": 0, + "Length": 3, + "Captures": [ + { + "Value": "The", + "Index": 0, + "Length": 3 + } + ] + } + } + }, + { + "Value": "the", + "Index": 31, + "Length": 3, + "Groups": { + "0": { + "Value": "the", + "Index": 31, + "Length": 3, + "Captures": [ + { + "Value": "the", + "Index": 31, + "Length": 3 + } + ] + }, + "contains": { + "Value": "the", + "Index": 31, + "Length": 3, + "Captures": [ + { + "Value": "the", + "Index": 31, + "Length": 3 + } + ] + } + } + } +] +``` + +For more information on using [SearchOptions][SearchOptions Property] and [Text To Find][TextToFind Property] see [Advanced Examples][]. + +*** + +### Find all occurrences when there is a single match + +This example will find all occurrences of `"The"` in `"The quick brown fox jumps over the lazy dog."`. + +It performs a [case-sensitive, culture-insensitive][Ordinal] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog."` | `($)Text` is a variable of type [String][] | +| [Text To Find][TextToFind Property] | `($)TextToFind`, with value `{"startsWith": "", "contains": "The", "endsWith": ""}`

In this example `($)TextToFind` has been set up using the following [Expression][]:

`new TextToFind(startsWith: "", contains: "The", endsWith: "")` | `($)TextToFind` is a variable of type [TextToFind][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.LiteralText` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Matches][Matches Property] | `($)Matches`, with no value | `($)Matches` is a variable that will be set to an [List][]<[Match][]> value | + +#### Result + +As this example is performing a [case-sensitive, culture-insensitive][Ordinal] comparison of text (`"The quick brown fox jumps over the lazy dog."`), the text contains `"The"` once; `"the"` has a different case so does not match. Therefore, the variable `($)Matches` will be set to the following: + +```json +[ + { + "Value": "The", + "Index": 0, + "Length": 3, + "Groups": { + "0": { + "Value": "The", + "Index": 0, + "Length": 3, + "Captures": [ + { + "Value": "The", + "Index": 0, + "Length": 3 + } + ] + }, + "contains": { + "Value": "The", + "Index": 0, + "Length": 3, + "Captures": [ + { + "Value": "The", + "Index": 0, + "Length": 3 + } + ] + } + } + } +] +``` + +For more information on using [SearchOptions][SearchOptions Property] and [Text To Find][TextToFind Property] see [Advanced Examples][]. + +*** + +### Find all occurrences when there are no matches + +This example will find all occurrences of `"cat"` in `"The quick brown fox jumps over the lazy dog."`. + +It performs a [case-sensitive, culture-insensitive][Ordinal] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog."` | `($)Text` is a variable of type [String][] | +| [Text To Find][TextToFind Property] | `($)TextToFind`, with value `{"startsWith": "", "contains": "cat", "endsWith": ""}`

In this example `($)TextToFind` has been set up using the following [Expression][]:

`new TextToFind(startsWith: "", contains: "cat", endsWith: "")` | `($)TextToFind` is a variable of type [TextToFind][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.LiteralText` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Matches][Matches Property] | `($)Matches`, with no value | `($)Matches` is a variable that will be set to an [List][]<[Match][]> value | + +#### Results + +`"The quick brown fox jumps over the lazy dog."` does not contain an occurrence of `"cat"`. Therefore, `($)Matches` will be set to the following: + +```json +[] +``` + +For more information on using [SearchOptions][SearchOptions Property] and [Text To Find][TextToFind Property] see [Advanced Examples][]. + +*** + +## Properties + +### Text + +The [Text][Text Property] to find all occurrences of [Text To Find][TextToFind Property] in. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +### Text To Find + +The [Text To Find][TextToFind Property] search query used to find all matching occurrences in [Text][Text Property]. This property contains the following sub-properties: + +* [Starts With][StartsWith] +* [Contains][Contains] +* [Ends With][EndsWith] + +See [Advanced Examples][] for more information on how to use these sub-properties. + +| | | +|--------------------|---------------------------| +| Data Type | [TextToFind][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `TextToFind` with the value shown below: | + +```json +{ + "StartsWith":"", + "Contains":"", + "EndsWith":"", +} +``` + +### Search Options + +[Search Options][SearchOptions Property] can be specified to choose whether [Text To Find][TextToFind Property] should be interpreted as a LiteralText, PatternMatching or Regex search: + +* `SearchOptions.LiteralText` matches text exactly; as long as the [Text][Text Property] contains the text specified in [Text To Find][TextToFind Property] it will be considered a match. +* `SearchOptions.PatternMatching` allows wildcard text matching using [Pattern Matching Syntax][]: + * `*` wildcard character can be used to match `0` or more characters. + * `?` wildcard character can be used to match `0` or `1` character. + * All other characters are treated as a literal character. +* `SearchOptions.Regex` allows regex text matching using [.NET Regex Syntax][Regex Syntax]. + +Please note that overlapping matches are not detected (i.e. searching for `"aa"` in `"aaa"` matches `"aa"` at index `0` but not `"aa"` at index `1`). + +| | | +|--------------------|---------------------------| +| Data Type | [SearchOptions][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | `LiteralText` | + +### Comparison Type + +The [Comparison Type][ComparisonType Property] specifying the rules used to match occurrences of [Text To Find][TextToFind Property] in [Text][Text Property]. + +For information about the [supported values][ComparisonTypes] for the [Comparison Type][ComparisonType Property] property and examples of how it is determined whether two pieces of text match, please see [Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [StringComparison][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | `Ordinal` | + +### Matches + +The [List][]<[Match][]> containing all valid matches found for the [Text To Find][TextToFind Property] search query. + +| | | +|--------------------|---------------------------| +| Data Type | [List][]<[Match][]> | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Matches` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [ArgumentException][] | Thrown when [Comparison Type][ComparisonType Property] is not one of the specified [StringComparison][] types (e.g. `(StringComparison)10`). | +| | Thrown when [Search Options][SearchOptions Property] is not one of the specified [SearchOptions][] types (e.g. `(SearchOptions)10`). | +| [RegexMatchTimeoutException][] | Thrown when the execution time of any search done to find all occurrences of [Text to Find][TextToFind Property] exceeds the [BlockTimeout][], or `60` seconds if that is undefined. | +| [RegexParsingFailedException][] | Thrown when [Search Options][SearchOptions Property] is `SearchOptions.Regex` and [TextToFind][TextToFind Property] has a property which is not a valid regex (e.g. `(`). | + +## Remarks + +### Advanced Examples + +The following sections will show examples for each possible value of [Search Options][SearchOptions Property]. + +In these examples, the following properties are common: + +| Property | Value | +|----------|-------| +| [Text][Text Property] | `"The quick brown fox jumps over the lazy dog."` | +| [Comparison Type][ComparisonType Property] | `Ordinal` | +| [Matches][Matches Property] | `($)Matches` with no value | + +These sections contain tables for the examples. The columns of these tables are explained below: + +| Column Name | Explanation | +|-------------|-------------| +| TextToFind.StartsWith | Value used to define the StartsWith property of [Text To Find][TextToFind Property]. | +| TextToFind.Contains | Value used to define the Contains property of [Text To Find][TextToFind Property]. | +| TextToFind.EndsWith | Value used to define the EndsWith property of [Text To Find][TextToFind Property]. | +| Matches[0].Value | The Value property of the first match of the [Matches][Matches Property] returned. \* | +| Matches[0].Groups["startsWith"].Value | The value of the "startsWith" Group within the first match of the [Matches][Matches Property]. \* | +| Matches[0].Groups["contains"].Value | The value of the "contains" Group within the first match of the [Matches][Matches Property]. \* | +| Matches[0].Groups["endsWith"].Value | The value of the "endsWith" Group within the first match of the [Matches][Matches Property]. \* | + +\* *No Match* indicates that no match was found and *N/A* indicates that the group is not returned as part of the [Matches][Matches Property]. + +Please note that these examples all perform a search which has at most one valid match in the text. + +#### SearchOptions.LiteralText + +These examples find the first occurrence in [Text][Text Property] with [Search Options][SearchOptions Property] set to `LiteralText` using a [case-sensitive, culture-insensitive][Ordinal] search. + +| TextToFind.StartsWith | TextToFind.Contains | TextToFind.EndsWith | Matches[0].Value | Matches[0].Groups["startsWith"].Value | Matches[0].Groups["contains"].Value | Matches[0].Groups["endsWith"].Value | +|------------|----------|----------|--------------|------------------|----------------|----------------| +| `"The"` | `"quick"` | `"brown"` | `"The quick brown"` | `"The"` | `"quick"` | `"brown"` | +| `"The"` | `"quick"` | `""` | `"The quick"` | `"The"` | `"quick"` | *N/A* | +| `"The"` | `""` | `"brown"` | *No Match* | *No Match* | *N/A* | *No Match* | +| `"The"` | `""` | `""` | `"The"` | `"The"` | *N/A* | *N/A* | +| `""` | `"quick"` | `"brown"` | `"quick brown"` | *N/A* | `"quick"` | `"brown"` | +| `""` | `"quick"` | `""` | `"quick"` | *N/A* | `"quick"` | *N/A* | +| `""` | `""` | `"brown"` | `"brown"` | *N/A* | *N/A* | `"brown"` | +| `""` | `""` | `""` | *No Match* | *N/A* | *N/A* | *N/A* | + +#### SearchOptions.PatternMatching + +These examples find the first occurrence in [Text][Text Property] with [Search Options][SearchOptions Property] set to `PatternMatching` using a [case-sensitive, culture-insensitive][Ordinal] search. + +| TextToFind.StartsWith | TextToFind.Contains | TextToFind.EndsWith | Matches[0].Value | Matches[0].Groups["startsWith"].Value | Matches[0].Groups["contains"].Value | Matches[0].Groups["endsWith"].Value | +|------------|----------|----------|--------------|------------------|----------------|----------------| +| `"The"` | `"quick"` | `"brown"` | `"The quick brown"` | `"The"` | `"quick"` | `"brown"` | +| `"The"` | `"quick"` | `""` | `"The quick"` | `"The"` | `"quick"` | *N/A* | +| `"The"` | `""` | `"brown"` | *No Match* | *No Match* | *N/A* | *No Match* | +| `"The"` | `""` | `""` | `"The"` | `"The"` | *N/A* | *N/A* | +| `""` | `"quick"` | `"brown"` | `"quick brown"` | *N/A* | `"quick"` | `"brown"` | +| `""` | `"quick"` | `""` | `"quick"` | *N/A* | `"quick"` | *N/A* | +| `""` | `""` | `"brown"` | `"brown"` | *N/A* | *N/A* | `"brown"` | +| `""` | `""` | `""` | *No Match* | *N/A* | *N/A* | *N/A* | +| `"The"` | `"quick"` | `"*"` | `"The quick brown fox jumps over the lazy dog."` | `"The"` | `"quick"` | `" brown fox jumps over the lazy dog."` | +| `"The"` | `"*"` | `"brown"` | `"The quick brown"` | `"The"` | `" quick "` | `"brown"` | +| `"The"` | `"*"` | `"*"` | `"The quick brown fox jumps over the lazy dog."` | `"The"` | `" quick brown fox jumps over the lazy dog."` | `""` | +| `"The"` | `"*"` | `""` | `"The quick brown fox jumps over the lazy dog."` | `"The"` | `" quick brown fox jumps over the lazy dog."` | *N/A* | +| `"The"` | `""` | `"*"` | `"The quick brown fox jumps over the lazy dog."` | `"The"` | *N/A* | `" quick brown fox jumps over the lazy dog."` | +| `"*"` | `"quick"` | `"brown"` | `"The quick brown"` | `"The "` | `"quick"` | `"brown"` | +| `"*"` | `"quick"` | `"*"` | `"The quick brown fox jumps over the lazy dog."` | `"The "` | `"quick"` | `" brown fox jumps over the lazy dog."` | +| `"*"` | `"quick"` | `""` | `"The quick"` | `"The "` | `"quick"` | *N/A* | +| `"*"` | `"*"` | `"brown"` | `"The quick brown"` | `"The quick "` | `""` | `"brown"` | +| `"*"` | `""` | `"brown"` | `"The quick brown"` | `"The quick "` | *N/A* | `"brown"` | +| `"*"` | `"*"` | `"*"` | `"The quick brown fox jumps over the lazy dog."` | `"The quick brown fox jumps over the lazy dog."` | `""` | `""` | +| `"*"` | `"*"` | `""` | `"The quick brown fox jumps over the lazy dog."` | `"The quick brown fox jumps over the lazy dog."` | `""` | *N/A* | +| `"*"` | `""` | `"*"` | `"The quick brown fox jumps over the lazy dog."` | `"The quick brown fox jumps over the lazy dog."` | *N/A* | `""` | +| `"*"` | `""` | `""` | `"The quick brown fox jumps over the lazy dog."` | `"The quick brown fox jumps over the lazy dog."` | *N/A* | *N/A* | +| `""` | `"quick"` | `"*"` | `"quick brown fox jumps over the lazy dog."` | *N/A* | `"quick"` | `" brown fox jumps over the lazy dog."` | +| `""` | `"*"` | `"brown"` | `"The quick brown"` | *N/A* | `"The quick "` | `"brown"` | +| `""` | `"*"` | `"*"` | `"The quick brown fox jumps over the lazy dog."` | *N/A* | `"The quick brown fox jumps over the lazy dog."` | `""` | +| `""` | `"*"` | `""` | `"The quick brown fox jumps over the lazy dog."` | *N/A* | `"The quick brown fox jumps over the lazy dog."` | *N/A* | +| `""` | `""` | `"*"` | `"The quick brown fox jumps over the lazy dog."` | *N/A* | *N/A* | `"The quick brown fox jumps over the lazy dog."` | + +#### SearchOptions.Regex + +These examples find the first occurrence in [Text][Text Property] with [Search Options][SearchOptions Property] set to `Regex` using a [case-sensitive, culture-insensitive][Ordinal] search. + +| TextToFind.StartsWith | TextToFind.Contains | TextToFind.EndsWith | Matches[0].Value | Matches[0].Groups["startsWith"].Value | Matches[0].Groups["contains"].Value | Matches[0].Groups["endsWith"].Value | +|------------|----------|----------|--------------|------------------|----------------|----------------| +| `"The"` | `"quick"` | `"brown"` | `"The quick brown"` | `"The"` | `"quick"` | `"brown"` | +| `"The"` | `"quick"` | `""` | `"The quick"` | `"The"` | `"quick"` | *N/A* | +| `"The"` | `""` | `"brown"` | *No Match* | *No Match* | *N/A* | *No Match* | +| `"The"` | `""` | `""` | `"The"` | `"The"` | *N/A* | *N/A* | +| `""` | `"quick"` | `"brown"` | `"quick brown"` | *N/A* | `"quick"` | `"brown"` | +| `""` | `"quick"` | `""` | `"quick"` | *N/A* | `"quick"` | *N/A* | +| `""` | `""` | `"brown"` | `"brown"` | *N/A* | *N/A* | `"brown"` | +| `""` | `""` | `""` | *No Match* | *N/A* | *N/A* | *N/A* | +| `"The"` | `"quick"` | `".*"` | `"The quick brown fox jumps over the lazy dog."` | `"The"` | `"quick"` | `" brown fox jumps over the lazy dog."` | +| `"The"` | `".*"` | `"brown"` | `"The quick brown"` | `"The"` | `" quick "` | `"brown"` | +| `"The"` | `".*"` | `".*"` | `"The quick brown fox jumps over the lazy dog."` | `"The"` | `" quick brown fox jumps over the lazy dog."` | `""` | +| `"The"` | `".*"` | `""` | `"The quick brown fox jumps over the lazy dog."` | `"The"` | `" quick brown fox jumps over the lazy dog."` | *N/A* | +| `"The"` | `""` | `".*"` | `"The quick brown fox jumps over the lazy dog."` | `"The"` | *N/A* | `" quick brown fox jumps over the lazy dog."` | +| `".*"` | `"quick"` | `"brown"` | `"The quick brown"` | `"The "` | `"quick"` | `"brown"` | +| `".*"` | `"quick"` | `".*"` | `"The quick brown fox jumps over the lazy dog."` | `"The "` | `"quick"` | `" brown fox jumps over the lazy dog."` | +| `".*"` | `"quick"` | `""` | `"The quick"` | `"The "` | `"quick"` | *N/A* | +| `".*"` | `".*"` | `"brown"` | `"The quick brown"` | `"The quick "` | `""` | `"brown"` | +| `".*"` | `""` | `"brown"` | `"The quick brown"` | `"The quick "` | *N/A* | `"brown"` | +| `".*"` | `".*"` | `".*"` | `"The quick brown fox jumps over the lazy dog."` | `"The quick brown fox jumps over the lazy dog."` | `""` | `""` | +| `".*"` | `".*"` | `""` | `"The quick brown fox jumps over the lazy dog."` | `"The quick brown fox jumps over the lazy dog."` | `""` | *N/A* | +| `".*"` | `""` | `".*"` | `"The quick brown fox jumps over the lazy dog."` | `"The quick brown fox jumps over the lazy dog."` | *N/A* | `""` | +| `".*"` | `""` | `""` | `"The quick brown fox jumps over the lazy dog."` | `"The quick brown fox jumps over the lazy dog."` | *N/A* | *N/A* | +| `""` | `"quick"` | `".*"` | `"quick brown fox jumps over the lazy dog."` | *N/A* | `"quick"` | `" brown fox jumps over the lazy dog."` | +| `""` | `".*"` | `"brown"` | `"The quick brown"` | *N/A* | `"The quick "` | `"brown"` | +| `""` | `".*"` | `".*"` | `"The quick brown fox jumps over the lazy dog."` | *N/A* | `"The quick brown fox jumps over the lazy dog."` | `""` | +| `""` | `".*"` | `""` | `"The quick brown fox jumps over the lazy dog."` | *N/A* | `"The quick brown fox jumps over the lazy dog."` | *N/A* | +| `""` | `""` | `".*"` | `"The quick brown fox jumps over the lazy dog."` | *N/A* | *N/A* | `"The quick brown fox jumps over the lazy dog."` | + +### Comparison Types + +For information about the [supported values][ComparisonTypes] for the [Comparison Type][ComparisonType Property] property and examples of how it is determined whether two pieces of text match, please see [Equality][]. + +### Null or empty Text + +If [Text][Text Property] is `null` or empty (i.e. `""`) no operation is performed and [Matches][Matches Property] is set to an empty [List][]<[Match][]>. + +### Null or empty Text To Find + +If all properties of [Text To Find][TextToFind Property] are `null` or empty (i.e. `""`), or [Text To Find][TextToFind Property] is `null`; no operation is performed and [Matches][Matches Property] is set to an empty [List][]<[Match][]>. + +### Null or empty property of Text To Find + +If a property of [Text To Find][TextToFind Property] is `null` or empty (i.e. `""`), then it is not included as a specific [Group][] for any [Match][] within the returned [Matches][Matches Property]; see [Advanced Examples][]. + +### Known Limitations + +If [Comparison Type][ComparisonType Property] is set to `StringComparison.CurrentCulture`, some characters such as `æ` that are equivalent to `ae` may not evaluate as equal. + +[Advanced Examples]: {{}} +[ComparisonType Property]: {{< ref "#comparison-type" >}} +[Matches Property]: {{< ref "#matches" >}} +[SearchOptions Property]: {{< ref "#search-options" >}} +[Text Property]: {{< ref "#text" >}} +[TextToFind Property]: {{< ref "#text-to-find" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.MainDoc" >}} +[ComparisonTypes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.MainDoc" >}} +[Ordinal]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.Ordinal" >}} +[OrdinalIgnoreCase]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.OrdinalIgnoreCase" >}} +[Pattern Matching Syntax]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.PatternMatchingSyntax.MainDoc" >}} +[Regex Syntax]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.RegexSyntax.MainDoc" >}} + +[RegexParsingFailedException]: {{< url path="Cortex.Reference.Exceptions.Text.Regex.RegexParsingFailedException.MainDoc" >}} + +[ArgumentException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentException" >}} +[RegexMatchTimeoutException]: {{< url path="MSDocs.DotNet.Api.System.Text.RegularExpressions.RegexMatchTimeoutException" >}} + +[List]: {{< url path="Cortex.Reference.DataTypes.Collections.List.MainDoc" >}} +[Match]: {{< url path="Cortex.Reference.DataTypes.Text.Regex.Match.MainDoc" >}} +[Group]: {{< url path="Cortex.Reference.DataTypes.Text.Regex.Group.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[StringComparison]: {{< url path="Cortex.Reference.DataTypes.Text.StringComparison.MainDoc" >}} +[SearchOptions]: {{< url path="Cortex.Reference.DataTypes.Text.SearchOptions.MainDoc" >}} + +[TextToFind]: {{< url path="Cortex.Reference.DataTypes.Text.TextToFind.MainDoc">}} +[StartsWith]: {{< url path="Cortex.Reference.DataTypes.Text.TextToFind.StartsWith">}} +[Contains]: {{< url path="Cortex.Reference.DataTypes.Text.TextToFind.Contains">}} +[EndsWith]: {{< url path="Cortex.Reference.DataTypes.Text.TextToFind.EndsWith">}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} +[BlockTimeout]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.CommonProperties.BlockTimeoutProperty" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/find-text/find-text-block.md b/content/en/docs/2024.11/Reference/Blocks/Text/find-text/find-text-block.md new file mode 100644 index 000000000..d9927c071 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/find-text/find-text-block.md @@ -0,0 +1,513 @@ +--- +title: "Find Text" +linkTitle: "Find Text" +description: "Finds the specified occurrence of a text in a given text." +--- +{{< figure src="/blocks/Cortex_Blocks_Text_FindText_FindTextBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Text.FindText.FindTextBlock)

+ +## Description + +Finds the specified [Occurrence][Occurrence Property] of [Text To Find][TextToFind Property] in a given [Text][Text Property]. + +[Search Options][SearchOptions Property] can be specified to choose whether to use a LiteralText, PatternMatching or Regex search to match the [Text To Find][TextToFind Property] input. + +## Examples + +### Find the first Occurrence of text + +This example will find the first [occurrence][Occurrence Property] of `"The"` in `"The quick brown fox jumps over the lazy dog."`. + +It performs a [case-sensitive, culture-insensitive][Ordinal] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog."` | `($)Text` is a variable of type [String][] | +| [Text To Find][TextToFind Property] | `($)TextToFind`, with value `{"startsWith": "", "contains": "The", "endsWith": ""}`

In this example `($)TextToFind` has been set up using the following [Expression][]:

`new TextToFind(startsWith: "", contains: "The", endsWith: "")` | `($)TextToFind` is a variable of type [TextToFind][] | +| [Occurrence][Occurrence Property] | `($)Occurrence`, with value `1` | `($)Occurrence` is a variable of type [Int32][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.LiteralText` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Match][Match Property] | `($)Match`, with no value | `($)Match` is a variable that will be set to a [Match][] value | + +#### Result + +As this example is performing a [case-sensitive, culture-insensitive][Ordinal] comparison of text (`"The quick brown fox jumps over the lazy dog."`), the text contains `"The"` once; `"the"` has a different case so does not match. Therefore, the variable `($)Match` will be set to the following: + +```json +{ + "Value": "The", + "Index": 0, + "Length": 3, + "Groups": { + "0": { + "Value": "The", + "Index": 0, + "Length": 3, + "Captures": [ + { + "Value": "The", + "Index": 0, + "Length": 3 + } + ] + }, + "contains": { + "Value": "The", + "Index": 0, + "Length": 3, + "Captures": [ + { + "Value": "The", + "Index": 0, + "Length": 3 + } + ] + } + } +} +``` + +For more information on using [Search Options][SearchOptions Property] and [Text To Find][TextToFind Property] see [Advanced Examples][]. + +*** + +### Find the second Occurrence of text + +This example will find the second [occurrence][Occurrence Property] of `"The"` in `"The quick brown fox jumps over the lazy dog."`. + +It performs a [case-insensitive, culture-insensitive][OrdinalIgnoreCase] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog."` | `($)Text` is a variable of type [String][] | +| [Text To Find][TextToFind Property] | `($)TextToFind`, with value `{"startsWith": "", "contains": "The", "endsWith": ""}`

In this example `($)TextToFind` has been set up using the following [Expression][]:

`new TextToFind(startsWith: "", contains: "The", endsWith: "")` | `($)TextToFind` is a variable of type [TextToFind][] | +| [Occurrence][Occurrence Property] | `($)Occurrence`, with value `2` | `($)Occurrence` is a variable of type [Int32][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.LiteralText` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.OrdinalIgnoreCase` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Match][Match Property] | `($)Match`, with no value | `($)Match` is a variable that will be set to a [Match][] value | + +#### Result + +As this example is performing a [case-insensitive, culture-insensitive][OrdinalIgnoreCase] comparison of the text (`"The quick brown fox jumps over the lazy dog."`), the text contains `"The"` twice; the first occurrence is `"The"` and the second occurrence is `"the"`. Therefore, the variable `($)Match` will be set to the following: + +```json +{ + "Value": "the", + "Index": 31, + "Length": 3, + "Groups": { + "0": { + "Value": "the", + "Index": 31, + "Length": 3, + "Captures": [ + { + "Value": "the", + "Index": 31, + "Length": 3 + } + ] + }, + "contains": { + "Value": "the", + "Index": 31, + "Length": 3, + "Captures": [ + { + "Value": "the", + "Index": 31, + "Length": 3 + } + ] + } + } +} +``` + +For more information on using [SearchOptions][SearchOptions Property] and [Text To Find][TextToFind Property] see [Advanced Examples][]. + +*** + +### Find the last Occurrence of text + +This example will find the last [occurrence][Occurrence Property] of `"The"` in `"The quick brown fox jumps over the lazy dog."`. + +It performs a [case-insensitive, culture-insensitive][OrdinalIgnoreCase] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog."` | `($)Text` is a variable of type [String][] | +| [Text To Find][TextToFind Property] | `($)TextToFind`, with value `{"startsWith": "", "contains": "The", "endsWith": ""}`

In this example `($)TextToFind` has been set up using the following [Expression][]:

`new TextToFind(startsWith: "", contains: "The", endsWith: "")` | `($)TextToFind` is a variable of type [TextToFind][] | +| [Occurrence][Occurrence Property] | `($)Occurrence`, with value `-1` | `($)Occurrence` is a variable of type [Int32][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.LiteralText` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.OrdinalIgnoreCase` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Match][Match Property] | `($)Match`, with no value | `($)Match` is a variable that will be set to a [Match][] value | + +#### Result + +As this example is performing a [case-insensitive, culture-insensitive][OrdinalIgnoreCase] comparison of the text (`"The quick brown fox jumps over the lazy dog."`), the text contains `"The"` twice; the first occurrence is `"The"` and the second occurrence is `"the"`. The second occurrence is also the last occurrence, and therefore, the variable `($)Match` will be set to the following: + +```json +{ + "Value": "the", + "Index": 31, + "Length": 3, + "Groups": { + "0": { + "Value": "the", + "Index": 31, + "Length": 3, + "Captures": [ + { + "Value": "the", + "Index": 31, + "Length": 3 + } + ] + }, + "contains": { + "Value": "the", + "Index": 31, + "Length": 3, + "Captures": [ + { + "Value": "the", + "Index": 31, + "Length": 3 + } + ] + } + } +} +``` + +For more information on using [SearchOptions][SearchOptions Property] and [Text To Find][TextToFind Property] see [Advanced Examples][]. + +*** + +### Find an invalid Occurrence of text + +This example will find the third [occurrence][Occurrence Property] of `"The"`, which is not present, in `"The quick brown fox jumps over the lazy dog."`. + +It performs a [case-insensitive, culture-insensitive][OrdinalIgnoreCase] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog."` | `($)Text` is a variable of type [String][] | +| [Text To Find][TextToFind Property] | `($)TextToFind`, with value `{"startsWith": "", "contains": "The", "endsWith": ""}`

In this example `($)TextToFind` has been set up using the following [Expression][]:

`new TextToFind(startsWith: "", contains: "The", endsWith: "")` | `($)TextToFind` is a variable of type [TextToFind][] | +| [Occurrence][Occurrence Property] | `($)Occurrence`, with value `3` | `($)Occurrence` is a variable of type [Int32][] | +| [Search Options][SearchOptions Property] | `($)SearchOptions`, with value `SearchOptions.LiteralText` | `($)SearchOptions` is a variable of type [SearchOptions][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.OrdinalIgnoreCase` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Match][Match Property] | `($)Match`, with no value | `($)Match` is a variable that will be set to a [Match][] value | + +#### Result + +As this example is performing a [case-insensitive, culture-insensitive][OrdinalIgnoreCase] comparison of the text (`"The quick brown fox jumps over the lazy dog."`), the text contains `"The"` twice; the first occurrence is `"The"` and the second occurrence is `"the"`. There is no match for the third occurrence. Therefore, the variable `($)Match` will be set to the following: + +```json +null +``` + +For more information on using [SearchOptions][SearchOptions Property] and [Text To Find][TextToFind Property] see [Advanced Examples][]. + +*** + +## Properties + +### Text + +The [Text][Text Property] to find the specified occurrence of [Text To Find][TextToFind Property] in. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +### Text To Find + +The [Text To Find][TextToFind Property] search query used to find the specified matching occurrence in [Text][Text Property]. This property contains the following sub-properties: + +* [Starts With][StartsWith] +* [Contains][Contains] +* [Ends With][EndsWith] + +See [Advanced Examples][] for more information on how to use these sub-properties. + +| | | +|--------------------|---------------------------| +| Data Type | [TextToFind][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `TextToFind` with the value shown below: | + +```json +{ + "StartsWith":"", + "Contains":"", + "EndsWith":"", +} +``` + +### Occurrence + +The [Occurrence][Occurrence Property] of [Text To Find][TextToFind Property] in [Text][Text Property]. + +For information about [supported values][Occurrences] for the [Occurrence][Occurrence Property] property and examples of how it can be used, please see [Occurrences][]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `1` | + +### Search Options + +[Search Options][SearchOptions Property] can be specified to choose whether [Text To Find][TextToFind Property] should be interpreted as a LiteralText, PatternMatching or Regex search: + +* `SearchOptions.LiteralText` matches text exactly; as long as the [Text][Text Property] contains the text specified in [Text To Find][TextToFind Property] it will be considered a match. +* `SearchOptions.PatternMatching` allows wildcard text matching using [Pattern Matching Syntax][]: + * `*` wildcard character can be used to match `0` or more characters. + * `?` wildcard character can be used to match `0` or `1` character. + * All other characters are treated as a literal character. +* `SearchOptions.Regex` allows regex text matching using [.NET Regex Syntax][Regex Syntax]. + +Please note that overlapping matches are not detected (i.e. searching for `"aa"` in `"aaa"` matches `"aa"` at index `0` but not `"aa"` at index `1`). + +| | | +|--------------------|---------------------------| +| Data Type | [SearchOptions][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | `LiteralText` | + +### Comparison Type + +The [Comparison Type][ComparisonType Property] specifying the rules used to match occurrences of [Text To Find][TextToFind Property] in [Text][Text Property]. + +For information about the [supported values][ComparisonTypes] for the [Comparison Type][ComparisonType Property] property and examples of how it is determined whether two pieces of text match, please see [Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [StringComparison][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | `Ordinal` | + +### Match + +The [Match][] containing the valid match found for the [Text To Find][TextToFind Property] search query. + +| | | +|--------------------|---------------------------| +| Data Type | [Match][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Match` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [ArgumentException][] | Thrown when [Comparison Type][ComparisonType Property] is not one of the specified [StringComparison][] types (e.g. `(StringComparison)10`). | +| | Thrown when [Search Options][SearchOptions Property] is not one of the specified [SearchOptions][] types (e.g. `(SearchOptions)10`). | +| [RegexMatchTimeoutException][] | Thrown when the execution time of any search done to find the specific occurrence of [Text to Find][TextToFind Property] exceeds the [BlockTimeout][], or `60` seconds if that is undefined. | +| [RegexParsingFailedException][] | Thrown when [Search Options][SearchOptions Property] is `SearchOptions.Regex` and [TextToFind][TextToFind Property] has a property which is not a valid regex (e.g. `(`). | + +## Remarks + +### Advanced Examples + +The following sections will show examples for each possible value of [Search Options][SearchOptions Property]. + +In these examples, the following properties are common: + +| Property | Value | +|----------|-------| +| [Text][Text Property] | `"The quick brown fox jumps over the lazy dog."` | +| [Occurrence][Occurrence Property] | `1` | +| [Comparison Type][ComparisonType Property] | `Ordinal` | +| [Match][] | `($)Match` with no value | + +These sections contain tables for the examples. The columns of these tables are explained below: + +| Column Name | Explanation | +|-------------|-------------| +| TextToFind.StartsWith | Value used to define the StartsWith property of [Text To Find][TextToFind Property]. | +| TextToFind.Contains | Value used to define the Contains property of [Text To Find][TextToFind Property]. | +| TextToFind.EndsWith | Value used to define the EndsWith property of [Text To Find][TextToFind Property]. | +| Match.Value | The Value property of the [Match][Match Property] returned. \* | +| Match.Groups["startsWith"].Value | The value of the "startsWith" Group within the [Match][Match Property]. \* | +| Match.Groups["contains"].Value | The value of the "contains" Group within the [Match][Match Property]. \* | +| Match.Groups["endsWith"].Value | The value of the "endsWith" Group within the [Match][Match Property]. \* | + +\* *No Match* indicates that no match was found and *N/A* indicates that the group is not returned as part of the [Match][Match Property]. + +#### SearchOptions.LiteralText + +These examples find and remove the first occurrence in [Text][Text Property] with [Search Options][SearchOptions Property] set to `LiteralText`. + +| TextToFind.StartsWith | TextToFind.Contains | TextToFind.EndsWith | Match.Value | Match.Groups["startsWith"].Value | Match.Groups["contains"].Value | Match.Groups["endsWith"].Value | +|------------|----------|----------|--------------|------------------|----------------|----------------| +| `"The"` | `"quick"` | `"brown"` | `"The quick brown"` | `"The"` | `"quick"` | `"brown"` | +| `"The"` | `"quick"` | `""` | `"The quick"` | `"The"` | `"quick"` | *N/A* | +| `"The"` | `""` | `"brown"` | *No Match* | *No Match* | *N/A* | *No Match* | +| `"The"` | `""` | `""` | `"The"` | `"The"` | *N/A* | *N/A* | +| `""` | `"quick"` | `"brown"` | `"quick brown"` | *N/A* | `"quick"` | `"brown"` | +| `""` | `"quick"` | `""` | `"quick"` | *N/A* | `"quick"` | *N/A* | +| `""` | `""` | `"brown"` | `"brown"` | *N/A* | *N/A* | `"brown"` | +| `""` | `""` | `""` | *No Match* | *N/A* | *N/A* | *N/A* | + +#### SearchOptions.PatternMatching + +These examples find and remove the first occurrence in [Text][Text Property] with [Search Options][SearchOptions Property] set to `PatternMatching`. + +| TextToFind.StartsWith | TextToFind.Contains | TextToFind.EndsWith | Match.Value | Match.Groups["startsWith"].Value | Match.Groups["contains"].Value | Match.Groups["endsWith"].Value | +|------------|----------|----------|--------------|------------------|----------------|----------------| +| `"The"` | `"quick"` | `"brown"` | `"The quick brown"` | `"The"` | `"quick"` | `"brown"` | +| `"The"` | `"quick"` | `""` | `"The quick"` | `"The"` | `"quick"` | *N/A* | +| `"The"` | `""` | `"brown"` | *No Match* | *No Match* | *N/A* | *No Match* | +| `"The"` | `""` | `""` | `"The"` | `"The"` | *N/A* | *N/A* | +| `""` | `"quick"` | `"brown"` | `"quick brown"` | *N/A* | `"quick"` | `"brown"` | +| `""` | `"quick"` | `""` | `"quick"` | *N/A* | `"quick"` | *N/A* | +| `""` | `""` | `"brown"` | `"brown"` | *N/A* | *N/A* | `"brown"` | +| `""` | `""` | `""` | *No Match* | *N/A* | *N/A* | *N/A* | +| `"The"` | `"quick"` | `"*"` | `"The quick brown fox jumps over the lazy dog."` | `"The"` | `"quick"` | `" brown fox jumps over the lazy dog."` | +| `"The"` | `"*"` | `"brown"` | `"The quick brown"` | `"The"` | `" quick "` | `"brown"` | +| `"The"` | `"*"` | `"*"` | `"The quick brown fox jumps over the lazy dog."` | `"The"` | `" quick brown fox jumps over the lazy dog."` | `""` | +| `"The"` | `"*"` | `""` | `"The quick brown fox jumps over the lazy dog."` | `"The"` | `" quick brown fox jumps over the lazy dog."` | *N/A* | +| `"The"` | `""` | `"*"` | `"The quick brown fox jumps over the lazy dog."` | `"The"` | *N/A* | `" quick brown fox jumps over the lazy dog."` | +| `"*"` | `"quick"` | `"brown"` | `"The quick brown"` | `"The "` | `"quick"` | `"brown"` | +| `"*"` | `"quick"` | `"*"` | `"The quick brown fox jumps over the lazy dog."` | `"The "` | `"quick"` | `" brown fox jumps over the lazy dog."` | +| `"*"` | `"quick"` | `""` | `"The quick"` | `"The "` | `"quick"` | *N/A* | +| `"*"` | `"*"` | `"brown"` | `"The quick brown"` | `"The quick "` | `""` | `"brown"` | +| `"*"` | `""` | `"brown"` | `"The quick brown"` | `"The quick "` | *N/A* | `"brown"` | +| `"*"` | `"*"` | `"*"` | `"The quick brown fox jumps over the lazy dog."` | `"The quick brown fox jumps over the lazy dog."` | `""` | `""` | +| `"*"` | `"*"` | `""` | `"The quick brown fox jumps over the lazy dog."` | `"The quick brown fox jumps over the lazy dog."` | `""` | *N/A* | +| `"*"` | `""` | `"*"` | `"The quick brown fox jumps over the lazy dog."` | `"The quick brown fox jumps over the lazy dog."` | *N/A* | `""` | +| `"*"` | `""` | `""` | `"The quick brown fox jumps over the lazy dog."` | `"The quick brown fox jumps over the lazy dog."` | *N/A* | *N/A* | +| `""` | `"quick"` | `"*"` | `"quick brown fox jumps over the lazy dog."` | *N/A* | `"quick"` | `" brown fox jumps over the lazy dog."` | +| `""` | `"*"` | `"brown"` | `"The quick brown"` | *N/A* | `"The quick "` | `"brown"` | +| `""` | `"*"` | `"*"` | `"The quick brown fox jumps over the lazy dog."` | *N/A* | `"The quick brown fox jumps over the lazy dog."` | `""` | +| `""` | `"*"` | `""` | `"The quick brown fox jumps over the lazy dog."` | *N/A* | `"The quick brown fox jumps over the lazy dog."` | *N/A* | +| `""` | `""` | `"*"` | `"The quick brown fox jumps over the lazy dog."` | *N/A* | *N/A* | `"The quick brown fox jumps over the lazy dog."` | + +#### SearchOptions.Regex + +These examples find and remove the first occurrence in [Text][Text Property] with [Search Options][SearchOptions Property] set to `Regex`. + +| TextToFind.StartsWith | TextToFind.Contains | TextToFind.EndsWith | Match.Value | Match.Groups["startsWith"].Value | Match.Groups["contains"].Value | Match.Groups["endsWith"].Value | +|------------|----------|----------|--------------|------------------|----------------|----------------| +| `"The"` | `"quick"` | `"brown"` | `"The quick brown"` | `"The"` | `"quick"` | `"brown"` | +| `"The"` | `"quick"` | `""` | `"The quick"` | `"The"` | `"quick"` | *N/A* | +| `"The"` | `""` | `"brown"` | *No Match* | *No Match* | *N/A* | *No Match* | +| `"The"` | `""` | `""` | `"The"` | `"The"` | *N/A* | *N/A* | +| `""` | `"quick"` | `"brown"` | `"quick brown"` | *N/A* | `"quick"` | `"brown"` | +| `""` | `"quick"` | `""` | `"quick"` | *N/A* | `"quick"` | *N/A* | +| `""` | `""` | `"brown"` | `"brown"` | *N/A* | *N/A* | `"brown"` | +| `""` | `""` | `""` | *No Match* | *N/A* | *N/A* | *N/A* | +| `"The"` | `"quick"` | `".*"` | `"The quick brown fox jumps over the lazy dog."` | `"The"` | `"quick"` | `" brown fox jumps over the lazy dog."` | +| `"The"` | `".*"` | `"brown"` | `"The quick brown"` | `"The"` | `" quick "` | `"brown"` | +| `"The"` | `".*"` | `".*"` | `"The quick brown fox jumps over the lazy dog."` | `"The"` | `" quick brown fox jumps over the lazy dog."` | `""` | +| `"The"` | `".*"` | `""` | `"The quick brown fox jumps over the lazy dog."` | `"The"` | `" quick brown fox jumps over the lazy dog."` | *N/A* | +| `"The"` | `""` | `".*"` | `"The quick brown fox jumps over the lazy dog."` | `"The"` | *N/A* | `" quick brown fox jumps over the lazy dog."` | +| `".*"` | `"quick"` | `"brown"` | `"The quick brown"` | `"The "` | `"quick"` | `"brown"` | +| `".*"` | `"quick"` | `".*"` | `"The quick brown fox jumps over the lazy dog."` | `"The "` | `"quick"` | `" brown fox jumps over the lazy dog."` | +| `".*"` | `"quick"` | `""` | `"The quick"` | `"The "` | `"quick"` | *N/A* | +| `".*"` | `".*"` | `"brown"` | `"The quick brown"` | `"The quick "` | `""` | `"brown"` | +| `".*"` | `""` | `"brown"` | `"The quick brown"` | `"The quick "` | *N/A* | `"brown"` | +| `".*"` | `".*"` | `".*"` | `"The quick brown fox jumps over the lazy dog."` | `"The quick brown fox jumps over the lazy dog."` | `""` | `""` | +| `".*"` | `".*"` | `""` | `"The quick brown fox jumps over the lazy dog."` | `"The quick brown fox jumps over the lazy dog."` | `""` | *N/A* | +| `".*"` | `""` | `".*"` | `"The quick brown fox jumps over the lazy dog."` | `"The quick brown fox jumps over the lazy dog."` | *N/A* | `""` | +| `".*"` | `""` | `""` | `"The quick brown fox jumps over the lazy dog."` | `"The quick brown fox jumps over the lazy dog."` | *N/A* | *N/A* | +| `""` | `"quick"` | `".*"` | `"quick brown fox jumps over the lazy dog."` | *N/A* | `"quick"` | `" brown fox jumps over the lazy dog."` | +| `""` | `".*"` | `"brown"` | `"The quick brown"` | *N/A* | `"The quick "` | `"brown"` | +| `""` | `".*"` | `".*"` | `"The quick brown fox jumps over the lazy dog."` | *N/A* | `"The quick brown fox jumps over the lazy dog."` | `""` | +| `""` | `".*"` | `""` | `"The quick brown fox jumps over the lazy dog."` | *N/A* | `"The quick brown fox jumps over the lazy dog."` | *N/A* | +| `""` | `""` | `".*"` | `"The quick brown fox jumps over the lazy dog."` | *N/A* | *N/A* | `"The quick brown fox jumps over the lazy dog."` | + +### Comparison Types + +For information about the [supported values][ComparisonTypes] for the [Comparison Type][ComparisonType Property] property and examples of how it is determined whether two pieces of text match, please see [Equality][]. + +### Null or empty Text + +If [Text][Text Property] is `null` or empty (i.e. `""`) no operation is performed and [Match][Match Property] is set to `null`. + +### Null or empty Text To Find + +If all properties of [Text To Find][TextToFind Property] are `null` or empty (i.e. `""`) no operation is performed and [Match][Match Property] is set to `null`. + +### Null or empty property of Text To Find + +If a property of [Text To Find][TextToFind Property] is `null` or empty (i.e. `""`), then it is not included as a specified [Group][] in the returned [Match][Match Property]; see [Advanced Examples][]. + +### Known Limitations + +If [Comparison Type][ComparisonType Property] is set to `StringComparison.CurrentCulture`, some characters such as `æ` that is equivalent to `ae` may not evaluate as equal. + +[Advanced Examples]: {{}} +[Match Property]: {{< ref "#match" >}} +[Occurrence Property]:{{}} +[Text Property]: {{< ref "#text" >}} +[TextToFind Property]: {{< ref "#text-to-find" >}} +[SearchOptions Property]: {{< ref "#search-options" >}} +[ComparisonType Property]: {{< ref "#comparison-type" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Occurrences]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Occurrences.MainDoc" >}} +[Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.MainDoc" >}} +[ComparisonTypes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.MainDoc" >}} +[Ordinal]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.Ordinal" >}} +[OrdinalIgnoreCase]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.OrdinalIgnoreCase" >}} +[Pattern Matching Syntax]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.PatternMatchingSyntax.MainDoc" >}} +[Regex Syntax]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.RegexSyntax.MainDoc" >}} + +[RegexParsingFailedException]: {{< url path="Cortex.Reference.Exceptions.Text.Regex.RegexParsingFailedException.MainDoc" >}} + +[ArgumentException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentException" >}} +[RegexMatchTimeoutException]: {{< url path="MSDocs.DotNet.Api.System.Text.RegularExpressions.RegexMatchTimeoutException" >}} + +[Group]: {{< url path="Cortex.Reference.DataTypes.Text.Regex.Group.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[List]: {{< url path="Cortex.Reference.DataTypes.Collections.List.MainDoc" >}} +[Match]: {{< url path="Cortex.Reference.DataTypes.Text.Regex.Match.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[StringComparison]: {{< url path="Cortex.Reference.DataTypes.Text.StringComparison.MainDoc" >}} +[SearchOptions]: {{< url path="Cortex.Reference.DataTypes.Text.SearchOptions.MainDoc" >}} + +[TextToFind]: {{< url path="Cortex.Reference.DataTypes.Text.TextToFind.MainDoc">}} +[StartsWith]: {{< url path="Cortex.Reference.DataTypes.Text.TextToFind.StartsWith">}} +[Contains]: {{< url path="Cortex.Reference.DataTypes.Text.TextToFind.Contains">}} +[EndsWith]: {{< url path="Cortex.Reference.DataTypes.Text.TextToFind.EndsWith">}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} +[BlockTimeout]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.CommonProperties.BlockTimeoutProperty" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/format-text/_index.md b/content/en/docs/2024.11/Reference/Blocks/Text/format-text/_index.md new file mode 100644 index 000000000..3510eb0bb --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/format-text/_index.md @@ -0,0 +1,5 @@ +--- +title: "Format Text" +linkTitle: "Format Text" +description: "Format text containing format parameters (i.e. {0}) by replacing them with other values." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/format-text/format-text-with-value-block-1.md b/content/en/docs/2024.11/Reference/Blocks/Text/format-text/format-text-with-value-block-1.md new file mode 100644 index 000000000..ef3e20562 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/format-text/format-text-with-value-block-1.md @@ -0,0 +1,186 @@ +--- +title: "Format Text With Value" +linkTitle: "Format Text With Value" +description: "Formats text by replacing all `{0}` format parameters in a specified format template with a given value." +--- + +{{< figure src="/blocks/Cortex_Blocks_Text_FormatText_FormatTextWithValueBlock_1.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Text.FormatText.FormatTextWithValueBlock`1)

+ +## Description + +Replaces all `{0}` format parameters in the specified [Format Template][FormatTemplate Property] with the given [Value][Value Property], saving the result as [Text][Text Property]. + +An additional [Format Provider][FormatProvider Property] option can be specified to define the cultural rules used to control the formatting (e.g. `new CultureInfo("en-US")` will apply American English rules to the formatting). + +## Examples + +### Text Value + +This example will format `"Hello {0}"` with `"world!"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Format Template][FormatTemplate Property] | `($)FormatTemplate`, with value `"Hello {0}"` | `($)FormatTemplate` is a variable of type [String][] | +| [Value][Value Property] | `($)Value`, with value `"world!"` | `($)Value` is a variable of type [String][] | +| [Format Provider][FormatProvider Property] | `($)FormatProvider`, with value `null` | `($)FormatProvider` is a variable of type [IFormatProvider][] | +| [Text][Text Property] | `($)Text`, with no value | `($)Text` is a variable that will be set to a [String][] value | + +#### Result + +Formatting `"Hello {0}"` with `"world!"` results in the variable `($)Text` being updated to the following: + +```json +"Hello world!" +``` + +*** + +### Double Value using American English ("en-US") + +This example will format `"Your final bill is {0:C2}"` with `99.99`. + +The format parameter `{0:C2}` will display the double value as U.S currency to two decimal places (i.e. `$99.99`): + +* `0` - is replaced by the double value. +* `C` - indicates to include the currency symbol for the specified culture (i.e. `$`). +* `2` - indicates the number of decimal places to format the double value to. + +For information about format templates and parameters, please see [Text Formatting][]. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Format Template][FormatTemplate Property] | `($)FormatTemplate`, with value `"Your final bill is {0:C2}"` | `($)FormatTemplate` is a variable of type [String][] | +| [Value][Value Property] | `($)Value`, with value `99.99` | `($)Value` is a variable of type [Double][] | +| [Format Provider][FormatProvider Property] | `($)FormatProvider`, with value `new CultureInfo("en-US")` | `($)FormatProvider` is a variable of type [IFormatProvider][] | +| [Text][Text Property] | `($)Text`, with no value | `($)Text` is a variable that will be set to a [String][] value | + +#### Result + +Formatting `"Your final bill is {0:C2}"` with `99.99` results in the variable `($)Text` being updated to the following: + +```json +"Your final bill is $99.99" +``` + +*** + +## Properties + +### Format Template + +[Format Template][FormatTemplate Property] can be specified to define the format of the resultant [Text][Text Property]. + +All `{0}` format parameters in [Format Template][FormatTemplate Property] will be replaced with [Value][Value Property]. + +If [Format Template][FormatTemplate Property] is not specified, `null` or empty (i.e. `""`), or does not contain any `{0}` format parameters, nothing is replaced; [Text][Text Property] will be set to the value of [Format Template][FormatTemplate Property]. + +For information about format templates and parameters, please see [Text Formatting][]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | `@"{0}"` | + +### Value + +The [Value][Value Property] to replace all `{0}` format parameters with. + +[Value][Value Property] does not have to be text, it can be any data type. Any non-text value will be converted to its text representation when it is replaced. + +For information about how types are converted to their text representation please see [Converting Objects To Text][]. + +| | | +|--------------------|---------------------------| +| Data Type | [TValue][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### Format Provider + +[Format Provider][FormatProvider Property] can be specified to define the cultural rules used to control the formatting (e.g. `new CultureInfo("en-US")` will apply American English rules to the formatting.). + +If [Format Provider][FormatProvider Property] is not specified or `null`, `CultureInfo.InvariantCulture` will be used; `CultureInfo.InvariantCulture` is associated with the English language but not with any country/region. For more information, please see [Invariant Culture rules][]. + +| | | +|--------------------|---------------------------| +| Data Type | [IFormatProvider][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Expression][] | +| Default Value | `CultureInfo.InvariantCulture` | + +### Text + +The formatted [Text][Text Property] that results from replacing all `{0}` format parameters in [Format Template][FormatTemplate Property] with [Value][Value Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [FormatException][] | Thrown when [Format Template][FormatTemplate Property] contains a format parameter not equal to zero (e.g. `"Hello {1}"`). | +| | Thrown when [Format Template][FormatTemplate Property] contains a format parameter that is invalid or not well-formed (e.g. `"Cost is {0:Q2}`, as `"Q"` is not a [valid format parameter][]). | + +## Remarks + +### Text Formatting + +Please note that changes to operating system settings, could result in some of the examples above displaying different results. + +For information about format templates and parameters, please see [Text Formatting][]. + +### Null or Empty Format Template + +If [Format Template][FormatTemplate Property] is not specified, `null` or empty (i.e. `""`), or does not contain any `{0}` format parameters, nothing is replaced; [Text][Text Property] will be set to the value of [Format Template][FormatTemplate Property]. + +### Null Format Provider + +If [Format Provider][FormatProvider Property] is not specified or `null`, `CultureInfo.InvariantCulture` will be used; `CultureInfo.InvariantCulture` is associated with the English language but not with any country/region. For more information, please see [Invariant Culture rules][]. + +[FormatTemplate Property]: {{< ref "#format-template" >}} +[Value Property]: {{< ref "#value" >}} +[FormatProvider Property]: {{< ref "#format-provider" >}} +[Text Property]: {{< ref "#text" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[FormatException]: {{< url path="MSDocs.DotNet.Api.System.FormatException" >}} + +[Converting Objects To Text]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.ConvertingObjectsToText.MainDoc" >}} +[Invariant Culture rules]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Culture.InvariantCulture.MainDoc" >}} +[Text Formatting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Formatting.MainDoc" >}} +[Valid Format Parameter]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Formatting.FormatTemplates" >}} + +[TValue]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Double]: {{< url path="Cortex.Reference.DataTypes.Numbers.Double.MainDoc" >}} +[IFormatProvider]: {{< url path="Cortex.Reference.DataTypes.Text.IFormatProvider.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/format-text/format-text-with-values-block-1.md b/content/en/docs/2024.11/Reference/Blocks/Text/format-text/format-text-with-values-block-1.md new file mode 100644 index 000000000..1fe075c97 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/format-text/format-text-with-values-block-1.md @@ -0,0 +1,209 @@ +--- +title: "Format Text With Values" +linkTitle: "Format Text With Values" +description: "Formats text by replacing all format parameters (e.g. `{0}` or `{1}` or `{2}`) in a specified format template with given values." +--- + +{{< figure src="/blocks/Cortex_Blocks_Text_FormatText_FormatTextWithValuesBlock_1.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Text.FormatText.FormatTextWithValuesBlock`1)

+ +## Description + +Replaces all format parameters (e.g. `{0}` or `{1}` or `{2}`) in the given [Format Template][FormatTemplate Property] with the specified [Values][Values Property], saving the result as [Text][Text Property]. + +An additional [Format Provider][FormatProvider Property] option can be specified to define the cultural rules used to control the formatting (e.g. `new CultureInfo("en-US")` will apply American English rules to the formatting). + +## Examples + +### Text Values + +This example will format `"Hello {0} {1}"` with `["Mr", "Smith"]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Format Template][FormatTemplate Property] | `($)FormatTemplate`, with value `"Hello {0} {1}"` | `($)FormatTemplate` is a variable of type [String][] | +| [Values][Values Property] | `($)Values`, with value `["Mr", "Smith"]` | `($)Values` is a variable of type [IEnumerable][]<[String][]> | +| [Format Provider][FormatProvider Property] | `($)FormatProvider`, with value `null` | `($)FormatProvider` is a variable of type [IFormatProvider][] | +| [Text][Text Property] | `($)Text`, with no value | `($)Text` is a variable that will be set to a [String][] value | + +#### Result + +Formatting `"Hello {0} {1}"` with `["Mr", "Smith"]` results in the variable `($)Text` being updated to the following: + +```json +"Hello Mr Smith" +``` + +*** + +### Multiple non-text values using American English ("en-US") + +This example will format `"Your latest payment of {0:C2} has been received. You have paid {1:P0} of your total and have {2:C2} outstanding."` with `[99.99, 0.8, 40]`. + +The format parameter `{0:C2}` will display the `99.99` as U.S currency to two decimal places (i.e. `$99.99`): + +* `0` - is replaced by the double value `99.99`. +* `C` - indicates to include the currency symbol for the specified culture (i.e. `$`). +* `2` - indicates to format the double value to two decimal places. + +The format parameter `{1:P0}` will display the `0.8` as a percentage to zero decimal places (i.e. `80 %`): + +* `1` - is replaced by the double value `0.8`. +* `P` - indicates the value should be formatted as a percentage. +* `0` - indicates to format the percentage value to zero decimal places. + +The format parameter `{2:C2}` will display the `40` as U.S currency to two decimal places (i.e. `$40.00`): + +* `2` - is replaced by the double value `40`. +* `C` - indicates to include the currency symbol for the specified culture (i.e. `$`). +* `2` - indicates to format the double value to two decimal places. + +For information about format templates and parameters, please see [Text Formatting][]. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Format Template][FormatTemplate Property] | `($)FormatTemplate`, with value `"Your latest payment of {0:C2} has been received. You have paid {1:P0} of your total and have {2:C2} outstanding."` | `($)FormatTemplate` is a variable of type [String][] | +| [Values][Values Property] | `($)Values`, with value `[99.99, 0.8, 40]` | `($)Values` is a variable of type [IEnumerable][]<[Double][]> | +| [Format Provider][FormatProvider Property] | `($)FormatProvider`, with value `new CultureInfo("en-US")` | `($)FormatProvider` is a variable of type [IFormatProvider][] | +| [Text][Text Property] | `($)Text`, with no value | `($)Text` is a variable that will be set to a [String][] value | + +#### Result + +`"Your latest payment of {0:C2} has been received. You have paid {1:P0} of your total and have {2:C2} outstanding."` with `[99.99, 0.8, 40]` results in the variable `($)Text` being updated to the following: + +```json +"Your latest payment of $99.99 has been received. You have paid 80 % of your total and have $40.00 outstanding." +``` + +*** + +## Properties + +### Format Template + +[Format Template][FormatTemplate Property] can be specified to define the format of the resultant [Text][Text Property]. + +All format parameters (e.g. `{0}` or `{1}` or `{2}`) in [Format Template][FormatTemplate Property] will be replaced with the corresponding value in [Values][Values Property]. Format parameter `{0}` will be replaced with the first value in [Values][Values Property]; `{1}` will be replaced with the second value in [Values][Values Property] etc. + +The number of unique format parameters must be equal to or less than the number of items in [Values][Values Property]. + +The index of each format parameter must be equal to or less than the number of items in [Values][Values Property] - `1`. + +If [Format Template][FormatTemplate Property] is not specified, `null` or empty (i.e. `""`), or does not contain any format parameters, nothing is replaced; [Text][Text Property] will be set to the value of [Format Template][FormatTemplate Property]. + +For information about format templates and parameters, please see [Text Formatting][]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | `@"{0} {1}"` | + +### Values + +The [Values][Values Property] to replace all format parameters with. + +If a value does not have a corresponding format parameter, it is ignored. + +[Values][Values Property] does not have to contain all text values, it can contain any data types. Any non-text values will be converted to their text representation when they are replaced. + +If any value is `null` or empty (i.e. `""`), an empty text (i.e. `""`) will replace the corresponding format parameter. + +For information about how types are converted to their text representation please see [Converting Objects To Text][]. + +| | | +|--------------------|---------------------------| +| Data Type | [IEnumerable][]<[TValue][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | `new List() {0, "1"}` | + +### Format Provider + +[Format Provider][FormatProvider Property] can be specified to define the cultural rules used to control the formatting (e.g. `new CultureInfo("en-US")` will apply American English rules to the formatting.). + +If [Format Provider][FormatProvider Property] is not specified or `null`, `CultureInfo.InvariantCulture` will be used; `CultureInfo.InvariantCulture` is associated with the English language but not with any country/region. For more information, please see [Invariant Culture rules][]. + +| | | +|--------------------|---------------------------| +| Data Type | [IFormatProvider][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Expression][] | +| Default Value | `CultureInfo.InvariantCulture` | + +### Text + +The formatted [Text][Text Property] that results from replacing all format parameters in [Format Template][FormatTemplate Property] with corresponding [Values][Values Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [FormatException][] | Thrown when [Format Template][FormatTemplate Property] contains a format parameter less than zero (e.g. `"Hello {-1}"`) or greater than the count of [Values][Values Property] - `1`. | +| | Thrown when [Format Template][FormatTemplate Property] contains a format parameter that is invalid or not well-formed (e.g. `"Cost is {0:Q2}`, as `"Q"` is not a [valid format parameter][]). | +| [PropertyNullException][] | Thrown when [Values][Values Property] is `null`. | + +## Remarks + +### Text Formatting + +Please note that changes to operating system settings, could result in some of the examples above displaying different results. + +For information about format templates and parameters, please see [Text Formatting][]. + +### Null or Empty Format Template + +If [Format Template][FormatTemplate Property] is not specified, `null` or empty (i.e. `""`), or does not contain any format parameters, nothing is replaced; [Text][Text Property] will be set to the value of [Format Template][FormatTemplate Property]. + +### Null Format Provider + +If [Format Provider][FormatProvider Property] is not specified or `null`, `CultureInfo.InvariantCulture` will be used; `CultureInfo.InvariantCulture` is associated with the English language but not with any country/region. For more information, please see [Invariant Culture rules][]. + +[FormatTemplate Property]: {{< ref "#format-template" >}} +[Values Property]: {{< ref "#values" >}} +[FormatProvider Property]: {{< ref "#format-provider" >}} +[Text Property]: {{< ref "#text" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[FormatException]: {{< url path="MSDocs.DotNet.Api.System.FormatException" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[Converting Objects To Text]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.ConvertingObjectsToText.MainDoc" >}} +[Invariant Culture rules]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Culture.InvariantCulture.MainDoc" >}} +[Text Formatting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Formatting.MainDoc" >}} +[Valid Format Parameter]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Formatting.FormatTemplates" >}} + +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[TValue]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Double]: {{< url path="Cortex.Reference.DataTypes.Numbers.Double.MainDoc" >}} +[IFormatProvider]: {{< url path="Cortex.Reference.DataTypes.Text.IFormatProvider.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/get-text/_index.md b/content/en/docs/2024.11/Reference/Blocks/Text/get-text/_index.md new file mode 100644 index 000000000..c3a9c2e87 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/get-text/_index.md @@ -0,0 +1,5 @@ +--- +title: "Get Text" +linkTitle: "Get Text" +description: "Get text from a given text." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/get-text/get-text-at-beginning-block.md b/content/en/docs/2024.11/Reference/Blocks/Text/get-text/get-text-at-beginning-block.md new file mode 100644 index 000000000..197e0541f --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/get-text/get-text-at-beginning-block.md @@ -0,0 +1,114 @@ +--- +title: "Get Text At Beginning" +linkTitle: "Get Text At Beginning" +description: "Gets a length of text from the beginning of a given text." +--- + +{{< figure src="/blocks/Cortex_Blocks_Text_GetText_GetTextAtBeginningBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Text.GetText.GetTextAtBeginningBlock)

+ +## Description + +Gets a [Length][Length Property] of [text][TextAtBeginning Property] from the beginning of a given [Text][Text Property]. + +## Examples + +### Get a Length of text from the beginning of a given Text + +This example will get the first `3` characters from the beginning of `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"` | `($)Text` is a variable of type [String][] | +| [Length][Length Property] | `($)Length`, with value `3` | `($)Length` is a variable of type [Int32][] | +| [Text At Beginning][TextAtBeginning Property] | `($)TextAtBeginning`, with no value | `($)TextAtBeginning` is a variable that will be set to a [String][] | + +#### Result + +Getting the first `3` characters from the beginning of `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"` results in the variable `($)TextAtBeginning` being updated to the following: + +```json +"ABC" +``` + +*** + +## Properties + +### Text + +The [Text][Text Property] to get the [Text At Beginning][TextAtBeginning Property] from. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +### Length + +The [Length][Length Property] of text to get. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `-1` | + +### Text At Beginning + +The [Length][Length Property] of text at the beginning of [Text][Text Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)TextAtBeginning` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyValueOutOfRangeException][] | Thrown when [Text][Text Property] is `null` or empty (i.e. `""`). | +| | Thrown when [Length][Length Property] is greater than the length of [Text][Text Property]. | + +## Remarks + +### Negative Length + +If [Length][Length Property] is negative, the variable specified in the [Text At Beginning][TextAtBeginning Property] property will be set to the value of [Text][Text Property]. + +### Zero Length + +If [Length][Length Property] is `0`, the variable specified in the [Text At Beginning][TextAtBeginning Property] property will be set to empty (i.e. `""`). + +[Text Property]: {{< ref "#text" >}} +[Length Property]: {{< ref "#length" >}} +[TextAtBeginning Property]: {{< ref "#text-at-beginning" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[PropertyValueOutOfRangeException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/get-text/get-text-at-end-block.md b/content/en/docs/2024.11/Reference/Blocks/Text/get-text/get-text-at-end-block.md new file mode 100644 index 000000000..4f822d37c --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/get-text/get-text-at-end-block.md @@ -0,0 +1,114 @@ +--- +title: "Get Text At End" +linkTitle: "Get Text At End" +description: "Gets a length of text from the end of a given text." +--- + +{{< figure src="/blocks/Cortex_Blocks_Text_GetText_GetTextAtEndBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Text.GetText.GetTextAtEndBlock)

+ +## Description + +Gets a [Length][Length Property] of [text][TextAtEnd Property] from the end of a given [Text][Text Property]. + +## Examples + +### Get a Length of text from the end of a given Text + +This example will get the last `3` characters from the end of `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"` | `($)Text` is a variable of type [String][] | +| [Length][Length Property] | `($)Length`, with value `3` | `($)Length` is a variable of type [Int32][] | +| [Text At End][TextAtEnd Property] | `($)TextAtEnd`, with no value | `($)TextAtEnd` is a variable that will be set to a [String][] | + +#### Result + +Getting the last `3` characters from the end of `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"` results in the variable `($)TextAtEnd` being updated to the following: + +```json +"XYZ" +``` + +*** + +## Properties + +### Text + +The [Text][Text Property] to get the [Text At End][TextAtEnd Property] from. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +### Length + +The [Length][Length Property] of text to get. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `-1` | + +### Text At End + +The [Length][Length Property] of text at the end of [Text][Text Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)TextAtEnd` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyValueOutOfRangeException][] | Thrown when [Text][Text Property] is `null` or empty (i.e. `""`). | +| | Thrown when [Length][Length Property] is greater than the length of [Text][Text Property]. | + +## Remarks + +### Negative Length + +If [Length][Length Property] is negative, the variable specified in the [Text At End][TextAtEnd Property] property will be set to the value of [Text][Text Property]. + +### Zero Length + +If [Length][Length Property] is `0`, the variable specified in the [Text At End][TextAtEnd Property] property will be set to empty (i.e. `""`). + +[Text Property]: {{< ref "#text" >}} +[Length Property]: {{< ref "#length" >}} +[TextAtEnd Property]: {{< ref "#text-at-end" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[PropertyValueOutOfRangeException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/get-text/get-text-at-index-block.md b/content/en/docs/2024.11/Reference/Blocks/Text/get-text/get-text-at-index-block.md new file mode 100644 index 000000000..b4a4b80cb --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/get-text/get-text-at-index-block.md @@ -0,0 +1,136 @@ +--- +title: "Get Text At Index" +linkTitle: "Get Text At Index" +description: "Gets a length of text at the specified index of a given text." +--- + +{{< figure src="/blocks/Cortex_Blocks_Text_GetText_GetTextAtIndexBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Text.GetText.GetTextAtIndexBlock)

+ +## Description + +Gets a [Length][Length Property] of [text][TextAtIndex Property] at the specified [Index][Index Property] of a given [Text][Text Property]. + +## Examples + +### Get a Length of text at the specified Index of a given Text + +This example will get `3` characters at index `3` of `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"` | `($)Text` is a variable of type [String][] | +| [Index][Index Property] | `($)Index`, with value `3` | `($)Index` is a variable of type [Int32][] | +| [Length][Length Property] | `($)Length`, with value `3` | `($)Length` is a variable of type [Int32][] | +| [Text At Index][TextAtIndex Property] | `($)TextAtIndex`, with no value | `($)TextAtIndex` is a variable that will be set to a [String][] | + +#### Result + +`"D"` is at index `3` in `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"`. Therefore, getting `3` characters at (and including) index `3` results in the variable `($)TextAtIndex` being updated to the following: + +```json +"DEF" +``` + +*** + +## Properties + +### Text + +The [Text][Text Property] to get the [Text At Index][TextAtIndex Property] from. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +### Index + +The [Index][Index Property] to get the text from. This is an inclusive index, which means the character at the specified index will be included. + +For information about what an index is, please see [Indexes][]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `0` | + +### Length + +The [Length][Length Property] of text to get. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `-1` | + +### Text At Index + +The [Length][Length Property] of text at the [Index][Index Property] of [Text][Text Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)TextAtIndex` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyValueOutOfRangeException][] | Thrown when [Text][Text Property]is `null` or empty (i.e. `""`). | +| | Thrown when [Index][Index Property] is less than zero or greater than the length of [Text][Text Property] - `1`. | +| | Thrown when [Index][Index Property] + a positive [Length][Length Property] is greater than the length of [Text][Text Property] - `1`. | + +## Remarks + +### Negative Length + +A negative [Length][Length Property] can be used to get all text at and after the [Index][Index Property] of [Text][Text Property]. + +### Zero Length + +If [Length][Length Property] is `0`, the variable specified in the [Text At Index][TextAtIndex Property] property will be set to empty (i.e. `""`). + +### Index is inclusive + +The [Index][Index Property] property is an inclusive [index][Indexes], which means the character at the index will be included in the retrieved [text][TextAtIndex Property]. + +[Text Property]: {{< ref "#text" >}} +[Index Property]: {{< ref "#index" >}} +[Length Property]: {{< ref "#length" >}} +[TextAtIndex Property]: {{< ref "#text-at-index" >}} + +[Indexes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Indexes.MainDoc" >}} +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[PropertyValueOutOfRangeException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/get-text/get-text-before-index-block.md b/content/en/docs/2024.11/Reference/Blocks/Text/get-text/get-text-before-index-block.md new file mode 100644 index 000000000..ec7e18142 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/get-text/get-text-before-index-block.md @@ -0,0 +1,136 @@ +--- +title: "Get Text Before Index" +linkTitle: "Get Text Before Index" +description: "Gets a length of text before the specified index of a given text." +--- + +{{< figure src="/blocks/Cortex_Blocks_Text_GetText_GetTextBeforeIndexBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Text.GetText.GetTextBeforeIndexBlock)

+ +## Description + +Gets a [Length][Length Property] of [text][TextBeforeIndex Property] before the specified [Index][Index Property] of a given [Text][Text Property]. + +## Examples + +### Get a Length of text before the specified Index of a given Text + +This example will get `3` characters before index `3` of `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"` | `($)Text` is a variable of type [String][] | +| [Index][Index Property] | `($)Index`, with value `3` | `($)Index` is a variable of type [Int32][] | +| [Length][Length Property] | `($)Length`, with value `3` | `($)Length` is a variable of type [Int32][] | +| [Text Before Index][TextBeforeIndex Property] | `($)TextBeforeIndex`, with no value | `($)TextBeforeIndex` is a variable that will be set to a [String][] | + +#### Result + +`"D"` is at index `3` in `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"`. Therefore, getting `3` characters before index `3` results in the variable `($)TextBeforeIndex` being updated to the following: + +```json +"ABC" +``` + +*** + +## Properties + +### Text + +The [Text][Text Property] to get the [Text Before Index][TextBeforeIndex Property] from. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +### Index + +The [Index][Index Property] to get the text before. This is an exclusive index, which means the character at the specified index won't be included. + +For information about what an index is, please see [Indexes][]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `0` | + +### Length + +The [Length][Length Property] of text to get. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `-1` | + +### Text Before Index + +The [Length][Length Property] of text before the [Index][Index Property] of [Text][Text Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)TextBeforeIndex` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyValueOutOfRangeException][] | Thrown when [Text][Text Property] is `null` or empty (i.e. `""`). | +| | Thrown when [Index][Index Property] is less than `1` or greater than the length of [Text][Text Property] - `1`. | +| | Thrown when [Index][Index Property] - a positive [Length][Length Property] is less than `1`. | + +## Remarks + +### Negative Length + +A negative [Length][Length Property] can be used to get all text before the [Index][Index Property] of [Text][Text Property]. + +### Zero Length + +If [Length][Length Property] is `0`, the variable specified in the [Text Before Index][TextBeforeIndex Property] property will be set to empty (i.e. `""`). + +### Index is exclusive + +The [Index][Index Property] property is an exclusive [index][Indexes], which means the character at the index will not be included in the retrieved [text][TextBeforeIndex Property]. + +[Text Property]: {{< ref "#text" >}} +[Index Property]: {{< ref "#index" >}} +[Length Property]: {{< ref "#length" >}} +[TextBeforeIndex Property]: {{< ref "#text-before-index" >}} + +[Indexes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Indexes.MainDoc" >}} +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[PropertyValueOutOfRangeException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/get-text/get-text-between-indexes-block.md b/content/en/docs/2024.11/Reference/Blocks/Text/get-text/get-text-between-indexes-block.md new file mode 100644 index 000000000..30d78b689 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/get-text/get-text-between-indexes-block.md @@ -0,0 +1,164 @@ +--- +title: "Get Text Between Indexes" +linkTitle: "Get Text Between Indexes" +description: "Gets text between the specified start index and end index of a given text." +--- + +{{< figure src="/blocks/Cortex_Blocks_Text_GetText_GetTextBetweenIndexesBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Text.GetText.GetTextBetweenIndexesBlock)

+ +## Description + +Gets [text][TextBetweenIndexes Property] between the specified [Start Index][StartIndex Property] and [End Index][EndIndex Property] of a given [Text][Text Property]. + +## Examples + +### Get text between the specified Start Index and End Index of a given Text + +This example will get all characters between start index `0` and end index `3` of `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"` | `($)Text` is a variable of type [String][] | +| [Start Index][StartIndex Property] | `($)StartIndex`, with value `0` | `($)StartIndex` is a variable of type [Int32][] | +| [End Index][EndIndex Property] | `($)EndIndex`, with value `3` | `($)EndIndex` is a variable of type [Int32][] | +| [Text Between Indexes][TextBetweenIndexes Property] | `($)TextBetweenIndexes`, with no value | `($)TextBetweenIndexes` is a variable that will be set to a [String][] | + +#### Result + +`"A"` is at index `0` and `"D"` is at index `3` in `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"`. Therefore, getting all characters between (and including) start index `0` and end index `3` results in the variable `($)TextBetweenIndexes` being updated to the following: + +```json +"ABCD" +``` + +*** + +### Get text where Start Index is greater than End Index + +This example will get all characters between start index `3` and end index `0` of `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"` | `($)Text` is a variable of type [String][] | +| [Start Index][StartIndex Property] | `($)StartIndex`, with value `3` | `($)StartIndex` is a variable of type [Int32][] | +| [End Index][EndIndex Property] | `($)EndIndex`, with value `0` | `($)EndIndex` is a variable of type [Int32][] | +| [Text Between Indexes][TextBetweenIndexes Property] | `($)TextBetweenIndexes`, with no value | `($)TextBetweenIndexes` is a variable that will be set to a [String][] | + +#### Result + +In this example the start index `3` is greater than the end index `0`. When this occurs, the block simply swaps the indexes before it processes the text. + +Therefore, having start index `3` and end index `0` is the same as having start index `0` and end index `3`. + +`"A"` is at index `0` and `"D"` is at index `3` in `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"`. + +Therefore, getting all characters between (and including) start index `3` and end index `0`, or start index `0` and end index `3`, results in the variable `($)TextBetweenIndexes` being updated to the following: + +```json +"ABCD" +``` + +*** + +## Properties + +### Text + +The [Text][Text Property] to get the [Text Between Indexes][TextBetweenIndexes Property] from. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +### Start Index + +The [Start Index][StartIndex Property] used to get the text. This is an inclusive index, which means the character at the specified index will be included. + +For information about what an index is, please see [Indexes][]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `0` | + +### End Index + +The [End Index][EndIndex Property] used to get the text. This is an inclusive index, which means the character at the specified index will be included. + +For information about what an index is, please see [Indexes][]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `0` | + +### Text Between Indexes + +The text between (and including) the [Start Index][StartIndex Property] and [End Index][EndIndex Property] of [Text][Text Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)TextBetweenIndexes` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyValueOutOfRangeException][] | Thrown when [Text][Text Property] is `null` or empty (i.e. `""`). | +| | Thrown when [Start Index][StartIndex Property] or [End Index][EndIndex Property] is less than zero or greater than the length of [Text][Text Property] - `1`. | + +## Remarks + +### Start Index and End Index are inclusive + +The [Start Index][StartIndex Property] and [End Index][EndIndex Property] properties are both inclusive [indexes][], which means the characters at those indexes will be included in the retrieved [text][TextBetweenIndexes Property]. + +### Start Index greater than End Index + +[Start Index][StartIndex Property] can be greater than [End Index][EndIndex Property]. If this is the case, the values of the indexes will be swapped. See [Example][StartIndexGreaterThanEndIndex Example] above. + +[Text Property]: {{< ref "#text" >}} +[StartIndex Property]: {{< ref "#start-index" >}} +[EndIndex Property]: {{< ref "#end-index" >}} +[TextBetweenIndexes Property]: {{< ref "#text-between-indexes" >}} + +[StartIndexGreaterThanEndIndex Example]: {{< ref "#get-text-where-start-index-is-greater-than-end-index" >}} + +[Indexes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Indexes.MainDoc" >}} +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[PropertyValueOutOfRangeException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/is-text/_index.md b/content/en/docs/2024.11/Reference/Blocks/Text/is-text/_index.md new file mode 100644 index 000000000..1b1f9d50d --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/is-text/_index.md @@ -0,0 +1,5 @@ +--- +title: "Is Text" +linkTitle: "Is Text" +description: "Check if text is equal to another text, `null`, empty (i.e. `\"\"`), or whitespace (e.g. `\" \"`)." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/is-text/is-text-empty-block.md b/content/en/docs/2024.11/Reference/Blocks/Text/is-text/is-text-empty-block.md new file mode 100644 index 000000000..35898d82e --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/is-text/is-text-empty-block.md @@ -0,0 +1,165 @@ +--- +title: "Is Text Empty" +linkTitle: "Is Text Empty" +description: "Checks if text is empty (i.e. `\"\"`)." +--- + +{{< figure src="/blocks/Cortex_Blocks_Text_IsText_IsTextEmptyBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Text.IsText.IsTextEmptyBlock)

+ +## Description + +Checks if [Text][Text Property] is empty (i.e. `""`) . + +For information about empty, please see [Empty Text and Whitespace][]. + +## Examples + +### Text is empty + +This example will check if `""` is empty (i.e. `""`). + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `""` | `($)Text` is a variable of type [String][] | +| [Text Is Empty][TextIsEmpty Property] | `($)TextIsEmpty`, with no value | `($)TextIsEmpty` is a variable that will be set to a [Boolean][] value | + +#### Result + +`""` is empty (i.e. `""`), resulting in the variable `($)TextIsEmpty` being updated to the following: + +```json +true +``` + +*** + +### Text is null + +This example will check if `null` is empty (i.e. `""`). + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `null` | `($)Text` is a variable of type [String][] | +| [Text Is Empty][TextIsEmpty Property] | `($)TextIsEmpty`, with no value | `($)TextIsEmpty` is a variable that will be set to a [Boolean][] value | + +#### Result + +`null` is not empty (i.e. `""`), resulting in the variable `($)TextIsEmpty` being updated to the following: + +```json +false +``` + +*** + +### Text is whitespace + +This example will check if `" "` is empty (i.e. `""`). + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `" "` | `($)Text` is a variable of type [String][] | +| [Text Is Empty][TextIsEmpty Property] | `($)TextIsEmpty`, with no value | `($)TextIsEmpty` is a variable that will be set to a [Boolean][] value | + +#### Result + +`" "` is not empty (i.e. `""`), resulting in the variable `($)TextIsEmpty` being updated to the following: + +```json +false +``` + +*** + +### Text is not empty + +This example will check if `"The quick brown fox jumps over the lazy dog"` is empty (i.e. `""`). + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog"` | `($)Text` is a variable of type [String][] | +| [Text Is Empty][TextIsEmpty Property] | `($)TextIsEmpty`, with no value | `($)TextIsEmpty` is a variable that will be set to a [Boolean][] value | + +#### Result + +`"The quick brown fox jumps over the lazy dog"` is not empty (i.e. `""`), resulting in the variable `($)TextIsEmpty` being updated to the following: + +```json +false +``` + +*** + +## Properties + +### Text + +The [Text][Text Property] to check is empty (i.e. `""`). + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +### Text Is Empty + +The result of the is empty check. + +If the [Text][Text Property] is empty (i.e. `""`), the specified variable will be set to `true`, otherwise it will be set to `false`. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)TextIsEmpty` with no value | + +## Exceptions + +No exceptions are thrown by the block. + +## Remarks + +### Null Text + +If [Text][Text Property] is `null` the variable specified in the [Text Is Empty][TextIsEmpty Property] property will be set to `false`. See [Example][NullText Example] above. + +### Whitespace Text + +If [Text][Text Property] is whitespace (e.g. `" "`) the variable specified in the [Text Is Empty][TextIsEmpty Property] property will be set to `false`. See [Example][WhitespaceText Example] above. + +[Text Property]: {{< ref "#text" >}} +[TextIsEmpty Property]: {{< ref "#text-is-empty-1" >}} + +[NullText Example]: {{< ref "#text-is-null" >}} +[WhitespaceText Example]: {{< ref "#text-is-whitespace" >}} + +[Empty Text and Whitespace]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.EmptyTextAndWhitespace.MainDoc" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/is-text/is-text-empty-or-whitespace-block.md b/content/en/docs/2024.11/Reference/Blocks/Text/is-text/is-text-empty-or-whitespace-block.md new file mode 100644 index 000000000..0e23dcfa8 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/is-text/is-text-empty-or-whitespace-block.md @@ -0,0 +1,160 @@ +--- +title: "Is Text Empty Or Whitespace" +linkTitle: "Is Text Empty Or Whitespace" +description: "Checks if text is empty (i.e. `\"\"`) or whitespace (i.e. `space`, `tab`, `carriage return`, `line feed` characters)." +--- + +{{< figure src="/blocks/Cortex_Blocks_Text_IsText_IsTextEmptyOrWhitespaceBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Text.IsText.IsTextEmptyOrWhitespaceBlock)

+ +## Description + +Checks if [Text][Text Property] is empty (i.e. `""`) or whitespace (i.e. `space`, `tab`, `carriage return`, `line feed` characters). + +For information about empty and whitespace, please see [Empty Text and Whitespace][]. + +## Examples + +### Text is empty + +This example will check if `""` is empty (i.e. `""`) or whitespace (i.e. `space`, `tab`, `carriage return`, `line feed` characters). + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `""` | `($)Text` is a variable of type [String][] | +| [Text Is Empty Or Whitespace][TextIsEmptyOrWhitespace Property] | `($)TextIsEmptyOrWhitespace`, with no value | `($)TextIsEmptyOrWhitespace` is a variable that will be set to a [Boolean][] value | + +#### Result + +`""` is empty (i.e. `""`), resulting in the variable `($)TextIsEmptyOrWhitespace` being updated to the following: + +```json +true +``` + +*** + +### Text is whitespace + +This example will check if `" "` is empty (i.e. `""`) or whitespace (i.e. `space`, `tab`, `carriage return`, `line feed` characters). + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `" "` | `($)Text` is a variable of type [String][] | +| [Text Is Empty Or Whitespace][TextIsEmptyOrWhitespace Property] | `($)TextIsEmptyOrWhitespace`, with no value | `($)TextIsEmptyOrWhitespace` is a variable that will be set to a [Boolean][] value | + +#### Result + +`" "` is whitespace, resulting in the variable `($)TextIsEmptyOrWhitespace` being updated to the following: + +```json +true +``` + +*** + +### Text is null + +This example will check if `null` is empty (i.e. `""`) or whitespace (i.e. `space`, `tab`, `carriage return`, `line feed` characters). + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `null` | `($)Text` is a variable of type [String][] | +| [Text Is Empty Or Whitespace][TextIsEmptyOrWhitespace Property] | `($)TextIsEmptyOrWhitespace`, with no value | `($)TextIsEmptyOrWhitespace` is a variable that will be set to a [Boolean][] value | + +#### Result + +`null` is not empty (i.e. `""`) or whitespace (i.e. `space`, `tab`, `carriage return`, `line feed` characters), resulting in the variable `($)TextIsEmptyOrWhitespace` being updated to the following: + +```json +false +``` + +*** + +### Text is not empty or whitespace + +This example will check if `"The quick brown fox jumps over the lazy dog"` is empty (i.e. `""`) or whitespace (i.e. `space`, `tab`, `carriage return`, `line feed` characters). + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog"` | `($)Text` is a variable of type [String][] | +| [Text Is Empty Or Whitespace][TextIsEmptyOrWhitespace Property] | `($)TextIsEmptyOrWhitespace`, with no value | `($)TextIsEmptyOrWhitespace` is a variable that will be set to a [Boolean][] value | + +#### Result + +`"The quick brown fox jumps over the lazy dog"` is not empty (i.e. `""`) or whitespace (i.e. `space`, `tab`, `carriage return`, `line feed` characters), resulting in the variable `($)TextIsEmptyOrWhitespace` being updated to the following: + +```json +false +``` + +*** + +## Properties + +### Text + +The [Text][Text Property] to check is empty (i.e. `""`) or whitespace (i.e. `space`, `tab`, `carriage return`, `line feed` characters). + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +### Text Is Empty Or Whitespace + +The result of the is empty or whitespace check. + +If the [Text][Text Property] is empty (i.e. `""`) or whitespace (i.e. `space`, `tab`, `carriage return`, `line feed` characters), the specified variable will be set to `true`, otherwise it will be set to `false`. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)TextIsEmptyOrWhitespace` with no value | + +## Exceptions + +No exceptions are thrown by the block. + +## Remarks + +### Null Text + +If [Text][Text Property] is `null` the variable specified in the [Text Is Empty Or Whitespace][TextIsEmptyOrWhitespace Property] property will be set to `false`. See [Example][NullText Example] above. + +[Text Property]: {{< ref "#text" >}} +[TextIsEmptyOrWhitespace Property]: {{< ref "#text-is-empty-or-whitespace" >}} + +[NullText Example]: {{< ref "#text-is-null" >}} + +[Empty Text and Whitespace]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.EmptyTextAndWhitespace.MainDoc" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/is-text/is-text-equal-block.md b/content/en/docs/2024.11/Reference/Blocks/Text/is-text/is-text-equal-block.md new file mode 100644 index 000000000..9474ebb9f --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/is-text/is-text-equal-block.md @@ -0,0 +1,189 @@ +--- +title: "Is Text Equal" +linkTitle: "Is Text Equal" +description: "Checks if a text is equal to another text." +--- + +{{< figure src="/blocks/Cortex_Blocks_Text_IsText_IsTextEqualBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Text.IsText.IsTextEqualBlock)

+ +## Description + +Checks if [Text][Text Property] is equal to [Text To Compare][TextToCompare Property]. + +## Examples + +### Text is equal to Text To Compare (Ordinal) + +This example will check if `"The quick brown fox jumps over the lazy dog"` is equal to `"The quick brown fox jumps over the lazy dog"`. + +It performs a [case-sensitive, culture-insensitive][Ordinal] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog"` | `($)Text` is a variable of type [String][] | +| [Text To Compare][TextToCompare Property] | `($)TextToCompare`, with value `"The quick brown fox jumps over the lazy dog"` | `($)TextToCompare` is a variable of type [String][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Text Is Equal][TextIsEqual Property] | `($)TextIsEqual`, with no value | `($)TextIsEqual` is a variable that will be set to a [Boolean][] value | + +#### Result + +As this example is performing a [case-sensitive, culture-insensitive][Ordinal] comparison of text, `"The quick brown fox jumps over the lazy dog"` is equal to `"The quick brown fox jumps over the lazy dog"`, as they match exactly, including casing. Therefore, the variable `($)TextIsEqual` will be updated to the following: + +```json +true +``` + +*** + +### Text is not equal to Text To Compare (Ordinal) + +This example will check if `"The quick brown fox jumps over the lazy dog"` is equal to `"the quick brown fox jumps over the lazy dog"`. + +It performs a [case-sensitive, culture-insensitive][Ordinal] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog"` | `($)Text` is a variable of type [String][] | +| [Text To Compare][TextToCompare Property] | `($)TextToCompare`, with value `"the quick brown fox jumps over the lazy dog"` | `($)TextToCompare` is a variable of type [String][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.Ordinal` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Text Is Equal][TextIsEqual Property] | `($)TextIsEqual`, with no value | `($)TextIsEqual` is a variable that will be set to a [Boolean][] value | + +#### Result + +As this example is performing a [case-sensitive, culture-insensitive][Ordinal] comparison of text, `"The quick brown fox jumps over the lazy dog"` is not equal to `"the quick brown fox jumps over the lazy dog"`, as whilst the characters match exactly, the casing of the first `"T"` differs. Therefore, the variable `($)TextIsEqual` will be updated to the following: + +```json +false +``` + +*** + +### Text is equal to Text To Compare (Ordinal Ignore Case) + +This example will check if `"The quick brown fox jumps over the lazy dog"` is equal to `"the quick brown fox jumps over the lazy dog"`. + +It performs a [case-insensitive, culture-insensitive][OrdinalIgnoreCase] comparison of text. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog"` | `($)Text` is a variable of type [String][] | +| [Text To Compare][TextToCompare Property] | `($)TextToCompare`, with value `"the quick brown fox jumps over the lazy dog"` | `($)TextToCompare` is a variable of type [String][] | +| [Comparison Type][ComparisonType Property] | `($)ComparisonType`, with value `StringComparison.OrdinalIgnoreCase` | `($)ComparisonType` is a variable of type [StringComparison][] | +| [Text Is Equal][TextIsEqual Property] | `($)TextIsEqual`, with no value | `($)TextIsEqual` is a variable that will be set to a [Boolean][] value | + +#### Result + +As this example is performing a [case-insensitive, culture-insensitive][OrdinalIgnoreCase] comparison of text, `"The quick brown fox jumps over the lazy dog"` is equal to `"the quick brown fox jumps over the lazy dog"`, as the characters match exactly, and casing is not considered. Therefore, the variable `($)TextIsEqual` will be updated to the following: + +```json +true +``` + +*** + +## Properties + +### Text + +The [Text][Text Property] to check is equal to [Text To Compare][TextToCompare Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +### Text To Compare + +The [Text To Compare][TextToCompare Property] if [Text][Text Property] is equal to. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | `$@""` | + +### Comparison Type + +The [Comparison Type][ComparisonType Property] specifying the rules used to compare if [Text][Text Property] is equal to [Text To Compare][TextToCompare Property]. + +For information about the [supported values][ComparisonTypes] for the [Comparison Type][ComparisonType Property] property and examples of how it is determined whether two pieces of text match, please see [Equality][]. + +| | | +|--------------------|---------------------------| +| Data Type | [StringComparison][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | `Ordinal` | + +### Text Is Equal + +[Boolean][] indicating whether [Text][Text Property] is equal to [Text To Compare][TextToCompare Property]. + +If they are equal the specified variable will be set to `true`, otherwise it will be set to `false`. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)TextIsEqual` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [ArgumentException][] | Thrown when [Comparison Type][ComparisonType Property] is not one of the specified [StringComparison][] types (e.g. `(StringComparison)10`). | + +## Remarks + +### Comparison Types + +For information about the [supported values][ComparisonTypes] for the [Comparison Type][ComparisonType Property] property and examples of how it is determined whether two pieces of text match, please see [Equality][]. + +### Null vs empty + +If [Text][Text Property] is `null` and [Text To Compare][TextToCompare Property] is empty (i.e. `""`), or vice versa, the variable specified in the [Text Is Equal][TextIsEqual Property] property is set to `false`, as `null` and `""` are not equal. + +[Text Property]: {{< ref "#text" >}} +[TextToCompare Property]: {{< ref "#text-to-compare" >}} +[ComparisonType Property]: {{< ref "#comparison-type" >}} +[TextIsEqual Property]: {{< ref "#text-is-equal" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.MainDoc" >}} +[ComparisonTypes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.MainDoc" >}} +[Ordinal]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.Ordinal" >}} +[OrdinalIgnoreCase]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.OrdinalIgnoreCase" >}} + +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[StringComparison]: {{< url path="Cortex.Reference.DataTypes.Text.StringComparison.MainDoc" >}} + +[ArgumentException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentException" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/is-text/is-text-null-block.md b/content/en/docs/2024.11/Reference/Blocks/Text/is-text/is-text-null-block.md new file mode 100644 index 000000000..f4a7bb7dc --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/is-text/is-text-null-block.md @@ -0,0 +1,165 @@ +--- +title: "Is Text Null" +linkTitle: "Is Text Null" +description: "Checks if text is `null`." +--- + +{{< figure src="/blocks/Cortex_Blocks_Text_IsText_IsTextNullBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Text.IsText.IsTextNullBlock)

+ +## Description + +Checks if [Text][Text Property] is `null`. + +For information about `null`, please see [Null and Nullable Types][]. + +## Examples + +### Text is null + +This example will check if `null` is `null`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `null` | `($)Text` is a variable of type [String][] | +| [Text Is Null][TextIsNull Property] | `($)TextIsNull`, with no value | `($)TextIsNull` is a variable that will be set to a [Boolean][] value | + +#### Result + +`null` is `null`, resulting in the variable `($)TextIsNull` being updated to the following: + +```json +true +``` + +*** + +### Text is empty + +This example will check if empty (i.e. `""`) is `null`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `""` | `($)Text` is a variable of type [String][] | +| [Text Is Null][TextIsNull Property] | `($)TextIsNull`, with no value | `($)TextIsNull` is a variable that will be set to a [Boolean][] value | + +#### Result + +Empty (i.e. `""`) is not `null`, resulting in the variable `($)TextIsNull` being updated to the following: + +```json +false +``` + +*** + +### Text is whitespace + +This example will check if `" "` is `null`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `" "` | `($)Text` is a variable of type [String][] | +| [Text Is Null][TextIsNull Property] | `($)TextIsNull`, with no value | `($)TextIsNull` is a variable that will be set to a [Boolean][] value | + +#### Result + +`" "` is not `null`, resulting in the variable `($)TextIsNull` being updated to the following: + +```json +false +``` + +*** + +### Text is not null + +This example will check if `"The quick brown fox jumps over the lazy dog"` is `null`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog"` | `($)Text` is a variable of type [String][] | +| [Text Is Null][TextIsNull Property] | `($)TextIsNull`, with no value | `($)TextIsNull` is a variable that will be set to a [Boolean][] value | + +#### Result + +`"The quick brown fox jumps over the lazy dog"` is not `null`, resulting in the variable `($)TextIsNull` being updated to the following: + +```json +false +``` + +*** + +## Properties + +### Text + +The [Text][Text Property] to check is `null`. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +### Text Is Null + +The result of the is null check. + +If the [Text][Text Property] is `null`, the specified variable will be set to `true`, otherwise it will be set to `false`. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)TextIsNull` with no value | + +## Exceptions + +No exceptions are thrown by the block. + +## Remarks + +### Empty Text + +If [Text][Text Property] is empty (i.e.. `""`) the variable specified in the [Text Is Null][TextIsNull Property] property will be set to `false`. See [Example][EmptyText Example] above. + +### Whitespace Text + +If [Text][Text Property] is whitespace (e.g. `" "`) the variable specified in the [Text Is Null][TextIsNull Property] property will be set to `false`. See [Example][WhitespaceText Example] above. + +[Text Property]: {{< ref "#text" >}} +[TextIsNull Property]: {{< ref "#text-is-null-1" >}} + +[EmptyText Example]: {{< ref "#text-is-empty" >}} +[WhitespaceText Example]: {{< ref "#text-is-whitespace" >}} + +[Null and Nullable Types]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.NullAndNullableTypes.MainDoc" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/is-text/is-text-null-empty-or-whitespace-block.md b/content/en/docs/2024.11/Reference/Blocks/Text/is-text/is-text-null-empty-or-whitespace-block.md new file mode 100644 index 000000000..e53183a46 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/is-text/is-text-null-empty-or-whitespace-block.md @@ -0,0 +1,160 @@ +--- +title: "Is Text Null, Empty Or Whitespace" +linkTitle: "Is Text Null, Empty Or Whitespace" +description: "Checks if text is `null`, empty (i.e. `\"\"`) or whitespace (i.e. `space`, `tab`, `carriage return`, `line feed` characters)." +--- + +{{< figure src="/blocks/Cortex_Blocks_Text_IsText_IsTextNullEmptyOrWhitespaceBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Text.IsText.IsTextNullEmptyOrWhitespaceBlock)

+ +## Description + +Checks if [Text][Text Property] is `null`, empty (i.e. `""`) or whitespace (i.e. `space`, `tab`, `carriage return`, `line feed` characters). + +For information about `null`, please see [Null and Nullable Types][]. + +For information about empty and whitespace, please see [Empty Text and Whitespace][]. + +## Examples + +### Text is null + +This example will check if `null` is `null`, empty (i.e. `""`) or whitespace (i.e. `space`, `tab`, `carriage return`, `line feed` characters). + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `null` | `($)Text` is a variable of type [String][] | +| [Text Is Null Empty Or Whitespace][TextIsNullEmptyOrWhitespace Property] | `($)TextIsNullEmptyOrWhitespace`, with no value | `($)TextIsNullEmptyOrWhitespace` is a variable that will be set to a [Boolean][] value | + +#### Result + +`null` is `null`, resulting in the variable `($)TextIsNullEmptyOrWhitespace` being updated to the following: + +```json +true +``` + +*** + +### Text is empty + +This example will check if `""` is `null`, empty (i.e. `""`) or whitespace (i.e. `space`, `tab`, `carriage return`, `line feed` characters). + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `""` | `($)Text` is a variable of type [String][] | +| [Text Is Null Empty Or Whitespace][TextIsNullEmptyOrWhitespace Property] | `($)TextIsNullEmptyOrWhitespace`, with no value | `($)TextIsNullEmptyOrWhitespace` is a variable that will be set to a [Boolean][] value | + +#### Result + +`""` is empty (i.e. `""`), resulting in the variable `($)TextIsNullEmptyOrWhitespace` being updated to the following: + +```json +true +``` + +*** + +### Text is whitespace + +This example will check if `" "` is `null`, empty (i.e. `""`) or whitespace (i.e. `space`, `tab`, `carriage return`, `line feed` characters). + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `" "` | `($)Text` is a variable of type [String][] | +| [Text Is Null Empty Or Whitespace][TextIsNullEmptyOrWhitespace Property] | `($)TextIsNullEmptyOrWhitespace`, with no value | `($)TextIsNullEmptyOrWhitespace` is a variable that will be set to a [Boolean][] value | + +#### Result + +`" "` is whitespace (i.e. `space`, `tab`, `carriage return`, `line feed` characters), resulting in the variable `($)TextIsNullEmptyOrWhitespace` being updated to the following: + +```json +true +``` + +*** + +### Text is not null, empty or whitespace + +This example will check if `"The quick brown fox jumps over the lazy dog"` is `null`, empty (i.e. `""`) or whitespace (i.e. `space`, `tab`, `carriage return`, `line feed` characters). + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog"` | `($)Text` is a variable of type [String][] | +| [Text Is Null Empty Or Whitespace][TextIsNullEmptyOrWhitespace Property] | `($)TextIsNullEmptyOrWhitespace`, with no value | `($)TextIsNullEmptyOrWhitespace` is a variable that will be set to a [Boolean][] value | + +#### Result + +`"The quick brown fox jumps over the lazy dog"` is not `null`, empty (i.e. `""`) or whitespace (i.e. `space`, `tab`, `carriage return`, `line feed` characters), resulting in the variable `($)TextIsNullEmptyOrWhitespace` being updated to the following: + +```json +false +``` + +*** + +## Properties + +### Text + +The [Text][Text Property] to check is `null`, empty (i.e. `""`) or whitespace (i.e. `space`, `tab`, `carriage return`, `line feed` characters). + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +### Text Is Null Empty Or Whitespace + +The result of the is null, empty or whitespace check. + +If the [Text][Text Property] is `null`, empty (i.e. `""`) or whitespace (i.e. `space`, `tab`, `carriage return`, `line feed` characters), the specified variable will be set to `true`, otherwise it will be set to `false`. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)TextIsNullEmptyOrWhitespace` with no value | + +## Exceptions + +No exceptions are thrown by the block. + +## Remarks + +None + +[Text Property]: {{< ref "#text" >}} +[TextIsNullEmptyOrWhitespace Property]: {{< ref "#text-is-null-empty-or-whitespace" >}} + +[Null and Nullable Types]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.NullAndNullableTypes.MainDoc" >}} + +[Empty Text and Whitespace]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.EmptyTextAndWhitespace.MainDoc" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/is-text/is-text-null-or-empty-block.md b/content/en/docs/2024.11/Reference/Blocks/Text/is-text/is-text-null-or-empty-block.md new file mode 100644 index 000000000..2228fbcfe --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/is-text/is-text-null-or-empty-block.md @@ -0,0 +1,164 @@ +--- +title: "Is Text Null Or Empty" +linkTitle: "Is Text Null Or Empty" +description: "Checks if text is `null` or empty (i.e. `\"\"`)." +--- + +{{< figure src="/blocks/Cortex_Blocks_Text_IsText_IsTextNullOrEmptyBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Text.IsText.IsTextNullOrEmptyBlock)

+ +## Description + +Checks if [Text][Text Property] is `null` or empty (i.e. `""`). + +For information about `null`, please see [Null and Nullable Types][]. + +For information about empty, please see [Empty Text and Whitespace][]. + +## Examples + +### Text is null + +This example will check if `null` is `null` or empty (i.e. `""`). + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `null` | `($)Text` is a variable of type [String][] | +| [Text Is Null Or Empty][TextIsNullOrEmpty Property] | `($)TextIsNullOrEmpty`, with no value | `($)TextIsNullOrEmpty` is a variable that will be set to a [Boolean][] value | + +#### Result + +`null` is `null`, resulting in the variable `($)TextIsNullOrEmpty` being updated to the following: + +```json +true +``` + +*** + +### Text is empty + +This example will check if `""` is `null` or empty (i.e. `""`). + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `""` | `($)Text` is a variable of type [String][] | +| [Text Is Null Or Empty][TextIsNullOrEmpty Property] | `($)TextIsNullOrEmpty`, with no value | `($)TextIsNullOrEmpty` is a variable that will be set to a [Boolean][] value | + +#### Result + +`""` is empty (i.e. `""`), resulting in the variable `($)TextIsNullOrEmpty` being updated to the following: + +```json +true +``` + +*** + +### Text is whitespace + +This example will check if `" "` is `null` or empty (i.e. `""`). + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `" "` | `($)Text` is a variable of type [String][] | +| [Text Is Null Or Empty][TextIsNullOrEmpty Property] | `($)TextIsNullOrEmpty`, with no value | `($)TextIsNullOrEmpty` is a variable that will be set to a [Boolean][] value | + +#### Result + +`" "` is not `null` or empty (i.e. `""`), resulting in the variable `($)TextIsNullOrEmpty` being updated to the following: + +```json +false +``` + +*** + +### Text is not null or empty + +This example will check if `"The quick brown fox jumps over the lazy dog"` is `null` or empty (i.e. `""`). + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"The quick brown fox jumps over the lazy dog"` | `($)Text` is a variable of type [String][] | +| [Text Is Null Or Empty][TextIsNullOrEmpty Property] | `($)TextIsNullOrEmpty`, with no value | `($)TextIsNullOrEmpty` is a variable that will be set to a [Boolean][] value | + +#### Result + +`"The quick brown fox jumps over the lazy dog"` is not `null` or empty (i.e. `""`), resulting in the variable `($)TextIsNullOrEmpty` being updated to the following: + +```json +false +``` + +*** + +## Properties + +### Text + +The [Text][Text Property] to check is `null` or empty (i.e. `""`). + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +### Text Is Null Or Empty + +The result of the is null or empty check. + +If the [Text][Text Property] is `null` or empty (i.e. `""`), the specified variable will be set to `true`, otherwise it will be set to `false`. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)TextIsNullOrEmpty` with no value | + +## Exceptions + +No exceptions are thrown by the block. + +## Remarks + +### Whitespace Text + +If [Text][Text Property] is whitespace (e.g. `" "`) the variable specified in the [Text Is Null Or Empty][TextIsNullOrEmpty Property] property will be set to `false`. See [Example][WhitespaceText Example] above. + +[Text Property]: {{< ref "#text" >}} +[TextIsNullOrEmpty Property]: {{< ref "#text-is-null-or-empty" >}} + +[WhitespaceText Example]: {{< ref "#text-is-whitespace" >}} + +[Null and Nullable Types]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.NullAndNullableTypes.MainDoc" >}} + +[Empty Text and Whitespace]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.EmptyTextAndWhitespace.MainDoc" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/join-text/_index.md b/content/en/docs/2024.11/Reference/Blocks/Text/join-text/_index.md new file mode 100644 index 000000000..60c7d1193 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/join-text/_index.md @@ -0,0 +1,5 @@ +--- +title: "Join Text" +linkTitle: "Join Text" +description: "Join a set of values together (using a separator) to create text." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/join-text/join-text-block-1.md b/content/en/docs/2024.11/Reference/Blocks/Text/join-text/join-text-block-1.md new file mode 100644 index 000000000..8296d6f30 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/join-text/join-text-block-1.md @@ -0,0 +1,154 @@ +--- +title: "Join Text" +linkTitle: "Join Text" +description: "Joins a set of values together as text, using the given separator between each value." +--- + +{{< figure src="/blocks/Cortex_Blocks_Text_JoinText_JoinTextBlock_1.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Text.JoinText.JoinTextBlock`1)

+ +## Description + +Joins a set of [Values][Values Property] together as [Text][Text Property], using the given [Separator][Separator Property] between each value. + +## Examples + +### Join a set of String Values together with a pipe Separator + +This example will join the set of [String][] values, `["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"]`, together with a pipe separator (i.e. `"|"`). + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Values][Values Property] | `($)Values`, with value `["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"]` | `($)Values` is a variable of type [IEnumerable][]<[String][]> | +| [Separator][Separator Property] | `($)Separator`, with value `"\|"` | `($)Separator` is a variable of type [String][] | +| [Text][Text Property] | `($)Text`, with no value | `($)Text` is a variable that will be set to a [String][] | + +#### Result + +Joining `["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"]` together as text with a pipe separator (i.e. `"|"`), results in the variable `($)Text` being updated to the following: + +```json +"Sunday|Monday|Tuesday|Wednesday|Thursday|Friday|Saturday" +``` + +*** + +### Join a set of Int32 Values together with a comma Separator + +This example will join the set of [Int32][] values, `[1, 2, 3]`, together with a comma separator (i.e. `","`). + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Values][Values Property] | `($)Values`, with value `[1, 2, 3]` | `($)Values` is a variable of type [IEnumerable][]<[Int32][]> | +| [Separator][Separator Property] | `($)Separator`, with value `","` | `($)Separator` is a variable of type [String][] | +| [Text][Text Property] | `($)Text`, with no value | `($)Text` is a variable that will be set to a [String][] | + +#### Result + +Each [Int32][] value will be converted to its text representation, by calling its [ToString][] method (i.e. `value.ToString()`). + +Joining `[1, 2, 3]` together as text with a comma separator (i.e. `","`), results in the variable `($)Text` being updated to the following: + +```json +"1,2,3" +``` + +*** + +## Properties + +### Values + +The set of [Values][Values Property] to join together as [Text][Text Property]. + +[Values][Values Property] will be joined together in the order they are defined. + +[Values][Values Property] can be any [IEnumerable][]<[TValue][]>, where [TValue][] represents the type of values. + +Each non-text value will be converted to its text representation, by calling its [ToString][] method (i.e. `value.ToString()`). + +| | | +|--------------------|---------------------------| +| Data Type | [IEnumerable][]<[TValue][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Values` with no value | + +### Separator + +The text to use as a [Separator][Separator Property] between each of the [Values][Values Property]. + +[Separator][Separator Property] can contain zero or more characters. + +The [Separator][Separator Property] is only included in the resultant [Text][Text Property] if [Values][Values Property] has more than `1` item. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `,` | + +### Text + +The resultant [Text][Text Property] containing the specified [Values][Values Property] converted to their text representation and separated by the given [Separator][Separator Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyNullException][] | Thrown when [Values][Values Property] is `null`. | +| [OutOfMemoryException][] | Thrown when the length of the resultant [Text][Text Property] is longer than the maximum allowed length (`2,147,483,647`). | + +## Remarks + +### Null or empty Separator + +If [Separator][Separator Property] is `null` or empty (i.e. `""`), an empty text (i.e. `""`) will be used as the separator. + +### Null or empty Value in Values + +If any value in [Values][Values Property] is `null` or empty (i.e. `""`), an empty text (i.e. `""`) will be used as the value. + +[Values Property]: {{< ref "#values" >}} +[Separator Property]: {{< ref "#separator" >}} +[Text Property]: {{< ref "#text" >}} + +[TValue]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[OutOfMemoryException]: {{< url path="MSDocs.DotNet.Api.System.OutOfMemoryException" >}} + +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[ToString]: {{< url path="MSDocs.DotNet.Api.System.Object.ToString" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/remove-text/_index.md b/content/en/docs/2024.11/Reference/Blocks/Text/remove-text/_index.md new file mode 100644 index 000000000..73ba8925c --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/remove-text/_index.md @@ -0,0 +1,5 @@ +--- +title: "Remove Text" +linkTitle: "Remove Text" +description: "Remove a length of text from a given text." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/remove-text/remove-text-at-beginning-block.md b/content/en/docs/2024.11/Reference/Blocks/Text/remove-text/remove-text-at-beginning-block.md new file mode 100644 index 000000000..faad3bab9 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/remove-text/remove-text-at-beginning-block.md @@ -0,0 +1,106 @@ +--- +title: "Remove Text At Beginning" +linkTitle: "Remove Text At Beginning" +description: "Removes a length of text from the beginning of a given text." +--- + +{{< figure src="/blocks/Cortex_Blocks_Text_RemoveText_RemoveTextAtBeginningBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Text.RemoveText.RemoveTextAtBeginningBlock)

+ +## Description + +Removes a [Length][Length Property] of text from the beginning of a given [Text][Text Property]. + +## Examples + +### Remove a Length of text from the beginning of a given Text + +This example will remove the first `3` characters from the beginning of `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"` | `($)Text` is a variable of type [String][] | +| [Length][Length Property] | `($)Length`, with value `3` | `($)Length` is a variable of type [Int32][] | + +#### Result + +Removing the first `3` characters from the beginning of `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"` results in the variable `($)Text` being updated to the following: + +```json +"DEFGHIJKLMNOPQRSTUVWXYZ" +``` + +*** + +## Properties + +### Text + +The [Text][Text Property] to remove the [Length][Length Property] of text from. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +### Length + +The [Length][Length Property] of text to remove. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `-1` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyValueOutOfRangeException][] | Thrown when [Text][Text Property] is `null` or empty (i.e. `""`). | +| | Thrown when [Length][Length Property] is greater than the length of [Text][Text Property]. | + +## Remarks + +### Negative Length + +If [Length][Length Property] is negative, all text will be removed and the variable specified in the [Text][Text Property] property will be set to empty (i.e. `""`). + +### Zero Length + +If [Length][Length Property] is `0`, no text will be removed and the variable specified in the [Text][Text Property] property will remain unchanged. + +[Text Property]: {{< ref "#text" >}} +[Length Property]: {{< ref "#length" >}} + +### Immutable String data type + +The [String][] data type used to represent [Text][Text Property] is immutable, which means it is read-only and cannot be changed once created. + +To overcome this, this block creates a new [String][] which has the [Length][Length Property] of text removed at the beginning and re-assigns it to the variable specified in the [Text][Text Property] property. + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[PropertyValueOutOfRangeException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/remove-text/remove-text-at-end-block.md b/content/en/docs/2024.11/Reference/Blocks/Text/remove-text/remove-text-at-end-block.md new file mode 100644 index 000000000..932ea0f2a --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/remove-text/remove-text-at-end-block.md @@ -0,0 +1,106 @@ +--- +title: "Remove Text At End" +linkTitle: "Remove Text At End" +description: "Removes a length of text from the end of a given text." +--- + +{{< figure src="/blocks/Cortex_Blocks_Text_RemoveText_RemoveTextAtEndBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Text.RemoveText.RemoveTextAtEndBlock)

+ +## Description + +Removes a [Length][Length Property] of text from the end of a given [Text][Text Property]. + +## Examples + +### Remove a Length of text from the end of a given Text + +This example will remove the last `3` characters from the end of `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"` | `($)Text` is a variable of type [String][] | +| [Length][Length Property] | `($)Length`, with value `3` | `($)Length` is a variable of type [Int32][] | + +#### Result + +Removing the last `3` characters from the end of `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"` results in the variable `($)Text` being updated to the following: + +```json +"ABCDEFGHIJKLMNOPQRSTUVW" +``` + +*** + +## Properties + +### Text + +The [Text][Text Property] to remove the [Length][Length Property] of text from. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +### Length + +The [Length][Length Property] of text to remove. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `-1` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyValueOutOfRangeException][] | Thrown when [Text][Text Property] is `null` or empty (i.e. `""`). | +| | Thrown when [Length][Length Property] is greater than the length of [Text][Text Property]. | + +## Remarks + +### Negative Length + +If [Length][Length Property] is negative, all text will be removed and the variable specified in the [Text][Text Property] property will be set to empty (i.e. `""`). + +### Zero Length + +If [Length][Length Property] is `0`, no text will be removed and the variable specified in the [Text][Text Property] property will remain unchanged. + +### Immutable String data type + +The [String][] data type used to represent [Text][Text Property] is immutable, which means it is read-only and cannot be changed once created. + +To overcome this, this block creates a new [String][] which has the [Length][Length Property] of text removed at the end and re-assigns it to the variable specified in the [Text][Text Property] property. + +[Text Property]: {{< ref "#text" >}} +[Length Property]: {{< ref "#length" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[PropertyValueOutOfRangeException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/remove-text/remove-text-at-index-block.md b/content/en/docs/2024.11/Reference/Blocks/Text/remove-text/remove-text-at-index-block.md new file mode 100644 index 000000000..49b78c595 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/remove-text/remove-text-at-index-block.md @@ -0,0 +1,128 @@ +--- +title: "Remove Text At Index" +linkTitle: "Remove Text At Index" +description: "Removes a length of text at the specified index of a given text." +--- + +{{< figure src="/blocks/Cortex_Blocks_Text_RemoveText_RemoveTextAtIndexBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Text.RemoveText.RemoveTextAtIndexBlock)

+ +## Description + +Removes a [Length][Length Property] of text at the specified [Index][Index Property] of a given [Text][Text Property]. + +## Examples + +### Remove a Length of text at the specified Index of a given Text + +This example will remove `3` characters at index `3` of `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"` | `($)Text` is a variable of type [String][] | +| [Index][Index Property] | `($)Index`, with value `3` | `($)Index` is a variable of type [Int32][] | +| [Length][Length Property] | `($)Length`, with value `3` | `($)Length` is a variable of type [Int32][] | + +#### Result + +`"D"` is at index `3` in `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"`. Therefore, removing `3` characters at (and including) index `3` results in the variable `($)Text` being updated to the following: + +```json +"ABCGHIJKLMNOPQRSTUVWXYZ" +``` + +*** + +## Properties + +### Text + +The [Text][Text Property] to remove the [Length][Length Property] of text from. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +### Index + +The [Index][Index Property] to remove the text from. This is an inclusive index, which means the character at the specified index will be included. + +For information about what an index is, please see [Indexes][]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `0` | + +### Length + +The [Length][Length Property] of text to remove. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `-1` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyValueOutOfRangeException][] | Thrown when [Text][Text Property] is `null` or empty (i.e. `""`). | +| | Thrown when [Index][Index Property] is less than zero or greater than the length of [Text][Text Property] - `1`. | +| | Thrown when [Index][Index Property] + a positive [Length][Length Property] is greater than the length of [Text][Text Property] - `1`. | + +## Remarks + +### Negative Length + +A negative [Length][Length Property] can be used to remove all text at and after the [Index][Index Property] of [Text][Text Property]. + +### Zero Length + +If [Length][Length Property] is `0`, no text will be removed and the variable specified in the [Text][Text Property] property will remain unchanged. + +### Index is inclusive + +The [Index][Index Property] property is an inclusive [index][Indexes], which means the character at the index will be included in the removed text. + +### Immutable String data type + +The [String][] data type used to represent [Text][Text Property] is immutable, which means it is read-only and cannot be changed once created. + +To overcome this, this block creates a new [String][] which has the [Length][Length Property] of text removed at the specified [Index][Index Property] and re-assigns it to the variable specified in the [Text][Text Property] property. + +[Text Property]: {{< ref "#text" >}} +[Index Property]: {{< ref "#index" >}} +[Length Property]: {{< ref "#length" >}} + +[Indexes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Indexes.MainDoc" >}} +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[PropertyValueOutOfRangeException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/remove-text/remove-text-before-index-block.md b/content/en/docs/2024.11/Reference/Blocks/Text/remove-text/remove-text-before-index-block.md new file mode 100644 index 000000000..d91eb1419 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/remove-text/remove-text-before-index-block.md @@ -0,0 +1,129 @@ +--- +title: "Remove Text Before Index" +linkTitle: "Remove Text Before Index" +description: "Removes a length of text before the specified index of a given text." +--- + +{{< figure src="/blocks/Cortex_Blocks_Text_RemoveText_RemoveTextBeforeIndexBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Text.RemoveText.RemoveTextBeforeIndexBlock)

+ +## Description + +Removes a [Length][Length Property] of text before the specified [Index][Index Property] of a given [Text][Text Property]. + +## Examples + +### Remove a Length of text before the specified Index of a given Text + +This example will remove `3` characters before index `3` of `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"` | `($)Text` is a variable of type [String][] | +| [Index][Index Property] | `($)Index`, with value `3` | `($)Index` is a variable of type [Int32][] | +| [Length][Length Property] | `($)Length`, with value `3` | `($)Length` is a variable of type [Int32][] | + +#### Result + +`"D"` is at index `3` in `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"`. Therefore, removing `3` characters before index `3` results in the variable `($)Text` being updated to the following: + +```json +"DEFGHIJKLMNOPQRSTUVWXYZ" +``` + +*** + +## Properties + +### Text + +The [Text][Text Property] to remove the [Length][Length Property] of text from. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + + +### Index + +The [Index][Index Property] to remove the text before. This is an exclusive index, which means the character at the specified index won't be included. + +For information about what an index is, please see [Indexes][]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `0` | + +### Length + +The [Length][Length Property] of text to remove. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `-1` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyValueOutOfRangeException][] | Thrown when [Text][Text Property] is `null` or empty (i.e. `""`). | +| | Thrown when [Index][Index Property] is less than `1` or greater than the length of [Text][Text Property] - `1`. | +| | Thrown when [Index][Index Property] - a positive [Length][Length Property] is less than `1`. | + +## Remarks + +### Negative Length + +A negative [Length][Length Property] can be used to remove all text before the [Index][Index Property] of [Text][Text Property]. + +### Zero Length + +If [Length][Length Property] is `0`, the variable specified in the [Text][Text Property] property will be set to empty (i.e. `""`). + +### Index is exclusive + +The [Index][Index Property] property is an exclusive [index][Indexes], which means the character at the index will not be included in the removed text. + +### Immutable String data type + +The [String][] data type used to represent [Text][Text Property] is immutable, which means it is read-only and cannot be changed once created. + +To overcome this, this block creates a new [String][] which has the [Length][Length Property] of text removed before the specified [Index][Index Property] and re-assigns it to the variable specified in the [Text][Text Property] property. + +[Text Property]: {{< ref "#text" >}} +[Index Property]: {{< ref "#index" >}} +[Length Property]: {{< ref "#length" >}} + +[Indexes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Indexes.MainDoc" >}} +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[PropertyValueOutOfRangeException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/remove-text/remove-text-between-indexes-block.md b/content/en/docs/2024.11/Reference/Blocks/Text/remove-text/remove-text-between-indexes-block.md new file mode 100644 index 000000000..afde04054 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/remove-text/remove-text-between-indexes-block.md @@ -0,0 +1,155 @@ +--- +title: "Remove Text Between Indexes" +linkTitle: "Remove Text Between Indexes" +description: "Removes text between the specified start index and end index of a given text." +--- + +{{< figure src="/blocks/Cortex_Blocks_Text_RemoveText_RemoveTextBetweenIndexesBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Text.RemoveText.RemoveTextBetweenIndexesBlock)

+ +## Description + +Removes text between the specified [Start Index][StartIndex Property] and [End Index][EndIndex Property] of a given [Text][Text Property]. + +## Examples + +### Remove text between the specified Start Index and End Index of a given Text + +This example will remove all characters between start index `0` and end index `3` of `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"` | `($)Text` is a variable of type [String][] | +| [Start Index][StartIndex Property] | `($)StartIndex`, with value `0` | `($)StartIndex` is a variable of type [Int32][] | +| [End Index][EndIndex Property] | `($)EndIndex`, with value `3` | `($)EndIndex` is a variable of type [Int32][] | + +#### Result + +`"A"` is at index `0` and `"D"` is at index `3` in `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"`. Therefore, removing all characters between (and including) start index `0` and end index `3` results in the variable `($)Text` being updated to the following: + +```json +"EFGHIJKLMNOPQRSTUVWXYZ" +``` + +*** + +### Remove text where Start Index is greater than End Index + +This example will remove all characters between start index `3` and end index `0` of `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"` | `($)Text` is a variable of type [String][] | +| [Start Index][StartIndex Property] | `($)StartIndex`, with value `3` | `($)StartIndex` is a variable of type [Int32][] | +| [End Index][EndIndex Property] | `($)EndIndex`, with value `0` | `($)EndIndex` is a variable of type [Int32][] | + +#### Result + +In this example the start index `3` is greater than the end index `0`. When this occurs, the block simply swaps the indexes before it processes the text. + +Therefore, having start index `3` and end index `0` is the same as having start index `0` and end index `3`. + +`"A"` is at index `0` and `"D"` is at index `3` in `"ABCDEFGHIJKLMNOPQRSTUVWXYZ"`. + +Therefore, removing all characters between (and including) start index `3` and end index `0`, or start index `0` and end index `3`, results in the variable `($)Text` being updated to the following: + +```json +"EFGHIJKLMNOPQRSTUVWXYZ" +``` + +*** + +## Properties + +### Text + +The [Text][Text Property] to remove the text from. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +### Start Index + +The [Start Index][StartIndex Property] used to remove the text. This is an inclusive index, which means the character at the specified index will be included. + +For information about what an index is, please see [Indexes][]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `0` | + +### End Index + +The [End Index][EndIndex Property] used to remove the text. This is an inclusive index, which means the character at the specified index will be included. + +For information about what an index is, please see [Indexes][]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `0` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyValueOutOfRangeException][] | Thrown when [Text][Text Property] is `null` or empty (i.e. `""`). | +| | Thrown when [Start Index][StartIndex Property] or [End Index][EndIndex Property] is less than zero or greater than the length of [Text][Text Property] - `1`. | + +## Remarks + +### Start Index and End Index are inclusive + +The [Start Index][StartIndex Property] and [End Index][EndIndex Property] properties are both inclusive [indexes][Indexes], which means the characters at those indexes will be included in the removed text. + +### Start Index greater than End Index + +[Start Index][StartIndex Property] can be greater than [End Index][EndIndex Property]. If this is the case, the values of the indexes will be swapped. See [Example][StartIndexGreaterThanEndIndex Example] above. + +### Immutable String data type + +The [String][] data type used to represent [Text][Text Property] is immutable, which means it is read-only and cannot be changed once created. + +To overcome this, this block creates a new [String][] which has the text removed between the specified [Start Index][StartIndex Property] and [End Index][EndIndex Property], and re-assigns it to the variable specified in the [Text][Text Property] property. + +[Text Property]: {{< ref "#text" >}} +[StartIndex Property]: {{< ref "#start-index" >}} +[EndIndex Property]: {{< ref "#end-index" >}} + +[StartIndexGreaterThanEndIndex Example]: {{< ref "#remove-text-where-start-index-is-greater-than-end-index" >}} + +[Indexes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Indexes.MainDoc" >}} +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[PropertyValueOutOfRangeException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/split-text/_index.md b/content/en/docs/2024.11/Reference/Blocks/Text/split-text/_index.md new file mode 100644 index 000000000..498cf5969 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/split-text/_index.md @@ -0,0 +1,5 @@ +--- +title: "Split Text" +linkTitle: "Split Text" +description: "Split text (using a separator) into a list of values." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/Text/split-text/split-text-block.md b/content/en/docs/2024.11/Reference/Blocks/Text/split-text/split-text-block.md new file mode 100644 index 000000000..adbff686e --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/Text/split-text/split-text-block.md @@ -0,0 +1,244 @@ +--- +title: "Split Text" +linkTitle: "Split Text" +description: "Splits text into a list of String values, using the given separator to determine where to split." +--- + +{{< figure src="/blocks/Cortex_Blocks_Text_SplitText_SplitTextBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Text.SplitText.SplitTextBlock)

+ +## Description + +Splits [Text][Text Property] into a list of [String][] [Values][Values Property], using the given [Separator][Separator Property] to determine where to split. + +[Split Options][SplitOptions Property] can be used to specify how to treat empty entries (i.e. `""`). + +## Examples + +### Split Text into a list of String Values using a pipe Separator + +This example will split the text `"Sunday|Monday|Tuesday|Wednesday|Thursday|Friday|Saturday"` into a list of [String][] values, using the pipe separator (i.e. `"|"`) to determine where to split. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"Sunday\|Monday\|Tuesday\|Wednesday\|Thursday\|Friday\|Saturday"` | `($)Text` is a variable of type [String][] | +| [Separator][Separator Property] | `($)Separator`, with value `"\|"` | `($)Separator` is a variable of type [String][] | +| [Split Options][SplitOptions Property] | `($)SplitOptions`, with value `StringSplitOptions.None` | `($)SplitOptions` is a variable of type [StringSplitOptions][] | +| [Values][Values Property] | `($)Values`, with no value | `($)Values` is a variable that will be set to an [IList][]<[String][]> | + +#### Result + +Splitting `"Sunday|Monday|Tuesday|Wednesday|Thursday|Friday|Saturday"` using a pipe separator (i.e. `"|"`), results in the variable `($)Values` being updated to the following: + +```json +["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"] +``` + +*** + +### Split Text into a list of String Values using a comma Separator (removing empty entries) + +This example will split the text `"1,2,3,,"` into a list of [String][] values, using the comma separator (i.e. `","`) to determine where to split, and removing empty entries (i.e. `""`). + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"1,2,3,,"` | `($)Text` is a variable of type [String][] | +| [Separator][Separator Property] | `($)Separator`, with value `","` | `($)Separator` is a variable of type [String][] | +| [Split Options][SplitOptions Property] | `($)SplitOptions`, with value `StringSplitOptions.RemoveEmptyEntries` | `($)SplitOptions` is a variable of type [StringSplitOptions][] | +| [Values][Values Property] | `($)Values`, with no value | `($)Values` is a variable that will be set to an [IList][]<[String][]> | + +#### Result + +Splitting `"1,2,3,,"` using a comma separator (i.e. `","`) and removing the last 2 entries which are empty (i.e. `""`), results in the variable `($)Values` being updated to the following: + +```json +["1", "2", "3"] +``` + +*** + +### Split Text into a list of String Values using a comma Separator (keeping empty entries) + +This example will split the text `"1,2,3,,"` into a list of [String][] values, using the comma separator (i.e. `","`) to determine where to split, and keeping empty entries (i.e. `""`). + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"1,2,3,,"` | `($)Text` is a variable of type [String][] | +| [Separator][Separator Property] | `($)Separator`, with value `","` | `($)Separator` is a variable of type [String][] | +| [Split Options][SplitOptions Property] | `($)SplitOptions`, with value `StringSplitOptions.None` | `($)SplitOptions` is a variable of type [StringSplitOptions][] | +| [Values][Values Property] | `($)Values`, with no value | `($)Values` is a variable that will be set to an [IList][]<[String][]> | + +#### Result + +Splitting `"1,2,3,,"` using a comma separator (i.e. `","`) and keeping the last 2 entries which are empty but trimming, results in the variable `($)Values` being updated to the following: + +```json +["1", "2", "3", "", ""] +``` + +*** + +### Split Text into a list of String Values using a comma Separator (keeping empty entries but trimming entries) + +This example will split the text `" 1 , 2,3 ,,"` into a list of [String][] values, using the comma separator (i.e. `","`) to determine where to split, and keeping empty entries (i.e. `""`) but trimming whitespaces (i.e. `" 1 "` would become `"1"`). + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `" 1 , 2,3 ,,"` | `($)Text` is a variable of type [String][] | +| [Separator][Separator Property] | `($)Separator`, with value `","` | `($)Separator` is a variable of type [String][] | +| [Split Options][SplitOptions Property] | `($)SplitOptions`, with value `StringSplitOptions.TrimEntries` | `($)SplitOptions` is a variable of type [StringSplitOptions][] | +| [Values][Values Property] | `($)Values`, with no value | `($)Values` is a variable that will be set to an [IList][]<[String][]> | + +#### Result + +Splitting `" 1 , 2,3 ,,"` using a comma separator (i.e. `","`) and keeping the last 2 entries which are empty (i.e. `""`) but trimming whitespaces (i.e. `" 1 "`), results in the variable `($)Values` being updated to the following: + +```json +["1", "2", "3", "", ""] +``` + +*** + +### Split Text into a list of String Values using a comma Separator (removing empty entries and trimming entries) + +This example will split the text `" 1 , 2,3 ,,"` into a list of [String][] values, using the comma separator (i.e. `","`) to determine where to split, and remove any empty entries (i.e. `""`) and trimming whitespaces (i.e. `" 1 "` would become `"1"`). + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `" 1 , 2,3 ,,"` | `($)Text` is a variable of type [String][] | +| [Separator][Separator Property] | `($)Separator`, with value `","` | `($)Separator` is a variable of type [String][] | +| [Split Options][SplitOptions Property] | `($)SplitOptions`, with value `StringSplitOptions.RemoveEmptyEntries \| StringSplitOptions.TrimEntries` | `($)SplitOptions` is a variable of type [StringSplitOptions][] | +| [Values][Values Property] | `($)Values`, with no value | `($)Values` is a variable that will be set to an [IList][]<[String][]> | + +#### Result + +Splitting `" 1 , 2,3 ,,"` using a comma separator (i.e. `","`) and removing the last 2 entries which are empty (i.e. `""`) and trimming whitespaces (i.e. `" 1 "`), results in the variable `($)Values` being updated to the following: + +```json +["1", "2", "3"] +``` + +*** + +## Properties + +### Text + +The [Text][Text Property] to split into [Values][Values Property] using the given [Separator][Separator Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +### Separator + +The [Separator][Separator Property] used to determine where to split the [Text][Text Property] into the [Values][Values Property]. + +[Separator][Separator Property] can contain zero or more characters. + +The [Separator][Separator Property] is not included in the resultant [Values][Values Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `,` | + +### Split Options + +[Split Options][SplitOptions Property] used to specify how to treat empty entries (i.e. `""`). + +Currently supported values for the [Split Options][SplitOptions Property] property are: + +* StringSplitOptions.None (Default) - empty entries and trailing or leading whitespaces (at the start or end of text) are included in [Values][Values Property]. +* StringSplitOptions.RemoveEmptyEntries - empty entries are excluded from [Values][Values Property]; trailing or leading whitespaces (at the start or end of text) are included. +* StringSplitOptions.TrimEntries - trailing or leading whitespaces (at the start or end of text) are excluded from [Values][Values Property]; empty entries are included. + +It's also possible to combine `StringSplitOptions` in the [Expression Editor][Expression]. The example below shows how to remove empty entries and trim entries: + +```csharp +StringSplitOptions.RemoveEmptyEntries | StringSplitOptions.TrimEntries +``` + +| | | +|--------------------|---------------------------| +| Data Type | [StringSplitOptions][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | `None` | + +### Values + +The resultant [Values][Values Property] containing an entry for each piece of split text in the order they are defined in [Text][Text Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[String][]> | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Values` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [ArgumentException][] | Thrown when [Split Options][SplitOptions Property] is not one of the specified [StringSplitOptions][] types (e.g. `(StringSplitOptions)10`). | + +## Remarks + +### Null or empty Text + +If [Text][Text Property] is `null` or empty (i.e. `""`), then `null` or empty (i.e. `""`) respectively is added as the only entry to [Values][Values Property]. + +### Null or empty Separator + +If [Separator][Separator Property] is `null` or empty (i.e. `""`), the value of the variable specified for the [Text][Text Property] property is added as the only entry to [Values][Values Property]. + +### Separator not found + +If the [Separator][Separator Property] is not found in [Text][Text Property], the value of the variable specified for the [Text][Text Property] property is added as the only entry to [Values][Values Property]. + +[Values Property]: {{< ref "#values" >}} +[Separator Property]: {{< ref "#separator" >}} +[SplitOptions Property]: {{< ref "#split-options" >}} +[Text Property]: {{< ref "#text" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[ArgumentException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentException" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[StringSplitOptions]: {{< url path="Cortex.Reference.DataTypes.Text.StringSplitOptions.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} + diff --git a/content/en/docs/2024.11/Reference/Blocks/_index.md b/content/en/docs/2024.11/Reference/Blocks/_index.md new file mode 100644 index 000000000..321f178f6 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/_index.md @@ -0,0 +1,6 @@ +--- +title: "Blocks" +linkTitle: "Blocks" +description: "This section includes all reference documentation for functional blocks." +weight: 10 +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/data-storage/_index.md b/content/en/docs/2024.11/Reference/Blocks/data-storage/_index.md new file mode 100644 index 000000000..1ec60a4e9 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/data-storage/_index.md @@ -0,0 +1,5 @@ +--- +title: "Data Storage" +linkTitle: "Data Storage" +description: "Blocks related to working with Data Storage." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/data-storage/create-collection/_index.md b/content/en/docs/2024.11/Reference/Blocks/data-storage/create-collection/_index.md new file mode 100644 index 000000000..7d76634a0 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/data-storage/create-collection/_index.md @@ -0,0 +1,5 @@ +--- +title: "Create Collection" +linkTitle: "Create Collection" +description: "Create a data storage collection." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/data-storage/create-collection/create-collection-block.md b/content/en/docs/2024.11/Reference/Blocks/data-storage/create-collection/create-collection-block.md new file mode 100644 index 000000000..b3246083b --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/data-storage/create-collection/create-collection-block.md @@ -0,0 +1,139 @@ +--- +title: "Create Collection" +linkTitle: "Create Collection" +description: "Create a data storage collection." +--- +{{
}} + +# {{% param title %}} + +

(Cortex.Blocks.DataStorage.CreateCollection.CreateCollectionBlock)

+ +## Description + +Create a [Data Storage Collection] within the [Collection Scope][Collection Scope Property]. + +## Examples + +### Create a Data Storage Collection + +This example will attempt to create a new [Data Storage Collection] named `"users"` that is only accessible by flows that are scoped to the same [Tenant] and [System] specified by the [Collection Scope][Collection Scope Property]. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Collection Scope][Collection Scope Property] | `($)Scope` with value `{"Tenant": "ScopeOption.Current", "System": "ScopeOption.Current", "Package": "ScopeOption.All", "Flow": "ScopeOption.All"}`.

In this example `($)Scope` has been set up using the following [Expression][]: `new ScopeDefinition(tenant: ScopeOption.Current, system: ScopeOption.Current, package: ScopeOption.All, flow: ScopeOption.All)`| `($)Scope` is a variable of type [ScopeDefinition][] | +| [Collection Name][Collection Name Property] | `($)CollectionName` with value `"users"` | `($)CollectionName` is a variable of type [String][] | + +#### Result + +This creates a new [Data Storage Collection] within the [Collection Scope][Collection Scope Property] with [Collection Name][Collection Name Property] `"users"`. + +### Create a Data Storage Collection that Already Exists + +This example will attempt to create a new [Data Storage Collection] named `"users"`that is only accessible by flows that are scoped to the same [Tenant] and [System] specified by the [Collection Scope][Collection Scope Property]. +In this example `"users"` already exists. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Collection Scope][Collection Scope Property] | `($)Scope` with value `{"Tenant": "ScopeOption.Current", "System": "ScopeOption.Current", "Package": "ScopeOption.All", "Flow": "ScopeOption.All"}`.

In this example `($)Scope` has been set up using the following [Expression][]: `new ScopeDefinition(tenant: ScopeOption.Current, system: ScopeOption.Current, package: ScopeOption.All, flow: ScopeOption.All)`| `($)Scope` is a variable of type [ScopeDefinition][] | +| [Collection Name][Collection Name Property] | `($)CollectionName` with value `"users"` | `($)CollectionName` is a variable of type [String][] | + +#### Result + +Attempting to create a [Data Storage Collection] with the name `"users"` within the [Collection Scope][Collection Scope Property] results in no operation, as the [Data Storage Collection] already exists. + +## Properties + +### Collection Scope + +The [Collection Scope][Collection Scope Property] to create the [Data Storage Collection] within. + +| | | +|--------------------|---------------------------| +| Data Type | [ScopeDefinition] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [Collection Scope][Collection Scope Property] with the value shown below: | + +```json +{ + "Tenant": "ScopeOption.Current", + "System": "ScopeOption.Current", + "Package": "ScopeOption.Current", + "Flow": "ScopeOption.All" +} + +``` + +### Collection Name + +The name of the [Data Storage Collection] to create. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)CollectionName` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [ArgumentException][] | Thrown when [Tenant][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| | Thrown when [System][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| | Thrown when [Package][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| | Thrown when [Flow][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| [PropertyEmptyException][] | Thrown when the [Collection Name][Collection Name Property] is empty (i.e. `""`).| +| [PropertyNullException][] | Thrown when the [Collection Scope][Collection Scope Property] is `null`. | +| | Thrown when the [Collection Name][Collection Name Property] is `null`. | +| [ServiceDoesNotExistException][] | Thrown when the [Data Storage Service][] does not exist. | +| [ServiceUnavailableException][] | Thrown when the [Data Storage Service][] is not healthy. | + +## Remarks + +### Creating a Collection that Already Exists + +When trying to create a collection that already exists, no operation is performed; see example [Create a Data Storage Collection that Already Exists][Collection Already Exists]. + +### Case Sensitivity + +[Collection Name][Collection Name Property] is case insensitive (e.g. 'Collection' is the same as 'collection'), so trying to create a [Data Storage Collection] named `"Collection"` while `"COLLECTION"` already exists would have no effect; see example [Create a Data Storage Collection that Already Exists][Collection Already Exists]. + +[Collection Scope Property]: {{< ref "#collection-scope" >}} +[Collection Name Property]: {{< ref "#collection-name" >}} +[Collection Already Exists]: {{< ref "#create-a-data-storage-collection-that-already-exists">}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[ScopeDefinition]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.MainDoc">}} +[ScopeOption]: {{< url path ="Cortex.Reference.DataTypes.Scopes.ScopeOption.MainDoc">}} +[Tenant]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.Tenant">}} +[System]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.System">}} +[Package]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.Package">}} +[Flow]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.Flow">}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[ArgumentException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentException" >}} +[ServiceDoesNotExistException]: {{< url path = "Cortex.Reference.Exceptions.Services.ServiceDoesNotExistException.MainDoc">}} +[ServiceUnavailableException]: {{< url path = "Cortex.Reference.Exceptions.Services.ServiceUnavailableException.MainDoc">}} +[Data Storage Collection]: {{< url path = "Cortex.Reference.Concepts.WorkingWith.Collections.WhatIsACollection.DataStorage">}} +[Data Storage Service]: {{< url path = "Cortex.Guides.CortexInnovation.CoreApplication.Services.DataStorageService.MainDoc">}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/data-storage/delete-collection/_index.md b/content/en/docs/2024.11/Reference/Blocks/data-storage/delete-collection/_index.md new file mode 100644 index 000000000..55e7c9294 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/data-storage/delete-collection/_index.md @@ -0,0 +1,5 @@ +--- +title: "Delete Collection" +linkTitle: "Delete Collection" +description: "Delete a data storage collection." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/data-storage/delete-collection/delete-collection-block.md b/content/en/docs/2024.11/Reference/Blocks/data-storage/delete-collection/delete-collection-block.md new file mode 100644 index 000000000..d22a27e01 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/data-storage/delete-collection/delete-collection-block.md @@ -0,0 +1,147 @@ +--- +title: "Delete Collection" +linkTitle: "Delete Collection" +description: "Deletes a data storage collection." +--- + +{{
}} + +# {{% param title %}} + +

(Cortex.Blocks.DataStorage.DeleteCollection.DeleteCollectionBlock)

+ +## Description + +Delete a [Data Storage Collection][] within the [Collection Scope][Collection Scope Property]. + +## Examples + +### Delete a Data Storage Collection + +This example will attempt to delete a [Data Storage Collection] named `"users"`that is only accessible by flows that are scoped to the same [Tenant] and [System] specified by the [Collection Scope][Collection Scope Property]. +In this example `"users"` already exists. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Collection Scope][Collection Scope Property] | `($)Scope` with value `{"Tenant": "ScopeOption.Current", "System": "ScopeOption.Current", "Package": "ScopeOption.All", "Flow": "ScopeOption.All"}`.

In this example `($)Scope` has been set up using the following [Expression][]: `new ScopeDefinition(tenant: ScopeOption.Current, system: ScopeOption.Current, package: ScopeOption.All, flow: ScopeOption.All)`| `($)Scope` is a variable of type [ScopeDefinition][] | +| [Collection Name][Collection Name Property] | `($)CollectionName` with value `"users"` | `($)CollectionName` is a variable of type [String][] | + +#### Result + +This deletes the [Data Storage Collection] within the [Collection Scope][Collection Scope Property] with [Collection Name][Collection Name Property] `"users"`. + +*** + +### Delete a Data Storage Collection that Does Not Exist + +This example will attempt to delete a [Data Storage Collection][] named `"users"`that is only accessible by flows that are scoped to the same [Tenant] and [System] specified by the [Collection Scope][Collection Scope Property]. +In this example `"users"` does not exist. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Collection Scope][Collection Scope Property] | `($)Scope` with value `{"Tenant": "ScopeOption.Current", "System": "ScopeOption.Current", "Package": "ScopeOption.All", "Flow": "ScopeOption.All"}`.

In this example `($)Scope` has been set up using the following [Expression][]: `new ScopeDefinition(tenant: ScopeOption.Current, system: ScopeOption.Current, package: ScopeOption.All, flow: ScopeOption.All)`| `($)Scope` is a variable of type [ScopeDefinition][] | +| [Collection Name][Collection Name Property] | `($)CollectionName` with value `"users"` | `($)CollectionName` is a variable of type [String][] | + +#### Result + +Attempting to delete a [Data Storage Collection] with the name `"users"` within the [Collection Scope][Collection Scope Property] results in no operation, as the [Data Storage Collection] does not exist. + +*** + +## Properties + +### Collection Scope + +The [Collection Scope][Collection Scope Property] to delete the [Data Storage Collection] from. + +| | | +|--------------------|---------------------------| +| Data Type | [ScopeDefinition] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [Collection Scope][Collection Scope Property] with value show below | + +```json +{ + "Tenant": "ScopeOption.Current", + "System": "ScopeOption.Current", + "Package": "ScopeOption.Current", + "Flow": "ScopeOption.All" +} + +``` + +### Collection Name + +The name of the [Data Storage Collection] to delete. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)CollectionName` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [ArgumentException][] | Thrown when [Tenant][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| | Thrown when [System][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| | Thrown when [Package][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| | Thrown when [Flow][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| [PropertyEmptyException][] | Thrown when the [Collection Name][Collection Name Property] is empty (i.e. `""`).| +| [PropertyNullException][] | Thrown when the [Collection Scope][Collection Scope Property] is `null`. | +| | Thrown when the [Collection Name][Collection Name Property] is `null`. | +| [ServiceDoesNotExistException][] | Thrown when the [Data Storage Service][] does not exist. | +| [ServiceUnavailableException][] | Thrown when the [Data Storage Service][] is not healthy. | + +## Remarks + +### Deleting a Collection that Does Not Exist + +When trying to delete a collection that does not exist, no operation is performed; see example [Delete a Data Storage Collection that Does Not Exist][Delete Collection that Does Not Exist]. + +### Case Sensitivity + +[Collection Name][Collection Name Property] is case insensitive (e.g. 'Collection' is the same as 'collection'), so trying to delete a [Data Storage Collection] named `"Collection"` while `"COLLECTION"` exists would delete `"COLLECTION"`; see example [Delete a Data Storage Collection][Delete Collection]. + +[Collection Scope Property]: {{< ref "#collection-scope" >}} +[Collection Name Property]: {{< ref "#collection-name" >}} + +[Delete Collection]: {{< ref "#delete-a-data-storage-collection">}} +[Delete Collection that Does Not Exist]: {{< ref "#delete-a-data-storage-collection-that-does-not-exist" >}} + +[Data Storage Collection]: {{< url path = "Cortex.Reference.Concepts.WorkingWith.Collections.WhatIsACollection.DataStorage">}} +[Data Storage Service]: {{< url path = "Cortex.Guides.CortexInnovation.CoreApplication.Services.DataStorageService.MainDoc">}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[ScopeDefinition]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.MainDoc">}} +[ScopeOption]: {{< url path ="Cortex.Reference.DataTypes.Scopes.ScopeOption.MainDoc">}} +[Tenant]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.Tenant">}} +[System]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.System">}} +[Package]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.Package">}} +[Flow]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.Flow">}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[ArgumentException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentException" >}} +[ServiceDoesNotExistException]: {{< url path = "Cortex.Reference.Exceptions.Services.ServiceDoesNotExistException.MainDoc">}} +[ServiceUnavailableException]: {{< url path = "Cortex.Reference.Exceptions.Services.ServiceUnavailableException.MainDoc">}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/data-storage/delete-data/_index.md b/content/en/docs/2024.11/Reference/Blocks/data-storage/delete-data/_index.md new file mode 100644 index 000000000..aa6ec59f5 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/data-storage/delete-data/_index.md @@ -0,0 +1,5 @@ +--- +title: "Delete Data" +linkTitle: "Delete Data" +description: "Delete data from a data storage collection." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/data-storage/delete-data/delete-data-with-key-block.md b/content/en/docs/2024.11/Reference/Blocks/data-storage/delete-data/delete-data-with-key-block.md new file mode 100644 index 000000000..ec7973ff9 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/data-storage/delete-data/delete-data-with-key-block.md @@ -0,0 +1,189 @@ +--- +title: "Delete Data With Key" +linkTitle: "Delete Data With Key" +description: "Deletes data from a data storage collection with the specified key." +--- +{{< figure src="/blocks/Cortex_Blocks_DataStorage_DeleteData_DeleteDataWithKeyBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.DataStorage.DeleteData.DeleteDataWithKeyBlock)

+ +## Description + +Deletes data from a [Data Storage Collection][] with the specified [Key][Key Property]. + +## Examples + +### Delete from a Data Storage Collection + +This example will attempt to delete data from a [Data Storage Collection][] named `"users"` that is only accessible by flows that are scoped to the same [Tenant] and [System] specified by the [Collection Scope][Collection Scope Property]. In this example `"users"` already exists and contains the following [Keys][Key Property] and data: + +|Key | Data | +-------------|--------------| +|`"user1"` | `{"Domain": "domain", "Username": "user1", "Password": "encryptedPassword"}` | +|`"user2"` | `{"Domain": "domain", "Username": "user2", "Password": "encryptedPassword"}` | + +The example will delete the [Key][Key Property] `"user2"` and the associated data. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Collection Scope][Collection Scope Property] | `($)Scope` with value `{"Tenant": "ScopeOption.Current", "System": "ScopeOption.Current", "Package": "ScopeOption.All", "Flow": "ScopeOption.All"}`.

In this example `($)Scope` has been set up using the following [Expression][]: `new ScopeDefinition(tenant: ScopeOption.Current, system: ScopeOption.Current, package: ScopeOption.All, flow: ScopeOption.All)`| `($)Scope` is a variable of type [ScopeDefinition][] | +| [Collection Name][Collection Name Property] | `($)CollectionName` with value `"users"` | `($)CollectionName` is a variable of type [String][] | +| [Key][Key Property] | `($)Key` with value `"user2"` | `($)Key` is a variable of type [String][] | + +#### Result + +This deletes `"user2"` from the [Data Storage Collection][] which removes the data `{"Domain": "domain", "Username": "user2", "Password": "encryptedPassword"}` from the `"users"` [Data Storage Collection][] as shown below: + +|Key | Data | +-------------|--------------| +|`"user1"` | `{"Domain": "domain", "Username": "user1", "Password": "encryptedPassword"}` | + +*** + +### Delete from a Data Storage Collection with a Key that Does Not Exist + +This example will attempt to delete data from a [Data Storage Collection] named `"users"` that is only accessible by flows that are scoped to the same [Tenant] and [System] specified by the [Collection Scope][Collection Scope Property]. In this example `"users"` already exists and contains the following [Keys][Key Property] and data: + +|Key | Data | +-------------|--------------| +|`"user1"` | `{"Domain": "domain", "Username": "user1", "Password": "encryptedPassword"}` | +|`"user2"` | `{"Domain": "domain", "Username": "user2", "Password": "encryptedPassword"}` | + +The example will attempt to delete the [Key][Key Property] `"user3"` and any associated data. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Collection Scope][Collection Scope Property] | `($)Scope` with value `{"Tenant": "ScopeOption.Current", "System": "ScopeOption.Current", "Package": "ScopeOption.All", "Flow": "ScopeOption.All"}`.

In this example `($)Scope` has been set up using the following [Expression][]: `new ScopeDefinition(tenant: ScopeOption.Current, system: ScopeOption.Current, package: ScopeOption.All, flow: ScopeOption.All)`| `($)Scope` is a variable of type [ScopeDefinition][] | +| [Collection Name][Collection Name Property] | `($)CollectionName` with value `"users"` | `($)CollectionName` is a variable of type [String][] | +| [Key][Key Property] | `($)Key` with value `"user3"` | `($)Key` is a variable of type [String][] | + +#### Result + +Attempting to delete `"user3"` from the [Data Storage Collection][] `"users"` within the [Collection Scope][Collection Scope Property] results in no operation, as the [Key][Key Property] does not exist. + +*** + +## Properties + +### Collection Scope + +The [Collection Scope][Collection Scope Property] containing the [Data Storage Collection] to delete from. + +| | | +|--------------------|---------------------------| +| Data Type | [ScopeDefinition] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [Collection Scope][Collection Scope Property] with value shown below | + +```json +{ + "Tenant": "ScopeOption.Current", + "System": "ScopeOption.Current", + "Package": "ScopeOption.Current", + "Flow": "ScopeOption.All" +} + +``` + +### Collection Name + +The name of the [Data Storage Collection][] to delete from. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)CollectionName` with no value | + +### Key + +The [Key][Key Property] the data to delete must have. + +For more information about what a key is, please see [Keys]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Key` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [ArgumentException][] | Thrown when [Tenant][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| | Thrown when [System][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| | Thrown when [Package][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| | Thrown when [Flow][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| [DataStorageCollectionNotFoundException][] | Thrown when the [Collection Name][Collection Name Property] can not be found within the specified [Collection Scope][Collection Scope property]. +| [PropertyEmptyException][] | Thrown when the [Collection Name][Collection Name Property] is empty (i.e. `""`).| +| [PropertyNullException][] | Thrown when the [Collection Scope][Collection Scope Property] is `null`. | +| | Thrown when the [Collection Name][Collection Name Property] is `null`. | +| | Thrown when the [Key][Key Property] is `null`. | +| [ServiceDoesNotExistException][] | Thrown when the [Data Storage Service][] does not exist. | +| [ServiceUnavailableException][] | Thrown when the [Data Storage Service][] is not healthy. | + +## Remarks + +### Deleting from a Collection with a Key that Does Not Exist +When trying to delete from a collection with a [Key][Key Property] that does not exist, no operation is performed; see example [Delete from a Data Storage Collection with a Key that Does Not Exist][Delete Missing Key]. + +### Case Sensitivity + +[Collection Name][Collection Name Property] is case insensitive (e.g. 'Collection' is the same as 'collection'), so trying to delete from a [Data Storage Collection] named `"Collection"` while `"COLLECTION"` already exists would delete from `"COLLECTION"`. + +[Key][Key Property] is case sensitive (e.g. `"user"` is not the same as `"USER"`). + +[Collection Scope Property]: {{< ref "#collection-scope" >}} +[Collection Name Property]: {{< ref "#collection-name" >}} +[Key Property]: {{< ref "#key" >}} +[Data Property]: {{< ref "#data" >}} +[Delete Missing Key]: {{< ref "#delete-from-a-data-storage-collection-with-a-key-that-does-not-exist">}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[ScopeDefinition]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.MainDoc">}} +[ScopeOption]: {{< url path ="Cortex.Reference.DataTypes.Scopes.ScopeOption.MainDoc">}} +[Tenant]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.Tenant">}} +[System]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.System">}} +[Package]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.Package">}} +[Flow]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.Flow">}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[ArgumentException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentException" >}} +[ServiceDoesNotExistException]: {{< url path = "Cortex.Reference.Exceptions.Services.ServiceDoesNotExistException.MainDoc">}} +[ServiceUnavailableException]: {{< url path = "Cortex.Reference.Exceptions.Services.ServiceUnavailableException.MainDoc">}} +[DataStorageCollectionNotFoundException]: {{< url path = "Cortex.Reference.Exceptions.DataStorage.DataStorageCollectionNotFoundException.MainDoc">}} +[KeyInDataStorageCollectionNotFoundException]: {{< url path = "Cortex.Reference.Exceptions.DataStorage.KeyInDataStorageCollectionNotFoundException.MainDoc">}} + +[Data Storage Collection]: {{< url path = "Cortex.Reference.Concepts.WorkingWith.Collections.WhatIsACollection.DataStorage">}} +[Data Storage Service]: {{< url path = "Cortex.Guides.CortexInnovation.CoreApplication.Services.DataStorageService.MainDoc">}} + +[Object]: {{< url path="Cortex.Reference.DataTypes.All.Object.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[UserCredentials]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.MainDoc">}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[Keys]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Keys.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/data-storage/read-data/_index.md b/content/en/docs/2024.11/Reference/Blocks/data-storage/read-data/_index.md new file mode 100644 index 000000000..5e5187a84 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/data-storage/read-data/_index.md @@ -0,0 +1,5 @@ +--- +title: "Read Data" +linkTitle: "Read Data" +description: "Read data from a data storage collection." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/data-storage/read-data/read-data-with-key-block.md b/content/en/docs/2024.11/Reference/Blocks/data-storage/read-data/read-data-with-key-block.md new file mode 100644 index 000000000..74007abac --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/data-storage/read-data/read-data-with-key-block.md @@ -0,0 +1,175 @@ +--- +title: "Read Data With Key" +linkTitle: "Read Data With Key" +description: "Reads data from a data storage collection with the specified key." +--- +{{< figure src="/blocks/Cortex_Blocks_DataStorage_ReadData_ReadDataWithKeyBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.DataStorage.ReadData.ReadDataWithKeyBlock)

+ +## Description + +Reads data from a [Data Storage Collection][] with the specified [Key][Key Property]. + +## Examples + +### Read from a Data Storage Collection + +This example will attempt to read [Data][Data Property] from a [Data Storage Collection] named `"users"` that is only accessible by flows that are scoped to the same [Tenant] and [System] specified by the [Collection Scope][Collection Scope Property]. In this example `"users"` already exists and contains the following [Keys][Key Property] and [Data][Data Property]: + +|Key | Data | +-------------|--------------| +|`"user1"` | `{"Domain": "domain", "Username": "user1", "Password": "encryptedPassword"}` | +|`"user2"` | `{"Domain": "domain", "Username": "user2", "Password": "encryptedPassword"}` | + +The example will read the [Key][Key Property] `"user2"` and store the retrieved [Data][Data Property] to `($)Data`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Collection Scope][Collection Scope Property] | `($)Scope` with value `{"Tenant": "ScopeOption.Current", "System": "ScopeOption.Current", "Package": "ScopeOption.All", "Flow": "ScopeOption.All"}`.

In this example `($)Scope` has been set up using the following [Expression][]: `new ScopeDefinition(tenant: ScopeOption.Current, system: ScopeOption.Current, package: ScopeOption.All, flow: ScopeOption.All)`| `($)Scope` is a variable of type [ScopeDefinition][] | +| [Collection Name][Collection Name Property] | `($)CollectionName` with value `"users"` | `($)CollectionName` is a variable of type [String][] | +| [Key][Key Property] | `($)Key` with value `"user2"` | `($)Key` is a variable of type [String][] | +| [Data][Data Property] | `($)Data`, with no value | `($)Data` is a variable that will be of type [dynamic][] | + +#### Result + +This reads `"user2"` from the [Data Storage Collection][] `"users"` which results in the variable `($)Data` being updated to the following: + +```json +{"Domain": "domain", "Username": "user2", "Password": "encryptedPassword"} +``` + +*** + +## Properties + +### Collection Scope + +The [Collection Scope][Collection Scope Property] containing the [Data Storage Collection] to read from. + +| | | +|--------------------|---------------------------| +| Data Type | [ScopeDefinition] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [Collection Scope][Collection Scope Property] with value shown below | + +```json +{ + "Tenant": "ScopeOption.Current", + "System": "ScopeOption.Current", + "Package": "ScopeOption.Current", + "Flow": "ScopeOption.All" +} + +``` + +### Collection Name + +The name of the [Data Storage Collection][] to read from. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)CollectionName` with no value | + +### Key + +The [Key][Key Property] the [Data][Data Property] to read must have. + +For more information about what a key is, please see [Keys]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Key` with no value | + +### Data + +The [Data][Data Property] that is read from the [Data Storage Collection] with the matching [Key][Key Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [dynamic][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Data` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [ArgumentException][] | Thrown when [Tenant][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| | Thrown when [System][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| | Thrown when [Package][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| | Thrown when [Flow][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| [DataStorageCollectionNotFoundException][] | Thrown when the [Collection Name][Collection Name Property] can not be found within the specified [Collection Scope][Collection Scope property]. +| [KeyInDataStorageCollectionNotFoundException][] | Thrown when the given [Key][Key Property] can not be found in the [Data Storage Collection] within the specified [Collection Scope][Collection Scope Property]. | +| [PropertyEmptyException][] | Thrown when the [Collection Name][Collection Name Property] is empty (i.e. `""`).| +| [PropertyNullException][] | Thrown when the [Collection Scope][Collection Scope Property] is `null`. | +| | Thrown when the [Collection Name][Collection Name Property] is `null`. | +| | Thrown when the [Key][Key Property] is `null`. | +| [ServiceDoesNotExistException][] | Thrown when the [Data Storage Service][] does not exist. | +| [ServiceUnavailableException][] | Thrown when the [Data Storage Service][] is not healthy. | + +## Remarks + +### Case Sensitivity + +[Collection Name][Collection Name Property] is case insensitive (e.g. 'Collection' is the same as 'collection'), so trying to read from a [Data Storage Collection] named `"Collection"` while `"COLLECTION"` already exists would read from `"COLLECTION"`. + +[Key][Key Property] is case sensitive (e.g. `"user"` is not the same as `"USER"`). + +[Collection Scope Property]: {{< ref "#collection-scope" >}} +[Collection Name Property]: {{< ref "#collection-name" >}} +[Key Property]: {{< ref "#key" >}} +[Data Property]: {{< ref "#data" >}} +[Write Existing Key]: {{< ref "#write-to-a-data-storage-collection-with-a-key-that-already-exists">}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[ScopeDefinition]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.MainDoc">}} +[ScopeOption]: {{< url path ="Cortex.Reference.DataTypes.Scopes.ScopeOption.MainDoc">}} +[Tenant]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.Tenant">}} +[System]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.System">}} +[Package]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.Package">}} +[Flow]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.Flow">}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[ArgumentException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentException" >}} +[ServiceDoesNotExistException]: {{< url path = "Cortex.Reference.Exceptions.Services.ServiceDoesNotExistException.MainDoc">}} +[ServiceUnavailableException]: {{< url path = "Cortex.Reference.Exceptions.Services.ServiceUnavailableException.MainDoc">}} +[DataStorageCollectionNotFoundException]: {{< url path = "Cortex.Reference.Exceptions.DataStorage.DataStorageCollectionNotFoundException.MainDoc">}} +[KeyInDataStorageCollectionNotFoundException]: {{< url path = "Cortex.Reference.Exceptions.DataStorage.KeyInDataStorageCollectionNotFoundException.MainDoc">}} + +[Data Storage Collection]: {{< url path = "Cortex.Reference.Concepts.WorkingWith.Collections.WhatIsACollection.DataStorage">}} +[Data Storage Service]: {{< url path = "Cortex.Guides.CortexInnovation.CoreApplication.Services.DataStorageService.MainDoc">}} + +[Object]: {{< url path="Cortex.Reference.DataTypes.All.Object.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[UserCredentials]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.MainDoc">}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[Keys]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Keys.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/data-storage/wait-for-collection/_index.md b/content/en/docs/2024.11/Reference/Blocks/data-storage/wait-for-collection/_index.md new file mode 100644 index 000000000..597640892 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/data-storage/wait-for-collection/_index.md @@ -0,0 +1,5 @@ +--- +title: "Wait For Collection" +linkTitle: "Wait For Collection" +description: "Waits for a data storage collection to exist or not exist." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/data-storage/wait-for-collection/wait-for-collection-to-exist-block.md b/content/en/docs/2024.11/Reference/Blocks/data-storage/wait-for-collection/wait-for-collection-to-exist-block.md new file mode 100644 index 000000000..8bc5e7a2a --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/data-storage/wait-for-collection/wait-for-collection-to-exist-block.md @@ -0,0 +1,149 @@ +--- +title: "Wait For Collection To Exist" +linkTitle: "Wait For Collection To Exist" +description: "Waits for a data storage collection to exist." +--- +{{< figure src="/blocks/Cortex_Blocks_DataStorage_WaitForCollection_WaitForCollectionToExistBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.DataStorage.WaitForCollection.WaitForCollectionToExistBlock)

+ +## Description + +Waits for a specified [Data Storage Collection][] to exist within a [Collection Scope][Collection Scope Property]. + +## Examples + +### Wait for a Data Storage Collection to exist + +This example will wait for a [Data Storage Collection][] `"users"` that is only accessible by flows that are scoped to the same [Tenant] and [System] specified by the [CollectionScope][Collection Scope Property], to exist. In this example `"users"` does not already exist. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Collection Scope][Collection Scope Property] | `($)Scope` with value `{"Tenant": "ScopeOption.Current", "System": "ScopeOption.Current", "Package": "ScopeOption.All", "Flow": "ScopeOption.All"}`.

In this example `($)Scope` has been set up using the following [Expression][]:

`new ScopeDefinition(tenant: ScopeOption.Current, system: ScopeOption.Current, package: ScopeOption.All, flow: ScopeOption.All)`| `($)Scope` is a variable of type [ScopeDefinition][] | +| [Collection Name][Collection Name Property] | `($)CollectionName` with value `"users"` | `($)CollectionName` is a variable of type [String][] | + +#### Result + +Waiting for the `"users"` [Data Storage Collection][] to exist results in the execution waiting until the desired [Collection][Collection Name Property] exists; see [Create Collection][]. + +### Wait for a Data Storage Collection that already exists to exist + +This example will wait for a [Data Storage Collection][] `"users"` that is only accessible by flows that are scoped to the same [Tenant] and [System] specified by the [CollectionScope][Collection Scope Property], to exist. In this example `"users"` already exists and contains the following keys and data: + +|Key | Data | +-------------|--------------| +|`"user1"` | `{"Domain": "domain", "Username": "user1", "Password": "encryptedPassword"}` | +|`"user2"` | `{"Domain": "domain", "Username": "user2", "Password": "encryptedPassword"}` | + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Collection Scope][Collection Scope Property] | `($)Scope` with value `{"Tenant": "ScopeOption.Current", "System": "ScopeOption.Current", "Package": "ScopeOption.All", "Flow": "ScopeOption.All"}`.

In this example `($)Scope` has been set up using the following [Expression][]:

`new ScopeDefinition(tenant: ScopeOption.Current, system: ScopeOption.Current, package: ScopeOption.All, flow: ScopeOption.All)`| `($)Scope` is a variable of type [ScopeDefinition][] | +| [Collection Name][Collection Name Property] | `($)CollectionName` with value `"users"` | `($)CollectionName` is a variable of type [String][] | + +#### Result + +Waiting for the `"users"` [Data Storage Collection][] to exist results in the execution progressing as the collection `"users"` already exists. + +## Properties + +### Collection Scope + +The [Collection Scope][Collection Scope Property] to wait for the [Data Storage Collection][] to exist in. + +| | | +|--------------------|---------------------------| +| Data Type | [ScopeDefinition] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [Collection Scope][Collection Scope Property] with value shown below | + +```json +{ + "Tenant": "ScopeOption.Current", + "System": "ScopeOption.Current", + "Package": "ScopeOption.Current", + "Flow": "ScopeOption.All" +} + +``` + +### Collection Name + +The name of the [Data Storage Collection][] to wait for. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)CollectionName` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [ArgumentException][] | Thrown when [Tenant][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| | Thrown when [System][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| | Thrown when [Package][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| | Thrown when [Flow][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| [PropertyEmptyException][] | Thrown when the [Collection Name][Collection Name Property] is empty (i.e. `""`).| +| [PropertyNullException][] | Thrown when the [Collection Scope][Collection Scope Property] is `null`. | +| | Thrown when the [Collection Name][Collection Name Property] is `null`. | + +## Remarks + +### Block Timeout + +This block has a default [Block Timeout][] of 60 seconds. If the execution waits for longer than 60 seconds the block will throw a [BlockTimeoutException][]. + +### Case Sensitivity + +[Collection Name][Collection Name Property] is case insensitive (e.g. `"Collection"` is the same as `"collection"`), so trying to wait for a [Data Storage Collection][] named `"Collection"` to exist while `"COLLECTION"` already exists would cause the execution to progress; see [Wait for a Data Storage Collection that already exists to exist][Collection Already Exists]. + +[Collection Scope Property]: {{< ref "#collection-scope" >}} +[Collection Name Property]: {{< ref "#collection-name" >}} +[Collection Already Exists]: {{< ref +"#wait-for-a-data-storage-collection-that-already-exists-to-exist" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[ScopeDefinition]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.MainDoc">}} +[ScopeOption]: {{< url path ="Cortex.Reference.DataTypes.Scopes.ScopeOption.MainDoc">}} +[Tenant]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.Tenant">}} +[System]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.System">}} +[Package]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.Package">}} +[Flow]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.Flow">}} +[Block Timeout]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.CommonProperties.BlockTimeoutProperty" >}} + +[BlockTimeoutException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.BlockTimeoutException.MainDoc" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[ArgumentException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentException" >}} + +[Data Storage Collection]: {{< url path = "Cortex.Reference.Concepts.WorkingWith.Collections.WhatIsACollection.DataStorage">}} +[Data Storage Service]: {{< url path = "Cortex.Guides.CortexInnovation.CoreApplication.Services.DataStorageService.MainDoc">}} +[Create Collection]: {{< url path = "Cortex.Reference.Blocks.DataStorage.CreateCollection.CreateCollectionBlock.MainDoc">}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[UserCredentials]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.MainDoc">}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[Keys]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Keys.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/data-storage/wait-for-collection/wait-for-collection-to-not-exist-block.md b/content/en/docs/2024.11/Reference/Blocks/data-storage/wait-for-collection/wait-for-collection-to-not-exist-block.md new file mode 100644 index 000000000..324a1f416 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/data-storage/wait-for-collection/wait-for-collection-to-not-exist-block.md @@ -0,0 +1,154 @@ +--- +title: "Wait For Collection To Not Exist" +linkTitle: "Wait For Collection To Not Exist" +description: "Waits for a data storage collection to not exist." +--- +{{< figure src="/blocks/Cortex_Blocks_DataStorage_WaitForCollection_WaitForCollectionToNotExistBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.DataStorage.WaitForCollection.WaitForCollectionToNotExistBlock)

+ +## Description + +Waits for a specified [Data Storage Collection][] to not exist within a [Collection Scope][Collection Scope Property]. + +## Examples + +### Wait for a Data Storage Collection to not exist + +This example will wait for a [Data Storage Collection][] named `"users"` that is only accessible by flows that are scoped to the same [Tenant] and [System] specified by the [Collection Scope][Collection Scope Property], to not exist. In this example `"users"` already exists and contains the following keys and data: + +|Key | Data | +-------------|--------------| +|`"user1"` | `{"Domain": "domain", "Username": "user1", "Password": "encryptedPassword"}` | +|`"user2"` | `{"Domain": "domain", "Username": "user2", "Password": "encryptedPassword"}` | + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Collection Scope][Collection Scope Property] | `($)Scope` with value `{"Tenant": "ScopeOption.Current", "System": "ScopeOption.Current", "Package": "ScopeOption.All", "Flow": "ScopeOption.All"}`.

In this example `($)Scope` has been set up using the following [Expression][]:

`new ScopeDefinition(tenant: ScopeOption.Current, system: ScopeOption.Current, package: ScopeOption.All, flow: ScopeOption.All)`| `($)Scope` is a variable of type [ScopeDefinition][] | +| [Collection Name][Collection Name Property] | `($)CollectionName` with value `"users"` | `($)CollectionName` is a variable of type [String][] | + +#### Result + +Waiting for the `"users"` [Data Storage Collection][] to not exist results in the execution waiting until the desired [Collection][Collection Name Property] does not exist; see [Delete Collection][Deleted]. + +*** + +### Wait for a Data Storage Collection to not exist when it does not already exist + +This example will wait for a [Data Storage Collection][] named `"users"` that is only accessible by flows that are scoped to the same [Tenant] and [System] specified by the [Collection Scope][Collection Scope Property], to not exist. In this example `"users"` does not already exist. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Collection Scope][Collection Scope Property] | `($)Scope` with value `{"Tenant": "ScopeOption.Current", "System": "ScopeOption.Current", "Package": "ScopeOption.All", "Flow": "ScopeOption.All"}`.

In this example `($)Scope` has been set up using the following [Expression][]:

`new ScopeDefinition(tenant: ScopeOption.Current, system: ScopeOption.Current, package: ScopeOption.All, flow: ScopeOption.All)`| `($)Scope` is a variable of type [ScopeDefinition][] | +| [Collection Name][Collection Name Property] | `($)CollectionName` with value `"users"` | `($)CollectionName` is a variable of type [String][] | + +#### Result + +Waiting for the `"users"` [Data Storage Collection][] to not exist results in the execution progressing as the collection `"users"` does not exist. + +*** + +## Properties + +### Collection Scope + +The [Collection Scope][Collection Scope Property] to wait for the [Data Storage Collection][] to not exist in. + +| | | +|--------------------|---------------------------| +| Data Type | [ScopeDefinition] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [Collection Scope][Collection Scope Property] with value| + +```json +{ + "Tenant": "ScopeOption.Current", + "System": "ScopeOption.Current", + "Package": "ScopeOption.Current", + "Flow": "ScopeOption.All" +} +``` + +### Collection Name + +The name of the [Data Storage Collection][] to wait for. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)CollectionName` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [ArgumentException][] | Thrown when [Tenant][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| | Thrown when [System][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| | Thrown when [Package][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| | Thrown when [Flow][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| [PropertyEmptyException][] | Thrown when the [Collection Name][Collection Name Property] is empty (i.e. `""`).| +| [PropertyNullException][] | Thrown when the [Collection Scope][Collection Scope Property] is `null`. | +| | Thrown when the [Collection Name][Collection Name Property] is `null`. | + +## Remarks + +### Block Timeout + +This block has a default [Block Timeout][] of 60 seconds. If the execution waits for longer than 60 seconds the block will throw a [BlockTimeoutException][]. + +### Case Sensitivity + +[Collection Name][Collection Name Property] is case insensitive (e.g. `"Collection"` is the same as `"collection"`), so waiting for a [Data Storage Collection] named `"Collection"` to not exist while `"COLLECTION"` exists will cause the execution to wait; see [Wait for a Data Storage Collection to not exist][Wait For Collection To Not Exist]. + +[Collection Scope Property]: {{< ref "#collection-scope" >}} +[Collection Name Property]: {{< ref "#collection-name" >}} +[Data Property]: {{< ref "#data" >}} +[Wait For Collection To Not Exist]: {{< ref "#wait-for-a-data-storage-collection-to-not-exist" >}} +[Wait For Missing Key]: {{< ref "#wait-for-a-key-to-exist-in-a-data-storage-collection">}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[Block Timeout]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.CommonProperties.BlockTimeoutProperty" >}} + +[BlockTimeoutException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.BlockTimeoutException.MainDoc" >}} + +[ScopeDefinition]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.MainDoc">}} +[ScopeOption]: {{< url path ="Cortex.Reference.DataTypes.Scopes.ScopeOption.MainDoc">}} +[Tenant]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.Tenant">}} +[System]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.System">}} +[Package]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.Package">}} +[Flow]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.Flow">}} + +[Deleted]: {{< url path="Cortex.Reference.Blocks.DataStorage.DeleteCollection.DeleteCollectionBlock.MainDoc">}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[ArgumentException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentException" >}} + +[Data Storage Collection]: {{< url path = "Cortex.Reference.Concepts.WorkingWith.Collections.WhatIsACollection.DataStorage">}} +[Data Storage Service]: {{< url path = "Cortex.Guides.CortexInnovation.CoreApplication.Services.DataStorageService.MainDoc">}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[UserCredentials]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.MainDoc">}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[Keys]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Keys.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/data-storage/wait-for-key-in-collection/_index.md b/content/en/docs/2024.11/Reference/Blocks/data-storage/wait-for-key-in-collection/_index.md new file mode 100644 index 000000000..b69826477 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/data-storage/wait-for-key-in-collection/_index.md @@ -0,0 +1,5 @@ +--- +title: "Wait For Key In Collection" +linkTitle: "Wait For Key In Collection" +description: "Wait for changes to a key in a data storage collection." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/data-storage/wait-for-key-in-collection/wait-for-key-in-collection-to-be-set-block.md b/content/en/docs/2024.11/Reference/Blocks/data-storage/wait-for-key-in-collection/wait-for-key-in-collection-to-be-set-block.md new file mode 100644 index 000000000..3dbb217fe --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/data-storage/wait-for-key-in-collection/wait-for-key-in-collection-to-be-set-block.md @@ -0,0 +1,227 @@ +--- +title: "Wait For Key In Collection To Be Set" +linkTitle: "Wait For Key In Collection To Be Set" +description: "Waits for a key in a collection to be set." +--- +{{< figure src="/blocks/Cortex_Blocks_DataStorage_WaitForKeyInCollection_WaitForKeyInCollectionToBeSetBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.DataStorage.WaitForKeyInCollection.WaitForKeyInCollectionToBeSetBlock)

+ +## Description + +Waits for a specified [Key][Key Property] in a [Data Storage Collection][] within a [Collection Scope][Collection Scope Property] to be set to a value and returns the [old][Old Value Property] and [new][New Value Property] values. + +## Examples + +### Wait for a Key to be set in a Data Storage Collection + +This example will wait for a [Key][Key Property] `"user1"` to be set in a [Data Storage Collection][] named `"users"` that is only accessible by flows that are scoped to the same [Tenant] and [System] specified by the [Collection Scope][Collection Scope Property]. In this example `"users"` already exists and contains the following following keys and data: + +|Key | Data | +-------------|--------------| +|`"user1"` | `{"Domain": "domain", "Username": "user1", "Password": "encryptedPassword"}` | +|`"user2"` | `{"Domain": "domain", "Username": "user2", "Password": "encryptedPassword"}` | + +In this example a separate flow with access to `"users"` has a [Write Data With Key][Write Data With Key] block that will act on `"users"` to update the following key and data: +|Key | Data | +-------------|--------------| +|`"user1"` | `{"Domain": "newDomain", "Username": "newUser1", "Password": "encryptedPassword"}` | + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Collection Scope][Collection Scope Property] | `($)Scope` with value `{"Tenant": "ScopeOption.Current", "System": "ScopeOption.Current", "Package": "ScopeOption.All", "Flow": "ScopeOption.All"}`.

In this example `($)Scope` has been set up using the following [Expression][]:

`new ScopeDefinition(tenant: ScopeOption.Current, system: ScopeOption.Current, package: ScopeOption.All, flow: ScopeOption.All)`| `($)Scope` is a variable of type [ScopeDefinition][] | +| [Collection Name][Collection Name Property] | `($)CollectionName` with value `"users"` | `($)CollectionName` is a variable of type [String][] | +| [Key][Key Property] | `($)Key` with value `"user1"` | `($)Key` is a variable of type [String][] | +| [Old Value][Old Value Property] | `($)OldValue`, with no value | `($)OldValue` is a variable of type [dynamic][] | +| [New Value][New Value Property] | `($)NewValue`, with no value | `($)NewValue` is a variable of type [dynamic][] | + +#### Result + +Waiting for `"user1"` to be set in the [Data Storage Collection][] results in the execution waiting until the [Key][Key Property] `"user1"` is updated to have any value; see [Write Data With Key][Write Data With Key]. +On the update to the value of `"user1"`, [Old Value][Old Value Property] will have the value `{"Domain": "domain", "Username": "user1", "Password": "encryptedPassword"}`. [New Value][New Value Property] will have the value `{"Domain": "newDomain", "Username": "newUser1", "Password": "encryptedPassword"}`. + +*** + +### Wait for a Key to be set in a Data Storage Collection where the Key does not already exist + +This example will wait for a [Key][Key Property] `"user3"` to be set in a [Data Storage Collection][] named `"users"` that is only accessible by flows that are scoped to the same [Tenant] and [System] specified by the [Collection Scope][Collection Scope Property]. In this example `"users"` already exists and contains the following following keys and data: + +|Key | Data | +-------------|--------------| +|`"user1"` | `{"Domain": "domain", "Username": "user1", "Password": "encryptedPassword"}` | +|`"user2"` | `{"Domain": "domain", "Username": "user2", "Password": "encryptedPassword"}` | + +In this example a separate flow with access to `"users"` has a [Write Data With Key][Write Data With Key] block that will act on `"users"` to add the following key and data: +|Key | Data | +-------------|--------------| +|`"user3"` | `{"Domain": "domain", "Username": "user3", "Password": "encryptedPassword"}` | + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Collection Scope][Collection Scope Property] | `($)Scope` with value `{"Tenant": "ScopeOption.Current", "System": "ScopeOption.Current", "Package": "ScopeOption.All", "Flow": "ScopeOption.All"}`.

In this example `($)Scope` has been set up using the following [Expression][]:

`new ScopeDefinition(tenant: ScopeOption.Current, system: ScopeOption.Current, package: ScopeOption.All, flow: ScopeOption.All)`| `($)Scope` is a variable of type [ScopeDefinition][] | +| [Collection Name][Collection Name Property] | `($)CollectionName` with value `"users"` | `($)CollectionName` is a variable of type [String][] | +| [Key][Key Property] | `($)Key` with value `"user3"` | `($)Key` is a variable of type [String][] | +| [Old Value][Old Value Property] | `($)OldValue`, with no value | `($)OldValue` is a variable of type [dynamic][] | +| [New Value][New Value Property] | `($)NewValue`, with no value | `($)NewValue` is a variable of type [dynamic][] | + +#### Result + +Waiting for `"user3"` to be set in the [Data Storage Collection][] results in the execution waiting until the [Key][Key Property] `"user3"` is created; see [Write Data With Key][Write Data With Key]. +On the creation of `"user3"` [Old Value][Old Value Property] will have the value `null`, as the key did not exist before being set to a value. +[New Value][New Value Property] will have the value `{"Domain": "domain", "Username": "user3", "Password": "encryptedPassword"}`. + +*** + +## Properties + +### Collection Scope + +The [Collection Scope][Collection Scope Property] containing the [Data Storage Collection][] to wait for. + +| | | +|--------------------|---------------------------| +| Data Type | [ScopeDefinition] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [Collection Scope][Collection Scope Property] with value show below | + +```json +{ + "Tenant": "ScopeOption.Current", + "System": "ScopeOption.Current", + "Package": "ScopeOption.Current", + "Flow": "ScopeOption.All" +} + +``` + +### Collection Name + +The name of the [Data Storage Collection][] containing the [Key][Key Property] to wait for. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)CollectionName` with no value | + +### Key + +The [Key][Key Property] to wait for. + +For more information about what a key is, please see [Keys]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Key` with no value | + +### Old Value + +The [Old Value][Old Value Property] associated with the key in the [Data Storage Collection][], i.e. before setting a value. +| | | +|--------------------|---------------------------| +| Data Type | [dynamic][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)OldValue` with no value | + +### New Value + +The [New Value][New Value Property] associated with the key in the [Data Storage Collection][], i.e. after setting a value. [New Value][New Value Property] can have the same value as [Old Value][Old Value Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [dynamic][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)NewValue` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [ArgumentException][] | Thrown when [Tenant][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| | Thrown when [System][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| | Thrown when [Package][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| | Thrown when [Flow][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| [PropertyEmptyException][] | Thrown when the [Collection Name][Collection Name Property] is empty (i.e. `""`).| +| [PropertyNullException][] | Thrown when the [Collection Scope][Collection Scope Property] is `null`. | +| | Thrown when the [Collection Name][Collection Name Property] is `null`. | +| | Thrown when the [Key][Key Property] is `null` | + +## Remarks + +### Block Timeout + +This block has a default [Block Timeout][] of 60 seconds. If the execution waits for longer than 60 seconds the block will throw a [BlockTimeoutException][]. + +### Case Sensitivity + +[Collection Name][Collection Name Property] is case insensitive (e.g. `"Collection"` is the same as `"collection"`), so waiting for a [Key][Key Property] `"key"` to be set in a [Data Storage Collection][] named `"Collection"` while `"COLLECTION"` already contains a key `"key"` will cause the execution to progress if the [Key][Key Property] `"key"` in the [Collection Scope][Collection Scope Property] is set. + +[Key][Key Property] is case sensitive (e.g. `"user"` is not the same as `"USER"`). + +### Waiting for a Key to Be Set in a Collection That Does Not Exist + +Waiting for a key to be set, in a collection that doesn't exist, it is treated the same as when waiting for a key that does not exist to be set; see [Wait for a Key to be set in a Data Storage Collection where the Key does not already exist][Wait For Missing Key]. + +[Collection Scope Property]: {{< ref "#collection-scope" >}} +[Collection Name Property]: {{< ref "#collection-name" >}} +[Key Property]: {{< ref "#key" >}} +[Data Property]: {{< ref "#data" >}} +[Wait For Missing Key]: {{< ref +"#wait-for-a-key-to-be-set-in-a-data-storage-collection-where-the-key-does-not-already-exist">}} +[Old Value Property]: {{< ref "#old-value" >}} +[New Value Property]: {{< ref "#new-value" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[ScopeDefinition]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.MainDoc">}} +[ScopeOption]: {{< url path ="Cortex.Reference.DataTypes.Scopes.ScopeOption.MainDoc">}} +[Tenant]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.Tenant">}} +[System]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.System">}} +[Package]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.Package">}} +[Flow]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.Flow">}} +[Block Timeout]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.CommonProperties.BlockTimeoutProperty" >}} + +[BlockTimeoutException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.BlockTimeoutException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[ArgumentException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentException" >}} + +[Data Storage Collection]: {{< url path = "Cortex.Reference.Concepts.WorkingWith.Collections.WhatIsACollection.DataStorage">}} +[Data Storage Service]: {{< url path = "Cortex.Guides.CortexInnovation.CoreApplication.Services.DataStorageService.MainDoc">}} +[Write Data With Key]: {{< url path = "Cortex.Reference.Blocks.DataStorage.WriteData.WriteDataWithKeyBlock.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[UserCredentials]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.MainDoc">}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[Keys]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Keys.MainDoc" >}} + +[Write Data With Key]: {{< url path="Cortex.Reference.Blocks.DataStorage.WriteData.WriteDataWithKeyBlock.MainDoc" >}} +[Delete Collection]: {{< url path="Cortex.Reference.Blocks.DataStorage.DeleteCollection.DeleteCollectionBlock.MainDoc" >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Blocks/data-storage/wait-for-key-in-collection/wait-for-key-in-collection-to-contain-value-block.md b/content/en/docs/2024.11/Reference/Blocks/data-storage/wait-for-key-in-collection/wait-for-key-in-collection-to-contain-value-block.md new file mode 100644 index 000000000..298f37e0e --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/data-storage/wait-for-key-in-collection/wait-for-key-in-collection-to-contain-value-block.md @@ -0,0 +1,198 @@ +--- +title: "Wait For Key In Collection To Contain Value" +linkTitle: "Wait For Key In Collection To Contain Value" +description: "Waits for a key in a collection to contain the specified value." +--- +{{< figure src="/blocks/Cortex_Blocks_DataStorage_WaitForKeyInCollection_WaitForKeyInCollectionToContainValueBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.DataStorage.WaitForKeyInCollection.WaitForKeyInCollectionToContainValueBlock)

+ +## Description + +Waits for a given [Key][Key Property] to contain the specified [Value][Value Property] in a [Data Storage Collection][] within a [Collection Scope][Collection Scope Property]. + +## Examples + +### Wait for a Key in a Data Storage Collection to contain Value + +This example will wait for a [Key][Key Property] `"user2"` to contain the [Value][Value Property] `{"Domain": "domain", "Username": "admin", "Password": "encryptedPassword"}` in the [Data Storage Collection][] named `"users"` that is only accessible by flows that are scoped to the same [Tenant] and [System] specified by the [Collection Scope][Collection Scope Property]. +In this example `"users"` already exists and contains the following keys and data: + +|Key | Data | +-------------|--------------| +|`"user1"` | `{"Domain": "domain", "Username": "user1", "Password": "encryptedPassword"}` | +|`"user2"` | `{"Domain": "domain", "Username": "user2", "Password": "encryptedPassword"}` | + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Collection Scope][Collection Scope Property] | `($)Scope` with value `{"Tenant": "ScopeOption.Current", "System": "ScopeOption.Current", "Package": "ScopeOption.All", "Flow": "ScopeOption.All"}`.

In this example `($)Scope` has been set up using the following [Expression][]:

`new ScopeDefinition(tenant: ScopeOption.Current, system: ScopeOption.Current, package: ScopeOption.All, flow: ScopeOption.All)`| `($)Scope` is a variable of type [ScopeDefinition][] | +| [Collection Name][Collection Name Property] | `($)CollectionName` with value `"users"` | `($)CollectionName` is a variable of type [String][] | +| [Key][Key Property] | `($)Key` with value `"user2"` | `($)Key` is a variable of type [String][] | +| [Value][Value Property] | `($)Value` with value `{"Domain": "domain", "Username": "admin", "Password": "encryptedPassword"}`.

In this example `($)Value` has been set up using the following [Expression][]:

`new UserCredentials(domain: "domain", username: "admin", password: "encryptedPassword")` | `($)Value` is a variable of type [UserCredentials][] | + +#### Result + +Waiting for `"user2"` to contain [Value][Value Property] `{"Domain": "domain", "Username": "admin", "Password": "encryptedPassword"}` in the [Data Storage Collection][] results in the execution waiting until the the key `"user2"` contains the desired [Value][Value Property]; see [Write Data With Key][Write Data With Key]. + +*** + +### Wait for a Key in a Data Storage Collection to contain Value which it already contains + +This example will wait for a [Key][Key Property] `"user2"` to contain the [Value][Value Property] `{"Domain": "domain", "Username": "user2", "Password": "encryptedPassword"}` in the [Data Storage Collection][] named `"users"` that is only accessible by flows that are scoped to the same [Tenant][] and [System][] specified by the [Collection Scope][Collection Scope Property]. +In this example `"users"` already exists and contains the following keys and data: + +|Key | Data | +-------------|--------------| +|`"user1"` | `{"Domain": "domain", "Username": "user1", "Password": "encryptedPassword"}` | +|`"user2"` | `{"Domain": "domain", "Username": "user2", "Password": "encryptedPassword"}` | + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Collection Scope][Collection Scope Property] | `($)Scope` with value `{"Tenant": "ScopeOption.Current", "System": "ScopeOption.Current", "Package": "ScopeOption.All", "Flow": "ScopeOption.All"}`.

In this example `($)Scope` has been set up using the following [Expression][]:

`new ScopeDefinition(tenant: ScopeOption.Current, system: ScopeOption.Current, package: ScopeOption.All, flow: ScopeOption.All)`| `($)Scope` is a variable of type [ScopeDefinition][] | +| [Collection Name][Collection Name Property] | `($)CollectionName` with value `"users"` | `($)CollectionName` is a variable of type [String][] | +| [Key][Key Property] | `($)Key` with value `"user2"` | `($)Key` is a variable of type [String][] | +| [Value][Value Property] | `($)Value` with value `{"Domain": "domain", "Username": "user2", "Password": "encryptedPassword"}`.

In this example `($)Value` has been set up using the following [Expression][]:

`new UserCredentials(domain: "domain", username: "user2", password: "encryptedPassword")` | `($)Value` is a variable of type [UserCredentials][] | + +#### Result + +Waiting for `"user2"` to contain `{"Domain": "domain", "Username": "user2", "Password": "encryptedPassword"}` in the [Data Storage Collection][] results in the execution progressing as the key `"user2"` already contains the desired [Value][Value Property]. + +*** + +## Properties + +### Collection Scope + +The [Collection Scope][Collection Scope Property] containing the [Data Storage Collection][] to wait for. + +| | | +|--------------------|---------------------------| +| Data Type | [ScopeDefinition] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [Collection Scope][Collection Scope Property] with value shown below | + +```json +{ + "Tenant": "ScopeOption.Current", + "System": "ScopeOption.Current", + "Package": "ScopeOption.Current", + "Flow": "ScopeOption.All" +} + +``` + +### Collection Name + +The name of the [Data Storage Collection][] containing the [Key][Key Property] and [Value][Value Property] to wait for. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)CollectionName` with no value | + +### Key + +The [Key][Key Property] containing the [Value][Value Property] to match. + +For more information about what a key is, please see [Keys]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Key` with no value | + +### Value + +The [Value][Value Property] to match. + +| | | +|--------------------|---------------------------| +| Data Type | [dynamic][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Value` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [ArgumentException][] | Thrown when [Tenant][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| | Thrown when [System][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| | Thrown when [Package][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| | Thrown when [Flow][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| [PropertyEmptyException][] | Thrown when the [Collection Name][Collection Name Property] is empty (i.e. `""`).| +| [PropertyNullException][] | Thrown when the [Collection Scope][Collection Scope Property] is `null`. | +| | Thrown when the [Collection Name][Collection Name Property] is `null`. | +| | Thrown when the [Key][Key Property] is `null`. | + +## Remarks + +### Block Timeout + +This block has a default [Block Timeout][] of 60 seconds. If the execution waits for longer than 60 seconds the block will throw a [BlockTimeoutException][]. + +### Case Sensitivity + +[Collection Name][Collection Name Property] is case insensitive (e.g. `"Collection"` is the same as `"collection"`), so waiting for a [Key][Key Property] `"key"` in a [Data Storage Collection][] named `"Collection"` to contain a [Value][Value Property] while `"COLLECTION"` already contains `"key"` will cause the execution to progress. + +[Key][Key Property] is case sensitive (e.g. `"user"` is not the same as `"USER"`). + +### Waiting For a Key in a Collection That Does Not Exist to Contain a Value + +When trying to wait for a [Key][Key Property] to contain a value and the specified [Data Storage Collection][] does not exist, it is treated the same as when a key does not have a matching value; see [Wait for a Key in a Data Storage Collection to contain Value][Waiting For Key Value When Different]. + +### Waiting For a Key That Does Not Exist in a Collection To Contain a Value + +When trying to wait for a [Key][Key Property] that does not exist, in a collection that does exist, to contain a value, it is treated the same as when a key does not have a matching value; see [Wait for a Key in a Data Storage Collection to contain Value][Waiting For Key Value When Different]. + +[Collection Scope Property]: {{< ref "#collection-scope" >}} +[Collection Name Property]: {{< ref "#collection-name" >}} +[Key Property]: {{< ref "#key" >}} +[Value Property]: {{< ref "#value" >}} +[Waiting For Key Value When Different]: {{< ref "#wait-for-a-key-in-a-data-storage-collection-to-contain-value">}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[ScopeDefinition]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.MainDoc">}} +[ScopeOption]: {{< url path ="Cortex.Reference.DataTypes.Scopes.ScopeOption.MainDoc">}} +[Tenant]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.Tenant">}} +[System]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.System">}} +[Package]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.Package">}} +[Flow]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.Flow">}} +[Block Timeout]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.CommonProperties.BlockTimeoutProperty" >}} + +[BlockTimeoutException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.BlockTimeoutException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[ArgumentException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentException" >}} + +[Data Storage Collection]: {{< url path = "Cortex.Reference.Concepts.WorkingWith.Collections.WhatIsACollection.DataStorage">}} +[Write Data With Key]: {{< url path = "Cortex.Reference.Blocks.DataStorage.WriteData.WriteDataWithKeyBlock.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[UserCredentials]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.MainDoc">}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[Keys]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Keys.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/data-storage/wait-for-key-in-collection/wait-for-key-in-collection-to-exist-block.md b/content/en/docs/2024.11/Reference/Blocks/data-storage/wait-for-key-in-collection/wait-for-key-in-collection-to-exist-block.md new file mode 100644 index 000000000..2cbe8f5ba --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/data-storage/wait-for-key-in-collection/wait-for-key-in-collection-to-exist-block.md @@ -0,0 +1,182 @@ +--- +title: "Wait For Key In Collection To Exist" +linkTitle: "Wait For Key In Collection To Exist" +description: "Waits for a key in a collection to exist." +--- +{{< figure src="/blocks/Cortex_Blocks_DataStorage_WaitForKeyInCollection_WaitForKeyInCollectionToExistBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.DataStorage.WaitForKeyInCollection.WaitForKeyInCollectionToExistBlock)

+ +## Description + +Waits for a specified [Key][Key Property] to exist in a [Data Storage Collection][] within a [Collection Scope][Collection Scope Property]. + +## Examples + +### Wait for a Key to exist in a Data Storage Collection + +This example will wait for a [Key][Key Property] `"user3"` to exist in a [Data Storage Collection][] named `"users"` that is only accessible by flows that are scoped to the same [Tenant] and [System] specified by the [Collection Scope][Collection Scope Property]. In this example `"users"` already exists and contains the following following keys and data: + +|Key | Data | +-------------|--------------| +|`"user1"` | `{"Domain": "domain", "Username": "user1", "Password": "encryptedPassword"}` | +|`"user2"` | `{"Domain": "domain", "Username": "user2", "Password": "encryptedPassword"}` | + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Collection Scope][Collection Scope Property] | `($)Scope` with value `{"Tenant": "ScopeOption.Current", "System": "ScopeOption.Current", "Package": "ScopeOption.All", "Flow": "ScopeOption.All"}`.

In this example `($)Scope` has been set up using the following [Expression][]:

`new ScopeDefinition(tenant: ScopeOption.Current, system: ScopeOption.Current, package: ScopeOption.All, flow: ScopeOption.All)`| `($)Scope` is a variable of type [ScopeDefinition][] | +| [Collection Name][Collection Name Property] | `($)CollectionName` with value `"users"` | `($)CollectionName` is a variable of type [String][] | +| [Key][Key Property] | `($)Key` with value `"user3"` | `($)Key` is a variable of type [String][] | + +#### Result + +Waiting for `"user3"` to exist in the [Data Storage Collection][] results in the execution waiting until `"users"` contains the desired [Key][Key Property]; see [Write Data With Key][Write Data With Key]. + +### Wait for a Key to exist in a Data Storage Collection where the Key already exists + +This example will wait for a [Key][Key Property] `"user2"` to exist in a [Data Storage Collection][] named `"users"` that is only accessible by flows that are scoped to the same [Tenant] and [System] specified by the [Collection Scope][Collection Scope Property]. In this example `"users"` already exists and contains the following keys and data: + +|Key | Data | +-------------|--------------| +|`"user1"` | `{"Domain": "domain", "Username": "user1", "Password": "encryptedPassword"}` | +|`"user2"` | `{"Domain": "domain", "Username": "user2", "Password": "encryptedPassword"}` | + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Collection Scope][Collection Scope Property] | `($)Scope` with value `{"Tenant": "ScopeOption.Current", "System": "ScopeOption.Current", "Package": "ScopeOption.All", "Flow": "ScopeOption.All"}`.

In this example `($)Scope` has been set up using the following [Expression][]:

`new ScopeDefinition(tenant: ScopeOption.Current, system: ScopeOption.Current, package: ScopeOption.All, flow: ScopeOption.All)`| `($)Scope` is a variable of type [ScopeDefinition][] | +| [Collection Name][Collection Name Property] | `($)CollectionName` with value `"users"` | `($)CollectionName` is a variable of type [String][] | +| [Key][Key Property] | `($)Key` with value `"user2"` | `($)Key` is a variable of type [String][] | + +#### Result + +Waiting for `"user2"` to exist in the [Data Storage Collection][] results in the execution progressing as `"users"` already contains the desired [Key][Key Property]. + +*** + +## Properties + +### Collection Scope + +The [Collection Scope][Collection Scope Property] containing the [Data Storage Collection][] to wait for. + +| | | +|--------------------|---------------------------| +| Data Type | [ScopeDefinition] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [Collection Scope][Collection Scope Property] with value show below | + +```json +{ + "Tenant": "ScopeOption.Current", + "System": "ScopeOption.Current", + "Package": "ScopeOption.Current", + "Flow": "ScopeOption.All" +} + +``` + +### Collection Name + +The name of the [Data Storage Collection][] containing the [Key][Key Property] to wait for. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)CollectionName` with no value | + +### Key + +The [Key][Key Property] to wait for. + +For more information about what a key is, please see [Keys]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Key` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [ArgumentException][] | Thrown when [Tenant][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| | Thrown when [System][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| | Thrown when [Package][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| | Thrown when [Flow][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| [PropertyEmptyException][] | Thrown when the [Collection Name][Collection Name Property] is empty (i.e. `""`).| +| [PropertyNullException][] | Thrown when the [Collection Scope][Collection Scope Property] is `null`. | +| | Thrown when the [Collection Name][Collection Name Property] is `null`. | +| | Thrown when the [Key][Key Property] is `null` | + +## Remarks + +### Block Timeout + +This block has a default [Block Timeout][] of 60 seconds. If the execution waits for longer than 60 seconds the block will throw a [BlockTimeoutException][]. + +### Case Sensitivity + +[Collection Name][Collection Name Property] is case insensitive (e.g. `"Collection"` is the same as `"collection"`), so waiting for a [Key][Key Property] `"key"` to exist in a [Data Storage Collection][] named `"Collection"` while `"COLLECTION"` already contains a key `"key"` will cause the execution to progress. + +[Key][Key Property] is case sensitive (e.g. `"user"` is not the same as `"USER"`). + +### Waiting For a Key to Exist in a Collection That Doesn't Exist + +When trying to wait for a key to exist, in a collection that doesn't exist, it is treated the same as when a key does not exist in a collection that does exist; see [Wait for a Key to exist in a Data Storage Collection][Wait For Missing Key]. + +[Collection Scope Property]: {{< ref "#collection-scope" >}} +[Collection Name Property]: {{< ref "#collection-name" >}} +[Key Property]: {{< ref "#key" >}} +[Data Property]: {{< ref "#data" >}} +[Wait For Missing Key]: {{< ref +"#wait-for-a-key-to-exist-in-a-data-storage-collection">}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[ScopeDefinition]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.MainDoc">}} +[ScopeOption]: {{< url path ="Cortex.Reference.DataTypes.Scopes.ScopeOption.MainDoc">}} +[Tenant]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.Tenant">}} +[System]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.System">}} +[Package]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.Package">}} +[Flow]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.Flow">}} +[Block Timeout]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.CommonProperties.BlockTimeoutProperty" >}} + +[BlockTimeoutException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.BlockTimeoutException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[ArgumentException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentException" >}} + +[Data Storage Collection]: {{< url path = "Cortex.Reference.Concepts.WorkingWith.Collections.WhatIsACollection.DataStorage">}} +[Data Storage Service]: {{< url path = "Cortex.Guides.CortexInnovation.CoreApplication.Services.DataStorageService.MainDoc">}} +[Write Data With Key]: {{< url path = "Cortex.Reference.Blocks.DataStorage.WriteData.WriteDataWithKeyBlock.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[UserCredentials]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.MainDoc">}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[Keys]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Keys.MainDoc" >}} + +[Write Data With Key]: {{< url path="Cortex.Reference.Blocks.DataStorage.WriteData.WriteDataWithKeyBlock.MainDoc">}} diff --git a/content/en/docs/2024.11/Reference/Blocks/data-storage/wait-for-key-in-collection/wait-for-key-in-collection-to-not-exist-block.md b/content/en/docs/2024.11/Reference/Blocks/data-storage/wait-for-key-in-collection/wait-for-key-in-collection-to-not-exist-block.md new file mode 100644 index 000000000..aab4007de --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/data-storage/wait-for-key-in-collection/wait-for-key-in-collection-to-not-exist-block.md @@ -0,0 +1,177 @@ +--- +title: "Wait For Key In Collection To Not Exist" +linkTitle: "Wait For Key In Collection To Not Exist" +description: "Waits for a key in a collection to not exist." +--- +{{< figure src="/blocks/Cortex_Blocks_DataStorage_WaitForKeyInCollection_WaitForKeyInCollectionToNotExistBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.DataStorage.WaitForKeyInCollection.WaitForKeyInCollectionToNotExistBlock)

+ +## Description + +Waits for a specified [Key][Key Property] to not exist in a [Data Storage Collection][] within a [Collection Scope][Collection Scope Property]. + +## Examples + +### Wait for a Key in a Data Storage Collection to not exist + +This example will wait for a [Key][Key Property] `"user2"` to exist in the [Data Storage Collection][] named `"users"` that is only accessible by flows that are scoped to the same [Tenant] and [System] specified by the [Collection Scope][Collection Scope Property]. +In this example `"users"` already exists and contains the following keys and data: + +|Key | Data | +-------------|--------------| +|`"user1"` | `{"Domain": "domain", "Username": "user1", "Password": "encryptedPassword"}` | +|`"user2"` | `{"Domain": "domain", "Username": "user2", "Password": "encryptedPassword"}` | + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Collection Scope][Collection Scope Property] | `($)Scope` with value `{"Tenant": "ScopeOption.Current", "System": "ScopeOption.Current", "Package": "ScopeOption.All", "Flow": "ScopeOption.All"}`.

In this example `($)Scope` has been set up using the following [Expression][]:

`new ScopeDefinition(tenant: ScopeOption.Current, system: ScopeOption.Current, package: ScopeOption.All, flow: ScopeOption.All)`| `($)Scope` is a variable of type [ScopeDefinition][] | +| [Collection Name][Collection Name Property] | `($)CollectionName` with value `"users"` | `($)CollectionName` is a variable of type [String][] | +| [Key][Key Property] | `($)Key` with value `"user2"` | `($)Key` is a variable of type [String][] | + +#### Result + +Waiting for `"user2"` to not exist in the [Data Storage Collection][] results in the execution waiting until `"users"` does not contain the desired [Key][Key Property]; see [Delete Data With Key][]. + +*** + +### Wait for a Key in a Data Storage Collection to not exist where the Key does not already exist + +This example will wait for a [Key][Key Property] `"user3"` to exist in the [Data Storage Collection][] named `"users"` that is only accessible by flows that are scoped to the same [Tenant] and [System] specified by the [Collection Scope][Collection Scope Property]. +In this example `"users"` already exists and contains the following keys and data: + +|Key | Data | +-------------|--------------| +|`"user1"` | `{"Domain": "domain", "Username": "user1", "Password": "encryptedPassword"}` | +|`"user2"` | `{"Domain": "domain", "Username": "user2", "Password": "encryptedPassword"}` | + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Collection Scope][Collection Scope Property] | `($)Scope` with value `{"Tenant": "ScopeOption.Current", "System": "ScopeOption.Current", "Package": "ScopeOption.All", "Flow": "ScopeOption.All"}`.

In this example `($)Scope` has been set up using the following [Expression][]:

`new ScopeDefinition(tenant: ScopeOption.Current, system: ScopeOption.Current, package: ScopeOption.All, flow: ScopeOption.All)`| `($)Scope` is a variable of type [ScopeDefinition][] | +| [Collection Name][Collection Name Property] | `($)CollectionName` with value `"users"` | `($)CollectionName` is a variable of type [String][] | +| [Key][Key Property] | `($)Key` with value `"user3"` | `($)Key` is a variable of type [String][] | + +#### Result + +Waiting for `"user3"` to not exist in the [Data Storage Collection][] results in the execution progressing as `"users"` does not contain the desired [Key][Key Property]. + +*** + +## Properties + +### Collection Scope + +The [Collection Scope][Collection Scope Property] containing the [Data Storage Collection][] to wait for. + +| | | +|--------------------|---------------------------| +| Data Type | [ScopeDefinition] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [Collection Scope][Collection Scope Property] with value shown below | + +```json +{ + "Tenant": "ScopeOption.Current", + "System": "ScopeOption.Current", + "Package": "ScopeOption.Current", + "Flow": "ScopeOption.All" +} + +``` + +### Collection Name + +The name of the [Data Storage Collection][] containing the [Key][Key Property] to wait for. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)CollectionName` with no value | + +### Key + +The [Key][Key Property] to wait for. + +For more information about what a key is, please see [Keys]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Key` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [ArgumentException][] | Thrown when [Tenant][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| | Thrown when [System][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| | Thrown when [Package][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| | Thrown when [Flow][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| [PropertyEmptyException][] | Thrown when the [Collection Name][Collection Name Property] is empty (i.e. `""`).| +| [PropertyNullException][] | Thrown when the [Collection Scope][Collection Scope Property] is `null`. | +| | Thrown when the [Collection Name][Collection Name Property] is `null`. | +| | Thrown when the [Key][Key Property] is `null`. | + +## Remarks + +### Block Timeout + +This block has a default [Block Timeout][] of 60 seconds. If the execution waits for longer than 60 seconds the block will throw a [BlockTimeoutException][]. + +### Case Sensitivity + +[Collection Name][Collection Name Property] is case insensitive (e.g. `"Collection"` is the same as `"collection"`), so trying to wait for a key `"key"` to not exist in a [Data Storage Collection][] named `"Collection"` while `"COLLECTION"` already exists would wait for `"key"` to not exist in the [Data Storage Collection][] `"COLLECTION"`. + +[Key][Key Property] is case sensitive (e.g. `"user"` is not the same as `"USER"`). + +### Waiting For a Key in a Collection That Does Not Exist + +When trying to wait for a [Key][Key Property] contained in a collection that does not exist, it is treated the same as when a key does not exist in a collection; see [Wait for a Key in a Data Storage Collection to not exist where the Key does not already exist][Wait For Key To Not Exist]. + +[Collection Scope Property]: {{< ref "#collection-scope" >}} +[Collection Name Property]: {{< ref "#collection-name" >}} +[Key Property]: {{< ref "#key" >}} +[Wait For Key To Not Exist]: {{< ref "#wait-for-a-key-in-a-data-storage-collection-to-not-exist-where-the-key-does-not-already-exist" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[ScopeDefinition]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.MainDoc">}} +[ScopeOption]: {{< url path ="Cortex.Reference.DataTypes.Scopes.ScopeOption.MainDoc">}} +[Tenant]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.Tenant">}} +[System]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.System">}} +[Package]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.Package">}} +[Flow]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.Flow">}} +[Block Timeout]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.CommonProperties.BlockTimeoutProperty" >}} + +[BlockTimeoutException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.BlockTimeoutException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[ArgumentException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentException" >}} + +[Data Storage Collection]: {{< url path = "Cortex.Reference.Concepts.WorkingWith.Collections.WhatIsACollection.DataStorage">}} +[Delete Data With Key]: {{< url path = "Cortex.Reference.Blocks.DataStorage.DeleteData.DeleteDataWithKeyBlock.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[Keys]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Keys.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/data-storage/write-data/_index.md b/content/en/docs/2024.11/Reference/Blocks/data-storage/write-data/_index.md new file mode 100644 index 000000000..1d223db89 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/data-storage/write-data/_index.md @@ -0,0 +1,5 @@ +--- +title: "Write Data" +linkTitle: "Write Data" +description: "Write data to a data storage collection." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/data-storage/write-data/write-data-with-key-block.md b/content/en/docs/2024.11/Reference/Blocks/data-storage/write-data/write-data-with-key-block.md new file mode 100644 index 000000000..bd7c4c30e --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/data-storage/write-data/write-data-with-key-block.md @@ -0,0 +1,209 @@ +--- +title: "Write Data With Key" +linkTitle: "Write Data With Key" +description: "Writes data to a data storage collection with the specified key." +--- +{{
}} + +# {{% param title %}} + +

(Cortex.Blocks.DataStorage.WriteData.WriteDataWithKeyBlock)

+ +## Description + +Writes [Data][Data Property] to a [Data Storage Collection][] with the specified [Key][Key Property]. + +## Examples + +### Write to a Data Storage Collection + +This example will attempt to write [Data][Data Property] to a [Data Storage Collection] named `"users"` that is only accessible by flows that are scoped to the same [Tenant] and [System] specified by the [Collection Scope][Collection Scope Property]. In this example `"users"` already exists and contains the following [Keys][Key Property] and [Data][Data Property]: + + |Key | Data | +-------------|--------------| + |`"user1"` | `{"Domain": "domain", "Username": "user1", "Password": "encryptedPassword"}` | + +The example will write the [Data][Data Property] `{"Domain": "domain", "Username": "user2", "Password": "encryptedPassword"}` of type [UserCredentials][] with the [Key][Key Property] `"user2"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Collection Scope][Collection Scope Property] | `($)Scope` with value `{"Tenant": "ScopeOption.Current", "System": "ScopeOption.Current", "Package": "ScopeOption.All", "Flow": "ScopeOption.All"}`.

In this example `($)Scope` has been set up using the following [Expression][]: `new ScopeDefinition(tenant: ScopeOption.Current, system: ScopeOption.Current, package: ScopeOption.All, flow: ScopeOption.All)`| `($)Scope` is a variable of type [ScopeDefinition][] | +| [Collection Name][Collection Name Property] | `($)CollectionName` with value `"users"` | `($)CollectionName` is a variable of type [String][] | +| [Key][Key Property] | `($)Key` with value `"user2"` | `($)Key` is a variable of type [String][] | +| [Data][Data Property] | `($)Data` with value `{"Domain": "domain", "Username": "user2", "Password": "encryptedPassword"}`.

In this example `($)Data` has been set up using the following [Expression][] `new UserCredentials(domain: "domain", username: "user2", password: "encryptedPassword")` | `($)Data` is a variable of type [UserCredentials][] | + +#### Result + +This writes the [Data][Data Property] `{"Domain": "domain", "Username": "user2", "Password": "encryptedPassword"}` with the [Key][Key Property] `"user2"` to the [Data Storage Collection][] named `"users"` as shown below: + +|Key | Data | +-------------|--------------| +|`"user1"` | `{"Domain": "domain", "Username": "user1", "Password": "encryptedPassword"}` | +|`"user2"` | `{"Domain": "domain", "Username": "user2", "Password": "encryptedPassword"}` | + +*** + +### Write to a Data Storage Collection with a Key that already exists + +This example will attempt to write [Data][Data Property] to a [Data Storage Collection] named `"users"` that is only accessible by flows that are scoped to the same [Tenant] and [System] specified by the [Collection Scope][Collection Scope Property]. In this example `"users"` already exists and contains the following [Keys][Key Property] and [Data][Data Property]: + +|Key | Data | +-------------|--------------| +|`"user1"` | `{"Domain": "domain", "Username": "user1", "Password": "encryptedPassword"}` | +|`"user2"` | `{"Domain": "domain", "Username": "user2", "Password": "encryptedPassword"}` | + +The example will write the [Data][Data Property] `{"Domain": "domain", "Username": "new user2", "Password": "encryptedPassword"}` of type [UserCredentials][] with the [Key][Key Property] `"user2"`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Collection Scope][Collection Scope Property] | `($)Scope` with value `{"Tenant": "ScopeOption.Current", "System": "ScopeOption.Current", "Package": "ScopeOption.All", "Flow": "ScopeOption.All"}`.

In this example `($)Scope` has been set up using the following [Expression][]: `new ScopeDefinition(tenant: ScopeOption.Current, system: ScopeOption.Current, package: ScopeOption.All, flow: ScopeOption.All)`| `($)Scope` is a variable of type [ScopeDefinition][] | +| [Collection Name][Collection Name Property] | `($)CollectionName` with value `"users"` | `($)CollectionName` is a variable of type [String][] | +| [Key][Key Property] | `($)Key` with value `"user2"` | `($)Key` is a variable of type [String][] | +| [Data][Data Property] | `($)Data` with value `{"Domain": "domain", "Username": "new user2", "Password": "encryptedPassword"}`.

In this example `($)Data` has been set up using the following [Expression][] `new UserCredentials(domain: "domain", username: "new user2", password: "encryptedPassword")` | `($)Data` is a variable of type [UserCredentials][] | + +#### Result + +This example will update the [Data][Data Property] stored to [Key][Key Property] `"user2"` to `{"Domain": "domain", "Username": "new user2", "Password": "encryptedPassword"}` of type [UserCredentials][] in the [Data Storage Collection][] named `"users"` as shown below. + +|Key | Data | +-------------|--------------| +|`"user1"` | `{"Domain": "domain", "Username": "user1", "Password": "encryptedPassword"}` | +|`"user2"` | `{"Domain": "domain", "Username": "new user2", "Password": "encryptedPassword"}` | + +*** + +## Properties + +### Collection Scope + +The [Collection Scope][Collection Scope Property] containing the [Data Storage Collection][] to write to. + +| | | +|--------------------|---------------------------| +| Data Type | [ScopeDefinition] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [Collection Scope][Collection Scope Property] with value show below | + +```json +{ + "Tenant": "ScopeOption.Current", + "System": "ScopeOption.Current", + "Package": "ScopeOption.Current", + "Flow": "ScopeOption.All" +} + +``` + +### Collection Name + +The name of the [Data Storage Collection][] to write to. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)CollectionName` with no value | + +### Key + +The [Key][Key Property] to add the [Data][Data Property] with. + +The [Key][Key Property] can't be `null` and must be unique within each [Data Storage Collection][]. + +For more information about what a key is, please see [Keys]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Key` with no value | + +### Data + +The [Data][Data Property] to be added to the [Data Storage Collection][] with the specified [Key][Key Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [dynamic][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Data` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [ArgumentException][] | Thrown when [Tenant][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| | Thrown when [System][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| | Thrown when [Package][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| | Thrown when [Flow][] is not one of the specified [ScopeOption][] types (e.g. `(ScopeOption)100`). | +| [DataStorageCollectionNotFoundException][] | Thrown when the [Collection Name][Collection Name Property] can not be found within the specified [Collection Scope][Collection Scope property]. +| [PropertyEmptyException][] | Thrown when the [Collection Name][Collection Name Property] is empty (i.e. `""`).| +| [PropertyNullException][] | Thrown when the [Collection Scope][Collection Scope Property] is `null`. | +| | Thrown when the [Collection Name][Collection Name Property] is `null`. | +| | Thrown when the [Key][Key Property] is `null` | +| [ServiceDoesNotExistException][] | Thrown when the [Data Storage Service][] does not exist. | +| [ServiceUnavailableException][] | Thrown when the [Data Storage Service][] is not healthy. | + +## Remarks + +### Writing With a Key That Already Exists + +When trying to write to a key that already exists in the [Data Storage Collection][] provided, the value of the key is overwritten; see example [Write to a Data Storage Collection with a Key that Already Exists][Write Existing Key]. + +### Case Sensitivity + +[Collection Name][Collection Name Property] is case insensitive (e.g. 'Collection' is the same as 'collection'), so trying to write to a [Data Storage Collection] named `"Collection"` while `"COLLECTION"` already exists would write to `"COLLECTION"`. + +[Key][Key Property] is case sensitive (e.g. `"user"` is not the same as `"USER"`). + +[Collection Scope Property]: {{< ref "#collection-scope" >}} +[Collection Name Property]: {{< ref "#collection-name" >}} +[Key Property]: {{< ref "#key" >}} +[Data Property]: {{< ref "#data" >}} +[Write Existing Key]: {{< ref "#write-to-a-data-storage-collection-with-a-key-that-already-exists">}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[ScopeDefinition]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.MainDoc">}} +[ScopeOption]: {{< url path ="Cortex.Reference.DataTypes.Scopes.ScopeOption.MainDoc">}} +[Tenant]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.Tenant">}} +[System]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.System">}} +[Package]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.Package">}} +[Flow]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.Flow">}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[ArgumentException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentException" >}} +[ServiceDoesNotExistException]: {{< url path = "Cortex.Reference.Exceptions.Services.ServiceDoesNotExistException.MainDoc">}} +[ServiceUnavailableException]: {{< url path = "Cortex.Reference.Exceptions.Services.ServiceUnavailableException.MainDoc">}} +[DataStorageCollectionNotFoundException]: {{< url path = "Cortex.Reference.Exceptions.DataStorage.DataStorageCollectionNotFoundException.MainDoc">}} + +[Data Storage Collection]: {{< url path = "Cortex.Reference.Concepts.WorkingWith.Collections.WhatIsACollection.DataStorage">}} +[Data Storage Service]: {{< url path = "Cortex.Guides.CortexInnovation.CoreApplication.Services.DataStorageService.MainDoc">}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[UserCredentials]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.MainDoc">}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[Keys]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Keys.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/data/_index.md b/content/en/docs/2024.11/Reference/Blocks/data/_index.md new file mode 100644 index 000000000..fb99deffc --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/data/_index.md @@ -0,0 +1,5 @@ +--- +title: "Data" +linkTitle: "Data" +description: "Blocks related to working with data sources." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/data/execute-data-command/_index.md b/content/en/docs/2024.11/Reference/Blocks/data/execute-data-command/_index.md new file mode 100644 index 000000000..4d20fea6d --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/data/execute-data-command/_index.md @@ -0,0 +1,5 @@ +--- +title: "Execute Data Command" +linkTitle: "Execute Data Command" +description: "Blocks related to executing commands against data sources." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/data/execute-data-command/execute-data-command-block-1.md b/content/en/docs/2024.11/Reference/Blocks/data/execute-data-command/execute-data-command-block-1.md new file mode 100644 index 000000000..4a8292d48 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/data/execute-data-command/execute-data-command-block-1.md @@ -0,0 +1,806 @@ +--- +title: "Execute Data Command" +linkTitle: "Execute Data Command" +description: "Connects to a specific data source and executes a Command, returning any object from the Command's result." +--- + +{{< figure src="/blocks/Cortex_Blocks_Data_ExecuteDataCommand_ExecuteDataCommandBlock_1.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Data.ExecuteDataCommand.ExecuteDataCommandBlock`1)

+ +## Description + +Connects to a data source (e.g. SQL Server) using the specified [Connection Details][Connection Details Property], and executes a [Command][Command Property] (e.g. `SELECT * FROM Table`), returning the [Result][Result Property]. + +[Close Connection][Close Connection Property] can be specified to choose whether the connection to the data source is closed or is kept open for use on subsequent Execute Command blocks. + +## Examples + +### Selecting Rows + +This example will select all rows and columns from a connected SQL Server data source which have an Id less than 3, saving the rows to the [Result][Result Property]. + +A [QueryCommand][Command Types QueryCommand] is used throughout this example to select data from the data source, however, both an [Command][Command Types Command] or [Commands][Command Types Commands] could also be used to the same effect. + +The data source contains a `Table` with the following rows and columns before the command is executed: +| Id | FirstColumn | SecondColumn | +|----|-------------|--------------| +| `1` | `"FirstColumn1"` | `"SecondColumn1"` | +| `2` | `"FirstColumn2"` | `"SecondColumn2"` | +| `3` | `"FirstColumn3"` | `"SecondColumn3"` | + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Command][Command Property] | `($)Command`, with value `{"CommandText": "SELECT * FROM Table WHERE Id < @SelectParameter", "Parameters": {"SelectParameter": 3}}`

In this example `($)Command` has been set using the following [Expression][]:

`new QueryCommand("SELECT * FROM Table WHERE Id < @SelectParameter", new {SelectParameter = 3})` | `($)Command` is a variable of type [QueryCommand][] | +| [Connection Details][Connection Details Property] | `($)ConnectionDetails`, with value `{"ConnectionString": "Server=myServerAddress;Database=myDataBase;Trusted_Connection=True;"}` | `($)ConnectionDetails` is a variable of type [SqlServerConnectionDetails][] | +| [Close Connection][Close Connection Property] | `($)CloseConnection`, with value `true` | `($)CloseConnection` is a variable of type [Boolean][] | +| [Result][Result Property] | `($)Result`, with no value | `($)Result` will be set to the type [dynamic][] | + +#### Result + +Selecting all rows and columns that have an Id less than 3 from `Table` using a [QueryCommand][Command Types QueryCommand] results in the variable `($)Result` being updated to the following: + +```json +[ + { + "Id": 1, + "FirstColumn": "FirstColumn1", + "SecondColumn": "SecondColumn1" + }, + { + "Id": 2, + "FirstColumn": "FirstColumn2", + "SecondColumn": "SecondColumn2" + } +] +``` + +Note that using a [Parameterised Command][Parameterised Commands] helps prevent against [SQL Injection][], for more information please see [Parameterised Commands][]. For an example of a non parameterised command please see [Executing Multiple Commands (Unsafe)][] + +*** + +### Inserting Rows + +This example will insert a new row into a connected SQL Server data source, saving the number of rows inserted to the [Result][Result Property]. + +A [NonQueryCommand][Command Types NonQueryCommand] is used throughout this example to insert data into the data source, however, both an [Command][Command Types Command] or [Commands][Command Types Commands] could also be used to the same effect. + +The data source contains a `Table` with the following rows and columns before the command is executed: +| Id | FirstColumn | SecondColumn | +|----|-------------|--------------| +| `1` | `"FirstColumn1"` | `"SecondColumn1"` | +| `2` | `"FirstColumn2"` | `"SecondColumn2"` | +| `3` | `"FirstColumn3"` | `"SecondColumn3"` | + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Command][Command Property] | `($)Command`, with value `{"CommandText": "INSERT INTO Table (FirstColumn, SecondColumn) VALUES (@InsertParameter1, @InsertParameter2)", "Parameters": { "InsertParameter1": \"FirstColumn4\", "InsertParameter2": \"SecondColumn4\" } }`

In this example `($)Command` has been set using the following [Expression][]:

`new NonQueryCommand("INSERT INTO Table (FirstColumn, SecondColumn) VALUES (@InsertParameter1, @InsertParameter2)", new { InsertParameter1 = "FirstColumn4", InsertParameter2 = "SecondColumn4" })` | `($)Command` is a variable of type [NonQueryCommand][] | +| [Connection Details][Connection Details Property] | `($)ConnectionDetails`, with value `{"ConnectionString": "Server=myServerAddress;Database=myDataBase;Trusted_Connection=True;"}` | `($)ConnectionDetails` is a variable of type [SqlServerConnectionDetails][] | +| [Close Connection][Close Connection Property] | `($)CloseConnection`, with value `true` | `($)CloseConnection` is a variable of type [Boolean][] | +| [Result][Result Property] | `($)Result`, with no value | `($)Result` will be set to the type [dynamic][] | + +#### Result + +Inserting a new row into `Table` using a parameterised [NonQueryCommand][Command Types NonQueryCommand] results in the variable `($)Result` being updated to the following: + +```json +1 +``` + +This indicates that 1 row has been inserted into `Table`, with `Table` being updated to: + +| Id | FirstColumn | SecondColumn | +|----|-------------|--------------| +| `1` | `"FirstColumn1"` | `"SecondColumn1"` | +| `2` | `"FirstColumn2"` | `"SecondColumn2"` | +| `3` | `"FirstColumn3"` | `"SecondColumn3"` | +| `4` | `"FirstColumn4"` | `"SecondColumn4"` | + +Note that using a [Parameterised Command][Parameterised Commands] helps prevent against [SQL Injection][], for more information please see [Parameterised Commands][]. For an example of a non parameterised command please see [Executing Multiple Commands (Unsafe)][] + +*** + +### Updating Rows + +This example will update all rows on a connected SQL Server data source which have an Id less than `3`, saving the number of rows updated to the [Result][Result Property]. + +A [NonQueryCommand][Command Types NonQueryCommand] is used throughout this example to update data in the data source, however, both an [Command][Command Types Command] or [Commands][Command Types Commands] could also be used to the same effect. + +The data source contains a `Table` with the following rows and columns before the command is executed: +| Id | FirstColumn | SecondColumn | +|----|-------------|--------------| +| `1` | `"FirstColumn1"` | `"SecondColumn1"` | +| `2` | `"FirstColumn2"` | `"SecondColumn2"` | +| `3` | `"FirstColumn3"` | `"SecondColumn3"` | + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Command][Command Property] | `($)Command`, with value `{"CommandText": "UPDATE Table SET FirstColumn = \"Updated\" WHERE Id < @UpdateParameter", "Parameters": { "UpdateParameter": 3 } }`

In this example `($)Command` has been set using the following [Expression][]:

`new NonQueryCommand("UPDATE Table SET FirstColumn = \"Updated\" WHERE Id < @UpdateParameter", new {UpdateParameter = 3})` | `($)Command` is a variable of type [NonQueryCommand][] | +| [Connection Details][Connection Details Property] | `($)ConnectionDetails`, with value `{"ConnectionString": "Server=myServerAddress;Database=myDataBase;Trusted_Connection=True;"}` | `($)ConnectionDetails` is a variable of type [SqlServerConnectionDetails][] | +| [Close Connection][Close Connection Property] | `($)CloseConnection`, with value `true` | `($)CloseConnection` is a variable of type [Boolean][] | +| [Result][Result Property] | `($)Result`, with no value | `($)Result` will be set to the type [dynamic][] | + +#### Result + +Updating all rows that have an Id less than `3` in `Table` using a [NonQueryCommand][Command Types NonQueryCommand] results in the variable `($)Result` being updated to the following: + +```json +2 +``` + +This indicates that 2 rows have been updated in `Table`, with `Table` being updated to: + +| Id | FirstColumn | SecondColumn | +|----|-------------|--------------| +| `1` | `"Updated"` | `"SecondColumn1"` | +| `2` | `"Updated"` | `"SecondColumn2"` | +| `3` | `"FirstColumn3"` | `"SecondColumn3"` | + +Note that using a [Parameterised Command][Parameterised Commands] helps prevent against [SQL Injection][], for more information please see [Parameterised Commands][]. For an example of a non parameterised command please see [Executing Multiple Commands (Unsafe)][] + +*** + +### Deleting Rows + +This example will delete all rows on a connected SQL Server data source which have an Id less than `3`, saving the number of rows deleted to the [Result][Result Property]. + +A [NonQueryCommand][Command Types NonQueryCommand] is used throughout this example to delete data in the data source, however, both an [Command][Command Types Command] or [Commands][Command Types Commands] could also be used to the same effect. + +The data source contains a `Table` with the following rows and columns before the command is executed: +| Id | FirstColumn | SecondColumn | +|----|-------------|--------------| +| `1` | `"FirstColumn1"` | `"SecondColumn1"` | +| `2` | `"FirstColumn2"` | `"SecondColumn2"` | +| `3` | `"FirstColumn3"` | `"SecondColumn3"` | + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Command][Command Property] | `($)Command`, with value `{"CommandText": "DELETE FROM Table WHERE Id < @DeleteParameter", "Parameters": { "DeleteParameter": 3 } }`

In this example `($)Command` has been set using the following [Expression][]:

`new NonQueryCommand("DELETE FROM Table WHERE Id < @DeleteParameter", new {DeleteParameter = 3})` | `($)Command` is a variable of type [NonQueryCommand][] | +| [Connection Details][Connection Details Property] | `($)ConnectionDetails`, with value `{"ConnectionString": "Server=myServerAddress;Database=myDataBase;Trusted_Connection=True;"}` | `($)ConnectionDetails` is a variable of type [SqlServerConnectionDetails][] | +| [Close Connection][Close Connection Property] | `($)CloseConnection`, with value `true` | `($)CloseConnection` is a variable of type [Boolean][] | +| [Result][Result Property] | `($)Result`, with no value | `($)Result` will be set to the type [dynamic][] | + +#### Result + +Deleting all rows that have an Id less than `3` in `Table` using a [NonQueryCommand][Command Types NonQueryCommand] results in the variable `($)Result` being updated to the following: + +```json +2 +``` + +This indicates that 2 rows have been deleted in `Table`, with `Table` being updated to: + +| Id | FirstColumn | SecondColumn | +|----|-------------|--------------| +| `3` | `"FirstColumn3"` | `"SecondColumn3"` | + +Note that using a [Parameterised Command][Parameterised Commands] helps prevent against [SQL Injection][], for more information please see [Parameterised Commands][]. For an example of a non parameterised command please see [Executing Multiple Commands (Unsafe)][] + +*** + +### Using Functions + +This example will select the maximum Id value from a connected SQL Server data source, saving the value of the function to the [Result][Result Property]. + +A [QueryCommand][Command Types QueryCommand] is used throughout this example to select the maximum Id value from the data source, however, both an [Command][Command Types Command] or [Commands][Command Types Commands] could also be used to the same effect. + +The data source contains a `Table` with the following rows and columns before the command is executed: + +| Id | FirstColumn | SecondColumn | +|----|-------------|--------------| +| `1` | `"FirstColumn1"` | `"SecondColumn1"` | +| `2` | `"FirstColumn2"` | `"SecondColumn2"` | +| `3` | `"FirstColumn3"` | `"SecondColumn3"` | + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Command][Command Property] | `($)Command`, with value `{"CommandText": "SELECT Max(Id) FROM Table", "Parameters": null}`

In this example `($)Command` has been set using the following [Expression][]:

`new QueryCommand("SELECT Max(Id) FROM Table", null)` | `($)Command` is a variable of type [QueryCommand][] | +| [Connection Details][Connection Details Property] | `($)ConnectionDetails`, with value `{"ConnectionString": "Server=myServerAddress;Database=myDataBase;Trusted_Connection=True;"}` | `($)ConnectionDetails` is a variable of type [SqlServerConnectionDetails][] | +| [Close Connection][Close Connection Property] | `($)CloseConnection`, with value `true` | `($)CloseConnection` is a variable of type [Boolean][] | +| [Result][Result Property] | `($)Result`, with no value | `($)Result` will be set to the type [dynamic][] | + +#### Result + +Selecting the maximum Id value from `Table` using a [QueryCommand][Command Types QueryCommand] results in the variable `($)Result` being updated to the following: + +```json +[ + { + "": 3 + } +] +``` + +Note that the `AS` keyword can be used to give aliases to results, for example the CommandText `"SELECT Max(Id) AS MaxId FROM Table;"` would have resulted in the variable `($)Result` being updated to `[ { "MaxId": 3 } ]`; the `AS` keyword also allows for [Using Multiple Functions][]. + +*** + +### Using Multiple Functions + +This example will select the maximum Id value as MaxId and the minimum Id value as MinId from a connected SQL Server data source, saving the values of the functions to the [Result][Result Property]. + +A [QueryCommand][Command Types QueryCommand] is used throughout this example to select the maximum Id value as MaxId and the minimum Id value as MinId from the data source, however, both an [Command][Command Types Command] or [Commands][Command Types Commands] could also be used to the same effect. + +The data source contains a `Table` with the following rows and columns before the command is executed: + +| Id | FirstColumn | SecondColumn | +|----|-------------|--------------| +| `1` | `"FirstColumn1"` | `"SecondColumn1"` | +| `2` | `"FirstColumn2"` | `"SecondColumn2"` | +| `3` | `"FirstColumn3"` | `"SecondColumn3"` | + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Command][Command Property] | `($)Command`, with value `{"CommandText": "SELECT Max(Id) AS MaxId, Min(Id) AS MinId FROM Table", "Parameters": null}`

In this example `($)Command` has been set using the following [Expression][]:

`new QueryCommand("SELECT Max(Id) AS MaxId, Min(Id) AS MinId FROM Table", null)` | `($)Command` is a variable of type [QueryCommand][] | +| [Connection Details][Connection Details Property] | `($)ConnectionDetails`, with value `{"ConnectionString": "Server=myServerAddress;Database=myDataBase;Trusted_Connection=True;"}` | `($)ConnectionDetails` is a variable of type [SqlServerConnectionDetails][] | +| [Close Connection][Close Connection Property] | `($)CloseConnection`, with value `true` | `($)CloseConnection` is a variable of type [Boolean][] | +| [Result][Result Property] | `($)Result`, with no value | `($)Result` will be set to the type [dynamic][] | + +#### Result + +Selecting the maximum Id value as MaxId and the minimum Id value as MinId from `Table` using a [QueryCommand][Command Types QueryCommand] results in the variable `($)Result` being updated to the following: + +```json +[ + { + "MaxId": 3, + "MinId": 1 + } +] +``` + +*** + +### Executing Multiple Commands (Safe) + +This example will select, insert, update and delete from a connected SQL Server data source, using a parameterised command. The result of each command will be saved to the result. + +An [Commands][Command Types Commands] is used throughout this example, as it is the only type of [Command][Command Property] that allows you to execute and return the results of multiple commands. + +The data source contains a `Table` with the following rows and columns before the command is executed: +| Id | FirstColumn | SecondColumn | +|----|-------------|--------------| +| `1` | `"FirstColumn1"` | `"SecondColumn1"` | +| `2` | `"FirstColumn2"` | `"SecondColumn2"` | +| `3` | `"FirstColumn3"` | `"SecondColumn3"` | + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Command][Command Property] | `($)Command`, with value `{"CommandText": "SELECT * FROM Table WHERE Id < @SelectParameter; INSERT INTO Table (FirstColumn, SecondColumn) VALUES (@InsertParameter1, @InsertParameter2); UPDATE Table SET FirstColumn = \"Updated\" WHERE Id < @UpdateParameter; DELETE FROM Table WHERE Id < @DeleteParameter; SELECT * FROM Table", "Parameters": { "SelectParameter": 3, InsertParameter1 = \"FirstColumn4\", InsertParameter2 = \"SecondColumn4\", "UpdateParameter": 3, "DeleteParameter": 3 }}`

In this example `($)Command` has been set using the following [Expression][]:

`new Commands("SELECT * FROM Table WHERE Id < @SelectParameter; INSERT INTO Table (FirstColumn, SecondColumn) VALUES (@InsertParameter1, @InsertParameter2); UPDATE Table SET FirstColumn = \"Updated\" WHERE Id < @UpdateParameter; DELETE FROM Table WHERE Id < @DeleteParameter; SELECT * FROM Table", new {SelectParameter = 3, InsertParameter1 = "FirstColumn4", InsertParameter2 = "SecondColumn4", UpdateParameter = 3, DeleteParameter = 3})` | `($)Command` is a variable of type [Commands][] | +| [Connection Details][Connection Details Property] | `($)ConnectionDetails`, with value `{"ConnectionString": "Server=myServerAddress;Database=myDataBase;Trusted_Connection=True;"}` | `($)ConnectionDetails` is a variable of type [SqlServerConnectionDetails][] | +| [Close Connection][Close Connection Property] | `($)CloseConnection`, with value `true` | `($)CloseConnection` is a variable of type [Boolean][] | +| [Result][Result Property] | `($)Result`, with no value | `($)Result` will be set to the type [dynamic][] | + +#### Result + +Running the [Commands][Command Types Commands] results in the variable `($)Result` being updated to the following: + +```json +[ + [ + { + "Id": 1, + "FirstColumn": "FirstColumn1", + "SecondColumn": "SecondColumn1" + }, + { + "Id": 2, + "FirstColumn": "FirstColumn2", + "SecondColumn": "SecondColumn2" + } + ], + 1, + 2, + 2, + [ + { + "Id": 3, + "FirstColumn": "FirstColumn3", + "SecondColumn": "SecondColumn3" + }, + { + "Id": 4, + "FirstColumn": "FirstColumn4", + "SecondColumn": "SecondColumn4" + } + ] +] +``` + +- The first item of `($)Result` represents the rows selected by the first select statement (`SELECT * FROM Table WHERE Id < @SelectParameter`). +- The second item of `($)Result` indicates that 1 row has been inserted into `Table` (`INSERT INTO Table (FirstColumn, SecondColumn) VALUES (@InsertParameter1, @InsertParameter2)`). +- The third item of `($)Result` indicates that 2 rows have been updated in `Table` (`UPDATE Table SET FirstColumn = \"Updated\" WHERE Id < @UpdateParameter`). +- The fourth item of `($)Result` indicates that 2 rows have been deleted in `Table` (`DELETE FROM Table WHERE Id < @DeleteParameter`). +- The fifth item of `($)Result` represents the rows selected by the second select statement (`SELECT * FROM Table`). + +`Table` has been updated to: + +| Id | FirstColumn | SecondColumn | +|----|-------------|--------------| +| `3` | `"FirstColumn3"` | `"SecondColumn3"` | +| `4` | `"FirstColumn4"` | `"SecondColumn4"` | + +Note that using a [Parameterised Command][Parameterised Commands] helps prevent against [SQL Injection][], for more information please see [Parameterised Commands][]. For an example of a non parameterised command please see [Executing Multiple Commands (Unsafe)][] + +*** + +### Executing Multiple Commands (Unsafe) + +This example will select, insert, update and delete from a connected SQL Server data source, using [String Interpolation][] instead of parameters. The result of each command will be saved to the result. + +{{% alert title="Warning" color="warning" %}} +This example inserts data directly into the [Command](#command) instead of using parameters. This means the SQL in this example is susceptible to [SQL Injection](https://www.w3schools.com/sql/sql_injection.asp) and it is advised to use parameters to insert data into a command instead. + +Please see [Executing Multiple Commands (Safe)](#executing-multiple-commands-safe) for an example of a [Parameterised Command](#parameterised-commands). +{{% /alert %}} + +An [Commands][Command Types Commands] is used throughout this example, as it is the only type of [Command][Command Property] that allows you to execute and return the results of multiple commands. + +The data source contains a `Table` with the following rows and columns before the command is executed: +| Id | FirstColumn | SecondColumn | +|----|-------------|--------------| +| `1` | `"FirstColumn1"` | `"SecondColumn1"` | +| `2` | `"FirstColumn2"` | `"SecondColumn2"` | +| `3` | `"FirstColumn3"` | `"SecondColumn3"` | + +In this example assume the following variables have been set before the command has been executed: + +- `($)SelectParameter` with the value `3` +- `($)InsertParameter1` with the value `"FirstColumn4"` +- `($)InsertParameter2` with the value `"SecondColumn4"` +- `($)UpdateParameter` with the value `3` +- `($)DeleteParameter` with the value `3` + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Command][Command Property] | `($)Command`, with value `{"CommandText": "SELECT * FROM Table WHERE Id < 3; INSERT INTO Table (FirstColumn, SecondColumn) VALUES (\"FirstColumn1\", \"SecondColumn2\"); UPDATE Table SET FirstColumn = \"Updated\" WHERE Id < 3; DELETE FROM Table WHERE Id < 3; SELECT * FROM Table", "Parameters": null}`

In this example `($)Command` has been set using the following [Expression][]:

`new Commands($"SELECT * FROM Table WHERE Id < {($)SelectParameter}; INSERT INTO Table (FirstColumn, SecondColumn) VALUES ({($)InsertParameter1}, {($)InsertParameter2}); UPDATE Table SET FirstColumn = \"Updated\" WHERE Id < {($)UpdateParameter}; DELETE FROM Table WHERE Id < {($)DeleteParameter}; SELECT * FROM Table", null)` | `($)Command` is a variable of type [Commands][] | +| [Connection Details][Connection Details Property] | `($)ConnectionDetails`, with value `{"ConnectionString": "Server=myServerAddress;Database=myDataBase;Trusted_Connection=True;"}` | `($)ConnectionDetails` is a variable of type [SqlServerConnectionDetails][] | +| [Close Connection][Close Connection Property] | `($)CloseConnection`, with value `true` | `($)CloseConnection` is a variable of type [Boolean][] | +| [Result][Result Property] | `($)Result`, with no value | `($)Result` will be set to the type [dynamic][] | + +#### Result + +Running the [Commands][Command Types Commands] results in the variable `($)Result` being updated to the following: + +```json +[ + [ + { + "Id": 1, + "FirstColumn": "FirstColumn1", + "SecondColumn": "SecondColumn1" + }, + { + "Id": 2, + "FirstColumn": "FirstColumn2", + "SecondColumn": "SecondColumn2" + } + ], + 1, + 2, + 2, + [ + { + "Id": 3, + "FirstColumn": "FirstColumn3", + "SecondColumn": "SecondColumn3" + }, + { + "Id": 4, + "FirstColumn": "FirstColumn4", + "SecondColumn": "SecondColumn4" + } + ] +] +``` + +- The first item of `($)Result` represents the rows selected by the first select statement (`SELECT * FROM Table WHERE Id < @SelectParameter`). +- The second item of `($)Result` indicates that 1 row has been inserted into `Table` (`INSERT INTO Table (FirstColumn, SecondColumn) VALUES (@InsertParameter1, @InsertParameter2)`). +- The third item of `($)Result` indicates that 2 rows have been updated in `Table` (`UPDATE Table SET FirstColumn = \"Updated\" WHERE Id < @UpdateParameter`). +- The fourth item of `($)Result` indicates that 2 rows have been deleted in `Table` (`DELETE FROM Table WHERE Id < @DeleteParameter`). +- The fifth item of `($)Result` represents the rows selected by the second select statement (`SELECT * FROM Table`). + +`Table` has been updated to: + +| Id | FirstColumn | SecondColumn | +|----|-------------|--------------| +| `3` | `"FirstColumn3"` | `"SecondColumn3"` | +| `4` | `"FirstColumn4"` | `"SecondColumn4"` | + +Note that using a [Parameterised Command][Parameterised Commands] helps prevent against [SQL Injection][], for more information please see [Parameterised Commands][]. + +*** + +## Properties + +### Command + +The [Command][Command Property] executed on the connected data source. There are multiple [Command Types][] that can be used, each with a different purpose: + +- [Command][Command Types Command]: Parses a single statement provided in the commandText, determining how the statement should be executed against the data source. If the commandText is a [Query Statement][Query Statements] the rows retrieved from the data source will be returned, otherwise if the commandText is a [Non Query Statement][Non Query Statements] the number of rows affected will be returned. +- [Commands][Command Types Commands]: Parses single or multiple statements provided in the commandText, determining how each statement should be executed against the data source. If a [Query Statement][Query Statements] is executed rows retrieved from the data source are added as an entry of the result, If a [Non Query Statement][Non Query Statements] is executed the number of rows affected is added as an entry of the result. +- [QueryCommand][Command Types QueryCommand]: Executes the given commandText as a [Query Statement][Query Statements], returning the rows retrieved from the data source. +- [NonQueryCommand][Command Types NonQueryCommand]: Executes the given commandText as a [Non Query Statement][Non Query Statements], returning the number of rows affected from the data source. + +| | | +|--------------------|---------------------------| +| Data Type | [DataCommand][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [Command][Command Types Command] with value `{"CommandText": "", "Parameters": null}` | + +### Connection Details + +The [Connection Details][Connection Details Property] object that includes all of the information required to connect to a data source, including: + +- [Connection String][Connection Strings] - must be provided in order to connect to a data source. The [Connection String][Connection Strings] is formatted differently depending on the type of data source that is being connected to, please see [Working with Data Sources][] for more information. + +For a list of currently supported connection details, please see [ConnectionDetails][] + +Note it is recommended to use a [Variable][] for [Connection Details][Connection Details Property] when it will be used across multiple Execute Command blocks, as using a variable will allow for reuse of the same connection. Using a [Literal][] to set the Connection Details will cause the connection to only be used once. + +| | | +|--------------------|---------------------------| +| Data Type | [ConnectionDetails][]| +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [SqlServerConnectionDetails][] with value `{"ConnectionString": "Server=localhost;Database=YourDatabase;Trusted_Connection=true;"}` | + +### Close Connection + +[Close Connection][Close Connection Property] can be specified to choose whether the connection to the data source is closed or is kept open for use on subsequent Execute Command blocks, this defaults to `false` if left blank, please see [Closing Connections][] for more information. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [Boolean][] with value `true` | + +### Result + +The object returned from the data source. + +Depending on the type of [Command][Command Property], the data returned within the [Result][Result Property] will vary. Please see [Command Types][] for more information on what data will be returned by each type. + +| | | +|--------------------|---------------------------| +| Data Type | [dynamic][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][Variable Editor] | +| Default Value | `($)Result` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyNullException][] | Thrown when the [Command][Command Property] is null. | +| | Thrown when the commandText within the [Command][Command Property] is null. | +| | Thrown when the [Connection Details][Connection Details Property] is null. | +| | Thrown when the connectionString within the [Connection Details][Connection Details Property] is null. | +| [PropertyEmptyException][] | Thrown when the commandText within the [Command][Command Property] is empty. | +| | Thrown when the connectionString within the [Connection Details][Connection Details Property] is empty. | +| [InvalidConnectionStringException][] | Thrown when an invalid connection string has been supplied (e.g. The connection string contains an invalid argument `"NotAnArgument = False"`). | +| | Thrown when a required connection string argument has not been supplied (e.g. The server requires encryption and the connection string contains `"Encrypt=False"`). | +| [CommandException][] | Thrown when the data source was not found or was not accessible. | +| | Thrown when an error occurs whilst trying to open a new connection. | +| | Thrown when a connection is successfully established but an error occurred during the login process. | +| | Thrown when the [Command][Command Property] contains syntax errors. The error will contain either a nested [SqlException][] with a corresponding [SqlException Error Code][SqlException Error Codes], or a nested [ParserException][] (Oracle Only). | +| | Thrown when the [Command][Command Property] is invalid for the table specified. | +| | Thrown when the [Command][Command Property] references a non-existent stored procedure. | +| | Thrown when parameters derives from [Array][] or [IEnumerable][] when a [Query Statement][Query Statements] is executed. | +| | Thrown when an [Command][] contains multiple statements. | +| | Thrown when a [Command][] or [Commands][] contains an [OracleBlockStatement][] statements. (Oracle Only)| + +## Remarks + +### Command Types + +There are multiple types of [Command][Command Property] that can be used, each with a different purpose: + +#### Command + +A [Command][] parses a single statement provided in the [commandText][Command.CommandText], determining how the statement should be executed against the data source. If the [commandText][Command.CommandText] is a [Query Statement][Query Statements] the rows retrieved from the data source will be returned, otherwise if the [commandText][Command.CommandText] is a [Non Query Statement][Non Query Statements] the number of rows affected will be returned. + +For a [Query Statement][Query Statements] (e.g. select and execute): + +| [Result][Result Property] will be set to | when | +|-|-| +| [List][]<[Structure][]> with a single item | Single item is returned | +| [List][]<[Structure][]> with many items | Many items are returned | +| [List][]<[Structure][]> with no items | No items are returned | + +For a [Non Query Statement][Non Query Statements] (e.g. insert, update, delete, etc) + +| [Result][Result Property] will be set to | when                                                         | +|-|-| +| [Int32][] with a value of `1` | Single row is affected | +| [Int32][] with a value greater than `1` | Many rows are affected | +| [Int32][] with a value of `0` | No rows are affected | + +If multiple statements are provided in [CommandText][Command.CommandText], the block will throw a [CommandException][] as this type can only run single statements. + +If performance is a key consideration it is recommended to use a [QueryCommand][Command Types QueryCommand] or [NonQueryCommand][Command Types NonQueryCommand] instead of [Command][] as they do not parse the [commandText][Command.CommandText]. + +#### Commands + +A [Commands][] parses single or multiple statements provided in the [commandText][Commands.CommandText], determining how each statement should be executed against the data source. If a [Query Statement][Query Statements] is executed rows retrieved from the data source are added as an entry of the result, If a [Non Query Statement][Non Query Statements] is executed the number of rows affected is added as an entry of the result. + +For each [Query Statement][Query Statements] (e.g. select and execute): + +| [Result][Result Property] will have the following entry added | when | +|-|-| +| [List][]<[Structure][]> with a single item | Single item is returned | +| [List][]<[Structure][]> with many items | Many items are returned | +| [List][]<[Structure][]> with no items | No items are returned | + +For each [Non Query Statement][Non Query Statements] (e.g. insert, update, delete, etc) + +| [Result][Result Property] will have the following entry added | when                                   | +|-|-| +| [Int32][] with a value of `1` | Single row is affected | +| [Int32][] with a value greater than `1` | Many rows are affected | +| [Int32][] with a value of `0` | No rows are affected | + +If performance is a key consideration it is recommended to use a [QueryCommand][Command Types QueryCommand] or [NonQueryCommand][Command Types NonQueryCommand] instead of [Commands][] as they do not parse the [commandText][Commands.CommandText]. + +Note that the [Commands][] should not be used for commands that have dependency between their statements (e.g. Cursors and Variables). Please see [Complex Commands][] for more information on how to deal with these. + +#### QueryCommand + +A [QueryCommand][] executes the given [commandText][QueryCommand.CommandText] as a [Query Statement][Query Statements], returning the rows retrieved from the data source. If the [commandText][QueryCommand.CommandText] contains multiple select statements, only the results of the first [Query Statement][Query Statements] will be returned. + +For a [Query Statement][Query Statements] (e.g. select): + +| [Result][Result Property] will be set to | when | +|-|-| +| [List][]<[Structure][]> with a single item | Single item is returned | +| [List][]<[Structure][]> with many items | Many items are returned | +| [List][]<[Structure][]> with no items | No items are returned | + +For a [Non Query Statement][Non Query Statements] (e.g. insert, update, delete, etc) + +| [Result][Result Property] will be set to                                                                                        | when | +|-|-| +| `[]` | always, as [Non Query Statements][] do not return data | + +Note use a [QueryCommand][] for commands that have dependency between their statements (e.g. Cursors and Variables) and return data from the data source. Please see [Complex Commands][] for more information. + +#### NonQueryCommand + +A [NonQueryCommand][] executes the given [commandText][NonQueryCommand.CommandText] as a [Non Query Statement][Non Query Statements], returning the number of rows affected from the data source. If the command contains multiple statements, the sum of all the results will be returned. + +For a [Query Statement][Query Statements] (e.g. select): + +| [Result][Result Property] will be set to                                                                                 | when | +|-|-| +| [Int32][] with a value of `-1` | always, as [Query Statements][] do not return data | + +For a [Non Query Statement][Non Query Statements] (e.g. insert, update, delete, etc) + +| [Result][Result Property] will be set to | when | +|-|-| +| [Int32][] with a value of `1` | Single row is affected | +| [Int32][] with a value greater than `1` | Many rows are affected | +| [Int32][] with a value of `0` | No rows are affected | + +Note use a [NonQueryCommand][] for commands that have dependency between their statements (e.g. Cursors and Variables) and return the number of rows affected. Please see [Complex Commands][] for more information. + +### Statement Types + +There are two categories of statements [Query][Query Statements] and [Non Query][Non Query Statements]. + +#### Query Statements + +Query Statements are used to retrieve data from a data source, for example selecting all rows from a table in a database, Query Statements return the data selected by the Statement as a [List][]<[Structure][]> when used in an [Command][Command Types Command], an [Commands][Command Types Commands], or a [QueryCommand][Command Types QueryCommand]. If a Query Statement is used in a [NonQueryCommand][Command Types NonQueryCommand] `-1` will be returned as Query Statements do not affect rows. + +Examples of Query Statements can be found here: + +- [Selecting Rows][] +- [Using Functions][] +- [Using Multiple Functions][] +- [Executing Multiple Commands (Safe)][] +- [Executing Multiple Commands (Unsafe)][] + +A Query Statement can use any object as a parameter. Objects that derive from [Array][] or [IEnumerable][] can only be used for clauses that accept list values (e.g. `IN`, `ANY`, `ALL`), if they are used in other clauses the block will throw a [CommandException][]. + +#### Non Query Statements + +Non Query Statements are used to manipulate the data within a data source, for example deleting all rows from a table in a database, Non Query Statements return the number of rows affected by the Statement as an [Int32][] value when used in an [Command][Command Types Command], an [Commands][Command Types Commands], or a [NonQueryCommand][Command Types NonQueryCommand]. If a Non Query Statement is used in a [QueryCommand][Command Types QueryCommand] `null` will be returned as Non Query Statements do not return data. + +Examples of Non Query Statements can be found here: + +- [Inserting Rows][] +- [Updating Rows][] +- [Deleting Rows][] +- [Executing Multiple Commands (Safe)][] +- [Executing Multiple Commands (Unsafe)][] + +A Non Query Statement can use any object as a parameter. If an object that derives from [Array][] or [IEnumerable][] is used, the Non Query Statement will be executed for each item in the [Array][] or [IEnumerable][] and the sum of all the results will be returned. + +### Parameterised Commands + +It is recommended to always use parameterised commands as they prevent [SQL Injection][] attacks by ensuring the parameters are sanitised before the [Command][Command Property] is executed. + +The `@` symbol denotes a parameter within the [CommandText][DataCommand.CommandText] (e.g. `"SELECT * FROM Table WHERE Name = @Parameter"`). An example of using parameters can be found in [Executing Multiple Commands (Safe)][], whereas, an example of inserting variables into a statement without parameters can be found in [Executing Multiple Commands (Unsafe)][] + +[Query Statements][] can use any object as a parameter. Objects that derive from [Array][] or [IEnumerable][] can only be used for clauses that accept list values (e.g. `IN`, `ANY`, `ALL`), if they are used in other clauses the block will throw a [CommandException][]. + +[Non Query Statements][] can use any object as a parameter. If an object that derives from [Array][] or [IEnumerable][] is used, the Non Query Statement will be executed for each item in the [Array][] or [IEnumerable][] and the sum of all the results will be returned. + +For both [Query Statements][] and [Non Query Statements][], an SqlException is thrown if a parameter is missing from the [Command][Command Property] and the [CommandText][DataCommand.CommandText] contains a parameter (e.g. `{"CommandText": "SELECT * FROM Table WHERE Name = @Parameter", "Parameters": {"IncorrectParameter": 0}}`). + +### Complex Commands + +Complex commands (e.g. Cursors and Variables) that contain dependency between their statements cannot be used with [Commands][Command Types Commands], as the parsing performed by the block will cause each statement of [CommandText][DataCommand.CommandText] to be run individually instead of running the [CommandText][DataCommand.CommandText] as a whole. + +For statements with this type of dependency use either [QueryCommand][Command Types QueryCommand] or [NonQueryCommand][Command Types NonQueryCommand], depending on whether data from the data source or the number of rows affected is returned. + +### Connection Strings + +A connection string must be provided within the [Connection Details][Connection Details Property] in order to connect to a data source. The connection string is formatted differently depending on the type of data source, please see [Working with Data Sources][] for more information. + +Please see [Working with Data Sources][] for a list of supported data sources and how to construct valid connection strings for them. + +### Opening Connections + +The Execute Command block automatically handles creating and opening connections for the specified [Connection Details][Connection Details Property] using the following rules: + +- If a connection does not exist, a new connection will be created, opened and used when the block runs. +- If a connection already exists but is closed, the connection will be opened and used when the block runs. +- If a connection already exists and is open, the connection will used the block runs. + +If a [Variable][] is used to pass in the [Connection Details][Connection Details Property] it can be used to keep the connection alive across multiple Execute Command blocks as long as [Close Connection][Close Connection Property] is set to `false`. Keeping the connection open helps increase the performance of the block due to the subsequent blocks not having to spend resources creating and opening connections for each execution. + +If a [Literal][] or an [Expression][] is used to create the [Connection Details][Connection Details Property] a new connection will always be made when the Execute Command block runs and if [Close Connection][Close Connection Property] is set to `false` the connection will be closed automatically at some point after the block finishes and before the flow ends. + +For information on how to explicitly close a connection, please see [Closing Connections][]. + +### Closing Connections + +Connections can be explicitly closed by setting [Close Connection][Close Connection Property] to `true`. This causes the connection to be closed after the [Command][Command Property] has been executed. + +If a [Variable][] is used to pass in the [Connection Details][Connection Details Property] and [Close Connection][Close Connection Property] is set to `false` the connection will be closed when the [Variable][] goes out of scope or the flow ends, whichever happens first. For more information about variables and scope, please see [Variables][]. + +If a [Literal][] or an [Expression][] is used to create the [Connection Details][Connection Details Property] and [Close Connection][Close Connection Property] is set to `false` the connection will be closed automatically at some point after the Execute Command block finishes and before the flow ends. + +For information on how to open a connection, please see [Opening Connections][]. + +### Why does the Result property return a dynamic data type? + +The decision for the [Result][Result Property] to return a [dynamic data type][dynamic] rather than a specific type, was to avoid users having to [cast][Object Casting] the [Result][Result Property] to its correct type to be able to use all of its properties. + +As a result, any issues with using the [Result][Result Property] (i.e. trying to access a property it does not have) will not be reported as messages when trying to debug the flow; they will only be discovered when the flow execution reaches the part of the flow with the issue. + +If it is desirable to have any issues reported as messages when trying to debug the flow, the user can [cast][Object Casting] the [Result][Result Property] to its correct type. + +### RunAs + +RunAs can be used to connect to a database as a Windows user, rather than a SQL user. + +To connect as a Windows user: +- An appropriate connection string (e.g. [Oracle][OracleConnectionStringIntegratedSecurity], [SQL Server][SqlConnectionStringTrustedConnection]) must be specified in the [Connection Details][Connection Details Property]. +- [UserCredentials][] for the Windows user must be specified in the [Run As property][RunAsProperty]. + +If connecting to a local database, the [UserCredentials][] must specify the [LogonType][] to be `LogonType.Network`; if connecting to a remote database, the [LogonType][] must be `LogonType.NewCredentials`. + +### Known Limitations + +When using a [Parameterised Command][Parameterised Commands] to execute a stored procedure, it is not possible to write back to output parameters. + +[Command Property]: {{< ref "#command" >}} +[Connection Details Property]: {{< ref "#connection-details" >}} +[Close Connection Property]: {{< ref "#close-connection" >}} +[Result Property]: {{< ref "#result-8" >}} + +[Selecting Rows]: {{< ref "#selecting-rows">}} +[Inserting Rows]: {{< ref "#inserting-rows">}} +[Updating Rows]: {{< ref "#updating-rows">}} +[Deleting Rows]: {{< ref "#deleting-rows">}} +[Executing Multiple Commands (Safe)]: {{< ref "#executing-multiple-commands-safe">}} +[Executing Multiple Commands (Unsafe)]: {{< ref "#executing-multiple-commands-unsafe">}} +[Using Functions]: {{< ref "#using-functions">}} +[Using Multiple Functions]: {{< ref "#using-multiple-functions">}} +[Executing a Parameterised Command]: {{< ref "#executing-a-parameterised-command">}} + +[Command Types]: {{< ref "#command-types">}} +[Command Types Command]: {{< ref "#command-1">}} +[Command Types Commands]: {{< ref "#commands">}} +[Command Types QueryCommand]: {{< ref "#querycommand">}} +[Command Types NonQueryCommand]: {{< ref "#nonquerycommand">}} + +[Query Statements]: {{< ref "#query-statements">}} +[Non Query Statements]: {{< ref "#non-query-statements">}} + +[Connection Strings]: {{< ref "#connection-strings">}} +[Parameterised Commands]: {{< ref "#parameterised-commands">}} +[Complex Commands]: {{< ref "#complex-commands">}} +[Opening Connections]: {{< ref "#opening-connections">}} +[Closing Connections]: {{< ref "#closing-connections">}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[ArgumentException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentException" >}} +[InvalidConnectionStringException]: {{< url path="Cortex.Reference.Exceptions.Data.InvalidConnectionStringException.MainDoc" >}} +[CommandException]: {{< url path="Cortex.Reference.Exceptions.Data.CommandException.MainDoc" >}} + +[ConnectionDetails]: {{< url path="Cortex.Reference.DataTypes.Data.ConnectionDetails.MainDoc" >}} +[SqlServerConnectionDetails]: {{< url path="Cortex.Reference.DataTypes.Data.SqlServerConnectionDetails.MainDoc" >}} +[OracleConnectionDetails]: {{< url path="Cortex.Reference.DataTypes.Data.OracleConnectionDetails.MainDoc" >}} +[OdbcConnectionDetails]: {{< url path="Cortex.Reference.DataTypes.Data.OdbcConnectionDetails.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} + +[TConnectionDetails]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[List]: {{< url path="Cortex.Reference.DataTypes.Collections.List.MainDoc" >}} +[Structure]: {{< url path="Cortex.Reference.DataTypes.Collections.Structure.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[Array]: {{< url path="Cortex.Reference.DataTypes.Collections.Array.MainDoc" >}} +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} + +[DataCommand]: {{< url path="Cortex.Reference.DataTypes.Data.DataCommand.MainDoc" >}} +[DataCommand.CommandText]: {{< url path="Cortex.Reference.DataTypes.Data.DataCommand.CommandText" >}} + +[Command]: {{< url path="Cortex.Reference.DataTypes.Data.Command.MainDoc" >}} +[Command.CommandText]: {{< url path="Cortex.Reference.DataTypes.Data.Command.CommandText" >}} + +[Commands]: {{< url path="Cortex.Reference.DataTypes.Data.Commands.MainDoc" >}} +[Commands.CommandText]: {{< url path="Cortex.Reference.DataTypes.Data.Commands.CommandText" >}} + +[QueryCommand]: {{< url path="Cortex.Reference.DataTypes.Data.QueryCommand.MainDoc" >}} +[QueryCommand.CommandText]: {{< url path="Cortex.Reference.DataTypes.Data.QueryCommand.CommandText" >}} + +[NonQueryCommand]: {{< url path="Cortex.Reference.DataTypes.Data.NonQueryCommand.MainDoc" >}} +[NonQueryCommand.CommandText]: {{< url path="Cortex.Reference.DataTypes.Data.NonQueryCommand.CommandText" >}} + +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[Variable Editor]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[String Interpolation]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.ConvertingObjectsToText.StringInterpolation" >}} +[Working with Data Sources]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DataSources.MainDoc" >}} +[Connection String Formats]: {{< url path="ConnectionStrings.MainDoc" >}} +[SqlException Error Codes]: {{< url path="MSDocs.SqlServer.ErrorCodes" >}} +[SqlException]: {{< url path="MSDocs.SqlServer.SqlException" >}} +[Variables]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.MainDoc" >}} +[Object Casting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectCasting.MainDoc" >}} + +[UserCredentials]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.MainDoc" >}} +[LogonType]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.LogonType" >}} +[RunAsProperty]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.CommonProperties.RunAsProperty" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} + +[OracleBlockStatement]: {{< url path="Oracle.PL-SQL.BlockStatement" >}} +[SQL Injection]: {{< url path="W3.SqlInjection" >}} + +[SqlConnectionStringTrustedConnection]: {{< url path="ConnectionStrings.SqlConnectionTrustedConnection" >}} +[OracleConnectionStringIntegratedSecurity]: {{< url path="ConnectionStrings.OracleConnectionIntegratedSecurity" >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Blocks/date-and-time/_index.md b/content/en/docs/2024.11/Reference/Blocks/date-and-time/_index.md new file mode 100644 index 000000000..442888370 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/date-and-time/_index.md @@ -0,0 +1,5 @@ +--- +title: "Date & Time" +linkTitle: "Date & Time" +description: "Blocks related to working with Date and Time." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/date-and-time/add-time-period/_index.md b/content/en/docs/2024.11/Reference/Blocks/date-and-time/add-time-period/_index.md new file mode 100644 index 000000000..b273f6313 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/date-and-time/add-time-period/_index.md @@ -0,0 +1,5 @@ +--- +title: "Add Time Period" +linkTitle: "Add Time Period" +description: "Add a time period (Years, Months, Days, Hours, Minutes, Seconds and Milliseconds) to a date time." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/date-and-time/add-time-period/add-time-period-block.md b/content/en/docs/2024.11/Reference/Blocks/date-and-time/add-time-period/add-time-period-block.md new file mode 100644 index 000000000..1932df472 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/date-and-time/add-time-period/add-time-period-block.md @@ -0,0 +1,157 @@ +--- +title: "Add Time Period" +linkTitle: "Add Time Period" +description: "Adds a Time Period to a specified Date Time." +--- + +{{< figure src="/blocks/Cortex_Blocks_DateAndTime_AddTimePeriod_AddTimePeriodBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.DateAndTime.AddTimePeriod.AddTimePeriodBlock)

+ +## Description + +Adds a [Time Period][TimePeriod Property] to the specified [Date Time][DateTime Property]. + +This block can add both positive and negative [TimePeriod][] values. + +## Examples + +### Add a positive Time Period + +This example will add `1 year`, `1 month`, `1 day`, `1 hour` and `30 minutes` to `2021-01-01T00:00:00+00:00`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Date Time][DateTime Property] | `($)DateTime`, with value of [DateTimeOffset][] that has a text representation of `2021-01-01T00:00:00+00:00` | `($)DateTime` is a variable of type [DateTimeOffset][] | +| [Time Period][TimePeriod Property] | `($)TimePeriod`, with value of `{"Years": 1, "Months": 1, "Days": 1, "Hours": 1, "Minutes": 30, "Seconds": 0, "Milliseconds": 0}` | `($)TimePeriod` is a variable of type [TimePeriod][] | + +#### Result + +Adding `1 year`, `1 month`, `1 day`, `1 hour` and `30 minutes` to `2021-01-01T00:00:00+00:00` will result in the variable `($)DateTime` being updated. Its text representation will be in the [ISO 8601 Standard][], which can be seen below: + +```json +"2022-02-02T01:30:00+00:00" +``` + +*** + +### Add a negative Time Period + +This example will add `-1 year` to `2021-01-01T00:00:00+00:00`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Date Time][DateTime Property] | `($)DateTime`, with value of [DateTimeOffset][] that has a text representation of `2021-01-01T00:00:00+00:00` | `($)DateTime` is a variable of type [DateTimeOffset][] | +| [Time Period][TimePeriod Property] | `($)TimePeriod`, with value of `{"Years": -1, "Months": 0, "Days": 0, "Hours": 0, "Minutes": 0, "Seconds": 0, "Milliseconds": 0}` | `($)TimePeriod` is a variable of type [TimePeriod][] | + +#### Result + +Adding `-1 year` from `2021-01-01T00:00:00+00:00` will result in `1 year` being subtracted and the variable `($)DateTime` being updated. Its text representation will be in the [ISO 8601 Standard][], which can be seen below: + +```json +"2020-01-01T00:00:00+00:00" +``` + +*** + +## Properties + +### Date Time + +The [Date Time][DateTime Property] to add the [Time Period][TimePeriod Property] to. + +Its text representation will be in the [ISO 8601 Standard][] (e.g. `2021-11-05T08:48:08.0307614+00:00`). + +For more information about Date and Time, please see [Working with Date and Time][]. + +| | | +|--------------------|---------------------------| +| Data Type | [DateTimeOffset][] | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)DateTime` with no value | + +### Time Period + +The [Time Period][TimePeriod Property] to add to the [Date Time][DateTime Property] to. + +[Time Period][TimePeriod Property] can have positive and negative components where components are: + +* Years +* Months +* Days +* Hours +* Minutes +* Seconds +* Milliseconds + +When adding a [Time Period][TimePeriod Property], the block will first add years, followed by months, days, hours, minutes, seconds and finally milliseconds. + +When adding months, if the current day component is greater than the last day in the resultant month, it will update the day to the last day for that month (e.g. adding one month onto `2021-01-31T23:59:59+00:00` will equate to `2021-02-28T23:59:59+00:00`). + +For more information about Date and Time, please see [Working with Date and Time][]. + +| | | +|--------------------|---------------------------| +| Data Type | [TimePeriod][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | Years: `0`
Months: `0`
Days: `0`
Hours: `0`
Minutes: `0`
Seconds: `0`
Milliseconds: `0`| + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyValueOutOfRangeException][] | Thrown when adding [Time Period][TimePeriod Property] to [Date Time][DateTime Property] will result in the [Date Time][DateTime Property] being less than `0001-01-01T00:00:00+00:00`. See [Property Less Than Minimum Value][].| +| | Thrown when adding [Time Period][TimePeriod Property] to [Date Time][DateTime Property] will result in the [Date Time][DateTime Property] being greater than `9999-12-31T23:59:59+00:00`. See [Property Greater Than Maximum Value][]. | + +## Remarks + +### Dates and Time + +The default text representation of Date and Time will be in the [ISO 8601 Standard][] (e.g. `2021-11-05T08:48:08.0307614+00:00`). + +For more information, please see [Working with Date and Time][]. + +### Order of calculations + +When adding a [Time Period][TimePeriod Property], the block will first add years, followed by months, days, hours, minutes, seconds and finally milliseconds. + +### Addition of Months + +When adding months to the [Date Time][DateTime Property], if the current day component is greater than the last day in the resultant month, it will update the day to the last day for that month (e.g. adding one month onto `2021-01-31T23:59:59+00:00` will equate to `2021-02-28T23:59:59+00:00`). + +### Daylight Savings + +This block copes with UTC time offsets but does not know anything about which time zone the [Date Time][DateTime Property] represents; as a result it cannot take daylight savings into account as these are related to time zones rather than UTC time offsets. + +[DateTime Property]: {{< ref "#date-time" >}} +[TimePeriod Property]: {{< ref "#time-period" >}} + +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[PropertyValueOutOfRangeException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.MainDoc" >}} +[Property Greater Than Maximum Value]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.PropertyGreaterThanMaximumValue" >}} +[Property Less Than Minimum Value]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.PropertyLessThanMinimumValue" >}} + +[ISO 8601 Standard]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.DateAndTimeFormatting.ISO8601Standard" >}} +[Working with Date and Time]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.MainDoc" >}} + +[DateTimeOffset]: {{< url path="Cortex.Reference.DataTypes.DateAndTime.DateTimeOffset.MainDoc" >}} +[TimePeriod]: {{< url path="Cortex.Reference.DataTypes.DateAndTime.TimePeriod.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/date-and-time/convert-date-time/_index.md b/content/en/docs/2024.11/Reference/Blocks/date-and-time/convert-date-time/_index.md new file mode 100644 index 000000000..c4089d580 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/date-and-time/convert-date-time/_index.md @@ -0,0 +1,5 @@ +--- +title: "Convert Date Time" +linkTitle: "Convert Date Time" +description: "Convert a date time to and from text." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/date-and-time/convert-date-time/convert-date-time-to-text-block.md b/content/en/docs/2024.11/Reference/Blocks/date-and-time/convert-date-time/convert-date-time-to-text-block.md new file mode 100644 index 000000000..7853340df --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/date-and-time/convert-date-time/convert-date-time-to-text-block.md @@ -0,0 +1,254 @@ +--- +title: "Convert Date Time To Text" +linkTitle: "Convert Date Time To Text" +description: "Converts a Date Time to Text." +--- + +{{< figure src="/blocks/Cortex_Blocks_DateAndTime_ConvertDateTime_ConvertDateTimeToTextBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.DateAndTime.ConvertDateTime.ConvertDateTimeToTextBlock)

+ +## Description + +Converts a [Date Time][DateTime Property] to [Text][Text Property]. + +Additional options can be specified: + +* [Format Template][FormatTemplate Property] can be specified to define the format the [Date Time][DateTime Property] should be converted to (e.g. `"dd/MM/yyyy"`). +* [Format Provider][FormatProvider Property] can be specified to define the cultural rules used to control the formatting (e.g. `new CultureInfo("en-US")` will apply American English rules to the formatting). + +## Examples + +### ISO 8601 Standard Format + +This example will convert a Date Time representing midnight on 31st December 2021 (with `0` UTC time offset) to the [ISO 8601 Standard][] format (i.e. `"yyyy-MM-ddTHH:mm:ss.fffffffzzz"`). + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Date Time][DateTime Property] | `($)DateTime`, with value of [DateTimeOffset][] that has a text representation of `2021-12-31T00:00:00+00:00` | `($)DateTime` is a variable of type [DateTimeOffset][] | +| [Format Template][FormatTemplate Property] | `($)FormatTemplate`, with value `null` | `($)FormatTemplate` is a variable of type [String][] | +| [Format Provider][FormatProvider Property] | `($)FormatProvider`, with value `null` | `($)FormatProvider` is a variable of type [IFormatProvider][] | +| [Text][Text Property] | `($)Text`, with no value | `($)Text` is a variable that will be set to a [String][] value | + +#### Result + +Converting a Date Time representing midnight on 31st December 2021 (with a `0` UTC time offset and without specifying any format template or provider) will result in the variable `($)Text` being updated to the following [ISO 8601 Standard][] text representation: + +```json +"2021-12-31T00:00:00.0000000+00:00" +``` + +*** + +### Default format for Invariant Culture + +This example will convert a Date Time representing midnight on 31st December 2021 (with `0` UTC time offset) to the default format for Invariant Culture (i.e. `"MM/dd/yyyy HH:mm:ss zzz"`). + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Date Time][DateTime Property] | `($)DateTime`, with value of [DateTimeOffset][] that has a text representation of `2021-12-31T00:00:00+00:00` | `($)DateTime` is a variable of type [DateTimeOffset][] | +| [Format Template][FormatTemplate Property] | `($)FormatTemplate`, with value `null` | `($)FormatTemplate` is a variable of type [String][] | +| [Format Provider][FormatProvider Property] | `($)FormatProvider`, with value `CultureInfo.InvariantCulture` | `($)FormatProvider` is a variable of type [IFormatProvider][] | +| [Text][Text Property] | `($)Text`, with no value | `($)Text` is a variable that will be set to a [String][] value | + +#### Result + +Converting a Date Time representing midnight on 31st December 2021 (with a `0` UTC time offset and without a format template), but specifying Invariant Culture text representation, will result in the variable `($)Text` being updated to the following: + +```json +"12/31/2021 00:00:00 +00:00" +``` + +*** + +### Full Date Long Time format for Invariant Culture + +This example will convert a Date Time representing midnight on 31st December 2021 (with `0` UTC time offset) to the Full Date Long Time format for Invariant Culture (i.e. `"dddd, dd MMMM yyyy HH:mm:ss"`). + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Date Time][DateTime Property] | `($)DateTime`, with value of [DateTimeOffset][] that has a text representation of `2021-12-31T00:00:00+00:00` | `($)DateTime` is a variable of type [DateTimeOffset][] | +| [Format Template][FormatTemplate Property] | `($)FormatTemplate`, with value `"F"` | `($)FormatTemplate` is a variable of type [String][] | +| [Format Provider][FormatProvider Property] | `($)FormatProvider`, with value `CultureInfo.InvariantCulture` | `($)FormatProvider` is a variable of type [IFormatProvider][] | +| [Text][Text Property] | `($)Text`, with no value | `($)Text` is a variable that will be set to a [String][] value | + +#### Result + +Converting a Date Time representing midnight on 31st December 2021 (with a `0` UTC time offset), and specifying the Full Date Long Time format for Invariant Culture, will result in the variable `($)Text` being updated to the following: + +```json +"Friday, 31 December 2021 00:00:00" +``` + +*** + +### Default format for American English ("en-US") + +This example will convert a Date Time representing midnight on 31st December 2021 (with `0` UTC time offset) to the default format for American English `"en-US"` (i.e. `"MM/d/yyyy h:m:s tt zzz"`). + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Date Time][DateTime Property] | `($)DateTime`, with value of [DateTimeOffset][] that has a text representation of `2021-12-31T00:00:00+00:00` | `($)DateTime` is a variable of type [DateTimeOffset][] | +| [Format Template][FormatTemplate Property] | `($)FormatTemplate`, with value `null` | `($)FormatTemplate` is a variable of type [String][] | +| [Format Provider][FormatProvider Property] | `($)FormatProvider`, with value `new CultureInfo("en-US")` | `($)FormatProvider` is a variable of type [IFormatProvider][] | +| [Text][Text Property] | `($)Text`, with no value | `($)Text` is a variable that will be set to a [String][] value | + +#### Result + +Converting a Date Time representing midnight on 31st December 2021 (with a `0` UTC time offset and without a format template), but specifying an American English `"en-US"` text representation, will result in the variable `($)Text` being updated to the following: + +```json +"12/31/2021 12:00:00 AM +00:00" +``` + +*** + +### Full Date Long Time format for American English ("en-US") + +This example will convert a Date Time representing midnight on 31st December 2021 (with `0` UTC time offset) to the Full Date Long Time format for American English `"en-US"` (i.e. `"dddd, MMMM d, yyyy h:m:s tt"`). + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Date Time][DateTime Property] | `($)DateTime`, with value of [DateTimeOffset][] that has a text representation of `2021-12-31T00:00:00+00:00` | `($)DateTime` is a variable of type [DateTimeOffset][] | +| [Format Template][FormatTemplate Property] | `($)FormatTemplate`, with value `"F"` | `($)FormatTemplate` is a variable of type [String][] | +| [Format Provider][FormatProvider Property] | `($)FormatProvider`, with value `new CultureInfo("en-US")` | `($)FormatProvider` is a variable of type [IFormatProvider][] | +| [Text][Text Property] | `($)Text`, with no value | `($)Text` is a variable that will be set to a [String][] value | + +#### Result + +Converting a Date Time representing midnight on 31st December 2021 (with a `0` UTC time offset), and specifying the Full Date Long Time format for American English `"en-US"`, will result in the variable `($)Text` being updated to the following: + +```json +"Friday, December 31, 2021 12:00:00 AM" +``` + +*** + +## Properties + +### Date Time + +The [Date Time][DateTime Property] to convert to [Text][Text Property]. + +By default, if no [Format Template][FormatTemplate Property] or [Format Provider][FormatProvider Property] are specified, the resultant [Text][Text Property] will be in the [ISO 8601 Standard][] (e.g. `2021-11-05T08:48:08.0307614+00:00`). + +For more information about Date and Time, please see [Working with Date and Time][]. + +| | | +|--------------------|---------------------------| +| Data Type | [DateTimeOffset][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)DateTime` with no value | + +### Format Template + +[Format Template][FormatTemplate Property] can be specified to define the format the [Date Time][DateTime Property] should be converted to (e.g. `"dd/MM/yyyy"` -> `"31/12/2021"`). + +If [Format Template][FormatTemplate Property] contains valid format specifiers (e.g. `"dd"` for 2 digit day representation), they will be subsitituted based on the [Date Time][DateTime Property]; characters that are not format specifiers will be passed through as literal text. + +If [Format Template][FormatTemplate Property] is not specified, `null` or empty (i.e. `""`), the default format template of the specified [Format Provider][FormatProvider Property] is used. If [Format Provider][FormatProvider Property] is also not specified or `null` the [ISO 8601 Standard][] format will be used (i.e. `"yyyy-MM-ddTHH:mm:ss.fffffffzzz"`). + +For information about format templates and specifiers, please see [Date and Time Formatting][]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `yyyy-MM-ddTHH:mm:ss.fffffffzzz` | + +### Format Provider + +[Format Provider][FormatProvider Property] can be specified to define the cultural rules used to control the formatting (e.g. `new CultureInfo("en-US")` will apply American English rules to the formatting.). + +If [Format Provider][FormatProvider Property] is not specified or `null`, `CultureInfo.InvariantCulture` will be used; `CultureInfo.InvariantCulture` is associated with the English language but not with any country/region. For more information, please see [Invariant Culture rules][]. + +| | | +|--------------------|---------------------------| +| Data Type | [IFormatProvider][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Expression][] | +| Default Value | `CultureInfo.InvariantCulture` | + +### Text + +The [Text][Text Property] representation of the [Date Time][DateTime Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [FormatException][] | Thrown when [Format Template][FormatTemplate Property] is a single invalid format specifier (i.e. `"a"`). | + +## Remarks + +### Dates and Time + +The default text representation of Date and Time will be in the [ISO 8601 Standard][] (e.g. `2021-11-05T08:48:08.0307614+00:00`). + +For more information, please see [Working with Date and Time][]. + +### Format Template and Specifiers + +Please note that changes to operating system date and time formats, could result in some of the examples above displaying different results. + +For information about format templates and specifiers, please see [Date and Time Formatting][]. + +### Null or Empty Format Template + +If [Format Template][FormatTemplate Property] is not specified, `null` or empty (i.e. `""`), the default format template of the specified [Format Provider][FormatProvider Property] is used. If [Format Provider][FormatProvider Property] is also not specified or `null` the [ISO 8601 Standard][] format will be used (i.e. `"yyyy-MM-ddTHH:mm:ss.fffffffzzz"`). + +### Null Format Provider + +If [Format Provider][FormatProvider Property] is not specified or `null`, `CultureInfo.InvariantCulture` will be used; `CultureInfo.InvariantCulture` is associated with the English language but not with any country/region. For more information, please see [Invariant Culture rules][]. + +[DateTime Property]: {{< ref "#date-time" >}} +[FormatTemplate Property]: {{< ref "#format-template" >}} +[FormatProvider Property]: {{< ref "#format-provider" >}} +[Text Property]: {{< ref "#text" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[FormatException]: {{< url path="MSDocs.DotNet.Api.System.FormatException" >}} + +[Date and Time Formatting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.DateAndTimeFormatting.MainDoc" >}} +[Invariant Culture rules]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.DateAndTimeFormatting.InvariantCulture" >}} +[ISO 8601 Standard]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.DateAndTimeFormatting.ISO8601Standard" >}} +[Working with Date and Time]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.MainDoc" >}} + +[DateTimeOffset]: {{< url path="Cortex.Reference.DataTypes.DateAndTime.DateTimeOffset.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[IFormatProvider]: {{< url path="Cortex.Reference.DataTypes.Text.IFormatProvider.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/date-and-time/convert-date-time/convert-text-to-date-time-block.md b/content/en/docs/2024.11/Reference/Blocks/date-and-time/convert-date-time/convert-text-to-date-time-block.md new file mode 100644 index 000000000..c2a93ad96 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/date-and-time/convert-date-time/convert-text-to-date-time-block.md @@ -0,0 +1,270 @@ +--- +title: "Convert Text To Date Time" +linkTitle: "Convert Text To Date Time" +description: "Converts Text to a Date Time." +--- + +{{< figure src="/blocks/Cortex_Blocks_DateAndTime_ConvertDateTime_ConvertTextToDateTimeBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.DateAndTime.ConvertDateTime.ConvertTextToDateTimeBlock)

+ +## Description + +Converts [Text][Text Property] to a [Date Time][DateTime Property]. + +Additional options can be specified: + +* [Format Template][FormatTemplate Property] can be specified to explicity define the format of the [Text][Text Property] (e.g. `"dd/MM/yyyy"`). +* [Format Provider][FormatProvider Property] can be specified to define the cultural rules used to control the conversion (e.g. `new CultureInfo("en-US")` will apply American English rules to the conversion). + +## Examples + +### ISO 8601 Standard Format + +[ISO 8601 Standard][] format is `"yyyy-MM-ddTHH:mm:ss.fffffffzzz"`. + +This example will convert `"2021-12-31T00:00:00.0000000+00:00"` to a Date Time representing midnight on 31st December 2021 (with `0` UTC time offset). + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"2021-12-31T00:00:00+00:00"` | `($)Text` is a variable of type [String][] | +| [Format Template][FormatTemplate Property] | `($)FormatTemplate`, with value `null` | `($)FormatTemplate` is a variable of type [String][] | +| [Format Provider][FormatProvider Property] | `($)FormatProvider`, with value `null` | `($)FormatProvider` is a variable of type [IFormatProvider][] | +| [Date Time][DateTime Property] | `($)DateTime`, with no value | `($)DateTime` is a variable that will be set to a [DateTimeOffset][] value | + +#### Result + +Converting `"2021-12-31T00:00:00.0000000+00:00"` to a Date Time (without specifying any format template or provider) will result in the variable `($)DateTime` being updated to a Date Time representing midnight on 31st December 2021 (with `0` UTC time offset). Its text representation will be in the [ISO 8601 Standard][], which can be seen below: + +```json +"2021-12-31T00:00:00.0000000+00:00" +``` + +*** + +### Default format for Invariant Culture + +Default format for Invariant Culture is `"MM/dd/yyyy HH:mm:ss zzz"`. + +This example will convert `"12/31/2021 00:00:00 +00:00"` to a Date Time representing midnight on 31st December 2021 (with `0` UTC time offset). + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"12/31/2021 00:00:00 +00:00"` | `($)Text` is a variable of type [String][] | +| [Format Template][FormatTemplate Property] | `($)FormatTemplate`, with value `null` | `($)FormatTemplate` is a variable of type [String][] | +| [Format Provider][FormatProvider Property] | `($)FormatProvider`, with value `CultureInfo.InvariantCulture` | `($)FormatProvider` is a variable of type [IFormatProvider][] | +| [Date Time][DateTime Property] | `($)DateTime`, with no value | `($)DateTime` is a variable that will be set to a [DateTimeOffset][] value | + +#### Result + +Converting `"12/31/2021 00:00:00 +00:00"` to a Date Time without specifying a format template but specifying Invariant Culture, will result in the variable `($)DateTime` being updated to a Date Time representing midnight on 31st December 2021 (with `0` UTC time offset). Its text representation will be in the [ISO 8601 Standard][], which can be seen below: + +```json +"2021-12-31T00:00:00.0000000+00:00" +``` + +*** + +### Full Date Long Time format for Invariant Culture + +Full Date Long Time format for Invariant Culture is `"dddd, dd MMMM yyyy HH:mm:ss"`. + +This example will convert `"Friday, 31 December 2021 00:00:00"` to a Date Time representing midnight on 31st December 2021 (with `0` UTC time offset). + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"Friday, 31 December 2021 00:00:00"` | `($)Text` is a variable of type [String][] | +| [Format Template][FormatTemplate Property] | `($)FormatTemplate`, with value `"F"` | `($)FormatTemplate` is a variable of type [String][] | +| [Format Provider][FormatProvider Property] | `($)FormatProvider`, with value `CultureInfo.InvariantCulture` | `($)FormatProvider` is a variable of type [IFormatProvider][] | +| [Date Time][DateTime Property] | `($)DateTime`, with no value | `($)DateTime` is a variable that will be set to a [DateTimeOffset][] value | + +#### Result + +Converting `"Friday, 31 December 2021 00:00:00"` to a Date Time specifying the Full Date Long Time format for Invariant Culture, will result in the variable `($)DateTime` being updated to a Date Time representing midnight on 31st December 2021 (with `0` UTC time offset). Its text representation will be in the [ISO 8601 Standard][], which can be seen below: + +```json +"2021-12-31T00:00:00.0000000+00:00" +``` + +*** + +### Default format for American English ("en-US") + +Default format for American English ("en-US") is `"MM/d/yyyy h:m:s tt zzz"`. + +This example will convert `"12/31/2021 12:00:00 AM +00:00"` to a Date Time representing midnight on 31st December 2021 (with `0` UTC time offset). + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"12/31/2021 12:00:00 AM +00:00"` | `($)Text` is a variable of type [String][] | +| [Format Template][FormatTemplate Property] | `($)FormatTemplate`, with value `null` | `($)FormatTemplate` is a variable of type [String][] | +| [Format Provider][FormatProvider Property] | `($)FormatProvider`, with value `new CultureInfo("en-US")` | `($)FormatProvider` is a variable of type [IFormatProvider][] | +| [Date Time][DateTime Property] | `($)DateTime`, with no value | `($)DateTime` is a variable that will be set to a [DateTimeOffset][] value | + +#### Result + +Converting `"12/31/2021 12:00:00 AM +00:00"` to a Date Time without specifying a format template but specifying American English `"en-US"`, will result in the variable `($)DateTime` being updated to a Date Time representing midnight on 31st December 2021 (with `0` UTC time offset). Its text representation will be in the [ISO 8601 Standard][], which can be seen below: + +```json +"2021-12-31T00:00:00.0000000+00:00" +``` + +*** + +### Full Date Long Time format for American English ("en-US") + +Full Date Long Time format for American English ("en-US") is `"dddd, MMMM d, yyyy h:m:s tt"`. + +This example will convert `"Friday, December 31, 2021 12:00:00 AM"` to a Date Time representing midnight on 31st December 2021 (with `0` UTC time offset). + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Text][Text Property] | `($)Text`, with value `"Friday, December 31, 2021 12:00:00 AM"` | `($)Text` is a variable of type [String][] | +| [Format Template][FormatTemplate Property] | `($)FormatTemplate`, with value `"F"` | `($)FormatTemplate` is a variable of type [String][] | +| [Format Provider][FormatProvider Property] | `($)FormatProvider`, with value `new CultureInfo("en-US")` | `($)FormatProvider` is a variable of type [IFormatProvider][] | +| [Date Time][DateTime Property] | `($)DateTime`, with no value | `($)DateTime` is a variable that will be set to a [DateTimeOffset][] value | + +#### Result + +Converting `"Friday, December 31, 2021 12:00:00 AM"` to a Date Time specifying the Full Date Long Time format for American English `"en-US"`, will result in the variable `($)DateTime` being updated to a Date Time representing midnight on 31st December 2021 (with `0` UTC time offset). Its text representation will be in the [ISO 8601 Standard][], which can be seen below: + +```json +"2021-12-31T00:00:00.0000000+00:00" +``` + +*** + +## Properties + +### Text + +The [Text][Text Property] to convert to a [Date Time][DateTime Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +### Format Template + +[Format Template][FormatTemplate Property] can be specified to define the format the [Text][Text Property] is in (e.g. `"dd/MM/yyyy"`). + +If [Format Template][FormatTemplate Property] does not contain any valid format specifiers (e.g. `"ww/ww/wwww"`) and the text exactly matches the [Format Template][FormatTemplate Property] (e.g. `"ww/ww/wwww"`), then [Date Time][DateTime Property] is set to a [DateTimeOffset][] value that represents the current Date and Time. + +If [Format Template][FormatTemplate Property] is not specified, `null` or empty (i.e. `""`), the [ISO 8601 Standard][] format will be used for the conversion (i.e. `"yyyy-MM-ddTHH:mm:ss.fffffffzzz"`). + +If the [ISO 8601 Standard][] format fails, then the default template of the specified [Format Provider][FormatProvider Property] will be used; if there is no specified [Format Provider][FormatProvider Property], then [Invariant Culture rules][] will be used instead. + +For information about format templates and specifiers, please see [Date and Time Formatting][]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `yyyy-MM-ddTHH:mm:ss.fffffffzzz` | + +### Format Provider + +[Format Provider][FormatProvider Property] can be specified to define the cultural rules used to control the conversion (e.g. `new CultureInfo("en-US")` will apply American English rules to the conversion). + +If [Format Provider][FormatProvider Property] is not specified or `null`, `CultureInfo.InvariantCulture` will be used; `CultureInfo.InvariantCulture` is associated with the English language but not with any country/region. For more information, please see [Invariant Culture rules][]. + +| | | +|--------------------|---------------------------| +| Data Type | [IFormatProvider][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Expression][] | +| Default Value | `CultureInfo.InvariantCulture` | + +### Date Time + +The [Date Time][DateTime Property] that has been converted from [Text][Text Property]. + +Its text representation will be in the [ISO 8601 Standard][] (e.g. `2021-11-05T08:48:08.0307614+00:00`). + +For more information about Date and Time, please see [Working with Date and Time][]. + +| | | +|--------------------|---------------------------| +| Data Type | [DateTimeOffset][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)DateTime` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [FormatException][] | Thrown when [Format Template][FormatTemplate Property] does not contain any valid specifiers (e.g. `"ww/ww/wwww"`). | +| | Thrown when [Format Template][FormatTemplate Property] contains non-specifier characters, and [Text][Text Property] does not match the characters exactly (e.g. `"01/10/2021 12:00"` and `"dd/ww/yyyy hh:mm"` will throw, but `"01/ww/2021 12:00"` and `"dd/ww/yyyy hh:mm"` does not). | +| | Thrown when [Format Template][FormatTemplate Property] is `null` or empty (i.e. `""`) and the [Text][Text Property] does not match the [ISO 8601 Standard][] format, the default format of the [Format Provider][FormatProvider Property] (e.g. `"31/12/2021 00:00"` and `"dd/MM/yyyy"`). | +| [PropertyEmptyException][] | Thrown when [Text][Text Property] is empty (i.e. `""`). | +| [PropertyNullException][] | Thrown when [Text][Text Property] is `null`. | + +## Remarks + +### Dates and Time + +The default text representation of Date and Time will be in the [ISO 8601 Standard][] (e.g. `2021-11-05T08:48:08.0307614+00:00`). + +For more information, please see [Working with Date and Time][]. + +### Format Template and Specifiers + +Please note that changes to operating system date and time formats, could result in some of the examples above displaying different results. + +For information about format templates and specifiers, please see [Date and Time Formatting][]. + +### Null or Empty Format Template + +If [Format Template][FormatTemplate Property] is not specified, `null` or empty (i.e. `""`), the [ISO 8601 Standard][] format will be used for the conversion (i.e. `"yyyy-MM-ddTHH:mm:ss.fffffffzzz"`). + +If the [ISO 8601 Standard][] format fails, then the default template of the specified [Format Provider][FormatProvider Property] will be used; if there is no specified [Format Provider][FormatProvider Property], then [Invariant Culture rules][] will be used instead. + +### Null Format Provider + +If [Format Provider][FormatProvider Property] is not specified or `null`, `CultureInfo.InvariantCulture` will be used; `CultureInfo.InvariantCulture` is associated with the English language but not with any country/region. For more information, please see [Invariant Culture rules][]. + +[DateTime Property]: {{< ref "#date-time" >}} +[FormatTemplate Property]: {{< ref "#format-template" >}} +[FormatProvider Property]: {{< ref "#format-provider" >}} +[Text Property]: {{< ref "#text" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[FormatException]: {{< url path="MSDocs.DotNet.Api.System.FormatException" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[Date and Time Formatting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.DateAndTimeFormatting.MainDoc" >}} +[Invariant Culture rules]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.DateAndTimeFormatting.InvariantCulture" >}} +[ISO 8601 Standard]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.DateAndTimeFormatting.ISO8601Standard" >}} +[Working with Date and Time]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.MainDoc" >}} + +[DateTimeOffset]: {{< url path="Cortex.Reference.DataTypes.DateAndTime.DateTimeOffset.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[IFormatProvider]: {{< url path="Cortex.Reference.DataTypes.Text.IFormatProvider.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/date-and-time/get-date-time/_index.md b/content/en/docs/2024.11/Reference/Blocks/date-and-time/get-date-time/_index.md new file mode 100644 index 000000000..fa05212da --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/date-and-time/get-date-time/_index.md @@ -0,0 +1,5 @@ +--- +title: "Get Date Time" +linkTitle: "Get Date Time" +description: "Get the current date time or parts of a date time (i.e. Year, Month, Day)." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/date-and-time/get-date-time/get-current-date-time-block.md b/content/en/docs/2024.11/Reference/Blocks/date-and-time/get-date-time/get-current-date-time-block.md new file mode 100644 index 000000000..58759f529 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/date-and-time/get-date-time/get-current-date-time-block.md @@ -0,0 +1,80 @@ +--- +title: "Get Current Date Time" +linkTitle: "Get Current Date Time" +description: "Gets the current Date Time." +--- + +{{< figure src="/blocks/Cortex_Blocks_DateAndTime_GetDateTime_GetCurrentDateTimeBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.DateAndTime.GetDateTime.GetCurrentDateTimeBlock)

+ +## Description + +Gets the current [Date Time][DateTime Property]. + +## Examples + +### Get the current Date Time + +This example will get the current Date Time. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Date Time][DateTime Property] | `($)DateTime`, with no value | `($)DateTime` is a variable that will be set to a [DateTimeOffset][] value | + +#### Result + +Getting the current Date Time will result in the variable `($)DateTime` being set to a [DateTimeOffset][] representing the current Date Time (including a UTC time offset). Its text representation will be in the [ISO 8601 Standard][], which can be seen below: + +```json +"2021-11-05T08:48:08.0307614+00:00" +``` + +*** + +## Properties + +### Date Time + +The current [Date Time][DateTime Property] including a UTC time offset. + +Its text representation will be in the [ISO 8601 Standard][] (e.g. `2021-11-05T08:48:08.0307614+00:00`). + +For more information about Date and Time, please see [Working with Date and Time][]. + +| | | +|--------------------|---------------------------| +| Data Type | [DateTimeOffset][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)DateTime` with no value | + +## Exceptions + +No exceptions are thrown by the block. + +## Remarks + +### Dates and Time + +The default text representation of Date and Time will be in the [ISO 8601 Standard][] (e.g. `2021-11-05T08:48:08.0307614+00:00`). + +For more information, please see [Working with Date and Time][]. + +[DateTime Property]: {{< ref "#date-time" >}} + +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[ISO 8601 Standard]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.DateAndTimeFormatting.ISO8601Standard" >}} +[Working with Date and Time]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.MainDoc" >}} + +[DateTimeOffset]: {{< url path="Cortex.Reference.DataTypes.DateAndTime.DateTimeOffset.MainDoc" >}} + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/date-and-time/get-date-time/get-date-time-component-block.md b/content/en/docs/2024.11/Reference/Blocks/date-and-time/get-date-time/get-date-time-component-block.md new file mode 100644 index 000000000..3e2a32399 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/date-and-time/get-date-time/get-date-time-component-block.md @@ -0,0 +1,426 @@ +--- +title: "Get Date Time Component" +linkTitle: "Get Date Time Component" +description: "Gets a component (e.g. Year, Month, Day) of a specified Date Time." +--- + +{{< figure src="/blocks/Cortex_Blocks_DateAndTime_GetDateTime_GetDateTimeComponentBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.DateAndTime.GetDateTime.GetDateTimeComponentBlock)

+ +## Description + +Gets a [Component][Component Property] (e.g. Year, Month, Day) of the specified [Date Time][DateTime Property]. + +[Component Type][ComponentType Property] is used to specify which type of component to get. + +For more information about values that can be specified for [Component Type][ComponentType Property], please see [DateTimeComponentType][] or the [examples][] below. + +## Examples + +### LocalDateTime + +This example will get the LocalDateTime of a Date Time representing 5am on 31st December 2021 (with `-5` UTC time offset). + +In this example assume that the local date and time is in the GMT time zone. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Date Time][DateTime Property] | `($)DateTime`, with value of [DateTimeOffset][] that has a text representation of `2021-12-31T00:05:00-05:00` | `($)DateTime` is a variable of type [DateTimeOffset][] | +| [Component Type][ComponentType Property] | `($)ComponentType`, with value of `DateTimeComponentType.LocalDateTime` | `($)DateTime` is a variable of type [DateTimeComponentType][] | +| [Component][Component Property] | `($)Component`, with no value | `($)Component` is a variable that will be set to a [dynamic][] value | + +#### Result + +Getting the LocalDateTime (GMT) of a Date Time representing 5am on 31st December 2021 (with `-5` UTC time offset), will result in the variable `($)Component` being updated to a [DateTime][] value. Its text representation will be in the [ISO 8601 Standard][], which can be seen below: + +```json +"2021-12-31T10:00:00+00:00" +``` + +*** + +### UtcDateTime + +This example will get the UTCDateTime of a Date Time representing 5am on 31st December 2021 (with `-5` UTC time offset). + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Date Time][DateTime Property] | `($)DateTime`, with value of [DateTimeOffset][] that has a text representation of `2021-12-31T05:00:00-05:00` | `($)DateTime` is a variable of type [DateTimeOffset][] | +| [Component Type][ComponentType Property] | `($)ComponentType`, with value of `DateTimeComponentType.UtcDateTime` | `($)DateTime` is a variable of type [DateTimeComponentType][] | +| [Component][Component Property] | `($)Component`, with no value | `($)Component` is a variable that will be set to a [dynamic][] value | + +#### Result + +Getting the UTCDateTime of a Date Time representing 5am on 31st December 2021 (with `-5` UTC time offset), will result in the variable `($)Component` being updated to a [DateTime][] value. Its text representation will be in the [ISO 8601 Standard][], which can be seen below: + +```json +"2021-12-31T10:00:00Z" +``` + +*** + +### Date + +This example will get the Date component of a Date Time representing 5am on 31st December 2021 (with `-5` UTC time offset). + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Date Time][DateTime Property] | `($)DateTime`, with value of [DateTimeOffset][] that has a text representation of `2021-12-31T05:00:00-05:00` | `($)DateTime` is a variable of type [DateTimeOffset][] | +| [Component Type][ComponentType Property] | `($)ComponentType`, with value of `DateTimeComponentType.Date` | `($)DateTime` is a variable of type [DateTimeComponentType][] | +| [Component][Component Property] | `($)Component`, with no value | `($)Component` is a variable that will be set to a [dynamic][] value | + +#### Result + +Getting the Date component of a Date Time representing 5am on 31st December 2021 (with `-5` UTC time offset), will result in the variable `($)Component` being updated to a [DateTime][] value. Its text representation will be in the [ISO 8601 Standard][], which can be seen below: + +```json +"2021-12-31T00:00:00" +``` + +*** + +### Time + +This example will get the Time component of a Date Time representing 5am on 31st December 2021 (with `-5` UTC time offset). + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Date Time][DateTime Property] | `($)DateTime`, with value of [DateTimeOffset][] that has a text representation of `2021-12-31T05:00:00-05:00` | `($)DateTime` is a variable of type [DateTimeOffset][] | +| [Component Type][ComponentType Property] | `($)ComponentType`, with value of `DateTimeComponentType.Time` | `($)DateTime` is a variable of type [DateTimeComponentType][] | +| [Component][Component Property] | `($)Component`, with no value | `($)Component` is a variable that will be set to a [dynamic][] value | + +#### Result + +Getting the Time component of a Date Time representing 5am on 31st December 2021 (with `-5` UTC time offset), will result in the variable `($)Component` being updated to the following [TimePeriod][] value: + +```json +{ + "Years": 0, + "Months": 0, + "Days": 0, + "Hours": 5, + "Minutes": 0, + "Seconds": 0, + "Milliseconds": 0 +} +``` + +### Year + +This example will get the Year component of a Date Time representing 5am on 31st December 2021 (with `-5` UTC time offset). + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Date Time][DateTime Property] | `($)DateTime`, with value of [DateTimeOffset][] that has a text representation of `2021-12-31T05:00:00-05:00` | `($)DateTime` is a variable of type [DateTimeOffset][] | +| [Component Type][ComponentType Property] | `($)ComponentType`, with value of `DateTimeComponentType.Year` | `($)DateTime` is a variable of type [DateTimeComponentType][] | +| [Component][Component Property] | `($)Component`, with no value | `($)Component` is a variable that will be set to a [dynamic][] value | + +#### Result + +Getting the Year component of a Date Time representing 5am on 31st December 2021 (with `-5` UTC time offset), will result in the variable `($)Component` being updated to the following [Int32][] value: + +```json +2021 +``` + +*** + +### Month + +This example will get the Month component of a Date Time representing 5am on 31st December 2021 (with `-5` UTC time offset). + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Date Time][DateTime Property] | `($)DateTime`, with value of [DateTimeOffset][] that has a text representation of `2021-12-31T05:00:00-05:00` | `($)DateTime` is a variable of type [DateTimeOffset][] | +| [Component Type][ComponentType Property] | `($)ComponentType`, with value of `DateTimeComponentType.Month` | `($)DateTime` is a variable of type [DateTimeComponentType][] | +| [Component][Component Property] | `($)Component`, with no value | `($)Component` is a variable that will be set to a [dynamic][] value | + +#### Result + +Getting the Month component of a Date Time representing 5am on 31st December 2021 (with `-5` UTC time offset), will result in the variable `($)Component` being updated to the following [Int32][] value: + +```json +12 +``` + +### Day + +This example will get the Day component of a Date Time representing 5am on 31st December 2021 (with `-5` UTC time offset). + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Date Time][DateTime Property] | `($)DateTime`, with value of [DateTimeOffset][] that has a text representation of `2021-12-31T05:00:00-05:00` | `($)DateTime` is a variable of type [DateTimeOffset][] | +| [Component Type][ComponentType Property] | `($)ComponentType`, with value of `DateTimeComponentType.Day` | `($)DateTime` is a variable of type [DateTimeComponentType][] | +| [Component][Component Property] | `($)Component`, with no value | `($)Component` is a variable that will be set to a [dynamic][] value | + +#### Result + +Getting the Day component of a Date Time representing 5am on 31st December 2021 (with `-5` UTC time offset), will result in the variable `($)Component` being updated to the following [Int32][] value: + +```json +31 +``` + +### Hour + +This example will get the Hour component of a Date Time representing 5am on 31st December 2021 (with `-5` UTC time offset). + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Date Time][DateTime Property] | `($)DateTime`, with value of [DateTimeOffset][] that has a text representation of `2021-12-31T05:00:00-05:00` | `($)DateTime` is a variable of type [DateTimeOffset][] | +| [Component Type][ComponentType Property] | `($)ComponentType`, with value of `DateTimeComponentType.Hour` | `($)DateTime` is a variable of type [DateTimeComponentType][] | +| [Component][Component Property] | `($)Component`, with no value | `($)Component` is a variable that will be set to a [dynamic][] value | + +#### Result + +Getting the Hour component of a Date Time representing 5am on 31st December 2021 (with `-5` UTC time offset), will result in the variable `($)Component` being updated to the following [Int32][] value: + +```json +5 +``` + +*** + +### Minute + +This example will get the Minute component of a Date Time representing 5am on 31st December 2021 (with `-5` UTC time offset). + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Date Time][DateTime Property] | `($)DateTime`, with value of [DateTimeOffset][] that has a text representation of `2021-12-31T05:00:00-05:00` | `($)DateTime` is a variable of type [DateTimeOffset][] | +| [Component Type][ComponentType Property] | `($)ComponentType`, with value of `DateTimeComponentType.Minute` | `($)DateTime` is a variable of type [DateTimeComponentType][] | +| [Component][Component Property] | `($)Component`, with no value | `($)Component` is a variable that will be set to a [dynamic][] value | + +#### Result + +Getting the Minute component of a Date Time representing 5am on 31st December 2021 (with `-5` UTC time offset), will result in the variable `($)Component` being updated to the following [Int32][] value: + +```json +0 +``` + +*** + +### Second + +This example will get the Second component of a Date Time representing 5am on 31st December 2021 (with `-5` UTC time offset). + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Date Time][DateTime Property] | `($)DateTime`, with value of [DateTimeOffset][] that has a text representation of `2021-12-31T05:00:00-05:00` | `($)DateTime` is a variable of type [DateTimeOffset][] | +| [Component Type][ComponentType Property] | `($)ComponentType`, with value of `DateTimeComponentType.Second` | `($)DateTime` is a variable of type [DateTimeComponentType][] | +| [Component][Component Property] | `($)Component`, with no value | `($)Component` is a variable that will be set to a [dynamic][] value | + +#### Result + +Getting the Second component of a Date Time representing 5am on 31st December 2021 (with `-5` UTC time offset), will result in the variable `($)Component` being updated to the following [Int32][] value: + +```json +0 +``` + +*** + +### Millisecond + +This example will get the Millisecond component of a Date Time representing 5am on 31st December 2021 (with `-5` UTC time offset). + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Date Time][DateTime Property] | `($)DateTime`, with value of [DateTimeOffset][] that has a text representation of `2021-12-31T05:00:00-05:00` | `($)DateTime` is a variable of type [DateTimeOffset][] | +| [Component Type][ComponentType Property] | `($)ComponentType`, with value of `DateTimeComponentType.Millisecond` | `($)DateTime` is a variable of type [DateTimeComponentType][] | +| [Component][Component Property] | `($)Component`, with no value | `($)Component` is a variable that will be set to a [dynamic][] value | + +#### Result + +Getting the Millisecond component of a Date Time representing 5am on 31st December 2021 (with `-5` UTC time offset), will result in the variable `($)Component` being updated to the following [Int32][] value: + +```json +0 +``` + +*** + +### Offset + +This example will get the Offset component of a Date Time representing 5am on 31st December 2021 (with `-5` UTC time offset). + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Date Time][DateTime Property] | `($)DateTime`, with value of [DateTimeOffset][] that has a text representation of `2021-12-31T05:00:00-05:00` | `($)DateTime` is a variable of type [DateTimeOffset][] | +| [Component Type][ComponentType Property] | `($)ComponentType`, with value of `DateTimeComponentType.Offset` | `($)DateTime` is a variable of type [DateTimeComponentType][] | +| [Component][Component Property] | `($)Component`, with no value | `($)Component` is a variable that will be set to a [dynamic][] value | + +#### Result + +Getting the Offset component of a Date Time representing 5am on 31st December 2021 (with `-5` UTC time offset), will result in the variable `($)Component` being updated to the following [TimeSpan][] value with the following text representation: + +```json +"-5:00:00" +``` + +*** + +### DayOfYear + +This example will get the DayOfYear component of a Date Time representing 5am on 31st December 2021 (with `-5` UTC time offset). + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Date Time][DateTime Property] | `($)DateTime`, with value of [DateTimeOffset][] that has a text representation of `2021-12-31T05:00:00-05:00` | `($)DateTime` is a variable of type [DateTimeOffset][] | +| [Component Type][ComponentType Property] | `($)ComponentType`, with value of `DateTimeComponentType.DayOfYear` | `($)DateTime` is a variable of type [DateTimeComponentType][] | +| [Component][Component Property] | `($)Component`, with no value | `($)Component` is a variable that will be set to a [dynamic][] value | + +#### Result + +Getting the DayOfYear component of a Date Time representing 5am on 31st December 2021 (with `-5` UTC time offset), will result in the variable `($)Component` being updated to the following [Int32][] value: + +```json +365 +``` + +*** + +### DayOfWeek + +This example will get the DayOfWeek component of a Date Time representing 5am on 31st December 2021 (with `-5` UTC time offset). + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Date Time][DateTime Property] | `($)DateTime`, with value of [DateTimeOffset][] that has a text representation of `2021-12-31T05:00:00-05:00` | `($)DateTime` is a variable of type [DateTimeOffset][] | +| [Component Type][ComponentType Property] | `($)ComponentType`, with value of `DateTimeComponentType.DayOfWeek` | `($)DateTime` is a variable of type [DateTimeComponentType][] | +| [Component][Component Property] | `($)Component`, with no value | `($)Component` is a variable that will be set to a [dynamic][] value | + +#### Result + +Getting the DayOfWeek component of a Date Time representing 5am on 31st December 2021 (with `-5` UTC time offset), will result in the variable `($)Component` being updated to the following [DayOfWeek][] value: + +```json +DayOfWeek.Friday +``` + +*** + +## Properties + +### Date Time + +The [Date Time][DateTime Property] to get the specified [Component Type][ComponentType Property] from. + +| | | +|--------------------|---------------------------| +| Data Type | [DateTimeOffset][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)DateTime` with no value | + +### Component Type + +The [Component Type][ComponentType Property] to get from the [Date Time][DateTime Property]. + +For more information about values that can be specified for [Component Type][ComponentType Property], please see [DateTimeComponentType][] or the [examples][] above. + +| | | +|--------------------|---------------------------| +| Data Type | [DateTimeComponentType][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `LocalDateTime` | + +### Component + +The [Component][Component Property] from the [Date Time][DateTime Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [dynamic][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Component` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [ArgumentException][] | Thrown when [Component Type][ComponentType Property] is not one of the specified [DateTimeComponentType][] types (e.g. `(DateTimeComponentType)100`). | + +## Remarks + +### Dates and Time + +The default text representation of Date and Time will be in the [ISO 8601 Standard][] (e.g. `2021-11-05T08:48:08.0307614+00:00`). + +For more information, please see [Working with Date and Time][]. + +### Why does the Component property return a dynamic data type? + +The decision for [Component][Component Property] to return a [dynamic data type][dynamic] rather than an [Object][], was to avoid users having to [cast][Object Casting] the component to its correct type to be able to use all of its properties. + +As a result, any issues with using the [Component][Component Property] (i.e. trying to access a property it does not have) will not be reported as messages when trying to debug the flow; they will only be discovered when the flow execution reaches the part of the flow with the issue. + +If it is desirable to have any issues reported as messages when trying to debug the flow, the user can [cast][Object Casting] the variable specified for [Component][Component Property] to its correct type when using it (e.g. for UtcDateTime component it could be case as follows: `(DateTime)($)Component`). + +[DateTime Property]: {{< ref "#date-time" >}} +[ComponentType Property]: {{< ref "#component-type" >}} +[Component Property]: {{< ref "#component" >}} +[Examples]: {{< ref "#examples" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[ArgumentException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentException" >}} + +[ISO 8601 Standard]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.DateAndTimeFormatting.ISO8601Standard" >}} +[Working with Date and Time]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.MainDoc" >}} +[Object Casting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectCasting.MainDoc" >}} + +[Object]: {{< url path="Cortex.Reference.DataTypes.All.Object.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[DateTimeOffset]: {{< url path="Cortex.Reference.DataTypes.DateAndTime.DateTimeOffset.MainDoc" >}} +[DateTime]: {{< url path="Cortex.Reference.DataTypes.DateAndTime.DateTime.MainDoc" >}} +[DateTimeComponentType]: {{< url path="Cortex.Reference.DataTypes.DateAndTime.DateTimeComponentType.MainDoc" >}} +[TimePeriod]: {{< url path="Cortex.Reference.DataTypes.DateAndTime.TimePeriod.MainDoc" >}} +[TimeSpan]: {{< url path="Cortex.Reference.DataTypes.DateAndTime.TimeSpan.MainDoc" >}} +[DayOfWeek]: {{< url path="Cortex.Reference.DataTypes.DateAndTime.DayOfWeek.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/date-and-time/get-time-period/_index.md b/content/en/docs/2024.11/Reference/Blocks/date-and-time/get-time-period/_index.md new file mode 100644 index 000000000..631288791 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/date-and-time/get-time-period/_index.md @@ -0,0 +1,5 @@ +--- +title: "Get Time Period" +linkTitle: "Get Time Period" +description: "Get the time period (Years, Months, Days, Hours, Minutes, Seconds and Milliseconds) between two date times." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/date-and-time/get-time-period/get-time-period-between-date-times-block.md b/content/en/docs/2024.11/Reference/Blocks/date-and-time/get-time-period/get-time-period-between-date-times-block.md new file mode 100644 index 000000000..e4fb7740f --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/date-and-time/get-time-period/get-time-period-between-date-times-block.md @@ -0,0 +1,146 @@ +--- +title: "Get Time Period Between Date Times" +linkTitle: "Get Time Period Between Date Times" +description: "Gets the Time Period between two Date Times." +--- + +{{< figure src="/blocks/Cortex_Blocks_DateAndTime_GetTimePeriod_GetTimePeriodBetweenDateTimesBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.DateAndTime.GetTimePeriod.GetTimePeriodBetweenDateTimesBlock)

+ +## Description + +Get the [Time Period][TimePeriod Property] between the specified [Start Date Time][StartDateTime Property] and [End Date Time][EndDateTime Property]. + +## Examples + +### Get Time Period between Start Date Time and End Date Time + +This example will get the Time Period between `2021-01-01T00:00:00+00:00` and `2022-01-01T00:00:00+00:00`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Start Date Time][StartDateTime Property] | `($)StartDateTime`, with value of [DateTimeOffset][] that has a text representation of `2021-01-01T00:00:00+00:00` | `($)StartDateTime` is a variable of type [DateTimeOffset][] | +| [End Date Time][EndDateTime Property] | `($)EndDateTime`, with value of [DateTimeOffset][] that has a text representation of `2022-01-01T00:00:00+00:00` | `($)EndDateTime` is a variable of type [DateTimeOffset][] | +| [Time Period][TimePeriod Property] | `($)TimePeriod`, with no value | `($)TimePeriod` is a variable that will be set to a [TimePeriod][] value | + +#### Result + +Getting the Time Period between `2021-01-01T00:00:00+00:00` and `2022-01-01T00:00:00+00:00` will result in the variable `($)TimePeriod` being updated to the following: + +```json +{ + "Years": 0, + "Months": 0, + "Days": 365, + "Hours": 0, + "Minutes": 0, + "Seconds": 0, + "Milliseconds": 0 +} +``` + +*** + +## Properties + +### Start Date Time + +The [Start Date Time][StartDateTime Property] to get the Time Period between. + +Its text representation will be in the [ISO 8601 Standard][] (e.g. `2021-11-05T08:48:08.0307614+00:00`). + +For more information about Date and Time, please see [Working with Date and Time][]. + +| | | +|--------------------|---------------------------| +| Data Type | [DateTimeOffset][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)StartDateTime` with no value | + +### End Date Time + +The [End Date Time][EndDateTime Property] to get the Time Period between. + +Its text representation will be in the [ISO 8601 Standard][] (e.g. `2021-11-05T08:48:08.0307614+00:00`). + +For more information about Date and Time, please see [Working with Date and Time][]. + +| | | +|--------------------|---------------------------| +| Data Type | [DateTimeOffset][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)EndDateTime` with no value | + +### Time Period + +The [Time Period][TimePeriod Property] between the [Start Date Time][StartDateTime Property] and [End Date Time][EndDateTime Property]. + +[Time Period][TimePeriod Property] can have positive and negative components where components are: + +* Years +* Months +* Days +* Hours +* Minutes +* Seconds +* Milliseconds + +In this block, the Year and Month components are not used as they aren't constant (i.e. Years can have different numbers of days depending upon whether it is a leap year or not, and months can have different numbers of days); instead Days will be used. + +[Time Period][TimePeriod Property] is calculated by subtracting [Start Date Time][StartDateTime Property] from [End Date Time][EndDateTime Property]; therefore if [Start Date Time][StartDateTime Property] is less than [End Date Time][EndDateTime Property], the [Time Period][TimePeriod Property] components will be positive, if it is equal they will be `0` and finally if it is greater than they will be negative. + +For more information about Date and Time, please see [Working with Date and Time][]. + +| | | +|--------------------|---------------------------| +| Data Type | [TimePeriod][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)TimePeriod` with no value | + +## Exceptions + +No exceptions are thrown by the block. + +## Remarks + +### Dates and Time + +The default text representation of Date and Time will be in the [ISO 8601 Standard][] (e.g. `2021-11-05T08:48:08.0307614+00:00`). + +For more information, please see [Working with Date and Time][]. + +### Years and Months components not used + +In this block, the Year and Month components are not used as they aren't constant (i.e. Years can have different numbers of days depending upon whether it is a leap year or not, and months can have different numbers of days); instead Days will be used. + +### Start Date Time greater than End Date Time + +[Start Date Time][StartDateTime Property] can be greater than [End Date Time][EndDateTime Property]; if this is the case the components of the [Time Period][TimePeriod Property] will be negative. + +[StartDateTime Property]: {{< ref "#start-date-time" >}} +[EndDateTime Property]: {{< ref "#end-date-time" >}} +[TimePeriod Property]: {{< ref "#time-period" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[ISO 8601 Standard]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.DateAndTimeFormatting.ISO8601Standard" >}} +[Working with Date and Time]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.MainDoc" >}} + +[DateTimeOffset]: {{< url path="Cortex.Reference.DataTypes.DateAndTime.DateTimeOffset.MainDoc" >}} +[TimePeriod]: {{< url path="Cortex.Reference.DataTypes.DateAndTime.TimePeriod.MainDoc" >}} + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/date-and-time/is-date-time/_index.md b/content/en/docs/2024.11/Reference/Blocks/date-and-time/is-date-time/_index.md new file mode 100644 index 000000000..0bc30351e --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/date-and-time/is-date-time/_index.md @@ -0,0 +1,5 @@ +--- +title: "Is Date Time" +linkTitle: "Is Date Time" +description: "Check if a date time is equal to another date time, before it, after it, or between two date times." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/date-and-time/is-date-time/is-date-time-after-block.md b/content/en/docs/2024.11/Reference/Blocks/date-and-time/is-date-time/is-date-time-after-block.md new file mode 100644 index 000000000..18dc3cbd2 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/date-and-time/is-date-time/is-date-time-after-block.md @@ -0,0 +1,156 @@ +--- +title: "Is Date Time After" +linkTitle: "Is Date Time After" +description: "Checks if a Date Time is after another Date Time." +--- + +{{< figure src="/blocks/Cortex_Blocks_DateAndTime_IsDateTime_IsDateTimeAfterBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.DateAndTime.IsDateTime.IsDateTimeAfterBlock)

+ +## Description + +Checks if a [Date Time][DateTime Property] is after a given [Date Time To Compare][DateTimeToCompare Property]. + +## Examples + +### Date Time is after Date Time To Compare + +This example will check if `2022-01-01T00:00:00+00:00` is after `2021-01-01T00:00:00+00:00`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Date Time][DateTime Property] | `($)DateTime`, with value of [DateTimeOffset][] that has a text representation of `2022-01-01T00:00:00+00:00` | `($)DateTime` is a variable of type [DateTimeOffset][] | +| [Date Time To Compare][DateTimeToCompare Property] | `($)DateTimeToCompare`, with value of [DateTimeOffset][] that has a text representation of `2021-01-01T00:00:00+00:00` | `($)DateTimeToCompare` is a variable of type [DateTimeOffset][] | +| [Date Time Is After][DateTimeIsAfter Property] | `($)DateTimeIsAfter`, with no value | `($)DateTime` is a variable that will be set to a [Boolean][] value | + +#### Result + +Checking if `2022-01-01T00:00:00+00:00` is after `2021-01-01T00:00:00+00:00` will result in the variable `($)DateTimeIsAfter` being updated to the following: + +```json +true +``` + +*** + +### Date Time is before Date Time To Compare + +This example will check if `2021-01-01T00:00:00+00:00` is after `2022-01-01T00:00:00+00:00`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Date Time][DateTime Property] | `($)DateTime`, with value of [DateTimeOffset][] that has a text representation of `2021-01-01T00:00:00+00:00` | `($)DateTime` is a variable of type [DateTimeOffset][] | +| [Date Time To Compare][DateTimeToCompare Property] | `($)DateTimeToCompare`, with value of [DateTimeOffset][] that has a text representation of `2022-01-01T00:00:00+00:00` | `($)DateTimeToCompare` is a variable of type [DateTimeOffset][] | +| [Date Time Is After][DateTimeIsAfter Property] | `($)DateTimeIsAfter`, with no value | `($)DateTime` is a variable that will be set to a [Boolean][] value | + +#### Result + +Checking if `2021-01-01T00:00:00+00:00` is after `2022-01-01T00:00:00+00:00` will result in the variable `($)DateTimeIsAfter` being updated to the following: + +```json +false +``` + +*** + +### Date Time is equal to Date Time To Compare + +This example will check if `2022-01-01T00:00:00+00:00` is after `2022-01-01T00:00:00+00:00`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Date Time][DateTime Property] | `($)DateTime`, with value of [DateTimeOffset][] that has a text representation of `2022-01-01T00:00:00+00:00` | `($)DateTime` is a variable of type [DateTimeOffset][] | +| [Date Time To Compare][DateTimeToCompare Property] | `($)DateTimeToCompare`, with value of [DateTimeOffset][] that has a text representation of `2022-01-01T00:00:00+00:00` | `($)DateTimeToCompare` is a variable of type [DateTimeOffset][] | +| [Date Time Is After][DateTimeIsAfter Property] | `($)DateTimeIsAfter`, with no value | `($)DateTime` is a variable that will be set to a [Boolean][] value | + +#### Result + +Checking if `2022-01-01T00:00:00+00:00` is after `2022-01-01T00:00:00+00:00` will result in the variable `($)DateTimeIsAfter` being updated to the following: + +```json +false +``` + +*** + +## Properties + +### Date Time + +The [Date Time][DateTime Property] to check is after [Date Time To Compare][DateTimeToCompare Property]. + +For more information about Date and Time, please see [Working with Date and Time][]. + +| | | +|--------------------|---------------------------| +| Data Type | [DateTimeOffset][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)DateTime` with no value | + +### Date Time To Compare + +The Date Time to check if [Date Time][DateTime Property] is after. + +For more information about Date and Time, please see [Working with Date and Time][]. + +| | | +|--------------------|---------------------------| +| Data Type | [DateTimeOffset][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)DateTimeToCompare` with no value | + +### Date Time Is After + +The result of the is after check. + +If [Date Time][DateTime Property] is after [Date Time To Compare][DateTimeToCompare Property], the specified variable will be set to `true`, otherwise it will be set to `false`. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)DateTimeIsAfter` with no value | + +## Exceptions + +No exceptions are thrown by the block. + +## Remarks + +### Dates and Time + +The default text representation of Date and Time will be in the [ISO 8601 Standard][] (e.g. `2021-11-05T08:48:08.0307614+00:00`). + +For more information, please see [Working with Date and Time][]. + +[DateTime Property]: {{< ref "#date-time" >}} +[DateTimeToCompare Property]: {{< ref "#date-time-to-compare" >}} +[DateTimeIsAfter Property]: {{< ref "#date-time-is-after" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[ISO 8601 Standard]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.DateAndTimeFormatting.ISO8601Standard" >}} +[Working with Date and Time]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.MainDoc" >}} + +[DateTimeOffset]: {{< url path="Cortex.Reference.DataTypes.DateAndTime.DateTimeOffset.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/date-and-time/is-date-time/is-date-time-before-block.md b/content/en/docs/2024.11/Reference/Blocks/date-and-time/is-date-time/is-date-time-before-block.md new file mode 100644 index 000000000..107d3c2af --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/date-and-time/is-date-time/is-date-time-before-block.md @@ -0,0 +1,156 @@ +--- +title: "Is Date Time Before" +linkTitle: "Is Date Time Before" +description: "Checks if a Date Time is before another Date Time." +--- + +{{< figure src="/blocks/Cortex_Blocks_DateAndTime_IsDateTime_IsDateTimeBeforeBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.DateAndTime.IsDateTime.IsDateTimeBeforeBlock)

+ +## Description + +Checks if a [Date Time][DateTime Property] is before a given [Date Time To Compare][DateTimeToCompare Property]. + +## Examples + +### Date Time is before Date Time To Compare + +This example will check if `2021-01-01T00:00:00+00:00` is before `2022-01-01T00:00:00+00:00`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Date Time][DateTime Property] | `($)DateTime`, with value of [DateTimeOffset][] that has a text representation of `2021-01-01T00:00:00+00:00` | `($)DateTime` is a variable of type [DateTimeOffset][] | +| [Date Time To Compare][DateTimeToCompare Property] | `($)DateTimeToCompare`, with value of [DateTimeOffset][] that has a text representation of `2022-01-01T00:00:00+00:00` | `($)DateTimeToCompare` is a variable of type [DateTimeOffset][] | +| [Date Time Is Before][DateTimeIsBefore Property] | `($)DateTimeIsBefore`, with no value | `($)DateTime` is a variable that will be set to a [Boolean][] value | + +#### Result + +Checking if `2021-01-01T00:00:00+00:00` is before `2022-01-01T00:00:00+00:00` will result in the variable `($)DateTimeIsBefore` being updated to the following: + +```json +true +``` + +*** + +### Date Time is after Date Time To Compare + +This example will check if `2022-01-01T00:00:00+00:00` is before `2021-01-01T00:00:00+00:00`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Date Time][DateTime Property] | `($)DateTime`, with value of [DateTimeOffset][] that has a text representation of `2022-01-01T00:00:00+00:00` | `($)DateTime` is a variable of type [DateTimeOffset][] | +| [Date Time To Compare][DateTimeToCompare Property] | `($)DateTimeToCompare`, with value of [DateTimeOffset][] that has a text representation of `2021-01-01T00:00:00+00:00` | `($)DateTimeToCompare` is a variable of type [DateTimeOffset][] | +| [Date Time Is Before][DateTimeIsBefore Property] | `($)DateTimeIsBefore`, with no value | `($)DateTime` is a variable that will be set to a [Boolean][] value | + +#### Result + +Checking if `2022-01-01T00:00:00+00:00` is before `2021-01-01T00:00:00+00:00` will result in the variable `($)DateTimeIsBefore` being updated to the following: + +```json +false +``` + +*** + +### Date Time is equal to Date Time To Compare + +This example will check if `2022-01-01T00:00:00+00:00` is before `2022-01-01T00:00:00+00:00`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Date Time][DateTime Property] | `($)DateTime`, with value of [DateTimeOffset][] that has a text representation of `2022-01-01T00:00:00+00:00` | `($)DateTime` is a variable of type [DateTimeOffset][] | +| [Date Time To Compare][DateTimeToCompare Property] | `($)DateTimeToCompare`, with value of [DateTimeOffset][] that has a text representation of `2022-01-01T00:00:00+00:00` | `($)DateTimeToCompare` is a variable of type [DateTimeOffset][] | +| [Date Time Is Before][DateTimeIsBefore Property] | `($)DateTimeIsBefore`, with no value | `($)DateTime` is a variable that will be set to a [Boolean][] value | + +#### Result + +Checking if `2022-01-01T00:00:00+00:00` is before `2022-01-01T00:00:00+00:00` will result in the variable `($)DateTimeIsBefore` being updated to the following: + +```json +false +``` + +*** + +## Properties + +### Date Time + +The [Date Time][DateTime Property] to check is before [Date Time To Compare][DateTimeToCompare Property]. + +For more information about Date and Time, please see [Working with Date and Time][]. + +| | | +|--------------------|---------------------------| +| Data Type | [DateTimeOffset][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)DateTime` with no value | + +### Date Time To Compare + +The Date Time to check if [Date Time][DateTime Property] is before. + +For more information about Date and Time, please see [Working with Date and Time][]. + +| | | +|--------------------|---------------------------| +| Data Type | [DateTimeOffset][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)DateTimeToCompare` with no value | + +### Date Time Is Before + +The result of the is before check. + +If [Date Time][DateTime Property] is before [Date Time To Compare][DateTimeToCompare Property], the specified variable will be set to `true`, otherwise it will be set to `false`. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)DateTimeIsBefore` with no value | + +## Exceptions + +No exceptions are thrown by the block. + +## Remarks + +### Dates and Time + +The default text representation of Date and Time will be in the [ISO 8601 Standard][] (e.g. `2021-11-05T08:48:08.0307614+00:00`). + +For more information, please see [Working with Date and Time][]. + +[DateTime Property]: {{< ref "#date-time" >}} +[DateTimeToCompare Property]: {{< ref "#date-time-to-compare" >}} +[DateTimeIsBefore Property]: {{< ref "#date-time-is-before" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[ISO 8601 Standard]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.DateAndTimeFormatting.ISO8601Standard" >}} +[Working with Date and Time]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.MainDoc" >}} + +[DateTimeOffset]: {{< url path="Cortex.Reference.DataTypes.DateAndTime.DateTimeOffset.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/date-and-time/is-date-time/is-date-time-between-block.md b/content/en/docs/2024.11/Reference/Blocks/date-and-time/is-date-time/is-date-time-between-block.md new file mode 100644 index 000000000..f4e3f95eb --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/date-and-time/is-date-time/is-date-time-between-block.md @@ -0,0 +1,161 @@ +--- +title: "Is Date Time Between" +linkTitle: "Is Date Time Between" +description: "Checks if a Date Time is between two Date Times." +--- + +{{< figure src="/blocks/Cortex_Blocks_DateAndTime_IsDateTime_IsDateTimeBetweenBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.DateAndTime.IsDateTime.IsDateTimeBetweenBlock)

+ +## Description + +Checks if a [Date Time][DateTime Property] is between the specified [Start Date Time][StartDateTime Property] and [End Date Time][EndDateTime Property]. + +## Examples + +### Date Time is between Start Date Time and End Date Time + +This example will check if `2021-06-01T00:00:00+00:00` is between `2021-01-01T00:00:00+00:00` and `2022-01-01T00:00:00+00:00`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Date Time][DateTime Property] | `($)DateTime`, with value of [DateTimeOffset][] that has a text representation of `2021-06-01T00:00:00+00:00` | `($)DateTime` is a variable of type [DateTimeOffset][] | +| [Start Date Time][StartDateTime Property] | `($)StartDateTime`, with value of [DateTimeOffset][] that has a text representation of `2021-01-01T00:00:00+00:00` | `($)StartDateTime` is a variable of type [DateTimeOffset][] | +| [End Date Time][EndDateTime Property] | `($)EndDateTime`, with value of [DateTimeOffset][] that has a text representation of `2022-01-01T00:00:00+00:00` | `($)EndDateTime` is a variable of type [DateTimeOffset][] | +| [Date Time Is Between][DateTimeIsBetween Property] | `($)DateTimeIsBetween`, with no value | `($)DateTime` is a variable that will be set to a [Boolean][] value | + +#### Result + +Checking if `2021-06-01T00:00:00+00:00` is between `2021-01-01T00:00:00+00:00` and `2022-01-01T00:00:00+00:00` will result in the variable `($)DateTimeIsBetween` being updated to the following: + +```json +true +``` + +*** + +### Date Time is not between Start Date Time and End Date Time + +This example will check if `2020-01-01T00:00:00+00:00` is between `2021-01-01T00:00:00+00:00` and `2022-01-01T00:00:00+00:00`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Date Time][DateTime Property] | `($)DateTime`, with value of [DateTimeOffset][] that has a text representation of `2020-01-01T00:00:00+00:00` | `($)DateTime` is a variable of type [DateTimeOffset][] | +| [Start Date Time][StartDateTime Property] | `($)StartDateTime`, with value of [DateTimeOffset][] that has a text representation of `2021-01-01T00:00:00+00:00` | `($)StartDateTime` is a variable of type [DateTimeOffset][] | +| [End Date Time][EndDateTime Property] | `($)EndDateTime`, with value of [DateTimeOffset][] that has a text representation of `2022-01-01T00:00:00+00:00` | `($)EndDateTime` is a variable of type [DateTimeOffset][] | +| [Date Time Is Between][DateTimeIsBetween Property] | `($)DateTimeIsBetween`, with no value | `($)DateTime` is a variable that will be set to a [Boolean][] value | + +#### Result + +Checking if `2020-01-01T00:00:00+00:00` is between `2021-01-01T00:00:00+00:00` and `2022-01-01T00:00:00+00:00` will result in the variable `($)DateTimeIsBetween` being updated to the following: + +```json +false +``` + +*** + +## Properties + +### Date Time + +The [Date Time][DateTime Property] to check is between [Start Date Time][StartDateTime Property] and [End Date Time][EndDateTime Property]. + +For more information about Date and Time, please see [Working with Date and Time][]. + +| | | +|--------------------|---------------------------| +| Data Type | [DateTimeOffset][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)DateTime` with no value | + +### Start Date Time + +The [Start Date Time][StartDateTime Property] to check against. This is inclusive, which means if [Date Time][DateTime Property] is equal to it, it will be considered between. + +For more information about Date and Time, please see [Working with Date and Time][]. + +| | | +|--------------------|---------------------------| +| Data Type | [DateTimeOffset][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)StartDateTime` no value | + +### End Date Time + +The [End Date Time][EndDateTime Property] to check against. This is inclusive, which means if [Date Time][DateTime Property] is equal to it, it will be considered between. + +For more information about Date and Time, please see [Working with Date and Time][]. + +| | | +|--------------------|---------------------------| +| Data Type | [DateTimeOffset][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)EndDateTime` with no value | + +### Date Time Is Between + +The result of the is between check. + +If [Date Time][DateTime Property] is between (and including) the [Start Date Time][StartDateTime Property] and [End Date Time][EndDateTime Property], the specified variable will be set to `true`, otherwise it will be set to `false`. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)DateTimeIsBetween` with no value | + +## Exceptions + +No exceptions are thrown by the block. + +## Remarks + +### Dates and Time + +The default text representation of Date and Time will be in the [ISO 8601 Standard][] (e.g. `2021-11-05T08:48:08.0307614+00:00`). + +For more information, please see [Working with Date and Time][]. + +### Start Date Time and End Date Time are inclusive + +The [Start Date Time][StartDateTime Property] and [End Date Time][EndDateTime Property] properties are both inclusive, which means if [Date Time][DateTime Property] is equal to either of them, it will be considered between. + +### Start Date Time greater than End Date Time + +[Start Date Time][StartDateTime Property] can be greater than [End Date Time][EndDateTime Property]; as long as [Date Time][DateTime Property] is between or equal to either of them the variable specified for [Date Time Is Between][DateTimeIsBetween Property] will be set to `true`, otherwise it will be set to `false`. + +[DateTime Property]: {{< ref "#date-time" >}} +[StartDateTime Property]: {{< ref "#start-date-time" >}} +[EndDateTime Property]: {{< ref "#end-date-time" >}} +[DateTimeIsBetween Property]: {{< ref "#date-time-is-between" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[ISO 8601 Standard]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.DateAndTimeFormatting.ISO8601Standard" >}} +[Working with Date and Time]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.MainDoc" >}} + +[DateTimeOffset]: {{< url path="Cortex.Reference.DataTypes.DateAndTime.DateTimeOffset.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/date-and-time/is-date-time/is-date-time-equal-block.md b/content/en/docs/2024.11/Reference/Blocks/date-and-time/is-date-time/is-date-time-equal-block.md new file mode 100644 index 000000000..1c0da869a --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/date-and-time/is-date-time/is-date-time-equal-block.md @@ -0,0 +1,156 @@ +--- +title: "Is Date Time Equal" +linkTitle: "Is Date Time Equal" +description: "Checks if a Date Time is equal to another Date Time." +--- + +{{< figure src="/blocks/Cortex_Blocks_DateAndTime_IsDateTime_IsDateTimeEqualBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.DateAndTime.IsDateTime.IsDateTimeEqualBlock)

+ +## Description + +Checks if a [Date Time][DateTime Property] is equal to a given [Date Time To Compare][DateTimeToCompare Property]. + +## Examples + +### Date Time is equal to Date Time To Compare + +This example will check if `2022-01-01T00:00:00+00:00` is equal to `2022-01-01T00:00:00+00:00`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Date Time][DateTime Property] | `($)DateTime`, with value of [DateTimeOffset][] that has a text representation of `2022-01-01T00:00:00+00:00` | `($)DateTime` is a variable of type [DateTimeOffset][] | +| [Date Time To Compare][DateTimeToCompare Property] | `($)DateTimeToCompare`, with value of [DateTimeOffset][] that has a text representation of `2022-01-01T00:00:00+00:00` | `($)DateTimeToCompare` is a variable of type [DateTimeOffset][] | +| [Date Time Is Equal][DateTimeIsEqual Property] | `($)DateTimeIsEqual`, with no value | `($)DateTime` is a variable that will be set to a [Boolean][] value | + +#### Result + +Checking if `2022-01-01T00:00:00+00:00` is equal `2022-01-01T00:00:00+00:00` will result in the variable `($)DateTimeIsEqual` being updated to the following: + +```json +true +``` + +*** + +### Date Time is after Date Time To Compare + +This example will check if `2022-01-01T00:00:00+00:00` is equal to `2021-01-01T00:00:00+00:00`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Date Time][DateTime Property] | `($)DateTime`, with value of [DateTimeOffset][] that has a text representation of `2022-01-01T00:00:00+00:00` | `($)DateTime` is a variable of type [DateTimeOffset][] | +| [Date Time To Compare][DateTimeToCompare Property] | `($)DateTimeToCompare`, with value of [DateTimeOffset][] that has a text representation of `2021-01-01T00:00:00+00:00` | `($)DateTimeToCompare` is a variable of type [DateTimeOffset][] | +| [Date Time Is Equal][DateTimeIsEqual Property] | `($)DateTimeIsEqual`, with no value | `($)DateTime` is a variable that will be set to a [Boolean][] value | + +#### Result + +Checking if `2022-01-01T00:00:00+00:00` is equal to `2021-01-01T00:00:00+00:00` will result in the variable `($)DateTimeIsEqual` being updated to the following: + +```json +false +``` + +*** + +### Date Time is before Date Time To Compare + +This example will check if `2021-01-01T00:00:00+00:00` is equal to `2022-01-01T00:00:00+00:00`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Date Time][DateTime Property] | `($)DateTime`, with value of [DateTimeOffset][] that has a text representation of `2021-01-01T00:00:00+00:00` | `($)DateTime` is a variable of type [DateTimeOffset][] | +| [Date Time To Compare][DateTimeToCompare Property] | `($)DateTimeToCompare`, with value of [DateTimeOffset][] that has a text representation of `2022-01-01T00:00:00+00:00` | `($)DateTimeToCompare` is a variable of type [DateTimeOffset][] | +| [Date Time Is Equal][DateTimeIsEqual Property] | `($)DateTimeIsEqual`, with no value | `($)DateTime` is a variable that will be set to a [Boolean][] value | + +#### Result + +Checking if `2021-01-01T00:00:00+00:00` is equal to `2022-01-01T00:00:00+00:00` will result in the variable `($)DateTimeIsEqual` being updated to the following: + +```json +false +``` + +*** + +## Properties + +### Date Time + +The [Date Time][DateTime Property] to check is equal to [Date Time To Compare][DateTimeToCompare Property]. + +For more information about Date and Time, please see [Working with Date and Time][]. + +| | | +|--------------------|---------------------------| +| Data Type | [DateTimeOffset][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)DateTime` with no value | + +### Date Time To Compare + +The Date Time to check if [Date Time][DateTime Property] is equal to. + +For more information about Date and Time, please see [Working with Date and Time][]. + +| | | +|--------------------|---------------------------| +| Data Type | [DateTimeOffset][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)DateTimeToCompare` with no value | + +### Date Time Is Equal + +The result of the is equal check. + +If [Date Time][DateTime Property] is equal to [Date Time To Compare][DateTimeToCompare Property], the specified variable will be set to `true`, otherwise it will be set to `false`. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)DateTimeIsEqual` with no value | + +## Exceptions + +No exceptions are thrown by the block. + +## Remarks + +### Dates and Time + +The default text representation of Date and Time will be in the [ISO 8601 Standard][] (e.g. `2021-11-05T08:48:08.0307614+00:00`). + +For more information, please see [Working with Date and Time][]. + +[DateTime Property]: {{< ref "#date-time" >}} +[DateTimeToCompare Property]: {{< ref "#date-time-to-compare" >}} +[DateTimeIsEqual Property]: {{< ref "#date-time-is-equal" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[ISO 8601 Standard]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.DateAndTimeFormatting.ISO8601Standard" >}} +[Working with Date and Time]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.MainDoc" >}} + +[DateTimeOffset]: {{< url path="Cortex.Reference.DataTypes.DateAndTime.DateTimeOffset.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/date-and-time/subtract-time-period/_index.md b/content/en/docs/2024.11/Reference/Blocks/date-and-time/subtract-time-period/_index.md new file mode 100644 index 000000000..95e6ebff1 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/date-and-time/subtract-time-period/_index.md @@ -0,0 +1,5 @@ +--- +title: "Subtract Time Period" +linkTitle: "Subtract Time Period" +description: "Subtract a time period (Years, Months, Days, Hours, Minutes, Seconds and Milliseconds) from a date time." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/date-and-time/subtract-time-period/subtract-time-period-block.md b/content/en/docs/2024.11/Reference/Blocks/date-and-time/subtract-time-period/subtract-time-period-block.md new file mode 100644 index 000000000..be69f77f9 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/date-and-time/subtract-time-period/subtract-time-period-block.md @@ -0,0 +1,157 @@ +--- +title: "Subtract Time Period" +linkTitle: "Subtract Time Period" +description: "Subtracts a Time Period to from specified Date Time." +--- + +{{< figure src="/blocks/Cortex_Blocks_DateAndTime_SubtractTimePeriod_SubtractTimePeriodBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.DateAndTime.SubtractTimePeriod.SubtractTimePeriodBlock)

+ +## Description + +Subtracts a [Time Period][TimePeriod Property] from the specified [Date Time][DateTime Property]. + +This block can subtract both positive and negative [TimePeriod][] values. + +## Examples + +### Subtract a positive Time Period + +This example will subtract `1 year` from `2022-01-01T00:00:00+00:00`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Date Time][DateTime Property] | `($)DateTime`, with value of [DateTimeOffset][] that has a text representation of `2022-01-01T00:00:00+00:00` | `($)DateTime` is a variable of type [DateTimeOffset][] | +| [Time Period][TimePeriod Property] | `($)TimePeriod`, with value of `{"Years": 1, "Months": 0, "Days": 0, "Hours": 0, "Minutes": 0, "Seconds": 0, "Milliseconds": 0}` | `($)TimePeriod` is a variable of type [TimePeriod][] | + +#### Result + +Subtracting `1 year` from `2022-01-01T00:00:00+00:00` will result in the variable `($)DateTime` being updated. Its text representation will be in the [ISO 8601 Standard][], which can be seen below: + +```json +"2021-01-01T00:00:00+00:00" +``` + +*** + +### Subtract a negative Time Period + +This example will subtract `-1 year` from `2021-01-01T00:00:00+00:00`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Date Time][DateTime Property] | `($)DateTime`, with value of [DateTimeOffset][] that has a text representation of `2021-01-01T00:00:00+00:00` | `($)DateTime` is a variable of type [DateTimeOffset][] | +| [Time Period][TimePeriod Property] | `($)TimePeriod`, with value of `{"Years": -1, "Months": 0, "Days": 0, "Hours": 0, "Minutes": 0, "Seconds": 0, "Milliseconds": 0}` | `($)TimePeriod` is a variable of type [TimePeriod][] | + +#### Result + +Subtracting `-1 year` from `2021-01-01T00:00:00+00:00` will result in `1 year` being added and the variable `($)DateTime` being updated. Its text representation will be in the [ISO 8601 Standard][], which can be seen below: + +```json +"2022-01-01T00:00:00+00:00" +``` + +*** + +## Properties + +### Date Time + +The [Date Time][DateTime Property] to subtract the [Time Period][TimePeriod Property] from. + +Its text representation will be in the [ISO 8601 Standard][] (e.g. `2021-11-05T08:48:08.0307614+00:00`). + +For more information about Date and Time, please see [Working with Date and Time][]. + +| | | +|--------------------|---------------------------| +| Data Type | [DateTimeOffset][] | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)DateTime` with no value | + +### Time Period + +The [Time Period][TimePeriod Property] to subtract from the [Date Time][DateTime Property]. + +[Time Period][TimePeriod Property] can have positive and negative components where components are: + +* Years +* Months +* Days +* Hours +* Minutes +* Seconds +* Milliseconds + +When subtracting a [Time Period][TimePeriod Property], the block will first subtract years, followed by months, days, hours, minutes, seconds and finally milliseconds. + +When subtracting months, if the current day component is greater than the last day in the resultant month, it will update the day to the last day for that month (e.g. subtracting one month from `2021-02-28T23:59:59+00:00` will equate to `2021-01-31T23:59:59+00:00`). + +For more information about Date and Time, please see [Working with Date and Time][]. + +| | | +|--------------------|---------------------------| +| Data Type | [TimePeriod][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | Years: `0`
Months: `0`
Days: `0`
Hours: `0`
Minutes: `0`
Seconds: `0`
Milliseconds: `0`| + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyValueOutOfRangeException][] | Thrown when subtracting [Time Period][TimePeriod Property] from [Date Time][DateTime Property] will result in the [Date Time][DateTime Property] being less than `0001-01-01T00:00:00+00:00`. See [Property Less Than Minimum Value][].| +| | Thrown when subtracting [Time Period][TimePeriod Property] from [Date Time][DateTime Property] will result in the [Date Time][DateTime Property] being greater than `9999-12-31T23:59:59+00:00`. See [Property Greater Than Maximum Value][]. | + +## Remarks + +### Dates and Time + +The default text representation of Date and Time will be in the [ISO 8601 Standard][] (e.g. `2021-11-05T08:48:08.0307614+00:00`). + +For more information, please see [Working with Date and Time][]. + +### Order of calculations + +When subtracting a [Time Period][TimePeriod Property], the block will first subtract years, followed by months, days, hours, minutes, seconds and finally milliseconds. + +### Subtraction of Months + +When subtracting months from the [Date Time][DateTime Property], if the current day component is greater than the last day in the resultant month, it will update the day to the last day for that month (e.g. subtracting one month from `2021-02-28T23:59:59+00:00` will equate to `2021-01-31T23:59:59+00:00`). + +### Daylight Savings + +This block copes with UTC time offsets but does not know anything about which time zone the [Date Time][DateTime Property] represents; as a result it cannot take daylight savings into account as these are related to time zones rather than UTC time offsets. + +[DateTime Property]: {{< ref "#date-time" >}} +[TimePeriod Property]: {{< ref "#time-period" >}} + +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[PropertyValueOutOfRangeException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.MainDoc" >}} +[Property Greater Than Maximum Value]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.PropertyGreaterThanMaximumValue" >}} +[Property Less Than Minimum Value]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.PropertyLessThanMinimumValue" >}} + +[ISO 8601 Standard]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.DateAndTimeFormatting.ISO8601Standard" >}} +[Working with Date and Time]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.MainDoc" >}} + +[DateTimeOffset]: {{< url path="Cortex.Reference.DataTypes.DateAndTime.DateTimeOffset.MainDoc" >}} +[TimePeriod]: {{< url path="Cortex.Reference.DataTypes.DateAndTime.TimePeriod.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/decisions/_index.md b/content/en/docs/2024.11/Reference/Blocks/decisions/_index.md new file mode 100644 index 000000000..15b7f418c --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/decisions/_index.md @@ -0,0 +1,5 @@ +--- +title: "Decisions" +linkTitle: "Decisions" +description: "Blocks related to making decisions and branching the path a flow execution takes." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/decisions/if/_index.md b/content/en/docs/2024.11/Reference/Blocks/decisions/if/_index.md new file mode 100644 index 000000000..cd4e027e1 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/decisions/if/_index.md @@ -0,0 +1,5 @@ +--- +title: "If Else" +linkTitle: "If Else" +description: "Perform if-else like conditional decision making." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/decisions/if/if-null-exit-bottom-block-1.md b/content/en/docs/2024.11/Reference/Blocks/decisions/if/if-null-exit-bottom-block-1.md new file mode 100644 index 000000000..93099fb1b --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/decisions/if/if-null-exit-bottom-block-1.md @@ -0,0 +1,96 @@ +--- +title: "If Null Exit Bottom" +linkTitle: "If Null Exit Bottom" +description: "Checks if a given value is `null`; if so the flow execution exits via the block's bottom port, otherwise it exits via the right port." +--- + +{{< figure src="/blocks/Cortex_Blocks_Decisions_If_IfNullExitBottomBlock_1.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Decisions.If.IfNullExitBottomBlock`1)

+ +## Description + +Checks if a given [Value][Value Property] is `null`; if so the flow execution exits via the block's bottom port (green tick), otherwise it exits via the right port (red cross). + +For information about `null`, please see [Null and Nullable Types][]. + +## Examples + +### Value is null + +This example will check if `null` is `null`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Value][Value Property] | `($)Value`, with value `null` | `($)Value` is a variable of type [String][] | + +#### Result + +`null` is `null`, so the flow execution exits via the block's bottom port (green tick). + +*** + +### Value is not null + +This example will check if `"The quick brown fox jumps over the lazy dog"` is `null`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Value][Value Property] | `($)Value`, with value `"The quick brown fox jumps over the lazy dog"` | `($)Value` is a variable of type [String][] | + +#### Result + +`"The quick brown fox jumps over the lazy dog"` is not `null`, so the flow execution exits via the block's right port (red cross). + +*** + +## Properties + +### Value + +The [Value][Value Property] to check is `null`. + +For information about `null`, please see [Null and Nullable Types][]. + +| | | +|--------------------|---------------------------| +| Data Type | [TValue][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | No value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyNotNullableException][] | Thrown when [Value][Value Property] is given a non-nullable value type. | + +## Remarks + +### Null and Nullable Types + +For information about `null`, please see [Null and Nullable Types][]. + +[Value Property]: {{< ref "#value" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[TValue]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[Null and Nullable Types]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.NullAndNullableTypes.MainDoc" >}} + +[PropertyNotNullableException]: {{< url path="Cortex.Reference.Exceptions.Decisions.PropertyNotNullableException.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/decisions/if/if-null-exit-right-block-1.md b/content/en/docs/2024.11/Reference/Blocks/decisions/if/if-null-exit-right-block-1.md new file mode 100644 index 000000000..2b7cd3735 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/decisions/if/if-null-exit-right-block-1.md @@ -0,0 +1,96 @@ +--- +title: "If Null Exit Right" +linkTitle: "If Null Exit Right" +description: "Checks if a given value is `null`; if so the flow execution exits via the block's right port, otherwise it exits via the bottom port." +--- + +{{< figure src="/blocks/Cortex_Blocks_Decisions_If_IfNullExitRightBlock_1.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Decisions.If.IfNullExitRightBlock`1)

+ +## Description + +Checks if a given [Value][Value Property] is `null`; if so the flow execution exits via the block's right port (green tick), otherwise it exits via the bottom port (red cross). + +For information about `null`, please see [Null and Nullable Types][]. + +## Examples + +### Value is null + +This example will check if `null` is `null`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Value][Value Property] | `($)Value`, with value `null` | `($)Value` is a variable of type [String][] | + +#### Result + +`null` is `null`, so the flow execution exits via the block's right port (green tick). + +*** + +### Value is not null + +This example will check if `"The quick brown fox jumps over the lazy dog"` is `null`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Value][Value Property] | `($)Value`, with value `"The quick brown fox jumps over the lazy dog"` | `($)Value` is a variable of type [String][] | + +#### Result + +`"The quick brown fox jumps over the lazy dog"` is not `null`, so the flow execution exits via the block's bottom port (red cross). + +*** + +## Properties + +### Value + +The [Value][Value Property] to check is `null`. + +For information about `null`, please see [Null and Nullable Types][]. + +| | | +|--------------------|---------------------------| +| Data Type | [TValue][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | No value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyNotNullableException][] | Thrown when [Value][Value Property] is given a non-nullable value type. | + +## Remarks + +### Null and Nullable Types + +For information about `null`, please see [Null and Nullable Types][]. + +[Value Property]: {{< ref "#value" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[TValue]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[Null and Nullable Types]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.NullAndNullableTypes.MainDoc" >}} + +[PropertyNotNullableException]: {{< url path="Cortex.Reference.Exceptions.Decisions.PropertyNotNullableException.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/decisions/if/if-true-exit-bottom-block.md b/content/en/docs/2024.11/Reference/Blocks/decisions/if/if-true-exit-bottom-block.md new file mode 100644 index 000000000..2e2c3cdf4 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/decisions/if/if-true-exit-bottom-block.md @@ -0,0 +1,81 @@ +--- +title: "If True Exit Bottom" +linkTitle: "If True Exit Bottom" +description: "Checks if a given value evaluates to `true`; if so the flow execution exits via the block's bottom port, otherwise it exits via the right port." +--- + +{{< figure src="/blocks/Cortex_Blocks_Decisions_If_IfTrueExitBottomBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Decisions.If.IfTrueExitBottomBlock)

+ +## Description + +Checks if a given [Value][Value Property] evaluates to `true`; if so the flow execution exits via the block's bottom port (green tick), otherwise it exits via the right port (red cross). + +## Examples + +### Value is true + +This example will check if `1 + 1 == 2` evaluates to `true` or `false`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Value][Value Property] | `($)Value`, with value `1 + 1 == 2` | `($)Value` is a variable whose value evaluates to type [Boolean][] | + +#### Result + +`1 + 1 == 2` is `true`, so the flow execution exits via the block's bottom port (green tick). + +*** + +### Value is false + +This example will check if `1 + 1 == 1` evaluates to `true` or `false`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Value][Value Property] | `($)Value`, with value `1 + 1 == 1` | `($)Value` is a variable whose value evaluates to type [Boolean][] | + +#### Result + +`1 + 1 == 1` is `false`, so the flow execution exits via the block's right port (red cross). + +*** + +## Properties + +### Value + +The [Value][Value Property] to check evaluates to `true` or `false`. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | No value | + +## Exceptions + +None + +## Remarks + +No remarks for the block. + +[Value Property]: {{< ref "#value" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/decisions/if/if-true-exit-right-block.md b/content/en/docs/2024.11/Reference/Blocks/decisions/if/if-true-exit-right-block.md new file mode 100644 index 000000000..9aab2593f --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/decisions/if/if-true-exit-right-block.md @@ -0,0 +1,81 @@ +--- +title: "If True Exit Right" +linkTitle: "If True Exit Right" +description: "Checks if a given value evaluates to `true`; if so the flow execution exits via the block's right port, otherwise it exits via the bottom port." +--- + +{{< figure src="/blocks/Cortex_Blocks_Decisions_If_IfTrueExitRightBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Decisions.If.IfTrueExitRightBlock)

+ +## Description + +Checks if a given [Value][Value Property] evaluates to `true`; if so the flow execution exits via the block's right port (green tick), otherwise it exits via the bottom port (red cross). + +## Examples + +### Value is true + +This example will check if `1 + 1 == 2` evaluates to `true` or `false`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Value][Value Property] | `($)Value`, with value `1 + 1 == 2` | `($)Value` is a variable whose value evaluates to type [Boolean][] | + +#### Result + +`1 + 1 == 2` is `true`, so the flow execution exits via the block's right port (green tick). + +*** + +### Value is false + +This example will check if `1 + 1 == 1` evaluates to `true` or `false`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Value][Value Property] | `($)Value`, with value `1 + 1 == 1` | `($)Value` is a variable whose value evaluates to type [Boolean][] | + +#### Result + +`1 + 1 == 1` is `false`, so the flow execution exits via the block's bottom port (red cross). + +*** + +## Properties + +### Value + +The [Value][Value Property] to check evaluates to `true` or `false`. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | No value | + +## Exceptions + +None + +## Remarks + +No remarks for the block. + +[Value Property]: {{< ref "#value" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/email/_index.md b/content/en/docs/2024.11/Reference/Blocks/email/_index.md new file mode 100644 index 000000000..da41aa5a8 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/email/_index.md @@ -0,0 +1,5 @@ +--- +title: "Email" +linkTitle: "Email" +description: "Blocks related to working with Emails." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/email/send-email/_index.md b/content/en/docs/2024.11/Reference/Blocks/email/send-email/_index.md new file mode 100644 index 000000000..c12558811 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/email/send-email/_index.md @@ -0,0 +1,5 @@ +--- +title: "Send Email" +linkTitle: "Send Email" +description: "Blocks related to sending Emails." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/email/send-email/send-email-using-smtp-server-block.md b/content/en/docs/2024.11/Reference/Blocks/email/send-email/send-email-using-smtp-server-block.md new file mode 100644 index 000000000..0c903c68e --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/email/send-email/send-email-using-smtp-server-block.md @@ -0,0 +1,581 @@ +--- +title: "Send Email Using SMTP Server" +linkTitle: "Send Email Using SMTP Server" +description: "Sends an email using the specified SMTP server." +--- + +{{< figure src="/blocks/Cortex_Blocks_Email_SendEmail_SendEmailUsingSmtpServerBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Email.SendEmail.SendEmailUsingSmtpServerBlock)

+ +## Description + +Connects to an [SMTP][] server using the specified [Basic Email Session Details][Basic Email Session Details Property], and sends an [Email Message][Email Message Property]. + +[Close Session][Close Session Property] can be specified to choose whether the connection to the [SMTP][] server is closed or is kept open for use on subsequent Send Email Using SMTP Server blocks. + +## Examples + +### Sending an email to a single recipient + +This example will send an email from `sender@gmail.com` to `recipient@outlook.com`. The example uses the [SMTP][] server hosted at `smtp.gmail.com` on [Port][] `465` which requires [UseSsl][] to be to set to `true` within the [Basic Email Session Details][Basic Email Session Details Property]. + +For more information about when [UseSsl][] should be set to `true` or `false`, see [Setting UseSsl][]. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Email Message][Email Message Property] | `($)EmailMessage` with value `{"To": [{"Name": null, "Address": "recipient@outlook.com"}], "From": {"Name": null, "Address": "sender@gmail.com"}, "Cc": [], "Bcc": [], "Priority": null, "Subject": "Example email subject", "BodyFormat": null, "Body": "Example email body", "Attachments": []}`

In this example `($)EmailMessage` has been set up using the following [Expression][]:

`new EmailMessage(to: new List(){ new EmailAddress("recipient@outlook.com") }, from: new EmailAddress("sender@gmail.com"), cc: null, bcc: null, priority: null, subject: "Example email subject", bodyFormat: null, body: "Example email body", attachments: null)` | `($)EmailMessage` is a variable of type [EmailMessage][]

As [Priority][] and [BodyFormat][] are `null`, the email will be sent with a [Text][] body and [Normal][] priority.| +| [Basic Email Session Details][Basic Email Session Details Property] | `($)BasicEmailSessionDetails` with value `{"ServerDetails": {"Host": "smtp.gmail.com", "Port": 465, "UseSsl": true}, "Credentials": {"Domain": null, "Username": "sender@gmail.com", "Password": "encryptedPassword"}}`

In this example `($)BasicEmailSessionDetails` has been set up using the following [Expression][]:

`new BasicEmailSessionDetails(serverDetails: new ServerDetails("smtp.gmail.com", 465, true), credentials: new UserCredentials("sender@gmail.com", "encryptedPassword"))` | `($)BasicEmailSessionDetails` is a variable of type [BasicEmailSessionDetails][]

The [Password][] property in the [UserCredentials][] must be encrypted, for more information on how to encrypt the password, see [EncryptedText][]. | +| [Close Session][Close Session Property] | `($)CloseSession` with value `true` |`($)CloseSession` is a variable of type [Boolean][] | + +#### Result + +An email with [Normal][] priority is sent from `sender@gmail.com` to `recipient@outlook.com` with a subject of `"Example email subject"` and a [Text][] body of `"Example email body"`, and then the session is closed. + +*** + +### Sending an email to multiple recipients + +This example will send an email from `sender@gmail.com` to `recipient1@outlook.com`, `recipient2@outlook.com` and `recipient3@outlook.com`. The example uses the [SMTP][] server hosted at `smtp.gmail.com` on [Port][] `465` which requires [UseSsl][] to be set to `true` within the [Basic Email Session Details][Basic Email Session Details Property]. + +For more information about when [UseSsl][] should be set to `true` or `false`, see [Setting UseSsl][]. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Email Message][Email Message Property] | `($)EmailMessage` with value `{"To": [{"Name": null, "Address": "recipient1@outlook.com"}, {"Name": null, "Address": "recipient2@outlook.com"}, {"Name": null, "Address": "recipient3@outlook.com"}], "From": {"Name": null, "Address": "sender@gmail.com"}, "Cc": [], "Bcc": [], "Priority": null, "Subject": "Example email subject", "BodyFormat": null, "Body": "Example email body", "Attachments": []}`

In this example `($)EmailMessage` has been set up using the following [Expression][]:

`new EmailMessage(to: new List(){ new EmailAddress("recipient1@outlook.com"), new EmailAddress("recipient2@outlook.com"), new EmailAddress("recipient3@outlook.com") }, from: new EmailAddress("sender@gmail.com"), cc: null, bcc: null, priority: null, subject: "Example email subject", bodyFormat: null, body: "Example email body", attachments: null)` | `($)EmailMessage` is a variable of type [EmailMessage][]

As [Priority][] and [BodyFormat][] are `null`, the email will be sent with a [Text][] body and [Normal][] priority. | +| [Basic Email Session Details][Basic Email Session Details Property] | `($)BasicEmailSessionDetails` with value `{"ServerDetails": {"Host": "smtp.gmail.com", "Port": 465, "UseSsl": true}, "Credentials": {"Domain": null, "Username": "sender@gmail.com", "Password": "encryptedPassword"}}`

In this example `($)BasicEmailSessionDetails` has been set up using the following [Expression][]:

`new BasicEmailSessionDetails(serverDetails: new ServerDetails("smtp.gmail.com", 465, true), credentials: new UserCredentials("sender@gmail.com", "encryptedPassword"))` | `($)BasicEmailSessionDetails` is a variable of type [BasicEmailSessionDetails][]

The [Password][] property in the [UserCredentials][] must be encrypted, for more information on how to encrypt the password, see [EncryptedText][]. | +| [Close Session][Close Session Property] | `($)CloseSession` with value `true` |`($)CloseSession` is a variable of type [Boolean][] | + +#### Result + +An email with [Normal][] priority is sent from `sender@gmail.com` to `recipient1@outlook.com`, `recipient2@outlook.com` and `recipient3@outlook.com` with a subject of `"Example email subject"` and a [Text][] body of `"Example email body"`, and then the session is closed. + +*** + +### Sending an email with a CC or BCC recipient + +This example will send an email from `sender@gmail.com` to `recipient@outlook.com` with `cc@outlook.com` and `bcc@outlook.com` as the [CC][CC Glossary] and [BCC][BCC Glossary] recipients for the email respectively. The example uses the [SMTP][] server hosted at `smtp.gmail.com` on [Port][] `465` which requires [UseSsl][] to be set to `true` within the [Basic Email Session Details][Basic Email Session Details Property]. + +For more information about when [UseSsl][] should be set to `true` or `false`, see [Setting UseSsl][]. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Email Message][Email Message Property] | `($)EmailMessage` with value `{"To": [{"Name": null, "Address": "recipient@outlook.com"}], "From": {"Name": null, "Address": "sender@gmail.com"}, "Cc": [{"Name": null, "Address": "cc@outlook.com"}], "Bcc": [{"Name": null, "Address": "bcc@outlook.com"}], "Priority": null, "Subject": "Example email subject", "BodyFormat": null, "Body": "Example email body", "Attachments": []}`

In this example `($)EmailMessage` has been set up using the following [Expression][]:

`new EmailMessage(to: new List(){ new EmailAddress("recipient@outlook.com") }, from: new EmailAddress("sender@gmail.com"), cc: new List(){ new EmailAddress("cc@outlook.com") }, bcc: new List(){ new EmailAddress("bcc@outlook.com") }, priority: null, subject: "Example email subject", bodyFormat: null, body: "Example email body", attachments: null)` | `($)EmailMessage` is a variable of type [EmailMessage][]

As [Priority][] and [BodyFormat][] are `null`, the email will be sent with a [Text][] body and [Normal][] priority. | +| [Basic Email Session Details][Basic Email Session Details Property] | `($)BasicEmailSessionDetails` with value `{"ServerDetails": {"Host": "smtp.gmail.com", "Port": 465, "UseSsl": true}, "Credentials": {"Domain": null, "Username": "sender@gmail.com", "Password": "encryptedPassword"}}`

In this example `($)BasicEmailSessionDetails` has been set up using the following [Expression][]:

`new BasicEmailSessionDetails(serverDetails: new ServerDetails("smtp.gmail.com", 465, true), credentials: new UserCredentials("sender@gmail.com", "encryptedPassword"))` | `($)BasicEmailSessionDetails` is a variable of type [BasicEmailSessionDetails][]

The [Password][] property in the [UserCredentials][] must be encrypted, for more information on how to encrypt the password, see [EncryptedText][]. | +| [Close Session][Close Session Property] | `($)CloseSession` with value `true` |`($)CloseSession` is a variable of type [Boolean][] | + +#### Result + +An email with [Normal][] priority is sent from `sender@gmail.com` to `recipient@outlook.com` with a subject of `"Example email subject"` and a [Text][] body of `"Example email body"`. Both `cc@outlook.com` and `bcc@outlook.com` will also recieve copies of the email as they are listed as [CC][CC Glossary] and [BCC][BCC Glossary] recipients, and then the session is closed. + +*** + +### Sending an email with multiple CC or BCC recipients + +This example will send an email from `sender@gmail.com` to `recipient@outlook.com` with `cc1@outlook.com` and `cc2@outlook.com` as the [CC][CC Glossary] recipients and `bcc1@outlook.com` and `bcc2@outlook.com` as the [BCC][BCC Glossary] recipients for the email. The example uses the [SMTP][] server hosted at `smtp.gmail.com` on [Port][] `465` which requires [UseSsl][] to be set to `true` within the [Basic Email Session Details][Basic Email Session Details Property]. + +For more information about when [UseSsl][] should be set to `true` or `false`, see [Setting UseSsl][]. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Email Message][Email Message Property] | `($)EmailMessage` with value `{"To": [{"Name": null, "Address": "recipient@outlook.com"}], "From": {"Name": null, "Address": "sender@gmail.com"}, "Cc": [{"Name": null, "Address": "cc1@outlook.com"}, {"Name": null, "Address": "cc2@outlook.com"}], "Bcc": [{"Name": null, "Address": "bcc1@outlook.com"}, {"Name": null, "Address": "bcc2@outlook.com"}], "Priority": null, "Subject": "Example email subject", "BodyFormat": null, "Body": "Example email body", "Attachments": []}`

In this example `($)EmailMessage` has been set up using the following [Expression][]:

`new EmailMessage(to: new List(){ new EmailAddress("recipient@outlook.com") }, from: new EmailAddress("sender@gmail.com"), cc: new List(){ new EmailAddress("cc1@outlook.com"), new EmailAddress("cc2@outlook.com") }, bcc: new List(){ new EmailAddress("bcc1@outlook.com"), new EmailAddress("bcc2@outlook.com") }, priority: null, subject: "Example email subject", bodyFormat: null, body: "Example email body", attachments: null)` | `($)EmailMessage` is a variable of type [EmailMessage][]

As [Priority][] and [BodyFormat][] are `null`, the email will be sent with a [Text][] body and [Normal][] priority. | +| [Basic Email Session Details][Basic Email Session Details Property] | `($)BasicEmailSessionDetails` with value `{"ServerDetails": {"Host": "smtp.gmail.com", "Port": 465, "UseSsl": true}, "Credentials": {"Domain": null, "Username": "sender@gmail.com", "Password": "encryptedPassword"}}`

In this example `($)BasicEmailSessionDetails` has been set up using the following [Expression][]:

`new BasicEmailSessionDetails(serverDetails: new ServerDetails("smtp.gmail.com", 465, true), credentials: new UserCredentials("sender@gmail.com", "encryptedPassword"))` | `($)BasicEmailSessionDetails` is a variable of type [BasicEmailSessionDetails][]

The [Password][] property in the [UserCredentials][] must be encrypted, for more information on how to encrypt the password, see [EncryptedText][]. | +| [Close Session][Close Session Property] | `($)CloseSession` with value `true` |`($)CloseSession` is a variable of type [Boolean][] | + +#### Result + +An email with [Normal][] priority is sent from `sender@gmail.com` to `recipient@outlook.com` with a subject of `"Example email subject"` and a [Text][] body of `"Example email body"`. Both `cc1@outlook.com` and `cc2@outlook.com` will also recieve copies of the email as they are listed as [CC][CC Glossary] recipients, and both `bcc1@outlook.com` and `bcc2@outlook.com` will recieve copies of the email as they are listed as [BCC][BCC Glossary] recipients. Finally, the session is closed. + +*** + +### Sending an email with a different priority + +This example will send an email with [Urgent][] priority from `sender@gmail.com` to `recipient@outlook.com`. The example uses the [SMTP][] server hosted at `smtp.gmail.com` on [Port][] `465` which requires [UseSsl][] to be set to `true` within the [Basic Email Session Details][Basic Email Session Details Property]. + +For more information on: + +- What priorities an email can be sent as, see [EmailMessagePriority][] +- The effect of changing the [Priority][] of the [Email Message][Email Message Property], see [How does Priority affect sending an email?][] +- When [UseSsl][] should be set to `true` or `false`, see [Setting UseSsl][]. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Email Message][Email Message Property] | `($)EmailMessage` with value `{"To": [{"Name": null, "Address": "recipient@outlook.com"}], "From": {"Name": null, "Address": "sender@gmail.com"}, "Cc": [], "Bcc": [], "Priority": "EmailMessagePriority.Urgent", "Subject": "Example email subject", "BodyFormat": null, "Body": "Example email body", "Attachments": []}`

In this example `($)EmailMessage` has been set up using the following [Expression][]:

`new EmailMessage(to: new List(){ new EmailAddress("recipient@outlook.com") }, from: new EmailAddress("sender@gmail.com"), cc: null, bcc: null, priority: EmailMessagePriority.Urgent, subject: "Example email subject", bodyFormat: null, body: "Example email body", attachments: null)` | `($)EmailMessage` is a variable of type [EmailMessage][]

As [BodyFormat][] is `null`, the email will be sent with a [Text][] body.| +| [Basic Email Session Details][Basic Email Session Details Property] | `($)BasicEmailSessionDetails` with value `{"ServerDetails": {"Host": "smtp.gmail.com", "Port": 465, "UseSsl": true}, "Credentials": {"Domain": null, "Username": "sender@gmail.com", "Password": "encryptedPassword"}}`

In this example `($)BasicEmailSessionDetails` has been set up using the following [Expression][]:

`new BasicEmailSessionDetails(serverDetails: new ServerDetails("smtp.gmail.com", 465, true), credentials: new UserCredentials("sender@gmail.com", "encryptedPassword"))` | `($)BasicEmailSessionDetails` is a variable of type [BasicEmailSessionDetails][]

The [Password][] property in the [UserCredentials][] must be encrypted, for more information on how to encrypt the password, see [EncryptedText][]. | +| [Close Session][Close Session Property] | `($)CloseSession` with value `true` |`($)CloseSession` is a variable of type [Boolean][] | + +#### Result + +An email with [Urgent][] priority is sent from `sender@gmail.com` to `recipient@outlook.com` with a subject of `"Example email subject"` and a [Text][] body of `"Example email body"`, and then the session is closed. + +*** + +### Sending an email with an HTML body + +This example will send an email with an [HTML][] body from `sender@gmail.com` to `recipient@outlook.com`. The example uses the [SMTP][] server hosted at `smtp.gmail.com` on [Port][] `465` which requires [UseSsl][] to be set to `true` within the [Basic Email Session Details][Basic Email Session Details Property]. + +For more information on: + +- What other body formats an email can be sent with, see [EmailMessageBodyFormat][] +- The effect of changing the [BodyFormat][] of the [Email Message][Email Message Property], see [How does BodyFormat affect sending an email?][] +- When [UseSsl][] should be set to `true` or `false`, see [Setting UseSsl][]. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Email Message][Email Message Property] | `($)EmailMessage` with value `{"To": [{"Name": null, "Address": "recipient@outlook.com"}], "From": {"Name": null, "Address": "sender@gmail.com"}, "Cc": [], "Bcc": [], "Priority": null, "Subject": "Example email subject", "BodyFormat": "EmailMessageBodyFormat.Html", "Body": "

Example email body

", "Attachments": []}`

In this example `($)EmailMessage` has been set up using the following [Expression][]:

`new EmailMessage(to: new List(){ new EmailAddress("recipient@outlook.com") }, from: new EmailAddress("sender@gmail.com"), cc: null, bcc: null, priority: null, subject: "Example email subject", bodyFormat: EmailMessageBodyFormat.Html, body: "

Example email body

", attachments: null)` | `($)EmailMessage` is a variable of type [EmailMessage][]

As [Priority][] is `null`, the email will be sent with [Normal][] priority. | +| [Basic Email Session Details][Basic Email Session Details Property] | `($)BasicEmailSessionDetails` with value `{"ServerDetails": {"Host": "smtp.gmail.com", "Port": 465, "UseSsl": true}, "Credentials": {"Domain": null, "Username": "sender@gmail.com", "Password": "encryptedPassword"}}`

In this example `($)BasicEmailSessionDetails` has been set up using the following [Expression][]:

`new BasicEmailSessionDetails(serverDetails: new ServerDetails("smtp.gmail.com", 465, true), credentials: new UserCredentials("sender@gmail.com", "encryptedPassword"))` | `($)BasicEmailSessionDetails` is a variable of type [BasicEmailSessionDetails][]

The [Password][] property in the [UserCredentials][] must be encrypted, for more information on how to encrypt the password, see [EncryptedText][]. | +| [Close Session][Close Session Property] | `($)CloseSession` with value `true` |`($)CloseSession` is a variable of type [Boolean][] | + +#### Result + +An email with [Normal][] priority is sent from `sender@gmail.com` to `recipient@outlook.com` with a subject of `"Example email subject"` and an [HTML][] body of `"

Example email body

"`, and then the session is closed. + +*** + +### Sending an email with a single attachment + +This example will send an email with a single attachment, `attachment.txt`, from `sender@gmail.com` to `recipient@outlook.com`. The attachment is located at `C:\attachment.txt` on the server executing the flow. The example uses the [SMTP][] server hosted at `smtp.gmail.com` on [Port][] `465` which requires [UseSsl][] to be set to `true` within the [Basic Email Session Details][Basic Email Session Details Property]. + +For more information on: + +- Email attachments, see [Attachments][Attachments Remarks] +- When [UseSsl][] should be set to `true` or `false`, see [Setting UseSsl][]. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Email Message][Email Message Property] | `($)EmailMessage` with value `{"To": [{"Name": null, "Address": "recipient@outlook.com"}], "From": {"Name": null, "Address": "sender@gmail.com"}, "Cc": [], "Bcc": [], "Priority": null, "Subject": "Example email subject", "BodyFormat": null, "Body": "Example email body", "Attachments": ["C:\\attachment.txt"]}`

In this example `($)EmailMessage` has been set up using the following [Expression][]:

`new EmailMessage(to: new List(){ new EmailAddress("recipient@outlook.com") }, from: new EmailAddress("sender@gmail.com"), cc: null, bcc: null, priority: null, subject: "Example email subject", bodyFormat: null, body: "Example email body", attachments: new List(){ @"C:\attachment.txt" })` | `($)EmailMessage` is a variable of type [EmailMessage][]

As [Priority][] and [BodyFormat][] are `null`, the email will be sent with a [Text][] body and [Normal][] priority.

The [Attachments][Attachments Remarks] are added to the email by providing file paths pointing to the files to be attached to the email. | +| [Basic Email Session Details][Basic Email Session Details Property] | `($)BasicEmailSessionDetails` with value `{"ServerDetails": {"Host": "smtp.gmail.com", "Port": 465, "UseSsl": true}, "Credentials": {"Domain": null, "Username": "sender@gmail.com", "Password": "encryptedPassword"}}`

In this example `($)BasicEmailSessionDetails` has been set up using the following [Expression][]:

`new BasicEmailSessionDetails(serverDetails: new ServerDetails("smtp.gmail.com", 465, true), credentials: new UserCredentials("sender@gmail.com", "encryptedPassword"))` | `($)BasicEmailSessionDetails` is a variable of type [BasicEmailSessionDetails][]

The [Password][] property in the [UserCredentials][] must be encrypted, for more information on how to encrypt the password, see [EncryptedText][]. | +| [Close Session][Close Session Property] | `($)CloseSession` with value `true` |`($)CloseSession` is a variable of type [Boolean][] | + +#### Result + +An email with [Normal][] priority containing a text file attachment, `attachment.txt`, is sent from `sender@gmail.com` to `recipient@outlook.com` with a subject of `"Example email subject"` and a [Text][] body of `"Example email body"`, and then the session is closed. + +*** + +### Sending an email with multiple attachments + +This example will send an email with mutiple attachments, `attachment1.txt` and `attachment2.txt` from `sender@gmail.com` to `recipient@outlook.com`. The attachments are located at the paths `C:\attachment1.txt` and `C:\attachment2.txt` on the server executing the flow. The example uses the [SMTP][] server hosted at `smtp.gmail.com` on [Port][] `465` which requires [UseSsl][] to be set to `true` within the [Basic Email Session Details][Basic Email Session Details Property]. + +For more information on: + +- Email attachments, see [Attachments][Attachments Remarks] +- When [UseSsl][] should be set to `true` or `false`, see [Setting UseSsl][]. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Email Message][Email Message Property] | `($)EmailMessage` with value `{"To": [{"Name": null, "Address": "recipient@outlook.com"}], "From": {"Name": null, "Address": "sender@gmail.com"}, "Cc": [], "Bcc": [], "Priority": null, "Subject": "Example email subject", "BodyFormat": null, "Body": "Example email body", "Attachments": ["C:\\attachment1.txt", "C:\\attachment2.txt"]}`

In this example `($)EmailMessage` has been set up using the following [Expression][]:

`new EmailMessage(to: new List(){ new EmailAddress("recipient@outlook.com") }, from: new EmailAddress("sender@gmail.com"), cc: null, bcc: null, priority: null, subject: "Example email subject", bodyFormat: null, body: "Example email body", attachments: new List(){ @"C:\attachment1.txt", @"C:\attachment2.txt" })` | `($)EmailMessage` is a variable of type [EmailMessage][]

As [Priority][] and [BodyFormat][] are `null`, the email will be sent with a [Text][] body and [Normal][] priority.

The [Attachments][Attachments Remarks] are added to the email by providing file paths pointing to the files to be attached to the email. | +| [Basic Email Session Details][Basic Email Session Details Property] | `($)BasicEmailSessionDetails` with value `{"ServerDetails": {"Host": "smtp.gmail.com", "Port": 465, "UseSsl": true}, "Credentials": {"Domain": null, "Username": "sender@gmail.com", "Password": "encryptedPassword"}}`

In this example `($)BasicEmailSessionDetails` has been set up using the following [Expression][]:

`new BasicEmailSessionDetails(serverDetails: new ServerDetails("smtp.gmail.com", 465, true), credentials: new UserCredentials("sender@gmail.com", "encryptedPassword"))` | `($)BasicEmailSessionDetails` is a variable of type [BasicEmailSessionDetails][]

The [Password][] property in the [UserCredentials][] must be encrypted, for more information on how to encrypt the password, see [EncryptedText][]. | +| [Close Session][Close Session Property] | `($)CloseSession` with value `true` |`($)CloseSession` is a variable of type [Boolean][] | + +#### Result + +An email with [Normal][] priority containing two text file attachments, `attachment1.txt` and `attachment2.txt`, is sent from `sender@gmail.com` to `recipient@outlook.com` with a subject of `"Example email subject"` and a [Text][] body of `"Example email body"`, and then the session is closed. + +*** + +### Sending an email with UseSsl set to false + +This example will send an email from `sender@outlook.com` to `recipient@outlook.com`. The example uses the [SMTP][] server hosted at `smtp-mail.outlook.com` on [Port][] `587` which requires [UseSsl][] to be set to `false` within the [Basic Email Session Details][Basic Email Session Details Property]. + +For more information on when [UseSsl][] should be set to `true` or `false`, see [Setting UseSsl][]. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Email Message][Email Message Property] | `($)EmailMessage` with value `{"To": [{"Name": null, "Address": "recipient@outlook.com"}], "From": {"Name": null, "Address": "sender@outlook.com"}, "Cc": [], "Bcc": [], "Priority": null, "Subject": "Example email subject", "BodyFormat": null, "Body": "Example email body", "Attachments": []}`

In this example `($)EmailMessage` has been set up using the following [Expression][]:

`new EmailMessage(to: new List(){ new EmailAddress("recipient@outlook.com") }, from: new EmailAddress("sender@outlook.com"), cc: null, bcc: null, priority: null, subject: "Example email subject", bodyFormat: null, body: "Example email body", attachments: null)` | `($)EmailMessage` is a variable of type [EmailMessage][]

As [Priority][] and [BodyFormat][] are `null`, the email will be sent with a [Text][] body and [Normal][] priority.| +| [Basic Email Session Details][Basic Email Session Details Property] | `($)BasicEmailSessionDetails` with value `{"ServerDetails": {"Host": "smtp-mail.outlook.com", "Port": 587, "UseSsl": false}, "Credentials": {"Domain": null, "Username": "sender@outlook.com", "Password": "encryptedPassword"}}`

In this example `($)BasicEmailSessionDetails` has been set up using the following [Expression][]:

`new BasicEmailSessionDetails(serverDetails: new ServerDetails("smtp-mail.outlook.com", 587, false), credentials: new UserCredentials("sender@outlook.com", "encryptedPassword"))` | `($)BasicEmailSessionDetails` is a variable of type [BasicEmailSessionDetails][]

The [Password][] property in the [UserCredentials][] must be encrypted, for more information on how to encrypt the password, see [EncryptedText][]. | +| [Close Session][Close Session Property] | `($)CloseSession` with value `true` |`($)CloseSession` is a variable of type [Boolean][] | + +#### Result + +An email with [Normal][] priority is sent from `sender@outlook.com` to `recipient@outlook.com` with a subject of `"Example email subject"` and a [Text][] body of `"Example email body"`, and then the session is closed. + +*** + +## Properties + +### Email Message + +The [Email Message][Email Message Property] to send via the [SMTP][] server specified in the [Basic Email Session Details][Basic Email Session Details Property]. This property contains all of the information in relation to the email to be sent, these are: + +- [To][] +- [From][] +- [Cc][] +- [Bcc][] +- [Priority][] +- [Subject][] +- [BodyFormat][] +- [Body][] +- [Attachments][] + +Note that if the properties [Priority][] and [BodyFormat][] are set to `null` when [creating an EmailMessage using a constructor][], the email will be sent with [Normal][] priority and with a text body. + +For more detailed information on each of the properties, see [EmailMessage][]. + +||| +|----------|----------| +| Data Type | [EmailMessage][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [EmailMessage][] with value shown below: | + +```json +{ + "To": [ + { + "Name": null, + "Address": "" + } + ], + "From": { + "Name": "", + "Address": "" + }, + "Cc": [], + "Bcc": [], + "Priority": "EmailMessagePriority.Normal", + "Subject": "", + "BodyFormat": "EmailMessageBodyFormat.Text", + "Body": "", + "Attachments": [] +} +``` + +### Basic Email Session Details + +The [Basic Email Session Details][Basic Email Session Details Property] object that includes all of the information required to open and maintain a session with an [SMTP][] server, including: + +- [ServerDetails][ServerDetails Property] - must be provided in order to connect to an [SMTP][] server. This object contains the properties [Host][], [Port][] and [UseSsl][]. For more information on: + - Supported server address formats, see [Supported formats for ServerDetails.Host][]. + - When [UseSsl][] should be set to `true` or `false`, see [Setting UseSsl][]. +- [Credentials][Credentials Property] - must be provided in order to connect to an [SMTP][] server. This object contains the properties [Username][] and [Password][] to be used for authentication. For more information, see [Setting Credentials][]. + +If the [Close Session][Close Session Property] property is set to `false`, then the session will be kept open and can be used in subsequent Send Email Using SMTP Server blocks which improves performance, see [Opening Sessions][] for more information. + +For more detailed information on each of the properties, see [BasicEmailSessionDetails][]. + +||| +|----------|----------| +| Data Type | [BasicEmailSessionDetails][] | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)BasicEmailSessionDetails` with no value | + +### Close Session + +[Close Session][Close Session Property] can be specified to choose whether the session is closed or is kept open for use on subsequent Send Email Using SMTP Server blocks, this defaults to `false` if left blank, please see [Closing Sessions][Closing Sessions] for more information. + +||| +|-----------------|----------| +| Data Type | [Boolean][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [Boolean][] with value `true` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|--------------------------------------|-------------| +| [ArgumentException][] |Thrown when [BodyFormat][] within the [Email Message][Email Message Property] is not one of the specified [EmailMessageBodyFormat][] values (e.g. `(EmailMessageBodyFormat)10`).| +| |Thrown when [Priority][] within the [Email Message][Email Message Property] is not one of the specified [EmailMessagePriority][] values (e.g. `(EmailMessagePriority)10`).| +| |Thrown when a file path provided in the [Attachments][] within the [Email Message][Email Message Property] is empty (i.e. `""`), contains only whitespace (i.e. `" "`) or contains the NUL character (i.e. `\0`).| +| [ArgumentNullException][] |Thrown when a file path provided in the [Attachments][] within the [Email Message][Email Message Property] is `null`.| +| [EmailSessionException][] |Thrown when an invalid [Port][] is provided in the [ServerDetails][] within the [Basic Email Session Details][Basic Email Session Details Property]. For more information, see [Invalid Port][].| +| |Thrown when an invalid [Host][] is provided in the [ServerDetails][] within the [Basic Email Session Details][Basic Email Session Details Property]. For more information, see [Invalid Host][].| +| |Thrown when a connection cannot be established; this typically occurs when [UseSsl][] within [Basic Email Session Details][Basic Email Session Details Property] is set to `false` with a [Port][] which requires it to be set to `true`. For more information, see [SSL Required][]. | +| |Thrown when a connection cannot be established; this typically occurs when [UseSsl][] within [Basic Email Session Details][Basic Email Session Details Property] is set to `true` with a [Port][] which requires it to be set to `false`. For more information, see [SSL Unsupported][]. | +| |Thrown when the [TLS][]/[SSL][] certificate has expired on the [Host][] or is untrusted or invalid. For more information, see [SSL Unsupported][]. Note that this exception has the same category and error code as the above row, this is a known limitation, see [EmailSessionErrorCode Limitations][]. | +| |Thrown when a locally installed anti-virus software replaces the [TLS][]/[SSL][] certificate in order to scan web traffic. For more information, see [SSL Unsupported][]. Note that this exception has the same category and error code as the above row, this is a known limitation, see [EmailSessionErrorCode Limitations][]. | +| |Thrown when the [CRL][] (Certificate Revocation List) server for the [TLS][]/[SSL][] certificate is down. For more information, see [SSL Unsupported][]. Note that this exception has the same category and error code as the above row, this is a known limitation, see [EmailSessionErrorCode Limitations][]. | +| |Thrown when the [Username][] and [Password][] in the [UserCredentials][] within [Basic Email Session Details][Basic Email Session Details Property] is incorrect. For more information, see [Invalid User Credentials][]. | +| [FileNotFoundException][] |Thrown when a non-existent file path is provided in [Attachments][] within [Email Message][Email Message Property]. | +| [IOException][] |Thrown when the desired socket is held by another process; re-running the flow typically solves this. | +| |Thrown when a file path within [Attachments][] within the [Email Message][Email Message Property] contains leading spaces.| +| |Thrown when a file path within [Attachments][] within the [Email Message][Email Message Property] contains invalid characters (i.e. `"`, `*`, `?`, `\|`, `<`, `>`, `:`, `\`, `/`).| +| [PathTooLongException][] |Thrown when a file path provided in the [Attachments][] within the [Email Message][Email Message Property] exceeds the system-defined maximum length (typically 32,767).| +| [PropertyNullException][] |Thrown when the [Basic Email Session Details][Basic Email Session Details Property] is `null`. | +| |Thrown when the [UserCredentials][] within [Basic Email Session Details][Basic Email Session Details Property] is `null`. | +| |Thrown when the [ServerDetails][] within [Basic Email Session Details][Basic Email Session Details Property] is `null`. | +| |Thrown when the [Host][] in [ServerDetails][] within [Basic Email Session Details][Basic Email Session Details Property] is `null`. | +| |Thrown when the [Email Message][Email Message Property] is `null`. | +| |Thrown when the [To][] within [Email Message][Email Message Property] is `null`. | +| |Thrown when the [From][] within [Email Message][Email Message Property] is `null`. | +| |Thrown when the [Address][] in an [EmailAddress][] within [Email Message][Email Message Property] is `null`. | +| [PropertyEmptyException][] |Thrown when the [Host][] in [ServerDetails][] within [Basic Email Session Details][Basic Email Session Details Property] is empty (i.e. `""`). | +| |Thrown when the [To][] within [Email Message][Email Message Property] is empty (i.e. `[]`). | +| |Thrown when the [Address][] in an [EmailAddress][] within [Email Message][Email Message Property] is empty (i.e. `""`). | +| [PropertyValueOutOfRangeException][] |Thrown when the [Port][] in the [ServerDetails][] within [Basic Email Session Details][Basic Email Session Details Property] is below `1` or above `65535`. For more information, see [Property Is Invalid][]. | +| [SmtpCommandException][] |Thrown when the [Address][] in an [EmailAddress][] within [Email Message][Email Message Property] is not of the correct format ([RFC 5321][]).| +| |Thrown when the combined size of all of the attachments in the list of [Attachments][] within the [Email Message][Email Message Property] is greater than the limit specified by the email service provider; for [Outlook][] this is `20 MB` and for [Gmail][] this is `25 MB`.| +| [UnauthorizedAccessException][] |Thrown when access is denied to a file provided in [Attachments][] within [Email Message][Email Message Property].| +| |Thrown when a file path within the [Attachments][] property within [Email Message][Email Message Property] points to a folder.| + +## Remarks + +### How does Priority affect sending an email? + +An email sent with [Urgent][] or [NonUrgent][] priority will have its priority displayed differently depending on the email client. For example, [Outlook][] displays an email that has an [Urgent][] priority with a red exclamation mark like so: + +{{< figure src="/images/send-email-using-smtp-server-important-email.png" >}} + +For more information on how the priority of an email will be displayed, see the help provided by the respective email client. + +### How does BodyFormat affect sending an email? + +An email sent with an [HTML][] body will have its body displayed as an HTML page instead of as plain text. How the email looks in the email client may differ depending on the email client in use. For example, if the [Email Message][Email Message Property] has its [BodyFormat][] set to [HTML][] and the [Body][] has a value of: + +```json +"

Example header text

Example paragraph text

" +``` + +[Outlook][] will display the email body as follows: + +{{< figure src="/images/send-email-using-smtp-server-html-email.png" >}} + +For more information on how the body of an email will be displayed, see the help provided by the respective email client. + +### Attachments + +Attachments can be sent in an email by providing a list of file paths in the [Attachments][] property of the [Email Message][Email Message Property]. For more information concerning attaching files to an email, see the sections below. + +#### Supported file path formats + +Each file path in the [Attachments][] within the [Email Message][Email Message Property] can be an: + +- Absolute file path +- Relative file path +- UNC file path + +where each file path must be accessible from the server executing the flow. + +For more information about each of these supported file path formats, please see [File & Folder Paths][]. + +#### File paths need escaping + +Each file path in the [Attachments][] within the [Email Message][Email Message Property] requires \ characters to be escaped, otherwise each unescaped \ will be reported as an Invalid property value message when trying to debug the flow. + +Escaping can be done in two ways: + +- Escaping the `\` character with another `\` character (e.g. `"C:\\Attachments\\attachment.txt"`), or +- Prepending an `@` character before the start of the File Path (e.g. `@"C:\Attachments\attachment.txt"`) + +#### Null file path + +If `null` is provided as a file path in the [Attachments][] within the [Email Message][Email Message Property], an [ArgumentNullException][] is thrown. + +#### Empty file path + +If an empty string is provided as a file path in the the [Attachments][] within the [Email Message][Email Message Property], an [ArgumentException][] is thrown. + +#### File path does not exist + +If a file path in the [Attachments][] within the [Email Message][Email Message Property] does not exist, a [FileNotFoundException][] is thrown. + +#### Invalid file path + +If a file path in the [Attachments][] within the [Email Message][Email Message Property] is invalid (i.e. contains any of the following characters: ", *, ?, |, <, >, :, \, /), an [IOException][] will be thrown. + +#### File path points to a folder + +If a file path in the [Attachments][] within the [Email Message][Email Message Property] points to a folder, an [UnauthorizedAccessException][] will be thrown. + +#### File path contains leading spaces + +If a file path in the [Attachments][] within the [Email Message][Email Message Property] contains leading spaces they are not removed and an [IOException][] will be thrown; however, trailing spaces are removed. + +#### File path contains only whitespace or the NUL character + +If a file path in the [Attachments][] within the [Email Message][Email Message Property] contains only whitespace (i.e. `" "`) or the NUL character (i.e. `\0`), an [ArgumentException][] will be thrown. + +#### File path exceeds the system-defined maximum length + +If a file path in the [Attachments][] within the [Email Message][Email Message Property] exceeds the system-defined maximum length (typically 32,767), a [PathTooLongException][] will be thrown. + +#### User does not have necessary permissions to attach the file + +If the user the flow is executing as does not have permissions to access the file at the provided file path in the [Attachments][] within the [Email Message][Email Message Property], an [UnauthorizedAccessException][] will be thrown. + +#### Attachment size limit + +The combined size of all the [Attachments][] within the [Email Message][Email Message Property] must be less than the limit specified by the email service provider. If the combined size of all of the attachments is greater than the limit, an [SmtpCommandException][] will be thrown. + +For [Outlook][] this is `20 MB` and for [Gmail][] this is `25 MB`, for more information on the size limits for other email service providers, see the help provided by the respective email service provider. + +### Supported formats for ServerDetails.Host + +The following formats are supported for [Host][] in [ServerDetails][]: + +- Fully Qualified Domain Name (e.g. `"smtp.gmail.com"`) +- Machine name (e.g. `"mail-server1"`) +- IP address (e.g. `"127.0.0.1"`) +- Localhost (e.g. `"localhost"`) + +### Setting UseSsl + +The [ServerDetails][] within the [Basic Email Session Details][Basic Email Session Details Property] specifies which [SMTP][] server to connect to. The value of the [UseSsl][] property inside this object depends on the [Host][] and [Port][] being connected to. There are two types of [SSL][]/[TLS][] connections that can occur: + +- [SSL][]/[TLS][] is used as soon as a connection is established +- [SSL][]/[TLS][] is used via the STARTTLS command if it is available + +The above two points correspond to the [UseSsl][] property being set to `true` and `false` respectively. As such, generally the following rules can be followed to determine whether [UseSsl][] should be set to `true` or `false`: + +- If the [Port][] being connected to is `465` then [UseSsl][] should be set to `true` +- If the [Port][] being connected to is `25` or `587` then [UseSsl][] should be set to `false` + +### Setting Credentials + +The [UserCredentials][] within the [Basic Email Session Details][Basic Email Session Details Property] specifies what user to connect as on the [SMTP][] server. The value of the [Username][] property may optionally be encrypted, however the [Password][] should be encrypted. For more information on how to encrypt the password, see [EncryptedText][]. + +Note that the [UserCredentials][] object also contains a [Domain][] property which is ignored by this block. + +### Opening Sessions + +The Send Email Using SMTP Server block automatically handles creating and opening sessions for the specified [Basic Email Session Details][Basic Email Session Details Property] using the following rules: + +- If a session does not exist, a new session will be created, opened and used when the block runs. +- If a session already exists but is closed, the session will be opened and used when the block runs. +- If a session already exists and is open, the session will be used when the block runs. + +[Basic Email Session Details][Basic Email Session Details Property] will keep the session open across multiple Send Email Using SMTP Server blocks as long as [Close Session][Close Session Property] is set to `false`. Keeping the session open helps increase the performance of the block due to the subsequent blocks not having to spend resources creating and opening sessions for each execution. + +Note that for all [SSL][] connections, the protocol to be used will be negotiated with the server depending on which protocols are available. Similarly, the [SASL][] mechanism to be used will be negotiated with the mail server based on the available mechanisms. + +For information on how to explicitly close a session, please see [Closing Sessions][]. + +### Closing Sessions + +Sessions can be explicitly closed by setting [Close Session][Close Session Property] to `true`. This causes the session to be closed after the [Email Message][Email Message Property] has been sent. + +If [Close Session][Close Session Property] is set to `false` the session will be closed when the [Variable][] that [Basic Email Session Details][Basic Email Session Details Property] is set to goes out of scope or the flow ends, whichever happens first. For more information about variables and scope, please see [Variables][]. + +For information on how to open a session, please see [Opening Sessions][]. + +### Known Limitations + +Currently unauthenticated [SMTP][] servers are not supported. + +This limitation may be removed in the future. + +[Email Message Property]: {{< ref "#email-message" >}} +[Basic Email Session Details Property]: {{< ref "#basic-email-session-details" >}} +[Close Session Property]: {{< ref "#close-session" >}} + +[How does Priority affect sending an email?]: {{< ref "#how-does-priority-affect-sending-an-email" >}} +[How does BodyFormat affect sending an email?]: {{< ref "#how-does-bodyformat-affect-sending-an-email" >}} +[Setting UseSsl]: {{< ref "#setting-usessl" >}} +[Setting Credentials]: {{< ref "#setting-credentials" >}} +[Opening Sessions]: {{< ref "#opening-sessions" >}} +[Closing Sessions]: {{< ref "#closing-sessions" >}} +[Attachments Remarks]: {{< ref "#attachments" >}} +[Supported formats for ServerDetails.Host]: {{< ref "#supported-formats-for-serverdetailshost" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[EmailSessionException]: {{< url path="Cortex.Reference.Exceptions.Email.EmailSessionException.MainDoc" >}} +[Invalid Port]: {{< url path="Cortex.Reference.Exceptions.Email.EmailSessionException.InvalidPort" >}} +[Invalid Host]: {{< url path="Cortex.Reference.Exceptions.Email.EmailSessionException.InvalidHost" >}} +[SSL Required]: {{< url path="Cortex.Reference.Exceptions.Email.EmailSessionException.SslRequired" >}} +[SSL Unsupported]: {{< url path="Cortex.Reference.Exceptions.Email.EmailSessionException.SslUnsupported" >}} +[Invalid User Credentials]: {{< url path="Cortex.Reference.Exceptions.Email.EmailSessionException.InvalidUserCredentials" >}} +[creating an EmailMessage using a constructor]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessage.CreateAnEmailMessage" >}} + +[EmailSessionErrorCode Limitations]: {{< url path="Cortex.Reference.DataTypes.Email.EmailSessionErrorCode.Limitations" >}} + +[ArgumentException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentException" >}} +[ArgumentNullException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentNullException" >}} +[FileNotFoundException]: {{< url path="MSDocs.DotNet.Api.System.IO.FileNotFoundException" >}} +[IOException]: {{< url path="MSDocs.DotNet.Api.System.IO.IOException" >}} +[PathTooLongException]: {{< url path="MSDocs.DotNet.Api.System.IO.PathTooLongException" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} + +[PropertyValueOutOfRangeException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.MainDoc" >}} +[Property Is Invalid]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.PropertyIsInvalid">}} + +[SmtpCommandException]: {{< url path="MimeKit.Docs.SmtpCommandException" >}} +[UnauthorizedAccessException]: {{< url path="MSDocs.DotNet.Api.System.UnauthorizedAccessException" >}} + +[EmailMessage]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessage.MainDoc" >}} +[To]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessage.To" >}} +[From]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessage.From" >}} +[Cc]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessage.Cc" >}} +[Bcc]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessage.Bcc" >}} +[Priority]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessage.Priority" >}} +[Subject]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessage.Subject" >}} +[BodyFormat]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessage.BodyFormat" >}} +[Body]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessage.Body" >}} +[Attachments]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessage.Attachments" >}} + +[EmailAddress]: {{< url path="Cortex.Reference.DataTypes.Email.EmailAddress.MainDoc" >}} +[Address]: {{< url path="Cortex.Reference.DataTypes.Email.EmailAddress.Address" >}} + +[EmailMessagePriority]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessagePriority.MainDoc" >}} +[Normal]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessagePriority.Normal" >}} +[Urgent]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessagePriority.Urgent" >}} +[NonUrgent]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessagePriority.NonUrgent" >}} + +[EmailMessageBodyFormat]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessageBodyFormat.MainDoc" >}} +[HTML]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessageBodyFormat.HTML" >}} +[Text]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessageBodyFormat.Text" >}} + +[BasicEmailSessionDetails]: {{< url path="Cortex.Reference.DataTypes.Email.BasicEmailSessionDetails.MainDoc" >}} +[Credentials Property]: {{< url path="Cortex.Reference.DataTypes.Email.BasicEmailSessionDetails.Credentials" >}} +[ServerDetails Property]: {{< url path="Cortex.Reference.DataTypes.Email.BasicEmailSessionDetails.ServerDetails" >}} + +[UserCredentials]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.MainDoc" >}} +[Domain]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.Domain" >}} +[Username]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.Username" >}} +[Password]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.Password" >}} + +[ServerDetails]: {{< url path="Cortex.Reference.DataTypes.SessionDetails.ServerDetails.MainDoc" >}} +[Host]: {{< url path="Cortex.Reference.DataTypes.SessionDetails.ServerDetails.Host" >}} +[Port]: {{< url path="Cortex.Reference.DataTypes.SessionDetails.ServerDetails.Port" >}} +[UseSsl]: {{< url path="Cortex.Reference.DataTypes.SessionDetails.ServerDetails.UseSsl" >}} + +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} +[EncryptedText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptedText.MainDoc" >}} + +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} + +[Variables]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.MainDoc" >}} +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} +[File & Folder Paths]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.Paths.MainDoc" >}} + +[SASL]: {{< url path="Cortex.Reference.Glossary.P-T.SASL" >}} +[SMTP]: {{< url path="Cortex.Reference.Glossary.P-T.SMTP" >}} +[SSL]: {{< url path="Cortex.Reference.Glossary.P-T.SSL" >}} +[TLS]: {{< url path="Cortex.Reference.Glossary.P-T.TLS" >}} +[BCC Glossary]: {{< url path="Cortex.Reference.Glossary.A-E.BCC" >}} +[CC Glossary]: {{< url path="Cortex.Reference.Glossary.A-E.CC" >}} +[CRL]: {{< url path="Cortex.Reference.Glossary.A-E.CRL" >}} +[Gmail]: {{< url path="Cortex.Reference.Glossary.F-J.Gmail" >}} +[Outlook]: {{< url path="Cortex.Reference.Glossary.K-O.Outlook" >}} +[RFC 5321]: {{< url path="IETF.Email.RFC5321" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/flows/_index.md b/content/en/docs/2024.11/Reference/Blocks/flows/_index.md new file mode 100644 index 000000000..3a64c9787 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/flows/_index.md @@ -0,0 +1,5 @@ +--- +title: "Flows" +linkTitle: "Flows" +description: "Blocks related to executing Flows." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/flows/end-flow/_index.md b/content/en/docs/2024.11/Reference/Blocks/flows/end-flow/_index.md new file mode 100644 index 000000000..df9410cb5 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/flows/end-flow/_index.md @@ -0,0 +1,5 @@ +--- +title: "End Flow" +linkTitle: "End Flow" +description: "Blocks that indicate the end of a flow." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/flows/end-flow/end-flow-block.md b/content/en/docs/2024.11/Reference/Blocks/flows/end-flow/end-flow-block.md new file mode 100644 index 000000000..b5b228d9b --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/flows/end-flow/end-flow-block.md @@ -0,0 +1,37 @@ +--- +title: "End Flow" +linkTitle: "End Flow" +description: "Indicates the end of a flow." +--- + +{{< figure src="/blocks/Cortex_Blocks_Flows_EndFlow_EndFlowBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Flows.EndFlow.EndFlowBlock)

+ +## Description + +Indicates the end of a flow; when a flow execution reaches this block, the execution is ended. + +A flow can contain any number of these blocks, and they can be placed anywhere in a flow. + +The block has no block specific properties, but it does have the `Description` property that is common to all blocks. This allows users to give each block a description; typically this will be left blank for this block. + +A breakpoint can be added to this block when debugging. + +## Examples + +No examples for the block. + +## Properties + +No properties for the block, other than the `Description` property that is common to all blocks. + +## Exceptions + +No exceptions are thrown by the block. + +## Remarks + +None \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Blocks/flows/run-flow/_index.md b/content/en/docs/2024.11/Reference/Blocks/flows/run-flow/_index.md new file mode 100644 index 000000000..fb5ca15c1 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/flows/run-flow/_index.md @@ -0,0 +1,5 @@ +--- +title: "Run Flow" +linkTitle: "Run Flow" +description: "Blocks that are used to run another flow." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/flows/run-flow/run-flow-async-block.md b/content/en/docs/2024.11/Reference/Blocks/flows/run-flow/run-flow-async-block.md new file mode 100644 index 000000000..854ca8870 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/flows/run-flow/run-flow-async-block.md @@ -0,0 +1,272 @@ +--- +title: "Run Flow Async" +linkTitle: "Run Flow Async" +description: "Runs a chosen Flow asynchronously, returning a Task representing its execution." +--- + +{{< figure src="/blocks/Cortex_Blocks_Flows_RunFlow_RunFlowAsyncBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Flows.RunFlow.RunFlowAsyncBlock)

+ +## Description + +Runs a chosen [Flow][Flow Property] asynchronously using the [Inputs][Inputs Property] provided, returning an [IExecutionTask][] that represents the execution of the [Flow][Flow Property] in the [Execution Task][Execution Task Property] variable. + +## Examples + +### Running a Flow Asynchronously + +This example will run the [Flow][Flow Property] `add-database-entry` assigning the task representing the execution of the [Flow][Flow Property] to `($)ExecutionTask`. + +The [Flow][Flow Property] `add-database-entry` takes an [Input Variable][] `($)NewData`, which is then added to a database by the [Flow][Flow Property]. If no value is given for `($)NewData` the default value `DefaultNewDataValue` is used. The flow containing the [Run Flow Async][] block will then continue executing the rest of its blocks. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Flow][Flow Property] | [Flow][Flow Property], with value `add-database-entry` | [Flow][Flow Property] is of type [FlowReference][] | +| [Inputs][Inputs Property] | | [Inputs][Inputs Property] is of type [InputVariables][] | +|     > NewData | `($)NewData`, with value `SomeNewDataToAddToDatabase` | `($)NewData` is of type [String][] | +| [Execution Task][Execution Task Property] | `($)ExecutionTask`, with no value | `($)ExecutionTask` is a variable of type [IExecutionTask][] | + +#### Result + +`SomeNewDataToAddToDatabase` is passed into the [Input Variable][] `($)NewData` for the [Flow][Flow Property] `add-database-entry`, which results in the [Flow][Flow Property] starting its execution. The flow containing the [Run Flow Async][] block continues executing without waiting for it to complete. + +After the [Flow][Flow Property] has started running, the [Execution Task][Execution Task Property] will have the following properties: + +```json +{ + "ExecutionId": "00000000-0000-0000-0000-000000000000", + "Id": "00000000-0000-0000-0000-000000000000", + "IsCancelled": false, + "IsCompleted": false, + "IsCompletedSuccessfully": false, + "IsFaulted": false, + "Status": "Running", + "Exception": null +} +``` + +Once the [Flow][Flow Property] has added the database entry and has completed successfully, the [Execution Task][Execution Task Property]'s properties will be updated to the following: + +```json +{ + "ExecutionId": "00000000-0000-0000-0000-000000000000", + "Id": "00000000-0000-0000-0000-000000000000", + "IsCancelled": false, + "IsCompleted": true, + "IsCompletedSuccessfully": true, + "IsFaulted": false, + "Status": "RanToCompletion", + "Exception": null +} +``` + +*** + +### Running a Flow Asynchronously with Default Input Variables + +This example will run the [Flow][Flow Property] `add-database-entry` assigning the task representing the execution of the [Flow][Flow Property] to `($)ExecutionTask`. + +The [Flow][Flow Property] `add-database-entry` takes an [Input Variable][] `($)NewData`, which is then added to a database by the [Flow][Flow Property]. If no value is given for `($)NewData` the default value `DefaultNewDataValue` is used. The flow containing the [Run Flow Async][] block will then continue executing the rest of its blocks. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Flow][Flow Property] | [Flow][Flow Property], with value `add-database-entry` | [Flow][Flow Property] is of type [FlowReference][] | +| [Inputs][Inputs Property] | | [Inputs][Inputs Property] is of type [InputVariables][] | +|     > NewData | No value (defaults to `DefaultNewDataValue`) | `($)NewData` is of type [String][] | +| [Execution Task][Execution Task Property] | `($)ExecutionTask`, with no value | `($)ExecutionTask` is a variable of type [IExecutionTask][] | + +#### Result + +As no value is passed into the [Input Variable][] `($)NewData` for the [Flow][Flow Property] `add-database-entry` the default of `DefaultNewDataValue` is used, which results in the [Flow][Flow Property] starting its execution. The flow containing the [Run Flow Async][] block continues executing without waiting for it to complete. + +After the [Flow][Flow Property] has started running, the [Execution Task][Execution Task Property] will have the following properties: + +```json +{ + "ExecutionId": "00000000-0000-0000-0000-000000000000", + "Id": "00000000-0000-0000-0000-000000000000", + "IsCancelled": false, + "IsCompleted": false, + "IsCompletedSuccessfully": false, + "IsFaulted": false, + "Status": "Running", + "Exception": null +} +``` + +Once the [Flow][Flow Property] has added the database entry and has completed successfully, the [Execution Task][Execution Task Property]'s properties will be updated to the following: + +```json +{ + "ExecutionId": "00000000-0000-0000-0000-000000000000", + "Id": "00000000-0000-0000-0000-000000000000", + "IsCancelled": false, + "IsCompleted": true, + "IsCompletedSuccessfully": true, + "IsFaulted": false, + "Status": "RanToCompletion", + "Exception": null +} +``` + +*** + +## Properties + +### Flow + +The [Flow][Flow Property] that will be run. + +The [Literal Editor][] is the only editor available for this property, and it provides the developer a list of all available flows to choose from. + +| | | +|--------------------|---------------------------| +| Data Type | [FlowReference][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][Literal Editor] | +| Default Value | No value (defaults to `null`) | + +### Inputs + +The [Input Variables][Input Variable] that are passed to the [Flow][Flow Property] that will be run. + +It is recommended to use the [Literal Editor][] for this property as it detects and warns of changes to the Flow Contract, allowing users to [Sync the Editor][Syncing the Inputs Property with the Flow Contract]. + +| | | +|--------------------|---------------------------| +| Data Type | [InputVariables][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][Literal Editor] | +| Default Value | No initial value (Will be [synced][Syncing the Inputs Property with the Flow Contract] when the [Flow][Flow Property] is first [selected][Selecting a Flow]) | + +### Execution Task + +The [Execution Task][Execution Task Property] representing the asynchronous execution of the [Flow][Flow Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IExecutionTask][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][Variable Editor] | +| Default Value | `($)ExecutionTask` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|------|-------------| +| [InvalidInputVariablesException][] | Thrown when [Inputs][Inputs Property] is missing any [Input Variables][Input Variable] from the chosen [Flow][Flow Property]. See [Missing Input Variables][]. | +| | Thrown when [Inputs][Inputs Property] has any extra [Input Variables][Input Variable] that are not in the chosen [Flow][Flow Property]. See [Extra Input Variables][]. | +| | Thrown when [Inputs][Inputs Property] has any [Input Variables][Input Variable] that are not a valid type for [Input Variable][]. See [Input Variables of an Invalid Type][]. | + +## Remarks + +### Selecting a Flow + +{{< figure src="/images/run-flow-selecting-a-flow.gif" >}} + +A flow can be selected using the [Literal Editor][] on the [Flow Property][], a list of all available flows will be presented to the developer and can be searched by the Name or Id of a flow. + +When a [Flow][Flow Property] is selected the [Inputs Property][] will be [Synced with the Flow Contract][Syncing the Inputs Property with the Flow Contract]. + +### Default Values + +If an [Input Variable][] has a default value, then this default value will be used when running the [Flow][Flow Property] if the corresponding value in the [Inputs Property][] is left empty. See [Running a Flow with Default Input Variables][] for an example. + +Also, if an [Input Variable][] has a default value, and the corresponding value in the [Inputs Property][] is not of the same type, a [Validation Error][] will be raised when the flow is validated. + +For more information see [Input Variables][Input Variable]. + +### Parent Flow Ending Before Child Flow + +If the parent flow containing the [Run Flow Async][] block ends before the child [Flow][Flow Property], the child [Flow][Flow Property] will continue running to completion. + +### Exceptions Thrown by a Child Flow + +If the child [Flow][Flow Property] run by the [Run Flow Async][] block throws an exception that is unhandled then the exception is saved to the [Execution Task][Execution Task Property]. The parent flow containing the [Run Flow Async][] block will not pause when the exception is thrown unless the [Flow][Flow Property] is being waited on by a [Wait For][] block. + +See [Wait For Task][] block or [Wait For All Tasks][] block for more details. + +### Syncing the Inputs Property with the Flow Contract + +{{< figure src="/images/run-flow-contract-change.gif" >}} + +When a flow is first selected the [Inputs Property][] will be synced with the Flow Contract. + +When the contract of the flow changes (e.g. [Input Variables][Input Variable] of a called [Flow][Flow Property] are updated), a prompt will appear when the block is selected, allowing the user to sync the editor. + +This will cause: + +- Any missing [Input Variables][Input Variable] not present in the [Inputs Property][] to be added +- Any extra [Input Variables][Input Variable] present in the [Inputs Property][] to be removed +- Any [Input Variables][Input Variable] already present in the [Inputs Property][] to be retained + +[Undoing][] this action will cause the [Inputs Property][] to return to its previous state, from before it was synced, allowing any data to be retrieved from any extra [Input Variables][Input Variable]. + +### Known Limitations + +#### The Flow Property can only use the Literal Editor + +The Literal Editor is the only editor available for the [Flow Property][] + +In future this limitation may be removed. + +#### Syncing the Inputs Property with the Flow Contract is not available when using editors other than the Literal Editor + +[Syncing the Inputs Property with the Flow Contract][] is only available when the [Inputs Property][] uses the [Literal Editor][]. If any other editor is used, the prompt to sync will not be displayed and any changes will need to be resolved manually. + +[Flow Property]: {{< ref "#flow" >}} +[Inputs Property]: {{< ref "#inputs" >}} +[Outputs Property]: {{< ref "#outputs" >}} +[Execution Task Property]: {{< ref "#execution-task" >}} +[Syncing the Inputs Property with the Flow Contract]: {{< ref "#syncing-the-inputs-property-with-the-flow-contract" >}} +[Selecting a Flow]: {{< ref "#selecting-a-flow" >}} +[Running a Flow with Default Input Variables]: {{< ref "#running-a-flow-asynchronously-with-default-input-variables" >}} +[Default Values]: {{< ref "#default-values" >}} +[Exceptions Thrown by a Child Flow]: {{< ref "#exceptions-thrown-by-a-child-flow" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[Literal Editor]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable Editor]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Input Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.WhatIsAVariable.FlowInputVariable" >}} +[Output Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.WhatIsAVariable.OutputVariablesStructure" >}} +[Handling Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.HandlingExceptions.MainDoc" >}} +[Validation Error]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Messages.MainDoc" >}} + +[Undoing]: {{< url path="Cortex.Guides.Studio.MainDisplayArea.Undo" >}} + +[FlowReference]: {{< url path="Cortex.Reference.DataTypes.Flows.FlowReference.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[InputVariables]: {{< url path="Cortex.Reference.DataTypes.Flows.InputVariables.MainDoc" >}} +[Structure]: {{< url path="Cortex.Reference.DataTypes.Collections.Structure.MainDoc" >}} +[IExecutionTask]: {{< url path="Cortex.Reference.DataTypes.Tasks.IExecutionTask.MainDoc" >}} + +[Run Flow Async]: {{< url path="Cortex.Reference.Blocks.Flows.RunFlow.RunFlowAsync.MainDoc" >}} + +[Wait For]: {{< url path="Cortex.Reference.Blocks.Tasks.WaitForTask.MainDoc" >}} +[Wait For Task]: {{< url path="Cortex.Reference.Blocks.Tasks.WaitForTask.WaitForTask.TaskHasThrown" >}} +[Wait For All Tasks]: {{< url path="Cortex.Reference.Blocks.Tasks.WaitForTask.WaitForAllTasksBlock.GetSuccessfulResults" >}} + +[InvalidInputVariablesException]: {{< url path="Cortex.Reference.Exceptions.Flows.Execution.InvalidInputVariablesException.MainDoc" >}} +[Missing Input Variables]: {{< url path="Cortex.Reference.Exceptions.Flows.Execution.InvalidInputVariablesException.MissingInputVariables" >}} +[Extra Input Variables]: {{< url path="Cortex.Reference.Exceptions.Flows.Execution.InvalidInputVariablesException.ExtraInputVariables" >}} +[Input Variables of an Invalid Type]: {{< url path="Cortex.Reference.Exceptions.Flows.Execution.InvalidInputVariablesException.InputVariablesOfAnInvalidType" >}} + +[Handle Block Exception blocks]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleBlock.MainDoc" >}} +[Handle Flow Exception]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleFlow.HandleFlowException.MainDoc" >}} +[Handle Workspace Exception]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleWorkspace.HandleWorkspaceException.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/flows/run-flow/run-flow-block.md b/content/en/docs/2024.11/Reference/Blocks/flows/run-flow/run-flow-block.md new file mode 100644 index 000000000..e18e12e2f --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/flows/run-flow/run-flow-block.md @@ -0,0 +1,246 @@ +--- +title: "Run Flow" +linkTitle: "Run Flow" +description: "Runs a chosen Flow, returning any output variables." +--- + +{{< figure src="/blocks/Cortex_Blocks_Flows_RunFlow_RunFlowBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Flows.RunFlow.RunFlowBlock)

+ +## Description + +Runs a chosen [Flow][Flow Property] using the [Inputs][Inputs Property] provided, returning any [Output Variables][Output Variable] from the [Flow][Flow Property] in the [Outputs][Outputs Property] variable. + +## Examples + +### Running a Flow + +This example will run the [Flow][Flow Property] `square-number-flow` saving the output variables to `($)Outputs`. + +The [Flow][Flow Property] `square-number-flow` takes an [Input Variable][] `($)NumberToSquare`, which is then multiplied by itself and saved to the [Output Variable][] `($)SquaredNumber`. If no value is given for `($)NumberToSquare` the default value `10` is used. The flow contains a block that checks that the [Input Variable][] `($)NumberToSquare` is larger than `0`, an exception is thrown by `square-number-flow` if `($)NumberToSquare` is not larger than `0`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Flow][Flow Property] | [Flow][Flow Property], with value `square-number-flow` | [Flow][Flow Property] is of type [FlowReference][] | +| [Inputs][Inputs Property] | | [Inputs][Inputs Property] is of type [InputVariables][] | +|     > NumberToSquare | `($)NumberToSquare`, with value `5` | `($)NumberToSquare` is of type [Int32][] | +| [Outputs][Outputs Property] | `($)Outputs`, with no value | `($)Outputs` is a variable of type [Structure][] | + +#### Result + +`5` is passed into the [Input Variable][] `($)NumberToSquare` for the [Flow][Flow Property] `square-number-flow`, which results in `25` being saved to the [Output Variable][] `($)SquaredNumber`. This results in the variable `($)Outputs` being updated to the following: + +```json +{ + "SquaredNumber": 25 +} +``` + +*** + +### Running a Flow with Default Input Variables + +This example will run the [Flow][Flow Property] `square-number-flow` saving the output variables to `($)Outputs`. + +The [Flow][Flow Property] `square-number-flow` takes an [Input Variable][] `($)NumberToSquare`, which is then multiplied by itself and saved to the [Output Variable][] `($)SquaredNumber`. If no value is given for `($)NumberToSquare` the default value `10` is used. The flow contains a block that checks that the [Input Variable][] `($)NumberToSquare` is larger than `0`, an exception is thrown by `square-number-flow` if `($)NumberToSquare` is not larger than `0`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Flow][Flow Property] | [Flow][Flow Property], with value `square-number-flow` | [Flow][Flow Property] is of type [FlowReference][] | +| [Inputs][Inputs Property] | | [Inputs][Inputs Property] is of type [InputVariables][] | +|     > NumberToSquare | No value (defaults to `10`) | `NumberToSquare` is of type [Int32][] | +| [Outputs][Outputs Property] | `($)Outputs`, with no value | `($)Outputs` is a variable of type [Structure][] | + +#### Result + +As no value is passed into the [Input Variable][] `($)NumberToSquare` for the [Flow][Flow Property] `square-number-flow` the default of `10` is used, which results in `100` being saved to the [Output Variable][] `($)SquaredNumber`. This results in the variable `($)Outputs` being updated to the following: + +```json +{ + "SquaredNumber": 100 +} +``` + +For more information see [Default Values][]. + +*** + +### Running a Flow that Throws an Exception + +This example will run the [Flow][Flow Property] `square-number-flow` saving the output variables to `($)Outputs`. + +The [Flow][Flow Property] `square-number-flow` takes an [Input Variable][] `($)NumberToSquare`, which is then multiplied by itself and saved to the [Output Variable][] `($)SquaredNumber`. If no value is given for `($)NumberToSquare` the default value `10` is used. The flow contains a block that checks that the [Input Variable][] `($)NumberToSquare` is larger than `0`, an exception is thrown by `square-number-flow` if `($)NumberToSquare` is not larger than `0`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Flow][Flow Property] | [Flow][Flow Property], with value `square-number-flow` | [Flow][Flow Property] is of type [FlowReference][] | +| [Inputs][Inputs Property] | | [Inputs][Inputs Property] is of type [InputVariables][] | +|     > NumberToSquare | `($)NumberToSquare`, with value `-1` | `($)NumberToSquare` is of type [Int32][] | +| [Outputs][Outputs Property] | `($)Outputs`, with no value | `($)Outputs` is a variable of type [Structure][] | + +#### Result + +The [Flow][Flow Property] `square-number-flow` contains a block that checks that the [Input Variable][] `($)NumberToSquare` is larger than `0`; if this is not the case an exception is thrown. + +In this example, as `-1` is passed into the [Input Variable][] `($)NumberToSquare` and is not greater than `0`, `($)Outputs` is not updated and an exception is thrown. For more information on how the exception is thrown and how to handle the exception see [Exceptions Thrown by a Child Flow][]. + +*** + +## Properties + +### Flow + +The [Flow][Flow Property] that will be run. + +The [Literal Editor][] is the only editor available for this property, and it provides the developer a list of all available flows to choose from. + +| | | +|--------------------|---------------------------| +| Data Type | [FlowReference][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][Literal Editor] | +| Default Value | No value (defaults to `null`) | + +### Inputs + +The [Input Variables][Input Variable] that are passed to the [Flow][Flow Property] that will be run. + +It is recommended to use the [Literal Editor][] for this property as it detects and warns of changes to the Flow Contract, allowing users to [Sync the Editor][Syncing the Inputs Property with the Flow Contract]. + +| | | +|--------------------|---------------------------| +| Data Type | [InputVariables][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][Literal Editor] | +| Default Value | No initial value (Will be [synced][Syncing the Inputs Property with the Flow Contract] when the [Flow][Flow Property] is first [selected][Selecting a Flow]) | + +### Outputs + +The [Output Variables][Output Variable] from the [Flow][Flow Property]. + +Each of the [Output Variables][Output Variable] will be saved to a [Structure][], where the key is the name of the variable and the item is the value of the variable. + +| | | +|--------------------|---------------------------| +| Data Type | [Structure][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][Variable Editor] | +| Default Value | `($)Outputs` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|------|-------------| +| [InvalidInputVariablesException][] | Thrown when [Inputs][Inputs Property] is missing any [Input Variables][Input Variable] from the chosen [Flow][Flow Property]. See [Missing Input Variables][]. | +| | Thrown when [Inputs][Inputs Property] has any extra [Input Variables][Input Variable] that are not in the chosen [Flow][Flow Property]. See [Extra Input Variables][]. | +| | Thrown when [Inputs][Inputs Property] has any [Input Variables][Input Variable] that are not a valid type for [Input Variable][]. See [Input Variables of an Invalid Type][]. | + +## Remarks + +### Selecting a Flow + +{{< figure src="/images/run-flow-selecting-a-flow.gif" >}} + +A flow can be selected using the [Literal Editor][] on the [Flow Property][], a list of all available flows will be presented to the developer and can be searched by the Name or Id of a flow. + +When a [Flow][Flow Property] is selected the [Inputs Property][] will be [Synced with the Flow Contract][Syncing the Inputs Property with the Flow Contract]. + +### Default Values + +If an [Input Variable][] has a default value, then this default value will be used when running the [Flow][Flow Property] if the corresponding value in the [Inputs Property][] is left empty. See [Running a Flow with Default Input Variables][] for an example. + +Also, if an [Input Variable][] has a default value, and the corresponding value in the [Inputs Property][] is not of the same type, a [Validation Error][] will be raised when the flow is validated. + +For more information see [Input Variables][Input Variable]. + +### Exceptions Thrown by a Child Flow + +If the [Flow][Flow Property] run by the Run Flow block throws an exception that is unhandled then it is rethrown by the Run Flow block. This can then be handled by any connected [Handle Block Exception blocks][]. See [Running a Flow that Throws an Exception][] for an example. + +If an exception thrown by a block is not handled by any connected [Handle Block Exception blocks][], it will be passed to the [Handle Workspace Exception][] block on the same workspace. + +This process repeats until: + +- The exception is handled, or +- The exception reaches the flow's top-level workspace, is not handled by any [Handle Block Exception blocks][] and the top-level workspace does not contain a [Handle Workspace Exception][] block. At this stage, the exception is handled by the flow's [Handle Flow Exception][] block. + +For more information see [Handling Exceptions][]. + +### Syncing the Inputs Property with the Flow Contract + +{{< figure src="/images/run-flow-contract-change.gif" >}} + +When a flow is first selected the [Inputs Property][] will be synced with the Flow Contract. + +When the contract of the flow changes (e.g. [Input Variables][Input Variable] of a called [Flow][Flow Property] are updated), a prompt will appear when the block is selected, allowing the user to sync the editor. + +This will cause: + +- Any missing [Input Variables][Input Variable] not present in the [Inputs Property][] to be added +- Any extra [Input Variables][Input Variable] present in the [Inputs Property][] to be removed +- Any [Input Variables][Input Variable] already present in the [Inputs Property][] to be retained + +[Undoing][] this action will cause the [Inputs Property][] to return to its previous state, from before it was synced, allowing any data to be retrieved from any extra [Input Variables][Input Variable]. + +### Known Limitations + +#### The Flow Property can only use the Literal Editor + +The Literal Editor is the only editor available for the [Flow Property][] + +In future this limitation may be removed. + +#### Syncing the Inputs Property with the Flow Contract is not available when using editors other than the Literal Editor + +[Syncing the Inputs Property with the Flow Contract][] is only available when the [Inputs Property][] uses the [Literal Editor][]. If any other editor is used, the prompt to sync will not be displayed and any changes will need to be resolved manually. + +[Flow Property]: {{< ref "#flow" >}} +[Inputs Property]: {{< ref "#inputs" >}} +[Outputs Property]: {{< ref "#outputs" >}} +[Syncing the Inputs Property with the Flow Contract]: {{< ref "#syncing-the-inputs-property-with-the-flow-contract" >}} +[Selecting a Flow]: {{< ref "#selecting-a-flow" >}} +[Running a Flow that Throws an Exception]: {{< ref "#running-a-flow-that-throws-an-exception" >}} +[Running a Flow with Default Input Variables]: {{< ref "#running-a-flow-with-default-input-variables" >}} +[Default Values]: {{< ref "#default-values" >}} +[Exceptions Thrown by a Child Flow]: {{< ref "#exceptions-thrown-by-a-child-flow" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[Literal Editor]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable Editor]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Input Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.WhatIsAVariable.FlowInputVariable" >}} +[Output Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.WhatIsAVariable.OutputVariablesStructure" >}} +[Handling Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.HandlingExceptions.MainDoc" >}} +[Validation Error]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Messages.MainDoc" >}} + +[Undoing]: {{< url path="Cortex.Guides.Studio.MainDisplayArea.Undo" >}} + +[FlowReference]: {{< url path="Cortex.Reference.DataTypes.Flows.FlowReference.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[InputVariables]: {{< url path="Cortex.Reference.DataTypes.Flows.InputVariables.MainDoc" >}} +[Structure]: {{< url path="Cortex.Reference.DataTypes.Collections.Structure.MainDoc" >}} + +[InvalidInputVariablesException]: {{< url path="Cortex.Reference.Exceptions.Flows.Execution.InvalidInputVariablesException.MainDoc" >}} +[Missing Input Variables]: {{< url path="Cortex.Reference.Exceptions.Flows.Execution.InvalidInputVariablesException.MissingInputVariables" >}} +[Extra Input Variables]: {{< url path="Cortex.Reference.Exceptions.Flows.Execution.InvalidInputVariablesException.ExtraInputVariables" >}} +[Input Variables of an Invalid Type]: {{< url path="Cortex.Reference.Exceptions.Flows.Execution.InvalidInputVariablesException.InputVariablesOfAnInvalidType" >}} + +[Handle Block Exception blocks]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleBlock.MainDoc" >}} +[Handle Flow Exception]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleFlow.HandleFlowException.MainDoc" >}} +[Handle Workspace Exception]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleWorkspace.HandleWorkspaceException.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/flows/start-flow/_index.md b/content/en/docs/2024.11/Reference/Blocks/flows/start-flow/_index.md new file mode 100644 index 000000000..80df19ef8 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/flows/start-flow/_index.md @@ -0,0 +1,5 @@ +--- +title: "Start Flow" +linkTitle: "Start Flow" +description: "Blocks that indicate the start of a flow." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/flows/start-flow/start-flow-block.md b/content/en/docs/2024.11/Reference/Blocks/flows/start-flow/start-flow-block.md new file mode 100644 index 000000000..984fbcba4 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/flows/start-flow/start-flow-block.md @@ -0,0 +1,37 @@ +--- +title: "Start Flow" +linkTitle: "Start Flow" +description: "Indicates the start of a flow." +--- + +{{< figure src="/blocks/Cortex_Blocks_Flows_StartFlow_StartFlowBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Flows.StartFlow.StartFlowBlock)

+ +## Description + +Indicates the start of a flow. + +This is always the first block in a flow. It cannot be deleted, and a flow can only contain one of these blocks. + +The block has no block specific properties, but it does have the `Description` property that is common to all blocks. This allows users to give each block a description; typically this will be left blank for this block. + +A breakpoint can be added to this block when debugging. + +## Examples + +No examples for the block. + +## Properties + +No properties for the block, other than the `Description` property that is common to all blocks. + +## Exceptions + +No exceptions are thrown by the block. + +## Remarks + +None diff --git a/content/en/docs/2024.11/Reference/Blocks/google-workspace/_index.md b/content/en/docs/2024.11/Reference/Blocks/google-workspace/_index.md new file mode 100644 index 000000000..8d6e24e3f --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/google-workspace/_index.md @@ -0,0 +1,5 @@ +--- +title: "Google Workspace" +linkTitle: "Google Workspace" +description: "Blocks related to working with Google Workspace." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/google-workspace/gmail/_index.md b/content/en/docs/2024.11/Reference/Blocks/google-workspace/gmail/_index.md new file mode 100644 index 000000000..f53ba8b4b --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/google-workspace/gmail/_index.md @@ -0,0 +1,5 @@ +--- +title: "Gmail" +linkTitle: "Gmail" +description: "Blocks related to working with Gmail." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/google-workspace/gmail/send-email/_index.md b/content/en/docs/2024.11/Reference/Blocks/google-workspace/gmail/send-email/_index.md new file mode 100644 index 000000000..c12558811 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/google-workspace/gmail/send-email/_index.md @@ -0,0 +1,5 @@ +--- +title: "Send Email" +linkTitle: "Send Email" +description: "Blocks related to sending Emails." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/google-workspace/gmail/send-email/send-email-using-gmail-block.md b/content/en/docs/2024.11/Reference/Blocks/google-workspace/gmail/send-email/send-email-using-gmail-block.md new file mode 100644 index 000000000..2862a63b3 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/google-workspace/gmail/send-email/send-email-using-gmail-block.md @@ -0,0 +1,741 @@ +--- +title: "Send Email Using Gmail" +linkTitle: "Send Email Using Gmail" +description: "Sends an email using the SMTP server hosted by Gmail." +--- + +{{< figure src="/blocks/Cortex_Blocks_GoogleWorkspace_Gmail_SendEmail_SendEmailUsingGmailBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.GoogleWorkspace.Gmail.SendEmail.SendEmailUsingGmailBlock)

+ +## Description + +Connects to the [SMTP][] server hosted by [Gmail][] using the specified [Gmail Session Details][Gmail Session Details Property], and sends an [Email Message][Email Message Property]. + +[Close Session][Close Session Property] can be specified to choose whether the connection to the [SMTP][] server hosted by [Gmail][] is closed or is kept open for use on subsequent Send Email Using Gmail blocks. + +## Examples + +Sending emails using a username and password is not recommended and is being phased out by [Gmail][]. Using a username and password will currently only work for [Gmail][] accounts associated with a Google Workspace that has access enabled for less secure apps. Instead, it is recommended to use an app password or OAuth, for more information, see [Less Secure Apps][]. + +In the following examples, where a [UserCredentials][] is used in the [Gmail Session Details][Gmail Session Details Property], the [Password][] property can be either the password associated with the username (if the account is associated with a Google Workspace with access enabled for less secure apps) or an app password. + +For more information, see [Setting Credentials][]. + +### Sending an email to a single recipient + +This example will send an email from `sender@gmail.com` to `recipient@outlook.com`. The example uses the [SMTP][] server hosted at `smtp.gmail.com` on [Port][] `465` which requires [UseSsl][] to be to set to `true` within the [Gmail Session Details][Gmail Session Details Property]. + +For more information about when [UseSsl][] should be set to `true` or `false`, see [Setting UseSsl][]. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Email Message][Email Message Property] | `($)EmailMessage` with value `{"To": [{"Name": null, "Address": "recipient@outlook.com"}], "From": {"Name": null, "Address": "sender@gmail.com"}, "Cc": [], "Bcc": [], "Priority": null, "Subject": "Example email subject", "BodyFormat": null, "Body": "Example email body", "Attachments": []}`

In this example `($)EmailMessage` has been set up using the following [Expression][]:

`new EmailMessage(to: new List(){ new EmailAddress("recipient@outlook.com") }, from: new EmailAddress("sender@gmail.com"), cc: null, bcc: null, priority: null, subject: "Example email subject", bodyFormat: null, body: "Example email body", attachments: null)` | `($)EmailMessage` is a variable of type [EmailMessage][]

As [Priority][] and [BodyFormat][] are `null`, the email will be sent with a [Text][] body and [Normal][] priority.| +| [Gmail Session Details][Gmail Session Details Property] | `($)GmailSessionDetails` with value `{"ServerDetails": {"Host": "smtp.gmail.com", "Port": 465, "UseSsl": true}, "Credentials": {"Domain": null, "Username": "sender@gmail.com", "Password": "encryptedPassword"}}`

In this example `($)GmailSessionDetails` has been set up using the following [Expression][]:

`new GmailSessionDetails(serverDetails: new ServerDetails("smtp.gmail.com", 465, true), credentials: new UserCredentials("sender@gmail.com", "encryptedPassword"))` | `($)GmailSessionDetails` is a variable of type [GmailSessionDetails][]

The [Password][] property in the [UserCredentials][] can be the password associated with the username (if the account is associated with a Google Workspace with access enabled for less secure apps) or an app password, for more information, see [Setting Credentials][].

The [Password][] property must be encrypted, for more information on how to encrypt the password, see [EncryptedText][]. | +| [Close Session][Close Session Property] | `($)CloseSession` with value `true` |`($)CloseSession` is a variable of type [Boolean][] | + +#### Result + +An email with [Normal][] priority is sent from `sender@gmail.com` to `recipient@outlook.com` with a subject of `"Example email subject"` and a [Text][] body of `"Example email body"`, and then the session is closed. + +*** + +### Sending an email to multiple recipients + +This example will send an email from `sender@gmail.com` to `recipient1@outlook.com`, `recipient2@outlook.com` and `recipient3@outlook.com`. The example uses the [SMTP][] server hosted at `smtp.gmail.com` on [Port][] `465` which requires [UseSsl][] to be set to `true` within the [Gmail Session Details][Gmail Session Details Property]. + +For more information about when [UseSsl][] should be set to `true` or `false`, see [Setting UseSsl][]. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Email Message][Email Message Property] | `($)EmailMessage` with value `{"To": [{"Name": null, "Address": "recipient1@outlook.com"}, {"Name": null, "Address": "recipient2@outlook.com"}, {"Name": null, "Address": "recipient3@outlook.com"}], "From": {"Name": null, "Address": "sender@gmail.com"}, "Cc": [], "Bcc": [], "Priority": null, "Subject": "Example email subject", "BodyFormat": null, "Body": "Example email body", "Attachments": []}`

In this example `($)EmailMessage` has been set up using the following [Expression][]:

`new EmailMessage(to: new List(){ new EmailAddress("recipient1@outlook.com"), new EmailAddress("recipient2@outlook.com"), new EmailAddress("recipient3@outlook.com") }, from: new EmailAddress("sender@gmail.com"), cc: null, bcc: null, priority: null, subject: "Example email subject", bodyFormat: null, body: "Example email body", attachments: null)` | `($)EmailMessage` is a variable of type [EmailMessage][]

As [Priority][] and [BodyFormat][] are `null`, the email will be sent with a [Text][] body and [Normal][] priority.| +| [Gmail Session Details][Gmail Session Details Property] | `($)GmailSessionDetails` with value `{"ServerDetails": {"Host": "smtp.gmail.com", "Port": 465, "UseSsl": true}, "Credentials": {"Domain": null, "Username": "sender@gmail.com", "Password": "encryptedPassword"}}`

In this example `($)GmailSessionDetails` has been set up using the following [Expression][]:

`new GmailSessionDetails(serverDetails: new ServerDetails("smtp.gmail.com", 465, true), credentials: new UserCredentials("sender@gmail.com", "encryptedPassword"))` | `($)GmailSessionDetails` is a variable of type [GmailSessionDetails][]

The [Password][] property in the [UserCredentials][] can be the password associated with the username (if the account is associated with a Google Workspace with access enabled for less secure apps) or an app password, for more information, see [Setting Credentials][].

The [Password][] property must be encrypted, for more information on how to encrypt the password, see [EncryptedText][]. | +| [Close Session][Close Session Property] | `($)CloseSession` with value `true` |`($)CloseSession` is a variable of type [Boolean][] | + +#### Result + +An email with [Normal][] priority is sent from `sender@gmail.com` to `recipient1@outlook.com`, `recipient2@outlook.com` and `recipient3@outlook.com` with a subject of `"Example email subject"` and a [Text][] body of `"Example email body"`, and then the session is closed. + +*** + +### Sending an email with a CC or BCC recipient + +This example will send an email from `sender@gmail.com` to `recipient@outlook.com` with `cc@outlook.com` and `bcc@outlook.com` as the [CC][CC Glossary] and [BCC][BCC Glossary] recipients for the email respectively. The example uses the [SMTP][] server hosted at `smtp.gmail.com` on [Port][] `465` which requires [UseSsl][] to be set to `true` within the [Gmail Session Details][Gmail Session Details Property]. + +For more information about when [UseSsl][] should be set to `true` or `false`, see [Setting UseSsl][]. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Email Message][Email Message Property] | `($)EmailMessage` with value `{"To": [{"Name": null, "Address": "recipient@outlook.com"}], "From": {"Name": null, "Address": "sender@gmail.com"}, "Cc": [{"Name": null, "Address": "cc@outlook.com"}], "Bcc": [{"Name": null, "Address": "bcc@outlook.com"}], "Priority": null, "Subject": "Example email subject", "BodyFormat": null, "Body": "Example email body", "Attachments": []}`

In this example `($)EmailMessage` has been set up using the following [Expression][]:

`new EmailMessage(to: new List(){ new EmailAddress("recipient@outlook.com") }, from: new EmailAddress("sender@gmail.com"), cc: new List(){ new EmailAddress("cc@outlook.com") }, bcc: new List(){ new EmailAddress("bcc@outlook.com") }, priority: null, subject: "Example email subject", bodyFormat: null, body: "Example email body", attachments: null)` | `($)EmailMessage` is a variable of type [EmailMessage][]

As [Priority][] and [BodyFormat][] are `null`, the email will be sent with a [Text][] body and [Normal][] priority. | +| [Gmail Session Details][Gmail Session Details Property] | `($)GmailSessionDetails` with value `{"ServerDetails": {"Host": "smtp.gmail.com", "Port": 465, "UseSsl": true}, "Credentials": {"Domain": null, "Username": "sender@gmail.com", "Password": "encryptedPassword"}}`

In this example `($)GmailSessionDetails` has been set up using the following [Expression][]:

`new GmailSessionDetails(serverDetails: new ServerDetails("smtp.gmail.com", 465, true), credentials: new UserCredentials("sender@gmail.com", "encryptedPassword"))` | `($)GmailSessionDetails` is a variable of type [GmailSessionDetails][]

The [Password][] property in the [UserCredentials][] can be the password associated with the username (if the account is associated with a Google Workspace with access enabled for less secure apps) or an app password, for more information, see [Setting Credentials][].

The [Password][] property must be encrypted, for more information on how to encrypt the password, see [EncryptedText][]. | +| [Close Session][Close Session Property] | `($)CloseSession` with value `true` |`($)CloseSession` is a variable of type [Boolean][] | + +#### Result + +An email with [Normal][] priority is sent from `sender@gmail.com` to `recipient@outlook.com` with a subject of `"Example email subject"` and a [Text][] body of `"Example email body"`. Both `cc@outlook.com` and `bcc@outlook.com` will also recieve copies of the email as they are listed as [CC][CC Glossary] and [BCC][BCC Glossary] recipients, and then the session is closed. + +*** + +### Sending an email with multiple CC or BCC recipients + +This example will send an email from `sender@gmail.com` to `recipient@outlook.com` with `cc1@outlook.com` and `cc2@outlook.com` as the [CC][CC Glossary] recipients and `bcc1@outlook.com` and `bcc2@outlook.com` as the [BCC][BCC Glossary] recipients for the email. The example uses the [SMTP][] server hosted at `smtp.gmail.com` on [Port][] `465` which requires [UseSsl][] to be set to `true` within the [Gmail Session Details][Gmail Session Details Property]. + +For more information about when [UseSsl][] should be set to `true` or `false`, see [Setting UseSsl][]. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Email Message][Email Message Property] | `($)EmailMessage` with value `{"To": [{"Name": null, "Address": "recipient@outlook.com"}], "From": {"Name": null, "Address": "sender@gmail.com"}, "Cc": [{"Name": null, "Address": "cc1@outlook.com"}, {"Name": null, "Address": "cc2@outlook.com"}], "Bcc": [{"Name": null, "Address": "bcc1@outlook.com"}, {"Name": null, "Address": "bcc2@outlook.com"}], "Priority": null, "Subject": "Example email subject", "BodyFormat": null, "Body": "Example email body", "Attachments": []}`

In this example `($)EmailMessage` has been set up using the following [Expression][]:

`new EmailMessage(to: new List(){ new EmailAddress("recipient@outlook.com") }, from: new EmailAddress("sender@gmail.com"), cc: new List(){ new EmailAddress("cc1@outlook.com"), new EmailAddress("cc2@outlook.com") }, bcc: new List(){ new EmailAddress("bcc1@outlook.com"), new EmailAddress("bcc2@outlook.com") }, priority: null, subject: "Example email subject", bodyFormat: null, body: "Example email body", attachments: null)` | `($)EmailMessage` is a variable of type [EmailMessage][]

As [Priority][] and [BodyFormat][] are `null`, the email will be sent with a [Text][] body and [Normal][] priority. | +| [Gmail Session Details][Gmail Session Details Property] | `($)GmailSessionDetails` with value `{"ServerDetails": {"Host": "smtp.gmail.com", "Port": 465, "UseSsl": true}, "Credentials": {"Domain": null, "Username": "sender@gmail.com", "Password": "encryptedPassword"}}`

In this example `($)GmailSessionDetails` has been set up using the following [Expression][]:

`new GmailSessionDetails(serverDetails: new ServerDetails("smtp.gmail.com", 465, true), credentials: new UserCredentials("sender@gmail.com", "encryptedPassword"))` | `($)GmailSessionDetails` is a variable of type [GmailSessionDetails][]

The [Password][] property in the [UserCredentials][] can be the password associated with the username (if the account is associated with a Google Workspace with access enabled for less secure apps) or an app password, for more information, see [Setting Credentials][].

The [Password][] property must be encrypted, for more information on how to encrypt the password, see [EncryptedText][]. | +| [Close Session][Close Session Property] | `($)CloseSession` with value `true` |`($)CloseSession` is a variable of type [Boolean][] | + +#### Result + +An email with [Normal][] priority is sent from `sender@gmail.com` to `recipient@outlook.com` with a subject of `"Example email subject"` and a [Text][] body of `"Example email body"`. Both `cc1@outlook.com` and `cc2@outlook.com` will also recieve copies of the email as they are listed as [CC][CC Glossary] recipients, and both `bcc1@outlook.com` and `bcc2@outlook.com` will recieve copies of the email as they are listed as [BCC][BCC Glossary] recipients. Finally, the session is closed. + +*** + +### Sending an email with a different priority + +This example will send an email with [Urgent][] priority from `sender@gmail.com` to `recipient@outlook.com`. The example uses the [SMTP][] server hosted at `smtp.gmail.com` on [Port][] `465` which requires [UseSsl][] to be set to `true` within the [Gmail Session Details][Gmail Session Details Property]. + +For more information on: + +- What priorities an email can be sent as, see [EmailMessagePriority][] +- The effect of changing the [Priority][] of the [Email Message][Email Message Property], see [How does Priority affect sending an email?][] +- When [UseSsl][] should be set to `true` or `false`, see [Setting UseSsl][]. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Email Message][Email Message Property] | `($)EmailMessage` with value `{"To": [{"Name": null, "Address": "recipient@outlook.com"}], "From": {"Name": null, "Address": "sender@gmail.com"}, "Cc": [], "Bcc": [], "Priority": "EmailMessagePriority.Urgent", "Subject": "Example email subject", "BodyFormat": null, "Body": "Example email body", "Attachments": []}`

In this example `($)EmailMessage` has been set up using the following [Expression][]:

`new EmailMessage(to: new List(){ new EmailAddress("recipient@outlook.com") }, from: new EmailAddress("sender@gmail.com"), cc: null, bcc: null, priority: EmailMessagePriority.Urgent, subject: "Example email subject", bodyFormat: null, body: "Example email body", attachments: null)` | `($)EmailMessage` is a variable of type [EmailMessage][]

As [BodyFormat][] is `null`, the email will be sent with a [Text][] body. | +| [Gmail Session Details][Gmail Session Details Property] | `($)GmailSessionDetails` with value `{"ServerDetails": {"Host": "smtp.gmail.com", "Port": 465, "UseSsl": true}, "Credentials": {"Domain": null, "Username": "sender@gmail.com", "Password": "encryptedPassword"}}`

In this example `($)GmailSessionDetails` has been set up using the following [Expression][]:

`new GmailSessionDetails(serverDetails: new ServerDetails("smtp.gmail.com", 465, true), credentials: new UserCredentials("sender@gmail.com", "encryptedPassword"))` | `($)GmailSessionDetails` is a variable of type [GmailSessionDetails][]

The [Password][] property in the [UserCredentials][] can be the password associated with the username (if the account is associated with a Google Workspace with access enabled for less secure apps) or an app password, for more information, see [Setting Credentials][].

The [Password][] property must be encrypted, for more information on how to encrypt the password, see [EncryptedText][]. | +| [Close Session][Close Session Property] | `($)CloseSession` with value `true` |`($)CloseSession` is a variable of type [Boolean][] | + +#### Result + +An email with [Urgent][] priority is sent from `sender@gmail.com` to `recipient@outlook.com` with a subject of `"Example email subject"` and a [Text][] body of `"Example email body"`, and then the session is closed. + +*** + +### Sending an email with an HTML body + +This example will send an email with an [HTML][] body from `sender@gmail.com` to `recipient@outlook.com`. The example uses the [SMTP][] server hosted at `smtp.gmail.com` on [Port][] `465` which requires [UseSsl][] to be set to `true` within the [Gmail Session Details][Gmail Session Details Property]. + +For more information on: + +- What other body formats an email can be sent with, see [EmailMessageBodyFormat][] +- The effect of changing the [BodyFormat][] of the [Email Message][Email Message Property], see [How does BodyFormat affect sending an email?][] +- When [UseSsl][] should be set to `true` or `false`, see [Setting UseSsl][]. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Email Message][Email Message Property] | `($)EmailMessage` with value `{"To": [{"Name": null, "Address": "recipient@outlook.com"}], "From": {"Name": null, "Address": "sender@gmail.com"}, "Cc": [], "Bcc": [], "Priority": null, "Subject": "Example email subject", "BodyFormat": "EmailMessageBodyFormat.Html", "Body": "

Example email body

", "Attachments": []}`

In this example `($)EmailMessage` has been set up using the following [Expression][]:

`new EmailMessage(to: new List(){ new EmailAddress("recipient@outlook.com") }, from: new EmailAddress("sender@gmail.com"), cc: null, bcc: null, priority: null, subject: "Example email subject", bodyFormat: EmailMessageBodyFormat.Html, body: "

Example email body

", attachments: null)` | `($)EmailMessage` is a variable of type [EmailMessage][]

As [Priority][] is `null`, the email will be sent with [Normal][] priority. | +| [Gmail Session Details][Gmail Session Details Property] | `($)GmailSessionDetails` with value `{"ServerDetails": {"Host": "smtp.gmail.com", "Port": 465, "UseSsl": true}, "Credentials": {"Domain": null, "Username": "sender@gmail.com", "Password": "encryptedPassword"}}`

In this example `($)GmailSessionDetails` has been set up using the following [Expression][]:

`new GmailSessionDetails(serverDetails: new ServerDetails("smtp.gmail.com", 465, true), credentials: new UserCredentials("sender@gmail.com", "encryptedPassword"))` | `($)GmailSessionDetails` is a variable of type [GmailSessionDetails][]

The [Password][] property in the [UserCredentials][] can be the password associated with the username (if the account is associated with a Google Workspace with access enabled for less secure apps) or an app password, for more information, see [Setting Credentials][].

The [Password][] property must be encrypted, for more information on how to encrypt the password, see [EncryptedText][]. | +| [Close Session][Close Session Property] | `($)CloseSession` with value `true` |`($)CloseSession` is a variable of type [Boolean][] | + +#### Result + +An email with [Normal][] priority is sent from `sender@gmail.com` to `recipient@outlook.com` with a subject of `"Example email subject"` and an [HTML][] body of `"

Example email body

"`, and then the session is closed. + +*** + +### Sending an email with a single attachment + +This example will send an email with a single attachment, `attachment.txt`, from `sender@gmail.com` to `recipient@outlook.com`. The attachment is located at `C:\attachment.txt` on the server executing the flow. The example uses the [SMTP][] server hosted at `smtp.gmail.com` on [Port][] `465` which requires [UseSsl][] to be set to `true` within the [Gmail Session Details][Gmail Session Details Property]. + +For more information on: + +- Email attachments, see [Attachments][Attachments Remarks] +- When [UseSsl][] should be set to `true` or `false`, see [Setting UseSsl][]. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Email Message][Email Message Property] | `($)EmailMessage` with value `{"To": [{"Name": null, "Address": "recipient@outlook.com"}], "From": {"Name": null, "Address": "sender@gmail.com"}, "Cc": [], "Bcc": [], "Priority": null, "Subject": "Example email subject", "BodyFormat": null, "Body": "Example email body", "Attachments": ["C:\\attachment.txt"]}`

In this example `($)EmailMessage` has been set up using the following [Expression][]:

`new EmailMessage(to: new List(){ new EmailAddress("recipient@outlook.com") }, from: new EmailAddress("sender@gmail.com"), cc: null, bcc: null, priority: null, subject: "Example email subject", bodyFormat: null, body: "Example email body", attachments: new List(){ @"C:\attachment.txt" })` | `($)EmailMessage` is a variable of type [EmailMessage][]

As [Priority][] and [BodyFormat][] are `null`, the email will be sent with a [Text][] body and [Normal][] priority.

The [Attachments][Attachments Remarks] are added to the email by providing file paths pointing to the files to be attached to the email. | +| [Gmail Session Details][Gmail Session Details Property] | `($)GmailSessionDetails` with value `{"ServerDetails": {"Host": "smtp.gmail.com", "Port": 465, "UseSsl": true}, "Credentials": {"Domain": null, "Username": "sender@gmail.com", "Password": "encryptedPassword"}}`

In this example `($)GmailSessionDetails` has been set up using the following [Expression][]:

`new GmailSessionDetails(serverDetails: new ServerDetails("smtp.gmail.com", 465, true), credentials: new UserCredentials("sender@gmail.com", "encryptedPassword"))` | `($)GmailSessionDetails` is a variable of type [GmailSessionDetails][]

The [Password][] property in the [UserCredentials][] can be the password associated with the username (if the account is associated with a Google Workspace with access enabled for less secure apps) or an app password, for more information, see [Setting Credentials][].

The [Password][] property must be encrypted, for more information on how to encrypt the password, see [EncryptedText][]. | +| [Close Session][Close Session Property] | `($)CloseSession` with value `true` |`($)CloseSession` is a variable of type [Boolean][] | + +#### Result + +An email with [Normal][] priority containing a text file attachment, `attachment.txt`, is sent from `sender@gmail.com` to `recipient@outlook.com` with a subject of `"Example email subject"` and a [Text][] body of `"Example email body"`, and then the session is closed. + +*** + +### Sending an email with multiple attachments + +This example will send an email with mutiple attachments, `attachment1.txt` and `attachment2.txt` from `sender@gmail.com` to `recipient@outlook.com`. The attachments are located at the paths `C:\attachment1.txt` and `C:\attachment2.txt` on the server executing the flow. The example uses the [SMTP][] server hosted at `smtp.gmail.com` on [Port][] `465` which requires [UseSsl][] to be set to `true` within the [Gmail Session Details][Gmail Session Details Property]. + +For more information on: + +- Email attachments, see [Attachments][Attachments Remarks] +- When [UseSsl][] should be set to `true` or `false`, see [Setting UseSsl][]. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Email Message][Email Message Property] | `($)EmailMessage` with value `{"To": [{"Name": null, "Address": "recipient@outlook.com"}], "From": {"Name": null, "Address": "sender@gmail.com"}, "Cc": [], "Bcc": [], "Priority": null, "Subject": "Example email subject", "BodyFormat": null, "Body": "Example email body", "Attachments": ["C:\\attachment1.txt", "C:\\attachment2.txt"]}`

In this example `($)EmailMessage` has been set up using the following [Expression][]:

`new EmailMessage(to: new List(){ new EmailAddress("recipient@outlook.com") }, from: new EmailAddress("sender@gmail.com"), cc: null, bcc: null, priority: null, subject: "Example email subject", bodyFormat: null, body: "Example email body", attachments: new List(){ @"C:\attachment1.txt", @"C:\attachment2.txt" })` | `($)EmailMessage` is a variable of type [EmailMessage][]

As [Priority][] and [BodyFormat][] are `null`, the email will be sent with a [Text][] body and [Normal][] priority.

The [Attachments][Attachments Remarks] are added to the email by providing file paths pointing to the files to be attached to the email. | +| [Gmail Session Details][Gmail Session Details Property] | `($)GmailSessionDetails` with value `{"ServerDetails": {"Host": "smtp.gmail.com", "Port": 465, "UseSsl": true}, "Credentials": {"Domain": null, "Username": "sender@gmail.com", "Password": "encryptedPassword"}}`

In this example `($)GmailSessionDetails` has been set up using the following [Expression][]:

`new GmailSessionDetails(serverDetails: new ServerDetails("smtp.gmail.com", 465, true), credentials: new UserCredentials("sender@gmail.com", "encryptedPassword"))` | `($)GmailSessionDetails` is a variable of type [GmailSessionDetails][]

The [Password][] property in the [UserCredentials][] can be the password associated with the username (if the account is associated with a Google Workspace with access enabled for less secure apps) or an app password, for more information, see [Setting Credentials][].

The [Password][] property must be encrypted, for more information on how to encrypt the password, see [EncryptedText][]. | +| [Close Session][Close Session Property] | `($)CloseSession` with value `true` |`($)CloseSession` is a variable of type [Boolean][] | + +#### Result + +An email with [Normal][] priority containing two text file attachments, `attachment1.txt` and `attachment2.txt`, is sent from `sender@gmail.com` to `recipient@outlook.com` with a subject of `"Example email subject"` and a [Text][] body of `"Example email body"`, and then the session is closed. + +*** + +### Sending an email with UseSsl set to false + +This example will send an email from `sender@gmail.com` to `recipient@outlook.com`. The example uses the [SMTP][] server hosted at `smtp.gmail.com` on [Port][] `587` which requires [UseSsl][] to be set to `false` within the [Gmail Session Details][Gmail Session Details Property]. + +For more information on when [UseSsl][] should be set to `true` or `false`, see [Setting UseSsl][]. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Email Message][Email Message Property] | `($)EmailMessage` with value `{"To": [{"Name": null, "Address": "recipient@outlook.com"}], "From": {"Name": null, "Address": "sender@gmail.com"}, "Cc": [], "Bcc": [], "Priority": null, "Subject": "Example email subject", "BodyFormat": null, "Body": "Example email body", "Attachments": []}`

In this example `($)EmailMessage` has been set up using the following [Expression][]:

`new EmailMessage(to: new List(){ new EmailAddress("recipient@outlook.com") }, from: new EmailAddress("sender@gmail.com"), cc: null, bcc: null, priority: null, subject: "Example email subject", bodyFormat: null, body: "Example email body", attachments: null)` | `($)EmailMessage` is a variable of type [EmailMessage][]

As [Priority][] and [BodyFormat][] are `null`, the email will be sent with a [Text][] body and [Normal][] priority.| +| [Gmail Session Details][Gmail Session Details Property] | `($)GmailSessionDetails` with value `{"ServerDetails": {"Host": "smtp.gmail.com", "Port": 587, "UseSsl": false}, "Credentials": {"Domain": null, "Username": "sender@gmail.com", "Password": "encryptedPassword"}}`

In this example `($)GmailSessionDetails` has been set up using the following [Expression][]:

`new GmailSessionDetails(serverDetails: new ServerDetails("smtp.gmail.com", 587, false), credentials: new UserCredentials("sender@gmail.com", "encryptedPassword"))` | `($)GmailSessionDetails` is a variable of type [GmailSessionDetails][]

The [Password][] property in the [UserCredentials][] can be the password associated with the username (if the account is associated with a Google Workspace with access enabled for less secure apps) or an app password, for more information, see [Setting Credentials][].

The [Password][] property must be encrypted, for more information on how to encrypt the password, see [EncryptedText][]. | +| [Close Session][Close Session Property] | `($)CloseSession` with value `true` |`($)CloseSession` is a variable of type [Boolean][] | + +#### Result + +An email with [Normal][] priority is sent from `sender@gmail.com` to `recipient@outlook.com` with a subject of `"Example email subject"` and a [Text][] body of `"Example email body"`, and then the session is closed. + +*** + +### Sending an email using OAuth + +This example will send an email from `sender@gmail.com` to `recipient@outlook.com`. The example uses the [SMTP][] server hosted at `smtp.gmail.com` on [Port][] `465` which requires [UseSsl][] to be to set to `true` within the [Gmail Session Details][Gmail Session Details Property]. + +For more information about when [UseSsl][] should be set to `true` or `false`, see [Setting UseSsl][]. + +The authentication mechanism used in this example is OAuth, the specific authentication flow used is often referred to as "Two-Legged OAuth". Therefore, for this example to work correctly: + +- Credentials provided must be for a [Gmail][] account connected to a Google Workspace +- Credentials in [Gmail Session Details][Gmail Session Details Property] must be a [GmailOAuthCertificateCredentials][] which requires: + - [CertificatePath][] + - [CertificatePassword][] + - [FromAddress][] + - [ClientId][] +- [CertificatePath][] must be a path pointing to a certificate accessible from the server executing the flow + +For more information on: + +- What each of the properties in the [GmailOAuthCertificateCredentials][] needs to be, see [GmailOAuthCertificateCredentials][] +- Using a certificate file, see [Certificate Files][] +- How to set up the Gmail account so that this authentication mechanism can be used, see [Setting up a Gmail account for OAuth authentication][] + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Email Message][Email Message Property] | `($)EmailMessage` with value `{"To": [{"Name": null, "Address": "recipient@outlook.com"}], "From": {"Name": null, "Address": "sender@gmail.com"}, "Cc": [], "Bcc": [], "Priority": null, "Subject": "Example email subject", "BodyFormat": null, "Body": "Example email body", "Attachments": []}`

In this example `($)EmailMessage` has been set up using the following [Expression][]:

`new EmailMessage(to: new List(){ new EmailAddress("recipient@outlook.com") }, from: new EmailAddress("sender@gmail.com"), cc: null, bcc: null, priority: null, subject: "Example email subject", bodyFormat: null, body: "Example email body", attachments: null)` | `($)EmailMessage` is a variable of type [EmailMessage][]

As [Priority][] and [BodyFormat][] are `null`, the email will be sent with a [Text][] body and [Normal][] priority.| +| [Gmail Session Details][Gmail Session Details Property] | `($)GmailSessionDetails` with value `{"ServerDetails": {"Host": "smtp.gmail.com", "Port": 465, "UseSsl": true}, "Credentials": {"CertificatePath": "C:\\certificate.p12", "CertificatePassword": "encryptedPassword", "FromAddress": "sender@gmail.com", "ClientId": "clientId"}}`

In this example `($)GmailSessionDetails` has been set up using the following [Expression][]:

`new GmailSessionDetails(serverDetails: new ServerDetails("smtp.gmail.com", 465, true), credentials: new GmailOAuthCertificateCredentials(@"C:\certificate.p12", "encryptedPassword", "sender@gmail.com", "clientId"))` | `($)GmailSessionDetails` is a variable of type [GmailSessionDetails][]

The [CertificatePath][] in the [GmailOAuthCertificateCredentials][] is a path pointing to a certificate accessible from the server executing the flow.

For information on:
  • What each of the properties in the [GmailOAuthCertificateCredentials][] needs to be, see [GmailOAuthCertificateCredentials][]
  • How to set up the [Gmail][] account so that this authentication mechanism can be used, see [Setting up a Gmail account for OAuth authentication][]
The [CertificatePassword][] property must be encrypted, for more information on how to encrypt the password, see [EncryptedText][]. | +| [Close Session][Close Session Property] | `($)CloseSession` with value `true` |`($)CloseSession` is a variable of type [Boolean][] | + +#### Result + +An email with [Normal][] priority is sent from `sender@gmail.com` to `recipient@outlook.com` with a subject of `"Example email subject"` and a [Text][] body of `"Example email body"`, and then the session is closed. + +*** + +## Properties + +### Email Message + +The [Email Message][Email Message Property] to send via the [SMTP][] server hosted by [Gmail][] specified in the [Gmail Session Details][Gmail Session Details Property]. This property contains all of the information in relation to the email to be sent, these are: + +- [To][] +- [From][] +- [Cc][] +- [Bcc][] +- [Priority][] +- [Subject][] +- [BodyFormat][] +- [Body][] +- [Attachments][] + +Note that if the properties [Priority][] and [BodyFormat][] are set to `null` when [creating an EmailMessage using a constructor][], the email will be sent with [Normal][] priority and with a [Text][] body. + +For more detailed information on each of the properties, see [EmailMessage][]. + +||| +|----------|----------| +| Data Type | [EmailMessage][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [EmailMessage][] with value shown below: | + +```json +{ + "To": [ + { + "Name": null, + "Address": "" + } + ], + "From": { + "Name": "", + "Address": "" + }, + "Cc": [], + "Bcc": [], + "Priority": "EmailMessagePriority.Normal", + "Subject": "", + "BodyFormat": "EmailMessageBodyFormat.Text", + "Body": "", + "Attachments": [] +} +``` + +### Gmail Session Details + +The [Gmail Session Details][Gmail Session Details Property] object that includes all of the information required to open and maintain a session with an [SMTP][] server hosted by [Gmail][], including: + +- [ServerDetails][ServerDetails Property] - must be provided in order to connect to an [SMTP][] server. This object contains the properties [Host][], [Port][] and [UseSsl][]. For more information on: + - Supported server address formats, see [Supported formats for ServerDetails.Host][]. + - When [UseSsl][] should be set to `true` or `false`, see [Setting UseSsl][]. +- [Credentials][Credentials Property] - must be provided in order to connect to an [SMTP][] server. This object must be a [UserCredentials][] or a [GmailOAuthCertificateCredentials][] and is used for authentication. For more information on how to configure each of these, see [Setting Credentials][]. + +If the [Close Session][Close Session Property] property is set to `false`, then the session will be kept open and can be used in subsequent Send Email Using Gmail blocks which improves performance, see [Opening Sessions][] for more information. + +For more detailed information on each of the properties, see [GmailSessionDetails][]. + +||| +|----------|----------| +| Data Type | [GmailSessionDetails][] | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)GmailSessionDetails` with no value | + +### Close Session + +[Close Session][Close Session Property] can be specified to choose whether the session is closed or is kept open for use on subsequent Send Email Using Gmail blocks, this defaults to `false` if left blank, please see [Closing Sessions][Closing Sessions] for more information. + +||| +|-----------------|----------| +| Data Type | [Boolean][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [Boolean][] with value `true` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|--------------------------------------|-------------| +| [ArgumentException][] |Thrown when [BodyFormat][] within the [Email Message][Email Message Property] is not one of the specified [EmailMessageBodyFormat][] values (e.g. `(EmailMessageBodyFormat)10`).| +| |Thrown when [Priority][] within the [Email Message][Email Message Property] is not one of the specified [EmailMessagePriority][] values (e.g. `(EmailMessagePriority)10`).| +| |Thrown when a file path provided in the [Attachments][] within the [Email Message][Email Message Property] is empty (i.e. `""`), contains only whitespace (i.e. `" "`) or contains the NUL character (i.e. `\0`).| +| [ArgumentNullException][] |Thrown when a file path provided in the [Attachments][] within the [Email Message][Email Message Property] is `null`.| +| [EmailSessionException][] |Thrown when an invalid [Port][] is provided in the [ServerDetails][] within the [Gmail Session Details][Gmail Session Details Property]. For more information, see [Invalid Port][].| +| |Thrown when an invalid [Host][] is provided in the [ServerDetails][] within the [Gmail Session Details][Gmail Session Details Property]. For more information, see [Invalid Host][].| +| |Thrown when a connection cannot be established; this typically occurs when [UseSsl][] within [Gmail Session Details][Gmail Session Details Property] is set to `false` with a [Port][] which requires it to be set to `true`. For more information, see [SSL Required][]. | +| |Thrown when a connection cannot be established; this typically occurs when [UseSsl][] within [Gmail Session Details][Gmail Session Details Property] is set to `true` with a [Port][] which requires it to be set to `false`. For more information, see [SSL Unsupported][]. | +| |Thrown when the [TLS][]/[SSL][] certificate has expired on the [Host][] or is untrusted or invalid. For more information, see [SSL Unsupported][]. Note that this exception has the same category and error code as the above row, this is a known limitation, see [EmailSessionErrorCode Limitations][]. | +| |Thrown when a locally installed anti-virus software replaces the [TLS][]/[SSL][] certificate in order to scan web traffic. For more information, see [SSL Unsupported][]. Note that this exception has the same category and error code as the above row, this is a known limitation, see [EmailSessionErrorCode Limitations][]. | +| |Thrown when the [CRL][] (Certificate Revocation List) server for the [TLS][]/[SSL][] certificate is down. For more information, see [SSL Unsupported][]. Note that this exception has the same category and error code as the above row, this is a known limitation, see [EmailSessionErrorCode Limitations][]. | +| |Thrown when the [Username][] and [Password][] in the [UserCredentials][] within [Gmail Session Details][Gmail Session Details Property] is incorrect. For more information, see [Invalid User Credentials][]. | +| |Thrown when an invalid [CertificatePath][] and [CertificatePassword][] combination has been provided in the [GmailOAuthCertificateCredentials][]. For more information, see [Invalid SSL Certificate][]. | +| |Thrown when the [CertificatePath][] in the [GmailOAuthCertificateCredentials][] points to an invalid [SSL][] certificate. For more information, see [Invalid SSL Certificate][]. | +| |Thrown when the [CertificatePath][] provided in the [GmailOAuthCertificateCredentials][] points to a non-existent file. For more information, see [Invalid SSL Certificate][]. | +| |Thrown when the [CertificatePath][] provided in the [GmailOAuthCertificateCredentials][] points to a folder. For more information, see [Invalid SSL Certificate][]. | +| |Thrown when the [CertificatePath][] provided in the [GmailOAuthCertificateCredentials][] is longer than the system defined maximum length (typically 32,767). For more information, see [Invalid SSL Certificate][]. | +| |Thrown when the [CertificatePath][] provided in the [GmailOAuthCertificateCredentials][] contains only whitespace (i.e. `" "`) or contains the NUL character (i.e. `\0`). For more information, see [Invalid SSL Certificate][]. | +| |Thrown when the [CertificatePath][] provided in the [GmailOAuthCertificateCredentials][] contains leading spaces. For more information, see [Invalid SSL Certificate][]. | +| |Thrown when the [CertificatePath][] provided in the [GmailOAuthCertificateCredentials][] contains invalid characters (i.e. `"`, `*`, `?`, `\|`, `<`, `>`, `:`, `\`, `/`). For more information, see [Invalid SSL Certificate][]. | +| |Thrown when access is denied to the file at the [CertificatePath][] provided in the [GmailOAuthCertificateCredentials][]. For more information, see [Invalid SSL Certificate][]. | +| |Thrown when an invalid [FromAddress][] and [ClientId][] combination has been provided in the [GmailOAuthCertificateCredentials][]. For more information, see [Invalid Gmail Client Credentials][].| +| [FileNotFoundException][] |Thrown when a non-existent file path is provided in [Attachments][] within [Email Message][Email Message Property]. | +| [IOException][] |Thrown when the desired socket is held by another process; re-running the flow typically solves this. | +| |Thrown when a file path within [Attachments][] within the [Email Message][Email Message Property] contains leading spaces.| +| |Thrown when a file path within [Attachments][] within the [Email Message][Email Message Property] contains invalid characters (i.e. `"`, `*`, `?`, `\|`, `<`, `>`, `:`, `\`, `/`).| +| [PathTooLongException][] |Thrown when a file path provided in the [Attachments][] within the [Email Message][Email Message Property] exceeds the system-defined maximum length (typically 32,767).| +| [PropertyNullException][] |Thrown when the [Gmail Session Details][Gmail Session Details Property] is `null`. | +| |Thrown when the [UserCredentials][] within [Gmail Session Details][Gmail Session Details Property] is `null`. | +| |Thrown when the [ServerDetails][] within [Gmail Session Details][Gmail Session Details Property] is `null`. | +| |Thrown when the [Host][] in [ServerDetails][] within [Gmail Session Details][Gmail Session Details Property] is `null`. | +| |Thrown when the [Email Message][Email Message Property] is `null`. | +| |Thrown when the [To][] within [Email Message][Email Message Property] is `null`. | +| |Thrown when the [From][] within [Email Message][Email Message Property] is `null`. | +| |Thrown when the [Address][] in an [EmailAddress][] within [Email Message][Email Message Property] is `null`. | +| |Thrown when the [CertificatePath][] in the [GmailOAuthCertificateCredentials][] within [Gmail Session Details][Gmail Session Details Property] is `null`. | +| |Thrown when the [CertificatePassword][] in the [GmailOAuthCertificateCredentials][] within [Gmail Session Details][Gmail Session Details Property] is `null`. | +| |Thrown when the [FromAddress][] in the [GmailOAuthCertificateCredentials][] within [Gmail Session Details][Gmail Session Details Property] is `null`. | +| |Thrown when the [ClientId][] in the [GmailOAuthCertificateCredentials][] within [Gmail Session Details][Gmail Session Details Property] is `null`. | +| [PropertyEmptyException][] |Thrown when the [Host][] in [ServerDetails][] within [Gmail Session Details][Gmail Session Details Property] is empty (i.e. `""`). | +| |Thrown when the [To][] within [Email Message][Email Message Property] is empty (i.e. `[]`). | +| |Thrown when the [Address][] in an [EmailAddress][] within [Email Message][Email Message Property] is empty (i.e. `""`). | +| |Thrown when the [CertificatePath][] in the [GmailOAuthCertificateCredentials][] within [Gmail Session Details][Gmail Session Details Property] is empty (i.e. `""`). | +| |Thrown when the [CertificatePassword][] in the [GmailOAuthCertificateCredentials][] within [Gmail Session Details][Gmail Session Details Property] is empty (i.e. `""`). | +| |Thrown when the [FromAddress][] in the [GmailOAuthCertificateCredentials][] within [Gmail Session Details][Gmail Session Details Property] is empty (i.e. `""`). | +| |Thrown when the [ClientId][] in the [GmailOAuthCertificateCredentials][] within [Gmail Session Details][Gmail Session Details Property] is empty (i.e. `""`). | +| [PropertyValueOutOfRangeException][] |Thrown when the [Port][] in the [ServerDetails][] within [Gmail Session Details][Gmail Session Details Property] is below `1` or above `65535`. For more information, see [Property Is Invalid][]. | +| [SmtpCommandException][] |Thrown when the [Address][] in an [EmailAddress][] within [Email Message][Email Message Property] is not of the correct format ([RFC 5321][]).| +| |Thrown when the combined size of all of the attachments in the list of [Attachments][] within the [Email Message][Email Message Property] is greater than the limit specified by the email service provider; for [Gmail][] this is `25 MB`.| +| [UnauthorizedAccessException][] |Thrown when access is denied to a file provided in [Attachments][] within [Email Message][Email Message Property].| +| |Thrown when a file path within the [Attachments][] property within [Email Message][Email Message Property] points to a folder.| + +## Remarks + +### How does Priority affect sending an email? + +An email sent with [Urgent][] or [NonUrgent][] priority will have its priority displayed differently depending on the email client. For example, [Outlook][] displays an email that has an [Urgent][] priority with a red exclamation mark like so: + +{{< figure src="/images/send-email-using-smtp-server-important-email.png" >}} + +For more information on how the priority of an email will be displayed, see the help provided by the respective email client. + +### How does BodyFormat affect sending an email? + +An email sent with an [HTML][] body will have its body displayed as an HTML page instead of as plain text. How the email looks in the email client may differ depending on the email client in use. For example, if the [Email Message][Email Message Property] has its [BodyFormat][] set to [HTML][] and the [Body][] has a value of: + +```json +"

Example header text

Example paragraph text

" +``` + +[Outlook][] will display the email body as follows: + +{{< figure src="/images/send-email-using-smtp-server-html-email.png" >}} + +For more information on how the body of an email will be displayed, see the help provided by the respective email client. + +### Attachments + +Attachments can be sent in an email by providing a list of file paths in the [Attachments][] property of the [Email Message][Email Message Property]. For more information concerning attaching files to an email, see the sections below. + +#### Supported file path formats + +Each file path in the [Attachments][] within the [Email Message][Email Message Property] can be an: + +- Absolute file path +- Relative file path +- UNC file path + +where each file path must be accessible from the server executing the flow. + +For more information about each of these supported file path formats, please see [File & Folder Paths][]. + +#### File paths need escaping + +Each file path in the [Attachments][] within the [Email Message][Email Message Property] requires \ characters to be escaped, otherwise each unescaped \ will be reported as an Invalid property value message when trying to debug the flow. + +Escaping can be done in two ways: + +- Escaping the `\` character with another `\` character (e.g. `"C:\\Attachments\\attachment.txt"`), or +- Prepending an `@` character before the start of the File Path (e.g. `@"C:\Attachments\attachment.txt"`) + +#### Null file path + +If `null` is provided as a file path in the [Attachments][] within the [Email Message][Email Message Property], an [ArgumentNullException][] is thrown. + +#### Empty file path + +If an empty string is provided as a file path in the the [Attachments][] within the [Email Message][Email Message Property], an [ArgumentException][] is thrown. + +#### File path does not exist + +If a file path in the [Attachments][] within the [Email Message][Email Message Property] does not exist, a [FileNotFoundException][] is thrown. + +#### Invalid file path + +If a file path in the [Attachments][] within the [Email Message][Email Message Property] is invalid (i.e. contains any of the following characters: ", *, ?, |, <, >, :, \, /), an [IOException][] will be thrown. + +#### File path points to a folder + +If a file path in the [Attachments][] within the [Email Message][Email Message Property] points to a folder, an [UnauthorizedAccessException][] will be thrown. + +#### File path contains leading spaces + +If a file path in the [Attachments][] within the [Email Message][Email Message Property] contains leading spaces they are not removed and an [IOException][] will be thrown; however, trailing spaces are removed. + +#### File path contains only whitespace or the NUL character + +If a file path in the [Attachments][] within the [Email Message][Email Message Property] contains only whitespace (i.e. `" "`) or the NUL character (i.e. `\0`), an [ArgumentException][] will be thrown. + +#### File path exceeds the system-defined maximum length + +If a file path in the [Attachments][] within the [Email Message][Email Message Property] exceeds the system-defined maximum length (typically 32,767), a [PathTooLongException][] will be thrown. + +#### User does not have necessary permissions to attach the file + +If the user the flow is executing as does not have permissions to access the file at the provided file path in the [Attachments][] within the [Email Message][Email Message Property], an [UnauthorizedAccessException][] will be thrown. + +#### Attachment size limit + +The combined size of all the [Attachments][] within the [Email Message][Email Message Property] must be less than the limit specified by the email service provider. If the combined size of all of the attachments is greater than the limit, an [SmtpCommandException][] will be thrown. + +For [Outlook][] this is `20 MB` and for [Gmail][] this is `25 MB`, for more information on the size limits for other email service providers, see the help provided by the respective email service provider. + +### Supported formats for ServerDetails.Host + +The following formats are supported for [Host][] in [ServerDetails][]: + +- Fully Qualified Domain Name (e.g. `"smtp.gmail.com"`) + +### Setting UseSsl + +The [ServerDetails][] within the [Gmail Session Details][Gmail Session Details Property] specifies which [SMTP][] server to connect to. The value of the [UseSsl][] property inside this object depends on the [Host][] and [Port][] being connected to. There are two types of [SSL][]/[TLS][] connections that can occur: + +- [SSL][]/[TLS][] is used as soon as a connection is established +- [SSL][]/[TLS][] is used via the STARTTLS command if it is available + +The above two points correspond to the [UseSsl][] property being set to `true` and `false` respectively. As such, generally the following rules can be followed to determine whether [UseSsl][] should be set to `true` or `false`: + +- If the [Port][] being connected to is `465` then [UseSsl][] should be set to `true` +- If the [Port][] being connected to is `25` or `587` then [UseSsl][] should be set to `false` + +### Setting Credentials + +The [Credentials][Credentials Property] within the [Gmail Session Details][Gmail Session Details Property] specifies what user to connect as on the [SMTP][] server hosted by [Gmail][]. Two types of authentication are supported: + +- Basic +- OAuth (Two-Legged OAuth) + +The above two authentication mechanisms correspond to the [Credentials][Credentials Property] within the [Gmail Session Details][Gmail Session Details Property] being a [UserCredentials][] and a [GmailOAuthCertificateCredentials][] respectively. + +#### Setting Credentials to UserCredentials + +Currently, [Gmail][] will not allow emails to be sent using the username and password of an account unless the account is associated with a Google Workspace account. + +As such, the recommended approach for using a [UserCredentials][] as the [Credentials][Credentials Property] within the [Gmail Session Details][Gmail Session Details Property] is to set up an app password and use that in place of the actual password associated with the account, see [Setting up an app password for a Gmail account][] for more information. + +Note the following: + +- The value of the [Username][] property may optionally be encrypted, however the [Password][] should be encrypted. +- Note that the [UserCredentials][] also contains a [Domain][] property which is ignored by this block. + +#### Setting Credentials to GmailOAuthCertificateCredentials + +In order to use OAuth as the authentication mechanism: + +- A client application must be set up on the Google Workspace +- A service account must be set up for the client application +- A private key (.p12 file) must be generated for the service account +- An administrator of the Google Workspace must grant the client application domain-wide delegation for the scope `https://mail.google.com/` + +For more information on how to configure a [Gmail][] account to work with OAuth, see [Setting up a Gmail account for OAuth authentication][]. + +Once the account has been set up to work with OAuth, a [GmailOAuthCertificateCredentials][] can be used as the [Credentials][Credentials Property] within the [Gmail Session Details][Gmail Session Details Property]. The properties in the [GmailOAuthCertificateCredentials][] correspond with the client application data as follows: + +- [CertificatePath][] - The path pointing to the certificate (.p12) file generated when setting up the client application; the certificate must be accessible from the server executing the flow, for more information on using a certificate file, see [Certificate Files][]. +- [CertificatePassword][] - The password associated with the certificate (.p12) +- [FromAddress][] - The address of the account used to set up the client application +- [ClientId][] - The Client ID of the client application + +Note that the values of the [CertificatePath][] and [ClientId][] properties may optionally be encrypted, however the [CertificatePassword][] should be encrypted. + +For more detailed information on each of these properties, see [GmailOAuthCertificateCredentials][]. + +### Certificate Files + +OAuth can be used as the authentication mechanism when sending an email using this block by providing a [GmailOAuthCertificateCredentials][] as the [Credentials][Credentials Property] in the [Gmail Session Details][Gmail Session Details Property]. [GmailOAuthCertificateCredentials][] requires a [CertificatePath][] to be provided, which is a path pointing to a certificate file accessible from the server executing the flow. For more information concerning using a certificate, see the sections below. + +#### Supported CertificatePath formats + +The [CertificatePath][] within the [GmailOAuthCertificateCredentials][] can be an: + +- Absolute file path +- Relative file path +- UNC file path + +where each file path must be accessible from the server executing the flow. + +For more information about each of these supported file path formats, please see [File & Folder Paths][]. + +#### CertificatePath needs escaping + +The [CertificatePath][] within the [GmailOAuthCertificateCredentials][] requires \ characters to be escaped, otherwise each unescaped \ will be reported as an Invalid property value message when trying to debug the flow. + +Escaping can be done in two ways: + +- Escaping the `\` character with another `\` character (e.g. `"C:\\Certificates\\certificate.p12"`), or +- Prepending an `@` character before the start of the File Path (e.g. `@"C:\Certificates\certificate.p12"`) + +#### Null CertificatePath + +If `null` is provided as the [CertificatePath][] within the [GmailOAuthCertificateCredentials][], a [PropertyNullException][] is thrown. + +#### Empty CertificatePath + +If an empty string is provided as the [CertificatePath][] within the [GmailOAuthCertificateCredentials][], a [PropertyEmptyException][] is thrown. + +#### CertificatePath does not exist + +If the path provided as the [CertificatePath][] within the [GmailOAuthCertificateCredentials][] does not exist, an [EmailSessionException][] is thrown. For more information, see [Invalid SSL Certificate][]. + +#### Invalid CertificatePath + +If the path provided as the [CertificatePath][] within the [GmailOAuthCertificateCredentials][] is invalid (i.e. contains any of the following characters: ", *, ?, |, <, >, :, \, /), an [EmailSessionException][] will be thrown. For more information, see [Invalid SSL Certificate][]. + +#### CertificatePath points to a folder + +If the path provided as the [CertificatePath][] within the [GmailOAuthCertificateCredentials][] points to a folder, an [EmailSessionException][] will be thrown. For more information, see [Invalid SSL Certificate][]. + +#### CertificatePath contains leading spaces + +If the path provided as the [CertificatePath][] within the [GmailOAuthCertificateCredentials][] contains leading spaces they are not removed and an [EmailSessionException][] will be thrown; however, trailing spaces are removed. For more information, see [Invalid SSL Certificate][]. + +#### CertificatePath contains only whitespace or the NUL character + +If the path provided as the [CertificatePath][] within the [GmailOAuthCertificateCredentials][] contains only whitespace (i.e. `" "`) or the NUL character (i.e. `\0`), an [EmailSessionException][] will be thrown. For more information, see [Invalid SSL Certificate][]. + +#### CertificatePath exceeds the system-defined maximum length + +If the path provided as the [CertificatePath][] within the [GmailOAuthCertificateCredentials][] exceeds the system-defined maximum length (typically 32,767), an [EmailSessionException][] will be thrown. For more information, see [Invalid SSL Certificate][]. + +#### User does not have necessary permissions to use the certificate file + +If the user the flow is executing as does not have permissions to access the file at the [CertificatePath][] within the [GmailOAuthCertificateCredentials][], an [EmailSessionException][] will be thrown. For more information, see [Invalid SSL Certificate][]. + +### Opening Sessions + +The Send Email Using Gmail block automatically handles creating and opening sessions for the specified [Gmail Session Details][Gmail Session Details Property] using the following rules: + +- If a session does not exist, a new session will be created, opened and used when the block runs. +- If a session already exists but is closed, the session will be opened and used when the block runs. +- If a session already exists and is open, the session will be used when the block runs. + +[Gmail Session Details][Gmail Session Details Property] will keep the session open across multiple Send Email Using Gmail blocks as long as [Close Session][Close Session Property] is set to `false`. Keeping the session open helps increase the performance of the block due to the subsequent blocks not having to spend resources creating and opening sessions for each execution. + +Note that for all [SSL][] connections, the protocol to be used will be negotiated with the server depending on which protocols are available. Similarly, the [SASL][] mechanism to be used will be negotiated with the mail server based on the available mechanisms. + +For information on how to explicitly close a session, please see [Closing Sessions][]. + +### Closing Sessions + +Sessions can be explicitly closed by setting [Close Session][Close Session Property] to `true`. This causes the session to be closed after the [Email Message][Email Message Property] has been sent. + +If [Close Session][Close Session Property] is set to `false` the session will be closed when the [Variable][] that [Gmail Session Details][Gmail Session Details Property] is set to goes out of scope or the flow ends, whichever happens first. For more information about variables and scope, please see [Variables][]. + +For information on how to open a session, please see [Opening Sessions][]. + +### Known Limitations + +None + +[Email Message Property]: {{< ref "#email-message" >}} +[Gmail Session Details Property]: {{< ref "#gmail-session-details" >}} +[Close Session Property]: {{< ref "#close-session" >}} +[How does Priority affect sending an email?]: {{< ref "#how-does-priority-affect-sending-an-email" >}} +[How does BodyFormat affect sending an email?]: {{< ref "#how-does-bodyformat-affect-sending-an-email" >}} +[Attachments Remarks]: {{< ref "#attachments" >}} +[Supported formats for ServerDetails.Host]: {{< ref "#supported-formats-for-serverdetailshost" >}} +[Setting Credentials]: {{< ref "#setting-credentials" >}} +[Setting UseSsl]: {{< ref "#setting-usessl" >}} +[Certificate Files]: {{< ref "#certificate-files" >}} +[Opening Sessions]: {{< ref "#opening-sessions" >}} +[Closing Sessions]: {{< ref "#closing-sessions" >}} + +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} +[EncryptedText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptedText.MainDoc" >}} + +[EmailMessage]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessage.MainDoc" >}} +[To]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessage.To" >}} +[From]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessage.From" >}} +[Cc]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessage.Cc" >}} +[Bcc]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessage.Bcc" >}} +[Priority]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessage.Priority" >}} +[Subject]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessage.Subject" >}} +[BodyFormat]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessage.BodyFormat" >}} +[Body]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessage.Body" >}} +[Attachments]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessage.Attachments" >}} +[creating an EmailMessage using a constructor]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessage.CreateAnEmailMessage" >}} + +[GmailSessionDetails]: {{< url path="Cortex.Reference.DataTypes.GoogleWorkspace.Gmail.GmailSessionDetails.MainDoc" >}} +[ServerDetails Property]: {{< url path="Cortex.Reference.DataTypes.GoogleWorkspace.Gmail.GmailSessionDetails.ServerDetails" >}} +[Credentials Property]: {{< url path="Cortex.Reference.DataTypes.GoogleWorkspace.Gmail.GmailSessionDetails.Credentials" >}} + +[ServerDetails]: {{< url path="Cortex.Reference.DataTypes.SessionDetails.ServerDetails.MainDoc" >}} +[Host]: {{< url path="Cortex.Reference.DataTypes.SessionDetails.ServerDetails.Host" >}} +[Port]: {{< url path="Cortex.Reference.DataTypes.SessionDetails.ServerDetails.Port" >}} +[UseSsl]: {{< url path="Cortex.Reference.DataTypes.SessionDetails.ServerDetails.UseSsl" >}} + +[UserCredentials]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.MainDoc" >}} +[Domain]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.Domain" >}} +[Username]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.Username" >}} +[Password]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.Password" >}} + +[GmailOAuthCertificateCredentials]: {{< url path="Cortex.Reference.DataTypes.GoogleWorkspace.Gmail.Authentication.OAuth.GmailOAuthCertificateCredentials.MainDoc" >}} +[CertificatePath]: {{< url path="Cortex.Reference.DataTypes.GoogleWorkspace.Gmail.Authentication.OAuth.GmailOAuthCertificateCredentials.CertificatePath" >}} +[CertificatePassword]: {{< url path="Cortex.Reference.DataTypes.GoogleWorkspace.Gmail.Authentication.OAuth.GmailOAuthCertificateCredentials.CertificatePassword" >}} +[FromAddress]: {{< url path="Cortex.Reference.DataTypes.GoogleWorkspace.Gmail.Authentication.OAuth.GmailOAuthCertificateCredentials.FromAddress" >}} +[ClientId]: {{< url path="Cortex.Reference.DataTypes.GoogleWorkspace.Gmail.Authentication.OAuth.GmailOAuthCertificateCredentials.ClientId" >}} + +[EmailAddress]: {{< url path="Cortex.Reference.DataTypes.Email.EmailAddress.MainDoc" >}} +[Address]: {{< url path="Cortex.Reference.DataTypes.Email.EmailAddress.Address" >}} + +[EmailMessagePriority]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessagePriority.MainDoc" >}} +[Normal]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessagePriority.Normal" >}} +[Urgent]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessagePriority.Urgent" >}} +[NonUrgent]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessagePriority.NonUrgent" >}} + +[EmailMessageBodyFormat]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessageBodyFormat.MainDoc" >}} +[HTML]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessageBodyFormat.HTML" >}} +[Text]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessageBodyFormat.Text" >}} + +[Setting up an app password for a Gmail account]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Email.Authentication.SettingUpAppPassword" >}} +[Setting up a Gmail account for OAuth authentication]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Email.Authentication.SettingUpOAuthGmail" >}} + +[EmailSessionException]: {{< url path="Cortex.Reference.Exceptions.Email.EmailSessionException.MainDoc" >}} +[Invalid Port]: {{< url path="Cortex.Reference.Exceptions.Email.EmailSessionException.InvalidPort" >}} +[Invalid Host]: {{< url path="Cortex.Reference.Exceptions.Email.EmailSessionException.InvalidHost" >}} +[SSL Required]: {{< url path="Cortex.Reference.Exceptions.Email.EmailSessionException.SslRequired" >}} +[SSL Unsupported]: {{< url path="Cortex.Reference.Exceptions.Email.EmailSessionException.SslUnsupported" >}} +[Invalid User Credentials]: {{< url path="Cortex.Reference.Exceptions.Email.EmailSessionException.InvalidUserCredentials" >}} +[Invalid SSL Certificate]: {{< url path="Cortex.Reference.Exceptions.Email.EmailSessionException.InvalidSslCertificate" >}} +[Invalid Gmail Client Credentials]: {{< url path="Cortex.Reference.Exceptions.Email.EmailSessionException.InvalidClientCredentials" >}} +[EmailSessionErrorCode Limitations]: {{< url path="Cortex.Reference.DataTypes.Email.EmailSessionErrorCode.Limitations" >}} + +[ArgumentException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentException" >}} +[ArgumentNullException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentNullException" >}} +[FileNotFoundException]: {{< url path="MSDocs.DotNet.Api.System.IO.FileNotFoundException" >}} +[IOException]: {{< url path="MSDocs.DotNet.Api.System.IO.IOException" >}} +[PathTooLongException]: {{< url path="MSDocs.DotNet.Api.System.IO.PathTooLongException" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyValueOutOfRangeException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.MainDoc" >}} +[Property Is Invalid]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.PropertyIsInvalid">}} +[SmtpCommandException]: {{< url path="MimeKit.Docs.SmtpCommandException" >}} +[UnauthorizedAccessException]: {{< url path="MSDocs.DotNet.Api.System.UnauthorizedAccessException" >}} + +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Variables]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.MainDoc" >}} +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} +[File & Folder Paths]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.Paths.MainDoc" >}} + +[SASL]: {{< url path="Cortex.Reference.Glossary.P-T.SASL" >}} +[SMTP]: {{< url path="Cortex.Reference.Glossary.P-T.SMTP" >}} +[SSL]: {{< url path="Cortex.Reference.Glossary.P-T.SSL" >}} +[TLS]: {{< url path="Cortex.Reference.Glossary.P-T.TLS" >}} +[BCC Glossary]: {{< url path="Cortex.Reference.Glossary.A-E.BCC" >}} +[CC Glossary]: {{< url path="Cortex.Reference.Glossary.A-E.CC" >}} +[CRL]: {{< url path="Cortex.Reference.Glossary.A-E.CRL" >}} +[Gmail]: {{< url path="Cortex.Reference.Glossary.F-J.Gmail" >}} +[Outlook]: {{< url path="Cortex.Reference.Glossary.K-O.Outlook" >}} + +[Less Secure Apps]: {{< url path="Google.Authentication.LessSecureApps.MainDoc" >}} +[RFC 5321]: {{< url path="IETF.Email.RFC5321" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/http/_index.md b/content/en/docs/2024.11/Reference/Blocks/http/_index.md new file mode 100644 index 000000000..473bf9830 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/http/_index.md @@ -0,0 +1,5 @@ +--- +title: "Http" +linkTitle: "Http" +description: "Blocks related to working with HTTP." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/http/execute-http-request/_index.md b/content/en/docs/2024.11/Reference/Blocks/http/execute-http-request/_index.md new file mode 100644 index 000000000..2afeb1c3a --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/http/execute-http-request/_index.md @@ -0,0 +1,5 @@ +--- +title: "Execute Http Request" +linkTitle: "Execute Http Request" +description: "Blocks related to executing HTTP requests." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/http/execute-http-request/execute-http-request-block-1.md b/content/en/docs/2024.11/Reference/Blocks/http/execute-http-request/execute-http-request-block-1.md new file mode 100644 index 000000000..be5398111 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/http/execute-http-request/execute-http-request-block-1.md @@ -0,0 +1,518 @@ +--- +title: "Execute Http Request" +linkTitle: "Execute Http Request" +description: "Executes an HTTP request and returns a response." +--- + +{{< figure src="/blocks/Cortex_Blocks_Http_ExecuteHttpRequest_ExecuteHttpRequestBlock_1.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Http.ExecuteHttpRequest.ExecuteHttpRequestBlock`1)

+ +{{% alert type="information" title="Information" %}}Improvements to this page are planned for the future; this will include further examples and remarks.{{% /alert %}} + +## Description + +Executes an [Http Request][Http Request Property] using the specified [Http Credentials][Http Credentials Property] and returns the [Http Response][Http Response Property]. + +## Examples + +The following examples will use an example [API][] with a base [Uri][] of `https://test-shop.com/api` and resource called `items` at `https://test-shop.com/api/items`. Each example assumes that the resource `items` contains the following data before the example is executed: + +```json +[ + { + "name": "item 1", + "id": 1 + }, + { + "name": "item 2", + "id": 2 + } +] +``` + +The example [API][] supports: + +- Retrieval of every item in the `items` resource via a [GET][] request which returns the `items` resource as the [ResponseBody][] of the [Http Response][Http Response Property] +- Creation of a new item in the `items` resource via a [POST][] request which returns the updated `items` resource as the [ResponseBody][] of the [Http Response][Http Response Property] +- Unauthenticated requests +- Basic authentication +- Retrieval of access tokens from `https://test-shop.com/api/oauth2/token` +- OAuth authentication using password credentials +- OAuth authentication using client credentials + +### Executing a GET request + +This example will send a [GET][] request to `https://test-shop.com/api/items` using [HTTP 1.1][HTTP11] with no authentication which requires [Http Credentials][Http Credentials Property] to be `null`. + +Note that the result of executing an [Http Request][Http Request Property] is dependent on the [API][] that the request is being made to. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Http Request][Http Request Property] | `($)HttpRequest`, with value `{"QueryStringParameters": null, "Verb": "RequestVerb.GET", "ContentType": null, "Body": null, "Uri": "https://test-shop.com/api/items", "Headers": null, "HttpVersion": "HttpRequestVersion.HTTP11"}`

In this example `($)HttpRequest` has been set up using the following [Expression][]:

`new HttpRequest(uri: "https://test-api/com/items", queryParameters: null, verb: RequestVerb.GET, contentType: null, headers: null, body: null, httpVersion: HttpRequestVersion.HTTP11)` | `($)HttpRequest` is a variable of type [HttpRequest][] | +| [Http Credentials][Http Credentials Property] | `($)HttpCredentials`, with value `null`

In this example, `($)HttpCredentials` has been set up using the following [Expression][]:

`null` | `($)HttpCredentials` is a variable with value `null`

As `($)HttpCredentials` is `null`, no authentication will occur when making the request. | +| [Http Response][Http Response Property] | `($)HttpResponse`, with no value | `($)HttpResponse` will be set to the type [HttpResponse][] | + +#### Result + +Executing an [HttpRequest][] with a [Uri][] of `https://test-shop.com/api/items` and a [Verb][] of [GET][] using [HTTP 1.1][HTTP11] results in the variable `($)HttpResponse` being updated to the following: + +```json +{ + "ResponseBody": [ + { + "name": "item 1", + "id": 1 + }, + { + "name": "item 2", + "id": 2 + } + ], + "ErrorMessage": null, + "Headers": { + "Content-Length": 1024, + "Content-Type": "application/json", + }, + "StatusCode": "HttpStatusCode.OK (200)" +} +``` + +Note that as the [Headers][Headers Response] contains a key of `Content-Type` with a value of `application/json`, the [ResponseBody][] is a [Structure][] containing the data. + +*** + +### Executing a POST request + +This example will send a [POST][] request to `https://test-shop.com/api/items` using [HTTP 1.1][HTTP11] with no authentication which requires [Http Credentials][Http Credentials Property] to be `null`. + +Note that the result of executing an [Http Request][Http Request Property] is dependent on the [API][] that the request is being made to. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Http Request][Http Request Property] | `($)HttpRequest`, with value `{"QueryStringParameters": null, "Verb": "RequestVerb.POST", "ContentType": "application/json", "Body": "{'name': 'item 3', 'id': 3}", "Uri": "https://test-shop.com/api/items", "Headers": null, "HttpVersion": "HttpRequestVersion.HTTP11"}`

In this example `($)HttpRequest` has been set up using the following [Expression][]:

`new HttpRequest(uri: "https://test-api/com/items", queryParameters: null, verb: RequestVerb.POST, contentType: "application/json", headers: null, body: "{'name': 'item 3', 'id': 3}", httpVersion: HttpRequestVersion.HTTP11)` | `($)HttpRequest` is a variable of type [HttpRequest][] | +| [Http Credentials][Http Credentials Property] | `($)HttpCredentials`, with value `null`

In this example, `($)HttpCredentials` has been set up using the following [Expression][]:

`null` | `($)HttpCredentials` is a variable with value `null`

As `($)HttpCredentials` is `null`, no authentication will occur when making the request. | +| [Http Response][Http Response Property] | `($)HttpResponse`, with no value | `($)HttpResponse` will be set to the type [HttpResponse][] | + +#### Result + +Executing an [HttpRequest][] with a [Uri][] of `https://test-shop.com/api/items` and a [Verb][] of [POST][] using [HTTP 1.1][HTTP11] results in the variable `($)HttpResponse` being updated to the following: + +```json +{ + "ResponseBody": [ + { + "name": "item 1", + "id": 1 + }, + { + "name": "item 2", + "id": 2 + }, + { + "name": "item 3", + "id": 3 + } + ], + "ErrorMessage": null, + "Headers": { + "Content-Length": 1024, + "Content-Type": "application/json", + }, + "StatusCode": "HttpStatusCode.OK (200)" +} +``` + +Note the following: + +- The resource `items` at `https://test-shop.com/api/items` contains `item 3` as shown in the [ResponseBody][] of the [Http Response][Http Response Property] shown above +- As the [Headers][Headers Response] contains a key of `Content-Type` with a value of `application/json`, the [ResponseBody][] is a [Structure][] containing the data + +*** + +### Executing a request using Basic authentication + +This example will send a [GET][] request to `https://test-shop.com/api/items` using [HTTP 1.1][HTTP11] using Basic authentication which requires [Http Credentials][Http Credentials Property] to be a [UserCredentials][]. + +Note that the result of executing an [Http Request][Http Request Property] is dependent on the [API][] that the request is being made to. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Http Request][Http Request Property] | `($)HttpRequest`, with value `{"QueryStringParameters": null, "Verb": "RequestVerb.GET", "ContentType": null, "Body": null, "Uri": "https://test-shop.com/api/items", "Headers": null, "HttpVersion": "HttpRequestVersion.HTTP11"}`

In this example `($)HttpRequest` has been set up using the following [Expression][]:

`new HttpRequest(uri: "https://test-api/com/items", queryParameters: null, verb: RequestVerb.GET, contentType: null, headers: null, body: null, httpVersion: HttpRequestVersion.HTTP11)` | `($)HttpRequest` is a variable of type [HttpRequest][] | +| [Http Credentials][Http Credentials Property] | `($)HttpCredentials`, with value `{"Domain": null, "Username": "username", "Password": "encryptedPassword"}`

In this example, `($)HttpCredentials` has been set up using the following [Expression][]:

`new UserCredentials(username: "username", password: "encryptedPassword")` | `($)HttpCredentials` is a variable of type [UserCredentials][]

The [Password][] property in the [UserCredentials][] must be encrypted, for more information on how to encrypt the password, see [EncryptedText][]. | +| [Http Response][Http Response Property] | `($)HttpResponse`, with no value | `($)HttpResponse` will be set to the type [HttpResponse][] | + +#### Result + +Executing an [HttpRequest][] with a [Uri][] of `https://test-shop.com/api/items` and a [Verb][] of [GET][] using [HTTP 1.1][HTTP11] results in the variable `($)HttpResponse` being updated to the following: + +```json +{ + "ResponseBody": [ + { + "name": "item 1", + "id": 1 + }, + { + "name": "item 2", + "id": 2 + } + ], + "ErrorMessage": null, + "Headers": { + "Content-Length": 1024, + "Content-Type": "application/json", + }, + "StatusCode": "HttpStatusCode.OK (200)" +} +``` + +Note that as the [Headers][Headers Response] contains a key of `Content-Type` with a value of `application/json`, the [ResponseBody][] is a [Structure][] containing the data. + +*** + +### Executing a request using OAuth password credentials + +This example will send a [GET][] request to `https://test-shop.com/api/items` using [HTTP 1.1][HTTP11] using OAuth authentication with password credentials which requires [Http Credentials][Http Credentials Property] to be an [HttpOAuthPasswordCredentials][]. + +Note that the result of executing an [Http Request][Http Request Property] is dependent on the [API][] that the request is being made to. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Http Request][Http Request Property] | `($)HttpRequest`, with value `{"QueryStringParameters": null, "Verb": "RequestVerb.GET", "ContentType": null, "Body": null, "Uri": "https://test-shop.com/api/items", "Headers": null, "HttpVersion": "HttpRequestVersion.HTTP11"}`

In this example `($)HttpRequest` has been set up using the following [Expression][]:

`new HttpRequest(uri: "https://test-api/com/items", queryParameters: null, verb: RequestVerb.GET, contentType: null, headers: null, body: null, httpVersion: HttpRequestVersion.HTTP11)` | `($)HttpRequest` is a variable of type [HttpRequest][] | +| [Http Credentials][Http Credentials Property] | `($)HttpCredentials`, with value `{"AccessTokenUri": "https://test-shop.com/api/oauth2/token", "ClientAuthentication": null, "Scope": null, "ResourceOwnerUsername": "username", "ResourceOwnerPassword": "encryptedPassword"}`

In this example, `($)HttpCredentials` has been set up using the following [Expression][]:

`new HttpOAuthPasswordCredentials(accessTokenUri: "https://test-shop.com/api/oauth2/token", clientAuthentication: null, scope: null, resourceOwnerUsername: "username", resourceOwnerPassword: "encryptedPassword")` | `($)HttpCredentials` is a variable of type [HttpOAuthPasswordCredentials][]

The [ResourceOwnerPassword][ResourceOwnerPassword Password Credentials] property in the [HttpOAuthPasswordCredentials][] must be encrypted, for more information on how to encrypt the password, see [EncryptedText][]. | +| [Http Response][Http Response Property] | `($)HttpResponse`, with no value | `($)HttpResponse` will be set to the type [HttpResponse][] | + +#### Result + +Executing an [HttpRequest][] with a [Uri][] of `https://test-shop.com/api/items` and a [Verb][] of [GET][] using [HTTP 1.1][HTTP11] results in the variable `($)HttpResponse` being updated to the following: + +```json +{ + "ResponseBody": [ + { + "name": "item 1", + "id": 1 + }, + { + "name": "item 2", + "id": 2 + } + ], + "ErrorMessage": null, + "Headers": { + "Content-Length": 1024, + "Content-Type": "application/json", + }, + "StatusCode": "HttpStatusCode.OK (200)" +} +``` + +Note that as the [Headers][Headers Response] contains a key of `Content-Type` with a value of `application/json`, the [ResponseBody][] is a [Structure][] containing the data. + +*** + +### Executing a request using OAuth client credentials + +This example will send a [GET][] request to `https://test-shop.com/api/items` using [HTTP 1.1][HTTP11] using OAuth authentication with client credentials which requires [Http Credentials][Http Credentials Property] to be an [HttpOAuthClientCredentials][]. + +Note that the result of executing an [Http Request][Http Request Property] is dependent on the [API][] that the request is being made to. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Http Request][Http Request Property] | `($)HttpRequest`, with value `{"QueryStringParameters": null, "Verb": "RequestVerb.GET", "ContentType": null, "Body": null, "Uri": "https://test-shop.com/api/items", "Headers": null, "HttpVersion": "HttpRequestVersion.HTTP11"}`

In this example `($)HttpRequest` has been set up using the following [Expression][]:

`new HttpRequest(uri: "https://test-api/com/items", queryParameters: null, verb: RequestVerb.GET, contentType: null, headers: null, body: null, httpVersion: HttpRequestVersion.HTTP11)` | `($)HttpRequest` is a variable of type [HttpRequest][] | +| [Http Credentials][Http Credentials Property] | `($)HttpCredentials`, with value `{"AccessTokenUri": "https://test-shop.com/api/oauth2/token", "ClientAuthentication": {"ClientId": "clientId", "ClientSecret": "encryptedClientSecret", "SendAs": "ClientAuthType.Header"}, "Scope": null}`

In this example, `($)HttpCredentials` has been set up using the following [Expression][]:

`new HttpOAuthClientCredentials(accessTokenUri: "https://test-shop.com/api/oauth2/token", clientAuthentication: new ClientAuthentication("clientId", "encryptedClientSecret", ClientAuthType.Header), scope: null)` | `($)HttpCredentials` is a variable of type [HttpOAuthClientCredentials][]

The [ClientSecret][] property in [ClientAuthentication][] must be encrypted, for more information on how to encrypt the [ClientSecret][], see [EncryptedText][]. | +| [Http Response][Http Response Property] | `($)HttpResponse`, with no value | `($)HttpResponse` will be set to the type [HttpResponse][] | + +#### Result + +Executing an [HttpRequest][] with a [Uri][] of `https://test-shop.com/api/items` and a [Verb][] of [GET][] using [HTTP 1.1][HTTP11] results in the variable `($)HttpResponse` being updated to the following: + +```json +{ + "ResponseBody": [ + { + "name": "item 1", + "id": 1 + }, + { + "name": "item 2", + "id": 2 + } + ], + "ErrorMessage": null, + "Headers": { + "Content-Length": 1024, + "Content-Type": "application/json", + }, + "StatusCode": "HttpStatusCode.OK (200)" +} +``` + +Note that as the [Headers][Headers Response] contains a key of `Content-Type` with a value of `application/json`, the [ResponseBody][] is a [Structure][] containing the data. + +*** + +### Calling another Flow + +Note: This example does not follow the base [Uri][] or [API][] as specified [above][Examples Base]; but instead uses the [Uri][] of the [Cortex API Gateway][]. The [Uri][] to send this HTTP request to has the following form: `https://:8722/api///flows//executions/`. + +
+ +This example will send a [POST][] request to the [Uri][] of a [Flow][] within a [published package][Publish Package] using [HTTP 1.1][HTTP11] and run the [Flow][], using Basic authentication which requires [Http Credentials][Http Credentials Property] to be a [UserCredentials][]. This example is similar in functionality to the [Run Flow][] block. + +
+ +The flow being run is `ExampleFlow`. This flow sets the value of an [Output][] variable `ExampleOutput` to `"I love We Are CORTEX"`. This flow is in a published, non-default package `ExamplePackage`. + +
+ +This example will send this request to `https://server.domain.com:8722/api/default/default/flows/ExampleFlow/executions?packageName=ExamplePackage`, where `server.domain.com` is the FQDN of the server hosting an Innovation install. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Http Request][Http Request Property] | `($)HttpRequest`, with value `{"QueryStringParameters": {"packageName": "ExamplePackage"}, "Verb": "RequestVerb.POST", "ContentType": "application/json", "Body": {}, "Uri": "https://server.domain.com:8722/api/default/default/flows/ExampleFlow/executions", "Headers": null, "HttpVersion": "HttpRequestVersion.HTTP11"}`

In this example `($)HttpRequest` has been set up using the following [Expression][]:

`new HttpRequest(uri: "https://server.domain.com:8722/api/default/default/flows/ExampleFlow/executions", queryParameters: new Dictionary({"packageName","ExamplePackage"}), verb: RequestVerb.POST, contentType: "application/json", headers: null, body: "{}", httpVersion: HttpRequestVersion.HTTP11)` | `($)HttpRequest` is a variable of type [HttpRequest][]

In this example, the `queryParameters` [Advanced][] property is an [IDictionary][IDictionary] with three valid keys, `"packageName"`, `"packageVersion"` and `"async"`. `"packageName"` must be specified as the package of the published flow if it is not the default package.`"packageVersion"` may be included to refer to a specific version of a published package if it is not the default version. `"async"` is by default `"false"`, and if set to `"true"` will cause the flow execution to run asynchronously; similar to the [Run Flow Async][] block. | +| [Http Credentials][Http Credentials Property] | `($)HttpCredentials`, with value `{"Username": "username", "Password":"encryptedPassword"}`

In this example, `($)HttpCredentials` has been set up using the following [Expression][]:

`new UserCredentials(username: "username", password: "encryptedPassword")` | `($)HttpCredentials` is a variable of type [UserCredentials][]

The [Password][] property in the [UserCredentials][] must be encrypted, for more information on how to encrypt the [password][Password], see [EncryptedText][]. | +| [Http Response][Http Response Property] | `($)HttpResponse`, with no value | `($)HttpResponse` will be set to the type [HttpResponse][] | + +#### Results + +Executing a [POST][] [HttpRequest][] to `https://server.domain.com:8722/api/default/default/flows/ExampleFlow/executions?packageName=ExamplePackage` results in the variable `($)HttpResponse` being updated to the following: +```json +{ + "ResponseBody": { + "ExampleOutput": "I love We Are CORTEX" + }, + "ErrorMessage": null, + "Headers": { + "Date": "2023-10-04T14:17:40+00:00", + "Server": "Kestrel", + "Cache-Control": "no-store, must-revalidate, no-cache", + "X-Content-Type-Options": "nosniff", + "api-supported-versions": "1.0", + "Content-Length": 36, + "Content-Type": "application/json; charset=utf-8" + }, + "StatusCode": "HttpStatusCode.OK (200)" +} +``` + +*** + +## Properties + +### Http Request + +The [Http Request][Http Request Property] to execute using the [Http Credentials][Http Credentials Property]. This property contains all of the information in relation to the request to be sent, these are: + +- [Uri][] +- [QueryParameters][] +- [Verb][] +- [ContentType][] +- [Headers][Headers Request] +- [Body][] +- [HttpVersion][] + +For more detailed information on each of the properties, see [HttpRequest][]. + +||| +|----------|----------| +| Data Type | [HttpRequest][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [HttpRequest][] with value shown below: | + +```json +{ + "Uri": "", + "QueryParameters": null, + "Verb": "RequestVerb.GET", + "ContentType": "application/json", + "Headers": null, + "Body": "", + "HttpVersion": "HttpRequestVersion.HTTP10" +} +``` + +### Http Credentials + +The [Http Credentials][Http Credentials Property] object that includes all of the information required for authentication. Mutliple authentication mechanisms are supported which correspond to specific values/data types: + +- `null`: No authentication +- [UserCredentials][]: Basic authentication +- [HttpOAuthPasswordCredentials][]: OAuth authentication using password credentials +- [HttpOAuthClientCredentials][]: OAuth authentication using client credentials + +Note that when using [HttpOAuthPasswordCredentials][] or [HttpOAuthClientCredentials][] as the [Http Credentials][Http Credentials Property], the Execute Http Request block automatically handles retrieval of access tokens using the following rules: + +- If an access token does not exist, a new access token will be retrieved and used when the block runs. +- If an access token already exists but is expired, a new access token will be retrieved and used when the block runs. +- If an access token already exists and is valid, it will be used when the block runs. + +||| +|----------|----------| +| Data Type | [HttpCredentials][] | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)HttpCredentials` with no value | + +### Http Response + +The [Http Response][Http Response Property] object which contains the response returned from the server. This property contains all of the information in relation to the response from the server, these are: + +- [ResponseBody][] +- [ErrorMessage][] +- [Headers][Headers Response] +- [StatusCode][] + +Note that if the [Headers][Headers Response] contains a key of `Content-Type` with a value containing `json` or `xml`, the [ResponseBody][] will be set to a [Structure][] containing the data. + +For more detailed information on each of the properties, see [HttpResponse][]. + +||| +|----------|----------| +| Data Type | [HttpResponse][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)HttpResponse` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|--------------------------------------|-------------| +| [HttpAuthorisationException][] | Thrown when the [AccessTokenUri][AccessTokenUri Password Credentials] within [HttpOAuthPasswordCredentials][] is invalid. | +| | Thrown when the [ResourceOwnerUsername][ResourceOwnerUsername Password Credentials] within [HttpOAuthPasswordCredentials][] is invalid. | +| | Thrown when the [ResourceOwnerPassword][ResourceOwnerPassword Password Credentials] within [HttpOAuthPasswordCredentials][] is invalid. | +| | Thrown when the [AccessTokenUri][AccessTokenUri Client Credentials] within [HttpOAuthClientCredentials][] is invalid. | +| | Thrown when the [ClientId][] in [ClientAuthentication][] within [HttpOAuthClientCredentials][] is invalid. | +| | Thrown when the [ClientSecret][] in [ClientAuthentication][] within [HttpOAuthClientCredentials][] is invalid. | +| [InvalidRequestException][] | Thrown when the [Uri][] within [Http Request][Http Request Property] is not in the correct format or contains invalid characters. | +| | Thrown when the [AccessTokenUri][AccessTokenUri Password Credentials] within [HttpOAuthPasswordCredentials][] is not in the correct format or contains invalid characters. | +| | Thrown when the [AccessTokenUri][AccessTokenUri Client Credentials] within [HttpOAuthClientCredentials][] is not in the correct format or contains invalid characters. | +| | Thrown when the [Verb][] within [Http Request][Http Request Property] is not one of the specified [RequestVerb][] values (e.g. `(RequestVerb)10`). | +| | Thrown when a header key in [Headers][Headers Request] within [Http Request][Http Request Property] is empty (i.e. `""`). | +| | Thrown when a header key in [Headers][Headers Request] within [Http Request][Http Request Property] is restricted. | +| | Thrown when a header key in [Headers][Headers Request] within [Http Request][Http Request Property] is restricted and forbidden. | +| | Thrown when a header value in [Headers][Headers Request] within [Http Request][Http Request Property] could not be assigned to its restricted header key. | +| | Thrown when a header value in [Headers][Headers Request] within [Http Request][Http Request Property] could not be converted to its restricted header key's type. | +| | Thrown when the [Body][] within [Http Request][Http Request Property] is not `null` or empty (i.e. `""`) and [RequestVerb][] is [GET][] or [HEAD][]. | +| | Thrown when the [Body][] within [Http Request][Http Request Property] does not match the [ContentType][]. | +| | Thrown when the [HttpVersion][] within [Http Request][Http Request Property] is not one of the specified [HttpRequestVersion][] values (e.g. `(HttpRequestVersion)20`). | +| [PropertyNullException][] | Thrown when the [Http Request][Http Request Property] is `null`. | +| | Thrown when the [Uri][] within [Http Request][Http Request Property] is `null`. | +| | Thrown when the [Username][] within [UserCredentials][] is `null`. | +| | Thrown when the [AccessTokenUri][AccessTokenUri Password Credentials] within [HttpOAuthPasswordCredentials][] is `null`. | +| | Thrown when the [ResourceOwnerUsername][ResourceOwnerUsername Password Credentials] within [HttpOAuthPasswordCredentials][] is `null`. | +| | Thrown when the [AccessTokenUri][AccessTokenUri Client Credentials] within [HttpOAuthClientCredentials][] is `null`. | +| | Thrown when the [ClientAuthentication][ClientAuthentication Client Credentials] within [HttpOAuthClientCredentials][] is `null`. | +| | Thrown when the [ClientId][] in [ClientAuthentication][] within [HttpOAuthClientCredentials][] is `null`. | +| | Thrown when the [ClientSecret][] in [ClientAuthentication][] within [HttpOAuthClientCredentials][] is `null`. | +| [PropertyEmptyException][] | Thrown when the [Uri][] within [Http Request][Http Request Property] is empty (i.e. `""`). | +| | Thrown when the [Username][] within [UserCredentials][] is empty (i.e. `""`). | +| | Thrown when the [AccessTokenUri][AccessTokenUri Password Credentials] within [HttpOAuthPasswordCredentials][] is empty (i.e. `""`). | +| | Thrown when the [ResourceOwnerUsername][ResourceOwnerUsername Password Credentials] within [HttpOAuthPasswordCredentials][] is empty (i.e. `""`). | +| | Thrown when the [AccessTokenUri][AccessTokenUri Client Credentials] within [HttpOAuthClientCredentials][] is empty (i.e. `""`). | +| | Thrown when the [ClientId][] in [ClientAuthentication][] within [HttpOAuthClientCredentials][] is empty (i.e. `""`). | +| | Thrown when the [ClientSecret][] in [ClientAuthentication][] within [HttpOAuthClientCredentials][] is empty (i.e. `""`). | + +## Remarks + +### Known Limitations + +None + +[Examples Base]: {{< ref "#examples" >}} +[Http Request Property]: {{< ref "#http-request" >}} +[Http Credentials Property]: {{< ref "#http-credentials" >}} +[Http Response Property]: {{< ref "#http-response" >}} + +[IDictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} +[UserCredentials]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.MainDoc" >}} +[Username]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.Username" >}} +[Password]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.Password" >}} + +[HttpCredentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.HttpCredentials.MainDoc" >}} + +[HttpOAuthClientCredentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.OAuth.HttpOAuthClientCredentials.MainDoc" >}} +[AccessTokenUri Client Credentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.OAuth.HttpOAuthClientCredentials.AccessTokenUri" >}} +[ClientAuthentication Client Credentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.OAuth.HttpOAuthClientCredentials.ClientAuthentication" >}} + +[HttpOAuthPasswordCredentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.OAuth.HttpOAuthPasswordCredentials.MainDoc" >}} +[ResourceOwnerUsername Password Credentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.OAuth.HttpOAuthPasswordCredentials.ResourceOwnerUsername" >}} +[ResourceOwnerPassword Password Credentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.OAuth.HttpOAuthPasswordCredentials.ResourceOwnerPassword" >}} +[AccessTokenUri Password Credentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.OAuth.HttpOAuthPasswordCredentials.AccessTokenUri" >}} + +[ClientAuthentication]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.OAuth.ClientAuthentication.MainDoc" >}} +[ClientId]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.OAuth.ClientAuthentication.ClientId" >}} +[ClientSecret]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.OAuth.ClientAuthentication.ClientSecret" >}} +[SendAs]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.OAuth.ClientAuthentication.SendAs" >}} + +[HttpRequest]: {{< url path="Cortex.Reference.DataTypes.Http.Rest.HttpRequest.MainDoc" >}} +[Uri]: {{< url path="Cortex.Reference.DataTypes.Http.Rest.HttpRequest.Uri" >}} +[QueryParameters]: {{< url path="Cortex.Reference.DataTypes.Http.Rest.HttpRequest.QueryParameters" >}} +[Verb]: {{< url path="Cortex.Reference.DataTypes.Http.Rest.HttpRequest.Verb" >}} +[ContentType]: {{< url path="Cortex.Reference.DataTypes.Http.Rest.HttpRequest.ContentType" >}} +[Headers Request]: {{< url path="Cortex.Reference.DataTypes.Http.Rest.HttpRequest.Headers" >}} +[Body]: {{< url path="Cortex.Reference.DataTypes.Http.Rest.HttpRequest.Body" >}} +[HttpVersion]: {{< url path="Cortex.Reference.DataTypes.Http.Rest.HttpRequest.HttpVersion" >}} + +[RequestVerb]: {{< url path="Cortex.Reference.DataTypes.Http.RequestVerb.MainDoc" >}} +[GET]: {{< url path="Cortex.Reference.DataTypes.Http.RequestVerb.GET" >}} +[POST]: {{< url path="Cortex.Reference.DataTypes.Http.RequestVerb.POST" >}} +[PUT]: {{< url path="Cortex.Reference.DataTypes.Http.RequestVerb.PUT" >}} +[DELETE]: {{< url path="Cortex.Reference.DataTypes.Http.RequestVerb.DELETE" >}} +[PATCH]: {{< url path="Cortex.Reference.DataTypes.Http.RequestVerb.PATCH" >}} +[HEAD]: {{< url path="Cortex.Reference.DataTypes.Http.RequestVerb.HEAD" >}} +[HttpRequestVersion]: {{< url path="Cortex.Reference.DataTypes.Http.HttpRequestVersion.MainDoc" >}} +[HTTP10]: {{< url path="Cortex.Reference.DataTypes.Http.HttpRequestVersion.HTTP10" >}} +[HTTP11]: {{< url path="Cortex.Reference.DataTypes.Http.HttpRequestVersion.HTTP11" >}} + +[HttpResponse]: {{< url path="Cortex.Reference.DataTypes.Http.Rest.HttpResponse.MainDoc" >}} +[ResponseBody]: {{< url path="Cortex.Reference.DataTypes.Http.Rest.HttpResponse.ResponseBody" >}} +[ErrorMessage]: {{< url path="Cortex.Reference.DataTypes.Http.Rest.HttpResponse.ErrorMessage" >}} +[Headers Response]: {{< url path="Cortex.Reference.DataTypes.Http.Rest.HttpResponse.Headers" >}} +[StatusCode]: {{< url path="Cortex.Reference.DataTypes.Http.Rest.HttpResponse.StatusCode" >}} + +[Structure]: {{< url path="Cortex.Reference.DataTypes.Collections.Structure.MainDoc" >}} + +[EncryptedText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptedText.MainDoc" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[HttpAuthorisationException]: {{< url path="Cortex.Reference.Exceptions.Http.HttpAuthorisationException.MainDoc" >}} +[InvalidRequestException]: {{< url path="Cortex.Reference.Exceptions.Http.InvalidRequestException.MainDoc" >}} + +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[API]: {{< url path="Cortex.Reference.Glossary.A-E.API" >}} +[Flow]:{{< url path="Cortex.Reference.Glossary.F-J.Flow">}} + +[Cortex API Gateway]: {{< url path="Cortex.Guides.CortexInnovation.CoreApplication.Services.ApiGatewayService.MainDoc" >}} +[Publish Package]: {{< url path="Cortex.Guides.Gateway.Settings.Packages.MainDoc" >}} +[Run Flow]: {{< url path="Cortex.Reference.Blocks.Flows.RunFlow.RunFlow.MainDoc">}} +[Run Flow Async]: {{< url path="Cortex.Reference.Blocks.Flows.RunFlow.RunFlowAsync.MainDoc">}} diff --git a/content/en/docs/2024.11/Reference/Blocks/http/execute-soap-request/_index.md b/content/en/docs/2024.11/Reference/Blocks/http/execute-soap-request/_index.md new file mode 100644 index 000000000..3c6227477 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/http/execute-soap-request/_index.md @@ -0,0 +1,5 @@ +--- +title: "Execute Soap Request" +linkTitle: "Execute Soap Request" +description: "Blocks related to executing SOAP requests." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/http/execute-soap-request/execute-soap-request-block-1.md b/content/en/docs/2024.11/Reference/Blocks/http/execute-soap-request/execute-soap-request-block-1.md new file mode 100644 index 000000000..beed8aecb --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/http/execute-soap-request/execute-soap-request-block-1.md @@ -0,0 +1,494 @@ +--- +title: "Execute Soap Request" +linkTitle: "Execute Soap Request" +description: "Executes a SOAP request and returns a response." +--- + +{{< figure src="/blocks/Cortex_Blocks_Http_ExecuteSoapRequest_ExecuteSoapRequestBlock_1.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Http.ExecuteSoapRequest.ExecuteSoapRequestBlock`1)

+ +{{% alert type="information" title="Information" %}}Improvements to this page are planned for the future; this will include further examples and remarks.{{% /alert %}} + +## Description + +Executes a [Soap Request][Soap Request Property] using the specified [Http Credentials][Http Credentials Property] and returns the [Soap Response][Soap Response Property]. + +## Examples + +The following examples will use an example SOAP service with a base [Uri][] of `https://test-converter.com/xml`. + +The example SOAP service supports the following: + +- Conversion of a temperature in Degrees Celcius to Kelvin using an [Action][] of `https://test-converter.com/DegreesToKelvin` +- Unauthenticated requests +- Basic authentication +- Retrieval of access tokens from `https://test-converter.com/oauth2/token` +- OAuth authentication using password credentials +- OAuth authentication using client credentials + +### Executing a request using SOAP 1.1 + +This example will send a [Soap Request][Soap Request Property] to `https://test-converter.com/xml` using SOAP 1.1 with no authentication which requires: + +- [SoapMessage][SoapMessage Property] to be a [Soap11Message][] +- [Http Credentials][Http Credentials Property] to be `null` + +Note that the result of executing a [Soap Request][Soap Request Property] is dependent on the SOAP service that the request is being made to. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Soap Request][Soap Request Property] | `($)SoapRequest`, with value `{"SoapMessage": {"Action": "https://test-converter.com/DegreesToKelvin", "Envelope": "20", "Version": 11}, "Uri": "https://test-converter.com/xml", "Headers": null, "HttpVersion": "HttpRequestVersion.HTTP11"}`

In this example `($)SoapRequest` has been set up using the following [Expression][]:

`new SoapRequest(uri: "https://test-converter.com/xml", soapMessage: new Soap11Message("https://test-converter.com/DegreesToKelvin", "20"), headers: null, httpVersion: HttpRequestVersion.HTTP11)` | `($)SoapRequest` is a variable of type [SoapRequest][] | +| [Http Credentials][Http Credentials Property] | `($)HttpCredentials`, with value `null`

In this example, `($)HttpCredentials` has been set up using the following [Expression][]:

`null` | `($)HttpCredentials` is a variable with value `null`

As `($)HttpCredentials` is `null`, no authentication will occur when making the request. | +| [Soap Response][Soap Response Property] | `($)SoapResponse`, with no value | `($)SoapResponse` will be set to the type [SoapResponse][] | + +#### Result + +Executing a [Soap Request][Soap Request Property] with a [Uri][] of `https://test-converter.com/xml` using a [Soap11Message][] with an [Action][] of `https://test-converter.com/DegreesToKelvin` results in the variable `($)SoapResponse` being updated to the following: + +```json +{ + "ResponseEnvelope": { + "?xml": { + "@version": "1.0", + "@encoding": "utf-8" + }, + "soap:Envelope": { + "@xmlns:xsi": "http://www.w3.org/2001/XMLSchema-instance", + "@xmlns:xsd": "http://www.w3.org/2001/XMLSchema", + "@xmlns:soap": "http://schemas.xmlsoap.org/soap/envelope/", + "soap:Body": { + "DegreesToKelvinResponse": { + "@xmlns": "https://test-converter.com/DegreesToKelvin/schema", + "kelvin": "293" + } + } + } + }, + "ErrorMessage": null, + "Headers": { + "Content-Type": "text/xml; charset=utf-8" + }, + "StatusCode": "HttpStatusCode.OK (200)" +} +``` + +Note that as the [Headers][Headers Response] contains a key of `Content-Type` with a value of `text/xml; charset=utf-8`, the [ResponseEnvelope][] is a [Structure][] containing the data. + +*** + +### Executing a request using SOAP 1.2 + +This example will send a [Soap Request][Soap Request Property] to `https://test-converter.com/xml` using SOAP 1.2 with no authentication which requires: + +- [SoapMessage][SoapMessage Property] to be a [Soap12Message][] +- [Http Credentials][Http Credentials Property] to be `null` + +Note that the result of executing a [Soap Request][Soap Request Property] is dependent on the SOAP service that the request is being made to. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Soap Request][Soap Request Property] | `($)SoapRequest`, with value `{"SoapMessage": {"Envelope": "20", "Version": 12}, "Uri": "https://test-converter.com/xml", "Headers": null, "HttpVersion": "HttpRequestVersion.HTTP11"}`

In this example `($)SoapRequest` has been set up using the following [Expression][]:

`new SoapRequest(uri: "https://test-converter.com/xml", soapMessage: new Soap12Message("20"), headers: null, httpVersion: HttpRequestVersion.HTTP11)` | `($)SoapRequest` is a variable of type [SoapRequest][] | +| [Http Credentials][Http Credentials Property] | `($)HttpCredentials`, with value `null`

In this example, `($)HttpCredentials` has been set up using the following [Expression][]:

`null` | `($)HttpCredentials` is a variable with value `null`

As `($)HttpCredentials` is `null`, no authentication will occur when making the request. | +| [Soap Response][Soap Response Property] | `($)SoapResponse`, with no value | `($)SoapResponse` will be set to the type [SoapResponse][] | + +#### Result + +Executing a [Soap Request][Soap Request Property] with a [Uri][] of `https://test-converter.com/xml` using a [Soap12Message][] results in the variable `($)SoapResponse` being updated to the following: + +```json +{ + "ResponseEnvelope": { + "?xml": { + "@version": "1.0", + "@encoding": "utf-8" + }, + "soap12:Envelope": { + "@xmlns:xsi": "http://www.w3.org/2001/XMLSchema-instance", + "@xmlns:xsd": "http://www.w3.org/2001/XMLSchema", + "@xmlns:soap12": "http://www.w3.org/2003/05/soap-envelope", + "soap12:Body": { + "DegreesToKelvinResponse": { + "@xmlns": "https://test-converter.com/DegreesToKelvin/schema", + "kelvin": "293" + } + } + } + }, + "ErrorMessage": null, + "Headers": { + "Content-Type": "application/soap+xml; charset=utf-8" + }, + "StatusCode": "HttpStatusCode.OK (200)" +} +``` + +Note that as the [Headers][Headers Response] contains a key of `Content-Type` with a value of `application/soap+xml; charset=utf-8`, the [ResponseEnvelope][] is a [Structure][] containing the data. + +*** + +### Executing a request using Basic authentication + +This example will send a [Soap Request][Soap Request Property] to `https://test-converter.com/xml` using SOAP 1.1 with Basic authentication which requires: + +- [SoapMessage][SoapMessage Property] to be a [Soap11Message][] +- [Http Credentials][Http Credentials Property] to be a [UserCredentials][] + +Note that the result of executing a [Soap Request][Soap Request Property] is dependent on the SOAP service that the request is being made to. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Soap Request][Soap Request Property] | `($)SoapRequest`, with value `{"SoapMessage": {"Action": "https://test-converter.com/DegreesToKelvin", "Envelope": "20", "Version": 11}, "Uri": "https://test-converter.com/xml", "Headers": null, "HttpVersion": "HttpRequestVersion.HTTP11"}`

In this example `($)SoapRequest` has been set up using the following [Expression][]:

`new SoapRequest(uri: "https://test-converter.com/xml", soapMessage: new Soap11Message("https://test-converter.com/DegreesToKelvin", "20"), headers: null, httpVersion: HttpRequestVersion.HTTP11)` | `($)SoapRequest` is a variable of type [SoapRequest][] | +| [Http Credentials][Http Credentials Property] | `($)HttpCredentials`, with value `{"Domain": null, "Username": "username", "Password": "encryptedPassword"}`

In this example, `($)HttpCredentials` has been set up using the following [Expression][]:

`new UserCredentials(username: "username", password: "encryptedPassword")` | `($)HttpCredentials` is a variable of type [UserCredentials][]

The [Password][] property in the [UserCredentials][] must be encrypted, for more information on how to encrypt the password, see [EncryptedText][]. | +| [Soap Response][Soap Response Property] | `($)SoapResponse`, with no value | `($)SoapResponse` will be set to the type [SoapResponse][] | + +#### Result + +Executing a [Soap Request][Soap Request Property] with a [Uri][] of `https://test-converter.com/xml` using a [Soap11Message][] with an [Action][] of `https://test-converter.com/DegreesToKelvin` results in the variable `($)SoapResponse` being updated to the following: + +```json +{ + "ResponseEnvelope": { + "?xml": { + "@version": "1.0", + "@encoding": "utf-8" + }, + "soap:Envelope": { + "@xmlns:xsi": "http://www.w3.org/2001/XMLSchema-instance", + "@xmlns:xsd": "http://www.w3.org/2001/XMLSchema", + "@xmlns:soap": "http://schemas.xmlsoap.org/soap/envelope/", + "soap:Body": { + "DegreesToKelvinResponse": { + "@xmlns": "https://test-converter.com/DegreesToKelvin/schema", + "kelvin": "293" + } + } + } + }, + "ErrorMessage": null, + "Headers": { + "Content-Type": "text/xml; charset=utf-8" + }, + "StatusCode": "HttpStatusCode.OK (200)" +} +``` + +Note that as the [Headers][Headers Response] contains a key of `Content-Type` with a value of `text/xml; charset=utf-8`, the [ResponseEnvelope][] is a [Structure][] containing the data. + +*** + +### Executing a request using OAuth password credentials + +This example will send a [Soap Request][Soap Request Property] to `https://test-converter.com/xml` using SOAP 1.1 with OAuth authentication using password credentials which requires: + +- [SoapMessage][SoapMessage Property] to be a [Soap11Message][] +- [Http Credentials][Http Credentials Property] to be an [HttpOAuthPasswordCredentials][] + +Note that the result of executing a [Soap Request][Soap Request Property] is dependent on the SOAP service that the request is being made to. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Soap Request][Soap Request Property] | `($)SoapRequest`, with value `{"SoapMessage": {"Action": "https://test-converter.com/DegreesToKelvin", "Envelope": "20", "Version": 11}, "Uri": "https://test-converter.com/xml", "Headers": null, "HttpVersion": "HttpRequestVersion.HTTP11"}`

In this example `($)SoapRequest` has been set up using the following [Expression][]:

`new SoapRequest(uri: "https://test-converter.com/xml", soapMessage: new Soap11Message("https://test-converter.com/DegreesToKelvin", "20"), headers: null, httpVersion: HttpRequestVersion.HTTP11)` | `($)SoapRequest` is a variable of type [SoapRequest][] | +| [Http Credentials][Http Credentials Property] | `($)HttpCredentials`, with value `{"AccessTokenUri": "https://test-converter.com/oauth2/token", "ClientAuthentication": null, "Scope": null, "ResourceOwnerUsername": "username", "ResourceOwnerPassword": "encryptedPassword"}`

In this example, `($)HttpCredentials` has been set up using the following [Expression][]:

`new HttpOAuthPasswordCredentials(accessTokenUri: "https://test-converter.com/oauth2/token", clientAuthentication: null, scope: null, resourceOwnerUsername: "username", resourceOwnerPassword: "encryptedPassword")` | `($)HttpCredentials` is a variable of type [HttpOAuthPasswordCredentials][]

The [ResourceOwnerPassword][ResourceOwnerPassword Password Credentials] property in the [HttpOAuthPasswordCredentials][] must be encrypted, for more information on how to encrypt the password, see [EncryptedText][]. | +| [Soap Response][Soap Response Property] | `($)SoapResponse`, with no value | `($)SoapResponse` will be set to the type [SoapResponse][] | + +#### Result + +Executing a [Soap Request][Soap Request Property] with a [Uri][] of `https://test-converter.com/xml` using a [Soap11Message][] with an [Action][] of `https://test-converter.com/DegreesToKelvin` results in the variable `($)SoapResponse` being updated to the following: + +```json +{ + "ResponseEnvelope": { + "?xml": { + "@version": "1.0", + "@encoding": "utf-8" + }, + "soap:Envelope": { + "@xmlns:xsi": "http://www.w3.org/2001/XMLSchema-instance", + "@xmlns:xsd": "http://www.w3.org/2001/XMLSchema", + "@xmlns:soap": "http://schemas.xmlsoap.org/soap/envelope/", + "soap:Body": { + "DegreesToKelvinResponse": { + "@xmlns": "https://test-converter.com/DegreesToKelvin/schema", + "kelvin": "293" + } + } + } + }, + "ErrorMessage": null, + "Headers": { + "Content-Type": "text/xml; charset=utf-8" + }, + "StatusCode": "HttpStatusCode.OK (200)" +} +``` + +Note that as the [Headers][Headers Response] contains a key of `Content-Type` with a value of `text/xml; charset=utf-8`, the [ResponseEnvelope][] is a [Structure][] containing the data. + +*** + +### Executing a request using OAuth client credentials + +This example will send a [Soap Request][Soap Request Property] to `https://test-converter.com/xml` using SOAP 1.1 with OAuth authentication using client credentials which requires: + +- [SoapMessage][SoapMessage Property] to be a [Soap11Message][] +- [Http Credentials][Http Credentials Property] to be an [HttpOAuthClientCredentials][] + +Note that the result of executing a [Soap Request][Soap Request Property] is dependent on the SOAP service that the request is being made to. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Soap Request][Soap Request Property] | `($)SoapRequest`, with value `{"SoapMessage": {"Action": "https://test-converter.com/DegreesToKelvin", "Envelope": "20", "Version": 11}, "Uri": "https://test-converter.com/xml", "Headers": null, "HttpVersion": "HttpRequestVersion.HTTP11"}`

In this example `($)SoapRequest` has been set up using the following [Expression][]:

`new SoapRequest(uri: "https://test-converter.com/xml", soapMessage: new Soap11Message("https://test-converter.com/DegreesToKelvin", "20"), headers: null, httpVersion: HttpRequestVersion.HTTP11)` | `($)SoapRequest` is a variable of type [SoapRequest][] | +| [Http Credentials][Http Credentials Property] | `($)HttpCredentials`, with value `{"AccessTokenUri": "https://test-converter.com/oauth2/token", "ClientAuthentication": {"ClientId": "clientId", "ClientSecret": "encryptedClientSecret", "SendAs": "ClientAuthType.Header"}, "Scope": null}`

In this example, `($)HttpCredentials` has been set up using the following [Expression][]:

`new HttpOAuthClientCredentials(accessTokenUri: "https://test-converter.com/oauth2/token", clientAuthentication: new ClientAuthentication("clientId", "encryptedClientSecret", ClientAuthType.Header), scope: null)` | `($)HttpCredentials` is a variable of type [HttpOAuthClientCredentials][]

The [ClientSecret][] property in [ClientAuthentication][] must be encrypted, for more information on how to encrypt the [ClientSecret][], see [EncryptedText][]. | +| [Soap Response][Soap Response Property] | `($)SoapResponse`, with no value | `($)SoapResponse` will be set to the type [SoapResponse][] | + +#### Result + +Executing a [Soap Request][Soap Request Property] with a [Uri][] of `https://test-converter.com/xml` using a [Soap11Message][] with an [Action][] of `https://test-converter.com/DegreesToKelvin` results in the variable `($)SoapResponse` being updated to the following: + +```json +{ + "ResponseEnvelope": { + "?xml": { + "@version": "1.0", + "@encoding": "utf-8" + }, + "soap:Envelope": { + "@xmlns:xsi": "http://www.w3.org/2001/XMLSchema-instance", + "@xmlns:xsd": "http://www.w3.org/2001/XMLSchema", + "@xmlns:soap": "http://schemas.xmlsoap.org/soap/envelope/", + "soap:Body": { + "DegreesToKelvinResponse": { + "@xmlns": "https://test-converter.com/DegreesToKelvin/schema", + "kelvin": "293" + } + } + } + }, + "ErrorMessage": null, + "Headers": { + "Content-Type": "text/xml; charset=utf-8" + }, + "StatusCode": "HttpStatusCode.OK (200)" +} +``` + +Note that as the [Headers][Headers Response] contains a key of `Content-Type` with a value of `text/xml; charset=utf-8`, the [ResponseEnvelope][] is a [Structure][] containing the data. + +*** + +## Properties + +### Soap Request + +The [Soap Request][Soap Request Property] to execute using the [Http Credentials][Http Credentials Property]. This property contains all of the information in relation to the request to be sent, these are: + +- [SoapMessage][SoapMessage Property] +- [Uri][] +- [Headers][Headers Request] +- [HttpVersion][] + +SOAP 1.1 and SOAP 1.2 are both supported, which correspond to [SoapMessage][SoapMessage Property] within [SoapRequest][] being a [Soap11Message][] and [Soap12Message][] respectively. + +For more information on: + +- How to use a [Soap11Message][], see [Executing a request using SOAP 1.1][] +- How to use a [Soap12Message][], see [Executing a request using SOAP 1.2][] +- Each of the properties, see [SoapRequest][] + +||| +|----------|----------| +| Data Type | [SoapRequest][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [SoapRequest][] with value shown below: | + +```json +{ + "SoapMessage": { + "Action": "", + "Envelope": "", + "Version": 11 + }, + "Uri": "", + "Headers": null, + "HttpVersion": "HttpRequestVersion.HTTP10" +} +``` + +### Http Credentials + +The [Http Credentials][Http Credentials Property] object that includes all of the information required for authentication. Mutliple authentication mechanisms are supported which correspond to specific values/data types: + +- `null`: No authentication +- [UserCredentials][]: Basic authentication +- [HttpOAuthPasswordCredentials][]: OAuth authentication using password credentials +- [HttpOAuthClientCredentials][]: OAuth authentication using client credentials + +Note that when using [HttpOAuthPasswordCredentials][] or [HttpOAuthClientCredentials][] as the [Http Credentials][Http Credentials Property], the Execute Soap Request block automatically handles retrieval of access tokens using the following rules: + +- If an access token does not exist, a new access token will be retrieved and used when the block runs. +- If an access token already exists but is expired, a new access token will be retrieved and used when the block runs. +- If an access token already exists and is valid, it will be used when the block runs. + +||| +|----------|----------| +| Data Type | [HttpCredentials][] | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)HttpCredentials` with no value | + +### Soap Response + +The [Soap Response][Soap Response Property] object which contains the response returned from the server. This property contains all of the information in relation to the response from the server, these are: + +- [ResponseEnvelope][] +- [ErrorMessage][] +- [Headers][Headers Response] +- [StatusCode][] + +Note that if the [Headers][Headers Response] contains a key of `Content-Type` with a value containing `json` or `xml`, the [ResponseEnvelope][] will be set to a [Structure][] containing the data. + +For more detailed information on each of the properties, see [SoapResponse][]. + +||| +|----------|----------| +| Data Type | [SoapResponse][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)SoapResponse` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|--------------------------------------|-------------| +| [HttpAuthorisationException][] | Thrown when the [AccessTokenUri][AccessTokenUri Password Credentials] within [HttpOAuthPasswordCredentials][] is invalid. | +| | Thrown when the [ResourceOwnerUsername][ResourceOwnerUsername Password Credentials] within [HttpOAuthPasswordCredentials][] is invalid. | +| | Thrown when the [ResourceOwnerPassword][ResourceOwnerPassword Password Credentials] within [HttpOAuthPasswordCredentials][] is invalid. | +| | Thrown when the [AccessTokenUri][AccessTokenUri Client Credentials] within [HttpOAuthClientCredentials][] is invalid. | +| | Thrown when the [ClientId][] in [ClientAuthentication][] within [HttpOAuthClientCredentials][] is invalid. | +| | Thrown when the [ClientSecret][] in [ClientAuthentication][] within [HttpOAuthClientCredentials][] is invalid. | +| [InvalidRequestException][] | Thrown when the [Uri][] within [Soap Request][Soap Request Property] is not in the correct format or contains invalid characters. | +| | Thrown when the [AccessTokenUri][AccessTokenUri Password Credentials] within [HttpOAuthPasswordCredentials][] is not in the correct format or contains invalid characters. | +| | Thrown when the [AccessTokenUri][AccessTokenUri Client Credentials] within [HttpOAuthClientCredentials][] is not in the correct format or contains invalid characters. | +| | Thrown when a header key in [Headers][Headers Request] within [Soap Request][Soap Request Property] is empty (i.e. `""`). | +| | Thrown when a header key in [Headers][Headers Request] within [Soap Request][Soap Request Property] is restricted. | +| | Thrown when a header key in [Headers][Headers Request] within [Soap Request][Soap Request Property] is restricted and forbidden. | +| | Thrown when a header value in [Headers][Headers Request] within [Soap Request][Soap Request Property] could not be assigned to its restricted header key. | +| | Thrown when a header value in [Headers][Headers Request] within [Soap Request][Soap Request Property] could not be converted to its restricted header key's type. | +| | Thrown when the [Envelope][] in the [SoapMessage][SoapMessage Property] within [Soap Request][Soap Request Property] is not valid XML. | +| | Thrown when the [HttpVersion][] within [Soap Request][Soap Request Property] is not one of the specified [HttpRequestVersion][] values (e.g. `(HttpRequestVersion)20`). | +| [InvalidResponseException][] | Thrown when the [ResponseEnvelope][] within [Soap Response][Soap Response Property] is not valid XML. | +| [PropertyNullException][] | Thrown when the [Soap Request][Soap Request Property] is `null`. | +| | Thrown when the [Uri][] within [Soap Request][Soap Request Property] is `null`. | +| | Thrown when the [SoapMessage][SoapMessage Property] within [Soap Request][Soap Request Property] is `null`. | +| | Thrown when the [Action][] in the [Soap11Message][] within [Soap Request][Soap Request Property] is `null`. | +| | Thrown when the [Envelope][] in the [SoapMessage][SoapMessage Property] within [Soap Request][Soap Request Property] is `null`. | +| | Thrown when the [Username][] within [UserCredentials][] is `null`. | +| | Thrown when the [AccessTokenUri][AccessTokenUri Password Credentials] within [HttpOAuthPasswordCredentials][] is `null`. | +| | Thrown when the [ResourceOwnerUsername][ResourceOwnerUsername Password Credentials] within [HttpOAuthPasswordCredentials][] is `null`. | +| | Thrown when the [AccessTokenUri][AccessTokenUri Client Credentials] within [HttpOAuthClientCredentials][] is `null`. | +| | Thrown when the [ClientAuthentication][ClientAuthentication Client Credentials] within [HttpOAuthClientCredentials][] is `null`. | +| | Thrown when the [ClientId][] in [ClientAuthentication][] within [HttpOAuthClientCredentials][] is `null`. | +| | Thrown when the [ClientSecret][] in [ClientAuthentication][] within [HttpOAuthClientCredentials][] is `null`. | +| [PropertyEmptyException][] | Thrown when the [Uri][] within [Soap Request][Soap Request Property] is empty (i.e. `""`). | +| | Thrown when the [Username][] within [UserCredentials][] is empty (i.e. `""`). | +| | Thrown when the [AccessTokenUri][AccessTokenUri Password Credentials] within [HttpOAuthPasswordCredentials][] is empty (i.e. `""`). | +| | Thrown when the [ResourceOwnerUsername][ResourceOwnerUsername Password Credentials] within [HttpOAuthPasswordCredentials][] is empty (i.e. `""`). | +| | Thrown when the [AccessTokenUri][AccessTokenUri Client Credentials] within [HttpOAuthClientCredentials][] is empty (i.e. `""`). | +| | Thrown when the [ClientId][] in [ClientAuthentication][] within [HttpOAuthClientCredentials][] is empty (i.e. `""`). | +| | Thrown when the [ClientSecret][] in [ClientAuthentication][] within [HttpOAuthClientCredentials][] is empty (i.e. `""`). | + +## Remarks + +### Known Limitations + +None + +[Soap Request Property]: {{< ref "#soap-request" >}} +[Http Credentials Property]: {{< ref "#http-credentials" >}} +[Soap Response Property]: {{< ref "#soap-response" >}} + +[Executing a request using SOAP 1.1]: {{< ref "#executing-a-request-using-soap-11" >}} +[Executing a request using SOAP 1.2]: {{< ref "#executing-a-request-using-soap-12" >}} + +[SoapRequest]: {{< url path="Cortex.Reference.DataTypes.Http.Soap.SoapRequest.MainDoc" >}} +[SoapMessage Property]: {{< url path="Cortex.Reference.DataTypes.Http.Soap.SoapRequest.SoapMessage" >}} +[Uri]: {{< url path="Cortex.Reference.DataTypes.Http.Soap.SoapRequest.Uri" >}} +[Headers Request]: {{< url path="Cortex.Reference.DataTypes.Http.Soap.SoapRequest.Headers" >}} +[HttpVersion]: {{< url path="Cortex.Reference.DataTypes.Http.Soap.SoapRequest.HttpVersion" >}} + +[SoapMessage]: {{< url path="Cortex.Reference.DataTypes.Http.Soap.SoapMessage.MainDoc" >}} +[Envelope]: {{< url path="Cortex.Reference.DataTypes.Http.Soap.SoapMessage.Envelope" >}} + +[Soap11Message]: {{< url path="Cortex.Reference.DataTypes.Http.Soap.Soap11Message.MainDoc" >}} +[Action]: {{< url path="Cortex.Reference.DataTypes.Http.Soap.Soap11Message.Action" >}} + +[Soap12Message]: {{< url path="Cortex.Reference.DataTypes.Http.Soap.Soap12Message.MainDoc" >}} + +[HttpCredentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.HttpCredentials.MainDoc" >}} + +[UserCredentials]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.MainDoc" >}} +[Username]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.Username" >}} +[Password]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.Password" >}} + +[HttpOAuthClientCredentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.OAuth.HttpOAuthClientCredentials.MainDoc" >}} +[AccessTokenUri Client Credentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.OAuth.HttpOAuthClientCredentials.AccessTokenUri" >}} +[ClientAuthentication Client Credentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.OAuth.HttpOAuthClientCredentials.ClientAuthentication" >}} + +[HttpOAuthPasswordCredentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.OAuth.HttpOAuthPasswordCredentials.MainDoc" >}} +[ResourceOwnerUsername Password Credentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.OAuth.HttpOAuthPasswordCredentials.ResourceOwnerUsername" >}} +[ResourceOwnerPassword Password Credentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.OAuth.HttpOAuthPasswordCredentials.ResourceOwnerPassword" >}} +[AccessTokenUri Password Credentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.OAuth.HttpOAuthPasswordCredentials.AccessTokenUri" >}} + +[ClientAuthentication]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.OAuth.ClientAuthentication.MainDoc" >}} +[ClientId]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.OAuth.ClientAuthentication.ClientId" >}} +[ClientSecret]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.OAuth.ClientAuthentication.ClientSecret" >}} +[SendAs]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.OAuth.ClientAuthentication.SendAs" >}} + +[EncryptedText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptedText.MainDoc" >}} + +[SoapResponse]: {{< url path="Cortex.Reference.DataTypes.Http.Soap.SoapResponse.MainDoc" >}} +[ResponseEnvelope]: {{< url path="Cortex.Reference.DataTypes.Http.Soap.SoapResponse.ResponseEnvelope" >}} +[ErrorMessage]: {{< url path="Cortex.Reference.DataTypes.Http.Soap.SoapResponse.ErrorMessage" >}} +[Headers Response]: {{< url path="Cortex.Reference.DataTypes.Http.Soap.SoapResponse.Headers" >}} +[StatusCode]: {{< url path="Cortex.Reference.DataTypes.Http.Soap.SoapResponse.StatusCode" >}} + +[HttpRequestVersion]: {{< url path="Cortex.Reference.DataTypes.Http.HttpRequestVersion.MainDoc" >}} +[HTTP10]: {{< url path="Cortex.Reference.DataTypes.Http.HttpRequestVersion.HTTP10" >}} +[HTTP11]: {{< url path="Cortex.Reference.DataTypes.Http.HttpRequestVersion.HTTP11" >}} + +[Structure]: {{< url path="Cortex.Reference.DataTypes.Collections.Structure.MainDoc" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[HttpAuthorisationException]: {{< url path="Cortex.Reference.Exceptions.Http.HttpAuthorisationException.MainDoc" >}} +[InvalidRequestException]: {{< url path="Cortex.Reference.Exceptions.Http.InvalidRequestException.MainDoc" >}} +[InvalidResponseException]: {{< url path="Cortex.Reference.Exceptions.Http.InvalidResponseException.MainDoc" >}} + +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[API]: {{< url path="Cortex.Reference.Glossary.A-E.API" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/json/_index.md b/content/en/docs/2024.11/Reference/Blocks/json/_index.md new file mode 100644 index 000000000..e11d8ce65 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/json/_index.md @@ -0,0 +1,5 @@ +--- +title: "Json" +linkTitle: "Json" +description: "Blocks related to working with Json." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/json/convert-json/_index.md b/content/en/docs/2024.11/Reference/Blocks/json/convert-json/_index.md new file mode 100644 index 000000000..57d24569d --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/json/convert-json/_index.md @@ -0,0 +1,5 @@ +--- +title: "Convert Json" +linkTitle: "Convert Json" +description: "Convert json to and from other data types." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/json/convert-json/convert-json-to-object-block.md b/content/en/docs/2024.11/Reference/Blocks/json/convert-json/convert-json-to-object-block.md new file mode 100644 index 000000000..e117a50fd --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/json/convert-json/convert-json-to-object-block.md @@ -0,0 +1,248 @@ +--- +title: "Convert Json To Object" +linkTitle: "Convert Json To Object" +description: "Converts Json to an Object." +--- + +{{< figure src="/blocks/Cortex_Blocks_Json_ConvertJson_ConvertJsonToObjectBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Json.ConvertJson.ConvertJsonToObjectBlock)

+ +## Description + +Converts [Json][Json Property] to an [Object][Object Property]. + +An additional [Settings][Settings Property] option can be specified to control how the conversion should deal with things such as: + +* `null` objects +* Date Time formats and offsets +* Number formats +* Text escaping +* Type information + +For information about the default [Settings][Settings Property] used if none are specified, as well as all other options that can be configured, please see [JsonSerializerSettings][]. + +## Examples + +### Convert Json to a List (without Type information) + +This example will convert `"[[1, 2, 3], [4, 5, 6]]"` into a [List][]<[Object][]>. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Json][Json Property] | `($)Json`, with value `"[[1, 2, 3], [4, 5, 6]]"` | `($)Json` is a variable of type [String][] | +| [Settings][Settings Property] | `($)Settings`, with value `null` | `($)Settings` is a variable of type [JsonSerializerSettings][] | +| [Object][Object Property] | `($)Object`, with no value | `($)Object` is a variable that will be set to a [dynamic][] value (i.e. in this example to a [List][]<[Object][]>). | + +#### Result + +Converting `"[[1, 2, 3], [4, 5, 6]]"` to an object results in the variable `($)Object` being updated to the following: + +```json +[ + [ + 1, + 2, + 3 + ], + [ + 4, + 5, + 6 + ] +] +``` + +As the Json does not include any type information, `($)Object` will be a [List][]<[Object][]>, rather than a [List][]<[List][]<[Int32][]>>. This is because when performing the conversion there is no type information to tell the converter that the items in the list are [List][]<[Int32][]> data types. + +See [Convert Json to a List (with Type information)][] for an example on how to include type information in the Json. + +*** + +### Convert Json to a List (with Type information) + +This example will convert `"[[1, 2, 3], [4, 5, 6]]"` into a [List][]<[List][]<[Int32][]>>, rather than a [List][]<[Object][]> as above. + +For this to work, type information needs to be included in the Json representation. This can be seen below: + +```json +{ + "$type": "System.Collections.Generic.List`1[[System.Collections.Generic.List`1[[System.Int32, System.Private.CoreLib]], System.Private.CoreLib]], System.Private.CoreLib", + "$values": [ + { + "$type": "System.Collections.Generic.List`1[[System.Int32, System.Private.CoreLib]], System.Private.CoreLib", + "$values": [1,2,3] + }, + { + "$type": "System.Collections.Generic.List`1[[System.Int32, System.Private.CoreLib]], System.Private.CoreLib", + "$values": [4,5,6] + } + ] +} +``` + +Realistically, this example is only useful if you have already produced Json including type information by using the [Convert Object To Json][] block. If this is the case, you can then convert it back with the correct data types. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Json][Json Property] | `($)Json`, with complex value as shown above | `($)Json` is a variable of type [String][] | +| [Settings][Settings Property] | `($)Settings`, with value `new JsonSerializerSettings{TypeNameHandling = TypeNameHandling.All}` | `($)Settings` is a variable of type [JsonSerializerSettings][] | +| [Object][Object Property] | `($)Object`, with no value | `($)Object` is a variable that will be set to a [dynamic][] value (i.e. in this example to a [List][]<[List][]<[Int32][]>>). | + +#### Result + +Converting: + +```json +{ + "$type": "System.Collections.Generic.List`1[[System.Collections.Generic.List`1[[System.Int32, System.Private.CoreLib]], System.Private.CoreLib]], System.Private.CoreLib", + "$values": [ + { + "$type": "System.Collections.Generic.List`1[[System.Int32, System.Private.CoreLib]], System.Private.CoreLib", + "$values": [1,2,3] + }, + { + "$type": "System.Collections.Generic.List`1[[System.Int32, System.Private.CoreLib]], System.Private.CoreLib", + "$values": [4,5,6] + } + ] +} +``` + +to an object results in the variable `($)Object` being updated to the following: + +```json +[ + [ + 1, + 2, + 3 + ], + [ + 4, + 5, + 6 + ] +] +``` + +As the Json does include type information, `($)Object` will be a [List][]<[List][]<[Int32][]>>, rather than a [List][]<[Object][]>. + +*** + +## Properties + +### Json + +The [Json][Json Property] to convert into an [Object][Object Property]. + +During the conversion it will be attempted to convert the [Json][Json Property] to the correct data type where possible. If the correct data type cannot be determined, then collection data types will be converted to a [List][]<[dynamic][]>, and other objects will be converted to a [Structure][]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Json` with no value | + +### Settings + +Optional [Settings][Settings Property] that can be specified to control how the conversion should deal with things such as: + +* `null` objects +* Date Time formats and offsets +* Number formats +* Text escaping + +For information about the default [Settings][Settings Property] used if none are specified, as well as all other options that can be configured, please see [JsonSerializerSettings][]. + +| | | +|--------------------|---------------------------| +| Data Type | [JsonSerializerSettings][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Expression][] | +| Default Value | `new JsonSerializerSettings {}` | + +### Object + +The [Object][Object Property] that has been converted from [Json][Json Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [dynamic][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Object` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [JsonReaderException][] | Thrown when an error occurs reading the [Json][Json Property]. | +| [JsonSerializationException][] | Thrown when an error occurs converting the [Json][Json Property] to an [Object][Object Property]. | +| [PropertyEmptyException][] | Thrown when [Json][Json Property] is empty (i.e. `""`). | +| [PropertyNullException][] | Thrown when [Json][Json Property] is `null`. | + +## Remarks + +### "{}" Json + +If [Json][Json Property] is set to the text `"{}"`, [Object][Object Property] will be set to an empty [Structure][]. + +### "[]" Json + +If [Json][Json Property] is set to the text `"[]"`, [Object][Object Property] will be set to an empty [List][]<[dynamic][]>. + +### "null" Json + +If [Json][Json Property] is set to the text `"null"`, [Object][Object Property] will be set to `null`. + +### Round-tripping + +For most data types it should be possible to pass the Json created by a [Convert Object To Json][] block to this block, and then pass the [Object][Object Property] created by this block back to a [Convert Object To Json][] block; this is called round-tripping. + +It should be noted however, that not all data types will be able to be round-tripped. + +An example of a data type that is not able to be round-tripped is [HttpRequestHeaders][]. As it does not contain a public constructor it will not be able to be converted from its Json representation back into an [HttpRequestHeaders][]; instead a [JsonSerializationException][] will be thrown with a message like: `"Cannot create and populate list type System.Net.Http.Headers.HttpRequestHeaders"`. + +[Json Property]: {{< ref "#json" >}} +[Settings Property]: {{< ref "#settings" >}} +[Object Property]: {{< ref "#object" >}} + +[Convert Json to a List (with Type information)]: {{< ref "#convert-json-to-a-list-with-type-information" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[JsonReaderException]: {{< url path="JsonDotNet.JsonReaderException" >}} +[JsonSerializationException]: {{< url path="JsonDotNet.JsonSerializationException" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Object]: {{< url path="Cortex.Reference.DataTypes.All.Object.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[List]: {{< url path="Cortex.Reference.DataTypes.Collections.List.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[Structure]: {{< url path="Cortex.Reference.DataTypes.Collections.Structure.MainDoc" >}} +[HttpRequestHeaders]: {{< url path="Cortex.Reference.DataTypes.MostCommon.HttpRequestHeaders" >}} +[JsonSerializerSettings]: {{< url path="Cortex.Reference.DataTypes.Json.JsonSerializerSettings.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/json/convert-json/convert-object-to-json-block.md b/content/en/docs/2024.11/Reference/Blocks/json/convert-json/convert-object-to-json-block.md new file mode 100644 index 000000000..9cef480ae --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/json/convert-json/convert-object-to-json-block.md @@ -0,0 +1,191 @@ +--- +title: "Convert Object To Json" +linkTitle: "Convert Object To Json" +description: "Converts an Object To Json." +--- + +{{< figure src="/blocks/Cortex_Blocks_Json_ConvertJson_ConvertObjectToJsonBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Json.ConvertJson.ConvertObjectToJsonBlock)

+ +## Description + +Converts an [Object][Object Property] to [Json][Json Property]. + +An additional [Settings][Settings Property] option can be specified to control how the conversion should deal with things such as: + +* `null` objects +* Date Time formats and offsets +* Number formats +* Text escaping +* Type information + +For information about the default [Settings][Settings Property] used if none are specified, as well as all other options that can be configured, please see [JsonSerializerSettings][]. + +## Examples + +### Convert a List to Json (without Type information) + +This example will convert `[[1, 2, 3], [4, 5, 6]]` to its Json representation, without including type information. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Object][Object Property] | `($)Object`, with value `[[1, 2, 3], [4, 5, 6]]` | `($)Object` is a variable of type [List][]<[List][]<[Int32][]>> | +| [Settings][Settings Property] | `($)Settings`, with value `null` | `($)Settings` is a variable of type [JsonSerializerSettings][] | +| [Json][Json Property] | `($)Json`, with no value | `($)Json` is a variable that will be set to a [String][] value. | + +#### Result + +Converting `[[1, 2, 3], [4, 5, 6]]` to Json results in the variable `($)Json` being updated to the following: + +```json +"[[1, 2, 3],[4, 5, 6]]" +``` + +As the resultant Json does not include any type information, if this Json was then used as input to the [Convert Json To Object][] block, the resultant object would be a [List][]<[Object][]>, rather than a [List][]<[List][]<[Int32][]>>. + +See [Convert a List To Json (with Type information)][] for an example on how to include type information in the Json. + +*** + +### Convert a List to Json (with Type information) + +This example will convert `[[1, 2, 3], [4, 5, 6]]` to its Json representation, including type information. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Object][Object Property] | `($)Object`, with value `[[1, 2, 3], [4, 5, 6]]` | `($)Object` is a variable of type [List][]<[List][]<[Int32][]>> | +| [Settings][Settings Property] | `($)Settings`, with value `new JsonSerializerSettings{TypeNameHandling = TypeNameHandling.All}` | `($)Settings` is a variable of type [JsonSerializerSettings][] | +| [Json][Json Property] | `($)Json`, with no value | `($)Json` is a variable that will be set to a [String][] value. | + +#### Result + +Converting `[[1, 2, 3], [4, 5, 6]]` to its Json representation (including type information) results in the variable `($)Json` being updated to the following: + +```json +{ + "$type": "System.Collections.Generic.List`1[[System.Collections.Generic.List`1[[System.Int32, System.Private.CoreLib]], System.Private.CoreLib]], System.Private.CoreLib", + "$values": [ + { + "$type": "System.Collections.Generic.List`1[[System.Int32, System.Private.CoreLib]], System.Private.CoreLib", + "$values": [1,2,3] + }, + { + "$type": "System.Collections.Generic.List`1[[System.Int32, System.Private.CoreLib]], System.Private.CoreLib", + "$values": [4,5,6] + } + ] +} +``` + +*** + +## Properties + +### Object + +The [Object][Object Property] to convert to [Json][Json Property]. + +[Object][Object Property] can be any data type. + +| | | +|--------------------|---------------------------| +| Data Type | [dynamic][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Object` with no value | +### Settings + +Optional [Settings][Settings Property] that can be specified to control how the conversion should deal with things such as: + +* `null` objects +* Date Time formats and offsets +* Number formats +* Text escaping + +For information about the default [Settings][Settings Property] used if none are specified, as well as all other options that can be configured, please see [JsonSerializerSettings][]. + +| | | +|--------------------|---------------------------| +| Data Type | [JsonSerializerSettings][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Expression][] | +| Default Value | `new JsonSerializerSettings {Formatting = Formatting.Indented}` | + +### Json + +The [Json][Json Property] that has been converted from [Object][Object Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Json` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [JsonSerializationException][] | Thrown when an error occurs converting the [Object][Object Property] to [Json][Json Property]. | + +## Remarks + +### Object is empty Structure or Object + +If [Object][Object Property] is set to an empty [Structure][] or [Object][], [Json][Json Property] is set to the text `"{}"`. + +### Object is empty List + +If [Object][Object Property] is set to an empty [List][], [Json][Json Property] is set to the text `"[]"`. + +### Null Object + +If [Object][Object Property] is set to `null`, [Json][Json Property] will be set to the text `"null"`. + +### Round-tripping + +For most data types it should be possible to pass the Json created by this block to the [Convert Json To Object][] block, and then pass the [Object][Object Property] created by the [Convert Json To Object][] block back to this block; this is called round-tripping. + +It should be noted however, that not all data types will be able to be round-tripped. + +An example of a data type that is not able to be round-tripped is [HttpRequestHeaders][]. As it does not contain a public constructor it will not be able to be converted from its Json representation back into an [HttpRequestHeaders][]; instead a [JsonSerializationException][] will be thrown with a message like: `"Cannot create and populate list type System.Net.Http.Headers.HttpRequestHeaders"`. + +[Object Property]: {{< ref "#object" >}} +[Json Property]: {{< ref "#json" >}} +[Settings Property]: {{< ref "#settings" >}} + +[Convert a List to Json (with Type information)]: {{< ref "#convert-a-list-to-json-with-type-information" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[JsonSerializationException]: {{< url path="JsonDotNet.JsonSerializationException" >}} + +[Convert Json To Object]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertJsonToObject.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Object]: {{< url path="Cortex.Reference.DataTypes.All.Object.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[List]: {{< url path="Cortex.Reference.DataTypes.Collections.List.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[Structure]: {{< url path="Cortex.Reference.DataTypes.Collections.Structure.MainDoc" >}} +[HttpRequestHeaders]: {{< url path="Cortex.Reference.DataTypes.MostCommon.HttpRequestHeaders" >}} +[JsonSerializerSettings]: {{< url path="Cortex.Reference.DataTypes.Json.JsonSerializerSettings.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/logs/_index.md b/content/en/docs/2024.11/Reference/Blocks/logs/_index.md new file mode 100644 index 000000000..e051eb041 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/logs/_index.md @@ -0,0 +1,5 @@ +--- +title: "Logs" +linkTitle: "Logs" +description: "Blocks related to creating Logs." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/logs/log-event/_index.md b/content/en/docs/2024.11/Reference/Blocks/logs/log-event/_index.md new file mode 100644 index 000000000..1880a3453 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/logs/log-event/_index.md @@ -0,0 +1,5 @@ +--- +title: "Log Event" +linkTitle: "Log Event" +description: "Log events to the filesystem." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/logs/log-event/log-event-block.md b/content/en/docs/2024.11/Reference/Blocks/logs/log-event/log-event-block.md new file mode 100644 index 000000000..28f34a733 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/logs/log-event/log-event-block.md @@ -0,0 +1,554 @@ +--- +title: "Log Event" +linkTitle: "Log Event" +description: "Logs an event to the filesystem." +--- + +{{< figure src="/blocks/Cortex_Blocks_Logs_LogEvent_LogEventBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Logs.LogEvent.LogEventBlock)

+ +## Description + +Logs an [event][EventDetails Property] to the filesystem. + +Additional options can be specified: + +* [Event Type][EventType Property] can be specified to define the type of event being logged. +* [Event Severity][EventSeverity Property] can be specified to define the severity of the event being logged. +* [Started At][StartedAt Property] can be specified to define the Date and Time the event being logged started. +* [Ended At][EndedAt Property] can be specified to define the Date and Time the event being logged ended. + +## Examples + +### Log an event + +This example will log details about all tasks of a multi-stage process that provisions a new user at a company. + +* Process: `"Provision New User"` + * Stage: `"Configure Active Directory"` + * Task: `"Add User to Azure Active Directory"` + * Task: `"Add User to On-Premise Active Directory"` + * Stage: `"Configure Email"` + * Task: `"Create Outlook Account"` + * Task: `"Create Default Signature"` + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Event Details][EventDetails Property] | `($)EventDetails`, with value `{"Process":{"Provision New User":{"Stages":[{"Configure Active Directory":{"Tasks":["Add User to Azure Active Directory","Add User to On-Premise Active Directory"]}},{"Configure Email":{"Tasks":["Create Outlook Account","Create Default Signature"]}}]}}}` | `($)EventDetails` is a variable of type [Structure][]. | +| [Event Type][EventType Property] | `($)EventType`, with value `"User Provisioning"` | `($)EventType` is a variable of type [String][]. | +| [Event Severity][EventSeverity Property] | `($)EventSeverity`, with value `EventSeverity.Information` | `($)EventSeverity` is a variable of type [Nullable][]<[EventSeverity][]>. | +| [Started At][StartedAt Property] | `($)StartedAt`, with value of [DateTimeOffset][] that has a text representation of `2021-11-15T10:05:32.0000000Z` | `($)StartedAt` is a variable of type [Nullable][]<[DateTimeOffset][]>. | +| [Ended At][EndedAt Property] | `($)EndedAt`, with value of [DateTimeOffset][] that has a text representation of `2021-11-15T10:06:12.0000000Z` | `($)EndedAt` is a variable of type [Nullable][]<[DateTimeOffset][]>. | + +#### Result + +Logging the event results in the following log being written: + +{{< highlight go "linenos=table,hl_lines=5 8-9 14-48,linenostart=1" >}} +{ + "@t": "2024-09-05T08:06:15.0000000Z", + "@mt": "{@Event}", + "Event": { + "Type": "User Provisioning", + "Method": "", + "Duration": { + "StartedAt": "2024-09-05T08:05:32.0000000+00:00", + "EndedAt": "2024-09-05T08:06:12.0000000+00:00", + "InSeconds": 40, + "$type": "Cortex.Core.Logging.Common.EventDurationDetails, Cortex.Core.Logging" + }, + "Details": { + "Process": { + "Provision New User": { + "Stages": { + "$values": [ + { + "Configure Active Directory": { + "Tasks": { + "$values": [ + "Add User to Azure Active Directory", + "Add User to On-Premise Active Directory" + ], + "$type": "System.Collections.Generic.List`1[[System.Object, System.Private.CoreLib]], System.Private.CoreLib" + }, + "$type": "Cortex.DataTypes.Dictionaries.Structure, Cortex.Core.DataTypes" + }, + "$type": "Cortex.DataTypes.Dictionaries.Structure, Cortex.Core.DataTypes" + }, + { + "Configure Email": { + "$values": [ + "Create Outlook Account", + "Create Default Signature" + ], + "$type": "System.Collections.Generic.List`1[[System.Object, System.Private.CoreLib]], System.Private.CoreLib" + }, + "$type": "Cortex.DataTypes.Dictionaries.Structure, Cortex.Core.DataTypes" + } + ], + "$type": "System.Collections.Generic.List`1[[System.Object, System.Private.CoreLib]], System.Private.CoreLib" + }, + "$type": "Cortex.DataTypes.Dictionaries.Structure, Cortex.Core.DataTypes" + }, + "$type": "Cortex.DataTypes.Dictionaries.Structure, Cortex.Core.DataTypes" + }, + "$type": "Cortex.DataTypes.Dictionaries.Structure, Cortex.Core.DataTypes" + }, + "Tags": { + "Cortex": { + "Tenant.Name": "default", + "System.Name": "default", + "Package.Name": "PackageName", + "Package.Version": "57b45289-cc81-478c-a176-88d0a6104fb2", + "Flow.Id": "c038b421-c7f0-4793-86ad-7bb81801ab9f", + "Flow.Name": "FlowName", + "Execution.Id": "97a98060-acc2-4d11-bc7b-14989d4cf624", + "Workspace.Id": "cf358365-76d8-4100-b58e-4c023563083f", + "Block.Id": "422c42a2-4402-430b-8c96-8f0818f2b324", + "Block.Name": "LogEventBlock", + "$type": "System.Collections.Generic.Dictionary`2[[System.String, System.Private.CoreLib],[System.Object, System.Private.CoreLib]], System.Private.CoreLib" + }, + "Custom": { + "$type": "System.Collections.Generic.Dictionary`2[[System.String, System.Private.CoreLib],[System.Object, System.Private.CoreLib]], System.Private.CoreLib" + }, + "$type": "Cortex.Core.Logging.Common.EventTags, Cortex.Core.Logging" + }, + "Correlation": { + "TraceId": "1fd6e5080a25f26b498816933ed91886", + "SpanId": "88f321981aa42963", + "ParentSpanId": "90e588941f7e20ba", + "$type": "Cortex.Core.Logging.Common.EventCorrelationDetails, Cortex.Core.Logging" + }, + "Platform": { + "Node": { + "Name": "CustomerName.MachineName", + "IpAddressOrFqdn": "192.168.1.1", + "Versions": { + "OperatingSystem": "Microsoft Windows NT 10.0.20348.0", + "DotNet": "6.0", + "ServiceFabric": "10.0.1816.9590", + "NServiceBus": "8.1.6", + "Rabbitmq": "3.10.5", + "Erlang": "Erlang OTP 24.0 (12.0)", + "$type": "System.Collections.Generic.Dictionary`2[[System.String, System.Private.CoreLib],[System.String, System.Private.CoreLib]], System.Private.CoreLib" + }, + "$type": "Cortex.Core.Logging.ServiceFabric.NodeDetails, Cortex.Core.Logging" + }, + "Application": { + "Name": "fabric:/Execution/Services/Engine/32.2.4.24340", + "Type": "Cortex.Innovation.Execution", + "Version": "19.1.2.24340", + "$type": "Cortex.Core.Logging.ServiceFabric.ServiceFabricApplicationDetails, Cortex.Core.Logging" + }, + "Service": { + "Name": "fabric:/Execution/Services/Engine/32.2.4.24340/Blocks/46.0.4.24340", + "Type": "Execution", + "Version": "19.1.2.24340", + "PartitionId": "5bf4dc16-4076-46bf-9d20-31cd6d878736", + "ReplicaOrInstanceId": "133697171066478481", + "$type": "Cortex.Core.Logging.ServiceFabric.ServiceFabricServiceDetails, Cortex.Core.Logging" + }, + "Version": "2024.7", + "$type": "Cortex.Core.Logging.ServiceFabric.PlatformDetails, Cortex.Core.Logging" + }, + "$type": "Cortex.Core.Logging.Common.StructuredEventLog, Cortex.Core.Logging" + }, + "SourceContext": "Cortex.ServiceFabric.Service.Execution.ExecutionService" +} +{{< / highlight >}} + +For information about the format of the logs written, see [Anatomy of a Log][]. + +For information about where the logs are written to, see [Configuring Logging][]. + +*** + +## Properties + +### Event Details + +The [Event Details][EventDetails Property] to log. + +[Event Details][EventDetails Property] can be any object of any data type; it does not have to be a [String][]. Using a data type like a [Structure][] allows you to [create richer logs with a more defined format][Anatomy Of A Log]. This makes them easier to consume, process and query by other systems that consume logs, such as [Grafana][], [ElasticSearch][] and [Splunk][], which are commonly used for log analysis, reporting and dashboarding. + +| | | +|--------------------|---------------------------| +| Data Type | [dynamic][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)EventDetails` with no value | + +### Event Type + +[Event Type][EventType Property] can be specified to define the type of event being logged. + +[Event Type][EventType Property] is a free format text property. If left blank, `null`, or empty (i.e. `""`) it will default to `Cortex.Blocks.Logs.LogEvent.LogEventBlock`. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | No value (defaults to `null`) | + +### Event Severity + +[Event Severity][EventSeverity Property] can be specified to define the severity of the event being logged. + +[Event Severity][EventSeverity Property] can be any of the following predefined values: + +* `EventSeverity.Verbose` - Logs that contain the most detailed messages. These messages may contain sensitive application data. These logs should never be enabled in a production environment. +* `EventSeverity.Debug` - Logs that are used for interactive investigation during development. These logs should primarily contain information useful for debugging and have no long-term value. +* `EventSeverity.Information` - Logs that track the general path of the flow execution. These logs should have long-term value. +* `EventSeverity.Warning` - Logs that highlight an abnormal or unexpected event in the path of the flow execution, but do not otherwise cause the flow execution to exit. +* `EventSeverity.Error` - Logs that highlight when the current flow execution exits due to an error. These should indicate a failure in the current flow execution, not a service-wide or process-wide failure. +* `EventSeverity.Fatal` - Logs that describe an unrecoverable service or process error, or a catastrophic failure that requires immediate attention. + +[Event Severity][EventSeverity Property] can also be left blank or set to `null`, in which case it will default to `EventSeverity.Information`. + +Logs with an [Event Severity][EventSeverity Property] of `EventSeverity.Information`, have the event severity omitted from the log that is written to the filesystem. This is to save disk space, as typically the highest volume of logs produced are Information logs. This cannot be changed and is a restriction of the underlying logging system used. All non-Information logs do include the event severity in the log that is written to the filesystem. + +| | | +|--------------------|---------------------------| +| Data Type | [Nullable][]<[EventSeverity][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `Information` | + +### Started At + +[Started At][StartedAt Property] can be specified to define the Date and Time the event being logged started. + +Its text representation will be in the [ISO 8601 Standard][] (e.g. `2021-11-05T08:48:08.0307614+00:00`). + +If [Started At][StartedAt Property] is left blank or set to `null`, a value of `null` will be logged. + +For more information about Date and Time, please see [Working with Date and Time][]. + +| | | +|--------------------|---------------------------| +| Data Type | [Nullable][]<[DateTimeOffset][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | `DateTimeOffset.UtcNow` | + +### Ended At + +[Ended At][EndedAt Property] can be specified to define the Date and Time the event being logged ended. + +Its text representation will be in the [ISO 8601 Standard][] (e.g. `2021-11-05T08:48:08.0307614+00:00`). + +If [Ended At][EndedAt Property] is left blank or set to `null`, a value of `null` will be logged. + +For more information about Date and Time, please see [Working with Date and Time][]. + +| | | +|--------------------|---------------------------| +| Data Type | [Nullable][]<[DateTimeOffset][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | `DateTimeOffset.UtcNow` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [ArgumentException][] | Thrown when [Event Severity][EventSeverity Property] is not one of the specified [EventSeverity][] types (e.g. `(EventSeverity)10`). | +| [PropertyNullException][] | Thrown when [Event Details][EventDetails Property] is `null`. | + +## Remarks + +### Configuring Logging + +Log settings exist for the following {{% ctx %}} Innovation Services: + +| Service | Default File Location | Description | +|----------------------------|---------------------------------------|------------------------------------------------------------------------------------------------------------------------| +| `Execution Service` | `\appsettings.json` | Execution Service is used to execute published flows in a runtime environment (e.g. Development, UAT, Production) | + +An example of the log settings can be found below (some settings that do not need to be modified have been omitted): + +{{< highlight go "linenos=table,hl_lines=5 11-15,linenostart=1" >}} +{ + "Cortex.Blocks.Logs": { + "Using": [ "Serilog.Sinks.File" ], + "MinimumLevel": { + "Default": "Verbose" + }, + "WriteTo": [ + { + "Name": "File", + "Args": { + "path": "%ProgramData%/Cortex/Logging/LogEventBlock-.json", + "rollingInterval": "Day", + "fileSizeLimitBytes": 50000000, + "rollOnFileSizeLimit": true, + "retainedFileCountLimit": 365 + } + } + ] + } +} +{{< / highlight >}} + +A list of the main log settings (highlighted above) and an accompanying description can be found below: + +| Log Setting | Default Value | Description | +|-------------|---------------|-------------| +| `Default` | `"Verbose"` | The default minimum log level that will be logged.

Possible options are `"Verbose"`, `"Debug"`, `"Information"`, `"Warning"`, `"Error"`, `"Fatal"`.

The order of log levels is `"Verbose"->"Debug"->"Information"->"Warning"->"Error"->"Fatal"`. When setting the default log level, that level and every level to its right will be logged. | +| `path` | `"%ProgramData%/Cortex/Logging/LogEventBlock-.json"` | The location that logs will be written to.

This value supports use of environment variables, as seen in the default value.

If any part of the location does not exist, the logging will attempt to create it.

The file names written will include a date format after the `-` and before `.json` (e.g. `"LogEventBlock-yyyyMMdd.json"` -> `"LogEventBlock-20210921.json"`)

The date format used will be decided by the value specified in `rollingInterval`.

The file name may also include a file count number and is added automatically to make sure file names are unique. This can happen if `rollOnFileSizeLimit` is set to `true` and a log file reaches the size specified in `fileSizeLimitBytes`. It can also happen if the log file is locked by another process, preventing it from being written to. | +| `rollingInterval` | `"Day"` | The time interval at which the logging system will create and start logging to a new log file.

Possible options are `"Infinite"`, `"Year"`, `"Month"`, `"Day"`, `"Hour"`, `"Minute"`.

`Infinite` means that the log files never roll over based on a time interval. | +| `fileSizeLimitBytes` | `50000000` | The maximum file size in bytes that the loggging system will write to. Once this size is exceeded the logging system will create and start logging to a new log file.

`Null` can be used to mean unlimited size.

`rollOnFileSizeLimit` must be set to `true` for this setting to take effect. | +| `rollOnFileSizeLimit` | `true` | Whether the loggging system should start creating a new log file if the current one reaches the maximum file size specified in `fileSizeLimitBytes`.

Possible options are `true` and `false`. | +| `retainedFileCountLimit` | `365` | The maximum number of files to retain on disk. Once this number is reached, the loggging system will start delete the oldest file. | + +Please note that if the appsetting.json file cannot be found for one of the services, the logger will use the same default settings specified above. + +### Anatomy of a Log + +The format of the logs written by this block are the same as the logs written by the rest of the {{% ctx %}} Innovation Services. This is to ensure logging is consistent and done one way within {{% ctx %}}. Hopefully this will make it easier to work with logging, and also make it easier to gain a holistic picture into what has happened to a flow execution throughout its entire lifecycle (i.e. from initial request to returning the response to the caller), rather than just what happens inside of the flow. + +An example log can be found below: + +```json +{ + "@t": "2024-09-05T08:06:15.0000000Z", + "@mt": "{@Event}", + "@l": "Debug", + "Event": { + "Type": "User Provisioning", + "Method": "", + "Duration": { + "StartedAt": "2024-09-05T08:05:32.0000000+00:00", + "EndedAt": "2024-09-05T08:06:12.0000000+00:00", + "InSeconds": 40, + "$type": "Cortex.Core.Logging.Common.EventDurationDetails, Cortex.Core.Logging" + }, + "Details": { + "Process": { + "Provision New User": { + "Stages": { + "$values": [ + { + "Configure Active Directory": { + "Tasks": { + "$values": [ + "Add User to Azure Active Directory", + "Add User to On-Premise Active Directory" + ], + "$type": "System.Collections.Generic.List`1[[System.Object, System.Private.CoreLib]], System.Private.CoreLib" + }, + "$type": "Cortex.DataTypes.Dictionaries.Structure, Cortex.Core.DataTypes" + }, + "$type": "Cortex.DataTypes.Dictionaries.Structure, Cortex.Core.DataTypes" + }, + { + "Configure Email": { + "$values": [ + "Create Outlook Account", + "Create Default Signature" + ], + "$type": "System.Collections.Generic.List`1[[System.Object, System.Private.CoreLib]], System.Private.CoreLib" + }, + "$type": "Cortex.DataTypes.Dictionaries.Structure, Cortex.Core.DataTypes" + } + ], + "$type": "System.Collections.Generic.List`1[[System.Object, System.Private.CoreLib]], System.Private.CoreLib" + }, + "$type": "Cortex.DataTypes.Dictionaries.Structure, Cortex.Core.DataTypes" + }, + "$type": "Cortex.DataTypes.Dictionaries.Structure, Cortex.Core.DataTypes" + }, + "$type": "Cortex.DataTypes.Dictionaries.Structure, Cortex.Core.DataTypes" + }, + "Tags": { + "Cortex": { + "Tenant.Name": "default", + "System.Name": "default", + "Package.Name": "PackageName", + "Package.Version": "57b45289-cc81-478c-a176-88d0a6104fb2", + "Flow.Id": "c038b421-c7f0-4793-86ad-7bb81801ab9f", + "Flow.Name": "FlowName", + "Execution.Id": "97a98060-acc2-4d11-bc7b-14989d4cf624", + "Workspace.Id": "cf358365-76d8-4100-b58e-4c023563083f", + "Block.Id": "422c42a2-4402-430b-8c96-8f0818f2b324", + "Block.Name": "LogEventBlock", + "$type": "System.Collections.Generic.Dictionary`2[[System.String, System.Private.CoreLib],[System.Object, System.Private.CoreLib]], System.Private.CoreLib" + }, + "Custom": { + "$type": "System.Collections.Generic.Dictionary`2[[System.String, System.Private.CoreLib],[System.Object, System.Private.CoreLib]], System.Private.CoreLib" + }, + "$type": "Cortex.Core.Logging.Common.EventTags, Cortex.Core.Logging" + }, + "Correlation": { + "TraceId": "1fd6e5080a25f26b498816933ed91886", + "SpanId": "88f321981aa42963", + "ParentSpanId": "90e588941f7e20ba", + "$type": "Cortex.Core.Logging.Common.EventCorrelationDetails, Cortex.Core.Logging" + }, + "Platform": { + "Node": { + "Name": "CustomerName.MachineName", + "IpAddressOrFqdn": "192.168.1.1", + "Versions": { + "OperatingSystem": "Microsoft Windows NT 10.0.20348.0", + "DotNet": "6.0", + "ServiceFabric": "10.0.1816.9590", + "NServiceBus": "8.1.6", + "Rabbitmq": "3.10.5", + "Erlang": "Erlang OTP 24.0 (12.0)", + "$type": "System.Collections.Generic.Dictionary`2[[System.String, System.Private.CoreLib],[System.String, System.Private.CoreLib]], System.Private.CoreLib" + }, + "$type": "Cortex.Core.Logging.ServiceFabric.NodeDetails, Cortex.Core.Logging" + }, + "Application": { + "Name": "fabric:/Execution/Services/Engine/32.2.4.24340", + "Type": "Cortex.Innovation.Execution", + "Version": "19.1.2.24340", + "$type": "Cortex.Core.Logging.ServiceFabric.ServiceFabricApplicationDetails, Cortex.Core.Logging" + }, + "Service": { + "Name": "fabric:/Execution/Services/Engine/32.2.4.24340/Blocks/46.0.4.24340", + "Type": "Execution", + "Version": "19.1.2.24340", + "PartitionId": "5bf4dc16-4076-46bf-9d20-31cd6d878736", + "ReplicaOrInstanceId": "133697171066478481", + "$type": "Cortex.Core.Logging.ServiceFabric.ServiceFabricServiceDetails, Cortex.Core.Logging" + }, + "Version": "2024.7", + "$type": "Cortex.Core.Logging.ServiceFabric.PlatformDetails, Cortex.Core.Logging" + }, + "$type": "Cortex.Core.Logging.Common.StructuredEventLog, Cortex.Core.Logging" + }, + "SourceContext": "Cortex.ServiceFabric.Service.Execution.ExecutionService" +} +``` + +A list of each of the log's properties and an accompanying description can be found below: + +| Log Property | Description | +|------------------------------------------------|---------------------------------------------------------------| +| `@t` | The date and time the log was written. The format is [ISO 8601 Standard][]. | +| `@mt` | The message template for the log. This is set to log the entire Event. | +| `@l` | The level for the log. The value of [Event Severity][EventSeverity Property] is used here. | +| `Event` | The event that was logged. | +| `Event.Type` | The type of event that was logged. This can be used for log analysis and reporting. The value of [Event Type][EventType Property] is used here. | +| `Event.Method` | Not currently used for logs generated by the Log Event block. | +| `Event.Duration` | Contains the date and time the event started at, ended at, and its duration. | +| `Event.Duration.StartedAt` | The date and time the event started. The format is [ISO 8601 Standard][]. The value of [Started At][StartedAt Property] is used here. | +| `Event.Duration.EndedAt` | The date and time the event ended. The format is [ISO 8601 Standard][]. The value of [Ended At][EndedAt Property] is used here. | +| `Event.Duration.InSeconds` | The duration of the event in seconds and is calculated using `Event.Duration.StartedAt` and `Event.Duration.EndedAt` . | +| `Event.Duration.$type` | The .NET data type used to represent the duration data. This can be ignored and is an artefact of the underlying implementation. | +| `Event.Details` | Contains the details of the event. The value of [Event Details][EventDetails Property] is written as a child property of this (e.g. in this example `Event.Details.Process`). | +| `Event.Details.$type` | The .NET data type used to represent the event details data. This can be ignored and is an artefact of the underlying implementation. | +| `Event.Tags` | Contains tags generated by the {{% ctx %}} platform as well as tags generated by the automation solution running on the {{% ctx %}} platform. | +| `Event.Tags.Cortex` | Contains tags generated by the {{% ctx %}} platform. | +| `Event.Tags.Cortex.Tenant.Name` | The name of the tenant the flow that generated this log belongs to. | +| `Event.Tags.Cortex.System.Name` | The name of the system the flow that generated this log belongs to. | +| `Event.Tags.Cortex.Package.Name` | The name of the package containing the flow that generated this log. | +| `Event.Tags.Cortex.Package.Version` | The version of the package containing the flow that generated this log. | +| `Event.Tags.Cortex.Flow.Id` | The ID of the flow containing the block that generated this log. | +| `Event.Tags.Cortex.Flow.Name` | The name of the flow containing the block that generated this log. | +| `Event.Tags.Cortex.Execution.Id` | The ID of the execution that generated this log. | +| `Event.Tags.Cortex.Workspace.Id` | The ID of the workspace containing the block that generated this log. | +| `Event.Tags.Cortex.Block.Id` | The ID of the block that generated this log. | +| `Event.Tags.Cortex.Block.Name` | The name of the block that generated this log. | +| `Event.Tags.Cortex.$type` | The .NET data type used to represent the {{% ctx %}} tags data. This can be ignored and is an artefact of the underlying implementation. | +| `Event.Tags.Custom` | Contains custom tags generated by the automation solution running on the {{% ctx %}} platform. | +| `Event.Tags.Custom.$type` | The .NET data type used to represent the custom tags data. This can be ignored and is an artefact of the underlying implementation. | +| `Event.Tags.$type` | The .NET data type used to represent the tags data. This can be ignored and is an artefact of the underlying implementation. | +| `Event.Correlation` | Contains details that can be used to correlate related events. E.g. The act of starting a new flow execution may result in multiple {{% ctx %}} Innovation Services processing the event. As a result, each service may write its own logs, and additionally the flow developer may also write out multiple logs during the flow execution. The Correlation details allow all of these logs to easily be correlated back together when performing log analysis and reporting to gain a full picture of everything that happened. | +| `Event.Correlation.TraceId` | ID common to all related logs, so they can be easily correlated together. | +| `Event.Correlation.SpanId` | Unique ID for each log, so tools like [Grafana][] can display a call stack, showing each step that occurred when processing an event. | +| `Event.Correlation.ParentSpanId` | The ID of the step that called this step of processing, so tools like [Grafana][] can display a call stack, showing each step that occurred when processing an event. | +| `Event.Correlation.$type` | The .NET data type used to represent the correlation data. This can be ignored and is an artefact of the underlying implementation. | +| `Event.Platform` | Contains the details about the platform in which the log was written. | +| `Event.Platform.Node` | Contains the details about the node in which the log was written. | +| `Event.Platform.Node.Name` | The name of the node in which the log was written. | +| `Event.Platform.Node.IpAddressOrFqdn` | The IP Address or Fully Qualified Domain Name of the node in which the log was written. | +| `Event.Platform.Node.Versions` | Contains the details about the versions of software running on the node in which the log was written. | +| `Event.Platform.Node.Versions.OperatingSystem` | The name and version of the Operating system on the node in which the log was written. | +| `Event.Platform.Node.Versions.DotNet` | The version of .NET used by the node in which the log was written. | +| `Event.Platform.Node.Versions.ServiceFabric` | The version of Service Fabric used by the node in which the log was written. | +| `Event.Platform.Node.Versions.NServiceBus` | The version of NServiceBus used by the node in which the log was written. | +| `Event.Platform.Node.Versions.Rabbitmq` | The version of RabbitMQ used by the node in which the log was written. | +| `Event.Platform.Node.Versions.Erlang` | The version of Erlang used by the node in which the log was written. | +| `Event.Platform.Node.Versions.$type` | The .NET data type used to represent the platform node version data. This can be ignored and is an artefact of the underlying implementation. | +| `Event.Platform.Node.$type` | The .NET data type used to represent the platform node data. This can be ignored and is an artefact of the underlying implementation. | +| `Event.Platform.Application` | Contains the details of the application in which the log was written. | +| `Event.Platform.Application.Name` | The name of the application in which the log was written. | +| `Event.Platform.Application.Type` | The type of the application in which the log was written. | +| `Event.Platform.Application.Version` | The version of the application type in which the log was written. | +| `Event.Platform.Application.$type` | The .NET data type used to represent the platform application data. This can be ignored and is an artefact of the underlying implementation. | +| `Event.Platform.Service` | Contains the details of the service in which the log was written. | +| `Event.Platform.Service.Name` | The name of the service in which the log was written. | +| `Event.Platform.Service.Type` | The type of the service in which the log was written. | +| `Event.Platform.Service.Version` | The version of the service type in which the log was written. | +| `Event.Platform.Service.PartitionId` | The Partition ID of the service in which the log was written. | +| `Event.Platform.Service.ReplicaOrInstanceId` | The Replica or Instance ID of the service in which the log was written. | +| `Event.Platform.Service.$type` | The .NET data type used to represent the service data. This can be ignored and is an artefact of the underlying implementation. | +| `Event.Platform.Version` | The version of {{% ctx %}} that was used to write the log. | +| `Event.Platform.$type` | The .NET data type used to represent the platform data. This can be ignored and is an artefact of the underlying implementation. | +| `Event.$type` | The .NET data type used to represent the event data. This can be ignored and is an artefact of the underlying implementation. | +| `SourceContext` | The .NET data type of the Execution Service. This can be ignored and is an artefact of the underlying implementation. | +### Null or Empty Event Type + +If [Event Type][EventType Property] is left blank, `null`, or empty (i.e. `""`) it will default to `Cortex.Blocks.Logs.LogEvent.LogEventBlock`. + +### Null Event Severity + +If [Event Severity][EventSeverity Property] is left blank or set to `null`, it will default to `EventSeverity.Information`. + +### Null Started At + +If [Started At][StartedAt Property] is left blank or set to `null`, a value of `null` will be logged. + +### Null Ended At + +If [Ended At][EndedAt Property] is left blank or set to `null`, a value of `null` will be logged. + +[EventDetails Property]: {{< ref "#event-details" >}} +[EventType Property]: {{< ref "#event-type" >}} +[EventSeverity Property]: {{< ref "#event-severity" >}} +[StartedAt Property]: {{< ref "#started-at" >}} +[EndedAt Property]: {{< ref "#ended-at" >}} + +[Configuring Logging]: {{< ref "#configuring-logging" >}} +[Anatomy of a Log]: {{< ref "#anatomy-of-a-log" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[ArgumentException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentException" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[ISO 8601 Standard]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.DateAndTimeFormatting.ISO8601Standard" >}} +[Working with Date and Time]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.MainDoc" >}} + +[Grafana]: {{< url path="Grafana.MainDoc" >}} +[ElasticSearch]: {{< url path="ElasticSearch.MainDoc" >}} +[Splunk]: {{< url path="Splunk.MainDoc" >}} + +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[Structure]: {{< url path="Cortex.Reference.DataTypes.Collections.Structure.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[DateTimeOffset]: {{< url path="Cortex.Reference.DataTypes.DateAndTime.DateTimeOffset.MainDoc" >}} +[Nullable]: {{< url path="Cortex.Reference.DataTypes.Other.Nullable.MainDoc" >}} +[EventSeverity]: {{< url path="Cortex.Reference.DataTypes.Logs.EventSeverity.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/loops/_index.md b/content/en/docs/2024.11/Reference/Blocks/loops/_index.md new file mode 100644 index 000000000..42361b03e --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/loops/_index.md @@ -0,0 +1,5 @@ +--- +title: "Loops" +linkTitle: "Loops" +description: "Blocks used to perform looping." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/loops/for-each/_index.md b/content/en/docs/2024.11/Reference/Blocks/loops/for-each/_index.md new file mode 100644 index 000000000..8d9e8c1bd --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/loops/for-each/_index.md @@ -0,0 +1,5 @@ +--- +title: "For Each Loop" +linkTitle: "For Each Loop" +description: "Blocks used to loop through the items in a collection (i.e. Lists, Dictionaries and Structures)." +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Blocks/loops/for-each/for-each-loop-block.md b/content/en/docs/2024.11/Reference/Blocks/loops/for-each/for-each-loop-block.md new file mode 100644 index 000000000..882a7bbfe --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/loops/for-each/for-each-loop-block.md @@ -0,0 +1,186 @@ +--- +title: "For Each Loop" +linkTitle: "For Each Loop" +description: "Loops through all items in the specified collection (i.e. Lists, Dictionaries and Structures)." +--- + +{{< figure src="/blocks/Cortex_Blocks_Loops_ForEach_ForEachLoopBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Loops.ForEach.ForEachLoopBlock)

+ +## Description + +Loops through all items in the specified [Collection][Collection Property] (i.e. Lists, Dictionaries and Structures). + +The `"Index"` and `"Value"` of the current item are returned as properties of a [Structure][], which is saved to the [Current Iteration][CurrentIteration Property]. + +## Examples + +### Loop through all items in a list + +This example will loop through all items in `["Item1", "Item2", "Item3"]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Collection][Collection Property] | `($)Collection`, with value `["Item1", "Item2", "Item3"]` | `($)Collection` is a variable of type [IList][]<[String][]> | +| [Current Iteration][CurrentIteration Property] | `($)CurrentIteration`, with no value | `($)CurrentIteration` is a variable of type [Structure][] | + +#### Result + +Looping through all items in `["Item1", "Item2", "Item3"]` will result in `3` loops with `($)CurrentIteration` being updated to the following: + +1st loop + +```json +{ + "Index": 0, + "Value": "Item1" +} +``` + +2nd loop + +```json +{ + "Index": 1, + "Value": "Item2" +} +``` + +3rd loop + +```json +{ + "Index": 2, + "Value": "Item3" +} +``` + +*** + +### Loop through all items in a dictionary or structure + +This example will loop through all items in `{"Key1": "Value1", "Key2": "Value2", "Key3": "Value3"}`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Collection][Collection Property] | `($)Collection`, with value `{"Key1": "Value1", "Key2": "Value2", "Key3": "Value3"}` | `($)Collection` is a variable of type [IDictionary][]<[String][], [String][]> or [Structure][] | +| [Current Iteration][CurrentIteration Property] | `($)CurrentIteration`, with no value | `($)CurrentIteration` is a variable of type [Structure][] | + +#### Result + +Looping through all items in `{"Key1": "Value1", "Key2": "Value2", "Key3": "Value3"}` will result in `3` loops with `($)CurrentIteration` being updated to the following: + +1st loop + +```json +{ + "Index": 0, + "Value": { + "Key": "Key1", + "Value": "Value1" + } +} +``` + +2nd loop + +```json +{ + "Index": 1, + "Value": { + "Key": "Key2", + "Value": "Value2" + } +} +``` + +3rd loop + +```json +{ + "Index": 2, + "Value": { + "Key": "Key3", + "Value": "Value3" + } +} +``` + +*** + +## Properties + +### Collection + +The [Collection][Collection Property] to loop through. + +If [Collection][Collection Property] is empty (i.e. contains no items), no looping will occur. + +| | | +|--------------------|---------------------------| +| Data Type | [IEnumerable][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Collection` with no value | + +### Current Iteration + +The [Current Iteration][CurrentIteration Property] the looping is at. + +[Current Iteration][CurrentIteration Property] is set to a [Structure] on each loop, containing the current item's `"Index"` and `"Value"`. `"Index"` is set to `0` on the first loop, and on each subsequent loop is incremented by `1`. + +Looping will continue whilst `"Index"` is less than the number of items in [Collection][Collection Property], with the flow execution exiting via the block's right port (blue loop icon). + +Once `"Index"` equals the number of items in [Collection][Collection Property], looping stops, the flow execution exits via the block's bottom port (green tick) and [Current Iteration][CurrentIteration Property] is reset to an empty [Structure][]. + +If [Current Iteration][CurrentIteration Property] `"Index"` is modified during a loop, it will automatically be set back to its original value immediately before the next loop begins. + +| | | +|--------------------|---------------------------| +| Data Type | [Structure][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)CurrentIteration` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyNullException][] | Thrown when [Collection][Collection Property] is `null`. | + +## Remarks + +### Empty Collection + +If [Collection][Collection Property] is empty (i.e. contains no items), no looping will occur. + +[Collection Property]: {{< ref "#collection" >}} +[CurrentIteration Property]: {{< ref "#current-iteration" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[IDictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Structure]: {{< url path="Cortex.Reference.DataTypes.Collections.Structure.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/loops/for/_index.md b/content/en/docs/2024.11/Reference/Blocks/loops/for/_index.md new file mode 100644 index 000000000..98ef5db5a --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/loops/for/_index.md @@ -0,0 +1,5 @@ +--- +title: "For Loop" +linkTitle: "For Loop" +description: "Blocks used to loop a specified number of times." +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Blocks/loops/for/for-loop-block.md b/content/en/docs/2024.11/Reference/Blocks/loops/for/for-loop-block.md new file mode 100644 index 000000000..8b2f4d4df --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/loops/for/for-loop-block.md @@ -0,0 +1,254 @@ +--- +title: "For Loop" +linkTitle: "For Loop" +description: "Loops a specified number of times based on a given start index, end index and increment." +--- + +{{< figure src="/blocks/Cortex_Blocks_Loops_For_ForLoopBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Loops.For.ForLoopBlock)

+ +## Description + +Loops a specified number of times based on a given [Start Index][StartIndex Property], [End Index][EndIndex Property] and [Increment][Increment Property]. + +## Examples + +### Loop between 0 and 2 incrementing by 1 + +This example will loop between `0` and `2` incrementing by `1` each loop. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Start Index][StartIndex Property] | `($)StartIndex`, with value `0` | `($)StartIndex` is a variable of type [Int32][] | +| [End Index][EndIndex Property] | `($)EndIndex`, with value `2` | `($)EndIndex` is a variable of type [Int32][] | +| [Increment][Increment Property] | `($)Increment`, with value `1` | `($)Increment` is a variable of type [Int32][] | +| [Current Index][CurrentIndex Property] | `($)CurrentIndex`, with value `0` | `($)CurrentIndex` is a variable of type [Int32][] that will be incremented by `($)Increment` each loop | + +#### Result + +Looping between `0` and `2` incrementing by `1` each loop will result in `3` loops with `($)CurrentIndex` being updated to the following: + +1st loop + +```json +0 +``` + +2nd loop + +```json +1 +``` + +3rd loop + +```json +2 +``` + +*** + +### Loop between 10 and 20 incrementing by 5 + +This example will loop between `10` and `20` incrementing by `5` each loop. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Start Index][StartIndex Property] | `($)StartIndex`, with value `10` | `($)StartIndex` is a variable of type [Int32][] | +| [End Index][EndIndex Property] | `($)EndIndex`, with value `20` | `($)EndIndex` is a variable of type [Int32][] | +| [Increment][Increment Property] | `($)Increment`, with value `5` | `($)Increment` is a variable of type [Int32][] | +| [Current Index][CurrentIndex Property] | `($)CurrentIndex`, with value `0` | `($)CurrentIndex` is a variable of type [Int32][] that will be incremented by `($)Increment` each loop | + +#### Result + +Looping between `10` and `20` incrementing by `5` each loop will result in `3` loops with `($)CurrentIndex` being updated to the following: + +1st loop + +```json +10 +``` + +2nd loop + +```json +15 +``` + +3rd loop + +```json +20 +``` + +*** + +### Loop between 20 and 10 incrementing by -5 + +This example will loop between `20` and `10` incrementing by `-5` each loop. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Start Index][StartIndex Property] | `($)StartIndex`, with value `20` | `($)StartIndex` is a variable of type [Int32][] | +| [End Index][EndIndex Property] | `($)EndIndex`, with value `10` | `($)EndIndex` is a variable of type [Int32][] | +| [Increment][Increment Property] | `($)Increment`, with value `-5` | `($)Increment` is a variable of type [Int32][] | +| [Current Index][CurrentIndex Property] | `($)CurrentIndex`, with value `0` | `($)CurrentIndex` is a variable of type [Int32][] that will be incremented by `($)Increment` each loop | + +#### Result + +Looping between `20` and `10` incrementing by `-5` each loop will result in `3` loops with `($)CurrentIndex` being updated to the following: + +1st loop + +```json +20 +``` + +2nd loop + +```json +15 +``` + +3rd loop + +```json +10 +``` + +*** + +## Properties + +### Start Index + +The [Start Index][StartIndex Property] the looping will start at. This is an inclusive index, which means the specified index will be included. + +For information about what an index is, please see [Indexes][]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `0` | + +### End Index + +The [End Index][EndIndex Property] the looping will end at. This is an inclusive index, which means the specified index will be included. + +For information about what an index is, please see [Indexes][]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `0` | + +### Increment + +The [Increment][Increment Property] to be added to [Current Index][CurrentIndex Property] every time the block loops. + +[Increment][Increment Property] can be: + +* A positive value if [Start Index][StartIndex Property] is less than [End Index][EndIndex Property]. +* A negative value if [Start Index][StartIndex Property] is greater than [End Index][EndIndex Property]. +* A positive or negative value if [Start Index][StartIndex Property] is equal to [End Index][EndIndex Property]. + +If any of the above are not `true` or [Increment][Increment Property] is `0` then an [InfiniteLoopException][] will be thrown the first time a flow execution executes this block. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `1` | + +### Current Index + +The [Current Index][CurrentIndex Property] the looping is at. + +[Current Index][CurrentIndex Property] initially gets set to the value of [Start Index][StartIndex Property] on the first loop, and on each subsequent loop is incremented by the value of [Increment][Increment Property]. + +If [Increment][Increment Property] is a positive value, the block will continue looping whilst [Current Index][CurrentIndex Property] is less than [End Index][EndIndex Property]; with the flow execution exiting via the block's right port (blue loop icon). + +If [Increment][Increment Property] is a negative value, the block will continue looping whilst [Current Index][CurrentIndex Property] is greater than [Start Index][StartIndex Property]; with the flow execution exiting via the block's right port (blue loop icon). + +When either of the above are not `true` the block stops looping, the flow execution exits via the block's bottom port (green tick) and [Current Index][CurrentIndex Property] is reset to `0` + +At this moment, there is a known limitation with [Current Index][CurrentIndex Property], which requires the variable used must have an [Int32][] value assigned to it before the block executes. If it does not then an [InvalidPropertyValueException][] will be thrown the first time a flow execution executes this block. + +For information about what an index is, please see [Indexes][]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)CurrentIndex` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [InfiniteLoopException][] | Thrown when [Increment][Increment Property] is `0`. See [Increment Is Zero][]. | +| | Thrown when [Increment][Increment Property] has a positive value and [Start Index][StartIndex Property] is greater than [End Index][EndIndex Property]. See [Increment Is Positive][]. | +| | Thrown when [Increment][Increment Property] has a negative value and [Start Index][StartIndex Property] is less than [End Index][EndIndex Property]. See [Increment Is Negative][]. | +| [InvalidPropertyValueException][] | Thrown when [Current Index][CurrentIndex Property] does not have an [Int32][] value assigned to it before the block executes. See [Value Is Invalid][]. | + +## Remarks + +### Start Index and End Index are inclusive + +The [Start Index][StartIndex Property] and [End Index][EndIndex Property] properties are both inclusive [indexes][], which means those indexes will be included in the looping range (e.g. if [Start Index][StartIndex Property] is `0` and [End Index][EndIndex Property] is `1`, the block will loop `2` times). + +### Start Index greater than End Index + +[Start Index][StartIndex Property] can be greater than [End Index][EndIndex Property]. If this is the case, [Increment][Increment Property] must be a negative value. See [Example][StartIndexGreaterThanEndIndex Example] above. + +### Known Limitations + +The variable used for [Current Index][CurrentIndex Property] must have an [Int32][] value assigned to it before the block executes. If it does not then an [InvalidPropertyValueException][] will be thrown the first time a flow execution executes this block. + +[StartIndex Property]: {{< ref "#start-index" >}} +[EndIndex Property]: {{< ref "#end-index" >}} +[Increment Property]: {{< ref "#increment" >}} +[CurrentIndex Property]: {{< ref "#current-index" >}} + +[StartIndexGreaterThanEndIndex Example]: {{< ref "#loop-between-20-and-10-incrementing-by--5" >}} + +[Indexes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Indexes.MainDoc" >}} +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[InfiniteLoopException]: {{< url path="Cortex.Reference.Exceptions.Loops.InfiniteLoopException.MainDoc" >}} +[Increment Is Zero]: {{< url path="Cortex.Reference.Exceptions.Loops.InfiniteLoopException.IncrementIsZero" >}} +[Increment Is Negative]: {{< url path="Cortex.Reference.Exceptions.Loops.InfiniteLoopException.IncrementIsNegative" >}} +[Increment Is Positive]: {{< url path="Cortex.Reference.Exceptions.Loops.InfiniteLoopException.IncrementIsPositive" >}} + +[InvalidPropertyValueException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.MainDoc" >}} +[Value Is Invalid]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.ValueIsInvalid" >}} + +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/microsoft365/_index.md b/content/en/docs/2024.11/Reference/Blocks/microsoft365/_index.md new file mode 100644 index 000000000..1b6a801db --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/microsoft365/_index.md @@ -0,0 +1,5 @@ +--- +title: "Microsoft365" +linkTitle: "Microsoft365" +description: "Blocks related to working with Microsoft365." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/microsoft365/outlook/_index.md b/content/en/docs/2024.11/Reference/Blocks/microsoft365/outlook/_index.md new file mode 100644 index 000000000..2de0946a1 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/microsoft365/outlook/_index.md @@ -0,0 +1,5 @@ +--- +title: "Outlook" +linkTitle: "Outlook" +description: "Blocks related to working with Outlook." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/microsoft365/outlook/send-email/_index.md b/content/en/docs/2024.11/Reference/Blocks/microsoft365/outlook/send-email/_index.md new file mode 100644 index 000000000..c12558811 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/microsoft365/outlook/send-email/_index.md @@ -0,0 +1,5 @@ +--- +title: "Send Email" +linkTitle: "Send Email" +description: "Blocks related to sending Emails." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/microsoft365/outlook/send-email/send-email-using-microsoft365-block.md b/content/en/docs/2024.11/Reference/Blocks/microsoft365/outlook/send-email/send-email-using-microsoft365-block.md new file mode 100644 index 000000000..cb700400a --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/microsoft365/outlook/send-email/send-email-using-microsoft365-block.md @@ -0,0 +1,278 @@ +--- +title: "Send Email Using Microsoft 365" +linkTitle: "Send Email Using Microsoft 365" +description: "Sends an email using the SMTP server hosted by Outlook." +--- + +{{< figure src="/blocks/Cortex_Blocks_Microsoft365_Outlook_SendEmail_SendEmailUsingMicrosoft365Block.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Microsoft365.Outlook.SendEmail.SendEmailUsingMicrosoft365Block)

+ +{{% alert type="information" title="Information" %}}Improvements to this page are planned for the future; this will include further examples and remarks.{{% /alert %}} + +## Description + +Connects to the [SMTP][] server hosted by [Outlook][] using the specified [Credentials][Credentials Property], and sends an [Email Message][Email Message Property]. + +This block only supports authentication via OAuth (using [Microsoft365OAuthCredentials][] or [Microsoft365OAuthCertificateCredentials][]), to send an email using basic authentication, see [Send Email Using SMTP Server][]. + +## Examples + +### Sending an email using client credentials + +This example will send an email from `sender@outlook.com` to `recipient@outlook.com` using the [SMTP][] server hosted by [Outlook][]. + +The OAuth mechanism in this example uses client credentials. Therefore, for this example to work correctly, the [Credentials][Credentials Property] provided must be a [Microsoft365OAuthCredentials][]. + +For more information on: + +- What each of the properties in the [Microsoft365OAuthCredentials][] needs to be, see [Microsoft365OAuthCredentials][] +- How to set up an [Outlook][] account so that this authentication mechanism can be used, see [Setting up an Outlook account for OAuth authentication using client credentials][] + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Email Message][Email Message Property] | `($)EmailMessage` with value `{"To": [{"Name": null, "Address": "recipient@outlook.com"}], "From": {"Name": null, "Address": "sender@outlook.com"}, "Cc": [], "Bcc": [], "Priority": null, "Subject": "Example email subject", "BodyFormat": null, "Body": "Example email body", "Attachments": []}`

In this example `($)EmailMessage` has been set up using the following [Expression][]:

`new EmailMessage(to: new List(){ new EmailAddress("recipient@outlook.com") }, from: new EmailAddress("sender@outlook.com"), cc: null, bcc: null, priority: null, subject: "Example email subject", bodyFormat: null, body: "Example email body", attachments: null)` | `($)EmailMessage` is a variable of type [EmailMessage][]

As [Priority][] and [BodyFormat][] are `null`, the email will be sent with a [Text][] body and [Normal][] priority.| +| [Credentials][Credentials Property] | `($)Credentials` with value `{"ClientId": "clientId", "ClientSecret": "encryptedClientSecret", "TenantId": "tenantId", ObjectId: "objectId"}`

In this example `($)Credentials` has been set up using the following [Expression][]:

`new Microsoft365OAuthCredentials(clientId: "clientId", clientSecret: "encryptedClientSecret", tenantId: "tenantId", objectId: "objectId")` | `($)Credentials` is a variable of type [Microsoft365OAuthCredentials][]

The [ClientSecret][ClientSecret Client Credentials] property in the [Microsoft365OAuthCredentials][] must be encrypted, for more information on how to encrypt the password, see [EncryptedText][]. | + +#### Result + +An email with [Normal][] priority is sent from `sender@outlook.com` to `recipient@outlook.com` with a subject of `"Example email subject"` and a [Text][] body of `"Example email body"`, and then the connection is closed. + +*** + +### Sending an email using certificate credentials + +This example will send an email from `sender@outlook.com` to `recipient@outlook.com` using the [SMTP][] server hosted by [Outlook][]. + +The OAuth mechanism in this example uses certificate credentials. Therefore, for this example to work correctly: + +- [Credentials][Credentials Property] provided must be a [Microsoft365OAuthCertificateCredentials][] +- [CertificatePath][] must be a path pointing to a certificate accessible from the server executing the flow + +For more information on: + +- What each of the properties in the [Microsoft365OAuthCertificateCredentials][] needs to be, see [Microsoft365OAuthCertificateCredentials][] +- How to set up an [Outlook][] account so that this authentication mechanism can be used, see [Setting up an Outlook account for OAuth authentication using certificate credentials][] + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Email Message][Email Message Property] | `($)EmailMessage` with value `{"To": [{"Name": null, "Address": "recipient@outlook.com"}], "From": {"Name": null, "Address": "sender@outlook.com"}, "Cc": [], "Bcc": [], "Priority": null, "Subject": "Example email subject", "BodyFormat": null, "Body": "Example email body", "Attachments": []}`

In this example `($)EmailMessage` has been set up using the following [Expression][]:

`new EmailMessage(to: new List(){ new EmailAddress("recipient@outlook.com") }, from: new EmailAddress("sender@outlook.com"), cc: null, bcc: null, priority: null, subject: "Example email subject", bodyFormat: null, body: "Example email body", attachments: null)` | `($)EmailMessage` is a variable of type [EmailMessage][]

As [Priority][] and [BodyFormat][] are `null`, the email will be sent with a [Text][] body and [Normal][] priority.| +| [Credentials][Credentials Property] | `($)Credentials` with value `{"CertificatePath": "C:\\certificate.pfx", "CertificatePassword": "encryptedPassword", "ClientId": "clientId", "TenantId": "tenantId", "ObjectId": "objectId"}`

In this example `($)Credentials` has been set up using the following [Expression][]:

`new Microsoft365OAuthCertificateCredentials(certificatePath: @"C:\certificate.pfx", certificatePassword: "encryptedPassword", clientId: "clientId", tenantId: "tenantId", objectId: "objectId")` | `($)Credentials` is a variable of type [Microsoft365OAuthCertificateCredentials][]

The [CertificatePassword][] property in the [Microsoft365OAuthCertificateCredentials][] must be encrypted, for more information on how to encrypt the password, see [EncryptedText][]. | + +#### Result + +An email with [Normal][] priority is sent from `sender@outlook.com` to `recipient@outlook.com` with a subject of `"Example email subject"` and a [Text][] body of `"Example email body"`, and then the connection is closed. + +*** + +## Properties + +### Email Message + +The [Email Message][Email Message Property] to send via the [SMTP][] server hosted by [Outlook][]. This property contains all of the information in relation to the email to be sent, these are: + +- [To][] +- [From][] +- [Cc][] +- [Bcc][] +- [Priority][] +- [Subject][] +- [BodyFormat][] +- [Body][] +- [Attachments][] + +Note that if the properties [Priority][] and [BodyFormat][] are set to `null` when [creating an EmailMessage using a constructor][], the email will be sent with [Normal][] priority and with a [Text][] body. + +For more detailed information on each of the properties, see [EmailMessage][]. + +||| +|----------|----------| +| Data Type | [EmailMessage][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [EmailMessage][] with value shown below: | + +```json +{ + "To": [ + { + "Name": null, + "Address": "" + } + ], + "From": { + "Name": "", + "Address": "" + }, + "Cc": [], + "Bcc": [], + "Priority": "EmailMessagePriority.Normal", + "Subject": "", + "BodyFormat": "EmailMessageBodyFormat.Text", + "Body": "", + "Attachments": [] +} +``` + +### Credentials + +The [Credentials][Credentials Property] object that includes all of the information required to connect to an [SMTP][] server hosted by [Outlook][]. There are two data types that can be used, which depends on the desired OAuth mechanism: + +- [Microsoft365OAuthCredentials][]: Using client credentials. For information on: + - What each of the properties in the [Microsoft365OAuthCredentials][] needs to be, see [Microsoft365OAuthCredentials][] + - How to set up an [Outlook][] account so that this authentication mechanism can be used, see [Setting up an Outlook account for OAuth authentication using client credentials][] +- [Microsoft365OAuthCertificateCredentials][]: Using certificate credentials. For information on: + - What each of the properties in the [Microsoft365OAuthCertificateCredentials][], see [Microsoft365OAuthCertificateCredentials][] + - How to set up an [Outlook][] account so that this authentication mechanism can be used, see [Setting up an Outlook account for OAuth authentication using certificate credentials][] + +Note that the Send Email Using Microsoft 365 block automatically handles retrieval of access tokens using the following rules: + +- If an access token does not exist, a new access token will be retrieved and used when the block runs. +- If an access token already exists but is expired, a new access token will be retrieved and used when the block runs. +- If an access token already exists and is valid, it will be used when the block runs. + +It is recommended to use a [Variable][] for [Credentials][Credentials Property] when it will be used across multiple Send Email Using Microsoft 365 blocks, as using a variable will allow for reuse of the same access token. Using a [Literal][] to set the [Credentials][Credentials Property] will cause the access token to only be used once and a new acccess token will be requested for every Send Email Using Microsoft 365 block. + +||| +|----------|----------| +| Data Type | [Microsoft365Credentials][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [Microsoft365OAuthCredentials][] with value shown below: | + +```json +{ + "ClientId": "", + "ClientSecret": "", + "TenantId": "", + "ObjectId": "", +} +``` + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|--------------------------------------|-------------| +| [ArgumentException][] |Thrown when [BodyFormat][] within the [Email Message][Email Message Property] is not one of the specified [EmailMessageBodyFormat][] values (e.g. `(EmailMessageBodyFormat)10`).| +| |Thrown when [Priority][] within the [Email Message][Email Message Property] is not one of the specified [EmailMessagePriority][] values (e.g. `(EmailMessagePriority)10`).| +| [CryptographicException][] | Thrown when an incorrect [CertificatePath][] is provided within [Microsoft365OAuthCertificateCredentials][]. | +| | Thrown when an incorrect [CertificatePassword][] is provided within [Microsoft365OAuthCertificateCredentials][]. | +| [FileNotFoundException][] |Thrown when a non-existent file path is provided in [Attachments][] within [Email Message][Email Message Property]. | +| [IOException][] |Thrown when the desired socket is held by another process; re-running the flow typically solves this. | +| [MsalServiceException][] | Thrown when an invalid [ClientId][ClientId Client Credentials] is provided within [Microsoft365OAuthCredentials][]. | +| | Thrown when an invalid [ClientSecret][ClientSecret Client Credentials] is provided within [Microsoft365OAuthCredentials][]. | +| | Thrown when an invalid [TenantId][TenantId Client Credentials] is provided within [Microsoft365OAuthCredentials][]. | +| | Thrown when an invalid [ClientId][ClientId Certificate Credentials] is provided within [Microsoft365OAuthCertificateCredentials][]. | +| | Thrown when an invalid [TenantId][TenantId Certificate Credentials] is provided within [Microsoft365OAuthCertificateCredentials][]. | +| [PropertyNullException][] |Thrown when the [Email Message][Email Message Property] is `null`. | +| |Thrown when the [To][] within [Email Message][Email Message Property] is `null`. | +| |Thrown when the [From][] within [Email Message][Email Message Property] is `null`. | +| |Thrown when the [Address][] in an [EmailAddress][] within [Email Message][Email Message Property] is `null`. | +| |Thrown when the [Credentials][Credentials Property] is `null`. | +| |Thrown when the [ClientId][ClientId Client Credentials] within [Microsoft365OAuthCredentials][] is `null`. | +| |Thrown when the [ClientSecret][ClientSecret Client Credentials] within [Microsoft365OAuthCredentials][] is `null`. | +| |Thrown when the [TenantId][TenantId Client Credentials] within [Microsoft365OAuthCredentials][] is `null`. | +| |Thrown when the [ObjectId][ObjectId Client Credentials] within [Microsoft365OAuthCredentials][] is `null`. | +| |Thrown when the [CertificatePath][] within [Microsoft365OAuthCertificateCredentials][] is `null`. | +| |Thrown when the [CertificatePassword][] within [Microsoft365OAuthCertificateCredentials][] is `null`. | +| |Thrown when the [ClientId][ClientId Certificate Credentials] within [Microsoft365OAuthCertificateCredentials][] is `null`. | +| |Thrown when the [TenantId][TenantId Certificate Credentials] within [Microsoft365OAuthCertificateCredentials][] is `null`. | +| |Thrown when the [ObjectId][ObjectId Certificate Credentials] within [Microsoft365OAuthCertificateCredentials][] is `null`. | +| [PropertyEmptyException][] |Thrown when the [To][] within [Email Message][Email Message Property] is empty (i.e. `[]`). | +| |Thrown when the [Address][] in an [EmailAddress][] within [Email Message][Email Message Property] is empty (i.e. `""`). | +| |Thrown when the [ClientId][ClientId Client Credentials] within [Microsoft365OAuthCredentials][] is empty (i.e. `""`). | +| |Thrown when the [ClientSecret][ClientSecret Client Credentials] within [Microsoft365OAuthCredentials][] is empty (i.e. `""`). | +| |Thrown when the [TenantId][TenantId Client Credentials] within [Microsoft365OAuthCredentials][] is empty (i.e. `""`). | +| |Thrown when the [ObjectId][ObjectId Client Credentials] within [Microsoft365OAuthCredentials][] is empty (i.e. `""`). | +| |Thrown when the [CertificatePath][] within [Microsoft365OAuthCertificateCredentials][] is empty (i.e. `""`). | +| |Thrown when the [CertificatePassword][] within [Microsoft365OAuthCertificateCredentials][] is empty (i.e. `""`). | +| |Thrown when the [ClientId][ClientId Certificate Credentials] within [Microsoft365OAuthCertificateCredentials][] is empty (i.e. `""`). | +| |Thrown when the [TenantId][TenantId Certificate Credentials] within [Microsoft365OAuthCertificateCredentials][] is empty (i.e. `""`). | +| |Thrown when the [ObjectId][ObjectId Certificate Credentials] within [Microsoft365OAuthCertificateCredentials][] is empty (i.e. `""`). | +| [ServiceException][] | Thrown when an invalid [ObjectId][ObjectId Client Credentials] is provided within [Microsoft365OAuthCredentials][]. | +| | Thrown when an invalid [ObjectId][ObjectId Certificate Credentials] is provided within [Microsoft365OAuthCertificateCredentials][]. | +| | Thrown when trying to send an email as a user that the client application does not have rights to send as. | +| | Thrown when the [Address][] in an [EmailAddress][] within [Email Message][Email Message Property] is not of the correct format ([RFC 5321][]). | +| [UnauthorizedAccessException][] |Thrown when access is denied to a file provided in [Attachments][] within [Email Message][Email Message Property]. | + +## Remarks + +### Known Limitations + +None + +[Email Message Property]: {{< ref "#email-message" >}} +[Credentials Property]: {{< ref "#credentials" >}} + +[EmailMessage]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessage.MainDoc" >}} +[To]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessage.To" >}} +[From]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessage.From" >}} +[Cc]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessage.Cc" >}} +[Bcc]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessage.Bcc" >}} +[Priority]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessage.Priority" >}} +[Subject]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessage.Subject" >}} +[BodyFormat]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessage.BodyFormat" >}} +[Body]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessage.Body" >}} +[Attachments]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessage.Attachments" >}} +[creating an EmailMessage using a constructor]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessage.CreateAnEmailMessage" >}} + +[EmailAddress]: {{< url path="Cortex.Reference.DataTypes.Email.EmailAddress.MainDoc" >}} +[Address]: {{< url path="Cortex.Reference.DataTypes.Email.EmailAddress.Address" >}} + +[EmailMessagePriority]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessagePriority.MainDoc" >}} +[Normal]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessagePriority.Normal" >}} + +[EmailMessageBodyFormat]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessageBodyFormat.MainDoc" >}} +[Text]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessageBodyFormat.Text" >}} + +[Microsoft365Credentials]: {{< url path="Cortex.Reference.DataTypes.Microsoft365.Authentication.OAuth.Microsoft365Credentials.MainDoc" >}} + +[Microsoft365OAuthCredentials]: {{< url path="Cortex.Reference.DataTypes.Microsoft365.Authentication.OAuth.Microsoft365OAuthCredentials.MainDoc" >}} +[ClientId Client Credentials]: {{< url path="Cortex.Reference.DataTypes.Microsoft365.Authentication.OAuth.Microsoft365OAuthCredentials.ClientId" >}} +[ClientSecret Client Credentials]: {{< url path="Cortex.Reference.DataTypes.Microsoft365.Authentication.OAuth.Microsoft365OAuthCredentials.ClientSecret" >}} +[TenantId Client Credentials]: {{< url path="Cortex.Reference.DataTypes.Microsoft365.Authentication.OAuth.Microsoft365OAuthCredentials.TenantId" >}} +[ObjectId Client Credentials]: {{< url path="Cortex.Reference.DataTypes.Microsoft365.Authentication.OAuth.Microsoft365OAuthCredentials.ObjectId" >}} + +[Microsoft365OAuthCertificateCredentials]: {{< url path="Cortex.Reference.DataTypes.Microsoft365.Authentication.OAuth.Microsoft365OAuthCertificateCredentials.MainDoc" >}} +[CertificatePath]: {{< url path="Cortex.Reference.DataTypes.Microsoft365.Authentication.OAuth.Microsoft365OAuthCertificateCredentials.CertificatePath" >}} +[CertificatePassword]: {{< url path="Cortex.Reference.DataTypes.Microsoft365.Authentication.OAuth.Microsoft365OAuthCertificateCredentials.CertificatePassword" >}} +[ClientId Certificate Credentials]: {{< url path="Cortex.Reference.DataTypes.Microsoft365.Authentication.OAuth.Microsoft365OAuthCertificateCredentials.ClientId" >}} +[TenantId Certificate Credentials]: {{< url path="Cortex.Reference.DataTypes.Microsoft365.Authentication.OAuth.Microsoft365OAuthCertificateCredentials.TenantId" >}} +[ObjectId Certificate Credentials]: {{< url path="Cortex.Reference.DataTypes.Microsoft365.Authentication.OAuth.Microsoft365OAuthCertificateCredentials.ObjectId" >}} + +[EncryptedText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptedText.MainDoc" >}} + +[ArgumentException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentException" >}} +[CryptographicException]: {{< url path="MSDocs.DotNet.Api.System.Security.Cryptography.CryptographicException.MainDoc" >}} +[FileNotFoundException]: {{< url path="MSDocs.DotNet.Api.System.IO.FileNotFoundException" >}} +[IOException]: {{< url path="MSDocs.DotNet.Api.System.IO.IOException" >}} +[MsalServiceException]: {{< url path="MSDocs.DotNet.Api.Microsoft.Identity.Client.MsalServiceException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[ServiceException]: {{< url path="MSDocs.DotNet.Api.Microsoft.Graph.ServiceException.MainDoc" >}} +[UnauthorizedAccessException]: {{< url path="MSDocs.DotNet.Api.System.UnauthorizedAccessException" >}} + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[Send Email Using SMTP Server]: {{< url path="Cortex.Reference.Blocks.Email.SendEmail.SendEmailUsingSmtpServer.MainDoc" >}} + +[Setting up an Outlook account for OAuth authentication using client credentials]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Email.Authentication.SettingUpClientCredentialsOutlook" >}} +[Setting up an Outlook account for OAuth authentication using certificate credentials]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Email.Authentication.SettingUpCertificateCredentialsOutlook" >}} + +[SMTP]: {{< url path="Cortex.Reference.Glossary.P-T.SMTP" >}} +[Outlook]: {{< url path="Cortex.Reference.Glossary.K-O.Outlook" >}} +[RFC 5321]: {{< url path="IETF.Email.RFC5321" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/objects/_index.md b/content/en/docs/2024.11/Reference/Blocks/objects/_index.md new file mode 100644 index 000000000..24753ebe5 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/objects/_index.md @@ -0,0 +1,5 @@ +--- +title: "Objects" +linkTitle: "Objects" +description: "Blocks common to all object data types." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/objects/convert-object/_index.md b/content/en/docs/2024.11/Reference/Blocks/objects/convert-object/_index.md new file mode 100644 index 000000000..b1b72c032 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/objects/convert-object/_index.md @@ -0,0 +1,5 @@ +--- +title: "Convert Object" +linkTitle: "Convert Object" +description: "Convert an object to other data types." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/objects/convert-object/convert-object-to-text-block-1.md b/content/en/docs/2024.11/Reference/Blocks/objects/convert-object/convert-object-to-text-block-1.md new file mode 100644 index 000000000..8f487f889 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/objects/convert-object/convert-object-to-text-block-1.md @@ -0,0 +1,250 @@ +--- +title: "Convert Object To Text" +linkTitle: "Convert Object To Text" +description: "Converts an object to text by replacing all `{Property}` format parameters in a specified format template with the Object's corresponding property value." +--- + +{{< figure src="/blocks/Cortex_Blocks_Objects_ConvertObject_ConvertObjectToTextBlock_1.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Object.ConvertObject.ConvertObjectToTextBlock`1)

+ +## Description + +Converts the given [Object][Object Property] to [Text][Text Property]. + +It does this by replacing all `{Property}` format parameters in the specified [Format Template][FormatTemplate Property] with the corresponding property value from the given [Object][Object Property]. + +An additional [Format Provider][FormatProvider Property] option can be specified to define the cultural rules used to control the formatting (e.g. `new CultureInfo("en-US")` will apply American English rules to the formatting). + +## Examples + +### Convert Structure to Text + +This example will convert: + +```json +{ + "LastPaymentAmount": 99.99, + "PercentagePaidOff": 0.8000, + "PercentageRemaining": 0.2000, + "TotalPaidOff": 350.99, + "TotalRemaining": 40 +} +``` + +to text, based on the following format template: + +```json +"Your latest payment of {LastPaymentAmount:C2} has been received. You have paid {PercentagePaidOff:P0} of your total and have {TotalRemaining:C2} outstanding." +``` + +The format parameter `{LastPaymentAmount:C2}` will display the `99.99` as U.S currency to two decimal places (i.e. `$99.99`): + +* `LastPaymentAmount` - is replaced by the value of the `"LastPaymentAmount"` property (i.e. `99.99`). +* `C` - indicates to include the currency symbol for the specified culture (i.e. `$`). +* `2` - indicates to format the value to two decimal places. + +The format parameter `{PercentagePaidOff:P0}` will display the `0.8000` as a percentage to zero decimal places (i.e. `80 %`): + +* `PercentagePaidOff` - is replaced by the value of the `"PercentagePaidOff"` (i.e. `0.8000`). +* `P` - indicates the value should be formatted as a percentage. +* `0` - indicates to format the percentage value to zero decimal places. + +The format parameter `{TotalRemaining:C2}` will display the `40` as U.S currency to two decimal places (i.e. `$40.00`): + +* `TotalRemaining` - is replaced by the value of the `"TotalRemaining"` property (i.e. `40`). +* `C` - indicates to include the currency symbol for the specified culture (i.e. `$`). +* `2` - indicates to format the value to two decimal places. + +For information about format templates and parameters, please see [Text Formatting][]. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Object][Object Property] | `($)Object`, with value `{"LastPaymentAmount":99.99, "PercentagePaidOff":0.8000, "PercentageRemaining":0.2000, "TotalPaidOff":350.99, "TotalRemaining":40}` | `($)Object` is a variable of type [Structure][] | +| [Format Template][FormatTemplate Property] | `($)FormatTemplate`, with value `"Your latest payment of {LastPaymentAmount:C2} has been received. You have paid {PercentagePaidOff:P0} of your total and have {TotalRemaining:C2} outstanding."` | `($)FormatTemplate` is a variable of type [String][] | +| [Format Provider][FormatProvider Property] | `($)FormatProvider`, with value `new CultureInfo("en-US")` | `($)FormatProvider` is a variable of type [IFormatProvider][] | +| [Text][Text Property] | `($)Text`, with no value | `($)Text` is a variable that will be set to a [String][] value | + +#### Result + +Converting: + +```json +{ + "LastPaymentAmount": 99.99, + "PercentagePaidOff": 0.8000, + "PercentageRemaining": 0.2000, + "TotalPaidOff": 350.99, + "TotalRemaining": 40 +} +``` + +to text, based on the following format template: + +```json +"Your latest payment of {LastPaymentAmount:C2} has been received. You have paid {PercentagePaidOff:P0} of your total and have {TotalRemaining:C2} outstanding." +``` + +results in the variable `($)Text` being updated to the following: + +```json +"Your latest payment of $99.99 has been received. You have paid 80 % of your total and have $40.00 outstanding." +``` + +*** + +## Properties + +### Object + +The [Object][Object Property] to convert to [Text][Text Property]. + +All `{Property}` format parameters which match a property name in the [Object][Object Property] will be replaced by that property's value. + +The values of matching properties do not have to be text, they can be any data type. Any non-text value will be converted to its text representation when it is replaced. + +For information about how types are converted to their text representation please see [Converting Objects To Text][]. + +| | | +|--------------------|---------------------------| +| Data Type | [TObject][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Object` with no value | + +### Format Template + +[Format Template][FormatTemplate Property] can be specified to define the format of the resultant [Text][Text Property]. + +All `{Property}` format parameters in [Format Template][FormatTemplate Property] will be replaced with the corresponding property value from the [Object][Object Property]. + +`{Property}` format parameters are case-sensitive, so must exactly match the property name in the [Object][Object Property]; those that do not will not be replaced. + +If [Format Template][FormatTemplate Property] is specified but does not contain any `{Property}` format parameters, nothing is replaced; [Text][Text Property] will be set to the value of [Format Template][FormatTemplate Property]. + +If [Format Template][FormatTemplate Property] is not specified, `null` or empty (i.e. `""`), [Text][Text Property] will be set to the value of [Convert.ToString(Object, Format Provider)][Convert ToString]. + +For information about format templates and parameters, please see [Text Formatting][]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | `$@""` | + +### Format Provider + +[Format Provider][FormatProvider Property] can be specified to define the cultural rules used to control the formatting (e.g. `new CultureInfo("en-US")` will apply American English rules to the formatting.). + +If [Format Provider][FormatProvider Property] is not specified or `null`, `CultureInfo.InvariantCulture` will be used; `CultureInfo.InvariantCulture` is associated with the English language but not with any country/region. For more information, please see [Invariant Culture rules][]. + +| | | +|--------------------|---------------------------| +| Data Type | [IFormatProvider][] | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Expression][] | +| Default Value | `CultureInfo.InvariantCulture` | + +### Text + +The formatted [Text][Text Property] that results from replacing all `{Property}` format parameters in [Format Template][FormatTemplate Property] with their corresponding property value from the given [Object][Object Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Text` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [FormatException][] | Thrown when [Format Template][FormatTemplate Property] contains a format parameter that is invalid or not well-formed (e.g. `"Cost is {TotalCost:Q2}`, as `"Q"` is not a [valid format parameter][]). | +| [PropertyNullException][] | Thrown when [Object][Object Property] is `null`. | + +## Remarks + +### Text Formatting + +Please note that changes to operating system settings, could result in some of the examples above displaying different results. + +For information about format templates and parameters, please see [Text Formatting][]. + +### Null or Empty Format Template + +If [Format Template][FormatTemplate Property] is specified but does not contain any `{Property}` format parameters, nothing is replaced; [Text][Text Property] will be set to the value of [Format Template][FormatTemplate Property]. + +If [Format Template][FormatTemplate Property] is not specified, `null` or empty (i.e. `""`), [Text][Text Property] will be set to the value of [Convert.ToString(Object, Format Provider)][Convert ToString]. + +### Null Format Provider + +If [Format Provider][FormatProvider Property] is not specified or `null`, `CultureInfo.InvariantCulture` will be used; `CultureInfo.InvariantCulture` is associated with the English language but not with any country/region. For more information, please see [Invariant Culture rules][]. + +### Nested Properties + +Format parameters support nested properties, which means given an object like the following: + +```json +{ + "LastPaymentAmount": 99.99, + "PaidOff": { + "Percentage": 0.8000, + "Total": 350.99 + }, + "Remaining": { + "Remaining": 0.2000, + "Total": 40 + } +} +``` + +that nested property values such as PaidOff.Total can be accessed. This is done by using the following format parameter syntax: + +```json +"{PaidOff.Total}" +``` + +### Known Limitations + +Currently the block does not support indexing into properties (i.e. `ListProperty[0]` or `DictionaryProperty["key"]`). + +[Object Property]: {{< ref "#object" >}} +[FormatTemplate Property]: {{< ref "#format-template" >}} +[FormatProvider Property]: {{< ref "#format-provider" >}} +[Text Property]: {{< ref "#text" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[FormatException]: {{< url path="MSDocs.DotNet.Api.System.FormatException" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[Convert ToString]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToStringObjectFormatProvider" >}} + +[Converting Objects To Text]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.ConvertingObjectsToText.MainDoc" >}} +[Invariant Culture rules]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Culture.InvariantCulture.MainDoc" >}} +[Text Formatting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Formatting.MainDoc" >}} +[Valid Format Parameter]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Formatting.FormatTemplates" >}} + +[TObject]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Structure]: {{< url path="Cortex.Reference.DataTypes.Collections.Structure.MainDoc" >}} +[IFormatProvider]: {{< url path="Cortex.Reference.DataTypes.Text.IFormatProvider.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/objects/copy-object/_index.md b/content/en/docs/2024.11/Reference/Blocks/objects/copy-object/_index.md new file mode 100644 index 000000000..88c2803c9 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/objects/copy-object/_index.md @@ -0,0 +1,5 @@ +--- +title: "Copy Object" +linkTitle: "Copy Object" +description: "Copy an object." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/objects/copy-object/copy-object-block-1.md b/content/en/docs/2024.11/Reference/Blocks/objects/copy-object/copy-object-block-1.md new file mode 100644 index 000000000..91ffdbbe6 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/objects/copy-object/copy-object-block-1.md @@ -0,0 +1,112 @@ +--- +title: "Copy Object" +linkTitle: "Copy Object" +description: "Copies an Object." +--- + +{{< figure src="/blocks/Cortex_Blocks_Objects_CopyObject_CopyObjectBlock_1.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Objects.CopyObject.CopyObjectBlock`1)

+ +## Description + +Makes a [Copy][Copy Property] of an [Object][Object Property]. + +Any type of object can be copied, including Lists, Dictionaries, Structures etc. + +A deep copy will be performed, which means if the [Object][Object Property] contains other objects, they are also copied. This is as opposed to a shallow copy, which only makes a copy of the [Object][Object Property]; in a shallow copy contained objects are not copied, they are left as the original. + +## Examples + +### Copy a List + +This example will make a copy of `[[1, 2, 3], [4, 5, 6]]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Object][Object Property] | `($)Object`, with value `[[1, 2, 3], [4, 5, 6]]` | `($)Object` is a variable of type [List][]<[List][]<[Int32][]>> | +| [Copy][Copy Property] | `($)Copy`, with no value | `($)Copy` is a variable that will be set to the type of the item (i.e. [List][]<[List][]<[Int32][]>>) | + +#### Result + +Making a copy of `[[1, 2, 3], [4, 5, 6]]` results in the variable `($)Copy` being updated to the following: + +```json +[ + [ + 1, + 2, + 3 + ], + [ + 4, + 5, + 6 + ] +] +``` + +Note that `($)Copy` is an exact copy. If `($)Copy` has new items added to it, items updated in it, or items removed from it, the original that `($)Copy` was copied from will not be affected. + +*** + +## Properties + +### Object + +The [Object][Object Property] to make the [Copy][Copy Property] of. + +Any type of object can be copied, including Lists, Dictionaries, Structures etc. + +A deep copy will be performed, which means if the [Object][Object Property] contains other objects, they are also copied. This is as opposed to a shallow copy, which only makes a copy of the [Object][Object Property]; in a shallow copy contained objects are not copied, they are left as the original. + +| | | +|--------------------|---------------------------| +| Data Type | [TObject][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Object` with no value | + +### Copy + +The [Copy][Copy Property] of the [Object][Object Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [TObject][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Copy` with no value | + +## Exceptions + +No exceptions are thrown by the block. + +## Remarks + +### Null Object + +If [Object][Object Property] is not provided or is set to `null`, [Copy][Copy Property] will be set to `null`. + +[Object Property]: {{< ref "#object" >}} +[Copy Property]: {{< ref "#copy" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[TObject]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[List]: {{< url path="Cortex.Reference.DataTypes.Collections.List.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/queues/_index.md b/content/en/docs/2024.11/Reference/Blocks/queues/_index.md new file mode 100644 index 000000000..d143d831b --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/queues/_index.md @@ -0,0 +1,5 @@ +--- +title: "Queues" +linkTitle: "Queues" +description: "Blocks related to working with Queues." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/queues/dequeue-item/_index.md b/content/en/docs/2024.11/Reference/Blocks/queues/dequeue-item/_index.md new file mode 100644 index 000000000..1f22e687a --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/queues/dequeue-item/_index.md @@ -0,0 +1,5 @@ +--- +title: "Dequeue Item(s)" +linkTitle: "Dequeue Item(s)" +description: "Removes and returns an item or multiple items from a queue." +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Blocks/queues/dequeue-item/dequeue-item-block-2.md b/content/en/docs/2024.11/Reference/Blocks/queues/dequeue-item/dequeue-item-block-2.md new file mode 100644 index 000000000..6ee7cde20 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/queues/dequeue-item/dequeue-item-block-2.md @@ -0,0 +1,155 @@ +--- +title: "Dequeue Item" +linkTitle: "Dequeue Item" +description: "Removes and returns the Item at the beginning of a Queue." +--- + +{{< figure src="/blocks/Cortex_Blocks_Queues_DequeueItem_DequeueItemBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Queues.DequeueItem.DequeueItemBlock`2)

+ +## Description + +Removes and returns the [Item][Item Property] at the beginning of a [Queue][Queue Property]. + +## Examples + +### Dequeue an Item from a Queue containing Items with different priorities + +This example will dequeue an item from a [QueueWithPriority][]<[String][], [Int32][]> that contains `"Item -1"` with a priority of `-1`, `"Item 0"` with a priority of `0` and `"Item 1"` with a priority of `1`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Queue][Queue Property] | `($)Queue`, with value `{"Items": [{"Item": "Item -1", "Priority": -1}, {"Item": "Item 0", "Priority": 0}, {"Item": "Item 1", "Priority": 1}], "PriorityComparer": {}}` | `($)Queue` is a variable of type [QueueWithPriority][]<[String][], [Int32][]> | +| [Item][Item Property] | `($)Item`, with no value | `($)Item` is a variable that will be set to the type of the item (i.e. [String][]) | + +#### Result + +Dequeueing an item from `{"Items": [{"Item": "Item -1", "Priority": -1}, {"Item": "Item 0", "Priority": 0}, {"Item": "Item 1", "Priority": 1}], "PriorityComparer": {}}` results in the variable `($)Item` being updated to the following: + +```json +"Item -1" +``` + +and the variable `($)Queue` being updated to the following: + +```json +{ + "Items": [ + { + "Item": "Item 0", + "Priority": 0 + }, + { + "Item": "Item 1", + "Priority": 1 + } + ], + "PriorityComparer": {} +} +``` + +*** + +### Dequeue an Item from a Queue containing Items with the same priority + +This example will dequeue an item from a [QueueWithPriority][]<[Int32][], [Int32][]> that contains `1` with a priority of `0`, `2` with a priority of `0` and `3` with a priority of `0`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Queue][Queue Property] | `($)Queue`, with value `{"Items": [{"Item": 1, "Priority": 0}, {"Item": 2, "Priority": 0}, {"Item": 3, "Priority": 0}], "PriorityComparer": {}}` | `($)Queue` is a variable of type [QueueWithPriority][]<[Int32][], [Int32][]> | +| [Item][Item Property] | `($)Item`, with no value | `($)Item` is a variable that will be set to the type of the item (i.e. [Int32]) | + +#### Result + +Dequeueing an item from `{"Items": [{"Item": 1, "Priority": 0}, {"Item": 2, "Priority": 0}, {"Item": 3, "Priority": 0}], "PriorityComparer": {}}` results in the variable `($)Item` being updated to the following: + +```json +1 +``` + +and the variable `($)Queue` being updated to the following: + +```json +{ + "Items": [ + { + "Item": 2, + "Priority": 0 + }, + { + "Item": 3, + "Priority": 0 + } + ], + "PriorityComparer": {} +} +``` + +*** + +## Properties + +### Queue + +The [Queue][Queue Property] to dequeue an [Item][Item Property] from. + +| | | +|--------------------|---------------------------| +| Data Type | [QueueWithPriority][]<[TItem][], [TPriority][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Queue` with no value | + +### Item + +The [Item][Item Property] at the beginning of the [Queue][Queue Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [TItem][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Item` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyEmptyException][] | Thrown when [Queue][Queue Property] contains no items.| +| [PropertyNullException][] | Thrown when [Queue][Queue Property] is `null`. | + +## Remarks + +None + +[Queue Property]: {{< ref "#queue" >}} +[Item Property]: {{< ref "#item" >}} + +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[TPriority]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[QueueWithPriority]: {{< url path="Cortex.Reference.DataTypes.Collections.QueueWithPriority.MainDoc" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/queues/dequeue-item/dequeue-items-block-2.md b/content/en/docs/2024.11/Reference/Blocks/queues/dequeue-item/dequeue-items-block-2.md new file mode 100644 index 000000000..98f344eb2 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/queues/dequeue-item/dequeue-items-block-2.md @@ -0,0 +1,176 @@ +--- +title: "Dequeue Items" +linkTitle: "Dequeue Items" +description: "Removes and returns Items at the beginning of a Queue." +--- + +{{< figure src="/blocks/Cortex_Blocks_Queues_DequeueItem_DequeueItemsBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Queues.DequeueItem.DequeueItemsBlock`2)

+ +## Description + +Removes and returns [Items][Items Property] at the beginning of a [Queue][Queue Property]. + +Each item is removed and returned to [Items][Items Property] in the same order as they were in the [Queue][Queue Property]. + +## Examples + +### Dequeue Count of Items from a Queue containing items with different priorities + +This example will dequeue `2` items from a [QueueWithPriority][]<[String][], [Int32][]> that contains `"Item -1"` with a priority of `-1`, `"Item 0"` with a priority of `0` and `"Item 1"` with a priority of `1`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Queue][Queue Property] | `($)Queue`, with value `{"Items": [{"Item": "Item -1", "Priority": -1}, {"Item": "Item 0", "Priority": 0}, {"Item": "Item 1", "Priority": 1}], "PriorityComparer": {}}` | `($)Queue` is a variable of type [QueueWithPriority][]<[String][], [Int32][]> | +| [Count][Count Property] | `($)Count`, with value `2` | `($)Count` is a variable of type [Int32][] | +| [Items][Items Property] | `($)Items`, with no value | `($)Items` is a variable that will be set to a [List][]<[String][]> value | + +#### Result + +Dequeueing `2` items from `{"Items": [{"Item": "Item -1", "Priority": -1}, {"Item": "Item 0", "Priority": 0}, {"Item": "Item 1", "Priority": 1}], "PriorityComparer": {}}` results in the variable `($)Items` being updated to the following: + +```json +["Item -1", "Item 0"] +``` + +and the variable `($)Queue` being updated to the following: + +```json +{ + "Items": [ + { + "Item": "Item 1", + "Priority": 1 + } + ], + "PriorityComparer": {} +} +``` + +*** + +### Dequeue Count of Items from a Queue containing items with the same priority + +This example will dequeue `3` items from a [QueueWithPriority][]<[Int32][], [Int32][]> that contains `1` with a priority of `0`, `2` with a priority of `0`, `3` with a priority of `0` and `4` with a priority of `0`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Queue][Queue Property] | `($)Queue`, with value `{"Items": [{"Item": 1, "Priority": 0}, {"Item": 2, "Priority": 0}, {"Item": 3, "Priority": 0}, {"Item": 4, "Priority": 0}], "PriorityComparer": {}}` | `($)Queue` is a variable of type [QueueWithPriority][]<[Int32][], [Int32][]> | +| [Count][Count Property] | `($)Count`, with value `3` | `($)Count` is a variable of type [Int32][] | +| [Items][Items Property] | `($)Items`, with no value | `($)Items` is a variable that will be set to a [List][]<[Int32][]> value | + +#### Result + +Dequeueing `3` items from `{"Items": [{"Item": 1, "Priority": 0}, {"Item": 2, "Priority": 0}, {"Item": 3, "Priority": 0}, {"Item" : 4, "Priority": 0}], "PriorityComparer": {}}` results in the variable `($)Items` being updated to the following: + +```json +[1, 2, 3] +``` + +and the variable `($)Queue` being updated to the following: + +```json +{ + "Items": [ + { + "Item": 4, + "Priority": 0 + } + ], + "PriorityComparer": {} +} +``` + +*** + +## Properties + +### Queue + +The [Queue][Queue Property] to dequeue the [Items][Items Property] from. + +| | | +|--------------------|---------------------------| +| Data Type | [QueueWithPriority][]<[TItem][], [TPriority][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Queue` with no value | + +### Count + +The [Count][Count Property] of [Items][Items Property] to dequeue. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Count` with no value | + +### Items + +The [Items][Items Property] at the beginning of the [Queue][Queue Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TItem][]> | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Items` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyEmptyException][] | Thrown when [Queue][Queue Property] contains no items.| +| [PropertyNullException][] | Thrown when [Queue][Queue Property] is `null`. | +| [PropertyValueOutOfRangeException][] | Thrown when [Count][Count Property] is greater than the count of items in [Queue][Queue Property]. | + +## Remarks + +### Negative Count + +If [Count][Count Property] is negative, all items are dequeued from [Queue][Queue Property] to [Items][Items Property]. + +### Zero Count + +If [Count][Count Property] is `0`, no items are dequeued and [Items][Items Property] is set to an empty list (i.e. `[]`). + +[Queue Property]: {{< ref "#queue" >}} +[Count Property]: {{< ref "#count" >}} +[Items Property]: {{< ref "#items" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[TPriority]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[List]: {{< url path="Cortex.Reference.DataTypes.Collections.List.MainDoc" >}} +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyValueOutOfRangeException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.MainDoc" >}} + + +[QueueWithPriority]: {{< url path="Cortex.Reference.DataTypes.Collections.QueueWithPriority.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/queues/enqueue-item/_index.md b/content/en/docs/2024.11/Reference/Blocks/queues/enqueue-item/_index.md new file mode 100644 index 000000000..a92a80839 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/queues/enqueue-item/_index.md @@ -0,0 +1,5 @@ +--- +title: "Enqueue Item(s)" +linkTitle: "Enqueue Item(s)" +description: "Add an item or multiple items to a queue." +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Blocks/queues/enqueue-item/enqueue-item-block-2.md b/content/en/docs/2024.11/Reference/Blocks/queues/enqueue-item/enqueue-item-block-2.md new file mode 100644 index 000000000..249156260 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/queues/enqueue-item/enqueue-item-block-2.md @@ -0,0 +1,211 @@ +--- +title: "Enqueue Item" +linkTitle: "Enqueue Item" +description: "Adds an Item to a Queue at the specified Priority." +--- + +{{< figure src="/blocks/Cortex_Blocks_Queues_EnqueueItem_EnqueueItemBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Queues.EnqueueItem.EnqueueItemBlock`2)

+ +## Description + +Adds an [Item][Item Property] to a [Queue][Queue Property] at the specified [Priority][Priority Property]. + +## Examples + +### Enqueue an Item to an empty Queue + +This example will enqueue `"Some Value"` with a priority of `0` to an empty [QueueWithPriority][]<[String][], [Int32][]>. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Queue][Queue Property] | `($)Queue`, with value `{"Items": [], "PriorityComparer": {}}` | `($)Queue` is a variable of type [QueueWithPriority][]<[String][], [Int32][]> | +| [Item][Item Property] | `($)Item`, with value `"Some Value"` | `($)Item` is a variable of type [String][] | +| [Priority][Priority Property] | `($)Priority`, with value `0` | `($)Priority` is a variable of type [Int32][] | + +#### Result + +Adding `"Some Value"` with priority `0` to `{"Items": [], "PriorityComparer": {}}` results in the variable `($)Queue` being updated to the following: + +```json +{ + "Items": [ + { + "Item": "Some Value", + "Priority": 0 + } + ], + "PriorityComparer": {} +} +``` + +*** + +### Enqueue an Item to a Queue already containing Items + +This example will enqueue `"Some Value"` with a priority of `0` to a [QueueWithPriority][]<[String][], [Int32][]> that contains `"Item -1"` with a priority of `-1` and `"Item 1"` with a priority of `1`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Queue][Queue Property] | `($)Queue`, with value `{"Items": [{"Item": "Item -1", "Priority": -1}, {"Item": "Item 1", "Priority": 1}], "PriorityComparer": {}}` | `($)Queue` is a variable of type [QueueWithPriority][]<[String][], [Int32][]> | +| [Item][Item Property] | `($)Item`, with value `"Some Value"` | `($)Item` is a variable of type [String][] | +| [Priority][Priority Property] | `($)Priority`, with value `0` | `($)Priority` is a variable of type [Int32][] | + +#### Result + +Adding `"Some Value"` with priority `0` to `{"Items": [{"Item": "Item -1", "Priority": -1}, {"Item": "Item 1", "Priority": 1}], "PriorityComparer": {}}` results in the variable `($)Queue` being updated to the following: + +```json +{ + "Items": [ + { + "Item": "Item -1", + "Priority": -1 + }, + { + "Item": "Some Value", + "Priority": 0 + }, + { + "Item": "Item 1", + "Priority": 1 + } + ], + "PriorityComparer": {} +} +``` + +*** + +### Enqueue an Item to a Queue with the same Priority as an existing Item + +This example will enqueue `"Some Value"` with a priority of `1` to a [QueueWithPriority][]<[String][], [Int32][]> that contains `"Item -1"` with a priority of `-1` and `"Item 1"` with a priority of `1`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Queue][Queue Property] | `($)Queue`, with value `{"Items": [{"Item": "Item -1", "Priority": -1}, {"Item": "Item 1", "Priority": 1}], "PriorityComparer": {}}` | `($)Queue` is a variable of type [QueueWithPriority][]<[String][], [Int32][]> | +| [Item][Item Property] | `($)Item`, with value `"Some Value"` | `($)Item` is a variable of type [String][] | +| [Priority][Priority Property] | `($)Priority`, with value `1` | `($)Priority` is a variable of type [Int32][] | + +#### Result + +Adding `"Some Value"` with priority `1` to `{"Items": [{"Item": "Item -1", "Priority": -1}, {"Item": "Item 1", "Priority": 1}], "PriorityComparer": {}}` results in the variable `($)Queue` being updated to the following: + +```json +{ + "Items": [ + { + "Item": "Item -1", + "Priority": -1 + }, + { + "Item": "Item 1", + "Priority": 1 + }, + { + "Item": "Some Value", + "Priority": 1 + } + ], + "PriorityComparer": {} +} +``` + +As `"Some Value"` and `"Item 1"` have the same [Priority][Priority Property], they are put in the order that they were added to the [Queue][Queue Property], so `"Some Value"` is placed behind `"Item 1"`. + +*** + +## Properties + +### Queue + +The [Queue][Queue Property] to add the [Item][Item Property] to. + +| | | +|--------------------|---------------------------| +| Data Type | [QueueWithPriority][]<[TItem][], [TPriority][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Queue` with no value | + +### Item + +The [Item][Item Property] to be added to the [Queue][Queue Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [TItem][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Item` with no value | + +### Priority + +The [Priority][Priority Property] of the [Item][Item Property] being added to the [Queue][Queue Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [TPriority][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | Defaults to `null` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [InvalidPropertyValueException][] | Thrown when [Item][Item Property] is `null` and [Queue][Queue Property] only accepts non-nullable value types. See [Value Is Invalid][]. | +| [PropertyNullException][] | Thrown when [Queue][Queue Property] is `null`. | + +## Remarks + +None + +[Queue Property]: {{< ref "#queue" >}} +[Item Property]: {{< ref "#item" >}} +[Priority Property]: {{< ref "#priority" >}} + +[Indexes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Indexes.MainDoc" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[TPriority]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[default]: {{< url path="MSDocs.DotNet.Api.System.Comparer.Default" >}} + +[QueueWithPriority]: {{< url path="Cortex.Reference.DataTypes.Collections.QueueWithPriority.MainDoc" >}} + +[CannotModifyReadOnlyListException]: {{< url path="Cortex.Reference.Exceptions.Lists.CannotModifyReadOnlyListException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[InvalidPropertyValueException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.MainDoc" >}} +[Value Is Invalid]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.ValueIsInvalid" >}} + +[PropertyValueOutOfRangeException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.MainDoc" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/queues/enqueue-item/enqueue-items-block-2.md b/content/en/docs/2024.11/Reference/Blocks/queues/enqueue-item/enqueue-items-block-2.md new file mode 100644 index 000000000..613571b00 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/queues/enqueue-item/enqueue-items-block-2.md @@ -0,0 +1,240 @@ +--- +title: "Enqueue Items" +linkTitle: "Enqueue Items" +description: "Adds Items to a Queue at the specified Priority." +--- + +{{< figure src="/blocks/Cortex_Blocks_Queues_EnqueueItem_EnqueueItemsBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Queues.EnqueueItem.EnqueueItemsBlock`2)

+ +## Description + +Adds [Items][Items Property] to a [Queue][Queue Property] at the specified [Priority][Priority Property]. + +Each item is added to the [Queue][Queue Property] in the same order as they are in [Items][Items Property]. + +## Examples + +### Enqueue multiple Items to an empty Queue + +This example will enqueue `"a"`, `"b"` and `"c"` with a priority of `0` to an empty [QueueWithPriority][]<[String][], [Int32][]>. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Queue][Queue Property] | `($)Queue`, with value `{"Items": [], "PriorityComparer": {}}` | `($)Queue` is a variable of type [QueueWithPriority][]<[String][], [Int32][]> | +| [Items][Items Property] | `($)Items`, with value `["a", "b", "c"]` | `($)Items` is a variable of type [List][]<[String][]> | +| [Priority][Priority Property] | `($)Priority`, with value `0` | `($)Priority` is a variable of type [Int32][] | + +#### Result + +Adding `"a"`, `"b"` and `"c"` with priority `0` to `{"Items": [], "PriorityComparer": {}}` results in the variable `($)Queue` being updated to the following: + +```json +{ + "Items": [ + { + "Item": "a", + "Priority": 0 + }, + { + "Item": "b", + "Priority": 0 + }, + { + "Item": "c", + "Priority": 0 + } + ], + "PriorityComparer": {} +} +``` + +*** + +### Enqueue multiple Items to a Queue already containing Items + +This example will enqueue `"a"`, `"b"` and `"c"` with a priority of `0` to a [QueueWithPriority][]<[String][], [Int32][]> that contains `"Item -1"` with a priority of `-1` and `"Item 1"` with a priority of `1`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Queue][Queue Property] | `($)Queue`, with value `{"Items": [{"Item": "Item -1", "Priority": -1}, {"Item": "Item 1", "Priority": 1}], "PriorityComparer": {}}` | `($)Queue` is a variable of type [QueueWithPriority][]<[String][], [Int32][]> | +| [Items][Items Property] | `($)Items`, with value `["a", "b", "c"]` | `($)Items` is a variable of type [List][]<[String][]> | +| [Priority][Priority Property] | `($)Priority`, with value `0` | `($)Priority` is a variable of type [Int32][] | + +#### Result + +Adding `"a"`, `"b"` and `"c"` with priority `0` to `{"Items": [{"Item": "Item -1", "Priority": -1}, {"Item": "Item 1", "Priority": 1}], "PriorityComparer": {}}` results in the variable `($)Queue` being updated to the following: + +```json +{ + "Items": [ + { + "Item": "Item -1", + "Priority": -1 + }, + { + "Item": "a", + "Priority": 0 + }, + { + "Item": "b", + "Priority": 0 + }, + { + "Item": "c", + "Priority": 0 + }, + { + "Item": "Item 1", + "Priority": 1 + } + ], + "PriorityComparer": {} +} +``` + +*** + +### Enqueue multiple Items to a Queue with the same Priority as an existing Item + +This example will enqueue `"a"`, `"b"` and `"c"` with a priority of `1` to a [QueueWithPriority][]<[String][], [Int32][]> that contains `"Item -1"` with a priority of `-1` and `"Item 1"` with a priority of `1`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Queue][Queue Property] | `($)Queue`, with value `{"Items": [{"Item": "Item -1", "Priority": -1}, {"Item": "Item 1", "Priority": 1}], "PriorityComparer": {}}` | `($)Queue` is a variable of type [QueueWithPriority][]<[String][], [Int32][]> | +| [Items][Items Property] | `($)Items`, with value `["a", "b", "c"]` | `($)Items` is a variable of type [List][]<[String][]> | +| [Priority][Priority Property] | `($)Priority`, with value `1` | `($)Priority` is a variable of type [Int32][] | + +#### Result + +Adding `"a"`, `"b"` and `"c"` with priority `1` to `{"Items": [{"Item": "Item -1", "Priority": -1}, {"Item": "Item 1", "Priority": 1}], "PriorityComparer": {}}` results in the variable `($)Queue` being updated to the following: + +```json +{ + "Items": [ + { + "Item": "Item -1", + "Priority": -1 + }, + { + "Item": "Item 1", + "Priority": 1 + }, + { + "Item": "a", + "Priority": 1 + }, + { + "Item": "b", + "Priority": 1 + }, + { + "Item": "c", + "Priority": 1 + } + ], + "PriorityComparer": {} +} +``` + +As the added values and `"Item 1"` have the same [Priority][Priority Property], they are put in the order that they were added to the [Queue][Queue Property], so `"a"`, `"b"` and `"c"` are placed behind `"Item 1"`. + +*** + +## Properties + +### Queue + +The [Queue][Queue Property] to add the [Items][Items Property] to. + +| | | +|--------------------|---------------------------| +| Data Type | [QueueWithPriority][]<[TItem][], [TPriority][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Queue` with no value | + +### Items + +The [Items][Items Property] to be added to the [Queue][Queue Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [IEnumerable<TItem>][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Items` with no value | + +### Priority + +The [Priority][Priority Property] of the [Items][Items Property] being added to the [Queue][Queue Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [TPriority][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | Defaults to `null` | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyNullException][] | Thrown when [Queue][Queue Property] or [Items][Items Property] is `null`. | + +## Remarks + +### Empty Items + +If [Items][Items Property] is empty (i.e. `[]`) there is nothing to add, so no operation is performed. + +[Queue Property]: {{< ref "#queue" >}} +[Items Property]: {{< ref "#items" >}} +[Priority Property]: {{< ref "#priority" >}} + +[Indexes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Indexes.MainDoc" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[TPriority]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[default]: {{< url path="MSDocs.DotNet.Api.System.Comparer.Default" >}} + +[List]: {{< url path="Cortex.Reference.DataTypes.Collections.List.MainDoc" >}} +[IEnumerable<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[QueueWithPriority]: {{< url path="Cortex.Reference.DataTypes.Collections.QueueWithPriority.MainDoc" >}} + +[CannotModifyReadOnlyListException]: {{< url path="Cortex.Reference.Exceptions.Lists.CannotModifyReadOnlyListException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[InvalidPropertyValueException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.MainDoc" >}} +[Value Is Invalid]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.ValueIsInvalid" >}} + +[PropertyValueOutOfRangeException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.MainDoc" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/queues/get-count/_index.md b/content/en/docs/2024.11/Reference/Blocks/queues/get-count/_index.md new file mode 100644 index 000000000..2fb3d1df1 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/queues/get-count/_index.md @@ -0,0 +1,5 @@ +--- +title: "Get Count(s) of Items" +linkTitle: "Get Count(s) of Items" +description: "Get the count(s) of items in a queue." +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Blocks/queues/get-count/get-count-of-all-items-block-2.md b/content/en/docs/2024.11/Reference/Blocks/queues/get-count/get-count-of-all-items-block-2.md new file mode 100644 index 000000000..f48cc1785 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/queues/get-count/get-count-of-all-items-block-2.md @@ -0,0 +1,102 @@ +--- +title: "Get Count Of All Items" +linkTitle: "Get Count Of All Items" +description: "Gets the count of all items in a Queue." +--- + +{{< figure src="/blocks/Cortex_Blocks_Queues_GetCount_GetCountOfAllItemsBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Queues.GetCount.GetCountOfAllItemsBlock`2)

+ +## Description + +Gets the [Count][Count Property] of all items in a [Queue][Queue Property]. + +## Examples + +### Get Count of all items in a Queue + +This example will get the count of all items in a [QueueWithPriority][]<[String][], [Int32][]> that contains `"Item -1"` with a priority of `-1` and `"Item 1"` with a priority of `1`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Queue][Queue Property] | `($)Queue`, with value `{"Items": [{"Item": "Item -1", "Priority": -1}, {"Item": "Item 1", "Priority": 1}], "PriorityComparer": {}}` | `($)Queue` is a variable of type [QueueWithPriority][]<[String][], [Int32][]> | +| [Count][Count Property] | `($)Count`, with no value | `($)Count` is a variable that will be set to an [Int32][] value | + +#### Result + +Getting the count of all items in `{"Items": [{"Item": "Item -1", "Priority": -1}, {"Item": "Item 1", "Priority": 1}], "PriorityComparer": {}}` results in the variable `($)Count` being updated to the following: + +```json +2 +``` + +*** + +## Properties + +### Queue + +The [Queue][Queue Property] to get the [Count][Count Property] of all items from. + +| | | +|--------------------|---------------------------| +| Data Type | [QueueWithPriority][]<[TItem][], [TPriority][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Queue` with no value | + +### Count + +The [Count][Count Property] of all items in [Queue][Queue Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Count` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyNullException][] | Thrown when [Queue][Queue Property] is `null`. | + +## Remarks + +### Empty List + +If [Queue][Queue Property] is empty (i.e. `{"Items": [], "PriorityComparer": {}}`), the variable specified in the [Count][Count Property] property is set to `0`. + +[Queue Property]: {{< ref "#queue" >}} +[Count Property]: {{< ref "#count" >}} + +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[QueueWithPriority]: {{< url path="Cortex.Reference.DataTypes.Collections.QueueWithPriority.MainDoc" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[TPriority]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/queues/peek-item/_index.md b/content/en/docs/2024.11/Reference/Blocks/queues/peek-item/_index.md new file mode 100644 index 000000000..1b7c59da4 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/queues/peek-item/_index.md @@ -0,0 +1,5 @@ +--- +title: "Peek Item(s)" +linkTitle: "Peek Item(s)" +description: "Gets the item or multiple items at the beginning of a queue without removing them." +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Blocks/queues/peek-item/peek-item-block.md b/content/en/docs/2024.11/Reference/Blocks/queues/peek-item/peek-item-block.md new file mode 100644 index 000000000..b1506ce63 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/queues/peek-item/peek-item-block.md @@ -0,0 +1,116 @@ +--- +title: "Peek Item" +linkTitle: "Peek Item" +description: "Gets the item at the beginning of a queue without removing it." +--- + +{{< figure src="/blocks/Cortex_Blocks_Queues_PeekItem_PeekItemBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Queues.PeekItem.PeekItemBlock`2)

+ +## Description + +Gets the [Item][Item Property] at the beginning of a [Queue][queue property] without removing it. + +## Examples + +### Peek the Item at the beginning of the Queue + +This example will peek [QueueWithPriority][]<[String][], [Int32][]> that contains `"Item -1"` with a priority of `-1` and `"Item 1"` with a priority of `1` and returns the Item with the minimal priority. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Queue][Queue Property] | `($)Queue`, with value `{"Items": [{"Item": "Item -1", "Priority": -1}, {"Item": "Item 1", "Priority": 1}], "PriorityComparer": {}}` |`($)Queue` is a variable of type [QueueWithPriority][]<[String][], [Int32][]> | +| [Item][Item Property] | `($)Item`, with no value | `($)Item` is a variable that will be set to type of the Item (i.e. [String][]) | + +#### Result + +Peeking `{"Items": [{"Item": "Item -1", "Priority": -1}, {"Item": "Item 1", "Priority": 1}], "PriorityComparer": {}}` results in the variable `($)Item` being updated to: + +```json +"Item -1" +``` + +and `($)Queue` still has the value: + +```json +{ + "Items": [ + { + "Item": "Item -1", + "Priority": -1 + }, + { + "Item": "Item 1", + "Priority": 1 + } + ], + "PriorityComparer": {} +} +``` + +*** + +## Properties + +### Queue + +The [Queue][Queue Property] to peek from. + +| | | +|--------------------|---------------------------| +| Data Type | [QueueWithPriority][]<[TItem][], [TPriority][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Queue` with no value | + +### Item + +The [Item][Item Property] with minimal priority. + +| | | +|--------------------|---------------------------| +| Data Type | [TItem][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Item` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyEmptyException][] | Thrown when [Queue][Queue Property] contains no items.| +| [PropertyNullException][] | Thrown when [Queue][Queue Property] is `null`. | + +## Remarks + +None + +[Queue Property]: {{< ref "#queue" >}} +[Item Property]: {{< ref "#item" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[TPriority]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[QueueWithPriority]: {{< url path="Cortex.Reference.DataTypes.Collections.QueueWithPriority.MainDoc" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/queues/remove-item/_index.md b/content/en/docs/2024.11/Reference/Blocks/queues/remove-item/_index.md new file mode 100644 index 000000000..0a570cc57 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/queues/remove-item/_index.md @@ -0,0 +1,5 @@ +--- +title: "Remove Item(s)" +linkTitle: "Remove Item(s)" +description: "Removes an item or multiple items from a queue." +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Blocks/queues/remove-item/remove-all-items-block.md b/content/en/docs/2024.11/Reference/Blocks/queues/remove-item/remove-all-items-block.md new file mode 100644 index 000000000..8237c530a --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/queues/remove-item/remove-all-items-block.md @@ -0,0 +1,86 @@ +--- +title: "Remove All Items" +linkTitle: "Remove All Items" +description: "Removes all items from a queue." +--- + +{{< figure src="/blocks/Cortex_Blocks_Queues_RemoveItem_RemoveAllItemsBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Queues.RemoveItem.RemoveAllItemsBlock)

+ +## Description + +Removes all items from a [Queue][queue property]. + +## Examples + +### Remove all items from the Queue + +This example will remove all items from [QueueWithPriority][]<[String][], [Int32][]> that contains `"Item -1"` with a priority of `-1` and `"Item 1"` with a priority of `1`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Queue][Queue Property] | `($)Queue`, with value `{"Items": [{"Item": "Item -1", "Priority": -1}, {"Item": "Item 1", "Priority": 1}], "PriorityComparer": {}}` |`($)Queue` is a variable of type [QueueWithPriority][]<[String][], [Int32][]> | + +#### Result + +Removing all items from `{"Items": [{"Item": "Item -1", "Priority": -1}, {"Item": "Item 1", "Priority": 1}], "PriorityComparer": {}}` results in `($)Queue` being updated to: + +```json +{ + "Items": [], + "PriorityComparer": {} +} +``` + +*** + +## Properties + +### Queue + +The [Queue][Queue Property] to remove all items from. + +| | | +|--------------------|---------------------------| +| Data Type | [QueueWithPriority][]<[TItem][], [TPriority][]> | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Queue` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyNullException][] | Thrown when [Queue][Queue Property] is `null`. | + +## Remarks + +### Empty Queue + +If [Queue][Queue Property] is empty (i.e. `{"Items": [], "PriorityComparer": {}}`) there is nothing to remove, so no operation is performed. + +[Queue Property]: {{< ref "#queue" >}} + +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[TPriority]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[QueueWithPriority]: {{< url path="Cortex.Reference.DataTypes.Collections.QueueWithPriority.MainDoc" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/schedules/_index.md b/content/en/docs/2024.11/Reference/Blocks/schedules/_index.md new file mode 100644 index 000000000..4959fc9ea --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/schedules/_index.md @@ -0,0 +1,5 @@ +--- +title: "Schedules" +linkTitle: "Schedules" +description: "Blocks related to working with Schedules." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/schedules/wait-for/_index.md b/content/en/docs/2024.11/Reference/Blocks/schedules/wait-for/_index.md new file mode 100644 index 000000000..2ac050e2b --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/schedules/wait-for/_index.md @@ -0,0 +1,5 @@ +--- +title: "Wait For" +linkTitle: "Wait For" +description: "Wait for certain events to occur (i.e. a duration to pass)." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/schedules/wait-for/wait-for-duration-block.md b/content/en/docs/2024.11/Reference/Blocks/schedules/wait-for/wait-for-duration-block.md new file mode 100644 index 000000000..a91a26f8b --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/schedules/wait-for/wait-for-duration-block.md @@ -0,0 +1,90 @@ +--- +title: "Wait For Duration" +linkTitle: "Wait For Duration" +description: "Waits for a specified time period (Years, Months, Days, Hours, Minutes, Seconds and Milliseconds)." +--- + +{{< figure src="/blocks/Cortex_Blocks_Schedules_WaitFor_WaitForDurationBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Schedules.WaitFor.WaitForDurationBlock)

+ +## Description + +Waits for a specified [Duration][Duration Property]. + +## Examples + +### Wait for duration + +This example will wait for `30` seconds. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Duration][Duration Property] | `($)Duration`, with value of `{"Years": 0, "Months": 0, "Days": 0, "Hours": 0, "Minutes": 0, "Seconds": 30, "Milliseconds": 0}` | `($)Duration` is a variable of type [TimePeriod][] | + +#### Result + +The block will wait for `30` seconds before completing, at which stage the flow execution will proceed to the next block. + +*** + +## Properties + +### Duration + +The [Duration][Duration Property] to wait for. + +[Duration][Duration Property] can have positive and negative components where components are: + +* Years +* Months +* Days +* Hours +* Minutes +* Seconds +* Milliseconds + +When waiting for [Duration][Duration Property], the block will calculate the date time to wait until by adding the [Duration][Duration Property] to the current date time. It will first add years, followed by months, days, hours, minutes, seconds and finally milliseconds. + +When adding months, if the current day component is greater than the last day in the resultant month, it will update the day to the last day for that month (e.g. adding one month onto `2021-01-31T23:59:59+00:00` will equate to `2021-02-28T23:59:59+00:00`). + +| | | +|--------------------|---------------------------| +| Data Type | [TimePeriod][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | Years: `0`
Months: `0`
Days: `0`
Hours: `0`
Minutes: `0`
Seconds: `0`
Milliseconds: `0`| + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [ArgumentOutOfRangeException][] | Thrown when any of the values or the sum of components of [Duration][Duration Property] are out of range. | +| [PropertyValueOutOfRangeException][] | Thrown when [Duration][Duration Property] is negative (i.e. the sum of the components of [Duration][Duration Property] is less than `0` milliseconds). | + +## Remarks + +None + +[Duration Property]: {{< ref "#duration" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[ArgumentOutOfRangeException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentOutOfRangeException" >}} + +[PropertyValueOutOfRangeException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.MainDoc" >}} + +[TimePeriod]: {{< url path="Cortex.Reference.DataTypes.DateAndTime.TimePeriod.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/ssh/_index.md b/content/en/docs/2024.11/Reference/Blocks/ssh/_index.md new file mode 100644 index 000000000..118737e8e --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/ssh/_index.md @@ -0,0 +1,5 @@ +--- +title: "Ssh" +linkTitle: "Ssh" +description: "Blocks related to working with SSH." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/ssh/execute-ssh-command/_index.md b/content/en/docs/2024.11/Reference/Blocks/ssh/execute-ssh-command/_index.md new file mode 100644 index 000000000..aece5ec5d --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/ssh/execute-ssh-command/_index.md @@ -0,0 +1,5 @@ +--- +title: "Execute Ssh Command" +linkTitle: "Execute Ssh Command" +description: "Blocks related to executing SSH commands." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/ssh/execute-ssh-command/execute-ssh-command-block.md b/content/en/docs/2024.11/Reference/Blocks/ssh/execute-ssh-command/execute-ssh-command-block.md new file mode 100644 index 000000000..de8e7b439 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/ssh/execute-ssh-command/execute-ssh-command-block.md @@ -0,0 +1,315 @@ +--- +title: "Execute Ssh Command" +linkTitle: "Execute Ssh Command" +description: "Executes an SSH command on the specified host." +--- + +{{< figure src="/blocks/Cortex_Blocks_Ssh_ExecuteSshCommand_ExecuteSshCommandBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Ssh.ExecuteSshCommand.ExecuteSshCommandBlock)

+ +{{% alert type="information" title="Information" %}}Improvements to this page are planned for the future; this will include further examples and remarks.{{% /alert %}} + +## Description + +Connects to a host using the [Ssh Session Details][Ssh Session Details Property], and executes a [Command][Command Property], returning the [Response][Response Property] and [Ssh Logs][Ssh Logs Property]. + +[Close Session][Close Session Property] can be specified to choose whether the session on the host is closed or is kept open for use on subsequent Execute Ssh Command blocks. + +## Examples + +### Execute a Command using UserCredentials + +This example will execute a [Command][Command Property] on the server with the following details: + +- Host - `"localhost"` +- Port - `22` +- Domain - `"domain"` +- Username - `"username"` +- Password - `"password"` + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Command][Command Property] | `($)Command` with value `"ipconfig"` | `($)Command` is a variable of type [EncryptableText][] | +| [Ssh Session Details][Ssh Session Details Property] | `($)SshSessionDetails` with value `{"Host": "localhost", "Port": 22, "Credentials": {"Domain": "domain", "Username": "username", "Password": "encryptedPassword"}, "TerminalPrompt": ".*[>\|\$\|#]"}`

In this example `($)SshSessionDetails` has been set up using the following [Expression][]:

`new SshSessionDetails("localhost", 22, new UserCredentials("domain", "username", "encryptedPassword"), $@".*[>\|\$\|#]")` | `($)SshSessionDetails` is a variable of type [SshSessionDetails][] | +| [Close Session][Close Session Property] | `($)CloseSession` with value `true` | `($)CloseSession` is a variable of type [Boolean][] | +| [Configuration Settings][Configuration Settings Property] | `($)ConfigurationSettings`, with no value | `($)ConfigurationSettings` is a variable of type [Dictionary][]<[String][], [EncryptableText][]> | +| [Response][Response Property] | `($)Response`, with no value | `($)Response` will be set to the type [String][] | +| [Ssh Logs][Ssh Logs Property] | `($)SshLogs`, with no value | `($)SshLogs` will be set to the type [SshLogs][] | + +#### Result + +Running the [Command][Command Property] results in the variable `($)Response` being updated to the following: + +```text +Windows IP Configuration + +Ethernet adapter Ethernet 3: + +Connection-specific DNS Suffix. : reddog.microsoft.com +Link-local IPv6 Address. . . . . : fe80::78eb:a051:2b84:e8bd%6 +IPv4 Address. . . . . . . . . . . : 10.3.0.4 +Subnet Mask . . . . . . . . . . . : 255.255.255.0 +Default Gateway . . . . . . . . . : 10.3.0.1 +``` + +It also results in the variable `($)SshLogs` being updated to the following: + +```json +{ + "WelcomeMessage": "Last login: Tue Mar 1 06:50:23 2022 from 10.8.0.224", + "Logs": "[Info] Sending local version: \"SSH-2.0-IPWorks SSH Client 2020\".\r\n[Info] Read remote version string: \"SSH-2.0-OpenSSH_4.7p1 Debian-8ubuntu1.2\".\r\n[Info] Beginning key exchange.[Info] Sending local version: \"SSH-2.0-IPWorks SSH Client 2020\".\r\n[Info] Read remote version string: \"SSH-2.0-OpenSSH_4.7p1 Debian-8ubuntu1.2\".\r\n[Info] Beginning key exchange..." +} +``` + +Note that more logs are included in this example, but have been omitted from `($)SshLogs.Logs`. + +*** + +### Execute a Command using SshCertificateCredentials + +This example will execute a [Command][Command Property] on the server with the following details: + +- Host - `"localhost"` +- Port - `22` +- Domain - `"domain"` + +The server can be connected to using a valid certificate. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Command][Command Property] | `($)Command` with value `"ipconfig"` | `($)Command` is a variable of type [EncryptableText][] | +| [Ssh Session Details][Ssh Session Details Property] | `($)SshSessionDetails` with value `{"Host": "localhost", "Port": 22, "Credentials": {"Domain": "domain", "Username": "username", "CertificatePath": "C:\\Certificate.pfx", "CertificatePassword": "encryptedCertificatePassword"}, "TerminalPrompt": ".*[>\|\$\|#]"}`

In this example `($)SshSessionDetails` has been set up using the following [Expression][]:

`new SshSessionDetails("localhost", 22, new SshCertificateCredentials("domain", "username", @"C\Certificate.pfx", "encryptedCertificatePassword"), $@".*[>\|\$\|#]")` | `($)SshSessionDetails` is a variable of type [SshSessionDetails][] | +| [Close Session][Close Session Property] | `($)CloseSession` with value `true` | `($)CloseSession` is a variable of type [Boolean][] | +| [Configuration Settings][Configuration Settings Property] | `($)ConfigurationSettings`, with no value | `($)CloseSession` is a variable of type [Dictionary][]<[String][], [EncryptableText][]> | +| [Response][Response Property] | `($)Response`, with no value | `($)Response` will be set to the type [String][] | +| [Ssh Logs][Ssh Logs Property] | `($)SshLogs`, with no value | `($)SshLogs` will be set to the type [SshLogs][] | + +#### Result + +Running the [Command][Command Property] results in the variable `($)Response` being updated to the following: + +```text +Windows IP Configuration + +Ethernet adapter Ethernet 3: + +Connection-specific DNS Suffix. : reddog.microsoft.com +Link-local IPv6 Address. . . . . : fe80::78eb:a051:2b84:e8bd%6 +IPv4 Address. . . . . . . . . . . : 10.3.0.4 +Subnet Mask . . . . . . . . . . . : 255.255.255.0 +Default Gateway . . . . . . . . . : 10.3.0.1 +``` + +It also results in the variable `($)SshLogs` being updated to the following: + +```json +{ + "WelcomeMessage": "Last login: Tue Mar 1 06:50:23 2022 from 10.8.0.224", + "Logs": "[Info] Sending local version: \"SSH-2.0-IPWorks SSH Client 2020\".\r\n[Info] Read remote version string: \"SSH-2.0-OpenSSH_4.7p1 Debian-8ubuntu1.2\".\r\n[Info] Beginning key exchange.[Info] Sending local version: \"SSH-2.0-IPWorks SSH Client 2020\".\r\n[Info] Read remote version string: \"SSH-2.0-OpenSSH_4.7p1 Debian-8ubuntu1.2\".\r\n[Info] Beginning key exchange..." +} +``` + +Note that more logs are included in this example, but have been omitted from `($)SshLogs.Logs`. + +*** + +## Properties + +### Command + +The [Command][Command Property] that will be executed on the [Host][SshSessionDetails Host] specified in the [Ssh Session Details][Ssh Session Details Property]. + +||| +|----------|----------| +| Data Type | [EncryptableText][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | `$@""` | + +### Ssh Session Details + +The [Ssh Session Details][Ssh Session Details Property] object that includes all of the information required to open and maintain a SSH session. This property contains all of the information in relation to the server the [Command][Command Property] will be executed on, these are: + +- [Host][SshSessionDetails Host] +- [Port][SshSessionDetails Port] +- [Credentials][SshSessionDetails Credentials] +- [TerminalPrompt][SshSessionDetails TerminalPrompt] + +||| +|----------|----------| +| Data Type | [SshSessionDetails][] | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)SshSessionDetails` with no value | + +### Close Session + +[Close Session][Close Session Property] can be specified to choose whether the session on the [Host][SshSessionDetails Host] is closed or is kept open for use on subsequent Execute Ssh Command blocks, this defaults to `false` if left blank, please see [Closing Sessions][] for more information. + +||| +|----------|----------| +| Data Type | [Boolean][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [Boolean][] with value `true` | + +### Configuration Settings + +The [Configuration Settings][Configuration Settings Property] for the SSH connection and execution. + +||| +|----------|----------| +| Data Type | [IDictionary][]<[String][], [dynamic][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Expression][] | +| Default Value | [IDictionary][]<[String][], [dynamic][]> with value shown below: | + +```csharp +new Dictionary { + { "TerminalWidth", "200" }, + { "TerminalType", "vt100" }, + { "Timeout", "60" }, + { "EndOfLineCharacters", "\r" }, + { "CancelCommand", "CtrlC" }, +} +``` + +### Response + +The SSH [Response][Response Property] that is returned from the execution of the [Command][Command Property] on the [Host][SshSessionDetails Host] specified in the [Ssh Session Details][Ssh Session Details Property]. + +||| +|----------|----------| +| Data Type | [String][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Response` with no value | + +### Ssh Logs + +The [Ssh Logs][Ssh Logs Property] that are returned from the execution of the [Command][Command Property] on the host specified in the [Ssh Session Details][Ssh Session Details Property]. This property contains all of the information in relation to the logs returned by the [Command][Command Property], these are: + +- [WelcomeMessage][] +- [TerminalPromptMatch][] +- [Logs][] + +||| +|----------|----------| +| Data Type | [SshLogs][] | +| Property Type | [Output][] | +| Is [Advanced][] | `true` | +| Default Editor | [Variable][] | +| Default Value | `($)SshLogs` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|--------------------------------------|-------------| +| [PropertyNullException][] | Thrown when [Command][Command Property] is `null`. | +|| Thrown when the [Ssh Session Details][Ssh Session Details Property] is `null`. | +|| Thrown when the [Host][SshSessionDetails Host] within the [Ssh Session Details][Ssh Session Details Property] is `null`. | +|| Thrown when the [Credentials][SshSessionDetails Credentials] within the [Ssh Session Details][Ssh Session Details Property] is `null`. | +|| Thrown when using [SshCertificateCredentials][], the CertificatePath in the specified [Credentials][SshSessionDetails Credentials] within the [Ssh Session Details][Ssh Session Details Property] is `null`. | +| [PropertyEmptyException][] | Thrown when the specified [Host][SshSessionDetails Host] within the [Ssh Session Details][Ssh Session Details Property] is empty. | +|| Thrown when the CertificatePath in the specified [Credentials][SshSessionDetails Credentials] within the [Ssh Session Details][Ssh Session Details Property] is empty. | +| [PropertyValueOutOfRangeException][] | Thrown when the specified [Port][SshSessionDetails Port] within the [Ssh Session Details][Ssh Session Details Property] is below 1 or above 65535. | +| [SshClientException][] | Thrown when one or more settings in [Configuration Settings][Configuration Settings Property] are invalid. (includes a dictionary of SettingName: ExceptionMessage from IPWorksSSHSshClientException) | +|| Thrown when the specified [Host][SshSessionDetails Host] within the [Ssh Session Details][Ssh Session Details Property] is invalid. | +|| Thrown when the specified [Port][SshSessionDetails Port] within the [Ssh Session Details][Ssh Session Details Property] is invalid. | +|| Thrown when the server host key has not been accepted. | +|| Thrown when using [UserCredentials][], the specified domain, username or password within [Credentials][SshSessionDetails Credentials] is invalid. | +|| Thrown when using [SshCertificateCredentials][], the specified Domain, Username, CertificatePath or CertificatePassword is invalid. | +|| Thrown when the [Host][SshSessionDetails Host] exits without using [Close Session][Close Session Property], returning the response received up to the point the host exited the session. | +| [SshResponseException][] | Thrown if the specified [TerminalPrompt][SshSessionDetails TerminalPrompt] does not match the terminal prompt on the host causing the execution to timeout or the timeout was too short to allow for data to be received. | +| [RegexMatchTimeoutException][] | Thrown when the execution time of the regular expression pattern-matching exceeds the time-out interval. | +| [RegexParsingFailedException][] | Thrown when [TerminalPrompt][SshSessionDetails TerminalPrompt] within [Ssh Session Details][Ssh Session Details Property] contains invalid regex. | + +## Remarks + +### Opening Sessions + +The Execute Ssh Command block automatically handles creating and opening a session for the specified [Ssh Session Details][Ssh Session Details Property] using the following rules: + +- If a session does not exist, a new session will be created, opened and used when the block runs. +- If a session already exists but is closed, the session will be opened and used when the block runs. +- If a session already exists and is open, the session will be used when the block runs. + +For information on how to explicitly close a session, please see [Closing Sessions][]. + +### Closing Sessions + +Sessions can be explicitly closed by setting [Close Session][Close Session Property] to `true`. This causes the session to be closed after the [Command][Command Property] has been executed. + +For information on how to open a session, please see [Opening Sessions][]. + +### Using the TerminalPromptMatch Within SshLogs to Reach the End of a Prompt + +[SshLogs][] includes a TerminalPromptMatch property that represents any string within the returned logs that matches the TerminalPrompt property within the [SshSessionDetails][]. + +Some prompts within SSH require multiple interactions before reaching the end of the prompt. The TerminalPromptMatch can be used to make decisions or loop within a flow sending further input to the Ssh Command to navigate to the end of the prompt. + +### Known Limitations + +None + +[Command Property]: {{< ref "#command" >}} +[Ssh Session Details Property]: {{< ref "#ssh-session-details" >}} +[Close Session Property]: {{< ref "#close-session" >}} +[Configuration Settings Property]: {{< ref "#configuration-settings" >}} +[Response Property]: {{< ref "#response" >}} +[Ssh Logs Property]: {{< ref "#ssh-logs" >}} + +[Opening Sessions]: {{< ref "#opening-sessions" >}} +[Closing Sessions]: {{< ref "#closing-sessions" >}} + +[IDictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} +[Dictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.MainDoc" >}} +[EncryptableText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptableText.MainDoc" >}} + +[SshCertificateCredentials]: {{< url path="Cortex.Reference.DataTypes.Ssh.Authentication.SshCertificateCredentials.MainDoc" >}} + +[SshSessionDetails]: {{< url path="Cortex.Reference.DataTypes.Ssh.SshSessionDetails.MainDoc" >}} +[SshSessionDetails Host]: {{< url path="Cortex.Reference.DataTypes.Ssh.SshSessionDetails.Host" >}} +[SshSessionDetails Port]: {{< url path="Cortex.Reference.DataTypes.Ssh.SshSessionDetails.Port" >}} +[SshSessionDetails Credentials]: {{< url path="Cortex.Reference.DataTypes.Ssh.SshSessionDetails.Credentials" >}} +[SshSessionDetails TerminalPrompt]: {{< url path="Cortex.Reference.DataTypes.Ssh.SshSessionDetails.TerminalPrompt" >}} +[Logs]: {{< url path="Cortex.Reference.DataTypes.Ssh.SshLogs.Logs" >}} +[WelcomeMessage]: {{< url path="Cortex.Reference.DataTypes.Ssh.SshLogs.WelcomeMessage" >}} +[TerminalPromptMatch]: {{< url path="Cortex.Reference.DataTypes.Ssh.SshLogs.TerminalPromptMatch" >}} + +[SshLogs]: {{< url path="Cortex.Reference.DataTypes.Ssh.SshLogs.MainDoc" >}} + +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[UserCredentials]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.MainDoc" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyValueOutOfRangeException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.MainDoc" >}} +[SshClientException]: {{< url path="Cortex.Reference.Exceptions.Ssh.SshClientException" >}} +[SshResponseException]: {{< url path="Cortex.Reference.Exceptions.Ssh.SshResponseException" >}} +[RegexMatchTimeoutException]: {{< url path="MSDocs.DotNet.Api.System.Text.RegularExpressions.RegexMatchTimeoutException" >}} +[RegexParsingFailedException]: {{< url path="Cortex.Reference.Exceptions.Text.Regex.RegexParsingFailedException.MainDoc" >}} + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/tasks/_index.md b/content/en/docs/2024.11/Reference/Blocks/tasks/_index.md new file mode 100644 index 000000000..34e7041e1 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/tasks/_index.md @@ -0,0 +1,5 @@ +--- +title: "Tasks" +linkTitle: "Tasks" +description: "Blocks related to working with Tasks." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/tasks/cancel-task/_index.md b/content/en/docs/2024.11/Reference/Blocks/tasks/cancel-task/_index.md new file mode 100644 index 000000000..fa369cb34 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/tasks/cancel-task/_index.md @@ -0,0 +1,5 @@ +--- +title: "Cancel Task(s)" +linkTitle: "Cancel Task(s)" +description: "Cancel a Task or multiple Tasks." +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Blocks/tasks/cancel-task/cancel-all-tasks-block-2.md b/content/en/docs/2024.11/Reference/Blocks/tasks/cancel-task/cancel-all-tasks-block-2.md new file mode 100644 index 000000000..1af757797 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/tasks/cancel-task/cancel-all-tasks-block-2.md @@ -0,0 +1,171 @@ +--- +title: "Cancel All Tasks" +linkTitle: "Cancel All Tasks" +description: "Cancels all Tasks in a list." +--- + +{{< figure src="/blocks/Cortex_Blocks_Tasks_CancelTask_CancelAllTasksBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Tasks.CancelTask.CancelAllTasksBlock`2)

+ +## Description + +Cancels the execution of all [Tasks][Tasks Property] in a specified list. + +## Examples + +### Cancel a list of running Tasks + +This example will cancel the executions of all tasks in a list; the list contains two [IExecutionTasks][IExecutionTask] that represent asynchronous executions of other flows. Both [IExecutionTasks][IExecutionTask] represent a flow that waits for 5 seconds then sets an output variable `ResultVariable` to `"ResultValue"`. The [Cancel All Tasks][CancelAllTasks] block begins execution 1 second after the asynchronous flows have started, so the flows get cancelled before each `ResultVariable` is set. + +When the [Cancel All Tasks][CancelAllTasks] block begins, the [IExecutionTasks][IExecutionTask] will have the following properties: + +```json +{ + "ExecutionId": "00000000-0000-0000-0000-000000000000", + "Id": "00000000-0000-0000-0000-000000000000", + "IsCancelled": false, + "IsCompleted": false, + "IsCompletedSuccessfully": false, + "IsFaulted": false, + "Status": "Running", + "Exception": null +} +``` + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Tasks][Tasks Property] | `($)Tasks`, with value `[($)ExecutionTask1, ($)ExecutionTask2]` | `($)Tasks` is a variable of type [List][]<[IExecutionTask][]> | + +#### Result + +Cancelling all [IExecutionTasks][IExecutionTask] 1 second after they have started, results in the flows they represent being cancelled and the properties of each [IExecutionTask][IExecutionTask] in `($)Tasks` being updated to the following: + +```json +{ + "ExecutionId": "00000000-0000-0000-0000-000000000000", + "Id": "00000000-0000-0000-0000-000000000000", + "IsCancelled": true, + "IsCompleted": true, + "IsCompletedSuccessfully": false, + "IsFaulted": true, + "Status": "Cancelled", + "Exception": { + "Exception Type": "FlowExecutionStoppedException", + "Message": "Flow execution has been stopped!", + "FlowId": "00000000-0000-0000-0000-000000000000", + "ExecutionId": "00000000-0000-0000-0000-000000000000" + } +} +``` + +*** + +### Cancel a list of completed Tasks + +This example will cancel the executions of all tasks in a list; the list contains two [IExecutionTasks][IExecutionTask] that represent asynchronous executions of other flows. Both [IExecutionTasks][IExecutionTask] represent a flow that waits for 5 seconds then sets an output variable `ResultVariable` to `"ResultValue"`. The [Cancel All Tasks][CancelAllTasks] block begins execution 6 seconds after the asynchronous flows have started, so the flows complete and set their `ResultVariable` before they could be cancelled. + +When the [Cancel All Tasks][CancelAllTasks] block begins, the [IExecutionTasks][IExecutionTask] will have the following properties: + +```json +{ + "ExecutionId": "00000000-0000-0000-0000-000000000000", + "Id": "00000000-0000-0000-0000-000000000000", + "IsCancelled": false, + "IsCompleted": true, + "IsCompletedSuccessfully": true, + "IsFaulted": false, + "Status": "RanToCompletion", + "Exception": null +} +``` + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Tasks][Tasks Property] | `($)Tasks`, with value `[($)ExecutionTask1, ($)ExecutionTask2]` | `($)Tasks` is a variable of type [List][]<[IExecutionTask][]> | + +#### Result + +Cancelling all [IExecutionTasks][IExecutionTask] has no effect as the flows they represent were completed and their properties remain unchanged. + +```json +{ + "ExecutionId": "00000000-0000-0000-0000-000000000000", + "Id": "00000000-0000-0000-0000-000000000000", + "IsCancelled": false, + "IsCompleted": true, + "IsCompletedSuccessfully": true, + "IsFaulted": false, + "Status": "RanToCompletion", + "Exception": null +} +``` + +## Properties + +### Tasks + +The list of Tasks to cancel. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[ITask][]<[TResult][]>> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Tasks` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyContainsNullItemException][] | Thrown when any Task in [Tasks][Tasks Property] is `null`.| +| [PropertyEmptyException][] | Thrown when [Tasks][Tasks Property] contains no items.| +| [PropertyNullException][] | Thrown when [Tasks][Tasks Property] is `null`.| + +## Remarks + +### Cancelling a Task That Has Already Been Cancelled + +If the Task being cancelled has already been cancelled, this block will do nothing and the status of the Task will remain `"Cancelled"`. + +### Cancelling a Task That Has Been Completed + +If the Task being cancelled has already been completed, this block will do nothing and the status of the Task will remain `"RanToCompletion"`. + +### Cancelling a Task That Has Thrown an Exception + +If the Task being cancelled has thrown an exception during execution, this block will do nothing and the status of the Task will remain `"Faulted"`. + +[Tasks Property]: {{< ref "#tasks" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[TTask]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[TResult]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[List]: {{< url path="Cortex.Reference.DataTypes.Collections.List.MainDoc" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyContainsNullItemException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyContainsNullItemException.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[IExecutionTask]: {{< url path="Cortex.Reference.DataTypes.Tasks.IExecutionTask.MainDoc" >}} +[ITask]: {{< url path="Cortex.Reference.DataTypes.Tasks.ITask.MainDoc" >}} +[CancelAllTasks]: {{< ref "#cancel-all-tasks" >}} +[RunFlowAsync]: {{< url path="Cortex.Reference.Blocks.Flows.RunFlow.RunFlowAsync.MainDoc" >}} + + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/tasks/cancel-task/cancel-task-block-1.md b/content/en/docs/2024.11/Reference/Blocks/tasks/cancel-task/cancel-task-block-1.md new file mode 100644 index 000000000..cca4bb9b0 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/tasks/cancel-task/cancel-task-block-1.md @@ -0,0 +1,163 @@ +--- +title: "Cancel Task" +linkTitle: "Cancel Task" +description: "Cancels a Task." +--- + +{{< figure src="/blocks/Cortex_Blocks_Tasks_CancelTask_CancelTaskBlock_1.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Tasks.CancelTask.CancelTaskBlock`1)

+ +## Description + +Cancels the execution of the specified [Task][Task Property]. + +## Examples + +### Cancel a running Task + +This example will cancel an [IExecutionTask][] that represents the asynchronous execution of another flow. The flow this [IExecutionTask][] represents waits for 5 seconds then sets an output variable `ResultVariable` to `"ResultValue"`. The [Cancel Task Block][CancelTask] begins execution 1 second after the asynchronous flow has started, so the flow gets cancelled before `ResultVariable` is set. + +When the [Cancel Task Block][CancelTask] begins, the [IExecutionTask][] will have the following properties: + +```json +{ + "ExecutionId": "00000000-0000-0000-0000-000000000000", + "Id": "00000000-0000-0000-0000-000000000000", + "IsCancelled": false, + "IsCompleted": false, + "IsCompletedSuccessfully": false, + "IsFaulted": false, + "Status": "Running", + "Exception": null +} +``` + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Task][Task Property] | `($)Task`, with a value that represents the asynchronous execution of another flow | `($)Task` is a variable of type [IExecutionTask][] | + +#### Result + +Cancelling the [IExecutionTask][] 1 second after it has started, results in the flow it represents being cancelled and the properties of `($)Task` being updated to the following: + +```json +{ + "ExecutionId": "00000000-0000-0000-0000-000000000000", + "Id": "00000000-0000-0000-0000-000000000000", + "IsCancelled": true, + "IsCompleted": true, + "IsCompletedSuccessfully": false, + "IsFaulted": true, + "Status": "Cancelled", + "Exception": { + "Exception Type": "FlowExecutionStoppedException", + "Message": "Flow execution has been stopped!", + "FlowId": "00000000-0000-0000-0000-000000000000", + "ExecutionId": "00000000-0000-0000-0000-000000000000" + } +} +``` + +*** + +### Cancel a completed Task + +This example will cancel an [IExecutionTask][] that represents the asynchronous execution of another flow. The flow this [IExecutionTask][] represents waits for 5 seconds then sets the output variable `ResultVariable` to `"ResultValue"`. The [Cancel Task Block][CancelTask] begins execution 6 seconds after the asynchronous flow has started, so the flow completes and sets `ResultVariable` before it could be cancelled. + +When the [Cancel Task Block][CancelTask] begins, the [IExecutionTask][] will have the following properties: + +```json +{ + "ExecutionId": "00000000-0000-0000-0000-000000000000", + "Id": "00000000-0000-0000-0000-000000000000", + "IsCancelled": false, + "IsCompleted": true, + "IsCompletedSuccessfully": true, + "IsFaulted": false, + "Status": "RanToCompletion", + "Exception": null +} +``` + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Task][Task Property] | `($)Task`, with a value that represents the asynchronous execution of another flow | `($)Task` is a variable of type [IExecutionTask][] | + +#### Result + +Cancelling the [IExecutionTask][] has no effect as the flow it represents was completed and its properties remain unchanged. + +```json +{ + "ExecutionId": "00000000-0000-0000-0000-000000000000", + "Id": "00000000-0000-0000-0000-000000000000", + "IsCancelled": false, + "IsCompleted": true, + "IsCompletedSuccessfully": true, + "IsFaulted": false, + "Status": "RanToCompletion", + "Exception": null +} +``` + +## Properties + +### Task + +The [Task][Task Property] to cancel. + +| | | +|--------------------|---------------------------| +| Data Type | [ITask][]<[TResult][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Task` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyNullException][] | Thrown when [Task][Task Property] is `null`.| + +## Remarks + +### Cancelling a Task That Has Already Been Cancelled + +If the [Task][Task Property] being cancelled has already been cancelled, this block will do nothing and the status of the [Task][Task Property] will remain `"Cancelled"`. + +### Cancelling a Task That Has Been Completed + +If the [Task][Task Property] being cancelled has already been completed, this block will do nothing and the status of the [Task][Task Property] will remain `"RanToCompletion"`. + +### Cancelling a Task That Has Thrown an Exception + +If the [Task][Task Property] being cancelled has thrown an exception during execution, this block will do nothing and the status of the [Task][Task Property] will remain `"Faulted"`. + +[Task Property]: {{< ref "#task" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} + +[TResult]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[IExecutionTask]: {{< url path="Cortex.Reference.DataTypes.Tasks.IExecutionTask.MainDoc" >}} +[ITask]: {{< url path="Cortex.Reference.DataTypes.Tasks.ITask.MainDoc" >}} +[CancelTask]: {{< ref "#cancel-task" >}} +[RunFlowAsync]: {{< url path="Cortex.Reference.Blocks.Flows.RunFlow.RunFlowAsync.MainDoc" >}} + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/tasks/wait-for-task/_index.md b/content/en/docs/2024.11/Reference/Blocks/tasks/wait-for-task/_index.md new file mode 100644 index 000000000..0d2464a6d --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/tasks/wait-for-task/_index.md @@ -0,0 +1,5 @@ +--- +title: "Wait For Task(s)" +linkTitle: "Wait For Task(s)" +description: "Wait for a task or multiple tasks." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/tasks/wait-for-task/wait-for-all-tasks-block-2.md b/content/en/docs/2024.11/Reference/Blocks/tasks/wait-for-task/wait-for-all-tasks-block-2.md new file mode 100644 index 000000000..1b2f5b7e8 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/tasks/wait-for-task/wait-for-all-tasks-block-2.md @@ -0,0 +1,282 @@ +--- +title: "Wait For All Tasks" +linkTitle: "Wait For All Tasks" +description: "Waits for multiple Tasks to complete and returns their Results." +--- + +{{< figure src="/blocks/Cortex_Blocks_Tasks_WaitForTask_WaitForAllTasksBlock_2.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Tasks.WaitForTask.WaitForAllTasksBlock`2)

+ +## Description + +Waits for all of the specified [Tasks][Tasks Property] to finish and returns a list of all [Results][Results Property]. + +## Examples + +### Wait for multiple running Tasks + +This example will wait for three instances of an [IExecutionTask][] that represent asynchronous executions of other flows. The flows that the [IExecutionTask][]'s represent waits for 2 seconds, 4 seconds and 6 seconds respectively and then sets the output variable `TimeWaited` equal to the amount of seconds the flow waited. The [Wait For All Tasks][] block begins execution 1 second after the asynchronous flows are started. + +When the [Wait For All Tasks][] block begins, the [IExecutionTask][]'s will have the following properties: + +```json + +{ + "ExecutionId": "00000000-0000-0000-0000-000000000000", + "Id": "00000000-0000-0000-0000-000000000000", + "IsCancelled": false, + "IsCompleted": false, + "IsCompletedSuccessfully": false, + "IsFaulted": false, + "Status": "Running", + "Exception": null +} + +``` + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Tasks][Tasks Property] | `($)Tasks`, with value that represents a list of asynchronous executions of another flow | `($)Tasks` is a variable of type [IList][]<[IExecutionTask][]> | +| [Results][Results Property] | `($)Results`, with no value | `($)Results` is a variable of type [IList][]<[Structure][]> | + +#### Result + +Waiting for the [IExecutionTask][]'s 1 second after they have started, results in the execution containing the [Wait For All Tasks][] block to wait for all tasks to complete, pausing for 5 seconds and then the variable `($)Results` being updated to the following: + +```json +[ + { + "TimeWaited": 2 + }, + { + "TimeWaited": 4 + }, + { + "TimeWaited": 6 + } +] +``` + +After the [Wait For All Tasks][] block finishes, the tasks in `($)Tasks` will be in the following state: + +```json +{ + "ExecutionId": "00000000-0000-0000-0000-000000000000", + "Id": "00000000-0000-0000-0000-000000000000", + "IsCancelled": false, + "IsCompleted": true, + "IsCompletedSuccessfully": true, + "IsFaulted": false, + "Status": "RanToCompletion", + "Exception": null +} +``` + +*** + +### Wait for multiple completed Tasks + +This example will wait for three instances of an [IExecutionTask][] that represent asynchronous executions of other flows. The flows that the [IExecutionTask][]'s represent waits for 2 seconds, 4 seconds and 6 seconds respectively and then sets the output variable `TimeWaited` equal to the amount of seconds the flow waited. The [Wait For All Tasks][] block begins execution 7 seconds after the asynchronous flows are started, therefore starting after all the executions have already completed. + +When the [Wait For All Tasks][] block begins, the [IExecutionTask][]'s will have the following properties: + +```json +{ + "ExecutionId": "00000000-0000-0000-0000-000000000000", + "Id": "00000000-0000-0000-0000-000000000000", + "IsCancelled": false, + "IsCompleted": true, + "IsCompletedSuccessfully": true, + "IsFaulted": false, + "Status": "RanToCompletion", + "Exception": null +} +``` + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Tasks][Tasks Property] | `($)Tasks`, with value that represents a list of asynchronous executions of another flow | `($)Tasks` is a variable of type [IList][]<[IExecutionTask][]> | +| [Results][Results Property] | `($)Results`, with no value | `($)Results` is a variable of type [IList][]<[Structure][]> | + +#### Result + +Waiting for the [IExecutionTask][]'s 7 seconds after they have started, results in the execution containing the [Wait For All Tasks][] block to not wait and the variable `($)Results` being immediately updated to the following: + +```json +[ + { + "TimeWaited": 2 + }, + { + "TimeWaited": 4 + }, + { + "TimeWaited": 6 + } +] +``` + +After the [Wait For All Tasks][] block finishes, the tasks in `($)Tasks` will remain unchanged: + +```json +{ + "ExecutionId": "00000000-0000-0000-0000-000000000000", + "Id": "00000000-0000-0000-0000-000000000000", + "IsCancelled": false, + "IsCompleted": true, + "IsCompletedSuccessfully": true, + "IsFaulted": false, + "Status": "RanToCompletion", + "Exception": null +} +``` + +*** + +## Properties + +### Tasks + +The list of [Tasks][Tasks Property] being waited for. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[ITask][]<[TResult][]>> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Tasks` with no value | + +### Results + +The list of [Results][Results Property] of all the [Tasks][Tasks Property] being waited for. + +The order of the [Results][Results Property] in the list will match the order of the [Tasks][Tasks Property] (ie. The Result of the Task at index 0, will also be at index 0). + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[TResult][]> | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Results` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyNullException][] | Thrown when [Tasks][Tasks Property] is `null`. | +| [PropertyEmptyException][] | Thrown when [Tasks][Tasks Property] is empty. | +| [PropertyContainsNullItemException][] | Thrown when one or more items in the list of [Tasks][Tasks Property] is `null`. | +| [AggregateTaskException][] | Thrown when one or more items in [Tasks][Tasks Property] throws an exception. | + +## Remarks + +### Waiting for Tasks that have been cancelled + +If one or more tasks in the [Tasks][Tasks Property] being waited on has already been cancelled or is cancelled whilst being waited on, this block will wait until all [Tasks][Tasks Property] are complete, then throw an [AggregateTaskException][] containing the cancellation exception(s). Please see [Waiting for a Task that has thrown an exception][WaitingException Remark] for more details. + +### Waiting for a Task that has been completed + +If one or more tasks in the [Tasks][Tasks Property] being waited on has completed, this block will wait for all [Tasks][Tasks Property] to complete before returning the [Results][Results Property]. + +### Waiting for a Task that has thrown an exception + +If one or more tasks in the [Tasks][Tasks Property] being waited on has already thrown an exception during execution or throws an exception whilst being waited on, this block will wait until all [Tasks][Tasks Property] are complete, then throw an [AggregateTaskException][]. + +The [AggregateTaskException][] has the property [TaskExceptions][] of type [IDictionary][]<[Int32][],[Exception][]>. This property contains a list of all exceptions thrown by the tasks as index/exception pairs, mapping the exception thrown to the index of the task that threw it. + +Below is an example of the value of [TaskExceptions][] after the first and third tasks both threw a [FlowException][]: +```json +{ + "0": { + "Exception Type": "FlowException", + "Message": "This flow threw an exception.", + "HelpLink": "https://docs.wearecortex.com/docs/2023.5/reference/exceptions/flows/flow-exception" + }, + "2": { + "Exception Type": "FlowException", + "Message": "This flow threw an exception.", + "HelpLink": "https://docs.wearecortex.com/docs/2023.5/reference/exceptions/flows/flow-exception" + } +} +``` + +To get the [Results][Results Property] of the [Tasks][Tasks Property] that did not throw an exception, you would need to use another [Wait For All Tasks][] block to wait on only the tasks that didn't throw an exception. Below is example showing the simplist method of doing so: + +{{< figure src="/images/WaitForAllTasksExample.png" title="Example Flow For Getting Only Successful Results" >}} + +1. Wait For All Tasks Block + * This block waits for three execution tasks in the variable `Tasks` to complete. + * The first and third execution throw an exception. + * The block throws an [AggregateTaskException][]. + * See [Wait For All Tasks][] block. +2. Handle Block Exception Block + * This block handles the [AggregateTaskException][]. + * It saves the exception to the variable `AggregateTaskException`. + * See [Handle Block Exception][] block. +3. Remove Items At Indexes Block + * This block removes all items at specific indexes from a list. + * The indexes to be removed are the indexes of the tasks that threw an exception. + * The [List][] property is set to `Tasks`. + * The [Indexes][] property is set to `AggregateTaskException.TaskExceptions.Keys`. + * See [Remove Items At Indexes] block. +4. Wait For All Tasks Block + * This block waits on the new list of [Tasks][Tasks Property]. + * The list now only contains only one task, the previously second task, as it did not throw an exception. + * See [Wait For All Tasks][] block. +5. Workspace Block + * This workspace then uses the successful results for something. + * See [Workspace][] block. + +[Tasks Property]: {{< ref "#tasks" >}} +[Results Property]: {{< ref "#results" >}} +[WaitingException Remark]: {{< ref "#waiting-for-a-task-that-has-thrown-an-exception" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[TResult]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[Wait For All Tasks]: {{< url path="Cortex.Reference.Blocks.Tasks.WaitForTask.WaitForAllTasksBlock.MainDoc" >}} +[Handle Block Exception]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleBlock.HandleBlockException.MainDoc" >}} +[Remove Items At Indexes]: {{< url path="Cortex.Reference.Blocks.Lists.RemoveItem.RemoveItemsAtIndexes.MainDoc" >}} +[Workspace]: {{< url path="Cortex.Reference.Blocks.Workspaces.Workspace.Workspace.MainDoc" >}} + +[List]: {{< url path="Cortex.Reference.Blocks.Lists.RemoveItem.RemoveItemsAtIndexes.List" >}} +[Indexes]: {{< url path="Cortex.Reference.Blocks.Lists.RemoveItem.RemoveItemsAtIndexes.Indexes" >}} + +[IExecutionTask]: {{< url path="Cortex.Reference.DataTypes.Tasks.IExecutionTask.MainDoc" >}} +[ITask]: {{< url path="Cortex.Reference.DataTypes.Tasks.ITask.MainDoc" >}} +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyContainsNullItemException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyContainsNullItemException.MainDoc" >}} +[AggregateTaskException]: {{< url path="Cortex.Reference.Exceptions.Tasks.AggregateTaskException.MainDoc" >}} + +[TaskExceptions]: {{< url path="Cortex.Reference.Exceptions.Tasks.AggregateTaskException.TaskExceptions" >}} + +[Exception]: {{< url path="Cortex.Reference.DataTypes.Exceptions.Exception.MainDoc" >}} +[FlowException]: {{< url path="Cortex.Reference.Exceptions.Flows.FlowException.MainDoc" >}} + +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Structure]: {{< url path="Cortex.Reference.DataTypes.Collections.Structure.MainDoc" >}} +[IDictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Blocks/tasks/wait-for-task/wait-for-task-block-1.md b/content/en/docs/2024.11/Reference/Blocks/tasks/wait-for-task/wait-for-task-block-1.md new file mode 100644 index 000000000..4915bbd8c --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/tasks/wait-for-task/wait-for-task-block-1.md @@ -0,0 +1,196 @@ +--- +title: "Wait For Task" +linkTitle: "Wait For Task" +description: "Waits for a Task to complete and returns the Result." +--- + +{{< figure src="/blocks/Cortex_Blocks_Tasks_WaitForTask_WaitForTaskBlock_1.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Tasks.WaitForTask.WaitForTaskBlock`1)

+ +## Description + +Waits for the specified [Task][Task Property] to finish and returns the [Result][Result Property] from the [Task][Task Property]. + +## Examples + +### Wait for a running Task + +This example will wait for an [IExecutionTask][] that represents the asynchronous execution of another flow. The flow this [IExecutionTask][] represents waits for 5 seconds and then sets the output variable `ResultVariable` to `"ResultValue"`. The [Wait For Task][] block begins execution 1 second after the asynchronous flow is started. + +When the [Wait For Task][] block begins, the [IExecutionTask][] will have the following properties: + +```json +{ + "ExecutionId": "00000000-0000-0000-0000-000000000000", + "Id": "00000000-0000-0000-0000-000000000000", + "IsCancelled": false, + "IsCompleted": false, + "IsCompletedSuccessfully": false, + "IsFaulted": false, + "Status": "Running", + "Exception": null +} + +``` + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Task][Task Property] | `($)Task`, with value that represents the asynchronous execution of another flow | `($)Task` is a variable of type [IExecutionTask][] | +| [Result][Result Property] | `($)Result`, with no value | `($)Result` is a variable of type [Structure][] | + +#### Result + +Waiting for the [IExecutionTask][] 1 second after it is started, results in the execution containing the [Wait For Task][] block to wait for the task to complete, pausing for 4 seconds and then the variable `($)Result` being updated to the following: + +```json +{ + "ResultVariable": "ResultValue" +} +``` + +After the [Wait For Task][] block finishes, the `($)Task` will be in the following state: + +```json +{ + "ExecutionId": "00000000-0000-0000-0000-000000000000", + "Id": "00000000-0000-0000-0000-000000000000", + "IsCancelled": false, + "IsCompleted": true, + "IsCompletedSuccessfully": true, + "IsFaulted": false, + "Status": "RanToCompletion", + "Exception": null +} +``` + +*** + +### Wait for a completed Task + +This example will wait for an [IExecutionTask][] that represents the asynchronous execution of another flow. The flow this [IExecutionTask][] represents waits for 5 seconds and then sets the output variable `ResultVariable` to `"ResultValue"`. The [Wait For Task][] block begins execution 6 seconds after the asynchronous flow is started, therefore starting after the execution has already completed. + +When the [Wait For Task][] block begins, the [IExecutionTask][] will have the following properties: + +```json +{ + "ExecutionId": "00000000-0000-0000-0000-000000000000", + "Id": "00000000-0000-0000-0000-000000000000", + "IsCancelled": false, + "IsCompleted": true, + "IsCompletedSuccessfully": true, + "IsFaulted": false, + "Status": "RanToCompletion", + "Exception": null +} +``` + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Task][Task Property] | `($)Task`, with value that represents the asynchronous execution of another flow | `($)Task` is a variable of type [IExecutionTask][] | +| [Result][Result Property] | `($)Result`, with no value | `($)Result` is a variable of type [Structure][] | + +#### Result + +Waiting for the [IExecutionTask][] 6 seconds after it is started, results in the execution containing the [Wait For Task][] block to not wait and the variable `($)Result` being immediately updated to the following: + +```json +{ + "ResultVariable": "ResultValue" +} +``` + +After the [Wait For Task][] block finishes, the `($)Task` will remain unchanged: + +```json +{ + "ExecutionId": "00000000-0000-0000-0000-000000000000", + "Id": "00000000-0000-0000-0000-000000000000", + "IsCancelled": false, + "IsCompleted": true, + "IsCompletedSuccessfully": true, + "IsFaulted": false, + "Status": "RanToCompletion", + "Exception": null +} +``` + +*** + +## Properties + +### Task + +The [Task][Task Property] being waited for. + +| | | +|--------------------|---------------------------| +| Data Type | [ITask][]<[TResult][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Task` with no value | + +### Result + +The [Result][Result Property] of the [Task][Task Property] being waited for. + +| | | +|--------------------|---------------------------| +| Data Type | [TResult][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Result` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyNullException][] | Thrown when [Task][Task Property] is `null`. | + +## Remarks + +### Waiting for a Task that has been cancelled + +If the [Task][Task Property] being waited on has already been cancelled or is cancelled whilst being waited on, this block will re-throw the cancellation exception. + +### Waiting for a Task that has been completed + +If the [Task][Task Property] being waited on has completed, this block will not wait and immediately return the [Task][Task Property]'s result. + +### Waiting for a Task that has thrown an exception + +If the [Task][Task Property] being waited on has already thrown an exception during execution or throws an exception whilst being waited on, this block will re-throw the exception. + +[Task Property]: {{< ref "#task" >}} +[Result Property]: {{< ref "#result-2" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[TResult]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[IExecutionTask]: {{< url path="Cortex.Reference.DataTypes.Tasks.IExecutionTask.MainDoc" >}} +[ITask]: {{< url path="Cortex.Reference.DataTypes.Tasks.ITask.MainDoc" >}} +[Wait For Task]: {{< url path="Cortex.Reference.Blocks.Tasks.WaitForTask.WaitForTask.MainDoc" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} + +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Structure]: {{< url path="Cortex.Reference.DataTypes.Collections.Structure.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/telnet/_index.md b/content/en/docs/2024.11/Reference/Blocks/telnet/_index.md new file mode 100644 index 000000000..35cb370dd --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/telnet/_index.md @@ -0,0 +1,5 @@ +--- +title: "Telnet" +linkTitle: "Telnet" +description: "Blocks related to working with Telnet." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/telnet/execute-telnet-command/_index.md b/content/en/docs/2024.11/Reference/Blocks/telnet/execute-telnet-command/_index.md new file mode 100644 index 000000000..11e33bc25 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/telnet/execute-telnet-command/_index.md @@ -0,0 +1,5 @@ +--- +title: "Execute Telnet Command" +linkTitle: "Execute Telnet Command" +description: "Blocks related to executing Telnet commands." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/telnet/execute-telnet-command/execute-telnet-command-block.md b/content/en/docs/2024.11/Reference/Blocks/telnet/execute-telnet-command/execute-telnet-command-block.md new file mode 100644 index 000000000..49633fc0f --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/telnet/execute-telnet-command/execute-telnet-command-block.md @@ -0,0 +1,419 @@ +--- +title: "Execute Telnet Command" +linkTitle: "Execute Telnet Command" +description: "Executes a Telnet command on the specified host." +--- + +{{< figure src="/blocks/Cortex_Blocks_Telnet_ExecuteTelnetCommand_ExecuteTelnetCommandBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Telnet.ExecuteTelnetCommand.ExecuteTelnetCommandBlock)

+ +{{% alert type="information" title="Information" %}}Improvements to this page are planned for the future; this will include further examples and remarks.{{% /alert %}} + +## Description + +Connects to a host using the [Telnet Session Details][Telnet Session Details Property], and executes a [Command][Command Property], returning the [Response][Response Property] and [Telnet Logs][Telnet Logs Property]. + +[Close Session][Close Session Property] can be specified to choose whether the session on the [Host] is closed or is kept open for use on subsequent Execute Telnet Command blocks. + +## Examples + +### Execute a Command + +This example will execute a [Command][Command Property] on the server with the following details: + +- [Host] - `"localhost"` +- [Port] - `23` + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Command][Command Property] | `($)Command` with value `"ipconfig"` | `($)Command` is a variable of type [EncryptableText][] | +| [Telnet Session Details][Telnet Session Details Property] | `($)TelnetSessionDetails` with value `{"Host": "localhost", "Port": 23, "TerminalPrompt": "(.*(~(.*[\r\n]?)\$\|>))"}`

In this example `($)TelnetSessionDetails` has been set up using the following [Expression][]:

`new TelnetSessionDetails("localhost", 23, @"(.*(~(.*[\r\n]?)\$\|>))")` | `($)TelnetSessionDetails` is a variable of type [TelnetSessionDetails][] | +| [Close Session][Close Session Property] | `($)CloseSession` with value `true` | `($)CloseSession` is a variable of type [Boolean][] | +| [Configuration Settings][Configuration Settings Property] | `($)ConfigurationSettings`, with no value | `($)ConfigurationSettings` is a variable of type [Dictionary][]<[String][], [EncryptableText][]> | +| [Response][Response Property] | `($)Response`, with no value | `($)Response` will be set to the type [String][] | +| [Telnet Logs][Telnet Logs Property] | `($)TelnetLogs`, with no value | `($)TelnetLogs` will be set to the type [TelnetLogs][] | + +#### Result + +Running the [Command][Command Property] results in the variable `($)Response` being updated to the following: + +```text +Windows IP Configuration + +Ethernet adapter Ethernet 3: + +Connection-specific DNS Suffix. : reddog.microsoft.com +Link-local IPv6 Address. . . . . : fe80::78eb:a051:2b84:e8bd%6 +IPv4 Address. . . . . . . . . . . : 10.3.0.4 +Subnet Mask . . . . . . . . . . . : 255.255.255.0 +Default Gateway . . . . . . . . . : 10.3.0.1 +``` + +It also results in the variable `($)TelnetLogs` being updated to the following: + +```json +{ + "WelcomeMessage": "Welcome to Microsoft Telnet Server.", + "TerminalPromptMatch": "C:/Users/TelnetUser>", + "Logs": "[Info] Connecting to Localhost.\r\n[Info] Connected to LocalHost.\r\n[Info] Welcome message received.\r\n[Info] Command sent.\r\n[Info] Terminal Prompt found.\r\n[Info] Disconnected from Localhost." +} +``` + +Note that more logs are included in this example, but have been omitted from `($)TelnetLogs.Logs`. + +*** + +## Properties + +### Command + +The [Command][Command Property] that will be executed on the [Host][TelnetSessionDetails Host] specified in the [Telnet Session Details][Telnet Session Details Property]. + +||| +|----------|----------| +| Data Type | [EncryptableText][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | `$@""` | + +### Telnet Session Details + +The [Telnet Session Details][Telnet Session Details Property] object that includes all of the information required to open and maintain a Telnet session. This property contains all of the information in relation to the server the [Command][Command Property] will be executed on, these are: + +- [Host][TelnetSessionDetails Host] +- [Port][TelnetSessionDetails Port] +- [TerminalPrompt][TelnetSessionDetails TerminalPrompt] + +||| +|----------|----------| +| Data Type | [TelnetSessionDetails][] | +| Property Type | [InputOutput][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)TelnetSessionDetails` with no value | + +### Close Session + +[Close Session][Close Session Property] can be specified to choose whether the session on the [Host][TelnetSessionDetails Host] is closed or is kept open for use on subsequent Execute Telnet Command blocks, this defaults to `false` if left blank, please see [Closing Sessions][] for more information. + +||| +|----------|----------| +| Data Type | [Boolean][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [Boolean][] with value `true` | + +### Configuration Settings + +The [Configuration Settings][Configuration Settings Property] for the Telnet connection and execution. + +For a full list of configuration settings please see [TelnetConfigurationSettings][]. + +||| +|----------|----------| +| Data Type | [IDictionary][]<[String][], [EncryptableText][]> | +| Property Type | [Input][] | +| Is [Advanced][] | `true` | +| Default Editor | [Expression][] | +| Default Value | [IDictionary][]<[String][], [EncryptableText][]> with value shown below: | + +```csharp +new Dictionary { + { "Timeout", "60" }, + { "EndOfLineCharacters", "\r\n" }, + { "CancelCommand", "CtrlC" }, +} +``` + +### Response + +The Telnet [Response][Response Property] that is returned from the execution of the [Command][Command Property] on the [Host][TelnetSessionDetails Host] specified in the [Telnet Session Details][Telnet Session Details Property]. + +||| +|----------|----------| +| Data Type | [String][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Response` with no value | + +### Telnet Logs + +The [Telnet Logs][Telnet Logs Property] that are returned from the execution of the [Command][Command Property] on the host specified in the [Telnet Session Details][Telnet Session Details Property]. This property contains all of the information in relation to the logs returned by the [Command][Command Property], these are: + +- [WelcomeMessage] +- [TerminalPromptMatch] +- [Logs] + +||| +|----------|----------| +| Data Type | [TelnetLogs][] | +| Property Type | [Output][] | +| Is [Advanced][] | `true` | +| Default Editor | [Variable][] | +| Default Value | `($)TelnetLogs` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|--------------------------------------|-------------| +| [PropertyNullException][] | Thrown when [Command][Command Property] is `null`. | +|| Thrown when the [Telnet Session Details][Telnet Session Details Property] is `null`. | +|| Thrown when the [Host][TelnetSessionDetails Host] within the [Telnet Session Details][Telnet Session Details Property] is `null`. | +| [PropertyEmptyException][] | Thrown when the specified [Host][TelnetSessionDetails Host] within the [Telnet Session Details][Telnet Session Details Property] is empty. | +| [PropertyValueOutOfRangeException][] | Thrown when the specified [Port][TelnetSessionDetails Port] within the [Telnet Session Details][Telnet Session Details Property] is below 1 or above 65535. | +| [TelnetClientException][] | Thrown when one or more settings in [Configuration Settings][Configuration Settings Property] are invalid. (includes a dictionary of SettingName: ExceptionMessage from IPWorksTelnetException) | +|| Thrown when the specified [Host][TelnetSessionDetails Host] within the [Telnet Session Details][Telnet Session Details Property] is invalid. | +|| Thrown when the specified [Port][TelnetSessionDetails Port] within the [Telnet Session Details][Telnet Session Details Property] is invalid. | +| [TelnetServerException][] | Thrown when the [Host][TelnetSessionDetails Host] exits without using [Close Session][Close Session Property], returning the response received up to the point the host exited the session. | +| [RegexMatchTimeoutException][] | Thrown when the execution time of the regular expression pattern-matching exceeds the time-out interval. | +| [RegexParsingFailedException][] | Thrown when [TerminalPrompt][TelnetSessionDetails TerminalPrompt] within [Telnet Session Details][Telnet Session Details Property] contains invalid regex. | + +## Remarks + +### Empty Command + +If the [Command][Command Property] is empty, it will act as an enter command on the terminal. + +### Null or Empty Terminal Prompt + +If the [TerminalPrompt] is null or empty then it defaults to `(.*(~(.*[\r\n]?)\$|>))` (Windows and Linux friendly default). + +### Terminal Prompt Match + +The [TerminalPromptMatch] in the [TelnetLogs] will output the exact terminal prompt that was matched by the [TerminalPrompt] regex. + +### Telnet Response + +The response will contain all output after the [Command][Command Property] and before the next terminal prompt. + +Control characters are removed from the response. + +For Windows machines before Windows Server 2019 or Windows 10 (build 1809) using Telnet Server, the returned data comes back in an less usable format. + +### Default Telnet Port + +The default port is 23. + +### Opening Sessions + +The Execute Telnet Command block automatically handles creating and opening a session for the specified [Telnet Session Details][Telnet Session Details Property] using the following rules: + +- If a session does not exist, a new session will be created, opened and used when the block runs. +- If a session already exists but is closed, the session will be opened and used when the block runs. +- If a session already exists and is open, the session will be used when the block runs. + +For information on how to explicitly close a session, please see [Closing Sessions][]. + +### Closing Sessions + +Sessions can be explicitly closed by setting [Close Session][Close Session Property] to `true`. This causes the session to be closed after the [Command][Command Property] has been executed. + +For information on how to open a session, please see [Opening Sessions][]. + +### Inactivity Timeout + +The inactivity timeout specifies the number of seconds after which to timeout. This is reset every time new data is received. + +Timeout must be a positive [Int32] integer and smaller or equal to [Int32.MaxValue][] (`2147483647`), otherwise a [TelnetResponseException] will be thrown. + +The default inactivity timeout is 60 seconds. + +To change the default inactivity timeout, use the `Timeout` [Configuration Settings][Configuration Settings Property] e.g. + +```csharp +new Dictionary +{ + { "Timeout", "10"}, +} +``` + +### Terminal Type + +The default terminal type is set by the [Host]. + +To change the default terminal type, use the `TerminalType` [Configuration Settings][Configuration Settings Property] e.g. + +```csharp +new Dictionary +{ + { "TerminalType", "vt100"}, +} +``` + +### Terminal Window Size + +The default terminal window size is set by the [Host]. + +To change the terminal window size, use the `TerminalWidth` and `TerminalHeight` [Configuration Settings][Configuration Settings Property] e.g. + +```csharp +new Dictionary +{ + { "TerminalWidth", "500"}, + { "TerminalHeight", "50"}, +} +``` + +If `TerminalWidth` is set but not `TerminalHeight`, `TerminalHeight` defaults to 50. + +If `TerminalHeight` is set but not `TerminalWidth`, `TerminalWidth` defaults to 500. + +Depending on the [Host] you are connecting to, the values supported for `TerminalWidth` and `TerminalHeight` may differ. If values provided are invalid the host may return a response stating such. + +`TerminalWidth` and `TerminalHeight` must be positive [Int32] integers and smaller or equal to [Int32.MaxValue][] (`2147483647`), otherwise a [TelnetClientException] will be thrown. + +### End Of Line Characters + +On certain hosts it is required to send one or more characters e.g. `\r` or `\r\n` after each command. End of line characters can be used to achieve this and are automatically appended to the [Command][Command Property]. + +The default end of line characters are `\r\n`, which on most systems will ensure that the [Command][Command Property] is executed. If the default does not work it can be set through the [Configuration Settings][Configuration Settings Property] using the `EndOfLineCharacters` setting e.g. + +```csharp +new Dictionary +{ + { "EndOfLineCharacters", "\r\n"}, +} +``` + +If an invalid value is provided the [Command][Command Property] will not be executed and will timeout after the [Inactivity Timeout][] has been reached. + +### Handling Commands That Return Interactive Prompts + +Some commands can return interactive prompts (e.g. `press enter for more...`). In these cases, you must set the [TerminalPrompt][] within [SessionDetails][Telnet Session Details Property] to match the prompt which requires interaction, as well as the end of response prompt (e.g `press enter for more\.\.\.|(.*(~(.*[\r\n]?)\$|>))`). The [TerminalPromptMatch][] within the [TelnetLogs][] can then be used to determine whether the full response has been returned or not; if not, further commands need to be sent to continue receiving the response. + +### Do, Dont, Will and Wont Options + +Do, Dont, Will and Wont codes allows negotiation between the client and the telnet server of options for the telnet connection. + +They are set as a semicolon separated list in the [Configuration Settings][Configuration Settings Property] with each as a key e.g + +```csharp +new Dictionary +{ + { "Do", "0;1"}, +} +``` + +The above example shows how to enable the [echo option][] and [binary transmission option][]. For a full list of Do, Dont, Will and Wont codes please see [Telnet Options][]. + +### Configuration Settings + +[Configuration Settings][Configuration Settings Property] are in PascalCase (e.g. `CloseStreamAfterTransfer`). + +For a full list of configuration settings please see [TelnetConfigurationSettings][]. + +### Cancel Command + +The cancel command is sent to the [Host][TelnetSessionDetails Host] by {{% ctx %}} when an execution times out so the [Host][TelnetSessionDetails Host] can stop the execution and allow other commands to be executed on that session. + +The default cancel command is `Ctrl-C`. If the default does not work it can be set through the [Configuration Settings][Configuration Settings Property] using the `CancelCommand` setting e.g. + +```csharp + new Dictionary +{ + { "CancelCommand", "CtrlC" }, +} +``` + +The supported cancel commands are: `CtrlA`, `CtrlB`, `CtrlC`,`CtrlD`,`CtrlE`,`CtrlF`,`CtrlG`,`CtrlH`,`CtrlI`,`CtrlJ`,`CtrlK`,`CtrlL`,`CtrlM`,`CtrlN`,`CtrlO`,`CtrlP`,`CtrlQ`,`CtrlR`,`CtrlS`,`CtrlT`,`CtrlU`,`CtrlV`,`CtrlW`,`CtrlX`,`CtrlY`,`CtrlZ`,`Ctrl[`,`Ctrl\`,`Ctrl]`,`Ctrl^`,`Ctrl_`. + +The above commands are also case insensitive and can be in various formats (e.g. `CtrlA` can also be specified as `ctrlA`, `Ctrl-A`, `Ctrl+A`). + +If `CancelCommand` is empty then its not sent to the host. + +### Proxies + +Communication via a proxy can be achieved through the following [Configuration Settings][Configuration Settings Property]: + +- [FirewallType][TelnetFirewallTypes] - The type of proxy to connect through (required). +- [FirewallHost][TelnetFirewallHost] - The name or IP address of the proxy (required). +- [FirewallPort][TelnetFirewallPort] - The TCP port of the proxy (optional). The default depends on the [FirewallType][TelnetFirewallTypes] specified. +- [FirewallUser][TelnetFirewallUser] - The username to use if the proxy requires authentication (optional). +- [FirewallPassword][TelnetFirewallPassword] - The password to use if the proxy requires authentication (optional). + +The below example shows how to connect through a SOCKS5 proxy (`3`) hosted on `FirewallHost.com` and on port `1080`. + +```csharp + new Dictionary + { + { "FirewallHost", "FirewallHost.com" }, + { "FirewallType", "3" }, + { "FirewallPort", "1080" }, +} +``` + +### Known Limitations + +None + +[Command Property]: {{< ref "#command" >}} +[Telnet Session Details Property]: {{< ref "#telnet-session-details" >}} +[Close Session Property]: {{< ref "#close-session" >}} +[Configuration Settings Property]: {{< ref "#configuration-settings" >}} +[Response Property]: {{< ref "#response" >}} +[Telnet Logs Property]: {{< ref "#telnet-logs" >}} + +[Opening Sessions]: {{< ref "#opening-sessions" >}} +[Closing Sessions]: {{< ref "#closing-sessions" >}} +[Configuration Settings]: {{< ref "#configuration-settings" >}} +[Inactivity Timeout]: {{< ref "#inactivity-timeout" >}} +[Terminal Type]: {{< ref "#terminal-type" >}} +[Command]: {{< ref "#configuration-settings" >}} + +[IDictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} +[Dictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.MainDoc" >}} +[EncryptableText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptableText.MainDoc" >}} + +[TelnetSessionDetails]: {{< url path="Cortex.Reference.DataTypes.Telnet.TelnetSessionDetails.MainDoc" >}} +[TelnetSessionDetails Host]: {{< url path="Cortex.Reference.DataTypes.Telnet.TelnetSessionDetails.Host" >}} +[TelnetSessionDetails Port]: {{< url path="Cortex.Reference.DataTypes.Telnet.TelnetSessionDetails.Port" >}} +[TelnetSessionDetails TerminalPrompt]: {{< url path="Cortex.Reference.DataTypes.Telnet.TelnetSessionDetails.TerminalPrompt" >}} +[Host]: {{< url path="Cortex.Reference.DataTypes.Telnet.TelnetSessionDetails.Host" >}} +[Port]: {{< url path="Cortex.Reference.DataTypes.Telnet.TelnetSessionDetails.Port" >}} +[Logs]: {{< url path="Cortex.Reference.DataTypes.Telnet.TelnetLogs.Logs" >}} +[WelcomeMessage]: {{< url path="Cortex.Reference.DataTypes.Telnet.TelnetLogs.WelcomeMessage" >}} +[TerminalPromptMatch]: {{< url path="Cortex.Reference.DataTypes.Telnet.TelnetLogs.TerminalPromptMatch" >}} + +[TelnetLogs]: {{< url path="Cortex.Reference.DataTypes.Telnet.TelnetLogs.MainDoc" >}} + +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[Int32.MaxValue]: {{< url path="MSDocs.DotNet.Api.System.Int32.MaxValue" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyValueOutOfRangeException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyValueOutOfRangeException.MainDoc" >}} +[RegexMatchTimeoutException]: {{< url path="MSDocs.DotNet.Api.System.Text.RegularExpressions.RegexMatchTimeoutException" >}} +[RegexParsingFailedException]: {{< url path="Cortex.Reference.Exceptions.Text.Regex.RegexParsingFailedException.MainDoc" >}} +[TerminalPrompt]: {{< url path="Cortex.Reference.DataTypes.Telnet.TelnetSessionDetails.TerminalPrompt" >}} + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Telnet Options]: {{< url path="RFC.Docs.Telnet.Options.MainDoc" >}} +[echo option]: {{< url path="RFC.Docs.Telnet.Options.Echo" >}} +[binary transmission option]: {{< url path="RFC.Docs.Telnet.Options.BinaryTransmission" >}} +[TelnetConfigurationSettings]: {{< url path="IPWorks.TelnetConfigurationSettings" >}} +[TelnetFirewallTypes]: {{< url path="IPWorks.TelnetFirewallTypes" >}} +[TelnetFirewallHost]: {{< url path="IPWorks.TelnetFirewallHost" >}} +[TelnetFirewallPort]: {{< url path="IPWorks.TelnetFirewallPort" >}} +[TelnetFirewallUser]: {{< url path="IPWorks.TelnetFirewallUser" >}} +[TelnetFirewallPassword]: {{< url path="IPWorks.TelnetFirewallPassword" >}} +[TelnetServerException]: {{< url path="Cortex.Reference.Exceptions.Telnet.TelnetServerException.MainDoc" >}} +[TelnetClientException]: {{< url path="Cortex.Reference.Exceptions.Telnet.TelnetClientException.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/variables/_index.md b/content/en/docs/2024.11/Reference/Blocks/variables/_index.md new file mode 100644 index 000000000..e9d011dc5 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/variables/_index.md @@ -0,0 +1,5 @@ +--- +title: "Variables" +linkTitle: "Variables" +description: "Blocks related to working with Variables." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/variables/set-variable/_index.md b/content/en/docs/2024.11/Reference/Blocks/variables/set-variable/_index.md new file mode 100644 index 000000000..9c2999ce5 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/variables/set-variable/_index.md @@ -0,0 +1,5 @@ +--- +title: "Set Variable" +linkTitle: "Set Variable" +description: "Blocks that are used to set Variables." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/variables/set-variable/set-variable-block-1.md b/content/en/docs/2024.11/Reference/Blocks/variables/set-variable/set-variable-block-1.md new file mode 100644 index 000000000..bd0e6ec5f --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/variables/set-variable/set-variable-block-1.md @@ -0,0 +1,202 @@ +--- +title: "Set Variable" +linkTitle: "Set Variable" +description: "Sets a Variable to a given Value." +--- + +{{< figure src="/blocks/Cortex_Blocks_Variables_SetVariable_SetVariableBlock_1.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Variables.SetVariable.SetVariableBlock`1)

+ +## Description + +Sets a [Variable][Variable Property] to a given [Value][Value Property]. + +Any type of [Value][Value Property] can be set, including Lists, Dictionaries, Structures etc. + +If a [Variable][Variable Property] is set to the [Value][Value Property] of another [Variable][Variable Property] that is a [Reference Type][Reference Types] then they will refer to the same instance. This means that if either [Variable][Variable Property] has new items added to it, items updated in it, or items removed from it, then both will be affected, please see [Reference Types][] for more information. + +If a [Variable][Variable Property] is set to the [Value][Value Property] of another [Variable][Variable Property] that is a [Value Type][Value Types] then they will refer to different instances. This means that if either [Variable][Variable Property] is updated, then only the updated variable will be affected, please see [Value Types][] for more information. + +## Examples + +### Setting a Variable + +This example will set a [Variable][Variable Property] to a list of `[[1, 2, 3], [4, 5, 6]]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Value][Value Property] | [Value][Value Property], with value `[[1, 2, 3], [4, 5, 6]]` | The [Value][Value Property] is of type [List][]<[List][]<[Int32][]>> | +| [Variable][Variable Property] | `($)Variable`, with no value | `($)Variable` is a variable that will be set to the type of the value (i.e. [List][]<[List][]<[Int32][]>>) | + +#### Result + +Setting `($)Variable` to `[[1, 2, 3], [4, 5, 6]]` results in the variable `($)Variable` being updated to the following: + +```json +[ + [ + 1, + 2, + 3 + ], + [ + 4, + 5, + 6 + ] +] +``` + +*** + +### Overwriting a Variable + +This example will overwrite an existing [Variable][Variable Property] that has the text value `"A text value"`, to a list value of `[1, 2, 3]`. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Value][Value Property] | [Value][Value Property], with value `[1, 2, 3]` | The [Value][Value Property] is of type [List][]<[Int32]> | +| [Variable][Variable Property] | `($)Variable`, with value `"A text value"` | `($)Variable` is a variable that will be set to the type of the value (i.e. [List][]<[Int32][]>) | + +#### Result + +Setting `($)Variable` to `[1, 2, 3]` results in the variable `($)Variable` being updated to the following: + +```json +[ + 1, + 2, + 3 +] +``` + +*** + +Note that `($)Variable` is overwritten, any data previously stored within the variable will be lost. + +### Overwriting a Variable Property + +This example will update the `Items` property within an existing [Variable][Variable Property] that has the text value `"A text value"`, to a list of `[1, 2, 3]`. + +`($)Variable` has an initial value of: + +```json +{ + "Items": "A text value", +} +``` + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Value][Value Property] | [Value][Value Property], with value `[1, 2, 3]` | The [Value][Value Property] is of type [List][]<[Int32][]> | +| [Variable][Variable Property] | `($)Variable.Items`, with value `"A text value"` | `($)Variable.Items` is a property within variable that will be set to the type of the value (i.e. [List][]<[Int32][]>) | + +#### Result + +Setting the `($)Variable.Items` property to `[1, 2, 3]` results in the `($)Variable` being updated to the following: + +```json +{ + "Items": [ + 1, + 2, + 3 + ] +} +``` + +Note that `($)Variable.Items` is overwritten, any data previously stored within the property will be lost. + +*** + +## Properties + +### Value + +The [Value][Value Property] to set the [Variable][Variable Property] to. + +A [Variable][Variable Property] can be set to any type of object, including Lists, Dictionaries, Structures etc. + +| | | +|--------------------|---------------------------| +| Data Type | [TValue][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | No value (defaults to `null`) | + +### Variable + +The [Variable][Variable Property] that will be set to the [Value][Value Property]. + +If a [Variable][Variable Property] is set to the [Value][Value Property] of another [Variable][Variable Property] that is a [Reference Type][Reference Types] then they will refer to the same instance. This means that if either [Variable][Variable Property] has new items added to it, items updated in it, or items removed from it, then both will be affected, please see [Reference Types][] for more information. + +If a [Variable][Variable Property] is set to the [Value][Value Property] of another [Variable][Variable Property] that is a [Value Type][Value Types] then they will refer to different instances. This means that if either [Variable][Variable Property] is updated, then only the updated variable will be affected, please see [Value Types][] for more information. + +| | | +|--------------------|---------------------------| +| Data Type | [TValue][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Variable` with no value | + +## Exceptions + +No exceptions are thrown by the block. + +## Remarks + +### Initialising Variables + +If the Set Variable block is used to set a [Variable][Variable Property] that is not initialised, the [Variable][Variable Property] will be initialised with the given [Value][Value Property] when the block is run. + +### Overwriting Variables + +If the Set Variable block is used to set a [Variable][Variable Property] that is already initialised and has a [Value][Value Property], the [Variable][Variable Property] will be overwritten with the new [Value][Value Property] when the block is run. + +A property of a [Variable][Variable Property] can also be overwritten, instead of the whole object. This is shown in the example above, [Overwriting a Variable Property][] + +### Variable Scope + +Each workspace has its own scope; as a result, variables can be defined that only exist and are accessible in this workspace and any of its sub-workspaces. On exiting a workspace any variables defined for the workspace's scope are deleted. + +The Set Variable block can only set a [Variable][Variable Property] that is accessible from its scope. + +For information about variables and scope, please see [Variables][]. + +### Null Value + +If [Value][Value Property] is not provided or is set to null, [Variable][Variable Property] will be set to null. + +[Variable Property]: {{< ref "#variable" >}} +[Value Property]: {{< ref "#value" >}} +[Overwriting a Variable Property]: {{< ref "#overwriting-a-variable-property" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[TValue]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[List]: {{< url path="Cortex.Reference.DataTypes.Collections.List.MainDoc" >}} +[Structure]: {{< url path="Cortex.Reference.DataTypes.Collections.Structure.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Reference Types]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.WhatIsADataType.ReferenceTypes" >}} +[Value Types]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.WhatIsADataType.ValueTypes" >}} +[Variables]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/wireless/_index.md b/content/en/docs/2024.11/Reference/Blocks/wireless/_index.md new file mode 100644 index 000000000..8e014fc7f --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/wireless/_index.md @@ -0,0 +1,5 @@ +--- +title: "Wireless" +linkTitle: "Wireless" +description: "Blocks related to moving the execution." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/wireless/wireless-receiver/_index.md b/content/en/docs/2024.11/Reference/Blocks/wireless/wireless-receiver/_index.md new file mode 100644 index 000000000..c7a90e900 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/wireless/wireless-receiver/_index.md @@ -0,0 +1,5 @@ +--- +title: "Wireless Receiver" +linkTitle: "Wireless Receiver" +description: "Blocks related to receiving an execution." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/wireless/wireless-receiver/wireless-receiver-block.md b/content/en/docs/2024.11/Reference/Blocks/wireless/wireless-receiver/wireless-receiver-block.md new file mode 100644 index 000000000..46a69d439 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/wireless/wireless-receiver/wireless-receiver-block.md @@ -0,0 +1,53 @@ +--- +title: "Wireless Receiver" +linkTitle: "Wireless Receiver" +description: "Receives executions." +--- + +{{< figure src="/blocks/Cortex_Blocks_Wireless_WirelessReceiver_WirelessReceiverBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Wireless.WirelessReceiver.WirelessReceiverBlock)

+ +## Description + +Receives executions from [Wireless Sender][Wireless Sender Block] blocks. + +The block has no block specific properties, but it does have the `Description` property that is common to all blocks. This allows users to give each block a description; selection of the [Wireless Receiver][Wireless Receiver Block Property] block in [Wireless Sender][Wireless Sender Block] blocks is done based on description so it should be set to something appropriate and unique. + +## Examples + +No examples for the block. + +## Properties + +No properties for the block, other than the `Description` property that is common to all blocks. + +## Exceptions + +No exceptions are thrown by the block. + +## Remarks + +### Wireless Block Scope + +The Wireless blocks are scoped to the workspace that they are placed in; as a result, [Wireless Sender][Wireless Sender Block] blocks will only be able to select [Wireless Receiver][Wireless Receiver Block] blocks that are placed in the same workspace as itself. + +### Multiple Wireless Senders with same Wireless Receiver + +Multiple [Wireless Sender][Wireless Sender Block] blocks can send executions to the same [Wireless Receiver][Wireless Receiver Block] block. + +### Multiple Wireless Receivers with same Description + +If there are multiple [Wireless Receiver][Wireless Receiver Block] blocks with the same Description in the same scope, the [Guid][] of those blocks will be shown in the dropdown entries of the [Wireless Receiver Block][Wireless Receiver Block Property] property's [Literal][Literal Editor] editor in the [Wireless Sender][Wireless Sender Block] block. + +### Known Limitations + +None + +[Guid]: {{< url path="Cortex.Reference.DataTypes.Other.Guid.MainDoc" >}} +[Literal Editor]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Wireless Sender Block]: {{< url path="Cortex.Reference.Blocks.Wireless.WirelessSender.WirelessSender.MainDoc" >}} +[Wireless Receiver Block]: {{< url path="Cortex.Reference.Blocks.Wireless.WirelessReceiver.WirelessReceiver.MainDoc" >}} +[Wireless Receiver Block Property]: {{< url path="Cortex.Reference.Blocks.Wireless.WirelessSender.WirelessSender.WirelessReceiverProperty" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/wireless/wireless-sender/_index.md b/content/en/docs/2024.11/Reference/Blocks/wireless/wireless-sender/_index.md new file mode 100644 index 000000000..c1bff71f6 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/wireless/wireless-sender/_index.md @@ -0,0 +1,5 @@ +--- +title: "Wireless Sender" +linkTitle: "Wireless Sender" +description: "Blocks related to sending an execution." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/wireless/wireless-sender/wireless-sender-block.md b/content/en/docs/2024.11/Reference/Blocks/wireless/wireless-sender/wireless-sender-block.md new file mode 100644 index 000000000..dd9389846 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/wireless/wireless-sender/wireless-sender-block.md @@ -0,0 +1,88 @@ +--- +title: "Wireless Sender" +linkTitle: "Wireless Sender" +description: "Sends an execution to a specific block." +--- + +{{< figure src="/blocks/Cortex_Blocks_Wireless_WirelessSender_WirelessSenderBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Wireless.WirelessSender.WirelessSenderBlock)

+ +## Description + +Sends the execution to the specified [Wireless Receiver][Wireless Receiver Block] block. + +## Examples + +### Sending an Execution to a Wireless Receiver + +This example is for a flow containing two [Wireless Receiver][Wireless Receiver Block] blocks with descriptions set to `Receiver 1` and `Receiver 2` as well as a [Wireless Sender][Wireless Sender Block] block with the following properties: + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Wireless Receiver Block][Wireless Receiver Property] | [Wireless Receiver Block][Wireless Receiver Property], with value `Receiver 1` | [Wireless Receiver Block][Wireless Receiver Property] is of type [WirelessReceiverBlockReference][] | + +#### Result + +Once an execution is started and it reaches the [Wireless Sender][Wireless Sender Block] block the execution will jump to the [Wireless Receiver][Wireless Receiver Block] block with description `Receiver 1`. + +## Properties + +### Wireless Receiver Block + +The [Wireless Receiver][Wireless Receiver Block] block that the execution will be sent to. + +The [Literal Editor][] is the only editor available for this property, and it provides the developer a list of all available [Wireless Receiver][Wireless Receiver Block] blocks in the current workspace to choose from. + +| | | +|--------------------|---------------------------| +| Data Type | [WirelessReceiverBlockReference][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][Literal Editor] | +| Default Value | No value (defaults to `null`) | + +## Exceptions + +| Name | Description | +|------|-------------| +| [WirelessReceiverBlockNotFoundException][] | Thrown when the specified [Wireless Receiver][Wireless Receiver Property] block has been deleted. See [Wireless Receiver Block Not Found][WirelessReceiverExceptionBlockNotFound]. | +| | Thrown when [Wireless Receiver][Wireless Receiver Property] block has not been selected. See [Wireless Receiver Property Empty][WirelessReceiverExceptionPropertyEmpty]. | + +## Remarks + +### Wireless Block Scope + +The Wireless blocks are scoped to the workspace that they are placed in; as a result, [Wireless Sender][Wireless Sender Block] blocks will only be able to select [Wireless Receiver][Wireless Receiver Block] blocks that are placed in the same workspace as itself. + +### Multiple Wireless Senders with same Wireless Receiver + +Multiple [Wireless Sender][Wireless Sender Block] blocks can send executions to the same [Wireless Receiver][Wireless Receiver Block] block. + +### Multiple Wireless Receivers with same Description + +If there are multiple [Wireless Receiver][Wireless Receiver Block] blocks with the same Description in the same scope, the [Guid][] of those blocks will be shown in the dropdown entries of the [Literal][Literal Editor] editor of the [Wireless Receiver Block][Wireless Receiver Property] property. + +### Known Limitations + +#### The Wireless Receiver Block Property can only use the Literal Editor + +The Literal Editor is the only editor available for the [Wireless Receiver Block Property][Wireless Receiver Property] + +In future this limitation may be removed. + +[Guid]: {{< url path="Cortex.Reference.DataTypes.Other.Guid.MainDoc" >}} +[Wireless Receiver Property]: {{< ref "#wireless-receiver-block" >}} +[Literal Editor]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Wireless Sender Block]: {{< url path="Cortex.Reference.Blocks.Wireless.WirelessSender.WirelessSender.MainDoc" >}} +[Wireless Receiver Block]: {{< url path="Cortex.Reference.Blocks.Wireless.WirelessReceiver.WirelessReceiver.MainDoc" >}} +[WirelessReceiverBlockReference]: {{< url path="Cortex.Reference.DataTypes.Wireless.WirelessReceiverBlockReference.MainDoc" >}} +[WirelessReceiverBlockNotFoundException]: {{< url path="Cortex.Reference.Exceptions.Wireless.WirelessReceiverBlockNotFoundException.MainDoc" >}} +[WirelessReceiverExceptionBlockNotFound]: {{< url path="Cortex.Reference.Exceptions.Wireless.WirelessReceiverBlockNotFoundException.BlockNotFound" >}} +[WirelessReceiverExceptionPropertyEmpty]: {{< url path="Cortex.Reference.Exceptions.Wireless.WirelessReceiverBlockNotFoundException.PropertyEmpty" >}} +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/workspaces/_index.md b/content/en/docs/2024.11/Reference/Blocks/workspaces/_index.md new file mode 100644 index 000000000..02d2c9a3d --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/workspaces/_index.md @@ -0,0 +1,5 @@ +--- +title: "Workspaces" +linkTitle: "Workspaces" +description: "Blocks used to organise flows and group related logic and actions together." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/workspaces/end-workspace/_index.md b/content/en/docs/2024.11/Reference/Blocks/workspaces/end-workspace/_index.md new file mode 100644 index 000000000..fa6587356 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/workspaces/end-workspace/_index.md @@ -0,0 +1,5 @@ +--- +title: "End Workspace" +linkTitle: "End Workspace" +description: "Blocks that indicate the end of a workspace." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/workspaces/end-workspace/end-workspace-block.md b/content/en/docs/2024.11/Reference/Blocks/workspaces/end-workspace/end-workspace-block.md new file mode 100644 index 000000000..32c4249a6 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/workspaces/end-workspace/end-workspace-block.md @@ -0,0 +1,45 @@ +--- +title: "End Workspace" +linkTitle: "End Workspace" +description: "Indicates the end of a workspace." +--- + +{{< figure src="/blocks/Cortex_Blocks_Workspaces_EndWorkspace_EndWorkspaceBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Workspaces.EndWorkspace.EndWorkspaceBlock)

+ +## Description + +Indicates the end of a workspace; when a flow execution reaches this block it will exit the workspace, and all variables declared in the [scope][WorkspaceScope] of the workspace are deleted. + +A workspace can contain any number of these blocks, and they can be placed anywhere in the workspace. + +The block has no block specific properties, but it does have the `Description` property that is common to all blocks. This allows users to give each block a description; typically this will be left blank for this block. + +A breakpoint can be added to this block when debugging. + +## Examples + +No examples for the block. + +## Properties + +No properties for the block, other than the `Description` property that is common to all blocks. + +## Exceptions + +No exceptions are thrown by the block. + +## Remarks + +### Workspace Scope + +Each workspace has its own scope; as a result, variables can be defined that only exist and are accessible in this workspace and any of its sub-workspaces. On exiting a workspace any variables defined for the workspace's scope are deleted. + +For information about variables and scope, please see [Variables][]. + +[WorkspaceScope]: {{< ref "#workspace-scope" >}} + +[Variables]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/workspaces/start-workspace/_index.md b/content/en/docs/2024.11/Reference/Blocks/workspaces/start-workspace/_index.md new file mode 100644 index 000000000..8a383367c --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/workspaces/start-workspace/_index.md @@ -0,0 +1,5 @@ +--- +title: "Start Workspace" +linkTitle: "Start Workspace" +description: "Blocks that indicate the start of a workspace." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/workspaces/start-workspace/start-workspace-block.md b/content/en/docs/2024.11/Reference/Blocks/workspaces/start-workspace/start-workspace-block.md new file mode 100644 index 000000000..996d8e618 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/workspaces/start-workspace/start-workspace-block.md @@ -0,0 +1,45 @@ +--- +title: "Start Workspace" +linkTitle: "Start Workspace" +description: "Indicates the start of a workspace." +--- + +{{< figure src="/blocks/Cortex_Blocks_Workspaces_StartWorkspace_StartWorkspaceBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Workspaces.StartWorkspace.StartWorkspaceBlock)

+ +## Description + +Indicates the start of a workspace; when a flow execution reaches this block it will create a new [scope][WorkspaceScope] for the workspace. + +This is always the first block in a workspace. It cannot be deleted, and a workspace can only contain one of these blocks. + +The block has no block specific properties, but it does have the `Description` property that is common to all blocks. This allows users to give each block a description; typically this will be left blank for this block. + +A breakpoint can be added to this block when debugging. + +## Examples + +No examples for the block. + +## Properties + +No properties for the block, other than the `Description` property that is common to all blocks. + +## Exceptions + +No exceptions are thrown by the block. + +## Remarks + +### Workspace Scope + +Each workspace has its own scope; as a result, variables can be defined that only exist and are accessible in this workspace and any of its sub-workspaces. On exiting a workspace any variables defined for the workspace's scope are deleted. + +For information about variables and scope, please see [Variables][]. + +[WorkspaceScope]: {{< ref "#workspace-scope" >}} + +[Variables]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/workspaces/workspace/_index.md b/content/en/docs/2024.11/Reference/Blocks/workspaces/workspace/_index.md new file mode 100644 index 000000000..09a5c0e9b --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/workspaces/workspace/_index.md @@ -0,0 +1,5 @@ +--- +title: "Workspace" +linkTitle: "Workspace" +description: "Blocks that represent a new workspace." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/workspaces/workspace/workspace-block.md b/content/en/docs/2024.11/Reference/Blocks/workspaces/workspace/workspace-block.md new file mode 100644 index 000000000..2ee8ddde1 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/workspaces/workspace/workspace-block.md @@ -0,0 +1,79 @@ +--- +title: "Workspace" +linkTitle: "Workspace" +description: "Represents a new workspace." +--- + +{{< figure src="/blocks/Cortex_Blocks_Workspaces_Workspace_WorkspaceBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Workspaces.Workspace.WorkspaceBlock)

+ +## Description + +This block represents a new workspace; when a flow execution reaches this block it will move to the [Start Workspace][] block within this block's workspace; each workspace has its own [scope][WorkspaceScope]. + +The [Workspace][] block can be used to organise block logic into smaller steps with distinct functions. When a new [Workspace][] block is placed on a flow, it will contain a [Start Workspace][] and [End Workspace][] block within its workspace. + +If a [Workspace][] block is copied and pasted its workspace is also copied, along with all blocks and variables within its [scope][WorkspaceScope]. + +The block has no block specific properties, but it does have the `Description` property that is common to all blocks. This allows users to give each block a description; typically this will be left blank for this block. Any description given will become the name for this block's [scope][WorkspaceScope] + +A breakpoint can be added to this block when debugging. + +## Examples + +No examples for the block. + +## Properties + +No properties for the block, other than the `Description` property that is common to all blocks, and the `Block Timeout` property that is common to most blocks. + +## Exceptions + +No exceptions are thrown by the block. + +## Remarks + +### Block Restrictions + +A workspace can contain any number of blocks. The only restrictions within a workspace are that there can only be one [Start Workspace][] block and one [Handle Workspace Exception][] block within a workspace. + +Starting a flow that contains more than one of the restricted blocks within a workspace will cause a [Validation Error][Validation Errors] to occur. + +### Unhandled Exceptions + +If an exception thrown by a block is not handled by any connected [Handle Block Exception blocks][], it will be passed to the [Handle Workspace Exception][] block on the same workspace. + +If the workspace does not contain a [Handle Workspace Exception][] block it will be rethrown by the [Workspace][] block the workspace belongs to. + +This process repeats until: + +* The exception is handled, or +* The exception reaches the flow's top-level workspace, is not handled by any [Handle Block Exception blocks][] and the top-level workspace does not contain a [Handle Workspace Exception][] block. At this stage, the exception is handled by the flow's [Handle Flow Exception][] block. + +If an exception occurs within the workspace of the [Handle Flow Exception][] block and is not handled, the flow will end with a status of Error. + +{{< figure src="/images/flow-error-status.png" >}} + +For more information about chaining of exception handling blocks and passing of exceptions, please see [Exception Handling][]. + +### Workspace Scope + +Each workspace has its own scope; as a result, variables can be defined that only exist and are accessible in this workspace and any of its sub-workspaces. On exiting a workspace any variables defined for the workspace's scope are deleted. + +For information about variables and scope, please see [Variables][]. + +[WorkspaceScope]: {{< ref "#workspace-scope" >}} + +[Start Workspace]: {{< url path="Cortex.Reference.Blocks.Workspaces.StartWorkspace.StartWorkspace.MainDoc" >}} +[End Workspace]: {{< url path="Cortex.Reference.Blocks.Workspaces.EndWorkspace.EndWorkspace.MainDoc" >}} +[Workspace]: {{< url path="Cortex.Reference.Blocks.Workspaces.Workspace.Workspace.MainDoc" >}} +[Handle Block Exception blocks]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleBlock.MainDoc" >}} +[Handle Flow Exception]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleFlow.HandleFlowException.MainDoc" >}} +[Handle Workspace Exception]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleWorkspace.HandleWorkspaceException.MainDoc" >}} + +[Exception Handling]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.HandlingExceptions.MainDoc" >}} +[Validation Errors]: {{< url path="Cortex.Reference.Messages.Validation.Errors.MainDoc" >}} +[Variables]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Blocks/xml/_index.md b/content/en/docs/2024.11/Reference/Blocks/xml/_index.md new file mode 100644 index 000000000..14b4020e2 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/xml/_index.md @@ -0,0 +1,5 @@ +--- +title: "Xml" +linkTitle: "Xml" +description: "Blocks related to working with Xml." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/xml/convert-xml/_index.md b/content/en/docs/2024.11/Reference/Blocks/xml/convert-xml/_index.md new file mode 100644 index 000000000..98cd5d6a2 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/xml/convert-xml/_index.md @@ -0,0 +1,5 @@ +--- +title: "Convert Xml" +linkTitle: "Convert Xml" +description: "Convert xml to and from other data types." +--- diff --git a/content/en/docs/2024.11/Reference/Blocks/xml/convert-xml/convert-structure-to-xml-block.md b/content/en/docs/2024.11/Reference/Blocks/xml/convert-xml/convert-structure-to-xml-block.md new file mode 100644 index 000000000..e4d5d08ac --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/xml/convert-xml/convert-structure-to-xml-block.md @@ -0,0 +1,368 @@ +--- +title: "Convert Structure To Xml" +linkTitle: "Convert Structure To Xml" +description: "Converts a Structure To Xml." +--- + +{{< figure src="/blocks/Cortex_Blocks_Xml_ConvertXml_ConvertStructureToXmlBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Xml.ConvertXml.ConvertStructureToXmlBlock)

+ +## Description + +Converts a [Structure][Structure Property] to [Xml][Xml Property]. + +Each top-level [Key][Keys] will be converted using the following rules: + +* [Keys][] become [Nodes][Xml Nodes] +* [Items][] become the values of the corresponding node. + +Each inner key will be converted using the following rules: + +* Inner keys become inner nodes within their parent node. +* Items of inner keys become the values of the corresponding inner nodes. + +For example: + +``` json +"topLevelNode": { + "innerNode" : "innerNodeValue" +} +``` + +will be converted into: + +``` xml +@" + innerNodeValue +" +``` + +## Examples + +### Convert a Structure To Xml + +This example will convert the [Structure][Structure Property] below to its [Xml][Xml Property] representation. + +``` json +{ + "node1" : "1", + "node2" : "2", + "node3" : "3" +} +``` + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Structure][Structure Property] | `($)Structure`, with value `{{ "node1" : "1"}, {"node2" : "2"}, {"node3" : "3"}}` | `($)Structure` is a variable of type [Structure][] | +| [Xml][Xml Property] | `($)Xml`, with no value | `($)Xml` is a variable that will be set to a [String][] value. | + +#### Result + +Converting: + +``` json +{ + "node1" : "1", + "node2" : "2", + "node3" : "3" +} +``` + +to [Xml][Xml Property] results in the variable `($)Xml` being updated to the following: + +``` xml +@" + 1 + 2 + 3 +" +``` + +* The `"Cortex_DataTypes_Dictionaries_Structure"` root node is added as there is no single top-level key. +* The `"node1"` [Key][Keys] is converted into a child node of `"Cortex_DataTypes_Dictionaries_Structure"` with its corresponding [Item][Items] as the value. +* The `"node2"` [Key][Keys] is converted into a child node of `"Cortex_DataTypes_Dictionaries_Structure"` with its corresponding [Item][Items] as the value. +* The `"node3"` [Key][Keys] is converted into a child node of `"Cortex_DataTypes_Dictionaries_Structure"` with its corresponding [Item][Items] as the value. + +*** + +### Convert a Complex Structure to Xml + +This example will convert the [Structure][Structure Property] below to its [Xml][Xml Property] representation. This scenario is unlikely unless [Xml][Xml Property] has been converted to a [Structure][Structure Property] and is being [Round-Tripped][Round Tripping]. + +``` json +{ + "topLevelKey": { + "@topLevelAttribute" : "exampleAttribute", + "innerKey" : { + "@innerNodeAttribute" : "exampleInnerNodeAttribute", + "nestedKey": "nested key text", + "#text": "inner key text" + }, + "id": [ + 1, + 2, + 3 + ], + } +} +``` + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Structure][Structure Property] | `($)Structure`, with value`"{"topLevelNode": {"@topLevelAttribute" : "exampleAttribute", "innerNode" : { "@innerNodeAttribute" : "exampleInnerNodeAttribute", "nestedNode": "nested node text", "#text": "inner node text" }, "id": [ 1, 2, 3 ], } }"` | `($)Structure` is a variable of type [Structure][] | +| [Xml][Xml Property] | `($)Xml`, with no value | `($)Xml` is a variable that will be set to a [String][] value. | + +#### Result + +Converting: + +``` json +{ + "topLevelKey": { + "@topLevelAttribute" : "exampleAttribute", + "innerKey" : { + "@innerNodeAttribute" : "exampleInnerNodeAttribute", + "nestedKey": "nested key text", + "#text": "inner key text" + }, + "id": [ + 1, + 2, + 3 + ], + } +} +``` + +to [Xml][Xml Property] results in the variable `($)Xml` being updated to the following: + +``` xml +@" + + nested key text + inner key text + + 1 + 2 + 3 +" +``` + +* The key `"topLevelKey"` is converted into the `"topLevelKey"` node. +* The key `"@topLevelAttribute"` is converted into the `"topLevelAttribute"` attribute with its corresponding item as the value. +* The key `"innerKey"` is converted into the `"innerKey"` node. +* The key `"@innerNodeAttribute"` is converted into the `"innerNodeAttribute"` attribute with its corresponding item as the value. +* The key `"nestedKey"` is converted into the `"nestedKey"` node with its corresponding item as the value. +* The key `"#text"` is converted into the value of the `"innerKey"` key with its corresponding item as the value. +* The key `"id"` is converted into three `"id"` nodes with each corresponding item as their values. + +*** + +## Properties + +### Structure + +The [Structure][Structure Property] to convert into [Xml][Xml Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [Structure][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Structure` with no value | + +### Xml + +The [Xml][Xml Property] that has been converted from the [Structure][Structure Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Xml` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyNullException][] | Thrown when [Structure][Structure Property] is `null`. | +| [PropertyEmptyException][] | Thrown when [Structure][Structure Property] does not contain any items. | +| [XmlSerializationException][] | Thrown when [Structure][Structure Property] has a key that is an empty string. | +|| Thrown when the [Structure][Structure Property] includes an invalid xml declaration key (e.g. `"?xml"` can only accept the following attributes: `"@version"`, `"@encoding"` and `"@standalone"`.) or an invalid document type definition key (e.g. `"!DOCTYPE"` can only accept the following attributes: `"@name"`, `"@public"`, `"@system"` and `"@internalSubset"`). | +|| Thrown when the [Structure][Structure Property] includes an xml declaration key (e.g. `"?xml"`) with an attribute that has an invalid [Basic Data Type][Basic Data Types]. (e.g. `Key: "@version", Value: false`, where `"@version"` must be a numeric value). | +|| Thrown when the [Structure][Structure Property] includes a document type definition key (e.g. `"!DOCTYPE"`) that has an attribute with an invalid [Basic Data Type][Basic Data Types]. (e.g. `Key: "@name", Value: 22`, where `"@name"` must be a text value). | +|| Thrown when the [Structure][Structure Property] includes an attribute key with a [Complex Data Type][Complex Data Types] as a value. (e.g. `Key: "@name", Value: new UserCredentials{...}`). | + +## Remarks + +### Attributes + +If a [Node][Xml Nodes] requires an attribute, the attribute is defined by a [Key][Keys] where the key is the attribute name with an `"@"` before it and the [Item][Items] is the attribute data, for example: + +``` json +{ + "node": { + "@attribute": "Attribute Value", + "innernode": "Inner Node Value" + } +} +``` + +The [Structure][Structure Property] example above would be converted to the following [Xml][Xml Property]. + +``` xml +@" + Inner Node Value +" +``` + +### Basic Data Types within Attribute Keys + +Attribute keys may only have [Basic Data Types][] as shown in the example below. An [XmlSerializationException][] will be thrown if [Complex Data Type][Complex Data Types] is used as an attribute key. + +``` json +{ + "node": { + "@validAttribute": "Attribute Value", + "@invalidAttribute": new ComplexDataType("Invalid"), + } +} +``` + +### Key Restrictions + +An Xml declaration key (e.g. `"?xml"`) can only accept the following attributes: `"@version"`, `"@encoding"` and `"@standalone"`. + +A document type definition key (e.g. `"!DOCTYPE"`) can only accept the following attributes: `"@name"`, `"@public"`, `"@system"` and `"@internalSubset"`. + +`"$id"`, `"$ref"`, `"$type"`, `"$value"` and `"values"` are reserved words and should not be used as keys. + +### Text Nodes + +If a key contains a structure as its item, the inner keys are converted into [Nodes][Xml Nodes] with their corresponding items as the values. The key `"#text"` is converted into value of its parent node. + +``` json +{ + "node": { + "innerNode": { + "@attrubute": "attributeValue", + "#text": "Inner Node Value" + }, + "#text": "Node Value" + } +} +``` + +The [Structure][Structure Property] example above would be converted to the following [Xml][Xml Property]. + +``` xml +@" + + Inner Node Value + + Node Value +" +``` + +### Duplicate Nodes at the Same Level + +If there are multiple duplicate nodes at the same level, they are defined using a [Key][Keys] where the key is the duplicated node name and the [Item][Items] is a list of each of the corresponding duplicate node's values, for example: + +``` json +{ + "node": { + "duplicateNode": ["First Duplicate Node", "Second Duplicate Node"], + "distinctNode": "Distinct Node" + } +} +``` + +The [Structure][Structure Property] example above would be converted to the following [Xml][Xml Property]. + +``` xml +@" + + First Duplicate Node + + + Second Duplicate Node + + + Distinct Node + +" +``` + +### Using Non-Alphanumeric Symbols within Node Names + +Any non-alphanumeric symbol (i.e. symbols that are not `"0"` to `"9"`, `"a"` to `"z"`, or `"A"` to `"Z"`) will be converted to their respective Unicode values when used within a [Key][Keys]. For example, `"!"` and `"&"` are both non-alphanumeric symbols and would be converted to `"x0021"` and `"x0026"` respectively. + +For more information on characters and their Unicode values please see [Character Sets][] + +### Round-tripping + +It should be possible to pass the [Xml][Xml Property] created by this block to the [Convert Xml To Structure][] block, and then pass the [Structure][Structure Property] created by the [Convert Xml To Structure][] block back to this block, as long all values within the [Xml][Xml Property] are [Strings][String]; this is called round-tripping. + +### Node + +`""` is added as a root node when the [Structure][Structure Property] has more than one top-level key to ensure that valid [Xml][Xml Property] is produced. + +``` json +{ + "node1" : "1", + "node2" : "2", + "node3" : "3" +} +``` + +The [Structure][Structure Property] example above would be converted to the following [Xml][Xml Property]. + +``` xml +@" + 1 + 2 + 3 +" +``` + +[Convert Xml To Structure]: {{< url path="Cortex.Reference.Blocks.Xml.ConvertXml.ConvertXmlToStructure.MainDoc" >}} + +[Structure Property]: {{< ref "#structure" >}} +[Xml Property]: {{< ref "#xml" >}} +[Round Tripping]: {{< ref "#round-tripping" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[XmlSerializationException]: {{< url path="Cortex.Reference.Exceptions.Xml.XmlSerializationException" >}} + +[Structure]: {{< url path="Cortex.Reference.DataTypes.Collections.Structure.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[Keys]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Keys.MainDoc" >}} +[Items]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Items.MainDoc" >}} +[Complex Data Types]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.WhatIsADataType.ComplexDataTypes" >}} +[Basic Data Types]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.WhatIsADataType.BasicDataTypes" >}} + +[Character Sets]: {{< url path="W3.CharacterSets" >}} +[Xml Nodes]: {{< url path="W3.XmlNodes" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Blocks/xml/convert-xml/convert-xml-to-structure-block.md b/content/en/docs/2024.11/Reference/Blocks/xml/convert-xml/convert-xml-to-structure-block.md new file mode 100644 index 000000000..13c1f0eae --- /dev/null +++ b/content/en/docs/2024.11/Reference/Blocks/xml/convert-xml/convert-xml-to-structure-block.md @@ -0,0 +1,332 @@ +--- +title: "Convert Xml To Structure" +linkTitle: "Convert Xml To Structure" +description: "Converts Xml to a Structure." +--- + +{{< figure src="/blocks/Cortex_Blocks_Xml_ConvertXml_ConvertXmlToStructureBlock.png" alt="Icon" class="block-icon" >}} + +# {{% param title %}} + +

(Cortex.Blocks.Xml.ConvertXml.ConvertXmlToStructureBlock)

+ +## Description + +Converts [Xml][Xml Property] to a [Structure][Structure Property]. + +Each top-level [Node][Xml Nodes] will be converted using the following rules: + +* Node names become [Keys][] +* Node values become [Items][] + +Each inner [Node][Xml Nodes] will be converted using the following rules: + +* Inner node names become [Keys][] within the top-level node's [Item][Items] +* Inner node values become the corresponding [Item][Items] for their [Key][Keys] + +For example: + +``` xml +@" + innerNodeValue +" +``` + +will be converted into: + +``` json +"topLevelNode": { + "innerNode" : "innerNodeValue" +} +``` + +## Examples + +### Convert Xml to a Structure + +This example will convert the [Xml][Xml Property] below to its [Structure][Structure Property] representation. + +``` xml +@" + + nested node text + inner node text + + 1 + 2 + 3 +" +``` + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Xml][Xml Property] | `($)Xml`, with value `"nested node textinner node text123"` | `($)Xml` is a variable of type [String][] | +| [Structure][Structure Property] | `($)Structure`, with no value | `($)Structure` is a variable that will be set to a [Structure][] value | + +#### Result + +Converting: + +``` xml +@" + + nested node text + inner node text + + 1 + 2 + 3 +" +``` + + to a [Structure][Structure Property] results in the variable `($)Structure` being updated to the following: + +``` json +{ + "topLevelNode": { + "@topLevelAttribute" : "exampleAttribute", + "innerNode" : { + "@innerNodeAttribute" : "exampleInnerNodeAttribute", + "nestedNode": "nested node text", + "#text": "inner node text" + }, + "id": [ + 1, + 2, + 3 + ], + } +} +``` + +* The node `"topLevelNode"` is converted into the `"topLevelNode"` key. +* The attribute `"topLevelAttribute"` is converted into the `"@topLevelAttribute"` key with its corresponding value as the item. +* The node `"innerNode"` is converted into the `"innerNode"` key. +* The attribute `"innerNodeAttribute"` is converted into the `"@innerNodeAttribute"` key with its corresponding value as the item. +* The node `"nestedNode"` is converted into the `"nestedNode"` key with its corresponding value as the item. +* The value of `"innerNode"` is converted into the `"#text"` key with its corresponding value as the item. +* The three `"id"` nodes are converted into a single `"id"` key with each corresponding value being an entry of the item list. + +*** + +### Convert Round-tripped Xml to a Structure + +This example will convert the [Xml][Xml Property] below to its [Structure][Structure Property] representation. +This example will only occur when a [Structure][Structure Property] is Converted to [Xml][Xml Property] using the [Convert Structure To Xml][] block and is then converted again using this block. This is called [Round-Tripping][]. + +#### Properties + +| Property | Value | Notes | +|--------------------|---------------------------|------------------------------------------| +| [Xml][Xml Property] | `($)Xml`, with value `"123"` | `($)Xml` is a variable of type [String][] | +| [Structure][Structure Property] | `($)Structure`, with no value | `($)Structure` is a variable that will be set to a [Structure][] value | + +#### Result + +Converting: + +``` xml +@" + 1 + 2 + 3 +" +``` + +to a [Structure][Structure Property] results in the variable `($)Structure` being updated to the following: + +``` json +{ + "node1" : "1", + "node2" : "2", + "node3" : "3" +} +``` + +* The `"Cortex_DataTypes_Dictionaries_Structure"` root node is removed and the child nodes are all at the root level. +* The `"node1"` [Node][Xml Nodes] is converted into a [Key][Keys] of `"node1"` with its corresponding value as the [Item][Items]. +* The `"node2"` [Node][Xml Nodes] is converted into a [Key][Keys] of `"node2"` with its corresponding value as the [Item][Items]. +* The `"node3"` [Node][Xml Nodes] is converted into a [Key][Keys] of `"node3"` with its corresponding value as the [Item][Items]. + +*** + +## Properties + +### Xml + +The [Xml][Xml Property] to convert into a [Structure][Structure Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Property Type | [Input][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Xml` with no value | + +### Structure + +The [Structure][Structure Property] that has been converted from the [Xml][Xml Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [Structure][] | +| Property Type | [Output][] | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)Structure` with no value | + +## Exceptions + +The exceptions thrown by the block can be found below: + +| Name | Description | +|----------|----------| +| [PropertyNullException][] | Thrown when [Xml][Xml Property] is `null`. | +| [PropertyEmptyException][] | Thrown when [Xml][Xml Property] is empty (i.e. `""`). | +| [XmlSerializationException][] | Thrown when the [Xml][Xml Property] is not valid (i.e the Xml contains an ampersand symbol or is missing a root node). | + +## Remarks + +### Attributes + +If a [Node][Xml Nodes] has an attribute, the attribute is converted to a [Key][Keys] where the key is the attribute name with an `"@"` before it and the value is the attribute data, for example: + +``` xml +@" + Inner Node Value +" +``` + +The [Xml][Xml Property] example above would be converted to the following [Structure][Structure Property] + +``` json +{ + "node": { + "@attribute": "Attribute Value", + "innernode": "Inner Node Value" + } +} +``` + +### Text Nodes + +If a node contains a value and inner nodes or attributes, the inner nodes and attributes are converted into [Keys][] with their corresponding values as the [Items][]. The value of the node is converted into the `"#text"` key with its value as the item. + +``` xml +@" + + Inner Node Value + + Node Value +" +``` + +The [Xml][Xml Property] example above would be converted to the following [Structure][Structure Property]. + +``` json +{ + "node": { + "innerNode": { + "@attrubute": "attributeValue", + "#text": "Inner Node Value" + }, + "#text": "Node Value" + } +} +``` + +### Duplicate Nodes at the Same Level + +If a node contains duplicate nodes at the same level, they are converted into a [Key][Keys] where the key is the duplicated node name and the [Item][Items] is a list of each of the corresponding duplicate node's values, for example: + +``` xml +@" + + First Duplicate Node + + + Second Duplicate Node + + + Distinct Node + +" +``` + +The [Xml][Xml Property] example above would be converted to the following [Structure][Structure Property]. + +``` json +{ + "node": { + "duplicateNode": ["First Duplicate Node", "Second Duplicate Node"], + "distinctNode": "Distinct Node" + } +} +``` + +### Using Non-Alphanumeric Symbols within Node Names + +Any non-alphanumeric symbol (i.e. symbols that are not `"0"` to `"9"`, `"a"` to `"z"`, or `"A"` to `"Z"`) will be converted to their respective Unicode values when used within a node name. For example, `"!"` and `"&"` are both non-alphanumeric symbols and would be converted to `"x0021"` and `"x0026"` respectively. + +For more information on characters and their Unicode values please see [Character Sets][] + +### Round-tripping + +It should be possible to pass the [Structure][Structure Property] created by this block to the [Convert Structure To Xml][] block, and then pass the [Xml][Xml Property] created by the [Convert Structure To Xml][] block back to this block, as long all values within the [Xml][Xml Property] are [Strings][String]; this is called round-tripping. + +### Node + +The [Convert Structure To Xml][] adds `""` as a root node when the structure has more than one top-level key to ensure that valid [Xml][Xml Property] is produced. + +When the `""` root node is converted from [Xml][Xml Property] to a [Structure][Structure Property] the root node is removed and any inner nodes become the top-level keys. + +``` xml +@" + 1 + 2 + 3 +" +``` + +The [Xml][Xml Property] example above would be converted to the following [Structure][Structure Property]. + +``` json +{ + "node1" : "1", + "node2" : "2", + "node3" : "3" +} +``` + +This example will only occur when a [Structure][Structure Property] is Converted to [Xml][Xml Property] and is then converted again using this block. This is called [Round-Tripping][]. + +[Convert Structure To Xml]: {{< url path="Cortex.Reference.Blocks.Xml.ConvertXml.ConvertStructureToXml.MainDoc" >}} + +[Structure Property]: {{< ref "#structure" >}} +[Xml Property]: {{< ref "#xml" >}} +[Round-Tripping]: {{< ref "#round-tripping" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[XmlSerializationException]: {{< url path="Cortex.Reference.Exceptions.Xml.XmlSerializationException" >}} + +[Structure]: {{< url path="Cortex.Reference.DataTypes.Collections.Structure.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[Keys]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Keys.MainDoc" >}} +[Items]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Items.MainDoc" >}} + +[Character Sets]: {{< url path="W3.CharacterSets" >}} +[Xml Nodes]: {{< url path="W3.XmlNodes" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Concepts/_index.md b/content/en/docs/2024.11/Reference/Concepts/_index.md new file mode 100644 index 000000000..2319ae720 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/_index.md @@ -0,0 +1,8 @@ +--- +title: "Concepts" +linkTitle: "Concepts" +description: "This section includes all reference documentation for concepts required to use {{% ctx %}} Innovation." +weight: 1 +--- + + diff --git a/content/en/docs/2024.11/Reference/Concepts/fundamentals/_index.md b/content/en/docs/2024.11/Reference/Concepts/fundamentals/_index.md new file mode 100644 index 000000000..81a046242 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/fundamentals/_index.md @@ -0,0 +1,6 @@ +--- +title: "Fundamentals" +linkTitle: "Fundamentals" +description: "Fundamental concepts when working with {{% ctx %}} Innovation." +weight: 1 +--- diff --git a/content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/_index.md b/content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/_index.md new file mode 100644 index 000000000..40a8f4526 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/_index.md @@ -0,0 +1,6 @@ +--- +title: "Blocks" +linkTitle: "Blocks" +description: "Information regarding what a block is, block properties and their editors, and handling exceptions thrown by a block." +weight: 200 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/block-properties/_index.md b/content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/block-properties/_index.md new file mode 100644 index 000000000..deaf058a3 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/block-properties/_index.md @@ -0,0 +1,6 @@ +--- +title: "Block Properties" +linkTitle: "Block Properties" +description: "Information regarding what a block property is, the types of properties, the different property editors, and block properties that are common or advanced." +weight: 100 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/block-properties/advanced-properties.md b/content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/block-properties/advanced-properties.md new file mode 100644 index 000000000..5df1e7238 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/block-properties/advanced-properties.md @@ -0,0 +1,71 @@ +--- +title: "Advanced Properties" +linkTitle: "Advanced Properties" +description: "Information regarding properties that do not normally need to be configured but allow for more advanced scenarios." +weight: 300 +--- + +# {{% param title %}} + +## Summary + +Some [blocks][All Blocks] have advanced properties that do not normally need to be configured but allow for more advanced scenarios (e.g. A block to send emails would have advanced properties for specifying things like cc, bcc, attachments etc.). Advanced properties may have explicit default values or will be initialised with values that allow the [block][] to run without configuration. + +All advanced properties are hidden by default and can be shown by [Toggling Advanced Properties][], their values will be used in the [block's][block] execution regardless of whether they are hidden or shown. + +## Toggling Advanced Properties + +All advanced properties can be shown or hidden using the Show/Hide Advanced Properties button found on the top right of the [Property Editor][]. This button is used to toggle whether properties are shown or hidden. + +{{< figure src="/images/set-variable/set-variable-block-timeout.svg" >}} + +## Finding Advanced Properties + +A property is defined as advanced within the documentation of a [Block][All Blocks] or [Data Type][]. + +Information regarding which properties are advanced for a [Block][All Blocks] can be found in the "Properties" section. The table within each property in the relevant documentation will have an "Is Advanced" row stating whether the property is advanced or not. + +Information regarding which properties are advanced for a [Data Type][] can be found in the "Remarks" section under "Advanced Properties" in the relevant documentation for that [Data Type][]. + +## Remarks + +### Known Limitations + +#### Toggling advanced properties is not persisted between blocks + +Currently, when advanced properties are shown when editing a [block][] the advanced toggle state is not persisted when switching between [blocks][block]. + +In future this limitation may be removed. + +#### Toggling advanced properties shows or hides all advanced properties + +Currently, it is not possible to show or hide individual advanced properties. + +In future this limitation may be removed. + +## See Also + +### Related Concepts + +- [Blocks][] +- [Block Properties][] + +### Related Blocks + +- [All Blocks][] + +### External Documentation + +None + +[Toggling Advanced Properties]: {{< ref "#toggling-advanced-properties" >}} + +[Blocks]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.MainDoc" >}} +[block]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.WhatIsABlock.MainDoc" >}} +[Block Properties]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.MainDoc" >}} + +[Property Editor]: {{< url path="Cortex.Guides.Studio.EastPanel.PropertyEditor" >}} + +[All Blocks]: {{< url path="Cortex.Reference.Blocks.MainDoc" >}} + +[Data Type]: {{< url path="Cortex.Reference.DataTypes.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/block-properties/common-properties.md b/content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/block-properties/common-properties.md new file mode 100644 index 000000000..1b4dcf3a8 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/block-properties/common-properties.md @@ -0,0 +1,154 @@ +--- +title: "Common Properties" +linkTitle: "Common Properties" +description: "Information regarding properties that are common to all or most blocks." +weight: 200 +--- + +# {{% param title %}} + +## Summary + +There are a number of properties that are common across all or most [blocks][All Blocks]. + +These properties include: + +- [Description Property][] +- [Semaphore Property][] +- [Run As Property][] +- [Block Timeout Property][] + +## Description Property + +The Description property is available on all [blocks][All Blocks]. It defaults to the name of the block and can be used to describe the action or function the block is performing. Any text entered in the Description property is displayed next to the [block's][block] icon on the [workspace][]. + +{{< figure src="/images/set-variable/set-variable-description.svg" >}} + +## Semaphore Property + +The Semaphore property is an [advanced property][Advanced Properties] available on most [blocks][All Blocks]. It is used to restrict the number of [executions][] that can execute the [block][WhatIsBlock] at any one time. + +The default value of `null` indicates that there is no [semaphore][]. + +The Semaphore property has the following sub-properties: + +- [Scope][SemaphoreScope], which defaults to: + - [Tenant][]: `ScopeOption.Current`. + - [System][]: `ScopeOption.Current`. + - [Package][]: `ScopeOption.Current`. + - [Flow][]: `ScopeOption.All`. +- [Name][SemaphoreName], which defaults to an empty string (i.e. `""`). +- [ConcurrencyLimit][SemaphoreConcurrencyLimit], which defaults to 0. +- [Queue][SemaphoreQueue], which defaults to `null`. + - [Priority][QueuePriority], which defaults to 0. + - [QueueTimeout][], which defaults to `null`. + +{{< figure src="/images/workspace/workspace-block-semaphore.svg" >}} + +## Run As Property + +The Run As property is an [advanced property][Advanced Properties] available on most [blocks][All Blocks]. It is used to execute the [block][] as a specified user (using a [UserCredentials][]), honouring the user's permissions and other user settings. This is required if an action needs to be performed as a particular user (e.g. reading/writing files that only that user has access to). + +Once the [block][] has finished executing, the next block to execute will run as: + +- The user specified in it's Run As property, if set. +- Otherwise, the user specified in it's closest ancestor block with the Run As property set. +- Otherwise, the user the [Execution Service][] is running as; typically this is Network Service. + +The default value of `null` also results in the [block][] executing as the user the [Execution Service][] is running as. + +If [UserCredentials][] has an invalid domain, username, password or [LogonType][UserCredentialsLogonType], a [RunAsException][] will be thrown when the [block][] is executed. + +If [UserCredentials][] has a `null` username or password, a [PropertyNullException][] will be thrown when the [block][] is executed. + +By default, the type of logon method used to authenticate the Run As user is `LogonType.Network`; this works for most scenarios. For scenarios that require a different type of logon method (e.g. connecting to a remote database), the correct [LogonType][] (e.g. `LogonType.NewCredentials`) can be specified as part of the [UserCredentials][]. + +{{< figure src="/images/set-variable/set-variable-run-as.svg" >}} + +## Block Timeout Property + +The Block Timeout property is an [advanced property][Advanced Properties] available on most [blocks][All Blocks]. It is used to set a duration of time (using a [TimePeriod][]) that the [block][] must complete its action within, otherwise a [BlockTimeoutException][] is raised. + +The default value of `null`, or a [TimePeriod][] of `0` seconds, indicates that there is no timeout. + +Negative [TimePeriod][] values will cause an [InvalidBlockTimeoutException][] to be raised when the block is executed. + +{{< figure src="/images/set-variable/set-variable-block-timeout.svg" >}} + +## Remarks + +### Known Limitations + +None + +## See Also + +### Related Concepts + +- [Workspaces][] +- [Blocks][] +- [Advanced Properties][] +- [Exceptions][] + +### Related Blocks + +- [All Blocks][] + +### Related Data Types + +- [String][] +- [TimePeriod][] + +### Related Exceptions + +- [BlockTimeoutException][] +- [InvalidBlockTimeoutException][] +- [PropertyNullException][] +- [RunAsException][] + +### External Documentation + +None + +[Description Property]: {{< ref "#description-property" >}} +[Block Timeout Property]: {{< ref "#block-timeout-property" >}} +[Semaphore Property]: {{< ref "#semaphore-property" >}} +[Run As Property]: {{< ref "#run-as-property" >}} + +[block]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.WhatIsABlock.MainDoc" >}} +[Blocks]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.MainDoc" >}} +[Advanced Properties]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} +[SemaphoreScope]: {{< url path="Cortex.Reference.DataTypes.Concurrency.Semaphores.SemaphoreSettings.Scope" >}} +[SemaphoreName]: {{< url path="Cortex.Reference.DataTypes.Concurrency.Semaphores.SemaphoreSettings.Name" >}} +[SemaphoreConcurrencyLimit]: {{< url path="Cortex.Reference.DataTypes.Concurrency.Semaphores.SemaphoreSettings.ConcurrencyLimit" >}} +[SemaphoreQueue]: {{< url path="Cortex.Reference.DataTypes.Concurrency.Semaphores.SemaphoreSettings.Queue" >}} +[QueuePriority]: {{< url path="Cortex.Reference.DataTypes.Concurrency.Semaphores.QueueSettings.Priority" >}} +[QueueTimeout]: {{< url path="Cortex.Reference.DataTypes.Concurrency.Semaphores.QueueSettings.QueueTimeout" >}} +[Tenant]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.Tenant" >}} +[System]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.System" >}} +[Package]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.Package" >}} +[Flow]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.Flow" >}} +[Semaphore]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Concurrency.Semaphores.WhatIsASemaphore.MainDoc" >}} +[Executions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Executions.WhatIsAnExecution.MainDoc" >}} +[WhatIsBlock]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.WhatIsABlock.MainDoc" >}} +[Execution Service]: {{< url path="Cortex.Guides.CortexInnovation.ExecutionApplication.Services.ExecutionService.MainDoc" >}} +[LogonType]: {{< url path="Cortex.Reference.DataTypes.Credentials.LogonType.MainDoc" >}} + +[Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.MainDoc" >}} + +[Workspaces]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Workspaces.MainDoc" >}} +[workspace]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Workspaces.WhatIsAWorkspace.MainDoc" >}} + +[All Blocks]: {{< url path="Cortex.Reference.Blocks.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[TimePeriod]: {{< url path="Cortex.Reference.DataTypes.DateAndTime.TimePeriod.MainDoc" >}} +[UserCredentials]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.MainDoc" >}} + +[UserCredentialsLogonType]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.LogonType" >}} + +[BlockTimeoutException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.BlockTimeoutException.MainDoc" >}} +[InvalidBlockTimeoutException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidBlockTimeoutException.MainDoc" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[RunAsException]: {{< url path="Cortex.Reference.Exceptions.Impersonation.RunAsException.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/block-properties/property-editors/_index.md b/content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/block-properties/property-editors/_index.md new file mode 100644 index 000000000..c3dc56225 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/block-properties/property-editors/_index.md @@ -0,0 +1,6 @@ +--- +title: "Property Editors" +linkTitle: "Property Editors" +description: "Information regarding the Literal, Variable, and Expression Editors." +weight: 100 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/block-properties/property-editors/expression-editor.md b/content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/block-properties/property-editors/expression-editor.md new file mode 100644 index 000000000..a1add4898 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/block-properties/property-editors/expression-editor.md @@ -0,0 +1,917 @@ +--- +title: "Expression Editor" +linkTitle: "Expression Editor" +description: "Information regarding using the Expression Editor to create literal values, expressions, or use variables." +weight: 200 +--- + +# {{% param title %}} + +## Summary + +The [Expression Editor][] is the most powerful [property editor][] and can accept [literal values][], [expressions][], and [variables][]. + +{{< figure src="/images/set-variable/set-variable-expression-empty.PNG" >}} + +## Literal Values + +A literal is an explicit value that is not calculated during the execution of the flow. A literal can be any of the following data types: + +- [String][String literal] +- [Char][Char literal] +- [Int32][Int32 literal] +- [Int64][Int64 literal] +- [Double][Double literal] +- [Single][Single literal] +- [Boolean][Boolean literal] +- [Object][Object literal] +- [Dictionary][Dictionary literal] +- [Structure][Structure literal] +- [List][List literal] + +### String literal + +{{< figure src="/images/set-variable/set-variable-expression-string.PNG" >}} + +[String][String] literals are surrounded by double quotes. For example: + +```csharp +"Example String" +``` + +The example above becomes: + +```text +Example String +``` + +Double quotes that form part of the [string][String], along with the back-slash character and any unicode character codes or hexadecimal character codes, must be escaped by a back-slash character. For example: + +```csharp +"He said \"Come here\x0021\"" +``` + +The example above becomes: + +```text +He said "Come here!" +``` + +For verbatim [string][String] literals, double quotes that form part of the [string][String] literal must be duplicated to give a single double quote character. For example: + +```csharp +@"He said ""Come here!""" +``` + +The example above becomes: + +```text +He said "Come here!" +``` + +For interpolated [strings][String], [variables][] or [expressions][] are surrounded by single curly braces. For example: + +```csharp +$"He said \"Come here {($)Name}!\"" +``` + +For further information on interpolated strings using [variables][] or [expressions][] see [String expressions][] + +In the case of interpolated verbatim [string][String] literals, double curly braces are not interpreted literally; they produce a single curly brace character. For example: + +```csharp +$@"This is a single square brace ""["", and this is a single curly brace ""{{""" +``` + +The example above becomes: + +```text +This is a single square brace "[", and this is a single curly brace "{" +``` + +For further information, see [String Literals][] + +### Char literal + +{{< figure src="/images/set-variable/set-variable-expression-char.PNG" >}} + +Char literals are single characters; they are surrounded by single quotes. For example: + +```csharp +'A' +'\u0041' +``` + +The example above becomes: + +```text +'A' +'A' +``` + +For further information, [Char Literals][] + +### Int32 literal + +{{< figure src="/images/set-variable/set-variable-expression-int.PNG" >}} + +If an integer literal value is greater than or equal to [Int32.MinValue][] or less than or equal to [Int32.MaxValue][], then it will be of type [Int32][] + +```csharp +1234 +``` + +If an integer literal value is less than [Int32.MinValue][] or greater than [Int32.MaxValue][], then it will be of type [Int64][]. + +For further information, see [Integer Literals][]. + +### Int64 literal + +{{< figure src="/images/set-variable/set-variable-expression-int64.PNG" >}} + +If an integer literal value is less than [Int32.MinValue][] or greater than [Int32.MaxValue][], then it will be of type [Int64][]. + +```csharp +2147483648 +``` + +```csharp +1234l +1234L +``` + +For further information, see [Integer Literals][]. + +### Double literal + +{{< figure src="/images/set-variable/set-variable-expression-double.PNG" >}} + +By default, floating point literals are of type [Double][Double]. + +```csharp +1234.456 +``` + +The suffix `d` or `D` can used to create a floating point literal of type [Double][Double], but is unnecessary. + +```csharp +1234.456d +1234.456D +``` + +For further information, see [Real Literals][]. + +### Single literal + +{{< figure src="/images/set-variable/set-variable-expression-single.PNG" >}} + +If it is necessary to create an floating point literal of type [Single][] with a value greater than or equal to [Single.MinValue][] or less than or equal to [Single.MaxValue][], then the floating point literal must be suffixed by the character `f` or `F`. For example: + +```csharp +1234.456f +1234.456F +``` + +For further information, see [Real Literals][]. + +### Boolean literal + +{{< figure src="/images/set-variable/set-variable-expression-boolean.PNG" >}} + +A [Boolean][] literal represents a truth-value of either `true` or `false`. + +```json +true or false +``` + +For further information, see [Boolean Literals][]. + +### Object literal + +Currently, creating an object using literal syntax is not supported. + +### Dictionary literal + +Currently, creating a dictionary using literal syntax is not supported; any attempt to make a dictionary using literal syntax will create a [Structure][] instead. + +### Structure literal + +{{< figure src="/images/set-variable/set-variable-expression-structure.PNG" >}} + +[Structures][Structure] are a special type of [Dictionary][] that always have [string][String] keys. + +```json +{ + "Name1" : "", + "Name2" : 1, + "Name3" : true, + "Name4" : {}, + "Name5" : [], + "Name6" : null +} +``` + +They differ from a [Dictionary][] in the syntax used for accessing the item: + +- [Dictionary][] items can be accessed using [Index expressions][] +- [Structure][] items can be accessed using [Property expressions][] or [Index expressions][] + +### List literal + +{{< figure src="/images/set-variable/set-variable-expression-list.PNG" >}} + +A [List][] is an object that consists of a number of ordered items that can be of any [data type][Data Type]. + +```json +[ + "Example String", + 1, + true, + {}, + [], + null +] +``` + +[Lists][List] may be heterogeneous, where the items may be of different [data types][Data Type], or homogeneous, when the items are all of the same [data type][Data Type]. + +## Variables + +{{< figure src="/images/set-variable/set-variable-expression-variable.PNG" >}} + +[Variables][Variables Concept] are named containers for storing values of any [data type][Data Type]; a [variable's][Variables Concept] value can be read, updated, replaced, or removed using variable syntax; where the variable name is prefixed with `($)` (e.g. `($)VariableName`). + +Variables can be used within [expressions][]. + +## Expressions + +An expression is a combination of [operands][] (i.e. [variables][], [literals][literal values], calls to [methods][] and [properties][PropertiesC#] exposed on [data types][Data Type]) and [operators][] (i.e. =, +, -, *, /) that will be evaluated when the flow execution reaches the block. + +Expressions use the syntax of the [C#][] [programming language][]. + +Types of expressions: + +- [Arithmetic][Arithmetic expressions] +- [Boolean][Boolean expressions] +- [Comparison][Comparison expressions] +- [String][String expressions] +- [Dictionary][Dictionary expressions] +- [Structure][Structure expressions] +- [List][List expressions] +- [Constructors][Constructor expressions] +- [Methods][Method expressions] +- [Properties][Property expressions] +- [Enums][Enum expressions] +- [Casting][Casting expressions] +- [Indexes][Index expressions] +- [Decomposition][Decomposition expressions] ([output property][Output Properties] only) + +### Arithmetic expressions + +{{< figure src="/images/set-variable/set-variable-expression-arithmetic.PNG" >}} + +The following [operators][] perform arithmetic operations with [operands][] that have numeric values. + +In the examples below assume: + +- `($)Int1` has been set to `6` +- `($)Int2` has been set to `3` + +| Expression | Result | Notes | +|---------------------------|--------|-----------| +| `($)Int1 + ($)Int2` | `9` | Add | +| `($)Int1 - ($)Int2` | `3` | Subtract | +| `($)Int1 * ($)Int2` | `18` | Multiply | +| `($)Int1 / ($)Int2` | `2` | Divide | +| `($)Int1 % ($)Int2` | `0` | Remainder | + +For further information, see [Arithmetic Operators][]. + +### Boolean expressions + +{{< figure src="/images/set-variable/set-variable-expression-boolean-and.PNG" >}} + +The following [operators][] perform logical operations with [operands][] that have boolean values. + +In the examples below assume: + +- `($)Bool1` has been set to `false` +- `($)Bool2` has been set to `true` + +| Expression | Result | Notes | +|--------------------------------|---------|------------------------------------| +| `($)Bool1 && ($)Bool2` | `false` | AND | +| `($)Bool2 \|\| ($)Bool1` | `true` | OR | +| `($)Bool1 ^ ($)Bool2` | `true` | XOR | +| `!($)Bool1` | `true` | NOT | + +For further information, see [Boolean Logical Operators][]. + +### Comparison expressions + +{{< figure src="/images/set-variable/set-variable-expression-comparison.PNG" >}} + +The following [operators][] perform comparison operations with [operands][]. + +In the examples below assume: + +- `($)Int1` has been set to `1` +- `($)Int2` has been set to `2` + +| Expression | Result | Notes | +|--------------------------------|---------|------------------------------------| +| `($)Int1 == ($)Int2` | `false` | Equal | +| `($)Int1 != ($)Int2` | `true` | Not Equal | +| `($)Int1 > ($)Int2` | `false` | Greater Than | +| `($)Int1 >= ($)Int2` | `false` | Greater Than or Equal | +| `($)Int1 < ($)Int2` | `true` | Less Than | +| `($)Int1 <= ($)Int2` | `true` | Less Than or Equal | + +For further information, see [Equality Operators][], [Comparison Operators][], and [Object Equality][]. + +### String expressions + +There are three types of string expressions: + +- [Concatenated Strings][] +- [Interpolated Strings][] +- [Verbatim Strings][] + +If a data type is used in a string expression that is not a [String][], then it will be [implicitly cast][] to a [String][] as part of the expression. + +In all of the examples below assume: + +- `($)String1` has been set to `"hello"` +- `($)String2` has been set to `"world"` +- `($)Int` has been set to `1234` + +#### Concatenated Strings + +{{< figure src="/images/set-variable/set-variable-expression-concatenated-string.PNG" >}} + +Concatenation is the process of appending one [String][] to the end of another [String][]. You concatenate strings by using the `+` [operator][operators]. + +| Expression | Result | Notes | +|---------------------------------------|------------------------------|------------------------------------| +| `($)String1 + " " + ($)String2` | `"hello world"` | | +| `($)String1 + " " + ($)Int` | `"hello 1234"` | The variable `($)Int` is [implicitly cast][] to a [String][String] as part of the expression | + +For further information, see [String concatenation][]. + +#### Interpolated Strings + +{{< figure src="/images/set-variable/set-variable-expression-interpolated-string.PNG" >}} + +Interpolation is the process of inserting expressions and variables into a [String][]. An interpolated string is declared by prefixing the string with the `$` character. + +| Expression | Result | Notes | +|---------------------------------------|------------------------------|------------------------------------| +| `$"{($)String1} {($)String2}"` | `"hello world"` | | +| `$"{($)String1} {($)Int}"` | `"hello 1234"` | The variable `($)Int` is [implicitly cast][] to a [String][String] as part of the expression | +| `$"{($)String1} {($)Int + 1}"` | `"hello 1235"` | The expression `($)Int + 1` is evaluated and the result is [implicitly cast][] to a [String][String] as part of the expression | + +For further information, see [String interpolation][]. + +#### Verbatim Strings + +{{< figure src="/images/set-variable/set-variable-expression-verbatim-string.PNG" >}} + +A verbatim string identifies that characters within the string should be processed literally, and do not need to be escaped. However, the following exceptions apply: + +- In both Verbatim and Interpolated Verbatim strings the double quote character `"` is escaped by prefixing it with another double quote character +- In Interpolated Verbatim strings the curly brace characters `{` and `}` are escaped by prefixing them with the same curly brace character + +| Expression | Result | Notes | +|---------------------------------------|------------------------------|------------------------------------| +| `@"c:\programs\file.txt"` | `"c:\\programs\\file.txt"` | | +| `@"They said ""Hello!"""` | `"They said \"Hello!\""` | The `"` character is escaped| +| `$@"{{ Some Text }}"` | `"{ Some Text }"` | Interpolated Verbatim String, The curly brace characters are escaped | +| `$@"c:\programs\{($)String1}.txt"` | `"c:\\programs\\hello.txt"` | Interpolated Verbatim String | + +For further information, see [Verbatim string literals][] and [Verbatim String Interpolation][]. + +### Dictionary expressions + +[Dictionaries][Dictionary] can be created using [Constructor expressions][] and their items can be accessed using [Index expressions][]. + +For examples of creating Dictionaries using constructor expressions, see [Create a Dictionary<TKey, TItem>][Create a Dictionary]. + +### Structure expressions + +[Structures][Structure] can be created using [Constructor expressions][] and their items can be accessed using [Property expressions][] (keys must follow [C# identifier naming rules][]) or [Index expressions][] (keys do not need to follow [C# identifier naming rules][]). + +For examples of creating Structures using constructor expressions, see [Create a Structure][]. + +### List expressions + +[Lists][List] can be created using [Constructor expressions][] and their items can be accessed using [Index expressions][]. + +For examples of creating Lists using constructor expressions, see [Create a List<TItem>][Create a List]. + +### Constructor expressions + +{{< figure src="/images/set-variable/set-variable-expression-constructor.PNG" >}} + +Constructors can be used to create a new instance of a [Data Type][]. A [Data Type][] can have multiple constructors, each with different parameters that are used to create the new instance. + +Methods on how to create a new instance of a [Data Type][] can be found in the relevant documentation for that [Data Type][Reference Data Types]; information regarding how to create a new [Data Type][] using a constructor can be found in the "Remarks" section under "Create a/an <DataType>" (where <DataType> is replaced by the type's name). + +The following examples show two ways a [DateTimeOffset][] can be created using a constructor: + +In the examples below assume the variable `($)Year` has been set to `2022`. + +| Expression | Result | Notes | +|--------------------------------|---------|------------------------------------| +| `new DateTimeOffset()` | `0001-01-01T00:00:00+00:00` | `12AM 1st January 0001` with `0` hour UTC offset, the default for a new DateTimeOffset with no parameters | +| `new DateTimeOffset(($)Year, 7, 1, 14, 0, 0, 0, new TimeSpan(1, 0, 0))` | `2022-07-01T14:00:00+01:00` | `2PM 1st July 2022` with `1` hour UTC offset | + +Note that some [Data Types][Data Type] should be created via [literal values][] instead of their constructors, these include: + +- [String][String literal] +- [Char][Char literal] +- [Int32][Int32 literal] +- [Int64][Int64 literal] +- [Double][Double literal] +- [Single][Single literal] +- [Boolean][Boolean literal] + +For further information, see [Constructors][]. + +### Method expressions + +{{< figure src="/images/set-variable/set-variable-expression-method.PNG" >}} + +Methods can be used to execute specific functionality. The methods accessible are defined by the [Data Type][], and information regarding methods can be found in the relevant documentation for that [Data Type][Reference Data Types]. + +Methods can have parameters passed into them that are then used to execute the functionality, not all methods have parameters. The same method can be defined multiple times, each with different sets of parameters. + +In the examples below assume the variable `($)Int` has been set to `1`. + +| Expression | Result | Notes | +|--------------------------------|---------|------------------------------------| +| `TimePeriod.FromSeconds(60)` | `{"Years": 0, "Months": 0, "Days": 0, "Hours": 0, "Minutes": 1, "Seconds": 0, "Milliseconds": 0}` | Method with parameters | +| `($)Int.ToString()` | `"1"` | Method without parameters | +| `($)Int.ToString("P0")` | `"100%"` | The `ToString()` method can take parameters in order to format the result. In this case `1` was converted into a percent with zero decimal places | + +For further information, see [Methods][Methods External]. + +### Property expressions + +{{< figure src="/images/set-variable/set-variable-expression-properties.PNG" >}} + +Properties can be used to read data from and/or write data to a [Data Type][]. The properties accessible are defined by the [Data Type][], and information regarding properties can be found in the relevant documentation for that [Data Type][Reference Data Types]. + +Properties can be read-write, read-only, or write-only (extremely rare) depending on the access specified by the [Data Type][]. + +Whilst [Structures][Structure] are [Collections][Collection], they also allow for their keys to be accessed as properties. + +In the examples below assume: + +- `($)TimePeriod` has been set to `{"Years": 1, "Months": 0, "Days": 0, "Hours": 0, "Minutes": 0, "Seconds": 0, "Milliseconds": 0}` +- `($)Structure` has been set to `{"FirstKey": 1, "SecondKey": 2}` + +| Expression | Result | Notes | +|--------------------------------|---------|------------------------------------| +| `DateTimeOffset.UtcNow` | `2022-07-01T13:00:00.0000000+00:00` | Read-only property, this only works in [Input Properties][] | +| `($)TimePeriod.Years` | `1` | Read-write property, this can be used in [Input][Input Properties], [Output][Output Properties], and [InputOutput Properties][]. The result column shows reading the property; writing to the property can be achieved by using any [Output Property][Output Properties]. | +| `($)Structure.FirstKey` | `1` | Read-write property, this can be used in [Input][Input Properties], [Output][Output Properties], and [InputOutput Properties][]. The result column shows reading the property; writing to the property can be achieved by using any [Output Property][Output Properties].| + +For further information, see [Properties][]. + +### Enum expressions + +{{< figure src="/images/set-variable/set-variable-expression-enum.PNG" >}} + +[Enum][] data types have a defined set of values, where each value has an associated [String][] name and [Int32][] value. Information regarding values can be found in the relevant documentation for that [Data Type][Reference Data Types]. + +Values within an [Enum][] can be accessed in the same way as properties or can they can be [cast][Casting expressions] from an [Int32][] value. + +In the examples below assume the variable `($)Int` has been set to `6`. + +| Expression | Result | Notes | +|--------------------------------|---------|------------------------------------| +| `DayOfWeek.Sunday` | `DayOfWeek.Sunday` | Where the name is `"Sunday"` and the value is `0` | +| `(DayOfWeek)($)Int` | `DayOfWeek.Saturday` | [Int32][] cast to an [Enum][]. Where the name is `"Saturday"` and the value is `6` | + +For further information, see [Enumeration types][]. + +### Casting expressions + +{{< figure src="/images/set-variable/set-variable-expression-casting.PNG" >}} + +[Data Types][Data Type] can be cast to other [Data Types][Data Type] through the use of explicit casting, this can sometimes result in the loss of information when converting to a type that does not store the same amount of information. Information regarding which types a [Data Type][] can cast to can be found in the "Summary" section under "Can be cast to" in the relevant documentation for that [Data Type][Reference Data Types]. + +[Data Types][Data Type] can be used as other [Data Types][Data Type] through the use of implicit casting, this is an automatic process that requires no expression syntax. Information regarding which types a [Data Type][] can be used as can be found in the "Summary" section under "Can be used as" in the relevant documentation for that [Data Type][Reference Data Types]. + +In the examples below assume the variable `($)Int` has been set to `6`. + +| Expression | Result | Notes | +|--------------------------------|---------|------------------------------------| +| `(DayOfWeek)($)Int` | `DayOfWeek.Saturday` | [Int32][] cast to an [Enum][]. Where the name is `"Saturday"` and the value is `6` | +| `(Int16)($)Int` | `6` | An [Int32][] can be cast to an [Int16][] as long as value is from `-32,768` through `32,767` | +| `(Int32)1.9` | `1` | Casting a [Double][] to an [Int32][] will cause any decimal places to be lost | +| `($)Int` | `6.0` | When using a block property of type [Double][] an [Int32][] is implicitly cast to [Double][] without any expression syntax | + +For further information, see [Explicit Conversions][] and [Implicit Conversions][]. + +### Index expressions + +{{< figure src="/images/set-variable/set-variable-expression-index.PNG" >}} + +[Data Types][Data Type] that are [Collections][] or [String][] can have their items accessed using index notation: + +- `[0]` gets the first item +- `[1]` gets the second item +- `["key"]` gets the item with the key `"key"`. + +Ranges can also be used within index notation: + +- `[0..3]` gets three items from the first item (inclusively) (i.e. the first, second, and third item) +- `[^1]` gets the last item +- `[^2]` gets the second to last item +- `[..]` gets all items +- `[..3]` gets three items from the first item (inclusively) (i.e. the first, second, and third item) +- `[3..]` gets all items from the fourth item (inclusively) (i.e. the fourth to the last item) + +For further information on index and range syntax, see [Indices and Ranges][]. + +In the examples below assume: + +- `($)List` has been set to `[1, 2, 3, 4, 5]` +- `($)Dictionary` of type `Dictionary` has been set to `{"FirstKey": 1, "SecondKey": 2}` +- `($)Structure` has been set to `{"FirstKey": 1, "SecondKey": [1, 2, 3]}` +- `($)String` has been set to `"Some Text"`. + +| Expression | Result | Notes | +|--------------------------------|---------|------------------------------------| +| `($)List[2]` | `3` | The third item in the list is returned | +| `($)List[0..2]` | `[1, 2]` | The first and second item in the list are returned | +| `($)List[^2]` | `4` | The second to last item in the list is returned | +| `($)List[^2..^0]` | `[4, 5]` | The second to last and the last item in the list are returned | +| `($)List[1..^1]` | `[2, 3, 4]` | The second item to the second to last item in the list are returned | +| `($)List[..]` | `[1, 2, 3, 4, 5]` | All items in the list are returned | +| `($)List[..2]` | `[1, 2]` | The first item and the second item in the list are returned | +| `($)List[2..]` | `[3, 4, 5]` | The third item to the last item in the list are returned | +| `($)Dictionary["FirstKey"]` | `1` | The item with the key `"FirstKey"` is returned | +| `($)Structure["SecondKey"]` | `[1, 2, 3]` | The item with the key `"SecondKey"` is returned | +| `($)Structure["SecondKey"][0]` | `1` | The first item within the item with key `"SecondKey"` is returned | +| `($)String[0]` | `'S'` | The first character in the string is returned | + +### Decomposition expressions + +{{< figure src="/images/set-variable/set-variable-expression-decomposition.PNG" >}} + +Decomposition expressions are used to save selected values from an [Output property][Output properties] to multiple [variables][Variables Concept]. + +{{% alert title="Note" %}} +This is currently only supported by output properties. +{{% /alert %}} + +Decomposition syntax follows a similar pattern to a `JSON` object: + +- each `key` is the property path expression, where `$` is the root of the output value. +- each `value` is the variable name, prefixed with `($)`. + +```json +{ + "$.property.firstPath": ($)FirstVariable, + "$.property.secondPath": ($)SecondVariable +} +``` + +The examples below assumes that the output value contains the following data: + +``` json +{ + "company": { + "name": "Company Name", + "departments": [ + { + "name": "HR", + "employees": [ + { + "name": "Joe Blogs", + "id": "101" + }, + { + "name": "Jane Doe", + "id": "102" + } + ] + }, + { + "name": "Admin", + "employees": [ + { + "name": "Jane Blogs", + "id": "103" + }, + { + "name": "Joe Doe", + "id": "104" + } + ] + } + ] + } +} +``` + +#### Decomposing an object property + +To save the `departments` property, the syntax would be: + +```json +{ + "$.company.departments": ($)ListOfDepartments +} +``` + +In this example, the variable `($)ListOfDepartments` will be set to the following value: + +```json +[ + { + "name": "HR", + "employees": [ + { + "name": "Joe Blogs", + "id": "101" + }, + { + "name": "Jane Doe", + "id": "102" + } + ] + }, + { + "name": "Admin", + "employees": [ + { + "name": "Jane Blogs", + "id": "103" + }, + { + "name": "Joe Doe", + "id": "104" + } + ] + } +] +``` + +#### Decomposing an item in a list + +To save the first department, the syntax would be: + +```json +{ + "$.company.departments[0]": ($)FirstDepartment +} +``` + +In this example, the variable `($)FirstDepartment` will be set to the following value: + +```json +{ + "name": "HR", + "employees": [ + { + "name": "Joe Blogs", + "id": "101" + }, + { + "name": "Jane Doe", + "id": "102" + } + ] +} +``` + +#### Decomposing the last item in a list + +To save the last `employee` of the first department, the syntax would be: + +```json +{ + "$.company.departments[0].employees[-1]": ($)LastEmployeeOfFirstDepartment +} +``` + +In this example, the variable `($)LastEmployeeOfFirstDepartment` will be set to the following value: + +```json +{ + "name": "Jane Doe", + "id": "102" +} +``` + +#### Decomposing multiple properties at the same time + +To save the `id` and `name` of the first `employee` of the first department, the syntax would be: + +```json +{ + "$.company.departments[0].employees[0].id": ($)FirstEmployeeId, + "$.company.departments[0].employees[0].name": ($)FirstEmployeeName +} +``` + +In this example, the variable `($)FirstEmployeeId` will be set to the following value: + +```json +"101" +``` + +And the variable `($)FirstEmployeeName` will be set to the following value: + +```json +"Joe Blogs" +``` + +## Remarks + +### Known Limitations + +#### Cannot Create Objects using Literal Syntax + +Currently, creating an object using literal syntax is not supported. + +Objects can be created using expressions, for more information see [Constructor expressions][]. + +#### Cannot Create Dictionaries using Literal Syntax + +Currently, creating a dictionary using literal syntax is not supported; any attempt to make a dictionary using literal syntax will create a [Structure][] instead. + +Dictionaries can be created using expressions, for more information see [Dictionary expressions][]. + +#### When using variables of the same name the closest scoped is used + +It is possible to create multiple [variables][Variables: What Is a Variable] with the same name in the [Variables Grid][]. When using the same name in different [workspaces][workspace], the variable with the closest scope will be used. + +For example: + +- `Top-Level` workspace has the variable `($)Variable` +- `Child-Level` workspace also has the variable `($)Variable` + +When executing a block in `Child-Level` that uses `($)Variable`, the variable that is used is the variable defined in `Child-Level`. + +This may change in future to allow developers to specifically select which of the variables with the same name is used in this scenario. + +## See Also + +### Related Concepts + +- [Workspaces][] +- [Literal Editor][] +- [Variable Editor][] +- [Variables][Variables Concept] +- [Data Types][Data Type] +- [Object Casting][] + +### Related Blocks + +- [All Blocks][Blocks] + +### Related Data Types + +- [All Data Types][Reference Data Types] + +### External Documentation + +- [Boolean Literals][] +- [Char Literals][] +- [Integer Literals][] +- [Real Literals][] +- [String Literals][] +- [Arithmetic Operators][] +- [Boolean Logical Operators][] +- [Comparison Operators][] +- [Equality Operators][] +- [String concatenation][] +- [String interpolation][] +- [Verbatim string literals][] +- [Verbatim String Interpolation][] +- [Constructors][] +- [Methods][Methods External] +- [Properties][] +- [C# identifier naming rules][] +- [Enumeration types][] +- [Explicit Conversions][] +- [Implicit Conversions][] +- [Indices and Ranges][] + +[literal values]: {{< ref "#literal-values" >}} +[expressions]: {{< ref "#expressions" >}} +[variables]: {{< ref "#variables" >}} + +[String literal]: {{< ref "#string-literal" >}} +[Char literal]: {{< ref "#char-literal" >}} +[Int32 literal]: {{< ref "#int32-literal" >}} +[Int64 literal]: {{< ref "#int64-literal" >}} +[Single literal]: {{< ref "#single-literal" >}} +[Double literal]: {{< ref "#double-literal" >}} +[Boolean literal]: {{< ref "#boolean-literal" >}} +[Object literal]: {{< ref "#object-literal" >}} +[Dictionary literal]: {{< ref "#dictionary-literal" >}} +[Structure literal]: {{< ref "#structure-literal" >}} +[List literal]: {{< ref "#list-literal" >}} +[Concatenated Strings]: {{< ref "#concatenated-strings" >}} +[Interpolated Strings]: {{< ref "#interpolated-strings" >}} +[Verbatim Strings]: {{< ref "#verbatim-strings" >}} + +[Arithmetic expressions]: {{< ref "#arithmetic-expressions" >}} +[Boolean expressions]: {{< ref "#boolean-expressions" >}} +[Comparison expressions]: {{< ref "#comparison-expressions" >}} +[String expressions]: {{< ref "#string-expressions" >}} +[Dictionary expressions]: {{< ref "#dictionary-expressions" >}} +[Structure expressions]: {{< ref "#structure-expressions" >}} +[List expressions]: {{< ref "#list-expressions" >}} +[Constructor expressions]: {{< ref "#constructor-expressions" >}} +[Method expressions]: {{< ref "#method-expressions" >}} +[Property expressions]: {{< ref "#property-expressions" >}} +[Enum expressions]: {{< ref "#enum-expressions" >}} +[Casting expressions]: {{< ref "#casting-expressions" >}} +[Index expressions]: {{< ref "#index-expressions" >}} +[Decomposition expressions]: {{< ref "#decomposition-expressions" >}} + +[Data Type]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.MainDoc" >}} + +[property editor]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.MainDoc" >}} +[Literal Editor]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable Editor]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} + +[Input Properties]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output Properties]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput Properties]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Reference Data Types]: {{< url path="Cortex.Reference.DataTypes.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} +[Collections]: {{< url path="Cortex.Reference.DataTypes.Collections.MainDoc" >}} +[DateTimeOffset]: {{< url path="Cortex.Reference.DataTypes.DateAndTime.DateTimeOffset.MainDoc" >}} +[Dictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.MainDoc" >}} +[Create a Dictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.CreateNew" >}} +[Int16]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int16.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[Int32.MaxValue]: {{< url path="MSDocs.DotNet.Api.System.Int32.MaxValue" >}} +[Int32.MinValue]: {{< url path="MSDocs.DotNet.Api.System.Int32.MinValue" >}} +[Int64]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int64.MainDoc" >}} +[Double]: {{< url path="Cortex.Reference.DataTypes.Numbers.Double.MainDoc" >}} +[List]: {{< url path="Cortex.Reference.DataTypes.Collections.List.MainDoc" >}} +[Create a List]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[Single]: {{< url path="Cortex.Reference.DataTypes.Numbers.Single.MainDoc" >}} +[Single.MaxValue]: {{< url path="MSDocs.DotNet.Api.System.Single.MaxValue" >}} +[Single.MinValue]: {{< url path="MSDocs.DotNet.Api.System.Single.MinValue" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Collection]: {{< url path="Cortex.Reference.DataTypes.Collections.MainDoc" >}} +[Structure]: {{< url path="Cortex.Reference.DataTypes.Collections.Structure.MainDoc" >}} +[Create a Structure]: {{< url path="Cortex.Reference.DataTypes.Collections.Structure.CreateNew" >}} + +[Workspaces]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Workspaces.MainDoc" >}} +[workspace]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Workspaces.WhatIsAWorkspace.MainDoc" >}} + +[Variables Concept]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.MainDoc" >}} +[Variables: What Is a Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.WhatIsAVariable.MainDoc" >}} + +[Object Equality]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectEquality.MainDoc" >}} + +[Enum]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Enums.MainDoc" >}} + +[Object Casting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectCasting.MainDoc" >}} +[implicitly cast]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectCasting.ImplicitCast" >}} + +[Blocks]: {{< url path="Cortex.Reference.Blocks.MainDoc" >}} + +[Expression Editor]: {{< url path="Cortex.Guides.Studio.ExpressionEditor.MainDoc" >}} + +[Variables Grid]: {{< url path="Cortex.Guides.Studio.SouthPanel.VariablesGrid" >}} + +[Boolean Literals]: {{< url path="MSDocs.CSharp.BooleanLiterals" >}} +[Char Literals]: {{< url path="MSDocs.CSharp.CharLiterals" >}} +[Integer Literals]: {{< url path="MSDocs.CSharp.IntegerLiterals" >}} +[Real Literals]: {{< url path="MSDocs.CSharp.RealLiterals" >}} +[String Literals]: {{< url path="MSDocs.CSharp.StringLiterals" >}} +[Arithmetic Operators]: {{< url path="MSDocs.CSharp.ArithmeticOperators" >}} +[Boolean Logical Operators]: {{< url path="MSDocs.CSharp.BooleanLogicalOperators" >}} +[Comparison Operators]: {{< url path="MSDocs.CSharp.ComparisonOperators" >}} +[Equality Operators]: {{< url path="MSDocs.CSharp.EqualityOperators" >}} +[Constructors]: {{< url path="MSDocs.CSharp.Constructors" >}} +[Methods External]: {{< url path="MSDocs.CSharp.Methods" >}} +[Properties]: {{< url path="MSDocs.CSharp.Properties" >}} +[Enumeration types]: {{< url path="MSDocs.CSharp.EnumerationTypes" >}} +[Explicit Conversions]: {{< url path="MSDocs.CSharp.ExplicitConversions" >}} +[Implicit Conversions]: {{< url path="MSDocs.CSharp.ImplicitConversions" >}} +[Indices and Ranges]: {{< url path="MSDocs.CSharp.IndicesAndRanges" >}} +[String concatenation]: {{< url path="MSDocs.DotNet.Api.System.String.ConcatGuide" >}} +[C# identifier naming rules]: {{< url path="MSDocs.CSharp.IdentifierNamingRules" >}} +[String interpolation]: {{< url path="MSDocs.CSharp.Interpolation" >}} +[Verbatim string literals]: {{< url path="MSDocs.CSharp.Verbatim" >}} +[Verbatim String Interpolation]: {{< url path="MSDocs.CSharp.InterpolatedVerbatim" >}} + +[C#]: {{< url path="Cortex.Reference.Glossary.A-E.CSharp" >}} +[operands]: {{< url path="Cortex.Reference.Glossary.K-O.Operand" >}} +[operators]: {{< url path="Cortex.Reference.Glossary.K-O.Operator" >}} +[PropertiesC#]: {{< url path="Cortex.Reference.Glossary.P-T.PropertyCSharp" >}} +[methods]: {{< url path="Cortex.Reference.Glossary.K-O.Method" >}} +[programming language]: {{< url path="Cortex.Reference.Glossary.P-T.ProgrammingLanguage" >}} diff --git a/content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/block-properties/property-editors/literal-editor.md b/content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/block-properties/property-editors/literal-editor.md new file mode 100644 index 000000000..b98c07f71 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/block-properties/property-editors/literal-editor.md @@ -0,0 +1,74 @@ +--- +title: "Literal Editor" +linkTitle: "Literal Editor" +description: "Information regarding using the Literal Editor." +weight: 1 +--- + +# {{% param title %}} + +{{< workinprogress >}} + +## Summary + +TODO + +## Available Types + +TODO: + +- The literal editor will have one or more available types, these types will be either Complex or Basic Types +- The types available to the literal editor are restricted by the block property. +- It is possible to switch the type of the literal editor to any available type. + +### Basic Types + +TODO: + +- Single Editor + +TODO: Image of basic literal editor + +### Complex Types + +TODO: + +- Nested editors within a complex type +- List and Dictionary Editors + +TODO: Image of complex literal editor + +### Switching Type + +TODO: + +- What are DataType and CurrentType? +- An editor can be switched using the type selector (accessed by clicking on the property name) + +TODO: Image of type selector + +## Remarks + +### Known Limitations + +TODO: + +- There is no literal support for Collection Types or types that have constructors with no parameters. + +## See Also + +### Related Concepts + +TODO + +### Related Blocks + +TODO + +### Related Data Types + +TODO + +### External Documentation + +TODO diff --git a/content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/block-properties/property-editors/variable-editor.md b/content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/block-properties/property-editors/variable-editor.md new file mode 100644 index 000000000..e1d8e2409 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/block-properties/property-editors/variable-editor.md @@ -0,0 +1,102 @@ +--- +title: "Variable Editor" +linkTitle: "Variable Editor" +description: "Information regarding using the Variable Editor." +weight: 100 +--- + +# {{% param title %}} + +{{< workinprogress >}} + +## Summary + +TODO + +## Using Variables + +TODO: + +- You can use any available variable. +- Available variables are restricted by the scope of the currently selected block +- All available variables will be shown when the variable editor is empty; typing in the editor will filter the available variables with those that match (contains text) on either the variable name or scope + +TODO: Image of using a variable + +TODO: Image of selecting available variables + +### Scoped Variables + +TODO: + +- Available variables are scoped by the workspace of the block selected +- Can see variables of the same name that are on accessible scopes +- Link to known limitation. If there are two or more variables with the same name, the variable with the closest scope will be always used even if another is selected + +TODO: Image of scoped variables (different names and same names) + +### Accessing Variable Properties or Indexes + +TODO: + +- Properties and indexes can be accessed from the Variable editor +- Translation error shown in messages viewer when using properties or indexes incorrectly for variable that is not dynamic + +TODO: Image of accessing variable property and index + +## Missing Variables + +TODO: + +- If a variable does not exist, then a orange border will be shown around the Variable editor +- It is possible to create a new variable from a missing one using the variable editor + +TODO: Image of orange border for missing variables + +## Creating Variables + +TODO: + +- If a variable does not already exist, the variable editor can be used to create a new one at the current scope +- If the variable name is invalid ([C# identifier naming rules][]) then there will be no option to create a new variable + +TODO: Image of option to create a new variable + +## Renaming Variables + +TODO: + +- If a variable editor already contains a reference to a variable that exists, typing the name of a non-existent variable will provide the option to rename the previously selected variable (and all references to it within the flow) to the new variable name +- If the variable name is invalid ([C# identifier naming rules][]) then there will be no option to rename the variable +- Renaming a variable does not include any index or method expressions (e.g. renaming to `($)NewVar.ToString()` will rename the selected variable to `($)NewVar`) + +TODO: Image of option to rename a variable + +## Remarks + +### Known Limitations + +TODO: + +- If there are two or more variables with the same name, the variable with the closest scope will be always used even if another is selected +- Currently, available variables are not restricted based on the type of the variable and if that is valid for the selected property + +## See Also + +### Related Concepts + +TODO + +### Related Blocks + +TODO + +### Related Data Types + +TODO + +### External Documentation + +TODO + +[C# identifier naming rules]: {{< url path="MSDocs.CSharp.IdentifierNamingRules" >}} diff --git a/content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/block-properties/what-is-a-block-property.md b/content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/block-properties/what-is-a-block-property.md new file mode 100644 index 000000000..0fec4c150 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/block-properties/what-is-a-block-property.md @@ -0,0 +1,152 @@ +--- +title: "What is a Block Property?" +linkTitle: "What is a Block Property?" +description: "Information regarding the anatomy of block properties, types of property and their appearance, and configuring properties using the available property editors." +weight: 1 +--- + +# {{% param title %}} + +## Summary + +[Blocks][block] are configured using Block Properties. Properties pass data to the block which is then used to perform an action, or branch based on a condition within a [flow][]. + +## Anatomy of a Block Property + +There are three types of block property, each type can be configured using one of its supported editors: + +- [Input Properties][] +- [Output Properties][] +- [InputOutput Properties][] + +### Input Properties + +Input properties are used to provide values to a [block][]. These properties are used in the block's execution (e.g. a block to send emails would have input properties for specifying things like the sender, recipients, summary, body, attachments etc.). + +#### Supported Editors + +Input properties can be configured using the following editors: + +- [Literal Editor][] +- [Variable Editor][] +- [Expression Editor][] + +{{< figure src="/images/editable/editor-types.png" >}} + +### Output Properties + +Output properties are used to save values from a [block][]. These properties can be saved to a variable or [decomposed][Decomposing Output Properties] to be saved into multiple variables during the block's execution. + +Values from Output properties can be [discarded][Discarding Outputs], this means they will not be saved to any variable. + +#### Supported Editors + +Output properties can be configured using the following editors: + +- [Variable Editor][] + +{{< figure src="/images/editable/variable-editor.png" >}} + +- [Expression Editor][] using [decomposition][Decomposing Output Properties] + +{{< figure src="/images/editable/expression-editor.png" >}} + +#### Decomposing Output Properties + +Output values can be [decomposed][Decomposition expressions] to allow the saving of different parts of the value to different variables. + +To [decompose][Decomposition expressions] an output value, the output property will need to be set to an expression. + +#### Discarding Outputs + +Output values can be discarded, instead of saving them to a variable. + +Common reasons for discarding include: + +- Discarding the exception output from [Handle Exception blocks][] +- Discarding unwanted output values from blocks such as the [Execute SSH Command][] block that have multiple Output properties + +To discard an output value, the Output property should use the built-in `($)_` variable. + +{{< figure src="/images/discarded-variable.PNG" >}} + +### InputOutput Properties + +InputOutput properties are used to provide values to a [block][]. These properties are used, updated and saved back to a variable during the block's execution. + +#### Supported Editors + +InputOutput properties can be configured using the following editors: + +- [Variable Editor][] + +{{< figure src="/images/editable/variable-editor.png" >}} + +The icons used for InputOutput properties are light blue to distinguish them from [Input Properties][]. + +## Remarks + +### Known Limitations + +#### The Literal Editor is not Supported for all Input Properties + +Currently, not all [Data Types][] support the use of the [Literal Editor][], such as: + +- [Collections][] +- [Data Types][] without a constructor that contains parameters + +Information regarding which editors are supported for a [Data Type][Data Types] can be found in the "Remarks" section under "Property Editor Support" in the relevant documentation for that [Data Type][Data Types]. + +In future this limitation may be removed. + +## See Also + +### Related Concepts + +- [Flows][] +- [Blocks][] +- [Property Editors][] +- [Variables][] +- [Data Types][Fundamentals Data Types] +- [Executions][] +- [Exceptions][] + +### Related Blocks + +- [All Blocks][] + +### External Documentation + +None + +[Input Properties]: {{< ref "#input-properties" >}} +[Output Properties]: {{< ref "#output-properties" >}} +[InputOutput Properties]: {{< ref "#inputoutput-properties" >}} +[Decomposing Output Properties]: {{< ref "#decomposing-output-properties" >}} +[Discarding Outputs]: {{< ref "#discarding-outputs" >}} + +[All Blocks]: {{< url path="Cortex.Reference.Blocks.MainDoc" >}} +[Handle Exception blocks]: {{< url path="Cortex.Reference.Blocks.Exceptions.MainDoc" >}} +[Execute SSH Command]: {{< url path="Cortex.Reference.Blocks.Ssh.ExecuteSshCommand.ExecuteSshCommandBlock.MainDoc" >}} + +[Blocks]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.MainDoc" >}} +[block]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.WhatIsABlock.MainDoc" >}} +[Property Editors]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.MainDoc" >}} +[Literal Editor]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable Editor]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression Editor]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[Decomposition expressions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.DecompositionExpressions" >}} + +[Fundamentals Data Types]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.MainDoc" >}} + +[Data Types]: {{< url path="Cortex.Reference.DataTypes.MainDoc" >}} +[Collections]: {{< url path="Cortex.Reference.DataTypes.Collections.MainDoc" >}} + +[Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.MainDoc" >}} + +[Executions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Executions.MainDoc" >}} + +[Flows]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Flows.MainDoc" >}} +[flow]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Flows.WhatIsAFlow.MainDoc" >}} + +[Variables]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/handling-exceptions-within-a-block.md b/content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/handling-exceptions-within-a-block.md new file mode 100644 index 000000000..22299a50a --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/handling-exceptions-within-a-block.md @@ -0,0 +1,54 @@ +--- +title: "Handling Exceptions within a Block" +linkTitle: "Handling Exceptions within a Block" +description: "Information regarding handling exceptions within a block." +weight: 200 +--- + +# {{% param title %}} + +## Summary + +Exceptions within a block can be handled at the following levels: + +- The [block level][] (Highest Priority) +- The [workspace level][] +- The [flow level][] (Lowest Priority) + +Exceptions thrown within the execution of a [block][] can be handled at the [block level][] by connecting any [Handle Block Exception block][] to the exception output port. Multiple [Handle Block Exception blocks][Handle Block Exception block] can be [chained][] to handle different exceptions. + +For more information, see [Handling Exceptions][]. + +## Remarks + +### Known Limitations + +None + +## See Also + +### Related Concepts + +- [Flows][] +- [Workspaces][] +- [Blocks][block] +- [Exceptions][] + +### Related Blocks + +- [Handle Block Exception][Handle Block Exception block] + +### External Documentation + +None + +[Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.MainDoc" >}} +[Handling Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.HandlingExceptions.MainDoc" >}} +[flow level]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.HandlingExceptions.FlowLevel" >}} +[workspace level]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.HandlingExceptions.WorkspaceLevel" >}} +[chained]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.HandlingExceptions.ChainingExceptions" >}} +[block level]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.HandlingExceptions.BlockLevel" >}} +[Handle Block Exception block]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleBlock.MainDoc" >}} +[Flows]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Flows.MainDoc" >}} +[Workspaces]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Workspaces.MainDoc" >}} +[block]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.WhatIsABlock.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/what-is-a-block.md b/content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/what-is-a-block.md new file mode 100644 index 000000000..17accad8b --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/fundamentals/blocks/what-is-a-block.md @@ -0,0 +1,243 @@ +--- +title: "What is a Block?" +linkTitle: "What is a Block?" +description: "Information regarding the anatomy of a block, types of blocks and their appearance, connecting blocks, and block properties." +weight: 1 +--- + +# {{% param title %}} + +## Summary + +A block is used to perform an action, or branch based on a condition within a [flow][]. + +Blocks are organised into palettes based on the type of object they operate on or the system they interact with (e.g. Blocks that operate on Lists can be found in the Lists palette). Blocks can be dragged from a palette on to a [workspace][], and connected to one another to create the logic of the [flow][]. + +## Anatomy of a Block + +There are five types of block, each type has its own image, connection ports and properties: + +- [Flow Control Blocks][] +- [Action Blocks][] +- [Decision Blocks][] +- [Exception Handling Blocks][] +- [Workspace Blocks][] + +### Flow Control Blocks + +Flow Control blocks are used to start or end a [flow][] or [workspace][]. + +#### Block Image + +{{< figure src="/images/flow-control-blocks.svg" >}} + +- Flow Control blocks are square shaped +- Flow Control blocks are smaller than [Action Blocks][] +- Flow Control blocks have a pale blue background + +#### Connection Ports + +Flow Control Blocks that start a [flow][] or [workspace][] have the following connection ports: + +- One output port located on the bottom of the block + +An [execution][] moves to the input port of the block connected to the output port. + +Flow Control Blocks that end a [flow][] or [workspace][] have the following connection ports: + +- One input port located on the top of the block + +An [execution][] passes through the input port, and ends the [flow][] or [workspace][] depending on the logic of the block. + +### Action Blocks + +Action blocks are used to perform an action within a [flow][]. They can operate on an object or interact with a system. + +Exceptions thrown by Action blocks can be handled by connecting a [Handle Block Exception block][Handle Block Exception blocks] to the red output port. + +#### Block Image + +{{< figure src="/images/action-blocks.svg" >}} + +- The icon of the Action block shows what object or system it interacts with +- The icon in the bottom right of the Action block provides further information into what type of action or interaction it will take +- Action blocks are square shaped +- Action blocks have a pale blue background + +#### Connection Ports + +Action blocks have the following connection ports: + +- One input port located on the top of the block +- One output port located on the bottom of the block +- One red exception output port located on the right of the block + +An [execution][] passes through the input port, executes the block, and if no [exception][] occurs, moves to the input port of the block connected to the output port; if an exception occurs the execution moves to the exception input port of the [exception handling block][Exception Handling Blocks] connected to the exception output port. + +### Decision Blocks + +Decision blocks are used to branch within a [flow][] based on a condition. + +#### Block Image + +{{< figure src="/images/decision-blocks.svg" >}} + +- The icon of the Decision block shows what object or system it interacts with +- Decision blocks are diamond shaped +- Decision blocks have a pale blue background + +#### Connection Ports + +Decision blocks have the following connection ports: + +- One input port located on the top of the block +- One output port located on the right the block +- One output port located on the bottom of the block + +An [execution][] passes through the input port, executes the block, and based on the result of the execution moves to the input port of the block connected to the correct output port. + +### Exception Handling Blocks + +Exception Handling blocks are used to handle exceptions thrown within a [flow][]. + +Exceptions can be handled at different levels within a [flow][]; at the block level, the workspace level, and the flow level. For more information see [Handling Exceptions][]. + +#### Block Image + +{{< figure src="/images/editable/exception-handling-blocks.png" >}} + +- Exception Handling blocks have a pink background + +#### Connection Ports + +[Handle Block Exception blocks][] have the following connection ports: + +- One red exception input port located on the left of the block +- One red exception output port located on the right of the block if they can be [chained][] +- One output port located on the bottom of the block + +An [execution][] passes through the exception input port, executes the block, and if the [exception][] can be handled, moves to the input port of the block connected to the output port; if an exception cannot be handled the execution moves to the exception input port of the [exception handling block][Exception Handling Blocks] connected to the exception output port, for more information see [Chaining Block Exception Handling Blocks][chained]. + +[Handle Workspace Exception blocks][] have the following connection ports: + +- One output port located on the bottom of the block + +[Handle Flow Exception blocks][] have no connection ports. + +### Workspace Blocks + +Workspace blocks are used to group logic and actions within a [flow][] in order to reduce the complexity and make the flow easier to maintain. For more information see [Workspaces][]. + +Unhandled exceptions thrown within a workspace can be handled by connecting a [Handle Block Exception block][Handle Block Exception blocks] to the red output port of the Workspace block. + +#### Block Image + +{{< figure src="/images/workspace-blocks.svg" >}} + +- Workspace blocks are rectangle shaped +- Workspace blocks are larger than [Action Blocks][] +- Workspace blocks have a pale blue background + +#### Connection Ports + +Workspace Blocks have the following connection ports: + +- One input port located on the top of the block +- One output port located on the bottom of the block +- One red exception output port located on the right of the block + +An [execution][] passes through the input port and executes the workspace block, and if no unhandled [exception][] occurs, moves to the input port of the block connected to the output port; if an unhandled exception occurs the execution moves to the exception input port of the [exception handling block][Exception Handling Blocks] connected to the exception output port. + +### Block Properties + +Blocks are configured using [Block Properties][]. Properties pass data to the block which is then used to perform an action, or branch based on a condition within a [flow][]. + +There are three types of block properties: + +- [Input][] +- [Output][] +- [InputOutput][] + +Most blocks share [Common Properties][] such as a description for the block. Some blocks have [Advanced Properties][] that do not normally need to be configured but allow for more advanced scenarios. + +For further information, see [Block Properties][]. + +### Block Connections + +Block connections help determine the order blocks will be executed in a flow, an execution moves through the flow sequentially + +An execution moves from one connected block to another, depending on the logic of the block. Blocks can be connected to each other through the use of connection ports. + +There are four types of connections ports + +- Input Ports - act as the entry point of a block, output ports from one or more other blocks can be connected to an input port +- Output Ports - act as the exit point of a block, output ports can only be connected to an input port of one other block +- Exception Input Ports - act as the entry point of an exception handling block, exception output ports from one or more other blocks can be connected to an exception input port +- Exception Output Ports - act as the exit point of a block when an exception is thrown, exception output ports can only be connected to an exception input port of one exception handling block + +## Exceptions within a Block + +Exceptions thrown within the execution of a block can be handled by connecting a [Handle Block Exception block][Handle Block Exception blocks] to the red output port. If there is no [Handle Block Exception block][Handle Block Exception blocks] that can handle the exception then it will be passed to the workspace level to be handled. + +For further information, see [Handling Exceptions within a Block][]. + +## Remarks + +### Known Limitations + +None + +## See Also + +### Related Concepts + +- [Flows][] +- [Workspaces][] +- [Block Properties][] +- [Executions][] +- [Exceptions][] + +### Related Blocks + +- [All Blocks][Blocks] + +### External Documentation + +None + +[Flow Control Blocks]: {{< ref "#flow-control-blocks" >}} +[Action Blocks]: {{< ref "#action-blocks" >}} +[Decision Blocks]: {{< ref "#decision-blocks" >}} +[Exception Handling Blocks]: {{< ref "#exception-handling-blocks" >}} +[Workspace Blocks]: {{< ref "#workspace-blocks" >}} + +[Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.MainDoc" >}} +[exception]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.WhatIsAnException.MainDoc" >}} +[Handling Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.HandlingExceptions.MainDoc" >}} +[chained]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.HandlingExceptions.ChainingExceptions" >}} + +[Executions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Executions.MainDoc" >}} +[execution]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Executions.WhatIsAnExecution.MainDoc" >}} + +[Flows]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Flows.MainDoc" >}} +[flow]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Flows.WhatIsAFlow.MainDoc" >}} + +[Block Properties]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.MainDoc" >}} +[Advanced Properties]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} +[Common Properties]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.CommonProperties.MainDoc" >}} +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Handling Exceptions within a Block]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.HandlingExceptionsWithinABlock.MainDoc" >}} + +[Variables]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.MainDoc" >}} +[variables]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.WhatIsAVariable.MainDoc" >}} + +[Workspaces]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Workspaces.MainDoc" >}} +[workspace]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Workspaces.WhatIsAWorkspace.MainDoc" >}} + +[Blocks]: {{< url path="Cortex.Reference.Blocks.MainDoc" >}} +[Handle Flow Exception]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleFlow.HandleFlowException.MainDoc" >}} +[Handle Block Exception blocks]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleBlock.MainDoc" >}} +[Handle Flow Exception blocks]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleFlow.MainDoc" >}} +[Handle Workspace Exception blocks]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleWorkspace.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Concepts/fundamentals/data-types/_index.md b/content/en/docs/2024.11/Reference/Concepts/fundamentals/data-types/_index.md new file mode 100644 index 000000000..5e6b8dc14 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/fundamentals/data-types/_index.md @@ -0,0 +1,6 @@ +--- +title: "Data Types" +linkTitle: "Data Types" +description: "Information regarding what a data type is, and the difference between basic and complex data types." +weight: 400 +--- diff --git a/content/en/docs/2024.11/Reference/Concepts/fundamentals/data-types/generics.md b/content/en/docs/2024.11/Reference/Concepts/fundamentals/data-types/generics.md new file mode 100644 index 000000000..eee267f88 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/fundamentals/data-types/generics.md @@ -0,0 +1,38 @@ +--- +title: "Generics" +linkTitle: "Generics" +description: "Information regarding generic data types." +weight: 100 +--- + +# {{% param title %}} + +{{< workinprogress >}} + +## Summary + +TODO + +## Remarks + +### Known Limitations + +TODO + +## See Also + +### Related Concepts + +TODO + +### Related Data Types + +TODO + +### Related Blocks + +TODO + +### External Documentation + +TODO diff --git a/content/en/docs/2024.11/Reference/Concepts/fundamentals/data-types/null-and-nullable-types.md b/content/en/docs/2024.11/Reference/Concepts/fundamentals/data-types/null-and-nullable-types.md new file mode 100644 index 000000000..ce35d9b02 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/fundamentals/data-types/null-and-nullable-types.md @@ -0,0 +1,46 @@ +--- +title: "Null and Nullable Types" +linkTitle: "Null and Nullable Types" +description: "Information regarding null and nullable data types." +weight: 200 +--- + +# {{% param title %}} + +{{< workinprogress >}} + +## Summary + +TODO + +## Null + +TODO + +## Nullable Types + +TODO + +## Remarks + +### Known Limitations + +TODO + +## See Also + +### Related Concepts + +TODO + +### Related Data Types + +TODO + +### Related Blocks + +TODO + +### External Documentation + +TODO diff --git a/content/en/docs/2024.11/Reference/Concepts/fundamentals/data-types/what-is-a-data-type.md b/content/en/docs/2024.11/Reference/Concepts/fundamentals/data-types/what-is-a-data-type.md new file mode 100644 index 000000000..147403d92 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/fundamentals/data-types/what-is-a-data-type.md @@ -0,0 +1,95 @@ +--- +title: "What is a Data Type?" +linkTitle: "What is a Data Type?" +description: "Information regarding what a data type is, basic and complex data types and their differences." +weight: 1 +--- + +# {{% param title %}} + +{{< workinprogress >}} + +## Summary + +TODO: + +- Overview of a data type +- Difference between Value (value types cannot be null, and have a default value that is not null e.g. int is `0`) and Reference Data Types (reference types can be null and have a null default value) +- Difference between Basic and Complex Data Types + +## Value Types + +TODO: + +- Explain what a value type is, and how it can be used +- Check Set Variable block and how Value Types work within the block + - Setting a new variable to an already existing value type will cause them to be separate instances of the value +- The Copy Object block can be used to make a copy of a value type (value types always have a different reference) + +## Reference Types + +TODO: + +- Explain what a reference type is, and how it can be used +- This is referenced by the Set Variable block + - Set Variable block is used to set ($)List[0] + - When adding `($)Reference` to `($)List`, the actual reference is added (not a copy) + - Setting value of `($)List1` to `($)List2` will cause them to have the same reference. Changes to `($)List1` are reflected in `($)List2` +- The Copy Object block can be used to make a copy of a type with a different reference + +## Basic Data Types + +TODO: + +- Explain what a basic data type is +- Table of Basic Data Types + - Columns - Data Type Name, Value/Reference Type + - Strings are a basic data type but are also a reference type. + +## Complex Data Types + +TODO: + +- Explain what a complex data type is and what makes a data type complex +- Includes Complex and Collections (Lists, Dictionaries, structures, etc) +- Object +- Dynamic +- Object vs Dynamic + +## Remarks + +### Known Limitations + +TODO + +## See Also + +### Related Concepts + +TODO + +### Related Data Types + +- [All Data Types][Data Type] + +### Related Blocks + +- [All Blocks][] + +### External Documentation + +TODO: + +- [Value Types][] +- [Reference Types][] +- [Builtin Types][] +- [Default Values][] + +[Reference Types]: {{< url path="MSDocs.CSharp.ReferenceTypes" >}} +[Value Types]: {{< url path="MSDocs.CSharp.ValueTypes" >}} +[Builtin Types]: {{< url path="MSDocs.CSharp.BuiltinTypes" >}} +[Default Values]: {{< url path="MSDocs.CSharp.DefaultValues" >}} + +[All Blocks]: {{< url path="Cortex.Reference.Blocks.MainDoc" >}} + +[Data Type]: {{< url path="Cortex.Reference.DataTypes.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Concepts/fundamentals/exceptions/_index.md b/content/en/docs/2024.11/Reference/Concepts/fundamentals/exceptions/_index.md new file mode 100644 index 000000000..891d55a14 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/fundamentals/exceptions/_index.md @@ -0,0 +1,7 @@ +--- +title: "Exceptions" +linkTitle: "Exceptions" +description: "Information regarding what an exceptions is, handling exceptions, and throwing exceptions." +weight: 600 +--- + diff --git a/content/en/docs/2024.11/Reference/Concepts/fundamentals/exceptions/handling-exceptions.md b/content/en/docs/2024.11/Reference/Concepts/fundamentals/exceptions/handling-exceptions.md new file mode 100644 index 000000000..447ee7512 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/fundamentals/exceptions/handling-exceptions.md @@ -0,0 +1,186 @@ +--- +title: "Handling Exceptions" +linkTitle: "Handling Exceptions" +description: "Information regarding handling exceptions at the block, workspace and flow level." +weight: 100 +--- + +# {{% param title %}} + +## Summary + +Exceptions within a flow can be handled at the following levels: + +- The [block level][] (Highest Priority) +- The [workspace level][] +- The [flow level][] (Lowest Priority) + +## Handling Exceptions at the Block level + +{{< figure src="/images/block-exception.gif" >}} + +Exceptions thrown within the [execution][] of a [block][] can be handled by connecting a [Handle Block Exception block][Handle Block Exception blocks] to the red exception output port. These blocks allow for specific [match criteria][] to be provided; if an exception matches the criteria it will be handled by the block and can be [saved to a variable][block saved to a variable], otherwise, it will be passed to the next [chained][] exception handling block. This process repeats until the exception is either handled or there are no more blocks in the chain; if the exception is not handled at this level it is passed up to the [workspace level][]. + +### Matching Exceptions + +[Handle Block Exception blocks][] can be configured to handle exceptions that match specific criteria (e.g. The Exception Type or Message contains matching text). If an exception matches the criteria, the exception is handled, [saved to a variable][block saved to a variable] if provided, and the [execution][] moves to the block connected to the output port; if the exception does not match the criteria the execution moves to the next [chained][] exception handling block. + +### Chaining Block Exception Handling Blocks + +{{< figure src="/images/chained-exception.gif" >}} + +[Handle Block Exception blocks][] can be chained together by connecting the red exception output port of one [block][] to the red exception input port of another. When an exception is not handled, it will be passed to the next chained exception handling block. This process repeats until the exception is either handled or there are no more blocks in the chain; if the exception is not handled at this level it is passed up to the [workspace level][]. + +The [Handle Block Exception][] block can be used to handle all exceptions. This block does not have an exception output port and therefore ends the chain. + +### Saving the Block Exception + +[Handle Block Exception blocks][] can be used to save the handled exception to a [variable][]. If it is not necessary to save the exception to a variable, it may be [discarded][] by setting the block's Exception [property][] to use the built-in discard variable `($)_`. + +## Handling Exceptions at the Workspace level + +{{< figure src="/images/workspace-exception.gif" >}} + +Exceptions not handled at the [block level][] are passed up to the workspace level. + +If an unhandled exception occurs in a [Nested Workspace][] where a [Handle Workspace Exception][] block exists: + +- The exception will be passed to the [Handle Workspace Exception][] block +- The exception will be handled and can be [saved to a variable][workspace saved to a variable] +- The [execution][] will move to the [block][] connected to the output port of the [Handle Workspace Exception][] block + +If an unhandled exception occurs in a [Nested Workspace][] where a [Handle Workspace Exception][] block does not exist: + +- The exception will be rethrown by the [Workspace block][] the [workspace][] belongs to +- This process repeats until the exception is handled at the [block level][] or workspace level, or reaches the [Top-Level Workspace][] + +If an unhandled exception occurs in or reaches the [Top-Level Workspace][], and is not handled by any [Handle Block Exception blocks][] or the [Handle Workspace Exception][] block, it will be passed up to the [flow level][]. + +Please note that there are a number of [restrictions][Restrictions Handle Workspace Exception] when using the [Handle Workspace Exception][] block. + +### Saving the Workspace Exception + +The [Handle Workspace Exception][] block can be used to save the handled exception to a [variable][]. If it is not necessary to save the exception to a variable, it may be [discarded][] by setting the block's Exception [property][] to use the built-in discard variable `($)_`. + +## Handling Exceptions at the Flow level + +{{< figure src="/images/flow-exception.gif" >}} + +If an unhandled exception occurs in or reaches the [Top-Level Workspace][], and is not handled at the [block level][] or [workspace level][], it will be passed up to the flow level, where: + +- The exception will be passed to the [Handle Flow Exception][] block +- The exception will be handled and can be saved to a [variable][] +- The [execution][] will enter the [Handle Flow Exception][] block's [workspace][] +- The [execution][] will end after the [Handle Flow Exception][] block's [workspace][] has completed + +The [Handle Flow Exception][] block is automatically added to the [Top-Level Workspace][] when a new [flow][] is created, there are [restrictions][Restrictions Handle Flow Exception] that apply to this block. + +The [Handle Flow Exception][] block it has its own [workspace][], which can access its own [variables][variable] and those defined at the [scope][] of the [Top-Level Workspace][]. + +The logic contained within the [Handle Flow Exception][] workspace must end the execution using an [End Flow][] block. By default, this workspace contains a [Start Workspace][] block connected to an [End Flow][] block, which will cause the flow to end without error. + +### Handling Exceptions in the Handle Flow Exception block + +Exceptions that occur within the [workspace][] of the [Handle Flow Exception][] block can be handled at the [block level][] and [workspace level][]. If an exception is not handled, the [execution][] will end with a status of Error. + +{{< figure src="/images/flow-error-status.png" >}} + +### Saving the Flow Exception + +The [Handle Flow Exception][] block can be used to save the handled exception to a [variable][]. If it is not necessary to save the exception to a variable, it may be [discarded][] by setting the block's Exception [property][] to use the built-in discard variable `($)_`. + +## Remarks + +### Known Limitations + +#### The Top-Level Workspace cannot contain a Handle Workspace Exception block + +The [Top-Level Workspace][] cannot contain a [Handle Workspace Exception][] block; if one is added, it will be reported when trying to validate the [flow][]. For more information see [Validating a Flow in Development][] and [Validating a Flow in Production][]. + +Any unhandled exceptions thrown on the Top-Level Workspace will be handled by the [Handle Flow Exception][] block. + +In the future this may change. + +#### A Nested Workspace cannot contain more than one Handle Workspace Exception block + +A [Nested Workspace][] cannot contain more than one [Handle Workspace Exception][] block; if more than one is added, it will be reported when trying to validate the [flow][]. For more information see [Validating a Flow in Development][] and [Validating a Flow in Production][]. + +In the future this may change. + +#### Enforced restrictions to prevent infinite recursion + +For each [execution][] of a [workspace][], the [Handle Workspace Exception][] block will only handle the first unhandled exception within its workspace, this is to prevent infinite recursion within the [flow][]. + +For more information see [Handling Exceptions at the Workspace level][workspace level]. + +In the future this may change. + +## See Also + +### Related Concepts + +- [Flows][] +- [Blocks][] +- [Workspaces][] +- [Variables][] +- [Executions][] + +### Related Data Types + +- [All Exceptions][] + +### Related Blocks + +- [Handle Block Exception blocks][] +- [Handle Workspace Exception][] +- [Handle Flow Exception][] +- [Workspace][Workspace block] +- [Start Workspace][] +- [End Flow][] + +### External Documentation + +None + +[block level]: {{< ref "#handling-exceptions-at-the-block-level" >}} +[chained]: {{< ref "#chaining-block-exception-handling-blocks" >}} +[block saved to a variable]: {{< ref "#saving-the-block-exception" >}} +[workspace saved to a variable]: {{< ref "#saving-the-workspace-exception" >}} +[match criteria]: {{< ref "#matching-exceptions" >}} +[workspace level]: {{< ref "#handling-exceptions-at-the-workspace-level" >}} +[flow level]: {{< ref "#handling-exceptions-at-the-flow-level" >}} + +[Flows]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Flows.MainDoc" >}} +[flow]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Flows.WhatIsAFlow.MainDoc" >}} + +[Workspaces]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Workspaces.MainDoc" >}} +[workspace]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Workspaces.WhatIsAWorkspace.MainDoc" >}} +[Top-Level Workspace]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Workspaces.WhatIsAWorkspace.TopLevelWorkspace" >}} +[Nested Workspace]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Workspaces.WhatIsAWorkspace.NestedWorkspaces" >}} + +[Blocks]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.MainDoc" >}} +[block]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.WhatIsABlock.MainDoc" >}} +[property]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.MainDoc" >}} +[discarded]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.DiscardingOutputs" >}} + +[Executions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Executions.MainDoc" >}} +[execution]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Executions.WhatIsAnExecution.MainDoc" >}} +[Validating a Flow in Development]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Executions.ExecutionsInDevelopment.ValidatingAFlow" >}} +[Validating a Flow in Production]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Executions.ExecutionsInProduction.ValidatingAFlow" >}} + +[Variables]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.MainDoc" >}} +[variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.WhatIsAVariable.MainDoc" >}} + +[All Exceptions]: {{< url path="Cortex.Reference.Exceptions.MainDoc" >}} + +[scope]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.VariableScopes.MainDoc" >}} + +[Workspace block]: {{< url path="Cortex.Reference.Blocks.Workspaces.Workspace.Workspace.MainDoc" >}} +[Start Workspace]: {{< url path="Cortex.Reference.Blocks.Workspaces.StartWorkspace.StartWorkspace.MainDoc" >}} +[End Flow]: {{< url path="Cortex.Reference.Blocks.Flows.EndFlow.EndFlow.MainDoc" >}} +[Handle Block Exception blocks]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleBlock.MainDoc" >}} +[Handle Block Exception]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleBlock.HandleBlockException.MainDoc" >}} +[Handle Flow Exception]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleFlow.HandleFlowException.MainDoc" >}} +[Restrictions Handle Flow Exception]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleFlow.HandleFlowException.BlockRestrictions" >}} +[Handle Workspace Exception]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleWorkspace.HandleWorkspaceException.MainDoc" >}} +[Restrictions Handle Workspace Exception]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleWorkspace.HandleWorkspaceException.BlockRestrictions" >}} diff --git a/content/en/docs/2024.11/Reference/Concepts/fundamentals/exceptions/throwing-exceptions.md b/content/en/docs/2024.11/Reference/Concepts/fundamentals/exceptions/throwing-exceptions.md new file mode 100644 index 000000000..e77db146c --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/fundamentals/exceptions/throwing-exceptions.md @@ -0,0 +1,55 @@ +--- +title: "Throwing Exceptions" +linkTitle: "Throwing Exceptions" +description: "Information regarding throwing an exception within a flow, and scenarios when it is useful to throw an exception." +weight: 200 +--- + +# {{% param title %}} + +## Summary + +A developer can throw an exception as part of a [flow][]. + +Scenarios where throwing exceptions is useful include: + +- A developer throwing a new exception when a flow reaches a state where it cannot complete its defined functionality +- A developer enriching an exception that has already been thrown to provide more clarity and/or detail +- A developer rethrowing an exception to propagate the exception to the caller; typically this can be useful when [calling another flow][] + +For information about throwing an exception, please see the: + +- [Throw New Flow Exception][] block +- [Rethrow Exception][] block + +## Remarks + +### Known Limitations + +None + +## See Also + +### Related Concepts + +- [Flows][] +- [Blocks][] + +### Related Blocks + +- [Throw New Flow Exception][] +- [Rethrow Exception][] + +### External Documentation + +None + +[Flows]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Flows.MainDoc" >}} +[flow]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Flows.WhatIsAFlow.MainDoc" >}} + +[Blocks]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.MainDoc" >}} + +[Rethrow Exception]: {{< url path="Cortex.Reference.Blocks.Exceptions.RethrowException.RethrowException.MainDoc" >}} + +[Throw New Flow Exception]: {{< url path="Cortex.Reference.Blocks.Exceptions.ThrowException.ThrowNewFlowException.MainDoc" >}} +[calling another flow]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Flows.CallingOtherFlows.MainDoc" >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Concepts/fundamentals/exceptions/what-is-an-exception.md b/content/en/docs/2024.11/Reference/Concepts/fundamentals/exceptions/what-is-an-exception.md new file mode 100644 index 000000000..14c3a64e0 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/fundamentals/exceptions/what-is-an-exception.md @@ -0,0 +1,110 @@ +--- +title: "What is an Exception?" +linkTitle: "What is an Exception?" +description: "Information regarding the anatomy of an exception, and properties accessible on an exception." +weight: 1 +--- + +# {{% param title %}} + +## Summary + +An exception is thrown during an [execution][] when an issue is encountered whilst executing a [flow][]. Exceptions can occur for a number of reasons, such as: + +- Exceptions thrown by a [block][], these can be found in the relevant documentation for that [block][All Blocks] (e.g. A duplicate key is added to a [Dictionary][] using the [Add Item With Key][] block) +- Developer thrown [exceptions][Throwing Exceptions] (e.g. A developer enriches an exception that has already been thrown to provide a more detailed message) +- Issues with third-party systems (e.g. A third-party system experiences an error) +- Issues with network connectivity (e.g. A target machine is inaccessible) +- Issues with permissions (e.g. The execution does not have permission to read a file) +- Issues with the environment (e.g. The software installed on a target machine is incorrect) + +An exception contains details of what caused the issue, for more information see [Anatomy of an Exception][]. + +An exception can be handled in different ways depending on where the exception occurred. For more information see [Handling Exceptions][]. + +## Anatomy of an Exception + +{{< figure src="/images/exception-in-viewer.PNG" >}} + +Data within an exception can be accessed using properties. + +The following properties are found on all exceptions: + +| Property | Notes | Example | +|----------|-------|---------| +| Exception Type | The type of the exception | `PropertyNullException` +| Message | The exception message, providing information about the exception that occurred. This typically includes the cause of the exception, possible resolutions, and any related information. What is included in an exception's message can be found in the relevant documentation for that [exception][Exceptions] | `'List' is null; it must be provided with a non-null value.\r\nPlease click the HelpLink for more information on how to fix this.` +| HelpLink | Help link to aid with troubleshooting and resolution for the exception. There are three types of help links:

  • {{% ctx %}} - Help links direct to material within the {{% ctx %}} Product Portal. This documentation is written and maintained by {{% ctx %}} and contains information directly related to the {{% ctx %}} product.
  • External - Help links direct to externally hosted material about the exception. This documentation is not written or maintained by {{% ctx %}}.
  • Custom - Help links are generated by flow developers during the design and development of flows. These help links are configured in the [Throw New Exception][] block, and can link to any resource applicable to the exception.
| `https://docs.wearecortex.com/docs/2023.5/reference/exceptions/common/property/property-null-exception/` | + +The following properties are found on many exceptions: + +| Property | Notes | Example | +|----------|-------|---------| +| Category | The category of the exception, which is used to categorise an exception if there are multiple reasons that the exception can occur. | [InfiniteLoopException][InfiniteLoopException: Category] has one category, `"Increment"` | +| Error Code | The error code for the exception, which is used to indicate the reason that the exception occurred, if there are multiple reasons that the exception can occur. | [InfiniteLoopException][InfiniteLoopException: Error Code] has three error codes, `InfiniteLoopErrorCode.IncrementIsZero (100)`, `InfiniteLoopErrorCode.IncrementIsNegative (101)`, and `InfiniteLoopErrorCode.IncrementIsPositive (102)` | +| Inner Exception | Contains the exception that caused this exception, if any. This property is always accessible but will only be visible in the [Exceptions Viewer][] when it contains data. | `{"ExceptionType": "PropertyNullException", "Message": "'List' is null; it must be provided with a non-null value.\r\nPlease click the HelpLink for more information on how to fix this.", "HelpLink": "https://docs.wearecortex.com/docs/2023.5/reference/exceptions/common/property/property-null-exception/"}` | + +For more information regarding what properties are accessible on an exception, see the relevant documentation for that [exception][Exceptions]. + +## Remarks + +### Known Limitations + +#### Carriage Return and Line Feed Characters + +Carriage Return and Line Feed characters within an exception are supported but will be displayed or written as `\r`, `\n`, or `\r\n`. + +In future this limitation may be removed. + +#### Copying Exception Text + +The [Exceptions Viewer][] currently does not support traditional copy functionality. A workaround is to highlight the text, then click and drag into another text editor. + +In future this limitation may be removed. + +## See Also + +### Related Concepts + +- [Flows][] +- [Blocks][] +- [Executions][] + +### Related Data Types + +- [All Exceptions][Exceptions] + +### Related Blocks + +- [All Blocks][] + +### External Documentation + +None + +[Anatomy of an Exception]: {{< ref "#anatomy-of-an-exception" >}} + +[Handling Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.HandlingExceptions.MainDoc" >}} +[Throwing Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.ThrowingExceptions.MainDoc" >}} + +[Blocks]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.MainDoc" >}} +[block]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.WhatIsABlock.MainDoc" >}} + +[Executions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Executions.MainDoc" >}} +[execution]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Executions.WhatIsAnExecution.MainDoc" >}} + +[Flows]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Flows.MainDoc" >}} +[flow]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Flows.WhatIsAFlow.MainDoc" >}} + +[All Blocks]: {{< url path="Cortex.Reference.Blocks.MainDoc" >}} +[Exception Blocks]: {{< url path="Cortex.Reference.Blocks.Exceptions.MainDoc" >}} +[Throw New Exception]: {{< url path="Cortex.Reference.Blocks.Exceptions.ThrowException.ThrowNewFlowException.MainDoc" >}} +[Add Item With Key]: {{< url path="Cortex.Reference.Blocks.Dictionaries.AddItem.AddItemWithKey.MainDoc" >}} + +[Dictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.MainDoc" >}} + +[Exceptions]: {{< url path="Cortex.Reference.Exceptions.MainDoc" >}} +[InfiniteLoopException: Category]: {{< url path="Cortex.Reference.Exceptions.Loops.InfiniteLoopException.Category" >}} +[InfiniteLoopException: Error Code]: {{< url path="Cortex.Reference.Exceptions.Loops.InfiniteLoopException.ErrorCode" >}} + +[Exceptions Viewer]: {{< url path="Cortex.Guides.Studio.EastPanel.ExceptionsViewer" >}} diff --git a/content/en/docs/2024.11/Reference/Concepts/fundamentals/executions/_index.md b/content/en/docs/2024.11/Reference/Concepts/fundamentals/executions/_index.md new file mode 100644 index 000000000..370e98eae --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/fundamentals/executions/_index.md @@ -0,0 +1,6 @@ +--- +title: "Executions" +linkTitle: "Executions" +description: "Information regarding what an execution is, starting executions, execution variables, exceptions thrown during an execution, and execution metadata." +weight: 500 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Concepts/fundamentals/executions/executions-in-development.md b/content/en/docs/2024.11/Reference/Concepts/fundamentals/executions/executions-in-development.md new file mode 100644 index 000000000..f1ceee546 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/fundamentals/executions/executions-in-development.md @@ -0,0 +1,229 @@ +--- +title: "Executions in Development" +linkTitle: "Executions in Development" +description: "Information regarding working with executions in development (i.e. {{% ctx %}} Studio)." +weight: 100 +--- + +# {{% param title %}} + +## Summary + +Whilst debugging a flow, each execution is represented by a [token][] that moves through the [flow][], showing which [block][] is currently being executed. + +A [flow][] can be debugged in [{{% ctx %}} Studio][CORTEX Studio] by clicking the [Start an execution][] button or by making an [API call][API call: CORTEX Studio] to [{{% ctx %}} Studio][CORTEX Studio], [providing input variables][Providing Input Variables] to the flow, if required; this will [validate the flow][Validating a Flow] and then begin an execution. + +The following parameters can be specified: + +- Show execution on workspace - when this is `true`, the token will be shown at every step throughout the [flow][], otherwise the token will only be shown when the execution [pauses][Paused], hits a [breakpoint][], or an exception occurs when `Break on exception` is `true` +- Break on exception - when this is `true` the execution will [pause][Paused] when an exception occurs + +## Providing Input Variables + +Any flow that has [Input Variables][] defined requires them to be provided when debugging, these may be provided to a flow in the following ways: + +- From [{{% ctx %}} Studio][CORTEX Studio] using the [Inputs Property][] in the [Settings Editor][] +- From an [HTTP request][HTTP request: CORTEX Studio] using the inputVariables in the body of the request + +## Retrieving Output Variables + +Any flow that has [Output Variables][] defined can have those variables retrieved after the execution has completed by using the outputVariables in the body of the [HTTP response][HTTP response: CORTEX Studio]. + +## Validating a Flow + +The [flow][] is validated before it's debugged, if this is successful an execution will begin. + +If there are any issues with the flow then the execution will not start and details of what needs to be resolved will be returned. If the flow was debugged by clicking the [Start an execution][] button, then entries will be displayed in the [Messages Grid][]; if it was debugged by making an [HTTP request][HTTP request: CORTEX Studio] to [{{% ctx %}} Studio][CORTEX Studio], then a 400 Bad Request is returned. + +For a complete list see [Validation][] messages. + +## Selecting an Execution + +One or more executions can be selected within [{{% ctx %}} Studio][CORTEX Studio] by clicking on their [token][], or selecting them using the [Executions Grid][]. This allows: + +- [Interacting with an Execution][] +- [Viewing an Execution's Variables][] +- [Viewing an Execution's Exceptions][] + +## Interacting with an Execution + +Once executions are [selected][Selecting an Execution] in [{{% ctx %}} Studio][CORTEX Studio] they can be interacted with in the following ways: + +- [Paused][] +- [Stepped][] +- [Continued][] +- [Stopped][] + +### Set Next Block to Execute + +[Set Next Block to Execute][] allows a developer to choose which [block][] will be executed next for the selected execution, even if this block is not connected to the [flow][]. + +Examples of what this can be used to do whilst debugging include: + +- Retrying a block due to a transient exception such as network connectivity +- Retrying a block after using [Edit and Continue][Edit and Continue an Execution] to fix an incorrectly configured block +- Skipping over functionality that is not yet working +- Skipping to specific functionality within the flow in order to test it +- Running logic that is not part of the flow (e.g. running a clean up script to reset any external data sources for the next execution of the flow) + +Currently, Set Next Block to Execute is not available when [multiple executions are selected][], or the [block and execution are on different workspaces][]. + +### Edit and Continue an Execution + +[Edit and Continue][] allows a developer to pause all executions, and make changes to the [flow][] before continuing debugging. + +Examples of what this can be used to do whilst debugging include: + +- Making changes such as adding, updating and removing: [blocks][block], [connections][], [variables][variable] +- Fixing an incorrectly configured block + +Currently when using Edit and Continue, it is not possible to [directly change the value of a variable without using a block][]. + +## Viewing an Execution's Variables + +When debugging a [flow][] in [{{% ctx %}} Studio][CORTEX Studio], [selecting an execution][Selecting an Execution] will display all initialised [variables][variable] that are in [scope][] in the [Variables Viewer][]. + +To see the data in a variable, select the variable in the [Variables Viewer][] and the data will be presented in the [Variable Details Viewer][]. If the data is large enough to negatively affect the performance of [{{% ctx %}} Studio][CORTEX Studio] it will not be displayed unless the [Load Value Button][] is clicked. + +## Viewing an Execution's Exceptions + +When debugging a [flow][] in [{{% ctx %}} Studio][CORTEX Studio], [selecting an execution][Selecting an Execution] will display all [exceptions][exception] that have been thrown for that execution in the [Exceptions Viewer][]. + +In future, it will be possible to navigate to the block that caused the exception. + +## Handling an Execution's Exceptions + +Exceptions thrown by an execution can be handled at any level within a flow. + +Exceptions can be handled: + +- At the [block][] level; for further information, see [Handling Exceptions within a Block][] +- At the [workspace][] level; for further information, see [Handling Exceptions within a Workspace][] +- At the [flow][] level; for further information, see [Handling Exceptions within a Flow][] + +If an exception occurs within the workspace of the [Handle Flow Exception][] block and is not handled, the execution will end with a status of Error. + +{{< figure src="/images/flow-error-status.png" >}} + +## Logs Generated + +There are two ways that logs are generated while debugging a [flow][], they are: + +- Automatically generated by the [Execution Service][Execution Service] +- Developer generated by using the [Log Event][] block + +## Remarks + +### Known Limitations + +#### Updating a Variable's value is not possible without using a Block + +When using [Edit and Continue][], it is not possible to directly change the value of a [variable][] without using a [block][]. + +In future this limitation may be removed. + +#### Set Next Block to Execute not available when multiple Executions are selected + +It is not possible to use [Set Next Block to Execute][] when there are multiple executions selected on the same [workspace][]. + +In future this limitation may be removed. + +#### Set Next Block to Execute not available when the Block and Execution are on different Workspaces + +It is not possible to use [Set Next Block to Execute][] when the selected execution is not on the same [workspace][] as the [block][] being set next to execute. + +In future this limitation may be removed. + +## See Also + +### Related Concepts + +- [Flows][] +- [Workspaces][] +- [Blocks][] +- [Variables][] +- [Data Types][] +- [Exceptions][] +- [Messages][] + +### Related Data Types + +- [All Data Types][] + +### Related Blocks + +- [All Blocks][] + +### External Documentation + +None + +[Providing Input Variables]: {{< ref "#providing-input-variables" >}} +[Validating a Flow]: {{< ref "#validating-a-flow" >}} +[Interacting with an Execution]: {{< ref "#interacting-with-an-execution" >}} +[Viewing an Execution's Variables]: {{< ref "#viewing-an-executions-variables" >}} +[Viewing an Execution's Exceptions]: {{< ref "#viewing-an-executions-exceptions" >}} +[Selecting an Execution]: {{< ref "#selecting-an-execution" >}} +[Edit and Continue an Execution]: {{< ref "#edit-and-continue-an-execution" >}} +[multiple executions are selected]: {{< ref "#set-next-block-to-execute-not-available-when-multiple-executions-are-selected" >}} +[block and execution are on different workspaces]: {{< ref "#set-next-block-to-execute-not-available-when-the-block-and-execution-are-on-different-workspaces" >}} +[directly change the value of a variable without using a block]: {{< ref "#updating-a-variables-value-is-not-possible-without-using-a-block" >}} + +[Blocks]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.MainDoc" >}} +[block]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.WhatIsABlock.MainDoc" >}} +[connections]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.WhatIsABlock.BlockConnections" >}} +[Handling Exceptions within a Block]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.HandlingExceptionsWithinABlock.MainDoc" >}} + +[Data Types]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.MainDoc" >}} + +[Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.MainDoc" >}} +[exception]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.WhatIsAnException.MainDoc" >}} + +[Flows]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Flows.MainDoc" >}} +[flow]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Flows.WhatIsAFlow.MainDoc" >}} +[Handling Exceptions within a Flow]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Flows.HandlingExceptionsWithinAFlow.MainDoc" >}} + +[Messages]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Messages.MainDoc" >}} +[message]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Messages.WhatIsAMessage.MainDoc" >}} + +[Variables]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.MainDoc" >}} +[variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.WhatIsAVariable.MainDoc" >}} +[Input Variables]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.WhatIsAVariable.FlowInputVariable" >}} +[Output Variables]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.WhatIsAVariable.OutputVariablesStructure" >}} + +[Workspaces]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Workspaces.MainDoc" >}} +[workspace]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Workspaces.WhatIsAWorkspace.MainDoc" >}} +[Handling Exceptions within a Workspace]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Workspaces.HandlingExceptionsWithinAWorkspace.MainDoc" >}} +[scope]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.VariableScopes.MainDoc" >}} + +[All Blocks]: {{< url path="Cortex.Reference.Blocks.MainDoc" >}} +[Handle Flow Exception]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleFlow.HandleFlowException.MainDoc" >}} +[Log Event]: {{< url path="Cortex.Reference.Blocks.Logs.LogEvent.LogEvent.MainDoc" >}} + +[All Data Types]: {{< url path="Cortex.Reference.DataTypes.MainDoc" >}} + +[API call: CORTEX Studio]: {{< url path="Cortex.Reference.Apis.Studio.MainDoc" >}} +[HTTP request: CORTEX Studio]: {{< url path="Cortex.Reference.Apis.Studio.MainDoc" >}} +[HTTP response: CORTEX Studio]: {{< url path="Cortex.Reference.Apis.Studio.MainDoc" >}} + +[Execution Service]: {{< url path="Cortex.Reference.Logs.CortexExecutionService.MainDoc" >}} +[Validation]: {{< url path="Cortex.Reference.Messages.Validation.MainDoc" >}} + +[CORTEX Studio]: {{< url path="Cortex.Guides.Studio.MainDoc" >}} +[Set Next Block to Execute]: {{< url path="Cortex.Guides.Studio.MainDisplayArea.SetNextBlockToExecute" >}} +[breakpoint]: {{< url path="Cortex.Guides.Studio.MainDisplayArea.Breakpoints" >}} +[token]: {{< url path="Cortex.Guides.Studio.MainDisplayArea.Executions" >}} +[Start an execution]: {{< url path="Cortex.Guides.Studio.MainDisplayArea.StartAnExecution" >}} +[Edit and Continue]: {{< url path="Cortex.Guides.Studio.MainDisplayArea.EditAndContinueAnExecution" >}} +[Exceptions Viewer]: {{< url path="Cortex.Guides.Studio.EastPanel.ExceptionsViewer" >}} +[Variable Details Viewer]: {{< url path="Cortex.Guides.Studio.EastPanel.VariableDetailsViewer" >}} +[Load Value Button]: {{< url path="Cortex.Guides.Studio.EastPanel.LoadValueButton" >}} +[Variables Viewer]: {{< url path="Cortex.Guides.Studio.EastPanel.VariablesViewer" >}} +[Settings Editor]: {{< url path="Cortex.Guides.Studio.EastPanel.SettingsEditor" >}} +[Inputs Property]: {{< url path="Cortex.Guides.Studio.EastPanel.InputsProperty" >}} +[Executions Grid]: {{< url path="Cortex.Guides.Studio.SouthPanel.ExecutionsGrid" >}} +[Paused]: {{< url path="Cortex.Guides.Studio.SouthPanel.PausingAnExecution" >}} +[Stepped]: {{< url path="Cortex.Guides.Studio.SouthPanel.SteppingAnExecution" >}} +[Continued]: {{< url path="Cortex.Guides.Studio.SouthPanel.ContinuingAnExecution" >}} +[Stopped]: {{< url path="Cortex.Guides.Studio.SouthPanel.StoppingAnExecution" >}} +[Messages Grid]: {{< url path="Cortex.Guides.Studio.SouthPanel.MessagesGrid" >}} diff --git a/content/en/docs/2024.11/Reference/Concepts/fundamentals/executions/executions-in-production.md b/content/en/docs/2024.11/Reference/Concepts/fundamentals/executions/executions-in-production.md new file mode 100644 index 000000000..752dca900 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/fundamentals/executions/executions-in-production.md @@ -0,0 +1,121 @@ +--- +title: "Executions in Production" +linkTitle: "Executions in Production" +description: "Information regarding working with executions in production (i.e. API Gateway Service)." +weight: 200 +--- + +# {{% param title %}} + +## Summary + +A [flow][] can be started in Production by making an [API call][API call: API Gateway] to the [API Gateway Service][], [providing input variables][Providing Input Variables] to the flow, if required; this will [validate the flow][Validating a Flow] and then begin an execution. + +## Providing Input Variables + +Any flow that has [Input Variables][] defined can have those variables provided by using the inputVariables in the body of the [HTTP request][HTTP request: API Gateway Service]. + +## Retrieving Output Variables + +Any flow that has [Output Variables][] defined can have those variables retrieved after the execution has completed by using the outputVariables in the body of the [HTTP response][HTTP response: API Gateway Service] + +## Validating a Flow + +The [flow][] is validated before it's started, if this is successful an execution will begin. + +If there are any issues with the flow then the execution will not start and details of what needs to be resolved will be returned. If the flow was started by making an [HTTP request][HTTP request: API Gateway Service] to the [API Gateway Service][], then a 400 Bad Request is returned. + +For a complete list see [Validation][] messages. + +## Handling an Execution's Exceptions + +Exceptions thrown by an execution can be handled at any level within a flow. + +Exceptions can be handled: + +- At the [block][] level; for further information, see [Handling Exceptions within a Block][] +- At the [workspace][] level; for further information, see [Handling Exceptions within a Workspace][] +- At the [flow][] level; for further information, see [Handling Exceptions within a Flow][] + +If an exception occurs within the workspace of the [Handle Flow Exception][] block and is not handled, the execution will end and then a 500 Internal Server Error is returned. + +## Logs Generated + +There are two ways that logs are generated while executing a [flow][] in Production, they are: + +- Automatically generated by the [API Gateway Service][API Gateway Service: Logs] +- Developer generated by using the [Log Event][] block + +## Remarks + +### Known Limitations + +None + +## See Also + +### Related Concepts + +- [Flows][] +- [Workspaces][] +- [Blocks][] +- [Variables][] +- [Data Types][] +- [Exceptions][] +- [Messages][] + +### Related Data Types + +- [All Data Types][] + +### Related Blocks + +- [All Blocks][] + +### External Documentation + +None + +[Providing Input Variables]: {{< ref "#providing-input-variables" >}} +[Validating a Flow]: {{< ref "#validating-a-flow" >}} + +[Blocks]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.MainDoc" >}} +[block]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.WhatIsABlock.MainDoc" >}} +[Handling Exceptions within a Block]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.HandlingExceptionsWithinABlock.MainDoc" >}} + +[Data Types]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.MainDoc" >}} + +[Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.MainDoc" >}} +[exception]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.WhatIsAnException.MainDoc" >}} + +[Flows]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Flows.MainDoc" >}} +[flow]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Flows.WhatIsAFlow.MainDoc" >}} +[Handling Exceptions within a Flow]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Flows.HandlingExceptionsWithinAFlow.MainDoc" >}} + +[Messages]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Messages.MainDoc" >}} +[message]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Messages.WhatIsAMessage.MainDoc" >}} + +[Variables]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.MainDoc" >}} +[variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.WhatIsAVariable.MainDoc" >}} +[Input Variables]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.WhatIsAVariable.FlowInputVariable" >}} +[Output Variables]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.WhatIsAVariable.OutputVariablesStructure" >}} + +[Workspaces]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Workspaces.MainDoc" >}} +[workspace]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Workspaces.WhatIsAWorkspace.MainDoc" >}} +[Handling Exceptions within a Workspace]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Workspaces.HandlingExceptionsWithinAWorkspace.MainDoc" >}} +[scope]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.VariableScopes.MainDoc" >}} + +[All Blocks]: {{< url path="Cortex.Reference.Blocks.MainDoc" >}} +[Handle Flow Exception]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleFlow.HandleFlowException.MainDoc" >}} +[Log Event]: {{< url path="Cortex.Reference.Blocks.Logs.LogEvent.LogEvent.MainDoc" >}} + +[All Data Types]: {{< url path="Cortex.Reference.DataTypes.MainDoc" >}} + +[API Gateway Service: Logs]: {{< url path="Cortex.Reference.Logs.CortexInnovation.CoreApplication.Services.ApiGatewayService.MainDoc" >}} + +[Validation]: {{< url path="Cortex.Reference.Messages.Validation.MainDoc" >}} + +[API Gateway Service]: {{< url path="Cortex.Reference.Apis.CortexInnovation.CoreApplication.Services.ApiGatewayService.MainDoc" >}} +[API call: API Gateway]: {{< url path="Cortex.Reference.Apis.CortexInnovation.CoreApplication.Services.ApiGatewayService.MainDoc" >}} +[HTTP request: API Gateway Service]: {{< url path="Cortex.Reference.Apis.CortexInnovation.CoreApplication.Services.ApiGatewayService.MainDoc" >}} +[HTTP response: API Gateway Service]: {{< url path="Cortex.Reference.Apis.CortexInnovation.CoreApplication.Services.ApiGatewayService.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Concepts/fundamentals/executions/what-is-an-execution.md b/content/en/docs/2024.11/Reference/Concepts/fundamentals/executions/what-is-an-execution.md new file mode 100644 index 000000000..24b5b691f --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/fundamentals/executions/what-is-an-execution.md @@ -0,0 +1,148 @@ +--- +title: "What is an Execution?" +linkTitle: "What is an Execution?" +description: "Information regarding the anatomy of an execution." +weight: 1 +--- + +# {{% param title %}} + +## Summary + +An execution represents a running instance of a [flow][], the execution moves through the flow sequentially executing each [block][] saving any outputs to [variables][variable]. A flow can have one or more executions running at any time, each with their own variables. + +- See [Executions in Development][] for more information regarding working with executions in [{{% ctx %}} Studio][CORTEX Studio]. +- See [Executions in Production][] for more information regarding running executions in the [Execution Service][]. + +## Anatomy of an Execution + +{{< figure src="/images/execution-in-grid.PNG" >}} + +| Property | Notes | Example | +|-------------------|------------------------------------------------------------|-----------------------------------------------------------| +| Status Icon | The Icon representing the current Status of the execution | A list of [statuses][Execution Status] can be found below | +| Started At | The date and time that the execution was started | `6 Sep 2022 09:27:45` | +| Updated At | The date and time of the last update for the execution | `6 Sep 2022 09:27:46` | +| Status | The status of the execution | A list of [statuses][Execution Status] can be found below | +| Block Type | The block the execution is currently on | `Set Variable` | +| Block Description | The description of the block the execution is currently on | `Set Variable` | +| Workspace Name | The name of the workspace the execution is currently in | `Setup and Run Child-Flow` | +| Flow Name | The name of the flow the execution is currently running | `Parent-Flow` | + +When a [flow][] starts the execution of a child flow using the [Run Flow][] block, any child executions will be shown within a tree in the [Executions Grid][], for example: + +{{< figure src="/images/child-execution-in-grid.PNG" >}} + +### Execution Status + +| Status | Description | +|-----------|------------------------------------------------------------------------------------------------------------------------------------------------| +| Running | The execution is currently executing | +| Pausing | The execution is in the process of pausing - e.g. a long running block may have to finish before the execution is paused | +| Paused | The execution is paused on top of a block - before the block starts to execute | +| | The execution is paused at a breakpoint on top of a block - before the block starts to execute | +| | The execution is paused on the output port of a block - after the block has executed but before the execution has selected which block is next | +| Exception | The execution is paused on the exception output port - after the block has thrown an exception when `break on exception` is turned on | +| Stopping | The execution is in the process of stopping - e.g. a long running block may have to finish before the execution is stopped | +| Stopped | The execution has ended after having been manually stopped | +| Ended | The execution has ended normally | +| Error | The execution has ended after having thrown an exception that was not handled | + +## Execution Context + +Executions have their own context that contains specific information about the current execution. This can be accessed via the built-in `_executionContext` [variable][] and currently contains the following properties: + +- [Initiator][] +- [Extensions][] + +### Initiator + +The initiator is a read-only property that contains the following information about the user that initiated the execution: + +- `Name`: The name of the user that initiated the execution. +- `AuthenticationType`: The authentication type of the user that initiated the execution. +- `IsAuthenticated`: A boolean value indicating if the user that initiated the execution is authenticated. This should always be `true`. +- `Claims`: A list of claims associated with the user that initiated the execution. + +The values can be accessed using [property expression][] or dictionary [index expressions][] syntax, as follows: + +```csharp +($)_executionContext.Initiator.Name +``` + +```csharp +($)_executionContext.Initiator["Name"] +``` + +### Extensions + +The `Extensions` property can be used to store additional information. This data will be accessible to all blocks within the execution, including child executions. + +A value can be added to the `Extensions` property using the [expression editor][], using the dictionary [index expressions][] syntax, for example: + +```csharp +($)_executionContext.Extensions["key"] = "value"; +``` + +The value can be accessed in the same way, for example: + +```csharp +($)_executionContext.Extensions["key"] +``` + +## Remarks + +### Known Limitations + +None + +## See Also + +### Related Concepts + +- [Flows][] +- [Blocks][] +- [Variables][] + +### Related Data Types + +- [All Data Types][] + +### Related Blocks + +- [All Blocks][] + +### External Documentation + +None + +[Execution Status]: {{< ref "#execution-status" >}} +[Extensions]: {{< ref "#extensions" >}} +[Initiator]: {{< ref "#initiator" >}} + +[Executions in Development]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Executions.ExecutionsInDevelopment.MainDoc" >}} +[Executions in Production]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Executions.ExecutionsInProduction.MainDoc" >}} + +[Blocks]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.MainDoc" >}} +[block]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.WhatIsABlock.MainDoc" >}} + +[Flows]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Flows.MainDoc" >}} +[flow]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Flows.WhatIsAFlow.MainDoc" >}} + +[Variables]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.MainDoc" >}} +[variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.WhatIsAVariable.MainDoc" >}} + +[All Blocks]: {{< url path="Cortex.Reference.Blocks.MainDoc" >}} + +[All Data Types]: {{< url path="Cortex.Reference.DataTypes.MainDoc" >}} + +[CORTEX Studio]: {{< url path="Cortex.Guides.Studio.MainDoc" >}} +[Executions Grid]: {{< url path="Cortex.Guides.Studio.SouthPanel.ExecutionsGrid" >}} + +[Execution Service]: {{< url path="Cortex.Reference.Apis.CortexInnovation.ExecutionApplication.Services.ExecutionService.MainDoc" >}} + +[Run Flow]: {{< url path="Cortex.Reference.Blocks.Flows.RunFlow.RunFlow.MainDoc" >}} + +[expression editor]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[index expressions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.IndexExpressions" >}} +[Property expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.PropertyExpressions" >}} diff --git a/content/en/docs/2024.11/Reference/Concepts/fundamentals/flows/_index.md b/content/en/docs/2024.11/Reference/Concepts/fundamentals/flows/_index.md new file mode 100644 index 000000000..a313a26d3 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/fundamentals/flows/_index.md @@ -0,0 +1,6 @@ +--- +title: "Flows" +linkTitle: "Flows" +description: "Information regarding what a flow is, how to call other flows and handling exceptions within a flow." +weight: 1 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Concepts/fundamentals/flows/calling-other-flows.md b/content/en/docs/2024.11/Reference/Concepts/fundamentals/flows/calling-other-flows.md new file mode 100644 index 000000000..4ac55ad3f --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/fundamentals/flows/calling-other-flows.md @@ -0,0 +1,75 @@ +--- +title: "Calling Other Flows" +linkTitle: "Calling Other Flows" +description: "Information regarding calling, and passing data to, other flows." +weight: 100 +--- + +# {{% param title %}} + +## Summary + +A [flow][] may trigger the execution of another [flow][]. + +## Calling Another Flow + +A [flow][] can be called from another [flow][] in the following ways: + +- Using the [Run Flow][] block to trigger the execution of another flow directly +- Using the [Execute HTTP Request][] block to trigger a flow through the API Gateway service (this should only be used to call [flows][flow] published in a separate {{% ctx %}} Innovation platform) + +### Input Variables + +Sometimes [flows][flow] require data to be passed to them through the use of input variables (e.g. a flow used to log errors may require a file path for where the logs are saved). + +Input variables can be passed into flows in the following ways: + +- For the [Run Flow][] block, input variables are configured using the Inputs property; for more information see [Run Flow Example][] +- For the [Execute HTTP Request][] block, input variables are configured within the body of the HttpRequest; for more information see example of [Calling Another Flow][] + +### Output Variables + +Sometimes [flows][flow] may return data through the use of output variables (e.g. a flow used to interact with a database may return its results). + +Output variables are returned to the calling flow in the following ways: + +- For the [Run Flow][] block, output variables are saved to the Outputs property; for more information see [Run Flow Example][] +- For the [Execute HTTP Request][] block, output variables are returned within the ResponseBody of the HttpResponse property; for more information see example of [Calling Another Flow][] + +## Remarks + +### Known Limitations + +#### Flows can only be Called Synchronously + +Currently it is only possible to call other [flows][flow] synchronously; this means the calling flow will wait for the called flow to complete its [execution][] before continuing. + +In the future it will be possible to call flows asynchronously; this means the calling flow will continue after the called flow starts its [execution][] without waiting for the called flow to complete. + +## See Also + +### Related Concepts + +- [Flows][] +- [Blocks][] +- [Executions][] + +### Related Blocks + +- [Run Flow][] +- [Execute HTTP Request][] + +### External Documentation + +None + +[Blocks]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.MainDoc" >}} +[execution]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Executions.WhatIsAnExecution.MainDoc" >}} +[Executions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Executions.MainDoc" >}} +[flow]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Flows.WhatIsAFlow.MainDoc" >}} +[Flows]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Flows.MainDoc" >}} + +[Run Flow]: {{< url path="Cortex.Reference.Blocks.Flows.RunFlow.RunFlow.MainDoc" >}} +[Run Flow Example]: {{< url path="Cortex.Reference.Blocks.Flows.RunFlow.RunFlow.RunningAFlow" >}} +[Execute HTTP Request]: {{< url path="Cortex.Reference.Blocks.Http.ExecuteHttpRequest.ExecuteHttpRequest.MainDoc" >}} +[Calling Another Flow]: {{< url path="Cortex.Reference.Blocks.Http.ExecuteHttpRequest.ExecuteHttpRequest.CallingAnotherFlow" >}} diff --git a/content/en/docs/2024.11/Reference/Concepts/fundamentals/flows/handling-exceptions-within-a-flow.md b/content/en/docs/2024.11/Reference/Concepts/fundamentals/flows/handling-exceptions-within-a-flow.md new file mode 100644 index 000000000..f91fbc8b4 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/fundamentals/flows/handling-exceptions-within-a-flow.md @@ -0,0 +1,68 @@ +--- +title: "Handling Exceptions within a Flow" +linkTitle: "Handling Exceptions within a Flow" +description: "Information regarding handling exceptions at different levels within a flow." +weight: 200 +--- + +# {{% param title %}} + +## Summary + +Exceptions within a flow can be handled at the following levels: + +- The [block level][] (Highest Priority) +- The [workspace level][] +- The [flow level][] (Lowest Priority) + +The [Handle Flow Exception][] block, which is located on the top-level [workspace][], handles any exceptions that are not handled at the [block][block level] or [workspace level][]. + +For more information, see [Handling Exceptions][]. + +## Remarks + +### Flow cannot be re-entered from the Handle Flow Exception Workspace + +Is it not possible to re-enter a flow once a [flow execution][] enters the [workspace][] of the [Handle Flow Exception][] block. + +### Known Limitations + +None + +## See Also + +### Related Concepts + +- [Flows][] +- [Workspaces][] +- [Blocks][] +- [Executions][] +- [Exceptions][] + +### Related Blocks + +- [Handle Flow Exception][] + +### External Documentation + +None + +[Handle Flow Exception]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleFlow.HandleFlowException.MainDoc" >}} + +[Blocks]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.MainDoc" >}} + +[Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.MainDoc" >}} +[Handling Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.HandlingExceptions.MainDoc" >}} +[block level]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.HandlingExceptions.BlockLevel" >}} +[flow level]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.HandlingExceptions.FlowLevel" >}} +[workspace level]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.HandlingExceptions.WorkspaceLevel" >}} + +[Executions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Executions.MainDoc" >}} +[flow execution]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Executions.WhatIsAnExecution.MainDoc" >}} + +[Flows]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Flows.MainDoc" >}} + +[Workspaces]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Workspaces.MainDoc" >}} +[workspace]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Workspaces.WhatIsAWorkspace.MainDoc" >}} + +[Handle Workspace Exception block]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleWorkspace.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Concepts/fundamentals/flows/what-is-a-flow.md b/content/en/docs/2024.11/Reference/Concepts/fundamentals/flows/what-is-a-flow.md new file mode 100644 index 000000000..e56d20651 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/fundamentals/flows/what-is-a-flow.md @@ -0,0 +1,208 @@ +--- +title: "What is a Flow?" +linkTitle: "What is a Flow?" +description: "Information regarding the anatomy of a flow, starting flows, grouping logic within a flow, and handling exceptions within a flow." +weight: 1 +--- + +# {{% param title %}} + +## Summary + +A flow is an object in [{{% ctx %}} Studio][CORTEX Studio] that contains the logic and actions (in the form of [blocks][] and [workspaces][]) that is able to be executed on a {{% ctx %}} platform. + +## Anatomy of a Flow + +There are two types of flows, which are used for different purposes: + +* [Process][] +* [Activity][] + +{{% alert title="Note" %}} +Prior to version 2024.9, there was a single type of flow named `Flow`. +As of 2024.9, `Flow` has been renamed to `Activity`. +{{% /alert %}} + +### Process + +Processes are a type of [Flow][] that can contain multiple [Activities][Activity] and are used to model high-level business processes. + +{{< figure src="/images/top-level-workspace-process.svg" title="Example Process" >}} + +* Processes flow from left to right +* Processes can call other processes +* Processes can call activities +* Processes only contain a subset of blocks as they are intended to model high-level business processes, not low-level implementation of tasks or actions +* Processes are optional an automation solution, but are useful for organizing and structuring the logic of a solution + +### Activity + +Activities are a type of [Flow][] that are used to model low-level tasks or actions. + +{{< figure src="/images/top-level-workspace-activity.svg" title="Example Activity" >}} + +* Activities flow from top to bottom +* Activities can call other activities +* Activities cannot call processes +* Activities contain all blocks as they are intended to model low-level tasks or actions +* Activities are required in an automation solution, as they are the building blocks of the solution + +## Composition of a Flow + +Flows are composed of the following: + +* [Workspace][Workspace ref] +* [Start Flow block][] +* [Action blocks][] +* [Decision blocks][Decision blocks ref] +* [Workspace blocks][] +* [End Flow block][] +* [Handle Flow Exception block][] + +### Workspace + +The [Top-Level Workspace][] within the flow. + +* Canvas on which blocks are placed and connected to create the flow logic +* See [Workspace][workspaces] + +### Start Flow block + +Identifies where the [flow execution][] will start. + +* Automatically created when the flow is created +* Cannot be deleted +* See [Start Flow][] block + +### Action blocks + +Performs a specific action. + +* Icon on block indicates the nature of the action +* See [Blocks][Reference Blocks] + +### Decision block + +Causes the [flow execution][] to branch, dependent on a condition. + +* See [Decision Blocks][Decision Blocks] + +### Workspace blocks + +Contains grouped flow logic. + +* See [Workspace][Workspace Block] block + +### End Flow block + +Ends the [flow execution][]. + +* Automatically created when the flow is created +* See [End Flow][] block + +### Handle Flow Exception block + +Handles [flow level exceptions][], thrown during the [flow execution][]. + +* Automatically created when the flow is created +* Cannot be deleted +* See [Handle Flow Exception][] block + +## Grouping Logic within a Flow + +All the logic of a flow can exist on the [Top-Level Workspace][], however, this can quickly become difficult to maintain and understand as the numbers of blocks increase. Blocks can be grouped into workspaces in order to reduce the complexity and make the flow easier to maintain. + +A [Workspace][Workspace Block] block can opened by double clicking it, showing its workspace canvas and the logic inside; this could include blocks for executing specific functions or other workspaces to help separate the logic of the flow further. + +For further information about [workspaces][workspace], see [Workspaces][workspaces]. + +## Starting a Flow Execution + +A [flow execution][flow execution] may be started by: + +* [Debugging][] a flow in [{{% ctx %}} Studio][CORTEX Studio] +* Triggering it by making an HTTP request from an external source (e.g. a web application or web hooks) +* Triggering it using the [Run Flow][] and [Run Flow Async][] block +* Triggering it using predefined events (future) (e.g. on receipt of an email) +* Scheduling it to execute at predetermined times + +## Exceptions within a Flow + +Flows support hierarchical exception handling at any level within the flow. + +Exceptions can be handled: + +* At the [block][] level; for further information, see [Handling Exceptions within a Block][] +* At the [workspace][] level; for further information, see [Handling Exceptions within a Workspace][] +* At the flow level; for further information, see [Handling Exceptions within a Flow][] + +## Remarks + +### Known Limitations + +#### Cannot have a Handle Workspace Exception block on the flow's Top-Level Workspace + +Currently, it is not possible to have a [Handle Workspace Exception][] block on the [Top-Level Workspace][] of a flow. In future this limitation may be removed. + +## See Also + +### Related Concepts + +* [Workspaces][workspaces] +* [Blocks][blocks] +* [Executions][] +* [Exceptions][] + +### Related Blocks + +* [Start Flow][] +* [End Flow][] +* [Run Flow][] +* [Run Flow Async][] +* [Handle Flow Exception][] +* [Handle Workspace Exception][] +* [Workspace][Workspace Block] + +### External Documentation + +None + +[Activity]: {{< ref "#activity" >}} +[Process]: {{< ref "#process" >}} +[Flow]: {{< ref "#summary" >}} + +[Start Flow block]: {{< ref "#start-flow-block" >}} +[Action blocks]: {{< ref "#action-blocks" >}} +[Decision blocks ref]: {{< ref "#decision-block" >}} +[Workspace blocks]: {{< ref "#workspace-blocks" >}} +[End Flow block]: {{< ref "#end-flow-block" >}} +[Handle Flow Exception block]: {{< ref "#handle-flow-exception-block" >}} +[Workspace ref]: {{< ref "#workspace" >}} + +[blocks]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.MainDoc" >}} +[Handling Exceptions within a Block]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.HandlingExceptionsWithinABlock.MainDoc" >}} +[Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.MainDoc" >}} +[Executions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Executions.MainDoc" >}} +[Handling Exceptions within a Flow]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Flows.HandlingExceptionsWithinAFlow.MainDoc" >}} +[flow level exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.HandlingExceptions.FlowLevel" >}} +[block]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.WhatIsABlock.MainDoc" >}} +[flow execution]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Executions.WhatIsAnExecution.MainDoc" >}} +[workspaces]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Workspaces.MainDoc" >}} +[Handling Exceptions within a Workspace]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Workspaces.HandlingExceptionsWithinAWorkspace.MainDoc" >}} +[workspace]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Workspaces.WhatIsAWorkspace.MainDoc" >}} +[Top-Level Workspace]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Workspaces.WhatIsAWorkspace.TopLevelWorkspace" >}} + +[Reference Blocks]: {{< url path="Cortex.Reference.Blocks.MainDoc" >}} +[Decision Blocks]: {{< url path="Cortex.Reference.Blocks.Decisions.MainDoc" >}} +[Workspace Block]: {{< url path="Cortex.Reference.Blocks.Workspaces.Workspace.Workspace.MainDoc" >}} +[Handle Flow Exception]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleFlow.HandleFlowException.MainDoc" >}} +[Handle Workspace Exception]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleWorkspace.HandleWorkspaceException.MainDoc" >}} +[Start Flow]: {{< url path="Cortex.Reference.Blocks.Flows.StartFlow.StartFlow.MainDoc" >}} +[End Flow]: {{< url path="Cortex.Reference.Blocks.Flows.EndFlow.EndFlow.MainDoc" >}} + +[CORTEX Studio]: {{< url path="Cortex.Guides.Studio.MainDoc" >}} +[Debugging]: {{< url path="Cortex.Guides.Studio.Debugging.MainDoc" >}} + +[Run Flow]: {{< url path="Cortex.Reference.Blocks.Flows.RunFlow.RunFlow.MainDoc" >}} + +[Run Flow Async]: {{< url path="Cortex.Reference.Blocks.Flows.RunFlow.RunFlowAsync.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Concepts/fundamentals/messages/_index.md b/content/en/docs/2024.11/Reference/Concepts/fundamentals/messages/_index.md new file mode 100644 index 000000000..978085070 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/fundamentals/messages/_index.md @@ -0,0 +1,6 @@ +--- +title: "Messages" +linkTitle: "Messages" +description: "Information regarding what a message is." +weight: 700 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Concepts/fundamentals/messages/what-is-a-message.md b/content/en/docs/2024.11/Reference/Concepts/fundamentals/messages/what-is-a-message.md new file mode 100644 index 000000000..2baf3fed2 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/fundamentals/messages/what-is-a-message.md @@ -0,0 +1,107 @@ +--- +title: "What is a Message?" +linkTitle: "What is a Message?" +description: "Information regarding the anatomy of a message, when a message will occur, and using messages to navigate to issues within a flow." +weight: 1 +--- + +# {{% param title %}} + +## Summary + +When [Starting an Execution in Development][] using the [Start an execution][] button, the [flow][] will be [validated][]; if there are issues with the flow, [messages][] explaining the issues will be displayed in the [Messages Grid][]. + +Some examples of issues that can be raised are: + +- [Blocks][block] using undefined [variables][variable] +- [Blocks][block] using [variables][variable] with mismatched [data types][data type] +- [Input variables][] that have not been initialised + +For a complete list see [Validation][] messages. + +## Anatomy of a Message + +{{< figure src="/images/messages-grid.PNG" >}} + +Related messages are grouped by the component affected (e.g. A [block][], or the [Settings Editor][]) + +Each message row contains the following: + +| Property | Notes | +|----------|-------| +| Location | Path to the specific part of the component that has caused the issue | +| Summary | Short description of the issue | +| Details | Further information about the issue. This may also contain help for resolving the issue | + +## Navigating to the Location of an issue from a message + +Double clicking on a message within the [Messages Grid][] will navigate the browser to the affected location. + +## Remarks + +### Known Limitations + +#### It is not possible to navigate to a nested literal property from a message + +It is not possible to navigate to a nested literal property from a message, clicking the message will cause the browser to navigate to the last [property][] of the top-level [literal editor][] that contains the issue. + +In future this limitation may be removed. + +#### It is not possible to navigate to the Settings Editor from a message + +It is not possible to navigate to the [Settings Editor][] from a message, clicking the message will do nothing. + +In future this limitation may be removed. + +## See Also + +### Related Concepts + +- [Flows][] +- [Blocks][] +- [Variables][] +- [Data Types][] +- [Executions][] + +### Related Blocks + +- [All Blocks][] + +### Related Data Types + +- [All Data Types][] + +### External Documentation + +None + +[messages]: {{< ref "#anatomy-of-a-message" >}} + +[Flows]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Flows.MainDoc" >}} +[flow]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Flows.WhatIsAFlow.MainDoc" >}} + +[Blocks]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.MainDoc" >}} +[block]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.WhatIsABlock.MainDoc" >}} +[property]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.MainDoc" >}} +[literal editor]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} + +[Variables]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.MainDoc" >}} +[variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.WhatIsAVariable.MainDoc" >}} +[Input variables]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.WhatIsAVariable.FlowInputVariable" >}} + +[Data Types]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.MainDoc" >}} +[data type]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.WhatIsADataType.MainDoc" >}} + +[Executions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Executions.MainDoc" >}} +[Starting an Execution in Development]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Executions.ExecutionsInDevelopment.MainDoc" >}} +[validated]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Executions.ExecutionsInDevelopment.ValidatingAFlow" >}} + +[All Blocks]: {{< url path="Cortex.Reference.Blocks.MainDoc" >}} + +[All Data Types]: {{< url path="Cortex.Reference.DataTypes.MainDoc" >}} + +[Validation]: {{< url path="Cortex.Reference.Messages.Validation.MainDoc" >}} + +[Start an execution]: {{< url path="Cortex.Guides.Studio.MainDisplayArea.StartAnExecution" >}} +[Messages Grid]: {{< url path="Cortex.Guides.Studio.SouthPanel.MessagesGrid" >}} +[Settings Editor]: {{< url path="Cortex.Guides.Studio.EastPanel.SettingsEditor" >}} diff --git a/content/en/docs/2024.11/Reference/Concepts/fundamentals/variables/_index.md b/content/en/docs/2024.11/Reference/Concepts/fundamentals/variables/_index.md new file mode 100644 index 000000000..f18e70787 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/fundamentals/variables/_index.md @@ -0,0 +1,6 @@ +--- +title: "Variables" +linkTitle: "Variables" +description: "Information regarding what a variable is, using variables, and variable scopes." +weight: 300 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Concepts/fundamentals/variables/using-variables.md b/content/en/docs/2024.11/Reference/Concepts/fundamentals/variables/using-variables.md new file mode 100644 index 000000000..bfeff30e7 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/fundamentals/variables/using-variables.md @@ -0,0 +1,212 @@ +--- +title: "Using Variables" +linkTitle: "Using Variables" +description: "Information regarding using variables in the Variable and Expression editors." +weight: 200 +--- + +# {{% param title %}} + +## Summary + +There are a number of ways to use variables: + +- The [Variable Editor][Using Variables: Variable Editor] can be used to create and select variables +- The [Expression Editor][Using Variables: Expression Editor] can be used to include variables within expressions + +## Variable Editor + +The [Variable Editor][] allows the the developer to [create][] and [use][] variables whilst configuring a [block][]. + +### Creating a Variable + +If a variable does not already exist, the [Variable Editor][] can be used to [create][Creating Variables] a new one at the [scope][] of the selected [block][]. + +If the variable name is invalid (does not conform with the [C# identifier naming rules][]) then there will be no option to create a new variable. + +### Using a Variable + +The [Variable Editor][] provides a list of variables that are available at the [scope][] of the selected [block][]. + +Typing any text in the [Variable Editor][] will filter the available variables, showing any variable whose name or scope contains the text. + +The Variable Editor also allows for: + +- [Using Items in Collections][] +- [Using Properties of Data Types][] +- [Using Methods of Data Types][] + +#### Using Items in Collections + +Variables that contain a [Collection][] or [String][] data type can have their respective items or characters accessed using index notation: + +- `[0]` gets the first item +- `[1]` gets the second item +- `["key"]` gets the item with the key `"key"`. + +Ranges can also be used within index notation: + +- `[0..3]` gets three items from the first item (inclusively) (i.e. the first, second, and third item) +- `[^1]` gets the last item +- `[^2]` gets the second to last item +- `[..]` gets all items +- `[..3]` gets three items from the first item (inclusively) (i.e. the first, second, and third item) +- `[3..]` gets all items from the fourth item (inclusively) (i.e. the fourth to the last item) + +In the examples below assume: + +- `($)List` has been set to `[1, 2, 3, 4, 5]` +- `($)Dictionary` of type `Dictionary` has been set to `{"FirstKey": 1, "SecondKey": 2}` +- `($)Structure` has been set to `{"FirstKey": 1, "SecondKey": [1, 2, 3]}` +- `($)String` has been set to `"Some Text"`. + +| Text | Result | Notes | +|--------------------------------|---------|------------------------------------| +| `List[2]` | `3` | The third item in the list is returned | +| `List[0..2]` | `[1, 2]` | The first and second item in the list are returned | +| `List[^2]` | `4` | The second to last item in the list is returned | +| `List[^2..^0]` | `[4, 5]` | The second to last and the last item in the list are returned | +| `List[1..^1]` | `[2, 3, 4]` | The second item to the second to last item in the list are returned | +| `List[..]` | `[1, 2, 3, 4, 5]` | All items in the list are returned | +| `List[..2]` | `[1, 2]` | The first item and the second item in the list are returned | +| `List[2..]` | `[3, 4, 5]` | The third item to the last item in the list are returned | +| `Dictionary["FirstKey"]` | `1` | The item with the key `"FirstKey"` is returned | +| `Structure["SecondKey"]` | `[1, 2, 3]` | The item with the key `"SecondKey"` is returned | +| `Structure["SecondKey"][0]` | `1` | The first item within the item with key `"SecondKey"` is returned | +| `String[0]` | `'S'` | The first character in the string is returned | + +#### Using Properties of Data Types + +[Properties][] can be used to read data from and/or write data to a variable. The properties accessible are defined by the [Data Type][], and information regarding properties can be found in the relevant documentation for that [Data Type][]. + +[Properties][] can be read-write, read-only, or write-only (extremely rare) depending on the access specified by the [Data Type][]. + +Whilst [Structures][Structure] are [Collections][Collection], they also allow for their keys to be accessed as [properties][Properties]. + +In the examples below assume: + +- `($)List` has been set to `[1, 2, 3]` +- `($)TimePeriod` has been set to `{"Years": 1, "Months": 0, "Days": 0, "Hours": 0, "Minutes": 0, "Seconds": 0, "Milliseconds": 0}` +- `($)Structure` has been set to `{"FirstKey": 1, "SecondKey": 2}` + +| Text | Result | Notes | +|--------------------------------|---------|------------------------------------| +| `List.Count` | `3` | Read-only property, this only works in [Input Properties][] | +| `TimePeriod.Years` | `1` | Read-write property, this can be used in [Input][Input Properties], [Output][Output Properties], and [InputOutput Properties][]. The result column shows reading the property; writing to the property can be achieved by using any [Output Property][Output Properties]. | +| `Structure.FirstKey` | `1` | Read-write property, this can be used in [Input][Input Properties], [Output][Output Properties], and [InputOutput Properties][]. The result column shows reading the property; writing to the property can be achieved by using any [Output Property][Output Properties]. | + +#### Using Methods of Data Types + +[Methods][] can be used to execute specific functionality. The methods accessible are defined by the [Data Type][], and information regarding methods can be found in the relevant documentation for that [Data Type][]. + +[Methods][] can have parameters passed into them that are then used to execute the functionality, not all methods have parameters. The same method can be defined multiple times, each with different sets of parameters. + +In the examples below assume the variable `($)Int` has been set to `1`. + +| Text | Result | Notes | +|--------------------------------|---------|------------------------------------| +| `Int.ToString()` | `"1"` | Method without parameters | +| `Int.ToString("P0")` | `"100%"` | The `ToString()` method can take parameters in order to format the result. In this case `1` was converted into a percent with zero decimal places | + +## Expression Editor + +Variables are named containers for storing values of any [data type][Data Type]; a variable can be included within [expressions][] created using the [Expression Editor][]. A variable is used by prefixing the variable's name with `($)` (e.g. `($)VariableName`). + +## Remarks + +### Case Sensitivity + +When using variables in the [Variable][Variable Editor] or [Expression Editor][], the names are case insensitive. For example, `List` is the same as `list`. + +When using [properties][Properties] or [methods][Methods] of any variable, or items in [Collections][Collection] (e.g. [Dictionaries][Dictionary], [Structures][Structure] etc.), their names are case sensitive. + +For Example: + +| Text | Notes | +|--------------------------------|------------------------------------| +| `FlowException.Message` | `Message` property cannot be accessed using `FlowException.message` | +| `Int.ToString()` | `ToString()` method cannot be accessed using `Int.toString()` | +| `Dictionary["Item1"]` | `"Item1"` item cannot be accessed using the key `Dictionary["item1"]` | + +### Known Limitations + +#### When using variables of the same name the closest scoped is used + +It is possible to create multiple variables with the same name in the [Variables Grid][]. When using the same name in different [workspaces][workspace], the variable with the closest scope will be used. + +For example: + +- `Top-Level` workspace has the variable `($)Variable` +- `Child-Level` workspace also has the variable `($)Variable` + +When executing a block in `Child-Level` that uses `($)Variable`, the variable that is used is the variable defined in `Child-Level`. + +This may change in future to allow developers to specifically select which of the variables with the same name is used in this scenario. + +## See Also + +### Related Concepts + +- [Flows][] +- [Workspaces][] +- [Blocks][] +- [Block Properties][] + +### Related Data Types + +- [All Data Types][Data Type] + +### Related Blocks + +- [All Blocks][] + +### External Documentation + +None + +[Using Variables: Variable Editor]: {{< ref "#variable-editor" >}} +[Using Variables: Expression Editor]: {{< ref "#expression-editor" >}} +[create]: {{< ref "#creating-a-variable" >}} +[use]: {{< ref "#using-a-variable" >}} + +[Using Items in Collections]: {{< ref "#using-items-in-collections" >}} +[Using Properties of Data Types]: {{< ref "#using-properties-of-data-types" >}} +[Using Methods of Data Types]: {{< ref "#using-methods-of-data-types" >}} + +[Blocks]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.MainDoc" >}} +[block]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.WhatIsABlock.MainDoc" >}} +[Block Properties]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.MainDoc" >}} +[Input Properties]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output Properties]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput Properties]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Property Editor]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.MainDoc" >}} +[Expression Editor]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[expressions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.Expressions" >}} +[Creating Variables]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.CreatingVariables" >}} + +[Flows]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Flows.MainDoc" >}} + +[Workspaces]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Workspaces.MainDoc" >}} +[workspace]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Workspaces.WhatIsAWorkspace.MainDoc" >}} + +[scope]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.VariableScopes.MainDoc" >}} + +[All Blocks]: {{< url path="Cortex.Reference.Blocks.MainDoc" >}} +[Set Variable]: {{< url path="Cortex.Reference.Blocks.Variables.SetVariable.SetVariable.MainDoc" >}} + +[Data Type]: {{< url path="Cortex.Reference.DataTypes.MainDoc" >}} +[Collection]: {{< url path="Cortex.Reference.DataTypes.Collections.MainDoc" >}} +[Dictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.MainDoc" >}} +[List]: {{< url path="Cortex.Reference.DataTypes.Collections.List.MainDoc" >}} +[Structure]: {{< url path="Cortex.Reference.DataTypes.Collections.Structure.MainDoc" >}} +[Exception]: {{< url path="Cortex.Reference.DataTypes.Exceptions.Exception.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[Variables Grid]: {{< url path="Cortex.Guides.Studio.SouthPanel.VariablesGrid" >}} +[Variable Editor]: {{< url path="Cortex.Guides.Studio.VariableEditor.MainDoc" >}} + +[Properties]: {{< url path="Cortex.Reference.Glossary.P-T.PropertyCSharp" >}} +[Methods]: {{< url path="Cortex.Reference.Glossary.K-O.Method" >}} +[programming language]: {{< url path="Cortex.Reference.Glossary.P-T.ProgrammingLanguage" >}} + +[C# identifier naming rules]: {{< url path="MSDocs.CSharp.IdentifierNamingRules" >}} diff --git a/content/en/docs/2024.11/Reference/Concepts/fundamentals/variables/variable-scopes.md b/content/en/docs/2024.11/Reference/Concepts/fundamentals/variables/variable-scopes.md new file mode 100644 index 000000000..160245078 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/fundamentals/variables/variable-scopes.md @@ -0,0 +1,99 @@ +--- +title: "Variable Scopes" +linkTitle: "Variable Scopes" +description: "Information regarding variable scopes, including: what they are, creating variables at a specific scope, and changing a variable's scope." +weight: 200 +--- +# {{% param title %}} + +## Summary + +Each [workspace][] in a [flow][] has a scope. A scope is where [variables][variable] are defined and controls where they can be used. + +Variables can only be used in the workspace of the scope they are defined in and any descendant workspaces. Only variables in scope will be available in the [Variable Editor][], or the [Expression Editor][] using [snippets][]. For an example see [Accessing Variables from Other Scopes][]. + +When the [flow execution][execution] exits a workspace, any local-scope variables that have been declared in that workspace are deleted and their values, if any, are lost. + +## Accessing Variables from Other Scopes + +For example, the table below shows a hierarchy of workspaces and which variables are available to each workspace due to their scope: + +| Workspace Name | Parent Workspace | Defined Variables | Available Variables | +|----------------|------------------|-------------------|---------------------| +| Top-Level Workspace | N/A |
  • GlobalVarA
  • GlobalVarB
|
  • GlobalVarA
  • GlobalVarB
| +| ChildWorkspace1 | Top-Level Workspace |
  • ChildVarA
  • ChildVarB
|
  • GlobalVarA
  • GlobalVarB
  • ChildVarA
  • ChildVarB
| +| ChildWorkspace2 | Top-Level Workspace |
  • ChildVarC
  • ChildVarD
|
  • GlobalVarA
  • GlobalVarB
  • ChildVarC
  • ChildVarD
| +| GrandChildWorkspace1 | ChildWorkspace1 |
  • GrandChildVarA
  • GrandChildVarB
|
  • GlobalVarA
  • GlobalVarB
  • ChildVarA
  • ChildVarB
  • GrandChildVarA
  • GrandChildVarB
| +| GrandChildWorkspace2 | ChildWorkspace2 |
  • GrandChildVarC
  • GrandChildVarD
|
  • GlobalVarA
  • GlobalVarB
  • ChildVarC
  • ChildVarD
  • GrandChildVarC
  • GrandChildVarD
| + +## Creating Variables at a Specific Scope + +[Variables][variable] can be created by using the [Variables Grid][Grid: Creating Variables], or through the use of the [Variable Editor][Editor: Creating Variables]. When a new variable is created, it is created in the scope of the currently selected [workspace][]. It is possible to [Change a Variable's Scope][Changing a Variable's Scope] + +## Changing a Variable's Scope + +A [variable's][variable] scope can be changed by using the [Variables Grid][Grid: Changing a Variable's Scope]. + +## Remarks + +### Known Limitations + +#### When using variables of the same name the closest scoped is used + +It is possible to create multiple [variables][variable] with the same name in the [Variables Grid][]. When using the same name in different [workspaces][workspace], the variable with the closest scope will be used. + +For example: + +- `Top-Level` workspace has the variable `($)Variable` +- `Child-Level` workspace also has the variable `($)Variable` + +When executing a block in `Child-Level` that uses `($)Variable`, the variable that is used is the variable defined in `Child-Level`. + +This may change in future to allow developers to specifically select which of the variables with the same name is used in this scenario. + +## See Also + +### Related Concepts + +- [Flows][] +- [Workspaces][] +- [Blocks][] +- [Block Properties][] +- [Executions][] + +### Related Blocks + +- [All Blocks][] + +### External Documentation + +None + +[Accessing Variables from Other Scopes]: {{< ref "#accessing-variables-from-other-scopes" >}} +[Changing a Variable's Scope]: {{< ref "#changing-a-variables-scope" >}} + +[Blocks]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.MainDoc" >}} +[Block Properties]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.MainDoc" >}} +[Expression Editor]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[Variable Editor]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Editor: Creating Variables]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.CreatingVariables" >}} + +[Executions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Executions.MainDoc" >}} +[execution]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Executions.WhatIsAnExecution.MainDoc" >}} + +[Flows]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Flows.MainDoc" >}} +[flow]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Flows.WhatIsAFlow.MainDoc" >}} + +[Workspaces]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Workspaces.MainDoc" >}} +[workspace]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Workspaces.WhatIsAWorkspace.MainDoc" >}} + +[Variables]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.MainDoc" >}} +[variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.WhatIsAVariable.MainDoc" >}} + +[Variables Grid]: {{< url path="Cortex.Guides.Studio.SouthPanel.VariablesGrid" >}} +[Grid: Creating Variables]: {{< url path="Cortex.Guides.Studio.SouthPanel.CreatingVariables" >}} +[Grid: Changing a Variable's Scope]: {{< url path="Cortex.Guides.Studio.SouthPanel.ChangingAVariablesScope" >}} + +[All Blocks]: {{< url path="Cortex.Reference.Blocks.MainDoc" >}} + +[snippets]: {{< url path="Cortex.Reference.Glossary.P-T.Snippets" >}} diff --git a/content/en/docs/2024.11/Reference/Concepts/fundamentals/variables/what-is-a-variable.md b/content/en/docs/2024.11/Reference/Concepts/fundamentals/variables/what-is-a-variable.md new file mode 100644 index 000000000..fc61ec3f1 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/fundamentals/variables/what-is-a-variable.md @@ -0,0 +1,259 @@ +--- +title: "What is a Variable?" +linkTitle: "What is a Variable?" +description: "Information regarding the anatomy of a variable, using variables at design and runtime, and variable typing." +weight: 1 +--- + +# {{% param title %}} + +## Summary + +A variable is a named container for storing data that can then be used in [Block Properties][]. + +Data in a variable can be read, updated, or removed by different blocks. Examples of these include: + +- Add an item to a [List][] +- Remove an item from a [List][] +- Get an item from a [Dictionary][] +- Set an item in a [Dictionary][] + +## Anatomy of a Variable + +{{< figure src="/images/variables-grid.PNG" >}} + +Variables have the following properties that can be configured in the [Variables Grid][]: + +| Variable Property | Notes | +|-------------|-------------| +| Description | Description of the variable's purpose | +| Name | Name of the variable | +| Type | Will default to variable. Read-only, reserved for future use | +| Set Default Value? | Sets the variable to be initialised to the **Default Value** if set to `true`, otherwise **Default Value** is ignored | +| Default Value | The value to initialise the variable to if **Set Default Value?** is set to `true`. See [Variables with a Default Value][] | +| Is Input Variable? | Marks the variable as an input if set to `true`, requiring data to be passed into the variable when the flow is triggered | +| Is Output Variable? | Marks the variable as an output if set to `true`. All output variables will be returned as items in a [Structure][]. See [Output Variables Structure][] | + +### Variables with a Default Value + +Variables can be initialised with a default value. The Default Value can be set to any valid expression or literal, but cannot include any variables. + +For example, the following expression is valid as it does not use any variables: + +```c# +"Server=myServerAddress;Database=myDataBase;User Id=myUsername;Password=myPassword;" +``` + +The following expression is invalid as it uses the `($)ServerName` variable: + +```c# +$@"Server={($)ServerName};Database=myDataBase;User Id=myUsername;Password=myPassword;" +``` + +### Output Variables Structure + +When any variables have their `Is Output Variable?` property set to `true`, they will be returned to the caller as items in a [Structure][] when the flow ends. + +In the following example `($)TotalUnreadEmails` and `($)FoldersWithUnreadEmails` are both set as outputs and the following [Structure][] is returned: + +```json +{ + "TotalUnreadEmails":12, + "FoldersWithUnreadEmails": { + "Inbox": 8, + "Junk": 4 + } +} +``` + +## Variables at Design Time + +The [Variables Grid][] is used to [create][], [view][], [modify][], and [delete][] variables. It is opened by clicking `Variables` tab at the bottom of [{{% ctx %}} Studio][CORTEX Studio]. For more information see [Variables Grid][]. + +Variables can also be created through the use of the [Variable Editor][]. For more information see [Creating Variables][]. + +## Variables at Runtime + +### Initialising Variables + +Variables must be initialised with data before they can be used in a block. + +If an [Input][] or [InputOutput][] property [uses a variable][] that has not been initialised, a [Message][Messages] will be returned stating `Variable is not initialised`, and the name of the variable will be included within the details of the message. The [Message][Messages] will be: + +- Displayed in the [Messages Grid][] when [debugging a flow][] in [{{% ctx %}} Studio][CORTEX Studio] +- Returned as an exception to the caller when a flow is triggered via the [API Gateway Service][] + +Variables can be initialised in the following ways: + +- Using a [Flow Input Variable][] +- Using the [Default Value][] +- Using a [Block Output Property][] + +#### Flow Input Variable + +If a variable has its `Is Input Variable?` property set to `true`, and no [Default Value][] has been set, then a value must be provided for the variable when the flow is triggered. When the execution starts, the variable is initialised with the value provided. + +#### Default Value + +If a variable has its `Set Default Value?` property set to `true`, it will be initialised with the `Default Value` provided when the flow is executed. + +If a variable has its `Is Input Variable?` and `Set Default Value?` properties set to `true`, then it will be initialised with the value provided when the flow is triggered. If no value is provided then it will be initialised with the `Default Value`. + +#### Block Output Property + +[Output Properties][Output] are used to save values to a variable during the execution of a block, regardless of whether the variable is already initialised or not. The act of saving to an uninitialised variable will initialise it. + +### Viewing Variables + +When [debugging a flow][debugging a flow] in [{{% ctx %}} Studio][CORTEX Studio], selecting an execution will display all initialised variables that are in [scope][] in the [Variables Viewer][]. + +{{< figure src="/images/reference/concepts/fundamentals/variables/what-is-a-variable-variable-panel-2.png" >}} + +#### Viewing Basic Data Types + +When a variable contains a [basic data type][] (e.g. String, Integer, etc), the value will be displayed directly in the [Variables Viewer][]. Strings will be surrounded by double quotes (e.g. `"MyString"`). + +#### Viewing Complex Data Types + +When a variable contains a [complex data type][] that is not a collection data type (e.g. Command or FlowException), the value will be displayed as `Instance of Command` or `Instance of FlowException` respectively in the [Variables Viewer][]. + +When a variable contains a [collection data type][Collections] (e.g. Dictionary, List, or Structure), the [Variables Viewer][] will specify the data type and how many items the collection contains (e.g. `Dictionary with 2 item(s)`). + +To see the data in the variable, select the variable in the [Variables Viewer][] and the data will be presented in the [Variable Details Viewer][]. + +The following examples show the [Variable Details Viewer][] when showing a: + +- [Dictionary][Dictionary] variable + +{{< figure src="/images/reference/concepts/fundamentals/variables/what-is-a-variable-dictionary-panel.png" >}} + +- [Command][] variable + +{{< figure src="/images/reference/concepts/fundamentals/variables/what-is-a-variable-command-panel.png" >}} + +- [FlowException][] variable + +{{< figure src="/images/reference/concepts/fundamentals/variables/what-is-a-variable-exception-panel.png" >}} + +### Updating Variables + +[InputOutput][] and [Output][] properties are used to save values and update variables during the execution of a block. + +### Deleting Variables + +When an execution exits a [workspace][], any variables defined within that workspace's [scope][] will be deleted from the execution. This means the variables: + +- Are no longer accessible to the execution +- Are no longer presented in the [Variables Viewer][] when the flow is being debugged + +If the execution re-enters the workspace's [scope][], any variables will be [re-initialised][Initialising Variables]. + +## Variable Typing + +Variables do not have their own [data type][Data Types Concept]; they are named containers for storing data of any [data type][Data Types Concept]. + +When a variable is used in a [Block Property][Block Properties] it is checked to ensure the data type it contains is supported by the property. For all data types apart from [dynamic][] any variables containing unsupported data types will be displayed in the [Messages Grid][], preventing the execution from starting; for variables containing [dynamic][] data types checking will be performed during the block execution, throwing an exception if the data type is unsupported. + +Sometimes an unsupported data type can automatically be converted to a supported type through the use of [implicit casting][implicitly cast]; if this is possible the block property will handle this without any input required by the developer. However, if this is not possible an unsupported data type must be converted to a supported type by the developer; this can be done by: + +- [Explicitly casting][explicitly cast] the unsupported [Data Type][Data Types] +- Converting the unsupported [Data Type][Data Types] through the use of methods and properties (e.g. `Convert.ToInt32(($)String)` or `Int32.Parse(($)String)`) + +For more information on specific data type conversions, see the relevant documentation for that [Data Type][Data Types]. + +## Remarks + +### Known Limitations + +#### Default Value can not use Variables + +Currently, default values cannot use variables. However, this may change in the future. + +For examples of valid and invalid default values see [Variables with a Default Value][]. + +## See Also + +### Related Concepts + +- [Flows][] +- [Workspaces][] +- [Blocks][] +- [Block Properties][] +- [Data Types][Data Types Concept] +- [Executions][] +- [Exceptions][] +- [Messages][Messages Concept] + +### Related Data Types + +- [All Data Types][Data Types] + +### Related Blocks + +- [All Blocks][] + +### External Documentation + +None + +[Variables with a Default Value]: {{< ref "#variables-with-a-default-value" >}} +[Output Variables Structure]: {{< ref "#output-variables-structure" >}} +[Flow Input Variable]: {{< ref "#flow-input-variable" >}} +[Default Value]: {{< ref "#default-value" >}} +[Block Output Property]: {{< ref "#block-output-property" >}} +[Initialising Variables]: {{< ref "#initialising-variables" >}} + +[Blocks]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.MainDoc" >}} +[Block Properties]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.MainDoc" >}} +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[Variable Editor]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Creating Variables]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.CreatingVariables" >}} + +[Data Types Concept]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.MainDoc" >}} +[basic data type]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.WhatIsADataType.BasicDataTypes" >}} +[complex data type]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.WhatIsADataType.ComplexDataTypes" >}} + +[Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.MainDoc" >}} + +[Executions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Executions.MainDoc" >}} +[debugging a flow]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Executions.ExecutionsInDevelopment.MainDoc" >}} + +[Flows]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Flows.MainDoc" >}} + +[Messages Concept]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Messages.MainDoc" >}} +[Messages]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Messages.WhatIsAMessage.MainDoc" >}} + +[uses a variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.UsingVariables.MainDoc" >}} +[scope]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.VariableScopes.MainDoc" >}} + +[Workspaces]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Workspaces.MainDoc" >}} +[workspace]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Workspaces.WhatIsAWorkspace.MainDoc" >}} + +[implicitly cast]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectCasting.ImplicitCast" >}} +[explicitly cast]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectCasting.ExplicitCast" >}} + +[API Gateway Service]: {{< url path="Cortex.Reference.Apis.CortexInnovation.CoreApplication.Services.ApiGatewayService.MainDoc" >}} + +[All Blocks]: {{< url path="Cortex.Reference.Blocks.MainDoc" >}} + +[Data Types]: {{< url path="Cortex.Reference.DataTypes.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[Collections]: {{< url path="Cortex.Reference.DataTypes.Collections.MainDoc" >}} +[Dictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.MainDoc" >}} +[List]: {{< url path="Cortex.Reference.DataTypes.Collections.List.MainDoc" >}} +[Structure]: {{< url path="Cortex.Reference.DataTypes.Collections.Structure.MainDoc" >}} +[Command]: {{< url path="Cortex.Reference.DataTypes.Data.Command.MainDoc" >}} + +[FlowException]: {{< url path="Cortex.Reference.Exceptions.Flows.FlowException.MainDoc" >}} + +[CORTEX Studio]: {{< url path="Cortex.Guides.Studio.MainDoc" >}} +[Variables Viewer]: {{< url path="Cortex.Guides.Studio.EastPanel.VariablesViewer" >}} +[Variable Details Viewer]: {{< url path="Cortex.Guides.Studio.EastPanel.VariableDetailsViewer" >}} +[Messages Grid]: {{< url path="Cortex.Guides.Studio.SouthPanel.MessagesGrid" >}} +[Variables Grid]: {{< url path="Cortex.Guides.Studio.SouthPanel.VariablesGrid" >}} +[create]: {{< url path="Cortex.Guides.Studio.SouthPanel.CreatingVariables" >}} +[view]: {{< url path="Cortex.Guides.Studio.SouthPanel.ViewingVariables" >}} +[modify]: {{< url path="Cortex.Guides.Studio.SouthPanel.ModifyingVariables" >}} +[delete]: {{< url path="Cortex.Guides.Studio.SouthPanel.DeletingVariables" >}} diff --git a/content/en/docs/2024.11/Reference/Concepts/fundamentals/workspaces/_index.md b/content/en/docs/2024.11/Reference/Concepts/fundamentals/workspaces/_index.md new file mode 100644 index 000000000..f49bf63c2 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/fundamentals/workspaces/_index.md @@ -0,0 +1,6 @@ +--- +title: "Workspaces" +linkTitle: "Workspaces" +description: "Information regarding what a workspace is, workspace scopes, and handling exceptions within a workspace." +weight: 100 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Concepts/fundamentals/workspaces/handling-exceptions-within-a-workspace.md b/content/en/docs/2024.11/Reference/Concepts/fundamentals/workspaces/handling-exceptions-within-a-workspace.md new file mode 100644 index 000000000..178cdbab7 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/fundamentals/workspaces/handling-exceptions-within-a-workspace.md @@ -0,0 +1,64 @@ +--- +title: "Handling Exceptions within a Workspace" +linkTitle: "Handling Exceptions within a Workspace" +description: "Information regarding handling exceptions at different levels within a workspace." +weight: 100 +--- + +# {{% param title %}} + +## Summary + +Exceptions within a workspace can be handled at the following levels: + +- The [block level][] (Highest Priority) +- The [workspace level][] +- The [flow level][] (Lowest Priority) + +A single [Handle Workspace Exception][] block may be placed on a [workspace][] to handle any exceptions that are not handled at the [block level][]. + +For more information, see [Handling Exceptions][]. + +## Remarks + +### Known Limitations + +#### Handle Workspace Exception block can only be used once per execution of a Workspace + +The [Handle Workspace Exception][] block will only handle the first unhandled exception within its workspace. Subsequent unhandled exceptions are passed to the next relevant exception handling block. In future this limitation may be removed. + +## See Also + +### Related Concepts + +- [Flows][] +- [Workspaces][] +- [Blocks][] +- [Executions][] +- [Exceptions][] + +### Related Blocks + +- [Handle Workspace Exception][] + +### External Documentation + +None + +[Handle Workspace Exception]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleWorkspace.HandleWorkspaceException.MainDoc" >}} + +[Blocks]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.MainDoc" >}} + +[Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.MainDoc" >}} +[Handling Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.HandlingExceptions.MainDoc" >}} +[block level]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.HandlingExceptions.BlockLevel" >}} +[flow level]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.HandlingExceptions.FlowLevel" >}} +[workspace level]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.HandlingExceptions.WorkspaceLevel" >}} + +[Executions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Executions.MainDoc" >}} +[flow execution]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Executions.WhatIsAnExecution.MainDoc" >}} + +[Flows]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Flows.MainDoc" >}} + +[Workspaces]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Workspaces.MainDoc" >}} +[workspace]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Workspaces.WhatIsAWorkspace.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Concepts/fundamentals/workspaces/what-is-a-workspace.md b/content/en/docs/2024.11/Reference/Concepts/fundamentals/workspaces/what-is-a-workspace.md new file mode 100644 index 000000000..9cc71a32a --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/fundamentals/workspaces/what-is-a-workspace.md @@ -0,0 +1,176 @@ +--- +title: "What is a Workspace?" +linkTitle: "What is a Workspace?" +description: "Information regarding the anatomy of a workspace, nested workspaces, variable scope, and handling exceptions within a workspace." +weight: 1 +--- + +# {{% param title %}} + +## Summary + +A workspace is used to group logic and actions within a [flow][], in order to reduce the complexity and make the flow easier to maintain. + +## Anatomy of a Workspace + +### Top-Level Workspace + +A flow can only contain one Top-Level Workspace, which acts as the entry point for the [flow execution][]. + +{{< figure src="/images/top-level-workspace-activity.svg" title="Example Top-Level Workspace" >}} + +* Start Flow block + * Identifies where the [flow execution][] will start + * Automatically created when the flow is created + * Cannot be deleted + * See [Start Flow][] block +* Action blocks + * Performs a specific action + * Icon on block indicates the nature of the action + * See [Blocks][Reference Blocks] +* Decision block + * Causes the [flow execution][] to branch, dependent on a condition + * Icon on block indicates type of condition causing branching + * See [Decision Blocks][Decision Blocks] +* Workspace blocks + * Contains grouped flow logic + * The turndown on the top-right of the icon indicates it contains a workspace, which can be opened by double-clicking the icon + * See [Workspace][Workspace Block] block +* End Flow block + * Ends the [flow execution][] + * Automatically created when the flow is created + * See [End Flow][] block +* Handle Flow Exception block + * Handles [flow level exceptions][flow level], thrown during the [flow execution][] + * Automatically created when the flow is created + * The turndown on the top-right of the icon indicates it contains a workspace, which can be opened by double-clicking the icon + * Cannot be deleted + * See [Handle Flow Exception][] block +* Flow Variable Store + * This is deprecated in favour of the [Variables Grid][] + * The [Variables Grid][] can be opened by double-clicking the icon, the scope will be set to `Defined (Selected Workspace)` + * Cannot be deleted +* Workspace + * The Top-Level Workspace within the flow + * Canvas on which blocks are placed and connected to create the flow logic + +{{% alert title="Note" %}} +The flow should be ended with an {{< ahref path="Cortex.Reference.Blocks.Flows.EndFlow.EndFlow.MainDoc" title="End Flow" >}} block, but it can also be ended using an {{< ahref path="Cortex.Reference.Blocks.Workspaces.EndWorkspace.EndWorkspace.MainDoc" title="End Workspace" >}} block on the [Top-Level Workspace]({{< ref "#top-level-workspace" >}}). +{{% /alert %}} + +### Other Workspaces + +A flow can contain any number of other workspaces that are not the Top-Level Workspace, these act as a means to grouping logic and actions to reduce the complexity and make the flow easier to maintain. + +{{< figure src="/images/nested-workspace.svg" title="Example Workspace" >}} + +* Start Workspace block + * Identifies where the [flow execution][] will start when the workspace is executed + * Automatically created when the workspace is created + * Cannot be deleted + * See [Start Workspace][] block +* Action blocks + * Performs a specific action + * Icon on block indicates the nature of the action + * See [Blocks][Reference Blocks] +* End Workspace block + * Ends the execution of the workspace + * Automatically created when the workspace is created + * See [End Workspace][] block +* End Flow block + * Ends the [flow execution][] + * See [End Flow][] block +* Handle Workspace Exception block + * Handles [workspace level exceptions][], thrown during the [flow execution][] + * See [Handle Workspace Exception][] block +* Workspace Variable Store + * This is deprecated in favour of the [Variables Grid][] + * The [Variables Grid][] can be opened by double-clicking the icon, the scope will be set to `Defined (Selected Workspace)` + * Cannot be deleted +* Workspace + * A nested workspace within the flow + * Canvas on which blocks are placed and connected to create the workspace logic + +## Nested Workspaces + +All the logic of a flow can exist on the [Top-Level Workspace][], however, this can quickly become difficult to maintain and understand as the numbers of blocks increase. Blocks can be grouped into workspaces in order to reduce the complexity and make the flow easier to maintain. + +A [Workspace][Workspace Block] block can opened by double clicking it, showing its workspace canvas and the logic inside; this could include blocks for executing specific functions or other workspaces to help separate the logic of the flow further. + +When an [End Workspace][] block is executed, the [flow execution][] returns to the parent workspace. However, when an [End Flow][] block is executed the [flow execution][] will end. + +A nested workspace has access to any variables defined within its [scope][], or any direct ancestors [scope][]. + +## Exceptions within a Workspace + +Workspaces support hierarchical exception handling at any level within the workspace. + +Exceptions can be handled: + +* At the [block][] level; for further information, see [Handling Exceptions within a Block][] +* At the workspace level; for further information, see [Handling Exceptions within a Workspace][] + +A [Top-Level Workspace][] can also handle exceptions at the [flow][] level; for further information, see [Handling Exceptions within a Flow][] + +## Remarks + +### Known Limitations + +#### Cannot have a Handle Workspace Exception block on the flow's Top-Level Workspace + +Currently, it is not possible to have a [Handle Workspace Exception][] block on the [Top-Level Workspace][] of a flow. In future this limitation may be removed. + +## See Also + +### Related Concepts + +* [Flows][] +* [Blocks][] +* [Executions][] +* [Exceptions][] + +### Related Blocks + +* [Start Flow][] +* [End Flow][] +* [Handle Flow Exception][] +* [Start Workspace][] +* [End Workspace][] +* [Handle Workspace Exception][] +* [Workspace][Workspace Block] + +### External Documentation + +None + +[Top-Level Workspace]: {{< ref "#top-level-workspace" >}} + +[Reference Blocks]: {{< url path="Cortex.Reference.Blocks.MainDoc" >}} +[Decision Blocks]: {{< url path="Cortex.Reference.Blocks.Decisions.MainDoc" >}} +[Handle Flow Exception]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleFlow.HandleFlowException.MainDoc" >}} +[Handle Workspace Exception]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleWorkspace.HandleWorkspaceException.MainDoc" >}} +[Start Flow]: {{< url path="Cortex.Reference.Blocks.Flows.StartFlow.StartFlow.MainDoc" >}} +[End Flow]: {{< url path="Cortex.Reference.Blocks.Flows.EndFlow.EndFlow.MainDoc" >}} +[Workspace Block]: {{< url path="Cortex.Reference.Blocks.Workspaces.Workspace.Workspace.MainDoc" >}} +[Start Workspace]: {{< url path="Cortex.Reference.Blocks.Workspaces.StartWorkspace.StartWorkspace.MainDoc" >}} +[End Workspace]: {{< url path="Cortex.Reference.Blocks.Workspaces.EndWorkspace.EndWorkspace.MainDoc" >}} + +[Blocks]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.MainDoc" >}} +[block]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.WhatIsABlock.MainDoc" >}} +[Handling Exceptions within a Block]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.HandlingExceptionsWithinABlock.MainDoc" >}} + +[Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.MainDoc" >}} +[workspace level exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.HandlingExceptions.WorkspaceLevel" >}} + +[Executions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Executions.MainDoc" >}} + +[Flows]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Flows.MainDoc" >}} +[flow]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Flows.WhatIsAFlow.MainDoc" >}} +[Handling Exceptions within a Flow]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Flows.HandlingExceptionsWithinAFlow.MainDoc" >}} +[flow execution]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Executions.WhatIsAnExecution.MainDoc" >}} +[flow level]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.HandlingExceptions.FlowLevel" >}} + +[scope]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.VariableScopes.MainDoc" >}} +[Handling Exceptions within a Workspace]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Workspaces.HandlingExceptionsWithinAWorkspace.MainDoc" >}} + +[Variables Grid]: {{< url path="Cortex.Guides.Studio.SouthPanel.VariablesGrid" >}} diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/_index.md b/content/en/docs/2024.11/Reference/Concepts/working-with/_index.md new file mode 100644 index 000000000..4a1c3132c --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/_index.md @@ -0,0 +1,8 @@ +--- +title: "Working With..." +linkTitle: "Working With..." +description: "This section includes all reference documentation for concepts required to use {{% ctx %}} Innovation." +weight: 2 +--- + + diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/collections/_index.md b/content/en/docs/2024.11/Reference/Concepts/working-with/collections/_index.md new file mode 100644 index 000000000..3a5989e7f --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/collections/_index.md @@ -0,0 +1,5 @@ +--- +title: "Collections" +linkTitle: "Collections" +description: "Information related to working with collections such as Lists, Dictionaries and Structures." +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/collections/indexes.md b/content/en/docs/2024.11/Reference/Concepts/working-with/collections/indexes.md new file mode 100644 index 000000000..f8f540589 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/collections/indexes.md @@ -0,0 +1,50 @@ +--- +title: "Indexes" +linkTitle: "Indexes" +description: "Information related to working with Indexes." +--- + +# {{% param title %}} + +{{< workinprogress >}} + +## Summary + +TODO: + +- Overview/summary +- What is an Index? +- How are they accessed? +- Indexes are zero based +- Difference between occurrence and indexes + +## Accessing an item using Indexes + +[Indexes][] can be used in the [Expression Editor][] to access items in a Collection. + +## Remarks + +### Known Limitations + +TODO + +## See Also + +### Related Concepts + +TODO + +### Related Data Types + +TODO + +### Related Blocks + +TODO + +### External Documentation + +TODO + +[Expression Editor]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[Indexes]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.IndexExpressions" >}} diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/collections/items.md b/content/en/docs/2024.11/Reference/Concepts/working-with/collections/items.md new file mode 100644 index 000000000..816bde126 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/collections/items.md @@ -0,0 +1,46 @@ +--- +title: "Items" +linkTitle: "Items" +description: "Information related to working with Items." +weight: 100 +--- + +# {{% param title %}} + +{{< workinprogress >}} + +## Summary + +TODO: + +- Overview/summary +- What is an Item? +- How are they accessed? + - Link to Indexes + - Link to Keys +- If you are using C# syntax, then the equality is done using reference equality for reference types, and value equality for value types +- If you are using List of Dictionary blocks, then the equality is done using reference equality for reference types and falls back to value equality if no reference was found, and value equality for value types + +## Remarks + +### Known Limitations + +None + +## See Also + +### Related Concepts + +TODO + +### Related Data Types + +TODO + +### Related Blocks + +TODO + +### External Documentation + +TODO diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/collections/keys.md b/content/en/docs/2024.11/Reference/Concepts/working-with/collections/keys.md new file mode 100644 index 000000000..7361f5a06 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/collections/keys.md @@ -0,0 +1,57 @@ +--- +title: "Keys" +linkTitle: "Keys" +description: "Information related to working with Keys." +--- + +# {{% param title %}} + +{{< workinprogress >}} + +## Summary + +TODO: + +- Overview/summary +- What is a Key? +- How are they accessed? +- The type of the Key depends on the data type +- Keys are unique +- Keys cannot be null +- If you are using C# syntax, then the equality is done using reference equality for reference types, and value equality for value types +- If you are using Dictionary blocks, then the equality is done using reference equality for reference types and falls back to value equality if no reference was found, and value equality for value types + +## Accessing an item using Keys + +[Keys][] can be used in the [Expression Editor][] to access items in a Collection. + +## Remarks + +### Known Limitations + +#### Complex Keys do not show sho correctly in the Variable Details Viewer + +Currently, if a Dictionary is shown in the Variable Details Viewer and contains Complex Data types as its keys, the data within the variable will not be displayed correctly. + +In the future this limitation may be removed. + +## See Also + +### Related Concepts + +TODO + +### Related Data Types + +TODO + +### Related Blocks + +TODO + +### External Documentation + +TODO + +[Expression Editor]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[Keys]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.IndexExpressions" >}} diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/collections/occurrences.md b/content/en/docs/2024.11/Reference/Concepts/working-with/collections/occurrences.md new file mode 100644 index 000000000..ceec95a19 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/collections/occurrences.md @@ -0,0 +1,66 @@ +--- +title: "Occurrences" +linkTitle: "Occurrences" +description: "Information related to working with Occurrences." +--- + +# {{% param title %}} + +## Summary + +TODO + +- Summary +- What is an Occurrence? +- How are they accessed? + - Positive or Negative int properties on blocks that operate on single items +- Difference between occurrence and indexes +- specified occurrence + +## Positive Occurrences + +TODO: + +- Get First, Second, Third, Nth + +## Negative Occurrences + +TODO: + +- Get Last, Second from Last, Third from Last, Nth from Last + +## Remarks + +### Occurrence Not Present + +TODO: + +Blocks will either throw an exception if the occurrence is not present (e.g. OccurrenceNotPresentException), or they will handle the occurrence not being present either by performing no operation or by returning a predetermined value. + +For example: + +- Get Index Of Item With Value (returns predetermined value) +- Remove Item With Value (no operation performed) +- Get Item With Key (throws OccurrenceNotPresentException) + +### Known Limitations + +None + +## See Also + +### Related Concepts + +TODO + +### Related Data Types + +TODO + +### Related Blocks + +TODO + +### External Documentation + +TODO diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/collections/what-is-a-collection.md b/content/en/docs/2024.11/Reference/Concepts/working-with/collections/what-is-a-collection.md new file mode 100644 index 000000000..99be3b3b1 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/collections/what-is-a-collection.md @@ -0,0 +1,125 @@ +--- +title: "What is a Collection?" +linkTitle: "What is a Collection?" +description: "Information regarding what a collection is, and the different types of collections." +weight: 1 +--- + +# {{% param title %}} + +{{< workinprogress >}} + +## Summary + +TODO + +## Types of Collections + +### Dictionaries + +TODO: + +- Talk about typed dictionaries (TKey, TItem) +- Talk about heterogenous vs homogenous dictionaries (fix single data type vs multiple data types links in all dictionary blocks) +- Talk about keys, uniqueness and equality (link to Keys page) +- Talk about complex keys (link to Keys page) +- Items can be accessed as indexes +- Link to Data Type +- Creating a Dictionary + +#### Accessing Items + +##### Keys + +### Structures + +TODO: + +- Structures are IDictionary<string, object> underlying (how does this interact with blocks?) + - Talk about {} and dynamic vs object +- Talk about keys, uniqueness and equality (link to Keys page) +- Items can be accessed as indexes or properties +- Link to Data Type +- Creating a Structure + +#### Accessing Items + +##### Properties + +##### Keys + +### Lists + +TODO: + +- Talk about typed dictionaries (TItem) +- Talk about [] and dynamic vs object +- Talk about typed lists +- Talk about heterogenous vs homogenous lists (fix single data type vs multiple data types links in all list blocks) +- Items can be accessed as indexes +- Link to Data Type +- Creating a List + +#### Accessing Items + +##### Indexes + +### Queues + +TODO: + +- Talk about first-in-first-out +- Talk about priority and order items in a queue +- Talk about typed queues +- Talk about how items can be accessed (e.g. dequeue/peek or get list of items) +- Link to Data Type +- Creating a queue + +### Data Storage Collection + +TODO: + +- Talk about persistence +- Talk about about heterogenous property (takes any data type and can not be restricted) +- Talk about keys and uniqueness of keys (link to keys page) +- Items can only be accessed via key +- Mention high availability? +- Mention api access? + +## Arrays vs Lists + +### Differences + +### When To Use Arrays + +### When To Use Lists + +- TODO: Some info on when to use array vs list - https://www.educba.com/c-sharp-list-vs-array/ + +## Remarks + +### Known Limitations + +#### Complex Keys do not show sho correctly in the Variable Details Viewer + +Currently, if a Dictionary is shown in the Variable Details Viewer and contains Complex Data types as its keys, the data within the variable will not be displayed correctly. + +In the future this limitation may be removed. + +## See Also + +### Related Concepts + +TODO + +### Related Data Types + +TODO + +### Related Blocks + +TODO + +### External Documentation + +TODO diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/concurrency/_index.md b/content/en/docs/2024.11/Reference/Concepts/working-with/concurrency/_index.md new file mode 100644 index 000000000..32e0a1b80 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/concurrency/_index.md @@ -0,0 +1,5 @@ +--- +title: "Concurrency" +linkTitle: "Concurrency" +description: "Information related to working with concurrency methods such as Semaphores." +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/concurrency/semaphores/_index.md b/content/en/docs/2024.11/Reference/Concepts/working-with/concurrency/semaphores/_index.md new file mode 100644 index 000000000..c28a10b61 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/concurrency/semaphores/_index.md @@ -0,0 +1,5 @@ +--- +title: "Semaphores" +linkTitle: "Semaphores" +description: "Information related to working with Semaphores." +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/concurrency/semaphores/what-is-a-semaphore.md b/content/en/docs/2024.11/Reference/Concepts/working-with/concurrency/semaphores/what-is-a-semaphore.md new file mode 100644 index 000000000..872e904ab --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/concurrency/semaphores/what-is-a-semaphore.md @@ -0,0 +1,125 @@ +--- +title: "What is a Semaphore?" +linkTitle: "What is a Semaphore?" +description: "Information regarding what a semaphore is." +weight: 1 +--- + +# {{% param title %}} + +{{< workinprogress >}} + +## Summary + +A semaphore is a mechanism that limits the number of concurrent executions that can be executing a block or workspace, and can be enabled using the [semaphore property][SemaphoreProperty]. + +The [semaphore property][SemaphoreProperty] is an [advanced property][AdvancedProperties] added to most blocks to allow any part of a flow to be concurrency limited. The [semaphore property][SemaphoreProperty] has a [Scope][] that defines the area in which the semaphore will operate, a [Name][] to identify the semaphore, a [ConcurrencyLimit][] that defines the maximum number of concurrent executions that can enter the semaphore at once and a [Queue][] property that defines whether the execution should [queue][queuing semaphore] or [not queue][non-queuing semaphore] for the semaphore. + +## Anatomy of a Semaphore + +TODO + +### Non-Queuing Semaphore + +A [Non-Queuing Semaphore][] refers to a semaphore where executions do not queue when attempting to acquire a semaphore that has reached its concurrency limit. Instead, it throws a [SemaphoreCouldNotBeAcquiredException][ConcurrencyLimitReached] with the [Queued][] property set to `false` to indicate that it did not queue. + +### Queuing Semaphore + +A [Queuing Semaphore][] refers to a semaphore where executions queue when attempting to acquire a semaphore that has reached its concurrency limit. It will join the queue with the [Priority][] specified in the [Queue][] property and wait to enter the semaphore. When it has reached the front of the queue and there is space inside, it will be removed from the queue and enter the semaphore. The queue orders items by priority, preserving first-in-first-out behaviour between items with the same priority. The item with the lowest priority will be dequeued first. + +If an execution spends more time in the queue than the [QueueTimeout][] specified in the [Queue][] property, it will exit the queue and throw a [SemaphoreCouldNotBeAcquiredException][QueueTimeoutReached] with the [Queued][] property set to `true` to indicate that it attempted to queue. + +## Remarks + +### Automatic Management + +The semaphores are managed automatically, without the need to define and manage the semaphores separately. When a block attempts to acquire a semaphore that does not exist, the semaphore will automatically be created and configured with the defined [ConcurrencyLimit][]. When the last execution in a semaphore is released (last execution exits the semaphore or is stopped from executing while inside), the semaphore is automatically deleted. + +### Multiple Concurrency Limits + +If a block tries to use a semaphore that already exists (using the same [Scope][] and same [Name][]) but specifies a different [ConcurrencyLimit][], the semaphore will continue respecting the [ConcurrencyLimit][] of when it was created. The block will respect the [ConcurrencyLimit][] already set until the semaphore is emptied and is automatically deleted. The semaphore is then able to be recreated with the new [ConcurrencyLimit][]. + +### Preventing Deadlocks + +Deadlocks in flows can occur when multiple executions have acquired different semaphores, and then each execution wants to acquire another semaphore that is being used by another execution, which in turn is waiting for first execution to release its semaphore. E.g. + +``` +There exists two semaphores: + - Semaphore A with a ConcurrencyLimit of 1 and a queue + - Semaphore B with a ConcurrencyLimit of 1 and a queue + +There exists two executions: + - Execution A acquires Semaphore A + - Execution B acquires Semaphore B + - Execution A tries to acquire Semaphore B and joins the queue + - Execution B tries to acquire Semaphore A and joins the queue + + Both Execution A and Execution B are deadlocked. +``` + +In this example, Execution A can't proceed as it's waiting for the semaphore that Execution B is using; which in turn is waiting for the semaphore that Execution A is using. + +The best way to avoid these deadlocks is to design your flows to avoid them happening in the first place. In the example above, if both executions will need both semaphores to operate, a change that could be made would be to combine both semaphores into one. + +Another way to mitigate the problem would be to use the [QueueTimeout][] property when defining the [QueueSettings][] for each semaphore. Setting the [QueueTimeout][] to a duration reasonably higher than the expected execution time of the operations inside of the semaphore would allow the execution to throw if it has been waiting too long, likely due to a deadlock having occurred. The [SemaphoreCouldNotBeAcquiredException][QueueTimeoutReached] thrown could then be caught to allow the execution to release its semaphores and try again. In the example above, if Semaphore A had a [QueueTimeout][], Execution B timeouts out as it waits to acquire Semaphore A and releases Semaphore B. Execution A then acquires Semaphore B. Execution B retries to acquire Semaphore B and joins the queue. Execution A then finishes its operations, releasing both semaphores and allows Execution B to complete its operations as well. + +### Known Limitations + +None + +## See Also + +### Related Concepts + +None + +### Related Data Types + +- [QueueSettings][] +- [ScopeDefinition][ScopeDatatype] +- [SemaphoreSettings][] + +### Related Blocks + +- [All Blocks][] + +Except: + +- [End Flow][] +- [End Workspace][] +- [Handle Flow Exception][] +- [Start Flow][] +- [Wait For Duration][] + +### External Documentation + +None + +[Queuing Semaphore]: {{< ref "#queuing-semaphore" >}} +[Non-Queuing Semaphore]: {{< ref "#non-queuing-semaphore" >}} + +[ConcurrencyLimitReached]: {{< url path="Cortex.Reference.Exceptions.Concurrency.Semaphores.SemaphoreCouldNotBeAcquiredException.ConcurrencyLimitReached" >}} +[QueueTimeoutReached]: {{< url path="Cortex.Reference.Exceptions.Concurrency.Semaphores.SemaphoreCouldNotBeAcquiredException.QueueTimeoutReached" >}} +[Queued]: {{< url path="Cortex.Reference.Exceptions.Concurrency.Semaphores.SemaphoreCouldNotBeAcquiredException.Queued" >}} + +[SemaphoreProperty]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.CommonProperties.SemaphoreProperty" >}} +[AdvancedProperties]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} + +[SemaphoreSettings]: {{< url path="Cortex.Reference.DataTypes.Concurrency.Semaphores.SemaphoreSettings.MainDoc" >}} +[QueueSettings]: {{< url path="Cortex.Reference.DataTypes.Concurrency.Semaphores.QueueSettings.MainDoc" >}} +[Priority]: {{< url path="Cortex.Reference.DataTypes.Concurrency.Semaphores.QueueSettings.Priority" >}} +[QueueTimeout]: {{< url path="Cortex.Reference.DataTypes.Concurrency.Semaphores.QueueSettings.QueueTimeout" >}} + +[Scope]: {{< url path="Cortex.Reference.DataTypes.Concurrency.Semaphores.SemaphoreSettings.Scope" >}} +[Name]: {{< url path="Cortex.Reference.DataTypes.Concurrency.Semaphores.SemaphoreSettings.Name" >}} +[ConcurrencyLimit]: {{< url path="Cortex.Reference.DataTypes.Concurrency.Semaphores.SemaphoreSettings.ConcurrencyLimit" >}} +[Queue]: {{< url path="Cortex.Reference.DataTypes.Concurrency.Semaphores.SemaphoreSettings.Queue" >}} + +[ScopeDatatype]: {{< url path = "Cortex.Reference.DataTypes.Scopes.ScopeDefinition.MainDoc">}} + +[All Blocks]: {{< url path="Cortex.Reference.Blocks.MainDoc" >}} +[End Flow]: {{< url path="Cortex.Reference.Blocks.Flows.EndFlow.EndFlow.MainDoc" >}} +[End Workspace]: {{< url path="Cortex.Reference.Blocks.Workspaces.EndWorkspace.EndWorkspace.MainDoc" >}} +[Handle Flow Exception]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleFlow.HandleFlowException.MainDoc" >}} +[Start Flow]: {{< url path="Cortex.Reference.Blocks.Flows.StartFlow.StartFlow.MainDoc" >}} +[Wait For Duration]: {{< url path="Cortex.Reference.Blocks.Schedules.WaitFor.WaitForDuration.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/culture/_index.md b/content/en/docs/2024.11/Reference/Concepts/working-with/culture/_index.md new file mode 100644 index 000000000..d2fe28bda --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/culture/_index.md @@ -0,0 +1,5 @@ +--- +title: "Culture" +linkTitle: "Culture" +description: "Information related to working with Culture." +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/culture/current-culture.md b/content/en/docs/2024.11/Reference/Concepts/working-with/culture/current-culture.md new file mode 100644 index 000000000..fe690e697 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/culture/current-culture.md @@ -0,0 +1,38 @@ +--- +title: "Current Culture" +linkTitle: "Current Culture" +description: "Information related to working with Current Culture." +weight: 200 +--- + +# {{% param title %}} + +{{< workinprogress >}} + +## Summary + +TODO: summary + +## Remarks + +### Known Limitations + +TODO + +## See Also + +### Related Concepts + +TODO + +### Related Data Types + +TODO + +### Related Blocks + +TODO + +### External Documentation + +TODO diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/culture/custom-cultures.md b/content/en/docs/2024.11/Reference/Concepts/working-with/culture/custom-cultures.md new file mode 100644 index 000000000..a15883e92 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/culture/custom-cultures.md @@ -0,0 +1,38 @@ +--- +title: "Custom Cultures" +linkTitle: "Custom Cultures" +description: "Information related to working with custom cultures." +weight: 400 +--- + +# {{% param title %}} + +{{< workinprogress >}} + +## Summary + +TODO: summary + +## Remarks + +### Known Limitations + +TODO + +## See Also + +### Related Concepts + +TODO + +### Related Data Types + +TODO + +### Related Blocks + +TODO + +### External Documentation + +TODO diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/culture/invariant-culture.md b/content/en/docs/2024.11/Reference/Concepts/working-with/culture/invariant-culture.md new file mode 100644 index 000000000..2883b3106 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/culture/invariant-culture.md @@ -0,0 +1,38 @@ +--- +title: "Invariant Culture" +linkTitle: "Invariant Culture" +description: "Information related to working with Invariant Culture." +weight: 100 +--- + +# {{% param title %}} + +{{< workinprogress >}} + +## Summary + +TODO: summary + +## Remarks + +### Known Limitations + +TODO + +## See Also + +### Related Concepts + +TODO + +### Related Data Types + +TODO + +### Related Blocks + +TODO + +### External Documentation + +TODO diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/culture/specific-cultures.md b/content/en/docs/2024.11/Reference/Concepts/working-with/culture/specific-cultures.md new file mode 100644 index 000000000..65bd9cb78 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/culture/specific-cultures.md @@ -0,0 +1,40 @@ +--- +title: "Specific Cultures" +linkTitle: "Specific Cultures" +description: "Information related to working with specific cultures." +weight: 300 +--- + +# {{% param title %}} + +{{< workinprogress >}} + +## Summary + +TODO: summary + +- For a list of cultures that can be returned on Windows systems see https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-lcid/a9eac961-e77d-41a6-90a5-ce1a8b0cdb9c under The Language table (`Language tag` defines the code required to create the culture) + +## Remarks + +### Known Limitations + +TODO + +## See Also + +### Related Concepts + +TODO + +### Related Data Types + +TODO + +### Related Blocks + +TODO + +### External Documentation + +TODO diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/culture/what-is-a-culture.md b/content/en/docs/2024.11/Reference/Concepts/working-with/culture/what-is-a-culture.md new file mode 100644 index 000000000..17a460f40 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/culture/what-is-a-culture.md @@ -0,0 +1,45 @@ +--- +title: "What is a Culture?" +linkTitle: "What is a Culture?" +description: "Information regarding what a culture is." +weight: 1 +--- + +# {{% param title %}} + +{{< workinprogress >}} + +## Summary + +TODO + +## Types of Culture + +TODO: + +- Link to Culture Pages (Invariant/Current/Specific/Custom) +- For a list of predefined cultures that can be returned on Windows systems see https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-lcid/a9eac961-e77d-41a6-90a5-ce1a8b0cdb9c + +## Remarks + +### Known Limitations + +TODO + +## See Also + +### Related Concepts + +TODO: Also need sections in working with text (casing, comparisons/equality, O/S settings), dates and time (formats, O/S settings), numbers (formats, O/S settings) etc specifically for how culture affects things - we can then cross link from here + +### Related Data Types + +TODO + +### Related Blocks + +TODO + +### External Documentation + +TODO diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/data-sources/_index.md b/content/en/docs/2024.11/Reference/Concepts/working-with/data-sources/_index.md new file mode 100644 index 000000000..388551e37 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/data-sources/_index.md @@ -0,0 +1,5 @@ +--- +title: "Data Sources" +linkTitle: "Data Sources" +description: "Information related to working with Data Sources." +--- diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/data-sources/supported-data-sources/_index.md b/content/en/docs/2024.11/Reference/Concepts/working-with/data-sources/supported-data-sources/_index.md new file mode 100644 index 000000000..4184695d9 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/data-sources/supported-data-sources/_index.md @@ -0,0 +1,5 @@ +--- +title: "Supported Data Sources" +linkTitle: "Supported Data Sources" +description: "Information regarding supported data sources." +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/data-sources/supported-data-sources/odbc.md b/content/en/docs/2024.11/Reference/Concepts/working-with/data-sources/supported-data-sources/odbc.md new file mode 100644 index 000000000..e22bafadb --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/data-sources/supported-data-sources/odbc.md @@ -0,0 +1,40 @@ +--- +title: "ODBC" +linkTitle: "ODBC" +description: "Information regarding ODBC as a data source." +--- + +# {{% param title %}} + +{{< workinprogress >}} + +## Summary + +TODO: + +- Summary +- Table or other format to display verified data sources (e.g. postgres, mysql, access, excel, oracle) and examples (link to connection strings) + +## Remarks + +### Known Limitations + +TODO + +## See Also + +### Related Concepts + +TODO + +### Related Data Types + +TODO + +### Related Blocks + +TODO + +### External Documentation + +TODO diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/data-sources/supported-data-sources/oracle.md b/content/en/docs/2024.11/Reference/Concepts/working-with/data-sources/supported-data-sources/oracle.md new file mode 100644 index 000000000..3d0f2d832 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/data-sources/supported-data-sources/oracle.md @@ -0,0 +1,40 @@ +--- +title: "Oracle" +linkTitle: "Oracle" +description: "Information regarding Oracle as a data source." +--- + +# {{% param title %}} + +{{< workinprogress >}} + +## Summary + +TODO: + +- Summary +- Table or other format to display verified data sources (e.g. postgres, mysql, access, excel, oracle) and examples (link to connection strings) + +## Remarks + +### Known Limitations + +TODO + +## See Also + +### Related Concepts + +TODO + +### Related Data Types + +TODO + +### Related Blocks + +TODO + +### External Documentation + +TODO diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/data-sources/supported-data-sources/sql-server.md b/content/en/docs/2024.11/Reference/Concepts/working-with/data-sources/supported-data-sources/sql-server.md new file mode 100644 index 000000000..2f06517a2 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/data-sources/supported-data-sources/sql-server.md @@ -0,0 +1,45 @@ +--- +title: "SQL Server" +linkTitle: "SQL Server" +description: "Information regarding SQL Server as a data source." +--- + +# {{% param title %}} + +{{< workinprogress >}} + +## Summary + +TODO: + +- Summary +- Table or other format to display verified data sources (SQL Server versions) and examples (link to connection strings) + +## Remarks + +TODO: + +- Connected as the user running the service or as a custom user (e.g. trusted user vs username and password) + - check that impersonation works with trusted when implemented + +### Known Limitations + +TODO + +## See Also + +### Related Concepts + +TODO + +### Related Data Types + +TODO + +### Related Blocks + +TODO + +### External Documentation + +TODO diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/data-sources/what-is-a-data-source.md b/content/en/docs/2024.11/Reference/Concepts/working-with/data-sources/what-is-a-data-source.md new file mode 100644 index 000000000..9cc1efc2d --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/data-sources/what-is-a-data-source.md @@ -0,0 +1,53 @@ +--- +title: "What is a Data Source?" +linkTitle: "What is a Data Source?" +description: "Information regarding what a data source is." +weight: 1 +--- + +# {{% param title %}} + +{{< workinprogress >}} + +## Summary + +TODO + +## Supported Data Sources + +TODO: See Supported Data Sources + +## Managing Connections to a Data Source + +TODO: + +- Connections are managed by the block +- See Working with Connections (connection life cycle, using a variable for connections over literal/expression) + +## Remarks + +### Known Limitations + +#### Limited Set of Supported Data Sources + +Currently, there are a limited set of Supported Data Sources. + +In the future this limitation may be removed. + +## See Also + +### Related Concepts + +TODO + +### Related Data Types + +TODO + +### Related Blocks + +TODO + +### External Documentation + +TODO diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/date-and-time/_index.md b/content/en/docs/2024.11/Reference/Concepts/working-with/date-and-time/_index.md new file mode 100644 index 000000000..a0bff010b --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/date-and-time/_index.md @@ -0,0 +1,5 @@ +--- +title: "Date and Time" +linkTitle: "Date and Time" +description: "Information related to working with Date and Time." +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/date-and-time/date-and-time-formatting.md b/content/en/docs/2024.11/Reference/Concepts/working-with/date-and-time/date-and-time-formatting.md new file mode 100644 index 000000000..2edcfc4d4 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/date-and-time/date-and-time-formatting.md @@ -0,0 +1,181 @@ +--- +title: "Date and Time Formatting" +linkTitle: "Date and Time Formatting" +description: "This page describes the concept of Date and Time Formatting, including Format Providers, Format Templates and Format Specifiers." +--- + +# {{% param title %}} + +## Overview + +TODO: + +* Overview/summary +* Common formats ISO8601, Invariant Culture + +## Format providers + +TODO: + +* what are they +* ways of creating + * CultureInfo.InvariantCulture + * CultureInfo.CurrentCulture + * new CultureInfo("") + * new CultureInfo("en-GB") + +or + +https://learn.microsoft.com/en-us/dotnet/standard/base-types/standard-date-and-time-format-strings#datetimeformatinfo-properties + +https://learn.microsoft.com/en-us/dotnet/api/system.globalization.datetimeformatinfo?view=net-5.0 + +### Invariant Culture + +TODO: + +* default format `"MM/dd/yyyy HH:mm:ss zzz"` +* rules https://learn.microsoft.com/en-us/dotnet/api/system.datetimeoffset.parse?view=net-5.0 + +### Current Culture + +TODO + +## Format Templates + +Format templates use characters called [format specifiers][] to define the text representation of [DateTimeOffset][] and [DateTime][] values. + +There are two types of format template: + +* [Standard Format Templates][] - use a single character [format specifier][format specifiers] +* [Custom Format Templates][] - use multiple character [format specifiers][] + +Both can be used to define how [DateTimeOffset][] and [DateTime][] values are converted to and from their text representation. + +TODO: + +* *How do they relate to format providers + +### Standard Format Templates + +A standard format template uses a single character [format specifier][format specifiers] to define the text representation of [DateTimeOffset][] and [DateTime][] values and can be used to define how [DateTimeOffset][] and [DateTime][] values are converted to and from their text representation. + +The following table shows all of the standard format templates. + +All examples are for a system configured with British [culture][] (i.e. `en-GB`), and use a local time of `2PM 1st of July 2022` with `1` hour UTC offset, honouring British Summer Time (BST). + +| Pattern | Format Specifier | DateTimeOffset Example | DateTime Example | Notes | +|-|-|-|-|-| +| Short Date Pattern | `d` | `2022-07-01T14:00:00.0000000+01:00` -> `1/7/2022` | TODO | See [short date ("d") format specifier] for further information | +| Short Time Pattern | `t` | `2022-07-01T14:00:00.0000000+01:00` -> `2:00 PM` | TODO | See [short time ("t") format specifier] for further information | +| Long Date Pattern | `D` | `2022-07-01T14:00:00.0000000+01:00` -> `5 April 2022` | TODO | See [long date ("D") format specifier] for further information | +| Long Time Pattern | `T` | `2022-07-01T14:00:00.0000000+01:00` -> `2:00:00 PM` | TODO | See [long time ("T") format specifier] for further information | +| Full Date/Time Pattern (Short Time) | `f` | `2022-07-01T14:00:00.0000000+01:00` -> `TODO` | TODO | See [full date short time ("f") format specifier] for further information | +| Full Date/Time Pattern (Long Time) | `F` | `2022-07-01T14:00:00.0000000+01:00` -> `TODO` | TODO | See [full date long time ("F") format specifier] for further information | +| General Date/Time Pattern (Short Time) | `g` | `2022-07-01T14:00:00.0000000+01:00` -> `TODO` | TODO | See [general date short time ("g") format specifier] for further information | +| General Date/Time Pattern (Long Time) | `G` | `2022-07-01T14:00:00.0000000+01:00` -> `TODO` | TODO | See [general date long time ("G") format specifier] for further information | +| Round-Trip Date/Time Pattern | `O`, `o` | `2022-07-01T14:00:00.0000000+01:00` -> `TODO` | TODO | See [round-trip ("O", "o") format specifier] for further information | +| RFC1123 Pattern | `R`, `r` | `2022-07-01T14:00:00.0000000+01:00` -> `TODO` | TODO | See [RFC1123 ("R", "r") format specifier] for further information | +| Sortable Date/Time Pattern | `s` | `2022-07-01T14:00:00.0000000+01:00` -> `TODO` | TODO | See [sortable ("s") format specifier] for further information | +| Universal Sortable Date/Time Pattern | `u` | `2022-07-01T14:00:00.0000000+01:00` -> `TODO` | TODO | See [universal sortable ("u") format specifier] for further information | +| Universal Full Date/Time Pattern | `U` | `2022-07-01T14:00:00.0000000+01:00` -> `TODO` | TODO | See [universal full ("U") format specifier] for further information | +| Month Day Pattern | `M`, `m` | `2022-07-01T14:00:00.0000000+01:00` -> `TODO` | TODO | See [month ("M", "m") format specifier] for further information | +| Year Month Pattern | `Y`, `y` | `2022-07-01T14:00:00.0000000+01:00` -> `TODO` | TODO | See [year month ("Y") format specifier] for further information | +| Unknown Pattern | Any other single character | N/A | N/A | Throws a [FormatException][] | + +#### Invariant Format Templates + +TODO: + +* Invariant format templates - + * In some cases, the standard format string serves as a convenient abbreviation for a longer custom format string that is invariant. Four standard format strings fall into this category: "O" (or "o"), "R" (or "r"), "s", and "u". These strings correspond to custom format strings defined by the invariant culture. They produce string representations of date and time values that are intended to be identical across cultures. The following table provides information on these four standard date and time format strings. + * TABLE 2 + * Standard format string Defined by DateTimeFormatInfo.InvariantInfo property Custom format string + * "O" or "o" None yyyy'-'MM'-'dd'T'HH':'mm':'ss'.'fffffffK + * "R" or "r" RFC1123Pattern ddd, dd MMM yyyy HH':'mm':'ss 'GMT' + * "s" SortableDateTimePattern yyyy'-'MM'-'dd'T'HH':'mm':'ss + * "u" UniversalSortableDateTimePattern yyyy'-'MM'-'dd HH':'mm':'ss'Z' + * https://learn.microsoft.com/en-us/dotnet/standard/base-types/standard-date-and-time-format-strings + +#### ISO 8601 Standard + +TODO: + +* round-trip "O", "o" and sortable "s" complies with ISO +* `yyyy-MM-ddTHH:mm:ss.fffffffK` for `DateTime` +* `yyyy-MM-ddTHH:mm:ss.fffffffzzz` for `DateTimeOffset` + +### Custom Format Templates + +TODO: + +* What are they - multiple character format specifiers +* Some examples +* https://learn.microsoft.com/en-us/dotnet/standard/base-types/custom-date-and-time-format-strings + +## Format specifiers + +TODO: + +* what are they +* Table of them +* Some of the commonly used format specifiers are: + * dd: The day of the month, from 01 through 31 + * MM: The month, from 01 through 12 + * yyyy: The year as a four-digit number + * HH: The hour, using a 24-hour clock from 00 to 23 + * hh: The hour, using a 12-hour clock from 01 to 12 + * mm: The minute, from 00 through 59 + * ss: The second, from 00 through 59 + * fff: The number of milliseconds + * tttt: The AM/PM designator + * The full set of allowed format specifiers are as per standard Microsoft .NET Custom Date and Time Format Strings. + +## Operating System Settings + +TODO: + +* How can these affect datetime formats etc. +* https://learn.microsoft.com/en-us/dotnet/standard/base-types/standard-date-and-time-format-strings#control-panel-settings + +[Standard Format Templates]: {{< ref "#standard-format-templates" >}} +[Custom Format Templates]: {{< ref "#custom-format-templates" >}} +[Format Specifiers]: {{< ref "#format-specifiers" >}} +[Operating System Settings]: {{< ref "#operating-system-settings" >}} + +[Culture]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Culture.MainDoc" >}} + +[short date ("d") format specifier]: {{< url path="MSDocs.DotNet.Api.System.DateTimeOffset.ShortDateFormat" >}} +[short time ("t") format specifier]: {{< url path="MSDocs.DotNet.Api.System.DateTimeOffset.ShortTimeFormat" >}} +[long date ("D") format specifier]: {{< url path="MSDocs.DotNet.Api.System.DateTimeOffset.LongDateFormat" >}} +[long time ("T") format specifier]: {{< url path="MSDocs.DotNet.Api.System.DateTimeOffset.LongTimeFormat" >}} +[full date short time ("f") format specifier]: {{< url path="MSDocs.DotNet.Api.System.DateTimeOffset.FullDateShortTimeFormat" >}} +[full date long time ("F") format specifier]: {{< url path="MSDocs.DotNet.Api.System.DateTimeOffset.FullDateLongTimeFormat" >}} +[general date short time ("g") format specifier]: {{< url path="MSDocs.DotNet.Api.System.DateTimeOffset.GeneralDateShortTimeFormat" >}} +[general date long time ("G") format specifier]: {{< url path="MSDocs.DotNet.Api.System.DateTimeOffset.GeneralDateLongTimeFormat" >}} +[round-trip ("O", "o") format specifier]: {{< url path="MSDocs.DotNet.Api.System.DateTimeOffset.RoundTripFormat" >}} +[RFC1123 ("R", "r") format specifier]: {{< url path="MSDocs.DotNet.Api.System.DateTimeOffset.RFC1123Format" >}} +[sortable ("s") format specifier]: {{< url path="MSDocs.DotNet.Api.System.DateTimeOffset.SortableFormat" >}} +[universal sortable ("u") format specifier]: {{< url path="MSDocs.DotNet.Api.System.DateTimeOffset.UniversalSortableFormat" >}} +[universal full ("U") format specifier]: {{< url path="MSDocs.DotNet.Api.System.DateTimeOffset.UniversalFullFormat" >}} +[month ("M", "m") format specifier]: {{< url path="MSDocs.DotNet.Api.System.DateTimeOffset.MonthDayFormat" >}} +[year month ("Y") format specifier]: {{< url path="MSDocs.DotNet.Api.System.DateTimeOffset.YearMonthFormat" >}} + +[FormatException]: {{< url path="MSDocs.DotNet.Api.System.FormatException" >}} + +[DateTime]: {{< url path="Cortex.Reference.DataTypes.DateAndTime.DateTime.MainDoc" >}} +[DateTimeOffset]: {{< url path="Cortex.Reference.DataTypes.DateAndTime.DateTimeOffset.MainDoc" >}} + +TODO Add concepts page for string/object formatting that links to: + +* https://learn.microsoft.com/en-us/dotnet/standard/base-types/composite-formatting +* https://learn.microsoft.com/en-us/dotnet/standard/base-types/best-practices-display-data + +TODO Add concepts page for formatting numbers that links to: + +* https://learn.microsoft.com/en-us/dotnet/standard/base-types/standard-numeric-format-strings +* https://learn.microsoft.com/en-us/dotnet/standard/base-types/custom-numeric-format-strings + +TODO: https://learn.microsoft.com/en-us/dotnet/standard/base-types/parsing-datetime + +TODO: Update examples for most common en-gb os formats diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/date-and-time/what-is-date-and-time.md b/content/en/docs/2024.11/Reference/Concepts/working-with/date-and-time/what-is-date-and-time.md new file mode 100644 index 000000000..01d8fae95 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/date-and-time/what-is-date-and-time.md @@ -0,0 +1,51 @@ +--- +title: "What is Date and Time?" +linkTitle: "What is Date and Time?" +description: "Information regarding what Date and Time is." +weight: 1 +--- + +# {{% param title %}} + +{{< workinprogress >}} + +## Summary + +TODO: + +- Date and Time are represented by different data types + - DateTime + - DateTimeOffset + - TimeSpan + - TimePeriod +- What is the difference between DateTime and DateTimeOffset? + - When should they be used +- What is the difference between TimeSpan and TimePeriod? + - When should they be used +- We don't deal with timezone issues within the blocks +- Offsets are handled within DateTimeOffset and can be dealt with using our blocks +- Useful link - https://learn.microsoft.com/en-us/dotnet/api/system.datetime?view=net-6.0 + +## Remarks + +### Known Limitations + +TODO + +## See Also + +### Related Concepts + +TODO + +### Related Data Types + +TODO + +### Related Blocks + +TODO + +### External Documentation + +TODO diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/email/_index.md b/content/en/docs/2024.11/Reference/Concepts/working-with/email/_index.md new file mode 100644 index 000000000..50e6b336a --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/email/_index.md @@ -0,0 +1,5 @@ +--- +title: "Email" +linkTitle: "Email" +description: "Information related to working with email." +--- diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/email/authentication.md b/content/en/docs/2024.11/Reference/Concepts/working-with/email/authentication.md new file mode 100644 index 000000000..ec6522f86 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/email/authentication.md @@ -0,0 +1,20 @@ +--- +title: "Authentication" +linkTitle: "Authentication" +description: "Information regarding authentication when working with email" +weight: 1 +--- + +# {{% param title %}} + +{{< workinprogress >}} + +## Overview + +### Setting up an app password for a Gmail account + +### Setting up a Gmail account for OAuth authentication + +### Setting up an Outlook account for OAuth authentication using client credentials + +### Setting up an Outlook account for OAuth authentication using certificate credentials diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/email/what-is-email.md b/content/en/docs/2024.11/Reference/Concepts/working-with/email/what-is-email.md new file mode 100644 index 000000000..cc8fedaaf --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/email/what-is-email.md @@ -0,0 +1,68 @@ +--- +title: "What is Email?" +linkTitle: "What is Email?" +description: "Information regarding what email is." +weight: 1 +--- + +# {{% param title %}} + +{{< workinprogress >}} + +## Summary + +TODO: + +- SMTP (Sending) + - Attachments (best practices): + - where should attachments be in relation to the server the flow is executing on + - should we link to the file path stuff (working with files and folders)? +- IMAP (Retreiving) + - Mailboxes + - Folders: + - Deleted? + - Emails: + - Attachments + - Status: + - Read + - Unread + - Priority + - Body Format + - Flagged +- SSL/TLS +- Authentication: + - Unauthenticated Servers + - SASL + - SMTP Server + - Gmail? + - OAuth: + - Gmail OAuth + - Microsoft365 OAuth + +## Managing Connections to a Mail Server + +TODO: + +## Remarks + +### Known Limitations + +TODO + +## See Also + +### Related Concepts + +TODO + +### Related Data Types + +TODO + +### Related Blocks + +TODO + +### External Documentation + +TODO diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/enums/_index.md b/content/en/docs/2024.11/Reference/Concepts/working-with/enums/_index.md new file mode 100644 index 000000000..21b0ab55f --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/enums/_index.md @@ -0,0 +1,5 @@ +--- +title: "Enums" +linkTitle: "Enums" +description: "Information related to working with enum data types such as DayOfWeek, DateTimeComponentType and SearchOptions." +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/enums/what-is-an-enum.md b/content/en/docs/2024.11/Reference/Concepts/working-with/enums/what-is-an-enum.md new file mode 100644 index 000000000..e81332ae9 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/enums/what-is-an-enum.md @@ -0,0 +1,60 @@ +--- +title: "What is an Enum?" +linkTitle: "What is an Enum?" +description: "Information regarding what an Enum is." +weight: 1 +--- + +# {{% param title %}} + +{{< workinprogress >}} + +## Summary + +TODO: + +- Anatomy of an Enum +- Enum literal editor +- Display in studio variable details viewer + - Default + - Overridden types + - Out of range ints cast (DayOfWeek)1000 +- Casting - dayofweek<->Int and unable to cast string - use parse + - Need to cast int to enum or enum to int if comparing +- Enum Types + - DateTimeComponentType + - SearchOptions + - Etc. +- Flagged enums + - Currently not possible to have combined values in the literal editor (is possible in expression) +- Enums names are not localised - e.g. DayOfWeek.Sunday cannot display Dimanche for french +- Links to microsoft docs + - https://learn.microsoft.com/en-us/dotnet/api/system.enum + - https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/builtin-types/enum + - probably not: + - https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/language-specification/enums + - https://learn.microsoft.com/en-us/dotnet/standard/design-guidelines/enum + +## Remarks + +### Known Limitations + +TODO + +## See Also + +### Related Concepts + +TODO + +### Related Data Types + +TODO + +### Related Blocks + +TODO + +### External Documentation + +TODO diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/files-and-folders/_index.md b/content/en/docs/2024.11/Reference/Concepts/working-with/files-and-folders/_index.md new file mode 100644 index 000000000..b315cfd49 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/files-and-folders/_index.md @@ -0,0 +1,5 @@ +--- +title: "Files and Folders" +linkTitle: "Files and Folders" +description: "Information related to working with Files and Folders." +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/files-and-folders/attributes.md b/content/en/docs/2024.11/Reference/Concepts/working-with/files-and-folders/attributes.md new file mode 100644 index 000000000..47b4415a0 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/files-and-folders/attributes.md @@ -0,0 +1,41 @@ +--- +title: "Attributes" +linkTitle: "Attributes" +description: "Information regarding file and folder attributes." +--- + +# {{% param title %}} + +{{< workinprogress >}} + +## Summary + +TODO: + +- Supported file and folder attributes and examples of using them +- https://learn.microsoft.com/en-us/dotnet/api/system.io.fileattributes?view=net-5.0 +- Currently there are no specific blocks for setting attributes of files and folders (setting can be done through c# or PowerShell) + +## Remarks + +### Known Limitations + +TODO + +## See Also + +### Related Concepts + +TODO + +### Related Data Types + +TODO + +### Related Blocks + +TODO + +### External Documentation + +TODO diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/files-and-folders/paths.md b/content/en/docs/2024.11/Reference/Concepts/working-with/files-and-folders/paths.md new file mode 100644 index 000000000..72b26c7bc --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/files-and-folders/paths.md @@ -0,0 +1,53 @@ +--- +title: "Paths" +linkTitle: "Paths" +description: "Information regarding file and folder paths." +--- + +# {{% param title %}} + +{{< workinprogress >}} + +## Summary + +TODO: + +- Supported file and folder path formats and examples of using them +- How we determine is a path is a folder or a file + - path\ = folder (path with terminating \ or /) + - path = folder (path not ending in extension) + - path.extension = file (path ending in extension) + - path.anotherpartofpath\ = folder (as it ends in a \ or /) +- Valid file and folder names + +Links: + +- https://learn.microsoft.com/en-us/dotnet/standard/io/file-path-formats +- https://learn.microsoft.com/en-us/windows/win32/fileio/naming-a-file +- https://learn.microsoft.com/en-us/windows/wsl/filesystems +- https://learn.microsoft.com/en-us/dotnet/standard/io/ +- https://learn.microsoft.com/en-us/dotnet/api/system.io.file?view=net-5.0 + +## Remarks + +### Known Limitations + +TODO + +## See Also + +### Related Concepts + +TODO + +### Related Data Types + +TODO + +### Related Blocks + +TODO + +### External Documentation + +TODO diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/files-and-folders/what-are-files-and-folders.md b/content/en/docs/2024.11/Reference/Concepts/working-with/files-and-folders/what-are-files-and-folders.md new file mode 100644 index 000000000..529943f59 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/files-and-folders/what-are-files-and-folders.md @@ -0,0 +1,46 @@ +--- +title: "What are Files and Folders?" +linkTitle: "What are Files and Folders?" +description: "Information regarding what files and folders are." +weight: 1 +--- + +# {{% param title %}} + +{{< workinprogress >}} + +## Summary + +TODO: + +- https://learn.microsoft.com/en-us/dotnet/standard/io/ +- https://learn.microsoft.com/en-us/dotnet/standard/io/file-path-formats +- https://learn.microsoft.com/en-us/dotnet/standard/io/handling-io-errors +- https://learn.microsoft.com/en-us/dotnet/standard/io/common-i-o-tasks +- list of common extensions +- list of common environment variables (`%PROGRAMDATA%` check this works) +- Best Practices (how to work with files, where to save them when working with files and folders in a flow) + +## Remarks + +### Known Limitations + +TODO + +## See Also + +### Related Concepts + +TODO + +### Related Data Types + +TODO + +### Related Blocks + +TODO + +### External Documentation + +TODO diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/loops/_index.md b/content/en/docs/2024.11/Reference/Concepts/working-with/loops/_index.md new file mode 100644 index 000000000..d70e9e9c4 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/loops/_index.md @@ -0,0 +1,5 @@ +--- +title: "Loops" +linkTitle: "Loops" +description: "Information related to working with loops, such as for and for each." +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/loops/what-is-a-loop.md b/content/en/docs/2024.11/Reference/Concepts/working-with/loops/what-is-a-loop.md new file mode 100644 index 000000000..5cbe0aec5 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/loops/what-is-a-loop.md @@ -0,0 +1,74 @@ +--- +title: "What is a Loop?" +linkTitle: "What is a Loop?" +description: "Information regarding what a loop is." +weight: 1 +--- + +# {{% param title %}} + +{{< workinprogress >}} + +## Summary + +TODO: + +- Introduce concept of loop + - Why are they used +- Types of Loops (pros and cons) + - For loop + - Can move forwards or backwards + - Can move by single or multiple increments + - Can modify a collection while iterating over it + - Have to manually manage the bounds of the loop + - Index can be adjusted to break a loop + - Decision blocks can be used to break a loop + - For each + - Cannot modify the collection during a for each loop (use a for loop if the collection needs to be modified during the loop) + - Decision blocks can be used to break a loop + - While + - No blocks, can be done using decision blocks looping back into the flow (order of decision block determines while or do while loop) + - Condition can be adjusted to break a loop early + - Decision blocks can be used to break a loop early + - Do while + - No blocks, can be done using decision blocks looping back into the flow (order of decision block determines while or do while loop) + - Condition can be adjusted to break a loop early + - Decision blocks can be used to break a loop early +- Nested loops + - Why they are used + - How nested loops affect performance +- Infinite loops + - Why they are bad, how to avoid + - for loop block protects against infinite loops + - for each loop block cannot have infinite loops as the collection cannot be modified + - while/ do while does not have any protection against infinite loops (must be managed within the flow) + +Links: + +- [Overview: the four different loops of the C# programming language][What is a loop] + +## Remarks + +### Known Limitations + +TODO + +## See Also + +### Related Concepts + +TODO + +### Related Data Types + +TODO + +### Related Blocks + +TODO + +### External Documentation + +TODO + +[What is a loop]: {{< url path="Kodify.WhatIsALoop" >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/numbers/_index.md b/content/en/docs/2024.11/Reference/Concepts/working-with/numbers/_index.md new file mode 100644 index 000000000..8626ac69a --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/numbers/_index.md @@ -0,0 +1,5 @@ +--- +title: "Numbers" +linkTitle: "Numbers" +description: "Information related to working with Numbers." +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/numbers/what-is-a-number.md b/content/en/docs/2024.11/Reference/Concepts/working-with/numbers/what-is-a-number.md new file mode 100644 index 000000000..606454bad --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/numbers/what-is-a-number.md @@ -0,0 +1,68 @@ +--- +title: "What is a Number?" +linkTitle: "What is a Number?" +description: "Information regarding what a number is." +weight: 1 +--- + +# {{% param title %}} + +{{< workinprogress >}} + +## Summary + +TODO: + +- What is a number +- Types of numbers + - Integer Types + - int, long, etc + - unsigned numbers + - suffixes + - Floating Point Types + - float, double, decimal + - suffixes +- Operators and Comparisons + - Order of operation + - Integer division will result in an integer, not a Floating Point number (e.g. `3 / 2` results in `1`) + - Underflow/Overflow conditions +- Converting numbers to text + - using blocks + - ToString() + - https://learn.microsoft.com/en-us/dotnet/standard/base-types/parsing-numeric +- Converting Integer Types to Floating Types (and reverse) + - Built in numeric conversion - https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/builtin-types/numeric-conversions + - https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/language-specification/conversions#1023-implicit-numeric-conversions + - Data loss when converting from Floating Types to Integer Types +- Numeric Formatting + - Format providers + - Invariant Culture + - Current Culture + - Format Templates + - Standard Format Templates - https://learn.microsoft.com/en-us/dotnet/standard/base-types/standard-numeric-format-strings + - Custom Format Templates - https://learn.microsoft.com/en-us/dotnet/standard/base-types/custom-numeric-format-strings + - Format specifiers + +## Remarks + +### Known Limitations + +TODO + +## See Also + +### Related Concepts + +TODO + +### Related Data Types + +TODO + +### Related Blocks + +TODO + +### External Documentation + +TODO diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/objects/_index.md b/content/en/docs/2024.11/Reference/Concepts/working-with/objects/_index.md new file mode 100644 index 000000000..f8665daf7 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/objects/_index.md @@ -0,0 +1,5 @@ +--- +title: "Objects" +linkTitle: "Objects" +description: "Information related to working with Objects." +--- diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/objects/object-casting.md b/content/en/docs/2024.11/Reference/Concepts/working-with/objects/object-casting.md new file mode 100644 index 000000000..589b2e011 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/objects/object-casting.md @@ -0,0 +1,50 @@ +--- +title: "Object Casting" +linkTitle: "Object Casting" +description: "Information regarding casting an object to different data types." +--- + +# {{% param title %}} + +{{< workinprogress >}} + +## Summary + +TODO + +## Implicit Cast + +TODO + +## Explicit Cast + +TODO + +## Object vs dynamic + +TODO + +## Remarks + +### Known Limitations + +TODO + +## See Also + +### Related Concepts + +TODO + +### Related Data Types + +TODO + +### Related Blocks + +TODO + +### External Documentation + +TODO + diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/objects/object-equality.md b/content/en/docs/2024.11/Reference/Concepts/working-with/objects/object-equality.md new file mode 100644 index 000000000..0e22d4aea --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/objects/object-equality.md @@ -0,0 +1,57 @@ +--- +title: "Object Equality" +linkTitle: "Object Equality" +description: "Information regarding object equality, and what defines two objects as equal." +--- + +# {{% param title %}} + +{{< workinprogress >}} + +## Summary + +TODO + +https://learn.microsoft.com/en-us/dotnet/csharp/programming-guide/statements-expressions-operators/equality-comparisons + +## Value Type vs Reference Type Equality + +TODO: + +### Value Type Equality + +TODO: notes about value equality and a worked through example + +### Reference Type Equality + +TODO: notes about reference equality and a worked through example + +## How {{% ctx %}} compares objects for equality + +TODO: notes about how cortex compares and a worked through example + +Notes:List and Dictionary equality is slightly different to normal equality as it will compare first based on reference and then fall back to value - compared to == .Equals .ReferenceEquals - blocks affected + +## Remarks + +### Known Limitations + +TODO + +## See Also + +### Related Concepts + +TODO + +### Related Data Types + +TODO + +### Related Blocks + +TODO + +### External Documentation + +TODO diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/objects/what-is-an-object.md b/content/en/docs/2024.11/Reference/Concepts/working-with/objects/what-is-an-object.md new file mode 100644 index 000000000..e58c95968 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/objects/what-is-an-object.md @@ -0,0 +1,44 @@ +--- +title: "What is an Object?" +linkTitle: "What is an Object?" +description: "Information regarding what an object is." +weight: 1 +--- + +# {{% param title %}} + +{{< workinprogress >}} + +## Summary + +TODO: + +- What is the difference between an object and a data type? + - Data Type is the definition, Object is an instance of that definition +- Explain Object Data Type, base foundation of classes + +## Remarks + +### Known Limitations + +TODO + +## See Also + +### Related Concepts + +TODO + +### Related Data Types + +TODO + +### Related Blocks + +TODO + +### External Documentation + +TODO + +[All Blocks]: {{< url path="Cortex.Reference.Blocks.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/scopes/_index.md b/content/en/docs/2024.11/Reference/Concepts/working-with/scopes/_index.md new file mode 100644 index 000000000..9a6db7afd --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/scopes/_index.md @@ -0,0 +1,5 @@ +--- +title: "Scopes" +linkTitle: "Scopes" +description: "Information related to working with Scopes." +--- diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/scopes/what-is-a-scope.md b/content/en/docs/2024.11/Reference/Concepts/working-with/scopes/what-is-a-scope.md new file mode 100644 index 000000000..22a853071 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/scopes/what-is-a-scope.md @@ -0,0 +1,38 @@ +--- +title: "What is a Scope?" +linkTitle: "What is a Scope?" +description: "Information regarding what a scope is." +weight: 1 +--- + +# {{% param title %}} + +{{< workinprogress >}} + +## Summary + +TODO: + +## Remarks + +### Known Limitations + +TODO + +## See Also + +### Related Concepts + +TODO + +### Related Data Types + +TODO + +### Related Blocks + +TODO + +### External Documentation + +TODO diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/tasks/_index.md b/content/en/docs/2024.11/Reference/Concepts/working-with/tasks/_index.md new file mode 100644 index 000000000..3db070199 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/tasks/_index.md @@ -0,0 +1,7 @@ +--- +title: "Tasks" +linkTitle: "Tasks" +description: "Information related to working with Tasks." +--- + +{{< workinprogress >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/text/_index.md b/content/en/docs/2024.11/Reference/Concepts/working-with/text/_index.md new file mode 100644 index 000000000..cd6689495 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/text/_index.md @@ -0,0 +1,5 @@ +--- +title: "Text" +linkTitle: "Text" +description: "Information related to working with Text." +--- diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/text/casing.md b/content/en/docs/2024.11/Reference/Concepts/working-with/text/casing.md new file mode 100644 index 000000000..9a3581df0 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/text/casing.md @@ -0,0 +1,128 @@ +--- +title: "Casing" +linkTitle: "Casing" +description: "Information regarding text casing." +--- + +# {{% param title %}} + +{{< workinprogress >}} + +## Summary + +TODO: + +- Best Practices + - Comparing strings - do not lower or upper pick a relevant culture or ignore case + +Links: + +- https://learn.microsoft.com/en-us/dotnet/core/extensions/performing-culture-insensitive-string-operations +- https://learn.microsoft.com/en-us/dotnet/standard/base-types/changing-case#compare-strings-of-mixed-case + +## Common types of text casing + +There are many different types of text casing. + +The table below lists some of the most common types of text casing: + +| Name | Example | Notes | +|-----------|----------------------------|-------------| +| lowercase | `"this is lowercase"` | All letters in all words are lower cased. | +| UPPERCASE | `"THIS IS UPPERCASE"` | All letters in all words are capitalized. | +| Title Case | `"This Is Title Case"` | First letter in all words is capitalized, all other letters are lower cased; except for words that are entirely upper cased, such as acronyms, which remain upper cased; spaces and punctuation are preserved. | +| camelCase | `"thisIsCamelCase"` | First letter in all words (except the first) is capitalized, all other letters are lower cased, and all spaces and punctuation are removed. | +| PascalCase | `"ThisIsCamelCase"` | First letter in all words is capitalized, all other letters are lower cased, and all spaces and punctuation are removed. | + +## Culture Info + +Culture Info specifies the culture-specific casing rules used to determine how the case of text is changed. + +The table below lists the most common supported culture info: + +| Name | Text Value | Description | +|----------|-----------------|-------------| +| Invariant Culture | CultureInfo.InvariantCulture | Used to compare text using culture-sensitive sort rules and the [Invariant Culture][]. Case of the texts is considered when comparing. | +| Current Culture | CultureInfo.CurrentCulture | Used to compare text using culture-sensitive sort rules and the [Current Culture][]. Case of the texts is considered when comparing. | + +In addition to [Invariant][Invariant Culture] and [Current Culture][], there are two other types of culture that can be used: + +- [Specific Cultures][] +- [Custom Cultures][] + +For more information about culture info, please see [CultureInfo][]. + +### Invariant Culture + +For Invariant Culture, the casing rules used to determine how the case of text is changed are not culture-sensitive. + +TODO: + +- Link to Working with Culture -> Invariant Culture +- When to use? If not sure what to choose? +- notes about invariant culture and a worked through example +- From https://learn.microsoft.com/en-us/dotnet/api/system.globalization.textinfo.toupper?view=net-6.0 + +If a security decision depends on a string comparison or a case-change operation, the application should use the InvariantCulture to ensure that the behavior is consistent regardless of the culture settings of the system. However, the invariant culture must be used only by processes that require culture-independent results, such as system services. Otherwise, it produces results that might be linguistically incorrect or culturally inappropriate. + +### Current Culture + +For Current Culture, the casing rules used to determine how the case of text is changed are culture-sensitive and based on the culture of the operating system the flow execution is running on. + +TODO: + +- Link to Working with Culture -> Current Culture +- When to use? If not sure what to choose? +- Best practices - all OSes in cluster should be installed with same OS culture and settings etc. - should also be time sync'd +- Notes about current culture and a worked through example + +### Specific Cultures + +TODO: + +- Talk about how there are a number of specific cultures, each with their own casing rules +- When to use? If not sure what to choose? +- Link to Working with Culture -> Specific Cultures +- For a list of cultures that can be returned on Windows systems see https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-lcid/a9eac961-e77d-41a6-90a5-ce1a8b0cdb9c under The Language table (`Language tag` defines the code required to create the culture) + +### Custom Cultures + +TODO: + +- Talk about how there can be custom cultures installed, each with their own casing rules +- When to use? If not sure what to choose? +- Link to Working with Culture -> Custom Cultures + +## Remarks + +### Known Limitations + +TODO + +## See Also + +### Related Concepts + +TODO + +### Related Data Types + +TODO + +### Related Blocks + +TODO: + +- Convert to Uppercase +- etc + +### External Documentation + +TODO + +[Current Culture]: {{< ref "#current-culture" >}} +[Invariant Culture]: {{< ref "#invariant-culture" >}} +[Specific Cultures]: {{< ref "#specific-cultures" >}} +[Custom Cultures]: {{< ref "#custom-cultures" >}} + +[CultureInfo]: {{< url path="MSDocs.DotNet.Api.System.Globalization.CultureInfo" >}} diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/text/converting-objects-to-text.md b/content/en/docs/2024.11/Reference/Concepts/working-with/text/converting-objects-to-text.md new file mode 100644 index 000000000..289cbf121 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/text/converting-objects-to-text.md @@ -0,0 +1,87 @@ +--- +title: "Converting Objects To Text" +linkTitle: "Converting Objects To Text" +description: "Information regarding converting objects to their text representation." +--- + +# {{% param title %}} + +{{< workinprogress >}} + +## Summary + +TODO + +### Using Blocks + +TODO: + +- Explain that blocks can be used - maybe with examples or link to examples within the block documentation + - Format Text With Value + - Format Text With Values + - Join Text + - Convert Date Time To Text + - Convert Object To Text - need to make it clear how this works - does tostring and if tostring returns class name does json serialisation + - Convert Object To Json - need to make it clear how this works - does json serialisation + +### Using Expressions + +#### ToString() + +TODO: + +- .ToString() - talk about that some objects will just return their name, text formatting format providers etc. +- Convert.ToString() +- Examples and where to find in Data Types documentation + +#### String interpolation + +See [Interpolated Strings][]. + +#### String.Format() + +TODO: String.Format + +## Remarks + +### Known Limitations + +#### Support for {{}} is Missing + +Using `{{VariableName}}` expression syntax to convert a [variable][] to its [String][] representation is currently not supported. + +It is possible to convert a [variable][] to its string representation within an [expression][] by using the `ToString()` [method][] (e.g. `($)VariableName.ToString()`) + +In future this limitation may be removed. + +[variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.WhatIsAVariable.MainDoc" >}} +[expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.Expressions" >}} +[method]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MethodExpressions" >}} +[Interpolated Strings]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.InterpolatedStrings" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +## See Also + +### Related Concepts + +TODO + +### Related Data Types + +TODO + +### Related Blocks + +TODO: + +- Format Text With Value +- Format Text With Values +- Join Text +- Convert Date Time To Text +- Convert Object To Text - need to make it clear how this works - does tostring and if tostring returns class name does json serialisation +- Convert Object To Json - need to make it clear how this works - does json serialisation + +### External Documentation + +TODO diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/text/empty-text-and-whitespace.md b/content/en/docs/2024.11/Reference/Concepts/working-with/text/empty-text-and-whitespace.md new file mode 100644 index 000000000..b96d91918 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/text/empty-text-and-whitespace.md @@ -0,0 +1,51 @@ +--- +title: "Empty Text and Whitespace" +linkTitle: "Empty Text and Whitespace" +description: "Information regarding empty text and whitespace." +--- + +# {{% param title %}} + +{{< workinprogress >}} + +## Summary + +TODO: + +- What is an Empty Text? +- What is Whitespace? +- Difference between empty text and whitespace + +## Empty Text + +TODO: + +- How to create an empty text - `""` or `String.Empty` + +## Whitespace + +https://learn.microsoft.com/en-us/dotnet/api/system.char.iswhitespace?view=net-5.0#System_Char_IsWhiteSpace_System_Char_ and textual representation \t \r \n etc. + +## Remarks + +### Known Limitations + +TODO + +## See Also + +### Related Concepts + +TODO + +### Related Data Types + +TODO + +### Related Blocks + +TODO + +### External Documentation + +TODO diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/text/encoding.md b/content/en/docs/2024.11/Reference/Concepts/working-with/text/encoding.md new file mode 100644 index 000000000..0c7b295a5 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/text/encoding.md @@ -0,0 +1,49 @@ +--- +title: "Encoding" +linkTitle: "Encoding" +description: "Information regarding text encoding." +--- + +# {{% param title %}} + +{{< workinprogress >}} + +## Summary + +TODO: + +- Available encodings +- How to define them/use them + - Different ways to specify encoding: + - Encoding encoding = Encoding.GetEncoding(20127); + - Encoding encoding = new ASCIIEncoding(); + - Encoding encoding = Encoding.ASCII; +- Talk about encode/decode text blocks including base64/url/hex/html/utf8/base64url + +Links: + +- https://learn.microsoft.com/en-us/dotnet/standard/base-types/character-encoding-introduction + +## Remarks + +### Known Limitations + +TODO + +## See Also + +### Related Concepts + +TODO + +### Related Data Types + +TODO + +### Related Blocks + +TODO + +### External Documentation + +TODO diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/text/equality.md b/content/en/docs/2024.11/Reference/Concepts/working-with/text/equality.md new file mode 100644 index 000000000..51142f784 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/text/equality.md @@ -0,0 +1,126 @@ +--- +title: "Equality" +linkTitle: "Equality" +description: "Information regarding text equality." +--- + +# {{% param title %}} + +{{< workinprogress >}} + +## Summary + +TODO: + +- Best Practices + - Use Ordinal to remove ambiguity and increase performance + - Comparing strings - do not lower or upper pick a relevant culture or ignore case + +Links: + +- https://learn.microsoft.com/en-us/dotnet/standard/base-types/best-practices-strings +- https://learn.microsoft.com/en-us/dotnet/standard/base-types/changing-case#compare-strings-of-mixed-case + +## Comparison Types + +Comparison Types specify the rules used to determine whether two pieces of text match. + +The table below lists the supported comparison types: + +| Name | Text Value | Numeric Value | Description | +|----------|------------|---------------|-------------| +| [Ordinal][] | StringComparison.Ordinal | 4 | Used to compare text using ordinal sort rules. Case of the texts is considered when comparing. | +| [Ordinal Ignore Case][] | StringComparison.OrdinalIgnoreCase | 5 | Used to compare text using ordinal sort rules. Case of the texts is ignored when comparing. | +| [Invariant Culture][] | StringComparison.InvariantCulture | 2 | Used to compare text using culture-sensitive sort rules and the invariant culture. Case of the texts is considered when comparing. | +| [Invariant Culture Ignore Case][] | StringComparison.InvariantCultureIgnoreCase | 3 | Used to compare text using culture-sensitive sort rules and the invariant culture. Case of the texts is ignored when comparing. | +| [Current Culture][] | StringComparison.CurrentCulture | 0 | Used to compare text using culture-sensitive sort rules and the current culture. Case of the texts is considered when comparing. | +| [Current Culture Ignore Case][] | StringComparison.CurrentCultureIgnoreCase | 1 | Used to compare text using culture-sensitive sort rules and the current culture. Case of the texts is ignored when comparing. | + +For more information about comparison types, please see [StringComparison][]. + +TODO: Consider moving sections below into the StringComparison Data Type documentation and removed from this page + +### Ordinal + +TODO: + +- When to use? If not sure what to choose? +- Ordinal sort rules +- notes about ordinal and a worked through example + +### Ordinal Ignore Case + +TODO: + +- When to use? If not sure what to choose? +- Link to Ordinal sort rules, only difference is that it doesn't consider casing when comparing characters +- notes about ordinal ignore case and a worked through example + +### Invariant Culture + +TODO: + +- When to use? If not sure what to choose? +- Link to Culture -> Invariant Culture +- Invariant Culture rules +- notes about invariant culture and a worked through example + +### Invariant Culture Ignore Case + +TODO: + +- When to use? If not sure what to choose? +- Link to Culture -> Invariant Culture +- Link to Invariant Culture sort rules, only difference is that it doesn't consider casing when comparing characters +- notes about invariant culture ignore case and a worked through example + +### Current Culture + +TODO: + +- When to use? If not sure what to choose? +- Link to Culture -> Current Culture +- Current Culture rules +- notes about current culture and a worked through example + +### Current Culture Ignore Case + +TODO: + +- When to use? If not sure what to choose? +- Link to Culture -> Current Culture +- Link to Current Culture sort rules, only difference is that it doesn't consider casing when comparing characters +- notes about current culture ignore case and a worked through example + +## Remarks + +### Known Limitations + +TODO + +## See Also + +### Related Concepts + +TODO + +### Related Data Types + +TODO + +### Related Blocks + +TODO + +### External Documentation + +TODO + +[Current Culture]: {{< ref "#current-culture" >}} +[Current Culture Ignore Case]: {{< ref "#current-culture-ignore-case" >}} +[Invariant Culture]: {{< ref "#invariant-culture" >}} +[Invariant Culture Ignore Case]: {{< ref "#invariant-culture-ignore-case" >}} +[Ordinal]: {{< ref "#ordinal" >}} +[Ordinal Ignore Case]: {{< ref "#ordinal-ignore-case" >}} + +[StringComparison]: {{< url path="MSDocs.DotNet.Api.System.StringComparison" >}} diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/text/formatting.md b/content/en/docs/2024.11/Reference/Concepts/working-with/text/formatting.md new file mode 100644 index 000000000..958199470 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/text/formatting.md @@ -0,0 +1,113 @@ +--- +title: "Formatting" +linkTitle: "Formatting" +description: "Information regarding text formatting." +--- + +# {{% param title %}} + +{{< workinprogress >}} + +## Summary + +TODO: + +- What formatting is +- How to format text + - Blocks + - Expression +- How does text formatting use DateTime Formatting and Number Formatting? + - Link to Working With -> Date and Time -> Date and Time Formatting + - Link to Working With -> Number -> Number Formatting + +## Using Blocks + +TODO: + +- Explain that blocks can be used - maybe with examples or link to examples within the block documentation + - Convert Object to Text + - Format Text with Value + - Format Text with Values + +## Using Expressions + +TODO: How to format using an expression + +### String Interpolation + +TODO: + +- mention that convert object to text is close to behaviour of string interpolation, but not everything is covered - e.g. no expression support or indexing - recommendation is to use string.interpolation inline as more powerful and saves block licensing + +## Format Providers + +TODO: + +- what are they +- ways of creating + - CultureInfo.InvariantCulture + - CultureInfo.CurrentCulture + - new CultureInfo("") + - new CultureInfo("en-GB") + +## Format Templates + +TODO: + +- Find C# link +- Talk about what a template is and how format parameters are used (e.g. `"{0}"`) +- curly brackets need to be escaped when using the $ and $@ prefixes + +## Format Specifiers + +TODO: + +- Add table of format specifiers + +- https://learn.microsoft.com/en-us/dotnet/api/system.string.format?view=net-6.0#Starting + +TODO: Control formatting + +- https://learn.microsoft.com/en-us/dotnet/api/system.string.format?view=net-6.0#control-formatting + +TODO: Control spacing + +- https://learn.microsoft.com/en-us/dotnet/api/system.string.format?view=net-6.0#control-spacing + +TODO: Control alignment + +- https://learn.microsoft.com/en-us/dotnet/api/system.string.format?view=net-6.0#control-alignment + +TODO: Composite formatting + +- https://learn.microsoft.com/en-us/dotnet/api/system.string.format?view=net-6.0#the-format-method-in-brief + +TODO: Format Item + +- https://learn.microsoft.com/en-us/dotnet/api/system.string.format?view=net-6.0#the-format-item + +TODO: Anything else relevant on formatting links above + +## Remarks + +### Known Limitations + +TODO + +## See Also + +### Related Concepts + +TODO + +### Related Data Types + +TODO + +### Related Blocks + +TODO + +### External Documentation + +TODO diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/text/pattern-matching-syntax.md b/content/en/docs/2024.11/Reference/Concepts/working-with/text/pattern-matching-syntax.md new file mode 100644 index 000000000..4902f3664 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/text/pattern-matching-syntax.md @@ -0,0 +1,48 @@ +--- +title: "Pattern Matching Syntax" +linkTitle: "Pattern Matching Syntax" +description: "Information regarding pattern matching syntax." +--- + +# {{% param title %}} + +{{< workinprogress >}} + +## Summary + +TODO + +- What is pattern matching? + - how is it different to contains or regex +- Pattern matching can only be used in blocks +- `*` is 0 or more +- `?` is 0 or 1 +- to use these as literals use `\\*` `\\?` +- Common pattern matching + - `**/*.ext` (Check that this works) + - Common file extensions to search for, how to search for them `*.txt`, `*.pdf` + - Link to Files and Folders for list of common extensions + +## Remarks + +### Known Limitations + +TODO + +## See Also + +### Related Concepts + +TODO + +### Related Data Types + +TODO + +### Related Blocks + +TODO + +### External Documentation + +TODO diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/text/regex-syntax.md b/content/en/docs/2024.11/Reference/Concepts/working-with/text/regex-syntax.md new file mode 100644 index 000000000..8e8caee71 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/text/regex-syntax.md @@ -0,0 +1,216 @@ +--- +title: "Regex Syntax" +linkTitle: "Regex Syntax" +description: "Information regarding .Net regex syntax." +--- + +# {{% param title %}} + +{{< workinprogress >}} + +## Summary + +TODO: + +- What is regex matching? + - how is it different to contains or pattern matching +- https://learn.microsoft.com/en-us/dotnet/standard/base-types/regular-expressions +- https://learn.microsoft.com/en-us/dotnet/standard/base-types/regular-expression-language-quick-reference +- Common regex expressions + - urls, emails, etc + - https://learn.microsoft.com/en-us/dotnet/standard/base-types/regular-expression-example-scanning-for-hrefs + - and subsequent links +- State that we specify a timeout to prevent dos attacks +- Talk about no current support for old g2 syntax - may add in future + +TODO: Options + +- https://learn.microsoft.com/en-us/dotnet/standard/base-types/regular-expression-options +- https://learn.microsoft.com/en-us/dotnet/standard/base-types/miscellaneous-constructs-in-regular-expressions + +Links: + +- Regex Best Practices - https://learn.microsoft.com/en-us/dotnet/standard/base-types/best-practices + +### Character Classes + +TODO: + +- Include information about any builtin snippets for each regex + +A character class matches any of a set of characters. Character classes include the language elements listed in the following table. + +| Syntax | Description | Pattern | Matches | +|---|---|---|---| +| `[characters]` | Matches any character found in characters. | `[oz]` | o in Cortex | +| `[^characters]` | Matches any character not found in characters. | `[^oz]` | C, r, t, e, x in Cortex | +| `[first-last]` | Matches any character in the range of characters from first to last. | `[A-C]` | C in Cortex | +| `.` | Wildcard. Matches any character except \n. | `C.r` | Cor in Cortex | +| `\p{category}` | Matches any character in a category of Unicode characters, specified by category. To see what you can use for category, please check the supported Unicode general categories and the supported named blocks. | `\p{Lu}` | C in Cortex | +| `\P{category}` | Matches any character not in a category of Unicode characters, specified by category. To see what you can use for category, please check the supported Unicode general categories, and the supported named blocks. | `\P{Lu}` | o, r, t, e, x in Cortex | +| `\w` | Matches any letter, decimal digit, or an underscore. | `\w` | C, o, r, t, e, x in Cortex ! | +| `\W` | Matches any character except a letter, decimal digit, or an underscore. | `\W` | ! in Cortex ! | +| `\s` | Matches any white-space character. | `\w\s` | x  in Cortex ! | +| `\S` | Matches any character except a white-space character. | `\s\S` |  ! in Cortex ! | +| `\d` | Matches any decimal digit. | `\d` | 7 in Cortex 7! | +| `\D` | Matches any character except a decimal digit. | `\D` | C, o, r, t, e, x,  , ! in Cortex 7! | + +https://learn.microsoft.com/en-us/dotnet/standard/base-types/character-classes-in-regular-expressions#SupportedUnicodeGeneralCategories +https://learn.microsoft.com/en-us/dotnet/standard/base-types/character-classes-in-regular-expressions#supported-named-blocks + +### Character Escapes + +TODO: + +- Include information about any builtin snippets for each regex + +The following table lists the character escapes supported by regular expressions in .NET. + +| Syntax | Description | Pattern | Matches | +|---|---|---|---| +| `\r` | Matches a carriage return. | `\r\n(\w+)` | \r\nCortex in \r\nCortex with\na new line | +| `\n` | Matches a newline. | `\r\n(\w+)` | \r\nCortex in \r\nCortex with\na new line | +| `\t` | Matches a tab. | `(\w+)\t` | Cortex1\t, Cortex2\t in Cortex1\tCortex2\t | +| `[\b]` | Matches a backspace. Note that it must be enclosed in brackets to have this meaning. | `[\b]{3,}` | \b\b\b\b in \b\b\b\b | +| `\f` | Matches a form feed. | `[\f]{2,}` | \f\f\f in \f\f\f | +| `\e` | Matches an escape. | `\e` | \x001B in \x001B | +| `\v` | Matches a vertical tab. | `[\v]{2,}` | \v\v\v in \v\v\v | +| `\a` | Matches the bell character. | `\a` | \u0007 in Cortex '\u0007' | +| `\octal` | Matches a character, where octal is the octal representation of that character. | `\w\040\w` | x C in Cortex Cortex | +| `\xhex` | Matches a character, where hex is the two-digit hexadecimal representation of that character. | `\w\x20\w` | x C in Cortex Cortex | +| `\uunicode` | Matches a Unicode character, where unicode is the four digit hexadecimal representation of that Unicode character. | `\w\u0020\w` | x C in Cortex Cortex | +| `\ccharacter` | Matches an ASCII control character specified by character. | `\cC` | \x0003 in \x0003 | + +### Quantifiers + +TODO: + +- Include information about any builtin snippets for each regex + +A quantifier specifies how many instances of the previous element (which can be a character, a group, or a character class) must be present in the input string for a match to occur. Quantifiers include the language elements listed in the following table. + +| Syntax | Description | Pattern | Matches | +|---|---|---|---| +| `*` | Matches previous element zero or more times. | `co*rtex` | crtex, cortex, coortex, coooortex in crtex cortex coortex coooortex | +| `+` | Matches previous element one or more times. | `co+rtex` | cortex, coortex, coooortex in crtex cortex coortex coooortex | +| `?` | Matches previous element zero or one times. | `co?rtex` | crtex, cortex in crtex cortex coortex coooortex | +| `{n}` | Matches previous element exactly n times. | `co{2}rtex` | coortex in crtex cortex coortex coooortex | +| `{n,}` | Matches previous element at least n times. | `co{2,}rtex` | coortex, coooortex in crtex cortex coortex coooortex | +| `{n,m}` | Matches previous element at least n times and at most m times. | `co{1,2}rtex` | cortex, coortex in crtex cortex coortex coooortex | +| `*?` | Matches previous element zero or more times, but as few times as possible. | `cort(ex)*?` | cort in cortexexex | +| `+?` | Matches previous element one or more times, but as few times as possible. | `cort(ex)+?` | cortex in cortexexex | +| `??` | Matches previous element zero or one time, but as few times as possible. | `cort(ex)??` | cort in cortexexex | +| `{n,}?` | Matches previous element at least n times, but as few times as possible. | `cort(ex){2,}?` | cortexex in cortexexex | +| `{n,m}?` | Matches previous element at least n times and at most m times, but as few times as possible. | `cort(ex){1,3}?` | cortex in cortexexex | + +### Anchors + +TODO: + +- Include information about any builtin snippets for each regex + +Anchors cause a match to succeed or fail depending on the current position in the string. + +| Syntax | Description | Pattern | Matches | +|---|---|---|---| +| `^` | Matches the beginning of the input. | `^\w{3}` | Cor in Cortex | +| `$` | Matches the end of the input, or the point before a final \n at the end of the input. | `\w{3}$` | tex in Cortex | +| `\A` | Matches the beginning of the input. Identical to ^, except it is unaffected by the multi-line option. | `\A\w{3}` | Cor in Cortex | +| `\z` | Matches the end of the input, without exception. | `\w{3}\z` | tex in Cortex | +| `\Z` | Matches the end of the input, or the point before a final \n at the end of the input. Identical to $, except it is unaffected by the multi-line option. | `\w{3}\Z` | tex in Cortex | +| `\G` | Matches the point that the previous match ended. Used to find contiguous matches. | `\G\D*\s` | Cortex , reads  in Cortex reads 7 files | +| `\b` | Matches any word boundary. Specifically, any point between a \w and a \W. | `\b\w+\s\w+\b` | Cortex reads, Cortex writes in Cortex reads Cortex writes | +| `\B` | Matches any point that is not a word boundary. Specifically, any point not between a \w and a \W. | `\Brt\w*\b` | rtex, rtex in Cortex reads Cortex writes | + +### Grouping Constructs + +TODO: + +- Include information about any builtin snippets for each regex + +Grouping constructs delineate sub-expressions of a regular expression and typically capture sub-strings of an input string. Grouping constructs include the language elements listed in the following table. + +| Syntax | Description | Pattern | Matches | +|---|---|---|---| +| `(subpattern) `| Captures subpattern as an unnamed group. | `(\w)\1` | oo in Coortex | +| `(?subpattern)` | Captures subpattern as a named group specified by name. | `(?\w)\k` | oo in Coortex | +| `(?subpattern)` | Balancing group definition. This allows nested constructs to be matched, such as parentheses or HTML tags. The previously defined group to balance against is specified by previous. Captures subpattern as a named group specified by name, or name can be omitted to capture as an unnamed group. | `(((?)[^<]*)+([^<]*(?))+)+(?(open)(?!))` | <span>Cortex this is included</span>, <span>Cortex this is included too</span> in not included <span>Cortex this is included</span> not included either <span>Cortex this is included too</span> | +| `(?:subpattern)` | Non-capturing group. Allows the use of parentheses without subpattern being captured into a group. | `Cortex\s(?:include)?` | Cortex include, Cortex  in Cortex include Cortex not include | +| `(?enabled-disabled:subpattern)` | Allows subpattern to be matched with different options than the rest of the pattern. Any inline option characters in enabled or disabled will enable or disable specific options, respectively. To see what inline option characters are available, please check the regular expressions options. | `(?i:c\|v)(ortex)` | cortex, Cortex, Vortex in cortex Cortex Vortex CORTEX | +| `(?=subpattern)` | Zero-width positive look-ahead assertion. Continues matching only if subpattern matches on the right. | `\w+(?=ex\b)` | Cort, Vort in Cortex Vortex Balloon | +| `(?!subpattern)` | Zero-width negative look-ahead assertion. Continues matching only if subpattern does not match on the right. | `\b\w+\.(?!exe)\w+\b` | cortex.jpg, cortex.html in cortex.jpg cortex.html .*.html cortex.exe | +| `(?<=subpattern)` | Zero-width positive look-behind assertion. Continues matching only if subpattern matches on the left. | `(?<=\(\$\))\w+` | variable, 22 in ($)variable ($)22 ($)-- | +| `(?subpattern)` | Prevents backtracking over subpattern, which can improve performance. | `[cv](?>o+r+)` | cor, coor, vor in cortex coortex vortex gortex | + +### Back-reference Constructs + +TODO: + +- Include information about any builtin snippets for each regex + +A back-reference allows a previously matched sub-expression to be identified subsequently in the same regular expression. The following table lists the back-reference constructs supported by regular expressions in .NET. + +| Syntax | Description | Pattern | Matches | +|---|---|---|---| +| `\number` | Matches the value of a previously captured group, specified by number. | `\b(\w)\w*\1\b` | xcortex, that in Finds all words like xcortex that start and end with the same letter | +| `\k` | Matches the value of a previously captured named group, specified by name. | `(?\p{P})\w+\k` | !cortex!, ?cortex? in !cortex! ?cortex? XcortexX | + +### Alternation Constructs + +TODO: + +- Include information about any builtin snippets for each regex + +Alternation constructs changes a regular expression to enable either/or matching. These constructs include the language elements listed in the following table. + +| Syntax | Description | Pattern | Matches | +|---|---|---|---| +| `\|` | Functions as a logical or. Matches any elements it separates. | `(c\|v)ortex` | cortex, vortex in cortex vortex xortex | +| `(?(subpattern)yes\|no)` | Treats subpattern as a zero-width assertion to check if it matches. If so, attempts to match with the yes subpattern. Otherwise, tries the no subpattern. The \|no part is optional. | `\b(?(\w+tez\b)\w{3}\|cortex)` | cortex, cor in cortex cortez vortex | +| `(?(group)yes\|no)` | Checks if a previously defined group was successfully captured, specified by group, which can be a number or a name for a named group. If so, attempts to match with the yes subpattern. Otherwise, tries the no subpattern. The \|no part is optional. | `(?(\(\$\)))\w+\|'\w+'` | cortex, 'cortex' in ($)cortex 'cortex' | + +### Substitutions + +TODO: + +- Include information about any builtin snippets for each regex + +Substitutions are regular expression language elements supported in replacement patterns. + +| Syntax | Description | Pattern | Replacement | Result | +|---|---|---|---|---| +| `$number` | Substitutes the value of a group, specified by number. | `\b(\w+)(\s)(\w+)\b` | `$3$2$1` | Cortex Great becomes Great Cortex | +| `${name}` | Substitutes the value of a named group, specified by name. | `\b(?\w+)(\s)(?\w+)\b` | `${word2} ${word1}` | Cortex Great becomes Great Cortex | +| `$$` | Substitutes the $ character. | `\b(dollar)` | `$$` | (dollar)name becomes ($)name | +| `$&` | Substitutes the entire match. | `\w+` | `\*\*$&\*\*` | Cortex becomes \*\*Cortex\*\* | +| ``$` `` | Substitutes all input text found before the match. | `#+` | ``$` `` | Co##rtex becomes CoCortex | +| `$'` | Substitutes all input text found after the match. | `#+` | `$'` | Cort##ex becomes Cortexex | +| `$+` | Substitutes the last group captured. | `Co(r)` | `$+` | CoCortex becomes Cortex | +| `$_` | Substitutes the entire input. | `\w+?` | `$_`  | Cortex becomes Cortex Cortex Cortex Cortex Cortex Cortex  | + +## Remarks + +### Known Limitations + +TODO + +## See Also + +### Related Concepts + +TODO + +### Related Data Types + +TODO + +### Related Blocks + +TODO: List blocks which support using regex + +TODO: All blocks which support regex should link back here from the properties that support it + +### External Documentation + +TODO diff --git a/content/en/docs/2024.11/Reference/Concepts/working-with/text/what-is-text.md b/content/en/docs/2024.11/Reference/Concepts/working-with/text/what-is-text.md new file mode 100644 index 000000000..0fee94a8e --- /dev/null +++ b/content/en/docs/2024.11/Reference/Concepts/working-with/text/what-is-text.md @@ -0,0 +1,68 @@ +--- +title: "What is Text?" +linkTitle: "What is Text?" +description: "Information regarding what text is." +weight: 1 +--- + +# {{% param title %}} + +{{< workinprogress >}} + +## Summary + +TODO: + +- What is text + - null, string.Empty, and whitespace +- Difference between string and char +- Operators and Comparisons + - https://learn.microsoft.com/en-us/dotnet/standard/base-types/basic-string-operations + - Concatenation + - Equality + - Casing + - Ordinal + - Invariant Culture + - Current Culture + - https://learn.microsoft.com/en-us/dotnet/standard/base-types/best-practices-strings + - LiteralText vs Regex vs PatternMatching + - Links to LiteralText + - Links to Regex + - Links to PatternMatching +- Parsing text to a number +- String Formatting + - Date Formatting + - Number Formatting +- Encoding +- Immutability of strings https://learn.microsoft.com/en-us/dotnet/csharp/programming-guide/strings/#immutability-of-strings +- Literal, Verbatim and Interpolated Strings + - String escape sequences https://learn.microsoft.com/en-us/dotnet/csharp/programming-guide/strings/#string-escape-sequences +- Substrings and Indexing + +Links: + +- https://learn.microsoft.com/en-us/dotnet/csharp/programming-guide/strings/ + +## Remarks + +### Known Limitations + +TODO + +## See Also + +### Related Concepts + +TODO + +### Related Data Types + +TODO + +### Related Blocks + +TODO + +### External Documentation + +TODO diff --git a/content/en/docs/2024.11/Reference/Exceptions/Common/Property/_index.md b/content/en/docs/2024.11/Reference/Exceptions/Common/Property/_index.md new file mode 100644 index 000000000..2bf5aaf81 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/Common/Property/_index.md @@ -0,0 +1,5 @@ +--- +title: "Property" +linkTitle: "Property" +description: "Exceptions related to issues with Block Properties" +--- diff --git a/content/en/docs/2024.11/Reference/Exceptions/Common/Property/property-contains-null-item-exception.md b/content/en/docs/2024.11/Reference/Exceptions/Common/Property/property-contains-null-item-exception.md new file mode 100644 index 000000000..1da6faad4 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/Common/Property/property-contains-null-item-exception.md @@ -0,0 +1,106 @@ +--- +title: "PropertyContainsNullItemException" +linkTitle: "PropertyContainsNullItemException" +description: "The exception thrown when a property is provided with a value that contains at least one item that is `null`." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.Common.Property.PropertyContainsNullItemException)

+ +## Description + +The exception thrown when a [property][] is provided with a value that contains at least one item that is `null`. + +## Reasons + +### Value Contains `null` item + +A `null` item is contained in the value that was provided for the [property][]. + +#### Message Format + +The format of the [Message][] is as follows: + +```json +"'' contains at least one null value; it must only contain values that are not null. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the name of the property. + +#### How to fix + +Ensure the value provided for the [property][] named `` does not contain items that are `null`. + +## Properties + +### Exception Type + +The type of the exception (i.e. `PropertyContainsNullItemException`). + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Message + +The exception message, providing information about the exception that occurred. + +For this exception: + +* `` will be replaced with the name of the [property][]. + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Help Link + +The URL for the relevant section of this exception's help page. + +| | | +|-----------|------------| +| Data Type | [String][] | + +## Remarks + +### Known Limitations + +Currently, only the `` has been included in the exception. In future, we will look to include the name and Id of the [block][], the id, name and value of the [property][], as well as allowing the exception to contain a link to take you directly to the offending value. + +## See Also + +### Related Data Types + +* [String][] + +### Related Concepts + +* [Blocks][block] +* [Block Properties][property] +* [Exceptions][] + +### Related Blocks + +* Tasks + * [Cancel All Tasks][] + * [Wait For All Tasks][] + +### External Documentation + +None + +[Message]: {{< ref "#message" >}} + +[Cancel All Tasks]: {{< url path="Cortex.Reference.Blocks.Tasks.CancelTask.CancelAllTasksBlock.MainDoc" >}} +[Wait For All Tasks]: {{< url path="Cortex.Reference.Blocks.Tasks.WaitForTask.WaitForAllTasksBlock.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[block]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.MainDoc" >}} +[property]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.MainDoc" >}} + +[Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.MainDoc" >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Exceptions/Common/Property/property-contains-null-or-empty-item-exception.md b/content/en/docs/2024.11/Reference/Exceptions/Common/Property/property-contains-null-or-empty-item-exception.md new file mode 100644 index 000000000..a3a05b726 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/Common/Property/property-contains-null-or-empty-item-exception.md @@ -0,0 +1,104 @@ +--- +title: "PropertyContainsNullOrEmptyItemException" +linkTitle: "PropertyContainsNullOrEmptyItemException" +description: "The exception thrown when a property is provided with a value that contains at least one item that is either `null` or empty, but the item is required to have a value." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.Common.Property.PropertyContainsNullOrEmptyItemException)

+ +## Description + +The exception thrown when a [property][] is provided with a value that contains at least one item that is either `null` or empty, but the item is required to have a value. + +## Reasons + +### Value Contains `null` or empty item + +A `null` or empty item is contained in the value that was provided for the [property][]. + +#### Message Format + +The format of the [Message][] is as follows: + +```json +"'' contains at least one null or empty value; it must only contain values that are not null or empty. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the name of the property. + +#### How to fix + +Ensure the value provided for the [property][] named `` does not contain items that are either `null` or empty. + +## Properties + +### Exception Type + +The type of the exception (i.e. `PropertyContainsNullOrEmptyItemException`). + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Message + +The exception message, providing information about the exception that occurred. + +For this exception: + +* `` will be replaced with the name of the [property][]. + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Help Link + +The URL for the relevant section of this exception's help page. + +| | | +|-----------|------------| +| Data Type | [String][] | + +## Remarks + +### Known Limitations + +Currently, only the `` has been included in the exception. In future, we will look to include the name and Id of the [block][], the id, name and value of the [property][], as well as allowing the exception to contain a link to take you directly to the offending value. + +## See Also + +### Related Data Types + +* [String][] + +### Related Concepts + +* [Blocks][block] +* [Block Properties][property] +* [Exceptions][] + +### Related Blocks + +* Exceptions + * [Handle Block Exception Matching Type Names][] + +### External Documentation + +None + +[Message]: {{< ref "#message" >}} + +[Handle Block Exception Matching Type Names]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleBlock.HandleBlockExceptionMatchingTypeNames.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[block]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.MainDoc" >}} +[property]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.MainDoc" >}} + +[Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Exceptions/Common/Property/property-empty-exception.md b/content/en/docs/2024.11/Reference/Exceptions/Common/Property/property-empty-exception.md new file mode 100644 index 000000000..89bd5b29e --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/Common/Property/property-empty-exception.md @@ -0,0 +1,239 @@ +--- +title: "PropertyEmptyException" +linkTitle: "PropertyEmptyException" +description: "The exception thrown when a property is provided with an empty value, but a non-empty value is required." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.Common.Property.PropertyEmptyException)

+ +## Description + +The exception thrown when a [property][] is provided with an [empty][] value, but a non-empty value is required. + +## Reasons + +### Empty value + +An [empty][] value was provided for the [property][]. + +#### Message Format + +The format of the [Message][] is as follows: + +```json +"'' is empty; it must be provided a value. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the name of the property. + +#### How to fix + +Ensure the value provided for the [property][] named `` is not [empty][]. + +## Properties + +### Exception Type + +The type of the exception (i.e. `PropertyEmptyException`). + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Message + +The exception message, providing information about the exception that occurred. + +For this exception: + +* `` will be replaced with the name of the [property][]. + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Help Link + +The URL for the relevant section of this exception's help page. + +| | | +|-----------|------------| +| Data Type | [String][] | + +## Remarks + +### Known Limitations + +Currently, only the `` has been included in the exception. In future, we will look to include the name and Id of the [block][], the id, name and value of the [property][], as well as allowing the exception to contain a link to take you directly to the offending value. + +## See Also + +### Related Data Types + +* [String][] + +### Related Concepts + +* [Blocks][] +* [Block Properties][] +* [Exceptions][] + +### Related Blocks + +* Data + * [Execute Data Command][] +* Data Storage + * [Create Collection][] + * [Delete Collection][] + * [Delete Data With Key][] + * [Read Data With Key][] + * [Wait For Collection To Exist][] + * [Wait For Collection To Not Exist][] + * [Wait For Key In Collection To Be Set][] + * [Wait For Key In Collection To Contain Value][] + * [Wait For Key In Collection To Exist][] + * [Wait For Key In Collection To Not Exist][] + * [Write Data With Key][] +* Date & Time + * [Convert Text To Date Time][] +* Email + * [Send Email Using SMTP Server][] +* Exceptions + * [Handle Block Exception Matching Messages][] + * [Handle Block Exception Matching Type Name][] + * [Handle Block Exception Matching Type Names][] +* Files & Folders + * [Copy File][] + * [Copy Files][] + * [Copy Folder][] + * [Copy Folders][] + * [Create Folder][] + * [Create Folders][] + * [Delete File][] + * [Delete Files][] + * [Delete Folder][] + * [Delete Folders][] + * [Duplicate Folder][] + * [Get File Information][] + * [Get Folder Content][] + * [Get Folder Information][] + * [Move File][] + * [Move Files][] + * [Move Folder][] + * [Move Folders][] + * [Read All Lines][] + * [Read All Text][] + * [Rename Folder][] + * [Search File][] + * [Search Files][] + * [Write All Lines][] + * [Write All Text][] +* Json + * [Convert Json To Object][] +* Lists + * [Get Item At Beginning][] + * [Get Item At End][] + * [Set Item At Beginning][] + * [Set Item At End][] + * [Set Items At Beginning][] + * [Set Items At End][] + * [Set Items At Index][] +* Queues + * [Dequeue Item][] + * [Dequeue Items][] + * [Peek Item][] +* Tasks + * [Cancel All Tasks][] + * [Wait For All Tasks][] +* Xml + * [Convert Structure To Xml][] + * [Convert Xml To Structure][] + +### External Documentation + +None + +[Message]: {{< ref "#message" >}} + +[Execute Data Command]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.MainDoc" >}} + +[Convert Text To Date Time]: {{< url path="Cortex.Reference.Blocks.DateAndTime.ConvertDateTime.ConvertTextToDateTime.MainDoc" >}} + +[Create Collection]: {{< url path = "Cortex.Reference.Blocks.DataStorage.CreateCollection.CreateCollectionBlock.MainDoc">}} +[Delete Collection]: {{< url path = "Cortex.Reference.Blocks.DataStorage.DeleteCollection.DeleteCollectionBlock.MainDoc">}} +[Delete Data With Key]: {{< url path="Cortex.Reference.Blocks.DataStorage.DeleteData.DeleteDataWithKeyBlock.MainDoc">}} +[Read Data With Key]: {{< url path="Cortex.Reference.Blocks.DataStorage.ReadData.ReadDataWithKeyBlock.MainDoc">}} +[Wait For Collection To Exist]: {{< url path="Cortex.Reference.Blocks.DataStorage.WaitForCollection.WaitForCollectionToExistBlock.MainDoc">}} +[Wait For Collection To Not Exist]: {{< url path="Cortex.Reference.Blocks.DataStorage.WaitForCollection.WaitForCollectionToNotExistBlock.MainDoc">}} +[Wait For Key In Collection To Be Set]: {{< url path = "Cortex.Reference.Blocks.DataStorage.WaitForKeyInCollection.WaitForKeyInCollectionToBeSetBlock.MainDoc">}} +[Wait For Key In Collection To Contain Value]: {{< url path = "Cortex.Reference.Blocks.DataStorage.WaitForKeyInCollection.WaitForKeyInCollectionToContainValueBlock.MainDoc">}} +[Wait For Key In Collection To Exist]: {{< url path = "Cortex.Reference.Blocks.DataStorage.WaitForKeyInCollection.WaitForKeyInCollectionToExistBlock.MainDoc">}} +[Wait For Key In Collection To Not Exist]: {{< url path = "Cortex.Reference.Blocks.DataStorage.WaitForKeyInCollection.WaitForKeyInCollectionToNotExistBlock.MainDoc">}} +[Write Data With Key]: {{< url path="Cortex.Reference.Blocks.DataStorage.WriteData.WriteDataWithKeyBlock.MainDoc">}} + +[Send Email Using SMTP Server]: {{< url path="Cortex.Reference.Blocks.Email.SendEmail.SendEmailUsingSmtpServer.MainDoc" >}} + +[Handle Block Exception Matching Messages]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleBlock.HandleBlockExceptionMatchingMessages.MainDoc" >}} +[Handle Block Exception Matching Type Name]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleBlock.HandleBlockExceptionMatchingTypeName.MainDoc" >}} +[Handle Block Exception Matching Type Names]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleBlock.HandleBlockExceptionMatchingTypeNames.MainDoc" >}} + +[Copy File]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.CopyFile.CopyFile.MainDoc" >}} +[Copy Files]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.CopyFile.CopyFiles.MainDoc" >}} +[Copy Folder]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.CopyFolder.CopyFolder.MainDoc" >}} +[Copy Folders]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.CopyFolder.CopyFolders.MainDoc" >}} +[Create Folder]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.CreateFolder.CreateFolder.MainDoc" >}} +[Create Folders]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.CreateFolder.CreateFolders.MainDoc" >}} +[Delete File]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.DeleteFile.DeleteFile.MainDoc" >}} +[Delete Files]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.DeleteFile.DeleteFiles.MainDoc" >}} +[Delete Folder]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.DeleteFolder.DeleteFolder.MainDoc" >}} +[Delete Folders]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.DeleteFolder.DeleteFolders.MainDoc" >}} +[Duplicate Folder]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.CopyFolder.DuplicateFolder.MainDoc" >}} +[Get File Information]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.GetFileInformation.GetFileInformation.MainDoc" >}} +[Get Folder Content]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.GetFolderContent.GetFolderContent.MainDoc" >}} +[Get Folder Information]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.GetFolderInformation.GetFolderInformation.MainDoc" >}} +[Move File]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.MoveFile.MoveFile.MainDoc" >}} +[Move Files]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.MoveFile.MoveFiles.MainDoc" >}} +[Move Folder]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.MoveFolder.MoveFolder.MainDoc" >}} +[Move Folders]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.MoveFolder.MoveFolders.MainDoc" >}} +[Read All Lines]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.ReadFile.ReadAllLines.MainDoc" >}} +[Read All Text]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.ReadFile.ReadAllText.MainDoc" >}} +[Rename Folder]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.RenameFolder.RenameFolder.MainDoc" >}} +[Search File]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.SearchFile.SearchFile.MainDoc" >}} +[Search Files]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.SearchFile.SearchFiles.MainDoc" >}} +[Write All Lines]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.WriteFile.WriteAllLines.MainDoc" >}} +[Write All Text]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.WriteFile.WriteAllText.MainDoc" >}} + +[Convert Json To Object]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertJsonToObject.MainDoc" >}} + +[Get Item At Beginning]: {{< url path="Cortex.Reference.Blocks.Lists.GetItem.GetItemAtBeginning.MainDoc" >}} +[Get Item At End]: {{< url path="Cortex.Reference.Blocks.Lists.GetItem.GetItemAtEnd.MainDoc" >}} +[Set Item At Beginning]: {{< url path="Cortex.Reference.Blocks.Lists.SetItem.SetItemAtBeginning.MainDoc" >}} +[Set Item At End]: {{< url path="Cortex.Reference.Blocks.Lists.SetItem.SetItemAtEnd.MainDoc" >}} +[Set Items At Beginning]: {{< url path="Cortex.Reference.Blocks.Lists.SetItem.SetItemsAtBeginning.MainDoc" >}} +[Set Items At End]: {{< url path="Cortex.Reference.Blocks.Lists.SetItem.SetItemsAtEnd.MainDoc" >}} +[Set Items At Index]: {{< url path="Cortex.Reference.Blocks.Lists.SetItem.SetItemsAtIndex.MainDoc" >}} + +[Dequeue Item]: {{< url path="Cortex.Reference.Blocks.Queues.DequeueItem.DequeueItemBlock.MainDoc" >}} +[Dequeue Items]: {{< url path="Cortex.Reference.Blocks.Queues.DequeueItem.DequeueItemsBlock.MainDoc" >}} +[Peek Item]: {{< url path="Cortex.Reference.Blocks.Queues.PeekItem.PeekItemBlock.MainDoc" >}} + +[Convert Structure To Xml]: {{< url path="Cortex.Reference.Blocks.Xml.ConvertXml.ConvertStructureToXml.MainDoc" >}} +[Convert Xml To Structure]: {{< url path="Cortex.Reference.Blocks.Xml.ConvertXml.ConvertXmlToStructure.MainDoc" >}} + +[Cancel All Tasks]: {{< url path="Cortex.Reference.Blocks.Tasks.CancelTask.CancelAllTasksBlock.MainDoc" >}} +[Wait For All Tasks]: {{< url path="Cortex.Reference.Blocks.Tasks.WaitForTask.WaitForAllTasksBlock.MainDoc" >}} + +[Blocks]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.MainDoc" >}} +[block]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.WhatIsABlock.MainDoc" >}} +[Block Properties]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.MainDoc" >}} +[property]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.MainDoc" >}} +[Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[empty]: {{< url path="Cortex.Reference.Glossary.A-E.Empty" >}} diff --git a/content/en/docs/2024.11/Reference/Exceptions/Common/Property/property-item-count-exception.md b/content/en/docs/2024.11/Reference/Exceptions/Common/Property/property-item-count-exception.md new file mode 100644 index 000000000..5b3f1b267 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/Common/Property/property-item-count-exception.md @@ -0,0 +1,121 @@ +--- +title: "PropertyItemCountException" +linkTitle: "PropertyItemCountException" +description: "The exception thrown when the values provided for two properties are expected to contain the same number of items, but don't." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.Common.Property.PropertyItemCountException)

+ +## Description + +The exception thrown when the values provided for two [properties][] are expected to contain the same number of items, but don't. + +## Reasons + +### Item Counts Are Different + +Values provided for two [properties][] are expected to contain the same number of items, but don't. + +#### Message Format + +The format of the [Message][] is as follows: + +```json +"Invalid '' provided. +There are items in '' and items in ''. +The number of items in '' must be the same as the number of items in ''. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the name of the first property. +* `` is the name of the second property. +* `` is the count of items in the first property. +* `` is the count of items in the second property. + +#### How to fix + +Ensure that the value provided for each of the two [properties][] contains the same number of items. + +## Properties + +### Exception Type + +The type of the exception (i.e. `PropertyItemCountException`). + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Message + +The exception message, providing information about the exception that occurred. + +For this exception: + +* `` will be replaced with the name of the first property. +* `` will be replaced with the name of the second property. +* `` will be replaced with the count of items in the first property. +* `` will be replaced with the count of items in the second property. + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Help Link + +The URL for the relevant section of this exception's help page. + +| | | +|-----------|------------| +| Data Type | [String][] | + +## Remarks + +### Known Limitations + +Currently, the `` and `` have been included in the exception. In future, we will look to include the name and Id of the [block][], the id, name and value of the [property][properties], as well as allowing the exception to contain a link to take you directly to the offending value. + +## See Also + +### Related Data Types + +* [String][] + +### Related Concepts + +* [Blocks][] +* [Block Properties][] +* [Exceptions][] + +### Related Blocks + +* Dictionaries + * [Set Items With Keys][] + * [Set Items With Values][] +* Lists + * [Set Items At Indexes][] + * [Set Items With Values][List Set Items With Values] + +### External Documentation + +None + +[Message]: {{< ref "#message" >}} + +[Set Items With Keys]: {{< url path="Cortex.Reference.Blocks.Dictionaries.SetItem.SetItemsWithKeys.MainDoc" >}} +[Set Items With Values]: {{< url path="Cortex.Reference.Blocks.Dictionaries.SetItem.SetItemsWithValues.MainDoc" >}} + +[Set Items At Indexes]: {{< url path="Cortex.Reference.Blocks.Lists.SetItem.SetItemsAtIndexes.MainDoc" >}} +[List Set Items With Values]: {{< url path="Cortex.Reference.Blocks.Lists.SetItem.SetItemsWithValues.MainDoc" >}} + +[Blocks]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.MainDoc" >}} +[block]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.WhatIsABlock.MainDoc" >}} +[Block Properties]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.MainDoc" >}} +[properties]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.MainDoc" >}} +[Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Exceptions/Common/Property/property-null-exception.md b/content/en/docs/2024.11/Reference/Exceptions/Common/Property/property-null-exception.md new file mode 100644 index 000000000..964d3bcd5 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/Common/Property/property-null-exception.md @@ -0,0 +1,403 @@ +--- +title: "PropertyNullException" +linkTitle: "PropertyNullException" +description: "The exception thrown when a property is provided with a `null` value, but a non-null value is required." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.Common.Property.PropertyNullException)

+ +## Description + +The exception thrown when a [property][] is provided with a `null` value, but a non-null value is required. + +## Reasons + +### Value Is `null` + +A `null` value was provided for the [property][] when a non-null was required. + +#### Message Format + +The format of the [Message][] is as follows: + +```json +"'' is null; it must be provided with a non-null value. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the name of the property. + +#### How to fix + +Provide a non-null value for the [property][]. + +## Properties + +### Exception Type + +The type of the exception (i.e. `PropertyNullException`). + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Message + +The exception message, providing information about the exception that occurred. + +For this exception: + +* `` will be replaced with the name of the [property][]. + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Help Link + +The URL for the relevant section of this exception's help page. + +| | | +|-----------|------------| +| Data Type | [String][] | + +## Remarks + +### Known Limitations + +Currently, only the `` has been included in the exception. In future, we will look to include the name and Id of the [block][], the id, name and value of the [property][], as well as allowing the exception to contain a link to take you directly to the offending value. + +## See Also + +### Related Data Types + +* [String][] + +### Related Concepts + +* [Blocks][] +* [Block Properties][] +* [Exceptions][] + +### Related Blocks + +* Data + * [Execute Data Command][] +* Data Storage + * [Create Collection][] + * [Delete Collection][] + * [Delete Data With Key][] + * [Read Data With Key][] + * [Wait For Collection To Exist][] + * [Wait For Collection To Not Exist][] + * [Wait For Key In Collection To Be Set][] + * [Wait For Key In Collection To Contain Value][] + * [Wait For Key In Collection To Exist][] + * [Wait For Key In Collection To Not Exist][] + * [Write Data With Key][] +* Date & Time + * [Convert Text To Date Time][] +* Dictionaries + * [Add Item With Key][] + * [Contains Item With Key And Value][] + * [Contains Item With Key][] + * [Contains Item With Value][] + * [Contains Items With Keys][] + * [Contains Items With Values][] + * [Get Count Of All Items][] + * [Get Count Of Items With Value][] + * [Get Counts Of Items With Values][] + * [Get All Items][] + * [Get All Keys][] + * [Get Item With Key][] + * [Get Items With Key][] + * [Remove All Items][] + * [Remove Item With Key][] + * [Remove Item With Value][] + * [Remove Items With Key][] + * [Remove Items With Keys][] + * [Remove Items With Value][] + * [Remove Items With Values][] + * [Set All Items][] + * [Set Item With Key][] + * [Set Item With Value][] + * [Set Items With Key][] + * [Set Items With Keys][] + * [Set Items With Value][] + * [Set Items With Values][] +* Exceptions + * [Handle Block Exception Matching Messages][] + * [Handle Block Exception Matching Type Name][] + * [Handle Block Exception Matching Type Names][] + * [Rethrow Exception][] +* Email + * [Send Email Using SMTP Server][] +* Files & Folders + * [Copy File][] + * [Copy Files][] + * [Copy Folder][] + * [Copy Folders][] + * [Create Folder][] + * [Create Folders][] + * [Delete File][] + * [Delete Files][] + * [Delete Folder][] + * [Delete Folders][] + * [Duplicate Folder][] + * [Get File Information][] + * [Get Folder Content][] + * [Get Folder Information][] + * [Move File][] + * [Move Files][] + * [Move Folder][] + * [Move Folders][] + * [Read All Lines][] + * [Read All Text][] + * [Rename Folder][] + * [Search File][] + * [Search Files][] + * [Write All Lines][] + * [Write All Text][] +* Json + * [Convert Json To Object][] +* Lists + * [Add Item At Beginning][] + * [Add Item At End][] + * [Add Item At Index][] + * [Add Items At Beginning][] + * [Add Items At End][] + * [Add Items At Index][] + * [Contains Item With Value][List Contains Item With Value] + * [Contains Items With Values][List Contains Items With Values] + * [Get Count Of All Items][List Get Count Of All Items] + * [Get Count Of Items With Value][List Get Count Of Items With Value] + * [Get Count Of Items With Values][List Get Count Of Items With Values] + * [Get Index Of Item With Value][] + * [Get Indexes Of Items With Value][] + * [Get Item At Beginning][] + * [Get Item At End][] + * [Get Item At Index][] + * [Get Items At Beginning][] + * [Get Items At End][] + * [Get Items At Index][] + * [Get Items At Indexes][] + * [Remove All Items][List Remove All Items] + * [Remove Duplicate Items][] + * [Remove Item At Beginning][] + * [Remove Item At End][] + * [Remove Item At Index][] + * [Remove Item With Value][List Remove Item With Value] + * [Remove Items At Beginning][] + * [Remove Items At End][] + * [Remove Items At Index][] + * [Remove Items At Indexes][] + * [Remove Items With Value][List Remove Items With Value] + * [Remove Items With Values][List Remove Items With Values] + * [Set All Items][List Set All Items] + * [Set Item At Beginning][] + * [Set Item At End][] + * [Set Item At Index][] + * [Set Item With Value][List Set Item With Value] + * [Set Items At Beginning][] + * [Set Items At End][] + * [Set Items At Index][] + * [Set Items At Indexes][] + * [Set Items With Value][List Set Items With Value] + * [Set Items With Values][List Set Items With Values] +* Logs + * [Log Event][] +* Loops + * [For Loop][] +* Objects + * [Convert Object To Text][] +* Queues + * [Dequeue Item][] + * [Dequeue Items][] + * [Enqueue Item][] + * [Enqueue Items][] + * [Get Count Of All Items][Queues Get Count Of All Items] + * [Peek Item][] + * [Remove All Items][Q Remove All Items] +* Tasks + * [Cancel Task][] + * [Cancel All Tasks][] + * [Wait For Task][] + * [Wait For All Tasks][] +* Text + * [Contains All Text][] + * [Contains Any Text][] + * [Format Text With Values][] + * [Join Text][] +* Xml + * [Convert Structure To Xml][] + * [Convert Xml To Structure][] + +### External Documentation + +None + +[Message]: {{< ref "#message" >}} + +[Execute Data Command]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.MainDoc" >}} + +[Create Collection]: {{< url path = "Cortex.Reference.Blocks.DataStorage.CreateCollection.CreateCollectionBlock.MainDoc">}} +[Delete Collection]: {{< url path = "Cortex.Reference.Blocks.DataStorage.DeleteCollection.DeleteCollectionBlock.MainDoc">}} +[Delete Data With Key]: {{< url path="Cortex.Reference.Blocks.DataStorage.DeleteData.DeleteDataWithKeyBlock.MainDoc">}} +[Read Data With Key]: {{< url path="Cortex.Reference.Blocks.DataStorage.ReadData.ReadDataWithKeyBlock.MainDoc">}} +[Wait For Collection To Exist]: {{< url path="Cortex.Reference.Blocks.DataStorage.WaitForCollection.WaitForCollectionToExistBlock.MainDoc">}} +[Wait For Collection To Not Exist]: {{< url path="Cortex.Reference.Blocks.DataStorage.WaitForCollection.WaitForCollectionToNotExistBlock.MainDoc">}} +[Wait For Key In Collection To Be Set]: {{< url path = "Cortex.Reference.Blocks.DataStorage.WaitForKeyInCollection.WaitForKeyInCollectionToBeSetBlock.MainDoc" >}} +[Wait For Key In Collection To Contain Value]: {{< url path = "Cortex.Reference.Blocks.DataStorage.WaitForKeyInCollection.WaitForKeyInCollectionToContainValueBlock.MainDoc">}} +[Wait For Key In Collection To Exist]: {{< url path = "Cortex.Reference.Blocks.DataStorage.WaitForKeyInCollection.WaitForKeyInCollectionToExistBlock.MainDoc">}} +[Wait For Key In Collection To Not Exist]: {{< url path = "Cortex.Reference.Blocks.DataStorage.WaitForKeyInCollection.WaitForKeyInCollectionToNotExistBlock.MainDoc">}} +[Write Data With Key]: {{< url path="Cortex.Reference.Blocks.DataStorage.WriteData.WriteDataWithKeyBlock.MainDoc">}} + +[Convert Text To Date Time]: {{< url path="Cortex.Reference.Blocks.DateAndTime.ConvertDateTime.ConvertTextToDateTime.MainDoc" >}} + +[Add Item With Key]: {{< url path="Cortex.Reference.Blocks.Dictionaries.AddItem.AddItemWithKey.MainDoc" >}} +[Contains Item With Key And Value]: {{< url path="Cortex.Reference.Blocks.Dictionaries.ContainsItem.ContainsItemWithKeyAndValue.MainDoc" >}} +[Contains Item With Key]: {{< url path="Cortex.Reference.Blocks.Dictionaries.ContainsItem.ContainsItemWithKey.MainDoc" >}} +[Contains Item With Value]: {{< url path="Cortex.Reference.Blocks.Dictionaries.ContainsItem.ContainsItemWithValue.MainDoc" >}} +[Contains Items With Keys]: {{< url path="Cortex.Reference.Blocks.Dictionaries.ContainsItem.ContainsItemsWithKeys.MainDoc" >}} +[Contains Items With Values]: {{< url path="Cortex.Reference.Blocks.Dictionaries.ContainsItem.ContainsItemsWithValues.MainDoc" >}} +[Get Count Of All Items]: {{< url path="Cortex.Reference.Blocks.Dictionaries.GetCount.GetCountOfAllItems.MainDoc" >}} +[Get Count Of Items With Value]: {{< url path="Cortex.Reference.Blocks.Dictionaries.GetCount.GetCountOfItemsWithValue.MainDoc" >}} +[Get Counts Of Items With Values]: {{< url path="Cortex.Reference.Blocks.Dictionaries.GetCount.GetCountsOfItemsWithValues.MainDoc" >}} +[Get All Items]: {{< url path="Cortex.Reference.Blocks.Dictionaries.GetItem.GetAllItems.MainDoc" >}} +[Get Item With Key]: {{< url path="Cortex.Reference.Blocks.Dictionaries.GetItem.GetItemWithKey.MainDoc" >}} +[Get Items With Key]: {{< url path="Cortex.Reference.Blocks.Dictionaries.GetItem.GetItemsWithKey.MainDoc" >}} +[Get All Keys]: {{< url path="Cortex.Reference.Blocks.Dictionaries.GetKey.GetAllKeys.MainDoc" >}} +[Remove All Items]: {{< url path="Cortex.Reference.Blocks.Dictionaries.RemoveItem.RemoveAllItems.MainDoc" >}} +[Remove Item With Key]: {{< url path="Cortex.Reference.Blocks.Dictionaries.RemoveItem.RemoveItemWithKey.MainDoc" >}} +[Remove Item With Value]: {{< url path="Cortex.Reference.Blocks.Dictionaries.RemoveItem.RemoveItemWithValue.MainDoc" >}} +[Remove Items With Key]: {{< url path="Cortex.Reference.Blocks.Dictionaries.RemoveItem.RemoveItemsWithKey.MainDoc" >}} +[Remove Items With Keys]: {{< url path="Cortex.Reference.Blocks.Dictionaries.RemoveItem.RemoveItemsWithKeys.MainDoc" >}} +[Remove Items With Value]: {{< url path="Cortex.Reference.Blocks.Dictionaries.RemoveItem.RemoveItemsWithValue.MainDoc" >}} +[Remove Items With Values]: {{< url path="Cortex.Reference.Blocks.Dictionaries.RemoveItem.RemoveItemsWithValues.MainDoc" >}} +[Set All Items]: {{< url path="Cortex.Reference.Blocks.Dictionaries.SetItem.SetAllItems.MainDoc" >}} +[Set Item With Key]: {{< url path="Cortex.Reference.Blocks.Dictionaries.SetItem.SetItemWithKey.MainDoc" >}} +[Set Item With Value]: {{< url path="Cortex.Reference.Blocks.Dictionaries.SetItem.SetItemWithValue.MainDoc" >}} +[Set Items With Key]: {{< url path="Cortex.Reference.Blocks.Dictionaries.SetItem.SetItemsWithKey.MainDoc" >}} +[Set Items With Keys]: {{< url path="Cortex.Reference.Blocks.Dictionaries.SetItem.SetItemsWithKeys.MainDoc" >}} +[Set Items With Value]: {{< url path="Cortex.Reference.Blocks.Dictionaries.SetItem.SetItemsWithValue.MainDoc" >}} +[Set Items With Values]: {{< url path="Cortex.Reference.Blocks.Dictionaries.SetItem.SetItemsWithValues.MainDoc" >}} + +[Send Email Using SMTP Server]: {{< url path="Cortex.Reference.Blocks.Email.SendEmail.SendEmailUsingSmtpServer.MainDoc" >}} + +[Handle Block Exception Matching Messages]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleBlock.HandleBlockExceptionMatchingMessages.MainDoc" >}} +[Handle Block Exception Matching Type Name]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleBlock.HandleBlockExceptionMatchingTypeName.MainDoc" >}} +[Handle Block Exception Matching Type Names]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleBlock.HandleBlockExceptionMatchingTypeNames.MainDoc" >}} +[Rethrow Exception]: {{< url path="Cortex.Reference.Blocks.Exceptions.RethrowException.RethrowException.MainDoc" >}} + +[Copy File]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.CopyFile.CopyFile.MainDoc" >}} +[Copy Files]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.CopyFile.CopyFiles.MainDoc" >}} +[Copy Folder]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.CopyFolder.CopyFolder.MainDoc" >}} +[Copy Folders]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.CopyFolder.CopyFolders.MainDoc" >}} +[Create Folder]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.CreateFolder.CreateFolder.MainDoc" >}} +[Create Folders]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.CreateFolder.CreateFolders.MainDoc" >}} +[Delete File]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.DeleteFile.DeleteFile.MainDoc" >}} +[Delete Files]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.DeleteFile.DeleteFiles.MainDoc" >}} +[Delete Folder]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.DeleteFolder.DeleteFolder.MainDoc" >}} +[Delete Folders]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.DeleteFolder.DeleteFolders.MainDoc" >}} +[Duplicate Folder]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.CopyFolder.DuplicateFolder.MainDoc" >}} +[Get File Information]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.GetFileInformation.GetFileInformation.MainDoc" >}} +[Get Folder Content]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.GetFolderContent.GetFolderContent.MainDoc" >}} +[Get Folder Information]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.GetFolderInformation.GetFolderInformation.MainDoc" >}} +[Move File]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.MoveFile.MoveFile.MainDoc" >}} +[Move Files]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.MoveFile.MoveFiles.MainDoc" >}} +[Move Folder]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.MoveFolder.MoveFolder.MainDoc" >}} +[Move Folders]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.MoveFolder.MoveFolders.MainDoc" >}} +[Read All Lines]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.ReadFile.ReadAllLines.MainDoc" >}} +[Read All Text]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.ReadFile.ReadAllText.MainDoc" >}} +[Rename Folder]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.RenameFolder.RenameFolder.MainDoc" >}} +[Search File]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.SearchFile.SearchFile.MainDoc" >}} +[Search Files]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.SearchFile.SearchFiles.MainDoc" >}} +[Write All Lines]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.WriteFile.WriteAllLines.MainDoc" >}} +[Write All Text]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.WriteFile.WriteAllText.MainDoc" >}} + +[Convert Json To Object]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertJsonToObject.MainDoc" >}} + +[Add Item At Beginning]: {{< url path="Cortex.Reference.Blocks.Lists.AddItem.AddItemAtBeginning.MainDoc" >}} +[Add Item At End]: {{< url path="Cortex.Reference.Blocks.Lists.AddItem.AddItemAtEnd.MainDoc" >}} +[Add Item At Index]: {{< url path="Cortex.Reference.Blocks.Lists.AddItem.AddItemAtIndex.MainDoc" >}} +[Add Items At Beginning]: {{< url path="Cortex.Reference.Blocks.Lists.AddItem.AddItemsAtBeginning.MainDoc" >}} +[Add Items At End]: {{< url path="Cortex.Reference.Blocks.Lists.AddItem.AddItemsAtEnd.MainDoc" >}} +[Add Items At Index]: {{< url path="Cortex.Reference.Blocks.Lists.AddItem.AddItemsAtIndex.MainDoc" >}} +[List Contains Item With Value]: {{< url path="Cortex.Reference.Blocks.Lists.ContainsItem.ContainsItemWithValue.MainDoc" >}} +[List Contains Items With Values]: {{< url path="Cortex.Reference.Blocks.Lists.ContainsItem.ContainsItemsWithValues.MainDoc" >}} +[List Get Count Of All Items]: {{< url path="Cortex.Reference.Blocks.Lists.GetCount.GetCountOfAllItems.MainDoc" >}} +[List Get Count Of Items With Value]: {{< url path="Cortex.Reference.Blocks.Lists.GetCount.GetCountOfItemsWithValue.MainDoc" >}} +[List Get Count Of Items With Values]: {{< url path="Cortex.Reference.Blocks.Lists.GetCount.GetCountOfItemsWithValues.MainDoc" >}} +[Get Index Of Item With Value]: {{< url path="Cortex.Reference.Blocks.Lists.GetIndex.GetIndexOfItemWithValue.MainDoc" >}} +[Get Indexes Of Items With Value]: {{< url path="Cortex.Reference.Blocks.Lists.GetIndex.GetIndexesOfItemsWithValue.MainDoc" >}} +[Get Item At Beginning]: {{< url path="Cortex.Reference.Blocks.Lists.GetItem.GetItemAtBeginning.MainDoc" >}} +[Get Item At End]: {{< url path="Cortex.Reference.Blocks.Lists.GetItem.GetItemAtEnd.MainDoc" >}} +[Get Item At Index]: {{< url path="Cortex.Reference.Blocks.Lists.GetItem.GetItemAtIndex.MainDoc" >}} +[Get Items At Beginning]: {{< url path="Cortex.Reference.Blocks.Lists.GetItem.GetItemsAtBeginning.MainDoc" >}} +[Get Items At End]: {{< url path="Cortex.Reference.Blocks.Lists.GetItem.GetItemsAtEnd.MainDoc" >}} +[Get Items At Index]: {{< url path="Cortex.Reference.Blocks.Lists.GetItem.GetItemsAtIndex.MainDoc" >}} +[Get Items At Indexes]: {{< url path="Cortex.Reference.Blocks.Lists.GetItem.GetItemsAtIndexes.MainDoc" >}} +[List Remove All Items]: {{< url path="Cortex.Reference.Blocks.Lists.RemoveItem.RemoveAllItems.MainDoc" >}} +[Remove Duplicate Items]: {{< url path="Cortex.Reference.Blocks.Lists.RemoveItem.RemoveDuplicateItems.MainDoc" >}} +[Remove Item At Beginning]: {{< url path="Cortex.Reference.Blocks.Lists.RemoveItem.RemoveItemAtBeginning.MainDoc" >}} +[Remove Item At End]: {{< url path="Cortex.Reference.Blocks.Lists.RemoveItem.RemoveItemAtEnd.MainDoc" >}} +[Remove Item At Index]: {{< url path="Cortex.Reference.Blocks.Lists.RemoveItem.RemoveItemAtIndex.MainDoc" >}} +[List Remove Item With Value]: {{< url path="Cortex.Reference.Blocks.Lists.RemoveItem.RemoveItemWithValue.MainDoc" >}} +[Remove Items At Beginning]: {{< url path="Cortex.Reference.Blocks.Lists.RemoveItem.RemoveItemsAtBeginning.MainDoc" >}} +[Remove Items At End]: {{< url path="Cortex.Reference.Blocks.Lists.RemoveItem.RemoveItemsAtEnd.MainDoc" >}} +[Remove Items At Index]: {{< url path="Cortex.Reference.Blocks.Lists.RemoveItem.RemoveItemsAtIndex.MainDoc" >}} +[Remove Items At Indexes]: {{< url path="Cortex.Reference.Blocks.Lists.RemoveItem.RemoveItemsAtIndexes.MainDoc" >}} +[List Remove Items With Value]: {{< url path="Cortex.Reference.Blocks.Lists.RemoveItem.RemoveItemsWithValue.MainDoc" >}} +[List Remove Items With Values]: {{< url path="Cortex.Reference.Blocks.Lists.RemoveItem.RemoveItemsWithValues.MainDoc" >}} +[List Set All Items]: {{< url path="Cortex.Reference.Blocks.Lists.SetItem.SetAllItems.MainDoc" >}} +[Set Item At Beginning]: {{< url path="Cortex.Reference.Blocks.Lists.SetItem.SetItemAtBeginning.MainDoc" >}} +[Set Item At End]: {{< url path="Cortex.Reference.Blocks.Lists.SetItem.SetItemAtEnd.MainDoc" >}} +[Set Item At Index]: {{< url path="Cortex.Reference.Blocks.Lists.SetItem.SetItemAtIndex.MainDoc" >}} +[List Set Item With Value]: {{< url path="Cortex.Reference.Blocks.Lists.SetItem.SetItemWithValue.MainDoc" >}} +[Set Items At Beginning]: {{< url path="Cortex.Reference.Blocks.Lists.SetItem.SetItemsAtBeginning.MainDoc" >}} +[Set Items At End]: {{< url path="Cortex.Reference.Blocks.Lists.SetItem.SetItemsAtEnd.MainDoc" >}} +[Set Items At Index]: {{< url path="Cortex.Reference.Blocks.Lists.SetItem.SetItemsAtIndex.MainDoc" >}} +[Set Items At Indexes]: {{< url path="Cortex.Reference.Blocks.Lists.SetItem.SetItemsAtIndexes.MainDoc" >}} +[List Set Items With Value]: {{< url path="Cortex.Reference.Blocks.Lists.SetItem.SetItemsWithValue.MainDoc" >}} +[List Set Items With Values]: {{< url path="Cortex.Reference.Blocks.Lists.SetItem.SetItemsWithValues.MainDoc" >}} + +[Log Event]: {{< url path="Cortex.Reference.Blocks.Logs.LogEvent.LogEvent.MainDoc" >}} + +[For Loop]: {{< url path="Cortex.Reference.Blocks.Loops.For.ForLoop.MainDoc" >}} + +[Convert Object To Text]: {{< url path="Cortex.Reference.Blocks.Objects.ConvertObject.ConvertObjectToText.MainDoc" >}} + +[Dequeue Item]: {{< url path="Cortex.Reference.Blocks.Queues.DequeueItem.DequeueItemBlock.MainDoc" >}} +[Dequeue Items]: {{< url path="Cortex.Reference.Blocks.Queues.DequeueItem.DequeueItemsBlock.MainDoc" >}} +[Enqueue Item]: {{< url path="Cortex.Reference.Blocks.Queues.EnqueueItem.EnqueueItemBlock.MainDoc" >}} +[Enqueue Items]: {{< url path="Cortex.Reference.Blocks.Queues.EnqueueItem.EnqueueItemsBlock.MainDoc" >}} +[Queues Get Count Of All Items]: {{< url path="Cortex.Reference.Blocks.Queues.EnqueueItem.GetCountOfAllItemsBlock.MainDoc" >}} +[Peek Item]: {{< url path="Cortex.Reference.Blocks.Queues.PeekItem.PeekItemBlock.MainDoc" >}} +[Q Remove All Items]: {{< url path="Cortex.Reference.Blocks.Queues.RemoveItem.RemoveAllItemsBlock.MainDoc" >}} + +[Cancel Task]: {{< url path="Cortex.Reference.Blocks.Tasks.CancelTask.CancelTaskBlock.MainDoc" >}} +[Cancel All Tasks]: {{< url path="Cortex.Reference.Blocks.Tasks.CancelTask.CancelAllTasksBlock.MainDoc" >}} +[Wait For Task]: {{< url path="Cortex.Reference.Blocks.Tasks.WaitForTask.WaitForTask.MainDoc" >}} +[Wait For All Tasks]: {{< url path="Cortex.Reference.Blocks.Tasks.WaitForTask.WaitForAllTasksBlock.MainDoc" >}} + +[Contains All Text]: {{< url path="Cortex.Reference.Blocks.Text.ContainsText.ContainsAllText.MainDoc" >}} +[Contains Any Text]: {{< url path="Cortex.Reference.Blocks.Text.ContainsText.ContainsAnyText.MainDoc" >}} +[Format Text With Values]: {{< url path="Cortex.Reference.Blocks.Text.FormatText.FormatTextWithValues.MainDoc" >}} +[Join Text]: {{< url path="Cortex.Reference.Blocks.Text.JoinText.JoinText.MainDoc" >}} + +[Convert Structure To Xml]: {{< url path="Cortex.Reference.Blocks.Xml.ConvertXml.ConvertStructureToXml.MainDoc" >}} +[Convert Xml To Structure]: {{< url path="Cortex.Reference.Blocks.Xml.ConvertXml.ConvertXmlToStructure.MainDoc" >}} + +[Blocks]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.MainDoc" >}} +[block]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.WhatIsABlock.MainDoc" >}} +[Block Properties]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.MainDoc" >}} +[property]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.MainDoc" >}} +[Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + + diff --git a/content/en/docs/2024.11/Reference/Exceptions/Common/Property/property-value-out-of-range-exception.md b/content/en/docs/2024.11/Reference/Exceptions/Common/Property/property-value-out-of-range-exception.md new file mode 100644 index 000000000..097c5a062 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/Common/Property/property-value-out-of-range-exception.md @@ -0,0 +1,371 @@ +--- +title: "PropertyValueOutOfRangeException" +linkTitle: "PropertyValueOutOfRangeException" +description: "The exception thrown when a property is provided with a value that falls outside its accepted range." +--- + +# {{< param title >}} + +

(Cortex.Exceptions.Common.Property.PropertyValueOutOfRangeException)

+ +## Description + +The exception thrown when a [property][] is provided with a value that falls outside its accepted range. + +There are multiple reasons that this exception can be thrown: + +* [Property Is Empty][] +* [Property Is Empty Or `null`][] +* [Property Is Invalid][] +* [Property Is Negative][] +* [Property Greater Than Maximum Value][] +* [Property Less Than Minimum Value][] + +## Reasons + +### Property Is Empty + +An operation such as getting, setting or removing one or more items from an empty collection [property][] was performed. + +#### Message Format + +The format of the [Message][] is as follows: + +```json +"Invalid '' provided. +There are no items in ''. +Check that '' is not empty. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the name of the empty collection [property][]. +* `` is the name of another [property][] used to perform the get, set or remove operation (e.g. `index`, `indexes`, `count` etc.). + +#### How to fix + +Provide a non-empty collection [property][]. + +### Property Is Empty Or `null` + +An operation such as adding, getting or removing text from a `null` or empty (i.e. `""`) text [property][] was performed. + +#### Message Format + +The format of the [Message][] is as follows: + +```json +"Invalid '' provided. +Check that '' is not null or empty. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the name of the `null` or empty (i.e. `""`) text [property][]. + +#### How to fix + +Provide a non-`null` or non-empty text [property][]. + +### Property Is Invalid + +A [property][] was set to an invalid value. + +#### Message Format + +The format of the [Message][] can be one of the following: + +```json +"'' given was ; it must be a value between and . +Please click the HelpLink for more information on how to fix this." +``` + +or + +```json +"'' given was ; it must be a value between and (). +Please click the HelpLink for more information on how to fix this." +``` + +or + +```json +"`` given was ; it must be less than or equal to . +Please click the HelpLink for more information on how to fix this." +``` + +or + +```json +"'' given was and '' given was . +The '' must be less than or equal to (). +Please click the HelpLink for more information on how to fix this." +``` + +or + +```json +"Invalid '' provided. +The values in '' are outside of the expected range. +Check that the provided values of '' are between and . +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the name of the [property][] with the invalid value (e.g. `Length`, `Count`, `Index`). +* `` is the invalid value of the [property][] (e.g. `100` for non-collection values or `100, 200` for collection values). +* `` is the minimum value allowed (e.g. `0`). +* `` is the maximum value allowed (e.g. `9`). +* `` is how the maximum allowed value is calculated (e.g. `'Text.Length' - 1`). +* `` is the name of a related [property][] relevant to the exception (e.g. `Index`). +* `` is the value of a related [property][] relevant to the exception (e.g. `1`). + +#### How to fix + +Provide a valid value for the [property][] as instructed by the [Message][]. + +### Property Is Negative + +A [property][] was set to a negative [TimePeriod][] when a positive [TimePeriod][] was required. + +#### Message Format + +The format of the [Message][] is as follows: + +```json +"The provided 'TimePeriod' () equates to milliseconds which is invalid; it must be a non-negative value. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the [TimePeriod][] value in its text representation (e.g. `0.0.0.0:0:0:-10`). +* `` is the [TimePeriod][] value represented as total milliseconds (e.g. `-10`). + +#### How to fix + +Provide a valid non-negative [TimePeriod][] value for the [property][] as instructed by the [Message][]. + +### Property Greater Than Maximum Value + +A positive [TimePeriod][] was added to the [property][] or a negative [TimePeriod][] was subtracted from the [property][], and the result is greater than the allowed maximum value of the [DateTimeOffset][] data type. + +#### Message Format + +The format of the [Message][] can be one of the following: + +* If a positive [TimePeriod][] was added + +```json +"The provided 'DateTimeOffset' () with the addition of the given 'TimePeriod' () is greater than the maximum of a DateTimeOffset (). +Please click the HelpLink for more information on how to fix this." +``` + +* If a negative [TimePeriod][] value was subtracted + +```json +"The provided 'DateTimeOffset' () with the subtraction of the given 'TimePeriod' () is greater than the maximum of a DateTimeOffset (). +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the value of the [DateTimeOffset][] in [ISO 8601 format][] (i.e. `2022-07-01T14:00:00.0000000+01:00`). +* `` is the value of the [TimePeriod][] in text format (i.e. `9999.0.0.0:0:0:0`). +* `` is the maximum value of a [DateTimeOffset][] (i.e. `9999-12-31T23:59:59.9999999+00:00`). + +#### How to fix + +Provide a [TimePeriod][] value that when added to or subtracted from the [property][] results in the [property][] being less than the allowed maximum value of the [DateTimeOffset][] data type. + +### Property Less Than Minimum Value + +A positive [TimePeriod][] was subtracted from the [property][] or a negative [TimePeriod][] was added to the [property][], and the result was less than the allowed minimum value of the [DateTimeOffset][] data type. + +#### Message Format + +The format of the [Message][] can be one of the following: + +* If a positive [TimePeriod][] was subtracted + +```json +"The provided 'DateTimeOffset' () with the subtraction of the given 'TimePeriod' () is less than the minimum of a DateTimeOffset (). +Please click the HelpLink for more information on how to fix this." +``` + +* If a negative [TimePeriod][] value was added + +```json +"The provided 'DateTimeOffset' () with the addition of the given 'TimePeriod' () is less than the minimum of a DateTimeOffset (). +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the value of the [DateTimeOffset][] in [ISO 8601 format][] (i.e. `2022-07-01T14:00:00.0000000+01:00`). +* `` is the value of the [TimePeriod][] in text format (i.e. `-9999.0.0.0:0:0:0`). +* `` is the minimum value of a [DateTimeOffset][] (i.e. `0001-01-01T00:00:00.0000000+00:00`). + +#### How to fix + +Provide a [TimePeriod][] value that when added to or subtracted from the [property][] results in the [property][] being greater than the allowed minimum value of the [DateTimeOffset][] data type. + +## Properties + +### Exception Type + +The type of the exception (i.e. `PropertyValueOutOfRangeException`). + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Message + +The exception message, providing information about the exception that occurred. + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Help Link + +The URL for the relevant section of this exception's help page. + +| | | +|-----------|------------| +| Data Type | [String][] | + +## Remarks + +### Known Limitations + +None + +## See Also + +### Related Data Types + +* Date & Time + * [DateTimeOffset][] + * [TimePeriod][] +* Text + * [String][] + +### Related Concepts + +* [Exceptions][] +* [Working with Collections][] +* [Working with Date and Time][] +* [Working with Text][] + +### Related Blocks + +* Date & Time + * [Add Time Period][] + * [Subtract Time Period][] +* Lists + * [Add Item At Index][] + * [Add Items At Index][] + * [Get Item At Index][] + * [Get Items At Beginning][] + * [Get Items At End][] + * [Get Items At Index][] + * [Get Items At Indexes][] + * [Remove Item At Index][] + * [Remove Items At Beginning][] + * [Remove Items At End][] + * [Remove Items At Index][] + * [Remove Items At Indexes][] + * [Set Item At Index][] + * [Set Items At Index][] + * [Set Items At Indexes][] +* PowerShell + * [Execute PowerShell Script][] +* Queues + * [Dequeue Items][] +* Schedules + * [Wait For Duration][] +* Text + * [Add Text After Index][] + * [Add Text Before Index][] + * [Get Text At Beginning][] + * [Get Text At End][] + * [Get Text At Index][] + * [Get Text Before Index][] + * [Get Text Between Indexes][] + * [Remove Text At Beginning][] + * [Remove Text At End][] + * [Remove Text At Index][] + * [Remove Text Before Index][] + * [Remove Text Between Indexes][] + +### External Documentation + +None + +[Property Greater Than Maximum Value]: {{< ref "#property-greater-than-maximum-value" >}} +[Property Less Than Minimum Value]: {{< ref "#property-less-than-minimum-value" >}} +[Property Is Empty]: {{< ref "#property-is-empty" >}} +[Property Is Empty Or `null`]: {{< ref "#property-is-empty-or-null" >}} +[Property Is Invalid]: {{< ref "#property-is-invalid" >}} +[Property Is Negative]: {{< ref "#property-is-negative" >}} + +[Message]: {{< ref "#message" >}} + +[Add Time Period]: {{< url path="Cortex.Reference.Blocks.DateAndTime.AddTimePeriod.AddTimePeriod.MainDoc" >}} +[Subtract Time Period]: {{< url path="Cortex.Reference.Blocks.DateAndTime.SubtractTimePeriod.SubtractTimePeriod.MainDoc" >}} + +[Add Item At Index]: {{< url path="Cortex.Reference.Blocks.Lists.AddItem.AddItemAtIndex.MainDoc" >}} +[Add Items At Index]: {{< url path="Cortex.Reference.Blocks.Lists.AddItem.AddItemsAtIndex.MainDoc" >}} +[Get Item At Index]: {{< url path="Cortex.Reference.Blocks.Lists.GetItem.GetItemAtIndex.MainDoc" >}} +[Get Items At Beginning]: {{< url path="Cortex.Reference.Blocks.Lists.GetItem.GetItemsAtBeginning.MainDoc" >}} +[Get Items At End]: {{< url path="Cortex.Reference.Blocks.Lists.GetItem.GetItemsAtEnd.MainDoc" >}} +[Get Items At Index]: {{< url path="Cortex.Reference.Blocks.Lists.GetItem.GetItemsAtIndex.MainDoc" >}} +[Get Items At Indexes]: {{< url path="Cortex.Reference.Blocks.Lists.GetItem.GetItemsAtIndexes.MainDoc" >}} +[Remove Item At Index]: {{< url path="Cortex.Reference.Blocks.Lists.RemoveItem.RemoveItemAtIndex.MainDoc" >}} +[Remove Items At Beginning]: {{< url path="Cortex.Reference.Blocks.Lists.RemoveItem.RemoveItemsAtBeginning.MainDoc" >}} +[Remove Items At End]: {{< url path="Cortex.Reference.Blocks.Lists.RemoveItem.RemoveItemsAtEnd.MainDoc" >}} +[Remove Items At Index]: {{< url path="Cortex.Reference.Blocks.Lists.RemoveItem.RemoveItemsAtIndex.MainDoc" >}} +[Remove Items At Indexes]: {{< url path="Cortex.Reference.Blocks.Lists.RemoveItem.RemoveItemsAtIndexes.MainDoc" >}} +[Set Item At Index]: {{< url path="Cortex.Reference.Blocks.Lists.SetItem.SetItemAtIndex.MainDoc" >}} +[Set Items At Index]: {{< url path="Cortex.Reference.Blocks.Lists.SetItem.SetItemsAtIndex.MainDoc" >}} +[Set Items At Indexes]: {{< url path="Cortex.Reference.Blocks.Lists.SetItem.SetItemsAtIndexes.MainDoc" >}} + +[Execute PowerShell Script]: {{< url path="Cortex.Reference.Blocks.PowerShell.ExecutePowerShellScript.ExecutePowerShellScript.MainDoc" >}} + +[Wait For Duration]: {{< url path="Cortex.Reference.Blocks.Schedules.WaitFor.WaitForDuration.MainDoc" >}} + +[Add Text After Index]: {{< url path="Cortex.Reference.Blocks.Text.AddText.AddTextAfterIndex.MainDoc" >}} +[Add Text Before Index]: {{< url path="Cortex.Reference.Blocks.Text.AddText.AddTextBeforeIndex.MainDoc" >}} +[Get Text At Beginning]: {{< url path="Cortex.Reference.Blocks.Text.GetText.GetTextAtBeginning.MainDoc" >}} +[Get Text At End]: {{< url path="Cortex.Reference.Blocks.Text.GetText.GetTextAtEnd.MainDoc" >}} +[Get Text At Index]: {{< url path="Cortex.Reference.Blocks.Text.GetText.GetTextAtIndex.MainDoc" >}} +[Get Text Before Index]: {{< url path="Cortex.Reference.Blocks.Text.GetText.GetTextBeforeIndex.MainDoc" >}} +[Get Text Between Indexes]: {{< url path="Cortex.Reference.Blocks.Text.GetText.GetTextBetweenIndexes.MainDoc" >}} +[Remove Text At Beginning]: {{< url path="Cortex.Reference.Blocks.Text.RemoveText.RemoveTextAtBeginning.MainDoc" >}} +[Remove Text At End]: {{< url path="Cortex.Reference.Blocks.Text.RemoveText.RemoveTextAtEnd.MainDoc" >}} +[Remove Text At Index]: {{< url path="Cortex.Reference.Blocks.Text.RemoveText.RemoveTextAtIndex.MainDoc" >}} +[Remove Text Before Index]: {{< url path="Cortex.Reference.Blocks.Text.RemoveText.RemoveTextBeforeIndex.MainDoc" >}} +[Remove Text Between Indexes]: {{< url path="Cortex.Reference.Blocks.Text.RemoveText.RemoveTextBetweenIndexes.MainDoc" >}} + +[property]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.MainDoc" >}} + +[Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.MainDoc" >}} + +[Working with Collections]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.MainDoc" >}} + +[Working with Date and Time]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.MainDoc" >}} +[ISO 8601 format]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.DateAndTimeFormatting.ISO8601Standard" >}} + +[Working with Text]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.MainDoc" >}} + +[DateTimeOffset]: {{< url path="Cortex.Reference.DataTypes.DateAndTime.DateTimeOffset.MainDoc" >}} +[TimePeriod]: {{< url path="Cortex.Reference.DataTypes.DateAndTime.TimePeriod.MainDoc" >}} + +[Dequeue Items]: {{< url path="Cortex.Reference.Blocks.Queues.DequeueItem.DequeueItemsBlock.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Exceptions/Common/_index.md b/content/en/docs/2024.11/Reference/Exceptions/Common/_index.md new file mode 100644 index 000000000..3aa58c5d8 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/Common/_index.md @@ -0,0 +1,5 @@ +--- +title: "Common" +linkTitle: "Common" +description: "Exceptions related to commonly occurring errors" +--- diff --git a/content/en/docs/2024.11/Reference/Exceptions/Lists/_index.md b/content/en/docs/2024.11/Reference/Exceptions/Lists/_index.md new file mode 100644 index 000000000..a0ad39d72 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/Lists/_index.md @@ -0,0 +1,5 @@ +--- +title: "List" +linkTitle: "Lists" +description: "Exceptions related to Lists" +--- diff --git a/content/en/docs/2024.11/Reference/Exceptions/Lists/cannot-modify-read-only-list-exception.md b/content/en/docs/2024.11/Reference/Exceptions/Lists/cannot-modify-read-only-list-exception.md new file mode 100644 index 000000000..58f7c331f --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/Lists/cannot-modify-read-only-list-exception.md @@ -0,0 +1,72 @@ +--- +title: "CannotModifyReadOnlyListException" +linkTitle: "CannotModifyReadOnlyListException" +description: "The exception thrown when trying to modify a read-only list." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.Lists.CannotModifyReadOnlyListException)

+{{% alert type="information" title="Information" %}}Improvements to this page are planned for the future.{{% /alert %}} + +## Description + +The exception thrown when trying to modify a read-only list. + +> Lists implementing [IList][]<[TItem][]> have the option to be read-only (e.g. [IReadOnlyList][]<[TItem][]>). + +## Reasons + +### Attempting to modify a read-only list + +The execution is attempting to perform a non-read operation on a read-only [IList][]<[TItem][]>. + +##### Message Format + +There was an attempt to modify a read-only list. + +##### Message Format + +The format of the exception message is as follows: + +```json +"'' cannot be modified because it's read-only. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the name of the property containing the read-only list. + +#### How to fix + +If the list was written directly into the block property using an [expression][], use a list type that is not read-only, such as [List][]<[TItem][]>. + +When using a variable, convert the read-only list to a list that can be written to by using the `.ToList()` expression like follows: + +```CSharp +($)List.ToList() +``` + +## Remarks + +### Known Limitations + +None + +## See Also + +#### External Documentation + +* [System.Collections.Generic.IList<T>][MS IList] +* [System.Collections.Generic.List<T>][MS List] + +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.Expressions" >}} + +[List]: {{}} +[IList]: {{}} +[IReadOnlyList]: {{}} + +[MS List]: {{< url path="MSDocs.DotNet.Api.System.Collections.Generic.List" >}} +[MS IList]: {{< url path="MSDocs.DotNet.Api.System.Collections.Generic.IList" >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Exceptions/Lists/duplicate-value-exception.md b/content/en/docs/2024.11/Reference/Exceptions/Lists/duplicate-value-exception.md new file mode 100644 index 000000000..e5b81f1aa --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/Lists/duplicate-value-exception.md @@ -0,0 +1,54 @@ +--- +title: "DuplicateValueException" +linkTitle: "DuplicateValueException" +description: "The exception thrown when a list has duplicate values but shouldn't." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.Lists.DuplicateValueException)

+{{% alert type="information" title="Information" %}}Improvements to this page are planned for the future.{{% /alert %}} + +## Description + +The exception thrown when a [list][IList] has duplicate values but shouldn't. + +## Reasons + +### Duplicate values in list when not supported + +A [list][IList] provided for an operation requiring unique values contains at least one duplicate value (e.g. providing duplicate indexes for the `Indexes` property of the [Get Items At Indexes][] block). + +#### Message Format + +The format of the exception message is as follows: + +```json +"The value of '' cannot contain duplicate values. +The values in '' are duplicated. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the name of the property containing the list that has duplicate values. +* `` is the list of values that are duplicated in the list. + +#### How to fix + +Ensure that duplicate values do not exist within the list being provided. + +## Remarks + +### Known Limitations + +None + +## See Also + +### External Documentation + +None + +[IList]: {{}} +[Get Items At Indexes]: {{}} \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Exceptions/Xml/_index.md b/content/en/docs/2024.11/Reference/Exceptions/Xml/_index.md new file mode 100644 index 000000000..0b563947c --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/Xml/_index.md @@ -0,0 +1,5 @@ +--- +title: "Xml" +linkTitle: "Xml" +description: "Exceptions related to Xml" +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Exceptions/Xml/xml-serialization-exception.md b/content/en/docs/2024.11/Reference/Exceptions/Xml/xml-serialization-exception.md new file mode 100644 index 000000000..bab1052dc --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/Xml/xml-serialization-exception.md @@ -0,0 +1,113 @@ +--- +title: "XmlSerializationException" +linkTitle: "XmlSerializationException" +description: "The exception thrown when an error occurs when serializing or deserializing XML." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.Xml.XmlSerializationException)

+{{% alert type="information" title="Information" %}}Improvements to this page are planned for the future.{{% /alert %}} + +## Description + +The exception thrown when an error occurs when serializing or deserializing XML. + +## Reasons + +### Invalid Structure {#structure} + +The [Structure][ConvertStructureToXml Structure Property] provided to the [Convert Structure To Xml][ConvertStructureToXml] block is invalid. + +#### Message Format + +The format of the message can be one of the following: + +```json +"Invalid 'Structure' provided. The 'Structure' has been provided an empty key that could not be converted to valid xml. +Please click the HelpLink for more information on how to fix this." +``` + +or + +```json +"Invalid 'Structure' provided. The 'Structure' has been provided a key that could not be converted to valid xml. +Please click the HelpLink for more information on how to fix this." +``` + +or + +```json +"Invalid 'Structure' provided. The 'Structure' has been provided an xml declaration key with an attribute value that could not be converted to valid xml. +Please click the HelpLink for more information on how to fix this." +``` + +or + +```json +"Invalid 'Structure' provided. The 'Structure' has been provided a document type definition key with an attribute value that could not be converted to valid xml. +Please click the HelpLink for more information on how to fix this." +``` + +or + +```json +"Invalid 'Structure' provided. The 'Structure' has been provided an attribute key with a value that could not be converted to valid xml. +Please click the HelpLink for more information on how to fix this." +``` + +#### How to fix + +* Ensure that all keys in the structure provided are not empty (i.e. `""`). The path to the specific key which threw this exception can be seen in the `Key` property (e.g. `"firstItem."` indicates that the empty key is a child of a top level item that has the key `"firstItem"`). If a top level item has an empty key (i.e. `""`), then the `Key` property will also be empty (i.e. `""`). +* Ensure that the XML declaration key (i.e. `"?xml"`) and document type definition key (i.e. `"!DOCTYPE"`) in the structure provided only have valid attributes: + * XML declaration key: `"@version"`, `"@encoding"` and `"@standalone"` + * Document type definition key: `"@name"`, `"@public"`, `"@system"` and `"@internalSubset"` + + The path to the specific key which threw this exception can be seen in the `Key` property. +* Ensure that all child attribute keys of the XML declaration item, in the structure provided, have values with a valid [Basic Data Type][BasicDataTypes] (e.g. the child attribute key `"@version"`, requires a numeric value like `1.0` or `1.1`, so a value of `false` is invalid). +* Ensure that all child attribute keys of the document type definition item, in the structure provided, have values with a valid [Basic Data Type][BasicDataTypes] (e.g. the child attribute key `"@name"`, requires a text value like `"exampleName"`, so a value of `22` is invalid). +* Ensure that all attribute keys in the structure provided have values which are not a [Complex Data Type][ComplexDataTypes]. The path to the specific key which threw this exception can be seen in the `Key` property. + +### Invalid XML {#xml} + +The [XML][ConvertXmlToStructure XML Property] provided to the [Convert Xml to Structure][ConvertXmlToStructure] block is invalid. + +#### Message Format + +The format of the message is as follows: + +```json +"Invalid 'Xml' provided. The 'Xml' provided is not valid xml. +Please click the HelpLink for more information on how to fix this." +``` + +#### How to fix + +Ensure that the [XML][ConvertXmlToStructure XML Property] provided is [valid XML][XmlValidator]. See the `Message` of the `InnerException` property for more information. + +## Remarks + +### Known Limitations + +None + +## See Also + +### External Documentation + +* [XML Validator][XmlValidator] + +[Structure]: {{}} + +[ConvertStructureToXml]: {{}} +[ConvertStructureToXml Structure Property]: {{}} + +[ConvertXmlToStructure]: {{}} +[ConvertXmlToStructure XML Property]: {{}} + +[XmlNodes]: {{}} + +[BasicDataTypes]: {{}} +[ComplexDataTypes]: {{}} + +[XmlValidator]: {{}} \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Exceptions/_index.md b/content/en/docs/2024.11/Reference/Exceptions/_index.md new file mode 100644 index 000000000..a86fc4ede --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/_index.md @@ -0,0 +1,6 @@ +--- +title: "Exceptions" +linkTitle: "Exceptions" +description: "This section includes all reference documentation for exceptions." +weight: 10 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Exceptions/collections/_index.md b/content/en/docs/2024.11/Reference/Exceptions/collections/_index.md new file mode 100644 index 000000000..274cfc43a --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/collections/_index.md @@ -0,0 +1,5 @@ +--- +title: "Collections" +linkTitle: "Collections" +description: "Exceptions related to Collections" +--- diff --git a/content/en/docs/2024.11/Reference/Exceptions/collections/occurrence-not-present-exception.md b/content/en/docs/2024.11/Reference/Exceptions/collections/occurrence-not-present-exception.md new file mode 100644 index 000000000..be890e4fa --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/collections/occurrence-not-present-exception.md @@ -0,0 +1,111 @@ +--- +title: "OccurrenceNotPresentException" +linkTitle: "OccurrenceNotPresentException" +description: "The exception thrown when trying to get a specified occurrence of an item from a collection, or set a specified occurrence of an item in a collection." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.Collections.OccurrenceNotPresentException)

+{{% alert type="information" title="Information" %}}Improvements to this page are planned for the future.{{% /alert %}} + +## Description + +The exception thrown when trying to get a specified occurrence of an item from a collection, or set a specified occurrence of an item in a collection. + +## Reasons + +### Occurrence provided is zero + +The occurrence provided is equal to `0`. + +#### Message Format + +The format of the [Message][] is as follows: + +```json +" 0 cannot be used as it will perform no operations. +Please use a value greater or less than 0. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the name of the property which is not present. + +#### How to fix + +Provide an occurrence which is non-zero. + +### Positive occurrence not present + +The nth occurrence is not present. + +#### Message Format + +The format of the message is as follows: + +```json +"The occurrence of the key is not present in '' +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the specific occurrence that could not be found (e.g. 1st, 2nd, 3rd) +* `` is the value of the key that was searched for in the collection +* `` is the name of the collection in which the search for the key took place. + +#### How to fix + +Provide an occurrence which is present (e.g. if there are 3 occurrences, you must specify a value between 1 and 3). + +### Negative occurrence not present + +The nth from last occurrence is not present. + +#### Message Format + +The format of the message is as follows: + +```json +"The from last occurrence of the key is not present in '' +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the specific occurrence that could not be found (e.g. 1st, 2nd, 3rd) +* `` is the value of the key that was searched for in the collection +* `` is the name of the collection in which the search for the key took place. + +#### How to fix + +Provide an occurrence from last which is present (e.g. if there are 3 occurrences, you must specify a value between -1 and -3). + +## Remarks + +### Known Limitations + +None + +## See Also + +### External Documentation + +None + +[Start Flow]: {{< url path="Cortex.Reference.Blocks.Flows.StartFlow.StartFlow.MainDoc" >}} +[End Flow]: {{< url path="Cortex.Reference.Blocks.Flows.EndFlow.EndFlow.MainDoc" >}} + +[Wait For Duration]: {{< url path="Cortex.Reference.Blocks.Schedules.WaitFor.WaitForDuration.MainDoc" >}} + +[Start Workspace]: {{< url path="Cortex.Reference.Blocks.Workspaces.StartWorkspace.StartWorkspace.MainDoc" >}} +[End Workspace]: {{< url path="Cortex.Reference.Blocks.Workspaces.EndWorkspace.EndWorkspace.MainDoc" >}} + +[Blocks]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.MainDoc" >}} +[Block Properties]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.MainDoc" >}} +[Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[TimePeriod]: {{< url path="Cortex.Reference.DataTypes.DateAndTime.TimePeriod.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Exceptions/concurrency/_index.md b/content/en/docs/2024.11/Reference/Exceptions/concurrency/_index.md new file mode 100644 index 000000000..664797ba5 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/concurrency/_index.md @@ -0,0 +1,5 @@ +--- +title: "Concurrency" +linkTitle: "Concurrency" +description: "Exceptions related to Concurrency" +--- diff --git a/content/en/docs/2024.11/Reference/Exceptions/concurrency/semaphores/_index.md b/content/en/docs/2024.11/Reference/Exceptions/concurrency/semaphores/_index.md new file mode 100644 index 000000000..5d379dfd2 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/concurrency/semaphores/_index.md @@ -0,0 +1,5 @@ +--- +title: "Semaphores" +linkTitle: "Semaphores" +description: "Exceptions related to Semaphores" +--- diff --git a/content/en/docs/2024.11/Reference/Exceptions/concurrency/semaphores/semaphore-could-not-be-acquired-exception.md b/content/en/docs/2024.11/Reference/Exceptions/concurrency/semaphores/semaphore-could-not-be-acquired-exception.md new file mode 100644 index 000000000..213525541 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/concurrency/semaphores/semaphore-could-not-be-acquired-exception.md @@ -0,0 +1,195 @@ +--- +title: "SemaphoreCouldNotBeAcquiredException" +linkTitle: "SemaphoreCouldNotBeAcquiredException" +description: "The exception thrown when a block is unable to acquire a semaphore." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.Concurrency.SemaphoreCouldNotBeAcquiredException)

+ +## Description + +The exception thrown when a block is unable to acquire a [Semaphore][SemaphoreWhatIs]. + +## Reasons + +### Concurrency Limit reached + +The specified semaphore's [Concurrency Limit][SemaphoreConcurrencyLimit] has been reached, when the [Queue][SemaphoreQueue] property is set to `null`. + +#### Message Format + +The format of the [Message][] is as follows: + +```json +"Requested semaphore '///*//*//' could not be acquired. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the tenant defined in the [Scope][] the semaphore operates in. +* `` is the system defined in the [Scope][] the semaphore operates in. +* `` is the package defined in the [Scope][] the semaphore operates in. +* `` is the flow defined in the [Scope][] the semaphore operates in. +* `` is the [Name][SemaphoreName] of the semaphore. + +#### How to fix + +Try to acquire the semaphore again or provide a queue in the [Queue][SemaphoreQueue]. + +### Queue Timeout reached + +When queueing for the specified semaphore, the [Queue Timeout] is reached before the semaphore is acquired. + +#### Message Format + +The format of the [Message][] is as follows: + +```json +"Requested semaphore '///*//*//' could not be acquired. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the tenant defined in the [Scope][] the semaphore operates in. +* `` is the system defined in the [Scope][] the semaphore operates in. +* `` is the package defined in the [Scope][] the semaphore operates in. +* `` is the flow defined in the [Scope][] the semaphore operates in. +* `` is the [Name][SemaphoreName] of the semaphore. + +#### How to fix + +Try to acquire the semaphore again or provide a longer [Queue Timeout]. + +## Properties + +### Exception Type + +The type of the exception (i.e. `SemaphoreCouldNotBeAcquiredException`). + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Message + +The exception message, providing information about the exception that occurred. + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Scope + +The [Scope] the semaphore operates in. + +| | | +|-----------|------------| +| Data Type | [Scope][SemaphoreScope] | + +### Semaphore Name + +The [Name][SemaphoreName] of the semaphore that was attempted to be acquired. + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Configured Concurrency Limit + +The number of executions allowed in the semaphore that was attempted to be acquired. + +This is the concurrency limit set when the semaphore was created, which may be different from the specified concurrency limit, see [Multiple Concurrency Limits][MultipleConcurrencyLimits] for more information. + +| | | +|-----------|-----------| +| Data Type | [Int32][] | + +### Queued + +Whether or not the execution attempted to queue. + +| | | +|-----------|-------------| +| Data Type | [Boolean][] | + +### Queue Timeout + +The length of time the execution queued. + +| | | +|-----------|----------------| +| Data Type | [TimePeriod][] | + +### Help Link + +The URL for the relevant section of this exception's help page. + +| | | +|-----------|------------| +| Data Type | [String][] | + +## See Also + +### Related Data Types + +* [Boolean][] +* [Int32][] +* [Scope][SemaphoreScope] +* [String][] +* [TimePeriod][] + +### Related Concepts + +* [Exceptions][] +* [Scopes][] +* [Semaphores][Semaphore] + +### Related Blocks + +* [All Blocks][] + +Except: + +* [End Flow][] +* [End Workspace][] +* [Handle Flow Exception][] +* [Start Flow][] +* [Wait For Duration][] + +### External Documentation + +None + +[Message]: {{< ref "#message" >}} +[Scope]: {{< ref "#scope" >}} + +[All Blocks]: {{< url path="Cortex.Reference.Blocks.MainDoc" >}} + +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} +[TimePeriod]: {{< url path="Cortex.Reference.DataTypes.DateAndTime.TimePeriod.MainDoc" >}} +[Semaphore]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Concurrency.Semaphores.MainDoc" >}} +[SemaphoreWhatIs]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Concurrency.Semaphores.WhatIsASemaphore.MainDoc" >}} + +[SemaphoreConcurrencyLimit]: {{< url path="Cortex.Reference.DataTypes.Concurrency.Semaphores.SemaphoreSettings.ConcurrencyLimit" >}} +[SemaphoreQueue]: {{< url path="Cortex.Reference.DataTypes.Concurrency.Semaphores.SemaphoreSettings.Queue" >}} +[Scopes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Scopes.MainDoc" >}} +[SemaphoreScope]: {{< url path="Cortex.Reference.DataTypes.Scopes.Scope.MainDoc" >}} +[SemaphoreName]: {{< url path="Cortex.Reference.DataTypes.Concurrency.Semaphores.SemaphoreSettings.Name" >}} +[Queue Timeout]: {{< url path="Cortex.Reference.DataTypes.Concurrency.Semaphores.QueueSettings.QueueTimeout" >}} + +[MultipleConcurrencyLimits]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Concurrency.Semaphores.WhatIsASemaphore.MultipleConcurrencyLimits" >}} + +[End Flow]: {{< url path="Cortex.Reference.Blocks.Flows.EndFlow.EndFlow.MainDoc" >}} +[End Workspace]: {{< url path="Cortex.Reference.Blocks.Workspaces.EndWorkspace.EndWorkspace.MainDoc" >}} +[Handle Flow Exception]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleFlow.HandleFlowException.MainDoc" >}} +[Start Flow]: {{< url path="Cortex.Reference.Blocks.Flows.StartFlow.StartFlow.MainDoc" >}} +[Wait For Duration]: {{< url path="Cortex.Reference.Blocks.Schedules.WaitFor.WaitForDuration.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Exceptions/data-storage/_index.md b/content/en/docs/2024.11/Reference/Exceptions/data-storage/_index.md new file mode 100644 index 000000000..d56b1cc12 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/data-storage/_index.md @@ -0,0 +1,5 @@ +--- +title: "Data Storage" +linkTitle: "Data Storage" +description: "Exceptions related to Data Storage" +--- diff --git a/content/en/docs/2024.11/Reference/Exceptions/data-storage/data-storage-collection-not-found-exception.md b/content/en/docs/2024.11/Reference/Exceptions/data-storage/data-storage-collection-not-found-exception.md new file mode 100644 index 000000000..592c89a63 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/data-storage/data-storage-collection-not-found-exception.md @@ -0,0 +1,121 @@ +--- +title: "DataStorageCollectionNotFoundException" +linkTitle: "DataStorageCollectionNotFoundException" +description: "The exception thrown when a data storage collection could not be found." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.DataStorage.DataStorageCollectionNotFoundException)

+ +## Description + +The exception thrown when an operation attempts to retrieve a [Data Storage Collection][] that does not exist in the [Scope][] specified by the [ScopeDefinition][]. + +## Reasons + +### Data Storage Collection Could Not Be Found + +The [Data Storage Collection][] could not be found in the [Scope][] specified by the [ScopeDefinition][]. + +#### Message Format + +```json +"The '' collection was not found. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +- `` will be the name of the collection that could not be found (e.g. `"users"`). + +#### How to fix + +Ensure the provided [Data Storage Collection][] exists. A [Data Storage Collection][] can be created using the [Create Collection][] block. + +## Properties + +### Exception Type + +The type of the exception (i.e. `DataStorageCollectionNotFoundException`) + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Message + +The exception message, providing information about the exception that occurred. + +For this exception: +- `` will be replaced with the name of the collection. + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Scope + +The scope of the collection specified. + +| | | +|-----------|---------------------------| +| Data Type | [Scope][] | + +### CollectionName + +The name of the collection that could not be found within the [Scope][] specified by the [ScopeDefinition][] provided. + +| | | +|-----------|---------------------------| +| Data Type | [String][] | + +### Help Link + +The URL for the relevant section of this exception's help page. + +| | | +|-----------|------------| +| Data Type | [String][] | + +## Remarks + +### Known Limitations + +None + +## See Also + +### Related Data Types + +* [Scope][] +* [ScopeDefinition][] +* [String][] + +### Related Concepts + +* [Exceptions][] + +### Related Blocks + +- Data Storage + - [Delete Data With Key][] + - [Read Data With Key][] + - [Write Data With Key][] + +### External Documentation + +None + +[Create Collection]: {{< url path = "Cortex.Reference.Blocks.DataStorage.CreateCollection.CreateCollectionBlock.MainDoc">}} +[Delete Data With Key]: {{< url path="Cortex.Reference.Blocks.DataStorage.DeleteData.DeleteDataWithKeyBlock.MainDoc">}} +[Read Data With Key]: {{< url path="Cortex.Reference.Blocks.DataStorage.ReadData.ReadDataWithKeyBlock.MainDoc">}} +[Write Data With Key]: {{< url path="Cortex.Reference.Blocks.DataStorage.WriteData.WriteDataWithKeyBlock.MainDoc">}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Scope]: {{< url path="Cortex.Reference.DataTypes.Scopes.Scope.MainDoc">}} +[ScopeDefinition]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.MainDoc">}} + +[Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.MainDoc" >}} + +[Data Storage Collection]: {{< url path = "Cortex.Reference.Concepts.WorkingWith.Collections.WhatIsACollection.DataStorage">}} diff --git a/content/en/docs/2024.11/Reference/Exceptions/data-storage/key-in-data-storage-collection-not-found-exception.md b/content/en/docs/2024.11/Reference/Exceptions/data-storage/key-in-data-storage-collection-not-found-exception.md new file mode 100644 index 000000000..4bb532f9e --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/data-storage/key-in-data-storage-collection-not-found-exception.md @@ -0,0 +1,129 @@ +--- +title: "KeyInDataStorageCollectionNotFoundException" +linkTitle: "KeyInDataStorageCollectionNotFoundException" +description: "The exception thrown when an operation attempts to retrieve data from a data storage collection using a key that does not exist in that collection." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.DataStorage.KeyInDataStorageCollectionNotFoundException)

+ +## Description + +The exception thrown when an operation attempts to retrieve data from a [Data Storage Collection][] using a key that does not exist in that collection. + +## Reasons + +### Key Could Not Be Found in the Data Storage Collection + +The key could not be found in the [Data Storage Collection][] provided. + +#### Message Format + +```json +"The key is not present in '', so cannot be retrieved. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +- `` will be the name of the key that could not be found (e.g. `"user1"`) +- `` will be the name of the collection that the key could not be found in (e.g. `"users"`). + +#### How to fix + +Ensure the provided key exists. Keys can be added to the [Data Storage Collection][] using the [Write Data With Key][] block. + +## Properties + +### Exception Type + +The type of the exception (i.e. `KeyInDataStorageCollectionNotFoundException`) + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Message + +The exception message, providing information about the exception that occurred. + +For this exception: + +- `` will be replaced with the specified key. +- `` will be replaced with the name of the collection. + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Scope + +The scope of the collection specified. + +| | | +|-----------|---------------------------| +| Data Type | [Scope][] | + +### CollectionName + +The name of the collection the [Key][Key Property] was attempted to retrieve from. + +| | | +|-----------|---------------------------| +| Data Type | [String][] | + +### Key + +The key that could not be found in the [Data Storage Collection][]. + +| | | +|-----------|---------------------------| +| Data Type | [String][] | + +### Help Link + +The URL for the relevant section of this exception's help page. + +| | | +|-----------|------------| +| Data Type | [String][] | + +## Remarks + +### Known Limitations + +None + +## See Also + +### Related Data Types + +* [Scope][] +* [ScopeDefinition][] +* [String][] + +### Related Concepts + +* [Exceptions][] + +### Related Blocks + +- Data Storage + - [Read Data With Key][] + +### External Documentation + +None + +[Key Property]: {{< ref "#key">}} + +[Read Data With Key]: {{< url path="Cortex.Reference.Blocks.DataStorage.ReadData.ReadDataWithKeyBlock.MainDoc">}} +[Write Data With Key]: {{< url path="Cortex.Reference.Blocks.DataStorage.WriteData.WriteDataWithKeyBlock.MainDoc">}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Scope]: {{< url path="Cortex.Reference.DataTypes.Scopes.Scope.MainDoc">}} +[ScopeDefinition]: {{< url path="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.MainDoc">}} +[Data Storage Collection]: {{< url path = "Cortex.Reference.Concepts.WorkingWith.Collections.WhatIsACollection.DataStorage">}} + +[Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Exceptions/data/_index.md b/content/en/docs/2024.11/Reference/Exceptions/data/_index.md new file mode 100644 index 000000000..0648e7fde --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/data/_index.md @@ -0,0 +1,5 @@ +--- +title: "Data" +linkTitle: "Data" +description: "Exceptions related to Data Sources" +--- diff --git a/content/en/docs/2024.11/Reference/Exceptions/data/command-exception.md b/content/en/docs/2024.11/Reference/Exceptions/data/command-exception.md new file mode 100644 index 000000000..505d331eb --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/data/command-exception.md @@ -0,0 +1,347 @@ +--- +title: "CommandException" +linkTitle: "CommandException" +description: "The exception thrown when any command execution has resulted in an exception being thrown." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.Data.CommandException)

+ +## Description + +The exception thrown when any command execution has resulted in an exception being thrown. + +## Reasons + +### Connection Failed {#1000} + +An [Error Code][] of `1000` indicates the connection to the data source failed. + +#### Message Format + +The format of the [Message][] is as follows: + +```json +"Failed to open the '' connection. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +- `` is the type of the data source (e.g. SqlServer, Oracle). + +#### How to fix + +Make sure that the [Connection Details Property][ConnectionDetailsProperty] has been given a valid connection string, and that the data source is active. + +More information on why the value is invalid, or instruction on how to provide a valid value, may be present in the [InnerException][]. + +### Statement {#2000} + +An [Error Code][] of `2000` indicates the statement(s) used could not be parsed. + +#### Message Format + +The format of the [Message][] is as follows: + +```json +"An error occurred whilst trying to execute the command provided. Please see the 'StatementExceptions' property for more details. +Please click the HelpLink for more information on how to fix this." +``` + +#### How to fix + +Make sure that the statement(s) inputted into the [Command Property][CommandProperty] have the correct syntax. + +More information on why the value is invalid, or instruction on how to provide a valid value, may be present in the [StatementExceptions][]. + +### Incompatible Statement Type (Oracle Only) {#2001} + +An [Error Code][] of `2001` indicates an [OracleBlockStatement][] has been used in the [Command Property][CommandProperty] when using a [Command][] or [Commands][] data type. + +#### Message Format + +The format of the [Message][] is as follows: + +```json +"'CommandText' contains a block statement; it must be provided with a non-block statement. +Please click the HelpLink for more information on how to fix this." +``` + +#### How to fix + +Use a [QueryCommand][] or [NonQueryCommand][] data type. + +### Multiple Statements {#2002} + +An [Error Code][] of `2002` indicates multiple statements have been passed into the [Command Property][CommandProperty] when using a [Command][] data type. + +#### Message Format + +The format of the [Message][] is as follows: + +```json +"'CommandText' contains multiple statements; it must be provided with a single statement. +Please click the HelpLink for more information on how to fix this." +``` + +#### How to fix + +Use a [Commands][] data type. + +### Incompatible Parameter Type {#2003} + +An [Error Code][] of `2003` indicates an incompatible parameter type has been passed into the [Parameters Property][ParametersProperty] when using a type of [ConnectionDetails][]. + +#### Message Format + +The format of the [Message][] is as follows: + +```json +"'Parameters' contains parameter(s) of a type that is not compatible with the ConnectionDetails used; it must be provided with compatible parameter(s).\r\nPlease click the HelpLink for more information on how to fix this." +``` + +#### How to fix + +Use a compatible parameter data type for the type of [ConnectionDetails][] used. + +- [SqlServerConnectionDetails][] compatible types: + + * [Structure][] + +- [OdbcConnectionDetails][] compatible types: + + * [Structure][] + +- [OracleConnectionDetails][] compatible types: + + * [Structure][] + * [OracleParameters][] + * [OracleParameter][] + * [IEnumberable][]<[OracleParameter][]> + +### Runtime {#3000} + +An [Error Code][] of `3000` indicates an error has occurred during either parsing or execution of the statement(s). + +#### Message Format + +The format of the [Message][] is as follows: + +```json +"An error occurred whilst trying to execute the command provided. Please see the 'StatementExceptions' property for more details. +Please click the HelpLink for more information on how to fix this." +``` + +#### How to fix + +Try to make sure that the statement(s) are valid. + +More information on why the value is invalid, or instruction on how to provide a valid value, may be present in the [StatementExceptions][]. + +### Invalid Parameter Binding {#3001} + +An [Error Code][] of `3001` indicates at least one parameter has not been defined in the [Parameters Property][ParametersProperty] but has in the [Command Property][CommandProperty], or is not bound correctly; this means that the parameter type and value are not compatible, e.g. declaring a parameter with the type as `OracleMappingType.Blob`, but providing a `OracleMappingType.Int32` value of `1`. + +#### Message Format + +The format of the [Message][] is as follows: + +```json +"An error occurred whilst trying to execute the command provided. Please see the 'StatementExceptions' property for more details. +Please click the HelpLink for more information on how to fix this." +``` + +#### How to fix + +Make sure that all parameters used in the [Command Property][CommandProperty] are defined in the [Parameters Property][ParametersProperty] and have a value that is compatible with the parameter type, e.g. declaring a parameter with the type as `OracleMappingType.Int32`, requires an `OracleMappingType.Int32` value to be provided, for example `1`. + +More information may be present in the [StatementExceptions][]. + +## Properties + +### Exception Type + +The type of the exception (i.e. `CommandException`). + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Message + +The exception message, providing information about the exception that occurred. + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Category + +The category of the exception, which is used to categorise an exception based on the type of data source used. + +For `CommandException` there are the following categories: + +- `ODBC` +- `Oracle` +- `SQL` + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Error Code + +The error code for the exception, which is used to indicate the reason that the exception occurred, if there are multiple reasons that the exception can occur. + +For `CommandException` there are the following error codes: + +- [1000][Connection] - indicates that a [Connection][] error has occurred during the connection process (All Categories) +- [2000][Statement] - indicates that a [Statement][] error has occurred during the parsing process (Oracle Category Only) +- [2001][IncompatibleStatementType] - indicates that a [IncompatibleStatementType][] error has occured due to an [OracleBlockStatement][] being used in the [Command Property][CommandProperty] when using a [Command][] or [Commands][] data type (Oracle Category Only) +- [2002][MultipleStatements] - indicates that a [MultipleStatements][] error has occured because multiple statements have been inputted into the [Command Property][CommandProperty] when using the [Command][] datatype (All Categories) +- [2003][IncompatibleParameterType] - An incompatible parameter type has been passed into the [Parameters property][ParametersProperty] when using a type of [ConnectionDetails][] (All Categories) +- [3000][Runtime] - indicates that a [Runtime][] error has occurred during the runtime process (All Categories) +- [3001][InvalidParameterBinding] - indicates at least one parameter has not been defined in the [Parameters Property][ParametersProperty] but has in the [Command Property][CommandProperty], or is not bound correctly (All Categories) + +| | | +|-----------|---------------------------| +| Data Type | [DataCommandErrorCode][] | + +### InnerException + +An optional property that may contain the exception that caused the current exception. + +| | | +|-----------|---------------| +| Data Type | [Exception][] | + +### StatementExceptions + +An optional property that may contain a list of exception(s) relating to the execution of one or more of the statements specified in the [Command Property][CommandProperty]. + +| | | +|-----------|---------------| +| Data Type | [List][]<[Exception][]> | + +### Help Link + +The URL for the relevant section of this exception's help page. + +| | | +|-----------|------------| +| Data Type | [String][] | + +## Remarks + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [Command][] +- [Commands][] +- [ConnectionDetails][] +- [DataCommandErrorCode][] +- [Exception][] +- [NonQueryCommand][] +- [OdbcConnectionDetails][] +- [OracleConnectionDetails][] +- [OracleParameter][] +- [OracleParameters][] +- [QueryCommand][] +- [SqlServerConnectionDetails][] +- [String][] + +### Related Concepts + +- [Exceptions][] +- [Working With Data Sources][] + +### Related Blocks + +- Data + - [Execute Data Command][] + +### External Documentation + +- [OracleBlockStatement][] + +[Connection]: {{< ref "#1000">}} +[Statement]: {{< ref "#2000">}} +[IncompatibleStatementType]: {{< ref "#2001">}} +[MultipleStatements]: {{< ref "#2002">}} +[IncompatibleParameterType]: {{< ref "#2003">}} +[Runtime]: {{< ref "#3000">}} +[InvalidParameterBinding]: {{< ref "#3001">}} +[Message]: {{< ref "#message" >}} +[InnerException]: {{< ref "#innerexception" >}} +[StatementExceptions]: {{< ref "#statementexceptions" >}} +[Error Code]: {{< ref "#error-code" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[PropertyNullException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyNullException.MainDoc" >}} +[PropertyEmptyException]: {{< url path="Cortex.Reference.Exceptions.Common.Property.PropertyEmptyException.MainDoc" >}} +[ArgumentException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentException" >}} +[InvalidConnectionStringException]: {{< url path="Cortex.Reference.Exceptions.Data.InvalidConnectionStringException.MainDoc" >}} +[CommandException]: {{< url path="Cortex.Reference.Exceptions.Data.CommandException.MainDoc" >}} + +[ConnectionDetails]: {{< url path="Cortex.Reference.DataTypes.Data.ConnectionDetails.MainDoc" >}} +[SqlServerConnectionDetails]: {{< url path="Cortex.Reference.DataTypes.Data.SqlServerConnectionDetails.MainDoc" >}} +[OracleConnectionDetails]: {{< url path="Cortex.Reference.DataTypes.Data.OracleConnectionDetails.MainDoc" >}} +[OdbcConnectionDetails]: {{< url path="Cortex.Reference.DataTypes.Data.OdbcConnectionDetails.MainDoc" >}} +[DataCommandErrorCode]: {{< url path="Cortex.Reference.DataTypes.Data.DataCommandErrorCode.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} + +[Execute Data Command]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.MainDoc" >}} + +[TConnectionDetails]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[List]: {{< url path="Cortex.Reference.DataTypes.Collections.List.MainDoc" >}} +[Structure]: {{< url path="Cortex.Reference.DataTypes.Collections.Structure.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[Array]: {{< url path="Cortex.Reference.DataTypes.Collections.Array.MainDoc" >}} +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Exception]: {{< url path="Cortex.Reference.DataTypes.Exceptions.Exception.MainDoc" >}} + +[CommandProperty]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.CommandProperty" >}} +[ConnectionDetailsProperty]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.ConnectionDetailsProperty" >}} +[DataCommand]: {{< url path="Cortex.Reference.DataTypes.Data.DataCommand.MainDoc" >}} +[DataCommand.CommandText]: {{< url path="Cortex.Reference.DataTypes.Data.DataCommand.CommandText" >}} +[ParametersProperty]: {{< url path="Cortex.Reference.DataTypes.Data.DataCommand.Parameters" >}} + +[Command]: {{< url path="Cortex.Reference.DataTypes.Data.Command.MainDoc" >}} +[Command.CommandText]: {{< url path="Cortex.Reference.DataTypes.Data.Command.CommandText" >}} +[Commands]: {{< url path="Cortex.Reference.DataTypes.Data.Commands.MainDoc" >}} +[Commands.CommandText]: {{< url path="Cortex.Reference.DataTypes.Data.Commands.CommandText" >}} +[QueryCommand]: {{< url path="Cortex.Reference.DataTypes.Data.QueryCommand.MainDoc" >}} +[QueryCommand.CommandText]: {{< url path="Cortex.Reference.DataTypes.Data.QueryCommand.CommandText" >}} +[NonQueryCommand]: {{< url path="Cortex.Reference.DataTypes.Data.NonQueryCommand.MainDoc" >}} +[NonQueryCommand.CommandText]: {{< url path="Cortex.Reference.DataTypes.Data.NonQueryCommand.CommandText" >}} + +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[Variable Editor]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[String Interpolation]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.ConvertingObjectsToText.StringInterpolation" >}} +[Working with Data Sources]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DataSources.MainDoc" >}} +[Connection String Formats]: {{< url path="ConnectionStrings.MainDoc" >}} +[Variables]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.MainDoc" >}} +[Object Casting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectCasting.MainDoc" >}} + +[Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.MainDoc" >}} + +[OracleBlockStatement]: {{< url path="Oracle.PL-SQL.BlockStatement" >}} + +[IEnumberable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[ParametersProperty]: {{< url path="Cortex.Reference.DataTypes.Data.DataCommand.Parameters" >}} +[OracleParameters]: {{< url path="Cortex.Reference.DataTypes.Data.OracleParameters.MainDoc" >}} +[OracleParameter]: {{< url path="Cortex.Reference.DataTypes.Data.OracleParameter.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Exceptions/data/invalid-connection-string-exception.md b/content/en/docs/2024.11/Reference/Exceptions/data/invalid-connection-string-exception.md new file mode 100644 index 000000000..ec369dbb8 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/data/invalid-connection-string-exception.md @@ -0,0 +1,68 @@ +--- +title: "InvalidConnectionStringException" +linkTitle: "InvalidConnectionStringException" +description: "The exception thrown when an invalid connection string is used." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.Data.InvalidConnectionStringException)

+{{% alert type="information" title="Information" %}}Improvements to this page are planned for the future.{{% /alert %}} + +## Description + +The exception thrown when an invalid connection string is used. + +## Reasons + +### Invalid connection string has been supplied + +The connection string provided was invalid. + +#### Message Format + +The format of the message is as follows: + +```json +"The connection string was invalid and failed with error message: . +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the message of the inner exception caused by the invalid connection string being used. + +#### How to fix + +Ensure that a valid connection string is provided for the data source being connected to; see [connectionstrings.com][ConnectionStrings] for valid examples. + +## Remarks + +### Known Limitations + +None + +## See Also + +### External Documentation + +* [connectionstrings.com][ConnectionStrings] + +[Start Flow]: {{< url path="Cortex.Reference.Blocks.Flows.StartFlow.StartFlow.MainDoc" >}} +[End Flow]: {{< url path="Cortex.Reference.Blocks.Flows.EndFlow.EndFlow.MainDoc" >}} + +[Wait For Duration]: {{< url path="Cortex.Reference.Blocks.Schedules.WaitFor.WaitForDuration.MainDoc" >}} + +[Start Workspace]: {{< url path="Cortex.Reference.Blocks.Workspaces.StartWorkspace.StartWorkspace.MainDoc" >}} +[End Workspace]: {{< url path="Cortex.Reference.Blocks.Workspaces.EndWorkspace.EndWorkspace.MainDoc" >}} + +[Message]: {{< ref "#message" >}} + +[Blocks]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.MainDoc" >}} +[Block Properties]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.MainDoc" >}} +[Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[TimePeriod]: {{< url path="Cortex.Reference.DataTypes.DateAndTime.TimePeriod.MainDoc" >}} + +[ConnectionStrings]: {{}} diff --git a/content/en/docs/2024.11/Reference/Exceptions/decisions/_index.md b/content/en/docs/2024.11/Reference/Exceptions/decisions/_index.md new file mode 100644 index 000000000..194a2d699 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/decisions/_index.md @@ -0,0 +1,5 @@ +--- +title: "Decisions" +linkTitle: "Decisions" +description: "Exceptions related to Decisions" +--- diff --git a/content/en/docs/2024.11/Reference/Exceptions/decisions/property-not-nullable-exception.md b/content/en/docs/2024.11/Reference/Exceptions/decisions/property-not-nullable-exception.md new file mode 100644 index 000000000..5d6c262ed --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/decisions/property-not-nullable-exception.md @@ -0,0 +1,71 @@ +--- +title: "PropertyNotNullableException" +linkTitle: "PropertyNotNullableException" +description: "The exception thrown when a property that requires a nullable value is given a non-nullable value." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.Decisions.PropertyNotNullableException)

+{{% alert type="information" title="Information" %}}Improvements to this page are planned for the future.{{% /alert %}} + +## Description + +The exception thrown when a property that requires a [nullable][Nullable] value is given a non-nullable value. + +## Reasons + +### Invalid data type for property provided + +The data type provided for the property is one that does not allow null values, e.g. [Int32][], [Boolean][], [Char][], etc. + +#### Message Format + +The format of the message is as follows: + +```json +"'' cannot accept data types that do not allow null values (e.g. Int32, Boolean, Char, etc.); it must be provided a data type which allows null values. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the name of the property which must have a [nullable][Nullable] type. + +#### How to fix + +Ensure that the type of the value provided to the affected property is one that is [nullable][Nullable]. + +## Remarks + +### Known Limitations + +None + +## See Also + +### External Documentation + +None + +[Message]: {{< ref "#message" >}} + +[Blocks]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.MainDoc" >}} +[Block Properties]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.MainDoc" >}} +[Block Timeout]: {{}} +[Executions]: {{}} +[Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.MainDoc" >}} +[Flows]: {{}} +[Workspaces]: {{}} + +[Boolean]: {{}} +[Char]: {{}} +[Guid]: {{}} +[Int32]: {{}} +[String]: {{}} + +[Nullable]: {{}} +[WhatIsABlock]: {{}} +[WhatIsAnExecution]: {{}} +[WhatIsAFlow]: {{}} +[WhatIsAWorkspace]: {{}} diff --git a/content/en/docs/2024.11/Reference/Exceptions/dictionaries/_index.md b/content/en/docs/2024.11/Reference/Exceptions/dictionaries/_index.md new file mode 100644 index 000000000..603d2052d --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/dictionaries/_index.md @@ -0,0 +1,5 @@ +--- +title: "Dictionaries" +linkTitle: "Dictionaries" +description: "Exceptions related to Dictionaries" +--- diff --git a/content/en/docs/2024.11/Reference/Exceptions/dictionaries/cannot-modify-read-only-dictionary-exception.md b/content/en/docs/2024.11/Reference/Exceptions/dictionaries/cannot-modify-read-only-dictionary-exception.md new file mode 100644 index 000000000..865a46061 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/dictionaries/cannot-modify-read-only-dictionary-exception.md @@ -0,0 +1,67 @@ +--- +title: "CannotModifyReadOnlyDictionaryException" +linkTitle: "CannotModifyReadOnlyDictionaryException" +description: "The exception thrown when trying to modify a read-only dictionary." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.Dictionaries.CannotModifyReadOnlyDictionaryException)

+{{% alert type="information" title="Information" %}}Improvements to this page are planned for the future.{{% /alert %}} + +## Description + +The exception thrown when trying to modify a read-only dictionary. + +> Dictionaries implementing [IDictionary][]<[TKey][], [TItem][]> have the option to be read-only. + +## Reasons + +### Attempting to modify a read-only dictionary + +The execution is attempting to perform a non-read operation on a read-only [IDictionary][]<[TKey][], [TItem][]>. + +#### Message Format + +The format of the exception message is as follows: + +```json +"'' cannot be modified because it's read-only. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the name of the property containing the read-only dictionary. + +#### How to fix + +If the dictionary was written directly into the block property using an [expression][], use a dictionary type that is not read-only, such as [Dictionary][]<[TKey][], [TItem]>. + +When using a variable, convert the read-only dictionary to a dictionary that can be written to by using the `.ToDictionary(item => item.Key, item => item.Value)` expression like follows: + +```CSharp +($)Dictionary.ToDictionary(item => item.Key, item => item.Value); +``` + +## Remarks + +### Known Limitations + +None + +## See Also + +### External Documentation + +* [System.Collections.Generic.Dictionary][MS Dictionary] +* [System.Collections.Generic.IDictionary][MS IDictionary] + +[Dictionary]: {{}} +[IDictionary]: {{}} +[TKey]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[TItem]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} +[expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.Expressions" >}} + +[MS Dictionary]: {{< url path="MSDocs.DotNet.Api.System.Collections.Generic.Dictionary" >}} +[MS IDictionary]: {{< url path="MSDocs.DotNet.Api.System.Collections.Generic.IDictionary" >}} diff --git a/content/en/docs/2024.11/Reference/Exceptions/dictionaries/key-not-present-exception.md b/content/en/docs/2024.11/Reference/Exceptions/dictionaries/key-not-present-exception.md new file mode 100644 index 000000000..3b3e2d715 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/dictionaries/key-not-present-exception.md @@ -0,0 +1,81 @@ +--- +title: "KeyNotPresentException" +linkTitle: "KeyNotPresentException" +description: "The exception thrown when trying to get an item from a dictionary, or set an item in a dictionary, with a key that is not present." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.Dictionaries.KeyNotPresentException)

+{{% alert type="information" title="Information" %}}Improvements to this page are planned for the future.{{% /alert %}} + +## Description + +The exception thrown when trying to get an item from a [dictionary][IDictionary], or set an item in a [dictionary][IDictionary], with a key that is not present. + +## Reasons + +### Dictionary is empty + +The [dictionary][IDictionary] being accessed is empty, i.e. it contains no items. + +#### Message Format + +The format of the exception message is as follows: + +```json +"The key is not present in '', so cannot be retrieved because '' is empty. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the key that is not present. +* `` is the name of the property containing the empty [dictionary][IDictionary] that is being accessed. + +#### How to fix + +Ensure that the dictionary is not empty, and has the key that is being used. + +### Key not present in dictionary + +The key being used does not exist as a key in the [dictionary][IDictionary] being accessed. + +#### Message Format + +The format of the exception message is as follows: + +```json +"The key is not present in '', so cannot be retrieved. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the key that is not present. +* `` is the name of the property containing the [dictionary][IDictionary] that is being accessed. + +#### How to fix + +Ensure that the key is correct and is present in the [dictionary][IDictionary], for example by using the [Contains Item With Key][Contains Item With Key Block] block. + +## Remarks + +### Known Limitations + +None + +## See Also + +### External Documentation + +* [System.Collection.Generics.Dictionary][MS Dictionary] +* [System.Collection.Generics.IDictionary][MS IDictionary] + +[Contains Item With Key Block]: {{}} + +[Dictionary]: {{}} +[IDictionary]: {{}} + +[MS Dictionary]: {{< url path="MSDocs.DotNet.Api.System.Collections.Generic.Dictionary" >}} +[MS IDictionary]: {{< url path="MSDocs.DotNet.Api.System.Collections.Generic.IDictionary" >}} diff --git a/content/en/docs/2024.11/Reference/Exceptions/dictionaries/key-present-exception.md b/content/en/docs/2024.11/Reference/Exceptions/dictionaries/key-present-exception.md new file mode 100644 index 000000000..a9727d10d --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/dictionaries/key-present-exception.md @@ -0,0 +1,59 @@ +--- +title: "KeyPresentException" +linkTitle: "KeyPresentException" +description: "The exception thrown when trying to add an item to a dictionary with a key that is already present." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.Dictionaries.KeyPresentException)

+{{% alert type="information" title="Information" %}}Improvements to this page are planned for the future.{{% /alert %}} + +## Description + +The exception thrown when trying to add an item to a [dictionary][IDictionary] with a key that is already present. + +## Reasons + +### Key is already present in dictionary + +The key being used to add an item to a [dictionary][IDictionary] already exists within the [dictionary][IDictionary]. + +#### Message Format + +The format of the exception message is as follows: + +```json +"The key is already present in '', so cannot be added. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the key being used to add an item. +* `` is the name of the property containing the [dictionary][IDictionary] to which the item is trying to be added. + +#### How to fix + +Ensure that the key is not a duplicate of an already existing key in the [dictionary][IDictionary], for example by using the [Contains Item With Key][Contains Item With Key Block] block. + +## Remarks + +### Known Limitations + +None + +## See Also + +### External Documentation + +* [System.Collections.Generic.Dictionary][MS Dictionary] +* [System.Collections.Generic.IDictionary][MS IDictionary] + +[Contains Item With Key Block]: {{}} + +[Dictionary]: {{}} +[IDictionary]: {{}} + +[MS Dictionary]: {{< url path="MSDocs.DotNet.Api.System.Collections.Generic.Dictionary" >}} +[MS IDictionary]: {{< url path="MSDocs.DotNet.Api.System.Collections.Generic.IDictionary" >}} diff --git a/content/en/docs/2024.11/Reference/Exceptions/dictionaries/keys-not-present-exception.md b/content/en/docs/2024.11/Reference/Exceptions/dictionaries/keys-not-present-exception.md new file mode 100644 index 000000000..8c6079678 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/dictionaries/keys-not-present-exception.md @@ -0,0 +1,83 @@ +--- +title: "KeysNotPresentException" +linkTitle: "KeysNotPresentException" +description: "The exception thrown when trying to get items from a dictionary, or set items in a dictionary, and one or more of the keys used to find the items is not present." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.Dictionaries.KeysNotPresentException)

+{{% alert type="information" title="Information" %}}Improvements to this page are planned for the future.{{% /alert %}} + +## Description + +The exception thrown when trying to get items from a [dictionary][IDictionary], or set items in a [dictionary][IDictionary], and one or more of the keys used to find the items is not present. + +## Reasons + +### Dictionary is empty + +The [dictionary][IDictionary] being accessed is empty. + +#### Message Format + +The format of the exception message is as follows: + +```json +"The following keys are not present in '', so cannot be retrieved because '' is empty. + +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the name of the property containing [dictionary][IDictionary] being accessed. +* `` is the list of keys that were not present in the [dictionary][IDictionary]. In this case it should be all keys provided. + +#### How to fix + +Ensure that the [dictionary][IDictionary] is not empty. + +### One or more keys not present + +Some of the keys provided were not present in the [dictionary][IDictionary]. + +#### Message Format + +The format of the exception message is as follows: + +```json +"The following keys are not present in '', so cannot be retrieved. + +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the name of the property containing [dictionary][IDictionary] being accessed. +* `` is the list of keys that were not present in the [dictionary][IDictionary]. + +#### How to fix + +Ensure that the [dictionary][IDictionary] contains the key, for example by using the [Contains Item With Key][Contains Item With Key Block] block. + +## Remarks + +### Known Limitations + +None + +## See Also + +### External Documentation + +* [System.Collections.Generic.Dictionary][MS Dictionary] +* [System.Collections.Generic.IDictionary][MS IDictionary] + +[Contains Item With Key Block]: {{}} + +[Dictionary]: {{}} +[IDictionary]: {{}} + +[MS Dictionary]: {{< url path="MSDocs.DotNet.Api.System.Collections.Generic.Dictionary" >}} +[MS IDictionary]: {{< url path="MSDocs.DotNet.Api.System.Collections.Generic.IDictionary" >}} diff --git a/content/en/docs/2024.11/Reference/Exceptions/email/_index.md b/content/en/docs/2024.11/Reference/Exceptions/email/_index.md new file mode 100644 index 000000000..02bf88c2a --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/email/_index.md @@ -0,0 +1,5 @@ +--- +title: "Email" +linkTitle: "Email" +description: "Exceptions related to Email" +--- diff --git a/content/en/docs/2024.11/Reference/Exceptions/email/email-session-exception.md b/content/en/docs/2024.11/Reference/Exceptions/email/email-session-exception.md new file mode 100644 index 000000000..90b9c6a76 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/email/email-session-exception.md @@ -0,0 +1,323 @@ +--- +title: "EmailSessionException" +linkTitle: "EmailSessionException" +description: "The exception thrown when an issue occurs while opening a session with a mail server." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.Email.EmailSessionException)

+ +## Description + +The exception thrown when an issue occurs while opening a session with a mail server. + +There are multiple reasons that this exception can be thrown: + +- [Invalid Port][InvalidPortProvided] +- [Invalid Host][InvalidHostProvided] +- [SSL Required][SslWrappedConnectionRequired] +- [SSL Unsupported][SslWrappedConnectionNotSupported] +- [Invalid User Credentials][InvalidUsernameAndPassword] +- [Invalid SSL Certificate][InvalidSslCertificate] +- [Invalid Gmail Client Credentials][InvalidClientCredentials] + +## Reasons + +### Invalid Port {#100} + +A [Category][] of `Socket` and an [Error Code][] of `100` indicates that the [Port][] provided in the [ServerDetails][] is invalid. + +#### Message Format + +The format of the [Message][] is as follows: + +```json +"The connection attempt to 'Host' ('') on 'Port' () failed. The 'Server Details' in 'Email Session Details' has been provided a port that does not exist or the connection timed out. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +- `` is the address of the mail server that a session is being opened with +- `` is the port on the mail server that a session is being opened with + +#### How to Fix + +Provide a valid [Port][] between the [Int32][] values 1 and 65535 in the [ServerDetails][] and ensure that the mail server is up and running without issues. + +*** + +### Invalid Host {#101} + +A [Category][] of `Socket` and an [Error Code][] of `101` indicates that the [Host][] provided in the [ServerDetails][] is invalid. + +#### Message Format + +```json +"Invalid 'Host' ('') provided. The 'Server Details' in 'Email Session Details' has been provided a host that does not exist. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +- `` is the address of the mail server that a session is being opened with + +#### How to Fix + +Provide a valid [Host][] in the [ServerDetails][]. + +*** + +### SSL Required {#200} + +A [Category][] of `SSL` and an [Error Code][] of `200` indicates that [SSL][] is required. More specifically, the mail server is expecting that [SSL][] is used as soon as the connection is established. + +#### Message Format + +```json +"The connection could not be established or disconnected unexpectedly. Check if the 'Port' () provided requires that 'Use SSL' be set to true. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +- `` is the port on the mail server that a session is being opened with + +#### How to Fix + +Change [UseSsl][] in the [ServerDetails][] to `true`, or make a connection on a [Port][] which does not require [SSL][]. + +*** + +### SSL Unsupported {#201} + +A [Category][] of `SSL` and an [Error Code][] of `201` indicates that one of the following issues occurred: + +- An [SSL][] connection is not supported. More specifically, the mail server either does not support [SSL][] connections or only supports [SSL][] connections via the STARTTLS command. +- Certificate on the [Host][] is expired, untrusted or invalid +- Certificate replaced by anti-virus software in order to scan web traffic resulting in failed certificate validation +- [CRL][] server is down + +#### Message Format + +```json +"The connection could not be established or disconnected unexpectedly. Check if the 'Port' () provided requires that 'Use SSL' be set to false. If this is not the case, check the inner exception. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +- `` is the port on the mail server that a session is being opened with + +#### How to Fix + +Change [UseSsl][] in the [ServerDetails][] to `false`, or make a connection on a port which supports [SSL][]. + +If the above suggestion does not fix the problem, check if the anti-virus software on the server executing the flow is replacing the [SSL][] certificate in order to scan the web traffic, and change the settings appropriately if needed. + +If the issue persists, please check the inner exception as instructed by the [Message][]. + +*** + +### Invalid User Credentials {#300} + +A [Category][] of `UserCredentials` and an [Error Code][] of `300` indicates that the [Username][] and [Password][] combination provided in the [UserCredentials][] is invalid. + +#### Message Format + +```json +"The provided 'Username' and 'Password' is incorrect. The 'User Credentials' in 'Email Session Details' has been provided an incorrect username and password combination. +Please click the HelpLink for more information on how to fix this." +``` + +#### How to Fix + +Provide a valid [Username][] and [Password][] combination in the [UserCredentials][]. + +*** + +### Invalid SSL Certificate {#400} + +A [Category][] of `OAuthCredentials` and an [Error Code][] of `400` indicates that one of the following issues occurred: + +- An invalid [CertificatePath][] and [CertificatePassword][] combination has been provided in the [GmailOAuthCertificateCredentials][] +- The [CertificatePath][] in the [GmailOAuthCertificateCredentials][] points to an invalid [SSL][] certificate +- The [CertificatePath][] in the [GmailOAuthCertificateCredentials][] points to a non-existant file +- The [CertificatePath][] in the [GmailOAuthCertificateCredentials][] points to a folder +- The [CertificatePath][] in the [GmailOAuthCertificateCredentials][] is longer than the system defined maximum length (typically 32,767) +- The [CertificatePath][] in the [GmailOAuthCertificateCredentials][] contains only whitespace (i.e. `" "`) or contains the NUL character (i.e. `\0`) +- The [CertificatePath][] in the [GmailOAuthCertificateCredentials][] contains leading spaces +- The [CertificatePath][] in the [GmailOAuthCertificateCredentials][] contains invalid characters (i.e. `"`, `*`, `?`, `\|`, `<`, `>`, `:`, `\`, `/`) +- Access is denied to the file at the [CertificatePath][] in the [GmailOAuthCertificateCredentials][] + +#### Message Format + +```json +"The 'Certificate Path' ('') or 'Certificate Password' is invalid. The 'Gmail OAuth Certificate Credentials' in 'Email Session Details' has been provided an incorrect certificate path or certificate password. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +- `` is the path pointing to the [SSL][] certificate + +#### How to Fix + +Provide a [CertificatePath][] which is a valid file path pointing to a valid [SSL][] certificate and ensure that the [CertificatePassword][] is correct in the [GmailOAuthCertificateCredentials][]. + +*** + +### Invalid Gmail Client Credentials {#401} + +A [Category][] of `OAuthCredentials` and an [Error Code][] of `401` indicates that an invalid [FromAddress][] and [ClientId][] combination has been provided in the [GmailOAuthCertificateCredentials][]. + +#### Message Format + +```json +"The 'From Address' ('}') or 'Client Id' ('') is invalid. The 'Gmail OAuth Certificate Credentials' in 'Email Session Details' has been provided an incorrect email address or Client ID. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +- `` is the email address to send the email from +- `` is the client ID for the client application + +#### How to Fix + +Provide a valid [FromAddress][] and ensure that the [ClientId][] is correct in the [GmailOAuthCertificateCredentials][]. + +*** + +## Properties + +### Exception Type + +The type of the exception (i.e. `EmailSessionException`) + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Message + +The exception message, providing information about the exception that occurred. + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Category + +The category of the exception, which is used to categorise an exception if there are multiple reasons that the exception can occur. + +For `EmailSessionException` there are the following categories: + +- `Socket` +- `SSL` +- `UserCredentials` +- `OAuthCredentials` + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Error Code + +The error code for the exception, which is used to indicate the reason that the exception occurred, if there are multiple reasons that the exception can occur. + +For `EmailSessionException` there are the following error codes: + +- [100][InvalidPortProvided] - indicates that the [Port][] provided in the [ServerDetails][] is invalid +- [101][InvalidHostProvided] - indicates that the [Host][] provided in the [ServerDetails][] is invalid +- [200][SslWrappedConnectionRequired] - indicates that [SSL][] is required +- [201][SslWrappedConnectionNotSupported] - indicates that an [SSL][] connection is not supported +- [300][InvalidUsernameAndPassword] - indicates that the [Username][] and [Password][] combination provided in in the [UserCredentials][] is invalid +- [400][InvalidSslCertificate] - indicates that the [CertificatePath][] or [CertificatePassword][] provided in the [GmailOAuthCertificateCredentials][] is invalid +- [401][InvalidClientCredentials] - indicates that the [FromAddress][] or [ClientId][] provided in the [GmailOAuthCertificateCredentials][] is invalid + +| | | +|-----------|---------------------------| +| Data Type | [EmailSessionErrorCode][] | + +### Help Link + +The URL for the relevant section of this exception's help page. + +| | | +|-----------|------------| +| Data Type | [String][] | + +## Remarks + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [BasicEmailSessionDetails][] +- [EmailSessionErrorCode][] +- [GmailOAuthCertificateCredentials][] +- [GmailSessionDetails][] +- [Int32][] +- [ServerDetails][] +- [String][] +- [UserCredentials][] + +### Related Concepts + +- [Exceptions][] +- [Working with Email][] + +### Related Blocks + +- [Send Email Using SMTP Server Block][] +- [Send Email Using Gmail Block][] +- [Send Email Using Microsoft 365 Block][] + +### External Documentation + +None + +[InvalidPortProvided]: {{< ref "#100">}} +[InvalidHostProvided]: {{< ref "#101">}} +[SslWrappedConnectionRequired]: {{< ref "#200">}} +[SslWrappedConnectionNotSupported]: {{< ref "#201">}} +[InvalidUsernameAndPassword]: {{< ref "#300">}} +[InvalidSslCertificate]: {{< ref "#400">}} +[InvalidClientCredentials]: {{< ref "#401">}} +[Message]: {{< ref "#message" >}} +[Category]: {{< ref "#category" >}} +[Error Code]: {{< ref "#error-code" >}} + +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[GmailSessionDetails]: {{< url path="Cortex.Reference.DataTypes.GoogleWorkspace.Gmail.GmailSessionDetails.MainDoc" >}} +[GmailOAuthCertificateCredentials]: {{< url path="Cortex.Reference.DataTypes.GoogleWorkspace.Gmail.Authentication.OAuth.GmailOAuthCertificateCredentials.MainDoc" >}} +[CertificatePath]: {{< url path="Cortex.Reference.DataTypes.GoogleWorkspace.Gmail.Authentication.OAuth.GmailOAuthCertificateCredentials.CertificatePath" >}} +[CertificatePassword]: {{< url path="Cortex.Reference.DataTypes.GoogleWorkspace.Gmail.Authentication.OAuth.GmailOAuthCertificateCredentials.CertificatePassword" >}} +[FromAddress]: {{< url path="Cortex.Reference.DataTypes.GoogleWorkspace.Gmail.Authentication.OAuth.GmailOAuthCertificateCredentials.FromAddress" >}} +[ClientId]: {{< url path="Cortex.Reference.DataTypes.GoogleWorkspace.Gmail.Authentication.OAuth.GmailOAuthCertificateCredentials.ClientId" >}} +[ServerDetails]: {{< url path="Cortex.Reference.DataTypes.SessionDetails.ServerDetails.MainDoc" >}} +[Host]: {{< url path="Cortex.Reference.DataTypes.SessionDetails.ServerDetails.Host" >}} +[Port]: {{< url path="Cortex.Reference.DataTypes.SessionDetails.ServerDetails.Port" >}} +[UseSsl]: {{< url path="Cortex.Reference.DataTypes.SessionDetails.ServerDetails.UseSsl" >}} +[UserCredentials]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.MainDoc" >}} +[Username]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.Username" >}} +[Password]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.Password" >}} +[BasicEmailSessionDetails]: {{< url path="Cortex.Reference.DataTypes.Email.BasicEmailSessionDetails.MainDoc" >}} +[EmailSessionErrorCode]: {{< url path="Cortex.Reference.DataTypes.Email.EmailSessionErrorCode.MainDoc" >}} +[Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.MainDoc" >}} +[Send Email Using SMTP Server Block]: {{< url path="Cortex.Reference.Blocks.Email.SendEmail.SendEmailUsingSmtpServer.MainDoc" >}} +[Send Email Using Gmail Block]: {{< url path="Cortex.Reference.Blocks.GoogleWorkspace.Gmail.SendEmail.SendEmailUsingGmail.MainDoc" >}} +[Send Email Using Microsoft 365 Block]: {{< url path="Cortex.Reference.Blocks.Microsoft365.Outlook.SendEmail.SendEmailUsingMicrosoft365.MainDoc" >}} + +[Working with Email]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Email.MainDoc" >}} + +[CRL]: {{< url path="Cortex.Reference.Glossary.A-E.CRL" >}} +[SSL]: {{< url path="Cortex.Reference.Glossary.P-T.SSL" >}} diff --git a/content/en/docs/2024.11/Reference/Exceptions/files-and-folders/_index.md b/content/en/docs/2024.11/Reference/Exceptions/files-and-folders/_index.md new file mode 100644 index 000000000..74b90995f --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/files-and-folders/_index.md @@ -0,0 +1,5 @@ +--- +title: "Files & Folders" +linkTitle: "Files & Folders" +description: "Exceptions related to Files and Folders" +--- diff --git a/content/en/docs/2024.11/Reference/Exceptions/files-and-folders/invalid-folder-name-exception.md b/content/en/docs/2024.11/Reference/Exceptions/files-and-folders/invalid-folder-name-exception.md new file mode 100644 index 000000000..531a06843 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/files-and-folders/invalid-folder-name-exception.md @@ -0,0 +1,55 @@ +--- +title: "InvalidFolderNameException" +linkTitle: "InvalidFolderNameException" +description: "The exception thrown when a folder name is invalid." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.FilesAndFolders.InvalidFolderNameException)

+{{% alert type="information" title="Information" %}}Improvements to this page are planned for the future.{{% /alert %}} + +## Description + +The exception thrown when specifying an invalid folder name. + +## Reasons + +### Invalid folder name provided + +The folder name provided is invalid. + +#### Message Format + +The format of the exception message is as follows: + +```json +"The '' given was ''; this is not a valid folder name. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the name of the property containing the folder name which threw this exception. +* `` is the value of the property, i.e. the folder name, which was invalid. + +#### How to fix + +Ensure that the folder name provided is a valid folder name; please see [Naming Conventions][] for more information. + +## Remarks + +### Known Limitations + +None + +## See Also + +### External Documentation + +* [Naming Files, Paths, and Namespaces][NamingFilesPathsAndNamespaces] + +[FolderConcepts]: {{}} +[WhatIsAPath]: {{}} +[Naming Conventions]: {{}} +[NamingFilesPathsAndNamespaces]: {{}} diff --git a/content/en/docs/2024.11/Reference/Exceptions/files-and-folders/invalid-path-exception.md b/content/en/docs/2024.11/Reference/Exceptions/files-and-folders/invalid-path-exception.md new file mode 100644 index 000000000..f5bcc9286 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/files-and-folders/invalid-path-exception.md @@ -0,0 +1,78 @@ +--- +title: "InvalidPathException" +linkTitle: "InvalidPathException" +description: "The exception thrown when a file or folder path is invalid." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.FilesAndFolders.InvalidPathException)

+{{% alert type="information" title="Information" %}}Improvements to this page are planned for the future.{{% /alert %}} + +## Description + +The exception thrown when specifying an invalid file or folder [path][WhatIsAPath]. + +## Reasons + + +### Path provided is invalid + +The provided [path][WhatIsAPath] has an incorrect syntax, or has illegal characters, or is too long. + +#### Message Format + +The format of the exception message is as follows: + +```json +"The '' given was ''; this is not a valid folder path. Please see the 'InnerException' property for more details. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the name of the property containing the path which threw this exception. +* `` is the value of the property, i.e. the path, which was invalid. + +#### How to fix + +Ensure that the [path][WhatIsAPath] provided has no incorrect syntax or illegal characters, and that it is not too long; see [Paths][] for more information. + +### Path provided must represent a folder and that path must not point to an existing file + +The provided [path][WhatIsAPath] needs to be a folder, and must not point to an existing file. + +#### Message Format + +The format of the exception message is as follows: + +```json +"The '' given was ''; this is not a valid folder path. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the name of the property containing the path which threw this exception. +* `` is the value of the property, i.e. the path, which was invalid. + +#### How to fix + +Ensure that the [path][WhatIsAPath] provided is a valid folder path and does not point to an existing file; see [Paths][] for more information. + +## Remarks + +### Known Limitations + +None + +## See Also + +### External Documentation + +* [Naming Files, Paths, and Namespaces][NamingFilesPathsAndNamespaces] + +[FolderConcepts]: {{}} +[WhatIsAPath]: {{}} +[NamingFilesPathsAndNamespaces]: {{}} +[Paths]: {{}} diff --git a/content/en/docs/2024.11/Reference/Exceptions/files-and-folders/operation-failed-exception.md b/content/en/docs/2024.11/Reference/Exceptions/files-and-folders/operation-failed-exception.md new file mode 100644 index 000000000..419e837ef --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/files-and-folders/operation-failed-exception.md @@ -0,0 +1,83 @@ +--- +title: "OperationFailedException" +linkTitle: "OperationFailedException" +description: "The exception thrown when a file or folder operation failed for one or more paths." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.FilesAndFolders.OperationFailedException)

+{{% alert type="information" title="Information" %}}Improvements to this page are planned for the future.{{% /alert %}} + +## Description + +The exception thrown when a file or folder operation failed for one or more paths. + +## Reasons + +### A single exception was thrown + +An exception was thrown, such as [InvalidFolderNameException][] or [InvalidPathException][], while performing an operation on the path provided. + +#### Message Format + +The format of the message is as follows: + +```json +"Failed to the path. Please see the 'PathExceptions' property for details on why the operation failed. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the action taking place when the operation failed (i.e. `copy`, `create`, `delete`, `duplicate`, `get`, `move`, `read`, `rename`, `search`, `write`). + +#### How to fix + +The exception that caused the operation to fail can be seen in the `PathExceptions` property; for how to fix, please refer to the exception's HelpLink. + +### Multiple exceptions were thrown + +Multiple exceptions were thrown, such as [InvalidFolderNameException][] or [InvalidPathException][], while performing operations on the paths provided. + +#### Message Format + +The format of the message is as follows: + +```json +"Failed to of paths. Please see the 'PathExceptions' property for details on why each operation failed. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the action taking place when the operation failed (i.e. `copy`, `create`, `delete`, `duplicate`, `get`, `move`, `read`, `rename`, `search`, `write`). +* `` is the number of paths that were attempted to be operated on where the operation failed (e.g. `2`). +* `` is the total number of paths that were attempted to be operated on (e.g. `5`). + +#### How to fix + +The exceptions that caused the operations to fail can be seen in the `PathExceptions` property; for how to fix, please refer to each exception's HelpLink. + +## Remarks + +### Known Limitations + +None + +## See Also + +### External Documentation + +None + +[Message]: {{< ref "#message" >}} + +[Blocks]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.MainDoc" >}} +[Block Properties]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.MainDoc" >}} +[Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[InvalidFolderNameException]: {{}} +[InvalidPathException]: {{}} diff --git a/content/en/docs/2024.11/Reference/Exceptions/flows/_index.md b/content/en/docs/2024.11/Reference/Exceptions/flows/_index.md new file mode 100644 index 000000000..1a32688c8 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/flows/_index.md @@ -0,0 +1,5 @@ +--- +title: "Flows" +linkTitle: "Flows" +description: "Exceptions related to Flows" +--- diff --git a/content/en/docs/2024.11/Reference/Exceptions/flows/blocks/_index.md b/content/en/docs/2024.11/Reference/Exceptions/flows/blocks/_index.md new file mode 100644 index 000000000..7d6adb34d --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/flows/blocks/_index.md @@ -0,0 +1,5 @@ +--- +title: "Blocks" +linkTitle: "Blocks" +description: "Exceptions related to Blocks" +--- diff --git a/content/en/docs/2024.11/Reference/Exceptions/flows/blocks/block-timeout-exception.md b/content/en/docs/2024.11/Reference/Exceptions/flows/blocks/block-timeout-exception.md new file mode 100644 index 000000000..4b967e686 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/flows/blocks/block-timeout-exception.md @@ -0,0 +1,175 @@ +--- +title: "BlockTimeoutException" +linkTitle: "BlockTimeoutException" +description: "The exception thrown when the execution of a block exceeds the specified block timeout." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.Flows.Blocks.BlockTimeoutException)

+ +## Description + +The exception thrown when the execution of a block exceeds the specified block timeout. + +## Reasons + +### Block Timeout Reached + +Executing the block took longer than the [Block Timeout][]. + +#### Message Format + +The format of the [Message][] is as follows: + +```json +"The block timed out because its execution time reached the Block Timeout of milliseconds. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the [block timeout][Block Timeout Property] for the block that threw the exception, in milliseconds. + +#### How to fix + +Ensure the action that the block is taking is likely to complete within the given [TimePeriod][]. + +## Properties + +### Exception Type + +The type of the exception (i.e. `BlockTimeoutException`). + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Message + +The exception message, providing information about the exception that occurred. + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Block Timeout + +The period of time in which a block must finish execution before timing out. + +| | | +|-----------|------------| +| Data Type | [TimePeriod][] | + +### ExecutionId + +The Id of the [execution][WhatIsAnExecution] running the block that has timed out. + +| | | +|-----------|------------| +| Data Type | [Guid][] | + +### FlowId + +The Id of the [flow][WhatIsAFlow] containing the block that has timed out. + +| | | +|-----------|------------| +| Data Type | [Guid][] | + +### WorkspaceId + +The Id of the [workspace][WhatIsAWorkspace] containing the block that has timed out. + +| | | +|-----------|------------| +| Data Type | [Guid][] | + +### BlockId + +The Id of the [block][WhatIsABlock] that has timed out. + +| | | +|-----------|------------| +| Data Type | [Guid][] | + +### Help Link + +The URL for the relevant section of this exception's help page. + +| | | +|-----------|------------| +| Data Type | [String][] | + +## Remarks + +### Known Limitations + +None + +## See Also + +### Related Data Types + +* Date & Time + * [TimePeriod][] +* Text + * [String][] +* Other + * [Guid][] + +### Related Concepts + +* [Blocks][] +* [Block Properties][] +* [Block Timeout Property][Block Timeout] +* [Exceptions][] +* [Executions][] +* [Flows][] +* [Workspaces][] + +### Related Blocks + +All Blocks except: + +* Flows + * [Start Flow][] + * [End Flow][] +* Schedules + * [Wait For Duration][] +* Workspaces + * [Start Workspace][] + * [End Workspace][] + +### External Documentation + +None + +[Start Flow]: {{< url path="Cortex.Reference.Blocks.Flows.StartFlow.StartFlow.MainDoc" >}} +[End Flow]: {{< url path="Cortex.Reference.Blocks.Flows.EndFlow.EndFlow.MainDoc" >}} + +[Wait For Duration]: {{< url path="Cortex.Reference.Blocks.Schedules.WaitFor.WaitForDuration.MainDoc" >}} + +[Start Workspace]: {{< url path="Cortex.Reference.Blocks.Workspaces.StartWorkspace.StartWorkspace.MainDoc" >}} +[End Workspace]: {{< url path="Cortex.Reference.Blocks.Workspaces.EndWorkspace.EndWorkspace.MainDoc" >}} + +[Block Timeout Property]: {{}} +[InnerException]: {{< ref "#innerexception" >}} +[Message]: {{< ref "#message" >}} + +[Blocks]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.MainDoc" >}} +[Block Properties]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.MainDoc" >}} +[Block Timeout]: {{}} +[Executions]: {{}} +[Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.MainDoc" >}} +[Flows]: {{}} +[Workspaces]: {{}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Guid]: {{}} +[TimePeriod]: {{< url path="Cortex.Reference.DataTypes.DateAndTime.TimePeriod.MainDoc" >}} + +[WhatIsABlock]: {{}} +[WhatIsAFlow]: {{}} +[WhatIsAnExecution]: {{}} +[WhatIsAWorkspace]: {{}} \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Exceptions/flows/blocks/invalid-block-timeout-exception.md b/content/en/docs/2024.11/Reference/Exceptions/flows/blocks/invalid-block-timeout-exception.md new file mode 100644 index 000000000..438e2e8ac --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/flows/blocks/invalid-block-timeout-exception.md @@ -0,0 +1,145 @@ +--- +title: "InvalidBlockTimeoutException" +linkTitle: "InvalidBlockTimeoutException" +description: "The exception thrown when a block timeout is invalid." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.Flows.Blocks.InvalidBlockTimeoutException)

+ +## Description + +The exception thrown when a block timeout is invalid. + +## Reasons + +### Block Timeout Out of Range + +The [Block Timeout][Block Timeout Property] provided for the block is either negative or greater than the maximum value allowed, which is the [Int32][] maximum of `2,147,483,647`. + +#### Message Format + +The format of the [Message][] is as follows: + +```json +"The provided TimePeriod for the BlockTimeout equates to milliseconds which is invalid; it must be a non-negative value less than 2,147,483,647. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the timeout of the affected block in milliseconds. + +#### How to fix + +Ensure that the affected block has a block timeout that is non-negative and less than the maximum allowed [TimePeriod][]. + +## Properties + +### Exception Type + +The type of the exception (i.e. `InvalidBlockTimeoutException`). + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Message + +The exception message, providing information about the exception that occurred. + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Block ID + +The ID of the block with an invalid timeout. + +| | | +|-----------|------------| +| Data Type | [Guid][] | + +### Duration + +The duration in milliseconds that the block timeout provided to the block evaluated to. + +| | | +|-----------|------------| +| Data Type | [Double][] | + +### Help Link + +The URL for the relevant section of this exception's help page. + +| | | +|-----------|------------| +| Data Type | [String][] | + +## Remarks + +### Known Limitations + +None + +## See Also + +### Related Data Types + +* Date & Time + * [TimePeriod][] +* Numbers + * [Double][] + * [Int32][] +* Text + * [String][] +* Other + * [Guid][] + +### Related Concepts + +* [Blocks][] +* [Block Properties][] +* [Block Timeout Property][Block Timeout] +* [Exceptions][] + +### Related Blocks + +All Blocks except: + +* Flows + * [Start Flow][] + * [End Flow][] +* Schedules + * [Wait For Duration][] +* Workspaces + * [Start Workspace][] + * [End Workspace][] + +### External Documentation + +None + +[Start Flow]: {{< url path="Cortex.Reference.Blocks.Flows.StartFlow.StartFlow.MainDoc" >}} +[End Flow]: {{< url path="Cortex.Reference.Blocks.Flows.EndFlow.EndFlow.MainDoc" >}} + +[Wait For Duration]: {{< url path="Cortex.Reference.Blocks.Schedules.WaitFor.WaitForDuration.MainDoc" >}} + +[Start Workspace]: {{< url path="Cortex.Reference.Blocks.Workspaces.StartWorkspace.StartWorkspace.MainDoc" >}} +[End Workspace]: {{< url path="Cortex.Reference.Blocks.Workspaces.EndWorkspace.EndWorkspace.MainDoc" >}} + +[Blocks]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.MainDoc" >}} +[Block Timeout]: {{}} +[Block Properties]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.MainDoc" >}} +[Block Timeout Property]: {{}} + +[Message]: {{< ref "#message" >}} + +[Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.MainDoc" >}} + +[Double]: {{}} +[Guid]: {{}} +[Int32]: {{}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[TimePeriod]: {{< url path="Cortex.Reference.DataTypes.DateAndTime.TimePeriod.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Exceptions/flows/blocks/invalid-property-value-exception.md b/content/en/docs/2024.11/Reference/Exceptions/flows/blocks/invalid-property-value-exception.md new file mode 100644 index 000000000..1141eb770 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/flows/blocks/invalid-property-value-exception.md @@ -0,0 +1,210 @@ +--- +title: "InvalidPropertyValueException" +linkTitle: "InvalidPropertyValueException" +description: "The exception thrown when a property is provided with an invalid value." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.Flows.Blocks.InvalidPropertyValueException)

+ +## Description + +The exception thrown when a [property][] is provided with an invalid value. + +This exception wraps the [InnerException][] that occurred when the value provided for the [property][] was used. + +## Reasons + +### Value Is Invalid + +An invalid value was provided for the [property][] with the specified [PropertyId][]. + +#### Message Format + +The format of the [Message][] is as follows: + +```json +"The value of the property could not be evaluated." +``` + +#### How to fix + +Provide a valid value for the [property][] with the specified [PropertyId][], as instructed by the [Message][]. + +More information on why the value is invalid, or instruction on how to provide a valid value, may be present in the message of the [InnerException][]. + +## Properties + +### Exception Type + +The type of the exception (i.e. `InvalidPropertyValueException`). + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Message + +The exception message, providing information about the exception that occurred. + +For this exception, the message will always be the same. More information on why the value is invalid, or instruction on how to provide a valid value, may be present in the message of the [InnerException][]. + +| | | +|-----------|------------| +| Data Type | [String][] | + +### PropertyId + +The Id of the [property][] that has been provided an invalid value. + +| | | +|-----------|----------| +| Data Type | [Guid][] | + +### InnerException + +The exception that occurred when the value provided for the [property][] was used. + +This may contain more information on why the value is invalid, or instruction on how to provide a valid value in its message. + +| | | +|-----------|---------------| +| Data Type | [Exception][] | + +### Help Link + +The URL for the relevant section of this exception's help page. + +| | | +|-----------|------------| +| Data Type | [String][] | + +## Remarks + +### Known Limitations + +Currently, only the [PropertyId][] has been included in the exception. In future, we will look to include the name and Id of the [block][], the name and value of the [property][], as well as allowing the exception to contain a link to take you directly to the offending value. + +## See Also + +### Related Data Types + +* [String][] +* [Guid][] +* [Exception][] + +### Related Concepts + +* [Blocks][] +* [Block Properties][] +* [Exceptions][] + +### Related Blocks + +* Dictionaries + * [Add Item With Key][] + * [Contains Item With Key And Value][] + * [Contains Item With Value][] + * [Get Count Of Items With Value][] + * [Remove Item With Value][] + * [Remove Items With Value][] + * [Set All Items][] + * [Set Item With Key][] + * [Set Item With Value][] + * [Set Items With Key][] + * [Set Items With Value][] +* Files & Folders + * [Read All Lines][] + * [Read All Text][] + * [Search File][] + * [Search Files][] + * [Write All Lines][] + * [Write All Text][] +* Lists + * [Add Item At Beginning][] + * [Add Item At End][] + * [Add Item At Index][] + * [Contains Item With Value][List Contains Item With Value] + * [Get Count Of Items With Value][List Get Count Of Items With Value] + * [Get Index Of Item With Value][] + * [Get Indexes Of Items With Value][] + * [Remove Item With Value][List Remove Item With Value] + * [Remove Items With Value][List Remove Items With Value] + * [Set Item At Beginning][] + * [Set Item At End][] + * [Set Item At Index][] + * [Set Item With Value][List Set Item With Value] + * [Set Items With Value][List Set Items With Value] +* Loops + * [For Loop][] +* Queues + * [Enqueue Item][] +* Text + * [Convert To Camel Case][] + * [Convert To Lower Case][] + * [Convert To Pascal Case][] + * [Convert To Title Case][] + * [Convert To Upper Case][] + +### External Documentation + +None + +[Message]: {{< ref "#message" >}} +[PropertyId]: {{< ref "#propertyid" >}} +[InnerException]: {{< ref "#innerexception" >}} + +[Add Item With Key]: {{< url path="Cortex.Reference.Blocks.Dictionaries.AddItem.AddItemWithKey.MainDoc" >}} +[Contains Item With Key And Value]: {{< url path="Cortex.Reference.Blocks.Dictionaries.ContainsItem.ContainsItemWithKeyAndValue.MainDoc" >}} +[Contains Item With Value]: {{< url path="Cortex.Reference.Blocks.Dictionaries.ContainsItem.ContainsItemWithValue.MainDoc" >}} +[Get Count Of Items With Value]: {{< url path="Cortex.Reference.Blocks.Dictionaries.GetCount.GetCountOfItemsWithValue.MainDoc" >}} +[Remove Item With Value]: {{< url path="Cortex.Reference.Blocks.Dictionaries.RemoveItem.RemoveItemWithValue.MainDoc" >}} +[Remove Items With Value]: {{< url path="Cortex.Reference.Blocks.Dictionaries.RemoveItem.RemoveItemsWithValue.MainDoc" >}} +[Set All Items]: {{< url path="Cortex.Reference.Blocks.Dictionaries.SetItem.SetAllItems.MainDoc" >}} +[Set Item With Key]: {{< url path="Cortex.Reference.Blocks.Dictionaries.SetItem.SetItemWithKey.MainDoc" >}} +[Set Item With Value]: {{< url path="Cortex.Reference.Blocks.Dictionaries.SetItem.SetItemWithValue.MainDoc" >}} +[Set Items With Key]: {{< url path="Cortex.Reference.Blocks.Dictionaries.SetItem.SetItemsWithKey.MainDoc" >}} +[Set Items With Value]: {{< url path="Cortex.Reference.Blocks.Dictionaries.SetItem.SetItemsWithValue.MainDoc" >}} + +[Read All Lines]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.ReadFile.ReadAllLines.MainDoc" >}} +[Read All Text]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.ReadFile.ReadAllText.MainDoc" >}} +[Search File]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.SearchFile.SearchFile.MainDoc" >}} +[Search Files]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.SearchFile.SearchFiles.MainDoc" >}} +[Write All Lines]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.WriteFile.WriteAllLines.MainDoc" >}} +[Write All Text]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.WriteFile.WriteAllText.MainDoc" >}} + +[Add Item At Beginning]: {{< url path="Cortex.Reference.Blocks.Lists.AddItem.AddItemAtBeginning.MainDoc" >}} +[Add Item At End]: {{< url path="Cortex.Reference.Blocks.Lists.AddItem.AddItemAtEnd.MainDoc" >}} +[Add Item At Index]: {{< url path="Cortex.Reference.Blocks.Lists.AddItem.AddItemAtIndex.MainDoc" >}} +[List Contains Item With Value]: {{< url path="Cortex.Reference.Blocks.Lists.ContainsItem.ContainsItemWithValue.MainDoc" >}} +[List Get Count Of Items With Value]: {{< url path="Cortex.Reference.Blocks.Lists.GetCount.GetCountOfItemsWithValue.MainDoc" >}} +[Get Index Of Item With Value]: {{< url path="Cortex.Reference.Blocks.Lists.GetIndex.GetIndexOfItemWithValue.MainDoc" >}} +[Get Indexes Of Items With Value]: {{< url path="Cortex.Reference.Blocks.Lists.GetIndex.GetIndexesOfItemsWithValue.MainDoc" >}} +[List Remove Item With Value]: {{< url path="Cortex.Reference.Blocks.Lists.RemoveItem.RemoveItemWithValue.MainDoc" >}} +[List Remove Items With Value]: {{< url path="Cortex.Reference.Blocks.Lists.RemoveItem.RemoveItemsWithValue.MainDoc" >}} +[Set Item At Beginning]: {{< url path="Cortex.Reference.Blocks.Lists.SetItem.SetItemAtBeginning.MainDoc" >}} +[Set Item At End]: {{< url path="Cortex.Reference.Blocks.Lists.SetItem.SetItemAtEnd.MainDoc" >}} +[Set Item At Index]: {{< url path="Cortex.Reference.Blocks.Lists.SetItem.SetItemAtIndex.MainDoc" >}} +[List Set Item With Value]: {{< url path="Cortex.Reference.Blocks.Lists.SetItem.SetItemWithValue.MainDoc" >}} +[List Set Items With Value]: {{< url path="Cortex.Reference.Blocks.Lists.SetItem.SetItemsWithValue.MainDoc" >}} + +[For Loop]: {{< url path="Cortex.Reference.Blocks.Loops.For.ForLoop.MainDoc" >}} + +[Enqueue Item]: {{< url path="Cortex.Reference.Blocks.Queues.EnqueueItem.EnqueueItemBlock.MainDoc" >}} + +[Convert To Camel Case]: {{< url path="Cortex.Reference.Blocks.Text.ConvertTo.ConvertToCamelCase.MainDoc" >}} +[Convert To Lower Case]: {{< url path="Cortex.Reference.Blocks.Text.ConvertTo.ConvertToLowerCase.MainDoc" >}} +[Convert To Pascal Case]: {{< url path="Cortex.Reference.Blocks.Text.ConvertTo.ConvertToPascalCase.MainDoc" >}} +[Convert To Title Case]: {{< url path="Cortex.Reference.Blocks.Text.ConvertTo.ConvertToTitleCase.MainDoc" >}} +[Convert To Upper Case]: {{< url path="Cortex.Reference.Blocks.Text.ConvertTo.ConvertToUpperCase.MainDoc" >}} + +[Blocks]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.MainDoc" >}} +[block]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.WhatIsABlock.MainDoc" >}} +[Block Properties]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.MainDoc" >}} +[property]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Exception]: {{< url path="Cortex.Reference.DataTypes.Exceptions.Exception.MainDoc" >}} +[Guid]: {{< url path="Cortex.Reference.DataTypes.Other.Guid.MainDoc" >}} + +[Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Exceptions/flows/execution/_index.md b/content/en/docs/2024.11/Reference/Exceptions/flows/execution/_index.md new file mode 100644 index 000000000..5ab4664a7 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/flows/execution/_index.md @@ -0,0 +1,5 @@ +--- +title: "Execution" +linkTitle: "Execution" +description: "Exceptions related to the Execution of Flows" +--- diff --git a/content/en/docs/2024.11/Reference/Exceptions/flows/execution/flow-execution-cancelled-exception.md b/content/en/docs/2024.11/Reference/Exceptions/flows/execution/flow-execution-cancelled-exception.md new file mode 100644 index 000000000..b3e981b39 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/flows/execution/flow-execution-cancelled-exception.md @@ -0,0 +1,99 @@ +--- +title: "FlowExecutionCancelledException" +linkTitle: "FlowExecutionCancelledException" +description: "The exception thrown when the child execution has been cancelled before execution has been completed." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.Flows.Execution.FlowExecutionCancelledException)

+ +## Description + +The exception thrown when the child execution has been cancelled before the execution has been completed. + +## Reasons + +### The Child Execution Has Been Cancelled + +The child execution has been cancelled before the execution has completed. + +#### Message Format + +The format of the [Message][] is as follows: + +```json +"The flow execution has been cancelled!" +``` + +#### How to fix + +Allow the execution to fully complete. + +## Properties + +### Exception Type + +The type of the exception (i.e. `FlowExecutionCancelledException`). + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Message + +The exception message, providing information about the exception that occurred. + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Flow Id + +The id of the flow where the execution has been cancelled. + +| | | +|-----------|------------| +| Data Type | [Guid][] | + +### Execution Id + +The id of the execution that has been cancelled. + +| | | +|-----------|------------| +| Data Type | [Guid][] | + +## See Also + +### Related Data Types + +* [String][] +* [Guid][] + +### Related Concepts + +* [Exceptions][] +* [Executions][] +* [Flows][] + +### Related Blocks + +* [RunFlowAsync][] + +### External Documentation + +None + +[Message]: {{< ref "#message" >}} + +[Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.MainDoc" >}} +[Executions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Executions.MainDoc" >}} +[Flows]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Flows.MainDoc" >}} + +[Exception]: {{< url path="Cortex.Reference.DataTypes.Exceptions.Exception.MainDoc" >}} + +[Guid]: {{< url path="Cortex.Reference.DataTypes.Other.Guid.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[RunFlowAsync]: {{< url path="Cortex.Reference.Blocks.Flows.RunFlow.RunFlowAsync.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Exceptions/flows/execution/invalid-default-values-exception.md b/content/en/docs/2024.11/Reference/Exceptions/flows/execution/invalid-default-values-exception.md new file mode 100644 index 000000000..ee26bfcb9 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/flows/execution/invalid-default-values-exception.md @@ -0,0 +1,42 @@ +--- +title: "InvalidDefaultValuesException" +linkTitle: "InvalidDefaultValuesException" +description: "The exception thrown if an exception occurs when initialising the default value for a variable." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.Flows.Execution.InvalidDefaultValuesException)

+{{% alert type="information" title="Information" %}}Improvements to this page are planned for the future.{{% /alert %}} + +## Description + +The exception thrown if an exception occurs when initialising the default value for a variable. + +## Reasons + +### Invalid Default Variable Value + +The default value provided for a variable is invalid. + +#### Message Format + +```json +"Failed to initialise variables due to invalid default values. Please see the 'Variables' property for details on why each variable threw." +``` + +#### How to fix + +Ensure that the variables shown in the `Variables` property have valid default values, by fixing the inner exception for each variable shown. + +## Remarks + +### Known Limitations + +None + +## See Also + +### External Documentation + +None diff --git a/content/en/docs/2024.11/Reference/Exceptions/flows/execution/invalid-input-variables-exception.md b/content/en/docs/2024.11/Reference/Exceptions/flows/execution/invalid-input-variables-exception.md new file mode 100644 index 000000000..17bf5fe56 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/flows/execution/invalid-input-variables-exception.md @@ -0,0 +1,140 @@ +--- +title: "InvalidInputVariablesException" +linkTitle: "InvalidInputVariablesException" +description: "The exception thrown when trying to run a flow with invalid input variables." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.Flows.Execution.InvalidInputVariablesException)

+ +## Description + +The exception thrown when trying to run a [flow][] with invalid [Input Variables][]. + +## Reasons + +### Missing Input Variables + +This exception is thrown when a [flow][] is run and there are missing [Input Variables][]; any missing variables will be shown in the [InvalidVariableErrors][] property. + +#### Message Format + +The format of the [Message][] is as follows: + +```json +"Couldn't initialize variable store because of invalid input variables." +``` + +#### How to fix + +Add the variables referenced in [InvalidVariableErrors][]. + +### Extra Input Variables + +This exception is thrown when a [flow][] is run and extra [Input Variables][] have been provided; any extra variables will be shown in the [InvalidVariableErrors][] property. + +#### Message Format + +The format of the [Message][] is as follows: + +```json +"Couldn't initialize variable store because of invalid input variables." +``` + +#### How to fix + +Remove the variables referenced in [InvalidVariableErrors][]. + +### Input Variables of an Invalid Type + +This exception is thrown when a [flow][] is run and there are [Input Variables][] that are of an invalid type; any variables with an invalid type will be shown in the [InvalidVariableErrors][] property. + +#### Message Format + +The format of the [Message][] is as follows: + +```json +"Couldn't initialize variable store because of invalid input variables." +``` + +#### How to fix + +Ensure the value provided for the variables referenced in [InvalidVariableErrors][] is either the same type as, or can be implicitly cast to the type defined in the default value for that [Input Variable][Input Variables]. + +## Properties + +### Exception Type + +The type of the exception (i.e. `InvalidInputVariablesException`). + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Message + +The exception message, providing information about the exception that occurred. + +| | | +|-----------|------------| +| Data Type | [String][] | + +### InvalidVariableErrors + +A [List][]<InputVariableError> containing each invalid variable passed into the flow. + +| | | +|-----------|----------| +| Data Type | [List][]<InputVariableError> | + +### Help Link + +The URL for the relevant section of this exception's help page. + +| | | +|-----------|------------| +| Data Type | [String][] | + +## Remarks + +### Known Limitations + +None + +## See Also + +### Related Data Types + +None + +### Related Concepts + +* [Flows][] +* [Variables][] +* [Exceptions][] + +### Related Blocks + +* Flows + * [Run Flow][] + * [Run Flow Async][] + +### External Documentation + +None + +[Message]: {{< ref "#message" >}} +[InvalidVariableErrors]: {{< ref "#invalidvariableerrors" >}} + +[Run Flow]: {{< url path="Cortex.Reference.Blocks.Flows.RunFlow.RunFlow.MainDoc" >}} +[Run Flow Async]: {{< url path="Cortex.Reference.Blocks.Flows.RunFlow.RunFlowAsync.MainDoc" >}} + +[List]: {{< url path="Cortex.Reference.DataTypes.Collections.List.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[Variables]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.MainDoc" >}} +[Input Variables]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.WhatIsAVariable.FlowInputVariable" >}} +[Flows]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Flows.MainDoc" >}} +[flow]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Flows.WhatIsAFlow.MainDoc" >}} +[Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Exceptions/flows/execution/output-port-not-connected-exception.md b/content/en/docs/2024.11/Reference/Exceptions/flows/execution/output-port-not-connected-exception.md new file mode 100644 index 000000000..92369eabd --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/flows/execution/output-port-not-connected-exception.md @@ -0,0 +1,47 @@ +--- +title: "OutputPortNotConnectedException" +linkTitle: "OutputPortNotConnectedException" +description: "The exception thrown when an execution tries to go through an output port which is not connected." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.Flows.Execution.OutputPortNotConnectedException)

+{{% alert type="information" title="Information" %}}Improvements to this page are planned for the future.{{% /alert %}} + +## Description + +The exception thrown when an execution tries to go through an [output port][Block Connections] which is not connected. + +## Reasons + +### Output port not connected + +The [output port][Block Connections] of a block in a flow is not connected to another block. + +#### Message Format + +The format of the message is as follows: + +```json +"Block output port isn't connected. +Please click the HelpLink for more information on how to fix this." +``` + +#### How to fix + +Ensure that the block that threw this exception has its output port connected to another block; see [Block Connections][] for more information. + +## Remarks + +### Known Limitations + +None + +## See Also + +### External Documentation + +None + +[Block Connections]: {{}} \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Exceptions/flows/execution/runtime-translation-exception.md b/content/en/docs/2024.11/Reference/Exceptions/flows/execution/runtime-translation-exception.md new file mode 100644 index 000000000..6048bb2a4 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/flows/execution/runtime-translation-exception.md @@ -0,0 +1,45 @@ +--- +title: "RuntimeTranslationException" +linkTitle: "RuntimeTranslationException" +description: "The exception thrown when a block is found to have errors within its properties while executing a flow." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.Flows.Execution.RuntimeTranslationException)

+{{% alert type="information" title="Information" %}}Improvements to this page are planned for the future.{{% /alert %}} + +## Description + +The exception thrown when a block is found to have errors within its properties while executing a flow. +## Reasons + +### Block has errors during flow execution + +A block was found to have errors within its properties during a flow execution. These errors would normally appear as a [Message][WhatIsAMessage], but were not caught when the flow execution was started. This can occur when debugging a flow and [setting the next block to execute][SetNextBlockToExecute] to a block that has errors within its properties, and has no path from the [Start Flow][Start Flow block] block. + +#### Message Format + +```json +"The block could not be executed because there are errors within its properties. Note that this was not caught when the flow was started either because there is no path from the start of the flow to this block, or the property values in the block." +``` + +#### How to fix + +Ensure that the errors in the properties within the block which caused this exception to be thrown, as seen within the `FailedTranslationSummary` property of this exception, are fixed (e.g. ensure that all variables referenced in the block properties are declared and initialised as expected). + +## Remarks + +### Known Limitations + +None + +## See Also + +### External Documentation + +None + +[WhatIsAMessage]: {{}} +[SetNextBlockToExecute]: {{}} +[Start Flow block]: {{}} \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Exceptions/flows/flow-exception.md b/content/en/docs/2024.11/Reference/Exceptions/flows/flow-exception.md new file mode 100644 index 000000000..d1439839d --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/flows/flow-exception.md @@ -0,0 +1,50 @@ +--- +title: "FlowException" +linkTitle: "FlowException" +description: "The exception thrown by the Throw New Flow Exception block." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.Flows.FlowException)

+{{% alert type="information" title="Information" %}}Improvements to this page are planned for the future.{{% /alert %}} + +## Description + +The exception thrown by the [Throw New Flow Exception][ThrowNewFlowException Block] block. + +## Reasons + +### Thrown by block + +An instance of the [Throw New Flow Exception][ThrowNewFlowException Block] block has been executed in a flow. + +#### Message Format + +The format of the exception message is as follows: + +```json +"" +``` + +where: + +* `` is the user-defined message specified by the `Message` property of the [Throw New Flow Exception][ThrowNewFlowException Block] block. + +#### How to fix + +Ensure that the issue which caused the execution to progress through to the [Throw New Flow Exception][ThrowNewFlowException Block] block is resolved. + +## Remarks + +### Known Limitations + +None + +## See Also + +### External Documentation + +None + +[ThrowNewFlowException Block]: {{}} diff --git a/content/en/docs/2024.11/Reference/Exceptions/http/_index.md b/content/en/docs/2024.11/Reference/Exceptions/http/_index.md new file mode 100644 index 000000000..9d4e1a2b8 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/http/_index.md @@ -0,0 +1,5 @@ +--- +title: "Http" +linkTitle: "Http" +description: "Exceptions related to HTTP" +--- diff --git a/content/en/docs/2024.11/Reference/Exceptions/http/http-authorisation-exception.md b/content/en/docs/2024.11/Reference/Exceptions/http/http-authorisation-exception.md new file mode 100644 index 000000000..831750b98 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/http/http-authorisation-exception.md @@ -0,0 +1,111 @@ +--- +title: "HttpAuthorisationException" +linkTitle: "HttpAuthorisationException" +description: "The exception thrown when an issue occurs during the authorisation process when working with HTTP." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.Http.HttpAuthorisationException)

+{{% alert type="information" title="Information" %}}Improvements to this page are planned for the future.{{% /alert %}} + +## Description + +The exception thrown when an issue occurs during the authorisation process when working with HTTP. + +There are multiple reasons that this exception can be thrown: + +* [Invalid Access Token Uri][] +* [Invalid Client ID or Client Secret][] +* [Invalid Resource Owner Username or Password][] + +## Reasons + +### Invalid Access Token Uri {#httpoauthcredentialsaccesstokenuri} + +An invalid access token uri was provided. + +#### Message Format + +The format of the message is as follows: + +```json +"Invalid 'Access Token Uri' (\"\") provided. A token could not be retrieved from the provided 'Access Token Uri'. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the uri provided from which the block is attempting to retrieve an access token. + +#### How to fix + +Ensure that the uri provided is valid. + +### Invalid Client ID or Client Secret {#httpoauthclientcredentialsclientauthentication} + +The client ID or client secret in the [HttpOAuthClientCredentials][] provided are invalid. + +#### Message Format + +The format of the message is as follows: + +```json +"Invalid '' (\"\") or '' provided. A token could not be retrieved from the provided 'Access Token Uri' (\"\") using these credentials. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the name of the property containing the possibly invalid client ID for the credentials provided. +* `` is the value of the possibly invalid client ID for the credentials provided. +* `` is the name of property containing the possibly invalid client secret for the credentials provided. +* `` is the uri provided from which the block is attempting to retrieve an access token. + +#### How to fix + +Ensure that the credentials provided for client authentication contains a valid client ID and client secret. + +### Invalid Resource Owner Username or Password {#httpoauthpasswordcredentialsresourceowner} + +The username or password for the resource owner in the [HttpOAuthPasswordCredentials][] provided are invalid. + +#### Message Format + +The format of the message is as follows: + +```json +"Invalid '' (\"\") or '' provided. A token could not be retrieved from the provided 'Access Token Uri' (\"\") using these credentials. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the name of the property containing the possibly invalid username for the credentials provided. +* `` is the value of the possibly invalid username for the credentials provided. +* `` is the name of property containing the possibly invalid password for the credentials provided. +* `` is the uri provided from which the block is attempting to retrieve an access token. + +#### How to fix + +Ensure that the credentials provided for the resource owner contains a valid username and password. + +## Remarks + +### Known Limitations + +None + +## See Also + +### External Documentation + +None + +[Invalid Access Token Uri]: {{}} +[Invalid Resource Owner Username or Password]: {{}} +[Invalid Client ID or Client Secret]: {{}} + +[HttpOAuthCredentials]: {{}} +[HttpOAuthClientCredentials]: {{}} +[HttpOAuthPasswordCredentials]: {{}} \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Exceptions/http/invalid-request-exception.md b/content/en/docs/2024.11/Reference/Exceptions/http/invalid-request-exception.md new file mode 100644 index 000000000..e9206f8a5 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/http/invalid-request-exception.md @@ -0,0 +1,335 @@ +--- +title: "InvalidRequestException" +linkTitle: "InvalidRequestException" +description: "The exception thrown when an issue occurs with an HTTP request or a SOAP request." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.Http.InvalidRequestException)

+{{% alert type="information" title="Information" %}}Improvements to this page are planned for the future.{{% /alert %}} + +## Description + +The exception thrown when an issue occurs with an [HTTP request][HttpRequest] or a [SOAP request][SoapRequest]. + +There are multiple reasons that this exception can be thrown: + +* [Invalid Headers in HTTP Request][] +* [Invalid Headers in SOAP Request][] +* [Invalid HTTP Version in HTTP Request][] +* [Invalid HTTP Version in SOAP Request][] +* [Invalid Request Body in HTTP Request][] +* [Invalid Request Envelope in SOAP Request][] +* [Invalid Request Verb in HTTP Request][] +* [Invalid Uri in HTTP Request][] +* [Invalid Uri in SOAP Request][] + +## Reasons + +### Invalid Headers in HTTP Request {#httprequestheaders} + +The [Headers][HttpRequestHeaders] provided in the [HttpRequest][HttpRequest] are invalid (e.g. a header key in the headers is empty). + +#### Message Format + +The format of the message can be one of the following: + +```json +"Invalid 'Headers' provided. A header key has been provided which is empty. +Please click the HelpLink for more information on how to fix this." +``` + +or + +```json +"Invalid 'Headers' provided. A restricted header key (\"\") that cannot be assigned to its property. +Please click the HelpLink for more information on how to fix this." +``` + +or + +```json +"Invalid 'Headers' provided. A restricted header key (\"\") has been provided a header value (\"\") that cannot be converted to its property type (\"\"). +Please click the HelpLink for more information on how to fix this." +``` + +or + +[//]: # (forbidden header key route, implemented and technically valid though no header keys are currently set as forbidden so will never be thrown) + +```json +"Invalid 'Headers' provided. A restricted header key (\"\") has been provided which is forbidden. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the specific header key in the request headers which may be invalid or contain an invalid value. +* `` is the value assigned to the header with the given key, which may be invalid. +* `` is the expected data type for the header value. + +#### How to fix + +* Ensure that the header key is not empty. +* Ensure that the value provided for the header is valid (e.g. the `"Host"` key expects string in a uri format, so `"27/03/2024"` would not be a valid value, while `"https://www.example.com"` would). +* Ensure that the value provided for the header is of the correct type (e.g. the `"Date"` key expects a value that can convert to [DateTime][DateTime], so `0` is not a valid value, while a string of format `"dd-mm-yyyy"` such as `"13-03-2024"` is). +* Ensure that no forbidden header keys are provided in the request. + +[//]: # (TODO add a list of forbidden header keys, and explain what forbidden header keys are - i.e. they can't be set) + +### Invalid Headers in SOAP Request {#soaprequestheaders} + +The [Headers][SoapRequestHeaders] provided in the [SoapRequest][SoapRequest] are invalid (e.g. a header key in the headers is empty). + +#### Message Format + +The format of the message can be one of the following: + +```json +"Invalid 'Headers' provided. A header key has been provided which is empty. +Please click the HelpLink for more information on how to fix this." +``` + +or + +```json +"Invalid 'Headers' provided. A restricted header key (\"\") that cannot be assigned to its property. +Please click the HelpLink for more information on how to fix this." +``` + +or + +```json +"Invalid 'Headers' provided. A restricted header key (\"\") has been provided a header value (\"\") that cannot be converted to its property type (\"\"). +Please click the HelpLink for more information on how to fix this." +``` + +or + +[//]: # (forbidden header key route, implemented and technically valid though no header keys are currently set as forbidden so will never be thrown) + +```json +"Invalid 'Headers' provided. A restricted header key (\"\") has been provided which is forbidden. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the specific header key in the request headers which may be invalid or contain an invalid value. +* `` is the value assigned to the header with the given key, which may be invalid. +* `` is the expected data type for the header value. + +#### How to fix + +* Ensure that the header key is not empty. +* Ensure that the value provided for the header is valid (e.g. the `"Host"` key expects string in a uri format, so `"27/03/2024"` would not be a valid value, while `"https://www.example.com"` would). +* Ensure that the value provided for the header is of the correct type (e.g. the `"Date"` key expects a value that can convert to [DateTime][DateTime], so `0` is not a valid value, while a string of format `"dd-mm-yyyy"` such as `"13-03-2024"` is). +* Ensure that no forbidden header keys are provided in the request. + +[//]: # (TODO add a list of forbidden header keys, and explain what forbidden header keys are - i.e. they can't be set) + +### Invalid HTTP Version in HTTP Request {#httprequesthttpversion} + +The [HttpVersion][HttpRequestHttpVersion] provided in the [HttpRequest][HttpRequest] is invalid. + +#### Message Format + +The format of the message is as follows: + +```json +"Invalid '' provided. The '' \"\" is not a valid Http Request Version. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the property containing the invalid HTTP version value. +* `` is the invalid value for the HTTP version. + +#### How to fix + +Ensure that the [HttpVersion][HttpRequestHttpVersion] provided for the [HttpRequest][HttpRequest] is a valid version (i.e. `HTTP10` or `HTTP11`). + +### Invalid HTTP Version in SOAP Request {#soaprequesthttpversion} + +The [HttpVersion][SoapRequestHttpVersion] provided in the [SoapRequest][SoapRequest] is invalid. + +#### Message Format + +The format of the message is as follows: + +```json +"Invalid '' provided. The '' \"\" is not a valid Http Request Version. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the property containing the invalid HTTP version value. +* `` is the invalid value for the HTTP version. + +#### How to fix + +Ensure that the [HttpVersion][SoapRequestHttpVersion] provided for the [SoapRequest][SoapRequest] is a valid version (i.e. `HTTP10` or `HTTP11`). + +### Invalid Request Body in HTTP Request {#httprequestbody} + +The [Body][HttpRequestBody] provided for the [HttpRequest][HttpRequest] was invalid (i.e. a body was provided for a [Verb][HttpRequestVerb] which does not accept a body, or the body was invalid for the [ContentType][HttpRequestContentType]). + +#### Message Format + +The format of the message can be one of the following: + +```json +"Invalid 'Body' provided. The 'Verb' \"\" should not be provided a 'Body'. +Please click the HelpLink for more information on how to fix this." +``` + +or + +```json +"Invalid 'Body' provided. The 'Body' does not match the 'Content Type' \"\". +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the request verb of the errored request. +* `` is the content type of the request (e.g. XML, JSON, etc). + +#### How to fix + +* Ensure that no [Body][HttpRequestBody] is provided for `GET` and `HEAD` requests. +* Ensure that the content of the [Body][HttpRequestBody] is valid for the [ContentType][HttpRequestContentType] specified (e.g. the [Body][HttpRequestBody] is valid JSON if the [ContentType][HttpRequestContentType] is `application/json`). + +### Invalid Request Envelope in SOAP Request {#soaprequestsoapmessageenvelope} + +The [Envelope][RequestEnvelope] provided in the [SoapMessage][SoapRequestSoapMessage] for the [SoapRequest][SoapRequest] is not valid XML. + +#### Message Format + +The format of the message is as follows: + +```json +"Invalid 'Envelope' provided. The 'Envelope' is not valid XML. +Please click the HelpLink for more information on how to fix this." +``` + +#### How to fix + +Ensure that the [Envelope][RequestEnvelope] provided is valid XML. + +### Invalid Request Verb in HTTP Request {#httprequestverb} + +The [Verb][HttpRequestVerb] provided for the [HttpRequest][HttpRequest] is invalid. + +#### Message Format + +The format of the message is as follows: + +```json +"Invalid '' provided. The '' \"\" is not a valid Request Verb. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the name of the property containing the invalid verb. +* `` is the value of the invalid verb. + +#### How to fix + +Ensure that the [Verb][HttpRequestVerb] provided is a valid [RequestVerb][RequestVerb] (i.e. `GET`, `POST`, `PUT`, `DELETE`, `PATCH` or `HEAD`). + +### Invalid Uri in HTTP Request {#httprequesturi} + +The [Uri][HttpRequestUri] provided for the [HttpRequest][HttpRequest] cannot be parsed. + +#### Message Format + +The format of the message is as follows: + +```json +"Invalid '' (\"\") provided. The '' has been provided a uri that cannot be parsed. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the name of the property containing the invalid uri. +* `` is the value of the uri provided that could not be parsed. + +#### How to fix + +Ensure that the [Uri][HttpRequestUri] provided is a valid uri (i.e. it is of the [correct format][UriSyntax] and contains no [invalid characters][UriInvalidCharacters]). + +### Invalid Uri in SOAP Request {#soaprequesturi} + +The [Uri][SoapRequestUri] provided for the [SoapRequest][SoapRequest] cannot be parsed. + +#### Message Format + +The format of the message is as follows: + +```json +"Invalid '' (\"\") provided. The '' has been provided a uri that cannot be parsed. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the name of the property containing the invalid uri. +* `` is the value of the uri provided that could not be parsed. + +#### How to fix + +Ensure that the [Uri][SoapRequestUri] provided is a valid uri (i.e. it is of the [correct format][UriSyntax] and contains no [invalid characters][UriInvalidCharacters]). + +## Remarks + +### Known Limitations + +None + +## See Also + +### External Documentation + +* [RFC 3986 Section 2: Characters][UriInvalidCharacters] +* [Syntax of Uniform Resource Identifiers (URIs)][UriSyntax] + +[Invalid Headers in HTTP Request]: {{}} +[Invalid Headers in SOAP Request]: {{}} +[Invalid HTTP Version in HTTP Request]: {{}} +[Invalid HTTP Version in SOAP Request]: {{}} +[Invalid Request Body in HTTP Request]: {{}} +[Invalid Request Envelope in SOAP Request]: {{}} +[Invalid Uri in HTTP Request]: {{}} +[Invalid Uri in SOAP Request]: {{}} +[Invalid Request Verb in HTTP Request]: {{}} + +[DateTime]: {{}} +[Enum]: {{}} + +[HttpRequest]: {{}} +[HttpRequestBody]: {{}} +[HttpRequestContentType]: {{}} +[HttpRequestHeaders]: {{}} +[HttpRequestUri]: {{}} +[HttpRequestVerb]: {{}} +[HttpRequestHttpVersion]: {{}} + +[SoapRequest]: {{}} +[SoapRequestHeaders]: {{}} +[SoapRequestHttpVersion]: {{}} +[SoapRequestSoapMessage]: {{}} +[SoapRequestUri]: {{}} + +[RequestEnvelope]: {{}} +[RequestVerb]: {{}} +[HttpRequestVersion]: {{}} +[Execute Soap Request]: {{}} + +[UriSyntax]: {{}} +[UriInvalidCharacters]: {{}} \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Exceptions/http/invalid-response-exception.md b/content/en/docs/2024.11/Reference/Exceptions/http/invalid-response-exception.md new file mode 100644 index 000000000..9334d380a --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/http/invalid-response-exception.md @@ -0,0 +1,49 @@ +--- +title: "InvalidResponseException" +linkTitle: "InvalidResponseException" +description: "The exception thrown when an issue occurs with an HTTP response." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.Http.InvalidResponseException)

+{{% alert type="information" title="Information" %}}Improvements to this page are planned for the future.{{% /alert %}} + +## Description + +The exception thrown when an issue occurs with an HTTP response. + +## Reasons + +### Response envelope in SOAP response is not valid XML + +The [response envelope][ResponseEnvelope] returned from a SOAP response is not valid XML. + +#### Message Format + +The format of the exception message is as follows: + +```json +"Invalid 'Response Envelope' returned. The 'Response Envelope' is not valid XML. +Please click the HelpLink for more information on how to fix this." +``` + +#### How to fix + +The SOAP Web Service returning the [SoapResponse][] must be fixed to return valid XML in the [response envelope][ResponseEnvelope]. + +## Remarks + +### Known Limitations + +None + +## See Also + +### External Documentation + +None + +[ExecuteSOAPRequestBlock]: {{}} +[SoapResponse]: {{}} +[ResponseEnvelope]: {{}} \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Exceptions/impersonation/_index.md b/content/en/docs/2024.11/Reference/Exceptions/impersonation/_index.md new file mode 100644 index 000000000..87ab370f1 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/impersonation/_index.md @@ -0,0 +1,5 @@ +--- +title: "Impersonation" +linkTitle: "Impersonation" +description: "Exceptions related to Impersonation" +--- diff --git a/content/en/docs/2024.11/Reference/Exceptions/impersonation/run-as-exception.md b/content/en/docs/2024.11/Reference/Exceptions/impersonation/run-as-exception.md new file mode 100644 index 000000000..f4b0eab52 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/impersonation/run-as-exception.md @@ -0,0 +1,136 @@ +--- +title: "RunAsException" +linkTitle: "RunAsException" +description: "The exception thrown when the provided UserCredentials has an invalid domain, username or password." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.Impersonation.RunAsException)

+ +## Description + +The exception thrown when the provided [UserCredentials][] is invalid. + +## Reasons + +### Invalid Domain, Username Or Password {#1326} + +The [Run As Property][] has been provided a [UserCredentials][] object that has an invalid domain, username or password. + +#### Message Format + +The format of the [Message][] is as follows: + +```json +"Impersonation failed with Win32 error code: , see the inner exception for more information. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the native error code present in the [Win32Exception][] inner-exception. + +#### How to fix + +Make sure that the provided domain, username and password in the [UserCredentials][] are correct. + +## Properties + +### Exception Type + +The type of the exception (i.e. `RunAsException`). + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Message + +The exception message, providing information about the exception that occurred. + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Error Code + +The error code for the exception, which is used to indicate the reason that the exception occurred. + +For `RunAsException` there are the following error codes: + +- [1326][InvalidCredentialsProvided] - indicates that the domain, user name or password is incorrect. + +| | | +|-----------|---------------------------| +| Data Type | [Int32][] | + +### Inner Exception + +The Inner Exception is the [Exception][] instance that caused the current [Exception][], and contains specific details about the problem. + +| | | +|-----------|------------| +| Data Type | [Win32Exception][] | + +### Help Link + +The URL for the relevant section of this exception's help page. + +| | | +|-----------|------------| +| Data Type | [String][] | + +## See Also + +### Related Data Types + +* [UserCredentials][] +* [String][] +* [Int32][] + +### Related Concepts + +* [Exceptions][] +* [Common Properties][] + +### Related Blocks + +* [All Blocks][] + +Except: + +* [End Flow][] +* [End Workspace][] +* [Handle Flow Exception][] +* [Start Flow][] +* [Wait For Duration][] + +### External Documentation + +* [Win32Exception][] + +[Message]: {{< ref "#message" >}} +[InvalidCredentialsProvided]: {{< ref "#1326">}} + +[All Blocks]: {{< url path="Cortex.Reference.Blocks.MainDoc" >}} + +[Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.MainDoc" >}} +[Exception]: {{< url path="Cortex.Reference.DataTypes.Exceptions.Exception.MainDoc" >}} +[FlowException]: {{< url path="Cortex.Reference.Exceptions.Flows.FlowException.MainDoc" >}} +[RunAsException]: {{< url path="Cortex.Reference.Exceptions.Impersonation.RunAsException.MainDoc" >}} +[Win32Exception]: {{< url path="MSDocs.DotNet.Api.System.ComponentModel.Win32Exception" >}} +[Common Properties]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.CommonProperties.MainDoc" >}} +[Run As Property]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.CommonProperties.RunAsProperty" >}} + +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[UserCredentials]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.MainDoc" >}} + +[Scopes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Scopes.MainDoc" >}} + +[End Flow]: {{< url path="Cortex.Reference.Blocks.Flows.EndFlow.EndFlow.MainDoc" >}} +[End Workspace]: {{< url path="Cortex.Reference.Blocks.Workspaces.EndWorkspace.EndWorkspace.MainDoc" >}} +[Handle Flow Exception]: {{< url path="Cortex.Reference.Blocks.Exceptions.HandleFlow.HandleFlowException.MainDoc" >}} +[Start Flow]: {{< url path="Cortex.Reference.Blocks.Flows.StartFlow.StartFlow.MainDoc" >}} +[Wait For Duration]: {{< url path="Cortex.Reference.Blocks.Schedules.WaitFor.WaitForDuration.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Exceptions/loops/_index.md b/content/en/docs/2024.11/Reference/Exceptions/loops/_index.md new file mode 100644 index 000000000..9a6b00125 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/loops/_index.md @@ -0,0 +1,5 @@ +--- +title: "Loops" +linkTitle: "Loops" +description: "Exceptions related to Loops." +--- diff --git a/content/en/docs/2024.11/Reference/Exceptions/loops/infinite-loop-exception.md b/content/en/docs/2024.11/Reference/Exceptions/loops/infinite-loop-exception.md new file mode 100644 index 000000000..356445d64 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/loops/infinite-loop-exception.md @@ -0,0 +1,173 @@ +--- +title: "InfiniteLoopException" +linkTitle: "InfiniteLoopException" +description: "The exception thrown when an infinite loop can occur." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.Loops.InfiniteLoopException)

+ +## Description + +The exception thrown when an infinite loop can occur. + +There are multiple reasons that this exception can be thrown: + +* [Increment Is Zero][IncrementIsZero] +* [Increment Is Negative][IncrementIsNegative] +* [Increment Is Positive][IncrementIsPositive] + +## Reasons + +### Increment Is Zero {#100} + +A [Category][] of `"Increment"`and an [Error Code][] of `100` indicates that a zero increment value was provided. + +#### Message Format + +The format of the [Message][] can be one of the following: + +* If a zero value was provided and a negative value was expected + +```json +"The 'Increment' provided (0) causes an infinite loop. It must be a negative value. +Please click the HelpLink for more information on how to fix this." +``` + +* If a zero value was provided and a positive value was expected + +```json +"The 'Increment' provided (0) causes an infinite loop. It must be a positive value. +Please click the HelpLink for more information on how to fix this." +``` + +#### How to fix + +Provide a negative or positive value for the increment as instructed by the [Message][]. + +### Increment Is Negative {#101} + +A [Category][] of `"Increment"`and an [Error Code][] of `101` indicates that a negative increment value was provided when a positive value was required. + +#### Message Format + +The format of the [Message][] is as follows: + +```json +"The 'Increment' provided ({NegativeIncrement}) causes an infinite loop. It must be a positive value. +Please click the HelpLink for more information on how to fix this." +``` + +#### How to fix + +Provide a positive value for the increment as instructed by the [Message][]. + +### Increment Is Positive {#102} + +A [Category][] of `"Increment"`and an [Error Code][] of `102` indicates that a positive increment value was provided when a negative value was required. + +#### Message Format + +The format of the [Message][] is as follows: + +```json +"The 'Increment' provided ({PositiveIncrement}) causes an infinite loop. It must be a negative value. +Please click the HelpLink for more information on how to fix this." +``` + +#### How to fix + +Provide a negative value for the increment as instructed by the [Message][]. + +## Properties + +### Exception Type + +The type of the exception (i.e. `InfiniteLoopException`). + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Message + +The exception message, providing information about the exception that occurred. + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Category + +The category of the exception, which is used to categorise an exception if there are multiple reasons that the exception can occur. + +For `InfiniteLoopException` the only category is `Increment`. + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Error Code + +The error code for the exception, which is used to indicate the reason that the exception occurred, if there are multiple reasons that the exception can occur. + +For `InfiniteLoopException` there are three error codes: + +* [100][IncrementIsZero] - indicates the increment is zero, but should be either negative or positive +* [101][IncrementIsNegative] - indicates the increment is negative, but should be positive +* [102][IncrementIsPositive] - indicates the increment is positive, but should be negative + +| | | +|-----------|---------------------------| +| Data Type | [InfiniteLoopErrorCode][] | + +### Help Link + +The URL for the relevant section of this exception's help page. + +| | | +|-----------|------------| +| Data Type | [String][] | + +## Remarks + +### Known Limitations + +None + +## See Also + +### Related Data Types + +* [String][] +* [InfiniteLoopErrorCode][] + +### Related Concepts + +* [Exceptions][] +* [Working with Loops][] + +### Related Blocks + +* [For Loop][] + +### External Documentation + +None + +[Message]: {{< ref "#message" >}} +[Category]: {{< ref "#category" >}} +[Error Code]: {{< ref "#error-code" >}} +[IncrementIsZero]: {{< ref "#100" >}} +[IncrementIsNegative]: {{< ref "#101" >}} +[IncrementIsPositive]: {{< ref "#102" >}} + +[For Loop]: {{< url path="Cortex.Reference.Blocks.Loops.For.ForLoop.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[InfiniteLoopErrorCode]: {{< url path="Cortex.Reference.DataTypes.Loops.InfiniteLoopErrorCode.MainDoc" >}} + +[Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.MainDoc" >}} +[Working with Loops]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Loops.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Exceptions/powershell/_index.md b/content/en/docs/2024.11/Reference/Exceptions/powershell/_index.md new file mode 100644 index 000000000..be92b8a05 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/powershell/_index.md @@ -0,0 +1,5 @@ +--- +title: "PowerShell" +linkTitle: "PowerShell" +description: "Exceptions related to PowerShell" +--- diff --git a/content/en/docs/2024.11/Reference/Exceptions/powershell/ps-exception.md b/content/en/docs/2024.11/Reference/Exceptions/powershell/ps-exception.md new file mode 100644 index 000000000..758fafbb7 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/powershell/ps-exception.md @@ -0,0 +1,53 @@ +--- +title: "PSException" +linkTitle: "PSException" +description: "The exception thrown when a terminating error occurs while executing scripts over WinRM." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.PowerShell.PSException)

+{{% alert type="information" title="Information" %}}Improvements to this page are planned for the future.{{% /alert %}} + +## Description + +The exception thrown when a terminating error occurs while executing scripts over WinRM. + +There is a single reason that this exception can be thrown: + +* [Invalid Script][] + +## Reasons + +### Invalid Script {#invalidscript} + +The PowerShell script provided is invalid (i.e. it contains unexpected or invalid tokens, or it is missing a necessary token). + +#### Message Format + +The format of the exception message is as follows: + +```json +"Invalid 'Script' provided. See the Data property for details on why the script failed to execute. +Please click the help link below for more information on how to fix this." +``` + +#### How to fix + +Fix the problems that caused the termination of the script during execution, as shown in the `Data` property under the `"Errors"` key. + +## Remarks + +### Known Limitations + +None + +## See Also + +### External Documentation + +None + +[Invalid Script]: {{}} + +[MS PowerShell]: {{}} \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Exceptions/powershell/ps-remoting-exception.md b/content/en/docs/2024.11/Reference/Exceptions/powershell/ps-remoting-exception.md new file mode 100644 index 000000000..9560e829f --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/powershell/ps-remoting-exception.md @@ -0,0 +1,337 @@ +--- +title: "PSRemotingException" +linkTitle: "PSRemotingException" +description: "The exception thrown when access is denied to a host when attempting to execute scripts over WinRM." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.PowerShell.PSRemotingException)

+{{% alert type="information" title="Information" %}}Improvements to this page are planned for the future.{{% /alert %}} + +## Description + +The exception thrown when access is denied to a host when attempting to execute scripts over WinRM. + +There are multiple reasons that this exception can be thrown: + +* [Access Denied][AccessDenied] +* [Client Authentication Disabled][ClientAuthenticationDisabled] +* [Host Contains Invalid Characters][HostContainsInvalidCharacters] +* [Invalid Certificate][InvalidCertificate] +* [Invalid Credentials][InvalidCredentials] +* [Invalid DNS][InvalidDNS] +* [Invalid Domain][InvalidDomain] +* [Invalid Host IP Address][InvalidHostIPAddress] +* [Invalid Host Name][InvalidHostName] +* [Invalid Port][InvalidPort] +* [Invalid Protocol][InvalidProtocol] +* [Invalid PSConfiguration][InvalidPSConfiguration] + +## Reasons + +### Access Denied {#accessdenied} + +Access to the host provided was denied. + +#### Message Format + +The format of the exception message can be one of the following: + +```json +"Access denied to the 'Host' (\"\"). +Please click the help link below for more information on how to fix this." +``` + +or + +```json +"Access denied to the 'Host' (\"\"). Authentication is disabled on the Host's WinRM service. +Please click the help link below for more information on how to fix this." +``` + +[//]: # (can't demo this message. relies on machine restart just before) + +where: + +* `` is the value of the [Host][ServerDetailsHost] property provided in the [ServerDetails][ServerDetails]. +* `` is the authentication mechanism (i.e. `Kerberos` or `Negotiate`) used for connecting to the host. + +#### How to fix + +* Ensure that the credentials provided are valid for a user account with permissions to execute PowerShell scripts or cmdlets on the [Host][ServerDetailsHost]. +* Ensure that the authentication mechanism (i.e. `Kerberos` or `Negotiate`) used is not disabled on the host machine's WinRM service. + +### Client Authentication Disabled {#clientauthenticationdisabled} + +[//]: # (never tested or thrown? added docs since we technically can throw this. ) + +Kerberos authentication is disabled on the server where the [Execution Service][] is running. + +#### Message Format + +The format of the exception message is as follows: + +```json +"Access denied to the 'Host' (\"\"). Kerberos Authentication is disabled on the WinRM client on the server where the Cortex Execution Service is running (). +Please click the help link below for more information on how to fix this." +``` + +where: + +* `` is the value of the [Host][ServerDetailsHost] property provided in the [ServerDetails][ServerDetails]. +* `` is the NetBIOS name of the server where the [Execution Service][] is running. + +#### How to fix + +If possible, enable Kerberos Authentication on the server where the [Execution Service][Execution Service] is running. + +### Host Contains Invalid Characters {#hostcontainsinvalidcharacters} + +The hostname provided contains invalid characters. + +#### Message Format + +The format of the exception message is as follows: + +```json +"Invalid 'Host' (\"\") provided. The 'Host' has been provided a hostname that contains invalid characters. +Please click the help link below for more information on how to fix this." +``` + +where: + +* `` is the value of the [Host][ServerDetailsHost] property provided in the [ServerDetails][ServerDetails]. + +#### How to fix + +Ensure that the hostname does not contain invalid characters; see [Naming Conventions][NamingConventions] for more information. + +### Invalid Certificate {#invalidcertificate} + +The SSL certificate provided is invalid (e.g. the hostname provided does not match the common name on the certificate). + +#### Message Format + +The format of the exception message is as follows: + +```json +"Access denied to the 'Host' (\"\"). See the data property for details on why the a security error has occurred. +Please click the help link below for more information on how to fix this." +``` + +* `` is the value of the [Host][ServerDetailsHost] property provided in the [ServerDetails][ServerDetails]. + +#### How to fix + +Ensure that certificate provided is valid. + +### Invalid Credentials {#invalidcredentials} + +[//]: # (never tested or thrown, added docs since we technically can throw this) + +The credentials provided for accessing the host are invalid. + +#### Message Format + +The format of the exception message is as follows: + +```json +"Access denied to the 'Host' (\"\"). The 'Username' or 'Password' provided is incorrect, or requires a 'Domain'. +Please click the help link below for more information on how to fix this." +``` + +where: + +* `` is the value of the [Host][ServerDetailsHost] property provided in the [ServerDetails][ServerDetails]. + +#### How to fix + +Ensure that the credentials provided are valid. + +### Invalid DNS {#invaliddns} + +The hostname provided could not be resolved. + +#### Message Format + +The format of the exception message is as follows: + +```json +"Access denied to the 'Host' (\"\"). The 'Host' has been provided a hostname that could not be resolved. +Please click the help link below for more information on how to fix this." +``` + +where: + +* `` is the value of the [Host][ServerDetailsHost] property provided in the [ServerDetails][ServerDetails]. + +#### How to fix + +Ensure that the hostname provided is valid. + +### Invalid Domain {#invaliddomain} + +The domain for the authentication credentials provided is invalid. + +#### Message Format + +The format of the exception message is as follows: + +```json +"Access denied to the 'Host' (\"\"). The 'Domain' (\"\") is unavailable on the network. +Please click the help link below for more information on how to fix this." +``` + +where: + +* `` is the value of the [Host][ServerDetailsHost] property provided in the [ServerDetails][ServerDetails]. +* `` is the domain for the authentication credentials provided, which is invalid. + +#### How to fix + +Ensure that the domain provided is valid. + +### Invalid Host IP Address {#invalidhostipaddress} + +The hostname provided is in the form of an invalid or untrusted IP address. + +#### Message Format + +The format of the exception message is as follows: + +```json +"Access denied to the 'Host' (\"\"). The 'Host' has been provided an IP address which is either invalid or has not been added to the WinRM TrustedHosts List on the server where the Cortex Execution Service is running (). +Please click the help link below for more information on how to fix this." +``` + +where: + +* `` is the value of the [Host][ServerDetailsHost] property provided in the [ServerDetails][ServerDetails]. +* `` is the NetBIOS name of the server where the [Execution Service][] is running. + +#### How to fix + +Ensure that the IP address provided for the [Host][ServerDetailsHost] is valid, and that this IP address has been added to the WinRM TrustedHosts List on the server where the [Execution Service][] is running. + +### Invalid Host Name {#invalidhostname} + +The hostname provided is invalid. + +#### Message Format + +The format of the exception message is as follows: + +```json +"Access denied to the 'Host' (\"\"). The 'Host' provided is unavailable on the network. +Please click the help link below for more information on how to fix this." +``` + +where: + +* `` is the value of the [Host][ServerDetailsHost] property provided in the [ServerDetails][ServerDetails]. + +#### How to fix + +Ensure that the hostname provided is valid (i.e. that it exists and is available on the network). + +### Invalid Port {#invalidport} + +The port provided is invalid. + +#### Message Format + +The format of the exception message is as follows: + +```json +"Access denied to the 'Host' (\"\"). The 'Host' is either not running, not listening on 'Port' , or requires communication over SSL. +Please click the help link below for more information on how to fix this." +``` + +where: + +* `` is the value of the [Host][ServerDetailsHost] property provided in the [ServerDetails][ServerDetails]. +* `` is the provided port on the host to connect (e.g. `443`, `5986`, etc.); see [ServerDetails][] for more information. + +#### How to fix + +Ensure that the port provided is a valid port (e.g. `443`, `5986`, etc.). + +### Invalid Protocol {#invalidprotocol} + +The [Host][ServerDetailsHost] requires communication over SSL, while the [UseSSL][ServerDetailsUseSSL] property in the [ServerDetails][ServerDetails] provided is `false`. + +#### Message Format + +The format of the exception message is as follows: + +```json +"Access denied to the 'Host' (\"\"). The 'Host' requires communication over SSL. +Please click the help link below for more information on how to fix this." +``` + +where: + +* `` is the value of the [Host][ServerDetailsHost] property provided in the [ServerDetails][ServerDetails]. + +#### How to fix + +Ensure that the [UseSSL][ServerDetailsUseSSL] property for the [ServerDetails][ServerDetails] is `true` and that valid credentials and a valid certificate are provided for access to the host. + +### Invalid PSConfiguration {#invalidpsconfiguration} + +The value of the [PSConfiguration][] property in the [PowerShellSessionDetails][] provided does not match any of the configured PowerShell session configurations on the [Host][ServerDetailsHost]. + +#### Message Format + +The format of the exception message is as follows: + +```json +"Access denied to the 'Host' (\"\"). The 'PSConfiguration' (\"\") has not been configured on the 'Host'. +Please click the help link below for more information on how to fix this." +``` + +where: + +* `` is the value of the [Host][ServerDetailsHost] property provided in the [ServerDetails][ServerDetails]. +* `` is the value of the [PSConfiguration][] property in the [PowerShellSessionDetails][] provided (i.e. the PowerShell session configuration that would be used by the host), which is invalid. + +#### How to fix + +Ensure that the [PSConfiguration][] provided matches a configured PowerShell session configuration on the [Host][ServerDetailsHost]. + +## Remarks + +### Known Limitations + +None + +## See Also + +### External Documentation + +* [Naming conventions in Active Directory for computers, domains, sites, and OUs][NamingConventions] + +[AccessDenied]: {{}} +[ClientAuthenticationDisabled]: {{}} +[HostContainsInvalidCharacters]: {{}} +[InvalidHostName]: {{}} +[InvalidDomain]: {{}} +[InvalidCredentials]: {{}} +[InvalidCertificate]: {{}} +[InvalidHostIPAddress]: {{}} +[InvalidDNS]: {{}} +[InvalidPort]: {{}} +[InvalidPSConfiguration]: {{}} +[InvalidProtocol]: {{}} + +[PowerShellSessionDetails]: {{}} +[ServerDetails]: {{}} +[ServerDetailsHost]: {{}} +[ServerDetailsUseSSL]: {{}} + +[PSConfiguration]: {{}} + +[Execution Service]: {{}} + +[NamingConventions]: {{}} \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Exceptions/services/_index.md b/content/en/docs/2024.11/Reference/Exceptions/services/_index.md new file mode 100644 index 000000000..b6926475d --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/services/_index.md @@ -0,0 +1,5 @@ +--- +title: "Services" +linkTitle: "Services" +description: "Exceptions related to Services" +--- diff --git a/content/en/docs/2024.11/Reference/Exceptions/services/service-does-not-exist-exception.md b/content/en/docs/2024.11/Reference/Exceptions/services/service-does-not-exist-exception.md new file mode 100644 index 000000000..4f95e6354 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/services/service-does-not-exist-exception.md @@ -0,0 +1,129 @@ +--- +title: "ServiceDoesNotExistException" +linkTitle: "ServiceDoesNotExistException" +description: "The exception thrown when a service does not exist." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.Services.ServiceDoesNotExistException)

+ +## Description + +The exception thrown when either a [Core Service][] or [Execution Service][] does not exist. + +## Reasons + +### Service Does Not Exist + +The service does not exist. + +#### Message Format + +```json +"The '' service does not exist." +``` + +where: +- `` will be the name of the service in Service Fabric Explorer (e.g. fabric:/Core/Services/DataStorage). + +#### How to fix + +Ensure the specified service exists. + +## Properties + +### Exception Type + +The type of the exception (i.e. `ServiceDoesNotExistException`) + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Message + +The exception message, providing information about the exception that occurred. + +For this exception: +- `` will be replaced with the name of the service. + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Tenant + +The tenant specified on the [Scope][] provided. + +| | | +|-----------|---------------------------| +| Data Type | [String][] | + +### System + +The system specified on the [Scope][] provided. + +| | | +|-----------|---------------------------| +| Data Type | [String][] | + +### Service Name + +The name of the service that does not exist. + +| | | +|-----------|---------------------------| +| Data Type | [String][] | + +### Help Link + +The URL for the relevant section of this exception's help page. + +| | | +|-----------|------------| +| Data Type | [String][] | + +## Remarks + +### Known Limitations + +None + +## See Also + +### Related Data Types + +* [Scope][] +* [String][] + +### Related Concepts + +* [Exceptions][] + +### Related Blocks + +- Data Storage + - [Create Collection][] + - [Delete Collection][] + - [Delete Data With Key][] + - [Read Data With Key][] + - [Write Data With Key][] + +### External Documentation + +None + +[Create Collection]: {{< url path = "Cortex.Reference.Blocks.DataStorage.CreateCollection.CreateCollectionBlock.MainDoc">}} +[Delete Collection]: {{< url path = "Cortex.Reference.Blocks.DataStorage.DeleteCollection.DeleteCollectionBlock.MainDoc">}} +[Delete Data With Key]: {{< url path="Cortex.Reference.Blocks.DataStorage.DeleteData.DeleteDataWithKeyBlock.MainDoc">}} +[Read Data With Key]: {{< url path="Cortex.Reference.Blocks.DataStorage.ReadData.ReadDataWithKeyBlock.MainDoc">}} +[Write Data With Key]: {{< url path="Cortex.Reference.Blocks.DataStorage.WriteData.WriteDataWithKeyBlock.MainDoc">}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Scope]: {{< url path="Cortex.Reference.DataTypes.Scopes.Scope.MainDoc">}} + +[Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.MainDoc" >}} + +[Core Service]: {{< url path="Cortex.Guides.CortexInnovation.CoreApplication.Services.MainDoc">}} +[Execution Service]: {{< url path="Cortex.Guides.CortexInnovation.ExecutionApplication.Services.MainDoc">}} diff --git a/content/en/docs/2024.11/Reference/Exceptions/services/service-unavailable-exception.md b/content/en/docs/2024.11/Reference/Exceptions/services/service-unavailable-exception.md new file mode 100644 index 000000000..63b68abc6 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/services/service-unavailable-exception.md @@ -0,0 +1,129 @@ +--- +title: "ServiceUnavailableException" +linkTitle: "ServiceUnavailableException" +description: "The exception thrown when a service is unavailable." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.Services.ServiceUnavailableException)

+ +## Description + +The exception thrown when either a [Core Service][] or [Execution Service][] is unavailable. + +## Reasons + +### Service is Unavailable + +The service is either not running or unhealthy. + +#### Message Format + +```json +"The '' service was unavailable." +``` + +where: +- `` will be the name of the service in Service Fabric Explorer (e.g. fabric:/Core/Services/DataStorage). + +#### How to fix + +Ensure the specified service is running and healthy. + +## Properties + +### Exception Type + +The type of the exception (i.e. `ServiceUnavailableException`) + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Message + +The exception message, providing information about the exception that occurred. + +For this exception: +- `` will be replaced with the name of the service. + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Tenant + +The tenant specified on the [Scope][] provided. + +| | | +|-----------|---------------------------| +| Data Type | [String][] | + +### System + +The system specified on the [Scope][] provided. + +| | | +|-----------|---------------------------| +| Data Type | [String][] | + +### Service Name + +The name of the service that is not running or is unhealthy. + +| | | +|-----------|---------------------------| +| Data Type | [String][] | + +### Help Link + +The URL for the relevant section of this exception's help page. + +| | | +|-----------|------------| +| Data Type | [String][] | + +## Remarks + +### Known Limitations + +None + +## See Also + +### Related Data Types + +* [Scope][] +* [String][] + +### Related Concepts + +* [Exceptions][] + +### Related Blocks + +- Data Storage + - [Create Collection][] + - [Delete Collection][] + - [Delete Data With Key][] + - [Read Data With Key][] + - [Write Data With Key][] + +### External Documentation + +None + +[Create Collection]: {{< url path = "Cortex.Reference.Blocks.DataStorage.CreateCollection.CreateCollectionBlock.MainDoc">}} +[Delete Collection]: {{< url path = "Cortex.Reference.Blocks.DataStorage.DeleteCollection.DeleteCollectionBlock.MainDoc">}} +[Delete Data With Key]: {{< url path="Cortex.Reference.Blocks.DataStorage.DeleteData.DeleteDataWithKeyBlock.MainDoc">}} +[Read Data With Key]: {{< url path="Cortex.Reference.Blocks.DataStorage.ReadData.ReadDataWithKeyBlock.MainDoc">}} +[Write Data With Key]: {{< url path="Cortex.Reference.Blocks.DataStorage.WriteData.WriteDataWithKeyBlock.MainDoc">}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Scope]: {{< url path="Cortex.Reference.DataTypes.Scopes.Scope.MainDoc">}} + +[Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.MainDoc" >}} + +[Core Service]: {{< url path="Cortex.Guides.CortexInnovation.CoreApplication.Services.MainDoc">}} +[Execution Service]: {{< url path="Cortex.Guides.CortexInnovation.ExecutionApplication.Services.MainDoc">}} diff --git a/content/en/docs/2024.11/Reference/Exceptions/ssh/_index.md b/content/en/docs/2024.11/Reference/Exceptions/ssh/_index.md new file mode 100644 index 000000000..d4b3a7953 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/ssh/_index.md @@ -0,0 +1,5 @@ +--- +title: "Ssh" +linkTitle: "Ssh" +description: "Exceptions related to Ssh" +--- diff --git a/content/en/docs/2024.11/Reference/Exceptions/ssh/ssh-client-exception.md b/content/en/docs/2024.11/Reference/Exceptions/ssh/ssh-client-exception.md new file mode 100644 index 000000000..e8765b609 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/ssh/ssh-client-exception.md @@ -0,0 +1,106 @@ +--- +title: "SshClientException" +linkTitle: "SshClientException" +description: "The exception thrown when an SSH Client (e.g. Execute Ssh Command Block) is incorrectly configured." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.Ssh.SshClientException)

+{{% alert type="information" title="Information" %}}Improvements to this page are planned for the future.{{% /alert %}} + +## Description + +The exception thrown when an SSH Client (e.g. [Execute Ssh Command Block][]) is incorrectly configured. + +There are multiple reasons that this exception can be thrown: + +* [Host Disconnected][SshSessionDetails.Host] +* [Invalid Configuration Settings][ConfigurationSettings] +* [Invalid Connection][SshSessionDetails] + +## Reasons + +### Host Disconnected {#sshsessiondetailshost} + +The connection to the host server has been lost, so the session has closed. + +#### Message Format + +The format of the exception message is as follows: + +```json +"The 'Host' \"\" has closed the session. Any subsequent commands run on the session will result in a new one being created. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the value of the [Host][SshSessionDetails Host] property provided in the session details; see [SshSessionDetails][SshSessionDetails DataType] for more information + +#### How to fix + +Ensure that the connection to the host server is functional, and that no commands to close the old session have been executed (e.g. `exit`). + +### Invalid Configuration Settings {#configurationsettings} + +The [Configuration Settings][SshSessionDetailsConfigurationSettings] provided were invalid (e.g. an invalid setting key was provided, a setting was provided an invalid value, etc). + +#### Message Format + +The format of the exception message is as follows: + +```json +"'Configuration Settings' contains one or more invalid settings. +Please click the HelpLink for more information on how to fix this." +``` + +#### How to fix + +Fix the errors which caused this exception to be thrown, which are seen in the `InvalidSettings` property of this exception. + +### Invalid Connection {#sshsessiondetails} + +The [Ssh Session Details][SshSessionDetailsSshSessionDetails] provided is invalid (e.g. an invalid hostname was provided, an invalid port was provided, the connection timed out, etc). + +#### Message Format + +The format of the exception message is as follows: + +```json +"A connection could not be established between the server where the Cortex Execution Service is running (\"\") and the host. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the value of the [Host][SshSessionDetails Host] property provided in the session details; see [SshSessionDetails][SshSessionDetails DataType] for more information + +#### How to fix + +Ensure that the [Ssh Session Details][SshSessionDetailsSshSessionDetails] provided are valid; see [SshSessionDetails][SshSessionDetails DataType] for more information. + +## Remarks + +### Known Limitations + +None + +## See Also + +### External Documentation + +None + +[SshSessionDetails]: {{}} +[SshSessionDetails.Host]: {{}} +[ConfigurationSettings]: {{}} + +[SshSessionDetails DataType]: {{}} +[SshSessionDetails Host]: {{}} + +[IPWorksSSHClientErrors]: {{}} + +[Execute Ssh Command Block]: {{}} +[SshSessionDetailsConfigurationSettings]: {{}} +[SshSessionDetailsSshSessionDetails]: {{}} \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Exceptions/ssh/ssh-response-exception.md b/content/en/docs/2024.11/Reference/Exceptions/ssh/ssh-response-exception.md new file mode 100644 index 000000000..c965e3d3c --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/ssh/ssh-response-exception.md @@ -0,0 +1,55 @@ +--- +title: "SshResponseException" +linkTitle: "SshResponseException" +description: "The exception thrown when an error occurs from the SSH response." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.Ssh.SshResponseException)

+{{% alert type="information" title="Information" %}}Improvements to this page are planned for the future.{{% /alert %}} + +## Description + +The exception thrown when an error occurs from the SSH response. + +There is a single reason that this exception can be thrown: + +* [Invalid TerminalPrompt or Short Timeout][SshSessionDetails.TerminalPrompt] + +## Reasons + +### Invalid TerminalPrompt or Short Timeout {#sshsessiondetailsterminalprompt} + +The [TerminalPrompt][SshSessionDetails TerminalPrompt] was not found in the response, or the timeout provided was too short to allow for the response to be returned. + +#### Message Format + +The format of the exception message is as follows: + +```json +"The execution has timed-out because either the 'TerminalPrompt' was not found in the response or the timeout was too short to allow for the response to be returned. +Please click the HelpLink for more information on how to fix this." +``` + +#### How to fix + +Ensure that the [TerminalPrompt][SshSessionDetails TerminalPrompt] in the [Ssh Session Details][SshSessionDetails] provided matches the terminal prompt on the host and that the `Timeout` in the [Configuration Settings][SshSessionDetailsConfigurationSettings] provided is long enough for a response to be returned. + +## Remarks + +### Known Limitations + +None + +## See Also + +### External Documentation + +None + +[SshSessionDetails.TerminalPrompt]: {{}} + +[SshSessionDetails]: {{}} +[SshSessionDetailsConfigurationSettings]: {{}} +[SshSessionDetails TerminalPrompt]: {{}} \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Exceptions/tasks/_index.md b/content/en/docs/2024.11/Reference/Exceptions/tasks/_index.md new file mode 100644 index 000000000..476e38a46 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/tasks/_index.md @@ -0,0 +1,5 @@ +--- +title: "Tasks" +linkTitle: "Tasks" +description: "Exceptions related to issues with Tasks" +--- diff --git a/content/en/docs/2024.11/Reference/Exceptions/tasks/aggregate-task-exception.md b/content/en/docs/2024.11/Reference/Exceptions/tasks/aggregate-task-exception.md new file mode 100644 index 000000000..72576c963 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/tasks/aggregate-task-exception.md @@ -0,0 +1,123 @@ +--- +title: "AggregateTaskException" +linkTitle: "AggregateTaskException" +description: "The exception thrown when one or more tasks being waited on throw an exception." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.Tasks.AggregateTaskException)

+ +## Description + +The exception thrown when one or more tasks being waited on throw an exception. + +## Reasons + +### A task has thrown an exception + +One or more tasks being waited on has thrown an exception. + +#### Message Format + +The format of the [Message][] is as follows: + +```json +"One or more tasks that were being waited on threw an exception. Details of the exceptions can be found in the TaskExceptions property. +Please click the HelpLink for more information on how to fix this." +``` + +#### How to fix + +Ensure that all tasks being waited on cannot throw any unhandled exceptions. + +For more information on how to get the results of the successful tasks, see [Waiting for a Task that has thrown an exception][]. + +## Properties + +### Exception Type + +The type of the exception (i.e. `AggregateTaskException`). + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Message + +The exception message, providing information about the exception that occurred. + +| | | +|-----------|------------| +| Data Type | [String][] | + +### TaskExceptions + +The [TaskExceptions][TaskExceptions Property] property is an [IDictionary][]<[Int32][],[Exception][]> of all exceptions thrown by the tasks as index/exception pairs, mapping the exception thrown to the index of the task that threw it. + +| | | +|-----------|------------| +| Data Type | [IDictionary][]<[Int32][],[Exception][]> | + +Below is an example of the value of [TaskExceptions][TaskExceptions Property] after the first and third tasks both throw a [FlowException][]: +```json +{ + "0": { + "Exception Type": "FlowException", + "Message": "This flow threw an exception.", + "HelpLink": "https://docs.wearecortex.com/docs/2023.5/reference/exceptions/flows/flow-exception" + }, + "2": { + "Exception Type": "FlowException", + "Message": "This flow threw an exception.", + "HelpLink": "https://docs.wearecortex.com/docs/2023.5/reference/exceptions/flows/flow-exception" + } +} +``` + +### Help Link + +The URL for the relevant section of this exception's help page. + +| | | +|-----------|------------| +| Data Type | [String][] | + +## See Also + +### Related Data Types + +* [Exception][] +* [FlowException][] +* [IDictionary][IDictionary] +* [Int32][] +* [String][] + +### Related Concepts + +* [Exceptions][] + +### Related Blocks + +* [Wait For All Tasks][] + +### External Documentation + +None + +[Message]: {{< ref "#message" >}} + +[TaskExceptions Property]: {{< ref "#taskexceptions" >}} + +[IDictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Wait For All Tasks]: {{< url path="Cortex.Reference.Blocks.Tasks.WaitForTask.WaitForAllTasksBlock.MainDoc" >}} +[Waiting for a Task that has thrown an exception]: {{< url path="Cortex.Reference.Blocks.Tasks.WaitForTask.WaitForAllTasksBlock.GetSuccessfulResults" >}} + +[Exception]: {{< url path="Cortex.Reference.DataTypes.Exceptions.Exception.MainDoc" >}} +[FlowException]: {{< url path="Cortex.Reference.Exceptions.Flows.FlowException.MainDoc" >}} + +[Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.WhatIsAnException.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Exceptions/telnet/_index.md b/content/en/docs/2024.11/Reference/Exceptions/telnet/_index.md new file mode 100644 index 000000000..d48c02c62 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/telnet/_index.md @@ -0,0 +1,5 @@ +--- +title: "Telnet" +linkTitle: "Telnet" +description: "Exceptions related to Telnet" +--- diff --git a/content/en/docs/2024.11/Reference/Exceptions/telnet/telnet-client-exception.md b/content/en/docs/2024.11/Reference/Exceptions/telnet/telnet-client-exception.md new file mode 100644 index 000000000..4dafe3cc0 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/telnet/telnet-client-exception.md @@ -0,0 +1,203 @@ +--- +title: "TelnetClientException" +linkTitle: "TelnetClientException" +description: "The exception thrown when a Telnet Client (e.g. Execute Telnet Command Block) is incorrectly configured." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.Telnet.TelnetClientException)

+ +## Description + +The exception thrown when a Telnet Client (e.g. [Execute Telnet Command][]) is incorrectly configured. + +There are multiple reasons that this exception can be thrown: + +- [Invalid Host] +- [Invalid Port] +- [Invalid Terminal Prompt] +- [Invalid Configuration Settings] + +## Reasons + +### Invalid Host {#100} + +A [Category][] of `TelnetSessionDetails` and an [ErrorCode][] of `100` indicates that the [Host][] provided in the [TelnetSessionDetails][] is invalid. + +#### Message Format + +```json +"A connection could not be established between the server where the {{% ctx %}} Execution Service is running (\"\") and the host. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +- `` is the server where the {{% ctx %}} Execution Service is running on. + +#### How to Fix + +Provide a valid [Host][] in the [TelnetSessionDetails][] and ensure that the telnet server is up and running without issues. + +*** + +### Invalid Port {#101} + +A [Category][] of `TelnetSessionDetails` and an [ErrorCode][] of `101` indicates that the [Port][] provided in the [TelnetSessionDetails][] is invalid. + +#### Message Format + +```json +"A connection could not be established between the server where the {{% ctx %}} Execution Service is running (\"\") and the host. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +- `` is the server where the {{% ctx %}} Execution Service is running on. + +#### How to Fix + +Provide a valid [Port][] between the [Int32][] values 1 and 65535 in the [TelnetSessionDetails][] and ensure that the telnet server is up and running without issues and configured to accept connections through the specified port. + +*** + +### Invalid Terminal Prompt {#102} + +A [Category][] of `TelnetSessionDetails`and an [ErrorCode][] of `102` indicates that the [TerminalPrompt][] provided in the [TelnetSessionDetails][] could not be matched in the response returned from the [Host][]. + +#### Message Format + +```json +"The execution has timed-out because either the 'TerminalPrompt' was not found in the response or the timeout was too short to allow for the response to be returned. +Please click the HelpLink for more information on how to fix this." +``` + +#### How to Fix + +Provide a [TerminalPrompt][] regex that will match the terminal prompt returned in the response from the [Host][] and ensure that the [Inactivity Timeout][] is long enough for the response to be returned. + +*** + +### Invalid Configuration Settings {#200} + +A [Category][] of `ConfigurationSettings`and an [ErrorCode][] of `200` indicates that one or more settings in [ConfigurationSettings] are invalid. + +#### Message Format + +```json +"'Configuration Settings' contains one or more invalid settings. +Please click the HelpLink for more information on how to fix this." +``` + +#### How to Fix + +Ensure each setting within [ConfigurationSettings] has the correct name and value. + +*** + +## Properties + +### Exception Type + +The type of the exception (i.e. `TelnetClientException`) + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Message + +The exception message, providing information about the exception that occurred. + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Category + +The category of the exception, which is used to categorise an exception if there are multiple reasons that the exception can occur. + +For `TelnetClientException` there are the following categories: + +- `TelnetSessionDetails` +- `ConfigurationSettings` + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Error Code + +The error code for the exception, which is used to indicate the reason that the exception occurred, if there are multiple reasons that the exception can occur. + +For `TelnetClientException` there are the following error codes: + +- [100][Invalid Host] - indicates that the [Host][] provided in the [TelnetSessionDetails][] is invalid. +- [101][Invalid Port] - indicates that the [Port][] provided in the [TelnetSessionDetails][] is invalid. +- [102][Invalid Terminal Prompt] - indicates that the [TerminalPrompt][] provided in the [TelnetSessionDetails][] could not be matched in the response returned from the [Host][]. +- [200][Invalid Configuration Settings] - indicates that one or more settings in [ConfigurationSettings] are invalid. + +| | | +|-----------|---------------------------| +| Data Type | [TelnetClientErrorCode][] | + + +### Help Link + +The URL for the relevant section of this exception's help page. + +| | | +|-----------|------------| +| Data Type | [String][] | + +## Remarks + +### Known Limitations + +None + +### Related Data Types + +- [TelnetSessionDetails][] +- [TelnetClientErrorCode][] +- [Int32][] +- [String][] + +### Related Concepts + +- [Exceptions][] + +### Related Blocks + +- [Execute Telnet Command] + +### External Documentation + +- IPWorks Telnet Error Codes: [IpWorksTelnetErrorCodes] + +[Invalid Configuration Settings]: {{< ref "#200">}} +[Invalid Terminal Prompt]: {{< ref "#102">}} +[Invalid Port]: {{< ref "#101">}} +[Invalid Host]: {{< ref "#100">}} + +[Category]: {{< ref "#category" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[ErrorCode]: {{< ref "#error-code" >}} +[Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.MainDoc" >}} + +[Host]: {{< url path="Cortex.Reference.DataTypes.Telnet.TelnetSessionDetails.Host" >}} +[Port]: {{< url path="Cortex.Reference.DataTypes.Telnet.TelnetSessionDetails.Port" >}} +[TelnetSessionDetails]: {{< url path="Cortex.Reference.DataTypes.Telnet.TelnetSessionDetails.MainDoc" >}} +[TerminalPrompt]: {{< url path="Cortex.Reference.DataTypes.Telnet.TelnetSessionDetails.TerminalPrompt" >}} +[ConfigurationSettings]: {{< url path="Cortex.Reference.Blocks.Telnet.ExecuteTelnetCommand.ExecuteTelnetCommand.ConfigurationSettings" >}} +[Execute Telnet Command]: {{< url path="Cortex.Reference.Blocks.Telnet.ExecuteTelnetCommand.ExecuteTelnetCommand.MainDoc" >}} +[TelnetClientErrorCode]: {{< url path="Cortex.Reference.DataTypes.Telnet.TelnetClientErrorCode.MainDoc" >}} + +[Inactivity Timeout]: {{< url path="Cortex.Reference.Blocks.Telnet.ExecuteTelnetCommand.ExecuteTelnetCommand.InactivityTimeout" >}} + +[IpWorksTelnetErrorCodes]: {{< url path="IPWorks.TelnetErrors" >}} diff --git a/content/en/docs/2024.11/Reference/Exceptions/telnet/telnet-server-exception.md b/content/en/docs/2024.11/Reference/Exceptions/telnet/telnet-server-exception.md new file mode 100644 index 000000000..30c8a5d17 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/telnet/telnet-server-exception.md @@ -0,0 +1,132 @@ +--- +title: "TelnetServerException" +linkTitle: "TelnetServerException" +description: "The exception thrown when an issue occurs on the Telnet Server." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.Telnet.TelnetServerException)

+ +## Description + +The exception thrown when an issue occurs on the Telnet Server. + +There is one reason that this exception can be thrown: + +- [Host Disconnected][HostDisconnected] + +## Reasons + +### Host Disconnected {#100} + +A [Category][] of `TelnetSession` and an [ErrorCode][] of `100` indicates that the [Host][] provided has disconnected from the session without using [CloseSession]. The [Response] received up to the point the [Host][] disconnected the session will be returned. + +#### Message Format + +```json +"The 'Host' \"\" has closed the session. Any subsequent commands run on the session will result in a new one being created. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +- `` is the address of the telnet server that the telnet session was opened with. + +#### How to Fix + +Check the [Host] telnet server is running. If it is running please check you haven't sent it an `exit` command, as this will cause the exception. If the exception persists please troubleshoot common reasons for telnet servers disconnecting. + +*** + +## Properties + +### Exception Type + +The type of the exception (i.e. `TelnetServerException`) + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Message + +The exception message, providing information about the exception that occurred. + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Category + +The category of the exception, which is used to categorise an exception. + +For `TelnetServerException` there is the following category: + +- `TelnetSession` + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Error Code + +The error code for the exception, which is used to indicate the reason that the exception occurred. + +For `EmailSessionException` there is the following error code: + +- [100][HostDisconnected] - indicates that the [Host][] provided has disconnected from the session without using [CloseSession]. + +| | | +|-----------|---------------------------| +| Data Type | [TelnetServerErrorCode][] | + +### Help Link + +The URL for the relevant section of this exception's help page. + +| | | +|-----------|------------| +| Data Type | [String][] | + +## Remarks + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [TelnetSessionDetails][] +- [TelnetServerErrorCode][] +- [String][] + +### Related Concepts + +- [Exceptions][] + +### Related Blocks + +- [Execute Telnet Command][] + +### External Documentation + +None + +[HostDisconnected]: {{< ref "#100">}} +[ErrorCode]: {{< ref "#error-code" >}} +[Category]: {{< ref "#category" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Host]: {{< url path="Cortex.Reference.DataTypes.Telnet.TelnetSessionDetails.Host" >}} +[Response]: {{< url path="Cortex.Reference.Blocks.Telnet.ExecuteTelnetCommand.ExecuteTelnetCommand.Response" >}} + +[CloseSession]: {{< url path="Cortex.Reference.Blocks.Telnet.ExecuteTelnetCommand.ExecuteTelnetCommand.CloseSession" >}} +[TelnetSessionDetails]: {{< url path="Cortex.Reference.DataTypes.Telnet.TelnetSessionDetails.MainDoc" >}} +[Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.MainDoc" >}} +[Execute Telnet Command]: {{< url path="Cortex.Reference.Blocks.Telnet.ExecuteTelnetCommand.ExecuteTelnetCommand.MainDoc" >}} +[TelnetServerErrorCode]: {{< url path="Cortex.Reference.DataTypes.Telnet.TelnetServerErrorCode.MainDoc" >}} + +[IpWorksTelnetErrorCodes]: {{< url path="IPWorks.TelnetErrors" >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Exceptions/text/_index.md b/content/en/docs/2024.11/Reference/Exceptions/text/_index.md new file mode 100644 index 000000000..a12ed413a --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/text/_index.md @@ -0,0 +1,5 @@ +--- +title: "Text" +linkTitle: "Text" +description: "Exceptions related to Text" +--- diff --git a/content/en/docs/2024.11/Reference/Exceptions/text/encoding/_index.md b/content/en/docs/2024.11/Reference/Exceptions/text/encoding/_index.md new file mode 100644 index 000000000..4f07ce9ca --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/text/encoding/_index.md @@ -0,0 +1,5 @@ +--- +title: "Encoding" +linkTitle: "Encoding" +description: "Exceptions related to issues with encoding or decoding text" +--- diff --git a/content/en/docs/2024.11/Reference/Exceptions/text/encoding/format-exception.md b/content/en/docs/2024.11/Reference/Exceptions/text/encoding/format-exception.md new file mode 100644 index 000000000..0fd5824d2 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/text/encoding/format-exception.md @@ -0,0 +1,87 @@ +--- +title: "FormatException" +linkTitle: "FormatException" +description: "The exception thrown when a format template string is invalid." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.Text.FormatException)

+{{% alert type="information" title="Information" %}}Improvements to this page are planned for the future.{{% /alert %}} + +## Description + +The exception thrown when a format template string is invalid. + +## Reasons + +### Invalid format template + +The [format template][Format Templates] provided could not be parsed. + +#### Message Format + +The format of the message can be one of the following: + +```json +"The largest Format Parameter in '' is , therefore, '' must contain at least items, but only contains . +Text: + +Values: + +Please click the HelpLink for more information on how to fix this." +``` + +or + +```json +"'' contains at least one Format Parameter larger than {0}, therefore, it cannot be formatted. +Text: + +Please click the HelpLink for more information on how to fix this." +``` + +or + +```json +"'' contains negative Format Parameter(s), therefore, it cannot be formatted. +Text: + +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the name of the property containing the format template provided for the block which threw this exception; see [Format Text With Value][Format Text With Value Format Template] or [Format Text With Values][Format Text With Values Format Template] for more information. +* `` is the value of the format template provided; see [Format Text With Value][Format Text With Value Format Template] or [Format Text With Values][Format Text With Values Format Template] for more information. +* `` is the value of the largest unique format specifier provided (i.e. if the format template is `"{0} {2} {1} {3}`, this will be `3`). +* `` is the number of values expected to be provided (i.e. if the format template is `"{0} {2} {1} {3}`, this will be `4`). +* `` is the property containing the values provided to insert into the format template. +* `` is the list of values provided to insert into the format template. + +#### How to fix + +* Ensure that the list of values provided contains at least `` values (e.g. for a format template of `"{0} {1} {2} {3} {4}"`, there should be at least `5` values provided). +* Ensure that the format template provided does not have more than 1 format parameter when using the [Format Text With Value][] block. +* Ensure that the format template provided does not contain any negative format specifiers (e.g. `{-1}`, `{-5}`, `{-1000}`, etc). + +## Remarks + +### Known Limitations + +None + +## See Also + +### External Documentation + +None + +[Format Text With Value]: {{}} +[Format Text With Value Format Template]: {{}} +[Format Text With Values]: {{}} +[Format Text With Values Format Template]: {{}} + +[Working With Text Formatting]: {{}} +[Format Specifiers]: {{}} +[Format Templates]: {{}} \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Exceptions/text/encoding/text-decoding-exception.md b/content/en/docs/2024.11/Reference/Exceptions/text/encoding/text-decoding-exception.md new file mode 100644 index 000000000..0a7d687d9 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/text/encoding/text-decoding-exception.md @@ -0,0 +1,165 @@ +--- +title: "TextDecodingException" +linkTitle: "TextDecodingException" +description: "The exception thrown when an error occurs while decoding text." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.Text.Encoding.TextDecodingException)

+ +## Description + +The exception thrown when an error occurs while decoding text. + +There are multiple reasons that this exception can be thrown: + +- [Invalid Base64 Character][InvalidBase64Character] +- [Odd number of characters using Hex][OddHexCharacters] +- [Invalid Base64Url Character][InvalidBase64UrlCharacter] + +## Reasons + +### Invalid Base64 character {#100} + +A [Category][] of `Base64` and an [Error Code][] of `100` indicates that the text provided contains one or more characters that are invalid in [Base64][] encoded text. + +#### Message Format + +```json +"An error occurred during decoding due to one or more invalid characters being present. +Please click the HelpLink for more information on how to fix this." +``` + +#### How to fix + +Provide a [String][] containing only valid characters (e.g. `A–Z`, `a–z`, `0–9`, `+`, `/` and `=`). + +### Odd number of characters using Hex {#300} + +A [Category][] of `Hex` and an [Error Code][] of `300` indicates that the provided text contains an odd number of characters, which is invalid for [Hex][] encoded text. + +#### Message Format + +```json +"An error occurred during decoding due to an odd number of characters being present. +Please click the HelpLink for more information on how to fix this." +``` + +#### How to fix + +Provide a [String][] containing an even number of characters. + +### Invalid Base64Url character {#600} + +A [Category][] of `Base64Url` and an [Error Code][] of `600` indicates that the text provided contains one or more characters that are invalid in [Base64Url][] encoded text. + +#### Message Format + +```json +"An error occurred during decoding due to one or more invalid characters being present. +Please click the HelpLink for more information on how to fix this." +``` + +#### How to fix + +Provide a [String][] containing only valid characters (e.g. `A–Z`, `a–z`, `0–9`, `+`, `/` and `=`). + +## Properties + +### Exception Type + +The type of the exception (i.e. `TextDecodingException`) + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Message + +The exception message, providing information about the exception that occurred. + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Category + +The category of the exception, which is used to categorise an exception if there are multiple reasons that the exception can occur. + +For `TextDecodingException` there are the following categories: + +- `Base64` +- `Hex` +- `Base64Url` + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Error Code + +The error code for the exception, which is used to indicate the reason that the exception occurred, if there are multiple reasons that the exception can occur. + +For `TextEncodingException` there are the following error codes: + +- [100][InvalidBase64Character] - indicates that the Base64 encoded text provided contains one or more invalid characters +- [300][OddHexCharacters] - indicates that the Hex encoded text provided contains an odd number of characters, which is invalid +- [600][InvalidBase64UrlCharacter] - indicates that the Base64Url encoded text provided contains one or more invalid characters + +| | | +|-----------|---------------------------| +| Data Type | [TextDecodingErrorCode][] | + +### Help Link + +The URL for the relevant section of this exception's help page. + +| | | +|-----------|------------| +| Data Type | [String][] | + +## Remarks + +### Known Limitations + +None + +## See Also + +### Related Data Types + +* [String][] +* [TextDecodingErrorCode][] + +### Related Concepts + +* [Exceptions][] +* [Working with Text][WorkingWithText] + +### Related Blocks + +* [Decode Text][] + +### External Documentation + +None + +[Decode Text]: {{< url path="Cortex.Reference.Blocks.Text.DecodeText.DecodeText.MainDoc" >}} +[InvalidBase64Character]: {{< ref "#100">}} +[OddHexCharacters]: {{< ref "#300">}} +[InvalidBase64UrlCharacter]: {{< ref "#600">}} +[Category]: {{< ref "#category">}} +[Error Code]: {{< ref "#error-code">}} + +[Base64]: {{< url path="Cortex.Reference.DataTypes.Text.Encoding.TextEncodingFormat.Base64" >}} +[Hex]: {{< url path="Cortex.Reference.DataTypes.Text.Encoding.TextEncodingFormat.Hex" >}} +[Base64URL]: {{< url path="Cortex.Reference.DataTypes.Text.Encoding.TextEncodingFormat.Base64Url" >}} + +[WorkingWithText]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[TextDecodingErrorCode]: {{< url path="Cortex.Reference.DataTypes.Text.TextDecodingErrorCode.MainDoc" >}} + +[Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Exceptions/text/regex/_index.md b/content/en/docs/2024.11/Reference/Exceptions/text/regex/_index.md new file mode 100644 index 000000000..a01477428 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/text/regex/_index.md @@ -0,0 +1,5 @@ +--- +title: "Regex" +linkTitle: "Regex" +description: "Exceptions related to issues with Regex" +--- diff --git a/content/en/docs/2024.11/Reference/Exceptions/text/regex/regex-parsing-failed-exception.md b/content/en/docs/2024.11/Reference/Exceptions/text/regex/regex-parsing-failed-exception.md new file mode 100644 index 000000000..fed6fcd85 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/text/regex/regex-parsing-failed-exception.md @@ -0,0 +1,74 @@ +--- +title: "RegexParsingFailedException" +linkTitle: "RegexParsingFailedException" +description: "The exception thrown when a property is provided with invalid regex syntax." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.Text.Regex.RegexParsingFailedException)

+ +{{% alert type="information" title="Information" %}}Improvements to this page are planned for the future.{{% /alert %}} + +## Description + +The exception thrown when a property is provided with invalid [regex syntax][regex]. + +## Reasons + +### Single regex pattern failed to parse + +A regex pattern in the property value failed to parse successfully due to invalid [regex syntax][regex] (e.g. `"*"`). + +#### Message Format + +The format of the exception message is as follows: + +```json +"'' contains regex pattern \"\" which could not be parsed successfully. Please see the 'RegexParseExceptions' property for details on why the regex failed. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the name of the property containing the regex pattern that failed to parse. +* `` is the pattern with the invalid regex syntax. + +#### How to fix + +Provide valid [regex syntax][regex], for the regex pattern seen in the `RegexParseExceptions` property. + +### Multiple regex patterns failed to parse + +Multiple regex patterns in the property value failed to parse successfully due to invalid [regex syntax][regex] (e.g. `"*"`). + +#### Message Format + +The format of the exception message is as follows: + +```json +"'' contains one or more regex patterns which could not be parsed succesfully. Please see the 'RegexParseExceptions' property for details on why each regex failed. +Please click the HelpLink for more information on how to fix this." +``` + +where: + +* `` is the name of the property containing the regex patterns that failed to parse. + +#### How to fix + +Provide valid [regex syntax][regex], for each regex pattern seen in the `RegexParseExceptions` property. + +## Remarks + +### Known Limitations + +None + +## See Also + +### External Documentation + +None + +[regex]: {{}} \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/Exceptions/wireless/_index.md b/content/en/docs/2024.11/Reference/Exceptions/wireless/_index.md new file mode 100644 index 000000000..7bb712150 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/wireless/_index.md @@ -0,0 +1,5 @@ +--- +title: "Wireless" +linkTitle: "Wireless" +description: "Exceptions related to issues with wireless blocks" +--- diff --git a/content/en/docs/2024.11/Reference/Exceptions/wireless/wireless-receiver-block-not-found-exception.md b/content/en/docs/2024.11/Reference/Exceptions/wireless/wireless-receiver-block-not-found-exception.md new file mode 100644 index 000000000..4158dbda7 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Exceptions/wireless/wireless-receiver-block-not-found-exception.md @@ -0,0 +1,142 @@ +--- +title: "WirelessReceiverBlockNotFoundException" +linkTitle: "WirelessReceiverBlockNotFoundException" +description: "The exception thrown when a wireless receiver block could not be found." +--- + +# {{% param title %}} + +

(Cortex.Exceptions.Wireless.WirelessReceiverBlockNotFoundException)

+ +## Description + +The exception thrown when a [Wireless Receiver][Wireless Receiver Block] block could not be found. + +There are multiple reasons that this exception can be thrown: + +- [Wireless Receiver Block Not Found][WirelessReceiverExceptionBlockNotFound] +- [Wireless Receiver Property Empty][WirelessReceiverExceptionPropertyEmpty] + +## Reasons + +### Wireless Receiver Block Not Found {#100} + +A [Category][] of `NotFound` and an [Error Code][] of `100` indicates that the selected [Wireless Receiver][Wireless Receiver Block] block was deleted or does not exist. + +#### Message Format + +```json +"The 'Wireless Receiver Block' provided could not be found. +Please click the HelpLink for more information on how to fix this." +``` + +#### How to fix + +Ensure the correct [Wireless Receiver][Wireless Receiver Block] block is selected. + +### Wireless Receiver Property Empty {#101} + +A [Category][] of `NotFound` and an [Error Code][] of `101` indicates that a [Wireless Receiver][Wireless Receiver Block] block has not been selected. + +#### Message Format + +```json +"'Wireless Receiver Block' is empty; it must be provided a value. +Please click the HelpLink for more information on how to fix this." +``` + +#### How to fix + +Ensure a [Wireless Receiver][Wireless Receiver Block] block is selected. + +## Properties + +### Exception Type + +The type of the exception (i.e. `WirelessReceiverBlockNotFoundException`) + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Message + +The exception message, providing information about the exception that occurred. + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Category + +The category of the exception, which is used to categorise an exception if there are multiple reasons that the exception can occur. + +For `WirelessReceiverBlockNotFoundException` there are the following categories: + +- `NotFound` + +| | | +|-----------|------------| +| Data Type | [String][] | + +### Error Code + +The error code for the exception, which is used to indicate the reason that the exception occurred, if there are multiple reasons that the exception can occur. + +For `WirelessReceiverBlockNotFoundException` there are the following error codes: + +- [100][WirelessReceiverBlockNotFound] - indicates that the [Wireless Receiver][Wireless Receiver Block] block could not be found +- [101][WirelessReceiverPropertyEmpty] - indicates that the [Wireless Receiver Block][Wireless Receiver Block Property] property was empty + +| | | +|-----------|---------------------------| +| Data Type | [WirelessReceiverNotFoundErrorCode][WirelessReceiverNotFoundErrorCode] | + +### Help Link + +The URL for the relevant section of this exception's help page. + +| | | +|-----------|------------| +| Data Type | [String][] | + +## Remarks + +### Known Limitations + +None + +## See Also + +### Related Data Types + +* [String][] +* [WirelessReceiverNotFoundErrorCode][] + +### Related Concepts + +* [Exceptions][] + +### Related Blocks + +* [Wireless Sender Block][] + +### External Documentation + +None + +[Category]: {{< ref "#category">}} +[Error Code]: {{< ref "#error-code">}} +[WirelessReceiverBlockNotFound]: {{< ref "#100">}} +[WirelessReceiverPropertyEmpty]: {{< ref "#101">}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.MainDoc" >}} + +[Wireless Sender Block]: {{< url path="Cortex.Reference.Blocks.Wireless.WirelessSender.WirelessSender.MainDoc" >}} +[Wireless Receiver Block]: {{< url path="Cortex.Reference.Blocks.Wireless.WirelessReceiver.WirelessReceiver.MainDoc" >}} +[WirelessReceiverExceptionBlockNotFound]: {{< url path="Cortex.Reference.Exceptions.Wireless.WirelessReceiverBlockNotFoundException.BlockNotFound" >}} +[WirelessReceiverExceptionPropertyEmpty]: {{< url path="Cortex.Reference.Exceptions.Wireless.WirelessReceiverBlockNotFoundException.PropertyEmpty" >}} +[WirelessReceiverNotFoundErrorCode]: {{< url path="Cortex.Reference.DataTypes.Wireless.WirelessReceiverBlockNotFoundErrorCode.MainDoc" >}} +[Wireless Receiver Block Property]: {{< url path="Cortex.Reference.Blocks.Wireless.WirelessSender.WirelessSender.WirelessReceiverProperty" >}} diff --git a/content/en/docs/2024.11/Reference/Glossary/0-9.md b/content/en/docs/2024.11/Reference/Glossary/0-9.md new file mode 100644 index 000000000..c09f7e658 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Glossary/0-9.md @@ -0,0 +1,52 @@ +--- +title: "0-9" +linkTitle: "0-9" +description: "Terms, words and phrases beginning with the numbers 0 through 9." +weight: 100 +--- + +# {{% param title %}} + +Terms, words and phrases beginning with the numbers 0 through 9. + +## 0 + +### 0 Based + +See [Zero Based][]. + +## 1 + +### 16-bit + +16-bit refers to a measurement of units of memory or data that are 16 bits in size. + +## 2 + +## 3 + +### 32-bit + +32-bit refers to a measurement of units of memory or data that are 32 bits in size. + +### 3rd-Party Systems + +3rd-party systems refer to systems, services or applications that are not developed by {{% ctx %}}. + +## 4 + +## 5 + +## 6 + +### 64-bit + +64-bit refers to a measurement of units of memory or data that are 64 bits in size. + +## 7 + +## 8 + +## 9 + +[Zero Based]: {{< url path="Cortex.Reference.Glossary.U-Z.ZeroBased" >}} diff --git a/content/en/docs/2024.11/Reference/Glossary/_index.md b/content/en/docs/2024.11/Reference/Glossary/_index.md new file mode 100644 index 000000000..cf30bc118 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Glossary/_index.md @@ -0,0 +1,6 @@ +--- +title: "Glossary" +linkTitle: "Glossary" +description: "Explanation of terms, words and phrases used throughout the {{% ctx %}} documentation." +weight: 1000 +--- diff --git a/content/en/docs/2024.11/Reference/Glossary/a-e.md b/content/en/docs/2024.11/Reference/Glossary/a-e.md new file mode 100644 index 000000000..e644a01c5 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Glossary/a-e.md @@ -0,0 +1,447 @@ +--- +title: "A-E" +linkTitle: "A-E" +description: "Terms, words and phrases beginning with the letters A through E." +weight: 10 +--- + +# {{% param title %}} + +Terms, words and phrases beginning with the letters A through E. + +## A + +### API + +An API (Application Programming Interface) is a set of functions that allows applications to access data from and interact with external systems, services or applications. + +### Autogeneration + +Autogeneration, is the process in which something is created automatically for use within a process. + +### Automate + +The application of [automation][]. + +### Automation + +Automation is a term for techniques, methods, systems or technologies that reduce human intervention in [tasks][] and [processes][]. + +### AWS Lambda + +AWS Lambda is an event driven serverless solution from AWS. Instead of deploying and maintaining servers, cloud infrastructure is used to run applications. + +### Azure Functions + +Azure Functions is an event driven serverless solution from Microsoft. Instead of deploying and maintaining servers, cloud infrastructure is used to run applications. + +## B + +### BCC + +Blind Carbon Copy (BCC) is a way of sending copies of an email to other people. Unlike [CC][] recipients, the other recipients of the email will not be able to see who recieved the email via BCC. + +### Bit + +A bit is the most basic unit of information in computing, and represents a logical state with one of two possible values; most commonly represented as 1 or 0. + +See [Wikipedia][Bit (Wikipedia)] for more information. + +### Block + +Blocks (or [functional blocks][]) expose the logic and actions that the [{{% ctx %}}][CORTEX] [platform][] is able to execute for the [flow developers][]; alongside [flows][Flow] they are one of the main components used to define how to automate [tasks][] and [processes][]. + +For more detailed information about blocks, see [Fundamentals > Blocks][]. + +For a complete list of available blocks, see [Reference > Blocks][]. + +### Block Property + +[Blocks][Block] have block properties (or [properties][]) that allow the [flow developers][] to configure how the block should behave; e.g. a block to send emails would have properties for specifying things like the sender, recipients, summary, body, attachments etc. + +For more detailed information about configuring blocks using block properties, see [Fundamentals > Block Properties][]. + +### Boolean + +A [data type][] that represents a logical value of `true` or `false`. + +For more detailed information about the Boolean data type, see [Data Types > Boolean][]. + +### Byte + +A byte is a unit of information in computing that most commonly consists of eight [bits][Bit]. + +See [Wikipedia][Byte (Wikipedia)] for more information. + +## C + +### C\# + +C# (pronounced "see sharp") is a [programming language][] developed by Microsoft. + +It is natively supported by the [{{% ctx %}}][CORTEX] [platform][] for using simple [expressions][Expression] (i.e. `1 + 1`) and more complex [code][] (i.e. `DateTime.Now.AddDays(1)`) within [flows][Flow]. + +C# expressions and code can be entered as the values for [Fundamentals > Block Properties][Block Property] using the [Expression Editor][]. + +See the official [C# documentation][] for more information about C#. + +### camelCase + +camelCase is a typographical convention in which phrases are written without spaces or punctuation, indicating the separation of words with a single capitalized letter, and the first word starting with a lowercase letter. E.g. "iPhone" and "eBay". + +camelCase is often used as a naming convention in programming languages such as [C#][]. + +See also [PascalCase][]. + +### Case-insensitive + +If something is case-insensitive, it means it ignores differences in case (i.e. `CASE` is considered equal to `case`). + +### Case-sensitive + +If something is case-sensitive, it means it considers differences in case (i.e. `CASE` is considered not equal to `case`). + +### Cast + +The process of explicitly converting one [data type][] to another. + +See [Casting and type conversions (C# Programming Guide)][] for a detailed technical explanation of casting in [C#][], the [programming language][] natively supported by the [{{% ctx %}}][CORTEX] [platform][] for writing simple [expressions][Expression] and more complex [code][]. + +Also see [Explicit Cast][] for more information. + +### CC + +Carbon Copy (CC) is a way of sending copies of an email to other people. The other recipients of the email will be able to see who recieved the email via CC. + +### CI/CD + +CI/CD is a software development practice and is broken down into the following concepts: + +- [Continuous Integration][] +- [Continuous Delivery][] +- [Continuous Deployment][] + +### Char + +A [data type][] that represents a character or letter. + +For more detailed information about the Char data type, see [Data Types > Char][]. + +### Cloud + +A global network of servers which are linked together and operate as a single ecosystem. + +Examples of publicly available Cloud providers include: + +* Amazon AWS +* Google Cloud Platform +* Microsoft Azure + +### Cloud Service Provider + +A cloud service provider is a third-party company offering a cloud-based platform, infrastructure, application, or storage services. + +### Code + +A set of instructions in a computer program. + +### Concurrent + +At the same time. + +### Continuous Integration + +Continuous Integration is a software development practice where developers frequently: + +- Integrate their local changes with source code from the main branch +- Use automated testing to ensure that their changes work as expected +- Merge their changes into the main branch, if no issues were found + +### Continuous Delivery + +Continuous Delivery is a software development practice where: + +- Changes to the main branch are detected +- The main branch is packaged into deployment artefacts +- Deployment artefacts are made available + +### Continuous Deployment + +Continuous Deployment is a software development practice which extends [Continuous Delivery][] by automatically deploying the generated artefacts. + +### Convert + +To change something into a different form. E.g. Change some [text][] from [lowercase][] to [UPPERCASE][]. + +### CORS + +Cross-origin resource sharing (CORS) is a mechanism that allows restricted resources on a web page to be requested from a domain outside of the domain from which the first resource was served. + +### {{% ctx %}} + +The name of the new and current generation of the {{% ctx %}} [automation][] [platform][]. + +### {{% ctx %}} Gateway + +The centralised web-based [portal][] for accessing all user applications and tooling in the [{{% ctx %}}][CORTEX] [platform][]. + +### {{% ctx %}} Studio + +The web-based integrated development environment ([IDE][]) for creating, editing, [debugging][], testing and managing [flows][Flow] that define the logic and actions required to capture and automate a [task][tasks] or [process][Processes]. + +For more detailed information about {{% ctx %}} Studio, see [Guides > {{% ctx %}} Studio][Guides > CORTEX Studio]. + +### Culture + +Describes a set of rules for data that differs between different cultures; it determines the default format for dates, times, numbers, currency values, the sorting order of text, casing conventions, and text comparisons. + +For more detailed information about Culture, see [Working With > Culture][]. + +### Culture identifier + +A culture identifier is a standard international numeric abbreviation and has the components necessary to uniquely identify one of the operating system's installed cultures. + +For more detailed information about Culture, see [Working With > Culture][]. + +### Culture-insensitive + +If something is culture-insensitive, it means that it does not get affected by culture related changes to the operating system, such as language and regional settings. + +### Culture-sensitive + +If something is culture-sensitive, it means that it does get affected by culture related changes to the operating system, such as language and regional settings. + +### Current Culture + +The current culture used by the executing thread; it determines the default format for dates, times, numbers, currency values, the sorting order of text, casing conventions, and string comparisons. + +For more detailed information about Culture, see [Working With > Current Culture][]. + +### CRL + +Certificate Revocation List (CRL) is a list of certificates that have been revoked by the issuing certificate authority prior to their actual/assigned expiration date. It is essentially a list of certificates that should no longer be trusted. + +## D + +### Data Type + +A data type (or [type][]) defines the type of data or values that a [block property][] can accept. + +For more detailed information about data types, see [Fundamentals > Data Types][]. + +For a complete list of available data types, see [Reference > Data Types][]. + +### Debug + +The ability for [flow developers][] to execute and interact with a [flow][] step-by-step from within [{{% ctx %}} Studio][CORTEX Studio], so that they are able to identify and remove [errors][] in the [flow's][flow] logic and actions. + +For more detailed information about debugging in {{% ctx %}} Studio, see [{{% ctx %}} Studio > Debugging][CORTEX Studio > Debugging]. + +### Default Value + +The default that is assigned as the value of a [block property][] when a new [block][] is added to a [flow][]. + +### Developer + +A developer is an individual that builds and creates software and applications. + +### Dictionary + +A [data type][] that represents an unordered collection of key-item pairs, where each pair consists of a unique key and its associated item. Dictionaries are optimised for fast lookup of items using their key. + +For more detailed information about the Dictionary data type, see [Data Types > Dictionary<TKey, TItem>][]. + +### DLL + +DLL files are binary files that can contain executable code and resources. + +### Drag-and-Drop + +Functionality that allows a user to select an object and move it to another location. + +### DotNet + +.NET (DotNet) is an open-source, computer software framework for Windows, Linux, and macOS operating systems developed by Microsoft. + +### Double + +A [data type][] that represents a fractional, or very large or small number from `-1.79769313486232e+308` through `1.79769313486232e+308`. + +For more detailed information about the Double data type, see [Data Types > Double][]. + +### dynamic + +A [data type][] that indicates that any data type can be used. + +For more detailed information about the dynamic data type, see [Data Types > dynamic][]. + +## E + +### Empty + +Empty indicates that a [data type][] has been [initialised][] and has a [non-null][] value, but the value does not contain any data. E.g. a [string][] that contains no characters `""`, or a [list][] that contains no items `[]`. + +Empty is not the same as [null][]. + +### Error + +Something which is inaccurate or incorrect; a mistake. + +### Example + +An example is intended to show [flow developers][] how something works. Examples can be found near the top of every [block's][block] help page. See [examples][] for the [Add Text At Beginning][] block. + +### Exception + +An exception represents [errors][] that occur during the [execution][] of a [flow][]. + +Exceptions are [data types][Data Type] that can be reasoned with during the execution of a flow, in order to handle errors during the [automation][] of a [task][tasks] or [process][Processes]. + +For more detailed information about exceptions, see [Fundamentals > Exceptions][]. + +For a complete list of available [blocks][block] that can be used to handle exceptions, see [Blocks > Exception Blocks][]. + +For a complete list of exceptions, see [Reference > Exceptions][]. + +### Execution + +When a [request][] to start a [flow][] is received by the [{{% ctx %}}][CORTEX] [platform][], an execution is created that represents that instance of the executing flow. + +There can be multiple executions of a flow running [concurrently][concurrent]. + +For more detailed information about executions, see [{{% ctx %}} Studio > Debugging][CORTEX Studio > Debugging]. + +### Explicit Cast + +Sometimes, in order to convert one [data type][] to another, an "explicit cast" [expression][] is required; this is typically needed when information might be lost in the conversion, or when the conversion might not succeed for other reasons. + +An example would be converting a [32-bit][] [integer][] ([Int32][]) to a [16-bit][] [integer][] ([Int16][]): + +```csharp +Int32 ThirtyTwoBitInteger = 100; +Int16 SixteenBitInteger = (Int16)ThirtyTwoBitInteger; +``` + +See [Cast expression (C# Reference)][] for a detailed technical explanation. + +Also see [Cast][] for more information. + +### Expression + +An expression is a combination of [operands][] (i.e. [variables][], [literals][], calls to [methods][] and [properties][PropertiesC#] exposed on [data types][Data Type]) and [operators][] (i.e. =, +, -, *, /) that can be evaluated by the [{{% ctx %}}][CORTEX] [platform][] to a single value. + +Expressions use the syntax of the [C#][] [programming language][]. + +For more detailed information about expressions, see [Fundamentals > Expressions][]. + +### Expression Editor + +The Expression Editor is a web-based text editor that allows [flow developers][] to use either simple [expression][] or more complex [code][] as the value of a [block property][]. + +It is based on the [Monaco Editor][] used by [VS Code][], and includes a rich set of features including: + +* [Syntax Highlighting][] +* [Snippets][] +* [Intellisense][] + +For more detailed information about the Expression Editor, see [{{% ctx %}} Studio > Expression Editor][CORTEX Studio > Expression Editor]. + +[Automate]: {{< ref "#automate" >}} +[Automation]: {{< ref "#automation" >}} +[Bit]: {{< ref "#bit" >}} +[Block]: {{< ref "#block" >}} +[Block Property]: {{< ref "#block-property" >}} +[C#]: {{< ref "#c-1" >}} +[Cast]: {{< ref "#cast" >}} +[CC]: {{< ref "#cc" >}} +[Code]: {{< ref "#code" >}} +[Concurrent]: {{< ref "#concurrent" >}} +[Continuous Integration]: {{< ref "#continuous-integration" >}} +[Continuous Delivery]: {{< ref "#continuous-delivery" >}} +[Continuous Deployment]: {{< ref "#continuous-deployment" >}} +[CORTEX]: {{< ref "#cortex" >}} +[CORTEX Studio]: {{< ref "#cortex-studio" >}} +[Data Type]: {{< ref "#data-type" >}} +[Debugging]: {{< ref "#debug" >}} +[Errors]: {{< ref "#error" >}} +[Execution]: {{< ref "#execution" >}} +[Explicit Cast]: {{< ref "#explicit-cast" >}} +[Expression]: {{< ref "#expression" >}} +[Expression Editor]: {{< ref "#expression-editor" >}} + +[Fundamentals > Blocks]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.MainDoc" >}} +[Fundamentals > Block Properties]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.MainDoc" >}} +[Fundamentals > Data Types]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.MainDoc" >}} + +[Working With > Culture]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Culture.MainDoc" >}} +[Working With > Current Culture]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Culture.CurrentCulture.MainDoc" >}} + +[Reference > Blocks]: {{< url path="Cortex.Reference.Blocks.MainDoc" >}} +[Blocks > Exception Blocks]: {{< url path="Cortex.Reference.Blocks.Exceptions.MainDoc" >}} +[Add Text At Beginning]: {{< url path="Cortex.Reference.Blocks.Text.AddText.AddTextAtBeginning.MainDoc" >}} + +[Examples]: {{< url path="Cortex.Reference.Blocks.Text.AddText.AddTextAtBeginning.Examples" >}} + +[Reference > Data Types]: {{< url path="Cortex.Reference.DataTypes.MainDoc" >}} +[Data Types > Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} +[Data Types > Char]: {{< url path="Cortex.Reference.DataTypes.Text.Char.MainDoc" >}} +[Data Types > Double]: {{< url path="Cortex.Reference.DataTypes.Numbers.Double.MainDoc" >}} +[Data Types > dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[Data Types > Dictionary<TKey, TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.MainDoc" >}} +[Fundamentals > Exceptions]: {{< url path="Cortex.Reference.Exceptions.MainDoc" >}} + +[Reference > Exceptions]: {{< url path="Cortex.Reference.Exceptions.MainDoc" >}} + +[Flow]: {{< url path="Cortex.Reference.Glossary.F-J.Flow" >}} +[flow developers]: {{< url path="Cortex.Reference.Glossary.F-J.FlowDeveloper" >}} +[Functional Blocks]: {{< url path="Cortex.Reference.Glossary.F-J.FunctionalBlock" >}} +[Initialised]: {{< url path="Cortex.Reference.Glossary.F-J.Initialised" >}} +[Integer]: {{< url path="Cortex.Reference.Glossary.F-J.Integer" >}} +[Int16]: {{< url path="Cortex.Reference.Glossary.F-J.Int16" >}} +[Int32]: {{< url path="Cortex.Reference.Glossary.F-J.Int32" >}} +[Intellisense]: {{< url path="Cortex.Reference.Glossary.F-J.Intellisense" >}} +[IDE]: {{< url path="Cortex.Reference.Glossary.F-J.IDE" >}} +[Literals]: {{< url path="Cortex.Reference.Glossary.K-O.Literal" >}} +[LowerCase]: {{< url path="Cortex.Reference.Glossary.K-O.LowerCase" >}} +[Methods]: {{< url path="Cortex.Reference.Glossary.K-O.Method" >}} +[Non-Null]: {{< url path="Cortex.Reference.Glossary.K-O.NonNull" >}} +[Null]: {{< url path="Cortex.Reference.Glossary.K-O.Null" >}} +[Operands]: {{< url path="Cortex.Reference.Glossary.K-O.Operand" >}} +[Operators]: {{< url path="Cortex.Reference.Glossary.K-O.Operator" >}} +[PascalCase]: {{< url path="Cortex.Reference.Glossary.P-T.PascalCase" >}} +[Platform]: {{< url path="Cortex.Reference.Glossary.P-T.Platform" >}} +[Portal]: {{< url path="Cortex.Reference.Glossary.P-T.Portal" >}} +[Processes]: {{< url path="Cortex.Reference.Glossary.P-T.Process" >}} +[Programming Language]: {{< url path="Cortex.Reference.Glossary.P-T.ProgrammingLanguage" >}} +[Properties]: {{< url path="Cortex.Reference.Glossary.P-T.PropertyBlock" >}} +[PropertiesC#]: {{< url path="Cortex.Reference.Glossary.P-T.PropertyCSharp" >}} +[Request]: {{< url path="Cortex.Reference.Glossary.P-T.Request" >}} +[Snippets]: {{< url path="Cortex.Reference.Glossary.P-T.Snippets" >}} +[Syntax Highlighting]: {{< url path="Cortex.Reference.Glossary.P-T.SyntaxHighlighting" >}} +[tasks]: {{< url path="Cortex.Reference.Glossary.P-T.Task" >}} +[Text]: {{< url path="Cortex.Reference.Glossary.P-T.Text" >}} +[Type]: {{< url path="Cortex.Reference.Glossary.P-T.Type" >}} +[UpperCase]: {{< url path="Cortex.Reference.Glossary.U-Z.UpperCase" >}} +[Variables]: {{< url path="Cortex.Reference.Glossary.U-Z.Variable" >}} +[16-bit]: {{< url path="Cortex.Reference.Glossary.0-9.16Bit" >}} +[32-bit]: {{< url path="Cortex.Reference.Glossary.0-9.32Bit" >}} +[data type]: {{< url path="Cortex.Reference.Glossary.A-E.DataType" >}} + +[Guides > CORTEX Studio]: {{< url path="Cortex.Guides.Studio.MainDoc" >}} +[CORTEX Studio > Debugging]: {{< url path="Cortex.Guides.Studio.Debugging.MainDoc" >}} +[CORTEX Studio > Expression Editor]: {{< url path="Cortex.Guides.Studio.ExpressionEditor.MainDoc" >}} + +[Fundamentals > Expressions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.Expressions" >}} + +[Casting and type conversions (C# Programming Guide)]: {{< url path="MSDocs.CSharp.Casting" >}} +[Cast expression (C# Reference)]: {{< url path="MSDocs.CSharp.CastExpression" >}} +[C# documentation]: {{< url path="MSDocs.CSharp.MainDoc" >}} +[List]: {{< url path="MSDocs.DotNet.Api.System.Collections.Generic.List" >}} +[String]: {{< url path="MSDocs.DotNet.Api.System.String.MainDoc" >}} + +[Monaco Editor]: {{< url path="MSGitHub.MonacoEditor.MainDoc" >}} + +[VS Code]: {{< url path="VisualStudio.Code.MainDoc" >}} + +[Bit (Wikipedia)]: {{< url path="Wikipedia.Bit" >}} +[Byte (Wikipedia)]: {{< url path="Wikipedia.Byte" >}} diff --git a/content/en/docs/2024.11/Reference/Glossary/f-j.md b/content/en/docs/2024.11/Reference/Glossary/f-j.md new file mode 100644 index 000000000..c422f93d8 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Glossary/f-j.md @@ -0,0 +1,267 @@ +--- +title: "F-J" +linkTitle: "F-J" +description: "Terms, words and phrases beginning with the letters F through J." +weight: 20 +--- + +# {{% param title %}} + +Terms, words and phrases beginning with the letters F through J. + +## F + +### Fast Track + +A Fast Track release follows a quick release cycle, allowing access to the latest features and functionality of {{% ctx %}}. + +### File + +A file is an object on a computer that stores data. + +Different files can store different types of data (i.e. a text file, `.txt`, stores textual data; an executable file, `.exe` stores data required for executing an application). + +### Flow + +A flow is an object in [{{% ctx %}} Studio][CORTEX Studio] that contains the logic and actions (in the form of [blocks][]) that the [{{% ctx %}}][CORTEX] [platform][] is able to execute for the [flow developers][]. + +For more detailed information about flows, see [Fundamentals > Flows][]. + +### Flow Developer + +A flow developer is a user that has been granted permissions to develop [flows][] in [{{% ctx %}} Studio][CORTEX Studio]. + +For more detailed information about granting permissions to develop [flows][], see [{{% ctx %}} Studio > Authorisation][CORTEX Studio > Authorisation]. + +### Folder + +A folder (or directory) is an object on a computer that contains [files][]. + +Folders can contain different types of file and can also contain other folders. + +### Format Parameter + +See [Text > Format Parameters][]. + +### Format Specifier + +See [Text > Format Specifiers][]. + +### Format Template + +See [Text > Format Templates][]. + +### Functional Block + +See [block][blocks]. + +## G + +### Generics + +Generic means not specific to a particular [data type][]. + +An example of a generic data type is [List<TItem>][] where TItem is a placeholder which indicates it can be initialised with any data type, such as: + +- List<int> and List<string> which are [homogenous][] lists that can only contain integers and strings respectively +- List<object> and List<dynamic> are [heterogenous][] lists that can contain multiple data types + +### Gmail + +Gmail is a free web-based email service provided by Google. + +### GUI + +GUI stands for "Graphical User Interface". It is used to graphically display information and represent user interactions with a system, without the need for typing commands. + +## H + +### Heterogenous + +Consists of dissimilar or diverse constituents. + +Heterogenous collections can contain multiple [data types][data type] (e.g. [List<dynamic>][List<TItem>]). + +Collections that can only contain a single data type are known as [homogenous][]. + +### Homogenous + +Consists of the same or a similar constituents. + +Homogenous collections can only contain a single [data type][] (e.g. [List<int>][List<TItem>]). + +Collections that can contain multiple data types are known as [heterogenous][]. + +### HTML Entity + +An HTML entity is a piece of text that begins with an ampersand (i.e. `&`) and ends with a semicolon (i.e. `;`). Entities are frequently used to display reserved characters (which would otherwise be interpreted as HTML code), and invisible characters (like non-breaking spaces). You can also use them in place of other characters that are difficult to type with a standard keyboard. + +See [WHATWG][WHATWG entity list] for a full list of HTML4 and HTML5 Entities. + +### Human-in-the-Loop + +Human-in-the-Loop or HITL allows people to interact with automated systems and processes, affecting the direction and functionality of the automated systems or process. + +## I + +### IDE + +IDE or Integrated Development Environment is a software application such as [{{% ctx %}} Studio][CORTEX Studio], that allows users to create a program or application. + +In [{{% ctx %}} Studio][CORTEX Studio], the users are called [flow developers][], and the programs are called [flows][]. + +Some common and popular examples of IDE's include: + +* Visual Studio +* VSCode +* Eclipse + +### IMAP + +Internet Messaging Access Protocol (IMAP) in an internet protocol used by email clients to retrieve email messages from a mail server. + +### Immutable + +Unable to be changed. + +### Implicit Cast + +The process of an application converting one [data type][] to another, without requiring an explicit instruction from the developer. + +For one [data type][] to be able to be implicitly cast to another, there should be no data loss during the conversion. + +An example would be converting a [16-Bit][] [integer][] ([Int16][]) to a [32-Bit][] [integer][] ([Int32][]), as the entire range of the 16-bit integer will fit into a 32-bit integer: + +```csharp +Int16 SixteenBitInteger = 100; +Int32 ThirtyTwoBitInteger = SixteenBitInteger; +``` + +See [Explicit Cast][] for an example of where data loss would occur during conversion, and would therefore require an explicit instruction from the developer. + +See [Casting and type conversions (C# Programming Guide)][] for a detailed technical explanation of casting in [C#][], the [programming language][] natively supported by the [{{% ctx %}}][CORTEX] [platform][] for writing simple [expressions][] and more complex [code][]. + +### Index + +An [Index][Collections > Indexes] is used to access an [item][] in a [list][] and relates to the position of the item in the list. + +Indexes are 0 based (e.g. The first item in a list is at index 0, the second item is at index 1, etc.). + +See [Collections > Indexes][]. + +### Intellisense + +IntelliSense is a general term for various [code][] editing features such as code completion and [snippets][]. + +### Initialised + +A [variable][] is initialised when its value has been set for the first time. + +### Input + +Input properties are used to provide values to a [block][blocks]. These properties are used in the block's execution. + +See [Block Properties > Input Properties][]. + +### InputOutput + +InputOutput properties are used to provide values to a [block][blocks]. These properties are used, updated and saved back to a variable during the block's execution. + +See [Block Properties > InputOutput Properties][]. + +### Integer + +A whole number (e.g. `100`). + +### Int16 + +A [data type][] that represents a whole number from `-32,768` through `32,767`. + +For more detailed information about the Int16 data type, see [Int16][]. + +### Int32 + +A [data type][] that represents a whole number from `-2,147,483,648` through `2,147,483,647`. + +For more detailed information about the Int32 data type, see [Int32][]. + +### Int64 + +A [data type][] that represents a whole number from `-9,223,372,036,854,775,808` through `9,223,372,036,854,775,807`. + +For more detailed information about the Int64 data type, see [Int64][]. + +### Invariant Culture + +A culture associated with the English language, but not with any country or region; it determines the default format for dates, times, numbers, currency values, the sorting order of text, casing conventions, and string comparisons. + +It has a stable and unchanging set of rules that cannot be customized and is unaffected by culture related changes to the operating system. + +See [Working With > Invariant Culture][]. + +### Item + +Each object within a [collection][] is called an [item][]. + +### IT + +IT stands for Information Technology, which is the use of computers to create, process, store, retrieve, and exchange electronic data and information. + +See [Wikipedia][Information Technology (Wikipedia)] for more information. + +## J + +### JSON + +JSON stands for JavaScript Object Notation, and is a format for storing and transporting data between computer applications. + +See [What is JSON][What is Json (W3)] for more information. + +[16-Bit]: {{< url path="Cortex.Reference.Glossary.0-9.16Bit" >}} +[32-Bit]: {{< url path="Cortex.Reference.Glossary.0-9.32Bit" >}} +[blocks]: {{< url path="Cortex.Reference.Glossary.A-E.Block" >}} +[code]: {{< url path="Cortex.Reference.Glossary.A-E.Code" >}} +[CORTEX]: {{< url path="Cortex.Reference.Glossary.A-E.Cortex" >}} +[CORTEX Studio]: {{< url path="Cortex.Reference.Glossary.A-E.CortexStudio" >}} +[C#]: {{< url path="Cortex.Reference.Glossary.A-E.CSharp" >}} +[data type]: {{< url path="Cortex.Reference.Glossary.A-E.DataType" >}} +[Explicit Cast]: {{< url path="Cortex.Reference.Glossary.A-E.ExplicitCast" >}} +[expressions]: {{< url path="Cortex.Reference.Glossary.A-E.Expression" >}} +[files]: {{< url path="Cortex.Reference.Glossary.F-J.File" >}} +[flows]: {{< url path="Cortex.Reference.Glossary.F-J.Flow" >}} +[flow developers]: {{< url path="Cortex.Reference.Glossary.F-J.FlowDeveloper" >}} +[heterogenous]: {{< url path="Cortex.Reference.Glossary.F-J.Heterogenous" >}} +[homogenous]: {{< url path="Cortex.Reference.Glossary.F-J.Homogenous" >}} +[integer]: {{< url path="Cortex.Reference.Glossary.F-J.Integer" >}} +[item]: {{< url path="Cortex.Reference.Glossary.F-J.Item" >}} +[list]: {{< url path="Cortex.Reference.Glossary.K-O.List" >}} +[platform]: {{< url path="Cortex.Reference.Glossary.P-T.Platform" >}} +[programming language]: {{< url path="Cortex.Reference.Glossary.P-T.ProgrammingLanguage" >}} +[snippets]: {{< url path="Cortex.Reference.Glossary.P-T.Snippets" >}} +[variable]: {{< url path="Cortex.Reference.Glossary.U-Z.Variable" >}} + +[List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.MainDoc" >}} + +[Fundamentals > Flows]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Flows.MainDoc" >}} +[Text > Format Parameters]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Formatting.FormatTemplates" >}} +[Text > Format Specifiers]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Formatting.FormatSpecifiers" >}} +[Text > Format Templates]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Formatting.FormatTemplates" >}} +[Working With > Invariant Culture]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Culture.InvariantCulture.MainDoc" >}} +[Block Properties > Input Properties]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Block Properties > InputOutput Properties]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[collection]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.MainDoc" >}} +[Collections > Indexes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Indexes.MainDoc" >}} +[CORTEX Studio > Authorisation]: {{< url path="Cortex.Guides.Gateway.Settings.StudioAuthorisation.MainDoc" >}} + +[Int16]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int16.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[Int64]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int64.MainDoc" >}} + +[Casting and type conversions (C# Programming Guide)]: {{< url path="MSDocs.CSharp.Casting" >}} + +[What is Json (W3)]: {{< url path="W3.WhatIsJson" >}} + +[Information Technology (Wikipedia)]: {{< url path="Wikipedia.InformationTechnology" >}} + +[WHATWG entity list]: {{< url path="WHATWG.EntityList" >}} diff --git a/content/en/docs/2024.11/Reference/Glossary/k-o.md b/content/en/docs/2024.11/Reference/Glossary/k-o.md new file mode 100644 index 000000000..e13a3bcc2 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Glossary/k-o.md @@ -0,0 +1,162 @@ +--- +title: "K-O" +linkTitle: "K-O" +description: "Terms, words and phrases beginning with the letters K through O." +weight: 30 +--- + +# {{% param title %}} + +Terms, words and phrases beginning with the letters K through O. + +## K + +## L + +### Linux + +Linux is an open-source Unix-like operating system based on the Linux kernel. + +### List + +A [data type][] that represents a list of items that can iterated or looped over. + +For more detailed information about the List data type, see [Data Types > List<TItem>][]. + +### Literal + +A literal is an explicit value that is not calculated during the execution of the flow. A literal can be any of the following data types: + +- [String][] +- [Char][] +- [Int32][] +- [Int64][] +- [Double][] +- [Single][] +- [Boolean][] +- [Object][] +- [Dictionary][] +- [Structure][] +- [List][] + +### lowercase + +The term lowercase refers to small letters (a,b,c ...) as distinguished from capital letters (A,B,C...). + +### Low-code + +Low-code is an approach to developing [automation][] through a [graphical user interface (GUI)][GUI] that requires little to no coding; where the [developers][] predominantly use [drag-and-drop][] features, rather than writing [code][]. + +## M + +### Method + +In [C#][], a Method is used to execute behaviour of a [data type][] (e.g. the `ToString()` method returns a text representation of the data type). + +See [Method Expressions][] for information on how methods can be used within the [expression editor][]. + +## N + +### Non-Null + +Non-Null indicates that a [data type][] has been [initialised][] and has a value. + +### NServiceBus + +NServiceBus is a messaging framework built on top of Azure Service Bus, it is used to abstract messaging infrastructure within [Service Fabric][]. + +### Nuget Package + +A NuGet package is a ZIP file with the .nupkg extension. It contains compiled code ([DLLs][]), other files related to that code. + +NuGet can be published and shared to a public or private host. + +### Null + +Null indicates that a [data type][] has been [initialised][] with no value. + +## O + +### Object + +A [data type][] that indicates that any data type can be used. + +For more detailed information about the Object data type, see [Data Types > Object][]. + +### Occurrence + +A value can occur in a [collection][] multiple times, these are called Occurrences. + +Occurrences are 1 based (e.g. The first occurrence of an item in a list is at occurrence 1, the second occurrence of an item is at occurrence 2, etc.). + +See [Collections > Occurrences][]. + +### On-premise + +On-premise refers to infrastructure and software that is deployed and running within a physical location of an organisation. + +### Operand + +Describes a [literal][] or [variable][] that has the capability to be operated on. For example, in the [expression][] `1 + 2` the literal values `1` and `2` are operands, whereas `+` is an [operator][]. + +### Operator + +Operators are used to manipulate and check operands values. For example, in the [expression][] `1 + 2` the operator `+` adds the two [operands][operand] `1` and `2`, resulting in the expression evaluating to `3`. + +For more detailed information about operators, see [C# operators and expressions][]. + +### Output + +Output properties are used to save values from a [block][blocks]. These properties will saved to a [variable][] during the block’s execution. + +See [Block Properties > Output Properties][]. + +### Out-of-the-box (OOTB) + +Out-of-the-box functionality of a product that works immediately after any installation without any configuration or modification. + +### Outlook + +Outlook is a free web-based email service provided by Microsoft. + +[List]: {{< ref "#list" >}} +[literal]: {{< ref "#literal" >}} +[operand]: {{< ref "#operand" >}} +[operator]: {{< ref "#operator" >}} +[Object]: {{< ref "#object" >}} + +[expression]: {{< url path="Cortex.Reference.Glossary.A-E.Expression" >}} +[variable]: {{< url path="Cortex.Reference.Glossary.U-Z.Variable" >}} + +[automation]: {{< url path="Cortex.Reference.Glossary.A-E.Automation" >}} +[blocks]: {{< url path="Cortex.Reference.Glossary.A-E.Block" >}} +[Boolean]: {{< url path="Cortex.Reference.Glossary.A-E.Boolean" >}} +[Char]: {{< url path="Cortex.Reference.Glossary.A-E.Char" >}} +[code]: {{< url path="Cortex.Reference.Glossary.A-E.Code" >}} +[C#]: {{< url path="Cortex.Reference.Glossary.A-E.CSharp" >}} +[data type]: {{< url path="Cortex.Reference.Glossary.A-E.DataType" >}} +[developers]: {{< url path="Cortex.Reference.Glossary.A-E.Developer" >}} +[DLLs]: {{< url path="Cortex.Reference.Glossary.A-E.DLL" >}} +[drag-and-drop]: {{< url path="Cortex.Reference.Glossary.A-E.DragAndDrop" >}} +[Dictionary]: {{< url path="Cortex.Reference.Glossary.A-E.Dictionary" >}} +[Double]: {{< url path="Cortex.Reference.Glossary.A-E.Double" >}} +[expression editor]: {{< url path="Cortex.Reference.Glossary.A-E.ExpressionEditor" >}} +[GUI]: {{< url path="Cortex.Reference.Glossary.F-J.GUI" >}} +[initialised]: {{< url path="Cortex.Reference.Glossary.F-J.Initialised" >}} +[Int32]: {{< url path="Cortex.Reference.Glossary.F-J.Int32" >}} +[Int64]: {{< url path="Cortex.Reference.Glossary.F-J.Int32" >}} +[Single]: {{< url path="Cortex.Reference.Glossary.P-T.Single" >}} +[String]: {{< url path="Cortex.Reference.Glossary.P-T.String" >}} +[Service Fabric]: {{< url path="Cortex.Reference.Glossary.P-T.ServiceFabric" >}} +[Structure]: {{< url path="Cortex.Reference.Glossary.P-T.Structure" >}} + +[Method Expressions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MethodExpressions" >}} +[collection]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.MainDoc" >}} +[Data Types > List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.MainDoc" >}} +[Data Types > Object]: {{< url path="Cortex.Reference.DataTypes.All.Object.MainDoc" >}} + +[Block Properties > Output Properties]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Collections > Occurrences]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.Occurrences.MainDoc" >}} + +[C# operators and expressions]: {{< url path="MSDocs.CSharp.OperatorsAndExpressions" >}} diff --git a/content/en/docs/2024.11/Reference/Glossary/p-t.md b/content/en/docs/2024.11/Reference/Glossary/p-t.md new file mode 100644 index 000000000..fde521c1e --- /dev/null +++ b/content/en/docs/2024.11/Reference/Glossary/p-t.md @@ -0,0 +1,210 @@ +--- +title: "P-T" +linkTitle: "P-T" +description: "Terms, words and phrases beginning with the letters P through T." +weight: 40 +--- + +# {{% param title %}} + +Terms, words and phrases beginning with the letters P through T. + +## P + +### PascalCase + +PascalCase is a typographical convention in which phrases are written without spaces or punctuation, indicating the separation of words with a single capitalized letter, and the first word also starting with a capitalized letter. E.g. "FirstName" and "LastName". + +PascalCase is often used as a naming convention in programming languages such as [C#][]. + +See also [camelCase][]. + +### Platform + +The environment in which software is executed. This can include the hardware, operating system, web browsers or other programs. + +### Portal + +A portal is a specially designed website that serves as a single point of access for information or functionality. + +### PowerShell + +See [Windows PowerShell][] + +### PowerShell Core + +An open-source version of [PowerShell][Windows PowerShell] that can be run on various platforms, such as: + +- Linux +- macOs +- Windows + +See [What is PowerShell?][] for more information about PowerShell Core and Windows PowerShell. + +### Process + +A process is a collection of related, structured [tasks][] completed by people or equipment in a specific sequence. + +### Programming Language + +A programming language is a notation for writing computer programs, which are specifications of a computation or algorithm. + +### Property + +#### Block (property) + +See [Block Property][]. + +#### C# (property) + +In [C#][], a Property is used to access or update attributes of a [data type][] (e.g. the `Message` property of an [Exception][] returns the reason the exception occurred). + +See [Property Expressions][] for information on how properties can be used within the [expression editor][]. + +### Property Type + +There are three types of [block property][]: + +- [Input Properties][] +- [Output Properties][] +- [InputOutput Properties][] + +See [Block Properties > What is a Block Property][]. + +## Q + +## R + +### Read-only + +Refers to computer files or memory that can be read or used, but not updated or added to in any way. + +### Release + +A Release follows a longer term release cycle, allowing access to the latest stable version of {{% ctx %}} and longer term support. + +### Request + +A method of communication over a network, in which one computer sends a request to another, which can then respond to the request. + +## S + +### SASL + +Simple Authentication and Security Layer (SASL) is a framework for protocols like [SMTP][] and [IMAP][] to add authentication support. + +### SDK + +SDK stands for "Software Development Kit", and is a collection of software development tools. + +An SDK facilitates the creation of applications by having a compiler, debugger and sometimes a software framework. + +### Service Fabric + +Service Fabric is an open source project developed by Microsoft used to deliver highly available and durable services at cloud-scale. + +For more information see [What is Service Fabric?][] + +### Single + +A [data type][] that represents a fractional, or very large or small number from `-3.402823e+38` through `3.402823e+38`. + +For more detailed information about the Single data type, see [Data Types > Single][]. + +### SMTP + +Simple Mail Transfer Protocol (SMTP) is an internet protocol for email transmission. Mail servers typically only use SMTP to send emails. + +### Snippets + +Snippet is a term for a small section of re-usable code. + +Snippets can be accessed from any editor using [Intellisense][]. + +### Software Development + +The process of developing software. + +### SSL + +Secure Sockets Layer (SSL) is the technology that keeps an internet connection secure via the encryption of data in transit. + +### String + +A [data type][] that represents text. + +For more detailed information about the String data type, see [Data Types > String][]. + +### Structure + +A [data type][] that represents a collection of key/item pairs, where each pair consists of a unique [String][Data Types > String] key and its associated item. + +For more detailed information about the Structure data type, see [Data Types > Structure][]. + +### Syntax Highlighting + +Syntax highlighting is a feature of text editors that are used for programming. The feature displays text in different colours and fonts according to a category of terms. + +Syntax Highlighting improves the readability and provides context of text, and can be used to identify errors within a block of [code][]. + +## T + +### Task + +A unit of work to be done or undertaken. + +### Text + +Data which can be interpreted as human-readable text, this is represented by [Strings][Data Types > String] in [C#][]. + +### Title Case + +Title Case is a typographical convention in which the first letter of all words are capitalized and all other letters lower cased; except for words that are entirely upper cased, such as acronyms, which remain upper cased. + +### TLS + +Transport Layer Security is a more secure, updated version of [SSL][]. Note that TLS is still often referred to as [SSL][]. + +### Trigger + +A mechanism used to initiate an action when a specific event occurs (e.g. When a given date or time is reached). + +### Type + +See [Data Type][data type]. + +### Typeahead + +Typeahead is a language prediction tool that is used to provide suggestions based on what a user has already typed. + +[SMTP]: {{< ref "#smtp" >}} +[SSL]: {{< ref "#ssl" >}} + +[Block Property]: {{< url path="Cortex.Reference.Glossary.A-E.BlockProperty" >}} +[C#]: {{< url path="Cortex.Reference.Glossary.A-E.CSharp" >}} +[camelCase]: {{< url path="Cortex.Reference.Glossary.A-E.CamelCase" >}} +[code]: {{< url path="Cortex.Reference.Glossary.A-E.Code" >}} +[data type]: {{< url path="Cortex.Reference.Glossary.A-E.DataType" >}} +[expression editor]: {{< url path="Cortex.Reference.Glossary.A-E.ExpressionEditor" >}} +[Intellisense]: {{< url path="Cortex.Reference.Glossary.F-J.Intellisense" >}} +[IMAP]: {{< url path="Cortex.Reference.Glossary.F-J.IMAP" >}} +[tasks]: {{< url path="Cortex.Reference.Glossary.P-T.Task" >}} +[Windows PowerShell]: {{< url path="Cortex.Reference.Glossary.U-Z.WindowsPowerShell" >}} + +[Data Types > String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Data Types > Structure]: {{< url path="Cortex.Reference.DataTypes.Collections.Structure.MainDoc" >}} +[Data Types > Single]: {{< url path="Cortex.Reference.DataTypes.Numbers.Single.MainDoc" >}} + +[Exception]: {{< url path="Cortex.Reference.Exceptions.MainDoc" >}} + +[Block Properties > What is a Block Property]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.MainDoc" >}} + +[Input Properties]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput Properties]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output Properties]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Property Expressions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.PropertyExpressions" >}} + +[What is PowerShell?]: {{< url path="MSDocs.PowerShell.WhatIsPowerShell" >}} + +[What is Service Fabric?]: {{< url path="MSDocs.ServiceFabric.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/Glossary/u-z.md b/content/en/docs/2024.11/Reference/Glossary/u-z.md new file mode 100644 index 000000000..116339f71 --- /dev/null +++ b/content/en/docs/2024.11/Reference/Glossary/u-z.md @@ -0,0 +1,67 @@ +--- +title: "U-Z" +linkTitle: "U-Z" +description: "Terms, words and phrases beginning with the letters U through Z." +weight: 50 +--- + +# {{% param title %}} + +Terms, words and phrases beginning with the letters U through Z. + +## U + +### Unicode + +Unicode is a standard used to ensure consistent encoding, representation, and handling of text. + +See [What is Unicode?][]. + +### UPPERCASE + +The term uppercase refers to capital letters (A,B,C...) as distinguished from small letters (a,b,c ...). + +## V + +### Variable + +A variable is a named container for storing data that can then be used in [Block Properties][]. + +Data in a variable can be read, updated, or removed by different blocks. + +For more detailed information about variables, see [Fundamentals > Variables][]. + +## W + +### Whitespace + +In programming, whitespace is any character or series of characters that represent horizontal or vertical space in typography. When rendered, a whitespace character does not correspond to a visible character, but typically does occupy an area on a page. + +See [Text > Empty Text and Whitespace][]. + +### Windows PowerShell + +PowerShell is a task automation and configuration management program from Microsoft, consisting of a command-line shell and the associated scripting language. + +See [What is PowerShell?][] for more information about PowerShell Core and Windows PowerShell. + +## X + +## Y + +## Z + +### Zero Based + +Zero Based is a way of numbering in which the initial item of a list is assigned the [index][] `0`. + +[index]: {{< url path="Cortex.Reference.Glossary.F-J.Index" >}} + +[Block Properties]: {{< url path="Cortex.Reference.Glossary.A-E.BlockProperty" >}} +[Fundamentals > Variables]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.MainDoc" >}} + +[Text > Empty Text and Whitespace]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.EmptyTextAndWhitespace.MainDoc" >}} + +[What is Unicode?]: {{< url path="Unicode.WhatIsUnicode" >}} + +[What is PowerShell?]: {{< url path="MSDocs.PowerShell.WhatIsPowerShell" >}} diff --git a/content/en/docs/2024.11/Reference/_index.md b/content/en/docs/2024.11/Reference/_index.md new file mode 100644 index 000000000..403754f09 --- /dev/null +++ b/content/en/docs/2024.11/Reference/_index.md @@ -0,0 +1,6 @@ +--- +title: "Reference" +linkTitle: "Reference" +description: "This section includes all reference documentation for the {{% ctx %}} Innovation platform." +weight: 100 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/data-types/_index.md b/content/en/docs/2024.11/Reference/data-types/_index.md new file mode 100644 index 000000000..fc92973ac --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/_index.md @@ -0,0 +1,6 @@ +--- +title: "Data Types" +linkTitle: "Data Types" +description: "This section includes all reference documentation for data types." +weight: 10 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/data-types/all/_index.md b/content/en/docs/2024.11/Reference/data-types/all/_index.md new file mode 100644 index 000000000..ad74c877d --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/all/_index.md @@ -0,0 +1,6 @@ +--- +title: "All" +linkTitle: "All" +description: "Data types used to represent all other data types." +weight: 1 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/data-types/all/dynamic.md b/content/en/docs/2024.11/Reference/data-types/all/dynamic.md new file mode 100644 index 000000000..a86e1e7a7 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/all/dynamic.md @@ -0,0 +1,83 @@ +--- +title: "dynamic" +linkTitle: "dynamic" +description: "Any data type can be used where a `dynamic` data type is required. `dynamic` data type is identical to the `Object` data type, except for one difference; `dynamic` data types do not need to be explicitly cast to other data types to be used, whereas `Object` data types do." +--- + +# {{% param title %}} + +## Summary + +Any data type can be used where a `dynamic` data type is required. + +`dynamic` data type is identical to the [Object][] data type, except for one difference; `dynamic` data types do not need to be explicitly cast to other data types to be used, whereas [Object][] data types do. + +| | | +|-|-| +| **Category:** | All | +| **Name:** | `dynamic` | +| **Full Name:** | N/A | +| **Alias:** | N/A | +| **Description:** | Any data type can be used where a `dynamic` data type is required. `dynamic` data type is identical to the [Object][] data type, except for one difference; `dynamic` data types do not need to be explicitly cast to other data types to be used, whereas [Object][] data types do. | +| **Size:** | Varies | +| **Default Value:** | `null` | +| **Can be used as:** | `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Remarks + +### When is the dynamic Data Type Used? + +The `dynamic` data type is only likely to be encountered in the following circumstances: + +* An [Input][] or [InputOutput][] property of a Block can accept any data type +* An [Output][] property of a Block can return any data type +* A [Collection][] that contains different data types (e.g. `[1, "Text", true]`) is saved to a [Variable][] + +Also note, in these circumstances it is more likely to encounter the `dynamic` data type, rather than [Object][]. See [Object vs dynamic][] for more information. + +### Object vs dynamic + +[Object][] and `dynamic` data types are identical, except for one difference: + +* Once a variable contains an [Object][] data type, if it needs to be used as its original data type it must be cast back to that data type (e.g. `(Int32)($)ObjectVariableContainingAnInteger`); a `dynamic` data type does not. + +### Property Editor Support + +* The Expression Editor is available for [Input][] properties where the data type is `dynamic`. +* The Literal Editor is not available for [Input][] properties where the data type is `dynamic`. +* The Variable Editor is available for [InputOutput][] and [Output][] properties where the data type is `dynamic`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +* [Object][] + +### Related Concepts + +None + +### External Documentation + +* [Using dynamic][] + +[Object vs dynamic]: {{< ref "#object-vs-dynamic" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Collection]: {{< url path="Cortex.Reference.DataTypes.Collections.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.WhatIsAVariable.MainDoc" >}} + +[System.Object]: {{< url path="MSDocs.DotNet.Api.System.Object.MainDoc" >}} +[Using dynamic]: {{< url path="MSDocs.DotNet.Api.System.dynamic.MainDoc" >}} + +[Object]: {{< url path="Cortex.Reference.DataTypes.All.Object.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/all/object.md b/content/en/docs/2024.11/Reference/data-types/all/object.md new file mode 100644 index 000000000..e1dc90c7d --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/all/object.md @@ -0,0 +1,92 @@ +--- +title: "Object" +linkTitle: "Object" +description: "Any data type can be used where an `Object` data type is required, as all data types derive from `Object`." +--- + +# {{% param title %}} + +

(System.Object)

+ +## Summary + +Any data type can be used where an `Object` data type is required, as all data types derive from `Object`. + +`Object` data type is identical to the [dynamic][] data type, except for one difference; [dynamic][] data types do not need to be explicitly cast to other data types to be used, whereas `Object` data types do. + +| | | +|-|-| +| **Category:** | All | +| **Name:** | `Object` | +| **Full Name:** | `System.Object` | +| **Alias:** | `object` | +| **Description:** | Any data type can be used where an `Object` data type is required, as all data types derive from `Object`. `Object` data type is identical to the [dynamic][] data type, except for one difference; [dynamic][] data types do not need to be explicitly cast to other data types to be used, whereas `Object` data types do. | +| **Size:** | Varies | +| **Default Value:** | `null` | +| **Can be used as:** | `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Remarks + +### When is the Object Data Type Used? + +The `Object` data type is only likely to be encountered in the following circumstances: + +* An [Input][] or [InputOutput][] property of a Block can accept any data type +* An [Output][] property of a Block can return any data type +* A [Collection][] that contains different data types (e.g. `[1, "Text", true]`) is saved to a [Variable][] + +Also note, in these circumstances it is more likely to encounter the [dynamic][] data type, rather than `Object`. See [Object vs dynamic][] for more information. + +It is also highly unlikely that you will need to create an `Object`; typically you will create and work with other data types such as [String][] or [Int32][] that derive from `Object`. However, if ever required you can create a new object using the following expression: + +```csharp +new Object() +``` + +### Object vs dynamic + +`Object` and [dynamic][] data types are identical, except for one difference: + +* Once a variable contains an `Object` data type, if it needs to be used as its original data type it must be cast back to that data type (e.g. `(Int32)($)ObjectVariableContainingAnInteger`); a [dynamic][] data type does not. + +### Property Editor Support + +* The Expression Editor is available for [Input][] properties where the data type is `Object`. +* The Literal Editor is not available for [Input][] properties where the data type is `Object`. +* The Variable Editor is available for [InputOutput][] and [Output][] properties where the data type is `Object`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +* [dynamic][] + +### Related Concepts + +None + +### External Documentation + +* [System.Object][] +* [Using dynamic][] + +[Object vs dynamic]: {{< ref "#object-vs-dynamic" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Collection]: {{< url path="Cortex.Reference.DataTypes.Collections.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.WhatIsAVariable.MainDoc" >}} + +[System.Object]: {{< url path="MSDocs.DotNet.Api.System.Object.MainDoc" >}} +[Using dynamic]: {{< url path="MSDocs.DotNet.Api.System.dynamic.MainDoc" >}} + +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/collections/_index.md b/content/en/docs/2024.11/Reference/data-types/collections/_index.md new file mode 100644 index 000000000..63ba83fc5 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/collections/_index.md @@ -0,0 +1,6 @@ +--- +title: "Collections" +linkTitle: "Collections" +description: "Data types used for working with collections such as Lists, Dictionaries and Structures." +weight: 1 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/data-types/collections/array.md b/content/en/docs/2024.11/Reference/data-types/collections/array.md new file mode 100644 index 000000000..c4b7db754 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/collections/array.md @@ -0,0 +1,114 @@ +--- +title: "Array" +linkTitle: "Array" +description: "Any data type representing an array of items. The type of items that can be contained in the array depend upon the type of the array. Common examples include arrays of strings and integers (i.e. `String[]` and `Int32[]`)." +--- + +# {{% param title %}} + +

(System.Array)

+ +## Summary + +Any data type representing an array of items. + +The type of items that can be contained in the array depend upon the type of the array. + +Common examples include arrays of strings and integers (i.e. `String[]` and `Int32[]`); for more see [Most Common Array Data Types][]. + +Arrays are very similar to Lists, but have some key differences, such as they are a fixed size and cannot be added to, or deleted from. For more information about the differences between Arrays and Lists, and when to use each of them see [Arrays vs Lists][]. + +| | | +|-|-| +| **Category:** | Collections | +| **Name:** | `Array` | +| **Full Name:** | `System.Array` | +| **Alias:** | N/A | +| **Description:** | Any data type representing an array of items. The type of items that can be contained in the array depend upon the type of the array. | +| **Size:** | Varies | +| **Default Value:** | `null` | +| **Can be used as:** | `IEnumerable`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Remarks + +### Most Common Array Data Types + +Any of the following data types can be used where an `Array` is required: + +* `Object[]` - an array containing [Object][] items +* `String[]` - an array containing [String][] items +* `Boolean[]` - an array containing [Boolean][] items +* `Int16[]` - an array containing [Int16][] items +* `Int32[]` - an array containing [Int32][] items +* `Int64[]` - an array containing [Int64][] items +* `Single[]` - an array containing [Single][] items +* `Double[]` - an array containing [Double][] items + +### Create an Array + +The following table shows some of the ways that an `Array` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use an explicit `Array` expression | `new Object[] {}` | `[]` | Expression | `Object[]` containing zero items | +| | `new String[] { "Some Text" }` | `["Some Text"]` | Expression | `String[]` containing one String item | +| | `new Boolean[] { true, false }` | `[true, false]` | Expression | `Boolean[]` containing two Boolean items | +| | `new Int32[] { 1, 2, 3 }` | `[1, 2, 3]` | Expression | `Int32[]` containing three Int32 items | +| | `new Object[] { "Some Text", true, 1 }`| `["Some Text", true, 1]` | Expression | `Object[]` containing a String item, a Boolean item and an Int32 item | +| Use an implicit `Array` expression | `new [] { "Some Text" }` | `["Some Text"]` | Expression | `String[]` containing one String item. Implicit arrays must only contain a single data type | +| | `new [] { true, false }` | `[true, false]` | Expression | `Boolean[]` containing two Boolean items | +| | `new [] { 1, 2, 3 }` | `[1, 2, 3]` | Expression | `Int32[]` containing three Int32 items | + +### Convert Array to Text + +The following table shows some of the ways that an `Array` can be converted to text. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `Convert Object To Json` block | where `Object` property has an `Object[]` value of `["Some Text", true, 1]` | `"[\r\n \"Some Text\",\r\n true,\r\n 1\r\n]"` | N/A | See [Convert Object To Json][] | + +### Property Editor Support + +Currently no [Input][], [InputOutput][] or [Output][] properties require the `Array` data type. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +* [IEnumerable][] + +### Related Concepts + +* [Working with Collections][] + +### External Documentation + +* [System.Array][] + +[Most Common Array Data Types]: {{< ref "#most-common-array-data-types" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} + +[System.Array]: {{< url path="MSDocs.DotNet.Api.System.Array" >}} + +[Object]: {{< url path="Cortex.Reference.DataTypes.All.Object.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} +[Int16]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int16.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[Int64]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int64.MainDoc" >}} +[Single]: {{< url path="Cortex.Reference.DataTypes.Numbers.Single.MainDoc" >}} +[Double]: {{< url path="Cortex.Reference.DataTypes.Numbers.Double.MainDoc" >}} + +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable.MainDoc" >}} +[Working with Collections]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.MainDoc" >}} +[Arrays vs Lists]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.WhatIsACollection.ArraysVersusLists" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/collections/dictionary-2.md b/content/en/docs/2024.11/Reference/data-types/collections/dictionary-2.md new file mode 100644 index 000000000..ff599e65c --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/collections/dictionary-2.md @@ -0,0 +1,96 @@ +--- +title: "Dictionary" +linkTitle: "Dictionary" +description: "Used to represent a collection of key/item pairs. `TKey` indicates the data type of the keys used to access the items contained in the collection. `TItem` indicates the data type of the items contained in the collection. Each `TItem` can be individually accessed by a key." +--- + +# {{% param title %}} + +

(System.Collections.Generic.Dictionary<TKey, TItem>)

+ +## Summary + +The `Dictionary` data type is used to represent a collection of key/item pairs. + +`TKey` indicates the data type of the keys used to access the items contained in the collection. `TItem` indicates the data type of the items contained in the collection. Each `TItem` can be individually accessed by a key. + +| | | +|-|-| +| **Category:** | Collections | +| **Name:** | `Dictionary` | +| **Full Name:** | `System.Collections.Generic.Dictionary` | +| **Alias:** | N/A | +| **Description:** | A collection of key/item pairs. `TKey` indicates the data type of the keys used to access the items contained in the collection. `TItem` indicates the data type of the items contained in the collection. Each `TItem` can be individually accessed by a key. | +| **Size:** | Varies | +| **Default Value:** | `null` | +| **Can be used as:** | `IDictionary`, `IEnumerable`, `Object`, `dynamic` | +| | `IEnumerable>` (e.g. where `Dictionary` is `Dictionary` and `IEnumerable>` is `IEnumerable>`) | +| **Can be cast to:** | N/A | + +## Remarks + +### Create a Dictionary<TKey, TItem> + +The following table shows some of the ways that a `Dictionary` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use a `Dictionary` expression | `new Dictionary()` | `{}` | Expression | `Dictionary` containing zero items | +| | `new Dictionary() { { "StringKey1", "StringValue" } }` | `{ "StringKey1": "StringValue" }` | Expression | `Dictionary` containing one String item with a String key | +| | `new Dictionary() { { "StringKey1", true }, { "StringKey2", false } }` | `{ "StringKey1": true, "StringKey2": false }` | Expression | `Dictionary` containing two Boolean items with String keys | +| | `new Dictionary() { { "StringKey1", 1 }, { "StringKey2", 2 }, { "StringKey3", 3 } }`| `{ "StringKey1": 1, "StringKey2": 2, "StringKey3": 3 }` | Expression | `Dictionary` containing three Int32 item with String keys| +| | `new Dictionary() { { "StringKey1", "StringValue" }, { "StringKey2", true }, { "StringKey3", 1 } }`| `{ "StringKey1": "StringValue", "StringKey2": true, "StringKey3": 1 }` | Expression | `Dictionary` containing a String item, a Boolean item and an Int32 item with String keys | + +### Convert Dictionary<TKey, TItem> to Text + +The following table shows some of the ways that a `Dictionary` can be converted to text. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `Convert Object To Json` block | where `Object` property has a `Dictionary` value of `{ "StringKey1": "StringValue", "StringKey2": true, "StringKey3": 1 }` | `"{\r\n \"StringKey1\": \"StringValue\",\r\n \"StringKey2\": true,\r\n \"StringKey3\": 1\r\n}"` | N/A | See [Convert Object To Json][] | + +### Property Editor Support + +* The Expression Editor is available for [Input][] properties where the data type is `Dictionary`. +* The Literal Editor is not available for [Input][] properties where the data type is `Dictionary`. +* The Variable Editor is available for [InputOutput][] and [Output][] properties where the data type is `Dictionary`. + +### Known Limitations + +* Currently, only certain data types can be used for `TKey`. These include, but not limited to: + * `String` + * `Int32` + * `Double` + * `Boolean` + * `DateTimeOffset` +* If the data type of `TKey` is anything other than a `String`, when viewing the `Dictionary` in Gateway the key value will be displayed as its `ToString()` representation (e.g. an `Int32` key value of `1` will be displayed as `"1"` instead of `1`). + +## See Also + +### Related Data Types + +* [IEnumerable][] +* [IEnumerable<TItem>][] +* [IDictionary<TKey, TItem>][] + +### Related Concepts + +* [Working with Collections][] + +### External Documentation + +* [System.Collections.Generic.Dictionary<TKey, TItem>][] + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} + +[System.Collections.Generic.Dictionary<TKey, TItem>]: {{< url path="MSDocs.DotNet.Api.System.Collections.Generic.Dictionary" >}} + +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable.MainDoc" >}} +[IEnumerable<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[IDictionary<TKey, TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} + +[Working with Collections]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/collections/icomparer-1.md b/content/en/docs/2024.11/Reference/data-types/collections/icomparer-1.md new file mode 100644 index 000000000..03b5bbe64 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/collections/icomparer-1.md @@ -0,0 +1,87 @@ +--- +title: "IComparer" +linkTitle: "IComparer" +description: "Any data type representing a comparer that can be used to order two values of `TPriority`." +--- + +# {{% param title %}} + +

(System.Collections.Generic.IComparer<TPriority>)

+ +## Summary + +Any data type representing a comparer that can be used to order two values of [TPriority][]. + +`TPriority` indicates the data type of the priorities that are being compared. + +`StringComparer` is the most common example. + +| | | +|-|-| +| **Category:** | Collections | +| **Name:** | `IComparer` | +| **Full Name:** | `System.Collections.Generic.IComparer` | +| **Alias:** | N/A | +| **Description:** | Any data type representing a comparer that can be used to order two values of [TPriority][]. | +| **Default Value:** | `null` | +| **Can be used as:** | `IComparer`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Remarks + +### Most Common IComparer<TPriority> Data Types + +Any of the following data types can be used where an `IComparer` is required: + +* [StringComparer][] + +### Create an IComparer<TPriority> + +For some of the ways that an `IComparer` can be created, please see each of the `IComparer` data types: + +* [StringComparer][StringComparerCreateNew] + +### Convert IComparer<TPriority> to Text + +For some of the ways that an `IComparer` can be converted to text, please see each of the `IComparer` data types: + +* [StringComparer][StringComparerConvertToText] + +### Property Editor Support + +* The Expression Editor is available for [Input][] properties where the data type is `IComparer`. +* The Literal Editor is not available for [Input][] properties where the data type is `IComparer`. +* The Variable Editor is available for [InputOutput][] and [Output][] properties where the data type is `IComparer`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +* [StringComparer][] +* [QueueWithPriority][] + +### Related Concepts + +None + +### External Documentation + +* [System.Collections.Generic.IComparer<TItem>][IComparer] + +[TPriority]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[IComparer]: {{< url path="MSDocs.DotNet.Api.System.IComparer.MainDoc" >}} + +[QueueWithPriority]: {{< url path="Cortex.Reference.DataTypes.Collections.QueueWithPriority.MainDoc" >}} + +[StringComparer]: {{< url path="Cortex.Reference.DataTypes.Text.StringComparer.MainDoc">}} +[StringComparerConvertToText]: {{< url path="Cortex.Reference.DataTypes.Text.StringComparer.ConvertToText">}} +[StringComparerCreateNew]: {{< url path="Cortex.Reference.DataTypes.Text.StringComparer.CreateNew">}} diff --git a/content/en/docs/2024.11/Reference/data-types/collections/idictionary-2.md b/content/en/docs/2024.11/Reference/data-types/collections/idictionary-2.md new file mode 100644 index 000000000..3a48bb474 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/collections/idictionary-2.md @@ -0,0 +1,103 @@ +--- +title: "IDictionary" +linkTitle: "IDictionary" +description: "Any data type representing a collection of key/item pairs. `TKey` indicates the data type of the keys used to access the items contained in the collection. `TItem` indicates the data type of the items contained in the collection. Each `TItem` can be individually accessed by a key. `Dictionary` is the most common example." +--- + +# {{% param title %}} + +

(System.Collections.Generic.IDictionary<TKey, TItem>)

+ +## Summary + +Any data type representing a collection of key/item pairs. + +`TKey` indicates the data type of the keys used to access the items contained in the collection. `TItem` indicates the data type of the items contained in the collection. Each `TItem` can be individually accessed by a key. + +`Dictionary` is the most common example. + +| | | +|-|-| +| **Category:** | Collections | +| **Name:** | `IDictionary` | +| **Full Name:** | `System.Collections.Generic.IDictionary` | +| **Alias:** | N/A | +| **Description:** | Any data type representing a collection of key/item pairs. `TKey` indicates the data type of the keys used to access the items contained in the collection. `TItem` indicates the data type of the items contained in the collection. Each `TItem` can be individually accessed by a key. | +| **Size:** | Varies | +| **Default Value:** | `null` | +| **Can be used as:** | `IEnumerable`, `Object`, `dynamic` | +| | `IEnumerable>` (e.g. where `IDictionary` is `IDictionary` and `IEnumerable>` is `IEnumerable>`) | +| **Can be cast to:** | N/A | + +## Remarks + +### Most Common IDictionary<TKey, TItem> Data Types + +Any of the following data types can be used where an `IDictionary` is required: + +* [Dictionary<TKey, TItem>][] +* [Structure][] + +### Create an IDictionary<TKey, TItem> + +For some of the ways that an `IDictionary` can be created, please see each of the `IDictionary` data types: + +* [Dictionary<TKey, TItem>][DictionaryCreateNew] +* [Structure][StructureCreateNew] + +### Convert IDictionary<TKey, TItem> to Text + +For some of the ways that an `IDictionary` can be converted to text, please see each of the `IDictionary` data types: + +* [Dictionary<TKey, TItem>][DictionaryConvertToText] +* [Structure][StructureConvertToText] + +### Property Editor Support + +* The Expression Editor is available for [Input][] properties where the data type is `IDictionary`. +* The Literal Editor is not available for [Input][] properties where the data type is `IDictionary`. +* The Variable Editor is available for [InputOutput][] and [Output][] properties where the data type is `IDictionary`. + +### Known Limitations + +* Currently, only certain data types can be used for `TKey`. These include, but not limited to: + * `String` + * `Int32` + * `Double` + * `Boolean` + * `DateTimeOffset` +* If the data type of `TKey` is anything other than a `String`, when viewing the `IDictionary` in Gateway the key value will be displayed as its `ToString()` representation (e.g. an `Int32` key value of `1` will be displayed as `"1"` instead of `1`). + +## See Also + +### Related Data Types + +* [IEnumerable][] +* [IEnumerable<TItem>][] +* [Dictionary<TKey, TItem>][] +* [Structure][] + +### Related Concepts + +* [Working with Collections][] + +### External Documentation + +* [System.Collections.Generic.IDictionary<TKey, TItem>][] + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[System.Collections.Generic.IDictionary<TKey, TItem>]: {{< url path="MSDocs.DotNet.Api.System.Collections.Generic.IDictionary" >}} + +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable.MainDoc" >}} +[IEnumerable<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[Dictionary<TKey, TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.MainDoc" >}} +[DictionaryCreateNew]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.CreateNew" >}} +[DictionaryConvertToText]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.ConvertToText" >}} +[Structure]: {{< url path="Cortex.Reference.DataTypes.Collections.Structure.MainDoc" >}} +[StructureCreateNew]: {{< url path="Cortex.Reference.DataTypes.Collections.Structure.CreateNew" >}} +[StructureConvertToText]: {{< url path="Cortex.Reference.DataTypes.Collections.Structure.ConvertToText" >}} + +[Working with Collections]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/collections/ienumerable-1.md b/content/en/docs/2024.11/Reference/data-types/collections/ienumerable-1.md new file mode 100644 index 000000000..6ccb3223f --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/collections/ienumerable-1.md @@ -0,0 +1,115 @@ +--- +title: "IEnumerable" +linkTitle: "IEnumerable" +description: "Any data type representing a collection of items that can iterated or looped over. `TItem` indicates the data type of the items contained in the collection. `List` is the most common example." +--- + +# {{% param title %}} + +

(System.Collections.Generic.IEnumerable<TItem>)

+ +## Summary + +Any data type representing a collection of items that can iterated or looped over. + +`TItem` indicates the data type of the items contained in the collection. + +`List` is the most common example; for more see [Most Common IEnumerable<TItem> Data Types][]. + +| | | +|-|-| +| **Category:** | Collections | +| **Name:** | `IEnumerable` | +| **Full Name:** | `System.Collections.Generic.IEnumerable` | +| **Alias:** | N/A | +| **Description:** | Any data type representing a collection of items that can iterated or looped over. `TItem` indicates the data type of the items contained in the collection. | +| **Size:** | Varies | +| **Default Value:** | `null` | +| **Can be used as:** | `IEnumerable`, `Object`, `dynamic` | +| | `IEnumerable` (e.g. where `IEnumerable` is `IEnumerable` and `IEnumerable` is `IEnumerable` as `Object` is a base type of `Int32`; this is called covariance) | +| **Can be cast to:** | N/A | + +## Remarks + +### Most Common IEnumerable<TItem> Data Types + +Any of the following data types can be used where an `IEnumerable` is required: + +* [IList<TItem>][] +* [List<TItem>][] +* [IDictionary<TKey, TItem>][] +* [Dictionary<TKey, TItem>][] +* [Structure][] +* [String][] + +### Create an IEnumerable<TItem> + +For some of the ways that an `IEnumerable` can be created, please see each of the `IEnumerable` data types: + +* [List<TItem>][ListCreateNew] +* [Dictionary<TKey, TItem>][DictionaryCreateNew] +* [Structure][StructureCreateNew] +* [String][StringCreateNew] + +### Convert IEnumerable<TItem> to Text + +For some of the ways that an `IEnumerable` can be converted to text, please see each of the `IEnumerable` data types: + +* [List<TItem>][ListConvertToText] +* [Dictionary<TKey, TItem>][DictionaryConvertToText] +* [Structure][StructureConvertToText] + +### Property Editor Support + +* The Expression Editor is available for [Input][] properties where the data type is `IEnumerable`. +* The Literal Editor is not available for [Input][] properties where the data type is `IEnumerable`. +* The Variable Editor is available for [InputOutput][] and [Output][] properties where the data type is `IEnumerable`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +* [IEnumerable][] +* [IList<TItem>][] +* [List<TItem>][] +* [IDictionary<TKey, TItem>][] +* [Dictionary<TKey, TItem>][] +* [Structure][] +* [String][] + +### Related Concepts + +* [Working with Collections][] + +### External Documentation + +* [System.Collections.Generic.IEnumerable<TItem>][] + +[Most Common IEnumerable<TItem> Data Types]: {{< ref "#most-common-ienumerablelttitemgt-data-types" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[System.Collections.Generic.IEnumerable<TItem>]: {{< url path="MSDocs.DotNet.Api.System.Collections.Generic.IEnumerable_TItem" >}} + +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable.MainDoc" >}} +[IList<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.MainDoc" >}} +[ListCreateNew]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[ListConvertToText]: {{< url path="Cortex.Reference.DataTypes.Collections.List.ConvertToText" >}} +[IDictionary<TKey, TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} +[Dictionary<TKey, TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.MainDoc" >}} +[DictionaryCreateNew]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.CreateNew" >}} +[DictionaryConvertToText]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.ConvertToText" >}} +[Structure]: {{< url path="Cortex.Reference.DataTypes.Collections.Structure.MainDoc" >}} +[StructureCreateNew]: {{< url path="Cortex.Reference.DataTypes.Collections.Structure.CreateNew" >}} +[StructureConvertToText]: {{< url path="Cortex.Reference.DataTypes.Collections.Structure.ConvertToText" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[StringCreateNew]: {{< url path="Cortex.Reference.DataTypes.Text.String.CreateNew" >}} + +[Working with Collections]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/collections/ienumerable.md b/content/en/docs/2024.11/Reference/data-types/collections/ienumerable.md new file mode 100644 index 000000000..bb8682d4c --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/collections/ienumerable.md @@ -0,0 +1,114 @@ +--- +title: "IEnumerable" +linkTitle: "IEnumerable" +description: "Any data type representing a collection of items that can iterated or looped over. The items contained in the collection can be any data type. `List` is the most common example." +--- + +# {{% param title %}} + +

(System.Collections.IEnumerable)

+ +## Summary + +Any data type representing a collection of items that can iterated or looped over. + +The items contained in the collection can be any data type. + +`List` is the most common example; for more see [Most Common IEnumerable Data Types][]. + +| | | +|-|-| +| **Category:** | Collections | +| **Name:** | `IEnumerable` | +| **Full Name:** | `System.Collections.IEnumerable` | +| **Alias:** | N/A | +| **Description:** | Any data type representing a collection of items that can iterated or looped over. The items contained in the collection can be any data type. | +| **Size:** | Varies | +| **Default Value:** | `null` | +| **Can be used as:** | `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Remarks + +### Most Common IEnumerable Data Types + +Any of the following data types can be used where an `IEnumerable` is required: + +* [IList<TItem>][] +* [List<TItem>][] +* [IDictionary<TKey, TItem>][] +* [Dictionary<TKey, TItem>][] +* [Structure][] +* [String][] + +### Create an IEnumerable + +For some of the ways that an `IEnumerable` can be created, please see each of the `IEnumerable` data types: + +* [List<TItem>][ListCreateNew] +* [Dictionary<TKey, TItem>][DictionaryCreateNew] +* [Structure][StructureCreateNew] +* [String][StringCreateNew] + +### Convert IEnumerable to Text + +For some of the ways that an `IEnumerable` can be converted to text, please see each of the `IEnumerable` data types: + +* [List<TItem>][ListConvertToText] +* [Dictionary<TKey, TItem>][DictionaryConvertToText] +* [Structure][StructureConvertToText] + +### Property Editor Support + +* The Expression Editor is available for [Input][] properties where the data type is `IEnumerable`. +* The Literal Editor is not available for [Input][] properties where the data type is `IEnumerable`. +* The Variable Editor is available for [InputOutput][] and [Output][] properties where the data type is `IEnumerable`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +* [IEnumerable<TItem>][] +* [IList<TItem>][] +* [List<TItem>][] +* [IDictionary<TKey, TItem>][] +* [Dictionary<TKey, TItem>][] +* [Structure][] +* [String][] + +### Related Concepts + +* [Working with Collections][] + +### External Documentation + +* [System.Collections.IEnumerable][] + +[Most Common IEnumerable Data Types]: {{< ref "#most-common-ienumerable-data-types" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[System.Collections.IEnumerable]: {{< url path="MSDocs.DotNet.Api.System.Collections.IEnumerable" >}} + +[IEnumerable<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[IList<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.MainDoc" >}} +[ListCreateNew]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[ListConvertToText]: {{< url path="Cortex.Reference.DataTypes.Collections.List.ConvertToText" >}} +[IDictionary<TKey, TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} +[Dictionary<TKey, TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.MainDoc" >}} +[DictionaryCreateNew]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.CreateNew" >}} +[DictionaryConvertToText]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.ConvertToText" >}} +[Structure]: {{< url path="Cortex.Reference.DataTypes.Collections.Structure.MainDoc" >}} +[StructureCreateNew]: {{< url path="Cortex.Reference.DataTypes.Collections.Structure.CreateNew" >}} +[StructureConvertToText]: {{< url path="Cortex.Reference.DataTypes.Collections.Structure.ConvertToText" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[StringCreateNew]: {{< url path="Cortex.Reference.DataTypes.Text.String.CreateNew" >}} + +[Working with Collections]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/collections/ilist-1.md b/content/en/docs/2024.11/Reference/data-types/collections/ilist-1.md new file mode 100644 index 000000000..b737e901a --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/collections/ilist-1.md @@ -0,0 +1,90 @@ +--- +title: "IList" +linkTitle: "IList" +description: "Any data type representing a list of items that can iterated or looped over. `TItem` indicates the data type of the items contained in the list. Each `TItem` can be individually accessed by an index. `List` is the most common example." +--- + +# {{% param title %}} + +

(System.Collections.Generic.IList<TItem>)

+ +## Summary + +Any data type representing a list of items that can iterated or looped over. + +`TItem` indicates the data type of the items contained in the list. Each `TItem` can be individually accessed by an index. + +`List` is the most common example. + +| | | +|-|-| +| **Category:** | Collections | +| **Name:** | `IList` | +| **Full Name:** | `System.Collections.Generic.IList` | +| **Alias:** | N/A | +| **Description:** | Any data type representing a list of items that can iterated or looped over. `TItem` indicates the data type of the items contained in the list. Each `TItem` can be individually accessed by an index. | +| **Size:** | Varies | +| **Default Value:** | `null` | +| **Can be used as:** | `IEnumerable`, `IEnumerable`, `Object`, `dynamic` | +| | `IEnumerable` (e.g. where `IList` is `IList` and `IEnumerable` is `IEnumerable` as `Object` is a base type of `Int32`; this is called covariance) | +| **Can be cast to:** | N/A | + +## Remarks + +### Most Common IList<TItem> Data Types + +Any of the following data types can be used where an `IList` is required: + +* [List<TItem>][] + +### Create an IList<TItem> + +For some of the ways that an `IList` can be created, please see each of the `IList` data types: + +* [List<TItem>][ListCreateNew] + +### Convert IList<TItem> to Text + +For some of the ways that an `IList` can be converted to text, please see each of the `IList` data types: + +* [List<TItem>][ListConvertToText] + +### Property Editor Support + +* The Expression Editor is available for [Input][] properties where the data type is `IList`. +* The Literal Editor is not available for [Input][] properties where the data type is `IList`. +* The Variable Editor is available for [InputOutput][] and [Output][] properties where the data type is `IList`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +* [IEnumerable][] +* [IEnumerable<TItem>][] +* [List<TItem>][] + +### Related Concepts + +* [Working with Collections][] + +### External Documentation + +* [System.Collections.Generic.IList<TItem>][] + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[System.Collections.Generic.IList<TItem>]: {{< url path="MSDocs.DotNet.Api.System.Collections.Generic.IList" >}} + +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable.MainDoc" >}} +[IEnumerable<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.MainDoc" >}} +[ListCreateNew]: {{< url path="Cortex.Reference.DataTypes.Collections.List.CreateNew" >}} +[ListConvertToText]: {{< url path="Cortex.Reference.DataTypes.Collections.List.ConvertToText" >}} + +[Working with Collections]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/collections/ireadonlylist-1.md b/content/en/docs/2024.11/Reference/data-types/collections/ireadonlylist-1.md new file mode 100644 index 000000000..bab3b34f0 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/collections/ireadonlylist-1.md @@ -0,0 +1,66 @@ +--- +title: "IReadOnlyList" +linkTitle: "IReadOnlyList" +description: "Any data type representing a list of items that can iterated or looped over, where the number and order of items is read-only. `TItem` indicates the data type of the items contained in the list. Each `TItem` can be individually accessed by an index." +--- +# {{% param title %}} + +

(System.Collections.Generic.IReadOnlyList<TItem>)

+ +## Summary + +Any data type representing a list of items that can iterated or looped over, where the number and order of items is read-only. + +`TItem` indicates the data type of the items contained in the list. Each `TItem` can be individually accessed by an index. + +| | | +|-|-| +| **Category:** | Collections | +| **Name:** | `IReadOnlyList` | +| **Full Name:** | `System.Collections.Generic.IReadOnlyList` | +| **Alias:** | N/A | +| **Description:** | Any data type representing a list of items that can iterated or looped over, where the number and order of items is read-only. `TItem` indicates the data type of the items contained in the list. Each `TItem` can be individually accessed by an index. | +| **Default Value:** | `null` | +| **Can be used as:** | `IReadOnlyList`, `IReadOnlyCollection`, `IEnumerable`, `IEnumerable`, `Object`, `dynamic` | +| | `IEnumerable` (e.g. where `IReadOnlyList` is `IReadOnlyList` and `IEnumerable` is `IEnumerable` as `Object` is a base type of `Int32`; this is called covariance) | +| **Can be cast to:** | N/A | + +### Property Editor Support + +* The Expression Editor is available for [Input][] properties where the data type is `IReadOnlyList`. +* The Literal Editor is not available for [Input][] properties where the data type is `IReadOnlyList`. +* The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `IReadOnlyList`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +* [IEnumerable][] +* [IEnumerable<TItem>][] +* [List<TItem>][] + +### Related Concepts + +* [Working with Collections][] + +### External Documentation + +* [System.Collections.Generic.IReadOnlyList<TItem>][] +* [System.Collections.Generic.IReadOnlyCollection<TItem>][] + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[System.Collections.Generic.IReadOnlyList<TItem>]: {{< url path="MSDocs.DotNet.Api.System.Collections.Generic.IReadOnlyList" >}} +[System.Collections.Generic.IReadOnlyCollection<TItem>]: {{< url path="MSDocs.DotNet.Api.System.Collections.Generic.IReadOnlyCollection" >}} + +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable.MainDoc" >}} +[IEnumerable<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[List<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.List.MainDoc" >}} + +[Working with Collections]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/collections/list-1.md b/content/en/docs/2024.11/Reference/data-types/collections/list-1.md new file mode 100644 index 000000000..4ddf27ab2 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/collections/list-1.md @@ -0,0 +1,95 @@ +--- +title: "List" +linkTitle: "List" +description: "Used to represent a list of items that can iterated or looped over. `TItem` indicates the data type of the items contained in the list. Each `TItem` can be individually accessed by an index." +--- + +# {{% param title %}} + +

(System.Collections.Generic.List<TItem>)

+ +## Summary + +The `List` data type is used to represent a list of items that can iterated or looped over. + +`TItem` indicates the data type of the items contained in the list. Each `TItem` can be individually accessed by an index. + +| | | +|-|-| +| **Category:** | Collections | +| **Name:** | `List` | +| **Full Name:** | `System.Collections.Generic.List` | +| **Alias:** | N/A | +| **Description:** | A list of items that can iterated or looped over. `TItem` indicates the data type of the items contained in the list. Each `TItem` can be individually accessed by an index. | +| **Size:** | Varies | +| **Default Value:** | `null` | +| **Can be used as:** | `IList`, `IEnumerable`, `IEnumerable`, `Object`, `dynamic` | +| | `IEnumerable` (e.g. where `List` is `List` and `IEnumerable` is `IEnumerable` as `Object` is a base type of `Int32`; this is called covariance) | +| **Can be cast to:** | N/A | + +## Remarks + +### Create a List<TItem> + +The following table shows some of the ways that a `List` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Declare a `List` literal | `[]` | `[]` | Expression | `List` containing zero items | +| | `["Some Text"]` | `["Some Text"]` | Expression | `List` containing one String item | +| | `[true, false]` | `[true, false]` | Expression | `List` containing two Boolean items | +| | `[1, 2, 3]` | `[1, 2, 3]` | Expression | `List` containing three Int32 items | +| | `["Some Text", true, 1]` | `["Some Text", true, 1]` | Expression | `List` containing a String item, a Boolean item and an Int32 item | +| Use a `List` expression | `new List()` | `[]` | Expression | `List` containing zero items | +| | `new List() { "Some Text" }` | `["Some Text"]` | Expression | `List` containing one String item | +| | `new List() { true, false }` | `[true, false]` | Expression | `List` containing two Boolean items | +| | `new List() { 1, 2, 3 }` | `[1, 2, 3]` | Expression | `List` containing three Int32 items | +| | `new List() { "Some Text", true, 1 }`| `["Some Text", true, 1]` | Expression | `List` containing a String item, a Boolean item and an Int32 item | + +### Convert List<TItem> to Text + +The following table shows some of the ways that a `List` can be converted to text. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `Convert Object To Json` block | where `Object` property has a `List` value of `["Some Text", true, 1]` | `"[\r\n \"Some Text\",\r\n true,\r\n 1\r\n]"` | N/A | See [Convert Object To Json][] | + +### Property Editor Support + +* The Expression Editor is available for [Input][] properties where the data type is `List`. +* The Literal Editor is not available for [Input][] properties where the data type is `List`. +* The Variable Editor is available for [InputOutput][] and [Output][] properties where the data type is `List`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +* [IEnumerable][] +* [IEnumerable<TItem>][] +* [IList<TItem>][] + +### Related Concepts + +* [Working with Collections][] + +### External Documentation + +* [System.Collections.Generic.List<TItem>][] + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} + +[System.Collections.Generic.List<TItem>]: {{< url path="MSDocs.DotNet.Api.System.Collections.Generic.List" >}} + +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable.MainDoc" >}} +[IEnumerable<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[IList<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} + +[Working with Collections]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/collections/queuewithpriority-2.md b/content/en/docs/2024.11/Reference/data-types/collections/queuewithpriority-2.md new file mode 100644 index 000000000..5c969e384 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/collections/queuewithpriority-2.md @@ -0,0 +1,110 @@ +--- +title: "QueueWithPriority" +linkTitle: "QueueWithPriority" +description: "Used to represent a queue which orders items by priority and preserves first-in-first-out behaviour for items with the same priority." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Queues.QueueWithPriority<TItem, TPriority>)

+ +## Summary + +The `QueueWithPriority` data type is used to represent a queue which orders items by priority (like a [PriorityQueue][]), but preserves first-in-first-out behaviour for items with the same priority. + +When enqueuing items into the `QueueWithPriority`, [TPriority][] is used to order items within the queue. + +| | | +|-|-| +| **Category:** | Collections | +| **Name:** | `QueueWithPriority` | +| **Full Name:** | `Cortex.DataTypes.Queues.QueueWithPriority` | +| **Alias:** | N/A | +| **Description:** | A queue which orders items by priority (like a [PriorityQueue][]), but preserves first-in-first-out behaviour for items with the same priority. When enqueuing items into the `QueueWithPriority`, [TPriority][] is used to order items within the queue.| +| **Default Value:** | `null` | +| **Can be used as:** | `QueueWithPriority`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### PriorityComparer + +The [IComparer][]<[TPriority][]> used to compare [TPriority][] values. + +| | | +|--------------------|---------------------------| +| Data Type | [IComparer][]<[TPriority][]> | +| Is [Advanced][] | `false` | +| Default Editor | [Variable][] | +| Default Value | `($)PriorityComparer` with no value. | + +## Exceptions + +The exceptions thrown by the data type can be found below: + +| Name | Description | +|----------|----------| +| [ArgumentException][] | Thrown when [TPriority][] does not implement [IComparer][]<[TPriority][]>. | +| [ArgumentNullException][] | Thrown when [PriorityComparer][PriorityComparer Property] is `null`. | + +## Remarks + +### Create a QueueWithPriority<TItem, TPriority> + +The following table shows some of the ways that a `QueueWithPriority` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use a `QueueWithPriority` constructor | `new QueueWithPriority()` | `{"Items": [], "PriorityComparer": {}}` | Expression | This constructor will try and use the default comparer defined for [TPriority][]; only data types that implement [IComparer][]<[TPriority][]> have a default comparer.

 If [TPriority][] does not implement [IComparer][]<[TPriority][]> it will not have a default comparer and throw an [ArgumentException][], in this case you must use the constructor in the example below to provide a valid comparer. | +| | `new QueueWithPriority(System.StringComparer.Ordinal)` | `{"Items": [], "PriorityComparer": {"_ignoreCase": false}}` | Expression | This constructor will use the specified [IComparer][]<[TPriority][]> to order the items in the queue by priority. | + +### Convert QueueWithPriority<TItem, TPriority> to Text + +The following table shows some of the ways that a `QueueWithPriority` can be converted to text. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `Convert Object To Json` block | where `Object` property has a `QueueWithPriority` value of `{"Items": [{"Item": "Something","Priority": 1}],"PriorityComparer": {}}` | `"{\r\n  \"Items\": [\r\n    {\r\n      \"Item\": \"Something\",\r\n      \"Priority\": 1\r\n    }\r\n  ],\r\n  \"PriorityComparer\": {}\r\n}"` | N/A | See [Convert Object To Json][] | + +### Property Editor Support + +* The Expression Editor is available for [Input][] properties where the data type is `QueueWithPriority`. +* The Literal Editor is not available for [Input][] properties where the data type is `QueueWithPriority`. +* The Variable Editor is available for [InputOutput][] and [Output][] properties where the data type is `QueueWithPriority`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +* [IComparer<TPriority>][IComparer] + +### Related Concepts + +None + +### External Documentation + +* [System.Collections.Generic.PriorityQueue<TElement,TPriority>][PriorityQueue] + +[PriorityComparer Property]: {{< ref "#prioritycomparer" >}} + +[ArgumentException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentException" >}} +[ArgumentNullException]: {{< url path="MSDocs.DotNet.Api.System.ArgumentNullException" >}} + +[PriorityQueue]: {{< url path="MSDocs.DotNet.Api.System.PriorityQueue.MainDoc" >}} +[IComparer]: {{< url path="Cortex.Reference.DataTypes.Collections.IComparer.MainDoc" >}} + +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[TPriority]: {{< url path="Cortex.Reference.Concepts.Fundamentals.DataTypes.Generics.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} + +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/collections/structure.md b/content/en/docs/2024.11/Reference/data-types/collections/structure.md new file mode 100644 index 000000000..6a82bbaa4 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/collections/structure.md @@ -0,0 +1,93 @@ +--- +title: "Structure" +linkTitle: "Structure" +description: "Used to represent a collection of key/item pairs, where the data type of the keys used to access the items contained in the collection is `String` and the items contained in the collection can be any data type. Each item can be individually accessed by its `String` key." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Dictionaries.Structure)

+ +## Summary + +The `Structure` data type is used to represent a collection of key/item pairs. + +The data type of the keys used to access the items contained in the collection is `String` and the items contained in the collection can be any data type. Each item can be individually accessed by its `String` key. + +| | | +|-|-| +| **Category:** | Collections | +| **Name:** | `Structure` | +| **Full Name:** | `Cortex.DataTypes.Dictionaries.Structure` | +| **Alias:** | N/A | +| **Description:** | Used to represent a collection of key/item pairs, where the data type of the keys used to access the items contained in the collection is `String` and the items contained in the collection can be any data type. Each item can be individually accessed by its `String` key. | +| **Size:** | Varies | +| **Default Value:** | `null` | +| **Can be used as:** | `IDictionary`, `IEnumerable`, `Object`, `dynamic` | +| | `IEnumerable>` (e.g. where `Structure` is `IDictionary` and `IEnumerable>` is `IEnumerable>`) | +| **Can be cast to:** | N/A | + +## Remarks + +### Create a Structure + +The following table shows some of the ways that a `Structure` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Declare a `Structure` literal | `{}` | `{}` | Expression | `Structure` containing zero items | +| | `{ "StringKey1": "StringValue" }` | `{ "StringKey1": "StringValue" }` | Expression | `Structure` containing one String item with a String key | +| | `{ "StringKey1": true, "StringKey2": false }` | `{ "StringKey1": true, "StringKey2": false }` | Expression | `Structure` containing two Boolean items with String keys | +| | `{ "StringKey1": 1, "StringKey2": 2, "StringKey3": 3 }`| `{ "StringKey1": 1, "StringKey2": 2, "StringKey3": 3 }` | Expression | `Structure` containing three Int32 item with String keys| +| | `{ "StringKey1": "StringValue", "StringKey2": true, "StringKey3": 1 }`| `{ "StringKey1": "StringValue", "StringKey2": true, "StringKey3": 1 }` | Expression | `Structure` containing a String item, a Boolean item and an Int32 item with String keys | +| Use a `Structure` expression | `new Structure()` | `{}` | Expression | `Structure` containing zero items | +| | `new Structure() { { "StringKey1", "StringValue" } }` | `{ "StringKey1": "StringValue" }` | Expression | `Structure` containing one String item with a String key | +| | `new Structure() { { "StringKey1", true }, { "StringKey2", false } }` | `{ "StringKey1": true, "StringKey2": false }` | Expression | `Structure` containing two Boolean items with String keys | +| | `new Structure() { { "StringKey1", 1 }, { "StringKey2", 2 }, { "StringKey3", 3 } }`| `{ "StringKey1": 1, "StringKey2": 2, "StringKey3": 3 }` | Expression | `Structure` containing three Int32 item with String keys| +| | `new Structure() { { "StringKey1", "StringValue" }, { "StringKey2", true }, { "StringKey3", 1 } }`| `{ "StringKey1": "StringValue", "StringKey2": true, "StringKey3": 1 }` | Expression | `Structure` containing a String item, a Boolean item and an Int32 item with String keys | + +### Convert Structure to Text + +The following table shows some of the ways that a `Structure` can be converted to text. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `Convert Object To Json` block | where `Object` property has a `Structure` value of `{ "StringKey1": "StringValue", "StringKey2": true, "StringKey3": 1 }` | `"{\r\n \"StringKey1\": \"StringValue\",\r\n \"StringKey2\": true,\r\n \"StringKey3\": 1\r\n}"` | N/A | See [Convert Object To Json][] | + +### Property Editor Support + +* The Expression Editor is available for [Input][] properties where the data type is `Structure`. +* The Literal Editor is not available for [Input][] properties where the data type is `Structure`. +* The Variable Editor is available for [InputOutput][] and [Output][] properties where the data type is `Structure`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +* [IEnumerable][] +* [IEnumerable<TItem>][] +* [IDictionary<TKey, TItem>][] + +### Related Concepts + +* [Working with Collections][] + +### External Documentation + +N/A + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} + +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable.MainDoc" >}} +[IEnumerable<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[IDictionary<TKey, TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} + +[Working with Collections]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Collections.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/concurrency/_index.md b/content/en/docs/2024.11/Reference/data-types/concurrency/_index.md new file mode 100644 index 000000000..692e3bee3 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/concurrency/_index.md @@ -0,0 +1,6 @@ +--- +title: "Concurrency" +linkTitle: "Concurrency" +description: "Data types used for working with concurrency." +weight: 1 +--- diff --git a/content/en/docs/2024.11/Reference/data-types/concurrency/semaphores/_index.md b/content/en/docs/2024.11/Reference/data-types/concurrency/semaphores/_index.md new file mode 100644 index 000000000..ab0a40442 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/concurrency/semaphores/_index.md @@ -0,0 +1,6 @@ +--- +title: "Semaphores" +linkTitle: "Semaphores" +description: "Data types used for working with Semaphores." +weight: 1 +--- diff --git a/content/en/docs/2024.11/Reference/data-types/concurrency/semaphores/queue-settings.md b/content/en/docs/2024.11/Reference/data-types/concurrency/semaphores/queue-settings.md new file mode 100644 index 000000000..ef72e1363 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/concurrency/semaphores/queue-settings.md @@ -0,0 +1,120 @@ +--- +title: "QueueSettings" +linkTitle: "QueueSettings" +description: "Used to represent the configuration settings of a semaphore's queue." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Concurrency.Semaphores.QueueSettings)

+ +## Summary + +The `QueueSettings` data type represents the settings used to configure a [Semaphore's][Semaphore] queue. + +| | | +|---------------------|--------------------------------------------------------------------------------| +| **Category:** | Concurrency | +| **Name:** | `QueueSettings` | +| **Full Name:** | `Cortex.DataTypes.Concurrency.Semaphores.QueueSettings` | +| **Alias:** | N/A | +| **Description:** | Represents the settings used for configuring a [Semaphore's][Semaphore] queue. | +| **Default Value:** | `null` | +| **Can be used as:** | `QueueSettings`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### Priority + +The [Priority][Priority Property] of the executions joining the queue. +The queue is ordered by minimal value, so the item with the lowest [Priority][Priority Property] will be dequeued first. + +| | | +|-----------------|-------------| +| Data Type | [Int32][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | `0` | + +### QueueTimeout + +The [QueueTimeout][QueueTimeout Property] is used to set a duration for the maximum amount of time an execution can spend in the queue. +A value of `null` will allow an execution to queue indefinitely. + +| | | +|-----------------|----------------| +| Data Type | [TimePeriod][] | +| Is [Advanced][] | `true` | +| Default Editor | [Expression][] | +| Default Value | `null` | + +## Remarks + +### Create a QueueSettings + +The following table shows some of the ways that `QueueSettings` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-----------------------------------|------------------------------|-------------------------------------------|---------------------|------------------------------------------------------------------------------------------------------------------| +| Use a `QueueSettings` constructor | `new QueueSettings(0, null)` | `{ "Priority": 0, "QueueTimeout": null }` | Expression | Creates a new [QueueSettings][] that can be used to configure the functions of a [Semaphore's][Semaphore] queue. | + +A [QueueSettings][] can also be created using the Literal Editor by filling in the necessary values for the following properties: + +| Property | Data Type | Example | Notes | +|----------------|--------------|---------|---------------------------------------------------------------------------------------------------------------| +| `Priority` | `Int32` | `0` | [Priority][Priority Property] defines the priority that executions will enter the queue with. | +| `QueueTimeout` | `TimePeriod` | `null` | [QueueTimeout][QueueTimeout Property] defines the maximum amount of time an execution can spend in the queue. | + +### Convert QueueSettings to Text + +The following table shows some of the ways that a `QueueSettings` can be converted to text. + +| Method | Example | Result | Editor Support | Notes | +|------------------------------------|----------------------------------------------------------------------------------|--------------------------------------------------------------|---------------------|--------------------------------| +| Use `Convert Object To Json` block | where `Object` property has a value of `{ "Priority": 0, "QueueTimeout": null }` | `"{\r\n \"Priority\": 0,\r\n \"QueueTimeout\": null\r\n}"` | N/A | See [Convert Object To Json][] | + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `QueueSettings`. +- The Literal Editor is available for [Input][] properties where the data type is `QueueSettings`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `QueueSettings`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [Int32][] +- [SemaphoreSettings][] +- [TimePeriod][] + +### Related Concepts + +- [What is a Semaphore?][Semaphore] + +### External Documentation + +None + +[Priority Property]: {{< ref "#priority" >}} +[QueueTimeout Property]: {{< ref "#queuetimeout" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Semaphore]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Concurrency.Semaphores.WhatIsASemaphore.MainDoc" >}} +[SemaphoreSettings]: {{< url path="Cortex.Reference.DataTypes.Concurrency.Semaphores.SemaphoreSettings.MainDoc" >}} +[QueueSettings]: {{< url path="Cortex.Reference.DataTypes.Concurrency.Semaphores.QueueSettings.MainDoc" >}} + +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[TimePeriod]: {{< url path="Cortex.Reference.DataTypes.DateAndTime.TimePeriod.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} + +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/concurrency/semaphores/semaphore-settings.md b/content/en/docs/2024.11/Reference/data-types/concurrency/semaphores/semaphore-settings.md new file mode 100644 index 000000000..66e8a16a7 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/concurrency/semaphores/semaphore-settings.md @@ -0,0 +1,164 @@ +--- +title: "SemaphoreSettings" +linkTitle: "SemaphoreSettings" +description: "Used to represent the configuration settings of a semaphore." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Concurrency.Semaphores.SemaphoreSettings)

+ +## Summary + +The `SemaphoreSettings` data type represents the settings used to configure a [Semaphore][]. + +| | | +|---------------------|-------------------------------------------------------------| +| **Category:** | Concurrency | +| **Name:** | `SemaphoreSettings` | +| **Full Name:** | `Cortex.DataTypes.Concurrency.Semaphores.SemaphoreSettings` | +| **Alias:** | N/A | +| **Description:** | Represents the settings used for configuring a [Semaphore][]. | +| **Default Value:** | `null` | +| **Can be used as:** | `SemaphoreSettings`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### Scope + +The [Scope][Scope Property] is used to define the area in which the [Semaphore][] will operate. + +| | | +|-----------------|--------------------------------| +| Data Type | [ScopeDefinition][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | [ScopeDefinition][] with value shown below | + +```json +{ + "Tenant": "ScopeOption.Current", + "System": "ScopeOption.Current", + "Package": "ScopeOption.Current", + "Flow": "ScopeOption.All" +} +``` + +### Name + +The [Name][Name Property] is used to identify the [Semaphore][]. + +| | | +|-----------------|----------------------------| +| Data Type | [String][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | [String][] with value `""` | + +### ConcurrencyLimit + +The [ConcurrencyLimit][ConcurrencyLimit Property] is used to define the maximum number of executions that can be in the [Semaphore][]. + +The specified value for the [ConcurrencyLimit][ConcurrencyLimit Property] may not be used if a [Semaphore][] with the same [Scope][Scope Property] and [Name][Name Property] already exists, see [Multiple Concurrency Limits][MultipleConcurrencyLimits] for more information. + +| | | +|-----------------|-------------| +| Data Type | [Int32][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | `0` | + +### Queue + +The [Queue][Queue Property] is used to define whether the [Semaphore][] functions as a [queuing semaphore][Queuing] or a [non-queuing semaphore][Non-Queuing]. + +If this property is set to `null`, then the [Semaphore][] will function as a [non-queuing semaphore][Non-Queuing]. +If given a value, the [Semaphore][] will function as a [queuing semaphore][Queuing] and configures how the [Semaphore's][Semaphore] queue should operate. + +| | | +|----------------|-----------------| +| Data Type | [QueueSettings][] | +| Is [Advanced][] | `true` | +| Default Editor | [Expression][] | +| Default Value | `null` | + +## Remarks + +### Create a SemaphoreSettings + +The following table shows some of the ways that `SemaphoreSettings` can be created. + +| Method | Example | Result | Editor Support | Notes | +|---------------------------------------|-----------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------|---------------------|-------------------------------------------------------------------------------------------------| +| Use a `SemaphoreSettings` constructor | `new SemaphoreSettings(new ScopeDefinition(ScopeOption.Current, ScopeOption.Current, ScopeOption.Current, ScopeOption.All), "SemaphoreA", 1, null)` | `{ "Scope": { "Tenant": ScopeOption.Current", "System": "ScopeOption.Current", "Package": "ScopeOption.Current", "Flow": "ScopeOption.All" }, "Name": "SemaphoreA", "ConcurrencyLimit": 1, "Queue": null }` | Expression | Creates a new [SemaphoreSettings][] that can be used to configure the functions of a [Semaphore][]. | + +A [SemaphoreSettings][] can also be created using the Literal Editor by filling in the necessary values for the following properties: + +| Property | Data Type | Example | Notes | +|--------------------|-----------------|-------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------| +| `Scope` | `ScopeDefinition` | `new ScopeDefinition(ScopeOption.Current, ScopeOption.Current, ScopeOption.Current, ScopeOption.All)` | [Scope][Scope Property] defines the scope that the [Semaphore][] will operate in. | +| `Name` | `String` | `"SemaphoreA"` | [Name][Name Property] defines the name of the [Semaphore][]. | +| `ConcurrencyLimit` | `Int32` | `1` | [ConcurrencyLimit][ConcurrencyLimit Property] defines the maximum number of executions that can be inside the [Semaphore][] at one time. | +| `Queue` | `QueueSettings` | `null` | [Queue][Queue Property] defines the behaviour of the [Semaphore's][Semaphore] queue. | + +### Convert SemaphoreSettings to Text + +The following table shows some of the ways that a `SemaphoreSettings` can be converted to text. + +| Method | Example | Result | Editor Support | Notes | +|------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------|------------------------------| +| Use `Convert Object To Json` block | where `Object` property has a value of `{ "Scope": { "Tenant": "ScopeOption.Current", "System": "ScopeOption.Current", "Package": "ScopeOption.Current", "Flow": "ScopeOption.All" }, "Name": "SemaphoreA", "ConcurrencyLimit": 1, "Queue": null }` | `"{\r\n \"Scope\": {\r\n \"Tenant\": 1,\r\n \"System\": 1,\r\n \"Package\": 1,\r\n \"Flow\": 0\r\n },\r\n \"Name\": \"SemaphoreA\",\r\n \"ConcurrencyLimit\": 1,\r\n \"Queue\": null\r\n}"` | N/A | See [Convert Object To Json] | + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `SemaphoreSettings`. +- The Literal Editor is available for [Input][] properties where the data type is `SemaphoreSettings`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `SemaphoreSettings`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [Int32][] +- [QueueSettings][] +- [ScopeDefinition][] +- [String][] + +### Related Concepts + +- [What is a Semaphore?][Semaphore] + +### External Documentation + +None + +[Scope Property]: {{< ref "#scope" >}} +[Name Property]: {{< ref "#name" >}} +[ConcurrencyLimit Property]: {{< ref "#concurrencylimit" >}} +[Queue Property]: {{< ref "#queue" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Semaphore]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Concurrency.Semaphores.WhatIsASemaphore.MainDoc" >}} +[Non-Queuing]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Concurrency.Semaphores.WhatIsASemaphore.Non-Queuing" >}} +[Queuing]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Concurrency.Semaphores.WhatIsASemaphore.Queuing" >}} +[SemaphoreSettings]: {{< url path="Cortex.Reference.DataTypes.Concurrency.Semaphores.SemaphoreSettings.MainDoc" >}} +[QueueSettings]: {{< url path="Cortex.Reference.DataTypes.Concurrency.Semaphores.QueueSettings.MainDoc" >}} +[MultipleConcurrencyLimits]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Concurrency.Semaphores.WhatIsASemaphore.MultipleConcurrencyLimits" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} + +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} + +[ScopeDefinition]: {{< url path = "Cortex.Reference.DataTypes.Scopes.ScopeDefinition.MainDoc">}} diff --git a/content/en/docs/2024.11/Reference/data-types/conditional-logic/_index.md b/content/en/docs/2024.11/Reference/data-types/conditional-logic/_index.md new file mode 100644 index 000000000..306e1b7d4 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/conditional-logic/_index.md @@ -0,0 +1,6 @@ +--- +title: "Conditional Logic" +linkTitle: "Conditional Logic" +description: "Data types used for working with conditional logic." +weight: 1 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/data-types/conditional-logic/boolean.md b/content/en/docs/2024.11/Reference/data-types/conditional-logic/boolean.md new file mode 100644 index 000000000..32f8dc30d --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/conditional-logic/boolean.md @@ -0,0 +1,99 @@ +--- +title: "Boolean" +linkTitle: "Boolean" +description: "Used to represent a logical value of `true` or `false`." +--- + +# {{% param title %}} + +

(System.Boolean)

+ +## Summary + +The `Boolean` data type is used to represent a logical value of `true` or `false`. + +| | | +|-|-| +| **Category:** | Conditional Logic | +| **Name:** | `Boolean` | +| **Full Name:** | `System.Boolean` | +| **Alias:** | `bool` | +| **Description:** | A logical value of `true` or `false`. | +| **Size:** | `1` bit | +| **Default Value:** | `false` | +| **Can be used as:** | `Nullable`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Remarks + +### Create a Boolean + +The following table shows some of the ways that a `Boolean` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Declare a `Boolean` literal | `true` | `true` | Literal, Expression | True | +| | `false` | `false` | Literal, Expression | False | +| Use a `Boolean` expression | `1 == 1` | `true` | Expression | Uses equals operator | +| | `1 != 1` | `false` | Expression | Uses not equals operator | +| | `1 > 0` | `true` | Expression | Uses greater than operator | +| | `1 < 0` | `false` | Expression | Uses less than operator | +| | `1 >= 0` | `true` | Expression | Uses greater than or equals operator | +| | `1 <= 0` | `false` | Expression | Uses less than or equals operator | +| | `true && false` | `false` | Expression | Uses logical AND operator | +| | `true \|\| false` | `true` | Expression | Uses logical OR operator | +| | `!(true \|\| false)` | `false` | Expression | Uses logical NOT operator | +| | `Boolean.Parse("true")`| `true` | Expression | Attempts to parse text and convert it to a `Boolean` value. See [Boolean.Parse][] | +| | `Convert.ToBoolean("true")` | `true` | Expression | Attempts to convert text to a `Boolean` value. See [Convert.ToBoolean][] | + +### Convert Boolean to Text + +The following table shows some of the ways that a `Boolean` can be converted to text. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `ToString` | `true.ToString()` | `"True"` | Expression | See [Boolean.ToString][] | +| | `($)BooleanVariable.ToString()` where `($)BooleanVariable` has a value of `true` | `"True"` | Expression | See [Boolean.ToString][] | +| Use `Convert.ToString` | `Convert.ToString(true)` | `"True"` | Expression | See [Convert.ToString][] | +| | `Convert.ToString(($)BooleanVariable)` where `($)BooleanVariable` has a value of `true` | `"True"` | Expression | See [Convert.ToString][] | +| Use `Convert Object To Text` block | where `Object` property has a value of `true` | `"True"` | N/A | See [Convert Object To Text][] | +| Use `Convert Object To Json` block | where `Object` property has a value of `true` | `"true"` | N/A | See [Convert Object To Json][] | + +### Property Editor Support + +* The Expression Editor is available for [Input][] properties where the data type is `Boolean`. +* The Literal Editor is available for [Input][] properties where the data type is `Boolean`. + * Expression syntax is not supported within the Literal Editor for the `Boolean` data type. +* The Variable Editor is available for [InputOutput][] and [Output][] properties where the data type is `Boolean`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +None + +### Related Concepts + +None + +### External Documentation + +* [System.Boolean][] + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Convert.ToBoolean]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToBoolean" >}} +[Convert.ToString]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToString" >}} + +[System.Boolean]: {{< url path="MSDocs.DotNet.Api.System.Boolean.MainDoc" >}} +[Boolean.Parse]: {{< url path="MSDocs.DotNet.Api.System.Boolean.Parse" >}} +[Boolean.ToString]: {{< url path="MSDocs.DotNet.Api.System.Boolean.ToString" >}} + +[Convert Object To Text]: {{< url path="Cortex.Reference.Blocks.Objects.ConvertObject.ConvertObjectToText.MainDoc" >}} +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/credentials/_index.md b/content/en/docs/2024.11/Reference/data-types/credentials/_index.md new file mode 100644 index 000000000..536b77101 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/credentials/_index.md @@ -0,0 +1,6 @@ +--- +title: "Credentials" +linkTitle: "Credentials" +description: "Data types used for working with credentials." +weight: 1 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/data-types/credentials/iusercredentials.md b/content/en/docs/2024.11/Reference/data-types/credentials/iusercredentials.md new file mode 100644 index 000000000..f0c276ca3 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/credentials/iusercredentials.md @@ -0,0 +1,83 @@ +--- +title: "IUserCredentials" +linkTitle: "IUserCredentials" +description: "Any data type representing password authentication credentials required to authenticate with a domain or server." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Credentials.IUserCredentials)

+ +{{% alert type="information" title="Information" %}} Improvements to this page are planned for the future. {{% /alert %}} + +## Summary + +Any data type representing password authentication credentials required to authenticate with a domain or server. + +| | | +|-|-| +| **Category:** | Credentials | +| **Name:** | `IUserCredentials` | +| **Full Name:** | `Cortex.DataTypes.Credentials.IUserCredentials` | +| **Alias:** | N/A | +| **Description:** | Any data type representing password authentication credentials required to authenticate with a domain or server. | +| **Default Value:** | `null` | +| **Can be used as:** | `IUserCredentials`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `IUserCredentials`. +- The Literal Editor is available for [Input][] properties where the data type is `IUserCredentials`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `IUserCredentials`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [BasicEmailSessionDetails][] +- [EmailCredentials][] +- [EmailUserCredentials][] +- [EncryptableText][] +- [EncryptedText][] +- [HttpCredentials][] +- [HttpUserCredentials][] +- [IEmailCredentials][] +- [IHttpCredentials][] +- [ISshCredentials][] +- [SshCredentials][] +- [SshUserCredentials][] +- [UserCredentials][] + +### Related Concepts + +None + +### External Documentation + +None + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[UserCredentials]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.MainDoc" >}} +[BasicEmailSessionDetails]: {{< url path="Cortex.Reference.DataTypes.Email.BasicEmailSessionDetails.MainDoc" >}} +[IEmailCredentials]: {{< url path="Cortex.Reference.DataTypes.Email.Authentication.IEmailCredentials.MainDoc" >}} +[EmailCredentials]: {{< url path="Cortex.Reference.DataTypes.Email.Authentication.EmailCredentials.MainDoc" >}} +[EmailUserCredentials]: {{< url path="Cortex.Reference.DataTypes.Email.Authentication.EmailUserCredentials.MainDoc" >}} +[IHttpCredentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.IHttpCredentials.MainDoc" >}} +[HttpCredentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.HttpCredentials.MainDoc" >}} +[HttpUserCredentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.HttpUserCredentials.MainDoc" >}} +[ISshCredentials]: {{< url path="Cortex.Reference.DataTypes.Ssh.Authentication.ISshCredentials.MainDoc" >}} +[SshCredentials]: {{< url path="Cortex.Reference.DataTypes.Ssh.Authentication.SshCredentials.MainDoc" >}} +[SshUserCredentials]: {{< url path="Cortex.Reference.DataTypes.Ssh.Authentication.SshUserCredentials.MainDoc" >}} + +[EncryptableText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptableText.MainDoc" >}} +[EncryptedText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptedText.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/credentials/logontype.md b/content/en/docs/2024.11/Reference/data-types/credentials/logontype.md new file mode 100644 index 000000000..b71cd6f70 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/credentials/logontype.md @@ -0,0 +1,173 @@ +--- +title: "LogonType" +linkTitle: "LogonType" +description: "Used to represent the Logon type used for the UserCredentials." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Credentials.LogonType)

+ +## Summary + +The `LogonType` data type is used to represent the type of logon method to use to authenticate a user. + +`LogonType` is an [enum][Working with Enums] data type, which means it has a defined set of values, where each value has an associated [String][] name and [Int32][] value. + +| | | +|---------------------|------------------------------------------------------------------------------------------------------------------------------------| +| **Category:** | Credentials | +| **Name:** | `LogonType` | +| **Full Name:** | `Cortex.DataTypes.Credentials.LogonType` | +| **Alias:** | N/A | +| **Description:** | Used to represent the type of logon method to use to authenticate a user. | +| **Default Value:** | `LogonType.Network` | +| **Can be used as:** | `LogonType`, `Object`, `dynamic` | +| **Can be cast to:** | `Int16` (e.g. `(Int16)LogonType.Network` or `(System.Int16)LogonType.Network` or `(short)LogonType.Network`) | +| | `Int32` (e.g. `(Int32)LogonType.Network` or `(System.Int32)LogonType.Network` or `(int)LogonType.Network`) | +| | `Int64` (e.g. `(Int64)LogonType.Network` or `(System.Int64)LogonType.Network` or `(long)LogonType.Network`) | +| | `Single` (e.g. `(Single)LogonType.Network` or `(System.Single)LogonType.Network` or `(float)LogonType.Network`) | +| | `Double` (e.g. `(Double)LogonType.Network` or `(System.Double)LogonType.Network` or `(double)LogonType.Network`) | + +## Values + +### Network + +| | | +|------------|----------------------------| +| **Name:** | Network | +| **Value:** | [Int32][] with value `3` | +| **Notes:** | Represents a network logon. This should be used in most cases, including when connecting to a local database as a Windows user. If connecting to a remote database as a Windows user, [NewCredentials][] should be used. | + +### NetworkCleartext + +| | | +|------------|----------------------------| +| **Name:** | NetworkCleartext | +| **Value:** | [Int32][] with value `8` | +| **Notes:** | Represents a network logon. This differs from [Network][] as the user's password will be passed as cleartext. This should be used when authenticating with IIS using Basic Auth, and Windows PowerShell with CredSSP. | + +### NewCredentials + +| | | +|------------|----------------------------| +| **Name:** | NewCredentials | +| **Value:** | [Int32][] with value `9` | +| **Notes:** | Represents a clone of the user's current logon. For local operations, it uses the same local identity. For network operations, it uses the identity of the credentials supplied. This should be used when authenticating against a remote database as a Windows User. If connecting to a local database as a Windows user, [Network][] should be used. | + +## Remarks + +### Create LogonType + +The following table shows some of the ways that `LogonType` can be created using the expression editor. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use a `LogonType` expression | `LogonType.Network` | `LogonType.Network`| Expression | | +| | `LogonType.NetworkCleartext` | `LogonType.NetworkCleartext` | Expression | | +| | `LogonType.NewCredentials` | `LogonType.NewCredentials` | Expression | | +| Use [Explicit Casting][] | `(LogonType)3` | `LogonType.Network`| Expression | | +| | `(LogonType)8` | `LogonType.NetworkCleartext` | Expression | | +| | `(LogonType)9` | `LogonType.NewCredentials` | Expression | | +| Use `Enum.Parse` | `(LogonType)Enum.Parse(typeof(LogonType), "Network")` | `LogonType.Network`| Expression | Parses `"Network"` and converts it to `LogonType.Network`. See [Enum.Parse][] | +| | `(LogonType)Enum.Parse(typeof(LogonType), "NetworkCleartext")` | `LogonType.NetworkCleartext`| Expression | Parses `"NetworkCleartext"` and converts it to `LogonType.NetworkCleartext`. See [Enum.Parse][] | +| | `(LogonType)Enum.Parse(typeof(LogonType), "NewCredentials")` | `LogonType.NewCredentials`| Expression | Parses `"NewCredentials"` and converts it to `LogonType.NewCredentials`. See [Enum.Parse][] | +| Use `Enum.ToObject` | `(LogonType)Enum.ToObject(typeof(LogonType), 3)` | `LogonType.Network`| Expression | Converts `3` to `LogonType.Network` value. See [Enum.ToObject][] | +| | `(LogonType)Enum.ToObject(typeof(LogonType), 8)` | `LogonType.NetworkCleartext` | Expression | Converts `8` to `LogonType.NetworkCleartext` value. See [Enum.ToObject][] | +| | `(LogonType)Enum.ToObject(typeof(LogonType), 9)` | `LogonType.NewCredentials` | Expression | Converts `9` to `LogonType.NewCredentials` value. See [Enum.ToObject][] | + +Please see [Instantiating an enumeration type][] for further information. + +### Convert LogonType to Text + +The following table shows some of the ways that a `LogonType` can be converted to text. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `ToString` | `LogonType.Network.ToString()` | `"Network"` | Expression | Converts `LogonType.Network` to `"Network"`. See [Enum.ToString][] | +| | `LogonType.NetworkCleartext.ToString()` | `"NetworkCleartext"` | Expression | Converts `LogonType.NetworkCleartext` to `"NetworkCleartext"`. See [Enum.ToString][] | +| | `LogonType.NewCredentials.ToString()` | `"NewCredentials"` | Expression | Converts `LogonType.NewCredentials` to `"NewCredentials"`. See [Enum.ToString][] | +| Use `Convert.ToString` | `Convert.ToString(LogonType.Network)` | `"Network"` | Expression | Converts `LogonType.Network` to `"Network"`. See [Convert.ToString][] | +| | `Convert.ToString(LogonType.NetworkCleartext)` | `"NetworkCleartext"` | Expression | Converts `LogonType.NetworkCleartext` to `"NetworkCleartext"`. See [Convert.ToString][] | +| | `Convert.ToString(LogonType.NewCredentials)` | `"NewCredentials"` | Expression | Converts `LogonType.NewCredentials` to `"NewCredentials"`. See [Convert.ToString][] | +| Use `Convert Object To Text` block | where `Object` property has a value of `LogonType.Network` | `"Network"` | N/A | Converts `LogonType.Network` to `"Network"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `LogonType.NetworkCleartext` | `"NetworkCleartext"` | N/A | Converts `LogonType.NetworkCleartext` to `"NetworkCleartext"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `LogonType.NewCredentials` | `"NewCredentials"` | N/A | Converts `LogonType.NewCredentials` to `"NewCredentials"`. See [Convert Object To Text][] | +| Use `Convert Object To Json` block | where `Object` property has a value of `LogonType.Network` | `"3"` | N/A | Converts `LogonType.Network` to `"3"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `LogonType.NetworkCleartext` | `"8"` | N/A | Converts `LogonType.NetworkCleartext` to `"8"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `LogonType.NewCredentials` | `"9"` | N/A | Converts `LogonType.NewCredentials` to `"9"`. See [Convert Object To Json][] | + +Please see [Formatting enumeration values][] for further information. + +### Convert LogonType to a Number + +The following table shows some of the ways that a `LogonType` can be converted to a number. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use [Explicit Casting][] | `(Int32)LogonType.Network` | `3` | Expression | [Casts][Explicit Casting] `LogonType.Network` to `3` | +| | `(Int32)LogonType.NetworkCleartext` | `8` | Expression | [Casts][Explicit Casting] `LogonType.NetworkCleartext` to `8` | +| | `(Int32)LogonType.NewCredentials` | `9` | Expression | [Casts][Explicit Casting] `LogonType.NewCredentials` to `9` | +| Use `Convert.ToInt32` | `Convert.ToInt32(LogonType.Network)` | `3` | Expression | Converts `LogonType.Network` to `3`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(LogonType.NetworkCleartext)` | `8` | Expression | Converts `LogonType.NetworkCleartext` to `8`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(LogonType.NewCredentials)` | `9` | Expression | Converts `LogonType.NewCredentials` to `9`. See [Convert.ToInt32][] | + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `LogonType`. +- The Literal Editor is available for [Input][] properties where the data type is `LogonType`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `LogonType`. + +### Known Limitations + +- When [LogonType][] is set to `LogonType.NewCredentials` and trying to connect to a localhost database, it will not recognise the UserCredentials. To fix this use `LogonType.Network` as the [LogonType][]. +- When [LogonType][] is set to `LogonType.Network` and trying to connect to a remote database, it will not recognise the UserCredentials. To fix this use `LogonType.NewCredentials` as the [LogonType][]. + +## See Also + +### Related Data Types + +- [Int32][] +- [String][] +- [UserCredentials][] + +### Related Concepts + +- [Explicit Casting][] +- [Working with Enums][] + +### External Documentation + +- [LogonTypes][] +- [System.Enum][] + +[Network]: {{< ref "#network" >}} +[NewCredentials]: {{< ref "#newcredentials" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[LogonTypes]: {{< url path="MSDocs.Windows.WindowsServer.LogonTypes" >}} +[System.Enum]: {{< url path="MSDocs.DotNet.Api.System.Enum.MainDoc" >}} + +[Working with Enums]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Enums.MainDoc" >}} +[Explicit Casting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectCasting.ExplicitCast" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[Formatting enumeration values]: {{< url path="MSDocs.DotNet.Api.System.Enum.FormattingEnumerationValues" >}} +[Convert Object To Text]: {{< url path="Cortex.Reference.Blocks.Objects.ConvertObject.ConvertObjectToText.MainDoc" >}} +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} +[Working with Enums]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Enums.MainDoc" >}} +[Explicit Casting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectCasting.ExplicitCast" >}} +[Enum.Parse]: {{< url path="MSDocs.DotNet.Api.System.Enum.Parse" >}} +[Enum.ToObject]: {{< url path="MSDocs.DotNet.Api.System.Enum.ToObject" >}} +[Enum.ToString]: {{< url path="MSDocs.DotNet.Api.System.Enum.ToString" >}} +[Convert.ToInt32]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToInt32" >}} +[Convert.ToString]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToString" >}} +[LogonType]: {{< url path="Cortex.Reference.DataTypes.Credentials.LogonType.MainDoc" >}} +[UserCredentials]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.MainDoc" >}} + +[Instantiating an enumeration type]: {{< url path="MSDocs.DotNet.Api.System.Enum.InstantiatingAnEnum" >}} +[Formatting enumeration values]: {{< url path="MSDocs.DotNet.Api.System.Enum.FormattingEnumerationValues" >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/data-types/credentials/usercredentials.md b/content/en/docs/2024.11/Reference/data-types/credentials/usercredentials.md new file mode 100644 index 000000000..1a0a5b4ba --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/credentials/usercredentials.md @@ -0,0 +1,173 @@ +--- +title: "UserCredentials" +linkTitle: "UserCredentials" +description: "Used to represent details required to authenticate with a domain or server." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Credentials.UserCredentials)

+ +## Summary + +The `UserCredentials` data type is used to represent details required to authenticate with a domain or server. + +| | | +|-|-| +| **Category:** | Credentials | +| **Name:** | `UserCredentials` | +| **Full Name:** | `Cortex.DataTypes.Credentials.UserCredentials` | +| **Alias:** | N/A | +| **Description:** | Details required to authenticate with a domain or server. | +| **Default Value:** | `null` | +| **Can be used as:** | `EmailUserCredentials`, `EmailCredentials`, `IEmailCredentials`, `HttpUserCredentials`, `HttpCredentials`, `IHttpCredentials`, `SshUserCredentials`, `SshCredentials`, `ISshCredentials`, `UserCredentials`, `IUserCredentials`, `NetworkCredential`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### Domain + +The Domain is used to define the domain or server to authenticate with. The value of this property may optionally be encrypted; for more information on how to encrypt this property, see [EncryptableText][]. + +Whether or not the Domain is required is dependent on the block being used: + +- [Send Email Using SMTP Server Block][Send Email Using SMTP Server Block Setting Credentials] +- [Send Email Using Gmail Block][Send Email Using Gmail Block Setting Credentials] + +| | | +|--------------------|---------------------------| +| Data Type | [EncryptableText][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [EncryptableText][] with value `""` | + +### Username + +The Username is used to define the user to authenticate as. The value of this property may optionally be encrypted; for more information on how to encrypt this property, see [EncryptableText][]. + +| | | +|--------------------|---------------------------| +| Data Type | [EncryptableText][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [EncryptableText][] with value `""` | + +### Password + +The Password is used to define the password of the user to authenticate as. This property is an [EncryptedText][] and so it must be encrypted; for more information on how to encrypt the password, see [EncryptedText][]. + +| | | +|--------------------|---------------------------| +| Data Type | [EncryptedText][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [EncryptedText][] with value `""` | + +### LogonType + +The LogonType is used to define what type of logon method to use to authenticate the user. This property is a [LogonType][] which is an enum. + +| | | +|--------------------|---------------------------| +| Data Type | [LogonType][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [LogonType][] with value `LogonType.Network` | + +## Remarks + +### Create a UserCredentials + +The following table shows some of the ways that `UserCredentials` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use a `UserCredentials` constructor | `new UserCredentials(domain: "domain", username: "username", password: "encryptedPassword")` | `{"Domain": "domain", "Username": "username", "Password": "encryptedPassword"}` | Expression | Domain specified | +| | `new UserCredentials(username: "username", password: "encryptedPassword")` | `{"Domain": null, "Username": "username", "Password": "encryptedPassword"}` | Expression | Domain not specified | +| | `new UserCredentials(domain: "domain", username: "username", password: "encryptedPassword", logonType: LogonType.Network)` | `{"Domain": "domain", "Username": "username", "encryptedPassword", "LogonType": "LogonType.Network"}` | Expression | Domain and LogonType specified | +| | `new UserCredentials(username: "username", password: "encryptedPassword", logonType: LogonType.Network)` | `{"Domain": null, "Username": "username", "Password": "encryptedPassword", "LogonType": "LogonType.Network"}` | Expression | Domain and LogonType not specified | + +A `UserCredentials` can also be created using the Literal Editor by filling in the necessary values for the following properties: + +| Property | Data Type | Example | Notes | +|-|-|-|-| +| `Domain` | `EncryptableText` | `"domain"` | [Domain][Domain Property] defines the domain or server to authenticate with. | +| `Username` | `EncryptableText` | `"username"` | [Username][Username Property] defines the user to authenticate as. | +| `Password` | `EncryptedText` | `"encryptedPassword"` | [Password][Password Property] defines the password of the user to authenticate as. | +| `LogonType` | `LogonType` | `LogonType.Network` | [LogonType][LogonType Property] defines what type of logon method to use to authenticate the user. | + +### Convert UserCredentials to Text + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `Convert Object To Json` block | where `Object` property has a value of `{"Domain": "domain", "Username": "username", "Password": "encryptedPassword", "LogonType": "LogonType.Network"}` | `"{\r\n \"Domain\": \"domain\",\r\n \"Username\": \"username\",\r\n \"Password\": \"encryptedPassword\",\r\n \"LogonType\": 3\r\n}"` | N/A | See [Convert Object To Json][] | + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `UserCredentials`. +- The Literal Editor is available for [Input][] properties where the data type is `UserCredentials`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `UserCredentials`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [BasicEmailSessionDetails][] +- [EmailCredentials][] +- [EmailUserCredentials][] +- [EncryptableText][] +- [EncryptedText][] +- [HttpCredentials][] +- [HttpUserCredentials][] +- [IEmailCredentials][] +- [IHttpCredentials][] +- [ISshCredentials][] +- [SshCredentials][] +- [SshUserCredentials][] + +### Related Concepts + +- [Working with Email][] + +### External Documentation + +- [NetworkCredential][] + +[Domain Property]: {{< ref "#domain" >}} +[Username Property]: {{< ref "#username" >}} +[Password Property]: {{< ref "#password" >}} +[LogonType Property]: {{< ref "#logontype" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} + +[BasicEmailSessionDetails]: {{< url path="Cortex.Reference.DataTypes.Email.BasicEmailSessionDetails.MainDoc" >}} +[IEmailCredentials]: {{< url path="Cortex.Reference.DataTypes.Email.Authentication.IEmailCredentials.MainDoc" >}} +[EmailCredentials]: {{< url path="Cortex.Reference.DataTypes.Email.Authentication.EmailCredentials.MainDoc" >}} +[EmailUserCredentials]: {{< url path="Cortex.Reference.DataTypes.Email.Authentication.EmailUserCredentials.MainDoc" >}} +[IHttpCredentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.IHttpCredentials.MainDoc" >}} +[HttpCredentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.HttpCredentials.MainDoc" >}} +[HttpUserCredentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.HttpUserCredentials.MainDoc" >}} +[ISshCredentials]: {{< url path="Cortex.Reference.DataTypes.Ssh.Authentication.ISshCredentials.MainDoc" >}} +[SshCredentials]: {{< url path="Cortex.Reference.DataTypes.Ssh.Authentication.SshCredentials.MainDoc" >}} +[SshUserCredentials]: {{< url path="Cortex.Reference.DataTypes.Ssh.Authentication.SshUserCredentials.MainDoc" >}} +[LogonType]: {{< url path="Cortex.Reference.DataTypes.Credentials.LogonType.MainDoc" >}} + +[NetworkCredential]: {{< url path="MSDocs.DotNet.Api.System.Net.NetworkCredential" >}} + +[Send Email Using SMTP Server Block Setting Credentials]: {{< url path="Cortex.Reference.Blocks.Email.SendEmail.SendEmailUsingSmtpServer.SettingCredentials" >}} +[Send Email Using Gmail Block Setting Credentials]: {{< url path="Cortex.Reference.Blocks.GoogleWorkspace.Gmail.SendEmail.SendEmailUsingGmail.SettingCredentials" >}} + +[Working with Email]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Email.MainDoc" >}} + +[EncryptableText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptableText.MainDoc" >}} +[EncryptedText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptedText.MainDoc" >}} + +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/data/_index.md b/content/en/docs/2024.11/Reference/data-types/data/_index.md new file mode 100644 index 000000000..d7939208d --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/data/_index.md @@ -0,0 +1,6 @@ +--- +title: "Data" +linkTitle: "Data" +description: "Data types used for working with data sources such as SQL Server." +weight: 1 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/data-types/data/command.md b/content/en/docs/2024.11/Reference/data-types/data/command.md new file mode 100644 index 000000000..08f6a6c0a --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/data/command.md @@ -0,0 +1,156 @@ +--- +title: "Command" +linkTitle: "Command" +description: "Defines a single statement that can be run against a data source." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Data.Command)

+ +## Summary + +A `Command` data type is used to define a single [statement][Statements] that can be run against a data source. The statement can be [parameterised][Parameterised Commands], which is recommended to prevent [SQL Injection][]. + +| | | +|-|-| +| **Category:** | Data | +| **Name:** | `Command` | +| **Full Name:** | `Cortex.DataTypes.Data.Command` | +| **Alias:** | N/A | +| **Description:** | Defines a single statement that can be run against a data source. | +| **Default Value:** | `null` | +| **Can be used as:** | `DataCommand`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### Command Text + +The Command Text is used to define a single [statement][Statements] that will be run against the data source. + +| | | +|--------------------|---------------------------| +| Data Type | [EncryptableText][] | +| Is Advanced | `false` | +| Default Editor | [Expression][] | +| Default Value | [EncryptableText][] with value `$@""` | + +### Parameters + +Parameters are used to pass information to the [statement][Statements] that will be run against the data source. + +It is recommended to always use [Parameterised Commands][] as they prevent [SQL Injection][] attacks by ensuring the parameters are sanitised before the command is executed. + +For more information see [Parameterised Commands][]. + +| | | +|--------------------|---------------------------| +| Data Type | [dynamic][] | +| Is Advanced | `true` | +| Default Editor | [Expression][] | +| Default Value | [dynamic][] with no value | + +## Remarks + +### Create a Command + +The following table shows some of the ways that a `Command` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use a `Command` constructor | `new Command("SELECT * FROM Table", null)` | `{CommandText: "SELECT * FROM Table", Parameters: null}` | Expression | | +| | `new Command("SELECT * FROM Table WHERE Id < @SelectParameter", new {SelectParameter = 3})` | `{"CommandText": "SELECT * FROM Table WHERE Id < @SelectParameter", "Parameters": {"SelectParameter": 3}}` | Expression | It is recommended to always use [Parameterised Commands][] as they prevent [SQL Injection][] | + +A `Command` can also be created using the Literal Editor by filling in the necessary values for the following properties: + +| Property | Data Type | Example | Notes | +|-|-|-|-| +| `CommandText`| `EncryptableText`| `$@"SELECT * FROM Table WHERE Id < @SelectParameter"` | The command that will be executed or queried against the data source. | +| `Parameters`| `dynamic`| `new {SelectParameter = 3}` | The parameters that are used within a [Parameterised Command][Parameterised Commands]. | + +### Convert Command to Text + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `ToString` | `($)Command.ToString()` | `"Cortex.DataTypes.Data.Command"` | Expression | ToString will return the Full Name of the Command Data Type | +| Use `Convert Object To Text` block | where `Object` property has a value of `{CommandText: "SELECT * FROM Table", Parameters: null}` | `"Cortex.DataTypes.Data.Command"` | N/A | See [Convert Object To Text][] | +| Use `Convert Object To Json` block | where `Object` property has a value of `{CommandText: "SELECT * FROM Table", Parameters: null}` | `"{\r\n \"CommandText\": \"SELECT * FROM Table\",\r\n \"Parameters\": null\r\n}"` | N/A | See [Convert Object To Json][] | + +### Parameterised Commands + +It is recommended to always use parameterised commands as they prevent [SQL Injection][] attacks by ensuring the parameters are sanitised before the command is executed. + +The `@` symbol denotes a parameter within the [CommandText][] (e.g. `"SELECT * FROM Table WHERE Name = @Parameter"`). An example of using parameters can be found in [Executing Multiple Commands (Safe)][], whereas, an example of inserting variables into a statement without parameters can be found in [Executing Multiple Commands (Unsafe)][] + +For more information see [Parameterised Commands][Block: Parameterised Commands]. + +### Property Editor Support + +* The Expression Editor is available for [Input][] properties where the data type is `Command`. +* The Literal Editor is not available for [Input][] properties where the data type is `Command`. +* The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `Command`. + +### Known limitations + +#### ToString Method always returns the Full Name + +Currently, if the `ToString()` method is used on a `Command`, then its Full Name will be returned; instead of a representation of the data within the `Command`. + +In future this limitation may be removed. + +#### Block Statements Incompatible (Oracle Only) + +Using an [OracleBlockStatement][] in the [CommandText][] will throw a [Command Exception][CommandExceptionIncompatibleStatementType]. You must use either a [QueryCommand][] or [NonQueryCommand][] instead. + +## See Also + +### Related Data Types + +* [DataCommand][] +* [Commands][] +* [QueryCommand][] +* [NonQueryCommand][] + +### Related Concepts + +* [Working with Data Sources][] + +### External Documentation + +* [OracleBlockStatement][] +* [SQL Injection][] + +[CommandText]: {{< ref "#command-text" >}} +[Parameterised Commands]: {{< ref "#parameterised-commands" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Executing Multiple Commands (Safe)]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.ExecutingMultipleCommandsSafe" >}} +[Executing Multiple Commands (Unsafe)]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.ExecutingMultipleCommandsUnsafe" >}} +[Block: Parameterised Commands]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.ParameterisedCommands" >}} +[Statements]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.Statements" >}} +[OracleConnectionDetails]: {{< url path="Cortex.Reference.DataTypes.Data.OracleConnectionDetails.MainDoc" >}} + +[Convert Object To Text]: {{< url path="Cortex.Reference.Blocks.Objects.ConvertObject.ConvertObjectToText.MainDoc" >}} +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} + +[Working with Data Sources]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DataSources.MainDoc" >}} + +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[EncryptableText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptableText.MainDoc" >}} +[DataCommand]: {{< url path="Cortex.Reference.DataTypes.Data.DataCommand.MainDoc" >}} +[Commands]: {{< url path="Cortex.Reference.DataTypes.Data.Commands.MainDoc" >}} +[QueryCommand]: {{< url path="Cortex.Reference.DataTypes.Data.QueryCommand.MainDoc" >}} +[NonQueryCommand]: {{< url path="Cortex.Reference.DataTypes.Data.NonQueryCommand.MainDoc" >}} +[CommandException]: {{< url path="Cortex.Reference.Exceptions.Data.CommandException.MainDoc" >}} +[CommandExceptionIncompatibleStatementType]: {{< url path="Cortex.Reference.Exceptions.Data.CommandException.IncompatibleStatementType" >}} +[ConnectionDetailsProperty]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.ConnectionDetailsProperty" >}} +[CommandProperty]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.CommandProperty" >}} +[Command]: {{< url path="Cortex.Reference.DataTypes.Data.Command.MainDoc" >}} + +[OracleBlockStatement]: {{< url path="Oracle.PL-SQL.BlockStatement" >}} +[SQL Injection]: {{< url path="W3.SqlInjection" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/data/commands.md b/content/en/docs/2024.11/Reference/data-types/data/commands.md new file mode 100644 index 000000000..55739670e --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/data/commands.md @@ -0,0 +1,156 @@ +--- +title: "Commands" +linkTitle: "Commands" +description: "Holds the information for parsing a command, running multiple query and non query commands against a data source." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Data.Commands)

+ +## Summary + +A `Commands` data type is used to define single or multiple [statements][Statements] that can be run against a data source. Statements can be [parameterised][Parameterised Commands], which is recommended to prevent [SQL Injection][]. + +| | | +|-|-| +| **Category:** | Data | +| **Name:** | `Commands` | +| **Full Name:** | `Cortex.DataTypes.Data.Commands` | +| **Alias:** | N/A | +| **Description:** | Defines single or multiple statements that can be run against a data source. | +| **Default Value:** | `null` | +| **Can be used as:** | `DataCommand`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### Command Text + +The Command Text is used to define single or multiple [statements][Statements] that will be run against the data source. + +| | | +|--------------------|---------------------------| +| Data Type | [EncryptableText][] | +| Is Advanced | `false` | +| Default Editor | [Expression][] | +| Default Value | [EncryptableText][] with value `$@""` | + +### Parameters + +Parameters are used to pass information to the single or multiple [statements][Statements] that will be run against the data source. + +It is recommended to always use [Parameterised Commands][] as they prevent [SQL Injection][] attacks by ensuring the parameters are sanitised before the command is executed. + +For more information see [Parameterised Commands][]. + +| | | +|--------------------|---------------------------| +| Data Type | [dynamic][] | +| Is Advanced | `true` | +| Default Editor | [Expression][] | +| Default Value | [dynamic][] with no value | + +## Remarks + +### Create a Commands + +The following table shows some of the ways that a `Commands` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use a `Commands` constructor | `new Commands("SELECT * FROM Table", null)` | `{CommandText: "SELECT * FROM Table", Parameters: null}` | Expression | | +| | `new Commands("SELECT * FROM Table WHERE Id < @SelectParameter", new {SelectParameter = 3})` | `{"CommandText": "SELECT * FROM Table WHERE Id < @SelectParameter", "Parameters": {"SelectParameter": 3}}` | Expression | It is recommended to always use [Parameterised Commands][] as they prevent [SQL Injection][] | + +A `Commands` can also be created using the Literal Editor by filling in the necessary values for the following properties: + +| Property | Data Type | Example | Notes | +|-|-|-|-| +| `CommandText`| `EncryptableText`| `$@"SELECT * FROM Table WHERE Id < @SelectParameter"` | The command that will be executed or queried against the data source. | +| `Parameters`| `dynamic`| `new {SelectParameter = 3}` | The parameters that are used within a [Parameterised Command][Parameterised Commands]. | + +### Convert Commands to Text + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `ToString` | `($)Commands.ToString()` | `"Cortex.DataTypes.Data.Commands"` | Expression | ToString will return the Full Name of the Commands Data Type | +| Use `Convert Object To Text` block | where `Object` property has a value of `{CommandText: "SELECT * FROM Table", Parameters: null}` | `"Cortex.DataTypes.Data.Commands"` | N/A | See [Convert Object To Text][] | +| Use `Convert Object To Json` block | where `Object` property has a value of `{CommandText: "SELECT * FROM Table", Parameters: null}` | `"{\r\n \"CommandText\": \"SELECT * FROM Table\",\r\n \"Parameters\": null\r\n}"` | N/A | See [Convert Object To Json][] | + +### Parameterised Commands + +It is recommended to always use parameterised commands as they prevent [SQL Injection][] attacks by ensuring the parameters are sanitised before the command is executed. + +The `@` symbol denotes a parameter within the [CommandText][] (e.g. `"SELECT * FROM Table WHERE Name = @Parameter"`). An example of using parameters can be found in [Executing Multiple Commands (Safe)][], whereas, an example of inserting variables into a statement without parameters can be found in [Executing Multiple Commands (Unsafe)][] + +For more information see [Parameterised Commands][Block: Parameterised Commands]. + +### Property Editor Support + +* The Expression Editor is available for [Input][] properties where the data type is `Commands`. +* The Literal Editor is available for [Input][] properties where the data type is `Commands`. +* The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `Commands`. + +### Known limitations + +#### ToString Method always returns the Full Name + +Currently, if the `ToString()` method is used on a `Commands`, then its Full Name will be returned; instead of a representation of the data within the `Commands`. + +In future this limitation may be removed. + +#### Block Statements Incompatible (Oracle Only) + +Using an [OracleBlockStatement][] in the [CommandText][] will throw a [Command Exception][CommandExceptionIncompatibleStatementType]. You must use either a [QueryCommand][] or [NonQueryCommand][] instead. + +## See Also + +### Related Data Types + +* [DataCommand][] +* [Command][] +* [QueryCommand][] +* [NonQueryCommand][] + +### Related Concepts + +* [Working with Data Sources][] + +### External Documentation + +* [OracleBlockStatement][] +* [SQL Injection][] + +[CommandText]: {{< ref "#command-text" >}} +[Parameterised Commands]: {{< ref "#parameterised-commands" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Executing Multiple Commands (Safe)]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.ExecutingMultipleCommandsSafe" >}} +[Executing Multiple Commands (Unsafe)]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.ExecutingMultipleCommandsUnsafe" >}} +[Block: Parameterised Commands]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.ParameterisedCommands" >}} +[Statements]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.QueryStatements" >}} +[Commands]: {{< url path="Cortex.Reference.DataTypes.Data.Commands.MainDoc" >}} + +[Convert Object To Text]: {{< url path="Cortex.Reference.Blocks.Objects.ConvertObject.ConvertObjectToText.MainDoc" >}} +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} + +[Working with Data Sources]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DataSources.MainDoc" >}} + +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[EncryptableText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptableText.MainDoc" >}} +[DataCommand]: {{< url path="Cortex.Reference.DataTypes.Data.DataCommand.MainDoc" >}} +[Command]: {{< url path="Cortex.Reference.DataTypes.Data.Command.MainDoc" >}} +[QueryCommand]: {{< url path="Cortex.Reference.DataTypes.Data.QueryCommand.MainDoc" >}} +[NonQueryCommand]: {{< url path="Cortex.Reference.DataTypes.Data.NonQueryCommand.MainDoc" >}} +[ConnectionDetailsProperty]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.ConnectionDetailsProperty" >}} +[CommandProperty]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.CommandProperty" >}} +[OracleConnectionDetails]: {{< url path="Cortex.Reference.DataTypes.Data.OracleConnectionDetails.MainDoc" >}} +[CommandException]: {{< url path="Cortex.Reference.Exceptions.Data.CommandException.MainDoc" >}} +[CommandExceptionIncompatibleStatementType]: {{< url path="Cortex.Reference.Exceptions.Data.CommandException.IncompatibleStatementType" >}} + +[OracleBlockStatement]: {{< url path="Oracle.PL-SQL.BlockStatement" >}} +[SQL Injection]: {{< url path="W3.SqlInjection" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/data/connectiondetails.md b/content/en/docs/2024.11/Reference/data-types/data/connectiondetails.md new file mode 100644 index 000000000..0e2e91bbe --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/data/connectiondetails.md @@ -0,0 +1,76 @@ +--- +title: "ConnectionDetails" +linkTitle: "ConnectionDetails" +description: "Any data type representing configuration for establishing and maintaining a connection to a data source." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Data.ConnectionDetails)

+ +## Summary + +Any data type representing configuration for establishing and maintaining a connection to a data source. + +| | | +|-|-| +| **Category:** | Data | +| **Name:** | `ConnectionDetails` | +| **Full Name:** | `Cortex.DataTypes.Data.ConnectionDetails` | +| **Alias:** | N/A | +| **Description:** | Any data type representing configuration for establishing and maintaining a connection to a data source. | +| **Default Value:** | `null` | +| **Can be used as:** | `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Remarks + +### Most Common ConnectionDetails Data Types + +Any of the following data types can be used where a `ConnectionDetails` is required: + +- [OdbcConnectionDetails][] +- [OracleConnectionDetails][] +- [SqlServerConnectionDetails][] + +### Create a ConnectionDetails + +For some of the ways that a `ConnectionDetails` can be created, please see each of the `ConnectionDetails` data types: + +- [OdbcConnectionDetails][] +- [OracleConnectionDetails][] +- [SqlServerConnectionDetails][] + +### Convert ConnectionDetails to Text + +For some of the ways that a `ConnectionDetails` can be converted to text, please see each of the `ConnectionDetails` data types: + +- [OdbcConnectionDetails][] +- [OracleConnectionDetails][] +- [SqlServerConnectionDetails][] + +### Known limitations + +None + +## See Also + +### Related Data Types + +- [OdbcConnectionDetails][] +- [OracleConnectionDetails][] +- [SqlServerConnectionDetails][] + +### Related Concepts + +- [Working with Data Sources][] + +### External Documentation + +None + +[Working with Data Sources]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DataSources.MainDoc" >}} + +[SqlServerConnectionDetails]: {{< url path="Cortex.Reference.DataTypes.Data.SqlServerConnectionDetails.MainDoc" >}} +[OdbcConnectionDetails]: {{< url path="Cortex.Reference.DataTypes.Data.OdbcConnectionDetails.MainDoc" >}} +[OracleConnectionDetails]: {{< url path="Cortex.Reference.DataTypes.Data.OracleConnectionDetails.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/data/datacommand.md b/content/en/docs/2024.11/Reference/data-types/data/datacommand.md new file mode 100644 index 000000000..bef4eefde --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/data/datacommand.md @@ -0,0 +1,140 @@ +--- +title: "DataCommand" +linkTitle: "DataCommand" +description: "Any data type representing configuration for data source commands." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Data.DataCommand)

+ +## Summary + +Any data type representing configuration for data source commands. + +| | | +|-|-| +| **Category:** | Data | +| **Name:** | `DataCommand` | +| **Full Name:** | `Cortex.DataTypes.Data.DataCommand` | +| **Alias:** | N/A | +| **Description:** | Any data type representing configuration for data source commands. | +| **Default Value:** | `null` | +| **Can be used as:** | `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### Command Text + +The Command Text is used to create the command that will be run against the data source. + +| | | +|--------------------|---------------------------| +| Data Type | [EncryptableText][] | +| Is Advanced | `false` | +| Default Editor | [Expression][] | +| Default Value | [EncryptableText][] with value `$@""` | + +### Parameters + +Parameters are used to pass information to the command that will be run against the data source. + +It is recommended to always use parameterised commands as they prevent [SQL Injection][] attacks by ensuring the parameters are sanitised before the command is executed. + +For more information see [Parameterised Commands][Parameterised Commands] + +| | | +|--------------------|---------------------------| +| Data Type | [dynamic][] | +| Is Advanced | `true` | +| Default Editor | [Expression][] | +| Default Value | [dynamic][] with no value | + +## Remarks + +### Most Common DataCommand Data Types + +Any of the following data types can be used where a `DataCommand` is required: + +* [Command][] +* [Commands][] +* [QueryCommand][] +* [NonQueryCommand][] + +### Create a DataCommand + +For some of the ways that a `DataCommand` can be created, please see each of the `DataCommand` data types: + +* [Command][] +* [Commands][] +* [QueryCommand][] +* [NonQueryCommand][] + +### Convert DataCommand to Text + +For some of the ways that a `DataCommand` can be converted to text, please see each of the `DataCommand` data types: + +* [Command][] +* [Commands][] +* [QueryCommand][] +* [NonQueryCommand][] + +### Parameterised Commands + +It is recommended to always use parameterised commands as they prevent [SQL Injection][] attacks by ensuring the parameters are sanitised before the command is executed. + +The `@` symbol denotes a parameter within the [CommandText][] (e.g. `"SELECT * FROM Table WHERE Name = @Parameter"`). An example of using parameters can be found in [Executing Multiple Commands (Safe)][], whereas, an example of inserting variables into a statement without parameters can be found in [Executing Multiple Commands (Unsafe)][] + +For more information see [Parameterised Commands][Block: Parameterised Commands]. + +### Property Editor Support + +* The Expression Editor is available for [Input][] properties where the data type is `DataCommand`. +* The Literal Editor is available for [Input][] properties where the data type is `DataCommand`. +* The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `DataCommand`. + +### Known limitations + +None + +## See Also + +### Related Data Types + +* [Command][] +* [Commands][] +* [QueryCommand][] +* [NonQueryCommand][] + +### Related Concepts + +* [Working with Data Sources][] + +### External Documentation + +* [SQL Injection][] + +[CommandText]: {{< ref "#command-text" >}} +[Parameterised Commands]: {{< ref "#parameterised-commands" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[EncryptableText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptableText.MainDoc" >}} + +[Executing Multiple Commands (Safe)]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.ExecutingMultipleCommandsSafe" >}} +[Executing Multiple Commands (Unsafe)]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.ExecutingMultipleCommandsUnsafe" >}} +[Block: Parameterised Commands]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.ParameterisedCommands" >}} + +[Working with Data Sources]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DataSources.MainDoc" >}} + +[Command]: {{< url path="Cortex.Reference.DataTypes.Data.Command.MainDoc" >}} +[Commands]: {{< url path="Cortex.Reference.DataTypes.Data.Commands.MainDoc" >}} +[QueryCommand]: {{< url path="Cortex.Reference.DataTypes.Data.QueryCommand.MainDoc" >}} +[NonQueryCommand]: {{< url path="Cortex.Reference.DataTypes.Data.NonQueryCommand.MainDoc" >}} + +[SQL Injection]: {{< url path="W3.SqlInjection" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/data/datacommanderrorcode.md b/content/en/docs/2024.11/Reference/data-types/data/datacommanderrorcode.md new file mode 100644 index 000000000..3b8804143 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/data/datacommanderrorcode.md @@ -0,0 +1,228 @@ +--- +title: "DataCommandErrorCode" +linkTitle: "DataCommandErrorCode" +description: "Used to represent an error code explaining the reason an `CommandException` occurred." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Data.DataCommandErrorCode)

+ +## Summary + +The `DataCommandErrorCode` data type is used to represent an error code explaining the reason a [CommandException][] occurred. For more information on the exception itself, see [CommandException][]. + +`DataCommandErrorCode` is an [enum][Working with Enums] data type, which means it has a defined set of values, where each value has an associated [String][] name and [Int32][] value. + +| | | +|-|-| +| **Category:** | Data | +| **Name:** | `DataCommandErrorCode` | +| **Full Name:** | `Cortex.DataTypes.Data.DataCommandErrorCode` | +| **Alias:** | N/A | +| **Description:** | Error code explaining the reason a [CommandException][] occurred. | +| **Size:** | `4` bytes | +| **Default Value:** | `(DataCommandErrorCode)0` | +| **Can be used as:** | `DataCommandErrorCode`, `Object`, `dynamic` | +| **Can be cast to:** | `Int16` (e.g. `(Int16)DataCommandErrorCode.Connection` or `(System.Int16)DataCommandErrorCode.Connection` or `(short)DataCommandErrorCode.Connection`) | +| | `Int32` (e.g. `(Int32)DataCommandErrorCode.Connection` or `(System.Int32)DataCommandErrorCode.Connection` or `(int)DataCommandErrorCode.Connection`) | +| | `Int64` (e.g. `(Int64)DataCommandErrorCode.Connection` or `(System.Int64)DataCommandErrorCode.Connection` or `(long)DataCommandErrorCode.Connection`) | +| | `Single` (e.g. `(Single)DataCommandErrorCode.Connection` or `(System.Single)DataCommandErrorCode.Connection` or `(float)DataCommandErrorCode.Connection`) | +| | `Double` (e.g. `(Double)DataCommandErrorCode.Connection` or `(System.Double)DataCommandErrorCode.Connection` or `(double)DataCommandErrorCode.Connection`) | + +## Values + +### Connection {#1000} + +| | | +|-|-| +| **Name:** | Connection | +| **Value:** | [Int32][] with value `1000` | +| **Notes:** | Used when a [CommandException][] occured when the connection to the data source failed. | + +### Statement {#2000} + +| | | +|-|-| +| **Name:** | Statement | +| **Value:** | [Int32][] with value `2000` | +| **Notes:** | Used when a [CommandException][] occured due to the statement(s) being passed into the [Command Property][CommandProperty] could not be parsed. | + +### IncompatibleStatementType {#2001} + +| | | +|-|-| +| **Name:** | IncompatibleStatementType | +| **Value:** | [Int32][] with value `2001` | +| **Notes:** | Used when a [CommandException][] occured due to an [OracleBlockStatement][] being passed into the [Command Property][CommandProperty] when using a [Command][] or [Commands][] data type. | + +### MultipleStatements {#2002} + +| | | +|-|-| +| **Name:** | MultipleStatements | +| **Value:** | [Int32][] with value `2002` | +| **Notes:** | Used when a [CommandException][] occured due to multiple statements being passed into the [Command Property][CommandProperty] when using a [Command][] data type. | + +### Runtime {#3000} + +| | | +|-|-| +| **Name:** | Runtime | +| **Value:** | [Int32][] with value `3000` | +| **Notes:** | Used when a [CommandException][] occured due to an error during the execution of the statement(s). | + +## Remarks + +### Create a DataCommandErrorCode + +The following table shows some of the ways that `DataCommandErrorCode` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use a `DataCommandErrorCode` expression | `DataCommandErrorCode.Connection` | `DataCommandErrorCode.Connection`| Expression | Indicates a [CommandException][] occured when the connection to the data source failed | +| | `DataCommandErrorCode.Statement` | `DataCommandErrorCode.Statement`| Expression | Indicates a [CommandException][] occured due to the statement(s) being passed into the [Command Property][CommandProperty] could not be parsed | +| | `DataCommandErrorCode.IncompatibleStatementType` | `DataCommandErrorCode.IncompatibleStatementType`| Expression | Indicates a [CommandException][] occured due to an [OracleBlockStatement][] being passed into the [Command Property][CommandProperty] when using a [Command][] or [Commands][] data type | +| | `DataCommandErrorCode.MultipleStatements` | `DataCommandErrorCode.MultipleStatements`| Expression | Indicates a [CommandException][] occured due to multiple statements being passed into the [Command Property][CommandProperty] when using a [Command][] data type | +| | `DataCommandErrorCode.Runtime` | `DataCommandErrorCode.Runtime`| Expression | Indicates a [CommandException][] occured due to an error during the execution of the statement(s) | +| Use [Explicit Casting][] | `(DataCommandErrorCode)1000` | `DataCommandErrorCode.Connection`| Expression | Indicates a [CommandException][] occured when the connection to the data source failed | +| | `(DataCommandErrorCode)2000` | `DataCommandErrorCode.Statement`| Expression | Indicates a [CommandException][] occured due to the statement(s) being passed into the [Command Property][CommandProperty] could not be parsed | +| | `(DataCommandErrorCode)2001` | `DataCommandErrorCode.IncompatibleStatementType`| Expression | Indicates a [CommandException][] occured due to an [OracleBlockStatement][] being passed into the [Command Property][CommandProperty] when using a [Command][] or [Commands][] data type | +| | `(DataCommandErrorCode)2002` | `DataCommandErrorCode.MultipleStatements`| Expression | Indicates a [CommandException][] occured due to multiple statements being passed into the [Command Property][CommandProperty] when using a [Command][] data type | +| | `(DataCommandErrorCode)3000` | `DataCommandErrorCode.Runtime`| Expression | Indicates a [CommandException][] occured due to an error during the execution of the statement(s) | +| Use `Enum.Parse` | `(DataCommandErrorCode)Enum.Parse(typeof(DataCommandErrorCode), "Connection")` | `DataCommandErrorCode.Connection`| Expression | Parses `"Connection"` and converts it to `DataCommandErrorCode.Connection`. See [Enum.Parse][] | +| | `(DataCommandErrorCode)Enum.Parse(typeof(DataCommandErrorCode), "Statement")` | `DataCommandErrorCode.Statement`| Expression | Parses `"Statement"` and converts it to `DataCommandErrorCode.Statement`. See [Enum.Parse][] | +| | `(DataCommandErrorCode)Enum.Parse(typeof(DataCommandErrorCode), "IncompatibleStatementType")` | `DataCommandErrorCode.IncompatibleStatementType`| Expression | Parses `"IncompatibleStatementType"` and converts it to `DataCommandErrorCode.IncompatibleStatementType`. See [Enum.Parse][] | +| | `(DataCommandErrorCode)Enum.Parse(typeof(DataCommandErrorCode), "MultipleStatements")` | `DataCommandErrorCode.MultipleStatements`| Expression | Parses `"MultipleStatements"` and converts it to `DataCommandErrorCode.MultipleStatements`. See [Enum.Parse][] | +| | `(DataCommandErrorCode)Enum.Parse(typeof(DataCommandErrorCode), "Runtime")` | `DataCommandErrorCode.Runtime`| Expression | Parses `"Runtime"` and converts it to `DataCommandErrorCode.Runtime`. See [Enum.Parse][] | +| Use `Enum.ToObject` | `(DataCommandErrorCode)Enum.ToObject(typeof(DataCommandErrorCode), 1000)` | `DataCommandErrorCode.Connection`| Expression | Converts `1000` to `DataCommandErrorCode.Connection` value. See [Enum.ToObject][] | +| | `(DataCommandErrorCode)Enum.ToObject(typeof(DataCommandErrorCode), 2000)` | `DataCommandErrorCode.Statement`| Expression | Converts `2000` to `DataCommandErrorCode.Statement` value. See [Enum.ToObject][] | +| | `(DataCommandErrorCode)Enum.ToObject(typeof(DataCommandErrorCode), 2001)` | `DataCommandErrorCode.IncompatibleStatementType`| Expression | Converts `2001` to `DataCommandErrorCode.IncompatibleStatementType` value. See [Enum.ToObject][] | +| | `(DataCommandErrorCode)Enum.ToObject(typeof(DataCommandErrorCode), 2002)` | `DataCommandErrorCode.MultipleStatements`| Expression | Converts `2002` to `DataCommandErrorCode.MultipleStatements` value. See [Enum.ToObject][] | +| | `(DataCommandErrorCode)Enum.ToObject(typeof(DataCommandErrorCode), 3000)` | `DataCommandErrorCode.Runtime`| Expression | Converts `3000` to `DataCommandErrorCode.Runtime` value. See [Enum.ToObject][] | + +Please see [Instantiating an enumeration type][] for further information. + +### Convert DataCommandErrorCode to Text + +The following table shows some of the ways that a `DataCommandErrorCode` can be converted to text. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `ToString` | `DataCommandErrorCode.Connection.ToString()` | `"Connection"` | Expression | Converts `DataCommandErrorCode.Connection` to `"Connection"`. See [Enum.ToString][] | +| | `DataCommandErrorCode.Statement.ToString()` | `"Statement"` | Expression | Converts `DataCommandErrorCode.Statement` to `"Statement"`. See [Enum.ToString][] | +| | `DataCommandErrorCode.IncompatibleStatementType.ToString()` | `"IncompatibleStatementType"` | Expression | Converts `DataCommandErrorCode.IncompatibleStatementType` to `"IncompatibleStatementType"`. See [Enum.ToString][] | +| | `DataCommandErrorCode.MultipleStatements.ToString()` | `"MultipleStatements"` | Expression | Converts `DataCommandErrorCode.MultipleStatements` to `"MultipleStatements"`. See [Enum.ToString][] | +| | `DataCommandErrorCode.Runtime.ToString()` | `"Runtime"` | Expression | Converts `DataCommandErrorCode.Runtime` to `"Runtime"`. See [Enum.ToString][] | +| Use `Convert.ToString` | `Convert.ToString(DataCommandErrorCode.Connection)` | `"Connection"` | Expression | Converts `DataCommandErrorCode.Connection` to `"Connection"`. See [Convert.ToString][] | +| | `Convert.ToString(DataCommandErrorCode.Statement)` | `"Statement"` | Expression | Converts `DataCommandErrorCode.Statement` to `"Statement"`. See [Convert.ToString][] | +| | `Convert.ToString(DataCommandErrorCode.IncompatibleStatementType)` | `"IncompatibleStatementType"` | Expression | Converts `DataCommandErrorCode.IncompatibleStatementType` to `"IncompatibleStatementType"`. See [Convert.ToString][] | +| | `Convert.ToString(DataCommandErrorCode.MultipleStatements)` | `"MultipleStatements"` | Expression | Converts `DataCommandErrorCode.MultipleStatements` to `"MultipleStatements"`. See [Convert.ToString][] | +| | `Convert.ToString(DataCommandErrorCode.Runtime)` | `"Runtime"` | Expression | Converts `DataCommandErrorCode.Runtime` to `"Runtime"`. See [Convert.ToString][] | +| Use `Convert Object To Text` block | where `Object` property has a value of `DataCommandErrorCode.Connection` | `"Connection"` | N/A | Converts `DataCommandErrorCode.Connection` to `"Connection"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `DataCommandErrorCode.Statement` | `"Statement"` | N/A | Converts `DataCommandErrorCode.Statement` to `"Statement"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `DataCommandErrorCode.IncompatibleStatementType` | `"IncompatibleStatementType"` | N/A | Converts `DataCommandErrorCode.IncompatibleStatementType` to `"IncompatibleStatementType"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `DataCommandErrorCode.MultipleStatements` | `"MultipleStatements"` | N/A | Converts `DataCommandErrorCode.MultipleStatements` to `"MultipleStatements"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `DataCommandErrorCode.Runtime` | `"Runtime"` | N/A | Converts `DataCommandErrorCode.Runtime` to `"Runtime"`. See [Convert Object To Text][] | +| Use `Convert Object To Json` block | where `Object` property has a value of `DataCommandErrorCode.Connection` | `"1000"` | N/A | Converts `DataCommandErrorCode.Connection` to `"1000"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `DataCommandErrorCode.Statement` | `"2000"` | N/A | Converts `DataCommandErrorCode.Statement` to `"2000"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `DataCommandErrorCode.IncompatibleStatementType` | `"2001"` | N/A | Converts `DataCommandErrorCode.IncompatibleStatementType` to `"2001"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `DataCommandErrorCode.MultipleStatements` | `"2002"` | N/A | Converts `DataCommandErrorCode.MultipleStatements` to `"2002"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `DataCommandErrorCode.Runtime` | `"3000"` | N/A | Converts `DataCommandErrorCode.Runtime` to `"3000"`. See [Convert Object To Json][] | + +Please see [Formatting enumeration values][] for further information. + +### Convert DataCommandErrorCode to a Number + +The following table shows some of the ways that a `DataCommandErrorCode` can be converted to a number. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use [Explicit Casting][] | `(Int32)DataCommandErrorCode.Connection` | `1000` | Expression | [Casts][Explicit Casting] `DataCommandErrorCode.Connection` to `1000` | +| | `(Int32)DataCommandErrorCode.Statement` | `2000` | Expression | [Casts][Explicit Casting] `DataCommandErrorCode.Statement` to `2000` | +| | `(Int32)DataCommandErrorCode.IncompatibleStatementType` | `2001` | Expression | [Casts][Explicit Casting] `DataCommandErrorCode.IncompatibleStatementType` to `2001` | +| | `(Int32)DataCommandErrorCode.MultipleStatements` | `2002` | Expression | [Casts][Explicit Casting] `DataCommandErrorCode.MultipleStatements` to `2002` | +| | `(Int32)DataCommandErrorCode.Runtime` | `3000` | Expression | [Casts][Explicit Casting] `DataCommandErrorCode.Runtime` to `3000` | +| Use `Convert.ToInt32` | `Convert.ToInt32(DataCommandErrorCode.Connection)` | `1000` | Expression | Converts `DataCommandErrorCode.Connection` to `1000`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(DataCommandErrorCode.Statement)` | `2000` | Expression | Converts `DataCommandErrorCode.Statement` to `2000`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(DataCommandErrorCode.IncompatibleStatementType)` | `2001` | Expression | Converts `DataCommandErrorCode.IncompatibleStatementType` to `2001`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(DataCommandErrorCode.MultipleStatements)` | `2002` | Expression | Converts `DataCommandErrorCode.MultipleStatements` to `2002`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(DataCommandErrorCode.Runtime)` | `3000` | Expression | Converts `DataCommandErrorCode.Runtime` to `3000`. See [Convert.ToInt32][] | + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `DataCommandErrorCode`. +- The Literal Editor is available for [Input][] properties where the data type is `DataCommandErrorCode`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `DataCommandErrorCode`. + +### Known Limitations + +Currently when using either [OdbcConnectionDetails][] or [SqlServerConnectionDetails][], the [CommandException][] will not throw during the parsing process, and only during runtime, so the error code will be [Runtime][] instead of [Statement][]. This is due to the fact that the parsers used for those [ConnectionDetails][] do not throw and will try to execute the statements. + +## See Also + +### Related Data Types + +- [CommandException][] +- [Int32][] +- [String][] +- [ConnectionDetails][] +- [SqlServerConnectionDetails][] +- [OracleConnectionDetails][] +- [OdbcConnectionDetails][] + +### Related Concepts + +- [Explicit Casting][] +- [Working with Enums][] +- [Working with Data Sources][] + +### External Documentation + +- [OracleBlockStatement][] +- [System.Enum][] + +[Connection]: {{< ref "#1000">}} +[Statement]: {{< ref "#2000">}} +[IncompatibleStatementType]: {{< ref "#2001">}} +[MultipleStatements]: {{< ref "#2002">}} +[Runtime]: {{< ref "#3000">}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[Command]: {{< url path="Cortex.Reference.DataTypes.Data.Command.MainDoc" >}} +[Command.CommandText]: {{< url path="Cortex.Reference.DataTypes.Data.Command.CommandText" >}} +[Commands]: {{< url path="Cortex.Reference.DataTypes.Data.Commands.MainDoc" >}} +[Commands.CommandText]: {{< url path="Cortex.Reference.DataTypes.Data.Commands.CommandText" >}} +[QueryCommand]: {{< url path="Cortex.Reference.DataTypes.Data.QueryCommand.MainDoc" >}} +[QueryCommand.CommandText]: {{< url path="Cortex.Reference.DataTypes.Data.QueryCommand.CommandText" >}} +[NonQueryCommand]: {{< url path="Cortex.Reference.DataTypes.Data.NonQueryCommand.MainDoc" >}} +[NonQueryCommand.CommandText]: {{< url path="Cortex.Reference.DataTypes.Data.NonQueryCommand.CommandText" >}} +[ConnectionDetails]: {{< url path="Cortex.Reference.DataTypes.Data.ConnectionDetails.MainDoc" >}} +[SqlServerConnectionDetails]: {{< url path="Cortex.Reference.DataTypes.Data.SqlServerConnectionDetails.MainDoc" >}} +[OracleConnectionDetails]: {{< url path="Cortex.Reference.DataTypes.Data.OracleConnectionDetails.MainDoc" >}} +[OdbcConnectionDetails]: {{< url path="Cortex.Reference.DataTypes.Data.OdbcConnectionDetails.MainDoc" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[CommandProperty]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.CommandProperty" >}} + +[CommandException]: {{< url path="Cortex.Reference.Exceptions.Data.CommandException.MainDoc" >}} + +[Working with Data Sources]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DataSources.MainDoc" >}} +[Working with Enums]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Enums.MainDoc" >}} +[Explicit Casting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectCasting.ExplicitCast" >}} +[Instantiating an enumeration type]: {{< url path="MSDocs.DotNet.Api.System.Enum.InstantiatingAnEnum" >}} +[Convert Object To Text]: {{< url path="Cortex.Reference.Blocks.Objects.ConvertObject.ConvertObjectToText.MainDoc" >}} +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} +[Formatting enumeration values]: {{< url path="MSDocs.DotNet.Api.System.Enum.FormattingEnumerationValues" >}} + +[Enum.Parse]: {{< url path="MSDocs.DotNet.Api.System.Enum.Parse" >}} +[Enum.ToObject]: {{< url path="MSDocs.DotNet.Api.System.Enum.ToObject" >}} +[Enum.ToString]: {{< url path="MSDocs.DotNet.Api.System.Enum.ToString" >}} +[Convert.ToInt32]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToInt32" >}} +[Convert.ToString]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToString" >}} + +[System.Enum]: {{< url path="MSDocs.DotNet.Api.System.Enum.MainDoc" >}} +[OracleBlockStatement]: {{< url path="Oracle.PL-SQL.BlockStatement" >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/data-types/data/iparameter.md b/content/en/docs/2024.11/Reference/data-types/data/iparameter.md new file mode 100644 index 000000000..7f2caae3f --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/data/iparameter.md @@ -0,0 +1,88 @@ +--- +title: "IParameter" +linkTitle: "IParameter" +description: "Any data type representing a parameter for use in the parameters property on the DataCommand data types." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Data.IParameter)

+ +## Summary + +Any data type representing a parameter for use in the [Parameters property][ParametersProperty] on the [DataCommand][] data types. + +`OracleParameter` is the most common example. + +| | | +|-|-| +| **Category:** | Data | +| **Name:** | `IParameter` | +| **Full Name:** | `Cortex.DataTypes.Data.IParameter` | +| **Alias:** | N/A | +| **Description:** | Any data type representing a parameter for use in the parameters property on the DataCommand data types. | +| **Size:** | Varies | +| **Default Value:** | `null` | +| **Can be used as:** | `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Remarks + +### Most Common IParameter Data Types + +Any of the following data types can be used where an `IParameter` is required: + +* [OracleParameter][] + +### Create an IParameter + +For some of the ways that an `IParameter` can be created, please see each of the `IParameter` data types: + +* [OracleParameter][CreateOracleParameter] + +### Convert IParameter to Text + +For some of the ways that an `IParameter` can be converted to text, please see each of the `IParameter` data types: + +* [OracleParameter][ConvertOracleParameter] + +### Property Editor Support + +* The Expression Editor is available for [Input][] properties where the data type is `IParameter`. +* The Literal Editor is not available for [Input][] properties where the data type is `IParameter`. +* The Variable Editor is available for [InputOutput][] and [Output][] properties where the data type is `IParameter`. + +### Known Limitations + +* None + +## See Also + +### Related Data Types + +* [OracleParameter][] + +### Related Concepts + +* None + +### External Documentation + +* None + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Structure]: {{< url path="Cortex.Reference.DataTypes.Collections.Structure.MainDoc" >}} +[StructureCreateNew]: {{< url path="Cortex.Reference.DataTypes.Collections.Structure.CreateNew" >}} +[StructureConvertToText]: {{< url path="Cortex.Reference.DataTypes.Collections.Structure.ConvertToText" >}} +[ParametersProperty]: {{< url path="Cortex.Reference.DataTypes.Data.DataCommand.Parameters" >}} +[OracleParameter]: {{< url path="Cortex.Reference.DataTypes.Data.OracleParameter.MainDoc" >}} +[CommandProperty]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.CommandProperty" >}} +[DataCommand]: {{< url path="Cortex.Reference.DataTypes.Data.DataCommand.MainDoc" >}} +[OracleParameter]: {{< url path="Cortex.Reference.DataTypes.Data.OracleParameter.MainDoc" >}} +[CreateOracleParameter]: {{< url path="Cortex.Reference.DataTypes.Data.OracleParameter.Create" >}} +[ConvertOracleParameter]: {{< url path="Cortex.Reference.DataTypes.Data.OracleParameter.Convert" >}} +[OracleParameters]: {{< url path="Cortex.Reference.DataTypes.Data.OracleParameters.MainDoc" >}} +[OracleConnectionDetails]: {{< url path="Cortex.Reference.DataTypes.Data.OracleConnectionDetails.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/data/iparameters-1.md b/content/en/docs/2024.11/Reference/data-types/data/iparameters-1.md new file mode 100644 index 000000000..005b0abb5 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/data/iparameters-1.md @@ -0,0 +1,93 @@ +--- +title: "IParameters" +linkTitle: "IParameters" +description: "Any data type representing a parameter for use in the parameters property on the DataCommand data types." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Data.IParameters)

+ +## Summary + +Any data type representing a parameter for use in the [Parameters property][ParametersProperty] on the [DataCommand][] data types. + +`T` indicates the type of [IParameter][] that will be used for the advanced property. + +`OracleParameters` is the most common example. + +| | | +|-|-| +| **Category:** | Data | +| **Name:** | `IParameters` | +| **Full Name:** | `Cortex.DataTypes.Data.IParameters` | +| **Alias:** | N/A | +| **Description:** | Any data type representing a parameter for use in the Parameters property on the DataCommand data types. | +| **Size:** | Varies | +| **Default Value:** | `null` | +| **Can be used as:** | `OracleParameters`, `Object`, `dynamic` | +| | `OracleParameters` (e.g. where `IParameters` is `IParameters`) | +| **Can be cast to:** | N/A | + +## Remarks + +### Most Common IParameters<T> Data Types + +Any of the following data types can be used where an `IParameters` is required: + +* [OracleParameters][] + +### Create an IParameters<T> + +For some of the ways that an `IParameters` can be created, please see each of the `IParameters` data types: + +* [OracleParameters][CreateOracleParameters] + +### Convert IParameters<T> to Text + +For some of the ways that an `IParameters` can be converted to text, please see each of the `IParameters` data types: + +* [OracleParameters][ConvertOracleParameters] + +### Property Editor Support + +* The Expression Editor is available for [Input][] properties where the data type is `IParameters`. +* The Literal Editor is not available for [Input][] properties where the data type is `IParameters`. +* The Variable Editor is available for [InputOutput][] and [Output][] properties where the data type is `IParameters`. + +### Known Limitations + +* None + +## See Also + +### Related Data Types + +* [IParameter][] +* [OracleParameters][] + +### Related Concepts + +* None + +### External Documentation + +* None + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Structure]: {{< url path="Cortex.Reference.DataTypes.Collections.Structure.MainDoc" >}} +[StructureCreateNew]: {{< url path="Cortex.Reference.DataTypes.Collections.Structure.CreateNew" >}} +[StructureConvertToText]: {{< url path="Cortex.Reference.DataTypes.Collections.Structure.ConvertToText" >}} +[ParametersProperty]: {{< url path="Cortex.Reference.DataTypes.Data.DataCommand.Parameters" >}} +[OracleParameter]: {{< url path="Cortex.Reference.DataTypes.Data.OracleParameter.MainDoc" >}} +[CommandProperty]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.CommandProperty" >}} +[DataCommand]: {{< url path="Cortex.Reference.DataTypes.Data.DataCommand.MainDoc" >}} +[OracleParameter]: {{< url path="Cortex.Reference.DataTypes.Data.OracleParameter.MainDoc" >}} +[OracleParameters]: {{< url path="Cortex.Reference.DataTypes.Data.OracleParameters.MainDoc" >}} +[OracleConnectionDetails]: {{< url path="Cortex.Reference.DataTypes.Data.OracleConnectionDetails.MainDoc" >}} +[CreateOracleParameters]: {{< url path="Cortex.Reference.DataTypes.Data.OracleParameters.Create" >}} +[ConvertOracleParameters]: {{< url path="Cortex.Reference.DataTypes.Data.OracleParameters.Convert" >}} +[IParameter]: {{< url path="Cortex.Reference.DataTypes.Data.IParameter.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/data/nonquerycommand.md b/content/en/docs/2024.11/Reference/data-types/data/nonquerycommand.md new file mode 100644 index 000000000..388c39ba9 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/data/nonquerycommand.md @@ -0,0 +1,152 @@ +--- +title: "NonQueryCommand" +linkTitle: "NonQueryCommand" +description: "Holds the information for running a Non Query command against a data source." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Data.NonQueryCommand)

+ +## Summary + +A `NonQueryCommand` data type is used to define single or multiple [Non Query Statements][Non Query Statement] that can be run against a data source. Statements can be [parameterised][Parameterised Commands], which is recommended to prevent [SQL Injection][]. + +| | | +|-|-| +| **Category:** | Data | +| **Name:** | `NonQueryCommand` | +| **Full Name:** | `Cortex.DataTypes.Data.NonQueryCommand` | +| **Alias:** | N/A | +| **Description:** | Defines single or multiple Non Query Statements that can be run against a data source. | +| **Default Value:** | `null` | +| **Can be used as:** | `DataCommand`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### Command Text + +The Command Text is used to define single or multiple [Non Query Statements][Non Query Statement] that will be run against the data source. + +| | | +|--------------------|---------------------------| +| Data Type | [EncryptableText][] | +| Is Advanced | `false` | +| Default Editor | [Expression][] | +| Default Value | [EncryptableText][] with value `$@""` | + +### Parameters + +Parameters are used to pass information to the [Non Query Statements][Non Query Statement] that will be run against the data source. + +It is recommended to always use [Parameterised Commands][] as they prevent [SQL Injection][] attacks by ensuring the parameters are sanitised before the command is executed. + +For more information see [Parameterised Commands][]. + +| | | +|--------------------|---------------------------| +| Data Type | [dynamic][] | +| Is Advanced | `true` | +| Default Editor | [Expression][] | +| Default Value | [dynamic][] with no value | + +## Remarks + +### Create a NonQueryCommand + +The following table shows some of the ways that a `NonQueryCommand` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use a `NonQueryCommand` constructor | `new NonQueryCommand("INSERT INTO Table (FirstColumn, SecondColumn) VALUES (\"Value1\", \"Value2\")", null)` | `{CommandText: "INSERT INTO Table (FirstColumn, SecondColumn) VALUES (\"Value1\", \"Value2\")", Parameters: null}` | Expression | | +| | `new NonQueryCommand("INSERT INTO Table (FirstColumn, SecondColumn) VALUES (@InsertParameter1, @InsertParameter2)", new { InsertParameter1 = "Value1", InsertParameter2 = "Value2" })` | `{"CommandText": "INSERT INTO Table (FirstColumn, SecondColumn) VALUES (@InsertParameter1, @InsertParameter2)", "Parameters": { "InsertParameter1": \"Value1\", "InsertParameter2": \"Value2\" } }` | Expression | It is recommended to always use [Parameterised Commands][] as they prevent [SQL Injection][] | + +A `NonQueryCommand` can also be created using the Literal Editor by filling in the necessary values for the following properties: + +| Property | Data Type | Example | Notes | +|-|-|-|-| +| `CommandText`| `EncryptableText`| `$@"INSERT INTO Table (FirstColumn, SecondColumn) VALUES (@InsertParameter1, @InsertParameter2)"` | The command that will be executed against the data source. | +| `Parameters`| `dynamic`| `new { InsertParameter1 = "Value1", InsertParameter2 = "Value2" })` | The parameters that are used within a [Parameterised Command][Parameterised Commands]. | + +### Convert NonQueryCommand to Text + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `ToString` | `($)NonQueryCommand.ToString()` | `"Cortex.DataTypes.Data.NonQueryCommand"` | Expression | ToString will return the Full Name of the NonQueryCommand Data Type | +| Use `Convert Object To Text` block | where `Object` property has a value of `{CommandText: "INSERT INTO Table (FirstColumn, SecondColumn) VALUES (\"Value1\", \"Value2\")", Parameters: null}` | `"Cortex.DataTypes.Data.NonQueryCommand"` | N/A | See [Convert Object To Text][] | +| Use `Convert Object To Json` block | where `Object` property has a value of `{CommandText: "INSERT INTO Table (FirstColumn, SecondColumn) VALUES (\"Value1\", \"Value2\")", Parameters: null}` | `"{\r\n \"CommandText\": \"INSERT INTO Table (FirstColumn, SecondColumn) VALUES (\\\"Value1\\\", \\\"Value2\\\")\",\r\n \"Parameters\": null\r\n}"` | N/A | See [Convert Object To Json][] | + +### Parameterised Commands + +It is recommended to always use parameterised commands as they prevent [SQL Injection][] attacks by ensuring the parameters are sanitised before the command is executed. + +The `@` symbol denotes a parameter within the [CommandText][] (e.g. `"INSERT INTO Table (FirstColumn) VALUES (@Parameter)"`). An example of using parameters can be found in [Executing Multiple Commands (Safe)][], whereas, an example of inserting variables into a statement without parameters can be found in [Executing Multiple Commands (Unsafe)][] + +For more information see [Parameterised Commands][Block: Parameterised Commands]. + +### Property Editor Support + +* The Expression Editor is available for [Input][] properties where the data type is `NonQueryCommand`. +* The Literal Editor is available for [Input][] properties where the data type is `NonQueryCommand`. +* The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is + +### Known limitations + +#### ToString Method always returns the Full Name + +Currently, if the `ToString()` method is used on a `NonQueryCommand`, then its Full Name will be returned; instead of a representation of the data within the `NonQueryCommand`. + +In future this limitation may be removed. + +#### Multiple SQL Commands (Oracle Only) + +For Oracle you must use [block statement syntax][OracleBlockStatement] to execute multiple commands, otherwise a [CommandException][CommandExceptionRuntime] will be thrown. + +## See Also + +### Related Data Types + +* [DataCommand][] +* [Command][] +* [Commands][] +* [QueryCommand][] + +### Related Concepts + +* [Working with Data Sources][] + +### External Documentation + +* [OracleBlockStatement][] +* [SQL Injection][] + +[CommandText]: {{< ref "#command-text" >}} +[Parameterised Commands]: {{< ref "#parameterised-commands" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Executing Multiple Commands (Safe)]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.ExecutingMultipleCommandsSafe" >}} +[Executing Multiple Commands (Unsafe)]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.ExecutingMultipleCommandsUnsafe" >}} +[Block: Parameterised Commands]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.ParameterisedCommands" >}} +[Non Query Statement]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.NonQueryStatements" >}} + +[Convert Object To Text]: {{< url path="Cortex.Reference.Blocks.Objects.ConvertObject.ConvertObjectToText.MainDoc" >}} +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} + +[Working with Data Sources]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DataSources.MainDoc" >}} + +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[EncryptableText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptableText.MainDoc" >}} +[DataCommand]: {{< url path="Cortex.Reference.DataTypes.Data.DataCommand.MainDoc" >}} +[Command]: {{< url path="Cortex.Reference.DataTypes.Data.Command.MainDoc" >}} +[Commands]: {{< url path="Cortex.Reference.DataTypes.Data.Commands.MainDoc" >}} +[QueryCommand]: {{< url path="Cortex.Reference.DataTypes.Data.QueryCommand.MainDoc" >}} +[CommandProperty]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.CommandProperty" >}} +[CommandExceptionRuntime]: {{< url path="Cortex.Reference.Exceptions.Data.CommandException.Runtime" >}} + +[OracleBlockStatement]: {{< url path="Oracle.PL-SQL.BlockStatement" >}} +[SQL Injection]: {{< url path="W3.SqlInjection" >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/data-types/data/odbcconnectiondetails.md b/content/en/docs/2024.11/Reference/data-types/data/odbcconnectiondetails.md new file mode 100644 index 000000000..44036a187 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/data/odbcconnectiondetails.md @@ -0,0 +1,102 @@ +--- +title: "OdbcConnectionDetails" +linkTitle: "OdbcConnectionDetails" +description: "The data type representing configuration for establishing and maintaining a connection to an ODBC data source." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Data.OdbcConnectionDetails)

+ +## Summary + +The `OdbcConnectionDetails` data type is used to establish and maintain a connection to an ODBC data source. + +| | | +|-|-| +| **Category:** | Data | +| **Name:** | `OdbcConnectionDetails` | +| **Full Name:** | `Cortex.DataTypes.Data.OdbcConnectionDetails` | +| **Alias:** | N/A | +| **Description:** | The data type representing configuration for establishing and maintaining a connection to an ODBC data source. | +| **Default Value:** | `null` | +| **Can be used as:** | `ConnectionDetails`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### Connection String + +The Connection String that is used to connect to an ODBC data source. + +| | | +|--------------------|---------------------------| +| Data Type | [EncryptableText][] | +| Is Advanced | `false` | +| Default Editor | [Expression][] | +| Default Value | [EncryptableText][] with value `$@"Dsn=DSN Name;Driver=Driver Name;"` | + +## Remarks + +### Create an OdbcConnectionDetails + +The following table shows some of the ways that a `OdbcConnectionDetails` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use an `OdbcConnectionDetails` constructor | `new OdbcConnectionDetails("DSN=LocalHost;Driver={ODBC Driver Version}")` | `{"ConnectionString": "DSN=LocalHost;Driver={ODBC Driver Version}"}` | Expression | | + +A `OdbcConnectionDetails` can also be created using the Literal Editor by filling in the necessary values for the following properties: + +| Property | Data Type | Example | Notes | +|-|-|-|-| +| `Connection String`| `EncryptableText`| `$@"DSN=LocalHost;Driver={ODBC Driver Version}"` | The Connection String that is used to connect to an ODBC data source. | + +### Connection Strings + +A [Connection String][] must be provided in order to connect to an ODBC data source. The [Connection String][] can be formatted differently depending on the ODBC driver. See [ConnectionStrings.com][] for a list of ODBC connection strings under each specific data source. + +Please see [Working with Data Sources][] for a list of other supported data sources (e.g. SQL Server) and how to construct valid connection strings for them. + +### Property Editor Support + +* The Expression Editor is available for [Input][] properties where the data type is `OdbcConnectionDetails`. +* The Literal Editor is not available for [Input][] properties where the data type is `OdbcConnectionDetails`. +* The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `OdbcConnectionDetails`. + +### Known limitations + +* Currently string values cannot be used as a parameter when connected to an Microsoft Access data source. + +## See Also + +### Related Data Types + +* [ConnectionDetails][] +* [OracleConnectionDetails][] +* [SqlServerConnectionDetails][] + +### Related Concepts + +* [Working with Data Sources][] + +### External Documentation + +* [ConnectionStrings.com][] + +[Connection String]: {{< ref "#connection-string" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[ConnectionDetails]: {{< url path="Cortex.Reference.DataTypes.Data.ConnectionDetails.MainDoc" >}} +[OracleConnectionDetails]: {{< url path="Cortex.Reference.DataTypes.Data.OracleConnectionDetails.MainDoc" >}} +[SqlServerConnectionDetails]: {{< url path="Cortex.Reference.DataTypes.Data.SqlServerConnectionDetails.MainDoc" >}} + +[Working with Data Sources]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DataSources.MainDoc" >}} + +[EncryptableText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptableText.MainDoc" >}} + +[ConnectionStrings.com]: {{< url path="ConnectionStrings.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/data/oracleconnectiondetails.md b/content/en/docs/2024.11/Reference/data-types/data/oracleconnectiondetails.md new file mode 100644 index 000000000..6712f85f8 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/data/oracleconnectiondetails.md @@ -0,0 +1,114 @@ +--- +title: "OracleConnectionDetails" +linkTitle: "OracleConnectionDetails" +description: "The data type representing configuration for establishing and maintaining a connection to an Oracle data source." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Data.OracleConnectionDetails)

+ +## Summary + +The `OracleConnectionDetails` data type is used to establish and maintain a connection to an Oracle data source. + +| | | +|-|-| +| **Category:** | Data | +| **Name:** | `OracleConnectionDetails` | +| **Full Name:** | `Cortex.DataTypes.Data.OracleConnectionDetails` | +| **Alias:** | N/A | +| **Description:** | The data type representing configuration for establishing and maintaining a connection to an Oracle data source. | +| **Default Value:** | `null` | +| **Can be used as:** | `ConnectionDetails`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### Connection String + +The Connection String that is used to connect to an Oracle data source. + +| | | +|--------------------|---------------------------| +| Data Type | [EncryptableText][] | +| Is Advanced | `false` | +| Default Editor | [Expression][] | +| Default Value | [EncryptableText][] with value `$@"Data Source=Connection String;"` | + +## Remarks + +### Create an OracleConnectionDetails + +The following table shows some of the ways that an `OracleConnectionDetails` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use an `OracleConnectionDetails` constructor | `new OracleConnectionDetails("Data Source=Connection String;")` | `{connectionString: $@"Data Source=Connection String;"}` | Expression | | + +An `OracleConnectionDetails` can also be created using the Literal Editor by filling in the necessary values for the following properties: + +| Property | Data Type | Example | Notes | +|-|-|-|-| +| `Connection String`| `EncryptableText`| `$@"Data Source=Connection String;"` | The Connection String that is used to connect to an Oracle database. | + +### Connection Strings + +A [Connection String][] must be provided in order to connect to an Oracle data source. The [Connection String][] can be formatted differently depending on the way the connection will be created and maintained (e.g. Windows user authentication vs TNS). See [ConnectionStrings.com][] for a list of Oracle connection strings. + +Please see [Working with Data Sources][] for a list of other supported data sources (e.g. SQL Server) and how to construct valid connection strings for them. + +### Property Editor Support + +* The Expression Editor is available for [Input][] properties where the data type is `OracleConnectionDetails`. +* The Literal Editor is not available for [Input][] properties where the data type is `OracleConnectionDetails`. +* The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `OracleConnectionDetails`. + +### Known limitations + +* When using the [OracleConnectionDetails][] to execute multiple commands in the [Command Property][CommandProperty] (using the [QueryCommand][] or [NonQueryCommand][] datatype), as Oracle uses PL/SQL, you must use the block statement syntax. See [OracleBlockStatement][] for more. + +* The [Integrated Security][OracleIntegratedSecurityConnectionString] connection string format is not supported. + +## See Also + +### Related Data Types + +* [ConnectionDetails][] +* [OdbcConnectionDetails][] +* [SqlServerConnectionDetails][] + +### Related Concepts + +* [Working with Data Sources][] + +### External Documentation + +* [ConnectionStrings.com][] +* [OracleBlockStatement][] + +[Connection String]: {{< ref "#connection-string" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[CommandProperty]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.CommandProperty" >}} +[ConnectionDetails]: {{< url path="Cortex.Reference.DataTypes.Data.ConnectionDetails.MainDoc" >}} +[OdbcConnectionDetails]: {{< url path="Cortex.Reference.DataTypes.Data.OdbcConnectionDetails.MainDoc" >}} +[SqlServerConnectionDetails]: {{< url path="Cortex.Reference.DataTypes.Data.SqlServerConnectionDetails.MainDoc" >}} +[OracleConnectionDetails]: {{< url path="Cortex.Reference.DataTypes.Data.OracleConnectionDetails.MainDoc" >}} + +[QueryCommand]: {{< url path="Cortex.Reference.DataTypes.Data.QueryCommand.MainDoc" >}} +[QueryCommand.CommandText]: {{< url path="Cortex.Reference.DataTypes.Data.QueryCommand.CommandText" >}} +[NonQueryCommand]: {{< url path="Cortex.Reference.DataTypes.Data.NonQueryCommand.MainDoc" >}} +[NonQueryCommand.CommandText]: {{< url path="Cortex.Reference.DataTypes.Data.NonQueryCommand.CommandText" >}} + +[Working with Data Sources]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DataSources.MainDoc" >}} + +[EncryptableText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptableText.MainDoc" >}} + +[ConnectionStrings.com]: {{< url path="ConnectionStrings.OracleConnection" >}} +[OracleIntegratedSecurityConnectionString]: {{< url path="ConnectionStrings.OracleConnectionIntegratedSecurity" >}} +[OracleBlockStatement]: {{< url path="Oracle.PL-SQL.BlockStatement" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/data/oraclemappingtype.md b/content/en/docs/2024.11/Reference/data-types/data/oraclemappingtype.md new file mode 100644 index 000000000..09adc6194 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/data/oraclemappingtype.md @@ -0,0 +1,619 @@ +--- +title: "OracleMappingType" +linkTitle: "OracleMappingType" +description: "Used to represent the Oracle type used for the Parameter." +--- + +# {{% param title %}} + +

(Dapper.Oracle.OracleMappingType)

+ +## Summary + +The `OracleMappingType` data type is used to represent the Oracle type of the [OracleParameter][]. + +`OracleMappingType` is an [enum][Working with Enums] data type, which means it has a defined set of values, where each value has an associated [String][] name and [Int32][] value. + +| | | +|---------------------|------------------------------------------------------------------------------------------------------------------------------------| +| **Category:** | Data | +| **Name:** | `OracleMappingType` | +| **Full Name:** | `Dapper.Oracle.OracleMappingType` | +| **Alias:** | N/A | +| **Description:** | Used to represent the Oracle type of the [OracleParameter][]. | +| **Default Value:** | `OracleMappingType.BFile` | +| **Can be used as:** | `OracleMappingType`, `Object`, `dynamic` | +| **Can be cast to:** | `Int16` (e.g. `(Int16)OracleMappingType.BFile` or `(System.Int16)OracleMappingType.BFile` or `(short)OracleMappingType.BFile`) | +| | `Int32` (e.g. `(Int32)OracleMappingType.BFile` or `(System.Int32)OracleMappingType.BFile` or `(int)OracleMappingType.BFile`) | +| | `Int64` (e.g. `(Int64)OracleMappingType.BFile` or `(System.Int64)OracleMappingType.BFile` or `(long)OracleMappingType.BFile`) | +| | `Single` (e.g. `(Single)OracleMappingType.BFile` or `(System.Single)OracleMappingType.BFile` or `(float)OracleMappingType.BFile`) | +| | `Double` (e.g. `(Double)OracleMappingType.BFile` or `(System.Double)OracleMappingType.BFile` or `(double)OracleMappingType.BFile`) | + +## Values + +### BFile + +| | | +|------------|----------------------------| +| **Name:** | BFile | +| **Value:** | [Int32][] with value `101` | +| **Notes:** | | + +### Blob + +| | | +|------------|----------------------------| +| **Name:** | Blob | +| **Value:** | [Int32][] with value `102` | +| **Notes:** | | + +### Byte + +| | | +|------------|----------------------------| +| **Name:** | Byte | +| **Value:** | [Int32][] with value `103` | +| **Notes:** | | + +### Char + +| | | +|------------|----------------------------| +| **Name:** | Char | +| **Value:** | [Int32][] with value `104` | +| **Notes:** | | + +### Clob + +| | | +|------------|----------------------------| +| **Name:** | Clob | +| **Value:** | [Int32][] with value `105` | +| **Notes:** | | + +### Date + +| | | +|------------|----------------------------| +| **Name:** | Date | +| **Value:** | [Int32][] with value `106` | +| **Notes:** | | + +### Decimal + +| | | +|------------|----------------------------| +| **Name:** | Decimal | +| **Value:** | [Int32][] with value `107` | +| **Notes:** | | + +### Double + +| | | +|------------|----------------------------| +| **Name:** | Double | +| **Value:** | [Int32][] with value `108` | +| **Notes:** | | + +### Long + +| | | +|------------|----------------------------| +| **Name:** | Long | +| **Value:** | [Int32][] with value `109` | +| **Notes:** | | + +### LongRaw + +| | | +|------------|----------------------------| +| **Name:** | LongRaw | +| **Value:** | [Int32][] with value `110` | +| **Notes:** | | + +### Int16 + +| | | +|------------|----------------------------| +| **Name:** | Int16 | +| **Value:** | [Int32][] with value `111` | +| **Notes:** | | + +### Int32 + +| | | +|------------|----------------------------| +| **Name:** | Int32 | +| **Value:** | [Int32][] with value `112` | +| **Notes:** | | + +### Int64 + +| | | +|------------|----------------------------| +| **Name:** | Int64 | +| **Value:** | [Int32][] with value `113` | +| **Notes:** | | + +### IntervalDS + +| | | +|------------|----------------------------| +| **Name:** | IntervalDS | +| **Value:** | [Int32][] with value `114` | +| **Notes:** | | + +### IntervalYM + +| | | +|------------|----------------------------| +| **Name:** | IntervalYM | +| **Value:** | [Int32][] with value `115` | +| **Notes:** | | + +### NClob + +| | | +|------------|----------------------------| +| **Name:** | NClob | +| **Value:** | [Int32][] with value `116` | +| **Notes:** | | + +### NChar + +| | | +|------------|----------------------------| +| **Name:** | NChar | +| **Value:** | [Int32][] with value `117` | +| **Notes:** | | + +### NVarchar2 + +| | | +|------------|----------------------------| +| **Name:** | NVarchar2 | +| **Value:** | [Int32][] with value `119` | +| **Notes:** | | + +### Raw + +| | | +|------------|----------------------------| +| **Name:** | Raw | +| **Value:** | [Int32][] with value `120` | +| **Notes:** | | + +### RefCursor + +| | | +|------------|----------------------------| +| **Name:** | RefCursor | +| **Value:** | [Int32][] with value `121` | +| **Notes:** | | + +### Single + +| | | +|------------|----------------------------| +| **Name:** | Single | +| **Value:** | [Int32][] with value `122` | +| **Notes:** | | + +### TimeStamp + +| | | +|------------|----------------------------| +| **Name:** | TimeStamp | +| **Value:** | [Int32][] with value `123` | +| **Notes:** | | + +### TimeStampLTZ + +| | | +|------------|----------------------------| +| **Name:** | TimeStampLTZ | +| **Value:** | [Int32][] with value `124` | +| **Notes:** | | + +### TimeStampTZ + +| | | +|------------|----------------------------| +| **Name:** | TimeStampLZ | +| **Value:** | [Int32][] with value `125` | +| **Notes:** | | + +### Varchar2 + +| | | +|------------|----------------------------| +| **Name:** | Varchar2 | +| **Value:** | [Int32][] with value `126` | +| **Notes:** | | + +### XmlType + +| | | +|------------|----------------------------| +| **Name:** | XmlType | +| **Value:** | [Int32][] with value `127` | +| **Notes:** | | + +### BinaryDouble + +| | | +|------------|----------------------------| +| **Name:** | BinaryDouble | +| **Value:** | [Int32][] with value `132` | +| **Notes:** | | + +### BinaryFloat + +| | | +|------------|----------------------------| +| **Name:** | BinaryFloat | +| **Value:** | [Int32][] with value `133` | +| **Notes:** | | + +## Remarks + +### Create OracleMappingType + +The following table shows some of the ways that `OracleMappingType` can be created using the expression editor. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use a `OracleMappingType` expression | `OracleMappingType.BFile` | `OracleMappingType.BFile`| Expression | | +| | `OracleMappingType.Blob` | `OracleMappingType.Blob`| Expression | | +| | `OracleMappingType.Byte` | `OracleMappingType.Byte`| Expression | | +| | `OracleMappingType.Char` | `OracleMappingType.Char`| Expression | | +| | `OracleMappingType.Clob` | `OracleMappingType.Clob` | Expression | | +| | `OracleMappingType.Date` | `OracleMappingType.Date` | Expression | | +| | `OracleMappingType.Decimal` | `OracleMappingType.Decimal` | Expression | | +| | `OracleMappingType.Double` | `OracleMappingType.Double` | Expression | | +| | `OracleMappingType.Long` | `OracleMappingType.Long` | Expression | | +| | `OracleMappingType.LongRaw` | `OracleMappingType.LongRaw` | Expression | | +| | `OracleMappingType.Int16` | `OracleMappingType.Int16` | Expression | | +| | `OracleMappingType.Int32` | `OracleMappingType.Int32` | Expression | | +| | `OracleMappingType.Int64` | `OracleMappingType.Int64` | Expression | | +| | `OracleMappingType.IntervalDS` | `OracleMappingType.IntervalDS` | Expression | | +| | `OracleMappingType.IntervalYM` | `OracleMappingType.IntervalYM` | Expression | | +| | `OracleMappingType.NClob` | `OracleMappingType.NClob` | Expression | | +| | `OracleMappingType.NChar` | `OracleMappingType.NChar` | Expression | | +| | `OracleMappingType.NVarchar2` | `OracleMappingType.NVarchar2` | Expression | | +| | `OracleMappingType.Raw` | `OracleMappingType.Raw` | Expression | | +| | `OracleMappingType.RefCursor` | `OracleMappingType.RefCursor` | Expression | | +| | `OracleMappingType.Single` | `OracleMappingType.Single` | Expression | | +| | `OracleMappingType.TimeStamp` | `OracleMappingType.TimeStamp` | Expression | | +| | `OracleMappingType.TimeStampLTZ` | `OracleMappingType.TimeStampLTZ` | Expression | | +| | `OracleMappingType.TimeStampLZ` | `OracleMappingType.TimeStampLZ` | Expression | | +| | `OracleMappingType.Varchar2` | `OracleMappingType.Varchar2` | Expression | | +| | `OracleMappingType.XmlType` | `OracleMappingType.XmlType` | Expression | | +| | `OracleMappingType.BinaryDouble` | `OracleMappingType.BinaryDouble` | Expression | | +| | `OracleMappingType.BinaryFloat` | `OracleMappingType.BinaryFloat` | Expression | | +| Use [Explicit Casting][] | `(OracleMappingType)101` | `OracleMappingType.BFile`| Expression | | +| | `(OracleMappingType)102` | `OracleMappingType.Blob`| Expression | | +| | `(OracleMappingType)103` | `OracleMappingType.Byte`| Expression | | +| | `(OracleMappingType)104` | `OracleMappingType.Char`| Expression | | +| | `(OracleMappingType)105` | `OracleMappingType.Clob` | Expression | | +| | `(OracleMappingType)106` | `OracleMappingType.Date` | Expression | | +| | `(OracleMappingType)107` | `OracleMappingType.Decimal` | Expression | | +| | `(OracleMappingType)108` | `OracleMappingType.Double` | Expression | | +| | `(OracleMappingType)109` | `OracleMappingType.Long` | Expression | | +| | `(OracleMappingType)110` | `OracleMappingType.LongRaw` | Expression | | +| | `(OracleMappingType)111` | `OracleMappingType.Int16` | Expression | | +| | `(OracleMappingType)112` | `OracleMappingType.Int32` | Expression | | +| | `(OracleMappingType)113` | `OracleMappingType.Int64` | Expression | | +| | `(OracleMappingType)114` | `OracleMappingType.IntervalDS` | Expression | | +| | `(OracleMappingType)115` | `OracleMappingType.IntervalYM` | Expression | | +| | `(OracleMappingType)116` | `OracleMappingType.NClob` | Expression | | +| | `(OracleMappingType)117` | `OracleMappingType.NChar` | Expression | | +| | `(OracleMappingType)119` | `OracleMappingType.NVarchar2` | Expression | | +| | `(OracleMappingType)120` | `OracleMappingType.Raw` | Expression | | +| | `(OracleMappingType)121` | `OracleMappingType.RefCursor` | Expression | | +| | `(OracleMappingType)122` | `OracleMappingType.Single` | Expression | | +| | `(OracleMappingType)123` | `OracleMappingType.TimeStamp` | Expression | | +| | `(OracleMappingType)124` | `OracleMappingType.TimeStampLTZ` | Expression | | +| | `(OracleMappingType)125` | `OracleMappingType.TimeStampLZ` | Expression | | +| | `(OracleMappingType)126` | `OracleMappingType.Varchar2` | Expression | | +| | `(OracleMappingType)127` | `OracleMappingType.XmlType` | Expression | | +| | `(OracleMappingType)132` | `OracleMappingType.BinaryDouble` | Expression | | +| | `(OracleMappingType)133` | `OracleMappingType.BinaryFloat` | Expression | | +| Use `Enum.Parse` | `(OracleMappingType)Enum.Parse(typeof(OracleMappingType), "BFile")` | `OracleMappingType.BFile`| Expression | Parses `"BFile"` and converts it to `OracleMappingType.BFile`. See [Enum.Parse][] | +| | `(OracleMappingType)Enum.Parse(typeof(OracleMappingType), "Blob")` | `OracleMappingType.Blob`| Expression | Parses `"Blob"` and converts it to `OracleMappingType.Blob`. See [Enum.Parse][] | +| | `(OracleMappingType)Enum.Parse(typeof(OracleMappingType), "Byte")` | `OracleMappingType.Byte`| Expression | Parses `"Byte"` and converts it to `OracleMappingType.Byte`. See [Enum.Parse][] | +| | `(OracleMappingType)Enum.Parse(typeof(OracleMappingType), "Char")` | `OracleMappingType.Char`| Expression | Parses `"Char"` and converts it to `OracleMappingType.Char`. See [Enum.Parse][] | +| | `(OracleMappingType)Enum.Parse(typeof(OracleMappingType), "Clob")` | `OracleMappingType.Clob`| Expression | Parses `"Clob"` and converts it to `OracleMappingType.Clob`. See [Enum.Parse][] | +| | `(OracleMappingType)Enum.Parse(typeof(OracleMappingType), "Date")` | `OracleMappingType.Date`| Expression | Parses `"Date"` and converts it to `OracleMappingType.Date`. See [Enum.Parse][] | +| | `(OracleMappingType)Enum.Parse(typeof(OracleMappingType), "Decimal")` | `OracleMappingType.Decimal`| Expression | Parses `"Decimal"` and converts it to `OracleMappingType.Decimal`. See [Enum.Parse][] | +| | `(OracleMappingType)Enum.Parse(typeof(OracleMappingType), "Double")` | `OracleMappingType.Double`| Expression | Parses `"Double"` and converts it to `OracleMappingType.Double`. See [Enum.Parse][] | +| | `(OracleMappingType)Enum.Parse(typeof(OracleMappingType), "Long")` | `OracleMappingType.Long`| Expression | Parses `"Long"` and converts it to `OracleMappingType.Long`. See [Enum.Parse][] | +| | `(OracleMappingType)Enum.Parse(typeof(OracleMappingType), "LongRaw")` | `OracleMappingType.LongRaw`| Expression | Parses `"LongRaw"` and converts it to `OracleMappingType.LongRaw`. See [Enum.Parse][] | +| | `(OracleMappingType)Enum.Parse(typeof(OracleMappingType), "Int16")` | `OracleMappingType.Int16`| Expression | Parses `"Int16"` and converts it to `OracleMappingType.Int16`. See [Enum.Parse][] | +| | `(OracleMappingType)Enum.Parse(typeof(OracleMappingType), "Int32")` | `OracleMappingType.Int32`| Expression | Parses `"Int32"` and converts it to `OracleMappingType.Int32`. See [Enum.Parse][] | +| | `(OracleMappingType)Enum.Parse(typeof(OracleMappingType), "Int64")` | `OracleMappingType.Int64`| Expression | Parses `"Int64"` and converts it to `OracleMappingType.Int64`. See [Enum.Parse][] | +| | `(OracleMappingType)Enum.Parse(typeof(OracleMappingType), "IntervalDS")` | `OracleMappingType.IntervalDS`| Expression | Parses `"IntervalDS"` and converts it to `OracleMappingType.IntervalDS`. See [Enum.Parse][] | +| | `(OracleMappingType)Enum.Parse(typeof(OracleMappingType), "IntervalYM")` | `OracleMappingType.IntervalYM`| Expression | Parses `"IntervalYM"` and converts it to `OracleMappingType.IntervalYM`. See [Enum.Parse][] | +| | `(OracleMappingType)Enum.Parse(typeof(OracleMappingType), "NClob")` | `OracleMappingType.NClob`| Expression | Parses `"NClob"` and converts it to `OracleMappingType.NClob`. See [Enum.Parse][] | +| | `(OracleMappingType)Enum.Parse(typeof(OracleMappingType), "NChar")` | `OracleMappingType.NChar`| Expression | Parses `"NChar"` and converts it to `OracleMappingType.NChar`. See [Enum.Parse][] | +| | `(OracleMappingType)Enum.Parse(typeof(OracleMappingType), "NVarchar2")` | `OracleMappingType.NVarchar2`| Expression | Parses `"NVarchar2"` and converts it to `OracleMappingType.NVarchar2`. See [Enum.Parse][] | +| | `(OracleMappingType)Enum.Parse(typeof(OracleMappingType), "Raw")` | `OracleMappingType.Raw`| Expression | Parses `"Raw"` and converts it to `OracleMappingType.Raw`. See [Enum.Parse][] | +| | `(OracleMappingType)Enum.Parse(typeof(OracleMappingType), "RefCursor")` | `OracleMappingType.RefCursor`| Expression | Parses `"RefCursor"` and converts it to `OracleMappingType.RefCursor`. See [Enum.Parse][] | +| | `(OracleMappingType)Enum.Parse(typeof(OracleMappingType), "Single")` | `OracleMappingType.Single`| Expression | Parses `"Single"` and converts it to `OracleMappingType.Single`. See [Enum.Parse][] | +| | `(OracleMappingType)Enum.Parse(typeof(OracleMappingType), "TimeStamp")` | `OracleMappingType.TimeStamp`| Expression | Parses `"TimeStamp"` and converts it to `OracleMappingType.TimeStamp`. See [Enum.Parse][] | +| | `(OracleMappingType)Enum.Parse(typeof(OracleMappingType), "TimeStampLTZ")` | `OracleMappingType.TimeStampLTZ`| Expression | Parses `"TimeStampLTZ"` and converts it to `OracleMappingType.TimeStampLTZ`. See [Enum.Parse][] | +| | `(OracleMappingType)Enum.Parse(typeof(OracleMappingType), "TimeStampLZ")` | `OracleMappingType.TimeStampLZ`| Expression | Parses `"TimeStampLZ"` and converts it to `OracleMappingType.TimeStampLZ`. See [Enum.Parse][] | +| | `(OracleMappingType)Enum.Parse(typeof(OracleMappingType), "Varchar2")` | `OracleMappingType.Varchar2`| Expression | Parses `"Varchar2"` and converts it to `OracleMappingType.Varchar2`. See [Enum.Parse][] | +| | `(OracleMappingType)Enum.Parse(typeof(OracleMappingType), "XmlType")` | `OracleMappingType.XmlType`| Expression | Parses `"XmlType"` and converts it to `OracleMappingType.XmlType`. See [Enum.Parse][] | +| | `(OracleMappingType)Enum.Parse(typeof(OracleMappingType), "BinaryDouble")` | `OracleMappingType.BinaryDouble`| Expression | Parses `"BinaryDouble"` and converts it to `OracleMappingType.BinaryDouble`. See [Enum.Parse][] | +| | `(OracleMappingType)Enum.Parse(typeof(OracleMappingType), "BinaryFloat")` | `OracleMappingType.BinaryFloat`| Expression | Parses `"BinaryFloat"` and converts it to `OracleMappingType.BinaryFloat`. See [Enum.Parse][] | +| Use `Enum.ToObject` | `(OracleMappingType)Enum.ToObject(typeof(OracleMappingType), 101)` | `OracleMappingType.BFile`| Expression | Converts `101` to `OracleMappingType.BFile` value. See [Enum.ToObject][] | +| | `(OracleMappingType)Enum.ToObject(typeof(OracleMappingType), 102)` | `OracleMappingType.Blob`| Expression | Converts `102` to `OracleMappingType.Blob` value. See [Enum.ToObject][] | +| | `(OracleMappingType)Enum.ToObject(typeof(OracleMappingType), 103)` | `OracleMappingType.Byte`| Expression | Converts `103` to `OracleMappingType.Byte` value. See [Enum.ToObject][] | +| | `(OracleMappingType)Enum.ToObject(typeof(OracleMappingType), 104)` | `OracleMappingType.Char`| Expression | Converts `104` to `OracleMappingType.Char` value. See [Enum.ToObject][] | +| | `(OracleMappingType)Enum.ToObject(typeof(OracleMappingType), 105)` | `OracleMappingType.Clob` | Expression | Converts `105` to `OracleMappingType.Clob` value. See [Enum.ToObject][] | +| | `(OracleMappingType)Enum.ToObject(typeof(OracleMappingType), 106)` | `OracleMappingType.Date` | Expression | Converts `106` to `OracleMappingType.Date` value. See [Enum.ToObject][] | +| | `(OracleMappingType)Enum.ToObject(typeof(OracleMappingType), 107)` | `OracleMappingType.Decimal` | Expression | Converts `107` to `OracleMappingType.Decimal` value. See [Enum.ToObject][] | +| | `(OracleMappingType)Enum.ToObject(typeof(OracleMappingType), 108)` | `OracleMappingType.Double` | Expression | Converts `108` to `OracleMappingType.Double` value. See [Enum.ToObject][] | +| | `(OracleMappingType)Enum.ToObject(typeof(OracleMappingType), 109)` | `OracleMappingType.Long` | Expression | Converts `109` to `OracleMappingType.Long` value. See [Enum.ToObject][] | +| | `(OracleMappingType)Enum.ToObject(typeof(OracleMappingType), 110)` | `OracleMappingType.LongRaw` | Expression | Converts `110` to `OracleMappingType.LongRaw` value. See [Enum.ToObject][] | +| | `(OracleMappingType)Enum.ToObject(typeof(OracleMappingType), 111)` | `OracleMappingType.Int16` | Expression | Converts `111` to `OracleMappingType.Int16` value. See [Enum.ToObject][] | +| | `(OracleMappingType)Enum.ToObject(typeof(OracleMappingType), 112)` | `OracleMappingType.Int32` | Expression | Converts `112` to `OracleMappingType.Int32` value. See [Enum.ToObject][] | +| | `(OracleMappingType)Enum.ToObject(typeof(OracleMappingType), 113)` | `OracleMappingType.Int64` | Expression | Converts `113` to `OracleMappingType.Int64` value. See [Enum.ToObject][] | +| | `(OracleMappingType)Enum.ToObject(typeof(OracleMappingType), 114)` | `OracleMappingType.IntervalDS` | Expression | Converts `114` to `OracleMappingType.IntervalDS` value. See [Enum.ToObject][] | +| | `(OracleMappingType)Enum.ToObject(typeof(OracleMappingType), 115)` | `OracleMappingType.IntervalYM` | Expression | Converts `115` to `OracleMappingType.IntervalYM` value. See [Enum.ToObject][] | +| | `(OracleMappingType)Enum.ToObject(typeof(OracleMappingType), 116)` | `OracleMappingType.NClob` | Expression | Converts `116` to `OracleMappingType.NClob` value. See [Enum.ToObject][] | +| | `(OracleMappingType)Enum.ToObject(typeof(OracleMappingType), 117)` | `OracleMappingType.NChar` | Expression | Converts `117` to `OracleMappingType.NChar` value. See [Enum.ToObject][] | +| | `(OracleMappingType)Enum.ToObject(typeof(OracleMappingType), 119)` | `OracleMappingType.NVarchar2` | Expression | Converts `119` to `OracleMappingType.NVarchar2` value. See [Enum.ToObject][] | +| | `(OracleMappingType)Enum.ToObject(typeof(OracleMappingType), 120)` | `OracleMappingType.Raw` | Expression | Converts `120` to `OracleMappingType.Raw` value. See [Enum.ToObject][] | +| | `(OracleMappingType)Enum.ToObject(typeof(OracleMappingType), 121)` | `OracleMappingType.RefCursor` | Expression | Converts `121` to `OracleMappingType.RefCursor` value. See [Enum.ToObject][] | +| | `(OracleMappingType)Enum.ToObject(typeof(OracleMappingType), 122)` | `OracleMappingType.Single` | Expression | Converts `122` to `OracleMappingType.Single` value. See [Enum.ToObject][] | +| | `(OracleMappingType)Enum.ToObject(typeof(OracleMappingType), 123)` | `OracleMappingType.TimeStamp` | Expression | Converts `123` to `OracleMappingType.TimeStamp` value. See [Enum.ToObject][] | +| | `(OracleMappingType)Enum.ToObject(typeof(OracleMappingType), 124)` | `OracleMappingType.TimeStampLTZ` | Expression | Converts `124` to `OracleMappingType.TimeStampLTZ` value. See [Enum.ToObject][] | +| | `(OracleMappingType)Enum.ToObject(typeof(OracleMappingType), 125)` | `OracleMappingType.TimeStampLZ` | Expression | Converts `125` to `OracleMappingType.TimeStampLZ` value. See [Enum.ToObject][] | +| | `(OracleMappingType)Enum.ToObject(typeof(OracleMappingType), 126)` | `OracleMappingType.Varchar2` | Expression | Converts `126` to `OracleMappingType.Varchar2` value. See [Enum.ToObject][] | +| | `(OracleMappingType)Enum.ToObject(typeof(OracleMappingType), 127)` | `OracleMappingType.XmlType` | Expression | Converts `127` to `OracleMappingType.XmlType` value. See [Enum.ToObject][] | +| | `(OracleMappingType)Enum.ToObject(typeof(OracleMappingType), 132)` | `OracleMappingType.BinaryDouble` | Expression | Converts `132` to `OracleMappingType.BinaryDouble` value. See [Enum.ToObject][] | +| | `(OracleMappingType)Enum.ToObject(typeof(OracleMappingType), 133)` | `OracleMappingType.BinaryFloat` | Expression | Converts `133` to `OracleMappingType.BinaryFloat` value. See [Enum.ToObject][] | + +Please see [Instantiating an enumeration type][] for further information. + +### Convert OracleMappingType to Text + +The following table shows some of the ways that a `OracleMappingType` can be converted to text. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `ToString` | `OracleMappingType.BFile.ToString()` | `"BFile"` | Expression | Converts `OracleMappingType.BFile` to `"BFile"`. See [Enum.ToString][] | +| | `OracleMappingType.Byte.ToString()` | `"Blob"` | Expression | Converts `OracleMappingType.Blob` to `"Blob"`. See [Enum.ToString][] | +| | `OracleMappingType.Byte.ToString()` | `"Byte"` | Expression | Converts `OracleMappingType.Byte` to `"Byte"`. See [Enum.ToString][] | +| | `OracleMappingType.Char.ToString()` | `"Char"` | Expression | Converts `OracleMappingType.Char` to `"Char"`. See [Enum.ToString][] | +| | `OracleMappingType.Clob.ToString()` | `"Clob"` | Expression | Converts `OracleMappingType.Clob` to `"Clob"`. See [Enum.ToString][] | +| | `OracleMappingType.Date.ToString()` | `"Date"` | Expression | Converts `OracleMappingType.Date` to `"Date"`. See [Enum.ToString][] | +| | `OracleMappingType.Decimal.ToString()` | `"Decimal"` | Expression | Converts `OracleMappingType.Decimal` to `"Decimal"`. See [Enum.ToString][] | +| | `OracleMappingType.Double.ToString()` | `"Double"` | Expression | Converts `OracleMappingType.Double` to `"Double"`. See [Enum.ToString][] | +| | `OracleMappingType.Long.ToString()` | `"Long"` | Expression | Converts `OracleMappingType.Long` to `"Long"`. See [Enum.ToString][] | +| | `OracleMappingType.LongRaw.ToString()` | `"LongRaw"` | Expression | Converts `OracleMappingType.LongRaw` to `"LongRaw"`. See [Enum.ToString][] | +| | `OracleMappingType.Int16.ToString()` | `"Int16"` | Expression | Converts `OracleMappingType.Int16` to `"Int16"`. See [Enum.ToString][] | +| | `OracleMappingType.Int32.ToString()` | `"Int32"` | Expression | Converts `OracleMappingType.Int32` to `"Int32"`. See [Enum.ToString][] | +| | `OracleMappingType.Int64.ToString()` | `"Int64"` | Expression | Converts `OracleMappingType.Int64` to `"Int64"`. See [Enum.ToString][] | +| | `OracleMappingType.IntervalDS.ToString()` | `"IntervalDS"` | Expression | Converts `OracleMappingType.IntervalDS` to `"IntervalDS"`. See [Enum.ToString][] | +| | `OracleMappingType.IntervalYM.ToString()` | `"IntervalYM"` | Expression | Converts `OracleMappingType.IntervalYM` to `"IntervalYM"`. See [Enum.ToString][] | +| | `OracleMappingType.NClob.ToString()` | `"NClob"` | Expression | Converts `OracleMappingType.NClob` to `"NClob"`. See [Enum.ToString][] | +| | `OracleMappingType.NChar.ToString()` | `"NChar"` | Expression | Converts `OracleMappingType.NChar` to `"NChar"`. See [Enum.ToString][] | +| | `OracleMappingType.NVarchar2.ToString()` | `"NVarchar2"` | Expression | Converts `OracleMappingType.NVarchar2` to `"NVarchar2"`. See [Enum.ToString][] | +| | `OracleMappingType.Raw.ToString()` | `"Raw"` | Expression | Converts `OracleMappingType.Raw` to `"Raw"`. See [Enum.ToString][] | +| | `OracleMappingType.RefCursor.ToString()` | `"RefCursor"` | Expression | Converts `OracleMappingType.RefCursor` to `"RefCursor"`. See [Enum.ToString][] | +| | `OracleMappingType.Single.ToString()` | `"Single"` | Expression | Converts `OracleMappingType.Single` to `"Single"`. See [Enum.ToString][] | +| | `OracleMappingType.TimeStamp.ToString()` | `"TimeStamp"` | Expression | Converts `OracleMappingType.TimeStamp` to `"TimeStamp"`. See [Enum.ToString][] | +| | `OracleMappingType.TimeStampLTZ.ToString()` | `"TimeStampLTZ"` | Expression | Converts `OracleMappingType.TimeStampLTZ` to `"TimeStampLTZ"`. See [Enum.ToString][] | +| | `OracleMappingType.TimeStampLZ.ToString()` | `"TimeStampLZ"` | Expression | Converts `OracleMappingType.TimeStampLZ` to `"TimeStampLZ"`. See [Enum.ToString][] | +| | `OracleMappingType.Varchar2.ToString()` | `"Varchar2"` | Expression | Converts `OracleMappingType.Varchar2` to `"Varchar2"`. See [Enum.ToString][] | +| | `OracleMappingType.XmlType.ToString()` | `"XmlType"` | Expression | Converts `OracleMappingType.XmlType` to `"XmlType"`. See [Enum.ToString][] | +| | `OracleMappingType.BinaryDouble.ToString()` | `"BinaryDouble"` | Expression | Converts `OracleMappingType.BinaryDouble` to `"BinaryDouble"`. See [Enum.ToString][] | +| | `OracleMappingType.BinaryFloat.ToString()` | `"BinaryFloat"` | Expression | Converts `OracleMappingType.BinaryFloat` to `"BinaryFloat"`. See [Enum.ToString][] | +| Use `Convert.ToString` | `Convert.ToString(OracleMappingType.BFile)` | `"BFile"` | Expression | Converts `OracleMappingType.BFile` to `"BFile"`. See [Convert.ToString][] | +| | `Convert.ToString(OracleMappingType.Byte)` | `"Byte"` | Expression | Converts `OracleMappingType.Byte` to `"Byte"`. See [Convert.ToString][] | +| | `Convert.ToString(OracleMappingType.Char)` | `"Char"` | Expression | Converts `OracleMappingType.Char` to `"Char"`. See [Convert.ToString][] | +| | `Convert.ToString(OracleMappingType.Clob)` | `"Clob"` | Expression | Converts `OracleMappingType.Clob` to `"Clob"`. See [Convert.ToString][] | +| | `Convert.ToString(OracleMappingType.Date)` | `"Date"` | Expression | Converts `OracleMappingType.Date` to `"Date"`. See [Convert.ToString][] | +| | `Convert.ToString(OracleMappingType.Decimal)` | `"Decimal"` | Expression | Converts `OracleMappingType.Decimal` to `"Decimal"`. See [Convert.ToString][] | +| | `Convert.ToString(OracleMappingType.Double)` | `"Double"` | Expression | Converts `OracleMappingType.Double` to `"Double"`. See [Convert.ToString][] | +| | `Convert.ToString(OracleMappingType.Long)` | `"Long"` | Expression | Converts `OracleMappingType.Long` to `"Long"`. See [Convert.ToString][] | +| | `Convert.ToString(OracleMappingType.LongRaw)` | `"LongRaw"` | Expression | Converts `OracleMappingType.LongRaw` to `"LongRaw"`. See [Convert.ToString][] | +| | `Convert.ToString(OracleMappingType.Int16)` | `"Int16"` | Expression | Converts `OracleMappingType.Int16` to `"Int16"`. See [Convert.ToString][] | +| | `Convert.ToString(OracleMappingType.Int32)` | `"Int32"` | Expression | Converts `OracleMappingType.Int32` to `"Int32"`. See [Convert.ToString][] | +| | `Convert.ToString(OracleMappingType.Int64)` | `"Int64"` | Expression | Converts `OracleMappingType.Int64` to `"Int64"`. See [Convert.ToString][] | +| | `Convert.ToString(OracleMappingType.IntervalDS)` | `"IntervalDS"` | Expression | Converts `OracleMappingType.IntervalDS` to `"IntervalDS"`. See [Convert.ToString][] | +| | `Convert.ToString(OracleMappingType.IntervalYM)` | `"IntervalYM"` | Expression | Converts `OracleMappingType.IntervalYM` to `"IntervalYM"`. See [Convert.ToString][] | +| | `Convert.ToString(OracleMappingType.NClob)` | `"NClob"` | Expression | Converts `OracleMappingType.NClob` to `"NClob"`. See [Convert.ToString][] | +| | `Convert.ToString(OracleMappingType.NChar)` | `"NChar"` | Expression | Converts `OracleMappingType.NChar` to `"NChar"`. See [Convert.ToString][] | +| | `Convert.ToString(OracleMappingType.NVarchar2)` | `"NVarchar2"` | Expression | Converts `OracleMappingType.NVarchar2` to `"NVarchar2"`. See [Convert.ToString][] | +| | `Convert.ToString(OracleMappingType.Raw)` | `"Raw"` | Expression | Converts `OracleMappingType.Raw` to `"Raw"`. See [Convert.ToString][] | +| | `Convert.ToString(OracleMappingType.RefCursor)` | `"RefCursor"` | Expression | Converts `OracleMappingType.RefCursor` to `"RefCursor"`. See [Convert.ToString][] | +| | `Convert.ToString(OracleMappingType.Single)` | `"Single"` | Expression | Converts `OracleMappingType.Single` to `"Single"`. See [Convert.ToString][] | +| | `Convert.ToString(OracleMappingType.TimeStamp)` | `"TimeStamp"` | Expression | Converts `OracleMappingType.TimeStamp` to `"TimeStamp"`. See [Convert.ToString][] | +| | `Convert.ToString(OracleMappingType.TimeStampLTZ)` | `"TimeStampLTZ"` | Expression | Converts `OracleMappingType.TimeStampLTZ` to `"TimeStampLTZ"`. See [Convert.ToString][] | +| | `Convert.ToString(OracleMappingType.TimeStampLZ)` | `"TimeStampLZ"` | Expression | Converts `OracleMappingType.TimeStampLZ` to `"TimeStampLZ"`. See [Convert.ToString][] | +| | `Convert.ToString(OracleMappingType.Varchar2)` | `"Varchar2"` | Expression | Converts `OracleMappingType.Varchar2` to `"Varchar2"`. See [Convert.ToString][] | +| | `Convert.ToString(OracleMappingType.XmlType)` | `"XmlType"` | Expression | Converts `OracleMappingType.XmlType` to `"XmlType"`. See [Convert.ToString][] | +| | `Convert.ToString(OracleMappingType.BinaryDouble)` | `"BinaryDouble"` | Expression | Converts `OracleMappingType.BinaryDouble` to `"BinaryDouble"`. See [Convert.ToString][] | +| | `Convert.ToString(OracleMappingType.BinaryFloat)` | `"BinaryFloat"` | Expression | Converts `OracleMappingType.BinaryFloat` to `"BinaryFloat"`. See [Convert.ToString][] | +| Use `Convert Object To Text` block | where `Object` property has a value of `OracleMappingType.BFile` | `"BFile"` | N/A | Converts `OracleMappingType.BFile` to `"BFile"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `OracleMappingType.Byte` | `"Byte"` | N/A | Converts `OracleMappingType.Byte` to `"Byte"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `OracleMappingType.Char` | `"Char"` | N/A | Converts `OracleMappingType.Char` to `"Char"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `OracleMappingType.Clob` | `"Clob"` | N/A | Converts `OracleMappingType.Clob` to `"Clob"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `OracleMappingType.Date` | `"Date"` | N/A | Converts `OracleMappingType.Date` to `"Date"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `OracleMappingType.Decimal` | `"Decimal"` | N/A | Converts `OracleMappingType.Decimal` to `"Decimal"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `OracleMappingType.Double` | `"Double"` | N/A | Converts `OracleMappingType.Double` to `"Double"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `OracleMappingType.Long` | `"Long"` | N/A | Converts `OracleMappingType.Long` to `"Long"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `OracleMappingType.LongRaw` | `"LongRaw"` | N/A | Converts `OracleMappingType.LongRaw` to `"LongRaw"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `OracleMappingType.Int16` | `"Int16"` | N/A | Converts `OracleMappingType.Int16` to `"Int16"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `OracleMappingType.Int32` | `"Int32"` | N/A | Converts `OracleMappingType.Int32` to `"Int32"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `OracleMappingType.Int64` | `"Int64"` | N/A | Converts `OracleMappingType.Int64` to `"Int64"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `OracleMappingType.IntervalDS` | `"IntervalDS"` | N/A | Converts `OracleMappingType.IntervalDS` to `"IntervalDS"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `OracleMappingType.IntervalYM` | `"IntervalYM"` | N/A | Converts `OracleMappingType.IntervalYM` to `"IntervalYM"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `OracleMappingType.NClob` | `"NClob"` | N/A | Converts `OracleMappingType.NClob` to `"NClob"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `OracleMappingType.NChar` | `"NChar"` | N/A | Converts `OracleMappingType.NChar` to `"NChar"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `OracleMappingType.NVarchar2` | `"NVarchar2"` | N/A | Converts `OracleMappingType.NVarchar2` to `"NVarchar2"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `OracleMappingType.Raw` | `"Raw"` | N/A | Converts `OracleMappingType.Raw` to `"Raw"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `OracleMappingType.RefCursor` | `"RefCursor"` | N/A | Converts `OracleMappingType.RefCursor` to `"RefCursor"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `OracleMappingType.Single` | `"Single"` | N/A | Converts `OracleMappingType.Single` to `"Single"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `OracleMappingType.TimeStamp` | `"TimeStamp"` | N/A | Converts `OracleMappingType.TimeStamp` to `"TimeStamp"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `OracleMappingType.TimeStampLTZ` | `"TimeStampLTZ"` | N/A | Converts `OracleMappingType.TimeStampLTZ` to `"TimeStampLTZ"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `OracleMappingType.TimeStampLZ` | `"TimeStampLZ"` | N/A | Converts `OracleMappingType.TimeStampLZ` to `"TimeStampLZ"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `OracleMappingType.Varchar2` | `"Varchar2"` | N/A | Converts `OracleMappingType.Varchar2` to `"Varchar2"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `OracleMappingType.XmlType` | `"XmlType"` | N/A | Converts `OracleMappingType.XmlType` to `"XmlType"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `OracleMappingType.BinaryDouble` | `"BinaryDouble"` | N/A | Converts `OracleMappingType.BinaryDouble` to `"BinaryDouble"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `OracleMappingType.BinaryFloat` | `"BinaryFloat"` | N/A | Converts `OracleMappingType.BinaryFloat` to `"BinaryFloat"`. See [Convert Object To Text][] | +| Use `Convert Object To Json` block | where `Object` property has a value of `OracleMappingType.BFile` | `"101"` | N/A | Converts `OracleMappingType.BFile` to `"101"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `OracleMappingType.Blob` | `"102"` | N/A | Converts `OracleMappingType.Blob` to `"102"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `OracleMappingType.Byte` | `"103"` | N/A | Converts `OracleMappingType.Byte` to `"103"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `OracleMappingType.Char` | `"104"` | N/A | Converts `OracleMappingType.Char` to `"104"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `OracleMappingType.Clob` | `"105"` | N/A | Converts `OracleMappingType.Clob` to `"105"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `OracleMappingType.Date` | `"106"` | N/A | Converts `OracleMappingType.Date` to `"106"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `OracleMappingType.Decimal` | `"107"` | N/A | Converts `OracleMappingType.Decimal` to `"107"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `OracleMappingType.Double` | `"108"` | N/A | Converts `OracleMappingType.Double` to `"108"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `OracleMappingType.Long` | `"109"` | N/A | Converts `OracleMappingType.Long` to `"109"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `OracleMappingType.LongRaw` | `"110"` | N/A | Converts `OracleMappingType.LongRaw` to `"110"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `OracleMappingType.Int16` | `"111"` | N/A | Converts `OracleMappingType.Int16` to `"111"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `OracleMappingType.Int32` | `"112"` | N/A | Converts `OracleMappingType.Int32` to `"112"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `OracleMappingType.Int64` | `"113"` | N/A | Converts `OracleMappingType.Int64` to `"113"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `OracleMappingType.IntervalDS` | `"114"` | N/A | Converts `OracleMappingType.IntervalDS` to `"114"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `OracleMappingType.IntervalYM` | `"115"` | N/A | Converts `OracleMappingType.IntervalYM` to `"115"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `OracleMappingType.NClob` | `"116"` | N/A | Converts `OracleMappingType.NClob` to `"116"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `OracleMappingType.NChar` | `"117"` | N/A | Converts `OracleMappingType.NChar` to `"117"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `OracleMappingType.NVarchar2` | `"119"` | N/A | Converts `OracleMappingType.NVarchar2` to `"119"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `OracleMappingType.Raw` | `"120"` | N/A | Converts `OracleMappingType.Raw` to `"120"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `OracleMappingType.RefCursor` | `"121"` | N/A | Converts `OracleMappingType.RefCursor` to `"121"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `OracleMappingType.Single` | `"122"` | N/A | Converts `OracleMappingType.Single` to `"122"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `OracleMappingType.TimeStamp` | `"123"` | N/A | Converts `OracleMappingType.TimeStamp` to `"123"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `OracleMappingType.TimeStampLTZ` | `"124"` | N/A | Converts `OracleMappingType.TimeStampLTZ` to `"124"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `OracleMappingType.TimeStampLZ` | `"125"` | N/A | Converts `OracleMappingType.TimeStampLZ` to `"125"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `OracleMappingType.Varchar2` | `"126"` | N/A | Converts `OracleMappingType.Varchar2` to `"126"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `OracleMappingType.XmlType` | `"127"` | N/A | Converts `OracleMappingType.XmlType` to `"127"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `OracleMappingType.BinaryDouble` | `"132"` | N/A | Converts `OracleMappingType.BinaryDouble` to `"132"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `OracleMappingType.BinaryFloat` | `"133"` | N/A | Converts `OracleMappingType.BinaryFloat` to `"133"`. See [Convert Object To Json][] | + +Please see [Formatting enumeration values][] for further information. + +### Convert OracleMappingType to a Number + +The following table shows some of the ways that a `OracleMappingType` can be converted to a number. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use [Explicit Casting][] | `(Int32)OracleMappingType.BFile` | `101` | Expression | [Casts][Explicit Casting] `OracleMappingType.BFile` to `101` | +| | `(Int32)OracleMappingType.Blob` | `102` | Expression | [Casts][Explicit Casting] `OracleMappingType.Blob` to `102` | +| | `(Int32)OracleMappingType.Byte` | `103` | Expression | [Casts][Explicit Casting] `OracleMappingType.Byte` to `103` | +| | `(Int32)OracleMappingType.Char` | `104` | Expression | [Casts][Explicit Casting] `OracleMappingType.Char` to `104` | +| | `(Int32)OracleMappingType.Clob` | `105` | Expression | [Casts][Explicit Casting] `OracleMappingType.Clob` to `105` | +| | `(Int32)OracleMappingType.Date` | `106` | Expression | [Casts][Explicit Casting] `OracleMappingType.Date` to `106` | +| | `(Int32)OracleMappingType.Decimal` | `107` | Expression | [Casts][Explicit Casting] `OracleMappingType.Decimal` to `107` | +| | `(Int32)OracleMappingType.Double` | `108` | Expression | [Casts][Explicit Casting] `OracleMappingType.Double` to `108` | +| | `(Int32)OracleMappingType.Long` | `109` | Expression | [Casts][Explicit Casting] `OracleMappingType.Long` to `109` | +| | `(Int32)OracleMappingType.LongRaw` | `110` | Expression | [Casts][Explicit Casting] `OracleMappingType.LongRaw` to `110` | +| | `(Int32)OracleMappingType.Int16` | `111` | Expression | [Casts][Explicit Casting] `OracleMappingType.Int16` to `111` | +| | `(Int32)OracleMappingType.Int32` | `112` | Expression | [Casts][Explicit Casting] `OracleMappingType.Int32` to `112` | +| | `(Int32)OracleMappingType.Int64` | `113` | Expression | [Casts][Explicit Casting] `OracleMappingType.Int64` to `113` | +| | `(Int32)OracleMappingType.IntervalDS` | `114` | Expression | [Casts][Explicit Casting] `OracleMappingType.IntervalDS` to `114` | +| | `(Int32)OracleMappingType.IntervalYM` | `115` | Expression | [Casts][Explicit Casting] `OracleMappingType.IntervalYM` to `115` | +| | `(Int32)OracleMappingType.NClob` | `116` | Expression | [Casts][Explicit Casting] `OracleMappingType.NClob` to `116` | +| | `(Int32)OracleMappingType.NChar` | `117` | Expression | [Casts][Explicit Casting] `OracleMappingType.NChar` to `117` | +| | `(Int32)OracleMappingType.NVarchar2` | `119` | Expression | [Casts][Explicit Casting] `OracleMappingType.NVarchar2` to `119` | +| | `(Int32)OracleMappingType.Raw` | `120` | Expression | [Casts][Explicit Casting] `OracleMappingType.Raw` to `120` | +| | `(Int32)OracleMappingType.RefCursor` | `121` | Expression | [Casts][Explicit Casting] `OracleMappingType.RefCursor` to `121` | +| | `(Int32)OracleMappingType.Single` | `122` | Expression | [Casts][Explicit Casting] `OracleMappingType.Single` to `122` | +| | `(Int32)OracleMappingType.TimeStamp` | `123` | Expression | [Casts][Explicit Casting] `OracleMappingType.TimeStamp` to `123` | +| | `(Int32)OracleMappingType.TimeStampLTZ` | `124` | Expression | [Casts][Explicit Casting] `OracleMappingType.TimeStampLTZ` to `124` | +| | `(Int32)OracleMappingType.TimeStampLZ` | `125` | Expression | [Casts][Explicit Casting] `OracleMappingType.TimeStampLZ` to `125` | +| | `(Int32)OracleMappingType.Varchar2` | `126` | Expression | [Casts][Explicit Casting] `OracleMappingType.Varchar2` to `126` | +| | `(Int32)OracleMappingType.XmlType` | `127` | Expression | [Casts][Explicit Casting] `OracleMappingType.XmlType` to `127` | +| | `(Int32)OracleMappingType.BinaryDouble` | `132` | Expression | [Casts][Explicit Casting] `OracleMappingType.BinaryDouble` to `132` | +| | `(Int32)OracleMappingType.BinaryFloat` | `133` | Expression | [Casts][Explicit Casting] `OracleMappingType.BinaryFloat` to `133` | +| Use `Convert.ToInt32` | `Convert.ToInt32(OracleMappingType.BFile)` | `101` | Expression | Converts `OracleMappingType.BFile` to `101`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(OracleMappingType.Blob)` | `102` | Expression | Converts `OracleMappingType.Blob` to `102`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(OracleMappingType.Byte)` | `103` | Expression | Converts `OracleMappingType.Byte` to `103`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(OracleMappingType.Char)` | `104` | Expression | Converts `OracleMappingType.Char` to `104`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(OracleMappingType.Clob)` | `105` | Expression | Converts `OracleMappingType.Clob` to `105`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(OracleMappingType.Date)` | `106` | Expression | Converts `OracleMappingType.Date` to `106`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(OracleMappingType.Decimal)` | `107` | Expression | Converts `OracleMappingType.Decimal` to `107`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(OracleMappingType.Double)` | `108` | Expression | Converts `OracleMappingType.Double` to `108`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(OracleMappingType.Long)` | `109` | Expression | Converts `OracleMappingType.Long` to `109`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(OracleMappingType.LongRaw)` | `110` | Expression | Converts `OracleMappingType.LongRaw` to `110`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(OracleMappingType.Int16)` | `111` | Expression | Converts `OracleMappingType.Int16` to `111`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(OracleMappingType.Int32)` | `112` | Expression | Converts `OracleMappingType.Int32` to `112`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(OracleMappingType.Int64)` | `113` | Expression | Converts `OracleMappingType.Int64` to `113`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(OracleMappingType.IntervalDS)` | `114` | Expression | Converts `OracleMappingType.IntervalDS` to `114`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(OracleMappingType.IntervalYM)` | `115` | Expression | Converts `OracleMappingType.IntervalYM` to `115`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(OracleMappingType.NClob)` | `116` | Expression | Converts `OracleMappingType.NClob` to `116`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(OracleMappingType.NChar)` | `117` | Expression | Converts `OracleMappingType.NChar` to `117`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(OracleMappingType.NVarchar2)` | `119` | Expression | Converts `OracleMappingType.NVarchar2` to `119`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(OracleMappingType.Raw)` | `120` | Expression | Converts `OracleMappingType.Raw` to `120`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(OracleMappingType.RefCursor)` | `121` | Expression | Converts `OracleMappingType.RefCursor` to `121`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(OracleMappingType.Single)` | `122` | Expression | Converts `OracleMappingType.Single` to `122`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(OracleMappingType.TimeStamp)` | `123` | Expression | Converts `OracleMappingType.TimeStamp` to `123`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(OracleMappingType.TimeStampLTZ)` | `124` | Expression | Converts `OracleMappingType.TimeStampLTZ` to `124`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(OracleMappingType.TimeStampLZ)` | `125` | Expression | Converts `OracleMappingType.TimeStampLZ` to `125`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(OracleMappingType.Varchar2)` | `126` | Expression | Converts `OracleMappingType.Varchar2` to `126`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(OracleMappingType.XmlType)` | `127` | Expression | Converts `OracleMappingType.XmlType` to `127`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(OracleMappingType.BinaryDouble)` | `132` | Expression | Converts `OracleMappingType.BinaryDouble` to `132`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(OracleMappingType.BinaryFloat)` | `133` | Expression | Converts `OracleMappingType.BinaryFloat` to `133`. See [Convert.ToInt32][] | + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `OracleMappingType`. +- The Literal Editor is available for [Input][] properties where the data type is `OracleMappingType`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `OracleMappingType`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [Int32][] +- [String][] +- [OracleParameter][] +- [OracleParameters][] +- [OracleConnectionDetails][] + +### Related Concepts + +- [Explicit Casting][] +- [Working with Enums][] + +### External Documentation + +- [System.Enum][] + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[System.Enum]: {{< url path="MSDocs.DotNet.Api.System.Enum.MainDoc" >}} + +[Working with Enums]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Enums.MainDoc" >}} +[Explicit Casting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectCasting.ExplicitCast" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[Formatting enumeration values]: {{< url path="MSDocs.DotNet.Api.System.Enum.FormattingEnumerationValues" >}} +[Convert Object To Text]: {{< url path="Cortex.Reference.Blocks.Objects.ConvertObject.ConvertObjectToText.MainDoc" >}} +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} +[Working with Enums]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Enums.MainDoc" >}} +[Explicit Casting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectCasting.ExplicitCast" >}} +[Enum.Parse]: {{< url path="MSDocs.DotNet.Api.System.Enum.Parse" >}} +[Enum.ToObject]: {{< url path="MSDocs.DotNet.Api.System.Enum.ToObject" >}} +[Enum.ToString]: {{< url path="MSDocs.DotNet.Api.System.Enum.ToString" >}} +[Convert.ToInt32]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToInt32" >}} +[Convert.ToString]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToString" >}} + +[OracleParameter]: {{< url path="Cortex.Reference.DataTypes.Data.OracleParameter.MainDoc" >}} +[OracleParameters]: {{< url path="Cortex.Reference.DataTypes.Data.OracleParameters.MainDoc" >}} +[OracleConnectionDetails]: {{< url path="Cortex.Reference.DataTypes.Data.OracleConnectionDetails.MainDoc" >}} + +[Instantiating an enumeration type]: {{< url path="MSDocs.DotNet.Api.System.Enum.InstantiatingAnEnum" >}} +[Formatting enumeration values]: {{< url path="MSDocs.DotNet.Api.System.Enum.FormattingEnumerationValues" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/data/oracleparameter.md b/content/en/docs/2024.11/Reference/data-types/data/oracleparameter.md new file mode 100644 index 000000000..4a2187170 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/data/oracleparameter.md @@ -0,0 +1,172 @@ +--- +title: "OracleParameter" +linkTitle: "OracleParameter" +description: "Defines a type of parameter that can be run as part of a Command." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Data.OracleParameter)

+ +## Summary + +The `OracleParameter` data type is used to define a parameter for the [OracleConnectionDetails][] within the [Parameters property][ParametersProperty] on the [DataCommand][] data types. + +| | | +|-|-| +| **Category:** | Data | +| **Name:** | `OracleParameter` | +| **Full Name:** | `Cortex.DataTypes.Data.OracleParameter` | +| **Alias:** | N/A | +| **Description:** | Defines a type of parameter that can be run as part of a Command. | +| **Default Value:** | `null` | +| **Can be used as:** | `OracleParameter`, `IParameter`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### Name + +The name of the parameter that is being defined. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Is Advanced | `false` | +| Default Editor | [Expression][] | +| Default Value | [string][] with value `$@""` | + +### Value + +The value of the parameter that is being defined. + +| | | +|--------------------|---------------------------| +| Data Type | [dynamic][] | +| Is Advanced | `false` | +| Default Editor | [Expression][] | +| Default Value | [dynamic][] with no value | + +### Type + +The type of the parameter that is being defined. + +| | | +|--------------------|---------------------------| +| Data Type | [OracleMappingType][] | +| Is Advanced | `false` | +| Default Editor | [Expression][] | +| Default Value | [OracleMappingType][] with value `OracleMappingType.BFile` | + +### ParameterDirection + +The direction of the parameter that is being defined. + +| | | +|--------------------|---------------------------| +| Data Type | [ParameterDirection][] | +| Is Advanced | `false` | +| Default Editor | [Expression][] | +| Default Value | [ParameterDirection][] with value `ParameterDirection.Input` | + +### Size + +The size of the parameter that is being defined. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Is Advanced | `false` | +| Default Editor | [Expression][] | +| Default Value | [Int32][] with value `0` | + +## Remarks + +### Create an OracleParameter + +The following table shows some of the ways that an `OracleParameter` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use an `OracleParameter` constructor | `new OracleParameter("name", $@"", OracleMappingType.Clob, ParameterDirection.Input, 0)` | `{Name: "name", Value: $@"value", Type: OracleMappingType.Clob, Direction: ParameterDirection.Input, Size: 0}` | Expression | | + +### Convert OracleParameter to Text + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `ToString` | `($)OracleParameter.ToString()` | `"Cortex.DataTypes.Data.OracleParameter"` | Expression | ToString will return the Full Name of the OracleParameter Data Type | +| Use `Convert Object To Text` block | where `Object` property has a value of `{name: "name", value: $@"value", type: OracleMappingType.Clob, direction: ParameterDirection.Input, size: 0}` | `"Cortex.DataTypes.Data.OracleParameter"` | N/A | See [Convert Object To Text][] | +| Use `Convert Object To Json` block | where `Object` property has a value of `{name: "name", value: $@"value", type: OracleMappingType.Clob, direction: ParameterDirection.Input, size: 0}` | `"{\r\n \"Name\": \"name\",\r\n \"Value\": \"value\",\r\n \"Type\": 105,\r\n \"Direction\": 1,\r\n \"Size\": 0}"` | N/A | See [Convert Object To Json][] | + +### Property Editor Support + +* The Expression Editor is available for [Input][] properties where the data type is `OracleParameter`. +* The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `OracleParameter`. + +### Known limitations + +#### ToString Method always returns the Full Name + +Currently, if the `ToString()` method is used on an `OracleParameter`, then its Full Name will be returned; instead of a representation of the data within the `Command`. + +In future this limitation may be removed. + +## See Also + +### Related Data Types + +* [DataCommand][] +* [Commands][] +* [QueryCommand][] +* [NonQueryCommand][] +* [OracleParameters][] +* [OracleConnectionDetails][] +* [OracleMappingType][] +* [IParameter][] + +### Related Concepts + +* [Working with Data Sources][] + +### External Documentation + +* [ParameterDirection][] + +[CommandText]: {{< ref "#command-text" >}} +[Parameterised Commands]: {{< ref "#parameterised-commands" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Executing Multiple Commands (Safe)]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.ExecutingMultipleCommandsSafe" >}} +[Executing Multiple Commands (Unsafe)]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.ExecutingMultipleCommandsUnsafe" >}} +[Block: Parameterised Commands]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.ParameterisedCommands" >}} +[Statements]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.Statements" >}} +[OracleConnectionDetails]: {{< url path="Cortex.Reference.DataTypes.Data.OracleConnectionDetails.MainDoc" >}} + +[Convert Object To Text]: {{< url path="Cortex.Reference.Blocks.Objects.ConvertObject.ConvertObjectToText.MainDoc" >}} +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} + +[Working with Data Sources]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DataSources.MainDoc" >}} + +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[EncryptableText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptableText.MainDoc" >}} +[DataCommand]: {{< url path="Cortex.Reference.DataTypes.Data.DataCommand.MainDoc" >}} +[Commands]: {{< url path="Cortex.Reference.DataTypes.Data.Commands.MainDoc" >}} +[QueryCommand]: {{< url path="Cortex.Reference.DataTypes.Data.QueryCommand.MainDoc" >}} +[NonQueryCommand]: {{< url path="Cortex.Reference.DataTypes.Data.NonQueryCommand.MainDoc" >}} +[CommandException]: {{< url path="Cortex.Reference.Exceptions.Data.CommandException.MainDoc" >}} +[CommandExceptionIncompatibleStatementType]: {{< url path="Cortex.Reference.Exceptions.Data.CommandException.IncompatibleStatementType" >}} +[ConnectionDetailsProperty]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.ConnectionDetailsProperty" >}} +[CommandProperty]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.CommandProperty" >}} +[Command]: {{< url path="Cortex.Reference.DataTypes.Data.Command.MainDoc" >}} +[ParametersProperty]: {{< url path="Cortex.Reference.DataTypes.Data.DataCommand.Parameters" >}} + +[ParameterDirection]: {{< url path="OracleParameter.ParameterDirection" >}} +[OracleMappingType]: {{< url path="Cortex.Reference.DataTypes.Data.OracleMappingType.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[OracleParameters]: {{< url path="Cortex.Reference.DataTypes.Data.OracleParameters.MainDoc" >}} +[IParameter]: {{< url path="Cortex.Reference.DataTypes.Data.IParameter.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/data/oracleparameters.md b/content/en/docs/2024.11/Reference/data-types/data/oracleparameters.md new file mode 100644 index 000000000..2e3a6792a --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/data/oracleparameters.md @@ -0,0 +1,134 @@ +--- +title: "OracleParameters" +linkTitle: "OracleParameters" +description: "Defines a type of parameter that can be run as part of a Command." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Data.OracleParameters)

+ +## Summary + +The `OracleParameters` data type is used to define multiple parameters for the [OracleConnectionDetails][] within the [Parameters property][ParametersProperty] on the [DataCommand][] data types. + +| | | +|-|-| +| **Category:** | Data | +| **Name:** | `OracleParameters` | +| **Full Name:** | `Cortex.DataTypes.Data.OracleParameters` | +| **Alias:** | N/A | +| **Description:** | Defines a type of parameter that can be run as part of a Command. | +| **Default Value:** | `null` | +| **Can be used as:** | `OracleParameters`, `IParameters`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### Basic + +Parameters that will be processed with only a name and value. + +| | | +|--------------------|---------------------------| +| Data Type | [dynamic][] | +| Is Advanced | `false` | +| Default Editor | [Expression][] | +| Default Value | [dynamic][] with no value | + +### Advanced + +Parameters that will be processed with a name, value, type, direction and size. + +| | | +|--------------------|---------------------------| +| Data Type | [IEnumberable][]<[OracleParameter][]> | +| Is Advanced | `false` | +| Default Editor | [Expression][] | +| Default Value | [IEnumberable][]<[OracleParameter][]> with no value | + +## Remarks + +### Create an OracleParameters + +The following table shows some of the ways that an `OracleParameters` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use an `OracleParameters` constructor | `new OracleParameters(new {parameterName = "parameterValue",}, new List(){ new OracleParameter("name", $@"", OracleMappingType.Clob, ParameterDirection.Input, 0), })` | `{"Basic": {"parameterName": "parameterValue"},"Advanced": [{"Name": "name","Value": "","Type": "OracleMappingType.Clob","Direction": "ParameterDirection.Input","Size": 0}]}` | Expression | | + +### Convert OracleParameters to Text + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `ToString` | `($)OracleParameters.ToString()` | `"Cortex.DataTypes.Data.OracleParameters"` | Expression | ToString will return the Full Name of the OracleParameters Data Type | +| Use `Convert Object To Text` block | where `Object` property has a value of `{"Basic": {"parameterName": "parameterValue"},"Advanced": [{"Name": "name","Value": "","Type": "OracleMappingType.Clob","Direction": "ParameterDirection.Input","Size": 0}]}` | `"Cortex.DataTypes.Data.OracleParameters"` | N/A | See [Convert Object To Text][] | +| Use `Convert Object To Json` block | where `Object` property has a value of `{"Basic": {"parameterName": "parameterValue"},"Advanced": [{"Name": "name","Value": "","Type": "OracleMappingType.Clob","Direction": "ParameterDirection.Input","Size": 0}]}` | `"{"Basic": {"parameterName": "parameterValue"},"Advanced": [{"Name": "name","Value": "","Type": 105,"Direction": 1,"Size": 0}]}"` | N/A | See [Convert Object To Json][] | + +### Property Editor Support + +* The Expression Editor is available for [Input][] properties where the data type is `OracleParameters`. +* The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `OracleParameters`. + +### Known limitations + +#### ToString Method always returns the Full Name + +Currently, if the `ToString()` method is used on a `OracleParameters`, then its Full Name will be returned; instead of a representation of the data within the `Command`. + +In future this limitation may be removed. + +## See Also + +### Related Data Types + +* [DataCommand][] +* [Commands][] +* [QueryCommand][] +* [NonQueryCommand][] +* [OracleParameter][] +* [OracleConnectionDetails][] +* [IParameters<T>][IParameters] + +### Related Concepts + +* [Working with Data Sources][] + +### External Documentation + +* None + +[CommandText]: {{< ref "#command-text" >}} +[Parameterised Commands]: {{< ref "#parameterised-commands" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Executing Multiple Commands (Safe)]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.ExecutingMultipleCommandsSafe" >}} +[Executing Multiple Commands (Unsafe)]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.ExecutingMultipleCommandsUnsafe" >}} +[Block: Parameterised Commands]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.ParameterisedCommands" >}} +[Statements]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.Statements" >}} +[OracleConnectionDetails]: {{< url path="Cortex.Reference.DataTypes.Data.OracleConnectionDetails.MainDoc" >}} + +[Convert Object To Text]: {{< url path="Cortex.Reference.Blocks.Objects.ConvertObject.ConvertObjectToText.MainDoc" >}} +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} + +[Working with Data Sources]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DataSources.MainDoc" >}} + +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[EncryptableText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptableText.MainDoc" >}} +[DataCommand]: {{< url path="Cortex.Reference.DataTypes.Data.DataCommand.MainDoc" >}} +[Commands]: {{< url path="Cortex.Reference.DataTypes.Data.Commands.MainDoc" >}} +[QueryCommand]: {{< url path="Cortex.Reference.DataTypes.Data.QueryCommand.MainDoc" >}} +[NonQueryCommand]: {{< url path="Cortex.Reference.DataTypes.Data.NonQueryCommand.MainDoc" >}} +[CommandException]: {{< url path="Cortex.Reference.Exceptions.Data.CommandException.MainDoc" >}} +[CommandExceptionIncompatibleStatementType]: {{< url path="Cortex.Reference.Exceptions.Data.CommandException.IncompatibleStatementType" >}} +[ConnectionDetailsProperty]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.ConnectionDetailsProperty" >}} +[CommandProperty]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.CommandProperty" >}} +[Command]: {{< url path="Cortex.Reference.DataTypes.Data.Command.MainDoc" >}} +[IEnumberable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[ParametersProperty]: {{< url path="Cortex.Reference.DataTypes.Data.DataCommand.Parameters" >}} +[OracleParameter]: {{< url path="Cortex.Reference.DataTypes.Data.OracleParameter.MainDoc" >}} +[IParameters]: {{< url path="Cortex.Reference.DataTypes.Data.IParameters.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/data/querycommand.md b/content/en/docs/2024.11/Reference/data-types/data/querycommand.md new file mode 100644 index 000000000..4aa4eb394 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/data/querycommand.md @@ -0,0 +1,152 @@ +--- +title: "QueryCommand" +linkTitle: "QueryCommand" +description: "Holds the information for running a Query command against a data source." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Data.QueryCommand)

+ +## Summary + +A `QueryCommand` data type is used to define single or multiple [Query Statements][Query Statement] that can be run against a data source. Statements can be [parameterised][Parameterised Commands], which is recommended to prevent [SQL Injection][]. + +| | | +|-|-| +| **Category:** | Data | +| **Name:** | `QueryCommand` | +| **Full Name:** | `Cortex.DataTypes.Data.QueryCommand` | +| **Alias:** | N/A | +| **Description:** | Defines single or multiple Query Statements that can be run against a data source. | +| **Default Value:** | `null` | +| **Can be used as:** | `DataCommand`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### Command Text + +The Command Text is used to define single or multiple [Query Statements][Query Statement] that will be run against the data source. + +| | | +|--------------------|---------------------------| +| Data Type | [EncryptableText][] | +| Is Advanced | `false` | +| Default Editor | [Expression][] | +| Default Value | [EncryptableText][] with value `$@""` | + +### Parameters + +Parameters are used to pass information to the [Query Statements][Query Statement] that will be run against the data source. + +It is recommended to always use [Parameterised Commands][] as they prevent [SQL Injection][] attacks by ensuring the parameters are sanitised before the command is executed. + +For more information see [Parameterised Commands][]. + +| | | +|--------------------|---------------------------| +| Data Type | [dynamic][] | +| Is Advanced | `true` | +| Default Editor | [Expression][] | +| Default Value | [dynamic][] with no value | + +## Remarks + +### Create a QueryCommand + +The following table shows some of the ways that a `QueryCommand` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use a `QueryCommand` constructor | `new QueryCommand("SELECT * FROM Table", null)` | `{CommandText: "SELECT * FROM Table", Parameters: null}` | Expression | | +| | `new QueryCommand("SELECT * FROM Table WHERE Id < @SelectParameter", new {SelectParameter = 3})` | `{"CommandText": "SELECT * FROM Table WHERE Id < @SelectParameter", "Parameters": {"SelectParameter": 3}}` | Expression | It is recommended to always use [Parameterised Commands][] as they prevent [SQL Injection][] | + +A `QueryCommand` can also be created using the Literal Editor by filling in the necessary values for the following properties: + +| Property | Data Type | Example | Notes | +|-|-|-|-| +| `CommandText`| `EncryptableText`| `$@"SELECT * FROM Table WHERE Id < @SelectParameter"` | The command that will be queried against the data source. | +| `Parameters`| `dynamic`| `new { SelectParameter = 3 })` | The parameters that are used within a [Parameterised Command][Parameterised Commands]. | + +### Convert QueryCommand to Text + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `ToString` | `($)QueryCommand.ToString()` | `"Cortex.DataTypes.Data.QueryCommand"` | Expression | ToString will return the Full Name of the QueryCommand Data Type | +| Use `Convert Object To Text` block | where `Object` property has a value of `{CommandText: "SELECT * FROM Table", Parameters: null}` | `"Cortex.DataTypes.Data.QueryCommand"` | N/A | See [Convert Object To Text][] | +| Use `Convert Object To Json` block | where `Object` property has a value of `{CommandText: "SELECT * FROM Table", Parameters: null}` | `"{\r\n \"CommandText\": \"SELECT * FROM Table\",\r\n \"Parameters\": null\r\n}"` | N/A | See [Convert Object To Json][] | + +### Parameterised Commands + +It is recommended to always use parameterised commands as they prevent [SQL Injection][] attacks by ensuring the parameters are sanitised before the command is executed. + +The `@` symbol denotes a parameter within the [CommandText][] (e.g. `"SELECT * FROM Table WHERE Name = @Parameter"`). An example of using parameters can be found in [Executing Multiple Commands (Safe)][], whereas, an example of inserting variables into a statement without parameters can be found in [Executing Multiple Commands (Unsafe)][] + +For more information see [Parameterised Commands][Block: Parameterised Commands]. + +### Property Editor Support + +* The Expression Editor is available for [Input][] properties where the data type is `QueryCommand`. +* The Literal Editor is available for [Input][] properties where the data type is `QueryCommand`. +* The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `QueryCommand`. + +### Known limitations + +#### ToString Method always returns the Full Name + +Currently, if the `ToString()` method is used on a `QueryCommand`, then its Full Name will be returned; instead of a representation of the data within the `QueryCommand`. + +In future this limitation may be removed. + +#### Multiple SQL Commands (Oracle Only) + +For Oracle you must use [block statement syntax][OracleBlockStatement] to execute multiple commands, otherwise a [CommandException][CommandExceptionRuntime] will be thrown. + +## See Also + +### Related Data Types + +* [DataCommand][] +* [Command][] +* [Commands][] +* [NonQueryCommand][] + +### Related Concepts + +* [Working with Data Sources][] + +### External Documentation + +* [OracleBlockStatement][] +* [SQL Injection][] + +[CommandText]: {{< ref "#command-text" >}} +[Parameterised Commands]: {{< ref "#parameterised-commands" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Executing Multiple Commands (Safe)]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.ExecutingMultipleCommandsSafe" >}} +[Executing Multiple Commands (Unsafe)]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.ExecutingMultipleCommandsUnsafe" >}} +[Block: Parameterised Commands]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.ParameterisedCommands" >}} +[Query Statement]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.QueryStatements" >}} + +[Convert Object To Text]: {{< url path="Cortex.Reference.Blocks.Objects.ConvertObject.ConvertObjectToText.MainDoc" >}} +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} + +[Working with Data Sources]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DataSources.MainDoc" >}} + +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[EncryptableText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptableText.MainDoc" >}} +[DataCommand]: {{< url path="Cortex.Reference.DataTypes.Data.DataCommand.MainDoc" >}} +[Command]: {{< url path="Cortex.Reference.DataTypes.Data.Command.MainDoc" >}} +[Commands]: {{< url path="Cortex.Reference.DataTypes.Data.Commands.MainDoc" >}} +[NonQueryCommand]: {{< url path="Cortex.Reference.DataTypes.Data.NonQueryCommand.MainDoc" >}} +[CommandProperty]: {{< url path="Cortex.Reference.Blocks.Data.ExecuteDataCommand.ExecuteDataCommand.CommandProperty" >}} +[CommandExceptionRuntime]: {{< url path="Cortex.Reference.Exceptions.Data.CommandException.Runtime" >}} + +[OracleBlockStatement]: {{< url path="Oracle.PL-SQL.BlockStatement" >}} +[SQL Injection]: {{< url path="W3.SqlInjection" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/data/sqlserverconnectiondetails.md b/content/en/docs/2024.11/Reference/data-types/data/sqlserverconnectiondetails.md new file mode 100644 index 000000000..29d0e3856 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/data/sqlserverconnectiondetails.md @@ -0,0 +1,102 @@ +--- +title: "SqlServerConnectionDetails" +linkTitle: "SqlServerConnectionDetails" +description: "The data type representing configuration for establishing and maintaining a connection to an SQL Server data source." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Data.SqlServerConnectionDetails)

+ +## Summary + +The `SqlServerConnectionDetails` data type is used to establish and maintain a connection to a SQL Server data source. + +| | | +|-|-| +| **Category:** | Data | +| **Name:** | `SqlServerConnectionDetails` | +| **Full Name:** | `Cortex.DataTypes.Data.SqlServerConnectionDetails` | +| **Alias:** | N/A | +| **Description:** | The data type representing configuration for establishing and maintaining a connection to an SQL Server data source. | +| **Default Value:** | `null` | +| **Can be used as:** | `ConnectionDetails`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### Connection String + +The Connection String that is used to connect to the data source. + +| | | +|--------------------|---------------------------| +| Data Type | [EncryptableText][] | +| Is Advanced | `false` | +| Default Editor | [Expression][] | +| Default Value | [EncryptableText][] with value `$@"Server=localhost;Database=YourDatabase;Trusted_Connection=true;"` | + +## Remarks + +### Create a SqlServerConnectionDetails + +The following table shows some of the ways that a `SqlServerConnectionDetails` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use a `SqlServerConnectionDetails` constructor | `new SqlServerConnectionDetails("Server=myServerAddress;Database=myDataBase;Trusted_Connection=True;")` | `{"ConnectionString": "Server=myServerAddress;Database=myDataBase;Trusted_Connection=True;"}` | Expression | | + +A `SqlServerConnectionDetails` can also be created using the Literal Editor by filling in the necessary values for the following properties: + +| Property | Data Type | Example | Notes | +|-|-|-|-| +| `Connection String`| `EncryptableText`| `$@"Server=myServerAddress;Database=myDataBase;Trusted_Connection=True;"` | The Connection String that is used to connect to the data source. | + +### Connection Strings + +A [Connection String][] must be provided in order to connect to a SQL Server data source. The [Connection String][] can be formatted differently depending either on the version of SQL Server or the way the connection will be created and maintained (e.g. Trusted connection vs explicit user). See [ConnectionStrings.com][] for a list of connection strings for SQL Server. + +Please see [Working with Data Sources][] for a list of other supported data sources (e.g. ODBC) and how to construct valid connection strings for them. + +### Property Editor Support + +* The Expression Editor is available for [Input][] properties where the data type is `SqlServerConnectionDetails`. +* The Literal Editor is not available for [Input][] properties where the data type is `SqlServerConnectionDetails`. +* The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `SqlServerConnectionDetails`. + +### Known limitations + +None + +## See Also + +### Related Data Types + +* [ConnectionDetails][] +* [OdbcConnectionDetails][] +* [OracleConnectionDetails][] + +### Related Concepts + +* [Working with Data Sources][] + +### External Documentation + +* [ConnectionStrings.com][] + +[Connection String]: {{< ref "#connection-string" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[ConnectionDetails]: {{< url path="Cortex.Reference.DataTypes.Data.ConnectionDetails.MainDoc" >}} +[OdbcConnectionDetails]: {{< url path="Cortex.Reference.DataTypes.Data.OdbcConnectionDetails.MainDoc" >}} +[OracleConnectionDetails]: {{< url path="Cortex.Reference.DataTypes.Data.OracleConnectionDetails.MainDoc" >}} + +[Working with Data Sources]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DataSources.MainDoc" >}} + +[EncryptableText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptableText.MainDoc" >}} + +[ConnectionStrings.com]: {{< url path="ConnectionStrings.SqlConnection" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/date-and-time/_index.md b/content/en/docs/2024.11/Reference/data-types/date-and-time/_index.md new file mode 100644 index 000000000..12482d669 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/date-and-time/_index.md @@ -0,0 +1,6 @@ +--- +title: "Date & Time" +linkTitle: "Date & Time" +description: "Data types used for working with dates and time." +weight: 1 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/data-types/date-and-time/datetime.md b/content/en/docs/2024.11/Reference/data-types/date-and-time/datetime.md new file mode 100644 index 000000000..2d46248ad --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/date-and-time/datetime.md @@ -0,0 +1,133 @@ +--- +title: "DateTime" +linkTitle: "DateTime" +description: "Used to represent a date and time between `00:00:00.0000000 UTC, January 1, 0001` and `23:59:59.9999999 UTC, December 31, 9999`, in the Gregorian calendar. It can be used wherever a `DateTimeOffset` is expected, and will be implicitly cast." +--- + +# {{% param title %}} + +

(System.DateTime)

+ +## Summary + +The `DateTime` data type is used to represent a date and time between `00:00:00.0000000 UTC, January 1, 0001` and `23:59:59.9999999 UTC, December 31, 9999`, in the Gregorian calendar. It can be used wherever a [DateTimeOffset][] is expected, and will be [implicitly cast][Implicit Casting]. + +| | | +|-|-| +| **Category:** | Date & Time | +| **Name:** | `DateTime` | +| **Full Name:** | `System.DateTime` | +| **Alias:** | N/A | +| **Description:** | A date and time between `00:00:00.0000000 UTC, January 1, 0001` and `23:59:59.9999999 UTC, December 31, 9999`, in the Gregorian calendar. It can be used wherever a [DateTimeOffset][] is expected, and will be [implicitly cast][Implicit Casting]. | +| **Size:** | Varies, typically `8` bytes | +| **Default Value:** | `0001-01-01T00:00:00` (i.e. [DateTime.MinValue][]) | +| **Can be used as:** | `DateTimeOffset`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Remarks + +### Create a DateTime + +The following table shows some of the ways that a `DateTime` can be created. + +All examples are for a system configured with British [culture][] (i.e. `en-GB`), and use a local time of `2PM 1st of July 2022` with `1` hour UTC offset, honouring British Summer Time (BST). + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `DateTime.Now` | `DateTime.Now` | `2022-07-01T14:00:00.0000000+01:00` | Expression | The result shown is an example result. The actual result will show the current date and time on the current computer expressed as local time. See [DateTime.Now][] | +| Use `DateTime.UtcNow` | `DateTime.UtcNow` | `2022-07-01T13:00:00.0000000Z` | Expression | The result shown is an example result. The actual result will show the current date and time on the current computer expressed as the Coordinated Universal Time (UTC). See [DateTime.UtcNow][] | +| Use `DateTime.Parse`| `DateTime.Parse("1/7/2022 2:00:00 PM")` | `2022-07-01T14:00:00` | Expression | Parses a date string and converts it to a `DateTime` using the [current culture][] of the system. In this example it parses `"1/7/2022 2:00:00 PM"` using `en-GB` [culture][] and converts it to `2022-07-01T14:00:00`. See [DateTime.Parse][] | +| Use a `DateTime` constructor | `new DateTime(2022, 7, 1, 14, 0, 0, 0)` | `2022-07-01T14:00:00` | Expression | `2PM 1st July 2022` with `1` hour UTC offset, honouring British Summer Time (BST). See [DateTime Constructors][]. | +| Use `DateTimeOffset.DateTime` | `DateTimeOffset.UtcNow.DateTime` | `2022-07-01T13:00:00.0000000` | Expression | Converts `DateTimeOffset.UtcNow` to a `DateTime` using the date and time components, but not the offset. See [DateTimeOffset.DateTime][] | +| Use `DateTimeOffset.LocalDateTime` | `DateTimeOffset.UtcNow.LocalDateTime` | `2022-07-01T14:00:00.0000000+01:00` | Expression | Converts `DateTimeOffset.UtcNow` to a `DateTime` relative to the local time. See [DateTimeOffset.LocalDateTime][] | +| Use `DateTimeOffset.UtcDateTime` | `DateTimeOffset.UtcNow.UtcDateTime` | `2022-07-01T13:00:00.0000000Z` | Expression | Converts `DateTimeOffset.UtcNow` to a `DateTime` relative to Coordinated Universal Time (UTC). See [DateTimeOffset.UtcDateTime][] | + +Please see [Initializing a DateTime object][] for further information. + +### Convert DateTime to Text + +The following table shows some of the ways that a `DateTime` can be converted to text. + +All examples are for a system configured with British [culture][] (i.e. `en-GB`), and use a local time of `2PM 1st of July 2022` with `1` hour UTC offset, honouring British Summer Time (BST). + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `ToString` | `DateTime.UtcNow.ToString()` | `"1/7/2022 1:00:00 PM"` | Expression | The result shown is an example result. The actual result will show the current date and time on the current computer expressed as the Coordinated Universal Time (UTC) converted to text. Both the example and actual result will use the [short date pattern][StandardFormatTemplates] for the [current culture][] and the [long time pattern][StandardFormatTemplates] for the [current culture][] with each element separated from the previous element by a space. See [DateTime.ToString][] | +| Use `Convert.ToString` | `Convert.ToString(DateTime.UtcNow)` | `"1/7/2022 1:00:00 PM"` | Expression | The result shown is an example result. The actual result will show the current date and time on the current computer expressed as the Coordinated Universal Time (UTC) converted to text. Both the example and actual result will use the [short date pattern][StandardFormatTemplates] for the [current culture][] and the [long time pattern][StandardFormatTemplates] for the [current culture][], with each element separated from the previous element by a space. See [Convert.ToString][] | +| Use `Convert DateTime To Text` block | where `Date Time` property has a value of `DateTime.UtcNow` | `"2022-07-01T13:00:00.0000000+00:00"` | Expression | The result shown is an example result. The actual result will show the current date and time on the current computer expressed as the Coordinated Universal Time (UTC) converted to text. Both the example and actual result will use [ISO 8601 Standard][] format for `DateTimeOffset` (i.e. `yyyy-MM-ddTHH:mm:ss.fffffffzzz`) as the `Convert DateTime To Text` block will impicitly convert a `DateTime` to a `DateTimeOffset`. See [Convert DateTime To Text][] | +| Use `Convert Object To Text` block | where `Object` property has a value of `DateTime.UtcNow` | `"1/7/2022 1:00:00 PM"` | Expression | The result shown is an example result. The actual result will show the current date and time on the current computer expressed as the Coordinated Universal Time (UTC) converted to text. Both the example and actual result will use the [short date pattern][StandardFormatTemplates] for the [current culture][] and the [long time pattern][StandardFormatTemplates] for the [current culture][], with each element separated from the previous element by a space. See [Convert Object To Text][] | +| Use `Convert Object To Json` block | where `Object` property has a value of `DateTime.UtcNow` | `"\"2022-07-01T13:00:00.0000000Z\""` | Expression | The result shown is an example result. The actual result will show the current date and time on the current computer expressed as the Coordinated Universal Time (UTC) converted to text. Both the example and actual result will use [ISO 8601 Standard][] format for `DateTime` (i.e. `yyyy-MM-ddTHH:mm:ss.fffffffK`). See [Convert Object To Json][] | + +Please see [Date and Time Formatting][] for further information on formatting `DateTime` values, including how [Operating System Settings][] can affect the [current culture][]. + +### Convert DateTime to a DateTimeOffset + +`DateTime` values will be [implicitly cast][Implicit Casting] to [DateTimeOffset][] values if used where a [DateTimeOffset][] is expected. + +### Property Editor Support + +* The Expression Editor is available for [Input][] properties where the data type is `DateTime`. +* The Literal Editor is available for [Input][] properties where the data type is `DateTime`. + * Expression syntax is not supported within the Literal Editor for the `DateTime` data type. +* The Variable Editor is available for [InputOutput][] and [Output][] properties where the data type is `DateTime`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +* [DateTimeOffset][] + +### Related Concepts + +* [Working with Date and Time][] +* [Implicit Casting][] +* [Culture][] + +### External Documentation + +* [System.DateTime][] + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Convert.ToString]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToString" >}} + +[Convert Text To DateTime]: {{< url path="Cortex.Reference.Blocks.DateAndTime.ConvertDateTime.ConvertTextToDateTime.MainDoc" >}} +[Convert DateTime To Text]: {{< url path="Cortex.Reference.Blocks.DateAndTime.ConvertDateTime.ConvertDateTimeToText.MainDoc" >}} +[Convert Object To Text]: {{< url path="Cortex.Reference.Blocks.Objects.ConvertObject.ConvertObjectToText.MainDoc" >}} +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} + +[Initializing a DateTime object]: {{< url path="MSDocs.DotNet.Api.System.DateTime.InitializingADateTimeObject" >}} + +[System.DateTime]: {{< url path="MSDocs.DotNet.Api.System.DateTime.MainDoc" >}} +[DateTime Constructors]: {{< url path="MSDocs.DotNet.Api.System.DateTime.Ctors" >}} +[DateTime.MinValue]: {{< url path="MSDocs.DotNet.Api.System.DateTime.MinValue" >}} +[DateTime.Now]: {{< url path="MSDocs.DotNet.Api.System.DateTime.Now" >}} +[DateTime.UtcNow]: {{< url path="MSDocs.DotNet.Api.System.DateTime.UtcNow" >}} +[DateTime.Parse]: {{< url path="MSDocs.DotNet.Api.System.DateTime.Parse" >}} +[DateTime.ToString]: {{< url path="MSDocs.DotNet.Api.System.DateTime.ToString" >}} + +[DateTimeOffset.DateTime]: {{< url path="MSDocs.DotNet.Api.System.DateTimeOffset.DateTime" >}} +[DateTimeOffset.LocalDateTime]: {{< url path="MSDocs.DotNet.Api.System.DateTimeOffset.LocalDateTime" >}} +[DateTimeOffset.UtcDateTime]: {{< url path="MSDocs.DotNet.Api.System.DateTimeOffset.UtcDateTime" >}} + +[Date and Time Formatting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.DateAndTimeFormatting.MainDoc" >}} +[StandardFormatTemplates]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.DateAndTimeFormatting.StandardFormatTemplates" >}} +[ISO 8601 Standard]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.DateAndTimeFormatting.ISO8601Standard" >}} +[Operating System Settings]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.DateAndTimeFormatting.OperatingSystemSettings" >}} + +[DateTimeOffset]: {{< url path="Cortex.Reference.DataTypes.DateAndTime.DateTimeOffset.MainDoc" >}} +[TimeSpan]: {{< url path="Cortex.Reference.DataTypes.DateAndTime.TimeSpan.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Working with Date and Time]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.MainDoc" >}} + +[Culture]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Culture.MainDoc" >}} +[Current Culture]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Culture.CurrentCulture.MainDoc" >}} + +[Implicit Casting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectCasting.ImplicitCast" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/date-and-time/datetimecomponenttype.md b/content/en/docs/2024.11/Reference/data-types/date-and-time/datetimecomponenttype.md new file mode 100644 index 000000000..355ac96d6 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/date-and-time/datetimecomponenttype.md @@ -0,0 +1,74 @@ +--- +title: "DateTimeComponentType" +linkTitle: "DateTimeComponentType" +description: "Used to represent a component of a `DateTimeOffset` (e.g. `Year`, `Month`, `Day`)." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.DateAndTime.DateTimeComponentType)

+ +{{% alert type="information" title="Information" %}} Improvements to this page are planned for the future. {{% /alert %}} + +## Summary + +The `DateTimeComponentType` data type is used to represent a component of a `DateTimeOffset` (e.g. `Year`, `Month`, `Day`). + +`DateTimeComponentType` is an [enum][Working with Enums] data type, which means it has a defined set of values, where each value has an associated [String][] name and [Int32][] value. + +| | | +|-|-| +| **Category:** | Date & Time | +| **Name:** | `DateTimeComponentType` | +| **Full Name:** | `Cortex.DataTypes.DateAndTime.DateTimeComponentType` | +| **Alias:** | N/A | +| **Description:** | Used to represent a component of a `DateTimeOffset` (e.g. `Year`, `Month`, `Day`). | +| **Default Value:** | `(DateTimeComponentType)0` | +| **Can be used as:** | `DateTimeComponentType`, `object`, `dynamic` | +| **Can be cast to:** | `Int16` (e.g. `(Int16)DateTimeComponentType.LocalDateTime` or `(System.Int16)DateTimeComponentType.LocalDateTime` or `(short)DateTimeComponentType.LocalDateTime`) | +| | `Int32` (e.g. `(Int32)DateTimeComponentType.LocalDateTime` or `(System.Int32)DateTimeComponentType.LocalDateTime` or `(int)DateTimeComponentType.LocalDateTime`) | +| | `Int64` (e.g. `(Int64)DateTimeComponentType.LocalDateTime` or `(System.Int64)DateTimeComponentType.LocalDateTime` or `(long)DateTimeComponentType.LocalDateTime`) | +| | `Single` (e.g. `(Single)DateTimeComponentType.LocalDateTime` or `(System.Single)DateTimeComponentType.LocalDateTime` or `(float)DateTimeComponentType.LocalDateTime`) | +| | `Double` (e.g. `(Double)DateTimeComponentType.LocalDateTime` or `(System.Double)DateTimeComponentType.LocalDateTime` or `(double)DateTimeComponentType.LocalDateTime`) | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `DateTimeComponentType`. +- The Literal Editor is available for [Input][] properties where the data type is `DateTimeComponentType`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `DateTimeComponentType`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [DateTimeOffset][] + +### Related Concepts + +- [Working with Date and Time][] + +### External Documentation + +- [System.DateTimeOffset][] +- [System.Enum][] + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[DateTimeOffset]: {{< url path="Cortex.Reference.DataTypes.DateAndTime.DateTimeOffset.MainDoc" >}} + +[Working with Date and Time]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.MainDoc" >}} +[System.DateTimeOffset]: {{< url path="MSDocs.DotNet.Api.System.DateTimeOffset.MainDoc" >}} + +[System.Enum]: {{< url path="MSDocs.DotNet.Api.System.Enum.MainDoc" >}} + +[Working with Enums]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Enums.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/date-and-time/datetimeoffset.md b/content/en/docs/2024.11/Reference/data-types/date-and-time/datetimeoffset.md new file mode 100644 index 000000000..9aa34a82f --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/date-and-time/datetimeoffset.md @@ -0,0 +1,157 @@ +--- +title: "DateTimeOffset" +linkTitle: "DateTimeOffset" +description: "Used to represent a date and time between `00:00:00.0000000 UTC, January 1, 0001` and `23:59:59.9999999 UTC, December 31, 9999`, in the Gregorian calendar, along with a UTC time offset." +--- + +# {{% param title %}} + +

(System.DateTimeOffset)

+ +## Summary + +The `DateTimeOffset` data type is used to represent a date and time between `00:00:00.0000000 UTC, January 1, 0001` and `23:59:59.9999999 UTC, December 31, 9999`, in the Gregorian calendar, along with a UTC time offset. + +| | | +|-|-| +| **Category:** | Date & Time | +| **Name:** | `DateTimeOffset` | +| **Full Name:** | `System.DateTimeOffset` | +| **Alias:** | N/A | +| **Description:** | A date and time between `00:00:00.0000000 UTC, January 1, 0001` and `23:59:59.9999999 UTC, December 31, 9999`, in the Gregorian calendar, along with a UTC time offset. | +| **Size:** | Varies, typically `12` to `16` bytes | +| **Default Value:** | `0001-01-01T00:00:00+00:00` (i.e. [DateTimeOffset.MinValue][])| +| **Can be used as:** | `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Remarks + +### Create a DateTimeOffset + +The following table shows some of the ways that a `DateTimeOffset` can be created. + +All examples are for a system configured with British [culture][] (i.e. `en-GB`), and use a local time of `2PM 1st of July 2022` with `1` hour UTC offset, honouring British Summer Time (BST). + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `DateTimeOffset.Now` | `DateTimeOffset.Now` | `2022-07-01T14:00:00.0000000+01:00` | Expression | The result shown is an example result. The actual result will show the current date and time on the current computer, with the offset set to the local time's offset from Coordinated Universal Time (UTC). See [DateTimeOffset.Now][]. | +| Use `DateTimeOffset.UtcNow` | `DateTimeOffset.UtcNow` | `2022-07-01T13:00:00.0000000+00:00` | Expression | The result shown is an example result. The actual result will show the current Coordinated Universal Time (UTC) date and time and whose offset is Zero. See [DateTimeOffset.UtcNow][]. | +| [Implicit Casting][] of [DateTime][] | `DateTime.UtcNow` | `2022-07-01T13:00:00.0000000+00:00` | Expression | The result shown is an example result. The actual result will show the current Coordinated Universal Time (UTC) date and time and whose offset is Zero. | +| Use `DateTimeOffset.Parse`| `DateTimeOffset.Parse("1/7/2022 2:00:00 PM +1:00")` | `2022-07-01T14:00:00+01:00` | Expression | Parses a date string and converts it to a `DateTimeOffset` using the [current culture][] of the system. In this example it parses `"1/7/2022 2:00:00 PM +1:00"` using `en-GB` [culture][] and converts it to `2022-07-01T14:00:00+01:00`. See [DateTimeOffset.Parse][] | +| Use a `DateTimeOffset` constructor | `new DateTimeOffset(2022, 7, 1, 14, 0, 0, 0, new TimeSpan(1, 0, 0))` | `2022-07-01T14:00:00+01:00` | Expression | `2PM 1st July 2022` with `1` hour UTC offset, honouring British Summer Time (BST). See [DateTimeOffset Constructors][]. | +| Use `Convert Text To DateTime` block | where `Text` property has a value of `"1/7/2022 2:00:00 PM +1:00"` | `2022-07-01T14:00:00+01:00` | Expression | Parses a date string and converts it to a `DateTimeOffset`. See [Convert Text To DateTime][] | + +Please see [Instantiating a DateTimeOffset object][] for further information. + +A `DateTimeOffset` can also be created using the Literal Editor by filling in the necessary values for the following properties: + +| Property | Data Type | Notes | +|-|-|-| +| `Year` | `Int32` | The year expressed as an [Int32][] value between `1` and `9999`. | +| `Month` | `Int32` | The month expressed as an [Int32][] value between `1` and `12`. | +| `Day` | `Int32` | The day expressed as an [Int32][] value between `1` and the number of days in `Month`. | +| `Hour` | `Int32` | The hour expressed as an [Int32][] value between `0` and `23`. | +| `Minute` | `Int32` | The minute expressed as an [Int32][] value between `0` and `59`. | +| `Second` | `Int32` | The second expressed as an [Int32][] value between `0` and `59`. | +| `Millisecond` | `Int32` | The millisecond expressed as an [Int32][] value between `0` and `999`.| +| `Offset` | `TimeSpan`| The UTC Offset expressed as a [TimeSpan][] value between `-14` hours and `14` hours. This is calculated as the sum of `Offset.Days + Offset.Hours + Offset.Minutes + Offset.Seconds + Offset.Milliseconds`. If the value is outside `-14` hours and `14` hours an [InvalidPropertyValueException][] will be thrown. | + +### Convert DateTimeOffset to Text + +The following table shows some of the ways that a `DateTimeOffset` can be converted to text. + +All examples are for a system configured with British [culture][] (i.e. `en-GB`), and use a local time of `2PM 1st of July 2022` with `1` hour UTC offset, honouring British Summer Time (BST). + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `ToString` | `DateTimeOffset.UtcNow.ToString()` | `"1/7/2022 1:00:00 PM +00:00"` | Expression | The result shown is an example result. The actual result will show the current Coordinated Universal Time (UTC) date and time and whose offset is Zero converted to text. Both the example and actual result will use the [short date pattern][StandardFormatTemplates] for the [current culture][], the [long time pattern][StandardFormatTemplates] for the [current culture][], and the `zzz` [custom format string][CustomFormatTemplates], with each element separated from the previous element by a space. See [DateTimeOffset.ToString][] | +| Use `Convert.ToString` | `Convert.ToString(DateTimeOffset.UtcNow)` | `"1/7/2022 1:00:00 PM +00:00"` | Expression | The result shown is an example result. The actual result will show the current Coordinated Universal Time (UTC) date and time and whose offset is Zero converted to text. Both the example and actual result will use the [short date pattern][StandardFormatTemplates] for the [current culture][], the [long time pattern][StandardFormatTemplates] for the [current culture][], and the `zzz` [custom format string][CustomFormatTemplates], with each element separated from the previous element by a space. See [Convert.ToString][] | +| Use `Convert DateTime To Text` block | where `Date Time` property has a value of `DateTimeOffset.UtcNow` | `"2022-07-01T13:00:00.0000000+00:00"` | Expression | The result shown is an example result. The actual result will show the current Coordinated Universal Time (UTC) date and time and whose offset is Zero converted to text. Both the example and actual result will use [ISO 8601 Standard][] format for `DateTimeOffset` (i.e. `yyyy-MM-ddTHH:mm:ss.fffffffzzz`). See [Convert DateTime To Text][] | +| Use `Convert Object To Text` block | where `Object` property has a value of `DateTimeOffset.UtcNow` | `"1/7/2022 1:00:00 PM +00:00"` | Expression | The result shown is an example result. The actual result will show the current Coordinated Universal Time (UTC) date and time and whose offset is Zero converted to text. Both the example and actual result will use the [short date pattern][StandardFormatTemplates] for the [current culture][], the [long time pattern][StandardFormatTemplates] for the [current culture][], and the `zzz` [custom format string][CustomFormatTemplates], with each element separated from the previous element by a space. See [Convert Object To Text][] | +| Use `Convert Object To Json` block | where `Object` property has a value of `DateTimeOffset.UtcNow` | `"\"2022-07-01T13:00:00.0000000+00:00\""` | Expression | The result shown is an example result. The actual result will show the current Coordinated Universal Time (UTC) date and time and whose offset is Zero converted to text. Both the example and actual result will use [ISO 8601 Standard][] format for `DateTimeOffset` (i.e. `yyyy-MM-ddTHH:mm:ss.fffffffzzz`). See [Convert Object To Json][] | + +Please see [Date and Time Formatting][] for further information on formatting `DateTimeOffset` values, including how [Operating System Settings][] can affect the [current culture][]. + +### Convert DateTimeOffset to a DateTime + +The following table shows some of the ways that a `DateTimeOffset` can be converted to a `DateTime`. + +All examples are for a system configured with British [culture][] (i.e. `en-GB`), and use a local time of `2PM 1st of July 2022` with `1` hour UTC offset, honouring British Summer Time (BST). + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `DateTimeOffset.DateTime` | `DateTimeOffset.UtcNow.DateTime` | `2022-07-01T13:00:00.0000000` | Expression | Converts `DateTimeOffset.UtcNow` to a `DateTime` using the date and time components, but not the offset. See [DateTimeOffset.DateTime][] | +| Use `DateTimeOffset.LocalDateTime` | `DateTimeOffset.UtcNow.LocalDateTime` | `2022-07-01T14:00:00.0000000+01:00` | Expression | Converts `DateTimeOffset.UtcNow` to a `DateTime` relative to the local time. See [DateTimeOffset.LocalDateTime][] | +| Use `DateTimeOffset.UtcDateTime` | `DateTimeOffset.UtcNow.UtcDateTime` | `2022-07-01T13:00:00.0000000Z` | Expression | Converts `DateTimeOffset.UtcNow` to a `DateTime` relative to Coordinated Universal Time (UTC). See [DateTimeOffset.UtcDateTime][] | + +### Property Editor Support + +* The Expression Editor is available for [Input][] properties where the data type is `DateTimeOffset`. +* The Literal Editor is available for [Input][] properties where the data type is `DateTimeOffset`. + * Expression syntax is not supported within the Literal Editor for the `DateTimeOffset` data type. +* The Variable Editor is available for [InputOutput][] and [Output][] properties where the data type is `DateTimeOffset`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +* [DateTime][] +* [TimeSpan][] + +### Related Concepts + +* [Working with Date and Time][] +* [Implicit Casting][] +* [Culture][] + +### External Documentation + +* [System.DateTimeOffset][] + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Convert.ToString]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToString" >}} + +[Instantiating a DateTimeOffset object]: {{< url path="MSDocs.DotNet.Api.System.DateTimeOffset.InstantiatingADateTimeOffsetObject" >}} +[Formatting enumeration values]: {{< url path="MSDocs.DotNet.Api.System.Enum.FormattingEnumerationValues" >}} + +[Convert Text To DateTime]: {{< url path="Cortex.Reference.Blocks.DateAndTime.ConvertDateTime.ConvertTextToDateTime.MainDoc" >}} +[Convert DateTime To Text]: {{< url path="Cortex.Reference.Blocks.DateAndTime.ConvertDateTime.ConvertDateTimeToText.MainDoc" >}} +[Convert Object To Text]: {{< url path="Cortex.Reference.Blocks.Objects.ConvertObject.ConvertObjectToText.MainDoc" >}} +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} + +[System.DateTimeOffset]: {{< url path="MSDocs.DotNet.Api.System.DateTimeOffset.MainDoc" >}} +[DateTimeOffset Constructors]: {{< url path="MSDocs.DotNet.Api.System.DateTimeOffset.Ctors" >}} +[DateTimeOffset.MinValue]: {{< url path="MSDocs.DotNet.Api.System.DateTimeOffset.MinValue" >}} +[DateTimeOffset.Parse]: {{< url path="MSDocs.DotNet.Api.System.DateTimeOffset.Parse" >}} +[DateTimeOffset.Now]: {{< url path="MSDocs.DotNet.Api.System.DateTimeOffset.Now" >}} +[DateTimeOffset.UtcNow]: {{< url path="MSDocs.DotNet.Api.System.DateTimeOffset.UtcNow" >}} +[DateTimeOffset.DateTime]: {{< url path="MSDocs.DotNet.Api.System.DateTimeOffset.DateTime" >}} +[DateTimeOffset.LocalDateTime]: {{< url path="MSDocs.DotNet.Api.System.DateTimeOffset.LocalDateTime" >}} +[DateTimeOffset.UtcDateTime]: {{< url path="MSDocs.DotNet.Api.System.DateTimeOffset.UtcDateTime" >}} +[DateTimeOffset.ToString]: {{< url path="MSDocs.DotNet.Api.System.DateTimeOffset.ToString" >}} + +[Date and Time Formatting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.DateAndTimeFormatting.MainDoc" >}} +[StandardFormatTemplates]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.DateAndTimeFormatting.StandardFormatTemplates" >}} +[CustomFormatTemplates]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.DateAndTimeFormatting.CustomFormatTemplates" >}} +[ISO 8601 Standard]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.DateAndTimeFormatting.ISO8601Standard" >}} +[Operating System Settings]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.DateAndTimeFormatting.OperatingSystemSettings" >}} + +[DateTime]: {{< url path="Cortex.Reference.DataTypes.DateAndTime.DateTime.MainDoc" >}} +[TimeSpan]: {{< url path="Cortex.Reference.DataTypes.DateAndTime.TimeSpan.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Working with Date and Time]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.MainDoc" >}} + +[Culture]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Culture.MainDoc" >}} +[Current Culture]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Culture.CurrentCulture.MainDoc" >}} + +[Implicit Casting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectCasting.ImplicitCast" >}} + +[InvalidPropertyValueException]: {{< url path="Cortex.Reference.Exceptions.Flows.Blocks.InvalidPropertyValueException.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/date-and-time/dayofweek.md b/content/en/docs/2024.11/Reference/data-types/date-and-time/dayofweek.md new file mode 100644 index 000000000..66a2cdcc6 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/date-and-time/dayofweek.md @@ -0,0 +1,193 @@ +--- +title: "DayOfWeek" +linkTitle: "DayOfWeek" +description: "Used to represent a day of the week from Sunday (i.e. `DayOfWeek.Sunday`) through Saturday (i.e. `DayOfWeek.Saturday`)." +--- + +# {{% param title %}} + +

(System.DayOfWeek)

+ +## Summary + +The `DayOfWeek` data type is used to represent a day of the week from Sunday (i.e. `DayOfWeek.Sunday`) through Saturday (i.e. `DayOfWeek.Saturday`). + +`DayOfWeek` is an [enum][Working with Enums] data type, which means it has a defined set of values, where each value has an associated [String][] name and [Int32][] value. + +| | | +|-|-| +| **Category:** | Date & Time | +| **Name:** | `DayOfWeek` | +| **Full Name:** | `System.DayOfWeek` | +| **Alias:** | N/A | +| **Description:** | A day of the week from Sunday (i.e. `DayOfWeek.Sunday`) through Saturday (i.e. `DayOfWeek.Saturday`). | +| **Size:** | `4` bytes | +| **Values:** | `DayOfWeek.Sunday` where name is `"Sunday"` and value is `0` | +| | `DayOfWeek.Monday` where name is `"Monday"` and value is `1` | +| | `DayOfWeek.Tuesday` where name is `"Tuesday"` and value is `2` | +| | `DayOfWeek.Wednesday` where name is `"Wednesday"` and value is `3` | +| | `DayOfWeek.Thursday` where name is `"Thursday"` and value is `4` | +| | `DayOfWeek.Friday` where name is `"Friday"` and value is `5` | +| | `DayOfWeek.Saturday` where name is `"Saturday"` and value is `6` | +| **Default Value:** | `DayOfWeek.Sunday` | +| **Can be used as:** | `Object`, `dynamic` | +| **Can be cast to:** | `Int16` (e.g. `(Int16)DayOfWeek.Sunday` or `(System.Int16)DayOfWeek.Sunday` or `(short)DayOfWeek.Sunday`) | +| | `Int32` (e.g. `(Int32)DayOfWeek.Sunday` or `(System.Int32)DayOfWeek.Sunday` or `(int)DayOfWeek.Sunday`) | +| | `Int64` (e.g. `(Int64)DayOfWeek.Sunday` or `(System.Int64)DayOfWeek.Sunday` or `(long)DayOfWeek.Sunday`) | +| | `Single` (e.g. `(Single)DayOfWeek.Sunday` or `(System.Single)DayOfWeek.Sunday` or `(float)DayOfWeek.Sunday`) | +| | `Double` (e.g. `(Double)DayOfWeek.Sunday` or `(System.Double)DayOfWeek.Sunday` or `(double)DayOfWeek.Sunday`) | + +## Remarks + +### Create a DayOfWeek + +The following table shows some of the ways that a `DayOfWeek` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Declare a `DayOfWeek` literal | `Sunday` | `DayOfWeek.Sunday` | Literal | Indicates Sunday | +| | `Monday` | `DayOfWeek.Monday` | Literal | Indicates Monday | +| | `Tuesday` | `DayOfWeek.Tuesday` | Literal | Indicates Tuesday | +| | `Wednesday` | `DayOfWeek.Wednesday` | Literal | Indicates Wednesday | +| | `Thursday` | `DayOfWeek.Thursday` | Literal | Indicates Thursday | +| | `Friday` | `DayOfWeek.Friday` | Literal | Indicates Friday | +| | `Saturday` | `DayOfWeek.Saturday` | Literal | Indicates Saturday | +| Use a `DayOfWeek` expression | `DayOfWeek.Sunday` | `DayOfWeek.Sunday` | Expression | Indicates Sunday | +| | `DayOfWeek.Monday` | `DayOfWeek.Monday` | Expression | Indicates Monday | +| | `DayOfWeek.Tuesday` | `DayOfWeek.Tuesday` | Expression | Indicates Tuesday | +| | `DayOfWeek.Wednesday` | `DayOfWeek.Wednesday` | Expression | Indicates Wednesday | +| | `DayOfWeek.Thursday` | `DayOfWeek.Thursday` | Expression | Indicates Thursday | +| | `DayOfWeek.Friday` | `DayOfWeek.Friday` | Expression | Indicates Friday | +| | `DayOfWeek.Saturday` | `DayOfWeek.Saturday` | Expression | Indicates Saturday | +| Use [Explicit Casting][] | `(DayOfWeek)0` | `DayOfWeek.Sunday` | Expression | [Casts][Explicit Casting] `0` to `DayOfWeek.Sunday` | +| | `(DayOfWeek)1` | `DayOfWeek.Monday` | Expression | [Casts][Explicit Casting] `1` to `DayOfWeek.Monday` | +| | `(DayOfWeek)2` | `DayOfWeek.Tuesday` | Expression | [Casts][Explicit Casting] `2` to `DayOfWeek.Tuesday` | +| | `(DayOfWeek)3` | `DayOfWeek.Wednesday` | Expression | [Casts][Explicit Casting] `3` to `DayOfWeek.Wednesday` | +| | `(DayOfWeek)4` | `DayOfWeek.Thursday` | Expression | [Casts][Explicit Casting] `4` to `DayOfWeek.Thursday` | +| | `(DayOfWeek)5` | `DayOfWeek.Friday` | Expression | [Casts][Explicit Casting] `5` to `DayOfWeek.Friday` | +| | `(DayOfWeek)6` | `DayOfWeek.Saturday` | Expression | [Casts][Explicit Casting] `6` to `DayOfWeek.Saturday` | +| Use `Enum.Parse` | `(DayOfWeek)Enum.Parse(typeof(DayOfWeek), "Sunday")` | `DayOfWeek.Sunday` | Expression | Parses `"Sunday"` and converts it to `DayOfWeek.Sunday`. See [Enum.Parse][] | +| | `(DayOfWeek)Enum.Parse(typeof(DayOfWeek), "Monday")` | `DayOfWeek.Monday` | Expression | Parses `"Monday"` and converts it to `DayOfWeek.Monday`. See [Enum.Parse][] | +| | `(DayOfWeek)Enum.Parse(typeof(DayOfWeek), "Tuesday")` | `DayOfWeek.Tuesday` | Expression | Parses `"Tuesday"` and converts it to `DayOfWeek.Tuesday`. See [Enum.Parse][] | +| | `(DayOfWeek)Enum.Parse(typeof(DayOfWeek), "Wednesday")` | `DayOfWeek.Wednesday` | Expression | Parses `"Wednesday"` and converts it to `DayOfWeek.Wednesday`. See [Enum.Parse][] | +| | `(DayOfWeek)Enum.Parse(typeof(DayOfWeek), "Thursday")` | `DayOfWeek.Thursday` | Expression | Parses `"Thursday"` and converts it to `DayOfWeek.Thursday`. See [Enum.Parse][] | +| | `(DayOfWeek)Enum.Parse(typeof(DayOfWeek), "Friday")` | `DayOfWeek.Friday` | Expression | Parses `"Friday"` and converts it to `DayOfWeek.Friday`. See [Enum.Parse][] | +| | `(DayOfWeek)Enum.Parse(typeof(DayOfWeek), "Saturday")` | `DayOfWeek.Saturday` | Expression | Parses `"Saturday"` and converts it to `DayOfWeek.Saturday`. See [Enum.Parse][] | +| Use `Enum.ToObject` | `(DayOfWeek)Enum.ToObject(typeof(DayOfWeek), 0)` | `DayOfWeek.Sunday` | Expression | Converts `0` to `DayOfWeek.Sunday` value. See [Enum.ToObject][] | +| | `(DayOfWeek)Enum.ToObject(typeof(DayOfWeek), 1)` | `DayOfWeek.Monday` | Expression | Converts `1` to `DayOfWeek.Monday` value. See [Enum.ToObject][] | +| | `(DayOfWeek)Enum.ToObject(typeof(DayOfWeek), 2)` | `DayOfWeek.Tuesday` | Expression | Converts `2` to `DayOfWeek.Tuesday` value. See [Enum.ToObject][] | +| | `(DayOfWeek)Enum.ToObject(typeof(DayOfWeek), 3)` | `DayOfWeek.Wednesday` | Expression | Converts `3` to `DayOfWeek.Wednesday` value. See [Enum.ToObject][] | +| | `(DayOfWeek)Enum.ToObject(typeof(DayOfWeek), 4)` | `DayOfWeek.Thursday` | Expression | Converts `4` to `DayOfWeek.Thursday` value. See [Enum.ToObject][] | +| | `(DayOfWeek)Enum.ToObject(typeof(DayOfWeek), 5)` | `DayOfWeek.Friday` | Expression | Converts `5` to `DayOfWeek.Friday` value. See [Enum.ToObject][] | +| | `(DayOfWeek)Enum.ToObject(typeof(DayOfWeek), 6)` | `DayOfWeek.Saturday` | Expression | Converts `6` to `DayOfWeek.Saturday` value. See [Enum.ToObject][] | + +Please see [Instantiating an enumeration type][] for further information. + +### Convert DayOfWeek to Text + +The following table shows some of the ways that a `DayOfWeek` can be converted to text. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `ToString` | `DayOfWeek.Sunday.ToString()` | `"Sunday"` | Expression | Converts `DayOfWeek.Sunday` to `"Sunday"`. See [Enum.ToString][] | +| | `DayOfWeek.Monday.ToString()` | `"Monday"` | Expression | Converts `DayOfWeek.Monday` to `"Monday"`. See [Enum.ToString][] | +| | `DayOfWeek.Tuesday.ToString()` | `"Tuesday"` | Expression | Converts `DayOfWeek.Tuesday` to `"Tuesday"`. See [Enum.ToString][] | +| | `DayOfWeek.Wednesday.ToString()` | `"Wednesday"` | Expression | Converts `DayOfWeek.Wednesday` to `"Wednesday"`. See [Enum.ToString][] | +| | `DayOfWeek.Thursday.ToString()` | `"Thursday"` | Expression | Converts `DayOfWeek.Thursday` to `"Thursday"`. See [Enum.ToString][] | +| | `DayOfWeek.Friday.ToString()` | `"Friday"` | Expression | Converts `DayOfWeek.Friday` to `"Friday"`. See [Enum.ToString][] | +| | `DayOfWeek.Saturday.ToString()` | `"Saturday"` | Expression | Converts `DayOfWeek.Saturday` to `"Saturday"`. See [Enum.ToString][] | +| Use `Convert.ToString` | `Convert.ToString(DayOfWeek.Sunday)` | `"Sunday"` | Expression | Converts `DayOfWeek.Sunday` to `"Sunday"`. See [Convert.ToString][] | +| | `Convert.ToString(DayOfWeek.Monday)` | `"Monday"` | Expression | Converts `DayOfWeek.Monday` to `"Monday"`. See [Convert.ToString][] | +| | `Convert.ToString(DayOfWeek.Tuesday)` | `"Tuesday"` | Expression | Converts `DayOfWeek.Tuesday` to `"Tuesday"`. See [Convert.ToString][] | +| | `Convert.ToString(DayOfWeek.Wednesday)` | `"Wednesday"` | Expression | Converts `DayOfWeek.Wednesday` to `"Wednesday"`. See [Convert.ToString][] | +| | `Convert.ToString(DayOfWeek.Thursday)` | `"Thursday"` | Expression | Converts `DayOfWeek.Thursday` to `"Thursday"`. See [Convert.ToString][] | +| | `Convert.ToString(DayOfWeek.Friday)` | `"Friday"` | Expression | Converts `DayOfWeek.Friday` to `"Friday"`. See [Convert.ToString][] | +| | `Convert.ToString(DayOfWeek.Saturday)` | `"Saturday"` | Expression | Converts `DayOfWeek.Saturday` to `"Saturday"`. See [Convert.ToString][] | +| Use `Convert Object To Text` block | where `Object` property has a value of `DayOfWeek.Sunday` | `"Sunday"` | N/A | Converts `DayOfWeek.Sunday` to `"Sunday"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `DayOfWeek.Monday` | `"Monday"` | N/A | Converts `DayOfWeek.Monday` to `"Monday"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `DayOfWeek.Tuesday` | `"Tuesday"` | N/A | Converts `DayOfWeek.Tuesday` to `"Tuesday"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `DayOfWeek.Wednesday` | `"Wednesday"` | N/A | Converts `DayOfWeek.Wednesday` to `"Wednesday"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `DayOfWeek.Thursday` | `"Thursday"` | N/A | Converts `DayOfWeek.Thursday` to `"Thursday"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `DayOfWeek.Friday` | `"Friday"` | N/A | Converts `DayOfWeek.Friday` to `"Friday"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `DayOfWeek.Saturday` | `"Saturday"` | N/A | Converts `DayOfWeek.Saturday` to `"Saturday"`. See [Convert Object To Text][] | +| Use `Convert Object To Json` block | where `Object` property has a value of `DayOfWeek.Sunday` | `"0"` | N/A | Converts `DayOfWeek.Sunday` to `"0"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `DayOfWeek.Monday` | `"1"` | N/A | Converts `DayOfWeek.Monday` to `"1"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `DayOfWeek.Tuesday` | `"2"` | N/A | Converts `DayOfWeek.Tuesday` to `"2"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `DayOfWeek.Wednesday` | `"3"` | N/A | Converts `DayOfWeek.Wednesday` to `"3"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `DayOfWeek.Thursday` | `"4"` | N/A | Converts `DayOfWeek.Thursday` to `"4"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `DayOfWeek.Friday` | `"5"` | N/A | Converts `DayOfWeek.Friday` to `"5"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `DayOfWeek.Saturday` | `"6"` | N/A | Converts `DayOfWeek.Saturday` to `"6"`. See [Convert Object To Json][] | + +Please see [Formatting enumeration values][] for further information. + +### Convert DayOfWeek to a Number + +The following table shows some of the ways that a `DayOfWeek` can be converted to a number. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use [Explicit Casting][] | `(Int32)DayOfWeek.Sunday` | `0` | Expression | [Casts][Explicit Casting] `DayOfWeek.Sunday` to `0` | +| | `(Int32)DayOfWeek.Monday` | `1` | Expression | [Casts][Explicit Casting] `DayOfWeek.Monday` to `1` | +| | `(Int32)DayOfWeek.Tuesday` | `2` | Expression | [Casts][Explicit Casting] `DayOfWeek.Tuesday` to `2` | +| | `(Int32)DayOfWeek.Wednesday`| `3` | Expression | [Casts][Explicit Casting] `DayOfWeek.Wednesday` to `3` | +| | `(Int32)DayOfWeek.Thursday` | `4` | Expression | [Casts][Explicit Casting] `DayOfWeek.Thursday` to `4` | +| | `(Int32)DayOfWeek.Friday` | `5` | Expression | [Casts][Explicit Casting] `DayOfWeek.Friday` to `5` | +| | `(Int32)DayOfWeek.Saturday` | `6` | Expression | [Casts][Explicit Casting] `DayOfWeek.Saturday` to `6` | +| Use `Convert.ToInt32` | `Convert.ToInt32(DayOfWeek.Sunday)` | `0` | Expression | Converts `DayOfWeek.Sunday` to `0`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(DayOfWeek.Monday)` | `1` | Expression | Converts `DayOfWeek.Monday` to `1`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(DayOfWeek.Tuesday)` | `2` | Expression | Converts `DayOfWeek.Tuesday` to `2`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(DayOfWeek.Wednesday)`| `3` | Expression | Converts `DayOfWeek.Wednesday` to `3`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(DayOfWeek.Thursday)` | `4` | Expression | Converts `DayOfWeek.Thursday` to `4`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(DayOfWeek.Friday)` | `5` | Expression | Converts `DayOfWeek.Friday` to `5`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(DayOfWeek.Saturday)` | `6` | Expression | Converts `DayOfWeek.Saturday` to `6`. See [Convert.ToInt32][] | + +### Property Editor Support + +* The Expression Editor is available for [Input][] properties where the data type is `DayOfWeek`. +* The Literal Editor is available for [Input][] properties where the data type is `DayOfWeek`. +* The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `DayOfWeek`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +* [Int32][] +* [String][] + +### Related Concepts + +* [Working with Enums][] +* [Explicit Casting][] + +### External Documentation + +* [System.DayOfWeek][] +* [System.Enum][] + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Convert.ToInt32]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToInt32" >}} +[Convert.ToString]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToString" >}} + +[System.Enum]: {{< url path="MSDocs.DotNet.Api.System.Enum.MainDoc" >}} +[System.DayOfWeek]: {{< url path="MSDocs.DotNet.Api.System.DayOfWeek.MainDoc" >}} +[Enum.Parse]: {{< url path="MSDocs.DotNet.Api.System.Enum.Parse" >}} +[Enum.ToObject]: {{< url path="MSDocs.DotNet.Api.System.Enum.ToObject" >}} +[Enum.ToString]: {{< url path="MSDocs.DotNet.Api.System.Enum.ToString" >}} +[Instantiating an enumeration type]: {{< url path="MSDocs.DotNet.Api.System.Enum.InstantiatingAnEnum" >}} +[Formatting enumeration values]: {{< url path="MSDocs.DotNet.Api.System.Enum.FormattingEnumerationValues" >}} + +[Convert Object To Text]: {{< url path="Cortex.Reference.Blocks.Objects.ConvertObject.ConvertObjectToText.MainDoc" >}} +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} + +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[Working with Enums]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Enums.MainDoc" >}} +[Explicit Casting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectCasting.ExplicitCast" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/date-and-time/timeperiod.md b/content/en/docs/2024.11/Reference/data-types/date-and-time/timeperiod.md new file mode 100644 index 000000000..a2de619fd --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/date-and-time/timeperiod.md @@ -0,0 +1,60 @@ +--- +title: "TimePeriod" +linkTitle: "TimePeriod" +description: "Used to represent a time interval (duration of time or elapsed time) that is measured as a positive or negative number of `years`, `months`, `days`, `hours`, `minutes`, `seconds`, and `milliseconds`." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.DateAndTime.TimePeriod)

+ +{{% alert type="information" title="Information" %}} Improvements to this page are planned for the future. {{% /alert %}} + +## Summary + +The `TimePeriod` datatype is used to represent a time interval (duration of time or elapsed time) that is measured as a positive or negative number of `years`, `months`, `days`, `hours`, `minutes`, `seconds`, and `milliseconds`. + +| | | +|-|-| +| **Category:** | Date & Time | +| **Name:** | `TimePeriod` | +| **Full Name:** | `Cortex.DataTypes.DateAndTime.TimePeriod` | +| **Alias:** | N/A | +| **Description:** | Used to represent a time interval that is measured as a positive or negative number of `years`, `months`, `days`, `hours`, `minutes`, `seconds`, and `milliseconds`. | +| **Default Value:** | `null` | +| **Can be used as:** | `TimePeriod`, `object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `TimePeriod`. +- The Literal Editor is available for [Input][] properties where the data type is `TimePeriod`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `TimePeriod`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [TimeSpan] + +### Related Concepts + +- [Working with Date and Time][] + +### External Documentation + +None + +[Working with Date and Time]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.MainDoc" >}} + +[TimeSpan]: {{< url path="Cortex.Reference.DataTypes.DateAndTime.TimeSpan.MainDoc" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/date-and-time/timespan.md b/content/en/docs/2024.11/Reference/data-types/date-and-time/timespan.md new file mode 100644 index 000000000..5c0d0abc6 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/date-and-time/timespan.md @@ -0,0 +1,62 @@ +--- +title: "TimeSpan" +linkTitle: "TimeSpan" +description: "Used to represent a time interval (duration of time or elapsed time) that is measured as a positive or negative number of `days`, `hours`, `minutes`, `seconds`, and `milliseconds`. It can be used wherever a `TimePeriod` is expected, and wll be converted to a `TimePeriod` automatically." +--- + +# {{% param title %}} + +

(System.TimeSpan)

+ +{{% alert type="information" title="Information" %}} Improvements to this page are planned for the future. {{% /alert %}} + +## Summary + +Used to represent a time interval (duration of time or elapsed time) that is measured as a positive or negative number of `days`, `hours`, `minutes`, `seconds`, and `milliseconds`. It can be used wherever a `TimePeriod` is expected, and wll be converted to a `TimePeriod` automatically. + +| | | +|-|-| +| **Category:** | Date & Time | +| **Name:** | `TimeSpan` | +| **Full Name:** | `System.TimeSpan` | +| **Alias:** | N/A | +| **Description:** | Used to represent a time interval (duration of time or elapsed time) that is measured as a positive or negative number of `days`, `hours`, `minutes`, `seconds`, and `milliseconds`. It can be used wherever a `TimePeriod` is expected, and wll be converted to a `TimePeriod` automatically. | +| **Default Value:** | `new TimeSpan(0, 0, 0, 0, 0)` | +| **Can be used as:** | `TimeSpan`, `TimePeriod`, `object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `TimeSpan`. +- The Literal Editor is available for [Input][] properties where the data type is `TimeSpan`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `TimeSpan`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [TimePeriod][] + +### Related Concepts + +- [Working with Date and Time][] + +### External Documentation + +- [System.TimeSpan][] + +[Working with Date and Time]: {{< url path="Cortex.Reference.Concepts.WorkingWith.DateAndTime.MainDoc" >}} + +[TimePeriod]: {{< url path="Cortex.Reference.DataTypes.DateAndTime.TimePeriod.MainDoc" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[System.TimeSpan]: {{< url path="MSDocs.DotNet.Api.System.TimeSpan.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/email/_index.md b/content/en/docs/2024.11/Reference/data-types/email/_index.md new file mode 100644 index 000000000..8e6244a23 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/email/_index.md @@ -0,0 +1,6 @@ +--- +title: "Email" +linkTitle: "Email" +description: "Data types used for working with emails and connecting to mail servers." +weight: 1 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/data-types/email/authentication/EmailCredentials.md b/content/en/docs/2024.11/Reference/data-types/email/authentication/EmailCredentials.md new file mode 100644 index 000000000..6fc0e11da --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/email/authentication/EmailCredentials.md @@ -0,0 +1,12 @@ +--- +title: "EmailCredentials" +linkTitle: "EmailCredentials" +description: "Used to represent details required to authenticate with a mail server." +weight: 1 +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Email.Authentication.EmailCredentials)

+ +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Reference/data-types/email/authentication/EmailUserCredentials.md b/content/en/docs/2024.11/Reference/data-types/email/authentication/EmailUserCredentials.md new file mode 100644 index 000000000..28bdf04d9 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/email/authentication/EmailUserCredentials.md @@ -0,0 +1,12 @@ +--- +title: "EmailUserCredentials" +linkTitle: "EmailUserCredentials" +description: "Used to represent details required to authenticate with a mail server." +weight: 1 +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Email.Authentication.EmailUserCredentials)

+ +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Reference/data-types/email/authentication/IEmailCredentials.md b/content/en/docs/2024.11/Reference/data-types/email/authentication/IEmailCredentials.md new file mode 100644 index 000000000..308b27143 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/email/authentication/IEmailCredentials.md @@ -0,0 +1,12 @@ +--- +title: "IEmailCredentials" +linkTitle: "IEmailCredentials" +description: "Any data type used to represent details required to authenticate with a mail server." +weight: 1 +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Email.Authentication.IEmailCredentials)

+ +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Reference/data-types/email/authentication/_index.md b/content/en/docs/2024.11/Reference/data-types/email/authentication/_index.md new file mode 100644 index 000000000..8a7eef1cf --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/email/authentication/_index.md @@ -0,0 +1,6 @@ +--- +title: "Authentication" +linkTitle: "Authentication" +description: "Data types used for authenticating with mail servers." +weight: 1 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/data-types/email/basicemailsessiondetails.md b/content/en/docs/2024.11/Reference/data-types/email/basicemailsessiondetails.md new file mode 100644 index 000000000..0bcb0d90d --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/email/basicemailsessiondetails.md @@ -0,0 +1,139 @@ +--- +title: "BasicEmailSessionDetails" +linkTitle: "BasicEmailSessionDetails" +description: "Used to represent configuration for opening and maintaining a session with a mail server." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Email.BasicEmailSessionDetails)

+ +## Summary + +The `BasicEmailSessionDetails` data type is used to represent configuration for opening and maintaining a session with a mail server. + +| | | +|-|-| +| **Category:** | Email | +| **Name:** | `BasicEmailSessionDetails` | +| **Full Name:** | `Cortex.DataTypes.Email.BasicEmailSessionDetails` | +| **Alias:** | N/A | +| **Description:** | Configuration for opening and maintaining a session with a mail server. | +| **Default Value:** | null | +| **Can be used as:** | `BasicEmailSessionDetails`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### ServerDetails + +The ServerDetails are used to configure the [Host][] and [Port][] of the mail server to connect to and whether or not to [UseSsl][]. + +| | | +|--------------------|---------------------------| +| Data Type | [ServerDetails][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [ServerDetails][] with value shown below: | + +```json +{ + "Host": "", + "Port": 465, + "UseSsl": true +} +``` + +### Credentials + +The Credentials are used to configure the [Username][] and [Password][] used for authentication. + +| | | +|--------------------|---------------------------| +| Data Type | [UserCredentials][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [UserCredentials][] with value shown below: | + +```json +{ + "Domain": "", + "Username": "", + "Password": "" +} +``` + +## Remarks + +### Create a BasicEmailSessionDetails + +The following table shows some of the ways that `BasicEmailSessionDetails` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use a `BasicEmailSessionDetails` constructor | `new BasicEmailSessionDetails(serverDetails: new ServerDetails("smtp.gmail.com", 465, true), credentials: new UserCredentials("sender@gmail.com", "encryptedPassword"))` | `{"ServerDetails": {"Host": "smtp.gmail.com", "Port": 465, "UseSsl": true}, "Credentials": {"Domain": null, "Username": "sender@gmail.com", "Password": "encryptedPassword"}}` | Expression | The [Password][] property in the [UserCredentials][] must be encrypted, for more information on how to encrypt the [Password][], see [EncryptedText][]. | + +A `BasicEmailSessionDetails` can also be created using the Literal Editor by filling in the necessary values for the following properties: + +| Property | Data Type | Example | Notes | +|-|-|-|-| +| `ServerDetails` | `ServerDetails` | Host: `"smtp.gmail.com"`
Port: `465`
UseSsl: `true` | The [ServerDetails][ServerDetails Property] that are used to connect to the server. | +| `Credentials` | `UserCredentials` | Domain: `""`
Username: `"sender@gmail.com"`
Password: `"encryptedPassword"` | The [Credentials][Credentials Property] that are used for authentication on the server.

The [Password][] property in the [UserCredentials][] must be encrypted, for more information on how to encrypt the [Password][], see [EncryptedText][].| + +### Convert BasicEmailSessionDetails to Text + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `Convert Object To Json` block | where `Object` property has a value of `{"ServerDetails": {"Host": "smtp.gmail.com", "Port": 465, "UseSsl": true}, "Credentials": {"Domain": null, "Username": "sender@gmail.com", "Password": "encryptedPassword"}}` | `"{\r\n \"ServerDetails\": {\r\n \"Host\": \"smtp.gmail.com\",\r\n \"Port\": 465,\r\n \"UseSsl\": true\r\n },\r\n \"Credentials\": {\r\n \"Domain\": null,\r\n \"Username\": \"sender@gmail.com\",\r\n \"Password\": \"encryptedPassword\"\r\n }\r\n}"` | N/A | See [Convert Object To Json][] | + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `BasicEmailSessionDetails`. +- The Literal Editor is available for [Input][] properties where the data type is `BasicEmailSessionDetails`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `BasicEmailSessionDetails`. + +### Known Limitations + +Currently, this data type is not compatible for use with unauthenticated mail servers. + +This limitation may be removed in the future. + +## See Also + +### Related Data Types + +- [ServerDetails][] +- [UserCredentials][] +- [EncryptedText][] + +### Related Concepts + +- [Working with Email][] + +### External Documentation + +None + +[ServerDetails Property]: {{< ref "#serverdetails" >}} +[Credentials Property]: {{< ref "#credentials" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} + +[EncryptedText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptedText.MainDoc" >}} + +[ServerDetails]: {{< url path="Cortex.Reference.DataTypes.SessionDetails.ServerDetails.MainDoc" >}} +[Host]: {{< url path="Cortex.Reference.DataTypes.SessionDetails.ServerDetails.Host" >}} +[Port]: {{< url path="Cortex.Reference.DataTypes.SessionDetails.ServerDetails.Port" >}} +[UseSsl]: {{< url path="Cortex.Reference.DataTypes.SessionDetails.ServerDetails.UseSsl" >}} + +[UserCredentials]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.MainDoc" >}} +[Username]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.Username" >}} +[Password]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.Password" >}} + +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} + +[Working with Email]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Email.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/email/emailaddress.md b/content/en/docs/2024.11/Reference/data-types/email/emailaddress.md new file mode 100644 index 000000000..8f7cad95c --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/email/emailaddress.md @@ -0,0 +1,117 @@ +--- +title: "EmailAddress" +linkTitle: "EmailAddress" +description: "Used to represent an email address." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Email.EmailAddress)

+ +## Summary + +The `EmailAddress` data type is used to represent an email address. + +| | | +|-|-| +| **Category:** | Email | +| **Name:** | `EmailAddress` | +| **Full Name:** | `Cortex.DataTypes.Email.EmailAddress` | +| **Alias:** | N/A | +| **Description:** | An email address. | +| **Default Value:** | `null` | +| **Can be used as:** | `EmailAddress`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### Name + +Name is used to define the display name associated with the email address. + +This property is not required. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | [String][] with value `""` | + +### Address + +Address is used to define the email address. This must be a valid email address as outlined in [RFC 5321][]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [String][] with value `""` | + +## Remarks + +### Create an EmailAddress + +The following table shows some of the ways that an `EmailAddress` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use an `EmailAddress` constructor | `new EmailAddress(name: "Sender", address: "sender@outlook.com")`| `{"Name": "Sender", "Address": "sender@outlook.com"}` | Expression | Name specified | +| | `new EmailAddress(address: "sender@outlook.com")`| `{"Name": null, "Address": "sender@outlook.com"}` | Expression | Name not specified | + +An `EmailAddress` can also be created using the Literal Editor by filling in the necessary values for the following properties: + +| Property | Data Type | Example | Notes | +|-|-|-|-| +| `Name` | `String` | `"Sender"` | [Name][Name Property] defines the display name associated with the email address. | +| `Address` | `String` | `"sender@outlook.com"` | [Address][Address Property] defines the email address. | + +### Convert EmailAddress to Text + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `Convert Object To Json` block | where `Object` property has a value of `{"Name": "Sender", "Address": "sender@outlook.com"}` | `"{\r\n \"Name\": \"Sender\",\r\n \"Address\": \"sender@outlook.com\"\r\n}"` | N/A | See [Convert Object To Json][] | + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `EmailAddress`. +- The Literal Editor is available for [Input][] properties where the data type is `EmailAddress`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `EmailAddress`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [EmailMessage][] +- [String][] + +### Related Concepts + +- [Working with Email][] + +### External Documentation + +- [RFC 5321][] + +[Name Property]: {{< ref "#name" >}} +[Address Property]: {{< ref "#address" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} + +[EmailMessage]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessage.MainDoc" >}} + +[Working with Email]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Email.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} + +[RFC 5321]: {{< url path="IETF.Email.RFC5321" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/email/emailmessage.md b/content/en/docs/2024.11/Reference/data-types/email/emailmessage.md new file mode 100644 index 000000000..30479f19a --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/email/emailmessage.md @@ -0,0 +1,228 @@ +--- +title: "EmailMessage" +linkTitle: "EmailMessage" +description: "Used to represent an email message." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Email.EmailMessage)

+ +## Summary + +The `EmailMessage` data type is used to represent an email message. + +| | | +|-|-| +| **Category:** | Email | +| **Name:** | `EmailMessage` | +| **Full Name:** | `Cortex.DataTypes.Email.EmailMessage` | +| **Alias:** | N/A | +| **Description:** | An email message. | +| **Default Value:** | `null` | +| **Can be used as:** | `EmailMessage`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### To + +To is used to define the list of recipients for the email message. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[EmailAddress][]> | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [IList][]<[EmailAddress][]> with value `new List(){ new EmailAddress("") }` | + +### From + +From is used to define the sender of the email message. + +| | | +|--------------------|---------------------------| +| Data Type | [EmailAddress][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [EmailAddress][] with value shown below: | + +```json +{ + "Name": "", + "Address": "" +} +``` + +### Cc + +Cc is used to define the list of [CC][CC Glossary] recipients for the email message. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[EmailAddress][]> | +| Is [Advanced][] | `true` | +| Default Editor | [Expression][] | +| Default Value | [IList][]<[EmailAddress][]> with value `null` | + +### Bcc + +Bcc is used to define the list of [BCC][BCC Glossary] recipients for the email message. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[EmailAddress][]> | +| Is [Advanced][] | `true` | +| Default Editor | [Expression][] | +| Default Value | [IList][]<[EmailAddress][]> with value `null` | + +### Priority + +Priority is used to define the priority of the email message, for more information on the range of values this can take, see [EmailMessagePriority][]. + +| | | +|--------------------|---------------------------| +| Data Type | [EmailMessagePriority][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | [EmailMessagePriority][] with value `EmailMessagePriority.Normal` | + +### Subject + +Subject is used to define the subject of the email message. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [String][] with value `""` | + +### BodyFormat + +BodyFormat is used to define the format of the email body, for more information on the range of values this can take, see [EmailMessageBodyFormat][]. + +| | | +|--------------------|---------------------------| +| Data Type | [EmailMessageBodyFormat][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | [EmailMessageBodyFormat][] with value `EmailMessageBodyFormat.Text` | + +### Body + +The Body is used to define the body of the email message. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [String][] with value `$@""` | + +### Attachments + +The Attachments is used to define the list of attachments for the email message, where each item in the list is a path pointing to the attachment. + +The supported file path formats are dependent on the block being used: + +- [Send Email Using SMTP Server Block][Send Email Using SMTP Server Block Supported File Paths] +- [Send Email Using Gmail Block][Send Email Using Gmail Block Supported File Paths] + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[String][]> | +| Is [Advanced][] | `true` | +| Default Editor | [Expression][] | +| Default Value | [IList][]<[String][]> with value `null` | + +## Remarks + +### Create an EmailMessage + +The following table shows some of the ways that an `EmailMessage` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use an `EmailMessage` constructor | `new EmailMessage(to: new List(){ new EmailAddress("recipient@outlook.com") }, from: new EmailAddress("sender@outlook.com"), cc: null, bcc: null, priority: null, subject: "Example email subject", bodyFormat: null, body: "Example email body", attachments: null)` | `{"To": [{"Name": null, "Address": "recipient@outlook.com"}], "From": {"Name": null, "Address": "sender@outlook.com"}, "Cc": [], "Bcc": [], "Priority": null, "Subject": "Example email subject", "BodyFormat": null, "Body": "Example email body", "Attachments": []}`| Expression | No [Advanced Properties][Advanced] properties configured | +| | `new EmailMessage(to: new List(){ new EmailAddress("recipient@outlook.com") }, from: new EmailAddress("sender@outlook.com"), cc: new List(){ new EmailAddress("cc@outlook.com") }, bcc: new List(){ new EmailAddress("bcc@outlook.com") }, priority: EmailMessagePriority.Urgent, subject: "Example email subject", bodyFormat: EmailMessageBodyFormat.Text, body: "Example email body", attachments: new List(){ @"C:\attachment.txt" })` | `{"To": [{"Name": null, "Address": "recipient@outlook.com"}], "From": {"Name": null, "Address": "sender@outlook.com"}, "Cc": [{"Name": null, "Address": "cc@outlook.com"}], "Bcc": [{"Name": null, "Address": "bcc@outlook.com"}], "Priority": "EmailMessagePriority.Urgent", "Subject": "Example email subject", "BodyFormat": "EmailMessageBodyFormat.Text", "Body": "Example email body", "Attachments": ["C:\\attachment.txt"]}`| Expression | All [Advanced Properties][Advanced] properties configured | + +An `EmailMessage` can also be created using the Literal Editor by filling in the necessary values for the following properties: + +| Property | Data Type | Example | Notes | +|-|-|-|-| +| `To` | `IList` | `new List(){ "recipient@outlook.com" }` | [To][To Property] defines a list of recipients for the email message. | +| `From` | `EmailAddress` | Name: `Sender`
Address: `sender@outlook.com` | [From][From Property] defines the sender of the email message. | +| `Cc` | `IList` | `new List(){ "cc@outlook.com" }` | [Cc][Cc Property] defines a list of [CC][CC Glossary] recipients for the email message. | +| `Bcc` | `IList` | `new List(){ "bcc@outlook.com" }` | [Bcc][Bcc Property] defines a list of [BCC][BCC Glossary] recipients for the email message. | +| `Priority` | `EmailMessagePriority` | `Normal` | [Priority][Priority Property] defines the priority of the email message. | +| `Subject` | `String` | `Example subject` | [Subject][Subject Property] defines the subject of the email message. | +| `BodyFormat` | `EmailMessageBodyFormat` | `Text` | [BodyFormat][BodyFormat Property] defines the format of the email message body. | +| `Body` | `String` | `$@"Example body"` | [Body][Body Property] defines the body of the email message. | +| `Attachments` | `IList` | `new List(){ @"C:\attachment.txt" }` | [Attachments][Attachments Property] defines the list of attachments for the email message. | + +### Convert EmailMessage to Text + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `Convert Object To Json` block | where `Object` property has a value of `{"To": [{"Name": null, "Address": "recipient@outlook.com"}], "From": {"Name": null, "Address": "sender@outlook.com"}, "Cc": [{"Name": null, "Address": "cc@outlook.com"}], "Bcc": [{"Name": null, "Address": "bcc@outlook.com"}], "Priority": "EmailMessagePriority.Urgent", "Subject": "Example email subject", "BodyFormat": "EmailMessageBodyFormat.Text", "Body": "Example email body", "Attachments": ["C:\\attachment.txt"]}` | `"{\r\n \"To\": [\r\n {\r\n \"Name\": null,\r\n \"Address\": \"recipient@outlook.com\"\r\n }\r\n ],\r\n \"From\": {\r\n \"Name\": null,\r\n \"Address\": \"sender@outlook.com\"\r\n },\r\n \"Cc\": [\r\n {\r\n \"Name\": null,\r\n \"Address\": \"cc@outlook.com\"\r\n }\r\n ],\r\n \"Bcc\": [\r\n {\r\n \"Name\": null,\r\n \"Address\": \"bcc@outlook.com\"\r\n }\r\n ],\r\n \"Priority\": 2,\r\n \"Subject\": \"Example email subject\",\r\n \"BodyFormat\": 0,\r\n \"Body\": \"Example email body\",\r\n \"Attachments\": [\r\n \"C:\\attachment.txt\"\r\n ]\r\n}"` | N/A | See [Convert Object To Json][] | + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `EmailMessage`. +- The Literal Editor is available for [Input][] properties where the data type is `EmailMessage`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `EmailMessage`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [EmailAddress][] +- [EmailMessageBodyFormat][] +- [EmailMessagePriority][] +- [IList<TItem>][IList] +- [String][] + +### Related Concepts + +- [Working with Email][] + +### External Documentation + +None + +[To Property]: {{< ref "#to" >}} +[From Property]: {{< ref "#from" >}} +[Cc Property]: {{< ref "#cc" >}} +[Bcc Property]: {{< ref "#bcc" >}} +[Priority Property]: {{< ref "#priority" >}} +[Subject Property]: {{< ref "#subject" >}} +[BodyFormat Property]: {{< ref "#bodyformat" >}} +[Body Property]: {{< ref "#body" >}} +[Attachments Property]: {{< ref "#attachments" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} + +[EmailAddress]: {{< url path="Cortex.Reference.DataTypes.Email.EmailAddress.MainDoc" >}} +[EmailMessagePriority]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessagePriority.MainDoc" >}} +[EmailMessageBodyFormat]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessageBodyFormat.MainDoc" >}} + +[Working with Email]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Email.MainDoc" >}} + +[Send Email Using SMTP Server Block Supported File Paths]: {{< url path="Cortex.Reference.Blocks.Email.SendEmail.SendEmailUsingSmtpServer.SupportedFilePaths" >}} +[Send Email Using Gmail Block Supported File Paths]: {{< url path="Cortex.Reference.Blocks.GoogleWorkspace.Gmail.SendEmail.SendEmailUsingGmail.SupportedFilePaths" >}} + +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[BCC Glossary]: {{< url path="Cortex.Reference.Glossary.A-E.BCC" >}} +[CC Glossary]: {{< url path="Cortex.Reference.Glossary.A-E.CC" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/email/emailmessagebodyformat.md b/content/en/docs/2024.11/Reference/data-types/email/emailmessagebodyformat.md new file mode 100644 index 000000000..20171fec4 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/email/emailmessagebodyformat.md @@ -0,0 +1,150 @@ +--- +title: "EmailMessageBodyFormat" +linkTitle: "EmailMessageBodyFormat" +description: "Used to represent the format of an email message body." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Email.EmailMessageBodyFormat)

+ +## Summary + +The `EmailMessageBodyFormat` data type is used to represent the format of an email message body. + +`EmailMessageBodyFormat` is an [enum][Working with Enums] data type, which means it has a defined set of values, where each value has an associated [String][] name and [Int32][] value. + +| | | +|-|-| +| **Category:** | Email | +| **Name:** | `EmailMessageBodyFormat` | +| **Full Name:** | `Cortex.DataTypes.Email.EmailMessageBodyFormat` | +| **Alias:** | N/A | +| **Description:** | Format of an email message body. | +| **Size:** | `4` bytes | +| **Default Value:** | `EmailMessageBodyFormat.Text` | +| **Can be used as:** | `EmailMessageBodyFormat`, `Object`, `dynamic` | +| **Can be cast to:** | `Int16` (e.g. `(Int16)EmailMessageBodyFormat.Text` or `(System.Int16)EmailMessageBodyFormat.Text` or `(short)EmailMessageBodyFormat.Text`) | +| | `Int32` (e.g. `(Int32)EmailMessageBodyFormat.Text` or `(System.Int32)EmailMessageBodyFormat.Text` or `(int)EmailMessageBodyFormat.Text`) | +| | `Int64` (e.g. `(Int64)EmailMessageBodyFormat.Text` or `(System.Int64)EmailMessageBodyFormat.Text` or `(long)EmailMessageBodyFormat.Text`) | +| | `Single` (e.g. `(Single)EmailMessageBodyFormat.Text` or `(System.Single)EmailMessageBodyFormat.Text` or `(float)EmailMessageBodyFormat.Text`) | +| | `Double` (e.g. `(Double)EmailMessageBodyFormat.Text` or `(System.Double)EmailMessageBodyFormat.Text` or `(double)EmailMessageBodyFormat.Text`) | + +## Values + +### Text + +| | | +|-|-| +| **Name:** | Text | +| **Value:** | [Int32][] with value `0` | +| **Notes:** | Used when an email message body format is plain text. | + +### Html + +| | | +|-|-| +| **Name:** | Html | +| **Value:** | [Int32][] with value `1` | +| **Notes:** | Used when an email message body format is HTML. | + +## Remarks + +### Create an EmailMessageBodyFormat + +The following table shows some of the ways that `EmailMessageBodyFormat` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Declare an `EmailMessageBodyFormat` literal | `Text` | `EmailMessageBodyFormat.Text`| Literal | Indicates Text | +| | `Html` | `EmailMessageBodyFormat.Html`| Literal | Indicates Html | +| Use an `EmailMessageBodyFormat` expression | `EmailMessageBodyFormat.Text` | `EmailMessageBodyFormat.Text`| Expression | Indicates Text | +| | `EmailMessageBodyFormat.Html` | `EmailMessageBodyFormat.Html`| Expression | Indicates Html | +| Use [Explicit Casting][] | `(EmailMessageBodyFormat)0` | `EmailMessageBodyFormat.Text` | Expression | Indicates Text | +| | `(EmailMessageBodyFormat)1` | `EmailMessageBodyFormat.Html` | Expression | Indicates Html | +| Use `Enum.Parse` | `(EmailMessageBodyFormat)Enum.Parse(typeof(EmailMessageBodyFormat), "Text")` | `EmailMessageBodyFormat.Text` | Expression | Parses `"Text"` and converts it to `EmailMessageBodyFormat.Text`. See [Enum.Parse][] | +| | `(EmailMessageBodyFormat)Enum.Parse(typeof(EmailMessageBodyFormat), "Html")` | `EmailMessageBodyFormat.Html` | Expression | Parses `"Html"` and converts it to `EmailMessageBodyFormat.Html`. See [Enum.Parse][] | +| Use `Enum.ToObject` | `(EmailMessageBodyFormat)Enum.ToObject(typeof(EmailMessageBodyFormat), 0)` | `EmailMessageBodyFormat.Text` | Expression | Converts `0` to `EmailMessageBodyFormat.Text` value. See [Enum.ToObject][] | +| | `(EmailMessageBodyFormat)Enum.ToObject(typeof(EmailMessageBodyFormat), 1)` | `EmailMessageBodyFormat.Html` | Expression | Converts `1` to `EmailMessageBodyFormat.Html` value. See [Enum.ToObject][] | + +Please see [Instantiating an enumeration type][] for further information. + +### Convert EmailMessageBodyFormat to Text + +The following table shows some of the ways that a `EmailMessageBodyFormat` can be converted to text. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `ToString` | `EmailMessageBodyFormat.Text.ToString()` | `"Text"` | Expression | Converts `EmailMessageBodyFormat.Text` to `"Text"`. See [Enum.ToString][] | +| | `EmailMessageBodyFormat.Html.ToString()` | `"Html"` | Expression | Converts `EmailMessageBodyFormat.Html` to `"Html"`. See [Enum.ToString][] | +| Use `Convert.ToString` | `Convert.ToString(EmailMessageBodyFormat.Text)` | `"Text"` | Expression | Converts `EmailMessageBodyFormat.Text` to `"Text"`. See [Convert.ToString][] | +| | `Convert.ToString(EmailMessageBodyFormat.Html)` | `"Html"` | Expression | Converts `EmailMessageBodyFormat.Html` to `"Html"`. See [Convert.ToString][] | +| Use `Convert Object To Text` block | where `Object` property has a value of `EmailMessageBodyFormat.Text` | `"Text"` | N/A | Converts `EmailMessageBodyFormat.Text` to `"Text"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `EmailMessageBodyFormat.Html` | `"Html"` | N/A | Converts `EmailMessageBodyFormat.Html` to `"Html"`. See [Convert Object To Text][] | +| Use `Convert Object To Json` block | where `Object` property has a value of `EmailMessageBodyFormat.Text` | `"0"` | N/A | Converts `EmailMessageBodyFormat.Text` to `"0"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `EmailMessageBodyFormat.Html` | `"1"` | N/A | Converts `EmailMessageBodyFormat.Html` to `"1"`. See [Convert Object To Json][] | + +Please see [Formatting enumeration values][] for further information. + +### Convert EmailMessageBodyFormat to a Number + +The following table shows some of the ways that a `EmailMessageBodyFormat` can be converted to a number. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use [Explicit Casting][] | `(Int32)EmailMessageBodyFormat.Text` | `0` | Expression | [Casts][Explicit Casting] `EmailMessageBodyFormat.Text` to `0` | +| | `(Int32)EmailMessageBodyFormat.Html` | `1` | Expression | [Casts][Explicit Casting] `EmailMessageBodyFormat.Html` to `1` | +| Use `Convert.ToInt32` | `Convert.ToInt32(EmailMessageBodyFormat.Text)` | `0` | Expression | Converts `EmailMessageBodyFormat.Text` to `0`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(EmailMessageBodyFormat.Html)` | `1` | Expression | Converts `EmailMessageBodyFormat.Html` to `1`. See [Convert.ToInt32][] | + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `EmailMessageBodyFormat`. +- The Literal Editor is available for [Input][] properties where the data type is `EmailMessageBodyFormat`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `EmailMessageBodyFormat`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [EmailMessage][] +- [Int32][] +- [String][] + +### Related Concepts + +- [Explicit Casting][] +- [Working with Email][] +- [Working with Enums][] + +### External Documentation + +- [System.Enum][] + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[EmailMessage]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessage.MainDoc" >}} +[Working with Email]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Email.MainDoc" >}} +[Convert Object To Text]: {{< url path="Cortex.Reference.Blocks.Objects.ConvertObject.ConvertObjectToText.MainDoc" >}} +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} +[Working with Enums]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Enums.MainDoc" >}} +[Explicit Casting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectCasting.ExplicitCast" >}} +[Enum.Parse]: {{< url path="MSDocs.DotNet.Api.System.Enum.Parse" >}} +[Enum.ToObject]: {{< url path="MSDocs.DotNet.Api.System.Enum.ToObject" >}} +[Enum.ToString]: {{< url path="MSDocs.DotNet.Api.System.Enum.ToString" >}} +[Convert.ToInt32]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToInt32" >}} +[Convert.ToString]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToString" >}} + +[Instantiating an enumeration type]: {{< url path="MSDocs.DotNet.Api.System.Enum.InstantiatingAnEnum" >}} +[Formatting enumeration values]: {{< url path="MSDocs.DotNet.Api.System.Enum.FormattingEnumerationValues" >}} + +[System.Enum]: {{< url path="MSDocs.DotNet.Api.System.Enum.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/email/emailmessagepriority.md b/content/en/docs/2024.11/Reference/data-types/email/emailmessagepriority.md new file mode 100644 index 000000000..765780d30 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/email/emailmessagepriority.md @@ -0,0 +1,169 @@ +--- +title: "EmailMessagePriority" +linkTitle: "EmailMessagePriority" +description: "Used to represent the priority of an email message." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Email.EmailMessagePriority)

+ +## Summary + +The `EmailMessagePriority` data type is used to represent the priority of an email message. + +`EmailMessagePriority` is an [enum][Working with Enums] data type, which means it has a defined set of values, where each value has an associated [String][] name and [Int32][] value. + +| | | +|-|-| +| **Category:** | Email | +| **Name:** | `EmailMessagePriority` | +| **Full Name:** | `Cortex.DataTypes.Email.EmailMessagePriority` | +| **Alias:** | N/A | +| **Description:** | Priority of an email message. | +| **Size:** | `4` bytes | +| **Default Value:** | `EmailMessagePriority.Normal` | +| **Can be used as:** | `EmailMessagePriority`, `Object`, `dynamic` | +| **Can be cast to:** | `Int16` (e.g. `(Int16)EmailMessagePriority.Normal` or `(System.Int16)EmailMessagePriority.Normal` or `(short)EmailMessagePriority.Normal`) | +| | `Int32` (e.g. `(Int32)EmailMessagePriority.Normal` or `(System.Int32)EmailMessagePriority.Normal` or `(int)EmailMessagePriority.Normal`) | +| | `Int64` (e.g. `(Int64)EmailMessagePriority.Normal` or `(System.Int64)EmailMessagePriority.Normal` or `(long)EmailMessagePriority.Normal`) | +| | `Single` (e.g. `(Single)EmailMessagePriority.Normal` or `(System.Single)EmailMessagePriority.Normal` or `(float)EmailMessagePriority.Normal`) | +| | `Double` (e.g. `(Double)EmailMessagePriority.Normal` or `(System.Double)EmailMessagePriority.Normal` or `(double)EmailMessagePriority.Normal`) | + +## Values + +### Normal + +| | | +|-|-| +| **Name:** | Normal | +| **Value:** | [Int32][] with value `0` | +| **Notes:** | Used when an email is marked with normal priority. | + +### NonUrgent + +| | | +|-|-| +| **Name:** | NonUrgent | +| **Value:** | [Int32][] with value `1` | +| **Notes:** | Used when an email is marked with non-urgent priority. | + +### Urgent + +| | | +|-|-| +| **Name:** | Urgent | +| **Value:** | [Int32][] with value `2` | +| **Notes:** | Used when an email is marked with urgent priority. | + +## Remarks + +### Create an EmailMessagePriority + +The following table shows some of the ways that `EmailMessagePriority` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Declare an `EmailMessagePriority` literal | `Normal` | `EmailMessagePriority.Normal`| Literal | Indicates Normal | +| | `NonUrgent` | `EmailMessagePriority.NonUrgent`| Literal | Indicates NonUrgent | +| | `Urgent` | `EmailMessagePriority.Urgent`| Literal | Indicates Urgent | +| Use an `EmailMessagePriority` expression | `EmailMessagePriority.Normal` | `EmailMessagePriority.Normal`| Expression | Indicates Normal | +| | `EmailMessagePriority.NonUrgent` | `EmailMessagePriority.NonUrgent`| Expression | Indicates NonUrgent | +| | `EmailMessagePriority.Urgent` | `EmailMessagePriority.Urgent`| Expression | Indicates Urgent | +| Use [Explicit Casting][] | `(EmailMessagePriority)0` | `EmailMessagePriority.Normal` | Expression | Indicates Normal | +| | `(EmailMessagePriority)1` | `EmailMessagePriority.NonUrgent` | Expression | Indicates NonUrgent | +| | `(EmailMessagePriority)2` | `EmailMessagePriority.Urgent` | Expression | Indicates Urgent | +| Use `Enum.Parse` | `(EmailMessagePriority)Enum.Parse(typeof(EmailMessagePriority), "Normal")` | `EmailMessagePriority.Normal` | Expression | Parses `"Normal"` and converts it to `EmailMessagePriority.Normal`. See [Enum.Parse][] | +| | `(EmailMessagePriority)Enum.Parse(typeof(EmailMessagePriority), "NonUrgent")` | `EmailMessagePriority.NonUrgent` | Expression | Parses `"NonUrgent"` and converts it to `EmailMessagePriority.NonUrgent`. See [Enum.Parse][] | +| | `(EmailMessagePriority)Enum.Parse(typeof(EmailMessagePriority), "Urgent")` | `EmailMessagePriority.Urgent` | Expression | Parses `"Urgent"` and converts it to `EmailMessagePriority.Urgent`. See [Enum.Parse][] | +| Use `Enum.ToObject` | `(EmailMessagePriority)Enum.ToObject(typeof(EmailMessagePriority), 0)` | `EmailMessagePriority.Normal` | Expression | Converts `0` to `EmailMessagePriority.Normal` value. See [Enum.ToObject][] | +| | `(EmailMessagePriority)Enum.ToObject(typeof(EmailMessagePriority), 1)` | `EmailMessagePriority.NonUrgent` | Expression | Converts `1` to `EmailMessagePriority.NonUrgent` value. See [Enum.ToObject][] | +| | `(EmailMessagePriority)Enum.ToObject(typeof(EmailMessagePriority), 2)` | `EmailMessagePriority.Urgent` | Expression | Converts `2` to `EmailMessagePriority.Urgent` value. See [Enum.ToObject][] | + +Please see [Instantiating an enumeration type][] for further information. + +### Convert EmailMessagePriority to Text + +The following table shows some of the ways that a `EmailMessagePriority` can be converted to text. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `ToString` | `EmailMessagePriority.Normal.ToString()` | `"Normal"` | Expression | Converts `EmailMessagePriority.Normal` to `"Normal"`. See [Enum.ToString][] | +| | `EmailMessagePriority.NonUrgent.ToString()` | `"NonUrgent"` | Expression | Converts `EmailMessagePriority.NonUrgent` to `"NonUrgent"`. See [Enum.ToString][] | +| | `EmailMessagePriority.Urgent.ToString()` | `"Urgent"` | Expression | Converts `EmailMessagePriority.Urgent` to `"Urgent"`. See [Enum.ToString][] | +| Use `Convert.ToString` | `Convert.ToString(EmailMessagePriority.Normal)` | `"Normal"` | Expression | Converts `EmailMessagePriority.Normal` to `"Normal"`. See [Convert.ToString][] | +| | `Convert.ToString(EmailMessagePriority.NonUrgent)` | `"NonUrgent"` | Expression | Converts `EmailMessagePriority.NonUrgent` to `"NonUrgent"`. See [Convert.ToString][] | +| | `Convert.ToString(EmailMessagePriority.Urgent)` | `"Urgent"` | Expression | Converts `EmailMessagePriority.Urgent` to `"Urgent"`. See [Convert.ToString][] | +| Use `Convert Object To Text` block | where `Object` property has a value of `EmailMessagePriority.Normal` | `"Normal"` | N/A | Converts `EmailMessagePriority.Normal` to `"Normal"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `EmailMessagePriority.NonUrgent` | `"NonUrgent"` | N/A | Converts `EmailMessagePriority.NonUrgent` to `"NonUrgent"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `EmailMessagePriority.Urgent` | `"Urgent"` | N/A | Converts `EmailMessagePriority.Urgent` to `"Urgent"`. See [Convert Object To Text][] | +| Use `Convert Object To Json` block | where `Object` property has a value of `EmailMessagePriority.Normal` | `"0"` | N/A | Converts `EmailMessagePriority.Normal` to `"0"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `EmailMessagePriority.NonUrgent` | `"1"` | N/A | Converts `EmailMessagePriority.NonUrgent` to `"1"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `EmailMessagePriority.Urgent` | `"2"` | N/A | Converts `EmailMessagePriority.Urgent` to `"2"`. See [Convert Object To Json][] | + +Please see [Formatting enumeration values][] for further information. + +### Convert EmailMessagePriority to a Number + +The following table shows some of the ways that a `EmailMessagePriority` can be converted to a number. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use [Explicit Casting][] | `(Int32)EmailMessagePriority.Normal` | `0` | Expression | [Casts][Explicit Casting] `EmailMessagePriority.Normal` to `0` | +| | `(Int32)EmailMessagePriority.NonUrgent` | `1` | Expression | [Casts][Explicit Casting] `EmailMessagePriority.NonUrgent` to `1` | +| | `(Int32)EmailMessagePriority.Urgent` | `2` | Expression | [Casts][Explicit Casting] `EmailMessagePriority.Urgent` to `2` | +| Use `Convert.ToInt32` | `Convert.ToInt32(EmailMessagePriority.Normal)` | `0` | Expression | Converts `EmailMessagePriority.Normal` to `0`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(EmailMessagePriority.NonUrgent)` | `1` | Expression | Converts `EmailMessagePriority.NonUrgent` to `1`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(EmailMessagePriority.Urgent)` | `2` | Expression | Converts `EmailMessagePriority.Urgent` to `2`. See [Convert.ToInt32][] | + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `EmailMessagePriority`. +- The Literal Editor is available for [Input][] properties where the data type is `EmailMessagePriority`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `EmailMessagePriority`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [EmailMessage][] +- [Int32][] +- [String][] + +### Related Concepts + +- [Explicit Casting][] +- [Working with Email][] +- [Working with Enums][] + +### External Documentation + +- [System.Enum][] + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[EmailMessage]: {{< url path="Cortex.Reference.DataTypes.Email.EmailMessage.MainDoc" >}} +[Working with Email]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Email.MainDoc" >}} +[Convert Object To Text]: {{< url path="Cortex.Reference.Blocks.Objects.ConvertObject.ConvertObjectToText.MainDoc" >}} +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} +[Working with Enums]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Enums.MainDoc" >}} +[Explicit Casting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectCasting.ExplicitCast" >}} +[Enum.Parse]: {{< url path="MSDocs.DotNet.Api.System.Enum.Parse" >}} +[Enum.ToObject]: {{< url path="MSDocs.DotNet.Api.System.Enum.ToObject" >}} +[Enum.ToString]: {{< url path="MSDocs.DotNet.Api.System.Enum.ToString" >}} +[Convert.ToInt32]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToInt32" >}} +[Convert.ToString]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToString" >}} + +[Instantiating an enumeration type]: {{< url path="MSDocs.DotNet.Api.System.Enum.InstantiatingAnEnum" >}} +[Formatting enumeration values]: {{< url path="MSDocs.DotNet.Api.System.Enum.FormattingEnumerationValues" >}} + +[System.Enum]: {{< url path="MSDocs.DotNet.Api.System.Enum.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/email/emailsessionerrorcode.md b/content/en/docs/2024.11/Reference/data-types/email/emailsessionerrorcode.md new file mode 100644 index 000000000..4e0fa35d4 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/email/emailsessionerrorcode.md @@ -0,0 +1,265 @@ +--- +title: "EmailSessionErrorCode" +linkTitle: "EmailSessionErrorCode" +description: "Used to represent an error code explaining the reason an `EmailSessionException` occurred." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Email.EmailSessionErrorCode)

+ +## Summary + +The `EmailSessionErrorCode` data type is used to represent an error code explaining the reason an [EmailSessionException][] occurred. For more information on the exception itself, see [EmailSessionException][]. + +`EmailSessionErrorCode` is an [enum][Working with Enums] data type, which means it has a defined set of values, where each value has an associated [String][] name and [Int32][] value. + +| | | +|-|-| +| **Category:** | Email | +| **Name:** | `EmailSessionErrorCode` | +| **Full Name:** | `Cortex.DataTypes.Email.EmailSessionErrorCode` | +| **Alias:** | N/A | +| **Description:** | Error code explaining the reason an [EmailSessionException][] occurred. | +| **Size:** | `4` bytes | +| **Default Value:** | `(EmailSessionErrorCode)0` | +| **Can be used as:** | `EmailSessionErrorCode`, `Object`, `dynamic` | +| **Can be cast to:** | `Int16` (e.g. `(Int16)EmailSessionErrorCode.InvalidPort` or `(System.Int16)EmailSessionErrorCode.InvalidPort` or `(short)EmailSessionErrorCode.InvalidPort`) | +| | `Int32` (e.g. `(Int32)EmailSessionErrorCode.InvalidPort` or `(System.Int32)EmailSessionErrorCode.InvalidPort` or `(int)EmailSessionErrorCode.InvalidPort`) | +| | `Int64` (e.g. `(Int64)EmailSessionErrorCode.InvalidPort` or `(System.Int64)EmailSessionErrorCode.InvalidPort` or `(long)EmailSessionErrorCode.InvalidPort`) | +| | `Single` (e.g. `(Single)EmailSessionErrorCode.InvalidPort` or `(System.Single)EmailSessionErrorCode.InvalidPort` or `(float)EmailSessionErrorCode.InvalidPort`) | +| | `Double` (e.g. `(Double)EmailSessionErrorCode.InvalidPort` or `(System.Double)EmailSessionErrorCode.InvalidPort` or `(double)EmailSessionErrorCode.InvalidPort`) | + +## Values + +### InvalidPort + +| | | +|-|-| +| **Name:** | InvalidPort | +| **Value:** | [Int32][] with value `100` | +| **Notes:** | Used when an [EmailSessionException][] occured due to an invalid [Port][] being provided in [ServerDetails][]. See [Invalid Port][InvalidPort]. | + +### InvalidHost + +| | | +|-|-| +| **Name:** | InvalidHost | +| **Value:** | [Int32][] with value `101` | +| **Notes:** | Used when an [EmailSessionException][] occured due to an invalid [Host][] being provided in [ServerDetails][]. See [Invalid Host][InvalidHost]. | + +### SslRequired + +| | | +|-|-| +| **Name:** | SslRequired | +| **Value:** | [Int32][] with value `200` | +| **Notes:** | Used when an [EmailSessionException][] occured due to [UseSsl][] being set to `false` in [ServerDetails][] when trying to establish a connection on a [Port][] which requires [SSL][]. See [SSL Required][SslRequired]. | + +### SslUnsupported + +| | | +|-|-| +| **Name:** | SslUnsupported | +| **Value:** | [Int32][] with value `201` | +| **Notes:** | Used when an [EmailSessionException][] occured due to [UseSsl][] being set to `true` in [ServerDetails][] when trying to establish a connection on a [Port][] which does not support [SSL][]. See [SSL Unsupported][SslUnsupported Exception].| + +### InvalidUserCredentials + +| | | +|-|-| +| **Name:** | InvalidUserCredentials | +| **Value:** | [Int32][] with value `300` | +| **Notes:** | Used when an [EmailSessionException][] occured due to an invalid [Username][] and [Password][] combination being provided in [UserCredentials][]. See [Invalid User Credentials][InvalidUserCredentials]. | + +### InvalidCertificate + +| | | +|-|-| +| **Name:** | InvalidCertificate | +| **Value:** | [Int32][] with value `400` | +| **Notes:** | Used when an [EmailSessionException][] occured due to an invalid [CertificatePath][] and [CertificatePassword][] combination being provided in [GmailOAuthCertificateCredentials][]. See [Invalid SSL Certificate][InvalidSslCertificate]. | + +### InvalidGmailClientCredentials + +| | | +|-|-| +| **Name:** | InvalidGmailClientCredentials | +| **Value:** | [Int32][] with value `401` | +| **Notes:** | Used when an [EmailSessionException][] occured due to an invalid [FromAddress][] and [ClientId][] combination being provided in [GmailOAuthCertificateCredentials][]. See [Invalid Gmail Client Credentials][InvalidClientCredentials]. | + +## Remarks + +### Create an EmailSessionErrorCode + +The following table shows some of the ways that `EmailSessionErrorCode` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use an `EmailSessionErrorCode` expression | `EmailSessionErrorCode.InvalidPort` | `EmailSessionErrorCode.InvalidPort`| Expression | Indicates an [EmailSessionException][] occured due to an invalid [Port][] being provided in [ServerDetails][] | +| | `EmailSessionErrorCode.InvalidHost` | `EmailSessionErrorCode.InvalidHost`| Expression | Indicates an [EmailSessionException][] occured due to an invalid [Host][] being provided in [ServerDetails][] | +| | `EmailSessionErrorCode.SslRequired` | `EmailSessionErrorCode.SslRequired`| Expression | Indicates an [EmailSessionException][] occured due to [UseSsl][] being set to `false` in [ServerDetails][] when trying to establish a connection on a [Port][] which requires [SSL][] | +| | `EmailSessionErrorCode.SslUnsupported` | `EmailSessionErrorCode.SslUnsupported`| Expression | Indicates an [EmailSessionException][] occured due to [UseSsl][] being set to `true` in [ServerDetails][] when trying to establish a connection on a [Port][] which does not support [SSL][] | +| | `EmailSessionErrorCode.InvalidUserCredentials` | `EmailSessionErrorCode.InvalidUserCredentials`| Expression | Indicates an [EmailSessionException][] occured due to an invalid [Username][] and [Password][] combination being provided in [UserCredentials][] | +| | `EmailSessionErrorCode.InvalidCertificate` | `EmailSessionErrorCode.InvalidCertificate`| Expression | Indicates an [EmailSessionException][] occured due to an invalid [CertificatePath][] and [CertificatePassword][] combination being provided in [GmailOAuthCertificateCredentials][] | +| | `EmailSessionErrorCode.InvalidGmailClientCredentials` | `EmailSessionErrorCode.InvalidGmailClientCredentials`| Expression | Indicates an [EmailSessionException][] occured due to an invalid [FromAddress][] and [ClientId][] combination being provided in [GmailOAuthCertificateCredentials][] | +| Use [Explicit Casting][] | `(EmailSessionErrorCode)100` | `EmailSessionErrorCode.InvalidPort`| Expression | Indicates an [EmailSessionException][] occured due to an invalid [Port][] being provided in [ServerDetails][] | +| | `(EmailSessionErrorCode)101` | `EmailSessionErrorCode.InvalidHost`| Expression | Indicates an [EmailSessionException][] occured due to an invalid [Host][] being provided in [ServerDetails][] | +| | `(EmailSessionErrorCode)200` | `EmailSessionErrorCode.SslRequired`| Expression | Indicates an [EmailSessionException][] occured due to [UseSsl][] being set to `false` in [ServerDetails][] when trying to establish a connection on a [Port][] which requires [SSL][] | +| | `(EmailSessionErrorCode)201` | `EmailSessionErrorCode.SslUnsupported`| Expression | Indicates an [EmailSessionException][] occured due to [UseSsl][] being set to `true` in [ServerDetails][] when trying to establish a connection on a [Port][] which does not support [SSL][] | +| | `(EmailSessionErrorCode)300` | `EmailSessionErrorCode.InvalidUserCredentials`| Expression | Indicates an [EmailSessionException][] occured due to an invalid [Username][] and [Password][] combination being provided in [UserCredentials][] | +| | `(EmailSessionErrorCode)400` | `EmailSessionErrorCode.InvalidCertificate`| Expression | Indicates an [EmailSessionException][] occured due to an invalid [CertificatePath][] and [CertificatePassword][] combination being provided in [GmailOAuthCertificateCredentials][] | +| | `(EmailSessionErrorCode)401` | `EmailSessionErrorCode.InvalidGmailClientCredentials`| Expression | Indicates an [EmailSessionException][] occured due to an invalid [FromAddress][] and [ClientId][] combination being provided in [GmailOAuthCertificateCredentials][] | +| Use `Enum.Parse` | `(EmailSessionErrorCode)Enum.Parse(typeof(EmailSessionErrorCode), "InvalidPort")` | `EmailSessionErrorCode.InvalidPort`| Expression | Parses `"InvalidPort"` and converts it to `EmailSessionErrorCode.InvalidPort`. See [Enum.Parse][] | +| | `(EmailSessionErrorCode)Enum.Parse(typeof(EmailSessionErrorCode), "InvalidHost")` | `EmailSessionErrorCode.InvalidHost`| Expression | Parses `"InvalidHost"` and converts it to `EmailSessionErrorCode.InvalidHost`. See [Enum.Parse][] | +| | `(EmailSessionErrorCode)Enum.Parse(typeof(EmailSessionErrorCode), "SslRequired")` | `EmailSessionErrorCode.SslRequired`| Expression | Parses `"SslRequired"` and converts it to `EmailSessionErrorCode.SslRequired`. See [Enum.Parse][] | +| | `(EmailSessionErrorCode)Enum.Parse(typeof(EmailSessionErrorCode), "SslUnsupported")` | `EmailSessionErrorCode.SslUnsupported`| Expression | Parses `"SslUnsupported"` and converts it to `EmailSessionErrorCode.SslUnsupported`. See [Enum.Parse][] | +| | `(EmailSessionErrorCode)Enum.Parse(typeof(EmailSessionErrorCode), "InvalidUserCredentials")` | `EmailSessionErrorCode.InvalidUserCredentials`| Expression | Parses `"InvalidUserCredentials"` and converts it to `EmailSessionErrorCode.InvalidUserCredentials`. See [Enum.Parse][] | +| | `(EmailSessionErrorCode)Enum.Parse(typeof(EmailSessionErrorCode), "InvalidCertificate")` | `EmailSessionErrorCode.InvalidCertificate`| Expression | Parses `"InvalidCertificate"` and converts it to `EmailSessionErrorCode.InvalidCertificate`. See [Enum.Parse][] | +| | `(EmailSessionErrorCode)Enum.Parse(typeof(EmailSessionErrorCode), "InvalidGmailClientCredentials")` | `EmailSessionErrorCode.InvalidGmailClientCredentials`| Expression | Parses `"InvalidGmailClientCredentials"` and converts it to `EmailSessionErrorCode.InvalidGmailClientCredentials`. See [Enum.Parse][] | +| Use `Enum.ToObject` | `(EmailSessionErrorCode)Enum.ToObject(typeof(EmailSessionErrorCode), 100)` | `EmailSessionErrorCode.InvalidPort`| Expression | Converts `100` to `EmailSessionErrorCode.InvalidPort` value. See [Enum.ToObject][] | +| | `(EmailSessionErrorCode)Enum.ToObject(typeof(EmailSessionErrorCode), 101)` | `EmailSessionErrorCode.InvalidHost`| Expression | Converts `101` to `EmailSessionErrorCode.InvalidHost` value. See [Enum.ToObject][] | +| | `(EmailSessionErrorCode)Enum.ToObject(typeof(EmailSessionErrorCode), 200)` | `EmailSessionErrorCode.SslRequired`| Expression | Converts `200` to `EmailSessionErrorCode.SslRequired` value. See [Enum.ToObject][] | +| | `(EmailSessionErrorCode)Enum.ToObject(typeof(EmailSessionErrorCode), 201)` | `EmailSessionErrorCode.SslUnsupported`| Expression | Converts `201` to `EmailSessionErrorCode.SslUnsupported` value. See [Enum.ToObject][] | +| | `(EmailSessionErrorCode)Enum.ToObject(typeof(EmailSessionErrorCode), 300)` | `EmailSessionErrorCode.InvalidUserCredentials`| Expression | Converts `300` to `EmailSessionErrorCode.InvalidUserCredentials` value. See [Enum.ToObject][] | +| | `(EmailSessionErrorCode)Enum.ToObject(typeof(EmailSessionErrorCode), 400)` | `EmailSessionErrorCode.InvalidCertificate`| Expression | Converts `400` to `EmailSessionErrorCode.InvalidCertificate` value. See [Enum.ToObject][] | +| | `(EmailSessionErrorCode)Enum.ToObject(typeof(EmailSessionErrorCode), 401)` | `EmailSessionErrorCode.InvalidGmailClientCredentials`| Expression | Converts `401` to `EmailSessionErrorCode.InvalidGmailClientCredentials` value. See [Enum.ToObject][] | + +Please see [Instantiating an enumeration type][] for further information. + +### Convert EmailSessionErrorCode to Text + +The following table shows some of the ways that an `EmailSessionErrorCode` can be converted to text. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `ToString` | `EmailSessionErrorCode.InvalidPort.ToString()` | `"InvalidPort"` | Expression | Converts `EmailSessionErrorCode.InvalidPort` to `"InvalidPort"`. See [Enum.ToString][] | +| | `EmailSessionErrorCode.InvalidHost.ToString()` | `"InvalidHost"` | Expression | Converts `EmailSessionErrorCode.InvalidHost` to `"InvalidHost"`. See [Enum.ToString][] | +| | `EmailSessionErrorCode.SslRequired.ToString()` | `"SslRequired"` | Expression | Converts `EmailSessionErrorCode.SslRequired` to `"SslRequired"`. See [Enum.ToString][] | +| | `EmailSessionErrorCode.SslUnsupported.ToString()` | `"SslUnsupported"` | Expression | Converts `EmailSessionErrorCode.SslUnsupported` to `"SslUnsupported"`. See [Enum.ToString][] | +| | `EmailSessionErrorCode.InvalidUserCredentials.ToString()` | `"InvalidUserCredentials"` | Expression | Converts `EmailSessionErrorCode.InvalidUserCredentials` to `"InvalidUserCredentials"`. See [Enum.ToString][] | +| | `EmailSessionErrorCode.InvalidCertificate.ToString()` | `"InvalidCertificate"` | Expression | Converts `EmailSessionErrorCode.InvalidCertificate` to `"InvalidCertificate"`. See [Enum.ToString][] | +| | `EmailSessionErrorCode.InvalidGmailClientCredentials.ToString()` | `"InvalidGmailClientCredentials"` | Expression | Converts `EmailSessionErrorCode.InvalidGmailClientCredentials` to `"InvalidGmailClientCredentials"`. See [Enum.ToString][] | +| Use `Convert.ToString` | `Convert.ToString(EmailSessionErrorCode.InvalidPort)` | `"InvalidPort"` | Expression | Converts `EmailSessionErrorCode.InvalidPort` to `"InvalidPort"`. See [Convert.ToString][] | +| | `Convert.ToString(EmailSessionErrorCode.InvalidHost)` | `"InvalidHost"` | Expression | Converts `EmailSessionErrorCode.InvalidHost` to `"InvalidHost"`. See [Convert.ToString][] | +| | `Convert.ToString(EmailSessionErrorCode.SslRequired)` | `"SslRequired"` | Expression | Converts `EmailSessionErrorCode.SslRequired` to `"SslRequired"`. See [Convert.ToString][] | +| | `Convert.ToString(EmailSessionErrorCode.SslUnsupported)` | `"SslUnsupported"` | Expression | Converts `EmailSessionErrorCode.SslUnsupported` to `"SslUnsupported"`. See [Convert.ToString][] | +| | `Convert.ToString(EmailSessionErrorCode.InvalidUserCredentials)` | `"InvalidUserCredentials"` | Expression | Converts `EmailSessionErrorCode.InvalidUserCredentials` to `"InvalidUserCredentials"`. See [Convert.ToString][] | +| | `Convert.ToString(EmailSessionErrorCode.InvalidCertificate)` | `"InvalidCertificate"` | Expression | Converts `EmailSessionErrorCode.InvalidCertificate` to `"InvalidCertificate"`. See [Convert.ToString][] | +| | `Convert.ToString(EmailSessionErrorCode.InvalidGmailClientCredentials)` | `"InvalidGmailClientCredentials"` | Expression | Converts `EmailSessionErrorCode.InvalidGmailClientCredentials` to `"InvalidGmailClientCredentials"`. See [Convert.ToString][] | +| Use `Convert Object To Text` block | where `Object` property has a value of `EmailSessionErrorCode.InvalidPort` | `"InvalidPort"` | N/A | Converts `EmailSessionErrorCode.InvalidPort` to `"InvalidPort"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `EmailSessionErrorCode.InvalidHost` | `"InvalidHost"` | N/A | Converts `EmailSessionErrorCode.InvalidHost` to `"InvalidHost"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `EmailSessionErrorCode.SslRequired` | `"SslRequired"` | N/A | Converts `EmailSessionErrorCode.SslRequired` to `"SslRequired"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `EmailSessionErrorCode.SslUnsupported` | `"SslUnsupported"` | N/A | Converts `EmailSessionErrorCode.SslUnsupported` to `"SslUnsupported"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `EmailSessionErrorCode.InvalidUserCredentials` | `"InvalidUserCredentials"` | N/A | Converts `EmailSessionErrorCode.InvalidUserCredentials` to `"InvalidUserCredentials"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `EmailSessionErrorCode.InvalidCertificate` | `"InvalidCertificate"` | N/A | Converts `EmailSessionErrorCode.InvalidCertificate` to `"InvalidCertificate"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `EmailSessionErrorCode.InvalidGmailClientCredentials` | `"InvalidGmailClientCredentials"` | N/A | Converts `EmailSessionErrorCode.InvalidGmailClientCredentials` to `"InvalidGmailClientCredentials"`. See [Convert Object To Text][] | +| Use `Convert Object To Json` block | where `Object` property has a value of `EmailSessionErrorCode.InvalidPort` | `"100"` | N/A | Converts `EmailSessionErrorCode.InvalidPort` to `"100"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `EmailSessionErrorCode.InvalidHost` | `"101"` | N/A | Converts `EmailSessionErrorCode.InvalidHost` to `"101"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `EmailSessionErrorCode.SslRequired` | `"200"` | N/A | Converts `EmailSessionErrorCode.SslRequired` to `"200"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `EmailSessionErrorCode.SslUnsupported` | `"201"` | N/A | Converts `EmailSessionErrorCode.SslUnsupported` to `"201"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `EmailSessionErrorCode.InvalidUserCredentials` | `"300"` | N/A | Converts `EmailSessionErrorCode.InvalidUserCredentials` to `"300"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `EmailSessionErrorCode.InvalidCertificate` | `"400"` | N/A | Converts `EmailSessionErrorCode.InvalidCertificate` to `"400"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `EmailSessionErrorCode.InvalidGmailClientCredentials` | `"401"` | N/A | Converts `EmailSessionErrorCode.InvalidGmailClientCredentials` to `"401"`. See [Convert Object To Json][] | + +Please see [Formatting enumeration values][] for further information. + +### Convert EmailSessionErrorCode to a Number + +The following table shows some of the ways that an `EmailSessionErrorCode` can be converted to a number. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use [Explicit Casting][] | `(Int32)EmailSessionErrorCode.InvalidPort` | `100` | Expression | [Casts][Explicit Casting] `EmailSessionErrorCode.InvalidPort` to `100` | +| | `(Int32)EmailSessionErrorCode.InvalidHost` | `101` | Expression | [Casts][Explicit Casting] `EmailSessionErrorCode.InvalidHost` to `101` | +| | `(Int32)EmailSessionErrorCode.SslRequired` | `200` | Expression | [Casts][Explicit Casting] `EmailSessionErrorCode.SslRequired` to `200` | +| | `(Int32)EmailSessionErrorCode.SslUnsupported` | `201` | Expression | [Casts][Explicit Casting] `EmailSessionErrorCode.SslUnsupported` to `201` | +| | `(Int32)EmailSessionErrorCode.InvalidUserCredentials` | `300` | Expression | [Casts][Explicit Casting] `EmailSessionErrorCode.InvalidUserCredentials` to `300` | +| | `(Int32)EmailSessionErrorCode.InvalidCertificate` | `400` | Expression | [Casts][Explicit Casting] `EmailSessionErrorCode.InvalidCertificate` to `400` | +| | `(Int32)EmailSessionErrorCode.InvalidGmailClientCredentials` | `401` | Expression | [Casts][Explicit Casting] `EmailSessionErrorCode.InvalidGmailClientCredentials` to `401` | +| Use `Convert.ToInt32` | `Convert.ToInt32(EmailSessionErrorCode.InvalidPort)` | `100` | Expression | Converts `EmailSessionErrorCode.InvalidPort` to `100`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(EmailSessionErrorCode.InvalidHost)` | `101` | Expression | Converts `EmailSessionErrorCode.InvalidHost` to `101`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(EmailSessionErrorCode.SslRequired)` | `200` | Expression | Converts `EmailSessionErrorCode.SslRequired` to `200`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(EmailSessionErrorCode.SslUnsupported)` | `201` | Expression | Converts `EmailSessionErrorCode.SslUnsupported` to `201`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(EmailSessionErrorCode.InvalidUserCredentials)` | `300` | Expression | Converts `EmailSessionErrorCode.InvalidUserCredentials` to `300`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(EmailSessionErrorCode.InvalidCertificate)` | `400` | Expression | Converts `EmailSessionErrorCode.InvalidCertificate` to `400`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(EmailSessionErrorCode.InvalidGmailClientCredentials)` | `401` | Expression | Converts `EmailSessionErrorCode.InvalidGmailClientCredentials` to `401`. See [Convert.ToInt32][] | + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `EmailSessionErrorCode`. +- The Literal Editor is available for [Input][] properties where the data type is `EmailSessionErrorCode`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `EmailSessionErrorCode`. + +### Known Limitations + +Currently for the [SslUnsupported][] error code, there are numerous reasons for why the exception may have occurred. For more information, see [SSL Unsupported][SslUnsupported Exception]. + +In the future this may change. + +## See Also + +### Related Data Types + +- [EmailSessionException][] +- [Int32][] +- [String][] + +### Related Concepts + +- [Explicit Casting][] +- [Working with Email][] +- [Working with Enums][] + +### External Documentation + +- [System.Enum][] + +[SslUnsupported]: {{< ref "#sslunsupported">}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[ServerDetails]: {{< url path="Cortex.Reference.DataTypes.SessionDetails.ServerDetails.MainDoc" >}} +[Host]: {{< url path="Cortex.Reference.DataTypes.SessionDetails.ServerDetails.Host" >}} +[Port]: {{< url path="Cortex.Reference.DataTypes.SessionDetails.ServerDetails.Port" >}} +[UseSsl]: {{< url path="Cortex.Reference.DataTypes.SessionDetails.ServerDetails.UseSsl" >}} +[UserCredentials]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.MainDoc" >}} +[Username]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.Username" >}} +[Password]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.Password" >}} + +[EmailSessionException]: {{< url path="Cortex.Reference.Exceptions.Email.EmailSessionException.MainDoc" >}} +[InvalidPort]: {{< url path="Cortex.Reference.Exceptions.Email.EmailSessionException.InvalidPort" >}} +[InvalidHost]: {{< url path="Cortex.Reference.Exceptions.Email.EmailSessionException.InvalidHost" >}} +[SslRequired]: {{< url path="Cortex.Reference.Exceptions.Email.EmailSessionException.SslRequired" >}} +[SslUnsupported Exception]: {{< url path="Cortex.Reference.Exceptions.Email.EmailSessionException.SslUnsupported" >}} +[InvalidUserCredentials]: {{< url path="Cortex.Reference.Exceptions.Email.EmailSessionException.InvalidUserCredentials" >}} +[InvalidSslCertificate]: {{< url path="Cortex.Reference.Exceptions.Email.EmailSessionException.InvalidSslCertificate" >}} +[InvalidClientCredentials]: {{< url path="Cortex.Reference.Exceptions.Email.EmailSessionException.InvalidClientCredentials" >}} + +[GmailOAuthCertificateCredentials]: {{< url path="Cortex.Reference.DataTypes.GoogleWorkspace.Gmail.Authentication.OAuth.GmailOAuthCertificateCredentials.MainDoc" >}} +[CertificatePath]: {{< url path="Cortex.Reference.DataTypes.GoogleWorkspace.Gmail.Authentication.OAuth.GmailOAuthCertificateCredentials.CertificatePath" >}} +[CertificatePassword]: {{< url path="Cortex.Reference.DataTypes.GoogleWorkspace.Gmail.Authentication.OAuth.GmailOAuthCertificateCredentials.CertificatePassword" >}} +[FromAddress]: {{< url path="Cortex.Reference.DataTypes.GoogleWorkspace.Gmail.Authentication.OAuth.GmailOAuthCertificateCredentials.FromAddress" >}} +[ClientId]: {{< url path="Cortex.Reference.DataTypes.GoogleWorkspace.Gmail.Authentication.OAuth.GmailOAuthCertificateCredentials.ClientId" >}} + +[Instantiating an enumeration type]: {{< url path="MSDocs.DotNet.Api.System.Enum.InstantiatingAnEnum" >}} +[Formatting enumeration values]: {{< url path="MSDocs.DotNet.Api.System.Enum.FormattingEnumerationValues" >}} + +[Working with Email]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Email.MainDoc" >}} +[Convert Object To Text]: {{< url path="Cortex.Reference.Blocks.Objects.ConvertObject.ConvertObjectToText.MainDoc" >}} +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} +[Working with Enums]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Enums.MainDoc" >}} +[Explicit Casting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectCasting.ExplicitCast" >}} +[Enum.Parse]: {{< url path="MSDocs.DotNet.Api.System.Enum.Parse" >}} +[Enum.ToObject]: {{< url path="MSDocs.DotNet.Api.System.Enum.ToObject" >}} +[Enum.ToString]: {{< url path="MSDocs.DotNet.Api.System.Enum.ToString" >}} +[Convert.ToInt32]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToInt32" >}} +[Convert.ToString]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToString" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[SSL]: {{< url path="Cortex.Reference.Glossary.P-T.SSL" >}} + +[System.Enum]: {{< url path="MSDocs.DotNet.Api.System.Enum.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/exceptions/_index.md b/content/en/docs/2024.11/Reference/data-types/exceptions/_index.md new file mode 100644 index 000000000..300adeba7 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/exceptions/_index.md @@ -0,0 +1,6 @@ +--- +title: "Exceptions" +linkTitle: "Exceptions" +description: "Data types used for working with exceptions." +weight: 1 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/data-types/exceptions/exception.md b/content/en/docs/2024.11/Reference/data-types/exceptions/exception.md new file mode 100644 index 000000000..d441b009e --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/exceptions/exception.md @@ -0,0 +1,60 @@ +--- +title: "Exception" +linkTitle: "Exception" +description: "Any data type used to represent an exception." +--- + +# {{% param title %}} + +

(System.Exception)

+ +{{% alert type="information" title="Information" %}} Improvements to this page are planned for the future. {{% /alert %}} + +## Summary + +Any data type used to represent an exception. + +| | | +|-|-| +| **Category:** | Exception | +| **Name:** | `Exception` | +| **Full Name:** | `System.Exception` | +| **Alias:** | N/A | +| **Description:** | Any data type used to represent an exception. | +| **Default Value:** | `null` | +| **Can be used as:** | `Exception`, `object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `Exception`. +- The Literal Editor is available for [Input][] properties where the data type is `Exception`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `Exception`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +None + +### Related Concepts + +- [Exceptions][] + +### External Documentation + +- [System.Exception] + +[Exceptions]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Exceptions.MainDoc" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[System.Exception]: {{< url path="MSDocs.DotNet.Api.System.Exception" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/files-and-folders/FileSystemInformation.md b/content/en/docs/2024.11/Reference/data-types/files-and-folders/FileSystemInformation.md new file mode 100644 index 000000000..b4e8702b4 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/files-and-folders/FileSystemInformation.md @@ -0,0 +1,62 @@ +--- +title: "FileSystemInformation" +linkTitle: "FileSystemInformation" +description: "Any data type used to represent information about a file or folder." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.FilesAndFolders.FileSystemInformation)

+ +{{% alert type="information" title="Information" %}} Improvements to this page are planned for the future. {{% /alert %}} + +## Summary + +Any data type used to represent information about a file or folder. + +| | | +|-|-| +| **Category:** | Files & Folders | +| **Name:** | `FileSystemInformation` | +| **Full Name:** | `Cortex.DataTypes.FilesAndFolders.FileSystemInformation` | +| **Alias:** | N/A | +| **Description:** | Any data type used to represent information about a file or folder. | +| **Default Value:** | `null` | +| **Can be used as:** | `FileSystemInformation`, `object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `FileSystemInformation`. +- The Literal Editor is not available for [Input][] properties where the data type is `FileSystemInformation`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `FileSystemInformation`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [FileInformation][] +- [FolderInformation][] + +### Related Concepts + +- [Working With Files & Folders][] + +### External Documentation + +None + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[FileInformation]: {{< url path="Cortex.Reference.DataTypes.FilesAndFolders.FileInformation.MainDoc" >}} +[FolderInformation]: {{< url path="Cortex.Reference.DataTypes.FilesAndFolders.FolderInformation.MainDoc" >}} + +[Working With Files & Folders]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/files-and-folders/_index.md b/content/en/docs/2024.11/Reference/data-types/files-and-folders/_index.md new file mode 100644 index 000000000..ddae453f0 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/files-and-folders/_index.md @@ -0,0 +1,6 @@ +--- +title: "Files & Folders" +linkTitle: "Files & Folders" +description: "Data types used for working with files and folders." +weight: 1 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/data-types/files-and-folders/contentoptions.md b/content/en/docs/2024.11/Reference/data-types/files-and-folders/contentoptions.md new file mode 100644 index 000000000..90744c0e1 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/files-and-folders/contentoptions.md @@ -0,0 +1,76 @@ +--- +title: "ContentOptions" +linkTitle: "ContentOptions" +description: "Used to represent the set of options for the Get Folder Content block." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.FilesAndFolders.ContentOptions)

+ +{{% alert type="information" title="Information" %}} Improvements to this page are planned for the future. {{% /alert %}} + +## Summary + +The `ContentOptions` data type is used to represent the set of options for the [Get Folder Content][] block. + +`ContentOptions` is an [enum][Working with Enums] data type, which means it has a defined set of values, where each value has an associated [String][] name and [Int32][] value. + +| | | +|-|-| +| **Category:** | Files & Folders | +| **Name:** | `ContentOptions` | +| **Full Name:** | `Cortex.DataTypes.FilesAndFolders.ContentOptions` | +| **Alias:** | N/A | +| **Description:** | Used to represent the set of options for the [Get Folder Content][] block. | +| **Default Value:** | `(ContentOptions)0` | +| **Can be used as:** | `ContentOptions`, `Object`, `dynamic` | +| **Can be cast to:** | `Int16` (e.g. `(Int16)ContentOptions.Files` or `(System.Int16)ContentOptions.Files` or `(short)ContentOptions.Files`) | +| | `Int32` (e.g. `(Int32)ContentOptions.Files` or `(System.Int32)ContentOptions.Files` or `(int)ContentOptions.Files`) | +| | `Int64` (e.g. `(Int64)ContentOptions.Files` or `(System.Int64)ContentOptions.Files` or `(long)ContentOptions.Files`) | +| | `Single` (e.g. `(Single)ContentOptions.Files` or `(System.Single)ContentOptions.Files` or `(float)ContentOptions.Files`) | +| | `Double` (e.g. `(Double)ContentOptions.Files` or `(System.Double)ContentOptions.Files` or `(double)ContentOptions.Files`) | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `ContentOptions`. +- The Literal Editor is available for [Input][] properties where the data type is `ContentOptions`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `ContentOptions`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [Int32][] +- [String][] + +### Related Concepts + +- [Explicit Casting][] +- [Working with Enums][] +- [Working With Files & Folders][] + +### External Documentation + +- [System.Enum][] + +[Working with Enums]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Enums.MainDoc" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Get Folder Content]: {{< url path="Cortex.Reference.Blocks.FilesAndFolders.GetFolderContent.GetFolderContent.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[System.Enum]: {{< url path="MSDocs.DotNet.Api.System.Enum.MainDoc" >}} +[Explicit Casting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectCasting.ExplicitCast" >}} + +[Working With Files & Folders]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/files-and-folders/fileinformation.md b/content/en/docs/2024.11/Reference/data-types/files-and-folders/fileinformation.md new file mode 100644 index 000000000..7375d4493 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/files-and-folders/fileinformation.md @@ -0,0 +1,60 @@ +--- +title: "FileInformation" +linkTitle: "FileInformation" +description: "Used to represent information about a file." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.FilesAndFolders.FileInformation)

+ +{{% alert type="information" title="Information" %}} Improvements to this page are planned for the future. {{% /alert %}} + +## Summary + +The `FileInformation` data type is used to represent information about a file. + +| | | +|-|-| +| **Category:** | Files & Folders | +| **Name:** | `FileInformation` | +| **Full Name:** | `Cortex.DataTypes.FilesAndFolders.FileInformation` | +| **Alias:** | N/A | +| **Description:** | Used to represent information about a file. | +| **Default Value:** | `null` | +| **Can be used as:** | `FileInformation`, `FileSystemInformation`, `object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `FileInformation`. +- The Literal Editor is not available for [Input][] properties where the data type is `FileInformation`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `FileInformation`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [FolderInformation][] + +### Related Concepts + +- [Working With Files & Folders][] + +### External Documentation + +None + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[FolderInformation]: {{< url path="Cortex.Reference.DataTypes.FilesAndFolders.FolderInformation.MainDoc" >}} + +[Working With Files & Folders]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/files-and-folders/filematch.md b/content/en/docs/2024.11/Reference/data-types/files-and-folders/filematch.md new file mode 100644 index 000000000..82edbdf5e --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/files-and-folders/filematch.md @@ -0,0 +1,67 @@ +--- +title: "FileMatch" +linkTitle: "FileMatch" +description: "Used to represent a regex match of a line within a file. It contains all of the groups found in the regex pattern." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.FilesAndFolders.FileMatch)

+ +{{% alert type="information" title="Information" %}} Improvements to this page are planned for the future. {{% /alert %}} + +## Summary + +The `FileMatch` data type is used to represent a regex match of a line within a file. It contains all of the [Groups][Group] found in the regex pattern. + +| | | +|-|-| +| **Category:** | Files & Folders | +| **Name:** | `FileMatch` | +| **Full Name:** | `Cortex.DataTypes.FilesAndFolders.FileMatch` | +| **Alias:** | N/A | +| **Description:** | Used to represent a regex match of a line within a file. It contains all of the [Groups][Group] found in the regex pattern. | +| **Default Value:** | `null` | +| **Can be used as:** | `FileMatch`, `Match`, `object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `FileMatch`. +- The Literal Editor is not available for [Input][] properties where the data type is `FileMatch`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `FileMatch`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [Group][] +- [Int32][] +- [Match][] +- [String][] + +### Related Concepts + +- [Working With Files & Folders][] + +### External Documentation + +None + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Group]: {{}} +[Match]: {{}} + +[Int32]: {{}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[Working With Files & Folders]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/files-and-folders/folderinformation.md b/content/en/docs/2024.11/Reference/data-types/files-and-folders/folderinformation.md new file mode 100644 index 000000000..e065fb162 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/files-and-folders/folderinformation.md @@ -0,0 +1,60 @@ +--- +title: "FolderInformation" +linkTitle: "FolderInformation" +description: "Used to represent information about a folder." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.FilesAndFolders.FolderInformation)

+ +{{% alert type="information" title="Information" %}} Improvements to this page are planned for the future. {{% /alert %}} + +## Summary + +The `FolderInformation` data type is used to represent information about a folder. + +| | | +|-|-| +| **Category:** | Files & Folders | +| **Name:** | `FolderInformation` | +| **Full Name:** | `Cortex.DataTypes.FilesAndFolders.FolderInformation` | +| **Alias:** | N/A | +| **Description:** | Used to represent information about a folder. | +| **Default Value:** | `null` | +| **Can be used as:** | `FolderInformation`, `FileSystemInformation`, `object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `FolderInformation`. +- The Literal Editor is not available for [Input][] properties where the data type is `FolderInformation`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `FolderInformation`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [FileInformation][] + +### Related Concepts + +- [Working With Files & Folders][] + +### External Documentation + +None + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[FileInformation]: {{< url path="Cortex.Reference.DataTypes.FilesAndFolders.FileInformation.MainDoc" >}} + +[Working With Files & Folders]: {{< url path="Cortex.Reference.Concepts.WorkingWith.FilesAndFolders.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/flows/_index.md b/content/en/docs/2024.11/Reference/data-types/flows/_index.md new file mode 100644 index 000000000..89e426e6d --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/flows/_index.md @@ -0,0 +1,6 @@ +--- +title: "Flows" +linkTitle: "Flows" +description: "Data types used for working with Flows." +weight: 1 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/data-types/flows/flowreference.md b/content/en/docs/2024.11/Reference/data-types/flows/flowreference.md new file mode 100644 index 000000000..3cfbf6b59 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/flows/flowreference.md @@ -0,0 +1,78 @@ +--- +title: "FlowReference" +linkTitle: "FlowReference" +description: "Used to reference a Flow using its Id." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Flows.FlowReference)

+ +## Summary + +A `FlowReference` is used to reference a flow that will be called using the [Run Flow][] block. + +| | | +|-|-| +| **Category:** | Flows | +| **Name:** | `FlowReference` | +| **Full Name:** | `Cortex.DataTypes.Flows.FlowReference` | +| **Alias:** | N/A | +| **Description:** | Used to reference a Flow using its Id. | +| **Default Value:** | `null` | +| **Can be used as:** | `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### Id + +The unique Id of the flow that is referenced. + +| | | +|--------------------|---------------------------| +| Data Type | [Guid][] | +| Is Advanced | `false` | +| Default Editor | [Literal][] | +| Default Value | No value (defaults to `00000000-0000-0000-0000-000000000000`) | + +## Remarks + +### Create a FlowReference + +Currently a FlowReference can only created by using the [Flow Property][] of the [Run Flow][] block. Using the editor to select a flow (by its Name or Id) will create a flow reference for the block to use. + +### Property Editor Support + +- The Expression Editor is not available for [Input][], [InputOutput][] and [Output][] properties where the data type is `FlowReference`. +- The Literal Editor is available for [Input][] properties where the data type is `FlowReference`. +- The Variable Editor is available for [Output][] properties where the data type is `FlowReference`. + +### Known limitations + +None + +## See Also + +### Related Data Types + +- [Guid][] + +### Related Concepts + +- [Flows][] + +### External Documentation + +None + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Flows]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Flows.MainDoc" >}} + +[Guid]: {{< url path="Cortex.Reference.DataTypes.Other.Guid.MainDoc" >}} + +[Run Flow]: {{< url path="Cortex.Reference.Blocks.Flows.RunFlow.RunFlow.MainDoc" >}} +[Flow Property]: {{< url path="Cortex.Reference.Blocks.Flows.RunFlow.RunFlow.FlowProperty" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/flows/inputvariables.md b/content/en/docs/2024.11/Reference/data-types/flows/inputvariables.md new file mode 100644 index 000000000..9ad759806 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/flows/inputvariables.md @@ -0,0 +1,83 @@ +--- +title: "InputVariables" +linkTitle: "InputVariables" +description: "A collection of flow Input Variables." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Flows.InputVariables)

+ +## Summary + +`InputVariables` are used to pass data into a called flow when using the [Run Flow][] block. + +| | | +|-|-| +| **Category:** | Flows | +| **Name:** | `InputVariables` | +| **Full Name:** | `Cortex.DataTypes.Flows.InputVariables` | +| **Alias:** | N/A | +| **Description:** | A collection of flow Input Variables. | +| **Default Value:** | `null` | +| **Can be used as:** | `Structure`, `IDictionary`, `IEnumerable`, `Object`, `dynamic` | +| | `IEnumerable>` (e.g. where `InputVariables` is `IDictionary` and `IEnumerable>` is `IEnumerable>`) | +| **Can be cast to:** | N/A | + +## Remarks + +### Create an InputVariables + +The following table shows some of the ways that an `InputVariables` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use an `InputVariables` expression | `new InputVariables()` | `{}` | Expression | `InputVariables` containing zero items | +| | ``new InputVariables() { { "Variable1", true } }`` | `{ "Variable1": true }` | Expression | `InputVariables` containing one Boolean item with a String key | +| | ``new InputVariables() { { "Variable1", true }, { "Variable2", 100 } }`` | `{ "Variable1": true, "Variable2": 100 }` | Expression | `InputVariables` containing Boolean and Int32 items with String keys | + +An `InputVariables` can also be created using the Literal Editor when using the [Run Flow][] block. For more information see the [Inputs Property][] of the [Run Flow][] block. + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `InputVariables`. +- The Literal Editor is available for [Input][] properties where the data type is `InputVariables`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `InputVariables`. + +### Known limitations + +None + +## See Also + +### Related Data Types + +- [IEnumerable][] +- [IEnumerable<TItem>][] +- [IDictionary<TKey, TItem>][] +- [Structure][] + +### Related Concepts + +- [Flows][] +- [Variables][] +- [Input Variables][] + +### External Documentation + +None + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[Flows]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Flows.MainDoc" >}} +[Variables]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.MainDoc" >}} +[Input Variables]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.WhatIsAVariable.FlowInputVariable" >}} + +[Run Flow]: {{< url path="Cortex.Reference.Blocks.Flows.RunFlow.RunFlow.MainDoc" >}} +[Inputs Property]: {{< url path="Cortex.Reference.Blocks.Flows.RunFlow.RunFlow.InputsProperty" >}} + +[IEnumerable]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable.MainDoc" >}} +[IEnumerable<TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.IEnumerable_TItem.MainDoc" >}} +[IDictionary<TKey, TItem>]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} +[Structure]: {{< url path="Cortex.Reference.DataTypes.Collections.Structure.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/google-workspace/_index.md b/content/en/docs/2024.11/Reference/data-types/google-workspace/_index.md new file mode 100644 index 000000000..862a37f7d --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/google-workspace/_index.md @@ -0,0 +1,6 @@ +--- +title: "Google Workspace" +linkTitle: "Google Workspace" +description: "Data types used for working with Google Workspace blocks." +weight: 1 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/data-types/google-workspace/gmail/_index.md b/content/en/docs/2024.11/Reference/data-types/google-workspace/gmail/_index.md new file mode 100644 index 000000000..e5f9ae55c --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/google-workspace/gmail/_index.md @@ -0,0 +1,6 @@ +--- +title: "Gmail" +linkTitle: "Gmail" +description: "Data types used for working with Gmail blocks." +weight: 1 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/data-types/google-workspace/gmail/authentication/_index.md b/content/en/docs/2024.11/Reference/data-types/google-workspace/gmail/authentication/_index.md new file mode 100644 index 000000000..f2d4b5ea2 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/google-workspace/gmail/authentication/_index.md @@ -0,0 +1,6 @@ +--- +title: "Authentication" +linkTitle: "Authentication" +description: "Data types used for authentication when working with Gmail blocks." +weight: 1 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/data-types/google-workspace/gmail/authentication/oauth/_index.md b/content/en/docs/2024.11/Reference/data-types/google-workspace/gmail/authentication/oauth/_index.md new file mode 100644 index 000000000..ba8a0a74b --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/google-workspace/gmail/authentication/oauth/_index.md @@ -0,0 +1,6 @@ +--- +title: "OAuth" +linkTitle: "OAuth" +description: "Data types used for authentication via OAuth when working with Gmail blocks." +weight: 1 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/data-types/google-workspace/gmail/authentication/oauth/gmailoauthcertificatecredentials.md b/content/en/docs/2024.11/Reference/data-types/google-workspace/gmail/authentication/oauth/gmailoauthcertificatecredentials.md new file mode 100644 index 000000000..602f25759 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/google-workspace/gmail/authentication/oauth/gmailoauthcertificatecredentials.md @@ -0,0 +1,151 @@ +--- +title: "GmailOAuthCertificateCredentials" +linkTitle: "GmailOAuthCertificateCredentials" +description: "Used to represent configuration for authentication via OAuth when establishing a connection with a mail server hosted by Gmail." +weight: 1 +--- + +# {{% param title %}} + +

(Cortex.DataTypes.GoogleWorkspace.Gmail.Authentication.OAuth.GmailOAuthCertificateCredentials)

+ +## Summary + +The `GmailOAuthCertificateCredentials` data type is used to represent configuration for authentication via OAuth when establishing a connection with a mail server hosted by [Gmail][]. For more information on how to set up a [Gmail][] account so that this authentication mechanism can be used, see [Setting up a Gmail account for OAuth authentication][] + +| | | +|-|-| +| **Category:** | Gmail | +| **Name:** | `GmailOAuthCertificateCredentials` | +| **Full Name:** | `Cortex.DataTypes.GoogleWorkspace.Gmail.Authentication.OAuth.GmailOAuthCertificateCredentials` | +| **Alias:** | N/A | +| **Description:** | Configuration for authentication via OAuth when establishing a connection with a mail server hosted by [Gmail][]. | +| **Default Value:** | null | +| **Can be used as:** | `GmailOAuthCertificateCredentials`, `EmailCredentials`, `IEmailCredentials`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### CertificatePath + +The CertificatePath is used to define the path pointing to the certificate (.p12) file to be used for authentication via OAuth, the certificate file must be accessible from the server executing the flow. The value of this property may optionally be encrypted; for more information on how to encrypt this property, see [EncryptableText][]. + +| | | +|--------------------|---------------------------| +| Data Type | [EncryptableText][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [EncryptableText][] with value `$@""` | + +### CertificatePassword + +The CertificatePassword is used to define the password associated with the certificate file at the [CertificatePath][CertificatePath Property]. This property is an [EncryptedText][] and so it must be encrypted; for more information on how to encrypt the password, see [EncryptedText][]. + +| | | +|--------------------|---------------------------| +| Data Type | [EncryptedText][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [EncryptedText][] with value `""` | + +### FromAddress + +The FromAddress is used to define the address of the account used to set up the client application created to allow authentication via OAuth. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [String][] with value `""` | + +### ClientId + +The ClientId is used to define the client ID of the client application created to allow authentication via OAuth. The value of this property may optionally be encrypted; for more information on how to encrypt this property, see [EncryptableText][]. + +| | | +|--------------------|---------------------------| +| Data Type | [EncryptableText][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [EncryptableText][] with value `""` | + +## Remarks + +### Create a GmailOAuthCertificateCredentials + +The following table shows how a `GmailOAuthCertificateCredentials` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use a `GmailOAuthCertificateCredentials` constructor | `new GmailOAuthCertificateCredentials(certificatePath: @"C:\certificate.p12", certificatePassword: "encryptedPassword", fromAddress: "sender@gmail.com", clientId: "clientId")` | `{"CertificatePath": "C:\\certificate.p12", "CertificatePassword": "encryptedPassword", "FromAddress": "sender@gmail.com", "ClientId": "clientId"}` | Expression | N/A | + +A `GmailOAuthCertificateCredentials` can also be created using the Literal Editor by filling in the necessary values for the following properties: + +| Property | Data Type | Example | Notes | +|-|-|-|-| +| `CertificatePath` | `EncryptableText` | `$@"C:\certificate.p12"` | The [CertificatePath][CertificatePath Property] defines the path pointing to the certificate (.p12) file to be used for authentication via OAuth. | +| `CertificatePassword` | `EncryptedText` | `"encryptedPassword"` | The [CertificatePassword][CertificatePassword Property] defines the password associated with the certificate file at the [CertificatePath][CertificatePath Property]. | +| `FromAddress` | `String` | `"sender@gmail.com"` | The [FromAddress][FromAddress Property] defines the address of the account used to set up the client application created to allow authentication via OAuth. | +| `ClientId` | `EncryptableText` | `"clientid"` | The [ClientId][ClientId Property] defines the client ID of the client application created to allow authentication via OAuth. | + +### Convert GmailOAuthCertificateCredentials to Text + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `Convert Object To Json` block | where `Object` property has a value of `{"CertificatePath": "C:\\certificate.p12", "CertificatePassword": "encryptedPassword", "FromAddress": "sender@gmail.com", "ClientId": "clientId"}` | `"{\r\n \"CertificatePath\": \"C:\\\\certificate.p12\",\r\n \"CertificatePassword\": \"encryptedPassword\",\r\n \"FromAddress\": \"sender@gmail.com\",\r\n \"ClientId\": \"clientId\"\r\n}"` | N/A | See [Convert Object To Json][] | + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `GmailOAuthCertificateCredentials`. +- The Literal Editor is available for [Input][] properties where the data type is `GmailOAuthCertificateCredentials`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `GmailOAuthCertificateCredentials`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [EmailCredentials][] +- [EncryptedText][] +- [EncryptableText][] +- [GmailSessionDetails][] +- [IEmailCredentials][] + +### Related Concepts + +- [Working with Email][] + +### External Documentation + +None + +[CertificatePath Property]: {{< ref "#certificatepath" >}} +[CertificatePassword Property]: {{< ref "#certificatepassword" >}} +[FromAddress Property]: {{< ref "#fromaddress" >}} +[ClientId Property]: {{< ref "#clientid" >}} + +[GmailSessionDetails]: {{< url path="Cortex.Reference.DataTypes.GoogleWorkspace.Gmail.GmailSessionDetails.MainDoc" >}} +[IEmailCredentials]: {{< url path="Cortex.Reference.DataTypes.Email.Authentication.IEmailCredentials.MainDoc" >}} +[EmailCredentials]: {{< url path="Cortex.Reference.DataTypes.Email.Authentication.EmailCredentials.MainDoc" >}} + +[EncryptableText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptableText.MainDoc" >}} +[EncryptedText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptedText.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} + +[Working with Email]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Email.MainDoc" >}} +[Setting up a Gmail account for OAuth authentication]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Email.Authentication.SettingUpOAuthGmail" >}} + +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} + +[Gmail]: {{< url path="Cortex.Reference.Glossary.F-J.Gmail" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/google-workspace/gmail/gmailsessiondetails.md b/content/en/docs/2024.11/Reference/data-types/google-workspace/gmail/gmailsessiondetails.md new file mode 100644 index 000000000..c12795552 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/google-workspace/gmail/gmailsessiondetails.md @@ -0,0 +1,161 @@ +--- +title: "GmailSessionDetails" +linkTitle: "GmailSessionDetails" +description: "Used to represent configuration for opening and maintaining a session with a mail server hosted by Gmail." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.GoogleWorkspace.Gmail.GmailSessionDetails)

+ +## Summary + +The `GmailSessionDetails` data type is used to represent configuration for opening and maintaining a session with a mail server hosted by [Gmail][]. + +| | | +|-|-| +| **Category:** | Gmail | +| **Name:** | `GmailSessionDetails` | +| **Full Name:** | `Cortex.DataTypes.GoogleWorkspace.Gmail.GmailSessionDetails` | +| **Alias:** | N/A | +| **Description:** | Configuration for opening and maintaining a session with a mail server hosted by [Gmail][]. | +| **Default Value:** | null | +| **Can be used as:** | `GmailSessionDetails`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### ServerDetails + +The ServerDetails are used to configure the [Host][] and [Port][] of the mail server to connect to and whether or not to [UseSsl][]. + +| | | +|--------------------|---------------------------| +| Data Type | [ServerDetails][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [ServerDetails][] with value shown below: | + +```json +{ + "Host": "", + "Port": 465, + "UseSsl": true +} +``` + +### Credentials + +The Credentials are used to configure the information required for authentication with the mail server. There are multiple data types that can be used: + +- [UserCredentials][]: Used to configure the [Username][] and [Password][] for Basic authentication +- [GmailOAuthCertificateCredentials][]: Used to configure the [CertificatePath][], [CertificatePassword][], [FromAddress][] and [ClientId][] for OAuth + +| | | +|--------------------|---------------------------| +| Data Type | [IEmailCredentials][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [UserCredentials][] with value shown below: | + +```json +{ + "Domain": "", + "Username": "", + "Password": "" +} +``` + +## Remarks + +### Create a GmailSessionDetails + +The following table shows some of the ways that `GmailSessionDetails` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use a `GmailSessionDetails` constructor | `new GmailSessionDetails(serverDetails: new ServerDetails("smtp.gmail.com", 465, true), credentials: new UserCredentials("sender@gmail.com", "encryptedPassword"))` | `{"ServerDetails": {"Host": "smtp.gmail.com", "Port": 465, "UseSsl": true}, "Credentials": {"Domain": null, "Username": "sender@gmail.com", "Password": "encryptedPassword"}}` | Expression | The [Password][] property in the [UserCredentials][] can be the password associated with the username (if the account is associated with a Google Workspace with access enabled for less secure apps) or an app password, for more information, see [Setting up an app password for a Gmail account][].

The [Password][] property must be encrypted, for more information on how to encrypt the password, see [EncryptedText][]. | +| | `new GmailSessionDetails(serverDetails: new ServerDetails("smtp.gmail.com", 465, true), credentials: new GmailOAuthCertificateCredentials(@"C:\certificate.p12", "encryptedPassword", "sender@gmail.com", "clientId")` | `{"ServerDetails": {"Host": "smtp.gmail.com", "Port": 465, "UseSsl": true}, "Credentials": {"CertificatePath": "C:\\certificate.p12", "CertificatePassword": "encryptedPassword", "FromAddress": "sender@gmail.com", "ClientId": "clientId"}}` | Expression | The [CertificatePath][] in the [GmailOAuthCertificateCredentials][] is a path pointing to a certificate accessible from the server executing the flow.

For information on:
  • What each of the properties in the [GmailOAuthCertificateCredentials][] needs to be, see [GmailOAuthCertificateCredentials][]
  • How to set up the [Gmail][] account so that this authentication mechanism can be used, see [Setting up a Gmail account for OAuth authentication][]
The [CertificatePassword][] property must be encrypted, for more information on how to encrypt the password, see [EncryptedText][]. | + +A `GmailSessionDetails` with a [UserCredentials][] as the [Credentials][Credentials Property] can also be created using the Literal Editor by filling in the necessary values for the following properties: + +| Property | Data Type | Example | Notes | +|-|-|-|-| +| `ServerDetails` | `ServerDetails` | Host: `"smtp.gmail.com"`
Port: `465`
UseSsl: `true` | The [ServerDetails][ServerDetails Property] that are used to connect to the server. | +| `Credentials` | `UserCredentials` | Domain: `""`
Username: `"sender@gmail.com"`
Password: `"encryptedPassword"` | The [Credentials][Credentials Property] that are used for authentication on the server.

The [Password][] property in the [UserCredentials][] can be the password associated with the username (if the account is associated with a Google Workspace with access enabled for less secure apps) or an app password, for more information, see [Setting up an app password for a Gmail account][].

The [Password][] property must be encrypted, for more information on how to encrypt the password, see [EncryptedText][]. | + +A `GmailSessionDetails` with a [GmailOAuthCertificateCredentials][] as the [Credentials][Credentials Property] can also be created using the Literal Editor by filling in the necessary values for the following properties: + +| Property | Data Type | Example | Notes | +|-|-|-|-| +| `ServerDetails` | `ServerDetails` | Host: `"smtp.gmail.com"`
Port: `465`
UseSsl: `true` | The [ServerDetails][ServerDetails Property] that are used to connect to the server. | +| `Credentials` | `GmailOAuthCertificateCredentials` | CertificatePath: `$@"C:\certificate.p12"`
CertificatePassword: `"encryptedPassword"`
FromAddress: `"sender@gmail.com"`
ClientId: `"clientId"` | The [Credentials][Credentials Property] that are used for authentication on the server.

The [CertificatePath][] in the [GmailOAuthCertificateCredentials][] is a path pointing to a certificate which must be accessible from the server executing the flow.

For information on:
  • What each of the properties in the [GmailOAuthCertificateCredentials][] needs to be, see [GmailOAuthCertificateCredentials][]
  • How to set up the [Gmail][] account so that this authentication mechanism can be used, see [Setting up a Gmail account for OAuth authentication][]
The [CertificatePassword][] property must be encrypted, for more information on how to encrypt the password, see [EncryptedText][].| + +### Convert GmailSessionDetails to Text + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `Convert Object To Json` block | where `Object` property has a value of `{"ServerDetails": {"Host": "smtp.gmail.com", "Port": 465, "UseSsl": true}, "Credentials": {"Domain": null, "Username": "sender@gmail.com", "Password": "encryptedPassword"}}` | `"{\r\n \"ServerDetails\": {\r\n \"Host\": \"smtp.gmail.com\",\r\n \"Port\": 465,\r\n \"UseSsl\": true\r\n },\r\n \"Credentials\": {\r\n \"Domain\": null,\r\n \"Username\": \"sender@gmail.com\",\r\n \"Password\": \"encryptedPassword\"\r\n }\r\n}"` | N/A | See [Convert Object To Json][] | + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `GmailSessionDetails`. +- The Literal Editor is available for [Input][] properties where the data type is `GmailSessionDetails`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `GmailSessionDetails`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [EncryptedText][] +- [GmailOAuthCertificateCredentials][] +- [ServerDetails][] +- [UserCredentials][] + +### Related Concepts + +- [Working with Email][] + +### External Documentation + +None + +[ServerDetails Property]: {{< ref "#serverdetails" >}} +[Credentials Property]: {{< ref "#credentials" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} + +[EncryptedText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptedText.MainDoc" >}} + +[ServerDetails]: {{< url path="Cortex.Reference.DataTypes.SessionDetails.ServerDetails.MainDoc" >}} +[Host]: {{< url path="Cortex.Reference.DataTypes.SessionDetails.ServerDetails.Host" >}} +[Port]: {{< url path="Cortex.Reference.DataTypes.SessionDetails.ServerDetails.Port" >}} +[UseSsl]: {{< url path="Cortex.Reference.DataTypes.SessionDetails.ServerDetails.UseSsl" >}} + +[IEmailCredentials]: {{< url path="Cortex.Reference.DataTypes.Email.Authentication.IEmailCredentials.MainDoc" >}} + +[UserCredentials]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.MainDoc" >}} +[Username]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.Username" >}} +[Password]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.Password" >}} + +[GmailOAuthCertificateCredentials]: {{< url path="Cortex.Reference.DataTypes.GoogleWorkspace.Gmail.Authentication.OAuth.GmailOAuthCertificateCredentials.MainDoc" >}} +[CertificatePath]: {{< url path="Cortex.Reference.DataTypes.GoogleWorkspace.Gmail.Authentication.OAuth.GmailOAuthCertificateCredentials.CertificatePath" >}} +[CertificatePassword]: {{< url path="Cortex.Reference.DataTypes.GoogleWorkspace.Gmail.Authentication.OAuth.GmailOAuthCertificateCredentials.CertificatePassword" >}} +[FromAddress]: {{< url path="Cortex.Reference.DataTypes.GoogleWorkspace.Gmail.Authentication.OAuth.GmailOAuthCertificateCredentials.FromAddress" >}} +[ClientId]: {{< url path="Cortex.Reference.DataTypes.GoogleWorkspace.Gmail.Authentication.OAuth.GmailOAuthCertificateCredentials.ClientId" >}} + +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} + +[Working with Email]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Email.MainDoc" >}} +[Setting up an app password for a Gmail account]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Email.Authentication.SettingUpAppPassword" >}} +[Setting up a Gmail account for OAuth authentication]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Email.Authentication.SettingUpOAuthGmail" >}} + +[Gmail]: {{< url path="Cortex.Reference.Glossary.F-J.Gmail" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/http/_index.md b/content/en/docs/2024.11/Reference/data-types/http/_index.md new file mode 100644 index 000000000..6e85c0f39 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/http/_index.md @@ -0,0 +1,6 @@ +--- +title: "Http" +linkTitle: "Http" +description: "Data types used for working with HTTP." +weight: 1 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/data-types/http/authentication/HttpCredentials.md b/content/en/docs/2024.11/Reference/data-types/http/authentication/HttpCredentials.md new file mode 100644 index 000000000..dde6d4fd2 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/http/authentication/HttpCredentials.md @@ -0,0 +1,67 @@ +--- +title: "HttpCredentials" +linkTitle: "HttpCredentials" +description: "Any data type used to represent details required for authentication when working with HTTP." +weight: 1 +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Http.Authentication.HttpCredentials)

+ +{{% alert type="information" title="Information" %}} Improvements to this page are planned for the future. {{% /alert %}} + +## Summary + +Any data type used to represent details required for authentication when working with HTTP. + +| | | +|-|-| +| **Category:** | Http | +| **Name:** | `HttpCredentials` | +| **Full Name:** | `Cortex.DataTypes.Http.Authentication.HttpCredentials` | +| **Alias:** | N/A | +| **Description:** | Any data type used to represent details required for authentication when working with HTTP. | +| **Default Value:** | `null` | +| **Can be used as:** | `HttpCredentials`, `IHttpCredentials`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `HttpCredentials`. +- The Literal Editor is available for [Input][] properties where the data type is `HttpCredentials`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `HttpCredentials`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [HttpOAuthClientCredentials][] +- [HttpOAuthCredentials][] +- [HttpOAuthPasswordCredentials][] +- [HttpUserCredentials][] +- [IHttpCredentials][] + +### Related Concepts + +None + +### External Documentation + +None + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[IHttpCredentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.IHttpCredentials.MainDoc" >}} +[HttpOAuthCredentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.OAuth.HttpOAuthCredentials.MainDoc" >}} +[HttpOAuthClientCredentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.OAuth.HttpOAuthClientCredentials.MainDoc" >}} +[HttpOAuthPasswordCredentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.OAuth.HttpOAuthPasswordCredentials.MainDoc" >}} +[HttpUserCredentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.HttpUserCredentials.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/http/authentication/HttpUserCredentials.md b/content/en/docs/2024.11/Reference/data-types/http/authentication/HttpUserCredentials.md new file mode 100644 index 000000000..ecaaee456 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/http/authentication/HttpUserCredentials.md @@ -0,0 +1,61 @@ +--- +title: "HttpUserCredentials" +linkTitle: "HttpUserCredentials" +description: "Used to represent details required for basic authentication when working with HTTP." +weight: 1 +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Http.Authentication.HttpUserCredentials)

+ +{{% alert type="information" title="Information" %}} Improvements to this page are planned for the future. {{% /alert %}} + +## Summary + +The `HttpUserCredentials` data type is used to represent details required for basic authentication when working with HTTP. + +| | | +|-|-| +| **Category:** | Http | +| **Name:** | `HttpUserCredentials` | +| **Full Name:** | `Cortex.DataTypes.Http.Authentication.HttpUserCredentials` | +| **Alias:** | N/A | +| **Description:** | Used to represent details required for basic authentication when working with HTTP. | +| **Default Value:** | `null` | +| **Can be used as:** | `HttpUserCredentials`, `HttpCredentials`, `IHttpCredentials`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `HttpUserCredentials`. +- The Literal Editor is available for [Input][] properties where the data type is `HttpUserCredentials`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `HttpUserCredentials`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [HttpCredentials][] +- [IHttpCredentials][] + +### Related Concepts + +None + +### External Documentation + +None + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[HttpCredentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.HttpCredentials.MainDoc" >}} +[IHttpCredentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.IHttpCredentials.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/http/authentication/IHttpCredentials.md b/content/en/docs/2024.11/Reference/data-types/http/authentication/IHttpCredentials.md new file mode 100644 index 000000000..f536b1fe2 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/http/authentication/IHttpCredentials.md @@ -0,0 +1,67 @@ +--- +title: "IHttpCredentials" +linkTitle: "IHttpCredentials" +description: "Any data type used to represent details required for authentication when working with HTTP." +weight: 1 +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Http.Authentication.IHttpCredentials)

+ +{{% alert type="information" title="Information" %}} Improvements to this page are planned for the future. {{% /alert %}} + +## Summary + +Any data type used to represent details required for authentication when working with HTTP. + +| | | +|-|-| +| **Category:** | Http | +| **Name:** | `IHttpCredentials` | +| **Full Name:** | `Cortex.DataTypes.Http.Authentication.IHttpCredentials` | +| **Alias:** | N/A | +| **Description:** | Any data type used to represent details required for authentication when working with HTTP. | +| **Default Value:** | `null` | +| **Can be used as:** | `IHttpCredentials`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `IHttpCredentials`. +- The Literal Editor is available for [Input][] properties where the data type is `IHttpCredentials`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `IHttpCredentials`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [HttpCredentials][] +- [HttpOAuthClientCredentials][] +- [HttpOAuthCredentials][] +- [HttpOAuthPasswordCredentials][] +- [HttpUserCredentials][] + +### Related Concepts + +None + +### External Documentation + +None + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[HttpCredentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.HttpCredentials.MainDoc" >}} +[HttpUserCredentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.HttpUserCredentials.MainDoc" >}} +[HttpOAuthCredentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.OAuth.HttpOAuthCredentials.MainDoc" >}} +[HttpOAuthClientCredentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.OAuth.HttpOAuthClientCredentials.MainDoc" >}} +[HttpOAuthPasswordCredentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.OAuth.HttpOAuthPasswordCredentials.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/http/authentication/_index.md b/content/en/docs/2024.11/Reference/data-types/http/authentication/_index.md new file mode 100644 index 000000000..56f986971 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/http/authentication/_index.md @@ -0,0 +1,6 @@ +--- +title: "Authentication" +linkTitle: "Authentication" +description: "Data types used for authentication when working with HTTP." +weight: 1 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/data-types/http/authentication/oauth/_index.md b/content/en/docs/2024.11/Reference/data-types/http/authentication/oauth/_index.md new file mode 100644 index 000000000..79d2d973d --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/http/authentication/oauth/_index.md @@ -0,0 +1,6 @@ +--- +title: "OAuth" +linkTitle: "OAuth" +description: "Data types used for authentication via OAuth when working with HTTP." +weight: 1 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/data-types/http/authentication/oauth/clientauthentication.md b/content/en/docs/2024.11/Reference/data-types/http/authentication/oauth/clientauthentication.md new file mode 100644 index 000000000..2720cd459 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/http/authentication/oauth/clientauthentication.md @@ -0,0 +1,109 @@ +--- +title: "ClientAuthentication" +linkTitle: "ClientAuthentication" +description: "Used to represent the `ClientId` and `ClientSecret` required for OAuth authentication mechanisms that use Client Secrets." +weight: 1 +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Http.Authentication.OAuth.ClientAuthentication)

+ +{{% alert type="information" title="Information" %}} Improvements to this page are planned for the future. {{% /alert %}} + +## Summary + +The `ClientAuthentication` data type is used to represent the `ClientId` and `ClientSecret` required for OAuth authentication mechanisms that use Client Secrets. + +| | | +|-|-| +| **Category:** | Http | +| **Name:** | `ClientAuthentication` | +| **Full Name:** | `Cortex.DataTypes.Http.Authentication.OAuth.ClientAuthentication` | +| **Alias:** | N/A | +| **Description:** | Used to represent the `ClientId` and `ClientSecret` required for OAuth authentication mechanisms that use Client Secrets. | +| **Default Value:** | `null` | +| **Can be used as:** | `ClientAuthentication`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### ClientId + +The ClientId is used to define the client ID assigned to {{% ctx %}} by the OAuth provider, to allow it to authenticate. The value of this property may optionally be encrypted; for more information on how to encrypt this property, see [EncryptableText][]. +| | | +|--------------------|---------------------------| +| Data Type | [EncryptableText][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [EncryptableText][] with value `""` | + +### ClientSecret + +The ClientSecret is used to define the client secret assigned to {{% ctx %}} by the OAuth provider, to allow it to authenticate; this value should be kept secret. This property is an [EncryptedText][] and so it must be encrypted; for more information on how to encrypt the password, see [EncryptedText][]. + +| | | +|--------------------|---------------------------| +| Data Type | [EncryptedText][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [EncryptedText][] with value `""` | + +### SendAs + +The SendAs is used to specify whether the [ClientId][] and [ClientSecret][] are included as part of the HTTP request body or headers. + +| | | +|--------------------|---------------------------| +| Data Type | [ClientAuthType][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | `Header` | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `ClientAuthentication`. +- The Literal Editor is available for [Input][] properties where the data type is `ClientAuthentication`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `ClientAuthentication`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [ClientAuthType][] +- [EncryptableText][] +- [EncryptedText][] +- [HttpOAuthClientCredentials][] +- [HttpOAuthPasswordCredentials][] + +### Related Concepts + +None + +### External Documentation + +None + +[ClientId]: {{< ref "#clientid">}} +[Clientsecret]: {{< ref "#clientsecret">}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[HttpOAuthClientCredentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.OAuth.HttpOAuthClientCredentials.MainDoc" >}} +[HttpOAuthPasswordCredentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.OAuth.HttpOAuthPasswordCredentials.MainDoc" >}} +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[EncryptableText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptableText.MainDoc" >}} +[EncryptedText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptedText.MainDoc" >}} +[ClientAuthType]: {{< url path = "Cortex.Reference.DataTypes.Http.Authentication.OAuth.ClientAuthType.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/http/authentication/oauth/clientauthtype.md b/content/en/docs/2024.11/Reference/data-types/http/authentication/oauth/clientauthtype.md new file mode 100644 index 000000000..4e4c2a577 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/http/authentication/oauth/clientauthtype.md @@ -0,0 +1,78 @@ +--- +title: "ClientAuthType" +linkTitle: "ClientAuthType" +description: "Used to represent whether the `ClientId` and `ClientSecret` specified in ClientAuthentication are sent as part of the HTTP headers or HTTP body." +weight: 1 +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Http.Authentication.OAuth.ClientAuthType)

+ +{{% alert type="information" title="Information" %}} Improvements to this page are planned for the future. {{% /alert %}} + +## Summary + +The `ClientAuthType` data type is used to represent whether the `ClientId` and `ClientSecret` specified in [ClientAuthentication][] are sent as part of the HTTP headers or HTTP body. + +`ClientAuthType` is an [enum][Working with Enums] data type, which means it has a defined set of values, where each value has an associated [String][] name and [Int32][] value. + +| | | +|-|-| +| **Category:** | Http | +| **Name:** | `ClientAuthType` | +| **Full Name:** | `Cortex.DataTypes.Http.Authentication.OAuth.ClientAuthType` | +| **Alias:** | N/A | +| **Description:** | Used to represent whether the `ClientId` and `ClientSecret` specified in [ClientAuthentication][] are sent as part of the HTTP headers or HTTP body. | +| **Default Value:** | `(ClientAuthType)0` | +| **Can be used as:** | `ClientAuthType`, `Object`, `dynamic` | +| **Can be cast to:** | `Int16` (e.g. `(Int16)ClientAuthType.Header` or `(System.Int16)ClientAuthType.Header` or `(short)ClientAuthType.Header`) | +| | `Int32` (e.g. `(Int32)ClientAuthType.Header` or `(System.Int32)ClientAuthType.Header` or `(int)ClientAuthType.Header`) | +| | `Int64` (e.g. `(Int64)ClientAuthType.Header` or `(System.Int64)ClientAuthType.Header` or `(long)ClientAuthType.Header`) | +| | `Single` (e.g. `(Single)ClientAuthType.Header` or `(System.Single)ClientAuthType.Header` or `(float)ClientAuthType.Header`) | +| | `Double` (e.g. `(Double)ClientAuthType.Header` or `(System.Double)ClientAuthType.Header` or `(double)ClientAuthType.Header`) | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `ClientAuthType`. +- The Literal Editor is available for [Input][] properties where the data type is `ClientAuthType`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `ClientAuthType`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [ClientAuthentication][] +- [HttpOAuthClientCredentials][] +- [Int32][] +- [String][] + +### Related Concepts + +- [Explicit Casting][] +- [Working with Enums][] + +### External Documentation + +- [System.Enum][] + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[System.Enum]: {{< url path="MSDocs.DotNet.Api.System.Enum.MainDoc" >}} + +[Working with Enums]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Enums.MainDoc" >}} +[Explicit Casting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectCasting.ExplicitCast" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[HttpOAuthClientCredentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.OAuth.HttpOAuthClientCredentials.MainDoc" >}} +[ClientAuthentication]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.OAuth.ClientAuthentication.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/http/authentication/oauth/httpoauthclientcredentials.md b/content/en/docs/2024.11/Reference/data-types/http/authentication/oauth/httpoauthclientcredentials.md new file mode 100644 index 000000000..558b317ac --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/http/authentication/oauth/httpoauthclientcredentials.md @@ -0,0 +1,115 @@ +--- +title: "HttpOAuthClientCredentials" +linkTitle: "HttpOAuthClientCredentials" +description: "Used to represent details required for the OAuth Client Credentials authentication mechanism." +weight: 1 +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Http.Authentication.OAuth.HttpOAuthClientCredentials)

+ +{{% alert type="information" title="Information" %}} Improvements to this page are planned for the future. {{% /alert %}} + +## Summary + +The `HttpOAuthClientCredentials` data type is used to represent details required for the OAuth Client Credentials authentication mechanism. + +| | | +|-|-| +| **Category:** | Http | +| **Name:** | `HttpOAuthClientCredentials` | +| **Full Name:** | `Cortex.DataTypes.Http.Authentication.OAuth.HttpOAuthClientCredentials` | +| **Alias:** | N/A | +| **Description:** | Used to represent details required for the OAuth Client Credentials authentication mechanism. | +| **Default Value:** | `null` | +| **Can be used as:** | `HttpOAuthClientCredentials`, `HttpOAuthCredentials`, `HttpCredentials`, `IHttpCredentials`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### AccessTokenUri + +The AccessTokenUri represents the URI used to get the access token. The value of this property may optionally be encrypted; for more information on how to encrypt this property, see [EncryptableText][]. + +| | | +|-----------------|---------------------| +| Data Type | [EncryptableText][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [EncryptableText][] with value `$@""` | + +### ClientAuthentication + +The ClientAuthentication represents the [ClientId][], [ClientSecret][] and [SendAs][]. + +| | | +|-----------------|--------------------------| +| Data Type | [ClientAuthentication][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [ClientAuthentication][] with no value | + +### Scope + +The scope of permissions being requested for the access token. For multiple scopes, each scope should be separated by a space (e.g. `"Scope1 Scope2"`). + +| | | +|-----------------|-------------| +| Data Type | [String][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | [String][] with value `""` | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `HttpOAuthClientCredentials`. +- The Literal Editor is available for [Input][] properties where the data type is `HttpOAuthClientCredentials`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `HttpOAuthClientCredentials`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [ClientAuthentication][] +- [EncryptableText][] +- [HttpCredentials][] +- [HttpOAuthCredentials][] +- [HttpOAuthPasswordCredentials][] +- [IHttpCredentials][] +- [String][] + +### Related Concepts + +None + +### External Documentation + +None + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[IHttpCredentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.IHttpCredentials.MainDoc" >}} +[HttpCredentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.HttpCredentials.MainDoc" >}} +[HttpOAuthCredentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.OAuth.HttpOAuthCredentials.MainDoc" >}} +[HttpOAuthPasswordCredentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.OAuth.HttpOAuthPasswordCredentials.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[EncryptableText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptableText.MainDoc" >}} +[ClientAuthentication]: {{< url path = "Cortex.Reference.DataTypes.Http.Authentication.OAuth.ClientAuthentication.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[ClientId]: {{< url path = "Cortex.Reference.DataTypes.Http.Authentication.OAuth.ClientAuthentication.ClientId" >}} +[ClientSecret]: {{< url path = "Cortex.Reference.DataTypes.Http.Authentication.OAuth.ClientAuthentication.ClientSecret" >}} +[SendAs]: {{< url path = "Cortex.Reference.DataTypes.Http.Authentication.OAuth.ClientAuthentication.SendAs" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/http/authentication/oauth/httpoauthcredentials.md b/content/en/docs/2024.11/Reference/data-types/http/authentication/oauth/httpoauthcredentials.md new file mode 100644 index 000000000..19b5983f9 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/http/authentication/oauth/httpoauthcredentials.md @@ -0,0 +1,65 @@ +--- +title: "HttpOAuthCredentials" +linkTitle: "HttpOAuthCredentials" +description: "Any data type used to represent details required for OAuth authentication." +weight: 1 +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Http.Authentication.OAuth.HttpOAuthCredentials)

+ +{{% alert type="information" title="Information" %}} Improvements to this page are planned for the future. {{% /alert %}} + +## Summary + +Any data type used to represent details required for OAuth authentication. + +| | | +|-|-| +| **Category:** | Http | +| **Name:** | `HttpOAuthCredentials` | +| **Full Name:** | `Cortex.DataTypes.Http.Authentication.OAuth.HttpOAuthCredentials` | +| **Alias:** | N/A | +| **Description:** | Any data type used to represent details required for OAuth authentication. | +| **Default Value:** | `null` | +| **Can be used as:** | `HttpOAuthCredentials`, `HttpCredentials`, `IHttpCredentials`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `HttpOAuthCredentials`. +- The Literal Editor is available for [Input][] properties where the data type is `HttpOAuthCredentials`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `HttpOAuthCredentials`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [HttpCredentials][] +- [HttpOAuthClientCredentials][] +- [HttpOAuthPasswordCredentials][] +- [IHttpCredentials][] + +### Related Concepts + +None + +### External Documentation + +None + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[IHttpCredentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.IHttpCredentials.MainDoc" >}} +[HttpCredentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.HttpCredentials.MainDoc" >}} +[HttpOAuthClientCredentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.OAuth.HttpOAuthClientCredentials.MainDoc" >}} +[HttpOAuthPasswordCredentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.OAuth.HttpOAuthPasswordCredentials.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/http/authentication/oauth/httpoauthpasswordcredentials.md b/content/en/docs/2024.11/Reference/data-types/http/authentication/oauth/httpoauthpasswordcredentials.md new file mode 100644 index 000000000..6692a199c --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/http/authentication/oauth/httpoauthpasswordcredentials.md @@ -0,0 +1,140 @@ +--- +title: "HttpOAuthPasswordCredentials" +linkTitle: "HttpOAuthPasswordCredentials" +description: "Used to represent details required for the OAuth Resource Owner Password Credentials authentication mechanism." +weight: 1 +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Http.Authentication.OAuth.HttpOAuthPasswordCredentials)

+ +{{% alert type="information" title="Information" %}} Improvements to this page are planned for the future. {{% /alert %}} + +## Summary + +The `HttpOAuthPasswordCredentials` data type is used to represent details required for the OAuth Resource Owner Password Credentials authentication mechanism. + +| | | +|---------------------|----------------------------------------------------------------------------------------------------------------| +| **Category:** | Http | +| **Name:** | `HttpOAuthPasswordCredentials` | +| **Full Name:** | `Cortex.DataTypes.Http.Authentication.OAuth.HttpOAuthPasswordCredentials` | +| **Alias:** | N/A | +| **Description:** | Used to represent details required for the OAuth Resource Owner Password Credentials authentication mechanism. | +| **Default Value:** | `null` | +| **Can be used as:** | `HttpOAuthPasswordCredentials`, `HttpCredentials`, `IHttpCredentials`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### AccessTokenUri + +The AccessTokenUri represents the URI used to get the access token. The value of this property may optionally be encrypted; for more information on how to encrypt this property, see [EncryptableText][]. + +| | | +|-----------------|-------------------------------------| +| Data Type | [EncryptableText][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [EncryptableText] with value `$@""` | + +### ClientAuthentication + +The ClientAuthentication represents the [ClientId][], [ClientSecret][] and [SendAs][]. + +| | | +|-----------------|--------------------------------------| +| Data Type | [ClientAuthentication][] | +| Is [Advanced][] | `true` | +| Default Editor | [Expression][] | +| Default Value | [ClientAuthentication] with no value | + +### Scope + +The scope of permissions being requested for the access token. For multiple scopes, each scope should be separated by a space (e.g. `"Scope1 Scope2"`). + +| | | +|-----------------|----------------------------| +| Data Type | [String][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [String][] with value `""` | + +### ResourceOwnerUsername + +The ResourceOwnerUsername is the username used to get the access token. The value of this property may optionally be encrypted; for more information on how to encrypt this property, see [EncryptableText][]. + +| | | +|-----------------|-------------------------------------| +| Data Type | [EncryptableText][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [EncryptableText][] with value `""` | + +### ResourceOwnerPassword + +The ResourceOwnerPassword is the password associated with the [ResourceOwnerUsername][]. This property is an [EncryptedText][] and so it must be encrypted; for more information on how to encrypt the password, see [EncryptedText][]. + +| | | +|-----------------|-----------------------------------| +| Data Type | [EncryptedText][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [EncryptedText][] with value `""` | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `HttpOAuthPasswordCredentials`. +- The Literal Editor is available for [Input][] properties where the data type is `HttpOAuthPasswordCredentials`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `HttpOAuthPasswordCredentials`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [ClientAuthentication][] +- [EncryptableText][] +- [EncryptedText][] +- [HttpCredentials][] +- [HttpOAuthClientCredentials][] +- [HttpOAuthCredentials][] +- [IHttpCredentials][] +- [String][] + +### Related Concepts + +None + +### External Documentation + +None + +[ResourceOwnerUsername]: {{< ref "#resourceownerusername">}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[IHttpCredentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.IHttpCredentials.MainDoc" >}} +[HttpCredentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.HttpCredentials.MainDoc" >}} +[HttpOAuthCredentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.OAuth.HttpOAuthCredentials.MainDoc" >}} +[HttpOAuthClientCredentials]: {{< url path="Cortex.Reference.DataTypes.Http.Authentication.OAuth.HttpOAuthClientCredentials.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[EncryptableText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptableText.MainDoc" >}} +[EncryptedText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptedText.MainDoc" >}} +[ClientAuthentication]: {{< url path = "Cortex.Reference.DataTypes.Http.Authentication.OAuth.ClientAuthentication.MainDoc" >}} +[ClientId]: {{< url path = "Cortex.Reference.DataTypes.Http.Authentication.OAuth.ClientAuthentication.ClientId" >}} +[ClientSecret]: {{< url path = "Cortex.Reference.DataTypes.Http.Authentication.OAuth.ClientAuthentication.ClientSecret" >}} +[SendAs]: {{< url path = "Cortex.Reference.DataTypes.Http.Authentication.OAuth.ClientAuthentication.SendAs" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/http/httprequestversion.md b/content/en/docs/2024.11/Reference/data-types/http/httprequestversion.md new file mode 100644 index 000000000..903447eec --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/http/httprequestversion.md @@ -0,0 +1,89 @@ +--- +title: "HttpRequestVersion" +linkTitle: "HttpRequestVersion" +description: "Used to represent the version of HTTP to be used when making an HTTP request." +weight: 1 +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Http.HttpRequestVersion)

+ +{{% alert type="information" title="Information" %}} Improvements to this page are planned for the future. {{% /alert %}} + +## Summary + +The `HttpRequestVersion` data type is used to represent the version of HTTP to be used when making an HTTP request. + +`HttpRequestVersion` is an [enum][Working with Enums] data type, which means it has a defined set of values, where each value has an associated [String][] name and [Int32][] value. + +| | | +|---------------------|------------------------------------------------------------------------------------------------------------------------------------------| +| **Category:** | Http | +| **Name:** | `HttpRequestVersion` | +| **Full Name:** | `Cortex.DataTypes.Http.HttpRequestVersion` | +| **Alias:** | N/A | +| **Description:** | Used to represent the version of HTTP to be used when making an HTTP request. | +| **Default Value:** | `(HttpRequestVersion)0` | +| **Can be used as:** | `HttpRequestVersion`, `Object`, `dynamic` | +| **Can be cast to:** | `Int16` (e.g. `(Int16)HttpRequestVersion.HTTP10` or `(System.Int16)HttpRequestVersion.HTTP10` or `(short)HttpRequestVersion.HTTP10`) | +| | `Int32` (e.g. `(Int32)HttpRequestVersion.HTTP10` or `(System.Int32)HttpRequestVersion.HTTP10` or `(int)HttpRequestVersion.HTTP10`) | +| | `Int64` (e.g. `(Int64)HttpRequestVersion.HTTP10` or `(System.Int64)HttpRequestVersion.HTTP10` or `(long)HttpRequestVersion.HTTP10`) | +| | `Single` (e.g. `(Single)HttpRequestVersion.HTTP10` or `(System.Single)HttpRequestVersion.HTTP10` or `(float)HttpRequestVersion.HTTP10`) | +| | `Double` (e.g. `(Double)HttpRequestVersion.HTTP10` or `(System.Double)HttpRequestVersion.HTTP10` or `(double)HttpRequestVersion.HTTP10`) | + +## Values + +### HTTP10 + +| | | +|------------|---------------------------| +| **Name:** | HTTP10 | +| **Value:** | [Int32][] with value `0` | +| **Notes:** | HTTP 1.0 request version. | + +### HTTP11 + +| | | +|------------|---------------------------| +| **Name:** | HTTP11 | +| **Value:** | [Int32][] with value `1` | +| **Notes:** | HTTP 1.1 request version. | + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `HttpRequestVersion`. +- The Literal Editor is available for [Input][] properties where the data type is `HttpRequestVersion`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `HttpRequestVersion`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [Int32][] +- [String][] + +### Related Concepts + +- [Explicit Casting][] +- [Working with Enums][] + +### External Documentation + +- [System.Enum][] + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[System.Enum]: {{< url path="MSDocs.DotNet.Api.System.Enum.MainDoc" >}} + +[Working with Enums]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Enums.MainDoc" >}} +[Explicit Casting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectCasting.ExplicitCast" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/http/httpstatuscode.md b/content/en/docs/2024.11/Reference/data-types/http/httpstatuscode.md new file mode 100644 index 000000000..45fd32d2e --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/http/httpstatuscode.md @@ -0,0 +1,80 @@ +--- +title: "HttpStatusCode" +linkTitle: "HttpStatusCode" +description: "Used to represent the status code returned by an HTTP request." +weight: 1 +--- + +# {{% param title %}} + +

(System.Net.HttpStatusCode)

+ +{{% alert type="information" title="Information" %}} Improvements to this page are planned for the future. {{% /alert %}} + +## Summary + +The `HttpStatusCode` data type is used to represent the status code returned by an HTTP request. + +`HttpStatusCode` is an [enum][Working with Enums] data type, which means it has a defined set of values, where each value has an associated [String][] name and [Int32][] value. + +| | | +|---------------------|------------------------------------------------------------------------------------------------------------------------------------| +| **Category:** | Http | +| **Name:** | `HttpStatusCode` | +| **Full Name:** | `System.Net.HttpStatusCode` | +| **Alias:** | N/A | +| **Description:** | Used to represent the status code returned by an HTTP request. | +| **Default Value:** | `(HttpStatusCode)0` | +| **Can be used as:** | `HttpStatusCode`, `Object`, `dynamic` | +| **Can be cast to:** | `Int16` (e.g. `(Int16)HttpStatusCode.Continue` or `(System.Int16)HttpStatusCode.Continue` or `(short)HttpStatusCode.Continue`) | +| | `Int32` (e.g. `(Int32)HttpStatusCode.Continue` or `(System.Int32)HttpStatusCode.Continue` or `(int)HttpStatusCode.Continue`) | +| | `Int64` (e.g. `(Int64)HttpStatusCode.Continue` or `(System.Int64)HttpStatusCode.Continue` or `(long)HttpStatusCode.Continue`) | +| | `Single` (e.g. `(Single)HttpStatusCode.Continue` or `(System.Single)HttpStatusCode.Continue` or `(float)HttpStatusCode.Continue`) | +| | `Double` (e.g. `(Double)HttpStatusCode.Continue` or `(System.Double)HttpStatusCode.Continue` or `(double)HttpStatusCode.Continue`) | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `HttpStatusCode`. +- The Literal Editor is available for [Input][] properties where the data type is `HttpStatusCode`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `HttpStatusCode`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [Int32][] +- [String][] +- [HttpResponse][] +- [SoapResponse][] + +### Related Concepts + +- [Explicit Casting][] +- [Working with Enums][] + +### External Documentation + +- [System.Enum][] +- [System.Net.HttpStatusCode][] + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[System.Enum]: {{< url path="MSDocs.DotNet.Api.System.Enum.MainDoc" >}} + +[Working with Enums]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Enums.MainDoc" >}} +[Explicit Casting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectCasting.ExplicitCast" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[HttpResponse]: {{< url path = "Cortex.Reference.DataTypes.Http.Rest.HttpResponse.MainDoc" >}} +[SoapResponse]: {{< url path = "Cortex.Reference.DataTypes.Http.Soap.SoapResponse.MainDoc" >}} +[System.Net.HttpStatusCode]: {{< url path="MSDocs.DotNet.Api.System.Net.HttpStatusCode" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/http/request.md b/content/en/docs/2024.11/Reference/data-types/http/request.md new file mode 100644 index 000000000..f38557d59 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/http/request.md @@ -0,0 +1,63 @@ +--- +title: "Request" +linkTitle: "Request" +description: "Any data type that is used to represent an HTTP request." +weight: 1 +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Http.Request)

+ +{{% alert type="information" title="Information" %}} Improvements to this page are planned for the future. {{% /alert %}} + +## Summary + +Any data type that is used to represent an HTTP request. + +| | | +|-|-| +| **Category:** | Http | +| **Name:** | `Request` | +| **Full Name:** | `Cortex.DataTypes.Http.Request` | +| **Alias:** | N/A | +| **Description:** | Any data type that is used to represent an HTTP request. | +| **Default Value:** | `null` | +| **Can be used as:** | `Request`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `Request`. +- The Literal Editor is available for [Input][] properties where the data type is `Request`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `Request`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [HttpRequestVersion][] +- [HttpRequest][] +- [SoapRequest][] + +### Related Concepts + +None + +### External Documentation + +None + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[HttpRequestVersion]: {{< url path = "Cortex.Reference.DataTypes.Http.HttpRequestVersion.MainDoc" >}} +[HttpRequest]: {{< url path = "Cortex.Reference.DataTypes.Http.Rest.HttpRequest.MainDoc" >}} +[SoapRequest]: {{< url path = "Cortex.Reference.DataTypes.Http.Soap.SoapRequest.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/http/requestverb.md b/content/en/docs/2024.11/Reference/data-types/http/requestverb.md new file mode 100644 index 000000000..f2a399ff4 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/http/requestverb.md @@ -0,0 +1,130 @@ +--- +title: "RequestVerb" +linkTitle: "RequestVerb" +description: "Used to represent the type of an HTTP request." +weight: 1 +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Http.RequestVerb)

+ +{{% alert type="information" title="Information" %}} Improvements to this page are planned for the future. {{% /alert %}} + +## Summary + +The `RequestVerb` data type is used to represent the type of an HTTP request. + +`RequestVerb` is an [enum][Working with Enums] data type, which means it has a defined set of values, where each value has an associated [String][] name and [Int32][] value. + +| | | +|---------------------|------------------------------------------------------------------------------------------------------------| +| **Category:** | Http | +| **Name:** | `RequestVerb` | +| **Full Name:** | `Cortex.DataTypes.Http.RequestVerb` | +| **Alias:** | N/A | +| **Description:** | Used to represent the type of an HTTP request. | +| **Default Value:** | `(RequestVerb)0` | +| **Can be used as:** | `RequestVerb`, `Object`, `dynamic` | +| **Can be cast to:** | `Int16` (e.g. `(Int16)RequestVerb.GET` or `(System.Int16)RequestVerb.GET` or `(short)RequestVerb.GET`) | +| | `Int32` (e.g. `(Int32)RequestVerb.GET` or `(System.Int32)RequestVerb.GET` or `(int)RequestVerb.GET`) | +| | `Int64` (e.g. `(Int64)RequestVerb.GET` or `(System.Int64)RequestVerb.GET` or `(long)RequestVerb.GET`) | +| | `Single` (e.g. `(Single)RequestVerb.GET` or `(System.Single)RequestVerb.GET` or `(float)RequestVerb.GET`) | +| | `Double` (e.g. `(Double)RequestVerb.GET` or `(System.Double)RequestVerb.GET` or `(double)RequestVerb.GET`) | + +## Values + +### GET + +| | | +|------------|--------------------------| +| **Name:** | GET | +| **Value:** | [Int32][] with value `0` | +| **Notes:** | GET request. | + +### POST + +| | | +|------------|--------------------------| +| **Name:** | POST | +| **Value:** | [Int32][] with value `1` | +| **Notes:** | POST request. | + +### PUT + +| | | +|------------|--------------------------| +| **Name:** | PUT | +| **Value:** | [Int32][] with value `2` | +| **Notes:** | PUT request. | + +### DELETE + +| | | +|------------|--------------------------| +| **Name:** | DELETE | +| **Value:** | [Int32][] with value `3` | +| **Notes:** | DELETE request. | + +### PATCH + +| | | +|------------|--------------------------| +| **Name:** | PATCH | +| **Value:** | [Int32][] with value `4` | +| **Notes:** | PATCH request. | + +### HEAD + +| | | +|------------|--------------------------| +| **Name:** | HEAD | +| **Value:** | [Int32][] with value `5` | +| **Notes:** | HEAD request. | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `RequestVerb`. +- The Literal Editor is available for [Input][] properties where the data type is `RequestVerb`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `RequestVerb`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [Int32][] +- [String][] +- [Request][] +- [HttpRequest][] +- [SoapRequest][] + +### Related Concepts + +- [Explicit Casting][] +- [Working with Enums][] + +### External Documentation + +- [System.Enum][] + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[System.Enum]: {{< url path="MSDocs.DotNet.Api.System.Enum.MainDoc" >}} + +[Working with Enums]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Enums.MainDoc" >}} +[Explicit Casting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectCasting.ExplicitCast" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Request]: {{< url path = "Cortex.Reference.DataTypes.Http.Request.MainDoc" >}} +[HttpRequest]: {{< url path = "Cortex.Reference.DataTypes.Http.Rest.HttpRequest.MainDoc" >}} +[SoapRequest]: {{< url path = "Cortex.Reference.DataTypes.Http.Soap.SoapRequest.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/http/rest/_index.md b/content/en/docs/2024.11/Reference/data-types/http/rest/_index.md new file mode 100644 index 000000000..1b88e585b --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/http/rest/_index.md @@ -0,0 +1,6 @@ +--- +title: "Rest" +linkTitle: "Rest" +description: "Data types used when working with REST." +weight: 1 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/data-types/http/rest/httprequest.md b/content/en/docs/2024.11/Reference/data-types/http/rest/httprequest.md new file mode 100644 index 000000000..84171dcde --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/http/rest/httprequest.md @@ -0,0 +1,156 @@ +--- +title: "HttpRequest" +linkTitle: "HttpRequest" +description: "Used to represent an HTTP REST request." +weight: 1 +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Http.Rest.HttpRequest)

+ +{{% alert type="information" title="Information" %}} Improvements to this page are planned for the future. {{% /alert %}} + +## Summary + +The `HttpRequest` data type is used to represent an HTTP REST request. + +| | | +|---------------------|-----------------------------------------------| +| **Category:** | Http | +| **Name:** | `HttpRequest` | +| **Full Name:** | `Cortex.DataTypes.Http.Rest.HttpRequest` | +| **Alias:** | N/A | +| **Description:** | Used to represent an HTTP REST request. | +| **Default Value:** | `null` | +| **Can be used as:** | `HttpRequest`, `Request`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### Uri + +The Uri represents the endpoint to send the REST request to. The value of this property may optionally be encrypted; for more information on how to encrypt this property, see [EncryptableText][]. + +| | | +|-----------------|---------------------------------------| +| Data Type | [EncryptableText][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [EncryptableText][] with value `$@""` | + +### QueryParameters + +The QueryParameters represents the parameters to use in the REST request; these are appended as query string parameters to the Uri. + +| | | +|-----------------|---------------------------------------------| +| Data Type | [IDictionary][IDictionary] | +| Is [Advanced][] | `true` | +| Default Editor | [Expression][] | +| Default Value | [IDictionary][IDictionary] with no value | + +### Verb + +The Verb represents the type of HTTP operation to use in the REST request. + +| | | +|-----------------|-----------------| +| Data Type | [RequestVerb][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `GET` | + +### ContentType + +The ContentType represents the type of the content used in the REST request. + +| | | +|-----------------|--------------------| +| Data Type | [String][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | [String] with value `"application/json"` | + +### Headers + +The Headers represents the HTTP headers to include with the REST request. + +| | | +|-----------------|---------------------------------------------| +| Data Type | [IDictionary][IDictionary] | +| Is [Advanced][] | `true` | +| Default Editor | [Expression][] | +| Default Value | [IDictionary][IDictionary] with no value | + +### Body + +The data to include in the body to be used (not relevant in GET and HEAD requests). The value of this property may optionally be encrypted; for more information on how to encrypt this property, see [EncryptableText][]. + +| | | +|-----------------|---------------------| +| Data Type | [EncryptableText][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [EncryptableText][] with value `$@""` | + +### HttpVersion + +The HttpVersion represents the version of HTTP to use in the REST request. + +| | | +|-----------------|------------------------| +| Data Type | [HttpRequestVersion][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | `HTTP10` | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `HttpRequest`. +- The Literal Editor is available for [Input][] properties where the data type is `HttpRequest`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `HttpRequest`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [EncryptableText][] +- [HttpRequestVersion][] +- [HttpResponse][] +- [IDictionary][IDictionary] +- [Request][] +- [RequestVerb][] +- [String][] + +### Related Concepts + +None + +### External Documentation + +None + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Request]: {{< url path = "Cortex.Reference.DataTypes.Http.Request.MainDoc" >}} +[HttpResponse]: {{< url path = "Cortex.Reference.DataTypes.Http.Rest.HttpResponse.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[EncryptableText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptableText.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[IDictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} + +[RequestVerb]: {{< url path = "Cortex.Reference.DataTypes.Http.RequestVerb.MainDoc" >}} +[HttpRequestVersion]: {{< url path="Cortex.Reference.DataTypes.Http.HttpRequestVersion.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/http/rest/httpresponse.md b/content/en/docs/2024.11/Reference/data-types/http/rest/httpresponse.md new file mode 100644 index 000000000..055bc2ad9 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/http/rest/httpresponse.md @@ -0,0 +1,121 @@ +--- +title: "HttpResponse" +linkTitle: "HttpResponse" +description: "Used to represent an HTTP REST response." +weight: 1 +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Http.Rest.HttpResponse)

+ +{{% alert type="information" title="Information" %}} Improvements to this page are planned for the future. {{% /alert %}} + +## Summary + +The `HttpResponse` data type is used to represent an HTTP REST response. + +| | | +|---------------------|-------------------------------------------| +| **Category:** | Http | +| **Name:** | `HttpResponse` | +| **Full Name:** | `Cortex.DataTypes.Http.Rest.HttpResponse` | +| **Alias:** | N/A | +| **Description:** | Used to represent an HTTP REST response. | +| **Default Value:** | `null` | +| **Can be used as:** | `HttpResponse`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### ResponseBody + +The ResponseBody represents the body of the REST response. + +| | | +|-----------------|----------------------------| +| Data Type | [dynamic][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [String] with value `$@""` | + +### ErrorMessage + +The ErrorMessage is used represent any errors that occurred when executing the REST request. + +| | | +|-----------------|----------------------------| +| Data Type | [String][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [String] with value `$@""` | + +### Headers + +The Headers are used to represent the HTTP headers returned in the REST response. + +| | | +|-----------------|---------------------------------------------------------| +| Data Type | [Dictionary][Dictionary] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [Dictionary][Dictionary] with no value | + +### StatusCode + +The StatusCode is the status returned in the REST response. + +| | | +|-----------------|--------------------| +| Data Type | [HttpStatusCode][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `OK` | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `HttpResponse`. +- The Literal Editor is available for [Input][] properties where the data type is `HttpResponse`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `HttpResponse`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [Dictionary][Dictionary] +- [dynamic][] +- [HttpRequest][] +- [HttpStatusCode][] +- [String][] + +### Related Concepts + +None + +### External Documentation + +- [System.Net.HttpStatusCode][] + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[HttpRequest]: {{< url path = "Cortex.Reference.DataTypes.Http.Rest.HttpRequest.MainDoc" >}} + +[HttpStatusCode]: {{< url path = "Cortex.Reference.DataTypes.Http.HttpStatusCode.MainDoc" >}} + +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[Dictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.Dictionary.MainDoc" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[System.Net.HttpStatusCode]: {{< url path="MSDocs.DotNet.Api.System.Net.HttpStatusCode" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/http/soap/_index.md b/content/en/docs/2024.11/Reference/data-types/http/soap/_index.md new file mode 100644 index 000000000..a78a426af --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/http/soap/_index.md @@ -0,0 +1,6 @@ +--- +title: "Soap" +linkTitle: "Soap" +description: "Data types used when working with SOAP." +weight: 1 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/data-types/http/soap/soap11message.md b/content/en/docs/2024.11/Reference/data-types/http/soap/soap11message.md new file mode 100644 index 000000000..bea4c667c --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/http/soap/soap11message.md @@ -0,0 +1,116 @@ +--- +title: "Soap11Message" +linkTitle: "Soap11Message" +description: "Used to represent a SOAP 1.1 message." +weight: 1 +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Http.Soap.Soap11Message)

+ +{{% alert type="information" title="Information" %}} Improvements to this page are planned for the future. {{% /alert %}} + +## Summary + +The `Soap11Message` data type is used to represent a SOAP 1.1 message. + +| | | +|-|-| +| **Category:** | Http | +| **Name:** | `Soap11Message` | +| **Full Name:** | `Cortex.DataTypes.Http.Soap.Soap11Message` | +| **Alias:** | N/A | +| **Description:** | Used to represent a SOAP 1.1 message. | +| **Default Value:** | `null` | +| **Can be used as:** | `Soap11Message`, `SoapMessage`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### Action + +The Action represents the SOAP action to use in the SOAP request. +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [String][] with value `""` | + +### Envelope + +The Envelope represents the content of the SOAP message. The value of this property may optionally be encrypted; for more information on how to encrypt this property, see [EncryptableText][]. + +| | | +|--------------------|---------------------------| +| Data Type | [EncryptableText][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [EncryptableText][] with value `$@""` | + +### Version + +The Version represents the SOAP version of the SOAP message. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Is [Advanced][] | N/A see [Version is read-only][]| +| Default Editor | N/A see [Version is read-only][]| +| Default Value | [Int32] with value `11` | + +## Remarks + +### Version is read-only + +[Version][Version Property] is a read-only property set to `11` and as such will not be visible in the property editor. + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `Soap11Message`. +- The Literal Editor is available for [Input][] properties where the data type is `Soap11Message`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `Soap11Message`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [EncryptableText][] +- [Int32] +- [Soap12Message][] +- [SoapMessage][] +- [SoapRequest][] +- [String][] + +### Related Concepts + +None + +### External Documentation + +None + +[Version Property]: {{< ref "#version" >}} +[Version is Read-only]: {{< ref "#version-is-read-only" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Soap12Message]: {{< url path = "Cortex.Reference.DataTypes.Http.Soap.Soap12Message.MainDoc" >}} +[SoapMessage]: {{< url path = "Cortex.Reference.DataTypes.Http.Soap.SoapMessage.MainDoc" >}} + +[SoapRequest]: {{< url path = "Cortex.Reference.DataTypes.Http.Soap.SoapRequest.MainDoc" >}} + +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} + +[EncryptableText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptableText.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/http/soap/soap12message.md b/content/en/docs/2024.11/Reference/data-types/http/soap/soap12message.md new file mode 100644 index 000000000..d2e7946b8 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/http/soap/soap12message.md @@ -0,0 +1,64 @@ +--- +title: "Soap12Message" +linkTitle: "Soap12Message" +description: "Used to represent a SOAP 1.2 message." +weight: 1 +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Http.Soap.Soap12Message)

+ +{{% alert type="information" title="Information" %}} Improvements to this page are planned for the future. {{% /alert %}} + +## Summary + +The `Soap12Message` data type is used to represent a SOAP 1.2 message. + +| | | +|-|-| +| **Category:** | Http | +| **Name:** | `Soap12Message` | +| **Full Name:** | `Cortex.DataTypes.Http.Soap.Soap12Message` | +| **Alias:** | N/A | +| **Description:** | Used to represent a SOAP 1.2 message. | +| **Default Value:** | `null` | +| **Can be used as:** | `Soap12Message`, `SoapMessage`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `Soap12Message`. +- The Literal Editor is available for [Input][] properties where the data type is `Soap12Message`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `Soap12Message`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [Soap11Message][] +- [SoapMessage][] +- [SoapRequest][] + +### Related Concepts + +None + +### External Documentation + +None + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Soap11Message]: {{< url path = "Cortex.Reference.DataTypes.Http.Soap.Soap11Message.MainDoc" >}} +[SoapMessage]: {{< url path = "Cortex.Reference.DataTypes.Http.Soap.SoapMessage.MainDoc" >}} + +[SoapRequest]: {{< url path = "Cortex.Reference.DataTypes.Http.Soap.SoapRequest.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/http/soap/soapmessage.md b/content/en/docs/2024.11/Reference/data-types/http/soap/soapmessage.md new file mode 100644 index 000000000..d5a56fef0 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/http/soap/soapmessage.md @@ -0,0 +1,101 @@ +--- +title: "SoapMessage" +linkTitle: "SoapMessage" +description: "Any data type that is used to represent a SOAP message." +weight: 1 +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Http.Soap.SoapMessage)

+ +{{% alert type="information" title="Information" %}} Improvements to this page are planned for the future. {{% /alert %}} + +## Summary + +Any data type that is used to represent a SOAP message. + +| | | +|-|-| +| **Category:** | Http | +| **Name:** | `SoapMessage` | +| **Full Name:** | `Cortex.DataTypes.Http.Soap.SoapMessage` | +| **Alias:** | N/A | +| **Description:** | Any data type that is used to represent a SOAP message. | +| **Default Value:** | `null` | +| **Can be used as:** | `SoapMessage`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### Envelope + +The Envelope represents the content of the SOAP message. The value of this property may optionally be encrypted; for more information on how to encrypt this property, see [EncryptableText][]. + +| | | +|--------------------|---------------------------| +| Data Type | [EncryptableText][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [EncryptableText][] with value `$@""` | + +### Version + +The Version represents the SOAP version of the SOAP message. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Is [Advanced][] | N/A see [Version is read-only][]| +| Default Editor | N/A see [Version is read-only][]| +| Default Value | [Int32] with value `11` or `12` set by [Soap11Message][] or [Soap12Message][] respectively | + +## Remarks + +### Version is read-only + +[Version][Version Property] is a read-only property set by the derived classes [Soap11Message][] and [Soap12Message][] and as such will not be visible in the property editor. + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `SoapMessage`. +- The Literal Editor is available for [Input][] properties where the data type is `SoapMessage`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `SoapMessage`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [EncryptableText][] +- [Int32][] +- [Soap11Message][] +- [Soap12Message][] +- [SoapRequest][] + +### Related Concepts + +None + +### External Documentation + +None + +[Version Property]: {{< ref "#version" >}} +[Version is Read-only]: {{< ref "#version-is-read-only" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Soap12Message]: {{< url path = "Cortex.Reference.DataTypes.Http.Soap.Soap12Message.MainDoc" >}} +[Soap11Message]: {{< url path = "Cortex.Reference.DataTypes.Http.Soap.Soap11Message.MainDoc" >}} +[SoapRequest]: {{< url path = "Cortex.Reference.DataTypes.Http.Soap.SoapRequest.MainDoc" >}} + +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[EncryptableText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptableText.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/http/soap/soaprequest.md b/content/en/docs/2024.11/Reference/data-types/http/soap/soaprequest.md new file mode 100644 index 000000000..e183035ba --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/http/soap/soaprequest.md @@ -0,0 +1,133 @@ +--- +title: "SoapRequest" +linkTitle: "SoapRequest" +description: "Used to represent a SOAP request." +weight: 1 +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Http.Soap.SoapRequest)

+ +{{% alert type="information" title="Information" %}} Improvements to this page are planned for the future. {{% /alert %}} + +## Summary + +The `SoapRequest` data type is used to represent a SOAP request. + +| | | +|-|-| +| **Category:** | Http | +| **Name:** | `SoapRequest` | +| **Full Name:** | `Cortex.DataTypes.Http.Soap.SoapRequest` | +| **Alias:** | N/A | +| **Description:** | Used to represent a SOAP request. | +| **Default Value:** | `null` | +| **Can be used as:** | `SoapRequest`, `Request`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### Uri + +The Uri represents the endpoint to send the SOAP message to. The value of this property may optionally be encrypted; for more information on how to encrypt this property, see [EncryptableText][]. + +| | | +|--------------------|---------------------------| +| Data Type | [EncryptableText][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [EncryptableText][] with value `$@""` | + +### SoapMessage + +The SoapMessage represents the SOAP message to send. + +| | | +|--------------------|---------------------------| +| Data Type | [SoapMessage][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [SoapMessage] with value shown below | + +```json +{ + "Action": "", + "Envelope": "", + "Version": 11 +} +``` + +### Headers + +The Headers are used to represent the HTTP headers to add to the request. + +| | | +|--------------------|---------------------------| +| Data Type | [IDictionary][IDictionary] | +| Is [Advanced][] | `true` | +| Default Editor | [Expression][] | +| Default Value | [IDictionary][IDictionary] with no value | + +### HttpVersion + +The HttpVersion represents the version of HTTP to use in the request. + +| | | +|--------------------|---------------------------| +| Data Type | [HttpRequestVersion][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | `HTTP10` | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `SoapRequest`. +- The Literal Editor is available for [Input][] properties where the data type is `SoapRequest`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `SoapRequest`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [EncryptableText][] +- [HttpRequestVersion][] +- [IDictionary][IDictionary] +- [Request][] +- [Soap11Message][] +- [Soap12Message][] +- [SoapMessage][] +- [SoapResponse][] + +### Related Concepts + +None + +### External Documentation + +None + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Soap11Message]: {{< url path = "Cortex.Reference.DataTypes.Http.Soap.Soap11Message.MainDoc" >}} +[Soap12Message]: {{< url path = "Cortex.Reference.DataTypes.Http.Soap.Soap12Message.MainDoc" >}} +[Request]: {{< url path = "Cortex.Reference.DataTypes.Http.Request.MainDoc" >}} +[SoapResponse]: {{< url path = "Cortex.Reference.DataTypes.Http.Soap.SoapResponse.MainDoc" >}} + +[IDictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} +[SoapMessage]: {{< url path = "Cortex.Reference.DataTypes.Http.Soap.SoapMessage.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} + +[EncryptableText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptableText.MainDoc" >}} +[HttpRequestVersion]: {{< url path="Cortex.Reference.DataTypes.Http.HttpRequestVersion.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/http/soap/soapresponse.md b/content/en/docs/2024.11/Reference/data-types/http/soap/soapresponse.md new file mode 100644 index 000000000..ca10bf182 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/http/soap/soapresponse.md @@ -0,0 +1,120 @@ +--- +title: "SoapResponse" +linkTitle: "SoapResponse" +description: "Used to represent a SOAP response." +weight: 1 +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Http.Soap.SoapResponse)

+ +{{% alert type="information" title="Information" %}} Improvements to this page are planned for the future. {{% /alert %}} + +## Summary + +The `SoapResponse` data type is used to represent a SOAP response. + +| | | +|-|-| +| **Category:** | Http | +| **Name:** | `SoapResponse` | +| **Full Name:** | `Cortex.DataTypes.Http.Soap.SoapResponse` | +| **Alias:** | N/A | +| **Description:** | Used to represent a SOAP response. | +| **Default Value:** | `null` | +| **Can be used as:** | `SoapResponse`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### ResponseEnvelope + +The ResponseEnvelope is used to represent the content of the SOAP response. + +| | | +|--------------------|---------------------------| +| Data Type | [dynamic][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [String] with value `$@""` | + +### ErrorMessage + +The ErrorMessage is used represent any errors that occurred when executing the SOAP request. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [String] with value `$@""` | + +### Headers + +The Headers are used to represent the HTTP headers returned in the SOAP response. + +| | | +|--------------------|---------------------------| +| Data Type | [IDictionary][IDictionary] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [IDictionary][IDictionary] with no value | + +### StatusCode + +The StatusCode is the status returned in the SOAP response. + +| | | +|--------------------|---------------------------| +| Data Type | [HttpStatusCode][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `OK` | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `SoapResponse`. +- The Literal Editor is available for [Input][] properties where the data type is `SoapResponse`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `SoapResponse`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [dynamic][] +- [IDictionary][IDictionary] +- [HttpStatusCode][] +- [String][] +- [SoapRequest][] + +### Related Concepts + +None + +### External Documentation + +- [System.Net.HttpStatusCode][] + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[SoapRequest]: {{< url path = "Cortex.Reference.DataTypes.Http.Soap.SoapRequest.MainDoc" >}} + +[dynamic]: {{< url path="Cortex.Reference.DataTypes.All.dynamic.MainDoc" >}} +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[IDictionary]: {{< url path="Cortex.Reference.DataTypes.Collections.IDictionary.MainDoc" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} + +[System.Net.HttpStatusCode]: {{< url path="MSDocs.DotNet.Api.System.Net.HttpStatusCode" >}} +[HttpStatusCode]: {{< url path = "Cortex.Reference.DataTypes.Http.HttpStatusCode.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/json/_index.md b/content/en/docs/2024.11/Reference/data-types/json/_index.md new file mode 100644 index 000000000..65d31a82a --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/json/_index.md @@ -0,0 +1,6 @@ +--- +title: "Json" +linkTitle: "Json" +description: "Data types used for working with Json." +weight: 1 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/data-types/json/jsonserializersettings.md b/content/en/docs/2024.11/Reference/data-types/json/jsonserializersettings.md new file mode 100644 index 000000000..b09620dd5 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/json/jsonserializersettings.md @@ -0,0 +1,35 @@ +--- +title: "JsonSerializerSettings" +linkTitle: "JsonSerializerSettings" +description: "Used to specify settings for converting objects to and from Json." +--- + +# {{% param title %}} + +

(Newtonsoft.Json.JsonSerializerSettings)

+ +{{< workinprogress >}} + +## Summary + +## Remarks + +### Create a JsonSerializerSettings + +### Convert JsonSerializerSettings to Text + +### Property Editor Support + +### Known Limitations + +## See Also + +### Related Data Types + +### Related Concepts + +### External Documentation + +TODO: + +* Need to have a link to default settings and explain that convert object to json sets formatting.indented diff --git a/content/en/docs/2024.11/Reference/data-types/logs/_index.md b/content/en/docs/2024.11/Reference/data-types/logs/_index.md new file mode 100644 index 000000000..f8a87a45b --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/logs/_index.md @@ -0,0 +1,6 @@ +--- +title: "Logs" +linkTitle: "Logs" +description: "Data types used for working with logs." +weight: 1 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/data-types/logs/eventseverity.md b/content/en/docs/2024.11/Reference/data-types/logs/eventseverity.md new file mode 100644 index 000000000..8c0f9bcb0 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/logs/eventseverity.md @@ -0,0 +1,72 @@ +--- +title: "EventSeverity" +linkTitle: "EventSeverity" +description: "Used to represent the severity of an event when it is logged." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Logs.EventSeverity)

+ +{{% alert type="information" title="Information" %}} Improvements to this page are planned for the future. {{% /alert %}} + +## Summary + +The `EventSeverity` data type is used to represent the severity of an event when it is logged. + +`EventSeverity` is an [enum][Working with Enums] data type, which means it has a defined set of values, where each value has an associated [String][] name and [Int32][] value. + +| | | +|-|-| +| **Category:** | Logs | +| **Name:** | `EventSeverity` | +| **Full Name:** | `Cortex.DataTypes.Logs.EventSeverity` | +| **Alias:** | N/A | +| **Description:** | Used to represent the severity of an event when it is logged. | +| **Default Value:** | `(EventSeverity)0` | +| **Can be used as:** | `EventSeverity`, `Object`, `dynamic` | +| **Can be cast to:** | `Int16` (e.g. `(Int16)EventSeverity.Verbose` or `(System.Int16)EventSeverity.Verbose` or `(short)EventSeverity.Verbose`) | +| | `Int32` (e.g. `(Int32)EventSeverity.Verbose` or `(System.Int32)EventSeverity.Verbose` or `(int)EventSeverity.Verbose`) | +| | `Int64` (e.g. `(Int64)EventSeverity.Verbose` or `(System.Int64)EventSeverity.Verbose` or `(long)EventSeverity.Verbose`) | +| | `Single` (e.g. `(Single)EventSeverity.Verbose` or `(System.Single)EventSeverity.Verbose` or `(float)EventSeverity.Verbose`) | +| | `Double` (e.g. `(Double)EventSeverity.Verbose` or `(System.Double)EventSeverity.Verbose` or `(double)EventSeverity.Verbose`) | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `EventSeverity`. +- The Literal Editor is available for [Input][] properties where the data type is `EventSeverity`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `EventSeverity`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [Int32][] +- [String][] + +### Related Concepts + +- [Explicit Casting][] +- [Working with Enums][] + +### External Documentation + +- [System.Enum][] + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Working with Enums]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Enums.MainDoc" >}} +[Explicit Casting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectCasting.ExplicitCast" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[System.Enum]: {{< url path="MSDocs.DotNet.Api.System.Enum.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/loops/_index.md b/content/en/docs/2024.11/Reference/data-types/loops/_index.md new file mode 100644 index 000000000..726dfb583 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/loops/_index.md @@ -0,0 +1,6 @@ +--- +title: "Loops" +linkTitle: "Loops" +description: "Data types used for working with loops." +weight: 1 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/data-types/loops/infinitelooperrorcode.md b/content/en/docs/2024.11/Reference/data-types/loops/infinitelooperrorcode.md new file mode 100644 index 000000000..d6c34bec4 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/loops/infinitelooperrorcode.md @@ -0,0 +1,77 @@ +--- +title: "InfiniteLoopErrorCode" +linkTitle: "InfiniteLoopErrorCode" +description: "Used to represent an error code explaining the reason an `InfiniteLoopException` occurred." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Loops.InfiniteLoopErrorCode)

+ +{{% alert type="information" title="Information" %}} Improvements to this page are planned for the future. {{% /alert %}} + +## Summary + +The `InfiniteLoopErrorCode` data type is used to represent an error code explaining the reason an [InfiniteLoopException][] occurred. For more information on the exception itself, see [InfiniteLoopException][]. + +`InfiniteLoopErrorCode` is an [enum][Working with Enums] data type, which means it has a defined set of values, where each value has an associated [String][] name and [Int32][] value. + +| | | +|-|-| +| **Category:** | Loops | +| **Name:** | `InfiniteLoopErrorCode` | +| **Full Name:** | `Cortex.DataTypes.Loops.InfiniteLoopErrorCode` | +| **Alias:** | N/A | +| **Description:** | Error code explaining the reason an [InfiniteLoopException][] occurred. | +| **Default Value:** | `(InfiniteLoopErrorCode)0` | +| **Can be used as:** | `InfiniteLoopErrorCode`, `Object`, `dynamic` | +| **Can be cast to:** | `Int16` (e.g. `(Int16)InfiniteLoopErrorCode.IncrementIsZero` or `(System.Int16)InfiniteLoopErrorCode.IncrementIsZero` or `(short)InfiniteLoopErrorCode.IncrementIsZero`) | +| | `Int32` (e.g. `(Int32)InfiniteLoopErrorCode.IncrementIsZero` or `(System.Int32)InfiniteLoopErrorCode.IncrementIsZero` or `(int)InfiniteLoopErrorCode.IncrementIsZero`) | +| | `Int64` (e.g. `(Int64)InfiniteLoopErrorCode.IncrementIsZero` or `(System.Int64)InfiniteLoopErrorCode.IncrementIsZero` or `(long)InfiniteLoopErrorCode.IncrementIsZero`) | +| | `Single` (e.g. `(Single)InfiniteLoopErrorCode.IncrementIsZero` or `(System.Single)InfiniteLoopErrorCode.IncrementIsZero` or `(float)InfiniteLoopErrorCode.IncrementIsZero`) | +| | `Double` (e.g. `(Double)InfiniteLoopErrorCode.IncrementIsZero` or `(System.Double)InfiniteLoopErrorCode.IncrementIsZero` or `(double)InfiniteLoopErrorCode.IncrementIsZero`) | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `InfiniteLoopErrorCode`. +- The Literal Editor is available for [Input][] properties where the data type is `InfiniteLoopErrorCode`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `InfiniteLoopErrorCode`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [Int32][] +- [String][] +- [InfiniteLoopException][] + +### Related Concepts + +- [Explicit Casting][] +- [Working with Enums][] +- [Working with Loops][] + +### External Documentation + +- [System.Enum][] + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[System.Enum]: {{< url path="MSDocs.DotNet.Api.System.Enum.MainDoc" >}} + +[Working with Enums]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Enums.MainDoc" >}} +[Working with Loops]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Loops.MainDoc" >}} +[Explicit Casting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectCasting.ExplicitCast" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[InfiniteLoopException]: {{< url path = "Cortex.Reference.Exceptions.Loops.InfiniteLoopException.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/microsoft365/_index.md b/content/en/docs/2024.11/Reference/data-types/microsoft365/_index.md new file mode 100644 index 000000000..cda4ff1ea --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/microsoft365/_index.md @@ -0,0 +1,6 @@ +--- +title: "Microsoft 365" +linkTitle: "Microsoft 365" +description: "Data types used for working with Microsoft 365 blocks." +weight: 1 +--- diff --git a/content/en/docs/2024.11/Reference/data-types/microsoft365/authentication/_index.md b/content/en/docs/2024.11/Reference/data-types/microsoft365/authentication/_index.md new file mode 100644 index 000000000..a6aa855da --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/microsoft365/authentication/_index.md @@ -0,0 +1,6 @@ +--- +title: "Authentication" +linkTitle: "Authentication" +description: "Data types used for authentication when working with Microsoft 365 blocks." +weight: 1 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/data-types/microsoft365/authentication/oauth/_index.md b/content/en/docs/2024.11/Reference/data-types/microsoft365/authentication/oauth/_index.md new file mode 100644 index 000000000..4e0da8906 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/microsoft365/authentication/oauth/_index.md @@ -0,0 +1,6 @@ +--- +title: "OAuth" +linkTitle: "OAuth" +description: "Data types used for authentication via OAuth when working with Microsoft 365 blocks." +weight: 1 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/data-types/microsoft365/authentication/oauth/microsoft365credentials.md b/content/en/docs/2024.11/Reference/data-types/microsoft365/authentication/oauth/microsoft365credentials.md new file mode 100644 index 000000000..2ad3f9a46 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/microsoft365/authentication/oauth/microsoft365credentials.md @@ -0,0 +1,63 @@ +--- +title: "Microsoft365Credentials" +linkTitle: "Microsoft365Credentials" +description: "Any data type used to represent details required when establishing a connection with a mail server hosted by Outlook." +weight: 1 +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Microsoft365.Authentication.OAuth.Microsoft365Credentials)

+ +{{% alert type="information" title="Information" %}} Improvements to this page are planned for the future. {{% /alert %}} + +## Summary + +Any data type used to represent details required when establishing a connection with a mail server hosted by Outlook. + +| | | +|-|-| +| **Category:** | Microsoft365 | +| **Name:** | `Microsoft365Credentials` | +| **Full Name:** | `Cortex.DataTypes.Microsoft365.Authentication.OAuth.Microsoft365Credentials` | +| **Alias:** | N/A | +| **Description:** | Any data type used to represent details required when establishing a connection with a mail server hosted by Outlook. | +| **Default Value:** | null | +| **Can be used as:** | `Microsoft365Credentials`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `Microsoft365Credentials`. +- The Literal Editor is available for [Input][] properties where the data type is `Microsoft365Credentials`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `Microsoft365Credentials`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [Microsoft365OAuthCertificateCredentials][] +- [Microsoft365OAuthCredentials][] + +### Related Concepts + +- [Working with Email][] + +### External Documentation + +None + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Microsoft365OAuthCertificateCredentials]: {{< url path="Cortex.Reference.DataTypes.Microsoft365.Authentication.OAuth.Microsoft365OAuthCertificateCredentials.MainDoc" >}} +[Microsoft365OAuthCredentials]: {{< url path="Cortex.Reference.DataTypes.Microsoft365.Authentication.OAuth.Microsoft365OAuthCredentials.MainDoc" >}} + +[Working with Email]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Email.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/microsoft365/authentication/oauth/microsoft365oauthcertificatecredentials.md b/content/en/docs/2024.11/Reference/data-types/microsoft365/authentication/oauth/microsoft365oauthcertificatecredentials.md new file mode 100644 index 000000000..b6a123ee6 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/microsoft365/authentication/oauth/microsoft365oauthcertificatecredentials.md @@ -0,0 +1,129 @@ +--- +title: "Microsoft365OAuthCertificateCredentials" +linkTitle: "Microsoft365OAuthCertificateCredentials" +description: "Used to represent public key credentials required to authenticate, via OAuth, with a server hosted by Outlook." +weight: 1 +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Microsoft365.Authentication.OAuth.Microsoft365OAuthCertificateCredentials)

+ +{{% alert type="information" title="Information" %}} Improvements to this page are planned for the future. {{% /alert %}} + +## Summary + +The `Microsoft365OAuthCertificateCredentials` data type is used to represent public key credentials required to authenticate, via OAuth, with a server hosted by Outlook. + +| | | +|-|-| +| **Category:** | Microsoft365 | +| **Name:** | `Microsoft365OAuthCertificateCredentials` | +| **Full Name:** | `Cortex.DataTypes.Microsoft365.Authentication.OAuth.Microsoft365OAuthCertificateCredentials` | +| **Alias:** | N/A | +| **Description:** | Used to represent public key credentials required to authenticate, via OAuth, with a server hosted by Outlook. | +| **Default Value:** | null | +| **Can be used as:** | `Microsoft365OAuthCertificateCredentials`, `Microsoft365Credentials`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### CertificatePath + +The CertificatePath is used to define the path pointing to the X.509 certificate file to be used for authentication via OAuth, the certificate file must be accessible from the server executing the flow. The value of this property may optionally be encrypted; for more information on how to encrypt this property, see [EncryptableText][]. + +| | | +|--------------------|---------------------------| +| Data Type | [EncryptableText][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [EncryptableText][] with value `$@""` | + +### CertificatePassword + +The CertificatePassword is used to define the password associated with the certificate file at the [CertificatePath][]. This property is an [EncryptedText][] and so it must be encrypted; for more information on how to encrypt the password, see [EncryptedText][]. + +| | | +|--------------------|---------------------------| +| Data Type | [EncryptedText][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [EncryptedText][] with value `""` | + +### ClientId + +The ClientId is used to define the client ID of the client application created to allow authentication via OAuth. The value of this property may optionally be encrypted; for more information on how to encrypt this property, see [EncryptableText][]. + +| | | +|--------------------|---------------------------| +| Data Type | [EncryptableText][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [EncryptableText][] with value `""` | + +### TenantId + +The TenantId is used to define the Microsoft365 tenant in which the client application is registered. The value of this property may optionally be encrypted; for more information on how to encrypt this property, see [EncryptableText][]. + +| | | +|--------------------|---------------------------| +| Data Type | [EncryptableText][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [EncryptableText][] with value `""` | + +### ObjectId + +The ObjectId of the user who is authenticating. The value of this property may optionally be encrypted; for more information on how to encrypt this property, see [EncryptableText][]. + +| | | +|--------------------|---------------------------| +| Data Type | [EncryptableText][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [EncryptableText][] with value `""` | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `Microsoft365OAuthCertificateCredentials`. +- The Literal Editor is available for [Input][] properties where the data type is `Microsoft365OAuthCertificateCredentials`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `Microsoft365OAuthCertificateCredentials`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [EncryptableText][] +- [EncryptedText][] +- [Microsoft365Credentials][] +- [Microsoft365OAuthCredentials][] + +### Related Concepts + +- [Working with Email][] + +### External Documentation + +None + +[CertificatePath]: {{< ref "#certificatepath">}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} + +[Working with Email]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Email.MainDoc" >}} + +[Microsoft365Credentials]: {{< url path="Cortex.Reference.DataTypes.Microsoft365.Authentication.OAuth.Microsoft365Credentials.MainDoc" >}} +[Microsoft365OAuthCredentials]: {{< url path="Cortex.Reference.DataTypes.Microsoft365.Authentication.OAuth.Microsoft365OAuthCredentials.MainDoc" >}} + +[EncryptableText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptableText.MainDoc" >}} +[EncryptedText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptedText.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/microsoft365/authentication/oauth/microsoft365oauthcredentials.md b/content/en/docs/2024.11/Reference/data-types/microsoft365/authentication/oauth/microsoft365oauthcredentials.md new file mode 100644 index 000000000..d4f489e63 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/microsoft365/authentication/oauth/microsoft365oauthcredentials.md @@ -0,0 +1,115 @@ +--- +title: "Microsoft365OAuthCredentials" +linkTitle: "Microsoft365OAuthCredentials" +description: "Used to represent client credentials required to authenticate, via OAuth, with a server hosted by Outlook." +weight: 1 +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Microsoft365.Authentication.OAuth.Microsoft365OAuthCredentials)

+ +{{% alert type="information" title="Information" %}} Improvements to this page are planned for the future. {{% /alert %}} + +## Summary + +The `Microsoft365OAuthCredentials` data type is used to represent client credentials required to authenticate, via OAuth, with a server hosted by Outlook. + +| | | +|-|-| +| **Category:** | Microsoft365 | +| **Name:** | `Microsoft365OAuthCredentials` | +| **Full Name:** | `Cortex.DataTypes.Microsoft365.Authentication.OAuth.Microsoft365OAuthCredentials` | +| **Alias:** | N/A | +| **Description:** | Used to represent client credentials required to authenticate, via OAuth, with a server hosted by Outlook. | +| **Default Value:** | null | +| **Can be used as:** | `Microsoft365OAuthCredentials`, `Microsoft365Credentials`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### ClientId + +The ClientId is used to define the client ID of the client application created to allow authentication via OAuth. The value of this property may optionally be encrypted; for more information on how to encrypt this property, see [EncryptableText][]. +| | | +|--------------------|---------------------------| +| Data Type | [EncryptableText][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [EncryptableText][] with value `""` | + +### ClientSecret + +The ClientSecret is used to define the secret used to authenticate with the client application, this value should be kept secret. This property is an [EncryptedText][] and so it must be encrypted; for more information on how to encrypt the password, see [EncryptedText][]. + +| | | +|--------------------|---------------------------| +| Data Type | [EncryptedText][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [EncryptedText][] with value `""` | + +### TenantId + +The TenantId is used to define the Microsoft365 tenant in which the client application is registered. The value of this property may optionally be encrypted; for more information on how to encrypt this property, see [EncryptableText][]. + +| | | +|--------------------|---------------------------| +| Data Type | [EncryptableText][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [EncryptableText][] with value `""` | + +### ObjectId + +The ObjectId of the user who is authenticating. The value of this property may optionally be encrypted; for more information on how to encrypt this property, see [EncryptableText][]. + +| | | +|--------------------|---------------------------| +| Data Type | [EncryptableText][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [EncryptableText][] with value `""` | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `Microsoft365OAuthCredentials`. +- The Literal Editor is available for [Input][] properties where the data type is `Microsoft365OAuthCredentials`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `Microsoft365OAuthCredentials`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [EncryptableText][] +- [EncryptedText][] +- [Microsoft365Credentials][] +- [Microsoft365OAuthCertificateCredentials][] + +### Related Concepts + +- [Working with Email][] + +### External Documentation + +None + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} + +[Working with Email]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Email.MainDoc" >}} + +[Microsoft365Credentials]: {{< url path="Cortex.Reference.DataTypes.Microsoft365.Authentication.OAuth.Microsoft365Credentials.MainDoc" >}} +[Microsoft365OAuthCertificateCredentials]: {{< url path="Cortex.Reference.DataTypes.Microsoft365.Authentication.OAuth.Microsoft365OAuthCertificateCredentials.MainDoc" >}} + +[EncryptableText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptableText.MainDoc" >}} +[EncryptedText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptedText.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/most-common/_index.md b/content/en/docs/2024.11/Reference/data-types/most-common/_index.md new file mode 100644 index 000000000..2a153650b --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/most-common/_index.md @@ -0,0 +1,16 @@ +--- +title: "Most Common" +linkTitle: "Most Common" +description: "Data types that are most commonly used." +weight: 3 +--- + +## Data Types + +### Lists + +### Dictionaries + +### InvariantCulture + +### HttpRequestHeaders diff --git a/content/en/docs/2024.11/Reference/data-types/numbers/_index.md b/content/en/docs/2024.11/Reference/data-types/numbers/_index.md new file mode 100644 index 000000000..a0551f735 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/numbers/_index.md @@ -0,0 +1,6 @@ +--- +title: "Numbers" +linkTitle: "Numbers" +description: "Data types used for working with numbers." +weight: 1 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/data-types/numbers/double.md b/content/en/docs/2024.11/Reference/data-types/numbers/double.md new file mode 100644 index 000000000..f4e13571b --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/numbers/double.md @@ -0,0 +1,112 @@ +--- +title: "Double" +linkTitle: "Double" +description: "Used to represent a fractional, or very large or small number from `-1.79769313486232e+308` through `1.79769313486232e+308`." +--- + +# {{% param title %}} + +

(System.Double)

+ +## Summary + +The `Double` data type is used to represent a fractional, or very large or small number from `-1.79769313486232e+308` through `1.79769313486232e+308`. + +| | | +|-|-| +| **Category:** | Numbers | +| **Name:** | `Double` | +| **Full Name:** | `System.Double` | +| **Alias:** | `double` | +| **Description:** | A fractional, or very large or small number from `-1.79769313486232e+308` through `1.79769313486232e+308` | +| **Size:** | `8` bytes | +| **Default Value:** | `0` | +| **Can be used as:** | `Object`, `dynamic` | +| **Can be cast to:** | `Int16`, as long as value is from `-32,768` through `32,767` (e.g. `(Int16)32767` or `(System.Int16)32767` or `(short)32767`) | +| | `Int32`, as long as value is from `-2,147,483,648` through `2,147,483,647` (e.g. `(Int32)2147483647` or `(System.Int32)2147483647` or `(int)2147483647`) | +| | `Int64`, as long as value is from `-9,223,372,036,854,775,808` through `9,223,372,036,854,775,807` (e.g. `(Int64)9223372036854775807` or `(System.Int64)9223372036854775807` or `(long)9223372036854775807`) | +| | `Single`, as long as value is from `-3.402823e+38` through `3.402823e+38` (e.g. `(Single)3.402823e+38` or `(System.Single)3.402823e+38` or `(float)3.402823e+38`) | + +## Remarks + +### Create a Double + +The following table shows some of the ways that a `Double` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Declare a `Double` literal | `0.0` | `0.0` | Literal, Expression | Zero | +| | `1.0` | `1.0` | Literal, Expression | Positive | +| | `-1.0` | `-1.0` | Literal, Expression | Negative | +| Use a `Double` expression | `1.0 + 1.0` | `2.0` | Expression | Add | +| | `1.0 - 1.0` | `0.0` | Expression | Subtract | +| | `1.0 * 1.0` | `1.0` | Expression | Multiply | +| | `1.0 / 1.0` | `1.0` | Expression | Divide | +| | `Double.MaxValue` | `1.79769313486232e+308` | Expression | Maximum value of a `Double`. See [Double.MaxValue][] | +| | `Double.MinValue` | `-1.79769313486232e+308` | Expression | Minimum value of a `Double`. See [Double.MinValue][] | +| | `Double.Parse("1")` | `1.0` | Expression | Attempts to parse text and convert it to a `Double` value. See [Double.Parse][] | +| | `Convert.ToDouble("1")` | `1.0` | Expression | Attempts to convert text to a `Double` value. See [Convert.ToDouble][] | + +### Convert Double to Text + +The following table shows some of the ways that a `Double` can be converted to text. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `ToString` | `1.0.ToString()` | `"1"` | Expression | See [Double.ToString][] | +| | `($)DoubleVariable.ToString()` where `($)DoubleVariable` has a `Double` value of `1.0` | `"1"` | Expression | See [Double.ToString][] | +| Use `Convert.ToString` | `Convert.ToString(1.0)` | `"1"` | Expression | See [Convert.ToString][] | +| | `Convert.ToString(($)DoubleVariable)` where `($)DoubleVariable` has a `Double` value of `1.0` | `"1"` | Expression | See [Convert.ToString][] | +| Use `Convert Object To Text` block | where `Object` property has a `Double` value of `1.0` | `"1"` | N/A | See [Convert Object To Text][] | +| Use `Convert Object To Json` block | where `Object` property has a `Double` value of `1.0` | `"1.0"` | N/A | See [Convert Object To Json][] | + +### Property Editor Support + +* The Expression Editor is available for [Input][] properties where the data type is `Double`. +* The Literal Editor is available for [Input][] properties where the data type is `Double`. + * Expression syntax is not supported within the Literal Editor for the `Double` data type. +* The Variable Editor is available for [InputOutput][] and [Output][] properties where the data type is `Double`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +* [Int16][] +* [Int32][] +* [Int64][] +* [Single][] + +### Related Concepts + +* [Working with Numbers][] + +### External Documentation + +* [System.Double][] + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Convert.ToDouble]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToDouble" >}} +[Convert.ToString]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToString" >}} + +[System.Double]: {{< url path="MSDocs.DotNet.Api.System.Double.MainDoc" >}} +[Double.MaxValue]: {{< url path="MSDocs.DotNet.Api.System.Double.MaxValue" >}} +[Double.MinValue]: {{< url path="MSDocs.DotNet.Api.System.Double.MinValue" >}} +[Double.Parse]: {{< url path="MSDocs.DotNet.Api.System.Double.Parse" >}} +[Double.ToString]: {{< url path="MSDocs.DotNet.Api.System.Double.ToString" >}} + +[Convert Object To Text]: {{< url path="Cortex.Reference.Blocks.Objects.ConvertObject.ConvertObjectToText.MainDoc" >}} +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} + +[Int16]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int16.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[Int64]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int64.MainDoc" >}} +[Single]: {{< url path="Cortex.Reference.DataTypes.Numbers.Single.MainDoc" >}} + +[Working with Numbers]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Numbers.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/numbers/int16.md b/content/en/docs/2024.11/Reference/data-types/numbers/int16.md new file mode 100644 index 000000000..b58e15146 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/numbers/int16.md @@ -0,0 +1,106 @@ +--- +title: "Int16" +linkTitle: "Int16" +description: "Used to represent a whole number from `-32,768` through `32767`." +--- + +# {{% param title %}} + +

(System.Int16)

+ +## Summary + +The `Int16` data type is used to represent a whole number from `-32,768` through `32,767`. + +| | | +|-|-| +| **Category:** | Numbers | +| **Name:** | `Int16` | +| **Full Name:** | `System.Int16` | +| **Alias:** | `short` | +| **Description:** | A whole number from `-32,768` through `32,767` | +| **Size:** | `2` bytes | +| **Default Value:** | `0` | +| **Can be used as:** | `Int16`, `Int32`, `Int64`, `Single`, `Double`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Remarks + +### Create an Int16 + +The following table shows some of the ways that an `Int16` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use an `Int16` expression | `(Int16)(1 + 1)` | `2` | Expression | Add | +| | `(System.Int16)(1 - 1)` | `0` | Expression | Subtract | +| | `(short)(1 * 1)` | `1` | Expression | Multiply | +| | `(short)(1 / 1)` | `1` | Expression | Divide | +| | `Int16.MaxValue` | `32767` | Expression | Maximum value of an `Int16`. See [Int16.MaxValue][] | +| | `Int16.MinValue` | `-32768` | Expression | Minimum value of an `Int16`. See [Int16.MinValue][] | +| | `Int16.Parse("1")` | `1` | Expression | Attempts to parse text and convert it to an `Int16` value. See [Int16.Parse][] | +| | `Convert.ToInt16("1")` | `1` | Expression | Attempts to convert text to an `Int16` value. See [Convert.ToInt16][] | + +### Convert Int16 to Text + +The following table shows some of the ways that an `Int16` can be converted to text. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `ToString` | `((Int16)1).ToString()` | `"1"` | Expression | See [Int16.ToString][] | +| | `($)Int16Variable.ToString()` where `($)Int16Variable` has an `Int16` value of `1` | `"1"` | Expression | See [Int16.ToString][] | +| Use `Convert.ToString` | `Convert.ToString((Int16)1)` | `"1"` | Expression | See [Convert.ToString][] | +| | `Convert.ToString(($)Int16Variable)` where `($)Int16Variable` has an `Int16` value of `1` | `"1"` | Expression | See [Convert.ToString][] | +| Use `Convert Object To Text` block | where `Object` property has an `Int16` value of `1` | `"1"` | N/A | See [Convert Object To Text][] | +| Use `Convert Object To Json` block | where `Object` property has an `Int16` value of `1` | `"1"` | N/A | See [Convert Object To Json][] | + +### Property Editor Support + +* The Expression Editor is available for [Input][] properties where the data type is `Int16`. +* The Literal Editor is available for [Input][] properties where the data type is `Int16`. + * Expression syntax is not supported within the Literal Editor for the `Int16` data type. +* The Variable Editor is available for [InputOutput][] and [Output][] properties where the data type is `Int16`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +* [Int32][] +* [Int64][] +* [Single][] +* [Double][] + +### Related Concepts + +* [Working with Numbers][] + +### External Documentation + +* [System.Int16][] + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Convert.ToInt16]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToInt16" >}} +[Convert.ToString]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToString" >}} + +[System.Int16]: {{< url path="MSDocs.DotNet.Api.System.Int16.MainDoc" >}} +[Int16.MaxValue]: {{< url path="MSDocs.DotNet.Api.System.Int16.MaxValue" >}} +[Int16.MinValue]: {{< url path="MSDocs.DotNet.Api.System.Int16.MinValue" >}} +[Int16.Parse]: {{< url path="MSDocs.DotNet.Api.System.Int16.Parse" >}} +[Int16.ToString]: {{< url path="MSDocs.DotNet.Api.System.Int16.ToString" >}} + +[Convert Object To Text]: {{< url path="Cortex.Reference.Blocks.Objects.ConvertObject.ConvertObjectToText.MainDoc" >}} +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} + +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[Int64]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int64.MainDoc" >}} +[Single]: {{< url path="Cortex.Reference.DataTypes.Numbers.Single.MainDoc" >}} +[Double]: {{< url path="Cortex.Reference.DataTypes.Numbers.Double.MainDoc" >}} + +[Working with Numbers]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Numbers.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/numbers/int32.md b/content/en/docs/2024.11/Reference/data-types/numbers/int32.md new file mode 100644 index 000000000..cba70cae8 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/numbers/int32.md @@ -0,0 +1,115 @@ +--- +title: "Int32" +linkTitle: "Int32" +description: "Used to represent a whole number from `-2,147,483,648` through `2,147,483,647`." +--- + +# {{% param title %}} + +

(System.Int32)

+ +## Summary + +The `Int32` data type is used to represent a whole number from `-2,147,483,648` through `2,147,483,647`. + +| | | +|-|-| +| **Category:** | Numbers | +| **Name:** | `Int32` | +| **Full Name:** | `System.Int32` | +| **Alias:** | `int` | +| **Description:** | A whole number from `-2,147,483,648` through `2,147,483,647` | +| **Size:** | `4` bytes | +| **Default Value:** | `0` | +| **Can be used as:** | `Int32`, `Int64`, `Single`, `Double`, `Object`, `dynamic` | +| **Can be cast to:** | `Int16`, as long as value is from `-32,768` through `32,767` (e.g. `(Int16)32767` or `(System.Int16)32767` or `(short)32767`) | + +## Remarks + +### Create an Int32 + +The following table shows some of the ways that an `Int32` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Declare an `Int32` literal | `0` | `0` | Literal, Expression | Zero | +| | `1` | `1` | Literal, Expression | Positive | +| | `-1` | `-1` | Literal, Expression | Negative | +| Use an `Int32` expression | `1 + 1` | `2` | Expression | Add | +| | `1 - 1` | `0` | Expression | Subtract | +| | `1 * 1` | `1` | Expression | Multiply | +| | `1 / 1` | `1` | Expression | Divide | +| | `Int32.MaxValue` | `2147483647` | Expression | Maximum value of an `Int32`. See [Int32.MaxValue][] | +| | `Int32.MinValue` | `-2147483648` | Expression | Minimum value of an `Int32`. See [Int32.MinValue][] | +| | `Int32.Parse("1")` | `1` | Expression | Attempts to parse text and convert it to an `Int32` value. See [Int32.Parse][] | +| | `Convert.ToInt32("1")` | `1` | Expression | Attempts to convert text to an `Int32` value. See [Convert.ToInt32][] | + +Please see [Instantiating an Int32 Value][] for further information. + +### Convert Int32 to Text + +The following table shows some of the ways that an `Int32` can be converted to text. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `ToString` | `1.ToString()` | `"1"` | Expression | See [Int32.ToString][] | +| | `($)Int32Variable.ToString()` where `($)Int32Variable` has a value of `1` | `"1"` | Expression | See [Int32.ToString][] | +| Use `Convert.ToString` | `Convert.ToString(1)` | `"1"` | Expression | See [Convert.ToString][] | +| | `Convert.ToString(($)Int32Variable)` where `($)Int32Variable` has a value of `1` | `"1"` | Expression | See [Convert.ToString][] | +| Use `Convert Object To Text` block | where `Object` property has a value of `1` | `"1"` | N/A | See [Convert Object To Text][] | +| Use `Convert Object To Json` block | where `Object` property has a value of `1` | `"1"` | N/A | See [Convert Object To Json][] | + +Please see [Representing an Int32 as a String][] for further information. + +### Property Editor Support + +* The Expression Editor is available for [Input][] properties where the data type is `Int32`. +* The Literal Editor is available for [Input][] properties where the data type is `Int32`. + * Expression syntax is not supported within the Literal Editor for the `Int32` data type. +* The Variable Editor is available for [InputOutput][] and [Output][] properties where the data type is `Int32`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +* [Int16][] +* [Int64][] +* [Single][] +* [Double][] + +### Related Concepts + +* [Working with Numbers][] + +### External Documentation + +* [System.Int32][] + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Convert.ToInt32]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToInt32" >}} +[Convert.ToString]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToString" >}} + +[System.Int32]: {{< url path="MSDocs.DotNet.Api.System.Int32.MainDoc" >}} +[Int32.MaxValue]: {{< url path="MSDocs.DotNet.Api.System.Int32.MaxValue" >}} +[Int32.MinValue]: {{< url path="MSDocs.DotNet.Api.System.Int32.MinValue" >}} +[Int32.Parse]: {{< url path="MSDocs.DotNet.Api.System.Int32.Parse" >}} +[Int32.ToString]: {{< url path="MSDocs.DotNet.Api.System.Int32.ToString" >}} +[Instantiating an Int32 Value]: {{< url path="MSDocs.DotNet.Api.System.Int32.InstantiatingAnInt32" >}} +[Representing an Int32 as a String]: {{< url path="MSDocs.DotNet.Api.System.Int32.RepresentingAnInt32AsAString" >}} + +[Convert Object To Text]: {{< url path="Cortex.Reference.Blocks.Objects.ConvertObject.ConvertObjectToText.MainDoc" >}} +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} + +[Int16]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int16.MainDoc" >}} +[Int64]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int64.MainDoc" >}} +[Single]: {{< url path="Cortex.Reference.DataTypes.Numbers.Single.MainDoc" >}} +[Double]: {{< url path="Cortex.Reference.DataTypes.Numbers.Double.MainDoc" >}} + +[Working with Numbers]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Numbers.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/numbers/int64.md b/content/en/docs/2024.11/Reference/data-types/numbers/int64.md new file mode 100644 index 000000000..0d436a65d --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/numbers/int64.md @@ -0,0 +1,115 @@ +--- +title: "Int64" +linkTitle: "Int64" +description: "Used to represent a whole number from `-9,223,372,036,854,775,808` through `9,223,372,036,854,775,807`." +--- + +# {{% param title %}} + +

(System.Int64)

+ +## Summary + +The `Int64` data type is used to represent a whole number from `-9,223,372,036,854,775,808` through `9,223,372,036,854,775,807`. + +| | | +|-|-| +| **Category:** | Numbers | +| **Name:** | `Int64` | +| **Full Name:** | `System.Int64` | +| **Alias:** | `long` | +| **Description:** | A whole number from `-9,223,372,036,854,775,808` through `9,223,372,036,854,775,807` | +| **Size:** | `8` bytes | +| **Default Value:** | `0` | +| **Can be used as:** | `Int64`, `Single`, `Double`, `Object`, `dynamic` | +| **Can be cast to:** | `Int16`, as long as value is from `-32,768` through `32,767` (e.g. `(Int16)32767` or `(System.Int16)32767` or `(short)32767`) | +| | `Int32`, as long as value is from `-2,147,483,648` through `2,147,483,647` (e.g. `(Int32)2147483647` or `(System.Int32)2147483647` or `(int)2147483647`) + +## Remarks + +### Create an Int64 + +The following table shows some of the ways that an `Int64` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Declare an `Int64` literal | `9223372036854775807` | `9223372036854775807` | Literal, Expression | Positive, where value is greater than `2,147,483,647`. If it is between `0` and `2,147,483,647` it will only be an `Int64` if the property's data type is also `Int64`, otherwise it will be an `Int32`. | +| | `-9223372036854775808` | `-9223372036854775808` | Literal, Expression | Negative, where value is less than `-2,147,483,648`. If it is between `-2,147,483,648` and `0` it will only be an `Int64` if the property's data type is also `Int64`, otherwise it will be an `Int32`. | +| Use an `Int64` expression | `(Int64)(1 + 1)` | `2` | Expression | Add | +| | `(System.Int64)(1 - 1)` | `0` | Expression | Subtract | +| | `(long)(1 * 1)` | `1` | Expression | Multiply | +| | `(long)(1 / 1)` | `1` | Expression | Divide | +| | `Int64.MaxValue` | `9223372036854775807` | Expression | Maximum value of an `Int64`. See [Int64.MaxValue][] | +| | `Int64.MinValue` | `-9223372036854775808` | Expression | Minimum value of an `Int64`. See [Int64.MinValue][] | +| | `Int64.Parse("1")` | `1` | Expression | Attempts to parse text and convert it to an `Int64` value. See [Int64.Parse][] | +| | `Convert.ToInt64("1")` | `1` | Expression | Attempts to convert text to an `Int64` value. See [Convert.ToInt64][] | + +Please see [Instantiating an Int64 Value][] for further information. + +### Convert Int64 to Text + +The following table shows some of the ways that an `Int64` can be converted to text. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `ToString` | `((Int64)1).ToString()` | `"1"` | Expression | See [Int64.ToString][] | +| | `($)Int64Variable.ToString()` where `($)Int64Variable` has an `Int64` value of `1` | `"1"` | Expression | See [Int64.ToString][] | +| Use `Convert.ToString` | `Convert.ToString((Int64)1)` | `"1"` | Expression | See [Convert.ToString][] | +| | `Convert.ToString(($)Int64Variable)` where `($)Int64Variable` has an `Int64` value of `1` | `"1"` | Expression | See [Convert.ToString][] | +| Use `Convert Object To Text` block | where `Object` property has an `Int64` value of `1` | `"1"` | N/A | See [Convert Object To Text][] | +| Use `Convert Object To Json` block | where `Object` property has an `Int64` value of `1` | `"1"` | N/A | See [Convert Object To Json][] | + +Please see [Representing an Int64 as a String][] for further information. + +### Property Editor Support + +* The Expression Editor is available for [Input][] properties where the data type is `Int64`. +* The Literal Editor is available for [Input][] properties where the data type is `Int64`. + * Expression syntax is not supported within the Literal Editor for the `Int64` data type. +* The Variable Editor is available for [InputOutput][] and [Output][] properties where the data type is `Int64`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +* [Int16][] +* [Int32][] +* [Single][] +* [Double][] + +### Related Concepts + +* [Working with Numbers][] + +### External Documentation + +* [System.Int64][] + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Convert.ToInt64]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToInt64" >}} +[Convert.ToString]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToString" >}} + +[System.Int64]: {{< url path="MSDocs.DotNet.Api.System.Int64.MainDoc" >}} +[Int64.MaxValue]: {{< url path="MSDocs.DotNet.Api.System.Int64.MaxValue" >}} +[Int64.MinValue]: {{< url path="MSDocs.DotNet.Api.System.Int64.MinValue" >}} +[Int64.Parse]: {{< url path="MSDocs.DotNet.Api.System.Int64.Parse" >}} +[Int64.ToString]: {{< url path="MSDocs.DotNet.Api.System.Int64.ToString" >}} +[Instantiating an Int64 Value]: {{< url path="MSDocs.DotNet.Api.System.Int64.InstantiatingAnInt64" >}} +[Representing an Int64 as a String]: {{< url path="MSDocs.DotNet.Api.System.Int64.RepresentingAnInt64AsAString" >}} + +[Convert Object To Text]: {{< url path="Cortex.Reference.Blocks.Objects.ConvertObject.ConvertObjectToText.MainDoc" >}} +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} + +[Int16]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int16.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[Single]: {{< url path="Cortex.Reference.DataTypes.Numbers.Single.MainDoc" >}} +[Double]: {{< url path="Cortex.Reference.DataTypes.Numbers.Double.MainDoc" >}} + +[Working with Numbers]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Numbers.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/numbers/single.md b/content/en/docs/2024.11/Reference/data-types/numbers/single.md new file mode 100644 index 000000000..216b69523 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/numbers/single.md @@ -0,0 +1,108 @@ +--- +title: "Single" +linkTitle: "Single" +description: "Used to represent a fractional, or very large or small number from `-3.402823e+38` through `3.402823e+38`." +--- + +# {{% param title %}} + +

(System.Single)

+ +## Summary + +The `Single` data type is used to represent a fractional, or very large or small number from `-3.402823e+38` through `3.402823e+38`. + +| | | +|-|-| +| **Category:** | Numbers | +| **Name:** | `Single` | +| **Full Name:** | `System.Single` | +| **Alias:** | `float` | +| **Description:** | A fractional, or very large or small number from `-3.402823e+38` through `3.402823e+38` | +| **Size:** | `4` bytes | +| **Default Value:** | `0` | +| **Can be used as:** | `Double`, `Object`, `dynamic` | +| **Can be cast to:** | `Int16`, as long as value is from `-32,768` through `32,767` (e.g. `(Int16)32767` or `(System.Int16)32767` or `(short)32767`) | +| | `Int32`, as long as value is from `-2,147,483,648` through `2,147,483,647` (e.g. `(Int32)2147483647` or `(System.Int32)2147483647` or `(int)2147483647`) | +| | `Int64`, as long as value is from `-9,223,372,036,854,775,808` through `9,223,372,036,854,775,807` (e.g. `(Int64)9223372036854775807` or `(System.Int64)9223372036854775807` or `(long)9223372036854775807`) | + +## Remarks + +### Create a Single + +The following table shows some of the ways that a `Single` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use a `Single` expression | `1.0f + 1.0f` | `2.0` | Expression | Add | +| | `1.0f - 1.0f` | `0.0` | Expression | Subtract | +| | `1.0f * 1.0f` | `1.0` | Expression | Multiply | +| | `1.0f / 1.0f` | `1.0` | Expression | Divide | +| | `Single.MaxValue` | `3.402823e+38` | Expression | Maximum value of a `Single`. See [Single.MaxValue][] | +| | `Single.MinValue` | `-3.402823e+38` | Expression | Minimum value of a `Single`. See [Single.MinValue][] | +| | `Single.Parse("1")` | `1.0` | Expression | Attempts to parse text and convert it to a `Single` value. See [Single.Parse][] | +| | `Convert.ToSingle("1")` | `1.0` | Expression | Attempts to convert text to a `Single` value. See [Convert.ToSingle][] | + +### Convert Single to Text + +The following table shows some of the ways that a `Single` can be converted to text. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `ToString` | `1.0f.ToString()` | `"1"` | Expression | See [Single.ToString][] | +| | `($)SingleVariable.ToString()` where `($)SingleVariable` has a `Single` value of `1.0` | `"1"` | Expression | See [Single.ToString][] | +| Use `Convert.ToString` | `Convert.ToString(1.0f)` | `"1"` | Expression | See [Convert.ToString][] | +| | `Convert.ToString(($)SingleVariable)` where `($)SingleVariable` has a `Single` value of `1.0` | `"1"` | Expression | See [Convert.ToString][] | +| Use `Convert Object To Text` block | where `Object` property has a `Single` value of `1.0` | `"1"` | N/A | See [Convert Object To Text][] | +| Use `Convert Object To Json` block | where `Object` property has a `Single` value of `1.0` | `"1.0"` | N/A | See [Convert Object To Json][] | + +### Property Editor Support + +* The Expression Editor is available for [Input][] properties where the data type is `Single`. +* The Literal Editor is available for [Input][] properties where the data type is `Single`. + * Expression syntax is not supported within the Literal Editor for the `Single` data type. +* The Variable Editor is available for [InputOutput][] and [Output][] properties where the data type is `Single`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +* [Int16][] +* [Int32][] +* [Int64][] +* [Double][] + +### Related Concepts + +* [Working with Numbers][] + +### External Documentation + +* [System.Single][] + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Convert.ToSingle]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToSingle" >}} +[Convert.ToString]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToString" >}} + +[System.Single]: {{< url path="MSDocs.DotNet.Api.System.Single.MainDoc" >}} +[Single.MaxValue]: {{< url path="MSDocs.DotNet.Api.System.Single.MaxValue" >}} +[Single.MinValue]: {{< url path="MSDocs.DotNet.Api.System.Single.MinValue" >}} +[Single.Parse]: {{< url path="MSDocs.DotNet.Api.System.Single.Parse" >}} +[Single.ToString]: {{< url path="MSDocs.DotNet.Api.System.Single.ToString" >}} + +[Convert Object To Text]: {{< url path="Cortex.Reference.Blocks.Objects.ConvertObject.ConvertObjectToText.MainDoc" >}} +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} + +[Int16]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int16.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[Int64]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int64.MainDoc" >}} +[Double]: {{< url path="Cortex.Reference.DataTypes.Numbers.Double.MainDoc" >}} + +[Working with Numbers]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Numbers.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/other/_index.md b/content/en/docs/2024.11/Reference/data-types/other/_index.md new file mode 100644 index 000000000..814b484ba --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/other/_index.md @@ -0,0 +1,6 @@ +--- +title: "Other" +linkTitle: "Other" +description: "Data types that don't match other categories." +weight: 2 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/data-types/other/guid.md b/content/en/docs/2024.11/Reference/data-types/other/guid.md new file mode 100644 index 000000000..d9c55a77d --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/other/guid.md @@ -0,0 +1,31 @@ +--- +title: "Guid" +linkTitle: "Guid" +description: "Used to represent a globally unique identifier (GUID)." +--- + +# {{% param title %}} + +

(System.Guid)

+ +{{< workinprogress >}} + +## Summary + +## Remarks + +### Create a Guid + +### Convert Guid to Text + +### Property Editor Support + +### Known Limitations + +## See Also + +### Related Data Types + +### Related Concepts + +### External Documentation diff --git a/content/en/docs/2024.11/Reference/data-types/other/nullable-1.md b/content/en/docs/2024.11/Reference/data-types/other/nullable-1.md new file mode 100644 index 000000000..4099f5fd1 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/other/nullable-1.md @@ -0,0 +1,31 @@ +--- +title: "Nullable" +linkTitle: "Nullable" +description: "Used to represent a value type that can be set to `null`." +--- + +# {{% param title %}} + +

(System.Nullable<T>)

+ +{{< workinprogress >}} + +## Summary + +## Remarks + +### Create a Nullable<T> + +### Convert Nullable<T> to Text + +### Property Editor Support + +### Known Limitations + +## See Also + +### Related Data Types + +### Related Concepts + +### External Documentation diff --git a/content/en/docs/2024.11/Reference/data-types/powershell/_index.md b/content/en/docs/2024.11/Reference/data-types/powershell/_index.md new file mode 100644 index 000000000..a4649eb72 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/powershell/_index.md @@ -0,0 +1,6 @@ +--- +title: "PowerShell" +linkTitle: "PowerShell" +description: "Data types used for working with PowerShell." +weight: 1 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/data-types/powershell/powershellsessiondetails.md b/content/en/docs/2024.11/Reference/data-types/powershell/powershellsessiondetails.md new file mode 100644 index 000000000..95999455f --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/powershell/powershellsessiondetails.md @@ -0,0 +1,142 @@ +--- +title: "PowerShellSessionDetails" +linkTitle: "PowerShellSessionDetails" +description: "Any data type representing configuration for executing PowerShell commands or scripts on a specified host." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.PowerShell.PowerShellSessionDetails)

+ +## Summary + +Any data type representing configuration for executing PowerShell commands or scripts on a specified host. + +| | | +|-|-| +| **Category:** | PowerShell | +| **Name:** | `PowerShellSessionDetails` | +| **Full Name:** | `Cortex.DataTypes.PowerShell.PowerShellSessionDetails` | +| **Alias:** | N/A | +| **Description:** | Any data type representing configuration for executing PowerShell commands or scripts on a specified host. | +| **Default Value:** | `null` | +| **Can be used as:** | `PowerShellSessionDetails`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### ServerDetails + +The ServerDetails are used to configure the [Host][] and [Port][] to connect to and whether or not to [UseSsl][]. + +| | | +|--------------------|---------------------------| +| Data Type | [ServerDetails][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [ServerDetails][] with value shown below: | + +```json +{ + "Host": "localhost", + "Port": 5986, + "UseSsl": true +} +``` + +### Credentials + +The Credentials are used to configure the [Domain][], [Username][] and [Password][] used to connect to the host. + +| | | +|--------------------|---------------------------| +| Data Type | [UserCredentials][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [UserCredentials][] with value shown below: | + +```json +{ + "Domain": "", + "Username": "", + "Password": "" +} +``` + +### PsConfiguration + +The PsConfiguration controls the PowerShell configuration that will be used by the host. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [String][] with value `"Microsoft.PowerShell"`: | + +## Remarks + +### Most Common PowerShellSessionDetails Data Types + +Any of the following data types can be used where a `PowerShellSessionDetails` is required: + +* [PowerShellWinRmSessionDetails][] + +### Create a PowerShellSessionDetails + +For some of the ways that a `PowerShellSessionDetails` can be created, please see each of the `PowerShellSessionDetails` data types: + +* [PowerShellWinRmSessionDetails][] + +### Convert PowerShellSessionDetails to Text + +For some of the ways that a `PowerShellSessionDetails` can be converted to text, please see each of the `PowerShellSessionDetails` data types: + +* [PowerShellWinRmSessionDetails][] + +### Property Editor Support + +* The Expression Editor is available for [Input][] properties where the data type is `PowerShellSessionDetails`. +* The Literal Editor is available for [Input][] properties where the data type is `PowerShellSessionDetails`. +* The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `PowerShellSessionDetails`. + +### Known limitations + +None + +## See Also + +### Related Data Types + +* [PowerShellWinRMSessionDetails][] +* [ServerDetails][] +* [String][] +* [UserCredentials][] + +### Related Concepts + +None + +### External Documentation + +None + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} + +[ServerDetails]: {{< url path="Cortex.Reference.DataTypes.SessionDetails.ServerDetails.MainDoc" >}} +[Host]: {{< url path="Cortex.Reference.DataTypes.SessionDetails.ServerDetails.Host" >}} +[Port]: {{< url path="Cortex.Reference.DataTypes.SessionDetails.ServerDetails.Port" >}} +[UseSsl]: {{< url path="Cortex.Reference.DataTypes.SessionDetails.ServerDetails.UseSsl" >}} + +[UserCredentials]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.MainDoc" >}} +[Domain]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.Domain" >}} +[Username]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.Username" >}} +[Password]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.Password" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[PowerShellWinRMSessionDetails]: {{< url path="Cortex.Reference.DataTypes.PowerShell.PowerShellWinRMSessionDetails.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/powershell/powershellwinrmsessiondetails.md b/content/en/docs/2024.11/Reference/data-types/powershell/powershellwinrmsessiondetails.md new file mode 100644 index 000000000..8d3e80111 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/powershell/powershellwinrmsessiondetails.md @@ -0,0 +1,126 @@ +--- +title: "PowerShellWinRmSessionDetails" +linkTitle: "PowerShellWinRmSessionDetails" +description: "Used to represent configuration for executing PowerShell commands or scripts on a specified host, via WinRm." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.PowerShell.PowerShellWinRmSessionDetails)

+ +{{% alert type="information" title="Information" %}} Improvements to this page are planned for the future. {{% /alert %}} + +## Summary + +The `PowerShellWinRmSessionDetails` data type is used to represent configuration for executing PowerShell commands or scripts on a specified host, via WinRm. + +| | | +|-|-| +| **Category:** | PowerShell | +| **Name:** | `PowerShellWinRmSessionDetails` | +| **Full Name:** | `Cortex.DataTypes.PowerShell.PowerShellWinRmSessionDetails` | +| **Alias:** | N/A | +| **Description:** | Used to represent configuration for executing PowerShell commands or scripts on a specified host, via WinRm. | +| **Default Value:** | `null` | +| **Can be used as:** | `PowerShellWinRmSessionDetails`, `PowerShellSessionDetails`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### ServerDetails + +The ServerDetails are used to configure the [Host][] and [Port][] to connect to and whether or not to [UseSsl][]. + +| | | +|--------------------|---------------------------| +| Data Type | [ServerDetails][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [ServerDetails][] with value shown below: | + +```json +{ + "Host": "", + "Port": 465, + "UseSsl": true +} +``` + +### Credentials + +The Credentials are used to configure the [Domain][], [Username][] and [Password][] used to connect to the host. + +| | | +|--------------------|---------------------------| +| Data Type | [UserCredentials][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [UserCredentials][] with value shown below: | + +```json +{ + "Domain": "", + "Username": "", + "Password": "" +} +``` + +### PsConfiguration + +The PsConfiguration controls the PowerShell configuration that will be used by the host. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [String][] with value `"Microsoft.PowerShell"`: | + +## Remarks + +### Property Editor Support + +* The Expression Editor is available for [Input][] properties where the data type is `PowerShellWinRmSessionDetails`. +* The Literal Editor is available for [Input][] properties where the data type is `PowerShellWinRmSessionDetails`. +* The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `PowerShellWinRmSessionDetails`. + +### Known limitations + +None + +## See Also + +### Related Data Types + +* [PowerShellSessionDetails][] +* [ServerDetails][] +* [String][] +* [UserCredentials][] + +### Related Concepts + +None + +### External Documentation + +None + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} + +[ServerDetails]: {{< url path="Cortex.Reference.DataTypes.SessionDetails.ServerDetails.MainDoc" >}} +[Host]: {{< url path="Cortex.Reference.DataTypes.SessionDetails.ServerDetails.Host" >}} +[Port]: {{< url path="Cortex.Reference.DataTypes.SessionDetails.ServerDetails.Port" >}} +[UseSsl]: {{< url path="Cortex.Reference.DataTypes.SessionDetails.ServerDetails.UseSsl" >}} + +[UserCredentials]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.MainDoc" >}} +[Domain]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.Domain" >}} +[Username]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.Username" >}} +[Password]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.Password" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[PowerShellSessionDetails]: {{< url path="Cortex.Reference.DataTypes.PowerShell.PowerShellSessionDetails.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/powershell/psremotingerrorcode.md b/content/en/docs/2024.11/Reference/data-types/powershell/psremotingerrorcode.md new file mode 100644 index 000000000..60e9dcd3f --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/powershell/psremotingerrorcode.md @@ -0,0 +1,75 @@ +--- +title: "PSRemotingErrorCode" +linkTitle: "PSRemotingErrorCode" +description: "Used to represent an error code explaining the reason a PSRemotingException occurred." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.PowerShell.PSRemotingErrorCode)

+ +{{% alert type="information" title="Information" %}} Improvements to this page are planned for the future. {{% /alert %}} + +## Summary + +The `PSRemotingErrorCode` data type is used to represent an error code explaining the reason a [PSRemotingException][] occurred. For more information on the exception itself, see [PSRemotingException][]. + +`PSRemotingErrorCode` is an [enum][Working with Enums] data type, which means it has a defined set of values, where each value has an associated [String][] name and [Int32][] value. + +| | | +|-|-| +| **Category:** | PowerShell | +| **Name:** | `PSRemotingErrorCode` | +| **Full Name:** | `Cortex.DataTypes.PowerShell.PSRemotingErrorCode` | +| **Alias:** | N/A | +| **Description:** | Error code explaining the reason a [PSRemotingException][] occurred. | +| **Default Value:** | `(PSRemotingErrorCode)0` | +| **Can be used as:** | `PSRemotingErrorCode`, `Object`, `dynamic` | +| **Can be cast to:** | `Int16` (e.g. `(Int16)PSRemotingErrorCode.AccessDenied` or `(System.Int16)PSRemotingErrorCode.AccessDenied` or `(short)PSRemotingErrorCode.AccessDenied`) | +| | `Int32` (e.g. `(Int32)PSRemotingErrorCode.AccessDenied` or `(System.Int32)PSRemotingErrorCode.AccessDenied` or `(int)PSRemotingErrorCode.AccessDenied`) | +| | `Int64` (e.g. `(Int64)PSRemotingErrorCode.AccessDenied` or `(System.Int64)PSRemotingErrorCode.AccessDenied` or `(long)PSRemotingErrorCode.AccessDenied`) | +| | `Single` (e.g. `(Single)PSRemotingErrorCode.AccessDenied` or `(System.Single)PSRemotingErrorCode.AccessDenied` or `(float)PSRemotingErrorCode.AccessDenied`) | +| | `Double` (e.g. `(Double)PSRemotingErrorCode.AccessDenied` or `(System.Double)PSRemotingErrorCode.AccessDenied` or `(double)PSRemotingErrorCode.AccessDenied`) | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `PSRemotingErrorCode`. +- The Literal Editor is available for [Input][] properties where the data type is `PSRemotingErrorCode`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `PSRemotingErrorCode`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [Int32][] +- [String][] +- [PSRemotingException][] + +### Related Concepts + +- [Explicit Casting][] +- [Working with Enums][] + +### External Documentation + +- [System.Enum][] + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[System.Enum]: {{< url path="MSDocs.DotNet.Api.System.Enum.MainDoc" >}} + +[Working with Enums]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Enums.MainDoc" >}} +[Explicit Casting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectCasting.ExplicitCast" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[PSRemotingException]: {{< url path = "Cortex.Reference.Exceptions.PowerShell.PSRemotingException.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/powershell/records.md b/content/en/docs/2024.11/Reference/data-types/powershell/records.md new file mode 100644 index 000000000..a565a24a6 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/powershell/records.md @@ -0,0 +1,145 @@ +--- +title: "Records" +linkTitle: "Records" +description: "Used to represent messages that are returned while executing a PowerShell command or script." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.PowerShell.Records)

+ +{{% alert type="information" title="Information" %}} Improvements to this page are planned for the future. {{% /alert %}} + +## Summary + +The `Records` data type is used to represent messages that are returned while executing a PowerShell command or script. + +Messages are categorised as: + +- [ErrorRecords][ErrorRecords] +- [WarningRecords][WarningRecords] +- [DebugRecords][DebugRecords] +- [ProgressRecords][ProgressRecords] +- [VerboseRecords][VerboseRecords] +- [InformationRecords][InformationRecords] + +| | | +|-|-| +| **Category:** | PowerShell| +| **Name:** | `Records` | +| **Full Name:** | `Cortex.DataTypes.PowerShell.Records` | +| **Alias:** | N/A | +| **Description:** | Used to represent messages that are returned while executing a PowerShell command or script. | +| **Default Value:** | null | +| **Can be used as:** | `Records`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### ErrorRecords + +Represents the non-terminating errors that occurred when running a PowerShell command or script. +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[String][]> | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [IList][]<[String][]> with no value | + +### WarningRecords + +Represents warning messages output when running a PowerShell command or script. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[String][]> | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [IList][]<[String][]> with no value | + +### DebugRecords + +Represents debug messages output when running a PowerShell command or script. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[String][]> | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [IList][]<[String][]> with no value | + +### ProgressRecords + +Represents the status of a PowerShell command or script at a point in time. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[String][]> | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [IList][]<[String][]> with no value | + +### VerboseRecords + +Represents detailed or diagnostic information, output when running a PowerShell command or script. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[String][]> | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [IList][]<[String][]> with no value | + +### InformationRecords + +Represents general information output when running a PowerShell command or script. + +| | | +|--------------------|---------------------------| +| Data Type | [IList][]<[String][]> | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [IList][]<[String][]> with no value | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `Records`. +- The Literal Editor is available for [Input][] properties where the data type is `Records`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `Records`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [String][] +- [IList][] + +### Related Concepts + +None + +### External Documentation + +None + +[ErrorRecords]: {{< ref "#errorrecords" >}} +[WarningRecords]: {{< ref "#warningrecords" >}} +[DebugRecords]: {{< ref "#debugrecords" >}} +[ProgressRecords]: {{< ref "#progressrecords" >}} +[VerboseRecords]: {{< ref "#verboserecords" >}} +[InformationRecords]: {{< ref "#informationrecords" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[IList]: {{< url path="Cortex.Reference.DataTypes.Collections.IList.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/scopes/_index.md b/content/en/docs/2024.11/Reference/data-types/scopes/_index.md new file mode 100644 index 000000000..1a065e28f --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/scopes/_index.md @@ -0,0 +1,6 @@ +--- +title: "Scopes" +linkTitle: "Scopes" +description: "Data types used for working with Scopes." +weight: 1 +--- diff --git a/content/en/docs/2024.11/Reference/data-types/scopes/scope-definition.md b/content/en/docs/2024.11/Reference/data-types/scopes/scope-definition.md new file mode 100644 index 000000000..0940cbf2f --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/scopes/scope-definition.md @@ -0,0 +1,152 @@ +--- +title: "ScopeDefinition" +linkTitle: "ScopeDefinition" +description: "Used to define the Scope in which an action takes place." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Scopes.ScopeDefinition)

+ +## Summary + +The `ScopeDefinition` data type is used to define the [Scope][] in which an action takes place. + +The `ScopeDefinition` is restricted by a number of levels: + +- [Tenant][Tenant Property] +- [System][System Property] +- [Package][Package Property] +- [Flow][Flow Property] + +Additional levels will be added in future releases, including: + +- Environment +- PackageVersion + +| | | +|---------------------|---------------------------------------------------------| +| **Category:** | Scopes | +| **Name:** | `ScopeDefinition` | +| **Full Name:** | `Cortex.DataTypes.Scopes.ScopeDefinition` | +| **Alias:** | N/A | +| **Description:** | Used to define the [Scope][] in which an action takes place. | +| **Default Value:** | `null` | +| **Can be used as:** | `ScopeDefinition`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### Tenant + +The [Tenant][Tenant Property] is used to define the scope of the action at the tenant level. + +| | | +|-----------------|-----------------------| +| Data Type | [ScopeOption][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `ScopeOption.Current` | + +### System + +The [System][System Property] is used to define the scope of the action at the system level. + +| | | +|-----------------|-----------------------| +| Data Type | [ScopeOption][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `ScopeOption.Current` | + +### Package + +The [Package][Package Property] is used to define the scope of the action at the package level. + +| | | +|-----------------|-----------------------| +| Data Type | [ScopeOption][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `ScopeOption.Current` | + +### Flow + +The [Flow][Flow Property] is used to define the scope of the action at the flow level. + +| | | +|-----------------|-----------------------| +| Data Type | [ScopeOption][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | `ScopeOption.All` | + +## Remarks + +### Create a Scope + +The following table shows some of the ways that `ScopeDefinition` can be created. + +| Method | Example | Result | Editor Support | Notes | +|---------------------------|-----------------------------------------------------------------------|----------------------------------------------------------------------|---------------------|------------------------------------------------------------------------------------------------| +| Use a `ScopeDefinition` constructor | `new ScopeDefinition(tenant: ScopeOption.Current, system: ScopeOption.Current, package: ScopeOption.Current, flow: ScopeOption.All)` | `{"Tenant": "ScopeOption.Current", "System": "ScopeOption.Current", "Package": "ScopeOption.Current", "Flow": "ScopeOption.All"}` | Expression | Creates a new `ScopeDefinition` that can be used to restrict an action to the current Tenant, System and Package, and any Flow. | + +A `ScopeDefinition` can also be created using the Literal Editor by filling in the necessary values for the following properties: + +| Property | Data Type | Example | Notes | +|-----------|---------------|-----------------------|-----------------------------------------------------------------------------------| +| `Tenant` | `ScopeOption` | `ScopeOption.Current` | [Tenant][Tenant Property] defines the scope of the action at the tenant level. | +| `System` | `ScopeOption` | `ScopeOption.Current` | [System][System Property] defines the scope of the action at the system level. | +| `Package` | `ScopeOption` | `ScopeOption.Current` | [Package][Package Property] defines the scope of the action at the package level. | +| `Flow` | `ScopeOption` | `ScopeOption.All` | [Flow][Flow Property] defines the scope of the action at the flow level. | + +### Convert Scope to Text + +The following table shows some of the ways that a `ScopeDefinition` can be converted to text. + +| Method | Example | Result | Editor Support | Notes | +|------------------------------------|---------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------|---------------------|--------------------------------| +| Use `Convert Object To Json` block | where `Object` property has a value of `{ "Tenant": "ScopeOption.Current", "System": "ScopeOption.Current", "Package": "ScopeOption.Current", "Flow": "ScopeOption.All" }` | `"{\r\n \"Tenant\": 1,\r\n \"System\": 1,\r\n \"Package\": 1,\r\n \"Flow\": 0\r\n}"` | N/A | See [Convert Object To Json][] | + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `ScopeDefinition`. +- The Literal Editor is available for [Input][] properties where the data type is `ScopeDefinition`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `ScopeDefinition`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [Scope][] +- [ScopeOption][] + +### Related Concepts + +- [Working with Scopes][] + +### External Documentation + +None + +[Tenant Property]: {{< ref "#tenant">}} +[System Property]: {{< ref "#system">}} +[Package Property]: {{< ref "#package">}} +[Flow Property]: {{< ref "#flow">}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} +[Working with Scopes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Scopes.MainDoc">}} +[ScopeOption]: {{< url path ="Cortex.Reference.DataTypes.Scopes.ScopeOption.MainDoc">}} +[Scope]: {{< url path ="Cortex.Reference.DataTypes.Scopes.Scope.MainDoc">}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/scopes/scope-option.md b/content/en/docs/2024.11/Reference/data-types/scopes/scope-option.md new file mode 100644 index 000000000..4b3bb78c1 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/scopes/scope-option.md @@ -0,0 +1,138 @@ +--- +title: "ScopeOption" +linkTitle: "ScopeOption" +description: "Used to represent how each level of Scope is defined." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Scopes.ScopeOption)

+ +## Summary + +The `ScopeOption` data type is used to represent how each level of [ScopeDefinition] is defined. + +`ScopeOption` is an [enum][Working with Enums] data type, which means it has a defined set of values, where each value has an associated [String][] name and [Int32][] value. + +| | | +|-|-| +| **Category:** | Scopes | +| **Name:** | `ScopeOption` | +| **Full Name:** | `Cortex.DataTypes.Scopes.ScopeOption` | +| **Alias:** | N/A| +| **Description:** | The data type used to represent how each level of [ScopeDefinition] is defined. | +| **Default Value:** | `(ScopeOption)0` | +| **Can be used as:** | `ScopeOption`, `Object`, `dynamic` | +| **Can be cast to:** | `Int16` (e.g. `(Int16)ScopeOption.Current` or `(System.Int16)ScopeOption.Current` or `(short)ScopeOption.Current`) | +| | `Int32` (e.g. `(Int32)ScopeOption.Current` or `(System.Int32)ScopeOption.Current` or `(int)ScopeOption.Current`) | +| | `Int64` (e.g. `(Int64)ScopeOption.Current` or `(System.Int64)ScopeOption.Current` or `(long)ScopeOption.Current`) | +| | `Single` (e.g. `(Single)ScopeOption.Current` or `(System.Single)ScopeOption.Current` or `(float)ScopeOption.Current`) | +| | `Double` (e.g. `(Double)ScopeOption.Current` or `(System.Double)ScopeOption.Current` or `(double)ScopeOption.Current`) | + +## Values + +### All + +| | | +|-|-| +| **Name:** | All | +| **Value:** | [Int32][] with value `0` | +| **Notes:** | Restricts a level within [ScopeDefinition] to a unique "All" value. | + +### Current + +| | | +|-|-| +| **Name:** | Current | +| **Value:** | [Int32][] with value `1` | +| **Notes:** | Restricts a level within [ScopeDefinition] to its current value (e.g. the current Tenant). | + +## Remarks + +### Create a ScopeOption + +The following table shows some of the ways that `ScopeOption` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Declare a `ScopeOption` literal | `Current` | `ScopeOption.Current`| Literal | Restricts a level within [ScopeDefinition] to its current value (e.g. the current Tenant). | +| Use a `ScopeOption` expression | `ScopeOption.Current` | `ScopeOption.Current` | Expression | Restricts a level within [ScopeDefinition] to its current value (e.g. the current Tenant). | +| Use [Explicit Casting][] | `(ScopeOption)1` | `ScopeOption.Current` | Expression | Restricts a level within [ScopeDefinition] to its current value (e.g. the current Tenant). | +| Use `Enum.Parse` | `(ScopeOption)Enum.Parse(typeof(ScopeOption), "Current")` | `ScopeOption.Current` | Expression | Parses `"Current"` and converts it to `ScopeOption.Current`. See [Enum.Parse][] | +| Use `Enum.ToObject` | `(ScopeOption)Enum.ToObject(typeof(ScopeOption), 1)` | `ScopeOption.Current`| Expression | Converts `1` to `ScopeOption.Current` value. See [Enum.ToObject][] | + +Please see [Instantiating an enumeration type][] for further information. + +### Convert ScopeOption to Text + +The following table shows some of the ways that a `ScopeOption` can be converted to text. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `ToString` | `ScopeOption.Current.ToString()` | `"Current"` | Expression | Converts `ScopeOption.Current` to `"Current"`. See [Enum.ToString][] | +| Use `Convert.ToString` | `Convert.ToString(ScopeOption.Current)` | `"Current"` | Expression | Converts `ScopeOption.Current` to `"Current"`. See [Convert.ToString][] | +| Use `Convert Object To Text` block | where `Object` property has a value of `ScopeOption.Current` | `"Current"` | N/A | Converts `ScopeOption.Current` to `"Current"`. See [Convert Object To Text][] | +| Use `Convert Object To Json` block | where `Object` property has a value of `ScopeOption.Current` | `"1"` | N/A | Converts `ScopeOption.Current` to `"1"`. See [Convert Object To Json][] | + +Please see [Formatting enumeration values][] for further information. + +### Convert ScopeOption to a Number + +The following table shows some of the ways that a `ScopeOption` can be converted to a number. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use [Explicit Casting][] | `(Int32)ScopeOption.Current` | `1` | Expression | [Casts][Explicit Casting] `ScopeOption.Current` to `1` | +| Use `Convert.ToInt32` | `Convert.ToInt32(ScopeOption.Current)` | `1` | Expression | Converts `ScopeOption.Current` to `1`. See [Convert.ToInt32][] | + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `ScopeOption`. +- The Literal Editor is available for [Input][] properties where the data type is `ScopeOption`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `ScopeOption`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [ScopeDefinition][] +- [Int32][] +- [String][] + +### Related Concepts + +- [Explicit Casting][] +- [Working with Enums][] +- [Working with Scopes][] + +### External Documentation + +- [System.Enum][] + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[System.Enum]: {{< url path="MSDocs.DotNet.Api.System.Enum.MainDoc" >}} +[Convert Object To Text]: {{< url path="Cortex.Reference.Blocks.Objects.ConvertObject.ConvertObjectToText.MainDoc" >}} +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} +[Working with Enums]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Enums.MainDoc" >}} +[Working with Scopes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Scopes.MainDoc">}} +[Explicit Casting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectCasting.ExplicitCast" >}} +[Enum.Parse]: {{< url path="MSDocs.DotNet.Api.System.Enum.Parse" >}} +[Enum.ToObject]: {{< url path="MSDocs.DotNet.Api.System.Enum.ToObject" >}} +[Enum.ToString]: {{< url path="MSDocs.DotNet.Api.System.Enum.ToString" >}} +[Convert.ToInt32]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToInt32" >}} +[Convert.ToString]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToString" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[ScopeDefinition]: {{< url path = "Cortex.Reference.DataTypes.Scopes.ScopeDefinition.MainDoc">}} +[ScopeOption]: {{< url path ="Cortex.Reference.DataTypes.Scopes.ScopeOption.MainDoc">}} + +[Instantiating an enumeration type]: {{< url path="MSDocs.DotNet.Api.System.Enum.InstantiatingAnEnum" >}} +[Formatting enumeration values]: {{< url path="MSDocs.DotNet.Api.System.Enum.FormattingEnumerationValues" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/scopes/scope.md b/content/en/docs/2024.11/Reference/data-types/scopes/scope.md new file mode 100644 index 000000000..9371d08db --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/scopes/scope.md @@ -0,0 +1,131 @@ +--- +title: "Scope" +linkTitle: "Scope" +description: "Represents the Scope defined by a ScopeDefinition." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Scopes.Scope)

+ +## Summary + +The `Scope` data type represents the [Scope][] defined by a [ScopeDefinition][]. + +The `Scope` is defined by a number of levels: + +- [Tenant][Tenant Property] +- [System][System Property] +- [Package][Package Property] +- [Flow][Flow Property] + +Additional levels will be added in future releases, including: + +- Environment +- PackageVersion + +| | | +|---------------------|---------------------------------------------------------| +| **Category:** | Scopes | +| **Name:** | `Scope` | +| **Full Name:** | `Cortex.DataTypes.Scopes.Scope` | +| **Alias:** | N/A | +| **Description:** | Represents the [Scope][] defined by a [ScopeDefinition][]. | +| **Default Value:** | `null` | +| **Can be used as:** | `Scope`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### Tenant + +The [Tenant][Tenant Property] the action is restricted to. + +| | | +|-----------------|-----------------------| +| Data Type | [String][] | + +### System + +The [System][System Property] the action is restricted to. + +| | | +|-----------------|-----------------------| +| Data Type | [String][] | + +### Package + +The [Package][Package Property] the action is restricted to. + +| | | +|-----------------|-----------------------| +| Data Type | [String][] | + +### Flow + +The [Flow][Flow Property] the action is restricted to. + +| | | +|-----------------|-----------------------| +| Data Type | [String][] | + +## Remarks + +### Create a Scope + +The following table shows some of the ways that `Scope` can be created. + +| Method | Example | Result | Editor Support | Notes | +|---------------------------|-----------------------------------------------------------------------|----------------------------------------------------------------------|---------------------|------------------------------------------------------------------------------------------------| +| Use a `Scope` constructor | `new Scope("tenant", "system", "package", "flow")` | `{ "Tenant": "tenant", "System": "system", "Package": "package", "Flow": "flow" }` | N/A | Creates a new `Scope` that contains the scope values an action is restricted to. | + +### Convert Scope to Text + +The following table shows some of the ways that a `Scope` can be converted to text. + +| Method | Example | Result | Editor Support | Notes | +|------------------------------------|---------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------|---------------------|--------------------------------| +| Use `Convert Object To Json` block | where `Object` property has a value of `{ "Tenant": "tenant", "System": "system", "Package": "package", "Flow": "flow" }` | `"{\r\n \"Tenant\": \"tenant\",\r\n \"System\": \"system\",\r\n \"Package\": \"package\",\r\n \"Flow\": \"flow\"\r\n}"` | N/A | See [Convert Object To Json][] | + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `Scope`. +- The Literal Editor is available for [Input][] properties where the data type is `Scope`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `Scope`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [ScopeDefinition][] + +### Related Concepts + +- [Working with Scopes][] + +### External Documentation + +None + +[Tenant Property]: {{< ref "#tenant">}} +[System Property]: {{< ref "#system">}} +[Package Property]: {{< ref "#package">}} +[Flow Property]: {{< ref "#flow">}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} +[Working with Scopes]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Scopes.MainDoc">}} +[Scope]: {{< url path ="Cortex.Reference.DataTypes.Scopes.Scope.MainDoc">}} +[ScopeDefinition]: {{< url path ="Cortex.Reference.DataTypes.Scopes.ScopeDefinition.MainDoc">}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/session-details/_index.md b/content/en/docs/2024.11/Reference/data-types/session-details/_index.md new file mode 100644 index 000000000..43ba2d1b1 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/session-details/_index.md @@ -0,0 +1,6 @@ +--- +title: "Session Details" +linkTitle: "Session Details" +description: "Data types used for working with sessions." +weight: 1 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/data-types/session-details/serverdetails.md b/content/en/docs/2024.11/Reference/data-types/session-details/serverdetails.md new file mode 100644 index 000000000..e9f371b29 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/session-details/serverdetails.md @@ -0,0 +1,156 @@ +--- +title: "ServerDetails" +linkTitle: "ServerDetails" +description: "Used to represent details required to connect to a server." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.SessionDetails.ServerDetails)

+ +## Summary + +The `ServerDetails` data type is used to represent details required to connect to a server. + +| | | +|-|-| +| **Category:** | Session Details | +| **Name:** | `ServerDetails` | +| **Full Name:** | `Cortex.DataTypes.SessionDetails.ServerDetails` | +| **Alias:** | N/A | +| **Description:** | Details required to connect to a server. | +| **Default Value:** | null | +| **Can be used as:** | `ServerDetails`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### Host + +The Host is used to define the address of the server to connect to. The value of this property may optionally be encrypted; for more information on how to encrypt this property, see [EncryptableText][]. + +A server address can typically be represented in one of the following formats: + +- Fully Qualified Domain Name (e.g. `"smtp.gmail.com"`) +- Machine name (e.g. `"mail-server1"`) +- IP address (e.g. `"127.0.0.1"`) +- Localhost (e.g. `"localhost"`) + +The server address formats supported are dependent on the block being used: + +- [Send Email Using SMTP Server Block][Send Email Using SMTP Server Block Supported Server Address Formats] +- [Send Email Using Gmail Block][Send Email Using Gmail Block Supported Server Address Formats] + +| | | +|--------------------|---------------------------| +| Data Type | [EncryptableText][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [EncryptableText][] with value `""` | + +### Port + +The Port is used to define the port on the server to connect to. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [Int32][] with value `0` | + +### UseSsl + +UseSsl is used to define whether or not connection to the server should use [SSL][]. + +The value of this property depends on the [Port][Port Property] for the following blocks: + +- [Send Email Using SMTP Server Block][Send Email Using SMTP Server Block Setting UseSsl] +- [Send Email Using Gmail Block][Send Email Using Gmail Block Setting UseSsl] + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [Boolean][] with value `true` | + +## Remarks + +### Create a ServerDetails + +The following table shows some of the ways that `ServerDetails` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use a `ServerDetails` constructor | `new ServerDetails(host: "smtp.gmail.com", port: 465, useSsl: true)` | `{"Host": "smtp.gmail.com", "Port": 465, "UseSsl": true}` | Expression | | + +A `ServerDetails` can also be created using the Literal Editor by filling in the necessary values for the following properties: + +| Property | Data Type | Example | Notes | +|-|-|-|-| +| `Host` | `EncryptableText` | `"smtp.gmail.com"` | [Host][Host Property] defines the address of the server to connect to. | +| `Port` | `Int32` | `465` | [Port][Port Property] defines the port on the server to connect to. | +| `UseSsl` | `Boolean` | `true` | [UseSsl][UseSsl Property] defines whether or not connection to the server should use [SSL][]. | + +### Convert ServerDetails to Text + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `Convert Object To Json` block | where `Object` property has a value of `{"Host": "smtp.gmail.com", "Port": 465, "UseSsl": true}` | `"{\r\n \"Host\": \"smtp.gmail.com\",\r\n \"Port\": 465,\r\n \"UseSsl\": true\r\n}"` | N/A | See [Convert Object To Json][] | + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `ServerDetails`. +- The Literal Editor is available for [Input][] properties where the data type is `ServerDetails`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `ServerDetails`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [BasicEmailSessionDetails][] +- [Boolean][] +- [EncryptableText][] +- [Int32][] + +### Related Concepts + +- [Working with Email][] + +### External Documentation + +None + +[Host Property]: {{< ref "#host" >}} +[Port Property]: {{< ref "#port" >}} +[UseSsl Property]: {{< ref "#usessl" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} + +[BasicEmailSessionDetails]: {{< url path="Cortex.Reference.DataTypes.Email.BasicEmailSessionDetails.MainDoc" >}} + +[Send Email Using SMTP Server Block Supported Server Address Formats]: {{< url path="Cortex.Reference.Blocks.Email.SendEmail.SendEmailUsingSmtpServer.SupportedServerAddressFormats" >}} +[Send Email Using SMTP Server Block Setting UseSsl]: {{< url path="Cortex.Reference.Blocks.Email.SendEmail.SendEmailUsingSmtpServer.SettingUseSsl" >}} + +[Send Email Using Gmail Block Supported Server Address Formats]: {{< url path="Cortex.Reference.Blocks.GoogleWorkspace.Gmail.SendEmail.SendEmailUsingGmail.SupportedServerAddressFormats" >}} +[Send Email Using Gmail Block Setting UseSsl]: {{< url path="Cortex.Reference.Blocks.GoogleWorkspace.Gmail.SendEmail.SendEmailUsingGmail.SettingUseSsl" >}} + +[Working with Email]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Email.MainDoc" >}} + +[EncryptableText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptableText.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} + +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} + +[SSL]: {{< url path="Cortex.Reference.Glossary.P-T.SSL" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/ssh/_index.md b/content/en/docs/2024.11/Reference/data-types/ssh/_index.md new file mode 100644 index 000000000..a5686346b --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/ssh/_index.md @@ -0,0 +1,6 @@ +--- +title: "Ssh" +linkTitle: "Ssh" +description: "Data types used for working with SSH." +weight: 1 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/data-types/ssh/authentication/ISshCredentials.md b/content/en/docs/2024.11/Reference/data-types/ssh/authentication/ISshCredentials.md new file mode 100644 index 000000000..f4580d66d --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/ssh/authentication/ISshCredentials.md @@ -0,0 +1,68 @@ +--- +title: "ISshCredentials" +linkTitle: "ISshCredentials" +description: "Any data type used to represent details required for authentication when working with SSH." +weight: 1 +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Ssh.Authentication.ISshCredentials)

+ +{{% alert type="information" title="Information" %}} Improvements to this page are planned for the future. {{% /alert %}} + +## Summary + +Any data type used to represent details required for authentication when working with SSH. + +| | | +|-|-| +| **Category:** | Ssh | +| **Name:** | `ISshCredentials` | +| **Full Name:** | `Cortex.DataTypes.Ssh.Authentication.ISshCredentials` | +| **Alias:** | N/A | +| **Description:** | Any data type used to represent details required for authentication when working with SSH. | +| **Default Value:** | null | +| **Can be used as:** | `ISshCredentials`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `ISshCredentials`. +- The Literal Editor is available for [Input][] properties where the data type is `ISshCredentials`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `ISshCredentials`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [SshCertificateCredentials][] +- [SshCredentials][] +- [SshSessionDetails][] +- [SshUserCredentials][] +- [UserCredentials][] + +### Related Concepts + +None + +### External Documentation + +None + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[SshUserCredentials]: {{< url path="Cortex.Reference.DataTypes.Ssh.Authentication.SshUserCredentials.MainDoc" >}} + +[SshSessionDetails]: {{< url path="Cortex.Reference.DataTypes.Ssh.SshSessionDetails.MainDoc" >}} +[SshCredentials]: {{< url path="Cortex.Reference.DataTypes.Ssh.Authentication.SshCredentials.MainDoc" >}} +[SshCertificateCredentials]: {{< url path="Cortex.Reference.DataTypes.Ssh.Authentication.SshCertificateCredentials.MainDoc" >}} +[UserCredentials]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/ssh/authentication/SshCredentials.md b/content/en/docs/2024.11/Reference/data-types/ssh/authentication/SshCredentials.md new file mode 100644 index 000000000..511df49b9 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/ssh/authentication/SshCredentials.md @@ -0,0 +1,67 @@ +--- +title: "SshCredentials" +linkTitle: "SshCredentials" +description: "Any data type used to represent details required for authentication when working with SSH." +weight: 1 +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Ssh.Authentication.SshCredentials)

+ +{{% alert type="information" title="Information" %}} Improvements to this page are planned for the future. {{% /alert %}} + +## Summary + +Any data type used to represent details required for authentication when working with SSH. + +| | | +|-|-| +| **Category:** | Ssh | +| **Name:** | `SshCredentials` | +| **Full Name:** | `Cortex.DataTypes.Ssh.Authentication.SshCredentials` | +| **Alias:** | N/A | +| **Description:** | Any data type used to represent details required for authentication when working with SSH. | +| **Default Value:** | null | +| **Can be used as:** | `SshCredentials`, `ISshCredentials`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `SshCredentials`. +- The Literal Editor is not available for [Input][] properties where the data type is `SshCredentials`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `SshCredentials`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [EncryptableText][] +- [ISshCredentials][] +- [SshCertificateCredentials][] +- [SshUserCredentials][] + +### Related Concepts + +None + +### External Documentation + +None + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[ISshCredentials]: {{< url path="Cortex.Reference.DataTypes.Ssh.Authentication.ISshCredentials.MainDoc" >}} + +[SshCertificateCredentials]: {{< url path="Cortex.Reference.DataTypes.Ssh.Authentication.SshCertificateCredentials.MainDoc" >}} +[SshUserCredentials]: {{< url path="Cortex.Reference.DataTypes.Ssh.Authentication.SshUserCredentials.MainDoc" >}} + +[EncryptableText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptableText.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/ssh/authentication/SshUserCredentials.md b/content/en/docs/2024.11/Reference/data-types/ssh/authentication/SshUserCredentials.md new file mode 100644 index 000000000..487316c87 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/ssh/authentication/SshUserCredentials.md @@ -0,0 +1,69 @@ +--- +title: "SshUserCredentials" +linkTitle: "SshUserCredentials" +description: "Used to represent password authentication credentials required to authenticate with an SSH server." +weight: 1 +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Ssh.Authentication.SshUserCredentials)

+ +{{% alert type="information" title="Information" %}} Improvements to this page are planned for the future. {{% /alert %}} + +## Summary + +The `SshUserCredentials` data type is used to represent password authentication credentials required to authenticate with an SSH server. + +| | | +|-|-| +| **Category:** | Ssh | +| **Name:** | `SshUserCredentials` | +| **Full Name:** | `Cortex.DataTypes.Ssh.Authentication.SshUserCredentials` | +| **Alias:** | N/A | +| **Description:** | Used to represent password authentication credentials required to authenticate with an SSH server. | +| **Default Value:** | null | +| **Can be used as:** | `SshUserCredentials`, `SshCredentials`, `ISshCredentials`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `SshUserCredentials`. +- The Literal Editor is available for [Input][] properties where the data type is `SshUserCredentials`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `SshUserCredentials`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [EncryptableText][] +- [EncryptedText][] +- [ISshCredentials][] +- [SshCertificateCredentials][] +- [SshCredentials][] + +### Related Concepts + +None + +### External Documentation + +None + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[ISshCredentials]: {{< url path="Cortex.Reference.DataTypes.Ssh.Authentication.ISshCredentials.MainDoc" >}} + +[SshCertificateCredentials]: {{< url path="Cortex.Reference.DataTypes.Ssh.Authentication.SshCertificateCredentials.MainDoc" >}} +[SshCredentials]: {{< url path="Cortex.Reference.DataTypes.Ssh.Authentication.SshCredentials.MainDoc" >}} + +[EncryptableText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptableText.MainDoc" >}} +[EncryptedText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptedText.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/ssh/authentication/_index.md b/content/en/docs/2024.11/Reference/data-types/ssh/authentication/_index.md new file mode 100644 index 000000000..7fc50e16e --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/ssh/authentication/_index.md @@ -0,0 +1,6 @@ +--- +title: "Authentication" +linkTitle: "Authentication" +description: "Data types used for authenticating with servers." +weight: 1 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/data-types/ssh/authentication/sshcertificatecredentials.md b/content/en/docs/2024.11/Reference/data-types/ssh/authentication/sshcertificatecredentials.md new file mode 100644 index 000000000..b231ec5eb --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/ssh/authentication/sshcertificatecredentials.md @@ -0,0 +1,68 @@ +--- +title: "SshCertificateCredentials" +linkTitle: "SshCertificateCredentials" +description: "Used to represent public key credentials required to authenticate with an SSH server." +weight: 1 +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Ssh.Authentication.SshCertificateCredentials)

+ +{{% alert type="information" title="Information" %}} Improvements to this page are planned for the future. {{% /alert %}} + +## Summary + +The `SshCertificateCredentials` data type is used to represent public key credentials required to authenticate with an SSH server. + +| | | +|-|-| +| **Category:** | Ssh | +| **Name:** | `SshCertificateCredentials` | +| **Full Name:** | `Cortex.DataTypes.Ssh.Authentication.SshCertificateCredentials` | +| **Alias:** | N/A | +| **Description:** | Used to represent public key credentials required to authenticate with an SSH server. | +| **Default Value:** | null | +| **Can be used as:** | `SshCertificateCredentials`, `SshCredentials`, `ISshCredentials`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `SshCertificateCredentials`. +- The Literal Editor is available for [Input][] properties where the data type is `SshCertificateCredentials`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `SshCertificateCredentials`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [EncryptableText][] +- [EncryptedText][] +- [ISshCredentials][] +- [SshCredentials][] +- [SshUserCredentials][] + +### Related Concepts + +None + +### External Documentation + +None + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[ISshCredentials]: {{< url path="Cortex.Reference.DataTypes.Ssh.Authentication.ISshCredentials.MainDoc" >}} +[SshCredentials]: {{< url path="Cortex.Reference.DataTypes.Ssh.Authentication.SshCredentials.MainDoc" >}} +[SshUserCredentials]: {{< url path="Cortex.Reference.DataTypes.Ssh.Authentication.SshUserCredentials.MainDoc" >}} + +[EncryptableText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptableText.MainDoc" >}} +[EncryptedText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptedText.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/ssh/sshlogs.md b/content/en/docs/2024.11/Reference/data-types/ssh/sshlogs.md new file mode 100644 index 000000000..7490c8519 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/ssh/sshlogs.md @@ -0,0 +1,123 @@ +--- +title: "SshLogs" +linkTitle: "SshLogs" +description: "Used to represent logs returned by an SSH command." +weight: 1 +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Ssh.SshLogs)

+ +The `SshLogs` data type is used to represent the [WelcomeMessage][Welcome Message Property] returned from the [Host][]; the [TerminalPromptMatch][Terminal Prompt Match] found in the returned response; and the [Logs][Logs] from the SSH execution. + +| | | +|-|-| +| **Category:** | Ssh | +| **Name:** | `SshLogs` | +| **Full Name:** | `Cortex.DataTypes.Ssh.SshLogs` | +| **Alias:** | N/A | +| **Description:** | `The SshLogs returned, containing the WelcomeMessage, TerminalPromptMatch and Logs.` | +| **Default Value:** | null | +| **Can be used as:** | `SshLogs`,`Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### WelcomeMessage + +Represents the message returned when first connecting to the [Host][]. It will return everything up until the first terminal prompt match. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [String][] with value `$@""` | + +### TerminalPromptMatch + +Represents the exact terminal prompt found in the response returned from the [Host][] that was matched by the [TerminalPrompt][] regex. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [String][] with value `$@""`| + +### Logs + +Represents the details of the operations occurring during Ssh's execution. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [String][] with no value | + +## Exceptions + +None + +## Remarks + +### Create an SshLogs + +The following table shows some of the ways that an `SshLogs` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use an `SshLogs` constructor | `new SshLogs(welcomeMessage: "Welcome to Microsoft Ssh Server.", terminalPromptMatch: "C:/Users/CortexSshUser>", logs: "[Info] Connecting to Localhost. \n[Info] Welcome message received.")` | `{"WelcomeMessage": "Welcome to Microsoft Ssh Server.", "TerminalPromptMatch": "C:/Users/CortexSshUser>", "Logs": "[Info] Connecting to Localhost. \n[Info] Welcome message received."}` | Expression | | + +### Convert SshLogs to Text + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `Convert Object To Json` block | where `Object` property has a value of `{"WelcomeMessage": "Welcome to Microsoft Ssh Server.", "TerminalPromptMatch": "C:/Users/CortexSshUser>", "Logs": "[Info] Connecting to Localhost. \n[Info] Welcome message received."}` | `"{\r\n \"WelcomeMessage\": \"Welcome to Microsoft Ssh Server.\",\r\n \"TerminalPromptMatch\": \"C:/Users/CortexSshUser>\",\r\n \"Logs\": \"[Info] Connecting to Localhost. \n[Info] Welcome message received.\"\r\n }"` | N/A | See [Convert Object To Json][] | + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `SshLogs`. +- The Literal Editor is available for [Input][] properties where the data type is `SshLogs`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `SshLogs`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [String][] +- [SshSessionDetails][] + +### Related Concepts + +None + +### External Documentation + +None + +[Welcome Message Property]: {{< ref "#welcomemessage" >}} +[Terminal Prompt Match]: {{< ref "#terminalpromptmatch" >}} +[Logs]: {{< ref "#logs" >}} + +[Host]: {{< url path="Cortex.Reference.DataTypes.Ssh.SshSessionDetails.Host" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} + +[TerminalPrompt]: {{< url path="Cortex.Reference.DataTypes.Ssh.SshSessionDetails.TerminalPrompt" >}} +[SshSessionDetails]: {{< url path="Cortex.Reference.DataTypes.Ssh.SshSessionDetails.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/ssh/sshsessiondetails.md b/content/en/docs/2024.11/Reference/data-types/ssh/sshsessiondetails.md new file mode 100644 index 000000000..219bb6ef9 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/ssh/sshsessiondetails.md @@ -0,0 +1,163 @@ +--- +title: "SshSessionDetails" +linkTitle: "SshSessionDetails" +description: "Used to represent configuration for executing SSH commands on a specified host." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Ssh.SshSessionDetails)

+ +## Summary + +The `SshSessionDetails` data type is used to represent configuration for executing SSH commands on a specified host. + +| | | +|-|-| +| **Category:** | Ssh | +| **Name:** | `SshSessionDetails` | +| **Full Name:** | `Cortex.DataTypes.Ssh.SshSessionDetails` | +| **Alias:** | N/A | +| **Description:** | Configuration for executing SSH commands on a specified host. | +| **Default Value:** | `null` | +| **Can be used as:** | `SshSessionDetails`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### Host + +The Host is used to define the address of the server to connect to. The value of this property may optionally be encrypted; for more information on how to encrypt this property, see [EncryptableText][]. + +A server address can typically be represented in one of the following formats: + +- Fully Qualified Domain Name (e.g. `"machine.domain.com"`) +- Machine name (e.g. `"server1"`) +- IP address (e.g. `"127.0.0.1"`) +- Localhost (e.g. `"localhost"`) + +| | | +|--------------------|---------------------------| +| Data Type | [EncryptableText][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [EncryptableText][] with value `""` | + +### Port + +The Port is used to define the port on the server to connect to. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [Int32][] with value `22` | + +### Credentials + +The Credentials are used to configure the [Domain][], [Username][] and [Password][] used to connect to the host. + +| | | +|--------------------|---------------------------| +| Data Type | [ISshCredentials][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [UserCredentials][] with value shown below: | + +```json +{ + "Domain": "", + "Username": "", + "Password": "" +} +``` + +### TerminalPrompt + +The regex used to match the host's terminal prompt. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | [String][] with value `.*[>\|\$\|#]` | + +## Remarks + +### Create a SshSessionDetails + +The following table shows some of the ways that `SshSessionDetails` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use a `SshSessionDetails` constructor | `new SshSessionDetails(host: "localhost", port: 22, credentials: new UserCredentials(domain: "domain", username: "user", password: "password"), terminalPrompt: $@".*[>\|\$\|#]")` | `{"Host": "localhost", "Port": 22, "Credentials": { "Domain": "domain", "Username": "user", "Password": "## REDACTED ## - This value has been redacted as it contains text that should be encrypted, but is not."}, "TerminalPrompt": ".*[>\|\\$\|#]" }` | Expression | + +A `SshSessionDetails` can also be created using the Literal Editor by filling in the necessary values for the following properties: + +| Property | Data Type | Example | Notes | +|-|-|-|-| +| `Host` | `EncryptableText` | `"localhost"` | [Host][] defines the address of the server to connect to. | +| `Port` | `Int32` | `22` | [Port][] defines the port on the server to connect to. | +| `Credentials` | `ISshCredentials` | `new UserCredentials(domain: "domain", username: "user", password: "password")` | [Credentials][] defines the credentials used to authenticate the connection to the server. | +| `TerminalPrompt` | `Int32` | `.*[>\|\$\|#]` | [TerminalPrompt][] defines the regex used to match the host's terminal prompt. | + +### Convert SshSessionDetails to Text + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `Convert Object To Json` block | where `Object` property has a value of `{"Host": "localhost", "Port": 22, "Credentials": { "Domain": "domain", "Username": "user", "Password": "password"}, "TerminalPrompt": $@".*[>\|\\$\|#]"}` | `"{\r\n \"Host\": \"localhost\",\r\n \"Port\": 22,\r\n \"Credentials\": {\r\n \"Domain\": \"domain\",\r\n \"Username\": \"username\",\r\n \"Password\": \"## REDACTED ## - This value has been redacted as it contains text that should be encrypted, but is not.\",\r\n},\r\n \"TerminalPrompt\": \".*[>\|\\\\$\|#]\"\r\n}"` | N/A | See [Convert Object To Json][] | + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `SshSessionDetails`. +- The Literal Editor is available for [Input][] properties where the data type is `SshSessionDetails`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `SshSessionDetails`. + +### Known limitations + +None + +## See Also + +### Related Data Types + +- [EncryptableText][] +- [String][] +- [Int32][] +- [ISshCredentials] +- [UserCredentials] + +### Related Concepts + +None + +### External Documentation + +None + +[Host]: {{< ref "#host" >}} +[Port]: {{< ref "#port" >}} +[Credentials]: {{< ref "#credentials" >}} +[TerminalPrompt]: {{< ref "#terminalprompt" >}} + +[ISshCredentials]: {{< url path="Cortex.Reference.DataTypes.Ssh.Authentication.ISshCredentials.MainDoc" >}} + +[UserCredentials]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.MainDoc" >}} +[Domain]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.Domain" >}} +[Username]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.Username" >}} +[Password]: {{< url path="Cortex.Reference.DataTypes.Credentials.UserCredentials.Password" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[EncryptableText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptableText.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/tasks/_index.md b/content/en/docs/2024.11/Reference/data-types/tasks/_index.md new file mode 100644 index 000000000..362aa29dd --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/tasks/_index.md @@ -0,0 +1,6 @@ +--- +title: "Tasks" +linkTitle: "Tasks" +description: "Data types used for working with Tasks." +weight: 1 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/data-types/tasks/executiontask.md b/content/en/docs/2024.11/Reference/data-types/tasks/executiontask.md new file mode 100644 index 000000000..e65cc5339 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/tasks/executiontask.md @@ -0,0 +1,163 @@ +--- +title: "ExecutionTask" +linkTitle: "ExecutionTask" +description: "Used to represent the asynchronous execution of a flow." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Tasks.ExecutionTask)

+ +## Summary + +Used to represent the asynchronous execution of a flow started by the [Run Flow Async][] block. + +| | | +|-|-| +| **Category:** | Tasks | +| **Name:** | `ExecutionTask` | +| **Full Name:** | `Cortex.DataTypes.Tasks.ExecutionTask` | +| **Alias:** | N/A | +| **Description:** | Used to represent the asynchronous execution of a flow started by the [Run Flow Async][] block. | +| **Default Value:** | `null` | +| **Can be used as:** | `ExecutionTask`, `IExecutionTask`, `ITask`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### ExecutionId + +The unique Id of the execution of a flow. + +| | | +|--------------------|---------------------------| +| Data Type | [Guid][] | + +### Id + +The unique Id of the task. + +| | | +|--------------------|---------------------------| +| Data Type | [Guid][] | + +### IsCancelled + +This property returns `true` if the execution of the task has been cancelled, and `false` otherwise. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | + +### IsCompleted + +This property returns `true` if the execution of the task has completed, and `false` otherwise. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | + +### IsCompletedSuccessfully + +This property returns `true` if [IsCompleted][] is `true` and [IsFaulted][] is `false`, and `false` otherwise. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | + +### IsFaulted + +This property returns `true` if the execution of the task has thrown an exception, and `false` otherwise. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | + +### Status + +This property returns the state of the execution of the task (e.g. `"Cancelled"`, `"Faulted"`, `"RanToCompletion"`, `"Running"`) + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | + +### Exception + +This property returns the [Exception][] if thrown by the execution of the task, and `null` otherwise. + +| | | +|--------------------|---------------------------| +| Data Type | [Exception][] | + +## Remarks + +### Create an ExecutionTask + +The following table shows some of the ways that an `ExecutionTask` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `Run Flow Async` Block | Where `Flow` property references a flow that will be run asynchronously | `{"ExecutionId": "00000000-0000-0000-0000-000000000000", "Id": "00000000-0000-0000-0000-000000000000", "IsCancelled": false, "IsCompleted": false, "IsCompletedSuccessfully": false, "IsFaulted": false, "Status": "Running", "Exception": null}` | N/A | See [Run Flow Async] | + +### Convert ExecutionTask to Text + +The following table shows some of the ways that an `ExecutionTask` can be converted to text. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `Convert Object To Json` block | where `Object` property has an `ExecutionTask` value of `{"ExecutionId": "00000000-0000-0000-0000-000000000000", "Id": "00000000-0000-0000-0000-000000000000", "IsCancelled": false, "IsCompleted": false, "IsCompletedSuccessfully": false, "IsFaulted": false, "Status": "Running", "Exception": null}` | `"{\r\n \"ExecutionId\": \"00000000-0000-0000-0000-000000000000\",\r\n \"Id\": \"00000000-0000-0000-0000-000000000000\",\r\n \"IsCancelled\": false,\r\n \"IsCompleted\": false,\r\n \"IsCompletedSuccessfully\": false,\r\n \"IsFaulted\": false,\r\n \"Status\": \"Running\",\r\n \"Exception\": null\r\n}"` | N/A | See [Convert Object To Json][] | + +### Retrieving the Results of an ExecutionTask + +Results (i.e. [Structure][] containing the [Output Variables][] of the flow) can be retrieved from any `ExecutionTask` whose status is `RanToCompletion` using the following blocks: +* [Wait For Task][] +* [Wait For All Tasks][] + +### Property Editor Support + +* The Expression Editor is available for [Input][] properties where the data type is `ExecutionTask`. +* The Literal Editor is not available for [Input][] properties where the data type is `ExecutionTask`. +* The Variable Editor is available for [InputOutput][] and [Output][] properties where the data type is `ExecutionTask`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +* [Boolean] +* [Exception][] +* [Guid][] +* [IExecutionTask][] +* [ITask<TResult>][ITask] +* [String][] +* [Structure][] + +### Related Concepts + +* [Working With Tasks][] + +### External Documentation + +None + +[Working With Tasks]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Tasks.MainDoc" >}} +[IsFaulted]: {{< ref "#isfaulted" >}} +[IsCompleted]: {{< ref "#iscompleted" >}} +[Wait For Task]: {{< url path="Cortex.Reference.Blocks.Tasks.WaitForTask.WaitForTask.MainDoc" >}} +[Wait For All Tasks]: {{< url path="Cortex.Reference.Blocks.Tasks.WaitForTask.WaitForAllTasksBlock.MainDoc" >}} +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} +[Output Variables]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.WhatIsAVariable.OutputVariablesStructure" >}} +[Exception]: {{< url path="Cortex.Reference.DataTypes.Exceptions.Exception.MainDoc" >}} +[Structure]: {{< url path="Cortex.Reference.DataTypes.Collections.Structure.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Guid]: {{< url path="Cortex.Reference.DataTypes.Other.Guid.MainDoc" >}} +[Run Flow Async]: {{< url path="Cortex.Reference.Blocks.Flows.RunFlow.RunFlowAsync.MainDoc" >}} +[ITask]: {{< url path="Cortex.Reference.DataTypes.Tasks.ITask.MainDoc" >}} +[IExecutionTask]: {{< url path="Cortex.Reference.DataTypes.Tasks.IExecutionTask.MainDoc" >}} +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/tasks/iexecutiontask.md b/content/en/docs/2024.11/Reference/data-types/tasks/iexecutiontask.md new file mode 100644 index 000000000..ab0275885 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/tasks/iexecutiontask.md @@ -0,0 +1,165 @@ +--- +title: "IExecutionTask" +linkTitle: "IExecutionTask" +description: "Any data type representing an asynchronous execution of a flow." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Tasks.IExecutionTask)

+ +## Summary + +Any data type representing an asynchronous execution of a flow. + +| | | +|-|-| +| **Category:** | Tasks | +| **Name:** | `IExecutionTask` | +| **Full Name:** | `Cortex.DataTypes.Tasks.IExecutionTask` | +| **Alias:** | N/A | +| **Description:** | Any data type representing an asynchronous execution of a flow. | +| **Default Value:** | `null` | +| **Can be used as:** | `IExecutionTask`, `ITask`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### ExecutionId + +The unique Id of the execution of a flow. + +| | | +|--------------------|---------------------------| +| Data Type | [Guid][] | + +### Id + +The unique Id of the task. + +| | | +|--------------------|---------------------------| +| Data Type | [Guid][] | + +### IsCancelled + +This property returns `true` if the execution of the task has been cancelled, and `false` otherwise. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | + +### IsCompleted + +This property returns `true` if the execution of the task has completed, and `false` otherwise. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | + +### IsCompletedSuccessfully + +This property returns `true` if [IsCompleted][] is `true` and [IsFaulted][] is `false`, and `false` otherwise. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | + +### IsFaulted + +This property returns `true` if the execution of the task has thrown an exception, and `false` otherwise. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | + +### Status + +This property returns the state of the execution of the task (e.g. `"Cancelled"`, `"Faulted"`, `"RanToCompletion"`, `"Running"`) + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | + +### Exception + +This property returns the [Exception][] if thrown by the execution of the task, and `null` otherwise. + +| | | +|--------------------|---------------------------| +| Data Type | [Exception][] | + +## Remarks + +### Most Common IExecutionTask Data Types + +Any of the following data types can be used where an `IExecutionTask` is required: + +* [ExecutionTask][] + +### Create an IExecutionTask + +For some of the ways that an `IExecutionTask` can be created, please see each of the `IExecutionTask` data types: + +* [ExecutionTask][CreateExecutionTask] + +### Convert IExecutionTask to Text + +For some of the ways that an `IExecutionTask` can be converted to text see each of the `IExecutionTask` data types: + +* [ExecutionTask][ConvertExecutionTask] + +### Retrieving the Results of an IExecutionTask + +Results (i.e. [Structure][] containing the [Output Variables][] of the flow) can be retrieved from any `IExecutionTask` whose status is `RanToCompletion` using the following blocks: +* [Wait For Task][] +* [Wait For All Tasks][] + +### Property Editor Support + +* The Expression Editor is available for [Input][] properties where the data type is `IExecutionTask`. +* The Literal Editor is not available for [Input][] properties where the data type is `IExecutionTask`. +* The Variable Editor is available for [InputOutput][] and [Output][] properties where the data type is `IExecutionTask`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +* [Boolean] +* [Exception][] +* [ExecutionTask][] +* [Guid][] +* [ITask<TResult>][ITask] +* [String][] +* [Structure][] + +### Related Concepts + +* [Working With Tasks][] + +### External Documentation + +None + +[Working With Tasks]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Tasks.MainDoc" >}} +[IsFaulted]: {{< ref "#isfaulted" >}} +[CreateExecutionTask]: {{< url path="Cortex.Reference.DataTypes.Tasks.ExecutionTask.Create" >}} +[IsCompleted]: {{< ref "#iscompleted" >}} +[Wait For Task]: {{< url path="Cortex.Reference.Blocks.Tasks.WaitForTask.WaitForTask.MainDoc" >}} +[Wait For All Tasks]: {{< url path="Cortex.Reference.Blocks.Tasks.WaitForTask.WaitForAllTasksBlock.MainDoc" >}} +[ExecutionTask]: {{< url path="Cortex.Reference.DataTypes.Tasks.ExecutionTask.MainDoc" >}} +[Output Variables]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Variables.WhatIsAVariable.OutputVariablesStructure" >}} +[ConvertExecutionTask]: {{< url path="Cortex.Reference.DataTypes.Tasks.ExecutionTask.Convert" >}} +[Exception]: {{< url path="Cortex.Reference.DataTypes.Exceptions.Exception.MainDoc" >}} +[Structure]: {{< url path="Cortex.Reference.DataTypes.Collections.Structure.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Guid]: {{< url path="Cortex.Reference.DataTypes.Other.Guid.MainDoc" >}} +[ITask]: {{< url path="Cortex.Reference.DataTypes.Tasks.ITask.MainDoc" >}} +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/tasks/itask-1.md b/content/en/docs/2024.11/Reference/data-types/tasks/itask-1.md new file mode 100644 index 000000000..2965e1a15 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/tasks/itask-1.md @@ -0,0 +1,150 @@ +--- +title: "ITask" +linkTitle: "ITask" +description: "Any data type representing an asynchronous task." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Tasks.ITask<TResult>)

+ +## Summary + +Any data type representing an asynchronous task. + +| | | +|-|-| +| **Category:** | Tasks | +| **Name:** | `ITask` | +| **Full Name:** | `Cortex.DataTypes.Tasks.ITask` | +| **Alias:** | N/A | +| **Description:** | Any data type representing an asynchronous task. | +| **Default Value:** | `null` | +| **Can be used as:** | `ITask`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### Id + +The unique Id of the task. + +| | | +|--------------------|---------------------------| +| Data Type | [Guid][] | + +### IsCancelled + +This property returns `true` if the execution of the task has been cancelled, and `false` otherwise. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | + +### IsCompleted + +This property returns `true` if the execution of the task has completed, and `false` otherwise. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | + +### IsCompletedSuccessfully + +This property returns `true` if [IsCompleted][] is `true` and [IsFaulted][] is `false`, and `false` otherwise. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | + +### IsFaulted + +This property returns `true` if the execution of the task has thrown an exception, and `false` otherwise. + +| | | +|--------------------|---------------------------| +| Data Type | [Boolean][] | + +### Status + +This property returns the state of the execution of the task (e.g. `"Cancelled"`, `"Faulted"`, `"RanToCompletion"`, `"Running"`) + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | + +### Exception + +This property returns the [Exception][] if thrown by the execution of the task, and `null` otherwise. + +| | | +|--------------------|---------------------------| +| Data Type | [Exception][] | + +## Remarks + +### Most Common ITask<TResult> Data Types + +Any of the following data types can be used where an `ITask` is required: + +* [IExecutionTask][] +* [ExecutionTask][] + +### Create an ITask + +For some of the ways that an `ITask` can be created, please see each of the `ITask` data types: + +* [ExecutionTask][CreateExecutionTask] + +### Convert ITask<TResult> to Text + +For some of the ways that an `ITask` can be converted to text see each of the `ITask` data types: + +* [ExecutionTask][ConvertExecutionTask] + +### Property Editor Support + +* The Expression Editor is available for [Input][] properties where the data type is `ITask`. +* The Literal Editor is not available for [Input][] properties where the data type is `ITask`. +* The Variable Editor is available for [InputOutput][] and [Output][] properties where the data type is `ITask`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +* [Boolean] +* [Exception][] +* [Guid][] +* [ExecutionTask][] +* [IExecutionTask][] +* [String][] + +### Related Concepts + +* [Working With Tasks][] + +### External Documentation + +None + +[Working With Tasks]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Tasks.MainDoc" >}} +[CreateExecutionTask]: {{< url path="Cortex.Reference.DataTypes.Tasks.ExecutionTask.Create" >}} +[IsFaulted]: {{< ref "#isfaulted" >}} +[IsCompleted]: {{< ref "#iscompleted" >}} +[Wait For Task]: {{< url path="Cortex.Reference.Blocks.Tasks.WaitForTask.WaitForTask.MainDoc" >}} +[Wait For All Tasks]: {{< url path="Cortex.Reference.Blocks.Tasks.WaitForTask.WaitForAllTasksBlock.MainDoc" >}} +[Exception]: {{< url path="Cortex.Reference.DataTypes.Exceptions.Exception.MainDoc" >}} +[Boolean]: {{< url path="Cortex.Reference.DataTypes.ConditionalLogic.Boolean.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Guid]: {{< url path="Cortex.Reference.DataTypes.Other.Guid.MainDoc" >}} +[IExecutionTask]: {{< url path="Cortex.Reference.DataTypes.Tasks.IExecutionTask.MainDoc" >}} +[ConvertIExecutionTask]: {{< url path="Cortex.Reference.DataTypes.Tasks.IExecutionTask.Convert" >}} +[ConvertExecutionTask]: {{< url path="Cortex.Reference.DataTypes.Tasks.ExecutionTask.Convert" >}} +[ExecutionTask]: {{< url path="Cortex.Reference.DataTypes.Tasks.ExecutionTask.MainDoc" >}} +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/telnet/_index.md b/content/en/docs/2024.11/Reference/data-types/telnet/_index.md new file mode 100644 index 000000000..1184ed30a --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/telnet/_index.md @@ -0,0 +1,6 @@ +--- +title: "Telnet" +linkTitle: "Telnet" +description: "Data types used for working with Telnet." +weight: 1 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/data-types/telnet/telnetclienterrorcode.md b/content/en/docs/2024.11/Reference/data-types/telnet/telnetclienterrorcode.md new file mode 100644 index 000000000..4d7c97668 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/telnet/telnetclienterrorcode.md @@ -0,0 +1,194 @@ +--- +title: "TelnetClientErrorCode" +linkTitle: "TelnetClientErrorCode" +description: "Used to represent an error code explaining the reason a `TelnetClientException` occurred." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Telnet.TelnetClientErrorCode)

+ +## Summary + +The `TelnetClientErrorCode` data type is used to represent an error code explaining the reason a [TelnetClientException][] occurred. For more information on the exception itself, see [TelnetClientException][]. + +`TelnetClientErrorCode` is an [enum][Working with Enums] data type, which means it has a defined set of values, where each value has an associated [String][] name and [Int32][] value. + +| | | +|-|-| +| **Category:** | Telnet | +| **Name:** | `TelnetClientErrorCode` | +| **Full Name:** | `Cortex.DataTypes.Telnet.TelnetClientErrorCode` | +| **Alias:** | N/A | +| **Description:** | Error code explaining the reason a [TelnetClientException][] occurred. | +| **Size:** | `4` bytes | +| **Default Value:** | `(TelnetClientErrorCode)0` | +| **Can be used as:** | `TelnetClientErrorCode`, `Object`, `dynamic` | +| **Can be cast to:** | `Int16` (e.g. `(Int16)TelnetClientErrorCode.InvalidHost` or `(System.Int16)TelnetClientErrorCode.InvalidHost` or `(short)TelnetClientErrorCode.InvalidHost`) | +| | `Int32` (e.g. `(Int32)TelnetClientErrorCode.InvalidHost` or `(System.Int32)TelnetClientErrorCode.InvalidHost` or `(int)TelnetClientErrorCode.InvalidHost`) | +| | `Int64` (e.g. `(Int64)TelnetClientErrorCode.InvalidHost` or `(System.Int64)TelnetClientErrorCode.InvalidHost` or `(long)TelnetClientErrorCode.InvalidHost`) | +| | `Single` (e.g. `(Single)TelnetClientErrorCode.InvalidHost` or `(System.Single)TelnetClientErrorCode.InvalidHost` or `(float)TelnetClientErrorCode.InvalidHost`) | +| | `Double` (e.g. `(Double)TelnetClientErrorCode.InvalidHost` or `(System.Double)TelnetClientErrorCode.InvalidHost` or `(double)TelnetClientErrorCode.InvalidHost`) | + +## Values + +### InvalidHost + +| | | +|-|-| +| **Name:** | InvalidHost | +| **Value:** | [Int32][] with value `100` | +| **Notes:** | Used when a [TelnetClientException][] occurred due to an invalid [Host][] provided in the [TelnetSessionDetails][]. See [Invalid Host][]| + +### InvalidPort + +| | | +|-|-| +| **Name:** | InvalidPort | +| **Value:** | [Int32][] with value `101` | +| **Notes:** | Used when a [TelnetClientException][] occurred due to an invalid [Port][] provided in the [TelnetSessionDetails][]. See [Invalid Port][]| + +### InvalidTerminalPrompt + +| | | +|-|-| +| **Name:** | InvalidTerminalPrompt | +| **Value:** | [Int32][] with value `102` | +| **Notes:** | Used when a [TelnetClientException][] occurred due to an invalid [TerminalPrompt][] provided in the [TelnetSessionDetails][]. See [Invalid Terminal Prompt][]| + +### InvalidSetting + +| | | +|-|-| +| **Name:** | InvalidSettings | +| **Value:** | [Int32][] with value `200` | +| **Notes:** | Used when a [TelnetClientException][] occurred due to an invalid setting provided in the [ConfigurationSettings][]. See [Invalid Settings][]| + +## Remarks + +### Create a TelnetClientErrorCode + +The following table shows some of the ways that a `TelnetClientErrorCode` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use a `TelnetClientErrorCode` expression | `TelnetClientErrorCode.InvalidHost` | `TelnetClientErrorCode.InvalidHost`| Expression | Indicates a [TelnetClientException][] occurred due to an invalid [Host][] provided in the [TelnetSessionDetails][] | +|| `TelnetClientErrorCode.InvalidPort` | `TelnetClientErrorCode.InvalidPort`| Expression | Indicates a [TelnetClientException][] occurred due to an invalid [Port][] provided in the [TelnetSessionDetails][] | +|| `TelnetClientErrorCode.InvalidTerminalPrompt` | `TelnetClientErrorCode.InvalidTerminalPrompt`| Expression | Indicates a [TelnetClientException][] occurred due to an invalid [TerminalPrompt][] provided in the [TelnetSessionDetails][] | +|| `TelnetClientErrorCode.InvalidSettings` | `TelnetClientErrorCode.InvalidSettings`| Expression | Indicates a [TelnetClientException][] occurred due to an invalid setting provided in the [ConfigurationSettings][] | +| Use [Explicit Casting][] | `(TelnetClientErrorCode)100` | `TelnetClientErrorCode.InvalidHost`| Expression | Indicates a [TelnetClientException][] occurred due to an invalid [Host][] provided in the [TelnetSessionDetails][] | +|| `(TelnetClientErrorCode)101` | `TelnetClientErrorCode.InvalidPort`| Expression | Indicates a [TelnetClientException][] occurred due to an invalid [Port][] provided in the [TelnetSessionDetails][] | +|| `(TelnetClientErrorCode)102` | `TelnetClientErrorCode.InvalidTerminalPrompt`| Expression | Indicates a [TelnetClientException][] occurred due to an invalid [TerminalPrompt][] provided in the [TelnetSessionDetails][]| +|| `(TelnetClientErrorCode)200` | `TelnetClientErrorCode.InvalidSettings`| Expression | Indicates a [TelnetClientException][] occurred due to an invalid setting provided in the [ConfigurationSettings][]| +| Use `Enum.Parse` | `(TelnetClientErrorCode)Enum.Parse(typeof(TelnetClientErrorCode), "InvalidHost")` | `TelnetClientErrorCode.InvalidHost`| Expression | Parses `"InvalidHost"` and converts it to `TelnetClientErrorCode.InvalidHost`. See [Enum.Parse][] | +|| `(TelnetClientErrorCode)Enum.Parse(typeof(TelnetClientErrorCode), "InvalidPort")` | `TelnetClientErrorCode.InvalidPort`| Expression | Parses `"InvalidPort"` and converts it to `TelnetClientErrorCode.InvalidPort`. See [Enum.Parse][] | +|| `(TelnetClientErrorCode)Enum.Parse(typeof(TelnetClientErrorCode), "InvalidTerminalPrompt")` | `TelnetClientErrorCode.InvalidTerminalPrompt`| Expression | Parses `"InvalidTerminalPrompt"` and converts it to `TelnetClientErrorCode.InvalidTerminalPrompt`. See [Enum.Parse][] | +|| `(TelnetClientErrorCode)Enum.Parse(typeof(TelnetClientErrorCode), "InvalidSettings")` | `TelnetClientErrorCode.InvalidSettings`| Expression | Parses `"InvalidSettings"` and converts it to `TelnetClientErrorCode.InvalidSettings`. See [Enum.Parse][] | +| Use `Enum.ToObject` | `(TelnetClientErrorCode)Enum.ToObject(typeof(TelnetClientErrorCode), 100)` | `TelnetClientErrorCode.InvalidHost`| Expression | Converts `100` to `TelnetClientErrorCode.InvalidHost` value. See [Enum.ToObject][] | +|| `(TelnetClientErrorCode)Enum.ToObject(typeof(TelnetClientErrorCode), 101)` | `TelnetClientErrorCode.InvalidPort`| Expression | Converts `101` to `TelnetClientErrorCode.InvalidPort` value. See [Enum.ToObject][] | +|| `(TelnetClientErrorCode)Enum.ToObject(typeof(TelnetClientErrorCode), 102)` | `TelnetClientErrorCode.InvalidTerminalPrompt`| Expression | Converts `102` to `TelnetClientErrorCode.InvalidTerminalPrompt` value. See [Enum.ToObject][] | +|| `(TelnetClientErrorCode)Enum.ToObject(typeof(TelnetClientErrorCode), 200)` | `TelnetClientErrorCode.InvalidSettings`| Expression | Converts `200` to `TelnetClientErrorCode.InvalidSettings` value. See [Enum.ToObject][] | + +Please see [Instantiating an enumeration type][] for further information. + +### Convert a TelnetClientErrorCode to Text + +The following table shows some of the ways that a `TelnetClientErrorCode` can be converted to text. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `ToString` | `TelnetClientErrorCode.InvalidHost.ToString()` | `"InvalidHost"` | Expression | Converts `TelnetClientErrorCode.InvalidHost` to `"InvalidHost"`. See [Enum.ToString][] | +|| `TelnetClientErrorCode.InvalidPort.ToString()` | `"InvalidPort"` | Expression | Converts `TelnetClientErrorCode.InvalidPort` to `"InvalidPort"`. See [Enum.ToString][] | +|| `TelnetClientErrorCode.InvalidTerminalPrompt.ToString()` | `"InvalidTerminalPrompt"` | Expression | Converts `TelnetClientErrorCode.InvalidTerminalPrompt` to `"InvalidTerminalPrompt"`. See [Enum.ToString][] | +|| `TelnetClientErrorCode.InvalidSettings.ToString()` | `"InvalidSettings"` | Expression | Converts `TelnetClientErrorCode.InvalidSettings` to `"InvalidSettings"`. See [Enum.ToString][] | +| Use `Convert.ToString` | `Convert.ToString(TelnetClientErrorCode.InvalidHost)` | `"InvalidHost"` | Expression | Converts `TelnetClientErrorCode.InvalidHost` to `"InvalidHost"`. See [Convert.ToString][] | +|| `Convert.ToString(TelnetClientErrorCode.InvalidPort)` | `"InvalidPort"` | Expression | Converts `TelnetClientErrorCode.InvalidPort` to `"InvalidPort"`. See [Convert.ToString][] | +|| `Convert.ToString(TelnetClientErrorCode.InvalidTerminalPrompt)` | `"InvalidTerminalPrompt"` | Expression | Converts `TelnetClientErrorCode.InvalidTerminalPrompt` to `"InvalidTerminalPrompt"`. See [Convert.ToString][] | +|| `Convert.ToString(TelnetClientErrorCode.InvalidSettings)` | `"InvalidSettings"` | Expression | Converts `TelnetClientErrorCode.InvalidSettings` to `"InvalidSettings"`. See [Convert.ToString][] | +| Use `Convert Object To Text` block | where `Object` property has a value of `TelnetClientErrorCode.InvalidHost` | `"InvalidHost"` | N/A | Converts `TelnetClientErrorCode.InvalidHost` to `"InvalidHost"`. See [Convert Object To Text][] | +|| where `Object` property has a value of `TelnetClientErrorCode.InvalidPort` | `"InvalidPort"` | N/A | Converts `TelnetClientErrorCode.InvalidPort` to `"InvalidPort"`. See [Convert Object To Text][] | +|| where `Object` property has a value of `TelnetClientErrorCode.InvalidTerminalPrompt` | `"InvalidTerminalPrompt"` | N/A | Converts `TelnetClientErrorCode.InvalidTerminalPrompt` to `"InvalidTerminalPrompt"`. See [Convert Object To Text][] | +|| where `Object` property has a value of `TelnetClientErrorCode.InvalidSettings` | `"InvalidSettings"` | N/A | Converts `TelnetClientErrorCode.InvalidSettings` to `"InvalidSettings"`. See [Convert Object To Text][] | +| Use `Convert Object To Json` block | where `Object` property has a value of `TelnetClientErrorCode.InvalidHost` | `"100"` | N/A | Converts `TelnetClientErrorCode.InvalidHost` to `"100"`. See [Convert Object To Json][] | +|| where `Object` property has a value of `TelnetClientErrorCode.InvalidPort` | `"101"` | N/A | Converts `TelnetClientErrorCode.InvalidPort` to `"101"`. See [Convert Object To Json][] | +|| where `Object` property has a value of `TelnetClientErrorCode.InvalidTerminalPrompt` | `"102"` | N/A | Converts `TelnetClientErrorCode.InvalidTerminalPrompt` to `"102"`. See [Convert Object To Json][] | +|| where `Object` property has a value of `TelnetClientErrorCode.InvalidSettings` | `"200"` | N/A | Converts `TelnetClientErrorCode.InvalidSettings` to `"200"`. See [Convert Object To Json][] | + +Please see [Formatting enumeration values][] for further information. + +### Convert a TelnetClientErrorCode to a Number + +The following table shows some of the ways that a `TelnetClientErrorCode` can be converted to a number. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use [Explicit Casting][] | `(Int32)TelnetClientErrorCode.InvalidHost` | `100` | Expression | [Casts][Explicit Casting] `TelnetClientErrorCode.InvalidHost` to `100` | +|| `(Int32)TelnetClientErrorCode.InvalidPort` | `101` | Expression | [Casts][Explicit Casting] `TelnetClientErrorCode.InvalidPort` to `101` | +|| `(Int32)TelnetClientErrorCode.InvalidTerminalPrompt` | `102` | Expression | [Casts][Explicit Casting] `TelnetClientErrorCode.InvalidTerminalPrompt` to `102` | +|| `(Int32)TelnetClientErrorCode.InvalidSettings` | `200` | Expression | [Casts][Explicit Casting] `TelnetClientErrorCode.InvalidSettings` to `200` | +| Use `Convert.ToInt32` | `Convert.ToInt32(TelnetClientErrorCode.InvalidHost)` | `100` | Expression | Converts `TelnetClientErrorCode.InvalidHost` to `100`. See [Convert.ToInt32][] | +|| `Convert.ToInt32(TelnetClientErrorCode.InvalidPort)` | `101` | Expression | Converts `TelnetClientErrorCode.InvalidPort` to `101`. See [Convert.ToInt32][] | +|| `Convert.ToInt32(TelnetClientErrorCode.InvalidTerminalPrompt)` | `102` | Expression | Converts `TelnetClientErrorCode.InvalidTerminalPrompt` to `102`. See [Convert.ToInt32][] | +|| `Convert.ToInt32(TelnetClientErrorCode.InvalidSettings)` | `200` | Expression | Converts `TelnetClientErrorCode.InvalidSettings` to `200`. See [Convert.ToInt32][] | + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `TelnetClientErrorCode`. +- The Literal Editor is available for [Input][] properties where the data type is `TelnetClientErrorCode`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `TelnetClientErrorCode`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [TelnetClientException][] +- [TelnetSessionDetails][] +- [Int32][] +- [String][] + +### Related Concepts + +- [Explicit Casting][] +- [Working with Enums][] + +### External Documentation + +- [System.Enum][] + +[Working with Enums]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Enums.MainDoc" >}} +[Convert Object To Text]: {{< url path="Cortex.Reference.Blocks.Objects.ConvertObject.ConvertObjectToText.MainDoc" >}} +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} +[Instantiating an enumeration type]: {{< url path="MSDocs.DotNet.Api.System.Enum.InstantiatingAnEnum" >}} +[Formatting enumeration values]: {{< url path="MSDocs.DotNet.Api.System.Enum.FormattingEnumerationValues" >}} +[Explicit Casting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectCasting.ExplicitCast" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Host]: {{< url path="Cortex.Reference.DataTypes.Telnet.TelnetSessionDetails.Host" >}} +[CloseSession]: {{< url path="Cortex.Reference.Blocks.Telnet.ExecuteTelnetCommand.ExecuteTelnetCommand.CloseSession" >}} + +[Enum.Parse]: {{< url path="MSDocs.DotNet.Api.System.Enum.Parse" >}} +[Enum.ToObject]: {{< url path="MSDocs.DotNet.Api.System.Enum.ToObject" >}} +[Enum.ToString]: {{< url path="MSDocs.DotNet.Api.System.Enum.ToString" >}} +[Convert.ToInt32]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToInt32" >}} +[Convert.ToString]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToString" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[System.Enum]: {{< url path="MSDocs.DotNet.Api.System.Enum.MainDoc" >}} + +[TelnetSessionDetails]: {{< url path="Cortex.Reference.DataTypes.Telnet.TelnetSessionDetails.MainDoc" >}} +[Port]: {{< url path="Cortex.Reference.DataTypes.Telnet.TelnetSessionDetails.Port" >}} +[TerminalPrompt]: {{< url path="Cortex.Reference.DataTypes.Telnet.TelnetSessionDetails.TerminalPrompt" >}} +[ConfigurationSettings]: {{< url path="Cortex.Reference.Blocks.Telnet.ExecuteTelnetCommand.ExecuteTelnetCommand.ConfigurationSettings" >}} + +[TelnetClientException]: {{< url path="Cortex.Reference.Exceptions.Telnet.TelnetClientException.MainDoc" >}} +[Invalid Host]: {{< url path="Cortex.Reference.Exceptions.Telnet.TelnetClientException.InvalidHost" >}} +[Invalid Port]: {{< url path="Cortex.Reference.Exceptions.Telnet.TelnetClientException.InvalidPort" >}} +[Invalid Terminal Prompt]: {{< url path="Cortex.Reference.Exceptions.Telnet.TelnetClientException.InvalidTerminalPrompt" >}} +[Invalid Settings]: {{< url path="Cortex.Reference.Exceptions.Telnet.TelnetClientException.InvalidSettings" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/telnet/telnetlogs.md b/content/en/docs/2024.11/Reference/data-types/telnet/telnetlogs.md new file mode 100644 index 000000000..6b0089fbb --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/telnet/telnetlogs.md @@ -0,0 +1,122 @@ +--- +title: "TelnetLogs" +linkTitle: "TelnetLogs" +description: "Used to represent logs returned by a telnet command." +weight: 1 +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Telnet.TelnetLogs)

+ +The `TelnetLogs` data type is used to represent the [WelcomeMessage][Welcome Message Property] returned from the [Host][]; the [TerminalPromptMatch][Terminal Prompt Match] found in the returned response; and the [Logs][Logs] from the telnet execution. + +| | | +|-|-| +| **Category:** | Telnet | +| **Name:** | `TelnetLogs` | +| **Full Name:** | `Cortex.DataTypes.Telnet.TelnetLogs` | +| **Alias:** | N/A | +| **Description:** | `The TelnetLogs returned, containing the WelcomeMessage, TerminalPromptMatch and Logs.` | +| **Default Value:** | null | +| **Can be used as:** | `TelnetLogs`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### WelcomeMessage + +Represents the message returned when first connecting to the [Host][]. It will return everything up until the first terminal prompt match. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [String][] with no value | + +### TerminalPromptMatch + +Represents the exact terminal prompt found in the response returned from the [Host][] that was matched by the [TerminalPrompt][] regex. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [String][] with no value | + +### Logs + +Represents the details of the operations occurring during Telnet's execution. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [String][] with no value | + +## Exceptions + +None + +## Remarks + +### Create a TelnetLogs + +The following table shows some of the ways that `TelnetLogs` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use a `TelnetLogs` constructor | `new TelnetLogs(welcomeMessage: "Welcome to Microsoft Telnet Server.", terminalPromptMatch: "C:/Users/CortexTelnetUser>", logs: "[Info] Connecting to Localhost. \n[Info] Welcome message received.")` | `{"WelcomeMessage": "Welcome to Microsoft Telnet Server.", "TerminalPromptMatch": "C:/Users/CortexTelnetUser>", "Logs": "[Info] Connecting to Localhost. \n[Info] Welcome message received."}` | Expression | | + +### Convert TelnetLogs to Text + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `Convert Object To Json` block | where `Object` property has a value of `{"WelcomeMessage": "Welcome to Microsoft Telnet Server.", "TerminalPromptMatch": "C:/Users/CortexTelnetUser>", "Logs": "[Info] Connecting to Localhost. \n[Info] Welcome message received."}` | `"{\r\n \"WelcomeMessage\": \"Welcome to Microsoft Telnet Server.\",\r\n \"TerminalPromptMatch\": \"C:/Users/CortexTelnetUser>\",\r\n \"Logs\": \"[Info] Connecting to Localhost. \n[Info] Welcome message received.\"\r\n }"` | N/A | See [Convert Object To Json][] | + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `TelnetLogs`. +- The Literal Editor is available for [Input][] properties where the data type is `TelnetLogs`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `TelnetLogs`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [String][] +- [TelnetSessionDetails][] + +### Related Concepts + +None + +### External Documentation + +None + +[Welcome Message Property]: {{< ref "#welcomemessage" >}} +[Terminal Prompt Match]: {{< ref "#terminalpromptmatch" >}} +[Logs]: {{< ref "#logs" >}} + +[Host]: {{< url path="Cortex.Reference.DataTypes.Telnet.TelnetSessionDetails.Host" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} + +[TerminalPrompt]: {{< url path="Cortex.Reference.DataTypes.Telnet.TelnetSessionDetails.TerminalPrompt" >}} +[TelnetSessionDetails]: {{< url path="Cortex.Reference.DataTypes.Telnet.TelnetSessionDetails.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/telnet/telnetservererrorcode.md b/content/en/docs/2024.11/Reference/data-types/telnet/telnetservererrorcode.md new file mode 100644 index 000000000..bca5a9915 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/telnet/telnetservererrorcode.md @@ -0,0 +1,130 @@ +--- +title: "TelnetServerErrorCode" +linkTitle: "TelnetServerErrorCode" +description: "Used to represent an error code explaining the reason a `TelnetServerException` occurred." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Telnet.TelnetServerErrorCode)

+ +## Summary + +The `TelnetServerErrorCode` data type is used to represent an error code explaining the reason a [TelnetServerException][] occurred. For more information on the exception itself, see [TelnetServerException][]. + +`TelnetServerErrorCode` is an [enum][Working with Enums] data type, which means it has a defined set of values, where each value has an associated [String][] name and [Int32][] value. + +| | | +|-|-| +| **Category:** | Telnet | +| **Name:** | `TelnetServerErrorCode` | +| **Full Name:** | `Cortex.DataTypes.Telnet.TelnetServerErrorCode` | +| **Alias:** | N/A | +| **Description:** | Error code explaining the reason a [TelnetServerException][] occurred. | +| **Size:** | `4` bytes | +| **Default Value:** | `(TelnetServerErrorCode)0` | +| **Can be used as:** | `TelnetServerErrorCode`, `Object`, `dynamic` | +| **Can be cast to:** | `Int16` (e.g. `(Int16)TelnetServerErrorCode.HostDisconnected` or `(System.Int16)TelnetServerErrorCode.HostDisconnected` or `(short)TelnetServerErrorCode.HostDisconnected`) | +| | `Int32` (e.g. `(Int32)TelnetServerErrorCode.HostDisconnected` or `(System.Int32)TelnetServerErrorCode.HostDisconnected` or `(int)TelnetServerErrorCode.HostDisconnected`) | +| | `Int64` (e.g. `(Int64)TelnetServerErrorCode.HostDisconnected` or `(System.Int64)TelnetServerErrorCode.HostDisconnected` or `(long)TelnetServerErrorCode.HostDisconnected`) | +| | `Single` (e.g. `(Single)TelnetServerErrorCode.HostDisconnected` or `(System.Single)TelnetServerErrorCode.HostDisconnected` or `(float)TelnetServerErrorCode.HostDisconnected`) | +| | `Double` (e.g. `(Double)TelnetServerErrorCode.HostDisconnected` or `(System.Double)TelnetServerErrorCode.HostDisconnected` or `(double)TelnetServerErrorCode.HostDisconnected`) | + +## Values + +### HostDisconnected + +| | | +|-|-| +| **Name:** | HostDisconnected | +| **Value:** | [Int32][] with value `100` | +| **Notes:** | Used when a [TelnetServerException][] occurred due the [Host][] provided disconnecting from the session without using [CloseSession]. See [Host Disconnected][]| + +## Remarks + +### Create a TelnetServerErrorCode + +The following table shows some of the ways that a `TelnetServerErrorCode` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use a `TelnetServerErrorCode` expression | `TelnetServerErrorCode.HostDisconnected` | `TelnetServerErrorCode.HostDisconnected`| Expression | Indicates a [TelnetServerException][] occurred due the [Host][] provided disconnecting from the session without using [CloseSession] | +| Use [Explicit Casting][] | `(TelnetServerErrorCode)100` | `TelnetServerErrorCode.HostDisconnected`| Expression | Indicates a [TelnetServerException][] occurred due the [Host][] provided disconnecting from the session without using [CloseSession] | +| Use `Enum.Parse` | `(TelnetServerErrorCode)Enum.Parse(typeof(TelnetServerErrorCode), "HostDisconnected")` | `TelnetServerErrorCode.HostDisconnected`| Expression | Parses `"HostDisconnected"` and converts it to `TelnetServerErrorCode.HostDisconnected`. See [Enum.Parse][] | +| Use `Enum.ToObject` | `(TelnetServerErrorCode)Enum.ToObject(typeof(TelnetServerErrorCode), 100)` | `TelnetServerErrorCode.HostDisconnected`| Expression | Converts `100` to `TelnetServerErrorCode.HostDisconnected` value. See [Enum.ToObject][] | + +Please see [Instantiating an enumeration type][] for further information. + +### Convert a TelnetServerErrorCode to Text + +The following table shows some of the ways that a `TelnetServerErrorCode` can be converted to text. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `ToString` | `TelnetServerErrorCode.HostDisconnected.ToString()` | `"HostDisconnected"` | Expression | Converts `TelnetServerErrorCode.HostDisconnected` to `"HostDisconnected"`. See [Enum.ToString][] | +| Use `Convert.ToString` | `Convert.ToString(TelnetServerErrorCode.HostDisconnected)` | `"HostDisconnected"` | Expression | Converts `TelnetServerErrorCode.HostDisconnected` to `"HostDisconnected"`. See [Convert.ToString][] | +| Use `Convert Object To Text` block | where `Object` property has a value of `TelnetServerErrorCode.HostDisconnected` | `"HostDisconnected"` | N/A | Converts `TelnetServerErrorCode.HostDisconnected` to `"HostDisconnected"`. See [Convert Object To Text][] | +| Use `Convert Object To Json` block | where `Object` property has a value of `TelnetServerErrorCode.HostDisconnected` | `"100"` | N/A | Converts `TelnetServerErrorCode.HostDisconnected` to `"100"`. See [Convert Object To Json][] | + +Please see [Formatting enumeration values][] for further information. + +### Convert a TelnetServerErrorCode to a Number + +The following table shows some of the ways that a `TelnetServerErrorCode` can be converted to a number. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use [Explicit Casting][] | `(Int32)TelnetServerErrorCode.HostDisconnected` | `100` | Expression | [Casts][Explicit Casting] `TelnetServerErrorCode.HostDisconnected` to `100` | +| Use `Convert.ToInt32` | `Convert.ToInt32(TelnetServerErrorCode.HostDisconnected)` | `100` | Expression | Converts `TelnetServerErrorCode.HostDisconnected` to `100`. See [Convert.ToInt32][] | + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `TelnetServerErrorCode`. +- The Literal Editor is available for [Input][] properties where the data type is `TelnetServerErrorCode`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `TelnetServerErrorCode`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [TelnetServerException][] +- [Int32][] +- [String][] + +### Related Concepts + +- [Explicit Casting][] +- [Working with Enums][] + +### External Documentation + +- [System.Enum][] + +[Working with Enums]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Enums.MainDoc" >}} +[Convert Object To Text]: {{< url path="Cortex.Reference.Blocks.Objects.ConvertObject.ConvertObjectToText.MainDoc" >}} +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} +[Instantiating an enumeration type]: {{< url path="MSDocs.DotNet.Api.System.Enum.InstantiatingAnEnum" >}} +[Formatting enumeration values]: {{< url path="MSDocs.DotNet.Api.System.Enum.FormattingEnumerationValues" >}} +[Explicit Casting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectCasting.ExplicitCast" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Host]: {{< url path="Cortex.Reference.DataTypes.Telnet.TelnetSessionDetails.Host" >}} +[CloseSession]: {{< url path="Cortex.Reference.Blocks.Telnet.ExecuteTelnetCommand.ExecuteTelnetCommand.CloseSession" >}} + +[Enum.Parse]: {{< url path="MSDocs.DotNet.Api.System.Enum.Parse" >}} +[Enum.ToObject]: {{< url path="MSDocs.DotNet.Api.System.Enum.ToObject" >}} +[Enum.ToString]: {{< url path="MSDocs.DotNet.Api.System.Enum.ToString" >}} +[Convert.ToInt32]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToInt32" >}} +[Convert.ToString]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToString" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[TelnetServerException]: {{< url path="Cortex.Reference.Exceptions.Telnet.TelnetServerException.MainDoc" >}} +[Host Disconnected]: {{< url path="Cortex.Reference.Exceptions.Telnet.TelnetServerException.HostDisconnected" >}} +[System.Enum]: {{< url path="MSDocs.DotNet.Api.System.Enum.MainDoc" >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/data-types/telnet/telnetsessiondetails.md b/content/en/docs/2024.11/Reference/data-types/telnet/telnetsessiondetails.md new file mode 100644 index 000000000..041047fb1 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/telnet/telnetsessiondetails.md @@ -0,0 +1,133 @@ +--- +title: "TelnetSessionDetails" +linkTitle: "TelnetSessionDetails" +description: "Used to represent configuration for executing telnet commands on a specified host." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Telnet.TelnetSessionDetails)

+ +## Summary + +The `TelnetSessionDetails` data type is used to represent configuration for executing telnet commands on a specified host. + +| | | +|-|-| +| **Category:** | Telnet | +| **Name:** | `TelnetSessionDetails` | +| **Full Name:** | `Cortex.DataTypes.Telnet.TelnetSessionDetails` | +| **Alias:** | N/A | +| **Description:** | Configuration for executing telnet commands on a specified host. | +| **Default Value:** | `null` | +| **Can be used as:** | `TelnetSessionDetails`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### Host + +The Host is used to define the address of the server to connect to. The value of this property may optionally be encrypted; for more information on how to encrypt this property, see [EncryptableText][]. + +A server address can typically be represented in one of the following formats: + +- Fully Qualified Domain Name (e.g. `"machine.domain.com"`) +- Machine name (e.g. `"server1"`) +- IP address (e.g. `"127.0.0.1"`) +- Localhost (e.g. `"localhost"`) + +| | | +|--------------------|---------------------------| +| Data Type | [EncryptableText][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [EncryptableText][] with value `""` | + +### Port + +The Port is used to define the port on the server to connect to. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Is [Advanced][] | `false` | +| Default Editor | [Literal][] | +| Default Value | [Int32][] with value `23` | + +### TerminalPrompt + +The regex used to match the host's terminal prompt. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Is [Advanced][] | `true` | +| Default Editor | [Literal][] | +| Default Value | [String][] with value `(.*(~(.*[\r\n]?)\$\|>))` | + +## Remarks + +### Create a TelnetSessionDetails + +The following table shows some of the ways that `TelnetSessionDetails` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use a `TelnetSessionDetails` constructor | `new TelnetSessionDetails(host: "localhost", port: 23, terminalPrompt: $@"(.*(~(.*[\r\n]?)\$\|>))")` | `{"Host": "localhost", "Port": 23, "TerminalPrompt": "(.*(~(.*[\r\n]?)\$\|>))"}` | Expression | + +A `TelnetSessionDetails` can also be created using the Literal Editor by filling in the necessary values for the following properties: + +| Property | Data Type | Example | Notes | +|-|-|-|-| +| `Host` | `EncryptableText` | `"localhost"` | [Host][] defines the address of the server to connect to. | +| `Port` | `Int32` | `23` | [Port][] defines the port on the server to connect to. | +| `TerminalPrompt` | `String` | `(.*(~(.*[\r\n]?)\$\|>))` | [TerminalPrompt][] defines the regex used to match the host's terminal prompt. | + +### Convert TelnetSessionDetails to Text + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `Convert Object To Json` block | where `Object` property has a value of `{"Host": "localhost", "Port": 23, "TerminalPrompt": "(.*(~(.*[\\r\\n]?)\\$\|>))"}` | `"{\r\n \"Host\": \"localhost\",\r\n \"Port\": 23,\r\n \"TerminalPrompt\": \"(.*(~(.*[\\\\r\\\\n]?)\\\\$\|>))\"\r\n}"` | N/A | See [Convert Object To Json][] | + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `TelnetSessionDetails`. +- The Literal Editor is available for [Input][] properties where the data type is `TelnetSessionDetails`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `TelnetSessionDetails`. + +### Known limitations + +None + +## See Also + +### Related Data Types + +- [EncryptableText][] +- [String][] +- [Int32][] + +### Related Concepts + +None + +### External Documentation + +None + +[Host]: {{< ref "#host" >}} +[Port]: {{< ref "#port" >}} +[TerminalPrompt]: {{< ref "#terminalprompt" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[EncryptableText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptableText.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/text/_index.md b/content/en/docs/2024.11/Reference/data-types/text/_index.md new file mode 100644 index 000000000..a3b6e67cc --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/text/_index.md @@ -0,0 +1,6 @@ +--- +title: "Text" +linkTitle: "Text" +description: "Data types used for working with text." +weight: 1 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/data-types/text/char.md b/content/en/docs/2024.11/Reference/data-types/text/char.md new file mode 100644 index 000000000..ffa20506c --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/text/char.md @@ -0,0 +1,73 @@ +--- +title: "Char" +linkTitle: "Char" +description: "Used to represent unicode characters." +weight: 1 +--- + +# {{% param title %}} + +

(System.Char)

+ +## Summary + +The `Char` data type is used to represent unicode characters. + +The [String][] data type represents text as a sequence of `Char` values. + +| | | +|-|-| +| **Category:** | Text | +| **Name:** | `Char` | +| **Full Name:** | `System.Char` | +| **Alias:** | `char` | +| **Description:** | A unicode character, surrounded by single quotes (e.g. `'a'` or `'!'`) | +| **Size:** | `2` bytes | +| **Default Value:** | `'\0'` or `'U0000'` | +| **Can be used as:** | `Int32`, `Int64`, `Single`, `Double`, `Object`, `dynamic` | +| **Can be cast to:** | `Int16` (e.g. `(Int16)'a'` or `(System.Int16)'a'` or `(short)'a'`) | + +## Remarks + +### Create a Char + +The following table shows some of the ways that a `Char` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Declare a character literal | `'a'` | `'a'` | Expression | | +| Declare a Unicode escape sequence | `'\u0061'` | `'a'` | Expression | | +| Declare a hexadecimal escape sequence | `'\x0061'` or `'\x061'` or `'\x61'`| `'a'` | Expression | | +| Cast an `Int32` value | `(Char)97` | `'a'` | Expression | | + +### Property Editor Support + +Currently no [Input][], [InputOutput][] or [Output][] properties require the `Char` data type. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +* [String][] + +### Related Concepts + +* [Working with Text][] + +### External Documentation + +* [System.Char][] + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[System.Char]: {{< url path="MSDocs.DotNet.Api.System.Char.MainDoc" >}} + +[Working with Text]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/text/cultureinfo.md b/content/en/docs/2024.11/Reference/data-types/text/cultureinfo.md new file mode 100644 index 000000000..428c0e49f --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/text/cultureinfo.md @@ -0,0 +1,116 @@ +--- +title: "CultureInfo" +linkTitle: "CultureInfo" +description: "Used to represent information about a specific culture, including the names for the culture, the writing system, the calendar used, the sort order of strings, and formatting for dates and numbers." +weight: 1 +--- + +# {{% param title %}} + +

(System.Globalization.CultureInfo)

+ +{{% alert type="information" title="Information" %}}Improvements to this page are planned for the future.{{% /alert %}} + +## Summary + +The `CultureInfo` data type is used to represent information about a specific culture, including the names for the culture, the writing system, the calendar used, the sort order of strings, and formatting for dates and numbers. + +| | | +|-|-| +| **Category:** | Text | +| **Name:** | `CultureInfo` | +| **Full Name:** | `System.Globalization.CultureInfo` | +| **Alias:** | N/A | +| **Description:** | Used to represent information about a specific culture. | +| **Default Value:** | `null` | +| **Can be used as:** | `CultureInfo`, `object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Remarks + +### Types of CultureInfo + +There are four types of CultureInfo: + +- [Invariant Culture][] +- [Current Culture][] +- [Neutral Culture][] +- [Specific Culture][] + +#### Invariant Culture + +The invariant culture is culture-insensitive. It is associated with the English language but not with any country/region, as such the casing conventions, the sort order of strings, and formatting for dates and numbers will remain consistent across systems. This can be useful when persisting data in a culture-independent format. + +There are two ways to create an invariant culture: + +- `CultureInfo.InvariantCulture` +- `new CultureInfo("")` + +#### Current Culture + +The current culture is culture-sensitive. It is used to represent the current culture of the server running {{% ctx %}}, and as such the casing conventions, the sort order of strings, and formatting for dates and numbers may change across systems. This can be useful for providing date time in the correct format for a user. + +There is one way to get the current culture: + +- `CultureInfo.CurrentCulture` + +#### Neutral Culture + +The neutral culture is culture-sensitive. It is associated with a language, but not with any country/region. + +Neutral Culture can be created by specifying the language but not the country (e.g. `new CultureInfo("en")` for english with no associated country). + +#### Specific Culture + +The culture can be explicitly specified to use a particular format (e.g. `CultureInfo("en-GB")` for the standard UK english culture). +If the resources for a specific culture are not available in the operating system, the resources for the associated neutral culture are used. + +For a comprehensive list of cultures please see [Supported Culture Codes][]. + +### Invalid CultureInfo + +If an invalid CultureInfo (e.g. `new CultureInfo(“enaa”)`), is provided to a block property that requires an [IFormatProvider][] data type, (i.e. [Format Text With Values][FormatTextWithValues] block) a [CultureInfoNotFoundException][] will be thrown. + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `CultureInfo`. +- The Literal Editor is available for [Input][] properties where the data type is `CultureInfo`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `CultureInfo`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [IFormatProvider][] + +### Related Concepts + +- [Working with Text][] + +### External Documentation + +- [Supported Culture Codes][] +- [System.Globalization.CultureInfo][] +- [System.Globalization.CultureInfoNotFoundException][CultureInfoNotFoundException] + +[CultureInfoNotFoundException]: {{< url path = "MSDocs.DotNet.Api.System.Globalization.CultureInfoNotFoundException">}} +[Supported Culture Codes]: {{< url path = "MSDocs.CSharp.SupportedCultureCodes">}} + +[Invariant Culture]: {{< ref "#invariant-culture" >}} +[Current Culture]: {{< ref "#current-culture" >}} +[Specific Culture]: {{< ref "#specific-culture" >}} +[Neutral Culture]: {{< ref "#neutral-culture" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Working with Text]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.MainDoc" >}} + +[System.Globalization.CultureInfo]: {{< url path="MSDocs.DotNet.Api.System.Globalization.CultureInfo" >}} +[FormatTextWithValues]: {{< url path="Cortex.Reference.Blocks.Text.FormatText.FormatTextWithValues.MainDoc" >}} +[IFormatProvider]: {{< url path="Cortex.Reference.DataTypes.Text.IFormatProvider.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/text/encoding.md b/content/en/docs/2024.11/Reference/data-types/text/encoding.md new file mode 100644 index 000000000..99f8b08e9 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/text/encoding.md @@ -0,0 +1,65 @@ +--- +title: "Encoding" +linkTitle: "Encoding" +description: "Any data type used to represent a specific character encoding (e.g. ASCII, UTF8, Unicode)." +weight: 1 +--- + +# {{% param title %}} + +

(System.Text.Encoding)

+ +{{% alert type="information" title="Information" %}}Improvements to this page are planned for the future.{{% /alert %}} + +## Summary + +Any data type used to represent a specific character encoding (e.g. ASCII, UTF8, Unicode). + +| | | +|-|-| +| **Category:** | Text | +| **Name:** | `Encoding` | +| **Full Name:** | `System.Text.Encoding` | +| **Alias:** | N/A | +| **Description:** | Any data type used to represent a specific character encoding (e.g. ASCII, UTF8, Unicode). | +| **Default Value:** | `null` | +| **Can be used as:** | `Encoding`, `object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `Encoding`. +- The Literal Editor is available for [Input][] properties where the data type is `Encoding`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `Encoding`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [UnicodeEncoding][] +- [UTF32Encoding][] +- [UTF8Encoding][] + +### Related Concepts + +- [Working with Text][] + +### External Documentation + +- [System.Text.Encoding][Encoding] + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Working with Text]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.MainDoc" >}} +[Encoding]: {{< url path = "MSDocs.DotNet.Api.System.Text.Encoding">}} +[UnicodeEncoding]: {{< url path = "Cortex.Reference.DataTypes.Text.UnicodeEncoding.MainDoc">}} +[UTF32Encoding]: {{< url path = "Cortex.Reference.DataTypes.Text.UTF32Encoding.MainDoc">}} +[UTF8Encoding]: {{< url path = "Cortex.Reference.DataTypes.Text.UTF8Encoding.MainDoc">}} diff --git a/content/en/docs/2024.11/Reference/data-types/text/encryptabletext.md b/content/en/docs/2024.11/Reference/data-types/text/encryptabletext.md new file mode 100644 index 000000000..571986655 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/text/encryptabletext.md @@ -0,0 +1,63 @@ +--- +title: "EncryptableText" +linkTitle: "EncryptableText" +description: "Used to represent text that can be, but does not need to be encrypted." +weight: 1 +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Text.EncryptableText)

+ +{{% alert type="information" title="Information" %}}Improvements to this page are planned for the future.{{% /alert %}} + +## Summary + +The `EncryptableText` datatype is used to represent text that can be, but does not need to be encrypted. + +| | | +|-|-| +| **Category:** | Text | +| **Name:** | `EncryptableText` | +| **Full Name:** | `Cortex.DataTypes.Text.EncryptableText` | +| **Alias:** | N/A | +| **Description:** | Used to represent text that can be, but does not need to be encrypted . | +| **Default Value:** | `null` | +| **Can be used as:** | `EncryptableText`, `object`, `dynamic` | +| **Can be cast to:** | `string` | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `EncryptableText`. +- The Literal Editor is available for [Input][] properties where the data type is `EncryptableText`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `EncryptableText`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [EncryptedText] +- [String] + +### Related Concepts + +- [Working with Text] + +### External Documentation + +None + +[EncryptedText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptedText.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[Working with Text]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.MainDoc" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/text/encryptedtext.md b/content/en/docs/2024.11/Reference/data-types/text/encryptedtext.md new file mode 100644 index 000000000..ae64300ec --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/text/encryptedtext.md @@ -0,0 +1,63 @@ +--- +title: "EncryptedText" +linkTitle: "EncryptedText" +description: "Used to represent text that must be encrypted." +weight: 1 +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Text.EncryptedText)

+ +{{% alert type="information" title="Information" %}}Improvements to this page are planned for the future.{{% /alert %}} + +## Summary + +The `EncryptedText` datatype is used to represent text that must be encrypted. + +| | | +|-|-| +| **Category:** | Text | +| **Name:** | `EncryptedText` | +| **Full Name:** | `Cortex.DataTypes.Text.EncryptedText` | +| **Alias:** | N/A | +| **Description:** | Used to represent text that must be encrypted . | +| **Default Value:** | `null` | +| **Can be used as:** | `EncryptedText`, `object`, `dynamic` | +| **Can be cast to:** | `string` | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `EncryptedText`. +- The Literal Editor is available for [Input][] properties where the data type is `EncryptedText`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `EncryptedText`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [EncryptableText][] +- [String][] + +### Related Concepts + +- [Working with Text] + +### External Documentation + +None + +[EncryptableText]: {{< url path="Cortex.Reference.DataTypes.Text.EncryptableText.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[Working with Text]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.MainDoc" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/text/iformatprovider.md b/content/en/docs/2024.11/Reference/data-types/text/iformatprovider.md new file mode 100644 index 000000000..60489d7d1 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/text/iformatprovider.md @@ -0,0 +1,63 @@ +--- +title: "IFormatProvider" +linkTitle: "IFormatProvider" +description: "Any data type used to control formatting." +weight: 1 +--- + +# {{% param title %}} + +

(System.IFormatProvider)

+ +{{% alert type="information" title="Information" %}}Improvements to this page are planned for the future.{{% /alert %}} + +## Summary + +Any data type used to control formatting. + +| | | +|-|-| +| **Category:** | Text | +| **Name:** | `IFormatProvider` | +| **Full Name:** | `System.IFormatProvider` | +| **Alias:** | N/A | +| **Description:** | Any data type used to control formatting. | +| **Default Value:** | `null` | +| **Can be used as:** | `IFormatProvider`, `object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `IFormatProvider`. +- The Literal Editor is available for [Input][] properties where the data type is `IFormatProvider`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `IFormatProvider`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [CultureInfo][] + +### Related Concepts + +- [Working with Text][] + +### External Documentation + +- [System.IFormatProvider][IFormatProvider] + +[Working with Text]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.MainDoc" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[IFormatProvider]: {{< url path="MSDocs.DotNet.Api.System.IFormatProvider" >}} + +[CultureInfo]: {{< url path="Cortex.Reference.DataTypes.Text.CultureInfo.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/text/regex/_index.md b/content/en/docs/2024.11/Reference/data-types/text/regex/_index.md new file mode 100644 index 000000000..fd0bae889 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/text/regex/_index.md @@ -0,0 +1,6 @@ +--- +title: "Regex" +linkTitle: "Regex" +description: "Data types used when working with Regex." +weight: 1 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/data-types/text/regex/capturedetails.md b/content/en/docs/2024.11/Reference/data-types/text/regex/capturedetails.md new file mode 100644 index 000000000..f1aae5ce8 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/text/regex/capturedetails.md @@ -0,0 +1,129 @@ +--- +title: "CaptureDetails" +linkTitle: "CaptureDetails" +description: "Used to represent a single capture for a given group" +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Text.Regex.CaptureDetails)

+ +## Summary + +The `CaptureDetails` data type is used to represent a single capture for a given [Group][]. + +| | | +|-|-| +| **Category:** | Text | +| **Name:** | `CaptureDetails` | +| **Full Name:** | `Cortex.DataTypes.Text.Regex.CaptureDetails` | +| **Alias:** | N/A | +| **Description:** | A `CaptureDetails` represents a single capture for a given [Group][]. | +| **Default Value:** | null | +| **Can be used as:** | `CaptureDetails`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### Value + +The value of the capture. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [String][] with no value | + +### Index + +The starting index of the capture. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [Int32][] with value `0` | + +### Length + +The length of the [Value][Value Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [Int32][] with value `0` | + +## Remarks + +### Create a CaptureDetails + +The following table shows some of the ways that a `CaptureDetails` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use a `CaptureDetails` constructor with object initialisation | `new CaptureDetails{Value = "", Index = 0, Length = 0}` | `{"Value": "","Index": 0,"Length": 0}` | Expression | | + +### Convert a CaptureDetails to Text + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `ToString` | `($)CaptureDetails.ToString()` | `"Cortex.DataTypes.Text.Regex.CaptureDetails"` | Expression | ToString will return the Full Name of the `CaptureDetails` Data Type | +| Use `Convert Object to Text` block | where `Object` property has a value of `{"Value": "","Index": 0,"Length": 0}` | `"Cortex.DataTypes.Text.Regex.CaptureDetails"` | N/A | See [Convert Object to Text][] | +| Use `Convert Object to Json` block | where `Object` property has a value of `{"Value": "","Index": 0,"Length": 0}` | `"{\r\n \"Value\": \"\",\r\n \"Index\": 0,\r\n \"Length\": 0\r\n}"` | N/A | See [Convert Object to Json][] | + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `CaptureDetails`. +- The Literal Editor is not available for [Input][] properties where the data type is `CaptureDetails`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `CaptureDetails`. + +### Known Limitations + +#### ToString Method always returns the Full Name + +Currently, if the `ToString()` method is used on a `CaptureDetails`, then its Full Name will be returned; instead of a representation of the data within the `CaptureDetails`. + +In future this limitation may be removed. + +## See Also + +### Related Data Types + +* [Group][] +* [Int32][] +* [String][] + +### Related Concepts + +* [Working with Text][] + +### External Documentation + +None + +[Value Property]: {{}} +[Index Property]: {{}} +[Length Property]: {{}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} + +[System.Text.RegularExpressions.Capture]: {{< url path="MSDocs.DotNet.Api.System.Text.RegularExpressions.Capture" >}} + +[Group]: {{}} +[Int32]: {{}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} +[Convert Object To Text]: {{< url path="Cortex.Reference.Blocks.Objects.ConvertObject.ConvertObjectToText.MainDoc" >}} + +[Working with Text]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/text/regex/group.md b/content/en/docs/2024.11/Reference/data-types/text/regex/group.md new file mode 100644 index 000000000..1b11e02e1 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/text/regex/group.md @@ -0,0 +1,145 @@ +--- +title: "Group" +linkTitle: "Group" +description: "Used to represent a regex match group. It contains all of the captures for a given group pattern." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Text.Regex.Group)

+ +## Summary + +The `Group` data type is used to represent a regex [Match][] group. It contains all of the [Captures][CaptureDetails] for a given group pattern. + +| | | +|-|-| +| **Category:** | Text | +| **Name:** | `Group` | +| **Full Name:** | `Cortex.DataTypes.Text.Regex.Group` | +| **Alias:** | N/A | +| **Description:** | A `Group` represents a regex [Match][] group. It contains all of the [Captures][CaptureDetails] for a given group pattern. | +| **Default Value:** | null | +| **Can be used as:** | `Group`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### Value + +The value of the last [CaptureDetails][] within [Captures][Captures Property], this represents the full text captured by the Group. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [String][] with no value. | + +### Index + +The starting index of the first [CaptureDetails][] within [Captures][Captures Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [Int32][] with value `0` | + +### Length + +The length of [Value][Value Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [Int32][] with value `0` | + +### Captures + +The list of [CaptureDetails][CaptureDetails] found in the Group. +

If no captures were found, the list will be empty. + +| | | +|--------------------|---------------------------| +| Data Type | [IReadOnlyList]<[CaptureDetails][]> | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [IReadOnlyList][]<[CaptureDetails][]> with no value | + +## Remarks + +### Create a Group + +The following table shows some of the ways that a `Group` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use a `Group` constructor with object initialisation | `new Group{Value = "", Index = 0, Length = 0, Captures = new List()}` | `{"Value": "","Index": 0,"Length": 0,"Captures": []}` | Expression | | + +### Convert a Group to Text + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `ToString` | `($)Group.ToString()` | `"Cortex.DataTypes.Text.Regex.Group"` | Expression | ToString will return the Full Name of the `Group` Data Type | +| Use `Convert Object to Text` block | where `Object` property has a value of `{"Value": "","Index": 0,"Length": 0,"Captures": new List()}` | `"Cortex.DataTypes.Text.Regex.Group"` | N/A | See [Convert Object to Text][] | +| Use `Convert Object to Json` block | where `Object` property has a value of `{"Value": "","Index": 0,"Length": 0,"Captures": []}` | `"{\r\n \"Value\": \"\",\r\n \"Index\": 0,\r\n \"Length\": 0,\r\n \"Captures\": []\r\n}"` | N/A | See [Convert Object to Json][] | + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `Group`. +- The Literal Editor is not available for [Input][] properties where the data type is `Group`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `Group`. + +### Known Limitations + +#### ToString Method always returns the Full Name + +Currently, if the `ToString()` method is used on a `Group`, then its Full Name will be returned; instead of a representation of the data within the `Group`. + +In future this limitation may be removed. + +## See Also + +### Related Data Types + +* [CaptureDetails][] +* [IReadOnlyList][] +* [Int32][] +* [Match][] +* [String][] + +### Related Concepts + +* [Working with Text][] + +### External Documentation + +None + +[Captures Property]: {{}} +[Value Property]: {{}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} + +[System.Text.RegularExpressions.Group]: {{< url path="MSDocs.DotNet.Api.System.Text.RegularExpressions.Group" >}} + +[CaptureDetails]: {{}} +[IReadOnlyList]: {{}} +[Dictionary]: {{}} +[Int32]: {{}} +[Match]: {{}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} +[Convert Object To Text]: {{< url path="Cortex.Reference.Blocks.Objects.ConvertObject.ConvertObjectToText.MainDoc" >}} + +[Working with Text]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/text/regex/match.md b/content/en/docs/2024.11/Reference/data-types/text/regex/match.md new file mode 100644 index 000000000..6e32fef61 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/text/regex/match.md @@ -0,0 +1,140 @@ +--- +title: "Match" +linkTitle: "Match" +description: "Used to represent a regex match. It contains all of the groups found in the regex pattern." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Text.Regex.Match)

+ +## Summary + +The `Match` data type is used to represent a regex match. It contains all of the [Groups][Group] found in the regex pattern. + +| | | +|-|-| +| **Category:** | Text | +| **Name:** | `Match` | +| **Full Name:** | `Cortex.DataTypes.Text.Regex.Match` | +| **Alias:** | N/A | +| **Description:** | A `Match` represents a regex match. It contains all of the [Groups][Group] found in the regex pattern. | +| **Default Value:** | null | +| **Can be used as:** | `Match`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### Value + +The value of the text that was matched + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [String][] with no value | + +### Index + +The starting index of the regex match. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [Int32][] with value `0` | + +### Length + +The length of [Value][Value Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [Int32][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [Int32][] with value `0` | + +### Groups + +The dictionary of [Groups][Group] in the match.

Each key in [Groups][Groups Property] represents the name of the [Group][], if a group does not have a name provided they will increment from `"1"` + +[Groups][Groups Property] always contains a default [Group][] representing the full match, the name of this [Group][] is always `"0"`. + +| | | +|--------------------|---------------------------| +| Data Type | [Dictionary][]<[String][], [Group][]> | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [Dictionary][]<[String][], [Group][]> with value `{}` | + +## Remarks + +### Create a Match + +The following table shows some of the ways that a `Match` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use a `Match` constructor with object initialisation | `new Match{Value = "", Index = 0, Length = 0, Groups = new Dictionary()}` | `{"Value": "","Index": 0,"Length": 0,"Groups": {}}` | Expression | | + +### Convert Match to Text + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `ToString` | `($)Match.ToString()` | `"Cortex.DataTypes.Text.Regex.Match"` | Expression | ToString will return the Full Name of the `Match` Data Type | +| Use `Convert Object to Text` block | where `Object` property has a value of `{"Value": "","Index": 0,"Length": 0,"Groups": {}}` | `"Cortex.DataTypes.Text.Regex.Match"` | N/A | See [Convert Object to Text][] | +| Use `Convert Object to Json` block | where `Object` property has a value of `{"Value": "","Index": 0,"Length": 0,"Groups": {}}` | `"{\r\n \"Value\": \"\",\r\n \"Index\": 0,\r\n \"Length\": 0,\r\n \"Groups\": {}\r\n}"` | N/A | See [Convert Object to Json][] | + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `Match`. +- The Literal Editor is not available for [Input][] properties where the data type is `Match`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `Match`. + +### Known Limitations + +#### ToString Method always returns the Full Name + +Currently, if the `ToString()` method is used on a `Match`, then its Full Name will be returned; instead of a representation of the data within the `Match`. + +In future this limitation may be removed. + +## See Also + +### Related Data Types + +* [Dictionary][] +* [Group][] +* [Int32][] +* [String][] + +### Related Concepts + +* [Working with Text][] + +### External Documentation + +None + +[Groups Property]: {{}} +[Value Property]: {{}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} + +[Dictionary]: {{}} +[Int32]: {{}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Group]: {{}} + +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} +[Convert Object To Text]: {{< url path="Cortex.Reference.Blocks.Objects.ConvertObject.ConvertObjectToText.MainDoc" >}} + +[Working with Text]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/text/searchoptions.md b/content/en/docs/2024.11/Reference/data-types/text/searchoptions.md new file mode 100644 index 000000000..dc12ef04d --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/text/searchoptions.md @@ -0,0 +1,166 @@ +--- +title: "SearchOptions" +linkTitle: "SearchOptions" +description: "Used to specify how text is matched when performing a search (i.e. text matches the specified literal text, regex or pattern)." +weight: 1 +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Text.SearchOptions)

+ +## Summary + +The `SearchOptions` are used to specify how text is matched when performing a search (i.e. text matches the specified literal text, regex or pattern). + +`SearchOptions` is an [enum][Working with Enums] data type, which means it has a defined set of values, where each value has an associated [String][] name and [Int32][] value. + +| | | +|-|-| +| **Category:** | Text | +| **Name:** | `SearchOptions` | +| **Full Name:** | `Cortex.DataTypes.Text.SearchOptions` | +| **Alias:** | N/A | +| **Description:** | Specifies how text is matched when performing a search (i.e. text matches the specified literal text, regex or pattern). | +| **Default Value:** | `(SearchOptions)0` | +| **Can be used as:** | `SearchOptions`, `Object`, `dynamic` | +| **Can be cast to:** | `Int16` (e.g. `(Int16)SearchOptions.LiteralText` or `(System.Int16)SearchOptions.LiteralText` or `(short)SearchOptions.LiteralText`) | +| | `Int32` (e.g. `(Int32)SearchOptions.LiteralText` or `(System.Int32)SearchOptions.LiteralText` or `(int)SearchOptions.LiteralText`) | +| | `Int64` (e.g. `(Int64)SearchOptions.LiteralText` or `(System.Int64)SearchOptions.LiteralText` or `(long)SearchOptions.LiteralText`) | +| | `Single` (e.g. `(Single)SearchOptions.LiteralText` or `(System.Single)SearchOptions.LiteralText` or `(float)SearchOptions.LiteralText`) | +| | `Double` (e.g. `(Double)SearchOptions.LiteralText` or `(System.Double)SearchOptions.LiteralText` or `(double)SearchOptions.LiteralText`) | + +## Values + +### LiteralText + +| | | +|-|-| +| **Name:** | LiteralText | +| **Value:** | [Int32][] with value `0` | +| **Notes:** | Matches text exactly with a literal character search. | + +### Regex + +| | | +|-|-| +| **Name:** | Regex | +| **Value:** | [Int32][] with value `1` | +| **Notes:** | Matches text that matches the [regex][Regex Syntax] provided. | + +### PatternMatching + +| | | +|-|-| +| **Name:** | PatternMatching | +| **Value:** | [Int32][] with value `2` | +| **Notes:** | Matches text that matches the [pattern][Pattern Matching Syntax] provided. | + +## Remarks + +### Create SearchOptions + +The following table shows some of the ways that `SearchOptions` can be created using the expression editor. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Declare a `SearchOptions` literal | `LiteralText` | `SearchOptions.LiteralText` | Literal | Matches text exactly with a literal character search. | +| | `Regex` | `SearchOptions.Regex` | Literal | Matches text that matches the regex provided, see [Regex Syntax][]. | +| | `PatternMatching` | `SearchOptions.PatternMatching` | Literal | Matches text that matches the pattern provided, see [Pattern Matching Syntax][]. | +| Use a `SearchOptions` expression | `SearchOptions.LiteralText` | `SearchOptions.LiteralText`| Expression | Matches text exactly with a literal character search.| +| | `SearchOptions.Regex` | `SearchOptions.Regex`| Expression | Matches text that matches the regex provided, see [Regex Syntax][]. | +| | `SearchOptions.PatternMatching` | `SearchOptions.PatternMatching`| Expression | Matches text that matches the pattern provided, see [Pattern Matching Syntax][]. | +| Use [Explicit Casting][] | `(SearchOptions)0` | `SearchOptions.LiteralText`| Expression | Matches text exactly with a literal character search. | +| | `(SearchOptions)1` | `SearchOptions.Regex`| Expression | Matches text that matches the regex provided, see [Regex Syntax][]. | +| | `(SearchOptions)2` | `SearchOptions.PatternMatching`| Expression | Matches text that matches the pattern provided, see [Pattern Matching Syntax][]. | +| Use `Enum.Parse` | `(SearchOptions)Enum.Parse(typeof(SearchOptions), "LiteralText")` | `SearchOptions.LiteralText`| Expression | Parses `"LiteralText"` and converts it to `SearchOptions.LiteralText`. See [Enum.Parse][] | +| | `(SearchOptions)Enum.Parse(typeof(SearchOptions), "Regex")` | `SearchOptions.Regex`| Expression | Parses `"Regex"` and converts it to `SearchOptions.Regex`. See [Enum.Parse][] | +| | `(SearchOptions)Enum.Parse(typeof(SearchOptions), "PatternMatching")` | `SearchOptions.PatternMatching`| Expression | Parses `"PatternMatching"` and converts it to `SearchOptions.PatternMatching`. See [Enum.Parse][] | +| Use `Enum.ToObject` | `(SearchOptions)Enum.ToObject(typeof(SearchOptions), 0)` | `SearchOptions.LiteralText`| Expression | Converts `0` to `SearchOptions.LiteralText` value. See [Enum.ToObject][] | +| | `(SearchOptions)Enum.ToObject(typeof(SearchOptions), 1)` | `SearchOptions.Regex`| Expression | Converts `1` to `SearchOptions.Regex` value. See [Enum.ToObject][] | +| | `(SearchOptions)Enum.ToObject(typeof(SearchOptions), 2)` | `SearchOptions.PatternMatching`| Expression | Converts `2` to `SearchOptions.PatternMatching` value. See [Enum.ToObject][] | + +Please see [Instantiating an enumeration type][] for further information. + +### Convert SearchOptions to Text + +The following table shows some of the ways that a `SearchOptions` can be converted to text. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `ToString` | `SearchOptions.LiteralText.ToString()` | `"LiteralText"` | Expression | Converts `SearchOptions.LiteralText` to `"LiteralText"`. See [Enum.ToString][] | +| | `SearchOptions.Regex.ToString()` | `"Regex"` | Expression | Converts `SearchOptions.Regex` to `"Regex"`. See [Enum.ToString][] | +| | `SearchOptions.PatternMatching.ToString()` | `"PatternMatching"` | Expression | Converts `SearchOptions.PatternMatching` to `"PatternMatching"`. See [Enum.ToString][] | +| Use `Convert.ToString` | `Convert.ToString(SearchOptions.LiteralText)` | `"LiteralText"` | Expression | Converts `SearchOptions.LiteralText` to `"LiteralText"`. See [Convert.ToString][] | +| | `Convert.ToString(SearchOptions.Regex)` | `"Regex"` | Expression | Converts `SearchOptions.Regex` to `"Regex"`. See [Convert.ToString][] | +| | `Convert.ToString(SearchOptions.PatternMatching)` | `"PatternMatching"` | Expression | Converts `SearchOptions.PatternMatching` to `"PatternMatching"`. See [Convert.ToString][] | +| Use `Convert Object To Text` block | where `Object` property has a value of `SearchOptions.LiteralText` | `"LiteralText"` | N/A | Converts `SearchOptions.LiteralText` to `"LiteralText"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `SearchOptions.Regex` | `"Regex"` | N/A | Converts `SearchOptions.Regex` to `"Regex"`. See [Convert Object To Text][] || | where `Object` property has a value of `SearchOptions.Regex` | `"Regex"` | N/A | |Converts `SearchOptions.Regex` to `"Regex"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `SearchOptions.PatternMatching` | `"PatternMatching"` | N/A | Converts `SearchOptions.PatternMatching` to `"PatternMatching"`. See [Convert Object To Text][] | +| Use `Convert Object To Json` block | where `Object` property has a value of `SearchOptions.LiteralText` | `"0"` | N/A | Converts `SearchOptions.LiteralText` to `"0"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `SearchOptions.Regex` | `"1"` | N/A | Converts `SearchOptions.Regex` to `"1"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `SearchOptions.PatternMatching` | `"2"` | N/A | Converts `SearchOptions.PatternMatching` to `"2"`. See [Convert Object To Json][] | + +Please see [Formatting enumeration values][] for further information. + +### Convert SearchOptions to a Number + +The following table shows some of the ways that a `SearchOptions` can be converted to a number. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use [Explicit Casting][] | `(Int32)SearchOptions.LiteralText` | `0` | Expression | [Casts][Explicit Casting] `SearchOptions.LiteralText` to `0` | +| | `(Int32)SearchOptions.Regex` | `1` | Expression | [Casts][Explicit Casting] `SearchOptions.Regex` to `1` | +| | `(Int32)SearchOptions.PatternMatching` | `2` | Expression | [Casts][Explicit Casting] `SearchOptions.PatternMatching` to `2` | +| Use `Convert.ToInt32` | `Convert.ToInt32(SearchOptions.LiteralText)` | `0` | Expression | Converts `SearchOptions.LiteralText` to `0`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(SearchOptions.Regex)` | `1` | Expression | Converts `SearchOptions.Regex` to `1`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(SearchOptions.PatternMatching)` | `2` | Expression | Converts `SearchOptions.PatternMatching` to `2`. See [Convert.ToInt32][] | + +### Property Editor Support + +* The Expression Editor is available for [Input][] properties where the data type is `SearchOptions`. +* The Literal Editor is available for [Input][] properties where the data type is `SearchOptions`. +* The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `SearchOptions`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +* [Int32][] +* [String][] + +### Related Concepts + +* [Working with Enums][] +* [Explicit Casting][] + +### External Documentation + +None + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Convert Object To Text]: {{< url path="Cortex.Reference.Blocks.Objects.ConvertObject.ConvertObjectToText.MainDoc" >}} +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} +[Working with Enums]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Enums.MainDoc" >}} +[Explicit Casting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectCasting.ExplicitCast" >}} +[Enum.Parse]: {{< url path="MSDocs.DotNet.Api.System.Enum.Parse" >}} +[Enum.ToObject]: {{< url path="MSDocs.DotNet.Api.System.Enum.ToObject" >}} +[Enum.ToString]: {{< url path="MSDocs.DotNet.Api.System.Enum.ToString" >}} +[Convert.ToInt32]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToInt32" >}} +[Convert.ToString]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToString" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Pattern Matching Syntax]: {{}} +[Regex Syntax]: {{}} +[String Equality]: {{}} + +[Instantiating an enumeration type]: {{< url path="MSDocs.DotNet.Api.System.Enum.InstantiatingAnEnum" >}} +[Formatting enumeration values]: {{< url path="MSDocs.DotNet.Api.System.Enum.FormattingEnumerationValues" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/text/string.md b/content/en/docs/2024.11/Reference/data-types/text/string.md new file mode 100644 index 000000000..2ea47eaee --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/text/string.md @@ -0,0 +1,83 @@ +--- +title: "String" +linkTitle: "String" +description: "Used to represent text." +weight: 1 +--- + +# {{% param title %}} + +

(System.String)

+ +## Summary + +The `String` data type is used to represent text. + +| | | +|-|-| +| **Category:** | Text | +| **Name:** | `String` | +| **Full Name:** | `System.String` | +| **Alias:** | `string` | +| **Description:** | A sequence of unicode [characters][Char], surrounded by double quotes (e.g. `"This is a string"`) | +| **Size:** | Varies depending upon the number of [characters][Char] it contains | +| **Default Value:** | `null` | +| **Can be used as:** | `IEnumerable`, `IEnumerable`, `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Remarks + +### Create a String + +The following table shows some of the ways that a `String` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Declare a `String` literal | `"Hello World!"` | `"Hello World!"` | Literal, Expression | In the Expression Editor the surrounding double quotes (i.e. `""`) are needed (e.g. `"Hello World!"`); in the Literal Editor they are not (e.g. `Hello World!`). Any double quotes in the Literal Editor will be treated as literal characters that are part of the `String`. | +| Use a `String` expression | `$"Hello {($)Variable}!"` where `($)Variable` is set to `"World!"` | `"Hello World!"` | Expression | Uses [String Interpolation][] | +| | `String.Format("Hello {0}!", ($)Variable)` where `($)Variable` is set to `"World!"` | `"Hello World!"` | Expression | Uses [String.Format][] | +| | `String.Concat("Hello", " ", "World!")` | `"Hello World!"` | Expression | Uses [String.Concat][] | +| | `String.Join(" ", {"Hello", "World!"})` | `"Hello World!"` | Expression | Uses [String.Join][] | +| | `"Hello!".Insert(5, " World")` | `"Hello World!"` | Expression | Uses [String.Insert][] | +| | `"Hello" + " " + "World!"` | `"Hello World!"` | Expression | Uses [String Concatenation Operator][] (i.e. `+`) | + +### Property Editor Support + +* The Expression Editor is available for [Input][] properties where the data type is `String`. +* The Literal Editor is available for [Input][] properties where the data type is `String`. + * Expression syntax is not supported within the Literal Editor for the `String` data type. +* The Variable Editor is available for [InputOutput][] and [Output][] properties where the data type is `String`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +* [Char][] + +### Related Concepts + +* [Working with Text][] + +### External Documentation + +* [System.String][] + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Char]: {{< url path="Cortex.Reference.DataTypes.Text.Char.MainDoc" >}} + +[System.String]: {{< url path="MSDocs.DotNet.Api.System.String.MainDoc" >}} +[String.Concat]: {{< url path="MSDocs.DotNet.Api.System.String.Concat" >}} +[String Concatenation Operator]: {{< url path="MSDocs.DotNet.Api.System.String.ConcatOperator" >}} +[String Interpolation]: {{< url path="MSDocs.DotNet.Api.System.String.StringInterpolation" >}} +[String.Format]: {{< url path="MSDocs.DotNet.Api.System.String.Format" >}} +[String.Insert]: {{< url path="MSDocs.DotNet.Api.System.String.Insert" >}} +[String.Join]: {{< url path="MSDocs.DotNet.Api.System.String.Join" >}} + +[Working with Text]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/text/stringcomparer.md b/content/en/docs/2024.11/Reference/data-types/text/stringcomparer.md new file mode 100644 index 000000000..470dffd7b --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/text/stringcomparer.md @@ -0,0 +1,151 @@ +--- +title: "StringComparer" +linkTitle: "StringComparer" +description: "Used to compare two pieces of text against each other." +weight: 1 +--- + +# {{% param title %}} + +

(System.StringComparer)

+ +## Summary + +The `StringComparer` data type is used to compare two pieces of text against each other. + +| | | +|-|-| +| **Category:** | Text | +| **Name:** | `StringComparer` | +| **Full Name:** | `System.StringComparer` | +| **Alias:** | N/A | +| **Description:** | Used to compare two pieces of text against each other. | +| **Default Value:** | `null` | +| **Can be used as:** | `Object`, `dynamic` | +| **Can be cast to:** | `IComparer`, `IComparer`, `IEqualityComparer`, `IEqualityComparer` | + +## Properties + +### CurrentCulture + +| | | +|-|-| +| **Name:** | CurrentCulture | +| **Value:** | `StringComparer.CurrentCulture` | +| **Notes:** | Gets a `StringComparer` that performs a case-sensitive text comparison using [Current Culture][CurrentCulture] rules. | + +### CurrentCultureIgnoreCase + +| | | +|-|-| +| **Name:** | CurrentCultureIgnoreCase | +| **Value:** | `StringComparer.CurrentCultureIgnoreCase` | +| **Notes:** | Gets a `StringComparer` that performs a case-insensitive text comparison using [Current Culture Ignore Case][CurrentCultureIgnoreCase] rules. | + +### InvariantCulture + +| | | +|-|-| +| **Name:** | InvariantCulture | +| **Value:** | `StringComparer.InvariantCulture` | +| **Notes:** | Gets a `StringComparer` that performs a case-sensitive text comparison using [Invariant Culture][InvariantCulture] rules. | + +### InvariantCultureIgnoreCase + +| | | +|-|-| +| **Name:** | InvariantCultureIgnoreCase | +| **Value:** | `StringComparer.InvariantCultureIgnoreCase` | +| **Notes:** | Gets a `StringComparer` that performs a case-insensitive text comparison using [Invariant Culture Ignore Case][InvariantCultureIgnoreCase] rules. | + +### Ordinal + +| | | +|-|-| +| **Name:** | Ordinal | +| **Value:** | `StringComparer.Ordinal` | +| **Notes:** | Gets a `StringComparer` that performs a case-sensitive text comparison using [Ordinal][] rules. | + +### OrdinalIgnoreCase + +| | | +|-|-| +| **Name:** | OrdinalIgnoreCase | +| **Value:** | `StringComparer.OrdinalIgnoreCase` | +| **Notes:** | Gets a `StringComparer` that performs a case-insensitive text comparison using [Ordinal Ignore Case][OrdinalIgnoreCase] rules. | + +## Remarks + +### Create a StringComparer + +The following table shows some of the ways that `StringComparer` can be created using the expression editor. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Declare a `StringComparer` literal | `StringComparer.CurrentCulture` | `StringComparer.CurrentCulture` | Expression | Gets a `StringComparer` that performs a case-sensitive text comparison using [Current Culture][CurrentCulture] rules. | +|| `StringComparer.CurrentCultureIgnoreCase` | `StringComparer.CurrentCultureIgnoreCase` | Expression | Gets a `StringComparer` that performs a case-insensitive text comparison using [Current Culture Ignore Case][CurrentCultureIgnoreCase] rules. | +|| `StringComparer.InvariantCulture` | `StringComparer.InvariantCulture` | Expression | Gets a `StringComparer` that performs a case-sensitive text comparison using [Invariant Culture][InvariantCulture] rules. | +|| `StringComparer.InvariantCultureIgnoreCase` | `StringComparer.InvariantCultureIgnoreCase` | Expression | Gets a `StringComparer` that performs a case-insensitive text comparison using [Invariant Culture Ignore Case][InvariantCultureIgnoreCase] rules. | +|| `StringComparer.Ordinal` | `StringComparer.Ordinal` | Expression | Gets a `StringComparer` that performs a case-sensitive text comparison using [Ordinal][] rules. | +|| `StringComparer.OrdinalIgnoreCase` | `StringComparer.OrdinalIgnoreCase` | Expression | Gets a `StringComparer` that performs a case-insensitive text comparison using [Ordinal Ignore Case][OrdinalIgnoreCase] rules. | + +### Convert StringComparer to Text + +The following table shows some of the ways that a `StringComparer` can be converted to text. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `ToString` | `StringComparer.CurrentCulture.ToString()` | `"System.CultureAwareComparer"` | Expression | See [Object.ToString][] | +|| `StringComparer.CurrentCultureIgnoreCase.ToString()` | `"System.CultureAwareComparer"` | Expression | See [Object.ToString][] | +|| `StringComparer.InvariantCulture.ToString()` | `"System.CultureAwareComparer"` | Expression | See [Object.ToString][] | +|| `StringComparer.InvariantCultureIgnoreCase.ToString()` | `"System.CultureAwareComparer"` | Expression | See [Object.ToString][] | +|| `StringComparer.Ordinal.ToString()` | `"System.OrdinalCaseSensitiveComparer"` | Expression | See [Object.ToString][] | +|| `StringComparer.OrdinalIgnoreCase.ToString()` | `"System.OrdinalIgnoreCaseComparer"` | Expression | See [Object.ToString][] | +| Use `Convert Object To Text` block | where `Object` property has a value of `StringComparer.CurrentCulture` | `"System.CultureAwareComparer"` | Expression | See [Convert Object To Text][] | +|| where `Object` property has a value of `StringComparer.CurrentCultureIgnoreCase` | `"System.CultureAwareComparer"` | Expression | See [Convert Object To Text][] | +|| where `Object` property has a value of `StringComparer.InvariantCulture` | `"System.CultureAwareComparer"` | Expression | See [Convert Object To Text][] | +|| where `Object` property has a value of `StringComparer.InvariantCultureIgnoreCase` | `"System.CultureAwareComparer"` | Expression | See [Convert Object To Text][] | +|| where `Object` property has a value of `StringComparer.Ordinal` | `"System.OrdinalCaseSensitiveComparer"` | Expression | See [Convert Object To Text][] | +|| where `Object` property has a value of `StringComparer.OrdinalIgnoreCase` | `"System.OrdinalIgnoreCaseComparer"` | Expression | See [Convert Object To Text][] | + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `StringComparer`. +- The Literal Editor is not available for [Input][] properties where the data type is `StringComparer`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `StringComparer`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [IComparer<TPriority>][IComparer] + +### Related Concepts + +- [Working With Text][Working With Text] + +### External Documentation + +- [StringComparer][] + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[IComparer]: {{< url path="Cortex.Reference.DataTypes.Collections.IComparer.MainDoc" >}} +[StringComparer]: {{< url path="MSDocs.DotNet.Api.System.StringComparer" >}} + +[Working With Text]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.MainDoc" >}} + +[CurrentCulture]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.CurrentCulture" >}} +[CurrentCultureIgnoreCase]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.CurrentCultureIgnoreCase" >}} +[InvariantCulture]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.InvariantCulture" >}} +[InvariantCultureIgnoreCase]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.InvariantCultureIgnoreCase" >}} +[Ordinal]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.Ordinal">}} +[OrdinalIgnoreCase]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.Equality.ComparisonTypes.OrdinalIgnoreCase">}} + +[Object.ToString]: {{< url path="MSDocs.DotNet.Api.System.Object.ToString" >}} +[Convert Object To Text]: {{< url path="Cortex.Reference.Blocks.Objects.ConvertObject.ConvertObjectToText.MainDoc" >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/data-types/text/stringcomparison.md b/content/en/docs/2024.11/Reference/data-types/text/stringcomparison.md new file mode 100644 index 000000000..c162595ef --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/text/stringcomparison.md @@ -0,0 +1,76 @@ +--- +title: "StringComparison" +linkTitle: "StringComparison" +description: "Used to indicate how two pieces of text are compared against each other (i.e. which culture to use and whether to consider case or not)." +weight: 1 +--- + +# {{% param title %}} + +

(System.StringComparison)

+ +{{% alert type="information" title="Information" %}}Improvements to this page are planned for the future.{{% /alert %}} + +## Summary + +The `StringComparison` data type is used to indicate how two pieces of text are compared against each other (i.e. which culture to use and whether to consider case or not). + +`StringComparison` is an [enum][Working with Enums] data type, which means it has a defined set of values, where each value has an associated [String][] name and [Int32][] value. + +| | | +|-|-| +| **Category:** | Text | +| **Name:** | `StringComparison` | +| **Full Name:** | `System.StringComparison` | +| **Alias:** | N/A | +| **Description:** | Used to indicate how two pieces of text are compared against each other (i.e. which culture to use and whether to consider case or not). | +| **Default Value:** | `(StringComparison)0` | +| **Can be used as:** | `StringComparison`, `object`, `dynamic` | +| **Can be cast to:** | `Int16` (e.g. `(Int16)StringComparison.CurrentCulture` or `(System.Int16)StringComparison.CurrentCulture` or `(short)StringComparison.CurrentCulture`) | +| | `Int32` (e.g. `(Int32)StringComparison.CurrentCulture` or `(System.Int32)StringComparison.CurrentCulture` or `(int)StringComparison.CurrentCulture`) | +| | `Int64` (e.g. `(Int64)StringComparison.CurrentCulture` or `(System.Int64)StringComparison.CurrentCulture` or `(long)StringComparison.CurrentCulture`) | +| | `Single` (e.g. `(Single)StringComparison.CurrentCulture` or `(System.Single)StringComparison.CurrentCulture` or `(float)StringComparison.CurrentCulture`) | +| | `Double` (e.g. `(Double)StringComparison.CurrentCulture` or `(System.Double)StringComparison.CurrentCulture` or `(double)StringComparison.CurrentCulture`) | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `StringComparison`. +- The Literal Editor is available for [Input][] properties where the data type is `StringComparison`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `StringComparison`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [StringComparer][] + +### Related Concepts + +- [Working With Text][] +- [Working With Enums][] + +### External Documentation + +- [System.StringComparison][StringComparison] +- [System.Enum][] + +[Working With Text]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.MainDoc" >}} + +[StringComparer]: {{< url path="Cortex.Reference.DataTypes.Text.StringComparer.MainDoc" >}} +[StringComparison]: {{< url path="MSDocs.DotNet.Api.System.StringComparison" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Working with Enums]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Enums.MainDoc" >}} +[System.Enum]: {{< url path="MSDocs.DotNet.Api.System.Enum.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/text/stringsplitoptions.md b/content/en/docs/2024.11/Reference/data-types/text/stringsplitoptions.md new file mode 100644 index 000000000..1325f13fa --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/text/stringsplitoptions.md @@ -0,0 +1,179 @@ +--- +title: "StringSplitOptions" +linkTitle: "StringSplitOptions" +description: "Used to specify settings for splitting text (i.e. whether to include or remove empty entries from results)." +weight: 1 +--- + +# {{% param title %}} + +

(System.StringSplitOptions)

+ +## Summary + +The `StringSplitOptions` is used to specify settings for splitting text (i.e. whether to include or remove empty entries from results). + +`StringSplitOptions` is an [enum][Working with Enums] data type, which means it has a defined set of values, where each value has an associated [String][] name and [Int32][] value. + +| | | +|-|-| +| **Category:** | Text | +| **Name:** | `StringSplitOptions` | +| **Full Name:** | `System.StringSplitOptions` | +| **Alias:** | N/A | +| **Description:** | Specifies settings for splitting text (i.e. whether to include or remove empty entries from results). | +| **Default Value:** | `(StringSplitOptions)0` | +| **Can be used as:** | `StringSplitOptions`, `Object`, `dynamic` | +| **Can be cast to:** | `Int16` (e.g. `(Int16)StringSplitOptions.None` or `(System.Int16)StringSplitOptions.None` or `(short)StringSplitOptions.None`) | +| | `Int32` (e.g. `(Int32)StringSplitOptions.None` or `(System.Int32)StringSplitOptions.None` or `(int)StringSplitOptions.None`) | +| | `Int64` (e.g. `(Int64)StringSplitOptions.None` or `(System.Int64)StringSplitOptions.None` or `(long)StringSplitOptions.None`) | +| | `Single` (e.g. `(Single)StringSplitOptions.None` or `(System.Single)StringSplitOptions.None` or `(float)StringSplitOptions.None`) | +| | `Double` (e.g. `(Double)StringSplitOptions.None` or `(System.Double)StringSplitOptions.None` or `(double)StringSplitOptions.None`) | + +## Values + +### None + +| | | +|-|-| +| **Name:** | None | +| **Value:** | [Int32][] with value `0` | +| **Notes:** | Empty entries and trailing or leading whitespaces (at the start or end of text) are not removed. | + +### RemoveEmptyEntries + +| | | +|-|-| +| **Name:** | RemoveEmptyEntries | +| **Value:** | [Int32][] with value `1` | +| **Notes:** | Empty entries are removed but trailing or leading whitespaces (at the start or end of text) are not removed. | + +### TrimEntries + +| | | +|-|-| +| **Name:** | TrimEntries | +| **Value:** | [Int32][] with value `2` | +| **Notes:** | Empty entries are not removed but trailing or leading whitespaces (at the start or end of text) are removed. | + +## Remarks + +### Create StringSplitOptions + +The following table shows some of the ways that `StringSplitOptions` can be created using the expression editor. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Declare a `StringSplitOptions` literal | `None` | `StringSplitOptions.None` | Literal | Empty entries are not removed. | +| | `RemoveEmptyEntries` | `StringSplitOptions.RemoveEmptyEntries` | Literal | Empty entries are removed. | +| | `TrimEntries` | `StringSplitOptions.TrimEntries` | Literal | Empty entries are not removed but trailing and leading whitespaces are removed. | +| Use a `StringSplitOptions` expression | `StringSplitOptions.None` | `StringSplitOptions.None`| Expression | Empty entries are not removed.| +| | `StringSplitOptions.RemoveEmptyEntries` | `StringSplitOptions.RemoveEmptyEntries`| Expression | Empty entries are removed. | +| | `StringSplitOptions.TrimEntries` | `StringSplitOptions.TrimEntries`| Expression | Empty entries are not removed but trailing and leading whitespaces are removed. | +| | `StringSplitOptions.RemoveEmptyEntries \| StringSplitOptions.TrimEntries` | `StringSplitOptions.RemoveEmptyEntries \| StringSplitOptions.TrimEntries` | Expression | Empty entries are removed and trailing and leading whitespaces are removed. | +| Use [Explicit Casting][] | `(StringSplitOptions)0` | `StringSplitOptions.None`| Expression | Empty entries are not removed. | +| | `(StringSplitOptions)1` | `StringSplitOptions.RemoveEmptyEntries`| Expression | Empty entries are removed. | +| | `(StringSplitOptions)2` | `StringSplitOptions.TrimEntries`| Expression | Empty entries are not removed but trailing and leading whitespaces are removed. | +| | `(StringSplitOptions)3` | `StringSplitOptions.RemoveEmptyEntries \| StringSplitOptions.TrimEntries`| Expression | Empty entries are removed and trailing and leading whitespaces are removed. | +| Use `Enum.Parse` | `(StringSplitOptions)Enum.Parse(typeof(StringSplitOptions), "None")` | `StringSplitOptions.None`| Expression | Parses `"None"` and converts it to `StringSplitOptions.None`. See [Enum.Parse][] | +| | `(StringSplitOptions)Enum.Parse(typeof(StringSplitOptions), "RemoveEmptyEntries")` | `StringSplitOptions.RemoveEmptyEntries`| Expression | Parses `"RemoveEmptyEntries"` and converts it to `StringSplitOptions.RemoveEmptyEntries`. See [Enum.Parse][] | +| | `(StringSplitOptions)Enum.Parse(typeof(StringSplitOptions), "TrimEntries")` | `StringSplitOptions.TrimEntries`| Expression | Parses `"TrimEntries"` and converts it to `StringSplitOptions.TrimEntries`. See [Enum.Parse][] | +| Use `Enum.ToObject` | `(StringSplitOptions)Enum.ToObject(typeof(StringSplitOptions), 0)` | `StringSplitOptions.None`| Expression | Converts `0` to `StringSplitOptions.None` value. See [Enum.ToObject][] | +| | `(StringSplitOptions)Enum.ToObject(typeof(StringSplitOptions), 1)` | `StringSplitOptions.RemoveEmptyEntries`| Expression | Converts `1` to `StringSplitOptions.RemoveEmptyEntries` value. See [Enum.ToObject][] | +| | `(StringSplitOptions)Enum.ToObject(typeof(StringSplitOptions), 2)` | `StringSplitOptions.TrimEntries`| Expression | Converts `2` to `StringSplitOptions.TrimEntries` value. See [Enum.ToObject][] | +| | `(StringSplitOptions)Enum.ToObject(typeof(StringSplitOptions), 3)` | `StringSplitOptions.RemoveEmptyEntries \| StringSplitOptions.TrimEntries` | Expression | Converts `3` to `StringSplitOptions.RemoveEmptyEntries \| StringSplitOptions.TrimEntries` value. See [Enum.ToObject][] | + + +Please see [Instantiating an enumeration type][] for further information. + +### Convert StringSplitOptions to Text + +The following table shows some of the ways that a `StringSplitOptions` can be converted to text. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `ToString` | `StringSplitOptions.None.ToString()` | `"None"` | Expression | Converts `StringSplitOptions.None` to `"None"`. See [Enum.ToString][] | +| | `StringSplitOptions.RemoveEmptyEntries.ToString()` | `"RemoveEmptyEntries"` | Expression | Converts `StringSplitOptions.RemoveEmptyEntries` to `"RemoveEmptyEntries"`. See [Enum.ToString][] | +| | `StringSplitOptions.TrimEntries.ToString()` | `"TrimEntries"` | Expression | Converts `StringSplitOptions.TrimEntries` to `"TrimEntries"`. See [Enum.ToString][] | +| | `(StringSplitOptions.RemoveEmptyEntries \| StringSplitOptions.TrimEntries).ToString()` | `"RemoveEmptyEntries, TrimEntries"` | Expression | Converts `StringSplitOptions.RemoveEmptyEntries \| StringSplitOptions.TrimEntries` to `"RemoveEmptyEntries, TrimEntries"`. See [Enum.ToString][] | +| Use `Convert.ToString` | `Convert.ToString(StringSplitOptions.None)` | `"None"` | Expression | Converts `StringSplitOptions.None` to `"None"`. See [Convert.ToString][] | +| | `Convert.ToString(StringSplitOptions.RemoveEmptyEntries)` | `"RemoveEmptyEntries"` | Expression | Converts `StringSplitOptions.RemoveEmptyEntries` to `"RemoveEmptyEntries"`. See [Convert.ToString][] | +| | `Convert.ToString(StringSplitOptions.TrimEntries)` | `"TrimEntries"` | Expression | Converts `StringSplitOptions.TrimEntries` to `"TrimEntries"`. See [Convert.ToString][] | +| | `Convert.ToString(StringSplitOptions.RemoveEmptyEntries \| StringSplitOptions.TrimEntries)` | `"RemoveEmptyEntries, TrimEntries"` | Expression | Converts `StringSplitOptions.RemoveEmptyEntries \| StringSplitOptions.TrimEntries` to `"RemoveEmptyEntries, TrimEntries"`. See [Convert.ToString][] | +| Use `Convert Object To Text` block | where `Object` property has a value of `StringSplitOptions.None` | `"None"` | N/A | Converts `StringSplitOptions.None` to `"None"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `StringSplitOptions.RemoveEmptyEntries` | `"RemoveEmptyEntries"` | N/A | Converts `StringSplitOptions.RemoveEmptyEntries` to `"RemoveEmptyEntries"`. See [Convert Object To Text][] || | where `Object` property has a value of `StringSplitOptions.RemoveEmptyEntries` | `"RemoveEmptyEntries"` | N/A | |Converts `StringSplitOptions.RemoveEmptyEntries` to `"RemoveEmptyEntries"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `StringSplitOptions.TrimEntries` | `"TrimEntries"` | N/A | Converts `StringSplitOptions.TrimEntries` to `"TrimEntries"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `StringSplitOptions.RemoveEmptyEntries \| StringSplitOptions.TrimEntries` | `"RemoveEmptyEntries, TrimEntries"` | N/A | Converts `StringSplitOptions.RemoveEmptyEntries \| StringSplitOptions.TrimEntries` to `"RemoveEmptyEntries, TrimEntries"`. See [Convert Object To Text][] | +| Use `Convert Object To Json` block | where `Object` property has a value of `StringSplitOptions.None` | `"0"` | N/A | Converts `StringSplitOptions.None` to `"0"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `StringSplitOptions.RemoveEmptyEntries` | `"1"` | N/A | Converts `StringSplitOptions.RemoveEmptyEntries` to `"1"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `StringSplitOptions.TrimEntries` | `"2"` | N/A | Converts `StringSplitOptions.TrimEntries` to `"2"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `StringSplitOptions.RemoveEmptyEntries \| StringSplitOptions.TrimEntries` | `"3"` | N/A | Converts `StringSplitOptions.RemoveEmptyEntries \| StringSplitOptions.TrimEntries` to `"3"`. See [Convert Object To Json][] | + +Please see [Formatting enumeration values][] for further information. + +### Convert StringSplitOptions to a Number + +The following table shows some of the ways that a `StringSplitOptions` can be converted to a number. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use [Explicit Casting][] | `(Int32)StringSplitOptions.None` | `0` | Expression | [Casts][Explicit Casting] `StringSplitOptions.None` to `0` | +| | `(Int32)StringSplitOptions.RemoveEmptyEntries` | `1` | Expression | [Casts][Explicit Casting] `StringSplitOptions.RemoveEmptyEntries` to `1` | +| | `(Int32)StringSplitOptions.TrimEntries` | `2` | Expression | [Casts][Explicit Casting] `StringSplitOptions.TrimEntries` to `2` | +| | `(Int32)(StringSplitOptions.RemoveEmptyEntries \| StringSplitOptions.TrimEntries)` | `3` | Expression | [Casts][Explicit Casting] `StringSplitOptions.RemoveEmptyEntries \| StringSplitOptions.TrimEntries` to `3` | +| Use `Convert.ToInt32` | `Convert.ToInt32(StringSplitOptions.None)` | `0` | Expression | Converts `StringSplitOptions.None` to `0`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(StringSplitOptions.RemoveEmptyEntries)` | `1` | Expression | Converts `StringSplitOptions.RemoveEmptyEntries` to `1`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(StringSplitOptions.TrimEntries)` | `2` | Expression | Converts `StringSplitOptions.TrimEntries` to `2`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(StringSplitOptions.RemoveEmptyEntries \| StringSplitOptions.TrimEntries)` | `3` | Expression | Converts `StringSplitOptions.RemoveEmptyEntries \| StringSplitOptions.TrimEntries` to `3`. See [Convert.ToInt32][] | + +### Property Editor Support + +* The Expression Editor is available for [Input][] properties where the data type is `StringSplitOptions`. +* The Literal Editor is available for [Input][] properties where the data type is `StringSplitOptions`. +* The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `StringSplitOptions`. + +### Known Limitations + +Currently it's not possible to specify settings to both trim text and remove empty whitespaces using the Literal Editor. This can be done using the Expression Editor; see the last example in "Use a `StringSplitOptions` expression" in the [Create StringSplitOptions][StringSplitOptions Property] table. + +## See Also + +### Related Data Types + +* [Int32][] +* [String][] + +### Related Concepts + +* [Working with Enums][] +* [Explicit Casting][] + +### External Documentation + +* [StringSplitOptions][] + +[Split Text]: {{< url path="Cortex.Reference.Blocks.Text.SplitText.SplitText.MainDoc" >}} + +[StringSplitOptions Property]: {{< ref "#create-stringsplitoptions" >}} + +[StringSplitOptions]: {{< url path="MSDocs.DotNet.Api.System.StringSplitOptions" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Convert Object To Text]: {{< url path="Cortex.Reference.Blocks.Objects.ConvertObject.ConvertObjectToText.MainDoc" >}} +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} +[Working with Enums]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Enums.MainDoc" >}} +[Explicit Casting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectCasting.ExplicitCast" >}} +[Enum.Parse]: {{< url path="MSDocs.DotNet.Api.System.Enum.Parse" >}} +[Enum.ToObject]: {{< url path="MSDocs.DotNet.Api.System.Enum.ToObject" >}} +[Enum.ToString]: {{< url path="MSDocs.DotNet.Api.System.Enum.ToString" >}} +[Convert.ToInt32]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToInt32" >}} +[Convert.ToString]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToString" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Instantiating an enumeration type]: {{< url path="MSDocs.DotNet.Api.System.Enum.InstantiatingAnEnum" >}} +[Formatting enumeration values]: {{< url path="MSDocs.DotNet.Api.System.Enum.FormattingEnumerationValues" >}} + diff --git a/content/en/docs/2024.11/Reference/data-types/text/textdecodingerrorcode.md b/content/en/docs/2024.11/Reference/data-types/text/textdecodingerrorcode.md new file mode 100644 index 000000000..7a40a1c8a --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/text/textdecodingerrorcode.md @@ -0,0 +1,168 @@ +--- +title: "TextDecodingErrorCode" +linkTitle: "TextDecodingErrorCode" +description: "Used to represent an error code explaining the reason an `TextDecodingException` occurred." +weight: 1 +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Text.Encoding.TextDecodingErrorCode)

+ +## Summary + +The `TextDecodingErrorCode` data type is used to represent an error code explaining the reason a [TextDecodingException][] occurred. For more information on the exception itself, see [TextDecodingException][]. + +`TextDecodingErrorCode` is an [enum][Working with Enums] data type, which means it has a defined set of values, where each value has an associated [String][] name and [Int32][] value. + +| | | +|-|-| +| **Category:** | Text | +| **Name:** | `TextDecodingErrorCode` | +| **Full Name:** | `Cortex.DataTypes.Text.Encoding.TextDecodingErrorCode` | +| **Alias:** | N/A | +| **Description:** | Error code explaining the reason a [TextDecodingException][] occurred. | +| **Default Value:** | `(TextDecodingErrorCode)0` | +| **Can be used as:** | `TextDecodingErrorCode`, `Object`, `dynamic` | +| **Can be cast to:** | `Int16` (e.g. `(Int16)TextDecodingErrorCode.Base64InvalidCharacter` or `(System.Int16)TextDecodingErrorCode.Base64InvalidCharacter` or `(short)TextDecodingErrorCode.Base64InvalidCharacter`) | +| | `Int32` (e.g. `(Int32)TextDecodingErrorCode.Base64InvalidCharacter` or `(System.Int32)TextDecodingErrorCode.Base64InvalidCharacter` or `(int)TextDecodingErrorCode.Base64InvalidCharacter`) | +| | `Int64` (e.g. `(Int64)TextDecodingErrorCode.Base64InvalidCharacter` or `(System.Int64)TextDecodingErrorCode.Base64InvalidCharacter` or `(long)TextDecodingErrorCode.Base64InvalidCharacter`) | +| | `Single` (e.g. `(Single)TextDecodingErrorCode.Base64InvalidCharacter` or `(System.Single)TextDecodingErrorCode.Base64InvalidCharacter` or `(float)TextDecodingErrorCode.Base64InvalidCharacter`) | +| | `Double` (e.g. `(Double)TextDecodingErrorCode.Base64InvalidCharacter` or `(System.Double)TextDecodingErrorCode.Base64InvalidCharacter` or `(double)TextDecodingErrorCode.Base64InvalidCharacter`) | + +## Values + +### Base64InvalidCharacter + +| | | +|-|-| +| **Name:** | Base64InvalidCharacter | +| **Value:** | [Int32][] with value `100` | +| **Notes:** | Used when a [TextDecodingException][] occurred due to the provided text containing one or more invalid characters. See [Invalid Base64 character][InvalidBase64]. | + +### HexOddNumberOfCharacters + +| | | +|-|-| +| **Name:** | HexOddNumberOfCharacters | +| **Value:** | [Int32][] with value `300` | +| **Notes:** | Used when a [TextDecodingException][] occurred due to the provided text containing an odd number of characters. See [Odd number of characters using Hex][InvalidHex]. | + +### Base64UrlInvalidCharacter + +| | | +|-|-| +| **Name:** | Base64UrlInvalidCharacter | +| **Value:** | [Int32][] with value `600` | +| **Notes:** | Used when a [TextDecodingException][] occurred due to the provided text containing one or more invalid characters. See [Invalid Base64Url character][InvalidBase64Url]. | + +## Remarks + +### Create a TextDecodingErrorCode + +The following table shows some of the ways that `TextDecodingErrorCode` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use a `TextDecodingErrorCode` expression | `TextDecodingErrorCode.Base64InvalidCharacter` | `TextDecodingErrorCode.Base64InvalidCharacter`| Expression | Indicates a [TextDecodingException][] occurred due to the text provided containing one or more characters that are invalid in [Base64][] encoded text. | +| | `TextDecodingErrorCode.HexOddNumberOfCharacters` | `TextDecodingErrorCode.HexOddNumberOfCharacters`| Expression | Indicates a [TextDecodingException][] occurred due to the text provided containing an odd number of characters which is invalid for [Hex][] encoded text. | +| | `TextDecodingErrorCode.Base64UrlInvalidCharacter` | `TextDecodingErrorCode.Base64UrlInvalidCharacter`| Expression | Indicates a [TextDecodingException][] occurred due to the text provided containing one or more characters that are invalid in [Base64Url][] encoded text. | +| Use [Explicit Casting][] | `(TextDecodingErrorCode)100` | `TextDecodingErrorCode.Base64InvalidCharacter`| Expression | Indicates a [TextDecodingException][] occurred due to the text provided containing one or more characters that are invalid in [Base64][] encoded text. | +| | `(TextDecodingErrorCode)300` | `TextDecodingErrorCode.HexOddNumberOfCharacters`| Expression | Indicates a [TextDecodingException][] occurred due to the text provided containing an odd number of characters which is invalid for [Hex][] encoded text. | +| | `(TextDecodingErrorCode)600` | `TextDecodingErrorCode.Base64UrlInvalidCharacter`| Expression | Indicates a [TextDecodingException][] occurred due to the text provided containing one or more characters that are invalid in [Base64Url][] encoded text. | +| Use `Enum.Parse` | `(TextDecodingErrorCode)Enum.Parse(typeof(TextDecodingErrorCode), "Base64InvalidCharacter")` | `TextDecodingErrorCode.Base64InvalidCharacter`| Expression | Parses `"Base64InvalidCharacter"` and converts it to `TextDecodingErrorCode.Base64InvalidCharacter`. See [Enum.Parse][] | +| | `(TextDecodingErrorCode)Enum.Parse(typeof(TextDecodingErrorCode), "HexOddNumberOfCharacters")` | `TextDecodingErrorCode.HexOddNumberOfCharacters`| Expression | Parses `"HexOddNumberOfCharacters"` and converts it to `TextDecodingErrorCode.HexOddNumberOfCharacters`. See [Enum.Parse][] | +| | `(TextDecodingErrorCode)Enum.Parse(typeof(TextDecodingErrorCode), "Base64UrlInvalidCharacter)` | `TextDecodingErrorCode.Base64UrlInvalidCharacter`| Expression | Parses `"Base64UrlInvalidCharacter"` and converts it to `TextDecodingErrorCode.Base64UrlInvalidCharacer`. See [Enum.Parse][] | +| Use `Enum.ToObject` | `(TextDecodingErrorCode)Enum.ToObject(typeof(TextDecodingErrorCode), 100)` | `TextDecodingErrorCode.Base64InvalidCharacter`| Expression | Converts `100` to `TextDecodingErrorCode.Base64InvalidCharacter` value. See [Enum.ToObject][] | +| | `(TextDecodingErrorCode)Enum.ToObject(typeof(TextDecodingErrorCode), 300)` | `TextDecodingErrorCode.HexOddNumberOfCharacters`| Expression | Converts `300` to `TextDecodingErrorCode.HexOddNumberOfCharacters` value. See [Enum.ToObject][] | +| | `(TextDecodingErrorCode)Enum.ToObject(typeof(TextDecodingErrorCode), 600)` | `TextDecodingErrorCode.Base64UrlInvalidCharacter`| Expression | Converts `600` to `TextDecodingErrorCode.Base64UrlInvalidCharacter` value. See [Enum.ToObject][] | + +Please see [Instantiating an enumeration type][] for further information. + +### Convert TextDecodingErrorCode to Text + +The following table shows some of the ways that a `TextDecodingErrorCode` can be converted to text. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `ToString` | `TextDecodingErrorCode.Base64InvalidCharacter.ToString()` | `"Base64InvalidCharacter"` | Expression | Converts `TextDecodingErrorCode.Base64InvalidCharacter` to `"Base64InvalidCharacter"`. See [Enum.ToString][] | +| | `TextDecodingErrorCode.HexOddNumberOfCharacters.ToString()` | `"HexOddNumberOfCharacters"` | Expression | Converts `TextDecodingErrorCode.HexOddNumberOfCharacters` to `"HexOddNumberOfCharacters"`. See [Enum.ToString][] | +| | `TextDecodingErrorCode.Base64UrlInvalidCharacter.ToString()` | `"Base64UrlInvalidCharacter"` | Expression | Converts `TextDecodingErrorCode.Base64UrlInvalidCharacter` to `"Base64UrlInvalidCharacter"`. See [Enum.ToString][] | +| Use `Convert.ToString` | `Convert.ToString(TextDecodingErrorCode.Base64InvalidCharacter)` | `"Base64InvalidCharacter"` | Expression | Converts `TextDecodingErrorCode.Base64InvalidCharacter` to `"Base64InvalidCharacter"`. See [Convert.ToString][] | +| | `Convert.ToString(TextDecodingErrorCode.HexOddNumberOfCharacters)` | `"HexOddNumberOfCharacters"` | Expression | Converts `TextDecodingErrorCode.HexOddNumberOfCharacters` to `"HexOddNumberOfCharacters"`. See [Convert.ToString][] | +| | `Convert.ToString(TextDecodingErrorCode.Base64UrlInvalidCharacter)` | `"Base64UrlInvalidCharacter"` | Expression | Converts `TextDecodingErrorCode.Base64UrlInvalidCharacter` to `"Base64UrlInvalidCharacter"`. See [Convert.ToString][] | +| Use `Convert Object To Text` block | where `Object` property has a value of `TextDecodingErrorCode.Base64InvalidCharacter` | `"Base64InvalidCharacter"` | N/A | Converts `TextDecodingErrorCode.Base64InvalidCharacter` to `"Base64InvalidCharacter"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `TextDecodingErrorCode.HexOddNumberOfCharacters` | `"HexOddNumberOfCharacters"` | N/A | Converts `TextDecodingErrorCode.HexOddNumberOfCharacters` to `"HexOddNumberOfCharacters"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `TextDecodingErrorCode.Base64UrlInvalidCharacter` | `"Base64UrlInvalidCharacter"` | N/A | Converts `TextDecodingErrorCode.Base64UrlInvalidCharacter` to `"Base64UrlInvalidCharacter"`. See [Convert Object To Text][] | +| Use `Convert Object To Json` block | where `Object` property has a value of `TextDecodingErrorCode.Base64InvalidCharacter` | `"100"` | N/A | Converts `TextDecodingErrorCode.Base64InvalidCharacter` to `"100"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `TextDecodingErrorCode.HexOddNumberOfCharacters` | `"300"` | N/A | Converts `TextDecodingErrorCode.HexOddNumberOfCharacters` to `"300"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `TextDecodingErrorCode.Base64UrlInvalidCharacter` | `"600"` | N/A | Converts `TextDecodingErrorCode.Base64UrlInvalidCharacter` to `"600"`. See [Convert Object To Json][] | + +Please see [Formatting enumeration values][] for further information. + +### Convert TextDecodingErrorCode to a Number + +The following table shows some of the ways that a `TextDecodingErrorCode` can be converted to a number. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use [Explicit Casting][] | `(Int32)TextDecodingErrorCode.Base64InvalidCharacter` | `100` | Expression | [Casts][Explicit Casting] `TextDecodingErrorCode.Base64InvalidCharacter` to `100` | +| | `(Int32)TextDecodingErrorCode.HexOddNumberOfCharacters` | `300` | Expression | [Casts][Explicit Casting] `TextDecodingErrorCode.HexOddNumberOfCharacters` to `300` | +| | `(Int32)TextDecodingErrorCode.Base64UrlInvalidCharacter` | `600` | Expression | [Casts][Explicit Casting] `TextDecodingErrorCode.Base64UrlInvalidCharacter` to `600` | +| Use `Convert.ToInt32` | `Convert.ToInt32(TextDecodingErrorCode.Base64InvalidCharacter)` | `100` | Expression | Converts `TextDecodingErrorCode.Base64InvalidCharacter` to `100`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(TextDecodingErrorCode.HexOddNumberOfCharacters)` | `300` | Expression | Converts `TextDecodingErrorCode.HexOddNumberOfCharacters` to `300`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(TextDecodingErrorCode.Base64UrlInvalidCharacter)` | `600` | Expression | Converts `TextDecodingErrorCode.Base64UrlInvalidCharacter` to `600`. See [Convert.ToInt32][] | + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `TextDecodingErrorCode`. +- The Literal Editor is available for [Input][] properties where the data type is `TextDecodingErrorCode`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `TextDecodingErrorCode`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [TextDecodingException][] +- [Int32][] +- [String][] + +### Related Concepts + +- [Explicit Casting][] +- [Working with Enums][] +- [Working with Text][WorkingWithText] + +### External Documentation + +- [System.Enum][] + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[TextDecodingException]: {{< url path="Cortex.Reference.Exceptions.Text.Encoding.TextDecodingException.MainDoc" >}} +[InvalidBase64]: {{< url path="Cortex.Reference.Exceptions.Text.Encoding.TextDecodingException.InvalidBase64" >}} +[InvalidHex]: {{< url path="Cortex.Reference.Exceptions.Text.Encoding.TextDecodingException.InvalidHex" >}} +[InvalidBase64Url]: {{< url path="Cortex.Reference.Exceptions.Text.Encoding.TextDecodingException.InvalidBase64Url" >}} +[Instantiating an enumeration type]: {{< url path="MSDocs.DotNet.Api.System.Enum.InstantiatingAnEnum" >}} +[Convert Object To Text]: {{< url path="Cortex.Reference.Blocks.Objects.ConvertObject.ConvertObjectToText.MainDoc" >}} +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} +[WorkingWithText]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.MainDoc" >}} +[Working with Enums]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Enums.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[System.Enum]: {{< url path="MSDocs.DotNet.Api.System.Enum.MainDoc" >}} +[Explicit Casting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectCasting.ExplicitCast" >}} +[Formatting enumeration values]: {{< url path="MSDocs.DotNet.Api.System.Enum.FormattingEnumerationValues" >}} +[Enum.Parse]: {{< url path="MSDocs.DotNet.Api.System.Enum.Parse" >}} +[Enum.ToObject]: {{< url path="MSDocs.DotNet.Api.System.Enum.ToObject" >}} +[Enum.ToString]: {{< url path="MSDocs.DotNet.Api.System.Enum.ToString" >}} +[Convert.ToInt32]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToInt32" >}} +[Convert.ToString]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToString" >}} +[Base64]: {{< url path="Cortex.Reference.DataTypes.Text.Encoding.TextEncodingFormat.Base64" >}} +[Hex]: {{< url path="Cortex.Reference.DataTypes.Text.Encoding.TextEncodingFormat.Hex" >}} +[Base64Url]: {{< url path="Cortex.Reference.DataTypes.Text.Encoding.TextEncodingFormat.Base64Url" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/text/textencodingformat.md b/content/en/docs/2024.11/Reference/data-types/text/textencodingformat.md new file mode 100644 index 000000000..3734deab7 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/text/textencodingformat.md @@ -0,0 +1,222 @@ +--- +title: "TextEncodingFormat" +linkTitle: "TextEncodingFormat" +description: "Used to represent formats available for encoding and decoding text." +weight: 1 +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Text.Encoding.TextEncodingFormat)

+ +## Summary + +The `TextEncodingFormat` data type is used to represent formats available for encoding and decoding text. + +`TextEncodingFormat` is an [enum][Working with Enums] data type, which means it has a defined set of values, where each value has an associated [String][] name and [Int32][] value. + +| | | +|-|-| +| **Category:** | Text | +| **Name:** | `TextEncodingFormat` | +| **Full Name:** | `Cortex.DataTypes.Text.Encoding.TextEncodingFormat` | +| **Alias:** | N/A | +| **Description:** | The encoding format used while encoding/decoding text. | +| **Default Value:** | `(TextEncodingFormat)0` | +| **Can be used as:** | `TextEncodingFormat`, `Object`, `dynamic` | +| **Can be cast to:** | `Int16` (e.g. `(Int16)TextEncodingFormat.Base64` or `(System.Int16)TextEncodingFormat.Base64` or `(short)TextEncodingFormat.Base64`) | +| | `Int32` (e.g. `(Int32)TextEncodingFormat.Base64` or `(System.Int32)TextEncodingFormat.Base64` or `(int)TextEncodingFormat.Base64`) | +| | `Int64` (e.g. `(Int64)TextEncodingFormat.Base64` or `(System.Int64)TextEncodingFormat.Base64` or `(long)TextEncodingFormat.Base64`) | +| | `Single` (e.g. `(Single)TextEncodingFormat.Base64` or `(System.Single)TextEncodingFormat.Base64` or `(float)TextEncodingFormat.Base64`) | +| | `Double` (e.g. `(Double)TextEncodingFormat.Base64` or `(System.Double)TextEncodingFormat.Base64` or `(double)TextEncodingFormat.Base64`) | + +## Values + +### Base64 + +| | | +|-|-| +| **Name:** | Base64 | +| **Value:** | [Int32][] with value `0` | +| **Notes:** | Base64 encoding format. | + +### Url + +| | | +|-|-| +| **Name:** | Url | +| **Value:** | [Int32][] with value `1` | +| **Notes:** | Url encoding format. | + +### Hex + +| | | +|-|-| +| **Name:** | Hex | +| **Value:** | [Int32][] with value `2` | +| **Notes:** | Hex (Hexadecimal) encoding format. | + +### Html + +| | | +|-|-| +| **Name:** | Html | +| **Value:** | [Int32][] with value `3` | +| **Notes:** | Html encoding format. | + +### Utf8 + +| | | +|-|-| +| **Name:** | Utf8 | +| **Value:** | [Int32][] with value `4` | +| **Notes:** | Utf8 encoding format. | + +### Base64Url + +| | | +|-|-| +| **Name:** | Base64Url | +| **Value:** | [Int32][] with value `5` | +| **Notes:** | Base64Url encoding format.| + +## Remarks + +### Creating a TextEncodingFormat + +The following table shows some of the ways that `TextEncodingFormat` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Declare a `TextEncodingFormat` literal | `Base64` | `TextEncodingFormat.Text`| Literal | Used when encoding to Base64. | +| | `Url` | `TextEncodingFormat.Url`| Literal | Used when encoding to Url. | +| | `Hex` | `TextEncodingFormat.Hex`| Literal | Used when encoding to Hex. | +| | `Html` | `TextEncodingFormat.Html`| Literal | Used when encoding to Html. | +| | `Utf8` | `TextEncodingFormat.Utf8`| Literal | Used when encoding to Utf8. | +| | `Base64Url` | `TextEncodingFormat.Base64Url`| Literal | Used when encoding to Base64Url. | +| Use a `TextEncodingFormat` expression | `TextEncodingFormat.Base64` | `TextEncodingFormat.Base64`| Expression | Used when encoding to Base64.| +| | `TextEncodingFormat.Url` | `TextEncodingFormat.Url`| Expression | Used when encoding to Url. | +| | `TextEncodingFormat.Hex` | `TextEncodingFormat.Hex`| Expression | Used when encoding to Hex. | +| | `TextEncodingFormat.Html` | `TextEncodingFormat.Html`| Expression | Used when encoding to Html. | +| | `TextEncodingFormat.Utf8` | `TextEncodingFormat.Utf8`| Expression | Used when encoding to Utf8. | +| | `TextEncodingFormat.Base64Url` | `TextEncodingFormat.Base64Url`| Expression | Used when encoding to Base64Url. | +| Use [Explicit Casting][] | `(TextEncodingFormat)0` | `TextEncodingFormat.Base64`| Expression | Used when encoding to Base64. | +| | `(TextEncodingFormat)1` | `TextEncodingFormat.Url`| Expression | Used when encoding to Url. | +| | `(TextEncodingFormat)2` | `TextEncodingFormat.Hex`| Expression | Used when encoding to Hex. | +| | `(TextEncodingFormat)3` | `TextEncodingFormat.Html`| Expression | Used when encoding to Html. | +| | `(TextEncodingFormat)4` | `TextEncodingFormat.Utf8`| Expression | Used when encoding to Utf8. | +| | `(TextEncodingFormat)5` | `TextEncodingFormat.Base64Url`| Expression | Used when encoding to Base64Url. | +| Use `Enum.Parse` | `(TextEncodingFormat)Enum.Parse(typeof(TextEncodingFormat), "Base64")` | `TextEncodingFormat.Base64`| Expression | Parses `"Base64"` and converts it to `TextEncodingFormat.Base64`. See [Enum.Parse][] | +| | `(TextEncodingFormat)Enum.Parse(typeof(TextEncodingFormat), "Url")` | `TextEncodingFormat.Url`| Expression | Parses `"Url"` and converts it to `TextEncodingFormat.Url`. See [Enum.Parse][] | +| | `(TextEncodingFormat)Enum.Parse(typeof(TextEncodingFormat), "Hex")` | `TextEncodingFormat.Hex`| Expression | Parses `"Hex"` and converts it to `TextEncodingFormat.Hex`. See [Enum.Parse][] | +| | `(TextEncodingFormat)Enum.Parse(typeof(TextEncodingFormat), "Html")` | `TextEncodingFormat.Html`| Expression | Parses `"Html"` and converts it to `TextEncodingFormat.Html`. See [Enum.Parse][] | +| | `(TextEncodingFormat)Enum.Parse(typeof(TextEncodingFormat), "Utf8")` | `TextEncodingFormat.Utf8`| Expression | Parses `"Utf8"` and converts it to `TextEncodingFormat.Utf8`. See [Enum.Parse][] | +| | `(TextEncodingFormat)Enum.Parse(typeof(TextEncodingFormat), "Base64Url")` | `TextEncodingFormat.Base64Url`| Expression | Parses `"Base64Url"` and converts it to `TextEncodingFormat.Base64Url`. See [Enum.Parse][] | +| Use `Enum.ToObject` | `(TextEncodingFormat)Enum.ToObject(typeof(TextEncodingFormat), 0)` | `TextEncodingFormat.Base64`| Expression | Converts `0` to `TextEncodingFormat.Base64` value. See [Enum.ToObject][] | +| | `(TextEncodingFormat)Enum.ToObject(typeof(TextEncodingFormat), 1)` | `TextEncodingFormat.Url`| Expression | Converts `1` to `TextEncodingFormat.Url` value. See [Enum.ToObject][] | +| | `(TextEncodingFormat)Enum.ToObject(typeof(TextEncodingFormat), 2)` | `TextEncodingFormat.Hex`| Expression | Converts `2` to `TextEncodingFormat.Hex` value. See [Enum.ToObject][] | +| | `(TextEncodingFormat)Enum.ToObject(typeof(TextEncodingFormat), 3)` | `TextEncodingFormat.Html`| Expression | Converts `3` to `TextEncodingFormat.Html` value. See [Enum.ToObject][] | +| | `(TextEncodingFormat)Enum.ToObject(typeof(TextEncodingFormat), 4)` | `TextEncodingFormat.Utf8`| Expression | Converts `4` to `TextEncodingFormat.Utf8` value. See [Enum.ToObject][] | +| | `(TextEncodingFormat)Enum.ToObject(typeof(TextEncodingFormat), 5)` | `TextEncodingFormat.Base64Url`| Expression | Converts `5` to `TextEncodingFormat.Base64Url` value. See [Enum.ToObject][] | + +Please see [Instantiating an enumeration type][] for further information. + +### Convert TextEncodingFormat to Text + +The following table shows some of the ways that a `TextEncodingFormat` can be converted to text. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `ToString` | `TextEncodingFormat.Base64.ToString()` | `"Base64"` | Expression | Converts `TextEncodingFormat.Base64` to `"Base64"`. See [Enum.ToString][] | +| | `TextEncodingFormat.Url.ToString()` | `"Url"` | Expression | Converts `TextEncodingFormat.Url` to `"Url"`. See [Enum.ToString][] | +| | `TextEncodingFormat.Hex.ToString()` | `"Hex"` | Expression | Converts `TextEncodingFormat.Hex` to `"Hex"`. See [Enum.ToString][] | +| | `TextEncodingFormat.Html.ToString()` | `"Html"` | Expression | Converts `TextEncodingFormat.Html` to `"Html"`. See [Enum.ToString][] | +| | `TextEncodingFormat.Utf8.ToString()` | `"Utf8"` | Expression | Converts `TextEncodingFormat.Utf8` to `"Utf8"`. See [Enum.ToString][] | +| | `TextEncodingFormat.Base64Url.ToString()` | `"Base64Url"` | Expression | Converts `TextEncodingFormat.Base64Url` to `"Base64Url"`. See [Enum.ToString][] | +| Use `Convert.ToString` | `Convert.ToString(TextEncodingFormat.Base64)` | `"Base64"` | Expression | Converts `TextEncodingFormat.Base64` to `"Base64"`. See [Convert.ToString][] | +| | `Convert.ToString(TextEncodingFormat.Url)` | `"Url"` | Expression | Converts `TextEncodingFormat.Url` to `"Url"`. See [Convert.ToString][] | +| | `Convert.ToString(TextEncodingFormat.Hex)` | `"Hex"` | Expression | Converts `TextEncodingFormat.Hex` to `"Hex"`. See [Convert.ToString][] | +| | `Convert.ToString(TextEncodingFormat.Html)` | `"Html"` | Expression | Converts `TextEncodingFormat.Html` to `"Html"`. See [Convert.ToString][] | +| | `Convert.ToString(TextEncodingFormat.Utf8)` | `"Utf8"` | Expression | Converts `TextEncodingFormat.Utf8` to `"Utf8"`. See [Convert.ToString][] | +| | `Convert.ToString(TextEncodingFormat.Base64Url)` | `"Base64Url"` | Expression | Converts `TextEncodingFormat.Base64Url` to `"Base64Url"`. See [Convert.ToString][] | +| Use `Convert Object To Text` block | where `Object` property has a value of `TextEncodingFormat.Base64` | `"Base64"` | N/A | Converts `TextEncodingFormat.Base64` to `"Base64"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `TextEncodingFormat.Url` | `"Url"` | N/A | Converts `TextEncodingFormat.Url` to `"Url"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `TextEncodingFormat.Hex` | `"Hex"` | N/A | Converts `TextEncodingFormat.Hex` to `"Hex"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `TextEncodingFormat.Html` | `"Html"` | N/A | Converts `TextEncodingFormat.Html` to `"Html"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `TextEncodingFormat.Utf8` | `"Utf8"` | N/A | Converts `TextEncodingFormat.Utf8` to `"Utf8"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `TextEncodingFormat.Base64Url` | `"Base64Url"` | N/A | Converts `TextEncodingFormat.Base64Url` to `"Base64Url"`. See [Convert Object To Text][] | +| Use `Convert Object To Json` block | where `Object` property has a value of `TextEncodingFormat.Base64` | `"0"` | N/A | Converts `TextEncodingFormat.Base64` to `"0"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `TextEncodingFormat.Url` | `"1"` | N/A | Converts `TextEncodingFormat.Url` to `"1"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `TextEncodingFormat.Hex` | `"2"` | N/A | Converts `TextEncodingFormat.Hex` to `"2"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `TextEncodingFormat.Html` | `"3"` | N/A | Converts `TextEncodingFormat.Html` to `"3"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `TextEncodingFormat.Utf8` | `"4"` | N/A | Converts `TextEncodingFormat.Utf8` to `"4"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `TextEncodingFormat.Base64Url` | `"5"` | N/A | Converts `TextEncodingFormat.Base64Url` to `"5"`. See [Convert Object To Json][] | + +Please see [Formatting enumeration values][] for further information. + +### Convert TextEncodingFormat to a Number + +The following table shows some of the ways that a `TextEncodingFormat` can be converted to a number. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use [Explicit Casting][] | `(Int32)TextEncodingFormat.Base64` | `0` | Expression | [Casts][Explicit Casting] `TextEncodingFormat.Base64` to `0` | +| | `(Int32)TextEncodingFormat.Url` | `1` | Expression | [Casts][Explicit Casting] `TextEncodingFormat.Url` to `1` | +| | `(Int32)TextEncodingFormat.Hex` | `2` | Expression | [Casts][Explicit Casting] `TextEncodingFormat.Hex` to `2` | +| | `(Int32)TextEncodingFormat.Html` | `3` | Expression | [Casts][Explicit Casting] `TextEncodingFormat.Html` to `3` | +| | `(Int32)TextEncodingFormat.Utf8` | `4` | Expression | [Casts][Explicit Casting] `TextEncodingFormat.Utf8` to `4` | +| | `(Int32)TextEncodingFormat.Base64Url` | `5` | Expression | [Casts][Explicit Casting] `TextEncodingFormat.Base64Url` to `5` | +| Use `Convert.ToInt32` | `Convert.ToInt32(TextEncodingFormat.Base64)` | `0` | Expression | Converts `TextEncodingFormat.Base64` to `0`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(TextEncodingFormat.Url)` | `1` | Expression | Converts `TextEncodingFormat.Url` to `1`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(TextEncodingFormat.Hex)` | `2` | Expression | Converts `TextEncodingFormat.Hex` to `2`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(TextEncodingFormat.Html)` | `3` | Expression | Converts `TextEncodingFormat.Html` to `3`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(TextEncodingFormat.Utf8)` | `4` | Expression | Converts `TextEncodingFormat.Utf8` to `4`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(TextEncodingFormat.Base64Url)` | `5` | Expression | Converts `TextEncodingFormat.Base64Url` to `5`. See [Convert.ToInt32][] | + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `TextEncodingFormat`. +- The Literal Editor is available for [Input][] properties where the data type is `TextEncodingFormat`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `TextEncodingFormat`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [Int32][] +- [String][] + +### Related Concepts + +- [Explicit Casting][] +- [Working with Enums][] +- [Working with Text][] + +### External Documentation + +- [System.Enum][] + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[System.Enum]: {{< url path="MSDocs.DotNet.Api.System.Enum.MainDoc" >}} +[Convert Object To Text]: {{< url path="Cortex.Reference.Blocks.Objects.ConvertObject.ConvertObjectToText.MainDoc" >}} +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} +[Working with Enums]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Enums.MainDoc" >}} +[working with Text]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.MainDoc" >}} +[Explicit Casting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectCasting.ExplicitCast" >}} +[Enum.Parse]: {{< url path="MSDocs.DotNet.Api.System.Enum.Parse" >}} +[Enum.ToObject]: {{< url path="MSDocs.DotNet.Api.System.Enum.ToObject" >}} +[Enum.ToString]: {{< url path="MSDocs.DotNet.Api.System.Enum.ToString" >}} +[Convert.ToInt32]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToInt32" >}} +[Convert.ToString]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToString" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} + +[Instantiating an enumeration type]: {{< url path="MSDocs.DotNet.Api.System.Enum.InstantiatingAnEnum" >}} +[Formatting enumeration values]: {{< url path="MSDocs.DotNet.Api.System.Enum.FormattingEnumerationValues" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/text/texttofind.md b/content/en/docs/2024.11/Reference/data-types/text/texttofind.md new file mode 100644 index 000000000..8ec45ad76 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/text/texttofind.md @@ -0,0 +1,138 @@ +--- +title: "TextToFind" +linkTitle: "TextToFind" +description: "Used to represent a search query for finding text." +weight: 1 +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Text.TextToFind)

+ +## Summary + +The `TextToFind` data type is used to represent a search query for finding text.

It specifies what a valid [match][Match] should start, contain and end with. + +| | | +|-|-| +| **Category:** | Text | +| **Name:** | `TextToFind` | +| **Full Name:** | `Cortex.DataTypes.Text.TextToFind` | +| **Alias:** | N/A | +| **Description:** | A text to find in another text. | +| **Default Value:** | `null` | +| **Can be used as:** | `TextToFind` | +| **Can be cast to:** | N/A | + +## Properties + +### Starts With + +[Starts With][StartsWith Property] is used to define the [String][] a valid match should start with. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [String][] with value `$@""` | + +### Contains + +[Contains][Contains Property] is used to define the [String][] a valid match should contains between [Starts With][StartsWith Property] and [Ends With][EndsWith Property]. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [String][] with value `$@""` | + +### Ends With + +[Ends With][EndsWith Property] is used to define the [String][] a valid match should end with. + +| | | +|--------------------|---------------------------| +| Data Type | [String][] | +| Is [Advanced][] | `false` | +| Default Editor | [Expression][] | +| Default Value | [String][] with value `$@""` | + +## Remarks + +### Create a TextToFind + +The following table shows some of the ways that a `TextToFind` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use a `TextToFind` constructor | `new TextToFind(startsWith: "the", contains: "quick", endsWith: "fox")`| `{"StartsWith":"the", "Contains":"quick", "EndsWith":"fox"}` | Expression | || + +A `TextToFind` can also be created using the Literal Editor by filling in the necessary values for the following properties: + +| Property | Data Type | Example | Notes | +|-|-|-|-| +| `StartsWith` | `String` | `"the"` | [Starts With][StartsWith Property] defines the string a valid match should start with. | +| `Contains` | `String` | `"quick"` | [Contains][Contains Property] defines the string a valid match should contain. | +| `EndsWith` | `String` | `"fox"` | [Ends With][EndsWith Property] defines the string a valid match should end with. | + +### Convert TextToFind to Text + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `Convert Object To Json` block | where `Object` property has a value of `{"StartsWith":"the", "Contains":"quick", "EndsWith":"fox"}` | `""{\r\n \"StartsWith\": \"the\",\r\n \"Contains\": \"quick\",\r\n \"EndsWith\": \"fox\"\r\n}""` | N/A | See [Convert Object To Json][] | + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `TextToFind`. +- The Literal Editor is available for [Input][] properties where the data type is `TextToFind`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `TextToFind`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +* [String][] + +### Related Concepts + +* [Working with Text][] + +### External Documentation + +None + +[Contains Property]: {{< ref "#contains" >}} +[EndsWith Property]: {{< ref "#ends-with" >}} +[StartsWith Property]: {{< ref "#starts-with" >}} + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} + +[Char]: {{< url path="Cortex.Reference.DataTypes.Text.Char.MainDoc" >}} +[Match]: {{< url path="Cortex.Reference.DataTypes.Text.Regex.Match.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} + +[System.String]: {{< url path="MSDocs.DotNet.Api.System.String.MainDoc" >}} +[String.Concat]: {{< url path="MSDocs.DotNet.Api.System.String.Concat" >}} +[String Concatenation Operator]: {{< url path="MSDocs.DotNet.Api.System.String.ConcatOperator" >}} +[String Interpolation]: {{< url path="MSDocs.DotNet.Api.System.String.StringInterpolation" >}} +[String.Format]: {{< url path="MSDocs.DotNet.Api.System.String.Format" >}} +[String.Insert]: {{< url path="MSDocs.DotNet.Api.System.String.Insert" >}} +[String.Join]: {{< url path="MSDocs.DotNet.Api.System.String.Join" >}} + +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} +[Variable]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.VariableEditor.MainDoc" >}} +[Expression]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.ExpressionEditor.MainDoc" >}} + +[Advanced]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.AdvancedProperties.MainDoc" >}} + +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} + +[Working with Text]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Text.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/text/unicodeencoding.md b/content/en/docs/2024.11/Reference/data-types/text/unicodeencoding.md new file mode 100644 index 000000000..94849a15f --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/text/unicodeencoding.md @@ -0,0 +1,64 @@ +--- +title: "UnicodeEncoding" +linkTitle: "UnicodeEncoding" +description: "Used to represent Unicode character encoding." +weight: 1 +--- + +# {{% param title %}} + +

(System.Text.UnicodeEncoding)

+ +{{% alert type="information" title="Information" %}}Improvements to this page are planned for the future.{{% /alert %}} + +## Summary + +The `UnicodeEncoding` data type is used to represent Unicode character encoding. + +| | | +|-|-| +| **Category:** | Text | +| **Name:** | `UnicodeEncoding` | +| **Full Name:** | `System.Text.UnicodeEncoding` | +| **Alias:** | N/A | +| **Description:** | Used to represent Unicode character encoding. | +| **Default Value:** | `null` | +| **Can be used as:** | `UnicodeEncoding`, `Encoding`, `object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `UnicodeEncoding`. +- The Literal Editor is available for [Input][] properties where the data type is `UnicodeEncoding`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `UnicodeEncoding`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [Encoding][] +- [UTF32Encoding][] +- [UTF8Encoding][] + +### Related Concepts + +None + +### External Documentation + +- [System.Text.UnicodeEncoding][UnicodeEncoding] + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Encoding]: {{< url path = "Cortex.Reference.DataTypes.Text.Encoding.MainDoc">}} +[UTF32Encoding]: {{< url path = "Cortex.Reference.DataTypes.Text.UTF32Encoding.MainDoc">}} +[UTF8Encoding]: {{< url path = "Cortex.Reference.DataTypes.Text.UTF8Encoding.MainDoc">}} +[UnicodeEncoding]: {{< url path = "MSDocs.DotNet.Api.System.Text.UnicodeEncoding">}} diff --git a/content/en/docs/2024.11/Reference/data-types/text/utf32encoding.md b/content/en/docs/2024.11/Reference/data-types/text/utf32encoding.md new file mode 100644 index 000000000..dfc87a552 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/text/utf32encoding.md @@ -0,0 +1,64 @@ +--- +title: "UTF32Encoding" +linkTitle: "UTF32Encoding" +description: "Used to represent UTF32 character encoding." +weight: 1 +--- + +# {{% param title %}} + +

(System.Text.UTF32Encoding)

+ +{{% alert type="information" title="Information" %}}Improvements to this page are planned for the future.{{% /alert %}} + +## Summary + +The `UTF32Encoding` data type is used to represent UTF32 character encoding. + +| | | +|-|-| +| **Category:** | Text | +| **Name:** | `UTF32Encoding` | +| **Full Name:** | `System.Text.UTF32Encoding` | +| **Alias:** | N/A | +| **Description:** | Used to represent UTF32 character encoding. | +| **Default Value:** | `null` | +| **Can be used as:** | `UTF32Encoding`, `Encoding`, `object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `UTF32Encoding`. +- The Literal Editor is available for [Input][] properties where the data type is `UTF32Encoding`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `UTF32Encoding`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [Encoding][] +- [UnicodeEncoding][] +- [UTF8Encoding][] + +### Related Concepts + +None + +### External Documentation + +- [System.Text.UTF32Encoding][UTF32Encoding] + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Encoding]: {{< url path = "Cortex.Reference.DataTypes.Text.Encoding.MainDoc">}} +[UnicodeEncoding]: {{< url path = "Cortex.Reference.DataTypes.Text.UnicodeEncoding.MainDoc">}} +[UTF8Encoding]: {{< url path = "Cortex.Reference.DataTypes.Text.UTF8Encoding.MainDoc">}} +[UTF32Encoding]: {{< url path = "MSDocs.DotNet.Api.System.Text.Utf32Encoding">}} diff --git a/content/en/docs/2024.11/Reference/data-types/text/utf8encoding.md b/content/en/docs/2024.11/Reference/data-types/text/utf8encoding.md new file mode 100644 index 000000000..f26f239fe --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/text/utf8encoding.md @@ -0,0 +1,64 @@ +--- +title: "UTF8Encoding" +linkTitle: "UTF8Encoding" +description: "Used to represent UTF8 character encoding." +weight: 1 +--- + +# {{% param title %}} + +

(System.Text.UTF8Encoding)

+ +{{% alert type="information" title="Information" %}}Improvements to this page are planned for the future.{{% /alert %}} + +## Summary + +The `UTF8Encoding` data type is used to represent UTF8 character encoding. + +| | | +|-|-| +| **Category:** | Text | +| **Name:** | `UTF8Encoding` | +| **Full Name:** | `System.Text.UTF8Encoding` | +| **Alias:** | N/A | +| **Description:** | Used to represent UTF8 character encoding. | +| **Default Value:** | `null` | +| **Can be used as:** | `UTF8Encoding`, `Encoding`, `object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Remarks + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `UTF8Encoding`. +- The Literal Editor is available for [Input][] properties where the data type is `UTF8Encoding`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `UTF8Encoding`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [Encoding][] +- [UnicodeEncoding][] +- [UTF32Encoding][] + +### Related Concepts + +None + +### External Documentation + +- [System.Text.UTF8Encoding][UTF8Encoding] + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} + +[Encoding]: {{< url path = "Cortex.Reference.DataTypes.Text.Encoding.MainDoc">}} +[UnicodeEncoding]: {{< url path = "Cortex.Reference.DataTypes.Text.UnicodeEncoding.MainDoc">}} +[UTF32Encoding]: {{< url path = "Cortex.Reference.DataTypes.Text.UTF32Encoding.MainDoc">}} +[UTF8Encoding]: {{< url path = "MSDocs.DotNet.Api.System.Text.Utf8Encoding">}} diff --git a/content/en/docs/2024.11/Reference/data-types/wireless/_index.md b/content/en/docs/2024.11/Reference/data-types/wireless/_index.md new file mode 100644 index 000000000..cd8bf5327 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/wireless/_index.md @@ -0,0 +1,6 @@ +--- +title: "Wireless" +linkTitle: "Wireless" +description: "Data types used for working with Wireless blocks." +weight: 1 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/data-types/wireless/wirelessreceiverblockreference.md b/content/en/docs/2024.11/Reference/data-types/wireless/wirelessreceiverblockreference.md new file mode 100644 index 000000000..8395767ed --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/wireless/wirelessreceiverblockreference.md @@ -0,0 +1,78 @@ +--- +title: "WirelessReceiverBlockReference" +linkTitle: "WirelessReceiverBlockReference" +description: "Used to reference a Wireless Receiver block using its Id." +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Wireless.WirelessReceiverBlockReference)

+ +## Summary + +A `WirelessReceiverBlockReference` is used to reference a [Wireless Receiver][Wireless Receiver Block] block that an execution can be sent to using the [Wireless Sender][Wireless Sender Block] block. + +| | | +|-|-| +| **Category:** | Wireless | +| **Name:** | `WirelessReceiverBlockReference` | +| **Full Name:** | `Cortex.DataTypes.Wireless.WirelessReceiverBlockReference` | +| **Alias:** | N/A | +| **Description:** | Used to reference a Wireless Receiver block using its Id. | +| **Default Value:** | `null` | +| **Can be used as:** | `Object`, `dynamic` | +| **Can be cast to:** | N/A | + +## Properties + +### Id + +The unique Id of the [Wireless Receiver][Wireless Receiver Block] block that is referenced. + +| | | +|--------------------|---------------------------| +| Data Type | [Guid][] | +| Is Advanced | `false` | +| Default Editor | [Literal][] | +| Default Value | No value (defaults to `00000000-0000-0000-0000-000000000000`) | + +## Remarks + +### Create a WirelessReceiverBlockReference + +Currently a `WirelessReceiverBlockReference` can only created by using the [Wireless Receiver Block Property][] of the [Wireless Sender][Wireless Sender Block] block. Using the editor to select a block will create a [Wireless Receiver Block Reference][WirelessReceiverBlockReference] for the block to use. + +### Property Editor Support + +- The Expression Editor is not available for [Input][], [InputOutput][] and [Output][] properties where the data type is `WirelessReceiverBlockReference`. +- The Literal Editor is available for [Input][] properties where the data type is `WirelessReceiverBlockReference`. +- The Variable Editor is available for [Output][] properties where the data type is `WirelessReceiverBlockReference`. + +### Known limitations + +None + +## See Also + +### Related Data Types + +- [Guid][] + +### Related Concepts + +None + +### External Documentation + +None + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[Literal]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.PropertyEditors.LiteralEditor.MainDoc" >}} + +[WirelessReceiverBlockReference]: {{< url path="Cortex.Reference.DataTypes.Wireless.WirelessReceiverBlockReference.MainDoc" >}} +[Guid]: {{< url path="Cortex.Reference.DataTypes.Other.Guid.MainDoc" >}} +[Wireless Sender Block]: {{< url path="Cortex.Reference.Blocks.Wireless.WirelessSender.WirelessSender.MainDoc" >}} +[Wireless Receiver Block]: {{< url path="Cortex.Reference.Blocks.Wireless.WirelessReceiver.WirelessReceiver.MainDoc" >}} +[Wireless Receiver Block Property]: {{< url path="Cortex.Reference.Blocks.Wireless.WirelessSender.WirelessSender.WirelessReceiverProperty" >}} diff --git a/content/en/docs/2024.11/Reference/data-types/wireless/wirelessreceivernotfounderrorcode.md b/content/en/docs/2024.11/Reference/data-types/wireless/wirelessreceivernotfounderrorcode.md new file mode 100644 index 000000000..7e34b4d67 --- /dev/null +++ b/content/en/docs/2024.11/Reference/data-types/wireless/wirelessreceivernotfounderrorcode.md @@ -0,0 +1,146 @@ +--- +title: "WirelessReceiverNotFoundErrorCode" +linkTitle: "WirelessReceiverNotFoundErrorCode" +description: "Used to represent an error code explaining the reason a `WirelessReceiverBlockNotFoundException` occurred." +weight: 1 +--- + +# {{% param title %}} + +

(Cortex.DataTypes.Wireless.WirelessReceiverNotFoundErrorCode)

+ +## Summary + +The `WirelessReceiverNotFoundErrorCode` data type is used to represent an error code explaining the reason a [WirelessReceiverBlockNotFoundException][] occurred. For more information on the exception itself, see [WirelessReceiverBlockNotFoundException][]. + +`WirelessReceiverNotFoundErrorCode` is an [enum][Working with Enums] data type, which means it has a defined set of values, where each value has an associated [String][] name and [Int32][] value. + +| | | +|-|-| +| **Category:** | Wireless | +| **Name:** | `WirelessReceiverNotFoundErrorCode` | +| **Full Name:** | `Cortex.DataTypes.Wireless.WirelessReceiverNotFoundErrorCode` | +| **Alias:** | N/A | +| **Description:** | Error code explaining the reason a [WirelessReceiverBlockNotFoundException][] occurred. | +| **Default Value:** | `(WirelessReceiverNotFoundErrorCode)0` | +| **Can be used as:** | `WirelessReceiverNotFoundErrorCode`, `Object`, `dynamic` | +| **Can be cast to:** | `Int16` (e.g. `(Int16)WirelessReceiverNotFoundErrorCode.WirelessReceiverBlockNotFound` or `(System.Int16)WirelessReceiverNotFoundErrorCode.WirelessReceiverBlockNotFound` or `(short)WirelessReceiverNotFoundErrorCode.WirelessReceiverBlockNotFound`) | +| | `Int32` (e.g. `(Int32)WirelessReceiverNotFoundErrorCode.WirelessReceiverBlockNotFound` or `(System.Int32)WirelessReceiverNotFoundErrorCode.WirelessReceiverBlockNotFound` or `(int)WirelessReceiverNotFoundErrorCode.WirelessReceiverBlockNotFound`) | +| | `Int64` (e.g. `(Int64)WirelessReceiverNotFoundErrorCode.WirelessReceiverBlockNotFound` or `(System.Int64)WirelessReceiverNotFoundErrorCode.WirelessReceiverBlockNotFound` or `(long)WirelessReceiverNotFoundErrorCode.WirelessReceiverBlockNotFound`) | +| | `Single` (e.g. `(Single)WirelessReceiverNotFoundErrorCode.WirelessReceiverBlockNotFound` or `(System.Single)WirelessReceiverNotFoundErrorCode.WirelessReceiverBlockNotFound` or `(float)WirelessReceiverNotFoundErrorCode.WirelessReceiverBlockNotFound`) | +| | `Double` (e.g. `(Double)WirelessReceiverNotFoundErrorCode.WirelessReceiverBlockNotFound` or `(System.Double)WirelessReceiverNotFoundErrorCode.WirelessReceiverBlockNotFound` or `(double)WirelessReceiverNotFoundErrorCode.WirelessReceiverBlockNotFound`) | + +## Values + +### WirelessReceiverBlockNotFound + +| | | +|-|-| +| **Name:** | WirelessReceiverBlockNotFound | +| **Value:** | [Int32][] with value `100` | +| **Notes:** | Used when a [WirelessReceiverBlockNotFoundException][] occurred due to the selected [Wireless Receiver][Wireless Receiver Block] block being deleted or not existing. See [Wireless Receiver Block Not Found][WirelessReceiverExceptionBlockNotFound]. | + +### WirelessReceiverPropertyEmpty + +| | | +|-|-| +| **Name:** | WirelessReceiverPropertyEmpty | +| **Value:** | [Int32][] with value `101` | +| **Notes:** | Used when a [WirelessReceiverBlockNotFoundException][] occurred due to a [Wireless Receiver][Wireless Receiver Block] block not being selected. See [Wireless Receiver Property Empty][WirelessReceiverExceptionPropertyEmpty]. | + +## Remarks + +### Create a WirelessReceiverNotFoundErrorCode + +The following table shows some of the ways that `WirelessReceiverNotFoundErrorCode` can be created. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use a `WirelessReceiverNotFoundErrorCode` expression | `WirelessReceiverNotFoundErrorCode.WirelessReceiverBlockNotFound` | `WirelessReceiverNotFoundErrorCode.WirelessReceiverBlockNotFound`| Expression | Indicates a [WirelessReceiverBlockNotFoundException][] occurred due to the selected [Wireless Receiver][Wireless Receiver Block] block being deleted or not existing. | +| | `WirelessReceiverNotFoundErrorCode.WirelessReceiverPropertyEmpty` | `WirelessReceiverNotFoundErrorCode.WirelessReceiverPropertyEmpty`| Expression | Indicates a [WirelessReceiverBlockNotFoundException][] occurred due to a [Wireless Receiver][Wireless Receiver Block] block not being selected. | +| Use [Explicit Casting][] | `(WirelessReceiverNotFoundErrorCode)100` | `WirelessReceiverNotFoundErrorCode.WirelessReceiverBlockNotFound`| Expression | Indicates a [WirelessReceiverBlockNotFoundException][] occurred due to the selected [Wireless Receiver][Wireless Receiver Block] block being deleted or not existing. | +| | `(WirelessReceiverNotFoundErrorCode)101` | `WirelessReceiverNotFoundErrorCode.WirelessReceiverPropertyEmpty`| Expression | Indicates a [WirelessReceiverBlockNotFoundException][] occurred due to a [Wireless Receiver][Wireless Receiver Block] block not being selected. | +| Use `Enum.Parse` | `(WirelessReceiverNotFoundErrorCode)Enum.Parse(typeof(WirelessReceiverNotFoundErrorCode), "WirelessReceiverBlockNotFound")` | `WirelessReceiverNotFoundErrorCode.WirelessReceiverBlockNotFound`| Expression | Parses `"WirelessReceiverBlockNotFound"` and converts it to `WirelessReceiverNotFoundErrorCode.WirelessReceiverBlockNotFound`. See [Enum.Parse][] | +| | `(WirelessReceiverNotFoundErrorCode)Enum.Parse(typeof(WirelessReceiverNotFoundErrorCode), "WirelessReceiverPropertyEmpty")` | `WirelessReceiverNotFoundErrorCode.WirelessReceiverPropertyEmpty`| Expression | Parses `"WirelessReceiverPropertyEmpty"` and converts it to `WirelessReceiverNotFoundErrorCode.WirelessReceiverPropertyEmpty`. See [Enum.Parse][] | +| Use `Enum.ToObject` | `(WirelessReceiverNotFoundErrorCode)Enum.ToObject(typeof(WirelessReceiverNotFoundErrorCode), 100)` | `WirelessReceiverNotFoundErrorCode.WirelessReceiverBlockNotFound`| Expression | Converts `100` to `WirelessReceiverNotFoundErrorCode.WirelessReceiverBlockNotFound` value. See [Enum.ToObject][] | +| | `(WirelessReceiverNotFoundErrorCode)Enum.ToObject(typeof(WirelessReceiverNotFoundErrorCode), 101)` | `WirelessReceiverNotFoundErrorCode.WirelessReceiverPropertyEmpty`| Expression | Converts `101` to `WirelessReceiverNotFoundErrorCode.WirelessReceiverPropertyEmpty` value. See [Enum.ToObject][] | + +Please see [Instantiating an enumeration type][] for further information. + +### Convert WirelessReceiverNotFoundErrorCode to Text + +The following table shows some of the ways that a `WirelessReceiverNotFoundErrorCode` can be converted to text. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use `ToString` | `WirelessReceiverNotFoundErrorCode.WirelessReceiverBlockNotFound.ToString()` | `"WirelessReceiverBlockNotFound"` | Expression | Converts `WirelessReceiverNotFoundErrorCode.WirelessReceiverBlockNotFound` to `"WirelessReceiverBlockNotFound"`. See [Enum.ToString][] | +| | `WirelessReceiverNotFoundErrorCode.WirelessReceiverPropertyEmpty.ToString()` | `"WirelessReceiverPropertyEmpty"` | Expression | Converts `WirelessReceiverNotFoundErrorCode.WirelessReceiverPropertyEmpty` to `"WirelessReceiverPropertyEmpty"`. See [Enum.ToString][] | +| Use `Convert.ToString` | `Convert.ToString(WirelessReceiverNotFoundErrorCode.WirelessReceiverBlockNotFound)` | `"WirelessReceiverBlockNotFound"` | Expression | Converts `WirelessReceiverNotFoundErrorCode.WirelessReceiverBlockNotFound` to `"WirelessReceiverBlockNotFound"`. See [Convert.ToString][] | +| | `Convert.ToString(WirelessReceiverNotFoundErrorCode.WirelessReceiverPropertyEmpty)` | `"WirelessReceiverPropertyEmpty"` | Expression | Converts `WirelessReceiverNotFoundErrorCode.WirelessReceiverPropertyEmpty` to `"WirelessReceiverPropertyEmpty"`. See [Convert.ToString][] | +| Use `Convert Object To Text` block | where `Object` property has a value of `WirelessReceiverNotFoundErrorCode.WirelessReceiverBlockNotFound` | `"WirelessReceiverBlockNotFound"` | N/A | Converts `WirelessReceiverNotFoundErrorCode.WirelessReceiverBlockNotFound` to `"WirelessReceiverBlockNotFound"`. See [Convert Object To Text][] | +| | where `Object` property has a value of `WirelessReceiverNotFoundErrorCode.WirelessReceiverPropertyEmpty` | `"WirelessReceiverPropertyEmpty"` | N/A | Converts `WirelessReceiverNotFoundErrorCode.WirelessReceiverPropertyEmpty` to `"WirelessReceiverPropertyEmpty"`. See [Convert Object To Text][] | +| Use `Convert Object To Json` block | where `Object` property has a value of `WirelessReceiverNotFoundErrorCode.WirelessReceiverBlockNotFound` | `"100"` | N/A | Converts `WirelessReceiverNotFoundErrorCode.WirelessReceiverBlockNotFound` to `"100"`. See [Convert Object To Json][] | +| | where `Object` property has a value of `WirelessReceiverNotFoundErrorCode.WirelessReceiverPropertyEmpty` | `"101"` | N/A | Converts `WirelessReceiverNotFoundErrorCode.WirelessReceiverPropertyEmpty` to `"101"`. See [Convert Object To Json][] | + +Please see [Formatting enumeration values][] for further information. + +### Convert WirelessReceiverNotFoundErrorCode to a Number + +The following table shows some of the ways that a `WirelessReceiverNotFoundErrorCode` can be converted to a number. + +| Method | Example | Result | Editor Support | Notes | +|-|-|-|-|-| +| Use [Explicit Casting][] | `(Int32)WirelessReceiverNotFoundErrorCode.WirelessReceiverBlockNotFound` | `100` | Expression | [Casts][Explicit Casting] `WirelessReceiverNotFoundErrorCode.WirelessReceiverBlockNotFound` to `100` | +| | `(Int32)WirelessReceiverNotFoundErrorCode.WirelessReceiverPropertyEmpty` | `101` | Expression | [Casts][Explicit Casting] `WirelessReceiverNotFoundErrorCode.WirelessReceiverPropertyEmpty` to `101` | +| Use `Convert.ToInt32` | `Convert.ToInt32(WirelessReceiverNotFoundErrorCode.WirelessReceiverBlockNotFound)` | `100` | Expression | Converts `WirelessReceiverNotFoundErrorCode.WirelessReceiverBlockNotFound` to `100`. See [Convert.ToInt32][] | +| | `Convert.ToInt32(WirelessReceiverNotFoundErrorCode.WirelessReceiverPropertyEmpty)` | `101` | Expression | Converts `WirelessReceiverNotFoundErrorCode.WirelessReceiverPropertyEmpty` to `101`. See [Convert.ToInt32][] | + +### Property Editor Support + +- The Expression Editor is available for [Input][] properties where the data type is `WirelessReceiverNotFoundErrorCode`. +- The Literal Editor is available for [Input][] properties where the data type is `WirelessReceiverNotFoundErrorCode`. +- The Variable Editor is available for [Input][], [InputOutput][] and [Output][] properties where the data type is `WirelessReceiverNotFoundErrorCode`. + +### Known Limitations + +None + +## See Also + +### Related Data Types + +- [WirelessReceiverBlockNotFoundException][] +- [Int32][] +- [String][] + +### Related Concepts + +- [Explicit Casting][] +- [Working with Enums][] + +### External Documentation + +- [System.Enum][] + +[Input]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Input" >}} +[Output]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.Output" >}} +[InputOutput]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Blocks.BlockProperties.WhatIsABlockProperty.InputOutput" >}} +[Instantiating an enumeration type]: {{< url path="MSDocs.DotNet.Api.System.Enum.InstantiatingAnEnum" >}} +[Convert Object To Text]: {{< url path="Cortex.Reference.Blocks.Objects.ConvertObject.ConvertObjectToText.MainDoc" >}} +[Convert Object To Json]: {{< url path="Cortex.Reference.Blocks.Json.ConvertJson.ConvertObjectToJson.MainDoc" >}} +[Working with Enums]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Enums.MainDoc" >}} +[String]: {{< url path="Cortex.Reference.DataTypes.Text.String.MainDoc" >}} +[Int32]: {{< url path="Cortex.Reference.DataTypes.Numbers.Int32.MainDoc" >}} +[System.Enum]: {{< url path="MSDocs.DotNet.Api.System.Enum.MainDoc" >}} +[Explicit Casting]: {{< url path="Cortex.Reference.Concepts.WorkingWith.Objects.ObjectCasting.ExplicitCast" >}} +[Formatting enumeration values]: {{< url path="MSDocs.DotNet.Api.System.Enum.FormattingEnumerationValues" >}} +[Enum.Parse]: {{< url path="MSDocs.DotNet.Api.System.Enum.Parse" >}} +[Enum.ToObject]: {{< url path="MSDocs.DotNet.Api.System.Enum.ToObject" >}} +[Enum.ToString]: {{< url path="MSDocs.DotNet.Api.System.Enum.ToString" >}} +[Convert.ToInt32]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToInt32" >}} +[Convert.ToString]: {{< url path="MSDocs.DotNet.Api.System.Convert.ToString" >}} + +[WirelessReceiverExceptionBlockNotFound]: {{< url path="Cortex.Reference.Exceptions.Wireless.WirelessReceiverBlockNotFoundException.BlockNotFound" >}} +[WirelessReceiverExceptionPropertyEmpty]: {{< url path="Cortex.Reference.Exceptions.Wireless.WirelessReceiverBlockNotFoundException.PropertyEmpty" >}} +[WirelessReceiverBlockNotFoundException]: {{< url path="Cortex.Reference.Exceptions.Wireless.WirelessReceiverBlockNotFoundException.MainDoc" >}} +[Wireless Receiver Block]: {{< url path="Cortex.Reference.Blocks.Wireless.WirelessReceiver.WirelessReceiver.MainDoc" >}} diff --git a/content/en/docs/2024.11/Reference/logs/_index.md b/content/en/docs/2024.11/Reference/logs/_index.md new file mode 100644 index 000000000..a39e0d907 --- /dev/null +++ b/content/en/docs/2024.11/Reference/logs/_index.md @@ -0,0 +1,6 @@ +--- +title: "Logs" +linkTitle: "Logs" +description: "This section includes all reference documentation for the logs generated by the {{% ctx %}} Innovation platform." +weight: 10 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/logs/cortex-gateway/_index.md b/content/en/docs/2024.11/Reference/logs/cortex-gateway/_index.md new file mode 100644 index 000000000..f2270c8b3 --- /dev/null +++ b/content/en/docs/2024.11/Reference/logs/cortex-gateway/_index.md @@ -0,0 +1,8 @@ +--- +title: "CORTEX Gateway" +linkTitle: "CORTEX Gateway" +description: "This section includes all reference documentation for the logs generated by {{% ctx %}} Gateway." +weight: 1 +--- + +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Reference/logs/cortex-innovation/_index.md b/content/en/docs/2024.11/Reference/logs/cortex-innovation/_index.md new file mode 100644 index 000000000..afecd0b81 --- /dev/null +++ b/content/en/docs/2024.11/Reference/logs/cortex-innovation/_index.md @@ -0,0 +1,6 @@ +--- +title: "CORTEX Innovation" +linkTitle: "CORTEX Innovation" +description: "This section includes all reference documentation for the logs generated by the {{% ctx %}} Innovation platform." +weight: 300 +--- diff --git a/content/en/docs/2024.11/Reference/logs/cortex-innovation/core-application/_index.md b/content/en/docs/2024.11/Reference/logs/cortex-innovation/core-application/_index.md new file mode 100644 index 000000000..3c9e946ff --- /dev/null +++ b/content/en/docs/2024.11/Reference/logs/cortex-innovation/core-application/_index.md @@ -0,0 +1,6 @@ +--- +title: "Core Application" +linkTitle: "Core Application" +description: "This section includes all reference documentation for the logs generated by the Core Application." +weight: 1 +--- diff --git a/content/en/docs/2024.11/Reference/logs/cortex-innovation/core-application/services/_index.md b/content/en/docs/2024.11/Reference/logs/cortex-innovation/core-application/services/_index.md new file mode 100644 index 000000000..409672d12 --- /dev/null +++ b/content/en/docs/2024.11/Reference/logs/cortex-innovation/core-application/services/_index.md @@ -0,0 +1,6 @@ +--- +title: "Services" +linkTitle: "Services" +description: "This section includes all reference documentation for the logs generated by the Core Application Services." +weight: 1 +--- diff --git a/content/en/docs/2024.11/Reference/logs/cortex-innovation/core-application/services/api-gateway-service/_index.md b/content/en/docs/2024.11/Reference/logs/cortex-innovation/core-application/services/api-gateway-service/_index.md new file mode 100644 index 000000000..e879f79c5 --- /dev/null +++ b/content/en/docs/2024.11/Reference/logs/cortex-innovation/core-application/services/api-gateway-service/_index.md @@ -0,0 +1,8 @@ +--- +title: "API Gateway Service" +linkTitle: "API Gateway Service" +description: "This section includes all reference documentation for the logs generated by the API Gateway Service." +weight: 300 +--- + +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Reference/logs/cortex-innovation/core-application/services/cortex-provisioning-service/_index.md b/content/en/docs/2024.11/Reference/logs/cortex-innovation/core-application/services/cortex-provisioning-service/_index.md new file mode 100644 index 000000000..300a2cc4f --- /dev/null +++ b/content/en/docs/2024.11/Reference/logs/cortex-innovation/core-application/services/cortex-provisioning-service/_index.md @@ -0,0 +1,8 @@ +--- +title: "Provisioning Service" +linkTitle: "Provisioning Service" +description: "This section includes all reference documentation for the logs generated by the Provisioning Service." +weight: 400 +--- + +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Reference/logs/cortex-innovation/core-application/services/licence-management-service/_index.md b/content/en/docs/2024.11/Reference/logs/cortex-innovation/core-application/services/licence-management-service/_index.md new file mode 100644 index 000000000..49ba579b4 --- /dev/null +++ b/content/en/docs/2024.11/Reference/logs/cortex-innovation/core-application/services/licence-management-service/_index.md @@ -0,0 +1,8 @@ +--- +title: "Licence Management Service" +linkTitle: "Licence Management Service" +description: "This section includes all reference documentation for the logs generated by the Licence Management Service." +weight: 400 +--- + +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Reference/logs/cortex-innovation/core-application/services/package-management-service/_index.md b/content/en/docs/2024.11/Reference/logs/cortex-innovation/core-application/services/package-management-service/_index.md new file mode 100644 index 000000000..5ea73b685 --- /dev/null +++ b/content/en/docs/2024.11/Reference/logs/cortex-innovation/core-application/services/package-management-service/_index.md @@ -0,0 +1,8 @@ +--- +title: "Package Management Service" +linkTitle: "Package Management Service" +description: "This section includes all reference documentation for the logs generated by the Package Management Service." +weight: 400 +--- + +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Reference/logs/cortex-innovation/execution-application/_index.md b/content/en/docs/2024.11/Reference/logs/cortex-innovation/execution-application/_index.md new file mode 100644 index 000000000..af0b450d7 --- /dev/null +++ b/content/en/docs/2024.11/Reference/logs/cortex-innovation/execution-application/_index.md @@ -0,0 +1,6 @@ +--- +title: "Execution Application" +linkTitle: "Execution Application" +description: "This section includes all reference documentation for the logs generated by the Execution Application." +weight: 1 +--- diff --git a/content/en/docs/2024.11/Reference/logs/cortex-innovation/execution-application/services/_index.md b/content/en/docs/2024.11/Reference/logs/cortex-innovation/execution-application/services/_index.md new file mode 100644 index 000000000..af20654a1 --- /dev/null +++ b/content/en/docs/2024.11/Reference/logs/cortex-innovation/execution-application/services/_index.md @@ -0,0 +1,6 @@ +--- +title: "Services" +linkTitle: "Services" +description: "This section includes all reference documentation for the logs generated by the Execution Application Services." +weight: 1 +--- diff --git a/content/en/docs/2024.11/Reference/logs/cortex-innovation/execution-application/services/execution-service/_index.md b/content/en/docs/2024.11/Reference/logs/cortex-innovation/execution-application/services/execution-service/_index.md new file mode 100644 index 000000000..554e7fe79 --- /dev/null +++ b/content/en/docs/2024.11/Reference/logs/cortex-innovation/execution-application/services/execution-service/_index.md @@ -0,0 +1,8 @@ +--- +title: "Execution Service" +linkTitle: "Execution Service" +description: "This section includes all reference documentation for the logs generated by the Execution Service." +weight: 400 +--- + +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Reference/logs/cortex-studio/_index.md b/content/en/docs/2024.11/Reference/logs/cortex-studio/_index.md new file mode 100644 index 000000000..6ed9f36ef --- /dev/null +++ b/content/en/docs/2024.11/Reference/logs/cortex-studio/_index.md @@ -0,0 +1,8 @@ +--- +title: "CORTEX Studio" +linkTitle: "CORTEX Studio" +description: "This section includes all reference documentation for the logs generated by {{% ctx %}} Studio." +weight: 100 +--- + +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Reference/messages/_index.md b/content/en/docs/2024.11/Reference/messages/_index.md new file mode 100644 index 000000000..ae112e0d4 --- /dev/null +++ b/content/en/docs/2024.11/Reference/messages/_index.md @@ -0,0 +1,8 @@ +--- +title: "Messages" +linkTitle: "Messages" +description: "This section includes all reference documentation for messages generated by the {{% ctx %}} Innovation platform." +weight: 10 +--- + +{{< workinprogress >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/messages/validation/_index.md b/content/en/docs/2024.11/Reference/messages/validation/_index.md new file mode 100644 index 000000000..92c14ec15 --- /dev/null +++ b/content/en/docs/2024.11/Reference/messages/validation/_index.md @@ -0,0 +1,8 @@ +--- +title: "Validation" +linkTitle: "Validation" +description: "This section includes all reference documentation for messages generated during validation." +weight: 100 +--- + +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Reference/messages/validation/errors/_index.md b/content/en/docs/2024.11/Reference/messages/validation/errors/_index.md new file mode 100644 index 000000000..358ee1e21 --- /dev/null +++ b/content/en/docs/2024.11/Reference/messages/validation/errors/_index.md @@ -0,0 +1,8 @@ +--- +title: "Errors" +linkTitle: "Errors" +description: "This section includes all reference documentation for errors generated during validation." +weight: 1 +--- + +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Reference/observability/_index.md b/content/en/docs/2024.11/Reference/observability/_index.md new file mode 100644 index 000000000..804cf9d57 --- /dev/null +++ b/content/en/docs/2024.11/Reference/observability/_index.md @@ -0,0 +1,6 @@ +--- +title: "Observability" +linkTitle: "Observability" +description: "This section includes all reference documentation for the Observability platform for {{% ctx %}} Innovation." +weight: 10 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/observability/grafana/_index.md b/content/en/docs/2024.11/Reference/observability/grafana/_index.md new file mode 100644 index 000000000..a4fd22ff7 --- /dev/null +++ b/content/en/docs/2024.11/Reference/observability/grafana/_index.md @@ -0,0 +1,6 @@ +--- +title: "Grafana" +linkTitle: "Grafana" +description: "This section includes all reference documentation for the Grafana Observability platform for {{% ctx %}} Innovation." +weight: 10 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/observability/grafana/advanced-setup/_index.md b/content/en/docs/2024.11/Reference/observability/grafana/advanced-setup/_index.md new file mode 100644 index 000000000..0b45d5ce2 --- /dev/null +++ b/content/en/docs/2024.11/Reference/observability/grafana/advanced-setup/_index.md @@ -0,0 +1,6 @@ +--- +title: "Advanced Setup" +linkTitle: "Advanced Setup" +description: "This section includes supporting documentation for the Grafana Observability platform." +weight: 20 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/observability/grafana/advanced-setup/configuring-thresholds.md b/content/en/docs/2024.11/Reference/observability/grafana/advanced-setup/configuring-thresholds.md new file mode 100644 index 000000000..57c7d2e87 --- /dev/null +++ b/content/en/docs/2024.11/Reference/observability/grafana/advanced-setup/configuring-thresholds.md @@ -0,0 +1,32 @@ +--- +title: "Configuring Thresholds" +linkTitle: "Configuring Thresholds" +description: "Instructions on how to configure thresholds in the Grafana Dashboard panels." +weight: 30 +--- + +# {{% param title %}} + +## Configure Thresholds + +This section explains how to change the colour coding of thresholds set for the thresholded panels in the dashboards. + +1. Log in to your configured Grafana with a user that has the *Admin* role. +1. To open a dashboard: + 1. Open the *Dashboards* page via the menu on the left sidebar. + 1. Click the folder name that the dashboards were imported to. + 1. Click the name of the dashboard you wish to modify to open it. +1. Open the panel you wish to configure in edit mode: + 1. Click the title of the panel to display a drop-down menu. + 1. Click *Edit*. +1. On the *Edit Panel* page, on the right-hand side, scroll down through the list of options until you reach the *Thresholds* section. + 1. You can change the value configured for the colours defined if the thresholds should be different to the default set for that panel. + 1. You can change the colours defined for the thresholds to be different to the default set for that panel. + 1. You can add additional threshold levels by clicking *+ add threshold* and configuring the colours and numbers appropriately. E.g. on the [Total Requests Errored][] panel on the [Flow Execution Requests][] dashboard, you may wish to add a warning threshold level to be >= 1 errors and change the critical threshold to be >= 10. For this you should add a threshold and set the colour to your preferred colour, set the value to 1 and change the value for red to be 10. + 1. The threshold should be set to be an absolute value if it is a count e.g. error count, or a percentage if it is a rate e.g. success rate. +1. Click *Apply* in the top right corner of the Edit Panel page. +1. Save the changes to the dashboard by clicking on the save (disk) icon, in the top right of the dashboard. + + +[Flow Execution Requests]: {{< url path="Cortex.Reference.Observability.Grafana.Dashboards.FlowExecutionRequests.MainDoc" >}} +[Total Requests Errored]: {{< url path="Cortex.Reference.Observability.Grafana.Dashboards.FlowExecutionRequests.TotalRequestsErrored" >}} diff --git a/content/en/docs/2024.11/Reference/observability/grafana/dashboards/_index.md b/content/en/docs/2024.11/Reference/observability/grafana/dashboards/_index.md new file mode 100644 index 000000000..f228671eb --- /dev/null +++ b/content/en/docs/2024.11/Reference/observability/grafana/dashboards/_index.md @@ -0,0 +1,6 @@ +--- +title: "Dashboards" +linkTitle: "Dashboards" +description: "This section includes all reference documentation for the {{% ctx %}} Innovation default set of Grafana dashboards." +weight: 10 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/observability/grafana/dashboards/flow-execution-requests.md b/content/en/docs/2024.11/Reference/observability/grafana/dashboards/flow-execution-requests.md new file mode 100644 index 000000000..a2811746b --- /dev/null +++ b/content/en/docs/2024.11/Reference/observability/grafana/dashboards/flow-execution-requests.md @@ -0,0 +1,216 @@ +--- +title: "Flow Execution Requests" +linkTitle: "Flow Execution Requests" +description: "Information about the Flow Executions Request Dashboard." +weight: 10 +--- + +# {{% param title %}} + +## Description + +This dashboard provides the information required to analyse the flow execution requests within the {{% ctx %}} Innovation platform. It will display data based on the [Time Range][] that has been specified. + +At the top of the page there is a dashboard description. This provides information about what the dashboard is reporting and what each of the filters are. The description is always collapsed by default. + +The dashboard is then split into 4 main sections: + +- [Overview](#overview-section) +- [Requests](#requests-section) +- [Errors](#errors-section) +- [Duration](#duration-section) + +There are several [filters](#filters) available to filter the data to a more fine-grained level as necessary and are explained in further detail below. + +{{< figure src="/images/editable/Flow Execution Requests Dashboard.png" >}} + +## Time Range + +{{% alert type="note" title="Note" %}}Choosing large time ranges will increase the time it takes for the data to be loaded into the dashboard.{{% /alert %}} + +The time range for which the dashboard displays data is configurable in the top right of the dashboard using the Time Range selector (defaults to the last 3 hours): + +{{< figure src="/images/editable/Flow Execution Requests - Time Range.png">}} + +There are a number of predefined quick ranges to choose from: + +- Last 5, 15 and 30 minutes +- Last 1, 3, 6, 12 and 24 hours +- Last 2, 7, 30 and 90 days +- Last 6 months +- Last 1, 2 and 5 years +- Yesterday +- Day before yesterday +- This day last week +- Previous week, month, fiscal quarter, year, fiscal year +- Today +- Today so far +- This month, fiscal quarter, year and fiscal year +- This month, fiscal quarter, year and fiscal year so far + +To configure an absolute time range, you should specify a From and To date and time. These values can be in the format of `YYYY-MM-DD HH:MM:SS`, e.g. `2022-07-22 13:54:23`, or alternatively can use times relative to now, e.g. `now-24h`. It is also possible to use the date time picker available for both the From and To fields. Once the absolute time range has been configured you must click the 'Apply time range' button. + +If an absolute time range is specified, the Time Range selector will show the selected time range with arrows either side. These arrows can be used to shift the time range forwards and backwards. This feature is not available for quick ranges. + +{{< figure src="/images/editable/Flow Execution Requests - Time Range extended.png">}} + +The magnifying glass icon allows you to zoom out of the time range specified. It will substract half the current time range from the From field and add half the current time range to the To field. + +For more information regarding the Time Range selector, see Grafana's [Time range controls][] documentation. + +## Filters + +At the top of the dashboard, there are 10 filters available to restrict the data queried: + +{{< figure src="/images/editable/Flow Execution Requests - Filters.png" >}} + +|Filter |Description| +|--------|-----------| +| Tenant | List of tenants. Defaulted to All. | +| System | List of systems. Defaulted to All. | +| Node | List of hosts that processed the requests. Defaulted to All. | +| Package Name | List of packages. Defaulted to All. | +| Flow Name | List of flows that have execution requests. Defaulted to All. | +| Status Code | List of [status codes][] found in the HTTP responses. Defaulted to All. | +| Result | List of results found in the HTTP responses. Defaulted to All. | +| Initiator IP Address | List of IP addresses for the initiators of the requests. Defaulted to All. | +| Interval | List of intervals to perform the time series aggregations upon. This only affects the graphs on this dashboard.

The available values for this filter are auto, 1m, 10m, 30m, 1h, 6h, 12h, 1d, 7d, 14d, 30d.

If *auto* is selected, as is the default, Grafana will aggregate to a level it deems appropriate for the time range specified. | +| Custom Filter | Enables filtering on all available values, including those not exposed by default. | + +All filters (excluding Interval and Custom Filter) will display their list of available options dependent on the preceding filters selected. + +## Overview Section + +This section displays key flow execution request metrics for the specified [time range][] and consists of 4 panels. + +{{< figure src="/images/editable/Flow Execution Requests - Overview.png" >}} + +{{% alert type="note" title="Note" %}}The Interval filter does not affect these panels.{{% /alert %}} + +### Total Requests + +This tile displays the total number of flow execution requests during the specified [time range][]. + +### Total Requests Errored + +This tile displays the total number of flow execution requests that errored during the specified [time range][]. This tile has thresholds set to colour code the tile depending on the value. These thresholds can be [customised][customise threholds], however the default thresholds are: + +| Threshold | Value | Colour | +|------------------|-----------|------------| +| OK | 0 | green | +| CRITICAL | >= 1 | red | + +### Request Error Rate + +This tile displays the percentage of errored flow execution requests against the total flow execution requests during the specified [time range][]. This tile has thresholds set to colour code the tile depending on the value. These thresholds can be [customised][customise threholds], however the default thresholds are: + +| Threshold | Value | Colour | +|------------------|-----------|------------| +| OK | < 5% | green | +| WARNING | >= 5% | orange | +| CRITICAL | >= 10% | red | + +### Mean Request Duration + +This tile displays the mean duration for flow execution requests during the specified [time range][]. This is usually reported in seconds, however the unit may change if the number is much smaller or larger. + +## Requests Section + +This section provides information regarding the flow execution request history for the specified [time range][] and consists of 3 panels. + +{{< figure src="/images/editable/Flow Execution Requests - Requests.png" >}} + +### Requests + +This graph displays, for the specified [time range][], the: + +- count of all flow execution requests +- mean duration in seconds for all flow execution requests + +Each data point value is calculated by aggregating requests based on the Interval filter. + +### Top 10 Requests by Count + +This table displays the 10 flows with the most execution requests during the specified [time range][] with their mean, minimum and maximum duration in seconds. + +{{% alert type="note" title="Note" %}}The Interval filter does not affect this table.{{% /alert %}} + +### Bottom 10 Requests by Count + +This table displays the 10 flows with the least execution requests during the specified [time range][] with their mean, minimum and maximum duration in seconds. + +{{% alert type="note" title="Note" %}}The Interval filter does not affect this table. Also, any flows with zero executions will not be displayed.{{% /alert %}} + +## Errors Section + +This section provides information regarding the errored flow execution request history for the specified [time range][] and consists of 2 panels. + +{{< figure src="/images/editable/Flow Execution Requests - Errors.png" >}} + +### Errored Requests + +This graph displays, for the specified [time range][], the: + +- count of errored flow execution requests +- mean duration in seconds for errored flow execution requests + +Each data point value is calculated by aggregating requests based on the Interval filter. + +### Top 10 Requests by Error Count + +This table displays the 10 flows with the most errored execution requests (by status code and result) during the specified [time range][] with their mean, minimum and maximum duration in seconds. + +{{% alert type="note" title="Note" %}}The Interval filter does not affect this table.{{% /alert %}} + +## Duration Section + +This section provides information regarding the flow execution request duration history for the specified [time range][] and consists of 3 panels. + +{{< figure src="/images/editable/Flow Execution Requests - Duration.png" >}} + +### Request Duration + +This graph displays, for the specified [time range][], the: + +- mean duration in seconds for all flow execution requests +- minimum duration in seconds for all flow execution requests +- maximum duration in seconds for all flow execution requests + +Each data point value is calculated by aggregating requests based on the Interval filter. + +### Top 10 Longest Running Requests by Mean Duration + +This table displays the 10 flows whose execution requests have the longest mean duration during the specified [time range][] with their total count, error count, minimum and maximum duration in seconds. + +{{% alert type="note" title="Note" %}}The Interval filter does not affect this table.{{% /alert %}} + +### Top 10 Shortest Running Requests by Mean Duration + +This table displays the 10 flows whose execution requests have the shortest mean duration during the specified [time range][] with their total count, error count, minimum and maximum duration in seconds. + +{{% alert type="note" title="Note" %}}The Interval filter does not affect this table. Also, any flows with zero executions will not be displayed.{{% /alert %}} + +## Remarks + +### Unknown values + +The dashboard may display flow execution requests that have an `Unknown` status code or result, if they are missing from the raw logs. The chances of this occurring are minimal. + +### Known Limitations + +#### Graphs do not reset to zero + +There is a limitation in Grafana where the graph does not always return to the zero line when there is no data for a given time point. This only occurs when there is a data point available at the beginning of the graph, followed by a period with no data, then data occurs again. When hovering the mouse over this area, it will show that the value is 0, and any other tiles will reflect the zero data at this point accordingly. + +{{< figure src="/images/editable/Flow Execution Requests - Not Zero.png" >}} + +## Related Dashboards + +None + +[time range]: #time-range + + +[customise threholds]: {{< url path="Cortex.Reference.Observability.Grafana.Dashboards.Grafana.AdvancedSetup.ConfigureThresholds.MainDoc" >}} +[status codes]: {{< url path="Wikipedia.HttpStatusCodes" >}} +[Time range controls]: {{< url path="Grafana.Products.Grafana.TimeRange" >}} diff --git a/content/en/docs/2024.11/Reference/observability/grafana/dashboards/platform-health.md b/content/en/docs/2024.11/Reference/observability/grafana/dashboards/platform-health.md new file mode 100644 index 000000000..758b4e4b4 --- /dev/null +++ b/content/en/docs/2024.11/Reference/observability/grafana/dashboards/platform-health.md @@ -0,0 +1,237 @@ +--- +title: "Platform Health" +linkTitle: "Platform Health" +description: "Information about the Platform Health Dashboard." +weight: 20 +--- + +# {{% param title %}} + +## Description + +This dashboard provides the information required to analyse the health of the {{% ctx %}} Innovation platform. It will display data based on the [Time Range][] that has been specified. + +At the top of the page there is a dashboard description. This provides information about what the dashboard is reporting and what each of the filters are. The description is always collapsed by default. + +The dashboard is then split into 5 main sections: + +- [Overview](#overview-section) +- [Availability](#availability-section) +- [Requests](#requests-section) +- [Errors](#errors-section) +- [Duration](#duration-section) + +There are several [filters](#filters) available to filter the data to a more fine-grained level as necessary and are explained in further detail below. + +{{< figure src="/images/editable/Platform Health Dashboard.png" >}} + +## Time Range + +{{% alert type="note" title="Note" %}}Choosing large time ranges will increase the time it takes for the data to be loaded into the dashboard.{{% /alert %}} + +The time range for which the dashboard displays data is configurable in the top right of the dashboard using the Time Range selector (defaults to the last 3 hours): + +{{< figure src="/images/editable/Platform Health - Time Range.png">}} + +There are a number of predefined quick ranges to choose from: + +- Last 5, 15 and 30 minutes +- Last 1, 3, 6, 12 and 24 hours +- Last 2, 7, 30 and 90 days +- Last 6 months +- Last 1, 2 and 5 years +- Yesterday +- Day before yesterday +- This day last week +- Previous week, month, fiscal quarter, year, fiscal year +- Today +- Today so far +- This month, fiscal quarter, year and fiscal year +- This month, fiscal quarter, year and fiscal year so far + +To configure an absolute time range, you should specify a From and To date and time. These values can be in the format of `YYYY-MM-DD HH:MM:SS`, e.g. `2022-07-22 13:54:23`, or alternatively can use times relative to now, e.g. `now-24h`. It is also possible to use the date time picker available for both the From and To fields. Once the absolute time range has been configured you must click the 'Apply time range' button. + +If an absolute time range is specified, the Time Range selector will show the selected time range with arrows either side. These arrows can be used to shift the time range forwards and backwards. This feature is not available for quick ranges. + +{{< figure src="/images/editable/Platform Health - Time Range extended.png">}} + +The magnifying glass icon allows you to zoom out of the time range specified. It will substract half the current time range from the From field and add half the current time range to the To field. + +For more information regarding the Time Range selector, see Grafana's [Time range controls][] documentation. + +## Filters + +At the top of the dashboard, there are 9 filters available to restrict the data queried: + +{{< figure src="/images/editable/Platform Health - Filters.png">}} + +|Filter |Description| +|--------|-----------| +| Tenant | List of tenants. Defaulted to All. | +| System | List of systems. Defaulted to All. | +| Node | List of hosts that processed the requests. Defaulted to All. | +| API | List of the API endpoints found in the HTTP requests. Defaulted to All. | +| Status Code | List of [status codes][] found in the HTTP responses. Defaulted to All. | +| Result | List of results found in the HTTP responses. Defaulted to All. | +| Initiator IP Address | List of IP addresses for the initiators of the requests. Defaulted to All. | +| Interval | List of intervals to perform the time series aggregations upon. This only affects the graphs on this dashboard.

The available values for this filter are auto, 1m, 10m, 30m, 1h, 6h, 12h, 1d, 7d, 14d, 30d.

If *auto* is selected, as is the default, Grafana will aggregate to a level it deems appropriate for the time range specified. | +| Custom Filter | Enables filtering on all available values, including those not exposed by default. | + +All filters (excluding Interval and Custom Filter) will display their list of available options dependent on the preceding filters selected. + +## Overview Section + +This section displays key platform health metrics for the specified [time range][] and consists of 4 panels. + +{{< figure src="/images/editable/Platform Health - Overview.png">}} + +{{% alert type="note" title="Note" %}}The Interval filter does not affect these panels.{{% /alert %}} + +### Availability + +This tile displays the availability of the platform by calculating the successful requests / total requests during the specified [time range][]. Successful requests are all requests that do not result in a 5xx HTTP response, 4xx responses are considered successful in this scenario. This tile has thresholds set to colour code the tile depending on the value. These thresholds can be [customised][customise threholds], however the default thresholds are: + +| Threshold | Value | Colour | +|------------------|-----------|------------| +| OK | >= 95% | green | +| WARNING | >= 90% | orange | +| CRITICAL | < 90% | red | + +### Total Requests + +This tile displays the total number of requests during the specified [time range][]. + +### Errored Requests + +This tile displays the total number of errored requests during the specified [time range][]. Errored requests are all requests that result in an unknown or 5xx HTTP response, 4xx responses are considered successful in this scenario. This tile has thresholds set to colour code the tile depending on the value. These thresholds can be [customised][customise threholds], however the default thresholds are: + +| Threshold | Value | Colour | +|------------------|-----------|------------| +| OK | 0 | green | +| CRITICAL | >= 1 | red | + +### Mean Request Duration + +This tile displays the mean duration for requests during the specified [time range][]. + +{{% alert type="note" title="Note" %}}Certain APIs may take significantly longer than others skewing the result.{{% /alert %}} + +## Availability Section + +This section displays the availability of the {{% ctx %}} Innovation platform and consists of 1 panel. + +{{< figure src="/images/editable/Platform Health - Availability.png">}} + +### Availability + +This graph displays the availability of the {{% ctx %}} Innovation Platform during the specified [time range][] by calculating successful requests / total requests. Successful requests are all requests that do not result in an unknown or 5xx HTTP response. 4xx responses are considered successful in this scenario. + +Each data point value is calculated by aggregating requests based on the Interval filter. If there is no data for the previous interval, the line will be [broken](#breaks-in-graph-lines) as the availability is not known at the time. + +This graph has thresholds set to colour code the background to show when availability drops into warning and critical levels. These thresholds can be [customised][customise threholds], however the default thresholds are: + +| Threshold | Value | Colour | +|------------------|-----------|------------| +| OK | >= 95% | green | +| WARNING | >= 90% | orange | +| CRITICAL | < 90% | red | + +This graph is configured to start the availability axis at 80%. However, if the availability drops below this level, the axis will modify to show the lowest availability level. + +## Requests Section + +This section provides information regarding the history of the requests processed by the {{% ctx %}} Innovation platform for the specified [time range][] and consists of 2 panels. + +{{< figure src="/images/editable/Platform Health - Requests.png">}} + +### Requests + +This graph displays, for the specified [time range][], the: + +- count of all requests. Each data point value is calculated by aggregating requests based on the Interval filter. +- count of all requests per second. + +### Top 10 Responses by Total Count + +This table displays the Top 10 HTTP responses that occurred during the specified [time range][] with their mean, minimum and maximum duration in seconds. + +{{% alert type="note" title="Note" %}}The Interval filter does not affect this table.{{% /alert %}} + +## Errors Section + +This section provides information regarding the errored request history for the specified [time range][] and consists of 2 panels. + +{{< figure src="/images/editable/Platform Health - Errors.png">}} + +### Errored Requests + +This graph displays, for the specified [time range][], the: + +- count of errored requests +- count of all requests + +Each data point value is calculated by aggregating requests based on the Interval filter. + +Errored requests are all requests that result in an unknown or 5xx HTTP response. 4xx responses are considered successful in this scenario. + +### Top 10 Error Responses by Error Count + +This table displays the Top 10 HTTP error responses that occured during the specified [time range][] with their mean, minimum and maximum duration in seconds. Errored requests are all requests that result in an unknown or 5xx HTTP response. 4xx responses are considered successful in this scenario. + +{{% alert type="note" title="Note" %}}The Interval filter does not affect this table.{{% /alert %}} + +## Duration Section + +This section provides information regarding the request duration history for the specified [time range][] and consists of 2 panels. + +{{% alert type="note" title="Note" %}}Certain APIs may take significantly longer than others skewing the result.{{% /alert %}} + +{{< figure src="/images/editable/Platform Health - Duration.png">}} + +### Request Duration + +This graph displays, for the specified [time range][], the: + +- mean duration in seconds for all requests +- minimum duration in seconds for all requests +- maximum duration in seconds for all requests + +Each data point value is calculated by aggregating requests based on the Interval filter. + +### Top 10 Responses by Mean Duration + +This table displays the top 10 HTTP responses that occurred during the specified [time range][] with their mean, minimum and maximum duration in seconds. + +{{% alert type="note" title="Note" %}}The Interval filter does not affect this table.{{% /alert %}} + +## Remarks + +### Unknown values + +The dashboard may display HTTP requests that have an `Unknown` status code or result, if they are missing from the raw logs. The chances of this occurring are minimal. + +### Breaks in Graph Lines + +When appropriate, there may occur breaks in the line graphs. This is relevant to the Availability graph. When there is no data, it is not appropriate to say that the availability is the same as the previous data point or that it is zero as if there is no data, we cannot accurately reflect the data at this point, and therefore, the line will break. + +{{< figure src="/images/editable/Platform Health - Break in Line.png">}} + +### Known Limitations + +#### Graphs do not reset to zero + +There is a limitation in Grafana where the graph does not always return to the zero line when there is no data for a given time point. This only occurs when there is a data point available at the beginning of the graph, followed by a period with no data, then data occurs again. When hovering the mouse over this area, it will show that the value is 0, and any other tiles will reflect the zero data at this point accordingly. + +{{< figure src="/images/editable/Platform Health - Not Zeros.png">}} + +## Related Dashboards + +None + + +[time range]: #time-range + + +[customise threholds]: {{< url path="Cortex.Reference.Observability.Grafana.Dashboards.Grafana.AdvancedSetup.ConfigureThresholds.MainDoc" >}} +[status codes]: {{< url path="Wikipedia.HttpStatusCodes" >}} +[Time range controls]: {{< url path="Grafana.Products.Grafana.TimeRange" >}} diff --git a/content/en/docs/2024.11/Reference/troubleshooting/_index.md b/content/en/docs/2024.11/Reference/troubleshooting/_index.md new file mode 100644 index 000000000..2a499feb8 --- /dev/null +++ b/content/en/docs/2024.11/Reference/troubleshooting/_index.md @@ -0,0 +1,6 @@ +--- +title: "Troubleshooting" +linkTitle: "Troubleshooting" +description: "This section includes information about how to troubleshoot the platform." +weight: 100 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Reference/troubleshooting/installation.md b/content/en/docs/2024.11/Reference/troubleshooting/installation.md new file mode 100644 index 000000000..642d399ef --- /dev/null +++ b/content/en/docs/2024.11/Reference/troubleshooting/installation.md @@ -0,0 +1,344 @@ +--- +title: "Installation" +linkTitle: "Installation" +description: "Information on troubleshooting {{% ctx %}} Innovation installations." +--- + +# {{% param title %}} + +## Troubleshooting issues during installation {#ts-during-installation} + +### Root certificate verification failed as no root certificate has been specified {#ts-no-root-certificate} + +If the installation fails with `Root certificate verification failed as no root certificate has been specified.` it means that Windows has not got the trusted root installed for the provided X.509 certificate. This can be rectified by providing the path to a .pem file containing the root certificate in the `pemRootCertificatePath` property for each certificate in the `serverCertificates` and/or `adminCertificates` section of the configuration file. After adding this, the installation script can be re-run. The following steps can be taken to create a .pem file and re-run the installation (these instructions may differ slightly depending on the Certificate Authority): + + {{% alert title="Important" color="warning" %}}Parameters required to be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}} must be encrypted on one of the servers specified in the {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.SingleServerWithoutHA.EncryptionRequirements" title="Encryption Requirements" >}} steps.{{% /alert %}} + +1. In order to find out the issuer of the certificate, if not already known, the following script can be used, replacing the password for the pfx file and certificate path as necessary: + + ```powershell + $p = ConvertTo-SecureString -String "pfxPassword" -AsPlainText -Force + $c = Get-PfxData -Password $p -FilePath "C:\Certificates\serverCert.pfx" + $c | Format-List + ``` + +1. This will give a list of `Other Certificates` and `End Certificates` contained in the .pfx file. The issuer can be found in the `Issuer` property of one of the `Other Certificates`. If there are more than one, it will be the one that does not appear as a `Subject` in any of the other items. +1. E.g. For a "Let's Encrypt" certificate this will give the following results: + + ```powershell + OtherCertificates : {[Subject] + CN=Let's Encrypt Authority X3, O=Let's Encrypt, C=US + [Issuer] + CN=DST Root CA X3, O=Digital Signature Trust Co. + [Serial Number] + 0A0141420000015385736A0B85ECA708 + [Not Before] + 17/03/2016 16:40:46 + [Not After] + 17/03/2021 16:40:46 + [Thumbprint] + E6A3B45B062D509B3382282D196EFE97D5956CCB + } + EndEntityCertificates : {[Subject] + CN=*.domain.com + [Issuer] + CN=Let's Encrypt Authority X3, O=Let's Encrypt, C=US + [Serial Number] + 03D3B2E5E7D75175C25B250305650ABE849A + [Not Before] + 20/12/2019 16:27:36 + [Not After] + 19/03/2020 16:27:36 + [Thumbprint] + D61356405B8D4AA11C29AF3D20F2D834C1A3039F + } + ``` + +1. In this case, the root certificate is `DST Root CA X3`. +1. In a search engine, search for the CN of the issuer and one of the results should lead to a download of a .pem file or to a page with the certificate on it, which can then be copied and saved into a file with a .pem extension. Often, searching the issuer of the EndEntityCertificate, in the above case `Let’s Encrypt`, will also work. +1. E.g. for `Let’s Encrypt`, the results of the search for `DST Root CA X3` leads to `https://www.identrust.com/dst-root-ca-x3` which provides the following text to be saved as a .pem file: + + ```markdown + -----BEGIN CERTIFICATE----- + MIIDSjCCAjKgAwIBAgIQRK+wgNajJ7qJMDmGLvhAazANBgkqhkiG9w0BAQUFADA/ + MSQwIgYDVQQKExtEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdCBDby4xFzAVBgNVBAMT + DkRTVCBSb290IENBIFgzMB4XDTAwMDkzMDIxMTIxOVoXDTIxMDkzMDE0MDExNVow + PzEkMCIGA1UEChMbRGlnaXRhbCBTaWduYXR1cmUgVHJ1c3QgQ28uMRcwFQYDVQQD + Ew5EU1QgUm9vdCBDQSBYMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB + AN+v6ZdQCINXtMxiZfaQguzH0yxrMMpb7NnDfcdAwRgUi+DoM3ZJKuM/IUmTrE4O + rz5Iy2Xu/NMhD2XSKtkyj4zl93ewEnu1lcCJo6m67XMuegwGMoOifooUMM0RoOEq + OLl5CjH9UL2AZd+3UWODyOKIYepLYYHsUmu5ouJLGiifSKOeDNoJjj4XLh7dIN9b + xiqKqy69cK3FCxolkHRyxXtqqzTWMIn/5WgTe1QLyNau7Fqckh49ZLOMxt+/yUFw + 7BZy1SbsOFU5Q9D8/RhcQPGX69Wam40dutolucbY38EVAjqr2m7xPi71XAicPNaD + aeQQmxkqtilX4+U9m5/wAl0CAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNV + HQ8BAf8EBAMCAQYwHQYDVR0OBBYEFMSnsaR7LHH62+FLkHX/xBVghYkQMA0GCSqG + SIb3DQEBBQUAA4IBAQCjGiybFwBcqR7uKGY3Or+Dxz9LwwmglSBd49lZRNI+DT69 + ikugdB/OEIKcdBodfpga3csTS7MgROSR6cz8faXbauX+5v3gTt23ADq1cEmv8uXr + AvHRAosZy5Q6XkjEGB5YGV8eAlrwDPGxrancWYaLbumR9YbK+rlmM6pZW87ipxZz + R8srzJmwN0jP41ZL9c8PDHIyh8bwRLtTcm1D9SZImlJnt1ir/md2cXjbDaJWFBM5 + JDGFoqgCWjBH4d1QB7wCCZAA62RjYJsWvIjJEubSfZGL+T0yjWW06XyxV3bqxbYo + Ob8VZRzI9neWagqNdwvYkQsEjgfbKbYK7p2CNTUQ + -----END CERTIFICATE----- + ``` + +1. After saving the .pem file, transfer it to the same directory as other installation certificates. +1. Modify the installation configuration file to include the .pem file as the `pemRootCertificatePath` in the `serverCertificates` like so: + + ```json + "serverCertificates": { +     "serverCert": { +       "pfxCertificatePath": "C:\\Certificates\\wildCardCert.pfx", +       "pfxCertificatePassword": "#_121004188127116!133150189159197057145221234081254~237141201182240!228132117152122101166250091035249#", +       "pemRootCertificatePath": "C:\\Certificates\\rootCert.pem" +     } +   } + ``` + + {{< alert type="note" title="Note" >}} The `pfxCertificatePassword` parameter must be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}} + +1. If a load balancer is being used (not single server), modify the installation configuration file to include the .pem file as the `pemRootCertificatePath` in the `adminCertificates` like so: + + ```json + "adminCertificates": { +     "loadBalancerCert": { +       "pfxCertificatePath": "C:\\Certificates\\lbCert.pfx", +       "pfxCertificatePassword": "#_121004188127116!133150189159197057145221234081254~237141201182240!228132117152122101166250091035249#", +       "pemRootCertificatePath": "C:\\Certificates\\lbRootCert.pem" +     } +   } + ``` + + {{< alert type="note" title="Note" >}} The `pfxCertificatePassword` parameter must be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}} + +1. Run the installation script again. + +### RabbitMQ commands not succeeding + +When running the installation, if you get errors similar to the following: + +``` shell +Retry rabbitmqctl start_app --erlang-cookie $ErlangCookie --longnames . Attempt 1 +Retry rabbitmqctl start_app --erlang-cookie $ErlangCookie --longnames . Attempt 2 +Retry rabbitmqctl start_app --erlang-cookie $ErlangCookie --longnames . Attempt ... +Retry rabbitmqctl start_app --erlang-cookie $ErlangCookie --longnames . Attempt 20 +``` + +It means there is probably something wrong with the certificate verification with RabbitMQ. Please report issues like this to [{{% ctx %}} Service Portal][CORTEX Service Portal]. + +To work around this error, either uninstall the platform and reinstall it using a different certificate, otherwise disable peer-to-peer verification in RabbitMQ by carrying out the following steps: + +1. Uninstall the platform by taking the following steps: + 1. Open a Windows PowerShell (x64) window as administrator. + 1. Navigate PowerShell to inside the `Cortex Innovation {{< version >}} - App Server Install Scripts` folder using the following command, modifying the path as necessary: + + ```powershell + cd "C:\Install\Cortex Innovation {{< version >}} - App Server Install Scripts" + ``` + + 1. Uninstall the platform by running the following command for your architecture: + + {{< tabpane lang="powershell" >}} + {{< tab header="Multiple Servers With HA" >}} + .\Cortex.Innovation.Uninstall.ps1 + {{< /tab >}} + {{< tab header="Single Server Without HA" >}} + .\Cortex.Innovation.Uninstall.ps1 -SkipLoadBalancer + {{< /tab >}} + {{< /tabpane >}} + 1. A credentials prompt will appear. Enter credentials of a domain user that is a member of the local Administrators group on all servers (Application and Load Balancer) and press OK. + 1. Wait for the command to finish. +1. In the `Cortex Innovation {{< version >}} - App Server Install Scripts` folder, navigate to `Resources`. +1. Backup the file `RabbitMqInterNodePublicTemplate.config` and then open it with a text editor. +1. Replace both instances of the text `verify_peer` with the text `verify_none`. +1. Change the value of both occurrences of `fail_if_no_peer_cert` to `false` so that they resemble the following: + + ```shell + {fail_if_no_peer_cert, false}, + ``` + +1. Save and close `RabbitMqInterNodePublicTemplate.config`. +1. Re-run the installation script. + +## Troubleshooting issues after installation {#ts-after-installation} + +### {{% ctx %}} Innovation features not visible in {{% ctx %}} Gateway {#ts-no-innovation} + +Check that the `Feature Flags` Guid in the `CortexGateway.SetParameters.xml` file used for installing {{% ctx %}} Gateway is correct. If it is not, update it and reinstall {{% ctx %}} Gateway or update the value in the `web.config` file and restart the website. If the value is correct, please contact [{{% ctx %}} Service Portal][CORTEX Service Portal] for assistance. + +### {{% ctx %}} Innovation blocks not visible in {{% ctx %}} Studio {#ts-no-blocks} + +#### Application Pool user does not have Modify rights to the Roaming folder + +The following folders require `Modify` permission to allow creating the `NuGet` folders and its `NuGet.Config` file within: + +* `C:\Windows\System32\config\systemprofile\AppData\Roaming` +* `C:\Windows\SysWOW64\config\systemprofile\AppData\Roaming` + +For each folder, perform the following steps: + +1. Navigate to the `AppData` folder. +1. Right-click on the `Roaming` folder and click `Properties`. +1. In the dialog, click the `Security` tab. +1. Check the `Application Pool` user for Gateway is listed in the `Group or user names` and has `Modify` permissions. +1. If the `Application Pool` user for Gateway is not listed: + 1. Click the `Edit...` button. + 1. Click the `Add...` button. + 1. Enter the username of the application pool user and click `OK`. + 1. In the `Permissions` section at the bottom, check `Modify`. + 1. Click `OK`. + 1. Click `Yes` to change the permission to the folder. +1. If the `Application Pool` user for Gateway is listed but does not have permissions: + 1. Click the `Edit...` button. + 1. Select the `Application Pool` user. + 1. Check `Modify`. + 1. Click `OK`. + 1. Click `Yes` to change the permission to the folder. + +#### Application Pool user does not have rights to the Cortex Blocks Provider Host folder + +Perform the following steps: + +1. Navigate to `C:\ProgramData\Cortex` +1. Right-click on the `Cortex Blocks Provider Host` folder and click `Properties`. +1. In the dialog, click the `Security` tab. +1. Check the `Application Pool` user for Gateway is listed in the `Group or user names` and has `Modify` permissions. +1. If the `Application Pool` user for Gateway is not listed: + 1. Click the `Edit...` button. + 1. Click the `Add...` button. + 1. Enter the username of the application pool user and click `OK`. + 1. In the `Permissions` section at the bottom, check `Modify`. + 1. Click `OK`. +1. If the `Application Pool` user for Gateway is listed but does not have permissions: + 1. Click the `Edit...` button. + 1. Select the `Application Pool` user. + 1. Check `Modify`. + 1. Click `OK`. + +#### Perform an IIS reset + +1. Open a Windows PowerShell (x64) window as administrator. +1. Run the following command: `iisreset`. +1. Wait for the action to complete. + +### Flow not starting in {{% ctx %}} Gateway {#ts-flow-not-starting} + +#### Application Pool user does not have rights to the Repo folder + +Check that the `Application Pool` user has rights to the `Repo` folder using the following steps: + +1. Check where the `Repo` folder is located + 1. Navigate to the `gateway` IIS folder (usually `%SystemDrive%\inetpub\wwwroot\Cortex\gateway`, e.g. `C:\inetpub\wwwroot\Cortex\gateway`) + 1. Open the `web.config` file. + 1. Find the value of the `connectionString` named `CortexRepositories` +1. Navigate to the `Repo` folder, not opening it. +1. Right-click on the `Repo` folder and click `Properties`. +1. In the dialog, click the `Security` tab. +1. Check the `Application Pool` user for Gateway is listed in the `Group or user names` and has `Modify` permissions. +1. If the `Application Pool` user for Gateway is not listed: + 1. Click the `Edit...` button. + 1. Click the `Add...` button. + 1. Enter the username of the application pool user and click `OK`. + 1. In the `Permissions` section at the bottom, check `Modify`. + 1. Click `OK`. +1. If the `Application Pool` user for Gateway is listed but does not have permissions: + 1. Click the `Edit...` button. + 1. Select the `Application Pool` user. + 1. Check `Modify`. + 1. Click `OK`. + +### Cannot publish a package {#ts-no-publish} + +Check that the `Service Fabric Api Gateway Endpoint`, `Service Fabric Using Self Signed Certificates`, `Service Fabric ApiGateway Basic Auth Username` and `Service Fabric ApiGateway Basic Auth Password` in the `CortexGateway.SetParameters.xml` file used for installing {{% ctx %}} Gateway are correct. If any of them are not, update them and reinstall {{% ctx %}} Gateway or update the value in the "web.config" file and restart the website. If the value is correct, please contact [{{% ctx %}} Service Portal][CORTEX Service Portal] for assistance. + +Ensure that the Application Services are healthy by following these steps: + +1. Log on to one of the Application Servers and open a web browser. +1. Navigate to `https://app-server.domain.com:9080/Explorer`, where `app-server.domain.com` is the fully qualified domain name of any Application Server. Replace `9080` with new `httpGatewayEndpointPort` value if it was changed during configuration. + + If page access is denied it may be necessary to import the server certificate used in installation to the Current User certificate store (usually achieved by double clicking on it and following the wizard). If using self-signed certificates, the certificate can be retrieved by using the `Manage Computer Certificates` tool in Windows to export the `CortexServerCertificate` from the `Personal` store as a pfx file and then importing it to the `Current User` store by double-clicking on it and following the wizard. The certificate must also be imported to `Trusted Root Certification Authorities` in the `Local Computer` store. The browser may need to be restarted before the site can be accessed. + + The screen should resemble that in the following figure, all services should have `Health State = OK` and `Status = Active`. All instances below the service should have Health State = OK and Status = Ready. + + {{< figure src="/images/Service Fabric Explorer.png" title="Healthy Service Fabric Explorer" >}} + + If any warning triangles appear, wait for 5 minutes or so as the cluster may still be starting up. If the cluster looks OK, ignore the rest of this step. If the warnings persist or anything on the screen goes red, use the filter buttons to find the individual elements which have errors or warnings. Warnings should not be ignored as they can indicate that the service can’t start but is still in the retry phase. + If no useful message can be seen here, the service log files may contain more information. + +If no solution can be found, please contact [{{% ctx %}} Service Portal][CORTEX Service Portal] for assistance. + +### Managing RabbitMQ + +There may be times when the logs provided by {{% ctx %}} Innovation Services and the errors displayed in Service Fabric Explorer are not enough to debug an issue that is occurring on the system. This can be due to RabbitMQ being a state where it can’t send messages between services. + +To check that RabbitMQ is working as expected, remote desktop to an Application Server and navigate to `https://app-server1.domain.com:15671`, replacing `app-server1.domain.com` with the FQDN of one of the Application Servers. Sign in with username 'administrator' and the RabbitMQ password provided during the Application Server installation. The following should be displayed in the overview tab for a healthy cluster: + +{{< figure src="/images/RabbitMQ Status.png" title="Healthy RabbitMQ status." >}} + +{{% alert title="Note" %}} The username and password are not secure, but the RabbitMQ manager will only allow you to connect from localhost so it is not accessible to anyone who does not have remote desktop access. {{% /alert %}} + +If there are any unhealthy nodes (red) you may need to restart the RabbitMQ Windows service on each of the nodes that is erroring. These can be restarted in any order, but they must be restarted one at a time; wait for the node in the RabbitMQ explorer to be green before restarting the next one (you may need to refresh the browser). + +### Service Fabric Explorer displays errored services with RabbitMQ Broker Unreachable Exceptions + +If, when checking Service Fabric Explorer, all services are showing as erroring and the details are displaying a message similar to the following: + +```text +RabbitMQ.Client.Exceptions.BrokerUnreachableException (-2146232800) +None of the specified endpoints were reachable +``` + +There may be due to an incompatibility between the version of OpenSSL used and your processor. From Intel's website: **"OpenSSL* 1.0.2 beta (Jun 2014) to OpenSSL 1.0.2k (Jan 2017) contain bugs that either cause a crash or bad SHA (Secure Hash Algorithm) values on processors with the SHA extensions. Both bugs were fixed years ago; however, any application that uses the old version directly, or as one of its dependencies, will fail"** + +To verify that this is the problem, open Event Viewer and look in Windows -> Application. If this problem has occurred there will be some errors in the event viewer which contain the following: + +```text +Faulting application name: erl.exe, version: 0.0.0.0, time stamp: 0x5d80b978 +Faulting module name: crypto.dll, version: 0.0.0.0, time stamp: 0x5d80baab +``` + +A workaround for this is provided by Intel. + +1. Uninstall the platform by taking the following steps: + 1. Open a Windows PowerShell (x64) window as administrator. + 1. Navigate PowerShell to inside the `Cortex Innovation {{< version >}} - App Server Install Scripts` folder using the following command, modifying the path as necessary: + + ```powershell + cd "C:\Install\Cortex Innovation {{< version >}} - App Server Install Scripts" + ``` + + 1. Uninstall the platform by running the following command for your architecture: + + {{< tabpane lang="powershell" >}} + {{< tab header="Multiple Servers With HA" >}} + .\Cortex.Innovation.Uninstall.ps1 + {{< /tab >}} + {{< tab header="Single Server Without HA" >}} + .\Cortex.Innovation.Uninstall.ps1 -SkipLoadBalancer + {{< /tab >}} + {{< /tabpane >}} + 1. A credentials prompt will appear. Enter credentials of a domain user that is a member of the local Administrators group on all servers (Application and Load Balancer) and press OK. + 1. Wait for the command to finish. +1. Add a system environment variable, provided by Intel, to each Application Server by taking the following steps: + 1. Remote desktop to one of the Application Servers. + 1. Right-click on the Start Menu and select `System`. + 1. Click `Advanced system settings` to open the System Properties dialog. + 1. Click `Environment Variables...`. + 1. Under `System variables`, click `New...` to open the New System Variable dialog. + 1. Set the Variable name to `OPENSSL_ia32cap` and the Variable value to `:~0x20000000`. Make sure to include the colon at the start. + 1. Click OK. + 1. Repeat these steps for any other Application Servers. +1. Run the Application Servers installation script again. + +### Service Fabric Explorer displays certificate is about to expire warning + +If Service Fabric certificates are going to expire in fewer than 30 days, a warning is displayed as follows: + +{{< figure src="/images/Service Fabric Explorer - Expiring Certificate.PNG" title="Service Fabric Explorer Certificate Expiring" >}} + +*Certificate expiration: thumbprint = {thumbprint}, expiration {date} remaining lifetime is {time} please refresh ahead of time to avoid catastrophic failure.* + +If this occurs on your server it is important to update your certificates as soon as possible using [Rollover Certificates][]. + +[CORTEX Service Portal]: {{< url path="Cortex.ServicePortal.MainDoc" >}} +[Rollover Certificates]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.RolloverCertificates" >}} +[add rights to nuget folder]: {{< ref "#ts-add-rights-to-nuget-folder" >}} diff --git a/content/en/docs/2024.11/Reference/troubleshooting/upgrade.md b/content/en/docs/2024.11/Reference/troubleshooting/upgrade.md new file mode 100644 index 000000000..f786fc773 --- /dev/null +++ b/content/en/docs/2024.11/Reference/troubleshooting/upgrade.md @@ -0,0 +1,11 @@ +--- +title: "Upgrade" +linkTitle: "Upgrade" +description: "Information on troubleshooting {{% ctx %}} Innovation upgrades." +--- + +# {{% param title %}} + +## Troubleshooting issues during upgrade {#ts-during-upgrade} + +{{< workinprogress >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/Tutorials/Administration/_index.md b/content/en/docs/2024.11/Tutorials/Administration/_index.md new file mode 100644 index 000000000..c3a313be9 --- /dev/null +++ b/content/en/docs/2024.11/Tutorials/Administration/_index.md @@ -0,0 +1,48 @@ +--- +title: "Administration" +linkTitle: "Administration" +description: "This section includes tutorials about administering the {{% ctx %}} Innovation platform." +weight: 40 +--- + +## Managing role-based access control + +Shows how to manage role-based access control within Gateway, including assigning access and flow permissions. + +{{< youtube id="v-nll5V4p1Q" >}} + +## Exporting flows + +Shows how to export a set of flows as a `.studiopkg` file. + +{{< youtube id="ZpnDmiuTc8o" >}} + +## Importing flows + +Shows how to import a set of flows from a `.studiopkg` file. + +{{< youtube id="_A4CuCKZuys" >}} + +## Creating packages + +Shows how to create a release package containing all the flows required for your self-contained automation solution. + +{{< youtube id="dzcjU0Ca7EY" >}} + +## Publishing packages + +Shows how to publish a release package into your runtime environment. + +{{< youtube id="iWXMhgPMeHg" >}} + +## Managing package versions + +Shows how to create new versions of a release package, including adding flows, updating flow versions, and removing flows. + +{{< youtube id="lrJMOKyRnGY" >}} + +## Setting default packages + +Shows how to set the default package and the default version of each package. + +{{< youtube id="th-OPwfQ7Vo" >}} diff --git a/content/en/docs/2024.11/Tutorials/Development/_index.md b/content/en/docs/2024.11/Tutorials/Development/_index.md new file mode 100644 index 000000000..4b9c22d5f --- /dev/null +++ b/content/en/docs/2024.11/Tutorials/Development/_index.md @@ -0,0 +1,120 @@ +--- +title: "Development" +linkTitle: "Development" +description: "This section includes tutorials about developing automation using the {{% ctx %}} Innovation platform." +weight: 30 +--- + +## Signing in and out of Gateway + +Shows how to sign in and out of {{% ctx %}} Gateway. + +{{< youtube id="DlgFfkE2LOY" >}} + +## Overview of Gateway + +Shows a high-level overview of {{% ctx %}} Gateway. + +{{< youtube id="EZoUUiv3EpM" >}} + +## Creating groups and moving flows + +Shows how to create new groups, and move existing flows between groups. + +{{< youtube id="fE0dyRoc1Os" >}} + +## Creating and interacting with flows + +Shows how to create a flow, and provides an overview of commonly used features of the flow editor. + +{{< youtube id="zFug1mUwXA8" >}} + +## Interacting with blocks + +Shows how to add, connect, copy, cut, paste, and delete blocks. + +{{< youtube id="vdhZ8opqU8A" >}} + +## Configuring variables + +Shows how to create and configure variables. + +{{< youtube id="AGDdFvRST5k" >}} + +## Configuring blocks + +Shows how to configure blocks using the Properties Editor. + +{{< youtube id="OZrydwUDzuU" >}} + +## Handling exceptions at the block level + +Shows how to handle exceptions at the block level. + +{{< youtube id="abFwXiOR1XQ" >}} + +## Handling exceptions at the workspace level + +Shows how to handle exceptions at the workspace level. + +{{< youtube id="Q_KrAhuyt38" >}} + +## Handling exceptions at the flow level + +Shows how to handle exceptions at the flow level. + +{{< youtube id="S-scB8rV1hw" >}} + +## Throwing exceptions + +Shows how to throw an exception within a flow. + +{{< youtube id="Gt3dSdWNQa4" >}} + +## Debugging a flow + +Shows how to start debugging a flow. + +{{< youtube id="reDYeeAiEYU" >}} + +## Adding and removing breakpoints + +Shows how to add and remove breakpoints when debugging a flow. + +{{< youtube id="8qJRCdz0CpU" >}} + +## Editing a flow whilst debugging + +Shows how to edit a flow whilst debugging, including fixing a runtime exception. + +{{< youtube id="DKrDZxpv9nY" >}} + +## Interacting with version control + +Shows how to save, commit, get master, and compare versions of a flow. + +{{< youtube id="oAfu7DsVgDM" >}} + +## Interacting with version control (multiple flows) + +Shows how to perform commit or get master of multiple flows. + +{{< youtube id="JPdFjeReYQE" >}} + +## Starting a published flow + +Shows how to start a flow, in the default package, via the API Gateway Service using an HTTP request. + +{{< youtube id="IXg0lnKg1BM" >}} + +## Starting a published flow (specific package) + +Shows how to start a flow, in a specific package, via the API Gateway Service using an HTTP request. + +{{< youtube id="8G0N7E9oTvo" >}} + +## Configuring input and output variables + +Shows how to configure the input and output variables of a flow. + +{{< youtube id="5YLg6f4HaBo" >}} diff --git a/content/en/docs/2024.11/Tutorials/Installation/_index.md b/content/en/docs/2024.11/Tutorials/Installation/_index.md new file mode 100644 index 000000000..bbda3ebf6 --- /dev/null +++ b/content/en/docs/2024.11/Tutorials/Installation/_index.md @@ -0,0 +1,8 @@ +--- +title: "Installation" +linkTitle: "Installation" +description: "This section includes tutorials about installing the {{% ctx %}} Innovation platform." +weight: 10 +--- + +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Tutorials/Setup/_index.md b/content/en/docs/2024.11/Tutorials/Setup/_index.md new file mode 100644 index 000000000..8ddd1ba59 --- /dev/null +++ b/content/en/docs/2024.11/Tutorials/Setup/_index.md @@ -0,0 +1,8 @@ +--- +title: "Setup" +linkTitle: "Setup" +description: "This section includes tutorials about post-installation setup of the {{% ctx %}} Innovation platform." +weight: 20 +--- + +{{< workinprogress >}} diff --git a/content/en/docs/2024.11/Tutorials/Troubleshooting/_index.md b/content/en/docs/2024.11/Tutorials/Troubleshooting/_index.md new file mode 100644 index 000000000..d7120fa05 --- /dev/null +++ b/content/en/docs/2024.11/Tutorials/Troubleshooting/_index.md @@ -0,0 +1,18 @@ +--- +title: "Troubleshooting" +linkTitle: "Troubleshooting" +description: "This section includes tutorials about troubleshooting the {{% ctx %}} Innovation platform." +weight: 50 +--- + +## Errors when starting published flows + +When making requests to start published flows, you may encounter errors. The videos below will show you how to fix them. + +### FlowNotFound + +{{< youtube id="1vXswyCAfn4" >}} + +### InvalidInputVariables + +{{< youtube id="0KIksXI8NLU" >}} diff --git a/content/en/docs/2024.11/Tutorials/_index.md b/content/en/docs/2024.11/Tutorials/_index.md new file mode 100644 index 000000000..03d694711 --- /dev/null +++ b/content/en/docs/2024.11/Tutorials/_index.md @@ -0,0 +1,6 @@ +--- +title: "Tutorials" +linkTitle: "Tutorials" +description: "This section includes all tutorials for the {{% ctx %}} Innovation platform." +weight: 10 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/Whats New/_index.md b/content/en/docs/2024.11/Whats New/_index.md new file mode 100644 index 000000000..b9c72c75c --- /dev/null +++ b/content/en/docs/2024.11/Whats New/_index.md @@ -0,0 +1,125 @@ +--- +title: "What's New?" +linkTitle: "What's New?" +description: "Discover what's new in the {{% ctx %}} platform." +weight: 1 +--- + +## Summary + +2024.9 is the second [Release][] of the next generation of {{% ctx %}} and improves on the [2024.7][] release in the following areas: + +* [Capability][] +* [Observability][] +* [Scalability][] +* [Security][] +* [Usability][] +* [Third-Party Support][] +* [Installation][] +* [Upgrade][] +* [Documentation][] + +## Improved Capability + +This release introduces multiple new features to the {{% ctx %}} platform: + +* The concept of [Process and Activity][], which are types of [Flow][], has now been introduced to {{% ctx %}} Gateway. +* [Saving Output Properties to multiple variables][] is now supported. +* A new built-in [execution context variable][] has been added to the Flow Engine which contains the initiator. +* A new [Proxy for the {{% ctx %}} 7 Flow API][] has been added to the platform. + +## Improved Observability + +Observability has been improved by [adding logging to blocks that communicate with external systems][Logging added to blocks that communicate with external systems]. + +## Improved Scalability + +Optimisation to scalability has been made by [reducing the total number of NServiceBus endpoints and RabbitMQ queues][Reduction of total number of NServiceBus endpoints and RabbitMQ queues]. + +## Improved Security + +We increased the security of the platform by: + +* [Upgrading the OpenSSL version][Upgrade OpenSSL] shipped with the platform. +* Added [Multi-domain certificates support][]. +* A [CortexManagementUser for RabbitMQ is now created during upgrade][New CortexManagementUser added to manage RabbitMQ queues]. +* [Server-side validation added to {{% ctx %}} Gateway API][] to prevent [Path Traversal][] attacks. +* Removal of the [refresh token cookie on sign out][remove refresh token cookie on sign out]. + +## Improved Usability + +The usability of the platform has been improved by: + +* Renaming the [Flows Charm to Dev and changing the icon][Rename Flows Charm to Dev and change icon]. +* Renaming the [Settings Charm to Admin and changing the icon][Rename Settings Charm to Admin and change icon]. + +## Improved Third-Party Support + +Third-party Support has been improved by [upgrading the platform to .NET 8][Upgrade to .NET 8]. + +## Improved Installation + +Installation when [files are blocked by the operating system][Support installation when files are blocked by the operating system] due to the `Zone.Identifier` is now supported. + +## Improved Upgrade + +The upgrade process has been improved by: + +* [Supporting upgrade when files are blocked by the operating system][Support upgrade when files are blocked by the operating system]. +* Upgrading the [Execution Service when the engine version is unchanged][Execution Service is upgraded when the engine version is unchanged]. +* [Handling of the Execution Services lifecycle events][]. + +## Improved Documentation + +The documentation includes updates related to: + +* New concepts such as [Process and Activity][Process and Activity Documentation] as well as [Decomposition of Output properties][]. +* [Preventing deadlocks when using semaphores][Prevent deadlocks when using semaphores]. +* [Updating screenshots][screenshots updated] to reflect the new branding. +* [Flow compatibility version][Flow compatibility version introduced] being added to the release notes. +* [General improvements to the documentation][]. + +For a full list of what has been introduced in this release, please see the [2024.9 Release Notes][] + +[Release]: {{< url path="Cortex.Reference.Glossary.P-T.Release" version="2024.9" >}} +[2024.7]: {{< url path="Cortex.Blogs.Releases.2024.7.MainDoc" version="2024.9" >}} + +[Capability]: {{< ref "#improved-capability" >}} +[Observability]: {{< ref "#improved-observability" >}} +[Scalability]: {{< ref "#improved-scalability" >}} +[Security]: {{< ref "#improved-security" >}} +[Usability]: {{< ref "#improved-usability" >}} +[Third-Party Support]: {{< ref "#improved-third-party-support" >}} +[Installation]: {{< ref "#improved-installation" >}} +[Upgrade]: {{< ref "#improved-upgrade" >}} +[Documentation]: {{< ref "#improved-documentation" >}} + +[Process and Activity]: {{< url path="Cortex.Blogs.Releases.2024.9.ProcessAndActivity" version="2024.9" >}} +[Saving Output Properties to multiple variables]: {{< url path="Cortex.Blogs.Releases.2024.9.SaveOutputPropertiesToMultipleVariables" version="2024.9" >}} +[execution context variable]: {{< url path="Cortex.Blogs.Releases.2024.9.ExecutionContextVariable" version="2024.9" >}} +[Proxy for the {{% ctx %}} 7 Flow API]: {{< url path="Cortex.Blogs.Releases.2024.9.ProxyForTheCortex7FlowApi" version="2024.9" >}} +[Logging added to blocks that communicate with external systems]: {{< url path="Cortex.Blogs.Releases.2024.9.LoggingAddedToBlocksThatCommunicateWithExternalSystems" version="2024.9" >}} +[Reduction of total number of NServiceBus endpoints and RabbitMQ queues]: {{< url path="Cortex.Blogs.Releases.2024.9.ReductionOfTotalNumberOfNServiceBusEndpointsAndRabbitMQQueues" version="2024.9" >}} +[Upgrade OpenSSL]: {{< url path="Cortex.Blogs.Releases.2024.9.UpgradeOpenSSL" version="2024.9" >}} +[Multi-domain certificates support]: {{< url path="Cortex.Blogs.Releases.2024.9.MultiDomainCertificatesSupport" version="2024.9" >}} +[New CortexManagementUser added to manage RabbitMQ queues]: {{< url path="Cortex.Blogs.Releases.2024.9.NewCortexManagementUserAddedToManageRabbitMQQueues" version="2024.9" >}} +[Server-side validation added to {{% ctx %}} Gateway API]: {{< url path="Cortex.Blogs.Releases.2024.9.ServerSideValidationAddedToCortexGatewayAPI" version="2024.9" >}} +[Remove refresh token cookie on sign out]: {{< url path="Cortex.Blogs.Releases.2024.9.RemoveRefreshTokenCookieOnSign" version="2024.9" >}} +[Rename Flows Charm to Dev and change icon]: {{< url path="Cortex.Blogs.Releases.2024.9.RenameFlowsCharmToDevAndChangeIcon" version="2024.9" >}} +[Rename Settings Charm to Admin and change icon]: {{< url path="Cortex.Blogs.Releases.2024.9.RenameSettingsCharmToAdminAndChangeIcon" version="2024.9" >}} +[Upgrade to .NET 8]: {{< url path="Cortex.Blogs.Releases.2024.9.UpgradeToNet8" version="2024.9" >}} +[Support installation when files are blocked by the operating system]: {{< url path="Cortex.Blogs.Releases.2024.9.SupportInstallationWhenFilesAreBlockedByTheOperatingSystem" version="2024.9" >}} +[Support upgrade when files are blocked by the operating system]: {{< url path="Cortex.Blogs.Releases.2024.9.SupportUpgradeWhenFilesAreBlockedByTheOperatingSystem" version="2024.9" >}} +[Execution Service is upgraded when the engine version is unchanged]: {{< url path="Cortex.Blogs.Releases.2024.9.ExecutionServiceIsUpgradedWhenTheEngineVersionIsUnchanged" version="2024.9" >}} +[Handling of the Execution Services lifecycle events]: {{< url path="Cortex.Blogs.Releases.2024.9.HandlingOfTheExecutionServicesLifecycleEvents" version="2024.9" >}} +[Process and Activity Documentation]: {{< url path="Cortex.Blogs.Releases.2024.9.ProcessAndActivityDocumentation" version="2024.9" >}} +[Decomposition of Output properties]: {{< url path="Cortex.Blogs.Releases.2024.9.DecompositionOfOutputProperties" version="2024.9" >}} +[Prevent deadlocks when using semaphores]: {{< url path="Cortex.Blogs.Releases.2024.9.PreventDeadlocksWhenUsingSemaphores" version="2024.9" >}} +[Screenshots updated]: {{< url path="Cortex.Blogs.Releases.2024.9.ScreenshotsUpdated" >}} +[Flow compatibility version introduced]: {{< url path="Cortex.Blogs.Releases.2024.9.FlowCompatibilityVersionIntroduced" version="2024.9" >}} +[General improvements to the documentation]: {{< url path="Cortex.Blogs.Releases.2024.9.GeneralImprovementsToTheDocumentation" version="2024.9" >}} + +[2024.9 Release Notes]: {{< url path="Cortex.Blogs.Releases.2024.9.MainDoc" version="2024.9" >}} + +[Flow]: {{< url path="Cortex.Reference.Concepts.Fundamentals.Flows.WhatIsAFlow.MainDoc" version="2024.9" >}} +[Path Traversal]: {{< url path="Owasp.PathTraversal.MainDoc" version="2024.9" >}} diff --git a/content/en/docs/2024.11/_index.md b/content/en/docs/2024.11/_index.md new file mode 100644 index 000000000..a1f2f156a --- /dev/null +++ b/content/en/docs/2024.11/_index.md @@ -0,0 +1,6 @@ +--- +title: "2024.11" +linkTitle: "2024.11" +description: "Product documentation for the {{% ctx %}} automation platform, including guides, tutorials and reference documentation." +weight: 989 +--- diff --git a/content/en/docs/2024.11/_shared/_index.md b/content/en/docs/2024.11/_shared/_index.md new file mode 100644 index 000000000..3d65eaa0f --- /dev/null +++ b/content/en/docs/2024.11/_shared/_index.md @@ -0,0 +1,3 @@ +--- +headless: true +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/advanced/ssl-best-practices.md b/content/en/docs/2024.11/_shared/advanced/ssl-best-practices.md new file mode 100644 index 000000000..a0d3cf414 --- /dev/null +++ b/content/en/docs/2024.11/_shared/advanced/ssl-best-practices.md @@ -0,0 +1,79 @@ +These are non-compulsory security measures, recommended to be applied to the servers, in order to prevent potential attacks that exploit known industry security vulnerabilities. + +Applying these measures may impact other applications running on your server. Therefore, it is your responsibility to ensure that other applications and their clients will not be affected by the changes. + +A collection of registry settings can be applied during installation to guarantee your server is only using the recommended encryption algorithms and TLS protocols: + +| Type | Name | Enabled | +| --------------------- | ----------------------------------------| ----------- | +| Ciphers | AES 128/128 | ✓ | +| | AES 256/256 | ✓ | +| | Triple DES 168 | ✓ | +| | DES 56/56 | ✕ | +| | NULL | ✕ | +| | RC2 128/128 | ✕ | +| | RC2 40/128 | ✕ | +| | RC2 56/128 | ✕ | +| | RC4 128/128 | ✕ | +| | RC4 40/128 | ✕ | +| | RC4 56/128 | ✕ | +| | RC4 64/128 | ✕ | +| | | | +| Hashes | MD5 | ✕ | +| | SHA | ✓ | +| | SHA256 | ✓ | +| | SHA384 | ✓ | +| | SHA512 | ✓ | +| | | | +| KeyExchangeAlgorithms | Diffie-Hellman | ✓ | +| | ECDH | ✓ | +| | PKCS | ✓ | +| | | | +| Protocols | Multi-Protocol Unified Hello | ✕ | +| | PCT 1.0 | ✕ | +| | SSL 2.0 | ✕ | +| | SSL 3.0 | ✕ | +| | TLS 1.0 | ✕ | +| | TLS 1.1 | ✕ | +| | TLS 1.2 | ✓ | +| | | | +| Cipher Suites | TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 | ✓ | +| | TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 | ✓ | +| | TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 | ✕ | +| | TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA25 | ✕ | +| | TLS_DHE_RSA_WITH_AES_256_GCM_SHA384 | ✕ | +| | TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 | ✕ | +| | TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384 | ✕ | +| | TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 | ✕ | +| | TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 | ✕ | +| | TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 | ✕ | +| | TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA | ✕ | +| | TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA | ✕ | +| | TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA | ✕ | +| | TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA | ✕ | +| | TLS_DHE_RSA_WITH_AES_256_CBC_SHA | ✕ | +| | TLS_DHE_RSA_WITH_AES_128_CBC_SHA | ✕ | +| | TLS_RSA_WITH_AES_256_GCM_SHA384 | ✕ | +| | TLS_RSA_WITH_AES_128_GCM_SHA256 | ✕ | +| | TLS_RSA_WITH_AES_256_CBC_SHA256 | ✕ | +| | TLS_RSA_WITH_AES_128_CBC_SHA256 | ✕ | +| | TLS_RSA_WITH_AES_256_CBC_SHA | ✕ | +| | TLS_RSA_WITH_AES_128_CBC_SHA | ✕ | +| | TLS_RSA_WITH_3DES_EDE_CBC_SHA | ✕ | +| | TLS_DHE_DSS_WITH_AES_256_CBC_SHA256 | ✕ | +| | TLS_DHE_DSS_WITH_AES_128_CBC_SHA256 | ✕ | +| | TLS_DHE_DSS_WITH_AES_256_CBC_SHA | ✕ | +| | TLS_DHE_DSS_WITH_AES_128_CBC_SHA | ✕ | +| | TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA | ✕ | +| | TLS_RSA_WITH_RC4_128_SHA | ✕ | +| | TLS_RSA_WITH_RC4_128_MD5 | ✕ | +| | TLS_RSA_WITH_NULL_SHA256 | ✕ | +| | TLS_RSA_WITH_NULL_SHA | ✕ | +| | TLS_PSK_WITH_AES_256_GCM_SHA384 | ✕ | +| | TLS_PSK_WITH_AES_128_GCM_SHA256 | ✕ | +| | TLS_PSK_WITH_AES_256_CBC_SHA384 | ✕ | +| | TLS_PSK_WITH_AES_128_CBC_SHA256 | ✕ | +| | TLS_PSK_WITH_NULL_SHA384 | ✕ | +| | TLS_PSK_WITH_NULL_SHA256 | ✕ | + +{{% alert type="warning" title="Warning" %}}Disabling specific TLS versions or specific Cipher Suites can have impact on {{% ctx %}} components themselves as well as their communication capabilities with third party systems and services, e.g. Execution Service executing flows with blocks which communicate with 3rd parties via PowerShell or REST. All parties communicating together must support a shared protocol version and cipher suite, otherwise they will not be able to establish a secure communication link between each other.{{% /alert %}} diff --git a/content/en/docs/2024.11/_shared/architecture/components/multi-server.md b/content/en/docs/2024.11/_shared/architecture/components/multi-server.md new file mode 100644 index 000000000..216927df2 --- /dev/null +++ b/content/en/docs/2024.11/_shared/architecture/components/multi-server.md @@ -0,0 +1,53 @@ +| Component | Purpose | Required/Optional | Server Role | +|--------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------|-----------------------------|--------------------------------------------| +| [{{% ctx %}} Gateway][Gateway Guide] | {{< section "/architecture/components/purpose/cortex-gateway.md" >}} | Required | Web Application Server | +| [{{% ctx %}} Studio][Studio Guide] | {{< section "/architecture/components/purpose/cortex-studio.md" >}} | Required | Web Application Server | +| [{{% ctx %}} Innovation Core Application][Innovation Core Application] | {{< section "/architecture/components/purpose/cortex-innovation-core-application.md" >}} | Required | Application Server | +|     > [API Gateway Service][API Gateway Service] | {{< section "/architecture/components/purpose/api-gateway-service.md" >}} | - | - | +|     > [Authorisation Service][Authorisation Service] | {{< section "/architecture/components/purpose/authorisation-service.md" >}} | - | - | +|     > [Concurrency Management Service][Concurrency Management Service] | {{< section "/architecture/components/purpose/concurrency-management-service.md" >}} | - | - | +|     > [Configuration Management Service][Configuration Management Service] | {{< section "/architecture/components/purpose/configuration-management-service.md" >}} | - | - | +|     > [Data Storage Service][Data Storage Service] | {{< section "/architecture/components/purpose/data-storage-service.md" >}} | - | - | +|     > [Execution Management Service][Execution Management Service] | {{< section "/architecture/components/purpose/execution-management-service.md">}} | - | - | +|     > [Licence Management Service][Licence Management Service] | {{< section "/architecture/components/purpose/licence-management-service.md" >}} | - | - | +|     > [Listeners Service][Listeners Service] | {{< section "/architecture/components/purpose/listeners-service.md" >}} | - | - | +|     > [Package Management Service][Package Management Service] | {{< section "/architecture/components/purpose/package-management-service.md" >}} | - | - | +|     > [Provisioning Service][Provisioning Service] | {{< section "/architecture/components/purpose/provisioning-service.md" >}} | - | - | +|     > [Scheduling Service][Scheduling Service] | {{< section "/architecture/components/purpose/scheduling-service.md" >}} | - | - | +|     > [Triggers Service][Triggers Service] | {{< section "/architecture/components/purpose/triggers-service.md" >}} | - | - | +| [{{% ctx %}} Innovation Execution Application][Innovation Execution Application] | {{< section "/architecture/components/purpose/cortex-innovation-execution-application.md" >}} | Required | Application Server | +|     > [Execution Service][Execution Service] | {{< section "/architecture/components/purpose/execution-service.md" >}} | - | - | +| {{% ctx %}} Block Packages | {{< section "/architecture/components/purpose/cortex-block-packages.md" >}} | Required | Web Application Server, Application Server | +| [Microsoft Service Fabric][] | {{< section "/architecture/components/purpose/ms-service-fabric.md" >}} | Required | Application Server | +| [Microsoft Service Fabric Explorer][] | {{< section "/architecture/components/purpose/ms-service-fabric-explorer.md" >}} | Required | Application Server | +| [Particular NServiceBus][] | {{< section "/architecture/components/purpose/particular-nservicebus.md" >}} | Required | Application Server | +| [Pivotal RabbitMQ][] | {{< section "/architecture/components/purpose/pivotal-rabbitmq.md" >}} | Required | Application Server | +| [Erlang OTP][] | {{< section "/architecture/components/purpose/erlang-otp.md" >}} | Required | Application Server | +| [gobetween][] | {{< section "/architecture/components/purpose/gobetween.md" >}} | Required | Load Balancer | +| [NSSM][] | {{< section "/architecture/components/purpose/nssm.md" >}} | Required | Load Balancer | + +[Innovation Core Application]: {{< url path="Cortex.Guides.CortexInnovation.CoreApplication.MainDoc" >}} +[Innovation Execution Application]: {{< url path="Cortex.Guides.CortexInnovation.ExecutionApplication.MainDoc" >}} + +[API Gateway Service]: {{< url path="Cortex.Guides.CortexInnovation.CoreApplication.Services.ApiGatewayService.MainDoc" >}} +[Authorisation Service]: {{< url path="Cortex.Guides.CortexInnovation.CoreApplication.Services.AuthorisationService.MainDoc" >}} +[Concurrency Management Service]: {{< url path="Cortex.Guides.CortexInnovation.CoreApplication.Services.ConcurrencyManagementService.MainDoc" >}} +[Configuration Management Service]: {{< url path="Cortex.Guides.CortexInnovation.CoreApplication.Services.ConfigurationManagementService.MainDoc" >}} +[Data Storage Service]: {{< url path="Cortex.Guides.CortexInnovation.CoreApplication.Services.DataStorageService.MainDoc" >}} +[Execution Management Service]: {{< url path="Cortex.Guides.CortexInnovation.CoreApplication.Services.ExecutionManagementService.MainDoc" >}} +[Execution Service]: {{< url path="Cortex.Guides.CortexInnovation.ExecutionApplication.Services.ExecutionService.MainDoc" >}} +[Licence Management Service]: {{< url path="Cortex.Guides.CortexInnovation.CoreApplication.Services.LicenceManagementService.MainDoc" >}} +[Listeners Service]: {{< url path="Cortex.Guides.CortexInnovation.CoreApplication.Services.ListenersService.MainDoc" >}} +[Package Management Service]: {{< url path="Cortex.Guides.CortexInnovation.CoreApplication.Services.PackageManagementService.MainDoc" >}} +[Provisioning Service]: {{< url path="Cortex.Guides.CortexInnovation.CoreApplication.Services.ProvisioningService.MainDoc" >}} +[Scheduling Service]: {{< url path="Cortex.Guides.CortexInnovation.CoreApplication.Services.SchedulingService.MainDoc" >}} +[Triggers Service]: {{< url path="Cortex.Guides.CortexInnovation.CoreApplication.Services.TriggersService.MainDoc" >}} +[Gateway Guide]: {{< url path="Cortex.Guides.Gateway.MainDoc" >}} +[Studio Guide]: {{< url path="Cortex.Guides.Studio.MainDoc" >}} +[Microsoft Service Fabric]: {{< url path="MSDocs.ServiceFabric.MainDoc" >}} +[Microsoft Service Fabric Explorer]: {{< url path="MSDocs.ServiceFabric.Explorer" >}} +[Particular NServiceBus]: {{< url path="Particular.NServiceBus.MainDoc" >}} +[Pivotal RabbitMQ]: {{< url path="RabbitMQ.MainDoc" >}} +[Erlang OTP]: {{< url path="ErlangOTP.MainDoc" >}} +[gobetween]: {{< url path="GoBetween.MainDoc" >}} +[NSSM]: {{< url path="NSSM.MainDoc" >}} diff --git a/content/en/docs/2024.11/_shared/architecture/components/node-details.md b/content/en/docs/2024.11/_shared/architecture/components/node-details.md new file mode 100644 index 000000000..368ebcd10 --- /dev/null +++ b/content/en/docs/2024.11/_shared/architecture/components/node-details.md @@ -0,0 +1,3 @@ +Where a node contains the following: + +{{< figure src="/images/editable/Cortex Innovation Node Details.png" class="centre" title="Node details" >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/architecture/components/purpose/api-gateway-service.md b/content/en/docs/2024.11/_shared/architecture/components/purpose/api-gateway-service.md new file mode 100644 index 000000000..6dd993c28 --- /dev/null +++ b/content/en/docs/2024.11/_shared/architecture/components/purpose/api-gateway-service.md @@ -0,0 +1 @@ +Application Service that routes client requests to the correct distributed {{% ctx %}} Innovation services. \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/architecture/components/purpose/authorisation-service.md b/content/en/docs/2024.11/_shared/architecture/components/purpose/authorisation-service.md new file mode 100644 index 000000000..7116f4a2a --- /dev/null +++ b/content/en/docs/2024.11/_shared/architecture/components/purpose/authorisation-service.md @@ -0,0 +1 @@ +Application Service that authorises users to send API requests. \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/architecture/components/purpose/concurrency-management-service.md b/content/en/docs/2024.11/_shared/architecture/components/purpose/concurrency-management-service.md new file mode 100644 index 000000000..1eda9fba5 --- /dev/null +++ b/content/en/docs/2024.11/_shared/architecture/components/purpose/concurrency-management-service.md @@ -0,0 +1 @@ +Application Service that stores and manages concurrent access to resources used by executions within the Innovation platform. \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/architecture/components/purpose/configuration-management-service.md b/content/en/docs/2024.11/_shared/architecture/components/purpose/configuration-management-service.md new file mode 100644 index 000000000..a30ef1f04 --- /dev/null +++ b/content/en/docs/2024.11/_shared/architecture/components/purpose/configuration-management-service.md @@ -0,0 +1 @@ +Application Service that stores and distributes configuration data to services within the Innovation platform. \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/architecture/components/purpose/cortex-block-packages.md b/content/en/docs/2024.11/_shared/architecture/components/purpose/cortex-block-packages.md new file mode 100644 index 000000000..593d8b8a1 --- /dev/null +++ b/content/en/docs/2024.11/_shared/architecture/components/purpose/cortex-block-packages.md @@ -0,0 +1 @@ +A set of files that contain the blocks that users can use to build flows. Used by the Execution Service. \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/architecture/components/purpose/cortex-gateway-databases.md b/content/en/docs/2024.11/_shared/architecture/components/purpose/cortex-gateway-databases.md new file mode 100644 index 000000000..45380eb0d --- /dev/null +++ b/content/en/docs/2024.11/_shared/architecture/components/purpose/cortex-gateway-databases.md @@ -0,0 +1 @@ +A set of databases created automatically by Gateway which are used for storing data related to user roles, flows, etc. Hopefully, we can remove the need for Gateway Databases in the next release. \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/architecture/components/purpose/cortex-gateway.md b/content/en/docs/2024.11/_shared/architecture/components/purpose/cortex-gateway.md new file mode 100644 index 000000000..fa2132d34 --- /dev/null +++ b/content/en/docs/2024.11/_shared/architecture/components/purpose/cortex-gateway.md @@ -0,0 +1 @@ +Web portal that hosts applications for creating automation solutions and managing their full life-cycle, including design, development, testing, deployment, monitoring, maintenance and ultimately end-of-life. \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/architecture/components/purpose/cortex-innovation-core-application.md b/content/en/docs/2024.11/_shared/architecture/components/purpose/cortex-innovation-core-application.md new file mode 100644 index 000000000..61d36e55e --- /dev/null +++ b/content/en/docs/2024.11/_shared/architecture/components/purpose/cortex-innovation-core-application.md @@ -0,0 +1 @@ +The Service Fabric application that is hosting the core services required by {{% ctx %}} Innovation. \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/architecture/components/purpose/cortex-innovation-execution-application.md b/content/en/docs/2024.11/_shared/architecture/components/purpose/cortex-innovation-execution-application.md new file mode 100644 index 000000000..5a72f451a --- /dev/null +++ b/content/en/docs/2024.11/_shared/architecture/components/purpose/cortex-innovation-execution-application.md @@ -0,0 +1 @@ +The Service Fabric application that is hosting the services executing {{% ctx %}} Innovation automation flows. \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/architecture/components/purpose/cortex-studio.md b/content/en/docs/2024.11/_shared/architecture/components/purpose/cortex-studio.md new file mode 100644 index 000000000..c93afb1e7 --- /dev/null +++ b/content/en/docs/2024.11/_shared/architecture/components/purpose/cortex-studio.md @@ -0,0 +1 @@ +Application hosted in {{% ctx %}} Gateway that provides the graphical, low-code environment for developing, testing, versioning, publishing and managing the full life-cycle of automation solutions. \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/architecture/components/purpose/data-storage-service.md b/content/en/docs/2024.11/_shared/architecture/components/purpose/data-storage-service.md new file mode 100644 index 000000000..71006dac1 --- /dev/null +++ b/content/en/docs/2024.11/_shared/architecture/components/purpose/data-storage-service.md @@ -0,0 +1 @@ +Application Service that can be used to store and retrieve data for executions within in the Innovation platform. \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/architecture/components/purpose/erlang-otp.md b/content/en/docs/2024.11/_shared/architecture/components/purpose/erlang-otp.md new file mode 100644 index 000000000..e246171ce --- /dev/null +++ b/content/en/docs/2024.11/_shared/architecture/components/purpose/erlang-otp.md @@ -0,0 +1 @@ +Erlang run-time required by the RabbitMQ message broker. \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/architecture/components/purpose/execution-management-service.md b/content/en/docs/2024.11/_shared/architecture/components/purpose/execution-management-service.md new file mode 100644 index 000000000..6301f12db --- /dev/null +++ b/content/en/docs/2024.11/_shared/architecture/components/purpose/execution-management-service.md @@ -0,0 +1 @@ +Application Service that stores information related to executions currently running within the Innovation platform. \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/architecture/components/purpose/execution-service.md b/content/en/docs/2024.11/_shared/architecture/components/purpose/execution-service.md new file mode 100644 index 000000000..f8ffead92 --- /dev/null +++ b/content/en/docs/2024.11/_shared/architecture/components/purpose/execution-service.md @@ -0,0 +1 @@ +Application Service that executes automation flows. \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/architecture/components/purpose/gobetween.md b/content/en/docs/2024.11/_shared/architecture/components/purpose/gobetween.md new file mode 100644 index 000000000..729d4e358 --- /dev/null +++ b/content/en/docs/2024.11/_shared/architecture/components/purpose/gobetween.md @@ -0,0 +1 @@ +L4 load balancer and reverse proxy used to load balance requests between clustered instances of {{% ctx %}} Innovation services. \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/architecture/components/purpose/licence-management-service.md b/content/en/docs/2024.11/_shared/architecture/components/purpose/licence-management-service.md new file mode 100644 index 000000000..5a9f8cd5b --- /dev/null +++ b/content/en/docs/2024.11/_shared/architecture/components/purpose/licence-management-service.md @@ -0,0 +1 @@ +Application Service that validates and distributes licences to services within the Innovation platform. \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/architecture/components/purpose/listeners-service.md b/content/en/docs/2024.11/_shared/architecture/components/purpose/listeners-service.md new file mode 100644 index 000000000..225dd2dac --- /dev/null +++ b/content/en/docs/2024.11/_shared/architecture/components/purpose/listeners-service.md @@ -0,0 +1 @@ +Application Service that accepts incoming connections that could trigger executions. \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/architecture/components/purpose/ms-service-fabric-explorer.md b/content/en/docs/2024.11/_shared/architecture/components/purpose/ms-service-fabric-explorer.md new file mode 100644 index 000000000..087f922e1 --- /dev/null +++ b/content/en/docs/2024.11/_shared/architecture/components/purpose/ms-service-fabric-explorer.md @@ -0,0 +1 @@ +Web portal for monitoring and managing the Service Fabric instance that automation solutions are deployed to. \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/architecture/components/purpose/ms-service-fabric.md b/content/en/docs/2024.11/_shared/architecture/components/purpose/ms-service-fabric.md new file mode 100644 index 000000000..ad370fe37 --- /dev/null +++ b/content/en/docs/2024.11/_shared/architecture/components/purpose/ms-service-fabric.md @@ -0,0 +1 @@ +Distributed systems platform that hosts the {{% ctx %}} Innovation services where automation solutions are deployed to; provides scalable, reliable and manageable enterprise-grade High Availability (HA) using clustering. \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/architecture/components/purpose/ms-sql-server.md b/content/en/docs/2024.11/_shared/architecture/components/purpose/ms-sql-server.md new file mode 100644 index 000000000..7a31c1df7 --- /dev/null +++ b/content/en/docs/2024.11/_shared/architecture/components/purpose/ms-sql-server.md @@ -0,0 +1 @@ +Required by {{% ctx %}} Gateway for creating and storing the Gateway Databases. Hopefully, we can remove the need for SQL Server in the next release. \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/architecture/components/purpose/nssm.md b/content/en/docs/2024.11/_shared/architecture/components/purpose/nssm.md new file mode 100644 index 000000000..9adb741d2 --- /dev/null +++ b/content/en/docs/2024.11/_shared/architecture/components/purpose/nssm.md @@ -0,0 +1 @@ +Windows Service Manager that hosts the gobetween load balancer application as a Windows Service. \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/architecture/components/purpose/package-management-service.md b/content/en/docs/2024.11/_shared/architecture/components/purpose/package-management-service.md new file mode 100644 index 000000000..ef521695b --- /dev/null +++ b/content/en/docs/2024.11/_shared/architecture/components/purpose/package-management-service.md @@ -0,0 +1 @@ +Application Service that handles publishing and unpublishing packages. It also stores package configuration. \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/architecture/components/purpose/particular-nservicebus.md b/content/en/docs/2024.11/_shared/architecture/components/purpose/particular-nservicebus.md new file mode 100644 index 000000000..dbc0f9641 --- /dev/null +++ b/content/en/docs/2024.11/_shared/architecture/components/purpose/particular-nservicebus.md @@ -0,0 +1 @@ +Messaging platform enabling scalable, reliable and flexible asynchronous messaging between distributed {{% ctx %}} Innovation services. \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/architecture/components/purpose/pivotal-rabbitmq.md b/content/en/docs/2024.11/_shared/architecture/components/purpose/pivotal-rabbitmq.md new file mode 100644 index 000000000..b7bfe9a74 --- /dev/null +++ b/content/en/docs/2024.11/_shared/architecture/components/purpose/pivotal-rabbitmq.md @@ -0,0 +1 @@ +Message broker used by the NServiceBus messaging platform to transport messages asynchronously between distributed {{% ctx %}} Innovation services using publish/subscribe mechanism. \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/architecture/components/purpose/provisioning-service.md b/content/en/docs/2024.11/_shared/architecture/components/purpose/provisioning-service.md new file mode 100644 index 000000000..edec61a76 --- /dev/null +++ b/content/en/docs/2024.11/_shared/architecture/components/purpose/provisioning-service.md @@ -0,0 +1 @@ +Application Service that provisions new services on demand. For example, a new Execution Service is provisioned when a package is published with a new version of block packages. \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/architecture/components/purpose/scheduling-service.md b/content/en/docs/2024.11/_shared/architecture/components/purpose/scheduling-service.md new file mode 100644 index 000000000..7bb7e0508 --- /dev/null +++ b/content/en/docs/2024.11/_shared/architecture/components/purpose/scheduling-service.md @@ -0,0 +1 @@ +Application Service that can be used to schedule executions within the Innovation platform. \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/architecture/components/purpose/triggers-service.md b/content/en/docs/2024.11/_shared/architecture/components/purpose/triggers-service.md new file mode 100644 index 000000000..bcf48f29e --- /dev/null +++ b/content/en/docs/2024.11/_shared/architecture/components/purpose/triggers-service.md @@ -0,0 +1 @@ +Application Service that handles automatically triggering executions within the Innovation platform. \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/architecture/components/single-server.md b/content/en/docs/2024.11/_shared/architecture/components/single-server.md new file mode 100644 index 000000000..3bba0f94d --- /dev/null +++ b/content/en/docs/2024.11/_shared/architecture/components/single-server.md @@ -0,0 +1,49 @@ +| Component | Purpose | Required/Optional | Server Role | +|--------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------|-----------------------------|--------------------------------------------| +| [{{% ctx %}} Gateway][Gateway Guide] | {{< section "/architecture/components/purpose/cortex-gateway.md">}} | Required | Web Application Server | +| [{{% ctx %}} Studio][Studio Guide] | {{< section "/architecture/components/purpose/cortex-studio.md" >}} | Required | Web Application Server | +| [{{% ctx %}} Innovation Core Application][Innovation Core Application] | {{< section "/architecture/components/purpose/cortex-innovation-core-application.md" >}} | Required | Application Server | +|     > [API Gateway Service][API Gateway Service] | {{< section "/architecture/components/purpose/api-gateway-service.md" >}} | - | - | +|     > [Authorisation Service][Authorisation Service] | {{< section "/architecture/components/purpose/authorisation-service.md" >}} | - | - | +|     > [Concurrency Management Service][Concurrency Management Service] | {{< section "/architecture/components/purpose/concurrency-management-service.md" >}} | - | - | +|     > [Configuration Management Service][Configuration Management Service] | {{< section "/architecture/components/purpose/configuration-management-service.md" >}} | - | - | +|     > [Data Storage Service][Data Storage Service] | {{< section "/architecture/components/purpose/data-storage-service.md" >}} | - | - | +|     > [Execution Management Service][Execution Management Service] | {{< section "/architecture/components/purpose/execution-management-service.md">}} | - | - | +|     > [Licence Management Service][Licence Management Service] | {{< section "/architecture/components/purpose/licence-management-service.md" >}} | - | - | +|     > [Listeners Service][Listeners Service] | {{< section "/architecture/components/purpose/listeners-service.md" >}} | - | - | +|     > [Package Management Service][Package Management Service] | {{< section "/architecture/components/purpose/package-management-service.md" >}} | - | - | +|     > [Provisioning Service][Provisioning Service] | {{< section "/architecture/components/purpose/provisioning-service.md" >}} | - | - | +|     > [Scheduling Service][Scheduling Service] | {{< section "/architecture/components/purpose/scheduling-service.md" >}} | - | - | +|     > [Triggers Service][Triggers Service] | {{< section "/architecture/components/purpose/triggers-service.md" >}} | - | - | +| [{{% ctx %}} Innovation Execution Application][Innovation Execution Application] | {{< section "/architecture/components/purpose/cortex-innovation-execution-application.md" >}} | Required | Application Server | +|     > [Execution Service][Execution Service] | {{< section "/architecture/components/purpose/execution-service.md" >}} | - | - | +| {{% ctx %}} Block Packages | {{< section "/architecture/components/purpose/cortex-block-packages.md" >}} | Required | Web Application Server, Application Server | +| [Microsoft Service Fabric][] | {{< section "/architecture/components/purpose/ms-service-fabric.md" >}} | Required | Application Server | +| [Microsoft Service Fabric Explorer][] | {{< section "/architecture/components/purpose/ms-service-fabric-explorer.md" >}} | Required | Application Server | +| [Particular NServiceBus][] | {{< section "/architecture/components/purpose/particular-nservicebus.md" >}} | Required | Application Server | +| [Pivotal RabbitMQ][] | {{< section "/architecture/components/purpose/pivotal-rabbitmq.md" >}} | Required | Application Server | +| [Erlang OTP][] | {{< section "/architecture/components/purpose/erlang-otp.md" >}} | Required | Application Server | + +[Innovation Core Application]: {{< url path="Cortex.Guides.CortexInnovation.CoreApplication.MainDoc" >}} +[Innovation Execution Application]: {{< url path="Cortex.Guides.CortexInnovation.ExecutionApplication.MainDoc" >}} + +[API Gateway Service]: {{< url path="Cortex.Guides.CortexInnovation.CoreApplication.Services.ApiGatewayService.MainDoc" >}} +[Authorisation Service]: {{< url path="Cortex.Guides.CortexInnovation.CoreApplication.Services.AuthorisationService.MainDoc" >}} +[Concurrency Management Service]: {{< url path="Cortex.Guides.CortexInnovation.CoreApplication.Services.ConcurrencyManagementService.MainDoc" >}} +[Configuration Management Service]: {{< url path="Cortex.Guides.CortexInnovation.CoreApplication.Services.ConfigurationManagementService.MainDoc" >}} +[Data Storage Service]: {{< url path="Cortex.Guides.CortexInnovation.CoreApplication.Services.DataStorageService.MainDoc" >}} +[Execution Management Service]: {{< url path="Cortex.Guides.CortexInnovation.CoreApplication.Services.ExecutionManagementService.MainDoc" >}} +[Execution Service]: {{< url path="Cortex.Guides.CortexInnovation.ExecutionApplication.Services.ExecutionService.MainDoc" >}} +[Licence Management Service]: {{< url path="Cortex.Guides.CortexInnovation.CoreApplication.Services.LicenceManagementService.MainDoc" >}} +[Listeners Service]: {{< url path="Cortex.Guides.CortexInnovation.CoreApplication.Services.ListenersService.MainDoc" >}} +[Package Management Service]: {{< url path="Cortex.Guides.CortexInnovation.CoreApplication.Services.PackageManagementService.MainDoc" >}} +[Provisioning Service]: {{< url path="Cortex.Guides.CortexInnovation.CoreApplication.Services.ProvisioningService.MainDoc" >}} +[Scheduling Service]: {{< url path="Cortex.Guides.CortexInnovation.CoreApplication.Services.SchedulingService.MainDoc" >}} +[Triggers Service]: {{< url path="Cortex.Guides.CortexInnovation.CoreApplication.Services.TriggersService.MainDoc" >}} +[Gateway Guide]: {{< url path="Cortex.Guides.Gateway.MainDoc" >}} +[Studio Guide]: {{< url path="Cortex.Guides.Studio.MainDoc" >}} +[Microsoft Service Fabric]: {{< url path="MSDocs.ServiceFabric.MainDoc" >}} +[Microsoft Service Fabric Explorer]: {{< url path="MSDocs.ServiceFabric.Explorer" >}} +[Particular NServiceBus]: {{< url path="Particular.NServiceBus.MainDoc" >}} +[Pivotal RabbitMQ]: {{< url path="RabbitMQ.MainDoc" >}} +[Erlang OTP]: {{< url path="ErlangOTP.MainDoc" >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/currentVersion.md b/content/en/docs/2024.11/_shared/currentVersion.md new file mode 100644 index 000000000..839967fda --- /dev/null +++ b/content/en/docs/2024.11/_shared/currentVersion.md @@ -0,0 +1 @@ +2024.11 \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/install-application-server/apply-recommended-security-measures.md b/content/en/docs/2024.11/_shared/install-application-server/apply-recommended-security-measures.md new file mode 100644 index 000000000..045b8aea6 --- /dev/null +++ b/content/en/docs/2024.11/_shared/install-application-server/apply-recommended-security-measures.md @@ -0,0 +1,36 @@ +These are non-compulsory security measures, recommended to be applied to the server, in order to prevent potential attacks that exploit known industry security vulnerabilities. + +Applying these measures may impact other applications running on your server. Therefore, it is your responsibility to ensure that other applications and their clients will not be affected by the changes. + +### Only Use Recommended Encryption Algorithms and TLS Protocols + +A collection of registry settings need to be applied to guarantee your server is only using the recommended encryption algorithms and TLS protocols. Information about these settings can be found at [SSL Best Practices][]. + +{{% alert type="warning" title="Warning" %}}Disabling specific TLS versions or specific Cipher Suites can have impact on {{% ctx %}} components themselves as well as their communication capabilities with third party systems and services, e.g. Execution Service executing flows with blocks which communicate with 3rd parties via PowerShell or REST. All parties communicating together must support a shared protocol version and cipher suite, otherwise they will not be able to establish a secure communication link between each other.{{% /alert %}} + +The settings can be applied by running a script. Be aware that the server will be restarted when the script is run. Apply the settings by following these instructions: + +1. Open a Windows PowerShell (x64) window as administrator. +1. Navigate PowerShell to inside the `Cortex Innovation {{< version >}} - App Server Install Scripts` folder using the following command, modifying the path as necessary: + + ```powershell + cd "C:\Install\Cortex Innovation {{< version >}} - App Server Install Scripts" + ``` + +1. Run the `Cortex.Innovation.Install.SSLBestPractices.ps1` script using the following command: + + ```powershell + .\Cortex.Innovation.Install.SSLBestPractices.ps1 + ``` + + {{% alert title="Note" %}} +To avoid answering all of the prompts `-Override 0` can be added to the end of the script. This will automatically apply all settings and forcibly restart the server. + {{% /alert %}} + + If `-Override 0` has been specified no further steps need to be taken and you can move on to the next section when the server has restarted. +1. To use all the recommended settings click `Apply all` to the first prompt. + + To selectively apply each setting select `Choose which to apply`. Each change will then be prompted with a Yes/No confirmation before applying. +1. Restart the machine when the script asks. + +[SSL Best Practices]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.SSLBestPractices" >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/install-application-server/install-dot-net-framework.md b/content/en/docs/2024.11/_shared/install-application-server/install-dot-net-framework.md new file mode 100644 index 000000000..30964ad61 --- /dev/null +++ b/content/en/docs/2024.11/_shared/install-application-server/install-dot-net-framework.md @@ -0,0 +1,17 @@ +Microsoft Service Fabric requires a minimum of Microsoft .NET Framework 4.7.2 to be installed on the server. + +To find the version of the framework that is installed: + +1. On the Start menu, choose `Run`. +1. In the open box, enter `regedit.exe`. You must have administrative credentials to run regedit.exe. +1. In the Registry Editor, open the subkey `HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full`. +1. If the `Full` subkey is not present, then you do not have the .NET Framework 4.5 or later installed. +1. Check for a `DWORD` value named `Release`. The existence of the Release DWORD indicates the .NET Framework 4.5 or newer has been installed on that computer. If the value is `461808` or over then at least .NET Framework 4.7.2 is installed and no further steps need to be taken. If it is not installed, continue with the following steps to install it. + +To install .NET Framework 4.7.2: + +1. Download the [.NET Framework 4.7.2][NET Framework 472] installer. +1. Double-click on the installer file to run it. +1. Follow the wizard to complete the installation. + +[NET Framework 472]: {{< url path="MSDotNet.Framework472.MainDoc" >}} diff --git a/content/en/docs/2024.11/_shared/install-application-server/make-installation-artefacts-available.md b/content/en/docs/2024.11/_shared/install-application-server/make-installation-artefacts-available.md new file mode 100644 index 000000000..4371a34ad --- /dev/null +++ b/content/en/docs/2024.11/_shared/install-application-server/make-installation-artefacts-available.md @@ -0,0 +1,6 @@ +1. Copy the following artefacts to a folder on the server: + * Cortex Innovation {{< version >}} - Block Packages.zip + * Cortex Innovation {{< version >}} - App Services.zip + * Cortex Innovation {{< version >}} - App Server Install Scripts.zip + +1. Extract the `Cortex Innovation {{< version >}} - App Server Install Scripts.zip` file to a folder with the same name. diff --git a/content/en/docs/2024.11/_shared/install-application-server/multi-server/check-application-services.md b/content/en/docs/2024.11/_shared/install-application-server/multi-server/check-application-services.md new file mode 100644 index 000000000..5bd78e8c6 --- /dev/null +++ b/content/en/docs/2024.11/_shared/install-application-server/multi-server/check-application-services.md @@ -0,0 +1,37 @@ +1. Log on to one of the Application Servers. +1. Import the client certificate, used in the `ClientCertificatePath` parameter of the [Configure Installation Script][] section, to your Current User certificate store. This can be achieved by double-clicking on the client certificate .PFX file and following the wizard. + + If using self-signed certificates, the certificate can be retrieved by using the `Manage Computer Certificates` tool in Windows to export the `CortexServerCertificate` from the `Personal` store as a pfx file and then importing it to the `Current User` store by double-clicking on it and following the wizard. The certificate must also be imported to `Trusted Root Certification Authorities` in the `Local Computer` store. +1. Open a web browser. +1. Navigate to `https://app-server.domain.com:9080/Explorer`, where `app-server.domain.com` is the fully qualified domain name of any Application Server. Replace `9080` with new `httpGatewayEndpointPort` value if it was changed during configuration. + + The screen should resemble that in the following figure: + {{< figure src="/images/Service Fabric Explorer.png" >}} + + The status circles should be entirely green - this indicates that all nodes, services and instances are healthy. Other status pages can be accessed by expanding items in the leftmost pane. Issues can be tracked down to the failing component by expanding items with warning triangles or error icons on. The next few diagrams show the status pages for a healthy system. + + After expanding the application, clicking on any of the services should display a green circle and `Status = Active`: + + {{< figure src="/images/Service Fabric Explorer - Service.png" >}} + + After expanding either of the services, clicking on any of the instances/partitions should display a green circle and `Status = Ready`: + + {{< figure src="/images/Service Fabric Explorer - Instance.png" >}} + + Clicking on any of the nodes at the bottom of the leftmost pane should display a green circle and `Status = Up`: + + {{< figure src="/images/Service Fabric Explorer - Node.png" >}} + + If any warning triangles appear, wait for 5 minutes or so as the cluster may still be starting up. If the cluster looks OK, go to the next section. + + If the warnings persist or anything on the screen goes red, expand the items to find the individual services and instances which have errors or warnings. Warnings should not be ignored as they can indicate that the service can’t start but is still in the retry phase. Error and warning messages should be displayed on the status screens and should indicate what is wrong. + + If no useful message can be seen here, the service log files may contain more information. These can be found on each Application Server at: + + * `%ProgramData%/Cortex/API Gateway Service/Logs` + * `%ProgramData%/Cortex/Execution Service/Logs` + + If no solution can be found, please contact [{{% ctx %}} Service Portal][CORTEX Service Portal] for further assistance. + +[Configure Installation Script]: {{< ref "#configure-installation-script" >}} +[CORTEX Service Portal]: {{< url path="Cortex.ServicePortal.MainDoc" >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/install-application-server/single-server/add-antivirus-exclusions.md b/content/en/docs/2024.11/_shared/install-application-server/single-server/add-antivirus-exclusions.md new file mode 100644 index 000000000..6596c4aa1 --- /dev/null +++ b/content/en/docs/2024.11/_shared/install-application-server/single-server/add-antivirus-exclusions.md @@ -0,0 +1,15 @@ +1. Open a Windows PowerShell (x64) window as administrator. +1. Navigate PowerShell to inside the `Cortex Innovation {{< version >}} - App Server Install Scripts` folder using the following command, modifying the path as necessary: + + ```powershell + cd "C:\Install\Cortex Innovation {{< version >}} - App Server Install Scripts" + ``` + +1. Run the `Cortex.Innovation.Add.WindowsDefenderExclusions.ps1` script using the following command, modifying the `ApplicationServers` value to contain the NETBIOS name or fully qualified domain name of the server: + + ```powershell + .\Cortex.Innovation.Add.WindowsDefenderExclusions.ps1 -ApplicationServers @("app-server1") + ``` + +1. A credentials prompt will appear. Enter credentials of a domain user that is a member of the local Administrators group on the server and press OK. +1. A message will indicate that the script has completed successfully. diff --git a/content/en/docs/2024.11/_shared/install-application-server/single-server/add-innovation-only/configure-installation-script.md b/content/en/docs/2024.11/_shared/install-application-server/single-server/add-innovation-only/configure-installation-script.md new file mode 100644 index 000000000..a84fafefa --- /dev/null +++ b/content/en/docs/2024.11/_shared/install-application-server/single-server/add-innovation-only/configure-installation-script.md @@ -0,0 +1,77 @@ +1. In the `Cortex Innovation {{< version >}} - App Server Install Scripts` folder, locate the `Cortex.Innovation.Install.ps1` script and open it with a text editor. +1. Choose the tab below that matches the configuration for this installation, then update the script to match, changing the parameters according to the details given below: + + {{< tabpane lang="powershell" >}} + {{< tab header="CA Certs" >}} +.\Cortex.Install.ps1 -ConfigFileName Cortex.Innovation.Install.Config.json ` + -AppServicesPath "C:\Install\Cortex Innovation {{< version >}} - App Services.zip" ` + -BlockPackagesPath "C:\Install\Cortex Innovation {{< version >}} - Block Packages.zip" ` + -ApiGatewayBasicAuthUsername "BasicAuthUser" ` + -ApiGatewayBasicAuthPassword '#_065077199197085!212123173135087074174142102155007175102029143220132038175026114248243207204119030125106032237087162060168108135168241247037070081~187087056217118!069132229129134129097089241180163#' ` + -CustomerName "Customer1" ` + -ApplicationServerIPv4Addresses @("192.168.1.1") ` + -ServerCertificatePath "C:\Install\Certificates\cert.pfx" ` + -ServerCertificatePassword '#_186224203199039!168155035100255155162114088105027~037077176064169!055142133197216213014226219148063#' ` + -SkipLoadBalancer ` + -Credential $Credential ` + -LdapConnectionDetails @{ + Host= "LDAP://ldapserver.fqdn.com:389" + UseSsl= $false + Username= "someUserName" + Password= '#_156218162004047!225018081008117174092221250099053~110194001237006!035122107175168133055021013201167#' + } ` + -AcceptEULA:$AcceptEula ` + *>&1 | Tee-Object -FilePath "cortex-app-install-log.txt" + {{< /tab >}} + {{< tab header="Self-Signed Certs" >}} +.\Cortex.Install.ps1 -ConfigFileName Cortex.Innovation.Install.Config.json ` + -AppServicesPath "C:\Install\Cortex Innovation {{< version >}} - App Services.zip" ` + -BlockPackagesPath "C:\Install\Cortex Innovation {{< version >}} - Block Packages.zip" ` + -ApiGatewayBasicAuthUsername "BasicAuthUser" ` + -ApiGatewayBasicAuthPassword '#_065077199197085!212123173135087074174142102155007175102029143220132038175026114248243207204119030125106032237087162060168108135168241247037070081~187087056217118!069132229129134129097089241180163#' ` + -CustomerName "Customer1" ` + -ApplicationServerIPv4Addresses @("192.168.1.1") ` + -UseSelfSignedCertificates ` + -SkipLoadBalancer ` + -Credential $Credential ` + -LdapConnectionDetails @{ + Host= "LDAP://ldapserver.fqdn.com:389" + UseSsl= $false + Username= "someUserName" + Password= '#_156218162004047!225018081008117174092221250099053~110194001237006!035122107175168133055021013201167#' + } ` + -AcceptEULA:$AcceptEula ` + *>&1 | Tee-Object -FilePath "cortex-app-install-log.txt" + {{< /tab >}} + {{< /tabpane >}} + + {{% alert title="Important" color="warning" %}}Parameters required to be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}} must be encrypted on one of the servers specified in the {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.SingleServerWithoutHA.EncryptionRequirements" title="Encryption Requirements" >}} steps.{{% /alert %}} + + | Name | Description | + |----------------------------------------------|-------------| + |`AppServicesPath` | Configure this value with the location of the App Services zip file on the server. | + |`BlockPackagesPath` | Configure this value with the location of the Block Packages zip file on the server. | + |`ApiGatewayBasicAuthUsername` | Configure this value with a username that can be used to make HTTPS requests to the API Gateway Service using Basic Authentication (e.g. starting flows). This username will be used by Gateway for all HTTPS requests to the API Gateway Service.

For security reasons it is recommended that the default value `BasicAuthUser` should be changed.

This value will be needed later, [when installing Gateway][Install Gateway].

This username can also be used by external services for HTTPS requests to the API Gateway Service but is not recommended; these requests should use an OAuth2 session for an authorised Active Directory user.{{< alert type="note" title="Note" >}} This parameter should be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}}| + |`ApiGatewayBasicAuthPassword` | Configure this value with the password for the username specified for `ApiGatewayBasicAuthUsername`.

For security reasons it is recommended that the default value should be changed.

This value will be needed later, [when installing Gateway][Install Gateway].{{< alert type="note" title="Note" >}} This parameter must be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}}| + |`CustomerName` | A name identifying the platform being installed. This must have no spaces or symbols. It will be appended to the node names that are displayed in Service Fabric Explorer. | + |`ApplicationServerIPv4Addresses` | The IPv4 address of the server.| + |`ServerCertificatePath` | The local path of a .PFX certificate file on the server. Environment variables cannot be used.

This is only needed if installing with CA Certificates (Recommended). The certificate should meet the [Certificate Requirements][].

This certificate will be used for:
  • Securing communication between the Application Services.
  • Allowing Application Services to identify themselves to clients such as Gateway.
  • Preventing unauthorised nodes from joining the single node cluster.
  • Connecting to Service Fabric Explorer from each of the Application Servers.
{{< alert type="warning" title="Warning" >}}It is critical to set a reminder to {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.RolloverCertificates" title="update certificates" >}} in good time before they expire. If they expire then the platform will cease to function and {{< ahref path="Cortex.ServicePortal.MainDoc" title="CORTEX Service Portal" >}} must be contacted for support.{{< /alert >}}| + |`ServerCertificatePassword` | The password for the .PFX certificate file specified in `ServerCertificatePath`.

This is only needed if installing with CA Certificates (Recommended).{{< alert type="note" title="Note" >}} This parameter must be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}}| + |`UseSelfSignedCertificates` | Installs Application Services and required infrastructure using generated Self-Signed Certificates rather than CA Certificates.

Not recommended for production use. | + |`SkipLoadBalancer` | Installs Application Services and required infrastructure without installing a load balancer. | + |`Credential` | The credentials of the user which will be used to perform remote operations on the server. It must be a domain user that is a member of the local Administrators group on the server.

This does not need to be changed, a prompt will appear to enter this information when the script is run. | + |`LdapConnectionDetails` | The connection details to the LDAP server.

This must be configured with a valid `Host`, `Username`, `Password`, and whether the LDAP server uses SSL using `UseSsl`. {{< alert type="note" title="Note" >}}The parameters `Host` and `Username` should be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}. The parameter `Password` must be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}} | + |`AcceptEULA` | This does not need to be changed, the EULA will be accepted at a later stage. | + |`FilePath` | The filename that installation logs are written to. If this should be written to a different location than where the installation files are then a full path should be specified. | + + The `ApiGatewayBasicAuthUsername` and `ApiGatewayBasicAuthPassword` will be needed later, [when installing Gateway][Install Gateway]. + + {{% alert title="Note" %}} +More advanced configuration (such as changing ports) can be undertaken by modifying the `Cortex.Innovation.Install.Config.json` file but this shouldn't be required for most installations. More information about this can be found at {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.AdvancedConfigSingleServer" title="Advanced Application Server and Load Balancer Configuration Changes" >}}. + {{% /alert %}} + +1. Save and close `Cortex.Innovation.Install.ps1`. + +[Certificate Requirements]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.SingleServerWithoutHA.CertificateRequirements" >}} +[CORTEX Encrypted]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" >}} +[Install Gateway]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.SingleServerWithoutHA.ConfigureCortexGatewayInstallationScript" >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/install-application-server/single-server/add-innovation-to-7.2/configure-installation-script.md b/content/en/docs/2024.11/_shared/install-application-server/single-server/add-innovation-to-7.2/configure-installation-script.md new file mode 100644 index 000000000..76ff566bf --- /dev/null +++ b/content/en/docs/2024.11/_shared/install-application-server/single-server/add-innovation-to-7.2/configure-installation-script.md @@ -0,0 +1,77 @@ +1. In the `Cortex Innovation {{< version >}} - App Server Install Scripts` folder, locate the `Cortex.Innovation.Install.ps1` script and open it with a text editor. +1. Choose the tab below that matches the configuration for this installation, then update the script to match, changing the parameters according to the details given below: + + {{< tabpane lang="powershell" >}} + {{< tab header="CA Certs" >}} +.\Cortex.Install.ps1 -ConfigFileName Cortex.Innovation.Install.Config.json ` + -AppServicesPath "C:\Install\Cortex Innovation {{< version >}} - App Services.zip" ` + -BlockPackagesPath "C:\Install\Cortex Innovation {{< version >}} - Block Packages.zip" ` + -ApiGatewayBasicAuthUsername "BasicAuthUser" ` + -ApiGatewayBasicAuthPassword '#_065077199197085!212123173135087074174142102155007175102029143220132038175026114248243207204119030125106032237087162060168108135168241247037070081~187087056217118!069132229129134129097089241180163#' ` + -CustomerName "Customer1" ` + -ApplicationServerIPv4Addresses @("192.168.1.1") ` + -ServerCertificatePath "C:\Install\Certificates\cert.pfx" ` + -ServerCertificatePassword '#_186224203199039!168155035100255155162114088105027~037077176064169!055142133197216213014226219148063#' ` + -SkipLoadBalancer ` + -Credential $Credential ` + -LdapConnectionDetails @{ + Host= "LDAP://ldapserver.fqdn.com:389" + UseSsl= $false + Username= "someUserName" + Password= '#_156218162004047!225018081008117174092221250099053~110194001237006!035122107175168133055021013201167#' + } ` + -AcceptEULA:$AcceptEula ` + *>&1 | Tee-Object -FilePath "cortex-app-install-log.txt" + {{< /tab >}} + {{< tab header="Self-Signed Certs" >}} +.\Cortex.Install.ps1 -ConfigFileName Cortex.Innovation.Install.Config.json ` + -AppServicesPath "C:\Install\Cortex Innovation {{< version >}} - App Services.zip" ` + -BlockPackagesPath "C:\Install\Cortex Innovation {{< version >}} - Block Packages.zip" ` + -ApiGatewayBasicAuthUsername "BasicAuthUser" ` + -ApiGatewayBasicAuthPassword '#_065077199197085!212123173135087074174142102155007175102029143220132038175026114248243207204119030125106032237087162060168108135168241247037070081~187087056217118!069132229129134129097089241180163#' ` + -CustomerName "Customer1" ` + -ApplicationServerIPv4Addresses @("192.168.1.1") ` + -UseSelfSignedCertificates ` + -SkipLoadBalancer ` + -Credential $Credential ` + -LdapConnectionDetails @{ + Host= "LDAP://ldapserver.fqdn.com:389" + UseSsl= $false + Username= "someUserName" + Password= '#_156218162004047!225018081008117174092221250099053~110194001237006!035122107175168133055021013201167#' + } ` + -AcceptEULA:$AcceptEula ` + *>&1 | Tee-Object -FilePath "cortex-app-install-log.txt" + {{< /tab >}} + {{< /tabpane >}} + + {{% alert title="Important" color="warning" %}}Parameters required to be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}} must be encrypted on one of the servers specified in the {{< ahref path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.SingleServerWithoutHA.EncryptionRequirements" title="Encryption Requirements" >}} steps.{{% /alert %}} + + | Name | Description | + |----------------------------------------------|-------------| + |`AppServicesPath` | Configure this value with the location of the App Services zip file on the server. | + |`BlockPackagesPath` | Configure this value with the location of the Block Packages zip file on the server. | + |`ApiGatewayBasicAuthUsername` | Configure this value with a username that can be used to make HTTPS requests to the API Gateway Service using Basic Authentication (e.g. starting flows). This username will be used by Gateway for all HTTPS requests to the API Gateway Service.

For security reasons it is recommended that the default value `BasicAuthUser` should be changed.

This value will be needed later, [when upgrading Gateway][Upgrade Gateway].

This username can also be used by external services for HTTPS requests to the API Gateway Service but is not recommended; these requests should use an OAuth2 session for an authorised Active Directory user.{{< alert type="note" title="Note" >}} This parameter should be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}}| + |`ApiGatewayBasicAuthPassword` | Configure this value with the password for the username specified for `ApiGatewayBasicAuthUsername`.

For security reasons it is recommended that the default value should be changed.

This value will be needed later, [when upgrading Gateway][Upgrade Gateway].{{< alert type="note" title="Note" >}} This parameter must be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}}| + |`CustomerName` | A name identifying the platform being installed. This must have no spaces or symbols. It will be appended to the node names that are displayed in Service Fabric Explorer. | + |`ApplicationServerIPv4Addresses` | The IPv4 address of the server.| + |`ServerCertificatePath` | The local path of a .PFX certificate file on the server. Environment variables cannot be used.

This is only needed if installing with CA Certificates (Recommended). The certificate should meet the [Certificate Requirements][].

This certificate will be used for:
  • Securing communication between the Application Services.
  • Allowing Application Services to identify themselves to clients such as Gateway.
  • Preventing unauthorised nodes from joining the single node cluster.
  • Connecting to Service Fabric Explorer from each of the Application Servers.
{{< alert type="warning" title="Warning" >}}It is critical to set a reminder to {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.RolloverCertificates" title="update certificates" >}} in good time before they expire. If they expire then the platform will cease to function and {{< ahref path="Cortex.ServicePortal.MainDoc" title="CORTEX Service Portal" >}} must be contacted for support.{{< /alert >}}| + |`ServerCertificatePassword` | The password for the .PFX certificate file specified in `ServerCertificatePath`.

This is only needed if installing with CA Certificates (Recommended).{{< alert type="note" title="Note" >}} This parameter must be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}}| + |`UseSelfSignedCertificates` | Installs Application Services and required infrastructure using generated Self-Signed Certificates rather than CA Certificates.

Not recommended for production use. | + |`SkipLoadBalancer` | Installs Application Services and required infrastructure without installing a load balancer. | + |`Credential` | The credentials of the user which will be used to perform remote operations on the server. It must be a domain user that is a member of the local Administrators group on the server.

This does not need to be changed, a prompt will appear to enter this information when the script is run. | + |`LdapConnectionDetails` | The connection details to the LDAP server.

This must be configured with a valid `Host`, `Username`, `Password`, and whether the LDAP server uses SSL using `UseSsl`. {{< alert type="note" title="Note" >}}The parameters `Host` and `Username` should be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}. The parameter `Password` must be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}} | + |`AcceptEULA` | This does not need to be changed, the EULA will be accepted at a later stage. | + |`FilePath` | The filename that installation logs are written to. If this should be written to a different location than where the installation files are then a full path should be specified. | + + The `ApiGatewayBasicAuthUsername` and `ApiGatewayBasicAuthPassword` will be needed later, [when upgrading Gateway][Upgrade Gateway]. + + {{% alert title="Note" %}} +More advanced configuration (such as changing ports) can be undertaken by modifying the `Cortex.Innovation.Install.Config.json` file but this shouldn't be required for most installations. More information about this can be found at {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.AdvancedConfigSingleServer" title="Advanced Application Server and Load Balancer Configuration Changes" >}}. + {{% /alert %}} + +1. Save and close `Cortex.Innovation.Install.ps1`. + +[Certificate Requirements]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.SingleServerWithoutHA.CertificateRequirements" >}} +[CORTEX Encrypted]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" >}} +[Upgrade Gateway]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.SingleServerWithoutHA.ConfigureCortexGatewayInstallationScript" >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/install-application-server/single-server/add-permissions-to-crypto-folder.md b/content/en/docs/2024.11/_shared/install-application-server/single-server/add-permissions-to-crypto-folder.md new file mode 100644 index 000000000..039984369 --- /dev/null +++ b/content/en/docs/2024.11/_shared/install-application-server/single-server/add-permissions-to-crypto-folder.md @@ -0,0 +1,14 @@ +Service Fabric requires access to the `C:\ProgramData\Microsoft\Crypto\` folder for the `Network Service` users. + +Grant access to the `Network Service` user following these instructions: + +1. Open a Windows PowerShell (x64) window as administrator. +1. Run the following command: + +```bash +icacls "C:\ProgramData\Microsoft\Crypto\*" /grant *S-1-5-20:RX /t +``` + +{{% alert title="Note" %}} +Some files might fail to be processed with `Access is denied`. This can be ignored. +{{% /alert %}} diff --git a/content/en/docs/2024.11/_shared/install-application-server/single-server/check-application-services.md b/content/en/docs/2024.11/_shared/install-application-server/single-server/check-application-services.md new file mode 100644 index 000000000..855a61a8f --- /dev/null +++ b/content/en/docs/2024.11/_shared/install-application-server/single-server/check-application-services.md @@ -0,0 +1,37 @@ +1. Log on to the server. +1. Import the certificate, used in the `ServerCertificatePath` parameter of the [Configure Installation Script][] section, to your `Current User` certificate store. This can be achieved by double-clicking on the certificate .PFX file and following the wizard. + + If using self-signed certificates, the certificate can be retrieved by using the `Manage Computer Certificates` tool in Windows to export the `CortexServerCertificate` from the `Personal` store as a pfx file and then importing it to the `Current User` store by double-clicking on it and following the wizard. The certificate must also be imported to `Trusted Root Certification Authorities` in the `Local Computer` store. +1. Open a web browser. +1. Navigate to `https://server.domain.com:9080/Explorer`, where `server.domain.com` is the fully qualified domain name of the server. Replace `9080` with new `httpGatewayEndpointPort` value if it was changed during configuration. + + The screen should resemble that in the following figure: + {{< figure src="/images/Service Fabric Explorer - Single.png" >}} + + The status circles should be entirely green - this indicates that the node and all services and instances are healthy. Other status pages can be accessed by expanding items in the leftmost pane. Issues can be tracked down to the failing component by expanding items with warning triangles or error icons on. The next few diagrams show the status pages for a healthy system. + + After expanding the application, clicking on any of the services should display a green circle and `Status = Active`: + + {{< figure src="/images/Service Fabric Explorer - Service - Single.png" >}} + + After expanding either of the services, clicking on any of the instances/partitions should display a green circle and `Status = Ready`: + + {{< figure src="/images/Service Fabric Explorer - Instance - Single.png" >}} + + Clicking on any of the nodes at the bottom of the leftmost pane should display a green circle and `Status = Up`: + + {{< figure src="/images/Service Fabric Explorer - Node - Single.png" >}} + + If any warning triangles appear, wait for 5 minutes or so as the cluster may still be starting up. If the cluster looks OK, go to the next section. + + If the warnings persist or anything on the screen goes red, expand the items to find the individual services and instances which have errors or warnings. Warnings should not be ignored as they can indicate that the service can’t start but is still in the retry phase. Error and warning messages should be displayed on the status screens and should indicate what is wrong. + + If no useful message can be seen here, the service log files may contain more information. These can be found on the server at: + + * `%ProgramData%/Cortex/API Gateway Service/Logs` + * `%ProgramData%/Cortex/Execution Service/Logs` + + If no solution can be found, please contact [{{% ctx %}} Service Portal][CORTEX Service Portal] for further assistance. + +[Configure Installation Script]: {{< ref "#configure-installation-script" >}} +[CORTEX Service Portal]: {{< url path="Cortex.ServicePortal.MainDoc" >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/install-application-server/single-server/check-port-useage.md b/content/en/docs/2024.11/_shared/install-application-server/single-server/check-port-useage.md new file mode 100644 index 000000000..0b1f03420 --- /dev/null +++ b/content/en/docs/2024.11/_shared/install-application-server/single-server/check-port-useage.md @@ -0,0 +1,23 @@ +To check all necessary ports are free, follow these steps. +1. Open a Windows PowerShell (x64) window as administrator. +1. Navigate PowerShell to inside the `Cortex Innovation {{< version >}} - App Server Install Scripts` folder using the following command, modifying the path as necessary: + + ```powershell + cd "C:\Install\Cortex Innovation {{< version >}} - App Server Install Scripts" + ``` + +1. Run the `Cortex.Innovation.Test.PortUsage.ps1` script using the following command, modifying the `ApplicationServers` value to contain the NETBIOS name or fully qualified domain name of the server: + + ```powershell + .\Cortex.Innovation.Test.PortUsage.ps1 -ApplicationServers @("app-server1") + ``` + +1. A credentials prompt will appear. Enter credentials of a domain user that is a member of the local Administrators group on the server and press OK. + +1. If all ports are free, the script will report the following: + + `All ports required by Cortex Innovation are free` + + If this is the case, continue to the next section. Otherwise, consult the messages returned by the script, which will give details about how to modify the `Cortex.Innovation.Install.Config.json` configuration file, in the `Cortex Innovation {{< version >}} - App Server Install Scripts` folder, to use different ports. This will be used later during installation. + + The `Cortex.Innovation.Test.PortUsage.ps1` script cannot currently re-check modified ports in the configuration file so these need to be manually checked to see that they are free. diff --git a/content/en/docs/2024.11/_shared/install-application-server/single-server/run-installation-script.md b/content/en/docs/2024.11/_shared/install-application-server/single-server/run-installation-script.md new file mode 100644 index 000000000..b698abff0 --- /dev/null +++ b/content/en/docs/2024.11/_shared/install-application-server/single-server/run-installation-script.md @@ -0,0 +1,31 @@ +1. Type the following command into PowerShell: + + ```powershell + .\Cortex.Innovation.Install.ps1 + ``` + +1. Please read the End User Licence Agreement which can be found [here][Eula]. Once you agree to the terms, add the flag `-AcceptEULA` to the command entered above, e.g: + + ```powershell + .\.ps1 -AcceptEULA + ``` + +1. Run the PowerShell command to install HA Services and the required infrastructure. +1. A credentials prompt will appear. Enter credentials of a domain user that is a member of the local Administrators group on the server and press OK. +1. A password prompt will appear. Enter a password which will be used to create a user in RabbitMQ. This should be entered carefully and recorded as it may be needed if seeking support from [{{% ctx %}} Service Portal][CORTEX Service Portal]. Press OK. +1. Wait for the script to finish running. This should take approximately 10 minutes. +1. Check that there have been no errors in the script; these would appear in red in the console. + + If there are any errors, then please follow any instructions given within them to rectify the situation, check your configuration files, and retry the installation. + + In some circumstances, retrying may error due to components being installed already. In this case please run the following command, followed by the original installation command: + + ```powershell + .\Cortex.Innovation.Uninstall.ps1 -SkipLoadBalancer + ``` + + If the errors do not give any instructions on how to rectify, see [Troubleshooting During Installation][] for further information; if this does not help then please contact [{{% ctx %}} Service Portal][CORTEX Service Portal] for assistance. + +[Eula]: {{< url path="Cortex.Website.Eula.MainDoc" >}} +[CORTEX Service Portal]: {{< url path="Cortex.ServicePortal.MainDoc" >}} +[Troubleshooting During Installation]: {{< url path="Cortex.Reference.Troubleshooting.Installation.TroubleshootingDuringInstallation" >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/install-application-server/single-server/test-installation-script.md b/content/en/docs/2024.11/_shared/install-application-server/single-server/test-installation-script.md new file mode 100644 index 000000000..36ae69a3a --- /dev/null +++ b/content/en/docs/2024.11/_shared/install-application-server/single-server/test-installation-script.md @@ -0,0 +1,31 @@ +1. Open a Windows PowerShell (x64) window as administrator. +1. Navigate PowerShell to inside the `Cortex Innovation {{< version >}} - App Server Install Scripts` folder using the following command, modifying the path as necessary: + + ```powershell + cd "C:\Install\Cortex Innovation {{< version >}} - App Server Install Scripts" + ``` + +1. Type the following command into PowerShell: + + ```powershell + .\Cortex.Innovation.Install.ps1 -WhatIf + ``` + +1. Please read the End User Licence Agreement which can be found [here][Eula]. Once you agree to the terms, add the flag `-AcceptEULA` to the command entered above, e.g: + + ```powershell + .\.ps1 -WhatIf -AcceptEULA + ``` + +1. Run the PowerShell command to test the installation script. +1. A credentials prompt will appear. Enter credentials of a domain user that is a member of the local Administrators group on the server and press OK. +1. A password prompt will appear. Enter a password which will be used to create a user in RabbitMQ. +1. Wait for the command to finish. It will display the output of the installation command without making any changes to the system. +1. Check that there have been no errors in the script; these would appear in red in the console. + + If there are no errors, continue to the next section; otherwise, check if the errors have any instructions for rectifying the issue and follow them. + + If there are no useful instructions, check that all previous steps have been followed correctly and, if not, rectify it and run the command again.

If this does not work, please contact [{{% ctx %}} Service Portal][CORTEX Service Portal] for further assistance. The `WhatIf` script will have created a temporary version of the config file in the script location, showing what changes would be made to it when the script runs. The name is appended with `-WhatIf` (e.g. `Cortex.Innovation.Install.Config-WhatIf.json`). This file can be provided when obtaining support. + +[CORTEX Service Portal]: {{< url path="Cortex.ServicePortal.MainDoc" >}} +[Eula]: {{< url path="Cortex.Website.Eula.MainDoc" >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/install-web-application-server/add-innovation-only/assign-certificate-friendly-name.md b/content/en/docs/2024.11/_shared/install-web-application-server/add-innovation-only/assign-certificate-friendly-name.md new file mode 100644 index 000000000..36dd1b3f6 --- /dev/null +++ b/content/en/docs/2024.11/_shared/install-web-application-server/add-innovation-only/assign-certificate-friendly-name.md @@ -0,0 +1,11 @@ +Once the certificate has been imported, a `Friendly Name` should be assigned which will be used in the [Configure {{% ctx %}} Gateway Installation Script][Configure CORTEX Gateway Installation Script] to enable the installation script to identify the certificate to be used for the website: + +1. Click the Windows button (`Start`). +1. Type `certlm.msc` and press `Enter` to open the Certificate Manager dialog. +1. Expand `Personal` and select `Certificates`. +1. You should see your certificate in this store. +1. Right-click on the certificate and select `Properties`. +1. On the `General` tab in the `Friendly Name` text box, enter a name to be used for the certificate. +1. Click `OK`. + +[Configure CORTEX Gateway Installation Script]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.ConfigureCortexGatewayInstallationScriptNew" >}} diff --git a/content/en/docs/2024.11/_shared/install-web-application-server/add-innovation-only/configure-debugger-installation-script.md b/content/en/docs/2024.11/_shared/install-web-application-server/add-innovation-only/configure-debugger-installation-script.md new file mode 100644 index 000000000..5dc7fd819 --- /dev/null +++ b/content/en/docs/2024.11/_shared/install-web-application-server/add-innovation-only/configure-debugger-installation-script.md @@ -0,0 +1,78 @@ +1. In the `Cortex Innovation {{< version >}} - App Server Install Scripts` folder, locate the `Cortex.Innovation.Install.ps1` script and open it with a text editor. +1. Choose the tab below that matches the configuration for this installation, then update the script to match, changing the parameters according to the details given below: + + {{< tabpane lang="powershell" >}} + {{< tab header="CA Certs" >}} +.\Cortex.Install.ps1 -ConfigFileName Cortex.Innovation.Install.Config.json ` + -AppServicesPath "C:\Install\Cortex Innovation {{< version >}} - App Services.zip" ` + -BlockPackagesPath "C:\Install\Cortex Innovation {{< version >}} - Block Packages.zip" ` + -ApiGatewayBasicAuthUsername "BasicAuthUser" ` + -ApiGatewayBasicAuthPassword '#_065077199197085!212123173135087074174142102155007175102029143220132038175026114248243207204119030125106032237087162060168108135168241247037070081~187087056217118!069132229129134129097089241180163#' ` + -CustomerName "Customer1" ` + -ApplicationServerIPv4Addresses @("192.168.1.1") ` + -ServerCertificatePath "C:\Install\Certificates\cert.pfx" ` + -ServerCertificatePassword '#_186224203199039!168155035100255155162114088105027~037077176064169!055142133197216213014226219148063#' ` + -SkipLoadBalancer ` + -Credential $Credential ` + -LdapConnectionDetails @{ + Host= "LDAP://ldapserver.fqdn.com:389" + UseSsl= $false + Username= "someUserName" + Password= '#_156218162004047!225018081008117174092221250099053~110194001237006!035122107175168133055021013201167#' + } ` + -AcceptEULA:$AcceptEula ` + *>&1 | Tee-Object -FilePath "cortex-app-install-log.txt" + {{< /tab >}} + {{< tab header="Self-Signed Certs" >}} +.\Cortex.Install.ps1 -ConfigFileName Cortex.Innovation.Install.Config.json ` + -AppServicesPath "C:\Install\Cortex Innovation {{< version >}} - App Services.zip" ` + -BlockPackagesPath "C:\Install\Cortex Innovation {{< version >}} - Block Packages.zip" ` + -ApiGatewayBasicAuthUsername "BasicAuthUser" ` + -ApiGatewayBasicAuthPassword '#_065077199197085!212123173135087074174142102155007175102029143220132038175026114248243207204119030125106032237087162060168108135168241247037070081~187087056217118!069132229129134129097089241180163#' ` + -CustomerName "Customer1" ` + -ApplicationServerIPv4Addresses @("192.168.1.1") ` + -UseSelfSignedCertificates ` + -SkipLoadBalancer ` + -Credential $Credential ` + -LdapConnectionDetails @{ + Host= "LDAP://ldapserver.fqdn.com:389" + UseSsl= $false + Username= "someUserName" + Password= '#_156218162004047!225018081008117174092221250099053~110194001237006!035122107175168133055021013201167#' + } ` + -AcceptEULA:$AcceptEula ` + *>&1 | Tee-Object -FilePath "cortex-app-install-log.txt" + {{< /tab >}} + {{< /tabpane >}} + + {{% alert title="Important" color="warning" %}}Parameters required to be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}} must be encrypted on one of the servers specified in the {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.SingleServerWithoutHA.EncryptionRequirements" title="Encryption Requirements" >}} steps.{{% /alert %}} + + | Name | Description | + |----------------------------------------------|-------------| + |`AppServicesPath` | Configure this value with the location of the App Services zip file on the server. | + |`BlockPackagesPath` | Configure this value with the location of the Block Packages zip file on the server. | + |`ApiGatewayBasicAuthUsername` | Configure this value with a username that can be used to make HTTPS requests to the API Gateway Service using Basic Authentication (e.g. starting flows). This username will be used by Gateway for all HTTPS requests to the API Gateway Service.

For security reasons it is recommended that the default value `BasicAuthUser` should be changed.

This value will be needed later, [when installing Gateway][Install Gateway].

This username can also be used by external services for HTTPS requests to the API Gateway Service but is not recommended; these requests should use an OAuth2 session for an authorised Active Directory user.{{< alert type="note" title="Note" >}} This parameter should be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}}| + |`ApiGatewayBasicAuthPassword` | Configure this value with the password for the username specified for `ApiGatewayBasicAuthUsername`.

For security reasons it is recommended that the default value should be changed.

This value will be needed later, [when installing Gateway][Install Gateway].{{< alert type="note" title="Note" >}} This parameter must be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}}| + |`CustomerName` | A name identifying the platform being installed. This must have no spaces or symbols. It will be appended to the node names that are displayed in Service Fabric Explorer. | + |`ApplicationServerIPv4Addresses` | The IPv4 address of the server.| + |`ServerCertificatePath` | The local path of a .PFX certificate file on the server. Environment variables cannot be used.

This is only needed if installing with CA Certificates (Recommended). The certificate should meet the [Certificate Requirements][].

This certificate will be used for:
  • Securing communication between the Application Services.
  • Allowing Application Services to identify themselves to clients such as Gateway.
  • Preventing unauthorised nodes from joining the single node cluster.
  • Connecting to Service Fabric Explorer from each of the Application Servers.
{{< alert type="warning" title="Warning" >}}It is critical to set a reminder to {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.RolloverCertificates" title="update certificates" >}} in good time before they expire. If they expire then the platform will cease to function and {{< ahref path="Cortex.ServicePortal.MainDoc" title="CORTEX Service Portal" >}} must be contacted for support.{{< /alert >}}| + |`ServerCertificatePassword` | The password for the .PFX certificate file specified in `ServerCertificatePath`.

This is only needed if installing with CA Certificates (Recommended).{{< alert type="note" title="Note" >}} This parameter must be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}}| + |`UseSelfSignedCertificates` | Installs Application Services and required infrastructure using generated Self-Signed Certificates rather than CA Certificates.

Not recommended for production use. | + |`SkipLoadBalancer` | Installs Application Services and required infrastructure without installing a load balancer. | + |`Credential` | The credentials of the user which will be used to perform remote operations on the server. It must be a domain user that is a member of the local Administrators group on the server.

This does not need to be changed, a prompt will appear to enter this information when the script is run. | + |`LdapConnectionDetails` | The connection details to the LDAP server.

This must be configured with a valid `Host`, `Username`, `Password`, and whether the LDAP server uses SSL using `UseSsl`. {{< alert type="note" title="Note" >}}The parameters `Host` and `Username` should be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}. The parameter `Password` must be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}} | + |`AcceptEULA` | This does not need to be changed, the EULA will be accepted at a later stage. | + |`FilePath` | The filename that installation logs are written to. If this should be written to a different location than where the installation files are then a full path should be specified. | + + The `ApiGatewayBasicAuthUsername` and `ApiGatewayBasicAuthPassword` will be needed later, [when installing Gateway][Install Gateway]. + + {{% alert title="Note" %}} +More advanced configuration (such as changing ports) can be undertaken by modifying the `Cortex.Innovation.Install.Config.json` file but this shouldn't be required for most installations. More information about this can be found at {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.AdvancedConfigSingleServer" title="Advanced Application Server and Load Balancer Configuration Changes" >}}. + {{% /alert %}} + +1. Save and close `Cortex.Innovation.Install.ps1`. + +[Certificate Requirements]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.CertificateRequirements" >}} +[CORTEX Encrypted]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" >}} +[Encryption Requirements]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.EncryptionRequirements" >}} +[Install Gateway]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.ConfigureCortexGatewayInstallationScriptNew" >}} diff --git a/content/en/docs/2024.11/_shared/install-web-application-server/add-innovation-only/grant-gateway-user-additional-folder-permissions.md b/content/en/docs/2024.11/_shared/install-web-application-server/add-innovation-only/grant-gateway-user-additional-folder-permissions.md new file mode 100644 index 000000000..38e7a5e61 --- /dev/null +++ b/content/en/docs/2024.11/_shared/install-web-application-server/add-innovation-only/grant-gateway-user-additional-folder-permissions.md @@ -0,0 +1,49 @@ +#### Cortex Blocks Provider Host folder + +Check that the {{% ctx %}} Gateway `Application Pool` user has rights to the `Cortex Blocks Provider Host folder` folder using the following steps: + +1. Navigate to `C:\ProgramData\Cortex` +1. Right-click on the `Cortex Blocks Provider Host` folder and click `Properties`. +1. In the dialog, click the `Security` tab. +1. Check the `Application Pool` user for Gateway is listed in the `Group or user names` and has `Modify` permissions. +1. If the `Application Pool` user for Gateway is not listed: + 1. Click the `Edit...` button. + 1. Click the `Add...` button. + 1. Enter the username of the application pool user and click `OK`. + 1. In the `Permissions` section at the bottom, check `Modify`. + 1. Click `OK`. +1. If the `Application Pool` user for Gateway is listed but does not have permissions: + 1. Click the `Edit...` button. + 1. Select the `Application Pool` user. + 1. Check `Modify`. + 1. Click `OK`. + +#### Repo folder + +Check that the {{% ctx %}} Gateway `Application Pool` user has rights to the `Repo` folder using the following steps: + +1. Check where the `Repo` folder is located + 1. Navigate to the `gateway` IIS folder (usually `%SystemDrive%\inetpub\wwwroot\Cortex\gateway`, e.g. `C:\inetpub\wwwroot\Cortex\gateway`) + 1. Open the `web.config` file. + 1. Find the value of the `connectionString` named `CortexRepositories` +1. Navigate to the `Repo` folder, not opening it. +1. Right-click on the `Repo` folder and click `Properties`. +1. In the dialog, click the `Security` tab. +1. Check the `Application Pool` user for Gateway is listed in the `Group or user names` and has `Modify` permissions. +1. If the `Application Pool` user for Gateway is not listed: + 1. Click the `Edit...` button. + 1. Click the `Add...` button. + 1. Enter the username of the application pool user and click `OK`. + 1. In the `Permissions` section at the bottom, check `Modify`. + 1. Click `OK`. +1. If the `Application Pool` user for Gateway is listed but does not have permissions: + 1. Click the `Edit...` button. + 1. Select the `Application Pool` user. + 1. Check `Modify`. + 1. Click `OK`. + +#### Perform an IIS reset + +1. Open a Windows PowerShell (x64) window as administrator. +1. Run the following command: `iisreset`. +1. Wait for the action to complete. diff --git a/content/en/docs/2024.11/_shared/install-web-application-server/add-innovation-only/licensing.md b/content/en/docs/2024.11/_shared/install-web-application-server/add-innovation-only/licensing.md new file mode 100644 index 000000000..88853d480 --- /dev/null +++ b/content/en/docs/2024.11/_shared/install-web-application-server/add-innovation-only/licensing.md @@ -0,0 +1,3 @@ +Ensure that a valid {{% ctx %}} licence file named `Cortex.lic` exists on the Web Application server, in the location `%ProgramData%\Cortex\Licences`. If it does not, follow the instructions located at [Licensing Requirements][]. + +[Licensing Requirements]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.LicensingRequirements" >}} diff --git a/content/en/docs/2024.11/_shared/install-web-application-server/add-innovation-to-7.2/assign-certificate-friendly-name.md b/content/en/docs/2024.11/_shared/install-web-application-server/add-innovation-to-7.2/assign-certificate-friendly-name.md new file mode 100644 index 000000000..e39dc70a4 --- /dev/null +++ b/content/en/docs/2024.11/_shared/install-web-application-server/add-innovation-to-7.2/assign-certificate-friendly-name.md @@ -0,0 +1,11 @@ +Once the certificate has been imported, a `Friendly Name` should be assigned which will be used in the [Configure {{% ctx %}} Gateway Installation Script][Configure CORTEX Gateway Installation Script] to enable the installation script to identify the certificate to be used for the website: + +1. Click the Windows button (`Start`). +1. Type `certlm.msc` and press `Enter` to open the Certificate Manager dialog. +1. Expand `Personal` and select `Certificates`. +1. You should see your certificate in this store. +1. Right-click on the certificate and select `Properties`. +1. On the `General` tab in the `Friendly Name` text box, enter a name to be used for the certificate. +1. Click `OK`. + +[Configure CORTEX Gateway Installation Script]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.MultipleServerWithHA.ConfigureCortexGatewayInstallationScriptNew" >}} diff --git a/content/en/docs/2024.11/_shared/install-web-application-server/add-innovation-to-7.2/configure-debugger-installation-script.md b/content/en/docs/2024.11/_shared/install-web-application-server/add-innovation-to-7.2/configure-debugger-installation-script.md new file mode 100644 index 000000000..76ed8a84e --- /dev/null +++ b/content/en/docs/2024.11/_shared/install-web-application-server/add-innovation-to-7.2/configure-debugger-installation-script.md @@ -0,0 +1,78 @@ +1. In the `Cortex Innovation {{< version >}} - App Server Install Scripts` folder, locate the `Cortex.Innovation.Install.ps1` script and open it with a text editor. +1. Choose the tab below that matches the configuration for this installation, then update the script to match, changing the parameters according to the details given below: + + {{< tabpane lang="powershell" >}} + {{< tab header="CA Certs" >}} +.\Cortex.Install.ps1 -ConfigFileName Cortex.Innovation.Install.Config.json ` + -AppServicesPath "C:\Install\Cortex Innovation {{< version >}} - App Services.zip" ` + -BlockPackagesPath "C:\Install\Cortex Innovation {{< version >}} - Block Packages.zip" ` + -ApiGatewayBasicAuthUsername "BasicAuthUser" ` + -ApiGatewayBasicAuthPassword '#_065077199197085!212123173135087074174142102155007175102029143220132038175026114248243207204119030125106032237087162060168108135168241247037070081~187087056217118!069132229129134129097089241180163#' ` + -CustomerName "Customer1" ` + -ApplicationServerIPv4Addresses @("192.168.1.1") ` + -ServerCertificatePath "C:\Install\Certificates\cert.pfx" ` + -ServerCertificatePassword '#_186224203199039!168155035100255155162114088105027~037077176064169!055142133197216213014226219148063#' ` + -SkipLoadBalancer ` + -Credential $Credential ` + -LdapConnectionDetails @{ + Host= "LDAP://ldapserver.fqdn.com:389" + UseSsl= $false + Username= "someUserName" + Password= '#_156218162004047!225018081008117174092221250099053~110194001237006!035122107175168133055021013201167#' + } ` + -AcceptEULA:$AcceptEula ` + *>&1 | Tee-Object -FilePath "cortex-app-install-log.txt" + {{< /tab >}} + {{< tab header="Self-Signed Certs" >}} +.\Cortex.Install.ps1 -ConfigFileName Cortex.Innovation.Install.Config.json ` + -AppServicesPath "C:\Install\Cortex Innovation {{< version >}} - App Services.zip" ` + -BlockPackagesPath "C:\Install\Cortex Innovation {{< version >}} - Block Packages.zip" ` + -ApiGatewayBasicAuthUsername "BasicAuthUser" ` + -ApiGatewayBasicAuthPassword '#_065077199197085!212123173135087074174142102155007175102029143220132038175026114248243207204119030125106032237087162060168108135168241247037070081~187087056217118!069132229129134129097089241180163#' ` + -CustomerName "Customer1" ` + -ApplicationServerIPv4Addresses @("192.168.1.1") ` + -UseSelfSignedCertificates ` + -SkipLoadBalancer ` + -Credential $Credential ` + -LdapConnectionDetails @{ + Host= "LDAP://ldapserver.fqdn.com:389" + UseSsl= $false + Username= "someUserName" + Password= '#_156218162004047!225018081008117174092221250099053~110194001237006!035122107175168133055021013201167#' + } ` + -AcceptEULA:$AcceptEula ` + *>&1 | Tee-Object -FilePath "cortex-app-install-log.txt" + {{< /tab >}} + {{< /tabpane >}} + + {{% alert title="Important" color="warning" %}}Parameters required to be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}} must be encrypted on one of the servers specified in the {{< ahref path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.MultipleServerWithHA.EncryptionRequirements" title="Encryption Requirements" >}} steps.{{% /alert %}} + + | Name | Description | + |----------------------------------------------|-------------| + |`AppServicesPath` | Configure this value with the location of the App Services zip file on the server. | + |`BlockPackagesPath` | Configure this value with the location of the Block Packages zip file on the server. | + |`ApiGatewayBasicAuthUsername` | Configure this value with a username that can be used to make HTTPS requests to the API Gateway Service using Basic Authentication (e.g. starting flows). This username will be used by Gateway for all HTTPS requests to the API Gateway Service.

For security reasons it is recommended that the default value `BasicAuthUser` should be changed.

This value will be needed later, [when upgrading Gateway][Upgrade Gateway].

This username can also be used by external services for HTTPS requests to the API Gateway Service but is not recommended; these requests should use an OAuth2 session for an authorised Active Directory user.{{< alert type="note" title="Note" >}} This parameter should be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}}| + |`ApiGatewayBasicAuthPassword` | Configure this value with the password for the username specified for `ApiGatewayBasicAuthUsername`.

For security reasons it is recommended that the default value should be changed.

This value will be needed later, [when upgrading Gateway][Upgrade Gateway].{{< alert type="note" title="Note" >}} This parameter must be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}}| + |`CustomerName` | A name identifying the platform being installed. This must have no spaces or symbols. It will be appended to the node names that are displayed in Service Fabric Explorer. | + |`ApplicationServerIPv4Addresses` | The IPv4 address of the server.| + |`ServerCertificatePath` | The local path of a .PFX certificate file on the server. Environment variables cannot be used.

This is only needed if installing with CA Certificates (Recommended). The certificate should meet the [Certificate Requirements][].

This certificate will be used for:
  • Securing communication between the Application Services.
  • Allowing Application Services to identify themselves to clients such as Gateway.
  • Preventing unauthorised nodes from joining the single node cluster.
  • Connecting to Service Fabric Explorer from each of the Application Servers.
{{< alert type="warning" title="Warning" >}}It is critical to set a reminder to {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.RolloverCertificates" title="update certificates" >}} in good time before they expire. If they expire then the platform will cease to function and {{< ahref path="Cortex.ServicePortal.MainDoc" title="CORTEX Service Portal" >}} must be contacted for support.{{< /alert >}}| + |`ServerCertificatePassword` | The password for the .PFX certificate file specified in `ServerCertificatePath`.

This is only needed if installing with CA Certificates (Recommended).{{< alert type="note" title="Note" >}} This parameter must be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}}| + |`UseSelfSignedCertificates` | Installs Application Services and required infrastructure using generated Self-Signed Certificates rather than CA Certificates.

Not recommended for production use. | + |`SkipLoadBalancer` | Installs Application Services and required infrastructure without installing a load balancer. | + |`Credential` | The credentials of the user which will be used to perform remote operations on the server. It must be a domain user that is a member of the local Administrators group on the server.

This does not need to be changed, a prompt will appear to enter this information when the script is run. | + |`LdapConnectionDetails` | The connection details to the LDAP server.

This must be configured with a valid `Host`, `Username`, `Password`, and whether the LDAP server uses SSL using `UseSsl`. {{< alert type="note" title="Note" >}}The parameters `Host` and `Username` should be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}. The parameter `Password` must be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}} | + |`AcceptEULA` | This does not need to be changed, the EULA will be accepted at a later stage. | + |`FilePath` | The filename that installation logs are written to. If this should be written to a different location than where the installation files are then a full path should be specified. | + + The `ApiGatewayBasicAuthUsername` and `ApiGatewayBasicAuthPassword` will be needed later, [when upgrading Gateway][Upgrade Gateway]. + + {{% alert title="Note" %}} +More advanced configuration (such as changing ports) can be undertaken by modifying the `Cortex.Innovation.Install.Config.json` file but this shouldn't be required for most installations. More information about this can be found at {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.AdvancedConfigSingleServer" title="Advanced Application Server and Load Balancer Configuration Changes" >}}. + {{% /alert %}} + +1. Save and close `Cortex.Innovation.Install.ps1`. + +[Certificate Requirements]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.MultipleServerWithHA.CertificateRequirements" >}} +[CORTEX Encrypted]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" >}} +[Encryption Requirements]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.MultipleServerWithHA.EncryptionRequirements" >}} +[Upgrade Gateway]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.MultipleServerWithHA.ConfigureCortexGatewayInstallationScriptNew" >}} diff --git a/content/en/docs/2024.11/_shared/install-web-application-server/add-innovation-to-7.2/grant-gateway-user-additional-folder-permissions.md b/content/en/docs/2024.11/_shared/install-web-application-server/add-innovation-to-7.2/grant-gateway-user-additional-folder-permissions.md new file mode 100644 index 000000000..d7a476356 --- /dev/null +++ b/content/en/docs/2024.11/_shared/install-web-application-server/add-innovation-to-7.2/grant-gateway-user-additional-folder-permissions.md @@ -0,0 +1,19 @@ +#### Cortex Blocks Provider Host folder + +Check that the {{% ctx %}} Gateway `Application Pool` user has rights to the `Cortex Blocks Provider Host folder` folder using the following steps: + +1. Navigate to `C:\ProgramData\Cortex` +1. Right-click on the `Cortex Blocks Provider Host` folder and click `Properties`. +1. In the dialog, click the `Security` tab. +1. Check the `Application Pool` user for Gateway is listed in the `Group or user names` and has `Modify` permissions. +1. If the `Application Pool` user for Gateway is not listed: + 1. Click the `Edit...` button. + 1. Click the `Add...` button. + 1. Enter the username of the application pool user and click `OK`. + 1. In the `Permissions` section at the bottom, check `Modify`. + 1. Click `OK`. +1. If the `Application Pool` user for Gateway is listed but does not have permissions: + 1. Click the `Edit...` button. + 1. Select the `Application Pool` user. + 1. Check `Modify`. + 1. Click `OK`. diff --git a/content/en/docs/2024.11/_shared/install-web-application-server/add-innovation-to-7.2/licensing.md b/content/en/docs/2024.11/_shared/install-web-application-server/add-innovation-to-7.2/licensing.md new file mode 100644 index 000000000..34a467ecc --- /dev/null +++ b/content/en/docs/2024.11/_shared/install-web-application-server/add-innovation-to-7.2/licensing.md @@ -0,0 +1,3 @@ +Ensure that a valid {{% ctx %}} licence file named `Cortex.lic` exists on the Web Application server, in the location `%ProgramData%\Cortex\Licences`. If it does not, follow the instructions located at [Licensing Requirements][]. + +[Licensing Requirements]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.MultipleServerWithHA.LicensingRequirements" >}} diff --git a/content/en/docs/2024.11/_shared/install-web-application-server/grant-gateway-user-folder-permissions.md b/content/en/docs/2024.11/_shared/install-web-application-server/grant-gateway-user-folder-permissions.md new file mode 100644 index 000000000..b3c483c2f --- /dev/null +++ b/content/en/docs/2024.11/_shared/install-web-application-server/grant-gateway-user-folder-permissions.md @@ -0,0 +1,24 @@ +The following folders require `Modify` permission to allow creating the `NuGet` folders and its `NuGet.Config` file within: + +* `C:\Windows\System32\config\systemprofile\AppData\Roaming` +* `C:\Windows\SysWOW64\config\systemprofile\AppData\Roaming` + +For each folder, perform the following steps: + +1. Navigate to the `AppData` folder. +1. Right-click on the `Roaming` folder and click `Properties`. +1. In the dialog, click the `Security` tab. +1. Check the `Application Pool` user that will be used for {{% ctx %}} Gateway is listed in the `Group or user names` and has `Modify` permissions. +1. If the `Application Pool` user that will be used for {{% ctx %}} Gateway is not listed: + 1. Click the `Edit...` button. + 1. Click the `Add...` button. + 1. Enter the username of the application pool user and click `OK`. + 1. In the `Permissions` section at the bottom, check `Modify`. + 1. Click `OK`. + 1. Click `Yes` to change the permission to the folder. +1. If the `Application Pool` user that will be used for {{% ctx %}} Gateway is listed but does not have permissions: + 1. Click the `Edit...` button. + 1. Select the `Application Pool` user. + 1. Check `Modify`. + 1. Click `OK`. + 1. Click `Yes` to change the permission to the folder. diff --git a/content/en/docs/2024.11/_shared/install-web-application-server/make-installation-artefacts-available.md b/content/en/docs/2024.11/_shared/install-web-application-server/make-installation-artefacts-available.md new file mode 100644 index 000000000..908a6a01e --- /dev/null +++ b/content/en/docs/2024.11/_shared/install-web-application-server/make-installation-artefacts-available.md @@ -0,0 +1,10 @@ +1. Copy the following artefacts to a folder on the machine: + + * Cortex Innovation {{< version >}} - App Services.zip + * Cortex Innovation {{< version >}} - App Server Install Scripts.zip + * Cortex Innovation {{< version >}} - Block Packages.zip + * Cortex Innovation {{< version >}} - Gateway.zip + * Cortex Innovation {{< version >}} - Web App Server Install Scripts.zip + +1. Extract the `Cortex Innovation {{< version >}} - App Server Install Scripts.zip` file to a folder with the same name. +1. Extract the `Cortex Innovation {{< version >}} - Web App Server Install Scripts.zip` zip file to a folder with the same name. diff --git a/content/en/docs/2024.11/_shared/port-requirements/description/api-gateway.md b/content/en/docs/2024.11/_shared/port-requirements/description/api-gateway.md new file mode 100644 index 000000000..4079cb037 --- /dev/null +++ b/content/en/docs/2024.11/_shared/port-requirements/description/api-gateway.md @@ -0,0 +1 @@ +The port providing an entry into the API Gateway service. This is used by {{% ctx %}} Gateway to communicate with the {{% ctx %}} Innovation platform services. **If this is changed then it will be necessary to use the updated value in the** **"****Service Fabric Api Gateway Endpoint****" parameter of SetParameters.xml when configuring {{% ctx %}} Gateway later in this document.** \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/port-requirements/description/authorisation.md b/content/en/docs/2024.11/_shared/port-requirements/description/authorisation.md new file mode 100644 index 000000000..180d1e06b --- /dev/null +++ b/content/en/docs/2024.11/_shared/port-requirements/description/authorisation.md @@ -0,0 +1 @@ +The ports providing communication between other services and the Authorisation service. These are dynamic ports managed by Service Fabric. \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/port-requirements/description/configuration-management.md b/content/en/docs/2024.11/_shared/port-requirements/description/configuration-management.md new file mode 100644 index 000000000..4f9eb7c4c --- /dev/null +++ b/content/en/docs/2024.11/_shared/port-requirements/description/configuration-management.md @@ -0,0 +1 @@ +The ports providing communication between other services and the Configuration Management service. These are dynamic ports managed by Service Fabric. \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/port-requirements/description/data-storage.md b/content/en/docs/2024.11/_shared/port-requirements/description/data-storage.md new file mode 100644 index 000000000..2047dfa19 --- /dev/null +++ b/content/en/docs/2024.11/_shared/port-requirements/description/data-storage.md @@ -0,0 +1 @@ +The ports providing communication between other services and the Data Storage service. These are dynamic ports managed by Service Fabric. \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/port-requirements/description/execution-management.md b/content/en/docs/2024.11/_shared/port-requirements/description/execution-management.md new file mode 100644 index 000000000..580e0e4de --- /dev/null +++ b/content/en/docs/2024.11/_shared/port-requirements/description/execution-management.md @@ -0,0 +1 @@ +The ports providing communication between other services and the Execution Management service. These are dynamic ports managed by Service Fabric. \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/port-requirements/description/execution.md b/content/en/docs/2024.11/_shared/port-requirements/description/execution.md new file mode 100644 index 000000000..e88748ed1 --- /dev/null +++ b/content/en/docs/2024.11/_shared/port-requirements/description/execution.md @@ -0,0 +1 @@ +The ports providing communication between other services and the Execution service. These are dynamic ports managed by Service Fabric. \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/port-requirements/description/licence-management.md b/content/en/docs/2024.11/_shared/port-requirements/description/licence-management.md new file mode 100644 index 000000000..216d66fbc --- /dev/null +++ b/content/en/docs/2024.11/_shared/port-requirements/description/licence-management.md @@ -0,0 +1 @@ +The ports providing communication between other services and the Licence Management service. These are dynamic ports managed by Service Fabric. \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/port-requirements/description/package-management.md b/content/en/docs/2024.11/_shared/port-requirements/description/package-management.md new file mode 100644 index 000000000..f8dbaddb4 --- /dev/null +++ b/content/en/docs/2024.11/_shared/port-requirements/description/package-management.md @@ -0,0 +1 @@ +The ports providing communication between other services and the Package Management service. These are dynamic ports managed by Service Fabric. \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/port-requirements/description/provisioning.md b/content/en/docs/2024.11/_shared/port-requirements/description/provisioning.md new file mode 100644 index 000000000..2ae9526e8 --- /dev/null +++ b/content/en/docs/2024.11/_shared/port-requirements/description/provisioning.md @@ -0,0 +1 @@ +The ports providing communication between other services and the Provisioning service. These are dynamic ports managed by Service Fabric. \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/port-requirements/description/triggers-snmp.md b/content/en/docs/2024.11/_shared/port-requirements/description/triggers-snmp.md new file mode 100644 index 000000000..5372c835f --- /dev/null +++ b/content/en/docs/2024.11/_shared/port-requirements/description/triggers-snmp.md @@ -0,0 +1 @@ +The port providing an entry to receive SNMP traps to trigger executions within the Innovation platform. \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/prerequisites/add-innovation-to-7.2/encryption-requirements.md b/content/en/docs/2024.11/_shared/prerequisites/add-innovation-to-7.2/encryption-requirements.md new file mode 100644 index 000000000..e000ef175 --- /dev/null +++ b/content/en/docs/2024.11/_shared/prerequisites/add-innovation-to-7.2/encryption-requirements.md @@ -0,0 +1,3 @@ +Certain sensitive parameters required during installation (e.g. passwords) must be encrypted; other potentially sensitive parameters (e.g. usernames) can be encrypted using the [{{% ctx %}} Encryptor][CORTEX Encrypted] PowerShell module, which uses AES256. Details of whether a parameter must or should be encrypted are specified during the installation steps. + +[CORTEX Encrypted]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/prerequisites/install-innovation-only/multi-server/encryption-requirements.md b/content/en/docs/2024.11/_shared/prerequisites/install-innovation-only/multi-server/encryption-requirements.md new file mode 100644 index 000000000..9c368b9b8 --- /dev/null +++ b/content/en/docs/2024.11/_shared/prerequisites/install-innovation-only/multi-server/encryption-requirements.md @@ -0,0 +1,37 @@ +Certain sensitive parameters required during installation (e.g. passwords) must be encrypted; other potentially sensitive parameters (e.g. usernames) can be encrypted using the [{{% ctx %}} Encryptor][CORTEX Encrypted] PowerShell module, which uses AES256. Details of whether a parameter must or should be encrypted are specified during the installation steps. + +Before encrypting parameters, it is required to generate a private key that will be used by the [{{% ctx %}} Encryptor][CORTEX Encrypted] PowerShell module using the following steps: + +Choose one of the Application Servers or the Web Application Server, and copy the `Cortex Innovation {{< version >}} - Encryption Key Generator.zip` artefacts to a folder on it: + +1. Extract the `Cortex Innovation {{< version >}} - Encryption Key Generator.zip` file to a folder with the same name. +1. Open a Windows PowerShell (x64) window as administrator. The administrator must be a domain user that is a member of the local Administrators group on the Application Servers and Web Application Server. +1. Navigate PowerShell to inside the `Cortex Innovation {{< version >}} - Encryption Key Generator` folder using the following command, modifying the path as necessary: + + ```powershell + cd "C:\Install\Cortex Innovation {{< version >}} - Encryption Key Generator" + ``` + +1. Run the `Cortex.Encryption.KeyGeneration.exe` application using the following command, modifying the argument value to contain the NETBIOS names or fully qualified domain names of the Application Servers and Web Application Server: + + ```powershell + .\Cortex.Encryption.KeyGeneration.exe "app-server1, app-server2, app-server3, webapp-server" + ``` + +1. A message similar to the following will indicate that the application has completed successfully: + + ```text + app-server1: Overwritten Encryption key: EE19EB67F6C2D9E9A5AF6F0CE7822A44 + Encryption key set on app-server1 + app-server2: Overwritten Encryption key: EE19EB67F6C2D9E9A5AF6F0CE7822A44 + Encryption key set on app-server2 + app-server3: Overwritten Encryption key: EE19EB67F6C2D9E9A5AF6F0CE7822A44 + Encryption key set on app-server3 + webapp-server: Overwritten Encryption key: EE19EB67F6C2D9E9A5AF6F0CE7822A44 + Encryption key set on webapp-server + Encryption Key: 284BADF55BDDC93A47D7DE8FC2C4DC9B + ``` + +{{% alert title="Important" color="warning" %}}For security reasons the outputted `Encryption Key` should be backed up. If any keys were overwritten then they must be backed up too.{{% /alert %}} + +[CORTEX Encrypted]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/prerequisites/install-innovation-only/single-server/encryption-requirements.md b/content/en/docs/2024.11/_shared/prerequisites/install-innovation-only/single-server/encryption-requirements.md new file mode 100644 index 000000000..95ab65f45 --- /dev/null +++ b/content/en/docs/2024.11/_shared/prerequisites/install-innovation-only/single-server/encryption-requirements.md @@ -0,0 +1,33 @@ +Certain sensitive parameters required during installation (e.g. passwords) must be encrypted; other potentially sensitive parameters (e.g. usernames) can be encrypted using the [{{% ctx %}} Encryptor][CORTEX Encrypted] PowerShell module, which uses AES256. Details of whether a parameter must or should be encrypted are specified during the installation steps. + +Before encrypting parameters, it is required to generate a private key that will be used by the [{{% ctx %}} Encryptor][CORTEX Encrypted] PowerShell module using the following steps: + +Copy the `Cortex Innovation {{< version >}} - Encryption Key Generator.zip` artefacts to a folder on the server: + +1. Extract the `Cortex Innovation {{< version >}} - Encryption Key Generator.zip` file to a folder with the same name. +1. Open a Windows PowerShell (x64) window as administrator. The administrator must be a domain user that is a member of the local Administrators group on the Application Server and Web Application Server. +1. Navigate PowerShell to inside the `Cortex Innovation {{< version >}} - Encryption Key Generator` folder using the following command, modifying the path as necessary: + + ```powershell + cd "C:\Install\Cortex Innovation {{< version >}} - Encryption Key Generator" + ``` + +1. Run the `Cortex.Encryption.KeyGeneration.exe` application using the following command, modifying the argument value to contain the NETBIOS names or fully qualified domain names of the Application Server and Web Application Server: + + ```powershell + .\Cortex.Encryption.KeyGeneration.exe "app-server1" + ``` + +1. A message similar to the following will indicate that the application has completed successfully: + + ```text + app-server: Overwritten Encryption key: EE19EB67F6C2D9E9A5AF6F0CE7822A44 + Encryption key set on app-server + webapp-server: Overwritten Encryption key: EE19EB67F6C2D9E9A5AF6F0CE7822A44 + Encryption key set on webapp-server + Encryption Key: 284BADF55BDDC93A47D7DE8FC2C4DC9B + ``` + +{{% alert title="Important" color="warning" %}}For security reasons the outputted `Encryption Key` should be backed up. If any keys were overwritten then they must be backed up too.{{% /alert %}} + +[CORTEX Encrypted]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/preserve-installation-files.md b/content/en/docs/2024.11/_shared/preserve-installation-files.md new file mode 100644 index 000000000..6e485d456 --- /dev/null +++ b/content/en/docs/2024.11/_shared/preserve-installation-files.md @@ -0,0 +1 @@ +Ensure that the installation files are backed up or kept on the server, especially the scripts and config files that have been modified. This will make it easier to perform further actions in future, such as troubleshooting, certificate rollover, uninstallation, reinstallation and updates. \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/upgrade/2024.3/upgrade-application-server/multi-server/run-upgrade-script.md b/content/en/docs/2024.11/_shared/upgrade/2024.3/upgrade-application-server/multi-server/run-upgrade-script.md new file mode 100644 index 000000000..3e6c71548 --- /dev/null +++ b/content/en/docs/2024.11/_shared/upgrade/2024.3/upgrade-application-server/multi-server/run-upgrade-script.md @@ -0,0 +1,29 @@ +1. Open a Windows PowerShell (x64) window as administrator. +1. Navigate PowerShell to inside the `Cortex Innovation 2024.3 - App Server Install Scripts\Upgrade Application Server` folder using the following command, modifying the path as necessary: + + ```powershell + cd "C:\Install\Cortex Innovation 2024.3 - App Server Install Scripts\Upgrade Application Server" + ``` + +1. Type the following command into PowerShell: + + ```powershell + .\Cortex.Innovation.Upgrade.ps1 + ``` + +1. Please read the End User Licence Agreement which can be found [here][Eula]. Once you agree to the terms, add the flag `-AcceptEULA` to the command entered above, e.g: + + ```powershell + .\.ps1 -AcceptEULA + ``` + +1. Run the PowerShell command to upgrade the HA Services and required infrastructure. +1. A credentials prompt will appear. Enter credentials of a domain user that is a member of the local Administrators group on all servers and press OK. +1. Wait for the script to finish running. This should take approximately 10 minutes. +1. Check that there have been no errors in the script; these would appear in red in the console. + + If the errors do not give any instructions on how to rectify, see [Troubleshooting During Upgrade][] for further information; if this does not help then please contact [{{% ctx %}} Service Portal][CORTEX Service Portal] for assistance. + +[CORTEX Service Portal]: {{< url path="Cortex.ServicePortal.MainDoc" >}} +[Eula]: {{< url path="Cortex.Website.Eula.MainDoc" >}} +[Troubleshooting During Upgrade]: {{< url path="Cortex.Reference.Troubleshooting.Upgrade.TroubleshootingDuringUpgrade" >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/upgrade/2024.3/upgrade-application-server/single-server/configure-upgrade-script.md b/content/en/docs/2024.11/_shared/upgrade/2024.3/upgrade-application-server/single-server/configure-upgrade-script.md new file mode 100644 index 000000000..dd0c8c86e --- /dev/null +++ b/content/en/docs/2024.11/_shared/upgrade/2024.3/upgrade-application-server/single-server/configure-upgrade-script.md @@ -0,0 +1,23 @@ +1. In the `Cortex Innovation 2024.3 - App Server Install Scripts\Upgrade Application Server` folder, locate the `Cortex.Innovation.Upgrade.ps1` script and open it with a text editor. +1. Configure the script, changing the parameters according to the details given below: + + ```powershell + .\Cortex.Upgrade.ps1 ` + -AppServicesPath "C:\Install\Cortex Innovation 2024.3 - App Services.zip" ` + -BlockPackagesPath "C:\Install\Cortex Innovation 2024.3 - Block Packages.zip" ` + -ApplicationServerIPv4Addresses @("192.168.1.1") ` + -Credential $Credential ` + -AcceptEULA:$AcceptEULA ` + *>&1 | Tee-Object -FilePath "cortex-app-upgrade-log.txt" + ``` + + | Name | Description | + |----------------------------------------------|-------------| + |`AppServicesPath` | Configure this value with the location of the Application Services zip file on the server. | + |`BlockPackagesPath` | Configure this value with the location of the Block Packages zip file on the server. | + |`ApplicationServerIPv4Addresses` | The IPv4 address of the server.| + |`Credential` | The credentials of the user which will be used to perform remote operations on the server. It must be a domain user that is a member of the local Administrators group on the server.

This does not need to be changed, a prompt will appear to enter this information when the script is run. | + |`AcceptEULA` | This does not need to be changed, the EULA will be accepted at a later stage. | + |`FilePath` | The filename that upgrade logs are written to. If this should be written to a different location than where the installation files are then a full path should be specified. | + +1. Save and close `Cortex.Innovation.Upgrade.ps1`. diff --git a/content/en/docs/2024.11/_shared/upgrade/2024.3/upgrade-application-server/single-server/make-installation-artefacts-available.md b/content/en/docs/2024.11/_shared/upgrade/2024.3/upgrade-application-server/single-server/make-installation-artefacts-available.md new file mode 100644 index 000000000..8788e464c --- /dev/null +++ b/content/en/docs/2024.11/_shared/upgrade/2024.3/upgrade-application-server/single-server/make-installation-artefacts-available.md @@ -0,0 +1,6 @@ +1. Copy the following artefacts to a folder on the server: + * Cortex Innovation 2024.3 - Block Packages.zip + * Cortex Innovation 2024.3 - App Services.zip + * Cortex Innovation 2024.3 - App Server Install Scripts.zip + +1. Extract the `Cortex Innovation 2024.3 - App Server Install Scripts.zip` file to a folder with the same name. diff --git a/content/en/docs/2024.11/_shared/upgrade/2024.3/upgrade-application-server/single-server/run-upgrade-script.md b/content/en/docs/2024.11/_shared/upgrade/2024.3/upgrade-application-server/single-server/run-upgrade-script.md new file mode 100644 index 000000000..060ee1621 --- /dev/null +++ b/content/en/docs/2024.11/_shared/upgrade/2024.3/upgrade-application-server/single-server/run-upgrade-script.md @@ -0,0 +1,29 @@ +1. Open a Windows PowerShell (x64) window as administrator. +1. Navigate PowerShell to inside the `Cortex Innovation 2024.3 - App Server Install Scripts\Upgrade Application Server` folder using the following command, modifying the path as necessary: + + ```powershell + cd "C:\Install\Cortex Innovation 2024.3 - App Server Install Scripts\Upgrade Application Server" + ``` + +1. Type the following command into PowerShell: + + ```powershell + .\Cortex.Innovation.Upgrade.ps1 + ``` + +1. Please read the End User Licence Agreement which can be found [here][Eula]. Once you agree to the terms, add the flag `-AcceptEULA` to the command entered above, e.g: + + ```powershell + .\.ps1 -AcceptEULA + ``` + +1. Run the PowerShell command to upgrade the application services and required infrastructure. +1. A credentials prompt will appear. Enter credentials of a domain user that is a member of the local Administrators group on the server and press OK. +1. Wait for the script to finish running. This should take approximately 10 minutes. +1. Check that there have been no errors in the script; these would appear in red in the console. + + If the errors do not give any instructions on how to rectify, see [Troubleshooting During Upgrade][] for further information; if this does not help then please contact [{{% ctx %}} Service Portal][CORTEX Service Portal] for assistance. + +[Eula]: {{< url path="Cortex.Website.Eula.MainDoc" >}} +[CORTEX Service Portal]: {{< url path="Cortex.ServicePortal.MainDoc" >}} +[Troubleshooting During Upgrade]: {{< url path="Cortex.Reference.Troubleshooting.Upgrade.TroubleshootingDuringUpgrade" >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/_shared/upgrade/2024.3/upgrade-application-server/upgrade-flows.md b/content/en/docs/2024.11/_shared/upgrade/2024.3/upgrade-application-server/upgrade-flows.md new file mode 100644 index 000000000..341704210 --- /dev/null +++ b/content/en/docs/2024.11/_shared/upgrade/2024.3/upgrade-application-server/upgrade-flows.md @@ -0,0 +1,28 @@ +On the Web Application Server, copy the `Cortex Innovation 2024.3 - Flows Upgrader.zip` artefacts to a folder on it: +1. Extract the `Cortex Innovation 2024.3 - Flows Upgrader.zip` file to a folder with the same name. +1. Open a Windows PowerShell (x64) window as administrator. The administrator must be a domain user that is a member of the local Administrators group on the Web Application Server. +1. Navigate PowerShell to inside the `Cortex Innovation 2024.3 - Flows Upgrader` folder using the following command, modifying the path as necessary: + + ```powershell + cd "C:\Install\Cortex Innovation 2024.3 - Flows Upgrader" + ``` + +1. Export the flows to be upgraded from Gateway as a studio package. +1. Run the `Cortex.Upgrade.FlowUpgrader.exe` application using the following command, modifying the argument value to contain the extracted studio package of flows to upgrade: + + ```powershell + .\Cortex.Upgrade.FlowUpgrader.exe "C:\Install\Export.studiopkg" + ``` + +1. A message similar to the following will indicate that the application has completed successfully: + + ```text + Upgrading Flows + Flow Upgraded: Test Flows\TestFlow1.flow + Flow Upgraded: Test Flows\TestFlow3.flow + Flow Upgraded: Test Flows\TestFlow2.flow + Flows Upgraded + Upgraded Studio Package Created: export-28UpgradedTo30.StudioPkg + ``` + +1. A new studio package will be created in the same file path as the package given as the argument with the format `{PackageName}-{PreviousVersion}UpgradedTo{NewVersion}.studiopkg`. diff --git a/content/en/docs/2024.11/_shared/upgrade/2024.3/upgrade-web-application-server/configure-gateway-script.md b/content/en/docs/2024.11/_shared/upgrade/2024.3/upgrade-web-application-server/configure-gateway-script.md new file mode 100644 index 000000000..e9e8dd039 --- /dev/null +++ b/content/en/docs/2024.11/_shared/upgrade/2024.3/upgrade-web-application-server/configure-gateway-script.md @@ -0,0 +1,35 @@ +1. In the `Cortex Innovation 2024.3 - Web App Server Install Scripts` folder, locate the `Cortex.Innovation.Install.Gateway.ps1` script and open it with a text editor. +1. Configure the script according to the details given below: + + ```powershell + .\Cortex.Install.Gateway.ps1 ` + -GatewayPackagePath "C:\Install\Cortex Innovation 2024.3 - Gateway.zip" ` + -GatewayApplicationPoolUsername "Domain\Username" ` + -WebRootFolder "C:\inetpub\wwwroot" ` + -WebsitePort "443" ` + -ImportCertificate $false ` + -CertificateFriendlyName "CertificateName" ` + -ConfigureSiteRedirect $true ` + -ApplySecurityMeasures $true ` + -UsingWindowsDefender $false ` + -AcceptEULA:$AcceptEula ` + *>&1 | Tee-Object -FilePath "cortex-gateway-install-log.txt" + ``` + + | Name | Description | + |------------------------------------------------|-------------| + |`GatewayPackagePath` | Configure this value with the location of the `Cortex Innovation 2024.3 - Gateway.zip` file on the server. | + |`GatewayApplicationPoolUsername` | Replace `Domain\Username` with the user that is used to run the {{% ctx %}} Gateway application pool currently.| + |`WebRootFolder` | Replace this with the correct path for the Web Root Folder on the server. Typically this will be `C:\inetpub\wwwroot`.| + |`WebsitePort` | Replace this with the port that you wish the website to use. Typically this will be `443`.| + |`ImportCertificate` | This should be set to `$false`.| + |`CertificateFriendlyName` | Replace this with the friendly name that is allocated to the certificate that {{% ctx %}} Gateway is currently using.| + |`ConfigureSiteRedirect` | If the site hosting the {{% ctx %}} Gateway web application is an existing site that doesn’t have its own content, it is recommended to redirect the site URL to the {{% ctx %}} Gateway web application URL. The default behaviour of the script is to create a URL Rewrite redirect rule to achieve this.

To skip this rule creation change the value to `$false`.| + |`ApplySecurityMeasures` | Change this to `$false` if you do not require the latest recommended [Security Best Practices][] to be implemented as part of the installation process.| + |`UsingWindowsDefender` | Change this to `$false` if you are not using the Windows Defender firewall.

If Windows Defender is not being used but an alternative firewall is, it must be configured to allow communication inbound via TCP on the port configured for HTTPS (usually 443).| + |`AcceptEULA` | This does not need to be changed, the EULA will be accepted at a later stage. | + |`FilePath` | The filename that installation logs are written to. If this should be written to a different location than where the installation files are then a full path should be specified. | + +1. Save and close `Cortex.Innovation.Install.Gateway.ps1`. + +[Security Best Practices]: {{< url path="Cortex.Guides.UpgradeCortex.Advanced.SSLBestPractices" >}} diff --git a/content/en/docs/2024.11/_shared/upgrade/2024.3/upgrade-web-application-server/run-gateway-script.md b/content/en/docs/2024.11/_shared/upgrade/2024.3/upgrade-web-application-server/run-gateway-script.md new file mode 100644 index 000000000..73fbdc322 --- /dev/null +++ b/content/en/docs/2024.11/_shared/upgrade/2024.3/upgrade-web-application-server/run-gateway-script.md @@ -0,0 +1,32 @@ +1. Open a Windows PowerShell (x64) window as administrator. +1. Navigate PowerShell to inside the `Cortex Innovation 2024.3 - Web App Server Install Scripts` folder using the following command, modifying the path as necessary: + + ```powershell + cd "C:\Install\Cortex Innovation 2024.3 - Web App Server Install Scripts" + ``` + +1. Type the following command into PowerShell: + + ```powershell + .\Cortex.Innovation.Install.Gateway.ps1 + ``` + +1. Please read the End User Licence Agreement which can be found [here][Eula]. Once you agree to the terms, add the flag `-AcceptEULA` to the command entered above, e.g: + + ```powershell + .\.ps1 -AcceptEULA + ``` + +1. Run the PowerShell command to install {{% ctx %}} Gateway. +1. Check that there have been no errors in the script; these would appear in red in the console. + + If there are any errors, then please follow any instructions given within them to rectify the situation, and retry the upgrade. + + If the errors do not give any instructions on how to rectify, please contact [{{% ctx %}} Service Portal][CORTEX Service Portal] for further assistance. + +1. Once the PowerShell script execution has completed, a prompt will appear to restart the machine. You can choose to restart now (`N`) or later (`L`). +{{< alert type="note" title="Note" >}} It is recommended to choose to restart later after the final step of this section has completed to ensure that no issues occur.{{< /alert >}} +1. In a browser, navigate to the {{% ctx %}} Gateway website, available at `://:/`, e.g. `https://localhost/gateway` and wait for the login page to load. This may take a few minutes. + +[Eula]: {{< url path="Cortex.Website.Eula.MainDoc" >}} +[CORTEX Service Portal]: {{< url path="Cortex.ServicePortal.MainDoc" >}} diff --git a/content/en/docs/2024.11/_shared/upgrade/2024.3/upgrade-web-application-server/test-upgrade.md b/content/en/docs/2024.11/_shared/upgrade/2024.3/upgrade-web-application-server/test-upgrade.md new file mode 100644 index 000000000..ef6a57f8b --- /dev/null +++ b/content/en/docs/2024.11/_shared/upgrade/2024.3/upgrade-web-application-server/test-upgrade.md @@ -0,0 +1,28 @@ +## Test Debugging Flows + +Test the platform by creating a new flow and executing it using the following steps: + +1. Click on the `Flows` charm, then the `+` button and click `Group` to open a dialog. +1. Enter a name for the group, configure the `Permission Groups` and click `OK` to create the group. +1. Click on the group to open it (refresh the page if it does not appear). +1. Inside the group, click the `+` button again and click on `Flow` to open a dialog. If the menu item is not present, it means that the `FeatureFlags` in the `CortexGateway.SetParameters.xml` file was not set properly when installing Gateway. See [Troubleshooting][] for more information. +1. Enter a name for the flow, configure the `Permission Groups` and click `OK` to create the flow. +1. The flow should be displayed with a start flow block and end flow block, if those blocks are not displayed see [Troubleshooting][]. A list of block palettes should be displayed down the left hand side: + {{< figure src="../../2024.3/images/New Innovation Flow View.PNG" title="New Flow - Number of palettes may differ" >}} +1. Add a `Set Variable` block and connect it between the start and end blocks. +1. Click the `Set Variable` block to open the Property Editor. +1. Set the `Value` property to the expression `DateTimeOffset.Now`. +1. Type `Result` into the `Variable` property and click `Create Result`. +1. In the Variable Editor, set `Is Output Variable?` to `true` for the new `Result` variable. +1. Set a breakpoint on the end block and start the flow. An execution token should appear, the `Result` variable should show the current time. If the token does not appear, try refreshing the page. Failing that, see [Troubleshooting][]. +1. Continue or stop the execution. +1. Commit the flow. + +## Test Publishing Production Flows + +1. Log in to Gateway with a user that has the `Admin` role. +1. Click on the `Settings` charm, then `Packages`. +1. Click `Add Package Definition`. Enter a package name and select the new flow to add to the package. Click `Save` to save the new package. +1. Click `Publish`. A success message should appear. If it doesn't it means that there is a problem with the configuration in the `web.config` file for {{% ctx %}} Gateway, or the Application Services aren't healthy. See [Troubleshooting][] for more information. + +[Troubleshooting]: {{< url path="Cortex.Reference.Troubleshooting.Upgrade.TroubleshootingDuringUpgrade" >}} diff --git a/content/en/docs/2024.11/_shared/upgrade/2024.5/upgrade-application-server/multi-server/run-upgrade-script.md b/content/en/docs/2024.11/_shared/upgrade/2024.5/upgrade-application-server/multi-server/run-upgrade-script.md new file mode 100644 index 000000000..5771f669c --- /dev/null +++ b/content/en/docs/2024.11/_shared/upgrade/2024.5/upgrade-application-server/multi-server/run-upgrade-script.md @@ -0,0 +1,29 @@ +1. Open a Windows PowerShell (x64) window as administrator. +1. Navigate PowerShell to inside the `Cortex Innovation 2024.5 - App Server Install Scripts\Upgrade Application Server` folder using the following command, modifying the path as necessary: + + ```powershell + cd "C:\Install\Cortex Innovation 2024.5 - App Server Install Scripts\Upgrade Application Server" + ``` + +1. Type the following command into PowerShell: + + ```powershell + .\Cortex.Innovation.Upgrade.ps1 + ``` + +1. Please read the End User Licence Agreement which can be found [here][Eula]. Once you agree to the terms, add the flag `-AcceptEULA` to the command entered above, e.g: + + ```powershell + .\.ps1 -AcceptEULA + ``` + +1. Run the PowerShell command to upgrade the HA Services and required infrastructure. +1. A credentials prompt will appear. Enter credentials of a domain user that is a member of the local Administrators group on all servers and press OK. +1. Wait for the script to finish running. This should take approximately 10 minutes. +1. Check that there have been no errors in the script; these would appear in red in the console. + + If the errors do not give any instructions on how to rectify, see [Troubleshooting During Upgrade][] for further information; if this does not help then please contact [{{% ctx %}} Service Portal][CORTEX Service Portal] for assistance. + +[CORTEX Service Portal]: {{< url path="Cortex.ServicePortal.MainDoc" >}} +[Eula]: {{< url path="Cortex.Website.Eula.MainDoc" >}} +[Troubleshooting During Upgrade]: {{< url path="Cortex.Reference.Troubleshooting.Upgrade.TroubleshootingDuringUpgrade" >}} diff --git a/content/en/docs/2024.11/_shared/upgrade/2024.5/upgrade-application-server/single-server/configure-upgrade-script.md b/content/en/docs/2024.11/_shared/upgrade/2024.5/upgrade-application-server/single-server/configure-upgrade-script.md new file mode 100644 index 000000000..3732d2812 --- /dev/null +++ b/content/en/docs/2024.11/_shared/upgrade/2024.5/upgrade-application-server/single-server/configure-upgrade-script.md @@ -0,0 +1,23 @@ +1. In the `Cortex Innovation 2024.5 - App Server Install Scripts\Upgrade Application Server` folder, locate the `Cortex.Innovation.Upgrade.ps1` script and open it with a text editor. +1. Configure the script, changing the parameters according to the details given below: + + ```powershell + .\Cortex.Upgrade.ps1 ` + -AppServicesPath "C:\Install\Cortex Innovation 2024.5 - App Services.zip" ` + -BlockPackagesPath "C:\Install\Cortex Innovation 2024.5 - Block Packages.zip" ` + -ApplicationServerIPv4Addresses @("192.168.1.1") ` + -Credential $Credential ` + -AcceptEULA:$AcceptEULA ` + *>&1 | Tee-Object -FilePath "cortex-app-upgrade-log.txt" + ``` + + | Name | Description | + |----------------------------------------------|-------------| + |`AppServicesPath` | Configure this value with the location of the Application Services zip file on the server. | + |`BlockPackagesPath` | Configure this value with the location of the Block Packages zip file on the server. | + |`ApplicationServerIPv4Addresses` | The IPv4 address of the server.| + |`Credential` | The credentials of the user which will be used to perform remote operations on the server. It must be a domain user that is a member of the local Administrators group on the server.

This does not need to be changed, a prompt will appear to enter this information when the script is run. | + |`AcceptEULA` | This does not need to be changed, the EULA will be accepted at a later stage. | + |`FilePath` | The filename that upgrade logs are written to. If this should be written to a different location than where the installation files are then a full path should be specified. | + +1. Save and close `Cortex.Innovation.Upgrade.ps1`. diff --git a/content/en/docs/2024.11/_shared/upgrade/2024.5/upgrade-application-server/single-server/make-installation-artefacts-available.md b/content/en/docs/2024.11/_shared/upgrade/2024.5/upgrade-application-server/single-server/make-installation-artefacts-available.md new file mode 100644 index 000000000..a6bc4fa80 --- /dev/null +++ b/content/en/docs/2024.11/_shared/upgrade/2024.5/upgrade-application-server/single-server/make-installation-artefacts-available.md @@ -0,0 +1,6 @@ +1. Copy the following artefacts to a folder on the server: + * Cortex Innovation 2024.5 - Block Packages.zip + * Cortex Innovation 2024.5 - App Services.zip + * Cortex Innovation 2024.5 - App Server Install Scripts.zip + +1. Extract the `Cortex Innovation 2024.5 - App Server Install Scripts.zip` file to a folder with the same name. diff --git a/content/en/docs/2024.11/_shared/upgrade/2024.5/upgrade-application-server/single-server/run-upgrade-script.md b/content/en/docs/2024.11/_shared/upgrade/2024.5/upgrade-application-server/single-server/run-upgrade-script.md new file mode 100644 index 000000000..b1eb1a11c --- /dev/null +++ b/content/en/docs/2024.11/_shared/upgrade/2024.5/upgrade-application-server/single-server/run-upgrade-script.md @@ -0,0 +1,29 @@ +1. Open a Windows PowerShell (x64) window as administrator. +1. Navigate PowerShell to inside the `Cortex Innovation 2024.5 - App Server Install Scripts\Upgrade Application Server` folder using the following command, modifying the path as necessary: + + ```powershell + cd "C:\Install\Cortex Innovation 2024.5 - App Server Install Scripts\Upgrade Application Server" + ``` + +1. Type the following command into PowerShell: + + ```powershell + .\Cortex.Innovation.Upgrade.ps1 + ``` + +1. Please read the End User Licence Agreement which can be found [here][Eula]. Once you agree to the terms, add the flag `-AcceptEULA` to the command entered above, e.g: + + ```powershell + .\.ps1 -AcceptEULA + ``` + +1. Run the PowerShell command to upgrade the application services and required infrastructure. +1. A credentials prompt will appear. Enter credentials of a domain user that is a member of the local Administrators group on the server and press OK. +1. Wait for the script to finish running. This should take approximately 10 minutes. +1. Check that there have been no errors in the script; these would appear in red in the console. + + If the errors do not give any instructions on how to rectify, see [Troubleshooting During Upgrade][] for further information; if this does not help then please contact [{{% ctx %}} Service Portal][CORTEX Service Portal] for assistance. + +[Eula]: {{< url path="Cortex.Website.Eula.MainDoc" >}} +[CORTEX Service Portal]: {{< url path="Cortex.ServicePortal.MainDoc" >}} +[Troubleshooting During Upgrade]: {{< url path="Cortex.Reference.Troubleshooting.Upgrade.TroubleshootingDuringUpgrade" >}} diff --git a/content/en/docs/2024.11/_shared/upgrade/2024.5/upgrade-application-server/upgrade-flows.md b/content/en/docs/2024.11/_shared/upgrade/2024.5/upgrade-application-server/upgrade-flows.md new file mode 100644 index 000000000..1168d5d98 --- /dev/null +++ b/content/en/docs/2024.11/_shared/upgrade/2024.5/upgrade-application-server/upgrade-flows.md @@ -0,0 +1,28 @@ +On the Web Application Server, copy the `Cortex Innovation 2024.5 - Flows Upgrader.zip` artefacts to a folder on it: +1. Extract the `Cortex Innovation 2024.5 - Flows Upgrader.zip` file to a folder with the same name. +1. Open a Windows PowerShell (x64) window as administrator. The administrator must be a domain user that is a member of the local Administrators group on the Web Application Server. +1. Navigate PowerShell to inside the `Cortex Innovation 2024.5 - Flows Upgrader` folder using the following command, modifying the path as necessary: + + ```powershell + cd "C:\Install\Cortex Innovation 2024.5 - Flows Upgrader" + ``` + +1. Export the flows to be upgraded from Gateway as a studio package. +1. Run the `Cortex.Upgrade.FlowUpgrader.exe` application using the following command, modifying the argument value to contain the extracted studio package of flows to upgrade: + + ```powershell + .\Cortex.Upgrade.FlowUpgrader.exe "C:\Install\Export.studiopkg" + ``` + +1. A message similar to the following will indicate that the application has completed successfully: + + ```text + Upgrading Flows + Flow Upgraded: Test Flows\TestFlow1.flow + Flow Upgraded: Test Flows\TestFlow3.flow + Flow Upgraded: Test Flows\TestFlow2.flow + Flows Upgraded + Upgraded Studio Package Created: export-28UpgradedTo30.StudioPkg + ``` + +1. A new studio package will be created in the same file path as the package given as the argument with the format `{PackageName}-{PreviousVersion}UpgradedTo{NewVersion}.studiopkg`. diff --git a/content/en/docs/2024.11/_shared/upgrade/2024.5/upgrade-web-application-server/configure-gateway-script.md b/content/en/docs/2024.11/_shared/upgrade/2024.5/upgrade-web-application-server/configure-gateway-script.md new file mode 100644 index 000000000..84057e4a7 --- /dev/null +++ b/content/en/docs/2024.11/_shared/upgrade/2024.5/upgrade-web-application-server/configure-gateway-script.md @@ -0,0 +1,35 @@ +1. In the `Cortex Innovation 2024.5 - Web App Server Install Scripts` folder, locate the `Cortex.Innovation.Install.Gateway.ps1` script and open it with a text editor. +1. Configure the script according to the details given below: + + ```powershell + .\Cortex.Install.Gateway.ps1 ` + -GatewayPackagePath "C:\Install\Cortex Innovation 2024.5 - Gateway.zip" ` + -GatewayApplicationPoolUsername "Domain\Username" ` + -WebRootFolder "C:\inetpub\wwwroot" ` + -WebsitePort "443" ` + -ImportCertificate $false ` + -CertificateFriendlyName "CertificateName" ` + -ConfigureSiteRedirect $true ` + -ApplySecurityMeasures $true ` + -UsingWindowsDefender $false ` + -AcceptEULA:$AcceptEula ` + *>&1 | Tee-Object -FilePath "cortex-gateway-install-log.txt" + ``` + + | Name | Description | + |------------------------------------------------|-------------| + |`GatewayPackagePath` | Configure this value with the location of the `Cortex Innovation 2024.5 - Gateway.zip` file on the server. | + |`GatewayApplicationPoolUsername` | Replace `Domain\Username` with the user that is used to run the {{% ctx %}} Gateway application pool currently.| + |`WebRootFolder` | Replace this with the correct path for the Web Root Folder on the server. Typically this will be `C:\inetpub\wwwroot`.| + |`WebsitePort` | Replace this with the port that you wish the website to use. Typically this will be `443`.| + |`ImportCertificate` | This should be set to `$false`.| + |`CertificateFriendlyName` | Replace this with the friendly name that is allocated to the certificate that {{% ctx %}} Gateway is currently using.| + |`ConfigureSiteRedirect` | If the site hosting the {{% ctx %}} Gateway web application is an existing site that doesn’t have its own content, it is recommended to redirect the site URL to the {{% ctx %}} Gateway web application URL. The default behaviour of the script is to create a URL Rewrite redirect rule to achieve this.

To skip this rule creation change the value to `$false`.| + |`ApplySecurityMeasures` | Change this to `$false` if you do not require the latest recommended [Security Best Practices][] to be implemented as part of the installation process.| + |`UsingWindowsDefender` | Change this to `$false` if you are not using the Windows Defender firewall.

If Windows Defender is not being used but an alternative firewall is, it must be configured to allow communication inbound via TCP on the port configured for HTTPS (usually 443).| + |`AcceptEULA` | This does not need to be changed, the EULA will be accepted at a later stage. | + |`FilePath` | The filename that installation logs are written to. If this should be written to a different location than where the installation files are then a full path should be specified. | + +1. Save and close `Cortex.Innovation.Install.Gateway.ps1`. + +[Security Best Practices]: {{< url path="Cortex.Guides.UpgradeCortex.Advanced.SSLBestPractices" >}} diff --git a/content/en/docs/2024.11/_shared/upgrade/2024.5/upgrade-web-application-server/run-gateway-script.md b/content/en/docs/2024.11/_shared/upgrade/2024.5/upgrade-web-application-server/run-gateway-script.md new file mode 100644 index 000000000..c627e6c97 --- /dev/null +++ b/content/en/docs/2024.11/_shared/upgrade/2024.5/upgrade-web-application-server/run-gateway-script.md @@ -0,0 +1,32 @@ +1. Open a Windows PowerShell (x64) window as administrator. +1. Navigate PowerShell to inside the `Cortex Innovation 2024.5 - Web App Server Install Scripts` folder using the following command, modifying the path as necessary: + + ```powershell + cd "C:\Install\Cortex Innovation 2024.5 - Web App Server Install Scripts" + ``` + +1. Type the following command into PowerShell: + + ```powershell + .\Cortex.Innovation.Install.Gateway.ps1 + ``` + +1. Please read the End User Licence Agreement which can be found [here][Eula]. Once you agree to the terms, add the flag `-AcceptEULA` to the command entered above, e.g: + + ```powershell + .\.ps1 -AcceptEULA + ``` + +1. Run the PowerShell command to install {{% ctx %}} Gateway. +1. Check that there have been no errors in the script; these would appear in red in the console. + + If there are any errors, then please follow any instructions given within them to rectify the situation, and retry the upgrade. + + If the errors do not give any instructions on how to rectify, please contact [{{% ctx %}} Service Portal][CORTEX Service Portal] for further assistance. + +1. Once the PowerShell script execution has completed, a prompt will appear to restart the machine. You can choose to restart now (`N`) or later (`L`). +{{< alert type="note" title="Note" >}} It is recommended to choose to restart later after the final step of this section has completed to ensure that no issues occur.{{< /alert >}} +1. In a browser, navigate to the {{% ctx %}} Gateway website, available at `://:/`, e.g. `https://localhost/gateway` and wait for the login page to load. This may take a few minutes. + +[Eula]: {{< url path="Cortex.Website.Eula.MainDoc" >}} +[CORTEX Service Portal]: {{< url path="Cortex.ServicePortal.MainDoc" >}} diff --git a/content/en/docs/2024.11/_shared/upgrade/2024.5/upgrade-web-application-server/test-upgrade.md b/content/en/docs/2024.11/_shared/upgrade/2024.5/upgrade-web-application-server/test-upgrade.md new file mode 100644 index 000000000..e56d291ae --- /dev/null +++ b/content/en/docs/2024.11/_shared/upgrade/2024.5/upgrade-web-application-server/test-upgrade.md @@ -0,0 +1,28 @@ +## Test Debugging Flows + +Test the platform by creating a new flow and executing it using the following steps: + +1. Click on the `Flows` charm, then the `+` button and click `Group` to open a dialog. +1. Enter a name for the group, configure the `Permission Groups` and click `OK` to create the group. +1. Click on the group to open it (refresh the page if it does not appear). +1. Inside the group, click the `+` button again and click on `Flow` to open a dialog. If the menu item is not present, it means that the `FeatureFlags` in the `CortexGateway.SetParameters.xml` file was not set properly when installing Gateway. See [Troubleshooting][] for more information. +1. Enter a name for the flow, configure the `Permission Groups` and click `OK` to create the flow. +1. The flow should be displayed with a start flow block and end flow block, if those blocks are not displayed see [Troubleshooting][]. A list of block palettes should be displayed down the left hand side: + {{< figure src="../../2024.5/images/New Innovation Flow View.PNG" title="New Flow - Number of palettes may differ" >}} +1. Add a `Set Variable` block and connect it between the start and end blocks. +1. Click the `Set Variable` block to open the Property Editor. +1. Set the `Value` property to the expression `DateTimeOffset.Now`. +1. Type `Result` into the `Variable` property and click `Create Result`. +1. In the Variable Editor, set `Is Output Variable?` to `true` for the new `Result` variable. +1. Set a breakpoint on the end block and start the flow. An execution token should appear, the `Result` variable should show the current time. If the token does not appear, try refreshing the page. Failing that, see [Troubleshooting][]. +1. Continue or stop the execution. +1. Commit the flow. + +## Test Publishing Production Flows + +1. Log in to Gateway with a user that has the `Admin` role. +1. Click on the `Settings` charm, then `Packages`. +1. Click `Add Package Definition`. Enter a package name and select the new flow to add to the package. Click `Save` to save the new package. +1. Click `Publish`. A success message should appear. If it doesn't it means that there is a problem with the configuration in the `web.config` file for {{% ctx %}} Gateway, or the Application Services aren't healthy. See [Troubleshooting][] for more information. + +[Troubleshooting]: {{< url path="Cortex.Reference.Troubleshooting.Upgrade.TroubleshootingDuringUpgrade" >}} diff --git a/content/en/docs/2024.11/_shared/upgrade/2024.7/upgrade-application-server/multi-server/run-upgrade-script.md b/content/en/docs/2024.11/_shared/upgrade/2024.7/upgrade-application-server/multi-server/run-upgrade-script.md new file mode 100644 index 000000000..25682b1aa --- /dev/null +++ b/content/en/docs/2024.11/_shared/upgrade/2024.7/upgrade-application-server/multi-server/run-upgrade-script.md @@ -0,0 +1,29 @@ +1. Open a Windows PowerShell (x64) window as administrator. +1. Navigate PowerShell to inside the `Cortex Innovation 2024.7 - App Server Install Scripts\Upgrade Application Server` folder using the following command, modifying the path as necessary: + + ```powershell + cd "C:\Install\Cortex Innovation 2024.7 - App Server Install Scripts\Upgrade Application Server" + ``` + +1. Type the following command into PowerShell: + + ```powershell + .\Cortex.Innovation.Upgrade.ps1 + ``` + +1. Please read the End User Licence Agreement which can be found [here][Eula]. Once you agree to the terms, add the flag `-AcceptEULA` to the command entered above, e.g: + + ```powershell + .\.ps1 -AcceptEULA + ``` + +1. Run the PowerShell command to upgrade the HA Services and required infrastructure. +1. A credentials prompt will appear. Enter credentials of a domain user that is a member of the local Administrators group on all servers and press OK. +1. Wait for the script to finish running. This should take approximately 10 minutes. +1. Check that there have been no errors in the script; these would appear in red in the console. + + If the errors do not give any instructions on how to rectify, see [Troubleshooting During Upgrade][] for further information; if this does not help then please contact [{{% ctx %}} Service Portal][CORTEX Service Portal] for assistance. + +[CORTEX Service Portal]: {{< url path="Cortex.ServicePortal.MainDoc" >}} +[Eula]: {{< url path="Cortex.Website.Eula.MainDoc" >}} +[Troubleshooting During Upgrade]: {{< url path="Cortex.Reference.Troubleshooting.Upgrade.TroubleshootingDuringUpgrade" >}} diff --git a/content/en/docs/2024.11/_shared/upgrade/2024.7/upgrade-application-server/single-server/configure-upgrade-script.md b/content/en/docs/2024.11/_shared/upgrade/2024.7/upgrade-application-server/single-server/configure-upgrade-script.md new file mode 100644 index 000000000..eb9ce06d7 --- /dev/null +++ b/content/en/docs/2024.11/_shared/upgrade/2024.7/upgrade-application-server/single-server/configure-upgrade-script.md @@ -0,0 +1,37 @@ +1. In the `Cortex Innovation 2024.7 - App Server Install Scripts\Upgrade Application Server` folder, locate the `Cortex.Innovation.Upgrade.ps1` script and open it with a text editor. +1. Choose the tab below that matches the configuration for this upgrade, then update the script to match, changing the parameters according to the details given below: + + {{% alert title="Note" %}} +To check the previous configuration values open the `Cortex.Upgrade.ApplicationConfig.json` file located in `%ProgramData%\Cortex\Upgrade`. If the file does not exist or the values should be changed then use the `Use New Configuration Values` tab. + {{% /alert %}} + + {{< tabpane lang="powershell" >}} + {{< tab header="Use Previous Configuration Values" >}} +.\Cortex.Upgrade.ps1 ` + -AppServicesPath "C:\Install\Cortex Innovation 2024.7 - App Services.zip" ` + -BlockPackagesPath "C:\Install\Cortex Innovation 2024.7 - Block Packages.zip" ` + -Credential $Credential ` + -AcceptEULA:$AcceptEULA ` + *>&1 | Tee-Object -FilePath "cortex-ha-upgrade-log.txt" + {{< /tab >}} + {{< tab header="Use New Configuration Values">}} +.\Cortex.Upgrade.ps1 ` + -AppServicesPath "C:\Install\Cortex Innovation 2024.7 - App Services.zip" ` + -BlockPackagesPath "C:\Install\Cortex Innovation 2024.7 - Block Packages.zip" ` + -ApplicationServerIPv4Addresses @("192.168.1.1") ` + -Credential $Credential ` + -AcceptEULA:$AcceptEULA ` + *>&1 | Tee-Object -FilePath "cortex-app-upgrade-log.txt" + {{< /tab >}} + {{< /tabpane >}} + + | Name | Description | + |----------------------------------------------|-------------| + |`AppServicesPath` | Configure this value with the location of the Application Services zip file on the server. | + |`BlockPackagesPath` | Configure this value with the location of the Block Packages zip file on the server. | + |`ApplicationServerIPv4Addresses` | The IPv4 address of the server.| + |`Credential` | The credentials of the user which will be used to perform remote operations on the server. It must be a domain user that is a member of the local Administrators group on the server.

This does not need to be changed, a prompt will appear to enter this information when the script is run. | + |`AcceptEULA` | This does not need to be changed, the EULA will be accepted at a later stage. | + |`FilePath` | The filename that upgrade logs are written to. If this should be written to a different location than where the installation files are then a full path should be specified. | + +1. Save and close `Cortex.Innovation.Upgrade.ps1`. diff --git a/content/en/docs/2024.11/_shared/upgrade/2024.7/upgrade-application-server/single-server/make-installation-artefacts-available.md b/content/en/docs/2024.11/_shared/upgrade/2024.7/upgrade-application-server/single-server/make-installation-artefacts-available.md new file mode 100644 index 000000000..4f2b7dd33 --- /dev/null +++ b/content/en/docs/2024.11/_shared/upgrade/2024.7/upgrade-application-server/single-server/make-installation-artefacts-available.md @@ -0,0 +1,6 @@ +1. Copy the following artefacts to a folder on the server: + * Cortex Innovation 2024.7 - Block Packages.zip + * Cortex Innovation 2024.7 - App Services.zip + * Cortex Innovation 2024.7 - App Server Install Scripts.zip + +1. Extract the `Cortex Innovation 2024.7 - App Server Install Scripts.zip` file to a folder with the same name. diff --git a/content/en/docs/2024.11/_shared/upgrade/2024.7/upgrade-application-server/single-server/run-upgrade-script.md b/content/en/docs/2024.11/_shared/upgrade/2024.7/upgrade-application-server/single-server/run-upgrade-script.md new file mode 100644 index 000000000..465b4b14a --- /dev/null +++ b/content/en/docs/2024.11/_shared/upgrade/2024.7/upgrade-application-server/single-server/run-upgrade-script.md @@ -0,0 +1,29 @@ +1. Open a Windows PowerShell (x64) window as administrator. +1. Navigate PowerShell to inside the `Cortex Innovation 2024.7 - App Server Install Scripts\Upgrade Application Server` folder using the following command, modifying the path as necessary: + + ```powershell + cd "C:\Install\Cortex Innovation 2024.7 - App Server Install Scripts\Upgrade Application Server" + ``` + +1. Type the following command into PowerShell: + + ```powershell + .\Cortex.Innovation.Upgrade.ps1 + ``` + +1. Please read the End User Licence Agreement which can be found [here][Eula]. Once you agree to the terms, add the flag `-AcceptEULA` to the command entered above, e.g: + + ```powershell + .\.ps1 -AcceptEULA + ``` + +1. Run the PowerShell command to upgrade the application services and required infrastructure. +1. A credentials prompt will appear. Enter credentials of a domain user that is a member of the local Administrators group on the server and press OK. +1. Wait for the script to finish running. This should take approximately 10 minutes. +1. Check that there have been no errors in the script; these would appear in red in the console. + + If the errors do not give any instructions on how to rectify, see [Troubleshooting During Upgrade][] for further information; if this does not help then please contact [{{% ctx %}} Service Portal][CORTEX Service Portal] for assistance. + +[Eula]: {{< url path="Cortex.Website.Eula.MainDoc" >}} +[CORTEX Service Portal]: {{< url path="Cortex.ServicePortal.MainDoc" >}} +[Troubleshooting During Upgrade]: {{< url path="Cortex.Reference.Troubleshooting.Upgrade.TroubleshootingDuringUpgrade" >}} diff --git a/content/en/docs/2024.11/_shared/upgrade/2024.7/upgrade-web-application-server/configure-gateway-script.md b/content/en/docs/2024.11/_shared/upgrade/2024.7/upgrade-web-application-server/configure-gateway-script.md new file mode 100644 index 000000000..05cfdc5c2 --- /dev/null +++ b/content/en/docs/2024.11/_shared/upgrade/2024.7/upgrade-web-application-server/configure-gateway-script.md @@ -0,0 +1,48 @@ +1. In the `Cortex Innovation 2024.7 - Web App Server Install Scripts` folder, locate the `Cortex.Innovation.Install.Gateway.ps1` script and open it with a text editor. +1. Choose the tab below that matches the configuration for this upgrade, then update the script to match, changing the parameters according to the details given below: + + {{% alert title="Note" %}} +To check the previous configuration values open the `Cortex.Upgrade.GatewayConfig.json` file located in `%ProgramData%\Cortex\Upgrade`. If the file does not exist or any of the values should be changed then use the `Use New Configuration Values` tab removing any of the parameters that do need need to change leaving the minimum required parameters as can be seen in the `Use Previous Configuration Values` tab. + {{% /alert %}} + + {{< tabpane lang="powershell" >}} + {{< tab header="Use Previous Configuration Values" >}} +.\Cortex.Install.Gateway.ps1 ` + -GatewayPackagePath "C:\Install\Cortex Innovation 2024.7 - Gateway.zip" ` + -ApplySecurityMeasures $true ` + -AcceptEULA:$AcceptEula ` + *>&1 | Tee-Object -FilePath "cortex-gateway-install-log.txt" + {{< /tab >}} + {{< tab header="Use New Configuration Values">}} +.\Cortex.Install.Gateway.ps1 ` + -GatewayPackagePath "C:\Install\Cortex Innovation 2024.7 - Gateway.zip" ` + -GatewayApplicationPoolUsername "Domain\Username" ` + -WebRootFolder "C:\inetpub\wwwroot" ` + -WebsitePort "443" ` + -ImportCertificate $false ` + -CertificateFriendlyName "CertificateName" ` + -ConfigureSiteRedirect $true ` + -ApplySecurityMeasures $true ` + -UsingWindowsDefender $false ` + -AcceptEULA:$AcceptEula ` + *>&1 | Tee-Object -FilePath "cortex-gateway-install-log.txt" + {{< /tab >}} + {{< /tabpane >}} + + | Name | Description | + |------------------------------------------------|-------------| + |`GatewayPackagePath` | Configure this value with the location of the `Cortex Innovation 2024.7 - Gateway.zip` file on the server. | + |`GatewayApplicationPoolUsername` | Replace `Domain\Username` with the user that is used to run the {{% ctx %}} Gateway application pool currently.| + |`WebRootFolder` | Replace this with the correct path for the Web Root Folder on the server. Typically this will be `C:\inetpub\wwwroot`.| + |`WebsitePort` | Replace this with the port that you wish the website to use. Typically this will be `443`.| + |`ImportCertificate` | This should be set to `$false`.| + |`CertificateFriendlyName` | Replace this with the friendly name that is allocated to the certificate that {{% ctx %}} Gateway is currently using.| + |`ConfigureSiteRedirect` | If the site hosting the {{% ctx %}} Gateway web application is an existing site that doesn’t have its own content, it is recommended to redirect the site URL to the {{% ctx %}} Gateway web application URL. The default behaviour of the script is to create a URL Rewrite redirect rule to achieve this.

To skip this rule creation change the value to `$false`.| + |`ApplySecurityMeasures` | Change this to `$false` if you do not require the latest recommended [Security Best Practices][] to be implemented as part of the installation process.| + |`UsingWindowsDefender` | Change this to `$false` if you are not using the Windows Defender firewall.

If Windows Defender is not being used but an alternative firewall is, it must be configured to allow communication inbound via TCP on the port configured for HTTPS (usually 443).| + |`AcceptEULA` | This does not need to be changed, the EULA will be accepted at a later stage. | + |`FilePath` | The filename that installation logs are written to. If this should be written to a different location than where the installation files are then a full path should be specified. | + +1. Save and close `Cortex.Innovation.Install.Gateway.ps1`. + +[Security Best Practices]: {{< url path="Cortex.Guides.UpgradeCortex.Advanced.SSLBestPractices" >}} diff --git a/content/en/docs/2024.11/_shared/upgrade/2024.7/upgrade-web-application-server/run-gateway-script.md b/content/en/docs/2024.11/_shared/upgrade/2024.7/upgrade-web-application-server/run-gateway-script.md new file mode 100644 index 000000000..dc5cea551 --- /dev/null +++ b/content/en/docs/2024.11/_shared/upgrade/2024.7/upgrade-web-application-server/run-gateway-script.md @@ -0,0 +1,32 @@ +1. Open a Windows PowerShell (x64) window as administrator. +1. Navigate PowerShell to inside the `Cortex Innovation 2024.7 - Web App Server Install Scripts` folder using the following command, modifying the path as necessary: + + ```powershell + cd "C:\Install\Cortex Innovation 2024.7 - Web App Server Install Scripts" + ``` + +1. Type the following command into PowerShell: + + ```powershell + .\Cortex.Innovation.Install.Gateway.ps1 + ``` + +1. Please read the End User Licence Agreement which can be found [here][Eula]. Once you agree to the terms, add the flag `-AcceptEULA` to the command entered above, e.g: + + ```powershell + .\.ps1 -AcceptEULA + ``` + +1. Run the PowerShell command to install {{% ctx %}} Gateway. +1. Check that there have been no errors in the script; these would appear in red in the console. + + If there are any errors, then please follow any instructions given within them to rectify the situation, and retry the upgrade. + + If the errors do not give any instructions on how to rectify, please contact [{{% ctx %}} Service Portal][CORTEX Service Portal] for further assistance. + +1. Once the PowerShell script execution has completed, a prompt will appear to restart the machine. You can choose to restart now (`N`) or later (`L`). +{{< alert type="note" title="Note" >}} It is recommended to choose to restart later after the final step of this section has completed to ensure that no issues occur.{{< /alert >}} +1. In a browser, navigate to the {{% ctx %}} Gateway website, available at `://:/`, e.g. `https://localhost/gateway` and wait for the login page to load. This may take a few minutes. + +[Eula]: {{< url path="Cortex.Website.Eula.MainDoc" >}} +[CORTEX Service Portal]: {{< url path="Cortex.ServicePortal.MainDoc" >}} diff --git a/content/en/docs/2024.11/_shared/upgrade/2024.7/upgrade-web-application-server/test-upgrade.md b/content/en/docs/2024.11/_shared/upgrade/2024.7/upgrade-web-application-server/test-upgrade.md new file mode 100644 index 000000000..64a654d58 --- /dev/null +++ b/content/en/docs/2024.11/_shared/upgrade/2024.7/upgrade-web-application-server/test-upgrade.md @@ -0,0 +1,28 @@ +## Test Debugging Flows + +Test the platform by creating a new flow and executing it using the following steps: + +1. Click on the `Flows` charm, then the `+` button and click `Group` to open a dialog. +1. Enter a name for the group, configure the `Permission Groups` and click `OK` to create the group. +1. Click on the group to open it (refresh the page if it does not appear). +1. Inside the group, click the `+` button again and click on `Flow` to open a dialog. If the menu item is not present, it means that the `FeatureFlags` in the `CortexGateway.SetParameters.xml` file was not set properly when installing Gateway. See [Troubleshooting][] for more information. +1. Enter a name for the flow, configure the `Permission Groups` and click `OK` to create the flow. +1. The flow should be displayed with a start flow block and end flow block, if those blocks are not displayed see [Troubleshooting][]. A list of block palettes should be displayed down the left hand side: + {{< figure src="../../2024.7/images/New Innovation Flow View.PNG" title="New Flow - Number of palettes may differ" >}} +1. Add a `Set Variable` block and connect it between the start and end blocks. +1. Click the `Set Variable` block to open the Property Editor. +1. Set the `Value` property to the expression `DateTimeOffset.Now`. +1. Type `Result` into the `Variable` property and click `Create Result`. +1. In the Variable Editor, set `Is Output Variable?` to `true` for the new `Result` variable. +1. Set a breakpoint on the end block and start the flow. An execution token should appear, the `Result` variable should show the current time. If the token does not appear, try refreshing the page. Failing that, see [Troubleshooting][]. +1. Continue or stop the execution. +1. Commit the flow. + +## Test Publishing Production Flows + +1. Log in to Gateway with a user that has the `Admin` role. +1. Click on the `Settings` charm, then `Packages`. +1. Click `Add Package Definition`. Enter a package name and select the new flow to add to the package. Click `Save` to save the new package. +1. Click `Publish`. A success message should appear. If it doesn't it means that there is a problem with the configuration in the `web.config` file for {{% ctx %}} Gateway, or the Application Services aren't healthy. See [Troubleshooting][] for more information. + +[Troubleshooting]: {{< url path="Cortex.Reference.Troubleshooting.Upgrade.TroubleshootingDuringUpgrade" >}} diff --git a/content/en/docs/2024.11/_shared/upgrade/2024.7/upgrade-web-application-server/upgrade-flows.md b/content/en/docs/2024.11/_shared/upgrade/2024.7/upgrade-web-application-server/upgrade-flows.md new file mode 100644 index 000000000..503ea92b1 --- /dev/null +++ b/content/en/docs/2024.11/_shared/upgrade/2024.7/upgrade-web-application-server/upgrade-flows.md @@ -0,0 +1,43 @@ +1. Export the flows to be upgraded from {{% ctx %}} Gateway as a studio package: + 1. In a browser, navigate to {{% ctx %}} Gateway and log in as a user with administrative privileges. + 1. Click on the `Settings` charm and select `Studio Export`. + 1. Select all the flows to be upgraded and click `Export`. + 1. A message should be displayed confirming that the studio package was exported successfully. +1. Open a Windows PowerShell (x64) window as administrator. +1. Navigate PowerShell to inside the `Cortex Innovation 2024.7 - Flows Upgrader` folder using the following command, modifying the path as necessary: + + ```powershell + cd "C:\Install\Cortex Innovation 2024.7 - Flows Upgrader" + ``` + +1. Run the `Cortex.Upgrade.FlowsUpgrader.exe` application using the following command, modifying the path specified to contain the extracted studio package of flows to upgrade (typically this will have been exported to the local `Downloads` folder): + + ```powershell + .\Cortex.Upgrade.FlowsUpgrader.exe "C:\Users\{Username}\Downloads\export.studiopkg" + ``` + +1. A message similar to the following will indicate that the application has completed successfully: + + ```text + Upgrading Flows + Flow Upgraded: Test Flows\TestFlow1.flow + Flow Upgraded: Test Flows\TestFlow3.flow + Flow Upgraded: Test Flows\TestFlow2.flow + Flows Upgraded + Upgraded Studio Package Created: export-28UpgradedTo30.StudioPkg + ``` + + A new studio package will have been created in the same location as the original export package with the name `{PackageName}-{PreviousVersion}UpgradedTo{NewVersion}.studiopkg`. +1. Import the upgraded flow package into {{% ctx %}} Gateway: + 1. In a browser, navigate to {{% ctx %}} Gateway and log in as a user with administrative privileges. + 1. Click on the `Settings` charm and select `Studio Import`. + 1. Select `Browse` and locate and select the upgraded studio package and click `Open`. + 1. Verify that there are no flows with a red status and click `Import`. + 1. A message should be displayed confirming that the studio package was imported successfully. +1. Re-publish any previously published packages: + 1. Click on the `Settings` charm and select `Packages`. + 1. On the table of Package Definitions filter the Is Published column to display `Is Published`. + 1. For each package listed select it in the table then: + 1. Scroll down to below the package definition and select `Create New Version`. + 1. Click `Save`. + 1. Click `Publish`. diff --git a/content/en/docs/2024.11/_shared/upgrade/2024.9/upgrade-application-server/multi-server/run-upgrade-script.md b/content/en/docs/2024.11/_shared/upgrade/2024.9/upgrade-application-server/multi-server/run-upgrade-script.md new file mode 100644 index 000000000..1e4d54d40 --- /dev/null +++ b/content/en/docs/2024.11/_shared/upgrade/2024.9/upgrade-application-server/multi-server/run-upgrade-script.md @@ -0,0 +1,30 @@ +1. Open a Windows PowerShell (x64) window as administrator. + {{< alert title="Important" color="warning" >}}It is critical to make sure this is a new PowerShell window. If any Service Fabric cmdlets have been run previously to running the `Cortex.Innovation.Upgrade.ps1` script, the upgrade will close halfway through due to the PowerShell module being updated.{{< /alert >}} +1. Navigate PowerShell to inside the `Cortex Innovation 2024.9 - App Server Install Scripts\Upgrade Application Server` folder using the following command, modifying the path as necessary: + + ```powershell + cd "C:\Install\Cortex Innovation 2024.9 - App Server Install Scripts\Upgrade Application Server" + ``` + +1. Type the following command into PowerShell: + + ```powershell + .\Cortex.Innovation.Upgrade.ps1 + ``` + +1. Please read the End User Licence Agreement which can be found [here][Eula]. Once you agree to the terms, add the flag `-AcceptEULA` to the command entered above, e.g: + + ```powershell + .\.ps1 -AcceptEULA + ``` + +1. Run the PowerShell command to upgrade the HA Services and required infrastructure. +1. A credentials prompt will appear. Enter credentials of a domain user that is a member of the local Administrators group on all servers and press OK. +1. Wait for the script to finish running. This should take approximately 10 minutes. +1. Check that there have been no errors in the script; these would appear in red in the console. + + If the errors do not give any instructions on how to rectify, see [Troubleshooting During Upgrade][] for further information; if this does not help then please contact [{{% ctx %}} Service Portal][CORTEX Service Portal] for assistance. + +[CORTEX Service Portal]: {{< url path="Cortex.ServicePortal.MainDoc" >}} +[Eula]: {{< url path="Cortex.Website.Eula.MainDoc" >}} +[Troubleshooting During Upgrade]: {{< url path="Cortex.Reference.Troubleshooting.Upgrade.TroubleshootingDuringUpgrade" >}} diff --git a/content/en/docs/2024.11/_shared/upgrade/2024.9/upgrade-application-server/single-server/configure-upgrade-script.md b/content/en/docs/2024.11/_shared/upgrade/2024.9/upgrade-application-server/single-server/configure-upgrade-script.md new file mode 100644 index 000000000..c52a96eff --- /dev/null +++ b/content/en/docs/2024.11/_shared/upgrade/2024.9/upgrade-application-server/single-server/configure-upgrade-script.md @@ -0,0 +1,37 @@ +1. In the `Cortex Innovation 2024.9 - App Server Install Scripts\Upgrade Application Server` folder, locate the `Cortex.Innovation.Upgrade.ps1` script and open it with a text editor. +1. Choose the tab below that matches the configuration for this upgrade, then update the script to match, changing the parameters according to the details given below: + + {{% alert title="Note" %}} +To check the previous configuration values open the `Cortex.Upgrade.ApplicationConfig.json` file located in `%ProgramData%\Cortex\Upgrade`. If the file does not exist or the values should be changed then use the `Use New Configuration Values` tab. + {{% /alert %}} + + {{< tabpane lang="powershell" >}} + {{< tab header="Use Previous Configuration Values" >}} +.\Cortex.Upgrade.ps1 ` + -AppServicesPath "C:\Install\Cortex Innovation 2024.9 - App Services.zip" ` + -BlockPackagesPath "C:\Install\Cortex Innovation 2024.9 - Block Packages.zip" ` + -Credential $Credential ` + -AcceptEULA:$AcceptEULA ` + *>&1 | Tee-Object -FilePath "cortex-ha-upgrade-log.txt" + {{< /tab >}} + {{< tab header="Use New Configuration Values">}} +.\Cortex.Upgrade.ps1 ` + -AppServicesPath "C:\Install\Cortex Innovation 2024.9 - App Services.zip" ` + -BlockPackagesPath "C:\Install\Cortex Innovation 2024.9 - Block Packages.zip" ` + -ApplicationServerIPv4Addresses @("192.168.1.1") ` + -Credential $Credential ` + -AcceptEULA:$AcceptEULA ` + *>&1 | Tee-Object -FilePath "cortex-app-upgrade-log.txt" + {{< /tab >}} + {{< /tabpane >}} + + | Name | Description | + |----------------------------------------------|-------------| + |`AppServicesPath` | Configure this value with the location of the Application Services zip file on the server. | + |`BlockPackagesPath` | Configure this value with the location of the Block Packages zip file on the server. | + |`ApplicationServerIPv4Addresses` | The IPv4 address of the server.| + |`Credential` | The credentials of the user which will be used to perform remote operations on the server. It must be a domain user that is a member of the local Administrators group on the server.

This does not need to be changed, a prompt will appear to enter this information when the script is run. | + |`AcceptEULA` | This does not need to be changed, the EULA will be accepted at a later stage. | + |`FilePath` | The filename that upgrade logs are written to. If this should be written to a different location than where the installation files are then a full path should be specified. | + +1. Save and close `Cortex.Innovation.Upgrade.ps1`. diff --git a/content/en/docs/2024.11/_shared/upgrade/2024.9/upgrade-application-server/single-server/make-installation-artefacts-available.md b/content/en/docs/2024.11/_shared/upgrade/2024.9/upgrade-application-server/single-server/make-installation-artefacts-available.md new file mode 100644 index 000000000..ada75ad8f --- /dev/null +++ b/content/en/docs/2024.11/_shared/upgrade/2024.9/upgrade-application-server/single-server/make-installation-artefacts-available.md @@ -0,0 +1,6 @@ +1. Copy the following artefacts to a folder on the server: + * Cortex Innovation 2024.9 - Block Packages.zip + * Cortex Innovation 2024.9 - App Services.zip + * Cortex Innovation 2024.9 - App Server Install Scripts.zip + +1. Extract the `Cortex Innovation 2024.9 - App Server Install Scripts.zip` file to a folder with the same name. diff --git a/content/en/docs/2024.11/_shared/upgrade/2024.9/upgrade-application-server/single-server/run-upgrade-script.md b/content/en/docs/2024.11/_shared/upgrade/2024.9/upgrade-application-server/single-server/run-upgrade-script.md new file mode 100644 index 000000000..d1342b54c --- /dev/null +++ b/content/en/docs/2024.11/_shared/upgrade/2024.9/upgrade-application-server/single-server/run-upgrade-script.md @@ -0,0 +1,30 @@ +1. Open a Windows PowerShell (x64) window as administrator. + {{< alert title="Important" color="warning" >}}It is critical to make sure this is a new PowerShell window. If any Service Fabric cmdlets have been run previously to running the `Cortex.Innovation.Upgrade.ps1` script, the upgrade will close halfway through due to the PowerShell module being updated.{{< /alert >}} +1. Navigate PowerShell to inside the `Cortex Innovation 2024.9 - App Server Install Scripts\Upgrade Application Server` folder using the following command, modifying the path as necessary: + + ```powershell + cd "C:\Install\Cortex Innovation 2024.9 - App Server Install Scripts\Upgrade Application Server" + ``` + +1. Type the following command into PowerShell: + + ```powershell + .\Cortex.Innovation.Upgrade.ps1 + ``` + +1. Please read the End User Licence Agreement which can be found [here][Eula]. Once you agree to the terms, add the flag `-AcceptEULA` to the command entered above, e.g: + + ```powershell + .\.ps1 -AcceptEULA + ``` + +1. Run the PowerShell command to upgrade the application services and required infrastructure. +1. A credentials prompt will appear. Enter credentials of a domain user that is a member of the local Administrators group on the server and press OK. +1. Wait for the script to finish running. This should take approximately 10 minutes. +1. Check that there have been no errors in the script; these would appear in red in the console. + + If the errors do not give any instructions on how to rectify, see [Troubleshooting During Upgrade][] for further information; if this does not help then please contact [{{% ctx %}} Service Portal][CORTEX Service Portal] for assistance. + +[Eula]: {{< url path="Cortex.Website.Eula.MainDoc" >}} +[CORTEX Service Portal]: {{< url path="Cortex.ServicePortal.MainDoc" >}} +[Troubleshooting During Upgrade]: {{< url path="Cortex.Reference.Troubleshooting.Upgrade.TroubleshootingDuringUpgrade" >}} diff --git a/content/en/docs/2024.11/_shared/upgrade/2024.9/upgrade-web-application-server/configure-gateway-script.md b/content/en/docs/2024.11/_shared/upgrade/2024.9/upgrade-web-application-server/configure-gateway-script.md new file mode 100644 index 000000000..948c17a79 --- /dev/null +++ b/content/en/docs/2024.11/_shared/upgrade/2024.9/upgrade-web-application-server/configure-gateway-script.md @@ -0,0 +1,48 @@ +1. In the `Cortex Innovation 2024.9 - Web App Server Install Scripts` folder, locate the `Cortex.Innovation.Install.Gateway.ps1` script and open it with a text editor. +1. Choose the tab below that matches the configuration for this upgrade, then update the script to match, changing the parameters according to the details given below: + + {{% alert title="Note" %}} +To check the previous configuration values open the `Cortex.Upgrade.GatewayConfig.json` file located in `%ProgramData%\Cortex\Upgrade`. If the file does not exist or any of the values should be changed then use the `Use New Configuration Values` tab removing any of the parameters that do need need to change leaving the minimum required parameters as can be seen in the `Use Previous Configuration Values` tab. + {{% /alert %}} + + {{< tabpane lang="powershell" >}} + {{< tab header="Use Previous Configuration Values" >}} +.\Cortex.Install.Gateway.ps1 ` + -GatewayPackagePath "C:\Install\Cortex Innovation 2024.9 - Gateway.zip" ` + -ApplySecurityMeasures $true ` + -AcceptEULA:$AcceptEula ` + *>&1 | Tee-Object -FilePath "cortex-gateway-install-log.txt" + {{< /tab >}} + {{< tab header="Use New Configuration Values">}} +.\Cortex.Install.Gateway.ps1 ` + -GatewayPackagePath "C:\Install\Cortex Innovation 2024.9 - Gateway.zip" ` + -GatewayApplicationPoolUsername "Domain\Username" ` + -WebRootFolder "C:\inetpub\wwwroot" ` + -WebsitePort "443" ` + -ImportCertificate $false ` + -CertificateFriendlyName "CertificateName" ` + -ConfigureSiteRedirect $true ` + -ApplySecurityMeasures $true ` + -UsingWindowsDefender $false ` + -AcceptEULA:$AcceptEula ` + *>&1 | Tee-Object -FilePath "cortex-gateway-install-log.txt" + {{< /tab >}} + {{< /tabpane >}} + + | Name | Description | + |------------------------------------------------|-------------| + |`GatewayPackagePath` | Configure this value with the location of the `Cortex Innovation 2024.9 - Gateway.zip` file on the server. | + |`GatewayApplicationPoolUsername` | Replace `Domain\Username` with the user that is used to run the {{% ctx %}} Gateway application pool currently.| + |`WebRootFolder` | Replace this with the correct path for the Web Root Folder on the server. Typically this will be `C:\inetpub\wwwroot`.| + |`WebsitePort` | Replace this with the port that you wish the website to use. Typically this will be `443`.| + |`ImportCertificate` | This should be set to `$false`.| + |`CertificateFriendlyName` | Replace this with the friendly name that is allocated to the certificate that {{% ctx %}} Gateway is currently using.| + |`ConfigureSiteRedirect` | If the site hosting the {{% ctx %}} Gateway web application is an existing site that doesn’t have its own content, it is recommended to redirect the site URL to the {{% ctx %}} Gateway web application URL. The default behaviour of the script is to create a URL Rewrite redirect rule to achieve this.

To skip this rule creation change the value to `$false`.| + |`ApplySecurityMeasures` | Change this to `$false` if you do not require the latest recommended [Security Best Practices][] to be implemented as part of the installation process.| + |`UsingWindowsDefender` | Change this to `$false` if you are not using the Windows Defender firewall.

If Windows Defender is not being used but an alternative firewall is, it must be configured to allow communication inbound via TCP on the port configured for HTTPS (usually 443).| + |`AcceptEULA` | This does not need to be changed, the EULA will be accepted at a later stage. | + |`FilePath` | The filename that installation logs are written to. If this should be written to a different location than where the installation files are then a full path should be specified. | + +1. Save and close `Cortex.Innovation.Install.Gateway.ps1`. + +[Security Best Practices]: {{< url path="Cortex.Guides.UpgradeCortex.Advanced.SSLBestPractices" >}} diff --git a/content/en/docs/2024.11/_shared/upgrade/2024.9/upgrade-web-application-server/run-gateway-script.md b/content/en/docs/2024.11/_shared/upgrade/2024.9/upgrade-web-application-server/run-gateway-script.md new file mode 100644 index 000000000..d30893b60 --- /dev/null +++ b/content/en/docs/2024.11/_shared/upgrade/2024.9/upgrade-web-application-server/run-gateway-script.md @@ -0,0 +1,32 @@ +1. Open a Windows PowerShell (x64) window as administrator. +1. Navigate PowerShell to inside the `Cortex Innovation 2024.9 - Web App Server Install Scripts` folder using the following command, modifying the path as necessary: + + ```powershell + cd "C:\Install\Cortex Innovation 2024.9 - Web App Server Install Scripts" + ``` + +1. Type the following command into PowerShell: + + ```powershell + .\Cortex.Innovation.Install.Gateway.ps1 + ``` + +1. Please read the End User Licence Agreement which can be found [here][Eula]. Once you agree to the terms, add the flag `-AcceptEULA` to the command entered above, e.g: + + ```powershell + .\.ps1 -AcceptEULA + ``` + +1. Run the PowerShell command to install {{% ctx %}} Gateway. +1. Check that there have been no errors in the script; these would appear in red in the console. + + If there are any errors, then please follow any instructions given within them to rectify the situation, and retry the upgrade. + + If the errors do not give any instructions on how to rectify, please contact [{{% ctx %}} Service Portal][CORTEX Service Portal] for further assistance. + +1. Once the PowerShell script execution has completed, a prompt will appear to restart the machine. You can choose to restart now (`N`) or later (`L`). +{{< alert type="note" title="Note" >}} It is recommended to choose to restart later after the final step of this section has completed to ensure that no issues occur.{{< /alert >}} +1. In a browser, navigate to the {{% ctx %}} Gateway website, available at `://:/`, e.g. `https://localhost/gateway` and wait for the login page to load. This may take a few minutes. + +[Eula]: {{< url path="Cortex.Website.Eula.MainDoc" >}} +[CORTEX Service Portal]: {{< url path="Cortex.ServicePortal.MainDoc" >}} diff --git a/content/en/docs/2024.11/_shared/upgrade/2024.9/upgrade-web-application-server/test-upgrade.md b/content/en/docs/2024.11/_shared/upgrade/2024.9/upgrade-web-application-server/test-upgrade.md new file mode 100644 index 000000000..79820bad5 --- /dev/null +++ b/content/en/docs/2024.11/_shared/upgrade/2024.9/upgrade-web-application-server/test-upgrade.md @@ -0,0 +1,31 @@ +## Test Debugging Flows + +Test the platform by creating a new flow and executing it using the following steps: + +1. Click on the `Dev` charm, then the `+` button and click `Group` to open a dialog. +1. Enter a name for the group, configure the `Permission Groups` and click `OK` to create the group. +1. Click on the group to open it (refresh the page if it does not appear). +1. Inside the group, click the `+` button again and click on `Activity` to open a dialog. If the menu item is not present, it means that the `FeatureFlags` in the `CortexGateway.SetParameters.xml` file was not set properly when installing Gateway. See [Troubleshooting][] for more information. +1. Enter a name for the flow, configure the `Permission Groups` and click `OK` to create the flow. +1. The flow should be displayed with a `Start Flow` block and `End Flow` block, if those blocks are not displayed see [Troubleshooting][]. A list of block palettes should be displayed down the left hand side: + {{< figure src="../../2024.9/images/New Innovation Flow View.PNG" title="New Flow - Number of palettes may differ" >}} +1. Add a `Set Variable` block and connect it between the `Start Flow` and `End Flow` blocks. +1. Click the `Set Variable` block to open the Property Editor. +1. Set the `Value` property to the expression `DateTimeOffset.Now`. +1. Type `Result` into the `Variable` property and click `Create Result`. +1. In the Variables Grid, set `Is Output Variable?` to `true` for the new `Result` variable. +1. Add a breakpoint to the `End Flow` block and start the flow. An execution token should appear. + If the token does not appear, try refreshing the page. Failing that, see [Troubleshooting][]. +1. Select the execution in the Executions Grid (bottom panel). +1. The `Result` variable displayed in the Variables Viewer (right panel) should show the current time. +1. Continue or stop the execution. +1. Commit the flow. + +## Test Publishing Production Flows + +1. Log in to Gateway with a user that has the `Admin` role. +1. Click on the `Admin` charm, then `Packages`. +1. Click `Add Package Definition`. Enter a package name and select the new flow to add to the package. Click `Save` to save the new package. +1. Click `Publish`. A success message should appear. If it doesn't it means that there is a problem with the configuration in the `web.config` file for {{% ctx %}} Gateway, or the Application Services aren't healthy. See [Troubleshooting][] for more information. + +[Troubleshooting]: {{< url path="Cortex.Reference.Troubleshooting.Upgrade.TroubleshootingDuringUpgrade" >}} diff --git a/content/en/docs/2024.11/_shared/upgrade/try-it-out/multi-server/test-executing-production-flows.md b/content/en/docs/2024.11/_shared/upgrade/try-it-out/multi-server/test-executing-production-flows.md new file mode 100644 index 000000000..743f7e6d8 --- /dev/null +++ b/content/en/docs/2024.11/_shared/upgrade/try-it-out/multi-server/test-executing-production-flows.md @@ -0,0 +1,15 @@ +1. Open an HTTP client, such as [Postman](https://www.postman.com/downloads/). Make a request with the following format: + | Property | Value | + |---------------|-------------------------------------------------------------------------------------| + | Action | POST | + | URL | https://{FQDN of Load Balancer Server}/api/default/default/flows/{Flow Name}/executions?packageName={Package Name}
e.g. https://load-balancer.domain.com/api/default/default/flows/NewFlow/executions?packageName=NewPackage| + | Content Type | application/json | + | Body | {} | + | Authentication| Basic | + | Username | The value used for `ApiGatewayBasicAuthUsername` when installing Application Services | + | Password | The value used for `ApiGatewayBasicAuthPassword` when installing Application Services (Unencrypted) | + + {{% alert title="Note" %}} If you used self-signed certificates when installing the Application Servers you will need to disable SSL certificate validation in your HTTP client. {{% /alert %}} + +1. The request should return a JSON object with the output variables of the flow e.g. `{ "Output": "2022-03-09T07:35:16+0000" }`. +1. {{% ctx %}} has now been verified and is ready to use. diff --git a/content/en/docs/2024.11/_shared/upgrade/try-it-out/single-server/test-executing-production-flows.md b/content/en/docs/2024.11/_shared/upgrade/try-it-out/single-server/test-executing-production-flows.md new file mode 100644 index 000000000..9a71ecaca --- /dev/null +++ b/content/en/docs/2024.11/_shared/upgrade/try-it-out/single-server/test-executing-production-flows.md @@ -0,0 +1,15 @@ +1. Open an HTTP client, such as [Postman](https://www.postman.com/downloads/). Make a request with the following format: + | Property | Value | + |---------------|-------------------------------------------------------------------------------------| + | Action | POST | + | URL | https://{FQDN of server}:8722/api/default/default/flows/{Flow Name}/executions?packageName={Package Name}
e.g. https://server.domain.com:8722/api/default/default/flows/NewFlow/executions?packageName=NewPackage| + | Content Type | application/json | + | Body | {} | + | Authentication| Basic | + | Username | The value used for `ApiGatewayBasicAuthUsername` when installing Application Services | + | Password | The value used for `ApiGatewayBasicAuthPassword` when installing Application Services (Unencrypted) | + + {{% alert title="Note" %}} If you used self-signed certificates when installing the server you will need to disable SSL certificate validation in your HTTP client. {{% /alert %}} + +1. The request should return a JSON object with the output variables of the flow e.g. `{ "Output": "2022-03-09T07:35:16+0000" }`. +1. {{% ctx %}} has now been verified and is ready to use. diff --git a/content/en/docs/2024.11/_shared/upgrade/upgrade-application-server/multi-server/check-application-services.md b/content/en/docs/2024.11/_shared/upgrade/upgrade-application-server/multi-server/check-application-services.md new file mode 100644 index 000000000..b91e3adcd --- /dev/null +++ b/content/en/docs/2024.11/_shared/upgrade/upgrade-application-server/multi-server/check-application-services.md @@ -0,0 +1,43 @@ +1. Log on to one of the Application Servers. +1. Import the client certificate used for the original installation of the application. Its location is specified in the `ClientCertificatePath` parameter of the `Cortex.Innovation.Install.ps1` file of the original installation. + + If the .PFX file is available on the server: + * Double-click on the client certificate .PFX file and follow the wizard. + + If the .PFX file is not available: + * Identify the certificate to export by opening the `Cortex.Upgrade.ApplicationConfig.json` configuration file located in `C:\ProgramData\Cortex\Upgrade` and locate the value of the `applicationServerCertificateSubject` and `applicationServerCertificateThumbprint`. + * Find the certificate by using the `Manage Computer Certificates` tool in Windows. In the `Personal` store, the certificate will have an `Issued To` similar to `applicationServerCertificateSubject` and to confirm it is the right certificate double-click the certificate, select the `Details` tab and locate the `Thumbprint` property to compare the value to that in `applicationServerCertificateThumbprint`. + * Export the certificate as a pfx file and then import it to the `Current User` store by double-clicking on it and following the wizard. +1. Open a web browser. +1. Navigate to `https://app-server.domain.com:9080/Explorer`, where `app-server.domain.com` is the fully qualified domain name of any Application Server. Replace `9080` with new `httpGatewayEndpointPort` value if it was changed during configuration of the original installation. + + The screen should resemble that in the following figure: + {{< figure src="/images/Service Fabric Explorer.png" >}} + + The status circles should be entirely green - this indicates that all nodes, services and instances are healthy. Other status pages can be accessed by expanding items in the leftmost pane. Issues can be tracked down to the failing component by expanding items with warning triangles or error icons on. The next few diagrams show the status pages for a healthy system. + + After expanding the application, clicking on any of the services should display a green circle and `Status = Active`: + + {{< figure src="/images/Service Fabric Explorer - Service.png" >}} + + After expanding either of the services, clicking on any of the instances/partitions should display a green circle and `Status = Ready`: + + {{< figure src="/images/Service Fabric Explorer - Instance.png" >}} + + Clicking on any of the nodes at the bottom of the leftmost pane should display a green circle and `Status = Up`: + + {{< figure src="/images/Service Fabric Explorer - Node.png" >}} + + If any warning triangles appear, wait for 5 minutes or so as the cluster may still be starting up. If the cluster looks OK, go to the next section. + + If the warnings persist or anything on the screen goes red, expand the items to find the individual services and instances which have errors or warnings. Warnings should not be ignored as they can indicate that the service can’t start but is still in the retry phase. Error and warning messages should be displayed on the status screens and should indicate what is wrong. + + If no useful message can be seen here, the service log files may contain more information. These can be found on each Application Server at: + + * `%ProgramData%/Cortex/API Gateway Service/Logs` + * `%ProgramData%/Cortex/Execution Service/Logs` + + If no solution can be found, please contact [{{% ctx %}} Service Portal][CORTEX Service Portal] for further assistance. + +[Configure Installation Script]: {{< ref "#configure-installation-script" >}} +[CORTEX Service Portal]: {{< url path="Cortex.ServicePortal.MainDoc" >}} diff --git a/content/en/docs/2024.11/_shared/upgrade/upgrade-application-server/single-server/check-application-services.md b/content/en/docs/2024.11/_shared/upgrade/upgrade-application-server/single-server/check-application-services.md new file mode 100644 index 000000000..287bb3909 --- /dev/null +++ b/content/en/docs/2024.11/_shared/upgrade/upgrade-application-server/single-server/check-application-services.md @@ -0,0 +1,43 @@ +1. Log on to the server. +1. Import the client certificate used for the original installation of the application. Its location is specified in the `ClientCertificatePath` parameter of the `Cortex.Innovation.Install.ps1` file of the original installation. + + If the .PFX file is available on the server: + * Double-click on the client certificate .PFX file and follow the wizard. + + If the .PFX file is not available: + * Identify the certificate to export by opening the `Cortex.Upgrade.ApplicationConfig.json` configuration file located in `C:\ProgramData\Cortex\Upgrade` and locate the value of the `applicationServerCertificateSubject` and `applicationServerCertificateThumbprint`. + * Find the certificate by using the `Manage Computer Certificates` tool in Windows. In the `Personal` store, the certificate will have an `Issued To` similar to `applicationServerCertificateSubject` and to confirm it is the right certificate double-click the certificate, select the `Details` tab and locate the `Thumbprint` property to compare the value to that in `applicationServerCertificateThumbprint`. + * Export the certificate as a pfx file and then import it to the `Current User` store by double-clicking on it and following the wizard. +1. Open a web browser. +1. Navigate to `https://server.domain.com:9080/Explorer`, where `server.domain.com` is the fully qualified domain name of the server. Replace `9080` with new `httpGatewayEndpointPort` value if it was changed during configuration of the original installation. + + The screen should resemble that in the following figure: + {{< figure src="/images/Service Fabric Explorer - Single.png" >}} + + The status circles should be entirely green - this indicates that the node and all services and instances are healthy. Other status pages can be accessed by expanding items in the leftmost pane. Issues can be tracked down to the failing component by expanding items with warning triangles or error icons on. The next few diagrams show the status pages for a healthy system. + + After expanding the application, clicking on any of the services should display a green circle and `Status = Active`: + + {{< figure src="/images/Service Fabric Explorer - Service - Single.png" >}} + + After expanding either of the services, clicking on any of the instances/partitions should display a green circle and `Status = Ready`: + + {{< figure src="/images/Service Fabric Explorer - Instance - Single.png" >}} + + Clicking on any of the nodes at the bottom of the leftmost pane should display a green circle and `Status = Up`: + + {{< figure src="/images/Service Fabric Explorer - Node - Single.png" >}} + + If any warning triangles appear, wait for 5 minutes or so as the cluster may still be starting up. If the cluster looks OK, go to the next section. + + If the warnings persist or anything on the screen goes red, expand the items to find the individual services and instances which have errors or warnings. Warnings should not be ignored as they can indicate that the service can’t start but is still in the retry phase. Error and warning messages should be displayed on the status screens and should indicate what is wrong. + + If no useful message can be seen here, the service log files may contain more information. These can be found on the server at: + + * `%ProgramData%/Cortex/API Gateway Service/Logs` + * `%ProgramData%/Cortex/Execution Service/Logs` + + If no solution can be found, please contact [{{% ctx %}} Service Portal][CORTEX Service Portal] for further assistance. + +[Configure Installation Script]: {{< ref "#configure-installation-script" >}} +[CORTEX Service Portal]: {{< url path="Cortex.ServicePortal.MainDoc" >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/getting-started/_index.md b/content/en/docs/2024.11/getting-started/_index.md new file mode 100644 index 000000000..8f09b4077 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/_index.md @@ -0,0 +1,6 @@ +--- +title: "Getting Started" +linkTitle: "Getting Started" +description: "Get up and running with the {{% ctx %}} Innovation platform in minutes." +weight: 3 +--- diff --git a/content/en/docs/2024.11/getting-started/cloud/_index.md b/content/en/docs/2024.11/getting-started/cloud/_index.md new file mode 100644 index 000000000..2dd8742d9 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/cloud/_index.md @@ -0,0 +1,5 @@ +--- +title: "Set up in the Cloud" +linkTitle: "Set up in the Cloud" +description: "Information about setting up observability in the cloud for a {{% ctx %}} Innovation platform." +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/Grafana/_index.md b/content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/Grafana/_index.md new file mode 100644 index 000000000..e1be36f75 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/Grafana/_index.md @@ -0,0 +1,10 @@ +--- +title: "Grafana Cloud" +linkTitle: "Grafana Cloud" +description: "Information about adding Grafana Cloud to Innovation, including details about components, supported architectures, prerequisites, installation and configuration instructions." +weight: 10 +--- + +{{% pageinfo %}} +For instructions on how to set up Grafana and Grafana Loki on-premise see {{< ahref path="Cortex.GettingStarted.OnPremise.AddObservabilityToInnovation.Grafana.MainDoc" title="Grafana on-premise" >}}. +{{% /pageinfo %}} \ No newline at end of file diff --git a/content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/Grafana/architecture.md b/content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/Grafana/architecture.md new file mode 100644 index 000000000..defbacd0e --- /dev/null +++ b/content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/Grafana/architecture.md @@ -0,0 +1,32 @@ +--- +title: "Architecture" +linkTitle: "Architecture" +description: "Information about the recommended architecture for a Grafana Cloud installation." +weight: 10 +--- + +# {{% param title %}} + +## Components + +| Component | Purpose | Required/Optional |Server Role | +|-----------|---------|----------|------------| +| [Grafana][] | Web application that provides querying and visualisation of data in the form of dashboards. | Required | Grafana Cloud managed service | +| [Grafana Loki][Grafana Loki] | Log aggregation system designed to store and query logs from applications and infrastructure. | Required | Grafana Cloud managed service | +| [Promtail][] | An agent which ships the contents of local logs to a Grafana Loki instance. It should be deployed to every machine that has a Microsoft Service Fabric node used by Innovation. | Required | Application Server | + +## Recommended Architecture + +The following architecture requires 1..n Application servers and 1 [Grafana Cloud][] managed service. + +{{< figure src="/images/editable/Grafana Platform Architecture Diagram - Cloud.png" >}} + +## Next Steps? + +1. [Prerequisites][] + +[Prerequisites]: {{< url path="Cortex.GettingStarted.Cloud.AddObservabilityToInnovation.Grafana.Prerequisites.MainDoc" >}} +[Grafana]: {{< url path="Grafana.Products.Grafana.MainDoc" >}} +[Grafana Cloud]: {{< url path="Grafana.MainDoc" >}} +[Grafana Loki]: {{< url path="Grafana.Products.Loki.MainDoc" >}} +[Promtail]: {{< url path="Grafana.Products.Loki.Promtail.MainDoc" >}} diff --git a/content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/Grafana/import-dashboards.md b/content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/Grafana/import-dashboards.md new file mode 100644 index 000000000..89bbb133e --- /dev/null +++ b/content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/Grafana/import-dashboards.md @@ -0,0 +1,71 @@ +--- +title: "Import Dashboards" +linkTitle: "Import Dashboards" +description: "Information about setting up Grafana to communicate with the Cloud Grafana Loki as well as importing and configuring the default set of dashboards." +weight: 60 +--- + +# {{% param title %}} + +This guide describes where to get the default {{% ctx %}} Innovation Dashboards from and how to import them for use in Grafana Cloud. + +Please ensure that the set up for [Grafana][] and [Loki][] have been completed before starting this section. + +## Download the {{% ctx %}} Innovation Default Dashboards + +1. Download [Grafana.Dashboards.zip] archive containing the {{% ctx %}} Innovation default dashboards. +1. Extract the content of the downloaded archive to a suitable location. + +## Create Folder for Dashboards + +1. Log in to Grafana Cloud with a user that has the *Admin* role. +1. Click the Menu icon {{< image src="/images/GrafanaMenuIcon.png" title="Menu icon" >}} to view the available options. +1. Click the Dashboards menu item. +1. Click the *New* dropdown and select *New folder*. +1. Enter a folder name, e.g. `Cortex`. +1. Click *Create*. + +## Import Dashboards + +1. Log in to Grafana Cloud with a user that has the *Admin* role. +1. Click the Menu icon {{< image src="/images/GrafanaMenuIcon.png" title="Menu icon" >}} to view the available options. +1. Click the Dashboards menu item. +1. Click the *New* dropdown and select *Import*. +1. Click on *Upload dashboard JSON file*. +1. Locate the `Flow Execution Requests.json` file extracted from the downloaded `Grafana.Dashboards.zip`. +1. Select the file and click *Open*. +1. Select the folder in Grafana you wish the dashboard to be saved in, e.g. *Cortex*. +1. Select your [configured Loki data source][] from the dropdown menu, e.g. *grafanacloud-cortexinnovation-logs*. +1. Click *Import*. +1. Repeat steps 2 - 10 for the `Platform Health.json` file. + +## Configure Data Sources + +It is necessary to update the Custom Filter inside the dashboards to use the correct data source. + +To do this, follow these steps for all default {{% ctx %}} Innovation dashboards imported: + +1. Log in to Grafana Cloud with a user that has the *Admin* role. +1. To open a dashboard: + 1. Click the Menu icon {{< image src="/images/GrafanaMenuIcon.png" title="Menu icon" >}} to view the available options. + 1. Click the Dashboards menu item. + 1. Click the folder name that the dashboards were imported to. + 1. Click the first dashboard to open. +1. Open the *Dashboard settings* menu via the cog icon in the top right-hand side of the dashboard. +1. Click *Variables* from the top menu of the *Settings* page. +1. Click *CustomFilter* in the *Variables* list. +1. Select your [configured Loki data source][] in the *Adhoc Options* > *Data source* drop-down menu, e.g. *grafanacloud-cortexinnovation-logs*. +1. Click *Apply*. +1. Click the dashboard name in the breadcrumb at the top left corner of the page to go back to the dashboard. +1. Click the + icon next to the Custom Filter to confirm that a list of available filter options is visible. If Grafana Loki has not received any logs from Promtail there will be no options available for selection. +1. Repeat steps 2 - 9 for all additional default dashboards. + +## Next Steps? + +1. [Try it Out][] + +[configured Loki data source]: {{< url path="Cortex.GettingStarted.Cloud.AddObservabilityToInnovation.Grafana.SetupLoki.MainDoc" >}} +[Grafana]: {{< url path="Cortex.GettingStarted.Cloud.AddObservabilityToInnovation.Grafana.SetupGrafana.MainDoc" >}} +[Grafana.Dashboards.zip]: {{< url path="GitHub.Cortex.Observability.3.0.0.GrafanaDashboardsZip" >}} +[Loki]: {{< url path="Cortex.GettingStarted.Cloud.AddObservabilityToInnovation.Grafana.SetupLoki.MainDoc" >}} +[Try it Out]: {{< url path="Cortex.GettingStarted.Cloud.AddObservabilityToInnovation.Grafana.TryItOut.MainDoc" >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/Grafana/install-promtail/_index.md b/content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/Grafana/install-promtail/_index.md new file mode 100644 index 000000000..6f53df537 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/Grafana/install-promtail/_index.md @@ -0,0 +1,6 @@ +--- +title: "Install Promtail" +linkTitle: "Install Promtail" +description: "Information about installing and configuring Promtail on the Application Server(s)." +weight: 50 +--- diff --git a/content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/Grafana/install-promtail/configure-promtail.md b/content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/Grafana/install-promtail/configure-promtail.md new file mode 100644 index 000000000..4546b0a10 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/Grafana/install-promtail/configure-promtail.md @@ -0,0 +1,51 @@ +--- +title: "Configure Promtail" +linkTitle: "Configure Promtail" +description: "Information about configuring Promtail on the Application Server(s)." +weight: 20 +--- + +# {{% param title %}} + +This guide describes how to configure Promtail on the Application Server(s). + +{{% alert type="note" title="Note" %}}These steps must be performed for every Promtail installation in the cluster.{{% /alert %}} + +## Configure Promtail + +### Set Client URL for Grafana Loki + +1. Open the `promtail-local-config.yaml` configuration file, which is located in the folder alongside the `promtail-windows-amd64.exe` file. +1. Replace the Grafana Loki `URL` template in the `clients` section with the `url` value noted down during [Set Up Grafana Loki][] steps. + A correct URL should be similar to `https://239948:eyJrIjoiaWVjNzE4MmVjOThkNTgxMMQ5MzIyZjdlMjAyYWY4NWJjO1I1OTc4NSIsIm4iOiJUZXN0S2V5IiwiaWQiOjY4Nzk0MX0=@logs-prod-008.grafana.net/api/prom/push`. +1. Save the file. + +### Set the positions.yaml File Path + +1. Open the `promtail-local-config.yaml` configuration file, which is located in the folder alongside the `promtail-windows-amd64.exe` file. +1. Set the `filename` in the `positions` section to the location where you want the `positions.yaml` file to be created on Promtail startup, e.g. `C:/Program Data/Cortex/Observability/Promtail/Positions.yaml`. +1. Create all the folders of the path specified in the previous step. +1. Save the file. + +{{% alert title="Note" %}} +If the specified path to the folder for the `positions.yaml` file doesn't exists, the file will not get created on Promtail startup. +{{% /alert %}} + +### Set the Path to the API Gateway Service Log Files + +1. Open the `promtail-local-config.yaml` configuration file, which is located in the folder alongside the `promtail-windows-amd64.exe` file. +1. Set the `__path__` in the `static_configs` > `targets` > `labels` section to the path of the `Logs` folder specified in the `appSettings.json` file during installation of the API Gateway Service, e.g. `"C:/ProgramData/Cortex/API Gateway Service/Logs/*.json"`. +1. Save the file. + +### Start Promtail + +1. Run Windows PowerShell as Administrator. +1. Change the location to the folder where the `promtail-windows-amd64.exe` file is located. +1. Execute the `.\Start-Promtail.ps1` command to start the Promtail Windows service. + +## Next Steps? + +1. [Import Dashboards][] + +[Import Dashboards]: {{< url path="Cortex.GettingStarted.Cloud.AddObservabilityToInnovation.Grafana.ImportDashboards.MainDoc" >}} +[Set Up Grafana Loki]: {{< url path="Cortex.GettingStarted.Cloud.AddObservabilityToInnovation.Grafana.SetupLoki.SetUpGrafanaLoki" >}} diff --git a/content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/Grafana/install-promtail/install-promtail.md b/content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/Grafana/install-promtail/install-promtail.md new file mode 100644 index 000000000..c40dde7a5 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/Grafana/install-promtail/install-promtail.md @@ -0,0 +1,30 @@ +--- +title: "Install Promtail" +linkTitle: "Install Promtail" +description: "Information about installing Promtail on the Application Server(s)." +weight: 10 +--- + +# {{% param title %}} + +This guide describes how to install Promtail on the Application Server(s). Please ensure that the [Prerequisites][] have been completed before starting this installation. + +## Install Promtail + +1. Download [Promtail 3.0.0][] archive. +1. Extract content of the downloaded archive to a suitable location, e.g. `C:\Program Data\Cortex\Observability\Promtail`. +1. Download the [Promtail Install.zip][] archive and extract its contents alongside the previously extracted Promtail `promtail-windows-amd64.exe`. +This archive contains the `promtail-local-config.yaml` configuration file, [NSSM][] (the Non-Sucking Service Manager program) and PowerShell scripts to help manage Promtail as a Windows service. +1. Run Windows PowerShell as Administrator +1. Change the location to where all the files were extracted to in step 2, e.g. `cd "C:\Program Data\Cortex\Observability\Promtail"`. +1. Execute the `.\Install-Promtail.ps1` command to install the downloaded `promtail-windows-amd64.exe` as a service. + +## Next Steps? + +1. [Configure Promtail][] + +[Configure Promtail]: {{< url path="Cortex.GettingStarted.Cloud.AddObservabilityToInnovation.Grafana.InstallPromtail.ConfigurePromtail.MainDoc" >}} +[NSSM]: {{< url path="NSSM.MainDoc" >}} +[Prerequisites]: {{< url path="Cortex.GettingStarted.Cloud.AddObservabilityToInnovation.Grafana.Prerequisites.MainDoc" >}} +[Promtail 3.0.0]: {{< url path="Grafana.SelfManaged.Downloads.Promtail.3.0.0.PromtailInstallZip" >}} +[Promtail Install.zip]: {{< url path="GitHub.Cortex.Observability.3.0.0.PromtailInstallZip" >}} diff --git a/content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/Grafana/prerequisites.md b/content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/Grafana/prerequisites.md new file mode 100644 index 000000000..9f5965e90 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/Grafana/prerequisites.md @@ -0,0 +1,59 @@ +--- +title: "Prerequisites" +linkTitle: "Prerequisites" +description: "Information about the prerequisites required on each server type for installation." +weight: 20 +--- +# {{% param title %}} + +The prerequisites required for each server role (as described in [Architecture][]) are laid out in this guide. These must be considered before undertaking the installation. + +## Hardware Requirements + +The application servers (as described in {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.Architecture" title="Architecture" >}}) to which Promtail will be added have already been installed as part of the Innovation install process and do not require any hardware modifications for the observability platform installation. + +{{% alert title="Note" %}} +The application servers must have internet access in order to communicate with the Grafana Cloud managed service. +{{% /alert %}} + + +## Software Requirements + +| Server Role | Windows Server[^1] | Other Software | +|--------------------|------------------------------------------------|--------------------| +| Application Server | [2022 (x64)][] *Recommended*
[2019 (x64)][] | [Promtail 3.0.0][] | + +[^1]: Windows Server Standard and Datacenter editions are supported. Filesystem **must be NTFS** and networking **must use IPv4**. Linux is not supported, but may be in the future. + +## Web Browser Requirements + +Grafana supports the latest versions of the following browsers: + +* Chrome/Chromium +* Firefox +* Safari +* Microsoft Edge + +{{% alert title="Note" %}} +Always enable JavaScript in your browser. Running Grafana without JavaScript enabled in the browser is not supported. +{{% / alert %}} + +## Additional Application Server Requirements + +These requirements apply to each of the Application Servers. + +### Security Requirements + +#### Installation User + +A domain user which is a member of the Local Administrators group on all Application Servers must be available to perform the installation. + +## Next Steps? + +1. [Set up Grafana][] + +[2019 (x64)]: {{< url path="Microsoft.Downloads.Windows.Server2019" >}} +[2022 (x64)]: {{< url path="Microsoft.Downloads.Windows.Server2022" >}} +[Architecture]: {{< url path="Cortex.GettingStarted.Cloud.AddObservabilityToInnovation.Grafana.Architecture.MainDoc" >}} +[Promtail 3.0.0]: {{< url path="Grafana.SelfManaged.Downloads.Promtail.3.0.0.PromtailInstallZip" >}} +[Set up Grafana]: {{< url path="Cortex.GettingStarted.Cloud.AddObservabilityToInnovation.Grafana.SetupGrafana.MainDoc" >}} diff --git a/content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/Grafana/setup-grafana.md b/content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/Grafana/setup-grafana.md new file mode 100644 index 000000000..6d3d9fe69 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/Grafana/setup-grafana.md @@ -0,0 +1,33 @@ +--- +title: "Set up Grafana" +linkTitle: "Set up Grafana" +description: "Information about setting up Grafana in the cloud." +weight: 30 +--- + +# {{% param title %}} + +## Sign up for Grafana Cloud + +1. Browse to [Grafana Labs][]. +1. Find and click the link to create free account. +1. Create your account and follow any account verification steps. +1. If asked to start a free trial, do so. +1. On the **Let's create your Grafana Stack** dialog: + + {{< figure src="/images/Grafana Cloud - Create Stack.png" >}} + + * Enter an appropriate `Team URL` which will be used as a customised link to access the Grafana Cloud. + * Select the `Deployment region` which is where the service will be deployed to. This should be preferably close to the High Availability nodes. + * Review the terms and conditions as well as any agreements. + * Click `Finish Setup`. + +1. Wait for Grafana Cloud to load + +## Next Steps? + +1. [Set up Grafana Loki][] + + +[Grafana Labs]: {{< url path="Grafana.MainDoc" >}} +[Set up Grafana Loki]: {{< url path="Cortex.GettingStarted.Cloud.AddObservabilityToInnovation.Grafana.SetupLoki.MainDoc" >}} diff --git a/content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/Grafana/setup-loki.md b/content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/Grafana/setup-loki.md new file mode 100644 index 000000000..d8495b8b6 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/Grafana/setup-loki.md @@ -0,0 +1,33 @@ +--- +title: "Set up Grafana Loki" +linkTitle: "Set up Grafana Loki" +description: "Information about setting up Grafana Loki in the cloud." +weight: 40 +--- + +# {{% param title %}} + +This guide describes how to set up Grafana Loki in the cloud. Please ensure that the [Prerequisites][] have been completed before starting this installation. + +## Set up Grafana Loki + +1. Browse to the *Team URL* created during [Sign Up For Grafana Cloud][]. +1. If presented with the *Get started in a few easy steps* page, click *I'm already familiar with Grafana. Skip setup →* in the top right corner. +1. Click the Menu icon {{< image src="/images/GrafanaMenuIcon.png" title="Menu icon" >}} to view the available options. +1. Click the *Connections* menu item and select *Add new connection*. +1. In the *Custom data* section click on *Hosted logs*. +1. In the *Choose your use case* section select *Send logs from a standalone host*. + {{< figure src="/images/Grafana Cloud - Hosted Logs Config Usecase.png" >}} +1. Enter an *API Token name* in the *Configure promtail to send logs to your Grafana Cloud* section and click the *Create API token* button. +The token name is used in the Grafana Cloud website to easily identify the key after its creation. + {{< figure src="/images/Grafana Cloud - Hosted Logs Config Token Name.png" >}} +1. Make a note of the value of the *url* in the *client* section of the example configuration. Ignore the instruction to copy and paste the whole content. + {{< figure src="/images/Grafana Cloud - Hosted Logs Config Data.png" >}} + +## Next Steps? + +1. [Install Promtail][] + +[Install Promtail]: {{< url path="Cortex.GettingStarted.Cloud.AddObservabilityToInnovation.Grafana.InstallPromtail.MainDoc" >}} +[Prerequisites]: {{< url path="Cortex.GettingStarted.Cloud.AddObservabilityToInnovation.Grafana.Prerequisites.MainDoc" >}} +[Sign Up For Grafana Cloud]: {{< url path="Cortex.GettingStarted.Cloud.AddObservabilityToInnovation.Grafana.SetupGrafana.SignUpForGrafanaCloud" >}} diff --git a/content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/Grafana/try-it-out.md b/content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/Grafana/try-it-out.md new file mode 100644 index 000000000..a64a07976 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/Grafana/try-it-out.md @@ -0,0 +1,49 @@ +--- +title: "Try it Out" +linkTitle: "Try it Out" +description: "Information about trying out Grafana Observability Dashboards for the first time." +weight: 60 +--- + +# {{% param title %}} + +## Check Dashboards are Displaying Data + +{{% alert title="Note" %}} +This test uses the test flow published as part of testing the Innovation installation. See {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.TryItOutPublishedFlow" title="Testing HA installation" >}} or {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.SingleServerWithoutHA.TryItOutPublishedFlow" title="Testing non-HA installation" >}}. An alternative flow can be used that exists on the system and can be executed. +{{% / alert %}} + +1. Open an HTTP client, such as [Postman][]. Make a request with the following format: + | Property | Value | + |---------------|-------------------------------------------------------------------------------------| + | Action | POST | + | URL | For HA installation use:
`https://{FQDN of Load Balancer Server}/api/default/default/flows/{Flow Name}/executions?packageName={Package Name}`
e.g. `https://load-balancer.domain.com/api/default/default/flows/NewFlow/executions?packageName=NewPackage`

For non-HA installation use:
`https://{FQDN of server}:8722/api/default/default/flows/{Flow Name}/executions?packageName={Package Name}`
e.g. `https://server.domain.com:8722/api/default/default/flows/NewFlow/executions?packageName=NewPackage`| + | Content Type | application/json | + | Body | {} | + | Authentication| Basic | + | Username | The value used for `ApiGatewayBasicAuthUsername` when installing Application Services. See [HA Installation script configuration][] or [Non-HA Installation script configuration][] for the value specified.| + | Password | The value used for `ApiGatewayBasicAuthPassword` when installing Application Services (Unencrypted). See [HA Installation script configuration][] or [Non-HA Installation script configuration][] for the value specified.| + + {{% alert title="Note" %}} If you used self-signed certificates when installing the Application Servers you may need to disable SSL certificate validation in your HTTP client. {{% /alert %}} + +1. Once the request has completed, using a web browser, log in to your configured Grafana. +1. Click the Menu icon {{< image src="/images/GrafanaMenuIcon.png" title="Menu icon" >}} to view the available options. +1. Click the Dashboards menu item. +1. Click the folder name that the dashboards were imported to, if not already expanded. +1. Click the *Flow Execution Requests* dashboard to open it. +1. The request made at step 1 should be visible on the dashboard. +{{% alert title="Note" %}} +If other requests have been made then there may be more than one request visible on the dashboard. +{{% / alert %}} +1. Click the Menu icon {{< image src="/images/GrafanaMenuIcon.png" title="Menu icon" >}} to view the available options. +1. Click the Dashboards menu item. +1. Click the folder name that the dashboards were imported to, if not already expanded. +1. Click the *Platform Health* dashboard to open it. +1. The request made at step 1 should be visible on the dashboard. +{{% alert title="Note" %}} +If other requests have been made then there may be more than one request visible on the dashboard. +{{% / alert %}} + +[Postman]: {{< url path="Postman.Downloads.MainDoc" >}} +[HA Installation script configuration]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.ConfigureInstallationScript" >}} +[Non-HA Installation script configuration]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.SingleServerWithoutHA.ConfigureInstallationScript" >}} diff --git a/content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/_index.md b/content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/_index.md new file mode 100644 index 000000000..4c94478e8 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/cloud/add-observability-to-innovation/_index.md @@ -0,0 +1,6 @@ +--- +title: "Add Observability to Innovation" +linkTitle: "Add Observability to Innovation" +description: "Information about setting up an observability platform for Innovation." +weight: 30 +--- diff --git a/content/en/docs/2024.11/getting-started/on-premise/_index.md b/content/en/docs/2024.11/getting-started/on-premise/_index.md new file mode 100644 index 000000000..27a11df92 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/_index.md @@ -0,0 +1,9 @@ +--- +title: "Install On-Premise" +linkTitle: "Install On-Premise" +description: "Information about installing {{% ctx %}} Innovation to virtual machines or physical servers on-premise." +--- + +{{% pageinfo %}} +{{% ctx %}} Innovation can be deployed on-premise [on its own](install-innovation-only) or added to an [existing](add-innovation-to-72) 7.2 installation. +{{% /pageinfo %}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/_index.md b/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/_index.md new file mode 100644 index 000000000..19d0dbf9d --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/_index.md @@ -0,0 +1,10 @@ +--- +title: "Add Innovation to a 7.2 Installation" +linkTitle: "Add Innovation to a 7.2 Installation" +description: "Information about adding {{% ctx %}} Innovation to an existing {{% ctx %}} 7.2 platform." +weight: 20 +--- + +{{% pageinfo %}} +{{% ctx %}} Innovation can be deployed on-premise across [multiple servers](multiple-server-with-ha) to provide improved scale and high availability (HA), or to a [single server](single-server-without-ha) if scale and HA aren't required. +{{% /pageinfo %}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/multiple-server-with-ha/_index.md b/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/multiple-server-with-ha/_index.md new file mode 100644 index 000000000..b37f4309c --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/multiple-server-with-ha/_index.md @@ -0,0 +1,12 @@ +--- +title: "Multiple Server - With HA (Recommended)" +linkTitle: "Multiple Server - With HA" +description: "Information about adding {{% ctx %}} Innovation to {{% ctx %}} 7.2 across multiple on-premise servers with high availability (HA), including: information about components, supported architectures, prerequisites and installation instructions." +weight: 10 +--- + +{{% pageinfo %}} +Multiple server installations with HA are recommended for the following scenarios: + +* Production installations that are required to scale and support HA +{{% /pageinfo %}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/multiple-server-with-ha/architecture.md b/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/multiple-server-with-ha/architecture.md new file mode 100644 index 000000000..8f5e24f2e --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/multiple-server-with-ha/architecture.md @@ -0,0 +1,41 @@ +--- +title: "Architecture" +linkTitle: "Architecture" +description: "Information about the recommended platform architecture, including component descriptions." +weight: 10 +--- + +# {{< param title >}} + +## Components + +{{< section "/architecture/components/multi-server.md" >}} + +{{% alert title="Note" %}} +{{% ctx %}} v7.2 component descriptions are not covered in this guide. See separate v7.2 documentation for more information. +{{% /alert %}} + +## Possible Architectures + +{{% ctx %}} Innovation and v7.2 can run side-by-side, allowing flows to be built and run for both of them from the same Gateway instance. They each require a different set of back-end components to be installed. Innovation can be added to a v7.2 installation and the only component shared by both Innovation and v7.2 is {{% ctx %}} Gateway. + +### Recommended Architecture + +The recommended architecture for adding Innovation to a v7.2 Dual Site, Dual Server system requires 8 servers in total; the 4 existing servers, plus 4 new servers: + +* 2x Existing Application Servers for v7.2, one of these will also act as the Web Application Server for Innovation. For Innovation, the existing Gateway will be upgraded and a new Debug Node will be added +* 2x Existing Database Servers, used for v7.2 +* 1x New Load Balancer Server for Innovation +* 3x New Application Servers for Innovation + +{{< figure src="/images/editable/Cortex Innovation and v7.2 Best Architecture.png" class="centre" title="8 Server, Recommended Architecture Diagram" >}} + +{{< section "/architecture/components/node-details.md" >}} + +## Next Steps? + +1. [Prerequisites][] + +[Hardware Requirements]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.MultipleServerWithHA.HardwareRequirements" >}} +[Prerequisites]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.MultipleServerWithHA.Prerequisites" >}} +[Recommended]: {{< ref "#recommended-architecture" >}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/multiple-server-with-ha/install-application-and-loadbalancer-servers.md b/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/multiple-server-with-ha/install-application-and-loadbalancer-servers.md new file mode 100644 index 000000000..95a70cf70 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/multiple-server-with-ha/install-application-and-loadbalancer-servers.md @@ -0,0 +1,335 @@ +--- +title: "Install Application Servers and Load Balancer" +linkTitle: "Install Application Servers and Load Balancer" +description: "Information about installing the Application Servers and Load Balancer Server." +weight: 30 +--- + +# {{< param title >}} + +This guide describes how to install the Application Servers and Load Balancer Server. Please ensure that [Prerequisites for adding Innovation to v7.2][] have been read before starting this installation. + +## Make Installation Artefacts Available + +1. Choose one of the Application Servers to be used for installation, and copy the following artefacts to a folder on it: + * Cortex Innovation {{< version >}} - App Server Install Scripts.zip + * Cortex Innovation {{< version >}} - App Services.zip + * Cortex Innovation {{< version >}} - Block Packages.zip + +1. Extract the `Cortex Innovation {{< version >}} - App Server Install Scripts.zip` file to a folder with the same name. + +## Install Microsoft .NET Framework 4.7.2 + +Microsoft Service Fabric requires a minimum of Microsoft .NET Framework 4.7.2 to be installed on each Application Server. + +To find the version of the framework that is installed: + +1. On the Start menu, choose `Run`. +1. In the open box, enter `regedit.exe`. You must have administrative credentials to run regedit.exe. +1. In the Registry Editor, open the subkey `HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full`. +1. If the `Full` subkey is not present, then you do not have the .NET Framework 4.5 or later installed. +1. Check for a `DWORD` value named `Release`. The existence of the Release DWORD indicates the .NET Framework 4.5 or newer has been installed on that computer. If the value is `461808` or over then at least .NET Framework 4.7.2 is installed and no further steps need to be taken. If it is not installed, continue with the following steps to install it. + +To install .NET Framework 4.7.2: + +1. Download the [.NET Framework 4.7.2][NET Framework 472] installer. +1. Double-click on the installer file to run it. +1. Follow the wizard to complete the installation. + +## Apply Recommended Security Measures + +These are non-compulsory security measures, recommended to be applied to Application Servers and the Load Balancer Server, in order to prevent potential attacks that exploit known industry security vulnerabilities. + +Applying these measures may impact other applications running on your servers. Therefore, it is your responsibility to ensure that other applications and their clients will not be affected by the changes. + +### Only Use Recommended Encryption Algorithms and TLS Protocols + +A collection of registry settings need to be applied to guarantee your server is only using the recommended encryption algorithms and TLS protocols. Information about these settings can be found at [SSL Best Practices][]. + +{{% alert type="warning" title="Warning" %}}Disabling specific TLS versions or specific Cipher Suites can have impact on {{% ctx %}} components themselves as well as their communication capabilities with third party systems and services, e.g. Execution Service executing flows with blocks which communicate with 3rd parties via PowerShell or REST. All parties communicating together must support a shared protocol version and cipher suite, otherwise they will not be able to establish a secure communication link between each other.{{% /alert %}} + +The settings can be applied by running a script. Be aware that each server will be restarted when the script is run. Apply the settings by following these instructions: + +1. Open a Windows PowerShell (x64) window as administrator. +1. Navigate PowerShell to inside the `Cortex Innovation {{< version >}} - App Server Install Scripts` folder using the following command, modifying the path as necessary: + + ```powershell + cd "C:\Install\Cortex Innovation {{< version >}} - App Server Install Scripts" + ``` + +1. Run the `Cortex.Innovation.Install.Multiple.SSLBestPractices.ps1` script using the following command, modifying the `ApplicationServers` value to contain the NETBIOS names or fully qualified domain names of the Application Servers and the `LoadBalancerServer` value to contain the NETBIOS names or fully qualified domain name of the Load Balancer Server (remove the `LoadBalancerServer` parameter if using an [alternative load balancer][]): + + ```powershell + .\Cortex.Innovation.Install.Multiple.SSLBestPractices.ps1 -ApplicationServers @("app-server1", "app-server2", "app-server3") -LoadBalancerServer "lb-server" + ``` + + {{% alert title="Note" %}} +To avoid answering all of the prompts `-Override 0` can be added to the end of the script. This will automatically apply all settings and forcibly restart the servers. + {{% /alert %}} + +1. A credentials prompt will appear. Enter credentials of a domain user that is a member of the local Administrators group on all servers (Application and Load Balancer) and press `OK`. + + If `-Override 0` has been specified no further steps need to be taken and you can move on to the next section when the servers have restarted. +1. To use all the recommended settings click `Apply all` to each `Apply Cortex recommended security best practices` prompt. + + To selectively apply each setting select `Choose which to apply`. Each change will then be prompted with a Yes/No confirmation before applying. This will need to be done for each server. +1. Restart each machine when the script asks. The current machine will be restarted last, the PowerShell script will close at this time. + +## Add Antivirus Exclusions + +If Windows Defender is not running on the Application Servers, ensure that the [Antivirus Exclusions][] have been added to the running antivirus software on each of the Application Servers and continue to the next section, otherwise follow these steps: + +1. Open a Windows PowerShell (x64) window as administrator. +1. Navigate PowerShell to inside the `Cortex Innovation {{< version >}} - App Server Install Scripts` folder using the following command, modifying the path as necessary: + + ```powershell + cd "C:\Install\Cortex Innovation {{< version >}} - App Server Install Scripts" + ``` + +1. Run the `Cortex.Innovation.Add.WindowsDefenderExclusions.ps1` script using the following command, modifying the `ApplicationServers` value to contain the NETBIOS names or fully qualified domain names of the Application Servers and the `LoadBalancerServer` value to contain the NETBIOS names or fully qualified domain name of the Load Balancer Server (remove the `LoadBalancerServer` parameter if using an [alternative load balancer][]): + + ```powershell + .\Cortex.Innovation.Add.WindowsDefenderExclusions.ps1 -ApplicationServers @("app-server1", "app-server2", "app-server3") -LoadBalancerServer "lb-server" + ``` + +1. A credentials prompt will appear. Enter credentials of a domain user that is a member of the local Administrators group on all Application Servers and press OK. +1. A message will indicate that the script has completed successfully. + +## Check Port Usage + +To check all necessary ports are free, follow these steps: + +1. Open a Windows PowerShell (x64) window as administrator. +1. Navigate PowerShell to inside the `Cortex Innovation {{< version >}} - App Server Install Scripts` folder using the following command, modifying the path as necessary: + + ```powershell + cd "C:\Install\Cortex Innovation {{< version >}} - App Server Install Scripts" + ``` + +1. Run the `Cortex.Innovation.Test.PortUsage.ps1` script using the following command, modifying the `ApplicationServers` value to contain the NETBIOS names or fully qualified domain names of the Application Servers and the `LoadBalancerServer` value to contain the NETBIOS names or fully qualified domain name of the Load Balancer Server (remove the `LoadBalancerServer` parameter if using an [alternative load balancer][]): + + ```powershell + .\Cortex.Innovation.Test.PortUsage.ps1 -ApplicationServers @("app-server1", "app-server2", "app-server3") -LoadBalancerServer "lb-server" + ``` + +1. A credentials prompt will appear. Enter credentials of a domain user that is a member of the local Administrators group on all Application Servers and press OK. + +1. If all ports are free, the script will report the following for each Application Server: + + `All ports required by Cortex Innovation are free` + + If this is the case, continue to the next section. Otherwise, consult the messages returned by the script, which will give details about how to modify the `Cortex.Innovation.Install.Config.json` configuration file, in the `Cortex Innovation {{< version >}} - App Server Install Scripts` folder, to use different ports. This will be used later during installation. + + The `Cortex.Innovation.Test.PortUsage.ps1` script cannot currently re-check modified ports in the configuration file so these need to be manually checked to see that they are free. + +## Configure Installation Script + +1. In the `Cortex Innovation {{< version >}} - App Server Install Scripts` folder, locate the `Cortex.Innovation.Install.ps1` script and open it with a text editor. +1. Choose the tab below that matches the configuration for this installation, then update the script to match, changing the parameters according to the details given below: + + {{< tabpane lang="powershell" >}} + {{< tab header="CA Certs, Built-in Load Balancer">}} +.\Cortex.Install.ps1 -ConfigFileName Cortex.Innovation.Install.Config.json ` + -AppServicesPath "C:\Install\Cortex Innovation {{< version >}} - App Services.zip" ` + -BlockPackagesPath "C:\Install\Cortex Innovation {{< version >}} - Block Packages.zip" ` + -ApiGatewayBasicAuthUsername "BasicAuthUser" ` + -ApiGatewayBasicAuthPassword '#_065077199197085!212123173135087074174142102155007175102029143220132038175026114248243207204119030125106032237087162060168108135168241247037070081~187087056217118!069132229129134129097089241180163#' ` + -CustomerName "Customer1" ` + -ApplicationServerIPv4Addresses @("192.168.1.1", "192.168.1.2", "192.168.1.3") ` + -LoadBalancerServerIPv4Address "192.168.1.4" ` + -ServerCertificatePath "C:\Install\Certificates\cert.pfx" ` + -ServerCertificatePassword '#_186224203199039!168155035100255155162114088105027~037077176064169!055142133197216213014226219148063#' ` + -ClientCertificatePath "C:\Install\Certificates\cert.pfx" ` + -ClientCertificatePassword '#_186224203199039!168155035100255155162114088105027~037077176064169!055142133197216213014226219148063#' ` + -Credential $Credential ` + -LdapConnectionDetails @{ + Host= "LDAP://ldapserver.fqdn.com:389" + UseSsl= $false + Username= "someUserName" + Password= '#_156218162004047!225018081008117174092221250099053~110194001237006!035122107175168133055021013201167#' + } ` + -AcceptEULA:$AcceptEula ` + *>&1 | Tee-Object -FilePath "cortex-ha-install-log.txt" + {{< /tab >}} + {{< tab header="Self-Signed Certs, Built-in Load Balancer" >}} +.\Cortex.Install.ps1 -ConfigFileName Cortex.Innovation.Install.Config.json ` + -AppServicesPath "C:\Install\Cortex Innovation {{< version >}} - App Services.zip" ` + -BlockPackagesPath "C:\Install\Cortex Innovation {{< version >}} - Block Packages.zip" ` + -ApiGatewayBasicAuthUsername "BasicAuthUser" ` + -ApiGatewayBasicAuthPassword '#_065077199197085!212123173135087074174142102155007175102029143220132038175026114248243207204119030125106032237087162060168108135168241247037070081~187087056217118!069132229129134129097089241180163#' ` + -CustomerName "Customer1" ` + -ApplicationServerIPv4Addresses @("192.168.1.1", "192.168.1.2", "192.168.1.3") ` + -LoadBalancerServerIPv4Address "192.168.1.4" ` + -UseSelfSignedCertificates ` + -Credential $Credential ` + -LdapConnectionDetails @{ + Host= "LDAP://ldapserver.fqdn.com:389" + UseSsl= $false + Username= "someUserName" + Password= '#_156218162004047!225018081008117174092221250099053~110194001237006!035122107175168133055021013201167#' + } ` + -AcceptEULA:$AcceptEula ` + *>&1 | Tee-Object -FilePath "cortex-ha-install-log.txt" + {{< /tab >}} + {{< tab header="CA Certs, Alternative Load Balancer" >}} +.\Cortex.Install.ps1 -ConfigFileName Cortex.Innovation.Install.Config.json ` + -AppServicesPath "C:\Install\Cortex Innovation {{< version >}} - App Services.zip" ` + -BlockPackagesPath "C:\Install\Cortex Innovation {{< version >}} - Block Packages.zip" ` + -ApiGatewayBasicAuthUsername "BasicAuthUser" ` + -ApiGatewayBasicAuthPassword '#_065077199197085!212123173135087074174142102155007175102029143220132038175026114248243207204119030125106032237087162060168108135168241247037070081~187087056217118!069132229129134129097089241180163#' ` + -CustomerName "Customer1" ` + -ApplicationServerIPv4Addresses @("192.168.1.1", "192.168.1.2", "192.168.1.3") ` + -ServerCertificatePath "C:\Install\Certificates\cert.pfx" ` + -ServerCertificatePassword '#_186224203199039!168155035100255155162114088105027~037077176064169!055142133197216213014226219148063#' ` + -ClientCertificatePath "C:\Install\Certificates\cert.pfx" ` + -ClientCertificatePassword '#_186224203199039!168155035100255155162114088105027~037077176064169!055142133197216213014226219148063#' ` + -SkipLoadBalancer ` + -Credential $Credential ` + -LdapConnectionDetails @{ + Host= "LDAP://ldapserver.fqdn.com:389" + UseSsl= $false + Username= "someUserName" + Password= '#_156218162004047!225018081008117174092221250099053~110194001237006!035122107175168133055021013201167#' + } ` + -AcceptEULA:$AcceptEula ` + *>&1 | Tee-Object -FilePath "cortex-ha-install-log.txt" + {{< /tab >}} + {{< tab header="Self-Signed Certs, Alternative Load Balancer" >}} +.\Cortex.Install.ps1 -ConfigFileName Cortex.Innovation.Install.Config.json ` + -AppServicesPath "C:\Install\Cortex Innovation {{< version >}} - App Services.zip" ` + -BlockPackagesPath "C:\Install\Cortex Innovation {{< version >}} - Block Packages.zip" ` + -ApiGatewayBasicAuthUsername "BasicAuthUser" ` + -ApiGatewayBasicAuthPassword '#_065077199197085!212123173135087074174142102155007175102029143220132038175026114248243207204119030125106032237087162060168108135168241247037070081~187087056217118!069132229129134129097089241180163#' ` + -CustomerName "Customer1" ` + -ApplicationServerIPv4Addresses @("192.168.1.1", "192.168.1.2", "192.168.1.3") ` + -UseSelfSignedCertificates ` + -SkipLoadBalancer ` + -Credential $Credential ` + -LdapConnectionDetails @{ + Host= "LDAP://ldapserver.fqdn.com:389" + UseSsl= $false + Username= "someUserName" + Password= '#_156218162004047!225018081008117174092221250099053~110194001237006!035122107175168133055021013201167#' + } ` + -AcceptEULA:$AcceptEula ` + *>&1 | Tee-Object -FilePath "cortex-ha-install-log.txt" + {{< /tab >}} + {{< /tabpane >}} + + {{% alert title="Important" color="warning" %}}Parameters required to be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}} must be encrypted on one of the servers specified in the {{< ahref path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.MultipleServerWithHA.EncryptionRequirements" title="Encryption Requirements" >}} steps.{{% /alert %}} + + | Name | Description | + |----------------------------------------------|-------------| + |`AppServicesPath` | Configure this value with the location of the Application Services zip file on the Application Server used for installation. | + |`BlockPackagesPath` | Configure this value with the location of the Block Packages zip file on the Application Server used for installation. | + |`ApiGatewayBasicAuthUsername` | Configure this value with a username that can be used to make HTTPS requests to the API Gateway Service using Basic Authentication (e.g. starting flows). This username will be used by Gateway for all HTTPS requests to the API Gateway Service.

For security reasons it is recommended that the default value `BasicAuthUser` should be changed.

This value will be needed [later, when upgrading Gateway][Upgrade Gateway].

This username can also be used by external services for HTTPS requests to the API Gateway Service but is not recommended; these requests should use an OAuth2 session for an authorised Active Directory user.{{< alert type="note" title="Note" >}} This parameter should be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}}| + |`ApiGatewayBasicAuthPassword` | Configure this value with the password for the username specified for `ApiGatewayBasicAuthUsername`.

For security reasons it is recommended that the default value should be changed.

This value will be needed [later, when upgrading Gateway][Upgrade Gateway].{{< alert type="note" title="Note" >}} This parameter must be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}}| + |`CustomerName` | A name identifying the platform being installed. This must have no spaces or symbols. It will be appended to the node names that are displayed in Service Fabric Explorer. | + |`ApplicationServerIPv4Addresses` | The IPv4 addresses of the Application Servers. The first of these must be the Application Server used for installation. | + |`LoadBalancerServerIPv4Address` | The IPv4 address of the Load Balancer Server. This is only needed if using the built-in load balancer. | + |`ServerCertificatePath` | The local path of a .PFX certificate file on the first Application Server in the `ApplicationServerIPv4Addresses` list. Environment variables cannot be used.

This is only needed if installing with CA Certificates (Recommended). The certificate should meet the [Certificate Requirements][].

This certificate will be used for:
  • Securing communication between the Application Services.
  • Allowing Application Services to identify themselves to clients such as Gateway.
  • Preventing unauthorised nodes from joining the HA cluster.
  • Connecting to Service Fabric Explorer from each of the Application Servers.
{{< alert type="warning" title="Warning" >}}It is critical to set a reminder to {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.RolloverCertificates" title="update certificates" >}} in good time before they expire. If they expire then the platform will cease to function and {{< ahref path="Cortex.ServicePortal.MainDoc" title="CORTEX Service Portal" >}} must be contacted for support.{{< /alert >}}| + |`ServerCertificatePassword` | The password for the .PFX certificate file specified in `ServerCertificatePath`.

This is only needed if installing with CA Certificates (Recommended).{{< alert type="note" title="Note" >}} This parameter must be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}} | + |`ClientCertificatePath` | The local path of a .PFX certificate file on the first Application Server in the `ApplicationServerIPv4Addresses` list. This can be the same certificate as the `ServerCertificatePath`. Environment variables cannot be used.

This is only needed if installing with CA Certificates (Recommended) and using the Built-In Load Balancer. The certificate should meet the [Certificate Requirements][].

This certificate will be used for:
  • Securing communication between the load balancer and the nodes on the Application Servers.
{{< alert type="warning" title="Warning" >}}It is critical to set a reminder to {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.RolloverCertificates" title="update certificates" >}} in good time before they expire. If they expire then the platform will cease to function and {{< ahref path="Cortex.ServicePortal.MainDoc" title="CORTEX Service Portal" >}} must be contacted for support.{{< /alert >}} + |`ClientCertificatePassword` | The password for the .PFX certificate file specified in `ClientCertificatePath`.

This is only needed if installing with CA Certificates (Recommended) and using the Built-In Load Balancer.{{< alert type="note" title="Note" >}} This parameter must be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}} | + |`UseSelfSignedCertificates` | Installs Application Services and required infrastructure using generated Self-Signed Certificates rather than CA Certificates.

Not recommended for production use. | + |`SkipLoadBalancer` | Installs Application Services and required infrastructure without installing a load balancer. Use when using an alternative load balancer or no load balancer. | + |`Credential` | The credentials of the user which will be used to perform remote operations on the Application Servers. It must be a domain user that is a member of the local Administrators group on all servers.

This does not need to be changed, a prompt will appear to enter this information when the script is run. | + |`LdapConnectionDetails` | The connection details to the LDAP server.

This must be configured with a valid `Host`, `Username`, `Password`, and whether the LDAP server uses SSL using `UseSsl`. {{< alert type="note" title="Note" >}}The parameters `Host` and `Username` should be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}. The parameter `Password` must be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}} | + |`AcceptEULA` | This does not need to be changed, the EULA will be accepted at a later stage. | + |`FilePath` | The filename that installation logs are written to. If this should be written to a different location than where the installation files are then a full path should be specified. | + + The `ApiGatewayBasicAuthUsername` and `ApiGatewayBasicAuthPassword` will be needed [later, when upgrading Gateway][Upgrade Gateway]. + + {{% alert title="Note" %}} +More advanced configuration (such as changing ports) can be undertaken by modifying the `Cortex.Innovation.Install.Config.json` file but this shouldn't be required for most installations. More information about this can be found at {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.AdvancedConfigMultipleServer" title="Advanced Application Server and Load Balancer Configuration Changes" >}}. + {{% /alert %}} + +1. Save and close `Cortex.Innovation.Install.ps1`. + +## Test Installation Script + +1. Open a Windows PowerShell (x64) window as administrator. +1. Navigate PowerShell to inside the `Cortex Innovation {{< version >}} - App Server Install Scripts` folder using the following command, modifying the path as necessary: + + ```powershell + cd "C:\Install\Cortex Innovation {{< version >}} - App Server Install Scripts" + ``` + +1. Type the following command into PowerShell: + + ```powershell + .\Cortex.Innovation.Install.ps1 -WhatIf + ``` + +1. Please read the End User Licence Agreement which can be found [here][Eula]. Once you agree to the terms, add the flag `-AcceptEULA` to the command entered above, e.g: + + ```powershell + .\.ps1 -WhatIf -AcceptEULA + ``` + +1. Run the PowerShell command to test the installation script. +1. A credentials prompt will appear. Enter credentials of a domain user that is a member of the local Administrators group on all servers (Application and Load Balancer) and press OK. +1. A password prompt will appear. Enter a password which will be used to create a user in RabbitMQ. +1. Wait for the command to finish. It will display the output of the installation command without making any changes to the platform, to ensure things like communication between the servers are working. +1. Check that there have been no errors in the script; these would appear in red in the console. + + If there are no errors, continue to the next section; otherwise, check if the errors have any instructions for rectifying the issue and follow them. + + If there are no useful instructions, check that all previous steps have been followed correctly and, if not, rectify it and run the command again.

If this does not work, please contact [{{% ctx %}} Service Portal][CORTEX Service Portal] for further assistance. The `WhatIf` script will have created a temporary version of the config file in the script location, showing what changes would be made to it when the script runs. The name is appended with `-WhatIf` (e.g. `Cortex.Innovation.Install.Config-WhatIf.json`). This file can be provided when obtaining support. + +## Run Installation Script + +1. Type the following command into PowerShell: + + ```powershell + .\Cortex.Innovation.Install.ps1 + ``` + +1. Please read the End User Licence Agreement which can be found [here][Eula]. Once you agree to the terms, add the flag `-AcceptEULA` to the command entered above, e.g: + + ```powershell + .\.ps1 -AcceptEULA + ``` + +1. Run the PowerShell command to install HA Services and the required infrastructure. +1. A credentials prompt will appear. Enter credentials of a domain user that is a member of the local Administrators group on all servers (Application and Load Balancer) and press OK. +1. A password prompt will appear. Enter a password which will be used to create a user in RabbitMQ. This should be entered carefully and recorded as it may be needed if seeking support from [{{% ctx %}} Service Portal][CORTEX Service Portal]. Press OK. +1. Wait for the script to finish running. This should take approximately 10 minutes. +1. Check that there have been no errors in the script; these would appear in red in the console. + + If there are any errors, then please follow any instructions given within them to rectify the situation, check your configuration files, and retry the installation. + + In some circumstances, retrying may error due to components being installed already. In this case please run the following command, followed by the original installation command: + + ```powershell + .\Cortex.Innovation.Uninstall.ps1 + ``` + + If the errors do not give any instructions on how to rectify, see [Troubleshooting During Installation][] for further information; if this does not help then please contact [{{% ctx %}} Service Portal][CORTEX Service Portal] for assistance. + +## Check Application Services + +{{< section "/install-application-server/multi-server/check-application-services.md">}} + +## Preserve installation files + +{{< section "/preserve-installation-files.md">}} + +## Next Steps? + +1. [Upgrade the Web Application Server][] + +[alternative load balancer]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.MultipleServerWithHA.AltLoadBalancer" >}} +[Antivirus Exclusions]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.MultipleServerWithHA.AntivirusExclusions" >}} +[Certificate Requirements]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.MultipleServerWithHA.CertificateRequirements" >}} +[Configure Installation Script]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.MultipleServerWithHA.ConfigureInstallationScript" >}} +[CORTEX Encrypted]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" >}} +[CORTEX Service Portal]: {{< url path="Cortex.ServicePortal.MainDoc" >}} +[Encryption Requirements]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.MultipleServerWithHA.EncryptionRequirements" >}} +[Eula]: {{< url path="Cortex.Website.Eula.MainDoc" >}} +[NET Framework 472]: {{< url path="MSDotNet.Framework472.MainDoc" >}} +[Prerequisites for adding Innovation to v7.2]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.MultipleServerWithHA.Prerequisites" >}} +[SSL Best Practices]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.SSLBestPractices" >}} +[Troubleshooting During Installation]: {{< url path="Cortex.Reference.Troubleshooting.Installation.TroubleshootingDuringInstallation" >}} +[Upgrade Gateway]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.MultipleServerWithHA.ConfigureCortexGatewayInstallationScriptNew" >}} +[Upgrade the Web Application Server]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.MultipleServerWithHA.AddInnovationTo72WebApplicationServer" >}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/multiple-server-with-ha/install-web-application-server/_index.md b/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/multiple-server-with-ha/install-web-application-server/_index.md new file mode 100644 index 000000000..de8fd65f8 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/multiple-server-with-ha/install-web-application-server/_index.md @@ -0,0 +1,10 @@ +--- +title: "Upgrade the Web Application Server" +linkTitle: "Upgrade Web Application Server" +description: "Information about upgrading the Web Application Server to include Innovation." +weight: 40 +--- + +This guide describes how to upgrade the v7.2 Web Application Server to Include Innovation. Please ensure that [Install Application Servers and Load Balancer][] has been completed before starting this installation. These steps assume that the v7.2 version of Gateway and its prerequisites have already been installed. + +[Install Application Servers and Load Balancer]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.MultipleServerWithHA.InstallApplicationAndLoadBalancerServers" >}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/multiple-server-with-ha/install-web-application-server/perform-debugger-installation.md b/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/multiple-server-with-ha/install-web-application-server/perform-debugger-installation.md new file mode 100644 index 000000000..dbbcf7358 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/multiple-server-with-ha/install-web-application-server/perform-debugger-installation.md @@ -0,0 +1,60 @@ +--- +title: "Install Flow Debugger" +linkTitle: "Install Flow Debugger" +description: "Information about installing the Flow Debugger." +weight: 20 +--- + +# {{% param title %}} + +This guide describes how to install the Flow Debugger on the Web Application Server. Please ensure that the [web application server prerequisites][] have been completed before starting this installation. + +{{% alert title="Important" color="warning" %}} +{{< ctx >}} Gateway requires a local instance of the Application Server components to enable the debugging of flows. +{{% /alert %}} + +## Install Microsoft .NET Framework 4.7.2 + +{{< section "/install-application-server/install-dot-net-framework.md">}} + +## Add Antivirus Exclusions + +If Windows Defender is not running on the server, ensure that the [Antivirus Exclusions][] have been added to the running antivirus software on the server and continue to the next section, otherwise follow these steps: + +{{< section "/install-application-server/single-server/add-antivirus-exclusions.md">}} + +## Check Port Usage + +{{< section "/install-application-server/single-server/check-port-useage.md">}} + +## Configure Installation Script + +{{< section "/install-web-application-server/add-innovation-to-7.2/configure-debugger-installation-script.md">}} + +## Test Installation Script + +{{< section "/install-application-server/single-server/test-installation-script.md">}} + +## Run Installation Script + +{{< section "/install-application-server/single-server/run-installation-script.md">}} + +## Add Read and Execute access to Windows Crypto folder + +{{< section "/install-application-server/single-server/add-permissions-to-crypto-folder.md">}} + +## Check Application Services + +{{< section "/install-application-server/single-server/check-application-services.md">}} + +# Preserve installation files + +{{< section "/preserve-installation-files.md">}} + +## Next Steps? + +1. [Upgrade Gateway][] + +[Antivirus Exclusions]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.MultipleServerWithHA.AntivirusExclusions" >}} +[Upgrade Gateway]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.MultipleServerWithHA.GatewayInstallation" >}} +[web application server prerequisites]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.MultipleServerWithHA.WebApplicationServerPrerequisites" >}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/multiple-server-with-ha/install-web-application-server/perform-gateway-installation.md b/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/multiple-server-with-ha/install-web-application-server/perform-gateway-installation.md new file mode 100644 index 000000000..01307b5d3 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/multiple-server-with-ha/install-web-application-server/perform-gateway-installation.md @@ -0,0 +1,124 @@ +--- +title: "Upgrade Gateway" +linkTitle: "Upgrade Gateway" +description: "Information about upgrading v7.2 {{% ctx %}} Gateway to include Innovation." +weight: 30 +--- + +# {{% param title %}} + +This guide describes how to upgrade {{% ctx %}} Gateway on v7.2 to include Innovation. Please ensure that the [Flow Debugger installation][] has been completed before starting this installation. + +## Perform Gateway Installation + +### Configure {{% ctx %}} Gateway Installation Script + +1. In the `Cortex Innovation {{< version >}} - Web App Server Install Scripts` folder, locate the `Cortex.Innovation.Install.Gateway.ps1` script and open it with a text editor. +1. Configure the script according to the details given below: + + ```powershell + .\Cortex.Install.Gateway.ps1 ` + -GatewayPackagePath "C:\Install\Cortex Innovation {{< version >}} - Gateway.zip" ` + -FeatureFlags "InnovationId" ` + -ServiceFabricApiGatewayEndpoint "https://server.domain.com/" ` + -ServiceFabricUsingSelfSignedCertificates $false ` + -ServiceFabricApiGatewayBasicAuthUsername "BasicAuthUser" ` + -ServiceFabricApiGatewayBasicAuthPassword '#_065077199197085!212123173135087074174142102155007175102029143220132038175026114248243207204119030125106032237087162060168108135168241247037070081~187087056217118!069132229129134129097089241180163#' ` + -DotNetFlowDebuggerEndpoint "https://server.domain.com:8722/api/" ` + -DotNetFlowDebuggerBasicAuthUsername "BasicAuthUser" ` + -DotNetFlowDebuggerBasicAuthPassword '#_065077199197085!212123173135087074174142102155007175102029143220132038175026114248243207204119030125106032237087162060168108135168241247037070081~187087056217118!069132229129134129097089241180163#' ` + -DotNetFlowDebuggerUsingSelfSignedCertificates $false ` + -GatewayApplicationPoolUsername "Domain\Username" ` + -WebRootFolder "C:\inetpub\wwwroot" ` + -WebsitePort "443" ` + -ImportCertificate $false ` + -CertificateFilePath "C:\Install\Certificate.pfx" ` + -CertificateFriendlyName "CertificateName" ` + -ConfigureSiteRedirect $true ` + -ApplySecurityMeasures $true ` + -UsingWindowsDefender $false ` + -AcceptEULA:$AcceptEula ` + *>&1 | Tee-Object -FilePath "cortex-gateway-install-log.txt" + ``` + + | Name | Description | + |------------------------------------------------|-------------| + |`GatewayPackagePath` | Configure this value with the location of the `Cortex Innovation {{< version >}} - Gateway.zip` file on the installation server. | + |`FeatureFlags` | Replace `InnovationId` with the {{% ctx %}} Innovation feature identifier, which should have been provided by {{% ctx %}} when fulfilling the [Licensing Requirements][], if it wasn't it should be requested using [{{% ctx %}} Service Portal][CORTEX Service Portal].

This will set the `FeatureFlags` value in the Gateway web.config.| + |`ServiceFabricApiGatewayEndpoint` | Replace `server.domain.com` with the fully qualified domain name of the Load Balancer Server. The port should be specified if it is not the default HTTPS port (443), and there must be a trailing slash, e.g. `https://server.domain.com/` or `https://server.domain.com:8722/`.

This will set the `ServiceFabricApiGatewayEndpoint` value in the {{% ctx %}} Gateway web.config.| + |`ServiceFabricUsingSelfSignedCertificates` | Configure the value as `$false` if you used valid CA certificates when [installing the Application Servers][Configure Installation Script], `$true` if you used self-signed certificates.

This will set the `ServiceFabricUsingSelfSignedCertificates` value in the {{% ctx %}} Gateway web.config.| + |`ServiceFabricApiGatewayBasicAuthUsername` | This must be changed if you used a non-default `ApiGatewayBasicAuthUsername` when [installing the Application Servers][Configure Installation Script]; if so, this value must be configured to the one used.

This will overwrite the `ServiceFabricApiGatewayBasicAuthUsername` value in the {{% ctx %}} Gateway web.config.{{< alert type="note" title="Note" >}} This parameter should be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}}| + |`ServiceFabricApiGatewayBasicAuthPassword` | This must be changed if you used a non-default `ApiGatewayBasicAuthPassword` when [installing the Application Servers][Configure Installation Script]; if so, this value must be configured to the one used.

This will overwrite the `ServiceFabricApiGatewayBasicAuthPassword` value in the {{% ctx %}} Gateway web.config.{{< alert type="note" title="Note" >}} This parameter must be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}}| + |`DotNetFlowDebuggerEndpoint` | Replace `server.domain.com` with the fully qualified domain name of the Web Application Server.

This will set the `DotNetFlowDebuggerEndpoint` value in the {{% ctx %}} Gateway web.config.| + |`DotNetFlowDebuggerBasicAuthUsername` | This must be changed if you used a non-default `ApiGatewayBasicAuthUsername` when [installing the Debugger on the Web Application Server][Flow Debugger installation]; if so, this value must be configured to the one used.

This will overwrite the `DotNetFlowDebuggerBasicAuthUsername` value in the {{% ctx %}} Gateway web.config.{{< alert type="note" title="Note" >}} This parameter should be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}}| + |`DotNetFlowDebuggerBasicAuthPassword` | This must be changed if you used a non-default `ApiGatewayBasicAuthPassword` when [installing the Debugger on the Web Application Server][Flow Debugger installation]; if so, this value must be configured to the one used.

This will overwrite the `DotNetFlowDebuggerBasicAuthPassword` value in the {{% ctx %}} Gateway web.config.{{< alert type="note" title="Note" >}} This parameter must be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}}| + |`DotNetFlowDebuggerUsingSelfSignedCertificates` | Configure the value as `$false` if you are using valid CA certificates to secure the communication between {{% ctx %}} Gateway and the Debugger, `$true` if using self-signed certificates.

This will set the `DotNetFlowDebuggerUsingSelfSignedCertificates` value in the {{% ctx %}} Gateway web.config.| + |`GatewayApplicationPoolUsername` | Replace `Domain\Username` with the user that is used to run the {{% ctx %}} Gateway application pool currently.| + |`WebRootFolder` | Replace this with the correct path for the Web Root Folder on the server. Typically this will be `C:\inetpub\wwwroot`.| + |`WebsitePort` | Replace this with the port that you wish the website to use. Typically this will be `443`.| + |`ImportCertificate` | This should be set to `$false` if the certificate is already imported.

Note that prior to installation the certificate must be [assigned a friendly name][Assign Certificate Friendly Name]. + |`CertificateFilePath` | Replace this with the location and filename for the certificate to be imported.

If `ImportCertificate` is set to `$false` this value can remain unchanged.| + |`CertificateFriendlyName` | Replace this with the friendly name that you would like to be allocated to the certificate.

If `ImportCertificate` is set to `$false` this must be [assigned][Assign Certificate Friendly Name] prior to running the installation and the Friendly Name used must be specified to allow the website to use the correct certificate.| + |`ConfigureSiteRedirect` | If the site hosting the {{% ctx %}} Gateway web application is a newly created Cortex site or an existing site that doesn’t have its own content, it is recommended to redirect the site URL to the {{% ctx %}} Gateway web application URL. The default behaviour of the script is to create a URL Rewrite redirect rule to achieve this.

To skip this rule creation change the value to `$false`.| + |`ApplySecurityMeasures` | Change this from `$true` to `$false` if you do not require the Recommended [Security Best Practices][] to be implemented as part of the installation process.| + |`UsingWindowsDefender` | Change this from `$false` to `$true` if you are using the Windows Defender firewall.

If Windows Defender is not being used but an alternative firewall is, it must be configured to allow communication inbound via TCP on the port configured for HTTPS (usually 443).| + |`AcceptEULA` | This does not need to be changed, the EULA will be accepted at a later stage. | + |`FilePath` | The filename that installation logs are written to. If this should be written to a different location than where the installation files are then a full path should be specified. | + +1. Save and close `Cortex.Innovation.Install.Gateway.ps1`. + +### Upgrade {{% ctx %}} Gateway + +1. Open a Windows PowerShell (x64) window as administrator. +1. Navigate PowerShell to inside the `Cortex Innovation {{< version >}} - Web App Server Install Scripts` folder using the following command, modifying the path as necessary: + + ```powershell + cd "C:\Install\Cortex Innovation {{< version >}} - Web App Server Install Scripts" + ``` + +1. Type the following command into PowerShell: + + ```powershell + .\Cortex.Innovation.Install.Gateway.ps1 + ``` + +1. Please read the End User Licence Agreement which can be found [here][Eula]. Once you agree to the terms, add the flag `-AcceptEULA` to the command entered above, e.g: + + ```powershell + .\.ps1 -AcceptEULA + ``` + +1. Run the PowerShell command to install {{% ctx %}} Gateway. +1. If `ImportCertificate` is set to $true, and the file is of type `.pfx`, a prompt will appear for the certificate password. This should be entered, and then hit `Enter`. +1. Check that there have been no errors in the script; these would appear in red in the console. + + If there are any errors, then please follow any instructions given within them to rectify the situation, and retry the installation. + + If the errors do not give any instructions on how to rectify, please contact [{{% ctx %}} Service Portal][CORTEX Service Portal] for further assistance. + +1. Once the PowerShell script execution has completed, a prompt will appear to restart the machine. You can choose to restart now (`N`) or later (`L`). +{{< alert type="note" title="Note" >}} It is recommended to choose to restart later after the final step of this section has completed to ensure that no issues occur.{{< /alert >}} +1. In a browser, navigate to the {{% ctx %}} Gateway website, available at `://:/`, e.g. `https://localhost/gateway` and wait for the login page to load. This may take a few minutes. + +### Grant additional folder permissions to the {{% ctx %}} Gateway Application Pool User + +{{< section "/install-web-application-server/add-innovation-to-7.2/grant-gateway-user-additional-folder-permissions.md">}} + +# Preserve installation files + +{{< section "/preserve-installation-files.md">}} + +## Next Steps? + +1. [Try it out][] + +[Assign Certificate Friendly Name]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.MultipleServerWithHA.AssignCertificateFriendlyNameNew" >}} +[Eula]: {{< url path="Cortex.Website.Eula.MainDoc" >}} +[Encryption Requirements]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.MultipleServerWithHA.EncryptionRequirements" >}} +[Configure Installation Script]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.MultipleServerWithHA.ConfigureInstallationScript" >}} +[CORTEX Encrypted]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" >}} +[CORTEX Service Portal]: {{< url path="Cortex.ServicePortal.MainDoc" >}} +[Flow Debugger installation]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.MultipleServerWithHA.DebuggerInstallation" >}} +[Licensing Requirements]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.MultipleServerWithHA.LicensingRequirements" >}} +[Security Best Practices]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.SSLBestPractices" >}} +[Try it out]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.MultipleServerWithHA.TryItOut" >}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/multiple-server-with-ha/install-web-application-server/prerequisites.md b/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/multiple-server-with-ha/install-web-application-server/prerequisites.md new file mode 100644 index 000000000..86643f086 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/multiple-server-with-ha/install-web-application-server/prerequisites.md @@ -0,0 +1,56 @@ +--- +title: "Prerequisites" +linkTitle: "Prerequisites" +description: "Information about performing the prerequisities for the Web Application Server." +weight: 10 +--- + +# {{% param title %}} + +Please ensure that [Install Application Servers and Load Balancer][] has been completed before starting this installation. These steps assume that the v7.2 version of Gateway and its prerequisites have already been installed. + +## Make Installation Artefacts Available + +{{% alert title="Note" %}} +We recommend that the single-node Service Fabric instance, used by {{% ctx %}} Gateway as a Debugger instance, and {{% ctx %}} Gateway are installed on the same Web Application Server. +{{% /alert %}} + +{{< section "/install-web-application-server/make-installation-artefacts-available.md">}} + +## Licensing + +{{< section "/install-web-application-server/add-innovation-to-7.2/licensing.md">}} + +## Grant folder permissions to the {{% ctx %}} Gateway Application Pool User + +{{< section "/install-web-application-server/grant-gateway-user-folder-permissions.md">}} + +## Certificate Requirements + +In order to ensure that the correct certificate is used during the upgrade of {{% ctx %}} Gateway, it is necessary to [assign a friendly name][Assign Certificate Friendly Name] to the certificate that is currently being used for {{% ctx %}} Gateway. It is important to set the `ImportCertificate` parameter to `$false` when [configuring the {{% ctx %}} Gateway installation script][Configure CORTEX Gateway Installation Script]. +
+The Flow Debugger also requires an X.509 SSL certificate to be installed on the Web Application Server. This can use the same certificate as {{% ctx %}} Gateway, however it must have the following properties: + +* Subject field must be in one of the following formats depending on whether a multi-domain or wildcard certificate is used: + * Multi-domain certificate - If using the [gobetween][] load balancer this should be specified as the FQDN of the load balancer server (e.g. `CN=load-balancer.domain.com`). If using a different load balancer this must be specified as the FQDN of one of the application servers (e.g. `CN=application-server.domain.com`) + * Wildcard certificate - wildcard format, pertaining to the domain of the Application Servers (e.g. `CN=*.domain.com`). +* Subject alternative names must include any additional host names that should be able to be used to access the API Gateway Service. Additionally if using a multi-domain certificate: + * The FQDN, NetBIOS Name and IP address of the web application server and all application servers must be added. +* Certificate file must be in a .PFX file format, with a known password. +* Certificate file must contain the full chain of certificates. +* Certificate file must include the private key. +* Key Usage extension must have a value of `Digital Signature, Key Encipherment (a0)`. +* Enhanced Key Usage must include `Server Authentication` and `Client Authentication`. + +### Assign Certificate Friendly Name + +{{< section "/install-web-application-server/add-innovation-to-7.2/assign-certificate-friendly-name.md">}} + +## Next Steps? + +1. [Install Flow Debugger][] + +[Assign Certificate Friendly Name]: {{< ref "#assign-certificate-friendly-name" >}} +[Configure CORTEX Gateway Installation Script]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.MultipleServerWithHA.ConfigureCortexGatewayInstallationScriptNew" >}} +[Install Application Servers and Load Balancer]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.MultipleServerWithHA.InstallApplicationAndLoadBalancerServers" >}} +[Install Flow Debugger]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.MultipleServerWithHA.DebuggerInstallation" >}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/multiple-server-with-ha/prerequisites.md b/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/multiple-server-with-ha/prerequisites.md new file mode 100644 index 000000000..dec2805bf --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/multiple-server-with-ha/prerequisites.md @@ -0,0 +1,354 @@ +--- +title: "Prerequisites" +linkTitle: "Prerequisites" +description: "Information about the prerequisites required on each server type for installation." +weight: 20 +--- + +# {{< param title >}} + +The prerequisites required for each server role (as described in [Architecture][]) are laid out in this guide. These must be considered before undertaking installation. + +{{% alert title="Note" %}} +All server roles (e.g. Load Balancer, Application Server, Web Application Server) referenced in the rest of this guide will refer to Innovation server roles unless otherwise stated. +{{% / alert %}} + +## Hardware Requirements + + +| Server Role | Servers Required | CPU Cores (> 2GHz) | RAM (GB) | Disk (GB) | +|------------------|-----------------------|-----------------------------------|---------------|----------------------| +| New Innovation Load Balancer | 1[^1] | 4+ *Recommended*
2 *Minimum* | 8+ *Recommended*
4 *Minimum* | 50+ *Recommended*
30 *Minimum*
5+ free on installation drive | +| New Innovation Application Server | 3 *Bronze availability*[^2]
5 *Silver availability*
7 *Gold availability*
9 *Platinum availability* | 4+ *Recommended*
2 *Minimum* | 16+ *Recommended*
8 *Minimum* | 75+ *Recommended*
60 *Minimum*
40+ free on %ProgramData% drive | +| Existing V7.2 Application Server with Gateway
+ Upgrade to Innovation Web Application Server | 1 | 4+ *Recommended*
4 *Minimum* | 16+ *Recommended*
12 *Minimum* | 160+ *Recommended*
135 *Minimum*
30+ free on installation drive
40+ free on %ProgramData% drive | + +[^1]: A software-based load balancer called [gobetween][] is provided with the platform. This must be installed on its own server as it doesn't support routing traffic to itself. It also doesn't currently support HA, but it may be possible to use multiple gobetween load balancers with Anycast network addressing and routing to provide high availability, as described in [https://en.wikipedia.org/wiki/Anycast][Anycast]; however, this has not been verified yet. It is possible to use an [alternative load balancer][] to the one provided. +[^2]: Application Servers support HA via clustering. A cluster must consist of a minimum of 3 nodes, and the number of nodes must be an odd number to ensure a quorum. Currently only the Bronze availability (3 nodes) is supported. Silver, Gold and Platinum support will be added in future. + +## Software Requirements + +| Server Role | Windows Server[^1] | .Net | PowerShell[^2] | IIS[^3] | Other Software | +|------------------|-------------------------|------|------------|---------|----------| +| Load Balancer | [2019 (x64)][Microsoft Server 2019] *Recommended*
[2016 (x64)][Microsoft Server 2016] | [Framework 4.7.2][NET Framework 472] | 5.1 | | +| Application Server | [2019 (x64)][Microsoft Server 2019] *Recommended*
[2016 (x64)][Microsoft Server 2016] | [Framework 4.7.2][NET Framework 472] | 5.1 | | +| Web Application Server | [2019 (x64)][Microsoft Server 2019] *Recommended*
[2016 (x64)][Microsoft Server 2016] | [Framework 4.7.2][NET Framework 472] | 5.1 | 10.0.17763[^4]
10.0.14393[^5]
[URL Rewrite Module 2.1][IIS Url Rewrite] | [Microsoft Web Deploy 3.0 or later][Web Deploy]
[Visual C++ Redistributable 2013 (x64)][C++ Redistributable] | + +[^1]: Windows Server Standard and Datacenter editions are supported. Filesystem **must be NTFS** and networking **must use IPv4**. Linux is not supported, but may be in the future. +[^2]: PowerShell 5.1 ships with Windows Server 2016 and 2019. +[^3]: IIS is supported; other web servers, including IIS Express are not supported. +[^4]: Ships as a windows role within Windows Server 2019. +[^5]: Ships as a windows role within Windows Server 2016. + +## Backup Requirements + +It is important to ensure that there are relevant backups in place to be able to restore the platform in the event of a failed installation. The recommended approach would be to snapshot or backup the Virtual Machine(s) that host Cortex Gateway and SQL Server if this is possible. If this is not possible then the following steps should be taken: + +### Backup Git Repositories + +1. On the Web Application Server, if you do not know the location of the Repo folder you can check where it is located else skip to Step 2: + 1. Navigate to the `gateway` IIS folder (usually `%SystemDrive%\inetpub\wwwroot\Cortex\gateway`, e.g. `C:\inetpub\wwwroot\Cortex\gateway`) + 1. Open the `web.config` file. + 1. Find the value of the `connectionString` named `CortexRepositories` +1. In File Explorer, navigate to the Repo Folder. +1. Copy the Repo folder to another location. + +### Backup SQL Server Databases + +Ensure that there are recent full backups of both the CortexWeb and CortexWeb.Auth Databases. For information on generating a full backup see Microsoft's guidance [here][Create Full DB Backup]. + +In the event of a failed installation contact [{{% ctx %}} Service Portal][CORTEX Service Portal] who will be able to assist with resolving the problems or with restoring the platform. + +## Domain Requirements + +All servers must be on the same domain and cannot be domain controllers. + +## Active Directory Requirements + +For Gateway, only Windows domains with an Active Directory domain controller running Active Directory Domain Services are supported. + +Supported versions of Active Directory are listed below: + +| Version | Verified? | Supported From | Supported Until | +|----------------------------|----------------|----------------|------------------| +| Windows Server 2003 | ✓ | {{% ctx %}} v2022.9 | To be evaluated | +| Windows Server 2003 R2 | | {{% ctx %}} v2022.9 | To be evaluated | +| Windows Server 2008 | | {{% ctx %}} v2022.9 | To be evaluated | +| Windows Server 2008 R2 | ✓ | {{% ctx %}} v2022.9 | To be evaluated | +| Windows Server 2012 | | {{% ctx %}} v2022.9 | To be evaluated | +| Windows Server 2012 R2 | ✓ | {{% ctx %}} v2022.9 | To be evaluated | +| Windows Server 2016 | ✓ | {{% ctx %}} v2022.9 | To be evaluated | +| Windows Server 2019 | | {{% ctx %}} v2022.9 | To be evaluated | +| Windows Server 2022 | | {{% ctx %}} v2022.9 | To be evaluated | + +## DNS Requirements + +The installation requires IP to hostname resolution to be available. Please ensure that you have the appropriate pointer (PTR) records configured on the DNS server for all of your servers (Web, Application and Load Balancer). + +## Licensing Requirements + +A valid {{% ctx %}} licence file and {{% ctx %}} Innovation with v7.2 feature identifier must be procured from {{% ctx %}}. The feature identifier is a GUID which will be used when configuring the Gateway installation. The licence file is needed when installing the Web Application server and it should contain fingerprints for the Web Application Server and each Application Server. + +To get a licence file and feature identifier take the following steps: + +1. Copy the following template to a text file: + + ```text + Web Application Server + MachineID: + Fingerprint: + + Application Server 1 + MachineID: + Fingerprint: + + Application Server 2 + MachineID: + Fingerprint: + + Application Server 3 + MachineID: + Fingerprint: + + Please also include a suitable {{% ctx %}} Innovation with v7.2 feature identifier. + ``` + +1. Extract `Cortex Innovation {{< version >}} - Licence Fingerprint Generator.zip`. +1. From that folder, copy `Cortex.Licensing.FingerprintGeneration.exe` to the Web Application server. +1. Double-click `Cortex.Licensing.FingerprintGeneration.exe` to run it. A command line window will appear, containing a machine identifier and fingerprint, e.g: + + ```text + MachineID: WEBAPP-SERVER + Fingerprint: 111118BA104C928319E0CBAE30844CF8B7FD8BC414D1567844D1D0830089F1C9BF5C6 + ``` + +1. Copy the output (machine identifier and fingerprint) to the `Web Application Server` section of the text file created in the initial step. Note that the machine identifier can be changed to any string, provided that it is different for each server. +1. For each Application Server take the following steps: + 1. Copy `Cortex.Licensing.FingerprintGeneration.exe` to the Application server. + 1. Double-click `Cortex.Licensing.FingerprintGeneration.exe` to run it. A command line window will appear, containing a machine identifier and fingerprint, e.g: + + ```text + MachineID: APP-SERVER1 + Fingerprint: 111118BA104C928319E0CBAE30844CF8B7FD8BC414D1567844D1D0830089F1C9BF5C6 + ``` + + 1. Copy the output (machine identifier and fingerprint) to one of the `Application Server` sections of the text file created in the initial step. Note that the machine identifier can be changed to any string, provided that it is different for each server. +1. Request a licence and feature identifier by raising a case in the [{{% ctx %}} Service Portal][CORTEX Service Portal], including the contents of the text file containing all of the fingerprint and machine information in the body of the case. +1. When the licence and feature identifier have arrived, copy the file `Cortex.lic` to `%ProgramData%\Cortex\Licences` on the Web Application Server, creating the `Cortex` and `Licences` folders if they don't exist. Save the feature identifier for use when [Upgrading Gateway][]. + +## Ensure correct owner of {{% ctx %}} Gateway Repo and Website folders + +In order for the upgrade to run smoothly, it is necessary to ensure that the owner and permissions of the Repo and Website folders are set correctly: + +1. If you do not know the location of the Repo folder you can check where it is located else skip to Step 2: + 1. Navigate to the `gateway` IIS folder (usually `%SystemDrive%\inetpub\wwwroot\Cortex\gateway`, e.g. `C:\inetpub\wwwroot\Cortex\gateway`) + 1. Open the `web.config` file. + 1. Find the value of the `connectionString` named `CortexRepositories` +1. Navigate to the `Repo` folder, not opening it. +1. Right-click on the `Repo` folder and click `Properties`. +1. In the dialog, click the `Security` tab. +1. Click `Advanced` at the bottom of the dialog. +1. Check that the `Owner` is stated as the user that runs the {{% ctx %}} Gateway Application pool. If not change it: + 1. Next to the name of the current Owner, click `Change`. + 1. In the dialog enter the username of the user that runs the {{% ctx %}} Gateway Application pool. + 1. Click `Check Names` and ensure that the user is validated. + 1. Click `OK` on the Select User dialog. + 1. Select to `Replace owner on subcontainers and objects`. + 1. Click `OK` on the Advanced Security Settings dialog. +1. Check the `{{% ctx %}} Gateway Application Pool` user for Gateway is listed in the `Group or user names` and has `Modify` permissions. +1. If the `Application Pool` user for Gateway is not listed: + 1. Click the `Edit...` button. + 1. Click the `Add...` button. + 1. Enter the username of the application pool user and click `OK`. + 1. In the `Permissions` section at the bottom, check `Modify`. + 1. Click `OK`. +1. If the `{{% ctx %}} Gateway Application Pool` user for Gateway is listed but does not have permissions: + 1. Click the `Edit...` button. + 1. Select the `{{% ctx %}} Gateway Application Pool` user. + 1. Check `Modify`. + 1. Click `OK`. +1. Repeat these steps for the `Cortex` IIS folder (usually `%SystemDrive%\inetpub\wwwroot\Cortex`, e.g. `C:\inetpub\wwwroot\Cortex`) + +## Web Browser Requirements + +Gateway supports the latest versions of the following browsers: + +* Chrome +* Edge +* Firefox + +## Filesystem Requirements + +The Web Application Server, each Application Server and [gobetween][] Load Balancer Server (if used) must: + +* use an NTFS filesystem. +* enable Network Discovery and File Sharing + +To enable Network Discovery and File Sharing: + +1. Open File Explorer. +1. Click `Network` on the left. +1. A banner similar to the following will appear if Network Discovery and File Sharing is turned off: + {{< figure src="/images/Network Discovery 1.png" title="Network and File Discovery Disabled" >}} +1. Click the banner. +1. Click `Turn on network discovery and file sharing`: + {{< figure src="/images/Network Discovery 2.png" title="Enable Network and File Discovery" >}} + +## Service Requirements + +On the Web Application Server and each Application Server, the following Windows Services must be running: + +* Performance Logs & Alerts +* Remote Registry +* Windows Event Log + +## Security Requirements + +### Installation User + +On all Application Servers, Web Application Server and Load Balancer Server, a domain user, which is a member of the Local Administrators group, must be available to run the installation scripts. This is a prerequisite of Microsoft Service Fabric, which is the HA platform that {{% ctx %}} Innovation is built upon. + +### Antivirus Exclusions + +It is advised (by Microsoft Service Fabric) that the following antivirus exclusions are created on the Web Application Server and each Application Server to reduce antivirus processing on Service Fabric artefacts: + +Folder Exclusions: + +* %ProgramFiles%\Microsoft Service Fabric +* %ProgramData%\SF +* %ProgramData%\SF\Logs + +Process Exclusions: + +* Fabric.exe +* FabricHost.exe +* FabricInstallerService.exe +* FabricSetup.exe +* FabricDeployer.exe +* ImageBuilder.exe +* FabricGateway.exe +* FabricDCA.exe +* FabricFAS.exe +* FabricUOS.exe +* FabricRM.exe +* FileStoreService.exe + +If you are using a built-in load balancer, it is advised that the following antivirus exclusions are created on the Load Balancer Server to reduce antivirus processing on service health checks: + +Process Exclusions: + +* gobetween.exe +* Cortex.Installation.HealthCheck.exe + +A script is provided during installation to add these exclusions for Windows Defender. If any other antivirus software is running, these will need to be added manually. + +If adding the exclusions manually, the Process Exclusions should be done before installation occurs, as the processes will be used during installation of the application and antivirus software can cause the installation to fail or timeout. Folder Exclusions may need to be added after installation has occurred as some antivirus software needs the folders to exist. + +### Port Requirements + +{{% ctx %}} Innovation and Microsoft Service Fabric require a range of [firewall ports to be opened][Port Requirements] between the servers and specific services. + +If you are using Windows Firewall, some ports are opened during installation and others are opened dynamically as needed. If any other firewall is used, it will be necessary to add the rules described in [Port Requirements][] to open the correct ports. + +The `Cortex.Innovation.Test.PortUsage.ps1` script is provided during installation to test the ports on the Web Application Server and each Application Server and make sure they do not overlap with any other programs; most ports may be altered if this is the case, the description will say if this is not possible. + +### Certificate Requirements + +{{< alert title="Important" color="warning" >}}It is critical to set a reminder to {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.RolloverCertificates" title="update certificates" >}} in good time before they expire. If they expire then the platform will cease to function and {{< ahref path="Cortex.ServicePortal.MainDoc" title="CORTEX Service Portal" >}} must be contacted for support.{{< /alert >}} + +#### Application Servers + +{{% alert title="Note" %}} +For production platforms it is recommended that X.509 SSL multi-domain or wildcard certificates are obtained from a Certificate Authority and used for installation. For non-production platforms, certificates can be omitted from installation and it will create and use self-signed certificates. This may prevent 3rd parties that require valid certificate verification to access the API Gateway Service. +{{% / alert %}} + +An X.509 SSL multi-domain or wildcard certificate should be used to: + +* Secure communication between the load balancer and the nodes on the Application Servers. +* Secure communication between the Application Services. +* Allow Application Services to identify themselves to clients such as Gateway. +* Prevent unauthorised nodes from joining the HA cluster. +* Connect to Service Fabric Explorer from each of the Application Servers. + +The certificate can be obtained from a Certificate Authority, such as [Let’s Encrypt](), and must meet the following requirements: + +* Subject field must be in one of the following formats depending on whether a multi-domain or wildcard certificate is used: + * Multi-domain certificate - If using the [gobetween][] load balancer this should be specified as the FQDN of the load balancer server (e.g. `CN=load-balancer.domain.com`). If using a different load balancer this must be specified as the FQDN of one of the application servers (e.g. `CN=application-server.domain.com`) + * Wildcard certificate - wildcard format, pertaining to the domain of the Application Servers (e.g. `CN=*.domain.com`). +* Subject alternative names must include any additional host names that should be able to be used to access the API Gateway Service. Additionally if using a multi-domain certificate: + * The FQDN, NetBIOS Name and IP address of all application servers must be added. + * Optionally, the FQDN, NetBIOS Name and IP address of the web application server must be added if the same certificate will be used for the [web application server][]. +* Certificate file must be in a .PFX file format, with a known password. +* Certificate file must contain the full chain of certificates. +* Certificate file must include the private key. +* Key Usage extension must have a value of `Digital Signature, Key Encipherment (a0)`. +* Enhanced Key Usage must include `Server Authentication` and `Client Authentication`. + +This file should be placed in a known location on the Application Server where the installation scripts will be run. This location will be required when running the installation script. + +If required, a separate X.509 SSL certificate can be obtained to be used by the load balancer to communicate with the Application Services. It must meet all of the other requirements laid out above, except the subject field can also be the FQDN of the load balancer (e.g. `CN=load-balancer.domain.com`). + +#### Web Application Server + +{{% ctx %}} Gateway requires an X.509 SSL certificate to be installed on the Web Application Server. This can be the same certificate as used for the application servers or a different certificate. + +The certificate must have the following properties: + +* Enhanced Key Usage: `Server Authentication` and `Client Authentication` +* Subject Alternative Names (SAN): At minimum the FQDN of the Server. It can also include NetBIOS Name, IP address, localhost, 127.0.0.1 + +If the user tries to navigate to an address not in the SAN list, then they will receive a certificate error. + +{{% alert title="Important" color="warning" %}} +Multi-domain certificates, wildcard certificates, auto-generated self-signed certificates and {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.CreateSelfSignedCertificates" title="manually created self-signed certificates" >}} can be used. However, self-signed certificates are not recommended for production instances. +{{% /alert %}} + +More information about importing the certificate is given during installation. + +### TLS Requirements + +There is a set of non-compulsory security measures, recommended to be applied to the Web Application Server and each Application Server, in order to prevent potential attacks that exploit known industry security vulnerabilities. This includes disabling all versions of SSL and TLS apart from TLS 1.2. And disabling all cipher suites apart from the following: + +* TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 +* TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 + +See [SSL Best Practices][] for a full list of the security changes which will be applied. + +A script is provided during installation to apply these security changes: + +* For the Application servers: `Cortex.Innovation.Install.Multiple.SSLBestPractices.ps1` +* For the Web Application Server: `Cortex.Innovation.Install.SSLBestPractices.ps1` + +### Encryption Requirements + +{{< section "/prerequisites/add-innovation-to-7.2/encryption-requirements.md">}} + +## Alternative Load Balancer Requirements + +Innovation has a [gobetween][] load balancer included that isn't highly available; It is possible to use an alternative. The requirements for installing an alternative load balancer are as follows: + +* Must support a round robin (or similar) method of load balancing to specified ports on 3 nodes. +* Must be able to health check each node by running a predefined batch script (`ApiGatewayTypeHealthcheck.bat`, which resides in the `gobetween` folder of the `Cortex Innovation {{< version >}} - App Server Install Scripts`) that returns 1 for healthy and 0 for unhealthy. +* Must be able to access each of the Application Servers via HTTPS. +* Ideally it should be highly available to avoid a single point of failure in the system. + +## Next Steps? + +1. [Install Application Servers and Load Balancer][] + +[alternative load balancer]: {{< ref "#alternative-load-balancer-requirements" >}} +[Anycast]: {{< url path="Anycast.MainDoc" >}} +[Architecture]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.MultipleServerWithHA.Architecture" >}} +[C++ Redistributable]: {{< url path="MSDownload.CPlusPlusRedistributable.2013" >}} +[CORTEX Service Portal]: {{< url path="Cortex.ServicePortal.MainDoc" >}} +[gobetween]: {{< url path="GoBetween.MainDoc" >}} +[IIS Url Rewrite]: {{< url path="IIS.Downloads.UrlRewrite-2_1" >}} +[Install Application Servers and Load Balancer]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.MultipleServerWithHA.InstallApplicationAndLoadBalancerServers" >}} +[Microsoft Server 2016]: {{< url path="MSEval.WindowsServer.2016" >}} +[Microsoft Server 2019]: {{< url path="MSEval.WindowsServer.2019" >}} +[NET Framework 472]: {{< url path="MSDotNet.Framework472.MainDoc" >}} +[Port Requirements]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.PortRequirements" >}} +[Recommended Architecture]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.MultipleServerWithHA.RecommendedArchitecture" >}} +[SSL Best Practices]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.SSLBestPractices" >}} +[Upgrading Gateway]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.MultipleServerWithHA.ConfigureCortexGatewayInstallationScriptNew" >}} +[web application server]: {{< ref "#web-application-server" >}} +[Web Deploy]: {{< url path="MSDownload.WebDeploy" >}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/multiple-server-with-ha/try-it-out.md b/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/multiple-server-with-ha/try-it-out.md new file mode 100644 index 000000000..bd73c1220 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/multiple-server-with-ha/try-it-out.md @@ -0,0 +1,66 @@ +--- +title: "Try it out" +linkTitle: "Try it out" +description: "Information about trying out {{% ctx %}} Innovation for the first time." +weight: 60 +--- + +# {{% param title %}} + +This guide describes how to try out a new Innovation installation to make sure it is working. + +## Test Debugging Flows + +Test the platform by creating a new flow and executing it using the following steps: + +1. Click on the `Dev` charm, then the `+` button and click `Group` to open a dialog. +1. Enter a name for the group, configure the `Permission Groups` and click `OK` to create the group. +1. Click on the group to open it (refresh the page if it does not appear). +1. Inside the group, click the `+` button again and click on `Activity` to open a dialog. If the menu item is not present, it means that the `FeatureFlags` in the `CortexGateway.SetParameters.xml` file was not set properly when installing Gateway. See [Troubleshooting][Troubleshooting No Innovation] for more information. +1. Enter a name for the flow, configure the `Permission Groups` and click `OK` to create the flow. +1. The flow should be displayed with a `Start Flow` block and `End Flow` block, if those blocks are not displayed see [Troubleshooting][Troubleshooting Flow No Blocks]. A list of block palettes should be displayed down the left hand side: + {{< figure src="/images/New Innovation Flow View.PNG" title="New Flow - Number of palettes may differ" >}} +1. Add a `Set Variable` block and connect it between the `Start Flow` and `End Flow` blocks. +1. Click the `Set Variable` block to open the Property Editor. +1. Set the `Value` property to the expression `DateTimeOffset.Now`. +1. Type `Result` into the `Variable` property and click `Create Result`. +1. In the Variables Grid, set `Is Output Variable?` to `true` for the new `Result` variable. +1. Add a breakpoint to the `End Flow` block and start the flow. An execution token should appear. + If the token does not appear, try refreshing the page. Failing that, see [Troubleshooting][Troubleshooting Flow Not Starting]. +1. Select the execution in the Executions Grid (bottom panel). +1. The `Result` variable displayed in the Variables Viewer (right panel) should show the current time. +1. Continue or stop the execution. +1. Commit the flow. + +## Test Publishing Production Flows + +1. Log in to Gateway with a user that has the `Admin` role. +1. Click on the `Admin` charm, then `Packages`. +1. Click `Add Package Definition`. Enter a package name and select the new flow to add to the package. Click `Save` to save the new package. +1. Click `Publish`. A success message should appear. If it doesn't it means that either one or more of the parameters prefixed with `Service Fabric` in the `CortexGateway.SetParameters.xml` file was not set properly when updating Gateway, or the Application Services aren't healthy. See [Troubleshooting][Troubleshooting No Publish] for more information. + +## Test Executing Production Flows + +1. Open an HTTP client, such as [Postman](https://www.postman.com/downloads/). Make a request with the following format: + | Property | Value | + |---------------|-------------------------------------------------------------------------------------| + | Action | POST | + | URL | https://{FQDN of Load Balancer Server}/api/default/default/flows/{Flow Name}/executions?packageName={Package Name}
e.g. https://load-balancer.domain.com/api/default/default/flows/NewFlow/executions?packageName=NewPackage| + | Content Type | application/json | + | Body | {} | + | Authentication| Basic | + | Username | The value used for `ApiGatewayBasicAuthUsername` when installing Application Services | + | Password | The value used for `ApiGatewayBasicAuthPassword` when installing Application Services (Unencrypted) | + + {{% alert title="Note" %}} If you used self-signed certificates when installing the Application Servers you will need to disable SSL certificate validation in your HTTP client. {{% /alert %}} + +1. The request should return a JSON object with the output variables of the flow e.g. `{ "Output": "2022-03-09T07:35:16+0000" }`. +1. {{% ctx %}} Innovation has now been verified and is ready to use. + +[Troubleshooting During Installation]: {{< url path="Cortex.Reference.Troubleshooting.Installation.TroubleshootingDuringInstallation" >}} +[Troubleshooting Flow No Blocks]: {{< url path="Cortex.Reference.Troubleshooting.Installation.TroubleshootingFlowNoBlocks" >}} +[Troubleshooting Flow Not Starting]: {{< url path="Cortex.Reference.Troubleshooting.Installation.TroubleshootingFlowNotStarting" >}} +[Troubleshooting No Innovation]: {{< url path="Cortex.Reference.Troubleshooting.Installation.TroubleshootingNoInnovation" >}} +[Troubleshooting No Publish]: {{< url path="Cortex.Reference.Troubleshooting.Installation.TroubleshootingNoPublish" >}} +[Troubleshooting Root Certificate Error]: {{< url path="Cortex.Reference.Troubleshooting.Installation.TroubleshootingNoRootCertificate" >}} +[Setup Gateway]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.SetupGateway" >}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/single-server-without-ha/_index.md b/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/single-server-without-ha/_index.md new file mode 100644 index 000000000..24d0635d4 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/single-server-without-ha/_index.md @@ -0,0 +1,12 @@ +--- +title: "Single Server - Without HA" +linkTitle: "Single Server - Without HA" +description: "Information about adding {{% ctx %}} Innovation to {{% ctx %}} 7.2 on a single on-premise server without high availability (HA), including: information about components, supported architectures, prerequisites and installation instructions." +weight: 10000 +--- + +{{% pageinfo %}} +Single server installations without HA are not recommended for the following scenarios: + +* Production installations that are required to scale and support HA +{{% /pageinfo %}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/single-server-without-ha/architecture.md b/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/single-server-without-ha/architecture.md new file mode 100644 index 000000000..62d3305f8 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/single-server-without-ha/architecture.md @@ -0,0 +1,30 @@ +--- +title: "Architecture" +linkTitle: "Architecture" +description: "Information about the recommended Innovation platform architecture, including component descriptions." +weight: 10 +--- + +# {{< param title >}} + +## Components + +{{< section "/architecture/components/single-server.md" >}} + +## Single Server Architecture + +{{% ctx %}} Innovation and v7.2 can run side-by-side, allowing flows to be built and run for both of them from the same Gateway instance. They each require a different set of back-end components to be installed. Innovation can be added to a {{% ctx %}} v7.2 installation by using the existing hardware. The only component shared by both Innovation and v7.2 is {{% ctx %}} Gateway. + +The minimum architecture for adding Innovation to a v7.2 Single Site, Single Server system is as follows: + +{{< figure src="/images/editable/Cortex Innovation v7.2 Single Server.png" class="centre" title="1 Server Architecture Diagram" >}} + +{{< section "/architecture/components/node-details.md" >}} + +{{% alert type="warning" title="Warning" %}} This architecture is not recommended for production platforms that are required to scale and support HA. Additionally, upgrades require application redeployment with downtime rather than using rolling upgrades. {{%/alert %}} + +## Next Steps? + +1. [Prerequisites][] + +[Prerequisites]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.SingleServerWithoutHA.Prerequisites" >}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/single-server-without-ha/install-application-server.md b/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/single-server-without-ha/install-application-server.md new file mode 100644 index 000000000..e956aa8c2 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/single-server-without-ha/install-application-server.md @@ -0,0 +1,64 @@ +--- +title: "Install Application Server" +linkTitle: "Install Application Server" +description: "Information about installing the Application Server." +weight: 30 +--- + +# {{< param title >}} + +This guide describes how to install the Application Server components on the server. Please ensure that the [Prerequisites][] have been read before starting this installation. + +## Make Installation Artefacts Available + +{{< section "/install-application-server/make-installation-artefacts-available.md">}} + +## Install Microsoft .NET Framework 4.7.2 + +{{< section "/install-application-server/install-dot-net-framework.md">}} + +## Apply Recommended Security Measures + +{{< section "/install-application-server/apply-recommended-security-measures.md">}} + +## Add Antivirus Exclusions + +If Windows Defender is not running on the server, ensure that the [Antivirus Exclusions][] have been added to the running antivirus software on the server and continue to the next section, otherwise follow these steps: + +{{< section "/install-application-server/single-server/add-antivirus-exclusions.md">}} + +## Check Port Usage + +{{< section "/install-application-server/single-server/check-port-useage.md">}} + +## Configure Installation Script + +{{< section "/install-application-server/single-server/add-innovation-to-7.2/configure-installation-script.md">}} + +## Test Installation Script + +{{< section "/install-application-server/single-server/test-installation-script.md">}} + +## Run Installation Script + +{{< section "/install-application-server/single-server/run-installation-script.md">}} + +## Add Read and Execute access to Windows Crypto folder + +{{< section "/install-application-server/single-server/add-permissions-to-crypto-folder.md">}} + +## Check Application Services + +{{< section "/install-application-server/single-server/check-application-services.md">}} + +## Preserve installation files + +{{< section "/preserve-installation-files.md">}} + +## Next Steps? + +1. [Upgrade v7.2 Gateway to Include Innovation][] + +[Antivirus Exclusions]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.SingleServerWithoutHA.AntivirusExclusions" >}} +[Upgrade v7.2 Gateway to Include Innovation]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.SingleServerWithoutHA.AddInnovationTo72WebApplicationServer" >}} +[Prerequisites]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.SingleServerWithoutHA.Prerequisites" >}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/single-server-without-ha/install-web-application-server.md b/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/single-server-without-ha/install-web-application-server.md new file mode 100644 index 000000000..4d86fba50 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/single-server-without-ha/install-web-application-server.md @@ -0,0 +1,215 @@ +--- +title: "Upgrade v7.2 Gateway to Include Innovation" +linkTitle: "Upgrade v7.2 Gateway to Include Innovation" +description: "Information about upgrading v7.2 Gateway with Innovation functionality." +weight: 40 +--- + +# {{< param title >}} + +This guide describes how to upgrade Gateway on v7.2 to include Innovation. Please ensure that [Install Application Server][] has been completed before starting this installation. These steps assume that the v7.2 version of Gateway and its prerequisites have already been installed. + +The steps to add Innovation functionality to 7.2 are: + +1. Upgrade Gateway + +## Make Installation Artefacts Available + +1. Copy the following artefacts to a folder on the machine: + + * Cortex Innovation {{< version >}} - Block Packages.zip + * Cortex Innovation {{< version >}} - Gateway.zip + * Cortex Innovation {{< version >}} - Web App Server Install Scripts.zip + +1. Extract the `Cortex Innovation {{< version >}} - Web App Server Install Scripts.zip` zip file to a folder with the same name. + +## Install Prerequisites + +### Licensing + +Ensure that a valid {{% ctx %}} licence file named `Cortex.lic` exists on the server, in the location `%ProgramData%\Cortex\Licences`. If it does not, follow the instructions located at [Licensing Requirements][]. + +### Grant folder permissions to the {{% ctx %}} Gateway Application Pool User + +The following folders require `Modify` permission to allow creating the `NuGet` folders and its `NuGet.Config` file within: + +* `C:\Windows\System32\config\systemprofile\AppData\Roaming` +* `C:\Windows\SysWOW64\config\systemprofile\AppData\Roaming` + +For each folder, perform the following steps: + +1. Navigate to the `AppData` folder. +1. Right-click on the `Roaming` folder and click `Properties`. +1. In the dialog, click the `Security` tab. +1. Check the `Application Pool` user for Gateway is listed in the `Group or user names` and has `Modify` permissions. +1. If the `Application Pool` user for Gateway is not listed: + 1. Click the `Edit...` button. + 1. Click the `Add...` button. + 1. Enter the username of the application pool user and click `OK`. + 1. In the `Permissions` section at the bottom, check `Modify`. + 1. Click `OK`. + 1. Click `Yes` to change the permission to the folder. +1. If the `Application Pool` user for Gateway is listed but does not have permissions: + 1. Click the `Edit...` button. + 1. Select the `Application Pool` user. + 1. Check `Modify`. + 1. Click `OK`. + 1. Click `Yes` to change the permission to the folder. + +### Certificate Requirements + +In order to ensure that the correct certificate is used during the upgrade of {{% ctx %}} Gateway, it is necessary to [assign a friendly name][Assign Certificate Friendly Name] to the certificate that is currently being used for {{% ctx %}} Gateway. It is important to set the `ImportCertificate` parameter to `$false` when [configuring the {{% ctx %}} Gateway installation script][Configure CORTEX Gateway Installation Script]. + +#### Assign Certificate Friendly Name + +A Friendly Name should be assigned to the certificate being used for the Cortex Website. This will be used in the [Configure {{% ctx %}} Gateway Installation Script][Configure CORTEX Gateway Installation Script] to assign the correct certificate to the site: + +1. Click the Windows button (`Start`). +1. Type `certlm.msc` and press `Enter` to open the Certificate Manager dialog. +1. Expand `Personal` and select `Certificates`. +1. You should see your certificate in this store. +1. Right-click on the certificate and select `Properties`. +1. On the `General` tab in the `Friendly Name` text box, enter a name to be used for the certificate. +1. Click `OK`. + +## Perform Installation + +### Configure {{% ctx %}} Gateway Installation Script + +1. In the `Cortex Innovation {{< version >}} - Web App Server Install Scripts` folder, locate the `Cortex.Innovation.Install.Gateway.ps1` script and open it with a text editor. + +1. Configure the script according to the details given below: + + ```powershell + .\Cortex.Install.Gateway.ps1 ` + -GatewayPackagePath "C:\Install\Cortex Innovation {{< version >}} - Gateway.zip" ` + -FeatureFlags "InnovationId" ` + -ServiceFabricApiGatewayEndpoint "https://server.domain.com:8722/" ` + -ServiceFabricUsingSelfSignedCertificates $false ` + -ServiceFabricApiGatewayBasicAuthUsername "BasicAuthUser" ` + -ServiceFabricApiGatewayBasicAuthPassword '#_065077199197085!212123173135087074174142102155007175102029143220132038175026114248243207204119030125106032237087162060168108135168241247037070081~187087056217118!069132229129134129097089241180163#' ` + -DotNetFlowDebuggerEndpoint "https://server.domain.com:8722/api/" ` + -DotNetFlowDebuggerBasicAuthUsername "BasicAuthUser" ` + -DotNetFlowDebuggerBasicAuthPassword '#_065077199197085!212123173135087074174142102155007175102029143220132038175026114248243207204119030125106032237087162060168108135168241247037070081~187087056217118!069132229129134129097089241180163#' ` + -DotNetFlowDebuggerUsingSelfSignedCertificates $false ` + -GatewayApplicationPoolUsername "Domain\Username" ` + -WebRootFolder "C:\inetpub\wwwroot" ` + -WebsitePort "443" ` + -ImportCertificate $false ` + -CertificateFilePath "C:\Install\Certificate.pfx" ` + -CertificateFriendlyName "CertificateName" ` + -ConfigureSiteRedirect $true ` + -ApplySecurityMeasures $true ` + -UsingWindowsDefender $false ` + -AcceptEULA:$AcceptEula ` + *>&1 | Tee-Object -FilePath "cortex-gateway-install-log.txt" + ``` + + | Name | Description | + |------------------------------------------------|-------------| + |`GatewayPackagePath` | Configure this value with the location of the `Cortex Innovation {{< version >}} - Gateway.zip` file on the installation server. | + |`FeatureFlags` | Replace `InnovationId` with the {{% ctx %}} Innovation feature identifier, which should have been provided by {{% ctx %}} when fulfilling the [Licensing Requirements][], if it wasn't it should be requested using [{{% ctx %}} Service Portal][CORTEX Service Portal].

This will overwrite the `FeatureFlags` value in the Gateway web.config.| + |`ServiceFabricApiGatewayEndpoint` | Replace `server.domain.com` with the fully qualified domain name of the server. The port should be specified as `8722` and there must be a trailing slash, e.g. `https://server.domain.com:8722/`.

This will overwrite the `ServiceFabricApiGatewayEndpoint` value in the {{% ctx %}} Gateway web.config.| + |`ServiceFabricUsingSelfSignedCertificates` | Configure the value as `$false` if you used valid CA certificates when [installing the Application Server][Configure Installation Script], `$true` if you used self-signed certificates.

This will overwrite the `ServiceFabricUsingSelfSignedCertificates` value in the {{% ctx %}} Gateway web.config.| + |`ServiceFabricApiGatewayBasicAuthUsername` | This must be changed if you used a non-default `ApiGatewayBasicAuthUsername` when [installing the Application Server][Configure Installation Script]; if so, this value must be configured to the one used.

This will overwrite the `ServiceFabricApiGatewayBasicAuthUsername` value in the {{% ctx %}} Gateway web.config.{{< alert type="note" title="Note" >}} This parameter should be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}}| + |`ServiceFabricApiGatewayBasicAuthPassword` | This must be changed if you used a non-default `ApiGatewayBasicAuthPassword` when [installing the Application Server][Configure Installation Script]; if so, this value must be configured to the one used.

This will overwrite the `ServiceFabricApiGatewayBasicAuthPassword` value in the {{% ctx %}} Gateway web.config.{{< alert type="note" title="Note" >}} This parameter must be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}}| + |`DotNetFlowDebuggerEndpoint` | Replace `server.domain.com` with the fully qualified domain name of the server.

This will overwrite the `DotNetFlowDebuggerEndpoint` value in the {{% ctx %}} Gateway web.config.| + |`DotNetFlowDebuggerBasicAuthUsername` | This must be changed if you used a non-default `ApiGatewayBasicAuthUsername` when [installing the Debugger on the Web Application Server][Install Application Server]; if so, this value must be configured to the one used.

This will overwrite the `DotNetFlowDebuggerBasicAuthUsername` value in the {{% ctx %}} Gateway web.config.{{< alert type="note" title="Note" >}} This parameter should be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}}| + |`DotNetFlowDebuggerBasicAuthPassword` | This must be changed if you used a non-default `ApiGatewayBasicAuthPassword` when [installing the Debugger on the Web Application Server][Install Application Server]; if so, this value must be configured to the one used.

This will overwrite the `DotNetFlowDebuggerBasicAuthPassword` value in the {{% ctx %}} Gateway web.config.{{< alert type="note" title="Note" >}} This parameter must be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}}| + |`DotNetFlowDebuggerUsingSelfSignedCertificates` | Configure the value as `$false` if you are using valid CA certificates to secure the communication between {{% ctx %}} Gateway and the Debugger, `$true` if using self-signed certificates.

This will overwrite the `DotNetFlowDebuggerUsingSelfSignedCertificates` value in the {{% ctx %}} Gateway web.config.| + |`GatewayApplicationPoolUsername` | Replace `Domain\Username` with the user that is used to run the {{% ctx %}} Gateway application pool currently.| + |`WebRootFolder` | Replace this with the correct path for the Web Root Folder on the server. Typically this will be `C:\inetpub\wwwroot`.| + |`WebsitePort` | Replace this with the port that you wish the website to use. Typically this will be `443`.| + |`ImportCertificate` | This should be set to `$false` if the certificate is already imported.

Note that prior to installation the certificate must be [assigned a friendly name][Assign Certificate Friendly Name]. + |`CertificateFilePath` | Replace this with the location and filename for the certificate to be imported.

If `ImportCertificate` is set to `$false` this value can remain unchanged.| + |`CertificateFriendlyName` | Replace this with the friendly name that you would like to be allocated to the certificate.

If `ImportCertificate` is set to `$false`, this must be [assigned][Assign Certificate Friendly Name] prior to running the installation and the Friendly Name used must be specified to allow the website to use the correct certificate.| + |`ConfigureSiteRedirect` | If the site hosting the {{% ctx %}} Gateway web application is a newly created Cortex site or an existing site that doesn’t have its own content, it is recommended to redirect the site URL to the {{% ctx %}} Gateway web application URL. The default behaviour of the script is to create a URL Rewrite redirect rule to achieve this.

To skip this rule creation change the value to `$false`.| + |`ApplySecurityMeasures` | Change this from `$true` to `$false` if you do not require the Recommended [Security Best Practices][] to be implemented as part of the installation process.| + |`UsingWindowsDefender` | Change this from `$false` to `$true` if you are using the Windows Defender firewall.

If Windows Defender is not being used but an alternative firewall is, it must be configured to allow communication inbound via TCP on the port configured for HTTPS (usually 443).| + |`AcceptEULA` | This does not need to be changed, the EULA will be accepted at a later stage. | + |`FilePath` | The filename that installation logs are written to. If this should be written to a different location than where the installation files are then a full path should be specified. | + +1. Save and close `Cortex.Innovation.Install.Gateway.ps1`. + +### Upgrade {{% ctx %}} Gateway + +1. Open a Windows PowerShell (x64) window as administrator. +1. Navigate PowerShell to inside the `Cortex Innovation {{< version >}} - Web App Server Install Scripts` folder using the following command, modifying the path as necessary: + + ```powershell + cd "C:\Install\Cortex Innovation {{< version >}} - Web App Server Install Scripts" + ``` + +1. Type the following command into PowerShell: + + ```powershell + .\Cortex.Innovation.Install.Gateway.ps1 + ``` + +1. Please read the End User Licence Agreement which can be found [here][Eula]. Once you agree to the terms, add the flag `-AcceptEULA` to the command entered above, e.g: + + ```powershell + .\.ps1 -AcceptEULA + ``` + +1. Run the PowerShell command to upgrade {{% ctx %}} Gateway. +1. If `ImportCertificate` is set to $true, and the file is of type `.pfx`, a prompt will appear for the certificate password. This should be entered, and then hit `Enter`. +1. Check that there have been no errors in the script; these would appear in red in the console. + + If there are any errors, then please follow any instructions given within them to rectify the situation, and retry the installation. + + If the errors do not give any instructions on how to rectify, please contact [{{% ctx %}} Service Portal][CORTEX Service Portal] for further assistance. + +1. Once the PowerShell script execution has completed, a prompt will appear to restart the machine. You can choose to restart now (`N`) or later (`L`). +{{< alert type="note" title="Note" >}} It is recommended to choose to restart later after the final step of this section has completed to ensure that no issues occur.{{< /alert >}} + +1. In a browser, navigate to the {{% ctx %}} Gateway website, available at `://:/`, e.g. `https://localhost/gateway` and wait for the login page to load. This may take a few minutes. + +### Grant additional folder permissions to the {{% ctx %}} Gateway Application Pool User + +{{< section "/install-web-application-server/add-innovation-to-7.2/grant-gateway-user-additional-folder-permissions.md">}} + +## Update Datasources and remove obsolete Database + +With effect from 2024.1 {{% ctx %}} Gateway no longer requires its own database unless the system is using LiveView or Reporting. If LiveView and Reporting are not used, some final steps are required to remove the obsolete database. + +To find out if LiveView or Reporting are used: + +1. In a browser navigate to the {{% ctx %}} Gateway website, available at `://:/`, e.g. `https://localhost/gateway`, and log in as a user with administrative privileges. +1. Click on `Settings`. +1. In the submenu, click on `LDAP Authorisation`. +1. If any users have been granted permission to the LiveView or Reporting roles there will be a tick in the box. + +If no users are granted permission to the LiveView and Reporting roles: + +1. Navigate to the `gateway` IIS folder (usually `%SystemDrive%\inetpub\wwwroot\Cortex\gateway`, e.g. `C:\inetpub\wwwroot\Cortex\gateway`) +1. Open the `web.config` file. +1. Find the `connectionString` named `ModelDBContext`. +1. Change the connectionString parameter to be `connectionString="Data Source=None"` +1. Find the `connectionString` named `AuthContext`. +1. Change the connectionString parameter to be `connectionString="Data Source=None"` +1. Open `SQL Server Management Studio` and connect to the database instance with a user that has sysadmin privileges. +1. Expand the Server Name Node. +1. Expand the `Databases` Node. +1. Right Click on `CortexWeb` and select `Delete`. +1. In the `Delete Object` dialog box, select the checkbox to `Close Existing Connections` and click `OK`. + +## Preserve installation files + +Ensure that the installation files are backed up or kept on the server, especially the scripts and config files that have been modified. This will make it easier to perform further actions in future, such as troubleshooting, certificate rollover, uninstallation, reinstallation and updates. + +## Next Steps? + +1. [Try it out][] + +[Assign Certificate Friendly Name]: {{< ref "#assign-certificate-friendly-name" >}} +[Eula]: {{< url path="Cortex.Website.Eula.MainDoc" >}} +[Configure CORTEX Gateway Installation Script]: {{< ref "#configure-cortex-gateway-installation-script" >}} +[Configure Installation Script]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.SingleServerWithoutHA.ConfigureInstallationScript" >}} +[CORTEX Encrypted]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" >}} +[CORTEX Service Portal]: {{< url path="Cortex.ServicePortal.MainDoc" >}} +[Install Application Server]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.SingleServerWithoutHA.InstallApplicationServer" >}} +[Licensing Requirements]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.SingleServerWithoutHA.LicensingRequirements" >}} +[Encryption Requirements]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.SingleServerWithoutHA.EncryptionRequirements" >}} +[Security Best Practices]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.SSLBestPractices" >}} +[Try it out]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.SingleServerWithoutHA.TryItOut" >}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/single-server-without-ha/prerequisites.md b/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/single-server-without-ha/prerequisites.md new file mode 100644 index 000000000..b17cb57a5 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/single-server-without-ha/prerequisites.md @@ -0,0 +1,261 @@ +--- +title: "Prerequisites" +linkTitle: "Prerequisites" +description: "Information about the prerequisites required on each server type for installation." +weight: 20 +--- + +# {{< param title >}} + +The prerequisites required for a single server (as described in [Architecture][]) are laid out in this guide. These must be considered before undertaking installation. + +## Hardware Requirements + +{{% alert title="Note" %}}This configuration is not recommended for production servers that are required to scale and support HA.{{% /alert %}} + +| Server Role | Servers Required | CPU Cores (> 2GHz) | RAM (GB) | Disk (GB) | +|------------------|-----------------------|-----------------------------------|---------------|----------------------| +| Single Server
*Application Server +
Web Application Server* | 1 | 4+ *Recommended*
4 *Minimum* | 16+ *Recommended*
12 *Minimum* | 160+ *Recommended*
135 *Minimum*
30+ free on installation drive
40+ free on %ProgramData% drive | + +## Software Requirements + +| Server Role | Windows Server[^1] | .Net | PowerShell[^2] | IIS[^3] | Other Software | +|------------------|-------------------------|------|------------|---------|----------| +| Single Server
*Application Server +
Web Application Server* | [2019 (x64)][Microsoft Server 2019] *Recommended*
[2016 (x64)][Microsoft Server 2016] | [Framework 4.7.2][NET Framework 472] | 5.1 | 10.0.17763[^4]
10.0.14393[^5]
[URL Rewrite Module 2.1][IIS Url Rewrite] | [Microsoft Web Deploy 3.0 or later][Web Deploy]
[Visual C++ Redistributable 2013 (x64)][C++ Redistributable] | + +[^1]: Windows Server Standard and Datacenter editions are supported. Filesystem **must be NTFS** and networking **must use IPv4**. Linux is not supported, but may be in the future. +[^2]: PowerShell 5.1 ships with Windows Server 2016 and 2019. +[^3]: IIS is supported; other web servers, including IIS Express are not supported. +[^4]: Ships as a windows role within Windows Server 2019. +[^5]: Ships as a windows role within Windows Server 2016. + +## Backup Requirements + +It is important to ensure that there are relevant backups in place to be able to restore the platform in the event of a failed installation. The recommended approach would be to snapshot or backup the Virtual Machine if this is possible. If this is not possible then the following steps should be taken: + +### Backup Git Repositories + +1. On the Web Application Server, if you do not know the location of the Repo folder you can check where it is located else skip to Step 2: + 1. Navigate to the `gateway` IIS folder (usually `%SystemDrive%\inetpub\wwwroot\Cortex\gateway`, e.g. `C:\inetpub\wwwroot\Cortex\gateway`) + 1. Open the `web.config` file. + 1. Find the value of the `connectionString` named `CortexRepositories` +1. In File Explorer, navigate to the Repo Folder. +1. Copy the Repo folder to another location. + +### Backup SQL Server Databases + +Ensure that there are recent full backups of both the CortexWeb and CortexWeb.Auth Databases. For information on generating a full backup see Microsoft's guidance [here][Create Full DB Backup]. + +In the event of a failed installation contact [{{% ctx %}} Service Portal][CORTEX Service Portal] who will be able to assist with resolving the problems or with restoring the platform. + +## Domain Requirements + +The server must be on a domain and cannot be a domain controller. + +## Active Directory Requirements + +For Gateway, only Windows domains with an Active Directory domain controller running Active Directory Domain Services are supported. + +Supported versions of Active Directory are listed below: + +| Version | Verified? | Supported From | Supported Until | +|----------------------------|----------------|----------------|------------------| +| Windows Server 2003 | ✓ | {{% ctx %}} v2022.9 | To be evaluated | +| Windows Server 2003 R2 | | {{% ctx %}} v2022.9 | To be evaluated | +| Windows Server 2008 | | {{% ctx %}} v2022.9 | To be evaluated | +| Windows Server 2008 R2 | ✓ | {{% ctx %}} v2022.9 | To be evaluated | +| Windows Server 2012 | | {{% ctx %}} v2022.9 | To be evaluated | +| Windows Server 2012 R2 | ✓ | {{% ctx %}} v2022.9 | To be evaluated | +| Windows Server 2016 | ✓ | {{% ctx %}} v2022.9 | To be evaluated | +| Windows Server 2019 | | {{% ctx %}} v2022.9 | To be evaluated | +| Windows Server 2022 | | {{% ctx %}} v2022.9 | To be evaluated | + +## DNS Requirements + +The installation requires IP to hostname resolution to be available. Please ensure that you have the appropriate pointer (PTR) records configured on the DNS server for the server. + +## Licensing Requirements + +A valid {{% ctx %}} licence file and {{% ctx %}} Innovation feature identifier must be procured from {{% ctx %}}. The feature identifier is a GUID which will be used when configuring the Gateway installation. The licence file is needed when installing the server and it should contain that server's fingerprint. + +To get a licence file and feature identifier take the following steps: + +1. Copy the following template to a text file: + + ```text + Web Application/Application Server + MachineID: + Fingerprint: + + Please also include a suitable {{% ctx %}} Innovation feature identifier. + ``` + +1. Extract `Cortex Innovation {{< version >}} - Licence Fingerprint Generator.zip`. +1. From that folder, copy `Cortex.Licensing.FingerprintGeneration.exe` to the server. +1. Double-click `Cortex.Licensing.FingerprintGeneration.exe` to run it. A command line window will appear, containing a machine identifier and fingerprint, e.g: + + ```text + MachineID: SERVER + Fingerprint: 111118BA104C928319E0CBAE30844CF8B7FD8BC414D1567844D1D0830089F1C9BF5C6 + ``` + +1. Copy the output (machine identifier and fingerprint) to the `Web Application/Application Server` section of the text file created in the initial step. Note that the machine identifier can be changed to any string. +1. Request a licence and feature identifier by raising a case in the [{{% ctx %}} Service Portal][CORTEX Service Portal], including the contents of the text file containing all of the fingerprint and machine information in the body of the case. +1. When the licence and feature identifier have arrived, copy the file `Cortex.lic` to `%ProgramData%\Cortex\Licences` on the Web Application Server, creating the `Cortex` and `Licences` folders if they don't exist. Save the feature identifier for use when [Upgrading Gateway][]. + +## Ensure correct owner of {{% ctx %}} Gateway Repo and Website folders + +In order for the upgrade to run smoothly, it is necessary to ensure that the owner and permissions of the Repo and Website folders are set correctly: + +1. If you do not know the location of the Repo folder you can check where it is located else skip to Step 2: + 1. Navigate to the `gateway` IIS folder (usually `%SystemDrive%\inetpub\wwwroot\Cortex\gateway`, e.g. `C:\inetpub\wwwroot\Cortex\gateway`) + 1. Open the `web.config` file. + 1. Find the value of the `connectionString` named `CortexRepositories` +1. Navigate to the `Repo` folder, not opening it. +1. Right-click on the `Repo` folder and click `Properties`. +1. In the dialog, click the `Security` tab. +1. Click `Advanced` at the bottom of the dialog. +1. Check that the `Owner` is stated as the user that runs the {{% ctx %}} Gateway Application pool. If not change it: + 1. Next to the name of the current Owner, click `Change`. + 1. In the dialog enter the username of the user that runs the {{% ctx %}} Gateway Application pool. + 1. Click `Check Names` and ensure that the user is validated. + 1. Click `OK` on the Select User dialog. + 1. Select to `Replace owner on subcontainers and objects`. + 1. Click `OK` on the Advanced Security Settings dialog. +1. Check the `{{% ctx %}} Gateway Application Pool` user for Gateway is listed in the `Group or user names` and has `Modify` permissions. +1. If the `Application Pool` user for Gateway is not listed: + 1. Click the `Edit...` button. + 1. Click the `Add...` button. + 1. Enter the username of the application pool user and click `OK`. + 1. In the `Permissions` section at the bottom, check `Modify`. + 1. Click `OK`. +1. If the `{{% ctx %}} Gateway Application Pool` user for Gateway is listed but does not have permissions: + 1. Click the `Edit...` button. + 1. Select the `{{% ctx %}} Gateway Application Pool` user. + 1. Check `Modify`. + 1. Click `OK`. +1. Repeat these steps for the `Cortex` IIS folder (usually `%SystemDrive%\inetpub\wwwroot\Cortex`, e.g. `C:\inetpub\wwwroot\Cortex`) + +## Web Browser Requirements + +Gateway supports the latest versions of the following browsers: + +* Chrome +* Edge +* Firefox + +## Filesystem Requirements + +The server must use an NTFS filesystem. + +## Service Requirements + +The following Windows Services must be running on the server: + +* Performance Logs & Alerts +* Remote Registry +* Windows Event Log + +## Security Requirements + +### Installation User + +A domain user which is a member of the Local Administrators group on the server must be available to run the installation scripts. This is a prerequisite of Microsoft Service Fabric, which is the platform that {{% ctx %}} Innovation is built upon. + +### Antivirus Exclusions + +It is advised (by Microsoft Service Fabric) that the following antivirus exclusions are created on the server to reduce antivirus processing on Service Fabric artefacts: + +Folder Exclusions: + +* %ProgramFiles%\Microsoft Service Fabric +* %ProgramData%\SF +* %ProgramData%\SF\Logs + +Process Exclusions: + +* Fabric.exe +* FabricHost.exe +* FabricInstallerService.exe +* FabricSetup.exe +* FabricDeployer.exe +* ImageBuilder.exe +* FabricGateway.exe +* FabricDCA.exe +* FabricFAS.exe +* FabricUOS.exe +* FabricRM.exe +* FileStoreService.exe + +A script is provided during installation to add these exclusions for Windows Defender. If any other antivirus software is running, these will need to be added manually. + +If adding the exclusions manually, the Process Exclusions should be done before installation occurs, as the processes will be used during installation of the application and antivirus software can cause the installation to fail or timeout. Folder Exclusions may need to be added after installation has occurred as some antivirus software needs the folders to exist. + +### Port Requirements + +{{% ctx %}} Innovation and Microsoft Service Fabric require a range of [firewall ports to be opened][Port Requirements] between the server and specific services. + +If you are using Windows Firewall, some ports are opened during installation and others are opened dynamically as needed. If any other firewall is used, it will be necessary to add the rules described in [Port Requirements][] to open the correct ports. + +The `Cortex.Innovation.Test.PortUsage.ps1` script is provided during installation to test the ports on the server and make sure they do not overlap with any other programs; most ports may be altered if this is the case, the description will say if this is not possible. + +### Certificate Requirements + +{{< alert title="Important" color="warning" >}}It is critical to set a reminder to {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.RolloverCertificates" title="update certificates" >}} in good time before they expire. If they expire then the platform will cease to function and {{< ahref path="Cortex.ServicePortal.MainDoc" title="CORTEX Service Portal" >}} must be contacted for support.{{< /alert >}} + +{{% alert title="Note" %}} +For production platforms it is recommended that an X.509 SSL certificate is obtained from a Certificate Authority and used for installation. For non-production platforms, certificates can be omitted from installation and it will create and use self-signed certificates. This may prevent 3rd parties that require valid certificate verification to access the API Gateway Service. +{{% / alert %}} + +An X.509 SSL certificate (standard or wildcard) should be used to: + +* Allow Application Services to identify themselves to clients such as Gateway. +* Prevent unauthorised nodes from joining the single node cluster. +* Connect to Service Fabric Explorer from the Application Server. +* Connect to Gateway. + +The certificate can be obtained from a Certificate Authority, such as [Let’s Encrypt](), and must meet the following requirements: + +* Subject field must be in one of the following formats, depending on the certificate type: + * Standard certificates must use the standard format (e.g. `CN=host.domain.com`). + * Wildcard certificates must use the wildcard format, pertaining to the domain of the server (e.g. `CN=*.domain.com`). +* Subject alternative names must include any additional host names that should be able to be used to access the API Gateway Service. +* Subject Alternative Names (SAN): At minimum the FQDN of the server. It can also include NetBIOS Name, IP address, localhost, 127.0.0.1. It must include any additional host names that should be able to be used to access the API Gateway Service. +* Certificate file must be in a .PFX file format, with a known password. +* Certificate file must contain the full chain of certificates. +* Certificate file must include the private key. +* Key Usage extension must have a value of `Digital Signature, Key Encipherment (a0)`. +* Enhanced Key Usage must include `Server Authentication` and `Client Authentication`. + +This file should be placed in a known location on the server. This location will be required when running the Application Server installation script. + +### TLS Requirements + +There is a set of non-compulsory security measures, recommended to be applied to the server, in order to prevent potential attacks that exploit known industry security vulnerabilities. This includes disabling all versions of SSL and TLS apart from TLS 1.2, and disabling all cipher suites apart from the following: + +* TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 +* TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 + +See [SSL Best Practices][] for a full list of the security changes which will be applied. The `Cortex.Innovation.Install.SSLBestPractices.ps1` script is provided during installation to apply these security changes to the server. + +### Encryption Requirements + +{{< section "/prerequisites/add-innovation-to-7.2/encryption-requirements.md">}} + +## Next Steps? + +1. [Install Application Server][] + +[Architecture]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.SingleServerWithoutHA.Architecture" >}} +[C++ Redistributable]: {{< url path="MSDownload.CPlusPlusRedistributable.2013" >}} +[CORTEX Service Portal]: {{< url path="Cortex.ServicePortal.MainDoc" >}} +[Create Full DB Backup]: {{< url path="MSDocs.SqlServer.CreateFullDbBackup" >}} +[IIS URL Rewrite]: {{< url path="IIS.Downloads.UrlRewrite-2_1" >}} +[Install Application Server]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.SingleServerWithoutHA.InstallApplicationServer" >}} +[Microsoft Server 2019]: {{< url path="MSEval.WindowsServer.2019" >}} +[Microsoft Server 2016]: {{< url path="MSEval.WindowsServer.2016" >}} +[NET Framework 472]: {{< url path="MSDotNet.Framework472.MainDoc" >}} +[Port Requirements]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.PortRequirements" >}} +[SSL Best Practices]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.SSLBestPractices" >}} +[Upgrading Gateway]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.SingleServerWithoutHA.ConfigureCortexGatewayInstallationScript" >}} +[Web Deploy]: {{< url path="MSDownload.WebDeploy" >}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/single-server-without-ha/try-it-out.md b/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/single-server-without-ha/try-it-out.md new file mode 100644 index 000000000..fe7368ff4 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/add-innovation-to-72/single-server-without-ha/try-it-out.md @@ -0,0 +1,66 @@ +--- +title: "Try it out" +linkTitle: "Try it out" +description: "Information about trying out {{% ctx %}} Innovation for the first time." +weight: 60 +--- + +# {{< param title >}} + +This guide describes how to try out a new Innovation installation to make sure it is working. Please ensure that the [Gateway Upgrade][] has been completed before taking these steps. + +## Test Debugging Flows + +Test the platform by creating a new flow and executing it using the following steps: + +1. Click on the `Dev` charm, then the `+` button and click `Group` to open a dialog. +1. Enter a name for the group, configure the `Permission Groups` and click `OK` to create the group. +1. Click on the group to open it (refresh the page if it does not appear). +1. Inside the group, click the `+` button again and click on `Activity` to open a dialog. If the menu item is not present, it means that the `FeatureFlags` in the `CortexGateway.SetParameters.xml` file was not set properly when installing Gateway. See [Troubleshooting][Troubleshooting No Innovation] for more information. +1. Enter a name for the flow, configure the `Permission Groups` and click `OK` to create the flow. +1. The flow should be displayed with a `Start Flow` block and `End Flow` block, if those blocks are not displayed see [Troubleshooting][Troubleshooting Flow No Blocks]. A list of block palettes should be displayed down the left hand side: + {{< figure src="/images/New Innovation Flow View.PNG" title="New Flow - Number of palettes may differ" >}} +1. Add a `Set Variable` block and connect it between the `Start Flow` and `End Flow` blocks. +1. Click the `Set Variable` block to open the Property Editor. +1. Set the `Value` property to the expression `DateTimeOffset.Now`. +1. Type `Result` into the `Variable` property and click `Create Result`. +1. In the Variables Grid, set `Is Output Variable?` to `true` for the new `Result` variable. +1. Add a breakpoint to the `End Flow` block and start the flow. An execution token should appear. + If the token does not appear, try refreshing the page. Failing that, see [Troubleshooting][Troubleshooting Flow Not Starting]. +1. Select the execution in the Executions Grid (bottom panel). +1. The `Result` variable displayed in the Variables Viewer (right panel) should show the current time. +1. Continue or stop the execution. +1. Commit the flow. + +## Test Publishing Production Flows + +1. Log in to Gateway with a user that has the `Admin` role. +1. Click on the `Admin` charm, then `Packages`. +1. Click `Add Package Definition`. Enter a package name and select the new flow to add to the package. Click `Save` to save the new package. +1. Click `Publish`. A success message should appear. If it doesn't it means that either one or more of the parameters prefixed with `Service Fabric` in the `CortexGateway.SetParameters.xml` file was not set properly when installing Gateway, or the Application Services aren't healthy. See [Troubleshooting][Troubleshooting No Publish] for more information. + +## Test Executing Production Flows + +1. Open an HTTP client, such as [Postman](https://www.postman.com/downloads/). Make a request with the following format: + | Property | Value | + |---------------|-------------------------------------------------------------------------------------| + | Action | POST | + | URL | https://{FQDN of server}:8722/api/default/default/flows/{Flow Name}/executions?packageName={Package Name}
e.g. https://server.domain.com:8722/api/default/default/flows/NewFlow/executions?packageName=NewPackage| + | Content Type | application/json | + | Body | {} | + | Authentication| Basic | + | Username | The value used for `ApiGatewayBasicAuthUsername` when installing Application Services | + | Password | The value used for `ApiGatewayBasicAuthPassword` when installing Application Services (Unencrypted) | + + {{% alert title="Note" %}} If you used self-signed certificates when installing the server you will need to disable SSL certificate validation in your HTTP client. {{% /alert %}} + +1. The request should return a JSON object with the output variables of the flow e.g. `{ "Output": "2022-03-09T07:35:16+0000" }`. +1. {{% ctx %}} Innovation has now been verified and is ready to use. + +[Troubleshooting During Installation]: {{< url path="Cortex.Reference.Troubleshooting.Installation.TroubleshootingDuringInstallation" >}} +[Troubleshooting Flow Not Starting]: {{< url path="Cortex.Reference.Troubleshooting.Installation.TroubleshootingFlowNotStarting" >}} +[Troubleshooting Flow No Blocks]: {{< url path="Cortex.Reference.Troubleshooting.Installation.TroubleshootingFlowNoBlocks" >}} +[Troubleshooting No Innovation]: {{< url path="Cortex.Reference.Troubleshooting.Installation.TroubleshootingNoInnovation" >}} +[Troubleshooting No Publish]: {{< url path="Cortex.Reference.Troubleshooting.Installation.TroubleshootingNoPublish" >}} +[Troubleshooting Root Certificate Error]: {{< url path="Cortex.Reference.Troubleshooting.Installation.TroubleshootingNoRootCertificate" >}} +[Gateway Upgrade]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.SingleServerWithoutHA.AddInnovationTo72WebApplicationServer" >}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/add-interaction-portal-to-innovation/_index.md b/content/en/docs/2024.11/getting-started/on-premise/add-interaction-portal-to-innovation/_index.md new file mode 100644 index 000000000..a6737e5a7 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/add-interaction-portal-to-innovation/_index.md @@ -0,0 +1,8 @@ +--- +title: "Add Interaction Portal to Innovation" +linkTitle: "Add Interaction Portal to Innovation" +description: "Information about installing the {{% ctx %}} Interaction Portal for Innovation." +weight: 50 +--- + +* {{< filelink src="/pdf/Cortex Interaction Portal Deployment Guide.pdf" name="CORTEX Interaction Portal Deployment Guide" >}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/_index.md b/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/_index.md new file mode 100644 index 000000000..df43175cc --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/_index.md @@ -0,0 +1,10 @@ +--- +title: "Grafana" +linkTitle: "Grafana" +description: "Information about adding a Grafana platform to Innovation, including details about components, supported architectures, prerequisites, installation and configuration instructions." +weight: 10 +--- + +{{% pageinfo %}} +For instructions on how to set up Grafana and Grafana Loki in the cloud see {{< ahref path="Cortex.GettingStarted.Cloud.AddObservabilityToInnovation.Grafana.MainDoc" title="Grafana Cloud" >}}. +{{% /pageinfo %}} \ No newline at end of file diff --git a/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/advanced/_index.md b/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/advanced/_index.md new file mode 100644 index 000000000..b28eb4b81 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/advanced/_index.md @@ -0,0 +1,6 @@ +--- +title: "Advanced Setup" +linkTitle: "Advanced Setup" +description: "Supporting information about installing and configuring a Grafana observability platform for {{% ctx %}} Innovation." +weight: 90 +--- \ No newline at end of file diff --git a/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/advanced/port-requirements.md b/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/advanced/port-requirements.md new file mode 100644 index 000000000..af97e8667 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/advanced/port-requirements.md @@ -0,0 +1,16 @@ +--- +title: "Port Requirements for the Web Application Server" +linkTitle: "Port Requirements for the Web Application Server" +description: "Information about the ports to be opened when installing the Grafana observability platform." +--- + +# {{% param title %}} + +All the required ports for the Web Application Server that forms part of the Grafana observability platform must be opened on any installed firewall. If any other firewall exists between the Application Servers and the Web Application Server, or Grafana users and the Web Application Server, it will be necessary to configure this selection of rules on it. These ports may be altered if there are any conflicts with other application requirements. + +## Grafana Observability Platform + +| Name | Description | Default Port(s) | Protocol | Direction | +|------|-------------|-----------------|----------|-----------| +| Grafana | The port used by the Grafana web application | 3000 | TCP | Inbound | +| Reverse proxy for Grafana Loki | The port used by IIS serving the role of a reverse proxy for Grafana Loki | 2100 | TCP | Inbound | diff --git a/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/advanced/self-signed-certificates.md b/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/advanced/self-signed-certificates.md new file mode 100644 index 000000000..61c6b388d --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/advanced/self-signed-certificates.md @@ -0,0 +1,239 @@ +--- +title: "Create Self-Signed Certificates" +linkTitle: "Create Self-Signed Certificates" +description: "Information about creating and installing self-signed certificates." +--- + +# {{% param title %}} + +Self-signed certificates should be generated using OpenSSL which is bundled in the {{% ctx %}} Web Application Server Installation Scripts: + +## Setup OpenSSL in PowerShell + +1. Open a Windows PowerShell (x64) window as administrator. +1. Make a directory in which to store the certificates by running the following command, changing the path as required: + + ```powershell + mkdir C:\Certificates + ``` + +1. Navigate PowerShell to inside the certificates folder created above, using the following command, modifying the path as necessary: + + ```powershell + cd "C:\Certificates" + ``` + +1. Temporarily add OpenSSL to the Path environment variable of your system by running the following command, modifying the path according to the location of `openssl.exe` in the installation scripts on the machine: + + ```powershell + $env:PATH += ";C:\Install\Cortex Innovation {{< version >}} - Web App Server Install Scripts\OpenSSL" + ``` + +## Generate the Root CA Certificate + +1. Create the root CA private key by running the following command: + + ```powershell + openssl genrsa -out cortexCA.key 4096 + ``` + +1. Generate the root CA certificate signed with the private key: + 1. Copy the following text into a text editor: + + ```shell + RANDFILE = .rnd + [ ca ] + default_ca = CA_default # The default ca section + [ CA_default ] + # Directory and file locations. + # SHA-1 is deprecated, so use SHA-2 instead. + default_md = sha256 + policy = policy_strict + [ policy_strict ] + # The root CA should only sign intermediate certificates that match. + # See the POLICY FORMAT section of `man ca`. + countryName = match + stateOrProvinceName = match + organizationName = match + organizationalUnitName = optional + commonName = supplied + emailAddress = optional + [ req ] + # Options for the `req` tool (`man req`). + default_bits = 2048 + distinguished_name = req_distinguished_name + string_mask = utf8only + + # SHA-1 is deprecated, so use SHA-2 instead. + default_md = sha256 + # Extension to add when the -x509 option is used. + x509_extensions = v3_ca + [ req_distinguished_name ] + countryName = Country Name (2 letter code) + countryName_min = 2 + countryName_max = 2 + stateOrProvinceName = State or Province Name (full name) + localityName = Locality Name (eg, city) + 0.organizationName = Organization Name (eg, company) + organizationalUnitName = Organizational Unit Name (eg, section) + commonName = Common Name (eg, your website's domain name) + commonName_max = 64 + emailAddress = Email Address + emailAddress_max = 40 + # Optionally, specify some defaults. + countryName_default = GB + stateOrProvinceName_default = Hampshire + localityName_default = Southampton + 0.organizationName_default = Cortex Ltd + organizationalUnitName_default = We Are CORTEX + commonName_default = Cortex CA + emailAddress_default = Hello@WeAreCORTEX.com + [ v3_ca ] + # Extensions for a typical CA (`man x509v3_config`). + subjectKeyIdentifier = hash + authorityKeyIdentifier = keyid:always,issuer + basicConstraints = critical, CA:true + keyUsage = critical, digitalSignature, cRLSign, keyCertSign + ``` + + 1. Save the file as `ca.cnf` in the directory created for the certificates above. + 1. In the PowerShell window, run the following command: + + ```powershell + openssl req -sha256 -x509 -new -nodes -key cortexCA.key -days 3650 -out cortexCA.pem -config ca.cnf + ``` + + 1. Press `Enter` for all parameters except the Common Name. For this enter `Cortex CA`. + +1. Package your public and private key in a pkcs12 encrypted file (to install with certmgr on windows) by running the following command: + + ```powershell + openssl pkcs12 -export -inkey cortexCA.key -in cortexCA.pem -out cortexCA.pfx + ``` + +1. Enter a memorable string as the Export Password when asked, this will be needed when adding the certificate to certmgr. + +## Import the Root CA Certificate + +1. Double click on the `cortexCA.pfx` file in the certificates folder to import the certificate into the Windows Certificate Store. +1. Select `Local Machine` then click `Next`. +1. Click `Next`. +1. Enter the Export Password which the certificate was generated with then click `Next`. +1. Select `Place all certificates in the following store`. +1. Click `Browse…`. +1. Select `Trusted Root Certification Authorities`, click `OK` then click `Next`. +1. Click `Finish`. + +## Generate the Certificate + +1. Create a private key for the SSL cert by running the following command: + + ```powershell + openssl genrsa -out cortex.key 2048 + ``` + +1. Generate the SSL certificate request: + 1. Copy the following text into a text editor: + + ```shell + RANDFILE = .rnd + [ ca ] + default_ca = CA_default # The default ca section + [ CA_default ] + # SHA-1 is deprecated, so use SHA-2 instead. + default_md = sha256 + policy = policy_loose + [ policy_loose ] + # Allow the intermediate CA to sign a more diverse range of certificates. + # See the POLICY FORMAT section of the `ca` man page. + countryName = optional + stateOrProvinceName = optional + localityName = optional + organizationName = optional + organizationalUnitName = optional + commonName = supplied + emailAddress = optional + [ req ] + # Options for the `req` tool (`man req`). + default_bits = 2048 + distinguished_name = req_distinguished_name + string_mask = utf8only + # SHA-1 is deprecated, so use SHA-2 instead. + default_md = sha256 + # Extension to add when the -x509 option is used. + x509_extensions = v3_req + req_extensions = v3_req + [ req_distinguished_name ] + countryName = Country Name (2 letter code) + countryName_min = 2 + countryName_max = 2 + stateOrProvinceName = State or Province Name (full name) + localityName = Locality Name (eg, city) + 0.organizationName = Organization Name (eg, company) + organizationalUnitName = Organizational Unit Name (eg, section) + commonName = Common Name (eg, your website's domain name) + commonName_max = 64 + emailAddress = Email Address + emailAddress_max = 40 + # Optionally, specify some defaults. + countryName_default = GB + stateOrProvinceName_default = Hampshire + localityName_default = Southampton + 0.organizationName_default = Cortex Ltd + organizationalUnitName_default = We Are CORTEX + commonName_default = CortexServerCertificate + emailAddress_default = Hello@WeAreCORTEX.com + [ v3_req ] + basicConstraints = CA:FALSE + keyUsage = nonRepudiation, digitalSignature, keyEncipherment + subjectAltName = @alt_names + [ alt_names ] + # Specify all DNS and/or IP addresses that clients can use to access the secured resource. + DNS.1 = MACHINE-NAME + DNS.2 = FULLY QUALIFIED MACHINE NAME / WILDCARD DOMAIN NAME + DNS.3 = localhost + IP.1 = IP ADDRESS + IP.2 = 127.0.0.1 + ``` + + 1. Modify the section `[alt_names]` to include all the required DNS names and IP addresses that clients can use to access the secured resource. + Each DNS name or IP address entry must be suffixed with `.N` where `N` is the unique index of the DNS name or IP address entry; see below for examples: + | Resource URL | Configuration to add | + |---------------------------------------|-----------------------------------| + | `https://wearecortex.com/gateway` | `DNS.1 = wearecortex.com` | + | `https://internal.wearecortex.com/gateway` | `DNS.2 = internal.wearecortex.com`
`or`
`DNS.2 = *.wearecortex.com` | + | `https://10.0.0.0/gateway` | `IP.1 = 10.0.0.0` | + | `https://192.168.1.100/gateway` | `IP.2 = 192.168.1.100` | + + 1. Save the file as `san.cnf` in the directory created for the certificates above. + 1. In the PowerShell window, run the following command: + + ```powershell + openssl req -new -sha256 -key cortex.key -out cortex.req -extensions v3_req -config san.cnf + ``` + + 1. Press `Enter` for everything. The Common Name must stay as `CortexServerCertificate`. + 1. Sign the request with a previously generated root CA by running the following command: + + ```powershell + openssl x509 -req -sha256 -in cortex.req -CA cortexCA.pem -CAkey cortexCA.key -CAcreateserial -out cortex.pem -days 3650 -extensions v3_req -extfile san.cnf + ``` + + 1. Package your public and private key in a pkcs12 encrypted file (to install with certmgr on windows) by running the following command: + + ```powershell + openssl pkcs12 -export -inkey cortex.key -in cortex.pem -out cortex.pfx + ``` + + 1. Enter a memorable string as the Export Password when asked, this will be needed when adding the certificate to certmgr. + +## Import the Certificate + +1. Double click on the `cortex.pfx` file in the certificates folder to get the certificate imported to the Windows Certificate Store. +1. Select `Local Machine` then click `Next`. +1. Click `Next`. +1. Enter the Export Password which the certificate was generated with then click `Next`. +1. Select `Place all certificates in the following store`. +1. Click `Browse…`. +1. Select `Personal`, click `OK` then click `Next`. +1. Click `Finish`. diff --git a/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/advanced/ssl-best-practices.md b/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/advanced/ssl-best-practices.md new file mode 100644 index 000000000..eb94f280e --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/advanced/ssl-best-practices.md @@ -0,0 +1,83 @@ +--- +title: "SSL Best Practices" +linkTitle: "SSL Best Practices" +description: "Information about the recommended security settings for the Grafana observability platform servers." +--- + +# {{% param title %}} + +A collection of registry settings can be applied during installation to guarantee your server is only using the recommended encryption algorithms and TLS protocols: + +| Type | Name | Enabled | +| --------------------- | ----------------------------------------| ----------- | +| Ciphers | AES 128/128 | ✓ | +| | AES 256/256 | ✓ | +| | Triple DES 168 | ✓ | +| | DES 56/56 | ✕ | +| | NULL | ✕ | +| | RC2 128/128 | ✕ | +| | RC2 40/128 | ✕ | +| | RC2 56/128 | ✕ | +| | RC4 128/128 | ✕ | +| | RC4 40/128 | ✕ | +| | RC4 56/128 | ✕ | +| | RC4 64/128 | ✕ | +| | | | +| Hashes | MD5 | ✕ | +| | SHA | ✓ | +| | SHA256 | ✓ | +| | SHA384 | ✓ | +| | SHA512 | ✓ | +| | | | +| KeyExchangeAlgorithms | Diffie-Hellman | ✓ | +| | ECDH | ✓ | +| | PKCS | ✓ | +| | | | +| Protocols | Multi-Protocol Unified Hello | ✕ | +| | PCT 1.0 | ✕ | +| | SSL 2.0 | ✕ | +| | SSL 3.0 | ✕ | +| | TLS 1.0 | ✕ | +| | TLS 1.1 | ✕ | +| | TLS 1.2 | ✓ | +| | | | +| Cipher Suites | TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 | ✓ | +| | TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 | ✓ | +| | TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 | ✕ | +| | TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA25 | ✕ | +| | TLS_DHE_RSA_WITH_AES_256_GCM_SHA384 | ✕ | +| | TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 | ✕ | +| | TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384 | ✕ | +| | TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 | ✕ | +| | TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 | ✕ | +| | TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 | ✕ | +| | TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA | ✕ | +| | TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA | ✕ | +| | TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA | ✕ | +| | TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA | ✕ | +| | TLS_DHE_RSA_WITH_AES_256_CBC_SHA | ✕ | +| | TLS_DHE_RSA_WITH_AES_128_CBC_SHA | ✕ | +| | TLS_RSA_WITH_AES_256_GCM_SHA384 | ✕ | +| | TLS_RSA_WITH_AES_128_GCM_SHA256 | ✕ | +| | TLS_RSA_WITH_AES_256_CBC_SHA256 | ✕ | +| | TLS_RSA_WITH_AES_128_CBC_SHA256 | ✕ | +| | TLS_RSA_WITH_AES_256_CBC_SHA | ✕ | +| | TLS_RSA_WITH_AES_128_CBC_SHA | ✕ | +| | TLS_RSA_WITH_3DES_EDE_CBC_SHA | ✕ | +| | TLS_DHE_DSS_WITH_AES_256_CBC_SHA256 | ✕ | +| | TLS_DHE_DSS_WITH_AES_128_CBC_SHA256 | ✕ | +| | TLS_DHE_DSS_WITH_AES_256_CBC_SHA | ✕ | +| | TLS_DHE_DSS_WITH_AES_128_CBC_SHA | ✕ | +| | TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA | ✕ | +| | TLS_RSA_WITH_RC4_128_SHA | ✕ | +| | TLS_RSA_WITH_RC4_128_MD5 | ✕ | +| | TLS_RSA_WITH_NULL_SHA256 | ✕ | +| | TLS_RSA_WITH_NULL_SHA | ✕ | +| | TLS_PSK_WITH_AES_256_GCM_SHA384 | ✕ | +| | TLS_PSK_WITH_AES_128_GCM_SHA256 | ✕ | +| | TLS_PSK_WITH_AES_256_CBC_SHA384 | ✕ | +| | TLS_PSK_WITH_AES_128_CBC_SHA256 | ✕ | +| | TLS_PSK_WITH_NULL_SHA384 | ✕ | +| | TLS_PSK_WITH_NULL_SHA256 | ✕ | + +{{% alert type="warning" title="Warning" %}}Disabling specific TLS versions or specific Cipher Suites can have impact on other applications as well as their communication capabilities with third party systems and services. All parties communicating together must support a shared protocol version and cipher suite, otherwise they will not be able to establish a secure communication link between each other.{{% /alert %}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/architecture.md b/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/architecture.md new file mode 100644 index 000000000..68470e7d1 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/architecture.md @@ -0,0 +1,40 @@ +--- +title: "Architecture" +linkTitle: "Architecture" +description: "Information about the recommended architecture for a Grafana platform installation." +weight: 10 +--- + +# {{% param title %}} + +## Components + +| Component | Purpose | Required/Optional |Server Role | +|-----------|---------|----------|------------| +| [Grafana][] | Web application that provides querying and visualisation of data in the form of dashboards. | Required | Web Application Server | +| [Grafana Loki][] | Log aggregation system designed to store and query logs from applications and infrastructure. | Required | Web Application Server | +| [Microsoft Internet Information Services (IIS)][IIS] | Web server used as a reverse proxy for Grafana Loki. | Required | Web Application Server | +| [Promtail][] | An agent which ships the contents of local logs to a Grafana Loki instance. It should be deployed to every machine that has a Microsoft Service Fabric node used by Innovation. | Required | Application Server | + +## Recommended Architecture + +{{% alert title="Note" %}} +For production systems it is recommended to {{< ahref path="Cortex.GettingStarted.OnPremise.AddObservabilityToInnovation.Grafana.InstallOnNewHardware" title="install on new hardware" >}}. However, if additional hardware is not available, you can {{< ahref path="Cortex.GettingStarted.OnPremise.AddObservabilityToInnovation.Grafana.InstallOnExistingHardware" title="install on existing hardware" >}}. +{{% /alert %}} + +The following architecture requires 1 + 1..n servers: + +* 1 x Web Application Server which contains Grafana, Grafana Loki and Microsoft IIS. +* 1..n x Application Servers. + +{{< figure src="/images/editable/Grafana Platform Architecture Diagram - On-Premise.png" >}} + +## Next Steps? + +1. [Prerequisites][] + +[Prerequisites]: {{< url path="Cortex.GettingStarted.OnPremise.AddObservabilityToInnovation.Grafana.Prerequisites" >}} +[Grafana]: {{< url path="Grafana.Products.Grafana.MainDoc" >}} +[Grafana Loki]: {{< url path="Grafana.Products.Loki.MainDoc" >}} +[Promtail]: {{< url path="Grafana.Products.Loki.Promtail.MainDoc" >}} +[IIS]: {{< url path="IIS.MainDoc" >}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/install-grafana/_index.md b/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/install-grafana/_index.md new file mode 100644 index 000000000..61d057022 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/install-grafana/_index.md @@ -0,0 +1,6 @@ +--- +title: "Install Grafana" +linkTitle: "Install Grafana" +description: "Information about installing and configuring Grafana on the Web Application Server." +weight: 30 +--- diff --git a/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/install-grafana/configure-grafana.md b/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/install-grafana/configure-grafana.md new file mode 100644 index 000000000..e5b54c9ba --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/install-grafana/configure-grafana.md @@ -0,0 +1,67 @@ +--- +title: "Configure Grafana" +linkTitle: "Configure Grafana" +description: "Information about configuring Grafana on the Web Application Server." +weight: 20 +--- + +# {{% param title %}} + +This guide describes how to configure Grafana on the Web Application Server. + +## Log-in and Change the Password + +It is required that on the first log in into Grafana, a new password for the admin user is set up. +The password should be different from the default one. + +1. On the Web Application Server open a web browser. +1. Browse to `http://localhost:3000/`. +1. On the login page, enter `admin` for the username and password. +1. Click Log in. +1. Set a new password for the admin user when prompted to do so. + +## Configure HTTPS + +By default Grafana allows access over the unsecure HTTP protocol. This needs to be modified to allow access only over the secure HTTPS protocol. + +1. Locate `sample.ini` file in the `grafana\conf` subfolder in the location Grafana was installed to; by default `C:\Program Files\GrafanaLabs\grafana\conf\sample.ini`. +1. Copy `sample.ini` and paste it in the same location renaming it to `custom.ini`. +1. Run a text editor in administrator mode. +1. In the text editor open the `custom.ini` Grafana configuration file. +1. In the `server` section uncomment the `protocol` option and set it to HTTPS, e.g.: + + ```yaml + # Protocol (http, https, h2, socket) + protocol = https + ``` + +1. In the `server` section uncomment the `cert_file` and `cert_key` options and set them to the certificate `.pem` and `.key` filenames and path saved to during the [Certificate Requirements][] step e.g.: + + ```yaml + # https certs & key file + cert_file = C:\certificates\certificate.pem + cert_key = C:\certificates\certificate.key + ``` + +1. Save the file. +1. Open the Services app. +1. Restart the Grafana service. + +## Verify That HTTPS Works + +It is important to verify that Grafana is only accessible through HTTPS. + +1. On the Web Application Server open a web browser. +1. Browse to `http://localhost:3000/`. +1. Browser should not be able to make a connection to Grafana and a default error page should be displayed. +1. Browse to `https://localhost:3000/`. +1. On the login page, enter `admin` as the username and the corresponding password. +1. Click Log in. +1. You should have successfully logged into Grafana. + +## Next Steps? + +1. [Install Grafana Loki][] + +[Install Grafana Loki]: {{< url path="Cortex.GettingStarted.OnPremise.AddObservabilityToInnovation.Grafana.InstallLoki.MainDoc" >}} +[Certificate Requirements]: {{< url path="Cortex.GettingStarted.OnPremise.AddObservabilityToInnovation.Grafana.WebAppCertificateRequirements" >}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/install-grafana/install-grafana.md b/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/install-grafana/install-grafana.md new file mode 100644 index 000000000..ab29b8dac --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/install-grafana/install-grafana.md @@ -0,0 +1,24 @@ +--- +title: "Install Grafana" +linkTitle: "Install Grafana" +description: "Information about installing Grafana on the Web Application Server." +weight: 10 +--- + +# {{% param title %}} + +This guide describes how to install Grafana on the Web Application Server. Please ensure that the [Prerequisites][] have been completed before starting this installation. + +## Install Grafana + +1. Download the [Grafana 10.4.1][] Windows installer. +1. Run the installer and install Grafana to a suitable location. + +## Next Steps? + +1. [Configure Grafana][] + +[Configure Grafana]: {{< url path="Cortex.GettingStarted.OnPremise.AddObservabilityToInnovation.Grafana.InstallGrafana.ConfigureGrafana" >}} +[Grafana 10.4.1]: {{< url path="Grafana.SelfManaged.Downloads.GrafanaWebApp.10.4.1.Windows" >}} +[Prerequisites]: {{< url path="Cortex.GettingStarted.OnPremise.AddObservabilityToInnovation.Grafana.Prerequisites" >}} +[Software Requirements]: {{< url path="Cortex.GettingStarted.OnPremise.AddObservabilityToInnovation.Grafana.SoftwareRequirements" >}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/install-loki/_index.md b/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/install-loki/_index.md new file mode 100644 index 000000000..b4bb93257 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/install-loki/_index.md @@ -0,0 +1,6 @@ +--- +title: "Install Grafana Loki" +linkTitle: "Install Grafana Loki" +description: "Information about installing and configuring Grafana Loki on the Web Application Server." +weight: 40 +--- diff --git a/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/install-loki/configure-loki.md b/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/install-loki/configure-loki.md new file mode 100644 index 000000000..3db8584be --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/install-loki/configure-loki.md @@ -0,0 +1,132 @@ +--- +title: "Configure Loki" +linkTitle: "Configure Loki" +description: "Information about configuring Grafana Loki on the Web Application Server." +weight: 20 +--- + +# {{% param title %}} + +This guide describes how to configure Grafana Loki on the Web Application Server. + +{{% alert type="note" title="Note" %}}For security reasons, Grafana Loki should be run behind an encrypted and authenticated reverse proxy as it does not provide these features by itself.{{% /alert %}} + +## Install Certificate + +IIS requires the X.509 SSL certificate, obtained in the [prerequisites][], to be installed on the Web Application Server. + +You can import the certificate by right clicking the certificate file, selecting `Install Certificate` and following the wizard. When prompted, ensure you import it into the `Local Machine` store and not `Current User`. + +To verify the certificate is imported: + +1. Click the Windows button (`Start`) +2. Type `certlm.msc` and press `Enter` to open the Certificate Manager dialog +3. Expand `Personal` and select `Certificates` +4. You should see your certificate in this store + +## Setup Reverse Proxy with IIS + +All of the steps must be carried out on the Web Application Server. + +### Install IIS Basic Authentication + +1. Run *Server Manager*. +1. Expand the *Manage* menu and select *Add Roles and Features*. +1. In the left-hand menu, select *Server Selection*. +1. Select the name of the Web Application Server, click *Next*. +1. On the *Server Roles* page, in the *Roles* tree, expand *Web Server (IIS)* --> *Web Server* --> *Security*. +1. Select *Basic Authentication*, click *Next*. +1. Click *Next* to get to the *Confirm installation selections* page. +1. Click *Install*. +1. Click *Close* on the *Results* page. + +### Install IIS URL Rewrite Module + +1. Download the [URL Rewrite module 2.1][] +1. Run the downloaded installer. +1. When prompted by the Web Platform Installer, click *Install*. +1. On the *Prerequisites* page click *I Accept* to agree to the license terms for the module. +1. Once the install has completed, click *Finish*. +1. Click *Exit* to close the Web Platform Installer. + +### Install Application Request Routing + +1. Download [Application Request Routing 3.0][] +1. Run the downloaded installer. +1. When prompted by the Web Platform Installer, click *Install*. +1. On the *Prerequisites* page click *I Accept* to agree to the license terms for the module. +1. Once the install has completed, click *Finish*. +1. Click *Exit* to close the Web Platform Installer. + +### Set Up Reverse Proxy + +To set up a reverse proxy, carry out the following configuration. + +#### Add a New Website + +1. Run IIS Manager. +1. In the *Connection* pane, expand the server. +1. Right-click on *Sites* and select *Add Website...* from the menu. +1. In the *Add Website* window: + - Provide the site name, e.g. `Grafana Loki`. + - Set the *Physical path* to the location where the site will be stored and ensure that the path exists, e.g. `C:\inetpub\wwwroot\Grafana Loki`. + - For *Binding* set: + - *Type*: `https` + - *IP address*: `All unassigned` + - *Port*: `2100` + - *Host name*: The fully qualified domain name of the Web Application Server. This must match one of the Subject Alternative Names in the SSL certificate selected in the next step. + - *SSL certificate*: Select the certificate created as part of the [Certificate Requirements][prerequisites] instructions. + - Click *OK* to add the website. + +#### Enable Basic Authentication + +1. In the *Connection* pane, browse to *Sites*. +1. Select the newly created website. +1. Double-click on the *Authentication* icon. +1. Disable *Anonymous Authentication*. +1. Enable *Basic Authentication*. + +## Configure URL Rewrite Rule + +1. In the *Connection* pane, browse to *Sites*. +1. Select the newly created website. +1. Double-click on the *URL Rewrite* icon. +1. In the *Actions* pane, click *Add Rule(s)...*. +1. Select *Reverse Proxy* from the *Inbound and Outbound Rules* section. +1. Click *OK*. +1. If prompted to *Add Reverse Proxy Rules*, click *OK* to enable proxy functionality. +1. In the *Inbound Rules* section enter `localhost:3100` as the server name. +1. Ensure that *Enable SSL Offloading* is checked. +1. Click *OK*. + +#### Restart the Website + +1. In the *Connection* pane, browse to *Sites*. +1. Select the newly created website. +1. In the *Manage Website* pane, click *Restart*. + +#### Create Loki User + +1. Run Windows PowerShell as Administrator. +1. Execute the following command to create a new local user on the Web Application Server: + + ```Powershell + New-LocalUser "" -Password (ConvertTo-SecureString "" -AsPlainText -force) -FullName "" -Description "" –PasswordNeverExpires + ``` + + | Parameter | Description | + |------|-------------| + | username | The username of the user to be created. | + | password | The password for the user account. | + | name | The full name for the user account. | + | description | The description of the user account. | + +## Next Steps? + +1. [Install Promtail][] + +[Application Request Routing 3.0]: {{< url path="IIS.Downloads.ApplicationRequestRouting-3_0" >}} +[Install Promtail]: {{< url path="Cortex.GettingStarted.OnPremise.AddObservabilityToInnovation.Grafana.InstallPromtail.MainDoc" >}} +[prerequisites]: {{< url path="Cortex.GettingStarted.OnPremise.AddObservabilityToInnovation.Grafana.WebAppCertificateRequirements" >}} +[Software Requirements]: {{< url path="Cortex.GettingStarted.OnPremise.AddObservabilityToInnovation.Grafana.SoftwareRequirements" >}} +[URL Rewrite module 2.1]: {{< url path="IIS.Downloads.UrlRewrite-2_1" >}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/install-loki/install-loki.md b/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/install-loki/install-loki.md new file mode 100644 index 000000000..e1d70e6fd --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/install-loki/install-loki.md @@ -0,0 +1,32 @@ +--- +title: "Install Loki" +linkTitle: "Install Loki" +description: "Information about installing Grafana Loki on the Web Application Server." +weight: 10 +--- + +# {{% param title %}} + +This guide describes how to install Grafana Loki on the Web Application Server. Please ensure that the [Prerequisites][] have been completed before starting this installation. + +## Install Grafana Loki + +1. Download [Grafana Loki 3.0.0][] archive. +1. Extract content of the downloaded archive to a suitable location, e.g. `C:\Program Data\Cortex\Observability\Loki`. +1. Download the [Grafana Loki Install.zip][] archive and extract its contents alongside the previously extracted Grafana Loki `loki-windows-amd64.exe`. +This archive contains the `loki-local-config.yaml` configuration file, [NSSM][] (the Non-Sucking Service Manager program) and PowerShell scripts to help manage Grafana Loki as a Windows service. +1. Run Windows PowerShell as Administrator. +1. Change the location to where all the files were extracted to in step 2, e.g. `cd "C:\Program Data\Cortex\Observability\Loki"`. +1. Execute the `.\Install-Loki.ps1` command to install the downloaded Grafana Loki `loki-windows-amd64.exe` as a service. +1. Execute the `.\Start-Loki.ps1` command to start the Grafana Loki service. + +## Next Steps? + +1. [Configure Loki][] + +[Configure Loki]: {{< url path="Cortex.GettingStarted.OnPremise.AddObservabilityToInnovation.Grafana.InstallLoki.ConfigureLoki" >}} +[Grafana Loki 3.0.0]: {{< url path="Grafana.SelfManaged.Downloads.GrafanaLoki.3.0.0.GrafanaLokiInstallZip" >}} +[Grafana Loki Install.zip]: {{< url path="GitHub.Cortex.Observability.3.0.0.GrafanaLokiInstallZip" >}} +[NSSM]: {{< url path="NSSM.MainDoc" >}} +[Prerequisites]: {{< url path="Cortex.GettingStarted.OnPremise.AddObservabilityToInnovation.Grafana.Prerequisites" >}} +[Software Requirements]: {{< url path="Cortex.GettingStarted.OnPremise.AddObservabilityToInnovation.Grafana.SoftwareRequirements" >}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/install-promtail/_index.md b/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/install-promtail/_index.md new file mode 100644 index 000000000..6f53df537 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/install-promtail/_index.md @@ -0,0 +1,6 @@ +--- +title: "Install Promtail" +linkTitle: "Install Promtail" +description: "Information about installing and configuring Promtail on the Application Server(s)." +weight: 50 +--- diff --git a/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/install-promtail/configure-promtail.md b/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/install-promtail/configure-promtail.md new file mode 100644 index 000000000..3e9433911 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/install-promtail/configure-promtail.md @@ -0,0 +1,80 @@ +--- +title: "Configure Promtail" +linkTitle: "Configure Promtail" +description: "Information about configuring Promtail on the Application Server(s)." +weight: 20 +--- + +# {{% param title %}} + +This guide describes how to configure Promtail on the Application Server(s). + +{{% alert type="note" title="Note" %}}These steps must be performed for every Promtail installation in the cluster.{{% /alert %}} + +## Install Certificate + +If a self-signed certificate was obtained in the [prerequisites][], the CA certificate used to create this certificate must be imported on each Application Server. Otherwise, Promtail will not be able to establish communication with Grafana Loki. + +To import the CA certificate: + +1. Copy the `cortexCA.pfx` CA certificate created during the [root CA certificate generation][Generate The Root CA Certificate] steps into a suitable location on the Application Server. +1. Double click on the `cortexCA.pfx` file to import the certificate into the Windows Certificate Store. +1. Select `Local Machine` then click `Next`. +1. Click `Next`. +1. Enter the Export Password which the certificate was generated with then click `Next`. +1. Select `Place all certificates in the following store`. +1. Click `Browse…`. +1. Select `Trusted Root Certification Authorities`, click `OK` then click `Next`. +1. Click `Finish`. + +## Configure Promtail + +### Set Client URL for Grafana Loki + +1. Open the `promtail-local-config.yaml` configuration file, which is located in the folder alongside the `promtail-windows-amd64.exe` file. +1. Set the Grafana Loki `URL` in the `clients` section. + + The following template has been provided for convenience: + `https://:@:/loki/api/v1/push` +| Element | Description | +|------|-------------| +| username | The username of the user created during [Create Loki User][] steps. | +| password | The password which was set for the user during [Create Loki User][] steps. | +| loki host address | The host address of the machine where the Grafana Loki reverse proxy was configured during [Add a New Website][] steps . This must match the configured host name. | +| loki reverse proxy port | The port of the Grafana Loki reverse proxy configured during [Add a New Website][] steps. Usually 2100. | + + A correct URL should be similar to `https://username:password@hostaddress:2100/loki/api/v1/push`. +1. Save the file. + +### Set the positions.yaml File Path + +1. Open the `promtail-local-config.yaml` configuration file, which is located in the folder alongside the `promtail-windows-amd64.exe` file. +1. Set the `filename` in the `positions` section to the location where you want the `positions.yaml` file to be created on Promtail startup, e.g. `C:/Program Data/Cortex/Observability/Promtail/Positions.yaml`. +1. Create all the folders of the path specified in the previous step. +1. Save the file. + +{{% alert title="Note" %}} +If the specified path to the folder for the `positions.yaml` file doesn't exists, the file will not get created on Promtail startup. +{{% /alert %}} + +### Set the Path to the API Gateway Service Log Files + +1. Open the `promtail-local-config.yaml` configuration file, which is located in the folder alongside the `promtail-windows-amd64.exe` file. +1. Set the `__path__` in the `static_configs` > `targets` > `labels` section to the path of the `Logs` folder specified in the `appSettings.json` file during installation of the API Gateway Service, e.g. `"C:/ProgramData/Cortex/API Gateway Service/Logs/**/ServiceFabricHttpEventLog-[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]{_[0-9][0-9][0-9],}.json"`. +1. Save the file. + +### Start Promtail + +1. Run Windows PowerShell as Administrator. +1. Change the location to the folder where the `promtail-windows-amd64.exe` file is located. +1. Execute the `.\Start-Promtail.ps1` command to start the Promtail Windows service. + +## Next Steps? + +1. [Setup Grafana][] + +[Add a New Website]: {{< url path="Cortex.GettingStarted.OnPremise.AddObservabilityToInnovation.Grafana.InstallLoki.AddANewWebsite" >}} +[Create Loki User]: {{< url path="Cortex.GettingStarted.OnPremise.AddObservabilityToInnovation.Grafana.InstallLoki.CreateLokiUser" >}} +[Generate The Root CA Certificate]: {{< url path="Cortex.GettingStarted.OnPremise.AddObservabilityToInnovation.Grafana.Advanced.GenerateTheRootCaCertificate" >}} +[prerequisites]: {{< url path="Cortex.GettingStarted.OnPremise.AddObservabilityToInnovation.Grafana.WebAppCertificateRequirements" >}} +[Setup Grafana]: {{< url path="Cortex.GettingStarted.OnPremise.AddObservabilityToInnovation.Grafana.SetupGrafana" >}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/install-promtail/install-promtail.md b/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/install-promtail/install-promtail.md new file mode 100644 index 000000000..9d257e4ad --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/install-promtail/install-promtail.md @@ -0,0 +1,31 @@ +--- +title: "Install Promtail" +linkTitle: "Install Promtail" +description: "Information about installing Promtail on the Application Server(s)." +weight: 10 +--- + +# {{% param title %}} + +This guide describes how to install Promtail on the Application Server(s). Please ensure that the [Prerequisites][] have been completed before starting this installation. + +## Install Promtail + +1. Download [Promtail 3.0.0][] archive. +1. Extract content of the downloaded archive to a suitable location, e.g. `C:\Program Data\Cortex\Observability\Promtail`. +1. Download the [Promtail Install.zip][] archive and extract its contents alongside the previously extracted Promtail `promtail-windows-amd64.exe`. +This archive contains the `promtail-local-config.yaml` configuration file, [NSSM][] (the Non-Sucking Service Manager program) and PowerShell scripts to help manage Promtail as a Windows service. +1. Run Windows PowerShell as Administrator +1. Change the location to where all the files were extracted to in step 2, e.g. `cd "C:\Program Data\Cortex\Observability\Promtail"`. +1. Execute the `.\Install-Promtail.ps1` command to install the downloaded `promtail-windows-amd64.exe` as a service. + +## Next Steps? + +1. [Configure Promtail][] + +[Configure Promtail]: {{< url path="Cortex.GettingStarted.OnPremise.AddObservabilityToInnovation.Grafana.InstallPromtail.ConfigurePromtail" >}} +[NSSM]: {{< url path="NSSM.MainDoc" >}} +[Prerequisites]: {{< url path="Cortex.GettingStarted.OnPremise.AddObservabilityToInnovation.Grafana.Prerequisites" >}} +[Promtail 3.0.0]: {{< url path="Grafana.SelfManaged.Downloads.Promtail.3.0.0.PromtailInstallZip" >}} +[Promtail Install.zip]: {{< url path="GitHub.Cortex.Observability.3.0.0.PromtailInstallZip" >}} +[Software Requirements]: {{< url path="Cortex.GettingStarted.OnPremise.AddObservabilityToInnovation.Grafana.SoftwareRequirements" >}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/prerequisites.md b/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/prerequisites.md new file mode 100644 index 000000000..9900a21d1 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/prerequisites.md @@ -0,0 +1,170 @@ +--- +title: "Prerequisites" +linkTitle: "Prerequisites" +description: "Information about the prerequisites required on each server type for installation." +weight: 20 +--- +# {{% param title %}} + +The prerequisites required for each server role (as described in [Architecture][]) are laid out in this guide. These must be considered before undertaking the installation. + +## Hardware Requirements + +{{% alert title="Note" %}} +For production systems it is recommended to {{< ahref path="Cortex.GettingStarted.OnPremise.AddObservabilityToInnovation.Grafana.InstallOnNewHardware" title="install on new hardware" >}}. However, if additional hardware is not available, you can {{< ahref path="Cortex.GettingStarted.OnPremise.AddObservabilityToInnovation.Grafana.InstallOnExistingHardware" title="install on existing hardware" >}}. +{{% /alert %}} + +### Option 1: Install on New Hardware + +The following hardware requirements are recommended for production systems: + +| Server Role | Servers Required | CPU Cores (> 2GHz) | RAM (GB) | Disk (GB) | +|------------------|-----------------------|-----------------------------------|---------------|----------------------| +| Web Application Server | 1 | 4+ *Recommended*
2 *Minimum* | 16+ *Recommended*
8 *Minimum* | 50+ (SSD) *Recommended*
40 (HDD) *Minimum*
5+ free on installation drive | + +### Option 2: Install on Existing Hardware + +If additional hardware is not available, it is possible to install to the same Web Application server that hosts {{% ctx %}} Gateway. + +The table below specifies additional resources that are recommended to be added to the existing Web Application server: + +| Server Role | Additional CPU Cores (> 2GHz) | Additional RAM (GB) | Additional Disk (GB) | +|------------------|-----------------------------------|---------------|----------------------| +| Web Application Server
(Shared with {{% ctx %}} Gateway) | 4+ *Recommended*
2 *Minimum* | 12+ *Recommended*
6 *Minimum* | 10+ *Recommended*
5 *Minimum*| + +{{% alert title="Note" %}} +The application servers (as described in {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.Architecture" title="Architecture" >}}) to which Promtail will be added have already been installed as part of the Innovation install process and do not require any hardware modifications for the observability platform installation. +{{% /alert %}} + +## Software Requirements + +| Server Role | Windows Server[^1] | IIS[^2] | Other Software | +|------------------|-------------------------|---------|----------| +| Web Application Server | [2022 (x64)][] *Recommended*
[2019 (x64)][] | 10.0.20348[^3]
10.0.17763[^4]
IIS Basic Authentication[^5]
[URL Rewrite module 2.1][] | [Grafana 10.4.1][] *Enterprise Edition*
[Grafana Loki 3.0.0][]| +| Application Server | [2022 (x64)][] *Recommended*
[2019 (x64)][] | | [Promtail 3.0.0][]| + +[^1]: Windows Server Standard and Datacenter editions are supported. Filesystem **must be NTFS** and networking **must use IPv4**. Linux is not supported, but may be in the future. +[^2]: IIS is supported; other web servers, including IIS Express are not supported. +[^3]: Ships as a windows role within Windows Server 2022. +[^4]: Ships as a windows role within Windows Server 2019. +[^5]: Installed during the [Install IIS Basic Authentication][] configuration steps. + +## Domain Requirements + +All servers must be on the same domain and cannot be domain controllers. + +## Web Browser Requirements + +Grafana supports the latest versions of the following browsers: + +* Chrome/Chromium +* Firefox +* Safari +* Microsoft Edge + +{{% alert title="Note" %}} +Always enable JavaScript in your browser. Running Grafana without JavaScript enabled in the browser is not supported. +{{% / alert %}} + +## Additional Web Application Server Requirements + +### Security Requirements + +#### Installation User + +A domain user which is a member of the Local Administrators group on the Web Application Server must be available to perform the installation. + +#### Port Requirements + +The observability platform requires a range of [firewall ports to be opened][Port Requirements] on the Web Application Server. + +#### Certificate Requirements + +{{% alert title="Note" %}} +For production systems, it is recommended that X.509 SSL certificates are obtained from a Certificate Authority and used for installation. For non-production systems, self-signed certificates may be used. Details on how to create a self-signed certificate can be found at {{< ahref path="Cortex.GettingStarted.OnPremise.AddObservabilityToInnovation.Grafana.Advanced.CreateSelfSignedCertificates" title="Create Self-Signed Certificates" >}}. +{{% / alert %}} + +An X.509 SSL certificate (standard, wildcard or self-signed) should be used to secure communication between: + +* Promtail on the Application Servers and the reverse proxy configured for Grafana Loki on the Web Application Server. +* Grafana end users and the Grafana Web Application on the Web Application Server. + +The wildcard certificate used for installing Innovation can be used if it is available in the .PEM file format, otherwise a new certificate can be obtained from a Certificate Authority, such as [Let’s Encrypt][], and must meet the following requirements: + +* Subject field must be in one of the following formats, depending on the certificate type: + * Standard certificates must use the standard format (e.g. `CN=host.domain.com`). + * Wildcard certificates must use the wildcard format, pertaining to the domain of the Web Application Server (e.g. `CN=*.domain.com`). +* Subject alternative names must include any additional host names that should be able to be used to access the Grafana Web Application. +* Certificate file must be in a .PFX file format, with a known password. +* Certificate file must also be available in a .PEM file format. +* Certificate file must contain the full chain of certificates. +* Certificate file must include the private key. + +The files should be placed in a known location on the Web Application Server. This location will be required when [configuring Grafana to use HTTPS][]. + +More information about importing the certificate is given during [installation][]. + +#### TLS Requirements + +A set of non-compulsory security measures is recommended to be applied to the Web Application Server to prevent attacks that exploit known industry security vulnerabilities. This includes disabling all versions of SSL and TLS apart from TLS 1.2, and disabling all cipher suites apart from the following: + +* TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 +* TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 + +See [SSL Best Practices][] for a full list of the recommended security changes to be applied. + +##### Apply Recommended Security Measures + +{{% alert type="warning" title="Warning" %}}Disabling specific TLS versions or specific Cipher Suites can have impact on other applications as well as their communication capabilities with third party systems and services. All parties communicating together must support a shared protocol version and cipher suite, otherwise they will not be able to establish a secure communication link between each other.{{% /alert %}} + +Apply the settings by following these instructions: + +1. Copy from one of the application servers the `Cortex.Innovation.Install.SSLBestPractices.ps1` file extracted during the [Make Installation Artefacts Available][] step into a suitable location on the Web Application Server. +1. Open a Windows PowerShell (x64) window as administrator. +1. Change the location to the folder where the `Cortex.Innovation.Install.SSLBestPractices.ps1` file was copied to using the following command, modifying the path as necessary: + + ```powershell + cd "C:\Install" + ``` + +1. Run the `Cortex.Innovation.Install.SSLBestPractices.ps1` script using the following command: + + ```powershell + .\Cortex.Innovation.Install.SSLBestPractices.ps1 + ``` + +1. To use all the recommended settings click `Apply all` to the first prompt. + + To selectively apply each setting select `Choose which to apply`. Each change will then be prompted with a Yes/No confirmation before applying. +1. Restart the machine when the script asks. + +## Additional Application Server Requirements + +These requirements apply to each of the Application Servers. + +### Security Requirements + +#### Installation User + +A domain user which is a member of the Local Administrators group on all Application Servers must be available to perform the installation. + +## Next Steps? + +1. [Install Grafana][] + +[2019 (x64)]: {{< url path="Microsoft.Downloads.Windows.Server2019" >}} +[2022 (x64)]: {{< url path="Microsoft.Downloads.Windows.Server2022" >}} +[Architecture]: {{< url path="Cortex.GettingStarted.OnPremise.AddObservabilityToInnovation.Grafana.Architecture" >}} +[configuring Grafana to use HTTPS]: {{< url path="Cortex.GettingStarted.OnPremise.AddObservabilityToInnovation.Grafana.InstallGrafana.ConfigureHTTPS" >}} +[Create Self-Signed Certificates]: {{< url path="Cortex.GettingStarted.OnPremise.AddObservabilityToInnovation.Grafana.Advanced.CreateSelfSignedCertificates" >}} +[Make Installation Artefacts Available]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.MakeInstallationArtefactsAvailable" >}} +[Grafana 10.4.1]: {{< url path="Grafana.SelfManaged.Downloads.GrafanaWebApp.10.4.1.Windows" >}} +[Grafana Loki 3.0.0]: {{< url path="Grafana.SelfManaged.Downloads.GrafanaLoki.3.0.0.GrafanaLokiInstallZip" >}} +[Install Grafana]: {{< url path="Cortex.GettingStarted.OnPremise.AddObservabilityToInnovation.Grafana.InstallGrafana.MainDoc" >}} +[Install IIS Basic Authentication]: {{< url path="Cortex.GettingStarted.OnPremise.AddObservabilityToInnovation.Grafana.InstallLoki.InstallIISBasicAuthentication" >}} +[installation]: {{< url path="Cortex.GettingStarted.OnPremise.AddObservabilityToInnovation.Grafana.InstallLoki.InstallCertificate" >}} +[Let’s Encrypt]: {{< url path="LetsEncrypt.MainDoc" >}} +[Promtail 3.0.0]: {{< url path="Grafana.SelfManaged.Downloads.Promtail.3.0.0.PromtailInstallZip" >}} +[SSL Best Practices]: {{< url path="Cortex.GettingStarted.OnPremise.AddObservabilityToInnovation.Grafana.Advanced.SSLBestPractices" >}} +[URL Rewrite module 2.1]: {{< url path="IIS.Downloads.UrlRewrite-2_1" >}} +[Port Requirements]: {{< url path="Cortex.GettingStarted.OnPremise.AddObservabilityToInnovation.Grafana.Advanced.PortRequirements" >}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/setup-grafana.md b/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/setup-grafana.md new file mode 100644 index 000000000..254282ac3 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/setup-grafana.md @@ -0,0 +1,84 @@ +--- +title: "Setup Grafana" +linkTitle: "Setup Grafana" +description: "Information about setting up Grafana to communicate with the installed Grafana Loki as well as importing and configuring the default set of dashboards." +weight: 60 +--- + +# {{% param title %}} + +This guide describes where to get the default {{% ctx %}} Innovation Dashboards from and how to import them for use in Grafana. + +Please ensure that the Installations for [Grafana][] and [Loki][] have been completed before starting this section. + +## Configure Loki Data Source in Grafana + +1. Log in to your configured Grafana instance with a user that has the *admin* role. +1. In Grafana, go to *Connections* > *Data Sources* via the menu on the left sidebar. +1. Click the *+ Add new data source* button. +1. Choose *Loki* from the *Logging & document databases* section of the list. +1. Configure the data source as follows: + + | Option | Description | Value | + |---------|-------------|---------| + | Name | The name of the data source to use in Grafana | `Cortex Loki` | + | URL | The address of your Grafana Loki Server | `http://localhost:3100` | + | Timeout | The HTTP request timeout in seconds set to the same value as configured in the Grafana Loki `loki-local-config.yaml` configuration file as `query_timeout` in the `limits_config` configuration section, located alongside the Grafana Loki `loki-windows-amd64.exe` file. | `600` | + +1. Click *Save and Test*. +1. *Data source successfully connected.* message should be displayed above the *Save and Test* + +## Download the {{% ctx %}} Innovation Default Dashboards + +1. Download [Grafana.Dashboards.zip] archive containing the {{% ctx %}} Innovation default dashboards. +1. Extract the content of the downloaded archive to a suitable location. + +## Create Folder for Dashboards + +1. Log in to your configured Grafana with a user that has the *Admin* role. +1. In Grafana, go to *Dashboards* via the menu on the left sidebar. +1. Click the *New* button and select *New folder* from the drop-down menu. +1. Enter a folder name, e.g. `Cortex`. +1. Click *Create*. + +## Import Dashboards + +1. Log in to your configured Grafana with a user that has the *Admin* role. +1. Go to *Dashboards* via the menu on the left sidebar. +1. Click the *New* button and select *Import* from the drop-down menu. +1. Click the *Upload JSON file* button. +1. Locate the `Flow Execution Requests.json` file extracted from the downloaded `Grafana.Dashboards.zip`. +1. Select the file and click *Open*. +1. Select the folder in Grafana you wish the dashboard to be saved in, e.g. *Cortex*. +1. Select your configured Loki data source from the dropdown menu. +1. Click *Import*. +1. Repeat steps 2 - 8 for the `Platform Health.json` file. + +## Configure Data Sources + +It is necessary to update the Custom Filter inside the dashboards to use the correct data source. + +To do this, follow these steps for all default {{% ctx %}} Innovation dashboards imported: + +1. Log in to your configured Grafana with a user that has the *Admin* role. +1. To open a dashboard: + 1. Go to *Dashboards* via the menu on the left sidebar. + 1. Click the folder name that the dashboards were imported to. + 1. Click the *Flow Execution Requests* dashboard to open it. +1. Open the *Dashboard settings* menu via the cog icon in the top right-hand side of the dashboard. +1. Click *Variables* from the top menu of the *Settings* page. +1. Click *CustomFilter* at the bottom of the *Variables* list. +1. Select your configured Loki data source in the *Ad-hoc options* > *Data source* drop-down menu. +1. Click *Apply*. +1. Click the dashboard name in the breadcrumb at the top left corner of the page to go back to the dashboard. +1. Click the + icon next to the Custom Filter to confirm that a list of available filter options is visible. +1. Repeat steps 2 - 9 for the *Platform Health* dashboard. + +## Next Steps? + +1. [Try it Out][] + +[Grafana.Dashboards.zip]: {{< url path="GitHub.Cortex.Observability.3.0.0.GrafanaDashboardsZip" >}} +[Grafana]: {{< url path="Cortex.GettingStarted.OnPremise.AddObservabilityToInnovation.Grafana.InstallGrafana.MainDoc" >}} +[Loki]: {{< url path="Cortex.GettingStarted.OnPremise.AddObservabilityToInnovation.Grafana.InstallLoki.MainDoc" >}} +[Try it Out]: {{< url path="Cortex.GettingStarted.OnPremise.AddObservabilityToInnovation.Grafana.TryItOut" >}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/try-it-out.md b/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/try-it-out.md new file mode 100644 index 000000000..59731451b --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/Grafana/try-it-out.md @@ -0,0 +1,47 @@ +--- +title: "Try it Out" +linkTitle: "Try it Out" +description: "Information about trying out Grafana Observability Dashboards for the first time." +weight: 60 +--- + +# {{% param title %}} + +## Check Dashboards are Displaying Data + +{{% alert title="Note" %}} +This test uses the test flow published as part of testing the Innovation installation. See {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.TryItOutPublishedFlow" title="Testing HA installation" >}} or {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.SingleServerWithoutHA.TryItOutPublishedFlow" title="Testing non-HA installation" >}}. An alternative flow can be used that exists on the system and can be executed. +{{% / alert %}} + +1. Open an HTTP client, such as [Postman][]. Make a request with the following format: + | Property | Value | + |---------------|-------------------------------------------------------------------------------------| + | Action | POST | + | URL | For HA installation use:
`https://{FQDN of Load Balancer Server}/api/default/default/flows/{Flow Name}/executions?packageName={Package Name}`
e.g. `https://load-balancer.domain.com/api/default/default/flows/NewFlow/executions?packageName=NewPackage`

For non-HA installation use:
`https://{FQDN of server}:8722/api/default/default/flows/{Flow Name}/executions?packageName={Package Name}`
e.g. `https://server.domain.com:8722/api/default/default/flows/NewFlow/executions?packageName=NewPackage`| + | Content Type | application/json | + | Body | {} | + | Authentication| Basic | + | Username | The value used for `ApiGatewayBasicAuthUsername` when installing Application Services. See [HA Installation script configuration][] or [Non-HA Installation script configuration][] for the value specified.| + | Password | The value used for `ApiGatewayBasicAuthPassword` when installing Application Services (Unencrypted). See [HA Installation script configuration][] or [Non-HA Installation script configuration][] for the value specified.| + + {{% alert title="Note" %}} If you used self-signed certificates when installing the Application Servers you may need to disable SSL certificate validation in your HTTP client. {{% /alert %}} + +1. Once the request has completed, using a web browser, log in to your configured Grafana. +1. Open the *Dashboards* page via the menu on the left sidebar. +1. Click the folder name that the dashboards were imported to. +1. Click the *Flow Execution Requests* dashboard to open it. +1. The request made at step 1 should be visible on the dashboard. +{{% alert title="Note" %}} +If other requests have been made then there may be more than one request visible on the dashboard. +{{% / alert %}} +1. Open the *Dashboards* page via the menu on the left sidebar. +1. Click the folder name that the dashboards were imported to. +1. Click the *Platform Health* dashboard to open it. +1. The request made at step 1 should be visible on the dashboard. +{{% alert title="Note" %}} +If other requests have been made then there may be more than one request visible on the dashboard. +{{% / alert %}} + +[HA Installation script configuration]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.ConfigureInstallationScript" >}} +[Non-HA Installation script configuration]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.SingleServerWithoutHA.ConfigureInstallationScript" >}} +[Postman]: {{< url path="Postman.Downloads.MainDoc" >}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/_index.md b/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/_index.md new file mode 100644 index 000000000..ab5ea38be --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/add-observability-to-innovation/_index.md @@ -0,0 +1,6 @@ +--- +title: "Add Observability to Innovation" +linkTitle: "Add Observability to Innovation" +description: "Information about installing an observability platform for Innovation." +weight: 30 +--- diff --git a/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/_index.md b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/_index.md new file mode 100644 index 000000000..926f2c897 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/_index.md @@ -0,0 +1,10 @@ +--- +title: "Install Innovation Only" +linkTitle: "Install Innovation Only" +description: "Information about installing a {{% ctx %}} Innovation platform." +weight: 10 +--- + +{{% pageinfo %}} +{{% ctx %}} Innovation can be deployed on-premise across [multiple servers](multiple-server-with-ha) to provide improved scale and high availability (HA), or to a [single server](single-server-without-ha) if scale and HA aren't required. +{{% /pageinfo %}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/advanced/_index.md b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/advanced/_index.md new file mode 100644 index 000000000..f42adde16 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/advanced/_index.md @@ -0,0 +1,6 @@ +--- +title: "Advanced Setup" +linkTitle: "Advanced Setup" +description: "Supporting information about installing {{% ctx %}} Innovation with non-default configurations." +weight: 90 +--- diff --git a/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/advanced/advanced-config-changes.md b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/advanced/advanced-config-changes.md new file mode 100644 index 000000000..a89321ee5 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/advanced/advanced-config-changes.md @@ -0,0 +1,207 @@ +--- +title: "Advanced Application Server and Load Balancer Configuration Changes" +linkTitle: "Advanced Application Server and Load Balancer Configuration Changes" +description: "Information about installing {{% ctx %}} Innovation with non-default installation values." +--- + +# {{% param title %}} + +Advanced configuration (such as port changes) can be undertaken by taking the following steps before running the PowerShell script. Some values will be modified by the script and they will take precedence, but those parameters can be removed from the script and this file used entirely if required. + +## Multiple Server With HA + +1. In the `Cortex Innovation {{< version >}} - Installation Scripts` folder, locate the file `Cortex.Innovation.Install.Config.json` and open it with a text editor. +1. Change the configuration file according to your cluster, referring to the following example and details: + + {{< highlight json "linenos=table,hl_lines=4 17 18 21 22 23 27-28 31-32 35-36 42 44 46 48 50 52 73-75 80-82,linenostart=1" >}} + { + "customers": [ + { + "name": "Customer1", + "isPrimary": true, + "rules": { + "clientConnectionEndpointPort": "8001", + "clusterConnectionEndpointPort": "8002", + "leaseDriverEndpointPort": "8003", + "serviceConnectionEndpointPort": "8004", + "httpGatewayEndpointPort": "9080", + "reverseProxyEndpointPort": "9081", + "applicationPorts": "10010-10500", + "ephemeralPorts": "10501-20000" + }, + "loadBalancer": { + "installDirectory": "%ProgramData%\\loadbalancer", + "iPAddress": "192.168.20.178", + "loadBalancerSnmpPort": "162", + "snmpReceiverServicePort": "10001", + "loadBalancerTlsPort": "443", + "apiGatewayServicePort": "8722", + "adminCertificate": "loadBalancerCertificate" + }, + "servers": [ + { + "serverName": "app-server1", + "iPAddress": "192.168.1.1" + }, + { + "serverName": "app-server2", + "iPAddress": "192.168.1.2" + }, + { + "serverName": "app-server3", + "iPAddress": "192.168.1.3" + } + ] + } + ], + "servers": { + "app-server1": { + "faultDomain": "fd:/fd1", + "serverCertificate": "serverCert" + }, + "app-server2": { + "faultDomain": "fd:/fd2", + "serverCertificate": "serverCert" + }, + "app-server3": { + "faultDomain": "fd:/fd3", + "serverCertificate": "serverCert" + } + }, + "rules": { + "windowsSmbRemoteRegistry": [ + "135", + "137", + "138", + "139", + "445" + ], + "rabbitMqAmqpPorts": [ + "5671" + ], + "rabbitMqEpmdPort": "4369", + "rabbitMqErlangDistributionClientPorts": "35672-35682", + "rabbitMqErlangDistributionServerPort": "25672", + "rabbitMqManagementApiPort": "15671" + }, + "serverCertificates": { + "serverCert": { + "pfxCertificatePath": "C:\\Certificates\\wildCardCert.pfx", + "pfxCertificatePassword": "#_121004188127116!133150189159197057145221234081254~237141201182240!228132117152122101166250091035249#", + "pemRootCertificatePath": "" + } + }, + "adminCertificates": { + "loadBalancerCert": { + "pfxCertificatePath": "C:\\Certificates\\lbCert.pfx", + "pfxCertificatePassword": "#_121004188127116!133150189159197057145221234081254~237141201182240!228132117152122101166250091035249#", + "pemRootCertificatePath": "" + } + } + } + {{< / highlight >}} + + {{% alert title="Important" color="warning" %}}Parameters required to be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}} must be encrypted on one of the servers specified in the {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.SingleServerWithoutHA.EncryptionRequirements" title="Encryption Requirements" >}} steps.{{% /alert %}} + + | Line | Description | + |------|-------------| + |4 | A name identifying the platform being installed. This should have no spaces or symbols. It will be appended to the node names that are displayed in the Service Fabric management tool. | + |16-24 | If the bundled load balancer is not being used, delete these lines | + |17 | A local empty or non-existent directory on the load balancer server that the load balancer can be installed in. The directory path will be created if it does not exist. The installation user must have permissions to create and write to directories here. Ensure that all backslashes are escaped with another backslash. Environment variables may be used. | + |18 | The IPv4 address of the server that the load balancer should run on. | + |21 | The port that the HTTPS load balancer server should run on. This port should not be in use by anything else. | + |22 | The port that the API Gateway Service is running on the Application Servers. This should be 8722. | + |23 | The name of a certificate entry in the adminCertificates section. If this line is removed, an auto-generated self-signed certificate will be used. | + |27, 31, 35 | The short computer names of the Application Servers. These must not contain the domain. The installation will be run on the first of these nodes. | + |28, 32, 36 | The respective IPv4 addresses of the Application Servers. | + |42, 46, 50 | These keys should be changed to the computer names of the Application Servers to match those on lines 26, 30 and 24 | + |44, 48, 52 | The name of a certificate entry in the serverCertificates section. This should be the same for all Application Servers. If these lines are removed, an auto-generated self-signed certificate will be used. Self-signed certificates are not recommended for production systems.| + |73-75 | Skip configuring these lines if self-signed certificates are being used. | + |80-82 | Skip configuring these lines if self-signed certificates are being used or if the bundled load balancer is not being used. | + |73 |This is the local path of a .PFX certificate file on the first Application Server, containing a full chain certificate with private key. Ensure that all backslashes are escaped with another backslash. Environment variables cannot be used. | + |74 |The password used to secure the .PFX file.

{{< alert type="note" title="Note" >}} This parameter must be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}}| + |75 |This only needs to be used if the installation has failed due to a missing root certificate. See [Troubleshooting Root Certificate Error] for information.| + |80 |This is the local path of a .PFX certificate file on the first Application Server, containing a full chain certificate with private key. Ensure that all backslashes are escaped with another backslash. Environment variables cannot be used. | + |81 |The password used to secure the .PFX file.

{{< alert type="note" title="Note" >}} This parameter must be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}}| + |82 |This only needs to be used if the installation has failed due to a missing root certificate. See [Troubleshooting Root Certificate Error] for information.| + +1. Save and close the config file. + +## Single Server Without HA + +1. In the `Cortex Innovation {{< version >}} - Installation Scripts` folder, locate the file `Cortex.Innovation.Install.Config.json` and open it with a text editor. +1. Change the configuration file according to your cluster, referring to the following example and details: + + {{< highlight json "linenos=table,hl_lines=4 18 19 25 27 48-50,linenostart=1" >}} + { + "customers": [ + { + "name": "Customer1", + "isPrimary": true, + "rules": { + "clientConnectionEndpointPort": "8001", + "clusterConnectionEndpointPort": "8002", + "leaseDriverEndpointPort": "8003", + "serviceConnectionEndpointPort": "8004", + "httpGatewayEndpointPort": "9080", + "reverseProxyEndpointPort": "9081", + "applicationPorts": "10010-10500", + "ephemeralPorts": "10501-20000" + }, + "servers": [ + { + "serverName": "app-server1", + "iPAddress": "192.168.1.1" + } + ] + } + ], + "servers": { + "app-server1": { + "faultDomain": "fd:/fd1", + "serverCertificate": "serverCert" + } + }, + "rules": { + "windowsSmbRemoteRegistry": [ + "135", + "137", + "138", + "139", + "445" + ], + "rabbitMqAmqpPorts": [ + "5671" + ], + "rabbitMqEpmdPort": "4369", + "rabbitMqErlangDistributionClientPorts": "35672-35682", + "rabbitMqErlangDistributionServerPort": "25672", + "rabbitMqManagementApiPort": "15671" + }, + "serverCertificates": { + "serverCert": { + "pfxCertificatePath": "C:\\Certificates\\wildCardCert.pfx", + "pfxCertificatePassword": "#_121004188127116!133150189159197057145221234081254~237141201182240!228132117152122101166250091035249#", + "pemRootCertificatePath": "" + } + } + } + {{< / highlight >}} + + {{% alert title="Important" color="warning" %}}Parameters required to be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}} must be encrypted on one of the servers specified in the {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.SingleServerWithoutHA.EncryptionRequirements" title="Encryption Requirements" >}} steps.{{% /alert %}} + + | Line | Description | + |------|-------------| + |4 | A name identifying the platform being installed. This should have no spaces or symbols. It will be appended to the node names that are displayed in the Service Fabric management tool. | + |18 | The short computer names of the node. This must not contain the domain. The installation will be run on the this node. | + |19 | The IPv4 address of the node. | + |25 | This key should be changed to the computer names of the node to match that on line 18 | + |27 | The name of a certificate entry in the serverCertificates section. If this line is removed, an auto-generated self-signed certificate will be used. Self-signed certificates are not recommended for production systems.| + |48-50 | Skip configuring these lines if self-signed certificates are being used. | + |48 |This is the local path of a .PFX certificate file on the server, containing a full chain certificate with private key. Ensure that all backslashes are escaped with another backslash. Environment variables cannot be used. | + |49 |The password used to secure the .PFX file.

{{< alert type="note" title="Note" >}} This parameter must be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}}| + |50 |This only needs to be used if the installation has failed due to a missing root certificate. See [Troubleshooting Root Certificate Error] for information.| + +1. Save and close the config file. + +[Troubleshooting Root Certificate Error]: {{< url path="Cortex.Reference.Troubleshooting.Installation.TroubleshootingNoRootCertificate" >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/advanced/configure-firewalls.md b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/advanced/configure-firewalls.md new file mode 100644 index 000000000..31120acd4 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/advanced/configure-firewalls.md @@ -0,0 +1,23 @@ +--- +title: "Configure Firewalls" +linkTitle: "Configure Firewalls" +description: "Information about configuring Firewalls, e.g. adding rules." +--- + +# {{% param title %}} + +## Add Inbound Rules to Windows Firewall + +To set up inbound rules for Windows Firewall take the following steps for each rule that you want to add: + +1. Navigate to `Start` → `Administrative Tools` → `Windows Firewall with Advanced Security`. +1. In the left-hand panel, click on the `Inbound Rules` node. +1. In the right-hand panel, click on `New Rule`. +1. In the New Inbound Rule Wizard, select the `Port` option then click on the `Next >` +button. +1. Select either `TCP` or `UDP` depending on the rule that is being made. +1. Select `Specific local ports`. +1. Enter the required ports in a comma separated list (e.g. `443, 80`) in the text box and press `Next >`. +1. Select `Allow the connection` then click `Next >`. +1. Click `Next >` again, then add an identifiable name for the rule +1. Click `Finish`. diff --git a/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/advanced/encrypt-text.md b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/advanced/encrypt-text.md new file mode 100644 index 000000000..42dd5fa94 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/advanced/encrypt-text.md @@ -0,0 +1,33 @@ +--- +title: "Encrypt Text" +linkTitle: "Encrypt Text" +description: "Information about encrypting text using the {{% ctx %}} Encryptor." +--- + +# {{% param title %}} + +To encrypt text using the {{% ctx %}} Encryptor PowerShell module: + +1. Extract the `Cortex Innovation {{< version >}} - Encryptor.zip` file to a folder with the same name. +1. Open a Windows PowerShell (x64) window as administrator. +1. Navigate PowerShell to inside the `Cortex Innovation {{< version >}} - Encryptor` folder using the following command, modifying the path as necessary: + + ```powershell + cd "C:\Install\Cortex Innovation {{< version >}} - Encryptor" + ``` + +1. In the Windows PowerShell (x64) window, run the following command to import the module: + + ```powershell + Import-Module .\Cortex.Encryptor.psd1 + ``` + +1. In the Windows PowerShell (x64) window, run the following command to encrypt text, replacing `text to encrypt` with the text that you want to encrypt: + + ```powershell + ConvertTo-EncryptedText -Text 'text to encrypt' + ``` + + The command will return the encrypted text, beginning with `#_`. This step can be repeated for any texts that need to be encrypted. + + {{< alert title="Note:" >}}The `Import-Module` command will need to be repeated every time a new PowerShell window is used. To install the PowerShell module so that it is always available, follow the instructions laid out {{< ahref path="MSDocs.PowerShell.InstallModule" title="here" >}}.{{< /alert >}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/advanced/port-requirements.md b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/advanced/port-requirements.md new file mode 100644 index 000000000..db6b50350 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/advanced/port-requirements.md @@ -0,0 +1,80 @@ +--- +title: "Port Requirements for Application Servers and Load Balancer" +linkTitle: "Port Requirements for Application Servers and Load Balancer" +description: "Information about the ports opened when installing {{% ctx %}} Innovation." +--- + +# {{% param title %}} + +{{% ctx %}} Innovation and Microsoft Service Fabric open a range of firewall ports between the servers and specific services. Some of them are opened during installation, others are opened dynamically as needed. These are opened on Windows Firewall. If any other firewall exists between the servers, it will be necessary to configure this selection of rules on it. Most ports may be altered if another program overlaps with them, the description will say if this is not possible. + +## {{% ctx %}} Innovation Ports + +| Name | Description | Default Port(s) | Protocol | Direction | +|------|-------------|-----------------|----------|-----------| +| Cortex.RabbitMqAmqpPorts | The port used by AMQP 0-9-1 and 1.0 clients with TLS. **This cannot currently be changed.** | 5671 | TCP | Inbound | +| Cortex.RabbitMqEpmdPorts | The port used by epmd, a peer discovery service used by RabbitMQ nodes and CLI tools. **This cannot currently be changed.** | 4369 | TCP | Inbound | +| Cortex.RabbitMqErlangDistribut ionClientPorts | The ports used by CLI tools (Erlang distribution client ports) for communication with nodes and is allocated from a dynamic range (computed as Erlang dist port + 10000 through dist port + 10010). **This cannot currently be changed.** | 35672-35682 | TCP | Inbound | +| Cortex.RabbitMqErlangDistribut ionServerPort | The port used for RabbitMQ inter-node and CLI tools communication (Erlang distribution server port) and is allocated from a dynamic range (limited to a single port by default, computed as AMQP port + 20000). **This cannot currently be changed.** | 25672 | TCP | Inbound | +| Cortex.RabbitMqManagement ApiPort | The port used by the RabbitMQ management plugin. **This cannot currently be changed.** | 15671 | TCP | Inbound | +| Cortex.WindowsSmbRemote Registry | The ports used by Windows SMB and Remote Registry service. | 135, 137, 138, 139, 445 | TCP | Inbound | +| Cortex.ServiceFabric.Customer1. ClusterConnectionEndpointPort | The port used by the client to connect to the cluster when client APIs are used. | 8001 | TCP | Inbound | +| Cortex.ServiceFabric.Customer1. ClientConnectionEndpointPort | The port where the nodes communicate with each other. | 8002 | TCP | Inbound | +| Cortex.ServiceFabric.Customer1. ServiceConnectionEndpointPort | The port used by the applications and services deployed on a node to communicate with the Service Fabric client on that particular node. | 8004 | TCP | Inbound | + +## Microsoft Service Fabric Firewall Rules (present on all Application Servers, with Domain, Public and Private Profiles) + +These rules will all appear in Windows Firewall with names starting with ‘{CustomerName}.{NodeName} WindowsFabric’. + +|Name in Rule | Name in Config | Description | Default Port(s) | Protocol(s) | Direction | +|-------------|----------------|-------------|-----------------|-------------|-----------| +| Application Processes | application Ports | The ports that are used by the Service Fabric applications. Service Fabric uses these ports whenever new dynamic ports are required. **The application port range should be large enough to cater for the dynamic port allocation of the application. Currently at least 400 is recommended. This may change if new services are added. This range should not overlap the Dynamic Ports (ephemeralPorts) range as set in the configuration.**

**Program**: Any | 10010-10500 | TCP, UDP | Inbound, Outbound | +| BackupRestore Service Process | N/A | The port used by the Service Fabric process which manages the backup and restore of Application Services.

**Program:** %ProgramData%\\SF\\.\\Fabric\\work\\Applications\\ \_\_FabricSystem\_\\BRS.Code.Current\\FabricBRS.exe | Any | TCP | Inbound, Outbound | +| CentralSecret Service Process | N/A | The port used by the Service Fabric process which manages secrets.

**Program:** %ProgramData%\\SF\\.\\Fabric\\work\\Applications\\ \_\_FabricSystem\_\\BRS.Code.Current\\FabricCSS.exe | Any | TCP | Inbound, Outbound | +| DCA Process | N/A | The port used by the Service Fabric Diagnostics Collection Agent, which manages Diagnostic data.

**Program:** %ProgramFiles%\\Microsoft Service Fabric\\bin\\ Fabric\\DCA.Code\\FabricDCA.exe | Any | TCP | Outbound | +| Dynamic Ports | ephemeral Ports | Override the **[dynamic ports used by the OS][Dynamic Ports]**. Service Fabric uses a part of these ports as application ports, and the remaining are available for the OS. It also maps this range to the existing range present in the OS, so for all purposes, you can use the ranges given in the sample JSON files. **Make sure that the difference between the start and the end ports is at least 255**. You might run into conflicts if this difference is too low, because this range is shared with the OS. To see the configured dynamic port range, run netsh int ipv4 show dynamicport tcp.

**Program:** Any | 10501-20000 | TCP, UDP | Inbound, Outbound | +| EventStore Service Process | N/A | The port used by the Service Fabric EventStore, which maintains events about the state of the Application Services.

**Program:** %ProgramData%\\SF\\.\\Fabric\\work\\Applications\\ \_\_FabricSystem\_App*\\ES.Code.Current\\ EventStore.Service.exe | Any | TCP | Inbound, Outbound | +| Fabric Gateway Process | N/A | The port used by the Service Fabric Gateway, which allows REST and management functions to access the Application Services.

**Program:** %ProgramFiles%\\Microsoft Service Fabric\\bin\\Fabric\\ Fabric.Code\\FabricGateway.exe | Any | TCP | Inbound, Outbound | +| Fabric Process | N/A | The port used by the main Service Fabric service.

**Program:** %ProgramFiles%\\Microsoft Service Fabric\\bin\\Fabric\\ Fabric.Code\\Fabric.exe | Any | TCP | Inbound, Outbound | +| FabricUpgrade Service Process | N/A | The port used by the Service Fabric Upgrade service.

**Program:** %ProgramData%\\SF\\.\\Fabric\\work\\Applications\\ \_\_FabricSystem\_App*\\US.Code.Current\\FabricUS.exe | Any | TCP | Inbound, Outbound | +| FaultAnalysis Service Process | N/A | The port used by the Service Fabric Fault Analysis service.

**Program:** %ProgramData%\\SF\\.\\Fabric\\work\\Applications\\ \_\_FabricSystem\_App*\\FAS.Code.Current\\FabricFAS.exe | Any | TCP | Inbound, Outbound | +| FileStore Service Process | N/A | The port used by the Service Fabric File Store service, which manages the application file store and image store.

**Program:** %ProgramData%\\SF\\.\\Fabric\\work\\Applications\\ \_\_FabricSystem\_App*\\FileStoreService.Code.Current\\ FileStoreService.exe | Any | TCP | Inbound, Outbound | +| GatewayResource Manager Process | N/A | The port used by the Service Fabric Gateway Resource Manager, which provides APIs to manage the Application Services and other resources.

**Program:** %ProgramData%\\SF\\.\\Fabric\\work\\Applications\\ \_\_FabricSystem\_App*\\GRM.Code.Current\\FabricGRM.exe | Any | TCP | Inbound, Outbound | +| HTTP App Gateway | reverse Proxy Endpoint Port | **This port cannot be changed at the current time. If it is already in use, please contact {{% ctx %}} for assistance.** The reverse proxy endpoint. For more information, see **[Service Fabric reverse proxy][]**.

**Program:** Any | 9081 | TCP | Inbound, Outbound | +| Http Gateway | http Gateway Endpoint Port | The port used by Service Fabric Explorer to connect to the cluster. **This changes the port used to connect to the Service Fabric management portal as part of the post-install checks.**

**Program:** Any | 9080 | TCP | Inbound, Outbound | +| Infrastructure Service Process | N/A | The port used by the Service Fabric Infrastructure Service.

**Program:** %ProgramData%\\SF\\.\\Fabric\\work\\Applications\\ \_\_FabricSystem\_App*\\IS.Code.Current\\FabricIS.exe | Any | TCP | Inbound, Outbound | +| Lease Driver | lease Driver Endpoint Port | The port used by the cluster lease driver to find out if the nodes are still active.

**Program:** Any | 9002 | TCP | Inbound, Outbound | +| ManagedIdentity TokenService Process | N/A | The port used by the Service Fabric Managed Identity Token Service.

**Program:** %ProgramData%\\SF\\.\\Fabric\\work\\Applications\\ \_\_FabricSystem\_App*\\MITS.Code.Current\\ ManagedIdentityTokenService.exe | Any | TCP | Inbound, Outbound | +| RepairManager Service Process | N/A | The port used by the Service Fabric Repair Manager Service.

**Program:** %ProgramData%\\SF\\.\\Fabric\\work\\Applications\\ \_\_FabricSystem\_App*\\RM.Code.Current\\FabricRM.exe | Any | TCP | Inbound, Outbound | +| Upgrade Orchestration Service Process | N/A | The port used by the Service Fabric Upgrade Orchestration service.

**Program:** %ProgramData%\\SF\\.\\Fabric\\work\\Applications\\ \_\_FabricSystem\_App*\\UOS.Code.Current\\FabricUOS.exe | Any | TCP | Inbound, Outbound | + +## Application Service Rules + +Each service has an endpoint which is used to communicate with Service Fabric and the RabbitMQ message broker. These are configured in the ServiceManifest.xml file within each package in the ApplicationPackages\Cortex directory of the installation media. These ports cannot be used by any other program. If they do clash with another program, they may be changed but additional configuration changes may be necessary, as described in the description of each port. The Application ports must not lie in the `ephemeralPorts` range. + +| Name of Service | Description | Default Port(s) | Protocol(s) | Direction | Program | +|--------------------------|--------------------------------------------------------------------------------|--------------------------------------|-------------|-------------------|---------| +| API Gateway | {{< section "/port-requirements/description/api-gateway.md" >}} | 8722 | TCP, UDP | Inbound, Outbound | Any | +| Authorisation | {{< section "/port-requirements/description/authorisation.md" >}} | Dynamic – Uses the application ports | N/A | N/A | N/A | +| Configuration Management | {{< section "/port-requirements/description/configuration-management.md" >}} | Dynamic – Uses the application ports | N/A | N/A | N/A | +| Data Storage | {{< section "/port-requirements/description/data-storage.md" >}} | Dynamic – Uses the application ports | N/A | N/A | N/A | +| Execution | {{< section "/port-requirements/description/execution.md" >}} | Dynamic – Uses the application ports | N/A | N/A | N/A | +| Execution Management | {{< section "/port-requirements/description/execution-management.md" >}} | Dynamic – Uses the application ports | N/A | N/A | N/A | +| Licence Management | {{< section "/port-requirements/description/licence-management.md" >}} | Dynamic – Uses the application ports | N/A | N/A | N/A | +| Package Management | {{< section "/port-requirements/description/package-management.md" >}} | Dynamic – Uses the application ports | N/A | N/A | N/A | +| Provisioning | {{< section "/port-requirements/description/provisioning.md" >}} | Dynamic – Uses the application ports | N/A | N/A | N/A | +| Triggers (SNMP) | {{< section "/port-requirements/description/triggers-snmp.md" >}} | 10001 | UDP | Inbound | Any | + +## Load Balancer Rules + +{{% alert title="Note" %}}Only applicable for installations with HA.{{% /alert %}} + +The load balancer server must be able to retrieve traffic via HTTPS. The following firewall ports are opened by the installer (these rules will all appear in Windows Firewall with names starting with `{CustomerName}`): + +|Name in Rule | Name in Config | Default Port(s) | Protocol(s) | Direction | Program | +|--------------------|----------------------|-----------------|-------------|-----------|---------| +| GoBetweenTlsPort | loadBalancerSnmpPort | 162 | UDP | Inbound | Any | +| GoBetweenTlsPort | loadBalancerTlsPort | 443 | TCP | Inbound | Any | + +[Dynamic Ports]: {{< url path="MSSupport.Troubleshooting.DynamicPorts" >}} +[Service Fabric reverse proxy]: {{< url path="MSDocs.ServiceFabric.ReverseProxy" >}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/advanced/rollover-certificates.md b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/advanced/rollover-certificates.md new file mode 100644 index 000000000..46a45d5b8 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/advanced/rollover-certificates.md @@ -0,0 +1,166 @@ +--- +title: "Rollover CA certificates" +linkTitle: "Rollover CA certificates" +description: "Information about updating the certificates on a single or multi-server {{% ctx %}} platform which uses CA certificates." +--- + +# {{% param title %}} + +{{% pageinfo %}} +This process MUST be undertaken before certificates expire, otherwise your system will become unusable. If certificates have already expired, contact {{< ahref path="Cortex.ServicePortal.MainDoc" title="CORTEX Service Portal" >}} at the earliest opportunity. + +Only platforms which use CA certificates can have their certificates updated using this mechanism. Systems using self-signed certificates must be reinstalled. + +This mechanism cannot be used to switch from self-signed to CA certificates; that requires a reinstall. +{{% /pageinfo %}} + +{{% alert type="warning" title="Warning" %}}Updating the certificates on a single-server system with no high availability will result in downtime while the upgrade takes place. Ensure that this is undertaken at a suitable time. Systems with high availability will use a rollover mechanism which should not result in any downtime.{{% /alert %}} + +## Application Server + +### Prerequisites + +#### Certificate Requirements + +A new, valid X.509 certificate needs to be obtained to update the certificates. + +The certificate can be obtained from a Certificate Authority, such as [Let’s Encrypt](), and must meet the following requirements: + +* Subject field must be in one of the following formats depending on whether a multi-domain or wildcard certificate is used: + * Multi-domain certificate - If using the gobetween load balancer this should be specified as the FQDN of the load balancer server (e.g. `CN=load-balancer.domain.com`). If using a different load balancer this must be specified as the FQDN of one of the application servers (e.g. `CN=application-server.domain.com`) + * Wildcard certificate - wildcard format, pertaining to the domain of the Application Servers (e.g. `CN=*.domain.com`). +* Subject alternative names must include any additional host names that should be able to be used to access the API Gateway Service. Additionally if using a multi-domain certificate: + * The FQDN, NetBIOS Name and IP address of all application servers must be added. + * Optionally, the FQDN, NetBIOS Name and IP address of the web application server must be added if the same certificate is used for the web application server. +* Certificate file must be in a .PFX file format, with a known password. +* Certificate file must contain the full chain of certificates. +* Certificate file must include the private key. +* Key Usage extension must have a value of `Digital Signature, Key Encipherment (a0)`. +* Enhanced Key Usage must include `Server Authentication` and `Client Authentication`. + +This file should be placed in a known location on the Application Server where the certificate update script will be run. This location will be required when running the update script. + +If required, a separate X.509 SSL certificate can be obtained to be used by the load balancer to communicate with the Application Services. It must meet all of the other requirements laid out above, except the subject parameter can also be the FQDN of the load balancer (e.g. `CN=load-balancer.domain.com`). + +### Configure Update Certificates Script + +1. In the `Cortex Innovation {{< version >}} - App Server Install Scripts` folder, locate the `Cortex.Innovation.Update.Certificates.ps1` script and open it with a text editor. +1. Choose the tab below that matches the configuration for this installation, then update the script to match, changing the parameters according to the details given below: + + {{< tabpane lang="powershell" >}} + {{< tab header="Multiple Servers with HA" >}} +.\Cortex.Update.Certificates.ps1 -ConfigFileName Cortex.Innovation.Install.Config.json ` + -ServerCertificatePath "C:\Install\Certificates\cert.pfx" ` + -ServerCertificatePassword "#_173143083161001!153134111116076231173085078170111~219102086228187!128017006016134019248042194172107#" ` + -ClientCertificatePath "C:\Install\Certificates\cert.pfx" ` + -ClientCertificatePassword "#_173143083161001!153134111116076231173085078170111~219102086228187!128017006016134019248042194172107#" ` + -Credential $Credential + {{< /tab >}} + {{< tab header="Single Server without HA" >}} +.\Cortex.Update.Certificates.ps1 -ConfigFileName Cortex.Innovation.Install.Config.json ` + -ServerCertificatePath "C:\Install\Certificates\cert.pfx" ` + -ServerCertificatePassword "#_173143083161001!153134111116076231173085078170111~219102086228187!128017006016134019248042194172107#" ` + -SkipLoadBalancer ` + -Credential $Credential + {{< /tab >}} + {{< /tabpane >}} + + {{% alert title="Important" color="warning" %}}Parameters required to be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}} must be encrypted on one of the servers specified in the {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.SingleServerWithoutHA.EncryptionRequirements" title="Encryption Requirements" >}} steps.{{% /alert %}} + + | Name | Description | + |----------------------------------------------|-------------| + |`ServerCertificatePath` | The local path of a new, valid .PFX certificate file on the server. Environment variables cannot be used.

The certificate should meet the [Certificate Requirements][].

This certificate will be used for:
  • Securing communication between the Application Services.
  • Allowing Application Services to identify themselves to clients such as Gateway.
  • Preventing unauthorised nodes from joining the single node cluster.
  • Connecting to Service Fabric Explorer from each of the Application Servers.
| + |`ServerCertificatePassword` | The password for the .PFX certificate file specified in `ServerCertificatePath`.{{< alert type="note" title="Note" >}} This parameter must be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}}| + |`ClientCertificatePath` | The local path of a .PFX certificate file on the first Application Server in the `ApplicationServerIPv4Addresses` list. This can be the same certificate as the `ServerCertificatePath`. Environment variables cannot be used.

This is only needed if installing with CA Certificates (Recommended) and using the Built-In Load Balancer. The certificate should meet the [Certificate Requirements][].

This certificate will be used for:
  • Securing communication between the load balancer and the nodes on the Application Servers.
| + |`ClientCertificatePassword` | The password for the .PFX certificate file specified in `ClientCertificatePath`.

This is only needed if using the Built-In Load Balancer. {{< alert type="note" title="Note" >}} This parameter must be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}}| + |`SkipLoadBalancer` | Updates certificates without updating a load balancer. | + |`Credential` | The credentials of the user which will be used to perform remote operations on the server. It must be a domain user that is a member of the local Administrators group on the server.

This does not need to be changed, a prompt will appear to enter this information when the script is run. | + +### Test Update Certificates Script + +1. Open a Windows PowerShell (x64) window as administrator. +1. Navigate PowerShell to inside the `Cortex Innovation {{< version >}} - App Server Install Scripts` folder using the following command, modifying the path as necessary: + + ```powershell + cd "C:\Install\Cortex Innovation {{< version >}} - App Server Install Scripts" + ``` + +1. Test `Cortex.Innovation.Update.Certificates.ps1` by running the following command: + + ```powershell + .\Cortex.Innovation.Update.Certificates.ps1 -WhatIf + ``` + +1. A credentials prompt will appear. Enter credentials of a domain user that is a member of the local Administrators group on the server and press OK. +1. Wait for the command to finish. It will display the output of the certificate update command without making any changes to the system. +1. Check that there have been no errors in the script; these would appear in red in the console. + + If there are no errors, continue to the next section; otherwise, check if the errors have any instructions for rectifying the issue and follow them. + + If there are no useful instructions, check that all previous steps have been followed correctly and, if not, rectify it and run the command again.

If this does not work, please contact [{{% ctx %}} Service Portal][CORTEX Service Portal] for further assistance. The `WhatIf` script will have created a temporary version of the config file in the script location, showing what changes would be made to it when the script runs. The name is appended with `-WhatIf` (e.g. `Cortex.Innovation.Install.Config-WhatIf.json`). This file can be provided when obtaining support. + +### Run Update Certificates Script + +1. Update the certificates for the Application Services and the required infrastructure by running the following command (`Tee-Object` will write output to both the PowerShell console and a log file, the `FilePath` value can be changed if required): + + ```powershell + .\Cortex.Innovation.Update.Certificates.ps1 | Tee-Object -FilePath "cortex-app-certificate-update-log.txt" + ``` + +1. A credentials prompt will appear. Enter credentials of a domain user that is a member of the local Administrators group on the server and press OK. +1. Wait for the script to finish running. This should take approximately 10 minutes. +1. Check that there have been no errors in the script; these would appear in red in the console. + + If there are any errors, then please follow any instructions given within them to rectify the situation. + + If the errors do not give any instructions on how to rectify, see [Troubleshooting During Installation][] for further information; if this does not help then please contact [{{% ctx %}} Service Portal][CORTEX Service Portal] for assistance. + +### Check Application Services + +1. Log on to the server. +1. Import the certificate, used in the `ServerCertificatePath` parameter of the [Configure Update Certificates Script][] section, to your `Current User` certificate store. This can be achieved by double clicking on the certificate .PFX file and following the wizard. + +1. Open a web browser. +1. Navigate to `https://server.domain.com:9080/Explorer`, where `server.domain.com` is the fully qualified domain name of the server. Replace `9080` with new `httpGatewayEndpointPort` value if it was changed during configuration. + + The screen should resemble that in the following figure: + {{< figure src="/images/Service Fabric Explorer - Single.png" title="Healthy Service Fabric Explorer Cluster" >}} + + The status circles should be entirely green - this indicates that the node and all services and instances are healthy. Other status pages can be accessed by expanding items in the leftmost pane. Issues can be tracked down to the failing component by expanding items with warning triangles or error icons on. + + If there is still a warning that the certificate is close to expiring, wait a few hours and refresh the page and it should go away. It can take some time for the certificate to rollover. + +## Web Application Server + +If the Web Applications also use an expiring certificate, it will also need to be updated: + +### Import the Certificate + +If using a single server and using the same certificates for both the Application Services and Web Applications, a new certificate will already be installed. Otherwise, follow the following instructions to import the new certificate for use with the Web Applications: + +1. Put the new, valid certificate in `.pfx` format on the Web Application Server. +1. Double click on the certificate file to open the install certificate wizard. +1. Select `Local Machine` then click `Next`. +1. Click `Next`. +1. Enter the Export Password which the certificate was generated with then click `Next`. +1. Select `Place all certificates in the following store`. +1. Click `Browse…`. +1. Select `Personal`, click `OK` then click `Next`. +1. Click `Finish`. + +### Apply the Certificate + +1. Open Internet Information Services (IIS) Manager. +1. In the left-hand pane of Internet Information Service (IIS) Manager, expand the server node. +1. Right-click on the Site node (usually `Cortex`) which contains Gateway. +1. Click `Edit Bindings...` +1. Click on the `https` binding and click `Edit...`. +1. Click the SSL Certificate `Select...` button and select the new certificate from the table. Click `OK` to close the dialog. +1. Click `OK` to close Edit Bindings dialog. +1. Click `Close` to close the Bindings dialog. +1. Open Gateway in a browser. Click the padlock icon next to the URL. The certificate displayed should be the updated one. + +[Certificate Requirements]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.SingleServerWithoutHA.CertificateRequirements" >}} +[Troubleshooting During Installation]: {{< url path="Cortex.Reference.Troubleshooting.Installation.TroubleshootingDuringInstallation" >}} +[Configure Update Certificates Script]: {{< ref "#configure-update-certificates-script" >}} +[CORTEX Service Portal]: {{< url path="Cortex.ServicePortal.MainDoc" >}} \ No newline at end of file diff --git a/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/advanced/self-signed-certificates.md b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/advanced/self-signed-certificates.md new file mode 100644 index 000000000..8c0c6d21c --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/advanced/self-signed-certificates.md @@ -0,0 +1,236 @@ +--- +title: "Create Self-Signed Certificates" +linkTitle: "Create Self-Signed Certificates" +description: "Information about creating and installing self-signed certificates." +--- + +# {{% param title %}} + +Self-signed certificates should be generated using OpenSSL which is bundled in the {{% ctx %}} Web App Server Install Scripts: + +## Setup OpenSSL in PowerShell + +1. Open a Windows PowerShell (x64) window as administrator. +1. Make a directory in which to store the certificates by running the following command, changing the path as required: + + ```powershell + mkdir C:\Certificates + ``` + +1. Navigate PowerShell to inside the certificates folder created above, using the following command, modifying the path as necessary: + + ```powershell + cd "C:\Certificates" + ``` + +1. Temporarily add OpenSSL to the Path environment variable of your system by running the following command, modifying the path according to the location of `openssl.exe` in the installation scripts on the machine: + + ```powershell + $env:PATH += ";C:\Install\Cortex Innovation {{< version >}} - Web App Server Install Scripts\OpenSSL" + ``` + +## Generate the Root CA Certificate + +1. Create the Root CA private key by running the following command: + + ```powershell + openssl genrsa -out cortexCA.key 4096 + ``` + +1. Generate the Root CA certificate signed with the private key: + 1. Copy the following text into a text editor: + + ```shell + RANDFILE = .rnd + [ ca ] + default_ca = CA_default # The default ca section + [ CA_default ] + # Directory and file locations. + # SHA-1 is deprecated, so use SHA-2 instead. + default_md = sha256 + policy = policy_strict + [ policy_strict ] + # The root CA should only sign intermediate certificates that match. + # See the POLICY FORMAT section of `man ca`. + countryName = match + stateOrProvinceName = match + organizationName = match + organizationalUnitName = optional + commonName = supplied + emailAddress = optional + [ req ] + # Options for the `req` tool (`man req`). + default_bits = 2048 + distinguished_name = req_distinguished_name + string_mask = utf8only + + # SHA-1 is deprecated, so use SHA-2 instead. + default_md = sha256 + # Extension to add when the -x509 option is used. + x509_extensions = v3_ca + [ req_distinguished_name ] + countryName = Country Name (2 letter code) + countryName_min = 2 + countryName_max = 2 + stateOrProvinceName = State or Province Name (full name) + localityName = Locality Name (eg, city) + 0.organizationName = Organization Name (eg, company) + organizationalUnitName = Organizational Unit Name (eg, section) + commonName = Common Name (eg, your website's domain name) + commonName_max = 64 + emailAddress = Email Address + emailAddress_max = 40 + # Optionally, specify some defaults. + countryName_default = GB + stateOrProvinceName_default = Hampshire + localityName_default = Southampton + 0.organizationName_default = Cortex Ltd + organizationalUnitName_default = We Are CORTEX + commonName_default = Cortex CA + emailAddress_default = Hello@WeAreCORTEX.com + [ v3_ca ] + # Extensions for a typical CA (`man x509v3_config`). + subjectKeyIdentifier = hash + authorityKeyIdentifier = keyid:always,issuer + basicConstraints = critical, CA:true + keyUsage = critical, digitalSignature, cRLSign, keyCertSign + ``` + + 1. Save the file as `ca.cnf` in the directory created for the certificates above. + 1. In the PowerShell window, run the following command: + + ```powershell + openssl req -sha256 -x509 -new -nodes -key cortexCA.key -days 3650 -out cortexCA.pem -config ca.cnf + ``` + + 1. Press `Enter` for all parameters except the Common Name. For this enter `Cortex CA`. + +1. Package your public and private key in a pkcs12 encrypted file (to install with certmgr on windows) by running the following command: + + ```powershell + openssl pkcs12 -export -inkey cortexCA.key -in cortexCA.pem -out cortexCA.pfx + ``` + +1. Enter a memorable string as the Export Password when asked, this will be needed when adding the certificate to certmgr. +1. Double click on the `cortexCA.pfx` file in the certificates folder to import the certificate into the Windows Certificate Store. Perform the following steps: + 1. Select `Local Machine` then click `Next`. + 1. Click `Next`. + 1. Enter the Export Password which the certificate was generated with then click `Next`. + 1. Select `Place all certificates in the following store`. + 1. Click `Browse…`. + 1. Select `Trusted Root Certification Authorities`, click `OK` then click `Next`. + 1. Click `Finish`. + +## Generate the Certificate + +1. Create a private key for the SSL cert by running the following command: + + ```powershell + openssl genrsa -out cortex.key 2048 + ``` + +1. Generate the SSL certificate request: + 1. Copy the following text into a text editor: + + ```shell + RANDFILE = .rnd + [ ca ] + default_ca = CA_default # The default ca section + [ CA_default ] + # SHA-1 is deprecated, so use SHA-2 instead. + default_md = sha256 + policy = policy_loose + [ policy_loose ] + # Allow the intermediate CA to sign a more diverse range of certificates. + # See the POLICY FORMAT section of the `ca` man page. + countryName = optional + stateOrProvinceName = optional + localityName = optional + organizationName = optional + organizationalUnitName = optional + commonName = supplied + emailAddress = optional + [ req ] + # Options for the `req` tool (`man req`). + default_bits = 2048 + distinguished_name = req_distinguished_name + string_mask = utf8only + # SHA-1 is deprecated, so use SHA-2 instead. + default_md = sha256 + # Extension to add when the -x509 option is used. + x509_extensions = v3_req + req_extensions = v3_req + [ req_distinguished_name ] + countryName = Country Name (2 letter code) + countryName_min = 2 + countryName_max = 2 + stateOrProvinceName = State or Province Name (full name) + localityName = Locality Name (eg, city) + 0.organizationName = Organization Name (eg, company) + organizationalUnitName = Organizational Unit Name (eg, section) + commonName = Common Name (eg, your website's domain name) + commonName_max = 64 + emailAddress = Email Address + emailAddress_max = 40 + # Optionally, specify some defaults. + countryName_default = GB + stateOrProvinceName_default = Hampshire + localityName_default = Southampton + 0.organizationName_default = Cortex Ltd + organizationalUnitName_default = We Are CORTEX + commonName_default = CortexServerCertificate + emailAddress_default = Hello@WeAreCORTEX.com + [ v3_req ] + basicConstraints = CA:FALSE + keyUsage = nonRepudiation, digitalSignature, keyEncipherment + subjectAltName = @alt_names + [ alt_names ] + # Specify all DNS and/or IP addresses that clients can use to access the secured resource. + DNS.1 = MACHINE-NAME + DNS.2 = FULLY QUALIFIED MACHINE NAME / WILDCARD DOMAIN NAME + DNS.3 = localhost + IP.1 = IP ADDRESS + IP.2 = 127.0.0.1 + ``` + + 1. Modify the section `[alt_names]` to include all the required DNS names and IP addresses that clients can use to access the secured resource. + Each DNS name or IP address entry must be suffixed with `.N` where `N` is the unique index of the DNS name or IP address entry; see below for examples: + | Resource URL | Configuration to add | + |---------------------------------------|-----------------------------------| + | `https://wearecortex.com/gateway` | `DNS.1 = wearecortex.com` | + | `https://internal.wearecortex.com/gateway` | `DNS.2 = internal.wearecortex.com`
`or`
`DNS.2 = *.wearecortex.com` | + | `https://10.0.0.0/gateway` | `IP.1 = 10.0.0.0` | + | `https://192.168.1.100/gateway` | `IP.2 = 192.168.1.100` | + + 1. Save the file as `san.cnf` in the directory created for the certificates above. + 1. In the PowerShell window, run the following command: + + ```powershell + openssl req -new -sha256 -key cortex.key -out cortex.req -extensions v3_req -config san.cnf + ``` + + 1. Press `Enter` for everything. The Common Name must stay as `CortexServerCertificate`. + 1. Sign the request with a previously generated Root CA by running the following command: + + ```powershell + openssl x509 -req -sha256 -in cortex.req -CA cortexCA.pem -CAkey cortexCA.key -CAcreateserial -out cortex.pem -days 3650 -extensions v3_req -extfile san.cnf + ``` + + 1. Package your public and private key in a pkcs12 encrypted file (to install with certmgr on windows) by running the following command: + + ```powershell + openssl pkcs12 -export -inkey cortex.key -in cortex.pem -out cortex.pfx + ``` + + 1. Enter a memorable string as the Export Password when asked, this will be needed when adding the certificate to certmgr. + +## Import the Certificate + +1. Double click on the `cortex.pfx` file in the certificates folder to get the certificate imported to the Windows Certificate Store. Perform the following steps: + 1. Select `Local Machine` then click `Next`. + 1. Click `Next`. + 1. Enter the Export Password which the certificate was generated with then click `Next`. + 1. Select `Place all certificates in the following store`. + 1. Click `Browse…`. + 1. Select `Personal`, click `OK` then click `Next`. + 1. Click `Finish`. diff --git a/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/advanced/ssl-best-practices.md b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/advanced/ssl-best-practices.md new file mode 100644 index 000000000..606c2a379 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/advanced/ssl-best-practices.md @@ -0,0 +1,9 @@ +--- +title: "SSL Best Practices" +linkTitle: "SSL Best Practices" +description: "Information about the recommended security settings for Innovation servers." +--- + +# {{% param title %}} + +{{< section "/advanced/ssl-best-practices.md" >}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/multiple-server-with-ha/_index.md b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/multiple-server-with-ha/_index.md new file mode 100644 index 000000000..8ada35ca1 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/multiple-server-with-ha/_index.md @@ -0,0 +1,12 @@ +--- +title: "Multiple Server - With HA (Recommended)" +linkTitle: "Multiple Server - With HA" +description: "Information about installing {{% ctx %}} Innovation across multiple on-premise servers with high availability (HA), including: information about components, supported architectures, prerequisites and installation instructions." +weight: 10 +--- + +{{% pageinfo %}} +Multiple server installations with HA are recommended for the following scenarios: + +* Production installations that are required to scale and support HA +{{% /pageinfo %}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/multiple-server-with-ha/architecture.md b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/multiple-server-with-ha/architecture.md new file mode 100644 index 000000000..ca58543b5 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/multiple-server-with-ha/architecture.md @@ -0,0 +1,30 @@ +--- +title: "Architecture" +linkTitle: "Architecture" +description: "Information about the recommended Innovation platform architecture, including component descriptions." +weight: 10 +--- + +# {{< param title >}} + +## Components + +{{< section "/architecture/components/multi-server.md" >}} + +## Recommended Architecture + +The following architecture requires 5 servers: + +* 1x Web Application Server which contains Gateway and the Debug Node +* 1x Load Balancer Server +* 3x Application Servers + +{{< figure src="/images/editable/Cortex Innovation Overview.png" class="centre" title="5 Server Architecture Diagram" >}} + +{{< section "/architecture/components/node-details.md" >}} + +## Next Steps? + +1. [Prerequisites][] + +[Prerequisites]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.Prerequisites" >}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/multiple-server-with-ha/install-application-and-loadbalancer-servers.md b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/multiple-server-with-ha/install-application-and-loadbalancer-servers.md new file mode 100644 index 000000000..257e57d0b --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/multiple-server-with-ha/install-application-and-loadbalancer-servers.md @@ -0,0 +1,334 @@ +--- +title: "Install Application Servers and Load Balancer" +linkTitle: "Install Application Servers and Load Balancer" +description: "Information about installing the Application Servers and Load Balancer Server." +weight: 30 +--- + +# {{% param title %}} + +This guide describes how to install the Application Servers and Load Balancer Server. Please ensure that the [Prerequisites for installing Innovation][] have been read before starting this installation. + +## Make Installation Artefacts Available + +1. Choose one of the Application Servers to be used for installation, and copy the following artefacts to a folder on it: + * Cortex Innovation {{< version >}} - App Server Install Scripts.zip + * Cortex Innovation {{< version >}} - App Services.zip + * Cortex Innovation {{< version >}} - Block Packages.zip + +1. Extract the `Cortex Innovation {{< version >}} - App Server Install Scripts.zip` file to a folder with the same name. + +## Install Microsoft .NET Framework 4.7.2 + +Microsoft Service Fabric requires a minimum of Microsoft .NET Framework 4.7.2 to be installed on each Application Server. + +To find the version of the framework that is installed: + +1. On the Start menu, choose `Run`. +1. In the open box, enter `regedit.exe`. You must have administrative credentials to run regedit.exe. +1. In the Registry Editor, open the subkey `HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full`. +1. If the `Full` subkey is not present, then you do not have the .NET Framework 4.5 or later installed. +1. Check for a `DWORD` value named `Release`. The existence of the Release DWORD indicates the .NET Framework 4.5 or newer has been installed on that computer. If the value is `461808` or over then at least .NET Framework 4.7.2 is installed and no further steps need to be taken. If it is not installed, continue with the following steps to install it. + +To install .NET Framework 4.7.2: + +1. Download the [.NET Framework 4.7.2][NET Framework 472] installer. +1. Double-click on the installer file to run it. +1. Follow the wizard to complete the installation. + +## Apply Recommended Security Measures + +These are non-compulsory security measures, recommended to be applied to Application Servers and the Load Balancer Server, in order to prevent potential attacks that exploit known industry security vulnerabilities. + +Applying these measures may impact other applications running on your servers. Therefore, it is your responsibility to ensure that other applications and their clients will not be affected by the changes. + +### Only Use Recommended Encryption Algorithms and TLS Protocols + +A collection of registry settings need to be applied to guarantee your server is only using the recommended encryption algorithms and TLS protocols. Information about these settings can be found at [SSL Best Practices][]. + +{{% alert type="warning" title="Warning" %}}Disabling specific TLS versions or specific Cipher Suites can have impact on {{% ctx %}} components themselves as well as their communication capabilities with third party systems and services, e.g. Execution Service executing flows with blocks which communicate with 3rd parties via PowerShell or REST. All parties communicating together must support a shared protocol version and cipher suite, otherwise they will not be able to establish a secure communication link between each other.{{% /alert %}} + +The settings can be applied by running a script. Be aware that each server will be restarted when the script is run. Apply the settings by following these instructions: + +1. Open a Windows PowerShell (x64) window as administrator. +1. Navigate PowerShell to inside the `Cortex Innovation {{< version >}} - App Server Install Scripts` folder using the following command, modifying the path as necessary: + + ```powershell + cd "C:\Install\Cortex Innovation {{< version >}} - App Server Install Scripts" + ``` + +1. Run the `Cortex.Innovation.Install.Multiple.SSLBestPractices.ps1` script using the following command, modifying the `ApplicationServers` value to contain the NETBIOS names or fully qualified domain names of the Application Servers and the `LoadBalancerServer` value to contain the NETBIOS names or fully qualified domain name of the Load Balancer Server (remove the `LoadBalancerServer` parameter if using an [alternative load balancer][]): + + ```powershell + .\Cortex.Innovation.Install.Multiple.SSLBestPractices.ps1 -ApplicationServers @("app-server1", "app-server2", "app-server3") -LoadBalancerServer "lb-server" + ``` + + {{% alert title="Note" %}} +To avoid answering all of the prompts `-Override 0` can be added to the end of the script. This will automatically apply all settings and forcibly restart the servers. + {{% /alert %}} + +1. A credentials prompt will appear. Enter credentials of a domain user that is a member of the local Administrators group on all servers (Application and Load Balancer) and press `OK`. + + If `-Override 0` has been specified no further steps need to be taken and you can move on to the next section when the servers have restarted. +1. To use all the recommended settings click `Apply all` to each `Apply Cortex recommended security best practices` prompt. + + To selectively apply each setting select `Choose which to apply`. Each change will then be prompted with a Yes/No confirmation before applying. This will need to be done for each server. +1. Restart each machine when the script asks. The current machine will be restarted last, the PowerShell script will close at this time. + +## Add Antivirus Exclusions + +If Windows Defender is not running on the Application Servers, ensure that the [Antivirus Exclusions][] have been added to the running antivirus software on each of the Application Servers and continue to the next section, otherwise follow these steps: + +1. Open a Windows PowerShell (x64) window as administrator. +1. Navigate PowerShell to inside the `Cortex Innovation {{< version >}} - App Server Install Scripts` folder using the following command, modifying the path as necessary: + + ```powershell + cd "C:\Install\Cortex Innovation {{< version >}} - App Server Install Scripts" + ``` + +1. Run the `Cortex.Innovation.Add.WindowsDefenderExclusions.ps1` script using the following command, modifying the `ApplicationServers` value to contain the NETBIOS names or fully qualified domain names of the Application Servers and the `LoadBalancerServer` value to contain the NETBIOS names or fully qualified domain name of the Load Balancer Server (remove the `LoadBalancerServer` parameter if using an [alternative load balancer][]): + + ```powershell + .\Cortex.Innovation.Add.WindowsDefenderExclusions.ps1 -ApplicationServers @("app-server1", "app-server2", "app-server3") -LoadBalancerServer "lb-server" + ``` + +1. A credentials prompt will appear. Enter credentials of a domain user that is a member of the local Administrators group on all Application Servers and press OK. +1. A message will indicate that the script has completed successfully. + +## Check Port Usage + +To check all necessary ports are free, follow these steps: + +1. Open a Windows PowerShell (x64) window as administrator. +1. Navigate PowerShell to inside the `Cortex Innovation {{< version >}} - App Server Install Scripts` folder using the following command, modifying the path as necessary: + + ```powershell + cd "C:\Install\Cortex Innovation {{< version >}} - App Server Install Scripts" + ``` + +1. Run the `Cortex.Innovation.Test.PortUsage.ps1` script using the following command, modifying the `ApplicationServers` value to contain the NETBIOS names or fully qualified domain names of the Application Servers and the `LoadBalancerServer` value to contain the NETBIOS names or fully qualified domain name of the Load Balancer Server (remove the `LoadBalancerServer` parameter if using an [alternative load balancer][]): + + ```powershell + .\Cortex.Innovation.Test.PortUsage.ps1 -ApplicationServers @("app-server1", "app-server2", "app-server3") -LoadBalancerServer "lb-server" + ``` + +1. A credentials prompt will appear. Enter credentials of a domain user that is a member of the local Administrators group on all Application Servers and press OK. + +1. If all ports are free, the script will report the following for each Application Server: + + `All ports required by Cortex Innovation are free` + + If this is the case, continue to the next section. Otherwise, consult the messages returned by the script, which will give details about how to modify the `Cortex.Innovation.Install.Config.json` configuration file, in the `Cortex Innovation {{< version >}} - App Server Install Scripts` folder, to use different ports. This will be used later during installation. + + The `Cortex.Innovation.Test.PortUsage.ps1` script cannot currently re-check modified ports in the configuration file so these need to be manually checked to see that they are free. + +## Configure Installation Script + +1. In the `Cortex Innovation {{< version >}} - App Server Install Scripts` folder, locate the `Cortex.Innovation.Install.ps1` script and open it with a text editor. +1. Choose the tab below that matches the configuration for this installation, then update the script to match, changing the parameters according to the details given below: + + {{< tabpane lang="powershell" >}} + {{< tab header="CA Certs, Built-in Load Balancer">}} +.\Cortex.Install.ps1 -ConfigFileName Cortex.Innovation.Install.Config.json ` + -AppServicesPath "C:\Install\Cortex Innovation {{< version >}} - App Services.zip" ` + -BlockPackagesPath "C:\Install\Cortex Innovation {{< version >}} - Block Packages.zip" ` + -ApiGatewayBasicAuthUsername "BasicAuthUser" ` + -ApiGatewayBasicAuthPassword '#_065077199197085!212123173135087074174142102155007175102029143220132038175026114248243207204119030125106032237087162060168108135168241247037070081~187087056217118!069132229129134129097089241180163#' ` + -CustomerName "Customer1" ` + -ApplicationServerIPv4Addresses @("192.168.1.1", "192.168.1.2", "192.168.1.3") ` + -LoadBalancerServerIPv4Address "192.168.1.4" ` + -ServerCertificatePath "C:\Install\Certificates\cert.pfx" ` + -ServerCertificatePassword '#_186224203199039!168155035100255155162114088105027~037077176064169!055142133197216213014226219148063#' ` + -ClientCertificatePath "C:\Install\Certificates\cert.pfx" ` + -ClientCertificatePassword '#_186224203199039!168155035100255155162114088105027~037077176064169!055142133197216213014226219148063#' ` + -Credential $Credential ` + -LdapConnectionDetails @{ + Host= "LDAP://ldapserver.fqdn.com:389" + UseSsl= $false + Username= "someUserName" + Password= '#_156218162004047!225018081008117174092221250099053~110194001237006!035122107175168133055021013201167#' + } ` + -AcceptEULA:$AcceptEula ` + *>&1 | Tee-Object -FilePath "cortex-ha-install-log.txt" + {{< /tab >}} + {{< tab header="Self-Signed Certs, Built-in Load Balancer" >}} +.\Cortex.Install.ps1 -ConfigFileName Cortex.Innovation.Install.Config.json ` + -AppServicesPath "C:\Install\Cortex Innovation {{< version >}} - App Services.zip" ` + -BlockPackagesPath "C:\Install\Cortex Innovation {{< version >}} - Block Packages.zip" ` + -ApiGatewayBasicAuthUsername "BasicAuthUser" ` + -ApiGatewayBasicAuthPassword '#_065077199197085!212123173135087074174142102155007175102029143220132038175026114248243207204119030125106032237087162060168108135168241247037070081~187087056217118!069132229129134129097089241180163#' ` + -CustomerName "Customer1" ` + -ApplicationServerIPv4Addresses @("192.168.1.1", "192.168.1.2", "192.168.1.3") ` + -LoadBalancerServerIPv4Address "192.168.1.4" ` + -UseSelfSignedCertificates ` + -Credential $Credential ` + -LdapConnectionDetails @{ + Host= "LDAP://ldapserver.fqdn.com:389" + UseSsl= $false + Username= "someUserName" + Password= '#_156218162004047!225018081008117174092221250099053~110194001237006!035122107175168133055021013201167#' + } ` + -AcceptEULA:$AcceptEula ` + *>&1 | Tee-Object -FilePath "cortex-ha-install-log.txt" + {{< /tab >}} + {{< tab header="CA Certs, Alternative Load Balancer" >}} +.\Cortex.Install.ps1 -ConfigFileName Cortex.Innovation.Install.Config.json ` + -AppServicesPath "C:\Install\Cortex Innovation {{< version >}} - App Services.zip" ` + -BlockPackagesPath "C:\Install\Cortex Innovation {{< version >}} - Block Packages.zip" ` + -ApiGatewayBasicAuthUsername "BasicAuthUser" ` + -ApiGatewayBasicAuthPassword '#_065077199197085!212123173135087074174142102155007175102029143220132038175026114248243207204119030125106032237087162060168108135168241247037070081~187087056217118!069132229129134129097089241180163#' ` + -CustomerName "Customer1" ` + -ApplicationServerIPv4Addresses @("192.168.1.1", "192.168.1.2", "192.168.1.3") ` + -ServerCertificatePath "C:\Install\Certificates\cert.pfx" ` + -ServerCertificatePassword '#_186224203199039!168155035100255155162114088105027~037077176064169!055142133197216213014226219148063#' ` + -ClientCertificatePath "C:\Install\Certificates\cert.pfx" ` + -ClientCertificatePassword '#_186224203199039!168155035100255155162114088105027~037077176064169!055142133197216213014226219148063#' ` + -SkipLoadBalancer ` + -Credential $Credential ` + -LdapConnectionDetails @{ + Host= "LDAP://ldapserver.fqdn.com:389" + UseSsl= $false + Username= "someUserName" + Password= '#_156218162004047!225018081008117174092221250099053~110194001237006!035122107175168133055021013201167#' + } ` + -AcceptEULA:$AcceptEula ` + *>&1 | Tee-Object -FilePath "cortex-ha-install-log.txt" + {{< /tab >}} + {{< tab header="Self-Signed Certs, Alternative Load Balancer" >}} +.\Cortex.Install.ps1 -ConfigFileName Cortex.Innovation.Install.Config.json ` + -AppServicesPath "C:\Install\Cortex Innovation {{< version >}} - App Services.zip" ` + -BlockPackagesPath "C:\Install\Cortex Innovation {{< version >}} - Block Packages.zip" ` + -ApiGatewayBasicAuthUsername "BasicAuthUser" ` + -ApiGatewayBasicAuthPassword '#_065077199197085!212123173135087074174142102155007175102029143220132038175026114248243207204119030125106032237087162060168108135168241247037070081~187087056217118!069132229129134129097089241180163#' ` + -CustomerName "Customer1" ` + -ApplicationServerIPv4Addresses @("192.168.1.1", "192.168.1.2", "192.168.1.3") ` + -UseSelfSignedCertificates ` + -SkipLoadBalancer ` + -Credential $Credential ` + -LdapConnectionDetails @{ + Host= "LDAP://ldapserver.fqdn.com:389" + UseSsl= $false + Username= "someUserName" + Password= '#_156218162004047!225018081008117174092221250099053~110194001237006!035122107175168133055021013201167#' + } ` + -AcceptEULA:$AcceptEula ` + *>&1 | Tee-Object -FilePath "cortex-ha-install-log.txt" + {{< /tab >}} + {{< /tabpane >}} + + {{% alert title="Important" color="warning" %}}Parameters required to be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}} must be encrypted on one of the servers specified in the {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.EncryptionRequirements" title="Encryption Requirements" >}} steps.{{% /alert %}} + + | Name | Description | + |----------------------------------------------|-------------| + |`AppServicesPath` | Configure this value with the location of the Application Services zip file on the Application Server used for installation. | + |`BlockPackagesPath` | Configure this value with the location of the Block Packages zip file on the Application Server used for installation. | + |`ApiGatewayBasicAuthUsername` | Configure this value with a username that can be used to make HTTPS requests to the API Gateway Service using Basic Authentication (e.g. starting flows). This username will be used by Gateway for all HTTPS requests to the API Gateway Service.

For security reasons it is recommended that the default value `BasicAuthUser` should be changed.

This value will be needed later, [when installing Gateway][Install Gateway].

This username can also be used by external services for HTTPS requests to the API Gateway Service but is not recommended; these requests should use an OAuth2 session for an authorised Active Directory user.{{< alert type="note" title="Note" >}} This parameter should be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}}| + |`ApiGatewayBasicAuthPassword` | Configure this value with the password for the username specified for `ApiGatewayBasicAuthUsername`.

For security reasons it is recommended that the default value should be changed.

This value will be needed later, [when installing Gateway][Install Gateway].{{< alert type="note" title="Note" >}} This parameter must be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}}| + |`CustomerName` | A name identifying the platform being installed. This must have no spaces or symbols. It will be appended to the node names that are displayed in Service Fabric Explorer. | + |`ApplicationServerIPv4Addresses` | The IPv4 addresses of the Application Servers. The first of these must be the Application Server used for installation. | + |`LoadBalancerServerIPv4Address` | The IPv4 address of the Load Balancer Server. This is only needed if using the built-in load balancer. | + |`ServerCertificatePath` | The local path of a .PFX certificate file on the first Application Server in the `ApplicationServerIPv4Addresses` list. Environment variables cannot be used.

This is only needed if installing with CA Certificates (Recommended). The certificate should meet the [Certificate Requirements][].

This certificate will be used for:
  • Securing communication between the Application Services.
  • Allowing Application Services to identify themselves to clients such as Gateway.
  • Preventing unauthorised nodes from joining the HA cluster.
  • Connecting to Service Fabric Explorer from each of the Application Servers.
{{< alert type="warning" title="Warning" >}}It is critical to set a reminder to {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.RolloverCertificates" title="update certificates" >}} in good time before they expire. If they expire then the platform will cease to function and {{< ahref path="Cortex.ServicePortal.MainDoc" title="CORTEX Service Portal" >}} must be contacted for support.{{< /alert >}}| + |`ServerCertificatePassword` | The password for the .PFX certificate file specified in `ServerCertificatePath`.

This is only needed if installing with CA Certificates (Recommended).{{< alert type="note" title="Note" >}} This parameter must be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}} | + |`ClientCertificatePath` | The local path of a .PFX certificate file on the first Application Server in the `ApplicationServerIPv4Addresses` list. This can be the same certificate as the `ServerCertificatePath`. Environment variables cannot be used.

This is only needed if installing with CA Certificates (Recommended) and using the Built-In Load Balancer. The certificate should meet the [Certificate Requirements][].

This certificate will be used for:
  • Securing communication between the load balancer and the nodes on the Application Servers.
{{< alert type="warning" title="Warning" >}}It is critical to set a reminder to {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.RolloverCertificates" title="update certificates" >}} in good time before they expire. If they expire then the platform will cease to function and {{< ahref path="Cortex.ServicePortal.MainDoc" title="CORTEX Service Portal" >}} must be contacted for support.{{< /alert >}} + |`ClientCertificatePassword` | The password for the .PFX certificate file specified in `ClientCertificatePath`.

This is only needed if installing with CA Certificates (Recommended) and using the Built-In Load Balancer.{{< alert type="note" title="Note" >}} This parameter must be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}} | + |`UseSelfSignedCertificates` | Installs Application Services and required infrastructure using generated Self-Signed Certificates rather than CA Certificates.

Not recommended for production use. | + |`SkipLoadBalancer` | Installs Application Services and required infrastructure without installing a load balancer. Use when using an alternative load balancer or no load balancer. | + |`Credential` | The credentials of the user which will be used to perform remote operations on the Application Servers. It must be a domain user that is a member of the local Administrators group on all servers.

This does not need to be changed, a prompt will appear to enter this information when the script is run. | + |`LdapConnectionDetails` | The connection details to the LDAP server.

This must be configured with a valid `Host`, `Username`, `Password`, and whether the LDAP server uses SSL using `UseSsl`. {{< alert type="note" title="Note" >}}The parameters `Host` and `Username` should be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}. The parameter `Password` must be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}} | + |`AcceptEULA` | This does not need to be changed, the EULA will be accepted at a later stage. | + |`FilePath` | The filename that installation logs are written to. If this should be written to a different location than where the installation files are then a full path should be specified. | + + The `ApiGatewayBasicAuthUsername` and `ApiGatewayBasicAuthPassword` will be needed later, [when installing Gateway][Install Gateway]. + + {{% alert title="Note" %}} +More advanced configuration (such as changing ports) can be undertaken by modifying the `Cortex.Innovation.Install.Config.json` file but this shouldn't be required for most installations. More information about this can be found at {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.AdvancedConfigMultipleServer" title="Advanced Application Server and Load Balancer Configuration Changes" >}}. + {{% /alert %}} + +1. Save and close `Cortex.Innovation.Install.ps1`. + +## Test Installation Script + +1. Open a Windows PowerShell (x64) window as administrator. +1. Navigate PowerShell to inside the `Cortex Innovation {{< version >}} - App Server Install Scripts` folder using the following command, modifying the path as necessary: + + ```powershell + cd "C:\Install\Cortex Innovation {{< version >}} - App Server Install Scripts" + ``` + +1. Type the following command into PowerShell: + + ```powershell + .\Cortex.Innovation.Install.ps1 -WhatIf + ``` + +1. Please read the End User Licence Agreement which can be found [here][Eula]. Once you agree to the terms, add the flag `-AcceptEULA` to the command entered above, e.g: + + ```powershell + .\.ps1 -WhatIf -AcceptEULA + ``` + +1. Run the PowerShell command to test the installation script. +1. A credentials prompt will appear. Enter credentials of a domain user that is a member of the local Administrators group on all servers (Application and Load Balancer) and press OK. +1. A password prompt will appear. Enter a password which will be used to create a user in RabbitMQ. +1. Wait for the command to finish. It will display the output of the installation command without making any changes to the system, to ensure things like communication between the servers are working. +1. Check that there have been no errors in the script; these would appear in red in the console. + + If there are no errors, continue to the next section; otherwise, check if the errors have any instructions for rectifying the issue and follow them. + + If there are no useful instructions, check that all previous steps have been followed correctly and, if not, rectify it and run the command again.

If this does not work, please contact [{{% ctx %}} Service Portal][CORTEX Service Portal] for further assistance. The `WhatIf` script will have created a temporary version of the config file in the script location, showing what changes would be made to it when the script runs. The name is appended with `-WhatIf` (e.g. `Cortex.Innovation.Install.Config-WhatIf.json`). This file can be provided when obtaining support. + +## Run Installation Script + +1. Type the following command into PowerShell: + + ```powershell + .\Cortex.Innovation.Install.ps1 + ``` + +1. Please read the End User Licence Agreement which can be found [here][Eula]. Once you agree to the terms, add the flag `-AcceptEULA` to the command entered above, e.g: + + ```powershell + .\.ps1 -AcceptEULA + ``` + +1. Run the PowerShell command to install HA Services and the required infrastructure. +1. A credentials prompt will appear. Enter credentials of a domain user that is a member of the local Administrators group on all servers (Application and Load Balancer) and press OK. +1. A password prompt will appear. Enter a password which will be used to create a user in RabbitMQ. This should be entered carefully and recorded as it may be needed if seeking support from [{{% ctx %}} Service Portal][CORTEX Service Portal]. Press OK. +1. Wait for the script to finish running. This should take approximately 10 minutes. +1. Check that there have been no errors in the script; these would appear in red in the console. + + If there are any errors, then please follow any instructions given within them to rectify the situation, check your configuration files, and retry the installation. + + In some circumstances, retrying may error due to components being installed already. In this case please run the following command, followed by the original installation command: + + ```powershell + .\Cortex.Innovation.Uninstall.ps1 + ``` + + If the errors do not give any instructions on how to rectify, see [Troubleshooting During Installation][] for further information; if this does not help then please contact [{{% ctx %}} Service Portal][CORTEX Service Portal] for assistance. + +## Check Application Services + +{{< section "/install-application-server/multi-server/check-application-services.md">}} + +## Preserve installation files + +{{< section "/preserve-installation-files.md">}} + +## Next Steps? + +1. [Install Web Application Server][] + +[alternative load balancer]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.AltLoadBalancer" >}} +[Antivirus Exclusions]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.AntivirusExclusions" >}} +[Certificate Requirements]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.CertificateRequirements" >}} +[CORTEX Encrypted]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" >}} +[CORTEX Service Portal]: {{< url path="Cortex.ServicePortal.MainDoc" >}} +[Encryption Requirements]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.EncryptionRequirements" >}} +[Eula]: {{< url path="Cortex.Website.Eula.MainDoc" >}} +[Install Gateway]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.ConfigureCortexGatewayInstallationScriptNew" >}} +[Install Web Application Server]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.InstallWebApplicationServer" >}} +[NET Framework 472]: {{< url path="MSDotNet.Framework472.MainDoc" >}} +[Prerequisites for installing Innovation]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.Prerequisites" >}} +[SSL Best Practices]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.SSLBestPractices" >}} +[Troubleshooting During Installation]: {{< url path="Cortex.Reference.Troubleshooting.Installation.TroubleshootingDuringInstallation" >}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/multiple-server-with-ha/install-web-application-server/_index.md b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/multiple-server-with-ha/install-web-application-server/_index.md new file mode 100644 index 000000000..a2bf8bace --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/multiple-server-with-ha/install-web-application-server/_index.md @@ -0,0 +1,10 @@ +--- +title: "Install the Web Application Server" +linkTitle: "Install Web Application Server" +description: "Information about installing the Web Application Server." +weight: 40 +--- + +This guide describes how to install the Web Application Server. Please ensure that [Install Application Servers and Load Balancer][] has been completed before starting this installation. + +[Install Application Servers and Load Balancer]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.InstallApplicationAndLoadBalancerServers" >}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/multiple-server-with-ha/install-web-application-server/perform-debugger-installation.md b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/multiple-server-with-ha/install-web-application-server/perform-debugger-installation.md new file mode 100644 index 000000000..e200454ac --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/multiple-server-with-ha/install-web-application-server/perform-debugger-installation.md @@ -0,0 +1,61 @@ +--- +title: "Install Flow Debugger" +linkTitle: "Install Flow Debugger" +description: "Information about installing the Flow Debugger." +weight: 20 +--- + +# {{% param title %}} + +This guide describes how to install the Flow Debugger on the Web Application Server. Please ensure that the [web application server prerequisites][] have been completed before starting this installation. + +{{% alert title="Important" color="warning" %}} +{{< ctx >}} Gateway requires a local instance of the Application Server components to enable the debugging of flows. +{{% /alert %}} + +## Install Microsoft .NET Framework 4.7.2 + +{{< section "/install-application-server/install-dot-net-framework.md">}} + +## Add Antivirus Exclusions + +If Windows Defender is not running on the server, ensure that the [Antivirus Exclusions][] have been added to the running antivirus software on the server and continue to the next section, otherwise follow these steps: + +{{< section "/install-application-server/single-server/add-antivirus-exclusions.md">}} + +## Check Port Usage + +{{< section "/install-application-server/single-server/check-port-useage.md">}} + +## Configure Installation Script + +{{< section "/install-web-application-server/add-innovation-only/configure-debugger-installation-script.md">}} + +## Test Installation Script + +{{< section "/install-application-server/single-server/test-installation-script.md">}} + +## Run Installation Script + +{{< section "/install-application-server/single-server/run-installation-script.md">}} + +## Add Read and Execute access to Windows Crypto folder + +{{< section "/install-application-server/single-server/add-permissions-to-crypto-folder.md">}} + +## Check Application Services + +{{< section "/install-application-server/single-server/check-application-services.md">}} + +# Preserve installation files + +{{< section "/preserve-installation-files.md">}} + +## Next Steps? + +1. [Install Gateway][] + +[Antivirus Exclusions]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.AntivirusExclusions" >}} +[Import Root Certificate]: {{< ref path="#import-root-certificate" >}} +[Install Gateway]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.GatewayInstallation" >}} +[web application server prerequisites]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.WebApplicationServerPrerequisites" >}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/multiple-server-with-ha/install-web-application-server/perform-gateway-installation.md b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/multiple-server-with-ha/install-web-application-server/perform-gateway-installation.md new file mode 100644 index 000000000..547e5e1a0 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/multiple-server-with-ha/install-web-application-server/perform-gateway-installation.md @@ -0,0 +1,133 @@ +--- +title: "Install Gateway" +linkTitle: "Install Gateway" +description: "Information about installing {{% ctx %}} Gateway." +weight: 30 +--- + +# {{% param title %}} + +This guide describes how to install {{% ctx %}} Gateway on the Web Application Server. Please ensure that the [Flow Debugger installation][] has been completed before starting this installation. + +## Perform Gateway Installation + +### Certificate Requirements + +It is possible for {{% ctx %}} Gateway to reuse the certificate used when [installing the Flow Debugger][Flow Debugger installation]; If doing so, you must [Assign a Certificate Friendly Name][Assign Certificate Friendly Name] and set the `ImportCertificate` parameter to `$false` when [configuring the {{% ctx %}} Gateway Installation Script][Install Gateway] to ensure use of the correct certificate and to prevent it from being overwritten. + +### Configure {{% ctx %}} Gateway Installation Script + +1. In the `Cortex Innovation {{< version >}} - Web App Server Install Scripts` folder, locate the `Cortex.Innovation.Install.Gateway.ps1` script and open it with a text editor. +1. Configure the script according to the details given below: + + ```powershell + .\Cortex.Install.Gateway.ps1 ` + -GatewayPackagePath "C:\Install\Cortex Innovation {{< version >}} - Gateway.zip" ` + -FeatureFlags "InnovationId" ` + -ServiceFabricApiGatewayEndpoint "https://server.domain.com/" ` + -ServiceFabricUsingSelfSignedCertificates $false ` + -ServiceFabricApiGatewayBasicAuthUsername "BasicAuthUser" ` + -ServiceFabricApiGatewayBasicAuthPassword '#_065077199197085!212123173135087074174142102155007175102029143220132038175026114248243207204119030125106032237087162060168108135168241247037070081~187087056217118!069132229129134129097089241180163#' ` + -DotNetFlowDebuggerEndpoint "https://server.domain.com:8722/api/" ` + -DotNetFlowDebuggerBasicAuthUsername "BasicAuthUser" ` + -DotNetFlowDebuggerBasicAuthPassword '#_065077199197085!212123173135087074174142102155007175102029143220132038175026114248243207204119030125106032237087162060168108135168241247037070081~187087056217118!069132229129134129097089241180163#' ` + -DotNetFlowDebuggerUsingSelfSignedCertificates $false ` + -GatewayApplicationPoolUsername "Domain\Username" ` + -WebRootFolder "C:\inetpub\wwwroot" ` + -WebsitePort "443" ` + -ImportCertificate $true ` + -CertificateFilePath "C:\Install\Certificate.pfx" ` + -CertificateFriendlyName "CertificateName" ` + -ConfigureSiteRedirect $true ` + -ApplySecurityMeasures $true ` + -UsingWindowsDefender $false ` + -AcceptEULA:$AcceptEula ` + *>&1 | Tee-Object -FilePath "cortex-gateway-install-log.txt" + ``` + + {{% alert title="Important" color="warning" %}}Parameters required to be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}} must be encrypted on one of the servers specified in the {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.EncryptionRequirements" title="Encryption Requirements" >}} steps.{{% /alert %}} + + | Name | Description | + |------------------------------------------------|-------------| + |`GatewayPackagePath` | Configure this value with the location of the `Cortex Innovation {{< version >}} - Gateway.zip` file on the installation server. | + |`FeatureFlags` | Replace `InnovationId` with the {{% ctx %}} Innovation feature identifier, which should have been provided by {{% ctx %}} when fulfilling the [Licensing Requirements][], if it wasn't it should be requested using [{{% ctx %}} Service Portal][CORTEX Service Portal].

This will set the `FeatureFlags` value in the Gateway web.config.| + |`ServiceFabricApiGatewayEndpoint` | Replace `server.domain.com` with the fully qualified domain name of the Load Balancer Server. The port should be specified if it is not the default HTTPS port (443), and there must be a trailing slash, e.g. `https://server.domain.com/` or `https://server.domain.com:8722/`.

This will set the `ServiceFabricApiGatewayEndpoint` value in the {{% ctx %}} Gateway web.config.| + |`ServiceFabricUsingSelfSignedCertificates` | Configure the value as `$false` if you used valid CA certificates when [installing the Application Servers][Configure Installation Script], `$true` if you used self-signed certificates.

This will set the `ServiceFabricUsingSelfSignedCertificates` value in the {{% ctx %}} Gateway web.config.| + |`ServiceFabricApiGatewayBasicAuthUsername` | This must be changed if you used a non-default `ApiGatewayBasicAuthUsername` when [installing the Application Servers][Configure Installation Script]; if so, this value must be configured to the one used.

This will set the `ServiceFabricApiGatewayBasicAuthUsername` value in the {{% ctx %}} Gateway web.config.{{< alert type="note" title="Note" >}} This parameter should be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}}| + |`ServiceFabricApiGatewayBasicAuthPassword` | This must be changed if you used a non-default `ApiGatewayBasicAuthPassword` when [installing the Application Servers][Configure Installation Script]; if so, this value must be configured to the one used.

This will set the `ServiceFabricApiGatewayBasicAuthPassword` value in the {{% ctx %}} Gateway web.config.{{< alert type="note" title="Note" >}} This parameter must be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}}| + |`DotNetFlowDebuggerEndpoint` | Replace `server.domain.com` with the fully qualified domain name of the Web Application Server.

This will set the `DotNetFlowDebuggerEndpoint` value in the {{% ctx %}} Gateway web.config.| + |`DotNetFlowDebuggerBasicAuthUsername` | This must be changed if you used a non-default `ApiGatewayBasicAuthUsername` when [installing the Debugger on the Web Application Server][Flow Debugger installation]; if so, this value must be configured to the one used.

This will set the `DotNetFlowDebuggerBasicAuthUsername` value in the {{% ctx %}} Gateway web.config.{{< alert type="note" title="Note" >}} This parameter should be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}}| + |`DotNetFlowDebuggerBasicAuthPassword` | This must be changed if you used a non-default `ApiGatewayBasicAuthPassword` when [installing the Debugger on the Web Application Server][Flow Debugger installation]; if so, this value must be configured to the one used.

This will set the `DotNetFlowDebuggerBasicAuthPassword` value in the {{% ctx %}} Gateway web.config.{{< alert type="note" title="Note" >}} This parameter must be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}}| + |`DotNetFlowDebuggerUsingSelfSignedCertificates` | Configure the value as `$false` if you are using valid CA certificates to secure the communication between {{% ctx %}} Gateway and the Debugger, `$true` if using self-signed certificates.

This will set the `DotNetFlowDebuggerUsingSelfSignedCertificates` value in the {{% ctx %}} Gateway web.config.| + |`GatewayApplicationPoolUsername` | Replace `Domain\Username` with the user that should be used to run the {{% ctx %}} Gateway application pool as configured in [Get {{% ctx %}} Gateway Application Pool User][Get CORTEX Gateway Application Pool User].| + |`WebRootFolder` | Replace this with the correct path for the Web Root Folder on the server. Typically this will be `C:\inetpub\wwwroot`.| + |`WebsitePort` | Replace this with the port that you wish the website to use. Typically this will be `443`.| + |`ImportCertificate` | Change this from `$true` to `$false` if you do not require the certificate to be imported as part of the installation process.

Note that if this is changed to `$false` you must [import the Root Certificate][Import Root Certificate] (if necessary), [import the X.509 certificate manually][Import Certificate Manually] and [assign a friendly name][Assign Certificate Friendly Name] prior to running the installation.| + |`CertificateFilePath` | Replace this with the location and filename for the certificate to be imported.

If `ImportCertificate` is set to `$false` this value can remain unchanged but you must [import the Root Certificate][Import Root Certificate] (if necessary), [import the X.509 certificate manually][Import Certificate Manually] and [assign a friendly name][Assign Certificate Friendly Name] prior to running the installation.| + |`CertificateFriendlyName` | Replace this with the friendly name that you would like to be allocated to the certificate.

If `ImportCertificate` is set to `$false` this must be [assigned][Assign Certificate Friendly Name] prior to running the installation and the Friendly Name used must be specified to allow the website to use the correct certificate.| + |`ConfigureSiteRedirect` | If the site hosting the {{% ctx %}} Gateway web application is a newly created Cortex site or an existing site that doesn’t have its own content, it is recommended to redirect the site URL to the {{% ctx %}} Gateway web application URL. The default behaviour of the script is to create a URL Rewrite redirect rule to achieve this.

To skip this rule creation change the value to `$false`.| + |`ApplySecurityMeasures` | Change this from `$true` to `$false` if you do not require the Recommended [Security Best Practices][] to be implemented as part of the installation process.| + |`UsingWindowsDefender` | Change this from `$false` to `$true` if you are using the Windows Defender firewall.

If Windows Defender is not being used but an alternative firewall is, it must be configured to allow communication inbound via TCP on the port configured for HTTPS (usually 443).| + |`AcceptEULA` | This does not need to be changed, the EULA will be accepted at a later stage. | + |`FilePath` | The filename that installation logs are written to. If this should be written to a different location than where the installation files are then a full path should be specified. | + +1. Save and close `Cortex.Innovation.Install.Gateway.ps1`. + +### Install {{% ctx %}} Gateway + +1. Open a Windows PowerShell (x64) window as administrator. +1. Navigate PowerShell to inside the `Cortex Innovation {{< version >}} - Web App Server Install Scripts` folder using the following command, modifying the path as necessary: + + ```powershell + cd "C:\Install\Cortex Innovation {{< version >}} - Web App Server Install Scripts" + ``` + +1. Type the following command into PowerShell: + + ```powershell + .\Cortex.Innovation.Install.Gateway.ps1 + ``` + +1. Please read the End User Licence Agreement which can be found [here][Eula]. Once you agree to the terms, add the flag `-AcceptEULA` to the command entered above, e.g: + + ```powershell + .\.ps1 -AcceptEULA + ``` + +1. Run the PowerShell command to install {{% ctx %}} Gateway. +1. If `ImportCertificate` is set to $true, and the file is of type `.pfx`, a prompt will appear for the certificate password. This should be entered, and then hit `Enter`. +1. A prompt will appear to enter the password for the user specified to run the {{% ctx %}} Gateway Application Pool. This should be entered, and then hit `Enter`. +1. Check that there have been no errors in the script; these would appear in red in the console. + + If there are any errors, then please follow any instructions given within them to rectify the situation, and retry the installation. + + If the errors do not give any instructions on how to rectify, please contact [{{% ctx %}} Service Portal][CORTEX Service Portal] for further assistance. + +1. Once the PowerShell script execution has completed, a prompt will appear to restart the machine. You can choose to restart now (`N`) or later (`L`). +1. In a browser, navigate to the {{% ctx %}} Gateway website, available at `://:/`, e.g. `https://localhost/gateway` and wait for the login page to load. + +### Grant additional folder permissions to the {{% ctx %}} Gateway Application Pool User + +{{< section "/install-web-application-server/add-innovation-only/grant-gateway-user-additional-folder-permissions.md">}} + +## Preserve installation files + +{{< section "/preserve-installation-files.md">}} + +## Next Steps? + +1. [Setup Gateway][] + +[Assign Certificate Friendly Name]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.AssignCertificateFriendlyNameNew" >}} +[Eula]: {{< url path="Cortex.Website.Eula.MainDoc" >}} +[Configure Installation Script]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.ConfigureInstallationScript" >}} +[CORTEX Encrypted]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" >}} +[CORTEX Service Portal]: {{< url path="Cortex.ServicePortal.MainDoc" >}} +[Flow Debugger installation]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.DebuggerInstallation" >}} +[Get CORTEX Gateway Application Pool User]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.GetGatewayAppPoolUser" >}} +[Import Certificate Manually]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.ImportCertificateManuallyNew" >}} +[Import Root Certificate]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.ImportRootCertificate" >}} +[Install Gateway]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.ConfigureCortexGatewayInstallationScriptNew" >}} +[Licensing Requirements]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.LicensingRequirements" >}} +[Security Best Practices]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.SSLBestPractices" >}} +[Setup Gateway]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.SetupGateway" >}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/multiple-server-with-ha/install-web-application-server/prerequisites.md b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/multiple-server-with-ha/install-web-application-server/prerequisites.md new file mode 100644 index 000000000..27525eb10 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/multiple-server-with-ha/install-web-application-server/prerequisites.md @@ -0,0 +1,104 @@ +--- +title: "Prerequisites" +linkTitle: "Prerequisites" +description: "Information about performing the prerequisities for the Web Application Server." +weight: 10 +--- + +# {{% param title %}} + +This guide describes how to install the Web Application Server. Please ensure that [Install Application Servers and Load Balancer][] has been completed before starting this installation. + +## Make Installation Artefacts Available + +{{% alert title="Note" %}} +We recommend that the single-node Service Fabric instance, used by {{% ctx %}} Gateway as a Debugger instance, and {{% ctx %}} Gateway are installed on the same Web Application Server. +{{% /alert %}} + +{{< section "/install-web-application-server/make-installation-artefacts-available.md">}} + +## Licensing + +{{< section "/install-web-application-server/add-innovation-only/licensing.md">}} + +## Get {{% ctx %}} Gateway Application Pool User + +A domain user account is required for the {{% ctx %}} Gateway application pool and must be created prior to performing the installation below. + +In line with best practices, this account should not be given administrator rights, nor should it be used for any purposes other than those specified for {{% ctx %}} Gateway. + +## Grant folder permissions to the {{% ctx %}} Gateway Application Pool User + +{{< section "/install-web-application-server/grant-gateway-user-folder-permissions.md">}} + +## Certificate Requirements + +The Flow Debugger and {{% ctx %}} Gateway require an X.509 SSL certificate to be installed on the Web Application Server. +
+For {{% ctx %}} Gateway, the certificate must have the following properties: + +* Enhanced Key Usage: `Server Authentication` and `Client Authentication` +* Subject Alternative Names (SAN): At minimum the FQDN of the server. It can also include NetBIOS Name, IP address, localhost, 127.0.0.1 + +If the user tries to navigate to an address not in the SAN list, then they will receive a certificate error. +
+For the Flow Debugger, the certificate must have the following properties: + +* Subject field must be in one of the following formats depending on whether a multi-domain or wildcard certificate is used: + * Multi-domain certificate - If using the [gobetween][] load balancer this should be specified as the FQDN of the load balancer server (e.g. `CN=load-balancer.domain.com`). If using a different load balancer this must be specified as the FQDN of one of the application servers (e.g. `CN=application-server.domain.com`) + * Wildcard certificate - wildcard format, pertaining to the domain of the Application Servers (e.g. `CN=*.domain.com`). +* Subject alternative names must include any additional host names that should be able to be used to access the API Gateway Service. Additionally if using a multi-domain certificate: + * The FQDN, NetBIOS Name and IP address of the web application server and all application servers must be added. +* Certificate file must be in a .PFX file format, with a known password. +* Certificate file must contain the full chain of certificates. +* Certificate file must include the private key. +* Key Usage extension must have a value of `Digital Signature, Key Encipherment (a0)`. +* Enhanced Key Usage must include `Server Authentication` and `Client Authentication`. + +{{% alert title="Important" color="warning" %}} +Multi-domain certificates, wildcard certificates, auto-generated self-signed certificates and {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.CreateSelfSignedCertificates" title="manually created self-signed certificates" >}} can be used. However, self-signed certificates are not recommended for production instances. +
+It is possible to reuse the Flow Debugger certificate for {{% ctx %}} Gateway; If doing so, you must {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.AssignCertificateFriendlyNameNew" title="Assign a Certificate Friendly Name" >}} after the debugger has been installed and set the `ImportCertificate` parameter to `$false` in {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.ConfigureCortexGatewayInstallationScriptNew" title="Configure CORTEX Gateway Installation Script" >}} to ensure use of the correct certificate and to prevent it from being overwritten. +{{% /alert %}} + +### Import Root Certificate + +{{% alert title="Note" %}}This step is only required if using a self-signed certificate signed by your own Root Certificate e.g. OpenSSL. If this is not the case proceed to {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.ImportCertificateManuallyNew" title="Import Certificate Manually" >}} {{% /alert %}} + +This step must be carried out prior to the installation otherwise the URL validation will fail. In order to import the Root Certificate, ensure that the file is in a known location on this server and complete the following steps: + +1. Using Windows File Explorer navigate to the location of the Root Certificate file. +1. Double click on the Root Certificate file to import the certificate into the Windows Certificate Store. Perform the following steps: + + 1. Select `Local Machine` then click `Next`. + 1. Click `Next`. + 1. Enter the Export Password which the certificate was generated with then click `Next`. + 1. Select `Place all certificates in the following store`. + 1. Click `Browse…`. + 1. Select `Trusted Root Certification Authorities`, click `OK` then click `Next`. + 1. Click `Finish`. + 1. [Import][Import Certificate Manually] the X.509 SSL certificate. + +### Import Certificate Manually + +{{% alert title="Note" %}}The certificate can be imported automatically by setting the `ImportCertificate` parameter to `$true` in {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.ConfigureCortexGatewayInstallationScriptNew" title="Configure CORTEX Gateway Installation Script" >}}. If importing the certificate automatically proceed to {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.DebuggerInstallation" title="Install Flow Debugger" >}}

If the certificate has previously been imported you must {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.AssignCertificateFriendlyNameNew" title="assign a friendly name" >}}.{{% /alert %}} + +To import the certificate manually follow the below steps: + +1. Locate the certificate file on the machine and right-click on the file. +1. Select `Install Certificate`. +1. Follow the Wizard and when prompted, ensure you import it into the `Local Machine` store and not `Current User`. +1. Assign the imported certificate a [friendly name][Assign Certificate Friendly Name]. + +### Assign Certificate Friendly Name + +{{< section "/install-web-application-server/add-innovation-only/assign-certificate-friendly-name.md">}} + +## Next Steps? + +1. [Install Flow Debugger][] + +[Assign Certificate Friendly Name]: {{< ref "#assign-certificate-friendly-name" >}} +[Import Certificate Manually]: {{< ref "#import-certificate-manually" >}} +[Install Application Servers and Load Balancer]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.InstallApplicationAndLoadBalancerServers" >}} +[Install Flow Debugger]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.DebuggerInstallation" >}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/multiple-server-with-ha/prerequisites.md b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/multiple-server-with-ha/prerequisites.md new file mode 100644 index 000000000..bced5c869 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/multiple-server-with-ha/prerequisites.md @@ -0,0 +1,304 @@ +--- +title: "Prerequisites" +linkTitle: "Prerequisites" +description: "Information about the prerequisites required on each server type for installation." +weight: 20 +--- + +# {{% param title %}} + +The prerequisites required for each server role (as described in [Architecture][]) are laid out in this guide. These must be considered before undertaking installation. + +## Hardware Requirements + +{{% alert title="Note" %}}The recommended number of servers is 5, and allows each server role instance to be installed on its own server.{{% /alert %}} + +| Server Role | Servers Required | CPU Cores (> 2GHz) | RAM (GB) | Disk (GB) | +|------------------|-----------------------|-----------------------------------|---------------|----------------------| +| Load Balancer | 1[^1] | 4+ *Recommended*
2 *Minimum* | 8+ *Recommended*
4 *Minimum* | 50+ *Recommended*
30 *Minimum*
5+ free on installation drive | +| Application Server | 3 *Bronze availability*[^2]
5 *Silver availability*
7 *Gold availability*
9 *Platinum availability* | 4+ *Recommended*
2 *Minimum* | 16+ *Recommended*
8 *Minimum* | 75+ *Recommended*
60 *Minimum*
40+ free on %ProgramData% drive | +| Web Application Server | 1 | 4+ *Recommended*
2 *Minimum* | 16+ *Recommended*
12 *Minimum* | 150+ *Recommended*
100 *Minimum*
30+ free on installation drive
40+ free on %ProgramData% drive | + +[^1]: A software-based load balancer called [gobetween][] is provided with the platform. This must be installed on its own server as it doesn't support routing traffic to itself. It also doesn't currently support HA, but it may be possible to use multiple gobetween load balancers with Anycast network addressing and routing to provide high availability, as described in [https://en.wikipedia.org/wiki/Anycast][Anycast]; however, this has not been verified yet. It is possible to use an [alternative load balancer][] to the one provided. +[^2]: Application Servers support HA via clustering. A cluster must consist of a minimum of 3 nodes, and the number of nodes must be an odd number to ensure a quorum. Currently only the Bronze availability (3 nodes) is supported. Silver, Gold and Platinum support will be added in future. + +## Software Requirements + +| Server Role | Windows Server[^3] | .Net | PowerShell[^4] | IIS[^5] | Other Software | +|------------------|-------------------------|------|------------|---------|----------| +| Load Balancer | [2022 (x64)][Microsoft Server 2022] *Recommended*
[2019 (x64)][Microsoft Server 2019] | [Framework 4.7.2][NET Framework 472] | 5.1 | | +| Application Server | [2022 (x64)][Microsoft Server 2022] *Recommended*
[2019 (x64)][Microsoft Server 2019] | [Framework 4.7.2][NET Framework 472] | 5.1 | | +| Web Application Server | [2022 (x64)][Microsoft Server 2022] *Recommended*
[2019 (x64)][Microsoft Server 2019] | [Framework 4.7.2][NET Framework 472] | 5.1 | 10.0.20348[^6]
10.0.17763[^7]
[URL Rewrite Module 2.1][IIS Url Rewrite] | [Microsoft Web Deploy 3.0 or later][Web Deploy]
[Visual C++ Redistributable 2013 (x64)][C++ Redistributable] | + +[^3]: Windows Server Standard and Datacenter editions are supported. Filesystem **must be NTFS** and networking **must use IPv4**. Linux is not supported, but may be in the future. +[^4]: PowerShell 5.1 ships with Windows Server 2019 and 2022. +[^5]: IIS is supported; other web servers, including IIS Express are not supported. +[^6]: Ships as a windows role within Windows Server 2022. +[^7]: Ships as a windows role within Windows Server 2019. + +## Domain Requirements + +All servers must be on the same domain and cannot be domain controllers. + +## Active Directory Requirements + +For Gateway, only Windows domains with an Active Directory domain controller running Active Directory Domain Services are supported. + +Supported versions of Active Directory are listed below: + +| Version | Verified? | Supported From | Supported Until | +|----------------------------|----------------|----------------|------------------| +| Windows Server 2003 | ✓ | {{% ctx %}} v2022.9 | To be evaluated | +| Windows Server 2003 R2 | | {{% ctx %}} v2022.9 | To be evaluated | +| Windows Server 2008 | | {{% ctx %}} v2022.9 | To be evaluated | +| Windows Server 2008 R2 | ✓ | {{% ctx %}} v2022.9 | To be evaluated | +| Windows Server 2012 | | {{% ctx %}} v2022.9 | To be evaluated | +| Windows Server 2012 R2 | ✓ | {{% ctx %}} v2022.9 | To be evaluated | +| Windows Server 2016 | ✓ | {{% ctx %}} v2022.9 | To be evaluated | +| Windows Server 2019 | | {{% ctx %}} v2022.9 | To be evaluated | +| Windows Server 2022 | | {{% ctx %}} v2022.9 | To be evaluated | + +## DNS Requirements + +The installation requires IP to hostname resolution to be available. Please ensure that you have the appropriate pointer (PTR) records configured on the DNS server for all of your servers (Web, Application and Load Balancer). + +## Licensing Requirements + +A valid {{% ctx %}} licence file and {{% ctx %}} Innovation feature identifier must be procured from {{% ctx %}}. The feature identifier is a GUID which will be used when configuring the Gateway installation. The licence file is needed when installing the Web Application server and it should contain fingerprints for the Web Application Server and each Application Server. + +To get a licence file and feature identifier take the following steps: + +1. Copy the following template to a text file: + + ```text + Web Application Server + MachineID: + Fingerprint: + + Application Server 1 + MachineID: + Fingerprint: + + Application Server 2 + MachineID: + Fingerprint: + + Application Server 3 + MachineID: + Fingerprint: + + Please also include a suitable {{% ctx %}} Innovation feature identifier. + ``` + +1. Extract `Cortex Innovation {{< version >}} - Licence Fingerprint Generator.zip`. +1. From that folder, copy `Cortex.Licensing.FingerprintGeneration.exe` to the Web Application server. +1. Double-click `Cortex.Licensing.FingerprintGeneration.exe` to run it. A command line window will appear, containing a machine identifier and fingerprint, e.g: + + ```text + MachineID: WEBAPP-SERVER + Fingerprint: 111118BA104C928319E0CBAE30844CF8B7FD8BC414D1567844D1D0830089F1C9BF5C6 + ``` + +1. Copy the output (machine identifier and fingerprint) to the `Web Application Server` section of the text file created in the initial step. Note that the machine identifier can be changed to any string, provided that it is different for each server. +1. For each Application Server take the following steps: + 1. Copy `Cortex.Licensing.FingerprintGeneration.exe` to the Application server. + 1. Double-click `Cortex.Licensing.FingerprintGeneration.exe` to run it. A command line window will appear, containing a machine identifier and fingerprint, e.g: + + ```text + MachineID: APP-SERVER1 + Fingerprint: 111118BA104C928319E0CBAE30844CF8B7FD8BC414D1567844D1D0830089F1C9BF5C6 + ``` + + 1. Copy the output (machine identifier and fingerprint) to one of the `Application Server` sections of the text file created in the initial step. Note that the machine identifier can be changed to any string, provided that it is different for each server. +1. Request a licence and feature identifier by raising a case in the [{{% ctx %}} Service Portal][CORTEX Service Portal], including the contents of the text file containing all of the fingerprint and machine information in the body of the case. +1. When the licence and feature identifier have arrived, copy the file `Cortex.lic` to `%ProgramData%\Cortex\Licences` on the Web Application Server, creating the `Cortex` and `Licences` folders if they don't exist. Save the feature identifier for use when [Installing Gateway][]. + +## Web Browser Requirements + +Gateway supports the latest versions of the following browsers: + +* Chrome +* Edge +* Firefox + +## Filesystem Requirements + +The Web Application Server, each Application Server and [gobetween][] Load Balancer Server (if used) must: + +* use an NTFS filesystem. +* enable Network Discovery and File Sharing + +To enable Network Discovery and File Sharing: +1. Open File Explorer. +2. Click `Network` on the left. +3. A banner similar to the following will appear if Network Discovery and File Sharing is turned off: + {{< figure src="/images/Network Discovery 1.png" title="Network and File Discovery Disabled" >}} +4. Click the banner. +5. Click `Turn on network discovery and file sharing`: + {{< figure src="/images/Network Discovery 2.png" title="Enable Network and File Discovery" >}} + +## Service Requirements + +On the Web Application Server and each Application Server, the following Windows Services must be running: + +* Performance Logs & Alerts +* Remote Registry +* Windows Event Log + +## Security Requirements + +### Installation User + +On all Application Servers, Web Application Server and Load Balancer Server, a domain user, which is a member of the Local Administrators group, must be available to run the installation scripts. This is a prerequisite of Microsoft Service Fabric, which is the HA platform that {{% ctx %}} Innovation is built upon. + +### IIS Application Pool User + +For Gateway, a domain user must be available to run the IIS Application Pool. This user must be given `Log on as a service` and `Log on as a batch job` permissions otherwise the Application Pool will not be able to run. Information about how to do this will be given during installation. + +### Antivirus Exclusions + +It is advised (by Microsoft Service Fabric) that the following antivirus exclusions are created on the Web Application Server and each Application Server to reduce antivirus processing on Service Fabric artefacts: + +Folder Exclusions: + +* %ProgramFiles%\Microsoft Service Fabric +* %ProgramData%\SF +* %ProgramData%\SF\Logs + +Process Exclusions: + +* Fabric.exe +* FabricHost.exe +* FabricInstallerService.exe +* FabricSetup.exe +* FabricDeployer.exe +* ImageBuilder.exe +* FabricGateway.exe +* FabricDCA.exe +* FabricFAS.exe +* FabricUOS.exe +* FabricRM.exe +* FileStoreService.exe + +If you are using a built-in load balancer, it is advised that the following antivirus exclusions are created on the Load Balancer Server to reduce antivirus processing on service health checks: + +Process Exclusions: + +* gobetween.exe +* Cortex.Installation.HealthCheck.exe + +A script is provided during installation to add these exclusions for Windows Defender. If any other antivirus software is running, these will need to be added manually. + +If adding the exclusions manually, the Process Exclusions should be done before installation occurs, as the processes will be used during installation of the application and antivirus software can cause the installation to fail or timeout. Folder Exclusions may need to be added after installation has occurred as some antivirus software needs the folders to exist. + +### Port Requirements + +{{% ctx %}} Innovation and Microsoft Service Fabric require a range of [firewall ports to be opened][Port Requirements] between the servers and specific services. + +If you are using Windows Firewall, some ports are opened during installation and others are opened dynamically as needed. If any other firewall is used, it will be necessary to add the rules described in [Port Requirements][] to open the correct ports. + +The `Cortex.Innovation.Test.PortUsage.ps1` script is provided during installation to test the ports on the Web Application Server and each Application Server and make sure they do not overlap with any other programs; most ports may be altered if this is the case, the description will say if this is not possible. + +### Certificate Requirements + +{{< alert title="Important" color="warning" >}}It is critical to set a reminder to {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.RolloverCertificates" title="update certificates" >}} in good time before they expire. If they expire then the platform will cease to function and {{< ahref path="Cortex.ServicePortal.MainDoc" title="CORTEX Service Portal" >}} must be contacted for support.{{< /alert >}} + +#### Application Servers + +{{% alert title="Note" %}} +For production systems it is recommended that X.509 SSL multi-domain or wildcard certificates are obtained from a Certificate Authority and used for installation. For non-production systems, certificates can be omitted from installation and it will create and use self-signed certificates. This may prevent 3rd parties that require valid certificate verification to access the API Gateway Service. +{{% / alert %}} + +An X.509 SSL multi-domain or wildcard certificate should be used to: + +* Secure communication between the load balancer and the nodes on the Application Servers. +* Secure communication between the Application Services. +* Allow Application Services to identify themselves to clients such as Gateway. +* Prevent unauthorised nodes from joining the HA cluster. +* Connect to Service Fabric Explorer from each of the Application Servers. + +The certificate can be obtained from a Certificate Authority, such as [Let’s Encrypt](), and must meet the following requirements: + +* Subject field must be in one of the following formats depending on whether a multi-domain or wildcard certificate is used: + * Multi-domain certificate - If using the [gobetween][] load balancer this should be specified as the FQDN of the load balancer server (e.g. `CN=load-balancer.domain.com`). If using a different load balancer this must be specified as the FQDN of one of the application servers (e.g. `CN=application-server.domain.com`) + * Wildcard certificate - wildcard format, pertaining to the domain of the Application Servers (e.g. `CN=*.domain.com`). +* Subject alternative names must include any additional host names that should be able to be used to access the API Gateway Service. Additionally if using a multi-domain certificate: + * The FQDN, NetBIOS Name and IP address of all application servers must be added. + * Optionally, the FQDN, NetBIOS Name and IP address of the web application server must be added if the same certificate will be used for the [web application server][]. +* Certificate file must be in a .PFX file format, with a known password. +* Certificate file must contain the full chain of certificates. +* Certificate file must include the private key. +* Key Usage extension must have a value of `Digital Signature, Key Encipherment (a0)`. +* Enhanced Key Usage must include `Server Authentication` and `Client Authentication`. + +This file should be placed in a known location on the Application Server where the installation scripts will be run. This location will be required when running the installation script. + +If required, a separate X.509 SSL certificate can be obtained to be used by the load balancer to communicate with the Application Services. It must meet all of the other requirements laid out above, except the subject field can also be the FQDN of the load balancer (e.g. `CN=load-balancer.domain.com`). + +#### Web Application Server + +{{% ctx %}} Gateway requires an X.509 SSL certificate to be installed on the Web Application Server. This can be the same certificate as used for the application servers or a different certificate. + +The certificate must have the following properties: + +* Enhanced Key Usage: `Server Authentication` and `Client Authentication` +* Subject Alternative Names (SAN): At minimum the FQDN of the Server. It can also include NetBIOS Name, IP address, localhost, 127.0.0.1 + +If the user tries to navigate to an address not in the SAN list, then they will receive a certificate error. + +{{% alert title="Important" color="warning" %}} +Multi-domain certificates, wildcard certificates, auto-generated self-signed certificates and {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.CreateSelfSignedCertificates" title="manually created self-signed certificates" >}} can be used. However, self-signed certificates are not recommended for production instances. +{{% /alert %}} + +More information about importing the certificate is given during installation. + +### TLS Requirements + +There is a set of non-compulsory security measures, recommended to be applied to the Web Application Server and each Application Server, in order to prevent potential attacks that exploit known industry security vulnerabilities. This includes disabling all versions of SSL and TLS apart from TLS 1.2. And disabling all cipher suites apart from the following: + +* TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 +* TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 + +See [SSL Best Practices][] for a full list of the security changes which will be applied. + +A script is provided during installation to apply these security changes: + +* For the Application servers: `Cortex.Innovation.Install.Multiple.SSLBestPractices.ps1` +* For the Web Application Server: `Cortex.Innovation.Install.SSLBestPractices.ps1` + +### Encryption Requirements + +{{< section "/prerequisites/install-innovation-only/multi-server/encryption-requirements.md">}} + +## Alternative Load Balancer Requirements + +Innovation has a [gobetween][] load balancer included that isn't highly available; It is possible to use an alternative. The requirements for installing an alternative load balancer are as follows: + +* Must support a round robin (or similar) method of load balancing to specified ports on 3 nodes. +* Must be able to health check each node by running a predefined batch script (`ApiGatewayTypeHealthcheck.bat`, which resides in the `gobetween` folder of the `Cortex Innovation {{< version >}} - App Server Install Scripts`) that returns 1 for healthy and 0 for unhealthy. +* Must be able to access each of the Application Servers via HTTPS. +* Ideally it should support UDP to use the SNMP functionality of the [Triggers Service][TriggersService]. +* Ideally it should be highly available to avoid a single point of failure in the system. + +## Next Steps? + +1. [Install Application Servers and Load Balancer][] + +[alternative load balancer]: {{< ref "#alternative-load-balancer-requirements" >}} +[Anycast]: {{< url path="Anycast.MainDoc" >}} +[Architecture]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.Architecture" >}} +[C++ Redistributable]: {{< url path="MSDownload.CPlusPlusRedistributable.2013" >}} +[Create Self-Signed Certificates]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.CreateSelfSignedCertificates" >}} +[CORTEX Service Portal]: {{< url path="Cortex.ServicePortal.MainDoc" >}} +[gobetween]: {{< url path="GoBetween.MainDoc" >}} +[IIS Url Rewrite]: {{< url path="IIS.Downloads.UrlRewrite-2_1" >}} +[Install Application Servers and Load Balancer]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.InstallApplicationAndLoadBalancerServers" >}} +[Installing Gateway]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.ConfigureCortexGatewayInstallationScriptNew" >}} +[Microsoft Server 2019]: {{< url path="MSEval.WindowsServer.2019" >}} +[Microsoft Server 2022]: {{< url path="MSEval.WindowsServer.2022" >}} +[NET Framework 472]: {{< url path="MSDotNet.Framework472.MainDoc" >}} +[Port Requirements]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.PortRequirements" >}} +[SSL Best Practices]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.SSLBestPractices" >}} +[TriggersService]: {{< url path="Cortex.Guides.CortexInnovation.CoreApplication.Services.TriggersService.MainDoc" >}} +[web application server]: {{< ref "#web-application-server" >}} +[Web Deploy]: {{< url path="MSDownload.WebDeploy" >}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/multiple-server-with-ha/setup-gateway.md b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/multiple-server-with-ha/setup-gateway.md new file mode 100644 index 000000000..be52563aa --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/multiple-server-with-ha/setup-gateway.md @@ -0,0 +1,84 @@ +--- +title: "Setup Gateway" +linkTitle: "Setup Gateway" +description: "Information about setting up {{% ctx %}} Gateway for first-time use." +weight: 50 +--- + +# {{% param title %}} + +This guide describes how to setup Gateway. Please ensure that the [Gateway Installation][] has been completed before taking these steps. + +## Gateway Initial Setup + +Log on to Gateway and run through the setup wizard: + +1. Open a [supported web browser][] and navigate to `://:/`, e.g. `https://server.domain.com/gateway`. + + If an error message is displayed in the browser, wait a few minutes and refresh the page as it is possible that the website was still starting. +1. Log on using the default credentials that Gateway deploys with: + + Username: `administrator` + + Password: `Adm1n1strat0r` +1. On a newly installed system, you will be presented with a Setup Wizard at this point, which will guide you through some basic configuration steps: + * [Account Details] + * [LDAP Connection] + * [LDAP Authorisation] +1. Follow the steps in the setup wizard to configure the relevant areas: + + ### Account Details + + 1. Click `Next Step`: + {{< figure class="centre" src="/images/Gateway Setup1.png" title="Initial Setup Screen" >}} + 1. Enter an email address for the Administrator and click `Next Step`: + {{< figure class="centre" src="/images/Gateway Setup2.png" title="Administrator Details Screen" >}} + 1. Change the Administrator password to a unique, secret password and click `Next Step`: + {{< figure class="centre" src="/images/Gateway Setup3.png" title="Change Password Screen" >}} + + ### LDAP Connection + + 1. Enter the details of your Active Directory server and provide a Username and Password for a user with read access to it: + + A connection to an Active Directory server must be established in order to assign authorisation rights to users. + 1. In the `Server` field, enter the Hostname, FQDN or IP Address of the Active Directory server that Gateway should use to authenticate and authorise users. + 1. In the `Port` field, enter the port number of the Active Directory server. The well-known port for LDAP traffic is `389`; if SSL encryption is used, the well-known port is `636`. + 1. If an SSL connection is to be used, tick the box `Use SSL`. + 1. In the `Username` field, enter a valid username of a user that has read permissions for the Active Directory server. + 1. In the `Password` field, enter the password of the user entered in the previous step. + 1. To reduce the scope of any Active Directory searches, add one or more base DNs (Distinguished Names). For each base DN click `Add` and enter the full LDAP path e.g `CN=group, OU=organisational unit, DC=domain, DC=com`. These will be used as the roots of any Active Directory searches performed. For more information about distinguished names see . + 1. Click `Test Connection` to validate the connection and the user credentials entered and click `Next Step`. + + {{< figure class="centre" src="/images/Gateway Setup4.png" title="LDAP Connection Screen" >}} + + ### LDAP Authorisation + + 1. If the authorisation grid fails to load first time round, click `Retry`. + 1. Assign access permissions to Active Directory groups: + + To allow users to access the various roles within Gateway, it is first necessary to assign them the appropriate access rights. + Gateway currently supports four roles, but only two are relevant for {{% ctx %}} Innovation: + + * Admin + * Studio + + To give a user access to a role, set access for a group or Organisational Unit (OU) that the user is a member of: + + 1. Expand the groups or OUs, or search for the group or OU, to be assigned one or more roles. + 1. Check the relevant roles for each group. Checking a parent group will cascade the setting to all child groups. + + {{< figure class="centre" src="/images/Gateway Setup5.png" title="LDAP Authorisation Screen" >}} + + 1. Click `Complete Setup` to commit the changes. + 1. To test the permissions, log out as Administrator and then log in as a user with `Studio` permissions. + +## Next Steps? + +1. [Try it out][] + +[Account Details]: {{< ref "#account-details" >}} +[Gateway Installation]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.GatewayInstallation" >}} +[LDAP Authorisation]: {{< ref "#ldap-authorisation" >}} +[LDAP Connection]: {{< ref "#ldap-connection" >}} +[supported web browser]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.WebBrowserRequirements" >}} +[Try it out]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.TryItOut" >}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/multiple-server-with-ha/try-it-out.md b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/multiple-server-with-ha/try-it-out.md new file mode 100644 index 000000000..cbebbb92d --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/multiple-server-with-ha/try-it-out.md @@ -0,0 +1,66 @@ +--- +title: "Try it out" +linkTitle: "Try it out" +description: "Information about trying out {{% ctx %}} Innovation for the first time." +weight: 60 +--- + +# {{% param title %}} + +This guide describes how to try out a new Innovation installation to make sure it is working. Please ensure that [Setup Gateway][] has been completed before taking these steps. + +## Test Debugging Flows + +Test the platform by creating a new flow and executing it using the following steps: + +1. Click on the `Dev` charm, then the `+` button and click `Group` to open a dialog. +1. Enter a name for the group, configure the `Permission Groups` and click `OK` to create the group. +1. Click on the group to open it (refresh the page if it does not appear). +1. Inside the group, click the `+` button again and click on `Activity` to open a dialog. If the menu item is not present, it means that the `FeatureFlags` in the `CortexGateway.SetParameters.xml` file was not set properly when installing Gateway. See [Troubleshooting][Troubleshooting No Innovation] for more information. +1. Enter a name for the flow, configure the `Permission Groups` and click `OK` to create the flow. +1. The flow should be displayed with a `Start Flow` block and `End Flow` block, if those blocks are not displayed see [Troubleshooting][Troubleshooting Flow No Blocks]. A list of block palettes should be displayed down the left hand side: + {{< figure src="/images/New Innovation Flow View.PNG" title="New Flow - Number of palettes may differ" >}} +1. Add a `Set Variable` block and connect it between the `Start Flow` and `End Flow` blocks. +1. Click the `Set Variable` block to open the Property Editor. +1. Set the `Value` property to the expression `DateTimeOffset.Now`. +1. Type `Result` into the `Variable` property and click `Create Result`. +1. In the Variables Grid, set `Is Output Variable?` to `true` for the new `Result` variable. +1. Add a breakpoint to the `End Flow` block and start the flow. An execution token should appear. + If the token does not appear, try refreshing the page. Failing that, see [Troubleshooting][Troubleshooting Flow Not Starting]. +1. Select the execution in the Executions Grid (bottom panel). +1. The `Result` variable displayed in the Variables Viewer (right panel) should show the current time. +1. Continue or stop the execution. +1. Commit the flow. + +## Test Publishing Production Flows + +1. Log in to Gateway with a user that has the `Admin` role. +1. Click on the `Admin` charm, then `Packages`. +1. Click `Add Package Definition`. Enter a package name and select the new flow to add to the package. Click `Save` to save the new package. +1. Click `Publish`. A success message should appear. If it doesn't it means that either one or more of the parameters prefixed with `Service Fabric` in the `CortexGateway.SetParameters.xml` file was not set properly when installing Gateway, or the Application Services aren't healthy. See [Troubleshooting][Troubleshooting No Publish] for more information. + +## Test Executing Production Flows + +1. Open an HTTP client, such as [Postman](https://www.postman.com/downloads/). Make a request with the following format: + | Property | Value | + |---------------|-------------------------------------------------------------------------------------| + | Action | POST | + | URL | https://{FQDN of Load Balancer Server}/api/default/default/flows/{Flow Name}/executions?packageName={Package Name}
e.g. https://load-balancer.domain.com/api/default/default/flows/NewFlow/executions?packageName=NewPackage| + | Content Type | application/json | + | Body | {} | + | Authentication| Basic | + | Username | The value used for `ApiGatewayBasicAuthUsername` when installing Application Services | + | Password | The value used for `ApiGatewayBasicAuthPassword` when installing Application Services (Unencrypted) | + + {{% alert title="Note" %}} If you used self-signed certificates when installing the Application Servers you will need to disable SSL certificate validation in your HTTP client. {{% /alert %}} + +1. The request should return a JSON object with the output variables of the flow e.g. `{ "Output": "2022-03-09T07:35:16+0000" }`. +1. {{% ctx %}} Innovation has now been verified and is ready to use. + +[Setup Gateway]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.MultipleServerWithHA.SetupGateway" >}} +[Troubleshooting During Installation]: {{< url path="Cortex.Reference.Troubleshooting.Installation.TroubleshootingDuringInstallation" >}} +[Troubleshooting Flow Not Starting]: {{< url path="Cortex.Reference.Troubleshooting.Installation.TroubleshootingFlowNotStarting" >}} +[Troubleshooting Flow No Blocks]: {{< url path="Cortex.Reference.Troubleshooting.Installation.TroubleshootingFlowNoBlocks" >}} +[Troubleshooting No Innovation]: {{< url path="Cortex.Reference.Troubleshooting.Installation.TroubleshootingNoInnovation" >}} +[Troubleshooting No Publish]: {{< url path="Cortex.Reference.Troubleshooting.Installation.TroubleshootingNoPublish" >}} +[Troubleshooting Root Certificate Error]: {{< url path="Cortex.Reference.Troubleshooting.Installation.TroubleshootingNoRootCertificate" >}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/single-server-without-ha/_index.md b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/single-server-without-ha/_index.md new file mode 100644 index 000000000..a2e303100 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/single-server-without-ha/_index.md @@ -0,0 +1,12 @@ +--- +title: "Single Server - Without HA" +linkTitle: "Single Server - Without HA" +description: "Information about installing {{% ctx %}} Innovation on a single on-premise server without high availability (HA), including: information about components, supported architectures, prerequisites and installation instructions." +weight: 50 +--- + +{{% pageinfo %}} +Single server installations without HA are not recommended for the following scenarios: + +* Production installations that are required to scale and support HA +{{% /pageinfo %}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/single-server-without-ha/architecture.md b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/single-server-without-ha/architecture.md new file mode 100644 index 000000000..07d150be4 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/single-server-without-ha/architecture.md @@ -0,0 +1,28 @@ +--- +title: "Architecture" +linkTitle: "Architecture" +description: "Information about the recommended Innovation platform architecture, including component descriptions." +weight: 10 +--- + +# {{% param title %}} + +## Components + +{{< section "/architecture/components/single-server.md" >}} + +## Single Server Architecture + +The following architecture requires 1 server: + +{{< figure src="/images/editable/Cortex Innovation Overview-Single Server.png" class="centre" title="1 Server Architecture Diagram" >}} + +{{< section "/architecture/components/node-details.md" >}} + +{{% alert type="warning" title="Warning" %}} This architecture is not recommended for production platforms that are required to scale and support HA. Additionally, upgrades require application redeployment with downtime rather than using rolling upgrades. {{%/alert %}} + +## Next Steps? + +1. [Prerequisites][] + +[Prerequisites]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.SingleServerWithoutHA.Prerequisites" >}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/single-server-without-ha/install-application-server.md b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/single-server-without-ha/install-application-server.md new file mode 100644 index 000000000..bf347167f --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/single-server-without-ha/install-application-server.md @@ -0,0 +1,64 @@ +--- +title: "Install Application Server" +linkTitle: "Install Application Server" +description: "Information about installing the Application Server." +weight: 30 +--- + +# {{% param title %}} + +This guide describes how to install the Application Server components on the server. Please ensure that the [Prerequisites][] have been read before starting this installation. + +## Make Installation Artefacts Available + +{{< section "/install-application-server/make-installation-artefacts-available.md">}} + +## Install Microsoft .NET Framework 4.7.2 + +{{< section "/install-application-server/install-dot-net-framework.md">}} + +## Apply Recommended Security Measures + +{{< section "/install-application-server/apply-recommended-security-measures.md">}} + +## Add Antivirus Exclusions + +If Windows Defender is not running on the server, ensure that the [Antivirus Exclusions][] have been added to the running antivirus software on the server and continue to the next section, otherwise follow these steps: + +{{< section "/install-application-server/single-server/add-antivirus-exclusions.md">}} + +## Check Port Usage + +{{< section "/install-application-server/single-server/check-port-useage.md">}} + +## Configure Installation Script + +{{< section "/install-application-server/single-server/add-innovation-only/configure-installation-script.md">}} + +## Test Installation Script + +{{< section "/install-application-server/single-server/test-installation-script.md">}} + +## Run Installation Script + +{{< section "/install-application-server/single-server/run-installation-script.md">}} + +## Add Read and Execute access to Windows Crypto folder + +{{< section "/install-application-server/single-server/add-permissions-to-crypto-folder.md">}} + +## Check Application Services + +{{< section "/install-application-server/single-server/check-application-services.md">}} + +## Preserve installation files + +{{< section "/preserve-installation-files.md">}} + +## Next Steps? + +1. [Install Web Application Server][] + +[Antivirus Exclusions]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.SingleServerWithoutHA.AntivirusExclusions" >}} +[Install Web Application Server]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.SingleServerWithoutHA.InstallWebApplicationServer" >}} +[Prerequisites]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.SingleServerWithoutHA.Prerequisites" >}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/single-server-without-ha/install-web-application-server.md b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/single-server-without-ha/install-web-application-server.md new file mode 100644 index 000000000..bb4ed6d5b --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/single-server-without-ha/install-web-application-server.md @@ -0,0 +1,234 @@ +--- +title: "Install the Web Application Server" +linkTitle: "Install Web Application Server" +description: "Information about installing the Web Application Server." +weight: 40 +--- + +# {{% param title %}} + +This guide describes how to install the Web Application Server components on the server. Please ensure that [Install Application Server][] has been completed before starting this installation. + +## Make Installation Artefacts Available + +1. Copy the following artefacts to a folder on the machine: + + * Cortex Innovation {{< version >}} - Gateway.zip + * Cortex Innovation {{< version >}} - Web App Server Install Scripts.zip + +1. Extract the `Cortex Innovation {{< version >}} - Web App Server Install Scripts.zip` zip file to a folder with the same name. + +## Install Prerequisites + +### Licensing + +Ensure that a valid {{% ctx %}} licence file named `Cortex.lic` exists on the server, in the location `%ProgramData%\Cortex\Licences`. If it does not, follow the instructions located at [Licensing Requirements][]. + +### Get {{% ctx %}} Gateway Application Pool User + +A domain user account is required for the {{% ctx %}} Gateway application pool and must be created prior to performing the installation below. + +In line with best practices, this account should not be given administrator rights, nor should it be used for any purposes other than those specified for {{% ctx %}} Gateway. + +### Grant folder permissions to the {{% ctx %}} Gateway Application Pool User + +The following folders require `Modify` permission to allow creating the `NuGet` folders and its `NuGet.Config` file within: + +* `C:\Windows\System32\config\systemprofile\AppData\Roaming` +* `C:\Windows\SysWOW64\config\systemprofile\AppData\Roaming` + +For each folder, perform the following steps: + +1. Navigate to the `AppData` folder. +1. Right-click on the `Roaming` folder and click `Properties`. +1. In the dialog, click the `Security` tab. +1. Check the `Application Pool` user that will be used for {{% ctx %}} Gateway is listed in the `Group or user names` and has `Modify` permissions. +1. If the `Application Pool` user that will be used for {{% ctx %}} Gateway is not listed: + 1. Click the `Edit...` button. + 1. Click the `Add...` button. + 1. Enter the username of the application pool user and click `OK`. + 1. In the `Permissions` section at the bottom, check `Modify`. + 1. Click `OK`. + 1. Click `Yes` to change the permission to the folder. +1. If the `Application Pool` user that will be used for {{% ctx %}} Gateway is listed but does not have permissions: + 1. Click the `Edit...` button. + 1. Select the `Application Pool` user. + 1. Check `Modify`. + 1. Click `OK`. + 1. Click `Yes` to change the permission to the folder. + +### Certificate Requirements + +{{% ctx %}} Gateway requires an X.509 SSL certificate to be installed on the server. The certificate must have the following properties: + +* Enhanced Key Usage: `Server Authentication` and `Client Authentication` +* Subject Alternative Names (SAN): At minimum the FQDN of the server. It can also include NetBIOS Name, IP address, localhost, 127.0.0.1 + +If the user tries to navigate to an address not in the SAN list, then they will receive a certificate error. + +{{% alert title="Important" color="warning" %}} +Standard certificates, wildcard certificates, auto-generated self-signed certificates and {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.CreateSelfSignedCertificates" title="manually created self-signed certificates" >}} can be used. However, self-signed certificates are not recommended for production instances. +
+It is possible to reuse the certificate used when {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.SingleServerWithoutHA.ConfigureInstallationScript" title="installing the Application Server" >}}; If doing so, you should {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.SingleServerWithoutHA.AssignCertificateFriendlyName" title="Assign a Certificate Friendly Name" >}} and set the `ImportCertificate` parameter to `$false` in {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.SingleServerWithoutHA.ConfigureCortexGatewayInstallationScript" title="Configure CORTEX Gateway Installation Script" >}} to ensure use of the correct certificate and to prevent it from being overwritten. +{{% /alert %}} + +#### Import Root Certificate + +{{% alert title="Note" %}}This step is only required if using a self-signed certificate signed by your own Root Certificate e.g. OpenSSL. If this is not the case proceed to {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.SingleServerWithoutHA.ImportCertificateManually" title="Import Certificate Manually" >}} {{% /alert %}} + +This step must be carried out prior to the installation otherwise the URL validation will fail. In order to import the Root Certificate, ensure that the file is in a known location on this server and complete the following steps: + +1. Using Windows File Explorer navigate to the location of the Root Certificate file. +1. Double click on the Root Certificate file to import the certificate into the Windows Certificate Store. Perform the following steps: + + 1. Select `Local Machine` then click `Next`. + 1. Click `Next`. + 1. Enter the Export Password which the certificate was generated with then click `Next`. + 1. Select `Place all certificates in the following store`. + 1. Click `Browse…`. + 1. Select `Trusted Root Certification Authorities`, click `OK` then click `Next`. + 1. Click `Finish`. + 1. [Import][Import Certificate Manually] the X.509 SSL certificate. + +#### Import Certificate Manually + +{{% alert title="Note" %}}The certificate can be imported automatically by setting the `ImportCertificate` parameter to `$true` in {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.SingleServerWithoutHA.ConfigureCortexGatewayInstallationScript" title="Configure CORTEX Gateway Installation Script" >}}. If importing the certificate automatically proceed to {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.SingleServerWithoutHA.PerformInstallation" title="Perform Installation" >}}

If the certificate has previously been imported you must {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.SingleServerWithoutHA.AssignCertificateFriendlyName" title="assign a friendly name" >}}.{{% /alert %}} + +To import the certificate manually follow the below steps: + +1. Locate the certificate file on the machine and right-click on the file. +1. Select `Install Certificate`. +1. Follow the Wizard and when prompted, ensure you import it into the `Local Machine` store and not `Current User`. +1. Assign the imported certificate a [friendly name][Assign Certificate Friendly Name]. + +#### Assign Certificate Friendly Name + +Once the certificate has been imported, a `Friendly Name` should be assigned which will be used in the [Configure {{% ctx %}} Gateway Installation Script][Configure CORTEX Gateway Installation Script] to enable the installation script to identify the certificate to be used for the website: + +1. Click the Windows button (`Start`). +1. Type `certlm.msc` and press `Enter` to open the Certificate Manager dialog. +1. Expand `Personal` and select `Certificates`. +1. You should see your certificate in this store. +1. Right-click on the certificate and select `Properties`. +1. On the `General` tab in the `Friendly Name` text box, enter a name to be used for the certificate. +1. Click `OK`. + +## Perform Installation + +### Configure {{% ctx %}} Gateway Installation Script + +1. In the `Cortex Innovation {{< version >}} - Web App Server Install Scripts` folder, locate the `Cortex.Innovation.Install.Gateway.ps1` script and open it with a text editor. +1. Configure the script according to the details given below: + + ```powershell + .\Cortex.Install.Gateway.ps1 ` + -GatewayPackagePath "C:\Install\Cortex Innovation {{< version >}} - Gateway.zip" ` + -FeatureFlags "InnovationId" ` + -ServiceFabricApiGatewayEndpoint "https://server.domain.com:8722/" ` + -ServiceFabricUsingSelfSignedCertificates $false ` + -ServiceFabricApiGatewayBasicAuthUsername "BasicAuthUser" ` + -ServiceFabricApiGatewayBasicAuthPassword '#_065077199197085!212123173135087074174142102155007175102029143220132038175026114248243207204119030125106032237087162060168108135168241247037070081~187087056217118!069132229129134129097089241180163#' ` + -DotNetFlowDebuggerEndpoint 'https://server.domain.com:8722/api/' ` + -DotNetFlowDebuggerBasicAuthUsername "BasicAuthUser" ` + -DotNetFlowDebuggerBasicAuthPassword '#_065077199197085!212123173135087074174142102155007175102029143220132038175026114248243207204119030125106032237087162060168108135168241247037070081~187087056217118!069132229129134129097089241180163#' ` + -DotNetFlowDebuggerUsingSelfSignedCertificates $false ` + -GatewayApplicationPoolUsername "Domain\Username" ` + -WebRootFolder "C:\inetpub\wwwroot" ` + -WebsitePort "443" ` + -ImportCertificate $false ` + -CertificateFilePath "C:\Install\Certificate.pfx" ` + -CertificateFriendlyName "CertificateName" ` + -ConfigureSiteRedirect $true ` + -ApplySecurityMeasures $true ` + -UsingWindowsDefender $false ` + -AcceptEULA:$AcceptEula ` + *>&1 | Tee-Object -FilePath "cortex-gateway-install-log.txt" + ``` + + {{% alert title="Important" color="warning" %}}Parameters required to be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}} must be encrypted on one of the servers specified in the {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.SingleServerWithoutHA.EncryptionRequirements" title="Encryption Requirements" >}} steps.{{% /alert %}} + + | Name | Description | + |------------------------------------------------|-------------| + |`GatewayPackagePath` | Configure this value with the location of the `Cortex Innovation {{< version >}} - Gateway.zip` file on the installation server. | + |`FeatureFlags` | Replace `InnovationId` with the {{% ctx %}} Innovation feature identifier, which should have been provided by {{% ctx %}} when fulfilling the [Licensing Requirements][], if it wasn't it should be requested using [{{% ctx %}} Service Portal][CORTEX Service Portal].

This will set the `FeatureFlags` value in the {{% ctx %}} Gateway web.config.| + |`ServiceFabricApiGatewayEndpoint` | Replace `server.domain.com` with the fully qualified domain name of the server. The port should be specified as `8722` and there must be a trailing slash, e.g. `https://server.domain.com:8722/`.

This will set the `ServiceFabricApiGatewayEndpoint` value in the {{% ctx %}} Gateway web.config.| + |`ServiceFabricUsingSelfSignedCertificates` | Configure the value as `$false` if you used valid CA certificates when [installing the Application Server][Configure Installation Script], `$true` if you used self-signed certificates.

This will set the `ServiceFabricUsingSelfSignedCertificates` value in the {{% ctx %}} Gateway web.config.| + |`ServiceFabricApiGatewayBasicAuthUsername` | This must be changed if you used a non-default `ApiGatewayBasicAuthUsername` when [installing the Application Server][Configure Installation Script]; if so, this value must be configured to the one used.

This will set the `ServiceFabricApiGatewayBasicAuthUsername` value in the {{% ctx %}} Gateway web.config.{{< alert type="note" title="Note" >}} This parameter should be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}}| + |`ServiceFabricApiGatewayBasicAuthPassword` | This must be changed if you used a non-default `ApiGatewayBasicAuthPassword` when [installing the Application Server][Configure Installation Script]; if so, this value must be configured to the one used.

This will set the `ServiceFabricApiGatewayBasicAuthPassword` value in the {{% ctx %}} Gateway web.config.{{< alert type="note" title="Note" >}} This parameter must be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}}| + |`DotNetFlowDebuggerEndpoint` | Replace `server.domain.com` with the fully qualified domain name of the Web Application Server.

This will set the `DotNetFlowDebuggerEndpoint` value in the {{% ctx %}} Gateway web.config.| + |`DotNetFlowDebuggerBasicAuthUsername` | This must be changed if you used a non-default `ApiGatewayBasicAuthUsername` when [installing the Debugger on the Web Application Server][Install Application Server]; if so, this value must be configured to the one used.

This will set the `DotNetFlowDebuggerBasicAuthUsername` value in the {{% ctx %}} Gateway web.config.{{< alert type="note" title="Note" >}} This parameter should be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}}| + |`DotNetFlowDebuggerBasicAuthPassword` | This must be changed if you used a non-default `ApiGatewayBasicAuthPassword` when [installing the Debugger on the Web Application Server][Install Application Server]; if so, this value must be configured to the one used.

This will set the `DotNetFlowDebuggerBasicAuthPassword` value in the {{% ctx %}} Gateway web.config.{{< alert type="note" title="Note" >}} This parameter must be {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" title="CORTEX Encrypted" >}}.{{< /alert >}}| + |`DotNetFlowDebuggerUsingSelfSignedCertificates` | Configure the value as `$false` if you are using valid CA certificates to secure the communication between {{% ctx %}} Gateway and the Debugger, `$true` if using self-signed certificates.

This will set the `DotNetFlowDebuggerUsingSelfSignedCertificates` value in the {{% ctx %}} Gateway web.config.| + |`GatewayApplicationPoolUsername` | Replace `Domain\Username` with the user that should be used to run the {{% ctx %}} Gateway application pool as configured in [Get {{% ctx %}} Gateway Application Pool User][Get CORTEX Gateway Application Pool User].| + |`WebRootFolder` | Replace this with the correct path for the Web Root Folder on the server. Typically this will be `C:\inetpub\wwwroot`.| + |`WebsitePort` | Replace this with the port that you wish the website to use. Typically this will be `443`.| + |`ImportCertificate` | Change this from `$true` to `$false` if you do not require the certificate to be imported as part of the installation process.

Note that if this is changed to `$false` you must [import the Root Certificate][Import Root Certificate] (if necessary), [import the X.509 certificate manually][Import Certificate Manually] and [assign a friendly name][Assign Certificate Friendly Name] prior to running the installation.| + |`CertificateFilePath` | Replace this with the location and filename for the certificate to be imported.

If `ImportCertificate` is set to `$false` this value can remain unchanged but you must [import the Root Certificate][Import Root Certificate] (if necessary), [import the X.509 certificate manually][Import Certificate Manually] and [assign a friendly name][Assign Certificate Friendly Name] prior to running the installation.| + |`CertificateFriendlyName` | Replace this with the friendly name that you would like to be allocated to the certificate.

If `ImportCertificate` is set to `$false` this must be [assigned][Assign Certificate Friendly Name] prior to running the installation and the Friendly Name used must be specified to allow the website to use the correct certificate.| + |`ConfigureSiteRedirect` | If the site hosting the {{% ctx %}} Gateway web application is a newly created {{% ctx %}} site or an existing site that doesn’t have its own content, it is recommended to redirect the site URL to the {{% ctx %}} Gateway web application URL. The default behaviour of the script is to create a URL Rewrite redirect rule to achieve this.

To skip this rule creation change the value to `$false`.| + |`ApplySecurityMeasures` | Change this from `$true` to `$false` if you do not require the Recommended [Security Best Practices][] to be implemented as part of the installation process.| + |`UsingWindowsDefender` | Change this from `$false` to `$true` if you are using the Windows Defender firewall.

If Windows Defender is not being used but an alternative firewall is, it must be configured to allow communication inbound via TCP on the port configured for HTTPS (usually 443).| + |`AcceptEULA` | This does not need to be changed, the EULA will be accepted at a later stage. | + |`FilePath` | The filename that installation logs are written to. If this should be written to a different location than where the installation files are then a full path should be specified. | + +1. Save and close `Cortex.Innovation.Install.Gateway.ps1`. + +### Install {{% ctx %}} Gateway + +1. Open a Windows PowerShell (x64) window as administrator. +1. Navigate PowerShell to inside the `Cortex Innovation {{< version >}} - Web App Server Install Scripts` folder using the following command, modifying the path as necessary: + + ```powershell + cd "C:\Install\Cortex Innovation {{< version >}} - Web App Server Install Scripts" + ``` + +1. Type the following command into PowerShell: + + ```powershell + .\Cortex.Innovation.Install.Gateway.ps1 + ``` + +1. Please read the End User Licence Agreement which can be found [here][Eula]. Once you agree to the terms, add the flag `-AcceptEULA` to the command entered above, e.g: + + ```powershell + .\.ps1 -AcceptEULA + ``` + +1. Run the PowerShell command to install {{% ctx %}} Gateway. +1. If `ImportCertificate` is set to $true, and the file is of type `.pfx`, a prompt will appear for the certificate password. This should be entered, and then hit `Enter`. +1. A prompt will appear to enter the password for the user specified to run the {{% ctx %}} Gateway Application Pool. This should be entered, and then hit `Enter`. +1. Check that there have been no errors in the script; these would appear in red in the console. + + If there are any errors, then please follow any instructions given within them to rectify the situation, and retry the installation. + + If the errors do not give any instructions on how to rectify, please contact [{{% ctx %}} Service Portal][CORTEX Service Portal] for further assistance. + +1. Once the PowerShell script execution has completed, a prompt will appear to restart the machine. You can choose to restart now (`N`) or later (`L`). +1. In a browser, navigate to the {{% ctx %}} Gateway website, available at `://:/`, e.g. `https://localhost/gateway` and wait for the login page to load. + +### Grant additional folder permissions to the {{% ctx %}} Gateway Application Pool User + +{{< section "/install-web-application-server/add-innovation-only/grant-gateway-user-additional-folder-permissions.md">}} + +## Preserve installation files + +Ensure that the installation files are backed up or kept on the server, especially the scripts and config files that have been modified. This will make it easier to perform further actions in future, such as troubleshooting, certificate rollover, uninstallation, reinstallation and updates. + +## Next Steps? + +1. [Setup Gateway][] + +[Assign Certificate Friendly Name]: {{< ref "#assign-certificate-friendly-name" >}} +[Configure CORTEX Gateway Installation Script]: {{< ref "#configure-cortex-gateway-installation-script" >}} +[Configure Installation Script]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.SingleServerWithoutHA.ConfigureInstallationScript" >}} +[CORTEX Encrypted]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.EncryptText" >}} +[CORTEX Service Portal]: {{< url path="Cortex.ServicePortal.MainDoc" >}} +[Encryption Requirements]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.SingleServerWithoutHA.EncryptionRequirements" >}} +[Eula]: {{< url path="Cortex.Website.Eula.MainDoc" >}} +[Get CORTEX Gateway Application Pool User]: {{< ref "#get-cortex-gateway-application-pool-user" >}} +[Import Certificate Manually]: {{< ref "#import-certificate-manually" >}} +[Import Root Certificate]: {{< ref path="#import-root-certificate" >}} +[Install Application Server]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.SingleServerWithoutHA.InstallApplicationServer" >}} +[Licensing Requirements]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.SingleServerWithoutHA.LicensingRequirements" >}} +[Security Best Practices]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.SSLBestPractices" >}} +[Setup Gateway]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.SingleServerWithoutHA.SetupGateway" >}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/single-server-without-ha/prerequisites.md b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/single-server-without-ha/prerequisites.md new file mode 100644 index 000000000..8a53074c8 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/single-server-without-ha/prerequisites.md @@ -0,0 +1,232 @@ +--- +title: "Prerequisites" +linkTitle: "Prerequisites" +description: "Information about the prerequisites required on each server type for installation." +weight: 20 +--- + +# {{% param title %}} + +The prerequisites required for a single server (as described in [Architecture][]) are laid out in this guide. These must be considered before undertaking installation. + +## Hardware Requirements + +{{% alert title="Note" %}}This configuration is not recommended for production servers that are required to scale and support HA.{{% /alert %}} + +| Server Role | Servers Required | CPU Cores (> 2GHz) | RAM (GB) | Disk (GB) | +|------------------|-----------------------|-----------------------------------|---------------|----------------------| +| Single Server
*Application Server +
Web Application Server* | 1 | 4+ *Recommended*
2 *Minimum* | 16+ *Recommended*
12 *Minimum* | 150+ *Recommended*
100 *Minimum*
30+ free on installation drive
40+ free on %ProgramData% drive | + +## Software Requirements + +| Server Role | Windows Server[^1] | .Net | PowerShell[^2] | IIS[^3] | Other Software | +|------------------|-------------------------|---------------------|------|------------|---------| +| Single Server
*Application Server +
Web Application Server* | [2022 (x64)][Microsoft Server 2022] *Recommended*
[2019 (x64)][Microsoft Server 2019] | [Framework 4.7.2][NET Framework 472] | 5.1 | 10.0.20348[^4]
10.0.17763[^5]
[URL Rewrite Module 2.1][IIS Url Rewrite] | [Microsoft Web Deploy 3.0 or later][Web Deploy]
[Visual C++ Redistributable 2013 (x64)][C++ Redistributable] | + +[^1]: Windows Server Standard and Datacenter editions are supported. Filesystem **must be NTFS** and networking **must use IPv4**. Linux is not supported, but may be in the future. +[^2]: PowerShell 5.1 ships with Windows Server 2019 and 2022. +[^3]: IIS is supported; other web servers, including IIS Express are not supported. +[^4]: Ships as a windows role within Windows Server 2022. +[^5]: Ships as a windows role within Windows Server 2019. + +## Domain Requirements + +The server must be on a domain and cannot be a domain controller. + +## Active Directory Requirements + +For Gateway, only Windows domains with an Active Directory domain controller running Active Directory Domain Services are supported. + +Supported versions of Active Directory are listed below: + +| Version | Verified? | Supported From | Supported Until | +|----------------------------|----------------|----------------|------------------| +| Windows Server 2003 | ✓ | {{% ctx %}} v2022.9 | To be evaluated | +| Windows Server 2003 R2 | | {{% ctx %}} v2022.9 | To be evaluated | +| Windows Server 2008 | | {{% ctx %}} v2022.9 | To be evaluated | +| Windows Server 2008 R2 | ✓ | {{% ctx %}} v2022.9 | To be evaluated | +| Windows Server 2012 | | {{% ctx %}} v2022.9 | To be evaluated | +| Windows Server 2012 R2 | ✓ | {{% ctx %}} v2022.9 | To be evaluated | +| Windows Server 2016 | ✓ | {{% ctx %}} v2022.9 | To be evaluated | +| Windows Server 2019 | | {{% ctx %}} v2022.9 | To be evaluated | +| Windows Server 2022 | | {{% ctx %}} v2022.9 | To be evaluated | + +## DNS Requirements + +The installation requires IP to hostname resolution to be available. Please ensure that you have the appropriate pointer (PTR) records configured on the DNS server for the server. + +## Licensing Requirements + +A valid {{% ctx %}} licence file and {{% ctx %}} Innovation feature identifier must be procured from {{% ctx %}}. The feature identifier is a GUID which will be used when configuring the Gateway installation. The licence file is needed when installing the server and it should contain that server's fingerprint. + +To get a licence file and feature identifier take the following steps: + +1. Copy the following template to a text file: + + ```text + Web Application/Application Server + MachineID: + Fingerprint: + + Please also include a suitable {{% ctx %}} Innovation feature identifier. + ``` + +1. Extract `Cortex Innovation {{< version >}} - Licence Fingerprint Generator.zip`. +1. From that folder, copy `Cortex.Licensing.FingerprintGeneration.exe` to the server. +1. Double-click `Cortex.Licensing.FingerprintGeneration.exe` to run it. A command line window will appear, containing a machine identifier and fingerprint, e.g: + + ```text + MachineID: SERVER + Fingerprint: 111118BA104C928319E0CBAE30844CF8B7FD8BC414D1567844D1D0830089F1C9BF5C6 + ``` + +1. Copy the output (machine identifier and fingerprint) to the `Web Application/Application Server` section of the text file created in the initial step. Note that the machine identifier can be changed to any string. +1. Request a licence and feature identifier by raising a case in the [{{% ctx %}} Service Portal][CORTEX Service Portal], including the contents of the text file containing all of the fingerprint and machine information in the body of the case. +1. When the licence and feature identifier have arrived, copy the file `Cortex.lic` to `%ProgramData%\Cortex\Licences` on the Web Application Server, creating the `Cortex` and `Licences` folders if they don't exist. Save the feature identifier for use when [Installing Gateway][]. + +## Web Browser Requirements + +Gateway supports the latest versions of the following browsers: + +* Chrome +* Edge +* Firefox + +## Filesystem Requirements + +The server must use an NTFS filesystem. + +## Service Requirements + +The following Windows Services must be running on the server: + +* Performance Logs & Alerts +* Remote Registry +* Windows Event Log + +## Security Requirements + +### Installation User + +A domain user which is a member of the Local Administrators group on the server must be available to run the installation scripts. This is a prerequisite of Microsoft Service Fabric, which is the platform that {{% ctx %}} Innovation is built upon. + +### IIS Application Pool User + +For Gateway, a domain user must be available to run the IIS Application Pool. This user must be given `Log on as a service` and `Log on as a batch job` permissions otherwise the Application Pool will not be able to run. Information about how to do this will be given during installation. + +### Antivirus Exclusions + +It is advised (by Microsoft Service Fabric) that the following antivirus exclusions are created on the server to reduce antivirus processing on Service Fabric artefacts: + +Folder Exclusions: + +* %ProgramFiles%\Microsoft Service Fabric +* %ProgramData%\SF +* %ProgramData%\SF\Logs + +Process Exclusions: + +* Fabric.exe +* FabricHost.exe +* FabricInstallerService.exe +* FabricSetup.exe +* FabricDeployer.exe +* ImageBuilder.exe +* FabricGateway.exe +* FabricDCA.exe +* FabricFAS.exe +* FabricUOS.exe +* FabricRM.exe +* FileStoreService.exe + +A script is provided during installation to add these exclusions for Windows Defender. If any other antivirus software is running, these will need to be added manually. + +If adding the exclusions manually, the Process Exclusions should be done before installation occurs, as the processes will be used during installation of the application and antivirus software can cause the installation to fail or timeout. Folder Exclusions may need to be added after installation has occurred as some antivirus software needs the folders to exist. + +### Port Requirements + +{{% ctx %}} Innovation and Microsoft Service Fabric require a range of [firewall ports to be opened][Port Requirements] between the server and specific services. + +If you are using Windows Firewall, some ports are opened during installation and others are opened dynamically as needed. If any other firewall is used, it will be necessary to add the rules described in [Port Requirements][] to open the correct ports. + +The `Cortex.Innovation.Test.PortUsage.ps1` script is provided during installation to test the ports on the server and make sure they do not overlap with any other programs; most ports may be altered if this is the case, the description will say if this is not possible. + +### Certificate Requirements + +{{< alert title="Important" color="warning" >}}It is critical to set a reminder to {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.RolloverCertificates" title="update certificates" >}} in good time before they expire. If they expire then the platform will cease to function and {{< ahref path="Cortex.ServicePortal.MainDoc" title="CORTEX Service Portal" >}} must be contacted for support.{{< /alert >}} + +#### Application Servers + +{{% alert title="Note" %}} +For production systems it is recommended that an X.509 SSL certificate is obtained from a Certificate Authority and used for installation. For non-production systems, certificates can be omitted from installation and it will create and use self-signed certificates. This may prevent 3rd parties that require valid certificate verification to access the API Gateway Service. +{{% / alert %}} + +An X.509 SSL certificate (standard or wildcard) should be used to: + +* Allow Application Services to identify themselves to clients such as Gateway. +* Prevent unauthorised nodes from joining the single node cluster. +* Connect to Service Fabric Explorer from the Application Server. +* Connect to Gateway. + +The certificate can be obtained from a Certificate Authority, such as [Let’s Encrypt](), and must meet the following requirements: + +* Subject field must be in one of the following formats, depending on the certificate type: + * Standard certificates must use the standard format (e.g. `CN=host.domain.com`). + * Wildcard certificates must use the wildcard format, pertaining to the domain of the server (e.g. `CN=*.domain.com`). +* Subject alternative names must include any additional host names that should be able to be used to access the API Gateway Service. +* Subject Alternative Names (SAN): At minimum the FQDN of the server. It can also include NetBIOS Name, IP address, localhost, 127.0.0.1. It must include any additional host names that should be able to be used to access the API Gateway Service. +* Certificate file must be in a .PFX file format, with a known password. +* Certificate file must contain the full chain of certificates. +* Certificate file must include the private key. +* Key Usage extension must have a value of `Digital Signature, Key Encipherment (a0)`. +* Enhanced Key Usage must include `Server Authentication` and `Client Authentication`. + +This file should be placed in a known location on the server. This location will be required when running the Application Server installation script. + +#### Web Application Server + +{{% ctx %}} Gateway requires an X.509 SSL certificate to be installed on the Web Application Server. The certificate must have the following properties: + +* Enhanced Key Usage: `Server Authentication` and `Client Authentication` +* Subject Alternative Names (SAN): At minimum the FQDN of the Server. It can also include NetBIOS Name, IP address, localhost, 127.0.0.1 + +If the user tries to navigate to an address not in the SAN list, then they will receive a certificate error. + +{{% alert title="Important" color="warning" %}} +Standard certificates, wildcard certificates, auto-generated self-signed certificates and {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.CreateSelfSignedCertificates" title="manually created self-signed certificates" >}} can be used. However, self-signed certificates are not recommended for production instances. +
+It is possible to reuse the certificate used when {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.SingleServerWithoutHA.ConfigureInstallationScript" title="installing the Application Server" >}}; If doing so, you should set the `ImportCertificate` parameter to `$false` in {{< ahref path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.SingleServerWithoutHA.ConfigureCortexGatewayInstallationScript" title="Configure CORTEX Gateway Installation Script" >}} step to prevent overwriting. +{{% /alert %}} + +More information about importing the certificate is given during installation. + +### TLS Requirements + +There is a set of non-compulsory security measures, recommended to be applied to the server, in order to prevent potential attacks that exploit known industry security vulnerabilities. This includes disabling all versions of SSL and TLS apart from TLS 1.2, and disabling all cipher suites apart from the following: + +* TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 +* TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 + +See [SSL Best Practices][] for a full list of the security changes which will be applied. The `Cortex.Innovation.Install.SSLBestPractices.ps1` script is provided during installation to apply these security changes to the server. + +### Encryption Requirements + +{{< section "/prerequisites/install-innovation-only/single-server/encryption-requirements.md">}} + +## Next Steps? + +1. [Install Application Server][] + +[Architecture]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.SingleServerWithoutHA.Architecture" >}} +[C++ Redistributable]: {{< url path="MSDownload.CPlusPlusRedistributable.2013" >}} +[CORTEX Service Portal]: {{< url path="Cortex.ServicePortal.MainDoc" >}} +[Create Self-Signed Certificates]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.CreateSelfSignedCertificates" >}} +[IIS URL Rewrite]: {{< url path="IIS.Downloads.UrlRewrite-2_1" >}} +[Install Application Server]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.SingleServerWithoutHA.InstallApplicationServer" >}} +[Installing Gateway]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.SingleServerWithoutHA.ConfigureCortexGatewayInstallationScript" >}} +[Microsoft Server 2019]: {{< url path="MSEval.WindowsServer.2019" >}} +[Microsoft Server 2022]: {{< url path="MSEval.WindowsServer.2022" >}} +[NET Framework 472]: {{< url path="MSDotNet.Framework472.MainDoc" >}} +[Port Requirements]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.PortRequirements" >}} +[SSL Best Practices]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.SSLBestPractices" >}} +[Web Deploy]: {{< url path="MSDownload.WebDeploy" >}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/single-server-without-ha/setup-gateway.md b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/single-server-without-ha/setup-gateway.md new file mode 100644 index 000000000..05ea8ea2f --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/single-server-without-ha/setup-gateway.md @@ -0,0 +1,84 @@ +--- +title: "Setup Gateway" +linkTitle: "Setup Gateway" +description: "Information about setting up {{% ctx %}} Gateway for first-time use." +weight: 50 +--- + +# {{% param title %}} + +This guide describes how to setup Gateway. Please ensure that [Install Web Application Server][] has been completed before taking these steps. + +## Gateway Initial Setup + +Log on to Gateway and run through the setup wizard: + +1. Open a [supported web browser][] and navigate to `://:/`, e.g. `https://server.domain.com/gateway`. + + If an error message is displayed in the browser, wait a few minutes and refresh the page as it is possible that the website was still starting. +1. Log on using the default credentials that Gateway deploys with: + + Username: `administrator` + + Password: `Adm1n1strat0r` +1. On a newly installed system, you will be presented with a Setup Wizard at this point, which will guide you through some basic configuration steps: + * [Account Details] + * [LDAP Connection] + * [LDAP Authorisation] +1. Follow the steps in the setup wizard to configure the relevant areas: + + ### Account Details + + 1. Click `Next Step`: + {{< figure class="centre" src="/images/Gateway Setup1.png" title="Initial Setup Screen" >}} + 1. Enter an email address for the Administrator and click `Next Step`: + {{< figure class="centre" src="/images/Gateway Setup2.png" title="Administrator Details Screen" >}} + 1. Change the Administrator password to a unique, secret password and click `Next Step`: + {{< figure class="centre" src="/images/Gateway Setup3.png" title="Change Password Screen" >}} + + ### LDAP Connection + + 1. Enter the details of your Active Directory server and provide a Username and Password for a user with read access to it: + + A connection to an Active Directory server must be established in order to assign authorisation rights to users. + 1. In the `Server` field, enter the Hostname, FQDN or IP Address of the Active Directory server that Gateway should use to authenticate and authorise users. + 1. In the `Port` field, enter the port number of the Active Directory server. The well-known port for LDAP traffic is `389`; if SSL encryption is used, the well-known port is `636`. + 1. If an SSL connection is to be used, tick the box `Use SSL`. + 1. In the `Username` field, enter a valid username of a user that has read permissions for the Active Directory server. + 1. In the `Password` field, enter the password of the user entered in the previous step. + 1. To reduce the scope of any Active Directory searches, add one or more base DNs (Distinguished Names). For each base DN click `Add` and enter the full LDAP path e.g `CN=group, OU=organisational unit, DC=domain, DC=com`. These will be used as the roots of any Active Directory searches performed. For more information about distinguished names see . + 1. Click `Test Connection` to validate the connection and the user credentials entered and click `Next Step`. + + {{< figure class="centre" src="/images/Gateway Setup4.png" title="LDAP Connection Screen" >}} + + ### LDAP Authorisation + + 1. If the authorisation grid fails to load first time round, click `Retry`. + 1. Assign access permissions to Active Directory groups: + + To allow users to access the various roles within Gateway, it is first necessary to assign them the appropriate access rights. + Gateway currently supports four roles, but only two are relevant for {{% ctx %}} Innovation: + + * Admin + * Studio + + To give a user access to a role, set access for a group or Organisational Unit (OU) that the user is a member of: + + 1. Expand the groups or OUs, or search for the group or OU, to be assigned one or more roles. + 1. Check the relevant roles for each group. Checking a parent group will cascade the setting to all child groups. + + {{< figure class="centre" src="/images/Gateway Setup5.png" title="LDAP Authorisation Screen" >}} + + 1. Click `Complete Setup` to commit the changes. + 1. To test the permissions, log out as Administrator and then log in as a user with `Studio` permissions. + +## Next Steps? + +1. [Try it out][] + +[Account Details]: {{< ref "#account-details" >}} +[LDAP Authorisation]: {{< ref "#ldap-authorisation" >}} +[LDAP Connection]: {{< ref "#ldap-connection" >}} +[Install Web Application Server]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.SingleServerWithoutHA.InstallWebApplicationServer" >}} +[supported web browser]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.SingleServerWithoutHA.WebBrowserRequirements" >}} +[Try it out]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.SingleServerWithoutHA.TryItOut" >}} diff --git a/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/single-server-without-ha/try-it-out.md b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/single-server-without-ha/try-it-out.md new file mode 100644 index 000000000..90fe675a9 --- /dev/null +++ b/content/en/docs/2024.11/getting-started/on-premise/install-innovation-only/single-server-without-ha/try-it-out.md @@ -0,0 +1,66 @@ +--- +title: "Try it out" +linkTitle: "Try it out" +description: "Information about trying out {{% ctx %}} Innovation for the first time." +weight: 60 +--- + +# {{% param title %}} + +This guide describes how to try out a new Innovation installation to make sure it is working. Please ensure that [Setup Gateway][] has been completed before taking these steps. + +## Test Debugging Flows + +Test the platform by creating a new flow and executing it using the following steps: + +1. Click on the `Dev` charm, then the `+` button and click `Group` to open a dialog. +1. Enter a name for the group, configure the `Permission Groups` and click `OK` to create the group. +1. Click on the group to open it (refresh the page if it does not appear). +1. Inside the group, click the `+` button again and click on `Activity` to open a dialog. If the menu item is not present, it means that the `FeatureFlags` in the `CortexGateway.SetParameters.xml` file was not set properly when installing Gateway. See [Troubleshooting][Troubleshooting No Innovation] for more information. +1. Enter a name for the flow, configure the `Permission Groups` and click `OK` to create the flow. +1. The flow should be displayed with a `Start Flow` block and `End Flow` block, if those blocks are not displayed see [Troubleshooting][Troubleshooting Flow No Blocks]. A list of block palettes should be displayed down the left hand side: + {{< figure src="/images/New Innovation Flow View.PNG" title="New Flow - Number of palettes may differ" >}} +1. Add a `Set Variable` block and connect it between the `Start Flow` and `End Flow` blocks. +1. Click the `Set Variable` block to open the Property Editor. +1. Set the `Value` property to the expression `DateTimeOffset.Now`. +1. Type `Result` into the `Variable` property and click `Create Result`. +1. In the Variables Grid, set `Is Output Variable?` to `true` for the new `Result` variable. +1. Add a breakpoint to the `End Flow` block and start the flow. An execution token should appear. + If the token does not appear, try refreshing the page. Failing that, see [Troubleshooting][Troubleshooting Flow Not Starting]. +1. Select the execution in the Executions Grid (bottom panel). +1. The `Result` variable displayed in the Variables Viewer (right panel) should show the current time. +1. Continue or stop the execution. +1. Commit the flow. + +## Test Publishing Production Flows + +1. Log in to Gateway with a user that has the `Admin` role. +1. Click on the `Admin` charm, then `Packages`. +1. Click `Add Package Definition`. Enter a package name and select the new flow to add to the package. Click `Save` to save the new package. +1. Click `Publish`. A success message should appear. If it doesn't it means that either one or more of the parameters prefixed with `Service Fabric` in the `CortexGateway.SetParameters.xml` file was not set properly when installing Gateway, or the Application Services aren't healthy. See [Troubleshooting][Troubleshooting No Publish] for more information. + +## Test Executing Production Flows + +1. Open an HTTP client, such as [Postman](https://www.postman.com/downloads/). Make a request with the following format: + | Property | Value | + |---------------|-------------------------------------------------------------------------------------| + | Action | POST | + | URL | https://{FQDN of server}:8722/api/default/default/flows/{Flow Name}/executions?packageName={Package Name}
e.g. https://server.domain.com:8722/api/default/default/flows/NewFlow/executions?packageName=NewPackage| + | Content Type | application/json | + | Body | {} | + | Authentication| Basic | + | Username | The value used for `ApiGatewayBasicAuthUsername` when installing Application Services | + | Password | The value used for `ApiGatewayBasicAuthPassword` when installing Application Services (Unencrypted) | + + {{% alert title="Note" %}} If you used self-signed certificates when installing the server you will need to disable SSL certificate validation in your HTTP client. {{% /alert %}} + +1. The request should return a JSON object with the output variables of the flow e.g. `{ "Output": "2022-03-09T07:35:16+0000" }`. +1. {{% ctx %}} Innovation has now been verified and is ready to use. + +[Setup Gateway]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.SingleServerWithoutHA.SetupGateway" >}} +[Troubleshooting During Installation]: {{< url path="Cortex.Reference.Troubleshooting.Installation.TroubleshootingDuringInstallation" >}} +[Troubleshooting Flow No Blocks]: {{< url path="Cortex.Reference.Troubleshooting.Installation.TroubleshootingFlowNoBlocks" >}} +[Troubleshooting Flow Not Starting]: {{< url path="Cortex.Reference.Troubleshooting.Installation.TroubleshootingFlowNotStarting" >}} +[Troubleshooting No Innovation]: {{< url path="Cortex.Reference.Troubleshooting.Installation.TroubleshootingNoInnovation" >}} +[Troubleshooting No Publish]: {{< url path="Cortex.Reference.Troubleshooting.Installation.TroubleshootingNoPublish" >}} +[Troubleshooting Root Certificate Error]: {{< url path="Cortex.Reference.Troubleshooting.Installation.TroubleshootingNoRootCertificate" >}} diff --git a/content/static/2024.11/blocks/Cortex_Blocks_DataStorage_CreateCollection_CreateCollectionBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_DataStorage_CreateCollection_CreateCollectionBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..3784e559bcda5748df9c89bdada375265a50ae35 GIT binary patch literal 1250 zcmV<81ReW{P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1b0b9K~!i%?OIz; z)Ib#8Hy`~OKKkgRkNymQhOrRw5=ndjU%;pjV4^Y6&?QI|uYkdbMzTf}q`M2d0b~W1 z1-V}x=bLue(mmaFx-DxHPV!~5o$1VcJ?DJqG-<+anw~zV>6vCNneJ~$rdb?do;B0j zpif+|Xq2s~J9ip{s2gL34sfw(B@zv~afg@`OK=aqFiCZ1&QlZO46Vz!m=N(v48|Nu z9){@@F%WBLx>4dDqX*-T6Jl}039-20Scp9unqec^5=%{%*xb@435;P*^7Aip4OK)& z?CrOCmYrK=+q?Tr)%NxeSbly@tZ}_3L$2?I(22o2tDC#l5o@=N?LF2zGDq%J4WSZy zIy@_$b`;i^Dv*1+Ayi_;)otq-;TxiW+S3iOA%>8o_H;w2#E=V785EP+(+#1E2XZ0o zJX0kFgiZ`-f0GkJVh0Wf_$>jLGd8`#?)T@(J-iSJF+V_AKv7;^-w{OcD+{%=eu3P~ z;>MBty$}kq&iB)7Xnc{4=9Viu3c#5CBfRy=C<^cSExI6&HDzd1bKDS^7&b*%1`VEeKKPS*k&a7{Vw>@8`#4XMta* zMXrhnk*Ew&fIZ+f7#<*UQ+iVsO2nezZ5}y?7nF$s=q%6`)G8#%A=E%~UE|0eH2lmlp+szcdFx0r z<0<1+9$_SlF(ub{0QO=HuR|oThNfp&W4C$WzOTQzK&@MMnYMrMmrWMdY%iOb>rGIJ zm^2jTplW5ujh?LdZRLe|wzy%f?rxaV(q}yo+d34Kh&fdexrP!j@O?qlxN=xk0z!Z} z@D{xGer!=(hbMOS{O2s@9(qrA_nZ>3uvBqrZJS-|Nwc=sIT32A268QZQ~XRJ5d*?d z#Rr3?XA7k*>q@14_*rD5`DN>0rQu$2CcW~EfHE-vstAb=qKfiBXn?C(JNKs79A^`4 zhY~TTDgp>kNWWA)G__8{H97ux$lF^mKg1v=;v7V-DG`%aiz-6RuJZiyGC#zSpVS_J z5;13u3ZjZPpJm0Noi=PN9d;T3#06!*evQhx=3d^h5P7CV3@?GT8c6+j#DH4K$wPaY zpHPJ1OjNN}CI&ziQDlRt;@}Tc$-)p1sjz6v?B@dl5wim#B6~%srki05a|T9DVjx(} z{1B55i9*f9f}oM-1e6gSh?~`=K!=5U{Jkq^OV#!&N3JPRKVnuo(2`Qg&-dPF#v5K|P(qH_eBhN+c5h02{vZ0jY}{j{pDw M07*qoM6N<$f&m~c#Q*>R literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_DataStorage_DeleteCollection_DeleteCollectionBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_DataStorage_DeleteCollection_DeleteCollectionBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..f86d3dbd2e151bfd909db3dfed019732817d5abe GIT binary patch literal 1311 zcmV+)1>pLLP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1hh#+K~!i%?V8JO z97Pm{XUCGqV9AmtOCE#AK(r&mMMSVj*dz#8BuHE&PVk2*zqN{Ls4IKAG@YpJu}_YZPQYY^sA(<(^d7?xwh0bTY|9hTo5+T1og()P`#n5 zfcUJri6-QmWVPnEGQE3EWw5l!UpR78b5UU!V5UU!Fh1kdA_tdS{s+yQyRr4!bUNDDF z{g=PIYh*=f#D4gFQMKmR)z0p|$|`&NkJZfLhFRnFk*0V3UMQRx)>+@$O^!IYZ0_u- zE4Svodv!yh#6G_{XKuR;8J$@0?wN){i7l`1B*!RT@B-hSX{Zb_T++8^8VV&wER-c= zOy8bqC_H%(3q{9SR#KpFV&KB}ZIeiBa5&I!2|(x0>;v_|*o=3NUMPiFKcFm7l-C|U zGDH}qP`mXDa`%=tJKpbwLWo_uKC8wjm(=a{+L4X|M05WbYyBK88|(F3bRo~0;@Uo) zG~_16rnpt!c!DsNvDbX(o4e+M=sH|?Ej=sZ7Dc9Y4$LL7_S;`gr*9;p#6`*yynsEh8o~t<#8h^#=dmT1=z(JtCJ*HBM6)7)Np*@(ck{o3F=|;RxJCE|5eiq z8`j4ry1fZzA|^s%&YP`lyfM-;<2hZJ=ax5<)zbx?v!ls{SnK$ZiI|%ei8V^V)j#f= z8h7YcM?oS$2Ww%q>vxvSb1d;_um6}u_rQ8#y5%wvD=I6lZ0xAlMjGn;cWvWp$o&V~ zIzen3SHyy{r&yCY-a{aFb`+h0h=C%q;)mB_%W_zR1H1dAL9ENW=2>`D2V^D&$cm)s zJXui=L<4M#SgaewVj^x6Z6gygH!A|%lhiL+kEYfYp2_^D2^p#G`F5;$AXKR zIZv!*A|^6ORwSFfs^iNQAx1%F#9iO|vSlEy>k=bAWnCAUh`BW?PgZ>MiGeOmu0>7;WStW`iUmy&_pNO_)RH>g|{S1Z~MfOfJcXfr;h8DIF7JM!PQE zjN-#XgwdB3X@*7Q0tzkAMd5w@-6bv6#`dnsoIXA9$&J~Au7mOXw{5SU;N*xUMHLqm za{Y+i1p8u3aH19yH^NeGyW|tvt^-S@xS-%alAO% z>tRI-x&5ry$E6^sM_X9zqC0U?2#7lk2pAID-QrO{^EA3?(C>`Z_yx{4S!smPY4gt_ z4801~#N;cN+D{o`FJGQ|M*I0s9;K>bG8m4YHKc4As!zRCNrGWxf`6J1ELE%3{sSQ# VyGq4?3mX6c002ovPDHLkV1n5(a$W!c literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_DataStorage_DeleteData_DeleteDataWithKeyBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_DataStorage_DeleteData_DeleteDataWithKeyBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..f86d3dbd2e151bfd909db3dfed019732817d5abe GIT binary patch literal 1311 zcmV+)1>pLLP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1hh#+K~!i%?V8JO z97Pm{XUCGqV9AmtOCE#AK(r&mMMSVj*dz#8BuHE&PVk2*zqN{Ls4IKAG@YpJu}_YZPQYY^sA(<(^d7?xwh0bTY|9hTo5+T1og()P`#n5 zfcUJri6-QmWVPnEGQE3EWw5l!UpR78b5UU!V5UU!Fh1kdA_tdS{s+yQyRr4!bUNDDF z{g=PIYh*=f#D4gFQMKmR)z0p|$|`&NkJZfLhFRnFk*0V3UMQRx)>+@$O^!IYZ0_u- zE4Svodv!yh#6G_{XKuR;8J$@0?wN){i7l`1B*!RT@B-hSX{Zb_T++8^8VV&wER-c= zOy8bqC_H%(3q{9SR#KpFV&KB}ZIeiBa5&I!2|(x0>;v_|*o=3NUMPiFKcFm7l-C|U zGDH}qP`mXDa`%=tJKpbwLWo_uKC8wjm(=a{+L4X|M05WbYyBK88|(F3bRo~0;@Uo) zG~_16rnpt!c!DsNvDbX(o4e+M=sH|?Ej=sZ7Dc9Y4$LL7_S;`gr*9;p#6`*yynsEh8o~t<#8h^#=dmT1=z(JtCJ*HBM6)7)Np*@(ck{o3F=|;RxJCE|5eiq z8`j4ry1fZzA|^s%&YP`lyfM-;<2hZJ=ax5<)zbx?v!ls{SnK$ZiI|%ei8V^V)j#f= z8h7YcM?oS$2Ww%q>vxvSb1d;_um6}u_rQ8#y5%wvD=I6lZ0xAlMjGn;cWvWp$o&V~ zIzen3SHyy{r&yCY-a{aFb`+h0h=C%q;)mB_%W_zR1H1dAL9ENW=2>`D2V^D&$cm)s zJXui=L<4M#SgaewVj^x6Z6gygH!A|%lhiL+kEYfYp2_^D2^p#G`F5;$AXKR zIZv!*A|^6ORwSFfs^iNQAx1%F#9iO|vSlEy>k=bAWnCAUh`BW?PgZ>MiGeOmu0>7;WStW`iUmy&_pNO_)RH>g|{S1Z~MfOfJcXfr;h8DIF7JM!PQE zjN-#XgwdB3X@*7Q0tzkAMd5w@-6bv6#`dnsoIXA9$&J~Au7mOXw{5SU;N*xUMHLqm za{Y+i1p8u3aH19yH^NeGyW|tvt^-S@xS-%alAO% z>tRI-x&5ry$E6^sM_X9zqC0U?2#7lk2pAID-QrO{^EA3?(C>`Z_yx{4S!smPY4gt_ z4801~#N;cN+D{o`FJGQ|M*I0s9;K>bG8m4YHKc4As!zRCNrGWxf`6J1ELE%3{sSQ# VyGq4?3mX6c002ovPDHLkV1n5(a$W!c literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_DataStorage_ReadData_ReadDataWithKeyBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_DataStorage_ReadData_ReadDataWithKeyBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..1a488011d0c39ea493e7b1fd3b8464d1ab3e03db GIT binary patch literal 1359 zcmV-V1+e;wP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1msCXK~!i%?V8VT z+(Z<|_r{SwgCj?d9QiZ&GZ0Qi3y2C1EteKi4lNP|2~=+s3WT3&t5mdAt5k$G#Jfp0 zYC}SrWD}BRlQb#Ae8!$+)_KmZy>?cX`lPSC@{DKZ>-XOGJxg10>!od4B!0SFMc< zRBNgX2+vwSJK#^g5z#oXlY@Wj^HzBU_9mx#k79#Tu_860G6*b#-DeJn-=Sf3!e7jh+f^@A-df zdSS!)*ko>Jf~kmEqcCSxD;Mt%O_}RiU6|*VH>1^)jX7tAqZi_=BOw*BxGIuslz?l0 zJ~1`!Agm4pAz%*P!fQ7kE}8pyVrRGeoMrC5_xxnfr6QJ>Dz0p7t9OTL>fFx_6KayJ z>85yNOYTA-cV>7-pD8C|AP-gi{Ceowh2~atC$!eiuF10xzY9YY5T@K?%r%}hbNu%6 zS)?WgP(>s_vpI*Cfb}rpD?TUWS}J1JdQnBx?36yBH4e^!8N(}<6gkGd`!h|GYjzGEv|&kp z+I8bdMJ!&UvZ&$*-%hFXS~RTP{A+oC4!MLu?)rl;%pe4jFK-^KeJfZo^RUxbb;ly) zSt??D1omo>a*4Tl05ZAQmAF-&YqKZl6B!iS~ zf~DND=&Q$U7*XTmVJR7-A!yNGVh+eT>XSqeLatC8B zV&a`kjh76ux35gTqT~E`VN%&J;SC0_8d9zeR43mmB|*P7#($dkJyoex{s%EY!dUjI R%_;x@002ovPDHLkV1m?GbJ+j@ literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_DataStorage_WaitForCollection_WaitForCollectionToExistBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_DataStorage_WaitForCollection_WaitForCollectionToExistBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..da597fddb464bbfb27677290f450c52b2ee0eefb GIT binary patch literal 1311 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 literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_DateAndTime_ConvertDateTime_ConvertDateTimeToTextBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_DateAndTime_ConvertDateTime_ConvertDateTimeToTextBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..e11adfdefc2cb2822ca027fa5f622dd2e54f97e6 GIT binary patch literal 1178 zcmV;L1ZDe)P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1TRTMK~!i%?OIJw z6G0f>n@4|!M~@yo`ZN3)#;pPLKr{xth>0eG2R)duEd&KW5d-lf5{N`A+d^BRf=EB0 z#g$c4%eUc}Io%fxchxcPpTRGYAPtp>FQH+F={Y&EDgxUs3i z4i1mlLNd?BX4lxj%Ot<1gg^dZbIUot@zx7!4Q_0ju#J3~-J492{vbrIZvJ+xYlHH4 zV^f4dlT z=0N$7!VLSfZz93c8TWdFP2a>a_tE8f2>LGU##8&nDj`g+Jwythh{WE(k>l+S*jA!f zqxO6ihWffTYA;wN76YKpZjM{xBPP53Jjqk77R+>k*I%)`?>w=^A>o0aplN^&+~u&5u|zd=-W|Y83E+P%P}Kl8Q2L@~F12 z;i!hzF9YkLHfvA9a24?i(G1j94~Q;@y-Nn_42NU>ZmYovh?Xxldzqeup?2g`c_R>= z3<6~!&D8g(#931An&OW{(UY+MCF%^F5!V!fEh|m0KUw1As7ra1MwDb*peY-)U%dM| zbu0o{d_5f!HHhOFHK$Pp>|Ye7B)Q?(`7)`*ETLbp>>jRMY+l}J@dLBaM4 zlZcwb(TWlXL2{$06)8b{AFMR-V5jjDp6f9x=~y sQ8Gf|#Y=${XvF5MPT5Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1TRTMK~!i%?OIJw z6G0f>n@4|!M~@yo`ZN3)#;pPLKr{xth>0eG2R)duEd&KW5d-lf5{N`A+d^BRf=EB0 z#g$c4%eUc}Io%fxchxcPpTRGYAPtp>FQH+F={Y&EDgxUs3i z4i1mlLNd?BX4lxj%Ot<1gg^dZbIUot@zx7!4Q_0ju#J3~-J492{vbrIZvJ+xYlHH4 zV^f4dlT z=0N$7!VLSfZz93c8TWdFP2a>a_tE8f2>LGU##8&nDj`g+Jwythh{WE(k>l+S*jA!f zqxO6ihWffTYA;wN76YKpZjM{xBPP53Jjqk77R+>k*I%)`?>w=^A>o0aplN^&+~u&5u|zd=-W|Y83E+P%P}Kl8Q2L@~F12 z;i!hzF9YkLHfvA9a24?i(G1j94~Q;@y-Nn_42NU>ZmYovh?Xxldzqeup?2g`c_R>= z3<6~!&D8g(#931An&OW{(UY+MCF%^F5!V!fEh|m0KUw1As7ra1MwDb*peY-)U%dM| zbu0o{d_5f!HHhOFHK$Pp>|Ye7B)Q?(`7)`*ETLbp>>jRMY+l}J@dLBaM4 zlZcwb(TWlXL2{$06)8b{AFMR-V5jjDp6f9x=~y sQ8Gf|#Y=${XvF5MPT5Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1RqI6K~!i%?V3$b z6G0fq_vX=$;nAZ2YzslbSHwVki3Fq3%C2)0Sk&AGi<$!kyYXa!nc3fLZl%ZuUN4a`svC`O#DRh>u9cWn zuDDIcsBSdA5eEw96cwY|DJsUV+h9(=__W4W@@2bA!3)oRXXeOv*JEE`fC@{~a|N;w zUiJlsLJv#ZyZdAxyzC1sY*BsiavMx_*rNL2WnW-Xa2rf@*rNL2J!A@>$i&Xxf!*3$h^=PN zrS<{^Lw#KtwmR%IIs>83u8(r~gvo9`&4{5!3B&S3I&XhFD!?JjZbLHgjNPAHCfmTc zx3RUu?!NjizONQ4cB|v+dzNuMsiUoUu05Qc4jgPUxlXo`?i#W(>h<3XUSJUJJD)Ed zI9Rc~TXQ%H+jT)@3qwrSn+m30SB1$$eWvQb!62+zR67{6S=TWA46*g%K&8rV6%32^ z)kkw=_E4YHJK&~(L0Heo%<-B)rzuGY+{Y&tZTTIrl)6XwJBT`K8W@C$0$EU(fJ-i5 zkc5-*ZctF5V5p-;g*E`i-tV$wC}Kz@myhllotbjRNTEN}V(kkIM-ji8_+rgu>g0hf z6RxS5DevqFOHna$%9o41YF}We9d%dUh~!KLKq=YjO`g$OGP6Yyqk_qQB+9@#CrKjK&mMVbWpzia!oRa??6&6pfU$dnwGZu+%ZIm}dzAt>EiFvY03w`QIM1duvWxMfNj zKRH^UZiMUOdp%?k>zI1Y>u@Qp$IUV_*6+O0D(k2_ZU6`fKHRKNevR1Z)-rE1uHh$e z)XhlSFgwL>7C}e`MAONRfy@a3c5!g_6d&hrh@hxBsVB_S0!mdZK6@dOfJSPD&y?NO cOlg|-55JD43v6psOaK4?07*qoM6N<$g0uuD4gdfE literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_DateAndTime_GetDateTime_GetDateTimeComponentBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_DateAndTime_GetDateTime_GetDateTimeComponentBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..1538ff0f2f677f2e61556316c890a32a38cbea1b GIT binary patch literal 1162 zcmV;51aPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1RqI6K~!i%?V3$b z6G0fq_vX=$;nAZ2YzslbSHwVki3Fq3%C2)0Sk&AGi<$!kyYXa!nc3fLZl%ZuUN4a`svC`O#DRh>u9cWn zuDDIcsBSdA5eEw96cwY|DJsUV+h9(=__W4W@@2bA!3)oRXXeOv*JEE`fC@{~a|N;w zUiJlsLJv#ZyZdAxyzC1sY*BsiavMx_*rNL2WnW-Xa2rf@*rNL2J!A@>$i&Xxf!*3$h^=PN zrS<{^Lw#KtwmR%IIs>83u8(r~gvo9`&4{5!3B&S3I&XhFD!?JjZbLHgjNPAHCfmTc zx3RUu?!NjizONQ4cB|v+dzNuMsiUoUu05Qc4jgPUxlXo`?i#W(>h<3XUSJUJJD)Ed zI9Rc~TXQ%H+jT)@3qwrSn+m30SB1$$eWvQb!62+zR67{6S=TWA46*g%K&8rV6%32^ z)kkw=_E4YHJK&~(L0Heo%<-B)rzuGY+{Y&tZTTIrl)6XwJBT`K8W@C$0$EU(fJ-i5 zkc5-*ZctF5V5p-;g*E`i-tV$wC}Kz@myhllotbjRNTEN}V(kkIM-ji8_+rgu>g0hf z6RxS5DevqFOHna$%9o41YF}We9d%dUh~!KLKq=YjO`g$OGP6Yyqk_qQB+9@#CrKjK&mMVbWpzia!oRa??6&6pfU$dnwGZu+%ZIm}dzAt>EiFvY03w`QIM1duvWxMfNj zKRH^UZiMUOdp%?k>zI1Y>u@Qp$IUV_*6+O0D(k2_ZU6`fKHRKNevR1Z)-rE1uHh$e z)XhlSFgwL>7C}e`MAONRfy@a3c5!g_6d&hrh@hxBsVB_S0!mdZK6@dOfJSPD&y?NO cOlg|-55JD43v6psOaK4?07*qoM6N<$g0uuD4gdfE literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_DateAndTime_GetTimePeriod_GetTimePeriodBetweenDateTimesBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_DateAndTime_GetTimePeriod_GetTimePeriodBetweenDateTimesBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..1538ff0f2f677f2e61556316c890a32a38cbea1b GIT binary patch literal 1162 zcmV;51aPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1RqI6K~!i%?V3$b z6G0fq_vX=$;nAZ2YzslbSHwVki3Fq3%C2)0Sk&AGi<$!kyYXa!nc3fLZl%ZuUN4a`svC`O#DRh>u9cWn zuDDIcsBSdA5eEw96cwY|DJsUV+h9(=__W4W@@2bA!3)oRXXeOv*JEE`fC@{~a|N;w zUiJlsLJv#ZyZdAxyzC1sY*BsiavMx_*rNL2WnW-Xa2rf@*rNL2J!A@>$i&Xxf!*3$h^=PN zrS<{^Lw#KtwmR%IIs>83u8(r~gvo9`&4{5!3B&S3I&XhFD!?JjZbLHgjNPAHCfmTc zx3RUu?!NjizONQ4cB|v+dzNuMsiUoUu05Qc4jgPUxlXo`?i#W(>h<3XUSJUJJD)Ed zI9Rc~TXQ%H+jT)@3qwrSn+m30SB1$$eWvQb!62+zR67{6S=TWA46*g%K&8rV6%32^ z)kkw=_E4YHJK&~(L0Heo%<-B)rzuGY+{Y&tZTTIrl)6XwJBT`K8W@C$0$EU(fJ-i5 zkc5-*ZctF5V5p-;g*E`i-tV$wC}Kz@myhllotbjRNTEN}V(kkIM-ji8_+rgu>g0hf z6RxS5DevqFOHna$%9o41YF}We9d%dUh~!KLKq=YjO`g$OGP6Yyqk_qQB+9@#CrKjK&mMVbWpzia!oRa??6&6pfU$dnwGZu+%ZIm}dzAt>EiFvY03w`QIM1duvWxMfNj zKRH^UZiMUOdp%?k>zI1Y>u@Qp$IUV_*6+O0D(k2_ZU6`fKHRKNevR1Z)-rE1uHh$e z)XhlSFgwL>7C}e`MAONRfy@a3c5!g_6d&hrh@hxBsVB_S0!mdZK6@dOfJSPD&y?NO cOlg|-55JD43v6psOaK4?07*qoM6N<$g0uuD4gdfE literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_DateAndTime_IsDateTime_IsDateTimeAfterBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_DateAndTime_IsDateTime_IsDateTimeAfterBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..cda2adcaa1a88f8f3eac2f59128170c8e57e3fbb GIT binary patch literal 1145 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 Xq)ozd07R+v00000NkvXXu0mjfo7M4_ literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Decisions_If_IfNullExitBottomBlock_1.png b/content/static/2024.11/blocks/Cortex_Blocks_Decisions_If_IfNullExitBottomBlock_1.png new file mode 100644 index 0000000000000000000000000000000000000000..18a6d908fada0ea0a4e150a28a6507826bd12aea GIT binary patch literal 892 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 R+kOB5002ovPDHLkV1hDT+718! literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_GetCount_GetCountOfItemsWithValueBlock_3.png b/content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_GetCount_GetCountOfItemsWithValueBlock_3.png new file mode 100644 index 0000000000000000000000000000000000000000..2c4a66e86a81d059a56bbb14098a868ee7facbbf GIT binary patch literal 1047 zcmV+y1nB#TP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1FT6zK~!i%?OIJw z6G0f>n@4|!M~@yo`ZN3)#;p_nDo6-QgX|2zHocpX5n*_kBA%PoJ50rknNB@PqOdKZv^hVtJ%cEHf9F^fl@& z1hdzKj6-ylDi+{U1u)LHRi%xV=l}!8VkEO7_o`DI$NqW*#8FZF*#pn4_?oceL0Rs z!XRpOy(wXVMSFi?eQ+>|P)9369EpbFEtDOFH8 zI-Wye5uWC9z8qiV{1VkzZKFx#>Ul1T$J*u&dolKdyl0jnagC-`VSD?3*mziDcL$U9 zho^qB>dK~wCP2>o@&+54SQ7n!xb_0A2}6gUk0vhl#(yFgSGPn&59IU=C;z4~RMUM^ zX-ycMLYr`6r?oGxwg++#+za&1*()BUkUe@=;m)aO?6kyD0`(l?dWP|+;G7A&B|ewy z+afcIzV{V2wNU5B8{4})_t#oB7vJUW1=+SGtvUAb>x#(A0`4F_T}_^^pm5+ET(C5cy#7N|gHd33J_ z7qO71ueJMgDd`u(1{~{G1Gea6-o=y;b1>YJ&-j{{lP6*Poe>YOz)?Y`8H8Q@okb`l z6Wrv??Prw>T-eQl*-P;_|4byg#u>j9Ugo0GC=_RJI4LkFPvV{C1E)OC`wL`_&Y3Mp R+kOB5002ovPDHLkV1hDT+718! literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_GetCount_GetCountsOfItemsWithValuesBlock_3.png b/content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_GetCount_GetCountsOfItemsWithValuesBlock_3.png new file mode 100644 index 0000000000000000000000000000000000000000..2c4a66e86a81d059a56bbb14098a868ee7facbbf GIT binary patch literal 1047 zcmV+y1nB#TP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1FT6zK~!i%?OIJw z6G0f>n@4|!M~@yo`ZN3)#;p_nDo6-QgX|2zHocpX5n*_kBA%PoJ50rknNB@PqOdKZv^hVtJ%cEHf9F^fl@& z1hdzKj6-ylDi+{U1u)LHRi%xV=l}!8VkEO7_o`DI$NqW*#8FZF*#pn4_?oceL0Rs z!XRpOy(wXVMSFi?eQ+>|P)9369EpbFEtDOFH8 zI-Wye5uWC9z8qiV{1VkzZKFx#>Ul1T$J*u&dolKdyl0jnagC-`VSD?3*mziDcL$U9 zho^qB>dK~wCP2>o@&+54SQ7n!xb_0A2}6gUk0vhl#(yFgSGPn&59IU=C;z4~RMUM^ zX-ycMLYr`6r?oGxwg++#+za&1*()BUkUe@=;m)aO?6kyD0`(l?dWP|+;G7A&B|ewy z+afcIzV{V2wNU5B8{4})_t#oB7vJUW1=+SGtvUAb>x#(A0`4F_T}_^^pm5+ET(C5cy#7N|gHd33J_ z7qO71ueJMgDd`u(1{~{G1Gea6-o=y;b1>YJ&-j{{lP6*Poe>YOz)?Y`8H8Q@okb`l z6Wrv??Prw>T-eQl*-P;_|4byg#u>j9Ugo0GC=_RJI4LkFPvV{C1E)OC`wL`_&Y3Mp R+kOB5002ovPDHLkV1hDT+718! literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_GetItem_GetAllItemsBlock_3.png b/content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_GetItem_GetAllItemsBlock_3.png new file mode 100644 index 0000000000000000000000000000000000000000..cee407e09e670a55d055d6b0cf9837a67112d3f1 GIT binary patch literal 1019 zcmVPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1CU8XK~!i%?V3$b z6G0fq_vX=$;nAZPW(X}a@t_W9?Tx82l{<$A>nt``iu+2TwlTVys6=NgP= zyuu}Jqobi*`78`kKeUW-c;U7jC*%3|i6AQpEBGQdl?yIX0XE}K_?Mk%d=ib8lMRPq zae-*C8rSoyVa4c1+ewYtMrzD9Qe(EEZS2-$z~)O;wpyvN|1I2OVX?~YJYOVp>4lat znA+HC@Y@bfyNwpR`*MlQNrjfNFXdnSR)be*b&JeNg_bcB)e>s#?UOmF&@z^kZo4i? zQ86k~V<0Krc3qO9VpOEYfN4=VsYs0h)1q=xks1R@>9*^V6cwW)H3pK>ZPz6!Dn`XA zG#21(Zp72Mm57f)g;lm2M68-qv3P9mG})8)-^hD*;}h3tj2hcN_`~M>3cEQO_dosV z2U}j>;jOU{v$(d+rsh|99x&J6pfO`e`0;F9rP1&qa%E$ex2T1fk?Htp8bejiEr~H> zs1*7{C7P`Rezm_4+peCcuAI5WBj>YwugX#7C}CJ)(Vzr#Bhz?QaLSBbA%dL<3@GX|lZ>KhE+7@rqZwJ^lQe3OmI*JWWbk^7X< zGPYIQ<6Zu{u;F5Pr-VfThPLZ_ZDZJ&Z$B%M)x-Rx@&sDO@Cxj>Lc)NOFoAY_V$&Ai zVV2VHR6x!%En{PE%B;12^re|nFJq7}*S=>DQ_zVR0}p4GkM(++8j2WF`R~8^x9-Xb zQ^^=1pU zzzQi2%GlFz9HZg{=8W;VhW$x(UZez5;t)*DErHRBiD86FiDB7GKR4^0N-2h*z^pL| z%sD*DPzGU0UMPB1N`Su{El~}FZE z&+r&IJ|3C!UM&8Z&=Oa_H pGTFivD-C+Z1^lPET`9+L{sQnq(|ME7t0({f002ovPDHLkV1ksJ=d%C+ literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_GetItem_GetItemWithKeyBlock_3.png b/content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_GetItem_GetItemWithKeyBlock_3.png new file mode 100644 index 0000000000000000000000000000000000000000..cee407e09e670a55d055d6b0cf9837a67112d3f1 GIT binary patch literal 1019 zcmVPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1CU8XK~!i%?V3$b z6G0fq_vX=$;nAZPW(X}a@t_W9?Tx82l{<$A>nt``iu+2TwlTVys6=NgP= zyuu}Jqobi*`78`kKeUW-c;U7jC*%3|i6AQpEBGQdl?yIX0XE}K_?Mk%d=ib8lMRPq zae-*C8rSoyVa4c1+ewYtMrzD9Qe(EEZS2-$z~)O;wpyvN|1I2OVX?~YJYOVp>4lat znA+HC@Y@bfyNwpR`*MlQNrjfNFXdnSR)be*b&JeNg_bcB)e>s#?UOmF&@z^kZo4i? zQ86k~V<0Krc3qO9VpOEYfN4=VsYs0h)1q=xks1R@>9*^V6cwW)H3pK>ZPz6!Dn`XA zG#21(Zp72Mm57f)g;lm2M68-qv3P9mG})8)-^hD*;}h3tj2hcN_`~M>3cEQO_dosV z2U}j>;jOU{v$(d+rsh|99x&J6pfO`e`0;F9rP1&qa%E$ex2T1fk?Htp8bejiEr~H> zs1*7{C7P`Rezm_4+peCcuAI5WBj>YwugX#7C}CJ)(Vzr#Bhz?QaLSBbA%dL<3@GX|lZ>KhE+7@rqZwJ^lQe3OmI*JWWbk^7X< zGPYIQ<6Zu{u;F5Pr-VfThPLZ_ZDZJ&Z$B%M)x-Rx@&sDO@Cxj>Lc)NOFoAY_V$&Ai zVV2VHR6x!%En{PE%B;12^re|nFJq7}*S=>DQ_zVR0}p4GkM(++8j2WF`R~8^x9-Xb zQ^^=1pU zzzQi2%GlFz9HZg{=8W;VhW$x(UZez5;t)*DErHRBiD86FiDB7GKR4^0N-2h*z^pL| z%sD*DPzGU0UMPB1N`Su{El~}FZE z&+r&IJ|3C!UM&8Z&=Oa_H pGTFivD-C+Z1^lPET`9+L{sQnq(|ME7t0({f002ovPDHLkV1ksJ=d%C+ literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_GetItem_GetItemsWithKeyBlock_3.png b/content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_GetItem_GetItemsWithKeyBlock_3.png new file mode 100644 index 0000000000000000000000000000000000000000..cee407e09e670a55d055d6b0cf9837a67112d3f1 GIT binary patch literal 1019 zcmVPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1CU8XK~!i%?V3$b z6G0fq_vX=$;nAZPW(X}a@t_W9?Tx82l{<$A>nt``iu+2TwlTVys6=NgP= zyuu}Jqobi*`78`kKeUW-c;U7jC*%3|i6AQpEBGQdl?yIX0XE}K_?Mk%d=ib8lMRPq zae-*C8rSoyVa4c1+ewYtMrzD9Qe(EEZS2-$z~)O;wpyvN|1I2OVX?~YJYOVp>4lat znA+HC@Y@bfyNwpR`*MlQNrjfNFXdnSR)be*b&JeNg_bcB)e>s#?UOmF&@z^kZo4i? zQ86k~V<0Krc3qO9VpOEYfN4=VsYs0h)1q=xks1R@>9*^V6cwW)H3pK>ZPz6!Dn`XA zG#21(Zp72Mm57f)g;lm2M68-qv3P9mG})8)-^hD*;}h3tj2hcN_`~M>3cEQO_dosV z2U}j>;jOU{v$(d+rsh|99x&J6pfO`e`0;F9rP1&qa%E$ex2T1fk?Htp8bejiEr~H> zs1*7{C7P`Rezm_4+peCcuAI5WBj>YwugX#7C}CJ)(Vzr#Bhz?QaLSBbA%dL<3@GX|lZ>KhE+7@rqZwJ^lQe3OmI*JWWbk^7X< zGPYIQ<6Zu{u;F5Pr-VfThPLZ_ZDZJ&Z$B%M)x-Rx@&sDO@Cxj>Lc)NOFoAY_V$&Ai zVV2VHR6x!%En{PE%B;12^re|nFJq7}*S=>DQ_zVR0}p4GkM(++8j2WF`R~8^x9-Xb zQ^^=1pU zzzQi2%GlFz9HZg{=8W;VhW$x(UZez5;t)*DErHRBiD86FiDB7GKR4^0N-2h*z^pL| z%sD*DPzGU0UMPB1N`Su{El~}FZE z&+r&IJ|3C!UM&8Z&=Oa_H pGTFivD-C+Z1^lPET`9+L{sQnq(|ME7t0({f002ovPDHLkV1ksJ=d%C+ literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_GetKey_GetAllKeysBlock_3.png b/content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_GetKey_GetAllKeysBlock_3.png new file mode 100644 index 0000000000000000000000000000000000000000..cee407e09e670a55d055d6b0cf9837a67112d3f1 GIT binary patch literal 1019 zcmVPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1CU8XK~!i%?V3$b z6G0fq_vX=$;nAZPW(X}a@t_W9?Tx82l{<$A>nt``iu+2TwlTVys6=NgP= zyuu}Jqobi*`78`kKeUW-c;U7jC*%3|i6AQpEBGQdl?yIX0XE}K_?Mk%d=ib8lMRPq zae-*C8rSoyVa4c1+ewYtMrzD9Qe(EEZS2-$z~)O;wpyvN|1I2OVX?~YJYOVp>4lat znA+HC@Y@bfyNwpR`*MlQNrjfNFXdnSR)be*b&JeNg_bcB)e>s#?UOmF&@z^kZo4i? zQ86k~V<0Krc3qO9VpOEYfN4=VsYs0h)1q=xks1R@>9*^V6cwW)H3pK>ZPz6!Dn`XA zG#21(Zp72Mm57f)g;lm2M68-qv3P9mG})8)-^hD*;}h3tj2hcN_`~M>3cEQO_dosV z2U}j>;jOU{v$(d+rsh|99x&J6pfO`e`0;F9rP1&qa%E$ex2T1fk?Htp8bejiEr~H> zs1*7{C7P`Rezm_4+peCcuAI5WBj>YwugX#7C}CJ)(Vzr#Bhz?QaLSBbA%dL<3@GX|lZ>KhE+7@rqZwJ^lQe3OmI*JWWbk^7X< zGPYIQ<6Zu{u;F5Pr-VfThPLZ_ZDZJ&Z$B%M)x-Rx@&sDO@Cxj>Lc)NOFoAY_V$&Ai zVV2VHR6x!%En{PE%B;12^re|nFJq7}*S=>DQ_zVR0}p4GkM(++8j2WF`R~8^x9-Xb zQ^^=1pU zzzQi2%GlFz9HZg{=8W;VhW$x(UZez5;t)*DErHRBiD86FiDB7GKR4^0N-2h*z^pL| z%sD*DPzGU0UMPB1N`Su{El~}FZE z&+r&IJ|3C!UM&8Z&=Oa_H pGTFivD-C+Z1^lPET`9+L{sQnq(|ME7t0({f002ovPDHLkV1ksJ=d%C+ literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_RemoveItem_RemoveAllItemsBlock_3.png b/content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_RemoveItem_RemoveAllItemsBlock_3.png new file mode 100644 index 0000000000000000000000000000000000000000..8981935c8656fb4380d026e4238e23225bb078f0 GIT binary patch literal 911 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 npSj|t!KgTeZ<00000NkvXXu0mjfa=_Ig literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_SetItem_SetItemWithKeyBlock_3.png b/content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_SetItem_SetItemWithKeyBlock_3.png new file mode 100644 index 0000000000000000000000000000000000000000..f1f2ace3f2c7b2e4f320c30355bee3e9de1eb9f7 GIT binary patch literal 1017 zcmVPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1CB{VK~!i%?V3+d z6G0fp_vX=$;nAZM(iSx)8<{a+%C+4UQ&fzN%os4`+U|-eD#pes zG*-gfT*1?cMZw2Xg;mxYM68`tv3RU)Y_litzmeBGNKBlgN!8fy-XAs*SJ=(rr2o-R zKiI;`hHOoQn7QS3HZr*+#{qMl4W?!c1AaW7WT~G&L@usw$`-p2(>IztO`}xxv6-Z1 z44Fco$i#MYPoC{8#I~{**)x~k;!%j%y;o(CIVfJNiOi9)oPpQnR+++F-zZ{FnXzl~ zxLn;5aqC+<;%~JAQlM;MP6@vi{Y3}+R-~4(x1U#J6cdXB&S7=52^mEU{s~IxL+?|k z`^MzFP}zc%F@4Y|H+}9=F<4CWK6RXo)$045{;N=KSl)GEo=t!ME&pO-Grs+7R+OGH zV#Yu?M~xFW8N(~E;|hb-=ZYz1N?lVoN2zzDM9woOV*_u>thsyirI}JYV|u1=#NCLQ zIa4QM3_KiLIM(ZJsuY#5KPeM9VsTJr^~FXP#zbw_&c==nv3Mxex0?b;8H4omy3~>% zMm%f!H8|ZjCO6gbuXF~KbYnK5kHh^Zq+pD1(0oqZ;N^%iv#FD@6WyRsng{O|TDMfD zaHo$u4ocYHa63lzsYuV5oNLI6%^W5DCYYLAic~YE$_OiMyRuaJxwf^RDN6||(lw@m zIfq9X${-Bs3q`w3De%eBJk`)$4&Un`i&#MPbDbV86=6QEBV&VRLt2EGcO3OH2j!L= z`8hc!j{^VASb$I9s79}e;vVtMA{>$delmUiQTdE8c6Dgx9Ix{aM38SxhlTjOFr_P( npSj|t!KgTeZ<00000NkvXXu0mjfa=_Ig literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_SetItem_SetItemWithValueBlock_3.png b/content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_SetItem_SetItemWithValueBlock_3.png new file mode 100644 index 0000000000000000000000000000000000000000..f1f2ace3f2c7b2e4f320c30355bee3e9de1eb9f7 GIT binary patch literal 1017 zcmVPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1CB{VK~!i%?V3+d z6G0fp_vX=$;nAZM(iSx)8<{a+%C+4UQ&fzN%os4`+U|-eD#pes zG*-gfT*1?cMZw2Xg;mxYM68`tv3RU)Y_litzmeBGNKBlgN!8fy-XAs*SJ=(rr2o-R zKiI;`hHOoQn7QS3HZr*+#{qMl4W?!c1AaW7WT~G&L@usw$`-p2(>IztO`}xxv6-Z1 z44Fco$i#MYPoC{8#I~{**)x~k;!%j%y;o(CIVfJNiOi9)oPpQnR+++F-zZ{FnXzl~ zxLn;5aqC+<;%~JAQlM;MP6@vi{Y3}+R-~4(x1U#J6cdXB&S7=52^mEU{s~IxL+?|k z`^MzFP}zc%F@4Y|H+}9=F<4CWK6RXo)$045{;N=KSl)GEo=t!ME&pO-Grs+7R+OGH zV#Yu?M~xFW8N(~E;|hb-=ZYz1N?lVoN2zzDM9woOV*_u>thsyirI}JYV|u1=#NCLQ zIa4QM3_KiLIM(ZJsuY#5KPeM9VsTJr^~FXP#zbw_&c==nv3Mxex0?b;8H4omy3~>% zMm%f!H8|ZjCO6gbuXF~KbYnK5kHh^Zq+pD1(0oqZ;N^%iv#FD@6WyRsng{O|TDMfD zaHo$u4ocYHa63lzsYuV5oNLI6%^W5DCYYLAic~YE$_OiMyRuaJxwf^RDN6||(lw@m zIfq9X${-Bs3q`w3De%eBJk`)$4&Un`i&#MPbDbV86=6QEBV&VRLt2EGcO3OH2j!L= z`8hc!j{^VASb$I9s79}e;vVtMA{>$delmUiQTdE8c6Dgx9Ix{aM38SxhlTjOFr_P( npSj|t!KgTeZ<00000NkvXXu0mjfa=_Ig literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_SetItem_SetItemsWithKeyBlock_3.png b/content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_SetItem_SetItemsWithKeyBlock_3.png new file mode 100644 index 0000000000000000000000000000000000000000..f1f2ace3f2c7b2e4f320c30355bee3e9de1eb9f7 GIT binary patch literal 1017 zcmVPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1CB{VK~!i%?V3+d z6G0fp_vX=$;nAZM(iSx)8<{a+%C+4UQ&fzN%os4`+U|-eD#pes zG*-gfT*1?cMZw2Xg;mxYM68`tv3RU)Y_litzmeBGNKBlgN!8fy-XAs*SJ=(rr2o-R zKiI;`hHOoQn7QS3HZr*+#{qMl4W?!c1AaW7WT~G&L@usw$`-p2(>IztO`}xxv6-Z1 z44Fco$i#MYPoC{8#I~{**)x~k;!%j%y;o(CIVfJNiOi9)oPpQnR+++F-zZ{FnXzl~ zxLn;5aqC+<;%~JAQlM;MP6@vi{Y3}+R-~4(x1U#J6cdXB&S7=52^mEU{s~IxL+?|k z`^MzFP}zc%F@4Y|H+}9=F<4CWK6RXo)$045{;N=KSl)GEo=t!ME&pO-Grs+7R+OGH zV#Yu?M~xFW8N(~E;|hb-=ZYz1N?lVoN2zzDM9woOV*_u>thsyirI}JYV|u1=#NCLQ zIa4QM3_KiLIM(ZJsuY#5KPeM9VsTJr^~FXP#zbw_&c==nv3Mxex0?b;8H4omy3~>% zMm%f!H8|ZjCO6gbuXF~KbYnK5kHh^Zq+pD1(0oqZ;N^%iv#FD@6WyRsng{O|TDMfD zaHo$u4ocYHa63lzsYuV5oNLI6%^W5DCYYLAic~YE$_OiMyRuaJxwf^RDN6||(lw@m zIfq9X${-Bs3q`w3De%eBJk`)$4&Un`i&#MPbDbV86=6QEBV&VRLt2EGcO3OH2j!L= z`8hc!j{^VASb$I9s79}e;vVtMA{>$delmUiQTdE8c6Dgx9Ix{aM38SxhlTjOFr_P( npSj|t!KgTeZ<00000NkvXXu0mjfa=_Ig literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_SetItem_SetItemsWithKeysBlock_3.png b/content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_SetItem_SetItemsWithKeysBlock_3.png new file mode 100644 index 0000000000000000000000000000000000000000..f1f2ace3f2c7b2e4f320c30355bee3e9de1eb9f7 GIT binary patch literal 1017 zcmVPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1CB{VK~!i%?V3+d z6G0fp_vX=$;nAZM(iSx)8<{a+%C+4UQ&fzN%os4`+U|-eD#pes zG*-gfT*1?cMZw2Xg;mxYM68`tv3RU)Y_litzmeBGNKBlgN!8fy-XAs*SJ=(rr2o-R zKiI;`hHOoQn7QS3HZr*+#{qMl4W?!c1AaW7WT~G&L@usw$`-p2(>IztO`}xxv6-Z1 z44Fco$i#MYPoC{8#I~{**)x~k;!%j%y;o(CIVfJNiOi9)oPpQnR+++F-zZ{FnXzl~ zxLn;5aqC+<;%~JAQlM;MP6@vi{Y3}+R-~4(x1U#J6cdXB&S7=52^mEU{s~IxL+?|k z`^MzFP}zc%F@4Y|H+}9=F<4CWK6RXo)$045{;N=KSl)GEo=t!ME&pO-Grs+7R+OGH zV#Yu?M~xFW8N(~E;|hb-=ZYz1N?lVoN2zzDM9woOV*_u>thsyirI}JYV|u1=#NCLQ zIa4QM3_KiLIM(ZJsuY#5KPeM9VsTJr^~FXP#zbw_&c==nv3Mxex0?b;8H4omy3~>% zMm%f!H8|ZjCO6gbuXF~KbYnK5kHh^Zq+pD1(0oqZ;N^%iv#FD@6WyRsng{O|TDMfD zaHo$u4ocYHa63lzsYuV5oNLI6%^W5DCYYLAic~YE$_OiMyRuaJxwf^RDN6||(lw@m zIfq9X${-Bs3q`w3De%eBJk`)$4&Un`i&#MPbDbV86=6QEBV&VRLt2EGcO3OH2j!L= z`8hc!j{^VASb$I9s79}e;vVtMA{>$delmUiQTdE8c6Dgx9Ix{aM38SxhlTjOFr_P( npSj|t!KgTeZ<00000NkvXXu0mjfa=_Ig literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_SetItem_SetItemsWithValueBlock_3.png b/content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_SetItem_SetItemsWithValueBlock_3.png new file mode 100644 index 0000000000000000000000000000000000000000..f1f2ace3f2c7b2e4f320c30355bee3e9de1eb9f7 GIT binary patch literal 1017 zcmVPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1CB{VK~!i%?V3+d z6G0fp_vX=$;nAZM(iSx)8<{a+%C+4UQ&fzN%os4`+U|-eD#pes zG*-gfT*1?cMZw2Xg;mxYM68`tv3RU)Y_litzmeBGNKBlgN!8fy-XAs*SJ=(rr2o-R zKiI;`hHOoQn7QS3HZr*+#{qMl4W?!c1AaW7WT~G&L@usw$`-p2(>IztO`}xxv6-Z1 z44Fco$i#MYPoC{8#I~{**)x~k;!%j%y;o(CIVfJNiOi9)oPpQnR+++F-zZ{FnXzl~ zxLn;5aqC+<;%~JAQlM;MP6@vi{Y3}+R-~4(x1U#J6cdXB&S7=52^mEU{s~IxL+?|k z`^MzFP}zc%F@4Y|H+}9=F<4CWK6RXo)$045{;N=KSl)GEo=t!ME&pO-Grs+7R+OGH zV#Yu?M~xFW8N(~E;|hb-=ZYz1N?lVoN2zzDM9woOV*_u>thsyirI}JYV|u1=#NCLQ zIa4QM3_KiLIM(ZJsuY#5KPeM9VsTJr^~FXP#zbw_&c==nv3Mxex0?b;8H4omy3~>% zMm%f!H8|ZjCO6gbuXF~KbYnK5kHh^Zq+pD1(0oqZ;N^%iv#FD@6WyRsng{O|TDMfD zaHo$u4ocYHa63lzsYuV5oNLI6%^W5DCYYLAic~YE$_OiMyRuaJxwf^RDN6||(lw@m zIfq9X${-Bs3q`w3De%eBJk`)$4&Un`i&#MPbDbV86=6QEBV&VRLt2EGcO3OH2j!L= z`8hc!j{^VASb$I9s79}e;vVtMA{>$delmUiQTdE8c6Dgx9Ix{aM38SxhlTjOFr_P( npSj|t!KgTeZ<00000NkvXXu0mjfa=_Ig literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_SetItem_SetItemsWithValuesBlock_3.png b/content/static/2024.11/blocks/Cortex_Blocks_Dictionaries_SetItem_SetItemsWithValuesBlock_3.png new file mode 100644 index 0000000000000000000000000000000000000000..f1f2ace3f2c7b2e4f320c30355bee3e9de1eb9f7 GIT binary patch literal 1017 zcmVPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1CB{VK~!i%?V3+d z6G0fp_vX=$;nAZM(iSx)8<{a+%C+4UQ&fzN%os4`+U|-eD#pes zG*-gfT*1?cMZw2Xg;mxYM68`tv3RU)Y_litzmeBGNKBlgN!8fy-XAs*SJ=(rr2o-R zKiI;`hHOoQn7QS3HZr*+#{qMl4W?!c1AaW7WT~G&L@usw$`-p2(>IztO`}xxv6-Z1 z44Fco$i#MYPoC{8#I~{**)x~k;!%j%y;o(CIVfJNiOi9)oPpQnR+++F-zZ{FnXzl~ zxLn;5aqC+<;%~JAQlM;MP6@vi{Y3}+R-~4(x1U#J6cdXB&S7=52^mEU{s~IxL+?|k z`^MzFP}zc%F@4Y|H+}9=F<4CWK6RXo)$045{;N=KSl)GEo=t!ME&pO-Grs+7R+OGH zV#Yu?M~xFW8N(~E;|hb-=ZYz1N?lVoN2zzDM9woOV*_u>thsyirI}JYV|u1=#NCLQ zIa4QM3_KiLIM(ZJsuY#5KPeM9VsTJr^~FXP#zbw_&c==nv3Mxex0?b;8H4omy3~>% zMm%f!H8|ZjCO6gbuXF~KbYnK5kHh^Zq+pD1(0oqZ;N^%iv#FD@6WyRsng{O|TDMfD zaHo$u4ocYHa63lzsYuV5oNLI6%^W5DCYYLAic~YE$_OiMyRuaJxwf^RDN6||(lw@m zIfq9X${-Bs3q`w3De%eBJk`)$4&Un`i&#MPbDbV86=6QEBV&VRLt2EGcO3OH2j!L= z`8hc!j{^VASb$I9s79}e;vVtMA{>$delmUiQTdE8c6Dgx9Ix{aM38SxhlTjOFr_P( npSj|t!KgTeZ<00000NkvXXu0mjfa=_Ig literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Email_SendEmail_SendEmailUsingSmtpServerBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_Email_SendEmail_SendEmailUsingSmtpServerBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..8ec802540c6c57e0e7f58905fe99bc9578929e0e GIT binary patch literal 1203 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 literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Exceptions_HandleWorkspaceException_HandleWorkspaceExceptionBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_Exceptions_HandleWorkspaceException_HandleWorkspaceExceptionBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..4db384bbbe681afa42c681c90f4ff0a54877d51b GIT binary patch literal 844 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 Xv!X($e1@^q00000NkvXXu0mjf+9mwr literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_CheckFile_CheckFileExistsBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_CheckFile_CheckFileExistsBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..55db42419c465cab454634641db87067636a7aad GIT binary patch literal 1002 zcmVPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1Aj?GK~!i%?V3+d z)Ib=fr%c#iw6_BgkZ$K1QQ}L5{SmYc6Zs`7z8n} z5*Bwsz;T{wXX%!=?Lgb@PO?w(#L$^`=GXU~ciOdvSEg0GW?H2|Ghdv|<%>)QJ98}! z=d8jF7vod|lhw-rqE6JzV_!Jrknd!rHbSyAHZSNhp z(^Z!|A4&@@7TDM7Z!x*^N}ey323#z#i$n{O=X;ejTr9AQD(L(q;d%-TN(!#$z@Q}H zdJ+tZ3zrGl_=oT0^^$ZZVA#w@-&VOL6dv_*}n>OL6dv_*}n>OL6d zv_*}n>Yf7IX&kWm)ou2CVO`kdW57AfCdUtRPk`<2AF^ljDo-QofSH0FpZsGB_71y0 z!O`6sJw?Ypgx&}VJ4!KN2C+;IUH4VW1iCj4~HiPG?^3R~a)Z{K8GFy zlPQSF`(>~1v4=0p?JohDarSSC8j#NMjN@ok^G1eSjWhg)Zc?(5Yq@?l5 zQH5&guFpQ}A&Mv<-eXZOm(ph5ZX#l1{)Vh3{{)i+0<;REz-5~RGW(|A-M>T3~ z%N`KlEP{~ipr=>vj#n=Uu-g-bD?HCX5}kDOiaBXt6;NK~@`YPk0$Rl-eAC>HlwlbE Y0TI^=EU<#%n*aa+07*qoM6N<$f>EK&*8l(j literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_CheckFolder_CheckFolderExistsBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_CheckFolder_CheckFolderExistsBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..790e7ecb13195e68cab801428d71fe9eeb12d82b GIT binary patch literal 1017 zcmVPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1CB{VK~!i%?V3+d z6G0fp_vX=$;nAZwOQ~8SkqW(}bPk=>W8Ai;q9}$bRG|%8`7iubVm0F;)%}M*Z;nXKFsk!64 z4AV(sLTj6rUE~>~Cw2D#Og9g}bn^gAH-`qhH=SXNt3|d^sIVYmO)^_#4_;--W1Xi% zfdOi}R1;yhubuq^HvT?O9`n2$3hY~cM}!()fWrqv9rrvO3hXS|^6KZ`a?dgs3ar=a zWRLbWm{hq|XAj@x$e2{t0t{N+D3LL#tPNQ0@Q92_Wo^J9DkhZ&U~tr;Vp4ek21hL_ zCY1+ZaMYq=Qn|0d3VSs+|9zXiSXgiJmrTK#qheCIFTi&Bo&WRsALKckZ4+a(BLzD; z{>K*V0=qly9)EV}H(T4<7qhOgCcC-EW)?R@9DoZ3j0_9`Kbv#2G|F#q*SE`JMlGxv znRV~{;r}MFNIKfbtuAmv=HpX|q^me|D?lw`Kuu zWEPJxeFi2=5W)Lpub0^Um#d9)qD-lE7<1NG%`r;%983oE;p>(dIniGA(8(lPJemla z20jG9QJKXt{4q-R9Bgjc4Tj1BKrn|=m6BsrS)!RZu@QSM6j-TpC=PjcAsfgFCF~uP zqF10zJfat))UJL4aegR6}1XFuUI?{~EGD4?qRhCk?`)FiJQG(LZf_aQR zhesI-5J28W(JE8Yc;zTZP4w2M@AZ&HG!XAt(8Hy)8MiCQ*o1!~Dx27M+yHPOc)7Vh z`Iy*~?U?^f!oVwV)TGw7>>=l!MG%q;^z_Q@r}+yG*v-k*C0^&Bh()@2#hkJ)J5XN5 n;;9>20$S-L-f3=R$}o)o`%`FbMFLg~00000NkvXXu0mjfFNxP> literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_CopyFile_CopyFileBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_CopyFile_CopyFileBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..df414d2f5da2b93f3728be7cb3c86a17c5f6f9f5 GIT binary patch literal 986 zcmV<0110>4P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D18+%0K~!i%?V3+d z)Ib=fr%c#iw6_BgkZ$K1QQ|$2}Wa(?!xZIY!)#r z62Jun9Or5K?hfT`8MfW+PO?w(1Tud*^W%MIrY*Hp*-qh_?Gy*?d|@`1F9;Lt&$T$5 zb5?Ey7%dGu8wAz!G3tR?cxBF^!D0jNnTjYO;8pYhbeN3HPSuZG~InL)7%F$&56MtOcllA>XxY08$wsq_uZF`Q`btJ(feu&?Fc-sCPS>QCwfTq3Y`q6JZZRcXT|0&7=M{nLc&DKIE4xSj)p(tztp zFeoWpCScR%pV4OQGZcJVG!8mtX+?cxVgK_S( zxG{CzQ(*Po12O-7Q#@a&dbZ^laL#er@#EYRVB33#;@P~;-H1M5reMb>|HOh@7x$<9 z>&<-rDJmO#L9H*eSzF%~(~GrWT)>?Vm>C!*{B+Kb((tR2sBZoVYNCZULo;h$A1_5? zoEaD*g=-)Zheszt>G?w2X7pm#UM67JB#?e1Z^~Ze!a`&ozF2LJgWuiiPEhN^4b7Bf zU5|lL3a)SM2PLN!^(>~sp|4l&oNWhp9gHS~$ww*fAyZA;xOQC!oBQTZMvYeE@JNix zv_v^38#m$I{l7skKV`jgX03G{3;kSoj%5QxCA zD}E~0o2FZ*Ffc^X>c|0|)Q{g+ylANBSlHq8gK$WXypDe_nH^YgsA8jtN;OXEO)$5% z$eBir(g^F6(lSoJw)b0+ibz3nwqS~}=I|)P0Rl+fDB>bT#wSN5uA;j>d#{HmhS%MB z50_*+?=}#zv2aCJwz2M{TQ70wrz~S`bfYZ$%v$&aj;l1{?*IS*07*qo IM6N<$f^Q+legFUf literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_CopyFile_CopyFilesBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_CopyFile_CopyFilesBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..df414d2f5da2b93f3728be7cb3c86a17c5f6f9f5 GIT binary patch literal 986 zcmV<0110>4P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D18+%0K~!i%?V3+d z)Ib=fr%c#iw6_BgkZ$K1QQ|$2}Wa(?!xZIY!)#r z62Jun9Or5K?hfT`8MfW+PO?w(1Tud*^W%MIrY*Hp*-qh_?Gy*?d|@`1F9;Lt&$T$5 zb5?Ey7%dGu8wAz!G3tR?cxBF^!D0jNnTjYO;8pYhbeN3HPSuZG~InL)7%F$&56MtOcllA>XxY08$wsq_uZF`Q`btJ(feu&?Fc-sCPS>QCwfTq3Y`q6JZZRcXT|0&7=M{nLc&DKIE4xSj)p(tztp zFeoWpCScR%pV4OQGZcJVG!8mtX+?cxVgK_S( zxG{CzQ(*Po12O-7Q#@a&dbZ^laL#er@#EYRVB33#;@P~;-H1M5reMb>|HOh@7x$<9 z>&<-rDJmO#L9H*eSzF%~(~GrWT)>?Vm>C!*{B+Kb((tR2sBZoVYNCZULo;h$A1_5? zoEaD*g=-)Zheszt>G?w2X7pm#UM67JB#?e1Z^~Ze!a`&ozF2LJgWuiiPEhN^4b7Bf zU5|lL3a)SM2PLN!^(>~sp|4l&oNWhp9gHS~$ww*fAyZA;xOQC!oBQTZMvYeE@JNix zv_v^38#m$I{l7skKV`jgX03G{3;kSoj%5QxCA zD}E~0o2FZ*Ffc^X>c|0|)Q{g+ylANBSlHq8gK$WXypDe_nH^YgsA8jtN;OXEO)$5% z$eBir(g^F6(lSoJw)b0+ibz3nwqS~}=I|)P0Rl+fDB>bT#wSN5uA;j>d#{HmhS%MB z50_*+?=}#zv2aCJwz2M{TQ70wrz~S`bfYZ$%v$&aj;l1{?*IS*07*qo IM6N<$f^Q+legFUf literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_CopyFolder_CopyFolderBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_CopyFolder_CopyFolderBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..ad53eea8ad7937bdbb55534ab550064275f3541f GIT binary patch literal 1003 zcmVPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1As|HK~!i%?V3+d z6G0fp_vX=$;nAZ1Jmt0Z5L>_lk`cRKxSsA?~nJLnccFMD%(k4v7OAQ9Z%24;%R1r{a7>O zF(-9RV4P?qk-rEa>O#Xj1r~v2Suw|bL<}<0JcF-&s6^%}HNa%s)9!W4t52fSaL0KW zrjta6(Y778%ri!Jn(iT(X&!=^<{_AA4h?p1Cc~DqWwu_bvQEO7WUkB}yvmVt_0plh z09CBiMA+SHYxjUnzR#0$_R68azU8+>sNn@T{9&khd*M)Er^%M8Uw`-dmbp-1{nlC5 z=s<%>?bYh+;hR-5CY_A{gR<)tGA5mk0jnK0$e46C1`MKN(s>95M=dHQorhp>)S_b2 zc?bqaEh;9R2MVmTQ)7!iitNSGT9ZF#N?soolgveuKMK+!H-|Va(W^ zf2VINaZ!#844J~5$izYYNVIkq#vW(S(Pu6aFl+=UzlnEwFLOa5GxuL+k3Sc`yK5EE z>%)!B;W1{wz+?$-l=nqTvp#&?Z24?hg~PR8yVE)j?mL(a2*K;51B2DFZ8xs(U<=>< zVAO0?59(}^mnGT}Y`cJW_7BBXe#v_6#99jlR;iv$dRpPY#rjf(62tsBoUz?^3x@Sc zje$df;qm;eLS|r95=;i&Ef_R9n<3X(C@_3=R&R8_HB%Z$F!;%Qp{uXAb!u0NrvXD7 zby$Z6JF~??S2vF!SnwQ^#xbFudvb@hoz`!d`wu1#RqT#ZK`<%omI$6Y#38xEQjP#D z&2I5Eafg>9?m!?3hFuYlDAMxQDF_V7Y@N#iecpcjvEXGxJ;#C$mLG&edg5*S{{ch? zCe|7@3SFsDQg4E(wIv;C#$*{`rzvJ!CPs?m9hOO51U_ii}MKJEF3Ub;k_=4}zDQ|C6_gHQ9~%HS-o;fulN& zw&RX??<|6l9AKtbZa>Xm@W5_Pr!Mh2|3nNj%`0}oz3f4$ip5hmj0AMjNxaj1oGHt) Z{sX}dFNDDc7YYCX002ovPDHLkV1lF_&=vpy literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_CopyFolder_CopyFoldersBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_CopyFolder_CopyFoldersBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..ad53eea8ad7937bdbb55534ab550064275f3541f GIT binary patch literal 1003 zcmVPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1As|HK~!i%?V3+d z6G0fp_vX=$;nAZ1Jmt0Z5L>_lk`cRKxSsA?~nJLnccFMD%(k4v7OAQ9Z%24;%R1r{a7>O zF(-9RV4P?qk-rEa>O#Xj1r~v2Suw|bL<}<0JcF-&s6^%}HNa%s)9!W4t52fSaL0KW zrjta6(Y778%ri!Jn(iT(X&!=^<{_AA4h?p1Cc~DqWwu_bvQEO7WUkB}yvmVt_0plh z09CBiMA+SHYxjUnzR#0$_R68azU8+>sNn@T{9&khd*M)Er^%M8Uw`-dmbp-1{nlC5 z=s<%>?bYh+;hR-5CY_A{gR<)tGA5mk0jnK0$e46C1`MKN(s>95M=dHQorhp>)S_b2 zc?bqaEh;9R2MVmTQ)7!iitNSGT9ZF#N?soolgveuKMK+!H-|Va(W^ zf2VINaZ!#844J~5$izYYNVIkq#vW(S(Pu6aFl+=UzlnEwFLOa5GxuL+k3Sc`yK5EE z>%)!B;W1{wz+?$-l=nqTvp#&?Z24?hg~PR8yVE)j?mL(a2*K;51B2DFZ8xs(U<=>< zVAO0?59(}^mnGT}Y`cJW_7BBXe#v_6#99jlR;iv$dRpPY#rjf(62tsBoUz?^3x@Sc zje$df;qm;eLS|r95=;i&Ef_R9n<3X(C@_3=R&R8_HB%Z$F!;%Qp{uXAb!u0NrvXD7 zby$Z6JF~??S2vF!SnwQ^#xbFudvb@hoz`!d`wu1#RqT#ZK`<%omI$6Y#38xEQjP#D z&2I5Eafg>9?m!?3hFuYlDAMxQDF_V7Y@N#iecpcjvEXGxJ;#C$mLG&edg5*S{{ch? zCe|7@3SFsDQg4E(wIv;C#$*{`rzvJ!CPs?m9hOO51U_ii}MKJEF3Ub;k_=4}zDQ|C6_gHQ9~%HS-o;fulN& zw&RX??<|6l9AKtbZa>Xm@W5_Pr!Mh2|3nNj%`0}oz3f4$ip5hmj0AMjNxaj1oGHt) Z{sX}dFNDDc7YYCX002ovPDHLkV1lF_&=vpy literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_CopyFolder_DuplicateFolderBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_CopyFolder_DuplicateFolderBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..ad53eea8ad7937bdbb55534ab550064275f3541f GIT binary patch literal 1003 zcmVPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1As|HK~!i%?V3+d z6G0fp_vX=$;nAZ1Jmt0Z5L>_lk`cRKxSsA?~nJLnccFMD%(k4v7OAQ9Z%24;%R1r{a7>O zF(-9RV4P?qk-rEa>O#Xj1r~v2Suw|bL<}<0JcF-&s6^%}HNa%s)9!W4t52fSaL0KW zrjta6(Y778%ri!Jn(iT(X&!=^<{_AA4h?p1Cc~DqWwu_bvQEO7WUkB}yvmVt_0plh z09CBiMA+SHYxjUnzR#0$_R68azU8+>sNn@T{9&khd*M)Er^%M8Uw`-dmbp-1{nlC5 z=s<%>?bYh+;hR-5CY_A{gR<)tGA5mk0jnK0$e46C1`MKN(s>95M=dHQorhp>)S_b2 zc?bqaEh;9R2MVmTQ)7!iitNSGT9ZF#N?soolgveuKMK+!H-|Va(W^ zf2VINaZ!#844J~5$izYYNVIkq#vW(S(Pu6aFl+=UzlnEwFLOa5GxuL+k3Sc`yK5EE z>%)!B;W1{wz+?$-l=nqTvp#&?Z24?hg~PR8yVE)j?mL(a2*K;51B2DFZ8xs(U<=>< zVAO0?59(}^mnGT}Y`cJW_7BBXe#v_6#99jlR;iv$dRpPY#rjf(62tsBoUz?^3x@Sc zje$df;qm;eLS|r95=;i&Ef_R9n<3X(C@_3=R&R8_HB%Z$F!;%Qp{uXAb!u0NrvXD7 zby$Z6JF~??S2vF!SnwQ^#xbFudvb@hoz`!d`wu1#RqT#ZK`<%omI$6Y#38xEQjP#D z&2I5Eafg>9?m!?3hFuYlDAMxQDF_V7Y@N#iecpcjvEXGxJ;#C$mLG&edg5*S{{ch? zCe|7@3SFsDQg4E(wIv;C#$*{`rzvJ!CPs?m9hOO51U_ii}MKJEF3Ub;k_=4}zDQ|C6_gHQ9~%HS-o;fulN& zw&RX??<|6l9AKtbZa>Xm@W5_Pr!Mh2|3nNj%`0}oz3f4$ip5hmj0AMjNxaj1oGHt) Z{sX}dFNDDc7YYCX002ovPDHLkV1lF_&=vpy literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_CreateFolder_CreateFolderBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_CreateFolder_CreateFolderBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..c018b7497891ebed595b6c622ce6ab03f8221b5f GIT binary patch literal 942 zcmV;f15x~mP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D14BtfK~!i%?V3+d z6G0fp_vX=$;nAZ2MI=Eu-j7FC@G?C zA%&Jgi{m`IGqBKiy1Nv1J4v793CYat^8R?|ota(M@XEAuH%u!(Y9@1;L^8*8up4WB zJYi*T35*ksq>5JoL|v$vr@$hx3?pILPl-WVnrHBh3zf>>qz340bH=`HIP;U})Z9rv z4Rgyxht@VNyT&s{ck1pTm~I||>EfMFrP^qY8JbTSuKfE!EWF=oKP1SOS}3r3^HALK{KAHd`tnl{Fw`d%Cmae4kLUdg0mEm7RnmLf06ew=!@q&4bn!{d30RqUoQ1r@_G(I_6r#hl__gN2F z#LDPx^Lx0IHj{P}8JjxW5tmKW9X9|R2tM81pS(@fWDxUfG6p_@qdK*=Wsf-DEP{|6 zpr=>wzbIaD!0yguukm^QnHZ#-SIv}t-GTBdk<8xF641&mPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D14BtfK~!i%?V3+d z6G0fp_vX=$;nAZ2MI=Eu-j7FC@G?C zA%&Jgi{m`IGqBKiy1Nv1J4v793CYat^8R?|ota(M@XEAuH%u!(Y9@1;L^8*8up4WB zJYi*T35*ksq>5JoL|v$vr@$hx3?pILPl-WVnrHBh3zf>>qz340bH=`HIP;U})Z9rv z4Rgyxht@VNyT&s{ck1pTm~I||>EfMFrP^qY8JbTSuKfE!EWF=oKP1SOS}3r3^HALK{KAHd`tnl{Fw`d%Cmae4kLUdg0mEm7RnmLf06ew=!@q&4bn!{d30RqUoQ1r@_G(I_6r#hl__gN2F z#LDPx^Lx0IHj{P}8JjxW5tmKW9X9|R2tM81pS(@fWDxUfG6p_@qdK*=Wsf-DEP{|6 zpr=>wzbIaD!0yguukm^QnHZ#-SIv}t-GTBdk<8xF641&mPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D19C}3K~!i%?V3+d z6G0fp_vX=$;nAZxL!_QskY z%{Xf}e2jAqO&2Z$h-+w=C&1!kSyskzA2F4Tw2a_O4{ADpovUE7?J4)BrSg+0G~8L4 zhPf4{z-Zf!Ta^*x3r+U`%rp z5)6t9mkQYAhac?ql5{FySj@-Y7T9Yhp_Z3)W|4=M`FN^0(C1qRo0cRYS?LW$W0k(T^B%Uqm>_+qfQw2Lc`zw~*inu@H zU2pF5Pf^@C@Jl_R&c^n>m|foT`vqKUz|_Dn;HL{-lty1|icQV|iPJ}8 zIDX1k8aojDjdNizXm~cy&a+rxd$nW#^7=9YY<=ruN3Dc`Mx|oAU^ve$*0I3wLgwUD ze{qFc-8|X>qq?>uqb83*#{z?&%op4G7ZTmc02ov!VDuw#jt$m{@5niEPo`sVU7{@( zKyc*lir5U3=m+S^0v*?n-xnKOs{Q)0iau8l#$yfbI&d6&9sOQ1JurV!MG6v}j)I$D zZf=oNjTog7A{E{)al*E%5ve9ANKO|lV9YtpGY$|y!5c+Xq{#T>Xp<}GtuOBN5JfEH z!E>!1F3EP*ts!C);exbmW8O)hzr>-VJjZNwn_0G*x9|xZS7@{ycSwD+2tu}knO?m+ zS-7OYZcnXUk$L`+sbrd0?P>R_f(j~=UAtu@pp#p{H_eSmS(fz=(2CI&fk{}y00000 LNkvXXu0mjfi`K+* literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_DeleteFile_DeleteFilesBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_DeleteFile_DeleteFilesBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..d1b40036b71dcd32427ecd509c7e642d18bd6bfd GIT binary patch literal 989 zcmV<310wv1P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D19C}3K~!i%?V3+d z6G0fp_vX=$;nAZxL!_QskY z%{Xf}e2jAqO&2Z$h-+w=C&1!kSyskzA2F4Tw2a_O4{ADpovUE7?J4)BrSg+0G~8L4 zhPf4{z-Zf!Ta^*x3r+U`%rp z5)6t9mkQYAhac?ql5{FySj@-Y7T9Yhp_Z3)W|4=M`FN^0(C1qRo0cRYS?LW$W0k(T^B%Uqm>_+qfQw2Lc`zw~*inu@H zU2pF5Pf^@C@Jl_R&c^n>m|foT`vqKUz|_Dn;HL{-lty1|icQV|iPJ}8 zIDX1k8aojDjdNizXm~cy&a+rxd$nW#^7=9YY<=ruN3Dc`Mx|oAU^ve$*0I3wLgwUD ze{qFc-8|X>qq?>uqb83*#{z?&%op4G7ZTmc02ov!VDuw#jt$m{@5niEPo`sVU7{@( zKyc*lir5U3=m+S^0v*?n-xnKOs{Q)0iau8l#$yfbI&d6&9sOQ1JurV!MG6v}j)I$D zZf=oNjTog7A{E{)al*E%5ve9ANKO|lV9YtpGY$|y!5c+Xq{#T>Xp<}GtuOBN5JfEH z!E>!1F3EP*ts!C);exbmW8O)hzr>-VJjZNwn_0G*x9|xZS7@{ycSwD+2tu}knO?m+ zS-7OYZcnXUk$L`+sbrd0?P>R_f(j~=UAtu@pp#p{H_eSmS(fz=(2CI&fk{}y00000 LNkvXXu0mjfi`K+* literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_DeleteFolder_DeleteFolderBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_DeleteFolder_DeleteFolderBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..a3a65e353793b391a3fb028802c005218df0f011 GIT binary patch literal 1002 zcmVPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1Aj?GK~!i%?V3+d z6G0fp_vX=$;nAZJ0;05# z0&OYaIM439by?nNJN)T(l0M0kO=f1N?~nJL*=boPD%Z(ph1H!&r0u zDR2Io!uYSAk^DsfaW`7#A+RVc$4PnqBW945mKl5l;VC~jv z)@VnAk#?*5;^CVmHYS~|0D~4*OKeO!TLV_D9k4O!Yz-L1#iVl=3{F~HOgeYL;H1UH zq;nSxPFh?{I(HOUVY@0O=QhNPsg)!CoGS!X!%Hm5p81qZh{X zWx|ub8;Of^VqnM==0qm;_77ESb75>fd!9aXiGX1vK=}>4%Lkc*es5L8TCoz8A~Hyy zN!dgn?t=i=m%*401EUf|u#m})N7==_L7R7c4BU1w3h2Yvb=4AzGSzxNeJ;@v3m~|1yCM$5B>DrK$piYV{rKZ@{YbT4sRiqo8wcZS4V^l09eCULe*npW zskMd@B)C=-Jp^-Wi=1f2sEm-Q_;HC7j$QRkX-bfsELg-?b695_Ab_G9MWalS@ygK> z*U?@dKkFfjc#ucintiz>yJ^3Sj19#*lCq0+Ck=oALY7;2m2GNGwqkkDxPw>VxK69> z`8~lqiy&kN*y-8ZPxBW7u$#m4mt>uPVg}jfS$D+096&{tO3&Z0641-e;GO1rrX0ul Y2f7t5W%Vzt`v3p{07*qoM6N<$g2q?U-~a#s literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_DeleteFolder_DeleteFoldersBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_DeleteFolder_DeleteFoldersBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..a3a65e353793b391a3fb028802c005218df0f011 GIT binary patch literal 1002 zcmVPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1Aj?GK~!i%?V3+d z6G0fp_vX=$;nAZJ0;05# z0&OYaIM439by?nNJN)T(l0M0kO=f1N?~nJL*=boPD%Z(ph1H!&r0u zDR2Io!uYSAk^DsfaW`7#A+RVc$4PnqBW945mKl5l;VC~jv z)@VnAk#?*5;^CVmHYS~|0D~4*OKeO!TLV_D9k4O!Yz-L1#iVl=3{F~HOgeYL;H1UH zq;nSxPFh?{I(HOUVY@0O=QhNPsg)!CoGS!X!%Hm5p81qZh{X zWx|ub8;Of^VqnM==0qm;_77ESb75>fd!9aXiGX1vK=}>4%Lkc*es5L8TCoz8A~Hyy zN!dgn?t=i=m%*401EUf|u#m})N7==_L7R7c4BU1w3h2Yvb=4AzGSzxNeJ;@v3m~|1yCM$5B>DrK$piYV{rKZ@{YbT4sRiqo8wcZS4V^l09eCULe*npW zskMd@B)C=-Jp^-Wi=1f2sEm-Q_;HC7j$QRkX-bfsELg-?b695_Ab_G9MWalS@ygK> z*U?@dKkFfjc#ucintiz>yJ^3Sj19#*lCq0+Ck=oALY7;2m2GNGwqkkDxPw>VxK69> z`8~lqiy&kN*y-8ZPxBW7u$#m4mt>uPVg}jfS$D+096&{tO3&Z0641-e;GO1rrX0ul Y2f7t5W%Vzt`v3p{07*qoM6N<$g2q?U-~a#s literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_GetFileInformation_GetFileInformationBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_GetFileInformation_GetFileInformationBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..937d26bb50adba733b0acd06d549556f2ef97997 GIT binary patch literal 966 zcmV;%13CPOP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D16xT%K~!i%?V3+d z6G0fp_vX=$;nAZnltL0s~aJcI-@7 zU9vqiD7Zjin}y$Ea{WrSml_0IAh3%>3zF^K3L7pE*hS^lK1{fg0)xVW8#yp247ia5 zgMz|E0yh8QJK0~Djsy&c`Rv;Q*=Jae1WZ-bn5rIwQ699YF;zVVqdaI)W2$-#MtRVp z##Hr4fmIHU*~+&vd%n6OZ1OSSm}QgW`*|e5_75BE*^0{Dh&o`TU?->l*s5J&_ZM6J zB{zPu;@+WC+7jw)?;fzFwURR~;Ccf_28IbgU2a8b`cay--a?(JXCEh zyZ{Aoq^OtBR?Nfdo)Re2b<*^2J9sq*798QOINAMr7XG50)f@)f1U2t z)eB4tbs_`Hm1<7+>gtt>QmSB>2X$Bn0>c+F%@g&*6;jOV07*qoM6N<$f?4swH~;_u literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_GetFolderContent_GetFolderContentBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_GetFolderContent_GetFolderContentBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..1de3b69a68204634f4656255f3d1259122e61ced GIT binary patch literal 1017 zcmVPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1CB{VK~!i%?V3$b z6G0fq_vX=$;nAZ-NasIP2W!XN{cKf!Sr2pifhMn2z^V{c{+1av|U$&FEW;@wYJDy3z;u&Uwy;!qj zF(-XPVw`JaI)52J)QN_95-bwSvSN<=gy>|Xc?Rb^sOju=s)Nb4r`(&Cs86ENaL0KW zW>Q3h(Y778%rizen(iT(X&!=^<{_AA4h{BTCd-yq%50-_$eIa#Qn@mF_&P_9)k}v0 z15|OhBExQ7+xy3C;(eYRvsVrU_AS3HLk%y$;lfbk_QIjS+R2t*Ykv;tfK`R@(WK23616DaXC1cXr7%+&6N#`LL9JQ#JbRL4iQHzR6 z=OGvzwWyeM9w@NVUWG0GD6&_{^$Y%-Er~WNCY=WYY=`gsUoQS6zw@G9;u!5n!A{Tq zv7}pK_h-EE=fC`7g{^(r>Ir>vn|o|_X+y>VxaNS7fg#`*3tpDS_y%{qcpzK!LZ3(T z-cH~4#YH(XFk}j2A`{2eGkLVR(6^R7N1wS!z_1XY{Kntq*<5Nzgk+9^eRVh@Sig4#DKp`E%}hX(7|a-t&>kPfWTasTQNT;Vc``xs?lgW?udA25rkw1GrfHGdH#|ByFHb@!t4AK(aAI~+tcn<0p(XL np1x%ypp!}Ao#tAmEX(>2wJ|3b7aObU00000NkvXXu0mjfjfd9J literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_GetFolderInformation_GetFolderInformationBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_GetFolderInformation_GetFolderInformationBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..c5f0dd3a5cd28483cef35e8919b0498fbd822498 GIT binary patch literal 978 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 KMNUMnLSTX+NZ>mF literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_SearchFile_SearchFilesBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_SearchFile_SearchFilesBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..f12b4f6ba3bf74166bfc0bf299f34cccdc971234 GIT binary patch literal 1040 zcmV+r1n>KaP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1EonsK~!i%?V3+d z6G0fp_vX=$;nAZ5ycDLI}`Xo_h0Fa&dY6B zoMt+#w(I#d88N=oc6Y#Ra|g^e#|FDIToP0BHLdg3!?eDl7@=~c2+f-pCnvcfk8>ZwH+9g1YBE! zL2=^Zu6=_LxaI6EIV8=QMQ(jC0!J&S~ln80WObozv7EFwSX< zJEy7J3T$n2TTFaj6^|zum0fubIOqB7`J1^dz}B~R#G?t5yAgB1Ou_c{|A|R|P23(1 zjyF2A89fY}R9p3SE!7T@)1!3VN6bG~cNLPJl zSA7V`LA;Kt*_Y9lgN=U*7NbWCi$}TVgsq72vtNIOEr&ueQEOpxt>s{pLnP!F-oGy$ zjg~G%3?E2Tn9HpTZaEl=0;~(UgdA%m^mAZP_ehD&vshpo^}pfa&BcKsifGd-B#E{g zw-upOz~+}W!o!;@x)q@x>p?+5pI#&Yg=oPXG=zEF#X1%kevsMSGrzb(T=9Sq5dfnP zg#;1AYii?ikSeU}$*9S{x?_RCxbB?hUr4mIxST-+1VH}XH+A0#SVW4-dK8X6B+jwH z&f*&~CvM3|;10x81UFNzsrRW~pyT@f>uST?;e-fbhv1f~?|JjzC9?wyFRF;dY2fsm zU@o`FnMRDZ5u#wSEm1uWBGq6ElCuTVjGV*0A_oW{y-+lZ6d8{kmAQ`A`uM#bqDUp5 zeA1UovYYqoh}b~1BP+YeJL$t8ap2do?b0000< KMNUMnLSTX+NZ>mF literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_WriteFile_WriteAllLinesBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_WriteFile_WriteAllLinesBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..ffb97ef7b28e20e29613be5ae98bc1c6349c49f5 GIT binary patch literal 993 zcmV<710MW|P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D19nM7K~!i%?V3$b z)Ib==d-LeW@aWN_M?Z!i!`L;V9*7q>fr%c#3kMUrgkZ#1f(em>1R^oG-G$wa5)i|# z2*`_o>|;EWP4R53Xt*Ih8mS&JG|*Ih8mS&JG|*Ih8mS&JG| z*Bu4c*g0S`UpCpZ*;Qeij{z4PmmELJ9Raqrd&ov+bZ#U1fVqMlpZsOBZiC$)_xhV$ z_|EDZyMC!B)LB{IVH0y}{0gS4fbTJ&KB$5Hx|J4O;-6FIt)yv z;Cgf4e-bW0sbelwo8mdzif2x%Om*AAFHwu4Q7_9hb- zEjj6j&zH}@Eq(jt*YGwIF&AR3wH*uxFV-*6lh`anI~;ZX~;O#}wx;5^TtkmODVK&jwa1;;@_VNr$?gI&aT_?o!K z(-Aii2Vdib7Ec^tHDm2=T+arFn2tu-g znO?d(T)QN|ZjY9(@I3!OR5Hy=_LzHBK&dJeOSg;!bjtJiP4j7_EX(=_V+iX3oDe{T P00000NkvXXu0mjffTq*@ literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_WriteFile_WriteAllTextBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_FilesAndFolders_WriteFile_WriteAllTextBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..ffb97ef7b28e20e29613be5ae98bc1c6349c49f5 GIT binary patch literal 993 zcmV<710MW|P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D19nM7K~!i%?V3$b z)Ib==d-LeW@aWN_M?Z!i!`L;V9*7q>fr%c#3kMUrgkZ#1f(em>1R^oG-G$wa5)i|# z2*`_o>|;EWP4R53Xt*Ih8mS&JG|*Ih8mS&JG|*Ih8mS&JG| z*Bu4c*g0S`UpCpZ*;Qeij{z4PmmELJ9Raqrd&ov+bZ#U1fVqMlpZsOBZiC$)_xhV$ z_|EDZyMC!B)LB{IVH0y}{0gS4fbTJ&KB$5Hx|J4O;-6FIt)yv z;Cgf4e-bW0sbelwo8mdzif2x%Om*AAFHwu4Q7_9hb- zEjj6j&zH}@Eq(jt*YGwIF&AR3wH*uxFV-*6lh`anI~;ZX~;O#}wx;5^TtkmODVK&jwa1;;@_VNr$?gI&aT_?o!K z(-Aii2Vdib7Ec^tHDm2=T+arFn2tu-g znO?d(T)QN|ZjY9(@I3!OR5Hy=_LzHBK&dJeOSg;!bjtJiP4j7_EX(=_V+iX3oDe{T P00000NkvXXu0mjffTq*@ literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Flows_EndFlow_EndFlowBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_Flows_EndFlow_EndFlowBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..be0baea4d95403eb39ab4dfec77da792799d4454 GIT binary patch literal 682 zcmV;b0#*HqP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D0zXMaK~z{ry;#3b z!cY+I=IH3?=;%V|s|olAFff|9I668qvN1Bs#$w{=L>w5pkdPnwWF{gL1|9TG}u9An>ktUytj(cUVa<*xTE^cAWayaZc&ojj&Cu4{dv&&9lM8wznZ* zf(AVKesaJY$uT|WjP}qXgzkw1_sSCQ99d?@xL#2+%(We+7IqU3RA8x6%!Sx|I zOi#+zq+H(QaH|0^bP^lCXI=I}?4xu+MUW zVn&OXj1~wnrZ5qOI<~OSNQ)BRW-|_>kN5dp^d)g*+ei4hn$d+g;-@eLu919+qzB6y zD|Id|3d~#(>WE&nw~4F;;b>!-oNsc-kdF*`(J$kem!N+1%Q)sB$TQk9G8cp`#N@b< zwV>cQa^*M&(xOB(Ia3%4s)Z*+&11(?r^8|N;dQ&BFNxUX!@Z1BB^g9HsZ@dhxN99g z_j>-#;i2d&%Af~*gFaLxqg<&}gXM%kg^Pyy&_n64ln^Gn{vMh3B=BMZABAD+D4sQl@wdZ;X=ux;M z!LcblOvdas9gr%E~IB5Q#Mk=2D>BB>|ymtTn_Dc_l3C3&%iO!iUlq QLjV8(07*qoM6N<$g41U_VgLXD literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Flows_RunFlow_RunFlowAsyncBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_Flows_RunFlow_RunFlowAsyncBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..f2741cc233e27e3f43c65dabed58c492eb344732 GIT binary patch literal 1053 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 U$>Yohw*UYD07*qoM6N<$f<~lkqyPW_ literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_GoogleWorkspace_Gmail_SendEmail_SendEmailUsingGmailBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_GoogleWorkspace_Gmail_SendEmail_SendEmailUsingGmailBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..943009e0ad9cff63b7eb4c714ce65841f234a074 GIT binary patch literal 1198 zcmV;f1X25mP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1Vc$gK~!i%?OIJw z6G0g6&7(iVqeqV({TcoY1xf%xK8uv^ z565|SXWHrXo$W4c+icP&c~aeZ-`#z9pP6^2X+ni%r_Wh-rrAoR`;w_NivzuP&9o-% z@e4vm5lvm$(-1@@#*Fu&MaW7dlD2b)2#O_n1z&igx-#dffH>3YbS@@be-eW+XNub} zJwgn`nwIUX@ru!dac4tV+}IEnH#UUDjSXROV`yO=A7 zcoRbjn_kR|$CLwAywRN@^MVo%(Eo4}i@6;#$HY*=P#r(4Z0xdoebZ#FA7Q=OLkSClu-1h2wssFhwm+zR6C)QUF`CU)v?i<<2Gl)FteP+Y^P>Gtw(LGZt*1l3 zj~}Zl4A89^#(Fx`cd5jx3zL8~!&*-V^-d<%Ojs14-pRyb+R%qm;W@0Pqv zB}Og`#0h}f$m&2VNPYe-@|;4xnL%PaRz(|fTZeWwB&O87mq_QJ%x z@T(Ta9`w(Y=W?QY5?D;!>%?3OCCu+TkD$V^nqA|zqJVj%9&sRUbUIg(@5~ij2JND%vYu-uNgt|C%lCn04;*zM-C33nWOMOdu3)hZGTi4I(+nsv>EnHCRJLT;zf zugdZ`Q9%`Q$(PMuW$lHDrrQ65Uhc6kEYI<%=ivWT99Rcoyg~Ch0XyO-q64cQVz7`v zBzl>ggZQ^ZqzyW1-hDS+wxxnt%q4wOjO#KMw#9agx~F9Qgo(L^6)@<25r8P!>!`UU zS=Wk58^LOnEp?!W6)I)0pk#f8Da4#Zlcoehkh)O#RZ0>+IhvvdYRmGy9;%2&u3oEj zxRkU~&NeD`UmvI!EzCPk2yjJkyLq4dnwXP8$aDG<_z4^}7;D;2llz-RC?o^o$+4>) z*;B5t%bnwAxX(WlL2=`l)#aRZMX5-p#xKQEpq(D!D`j(`Qi(+3Kg)q!v_FJ%5&!@I M07*qoM6N<$f{8jX@Bjb+ literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Http_ExecuteHttpRequest_ExecuteHttpRequestBlock_1.png b/content/static/2024.11/blocks/Cortex_Blocks_Http_ExecuteHttpRequest_ExecuteHttpRequestBlock_1.png new file mode 100644 index 0000000000000000000000000000000000000000..a2cae2fc95091f06392dd0cf85f604b89eae29b5 GIT binary patch literal 1130 zcmV-w1eN=VP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1OG`xK~!i%?OM-I z6G0T-n@9f)j~+dG^w03mFm8>g2h;<20TVrd7Y`FZi}>y!c=;b{1Pc!86ycBo!KDmn!&-zHFuUOC_5P=3B%-+T{DPe;Rj_WV-(84cx{Y< zrIQMKrU>pw5MG%uvCYRhQ2QW)1HyP4(Z)S1n+L2d0{ubR6k$9fJVK2K>;If%*Qwt- z?4Iqti}wKN56Y$po6qku=kYD0-H0&06hSIl0QVyZ+iEEm4$3TITp%aLF~BmykIK0C!Da$x~+ zJt@2@Xft7a35rRDmx|Zp`I=-y0XEDpqt;Kb<-)i_$c!S;7Ux1Dp^jA|{P&1#xv+^} zjx$sV@Xv>$jp8o@k_odV_F5=m`z5D7MFHv;_Lm>^zI`0ks3R6XS5gcm46neV0%tWQvCl#Y!)t)bS@6_Mp)G}h$XZceZ#S|OF{iA6W1K41p@l`JyU~Lr z4}1amAu6kNJj3cn?K!jc!rY>Y>?p!7EcxS)cbJxeXIP3c2+LRx>^b z(SH!8(9{CmY`*%IZ}>>n_o@E-%=m=4dksr4j5zTSOzkbsSR=-l5waeY%Kbo*_97)& zf}HUR6No*BpE8s{2oe)Ty-0E5FGs7?KxPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1cOOLK~!i%?V3$* z6h{z-_m*RRMvfeF%rQTMpAj*RLc#%s14N1-QgQ%t$RQH57UIJpBo^QrO%etcdxeQB8nUDM{)CXRBw!r z)ElM>?D*O|Hxf^Mn9113$7%!qFlU1vY#K~8RQ6-s1@McHUX!8TjpvsJ{ zB*$xZekz?6XFZ*UjR~cr(v0GyokmRWtU8Z`RgFi&s>UN>Rbydcr>-{5{pq$@T-h-H zH+aXyOxv8fF{ApD$3nsowY;{Ky>@VTwY6)$_+eJ{Da1m;9=4umuNpk27uQsuLM$X~ z7|{}J?d+*Og;+?K52naZe?C=h%W!OBNgYJZHpEiGuH9c$?GA&NewokSvJcHJ#8Sd| zxn_45q*(aS>_RLhjB4!EX$V|zDiF=l;pr)#g>12msPEG4Y|`(tx1P4e&WE!h5*^-hUS z7S_yXR~zP=@j3JP^=WH^P{G5w=hpu2qvfo{m_M2;)|O{s4_)EF_2nS;EsO}^JR-p4 zKQGL}@~dvUIL$Qz#~wVf*MMsTAVeaKFxmiZyl-Y{-ChfPfAUx=VmL$lg&$kyUb14R z4^g8{q6Z`zfN6$sqTvnGfqJfe*yz-D30vFP z$sXB1Sa8WNA9H>Y({QBp)zPD88Z{`1zq)6b@IILvoIzj3y94ZlTDFl#st1&1xNk z<(qpwqR2w-wjFf16h`%AgNR-9JBG!Gyi17yD8_y<>%)xH9!#I?sPojH<@TXf!!yMY$NMPkmHLfpKGk|1@_aRjbwh Y1FmA~zHUE_kN^Mx07*qoM6N<$f?a1$!~g&Q literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Json_ConvertJson_ConvertJsonToObjectBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_Json_ConvertJson_ConvertJsonToObjectBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..5be022c937393f5e02480e3192c7fb63e81effab GIT binary patch literal 1215 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 bWm*3Lf@bT*;jwq|00000NkvXXu0mjfJMrXn literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Lists_GetCount_GetCountOfItemsWithValueBlock_2.png b/content/static/2024.11/blocks/Cortex_Blocks_Lists_GetCount_GetCountOfItemsWithValueBlock_2.png new file mode 100644 index 0000000000000000000000000000000000000000..ac5891fdcf1c32437cc347d40d09216c9bf9d82b GIT binary patch literal 1057 zcmV++1m63JP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1GY&-K~!i%?OMxj z(?AsUjwPSLk|j%)d!jCPLs#hN$#wj6jzJ4O~32GyptTo-q{hia`6ct<<-L>Ly)Z6H$A zceG<s{yJ68Cf-$Hr%5 zVcn+fX&k6Tjd>&)rck4xwhnkM9onWohuOSXzZWWS| zg>|FzxFU{AYujR$Aa1`bdb5Q!eqP_+<+dy9L0de_=M&+qGqSKwI}f=ad<+Wk4#vNf z{_tyT9Jod)(9!CHMiv$Z)uvVFG4ah`jP5PBQVYyM@y3(+Kt5tK;bTOu^+Z^!&I1Ma z`s3z#5ON>#t9%@DOuMW68euueA^_*oixS9B^}Q-13+uG=z(T<=z@zYt#J%wn-vz_a zKgxDjBF`cV>$vk^i)bb6!DN{ekRE~e!q7Egof3uhnih%>fL##b25;S;DD!jljd%tg z!!=d!^5lhyqKaJ7Ar~s!D|iXlR1pW{ z4ofixVXQ#2oIp70wFxx~o|7Smh0A=?AwNRb3UoJl_jRes8>(0cL>bV5`)J3gIVIy0 zCUOnkLs+O$fGF7nQ@JG>tH)#*p;l2XlMeKYhn@-vLCJW9DMZepUQq%eNZlw}c}fz0 zIVw;CC(Gtu4_-teSMRm^aVcr1-7R=*NFRucHu8=U0=NhkZvK(o6FGStvS-FE`~{90 zG@6dv$N#ekg`|O*oVz+)JjI1w9?70zaXv*DnZ`Lg_7CB bWm*3Lf@bT*;jwq|00000NkvXXu0mjfJMrXn literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Lists_GetCount_GetCountsOfItemsWithValuesBlock_2.png b/content/static/2024.11/blocks/Cortex_Blocks_Lists_GetCount_GetCountsOfItemsWithValuesBlock_2.png new file mode 100644 index 0000000000000000000000000000000000000000..ac5891fdcf1c32437cc347d40d09216c9bf9d82b GIT binary patch literal 1057 zcmV++1m63JP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1GY&-K~!i%?OMxj z(?AsUjwPSLk|j%)d!jCPLs#hN$#wj6jzJ4O~32GyptTo-q{hia`6ct<<-L>Ly)Z6H$A zceG<s{yJ68Cf-$Hr%5 zVcn+fX&k6Tjd>&)rck4xwhnkM9onWohuOSXzZWWS| zg>|FzxFU{AYujR$Aa1`bdb5Q!eqP_+<+dy9L0de_=M&+qGqSKwI}f=ad<+Wk4#vNf z{_tyT9Jod)(9!CHMiv$Z)uvVFG4ah`jP5PBQVYyM@y3(+Kt5tK;bTOu^+Z^!&I1Ma z`s3z#5ON>#t9%@DOuMW68euueA^_*oixS9B^}Q-13+uG=z(T<=z@zYt#J%wn-vz_a zKgxDjBF`cV>$vk^i)bb6!DN{ekRE~e!q7Egof3uhnih%>fL##b25;S;DD!jljd%tg z!!=d!^5lhyqKaJ7Ar~s!D|iXlR1pW{ z4ofixVXQ#2oIp70wFxx~o|7Smh0A=?AwNRb3UoJl_jRes8>(0cL>bV5`)J3gIVIy0 zCUOnkLs+O$fGF7nQ@JG>tH)#*p;l2XlMeKYhn@-vLCJW9DMZepUQq%eNZlw}c}fz0 zIVw;CC(Gtu4_-teSMRm^aVcr1-7R=*NFRucHu8=U0=NhkZvK(o6FGStvS-FE`~{90 zG@6dv$N#ekg`|O*oVz+)JjI1w9?70zaXv*DnZ`Lg_7CB bWm*3Lf@bT*;jwq|00000NkvXXu0mjfJMrXn literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Lists_GetIndex_GetIndexOfItemWithValueBlock_2.png b/content/static/2024.11/blocks/Cortex_Blocks_Lists_GetIndex_GetIndexOfItemWithValueBlock_2.png new file mode 100644 index 0000000000000000000000000000000000000000..db76461303573ffb276a37d09b64d09074cc82b4 GIT binary patch literal 1055 zcmV+)1mOFLP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1GGs*K~!i%?OIJw z6G0f>n@4|!M~@yo`ZN3)#;p;(5HH|GP4oa>HEbJ$iW)^s3}{q{QERt_mLP&)AyB@` zm*YIUGu_$cZMT!QY$n+!d9v-yJ3IUA`!R2mS}JU(c)@l`{dTrEp2-%O3G|<}G?;M; zmxPP}eYwh62%;7m#vy1CvMej(xc3MnBgsAZ+!vKAU8D?5raj_bw!HWxCJkqnhhcG= zm@t~Q5^G=^FECkQj(;5(E3?Jwj*!wEuo)Pe^VZnv zeF!Ed%<~k#!V~+4bly^cZNqy`bI&E`F&=(*URJzNlRy}vSloP4WOrXxJOLZq`(ic# z#KFt0LQ-2;H#(1N;<~)PC+@<$Y8bTxAu^hG0M>doBAlbt7S?I!As+}YLjuJ?u6-~* z&)3#Gp%8_!L4Lp8{geB)dZF6FnnAT`)p<;O_a8>}*29UQUBX$G|Fy|hH}*na#8?z4 zCf+=eYdsOxs`HRJB!L{0p1~F0QTE|Qh>`ci3yA`@az09JVV!m!C<>s8TTf>jYt?)T z&MsOQ&_BwnE0Jf~!aD9e_(Md6!HaSp`Gl(1C=P;DC<0v*)+uqY-cUjjKt8E9C?KjA z@mW0DrayQLjcZ76cC7o zr({`=ijx(VVgkbW0nKv);fT`SE~L1b^1AoEk%Qejpu5TYZ|0lk4h47!`G?|yc8t2G zWOBkpuE7&J;?yRX$}P!6Jto5lUT7yQQ9T=;Y7&By$qG}5oSSmjNP!Tf7K&D$lEhz* z%GAW^@?@_EFXA9q$KrlmO4?a>7akjmP9#MedB+I>o(LXp{*{l3oNR}D&A5fXz)_P% z({cN}|13fwX<#Pv*M}=-JYiQy3g>v7PZCC^F>mMG^PVUbnQY;Tkpi9KG_REX4NqB? Z^&k7Z*tu+e&{zNf002ovPDHLkV1j4N;w}IH literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Lists_GetIndex_GetIndexesOfItemsWithValueBlock_2.png b/content/static/2024.11/blocks/Cortex_Blocks_Lists_GetIndex_GetIndexesOfItemsWithValueBlock_2.png new file mode 100644 index 0000000000000000000000000000000000000000..db76461303573ffb276a37d09b64d09074cc82b4 GIT binary patch literal 1055 zcmV+)1mOFLP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1GGs*K~!i%?OIJw z6G0f>n@4|!M~@yo`ZN3)#;p;(5HH|GP4oa>HEbJ$iW)^s3}{q{QERt_mLP&)AyB@` zm*YIUGu_$cZMT!QY$n+!d9v-yJ3IUA`!R2mS}JU(c)@l`{dTrEp2-%O3G|<}G?;M; zmxPP}eYwh62%;7m#vy1CvMej(xc3MnBgsAZ+!vKAU8D?5raj_bw!HWxCJkqnhhcG= zm@t~Q5^G=^FECkQj(;5(E3?Jwj*!wEuo)Pe^VZnv zeF!Ed%<~k#!V~+4bly^cZNqy`bI&E`F&=(*URJzNlRy}vSloP4WOrXxJOLZq`(ic# z#KFt0LQ-2;H#(1N;<~)PC+@<$Y8bTxAu^hG0M>doBAlbt7S?I!As+}YLjuJ?u6-~* z&)3#Gp%8_!L4Lp8{geB)dZF6FnnAT`)p<;O_a8>}*29UQUBX$G|Fy|hH}*na#8?z4 zCf+=eYdsOxs`HRJB!L{0p1~F0QTE|Qh>`ci3yA`@az09JVV!m!C<>s8TTf>jYt?)T z&MsOQ&_BwnE0Jf~!aD9e_(Md6!HaSp`Gl(1C=P;DC<0v*)+uqY-cUjjKt8E9C?KjA z@mW0DrayQLjcZ76cC7o zr({`=ijx(VVgkbW0nKv);fT`SE~L1b^1AoEk%Qejpu5TYZ|0lk4h47!`G?|yc8t2G zWOBkpuE7&J;?yRX$}P!6Jto5lUT7yQQ9T=;Y7&By$qG}5oSSmjNP!Tf7K&D$lEhz* z%GAW^@?@_EFXA9q$KrlmO4?a>7akjmP9#MedB+I>o(LXp{*{l3oNR}D&A5fXz)_P% z({cN}|13fwX<#Pv*M}=-JYiQy3g>v7PZCC^F>mMG^PVUbnQY;Tkpi9KG_REX4NqB? Z^&k7Z*tu+e&{zNf002ovPDHLkV1j4N;w}IH literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Lists_GetItem_GetItemAtBeginningBlock_2.png b/content/static/2024.11/blocks/Cortex_Blocks_Lists_GetItem_GetItemAtBeginningBlock_2.png new file mode 100644 index 0000000000000000000000000000000000000000..e7ffa940ce22740690fbf4dce6920783613234b9 GIT binary patch literal 1030 zcmV+h1o``kP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1Di=iK~!i%?V3SP z6G0Tm_vX=$;nAZ9Y7Y`b?jX_0?A|?bhD#obTZGn zgF{cu&F4$ZuKX2Od)LBBjg7u7d)^V|$Y6d_W0u$I;%t1X)|#Gogt;$Z7)0DcrKs-+ zb7U}-9VIp9(QL&t4|`Q}|A4*uy6$;Lm?ML|v#a8D9epovk+DfSGMFw-!E|#9CY^R3 zY3Fe~rJaXxWUzjA9vk&0oBmN{5BdG7XYzm8(@(3OcZ4}ISpPZ?n>g3)LRd ztH?4rcfb>$fAjgdExs;S2Z#UI;%c3Ze_RpwAT}H@Suo2z4oxhvN_9t|_zN*Z6N}D0 zrurPhiGewp;zwj+uSL&WN{DS|&+^Y)av9_0ck4yTDK$zc%MZm3@yRQ|AW)JgIeXr`s zV7+!87%)spLf|@%52nlQ&w!;gIL=pBVxC0?>$&sbgYW}`B%F*7f`VcL>($s;uXU9o zN^1URXR%Q;C!xAyq~tTZ-*e(%a-yq?2U;eaQ!~@pYdMypV&n=dH+$754<=Omm6{Wyg2@$@asps{gXVJr<%p7lFj$<&iivK6^8KkY8|M3?RO}mcoWA>d zx!qDBYxgFX$v7A*q->P2r=cCA;-r%U6LSswlV86`2~e^LrskG(q8XEAgiOh@4AT16 zZYNVdB`BRNm}1PiS$l&71dzH=1Z7GZKRH^WE}X27_Ik)7_A&Kb*gu!jX4Y;XVvOc{699b)ZybviVC|0$PPRzETdhGi4aYe-0_|rJ-Q4D*ylh07*qoM6N<$f~Nf4 AhX4Qo literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Lists_GetItem_GetItemAtEndBlock_2.png b/content/static/2024.11/blocks/Cortex_Blocks_Lists_GetItem_GetItemAtEndBlock_2.png new file mode 100644 index 0000000000000000000000000000000000000000..e7ffa940ce22740690fbf4dce6920783613234b9 GIT binary patch literal 1030 zcmV+h1o``kP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1Di=iK~!i%?V3SP z6G0Tm_vX=$;nAZ9Y7Y`b?jX_0?A|?bhD#obTZGn zgF{cu&F4$ZuKX2Od)LBBjg7u7d)^V|$Y6d_W0u$I;%t1X)|#Gogt;$Z7)0DcrKs-+ zb7U}-9VIp9(QL&t4|`Q}|A4*uy6$;Lm?ML|v#a8D9epovk+DfSGMFw-!E|#9CY^R3 zY3Fe~rJaXxWUzjA9vk&0oBmN{5BdG7XYzm8(@(3OcZ4}ISpPZ?n>g3)LRd ztH?4rcfb>$fAjgdExs;S2Z#UI;%c3Ze_RpwAT}H@Suo2z4oxhvN_9t|_zN*Z6N}D0 zrurPhiGewp;zwj+uSL&WN{DS|&+^Y)av9_0ck4yTDK$zc%MZm3@yRQ|AW)JgIeXr`s zV7+!87%)spLf|@%52nlQ&w!;gIL=pBVxC0?>$&sbgYW}`B%F*7f`VcL>($s;uXU9o zN^1URXR%Q;C!xAyq~tTZ-*e(%a-yq?2U;eaQ!~@pYdMypV&n=dH+$754<=Omm6{Wyg2@$@asps{gXVJr<%p7lFj$<&iivK6^8KkY8|M3?RO}mcoWA>d zx!qDBYxgFX$v7A*q->P2r=cCA;-r%U6LSswlV86`2~e^LrskG(q8XEAgiOh@4AT16 zZYNVdB`BRNm}1PiS$l&71dzH=1Z7GZKRH^WE}X27_Ik)7_A&Kb*gu!jX4Y;XVvOc{699b)ZybviVC|0$PPRzETdhGi4aYe-0_|rJ-Q4D*ylh07*qoM6N<$f~Nf4 AhX4Qo literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Lists_GetItem_GetItemAtIndexBlock_2.png b/content/static/2024.11/blocks/Cortex_Blocks_Lists_GetItem_GetItemAtIndexBlock_2.png new file mode 100644 index 0000000000000000000000000000000000000000..e7ffa940ce22740690fbf4dce6920783613234b9 GIT binary patch literal 1030 zcmV+h1o``kP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1Di=iK~!i%?V3SP z6G0Tm_vX=$;nAZ9Y7Y`b?jX_0?A|?bhD#obTZGn zgF{cu&F4$ZuKX2Od)LBBjg7u7d)^V|$Y6d_W0u$I;%t1X)|#Gogt;$Z7)0DcrKs-+ zb7U}-9VIp9(QL&t4|`Q}|A4*uy6$;Lm?ML|v#a8D9epovk+DfSGMFw-!E|#9CY^R3 zY3Fe~rJaXxWUzjA9vk&0oBmN{5BdG7XYzm8(@(3OcZ4}ISpPZ?n>g3)LRd ztH?4rcfb>$fAjgdExs;S2Z#UI;%c3Ze_RpwAT}H@Suo2z4oxhvN_9t|_zN*Z6N}D0 zrurPhiGewp;zwj+uSL&WN{DS|&+^Y)av9_0ck4yTDK$zc%MZm3@yRQ|AW)JgIeXr`s zV7+!87%)spLf|@%52nlQ&w!;gIL=pBVxC0?>$&sbgYW}`B%F*7f`VcL>($s;uXU9o zN^1URXR%Q;C!xAyq~tTZ-*e(%a-yq?2U;eaQ!~@pYdMypV&n=dH+$754<=Omm6{Wyg2@$@asps{gXVJr<%p7lFj$<&iivK6^8KkY8|M3?RO}mcoWA>d zx!qDBYxgFX$v7A*q->P2r=cCA;-r%U6LSswlV86`2~e^LrskG(q8XEAgiOh@4AT16 zZYNVdB`BRNm}1PiS$l&71dzH=1Z7GZKRH^WE}X27_Ik)7_A&Kb*gu!jX4Y;XVvOc{699b)ZybviVC|0$PPRzETdhGi4aYe-0_|rJ-Q4D*ylh07*qoM6N<$f~Nf4 AhX4Qo literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Lists_GetItem_GetItemsAtBeginningBlock_2.png b/content/static/2024.11/blocks/Cortex_Blocks_Lists_GetItem_GetItemsAtBeginningBlock_2.png new file mode 100644 index 0000000000000000000000000000000000000000..e7ffa940ce22740690fbf4dce6920783613234b9 GIT binary patch literal 1030 zcmV+h1o``kP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1Di=iK~!i%?V3SP z6G0Tm_vX=$;nAZ9Y7Y`b?jX_0?A|?bhD#obTZGn zgF{cu&F4$ZuKX2Od)LBBjg7u7d)^V|$Y6d_W0u$I;%t1X)|#Gogt;$Z7)0DcrKs-+ zb7U}-9VIp9(QL&t4|`Q}|A4*uy6$;Lm?ML|v#a8D9epovk+DfSGMFw-!E|#9CY^R3 zY3Fe~rJaXxWUzjA9vk&0oBmN{5BdG7XYzm8(@(3OcZ4}ISpPZ?n>g3)LRd ztH?4rcfb>$fAjgdExs;S2Z#UI;%c3Ze_RpwAT}H@Suo2z4oxhvN_9t|_zN*Z6N}D0 zrurPhiGewp;zwj+uSL&WN{DS|&+^Y)av9_0ck4yTDK$zc%MZm3@yRQ|AW)JgIeXr`s zV7+!87%)spLf|@%52nlQ&w!;gIL=pBVxC0?>$&sbgYW}`B%F*7f`VcL>($s;uXU9o zN^1URXR%Q;C!xAyq~tTZ-*e(%a-yq?2U;eaQ!~@pYdMypV&n=dH+$754<=Omm6{Wyg2@$@asps{gXVJr<%p7lFj$<&iivK6^8KkY8|M3?RO}mcoWA>d zx!qDBYxgFX$v7A*q->P2r=cCA;-r%U6LSswlV86`2~e^LrskG(q8XEAgiOh@4AT16 zZYNVdB`BRNm}1PiS$l&71dzH=1Z7GZKRH^WE}X27_Ik)7_A&Kb*gu!jX4Y;XVvOc{699b)ZybviVC|0$PPRzETdhGi4aYe-0_|rJ-Q4D*ylh07*qoM6N<$f~Nf4 AhX4Qo literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Lists_GetItem_GetItemsAtEndBlock_2.png b/content/static/2024.11/blocks/Cortex_Blocks_Lists_GetItem_GetItemsAtEndBlock_2.png new file mode 100644 index 0000000000000000000000000000000000000000..e7ffa940ce22740690fbf4dce6920783613234b9 GIT binary patch literal 1030 zcmV+h1o``kP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1Di=iK~!i%?V3SP z6G0Tm_vX=$;nAZ9Y7Y`b?jX_0?A|?bhD#obTZGn zgF{cu&F4$ZuKX2Od)LBBjg7u7d)^V|$Y6d_W0u$I;%t1X)|#Gogt;$Z7)0DcrKs-+ zb7U}-9VIp9(QL&t4|`Q}|A4*uy6$;Lm?ML|v#a8D9epovk+DfSGMFw-!E|#9CY^R3 zY3Fe~rJaXxWUzjA9vk&0oBmN{5BdG7XYzm8(@(3OcZ4}ISpPZ?n>g3)LRd ztH?4rcfb>$fAjgdExs;S2Z#UI;%c3Ze_RpwAT}H@Suo2z4oxhvN_9t|_zN*Z6N}D0 zrurPhiGewp;zwj+uSL&WN{DS|&+^Y)av9_0ck4yTDK$zc%MZm3@yRQ|AW)JgIeXr`s zV7+!87%)spLf|@%52nlQ&w!;gIL=pBVxC0?>$&sbgYW}`B%F*7f`VcL>($s;uXU9o zN^1URXR%Q;C!xAyq~tTZ-*e(%a-yq?2U;eaQ!~@pYdMypV&n=dH+$754<=Omm6{Wyg2@$@asps{gXVJr<%p7lFj$<&iivK6^8KkY8|M3?RO}mcoWA>d zx!qDBYxgFX$v7A*q->P2r=cCA;-r%U6LSswlV86`2~e^LrskG(q8XEAgiOh@4AT16 zZYNVdB`BRNm}1PiS$l&71dzH=1Z7GZKRH^WE}X27_Ik)7_A&Kb*gu!jX4Y;XVvOc{699b)ZybviVC|0$PPRzETdhGi4aYe-0_|rJ-Q4D*ylh07*qoM6N<$f~Nf4 AhX4Qo literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Lists_GetItem_GetItemsAtIndexBlock_2.png b/content/static/2024.11/blocks/Cortex_Blocks_Lists_GetItem_GetItemsAtIndexBlock_2.png new file mode 100644 index 0000000000000000000000000000000000000000..e7ffa940ce22740690fbf4dce6920783613234b9 GIT binary patch literal 1030 zcmV+h1o``kP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1Di=iK~!i%?V3SP z6G0Tm_vX=$;nAZ9Y7Y`b?jX_0?A|?bhD#obTZGn zgF{cu&F4$ZuKX2Od)LBBjg7u7d)^V|$Y6d_W0u$I;%t1X)|#Gogt;$Z7)0DcrKs-+ zb7U}-9VIp9(QL&t4|`Q}|A4*uy6$;Lm?ML|v#a8D9epovk+DfSGMFw-!E|#9CY^R3 zY3Fe~rJaXxWUzjA9vk&0oBmN{5BdG7XYzm8(@(3OcZ4}ISpPZ?n>g3)LRd ztH?4rcfb>$fAjgdExs;S2Z#UI;%c3Ze_RpwAT}H@Suo2z4oxhvN_9t|_zN*Z6N}D0 zrurPhiGewp;zwj+uSL&WN{DS|&+^Y)av9_0ck4yTDK$zc%MZm3@yRQ|AW)JgIeXr`s zV7+!87%)spLf|@%52nlQ&w!;gIL=pBVxC0?>$&sbgYW}`B%F*7f`VcL>($s;uXU9o zN^1URXR%Q;C!xAyq~tTZ-*e(%a-yq?2U;eaQ!~@pYdMypV&n=dH+$754<=Omm6{Wyg2@$@asps{gXVJr<%p7lFj$<&iivK6^8KkY8|M3?RO}mcoWA>d zx!qDBYxgFX$v7A*q->P2r=cCA;-r%U6LSswlV86`2~e^LrskG(q8XEAgiOh@4AT16 zZYNVdB`BRNm}1PiS$l&71dzH=1Z7GZKRH^WE}X27_Ik)7_A&Kb*gu!jX4Y;XVvOc{699b)ZybviVC|0$PPRzETdhGi4aYe-0_|rJ-Q4D*ylh07*qoM6N<$f~Nf4 AhX4Qo literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Lists_GetItem_GetItemsAtIndexesBlock_2.png b/content/static/2024.11/blocks/Cortex_Blocks_Lists_GetItem_GetItemsAtIndexesBlock_2.png new file mode 100644 index 0000000000000000000000000000000000000000..e7ffa940ce22740690fbf4dce6920783613234b9 GIT binary patch literal 1030 zcmV+h1o``kP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1Di=iK~!i%?V3SP z6G0Tm_vX=$;nAZ9Y7Y`b?jX_0?A|?bhD#obTZGn zgF{cu&F4$ZuKX2Od)LBBjg7u7d)^V|$Y6d_W0u$I;%t1X)|#Gogt;$Z7)0DcrKs-+ zb7U}-9VIp9(QL&t4|`Q}|A4*uy6$;Lm?ML|v#a8D9epovk+DfSGMFw-!E|#9CY^R3 zY3Fe~rJaXxWUzjA9vk&0oBmN{5BdG7XYzm8(@(3OcZ4}ISpPZ?n>g3)LRd ztH?4rcfb>$fAjgdExs;S2Z#UI;%c3Ze_RpwAT}H@Suo2z4oxhvN_9t|_zN*Z6N}D0 zrurPhiGewp;zwj+uSL&WN{DS|&+^Y)av9_0ck4yTDK$zc%MZm3@yRQ|AW)JgIeXr`s zV7+!87%)spLf|@%52nlQ&w!;gIL=pBVxC0?>$&sbgYW}`B%F*7f`VcL>($s;uXU9o zN^1URXR%Q;C!xAyq~tTZ-*e(%a-yq?2U;eaQ!~@pYdMypV&n=dH+$754<=Omm6{Wyg2@$@asps{gXVJr<%p7lFj$<&iivK6^8KkY8|M3?RO}mcoWA>d zx!qDBYxgFX$v7A*q->P2r=cCA;-r%U6LSswlV86`2~e^LrskG(q8XEAgiOh@4AT16 zZYNVdB`BRNm}1PiS$l&71dzH=1Z7GZKRH^WE}X27_Ik)7_A&Kb*gu!jX4Y;XVvOc{699b)ZybviVC|0$PPRzETdhGi4aYe-0_|rJ-Q4D*ylh07*qoM6N<$f~Nf4 AhX4Qo literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Lists_RemoveItem_RemoveAllItemsBlock_2.png b/content/static/2024.11/blocks/Cortex_Blocks_Lists_RemoveItem_RemoveAllItemsBlock_2.png new file mode 100644 index 0000000000000000000000000000000000000000..b30cbb72fd786e86c6a903764bb81ec50659c297 GIT binary patch literal 912 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 literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Lists_SetItem_SetItemAtBeginningBlock_2.png b/content/static/2024.11/blocks/Cortex_Blocks_Lists_SetItem_SetItemAtBeginningBlock_2.png new file mode 100644 index 0000000000000000000000000000000000000000..7c00986f99ddb10abb99e0edf9341eb2301d7051 GIT binary patch literal 1029 zcmV+g1p51lP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1DZ)hK~!i%?OM-I z6G0T-n@9f)j~+dG^w03mFm8?LrSSq@)I<;9#e;@zV^C3}hzS9WiZLp7TcAy?AXo^t zPznXdd9(A{+2!pnn{L@mvS0FLapvvJeEWXPGpV7%w2J3UtCTf!#i>lL$aJ7{*3wAE zDqN5|BE$R`wRhpzxuL9+9t`!!gksnDXE9f z!J*6M=JRD{*Z#`c{;{~yU}JBqu06sSS(qPGo61^Kj>d<2qwU%wi~|t{hlm>xDe4|! zj4TYoj)H3QXs+hU!+z1;KVWaZuDkXKV`O3P?7G~phws%b(l$v(7N!eRVY)FDhD{8M?eI9(8$94pxOj=9@F2P!=SeSC`>&xgqxaslnoRUu_uvh0}&R~ zc|f>bf9zfd@@(N}&%0#F!09an)B7B731CofE1s!$z+pbGN?R#=J&2;&zt&j|=e2s1x~35)%L zj+1v^SGp~g7trZL$3X$^H)zMGHIc~)leq?7@e@ZuZGx%XLMG}l45NEfmB6q>tZ(i1 zJmnLD$Yg~ngq)kRH%NgXNG%jWo&wJ&n42#*)8zcsCObM znvi##AV7%V;pRN~n9RxJkiRo!z)#?)Nv&zwL*h4!ppZ1slM7eJ%BO^|%j1PJJkDnc zBi*=Q=IygWl!{EQa7jynR&kzJ%52wDhGF~%x#RF)>qq$<00000NkvXXu0mjfL;B*H literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Lists_SetItem_SetItemAtEndBlock_2.png b/content/static/2024.11/blocks/Cortex_Blocks_Lists_SetItem_SetItemAtEndBlock_2.png new file mode 100644 index 0000000000000000000000000000000000000000..7c00986f99ddb10abb99e0edf9341eb2301d7051 GIT binary patch literal 1029 zcmV+g1p51lP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1DZ)hK~!i%?OM-I z6G0T-n@9f)j~+dG^w03mFm8?LrSSq@)I<;9#e;@zV^C3}hzS9WiZLp7TcAy?AXo^t zPznXdd9(A{+2!pnn{L@mvS0FLapvvJeEWXPGpV7%w2J3UtCTf!#i>lL$aJ7{*3wAE zDqN5|BE$R`wRhpzxuL9+9t`!!gksnDXE9f z!J*6M=JRD{*Z#`c{;{~yU}JBqu06sSS(qPGo61^Kj>d<2qwU%wi~|t{hlm>xDe4|! zj4TYoj)H3QXs+hU!+z1;KVWaZuDkXKV`O3P?7G~phws%b(l$v(7N!eRVY)FDhD{8M?eI9(8$94pxOj=9@F2P!=SeSC`>&xgqxaslnoRUu_uvh0}&R~ zc|f>bf9zfd@@(N}&%0#F!09an)B7B731CofE1s!$z+pbGN?R#=J&2;&zt&j|=e2s1x~35)%L zj+1v^SGp~g7trZL$3X$^H)zMGHIc~)leq?7@e@ZuZGx%XLMG}l45NEfmB6q>tZ(i1 zJmnLD$Yg~ngq)kRH%NgXNG%jWo&wJ&n42#*)8zcsCObM znvi##AV7%V;pRN~n9RxJkiRo!z)#?)Nv&zwL*h4!ppZ1slM7eJ%BO^|%j1PJJkDnc zBi*=Q=IygWl!{EQa7jynR&kzJ%52wDhGF~%x#RF)>qq$<00000NkvXXu0mjfL;B*H literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Lists_SetItem_SetItemAtIndexBlock_2.png b/content/static/2024.11/blocks/Cortex_Blocks_Lists_SetItem_SetItemAtIndexBlock_2.png new file mode 100644 index 0000000000000000000000000000000000000000..7c00986f99ddb10abb99e0edf9341eb2301d7051 GIT binary patch literal 1029 zcmV+g1p51lP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1DZ)hK~!i%?OM-I z6G0T-n@9f)j~+dG^w03mFm8?LrSSq@)I<;9#e;@zV^C3}hzS9WiZLp7TcAy?AXo^t zPznXdd9(A{+2!pnn{L@mvS0FLapvvJeEWXPGpV7%w2J3UtCTf!#i>lL$aJ7{*3wAE zDqN5|BE$R`wRhpzxuL9+9t`!!gksnDXE9f z!J*6M=JRD{*Z#`c{;{~yU}JBqu06sSS(qPGo61^Kj>d<2qwU%wi~|t{hlm>xDe4|! zj4TYoj)H3QXs+hU!+z1;KVWaZuDkXKV`O3P?7G~phws%b(l$v(7N!eRVY)FDhD{8M?eI9(8$94pxOj=9@F2P!=SeSC`>&xgqxaslnoRUu_uvh0}&R~ zc|f>bf9zfd@@(N}&%0#F!09an)B7B731CofE1s!$z+pbGN?R#=J&2;&zt&j|=e2s1x~35)%L zj+1v^SGp~g7trZL$3X$^H)zMGHIc~)leq?7@e@ZuZGx%XLMG}l45NEfmB6q>tZ(i1 zJmnLD$Yg~ngq)kRH%NgXNG%jWo&wJ&n42#*)8zcsCObM znvi##AV7%V;pRN~n9RxJkiRo!z)#?)Nv&zwL*h4!ppZ1slM7eJ%BO^|%j1PJJkDnc zBi*=Q=IygWl!{EQa7jynR&kzJ%52wDhGF~%x#RF)>qq$<00000NkvXXu0mjfL;B*H literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Lists_SetItem_SetItemWithValueBlock_2.png b/content/static/2024.11/blocks/Cortex_Blocks_Lists_SetItem_SetItemWithValueBlock_2.png new file mode 100644 index 0000000000000000000000000000000000000000..7c00986f99ddb10abb99e0edf9341eb2301d7051 GIT binary patch literal 1029 zcmV+g1p51lP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1DZ)hK~!i%?OM-I z6G0T-n@9f)j~+dG^w03mFm8?LrSSq@)I<;9#e;@zV^C3}hzS9WiZLp7TcAy?AXo^t zPznXdd9(A{+2!pnn{L@mvS0FLapvvJeEWXPGpV7%w2J3UtCTf!#i>lL$aJ7{*3wAE zDqN5|BE$R`wRhpzxuL9+9t`!!gksnDXE9f z!J*6M=JRD{*Z#`c{;{~yU}JBqu06sSS(qPGo61^Kj>d<2qwU%wi~|t{hlm>xDe4|! zj4TYoj)H3QXs+hU!+z1;KVWaZuDkXKV`O3P?7G~phws%b(l$v(7N!eRVY)FDhD{8M?eI9(8$94pxOj=9@F2P!=SeSC`>&xgqxaslnoRUu_uvh0}&R~ zc|f>bf9zfd@@(N}&%0#F!09an)B7B731CofE1s!$z+pbGN?R#=J&2;&zt&j|=e2s1x~35)%L zj+1v^SGp~g7trZL$3X$^H)zMGHIc~)leq?7@e@ZuZGx%XLMG}l45NEfmB6q>tZ(i1 zJmnLD$Yg~ngq)kRH%NgXNG%jWo&wJ&n42#*)8zcsCObM znvi##AV7%V;pRN~n9RxJkiRo!z)#?)Nv&zwL*h4!ppZ1slM7eJ%BO^|%j1PJJkDnc zBi*=Q=IygWl!{EQa7jynR&kzJ%52wDhGF~%x#RF)>qq$<00000NkvXXu0mjfL;B*H literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Lists_SetItem_SetItemsAtBeginningBlock_2.png b/content/static/2024.11/blocks/Cortex_Blocks_Lists_SetItem_SetItemsAtBeginningBlock_2.png new file mode 100644 index 0000000000000000000000000000000000000000..7c00986f99ddb10abb99e0edf9341eb2301d7051 GIT binary patch literal 1029 zcmV+g1p51lP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1DZ)hK~!i%?OM-I z6G0T-n@9f)j~+dG^w03mFm8?LrSSq@)I<;9#e;@zV^C3}hzS9WiZLp7TcAy?AXo^t zPznXdd9(A{+2!pnn{L@mvS0FLapvvJeEWXPGpV7%w2J3UtCTf!#i>lL$aJ7{*3wAE zDqN5|BE$R`wRhpzxuL9+9t`!!gksnDXE9f z!J*6M=JRD{*Z#`c{;{~yU}JBqu06sSS(qPGo61^Kj>d<2qwU%wi~|t{hlm>xDe4|! zj4TYoj)H3QXs+hU!+z1;KVWaZuDkXKV`O3P?7G~phws%b(l$v(7N!eRVY)FDhD{8M?eI9(8$94pxOj=9@F2P!=SeSC`>&xgqxaslnoRUu_uvh0}&R~ zc|f>bf9zfd@@(N}&%0#F!09an)B7B731CofE1s!$z+pbGN?R#=J&2;&zt&j|=e2s1x~35)%L zj+1v^SGp~g7trZL$3X$^H)zMGHIc~)leq?7@e@ZuZGx%XLMG}l45NEfmB6q>tZ(i1 zJmnLD$Yg~ngq)kRH%NgXNG%jWo&wJ&n42#*)8zcsCObM znvi##AV7%V;pRN~n9RxJkiRo!z)#?)Nv&zwL*h4!ppZ1slM7eJ%BO^|%j1PJJkDnc zBi*=Q=IygWl!{EQa7jynR&kzJ%52wDhGF~%x#RF)>qq$<00000NkvXXu0mjfL;B*H literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Lists_SetItem_SetItemsAtEndBlock_2.png b/content/static/2024.11/blocks/Cortex_Blocks_Lists_SetItem_SetItemsAtEndBlock_2.png new file mode 100644 index 0000000000000000000000000000000000000000..7c00986f99ddb10abb99e0edf9341eb2301d7051 GIT binary patch literal 1029 zcmV+g1p51lP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1DZ)hK~!i%?OM-I z6G0T-n@9f)j~+dG^w03mFm8?LrSSq@)I<;9#e;@zV^C3}hzS9WiZLp7TcAy?AXo^t zPznXdd9(A{+2!pnn{L@mvS0FLapvvJeEWXPGpV7%w2J3UtCTf!#i>lL$aJ7{*3wAE zDqN5|BE$R`wRhpzxuL9+9t`!!gksnDXE9f z!J*6M=JRD{*Z#`c{;{~yU}JBqu06sSS(qPGo61^Kj>d<2qwU%wi~|t{hlm>xDe4|! zj4TYoj)H3QXs+hU!+z1;KVWaZuDkXKV`O3P?7G~phws%b(l$v(7N!eRVY)FDhD{8M?eI9(8$94pxOj=9@F2P!=SeSC`>&xgqxaslnoRUu_uvh0}&R~ zc|f>bf9zfd@@(N}&%0#F!09an)B7B731CofE1s!$z+pbGN?R#=J&2;&zt&j|=e2s1x~35)%L zj+1v^SGp~g7trZL$3X$^H)zMGHIc~)leq?7@e@ZuZGx%XLMG}l45NEfmB6q>tZ(i1 zJmnLD$Yg~ngq)kRH%NgXNG%jWo&wJ&n42#*)8zcsCObM znvi##AV7%V;pRN~n9RxJkiRo!z)#?)Nv&zwL*h4!ppZ1slM7eJ%BO^|%j1PJJkDnc zBi*=Q=IygWl!{EQa7jynR&kzJ%52wDhGF~%x#RF)>qq$<00000NkvXXu0mjfL;B*H literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Lists_SetItem_SetItemsAtIndexBlock_2.png b/content/static/2024.11/blocks/Cortex_Blocks_Lists_SetItem_SetItemsAtIndexBlock_2.png new file mode 100644 index 0000000000000000000000000000000000000000..7c00986f99ddb10abb99e0edf9341eb2301d7051 GIT binary patch literal 1029 zcmV+g1p51lP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1DZ)hK~!i%?OM-I z6G0T-n@9f)j~+dG^w03mFm8?LrSSq@)I<;9#e;@zV^C3}hzS9WiZLp7TcAy?AXo^t zPznXdd9(A{+2!pnn{L@mvS0FLapvvJeEWXPGpV7%w2J3UtCTf!#i>lL$aJ7{*3wAE zDqN5|BE$R`wRhpzxuL9+9t`!!gksnDXE9f z!J*6M=JRD{*Z#`c{;{~yU}JBqu06sSS(qPGo61^Kj>d<2qwU%wi~|t{hlm>xDe4|! zj4TYoj)H3QXs+hU!+z1;KVWaZuDkXKV`O3P?7G~phws%b(l$v(7N!eRVY)FDhD{8M?eI9(8$94pxOj=9@F2P!=SeSC`>&xgqxaslnoRUu_uvh0}&R~ zc|f>bf9zfd@@(N}&%0#F!09an)B7B731CofE1s!$z+pbGN?R#=J&2;&zt&j|=e2s1x~35)%L zj+1v^SGp~g7trZL$3X$^H)zMGHIc~)leq?7@e@ZuZGx%XLMG}l45NEfmB6q>tZ(i1 zJmnLD$Yg~ngq)kRH%NgXNG%jWo&wJ&n42#*)8zcsCObM znvi##AV7%V;pRN~n9RxJkiRo!z)#?)Nv&zwL*h4!ppZ1slM7eJ%BO^|%j1PJJkDnc zBi*=Q=IygWl!{EQa7jynR&kzJ%52wDhGF~%x#RF)>qq$<00000NkvXXu0mjfL;B*H literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Lists_SetItem_SetItemsAtIndexesBlock_2.png b/content/static/2024.11/blocks/Cortex_Blocks_Lists_SetItem_SetItemsAtIndexesBlock_2.png new file mode 100644 index 0000000000000000000000000000000000000000..7c00986f99ddb10abb99e0edf9341eb2301d7051 GIT binary patch literal 1029 zcmV+g1p51lP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1DZ)hK~!i%?OM-I z6G0T-n@9f)j~+dG^w03mFm8?LrSSq@)I<;9#e;@zV^C3}hzS9WiZLp7TcAy?AXo^t zPznXdd9(A{+2!pnn{L@mvS0FLapvvJeEWXPGpV7%w2J3UtCTf!#i>lL$aJ7{*3wAE zDqN5|BE$R`wRhpzxuL9+9t`!!gksnDXE9f z!J*6M=JRD{*Z#`c{;{~yU}JBqu06sSS(qPGo61^Kj>d<2qwU%wi~|t{hlm>xDe4|! zj4TYoj)H3QXs+hU!+z1;KVWaZuDkXKV`O3P?7G~phws%b(l$v(7N!eRVY)FDhD{8M?eI9(8$94pxOj=9@F2P!=SeSC`>&xgqxaslnoRUu_uvh0}&R~ zc|f>bf9zfd@@(N}&%0#F!09an)B7B731CofE1s!$z+pbGN?R#=J&2;&zt&j|=e2s1x~35)%L zj+1v^SGp~g7trZL$3X$^H)zMGHIc~)leq?7@e@ZuZGx%XLMG}l45NEfmB6q>tZ(i1 zJmnLD$Yg~ngq)kRH%NgXNG%jWo&wJ&n42#*)8zcsCObM znvi##AV7%V;pRN~n9RxJkiRo!z)#?)Nv&zwL*h4!ppZ1slM7eJ%BO^|%j1PJJkDnc zBi*=Q=IygWl!{EQa7jynR&kzJ%52wDhGF~%x#RF)>qq$<00000NkvXXu0mjfL;B*H literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Lists_SetItem_SetItemsWithValueBlock_2.png b/content/static/2024.11/blocks/Cortex_Blocks_Lists_SetItem_SetItemsWithValueBlock_2.png new file mode 100644 index 0000000000000000000000000000000000000000..7c00986f99ddb10abb99e0edf9341eb2301d7051 GIT binary patch literal 1029 zcmV+g1p51lP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1DZ)hK~!i%?OM-I z6G0T-n@9f)j~+dG^w03mFm8?LrSSq@)I<;9#e;@zV^C3}hzS9WiZLp7TcAy?AXo^t zPznXdd9(A{+2!pnn{L@mvS0FLapvvJeEWXPGpV7%w2J3UtCTf!#i>lL$aJ7{*3wAE zDqN5|BE$R`wRhpzxuL9+9t`!!gksnDXE9f z!J*6M=JRD{*Z#`c{;{~yU}JBqu06sSS(qPGo61^Kj>d<2qwU%wi~|t{hlm>xDe4|! zj4TYoj)H3QXs+hU!+z1;KVWaZuDkXKV`O3P?7G~phws%b(l$v(7N!eRVY)FDhD{8M?eI9(8$94pxOj=9@F2P!=SeSC`>&xgqxaslnoRUu_uvh0}&R~ zc|f>bf9zfd@@(N}&%0#F!09an)B7B731CofE1s!$z+pbGN?R#=J&2;&zt&j|=e2s1x~35)%L zj+1v^SGp~g7trZL$3X$^H)zMGHIc~)leq?7@e@ZuZGx%XLMG}l45NEfmB6q>tZ(i1 zJmnLD$Yg~ngq)kRH%NgXNG%jWo&wJ&n42#*)8zcsCObM znvi##AV7%V;pRN~n9RxJkiRo!z)#?)Nv&zwL*h4!ppZ1slM7eJ%BO^|%j1PJJkDnc zBi*=Q=IygWl!{EQa7jynR&kzJ%52wDhGF~%x#RF)>qq$<00000NkvXXu0mjfL;B*H literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Lists_SetItem_SetItemsWithValuesBlock_2.png b/content/static/2024.11/blocks/Cortex_Blocks_Lists_SetItem_SetItemsWithValuesBlock_2.png new file mode 100644 index 0000000000000000000000000000000000000000..7c00986f99ddb10abb99e0edf9341eb2301d7051 GIT binary patch literal 1029 zcmV+g1p51lP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1DZ)hK~!i%?OM-I z6G0T-n@9f)j~+dG^w03mFm8?LrSSq@)I<;9#e;@zV^C3}hzS9WiZLp7TcAy?AXo^t zPznXdd9(A{+2!pnn{L@mvS0FLapvvJeEWXPGpV7%w2J3UtCTf!#i>lL$aJ7{*3wAE zDqN5|BE$R`wRhpzxuL9+9t`!!gksnDXE9f z!J*6M=JRD{*Z#`c{;{~yU}JBqu06sSS(qPGo61^Kj>d<2qwU%wi~|t{hlm>xDe4|! zj4TYoj)H3QXs+hU!+z1;KVWaZuDkXKV`O3P?7G~phws%b(l$v(7N!eRVY)FDhD{8M?eI9(8$94pxOj=9@F2P!=SeSC`>&xgqxaslnoRUu_uvh0}&R~ zc|f>bf9zfd@@(N}&%0#F!09an)B7B731CofE1s!$z+pbGN?R#=J&2;&zt&j|=e2s1x~35)%L zj+1v^SGp~g7trZL$3X$^H)zMGHIc~)leq?7@e@ZuZGx%XLMG}l45NEfmB6q>tZ(i1 zJmnLD$Yg~ngq)kRH%NgXNG%jWo&wJ&n42#*)8zcsCObM znvi##AV7%V;pRN~n9RxJkiRo!z)#?)Nv&zwL*h4!ppZ1slM7eJ%BO^|%j1PJJkDnc zBi*=Q=IygWl!{EQa7jynR&kzJ%52wDhGF~%x#RF)>qq$<00000NkvXXu0mjfL;B*H literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Logs_LogEvent_LogEventBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_Logs_LogEvent_LogEventBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..d5ec4fbe10f55501ddeb0fcbff5a71852fc93928 GIT binary patch literal 1144 zcmV-;1c&>HP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1Pw_(g@F4c^+?S>In)b{O{%~O5F=}2IJ+N%Gt zhZ|nh9!d%>64*jzM+~l2QF~GnaFM{;i55idWyK8_39MatwT~07tH7YR;JOYBiUY1I z!Jw#cselc?Ut#-;)2V=AGar0YVf&2BsepwQ_sp<92jeVjy>?(69-Y`%j*d_Mi86S5 z@9c(-dnjuh9@%#sanB6v*uZd&0m=gClj#-X?pV=yJY_8y)8Dr2QfK9RIr`|UDVs%KQs#8e~GfagTJB-Z2^i1ljLW$>O{fDXV-*D7&KrO zsyhM#k%9n+wy>Pe?&r1Q#KCCr5C#n}Lv$pVg`p1)DF|1PJaUS~I$p znn=av^*zz1y16gvB5JsP{&_<{!m4=<=QO?f%&?9XOg82hVDcY-H1AQgNC0=*gc*Ez zz}Ue2M03c!9Z(eSn84_7Vt%6;K@#d9x=3s5xqu4>>LT#ztdA5B)pHUR;yZ=!6D zq07K11>LJCCqT*1#DW8%t+=N-WwJXCMgzh=79DmVxV@`^GX8LS=OGUo&izVr@+ zzKfB)77AGutwc8HsDAjaDwb?4=Xf^)Af#oGaHJY|<^NtXJurJy#Y!0FyhxG{!Q9*; zry4OzBg|9o)tp;DcMqIMd88mYT`M$;#yyZ)6fsE6(9J&CN(Dit-tSP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1XoE!K~#8N?VG)C z)G!#vZ)4=oU}S{53K&_~k@y4X%F4=s#K=-MCME_d(QAc3I*>pG38*Thf+|6)w%4Oy zI!|? zH^b)YYQA;lTnNUC@WlM+)$?KZY6)-vKmx+JK2Tt*vf|MK%xdM>%;gCxVDLou= z2_cz-LoN{{^Ki%|fRr5^vcr(FheLJ{QhspA4nfKv4%q=n#laz445@fHWD6nL1BYx8 zB>UiyEr4V%9CCq>?1w`x0Fpa!$T>oC4-Pp8NbbTRX9y_^IGqV6PA-5FBkI@8)3C+!j*kxezAN4aAen@-(z@*(Y_5inqp!oAUJy+p91{1vgPj7B zX*hT=PJo8#)|+j58y_DA#x*{R0*Ywi#C>@DWaRe6Slt0XIhU#^*=g z(cX4AYOuKRYEA&jbVBBG&hEyKAgZ|joRN1_k~%k5-3pLQ!$Gc)g+$BsjWd^XWO3t? zc>pBSaA3d?g*>EF*QmgOxUtF2K*|CRrjRTYg<>B(xLhF0-tV=;(eV=Roz4=Zm{(A= zjABp}RwTI(s^vKSIX()n;w9fdrCR|Uyu8FT8u8ZR``{PHiUnYDJC<}n8st622*P3@ z-#@L}%;}Ams^%juoK(Y}Isc=X(!yy$0$ptv1+#$IHhm;#67vYdHhvYIGQf83K0Ec88Qkme8 zj6o_R98zjXWrjo2hExSOq{NV_1c#&ysfut&fE4qFTj$JM7F848(GFij?wo@0Bdb{- giT&4r%vG!X1#f3emZE^WHvj+t07*qoM6N<$f{HsYe*gdg literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Loops_For_ForLoopBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_Loops_For_ForLoopBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..a13816ca10fc1dea6b35ec889192fba3b2ff8bf3 GIT binary patch literal 1276 zcmVPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1d&NZK~#8N<(p4W z)Ib=<_vX=$;nAb+67}fCyNMq_u3o)*F!AUGZ=O7PkVF<@G+9kd&_pG~1PzHogk=TX ztQ$Z;{-pM)eWcWP+v#-LPTMDW*oK+uIzQfd=bffDY|!e=*oEG7>+afgtK+%doajz9 zulvpQ)pF<386S)@!ZXX0m(Tj$>m|SefDjPD&AHk^Qins=2vTx5bPXWs!=Wn-DLovz zf{@I?p(_N*JRG_Lkg|hAml#s^aOe_3$`1}*B1rkep-TX%I5@P$kcx*xTL{S>IJ8BO z?1MvF0LflBbb*lUheHuG-m`1YVE&=Az4X%AAACDy z{BH2^k@Nk<4RNf#Gk|0o&iboc&ad9QqpH2lMQ3yNj(9IX1kkN7&&77x1|gY*gNWJb zzW1k{TmTh}sGkdu{T9bLJ~}-0UGX*m$t0Zh&Q0fFYr~(8z7BVXUNi;aP}28CI|U@u za4<1RfQIEZTx>i2clSNx8owI_6wx9{`tEpZKr+3oeh=6DDV*r|V9$#JX-v@l4-cH9 z{T+W)w50KBP5{YtLY8vQUjM5XRZ@S+$U7=YT^g%y1xTjhAXkKiL@V`;vy^kflEx)- z1SHdNV893pc}S7!OKfRqY-bfyz&0w*s%ai>O{?$TjPn+l5WIYf%X<1b`lc7JL;H-sf>}FBN5tISpKLDNpNPV^4Ztkv5ja~8J zQ0{s=Zwiu%u$3brv!FzR#^fPv_0oM|)<_g!VVu-g%PyRi_Qk6{meVo?DNclgzW780 z;1d(Y^{A6R+QQF*09NX&kwS4PCV7q>X_IiM zw23=xfI>9jIgS)nh?d>;1@9ufJ2oIQl4WhLb3r4WgR4&;84~;vJnndI3%0lP=!G%0~{)MNM(XUEr3|T#a40~EdBd&u-&+=S6W-DGUqkMl mfN>+M-JFR1uK}5>(f9+SRy@L;ID!5E0000Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1Z+t}K~!i%?OIDu z6HyfI&ZR%YrAwDC{TcoY<6y)`Lfn80!9*9}LSr;c3Bia@f&m{yQzKDiTA&0FMBeYW z*ZbYMr@gs7?M$bobrQbh3+=h*&dkSo+|#BB6ONlc=eU_BCz55tOt zz4Vv?UModPG7od)w=5!CDX_3&TUhh9kg6YJ6F(-RRC}OXZ+zhGk@7 z^j}2eY#;@>J(Ys48HSOCp{`&~Gx#=F+O+UFf=(rhiz1x4?`}Mb&oZr-*J`Rumit)J(Rm=V!hzk}NSr~u^r<61a!7DNf9AJMq zFzx%gzJH7CtTT&S+M_t&)7(3*_8?v9ejF~M2l(cq=N6A#S;C5qNnwHXL~Z_A-BIb+DjNh+Eetkx_EoB)F+p5&?}U7&Dhb0w zMaA^OR_;1Cb#s|pE*@P1M11s?a&<_Z7JJq8bUNECOIQ#o)wngA_|FGnWO_~2pSjN* z2ujVWwHK!AqExi7_Mo3{|A-y|%|zLmTC2G*bhB$RtvH~L@@+k>#0^j8rx?(iS=ZkF zQDCl_tV6`oqD?jp6LuYeI7T4UjvN|~iKZS|uS}g)RamjJ%LGK(!pwsnq|V1pBe0vO zi7;-2vVqwTkuiaEyY*~LU1RX)qDnFD;722|0XuhCS5;Uj7HJ-c1dUTTuL|}_B7!EU z(#M$kxC>I{{YQaMuPgsv!eh2002ovPDHLkV1hjE BKzaZG literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Objects_ConvertObject_ConvertObjectToTextBlock_1.png b/content/static/2024.11/blocks/Cortex_Blocks_Objects_ConvertObject_ConvertObjectToTextBlock_1.png new file mode 100644 index 0000000000000000000000000000000000000000..372e1686eabacc66085fee581e91b81824f30082 GIT binary patch literal 1271 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 literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_PowerShell_ExecutePowerShellScript_ExecutePowerShellScriptBlock_1.png b/content/static/2024.11/blocks/Cortex_Blocks_PowerShell_ExecutePowerShellScript_ExecutePowerShellScriptBlock_1.png new file mode 100644 index 0000000000000000000000000000000000000000..cf657baa8a78663513cff0c2bfc0f87cce7fc0eb GIT binary patch literal 1218 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 literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Queues_EnqueueItem_EnqueueItemsBlock_2.png b/content/static/2024.11/blocks/Cortex_Blocks_Queues_EnqueueItem_EnqueueItemsBlock_2.png new file mode 100644 index 0000000000000000000000000000000000000000..c00424502c226c0b6931114a1c070a49a0849d77 GIT binary patch literal 1097 zcmV-P1h)H$P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1KvqQK~!i%?V3$b z6G0fqd-LeW@aWN_M?Z!i!?-2lOG5AfUcf{T;K7TAZG))w6)`5F3BmYA*tXCHDhTps zk+x89o&W4U%ebBGZgVWGZXM!PZ=J zgGqho4a6fa~CXb{wHA9A1yS*u8!xV@f%MT8)7P~94z(z zn+dILSDhH3Y6pjA{qV>feZAzw^DAZE_noof#8g>1m{I!4Cks*R{&dNXnC6R*YfhZB zvRQFrs@w$&>ezzaeX}er0_3P*e&Yvq%V3!JUaf9sW>-DiNfc`Z%y0al4h2S9{;}6k zu2q1MWa9^QBrpgiT%4>*FvvZAP)7!Hf2*p&!e%Wr81})$%!+3_M6obnUgHOKD6p?f zJD!zG1z5B3gSurfKSu>qr44iFS%ELLW4XN#WdJ z$fj&wuoAFVgo%lhgD~NH3|ch$;4|<_1;z~q^-ZwqD%od|!06=Bio$?lc~ZZ&fZ?o& zr?@lut-u~)*Qi>G5auDfSw{j3Wrf9qN6J%Mg?^KU7<*@|Godpw&J%=BiGC%-{g`!!e$oR|AqO764ZanKD zizw}4%^&L8?3&30{sJd!jJ0*6m;YxGgwhW2 z^xUPEp43UP@_PE literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Queues_GetCount_GetCountOfAllItemsBlock_2.png b/content/static/2024.11/blocks/Cortex_Blocks_Queues_GetCount_GetCountOfAllItemsBlock_2.png new file mode 100644 index 0000000000000000000000000000000000000000..ee0948060559363af1883b7fe77b28ee75223191 GIT binary patch literal 1168 zcmV;B1aJF^P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1SLsCK~!i%?OIz; z6G0T-Hy`~OKKkgRkNymQhH*>8OG5Agd;t@E03Y;0!?r=xdPR)HOC%6)$hM_zpn^qO zut2#KT<4qJvuvlc?Y6tntm&70>CTzi$$UL?&Y4cCIH78ZGpd&CQKO0RNHk%Df#zD1 z{Sj^MoF(HB-LcF`2$H=RG7dqDB}-8vntoFl7 zM%gw@OiMaKO;yv2%wzJ-u(Km9Z0raN8#}_n#v>7S{qcN_?doV!YQOO`U1JM^feVX% z{AmFBwQbu5Q9FD4MrHrN7=E*0+fz#=KK6sYYTJTh;KKCWAHG^v){L-5^Lu4W!U&7M zw`$UL5W)zu`MuJYFaRmsx!53u0pk2#>06litp+WuRj;)y3~?|vwdC3lkgXMAZu5I( zOTxY{th;8eAcWPM-z%FI)`)(E1;vgqulz5B4Zg@2ufMKT#e;ugNuC9-Jxt+NmouX2 zj(%_SC2X~{!xsiIWNSs3o-47om&JP*=t~$u%xVO(xe41p_-nk^3&!P9vmKxLWn}Z4 z)<_c=GrzpyNc|AkSYTU)-I*|dboR&7Ms9V>8sQF%>5H4&o^R1QY@0AuOY%>6Vz+W& z^)?2^+TN=Zdw~l>aV3yV>amz^3_Q>9ttO(pTd|%@h;4}LV_vSeB?A|RI}aROamFJX z?mSB6J$~qCaI*ymMXFYfkh1_Xt^y8AKM)fj0HY9emiz?!d@$eFdKAFvmNiSsY zj4SvHoUAj{)bwutpG7E?4hSb_FAZl-aA6lm=1#GF{!TI|Y@AhN`e`o8iAZ$rLMR1l iiD~?&+4hv8DE|OG49*>=(_bS10000 literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Queues_PeekItem_PeekItemBlock_2.png b/content/static/2024.11/blocks/Cortex_Blocks_Queues_PeekItem_PeekItemBlock_2.png new file mode 100644 index 0000000000000000000000000000000000000000..bbf21233527d92c4fcd4e706caf4b46647f368c2 GIT binary patch literal 1085 zcmV-D1j74?P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1JX%EK~!i%?V3+d z6G0fp_vX=$;nAZ8KMBDDcmWeVfCs%8whf}zzlhO@CIn+t!nTDHK(Gji z1=>Qvah~Z;JG8UA)9yesrcd&O>^sxR{CH>HnQm%{vYpg9+e!D>@zi)Mo+2i=GS_r} z%$dF5Vbs)}$esp}?1P4R2rM3!WyKu#wxpAhrWt%%fl8#$%Q~2Bd&IqHvGplwG~98z z3{%sR2BU2|?k3HcywP-bz)W)o%rtkvO!KjT-F!0F5W7B_md0;An{SBeuy(Ncrym5$ z{VrBxfGX`Dkn+JH8GgH1jb~Q!tnWv6y&BVH?O^WmA2wNt#~w~Ddl5ojeaThhTq_%e zYD||qV5&A2?EbqYX%XO#3KllLs+$JG#CJ<&lAK=kZRg^#X28P6S9MEZTuZ-p8_Kl~ zFfQ5ns*VH(p@fT*)d>dGkFV;;VDM(_mqa3Z}~)FjfB-V1qBS%0tIHg7T%ldfk-*mT zB{ng@@K`Hg?sA?!t4v-UFcKJ7eO2S)F+Z?_!@p$G-5^&-E6>T#KgmLF$Lm=U`pm6v z3#A`$;ec%gyEjq!(%GM!C(G-*UJrkvPhYaK?Aa0xaNEFaC(ZsM6MN-DuQgogTg_g; z-qQ|-!#QSKLgO;RrFue1?#T9ov9>Y72d|{ux_qaR0 zK)Ss6>Soa!p-~UsFOrFGIq#`a_$(XWsf<-`?O>`#=7Kaxvl-S$+^_XMc`$EZ1Z4|S z0Yfnn#}usv4Cfj4k&1iiVSbI4_b{n|VSmcz1#1CoMwl=hCKWKKXN*=?$v%q&#%~_Y z$PWyMFbd0dai2YlU>n;d_AEQ=js*;NMZCqG%4{lofPO}{6t{NvNblne0{|Qc1C$uA z7v>>5tRsQ7(P%qvH~Y;Z2&Em&^vspv>?sCzd1Uqs zUFRPpolNtLop8@GC{eNa>?I=sozygb(_GDzWm*3Kko4fq+s8p200000NkvXXu0mjf Dpl$+q literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Queues_RemoveItem_RemoveAllItemsBlock_2.png b/content/static/2024.11/blocks/Cortex_Blocks_Queues_RemoveItem_RemoveAllItemsBlock_2.png new file mode 100644 index 0000000000000000000000000000000000000000..1f714a803dcb208e21de70bc47b4ff9da48ee60e GIT binary patch literal 1020 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 literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Text_ContainsText_ContainsAnyTextBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_Text_ContainsText_ContainsAnyTextBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..97f0bfd72cdceefcf75d9b65210494f441a42ef0 GIT binary patch literal 1073 zcmV-11kU@3P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1I9^2K~!i%?V3$b z6G0fq_vX=$;nAZA_gNGNQrOAwzMTsL7*+z zLU}1T&NI8y9mZ#N`^K(o_MiMh=seqyD(%7f*0GCro{~NHWCy{Xa=8JrV^R6SU{N3N6hmYt50Mw6xOf!ZLhMmY**ocgUjh2jEf08BB^JTKVTPJ>LcmIHVTihfAFZ1Y}RJ3I5 zbAH3Vo&Q=`t)g>M(ULJgGldD8lZuv%1ubk&DmpR-8C)*aTq#y|?Py0ETYG4%NTs%K zM?1piq@p8ZX5kkaC-PvjU`IQ8^=TE26@ext3yV_`83SbfH^$_y2>S~bC(^F54`$Jh zwp2ejMB`MnWK7=2MyHq2IFWXZ-F%i~X1I=ZAA^&}#Oyj*THhwg)Cw9S)2=Zf{_zKy zU#^f;w#x9TyyF|viOk}KGB4Z6Q@HF=bF~daS-1&!$H8c6<4F+yZ zH!>uauqK?G`AJV0TXvMCgTvn>yHXWSIS}h@Fj!-T71Ni@kwS6X9#sos`jT084J%O> z0yD-kMaLl%dv)hb=p~44WY1;o1!C;c6rC6?zgy4qtkf{Aly}J5=8pZ_QGq$gvRg?8 zV(bPzOv4yVUY1#?kZX_U8`t;K!!H&Gudx`roMn7B#wP^jD66`&Pp&>pll$}yF|) z#Nj{bYsf)Y1-)iWgRj70gQ3PSd)Rjt!66zDPG&C;&R1ci-RJz<_^ rrbNZ!a~DEs&`76fr|fNHO4GDIMMydB|CzPM00000NkvXXu0mjf3ij%@ literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Text_ContainsText_ContainsTextBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_Text_ContainsText_ContainsTextBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..97f0bfd72cdceefcf75d9b65210494f441a42ef0 GIT binary patch literal 1073 zcmV-11kU@3P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1I9^2K~!i%?V3$b z6G0fq_vX=$;nAZA_gNGNQrOAwzMTsL7*+z zLU}1T&NI8y9mZ#N`^K(o_MiMh=seqyD(%7f*0GCro{~NHWCy{Xa=8JrV^R6SU{N3N6hmYt50Mw6xOf!ZLhMmY**ocgUjh2jEf08BB^JTKVTPJ>LcmIHVTihfAFZ1Y}RJ3I5 zbAH3Vo&Q=`t)g>M(ULJgGldD8lZuv%1ubk&DmpR-8C)*aTq#y|?Py0ETYG4%NTs%K zM?1piq@p8ZX5kkaC-PvjU`IQ8^=TE26@ext3yV_`83SbfH^$_y2>S~bC(^F54`$Jh zwp2ejMB`MnWK7=2MyHq2IFWXZ-F%i~X1I=ZAA^&}#Oyj*THhwg)Cw9S)2=Zf{_zKy zU#^f;w#x9TyyF|viOk}KGB4Z6Q@HF=bF~daS-1&!$H8c6<4F+yZ zH!>uauqK?G`AJV0TXvMCgTvn>yHXWSIS}h@Fj!-T71Ni@kwS6X9#sos`jT084J%O> z0yD-kMaLl%dv)hb=p~44WY1;o1!C;c6rC6?zgy4qtkf{Aly}J5=8pZ_QGq$gvRg?8 zV(bPzOv4yVUY1#?kZX_U8`t;K!!H&Gudx`roMn7B#wP^jD66`&Pp&>pll$}yF|) z#Nj{bYsf)Y1-)iWgRj70gQ3PSd)Rjt!66zDPG&C;&R1ci-RJz<_^ rrbNZ!a~DEs&`76fr|fNHO4GDIMMydB|CzPM00000NkvXXu0mjf3ij%@ literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Text_ConvertTo_ConvertToCamelCaseBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_Text_ConvertTo_ConvertToCamelCaseBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..0068e7ca52ca99209aeed67f137c64a1b616af93 GIT binary patch literal 1110 zcmV-c1gZOpP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1M5jdK~!i%?V3$b z6G0fq_vX=$;nAZ zEfmU&<2_7R%(0P`fKhHDI%&t{LsaoQkswMl?aAG_ZP7ps}%r!X} z(iSe5HZ1i;GN-{1cA?K01}~;9MG0y8T_nht&e1#j_MZ`R-eeA&k55q zOvI1@U!!VziDnER^gDquzY!So8*Lf8`65MT7fWPk?|`_az5PS-BezM0-e%A_+0mA< z`OJoSJNK1ct)O$Vqb*}@W(pHFCp+3Q=C!an+0m6T$l!9Z>PVryXGUAv*sh_mBIWA7 z8EpxhlO0_d)AL(soXC^uycuoj-Pct#Rs@=qEG*8Bz!)IwzcD6vMc7}kIFU|`ebx(R zw4sB;BQ(yAwv5U9*x2kc8Yj}JvD>fG%na9w?qhKBn2fKJrS%;Wjjfy*G)j|q%*N?@!`65i%E5Yluc&Y6G6SSyon-Js{j zR4qwD5o5y9x!?4Jv28{fIz0MAQY#hVlmoHN4SH)#Ghzm!X_7DOn4|WBn1N`DUBgP$ z0nd!FOwn=3MD4&j6E+jX*0blZ_B=86Y=%yZmfxM%8CGge((`5VXevi4yVesmn1d`k zm82)eZqdUujIES*%})%iZSIn}bcxI)i*+7MD@`5`*^>p$gxv>OYpxr6On<)q zwDC2=Abr*nGbjqymYgXr_#lX$0#y0Do8IxbW*a>SM zT)fM{-X#jw+0@Sh8-oVJ#XBtD>_vK7iXXnMHT{nZ-pRnAC@3@e_sPInQtX=ikA%_l z=FtjQ=$g1j%duFo-s^8}*T{|Mi)^@1W76*A9BkxB_2+ z!v=kgruVV$EP_Kcz@Nmgj$}?TW0yx4&d@slgarAGxEj&VGE<^L;e|`SG^izFv{Uxi cGo>iXU*ljU0n*iDpa1{>07*qoM6N<$g1ZP2wg3PC literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Text_ConvertTo_ConvertToLowerCaseBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_Text_ConvertTo_ConvertToLowerCaseBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..0068e7ca52ca99209aeed67f137c64a1b616af93 GIT binary patch literal 1110 zcmV-c1gZOpP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1M5jdK~!i%?V3$b z6G0fq_vX=$;nAZ zEfmU&<2_7R%(0P`fKhHDI%&t{LsaoQkswMl?aAG_ZP7ps}%r!X} z(iSe5HZ1i;GN-{1cA?K01}~;9MG0y8T_nht&e1#j_MZ`R-eeA&k55q zOvI1@U!!VziDnER^gDquzY!So8*Lf8`65MT7fWPk?|`_az5PS-BezM0-e%A_+0mA< z`OJoSJNK1ct)O$Vqb*}@W(pHFCp+3Q=C!an+0m6T$l!9Z>PVryXGUAv*sh_mBIWA7 z8EpxhlO0_d)AL(soXC^uycuoj-Pct#Rs@=qEG*8Bz!)IwzcD6vMc7}kIFU|`ebx(R zw4sB;BQ(yAwv5U9*x2kc8Yj}JvD>fG%na9w?qhKBn2fKJrS%;Wjjfy*G)j|q%*N?@!`65i%E5Yluc&Y6G6SSyon-Js{j zR4qwD5o5y9x!?4Jv28{fIz0MAQY#hVlmoHN4SH)#Ghzm!X_7DOn4|WBn1N`DUBgP$ z0nd!FOwn=3MD4&j6E+jX*0blZ_B=86Y=%yZmfxM%8CGge((`5VXevi4yVesmn1d`k zm82)eZqdUujIES*%})%iZSIn}bcxI)i*+7MD@`5`*^>p$gxv>OYpxr6On<)q zwDC2=Abr*nGbjqymYgXr_#lX$0#y0Do8IxbW*a>SM zT)fM{-X#jw+0@Sh8-oVJ#XBtD>_vK7iXXnMHT{nZ-pRnAC@3@e_sPInQtX=ikA%_l z=FtjQ=$g1j%duFo-s^8}*T{|Mi)^@1W76*A9BkxB_2+ z!v=kgruVV$EP_Kcz@Nmgj$}?TW0yx4&d@slgarAGxEj&VGE<^L;e|`SG^izFv{Uxi cGo>iXU*ljU0n*iDpa1{>07*qoM6N<$g1ZP2wg3PC literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Text_ConvertTo_ConvertToPascalCaseBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_Text_ConvertTo_ConvertToPascalCaseBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..0068e7ca52ca99209aeed67f137c64a1b616af93 GIT binary patch literal 1110 zcmV-c1gZOpP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1M5jdK~!i%?V3$b z6G0fq_vX=$;nAZ zEfmU&<2_7R%(0P`fKhHDI%&t{LsaoQkswMl?aAG_ZP7ps}%r!X} z(iSe5HZ1i;GN-{1cA?K01}~;9MG0y8T_nht&e1#j_MZ`R-eeA&k55q zOvI1@U!!VziDnER^gDquzY!So8*Lf8`65MT7fWPk?|`_az5PS-BezM0-e%A_+0mA< z`OJoSJNK1ct)O$Vqb*}@W(pHFCp+3Q=C!an+0m6T$l!9Z>PVryXGUAv*sh_mBIWA7 z8EpxhlO0_d)AL(soXC^uycuoj-Pct#Rs@=qEG*8Bz!)IwzcD6vMc7}kIFU|`ebx(R zw4sB;BQ(yAwv5U9*x2kc8Yj}JvD>fG%na9w?qhKBn2fKJrS%;Wjjfy*G)j|q%*N?@!`65i%E5Yluc&Y6G6SSyon-Js{j zR4qwD5o5y9x!?4Jv28{fIz0MAQY#hVlmoHN4SH)#Ghzm!X_7DOn4|WBn1N`DUBgP$ z0nd!FOwn=3MD4&j6E+jX*0blZ_B=86Y=%yZmfxM%8CGge((`5VXevi4yVesmn1d`k zm82)eZqdUujIES*%})%iZSIn}bcxI)i*+7MD@`5`*^>p$gxv>OYpxr6On<)q zwDC2=Abr*nGbjqymYgXr_#lX$0#y0Do8IxbW*a>SM zT)fM{-X#jw+0@Sh8-oVJ#XBtD>_vK7iXXnMHT{nZ-pRnAC@3@e_sPInQtX=ikA%_l z=FtjQ=$g1j%duFo-s^8}*T{|Mi)^@1W76*A9BkxB_2+ z!v=kgruVV$EP_Kcz@Nmgj$}?TW0yx4&d@slgarAGxEj&VGE<^L;e|`SG^izFv{Uxi cGo>iXU*ljU0n*iDpa1{>07*qoM6N<$g1ZP2wg3PC literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Text_ConvertTo_ConvertToTitleCaseBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_Text_ConvertTo_ConvertToTitleCaseBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..0068e7ca52ca99209aeed67f137c64a1b616af93 GIT binary patch literal 1110 zcmV-c1gZOpP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1M5jdK~!i%?V3$b z6G0fq_vX=$;nAZ zEfmU&<2_7R%(0P`fKhHDI%&t{LsaoQkswMl?aAG_ZP7ps}%r!X} z(iSe5HZ1i;GN-{1cA?K01}~;9MG0y8T_nht&e1#j_MZ`R-eeA&k55q zOvI1@U!!VziDnER^gDquzY!So8*Lf8`65MT7fWPk?|`_az5PS-BezM0-e%A_+0mA< z`OJoSJNK1ct)O$Vqb*}@W(pHFCp+3Q=C!an+0m6T$l!9Z>PVryXGUAv*sh_mBIWA7 z8EpxhlO0_d)AL(soXC^uycuoj-Pct#Rs@=qEG*8Bz!)IwzcD6vMc7}kIFU|`ebx(R zw4sB;BQ(yAwv5U9*x2kc8Yj}JvD>fG%na9w?qhKBn2fKJrS%;Wjjfy*G)j|q%*N?@!`65i%E5Yluc&Y6G6SSyon-Js{j zR4qwD5o5y9x!?4Jv28{fIz0MAQY#hVlmoHN4SH)#Ghzm!X_7DOn4|WBn1N`DUBgP$ z0nd!FOwn=3MD4&j6E+jX*0blZ_B=86Y=%yZmfxM%8CGge((`5VXevi4yVesmn1d`k zm82)eZqdUujIES*%})%iZSIn}bcxI)i*+7MD@`5`*^>p$gxv>OYpxr6On<)q zwDC2=Abr*nGbjqymYgXr_#lX$0#y0Do8IxbW*a>SM zT)fM{-X#jw+0@Sh8-oVJ#XBtD>_vK7iXXnMHT{nZ-pRnAC@3@e_sPInQtX=ikA%_l z=FtjQ=$g1j%duFo-s^8}*T{|Mi)^@1W76*A9BkxB_2+ z!v=kgruVV$EP_Kcz@Nmgj$}?TW0yx4&d@slgarAGxEj&VGE<^L;e|`SG^izFv{Uxi cGo>iXU*ljU0n*iDpa1{>07*qoM6N<$g1ZP2wg3PC literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Text_ConvertTo_ConvertToUpperCaseBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_Text_ConvertTo_ConvertToUpperCaseBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..0068e7ca52ca99209aeed67f137c64a1b616af93 GIT binary patch literal 1110 zcmV-c1gZOpP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1M5jdK~!i%?V3$b z6G0fq_vX=$;nAZ zEfmU&<2_7R%(0P`fKhHDI%&t{LsaoQkswMl?aAG_ZP7ps}%r!X} z(iSe5HZ1i;GN-{1cA?K01}~;9MG0y8T_nht&e1#j_MZ`R-eeA&k55q zOvI1@U!!VziDnER^gDquzY!So8*Lf8`65MT7fWPk?|`_az5PS-BezM0-e%A_+0mA< z`OJoSJNK1ct)O$Vqb*}@W(pHFCp+3Q=C!an+0m6T$l!9Z>PVryXGUAv*sh_mBIWA7 z8EpxhlO0_d)AL(soXC^uycuoj-Pct#Rs@=qEG*8Bz!)IwzcD6vMc7}kIFU|`ebx(R zw4sB;BQ(yAwv5U9*x2kc8Yj}JvD>fG%na9w?qhKBn2fKJrS%;Wjjfy*G)j|q%*N?@!`65i%E5Yluc&Y6G6SSyon-Js{j zR4qwD5o5y9x!?4Jv28{fIz0MAQY#hVlmoHN4SH)#Ghzm!X_7DOn4|WBn1N`DUBgP$ z0nd!FOwn=3MD4&j6E+jX*0blZ_B=86Y=%yZmfxM%8CGge((`5VXevi4yVesmn1d`k zm82)eZqdUujIES*%})%iZSIn}bcxI)i*+7MD@`5`*^>p$gxv>OYpxr6On<)q zwDC2=Abr*nGbjqymYgXr_#lX$0#y0Do8IxbW*a>SM zT)fM{-X#jw+0@Sh8-oVJ#XBtD>_vK7iXXnMHT{nZ-pRnAC@3@e_sPInQtX=ikA%_l z=FtjQ=$g1j%duFo-s^8}*T{|Mi)^@1W76*A9BkxB_2+ z!v=kgruVV$EP_Kcz@Nmgj$}?TW0yx4&d@slgarAGxEj&VGE<^L;e|`SG^izFv{Uxi cGo>iXU*ljU0n*iDpa1{>07*qoM6N<$g1ZP2wg3PC literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Text_DecodeText_DecodeTextBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_Text_DecodeText_DecodeTextBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..022ed7c0a380f8f5059ee149c752d497d0e349a8 GIT binary patch literal 1125 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 U5NU^36aWAK07*qoM6N<$g2_brIRF3v literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Text_FindAndRemoveText_FindAndRemoveTextBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_Text_FindAndRemoveText_FindAndRemoveTextBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..7d29a60cc24e1a2e2915c1764cd6f770882ad3db GIT binary patch literal 1102 zcmV-U1hM;xP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1LH|VK~!i%?V3wZ zQ$ZMpyL0K!aOu*eOMiwx!+2^$H$-E=jhN^HT)5G2+9+zhA_gNGNQtPG(?Z(-fzC{bf_qb_59iyD&~O&LQ57xP6=a+|wObXjZLdt|K2W^vz% zE{htI8%-Ir7BMyTM$O67&q!N)(FiQYle=oM(G%9F&$%#(lJ&dh1=Y}2%8oW=gmK4td_yoZqRpQ zhM8jFs6F7=wB3I2G;qv zZCx;jEPIutFUD^0!!+8K3cs9Z7<>OcSJ4;1q(1K;^c68qIqS6Dm>dwwQ3{KL-cO~M zpX`f!l{aMc>T1(=VPpPB zmKwvi-D;wYA&b=OsZgZ|9lNoCcXQ5Lc}p)vXl315;aor_)ono)+NsUDWybW&7dKIh z2ZW5sxuznYLuu;5YoJYT_9`tc#kXHps{Z3bu4L4l!Db8txWvJ^5oVDoxvcBvUo$4l2wAA5EU|i)GUZZ&5`T>;V9t$MdD0*ZsSAZyrX={uQJQLK zFO_FKWDy&=`dqayml7jl6_K%iy}>UG%sWo`5=TDr=ZJ%@8@$hO2tR?N8Uu}Kb&20B z!XX(DOcIv|GAD$wi-Xgrc%6SBf`UfEh+3zGDOKUf^o2kgG?Q_@Qg)Xz6$*v^0AV)= U5NU^36aWAK07*qoM6N<$g2_brIRF3v literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Text_FindAndReplaceText_FindAndReplaceAllTextBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_Text_FindAndReplaceText_FindAndReplaceAllTextBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..86794035a70041ed7227ef70dc1a25c3d88ad40e GIT binary patch literal 1126 zcmV-s1eyDZP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1N%utK~!i%?V3wZ z6Hye$XXnz7;nJl`mwpUChH+{{H$-E=jhN^HTv{BUhL<~eUkP=^&X=zIUL7**< zLV0_=|2uQr%k<3jX~!}BC;yQ4o@wu|=iGB|hia;HBXLGIlHGbZF&qjfSP*Q@HQ5_7 zrq9_JWpza|CjmrV7%=yP#m3UKkYU~?f&yut!RHoKBzcw!2(tA-^SmbNlNb!R!@LX= zF=8Ol)(tbyGe!>v-5s!?xdRq7*9CU{S&B{086VTlYrhj$MPtC^vjF&~n9LkL5T`J%zL)BjgWVsU7xycqabH9gngXl}rH5+) zJ(0`_7k2hV))0#^3JmHV;@y>4XDtQ8x7})@zyPGa&Vwx?6>lk zvlO9~b-Tm47#UT!1yvZQHtUvwId8tWiE17YG9uTSYWW<>(<#|uq^ys zT*yvFtr={_06;gyxe>6)lx*uxIQbz_Zh7;l#h3V+xWY4$D^%XscawyhN?SKlWww0V zpuK$O?X2tCp@a;f{iCtqI7Ypuw0~gsrix6|0|zL12&UGSw67VHWrQr$QkLkRrA)b$ zptQeWim~Q!@}K|#q&5n#OiAM>M`>!Hy{g|>e~vilx|v@ytl=kc)L@`(m|fyGiy$Neg6a6>fy@a3c5!g}6tD9SL{QKi*CXa> s0i`Mwp1u%BKqC?3owB=>DNWP<0ByMpjf--FzW@LL07*qoM6N<$f=RL%r2qf` literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Text_FindAndReplaceText_FindAndReplaceTextBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_Text_FindAndReplaceText_FindAndReplaceTextBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..86794035a70041ed7227ef70dc1a25c3d88ad40e GIT binary patch literal 1126 zcmV-s1eyDZP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1N%utK~!i%?V3wZ z6Hye$XXnz7;nJl`mwpUChH+{{H$-E=jhN^HTv{BUhL<~eUkP=^&X=zIUL7**< zLV0_=|2uQr%k<3jX~!}BC;yQ4o@wu|=iGB|hia;HBXLGIlHGbZF&qjfSP*Q@HQ5_7 zrq9_JWpza|CjmrV7%=yP#m3UKkYU~?f&yut!RHoKBzcw!2(tA-^SmbNlNb!R!@LX= zF=8Ol)(tbyGe!>v-5s!?xdRq7*9CU{S&B{086VTlYrhj$MPtC^vjF&~n9LkL5T`J%zL)BjgWVsU7xycqabH9gngXl}rH5+) zJ(0`_7k2hV))0#^3JmHV;@y>4XDtQ8x7})@zyPGa&Vwx?6>lk zvlO9~b-Tm47#UT!1yvZQHtUvwId8tWiE17YG9uTSYWW<>(<#|uq^ys zT*yvFtr={_06;gyxe>6)lx*uxIQbz_Zh7;l#h3V+xWY4$D^%XscawyhN?SKlWww0V zpuK$O?X2tCp@a;f{iCtqI7Ypuw0~gsrix6|0|zL12&UGSw67VHWrQr$QkLkRrA)b$ zptQeWim~Q!@}K|#q&5n#OiAM>M`>!Hy{g|>e~vilx|v@ytl=kc)L@`(m|fyGiy$Neg6a6>fy@a3c5!g}6tD9SL{QKi*CXa> s0i`Mwp1u%BKqC?3owB=>DNWP<0ByMpjf--FzW@LL07*qoM6N<$f=RL%r2qf` literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Text_FindText_FindAllTextBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_Text_FindText_FindAllTextBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..720b5ab7359f8a3ce2d13891c0d0c4514ab20f0b GIT binary patch literal 1121 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 z

!8LAFHM$;ho;mFF9@8+YC=u(botM7|DxKOjMVBWi~1)6A5tKydDYFAZ9;2pl}s6i@fTEv8Oq9h+zkK# N002ovPDHLkV1leQ3Ge^_ literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Text_FormatText_FormatTextWithValuesBlock_1.png b/content/static/2024.11/blocks/Cortex_Blocks_Text_FormatText_FormatTextWithValuesBlock_1.png new file mode 100644 index 0000000000000000000000000000000000000000..5f79d9538819b14b6db883856a6d0b85bd29dcac GIT binary patch literal 1095 zcmV-N1i1T&P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1KdeOK~!i%?V3$b z6G0fq_vX=$;nAZRfBSF4|X7IUVDilA91^5|r)IM*p`a}kOPLP&i zEP@R98q>0~G-LRn-{~3i8$DxwqbXz8pC!o5e3tAM%cNT>?jMjJi(6#qbqbx6j;4%# zO>Oc&*L^Ll=FvInXv$bOGldD8la8j0c`a;CI@&S@8C>2dxRS{gd305qJ0&z$CRf$@ZzSwUk|S~Ug)Km8)} z%Q+HBWSLPcMn_Y|TA>|d?a(vUDm`Nzre~~Gdd4cm;c4y>0+x-$x$_ShYh?0`8}!_m zX~jt(CuSg=BR+63= zyFm}rFt(E2<5%1TS%UQ^?m6*&mA#hz&dXV)>&C={pd1^~M!rbyjxSX1clB|Mxhsk-3Bf?tk~>jI$DbFzOB{$$A#!*U{Kc7&rHqz)EHIbO~UAS^Js)ibWL2L z

!8LAFHM$;ho;mFF9@8+YC=u(botM7|DxKOjMVBWi~1)6A5tKydDYFAZ9;2pl}s6i@fTEv8Oq9h+zkK# N002ovPDHLkV1leQ3Ge^_ literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Text_GetIndex_GetIndexOfTextBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_Text_GetIndex_GetIndexOfTextBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..64a06988c987cfe1dab92fbc28f007161ffbb416 GIT binary patch literal 1125 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 KMNUMnLSTY;HV-}k literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Text_GetText_GetTextAtEndBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_Text_GetText_GetTextAtEndBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..2f30cef606dcc33fd4ebc9d3fc9d55d1d256457b GIT binary patch literal 1092 zcmV-K1iSl*P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1KCMLK~!i%?V3wZ z6Hye$XXnz7;nJl`mwpUChH+{{H$-E=jhN^{Tv{BUhL<~kWkQ!eN(^5)G1$ne! z3#Fyt_5N??b}qx2DSgm!O#jJ0q;pT1^W&WR=ul0SZX{0WMzUWIC&ohI1Pg*|xh4lg z#>^QD!&YA;eH=j48w2J$V6m_?Eo7KCiJ(B5SMXU4Dv~@+1q9jphOyJ9 zinc}NHnL_rPGM{u?mos)+rCic{Sx*hh2C zims`;yGO>kxhXK`J~leNNXDsd73})+IRPVer28079ux6Zwy?UzqOm11#_3kU;P9uP zY<980VyV0UrDELN6j&>62do|Uz*=<=ti$eswdx*N-AO#n-RF>D5^>)ChrkY#{NVw8 z2h)ut3q@)PM?e4KCyY%is;1q&KP+LkryF2oE(Q{p|M zMLp~rn5YyVM~z<`WI|p^Lyf?o`dlU4b+Ga8wPdJjp~d8U zQ^C~hs<4=d`w(-j>tGM~>&uVmM|oHj094%Gse|Q;Wp?GsELlCwPwJj<$HDGREQse7 z(s(YS3JJrMBm~Cs^Zxrx{WV}I^^fw^m6&H81;eM^M)CrKB%J)6UQp1HgAKpSShw;P z)rx4T_<~(owQ>^586$;zQ=4_iz?=_X+(a!NI5OdyTA5O%DlA3C$Q4#@_NqJDif_NI zH2lYfT*&|^C6nIRtXNkL%FGr-j0z_INR&IicpSzT_?)=J+Yv1XAz55Uo8q)V`R;gz z4f3v#@_mE$@~t=X^&=Ikc6)4|jDxX4%7ZfYG#tmMIBEaDtW6dBliPWb5}@QEn3`MC zzE(`O5h^9y(n~8F+jgZ~T2R_wFvXa2lV*+t1dzH=cvVUoUpbni2D2_$jk}e=O2impgFEb%##92RVX}jE|7pmBF0zB{(7Y}P5TSv|0T}&X0Yi10000< KMNUMnLSTY;HV-}k literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Text_GetText_GetTextAtIndexBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_Text_GetText_GetTextAtIndexBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..64a06988c987cfe1dab92fbc28f007161ffbb416 GIT binary patch literal 1125 zcmV-r1e*JaP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1NuosK~!i%?V3$b z6G0fq_vX=$;nAZA_gNGNQrNiZJ{NAAkY>l zP|BO*{C8)z!}9F*m9A_0PyPXRo-Om^ndh15Qcaa^q|WF@x?7K?h9c1v3xn;srh6mC zxNn28KVco?haVk+yM)l>jJy}Y?_Tv71&mJkF`tX-F^0Bc8&GD&XRNTa$R6w zv#a9QwO=z!8|0k4To+h7GewD-lb7oP3tH5iyxbHRGPsa0`8roDi|C40H+RTb)y2}T zh^~m5lb4$UGw0XIIMt6v=S6fyZ@w&%v8vIe+@j*V+yR5#`ftG8T@m{W6{osUuuo=A zMBCciKOp10To;&o9~&HBAmdaw3U>2F#)6SL)_n{okCEgGn_Jmp@x&q-<94H9aP;#p zHnmV>iRpp`O2v4&F0e-23|KSnfHmq4Sc}~OYt$Vu$7wvxJ>-aC5^?_ihrnu?eC>dN zgXu<^MPl}Z;}gI631d@4+1fw&!=@KElv563s{;lLX4o-3@eG^KZHZBDA*LrjZQWxn zQ6C2eW@U|p)xXT`7bmwPEf zs3-Nc&_L8I;(K*lP=#@7vu+uf`{9e1sOAA7BeK?1%WGrlyojtwW>s$Xs$04g-+f!I z`i~3Q$*7vaW()v4#6bfAEHWkAx*JaZktnykdDP-dye6*jOrW*bDhW4{u^*&5H5k+e z?dLmhXFO|%5;BDPLvz7#jCxJ!;K0PDicHi4ryhc-+L8`5V{#cG3$-jubWbN!9!pR< zSTMz?xluDu0s=^F6n>eK#z&4a)IfWE^sI+0Vk1|tReN(Otw+rgGIq~B5R`S)9e3p+ zj{M565eHo_^LvIgd<2df47Clj%lgbB2+4qOI(fN2d%^;{I52sNuk(*YP}rQ*W9DfK rN>wB}c_Ea5Mk>KOWw(Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1KCMLK~!i%?V3wZ z6Hye$XXnz7;nJl`mwpUChH+{{H$-E=jhN^{Tv{BUhL<~kWkQ!eN(^5)G1$ne! z3#Fyt_5N??b}qx2DSgm!O#jJ0q;pT1^W&WR=ul0SZX{0WMzUWIC&ohI1Pg*|xh4lg z#>^QD!&YA;eH=j48w2J$V6m_?Eo7KCiJ(B5SMXU4Dv~@+1q9jphOyJ9 zinc}NHnL_rPGM{u?mos)+rCic{Sx*hh2C zims`;yGO>kxhXK`J~leNNXDsd73})+IRPVer28079ux6Zwy?UzqOm11#_3kU;P9uP zY<980VyV0UrDELN6j&>62do|Uz*=<=ti$eswdx*N-AO#n-RF>D5^>)ChrkY#{NVw8 z2h)ut3q@)PM?e4KCyY%is;1q&KP+LkryF2oE(Q{p|M zMLp~rn5YyVM~z<`WI|p^Lyf?o`dlU4b+Ga8wPdJjp~d8U zQ^C~hs<4=d`w(-j>tGM~>&uVmM|oHj094%Gse|Q;Wp?GsELlCwPwJj<$HDGREQse7 z(s(YS3JJrMBm~Cs^Zxrx{WV}I^^fw^m6&H81;eM^M)CrKB%J)6UQp1HgAKpSShw;P z)rx4T_<~(owQ>^586$;zQ=4_iz?=_X+(a!NI5OdyTA5O%DlA3C$Q4#@_NqJDif_NI zH2lYfT*&|^C6nIRtXNkL%FGr-j0z_INR&IicpSzT_?)=J+Yv1XAz55Uo8q)V`R;gz z4f3v#@_mE$@~t=X^&=Ikc6)4|jDxX4%7ZfYG#tmMIBEaDtW6dBliPWb5}@QEn3`MC zzE(`O5h^9y(n~8F+jgZ~T2R_wFvXa2lV*+t1dzH=cvVUoUpbni2D2_$jk}e=O2impgFEb%##92RVX}jE|7pmBF0zB{(7Y}P5TSv|0T}&X0Yi10000< KMNUMnLSTY;HV-}k literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Text_GetText_GetTextBetweenIndexesBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_Text_GetText_GetTextBetweenIndexesBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..2f30cef606dcc33fd4ebc9d3fc9d55d1d256457b GIT binary patch literal 1092 zcmV-K1iSl*P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1KCMLK~!i%?V3wZ z6Hye$XXnz7;nJl`mwpUChH+{{H$-E=jhN^{Tv{BUhL<~kWkQ!eN(^5)G1$ne! z3#Fyt_5N??b}qx2DSgm!O#jJ0q;pT1^W&WR=ul0SZX{0WMzUWIC&ohI1Pg*|xh4lg z#>^QD!&YA;eH=j48w2J$V6m_?Eo7KCiJ(B5SMXU4Dv~@+1q9jphOyJ9 zinc}NHnL_rPGM{u?mos)+rCic{Sx*hh2C zims`;yGO>kxhXK`J~leNNXDsd73})+IRPVer28079ux6Zwy?UzqOm11#_3kU;P9uP zY<980VyV0UrDELN6j&>62do|Uz*=<=ti$eswdx*N-AO#n-RF>D5^>)ChrkY#{NVw8 z2h)ut3q@)PM?e4KCyY%is;1q&KP+LkryF2oE(Q{p|M zMLp~rn5YyVM~z<`WI|p^Lyf?o`dlU4b+Ga8wPdJjp~d8U zQ^C~hs<4=d`w(-j>tGM~>&uVmM|oHj094%Gse|Q;Wp?GsELlCwPwJj<$HDGREQse7 z(s(YS3JJrMBm~Cs^Zxrx{WV}I^^fw^m6&H81;eM^M)CrKB%J)6UQp1HgAKpSShw;P z)rx4T_<~(owQ>^586$;zQ=4_iz?=_X+(a!NI5OdyTA5O%DlA3C$Q4#@_NqJDif_NI zH2lYfT*&|^C6nIRtXNkL%FGr-j0z_INR&IicpSzT_?)=J+Yv1XAz55Uo8q)V`R;gz z4f3v#@_mE$@~t=X^&=Ikc6)4|jDxX4%7ZfYG#tmMIBEaDtW6dBliPWb5}@QEn3`MC zzE(`O5h^9y(n~8F+jgZ~T2R_wFvXa2lV*+t1dzH=cvVUoUpbni2D2_$jk}e=O2impgFEb%##92RVX}jE|7pmBF0zB{(7Y}P5TSv|0T}&X0Yi10000< KMNUMnLSTY;HV-}k literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Text_IsText_IsTextEmptyBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_Text_IsText_IsTextEmptyBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..97f0bfd72cdceefcf75d9b65210494f441a42ef0 GIT binary patch literal 1073 zcmV-11kU@3P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1I9^2K~!i%?V3$b z6G0fq_vX=$;nAZA_gNGNQrOAwzMTsL7*+z zLU}1T&NI8y9mZ#N`^K(o_MiMh=seqyD(%7f*0GCro{~NHWCy{Xa=8JrV^R6SU{N3N6hmYt50Mw6xOf!ZLhMmY**ocgUjh2jEf08BB^JTKVTPJ>LcmIHVTihfAFZ1Y}RJ3I5 zbAH3Vo&Q=`t)g>M(ULJgGldD8lZuv%1ubk&DmpR-8C)*aTq#y|?Py0ETYG4%NTs%K zM?1piq@p8ZX5kkaC-PvjU`IQ8^=TE26@ext3yV_`83SbfH^$_y2>S~bC(^F54`$Jh zwp2ejMB`MnWK7=2MyHq2IFWXZ-F%i~X1I=ZAA^&}#Oyj*THhwg)Cw9S)2=Zf{_zKy zU#^f;w#x9TyyF|viOk}KGB4Z6Q@HF=bF~daS-1&!$H8c6<4F+yZ zH!>uauqK?G`AJV0TXvMCgTvn>yHXWSIS}h@Fj!-T71Ni@kwS6X9#sos`jT084J%O> z0yD-kMaLl%dv)hb=p~44WY1;o1!C;c6rC6?zgy4qtkf{Aly}J5=8pZ_QGq$gvRg?8 zV(bPzOv4yVUY1#?kZX_U8`t;K!!H&Gudx`roMn7B#wP^jD66`&Pp&>pll$}yF|) z#Nj{bYsf)Y1-)iWgRj70gQ3PSd)Rjt!66zDPG&C;&R1ci-RJz<_^ rrbNZ!a~DEs&`76fr|fNHO4GDIMMydB|CzPM00000NkvXXu0mjf3ij%@ literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Text_IsText_IsTextEmptyOrWhitespaceBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_Text_IsText_IsTextEmptyOrWhitespaceBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..97f0bfd72cdceefcf75d9b65210494f441a42ef0 GIT binary patch literal 1073 zcmV-11kU@3P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1I9^2K~!i%?V3$b z6G0fq_vX=$;nAZA_gNGNQrOAwzMTsL7*+z zLU}1T&NI8y9mZ#N`^K(o_MiMh=seqyD(%7f*0GCro{~NHWCy{Xa=8JrV^R6SU{N3N6hmYt50Mw6xOf!ZLhMmY**ocgUjh2jEf08BB^JTKVTPJ>LcmIHVTihfAFZ1Y}RJ3I5 zbAH3Vo&Q=`t)g>M(ULJgGldD8lZuv%1ubk&DmpR-8C)*aTq#y|?Py0ETYG4%NTs%K zM?1piq@p8ZX5kkaC-PvjU`IQ8^=TE26@ext3yV_`83SbfH^$_y2>S~bC(^F54`$Jh zwp2ejMB`MnWK7=2MyHq2IFWXZ-F%i~X1I=ZAA^&}#Oyj*THhwg)Cw9S)2=Zf{_zKy zU#^f;w#x9TyyF|viOk}KGB4Z6Q@HF=bF~daS-1&!$H8c6<4F+yZ zH!>uauqK?G`AJV0TXvMCgTvn>yHXWSIS}h@Fj!-T71Ni@kwS6X9#sos`jT084J%O> z0yD-kMaLl%dv)hb=p~44WY1;o1!C;c6rC6?zgy4qtkf{Aly}J5=8pZ_QGq$gvRg?8 zV(bPzOv4yVUY1#?kZX_U8`t;K!!H&Gudx`roMn7B#wP^jD66`&Pp&>pll$}yF|) z#Nj{bYsf)Y1-)iWgRj70gQ3PSd)Rjt!66zDPG&C;&R1ci-RJz<_^ rrbNZ!a~DEs&`76fr|fNHO4GDIMMydB|CzPM00000NkvXXu0mjf3ij%@ literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Text_IsText_IsTextEqualBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_Text_IsText_IsTextEqualBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..97f0bfd72cdceefcf75d9b65210494f441a42ef0 GIT binary patch literal 1073 zcmV-11kU@3P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1I9^2K~!i%?V3$b z6G0fq_vX=$;nAZA_gNGNQrOAwzMTsL7*+z zLU}1T&NI8y9mZ#N`^K(o_MiMh=seqyD(%7f*0GCro{~NHWCy{Xa=8JrV^R6SU{N3N6hmYt50Mw6xOf!ZLhMmY**ocgUjh2jEf08BB^JTKVTPJ>LcmIHVTihfAFZ1Y}RJ3I5 zbAH3Vo&Q=`t)g>M(ULJgGldD8lZuv%1ubk&DmpR-8C)*aTq#y|?Py0ETYG4%NTs%K zM?1piq@p8ZX5kkaC-PvjU`IQ8^=TE26@ext3yV_`83SbfH^$_y2>S~bC(^F54`$Jh zwp2ejMB`MnWK7=2MyHq2IFWXZ-F%i~X1I=ZAA^&}#Oyj*THhwg)Cw9S)2=Zf{_zKy zU#^f;w#x9TyyF|viOk}KGB4Z6Q@HF=bF~daS-1&!$H8c6<4F+yZ zH!>uauqK?G`AJV0TXvMCgTvn>yHXWSIS}h@Fj!-T71Ni@kwS6X9#sos`jT084J%O> z0yD-kMaLl%dv)hb=p~44WY1;o1!C;c6rC6?zgy4qtkf{Aly}J5=8pZ_QGq$gvRg?8 zV(bPzOv4yVUY1#?kZX_U8`t;K!!H&Gudx`roMn7B#wP^jD66`&Pp&>pll$}yF|) z#Nj{bYsf)Y1-)iWgRj70gQ3PSd)Rjt!66zDPG&C;&R1ci-RJz<_^ rrbNZ!a~DEs&`76fr|fNHO4GDIMMydB|CzPM00000NkvXXu0mjf3ij%@ literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Text_IsText_IsTextNullBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_Text_IsText_IsTextNullBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..97f0bfd72cdceefcf75d9b65210494f441a42ef0 GIT binary patch literal 1073 zcmV-11kU@3P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1I9^2K~!i%?V3$b z6G0fq_vX=$;nAZA_gNGNQrOAwzMTsL7*+z zLU}1T&NI8y9mZ#N`^K(o_MiMh=seqyD(%7f*0GCro{~NHWCy{Xa=8JrV^R6SU{N3N6hmYt50Mw6xOf!ZLhMmY**ocgUjh2jEf08BB^JTKVTPJ>LcmIHVTihfAFZ1Y}RJ3I5 zbAH3Vo&Q=`t)g>M(ULJgGldD8lZuv%1ubk&DmpR-8C)*aTq#y|?Py0ETYG4%NTs%K zM?1piq@p8ZX5kkaC-PvjU`IQ8^=TE26@ext3yV_`83SbfH^$_y2>S~bC(^F54`$Jh zwp2ejMB`MnWK7=2MyHq2IFWXZ-F%i~X1I=ZAA^&}#Oyj*THhwg)Cw9S)2=Zf{_zKy zU#^f;w#x9TyyF|viOk}KGB4Z6Q@HF=bF~daS-1&!$H8c6<4F+yZ zH!>uauqK?G`AJV0TXvMCgTvn>yHXWSIS}h@Fj!-T71Ni@kwS6X9#sos`jT084J%O> z0yD-kMaLl%dv)hb=p~44WY1;o1!C;c6rC6?zgy4qtkf{Aly}J5=8pZ_QGq$gvRg?8 zV(bPzOv4yVUY1#?kZX_U8`t;K!!H&Gudx`roMn7B#wP^jD66`&Pp&>pll$}yF|) z#Nj{bYsf)Y1-)iWgRj70gQ3PSd)Rjt!66zDPG&C;&R1ci-RJz<_^ rrbNZ!a~DEs&`76fr|fNHO4GDIMMydB|CzPM00000NkvXXu0mjf3ij%@ literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Text_IsText_IsTextNullEmptyOrWhitespaceBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_Text_IsText_IsTextNullEmptyOrWhitespaceBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..97f0bfd72cdceefcf75d9b65210494f441a42ef0 GIT binary patch literal 1073 zcmV-11kU@3P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1I9^2K~!i%?V3$b z6G0fq_vX=$;nAZA_gNGNQrOAwzMTsL7*+z zLU}1T&NI8y9mZ#N`^K(o_MiMh=seqyD(%7f*0GCro{~NHWCy{Xa=8JrV^R6SU{N3N6hmYt50Mw6xOf!ZLhMmY**ocgUjh2jEf08BB^JTKVTPJ>LcmIHVTihfAFZ1Y}RJ3I5 zbAH3Vo&Q=`t)g>M(ULJgGldD8lZuv%1ubk&DmpR-8C)*aTq#y|?Py0ETYG4%NTs%K zM?1piq@p8ZX5kkaC-PvjU`IQ8^=TE26@ext3yV_`83SbfH^$_y2>S~bC(^F54`$Jh zwp2ejMB`MnWK7=2MyHq2IFWXZ-F%i~X1I=ZAA^&}#Oyj*THhwg)Cw9S)2=Zf{_zKy zU#^f;w#x9TyyF|viOk}KGB4Z6Q@HF=bF~daS-1&!$H8c6<4F+yZ zH!>uauqK?G`AJV0TXvMCgTvn>yHXWSIS}h@Fj!-T71Ni@kwS6X9#sos`jT084J%O> z0yD-kMaLl%dv)hb=p~44WY1;o1!C;c6rC6?zgy4qtkf{Aly}J5=8pZ_QGq$gvRg?8 zV(bPzOv4yVUY1#?kZX_U8`t;K!!H&Gudx`roMn7B#wP^jD66`&Pp&>pll$}yF|) z#Nj{bYsf)Y1-)iWgRj70gQ3PSd)Rjt!66zDPG&C;&R1ci-RJz<_^ rrbNZ!a~DEs&`76fr|fNHO4GDIMMydB|CzPM00000NkvXXu0mjf3ij%@ literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Text_IsText_IsTextNullOrEmptyBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_Text_IsText_IsTextNullOrEmptyBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..97f0bfd72cdceefcf75d9b65210494f441a42ef0 GIT binary patch literal 1073 zcmV-11kU@3P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1I9^2K~!i%?V3$b z6G0fq_vX=$;nAZA_gNGNQrOAwzMTsL7*+z zLU}1T&NI8y9mZ#N`^K(o_MiMh=seqyD(%7f*0GCro{~NHWCy{Xa=8JrV^R6SU{N3N6hmYt50Mw6xOf!ZLhMmY**ocgUjh2jEf08BB^JTKVTPJ>LcmIHVTihfAFZ1Y}RJ3I5 zbAH3Vo&Q=`t)g>M(ULJgGldD8lZuv%1ubk&DmpR-8C)*aTq#y|?Py0ETYG4%NTs%K zM?1piq@p8ZX5kkaC-PvjU`IQ8^=TE26@ext3yV_`83SbfH^$_y2>S~bC(^F54`$Jh zwp2ejMB`MnWK7=2MyHq2IFWXZ-F%i~X1I=ZAA^&}#Oyj*THhwg)Cw9S)2=Zf{_zKy zU#^f;w#x9TyyF|viOk}KGB4Z6Q@HF=bF~daS-1&!$H8c6<4F+yZ zH!>uauqK?G`AJV0TXvMCgTvn>yHXWSIS}h@Fj!-T71Ni@kwS6X9#sos`jT084J%O> z0yD-kMaLl%dv)hb=p~44WY1;o1!C;c6rC6?zgy4qtkf{Aly}J5=8pZ_QGq$gvRg?8 zV(bPzOv4yVUY1#?kZX_U8`t;K!!H&Gudx`roMn7B#wP^jD66`&Pp&>pll$}yF|) z#Nj{bYsf)Y1-)iWgRj70gQ3PSd)Rjt!66zDPG&C;&R1ci-RJz<_^ rrbNZ!a~DEs&`76fr|fNHO4GDIMMydB|CzPM00000NkvXXu0mjf3ij%@ literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Text_JoinText_JoinTextBlock_1.png b/content/static/2024.11/blocks/Cortex_Blocks_Text_JoinText_JoinTextBlock_1.png new file mode 100644 index 0000000000000000000000000000000000000000..d2f5c0e39beb15ed4ce513d5c23e7c5a51ad2741 GIT binary patch literal 1041 zcmV+s1n&EZP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1ExttK~!i%?V8JO z(?Ar4y<^E^uw==SC6B>lARI(tQ-M%nLy=(7ZrFh8L{K1H3#bwWwMs>Ss!p1V+R)NV z(vsfN8)p8AC!V^;j-9wRM){>*tun{)d_8B*Ox!54R4sc>)pEURGCPt;W{o(wG1uJf zgf?@*#IV$pDxL-qbz#gr02UKVQ4*Sdj|hsTSq5J;pi;T>R6v}q4(S&aUZ2EZ%$;Oq zn9UFav9_w|RhBV&Fz)Vx#m!x?xY-xj&F6VzVzz2*)%T6CRNp%=e$1^K{cnoooSf_n zY^u0s-Y$HVmNv*aIoTIjn3ikCn}6OK-m}k+HJTr0k;NoZJP2?fP%P>|GK23l%53U9ivk zsu|tT{=p#`=VV`C_I+%4Vu6g4-7eUjmjwmxG@XcZ_df*YW%Awu zBL`EpoRLU1CY+x9#ZDNTW>iB5hkuOx;)Zm}L2PTlXu-5bOkcWSlvlURQD-5hFP-Pt z@Dg=#WMDi~Y#f=`-M7w!t%TTS_FUFpBw$a+*~D1+-F;Q$rRG@bb7 z#p;gvihto+eh;&p?G7DGObF!&A!GRc5sMT4@O{ZsCgmn%cj#c4G+vjpHCd<{1N1_~f^YG#;Y)xEa<%p7NSCMbfZodDnb2~I)%Ao{>qXmiiQC6gN++Dg7*ml9fo#T#6;2md&tE+1t#Nq9}g>5XLa`34BwU00000 LNkvXXu0mjf`5)+> literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Text_RemoveText_RemoveTextAtBeginningBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_Text_RemoveText_RemoveTextAtBeginningBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..c7adb776d31ae431be8e6ab35ab27cf1a295f965 GIT binary patch literal 975 zcmV;=12FuFP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D17t}=K~!i%?V3$b z6G0fq_vX=$;nAZ;8#tWR$EGM2QkKDiOf7-Vp1ZQGOP<}Q!6wZ657#>#AN@AGI| zSfAVoWz1asiN?u1m|W!1wqAZ-Mq_1Ql5z@*b0akdIQ8EcbIyvezF=`OL5;mPn>^am z!Ql}a=Y}t1&UI{TY6*>#32N--(<(C~^jFt0*m+FMtdfP*4k;8HXpEDf#(><1?__Ri zlN2j0W)zEY!Oo@0 zSf*$@WMc2Y-V^o`#CEgiG4>KM_UI$+7%jhB&uXmH{0huLmc2?c5o6csW*XWWtsQ>F zzu;c>3|`JoVmBr_1mzf3`0Q#CyRkQ4t^aC-i{03L`uo*~(H!N$_{5$G zL~iWf!~#375Wu;JtfA*MhEtQ~8Z+(1bp7~Abasr+uE;ox)EIo*?Iq=mjl7-bkMb6D zFsf1n!LzZ&Ix=Ip>P_A(yZ9`f@4IbLKW=Y}nb5 z6grGMihYP9e$s2mM%N8`&$tG!z+sI_W0(W%okehn2B^u*<&oM6X6)kV>?vC3?~owX xn9=j*X=X}RCO3OQNrOhINN37yH&dFX{RYXtLN%%aE%E>W002ovPDHLkV1nZU&L#i= literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Text_RemoveText_RemoveTextAtEndBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_Text_RemoveText_RemoveTextAtEndBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..c7adb776d31ae431be8e6ab35ab27cf1a295f965 GIT binary patch literal 975 zcmV;=12FuFP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D17t}=K~!i%?V3$b z6G0fq_vX=$;nAZ;8#tWR$EGM2QkKDiOf7-Vp1ZQGOP<}Q!6wZ657#>#AN@AGI| zSfAVoWz1asiN?u1m|W!1wqAZ-Mq_1Ql5z@*b0akdIQ8EcbIyvezF=`OL5;mPn>^am z!Ql}a=Y}t1&UI{TY6*>#32N--(<(C~^jFt0*m+FMtdfP*4k;8HXpEDf#(><1?__Ri zlN2j0W)zEY!Oo@0 zSf*$@WMc2Y-V^o`#CEgiG4>KM_UI$+7%jhB&uXmH{0huLmc2?c5o6csW*XWWtsQ>F zzu;c>3|`JoVmBr_1mzf3`0Q#CyRkQ4t^aC-i{03L`uo*~(H!N$_{5$G zL~iWf!~#375Wu;JtfA*MhEtQ~8Z+(1bp7~Abasr+uE;ox)EIo*?Iq=mjl7-bkMb6D zFsf1n!LzZ&Ix=Ip>P_A(yZ9`f@4IbLKW=Y}nb5 z6grGMihYP9e$s2mM%N8`&$tG!z+sI_W0(W%okehn2B^u*<&oM6X6)kV>?vC3?~owX xn9=j*X=X}RCO3OQNrOhINN37yH&dFX{RYXtLN%%aE%E>W002ovPDHLkV1nZU&L#i= literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Text_RemoveText_RemoveTextAtIndexBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_Text_RemoveText_RemoveTextAtIndexBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..c7adb776d31ae431be8e6ab35ab27cf1a295f965 GIT binary patch literal 975 zcmV;=12FuFP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D17t}=K~!i%?V3$b z6G0fq_vX=$;nAZ;8#tWR$EGM2QkKDiOf7-Vp1ZQGOP<}Q!6wZ657#>#AN@AGI| zSfAVoWz1asiN?u1m|W!1wqAZ-Mq_1Ql5z@*b0akdIQ8EcbIyvezF=`OL5;mPn>^am z!Ql}a=Y}t1&UI{TY6*>#32N--(<(C~^jFt0*m+FMtdfP*4k;8HXpEDf#(><1?__Ri zlN2j0W)zEY!Oo@0 zSf*$@WMc2Y-V^o`#CEgiG4>KM_UI$+7%jhB&uXmH{0huLmc2?c5o6csW*XWWtsQ>F zzu;c>3|`JoVmBr_1mzf3`0Q#CyRkQ4t^aC-i{03L`uo*~(H!N$_{5$G zL~iWf!~#375Wu;JtfA*MhEtQ~8Z+(1bp7~Abasr+uE;ox)EIo*?Iq=mjl7-bkMb6D zFsf1n!LzZ&Ix=Ip>P_A(yZ9`f@4IbLKW=Y}nb5 z6grGMihYP9e$s2mM%N8`&$tG!z+sI_W0(W%okehn2B^u*<&oM6X6)kV>?vC3?~owX xn9=j*X=X}RCO3OQNrOhINN37yH&dFX{RYXtLN%%aE%E>W002ovPDHLkV1nZU&L#i= literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Text_RemoveText_RemoveTextBeforeIndexBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_Text_RemoveText_RemoveTextBeforeIndexBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..c7adb776d31ae431be8e6ab35ab27cf1a295f965 GIT binary patch literal 975 zcmV;=12FuFP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D17t}=K~!i%?V3$b z6G0fq_vX=$;nAZ;8#tWR$EGM2QkKDiOf7-Vp1ZQGOP<}Q!6wZ657#>#AN@AGI| zSfAVoWz1asiN?u1m|W!1wqAZ-Mq_1Ql5z@*b0akdIQ8EcbIyvezF=`OL5;mPn>^am z!Ql}a=Y}t1&UI{TY6*>#32N--(<(C~^jFt0*m+FMtdfP*4k;8HXpEDf#(><1?__Ri zlN2j0W)zEY!Oo@0 zSf*$@WMc2Y-V^o`#CEgiG4>KM_UI$+7%jhB&uXmH{0huLmc2?c5o6csW*XWWtsQ>F zzu;c>3|`JoVmBr_1mzf3`0Q#CyRkQ4t^aC-i{03L`uo*~(H!N$_{5$G zL~iWf!~#375Wu;JtfA*MhEtQ~8Z+(1bp7~Abasr+uE;ox)EIo*?Iq=mjl7-bkMb6D zFsf1n!LzZ&Ix=Ip>P_A(yZ9`f@4IbLKW=Y}nb5 z6grGMihYP9e$s2mM%N8`&$tG!z+sI_W0(W%okehn2B^u*<&oM6X6)kV>?vC3?~owX xn9=j*X=X}RCO3OQNrOhINN37yH&dFX{RYXtLN%%aE%E>W002ovPDHLkV1nZU&L#i= literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Text_RemoveText_RemoveTextBetweenIndexesBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_Text_RemoveText_RemoveTextBetweenIndexesBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..c7adb776d31ae431be8e6ab35ab27cf1a295f965 GIT binary patch literal 975 zcmV;=12FuFP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D17t}=K~!i%?V3$b z6G0fq_vX=$;nAZ;8#tWR$EGM2QkKDiOf7-Vp1ZQGOP<}Q!6wZ657#>#AN@AGI| zSfAVoWz1asiN?u1m|W!1wqAZ-Mq_1Ql5z@*b0akdIQ8EcbIyvezF=`OL5;mPn>^am z!Ql}a=Y}t1&UI{TY6*>#32N--(<(C~^jFt0*m+FMtdfP*4k;8HXpEDf#(><1?__Ri zlN2j0W)zEY!Oo@0 zSf*$@WMc2Y-V^o`#CEgiG4>KM_UI$+7%jhB&uXmH{0huLmc2?c5o6csW*XWWtsQ>F zzu;c>3|`JoVmBr_1mzf3`0Q#CyRkQ4t^aC-i{03L`uo*~(H!N$_{5$G zL~iWf!~#375Wu;JtfA*MhEtQ~8Z+(1bp7~Abasr+uE;ox)EIo*?Iq=mjl7-bkMb6D zFsf1n!LzZ&Ix=Ip>P_A(yZ9`f@4IbLKW=Y}nb5 z6grGMihYP9e$s2mM%N8`&$tG!z+sI_W0(W%okehn2B^u*<&oM6X6)kV>?vC3?~owX xn9=j*X=X}RCO3OQNrOhINN37yH&dFX{RYXtLN%%aE%E>W002ovPDHLkV1nZU&L#i= literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Text_SplitText_SplitTextBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_Text_SplitText_SplitTextBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..eff74f7402676d013487f1bbbda81dcd8398aca1 GIT binary patch literal 1061 zcmV+=1ls$FP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1G-5>K~!i%?V3$b z6G0fq_vX=$;nAZA_gNGNsVunZ7C&yAW#ZY zD20OK{HHtZxIVkvH+NaH|KuOa&a<8Q@jUa=rJ5?;$ehrPY_A^AjK<;_76#YGn(dDn zQ>QG9hI$hDqX43A44DVPVqs}o%rLJLL7_Cy;G-H;B72ew2($HJ^Ry=FlV}XNYn zzixHszh;+9g%Hov;flBp#!#_o2(;P|`m zYi5CM4Y=15m+;WZyqpk zFx|+qSfV!If*q_M5cHz*n0L{=3XFR_uun@@$$R&Bri(MOXb}vyYyhXo>jmh%WfqZ z2-p>Vm`2-DamTts3qXj0Z;j2di}x~hI9wBbSmkWD?_hF3C`UJ~l`0}j_V>FvI%`F^ zZyUaYjeV&N#w}YC3Ljf!sp7SoF$k|kKg3+~9qbPO9RqX{1%)|`%ssA`A4GM^~IwZpW}1l0v|M0TB=Grdm=0Fq1&L{eB;GzQ;P&*`gy5KC@lXt zj#2L^9UPdosp9m|44jmD2&U$ibf6iNWrTU-RhH1o#!e$s4kaiZESO@rFh$k?F0At>vZcifGKIPxdIMjUjV%Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1%^pPK~!i%?V8JO z97Pm{XUCGqV9AmtOCE#AK#UOyEFxGW2q^)DMUn+9K$$UCASRHQpdi8}a>UJYd+gY< zjg1rEuoGWmho-;oKAz+9sh;YY306z_rC+0|KGj`+olBh_O--ZTn0Tq)Xq~DzCq@RE z6LA%ot+jP#pfUbRE~AYTgVWC=$eLI&UO-DOt5zFmL?0MNm1N?EN#Y<3mfrABQvH=8TKUXv)l9W&g1=9u&}aa+J$iK;ckAHINsZT5;uSP z%d`t+*TN9R0yJ2hWg9{*4D>3lD`AA+qn*8c32j`tvtZhXaCmg_$VTy<5Vh<(u`6Lq zYuovwGlc9exx>77znn6!LqzD%1{+(C`}rf==p^dnTXVT(oO;Hx z5hBj@-00M*X}`|bjyBd=N}|Y zLPo%XEjyvR7z=nkJC{#I7#`;E4FUO8E>)IPQcvs znRz(73>F6Qf(E7Awc*Tj+aL{D5S|lI92lcI`hZ8VVG{&yA<`@*jB4k?cdihYP;^r8tjoqLuI#Uy>6k!z)dLHF&LLQ&MjLY-se(aEH|YmjGSbL~T%!}y&q zCezRpA+8Nz%z7RyEsSo${VfBJ6p7PwPJZ4xlq)Vol+4xQES$QMR97RU~6|TB@kgik84PUmBU`MCt;8dMDmB<5-pp<%!J+i!}fqc3-f_{ z9KCKHC_G+aisanwsQnXw27+{Q^(imutzg9_sjfqkI(|q8mTCMgU X4{SZ12DTa+00000NkvXXu0mjf5_#3M literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Wireless_WirelessReceiver_WirelessReceiverBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_Wireless_WirelessReceiver_WirelessReceiverBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..74381372d2e6d72af5c80476a3a0faa9759bf692 GIT binary patch literal 882 zcmV-&1C9KNP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D0|!Y&K~z{ry;w1C z(?Ar?#>mLX$jHdppTNk-$jHdZ#@LauYz(MQgamP-N>rPIhmP zC!TkO^&vVfOv+Y8sjEC(IuHzf1aZpFrbL=>(<-Q$W+qP8ukx@moSM2XemG0k{dpdK z6nZyJS-`e*s_GVp@gESHWPBNfo;ZvMIC&+*G_G&7!tLGtaA)rz?DfBE?(QGzw&vzm z_|jVuze^&WQMWl9%8up1xB6})3_9I#Fc^e3==ScCqGZawfCE%?_om6s8MrLr{Txe*O37*AeQ9$(reM)5CI$aM4wFA?A6h6NEktPJf+Q%`#487n3kRMiVDP8w>h*I@UpiC=K8wt4QNSb_@`t zWJ7Eqpu{qP<@&U>J=TsHq8*xnJ`9jW1pj$wPn-ZU-1^cUYd0h zZNQqp`frC}hi1@Ukf~%WEw5$TX%O%7+Ye%&L|sDYPoe7u1a8D%bSLWT2vyoUVy7jC zPjKuw$;O&h^&q+-=Dc=5D{-W0YZ6i9buB}xB!fxBat)W2i~=5^K7$NU`XwV9Lgf7) zC;DtcjgxF_=+ym398Lr%Tr#{Q29OSi5@Ax+pDF46$6<_uI*Y$hv(w|@$H8wh>yx`E zA>@f~Gk(ik*SEZ+V2-Wd`uv}cnTcFy#+*5};N=r9Zw2XDzw0I7jKYir$5|QRWz24i z0oj7HJb^(gIP?l-B@GZFiXaWPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D0{=-wK~z{r#aKOW z6G0GlM@dOZNl8hWpFl}TNl8gbN12i`bQCDIg#?l09OcWAWjQ7x zI3ZYC_N`~(e4aax@9glTXIr;(Gqba^GrP{EL9wE4<~{W=Uk)A@%7Gu@9L9>Cnj!J& zz!)nGx?JuvfGGdyIh5UIsH1Pjeg+t;t(QLK##l>%3`&wtm!(7{_ z+2uU_*%dFN$>ll{T714a`Eg3wqU~=O4KEXxZ}r_L-D-D8YW%!Hgc{L@aeV17+kENu zdSoscs7>Wyh1C^DI8=>3bi|A~g@_7_VfImANfDuyw;Mz6VL~GkzY*Iq5N0SxG(LXb z92$3o5f}%PqJeSf1LB;rEyR4p9yh`{lP3HiCbqe~M_T$3jManVi0QO<*g-?g9y`kc z%Aj207##Uf`!=wwm>|-Clea9X2mKS`h-1f>t)0K&cIX_RSm#gz+>&8w@hrT{98fq% z?KU)d+shCtP9RJ~YkTiNyu%!D5=e{+(bgabw0=$~j;J+ouHE@=Bjtc4!81eyHENvt zldlAi$elir;hf+lv4PYfSNh1>^)u1j|HzF&n8EBf)bZ()`C-tVEVgn_nn>i4cQd-n zi~Czz8fT8gcYXS&V`@omBjak06tsNPIK27ddp!r#D9ngaJT4o!8I#&Wm;e9(07*qoM6N<$f});~ Ay8r+H literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Workspaces_EndWorkspace_EndWorkspaceBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_Workspaces_EndWorkspace_EndWorkspaceBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..37d96105ee9b4e1bab63bfe03e197dc5df001c8f GIT binary patch literal 680 zcmV;Z0$2TsP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D0zFAYK~z{ry;w0% z!cY)qb98icbaZs&CpbDfIyySKIWjup=3pqqL}`ghUt=PP3oeAH2_z&0LkQ^PTJI}I zlycy`mi9|NNO-SzU$57@cNCJK)-d~yYt9`nxU71CA7dG7HP;k*do~~kyAVL^k<(B^ z+B>E1@!uR~r4hJ8jaPs-Jme|v3zlt_iu*q_wHwz_R z+O$B3v4xE&bkJ$9qVTemOTl87cB^)iG?+7RdM!(-$CcdcQ! zKM3#rC(%}%Q4N{{tzX)dC!I!c!E$CmhD#fB;t;9BQf9E}`Wq+Be=K7Ww3vQEwWrVS zm%%fcx^kx_68YcRjAwaue@jXdGgZ&}{7*+_NghRJUURhI$EQBLSHUkevC{ayo(li1r~u9FfPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D0;EYqK~z{ry;!ks z6G0GlM@dOZNl8hWPoSivq@<*zqfAK|ItrAtg#^B{BHbQDaR>?l1!MstMuFs_C`t?n zq7W=C^UiaMeVIGYuI)VO#gcb+=6P;zW;Zn-G+O3*5Ssfzlsv3QNnGFp)*7LiWAoX7 z0$havVwZwi4axS1J{P7c?#VNA1x|+pd9jt$7bA0x-TI*(nmhF{ITizW5|5MJ>+vX# zFL8Z{PA4X1t6|J#4p$9`p-m`G+1ZpxKX^kWYNnYfGEABrRz?t+yW+-KvX#tp_)%nU z)07KX%b;m)u#7XH&?MuFAnJ)_41mrn85a3GUa{YH_w3HzzKvJbMH^pIkGjcnC_Bo= z_x1a(9mdx7j(xiHQndA8o8@G07FxVyG{VE)50-Lf2?F~4zWubd?f)3*#X|i&KDSW9ae{LE{&Q^C-hL2$ zjA0vs)MG*`C`Y<~;FK+@HfzuMnQ{{-%#BdbNKV% zJDIw3Pf8T>*t;3u<<;}emn7y$eb?vzbj+;Cv&`f@M+<&@>cg7@WA(jW0(umFk>J>s zDQ?E>b}}GaaONWnwSuNMQC6yeLc|cHU@?uHjvxS{V~7y1$d#zo{sTO2PjMje@5KNB N002ovPDHLkV1i}uVUYj; literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Workspaces_Workspace_WorkspaceBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_Workspaces_Workspace_WorkspaceBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..9fbc0230a7d1a3879762818d1bc0e4d74b30f3fb GIT binary patch literal 677 zcmeAS@N?(olHy`uVBq!ia0vp^WanM1_mZ8PZ!6K4ClAAPkSA95NX?7{4#k*$;(Si z`yT@7=a-gx*D_vybVzOK1WD2S1+2R@D%|%39^sDD%20gP65?FFY%b5_6Bj=pX3tFX zvyL}1nR(RW!=g^ZM&gez^Mc z#}Ak6+zGR1gxU5*7+^J>x36_sXkY%l|6$gK&TF?6%r}~RPy_HDG=d!YPq z$+5a{cIAy*=T`mrb;TxoP zEZQ5)aX3ZmP5H;1ZJ2Q~YsU&H9$mx9R|^77wYD7b z2|Mh1b;Sjt%V+bitVl4N`^T-f>%VT=CMmsDZmrWG%0;7+)K))SlogWE8Q6jxR6SDQ z5IlBYw79mi&2+-C$+hO22}M9xj| z!p`7>9;8h(nS1?;T-q^~qyJ`RXDUU7U*UT1RvI*wY1|}^APgg&e IbxsLQ0Bklkvj6}9 literal 0 HcmV?d00001 diff --git a/content/static/2024.11/blocks/Cortex_Blocks_Xml_ConvertXml_ConvertStructureToXmlBlock.png b/content/static/2024.11/blocks/Cortex_Blocks_Xml_ConvertXml_ConvertStructureToXmlBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..74bfd5086a2b28c36a0ffe57b5002ca02da56f5a GIT binary patch literal 1148 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

<^O|E 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 a%V2u^`14cKa=zO~Tr#!zN0IT*cm4y^1$(ss literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/Gateway Setup3.png b/content/static/2024.11/images/Gateway Setup3.png new file mode 100644 index 0000000000000000000000000000000000000000..0fd42a1ca7cc0c15309e2d5647cd6cf632158bd2 GIT binary patch literal 24380 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 literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/Gateway Setup5.png b/content/static/2024.11/images/Gateway Setup5.png new file mode 100644 index 0000000000000000000000000000000000000000..9915ffc7d1a37ca4eed21167a55cdeb28559e3f4 GIT binary patch literal 36910 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 literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/Grafana Cloud - Create Stack.png b/content/static/2024.11/images/Grafana Cloud - Create Stack.png new file mode 100644 index 0000000000000000000000000000000000000000..857e585b6b55f5c608c2523735c0740254b5d0f0 GIT binary patch literal 36356 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 literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/Grafana Cloud - Hosted Logs Config Data.png b/content/static/2024.11/images/Grafana Cloud - Hosted Logs Config Data.png new file mode 100644 index 0000000000000000000000000000000000000000..e78811787032efba95111a6f5b511ca438d3c054 GIT binary patch literal 86843 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 aNlP8r8Ve6^Lmc?9XVT&dV#OjKKL0;@WjW9Q literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/Grafana Cloud - Hosted Logs Config Token Name.png b/content/static/2024.11/images/Grafana Cloud - Hosted Logs Config Token Name.png new file mode 100644 index 0000000000000000000000000000000000000000..9d8c8f71af9111e14bd034194d5a134afdd55521 GIT binary patch literal 46487 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 W;;Z4J;ruJ`AuFjQQ6pv?^4|dbfO3Wa literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/Grafana Cloud - Hosted Logs Config Usecase.png b/content/static/2024.11/images/Grafana Cloud - Hosted Logs Config Usecase.png new file mode 100644 index 0000000000000000000000000000000000000000..9f5fe061f5bf019ea8f0712588e682731bfccf4e GIT binary patch literal 11405 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 bp3*!s=dG3PPe0#aR8Jl~eF%T>;_d$e(3L4e literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/GrafanaMenuIcon.png b/content/static/2024.11/images/GrafanaMenuIcon.png new file mode 100644 index 0000000000000000000000000000000000000000..f60edfc9932b1311e95dfdd945eff4179fc7c632 GIT binary patch literal 353 zcmeAS@N?(olHy`uVBq!ia0vp^DnKmH!3HGz_vU{CQjEnx?oJHr&dIz4a#+$GeH|GX zHuiJ>Nn{1`ISV`@iy0XB4ude`@%$AjK*4XGE{-7)?r*0C3LP{MaF`s^l-S0s@vcq& z%JfI<<<4{6tS4UC#=AM!XZDO4Cyo6#=iXYABE99de9cDcRy;vznC?v8>8GlOLgb;;Iw!B73>+HQ8c^^*6=Mai1L z*BKKoJYO|C)RW_V09Qd)=*MX%9pjikM!AY--n%==hj*X*-qUL~r2IH~D5`x!k$V6D literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/IIS Bindings.png b/content/static/2024.11/images/IIS Bindings.png new file mode 100644 index 0000000000000000000000000000000000000000..72a3390e9727c96110e9bd76363935baba51e5c9 GIT binary patch literal 14415 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 literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/Network Discovery 1.png b/content/static/2024.11/images/Network Discovery 1.png new file mode 100644 index 0000000000000000000000000000000000000000..77d41e935c3fe65b1aec0e2f5abe5535e62ac6a5 GIT binary patch literal 6523 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 literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/New Innovation Flow View.PNG b/content/static/2024.11/images/New Innovation Flow View.PNG new file mode 100644 index 0000000000000000000000000000000000000000..4f5c9a20252705f38fbba6fdf7792a7f38d19809 GIT binary patch literal 52670 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

+2z8>^Cl*w!C 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%0Di=-5Cv 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 WM11>CQKTLKUouh(lI7wC{{IUBw^Ee= literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/RabbitMQ Status.png b/content/static/2024.11/images/RabbitMQ Status.png new file mode 100644 index 0000000000000000000000000000000000000000..a061d388207f8c957f0ea58cb04d6fc0b7929381 GIT binary patch literal 27734 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%0A^806+qc#j7iEJHr8WWr`wVB+NlQ0BoVaOuf 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

uFL2Jn^o&7yHf+_LlI9dvx-3 zTex|yN*@J?xRAT_h#j#Hu3N+P!(6G1_fGiU;m^+y>?w&0HZbdd2#9D>PTD_)FbBfc zc|2U^KL_x5Z9ks2Y-)3TTqtbD$5-rE>eaHrl>TuytTa!Aesb<8MRhlKY_WVLx8T6@ zfN+(80egrQoZ=k5M!?@>;i=ajEot$Vmti>IlCZvWmQn}yw}He1{*OKwK{6+5XIsFG z3Hqc2J~4MNQ+IZ7bm4Zjeqs02{)x?Vu4j%GR;V%59Ee2ef#L%Y7z_rP0)IfLNsufE z0|G(+00$KK!NkGDghDa#u(7dl2=E99@bU2R35l+e5E79R;p3BBCm|&RmWogi5L4c` zPJZJWIR!bo5ikaD4-^v@6BC!55TB6z|Mh`t29e@`BEcXGFcSzu3dSG>qrQOvJOjoA zs6`X}uLBGLXvD(C!NtP|E~q2{LBJRo5GV$kYT#-g;Cm316!RJ*?>#KCM^CVsoXGk7 zqcU-rWj=qQ&=}ag#sAbf02l8%F7>u(YzadFJB!!p+^o(<|^*P;f}->#*pU*tqzF#H8e`57{}ndHDr}W#tu>Rn;}M zbzfV)wYIf)baoB?7#bcK9UGtcIlr*Dw7jyqw!XK2aCmfla(Z@-<_pc|zmMOH{Rdy9 z0ACO&6a$Kl<_ipQ2Tlx9C?+E>*0p<&u%9@QG4c81kjq46e*S{X%&)Oa@zi+$@A@r) zpDcT5)_!sJKVvN5|A@0cjQz#e1c(3w3hZIo}?Z?rCJJgx5GtPIh=h0DQPZPS6t>Aytu=F9^UW5Ux-y3MAumg2d8C zf%duv1*YPLn+_3thOzF~+rOR*6$l=+ZpWCpi`GR_SyjnD1<#qk9Y&nqyA%a(Lnfd= zevg3r1p9P7@{Fs?hq6PyRF7V}dmz@v&6(h0CGN89wP&EeT~NsFzr8c}DSA}rf-&lO zYWxF5r_>}3S(w-%)XWa3NHXl7-Hu93vwNFa_GA>UTe#ZyD~Tg)j#uZ~QE8inhRC;AO8$e;)ejOByAXP`j_QOCNI%do_zU zrkC+o!{V9c^#3PThPgK7wa~k3eF)iMH5|?Ika~UE#o&S*Bt`&d(&H^-?_if>% z?708NHXor;x>?#PFzElJ)R6o2mg_sVHvPx%;-hSAgeUB7U7MWDGULx*$MV+6vN=(- zwW86{&(?`4aaV06slFACje!yIwV}OjbfjlbTucag~5et zAJTUY1wy<*3XE6UQhVEQu{2bN%}6-JEvdhW@sCL%vM$HZnx;r{nzv)>b4V@JYpty! z{E`3NOk`tCgF959lhs4#QKgO9&&Y?h#tL6nhUmK@zaKs(-rC}~rQf1{c!z?m&lqQ2 z?C6HT@E&UnvqDk9c=-dz(^Oy0w{r)h7y{rA_bp+s4?Qlg&U2DIsT-z$d=lhbpUuzVcU`JuiLouNFzv*sgd`pfg;kA>;;;&dBP=j`{wP4&UG5XcH?T}dy;Bj#lzO&HS*If9Gj|T zY9!k;MSBlwyrRC=*G$8{th&Gn1U&?aDfPZZ$&we5M=!IS|mrl0B< zlONVJ{|k@4|t*5LftK|GH~5!K3fXITUuS zqQ!XK&QBUSIXx*NHF~P@e-16&nk6~`C-BZwYEyB?Y?Bm zjrkW61cQ~nJ3GYFZkNPBzVij$ zh`I-Wmwb7LDbDBGuz#m0bTKC7Xd}&KBCp}p=VyzYrJwH zg#xKeGQMrezqh2|2=1T~rCE?_^W!jjDYd(`^{u=w=iaTsdWCJ5=x%2<6aC4G%HXyU zYFm$y8;tkEMTSgo`}<*kg5+lT;j#bo6gASHZF49vL4ho%)=0#I%8 zu$Pav1`E|3_OKMxb7n*4W5uGcb5zB3+!ejG5&&Ma`CyXS!p)ypxaKFx> zJU?J&dMW7T+*VC_oHKcWYI~ei1>D-B59xQ45=pd-0xgQItrj!0P<+(9K!F}8zws8Q zp$N`d(A_*@t=dI~+|BX~D;UY4dU=QfMLe1viuhXUk#6Wi-x7bGTYYV;f+xv-p_1GA zQ%b(bZU01w*A|WWAw})K-O50zhjaV45xB+B6N5KqCs~eE)KH!dhQNS~tNWVC-uJl? zmz_&KMty|C5-K^T!86~Utq*#_Ervg)@$3~+B^G~Bl67$CiwVTT$NrjAj=|aLmw1(0(|b^w3ks92RNJ{!qON7-P}eaH zPqOcxqIbI<@F+^f)!uh`Pn9ejT!A1uLyTAPjC*E2zRYQxtDQ{GRa?<_)ww%@6cDa% zb#T2^!T-5ZyCNw?*57ZX8^g^dg~0V(J1RnOduv_!Wg}5;*s@gL0_+S0>PPHiIUptF z$1kk_tana{1ofam?S)s#NQ+YxC`w|dT+D0Vfd<~GJ_w&JM}Y=5j1vBNZPE8j3*y)9 z-`?>kduAt{Ol+A~#&Vw@wE_DfHXV8kUIOnn1Tn1mByAt+@E*gdP@q0!5a6Ns;d|@c zoR_8(wEOqG0ZXbl$K94zlH#ih3WU$f z-qI!^D4u23#VIo5EZQqJM<+rBiw{p=dpB{;SRniJbn~+H8ns@YjnH%PP=X9AUmjwR zJ8Rk9_57?b5c_{Q3)kPcvnIJ!5#BTr;NqMxskt@b7C*O_;s%qIzMfxlTkte!abEW4 z;QD*#Ql2RJB%WRuCVlILHD8q-_2g~+r^m+GqiL(Q3%264W}8*|_J>k(LEK_zRZ2VFMZZ?h!>W>e+2uKzJFg&89?6Yc{^S^gDZ-?-^T|`OJGbko8sTyds=S z&3E~XRB28NX98_?PN_XRoTl^9x07N+R91&A1?w>qy=qE=#^1@41wX#$}wZeS*F8AIbk?Ba*c&cn0qg(fZC+WLd%Tq3hl|ad1 z>=}@T_wDriS_0`On<&ts*XYO57>@;{Qg96NDjgZ24?0Tz5BK<=?(*Ni^9#Ugy-^?& zXB0@R{)H{=A|ZKEE%gE2!c2iR-1!9Aw1j+Nrapuj`Y`uud?!41&~BA=P(M+MZ1?@@ zsD5mM`@y>ENyJ^4wW-|guI$^pJlIcq`D_bHxF7C)XsdhsW86@{X{N%8rs_+DJ%~se zd!M2J_I7J)C%e)PrfH@4@c!UH5)qa=7LDoQQJ=lF`#PSI*N2R(+BFFaya%+d)2edT zgZJ+|e<1sOQ-R^#W#A86?L$7#{_OX9!t8b>JT1(bbQQtC{)MNP3CP;KgJ;}aK`E>< z^|fvMVN39zoN*HOyl;+o?X^FPCQh__s_aN4c8MrBZe_3jO!O%H?WT2!*G60X$Q$#v z7L7PAEvZvGy>EuREen}l3m6igHeFO3_FlQUUz3|K&SO;LUJjde6mOvu-KtK181Yik z^2$><9JZKm1KSx#fmV-7^-5Xy+Are>*{&{NS9BHN4S`4ZLFE5~)AG+)CoR|rO-`03 zG7;B44C>lio2>@m^GDeteQSN~BDfEGzzBYl-c*3vOf!f`@s=NGF&eZu;u~dFa{5Na z^XPQzZkl4Yt+&F$-GNCSqt{%z5&VJm&=OVbha-mz4nCU}k7lP0QkF)O2$TluUhC7` zbruDe5rJttBw|Jy#pwAv)r74RtY^!`UBaEV426Pr_YOyf?=>kJdl%4BWf*>YTPSB+ zP0xPPc~Y_?u%X0f8#kpD6K0cXo!tYh$F2@qioYLzOQU;R`Y}ed;^v){vEIE~Y1;8S zZ?{an=4)^EdR4t1hs}GZ zJ~38Vh&a1_Q|;myelBS{V%yo^gaWb1DxyHXeJGH8F@vNf+Ti}Xv*zq2$Gm2#iaYV! zTW?f7Ws6^bl4s8;>ujjb_?kl4a8&X&e}i|n$5clpS%mAdqr>xoj%n1xz|6(mIg$1I zAZH;Y`Cd1!1L; zvppvNN@tm!{%SUWBW;PP<4G+C0 z9mI7BBbdJzr<=>J$&gknIu}0H=gST`j>+%{Zkst5N043B=3;E_Q$uAj?4P#p&^8BP z5vw$4z)d}3kin&wdGbgBo6o1{=XE-1aL^bWX=O`x-&^WUrSq z(Q@p2Hrq3I1@G5!a=vLk=nZS)6l}q~adR*vbQQBUX@TE!Ojv9#E10_6Xk4GA{z2Gv z)6*>p!BvT@3UlQ$m5^t`x7)RA4HRw8#;rGfG#dpguCu&B>-<@NiLjPDkJx~mq9-4? zR%!jnBzelY{X_8@gQdco+yaZ-_^=EDPfIW~A5H`vN$P~*GOO>JRrPbIOXZpR;m=o> zN1GN&qk~JzuIe@VjJZw(joUUZ-B`*=&%96Wufn2N^xP%qtH_*-;EVca)RV2_3~fLtLsTIx8RSDEL z5|3UhD|pjdh^iUQL_R^DE|^No4VS9Y>3sxYV|D3?&%}wpvto*GI?;BFB85}@waaaF z{gY)jJ>DK|oLQ}kp>ekH4!Qbdhq7mBv*&G-4t&>I%|>PB&Q2~a_fBl znO$T3)&^vSFKOsXhZ?r(;@$KOh`8t4ebw2AtBRT%kYurSWyWQ#LgE9FKOSXxwgUIX znaDM!^|ns2PXrr~NcnY=Y-xz;2E@WLY2nZYq%m~^f+O~{Q1v?|SRS`|dRtu-rx5GC z^4AaGb^2-{Ruj6%OJ?b7D|8lCsK3%Gw$eFO;-f9a!?PB_8d>!|o)ZrOYpEyz*IhYF)wx82L(C zD}op>xv2|A?&IG~JLg=nkQ>CkB4kzDU zoASW6o>F__u#~wmP8koN`LBT==T@nrqo5`vL7aN?Aj;3$FtW4Ttc-Zg>g$x;gcaJ8 zVmg(FFoV^IDP)fw8z!V=xH~$XWp+8!zzzD0Z(&Mg${Xu=RDj*ko7a5;56AOX-s?ge zu-#jmLne~n{dLg#OH|Pmw?4EzlS)A{N=tr(EeL$FOa;-v^Eq#4{^c|}!l+y$r6%$z z-8xAF$e^U*=%-}zzEDKHnil^Gms(-$6|wS(+;E+s#iR0%5zD2`jcbaCwK zwaVFe8>UVqJIK96K4mpWe~i#w!Mc#A zAG1W<&F=P%{7_S2%EM$&$rEkE?~Kw9Yxwq&s$wO&t|bjw_;h`_5%1O^P(R{iek$1G z+xG%W*N!QkMCi2E8lsw7m`zOR!+4H^>YD3#L+z!)r@Cy8pDy+p8eKB`A|cZ~GiwpS zsW>4qq|y4><=!B#V|$#B81o~2L@(?->3xC0Quy&X%f;`@itpe_R$u1VvyTH$=`JnD zeAzJtL>M5$p!MK_|1flbTEjRwHt(|{`V=s^34La;2IyYH1^QS{wOQL<_>|D_9b&@s zjOzUfxyNml6)A&8M(lSgUcVNj835lZym*~>CMqA#pgKQ8BJ5qY&H$^+bsExQTAqgj zg4n7!_)$jfdIniZ<`+1mTywbtCFd?zSDlzieSMSGw-hJbeZrAWXw*TeA}DPjm$5Ws ziYnHFCpnhuWfzm2E)45|=!Nezy28eM4NOjQPyN!B7>l4}Z;dDYNn(;|6oqJrF3}<4 z$*v@5`}rog&6(FzMCTZMqfFmWHeYd0X?4uBAKT)9-Vh_Xia^25Ssw5cb<2!jqas22yDM>63fDnxs*A5zmFSAY4| zaJWURKHO}6=}EBG)r*$V$4D6&Fitx%UrGocfBC+L#J|=4(pN3kh6c*8*YoX>J@ile zR~W2Qs~es%y_Oq^FHIqq#-y&-p;B8JAFHJ8$9%s53PBU2$Dm^Dtl&Zkb3Pp|Wqcg9nJks|DS;faDJ)yAqypX_7i z4X=jqmC=`V4i{pMg)AuMMW1%Zw0WV*k0+rQa%5;Z-+puB{HH?Q-m(Tj~GMXZ<39+%zVrF*jm%@oM1&JhFoLP6;_tjZPJ&-{!;h zk>jyycTYqWH<11H29gr_)j6@;D^@sEsZ=<$+F&Wt!It}{YosVJka0ACHb zD|yt&oGv-ID&pJ65u2xC?)dPpx4WEVa2wR|k4(NwQxU-U(A*Np&d{uwZEDMh6VnR5 z%fr33 zV2q7di21-`YR%d_->_l6vc5CPNo6MrwN)zmm?;r&P6r+`8skSct+;aSQ$KoC`}l$& zH*|}Fn03|jm6dvYBA_dx7U%n4QcSvyo4sMG*QeO9VPd2TV5S#gHGYMYUr_QWJUiQ@ zt;^KvoTXKKeztL&R+KfFM$u|?UeCPl?lVf<-TAs6AZsO%n0C9oJA_3^nuR=80H%BI zHAD=YK_pO3VboedGC4}UjetBgkKIzVmFdy?YMLXF6sf+WP!5cspwDwv-u>b=GK7!T zSz4wTbA56?_jrOSSwcN7op@tfJYMeUXPqy;B%ERU<|lhkM^oV{o(c1WJo8z4S5pci zZ{Z1(MIFo7L(#47!{V0he7e!L6s_zr!>0VBk?(H_w)n5tgurKxips*~h+icf9&>;5 zMEo@-37$HOYS)nM^Jv=~S+ynp-i?mI#>+RWg$!Oveti5~#}XR6%&ifaEpoEk2|L$ms`)HR>aWF!3eoQ_pjOD`M<8STaHV;Ft#sW0yB9mELy z$GTpDr}9G=bz`z}pDS9l4RKc!X88M`)OV5|G+Q98AC!L)N51&k;jNx|tzL+WUAXkc zb5`UIAtH~ukMhwq5jNhFCu{R6jY`)(_J-O`eJZ0jZNWxdg!g5mr5vL!qNI}khl%eK zm=AvSxieo^WW9#pUKXY|Q}BM-q0vP<=ImLd*>wCshE2!x`$cd_?bpWfpR0gsDF4qY z@c!&B|IaG${ZRo775slx04kjQqXJMt;ExJG1;IZm02PG($5q%&CEGmij@+;Oe$~YF zM+VRsxc?VdkI#E5A5DVwb2mtSAOfvHSIYLfBXBAhYP#A%VfvdD|N7p5N*@<--AuTP zZ$ojKJuV_IotZ3GS+0sDSoGGt_|%i@jD742pM_M^qf+iZWj$7!KDz8aump36=p6}U zWPX69Q(vgiz;rU=ux1ADlK`)^%8m1ajN$W2P$hG$BbV>clSRHj%>8J)6{wc2Cwc8d zTuxM(BX&e7a4HB!TCv8~r?96PO<=O#I!WMb#@G1@@fDNiT!X1QmQWln4cx7!iKNjG z6U(0?vnDK>kOLthB=OGjv9nm0LQrpNE^R;S5nh?uDA)MEaHA`(G$k9z2EEF!dsAXB ztCLGd_u3ji%}H$TfKH+WAGB+L+y7DrxoR+$Z(06Xk3I{$jAmG(u2yapRX26ShU}7SU@&)uOD zslG}{Hya##r5+cYjF;*N3ejoY<)H2t_5MM3HGL4EGTCGqc#Lv9Jtt83uq z2eGH1bTvS#oj59yy>ZCB6*{h1(NdfkRG${`s?Zc@;3xSnxp-Jl^6fiAie zXC$*X4!PP#$8pH23?TsS8~DV-oj4bTy>ZB8Gdd0%Llv_KRE0B0XW5ApR@obeTz{hD zY#ADFdjlNfFE~!ky>ZBe96B!JXj6wRsM$);?m*AmcFkYj8^?`Y5ux+afoxbTt*(trDRK zWTAx#Rfq$S&D%~w8p{FXV7HCHgCd}&0QBTYlt}lVU?2&5rb?nqgq|yg!u95D;m|Y3 z(BBezk`#(SUx0xMLGDbMLN5k-92o_XezgtqPgEJ*96j)fGH-9%X8v~=6x|v<_=U2@ zYsT0f3PU$Uj|8C%g<7`6+aoT74nvP*pkQ^aTd-}D@eWt&)?|%rvBz}RhbtEPwr7Gn?y QEBKiQYpDDourGo93j)9Wl>h($ literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/Service Fabric Explorer - Expiring Certificate.PNG b/content/static/2024.11/images/Service Fabric Explorer - Expiring Certificate.PNG new file mode 100644 index 0000000000000000000000000000000000000000..8ed424b4d6762143368680431051adcbb3ac3b84 GIT binary patch literal 78840 zcmce-byV9++b-PV#jR*?iWGMz#fn2Iv_Nq$#obA9hvF_RR!Z^W?oKEU!L_(+Nb=FW zpJ&T=-t+!>)=E}ZW+s!l?YggfW_}T`)Z}q6DKH;BdW55>Ap82!BNU8Bj~>fopgpv( zSNNkmd^~n}Eie73d%F7qpCQpdlS@$?@t^RbX^`j!tMV3e%$Zy)%?*T zM4_Url$NLAK`VL-U^;!f3}%^Cr6@h2x@1to=GvebLCZat(@71E?q5#Nb^!4;?^lZL zQyoVG!%U*>zC0qxlBnyaMvsn={)jIUgs&h?NE`TyM1e7YkuhoVT;jN-{AjPuucG`_ zlY+zkwYGQ%M-$2yw1B?`d|~;3|KGvC z8~@cMi-S~%XNG{*JKk=s^noak1(quQ8VvAn*~dmY#?m%DngnmmTNSN+8Mmik8b#bK z*@{CCYCMlphBJ?7KIp8;HC&RXT<5KQrs~}^% zgOV{Qr2xi%XVOTL>6GHb@Ro$C-d~l6@qplbmWUb`>R!84(Bsy4O|0`&qt5oF6Ix4f zX)qmF+@H(;JVsr+o1X$@`Z)RIi6Z$VT4zJWJ(&kk6bM%{@x4AC>tepE2RQ#GwXl|peO89tIC>8G$Q=_|$wy}xO4RJ>;{zhAk@bgAg?u2~lZZKv<1xzF!t zDAnd8b}KFwU1t2+yHn56`;1@zC1ZxmE9}5>#3fCdAwe}CO$%22k{jsF6!>Nd_!iZS zUOzX@pUb}eFjmwgeUW+PJ^oy7Gufto$qKWem0@TIXyqpLT>UP2sr8qTxZ=kHv}D+Cf@trs;jjQ5 zfaFOx_|53YF@#?-!B?<^ACSq9e)(#?ro2N)5~4W@-h~;x>6R*gIb7%A9VPXyXGq!? z*vN&8So8yy5IqQ{we!KyC>wxfoU*%~5ZgUy8&Y8ilhvIQ-_(^_ga+njPD!SXme7a+J zec4nwJrBUUpBOm`Z*!{Q;Vg(Lznd|dUh>ZS8%Xq*dCPCw7y0{jwVlf9T1d7 zDy_(qG`X4{Y#nVBC^1pQML%V4A>VepSry!WX{e_3-$RVn! zxz@R77+U8GyYcVf>nT!2QNnBO>rnv+_CqXA(ZF5YLjR6r=M!O1w8y=(`Kg)Ym)kuq+B$N;Oowo5aINw?&~z(udhJs%r)Yj zCL^jo9PFpzxAVUQ>D$fVk$pf5uvI2`qe2qLuhNc*sBv!o$3Hs$HbM>bJkzP~sYlQH z$?2fmb^dXM9yaa|sZUb|DAxjr8&!QS_2&xHUX_pxIYl$xlK(?2S<3SR6JdU-!iIXo@dQV>IAJ0QgVK4PK7-nUf0TfKLgW&jK{L+ zP#Wj3@&4=-?NX)n8`#1$UKT z`VeikxZzh`uVrd(p2VO@o!o+YQv2UTGt$+Pt;2u_TLb<7K(Ge!R)=#34icTjp@i3c zj#m~{J9C$Cqm@ye1nk$+wnn(RI3M~oP>Z16hZ}>?i8D>y|I{GF=cTX|$CUAcZRp$3mTK#e+n{OyTBd#U7=dbukIUJdz1uQkK|8&Xg4wELnE zhl8}AeC|R1+P0z?;1#%L&1*QEAA_QVXi-|pmDz@X5sIeQ4lja3H{f{w9zOb{YrA3g zowvEoBf-hX)8v%7aEkIq7fXS~5wVJ1#C0kuziQ1j2oAV@Yl(*8fmn4Ixq_p#jof_t zQEI6!L&Jpajn;{{#jDZDw^c5_z686^_GWM`XkYy` zDX|<5(m%Sw|H(MMe3kk;+F2t1)rJ3$Ec!56(2KtuSA+OpU3CA;vi{X2{jX(h8Cc@0 zWJO%+M6!-vwVD-i_gS&-jVf zSOXGfCs^Hf3q8tmMXKt+J!P#aYKrSqLjqMPC0^;=$XoL)(TXjs$;WhNCujk6>3?B1 zFCz}pQ11ufa|wdf2;(xSA(lXQ)*d_KTAT-p-opa ze=9}96!(kNE6~$MB_(#usu|y6G$|q}+xPfC+)S=D4l=w4;Q?nr;tS0jNi->th5h@~ zrb-+rZsy+;h&YRcqe*S~U;p^Tk5skH|Da4U9*lMH{p+aAaWXDko!hnwQ=#(Ni9(ga z-Kl#SIpDh3QjRP{Vf+~V+mF}sC{eIexGxJuj9~yKnr*axCx;_VEtmgX@z2h%RVgj`9KJF=o)J zjS)2CL5p;S^A3~7KY?07@(`upj+Epl1%7rF;}Ih@Zrl7Ypz|TngTnsx^FKi6;IRM( zF7?9OKkRmZ<;_{;@Q0$R(WhvIJ>ToG{_d#e`qkLe_W5^dHAMX?Xm$0oUEyyN4z*Q+ z#-71(i7Fa#>X%-^Vc(gccz+se9{B@4K>SD9AI6_2y#hD($UZ>IO|7d^A}oySum48t zCT8#T9?2pDNpun2~cIw2BxB7OW_X0XSY8vFy%im?fgq*3a#_8m^LN5e9HqlC_RyFH}wTorJ{9y{H?rW!O%!4V_Dz5IIV1D zgX@0f9`Ca~8(zkWO+1}^$dZTqi@*XlkYmDipWlCHd_Q0B64Bn*4!jpn;WQYm$r!TP z|KQ@ZImqf`_`MPs)RARV$k~&2UNzLH=R3y#Ou*&G+I_`QOKio3h*2+gnr=jktDM1r zj5DYEFPy-~xZwbQyn4CPOXB%Z*`^+ zpEH)(@7K;Ry?U*+gAqIFZ=WB&^G{4uORz6fiTr|X7aA&sFE;u3WrB3ICxJ>){chXn77+H5Fek`{rHSe z`DB-S6dQ?$0&PHBBgq3bY>f63kZjQAQO%1_?If^BkI#l3SZ<)6bp>QH6dbRsCl&wk zpRgR5GiN;S6EquKjBQhuyJSgi!nLtuzEM^^4z(4RqA3yWn)4bZQA<5OzK8G#9(sd_ zbW{fuhnJ9HI4etU)cr^wzeovrsR3?5v%uFH(n!sDaK zz4!pN0Xb3>6+f$B9JK^}oVd6((=?L&4}Owkwj@5-_GVrCbh<*&aYn%N>^98FYs39) zt6i+sS`-GR4KD%amfG1wGeEwfNy*&YWR*Ir6`^(J5J+)qBNDIgV3*n#T-olcI7l+R zN#W{~LA`0rjxUsA!I|!0`HGdTx@jE(OAY>G1j}>9@+<|_1Z1ATOAlDI^c1cdxkO%R< zO+_J|yMaFb2bs6V`S@`Hr{pq2UCM=zGx92c{fXzLcP`(WT-XILGK^>N6zs`qS=S6b zGNpRSzS?EJj9(d{rA=moD>j(NceM&(^aLwRlx+6G2G=9}tb|!2d5Ot+A2Mv5GW{7P zBCXfn^_j}qH$D`KtLX^%Lfem0yZ1LTZy92V5b>}7!i4}nj1Lv?F{g~thNSc7iT-<8 z>@W#Qs|@Stk2ljSM`nq%UejAkapa$-c3x#gQF;IV;npLU_t=39M0RX{fbvy{2c%Kf z7XP626Y$ml1d?B+D*s3D{J*vT-#|5Qhw#6!_kW`HF~uKCdo^)TZ(TWnSH|m^QTzFi zq%dUs-rfH50oCY&TP1+_Ps#txy-A;A{z35~|KHQuSWh)XGuK9`5$r<<*T%7$1GUSZlVIU?E_Vh*KjTCy?%c1Qy)kc3$zTQEJLS$tsff&u2Ghd-j4^Q7; zv0h||V^t2gjL?qUR0+x_&g(`Yx? z?D8#|A&`iOvKtV4Fj++r2V~ElaLxTM*OkeI8RK6(JteY=M1jzlUO4h$+?B?KUl*pm zuD3fb;lqfYQ!Z|-M+-6qZw;Z)@^!fYMzB;S3i>brKO+Wbm#-~! zlct~*@E_WCOp-D3EsNI$1I)6NFZF3*hTpcvMJ;EaLqgi}=X19MqoBO`kEM{e1SQ0o zZ-`1w#`|jU)@Se1H8aACJorXs^Tuas73yXDDBs|&4we4As8E??1+d-SnMo?yjF&e5_cQSpj<@(;Gm+i#S3 zd>cI@brMvi)29=@0IhzbXDfH`W4*AOoAQHlwu(Rfo=$cw0f*_mBj>wp1yZ49@5LL`%|FLjFMn$fBOkf`)Nm9#vO6DojSs{ zwJc`8*s0^jg%>-1I2R(v6}0IBGoMRdzW2xd21q|(4tjy+4GVZ(829Td&Bt2gZ}SgG zo3{*`TKIO%W}VM;IDW7yI90EnOH(WXxOZF2qpL-ET8GzjY|>qg(#QW1ur8}K#7>VGF>{(5Up_V&ic?NGaxw% zucw9M_f@He&8xRl!wb`A9t@2CUKy9E4bwz1L z{fzcmAU|NgpOH`DncWRRvN*I2*NG@GL>C2-fvkB)W9X&h=RlVJ%Slfc+N%a$+_mv3oV#rzWWO4$sTBE=;@ zu00prDSnC1?uOdeA4uxJUZ4<5YdmQN7I{JFPuf*0zSTWB85r$>*rR=%z|e-UrH^); zS$qCkcQ}a$%Jmw4b4@f^Qh@u13P}M0n@Y29;$-C1%9i4u6UU=?-M7cKWQm^Wf7c2= z>e27kbV?-xb;HJ9iFvbJO~9{zbN z-F1J=nezRVAy7TSEW<(zI=Z%CxYTqdj zF}H=9;jW-q8b3K@QQ1RGEVhj5Z}aa;CittzVEI>+NsY6&7r>ob-Wl%lyn-(4)R}{P z4~iD5O|lBQ-(Cw*o&Tv~bn=|91z@K=un{G=i~?-42d<*HRLOP8liZ!2q5V|pBY7OP zOH@}r!b&kV_yIyO-0LFY7uiYh8`@C#q}kR#+v8t7eHKGsOE}#UyID+D0FipIb4e4L z>31#f>QY_3KFHPLmGwGJ%|a=sK8MM9z6Pm#$rPhOs*Xa2!RQ`sg%tdRihFNp@+8P> z{A;b|;q-U*n6(7S7(@eO#hriI3hA}X%IWxpPMP>tM+*hC!~`%f>)Li{_VxItoGpK| z>_6;MCJ;VWPlzUZ{0)fyVT#XhEC73SY&uvXnL%~MW$>LSYX&(==p8S1R;sgb4GlJu zoLB03ug%Hk-sN1Ao5Wk77tRAa9wCq?LYDeZx=QM%_{|xuAIhFTl@;k+@JG?5`kV3n znaX4N|5fn*PqlC;e%rCoQu&`XHo)`$9G}!p4nALg!(SRS&i?(OihIEi<@h~4+CwIO zs2sb~ESX0i79fu_>QD6ap&{Up5_F5ZXkM}AVR-zDnibiHoMd7A$J8Rx@p6c(n7qNd z?#CtC8I~rv5>k#0b?sjOo*6Kv=MNJh|54BlnWzxUK@~p#V_Znr+5&vY|MR#xMAFGK zrrxqW;$iqu2lfK(%|$V=>_LQ<;hRlnpzhX4YaYq5W(n9wzQz@rPq8z?xBt*VSpwd8 zh*Tva2VkNX20G_T>xO17g*h}g{mVSu11I_FX!3fri&}+Zc(Pt)wC~)%up9(UVWw`r z+)_v^&|K>KLHNz9AkHJvXvJHQAzK}UEvfc8wQXt-BGhWh4^@3QR}mq6U$lch{O69u z)>0Uk<`i^wc2Za%)x`XRkBSamYZ;f{!=^od$}_o+>ZA1St$pR!6<^OdZ~1a1#)Yz( zZdfVm3%lR!w%?n~)gRi}(dR;o5%*UKjAfnUjE4F-1tZAyCZbtSAn2i#7>fB5+CHY> zjb~3Z)oXryP=LeCChXoG1v9EV*EefdlAJyZ#<4J^B>x6s^d(Ag40UZwK4pTuHc^4_ zwF;}8i4<|Jh-PdyGiMZOs+R#&xwp!H9tdeX7?+&vk8%XpEQ4cln#Mk4ua0SVOG2^c zvHfw7qRjF&QlE=KYHo;@$m`8>p3y6u9N~6f!y^scv#vjS7q8#K2iiZoV|bB z_s&Ofg8d-p{R~{XrQHke6A+#IG9$!BY2}RnwZ}mVLq=_Whu=i~G(4GChaI@qJbKJi zYbG2Mk@(HQjb@UM(IlY-C6VS_QM0W5Q%^)m(R^^*rQ$Cx``5V?F}F-+^@5?$BFO*G z5(#Y1$lXK-l0DE5+NXDh*`@Kgq?)<@6s(#qjAfhV?YbGG<%~1S*Cc~rp`Kgi`GRF) z>QGm`f^(mpf{HdlE3R`#vqdI;tV|M3zbia6MIqHC_=P7v#g)+JicaXlmClWqYQ*Gj z=JgA1!?R__T0cjHx$UVqf*F%X8O2K?>kSf)&^)~q~U>0Ybtk{fiC>OBRUDV$KNw>BXA4FrEyL(ak* zP}NU|0^cV6*{0TK*L$uJLlRvvJL8f+<-=U&CfLTZvw_Wc~iFb6ef8z~jC_F?xv zFqHVI+dv(~=)^wqWQC8q1_8~eCKJlXNGzr|L4)g$uoCflp9#!!z&t3h>F-n1>MYI0e5*Kj(<4s8S}mLtoLcH$ ztxj^Ul>1Rz{TJKu6X*5iG$R2pWKezn?XxSe~UHnxdF_8}Y5fcA@vG{?((&7i^cMw#wn>YKhOo z!nJq#tU;6L)(QLtD->&2m`;d-eZzU}7_J`cnXs7d>7#wCrsNYp=$AUKB~j`rxRNVEt*^E^>)$;aR)+nef$NsubCj#Bgaa$ zFznikhuoFa`JW`CddS$~J)vf*(M9A(n7i4}e8t%-h5wR;IBHuKQpXXA0uEO;Bh*?S ze$s$pQ-79IK%RDecW=Jn!2TO;qpA_NJ9Rk34#%$0ff?CZ@uH`v!uUt$LrxB$x4RcpQrj{ zTP)P=U{xvNW8Em}rWyMBNEiA~|1eu4j7n9?B>!;Byj4oS86Mq6OSc3SA$lg|>}|DexP zsh_g%^pxJ=(3$)tMFsWGUD+1D(*xohxOO#6^N+Ll(J zzEPLJ%?TZ#JH3g5uqPW9wmIoNyPd&!KCr`xD4=bbgBEJX6N3%qbdZ$kpnqJNTA!!k}B2HNhK_gWUpJJvhD1l=xn$$JI-lz4r!~ zWQ4D8n3)1FCUm}5+uO%)#jZY0^H`;0lMeGrIz!z~Fa9-Z_sv3^k=y)T@e<)rWY+60|8duHSKI6&SDvr4o)aIoJ!WrMc%z z(cV5old|n`w0*NMzNv10KWN382o?GYF*Ei#@pM|FJ+4>Y)iA^K@b9< znV5A?al`dgadiR3dkqM)IfBx6hrc7SmQKm<^)`sVBupH*i20G)Ax<>0t=-Y`Ei^GH z#4Q|@&lr7>c)BH~{Vw|@4U)A|HGkaS+z zh%s*f;ymQ=rV9q%s5pM7wbc&xA?YA(V(=VCir}LWw>euZVo0*KheLE$m3*~P%BNI&h#|cgEcEMr zLpz_GAUbL(GV6p4^o5AD95NKtZ6a{BF`Q9Q@wwN49SRcUm8H!Mv9l?L$YY2|q_MK@ zJoC%S^s_1hmb49cs$i;rWrGolAS!vc*vMoWKmB440AFg*qo#otRlnsXE1H4cjc`Pe zHT9sLJO^emoHkT*Plss>4kVLK!DvD{CrW$~T!x{_`~Gr4}{35e23X)E}(QHx*RUJ8e!1 zfu*EwB>OGB#~&a|tV`x$u#|cT5VIxIrn;$+_BVaeCKO(cs;uTd-+o_MIE(#VH-^&o z0n$XUtW};DaRo4vIvFMhV!rZE+RH_s1?%@%Fft!Hca0`G=FI8QSKn~bPlU5a ze$woZk*f3M{caXUN8{Fuq^Q;l`%o=}H@LBK^H&Wa+tDk^RQ=B0v!2j3W4x)f@u z9k3=XsKdYmae&au=0s`cw#eN(l{l#Sx%^tNO7JQ1VSYd2$(j4(07`n(bh$aj91=P0 z6w^LS-RQ4hXu~5_GLIv4gpe|hQ8kOhA;U%N&Tc>RS3S%Ht^dvPsR>p^>BljIO@jXir!H{5N$ zo&NpkQ&R%n5ik)Qi?sGa_XS-qS-W0!D9T1?5dz6|GpaHzZi;7dA zS))|Vo_H}xR*&_pO_?mpFTP5QO#aLq%H1-&p@>qF4x`^nYEsgV)g-twoEj8N)+Kbt z=H_B9k84adsuP(gA2EvNC1U4Jo`%Qu+sEdEJh8;50s1_h{#)jx|ZXWi-dh?d;rR- zLCsxFkviR#YMx)FHLqilqb!m)ASS@@k~b+Uq(^*lbOK(fqgC6L2gNk!#qYVYKi;!4 z^E&W|Zwe>rS?iGa|K3i!dWZ*Ni?3^{eMVf10ic|A0z~E43i3R(&T+a1C-TaZlp<&- z=6n{0KB-Ck3M=Pkq<;=Q<8zIIU}A6awXr#`A6uT)s#O$?)BQ!tE4h9v+kw~xsKhTBOfkORA5?H3I3UcIrZllK(Ap`;+9yi674l7>4=sm58>vw zTMuf3I4ZUxQ(3w=l^!C0VAQzX&Xd-lHD+S&%R(H_!&_y??@Q8;mt+Foet8j&+OCfS ze!W;be>k8~ux+=ksH^Cs_?xP7H?SH}G%wx1ui%yeP_I{`P(V7*jd|w@lbFWTB#l^7SnRC0}XBJbf5#}q_ zVPcE0%z12)BC1#S?ruDB^dM&B6!5WZrckV(CaUo!)w@FA-lFdYhPX!Xp@`JWq z=2m|GqWAt%T8X`X@~c2FX}&ziz&y8++JAHa8EjH^ObLma1K;`Qq+4K%TS~dTzzb8J2!S! z9ivNoINK>WR0TK1AE*LKnu3OeJ)8%s+Zv5qL~?pJ9hrcS*+E$w71%3dX|6SfsXX$T zFeYkpm7bByeI6In8ovj=^~W9}wm{3^O{P~|9;5aN#g!Lghrk6AkcN)9xPZKAtG+>v zE`DT#ox7b9^2nX5+q@AodBJ}$y1p_0>;rN04!ARgD%lUmN!1%>3-akJ*t;&`UWySD zG9A0E^(+F2)lJ!z201Moic#(`9lmDO6Xnt@3SyaC!9kPqeUtg6^u=1IN8`eWqSx}} zjUZqS(-qPrd*~vU_Unz(Ez3Otxt>P8<*uWrLUfZ?JeVtNm99%9Esh++{THI|=Hs{y z`$8KNxp{>M1H!! zkY!eWY9bR89L_^s_NE-pxg(UDiXndIuwD}3+?y0AG18fjQPYhyi5-)MmsT;7@rkX~ zSzzw70+=@|TmV?Wa>XLcy1E(pbzieZlPr}?FsVANG@IDh-#0|xzBPP~%L21I+~mx; z@J)G2^?@_0pz%9r)CJSIW~0TBX>}Fp(n(ApgHyVE4?jaFYo#x7q8H}7UG2ti&!yFS zs?z%o>%QoebNsK>?|+nyzaHOdfx+1Vz{EVU6B z$i~NXV`wf+j*Pocqv8v2*pSoDEUZkOC$SCs9xa7AfV9t5k1|Ib!>h@_wXSYi8D7%m zXjvEeBb7n(&SJqkbSvS6PVzcm?37~Ish>uZm`}ZNA?w^{MCFM~b9iuSF9G?A%6xHU zogFzyC2n`YwjFl{Xf<(uVznWvG30$yF9#4kTX^(6!;7S)eP62F6{+t&b$2fM(sN%G z9xCBacORD<5YN$lVl<{3BgBoBYTj1^-i(w0LCi;ZS6cMbcX-yd%D+OBAI`^=>Ak=K>+2F|sUu<6j|F02>}y zLO9GQa1`z#lRn?IF-nLW(f$~KXSuByyOp|vF{9Dv7GTF#11x}zvSXRy4pdQ`kPYYa znJ#S!4NuK(9h3AYcYx0z8VP36P+mYHud*~YnTriZ9AfeCe$B{VjMw>~s%;{-d_>=b z`r%*!Pf#=EZ6A)&ncf2X2weX6mhQ61!!4qrSNSwSFGd2m#`He6XSWsEqXq2eMyUg< zDnUVc^aZ4&88L3+t;$he434v7d|x0~W8I6j0-c9D4(7k=zXdK~+$hcc;4UW`q+cgh zjRE3)#JIH(>T~<#n-Xc53G+1Yk5Pat&PNk;RFCLawLV-W5*>L5bw@CD`)@B9<9iY# zyW`Wz2hd;dK)0QYNl+8@8&gYH&(xeoi2S3NS4DU*%td+n6`AFJC5tyM@xv%B3myAS zJxh5lnqRERe}3MjAN{zoiOc5c+}kh$w!*wb(}Z=^Bfr$rFk&qF0s5RCBkrI;zuuUE zIP6#KM!{io*-^|j5(bf}-(xc0A~jRDVpCBute18Wpvt5Pbg35U4ZoSK?6_cg={wVD z+IBd9qf`^FP9RzSUG;^NwI2NutMsPiUes}arYE^JjYEDuH|`n>!K5bZj}((5M)dwh zT~|%5!K7cfm^dZH-&YL_Dp`GaQQ!5LJtpZ@DbEVvV8S}bVqI1;jOfa}w3t7mcjhDh zK>WP0vd2~YhcK0`QCMJ-_3J6(IVSqNEzA%2BpNKKBd|mIAvyl-v@r>Qp$#=K_p*wh zRs+BBpxd;^*MdN#(OKO|Yt`W+56_$${erF}!I3FE>%Cj|5Q5EqrHWGBKqL$1MYzDr z;DmN=jmJl}?9HxZ+fOg&6kw-i3?cFIg_@p)vq}X32FtL&dzf1gR2jyz>yx^5v0is@ zge$)2+!1!H`3{)}n{14|Y1k+b^rRvV5V=Yw!ZK?g;OTOH3P>l(k+%sr<@8M8^`|Sh z@bj&2rstOH;42?>-}D?Aj*h7O$i2sNNEB&JH+gJ#R5RBnLNE=OeTKQLfK3tGeJma% zRL{|C$LvuV(>wRPChOUxTCBPh`=Oi^dtWT`*qi}vvp`qkN2v`w*1lYTF;oM8|S3PZ|xRqEG0;C^|}`DQ>Sd%c6b z2BDcUO4IP^sQ-GEgXL|5q!KT3h((Q`E|GL>%mBbD=RO8iJcH@` zv=9~!Y7bp%7jY&&-uy5(Rxhg41uT-dX>>!2&lS=s)^c9d^5WE6Z%MT8k}SlMRI(bW zbwmr#{4jgi9zGo!U~#|CK3iNKP8O3szkIlQh5*;Ef!K9|+7Y81H>K$|*JHE_d7cjZ z7!%S43Y2Iu>q2&9;W`z4rD;fg#yXQ8q0%%NNiy&G87ZzK!fm1_ZR-Mgc<+b~lUs^a zk|&`z(_|}Yc!Q-T?y{zqj8GL(96PP06>iF|BsMRcS8aRIIBgS5kv~QcbfZSE3Pyqy zC!^@at1i66ufsThv>}kmAm=;6AMWfrToPGhMK$hbnX53)PnvDs_Uv*G?!1KuHIn-D zIO#6d8w=F6-s2m-tAD!h`EXIC8FWQ=VX4+#rGfj?gSu0Vm46?0cLa5^+F|A%qChJi z?jyv6X}gz2G1&Q17(K`3`?3=#uZ=uh(HF4+LQxX2ExLNw4WblWim7R$62I$mZ@D?4 z;eNB;+DctITi!LI?0s5%_0#i&d^LT`s87Bbjsl0mkv3ZOcqqZ^a7E_NK8%w>NV+{= z!oRjO7D~_Pd}6D9c=*Z!QPF`zj@fR^uk@BVWHH7w!J^%22)QUt?DlqaC%3t9!3^-+L05uJ?2k?%s&r$^kW;GsLPkvocI*(b@PvAGM=PFbUrCSnL3QtW5mHHudZ+wz)OsGqP_?>^GQ`JtX7v{- zNc%Z*9Zmh5JwG{UI`MK11KpI%!E#l0zda>0V zm=}z8(5PWJY0b(31Ry2mg_c}395h{cN;Lg=q#PZTar!~(KX&H9sQ0tz7Qo66how6G zckRBqSW4+?*fzU8WmATpH?K!bsZ#7eb++PP*HWoUJ=gwmKCtN`d?~S^;kn8>GG7${ zUFjMV3YaBP?FxTS7MfbTW@qnjks3WsTD6|MvVM`Gxf+tcnkz=R@6OS4`M{yJG+Ev| zbZ6QkrEgTlBHsFe<$l66u_>LX-+s5q0FU&B#^{}HF0PmbBl3EuObV3_GM6)GpZm9fA;U8{R%oy!B`7 z9eD2;vUt{1R1E4c+9gWEmmw=XrJCUGhGnEsF^*3HJR?v2Bh3hgs?mB+@{f7|D*b2W zKmqN^Elen2W_M-~G~(n&NUhU=3VEobhI4%$&($eoM)bpZI!>8!WujcDAeja(moQ7Q z%tsFF`r*oa{cEkv^>o*3*K7UJb!M0L2Mec!f@KY8#r6K!{jL@!G?xYn_0kFEX28bH zC>C!oYzHjI{!EqKBSnlNuAZ!=OtO#Y%y?@t!=P9oIf%-zLvRtcA12ad@fO#pLL!jH zS8YZ*Exehuth39SrZ@Nr-ODZYu85s`5{KiQILbamneM@4QDr^LJ>p)hnI(y)?-KYf zn4`I#hr{?%0zv9kN_EKWPq9?i?HIF5#!z00*Wj0$2kSP$Gdt|D)Z0LB7D^;nRf4n+rE*%QY>`>HE~St zruo4f*G4R+tJ8#^27TeF*n?|js6wP!1GC+{2eBt$Xim2&hN`h;lQ)F67t5JuPJa!3~62)K^m&b&68QzIc&DSo8~r<~)J zXorcVwZZIK&LGrD)dZrgu{W~r*Y+b#U!Lac$*&C+Hdi_ga&bTR<`S*QkgtUUn9wX- zHC)}6n(&(q8v(W$a#Q@+6&+yu@+c79$uO z+9g3%ln-{w26j(6yfRSQYaEh+RH0?!^8P z%>3DGFEI_+D^)>7CypR6V;^ZWCKg=~bp#_tj`wqR?Pk+)dVavElk}qQ-6Hesucf`~ zOZ48^qP8EJf#Sn461ncEX5zqq3;ihOb_5UcJWz=J zGrJGWJIOZH&)TFQQ{ZsfhEzjz$Nu|#3rhRLleo%eYpHN#^)g6g?KOpj-w5M;$b7P2iVG-}Mur-O{@)a)=ItQ6%MkJ|w zd1s1M`O9Vl%as_ZR}D|FX7yu``Zcd^qE6YHtw$M1zvyt%H=MY)bn-aIuxV#(DLw}F zMGLL;*#N<&#Brq8_r>!=%8uIOu?MOZj=sPs#So&^xc!%7qL1D6NRFP+9q3cP{V8Q* z|9so*DN|}}h~A!b^K3{Ro7LK(f%>ZcahT^-q4w!iulUS6uAULMQb!P+a|E>i%$E)O z=a5++u9yDPmzh=Re42-LN!{3L(f(1X^_;yGURewFk94DtXWl@n4pNW~-ZR2)ot#o; zHZFaf$@;5&XD+m>d>|6S5En<+t66+yhwHxdG_4OZbS+qHEH|^un;SRrWx{*kc0LL@ z^ozKYyq#6-`{i}m=+JR4Y{*>E|BX^j)~X1#SJ|i|O3$$Gkd!LU`Bg_PSo1qrj3yuX zDE9_`=2$Aev=Q%uQzi$$x1Dv+vE6h_+9MeDrMBu^~=cW`@-?3VY}|W z3@%7ni%(cq>Zu^JT%C<|LAX#cPuo#8PuSJzCjp8tv6-jXaT%jg{wVu50HqKb=Mg9N zMGt!CUZUsg_4M9bVHOV$=%^qhal|v zjTx(tJN6-qHb;gh4Z9Uasq(8A2Rf0tpia#Shn{oIxO|oq?pwLl`7lr~(dpWIiCunI zeKF)rLtp&VEv%b6K#s*&8zIMr&-el_Hc0HuTD;~^QQz+!o7zZBFSk632VPgAfr{_P zgo9YcPs~VJe0~Czo1z1g=x0|VX^n0|BnZ0o9dS(Jb8W8Wk8WTXG2Evwzc8uSXayna z-tI>O_x9uhfG8?$9{U@R1%3C!_HQHfyu{ z-|R?6)O&E5WP1M^x?y?A8?@>ze%;5Hb_&xVBZ=un!Mqe>$x8(~vX1>~c?7n5RJ43U z9o!3$6kG>?Y7P13*V#P~lJ6MpAs#o2OU#m|b~{RVb&Au#o!Fax%jc-&DQUQTDtOfR z1+|st7L`OZc*SjjbUeG>aqA-4bN4O!R(}6#&{);Y`2j1-J7@5Ptazg}^N~dAm)W6> zARP4RxOeMsh~H(i{7zvoUU?%r4H9a9^Mt<|^PX1%#_%MQUlbA~97jBr!(NL& zFm(8PrEjMQ8gg<;C9ixu=Lz0R-15)Of;(&+mIKc7fBt&H`gOjJm#yH}4NDduG9?R3 z1t*GQK7C|O$&_IOjZrNEqd4w|v2L~_mlrnMauc<7Ftu8nvEa;+ejv~_R;FJ7YBJQm=Qvmj-T)?T+&Ma@+q!ui@(<&StIU2L60d`zc!!-X1`&}~%gZt7V{jr@!)jt> zN3o;&u@}XOGMlN6Q(y7RRZYNVT%=yY_7lT%b^8{J+x0at>|Y-cCkPU1b26*xVMGk4eo&;L0Vd*!Gjiu;`V0m{r&w9-s{Ry4w7f&nVGd_ z-JiSURxOx%88`r@j}-6=H?6lr>6@VwY?g=LFhdtQU1+lwkr1ZV%jfB10N#LeoYel{WnJ^)u%^a9#<8& z9Pur5IX!lGz+B4wVK-JFNLDgA>{aquHGB2_eQRa5t;;2kF?T^?l_h~ir!^=)wMVFl z@!)P2t%nT69XKu6roYn384&AyK-hlszYCwc9(B15u|LtiBu9M;Ne@B-G=j%%dkAEE z-h_y@l4k!h33w(`a8*&eCLZ@&_M0YBgW)|e=n-TQ)YE?Hd|mlkgyVZycTjNWm-+j@ zy7J2TqxxPr^Zmbt4wKgo-a-z(EV?0-l0Owy+S!}GS!8p1)@fjk|3N{Q#ByF>N5&7* zRlKiLe&JKmk^4ftUh{4oFlQA0LR~ZYe(mW^-s2;TBstyayT#8tk{15*RN=qe^-_%f z##aytFP^L(0pYdL-VGV?T)LIFHgxcQmKOT^I-Ppk2bdALJpsklXqo6gGf8-!IW_%g~+pu!c5xhZ5``Uz?@ovUzwY}eZ>-)RZa4v}ZU@OH$epm5b zy}LjlxpCm^EbZ-r@sZtR+2FdLWDQh8Kt(`H?tsZM^frW!X_ z6Pb_JLzW3g@zhKhIC}!|tEH%qGpXtPW8S_Nc>fNq1t8}^mC09ZhHe{fFg(QUiN@N^#H4>H;_B6HsOyHk$)RPBm78fV z%!v1okF7Kc%AI#RC@mMEKcsM+^#1q@fiJ!|?dUf1K~pDtjZH|+AxCpipWfZGTK;3> z^_<2N*?M>5FjrHWRct{;@tdl@WFA}3s~ulwAD@4=TwSAoTMylAN%0CW`*X=q6TGM2 zs$vq7+%rvm8AM*PE}P&8;~(U2BP-p;bs&ivAu>+nHKFcuGdmeZHA)Z!qrG^pTqS1O z@CEmSSX$y6HkRX_-hT02OJj*(YT;gQZ1uR-b}6_K9A3XCITep{?t{TqlT2Y0D9T-y zf#f~mq;U`Am()Pb;2XEjuKXzITthPgpH`f$^Nl&4bc@Sh?U4xUjn_|lH(zzmH#(NF z8Lp6^R9v_r7w^twnPG||(|z^a6wBg8p%>zq*wW%>`_J=gJxl=!<`$gX>gVUz#%-SV z(}AO@(Oc$m$;)lz!GW`-&w~9Y83N9d7(YZU(}oxCyxxu*cIkXlERSU=O34s$`$OeS zhj*K*+xmuOTE|smZW&*}_THK5>7v-k{X52r@vu;*tfZ-&;C7b8o9`R1s=g&CE)Deb z)Dw;!@bxt<6Lgrt=PdW&2lfWM`obO)xuLVrU-ByOuSTUG4|>0Px?g;;U2*7uhz{Om znOIiUgZjr4ly@2(kFHe9 zjWjrIz3pQ*etrfbJONNSy7q5I&U)^t0v0un*G;ACZ!3Lo-(Uijh}z)W0Od&Hb~6GF zL0_g_aU}fWRinBU4M*@fXer?6O~4;6*u!n~5sN#W_Q{Y{t2ovdezlT|^~t`S;*=(H zyYc>a0;nm)gZ`>|=oY0Jt>iF)m?yO;JKpYhS81UeMOM7GoMBV_k~%R$MS!YH(FFv^ zLgL0aVi67gY^K=IL|b;7D)Grn<`*x^Mnj_Z1zq#Pi^!(mQg$d*3V)W6C!Cdic`-aJ zTkW9B-tN%svCNf0fX}(9u`-rn+|bJ9LXXWLzSYD#LLpeemU+~C9t_>>MO4`-K1#)D zoHS8PLaSpL`~EaI(z7zbdQ~VwJ`kJ80!mIRDWKgG`uqHg$)%faFK!j?g=1d5(zW=r zhCsm~D))W(sd%>WmUffSV&D(s-O6Cv)VrrL$G`nRg{*Ab+e1e)WbCsA1N=yzL4M}# z>uq(jju-~dp_bKX>J;Yv?fgG7hVB7Ow2;nbyfQtj!jc*$cl*?~?U%16>~nsPU`LWR zdIoe}33dNCvq+d|+b-TF5ey=(Hqse{TY;wi@bkR+2i>`q>)nEAI%qXjO>0RE+Zc0G zSwl>Jhh~mg{b}85c(Nj>(%gC=}L{Pt^Ia%2W+G#s3Jgv8&ByHSO%XjlA(Q%-7E^iV!3_T zc^XJdi1-dmGYX=1q*)PZV{!z`6MZ|9ESCNeSMIH>1t3ce0b2)_X2020l^Qt77kaa% zzxg-KC9x!vW+B;{h%v#1u!WrCJ)@$)7vS;xgS}1$zRSaC4sG#xrFOlDUCD$^3tpll zdyhdE(xeJ;AmS+0V5I}l_N2ATscc)zA#bmg?ofHjIrR1LTK>FrgX@q9fXK2h+%#mX z$4h3+54dZrDu`IS@f@)3Sl;|bDl?AW&p}76ZbN!{t7}FVV$C-xN)4cU?m1WHbA^$x z_{~P+OdI>*+6W3LfaWm!1=KxOF{R z_Vt#Wkw2A&F(=QOJq`tn`gWfB4x34^?)nJ!jWflQCbvvI&OLMkb;S0(AIv+t{UDkH zg<{#3f>a~9OS~?{j{&=<+vW0uIgC8^;)3uB`+LKLYqpa}N&&x@m7SWA;%?Z#>MRB! z$NtTUGAwO2C6kBNnL&|$aSqn!7($wSX;0k_+jFv;2}kns>Ga9)T*-#2YfR`^j#;(X zH*1g;gyKBe+`#1DZN7dJa-yzCj0$D9Cwxx$>t5M!`klIM&N9x`-y_r08W9G2I4ldHg%3<$pO-m{5@9(=ah~v+R4{fy z#x~Ulq6{uAjA-8wA^QE7FTi)1v&ZY04eau%`L-Dx|@YiACkt=P7eI-0`DY} z;(Zj2HX@ouf61jS`3Vzp`=##^V2jV?N1w3UP4DA27ipe%Foc(tY&o%NZ0twiXR2hJ z6mOdC-dp=xyicGo;u|xq?K$JyhV2Oha$HAUA)ghw-=Drt3%-aq=!Zkc>LFt`3u!z3 zu_v7IvD3%bS==7-czC6V}O?m0=CK{N?BnfW^eWBbCC#a$*c+Q6(Gj`9=Datmfo)^VvKKU5Hy4c(=`{8}ZT##0t(aHmIh1Ko@S?o}@73 zX=Uy!j(T{aDVKDo3SqdE9Hx@bpIE&d>M{+LoCOw**)+=&30m_xn1gJ;5QH*=&56=2 z{qZI(-J7(yR!TcQ{wb0sXzN!Gc>g=kcO%rx3eSd9m#qWJG$}SVFF(-vTDpGif@W;L zw+9l5jPBLwxdUMDDqS82eC~cC{y~&1A34GkJzY;;hdw`fybY`CZ`?OM+J|UJ^jb3Xn&#>o0}Pg(8y>R-)w&m)zb)bTRl&=zD{vN>+?bWdVg)@-3l`F z*_XPt$oR40Yf`t3h8ElF*(o;yiEH6piW3<(uep{;L*K~i2CFd!r1T`>(+mQle{84e z_lKm${|}=?yKFRsnZ>X1A#}bYYjxzSj;-g|&8n&StvOv{z_IfBo%X5mq+YgMa)EK= zF43*lh~qb^H?6LH+MpuJ)q%lB$wyT>4$=YBkLMoP`~ByGs@>ri+A&s8AB9a6sHZL= zDQpndLsB>9Qs8)?kSvnr`VOaX8LLxBQW@rIH@&PpQ0yj7-Ung{jrrqix<}8sd;$8n zOA;E|f3avJ0(iDlK8Df_YLd5ifUmyYdD)i7Nag&2ks_{?3HnjNBPMkoM>_lVsW<-> zvcrK!0nG~BVDkte#_o$*8?DxJVNCtd$pCk1s-D|9x+B~O!VM6iaQV)-@;Lw#0m|d_ z*As-ZU0DQ*5_$~P$=Qdjbsh8KzrWdd9cww8M4}_EZaZ4onH4Acy+?uVM`mW7gR8}; z|7EdkIM9kjNq2qEIC7*XC^nS4tjoprM`R0n<9)nG*KF8hna~Gy48G?a-v*|gwJg#DiN2{u}sugZsZVKlIIxwnkYQr7h=&0Ur(vJVQb~SCW z9{b>U%+TR{qO%;W=!Wgk)&4lXC?_I)9)Dml{up_>yDotHYHq%DHwzJxc?$7%bsuNtC6x!QT~&?MxR}0g`gd%9FQSIxEOo&ksGNm5JJK3XVGPkXW*0iGBO2 zb|Wd%zD^#;B^amWPZGkZI>DL)q-oim>bw}^wC=C>jON?v;!XYDhKWSSTvB07|D2$% zQ&XTULD2*WVt?`^CFSOT^^R;^l|;#V?|FKYNk-6(#@yBL#Zl2KDv3%B3ADdB`l^8M zNbwUbvjW!4U{izlemo_mw0Bq1moW_ZlN)Ar3u&(}0 zx=h?W+i1rME#ntY-CtGgIe|_(BGy}Vd;DFD^a2{EXYL;FG#2l!`{P>epuQWIG`Ddb>G;9 zH^1C7+VB+*)#BQJpfZboyKEvcUcd zdTRlVslcHLMyZa-V$JG)tTQ>TH{n|~m|ty8-@jxUyxlaBAEf7~#3UHGA*jKs6`g&< z1c_Cp%f8M?U+C37-M2p2-#0>@Ulwz^<9b9+>!L4m9~C}riUY#zQxVpBo40Z*ar>}ovwJR%zB_p}VU+Mn+v04kEm)5!4|jymm4=C7iR|48|oY8HstxqB3oaEaxGn8hl?7* z{#IMl9K_*8DpL>dnpC6bZWZRs-qsL9?@@u5H;%LDvAYv$o%|1Q#!}({#Vj^-fDX51 zVrRNUw0Mb3RpFsYVYw+am-lwA<5+a}+gbCri*nM?*(BTRc}U--iCrtw!`O0)q_ zeTn^UKV=}6fGG48@j+HLbQ;dYdy6(@@}2n zyr$YYT$2cxE6P^AqR|2A*t$_A*2oQ4QxjkgHpuoOwX`$m z@Od&1QcZ5G&rj&EliR3sUb{9t#5K)Pie;J8_J%JDUBQ-PW(wKuTcz5qCFM_B-U^vR|Hhl181c2CCyWGG)786jk|o1;DJ3Mc zWXFOgMmg>!CJ32yKx*9RIOBS0V~(7)TiG<-=5NBZOCj1dHr*mEQT6={dAhpf^tG zlRl*)xe>OB8&>pYgl^D`lAPC@9ngM!gdD2R*8hX8@(la%@uhW+O~bGlasXCN)~H!k zaOJtjFs=AYnPoXwyyXS1%YbkTo(o^z`#-#`@tp7G#P`NJnFiA2P^P~*mR-?xMWZu8wz`Ly1XEv`i5 zlrq^N{|w6lu7ZsG4~iVP=2Mdp=`ML|Y#IujMgm z`FGW$dU}h9G=MAu@SehiX7DA!^jS`klEU976@Yl<1z{bdgm9s7gLdO=QZlrZ+t4YB zcD2%*kS2?LINNx_qT3)qmuZe#ye+0bL6HM#psSm6B@kKgBl0G2R>esVq$d%p{v;eO zwo!UXd(6&7fcnT5wh$vg%TKdAIf+;4x>j!{7x|tOlbIMiPrZl%{;ImX*o)bTe^KG< zAQ#D`LVKEd@>05u`b!ePiBK3!52rq=$OryWDVMV8gxi>&5LLJUeRHBChqht8%jaCF}K2j+b?Vp#8$g8xmm9M$U6YZi14t2CQL+b!K|cmf8L` zKGinKGDsYI(akZaCLZZzbJLNPK$c_)t7;DHwFL?8kGQh$8jY&S1m#50an!HU;7Tz;G3bzvNeqQ&FoJc`-XC7xDibQ1ZCn!wy*sfb}@Oyi8)ei65I~|Vr@u*zh z@DfV*xR};azB7X6iF_f&WQe{OilORbg*W&^`4_jYQYMh{!Y0pV<0j#km|vuXHN>3> zW-qs5{Yr=;>t84cHa%8O(f2rR0_2ArdIAL%VH~qV@8B*mbdzNs6T){PiVB4ZD;y{; zY_@0&A^b!mhox|3?Dd;CBRKYhI9Fh5(gd{z{q=jd ztWTO)y2U9zKt|UtlV&}uh30&DPScsyeShBJMucw0$j=E2>QPpuzqYNH8idB;>V<6* zOVuK%#(2UwQ>wRtmBKb@F}=?yDT0Bz^M;abak*+nlFDE^X(1O=uIMsTX=FOZXo6tr zXk{_soW;h3_9bz4y4aI};vX6is=m=iX5$Mtm`dpWMgxg*Ycy9d(N&Vz%-3*dJ6%DNu1?uWCyjH}2npg?WTb>T1j)X-|QrIc2(p zCaRyJEy=xx2Zu>vP4;?1raZ$>9wsP(FvyG5!lqL?`vz^z7Wh4n9w58jZ!X(~F$rr# zFnzo}Neq$F%yB9d_7@Td)}qwl((q7GaMuWiGQDl(4VGgXXn>2Qfvq(^f^m?;iGi=*@_-xcBWa?GJi>Q^o|O5SccHgt89aL+$UUUDg* zvhP0qJlnRV_xSshmk%_#4is%Jq+hs+)nH|jwoN#0aPRHCjaCxlE$=xQG1MDXkAQmC zHmw91>FJ^SRb!$Y(%nS^fl_1gY0ikj<6o(a_Cw)gu-~A<7^*w3quVSJ83`YBrI){? zfFD~tc(k+>x=HT`>dC}h-#!Jel?N(cO7BShssKd$2 z;$>^d5YMJP>Ew!7$L=XOq7f;%gA|OoEXjgUc%}Ka11o90`aiJ5?}7xqY{nsvE%TEE zNBsY`EK`^Y-2Xe^wF4vFb=SB@X|^-FmU15os;6A=0^td;|tCp%kbVk%|Lf`X?p><0|r0CpFb^3rtuZe&b^pjO=&o6EmLp31OqnUbb41z6`x{q`@J3LDTt9uM|hcorTfOUwY z=T~FgP5>|8F@X=~eEQe91if(L7mS>ERRp=@^#WyNtgo=anmt!Yxl*4KE=y#xS%ZKs64%8sSA`wh7&pH;U9&@M zx(z2Q8C$Qm{DYh=gXhylhi-kAwm>#&v;zFusaI|f#S$pp?0vFh09*vyu1H4p`;X|G zHNJ12PiB>dkRevA4YKelz(&?1Lc=yc0fX))7gj_$LhiXL&MCSh0W0^I4fy(e%$25+ z|>1ENASUYv^7}C=yIhKr@EfETW>!w8%DIHI?(d zUq8>+)NVnSmQj@rv1RKAKL=Wdx4ekM?k!kvApms4od`$Xm&)2V|eU-xsUoxT9@xCqVQJ zily-_ZN_!vno#!I6aqiTQ-ArMT&ZIs0Din?LaT2fsakRH-BQ>q1U;A$iGF>Zxr1^M zjOA;Az*~IllZ^@5B8OZu$)Py)0Ha>-#bx5Z&b z^Jr5$qzg?HnWSO4>zZHvsBlTW6RhchjXyAI5-Zzkh)w^N(W`~|6bK7 zUnGdw&zQ_zCU+*HKZH8l<~sNOS@)S_GWZ9?VF9rs#tst0mVaNZP@v#(73O!m$oZHWx|5je|hP&@(pSavVB zuS&7(BnSA~i6N^w_pvVjCeM2uI33&aNul^p@rcZXdZQCfPQTuqTv`&aQg`A8Y zh+0`lFDJKJv!OLT{dKNBBS+D63|)*)Z6bhX9rrtVl_0hXu4+Ebsf|qbF|K6p6V4hl ztn|)=mDFlOnQvLnOTfZ)T&cDT(Za?_D!Wfa7mScMpQ`@FG-BY$qNF(rx`GSS_zHLD z5uq1V?%?gW*fG}RlR&4!bKNq?eyD1=)l?He`72{dA=LF0P1aW7 zY+_WH0*x}v0U@-JV0}~+uO-Hh;#v-~*-~z*(0pYlT`)@+ zLLG|7tD#T&FG>_c1M_2g5gtQDEK4Z2axe9meNk|2*v3PkOwscS_%QobqL- zkZk1m;_<~mShcD`r|kU)nzeCcShzj;b0nJ+rG?(_Bi_oyR@xFlu8;-yH(Y^fWPUFc=(z*u@jv_=eQ z>e64|y~PiOXa9M&llI{yc^&~|so@*BAe#|U^?w{Y9;HN_x8y17-XVc`3Mqx6Q{u^+ zQ-m_g~yi`-c6@-z)GyA!{-_|TeW2%56*YybSxs^9Pgy!j$Pr+sU4W&Mqn zGz}=-aY?3D^S~$b=gr3b@vzOW+66Z@43~rw-bASX*Kaob&;=t9bPU@rO*`NaV;}W@ zOur}~!2+8)Zt!(nP-o?f(_H+YcQ`c)Yz~S|YP>Vk3o#NI&+}x3$is70tl)lSD`KTx zT;EAzo!RQ5s+gJ7G5E(B{J^--Mzw_ADyKR++(zHbJYj%x%ow&&qzzUi+Y5ymPPUWn z=U}`91uJAIoUK?Q8--`b6;k5)q$e#IBusM&GqFc`@vk!x-msDNY!8r{+1arRpj5%! zO#nFC$BaSDkA7sC{seN%%E3+ZaUmV%Cp><((V)O)pD^&hz8}>^v(e#}pV);q8z-v- zZ=8p4K@uM8&M#l^;)_nRS6=NCyw?$@!^Sj)?RlO88}WTC{vi;qJ2&Qt;v--MLn)QE z3r>=zkL)TuOr9)N<&cq+o8V48cIDXIxVmigEz$b+u#}2GBXsx?Lq-RRI#zjzkv4BY z^xCq3ZpK*C5Hl^_tXei-a$fow@tPZtI5*X-Z|z`Lw1@iCHloH z_{aG9C-H-XEhERhe}VUyb*sCf2xA^5kN-h-stD5}H~ugmqGOk^z$b;Hpx2lb36!|jHIzCF4_Peou@Ufto-gf#67GBruq zp54hVEhOUa$ltK|xe5Jr$^?NXKZ z{@KiIVBNNK)Bm}JopWP&{G8W$vi00c`%M7k>xn-ab-vwv5*he?RZ^yqW>h?+50G$% z;8-?{I-TY2KjybnWyWdQwQDApXRvOg;^-`cjNB&rp2iYQJ>A70uEBwF1usQYUHSIh zaPwT6{3*Pxs&6_R+)+zZQ9CxitV&QwIqa?1qwpKEPoTd8Uz)2lJ2diS`Uwe$6I)RC zNnRQ7m?GA2a;bPvP~htX1HCxyURLH^;Fg+%tr>mpIcdJxaB=i8f;DqsXG6z|ZtTfx zH%SjW7|vK0k*qTMzSaGX;QwK*M?+OG{s!>w?hh58c*37rRF|H7j)PF-e>Hl8yr8&v zudQQG5-Zmd|3jX+OfGQ~`ZF_L(4?dP*xXLQmzWRsT113 zB-!)3;aw2(;fQ{sc%6*zvMfi_I4f2+aPW`5Vy;-XKvQFa`NVA*E*(#vNpGgNZLp? z;-xt>e=q9twkA82wsvsDo-wi}QX>mXx}H!Z$7p7(AtA{mnk``2_nlOWjete<+vwa) zuK{GpJO8~zg_5e|It`?e&17w>;%MwQKbKE(F1 ztVGjUL6b|a^~qaI#GZS5O!ve@qILtLLZw_NlE%rF#dR?cpo-%@EB*`Fdxko`gSy)e zHpd^8coThrB?@`y0u-qSgxzTFg2Iz|ij;CrS1s?b>winlRTV~|-7!%9B|l>M!x8lJ zj*xHn>gxsGW@7%*VzsUKwTnro4xOZ(0UVxqCOXBm%#O05-KsMRnvoWb>dMN2P|Bv)%B1nVi3)Uj_0RJ-kIJ_Zn%2c7Xxk zoy*ap&2{VtKYscAZ-@WKZD`b5>y^tndv~LmzbI7^4jnPZHtA21QCY~{@22?BL`nx~ zZyV-y?Ql_dY%(+QwOPULu#F3g(1gR%73q4FCk$^_N^g&1v=H3QUS9L zCgbNOg*>{#yHx9SCV-k&mibjyMgLC(%NBj`+}ZX-qt!ha`ejm-DArQ!W;F?*u+<)c&L%sHXw&&UYsWwU2yB={7oDZ)5b2Cc%hjaVSQ0tj+ z(CmH9#kz~V8S>!8#{_KoMr8^f^GN==^UD_AdwyePTWctyw;3&SW9hUf0~HC&sbT(*C*v z3nAI{k9Ev5l+@g@v{%?q6A`=zmV;V@fYg2VcV?GK;WK8^6M0{0d^cdP7=MsMEJgGg z<}C3Q28hGDS1~YN%&h*`sY-H>A~1(0=9mGOWGIxP6eni#vwG%XrYL~nd(42ShV4ox z1K!?Cd0!TyBYc)_U+f_gdBUd;f4%E4d6&d*J%>k>i@>lZW+2;ii;oZeryC&L;{5mY zVZ|}MWPrgQ$1<0#qi94(Vx2ir$ClHj>+G5y{$M|^#2shUStA|m*MW1HW=%Y?o@+LN zSh-L>mgO-1F?Zz^8jt%wB)uo5DVf~lxHNlNdG!E34^s%WRKA-`w-e5cKsWt7xL{a< z18mzT;L;o4DjK5+4G<(-ZV-~$9(qZ;5R-{AP<@Q*t5KMmV{tx@R zJ&$YA=mmP@O@;ID6K3juv2|7RWJmh*k|n_4gzdM&JJQY0uZ+ZzUpkCzN6vZ>W5yBE z3xF$6vJ-`v&Vq2psQUKyRn{{v6QegD_6 zi%53s zmG?LYxy<{?-(zr!s-XBo5p!A=wErM5D)E`c#K^8Xz!!~Rix6Y~;UQ(Os! zFt^s<$uJca@iw}SDNcB$mdts-q`Mr>n`AeWk3e`_1w2}|^$nWDrEs}A*rf1f0WPCE z>=mY1?;!1vqT*!~bck+hdmLQ^jZ$HZ{}y zW{K=_X#O%@3tBqoE1s|GQd>+^Fs{lbMZKKBz-HibhPWO5ho4u)HV(w)jvoJe&{qln zJt>edD0%Idr>g|@x#}eW7Is?Ius09P{J_UNTXCtZn3h6Y!JQbp+y8c=Ub}?cy@k0+ zxA<_x0MEtOO(1DYZ3uA0wAmNvwqz4T$`lv$QprIuMq#CmJ)kE>=-B|RQh&>;a8lkW z_~Fw=rt?ka>>n>{OdX>4AIp*zaDbff#%atURaS>d0U0P$lt90(GG6;19wFwVCi9O8 zk8n94c6V;rzR6>q_Yw6*qzy$uK>-gn(2FQ^S8CXV284xLXPxcy5kPV z+)n9VxxuyJ&PidfhdEHv3~toy^`3wNAkatVlqYYV(8kFZDJXbl`1{lU`cH}EpM9BL zKW5HnJqw#-+dS^wa?C@@nrTFjS!#Cmtqt*T5JzX5mU35s7>e_Y(7Jcq>yRRPiv*k| zmKQ(StO5|=76Azxrb}q+!lncaOtu~ipj>{x@jEyq=ISOiqG5H8w1#QmjhGC|#*Edw z1nJXOq2RzLREs#gBKNj%;8xEi9o)nEzYzF;y;aXM%-p6G60>p<+c_qdw=NS0v2kN1 zKMh%1&|Iu)z2KQpSwRei?$M?f>q4_pWSsd6f0J{p;)yi%#zNM+Y-D0gtk-fIk2?T? zU^=@VIx_E&&Zj!h0GEs6&^SqU5qzeo_a~%#GGn$F3nMUgI;@oG({q-?e}{~i|389y z416fOlqvVQG}ph&JH6DujN$(!8UE)tNI)fjv^wTWamUu8`JB={xoAD55`0in-r%Bd z(PTc_MezIk{J?!lbcVam^Z4v~T5J0~&gZBHf#P{^$v*=yI%PeDIqJ*bIb%A&o>lTR zy@=CsD1Sa%r|@dTkM7=F&6fF`d;COt?m6GAmG!O2)e^zH#Y_3CTkVg0Tjb^c_cQku zxrMACjG@6l=c_<97L>$P=8Bxr6k{E-htauax_b(A=fi$1u{~CJPNpn%SMsXK_Fps4 zjFNwlnWa1gRJjhWDU-a5`(R!}S~`xaa(kqB>eIE1Ijuu#2$H91CmXUeEfg&*$*61iGN#X7>d!blCt8k4h|k%) znYOJ|ZSqhm_|x#O-^}Qg(!aFvaCOUX+lC(jAAfB5m6*iO$}DnD+&=|#U6(DvtxWJ0 zz6#i2x1Kpe3oYlDjjQZT(?|zI+?L*xe0|5zzyB#v|LQ_v?I$}*|K_Qi;xo(imRu73 zP-}Gi)77-eoqgc-v@_@NZ-m+h2Zz2;CZe10a{2#e!iWE8)8wBXuY7n^Lz~R2z_WT9 zi05Vg;nPj~`2Azi)5~jO{R_zkofx zDewL&H9N|7!#91gA%eb6(qKBpB;O!c->vOQ!hdH3yVd;+ZxuMD^-_pw`FZlWoP9s< z4Ts`y2E{sCTiX%p1r#65e^T5avh&SX9Op&U-xs`YkW^RB5iq{ z82LB-Mo0NPZj)fi$UTnc7v_JDEc9{zYX-%!Db+XXWKTS^h;#~HASttA->Xo%c&+&? zz@}fSJxx%0<|-do=wlAWuRw3cIstBMVQq00(fw9UXG%z3#QW;wwS7@6rYdt&B{l&A z*_Ur1P&k_hQzdT;wUB#}wVB{bw`w?Bte`VKHL^w=9S0_#6ALia#Euf#fkP4TjQE=) z1jlQ>5a?%DJum^~Z{jdc!PxBPx=_@eL_&o4X2@#{uUCI_v@~6A0Ixef1@|_;S#RM% zU)!zhD0wh=kX-n9;FZZ!QuL;4|8=a1)f)WxX^oQ0jLA}k4(FX6dvB{{g=Xe8*ADm1 zXX}V}IXD^%u>aol*Z;lgIl7PHW6pSy2`gn1nUk@XXFLE*-YW;E@k<|D$`N(g<~MI^ zr-=GkL2Ko0hK4txJAha=%~3sWO1zgMk-T{npA`8qG*?cW<*G-u7>R#WYY-$bLZVgy zE}Gi@a-Jz`TALmhYoNnI{ckP>Oaic3d9SH^fmX=P${@s)dTNNxO7b&4)<9~A^#Ge@ zF0TG$D@pZc2>LJLFynFrbWjl`Bd7bzXldM**LKxilhoNZZ#^ffGf&L%`UyuLnat)s z5NJaQKjsWRaBMZ+>i~5ABF36V1i>%$Eu6^+te1eK@*2i&BF7c3w^HG~ndhm(d47Zt z^K^*S_bk^t>wYF*q{P2QkM_f*|37Vs)=||%#M&0a6#?$z_yC_0D@BxW#S;4o%aOke zIlu-GBbh>n3tX}@wIPQq)_yPq+VGW5?N#ZzQrnASM)VhT60cqG>xA^V-jBK?bzD3Z z#LBe^2Dd{F3QUztOfiw4`^;V^r*<+C`hoGyvNyaz>-&b4Z#jsGR2TA0$vC@X0th#; z@%(s}yB^V?-_21Y61Jq7L1h3Zn39T&Mt7R3O!y1pFyPMGMHp`n+RoZht*=3(0o*GV zziY8f3;c14b(##M)}R>U+R-p=2(ai|e~N9Xi9hDK#&?y9lt>B6tbXA1&}96H8J0g< z7B-|m-B?rZQ-w9?6QO;9o*ggc+`(T!%em2ewnZJ*fNX0m>6hIvyT*-Uc2g2)Pc7!N z4zk|_zmi~QAs|RAclmEtX<&TUC2X%{$e>GeMM=wOh70fo?Tpan()&wngsz0)&Tw zaWHn%{Z3A`CERYG2nJ+6Qt=ov#D#hGG|Uy!9gc_C` zjnwm1IyLp*&T#JlRMZ}s5?N$eM(Rcdn@?^bRpv_WJY!AtTZ1W6k8%>FnREy+50cxB zxGO9|0w|25BmOGl#8*%trtLPZsagnQUzHjvAnmwIJ~FCE%dJ=$CJs|%FI?sI`|OiE!*As@z9t>7(bL)g4xtR5nwng$VQvR zE5xBJ%)IDAd#p@huWYK)`WlZBZKzH(|CxuA3v@BUfaOpSG76Kh=u*eP(JOdpy?Q4M z=0@8IVikIihB!Y0CjE|i?K7%ZsXJpOQ+j1~f4|Zz5(C&VKWcmZf;`pT-W5~1Hdtvz z!VyvMH0~0p7$3Hf{uPH%H35}n8{wVm90kmA&30~Bj5BZDE2Ir+DTK?)2jgw_Q4l$L(^u4hyT#6CpX$f^4K9tb@*&Tc<+K%@>N84TMWUs_?&{ zK>%Z?*&2Y={fgpGOSbqy2TO2=6BgGGR}|xtEWU!UKN}cuj;S@bTxHF}Ux?xTVm#NvI9A^XQ>`;I;OZA*jP_>S zvm1wxv@C8UlvLtoxRaGMzmr{9I<2B@o9dOwNFzVxk?|tes(&^T2D6i6sj=_Oss4Gg z{##t7gfIRGT)>m&eCWv<)Z2P2d+v$1I@KCf|5T9T$df2SaHk<3=oXkII!eo%z~3Cnv5Ie!QNHILzL#%E%8xxDYdFlh>mVskHzEkNdCT$t#=fceV^%GrWsCq1&C6SSZ z4%V|IrK>$>-%>!{IX7|Rg`MomV$pcQk^Xhjs@L4^<^7kRLj)X~ymXWZ;D zVc~)7hr6M7NshNiVhbU&N599bRz&d5Gv6~LF+)fl+_4I~zJ!2obllR9=5?+DV#B%_ zH)n9;T}MwMkZNvZ9yP$8cs=-e8m!sQ9DBw9$q^(doVa(X(|9{@?5ObVhpb?wa*`|e zP(+bZ==*K^<&62l&}#VdQ}Th~%<~izlA-z-t&-<9l*GzS4ga_^ z@r{t{`-{dG>n-FSYBanHd;`$#`~F!dV-k~#ml<>z zKxXvm#)?0E`b%H29#iMkp9DeviNtttBK14yw7%DhgELgG!2mc@PRpZU=`KjXSPttP zoAD&%o7y`vif}fHiTC*U(@V6rZ=L9Ij~iNoHZ{G>WW9s1a;bjt)}pMhfa^T1r@(&R zTV_^SYxNS1V+Z@I0|ROw_R^2up426w$@-2IZpJV27(e)0tB1Z!-Jc)eCFf75m?CNI z8a%fau~0Y|PbNHyqwez@oKLM@l8Z9nK~ayJ(-T_ceqI{)7z}~xTA7OdG8J+7;NLxb zyI$zyM#l4QY{|)P0F=ZZ^hkRy4t#}un?(60%BSCzuh@lvN6#a>Jucr}*?X_O*ZQsNdgdlMMdU9%mAh&U zu;0Z71-^OYNj(O?6>g-oYfXO#9LPG z!2mi)o9>|XO6w}ukn~zLAx9)0h=B+#v>Z>?1?9@#{cl-G{H?mp|G{-U12lPv$~JkP za{Bl;4snp{-(R-V9Vdq;(>o$=swmTav^Nl{8?V^M&h|5lhq(%OBLWA-3&L?FoWLf( zL@iUX&jTSIpB3{3gJ|13C152#DGM#yaCoU1$L}5;8}=WE70whbrWvchK)_kd)puw8 zTf98OW{tlT-d2jreDrfoIerj*zoxsemf{mdR;|r7g=NRk`-N~U zgb_&vYQs@aRinGfNeH3LGi%7s&lN;RkLd(L74R}<9Q>F;$#ZD6zC@|ZbC+BQ%OC2M zH}u4{Zcy$G$si=Ibl+5K8$m`9;y)SK+VlGR)D(3DcQ?h%>F)!^yJ7rABZ3q1 zAgkuq>Ttcuv3R!lhMlYb@vkF`&plq-&925xnmXQU!dO-O?-zaSwea>#n*QR?D(?*_ zk@@3tx%lNx_FB?ln-IU=K^2=Yc4C$&x@EUu2)d;S$02ZsnJ7Ip>~>Uh<1!=3@m!g8 zmo2)Pav|nKe9{YwKX^6Hjt4y!PxE7{0)Is@$h!4YtJ5_m6$`ftX z2k!1(znarMx6t9wK?$sP5BQDmLp7KSXU3>_k+$m1HQ(+?+BTuA=pDbK_YP&DayiD* z0Ik=q|ExYP@X(!3pa_*Yb1*I~ojst@U?8e-HG&zATs0ii%?zQA<)h?~@J5Eb6Cr zq^b0U{Cot5f-oV$aU+pXfXd~`PkGUS#2ObclHefD!bla@Rr2k zAEXAC5hJA-EgXz@k<;q!v0pyK+Mo|k zY;_zUMR#OkGdZaCF#e9cv%4Se8_Z)V_Hn<7(3#6FM2gV8Ql1!maj)}Xi9NE>EprmbVD zMV_K)li67OUzbKM4cMUjL$HYuY&Qk?CGvPETScPXTGWnB`)iDENDA@2ZtkN~u9zacYOPV%b+wZ`HqX+jxE$oeozwyoCk~{*!ksB{GYr{uL zj|L{p7wB#39ruNqS{~4cLh(FDa|3g!LcEo!bICGV!V=<6dX%((xuQ^KF9y&?JM@|W zXLk8{&hMSfJFvxcVQ4il;Jkg7m2C4gjUcDf6o!jlCz)=eNN|)>HcQLiRz7aE>C(<~ zs7_|X#sqf#*uvoN*^^9aVSF`5RL?38@=2u=Nzu1kzwF1m?ht+7+x_G>#+X`_1Vl!h zOs!i49>Bm;_JK?xpaVoN=-te|z#+99{zR+x9b3<96{J>@)nJDoA@cS7j`*;i)nl?l zK$yZJdgeSwUx*#$;H=!kI?svT1!Zy|4;i(EBh(2mWqi`)V{MSnDyGM`V0HwH=RU!tb9>|8@L;2V1e4V^8Gl?HbR2dYR=I1b?>?=g0Rx_ z%A2AkyI>F0W`#R{`S2!}vR{MVGf_*4o>`l8NIP|JNalsFeS&F3UoL4x z{=FU2ayXSS8fRE_80qYFrVp0jnOuNS#!BDA#CqDfRAogyd8A#~S~A@4;ie8fLFX(@ zrvs-2orCG~F9wwbuvP3K;jJAOg_alkV8_)j!a~C#Gmh-<`U!|ST+t1DeMmaUqeCo} zdKkd3uYHf(G3=IOZMhz)J6WGzdg|H$yhb{Wo>o>IuNMH()IOA{w%TDJXjD8ooG_Us zePNH6FgNApChnm`($7cLs+OH z!M(%N*5W8SF)2jGuij_RymsoA`T42n5#bK01-D>d{f!xC*ax)q^wYir&Wl_#fKSQ8 zHj3Dvj#4cH(rEhp*m8pb=i^EAE6`hq@Yoz0)9&xC;B`xVGOrDninThjXCam?k_;Qi z)kcDt%;4q~!|saQmtXy=!@Nsh`z7VR;CGmMcV)dTH0^_2X zCDD&w#2wCDsdk=##)eLskSkptd~EJ#_1z3gi}`x8r6+}>-Ofw}(MV|>LwbLQuK_B0u8BDe;*-ZOi`jyBJErMKlI%rRwatc)=_{3S^#&G z4(e+-Fu-uP;N3GN)*BN!|QgDZZ2Vg3KX; zzacT|Is;*G-mO7j&F1?^oyBuKwP5oBb< zw6W#R(FOg{?8o=yh%f?27^_ONTpOcF&`jy^hoTKr<1(-=Af#+1z1e>Z>bFb$;a3*S z9xyfPIz^fPts^vl>gAFc!g5%!?RnET^-NVMg47aaIOs#1fL)FMXKpG$&6KkX(%86( zklY~jAhZM9y>AeEA`&QZF&cx_4#j~e%h!;pg${WyE?kVij}d^6-rg{`lKDJ*U4(Qd zOLsgUGWX!KJJWR7d+g>ov)OlZQrj0_bWV~7>A4VU+UZ7Go_y^__m$S^JWC_f1ccNg zdWp#{)4kx#W-3zM&4f|zw*Aqgdcis#zjD}RZgP1XuihScK9n?FUfM1`WELi*T;iSl z7%{veSR?ZMdvE~6W?csQwI0t9hG@WhPN={z`i6+tw238D+_4a^DXCU1A?-WrUt%Ef*i+Ac%%~(Q~5YBaAg!zrdx6!HSi* z!Sq;mWin^H;?7HwlgFx{0%&ZxK{DKfbyPK!%B8F2E2rD>m*CQAetjy7`5|IWf#ZF)lJ6=07#Gogq^Ua@0P^ zH(IS*YZGPz4ca%p6!Wy)_vqR|UF@o03`?9JRzNQ!TD133T^MOH0p=glzNXIt3HgT0 zH>}WOOnznzC2*hi(aL3#olTdJwMktqaG+rhgXJQ8>sf7)he8EW=vJ!{G+mPwL=3!H zz#ENe7d`Wh;5x;Lf0UWiPH*zUGJn!>n%j;tE+C*2|C81de~kq9xe3ixxMt)8u!&zS zzsd`BFEpvvX%B78L|BL{wTL$>0cq9OV}-BHKl^Y&L)4zUSZu0IZX1nuUlT5`aF~7cNX9yL zn8=LPf`YMBDl@`_0u6pi>$AjtxA|}$S$a0qPY*z}nBsBM-_VW}3Dp2v;i!k-VvhWE z^I)lntk8hS?(O}Xu2k8{K(-yAdHf)1F-(%-t9e2Xjc7e(E9q(=r^gTDxR7Z$gK9i8 z5OO03TP_r6bml!g=((l}P6(RVG!yRh5uwgpjOE07hH@;%a3G*c9tYJ45ShnX;bP4b z;lr;#QB{Eo@Z(w=YMapUX6fWkPg0;MI`9NcnY6m48oxrL&Ba4uR@^mW#av+2NXLK1 zB+MKqE!>K2tH|uWcCKB2_vHx?ZRG2*JToP0!7!`_ibj6Iw)m^T-7og)m6yy zJijGw{rLA{vTJVAb|ZAZX?Z-~VWU^O)B5F;Doatega~IPc7s6s7*oP z<+ZtQ2Q(fEno_%13H3X3tK0wXX?K+v?7Pf_Y+ecIE@|0|@^L8yVXFGfQNBWt zHe3*)M8((txc;hG@dnsnryr~&L_N@XTe7iu z_E{UYYu$9+gXe9dh(tCBe*54aG+>F&vhJJ`y1+9PZszdc6P z+uFD69>y~KiQ24dZ(`<}p6d`SlnwgJ2KM;Dt9)2mowAPwACM~>4LZ@4_W9~OfDVXm z0`W#=X4yQ;Jnb(2JOkU%^N*s5&5f)vT~V%pcu<`jJ_v}aQy5bp|E;S?-J^4!Ed-;C za_`*d7BpS+T>s{;ak?_U=^EPNDR?0F-mLSgu{(Z$Gn&A`vaEw@!_Pd_`}&;TaNypv zBX-choQbU}|K_A8?7=|57fCD!NOcJ82oCeqb<|txXZ~Uf*2oQlXdByAX{?xTAHVHuhq{G&Me;fip&1ydV2QssBkm=z(0&x(Nrw>(LQ{ zS;5_v(l9$Z5|{D5vO4ttEzzL-jYNgqiP-6-wlSN`RR>MRv|OYLem+rN76-ixgG&m7 zvvebaWw-No^AjDDMsii=6GN~XVYWdDq017B0{pECOAXI0pV5{nRJN9&V1=XS{AMes zG5%Z+)sFqe<4_RIE-Qu(US?05slZvCxc;9Y;-pr zkflNwOOvA8zE;O*47=nA3om$O!zF3WDIS(&nF)5-ZhmeE3*0Igbybb@By{xwsCn>W zy>mwR9i;-dIp#kvk8;sov@RM%XWB}v-yEe)*-YAL_rH60>-I~RCeXZ*;WTxu$1k7Z zJ+Q83n-xPMz@#JXcsjzS!T;S1sDH9x%+n$xt-r&q?kI{q#Iu+x=a-5leg&;0(2~K) zi7a!nfLH)lApFseyzsrLnvtRIOUm28Nhi|vH2S9OBho9^`QKB^uJnNl7ABW>I!zF3 zQ_q(!VR%?My?3L_DDS8df(F;$CAvDyDKp&9MW`G9twICH5!yuYf9(InU z7~|`<8B*)}+zK2f>&I;<4H`H|b`dWV#ITVi?4;`j+azUCb(w$w4UKFFEsqK24O>*Y zmApR+-IH~9kP}rGOK0L6yhFu}v3KF}v~dwGEPv0v@y~6TvFw;}bVxilC9zk6;KIdk zE}h78kJ;l&U9`Dm=Z%eYwrfM^4*$Gq6agPeg(k?VjCf+_^a2S?!+Taah&P6oaZJv( z^^+NeM|W%SCAlPrIWyh)<1fj~^g}U9-0B~X05a$t>?#Q5TP8(cQ$E-Q=^``X+Tc4` zj|PsJWWn?$a&`BHq;x40wDbn~UfXZ4{!P9lAhO@+5k5YA3L0w3?lc`3U$EQ=`_6_$ z4THby4X2zE+mPoXXWcV|A;+6cmwfd$n)7VqJ5>kdigXM2t~s)}P?3^A-z)pK8XCm$ zSvaxYKjg%XGj@yLE@&41wbHri`!oJ18;9DPA+LJl_2qSG?(PO;zC**n{D?6N@$vQ z3~SE?`+0I8xWPZ%FJqMeE&{~p`}9+9-+~+`5qM5m_=aS6x>yvsL4vjzd!@^LaTh|e z$54>AljMookP$+MP5r$^UPOml%Sb!yHe7;sAUs)TS#fhde3Ss%$z{u?wQ0WklIPuz zV{P|^O-mj_M)px<9_mKjtejs-9((S?qm6G2%-c|LXcFQb{4NhfN12WZu8CH1F2}az z%0qO`M1r$dcEpC>6T7uJFx17ya59hb^tT9_+;HPJ6w!RZ=qd0(+@;19124$_Q|Ew5 z|Cc+P1JKG~Xrk8Xu=y8oFiU=}vdb(#U>w`(wKaA8uHU!ln46bJ%A+uqF{!R9Si?dO zg#yt^vEU zFiAu0&uf;@9cn*@pE{(O<|>G(E0=7JICL0sS#6!T957gEy$8^Qw zX3@yE0DB@w8ysZ9(E-NrQ6^+zWyB9RYhtM8Gd6YBcHrSmG^KH+QDjs$3Z{7BtPDLF zR<*(dj7Hk5C3=r4V@UZEfS>d`2@S9NAn|RCRPvJ+EwwEC8_@)5Zsk9$mOoCXo<{H0 zP_z31QW2KspF|Z567l5kKMQhm%;Y%c^khIRzW?AcqEZCtK>E2e$NWG!OS z>tI5ouQE~cS?e>JX^r1{%yysg#+v^Nf8vS#7smSWvMGEEwLS(pV{;~ftz9z}c~Yh$ zOO}qMaE98lIC+IG#Bec|_M3D^dQk79Z%4RfF}mG^beIqF%vV{m7UKE3kG@8B#&W@( zggM0CwFDLX7@KS}m{tKS_oh>Z?VIB+Ciyf7jzfZ$Y>Lg13R`A4}F7alK9$q1EXD$O-?%MYZGVjbzcp1x~jtN zKI_0?!(}=t8(;|5^Ky@67(Oj3(YO zqNkVdQ)a7au3B)>5&FQAe(8c?3v3v^%F^Sy-g|)GNVaCQEIY!YW ztU9LObK}O1>QU*__Lgop01P5<5ydZHAZY|sG+}K-dZmr&4P!^fcP{hlAG$=FkepEC z!3B;)R z@bzlYsOJdVE6JChV#XD5b$?YR>BcShh%SNf=`PG0e)5%1sSUMJG48>XU%JjQ1Iol$ z*lJ;N?Mhvepe+rwnMV(|Caa8WeOgmm`gS`Te~cbyF&O+Wej$baU%EAb#&F;E12rEr zsstHBF5AkhO)m&}Dx=1!d5B;Ah~F!N9BXK}d?#iAt?_g&6f@=GPRZ{@;ybN_#R^*- zMK+mbmd{WmxgH$Fw{e2sLn=!|J40LeRoVQ+7>$$M$O$krtJmj5N8ReHH9N#fz!l#7 zmmkl{RSkimR+25$_x~TGn;^+Jxr={GJxBPNg*fuTV0{mZu2BnvjS-41iNK(36J-J% zu~H^aQ6pBk65Yyd#y78JJFOV|Hh%b+Y&$>C7U|0-Y98w^*K>I(vr%QpRX&Oi(4}D9sVls)N?uCG zpDz~(1>-r^o_#;lD3@2M*hBAwE7z_&uH9}w<0=<=pPH`tihGkdxr%7VJ{VM;e>PrL z51B5Xz>MlQsnuq`PkZa%&9A0GWHdfh79M2PXtR?<^*jAFLP7oK$&Gn~D}3-=Pk<3Y#4E> zO@F-d?RA0AOLi$=%iF{U4vcoy^VAV6k@KzUm$#~2cCAfRA5OMMuN;;?9gb4J`zZoT zr1>)BK(S}sI}O$Kj~$LhOOJ> z=%4xJfwa#lD_bsxx3BdUB?_wF zvc$fBSnlM6Sl9^-zttof5@bWPa+5cFewh(1S@k8XD(FLH+!aU#v(Tq#>r+FZ-D8$k zX^FNx-OkV3v4)>JSCkpPFQ;=p*C>D93;uT+rb?kx(jxxn)F2Ef4X3DAm$FuZ)*5Nm zS}(^?u0p)uTbR$$*)1xgltA~AfZ>DA|y5?7)&bV(z9$`lx66k(PD-V;*Ff232AdVLDjCm5DTa^H-( zu{wRAk^hn7xl|@dcG>(wUr1|PYxumKDL7W6qDT6_FgNcgc6yvs-!{(HXMz=1$pdJ^oro zFdpAL+6AcVfpiDE{dFtj0-fKyWJhkvpqluZcOvr+ObX@JIOJVZ5<16E#Wg>XJJqYO zR{#RyOL_ACYspSUnZ{`4oa(pf`Hf-cscNn`D6X9>*8iQZeg89EWA$E@Y!kTk-Jh=5 zI(--(rgZyJ$ei{^Ax!llaU9QOSFaRLSMi<)Wavl`H5pFD(@)M0Sju_;pH!HeDH}hP zdvKL#(gJ)0l^uLNto<1cd!VlD!?&;d6g4#~(~Lpvlh(A~aOiP;5)WT3sk^vorZfWN zvdz3ch!m_Q59BhcsD4(FS&MD6-2~4+2`eq8T!Fy7qnrAJL}y>di!okpBjIEimTDcH zJC@QwKW{>Ud1jHkv4EeDopor`J1uLDOl> z^Wl7x$Tz1MGcvh|fx-moM-bA+D`!xU#p6}_Pn+fFF-c6gKV@ICxb3h4^TT}_(o%<;;X^86!Obbf%` z@iG7fwI@MqMe5z+ezZ3p0l^a2slIH+;k41cBYCM|$7C#zP=5stI{K^m%yXE}IrU|X z!u_WXd1c{ieYuv1D>VbriAMHtEyYM5(TO|9JO+ZvPY#$3Y%6K5(NcKen%LyHBO(H| z9yTl|%92kxcR{v{ISlbjVcX%Rj8e3BLP2NmQ;?7w*nUf+Vx+TIA9)>|0~{5vqHJ<; z@EB*s2nna%Pq^Y(0#Sui>pdf?l*r4X20svrkGQ6I{Ii>z)c$v5!xMeCH6PZNk8j#@ zD+a=<-ro3WiiBN1`nr;j=EpS|3fm-}FVTfXWJx;-EWw=?>2@xJ#k*qPfV4S5LDSvI z6OM|vAQed~Owe9wF0BP~M#nkI=1qW0PsZ38w(KYGy)DKt8u~%JOb3kNDaO4OQdc?I z*z6}^Ia*}YBQvb9gdt?q%>~Dg&hn{S@MA(c;i@zOHrhJR^A{2os2Gd+X%bjY2u=#O zQAU|}F2iL=$4=dg@&`7kFF7|?iJ+eY&Z-4+Se@1(K|;1`l=WCd1F#GO<{v;f&0Fjn zSKD{PKnz*US*aF606?xeW;^~qHma-WVOA6mc}VvKOEm_8>Pl1fU$CSPOAuYKm{H~~QXr$EJbK-GbeblP2&rQ`RnP3By?AP+x06UOJ~E34#~pP`AWyI05TF)J zmfH5fnQj5zADbR+tfxcFJ{XYD8vSgepk43smwh~)D#4La6T=Wv%kUq}P}nM$FqfB| z4uDE-+yEHk8%#m97@Nr`sKTO6tJM2is2Jdvp<|~1Yja4IA|M1b?P#|7EFGwGum32w z@i!9ejZKq{)e>=7XX@R~v|eEz4{sg1syc`zwk)Xn#n`kFUk!d^-s1W9JdIBrFt7P2~*aG4b^k5{U1qS-xoWMJ*ZL=A16eFE~a&el?8q9)!(YL zFzR)F6$AbFF7L-|QtlVdbclmn}b|Tos05$C;KgmwT$ww_m(G zJV{j2bNeyeY_GQ3`Il2%aCrbeHEA5byzp1BX`5DKwMPO^7h|~i$w6tB2&2`3R`TiW z^xZ|a>!$9@zR0)<_7BHN4tkHc+ga#f*<-CzE^VfLqC^A6MtPsna(Mw5Ju=Wm@d6*+ zVMo;6UT zO5rZ43Xny>#{UyaRHyRMG*RnSaD~`DMPEdX^*V2Ghr~4TV6Xo*XtBQ=y+MOyh!#RC zk$o3_$Ulkx-%v;LPpAVp>4oE0uEvVByAwTqwFQwO4q!>OIES^EL<;58WjYPiU3cb) z&QhvI<%#JRyE23MBncWq-h!GUx5y_Qc>(E$@_!Sgq$iSz;R5*XGF zXyK&sg$E|e4#c2-zUW`e+pvZW84jn}8?BQUN=`#UN>0(k6lr7iI*3qcE<&j@y`)f^WhSvfGTENKl+$x|OLnFPF%_99pu$x&>5(tGUyUkz=V=&xrnZciU2_*?hg8 z`hM7visCii73_u<@*|*zFi+#uNWzEE1ffp&msXLIjEYXbfMR#ndb=$NWjQNO5Y!(7 z28Omv;Nb9o5YJPxg;C(*jAdY#Y|zGPeAA#TEG*oXOH!ibn{D&oZs3t~%T>6-+CL?}ZGk~~g#WZ$y|hnSc%DiS3fC-DY5MslRt4zJt$1andhbIhN0+H_tI6CC zKVSLUAVh{I#7nK0$RBmrDDfy|tN3%0l_USjT74CBpDoEe>8M?7{;r|GeIu=YUM zZM%Nw4(a)ovN9P6o{)(Z2BC>^yf0K)4~QD%+2eRWLc%H3{LSL+Hnkj{QdZ8V z9ELKk^qdMraL`LOchlTW`*l9~1)X-|_hAJVQ*M=c1$dp__>58NDJtKQ>2=2X-A|!5 zbe`cn9o-oAEWX%p+3uw8*k-lyhFP#HNwzWkR1-0?he!E+Y)L{fq!eFwiZ6)ZwWCv7 z*0;<(E!}f#o)yER+Oourj?dy3#Qt;gi+i5Y3)`z!_*S6<3}$?uRz8lrkq8ZP4Srw~ zL07#=jnuAs5w4f2ga_7R&TQHCM<)}!lJhow2^%}W9u8#?uv$lbD|^h;8WQl!?`T1e zAD?=KD@(=H-+pO*j*cz{`yeb-)X&ROC*FywPS{!<^?5>EVQkq(JSviRkp)Xq$DLGg%sg`ry=A&)38w1-#-YYTyx9aj#rByE8uzx zUW$tG!9m>B!Ky$6{*AdDokP5)I%y4soHlRRu^-jX5E<3#dx5m_VYqDUx5E!kO%nqn zqzfiHAS$@Ebr2QEjgiPn;5OokIz@iSm`WZ-Qy$<7b#{1oxbAgd%wQ}Lqq9uUl1&>q zQ$J;KiLXhLJG&M2;Bp*FIRA47deIdSrp;cmXIMt%7CF3;I=Vi*bgA)cmFYW@(Db%y zQXxl{Y=;jWH8VOlUCA2VV08eCZ9IxjNy|5~80DV+xRZfUwr4}Q0>4nIlB7WWr$z-l z*X*=94XTH7XX5zS4eoteWp4D3(_EVaN-MSAtRSejHA=U#S0x`2Lf#g;&4pCi7RVj7 zOy(tZvr*3*>)sYk`E-YY)3~gC1>*tQSoUo4Z5`&%JN-sZ_+QKAt8kJvw6N ziST(^#b-YMNpAQA@ClQsEDqq(Aa(FjwmBiOUgfc`J19xML}m4c-mOZQ%5?lC+1Cf; zC4ayp?~mFkV&G4q-tFY`NYsW6*6=T8=fMLn_eUB@g6-IIB&IAVH6DMXEsgJ7sp)PK zU_zHAawQE9-0_}Z&bY!Izu#P~^P)5nifQH10q)~b&>0ol+5?vN;U_{E~6Pvo=P@e=ol_kv+~}> z_wS@h`QnZL_OzrePolTzatb+<)SZ>hsMeKRpzB|aZSZe6$04=ypB4qrEjk^(xmnQf z8n^W7NznVC4D%DtdJR#mxWloSjg|PQyq1kG8pxOSi^t^xCs^sJC=DPE?Vqx5d);{K zi-})-&)Q(K8Y!#ggN_|!%Dol+x@-RU#V|A&w~5KtBvmXh#IOZp1tw5+cZR(v^$hmf zXtrP9-f-VaCwcaK*7Wu?p(K5^qCDbrzGNRD^pqPi6S(>Y8u4m z+W8W*O)$v{mSGD0?j_`n3!nPtL*%ZWYCrCS@^lXGl#IRk++?z1Abk0!zRSE*+U=`J z=(%oF%y&2h+K$`3$X?<73XI03u#{=nOXFe@F9q1}$z6OAt`3XVbWeS-Phlo9TdIj)^4xG2BN^2Q12OfROSbc9Iuy6r-_);dlGGux3!z> zV>z7|ISbu-r%E^UbFG%|+0KX!S~k@6KBBcaT2awx%PD&ae0@J{>q`Pir7;6bq#ZIiISCTj!9?jvf3dl+zkFFeIt1 zPb~(9{iMT(GV5;LIoAZ*v?P22dz_9gdOy7w5HwBa(H{Iv`L%7e2J8BiNkS-hz{6R% z$c^c)TAS9~H zv;NBbn6KKZ{UH7}HA37Ua(6gtoB2KVpItkn>fbB+kQyQF%_Aioy%7?r(E(tHr3hY^5*GP#rL_5J5=FymCsX0mw=Mm){@w^pjFkKacMke;K>H+(Dk1) z><73L*geQYu29P_wO|Ly&zUM}!{CL$xSn5fdQAN5Gmy9o{}$wp)1%9Q{TSr9Med=59js-fr?h_ zdIyJj+%j#myr@2RT!R#|D2-^d8SK=w2{o^Jc z`QJhff;bL4!V?%n{0`c|W(z?#0Shw17q%512hcwkdqxg7ycLiZ%BHIhb^5zX?nLebt>l-n94NZfs+OleVVPI_ZZZaaft|yf(gA@5;eRzVR6y$`lp9 zta~!>OeKtb@&~%nk-Z}SnnnsvFr6!manyltIZXFn3L!PtI5s*&10E6B7&BZt2;L64N zr$YxHt;Ld=&DS_))?8hS;c;v^`EH4!jX9kJQoWoIY{M?QqwbV*spuPy2Y<93yNW(@ z1(LicP5hwWQSf&NgG2?CFlxZo zQWkr*mZrs-1@P4vmuX0_1{Jz;3t3vy1FpOGD=Pj0a(6ZT*4%;LhJsj*yy2Q{WKggf zcEg&B?f98!+W?#yoXq z^r9>+P7595ZjSEa{m5~q=>K!*Suev*5q^75Kx_04T_>CPJCSh?V;Pa$T*e7KQ47%q zf)Ge3RhliSfl4c@{#Ghykb0YSd`M&-@V2vn^LNa*71vLcDa=c^*B_aS%c1JRlFADQ z)f3`?SR)xi>`3+qQ-RUv3^bAmk&xL9y6U?A~{(nH4@6ck)tPm+*Z{L1KbVWS5xBs3GFu! zY(_2XDd}?Yaq*2@9GH~T6VP-HwJ_=?&FP-lo8MCR18$yHb`R_rN_cJp*eSdzEd+YQ z53v6T@^rlvTMZ4X5{%2zra2*JgC9+h!cuMrO|r7A`QZ*cx0i>S-YD|N0yxyqc)T6I zU#ZyMh$`DMf6aEM1ls!%r2UrpY0o*(PI=PZ_p%-?<4#S&>#f)9#-DS$0TQs<_J+vq zc3eU&X)lGy^ubsKSA&kDDDFmc%{iGuqDr0;sdT``!C9C-@*`OwjOi-ldj&zY}rR2UJ6sf4%k-ZV#6*PuO)Rr ze|C~XAb%ivnqdqFLXv^?xADW-{=>Z(Y_eOAol&TvM{Vq8EvD<74W8kV+m~If`fPBf zpq)Ms%gN{r4N$O(hWas}B`w|5d*$X69jHflSOKioO?kX@{5rH>2K#&FJ)45wyCp>%M{n|>XdAUbLOv) z{~Cs^8AwtO*=RS!{aa%3`{z6d+FpOrU8()B;uoqp!ED$6yk>|L2-sjDO%em0ZlB)$ z5XfaboA;v6P|8uz1@iD^pABEN{v`57sWMz`N!mRN*0$D=*6(L*R`Ds;CkBNadn&>} z)irbKdY${M6=IL87)iig@cV?m-2OQ(yYB2Q5z<+ov*N zQ|LNz2`035C^{`rj&&BImfV`%0b2}y^yazKt?)hIfp~Ynn1&JKG@v<}z<})fx5POe z2cN)dR8aco)1n>A#P`0!2fv`o0PpL7Rj}Qr^H+3CG>SbF6aMFd@ypIY5#7=^+o~rJ z$M+MFqG6N<-Z74^&byMK@_0L+2S}z^q`@3 zNL&_}$<7as3AvooSmzUqp&a^1Wa)LYi{b?v=_{#ma3FRLG=&e(>Am+jQZZB5qY*|o zHYEvESqoRxfxG_HVDbAbKeO4~n!j zel^OI_42qEnOfe&F*PwuzQOP9neW-fa3|z~8TP0-s6CtiKFlpP94kNEcCn9%IltDq zcJvlggt46v#B42TH(kivEIPe@a)TjPEJ{&*T$xxEs?A=kvqo=db77cpL3!93N%Q}m zmY+Z!kP01mum~KTKkYx~6&=~@BhK2yag5pDOU_&fwqdKX-fh-*^N+GdIz8NL`{HMq z?PZWTcBk#zKVK5lemJ+H^{dd2%F_$8$gu3_pKNk!FU>zCK0MGwZ)??;82r+QZO{Y! z36FqVSZIv7P?%@?^neG~w2s9x^^1SrUa*d1amg=eQCP3tY~`We2FA~%waAtq0`u+A zU~PAjbck{M+~HuP(+922qMH+EUB}Z(XH~JcZ}woQvtb>5aTr}AMR*U}l8}HESbG57 z>=2UDP=G!+5WgPHB3x?>PPCiEEj?5%$;g~$=uR4nCzBXeYjMv60VCvXWMbFk?R!h? zAThT5Sy+DE0&Bckv}O0&53yT3iSrJ#H2UamXRkP;!)lDKUbV4iBV8X_`+M2T^n$4P z6GicTMf%p|2RCk-nT-ar_&2@qr@O78vFQi*yMeui%iA?Zi!R5A^$P>s2S{`u}qQAMZL=<7-lwKu`&LrRza%%$CEjcq5G z30;N0!k^n(!0_B`zoQd8ePXNdyaGX7reYRrHe|f-^y#KE@RU2RjN8B~eBhgu%BFMd z*@=w7bq4o%7&E7Ys;>WbAL^a~c16cgVfavn+r*cUV=pb!j8jv)WO}QHS{tezLpbKI z?^J!4AUQEF{2X8Nm#Ko7StnI|B#pX=U%j1;3oM#^d;sd-L}mE8M1p5JDXA=)Y-qLzsVz&Q*YC=FjrIe$i@|v{vw*=9L)Wzyr$C7J1h+bcO6@5vV~Ge1P)B$i zhScG9YA5Wqp!Fx?a`da)T7>cqIi%Sa#qP<*|JKyjdn-X?(Q_uu3c^UHFA)3Q&I3>l zaV0Nsql!`ib16ISZIE)dQV1dR37FroTIknM#EHR$pRxy*y>6NbgQ$ISN0)E4Hu3l3(a-^&1u2d9;` zVp8zk%J`>`L=QlFzALG0?Y@td{Ek!je`xyZs3^bhYY7Qyksd-o5J8Y`hLA3imXs9f zp<{-WZlp`3yE_Ky25A_&yM`R<9Y5dS`{&GBv)1$6Ip^MU_t|?NK8T3Flh)eT!`?8c z{Ml$!@Rbd1#_G3-k2pl>j{Gz*{MHX={F~h)Oqdr66VKc|b=5^io^odGQCxvhCwcdS zB4o$Rvui~9kv;_dM2tI#w1dLa;+pZ$0r?EkKnqFyUG>~6Y9Cqr2Ri)j2j(za4jhe_eIxi88r$nn~30V@WqrJmx zPL2$kbsPCW34q&&iR8N|le?(;+-BH1=oHhsF-BX|rj^+8xf#cp zl=nbDNB!NI2RrPZNb6)dC@m46;muuvA)c}&JAH+Usc$cd;F(c2;`E&1=K6{aw~uqQ z%@)&jUFCl7)Q0B(o88-)+12pL@)QFVz}-yF4Rt2IT9q$t6ZqI=YYf>@5^2P9-xU^% zaveB(n#!?p5CL^%F_aQyi$X+?a~|%XWWSsa$;BWK7&Z$I45RiuoS)P1l2*JqX*LQM zhy?8Y`}#D=UG)kJ0CSWb{KuXz50Y4;-byhq=U*x%bm>J3%#Ofg@CV_FnRh)+1;2&I zUp_3FO_T;H|@rd@j{oJ2W?dR0aZ8P!l zYP*TbKWhpS!j-3CrD-3So4Mp-Yz@42M*F=Z)B?EPc&!8cZd#-Ut$%0RV6n~XK9sIu<(o9mow!}q*g!a4Lzy(V&Lv)E}P2X3U6nr z@9P6|VsB`~Y908*K->x7sJMFg=kw_sGJEtsykVKc%m~dfo36=h+@)KM!Y zv$qGY7SM;I{U+ieZ#dfR*W*KMOaoTih31L$`r<|MM5iQiG+O6znktoQhE4j}M(egK9-Vy7jvK;B% z(H0FYm^JcS6RfEcpzIwtre68d_I%9tD~eau#^1Zsz7y&m|Lj}$$yKA6WiQ78%O@YX z!ZG5kh5ZTlGyNM#AX8+xeavD2Rj|&u<5^HnR40j>Xv7f##Hf|# zZ^kVSmRx>qP8GYP}8m*p2vrUI%*|f#c?esb> z8{glf&)9#$_46S7zC&@r@cuJqjmq(A4X_=}-IIF0HHr?~(Rs&=P3S~MwTe-d~)SCF~l;t+Z=0$e3VH?;} z*mL%);a#B3rMXoKDN4vZPwCB3SSJ&6A+zx?Zv;6Sde)Y?=*J(3(j%)lQ{%6 zFqB!$1Bh#K)_xb5KAtZHx}|t-7clYioiG8BVBA+7S@>|mT-cpMY(M8GC* zA*7Fp!15vuTf{I^l@D$ZH&5r~9$RT8UcFw39eq&}i$>jzE%@}l+BCv*HC|L_7K<~% z60<&*hx2E|Z<@UI%*PMK>I=`n=kG9(gn;+=OnV6(1zfMEQ+VWLqY-Z?dsYEtrUN3w z6xP{Wx8J6yhjF0c*1Id3&fbQNgjJJtuuoa}W_lBxZ@iconb&;@=Etq$BIQo4`YtLqwI}><7#^v z9Sn>j(rV`!1&Q`u_EoEul}uUJ^tA7FBG5RpoA+gZp9!8np1pV!rO5^5<_M!_?QfhN zOp>p0l8ieFl8VOlpimp`aY=gqIHlyRP6;4AP~4bN{pKBx=pYD> z5Lu_=3hM&N9X@n0%g#9V?_Gf#V-=&+1BpPb?k?i#^=}CTi^K$V4zc2DMy}U{H&;XT zUc9Yv7$gVL-TrZFZKjjISq6hn`_GhEp56+2wrXS@IP~9^cx`@&&!MQ|_8EO)^T)K& zBm`gwq7y6}cNRsGv1@kK1%uPovH%MoesAQe#;40aO0R^vH+hF>jpuG`(#45HNAUv) zP=Ne?83Q4-sB(yEsbPG3p5 zW($n~--R)W>Fu0&B9a#c%_zJBr6I}rx)3tKk^M-pH)$y= zq9Fg2zq^xccG`%gUyYMMki&E-jRy24pA$KIE--Zh8Q!o+-gL~00n2H-E_*BnYVc#y zzXUDhB&R>*GT5nOQFcv0c%lG<@u%eTbu=qi+cALew9^N1ZGaU93Ld1tL(DYYLldAv zKUDrH1`ThDHe2<|TqO7+`@HPO&#d0JI|G#{1IwGhMeDTYmw*1nKq6Y;e<5&e=4_ON z_;QsIn9dDxdk|k@C`e5=fJ&&?`{D~0a0>eG$)y3_k?~sc3EH`wO?f^}d%HUjvV%ds zzCJFbQJjCE?95hFN27%TT2xFP8Ww9hm}OewfRJCczXg@(+jZ z$-JAt*5cqw9tVSMX;O)0Avvyj4@DT`zzy<(B4kWGJssp^gAthCO|{r9zbUt ztlK&oy(W$(SQF{2(Yox&vrU3avyU(MlN57i~ zLnf|ShhqG+pFLL*X8O=?hxeU8a4sX(F;^L%Mmjf|AQ}z*@U(zB_j11R_-}^$W7L?5 zK%V2&#fN18>7Q2xfBYz_ojP5^R^twT9tzkyzp}E%RS}6s1n*M|kM1BUi%VgeZo8{B_LholP2J*=8||GbEh!maeKUilWE6}^TWn230@SizG?dHMC- ztPJ>qalemEJcc8-LZ{yDf6TDUp8ro99pwaiWcqk)8CB1xkSdN22yPp>ZZL7^5p)MU z-X!Us4WkSm#4%8~AM#kDpn@zY9$f_KccKH(0UsQ0W>Dj1nfelaY_IwUEHNu(wr(?S z0nd^-onMenA7J@pq#yr^oC_yxDZe+*8a(CbaVZWTs^(@#CD*W5%4&V-3yVFkn5P$~ z)26~zr{;>JmhpEc7mtMBRu(|*aVr(DBCrahe@pQ6<^AAC!#1aR!eX7`m(uq#|<;PsVt zp&*=d)9uvSbYt^ZJp4$u@azc3EIiqKf*Ho~qMwg_fUZq_CSmj3mZ(&l@{^C#%9$;? z87m~`Imh&lCVgw1tDoQ6fx6YiuTLNnX97wDf6wGyDnRysBu&qMl>@SZ__+D<#-@m0I3>^-L6O3A za%2%4m6TS4HayDsgc$xL_V^~%2l-trpgAU875`O;*XDeRIc73|H!BOcdd~6J1s&i( z$DEpU1?T9`xWY<(Ef|V7@x!Q17W9KyZd7oEk`C|*^g-|&p`)>1##fM%uI!A2KtXP> zL*wnNiEA~IMm)wsDB(Z+hwQedp12cx=Y%nw+Q7B>R=s}*Iq(>laNMyxU=wZ$Iq)4D z+Wuju5d=6%PTKS`BLMktox2XQ0=`j@pGs38US00gj~uFoytzX^7-Xfn5%Z}!_d5@N zB=QIoTi@{J5PLcwQ-n9s>KB{7EzXfRx@M?mnf{ya&AGQOtPylU+z@@rImjTU%Xe)x zQ_+f$+V4IZanAK#)S8j44}~$oWi~hA95)hdcj0&GL+9L>H@7%8I1n*Ex*El6J~YXN z-{K2_F2ByC9`@eY1Yohu^KT`Pj>eGVNDSN0ev6|4e9OMSzsFR)GIjHI5SEkq`6Do zC(s)d@C2tTB#&4gG?xM&NVx*|`$Q%}<=~Fx!L%Ryp~kX@tFcbZ)Y5wzIG8D43u>qU z$ktEHC4*?*hKkDsGbUCp13UFOy?95VZPL+DhC2~sKjE06@s82YEiRj20DIa12|`Us zunj=IDlRdLLMk`kxi&Vq=~BWqz4`--kP!Jx7c(nqhhP0etn~Vz)Y}wvZ#^s^ZY9yo zS~c#%PWvh*o{WvQ>i*B65SHkeo+FZG5Ur(Et@f!DGgnxbYrIwUQ&YrLpQBla z|7GY$htLU7OJV(h8QD4fYLfGH^noQ+CAaDkj-FiM@sxE4391L30{Xi^n|DJYS8`O? zjqd@BtC~yzI)|+q1~Y?yxC&ASq51#y5a+Y2!+XSibGkXI3uICD+pY4slN|of1D&~W zoabw^g#9G7m{i51C|*M%nJg#Z`i>O>PcIEO%_&ON4TI271)JeXv$HN&(oFzY_9p6= z6m+X6BwKP!@dbOg)d&HD0S4GW-_%uVKi3aagP-pYlNt)fHTN@jMkd2sZyk?;s&niZ z(8SmwPl=4d2~LO!aIa&p^}?_u`oh>t;VzC%bB8U0nc2rq0lZw}u@XgHl`L;HlRSOWI-rH1c0zEV30zWA*ozf8JT`}xa!=!hBdxTlS)DPiip$S1<=I4i;}ajP)BQBzHC+xRXxT9%Lo>>q6_E$fCnh&ztXy@*D zm^EX)xIG-N0kpThd1;>$(lk1pXwVkn8)R3aL>AX~wW`YdfAwv4@V~s7OunD}LTuv{DcPzvW!JYj;?tQg)XdY-vZ53c zNMcujn=@hLh{S}=Cm}(=<*VgI()BNai97x)Ike91d!VMs{{6? zqP9~ofhl&gW``3%ez}Gc5zR-`C>0{JjAQA*j(pCbME63yOd~Qe%P?eeU6+RRMA1hSkob=I;n!Z(3L5$ys<1XDQ!*XX z%x!+u$o<2ki8|Ae0fFpFGx%4+#(NG{*r#ROG>a`oaPhR>G(igSY}Z;`&(M~0mFGN5 z!O@VQsFg72>b>}{%N&;3-FU+dxx)Nf^J4tcQZKIH@5LzoEK%_^-&_kP+GcO|d6%&# z@#8P0RXkI322Zc+<%A%Tk%(`K4HzW>+K(K$u60t=rhc!LIPLFSyjV)G99`6b37(2#j;TW}; zz2kz9a)DCi-u!Lz?OosK&x@G{DxRDAj{tZ?-|dUJ1CpOf*keiyQ7j=4k$RKtt-u~m zyDRDwCsE=&F>~+>+5Ra#A&~=4wP~7cTI$TgU0|6(P~=@+?C@p&vby61PfC0h2MX$- z^@3E9B}-i!%&y4B17PVoF%&9uaLcnPF#qv<`mx9Yx!7C}u<~E?+E?>aecBc6Nv5tp{1X?5!bXa{+D0PB~7n zNrb!D<61$q@m&t9t zDy9|ljQX0@-R5MdaqGfEuJdceSkXp=rtsMd^Z6#SxvPm6>4x^kY7Tfa{`iOUBY7>v z@|>LNeADx9KO=;HrA8bxjwLU?i|_R2ddt*1KQkg*NNkXj#FX?qOo>3bp|v#Koh)rw zFV&sWd>Y$Dm&5!e>!9YGge|&llgNCKd6-HNo9%jmFiSO?YITkBF2@l|{bw&Z4o!kL zU@kpmk#L#ZTzJ%P`)jug21)CWTQscJp{P3orwgZO3TnNB1$M8fFvA zJPD+oY_4iP2kDV+Rr_Z5_j=?WdJnlw9V({vr_Ck|@C_ATYVGmnT_JNX;6LzWk{X}T zY^CR&Kb?Qq&Msh+QwB`KSA^KhTEG{hJ*wwfmfqh-Id7(W z1s)%cmEA!jKK{frj!eRESk@ov9S+HL-c>|jPL&Nw=A1XqBO~6KQ98jNpyl(-c^86m zS6N4;ouiw>1XUz$=?N!%$Mw_G<;g~@L7Ky?2e+e%^)u+xWJX6X$<3V~U(|(YsUZ|K zONnev8&dh4z-XUNo&oINbri>~Xzp*JbgHoTLMC+)Nf}T`^%Tjv*HCGE2QQA77n6x+ z)8sdw$erdme@D#Y^gBtJ4h~l5sLE<6;}KLZlq3F5VY|Qo=a$!NpV&f|FDXeC^%A_~ zy6(F;w!ou_42Y6z@QN$>RSA8?%HovR#OjM?6r3iPt#BUmmrDIoJ?+2Dj3oJTTP`P> zK4-?|AC$oqYNy95RvaaI=G4a0;*d#A;n4P@9nomK#C+pr!Fu%vu56oA)WTz$U9qU$ z8!cd5%N#uEIiF2mRst+wd0=r~|8nk1W!fx$LMxHSCgthAgtdxcs-A6~S{`2#wWqVTt^j@CAC@i*kJ3JJsMkv@?`-Gq zeXr8FV*PJR<{q96`LTIuUBQJTiJQ+JMN`CZ>`hH@;*PqqH{3mNCK+)iypTh=Ulq_4 z8Z2{%qf>QjZu1lt{A1v4+_q$6(h`BlJs6ONzsf*7W<0hrw93fR+lH@#70l^9E!8oT zcG@?JI&2r!@i2_%4!QfT4|L#~Fn(50wh&_5@PxMhm)!8k=xjVH$zhUA=yW?PJYmef z=cu4=l{dQgW|%S|nlL_M1Cs%_1@Gqdiixq(m&ni%z9OR2?xOD#9Ly|vq1B(Y4kys7 zc~GV|kv5Q*UYdr~2K;qwIf)fN^LF(VW|_>uh5eTM+4ITp5@KKuaJU+LUE-{>n;GCX_|5 z-%aRN7U>m@ArjISg9P*VlKF`5q(yBod41+F!VKFGS)3CHn0B2uNAUui3sG9O?21z+ zYkpa!ZGsK&d)C>CHqo~YdMC_(^LkgflxG1}Y_YQOx(V7{m1Xp@hiR^yu!8y~4ecIs zWVKT9zkijXczM8(9&7a@J4QUlwy>KqZ)Wc~H(54u)ay03dRZF(m@^_?psG)@(aU(i z@|DO_#EmyOu$$sNSyHJxiWd!nJ&1v}Xy-TeO`%ae{v1eDj5IQP#^w+3?u$sv2K#-# zF5Pmb17a|84m9Mko^ey^1++K&QuSDZRCbkBceDV!r*3#O2yP-Y$5b?|Mdh7W||tG=v~`sg%5x z@jT@S_k2)4;GV{Kh${MN^V(T$pX-`?(DpO(IA+Q3uQuttrlHC1%kfDCl_{nXN;*wHGYrdxWWb{OSt<) z%}3)>HC`3m zS)6D-b*_0?OkB3#JdADdT$IT)6)!@OS44f^}|(Kc?&OLf%cF4g6rnU(lf zWJ$cgVvZ-}UD$CP#6{ymwaA+{&sEux?fMW?qOLq)gS}wNXZuDAexVqDSADDC8Kt2` z;Y5KPCl%(ZT-FY8-K;;@Ya4Jm;k9_HIi+Vlw(pvT(7udLwLItilu=;R6ei?#Aw8eS zRBHXzYqB1E_ggjt)fD%l!M-Q?EvE;KvKx!OytYlf>V|riD)j2AqqZRQ)8vhwMJ54i zo@nZOMURoHuMrG2c;9b}uZrr6#}$h;4@5!|g#7b6axSkQ~avGsCGyAGrGmNk1<0z@H(=vrK|B$3^`IJvhf#9_T=~VaDIbOpRkH< zv_>?3NE2E`yjgtk026(@GU^)>ldmcopk~lzXiRzp`6X*Sg|3o{QY|*AsfsrOdFdst zl_YTT*D6-baL`g}Y}Uw4@eC0$5Z)u!o22=duDWSRJ2~50`B>Y9lID>%m%p&DDh}6} z&5!x*@7^p`n`$E1azeq{L6s>c@%K6vj_GQ}sx)s0H3r@c@@Wy8BciF*#7YW`QpXFl zMNxFH|AN^sbZ-cc+g)0!;*Oc>K|Ied(@J<(3=~VyOIf^b`mTzN7ijvJ2U?72-*_c0*GGyM=J`#z)bsFMknobsn559+MX@$%*ZL=qooR zz<(Zn$~VK2JnDPbv?S7IrX9uFmeFkMRe%%|rWMCKzdJ7@zuR}L!Se)9+jD+eZp_Y2 zD1SYlI4i81HB;}_t=cICx_7d3&bIYT} z)xi08+er)ztCf=zP*Ll$n60#yDK(=!Y9C&u**5)frZ8F`yC-vN z3NYB!3y>j$UciY7aYBj0kLvM{MR|28QK zlDE@#ZUvJvyH1uT} zh>(YnztJF=R`$5{3sGYYqMG@zm>eoZ?etbOO!lt=DZR3=+~@C7FMp}Hzz@hqu4rsZ zCp}Lq>+6w#@<8<^;zi(W#D6V7?a==c3m5#{uPThrSU`XddIxzH4R9L^U%e#~JO+IF z<&2>5WI3921f9?SCFmEtmWqyQ3fUkZnZW|r%c&^1^vb=>prt4G=yGVo_}Ix}6Bw-|FyR=KBvq{nsJ^o&F~o zb)Z|te6^2)ijRx+8;b_qe3DcfT;EB7%w82%rs*e`Qr89R)@m+YzD% zU75!62Ba> zWXwXtlH|zyKNR~PVEF6b$_()^&=<5gr)N009&@8QvPv)pps6YKpLmS>YLoRF9ilOQ zRO$<}q>4eyk^+GQ=fAMi;m zjsf)*k>J(65?T|2?)7a(h}mC9!@Ld&tZd9#mQ{qVEdJ+Q`bNU%G)G>)TlFtHBruEq zrP6<_1wY`E)b4$+k;x`MP=w{^=^{8pb}O2ObZE^VkFa&r`_PoOYgyaw<>_^?2&p3P zgy2c%opU-Gs{HP6lBpOBe8D5J)J^y3o7W2x5ln*T_r8(^e;F;?A`5x_8I}Krfr*}B zx%c=@ikmvrHzv?2z(OXI&)wzXea{_z>137)ybpJSX=DnA*K;FX(>oa`+8ZM!I!mZh zH7sgVLi9+#i>=fX(rq`;-*|^hzRi^XRB}f3%J69x@a13lAfcq~Yx{26Qdr;$)P(nO zNYmQuTo~y6(x=fCZTZQ|d&uGkAly6^8TS?3t)9l$0Z>0tg2#LVY2$fJ0f87ytZJjR zTXNy;&4|9(Xp3FC?G3}gDFRN(DED_-uiQ81WF3~6?tLE%rDJu@vj|&1)5+a&u12ERtuA_%jx?P%)9Dd*8C~zUm^g2UrirUC+8(`~C7r0p8!5_`^(!o( zOC?)=nU^(9r?83&>!j0fx5sBs;H8?I z4xfXpF_RR#xo3Y4kn*(WHpNfU#e zVx7H^PBM$38R?LwoPXwL{*JB7^OWjk$pmh9N&6N2uIG8F)N8jCjlwkc^7z&xcpZp# z;fnIZWgP&2*A%osH>&1XeaOG$;ccI)^ChL86m3@nF$UjC!+XQ*#m>2IxPlkf~_alCGd9F(T+PU+rAV1 zPYG8G{n`YZDE>ti^s7LoEgbLZz_E7Adxsxr=+ZHCs|hG3&;4*;o^o8%v{I0UBf@%L4po ziAXzzrrCFfN?}9F&q%$^pP$aDuwQUhS`)B4QVA^FN>{DZty+=`bgec}2A*N1^N)x# zd|!hTs9%k!nv#)u-AlIG&-irywZdcONQtyx!8{~A|CTn9oIp(7ltRql5w!_3BNlNy zHcQKND+Xy8c<#ijm}Xsnc4PKz-MiJG?wOgCc{rTlD9fT|GoMRrW7>R}z|CK38LZ(n zivrpnsw}$-&J-_{MX8ndDsk+rDQ{1X&6=d$rkp$?_3 zHwp(DQyrZgj6BA9&^fch7f{i`F5YeB9Fxb*`NZAKrUP5Bvz;U#ytO%sn`yoJwH$)O z!*jBR<&dgd#V`>Pu4E_s<@AiD+9NO)8LMC5+g9|0YYVHEdL%RVCtVjs!`HOrw*yDn zieY->wV+zt_S@Fq`UIZS=7alo9Oa!>jwhCq2K7useR|T%<%_&Yp$~Lo)D6(LHEC(( zKGD|YSJyupXm-M5E4-C62Gh%DSI9y=m6=gQeV*;6sZLIQQyk;FK-|rgP*+4+QPJH5 z*k`Gw)ISM+KtXl6?1-S?M!%~L`*nD;gC+~5gFgcw#p4fU%hS-Uu8Nb=_4}ja3vTmr z_zPbrIbJsRo#ou-B&S6g&&ak1Q@8LLUru=JMj(>mCj`&N%DVd&Tq0x?9miyhH!f+V zcX=E)`^x(k(ne+8TYb&l+Q2-hH|_%iUo{Xo%T#o!TbE~hI}!H49T&i3rq`@)YbR;U zp)eBE0t~lRfit15+&1*%w?{_K9C*D{4t9qo$8$T5aGVa-1|OQURkp???e*dD zY}bLRMW01VkM4v<@;eYe5QtDsy>ya){Mx^jI9a^KmZ4Jtm^FX3>ErCFoa%i0+ioj* zaB6f5;<{&F197d?`0FLoUu*ba^C6OH!XzT5oOnU!>$_g9icodFTV0^q^f81_Go=}v z_ij3#+3`h8rZXb({KC$fHlqCy86|aPcb$GQ9;<7Rxs};e$V2;oNxKH$nZDLDx@$9> zO|o(}IFP>o!+P3c&9?!~xW<(0eMArEfT*EkKF;doeE$ zk!x}dF_zd?+QD}^zUfO6$$d`9t_Q8hVoGvRA3M)F_n}UEi1@n zT@qWmTuWEd;h=x`ox$jHTgH>E5#^SB&at-k`GG5WVk32EqbQm?v&N>4YrC6VV~lm< zL_-zv0M?a3Y|WyvRGcHkT`IJr!lArvkEH$KN)5J(d-kRccDj|<9%et6vH)5r{_*7t zb^s_Lw8oWJO6E;@(7d35yLS*Bqg8qXlX_czf zmpg_W71B-LVSX3!A$eToxLqmy?$Sjrv8HNeLESp}XaSU>2=Z^Cn4~rsutpwef)C ziKO*ZPehi|GgxMa(ToTnEn+pWcPu-T@utbt!t?@o{EMcQj5dSz_oLH^WR4gyyjO3OyJtT74E?{1GZe$>G}v?FipmavMn^*lFt6{W?f)4-=3vh2o(DqZ32zq zICtZ(Q`Ll-t$68IG|#@R)30a^{IZjeor-%=+fp1bvGWCnllIMa;9yg7kO{6ekT)Qc zD4Vz?GH-FEMgU85z9hK|6UjR^{Mm<*#DB-UqTQF`Kg01dQExCQdvC}*vg&hais}oN zgh|_MbvtW&9hGdKC#PZ~J+JskJeT|LM*|ZrE?39e*@|wHcYd%~`(lGyF0c*#QA*^z zK6KErDE+QAv{jcX!dl^^xdissWfjh^$hAFYDoX)N$G~FwaC>UT75p-<+EC?SI!Y?(;!ya^N6Y@t(|t4tj^#bHR5v{SH^JAn zS(;Y_%=ZtfnPZNV2LOB^-PLvcuAF`@xcTGhufd{|fVb*ZVd4V! zNX>CS(N2&cpS#i}IR^-rY{$m$tRa|7YbW07r;dKfuu~CcskLg#yW;!LdV@Z!FK*KJ z95X3)&L6icUl0b8mCj_iFGKew&kPn5W5E2{&-*(h9Mk;gPGa4BjK#dfkrxJaJ?UQr z5#BN11E$Gimf}C^uU=OFRHHDPmu~g)?|*1*bv@tqVXFm8)r06O6`X(d88@_gR4W087aBnx>&7m9O9nY;|L2_-pYv7?GJtP;5{StM}hummf{Mw)^X@T&Vi#E|2C4_ z%y1SFkUdV+AeajYleoTixSO$bJYw#%0(PA4qPp)qzM`taC*vjNc{<}ebay2g#X@?v z>Q9xtH87qAz9b==3cHV^@u;b)h&FmiXWdsHeDRL`%Hv`E{?k79{=`<1Ys^ZE-t{66 zQVXL!2C<5tlX#!QP=VL1zocS8WyP#G1j{`kzGdKrdRyVdAnWIVUiA=hX9_{5@*7ILow(m_F27GRdZ`kCDf4pHjyZr-mU4QaE$s&?f_i4-C_tq9%Zv%jfmGMxz7P5C~R5lQl zBx(bnf2vx^qqmRJxb4UQPV$M5KWG}=nL}Gm#D%WB^?g+QD9vJ6v3~jnkbawcLP3Sk zqgnVG7nfj#{mI7t?C}W~WGnuCH=x;@i_!-j%Z2Xyt=BzK3|bpopUBtu6*Ty$mE7#v zrruB>Fv%Bi`r-R)h3!9=^tjU)oCn=s)8}sK?dBR$l5a2rO#{d?uF)3Z6YPr~TE4w= zHjDwL0#;Yr4#49cZQ1?gEO+-ii>R^6XV177HCrrsdOjGHb!i;z!?C8%yaS{a|kBFCIvZY2E;p z{kBed&=^S>dtFp9f~%PQ%DZ$wTBax}0$BoB*RafGr=ANMmKO-@jMNTX@#b#!Lz+xQ&zc~V34Zq{}tL0yQQKuL@pPxvyvhGU0nCjsiH8i!;)G|CkakUhyWdLD zFp?{4UvcS(GMXJlGLK9WQ{CedQ-=vpbdlamxZ+P@n3<5->74f1b9EnN5B&APD?N?} zo$cIaC||yL1X;{)vkIW&VMR?t?ag#&fJ>mNNQXe8Nlm z3?Kd{EOTaAH&zVGOKBt8oAiS7=)hZ9-l5>r z*Rgzmk0V~In7V(ZRykr5X|*MwXiki6H7qigX^BYMHOlOm{z}Q`*|2jac=BxO0MZ#@e@0pTpll}FT5)9i;hYlurcfv` zXXu?xO2L-PAcW1f$yU+ych=(LT_+^3?2C_qN_Nh>7P36ZOWRNToYy7Exl5=;o16IP zJL;FOYdJq)=PPR}*p_`fIuYw@KJuuuEqhxqos(PB8dl~d$~l?9=h~;Hoh9E}>1Q=I z(EDbGquj}Yin*l4^DtE?L(6WVnwAk0wMEB!u;JBO@GS%3sf;a5)Z+=)xbX}ID~}hvcepi-E$>E zeG%|nXS<7EphK>Cmz?Nw{aP*qMl&h{)y-Ga{gWe>NE(zUR0hB0nFK`7FH_b?*BJBx z4SjnbCI6lHhdNF4`JQR=R*-hvX)1HjV_%^+*S?SVxyS--sEALGc)}(8x;j08x01k3 zK%CAW?P~;&!fyPkHtx$<+Sg%Uu+mK3yE^BSpJoqESG%4n zTXJ55`E%c&tY=eSZy?mkUWZh>VXN|~xW`z;EaJEuID%HxdA(E;jCgU)oVj1c1aDiY*NTv>H*H9dGb~aM($$V`1z#QoyfT`L-@2f}sYZCO*lcJV zY;SX@`IibwdDtX~P<^{NF}Sxv0&{GJ4K;6hB9~+t_Qs4_C|wvUoMi zEVUb-=%XIVPud}5kJs8jCN2E?hB{bX1G%^Rh?L12iMtirJ|lyt$;=Y0Vn~tYu+f3y z*mFAOFJL=g1*jf=adIuYiIKU=n`8$%WPAu5O;{>9QXGk}WKd0COj{c5A7E$2w_T2J zX&32NUaM>P@ep99d}X0rZrszgQCEWt!@-o8T>{Nz4~ffLQ-@j=+){)~uO zy2^;=eha9zPmA&1rw2P9-y%DVUay$%7TansT3?hd08JTGtPWb3q?1@@4xvCu5jN<5 z%z!(i z>vS`k-{E^4gYXi^RNAjIbGkZb=cFPx8PBY&UnMPJxAHim+<$!hLu6Wd(*37V?!03^ z0cu2<9qr?Cn8eY&@1BS>CH%8e;QWVgj7*vTp_O~ACR4S0+U%-E(I@S)UJCf`oMM)Y zq%G?4&LVZjq6~Sk>emZiIdh zlw9?tYi0M+_W2x09}UH#i-(e3V{XJg_bKu;u|y*IqIUvhxQ*9 zD$3eoZQq-vZcPcjJB<5UA9|^M-SYNo;_^s!ATvHfaS76#kz6!WHltT0m4}-nCNs~<8 z+tyiZJkJfqUK~EZvf1Hq+dzzAxF2X|b=Dh1hv$yy@f#N?bq7uEM(e%PM(NIEwewot zd5!yYjyo*B66mwo-}LqbAJKSe&uMz~Ooih6*XZ9@Nzsr+O>@+V^cfwzN-kcm&-)fxET9|@Q|D5k*2TvmAB!C5) zgR?LE7Vww3z$4bmPhct9RJvDI-`gH4w41?91B$x_r|*_c#+4_J^!Vfjl@m{x-Oe8j z>-kv*DK;8pAtW^`=rV2FE4~vqoPD-I@A9>Ur5^?@2Fs_SV`Md{?Tn)DZk<(`5kkuewvNU#Xx~zVN)& zd2$7Oj-fq;(&z;As6}jQKcO=~Z`WRyxjhMWu9{HD-LzGAu>!>?~u(o6gct>kNE-6j<8`bP?YI;p50 z+qdzBFe|W0oZd0248U$BD7}6atLf0#mUBv3Uq^dWkDwv|)LL`|`0sjk?2To^Re~k% z*u~vU;9Au3RRgWSW~uO>TyeDs!6ENJGe{|%GyEiqSQgWViSZ;Vgngv1xLO7TNmyQp zP)hbn9){VxR|>U7FWu-(py|7MCo(vpBAUd1t#?}RtkM08nBhB$p;J6$)0j=SiEg|b zaIswGwYs-5^7zf#*(Y@A^ei7r_DM8EDBTZ@h(v`*YuZpIgO%<)epKbIX1ddA9JYoY z&LRy|R9+pUxN~GZU)Bg@vgv~hmdUl)$j!g8P0Qy(lQ(|<;a-q=+Xt>vo#{0*XG|gZ zm!ms)*0md>-Fk#GQ>PTCgiyFpNeJxX2(H}?!S7uWB7uz}mU^)YLl=ZxW^WCibEb~x z)gh+I#J5w)F$O#;czEkF^6Kv`t{%<77g8I;=raiH_n#1MPL_$^>V~O z5aJ)gc+o8!%+}+ER{+1PD09`^o#YJ_TQaIud=!HZCJV$uJvlj zM{1T$_#dL+BT9$K{!|4iE#Hkm?{@08d4WdMp%f?%A%gRZkj5eYJtJZl&!j&;Ckm|} zbM+s~Ma7Ezf`qWSJLQ7;lFlwL@S^@uu|r2m!cstdgb)GI7&r`-1<4Nom&yVMpthdq zh-tR6nt>8R;OG$YZ@q9eipQQD+euEyXoG;8LCKx*Kym<0{O3jNTLNStRXzb7BbiSJ z26YtV8W9uwlv9@;3;Ww>;Q1@YY;CODB553|k6TH8H4OjnL}cpnB$y<+BHb}*64j3f zHWL{xnUIjFQPBp2(%}@x*&)Fjv*F%K#KDY&f@hq9*EEq-Myb0!7i71WOu@)m^yfpy z4}x#82jsv*gw1S`)+7_9XcCE-pO4kW#ABI}kncuA+ms%c>>q5cwhj0Xe}5<#5!dy4 z{>K=OvR^EtV^V!?q&0S^(X(;Wh};Y3)xdx~hMnBumd(5ieRRaL4~Qyc8<&F@gQh!O z&pHhQwXqY)ps|Px);r?LVN>IPjluUU<+Q~cwcyZ=fiDUz0tlVKwPAGj1;iz0sR-g1 zT^@!4S12ODMMRK9q;$~>a5q%D0sI8IKADg6lljCa(pICOwR9s$iC9xP(m2K!$mKc= zQ~sdH`ieBZWqh33Q+|_8VzBZ)7aAF(!vdnue4d1 z1g&HKT7+{JO0o@_`O%NvJ{-M2e&{eZGD$$hJu+JW+)WCp{r2Wh+3E*&IC3Apjh;8@ zyp|L%M`Bv^(@Es*g6)5oO9zwW$=`cxU>P-|;uYpF-X{$biBsz?#B^tqw|DXc1`IYj>?XhSmr>Fj3nqoDQ-5FpzB zo=2*fBBC2_esX^D}HnKyZ`IbyT{c5ZU3OIA{2b4e1WM zhbIb$UM%Y~nVaiEZ_yhkC3p^|EdQiL$`gCK?+7Iduh)xangr($Hz=t8Rv^9-gIW%t zDHR<))$Qz0AD_V96_?q(n&T#Q>vrIriPIzSVZSueEO}lYX9_s-YU>C~HPmO-tVS3) zeI?YSDP{NMQZeqHx{xCU8O;bEq_!=Ig{`r#%bR3@>OrFPpm4O#N8XQsIB8_*E1G=; zehZf>%5?B)REAkV;q_m>^-ep{0y~XISMG3i<)3`Kt%p+{3YeEnSH%rVPQH;{V-1+w zWICA8l@uoP$Et{+p8qTa6=N@^FzBTXmC&~A^oRHXRVRO>@GR2?m0LE~+aVlKoJm9b zvzUaeAk!1%zJYe)YC($dm7_ctGQqu9G%lIlOy-=3u7^AA_t~4%lwrm>!l7fyC|M10 zcx`+=+qk0?6kT2G&D3!T5)MYBZrgsy%@ckHHT8%*pAfRR1|a)`areMgO+^E&htQgyj3IJvr372Pe3q*{Q!*-ShncA~ zrM7tGsY;>T%WF-caEm-`{JgJ*b<$0VT-QJo zyttU*PX)W$6mV|UM2xhxea4eaZrZQ zaTd>B9zR$`Dp!WZ+-j!?cgFo#d)uQcjaI1e4Mk-Qc1*Oe$9lJ%4LWU*v)A_$iKEQY zj3A89&l&Aip_q?i0|RmDBT#YTJx_mbW!7g2pWXIxv93519*gu2d;!0sb^e&(Kb?s~ zz~8?nO!>1Sj_YQYoMSEZQ+f~iZddCn!ls&c3ZA*(JZqC5R~KFgoIu6_301Mr>eLH& zrkI`T(=5^)VH0lNw4bnOW>L=8*v3RwF}P4-GIm{>_FIPHH@Fl09Pn+{Pvuxln=y1X zaA%ND%S?1_g-rXPqgJAB)2SVT7-GsjMus;#W>o;NFQa34YDm=eJxwW%?SppvpeD8y z-7Nt|k2Cr$6?j9uLCG116lVDu{pKJc6xg(6B%ddLyMG1SXj|s)(jh!Gwm-SYPk-sg z3NrqxHB`FL(xYX#tQj)dKQQX)aa6RgO5N#hWP53+PA^OuGA_y?24^oAr*n+Ue}M{g9LOM$B5L;17e z{#4Ibc@Hee1xI`CPkq6bE01@WUmOPb1C-a^UFc|tlD*B+wo!$2bfiQZp z*g?VPuiBl~nzg}c=WuW zEQ<=jB^PUEjD}K^t$4169W2aGDUEf`VMXn0o|dw!PPmXuvFpsy>{dE`@j_oG8P!LR zp`$!7cbME44XR28P@#c#KCKeE+v2M?=R#beoA6pE)k z-Ova9m$ky!V`mBV?hTr3q`T=nY?^4$$u;$N{gW3G;M=jWu|J-}Kv^-@&QjeM)NnZ0TZqG|*ufD#7NoFa7zF*I}8>n1TUsU3l+X2V?Jf zG*>wA-AOIol!iV5Bcx)XY_|$Lz6a4^TI_8A>2=B;%oa|;+BljeLA~E1cz{^G2X*Hs zC3iKV^8U?O;1Xuh7EkU=+$*N7pTL9*)gzX|c%#Uc>4#D6XT+Yf1Cp~R(G*<1jcivg zrVR;+b?)=~L%RkYH7n#~71`6O{`r4Md_5+e8F>oABpvMOT2HE9r*wutkD zj8ty+#DKRS#&Iu+U#Fnd7|g5I1x)+>+g832X-`1aeDF@^1E#>G3?v*QVXa%iyogP^ zZOqxIK8|JfckcQLtHdwL{shYBMjaRRM6%;OhT5yHg_l zddw7Q@D+)-Eec(6`|-XUbNZW2D~(_A&>NPp+uh%_%Mak{-P7B(dO-9R<+*&)@jf5s z?VQA!Q5KI$0mTLF0#wYbC7l-2pqgy@cKV)*zd&jg%~hFtHyY>lz%bE@e#uUuijhHj z#Wzl!Vu{Xx+AC51*MjoKUKiG7J})*AAng_`nl}~h9bbTn=EVE^N48--CvR%cbZ`|p^0vlsBksBP~_WV z;`3PVN3%fygz4Tx^D0svI8;^;OzrHpy7%YxHWJxlW}oenUL7 zh3uDS#?A0W(|wVpb8rK4Gdz^na#efr*+G92WJg)~AnS?ISvnAI*K zygt&Fxtde;V6<0F_1ZU2*h-`lbnH_Guv|3;DXPVn1AH%So%ActKa2gEfKo4>6sHG< zY1)VR^(w1Rf}JbQp-RghkJ&8Ia>l5|2_v?d9E7_e)RNWZ!F-LqLRJ$F+iM{Vy<^o-y90th45G*tY2 zZKJWL(-g($37u1EmekCK)~dmt%ngfOzc%VF1#AiDq)|S3$NCn|5-4bqkt;@BlEK)j zg<%%Q0$H>HfsMYi@Tx?nueAw)$%Jo?H}|(NcLJ0R+Ox3{V01f{Ke_c1x_zbq9z#p# z3kD%l?F~zjQxL*>UeLExnit{D%P6Zgem5#k&`>ma{_Nv%d z<|Wsh+{S8=Ax3&eku_BY@)@s&oq?{>!&S~T4oKtWIngB4Oep0Xh*KdqVQi>Oq=Iq zH~uX{Iknto1xQUsPkkw@^xpU<=KlA6!TzGa9?!4JR)4Q36&3_|a9ULNlG~#BJg?y0 zDq~51rym^Z^Q#tRx?b|_xn4HlmK;4&Gi+eGr0JSuEX~3z<5zE|=*0)VA3Nr{iW=(T z&cnCq^ys$W3eQ)H%dQpf(+8=4ek>Z)PuWqd}Wn={hS*jg)5%4QmFCcdMznwH1}QLzUZ7kEr6e zxs>#y&>!Cmb@RpErsTx?Z%EENfWkafU}*V@E<8To^+K?*?>g zE{Sy%X84q%I-mi6RaZA^md9K}h>=_TM{CtQ4=>%x(=;!GqG@E9s|-|zugdRr=JI+d z02DahACII4c*ya8lweqfw7{%Lp^e&33d*TsB?jeK`0NXCx|T8dh$puH+zuHY3_z+l zj~oLc3&97#C>TO3qS+zbXhq8M#M0qB#ax~O%Qos)-x+U`=Cmz79T8fl-iaRO536TX z{V$KM00qr2G$}!1wHw2L#{f0Njc|>dh0g@*e&Z;$l(Lru8sg(nhuyt|R&G2120I`( ztwgA2awkpW38+Sz^7lW-dlvB`(6DPHVeLQ?ogpVeP&KeJ7w{tUM2K*5QVG4E*Y9L2 zyDMIFu8rJ#ZcvBW62rn-&|ENN9UtC^_Ofzdh) z^;ony0z>t417BWuH(4zfixgMQ@(Hm&XM%VLWbiX}R*{0ijmBX)VbaM?0Em&fL$Xla zy&22m`(K#{Xth2SsPyADib6j$F(4=DWgihawE`iVZ9#rWedYc-U^>zIb(tNi_;S_xms=DPfwOp@b57g299|Ep7A$E3@=NrskbLix3z(={6kJS6UY42f+O znp^|XT5eBiDP73&GLXGb3f>Ue@i~KEPD65R>qXhc0<4mIR+JpOwgBXLpAcv1rW~>-aqCe zhJsMxuKPB14$NwL1?EUcTYnaw!Cnx0c_u~I%W3xj>LMi{sMYAq<(bgEt0am-Sp^eP z6FcQ+oa+-+Ech^f6cubxbdnzn*-9*#HV)@D&tQh__{>gq`)7OKUqOhy^o}4l|JApQ z!;uWiL&LsB7d*cEbYC#}y4ng)c`jK0Vr`s6N-CFpAwloOzB!%ww6t$g&;-`U+!UIc z_e7;9syvb1+mokvB)``PK8O%rO#L8=+qZd6ZKoPsn8FvHLL|3eNbW;aEE09{(H{f7 zSq(k*R|MFxAa&x5y5e9Ec}*hlt#cv|QbRu;k2&fur~$GgIYu(+t)rzd76v@k`%U^T z*b?Rr{pi_YAGkA9M_FSX@s-;fZI>3<&9C+L?vN^At$C;LC)fRx-1Ar5x0@O;Nr?%D zBLx~dm(V00sbP@VWmI^A^PJ>ixNI+dPpB~m5v{%IAA*sXRbE{Agb8|p>a+wcMX1b} z-)7%BZ&YsDm9yLvb_$n$+%Q^tbXt$Rda;1f8#Qi=i(Jz@4UCkfE z=xmjSUQjM&A5)Z0nLK}>`MtCLdBkgqXn4*3Wd!Ww3TCmfI9oeTeEJdSe(=+eoGpcR ztki?GgVKZ!_uQu3TI2DHi@MhPQ4|@t%=@b+dJ{E`fJ9`M1g0<~SO*!CMqFYYA`40P zhsOE~5hSKi(4!S<;JSSaj8uQ8D)lZ>j$IrqQ6qaA)_Zamf@NMoOFzGP7t{PE(QUjE zK?)Q;;S_27_orPrRe>w#9b-5l0~}NUO2IU8a+9!K1%XyltFOpu6BgdJ)Q%abX!`!s zyZ4bD67-Y{vxO56BxsLAxc0 zs<{4#&hbc(K}vXHPJR9(i6~#HLQI90gd0UkjX4L|d4?c-8;i?`oeM!ioOu=`Z`7Qe z;PhfJ1WA{ISAy!mv@AC861NihJFB#-toWJSYmfirf8jR`iF>-~YhDQx8boBt(7A-f zTh4U}8YEXK zyr|&$@r&_hGBnv5Z>wi1Gt~R^01~Mtbj-eY$^PfP7|(0b3DB11KI9>z6;z2nvO=CR zvRkW9$+$I%ZIcTS6hZLRY%gFFXLB?~njI0b2LWqP?q)SnU2L`Qbhm!U3HMawUA%(j zmOffCW53N(!T2-Bk0IkuG&UZxT8KdPppzfYhJ<3B)YSGg^0;&kuGdr8?Bbv$KZUPKYsQPM@JS&c zKJezCNx5F9kO&@P2GfgMB%b;Y9~2OSIS-)%t^$(1S8qu$3%91Ru~dNrL3k*;iBmu` zH;M(9K)tu9jx16FPB=YUG5g!A669A4Z$%gid}NZEzS@izwk#s-YiO@x(vXW0czE%} z$D!c#Ij}~nNMgsDmyC1=3jMahT&JVTFfSW$=X@Eyy4g%|7i-!f+zQ*T0-vSof*$VA z?}j;HLW6dfH@B3hUL_a4Ygp%%D=i?=LQnG3>vrYCzZX*-QZtWpi@^K`X*q{y{F6U+ z!LbrtA2O=bRR#>#QPI%NO;kzr6{jc_U`!z1JEC)3)&QuW2=G8q;JS=hmQ+j%9C7e` zvrUFb1+Q(#&t!RoBj(5H>~a@(E@@xYnM=b8@#-9u)Ok!uey$EdSg=?9Z}>_Ugwz@0 z5wSiK&A#6$g5=U@!NW1d41E{O1 zM@-S|57V&nzETDW$oMvZj29Z#C9-lO`UT-sepZ54PnO0*hlNS^ZukabjYSvRhDO~z zj(w`;Iz5lDv-s?e&(DdXEe|PzQl5xGcIx$CXqSYzMvw`iRv4UV5)xkN0@pHb%Ti zrHlZVcXw_|t|sX_8?p3s%>i^CShrd?xQU$Yoc(7z<7^tjx3>}yIoQUt@b+$BkHv}w z5h!~X)0zt?o->S&GVP_8&~AEV`_{BFf;p7DzK!xJ;-^8N!fJdH&Qxna3YO|L1E~=xyw$!LT>hPUC!s z#ZLMiyp;8Nf62YXRfN5RvL4v(p8q`_?a2hz$Im6;yra&d>w3YhF7V2*VZ)`Z@eIow z@n+4~iXsFHJv%lAeEbutZ&y}K`-R^ZGZGLi;NhT83*CB zT@R!$q$N5cpHR{a&Jc5eXY_vTMzP&dl|j}u-MPHV$OEVphO?{-{EjE|M^ zGDDK8WMx3xWpjv&f1MHXb7-*~s$vTN`v?Uq+5x48;<<_}!3?jA2}8&5`hp?vRNJBp zt_q22;|A`PhK`A;BF7YA;blIrggxbCtz1_T4*k0N{1lW@ujaO81LNA%1^M%6v-^c9 zeau3wb|CQ%+u@ik09d2W@+lTvcYozm?hMF^65E1q>TvKCp1fH8V-Ut%I5&FjF=@{_ z;|mnA>M0&t9}}>i%K%mtsx?SKl}RL_Y2L4;UJKAPp;MB!%sI64cSLjpih$NTt7E(m==Vz0W!nI7#AZogWYn_)fana&=-SO^DpSZU}5o zfz6PPdvDsQ`$mkqn+Q+(0F$LIH)G`Aukp-JKXG%CB~Xc7!KK~JZ-H;&7Q0w$J@QKc z3?Xv#w<2{E?PXdh6+jb_o5_CpGymhcreL(6>}R-O3t6SBz&l+|+v9XCObVNpD@kx+ z0p{~Dg&(a~k@t?RTsu_Y{K`eK63djk8f85rX=7R?q1WN$6>o>5?%T-k3>$+?Wiogb z%%|(fw%@Xm$FPlmD2UuCK}ax_a`{X zR)GThl)LUE9}8G*!XldpePPB?VvexX_x|wi8P=Ml-$3a}PKf2Fz;uSOUgrr3A`k56 zOf(6bAAt#!R73{BjlSMZKS+Hkz7sW4ec-k)+z!APU$v|faYIOT;p{snC0sK~?ijt9 zj2^)0`^*pJqv*C`E%h^9&BKY1y|dJjhOm2(+C&s;IK|HW<(oa4500uY8*_wt*D*2F zLXi!721Z|0h;eenyUYV^_iN>4=)L@)#hS|TF?_EFhIfw+jN#0GfP~`uhy$y|k^Wb^ z%$L>@B%MM^WSP+^dCm2^<90iRvY=g9jo5H)tlA%W_iP1tlHo>PLvX3%VI#<61XlOW zE3H|$rtT#5N_(*)Mpd~Qgqx9nfUOl518kagr*DAL*XL__atVLkYcVJN_@S0 z${c@gHr>!QAdW3%duu5&vycbgr+_v^uD(VxIn4rT`D!!(pRiMYiBKGS3)|KANz zbi-jr|Kg$YCeac01aj``3Jwf;pN#tq2hq!N3Ko2Qew8GnOH#_I0o&rE=UZ(p%2q9A zU`L>4hn|)tm+eKpH$TKR1N5CC~s7LfGVtj#l=fhTbL-80F9_ga(3K<@ zj=!-p{*Vi0p0v9tEBXel2_MeX%v`)E0d+_hEYB$_L0KT^lq}I>&K?V6EL>5zM3@7SgrL zUwGf*SE8MJncnMPJd6X2CadPyis$oWcBq**OXjqitLE`kHA)o^gML2O^ABgA zNfZT$VB3kM74B)8R@NxfxYZgTD}=mkf0x0$`0BFu;~V3$36OG7MKfnSTAKc{c9wQ3 z$JT2=rKM_6K^*>ul!Ma)dhmlMW8$*ueno@I0moC}#QqZy`-PSvV!kP-v}yaDDxD49 zW|n!Lzy>jGsB6Kk?_|rvF)}#y1=i7BzX>occjg4d@Yod=NOf= z3W^SF>dsquiszZw+zBAO0DovvLe{y?@&fh(Zpj~UP5b1Nq%Y<=4*67$fBF@*Pj$*S9<+w6pijt;g@CdCNUc*UN& zxyU{$JiuiYuvcIB81L+V3nh;-8Y?Smrggt96sjYLY8JJu8IhzGl=Z?&j&D!y&>Kkg=|1dqGPqhvCJam!u(%_o;ybeOfr z*1HV9p%xE6hDWn}{8f|30Q^5;%hT8YD#Ce+m;O2L-zWn6|8xAG0X|*%bdA|CLNFHa zH00md=;?oNT5$&{=h}Lj%)jTR^%DLw=KnLEre~9HR$Mm#<3mQo}yi|dT5(@)6t!4JNc#W za4)cChCk%&+1z^%IAd;ToIS%+$*)Q8$nHT| zF)}tK8Jh+bH59=c^5Kid8-aEWv8GnWRDX>3QJ#~JbC6E-@dS4FcZ_s7PbPLp@~pB41Ww}&c-NR1PyWBdA-NiLKf88FG?;7vbxc^Jr`md{fXTUU5ek;yy`g zy51Y5eq_6y5EuAe+zwyKKAsFT5@Wln8HkDL%d4*fgtqS_7fAQ zDLPumxeb2}o#XG8a(yP&$1x{DeMxWdqiN`Gy~wmm@$sAD_^-Ut-iAXQi-nePtavzA zi1MA>%-6<)t$sQWLFNr7hI`+!+kDVwy zh;g;o{ZtZ_rFdiwb~h^j>tvH8_n-}Nmrmkm|7!ccfin-A`Q)mh7$Wg7AU6DidH)zI z6R|&LUa@d_cl%`-YVXRLbzKcXNhzvXAZb9aqR4J{iug?kbTVu~Bp*&Y-n&ycsz38N z2W@V3!XD+xmeBdb=hKr`|At5Lvjhoyrk(Z43X^wCH3?S+3$0|35$%LroiK8*v@O!xQetFja9xCp->EyweJLw2<2Qg$F% z{Q1=ni}heMxrar4=jZF=xX3w2UeTdy z`+o9iT(Kx-ag!eg*~<96z^Cs2>v;e=VTK@2p`^FHryQ+Gigqfb-rVj)RL0yTloj96 zJw+^zq`uAya2tM3Zn^B+KmcIWT=rs*%IkrY^;QhD1nZgwan3#n29K%i zML~OILF%bI)G%dGx;UJg!ejdD2>_Iy03}6GU53C3exb5|BInHP1YON^M+jmBuI&Br z`t>GqPqbu{lXbwd$o3XWGQAN@O7ljmnr0#eE=yVivmnR*RUR`BeFKtiC>+lUQF(~@ zt5tx5t@#z{CKE;yI&eW|frO+snjwQ5l^So|ZWAjA2dv0oZq}xT(!pPzs?8 z-nTkl)q&WX0BA-Ak@r$ zo+2C0s#6cpQM@Qg$bruGyd*?Xwh{aMcxSOU0}hI$b`!2sDe654U9e#YoHp!)v@t-5 zR`>I**r~`XiC5Wg!<=4Fthc2C8%O$S0Mm z$`xC?@omn!V(y`=>qPZ0#M%vP!=I00ty@k*#Wz|ug^o9(Hf&r2E|fA8y~18q+I=|a zHf{Q*C;6=VsxVBh)P;#i3&ACa%(FP5pq&A!e?CKMmhFS6c`vO4%85SQ##yX`<5Xz&h?A46gx1I zds+Ud?4J8dhIxN9Lqj8AQ1%m7ZYjVE9Es3F;`HxQ3M8BQw z;DdQ+l<*3R`o4y5fcgrpI^6kdjtAeLPfKVFWFPP3OTDUmG_ZjXn0c4#`%GKB<+JkG zhI#swJ=E&wn+T;w9^?+A9eiRV2K;*Fwwaao$UuKC}ET8(GD%RmN%p+_d zl-(7C|3Xjd+v7#ZvFJ9NaPdkrC7es|bekXRh|s%fdhesn4$&XkphAEn7|^al z{bSR5JYaK1dGU~1;9^S$l}8Win(fmyI_&kZp*-R8jvxNd7nBey*|Lrh zJd+pnL6Yt}AOj59wcHm8wTi1&LtZ8BX(k69Ky2=nHyxVqmp`YDtRG)=BcLJvvcNUT z+3&^t%WvAt|iqv0?Yyv>pe2JqSIFs z;pK83&^46qQ#U#3sr6uzvJ8lbn+WtnUKTgM*e6QfsLH0?&A7R{+a`2eA?Kbz*_Azm zo7cR7e39ilYW87s(6?`I4ciuU2QEpx_qm~gOoRg#BjV@#)Tu`kDi4+AzguKpTTJ@0 zzL4%Nr%qYcZ(BALrRCGJ5+Pc$-{OPmYycT^r8TOu_s zLtt6mGH=H=Y!UE%v(S8P*fPs1=Ziz({2tLtYXI)5QJ*mDYxU#x>@N3lBHMy0F_C&9 zc;U@bsYYLM4FD6_foI1@XC!{=E4|i!#{)`;Vj3k)g5BQz)48@I)T^ZP9~j2nOx5*B~USPJ$~S!G6x- zt%d2s!&#{J%AaV0K6bQ^eOxnP`&qZ>uH^QF=LxhzN6Pjx5g#&$%2y|6ue}blI}jKb zn5*d#MQ)=Gap#{U{|tj$vv%i^FY>M)$$5Y*T(Pc))y-DjGkxpHc(+HLXg`mzjgrcS zt)`3d_SIVr^ho%Ww07IwR0o!WaS155+p`=AcE6+1)rSoF*iftEny~N!&gStJ4uX|i z{OxT0zWo(U+wpjfig4WBZ9E&~ynDh|3^OZ!exF-W^ohx|#A0#a1v?gbZRo+;)x~1$ ze8O3;zGrmnW#}Sl59o$@R^g&Gmu2vnMB6JC;=?WaWoykX<}Uf~Az1=j4ao;B9Fb#2(Gp~gaE>Ssy|K47?ph*D$x`Ov z^HI;awyJ=SR!o9hb`}#GDo>)Q*YJi1RLXK?MN9qAVBfqINJWKxBmWW1#kwP{R44y* zi{Nx=ga~o@_U4#6sXl1V7(vNF;nF@yHDj=9H=xY*RC2hhXY* zqa!l+yDhD{cU0O|TWMPBc7-Am@3g%gl$~gvn;2v(JUv zAc^B6`|2w&wl1C*$nT!!gjWLpJ9 zOUYGxPdcF&DmeyQ@v&lDFu<;;_~Duj{k|P!b@R?6<(92ERou&Vedj+Rg(kVa0MyGT z=5nYfPlFZf7t#Qn+&7(DGA_MFNz2_&mKt@(yFD$oXLVWwuobNQ(+z77~{;63jBF|PoFz)su+(+v=KEqCYHW|(SEyz%gHAO@_d46trvNj2Z zDurv3)1T}ayWJ%QpN3df3b5kWkbdfqQ-gl`Ufq>I^5}pbOn7K=7N;Uyg$Bldy`m-NWCe%AlE=F@5e zImm6Cvb&Hp(&YAdbUB!Q+Ph8?o4AIhT$JveLTiSAO`IgMB}Ga~q&=ukIWIxdCKWwe z>U*2}x9;ss^go{_o|Ah8TJ%JtOOV4n(alzq5b6E(HoxL)9?+u|H00P@yG;Bu2-bLY z&hrsTFKTU_I_EgT^8K<1s#~eLzj3_6s+ynHYQ@CANt#=%!*Q;>S==zTWtQV3V`QOt z@c_f?<>V(ckeH!!C z3)r-A$QsMUV1%|wir5XO<0&e|rbgvq!;67ruF6tPS~IMv!%csG?#1=RxBEAioz@(W zy&gVv;Bz69=e-EU1IG@x2V1SQA4u2)bOw(l6HR2u*X$5`PeS8o?<{`8tFPg11z67~ zo%pn(o0%xLUn5-2o=SOuJtwXA<7ox%mItUUP#N~MD$|WoLfwPg{Ji+ldy55{2Z8S$ zSd{U^bSwAV%F8q5LyOG&m8z+A1Hp1+{%?VIZ;w-9PtHlm4uMIw%mf($20qbA6`Yh;a@N0ru8T}J5 zM|@6DiFvI>Z>>iiuD>zquS?mMlkK@c7_vQ);08 z{(Ix)T*M?tz#;>vkc-@JoE<|V861%!ry{VFiJG{Z?R8gR@2v`85Jjkk%@e|y>3t9G!4<3E)Y_mr zi{4e8OCjKapqqbp(-(S~iCYuw2%7CpZ+MU%*?)RoSBk=~VV6&AzEw|1z*NQnr;_!p z7f%tNbWi+a!(x)Kmc)*$GG}IERl!S5a%faNG=TEibu0R;cEslEqd0vouT2W>^~ulu9H!~S=d1#E|Y=q`w=AAIm9!KX_5 zj9ylSzymK_!#h09-ZDgPAym3tZ#Y&`dQiSUfY8Rbc^}nqB2MnIK<*?a;-FA{wHGwF zQ)DdZJhpa}W)YG8S}Ww3uXA-X%m6CQc}VrJ+G#d|e$lDDZNqtS*-+CwOGkafn0D)K zEYLK4ugVo2X@!E#0voM2hkPj76nl#A`;uaV=`2%7@1R~qC2)#Bvt7D%BvuO{*Jy;h zY8vWVKeNBRzr_HuB?F<+S>Zov=(9&R#k9V_LSz%N+bx zDA!5t5P~55V*b{_C(|_A?EN)!R$K(%6%<+;A30j4Neep6u|hVVW*sMtEft-Nk&Lsr z3`(EaQ8DKg=N0_~#_f)|*3VW4K$q9OzEJ4SeN-u5mDf6~cvHO1b+l|vn=U)XUN2eY=#4LSH`b5KQRr7p9d~Psd z#D%9$fc%4&YLyp848HO_eovv2`f3Mu`xOSR0fOTuG%z`j2@Uku{^#y2GqExVsrMbh z>4YV|IHGvf?~XV@sxGqP>@zFf4rK0)OFEko_cA9}n>uZ7X=7B0p4E1|shH8+zcA=D zj)s6=&K4UnU;9=|$(M&`+U~Sl%Bi^m;oSy}aw{e55xm&c?&nNnJ)94k1 znSIT+g*mU)ae!R~*|DoqT0fTpyy$l3;Q8{o+K3AEIKI%sf7ymXWYEsO7rvWmyIZ=l z1TL{t=D+|_o;>FjdxmvXzMJGy z>J7XPlMIkMm2o8X!$4RTEr(W%nf5qW;Pz0YVZ3h!jlcMH^yDONjP9(O{3zPJSmQKs zZJX8wr)K0s{4y-7=djH*u2Uh)qhc>-fcC8L@=8J0GLhGQ`3JUc zqjL6Y2V6G~%p|_)tM0yh$5=U(ubY0^kM(-c0M=8@Op6vz8cjzGFuShL8#UowgC8xL zZf#h=PypvVSCpvlJG3e(eD~@+)blvF9(Q=B5}9@_gq$V|XiZ13x6kXGDXf#}Q@9?8 zr^VR2R0-r`tbcfh`j(H!L6wBEp0a%9-ne@Cf035jEPyZ7o}QF2k3S%i5a<({t|&EB zb0Nw8Xg3G+iAM4lD$yE+w!4qdeW0)ee)U;4am&o|_?or(H0r8Zf*tF`mc1+=j1=9K zeT+!;CiQLDD7$r+_%D=zh1eeX39F-E2>YU!X44Yi#kibRiLro-FgDg6q2o27-t1$` z^&!j99YnL0cJt9J3n`7pCyyj2z6kue{ld^JsswO9_(4GrxI;4gDbtj6TsVoim$!=u zC;4TSG+T{cx25Q`NTVssk_#-LQ6WLV(-aB9wnZ-4gk$|4a(uh8{?@CgFGI=Wj+pD% zMdZpJ*McEun zm$a1xB~bR-AP}2Xf8lNHTKBKk8g`Je&I zg3lBE?W|n|maJxlJ-BH^y2F0z1bXt&vLeEV0=;d zI{krJd)IyQT2lTdC(L5dzUK+I)kQznz`b$D^y_gdhMDD;W>r0?osi(Rz(ZVt;|FOw zUNe*Q(L4VNb=_%yd~VO80Gq_9o#gP{NAdUlBU$?+86mzj7kc zJReHdSm$#O0gJ|vnj8846SR^qr@^Z?R3yK18>_s(bSt!3fHrB$`{qW7kN0%!=7;9S z045^-KlMub%BjVN1oNB4zVK)h;t~_XiH@}sR?-}Vr0f~B3HnGffPDBENG@Hzsm+b# ze^n-v$Wa!!zIm}uGx4+M1VX~Bu2z?J8{Gp#lW8^ERwmgE4buM?zgTf_j(?Rtdm7a; zSwceW>aNKBmD--lmHhk)XUB19f@43FCL=er+N!u~{JPKeevgcbpxEC)E9a zoy#OL{EwL0fuF2Yon3=wI_4Y4U;XV?A3G2@?e+-NkhCmb&Jl|xPlCQ*k)u7$sJ1kT zbr$<7GcnCtT^~=hJB@?0{Wq(pOJxxY*UE+VN{CK3fcaFvleL^Y>Zm!>gxF|LW##Jm z>V8O$t-Y1(+9hX?HBXgl`t+M72u5uWyW;i!pR@;v3?~lC!>cW!&6a{+%x~O>`r9e; zRRcI)ooMEC_ZMh5-v|17akm_z8dOh8`M@G@kvV!Wtu9kIzr>-Uxmd@8tcKc!?*W^6vFixa~QY*}W zA``J7#xL}*ivkk)CdZob9C!|;r5q``2?&+KIz^xJ#>*;+P;BWqA3%tr-3ltlOziS! zKKUPkT)v(@)>Wf0f++V6q?@5|fv*1sHO-~G#(a!su%Q2y$|dA~IbUqB2!6ptcMFZI z<*X&0``_i546T|IyfdHgwE5`r7haL z#S_XQuA^mBJbeGVmTaNb)AIY9kAzQjWS!63NBMugaTs-Z2c~hJE=RSRQ0|x6 zK1LQ>=IZooUsq!%H8XOQoXGjox+zlhbnox&nnHF>b;(F7i5ie@jHXO`q%RP6kHD8t8I^_2vTgv1euA0^hluwatqjG{~S#N><``fR-NvU zZ-=j@eZ3(;NR5uJJ z!$`NW!=~wH`9Z%K==GE6qzi~*T1)1urJ*st20#lqcSC^g{m*ZwmYdA?)<%h#|GzNH5<7`rLE>ldtkRPdMin@n`GiR@!Ra!%@pOSz8)m8UfBOXB!nAl&K!^8d?zfuFfKh2{4iUT*b5h>3z!?OOV z6$HH;Ot-`_0Tx`6Gmp1^NpbN1Q9p00pCX#|t`)c4Hm7^vE8~C|DeR5nov2cLAyJxa8+1P0YmIC>oHRcd1y^Obx?wk~{STM( zdxO-ArXF1HNM~E0yzm@r>y|#R56FU4{mpi|#unzaKPhixS=;<%J?g6C@q?}B?s@)s zEJG`_Ra3#_2r1cS$ZT?^r`$5Q9|5_JGfc6)QU6(q5g`b+u`<)1Bhd508COQe}m;ft)qlY`G=R6 z_g*^m_iR%``|25M6wG0GG*JU?``6I#iK4=ARIDi@=#xl8G@Hb=?IWevj@ z`yMR^62n(d6l1{Z{zF?z5nUVmaCkV7>*n(Uam)5&Ej{@tem(`SN+p2@?(u;4LNGS!A-&J%zZOBF z<<zH=XDmdwcw5FA!&0oMq#QMvl-+YAuAk~WMUM41!c_*fCRFuek)-&8m1Ol)Y6Cde zpKNDuMrWm4cFMfJ%u46I-bt}rS=_VqMthg1m|FY)2HGU3EMg=6VjH^mlfz!q)@8nA z(;g%{!s#;b=z~AOqGmayE(>rB;S2L;9!-;X8dCnFv`sLzkwrFHr;pw?j9lzhbp#Cg zEaJ!r|J?&{k79TAPd|KadD`N-s#fM`Pt(nshCoHUCHhnM&7rEeN3wHi52j|(u`;C2a1h;;1a!QlH%BUfb9)ssY}0(A0;>* z<1)58s}>R+m1b|+xHoM~M=wM#3YiKmDv<@ZkBSZUF9hr;1vQl!Z~$DcFxLv4PAI4P zRz8vEusq@&8Zu+=!w^E*l%v_niN*%oUd93aw9mwrO`uOBe~MO_XL>$sI) z;Me9xT$^E>Jhfp)Wcw2UtsASp8L(YAf|SzAT#8{s>`pB1m=L|!WhD`Nq4glQAe=AX z`dasByYFHO*hV|K{wJX)cQUwk$XD4~MiL0LIiHR^HX+qC`i>AAo}NapV|sEwypU9Y z_`URw&92&vs9ldHZ@eU>eYG-r?>F?T@z)b?cT6hnKSy4^ZVuwQ_UaHJz6%jGL=XK!Em`P$B(hl`PNF9Jxpx^)0taeI!bw=7!c(C5?Zs?;LGPxm!u@o z6%;!PvU;^Ru;mu?onWz0hkeTQ>%(Csc{rzx;lu2ls}2lXTyDB2tg2>!-t>g^6#~@z z{ptipGy=#8KC0ilRJz{Ywy#^%UE%j2h!rFfLYF@gj9?uN2C1Lt(x%lEl9~nHKBf6> zuy0*Y_=J$8VF>veei&Q~Ro9boRIHvdtF{ow zJ=7g%b9Xmwod`)73yAcRuAAgf^$)&X)nG2+QnV!a;sZE6@MYbxN)5&^>v3l$ZqX@7 zPvHCBNb&lFr)QkASCbO5>>H+LySX@e&Obq|=~FD=TcBKp9%65A$jlU0(!fFQZk@TB z4z~QZwHyLBwJG#&Pq)T4kPEmZTTt3oAtB&Vt#2(WA)$Ejw1!yV}SR!UAB8=__Q>8 z+NEAt+WPU3y@5nc8N+mSfHerA)6Q2l%j}o|oD$d9z3=|!#bV+bQA*53U2MK)2%r6S zn>p;$FGAAc(=Vm;sSrC4>ji=jo*8$jGn}VAYT**};n15T+c;HeGf?>~GineuT$e9t zR4$a4#rFkYy13)%QJ3$kTu%%iKDcgQ6$ZAx5eE*k`E0NAMaHCD$2A}bzdUOk+o%Q$ zfp3(HJ%FFo`H6b`?UNL}x+Ssw!%RLU_wq$gjRqYPI=X&OfwQ+eFeP`txb;dmJd=o6eqYrD zM9_ma9xYEGc!dG5V30?cF@!h&ZhZ)Na?dBYIqi()h$I(c>&qEjuIKXGS&Wv-jac3L z!(l+sfwtXg+eV`m~RG1I#I7r$T{;_%T_1**GS%u1=IL21SQy<5N6$woK)*O~2cn=5-M)crl^ z@Ur{<-p%b#)6kDHO1T`(kwn4Ns*G>n zAl#j3GL8DM1@p}xuH(L#U$5ce3M9-Zj%MHRc%WUy%FMhk@$8^LJ zu{+UT5_5V`N)>j4VPhj>vle(lEe8xnOO! zFTvQsFhnZzWWmG%uj%0F5SE)JW3M()Z5%?fj$QJ*$T3&F1~1>SDIC(e{&&VP+rh%I zzszhDuPyl28Gb?-H&6T5H?EzheT@h@Oo(Owwil!4`Vb#BTXLc(mF%ixF$|;c#%}*C zVmFzUKC2nxq5!jh89MoR%*6)V!v5t_a6wU2iQ$jKX?;+gyfp0EPxQc{oDvFdPa-H2 zcpP2TgAm{Ex*c%(CXD&r@Z_g76lEF>czp;ki47}3sdC_a$-CdS&@->KGfX`@1gxqNYVz;zBArxRoJQ0F{4dsOmo4 zlH2*7hkl@cx;)V0v*q4DybfLZpp=AxcZW>|GF!iHde6(B)9=d<6fWif_e2h5%rj^~ z07>JAU#hAz+(8oehcf)lL9o;+hr02^!`7yR3{r&rs+oFjEpCRYhA!dpSrO;a%*NZw zS<1EXXT5?j+BP2AM9Q1~7=4U=F8@wDZLdw&!4BLGo$2VgS1dU3R&(!nM54Dd*}O`s zIKBPbqP4~RNDavHD3Zaft*O-E=^MTaWHp|eU9PjaXt(=pN&b9F3(u?e`$`?+zzngg z_bg2N?r8zGp~nIhN!}YyGLH6JjrS_O!^}SW3eJrHG~1$|mEB$eqm^(y`^OV=o1eFh z_GX8VwySnL)jU6pU$j(CJER~Y2wt_tJzZFQ@VNL1QV)273V~PK;b~+9m)NNswzibd z;_cuMmTW+RA1#m>{|0i0#Uj(K++2s9-zi)lQwF9VLB2YsR8J>*zNpt?gI0xY7cQ1b z@quDfR7p-DS3|&$M9XC1q_ul|4ob7Jr~5wSOloFNIF%i(4Bxt?w(#70emX1XrdCh8 zH;O4cD*bnQ=(aQV^W$liwMYR6pQ(Swe|mjQy&U}2`<=&K(^P?$dW9>v#5=5bktMuf ziHFT>GmJM10x{Z98+S?OHxR0OLoOIsMYP^k*<5nMT`=lZVdb6YN7$OXHU%2>7In-c zTsJU|XG))!rZfc9UAzH5zQGUOe)#b58t4O;X^KEgjh!92$UL(X$~ogXP$rg?1ul&z zyg4|;=*j@HGxvqo^I%dByywU6i=bZl z8RpM2m3Zh z$D36Jq_pEJ_BIv#r>edd(iKQyua(cqc3BTiTqy91sAVR4E>${vUh`pnG|DZX`n#}y zZ=;|ImBD74gT$8TG8wS-{^0&J-l)l%qi=bs$GvAXPn@aPR%}YZ!EUNxoH7*Q@O8@9 zOyt}7k*TP*xPFwXtL}?@Uh#||+t<8msC?jbF|^QG>+ZSOA)2d=3e^v;*&f`ive@c~ zD!VUZvNE&OI`cYGbo7qxV)d;toS!|puQ6Hsyg)`>_VAA+E>mj&qE^ahs_#3Xx zh<=BUT=9~Y6I_3D0&M{mfJMc=dQ%%Iz81PXW%$E1qS*@5*BrFKT&2Zobwi=M1U(dL ze}*L?DqRFS7!vGL0!lY7+z_v{OTT@gI`65@gepg=^!Bmp8Q2_u;o*_OQDv#iKWWSV z7`F&=`*U=WJ%@pfC4p>&L3@|0XI1LN4G8X&s^C_)`(+utb#tZ`*R?RocrlsK_8f%m zX+lgf5eG0f*4Rm%u^Im!_L}t{9XuFnQuz3GJlrOKa=sPyBcu zMwqw^6LKs2a^B^gtxFpJy5?6$lZvFPAx%95mhV$8{ISOVD#aYQ+4Hhu4_-cfH>&VU z*{C6FtiJU*`xMmvA=07y%cIy#pM(qi@Q1tk%tY^=c1Id5IazNtUXLl-VEa7U*4GBr z6fT+42PrhYE!};>56dr`F^+8DU7QxhF#D#Go^)|m8Jp+WB=g&>1X;Am<{gl%?;@f^ z2$eOnxF5}`ga+J;fo9bMkCCURT76DRq*88PGd_|?J7*guLadt#{=iPR!B{k8q zjt~a!?Jv9i9~?cHY-p!Rur&nR-hqW4p?4gyY>_=tk0zw780xP(q=*T99CZwhqwtNk z4^_9Y&VGx6jG~-S-`U+N{zyVSdNPI?C30D&UGIxEU8=+F!U#I5Ig-H&w)G}q^i<)5 zmh+?Y9QpPv#Fe%Sp!82qg!)ps8tm%6#KL#q1tz7Y@sxL++o`gkFzbCG3TgKKcrv;F zI;a+T{HyIuUAfEtiz&kvD|$0w7YUIV9o9$0>6CDY=L?A)K+*Hmx&4?lyjbq6QNgkF zAvXEEOt}s(^{8M0Hzc6y{nJd0!`*jES|2zpZaQ zi_z=A>|njB%DMKWU%yY29{G3Ly9SBP27Rov5Yv)cwJr@;Gn=D%rZQJwf#X9AvVZIz z=NDU#V$P!{;!$mq%$J`>!-Y;Kn+f(5k3gQ~_RnurpyCHqEqXtCuQ8sRWifp=)%xU+ z;yV1%Q1HjWx1FDELf76^r`A3Y^iXiwD=`%$-ujAP609;7RN?_$^4>>E%JI!1z;fz5 zrE(tVa|TtqY<=mPRtozewyFK)snYh_kG4!0NFGylEHr|Wxk`Z;ys*T@9m$c(ALJ62 zntzH=ngzb%OfSw+%I_oS1nx<7_+2|~#a}n4-(#aOokbD(2LZ_?EYIXi+~dnGu<{A5 zWU{wZ6b;rl6*;baNcnU9jIU`X{2pv?O^z=!Dr92z#yY%)9o@F-?Gc%wPm{w%F~(GW zF>V-3x3!Urx&OM^glx^oY{n&+*7^mR24xs#oaI+Hd5+Ctrn}Ukje~L^pj+q0{e*$! zlofzn{mabZbLLMHjS6;qAEIoDa(3Qghbon)mO_ztqNQwJoo9~LyXx??C`A^ zT>V4H`D`X_!@if9&t<)v^6Ko=xAVb+yX%Q83%AM1_ebvX$GUu#i&>QtbGYohc11PD z82mnmuu)!iMyO%=9GJKnrv+T#ZxkV4FfGCxz>3b|+M@0du`XrLPyPP*_D3o&+qbBz zv1(1DJzbVJ&pg%=vYF3d`TYoKNb3QCNR0WRra2pqQ7gmQWIRd|Ym3&blG>K!GFK!? z2TChIhLa}@##ZXe&RK|o+X{|Op)#Y5FsfENQZE{PtC$K~el`M2$G6{jsFpU}N&wK0#8?v|uP#GJ2iOOFP z(`&%y=3)7IGN(`Igqz8cp;4Kw?1NhmNsJsS@uS2C*$Jd-L>()3fQ`mo- z&lH5| z6c7Fe5v8urWET@k8;35Z>&`HmG{!eaF1G~KS|?vf^Of@8u(0fo=Te~=-jEM@3C51w z9qsm`hOJ%lZw7{pM%uo&{*mXpf9k2ych3lNt&HeWf(fa`q0OYLcBIkAc6$i_7jiaK zx72SuU8X7pl~~$3RlCQHn*+Y``tnv8*A~|X_IbSxV|I|wdmo!bB}l| z{nvt{`Ojv)^&)o=E%9hXYLVZyGF|sBKthlKLv%mBD6O*L^KJmSH?4YlICXCu)YR_bQ&sou&c1qpplG#wjll>XnI(4&BV(tquG3}W9 zKzm90$)@QPC*ha4-+HNZW_=-ugPP?%#8VDMUyRhd9Rar=!Jc314G$MNRszvEgM)Hs zzt_2UsTSX3u)ci+=EiAJt=qJ$LMb%yJU8 zWyb7+kvId=wXVz9vZa){-CTj%$LG3V7R%qxRhrAbu9dCOao4*3wwrF_Gv`c6duJa# zEpoqky3Ke6j9*N=4P~DF-`IJgp5lpQ&lz{$>dOb&ArDhV4eoBa0q+(cI$lX zDWV?)lwMO$8Pl}=AmnD3bX`$ZG{Z}KY*5PXb3j)?;zs%Tv zxgaXs-@moFXgtbq!b5TZ8GO-8XME7t;O-8f@Oi9MPjb^nl1X#KiauLuo5`f26@K65 zxH^z1>jg_a9Qp0=yPJK+`?{aHg*xO63o)b+;FsU@kIrcl;Qpd;rkAVpMnv|oW1-~4 zm5Q(1s>hx$AL73(rKS4n0({P0X2s1nm>sEJp@rp{@_? zT)t9B>qcsFGxeAy9dqMZg4f#89+BKl`Xz9HP`_R} zr4!b{%RPDIC%w``CLDbeWn@3y z^aku#52$XY{G&L~c9zt|=pdiUE@ql~Nj>GQL&i;x7rku#=QvPM%pYmV={hgQ>J5bj zP~vs_u}0~9o$%{}RzlCoGwlUQZu?LA&8uAIlN@H8WqP=eRb6gpn#M&i%tn6O{*lyt z$IRW6Z9OI){$j~gBlYnx)u%$d)Yl{D1;v^67AcCIrIGmFT$SX-f6VUx&S9hdOB6qc z`{};yOAecL4k^5Yy`N0>RAv;jw)2upB-eFHH&iF4#}=4>_Ohaq%pE6pTR-;6P|`;C z`Bf~1)6R8o7%>%o9dtBBEXh~Wt0sM(7Z&C zt;>IoIgL|V^{3qRyG10ftgOokZ^vDx1^4Q*%_85ldKV3F-<9>s*q%x>{!;i4Z4Y*e z=*91it}6h<2SBAuGr)>-6Q9juVaQ$15HL@_<0w3Qh`p(YEqw9e!mj8YqhKc+>#>JZ;b1O6aCiw!VBoUB!F4PJyx$on;;vFhC4(T&B&V!B!&HZn(pGMygoYr+<2r(Q1z`huTwa| zgcKGtK{p4>8reJRP8CAdW_Q?evsa(BJ{ONq82vKnt3i8VcvoyDX=mu@ms5plz_i5I zm$S_v7Z?Ypb)o$k+zEe8F{UjK)$uMTLs?f#ykqEadfA_5i`DJb38C?E>T5D+D##)xfn3fu~U1(OCv zP+D@qNCjndYyul0&DdxrjCil1_kBOl@Atm1f2zB_SDyHsb3Ui#unkn(Rg7UKLv#$K zIqb*WHOvT(=cNp}BbbNOQxi{CFOHiOr6Wb`2Ps7UWS43m9eXRO>CeUC%Fmsq2 zIbo9>9fSg}on8A>pwKFYi?~bnrTU*~Y zyyANLG+!jaO;*XmAm@U_p=~v}oQzv{ua(69Fg>x#*T*3t;Cr+$Q_ENK!^W~YbKEj# ze4#Zz??K$zR$l|1iDOFEnmchCdwV7&4@&vTv0Yf{~o_S5us1T3G78QQ{n8)s5d4ZiU*(T-p>$npI_KVa_LHz# z#)E@?$Z%7ZA3@A%uSRP=T<}zQf)Lsn++GCoSPtue165DN+4q=Q#Ji&!W9cz=@3k-^ zRcmH$>!S$7KCVfpuLHbA_3EcMb1`oB9h4Yk$LFG(ut0S zsLyF4VkyYP>~!aj%ovfcj~6F8qPW<<(9%?)-hjeGl(WtVzE%841LGOn>kZ_EYX1ZY za_2Zj0OJmu8fcw0opO5TWI8N8Dm^c~xfr(}N-fjr4I989G@Ikr6;0|frd)W%4UDaMoKoclD@mroD=2O@~QP0%f~>CKna^E zQ;^|Ll5q0Y6cB%XJCmzpgf_~Anmg8~?{o$@%6heO$3~B9B~q3BZF{FGKQP*0k} zF9p!;^dS7vJ69%6Kxwu}g4+5V_{CT7i!7D8HFoMx`=rq3FOC?1u#6bv>VUlK&o5st z8>)XAGO4)`pd4kkF_btFkSjXmpAM2|>=C~inO{Pnq8z9?Fl}kq_bZJYSLVBp z7^N3k*!8)RXpNcycxa)%X_=F5sd#T^!@~>0dCT+siKX@U4f|ka+7sQz+eb6(e|K`$uRT5J!)X<-=7ky`LS#o@alkuqmH}_VgB^Wdf!%#|0*pdf_doxy z;qZ`u2K&es*<4`|$cxNRAhij8qIEC-$zha@l?d{Ol`W{(A5E(llZ}9_;g-qneFs&n zW?8jlIse7Uu0h|Pxuj!&0;0;S#${Ixopv^H_5D!eh@*_0rttdH?!v{v7psy(*71$} zVbl6E(l+f4XAv&ZAwEu7YOso%2?}w3KCx`ho%-Vw?O%8F?eo{$1G5B0Sk5W(s?&r< zr+&2uqTQw9Cp3Ro+bB>6%p1~UO8Cbj{qidph$#t~Evm%Tl?_&A>!W%R{)*UH>Wqbq zF3#g~P}!6IeNTGH#-5YJ6xmAb+{1YqUh(afQnkaI$@QReAOW^HBk00GrYbvrl6`k` z7XsBlbmbBr{o(-~R6EF%DSoa}kICOW;#_iqmF#cAbQxud_cyS+>jO6YMq^WQWqV7V ziQ=22L}p<*u?(o-K4THZlwyZ~k!7(2beX8Vh2N|;6w8@@0n3A(RvMdj)Vw>0QVgJ| ztyEoKRCE2VCYLWc6nixLgO6&95X+(;zt9dc<6cfYS_W%@zV3a&$_vOVRgKg1wJq$% zu6QqEaMq%6cVk_NFS^AXa1XSyNZdK zf$Ft@iBjRXtXiZ!R$8jNfkdgn~D>xz&m9U=(ATH z7v-$*;zUq`TYAIja_&@Vi>=~)$3@Jt6Kx5f=U2HrJ-vZnUaY#Z8`M!g`rJfOkx}+% zI9F@*DJY(kR=eDXf!T?@m_&{kZMV<0IO$YoE!5jijlI_JF@_*A7Fllh0e?{VV`agT z$viqU`NoqeIjZxTbbblbdm$OY%=fcQ9RAFA6@hpA6kKc~!(VDv80kC#Bc8D7Y)D2$ z)^7%@vkm@SERee*Ou`(ce0j>xFVT36@0wF5&V1`qX3B=2lt&7ps~C>$Tp6W07*(4c zt|IH2%fR{2*sjKsd5QE949~Z0MiJqvqMWI`$=n$HVJ^*k^D*i$jb7Z^RQK%~ zt?N3>W4V+LZSVaxton;Oo|agv2OIki%+Ne#c(=1fCQ?e~< zsSBr`t4%PyEe1rz z>LrFF&MWIztIfJv91_!HeZBcpZ7z?a&8z7Ay}Pna>Y7xqpPU~|r~sx8{e;d|E_D<# zQ=o6jGOfRduVWt9yeLzfulM`JFUNyIK+NZ(6hIP)1{=dx1A7bf98vbw(wdI!iz`lw z+1cd>dmzlouqucbd5i0tTRz>mo+%^FF>hjCv2^T$q=YW%D6P=ub>Yeg`jJ)01+JBk=Q>?0n3)oDjRP3Y4hnr+ zzGLnrVP3B{mPT^9Vzsm~pT$E#_4%06e<S+)iZ{xFaK-Sl5KZ&+K3dRf zmHH0@Ch^sb61jzcuc#)|dr+i*y!=|&Ooi&YvV*q9OtXVo*~Vx?#O?YVNl@xW1c_sl zXieHdNAfTK;qY;rUx;0s8`63e*bw+awRZ2W9aHUY<~t@dE`Li6r622>G~Ozof5|PW z_jx3}@Pts+h!-p8bYmV)H7 z_n(<&(RI5vUwXtr#T!gB49gD}kt4u(x|S6>GBNa4tyyT^vtAz2ciLYB)op}8$yHYP z=(_dCANglStx=zm&!?~W|78(og8n0g0Ziz>^VAmoxIOwScBMgh%qSybXk1Fw32id- z$v=r8kacZeL3dTt4#!)1KaQ;hR}O*o`q!7e3i8U1_qvy5@aIe%SP!Bjcu15Nxp70b z*xcTtt<11oilb#LrvCeSA}@ZepybYg^q^yP6+v{=anRd;V4an{euleig)UN_ft5x?qyjVr`6M5~b6uwYPRhtzOm+M!ZT+Nw{|kuY#+3v037VQK-@p7?HDS0y zpj>_LXKz8`xv#7lQh6+Tg)ywLYt737*p*dFaV-t3J&P!Ld%>Xmi;fUc(}Apk8ATcAM;?O@JH4Ok1|a?+EO_aC;As4dwV~BY*z5xQ<;%x+Zk)E zA0q#29cIXoi=Hd3UDX!%7#>=EenBj?qFW}pyd%U3E~0v2TjTAF3v#wWEXwn0lbE#c zYX>#i{t2i?%N(g9G}bEesZPnx)A}{qWj)Xnpw{-jQe|oK3m$vNSK4N0;i%Z}4ikNR zd^e>IB@3v-pfqF};>@Fw61V8BPSf{7wLg&xDU6K*>|&{YF+AEL{HSv|9Z1@Ymg846 z)y|iIbNS|jnqIOT31jGFj1kE1=f$y>ZC*x_a6!iG0{;EkeHdn~?(MZlPRr!wKZ3yY zsS>>3HAF5q!dT=*nL3vh*ZGJG@5Il+G#4Qmy=@DTMdbcrne%IbS)+YwB zp6ue^C*gE4_=0`YSw6iOlPN~Xosklc1v!5| z@JX~~)TOqW;&ImwXc^bU^~<=J+4_huP^7ni7qa7M9)h$h{E5|4(uT3~Kn1I`<;GhCW0gH-3 zqSCp~HSf|ZZN0Ak9E#S2S@_UPW-PsO7l$ZkI9L7DPvqmw;>`R@b$A+|y|A$nfyJfg z0D8ZB`*{o^M9WNeIQtP!I*HIrGEf9o%E?Zhxh#B)*FsRtbqH# zqn~eNCA{#E7(LyI3`>%DGqKORH@20{Y2~48U2ru0P@;tS+h1uPL@|m##&mXXYjRyS zqUDtYMsuP>gs6p`q_$2CS`cg!b761%724_UQ2ii3I5APu&d+QRy{|-Dv#v=-W_A9; z!BrKvsLz%uE6O7&K1QNzzfKSZx%*g~&Iy#4VhK1cPnrCntq;oIN;OAFFo!BPDl$Zq z&l1`5H#>Rey$MoT;8Jaezbef58p7%)Li-(du2C^G2-%fO2|&%)CwO~i0p8OF6{ooL zNNBgR-81Yc{TA0;mKkjTLeuxcDCmWR^8B452zYVGB?#rL85;scxo!`qy`vmxbB%Ex>YbacZc$<#Rs zrc7Vne^?OJSHrTe->zG`cIH+KThG*mgD{5h7kXs?PB_FuT&lj`)nva@<;bx0`-OpWJ=8gR+RgCg}~dp+PKg& z{5WEHsf3W3z?lRRF3CMZ$zGYQ6ke|s#Bz-Fl8wWV z?Zn?4A)$F~UoW(h_rhwq0%K+sd~bxIkrmcLMGc)Fb6zTa^a#EdfPF|iqr+$K_f#da zwyX2ptvbaVR(u^Rk(aVYZaRw<71np0&uk7=qAby>c66@)>csw-oWtFr+UB;vDv|fy zn$e#9j*IUS`PdtfdIm%$gxh~;HHX2QkQdr=d6lz7U)>eK={YVQqY}TVmD=FVcAQBt zv90Xgsd-PBuijbGZ+R#`KXlkQoY4*?TxH71MLTyhVznDGV&dF05o-b zCNJU8FTI?I$TDu=AvJpaw(mAw#g5poM=iYJI$!U6i`yR>(S6h!c{-8%p*;EhwgS^2 zPm*VfWk#nP&k`0h7v!^~k*+)cGsq{%Pk;N+*M>gB?+=tV4zAcNaL{s=AATw<#`*5h ze0#Tf@UOe|SeguOn!U0YcdiXcn+q(M5%01f#z)Pucc_`bm8$fmUmCTm)!b!P$OUTB zyG`hYH_IG_>Dr%kCi|upYIr~%m#eVe(v~b8oZBay0m>d*G2cgQTx#O5(ql6iDD`HU zmrfv^->aWChBu$D*U&P)dRN+*IUy}Y4saj&I!Z>l?EGJYziT^3%9~xgx`_vs*n|d; zDD967UnqB-5#;rMkbK`n*eUR>NO4AOOOBU3c`s+&)1!*Mu;P|W2X^JYo_|v9*=Kkj zE<0c&(zQ)!`R^LRO zYI%A-aGOf?hISHox||9|MJ33dN&wFRt~A5u$&-FsOGFI{#s1%HG(@$y-N#zyR*gwmWldW_RE5n(&h zkW#XX9PLhVR$jKPZ<7@zE-vXd*5wj%cd#giFRRqC0n0(|uQXhWSc!Rd67hb?}DuS7roP|esKTwy@dQP?vsa}PY#)oT)3gys_OzzY==%~ShYivfVE;}i_p=c>`(KT zJjX63m#;BHrW)n!A`Q0pNJ*!hH8`OneRCT_d2zppOm5D)+Qc0DIUei>p|6r7`Z}V) znC61Ccpg%*;Y~Q@fot^f3GD_Oer_OAFMuv%4R0GRovLnM9D3CQGtbf=Vp>1! zm4jKIxPQgDJV$Uhyn`y%@N{PF z>{?w`h7t5srGaz_c)WNzOQUY>`tQ7r-@m+63>aiIJHPM#Ns(=C*E!J{a-Nu5o29df ztGmoczw}vEvRetU%!K*fMMVDAw3`tR@bhPnmEnT^m`A!|ijnRd%EAZj)Al{v?pTv+ zHz*cxBP%P(YuvT5yG{|B3Js`)bK! zFm+R?A1=*Iz8K-qOKKSJhy|q=x)+LvXq7UdOY2g)W|^hVxsi{bo3!-Iwnp`OvJEn< zBJpfFg5>u&_>aTwk-Ztzd-7yk;oP1o4qm0IDRy3TaB9G}&oPfA>!DFtfkV6LhqW&h zLrfk|lT9A??t#V`O6B&2A`|Q6*-9N>QKG~3y6x?Mj;Q(TrQy|J$o7W7 zrS>R}N%o_otB`g}-MIV+YQDMYt-0Vvu0gJDy<^|SfbA?uFTs-vshZJ-$xG{p^`Js+ zhjNo&ZWbKnS^mC4UcfY7lf4>zd)FQ6bBKoWmEsrXs`ZdmQ}#Va(tjW2w+pE! zi7R~&j$<58V*=g_^$UMuCemZvX{v$9Ha2O6<7SHn$Yy+L*Nu@apBT^1E$ORFq+irq z0w7@BeH0Zjnulk|)z;QNeNevpk4CVm*Aq&YgbIZws``)TCAmWkW7&}v^Zeh7oC8_@ z`09__K0IWf!+}Rm*U-`mGqE#f!EhE-?bkqvEiqQgmPX381!(-yO|l+TpY8WQ0R!V^ z5g$?PSS*sUMN4RNTL^!)<@U7!{kwA1OPeTrR(4+2nxy|S(K0Lz$J1T(4FL0ary`1+ zb%_TV7u(jX4mqvM7C(8$f3}_twI6XX6Gz$5mNxD=gq2YpMjbkEmqO%{;a>~7k-hg3 zPywK~k;jL^=>YHIBG2FH>Y>J7YRFie(3e0#=ximnOg^(YUf^Y*W1N+sS<_3h50G1_ zudLj3-fIyGtNik?#%9rg5bVR~wg6ut3!$;T(k5<8R~=_>`5?TXR#tCJ#0%0S?1jZ; zV=1chrgP(L$)@^G3V|5D+1$uK(E)a4sPoRr9Sr_c`Zsc9Zy%KAOZc#HOH7gZOkk_y zR_1No3`HdMp~A{#F@Zx#nMl|9&I~Ig5tGL)5Y+u$DvMj4sW;3^>?K~(t6=Lr4OJz(iLLv`y zjJqfw&%j;$M!il$W@njzlyA0|>?Yj}0%g<^_q~v3Y{kFoxPS8iwT?@1G8hfdK9-P> zweI$z49@RQwNzn)j2%BM?j^mui7Gulh>)V_I}yi9?=yec7>%^-nz8AV3-Wm?BSgx# z6btM2N6DF$!Mcc+!8x_&c12Fz={Y?b00sHT=6LvE{{GK%00magzwAN3kjn|XD7mtp zC=N%(d%RdFqQq_r^#OHRd2dDL{>OvTBX@Nsp%JJ6?;^klYxQ+=z6B}3t7-NfsB3y8N`Oo?G{5jtv26{m(z_Fcp&s14oV&)FlY@qPty9Y2n)$5dA z>m)Dg_rHRJd?vX<-d4IW%C|Ajxak94h>y?yYpx#B@D!BeTu_SD52p~=u2-+E+~s^> z3UDTQP~GGF>5duaW5*@=4(z0qAnI3J)ttKfGpYz;xHljt+faN{F#kE_VS8n`%vx(F z^ehta?4#!& zNOjcLTw9QBtQZCC!AIF;&L6|ZZN8~c5DLGsZp&tIkSlAviJLgyIZ(_8ScUj^%*jckn&?+}gPH$l;>J|^9!76i5{@2?;K;vU3 zuAEBpFgiP4nqK1ll3`<=oCPh#gYdV#%@Y2#D{uwxZwoxOIa8={?Aiy5Z;Lm7kLVVS zobINy1g&?B`|(1Ivj9JLp4Q`$KJzJ#JE0yUKR4Z3@jLxEgrk%-I>qL`ac+-I0*tKC z6Jo?xF(^6q71;D3$k}of%kfYXz_8RRvdU5b8@usq+K!1rK|UG*`;vz$ez+tJzwmS< z@8BbYzkNuuIm-Ot6FxpZa^2laq%*WwXN)%f&CzTd{0sMbHs2Pi<-)(S_cjh=5m);G zbx_s_K%J@Dj4lQtfu-CUP}nyHF)U%DIJjODM*FE)yj!IDe|dV!c5?u={CBK)_E>6S ztsq4PwvC~+aU9OsdIm%mUmn2l<4}sb2p{y&Ky=mQSb{Wx|KV~uwd|&pxbJ~HV_(!_ zn#nDO%-mdr`tQM({ONtQ=3rC%G6^ju{Ucjajc;-?pySemXVO%k6<7f(H+w2?s>tSf z^ccTk>HVICKXlL7Pk-J84Z2_6nlv9I_pAsgklIrcqzZlp+CK?n@c*fL*UmPqi6`@o zgPc80slVJ^HLnbxa9<7^oLRQ1tyPT2PO6QY^sw%;%tawk<7)%S2XFu$ZJVmxSbxg% zaP^hDcJtGm0#LWE)%E)dn}CUwuNrMA2FxouECbdN)C->yu`gImisD$(ZM*nOdUq2R zncQ_p5l-+{?i_R5QPE5pG6D2iid)hk`=h}Ny1=gJI*8Ck?Yc#6T?6=n9H*$~k!qIG z$$E?CEy{wF0_qON6FQ{l(x&#eyMz^MUJe92UCbh28rQjMx{yxD`^}2jw(@k}-qARc zk}V@Y@o~a->8FkD;)=HWkQ&Nd>aE9{I1QFgk<+5Lyl3rwzhtBToPsf+w^d}P*9+s! z+LQj;R=}c{S-v|mF6QPma*+5L8BGu_?VZ2K)f?U~ zw7~DdqMZ96cD~71FL<#eyGdMsz`y-fP|qshCr!aqxPQ1&E)Hn)0U161hMip=o(^SG zdEwI&_JZU4v0L%+DJRa>YitwAr${p5@6peS*a+l)PFqMd^<#W)P_y60c&rHCdQ!U) z+mt^q;eiSP33YaDtkt2ZWDc-VDs0XZkeqHay9MwI^nor@;)-wdk;1P5F(Li(0B`DT zV6=vc#rMc|@${|DnE$GlTnPzCq`FtBE3VF8RxN|19{69AxOq-6uOw}u0Q<U|HBv#9 zt{LcOh3E|KdJ6GcD{*hSHcc9n0$4x(OU~V~&!hyRL6k0YUl8ka|NUgu=@l`3RPfwt z6=4b|eLsP_#~daU9iLQY0qqe4yvV7y&vH=!u?kK*dnEkxxIxcna`RsL{jGs#+141y zCEomE&uFfT?1qwiz^0_xH1}qvYxv=89swLMFQ+ej@bG)%VExHt(9{gq@!^h$69?KNU3< zF3$eCD8WjsA`IgwGU7Wz3U6+dp~8kvi6DaGysDquE`C*jr&z`E{1_o8*c2K3MH@~U z4Y7=OjLkK@JYcaWNHtLZ(|N#-W@!9)i{wfQQhFzyvL*2B@=wR_#{lfL8d+Ng*i{rr5Xrb{!%FF_e=o4Gt$+uPVSDVKX3?h<}&^ohI6c@BN@ z*_YZyE5WZDRSC<&OM@EA+uUoyV`jtk^TP+2lJfFYd#oQu%w{w{DwC(*N?@6`en(wP ztlYs?O+x}MQ*LaWX+NPEMy`{oWHr+R%6EaGT6XNuyy=u!Bz>g$XX_<&s)zB|qbF#(=YrWRay5nY(( zxcFA)jX&E=l8tuKX!92?d%vb@L5m!m*z*5CL5DcqEM zQQH_AQjwQ7+M?7Uo6Kn-g_QV{!&~f`=GFesGao4v436fxuTq0XxpYX?>z%!PaxT0U z8@CT)u4q<%xHF#2OW`AUq0dF<<`67?1$J!f6A}v@U##Yv5XY3&<|QNnHs9%zcP-q@ zm7vGYN)q`)J!juslJn>kT_(YcPs61dnW*Sn=7p9EFx|#Ta-YIx)6!TyTupC0ef4R1FSoY|$Qf3He~q2nIzTVNi5jhltJ^pp$pi}}(y+M-q(LTwklGe>$> zMr@-NCbE1_^M!8m?GEc^d2BfB(|JsN}`mGs^ao$b1RNpnWy*0Y;!FqKVy+n%& zD8NM(U!-^yc-?jo0SyeIac{d3?yEgq_59VIvbhTV!AIryt=f_K!xr?F#6qV_L-9|h z84B*uN^nwEKPp@kl*PMh)^HCF2l-65u}-w`Pz>_=RcULV%=A%GHd~q3=9?yS?BnFN zGBZdqC;0Sku5PayaFaKSlbJNJtH6FkpK+1TA6nQFqIo?(~2o;Q+7>_ zaq>-ZcFDUSewXr`-JZX8OhWQpM6oR%N`j54uh#UH*NqEbmvm=RO#|q@?yq?I`q#AO zZAgVP9BWnW-L}^$KN;x}cN2tV-rDOc0h#EpO^KKJwMWCg{nqG@A%RO`jdx{skET4- zI8AfdgE81uD$`pr#OesK$w*jM%uzu5=4r?T`tRS)_)el(3`qZMCEObjRnUnJPni(p!9wb>1ZlwQgl9>yA!^2iWOjJPFDp+Mxd*JlND@`I!9LN9(fF zCby+1Nit=e(kaPr6~6Bp(%a5>TG1B6nUqxs?NBU|ZaN{qA%IUF=koQd2*mf_3|k%I z*_4_m;3;x8&z5ThD<1T*`k3*Gpn2D%8l;st+;ftwge85yV35E`z4DK;CIk@Xi`<(E zyIhaRdWK_XhLvvorP*qSI>R5Jm0vP^8~5hSUQGBFznL`OeE~YWk-FChEbbMC`ux~O z5b$SN`Kon7%k4rJp%Dm|ME=54HK-KOvIQjKkrMdK;qC*+<`qzff_%_f;qA1$GV+4S z!s;yRb!;IYS?vZCKg^z*!mJ*Ij7HBr{4lTvszs)(Ebe>VVK8JD}4 zZM&t|X2}j3wW@dzMoeX5oBT%DN;qwi+yo#8s(xt58!$pVcgR8#0=+i{X6u zL|0vqFlXU7SbqFCd}F0+OuW8p4+eEg@lCS=oO;+j2T#dNgqPQq&S{V&p+g1{+DUp{&*>z_&=*vTUqp9=`)F_4 zG9#dU+r1YiDLv;Q<5%38UOT2J@KD({?r+o0Ppu$eP9y-n#KHW2%Q6p~$vOGVo9Aw? zJ6|3WVAx#=@>#3S=~Ku-8RV8Ym=TT)9nFKR+=~hFshTKLpNgRRRM~&w>LO@RUQ3Ov zX;6+AGR&j5JGP0&I$RrAf8E>Et8uP~@iS=~Lw!6cCCOR(KCXxIxq7+Xlp_Ctff;m@ zXIl4WsZRWm2S=Aw@jaYvRM6+I4@ZnSPRnv2{Wk5AZrg_R@;z!ZgK?v7EVBKqn_@Dp zbZ3fnMkDSE1%s@Tpgs7Z6VMi*@7mDwz)YMZ-r{|&N%3GKO3zR;#V@m{`I9Zo5KRj~ zbdGXy!!Wgyl@E4UR-m>17^xpDA3@7F4jK%{pCW5GAHqfar)c%@`q}bRQ0n=LyI8qZ zp7Qk!wsD6h?<;6Yb{S26WJyf(=x^!w2=6Dl4V$La5A_t?-f*LCl4ThFsycqYP@*c-G=6&)0iTDC^OHAyP#nt?k zFNo3GWiIlk@C>hHApXQR?G2Dwr*^|om=CfR>1gS~hNb?9JKao+eWmT$C6dC2WKs83 z`x6ZvjgdKV?#>i%*kb|~9$${c1(@Pa11>!107K&m;)kRrG0M!`5vvIAIOhJeqsFfR ztLUA(VtaC9zgU%0+w}pBuoLjRW-W?Zp!Di2Ao@#X7gD6|y3g_s`DcGrAgO-d^6(bF zdk&)D2^|1%PU{(P?OM0x`4P1Lxnv@cRt;da%5GY%oC%7bI`EP7XLS=pgg5Sr2}NSQ z8ogEC^SsX3SK!U8U-^H13qk;Nq2mFY*Sdv+`MRlu$(P`m>DbXOK&fb=xcV>5FWA(M z-ep=kXZXxR0s)!)e>~q!CkmCi@wb6s7urO4&3!-hT!GyNV%{9tZ8PXrSYB!YYJV=_!B?pv?7j0i0p|;? zMyPl4ntkBRcXX;sa!^j5lA!Y89JT#caT(h1lsA;i?@D}DRhC1w`*4s*K)?Ubrx#Z^ z7XT#J=u3CBln2oxd^aBDa`;1;!Z&Zwmd(PnvJ|vhuG<}?+Pbm%;>JL^nQ)X{iNf7l z1~g*Hqm|xb2^v4dNevF!o0|W?%y-6)1%0aWyz=j5G0FGWN;&uF@((!ze~8nS(##kR zNT5D|aQ>W-<3Pm#vNF_*fbf>Pin?kDtFO=fNvp>0^B}Im_K3D5?EXnzT-i71YeGZV z^;&50Jy-=6^4~W(o2-$V0(uGC0+wFa{e9iqr4qg5hV2lo%ztm!1vsBBBDeRg;r=Re zM%Pv+J6~B?kZ_{iHY$vH{uXiJu?S3Ju`zb0hHL5l;0JuwHBY_KpK2&W%7L8{Zo?u0ar(3MovV^s9eRS`$DnxuQs^& zA*pzK@*L>5nTkaE$NYVD3`|QW4??r_=t~m;}w#6l9P6 z==W18kwf&U>aZzjY9IHm0YU1@qRt@xjX}ewn1GyLm4N#lmw=RN(H-c6-EK@2quL58 zM*TbJ2*(N=f*$A3mAjga+=VNF_~u;on#0AtTx(n6hXk7J#h}1Ds^k4LqTua}8@o78 z+b>?5;Y}6$UUDp3 z1o|H%D`4x|3JGO@Z~5o-KM<*O_CWTw1xqk29;4|6|xdV3g zHpshwU*&1zoa9f0$H6$e`)W8HfyTE3HAy`+`$hAr$PT17HW#Vtc*qQ38x+Z;GsnL?djEo8D>Apqr}I z%hNJqmy7Vmb$LHbl6DDbFBX_#AR|iP`BF4G=rRH>%MzQ9U_pu<8zGp+UI4n+K$TuR z-jS`ia6N_o+`LI|V9%Q*6-j4rE-4COc^73DWlJ%;s5RB)59*SmAD~qU z`n$h3$ZKwOvBJMtr`S}kYA;!43qrJHyeqxxFR3<_(_0ecVg0uHdENFED>Dl2#kdT&8ND9 zAxmsgufAb4=F%QM7B8&G{kDrMW3q#zz8T-f?R3w1G~jwlU*Utb!T`nQqM?&<6MCfZ zA;vw=9A%Go5BKjq+C}SgaZS@c4#JQl@BRn)#nd0r7S6T zWDqv2u_VD3#B8qWakD?}TsBZ`Hf;9M!TJ-Z7kPJ!3viZ?&52jlA1~fcQi507m0*Vf z-nEVuj2Etj__s=?s9%e#d@Cf_Z?$8G%XxP?rp5driH|Q~QB&FIee9=A)@bP9Yg-w`kZM|W!f5;>o0VbgXkGOH!Z71KWuyUI^Rs(GpTK6w zIUc7KFKeL6mM53cO>FpRRK2}7$miG*dQIB1`3z;L9SkjYQL+b+r~h$VOf*u_z!I># zm~xMhW@%PtW|~X+pi%6db@?!c4O3dz-?Xr1yg0Ig>+UQ6+C;df<8umb5a$TvEqENV1`sLku6~v26Lm1+k;dM@8@oJP%A!qP(~EvL%n;49)U{8@Apblp-c65 z+cx*D7sfFM=0~0Cy=qYjs5A5EE^-h{0+6)E{2KE-0oWlVG@VI7m`tr4&_@ACRZ?MdD2Oo!7!tn_7DgcLl*VbsDWTP3** z;uI&7@<@PsqIY)&Pp%@d(#y#??okVdl2h6%de2$9+!s;KgCanTY6{f54}{W>tDLip zzyT}1cIkO<5MS3 z%$?uLWCQd0uky@yG|jnON6P^e=K`^jA_M&Oj3x!*iH~`qKV7v%8hwVaw|^e-eWg5k z{C4BJE;;`aQ;+)vluClU5XL~I;jjxI`U8Bnbz=HP!kJ9Vlvwo{sDS(Il zGBS)R**D4AtHSzNFx9qNttJe-@=A~3IIJh4^U@6y;;Ir{?4Aru&}q!Nl6Y7hj+POE z-It{%&ctvvIoKc2#84VzCsJ^-t9pThLBdV%@)I9qq!1b@M>|4XffL1{AJ925(f;9v zdL%j!H5?REBHQuHPYy3N5`xI{P3<#4oP`?{XO+=hSyT zQ8Aoyq?$z!E+*WRsTcHR)%C~}p_$tUu%|)G`b+wJ$Ac3%1mnuE9Xl!SSDFqP1+hNZ z&g-?E`0s`P(bSs@SDGrQeP@u>mm1nm{leEvZ*>|^?n2``qfK0LpK_pBt)1N+O`k!m zsPfd!b44;1Fq3?-^C8S_^Vg1;bG_+E!*)3gz-p&HiW6d-o~P^_kC|8;c~~OD6(#5H z@|PL0B^$-}`T&MZOr(rbgv$Pc`@y>LNa|2lmJyiV^@6W!s06g^OKp5sJ z>8ElKzC+}>aGn{U;CCqKZQF{j)&v-g zRsVrxp}+37)~KV_QZUWFlS|H{)@1b-eoUFwe+zXYUmFn)qP}dQ{ujZA7O)S-Ibm^$ zE4?1tRzT&o(M9E&34IdF?SsA+Gcr(F)+zEn@>aUKQ0?%-&o2GcL=g3#~H*szalJbs7X1sr*1uQk?f7?E}zFIEB>{d;>HmGqD!@41iE~f@$uwH;yD*K4i zyTl+1v8M;}_+Xyq$KZm1eclG0wws{RsAp9ioP1C z;Yi9+YWv7X{gHH|$Oi!Eo2yMvXanYg>PMPMSHhT@ za)loYpbms@*D7mk?gf52MCEIxMfWVAbIFvc=xkJlri{j`F^${@&#V-G6w^X|ENguH ze`tH_sHWdHZhVS}ih%JELqa^rE$ELBk42yh~90bv9pCJuJjx( zkPvoDDIJ9tc)ESwDf&7wSwQuT@N{iO@Zkax&MshJL&Sdi5ln$`DcNtPX3Aug(_kCP z&SGD&;o6~%Erq;ZV5L!495&<5yjGo%_6%r^Uw?(En;balNB;7|piwx067(4z8r{Cg zo9Zj-XsRS6ea*KL3zAy5ba3?K7QvV*&d8cubgZeaWHNd(SE{?`dZE#P-3sV6@henk zuoT$yQ1!BH4r^1=*$!ad&o71O20$RT%aX7FyMhvlGXZVoT3de!@boIs&(@KflO|0r zIqcehe||cOha(<~uneVcvLp2zY7;w%vdI-8RVwc!SE;EeD=!N@4(HgUhWus8Gf(qp zK>?qYP11qTuq}OijAF;$X7GU$-uXT*gVjxtH+D9CWlK1lc>MxGYR^4mz@tePR0xn? ztH)fM(o{OQjreoH&uk-xa*$*b(lZa*XPg$0Ji4dYf%NU}o|pJwXJb%6=x6(!`xPU| z7kvkdG4b>T?IxIQ#+b2(A9KFVMD}_&H(?DcJ;6dD1k8a@YN|a0hS1!yWYCvPvH~#= zfZzM;IaxUuY%Llnc1m0h^xwmXI`S}GZr$7bDDhsvd}%sv5}Dmp%P}X#6!4N?gM8)9 z1IGPF%gnw_JXW8)0Lk4lX3xHKfiCIaCxF!Q(wh7p2Ha-!PcEYki|;6C$o$T-=FvI! zH&0INNo1t@%7#%Z1>YqXE(5~zTkgN)$E)NWMD?Ovvw@23%~6}Y4(5kfJ>*4q+4U#i z4d>}2*!kZz51XW(S?Td=AFk zyd!{It14F$<29OdNM^^Iko9&K4dcc=C}FVk|LGaYN&-PUrJk;6{?46|Yu5d6FRE4!C(;>h4&mom;DrW#mLd%d zTPjZP>WFF;$}x1_GbeoBUtce0pMQzFkPr)fiapc}M;W;dH#k9LQ~XwTL3GU_MD*4@ z6;H-}{dB$_uh%Ax^Qpy-_5_+Fvu*2tH~>eh54vitq-Lln%`LLn?=rs7p6Z)f1xmF& ze<+;|36*AzSN1`Q}XKWk7H1Q!2OFM_Yo=|mP04awJ_DAn7pmcbX&u@3K zdVdHOd46UH{j%R#QVputmpoCRv;##!T+J0pWuoA_u;t31QZ}9RrMja}KU#iDAsFj* zhWpB?I0&NmGDXL~O!K!LIflZ5(tAVP5N|_UtoDJGP;kVfqh9zlkF!GpfyHpgz|I3( zh*!#AyD6n%fM*-5Y`PnEib?K=z;IdYK@pxS9}J$BRiubw#q{FKjs0`E9C-re>j;>kW68vaCEOsE2X2D;~elkS$ zGS+q;WKEJmiQ~!4I>`cSPsG^$T|FmrSZQj~|9QG%KfxIbqg7c_*}hZU(uvSZx}!ZD zAXO%KQmM#Xp(fU61M$&(Q`Df|Hki| zwtnEsNd^+`K{*y6R+~BgJ-D{N8i2+!(zx;(u3L$Cnyb^H+X+_dE9b_~WeIL{&30yX zd1m=B|DLThb^S`y)2G(bkN81!VpX4RfuMtah1iGK<{JITQq634ZEQ6p#DLy;K-DJ^ znUOD`cy@20Q9%!2=tgSXM-rA&ws=!&(iZ;OVTO3MJ~VT*^@3X~Qiq(YJ$`aj^ii^3 zPfzAI7PWw1CP&g*pg*+;e@XCO(z)}VqIooTF6A|~((w5oK}^WwBd|YTwIwQuQCZPv zjg>{+7n9G&udYwPIG;qn%~0>d3cg=_^@YI_B6oap`!*gO(56 zgC@JE4Xw65F!BSx?Z2_+qXzi|)q zP`XfbE5C9<)Uf#d&x{1&NjX0$kf{adyqLf#xaGUModTCx$$QEbW&K63$KLl2!YC?> zz&uAZw;O&`RPQgx_V|##pSpUPpvSxTg-uQH*J-m@+O#?-xbEdTQ;tE$;0i+sS;C*l?M_7i6YeottW4o#bek*bwb9%BYf?SmHi8?a9 zJmX>LZ-E_BX!2!>n(ruf;;l`E`?j_>Ka)oHbIQx&hw8D-Zk~J#WT(uoCglTjd`r32 z9zwB?aP>%B;v(ZZV_4{53+^)LRpMQ{Nlo<^4uv$cNm<-2R?J%a?ux(klz_-hfl3cZ z`Q1Y>XGFJ6BdFot{H&^S9y5C^=HxD*2nUJ^a_e?(Qr<9$o?^};?yYQdr8Fx?91z^4wF|T8=P!bwmJkT_LSK)GOdC`I*0{QoQxq6`$;rd$6F05M zif^@D&Ife#V5%iOAc@rie!t+tCSw5!G%$`wLvkgb4zt|hW2J&pEKtD+2`oMeo4m(i zh{|Mfzrodhbt|oBWeaU}19GqnB?4CJjq0!b;m=&K+}Dn9ZPv+)28FeUhT9iFmLGJ? z^_0qC#avD3InVC7nO?Sm>juC5(`$F1Wt(f&R;*WA8j8CAE{AJR=~dHlW+dE-RNwhr z84>BBczNkvqQMe4!fc!AH14ng|Mwf7MF?#BmjVVXGCAIwWdUXYoTW(BKO>yK%ywje zS^$C2W1Wj#=$@*weo;~E$7G$mp0>**gFPN;`whx=GWL~@2%rcBJzRTO2Hup)c#-NJ zq+FfcoU&c1H<71`JJm;ubx3+ zfw@1+&Ho9e;vM}2@slTX6y9zLKN$V$d+$t^hy zB?go1UhuPGJd8TrWCOJuqqa3sm)}MEUD5~a5QG-R66|f;i3i{9ZK)kW*%)p$3}Z~Q zEdhsv^0u^2%pDoddB%Q>qLnH-LemNH$;vrO_k&1q|BoZMg(iJ}R7J8y&XI?=ADZ-F zcnqpF9&{fVIJ`tNz3-`x)!(^@d|NuTN3+8^^bcbMRl=>@!YYG&6$(9TU+DF8qXL($ zg06DZCJn~!MrDQ(XE&AK{U66>7fKjdO#!7{#P$=8Ty{YvA|lt3gO9h;y3EnWy}8x- zEW@W*=xs8kZ@Qti#x`=1d>4dcrs;StV${!h6%5XfH;bpi@X-c6$`KGWlh^kLg#I6k zi)A(6Mhz!}CTh8ITVmAY_Q~K)0E^q8`_O~2=Chv0HSQpwrBREvy0v*4wq|UtR}QV> z8joV6O(I0qZ{xJRu`{w_&MrNl(HCG!Z=J5L3gM&gB9UUdW9pTQA!ufq?|+YbXU|(q z2v6mubIwY~GVB1zHWwk|{Kpl1xK}((MR-dt7J91>Y8r0!FziC7z~kE2i@}HV*8t#l z*e%nSL5V%QgG7BU=4{wu@`_h@_8;7WTT7eUrVV-3AqZ^|C!I{nn7H<9S$q!d{8 zD@OdU86wK(zQn%vW<~qN|4Jg9I(B~8D2anul&9FdIiTWsS9?d3Zz}JBM|4?Y8Q&CJ ztH6mFA=W^X{~^f_!w}__6@bH^b9e!v;@wQLo*aG1Yw)V~3RYi4kll5{>mkcOdaG-0!{5j2+fCHHK_q1trAMq$Gb;glE&#dhk`IvW<+y>mFUc&gVD+gnk> zF4fZs{Ds_WH^mftR`sLaOW6?olavl(b7Sk5?j24>s$AQ=4*LXy;r_T!m!7uL)Rl+4 z`i0H=_uM}ZotUfNMshG`44nL6cjrpsF)q`|kKu$zF{JxitN9| z{xNOXVUxea`gL7E{XzPmrgD-Pp{R2&9z}$j(Q(zC9Qyg%$ENWTXh$2@1 z(0)Rg7mv;_-vALUeV~xK>d@}7yl^XL8XD-l2WXlZi-l+>^q?3)LIIn!)4y|~=#q}> z_rCYY>-1VIQ6`jekJJ&uv3hyqRAKNmiHv4mN zVm4}##W__L&5E8fDFAAeyL%8MU(^#&>`eg0-rbWkkR}ky`u-)A@$K?0bKlWXZ*p#L z!~u(AZYdVz%bj9~pjMde-EP~zP~`&9 ziq~3g(eLqB(WRWCFhmZnETXM6-c-`7*0N=Mi`tE!aHiT-p`NvS%otIY6=+moah2Bm zvtYY8n_jYjQGygcF2{-B%zQrVv#dM!Cg84QxRxH6yS|)iF{; z#8a5zhrPQymMqSFAX1N!pN)5~9{Ie`FFUR0xwidKj+=ANV!sP z5ia-6qw2oUMDBKVsLj;oS&4_m>h}y3U^?}JJ7p5J-DYp@W$l} zRvh(OwxoW!^hTVC;6$0wNTZ`W*PEZw3z@3bi#@B)#c~`LU4iEL8bf?CoJ>6Nz_t25 zU^lqhOqbsP`)-K+le>yNV~-e@6vjX3(HHIA^px+%3>`u7eko%UX_Y#41xlBZaVfg9WXioPchBMc$WtwXLZw4oxl99N#z|owF*$4*mA9_WQW3n!J)#e z&~4IwjQpog?K(~8@nJkE8xGh72t$$vdt*tyOkxAo#YsInb^_P9>CKhDs##qWu9JP8 zCmZM)&!(P&ZeKpgN8s-L{&IHk0z2+1<2e}MV=BqlxEpJjCQ4~3=6EAj zNPlHs@sq)rS)}{h1Kao(08kHH1^)vMBJ{!DqkWOg#2+ zQ&Ks$@t-=qZ|<);eGB@3=yX4E&2~G#m8_4oQ&&TVu4gB6zfLu)SP}ON{Q5(7cJ1&j zh;gnhlH8zX3Zz}XcojrR#3bR<>DDGexhBUOv28|Pk5zJZJi0EgXT#ztI-$KKpJ|5| zhxP2)T+QHv_Hv|$*m3=_^ztp{U1ZV0);?VIsco1lg_*`kv(?bDy2CIH>7Rq0_Ko6p zJIZ8$280n&jWn8#H?_e3=oXr>-ksFFACiO>gTtp1Jp^oroyrsxIjI^gM1AY8aaNmi(2qfXqs2*MD5Ak)iLMuKw z4N=VCIrh+WBac!>!SNe54aKVp-f}+1;t6|$t7khhFCH%BC%z$)@D~D;??gN|%shiJ z?OyAe`F2)OZuVG&)5i()=QAJqXNTnbli9odzoVArdE0MbITOV-ONSjOcfP+?(P_^5 zImw;$t)hi98;2#3HV}}ESD76F3Eopt^-JpFaroqt-b4h5t>b2;X6sT+CFrJdLee=` zZiexMHF%m#o~1WNW+I4oCcaLYB_|U-qPmv49mqvI!82cHdkRIou#^njo+Ww$Pw-fc zJ1fH`v$}TDi1%95(j*{U;cHM(muwKryheXOxIdzKdT%U7movbpP!L)|MH%Q1x-ZVQ zWwKV+JK!nrv)Cs;T3&Wr9^71(%5pnGNEupD)?@hK>THv0sPIf)B(!y8v^zSc@gIPLAbu zeJFUU@IiDET8*e}Te#?BN}=3Z$oiUft3O(FK0V~-LSFKKO9>;XQ+T%+U;CYbC%ZIU zcySZ*jIkJz6OHWZbUa1TkNT>rA1eNdT8F+Q{xhO2MNE(aUe{>qyK<0}3h&_GhK@ljDfy-_ZB59a88f?V3Ta!cKCYX9R8iht z%5Xmbi+rY_6OzxU))hq{wQ;%Q?%Axg`6c^Gr#74t$}V=@*##$s9HDBY&hAnE6{;3A)1?FiC&L3) zqO2Z&zeVr}S$!IVtsx={%4k#bv-4InNYD2rcA0HDFD#y!{IXez36j4yFQgoc!1kWL zi>X=hGT&>CnGY%g6#-VR*q|TKt{?H`FGsT-0tx^BXWBFR- zR>~)Y^V!JnKAyz=;+S$GohZ^(yVa6Zv{W^Qh|_R>oXLimi~`rMkz~XDp!S>0OUnD4 zk?4^+_=x;q$gtouBz!R9jZu;NmYWnUF}~c!q+X%gj)gP%eQO#~1P_W3Q5@kIb5r<8 z_AGzo*2E2K4Xul;pfHH=`R}pZ{0Z-KqZO{T=_GlS5+yIkPfTB}G-tm-zB9Ti5_n<> z<>KtXq`y74pISUkAJ$ty?qYBsGnphH#q$Sm%#N06)N}L~@&%`)NQcms$F*>&#YDbF zzO#)TWcQBf*TN>c9quL)w6A9HM$Xr)lE(fXBc3&d-T9j^S`%UX`mF;lfTNborQ~A) zFI_Fs?&xnwAvWIbnov36ep7JLNm$z1C1Kv1C$7RK$*FxoR6c+jcgp<~V^m=Fb>7bD z<$;-<3M1;{O4E_ird*GFJZtIM-fkK*rCFkeiXQq5ebZP|;TpJo9=1)PNwXWCw&Ryc zi#=I;ZP|H^?A-QC6dy_H#~cCuy8du`!R1%ym#x;>V@ytXwmz$BJy_CR$SLocwv@8o zWlMHw^|{IJe#(71)-)4$dX!H#&XhjCHm^eMX?^(9>vq|o-P%~ra1J7=$(S*blAaC# z78e4)ui&xdcpIAZh+V6~Q0cSAI2)PdOl^v0PTPmmipwGe=My^EmT7k*S-Rmhzd{O3 zvj}`fuYo+fLj|yT=%(~I!8&(Zq0G6bR_xAsta3vEA7@Vm^w(EF@N($*8MCf zWC2zWI>_U9%?L2Pn4h@}K)hj)_hN*@*$YU4=w_OynffQcA;82CWQF(NU zp9#l{eI`wFS@l!JPJkIw+PX}J%5zj52pSM(lLhW zES2CKpQg1jqeZ~jk33hM5Rquz{=#+-OL-r$Q&_o>e#t6p(0&anCvVMLo%{!vcq-V zPQlg-s(Mli6(6*OrY zv{g{W_5hGhX;#;t(Id*+$~ZsDa3(0(cKA(N&gOnr%1n5o%Nf^?;+k%nQgEHeC+1!Q z#6}CAkUYOc=vxa@Mb}vZlsP5LKQXWrgHOpy-I8 z0t|MUI9N^64V_2aDGX!s&}=T}!Yy>@BjhKm0^U;UX4iptw#f!bUK6qV^i56PMVOn- z_8oAo;OU8uLzJz2ATN636N37^)0tz?|Ty3;%W^ zNkSdO;!~)Qz}#KL$d&M{h^+F}QBX=*{aoLxP%`JmaTdB}riuC1K{aYn}2i#bL_Y=bF%ahJ26Q%cy z^EuLsm&}(UR42#H7!_x>RXfXsNSa=^(M$34Ljl*{Gct9{VvUd10v#ILt0ZSDQ;U;y z7QNo<2wm!UXWOGWFD_Ed!4>Czj<)P&_;k_M+v2W#l$nqXOga$IkahzJB7rryfTY<`FtS^C}UZ>*UZeZ=QEB<|Oo@ z|7dEIz14xzmDYaLc?RC4&mSE>xjI~~fh!ObGrf*4nmI{$lunsxB|r9kdq2S$SANjc zuo_c0hW|2;S>l!w7I2R3Ep{q5S{9TsLQGP~hU5!_4NvF}t@G9%PD$afJ(E0q$gvw- z(M``3xKRW(kg|m|T_ZADQDDY;?YDXj@(d&2yY`M|HIJtKG7~6O9pf!NiYCw&`TG>=IoB`Sr{yl%Gxu(v zAnM!BMat>DDEzozxzQg1@;9Ywax=>&J(lWa>$K|(6}eer!vf&2Q6%&cZrlE|_<({n ztBtOSbFU-Vn01!1^BHG|eD zG^AJ3`1>E*#vEp~Ups2AcBGSi#-PLg$l8}`S)eSxsV$7LM?@~gY0TIG>r`clWQD(2 z%{l}Nz-L+~u*Z=0cnBXg-Pu;$?AVuV$TnutGj+GE!!^Iet^8!l93`N6Oq(5GLBJ*9 z0GGt+`8iO?URFx;w60iMK8p{BE+v(CeNYiiHS1d=B{2p*3(G4l%z6pv>o~#Aw|rh) zo~llYtfu%AcPbXNRr3_sN1kq%d*yU{%~pAOYKEPR>6v+<8dn`$GcS1waZ8;%lPq!F zV?6J;2_nE~U@6T!g}1CezT=+q@pO7^%%^_uL-`G?cU%k~xr}V3)vV@lHLN^ZzLG0k zBuG0`n=^u*O4K|^NrXQVDyF0ePkTJ!$8a}-@>aT#svGjRK4@4+LgKUL-9qz`Zd&lXX@z_Gl5?Yp6_!Cu^&&iBoP_!CO!l!bx-(eo4C# zjCX}T`ff})S~j|7cMe7MNmuJzYkpIDBWv2pdUo{&ZWJ$GqB4OiV{G;`7o0gDy7xe7 zcjA>%W;EbUxEo+HOAX`pdgJRyZ-#$enP#0OB{r?9BUNn{Xat)u=k;_2<yfAQ%gmB|hA(5GLnGpCwY&niGKoDUEf3plRy$9OywfvXzF&tJ zdA+!DHCIXwTBHz56{(gPgqv3}`ai3@x<^#t-kemfU|KSt=}@B zC))jFE3F(`JXu9vZnaLJ$ksH@!^KLOGMiw7}uVMOobH`GhlA!l` zu_cw>A@f!b-i^UJxGJI$eC=76$R9XZBTZkLM$VuoKEY0oL@R4hpWngx$KR?x!dq^G z*YQ`@7;vHOEPioIC;!=J9ti9B*^;M1geP>>{cW>|x)QtvfLeC?{sR4s6Us^3gV+%A z%F_~!Om&DCe-=zO*iTs~T5Ddien$03Hv=g87}q`UAWu+i)8@B4QvvI#AmATZxz*nE zS}#0Q${pt{Ln*TenbRb=^X9w8H17GH+ z1<|Xl1@v~fyt(fm#P*O&+xLc~a<{P}98@)Cx!LKK%JULZ1wx2DL&rzv@q>l?Io0)q z>WWgcRaJDLa$})oJ#xyst~Ep@lcQE&NiwR_#EipxO7pq2jmhn4Vk39M-3Rv0d z)lJ3JTbHMZAB6!blWl_b3b2cJzk;%SOwWT&u49@FrNTzLJxNDO4`D{vK8Q97C$Q5V z$8uaCaQX`fL{KU_=+oquAg?mf`^s1KL|Irs`Q$vz5RH1_&S@mTI%Hs`GS-$wVQ@E^ zPKNk58Nu!0rtECA`=l@ug~%OyCj%I2R1Hck({NTp9))Re@}bw8jj(envya@x<5aJ7 zCgYzy<=(ZN`r#eadyeNjBXgqP@I zLsi$6Fyylbo%?Lstx6p)bwyFKYP;F62Q?)l(WcY)uf^UtiD^4`ug7u{gfdE;Uu3A`aDP@9*WpwgJ>I8@(j=Rd|JJS;LU1@n{qH!>f@>YPyMLG`QOXQ za({GfrtB*yiZN^8x{tm82qv@t=HYB^$ae+eR8s(d%jVe=o!QP+0n`VJ{m(g16a?35 zaj?|MITpDOv`2Cebx#|_QLb(!G#5*%o6+xvGRD}77u?f)+N6~_Vmx{*lh}Gt*~>RW z8AELvi`|OF-#wz-UrUQ&a?|YY8y_EU51=MheP6SNpL?N@%sZ^v9;-`Femi1<`02EO z?mRG!O}MkY@X<(X^=7trr_9qi=2ouf-F^Nc^y8JdxP9HrLH0RMYdV^J%mkY{UZ{%% zToG-1wxG_xhw<`8@v9S0+qdQ=r&Db2hiO&uwB#Jh{zmmKDG1@%tBxQ=xs z6q!ECmoqPsGDX*|Ee(CtXYtoC**=4?OKX2wu*!3Gz$G~egb!oIf1~Q3w;seUk+QJEp^lt+Kf3t1dZFs zpOj5R$hY_F$2zW3!n5;xvisUe))I^7-t#Y%9<0lBRLs;msXu#s{Mde%&03-`{MUWA zKt-PUWkbQ2wO05vF~(it$n=|KLQkD0LUM6QfkfzqRLkVRWY}@fGatAs6=onhrld-Vg9WE_?!WQzN%?k z0esu-B{A~%NZ=1V&dZ|*rB{FcH1`KJMme7X(@XoX0qCqp#hYln2BXbWmlyG1B!= zrpGVh30PFvMdbkedfR&PKsXiJ2c5jJh4zV6-TL!{q)3t7HACL)`=COvDTB2;zh36* ztCEVfO^~&9DrquHv ziH}vXNkgIQ_5lZUD-7X(g6JeM3%k~2xzsinrn zxxa&@%E#;`G7J5YVR)x^{0yd-7Uh=Eh;ZoGkxkQGstn3Gsa>!YBIJf{mg7_1~#?; z74hQ^Jn!`BThm#qQGIlNCol9{lX@5}hC7CtJX9$Dc3&ex!zD3)PjdtA*v6FxMXo!SxRF87gJzV6WEvl)^*RxM09&PuyfH)0YVsQ7@~ zOz}72iSyjF!q3wkZnoO+rL?!0y^%eraQT6+UBZ~k$$olqr^m94)nS~&(H}SEji+c3 zMyQJOD*J`aqG})%k@oE9IfaFH7Ps~nRPG0PwxS_3`HtMp^b<-ko4o!wW+-{P5%0|6 zwQA?e`&790LlAhdlP@N7_~N!QSiix5I=wV!f@V6pT1i=r&f82@y) zOTG?f&6T=a|c}R8ti}DT=~br_xgNA>+M=v3=&tp zY0h4)N&UVxVVP(HKU)>I5>N#LyVLD;<7I?ux7?p&b+8koGV?=*K1|JTrlWFW!x~(A zq(OUD(_(*HMnd#jho9bg)jdBV=6mpaP=>Yyk+IbpIBu2;;vjPOzRSCEkI_Oh@WjQZQ_!mppMa^%@6J9%$+ zr755YS=S9{5i)KF8z)iRS?C@(a%{apTMDA9@O+>cfww6B$LWPV3-W!#dPvCNVK7Vj zmd__aZXOhRgxuSm$flw;88S!^(`pF0zizNXd;;eW9vdyPwJ9ZekW!y{VCzMs3k7x( zufktw#ZqhuCviJ3hb4|r((E>RSr%niaK#I4XTUX;oZ(l=&$$&9_#yS z(sZPg^P-~k?O3PQB?CS(&q6O$mWq3iLwi>v*y2t(5u3kF0}Pf!O@&J~Xe`F2>HnkM zOSwR|W*^ip_3M5EuV5D49d)6ghi`x7J;NcNmMI1OjNz2E;($m_V)Ot$V7Q!=PjwS= z%;NZ7FhIY<@f`y%stpt0nwuwJ)@WyO`I#G$2?b_ee-K!<(kb0YwB*@%aHH4^zHJ)n z&ivBo?BJdw1LJA+dvki^(|Owo6UO?=x?*aNSb?0ZDLbM{$=pC;z0X0gEgXGeTYGiK zMf8GyeWLjH)xA{LYNQUWH@bu6pny~9p9ASU5a%!IeYT-k%p!r1>(m-v>Sq-P1PR2w+ksvo9_HhLeB_yYk-ZB za5{Jjl)`MBoTT#ASe-S(v$q>YCj^4G65mYUBYFZTtr(f&r>Q^05r~c|=YSw6_@Kmm z`N7qMCH-D>MCPyGGO_1@n}14_ZA6M4eB&qO?o9CF8?~P&!TqO}gu$8m{R9BEGT-Ev z)nmt0v%kK3`sY_OK;w?TK6%4lh&#^w>yF>=@nbVy|37-@nZ9p{Js5|GG&|?l7`k@d zjk6pO&ZvKE6%crjp`-xEn6Giet?^u>$oh#73HJnganbc$knl@C7T_idvM`UY(W~1SJa_)RVq7hs zyho}NI7un-Hqko8nCmMp8697~ve6tqZL<5LgKoOB&?=-K8bsw|q=)*h9_sOtgI?ZVZQAo%Ei=~H=w74K_|a*PymBi zhdkiZduD_kAgvjaTF`MZ`?7bP;!B^3s|%NKwRhItLjcXSFMwwJa}D0`Cv*+FWTrAE zT82Bz7W3LzGvQ+)cLh^-k0%Xz-`KQ=J>Milsd9aZK1#)QAu_mVstD zM=If4*D6dvBKy}F&#iV9FSA!+@CBIpFChbL{g;Mt752-O3y-LLIgJoVc_9pU%kG)) zq0RIVB%=w-?uWt8st`T;?Y5nStDQW5m*-8`p_Xv$H2U>PO}TE?#rl;Iko4MGZUC=z z(rDN#I!F*@X|+u9P<`9itwZS^$G>Q3#Xl0?GK4Nru~VP(#}1raKCufr0!W|YUDrK{ znJ#cm#hdv$SbxE2D<|K#{ya`ah}OXYdJ!Sam(-}byuW7cGIHP9*5RdN$V?=n4L2s= zM~Es!s6spSej9Hr<+Rm-TAYRdSdpqEZmLprcD50&n>2DfA8yY0yzq>A)Co8S5*)#+#)xdRfj#x zfAHoO`!#Bz%ZXD}qkf94H>SFpDw`kLhFtge!Egi@94S6S)Wwx{B1#vjcIQ5I;>w=Y zlzODJi}SWv3|^IWHWg%@v`dj0`gCKYCWd#nt?%@i{jN_Bj4e+rbSv+rXhvFDG1}Im zo$3g;;A;a0AnPV7e>bA&QTgf@9@Dca>nkJmdSx^FX20?|L(0#6!przRE5IvI56H!= zHilC7Y8mkR6h}Im+PMQJJft3pZH5#7IEeOvza|1C-dtt3&(NW@^O~ z#QmqAkVAP)BtVPyL^P&(`EG zR(u{L(n_uhr`v2V3`uy1Z_W|ku11}4#X0d!T-sz`+@PdXzZqXHmf&}0*J>_2PPnj@ zs@GDiHnz8Re#xr!R7sL;PcecKhy-U9i4eh|o|_l8WZqbxdpj6CXXvrB#r*`Mn~gRY zdE>+6@>q=|)W?a@vgSk(W*92k46SrB0gX&oCuc8;kg4nhx!Aw?Gnvap2$8KP`3fIRhH+JV z6pxkp7=3uSGSRg2eM{^;v(p{X^?M(4owbs%Ul$9lDc0uZ&5$vA!*}I&=7W;4m1{35 zVC!veOM2?SnvCKkqLC@FPCz=R{@i(xAN6U7dkvw;OxbhvjQNS9S7j z$}H#nb-cCvpaJ-}Ou{DOv4z(*2)Kc`d z;;1&=F7mg=xpEB92#H+4M9i0uYHZZ0w&{bpt7K#=o2c6-T$$pEu^4jE0 z5KuPzwXW{kdSq{-Sbg+b&S9pZ18g8Tv+xk&82HobAOJ_(YjwIhX_vh-X&OToS5=Wh z7NP45$&D(xTqD(hZkw|fxNQS0HYW%x)x&~yln&?h7mSRPvut+!%-53ba^Fhx6w6P@ zpe0+{5S3eqb%p31e;dS*gNXC6PX5-!STvpu$Lt_di*fWAli2+JmG{EkPHLunWEQ!z zcpg->AUEQ`J-rV*iB5dLA1dt%H)FmwG@rsrM0!NtW{TKA3IJPdoDmroPr94$nYm(} zM--j1Or0;Dl&OkECsVg<%g_xuK~=0k(U*q7vJ2ZN6G*l` za%XHgDRf|<%4Y7Y-dt*1Sa0f3D*Qx$h~4t-yK8ekW_SnH%VF!+C`@Az^`V2W$~oS7 z<%@+>!14$El^opRr39OLN{RQJ*}Q790if7Wj_`U@PGVc~%~&w8I==R#a;QuMonrsE z6hG6yT!IUKy&h@XkkbqF01M>$uf3FEq01z8`1_=D5HNWLO6Ii9(CNaG6{q=K9<|R2 ztmDRa*J75W){#kTv4Z|Xu}(<6W%-0%4H*1PrtMH~OI+s2rh|#A+lU0=GPHz}_Yo`? zDr#v9J+*+5Cs(Qxy=`Sy4Rrg01SU9A&#a`AdxjA3d(_(elF9c=h?iG`eBE$SNyxIQx?AX0B)p%qPN2yqKz>H)@g zhlsa=vIvQ-s;q4NQ2dHbbLs>4+#SRMt{3+i8~fXpD;b7cS$-tHWIwR()u`k%qwXr3 z)U#M`s(KTD%fAx4uUBKfwZ&?pPzP3-{oi&-BuWa?sppQldS_sKh-SNG|lEYJ~kV^~a0 zfWS;fiSOj+gBM#NeGm0*z&6vFCda{xe;&84DVwEVSn^A`_5Wv&G&A{G-Nx=~2V36$s4sr@PP% zifPWfQ*A5~WdbM1(GWu|=L}Lzh4%A@GH%GjzG!Gx zO0IG`SKk!%S|3gIY*>@h>ho@uqT!M4LOVL6&?hcTQifVhwa+|tjkvUDaZ+J#x44dr`ew8%pSG(V0>XVl~?!;e4NeTG3zK zDTZ@gex~!0>02_=1M7ZULWoH3!DSvbtv_9m{o&0im>NXys?<)0d#nIo~X+81s!TwOSr8HEa1@iaBB;+q(mO6Qz!dHELK%nQ1u42 zBWEq`h6l5figk6oOwNDliAU{Wn1>VlMc?4AViB#_0Ef3KdkNZ%Az><|%<0G$`s{+c z(?j0JD>pCDvJy=k!wW)HqDRhmsCp!qp)8yTJp2yR>6d1^p$G<>4AE~e!dR|%*<*yU zU(^Aani$}uI8ofKQcx{EZc{s1>n(-Y`8rKyFU7dM_`PwxOqzvoq(ec2es^-qea}|L zthi%AuWq;MOk52*b&y|hq)^-w^pW1U`R<$Ppb7LW(*nItf%NSHRws7B&b{a#MuRy$ z6~obM>E$_cuZPWvcG8x&(2G<&c=OIc_7NQd9~xED3ds<+L$u%3YK*W$a+ir`eo0+hyBxO}g*y!|(8V4zK5V zu0Ly=@2=~+>w16QpZELyAqU#lJ=vPX`taFVGvcZYh!sC&X20qH;8n=9Pv2aV#1Bkg@mhh>H zTWMSqVzQ##YS&UO=6ukI4Tim87SVz{32V?CVY-srDHF*Abd4*@ip&@}XclX3OM4!q z)q@=78Mwj_7Tcz!2Vgf$r>^4Df_BDPp&?Xw+oH-cHVZ|LcfviIhY+lV94*q!OMbT^ zx%vV}%41yBLm_4tWUcKoVkl~NS|hyUZa(zPvlx12NM<& zb)LlhLQGgb3d(s`HCN@Yi{>e<9^Tj&=wsJD)@-*H`%XI4e-iN$EEl}W$CR|+=mg9j+Ba6aaK zy*LLIwEm9sM^EUGLJ9iZ6-*S?teSc%?tvDg42fKg@+gP)Ks2~8YV6j9ai%tI^gQ3H zm#ZO)+|R3oDk=&k_ivQa$$_HT(1*zL9@drk!)r}&t%*KYiRJj!_2e|l5EuEzpkpD2 zCBsQTQd>m7-xAth2jZ6gQlU0i`C0Qmb2|&j<1+naiJ?*c^dDNFlSLvTx!7w#`?K$IgO2IMtlk4k^| zRUm*U?1HQU3t9q_J@8F%o*Pd;zTH?HWfueQpCH8$+<>?WBm)E)XGcpEVf)EbRMqjX z6e*hiT=_aZU%u|QERoslWpb7k&BpE}a7^@0U$31Qs#Pv^t#ammHQyUInn+$1bE{zA z!vZxM9yQ9teCSAto}-2)?aqfImRd(j`u#;p9Pgy{Ut28_6 z*MrB&ZmRuD*?z#KB|c9fc{W&>Ue06M-F`Sgl-~z1y#j!%vd5*@hjDVDJ-&wxT0i@^ zDmgx+ZwMH%vHhw)PRatS^{5c?2z_I`JMeOp?(KQ6Ey~uVt)W;r4qSf?cTI6~31kb- zPlb=tig7)V;bOxk(R&KsxI5|CRL?_BHfh9T9uG*K1f{$fEpaTM?S!@Oj=0gl1xtF# z87T|``J#OwU*wr0;fwx@YLV9k+mWdE>yvOgSS`*pHmzO1DbvAj%kuS%gK0BT(8VRE z+89e6Ty~fZ4j=h)_9gM)?%ICOd$Q(}o$utf0Kbm9wBmQ{Ht%O={#hZc>= zL(6IE2iw7l&Y=^P)x2Sj6&U!Vtn78@uWzpye=c2FM+Kj?_m-*v2YRDHC$yyg0E2Mm zsOc84$6i?^6Yj$O%K557S6o8VeYTQjY^I4N{>w{ONMTl^mTeQ1BpN>!)t;Vc(Y*81 z^1u(Q*!OdR@Y5dwrxAf!V}GIbL9SRzYSEwdqhvkWV3$NnYV}VT;Qx^iT@3QnApv#X z``G5bypFpD_c9k$IQ+zFg3Am8nfnt>AdakSURMxmIGG0IJu~*dP}>6#^7#uo8~^#G zRFk*(3b;o7Q`>Sp-fr<7xaQz)^&P%3l0JS^N%fNP+VXGj(%T9{O?dUBmG1F(0BUQ6 zvy(Dck@f@DNt3jzDfLB8-X5GC{wL`W&)@(XF=s!)1iufM5_1|zb()y%w)I~P&tU&? zEr7#@dZV*}Eop%6#zt;JLweO&|b+BQ-i>}oMZzB?zN zCCf1yc{75|8cjFqFEc2QCZ8n!hG6t*J)x3PdV})M(GD&)_@f!}qh-O1@OSSB$=9x_ z(e=%L)L3q}dY3#E-kBT8ICmppjt_UHzGxi9(MYoC7-Gzj@wW0BNKrVDd!#iVF2gZL zuWcPARo?_7cILNm8w@1FK?W>&uBa zUYfjIB|U4PNBuVj5k7`7-sV2Ad_lm^jCkY9JH(g9U7oZxnKk77=dgF-S;&cau0K<6 z)h!?hAnLuAJ+_$O14}eQ$Ayt`pftmTl=o$i&~NbGZ{$tje}_bg#$mVG&O>sM zu)-*TPL3j*N0S|Je$Aq-<3(OF9Hl~1?)E@JWqS?v=b_tQ`XOwHA7O#D^0Ip1Mctw> zv%u{~bQLQiy&9r#SyilC^k(yJ_kI(tMI4=dUxyVujC@jWtY>=l1hojBdk=z@JL2IMN40IKr~tm?GrpkyuvqSeRf;F@PsgH#F|PN z5Bjwq{@K3-aSUjGJDTt5;%DJZI~7~RP%p`Oo#J5q8DEOTv+(RCVisjpzZ=zFtZ&H8 zKnNzcq8PY>+0-*UEq2W-I}VoVd;``-87w*=a=;c&6OpUfw*IpC`Qr31-}4`wIS;b> z%;&Kdk%~-AP?%yr{FqvbY^Y3on1#DbpU;pM-&mC=a1a|vjJUVA_If6DsI>ufl9Qf?tCrr81`jltJv?wPp zCah6uAenUYyNB|joAXneg7=ie_cWPg3v{waX$f%OvFXO3L{%WL)D*}Mn!mBxp6=wt zo(r`ZzUzB9M`l?*>ymrl{tZ%yYTNj)A;X5;jnQr!q@<$b{tmoCe6J71$i2TD$qCwV zqjJC1mo)3uqMfQA`ea5ydL3ar@#)I)HCtZF9Z^lrWP3<%o%jm|(3c`#R$@lJRtuZo-HP$>9rGt5VY3JUWK9iXz!LSxHG0cl z$l)6d*MIJ>el@@j6!7Du(`=PCwC^9<_1Nv0K-7T4Xl$jt@vub*IuC4Pa}A|mBp}4^ z8m`MzeznIv<*etP9YVbp-?y9z{q{t(;o^+!5_`}#{WCq!kUeUe7BahlZuhnC!8_z0 zQ$p`{tHo}v_LPUx=IrRPV&jB-#+}Prm9Gj>ml`iB9Q_+kYkc?vr!kMOUWaQV%+RZO z=W;bt36F9cNSt9frq4V^HhO}17Dm7P6+d&(mB$pt1{v1zKA$yuI=Pj!J|4M;`tCQa zbkfOJH096~RfRXB7fk9jX+@_;2jD-jw|aP~ajJBcL$V{|!0t#M%FmqmTkq9JB=IDx zKWrq~qrPTL{;>vykk7Dlk@|X`qe|buwZyYc$>wxe`F_8KchRSKrV|CuCrSsr0Zc8; z#$+HQh`n%ybT|-x)x=$Vzrwq z_n%v%5qRV#!FB_?Az}}ykhK=snE<~xsN1d{!9Igm8n!KMF%075jMNm`ourg@`_plI z+p}VA@vP|Cb?!e}%GUDqmY(a!T1N6b`Y(yqdM<~M2-}1{OJt6(ui71Cev|JOrNQ4{ zu0<_MLwfQuQq*l&^!=5I-2nPUO8)J>KEs~zldHYu5+v-PRs~+eN=6Jbt#XS&+&K|AT3YnJAojQP5hpN-#U}lA2HCka1ZHmb?E9UN%Y6I@DmtiJ zX}^YXKsRLljVzy3M?m@1RH|%E)XOQSi_9lp%HOW*j1dDn`jEp3PX|u>$P)SZ9~y?7 z#T?C}aSi*`4Udb2%xQ0cXr#&pyGG2^3ttSq*EO@kvTWn0Sbi7uXW|a>C{fM(_Y+ZT zm;gIygRRM}-emtt1n?DKUaTcYU^t?zNTU5rDb}Tw_UgKwe^u7pBb7E zDCW>?$&SKdH#5HnzC7J)=qD@(-2gxIR@yK2Dr~^I+~p*0=}<^J$ud1;nKib|vM;1G z@WHuOr9G4woSSj!o}dTb%^|5H8<$joLo-y96@0n9O9j!4b$*RduT`W-3e&xds(yv zrC01)k<`n7hOAJY(WdT79?*cef1(hllpC1x_jN1$-;Ev<3YpOsrlXed*_+jF=a0fH zhXj2`DbGVgDzCdLr)E$pFH!bNT_57fwwFgg?I@L{Pre?tWp9Wt&+3^zc@wi?;(3!9 z#hMBU%h~Kz)%9iZ2Zm9xd@tB5(kPKP5j0eeH>Wa9!?^Aowljal`*Ya5~i6(o>^rmP*fpYQ35rduhc+`x0v42dnC&3of z9u#9=zuf*hgX2miqC1d>OZ>mC}m@sq1OO)!H6=LzInICUTIq{TpfpX| z*l~&KM!JlQ_m)vR-!16kWvWa144P7Pg92Cg$Jfy0Up7Uza>}y#52@%)oUEe7;=>cY zl`dr|dNZeBS!!0((buG`UzUj(z`>2^;SO9kl9OxNZOkm=pev14m-ny|%Mh<9hlN*v z?f0y*$TQK%jn0KEr%Ty<>@+qFHm~le83*rjT0Go0Uak#n@~X&a)x?H#2@NcKwynbB zkW>%5rsG+zRW^8qisL^QV67Iv1k@ml$Mi=zm4{|t;G$(GDkGNf3$?PTo$&ARYMVT| z6xZy#IrPQIDV_sP_+rDCPLm0GPI^i|WYcjPejqc+q#3o29g~dnGzAo z3VD_*i|%^-PPn(b=1F@7^Nxlv$T16=ua%ehFZ!$2yr9v~A9ias)P6pGgcp47^}!ni z(CUad5kAKD)n(p1>t^aYCz0y(oR>%;vGO?ujgTEThCEVIik& z>%Wwp2zTeinv^Kc_=PISS%e9^IT6y!4F{ypX-QiW==5ZodOzk`VhuJm4tqX;bveS? z2)3k{bqnPWQzp+IEA3m!A>t!nM%LnO9f-5m3e(Tp5Fioj3gf{Q)QYhLTnzR|Vp<`c zvg560QRO4#Z;Ln%8x0sFP7F1`eCfbRKiS{+7PX{nolXuEPoP*a^eS$$A+H8s^E=y& zYn_|z+Om6!a2cx^^Z6%9&OEJP5?CtFD6Jrb7>`O*20weKlC~edsdyCV)R8}7dX}Nd zT!gEe`J=$!Z4RK4UFjh&LtM)4dg$Kpj_rqXl~G z&EA@lXUN0ZxV<8MdQZiL{P0(@^!Ub$QNN$Fr{DX~wPQ@>@$L5-^Gc^UX&ZIWWtF%) z5T00YjQcmC(}vmpKZH*0EIWSa$poua7B1jqxPf3Ts>g=n0b%>fsuMYhmuod>Pbo2f zS>BwxM9M}LBn$&)?L89o+|jl;SX~qw{?;`{Zmne`M<>j^z42Va%0vAQp6127D;olh z7P+>SZEo8W`AVoT>{<$R9^7?JsS-Y2Q*%~d0~K-#TP=M^jryc4;|`fv(h__ z*)8D}#y2mtT3%bGT~bgWV=P8eZ+@ zTHb893HiNde?FobX;#0p&;P55D@I7{@x^JNHgYXU4zFNqHpG z;l`4KwC)It_4Hj10acOoms`V2mR~i!J3LWgj3Mt-YbBs~61-+rF?n>KF{MmyA?+g+}jIc8~sX#qWe_cIpl zFZ7pAWWnVHehq`L*PUnoNg(!ku@ASUK-eZhGQ33}p3_@KzQoTSSohB}C3RMV@A_Oc z5a9LtpIh^PO1Yc~PVhiyeNdhtv+TtwQ8iWo0WfZgmO7oIvmDnZjr7@uatFB6msYMd4I`SO=)Dv;6=2?Y4QvA?_z@e41~RRmjmQlVI0 zGB_AK?o0CP{y+}2W%LHmhT4OCt0$ntXY!8D%9XqYKKb_pA9qA`rd6{GyJmvOHpEoN z(v0cCS%q2KXP9R=U--zE->|nI0ZnhW0A|lV1h)i@_@vzto|FzKf!boX(V7zG)b}Ic z+>M`rq#X!w;g$BQ?$ERe^6zM!hVq|U!b;c3yyq)$OsC;(%D4Jf`c>g7%ZkE%TQ4hy z#*AHES`gw2Ai=p+efegp2>QWm&t94I2ye9F>J#ymB)d^U&)glhR3hm5<2!*;B@9I; zDfX9uJty&M`D-=xqof0rt|VeJp_SwBDH&l#t8iQ3P!p(OT@&6R3rrH;Sxm`{nO=eP z-UMtn+%7Ggleo7@^5g#?;fvT6wozT@iZ!JBV^b{AyAG~+2o9Uvi4vU)52=LLB!rI{ z$kQj)E7OHf3y~nlm{z}LulaKNG5d|Y#5Q#p5wWf2HG7fd0*q|?%UMBnc8o#o8XRA+ zvW|swD->G2!@xAD;Ip0&$;V{vFR3OGW=IZBc@pfL;c&n%!=BYOHuL8Ai*2-Trc( z*l`JGL{0p~j(FbdNBu!9SFj{6^uw3q~$=<}MnsZ5%mmqj(zIjBqHn-m$P7{*azXlDqy3Pw#-d z(y)bAb-a$6_)xTd=WrD}yEaJn-Od z3woh4a5U!hPRLLby>Es2&A@ zuN?SRSJR0;b$R`bMA~^pJP*o#Lyo8AO+EnNS1Ab}pi4J(-NJecLjs?u9}Qpi$L}8d zS`M6rQWk>^ocl4ISrGoujzJA}-Hr{a#kh}))y`dEqW3l?uuaU?E!xop{q=VfBklFJ z*h~|prYEeKYmVvA#LQX#c|!sNzm!J^kwt)$zrHKnd3UM5^G9*pLQCdyF~9~D>RoJI z2z0G;P>{2Q-mgSTHhP!m95~D(KQLn69NdF4ZHL36bj%sY>JnE28KW)Dqo$*6mn%EC zp|-2JEus!Tgaza1LXOJ3t^_<0l17zk;dR|o8_qsI`LyfSp@VBvTPHK*w<70y2I_)P zFGbO~L8*;sDs=V<(V8GvP@pc&4pm$DcDdji(tCD7k)2?AXOz139(Q#i+%id1+Q%UfQuy0zMws)TA>R6 zZ2h6e5URw0a8F)vN3_4@!{rNJ%1<3_9QdVrWe4AW?{bCGm3g+LHb&7A+oBJl@EE7CkCz);N^07 z&w}g8Q*MK3N^IuspdQ5jNxSXvd(=$=17p?2^_2*WLp$Dhh$Wi6f^-+K3vo47_S8SN z>K{HB`Hp{THX=%&$ZEuoH9mGo`ITPMsC_%`T&L0RQPJ0oejrci2Qv*2c`B}-GGzN` zmaZ1AVW)2qylqrxO!yeN!klS@2_&16HDakgbRkbG?dU)lOCInmy0U#~bh`iAxJQG_ zwU(6>h#monqi#f1ofn9gdR$uUKui`(xJET=WSvG;(H6mG6aCA|xNs*Kn7oQohHAQK z9W`<3Kl_O$URCn_&aRbQ%Cz8{dmCwN)lH?}a+WawDeW@_3sQEg-EaA&5mNT`meKlU z{j{AYEBkk!IdfNU2{P$9-bfx}yNb5XBO7M7INfTT*7D&@9{OCT#=x5QZo7^3NPd&t z>2nV;T-RT12B^sUf(pFZPJ~gP=u4crH&!L+?SxZHUwUWTJ?@3wTA4NY9`voc@#UA;LevoLV5n>% zcQv?Hr5sguzAgF9z@Xnho7bwZrz^P)N!C17OvYYkzMpd}1H4Ow3}+@)@jRU-Wg@yT zauY;~Ua{LL#gX=kvkOyCc_~KT0!8)Kpr}4hy6J|o*^L{CSO892sk_`b-M>FPed7)N zCu2GSTRSQWRAJ@;u1!_5cLGF(J@)yhMc; z@eOB`6B8RpGihodVP8(Kt*`Veuf)m3nm1=9*y3rFk#%Rlfs=EMcu@N^R55pxm1@mG zE~bFw=!+hL>a&kN9`zju&a+rxw=E<9*|xFFmD6Fge*AW+{KOG&s6n)Ly-a{2q`2_d z!mz7eiBY%Jyxe2t7dYLyDNdL?t)?xvZRsxC#`UKzCd$ONOBDBR8*T96&alT}I&kZ@ z=<`WKfEsn4xz>~YD=;o)AGl!=F)%Z;{}{Ib;m-DJ*Ect67RgnmF^;3&eyJ+Ti66*y zGu4l?O&o!iYVnBxzFOoK`@55vR9)Y5gW(OU$MDYV!_mc=@Pc09S~l#$k&tG1Zm=yx zF9=I@D$+ZOG?3(D&-)PO;93~Vv=ilJQQID0rL=@5e|X~^j?L<}jkk;kFC6WDsEV2Q zB>yC5kZ2|x0tCIIy%NoY!ayp*QWPWOe*YhBbt9=W#{{}spP{AplA!SKF3mq~Q2$dH z`a_uVkpKyj0*_3!g`5dVoF@4;hz-2n&HstV5k51QXH~^L=(qS)b1xi`0osj2V-vCL zq6X165Z{GGWPDeGBq%?rJS60aMNCT?7^w^%+z8=_gmwD^SNfb?AzdVdHjBDUW}|N! zeXs4O^RewkOix1LUq3HsjgNgoTB#79j7^+-p}k34!yvanu>Auai;q>Okp>uD1r$Tj^oSH1OxM) zKy@-n7;Atu%T{7l(@UKp| zK(r?>Nz^S`(H1cO!7t@{zc0(=2DT401v5`q^{1$M8v3D~Q!hci`-+B80^B0;v_w;g};BeWrhv11HGPo*PE7ydM`-ZxE5tN}m4%0$VeW#*$ z5#Kkt-VN#R7p`p&TNf|{7ych|c+gHJM1L|Ts$=sL1TAp^`a;0o@~jE~l493Mx6TQB`sn5Zbw44o{4CNoN-Say;U)%s`bc<>;p3u ze!#D&=bsH}hYCFdlGe%;@ed+Xme}?Eus3d=S>f9!1XqyK&;VfgTa%i*OR$RK?o$1&iTHyoz?-JVin02{dc;)|O`O;VFUaK@&FMH3cVOh9~ zfS?%pP)~N`m(OZu>&ko#GC-wkv*3WNe=~gR0*`Fl`nBya@5Y;V|J29c^m;z(Mus?% z4b8C5xDXw$II`d11DZ>FZZjg9dwMqItIpF7`D;QUS=eLSMXiuz9IUyj!PFih-J-Veol9GP&Z9EcvCrguWIkLee$vvPFy2TbQ7|s?$YNRj358>FGg0nVvjp` zzm-SVOx|Y<%v|ZMy7>+DxhE}GgGTm4I$#jNWzeBK3tkRg(TC~<01$YhN-%Po1YcR4 zJ*Rn}OFx(Ty2*=q9V1Iqgx1%#D~Nd?y#_bR#JX(%Q8Y@-K8&P!;a5Ax1>rlkj^lfa3J+h zLBiaPvcJvT=+8SP`eEcVoyLL%cA)z7p83!(pY?9<2Gys(oUzpU@P1Bx8tgUH+7gMe zE10Ew(xPI|H74cg%3H;}e`Tx3zqUzWKK30hy@H1~t0%C)T$D>bMondK81KECSP3kn z;<sW)M4AN%G$j`ptdi0MewS9lUp&B7IamPAI(XmXF*cu!N*3a0G*V`1guQS_L+D4bt{1q_PH=YA9Rgb^1% zzzTT*jEw?14EDM}H+pVzH(98+`+j9(%IRCQA<(8_d_^xguF})SWd6w)c^FU?rlVis z73My}Mhkd`1P2y?E*c8xMr@D&dLh6IwrND3R~W*Dt>`3vN7=bsWLvp3pPUEZ|FDUB zx0wXR6yF+jx#`{&bHDt1c^Y)d;URuz{rb6AaWTRXO_Lfo?6jpMK|y)<_Z4J6lrGFD z`X0wHk~lS4#(jof0;&N!?Z5viyGZ3^aR(C!xe3gDOa&?r+tnuteiyF<|76Ac?}e5G zVazA=Xv_Ufd2N$%Hah#q|8)75&AQ`|T&DZVFB4`8j$ZnkI2h#xI<;t{NiB(m#Jt$rl$gjoC;n7g(BKEe^|gut zfuP6e!Mw-lCwPqVqCO1ef3AEG&B1?-Wb5kkCL2_5Ooyj*2{of+1=I$K z%gJm zThW5qZxQXRrF6wQ$ZOc@V)4}%I~Q^ma<)`UA}x5W)=alnrh8Air-Z%+kIe82;g4ts z(E3-b0Xe(EAwvsU%{Kie^U`kdbBXsT0J@P-Qsd z!-o?T{Mo|B*8j+TG=5=FXWvs`L*$zb#DRQhOGUXFcki&0zcJFaA#P?}5qo*f$H}ZN z9KE&sT0&8FAr4MX(PvrEDBq#ak(&HN!}?0@Ffe_u zlUAoBAg25s2|cCN4P%Hk#h!w`WmRY0!AxEsQNMc&@LN~Hn(00yoaHXQJqLwQg<_?g zQf`?A*ZYOg8#q$jAw%oq0`Mq9O6rt9Ikgbm%OA!&46GHNf6m)JZ<}@_h6C39wHCn4 zmPt;c-CnUs9Lx-zYSG&#o{7+%3?Ylku2fC-e-n?{PKu)AsKKlznf_8TaF1ULI+)Y7 z&6m*xS-58e(lm1NecVyof{}J~;J1U!9N1zmOb3^YqLqmsVR>2nGK+!^Cg!f5{zl{s ze9~FJVG<06oiv{m$_w;N@`34(u)D33C1{m~$#JNO&ZtrnfBz9yU%|66?u6u-Xo|a zrBJJYZOtcfCF3sQr(C(zT*AAzBbe^IF}4rX9h}b+Py0sIU`2B;&8AFw@3Uo_o>t!C zWYqUCxEPt;N+X!$CopW#d8w0|UL$Q~^C33o=k$Dbz#0fHSb%z=wT5xX0oI`!?{ z?M^WxY>Vif3VqxX#k+*x25IdMz0WnUg&ojD1k+;!O-{2FX~Wg7L)=hrHk4p6WoU9a zcLwP@0Q1YO)&mCztARmi2(U%>PKXnZi&_0MadHe9Y2GJ*sf`nO3He%)>aFl(oh>2sd$Qy162I>+yK%=m0v}AldM?6ds zR>9Ul8^OSZ3D5C@1ClN5r2ukO@64mvG3sC-!Cf(M?SNlg<*_|88Zz!?cMU@rQaU13(p2Vop}LmfaRgq{?M^r`Co;$ur%OthJ^iNa8-4)WxvzX`epvQ*q3 zfE*LQC)8nVwdVj(@lNpJ^i|*hxYYh(J<+Z5p#J1NiP&Ad+QAlhRUo?((;OKBUuR{5 zUlj??Rl1#6$C?GT81J;NLRX*Ed)_yIqUl|%J<@%xZJ44yka)C0`6yZZLl%7W?>?|o zb3U-=g<9$n*K(jWY94;I8=AN_N>8uv0NSR_uLLyn%wQQ+YR2`Zz_8#Q3yVPa<$G8= zFwQacddE-G+6F1cbWtIaQ`BZrA{^3-hGhx2mJq>$v%OdjX`%v|7xCaX6uUWu?6`h} zcZuAE+T9O&&X+XAiP!<@Ojq$>7opDjvu9eOG!M3yjF<@NXFL-ctOr`Ogu#Us#$fw` zURibxM%vmRFUaaUJqvA6Mpu?;p`Z7IcjIX$YMZ!xEi(xU--|l zBPE4Rw!fYsGKaXw79(9>w^x5Sqz}UVvroWLeIVRF3BvtDU~g6Hob3kZU6cCTZdW6M z#YcVZDQc(7uvWAWkR8ZoC=?%Gr{r0H)xTYnb{iQpFdF-Yn$-ucR$OKvb9rOstGG&o zUg~bZxhdKFGosJ?icRff#8d8m6VC!+A$#?}`!ADM3wK`S*#q$;FzaDkTvub>W0uu4 zF_h#yx|i_whG{_AlgTlud49X7u0q(`QJX9rvTAx;^2x2nsa2MqGk~71>1Q>WoEKCl zBXh)e*Bfh#ZFCtX$3!hBL;=lYIBC2}#QR2(r31*jk^cTo`;Gk-mWMGe(A!&PE;K>vP-h1k7S5jm|Cw+=qyIE{ zjkxy9q?l6**A@ODOzvm`UQeyaEma%(`z2=f(t7}3!8v`fIDzSR3^4s&u`Hna{-ad zwGDBosp^BlVoZM#NA-YQ4Z(ylAp+cHU!CdUYn8Ji#y>&XqaXC?o_PS%Inl(aC2-22 zl+8n)MRWJ()nQSMoJ3Cy20U%g8u;+Jl6J*h6w43GoeHW`bT5cisycIsCey4+@+1LR zyBO>WwCHrdl05Q&hcS4c%6KL!K?`&FBzdBVXy`;gz!dz(Pi{`#8(um+ixa2vIl#4$ zxLIOp5X6Nf0GRr!cM#~=bop8yT5LXf54}rNLl%?xCq-Lw&E|OA&Ub&&Y5YixefV=i z-p|#_|K-%Xe`V;a!sddA3}Q3OC7qGICz|$29XK;zRLtXeiIZ^$@xNk`^S+B$z{Dev ztoC)ZV4|v$Nw2;=@OR|c?7qLJCQH7~R1vRKP+VN8AaSS9-w}U)S4&iH4RoW&K|ex< zraSgo2^K9nlr29Jy4)9Ko!wG`-(6p)lCk10ZNPjqmc`teWUHs%3d%T_-|T@kn#G}IP+QK#ANuv>$Om54qoTmEa&C*FPY*y3DphW6iTR^UD8FEqAF z>g#)E(0+2zPHWjy8MYoc@rN_GbapPip^+BVj6zEkUd*qyXS7~$fQuuTY&Yo{Gt^zF zdD0wA$(^f`BxmEAON6bAp6(U8Gug;$P@xVVgjs&(f6)WUx~ zB5C3K5&qu7N79Zi;S8`@-C2!J>oj@$mwi4h>EUOFhnS9B524o!xxn-jL7PQfr2u8^ zoszQg6j|uUA8fnB7X-Py^!y!l91I07JqU}xzJt(`t2?A{CiY)W3Jp2fv53TA1*sYy zha!M?7jO4yhRLaA%7+wm7A`lS^_5DIpNY#>7iT#HtgWu1BYF=u>5v#Y?&ht}WInMA zXKJECQ%M#Ji+mVX*g~~nvfZlC6As>j-}$x4KegVkDio`;HjMPVGU+1P?u)BL9h(&NbQEPH8E_NV0(?W##(&vs|73WlH?`-hWyosBA3DD{*-ZQ9 zv95PZ9HO^5jD6`Vd|{QlCCBm>(@zNja||0PtZCm2Xi!g__=oupr+mW&`Mey@Vkds% z?d63d8dHJQ>|U(ttSaj7xl*4>aAeW zg1U#oa~cMwr$72?d-^i<;6_x)wVU$~-}wMUTw_`|7hUtl9`m<3^8}&MOu%C<>%jfjY#^Uiozw z@>&Um?0$6{L7|Su^;g}^BX@DQ`(0rci@#jOQUyN6$}0Mv#c??Zqsf}Ua;rnRU|0&F z>T03>P^CK(4=LQjs+=u8L0iT4Bv^A4&dhh8{s@N!FZ}{T6!6Gu_dx&1gDpiQQ1ek9 zK#69*$Mkc`<5xk8qdS`tPb;Q*M-Fd(D3iAM%Zz#jV0Z6 zHhAG3B$z(vmFgrwkP!F6tiFXKweIR|D45+%uZW#|R zy~MeG4yT-m-(yz#Q2+!{DNP1RQ!qmui}0@QwftmHYAVYIy;iZ{J>>nqf7ua#nvt}X ze;K_k>nZjEe*g=-HEb|<1m+?-X(y-$!H(yKV&)q{z42U()DJ)b-kU2t+SLHwd>-k*xj0TKGqrz#{ZIj_>(^Ie>F()r;h^j_ORT-1*;Dmg<&e}SR?yA8R`tS z$^8uT6R|%c^mH@DlE?3l*j`ZX&Hw{Qki!?UrNc}eaY0;a*0*on(l?Cfa`Udq!sI1B z^*{3OB-wzr*Hb-YyyDybJ!|LBfW9JdJ>tEG;f7Mm`TjU$s8r60xp=+%T`UP)vX}np zs(CM=2Soo^<9`zK2X~f5f1~r$LAoUCfp{YGJi1u&b=su<+(P!szwj7oI53AXv+jOZ zKrR16VV_UtS5-~P1=RcD00f6Nz;w|wT_^hGRzR9)H zQebZKgJ;h$ppu$FO10ep;+Xi_g1Lzapso*$K@4!Omi%1xm+E)y3m8pFO24r|N_qSI zQt&FprDKAgI3u;M9mJl1Iv6U{*~88M8KD-7v{9{(lbc+ioB%SbA7$##t_36b4M!Ir zOrqq7xg~jZ&rME#&%XPdtLsJfeZ<)3&)aI$!+F&2ocZn2CaibtOos0wlo~0LfWf-yMV#^IkJ(Xemv%`9 z(4zQGx}IFMBv9%Qh8ZDB^KuwlzJaE_Zy@9LN6@i9^UxkFWS_ikTSrHdyh)dbXFu(+ ziPe^m`ojG-A$WdoqnfwkW4D=4UboFrJ5+qf6KH+OA6EW2FYAj-vuH7C1mr0j^n@{T z7s)zW{*xylcz0iDkfc2dL$QiHRJfxgk4>B6KJaITreE(tY~*b_a>a#gETvyX0?jh3 z6;&aX<%Jqe(aj=MNy)0uM}V_0fi>s8@Y)dN+z7`RW}##hKp5s``QF(C{wLT$y~!-> z^N&n{(qnQ^YgsDhg#2Z3&zp?e?RAcH|1Mrii+1{>CrUBL?OG}0a9O<){m_FcFwsv8Nj!3f;h9*YumComl3m zr2XO*pJNBUcjtwU6g3MK$mHqM;9eNjT+F|v1+b249k}X&945`RRusBR+ zB#TQhuf^O)wfFryN^yCaiB=Zu2tlaPGC+43hNDhfWK!vyc zr!rHRD@0mR+(XuKjlLdZ=g}x8_QwaFSi2OcgoK9P6;x^|eVGkE zi1WJhgLOc3a*8{N@;}&qG?7^UGfY?y79Yf@qw;82HgD z^lQ~-Vj*nAEojz}ybsqmewWL{siPQLio8oV#NV`9+tBm%A$zNrXSG+^RAI>mL;$pK z;BbH;T3wD41N{I7pF`WKgNS{6nG4|<571UMBifpy;W`>G2*HH|_j*yfeVhx0=ZguC ze?D6@`t?gz&t0IH(j@Gj7~WbgBqNa7rIYN;=cK-V%FMn4Xs}5qoeyg^m~pZTUAL?( zHf=)=LT0w#gPh!&_GTLt)%RfKqEt}5yOm#2Fs~*F<{$oinxMv<0<%7>9nl$S9$#G| zAwvm?G&A75Ff8E@HAyfdGO&+C$dAb?wqG%AYNy{QZ$Y;!Vcf9IZy@&dMtAyQKjytZ z{KL~`9S*QZGoVR4Xjau>qJ6}KHp65MQ)b{)BYYt7a4}YYd3Rs%g>wgB!NIofMoR}5 z&<_HuiuIdAo_#QWxOMb2z5Jq2T+1p}J*x4&8pLxejHGREiH`L$Xyneh%HxWmc7p@URz%Miu%LIw_I0k%{eH{h zFnpf3tj*pra~q;KdX7*Ee7XhX$`>e;%9qmP z0mA_3)>9$SM|7j(JTo)fVwp3;F9DtGKr~IWrGxi7?_E3c%A8vy(={YK1a^wI_UfnW zqb_v8$MT1vjE?MNeV$g@jb~?IFX0;e*fm@i+FbY*r?`Y~_lLTN=eaE8NbWL5kM=%N zUYzuo!d$h8^L=${l}$T#sH~i~%(0`NYVXNO^nZS7`Z7~1C}h#}tyQf|+!hRBMs4?8 zwD)^G!)w?W+6qNz-bU})XndLqaKm=upilSpO#=^FGp2AU1Ta6g=k-Q;C)B+0bEzFWI@gTkn;lU8Phz^4Uz#u)2CZ}K zyrGDJS90b+x_Zt_tg(!CU193Us@ll@xwqDq?9T6_1i~>TtoB)$CFBtO%_T=c-xl3TkvuVKM1EB zjoQn`^?)FncDa@VvzuRf{Wq>FnA}Wak951zb_2w(@~*Z8weFo|);6_zU{>y$(Sg}; zhE`u-r~OaW)}JBQt0Xz1!YHGE6pZ?Oc*mT3=n}aPC3HXVT&Bn9>Eh~mf(()fUBQ{z zJg=5*H4FzVB|-Ca--b8-Qed{?{sudska+cW_4M~d)V-l#NVPuou0hB|ptJ+9pe;gs zACiimSdtXUb>&4ElB(xd2BLcrzX9D*HuhopO%*BS%^`IK6i80)TGd0WCQC`(bbTfm z#OC(PN6_`FpEftF>H6`dByW{ePm=KXgMBMHkI#juOWsZT`@8={_N`0lIf*b-`=Ybl zH_%%Fl4Nq)$o_gsnFIYF)m>>oQ&+bQ1)&NEN(B`mwGN;%iAa#K3e=*~)M}M^&@xE~ zATuEh7No6OR76IJ6afb&5t0BxB7$fc1u;NEg3MEb5Xlunl6P)E#n12Odq3X&ndIi4 zoa}SX9@btf)9bRUkd4eB#Bd&+`>#~_DLT z)T4MPA$74%mh{T_9R}G`+c5zUGSP$4qZ7}VpOZ(!;w9hLjJia1!J%gT30FxBtJ}N` zpVuXch!s2&w01cS13pUNgMJcJk#K{eXNFmU$owg#V^NCip4w9U8U8cgHMkf6)WE|g zih>kAYx4scB0!a!e3WOQLZrO(5xHv_WPqFMlGzBv7I4GvqQEb1SWYQ{sBJ}L3%~fk zz)r{S{fMVAMo@1omnUF~LvX=ONhNF;HJk<-v{v^?^ix+@@$v`!>tV9pcn;q!)aP<# z*1Zs!QC_9Jfha86@t$Pqx-ZkYszD$5*7SD=gADOC53J`z)P7DH*ZR>#8Hc{E?gB_f zCG1tzBxzpImDhN87j4~yg}1{)05k@o1CAdxaF+1CaO8Hp(KEEN5Xi5@_TJFctHonS zPOk;J%A}{#oXMzlWdNW}ZT<4M`8xrbKTAfJh0H+ocX@mC-_13-mgfit1~giHk6Y>O zp}kBP9dElverutSl1uH=?ra{UXqH-EoC!6#bSYi-3H^Fun>H&o+J1)-iMxO=^&2~C z=QaDPl0fpaWaWqVkSV8$q!Vixbi-iwPke)3R`5JofK@v~phsXR<&&2n%VuN|YCL&t zSCk{Ia5B!j({_Gb%}xHl%-Ls|PH1=bsnD$t;LfMS2gkiLWN28mKGQ(F>*?rU7_CY& zoHLm=RE9MF#Uz$)W8{oEDyr(k?qhkdWM+)HfWiQ`u;bABpA|@_%ly!iLFg^X-t?{g zYu{9#pQ;K)v5iSFbe{ESd>^I5c=Jn858X<^Jg1)xBehE-b}t_&aEJ~rxJ)4bDbX2* z3BP}_`r!I*WBpj|t|rC(1dTQAPZy?6%q9?r08S=*kli5RZz)ypbDP2K zJ`Sh=-O6imxR7q_hNpesOO+o&ZXA_3r>;MG@Zlc)sS5VbL?t;H&YrI@>)t;*7~_IW zXd>F$t6JY%%iy-V5YOJN=`%QNp{z#Jogq5)XQza!SLhaE_}e5Qt@>1UYg_6W6GSlV zwi_C~UXiav{dTgO;~iIdr>hA;JV}t|NFIFX%39RNZ?0BJDAVtsdnU!{F}!}&2m|Dd zWz%y#Is~?o5LxFHt(=rOA_wIh)+3}fcAv2FT zC`R(xj9W;{xN1j3CIN6laCaCJ5hr0=RNdmcqR!!K0>d(s*3wN3tx~L|@5`&`C9dxp zmbkC1~lzWk4a=>ihqYO+$7C;%1st36_Jk?_-iwCiYj^nL z9@ZR5Q`=xd$UMB|_je(Y7?0}Q+OgDYY-gwD418)Md0Lhhc3icHd@C>wG=MlId@(m4 z_QcOexST=r3n*N%ku75)%bz@40SsJjDp{WJSYPe~-OSXAaR7$@yZM1=0)$Up{L>{F z+d|CUpueL9D1H$40ma7!Z$t3!gx7#L>(<+EC+;NCt_|=suMjN=0SM&RB6URUvnJ7K zbCw0(Q@JV6Uf9y1B^+fm6Cy=HZ}PQMWw}%1mFa@RUxiP#mt<%3G%!pZyMsz+XawHq zNGH0b?p9{Y0sf=P1EORTN7;TDnz{06yyo94_onWv;ap{yqhwXdx}dBEo*6J$vjFlU z!)@xnN`dldm&j;eQZ&(kARK>i#H`ev_au%I;VFKP65ZGw{jOPy^zNzzoDmeCEnps< z(fy$4r>i`&NCZsGodKhD&l>)%XqJ948UOq=0PUZ*O$WIwPfz9|ODlsY^ED&x+7vFL zU-+V?fcLg$ZQ+wE6*1KYZ9=|63r;j%4@aCHTry$iJ$gDFDTKT{=SeN4=L0n|Wx9=G zkdGF7&T^mf!{!L6$njsfnXWayO#Y?DkscOiI$Ny&0iU*c@_$zlmB=M)UV&*iMv#|K zZmH1XzYV?>hwIEX4FGgLp#^WF9igiJ?Qzw(wo4&@%QK$h^lk+7ZK}-f@#vKM>L<*L zmlT}0x${C$dA^p#eg%=U`oFF{KQJ|TkCJ!^MmyPgC%A8uk82dnzZ04F{fkzIEnbYG zUA7pfE3yn-&X9YuKv8{_ui z=H$XwMk3ugyyiQ%~?pTL)Ob0~zwyrZ3KiBdUb;K5d0->osj zFH&+=abWX{v|r*h9;2fEWHqtpzFjDLunU{5h^T@pbn|rUZt#rG_v8n&f1$r}@m=Vc zh8$dN~{W9_^Zc_MUDuo+n^YNCM*qTmsY{Unti{QYAWm1Tur=SdmOM zTkX-S`XlhQIz3A~oHy<$37VCRJTC}3)pbdsj}y5G->wrManr6?zHul~P^WL>yg4J) zwIC?RXvI0FKHQ64Y(GqLNJ_`_d-95fHr@xT35v3962FPtMKReXgCGiH; zY$yGOi^dJV`?Q1o=gQjg0EjewWIB25aT`k|^i~7(;$P@n-Y?2k(>pOFY;ZqTrhUnC z6QA7hG74297reP@D38eBq3}FvBk%V7Z7oU2AfAZ4BQwFj9iRm3i#`URHt8O7X!VO~6=rQw&5j8|<$nw0icLt!bnw<)l5qbwF1i|lbr%3rm zdiT*F+K^Fm4=!m6OkYdzGe(x*zXWV}KLpgzCf%9Y#Vz|ww zTnROIll->Y#FVQIwa`D4hj#t(Fl5$Dchq)b3dB<~DF{8;xxeab9EsUE;3uq(Q1}{? zXf|3^_LPc$i@#or%-wrHWO}0pRk7Ff81lgDfz3UGT`BJ)AKRh;dxw}FU>kNj9hJu$ zaX{&Tq-LxDE}ns{!jul*a$eBgNw!kSTaKibj0Fhk(%b=yB5S%hW zcXCX?2o5{sh;S8bOlJA1>ecq3T>!&(FRZQZ9yy7z|Yd(=XE zjaBA9BnfiH*djn(nNQ%?x0(1eHICB{Dbk%~qMmb(aG4M1+=ZIu!}~h#D3V=Cz3qLq z?(EDxYIYS=r&{~W>n_1n2TOOgs7Bq?(VfgqK2)5FGDcu7ExQF`-Rh0Xhr;SY5!8*1 z5Hj8CQl7m|cKTr`sVgGZcV+=M^0H0Ya~=iG-orxVpDc;5ARt!)WE5KZh8fKun*rML)Lfm18VG8eh-{=SwBcpd2lT8xqE^8)EJ-rHB5VA zmGl*~{c;%QE~lVUw74f?z*&btqa$kZ|C+7kNFeCT_OQYkVcu1s7a0YlqW|#%F1nKb zcLqr#b7fSsJpe{^f`eW2!~}u4@*gfxCtyEoOkke^S@^}ysh9qxu5VUD1D&(hi;v|H zV(!wF&SdA6wTz?{-9xlpaky>5)T?X*z5#AgD)QY4Jr0WA5ZS>BKu^lPkJyChhG7@* zzVX51&j-ts08{)NzR13*PWF`ma@HpQ276D+lBABnDG9%Tr5;xDUoTd1KCQ%)&^J|b%-jN&pPl-l z(BW|itA4;tVT9jqZu%zMe8weO9$}XxUQvg|b{P90?PR~XAtu%7ZE?a>54!E0g`h)b z%Avpb8{`CNz@myZAXYpKXnw@Awdc3va_tH7HN(l{d*{EYRwgGB{&*oqA1v(?AI4@Q z#aT(f`#`;UkZ>_jwDJDprnK~Q-HeFMkpViEJfLQ88N`O(Si+KUQ!q-aL;Bm?i@_ojbmrt*a-#85oe8y@xMOgl1so%bT_f9A& zAA4QCHn*T(0+9@Ny?lBPi|x-AoV|yLy|=X6FZJCAY(VJ+C|ImY7S+pvy1%09`)iktZ-s*A=}*XVwwZkX;>Z#YeecB;Yv;yA9o+!ypVNp# z0scq+Xp_F{{QWO)>mTAikFN(mK6ha{xgX2f8K0I<) zOnfx?oA}#l`^7m!dcGy5fLKk0jxcNS-P2Lb0-JnGRhLXOrz)S{g!CMqd~mL2LVgig z-_Fm2YjJh*??0)j|9&a(`pjP14H<@@(C^m|emwmD-mY6ha;YQx1&%27qojHN^IV;O z>7`==b?c?frWw#~=Bapic-Z%ua{IHo7C7Q?LE zy%_bsqq)XK$xFcBDx})|^=P|{0VP&d&X=cBSBodisGSu>S_0W%m!uS9vL&2f9`oiC zbL91r-)l`?Fj)-CcUt?%A&8LK+R!%X{MYe!?upf=ZFB(_LnmiJhi+*C)IUu&1Sz`WE)9dIO;}*vQ zlemA8+K-YanT#fMJ4id+UTK6$o=y0@_J72ohknkNQ^4X%=O65)b;0)1THbR@nH{^C zyy#!hC@DR3^k$3#b7v~+1a)6dBvFd}miz}HXXF4OwL^sIHUp(oy7d0fciG?l&naa8 z8a%j3M9a|M{i|y_m`rG#l^ZwwVsHyoRiHT3v$}S+x}Z z+Lu6abfiQi*A>7U`ItXwBG0z;$qFcaEB>l#Iv zFcib7?X3u}7%PNuaZ=psjHNg6$84@`MA?KFg*kc_M}09J1sl?_NF}+(&O+o%x(8ccL@*f;Iy>Ci~?%P7V%Bq%5w?}Uk#~r<1U_CeX0}G z7oyFcW6WZTC!@Ys*E#MpSCTrY%v#}h=zExu^?GUAK`Z?+ zJ3QD=4RqZvbRu3`hCMNO4+~d%%GLHz@9v|GaB4YKg}CbGg@I2EyyZkpa5@;ngL9S|B#Bi) z(|I1jSkm?;gZ}L3d6|Bg=@CL~HW7}Iv`9Pm4Yl5&2z||;1Ys_;IiQ#0AOy_zGzRK0 z3}f@RQt9)06?y!=)x?M?ERDtu(b&yQ&-dup^5t<+d3YV-nU1kcYt zOu%f^STIZZ5#1Ipp%{}vG`sjjBH>C2Grt<`a9>d?ZZ8!&evxi`r*}>@q<|Z3@yLwuk)6~kl-aXNy{iUUU5P&@J7Rx&4 zkNNq+wEM5?{PL7ahKSL6ByxLWntrxP&RtFMqz?sWkx1{cGFsTLH(wGw0zod6zXI9V z5jJ>>7^8*z@2_FQCZ_v!!;Gg)x0#AGQ$xhf6L+;sqi>a(d)(?T5Q_3Sx0}gd0rAJP z06?s&&S{=1>Ds8xwY98w zA$W&R@7yxchd6eiKM75w@s|F8QQYt#H4FXT%inOK9#Xx~!84SP`6j}Qx^B!(cqxdG zmzF2SnPy#0Ow4kc+ykU6%^u}Llt3TS-;R9-3KKOD|1ZK`k2e8K(3}mQZ2}QNEOIBz zSa(^D;@-}@PX%9(I$q!%{zojuZsR!wG28uqY6ZFh`g`k;qRj%9 zZNrtt%T>Wrv|H*!tcODA=q}FsMB=nza)-A$Vf9lR&eqBO*{?ssHRki(;#W2 zFF}3Pm?-i#GWtoy6>C(LKa=y;78kjiCq7Y z>Jv#6WSC;ZzF9zOKH4!KV7OJp+1h*bI1o7{A#wZq_>XBsHKz8%pO;lS`$L$RdBkj> zANPBZmR6CHOzpo0Gbs8BOHAQ;Me}mm#iC#0?4M_~gV!`t4e;Ku# zBQSyyka1@*RP((5BZlCGtw*sUi4}P56QscpG#GkSR{LK28^;S|h?umRd5f3g z_No#8yi48$oLM#9-+Xv*#G$ax1$KE;WD-%kn%Np5k@-1nbt)J;L{D9kn{}WEG|87U zE|m=f5su_|^b<}(qR{4N^-V5%YeJDog^>+haPH@VrdrK;0H`k#BZ&|1DIO_5cvxacs4%m3SjUwT)W&I2He}YC)3W{^^OP%5dHc-7GC8ScIz|0^ zuV$_Qy9c{*X*Fx%Q||mREH8iUymXJNMK#W@*fBYaqaF+jw5X`Ac>4N7oeM`&xZj93 zYt_TOU*o)5X6~V3ad%V=!ke@2c{Z9It8hJNpCZ90eC3BykNbxu(ufcOHrKjX-J`YD zFFtUk5^6=E%G(or#roEint-w<0w{0%)Qx56@Wm!JR zdCThYv9(VX*_#wUo}VXodh0Hciyt9P9Uj>X-K;56V0uRlO^`n# z3n~pd3Y8~!wSlV3Gay%^5N$RjnYn+P%C92t0Dv=J&-oBm#ClpXCmL@$iu=oMS6+yw$5$1`CCZ;RKZjSJnh#t(TIjX5j zYae#k>F4(M7pGCoAZ(!oJV%S6cyDv68$_vy$V7vSY)5grWsqtwMitwZZ{6KSOTDo- zg3sgRbLXk~ydI-NQm<8J`t|)x7H;S@EIE$Xk@~hBpRW0nH>NV^F%q)gO%V4qzmZx4 zUW{W0b#Mn%g!}R+pZUb(`}$}Xn|oLnez_lGs8j2yv%NPqf!w?qwu7YBSk27c%y)IC z#fw=3R)$ym$uAnNb=X?+r|eN~d*8#i4)qtlb#BPNzcPs$RbUUXsn2dl5{Ldsk)$#! zkA=_YtMBdb@%b>AD(Kkc4LhWHqJA|zVYwY?pYoz*3Uj#ysCKbjV=A}p0^gFboh3hbJ9y`0wcUn+88Yw z6`agT!cqLc|6@_@DODHC3iH^*6veYL!p97b9g1B@KdI|4Jt-su{x>XYMFQTrYV$eU zqg_{p5B~_{@QG_ikHfny$m&t-=gsSiR`MVhVW#K@3~#*&ofzc8rihlbawmH{4M)KJuKO# zPNAJ5`+9LfKDLU#tjK?XOOk%$QyV_jWKdb|$9iX%IOC80U^@!Ep}swnlh|J?Z@afh zeQ5L8e$|5p{aV4kEXh{Fn}lRZn$rR->+eWny}x{+;`UPPY*6&za;nG`&Ix@}?cvaz zu-eI&W@^{?Ul#C38AGSSUA(w+nu;--J9sI|sB_^<#OijDM;ex{@he!yWz91qh3K>? zm8<)Omee2YH<=FA%aY9D>4xJjs;DUySW!7G^_#p^EPrddoc+itr|!1I}DA<4nMPhV&Z@X8oDpaoE2!e6$kmab+O=ul12_ZPyPZ)X5y^G zQ0}PHH2J&c=`c!vHJss%foGS{F@rfxc5e;;Frf8$S#lJ4tneCh&Mo-3&Ff<1%Y5@I z4OL$!sa<}fYRyMpshoDTPYjWW&3R+I5u0oqYByu}hZ}Kgp|_*z0>{uRX8u_6joakm zdsZ8fw=K)g(Ehyv04Cg*)oHgEmo*@oBPG6rmx{{GW!q#)tAl+ZRtQwdZWXW{%S2T zNd-svJIMW}TQGv!gIP-bz1w3n(M7~LWaYpHFp!T zF5OrB)2U3AbbBVgT{7x#nS_5E-ux^+SOF4$=kA>$=qdce(TdDmKt74Bcc*w`R_{Yt zjejy@zrwxrMCm*X4}DdSJDwPsK-_jK8hcR0T5Bu>uc67sJ~=b+_Z71i=hb$oh(|*b zG%1;lYl*16zQW(b=S|#&I|4?TsZZvfn81@?)cEV}|C|v$fKJ1Xmlz$cFu+ybcH*tt z-MY6feDMsewgNaWyhEySoX@tSS<>l@)%W$y=Y%*>2mK_JCQdNqwmw?fcl-%N3LtWg z{fuIjn1`aKc<&o8?`DScyq-d0CyJldxoq?;V))!wOx0$+`Wpw*_nC0Ou?vd4dFeLA ztE$%-1^ZQk7d3oSaY6`T^4uS&se;XcNw=5np~Po(bj%+CjTYqgR(ttPvt5Oi zwY25V)!FSBQkRM!$S~JDVrwn>Q6pBe>9J(_=AU2hxVRRdI>Ki+jnEG~MI5X^7Ur>gI+;BF8C~`6 z?FO08CAYC3$5?;rKj>FzD~VvS`(@t@|uP~0Ac z62|rfZG_IA^tW%!9vQX~xhxNw6xr5cC|C!t2?#G7?E6e-l*JOIW0>?u3*GQhHJKC- z9=@?#VL~)os)BpA8CYtYAPi5fbJ4Kec#2)PigC4de?@6BUUV77xsPLlHS;!>4V$BV z&`D5^ti9pOv=P72;kk8qeRbW_n>x7Xbdd><-OL>_sDG}2P}UjScbp|I}+Ly8B%n0 zR3Wzcuqubt(y+jtv^$_0z^xBob7tJ<)}q3P&-jD7`|ZZvN2LbA#7HE#!}Z4K(U|3c zz3I|VW9t91p>!H!bzdFxIN6m8Fl&kyeVPS6eUhhhrpF+zp`sK`h#MC;Izv+`_?nmK zMt*0k;oX#F4c&SahdvD@E@*MSNTNH>*xbsGB-ZZjD!DCV18%Y>r{>fCy^y4M56npm ziJi|p0_Kh)uiS1ne|B?{K1^J z6hT`Lomr|@60-4$(#N1X4k!3O3-t-ZKQhKW^dpUZ^|;d}h*);7VC3bihfKAmm3suJ z7Y7Wi#^k^7|8USJ?EH`&coY{frFrOS%;kO4d@7mer2EtS2w_@cR}RdMB`p~4tl)#!y;*XPJ`mYx~Yv(z|yTC*%^rF5G(A0IQ4x}oxyhC)nnli@r{!w z|Ms{4zTE=ZJ|~}bokS`=_l{f01c{cjqH^uhLIC7I&>NGpiG(?wXi^U=7G?lw}S-;xA&`` ziL>MB()0Lk-LD(Zb0W(s6cddXy&R;zWbeB}kCb=!yVG0O zB&+R=90!#FQm`0ij<1?ZUyHw*T?{!a(z9u7Aw1`%F4z4WWM#NPBq^P`rvvHs2{#f>MXQ*^%fmalO{6o-aO z&Rx4*oC9yDRwwB0qwyk)W@V&=8KS+swM_<|68&2KX`aHlK2JBFX9Dqx_j>KVD z^-|Dn6OiWac_3l~OLa75IKo2;%j#TAvh+DbO1I)s2@{$f;JyIiu1Z*hp*;J_>LK+G zURQ;qft_p7IiSo*0XVMfF6X9){Jdl}4#j2hSFe!GG3tGkVqL|sxnxJ{;s=hb5!O=N ztUILRg3(}B1*2EdDBZ9_3^@PDfgGd6hbTWKkiPu~{KPo9$eO#ugOyL*y^)p=9+*ua z=AKg{v6q>qU~`6-6u}1~HK5WfNyU+GTFaYeeLibbyB8qKD7}BiCZ8_MdUsgOc}A^f zseUcvqLG!hDoQq#J$Ns_1GQ9OBrDo*LwF`9C#PId#!rf%5@Bl~ijz{0Z5dbBhGi({ z8@YA6(=TIp$SR5NAgq?3qweu%jqfWWaM7`;Os z?PBFXL?~GJMp%FOi^`5=`2U57p?$Qjk*B+v6W>J78Leka5)&hs$Isi80QBw?#+T9b z?>^l(Lq^r+aw~(T+sk4JF@t@tnVV;DFU)+GZQhI2e?w9BmlmFq+}=bm-;Yq5H0+-PnL=8) z)u@VpVTb-LXB~P95=Fnd1)RgoKE=JZgBj>$-;?WhN257o>^>xTj08%OCKM_}v+&0m zHA~$-%%Tj2kpknixjiZXwl?q-u1CX%)XcS;&spoCGTdtw{G7P&LVUPn)caCcLB8#% z8k*cttx0Rg6h#ze`~Cs6)cX`)A%@PoOnix*sC4pZj8as-GIH0uRgGuwHoL=pm|qZn zCnKq{b;FF64lZ#uE`BCe(AXQ~)|4PG;qG<&OPSzp3F91D;z(Z1l?zP5ME9iVb5>k0 zsAlQXP>3o9zyv)Jy_VA|z4xr23dmoYA00KfMPEdxGAk2o1`MO?=1$<$0oQs=EDa8U zK!)IAHszhR5vpOnCAPQ4IlHob`WHbH?#%}QH1XPzsf9SU-hTcBYMBz<%w3oZ7bWk0 zQR9>I{XdS~ON%un3o}<eY1;m8}Ib&Uk zk;D&_>X@fp>+`dcAC)7l0GE3mHK4}!0Nl8N#L=Lsw0n6bg4n?3)69PqHy+={$tD^2 z^M8^fT2R})&ENlA=+t$jIQFXwB3?CC*9~cE9=Un4zo-c**Nqfq*yfk-x7HFw{C7Hh zByncw=7;TN%=)dH+oQjz_}dKEC5wtWlJrUB=y2k1vC1b^Dm}Jnspj@okjIvQiuLYa z#B0p1Nbb_ibe(+C!ARuBUK&?2Qt!IEi|fLDsW)+&W#-^T_5l*D3lO7#36Javi{z>i z=kLTA%s_TCXS8=SC%aK;btL`)LXHLioBclG?APIiDz1`VS+-ia)x~~-z+(cXD}o$) z2(?W-qLchzdFoswl7H;C5+{EpoPe0y(F?0Ac0PYGMbal?hAG6+CU3NPjz(?2S6@De zU4L{`1EAWI>f}>)6uAcf%(+^*JIr-K9)VcwvjGg!%f1RU(ob5}$RW0J7 zYNzZf4cS-&n2t>J!ZSdm1%AFoM_R}cdRkB=^VL)+Q+{zPE{lDtzv91QA>r53Vo20| zG%i4H?-(=FdItAturJ6ZvI>2w{OWz&ImZr>g?`DRU)FIH6GA9fs|9nWpxKC*y>=~XWLd`D+>tFnYE_VWfrnA>2Bfnmk}k(I?26o=M3>72L6 zgB8u^z7=Ml*8sCZyR~Kp6aEedaaws&pntxT03SFC5KG_QA9-Gt;w=M z--u5!ATRv~MZZ7k?Dn`vIhZs4cCSEZ?fUTb0Yjbt-ED<>>k|`>dMIc7`R@ll9goV=2~E}cOHd$Kt+pwKGqOJHODCT_`@cig>I}S4Uw>k9OyFWz zJ+~NcRKcXa*7;w>JyvS%k?{cm*9Zp=gkc!}gkz*}^10$Oqb*I^4nj2nr4fk(04^c$ zU?0n9yNN$Dz~6-Med@P5_!~xT8^CIK*ZJsO0&60`=d;e0Eh#qpZ_QZ za2G1E+$5uogPeTKW`1%V>FNylc!Y?6>)#H>;Wzqa@8g#wkMHbDU=wnr4Cywo-Ia*e zkf8R|xd<&aWh3QkrlW!T2WvtqS3%9;J@d&m+CWHpfIbu}De&OQJv#pEc5jA(IF&Pk z;rjypdbQIR=_X7d+y-j%P1zQ~HHX54b~;+%BMqFp z9An}ZeT3&CQ$Y~~;MO5F;%+yyOW-2@HeeK%cAGoBk5NegR9-?~Tq!K?*K@9cE4z@b zA`2pN{uc|5`NIy^Anj(LpXv_?M12Xj5aPA}o>^fLT{dRVv?p&S%U)37o^<3;nD~)< zZHwlgwV}TT>Lf>WswwiM&bNDPU<>IYRRGn8<@MSJG4@+Ff||O5eyCt6&Om zC16K&BI2gKGBeog<{`EEDDb?CeAZk%MJPr;Qp&*8ejkMyZM)~-TfAz13Nef;#*CH*`x}u5I=H3? zHl5lNrU?j{S?G7KiR~=bz<-7nH?-!|m+%y~#}vI+eIfxo4xQMq(@TW|@ubanZ=HXa z4{dG`O8@7pJzpEGstZ1 z*-C|=hYbkcADyamUq|zu@lBU@T1NqaI@g=ux1U%=yld9{0M>`AbG=juiIsPbok6aRraUDDGX9=qCxyoY+AGI-XxB8y1pJtqRJg z279oFQWM)013H)y{qYg`0k?l^^gC`6kq@^1SJfZWq&GZPqf@t6Nb|<`3M!P?X9sP< zDPCw^fLo9M!_8>fCBBC)G+yU2&K2o2`{lPy!*9H43~36CT+rmS6qZs*9K?vz6i$B- z+`o@x?6mqT6kNop93nIwy0flsu`5IIdR_@BA#l-%gVtXCGEx;I_(x zs={Qm0()xti_FZvtOX+KZVH#NXf$d$wDgi&sn=gk9v*R!z6j|d)rk%jBlmTR{aXG| z)&w(ROoG!W3nR3deWq-M{^#7O!{rH;6e7=o!}$k9-0*<~ErunQ>n~^7(D_aoua4fH z9QIUQd{Rhjz^q3h*S&pi<3C7%s`acsr3}_`d!*@#V4!WFIB0d@!hcFKzhTi7=l&nH zo^T=>xw)ZJ>79`>jg1YQ$+|e2fOh+ZQpRGn9%L(uYa%%!{U4~C0|EPo6}nUlKxTtL z8|Mz)J<;Htl-6e|M~k?@frTjUL*lXP=Q;G)ECklz?CVN?A5(=xp0C{`nar(T%BRhO zw@glKT{Q?ycEQ1V8`9HLBK;&U{VY^$ulP9ShDf%p6^oK1Xv4Uno!ghEb8~%aq$7#U zecRgyhR+uvMb(FYxdLwS8_xnyZ+ur+SrrpzF7O=YvYGBaV4yQy>7C#D2N!~MS`Mll z`QuB?S0pat3v<$NI-gmI*(&DFzS*oP?B6Z}A!R8j3U94)P^&T|8F_rDV>!4l#i)7& zCr|#XB8*38GS(FemkqU!&a!x>oU12$&2U)NN#}_X7cMnmBz39DrU4lPx7yX1v6Dy0 zI8Hz;3LcXY&?>IIP&dyq1pn7=@_CwP5x-iJ8Vs_eCfC` z;_i4IUS!pyJqo%FQVizCtafi0!O1+o&r3JP7>aa78@Ihq5*`%8mulRFAt$;OMpihZ zyjoVsSvWaa_uv=y`PIswtV_^83HCyE5L1#tpO&-y8A*7-cFY+{>w6%h_d+ z^3*h)?U-mX*}RIiOYra`j(xItMD^AI4We+p2;1;h6-I1R&T?pB&4}g6zuM(MWGmGK z+rNXd-uYc4kitnrv5gyP6V3*b_QFlN`^y^q>=TS9*eWuKCjTV=$TBOZL$oC*7ei}a zx(C{p*07deEjd?u+oUk}jY;PJNpSyrCuaAv=qmq>95^9PN$Hdtya%)KOz)@Jmm2;e zgkEdU8*1ZEsz5i%!mE>Jl~pj_iZKV%5cbh~uXhYJ*`vI3C^mbx)ce7aBI($qaPYo= zK7YCAsJ7SN$6!vXG-kEO`hskQ-A@rF;Hs-Aw9L@I3-NOudq{%|9&9C>)D)h^!S2TK z3VXpB^#{drRD$_J)lkyDs?S{Kk06~r5?mSi#i6i$9bOgAE)hk_9X=G};4`I^D-#=j zaPaws)kyeMSQ*yXWwv_C@c6q@tp%r0u=2uZAGJkb4dZ9kx#JX5KG-;Z4#tOsgn=yW*Y`6ol1Qpk5B$I@ffw zw5d3|wsl#IQyxGrha|(}-Lt%%^J@)|nVZXJ6N2I@VwX8f{SzR`BkWC2mlq= z5s_(mAI)G%`&04g~YyG_M!7Xo@{sFX&(m=?5b!qX*T~Y;* zSdXuKYN4%(Bz1KDn4bLG(`5x80#v1M^Q%Q^Bb)t|6=!3R zqle0;lTjZ<@{&hCAAT-l3^N&!IfKn8yKqJ}&SY}E3TA~)n?GCVYor^K#(vb)t}}eY zns!S3;b%tN9LFy%@k+#e_d@ja+0DRXhKIdSwW!80>kV@Og^u;eV16a&0rq<6bmm0Of_4_D{Dd!L%HeK>%Zm$% z%byBdY?4{$ng(?w3sh?M*H=$W+pxikthybE;?HI6f-O{-P4@+J+t5(@-PJk}cy(+_U# zT<$*D_RGwR%x{oWdwSZ>R(b?~%s{;@2ZP$+J|VdhfleuMo@Y9GX2TDRBoL!s4z>u|rEB5!lD9G^^_z6awh<*bL6$xebbPu@FSd99CvEWrxUB3pTVD>H zXJta0gj(ni|JgEB7`3bk_461>($bVv4U!9ZLVaEHwNZ=0piiGysy6!EB7t1MPo?Yf(iDl^}ny@naRbtlQDo_2?-c=S3eSMI9no1r;hF zpxkD!#?o`MnxA^;93h{<-Cm40A#NjAn6;@*w3Ol#E^)K0a(eM*QF*IBGq7^b>4HIf z5Ay5&%De@T^nNpwsmu(uv*C9ZZK`7RD`@hETa8B7uRxOpJ2R>D^k}gmZui@RJOx4} z3S7{%ReR;%17zi@zeB3yrz_W69$wxQcG@J`dC2kGhk^%Qs?MgKYjNV8xLmM;_NM1_ zqn;$%yx=^r#7jtYt*;lf!s+qXM{B?EfZJR@B#jTQ#lT{~O9BGV$TtNMUW-jOyToPr z?jM0%r?ivn;F$=Jk-yafalkL4s(OpsxKe6fUx%8Vx}Mlo~I*iqFDbzu%0$Z z^+=hx|5w@T&lD!tIHW<4qA^?PnpuBkgN= zl?+VSt&MS?iH#HT{Dh&hIyxs%7IQ3_mg5|lSQ?XdV-yb(Z=l#_a~?niIe+pWmKWEN zw1xqGuPnt)x1k-l6|Mpl=Z3-dAErz=l{J&9;;KUCH^Ubg3ZuV?MsY@#;4|$VKB~H( zNcr2}>J0sj=g@@S*T&=GH23$9-Wckip^1fB3vv#sWDh?Di%az0i$qeV%S@VlzNi0m zT=xxwY}a^=OhS=QD5>@171Z*(W^vqR!`YG()YM6q>q&pu2}4k9F>Sa8QT}k2qFw#1 zzqH_>=Cc+%)Q?;3%Zs@dT<15fJ`;H2A>iT|sodQ2I5&6G^GHi>YaI&f@nhTa@@UpZ zK%dXLn=L@BUA5ogKvAPOMKhX5s>?Z90d?A1I>pCGoW|oFtGVaEIpkXNyAB^F^#h+R zXB=zW#r*o&?x@jUmEVdlj2v01kDc9IA}@*~eh4LRzS*up+rrZ{g^xuEW|qX)TJ#^< zb9g!YXn&$WZEa7yp9>=eO-;0UBh^2Rxs2Dc#at{2!?#6L9lNJHU-xh2KdU~8RJtR> zK}EycXB`_3z@jVJO=HgJDzJ~Z!?XV;jyx9<9%?=pjK_4)H=OrOFa^PXP~)~Sa1nVr%y zdUUo&a<+Q9Fmu*lrRzc~Z@KGc)X(cya}^DDSZjV=F*@q)-U{nlTd(tQ#QX}vWWdJH z;mURPJntlm^d>`Y6`GiIgEL?wOAnkd%tKiux|Le$zPU!r^29@ICc?T>%Ql+Mzu4|G zUbh#1vDSiJfQIQ-pg&LG&km@NCth6G&PdhX8bB!dIo6yGo28@gR5;@Xp$n_3I4cR2 zo}Y0sc9Gm&Bj7nEQlCcoR2EyqYM5#RH)NhVM7USamOQ@t^wI22f3$YpDU$eTS31B! zce=Ri^z_KTmRobA_+$+)%-H`rk!=XP?I?KTeCYJUv&B-bwo1ZgPFhM?D<9*Rr#a_tN_2YbtKK6zWy1K<}@Qk91~J1y=KI zo8B7MWfJbXm+~6j4Y=)hap4Zi4`k`gM#o3ihR$G|;-<~Th~+1JZW_Zs_v_p-o{ZfJ zVfq)!)He*yu5arpLKtcnW=pPLtXy>KQxqvnbXjQHowVx69s9NxE0Ri#uLMC)K_~?X zZdvgCJ=zuDigi_d`M!uB3!JJ+KgsA`=;-k9g_~D(c4~&8d!aQzBc2)j#3`dDVO$aB z%YRd0MS9Z5rNFeci?|_ybVk!Zrcptmqfel-CtZ}1hnLeu3yZ<8sX ze##uRz$IHI_WTh?M^$e>RD6W$iR^i)b>DX>m!9uQ-g`}m<8cl7GK0>(!Jo+fqWeRW zI5DO5a42T==Fhl4NR37A%6$~1pWNEXNaA+*u_`0K-o!LJjytyFOrXyidMzSUU(YKE zOiAXDPzm7qenT)a=xRk;&7PFD1oT1IPt*?+eoPzNP4H_B%{}5&Z!;%Vl+rpWf3+z*;iRx{ zj#*Is0=xZ2crioYp-GR|b#qz^>@0bWYLvfl4Kh(a{8g&TjehSQac~Nvf9q1Wd?5o8 z^1fHkD1A*@LiDO^_=>isDsX|puQVYjD7j*?SkJ;Zk10~s02_$J_xB`v4dF97-DagP zh2c}1ef}9ln*#P`(oj9>%3ToC83nC8vht5G)jaNd&?!e|s>AgAm8@=k8t&C#C|aMq z5I`EphSCKFJ}TSj^M$NNxzHYJ)=H33Ac1 z)}JGUclsMrH*gWa?Ro#1V9aX9h&c@5`h7;Tn4;yTwkx1PHT%JYh&pncxFRokYQB=RTaw3s(&|B*~ zs|v~&$=0cuH(}i%lhP)~1?uv8NM(cgsPfor^r6qS=DVy*+uJPKVM9@xd!HB<22{zC zpM5CY{l*FR5zF`{IsdG}sn@OiVuv%jRk<=}ez}cfP$z$2kCTXH&}Yp@FSn1sv#yi5 zuVb3b^U^ZEBGU~k=7+j-r^_U~94PCXP_CnSF8-TNnW6fHlrO7g9L~#fC=pztCyKr{ z&QBlzWD5;(I)=*RkNY-l5V@aP2 zm#2AQjC;(N>qvDvi${Ow1WF`vz0P1i9kqlzrW67wo%IOUi?ij0loD`@;r+y&qNRx= z!cY)g+flbXNQbNK_Z?ly&xCTX`#1-(R-EQiMsV3KFC~{ji$#el8T*bLG&G0xuM+P? z63<>v_*OZ+Q4S4JC*Q>OowrdwX0^RCH6(dKYFJ|r)1pb&9u`n+BlcZ6`zF(&`Qxd_ z-Rk?h0-k(Cc%UE}y_e!9GL`mo|CvoyYD4cmdq_O`Rp!%}uw;MYptNTEc+f2gS~}`j z4tVSfvE@;R;2}u7hDI$XQ#TV*i#C5Iq zk1@ixla4Zoy4&!ZFm`zS$Ko3(T~lHH%M+x36`h8+(t$KjsoAQzL(7rmRQ?tPSyo{)mp zkV;y0%E2jy<>D2KMil;3>B7_IRI3HdwQE2FS2xNy<)5lO*lle!{f#3OA=&Y+^1q?GBLr%Ju|+^h#{cuw|xS-(OeF7-_(<1F+QPbKrYLw zTz_W`S?_Ikiln%08m3~%Z4xvmu=v6Ur1$ECJO<05TUeBYTZKadY+1sD#&)nAp&O%f|~u z$t6u$AAM2-ROv8Pgwxt)SE4Z9X(9#WGycH{Da+U<`4W*ujYm_8AZXAC2p}lzOR~9%x2x9Ygsb!G1Bx?A^KS8NB_SDF$w> z&R}}0;^J>yD+9Q8P0|ULj6#6+14=G_oh4gaQT*1W2q~=o$A2;XyiST&f*ZT6;pgak z#@_#Z^o_^;_K`@B$HMl(SJT!_uOVd!i%IMRdKJ9N;LX27LHfud)R8ReY6v8roK;5F z%6;-M-Hyb|xpa{R`X+zZh~!KXW7|``nhg_JyV({Tck>^!<|VyKB?lmRGGgXv?!t zbp8FfEol$m56rJNo#ag6?~AWc^+2;BKv2-)4TW#!g;iFmn;T^kOB+u#k zr|S5w9&?tfF_Qy=0cM$@6A|Bp$1oIjnI8hWM&*dlXRMHs$W3FH_wm+l*kFQ$1y7D( zAA7p1_wE@e1g75@4Av`cX%VHtp)2GgS23qLbo(vPm(RK=omU_Tx&q}1?f9*ylxrqG zLmCBe;%=SZHB1K?jY=7;3&r`fV*D8=6CEn^!rZ7s8OoAK2~|Crz6Zl4m}%5plZ`~m zbec|cE@!UNvf3xIUCc{%laY1A-@Lq`@3crT{*3vw)R{56HXdBomsMMn$VY&0v( z51X22H04-jmmVLVq#MS>R z{vJaUMwfl?ngY}@0(fxayRW7Fm3^razB2IGuD1Q%>u5;(=fwu7HgkJpeSB9~T$<>~ot^qAaI#5%`;*1u16W7wrN zNM*s&fn!&ij^gGQ+eHqWP6x={N*o!;q-W+dyrgutQ<4~4kKg*v)D1#IPCEN=-h_aR z*3H=8_MXwa+!iA7#zn)QWAwc0xHwO_sdO;aX!1Ik(eg6r)A=fP#-1PE_FL&AO{&AM z<`*XlMc3BBqfF$5>8%sN^C2?>|BtTs4r?-P+J_NDEMV*u1!Q-{f)r8dAu0;H(o~dQ zWD$@O2qlz+BBG!o;4T6JQWT{_=m~@X5+w@K#1KkC5h0L3C?Nz0<-3CG^X&Wn-j6@_ z*yAwweP3m+xn|CpIS089R|v0__hXoF&jc$*arMI?13@L^vvpc^hUE?%O2BdYv5nMX zQP=0xUGpUy+j{0q&n+tmt?9mdvD^!>fo-zF z_>{4BG+yQhbT)Nt(*a?XU^!p?^TUR@6o5k(+fb8ozwD&87kki}7aR`=itnUC4AH4M zW;bR6)|P0a9`24;y*k&d#B#5vpDS7Dk@n(Ea~gl~CY<|zHM-#s`3BjQE=qdX;O?_` zCgH;wpSz#!)yCp)<;s|gJzfxsXr(35Nz`Vx#W4d=cD&!O=MAsgiFS;9W|8mc)qaKF zR7rms>G^v}V`z-c+dVF)muIYwn@4&Sn@M8O^zoqd_j{Ay&{1?V58AQg%hk8SjQkRt z&ssc6v2xA4q44e|IT*P5&)CsnI!E7Ygw^o{@OOW7?cJ$NYZ8xbW#i!r7W;CEYG*bFr>3vUY^v zn8WDM+<_o3OWm#>&FKuu)mubbdVF!g#*6ay%&^PsOMlVEB;oRnmpy}R1~|| z2YWcu)GkJNMh~7^cE=b6VywuZbQZ$Hx48_{x+4UsY!ugEXs_N%_o!QMSrv-298N01 zcNFi8TKa=%75Yv+^<~3s?=jM!B+D;R&Y$MvKw5gb?P0Bqv}C-nlp!n~&&=I< zXI3Z`^`YOl!v1XE&ttmU z5{u2Tu-8j|D$kuGS=793K2QB4ZM=XRG#`d=n720W@bQJcz~6D2M^#e(5SqTDV3X8V zZ0mi>VeM64-H_3&uMqcpzh%bhf#t8EUT%oY{7PtzGF6h0R8MGuhuluIS(sj`rLqDJ z-8I-u37PPIyN#7`u=zvLQOJexGJE_Pri{SCu76Z(e3R&v_wcQ!3{D4lRLje*hu$t8 z9$)<6WnEkXjLOS5FsQA(Ki*|Po}>!XCLwgf%aU(YCIE;M&$_p!7GpcQVyFco0blh3 zj6cig$~9rcGZdg*tiTNm;ya>}H=M$7y3 zl@Si4pU@OhY^>O`CY=IplJ> zueXP(qi}pSG1L|J0qfd9U<|6F9;Zoj^m~?Dsp{QM*cQcWI6JXh+B>Lb2B&{-xR6Iq zH%j!VmRi~7+}#MRf%Q$7#r;92UxAh5%T^v1fw%`fo#!$iA5Qdmy<-0+V>p;v&vhns?23vGV(Q{&QMN+WG& z^q=OxYou6_PPj-jRjojMF`V?iwB7WxR)=$WwPZzq+@D3Gk`?W{_%>(bY~QpY9ltj2 z(EV3vgMXgYaS&SQz-?ujOZ*0SERqL6+9-{MpJ4^ikQ5`mYq?I@PH&vvI=M(2mc@mt z7s0pFi#L4QL>nG!ks|r|dSGmu*5nHiGie1njVRy=)`{6Zes<5{i_88`@jEErI2zu>cn_B)BswnoFTQIj?X>xUdoCcz zJ$lXcg%FOm@y(buy)i4#Whpm&TH}0Hui=K$jalC7Rkj8H$pZesJZBrzy8mTdJY=2h z#nO(R87tYK1lEYrSKp$)l{fgBI?QF<$TuMu!|&Sk=a3J@d*s;i>X(hZ+Bf>hv;}oM zJ{pF@qZjqO13ET_eE;=JOt+s-(dK$BZDu74oa^=h*_xU=gQ9%y?sz!3LEjZ{VQ^P} zK*cbD=J?w;Um|Ky{_jgOh9)7olFzvJt7)f$=&6$#mu3{!QR-)p&IrTtR zz}0gzflMIv+~8q&h!}k?G>V;$T~B zU3efi_y`(T=mpms*hw!0A9$PYr}O!T4E%%hJG8TBWet1&(vMLO7_jhsGAca-)J*>=R#}x>~N4!X@dyQT@ zK#hupqUu9X z5^?hc#wl#dEI5In_%S;9TIpibE@hkoO9OwX(x%dOO#aj(GjCs6-v%^l%|~+g+Pi2P za--%eyuUL4B&gH|)ys02T>SY5m#yfEIrh`ubxZrXjOKV8tS$sbpzdcFv-DVL^*r$^ zlJinqJZxH~CNL#9{lQIr=PHxlsJaZ+XmHySWyMcC(_&Y@qP6Z{7*0T*dJP0*IHmbU zCj^i0;^B)GO4K?$es{iU&U^s>$egtQegvY;4?t=CNDUTftCYq?zl*(pC`5biNV9`ijK!=SHp+9h) zfjftwg!Af?c`&=F9=J7KY5lm9)sA!awX#Y%Q>AuL3ORvRt9$ws6OHFp=fQhk@P|H8 zC9~-6tv@FJt!i*L|64Kt`Br=G73Wazz@bA`ZBpF?vSx-TUkxt>{gAoJFQ6t{@8#=J zO^-SkF>$AdOgS;dQQ5)}mPUu$BdKlIeX>wE{8GtO9Z}iZ^?B<&?3vW=u^Zbs=HACW zxs`DZn5#tdi=VM|ZZLEjUEQ8i3kPhUz$TYILTUU|Iw z=TDyvJFcI@3@yw4E*9;3G7?pY1y#@1Bv673zj3&@I-Ybsn^F`NGZ(SqZDBWKk7j%_ z`dBjNI1>oP+A|X=p1AN)?uS3lu8Z6tzOrq}8e~jAn9k^#gVI9NzUmiFx3$mRxeYES zE7JZ=naWD377Uc_c_2px$;*G`tHg)>R(5M9KzPcuVd=7>e`auBr9UBRW!!#7>OR(8 zzyX5HZiL#=QR<{*^*lNb^08H>g78sAHMp{bv3=kU$Cpy`D6+~Dzd6@TRS$Qm-%t80 ze`zJ0`5p6Mc24v9c3Bbjnh}%~dcl72#q^b^zdmInZyEH;7bf$9Y|oXDo?8dZ z1c>c&5_XxM)oWdLV8EI zPeM)HYu<&i+8T{~1*=2$nT{z8$lD|u-j3Mxb$~1ht9ekj5!5@OF^y&-3N+qzf zfpTpKU}?YAx|!^q)-Qz(*C~-CxDZunA`Hd|D>ta-TwTxpHX-gE7*W~q3){BAs#A0^u=I=|20w)~w|b_W&!Y*ZPzT1Qw%C#j*;8 zGjI$g*v&mt8#zzDOVkWciRyEP9IpsodlW2P`Om6?H+3~0zw^oqTODi@4f7ZN4-;j$~?lk)^?+DTu5EE=oYH! zkfiu(=urNHz8PMCn#zp%aafX+nRG!b))-#3_%2giw&=R=OxO^aTA57}>iQy;j? zo4Z&V_s=e#1<74}`|@n!c{ZRptCO>|n8*;Xj!AMOc-rZAjypFk9X(+jiR*dAQ`ySW zI__ASvk?_P0QKI-^-7L5(490_hJIaJ|Et4gTzzKDUhIO$JG67yF@d(IY@a-tZJ5!+ zI1=TL1g7E{(Fk-O<*9weh{SYcf_Hb?znOX_~yAbtiFaj zh{i{UuU%{Hv}<(;8hKb*cgwUTy7GKqReny4X2Tt$jR>xyOHmSvm> z%lw5cuRNPQtwc*LvbVkl9gHa1n18qOTCPtm0{x>LQ$VX5Ib09QJDg8>UU`>_s$h_A zkYk{$a<`xq6;+1xz&TIZW$#i7oHhZ^u9d;+1z^PLG(O^jX3e72bHbf;wU-jF|kHnI&DIhg`1CFZSV) zMpNfjJ?xyS3dQlV6g$EI$Cmif=qs?P{nk55++KtZ4C2X6^Qt_{DQPpSpuuHW`_ zLEfHf&4Kon>MzR2+!I3Mv>hD2fjIUzrvooXmxB5!H$$fLp^M9(s+Ch-Qx5VKDp;k4 zF-7lBH#H{KJH$^#1oRQ85MX(0ugu*990s?dy%YNHR@u>C-wo38q!*tS(|d7Q@0q2N z=3Kg4mR*1{cW8B~TY4?10C1NU5V3#2EBo8en|(eQZZ~<+9{jUweQCG>ETaGk)?#+k z^t1UPv>*9Cd7LW+RLYY}RrW6&W0HH$FkWca9@}4He(7B^LS0lo^n|wBp=}kqpFeL) zPb`leaUBgQmK7$rptCvF(|(S^f`Jb5+pn&b-9;Xml3_`+D)s`+i+#f?23$6=Jj&I# z@V>2xOT2os9o0in=;72rLt<0q{@TJK*{jXiEAR>wmU(39 znxbgW!qDtoX$JQ3n~YIY+eHhv($Ma}jn{`>BwzgB5BRkm$jun-2+P~|_t1*^7(}t# zWTK=z?1UuWfM?J$0^M^C*Tqgn-d458SVFJ#%E3?ji58By6E)9_V|5nK7jtXQAmTFv3))a28t_DK+@XSz zfDqA;3(_6n|M7N1JqS-WgFS#rPnM?`B8NOkA8;~!xoEthfe@GdvUH(68j-&Hd>3Z1 zA0zX3vUF`B7WLPN^UY?iCuAV2+6o>Q9SbbwPl!SJFMOxD>RH`XryYSDBdVOOTJMVP z-B#7+ewJc{jth2mKFw8`P>Mknic8w-JBM^EmWsKjk;h#&jk{leI9YauQ9-e0drql6 zcxjc0I0Jj|8S=2=qNf*BUm#8V5xp(`1Kiyb^Fddf5;mOC0EvAS%n#7(s&5_r&_8%1 z?Hz*cCxJb)yNKO#>wM+g0gm7McXd8u7MDplx3w$W%~I}iK5xyPccq*V4lL`GRLk3` zGc>Z_+WlLuwHvm9HvI{9z@ZMo1i;T8>2F?nb+fB1K00>{D>k;=>bj=n96wo- z!L$iS)eqE#{Wkqc32^<^Ti~lDcf+05t`#8K{F^uK72G|MTu$=0=-~Wxj@?WHx}4hB zg#M~F#NETp=o@dzn->3%v*1D5DcnlFR;qPAsd!uXPGEh9 zrkr11HuK7BkJl+KJXw*x8hCpOUjS>u^w6hH(ceZk5h}O?24%-RxZjGQ=shNM|v4%wj`r*kX_*MZaQMj9%8tS<@BXQsa#-4_K=^=ZP&D zd13C5kOKD@?6tHufY&oVZ)KC&w%-jmA>M?m10YZIT`Xi|`!^J6Cpo0_P{!f*!#X7? zBa}%^nSjmZe2F&~<9^PU66_Irzj9z(wC<4-Q=ifd3nd#;VRCSFTz!8t@*>HEbd97c z3MSfPl6NR+q)tp3%++H2CrS&jd;T9ErA=0O#CEimcpogac;R9fVEy>pZ9Bu?)BmY| zQInH+l>54d&8t*Py3se^m)McU^JiC^*+(E}H}3&ZNWlMV^FM+!JTh*1(bir<{0m}x zFHuKr-!^yW2kt(>?E}N*?JWDlNLEXdlm3>;2|;AOi-5y+^itHYgeS15-a(Z}kH&JJ1CP=6rCYdYLLucL{0A zN?5(x_e9uZpN#9{4n2jr6-U~L+UTMsy!t)UarFV+u*pv{V{}QX)V`zbJu?~^J@9nE zsY-JCalBhl9g)2!^H-*hi98U5n@cV`Hm7y%^2rGNd%5@r7j2ImvWnQp_%@m-UJ~3h zr`%MaKsBfCE-b$C0r|>yBsgLAr8RvJB`xkqKIo<36-_qxm)ETx@xivoAlKy&{|LnW z@QhEq2Bc5lN=ZA1eiMCGboi7?6pL3>NBdgR)x+$ba8}^a zfCvU&7&{S%d|AwPOvirWUqd^GPPfixqy)Ya`p4tWa!8cIq0Nu}w(}0>*Lwg_#t-ll z+r{3^cGi$Jdun<#v6uA9O7=b{?!5g0MF=4FM_Ixz)f9~?^#rH>fWFsz#1xG5J^uYd z(!2Oea>9jD9cX@0o2NuVbUUGmTQ@lE^X$>$dyIAr2c?)$)%JoMaKK5r;|0?G!mzGr zk<;e#U1&I^h`?#6>SS%A%`7KcY15rb5D?m2 z^OaltP>jII3%4+f2)%o`gDmro#U-svydnzya(VwFmL*AYdGiul=Qjxf4(w(mX4^@P zTUk%;TDxzKyxBCv*@TbE7 zUvLe8?Jzh06@K~EUu3h6`UJE7=VwS@Tz{X^aF$3}&+g>$hBoSdMnfp)^(J=TuG>_C z(4QX!^&!GJfK9FRPouhD<8@TK6V{$6lprkZkcoIsj|~k_rK-LQlH9z6D-~f5@M|_j zYEMeiHT-6_(7KX&8d{ zmcD~iaa{m|Ke-tqaO^X2OLLqpQL}=Rt41-|v;E~IP=UMA|KqLT?7N;wS${qFUH5za zRC%j={Fr#d(iN!!-ZN-?OCErHa+}n?bNsPUNoD_iy6~SdxdG@z==zXCjWQa$(fz@T zmcyhS@vv&R+tm#4X}TIsg=Cv#F#49~c;_1*D=$V6Qp!<3f${}k5fzzD%USoI1-?oG zbruE#Qh2D?i^vPuHWkh6TUqwj!@49pZ*um^Ol_~UOoz9@*Je$1PhX~zR$X;nLL+VC zg1g4^m^>^>;te*tD1%jR?4C^yfF+?NYHcV-1r9j#@euCG%`x9|0atVAcBySFz(`|| z(`4(0t82GgHRS~RDKUO21w|%V8Kb(?IFhHb>Qf_`;=?`U{8D3caG!>5j0nXFYZ{hrZtOAdRrT;aBHTl0)*sb76fPKPIPn74o*3 zFrY1YRo=YkAHR%(5&*^aCPZr-zjbuzk zV$?$izZ=HHDAk@2tH9JU3XDF|jAsHcMfNOE+3P_Kvoq91K=cBc)?4rWvbldUKlcwn zE|yk%s|NcWgG%fte4f4BQCSG35-;fNEIe%48aaKUuH@lB3j9M;26JzNi5@R)>(Z$K zli|VUWYIzkj0tfnNFxQ1!uL;mM>4iEr=9~m)_qziLi?WT=28B+>M2b?PGF#R=XNF7 zf5S+wO6l&%v75aWb#EG>qCJtMlv%>X2*5Aiu=fT9RYz*o7NfHJZ*VFy*G`L7P>OAm zchsC6U|q6w%>~$qxrgj3^58bsK8JXLYY#S$NA}M{cM1{Cv>8gxFM?iFo{f_E_E@D; zNdXame@#<8uib_C>GyYygppm51wlhiGr;!-<&x`3}2bUGB;hBrM0V0#bYM zH&^1g=MvRzScbB9ZQ|~i9Hjd1CYBke_TX%g79U;(_g93!6y!Qe+=yzFzL2u1=6)_O zU(F2wsA`wbsQp-CXTLHelHO9@Y(L=^M7vg9Am!pv)Y)HTHXk`(`|_DK$Yad3z$O$Z zwz9Y!_3vB+hH^cH;svxbEcGgoAfq1=bZQ`TV>wd@uo?YHP!DV>ID8?z)V@NXa~D9V z@zd2dIZf}r=rqclBS{C^f-m@dIGFN`x6YeU*INk4iz{t6`GFB375Oty05d;0l-+VW zbPrg;{jI1DujT@w3*i;Os8_MC-A(24>kJ=8UWR^b8=MnzpCNEdga_tIRcQ;p$^a4U zmFENeCC2~{fO9#B&VNJS#IC{?0aF!sLD#iP98~*64aRUXs9q8zo~DY1R%p7=1uS^) z(0mg1&Z#5Y!zPjtzrT>1cji%9dns$Q?39l=yOhX7MwAO zN;>KB6A38s_!vD6QqNoXAv9@>(%oo{BC2P2rs}WLsekwVae6VStPTEJf3_7S>Of#RkWWB0=LtzJxI~h zKs{j2|5Ohrm|^6&Sy^`YqHDNIH82+!L#2F{^*&f5ZqUIklt{ntf}S9 z-2d?BYF$z}UgH0KSH|YMLN4&LVt~XEGJvW!F>+RYqV-E()Az;R9MMn=21Do>5>^%lANrYB+m_GJ+0z#Pz#9YlZP+ z4$TX67RLz%D)?IjU7d*gC8U=n6o|qKNkBH;gqc&PRt~so{7B3rv^;L&$!j9^jz>-=dwbxM*Zwd&uAT`@>C1bJ@Jt%3e2x zzh}yF!dG&`-G44G>7wl;F1x*MqjZ$k6k~xS2gaG}F$%h_tCurwsMGhL3F}vebwB>+ zI|h8u=&nSq!euc%E|d!zbuG7f%Liq?_h%u+Cakyf%O&<#3rQ$%&K{<4Y8BBg;t#4Q zGa=u;sl;*FCdNJninX6&qvX($djsDkGnhtwGbhwNy54$yU|bKJrk0i{8TEBYpJ$2& zPCg-fEu?A&q*U+0K~$MYuQeMPf!bRj>D6(91$4PT_uR`zg1!7`VfP+UNV-kBQ#x}N zLNQg>xQ9k9Q8qGG(QE$PLtmM)+X5T z#q4$|Xqx2)!y?{7-Wt%Jm_bxq&i#TQ1^tQ;0Yzba*X3>SE3^dQ9n*+;C!R^4l{)JA z57E++OP`W%mXLsoCFs$0AnHq>qf@Hfe;x&i`q4SMMq-g%jgVxG7atIhI{bpf9#Hf{ zXqJ>i0{+AwHvYf|{z7j9U9wVgYR{T4Uqhwi-7d0aSdN{8Cl2>EY{d9cg(=kU`Yh2F zYPRfcyKm#6j#mkTDtFbNp4Kh5S35J-T|w2P6bEE;zqURtu^(wq(Igx1XgRop8bdiY z6KIg(dr`}apq!TE;Fo}3c%Gk9Zl((*D%Pp?al25OYfDp%gRVHqi<;jzrwlSe_C@FJ ziz;-SIOTI9W@KOH%&c{3$w6kS;61M&j-509U)#dAxFh(TY|-vx5Z0+=qk+f_h_itw z&6(qOj{+=VFN^Yyg*@u0YH0usF zgJ^!7R)1@4F1G^x)$7AIO;(;M%VI|fEa*jA)l$w1q;mbPiSzpNHR?s{@bR~tEYyc4 z_jEJb#dWG8n5y$~^f9bQOX{9C5{?3GO}OC>asXcySZ+BTm5Ee* zgq#+*kiw6*{%7{$*KZQmZ~y#Stg-excReqp^$e8@qe`#ua9Y=nD~KKrv}eRY zlFv&MLt*OPSCD=vot~F~rf6S^% ze5$&lGYVNB00iLkxz=3Zw$6XIO!wtEd8V*}KEtVeFuU=ncKs=Vr)eiVXHNS&46`Kt z`rM{uu#Kk&Voij&S9{mn2E6>EsZ!C*+!|ufUL52%&LtT7p^dcgOg81SkBIQt6X8w< z8QR)rsqaPhWutg_5SsaITpgd1V{)!$S z%0Dv@U%(yj(DH*orOu-9Ndo7(h2ff3FM{dfd>hm&U$>a}RlJKu(&7fJm=+=kW^ z*m}QoE%a<);EXYG@q5GBLiSETzd$8Xp=>5Q3Cf`M5_a8Jb)HZG>PnjRrVUfu%?j^o z3w_iWI$@NOD!qPe?|PPdYvbDf3fkY+z0$bjM??s*jf4-N@U1FiOfv#)fRz3|ZriO9 z#bbCJs+G))i=w53nGnSfG4;)HhNf<-hFg9dWatj6let99h*LURV3T?d)L?8*>KZ3< z!FboAN3G6kM8$XkbVLd@u;s#U`>SUr2NQKR3eO=hI$?n}uh34z>v6K)eylF%D*7&# zSZ$*STR{#L`a};U%nj>b96gG#Si7#gLVdPT7>M&847oMB`X0X#nxO5>F7#rpDc70_ z<`(0Lp^YbolmxkhniF3SaymoFl3wn}Fm~hG?|~*NyH~1WTxzo2NAc>1EeN1+LG)Zi&!VHo|+uRKxym#{t9tx2T4 zfm9bNBhKndD5jy|lY8Yh$UDa41hC0^jl=Vs*|NIpdl4>j4o~qMS?h8g4~r zC+Y0FpzE%q!ak0rrME$;co(yZ}5D~66xt6gXm+Q#uH)b)#pj6D&aUjw% zXruX@2;Ra9+BH-MsVq_Q7Iflk(ZT-WZB_EJk&s;r=t%NY8U!TlzPU(_ogy+m`%!wr zen)~UVXq$b;6-58TU^~mg@F>PT0U1Y3-DA19?uB+ML_f*ZNNXio6ue>@*4JEHLd$J z2bXB9!cLq*RlJG=G3L{R7(4VHf zyhqo$C5)A&cgS4#1;+Bl^Gt?rNv-u(mRZ8I$AJ3UaNeEtY-*i{InJ;Crt+@a61N1o zo--U!73e-;e;Q$`{mLR&eguD+FvM&c*4_Petqzq}BA~mUk%p8nY7AY3vYv~CkM4${ zt9UDGTUn7K2<+_rhd@=A6JG~Oa}bbvs!Yvr-skd@7bS+whchG()0SSDnb~`Cpi+XS|yu;8_% zN&8%M#;t8@r2kyI3nQF$<#wQg^R@|QtJj>(u^>KRh^(y2ITy%wdO(+-$~pIMr*_}d zUB0IK5GE%gFZU}#`Sbu0I{nywSHq}Ey%re-h*~-3@tnK%d&*s#xGxUk3Iln?g*4d9 z_0jh!EW(JYAXoPm9w79h&BeQHv{L^IkOpq}nPmYC>Sgtdjya&h4Re9d7?o0Lz zyoMX3-$&FnbLVwGD%wga7fP&k3A4Vu++z#v=&(#wROWD*k<_WeZ*$#Fj_J#M^Wq_N z<#4S0hRm!JPDF3k(%hj@f+Y-GiHStecSfu%%RaM5RX{?&mOeS?s;C#vPx%JrJOOiC zLRDwO=k3;pkBG2%7R|oWcENGlVf{DNIWw-6tdX#*#}Jqe6^}}>naF4|s;c-!Ci~YC zfhfzA2=p%!Sg3RibS0wu$%&is&4`Z0=kX*2<{E84#@M|q>@?YIIBX!6Mc4=mq4nA9 zpo(2lH_A4P2?w5U{#M&~)mxmO(#5*ho zzw3vDa-ZT3#<1(bSCjKE z+Sqs&#?~&_D2t8hC-_p1k?1iq5Qfg@wm;&=7;oaNYu-W7r>2dp@=(FR z+p4ED5tv1LNOZ`K+|RwtFsXs@YG+1%&-L``wcd$OG7lGW!s}W>SqqIuc^vBD<*rMCCY{7kMm|NKuoBm?ep2_|AFtCI zLj_MF)X^Q-#%HPmS3xC37N5{BONh$b7Rkp%>aD6{AQJ-j=FYx|KzGX;!ujaVAN)1l z36fy^@1cio^WDQAf+j7X5;i!#-Z6)-DVClVza0lYOyZXmT?$Wn2e*bp{#=rh1pV1J1|OI=3Na5 zhedj_35NWN#BnwjoHx?QoF-(r#k9O}_+?3pIUuA0a>5}0k^oRBefmEuH!6d(XmazI zNW9u>zpF4(X56h&dO;0BGUqx5O8DkRpcGGM(!C0FdsZ`t2qm>%&gfub-x5MMRA%>; z{kprWy3sO?opOkOt3STW*9>4n7((boJSWwIzuB1gTm@LTEjauSXxDG2Cv~x-?hQ=9 zWp=OqE&eE1um0RNcEGUA!#T$RUxq0$1XV4Ra0v8L{wWoSb6W_RM}meUyg&;bRy1t& z6@Dzqh6>sYQWH#dCyV}ISJ{rW!!}m^p~c?hU7+Sx0t3Ffag?vEfvIQahOmQFb=yyV zVoS*))EAC)#3jmz(5kZPSL$-EATkqa`Z-uMCwOsJqziJ(3(Q@3-ALu-0K3SQEuqa%CEYp}?2Y>4s$Hu9AZZT- z`=8CHG={Fn`asyInFY^hGS{xL=oaV?lt{l{C(M^swqugu+rJS}PALdo3>Q^8eIiRl zW%*w_PRR9YPE0*!p|;6F2y7Kl2?t^dy( z7+lE23}`SzOSG`JimkOV-T4KB8}(FYm%HW1hjOQlrRyiMPbQL4J4a(o+>`rVtI)rE z*tjhyu%OPg9|XCgn5h{TdsIBH&4k{}vb%j+q#3k%xM%-(!|od$P}yAA|1X_XmC6*zuos}NtgSX#9drgC1lBOD zjtob?T5-uV0<>r6`JUds4gC9#;|P&^^8Zq{77bw+9Ln$f!TGfWnkZdPzrIv5T`6^6 zf4XWB>@Q%3j!#JF@WT$`+hPgVL;WD~f`JQC{J{bOK-l`yC=EZzQSy@%5dD?L_MfRp zde!h#JFH9#t>nVi+^{~Q%?#2&bH2qzKm$M1mLqmp?aefHaTj>~9`Jfu@51`*^V*B! zf;&Ne_dn~9oNtz!v*kG|bYGniuu8C#GP!(v%Up6n_Ma=w0v2+?`%pDA+OW70FI&l& zHksHhAOYFRB7AWkE|GJWv2#&YxQcvA8$D#%D*stkT(myHXn?9(VOx^~)vBpq+SCyM z*LgjdA@%3QQ7L9e{g&G=CI)lRN1y{D{AdRM{_=PY%VMUsrL8z_Px&SFA*&ze(E#wz z13=>T;MA|7|8^UQj|^td_za--JlKx|q9!2=I^O`i_n+XmC*^Y31q$Tpxba!#G?%D> zHTMzDP*HWA&$sBCTLhecLChqAZ2YUY>x#@>sb_6l*WOGk;;`l_=^-DblUg6lfmb^f zR7gGXcruWlf7VicFaT$gj;fBYL4%8kp*r0WE61MXv|rVFbS#i&fAc?JcW?DeZ?-%PPiyBGe3YmNw>(wU?`r&i89 zu$`K4lC9(EeWN;?t&;WgmcM=Xr{5*d5Ly9!*}p(;&7I40#3xg_?RXy2pm#w3mEl2! z(Jmr1@3?3-yJ_l>9QM+rCn!VX2h>RBGYif3%oHuXuJv=}sK)34#U3J|+N%<_l?4=U zvk0&x{`HM-LMx!XxY_c8lyRi03tA!Asn(;RcoeVsTs@E- z!+LO7y=L;f4ebwzm#@eRrhj}R!9rdh+{shdhck+^ztsO3fgbb8DPc&kCRdF*)0M?O zj9!EGv8vq*_zQxLPbbxb_A&LK z*C2gr%+8QOS+~=sbfkTYv#!%h5A41lN!89dGS+T&o?-5Q2%+-^OT`49{cliA%w$-X z!#qp-Y_-PB)0+y2Zx|G2B_16xb-Ziutw+eM&1|Mt8^kOkFffd9RW%uVJtdX%r|Hee z`ThgjrXGJ*d+nTpOqhMSTr>Ykc~dbS3`V$eNn}q>PB6*a{$Su1?I{oH2tB6 zv2^5=mPRFY`IN?)1{Xx|(iNzhxqz<81WL3^+cul+^{MEj{_>wLFGCX!OA>n8=GgWA zaW(|6bemAtUu4y@RLw$t>cn|Jcjl4c5|En6dZ~Pia?<8Nlxa%U`&ju7gK!Xgd^5)D z@S()XcO2#>-;?lZ+Hw4*Zkc{}>7o~R9#qB!S(5UPkQ+nWgjv7Cyf+@Qcp8g{O4ow190-R!k54XDv4g`5k;CZl_v0=dl| zQD|8tYg5&|>sxFWS>Z$9P5M>~($E_*tmlnxOcp{`r3LGe2O1v*)TVpil(jf67-*#b z|B4k2Xm=8@Tof`bBPT%#jhY@Ktb00H5R{<0Amf<{anZ<^Esg+s8Lv55)wrgjPH#!0 zeuVDq+`s7$#uecrD{*D4#|`HNM^-C84p*d}lEorl_^_Yacc4>*E%pG8ggy*jZf z(UszB#{d?+*Z{@L*TH*YBIM`lmMm_q(OmPsS8kl=*{5@?HAN{#ZC@}OBVtO^3Izq}A zG0(GDo!F;t*a{2OUr82V>X#sQ#Y3sm$da5uc3p{2B_9y}!Q-;UyOHT+wjmlxa-zyD)PRS!kcP{_q#tP^u@CzM*4N#Z{nYcpp zZB1xn7q73zPA2G03`F*M;9ri|Ut_T5#iKpP!v1-$NzNI9pOw z-hhstx$M^n?Z0+VP4hinKdfHGWu&SOC|=JZ_&RDequ$nS{CUAS&V8y_wxD_~M;0g# zcA+>gV3=TmVQJrwa*|>7Kd(Ce3QPfSDABZ_>(0Y3YrpLtSo`WW zk)fW1kBdiAYt6){YwY#R2}7d!z99A@tT)t8^H^-0duiH zeL?pPE~VTXw6u4?6f8Qw3-f9}Pad52V-ktqg;^XmSF9#I^{(tO_QS3B%-u)e@CEKkW$rW7c~;fimFG^#UL}STI}GdQTll$@4K!i{)3f)W!Khgd3k2V7RkE2 zjn()bsPayJTZwxS>V1M-?~u{M-eNZY;>Xt&yr?%T3+J5=$70JBTyTqx|+Y>1s-IBhB3~R*(yVJ2Pvf zQD*y~)@%gtfoUiwJO6(V_poQV5 z9t-#!Kp1ve1JNP&-f&`MuyXx>0#PJK5GeldDH8H77iIy^c_RShS-V#L4asgo6IxV>^>Lqgk$)?Sf;gjdo1h_vow|_v*d&ru;bjNohkn=cJI_GZ!-F zC#_ib52jiayWV+-zn!z;)3Z;I`~Kpmx`k--giwt zH+7o;F&^t2+2udQSrp<~a0l@-TW^5=;1*An~6crT}=_Ml4 zTcm{=Km|q-a74Nk8z?2Ag#aNT5;aN$R3rhCP=x?7p@sk<@Lxe^-g(~Vln>|2*&qA~ zBzv#5_F8wn?(4?c&;_9XnuiJ$a$+~TQL1fMtl&|S0khS5fo5XH2@xZ$WR9dQ z`v}2oD+Dlcawrf8$y-~Ti)93u{eDHZ5V@@pPXjj_tYz!jlI0+KUyfyRcnAC+%ziBS zK{Pt@>5}TD(@XWcWY@xUud51r=C&O zs!uTjE8{mg@J@yzf7e?|Y!ZZXXiTJlGwK2sF!RY?i@qf=z{2sk{+n^1@j6$Waf-jz zo~VtC6@)Gwi$y-J>6&?h8~k3dNb?VFe60>}4L^5!__kW}EbVuI>&3C|DNc?K+JH92 zyNOXw zAoycoi-lhG@D=}zKl;TP_lgi&nXC$dq(7Brz--4`KRgC$;@7hQ`~LOp#8U`fQ1saA zBE}a}phD0mB7J;5Nz+f`TkYez0c&GJ{fr^EAEkc{jd7SJ?E-D{HoIs`a^(y|&|6O+ zPOYlF%?^owHJVWF7_?*HqdpP>v3Y+44vX#whkzRTif@Aj9HGKG0gWC!rOd4x+w`~5 z_L2n{M?X9E^Um$deH{NoieBb?(=d)ez_ZKl+kC{wZ?eE`TakDW)~bVRXx3yPN8Aw)hqo&Kj$b%EeDxpUuz6c8)~tWl8;wt2$K=h; z(*4a<6IRtKyb!REj*SFWr@gX_)4}I!FV%w62HD$lQ;LxvIrY)&i9>!Vr2fy{Z^Cxe z^IbaCCtnQSRE9zzhg>DOkcE{P*49@oIe2R)tKhR z^E{*|q7YYfCJ-VZG+I1B)J*j&}{ir zZq2d`_htA?`>?2G{qdVPrqB~09}a~Ds^Z9pH8ZSN&sIbzDp4frj#+l9ubBBIywSz!Hr*7_=C2e(fWqSo zX%PMS#xAZn|6tNSc-w9`_P<1EyIfj-&^u-KoRdLng9`P0Z68H7IPKQ2BP7c}SRwZx zdm^C)Z)ElOwi?+j<1td8HCy_j?dw+~T1q6T`id@mbu+P%=IWNi)9fOX<~ddeuR3?^ zu}YDuXkISF{?MsaK`w3ns%P9u<6bd4)^MHA<{I;3 z15El<4o&xm4u=_C^HZ)Rv){K(ulCvlw;mlkZkA7egH$3GT{E3E)Tl++;~m@t9W`fs z+a#vmOy7i#pHnrZTjgT(7r+_(l&_@(wjDz@aQA*!R}0Gjv)pmu9GR@|2Z4Ow z+6dUQOej}n&QBNWsst#yH(Q^wxrhhASLoyoMB8Qq1L>RWRn>BxW%Df&wUTc_m83yq z-Try6rH0@>rv}uaJ#aK9aCiIg`|J4K{)8e9i-QRI6x7hfu|8IteHT(0apY-Vnh~uV_AVEO=|J z`zhwmwSH=#tYGq_G^0J3bltv9%|h5<7aM_haBZfK{~#Ru;eNUBRx`b53GjHXq_iL_ zR!r~Qd);DHuQ3Z<^m)%;J$z29cLr{CAyOm^pmCIr89 z0p7~=>{F;H`}NB*@rlJTfbX;LDl6+~!+nMG*bzHrlN+cximd*J3HbMXRAAiw3h+7Dzc4;J*)u%$4YYuUG=nt!-&EB1DK zc@Yy>FnXoqvgQg(BI|Y~aywExyotYAB>GpPm!YXz@O|@{~{S4Si^xTwYxK0nZq{*S*1W|;v ztp1>VQ>XaIwRGN|3LtQul>vF1-2nr*>6Tc7g;oFB^V@3k;Z5sA-+Q6yaI#L}Dq^=R zQ?ScN(fjLUc`~5(DFfkl4G_N<``2iX!81fnHGMj%4sT&84XOue%fH5IUom>S0 z5HbGbY0ydW*WMz(p_bVLEIzN-JumFN@~yWUWrp-Y%K$qGNa~lHvW&)wIE`z@M2Ys$ zHG@E_?eb~cK75A!Mjs%Tm2nnju`W7ErYE1_p)sLK#byaW4QPB<-yyF%yly;w(hw@dC^N@*wD!vfpw=s#JdJJ zx{0)r|HWCN5I-J;j+pwmPfhjao!38}y6(+ZsPS&ZEK_fRh1mb^g^#cj+rmYOZ1ebdlTdsQMQd2PBw;j2tJ~V0+3U9?qDU- zBfESllu2`nXvvM>)?r)^;*i3HAjgZhQkLMVP5P^@KfEwYbWA=zoH@ocG;q8{?gF7& zk7`xw3t>$%2tspq!c|2bza>Q$r0Y&G#FY_L9@pH6_t;=zf=)_O(lHtO>62AW zesOK0KJR;9%&w}DBVjI_#Avj8g(>~XZVX3}jZetYKuHUweS_oET2+?gkWk-Bj$e*! zkuwSEcrBc4v(%C9C)JZ`RuOjsxn~11MGH&v<|1yjtvBSPl9c@~cEi|u0GJNoVgIvJ zBy>Q%d%fC2K_7+ce0HeoD5Gdcc>yV?S?Z1VT4jx z;k=zGJ3d7i08#p54L5kZu3u?nflT4#+{O;4kL&5WKAqROz}U$BkGU6!Ats*+%rx+i zy%cK9lx`=ko+GP9H*7H^Q-p@94p=*tc!qOV`GpJp2)+4WJ8`ZTb{x-*qpzdyrV_k% zhe~RGSj%7=3rEe1_`J}oBgP&i3IK0sSLaiIlAXewU@#vF}mWi}@Sz zhaw}Qm;-EV`uvcU{co}ie1m9Zcf#BBC*N)^8TUzQFSyGMbE)zEx@0Smft&!up=4`X ztRO}0il7FtWDWNY*6?<&-3M1yS$Q_tmLYHZYZN61`)gTt`*!TZcZeRywhSv{k>Ex& zC9d<Tv6}SuI3cq_=JE?a2lCStMytjH1;5#BC^z;jK`^nBC`(m`YwVW&=u(z01_@6j8o{diT^DP)o0S{9 z1ugLpzr5Ad1~`vDL^qOUsJ6&H&vxa-SdRxm(Kd4Y?)vHRb6zDGf3I;IkqM+9-~Aq_=q90c@!~E-E8k_{>K%=S>zZ<0El%&k0>3ahHlUnmfPN(GU|1A(mC95@GdRj zO4qYpxcqPGm^Lq6kWY;xMnP8c4>Ctm|G&q2-0f3l zzhB)@x|h5$A+_c?$Cd*)QE6)#vHhn1SRWu!_)c&pGAVwtQ$W@UdGQw&>4)Ph|q;9dGrVW8Uea4%sD81=d$`wtJfI(4Tvf;cbS~ z5A17vvg#T(gBmPEvz^YD_b$;n$HC;8z`?UJvQTH%bYD*s7nL~t$6)sYwxSS@9sliS z^V-q&q8!RlX;o`L8+5tBz9IA$Nn89~b`#O&DVKxo%{yQ%4@AKit;?OL=|Pq!4&SL0 zGYOU+0;vaCzMn5u`?VPVfJI>~j$5y$8^m`OfTrV}aAaeds}n<|gOf4O10kHp>eGU)HHQz$ z74ZLi+Q6gkXcxXN$_p@6jSBK5oT64#XdUrUj6*r^_q(!ld-^)skC(Px- z0?{#Y1O?%}NWFC4BqWYQ1*&s3&21Ozlye-(Sb9rb)flfVEQ~^ebRT?vnI?%N7>jp@ z`L3gsq|&s|bwq@e+mkPbzx)|17`(CByAU8QXrspZNo-E7vq=DVDG?>Gv| zd!m=Fp%rS$sl)H+5}#KZuor-T|G~bvNO6C{s^A?v5~opp4o)j-J!8p)3YK+cJ2RrrCus zB(kCRX>HObssb7vW>+{*FpRke>U96Tg-`YMh{xe4<-*1)kdLpWD6AzrS4E>HY5;!` zd&9EfcM_)@RV$k|`LsG6v8|R}G24-W=`PmJE(%`MiQFEw)o8YDdX|Pgx$Ju^KB8*& zz3X7(n$IDpr>hT@s+Ag`%&IT=(rOkBA)A3D{!bZ!Haqz=oP2T~JZ9w0$ZZH7^yPBTn|p*PtIF&bDEqpz}P#UaOAHZPTggaTLph zy^W2xw$F5$-@4vYil-9dgFU6_PXmg3&2QmvIX>f&4j8LI!vAXkAinYcL7J_Ch=DS{ z|D4kQ-|i@2kd0?69%G~-mqo~ge@QOz+R23%bB1et>BC4N8-^2!Lstj{m{^bkgMV$x zsOAI?a(9qqOytU+{=HwLKyj&m!(_aDU4ZNPly%HiL{Vh!KOd5y4h(UAvl{xvNx|a- z7FPk$k)2!Fo+`JN0FB1QfbKoWu1Z(8tyk(4okHJ;JcHo?3P7oG^1_C)9)RS@2w9msXO!ykk82YvL?x@=r~@# zqF6Q{WE$W#zi`0_IuX6^qHk!u-dn$b&(K}t&A{|bbcN;|(|TtI`0%OA24 zeI?4+UStF(tV@1IZGsk3&D89pRZcQ=VtRlH27!oD?SJc8jW@pn++TtsdH;@X4^R2M zcE{yM7L>-!V`xq#tz`)e&{6#JkBkJ;I}fA7z15x;^%vL&H02`NN|MVn>YL9R{&>*r znYYBo(hrVcXHQQH7uYnkdB*$(*fKA*g9PJDO_Rv!6Pa=JAh`IL9j6@8Qi zSA7+I3FH(f9S$SShjAd+L7wD)jWaerqV8{>PIr4WUfOtq*QW4F0JlF`CFgfKg#>qa zgO+<1)w!Mel8mf_!Gag2GGNHMt+ixlM1x@==dNp0@M1_*)MS7Wt+Jen%xfO4K<`l> z%!q@ny&Fs>|1n+tiB`fQDB|ac%#3NaXU|1l=3`^3VWWm~)GY%@^?&Udr%iF(vC*Y( z7Up%&Q;h3%U{6OoJ8kIB5k)Qlb5pthtz|*UvR$m7(x!wI;gseMtNlCTd%~JF*tOZ0 zxntBy_c*D)#8ZyE;n`Fb?>vQBFQ*cCSHhRckf~RBnm$%BrM_?bs}yT? zJwbE499!h*oI9hTQrIu0Wnegs0|0V|F=A)l6|m?dEJ5X@A|x+8j`iN0;8XjgPuZia zR}2v*D){$20s%qv@RZqq%7V*>@U3Oh6i{vsHZW*{n&A|FpyOjEXJHl9mtIq++Y`D+ zru%eCG&te9%KMC^GX~*yZBd!Z8mXFwvSKcc4!rm`)e5`GO|ySum=7@yoGZAa8cr(e z(?cd@>4{@ABi0- zw4RJf^66=wo&(p@De}S}bn6k6ss*O`J{Y%En^1}CWzQgFLUosH#L8t(fzX;WQ$&i- z0USk}&Bj}hnfLVmTtA7Fl}5S!Dy}{ZL<(5N-OjlE-*|6O(cFD;H3KHs#hbv1L#vm` zx$d^AEv+BWmTEmV4>6J^mzC4oE8+LW0?SxM@GO69%@F1N(6M>A-Sl9AUGRPgKUIz{ zoT~Ljs+PJ8uo7U#Hm-xd3zfzf_^Ht3Tk{i7R+sba0VgN)J4tSI%#oD;9DuYdW}Hg- z->r5z=%s+d?{aw&n?M)vwSLL+QrLmBe#ahDLfdOP;x#`=YBoq5fb*BWn=b(#p9>Es zjOuJRD7FrQ;_pNK-k2`-4oLHvzT~ewlTKy+tfVGm!3eI%HmSE!1)`cb_h)ZH*@jD^ zH)g%K;KS3G6aip?x8wu`)Dug0dX`Ok6QQ8EKc?qiZ^p0c{tb;zBwD~C_^kHN&w>-Q zX^G@C5IvX3TLt)=9#g{Ql6#BF_yPAQw!yaaHJ|ON-bau^JM=Bceh{;UT<_xr_Nh-o zr`|1S0!oH(Qn-Ij56Oh8Z^eWx+~H+ooaiDSQIvUQ^NEh7(Gv-!a)7+2UnrBgdZQ$-}s#r!v{MpP{IgKGZ0>AXDV153%6B{zKfs_P9aUR6)Q z8tyLk9q>T#MSR`nUk?+HaT3XI=>`yQULl_%PW*C|fRh5Q&!YIlkIaA>eP|$*QGoQ=Hv!)f>h>(Su34jOH{oi|`A8)2CDV zR3EpuLFE2mK}^jRc*CM=Z@lqyc2&6TQ-fH+2HZr`dM0poA4za53NM@+tr+&q!X$sn zK1RWV@Rw)GoGT?g%k_^Tr_g?J1huTlpt`%=!+8En~mI$Kz|J zLA4)kHFF|y)kUEEC&OL8R%|q)W^C;L&XRjHmwA8od8y0m1sG_`F}AVz!s+DH?&lMP zE=A)LuRvktvRj!yg`^|muLIpfuAVVRfD@|yf3K+d<&MTbWW{VTgCN6)HqyvBbv>>f zK=-%Df3?%eqpN64)=`)CkErkYL0yodlh`J_Z2<(4`F~-&Y4xCH@!9Cyn0sz;dc@K^i#hNvv1N#PwJiiXf8sdz_&#TqQmF% z(hESwTQ@^tRc=WJtS5nA$)aLThA0LZpZbh!4iyF+-oOOz?fDc;YxFWd+I{S+OCtk~ z){mM8O`h1%p^6k5Xx#j@K{LvOPcA$IBQQkd zg`?(_NPIXUN-$gfa=yxxp*Lank^+Pak3xu|L?&o>1-M3=AG z6ZyoHUJKe)d?nv<>_^T`g$cHD6UM$R0JrV-IaZ^U2U9t-yw+D0$yD z)gv7)%9|UJwYlY`n5cXF(~(hBWSHF+6^nJ)B38F#uex{LE71Le_qw##zc(K47{}AM zA~e8;Bej1Ub3#BeeODh%>c$du}PIwnM(w`^(cBEOk zh&)^4l-njUEw@NAx-Ww7t9UypIlOP0xFYXRtcz{B3apo^Q{DUQczO!j|qR~!; zi|Cmh5Kc^M=`9=vyE2n^=Ay`h0E+4QME)SDZIo#LOAml=0<5tx=wq;7um4oZecrAXt7{J zv24|_#-|ugoh1#r{l6PL=6qoViqhmhvA4$JY6`#m4CG>V=hscxGic6;H{ zZCULH*(?Ej&mj%xoXCj98hcI=wH>ZCz^1x%jMF@8jJnF5@8D*>n%U=h&j2i~XmXIt z607;U3O@rw9*uy`f%dvXr}qb0f0zS%{Dn%?%$GuEoX3u^FD^;jmq9$Q;}iu%wRD85 zPqdv*QAN)62W8#9Bomj4MR{atpobclh2!n|!f7-0y5FKu;n(u19fRevuoP;CJ~B_G zH-zpx>f%eHJ!Rd>^|G!-jjg97RHOW>ia2-K3IAa|MT30Q*Uz+rYQ^oU_C_$^)GgTf zCejtBS!X!k>L;~iQp{`ff(cDJuP)l@s;h_Nw~_bX7T9T?V1B8hNdM@k6pa#cKk~irwBWk(W++Uc>bFmQyMKE|2hwwS zF*16`;MCF+FZ^8QSXgMQQO9%r8CY+gq-tdO(@Xc-%HERSU@w9=iYK9oTW;Klf+B!a zp(?1RmJ_V#iR=^pw&UA5BYdLJe0j$F2bl*6vdX%}tqO8h=EUOzhd?9eYpdESOg(_9JU4j~sLPN*mmaU$M zq6)mlcEF-!Jq(FM}rds^-MB!*re#pKj@Y{8fmpvPid|YoGhmJKL z$uJms(vu-FcEELFE5JltPA>W_dX@M}v|x@jS-Uj0DM8|8;(u&7UVD% z*lyb?D+8@qw~i6@d9pR-Lg2XZ)Fyu3W-fd@D@+lD@zuf_zX+0hqMJVF67gca_O|QL z;{?VN+Iv#aYMb#6{G7z`!ta$xnq1`2Ju644J1b8v*2O0Ij9>t zp(@Fp_AB*4FkcQT)}kBzqo}^Dx;>@A^s%`?e3;)Ou zT8>^GUw#Std}?Ni@o$Z`_=&7hun$hQgUn$9=aK9lmo)%#GxMk?Wi7+t8=y=Ydf3H% zmSf6XkVzZLp{CTQ_2zSpA07yNVi4H%r@ghZi6Mr&1u?IC`{~62B7WBJs;`SuZFFDe z5$56N9Yfoxb@uAHL$b5HVb8iYo>rS_YbO-%qLpW^|C{8Bn#gXkKLsxs2~h z8WgV56;@MHh2P3GJA8d?#?SccF_pDmUM&o{uzQJezd=J|TdVU8;mCQ!f;AY1HEh`f zF~TTeeyI1Fm-%>nnZJkexZsC@Y+lD@R{dXzj9bnt7S~81s0byMJ3?=eGeOpi@UTI3 zH0qIs%y}y7n>PyGox2b`3FZ-B)JJKff>C86(7`G)!3*YHFPFRR%VP5#DBHDBS1!c z^O_!PBvk67i+Ff#TYcd+zuxeAIy4jd4vpiE9X+959Szv$I>Okry1#N#2jOgwVCGGn z?k6)kV#G6JAKkq5q<%DhyJg+?Oh;t*Q%_~9K9xKZ@wu+SOyzMVx)B-lt&A3JS+nI8 z8bOPSIREm;f>`La99CZ7v@?I06g!t* zI9|V{4~-ibX>Pcb@c851CP~~8|B}bOLG-MwhYcrFqfoxy!yTUGPikIwCoU?FXI}Mg z9}&+tXDM_yqQv-vjD`^nN!ca7eKE%@Ik+t9eMs@Plpz-LG{S1QtZ_03;Zc?>S38I* zR_W!@>bg4Sk;02PXBc72-$}d$0;Ls&oVrCVafGGIt1A6Ms7RtS(sOhE(f zsLo43?~m+D)rQOc1RolGt60}2In9T%E8Aup`3Ht^i#t}0tq=FNrsYgAy~a6LK)0lhu=sc(TOY2w$jtKl4OIn1 zLC7alMplQ0saN4#_?Uo8gGINLUg+wsQ#!68WZywV3hKucS3T#B0Unq4qBlY;7!B)N zqGAah(uOf^DpA7H;x1z5vJ;cz2zycH(g9vG%ppB!XlOWC_V`DA)e#$L-l zzc>!kYhMumjXwaq%dZ{vb}jlbp1d?0#`TiH1|alqo_j_o8ZCYKmM*wzS^i{v)RB$n zkiM5oM*SsJ+XY`HvfS$0HSp@nm(IYXztw#4?CY6PI+{0~&U$9m76e}VXX7Mx^zf~d za^a$ZDoKOwAzDmhrAv+dTKu7Doh-_!A_rVYZqPf@aAlVnwl)Jn_!9C88_7J<@s0eF zU82&W0SHsEn=j@1nQ+z@RW@C~kj)K{f?m%~pR`0z!D)(GEs~Q2wZaa3B^!U5WqmO} zoosFcv&o>1V)~O1eLY_Jq`*hkDNu>}*3zL05QwDVGx+rzFmKGM^IxVybFIibeNy(a z4P`guH7@4r2Y+1y6qVz!l~bcOtuoL(n|;h_he;b-2ahN8z<8fqhQi8S$p)^4bWfuiS2>$KC!GE*8x@*Fj9`i(Bne@qQlAl18Tw|Zco8RxnyY5o^HodDLKT_}2b#qtJWz83^QnCt$UiTvy3*}$zhVNW~ z4vD|GrB@t)Y+i48dOAm(=xpTWQk&90xi(|8(aQoCTjZYzwL%If<~*cQVrLDE&BLy> z>LZ;Tta~c1C{uN&lf(320;}KPZ3Z<+`asbfBcUmZI#^z+LZ-zJzmCdQO_$;C@=0mF zOFlIn1wn^nK4r+*lBwhNHkT;Vs}YkH4X|5A040w%$z8)exz;fJ-K{Lu=_dgnd=R{M zX$5s#-p9L?sT#JG&5%&?(hM4m&-`T5hhNX=?Kh5o<6##v^FGaUJE=y#N2KP&huO@- z%iKFN2e>0y#DOoo%jMRZ>ClGrqv`&P&Jr|M zn*L5|xv7UF#fzMH6(%M3&fNIBe8*;q(f)cV6%zc2w31L8mN6{+zQpq4ElhR$DPE**OwVrG*u%m$HrdV9rs z?Dk7x^ec|Hh}+xiCy&#nYcFB6)H4vDFn)Tlp#crc8!gFYR5|_;W0j}yeBj#FsU$ep zER}FPZ1#e%g$aAuQPL}Aq(XyDvlMn0&V9__(WmI?b2jG~XFP+Yk3yeB);YiA|1Qo2 zq>2Bdvq;-(-4l*?RU>n^*M+^rx&9{AWIhWm$Wp?;D{BaQTShPMNqRdJ09q@Am@Pan z+@tu?_t0TDpXc_Vb~;(QSp|6|cx21H+drNO+-D7YdvlTA!OTBg=^qD!*~R20)o~MM z*q)An?ZsqU6U>7LN?^B>d}VGu*EdyvwdT9kb>pEC3R_@x7^Zp$`OOg-6a`xk^telo zEIQBxQ)WjnK8}^7(M0bn25H)t>|h*Z9fO$qdf4;B63!Z?oA6h~{%?sU9ha4q7Gl~Y zBeE4G3XAt?JbtWs^ILS3=E3kC5)ZXXxOz6c$jh$}$m-xVFC@J#L)u10HVr;?1)1sP zh0oXIlNUa!R!!)=CI9x#XZfgxMr1OdqQ7NwVF5i$!fH9_ma3sIW~1wY$6Q%VHYc=N zk#!vQg3M>XA+$H6qrU&xC~H2PRAa}H^(3Ha-8I9nA9zgh?)pB|J4=xW@~(lt?5Duh zh@`)eJ!Ku00qiX9=bK1C4fH%zFMa1*RPvA$%nH6d6(8Qk*F#(>k7k>q1AC3W&vEU0C+Ny#t9bYg+m|l8 ziZ7umIj!DTf%OW^9D~(}qeCEN5xsn-*rQY3>Q&Ka4e3Ol&9wafg9XxenlvHRO($B` zn|utNq73NVt@c&T)XAYGhYD+>2u9ucp;NmeB7fM4*HU$O3{~?+LVh-H1FeSSQl=lA zH&vs&o^MUR2HAn$J`Q6b%{j?;LcN_zL9Y-Bw%gqs7yg6vqg*z+fy5&XK0DAL+vJakTN8inAzB~z;NA(YuzOTMr;%^@c;F&zmJrxx5+Uf$4l}v}ceX>0Hx%r+t zaP*{)X>haHcizoaym}%BRnUIl|I}Ul;p9{(vo@C_CDs}$=%3Aw%e;lFCX9VqEPqlI zUV8576Eg{Nq~&tbwX3x%x$Q&=V9S0f;I{Zs;{91TvK*0f~aC2sQ@x{(7k>y3p2Rqy4C5ww$KtDU!tHj@V zR%u5zFQ!RWJL9t>*A~xPof!4ZLEh)@k@q(^#1^xFdfL`H_^vC0+uHayG?u;UnNYe* z|6=T&)$8xuZr*<@h0ZN1@3Cn}mb>pl#q4snZyM^4jC<1(J`xc|wxUxP2)P_?U}t)R zaGE#geHaB=eF+q6jxo}YMmWCZEpXzl^+++MlVk4+lr*-B%B4kDfe0)abM7Da+4aV1 z{${SGiOA187zULRL%d({>_AF3^C3~F(HL5x90{WSCgD&3s9(8-YZmweCt4tWWDeXf zV+J_OD~>dzSyXk?Fx}VXHU|=K8Y5938uy8kG2n{Po;d_hSz*jQ!m-Vi)gWbpVK|-b z@t+|)=d0r7Mulg`&A`x>mS?$qQ`8T__#*7DHHmL;J?!1ACo%VyX#81h9edxMwV9b8 zluqtHxV{Cl45$}YR;%-Mlnev0sooTG0t91TQ+N#kjTAUK)C}}irSEGopES2qBryozRtZr#s zlpLcdj{C^uQMO&}YKV;nhM#bV&^TwbFP;+)vnwOwf1k6|TbwxG^{1fwhiTsu$Kd7L z$wL8sJrBwr8}y<$fR9ErS|2(n0W=#?*HWsmi&+ghagh`CN5E%wBnTatuVt9}Ag?v& zri2d)Jp!vmB}w3V_yc$$h^5xvtm8o$b~dXa#6wdNW|6)3#!a<+mS4gaUiRnQJbZTi zAi=iP3zQwkeUR&=AF>V_4XL_YPCr?B>Xya6IO&VQH>q#;ie9*f8|+QcL5!Zbty*x!3rfbnu$<?&waf5+6WHNE!FT`~>behNRLu>{u< zRDs9+W@9duqiPiX!doThG`ring#HdN*kn(H>-v7mc|S8ZIT$ed^`%#x7^0&j4Sm}) z5c1;;C+f_A;EFVzrUOqIa_L7%H*_Ffw@UQYMHT@l=?CM=XpN+#bE_it68-|Fi)c1P zV@a;>8{D_1huLxI?m)fJfo^2D(7>idea~g%%zrw5FeMC z;t=*Ex1``SF}`{rSFxihHJ*J zm*<=L*{bS!razy3B4B4M?mLm>)xVZ%E}i8)^sHbOy3ATOWKip8-vww$1z4&max9E^ z3g~AkzIp|XNMX1|VM#g0oc!LGmcj66phLc8tRCKDn*8ALyZXOa10cI~G1_imGHlV8 zV^f+>?sfgKE%9xg^>(RGMulN*tIF*${OywwU%kY+cMA04yDlmjZfhDhgpZ@G{YM|A zSiI`la<*+pEx(Q3YKpfi#-g*Z=@6sjz?+|b%EuTnX-3(WnCjPY`)w{t1qSZSIZ)uc zo}s`9HwuVZ(pY-e=uy)_Sorv~9BbK&)&Ek1^twmC^`twb(U0!(4JqEjHMk$;R;()K z<&Sd|&eXpzsZ@Gq8g}8!A(xb3JZG})>!lak*j1mN%_6lfA~ozVM91vQhKG*7=(*U( zEg8XPa0V742e~VD5HIvop{&s3( z=|1slsq5aZg#jJYA%1GKzrF|819KK z*Do(B?Qp)lV{S>zV9T~dR$<7GQWtBZwktmZ(Zi6;gl<7{*^NHJqXE^QL1dc~f=#t% zhx;;5A2xh5=C%IQ9`S15SeyePvTj|ri-FW_<%hK7jcKDw!cV+?zKN)w)UH&5TJw`_!(aoukw$@ zb=;QSnYb&k%t8M1!5_SuJH0lh@&n<~(jPEoE;~Np2xH$+aI~^2_T5Q5{r-;qZFYsT zQx30CdWL+%w>ufZ^tUbu?U0m{uH0xap-%5L-1VqB#Yq3xOkEYx$%qlJ90w0sEw}UP z+*k<)Z_ZvIn>eB#TCvH=%HF8b*${b?V9D>rsws&l{iTtCLQlGWjgCYHM!dQ1P>q@$ z%{Ze3^<7)|ZT@Y2>RY6{GH&5>!@)lOJdS&a6Ldgq_I_{bFL^~Y++owF(s63T3HfyL z=~d%jo}1=q$2Ab5?jaBUiTGU7M@?)F*jf6n-_OU?Ogc*8pt)4%bj|xht?+x%nwh`* zBy-M7cbpD(gtq=Q_IlYyw|Q_nvZJ{$iOF->eycGfw{=yywb!^wiG1zyqFM&^yzfti zthayt##-!a@!tU=&@#gR^)5Kf33FUDcSv8sp&+2PiO8M*{+$StKvjtqOcl4Rh(d^@ z2wz=3Yjxn4?w1q+7RzV!ItpofR%aZ|+DA&5X7KnT-4Q zXV+hJo_=nca$m8`8&>A0C{?E5G+vk#)}E;XMLMX%2o8r~Jfd)xL%(B+eH_8(rhyMz zu~$Xh`>E1a#S9v@cvPyC`yy@;%LoIOGZiwDGXQbz-yHON{p@IGEob48 zAW6`XywGeNP~rn_ecevzd5_GR#9~}3kSfs`72by)EpK=R-4=SmAWQ5@j>Ay$9np%4 zF42mte{D8VJfRa$02{GP?K?00JH+v6)j!e++QU5!b@{V2|G%V@><4BFmWe`!I}Tdf zN`HB7Sm=>nL9Xwaopblxm&kz#{$m{;t?pJDp}sPdAWtfl85D%neJA3r%!4B_At1u6E2J2MtyZ$=XE{T2=eXj~GwIV|L zVBoTW=ROs=9rEC@HvaVi=U|0%16`K_pC2DM5A<^S=6pnm+rIqRwTy~#`A@?o7z`@f z@Y|4-HwG1BZEY1{aQ|tz^oPM)T5FP@!ckCPdouNXU*!%RY}&gJU@Wi#I?@~p^Y!y> z5RW>?f!tQjwiaJBj;3+ClT~tR>WN6ZcSIrR;^Q+9up~C3eDq^9l2-yLzdF-hNYlep zJDkMaUoJb?SZj7PmtPEgQCFO{3KH|~Ju5dihj(N{tihJ-)m^oEde&K|oO%g=Ko#B^ zG+4f3pLRXIfjZEqTl4&Pi6*JEed0gD=+;RQKumpb4tz|xf!kyfe8rKL68Iu~3`$L! zn!C|y#O`#2)@m`7iymEie5){a zO2iVAc5tX95eT7}tzay~fIaYD=qJ$8nBr+X-oJgQne-KA++F$@tqyJiaXZmRfH@tE z4xRU!CuMlM4mvG!c>(>{1-3>s+iSj^;@(VoEely28=;spbScaR)zH)1v-s+9!np4X z{dUosls^G5Ns&B{*;;Df*K?OfL(3ii))T0ae}IN+v~)tJC54qa)bZ2p-G0O{S&zza_A?hNTe?3?EW*=d)r!%3j-~CZkd*qpV3mtD) z<)7<{kzz!%%chF7W{~q2=1D?OI>tx9N-|ufSnl=D99KorG*yYk$7_jEGn9c#COzPRy?uODCXdeouwV9Epi6xN3hhdr?K z3do49avc0zq9@^?&*E6H1#V&YXnvi@%ZUlb;P?|T_1?ME?L)0)Pz||!Y2$~BGyCuy z16MY^eR=X*4G};8V6*yu4`WFg<0Cw1iBJ6UGtDUOwt2%2`vLc|leI|KiLGO;%LZ2i z+n{1Ucci{JR|u~UVW%NGjipOS3d0wP$|#)_z7?WV*@V0IvTFPgI&J-(U`}Jm{8(Qn zGTIkgbxW_;hiw1lEzbkMQdgBec?U8E){!!#iJ;R9A;jD<@s^C%{)~4YIhJw6Xv51Q zx9)l_XTfMuF(Ut>iu5M-n<>xnK+}xngLQ}Ds`Cx0s1yE8e5FcuU~73pw1ZFJ_o|k@ zEfIU70^)#97r2+L=BvPV8E*F5aGv z>!#}}m2K=L6>Hgv1sUu5aTlaXu17ay{H0N3A;$m4vH=X$5D2x)0bnXedXD*I3_rVF z`?hVrR8s`qIz0d4fP2wo+rj>-OPs(j1-Wjp!wz8Z*MTLbCZ}S!zsNivl`hta4_?pM zei4pW_R_U}$*)P+0Z(x}ZXAxD*%2gnXW`B4=f{1>Zyu_9tZ{NRrpwngUmu3BuWv+w zjnZ`9x+vu^Nh6*9=(P0&iB%K2AS|jaZF=?}{_-u6OLsu>>*w_FT?JFTm?gi7?^sdqUU>7%=S9gB`~l8Y*eQ6Vna zg4D;p$a(M86X&d7$i3A_ZOQ1aD8WeVmEb;iUikb$(d_4TxB;jP2JXz*7WMK&P8ctA zozM3^1EoBOtN{Rn_rdG36s*XaPV8<)3V#3F;F$4uZ%_;Ot-p|Uc6^34BJl^>(?+_B zTn1~{W?WsawZWJg>|9g;&6tX%cFlNR!=+p8Z*xNT{P z&H;dk%A==qgqV_Ahm9xx@18wNa(`OOTrLfGxsEC@lcflr;xhgs*f#~|w>d?x*gjV? z?bqJ~)(`NpPT8YPWj`zEd)sqZCB?x{u$C*<9p)`Z?~*SLhUI8^HQsjPE59>7BKe(5 zru$h#@uGU+TrYGR$Nd-n?sMYj4&w$*j9S*T2IM#UR`Z#FTj^^_+^4MDUFTwP2l{wRN)Ns5$!|~e1c!vj;qHWE z6)sBU>`Qx%H&iTElYMO@r?nQr)S2weeZX|NoF(XO+41LlP8~W;EW$NyH6I;0q&8H? z$}0gN>VHgzjk^(KhgCp%hRTWNQo2UGYTnDYjIAmcT({bxOs%gYt)nOT#w*mI%XRMH zjkP;W`W>RXYm&>7-njZY2dXD>?o%;sL&a)!7ofq$72Mw{dTq%lsE{E-y0ez1QCBzVF}tyBFQMPSn+0J-p^(fKO}y>@KeO&O>JG2#hAh~h1tC2aBO)Bgo1Yy=PU_C5sO#&v$kj#D}AzoIp1@ufiET*QyhZvXyG3d%UEWIR_i(sHNt z+;HNkY3sF-9{@rx>;mMsC6;E@#~V=~;oo`c4^X2qTa9iTOQ9MpJI_qx{)W;3u)Oa3 zldt@b7_5S4|LABc^-eZ}|1;xV#3Q9tGQRK|@q z*bYR2tw^CF`xd{7aObf zgBLzFsEG~3=qWr;?eFx>(Q~tcbCVITz|MvTp0)VLa)n%a`W~IUU^7n}f?_2pbX;>p z=QD1e?2OEaP>`7@lFgQsl;pmNeTIoH@E9V5AhGU*1jHs;8zK~>Y+qoqhu8Ind*n*m zwW9=;+p_$72TWDpR&zRKC{N{rDEIiSKo_sN;f{oM?!Kwt-^h1w)~-=<~li7aN3I=e#&pqMskOd;IdA zIF|C)IzNnSUb|gpSi%W*f>+Oj#{By{?Mi<4|E5ZR ztE@aO*S#;kVxMm*A%rRwL<#YFTXi^+SLl19L@ssSkL924b!s4l+~ur`m%VuYiMB)@ z4x6bvhJWd#Y-}s&45jJ>+yP#pEPB=koVT zHMf(ClJqNXwdhndecUU~t~LqSq?fm?4QhS#6gKO7qGS37Jv~`MxWC*Eq7f29oZget zXpz!`uLxJwO>1FkhH8x;l~-AlG^mbRkpTo}U1kfM{$>x^eIyhg1h+6q$fNzNH9<Fo2kPx`R|z zj|6lyzDY;+Dtrp)(rz+hre2yk2A)WBkX=CD{Fam#?K+3*ga~!?>}WMyQj&uY5 z$VneJ6l{d^Db+inuR$C`zGfwL9?9B3n%v*xQx>S2XeiPW`|iSVGN}0xUH0%(1BE#- zd5`q2x$*54aCpn3{WcX)eFAX@KN1GZk&Fr2{ydYnb$$Q-lg5+G`oGh|&Iyu%;~oS= zBBwqat3pm+Kp028tris&N8Eh*l}UVt@^+Rw-!<}L>ABO{KFqR*d+5-r()|(p3wbED zNSz{KPaHD=YAlQD3-aWSZ(W^V)#@6xg?rS}biwQyvN$C2g!zXNz%H7CYU+c~(42S7qA7RP<7?lnnEbhpzo8rRQyt zQ$KGgkHOCmo$>ghSEw8r6m#m_PSu_22Ls{owLg)9e7-ShzX@ksD#MB9wMozOyJ7Ml zeL@nv3rEe3%ZfK;jYwTP$>Ny4&bSq>#;!QdJ?aP|zcm5$dq6tJM<5pMI%;`_j!qs9@47%25L?q) zrlOoY)4$hN`E;&~d>m?Ek9QT-s4}6kE8c02>V78VF>iD>r?r0bX6F-)PwoepkKw_d zIzOlhfuXl<+1B7mr2Hpjk8B`?uJ7XrzoV}f8Ew$*I$c|%5Dsj#CT$GZId2z!Qdy?@ z)AaorP`=E+6J91cHM9>{z4tB2%UrNGM*Q%J;3uqKZN3Tix->v`Tzh?H4msQ3)H8qY zQN4$^Qvd=4R>9V`JTc@=YX3GSac|BHqBk$o&S>o~I_$YgQWsBOe=eJdzTmPSj*p+I zDp=U!7=xZLW)com*~?a`EsIbv#3!QeJ;6cbpWkq=n8wO}a!UmS%%U&GlWb<5TCd}> zTsiTb%z1jt)BFRQ3ES#l+@HDUz5Ik)?-hn`)(Fb6ub<1wTs6OS<&z1;`S1_otq?Qd z)<;A;J4d_Z5w@=`rp|m#kqp|p=!(b>)>RUAqmOYnR#Nrzj^Nb zS+F#TGDZ=+9!AXFFYj|EBpvv*%bz#qPo3ycd zvSNWO2Jwi!>FesIvSYq|qKTSy@LC_IH`<{j!JMmClBDeW`c?n@3WnO7c-pO797n=L z4v%BE;VQd+*PX5x-;tOBI8?$-DXrs{aigLB*mow8A7yb_{$N1hI%+Mo zdOt5KWcg2?8M7%BSBLqyP)Jwllv@?)bb<>+PW<`9K6`?l0JVz{U&m+=B-ci)=y^Op z87ch!5az@yN{iG(M{+!SYNlojmgMFI+r>-PCc$UI;px&F1e2t>d%hFjue&V&eTIST zxi$M+(h_f}Nu=j@Z}}-8{xjC{gYyq#)jO^p6#9H?e*YsIadkZTGv}P;jwnnr`gz7j zpK<~l31PS7O5c~_@hlcaEl0R~LQQVeja?ue$~#6O5XFS7+53AR_B%7VP}m3Jg<8t% z$;UZEXE8PzBFok1oP{(M7~bYvY{b2f_wuAQZZS!lWtqD09fipSJIEJQ*bz*r(i4zO zrI<}XTtQ!lUOp)ahHMMgTWc_t7ArFT+-13;S7!x&!xhUEpIPe`w!qH+^Wv$rPJ!`V zUM%xFn;nO2B`v-V9T6@SGM-+I-0Iyz=4Q9qDdmZ06$1;ix_f!z@S0uN>WZ4_)sBhf3|G_!Amdrz2jxI%~ZuWP`MMo$f z@r?PUE!K*lQ%_c`-Nki6<=z~+U7ZSwq$r6wMf z@w6HvuhS&Tx}ZreGitJJ6mgOj(Ko|Jl;bfUQ%Hy(yCrremu*f<dN|3#{G}?54dfYCv&QiZ=ApAjhC@raKHFtM%yTsnB8V4X1hd6`=F$o=MiWIBkf(#;6V(JB^giT&e;g*N3mh1z<1rEY2KAKRb=?*9W_AS0;bn`@37l#Tl@O#4!2<^)mEv3h6LRT1 zQ{$=q&;sT36?ZDCMpGwm3gi`-`B>V6OfX9q_)Go5Ge@W3zD^FZnGSjP3R-@I5o3}? zs;IcXN2yIZ_BdkIvnIAYq;7lL*$FG!YtS=$AD)(YD3~68@6d5$UD8WLl8o8(wJTnn z(Zo5JrPuWuN0cT)d$@TE`Ppz{cGbI(E!;_Y|KvV-7XU$N~M|T7C{uT1dk+} z@mNbwVVLT!j=Q}iiTe+nO*r9tW~OO{dFfnFK^EsM+z&DwbslN$EZc|0%vU*xQ>g3o zp1I`8;kZcaBX(IWi%Fx3bGyikb$%Ev{b(2$sobSqzVpYh%batDtNm2h5ldkkn;I+1 zv#wag-!8<0E$J>;#fLFCEI;-=X+rq037^hmhr){tl9@6m2X5e2ddOK70*r~YFL&?> zgfdk#4ukY9`g8~*a#53&p^VDvtdoz2kJ#iPnVb~TzU?;MQVT;6S8NHXV1?M})-+o? zNDCU}BZybb=u)drv1Vu9_-G!TGA|^ki3^eer?|@z@!PEcXURBo`1uSY&c<%ex zVCRi`ALZ_ik1WDkVgps!!wTkg<I#4ZWz}7VSi|4)Z<4xyWQ0^)Q z+p==?mme_Br*+9Sx5!4G!bcG}}h?X=BzDezdYyQ>IU5Nzq(rbYX`X>G{ zm6Zrvc&ELJ4`SWjMw6HFaVXUft4(TnUi%WVJ*kUIoo-Gn-Q|oWS|o5dCeakGAD)SG z+N7stT&mRqo82ty6xDK^hBJt*Ub^uZ%g(L}29C3 zhI?3&M(IO&NJ!l=SVslpdLp-pY{2iJ)t1{VY=?8^>n>87ci8k}+=s3IemsBDHq#~A zX5RAreg*8@y+dXtR#$HhWwvw$s;I&Sd$uPZ^^+eVh9*%D1pX8DMhM=sy0omc#feTm zHetr6IqA}n1dh{rJ?Yt);xk_G+1e?0?%iXoH^OJVgk=28+&*FvYpMh`EMPe6^u=wT zM6_qf=oK{IcRf?A5;(n;not3&@uY>7TKeL`-$hJ(?}*H*=^-?g2x4?a3MYtS0Q-no zT?qP(@8E3bqp03B8MaumHFD}vZ!Pj!l}7E-Bm2nt;MA2Ct1f~aUrVg+AYOGx6z9JY zo+;H2(rLbAHPGNewY(ap6-b5hqVe787(Wm6hx$DgXVp1g6FAcrk( zMjh3paK1qD7=QnJQhLi)ULuVGRP6|q(XD1b+!g8|qC}?#`Uxo_Jb30yOO=Ty(>Cm| zcWSA5cV+^tQvtt3Om^7TR+p8%l`QhW>mw)Iv(x88jvAYM`^Gzq*&M!clV3=C;ji}S z@5(!(i-8Vc1ZiShw%HjJUAtCA-V}e0fxmKyn7#X5VmAvpQYO*%Lk!DJel6{4MOT+L zoG{L!x)0zAl9@P*R@zp4&L-SjVeM$u-WGNKChFrxL=KEqH6E4ZX6sLFsvbWyts!fs za_6Q&kWhoXC`)f;=Cg4rYI~BQZEm3kw~2a8xHl*yYl<}r+t)UmG5(ZCJ)S6i*W(1? z2}GKxo8n1DHnd_a-g%#r#sh|LdV|K@U_H3{U|WM18Agdd(G##&lu}?jq6NKKeA79x z-@tQ!;Ffs0>FbYgpgg0RGqRO0JY7@QxxwBnTx+xhV)@carw#TCSax^ofbzEf7e2Q} zaoYu^#sZNw_jkkU|Ecrnf3Mpv%E*&%nqt)KkWr5VoSL0qkS6a;y}f`1_=)X3iG_MP zgkNZXlg3;!^?nPE1GpSOT_(pJ=~6gUd2kRE?{7{p?_u;J$sYPly>vaHeTWff&$^Xj zi>0UYHViJ8p~4OM}NjwvzuIi#qN!jeYT_) zU*7y>WlmQWg3}D3RC8;(S$ew%F!t;!(pkBz<)X(5u|6Rv)oQHbJ63GX_*I{S`)hT+ z%7eW~nNfaT_Yxx=noZ%cLaho0Dk7w-p&!-Ktb7nByKjb69)O(*@0nAxO0ZChpl5IVp%aDq#)Y9Fsx|eY>r(IW}>HTYV_^a!>T@rXEtA*s#8+a zy#o|6Xp6tXLB{W^fhOzPxEfMTTZ?q#&yGai8nXuWvfj!F9^*wuI)?tpIgVZC41ToL z>W-}dU;XHO-F;13%yzItL@|?)OBx;6xhxlmmYd&U&X7i{SFzJCP40Sh!JW6--m9)$6LW> ztKS?dbffG-?cHAr_QCTxiOsFA%Nw(6x%v@l9jr&$gZhBVVN{V;@s0dbpAa@x#@D05 z$S*9`rVdrUGwBknP+ZGR>;IL|e(JIUVrr)~@HH8iv^9)9wF7DCzZ|^Q0kqVn-L5_{ z@5P?rx1Jf)WkNoWQ5W67>qUEZGU(R+0u(`ig*dbDD(#9s!3_4ms>f{oMTg24(ThJ+ z_`vhR+Frx>?zd5c1U`vNLg|&$ZI(wbwP2d{leYUsYRs_7$<5Knl1p_c(QDz)dJkR_JA1xK*;t zyQ>2t52N@Eu=f!WZ!vllBC+d^#j^0P3b!S{-D@<7B36IVsdYh>{H-jz(rMCaIp&gWGg9 z^q_`WYZ5pG_z)umQkx>1L3H@&!m`!~tS=_8IxwwQ+Ri4@3`Hf4xB~%*JRoIFo|-N8 zu^Q!hrSxx`O?}%QWjz?kP|FUz!_2I(agycK?}y}W_EM>59-Kb1&`T|C7tb=2lVs^a z^SHOBEL2i5(Kd1`hiOHN*E@EXlE7L7hXyOa8XmbWyXKc?npr!aAlh@!8OQsY>~(A( z33i}<_b3s5sgDim_s$;2TOe}Zw;jk3Nh)2DxtQ~rQ8#7bF;(u&U5P9aq^qNv`6}Ff zQvEl#xEtHWf_NYnOO}Ol`~XfFHUxU zuf0wY;s$d|8Z$ta`G%8+2B)!#@ljIcfOD`VzJ%k8NK8i8{OsL}H6{GoV*f$UH9heM zrq69Q)Jh?|3w-f$weZ>X3v57MAfEx_63Jaf9&B+ z2c+&MT(N{6#0xTxaP->{lleG+oQ^a|S1-XJ1CWKRo)=R}k&BpYuwnI1Do&5keec2! zad70T)SY)7U2^fit?bhtYQr(z(+K`{n}97G2s>H919N-{dU= z&}WOsL9w>-F87WzPd!ol;D%uxka(=clMO`fM`Llv5#Dzj!+vyGqrOxQ8F%5~SP{$a zru9%Cl}Tp-GZ1u<|2gQc{~dHsWweF{hIo}s_M}Slb@VjSWMxyJE}E zFt3P0_3F{KRcwQ^ZcekRcTHD0KXlptXw+>D1-mA)OBGnFp5S5%Qad!b{mPDy!6scmC{nZUnBBP<8zLlT9lv z(~3OeLqpKNnd=q^wYr)Snp;|6_qazpnh(RHJ*T3!5^r%{fi69tp;o`QFRvthnK%~bLBfO=7_ii z0CN8y6kbm5jt^9RjoMdov2S_SmGTPMwm9rAddh%me|hHQP$|s+c@`r4 z;+gFcfsU*j)WSL!+jnIak8X34T?uAt zm}ugC=)$}_bogb09}-%9L;m6Q?Gx>Mv@{-SW@>8bHN=M-D>rNJzOlmGqmjF9b+E+) zgj-ee!DEK1G3qZZ9(6{$fu_dFm**VAGSXZ|LW+#(twN&ty3ToR)xx!_(mb`Js;zOY zoRjGrCg~C?CbX|Nk84>!^GA6`ez#-J`o{EKS}TWe80P#+kE%(1EH5jW%V?e+l2#ew zynI43T*bfX(R=4CvIK?lAmmqcU|{ zf846Rl4bABSAzwQ z&Q6><)@Mr!>c0Nm}}89U}>^`jZxxHbKh2soNLn3AI*YQg}WCF^z~V zv{s+_D@W37$*&AzYZy0qg#*BLrP5Muy>R*Bmn$O^g4!{xin*pG-;2m=o~%o0p_91| zhX%>@pV&U2J!6frPhXt$h@EKsnzS-;CoH~N5!b!`0D4+orTZA8WvtO*l@*qb)Kf2FGeG?1qBu!oK|NX<%IAOJz2qFTJ_;`i z46tJ>zqL^%a;D!P9^wUpS8PeflgdpN!D(~3hD5U^b>Rts=r(%^9I9uO+MeO0dfAygI_tgie` zfu;1WK>w{pq?LI}+v^VQlaQ}5vyGxs8S$Q2w2Z{S_7}*B!4`4& zGQ6qZj=0v2U-}m9B8&LQ*{Tr#7eEThcTc|^h0)Cs*9590ZB1#UHUU8~l%!wg0O$Gw z21xyY5Uy_s?MgswM;iGd@>yNUvXfZFPY(&1+tq@|sTdxfa&-&AV@9?u99WikY4eK6 zg1TG3Kcr5|jBEi%TV+akA_sx(tu_sZxg7_^n)^qBU75;fgx{wfQ#nY?YVaXyHPE#0 zbiWk*STd0Bth04G#9~=p@(e5Hj{6p;F>krprg1`!7wR)2u+p(`gEXHndUF_BOL}6D z7jbf;=D;BNL4Oo0X$mB-Pnrj$f&H%1{wM>9e*rCG_+~%qk19H_!9w`8v_)01KI|*z zlB%dn2^2Yno|RMzSbB*pf96`LD;PsNmBHm-C_6cZ!=4qraH{&V<} z&T(Q}1k#L#heLj&4pr2aR14;&BLb{&@8LBR z_hfe2&EHj07aP#WI6CqE8GBwXW4}z;&^1*WrY-|Ezw`%vvKci(U_bz%=6y`hjbWC> z;me9XcG{^}s=JN^Tf}FpS`*FpW!-qd$31U_^=(0r_C52lK{1Xkzh0 z&Y5(QTWB``D0(uJ`gO24T}+#ML%Tx}lIFW#fnWnL>YukqhM}Q&=puA*i3Y2b?1U_6 zE{S5YCvfpYo@mZwqIE$IF))vg8HNt>&HUv=>*S>s*&r3^KBfR2;GH1e_k?R@lFH({ z5>E{Du_7gmNckm&K5Q5Cf?xzur*@uDy4S{dUyw4f;YLs8M0rJC!(j!$Z? z@w1AWt9tprs=1DA^}NRaQ_2dbjR9vBT;^`GTAU4&&lcdLPzD_j0cxqvVu)C}8p7;o zNm(-IKJA!Kw7ZQ%Sufh3&(cm{&?SjYL-I0X9WLilGW1@{bX8HWoo>!}bl&-7JoNwnS zJc^rOZmyA4xXAhfsc&1xr3yq;KH6mCoByWZn(#@%mE0Ix!`k z3Z)JrXIz}-7x9d^Dtcb%2v**Zgo88Yx#n?E5b0*T8gV)SE$y|=s^wMpm$nwY9B>Pw zkNd@(RovuYC}@&b$P$j}>s`(I%jc@f-*YWkd0e}<@#D$!F3>gn&eDdXt55*MWS{#B z#BhR7hw2p;vChzCsEkx|FM;-9IkK(O9&V39P3-6{5gJR}U-G)zTAVg<_GTq&;Er|1 zjZ1x}Dk7qQqM4GUHGSB|WvY)e{1nP7PD|y)c z1FP0yPV?pb4jrpYR#~J9mi48ZNZs&^WV-Yb;_T0VyK?D4P_^6F0! zsA+KD>9eSS+R8wK$eQ)CPH=SwEvGG-EKbG{56hS%cC6R96HJR5vR)CROcGT>#jub~ zEY`evcTeg?th>8|tqt`zYAUBG9OgBG&SKSG#8WrRGRiY$;)n7rFx0%voRlWu01u*<0ccjHTOfW~a4~_Pyj6 z?V60HY9mJvy&ZpnpG%z4d6*W1E}AXixt@jB7Ulsf0cS_D75>VHkfM?(PX-~hs|8(D z8klxRj5LsF4`;BS_C#QchppMHAD9eVp2;h!JtJ$T=c3|j6oVQn3-$!WaYYW2`o}3| z?hr@M!W7zbTeR>vlABq??z4?5a9vzY>mLHXcna*Lb3_8t@*}k?S|rn)mOm;)G0(w8 za_}L-em*^$`<1chP-(bQjIxUQUVCM}(};9Y{4pmkia)TgwlD=}Sp9k7tMXl;dKNP` z;oU2!F1CdLZjnW$EaY2E2{p8X?0UCgUcF-1T;V^_eH6e6?oAj+l80FwlY&;%&GBws zrnxGQ?%;*wMTcO{4}gQLtnNj8YguX-961oeFXxxNtgsFYq9T9oiBJ?}_hrrYwmY;s z2AE|z0Fk@AB&6KNbXOu`m!)%gsa#;+jqNl8g< z(8?HQ;*0%CiK_e=wI8ArmY*}MbOdV9ilc_A?Xc^GLKoZ6bK~2TQWop8tCFk8shYJT zgQwx&wa+{hMr9!bAn_HuJEqskUWX&_rQF>;i5wHU7*@!d$`~;%AMF{C)eZQIWG?jS z3My|~8^U1vZn_*qP|8`xe8 zUXyo&tEMiXMq{nY?VfmvY!eAC2a`}>`5{z*Ih_{g_etrQ|M%2 z-4tK#(Amiz(mW}L-Tp+b*@Lapo^PFIXBJ(lw$&vtM~O0Ky7wC!w=`NBVJ%mCS3C~; z3^m!uGYJ~2CC{wc%0ta#bxRO(DzwFlvcTO6diudA0+|N-{$IY}qu7&A-H5hd8Cb32 zNhrznZN>1x`9#oMU83*9($M$mIIhx5YOYbvz}B9rz-X=%PTnEtjML?L3!==Sd0?ak zt=be6p;pFv-ZioCffzbMsokgYiqtRnB-BDVwq$43crwX|;z*`57wRIFcw#A<`;rp} z3mYU0`87UvwlT2xTjIvt*j5WbH5;6+D+{U$I0>!j-$mFLu9{-J@VrJIx@vTRNT0NV zDhUS+eaXE++;+;GeMg$e3w@L|@3~-2mN6o{6vuTrMPd50JBa;worFvvF`n~_eLzZu z{Q2PPnR80nvX}LBoXns*Iah+^?P=)7>VttiD_63`=dTAOeKfUXo<&&YoHR{MjpP=z zbK0NqxCrd0fRRyDe~~XpnGO1M^qi18c_(OgTzbgM$k#|L4nlMM8(3KJ!sbr27-bK2U4VUwcE%I%h$a8w&d&SrqR4HkaxUlD<43~UOe-xWNCnbcqX)AuTi(7Okd$Xn5q3VTvPCuJJfWD*|N|_E)&(|{=i1J-`9J>(NVz+=Uu7Rhg!-{_r?x?ZGLK97{Prk2gP#C84JAaC(u>Go5#8DnZx|%KCZ#fz6*S zOlBE-X|0}KJYC_6)OX;KRIjAJh%kP3mEXZ1nh(v_S`it~!OPMHHdi^wx+d|)gvT-2 zBqcuO2vui)p^%Tqei*(J7^qOOrKXdyM}z0aUgJZ6mEGMPNL^|2efWPm|# zJZ`gl0Tr|`xNAx;Xf6LXhKyq2R*RtnK7(YmQBH67N6ZwAdN00;>oBB>u!qYT*TKVFYy~8m1Z%uDJN*%Y|Ox<$}dt9Mt?>E6kX0fO*hAd z8bS(9O}bdkE>@&0D8g(8Vm&;E<{6RwI-fDF?3YeifjgIKmjjL0lZHx~#7aYzC@@Qh z`sZm2G~Z_N>H}h-o|oZ(th;PV(j0Z+i(YoS253^^WVR1V6~8#imnrOk=e2)Rw6~XLFV*v2h+x#@l%qIZb;I=Z z^e)SX(SP>v(-nD9y)}^pZJX$F*JSv8sEz8gH&1nsDzm-- zR@ldz9!07T82Bol#$YHqoxQx3`_wD3vqSN+P1X9Kth4|9@?4GhUf?s>TVov;V`$>muvf_Vd79anz8HCdc z7=degyCMP{Is9#S<|9P+^h>({hjQLFhzQPk9NwBuos>h4;7ZzdKs0I~@zbm=)OFPD zA-(+X+q{{xL@yTI`qJBqru8HbXv7{;NPsJS@cpRe#jkWclsQrSkrP2fvs1pXYw65GQ3{2z2xb>Fo!NXpve~$t@dyX|h24Wp#!B zE9PYsTazqc5#UJ&xK#v(MU64MXf6E=v$P0qGf>_i;R)IP4st4eOZ<3aeH|Ck!{i@j zD)s`pAC7x2Z$xxfh`81)Br(ZLHmx}oq1|B5F~x+#B$nVArL7HxpWbi7{ix~I?EzS@_ec@D!#rTgv@}|J**FfXJRR0m zoEEh$P*t5sFjTptsXKyUCdvc75S`P>4i-x9NAs9YPbhW{0FF2w|Six!C z_32aa;eVhT&xSt8TW0L3Qyi}Jo9frhWc8FPa&!3O(uM@8A0kSDgRnUetgr#}tP(y~I*H!~rhT|J)W??m8YrcMajZ)U&Rd`vk52ok2j&cr+z{QnS~n=J4H)GmqPu2QVetF^a6E-ydpL&fVW! z?W=A!_qgFMYE7{A1x;q1OJ&fy9*0_1Z3|u{l_l5}V^y_1V~BCV^u**k$vH`)qB; zTO-I)e2^kNU{J62Bca(AHRdjn;U(-Tah9ygFEjj6ReQ$8z`aL_z;<)a0>l&4^eN)h ze*e<{K8;M#Os2kaDe+-3d!iXiK24T(5mway^wxhdnhP4UHX~&o;qCF~kQXiBC&s zS1@!IBT0sBP?4YanrLv^GW8v@taq9P^#>e`TbcMqXRIt!Rehy%}HB0jBeRi6}eT z(o{uicEk2gPm-N?dU*h_`OgdV@j(4ntzoIpZlN|NYQ!_Ab00Vll}k@iOa`IvJwpVd(XxUNDtFcz|Q{5H3@Zq*YA@;j=^Nmd#DmPTp9*RbK)WHq#2GlN=(qHlmiT+3?fWNTz0N311llu3*Bx?cE(GPb z6_;m<5sz^mZAv;?8-?1$*_rGhBl0j|s+RP*xz{+>Q@}@zjZFIv)N8c%dXbfCANm}@x6Z|;3hmW?eN?L-o#en3v6oqP;w?lEs!!{5 zDBgezp#&PI`MZ4zx%IV0vggbJt*Kt*~FCvB^kGsj5kRw`{jPv;v$%iW=u^)sZnCN16a5pMwxL$aJ`oMODI^$|F!%VQgNQ>EFEP{=)` zN)-2k06Zc$NRgHe^VHWUja1|KuAN?9oO%Up=%it9tVXz#n^Z|^FH{!hcFH>gFnhzUich+_| zyp9Du6)BD3X+?dS-$bL=uexTUk`>_&cP~qF*S+FEr=jx$Rs0*NmlCGcX{S2zoa4OC zk(X2|2GqM3exn`k_2kta_Xz=BRz}j-h>e`>wA)B`<#E`_j7E$O{^Y- z9R6t8ofIp2gh+x3tj9HlkMWWWL<|VFc})XGVdgB%3u45-T_Gqk5LsNZ5>FnMIpu~# z+fQkhm+Zl}>^hrQUsqLKw{NEV%&<^@VET-p!F2WWS?-lky&UHAN7$>Ks`~UU3(LNXjoEM`-Wb0Xibz83JTuGlu`U-68|O+2p9qTR zCwSwDkFXL?zChwF4IV?~enJdI2-`iI{ zcp%Z51zrO6;?lb%c4(B!RUU_aBVttxxR+!>%ZBm)UE_)-)xx{{G zYGaJ7y~TKi7#69oqn_K_9e!_IYMvl(lHY4)S#V73EvdbviaeV*z5@w<>eWObCd_V$8ydSY!@F$NwdTHYW`l9!ZDx^j>_XH7 zMG3v$k|~UtH5NhAtu?>xzQXS4=Oh~~oC$RsgiIlKc*OQ!oizEG&dKmbE>!l6yz)(d zZYVk;{h%B<(XAC!dkQi?%hHMGh0f1O{?J55JU{;K$_uH?7iwzyxgCJju6N<8inWha z=;)iMI8~LZMnn}X=83qi+1X`ZOCsT*^+n;rA=C0q=1uS1{6$}@N&TIug&?}1_99m0 z-d0`<;+t`=uM6kDJ6)vj*MTU4gI+aQ3#(Rv#AG|f{?7R(n798AZdaLJ7R0PS*&$>6zirQQMrI4xYWn%ZZ;%Y!QEh& zV#tLCqHGw8RkDZHvFmJ6eH|5g9e1^F=aazki!la+rQj+A$=_|dZbm|FRvY2Q#wfE` zJ+6$P7buWt)!qGk6<_+zsL#P!qYVwgo7cYd`Oq@fS#Kk>aK;0;d^y}SP5g0Pb>v#+ ztc7EGF(73NgHD1OYuEH}W#IpYvi@^3Upp>|~r zS%bK9OQdcMx0-j1MPqg7UFZ!gsfCks;dU8247a3-{4)f#;Q`uL7$+$bi<*gU!{DI3 z&xH~BeeNm!Ox@6Wn+W#oXx%$RyN$}Y67!JbFS1iP=$r05NRO`k%JWAR%ZjfYu6$8f zrL6Cf38_$_Xa=SQVQ(E@I9skk0=>L?vh^00kj3W+)4spKYc>VitWW)IfgSK(+M#!6 z;I%9UBV2R~mD!mPjN@LILDU-a*sF`Oe5c*9_ z>SjrR!a+2h9c*c&T%0yG{t=a)<|Bta-{ZQN59v=zx-_$L*8BbLdR1AB%oFzE)v*RcF->8(Dd9kBDSmhL2}xy z%Qh)VS4WvXf^otTf6W2g+y(aS#ha=kGFB#fCwl)-QkRG)jp_(9*F)a>_Y;nRcj?`fC{)R>*u@UF;Z{s#!*(XAaInY~t@d^zIN zEJYA%`~+~mTChj_iDi$AAYb$^FaD;kVhlvNfVUKN-D_M73?GQ$a|(TWaxLDucQpg8 z^*n33t*uqM8Eo$gd``}W!5SXC0yl$Ea+8$$+46HKqlyH=n!2Zb7(RX>elhvGYfnIj z_N7ukA3%`H1V~@b1vyw@7oFysKqRh?;Xgat0(iAH6n)}B)mz0&*}uQkH)87dZ&IAK zg~4msF4Vnu>c>%E_T~O_-u-V=D!u~o;0skx_-_lanrm$8z^4TJ05PEmBoONGh7}2f zu9;SmrGKYwkS5nmpS+j!?x42J0vm8MY26 ziU=wov({Oa;ea43XbzOULRbL;qM}8KR%OTtELiq3-mT`Bso zZ9vDpxP-YH(6I~DL(xZP!H&98Qb1j_qtNN_8V0$Y;)F$ZZPz6=@p8(e1JP? zL9qn(ueEyGGfw#8nh(^9LFgQ{VrrIJv8LI}+?Y)(lb_nwtl&PY{{t&EtEX95nP=sn z)rZ_#^UN|v7+xG^_Aa!yNGhHRHTYPcm+uPiFO{jM=uLT9yrEnH(xfZrBe5c(L8_iY z5C`wOm0n z*{AzRA+s`atA#OPy1mTP!V-ooq~GYkbiPEKua`9#J~Ag>8C=R-rlVo1djXj}RD5zz zZe7sgREPoc>iI_XjLI%@fi=wvOmqHSgMMqRxV>S=@9#thO&okX4#c7F;@h2KA5A)S3>mk%*+J?xjJ>~Y@H(~M>)v-jA%E;A51XHH#G6Kt9+?9Q%M8sVq_Ev0fnWf% za53JKCFKh@mptR1@cU81QL-6?-Y=XUpXZP^R`<$wueU&|XHeW$CjV#n#j5r-;rTB= z^7@3Kf6T?#v%J1P`Ly;*jxk;qU>7dNm&81PTb%u;?)tjpzw54l|B7Sil>~|@!BwVB z%x~&NL9SL7#Lgx}D*eQCVO$lhZ;H@p(UqbIj!o%j7Dw^l6~{MjT9OLtMDZ zXBKvcJ}G`5Rf^;9RSxj!r=0y}Amo%zHcjiRGv%0t8;MLAvv^`w88foUm92@dB%fKp z+Jwj3WYnyRl@8 z?3k-+$B*QB~qm*%A8lwKd9f%YLs@*KmAG+2OU))j2O~G^Bi_NZ2{!o{N~$G z8#KvRgjS*CVq=^vMMHICH!&QLu`dzdBT90sMOe$NXmK4kB|u#}maHjw$k>|B?f%g! zB9H0X9B;*lvFw={A1jWqjB(Nw*JlRzTltNglC%B$O`7}!sDup%(

kImd3vx^hd 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 literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/Service Fabric Explorer - Node.png b/content/static/2024.11/images/Service Fabric Explorer - Node.png new file mode 100644 index 0000000000000000000000000000000000000000..224e8285fa080aebc06ce19d112a6b1d41924775 GIT binary patch literal 80201 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 literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/Service Fabric Explorer - Service - Single.png b/content/static/2024.11/images/Service Fabric Explorer - Service - Single.png new file mode 100644 index 0000000000000000000000000000000000000000..9f79b92f6f54a5235a5ee4d6683b1529dad9801a GIT binary patch literal 94472 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

(9?!9=xs)2Px1Mwc7_h|B^LrisvhP1<1U1UsOU# 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�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 Oo;q%Etn{ecwf_U0ZNj?% literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/Service Fabric Explorer - Single.png b/content/static/2024.11/images/Service Fabric Explorer - Single.png new file mode 100644 index 0000000000000000000000000000000000000000..d29e19f429dcfcfaaa1ec0dab3aaff871306b125 GIT binary patch literal 96929 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 literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/Service Fabric Explorer.png b/content/static/2024.11/images/Service Fabric Explorer.png new file mode 100644 index 0000000000000000000000000000000000000000..0ac2f69b21cb9216831ca7b8768335f3c74d5212 GIT binary patch literal 98215 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%0AS1C@^F2zf^0-&y2m>GWqCHJ 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

#3&SmAbk=AyU_&ZgBH2p_N~4N1&G(SKVng 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

A$9NO~c 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 literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/WaitForAllTasksExample.png b/content/static/2024.11/images/WaitForAllTasksExample.png new file mode 100644 index 0000000000000000000000000000000000000000..902ec903e0f151e2ba2018adb2d503da4bae4f41 GIT binary patch literal 80050 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 + + +
Input Port
Input Port
Output Port
Output Port
Exception Output Port
Exception O...
Text is not SVG - cannot display
\ No newline at end of file diff --git a/content/static/2024.11/images/block-exception.gif b/content/static/2024.11/images/block-exception.gif new file mode 100644 index 0000000000000000000000000000000000000000..ce7ee14626de3adbe869506a7b0219f59c0c6922 GIT binary patch literal 17918 zcmeFYcTkgG-1d1Vgpg1J0VxUwq=|^AD5#*J7byV|Q2|2}upla3N)mbxy-4pJL{Pe+ z_uhLb(xf**kSxF7Q}%gx=bhdCf6wHPbI)WlnRCtcJ=eL<_oJ+;Bz4Ca4ITvjHUu&= zf8-T5R#vn%HMaHi^q-BP;o*^yv5AR^`Ngf1lM{@V`wP>6mlh#!-bdOy#JhY-2qhM7 zY;2IpWIa94>FMeCv~rwh^3wWVPg{FtQjNP?%Kq;^JKfy}2M5P5UK|}AMMamauCDs~ z=j`t8zJ49?^XJdf($f0+`mULcrlzL0wzi#}z3&y3XQQU3X05t<@aOi-`oa44erIRr z=we;dcxv}d@m~eSlYxQos_CSLxxY7V9IL6F5D0(5BTkBn|9o;jiHbU$nVwv3j;tXk zH_m6aE;dhY94ji$y)YU!Hy{1*AvHBMGcz+MC#RsG;LDdURmH`fKE8_?8LQvF*A7RM z>Z(F2$Qey@neEFvgTseQ%L)n#nwpwAIy!oKde5Fcd-3AM%a<>$tgPO=dGr4Ldj|&x zM@L6DH@86}!^yXA#vL3c+*}juO_CcevRdEgbvPDvyW?;;Pft%@U*F*1;IOc;$jHdJ zxVVIbged}k#@m}55;7kdIUg6d5FbC6oYYoZvs_s8rJL}r-@mM7xS-=_QO|0{z-rCV z%HGuU!p89O*5uyyc-`3A!Q9-z^2)*X+R@?4;o)9l!%Eu=Oj=Y-Vn*0`qJ@O` zz>L=Tmd%R(h2!bz!^1=1{~!PR72u`NX)5YIl9$CO-VhU~0-b%6_Xq+}1tQ=2@O$A@mFVo;RLA$CnIE`Ms|@Pp#j_2*LyVf8J=qFJN($giKL3J7Tx^f0X!O&5@YE?44y0Xm1VDojp@~?@gz?$93pq#W)8mr zkzuKxW1JfB1RiT025TbuKu8e2u0m*>rB#0%>cIPf;-TDOVMCc0S(2 zD!bsX3navR3ECya9{<*sxJ5QO3J`}OGQg~(u?ljmswudOZYwoDz;DuP42#+4Ga#jW-TV^POP$-t>wUg*bn7zFts{Z|Fr$x}Gxtw%fHI2qYWH2ob zMsSv5LwVCl@T<<~h#h7FFdnc#J*QzdE(~J9iVcIS-VSZ1l|TVt-ZAQEOT_e>T~Z_A_@D?md6+ zRwEq;0VB(bQ3v>a+xztJkZaPi9s#tD*vpyx90;yhK|cxxc+bO%BH)87ZGNem-hU5% z)!=7SkE9lTf{(tkFgzL6(2wTN$UB#PIg2g1lECRO`Nbg3TtQZz+U73j0ted#@~<#K z4e>W$1dU_Uz|cTu>}M3mmICWgYI<%__PTx^h^H}jl~!x{6**t{G0LjwME@STNx*t~VU zxnFUHwu!?y{(1{U?k-5F+dLvPqC>nxeK%awmy)8)VP7n9uHD1 zSKzus!=;hDO+9kkC)B6gc5-z?6&Z8AD3z}_WslpKoWj%pVgl4WiZg-{kmeT<_q;ca zHIz9F!imjrp)WMjzpw!s2l328GXsr9cKG+r?zdO!Kte!0$o>J@)`1?kglPrRf<(&KS#3$X zcI5}*=}b(h!wWF=Vu{;rj7$!wU>K!;OA4ARgcI&3b|@VRQi=IM*B+7JQkG#D6N6o=)tS!jcSBz|!=&n1VZl2eyONVvW8~dwFB+gIF`_(~lb5DK^l%(u{b)g~zROS+e1{0zIraKm5{VnQ$rL5Mf?3mS4Uk zI!;WWpsXyH9FkhdIOiqtBgYOaPGVgVBtTt!KFZ)Dcetf5F;15VgIQIv+HKKa<7j}r zb70|$F@BO$;(@fZ@;;D}eIBvU7k9eUWZkX+wzXv7h=R+oJEOrS&-_|3CMj@7C8q2C zk3i3q)M#AA94DwkPry!;urQhYsQDX!<+n)h$A7{i7F$i^`A1xe6P zFL8aiX1Z-1`#JxM*C8wrhu-<$7+t{Y#$d|Vy-eM&9!jIc0RgU0cy0w8SjcfGulw12 zE8_f+wq!IL0l88R`ODlfJ|m&X2ZTE!j7u z#a>vsNXMN)QFkF{DG9L_H7~<}a zdx{{1t3UyHgKbM1w`Vt$9=!soC6a$+XRa~|*~ks8DMRI>f}xL|$!=+)UcmSc;Lxl2 z9{G6%FGaS>UMq53<;}$j$IRww7JJBE>(C5;bvt7?Bbi&vMzfbom|?E3H)79}1rhP4 z;c`9ImZ&aXB6}m5Iv2OB$p;cH4S{^r$Mc}MW{!qOs%!Vx6ZMe_;)&Vu3_c&D z0;Kbi{&eP*3|?2cB<9OJq6xU0e949<&u&9m-z>sSuzc|rYNK?_JD4xwZ<7*|Um}X{ zF!V-zWN@u`b;sj%)}1I3+ImYCasPmF)5oBLs2~}(WYCwcgx9&r#c|?}d2LZjXfFM5 zC}d&4LO<#@ENsl{+HxHL@lJkikUSSxK>op#Y|ma@Jj57YMK{%K3EIJ=>RfA~(l`XW zv`XOLIvCUcyFUg^>yy%A%_tz-mqkm&c2r%jK&eJ+f;?k zQ*Pg>-OS8B4(g)zjyrg@98}nPFfuLD^F6~OVV?J{RvuwKi2(-nlj`Sc@yCR5XfcS!YuAK~za)YNu( zPxa!I&QaH=)7|7O%?Wv}KmA&@yO~-ws~$mrhN@2Y+h5D9S!jJ4K$-KG_tb1S^c+tg zpZ+E>)o%G{xp=nL9<*w?nFSY}EZ+Me-sxVum*pP4{D|^r^hLn_*Pg!{?&inSOg|`x zOb`BSf2N!)DF65~@`7#aE9LK2mf!Kb7Uhp=#>qj?kJBeND4P#~-D7qf^MLy^UNC42 zU@Zn{^})R2+~7kTLLR4Q45HP?pDPE>W7HAl_-{V$CfXoI8$4e&4n)EWN^!9Wv$2r? zzEJ?t3-IX^grqzoLJ8W;1U3#3oX7$OJlLcF2@cO-V-Kwq5ZfrgAIXBS@dSiDHAmSM zMp^l=c*YojnM?qHhYwW3_ z6X*aCvyB&<{sZe#A6t<3!%!SuFCYj4?4<}`vX8$oJI<1opF;Ey2ygX^=J2=Z^Hl_aiP-@2mftyHKttHS(2^}(pH(0k=a~(7XZzDG!rb~o#W=%_LE%cW@E|ng76n74K!Sx619|!2+yIr_od|`e5lT)GDzOpr zcOW<591@pV1F=*e$WYyRK#0w#*1j%n>!$Bh&&jQ z@zwX5sGA^1qTLOAf~lUrQ!nH>rNXW8DKf$-z5-4Yj^^qdOEg`HzYNlhQ^elU2Cnx* zdNVJX;4UWc$x6+Fk7F;&;gbYqfw)rlpLdW7xWr{E>a~?bL@sp8Nx)V-Nmcds) z*g}$8LyG{Im?Qzwm*T+Um%`1F8ZVqH7?Ap9; zzjgVK`R>3S3<@eru>&A+kIY4&7^3_Ou1r&BH#iqk(k9M}oUWx7`5u+=Xgu-pxR`D7 za~7O6(&oV>h^0QC6s@?xHxpxd&rFNka(v=6-V0#Tbt@Dxl?5SO+sJK;Kv5H+vgzgz zsD*1*)9kmv62*c-xa&NbG=ey2d2XJtK%$F>JS5j#3_V;5H=eHcg~wk_1|@$vcx8L&Mk0>5OtPu)p{- zG?foav-4P+x)-9SlVFbliS%CsRX&*i2&Gf_A`AjUl8fmBPNx~ zftW`{`J6QUy--Y>DvC2#s1CN{pXi0+I%tp2a6bQJ{1%c7dAbNT^5;6tc^vAINl7sX zfd~sfOR)qVu4x0U0-#&xsl{-B(6_8=0?pNWJyrcOy8a|;zNBlvz&gLgpGTIGa|<8l zvg%=DbWM2^PAx9pQ=t%NuYUoluETHgVn9u2tA-Dq!yd6%&(r6Ha}j#HMimjauA zpLyl>qlzVnlyenS+G0i35>Q>3Q+=+zi5UilJwVJ_ENJ?SlMIvUM34v zefk~~_g%5>YyB@4Nubh(2I_h7Y-B#B-gm{~L?!X65a;&!sTh=~bN$L7g(fP-P%YwNFe6_Rk-VGHEY)7>^;nl)7I9)Pr;Pu3hDe^bvCZnGwRifirgXEr_NP(e`{j(= zuNX$^o+K9@(Okp#+|(E-c{3n~Z@a=k6Pz4hl*95I*DbtFBYSlaTh}ueKky_rR&71@ zG3}7LO^^1~AtTu#5#vEE5gPr3q4+!fmqAgFpY=au7=ENNsGv<%ccoWPJTYW8PCSU^ zjcd=1u2>F+k*(2l)}6`kFAju_003 ziOcxj6vK%p*T-(9fS1Fh<10o2*T+P)`#!#zr0-&HpVA1*8LnfP5}h6Ppr}u^TpiJQ zKV>u+(_O%FqigI6Xxy1|lq|#As)1Zsp9rWJy;?^tZZj5TR%TC5@|LjSLemIRp zYDSq`FB%0dYNagtB}B_GvOd^Y_)y4dIL%^j&Go4b;vpU(n-k$fDU1*ohc$LBxf-#$ zceCJwhpR;ALfnY1*H@$sSEAfju
iDJ!Y%D+wDbXy%nGysKgwtHIW*S&XY1DXV*( zt1PRlNr@{R3A3fvQSYsPwZ5FH2%f9rnXf%vEf1b*U|ecCMP?VWl<@Sobx(C@&KGyH z_E>lIX)X@9g|!$>kMTs+)UHEy)*rrKkKA4-i)~y`-B2^$U=G?SE8Mu#w|04UBNVjR zFSdDGc2n4RlZfBkF5Eos-cXv|bPC#>727y*V}WjR07+XDwOdW+)}(^B!0wAv(~9qS z)6FiVMqwuQz|} zZ;tFgV>)OTI(VUVuxfE&ndJWJ$HD%{f%Qdqn~T4VL-u8_AJ|fyKPLUQdiNWR|Ls!b z{ORH$bnW*8(4prGXOE=A+3$yen^oS|u3JzJ2bT^bLR_QVk0LJ~b=*9P+jNPg92xW+ zN#hSw-JR2aAT!;J1lc+Tf3~YejWOEuO2OPR zZV*nL1(h&-$aivUU`eJo>$tfPbVCf zt!sXD{ma!wc(O$Lof`kUS2ru1j;Yq!$`uY5?6WBWVM zrwpc7Ddt}&f3;Qjldn|8Q$n-18+YS|E&ySsMNoLJ$!HRRItImJQ?IrDd=hTAn5xbb zT>A(Ip&GAN0pIQSt=EwHxfkkr*C+<&DLwoAQRUj<9_k(h(JS@{aeG~&YK}zm&ZTkiPdy6boy)dQpr;9 zKxD!9x_cV}&!r$PHBqTIN(SCojv=Yv-9b?G!~01d!S@<%>Zm0)I2z!tY{_+uT+4^S zSPzZ8P*p~5Zw?)%J&ySq>1AP3FWjJ*;=w50FPsK`{c*a&;`L{72_}gxM1v`Hr^5Wq zjzM*Yl3rdaT<@Ngf-(KwZ`LNQf?McIAvb$1!&lssU>{VXE*1Lfn@-(l2HlK1N9DhQ zLCrJXYv$Ng;5y7)9``dSZ=gc#+2A2E?c#C4CG6HuK_+R!4Z&WD;zxm0bBPndm9ZJ4 zCV?|v4s~UV8NVeyIprhM8X}=7@Z&_?qXvW`+CzzXF(#6pLJylqQ`j z=lKZC)*AyjOgTN^Wso!6N`2{VC~R7XB&@lmZn_Kn2^9J!|61NiSi1C_2v4 z2z=KtJDHwq_qTKKCgVE-Y*;dsauBNJ3|Zh-^t}aws{>5-6GX^ja+O4KGT35^v$geG z3au}VnsaN9j}h9VJ|Wr0>J@=Uop=w@{ffSx3Xj}E+`Fh~LxALCLr*SA4wzpydM0bQ zD*Uw)ox-bdaaE3`1q;McTT=6@}0ABB4S8 z_grW|<|MMuT8toApK?6{Ddn;9&62?V78dDSO$A;=3r~cKVPvX<5V7(KOp~(I4ef@U z!K`i1l=`TC5ch?-T3bO6k7qZv@NHBE|Z0 zC7kU>$tof&y5d`}(@&n6++vsF4f5E1){Ywl6aJ{F>|Mxm1)k>np-At~b7gU2eKI8F$ zx;L5L{)yytIjG_AgX@$GM6(vDg6|RGW-nuKCVlW8T4GS~O@$4v^G#}tccY=bf5oDt zu{venA`4C<05qp}3Dd2*yHIft*-b)kl}IT+JsT<(olIb_N2;8D*zBKsSi7OQR8_wq z46{rgXOgM2+2Us9(gnbXa=>2t<)-3$DJJ%9j_qZo~Ny)%uLR8TWN3)uCWTVBEP( zP3W3q9iy_>v*#R6PcGEFDtZ!rfh%ItQy8%4tDXCr1Y!`qT~+Z`b%VgZj7dcvb3hiehno=NInW(bsxVpNAi4V~N%0ARrj)rx`&{^wSE11p7 ztVbu8gDVuy4e2i+WMsh)&9I(R5uRH7s%-itZ>8V!Rtc7iSSF9jy^x!T793iIl~Zn( ztP_hrE6-(iw|sl6*f{pchSyH7zKMAV z+NLmQvgc_|3jDFB{qfl_)csvGKh-t0I-w1abUZI@1l?=((+P)8`O=785uv&!oW%K!YN%Yj(%WFHsL(|M3w0<(N8Ao=F+;^z7O}Kmlb>!OHrxfS-UihJX|kIUjviDQPu^tS9#)gtvJ3WR45 zyCcASLcZpn)(|kguRiOdDNQ*_@;u$QW3H#c^->Llr|(2vb2+ho;F8f;D;RX~ULW_n zPjf|zFj=4uVL$VUm~OORC+V_Vb`d#00NK2ksS?t3-)x8J&iaH<=kDbTe^-(c*Ms;^ z6jlS={)DF=-|Rc=abj5yQ?DA|Z=u_N{@`F<=646|SJnNa*XhGlBxs}Wak$^f$J>d( zy(r*LD)v5&EiLE*Y55q$vy2Nmtbyp_J`9kMosx-kB1xY~Zm<35==}i_o-@6UtF-QX zW8HN`VzHo~)Sry&d@5whfY=4N?&echVc~mNwjLY>*yokXewI z-UA7xiwie`F51Wkamb2F)Lm7m6Z7;ds)BvFckgQlxQ&BP(e}QOr`+ni?-hl{s(!hL zllPTe;MF$?HS<+%tzdo?9A^xO-WUJKMH;inpAXbNxnhXY;tl!*! zHRzWj=NUl8r5F1`NaznI3@_g_4|T{niYl|^U;V05TRRG3EQe9PU|alEK)qjE>R`(6 zFSHO?Wj>1fZO&i6h`iB;PznH40;RyyIx1D<#&R1aCtVNA&ek$hm9RrOf7IR6PpzrB ztpO?^wKYF_deuxRm0U8FKN%eICNie8I`o2HSiG-$9vUwSRxF0;>Eit9Tm8sD;9y&J zLz~_#;cAR(-fOkWdDYM@RqAD_K;dS;6V*#GARH^*R+_J9c1^BsK#og$H}PI+e0d(d zUq1icqIj4>FQ_Emm#3j1%|=#yLFxOXe~`h$eL$6DD_9PJE7Mm^+^FL2#g{s^CT>aj z7kB)SP|wG7)JX?^tL{8M5l|xBRC6-`LV|67R`>5EP`<9IXCXSf$y6L1kho9n^#)yY z=+2O0rLX8V4qqZCx=jJ57QFzE$=9$k=!lDli4is87dq$Gf+qHSCq)B-Cj8RVVPBGA zoLIG`biZNgz^mE55A+|7FKCY8x`T9k_mupIr4#R#oF zDXm}?tr8Vw>fVRD19*iP*m_{k-#740>A;E@-=B@DJGz*z<({BJtrGGBMqfMu<;%#X z#31pi|#WhnNf&c&xKkt#fLtQ3BOIV}@$;0Ib&W(szpW}qB* zSGFwR+>o!y$p9anj>3?yib|iH9Y)2FUeWM-z?;D@$qyga_2cGmPx(SHkekv3gP|eApF>761ktS_?Ed4cXiwHwrKcG%)n%M4 z;Q7*S*urbrGIH1|WB4UEgo6k%s~ObkqG!{;`}Q$C3sJyE1M%!F?K^>yCItSy#*=eD z^*Yfb_S}JXks}{mN1A;{oNMTuhn`Rzy24!6pHz}Za2X6A&1rE0qh%bUp5_c5hP0mM zqlNmTz6=aLk7<1~^b2A}1H0%0y5NC7N3%vpiRSbn1#qIk(@c)B2m$)=40we3SiJsN zOcPyn0z4*TEH-8=zJTs?Bs~7-)0ok*WOKTtAb7ICcofHYIyGII7d+kkS(yHK_7rWF zD?B@6oES5n-$a{d2haccEM#=N_$_VGTX?a+L=eYB>DAg#=JciJ&ja-*%4Hc z+4Xa>dw;Trda9Rgs!w35|JD>`KyhlYYqBlKAWHmslnp-f)zp~4kf@*Gc+*sv`BYu` z)a1Tlo#Ry4^3;sLbmfF$9mn+CE$w`(bv;e+0(y%PFI#0 zj;&8`Mf$C9`>nIh>`ql|D$eZJl&_W1?V8UVmcf4)&>cq39Bat#H_iNYW&D#tcl`6k ziNK3cfDA;4>?IxWGqtY1#7o2Vgt?MZ45eiQH(J@2L-X$8ed?1B8!;g6`bQcH+N17 z2dc(idTGL|mv~Xoi1JkckHio}zRg`}HW7#+uw{y~ch6lbG`a0)B79(Y`96pTJujg* ze@kf|sbYeV!r#Kq-%&EXE;ujTZM+dMe~UbS|6u-sk;hd*5Ib~1Zo~9m?fi{y(-;(< z-ey7BdqKt9jQ>7}mALTGd*Qm~!dT>NP&S!;+H7NeLC>q}!7>#q5iF7o7GwCi#cfWF zgNR@~%3}xu$^HUc9*k1MdU|HV`j7`GiQBzeMw!n!yLFrLSUDM%{soDmrhcUygHQRY;2$3I=V0CqUC4w-{t?tzUMMw62FRyw{0v7 z8K%A5f&>m>=M>Z+8l5fi2xY9FDO z-}KynO^M#JxN1m<Uhl5tM@CNC=bqo$tW&j?uwtl;A#?kt#Diw??v?jZ4#Nt3*jEuKAAVVA0 zQ<)5^IFQIP)om={7S==N&_e`R*%f?y{Bre4^EQ{L$`qMMt=ouKJjc( zy)dGBvK4Q>1(kdan^~fX-fGg^qU|xHZL!&#ws|$Y#b`0gMDw1&w#~db!Xmltthmkk zZiLO^{Rg{k_U{{X(eLq@+gwZUF8rA17s-d4<7S8}j5 zd%UNzB&U+Kr=76(Fzbi<$R4J2Pg7Y}lg4fixv%}BMn}?aM1Eg)r24UiUF*mFC(70O z(RO*d-#`+P`+0VBKVZ}!L0qG3><9UVKi&movrz#rRIdZhf(Pe**l}5gyTt}`UYUI< zxj|DJ?kbDl+`_TNTzSp(-uxyA>mY&-#TnE5e*ME&qr%tQ_`o)4+sMb>R1){f=QmD~ zk;2k?V6lDhiRpI$$M29kzvcHGR9mjwQz8UE{w4^$x6~=V%{*dRMsy1 z7<|@eW>z$aD+VYQ`d#>4w+4M2lLab~{8Xy!T=sn@*Zouek~8z@pNgzw(HDO*v&1oY zXZFM4+6Ny7I9j_DM&J3q{zW z-_8!yaq({_MQ30sVo*}2itcKX!{4Fw{jqmXbH4vo>v8p%aeZ3wcUnt#lEzKzg=Fo; z(~iLt=r}9%#_9aEBa2v^MyMNP>)cY&r+L5ARRe$gLz4CRl-xz9cB<64ycp6}Z|lsS6Jwq)c^ zkNch^&xRy^H#>LZpLyhRk{cu&fap_Bu5~YjxIv_jbLDXRJ?_^X`ah%pnT%8VKl=us zWVzlK0R8T95AJbKWQ} z3b+RVG!z^y!Nb$b+sD_>KOitDID{A)79J596&({B_c=ZxF)2AEH7z|OGb=kMH!r`S zu&DS;$yYy?Z{N!+Dyyn%YJZUG>KhuHnp;}i+B-VCx_f&2`UeJwhDS!*sksmg^o*B4 zd}GyAOmxdDE6no?-+5QJS6HbwST5}xErS=BR~f)8{1_q$?Fn7A#3GX!fm8^r?-ogq zFF{@w%!h_a3C|G#R4#)GjVuNX+lIhI5bsTHxi3RS(3hET07!!U0!pq6uOJKT{iMTq zaCs%s5@>@gQkF~Y2p_~0*$GRfX>@8LxI1iyk6tbH8n4A^;vQL@>xZi+GZCJLu&L&9 zwl2M&X}4vP(+lT9;*@|J7Ev{N=;@Sj{;!v>J|vkDn&^bpQPH=Jrko&a)XRSWyv%cW zdGi%!@<*|AR1$&Z2wwEdPxyb^mZ@I>?EkE;HXsSS0RSik?Pa4PDk9dJ{-N#7-Gt`l zk7^l8MML=q?L*EflN$~$aGy5Qubc^wlg1u9ltYu+E585Pbt_w`b5V42SH~-Pc&d3T zI-MyaAN=r4n2>;|@H1WT@m?-T8V;#AlZ;O~+5fFdY1#h^RmR3ACa0!n)UWVGEIdI% zAT&3Bu1Q>CrQ6Tc{hrF``u$8WJ>tvx5V^KAKGFWGVdPiJ^>VBmrouSf zjO$BTpW(pBFRQ#qq(7gyy-4@m_SX6qbwE>i2>%C$7(7-D@vj$X04_k33rGWG0j2*| ziz}p+U&mbMZc^_u@p8eljKMtn=bayZJh|pb&lcX(A?WNX@pWuN@~)WBz%TN>#Jri; z$8LH!y#6cCXZ(JC!bpFA9}H6H%tJ!LL~UUjR6=5c5HdDYm_I3jCMFH@ISZANm!6rJ z^Cd1mvG|)7G9x>;N)uI3gyi~f54C5|^#1Fi|5S@SJ2$`Zb8%^TW%bwE`o`wg_Rj9! z{=x6Vqd&)oJV+S)@G25Ssv~&N@InCIUU0n+j1$r;GzV%7pt(d2$IS70hA^OlvHF|! z4KTPrD{iY7tm*_t+!iK6NDbgUIUar#zpQ5=5dlfp#qN^5oTw0T2ousgCV>vzOou0C zg0q<(lqd+Jl%xY_yc!#QuX_$U+&vGwtfrS9=tzHq*01+qj+*`jQ|@E&Z({YZce8ym zF*iWNm7wbSUvy|3t^jeK4);tpk%pF?<_Vh|FiYk9hFMSr1>o?!a303&k?mOwp9XVq zu>-I>)0_^%+M(xo@a1moQc|z4;oB;CAul=Jhsya{fkT|c$&P4$SK0qCTphsukA!_^ zcH;p4Y5!+~T~M*X`uxxKf1U`8G1!}M*8a~b{7?Ho4_pCToV);rGQ-{@LML|EZ_^t$(w3zW*=U5gpa1LS(M)z}TTJ~P9~ z#jI-mk1^Iv5c%_MwY59`1ZPxeEjJfi>s^0KPKPP`*>G80X`H zwJ^^6qk6b|lC6A^g;5s@NWV9!xV_mWPy1jr;mi>5p+5Xt|n+?^Td-*T7Kn{CS_zzy@{u*;+#lhfhZ$WXx8H!+C;53&t=vc8>K zTvF_`h=TmZshK^?3g`Tc`B4Bm z?`F80$X}{{Zm;x*X*)UdnjwREuB|Z@Y2FOOMXveSKJd5yrbY@TzT5m4HR8Ct`k&MY z6&=riP$S4IMxEvF`KXC(QhHn!9~Rn#uD-4ftROG;gx%YuVt8g--J^K>^ZhJN)n7xC zqD)SPvbWbPziE#Yx}2A^=r8?5X=j-Hwxxg1mwm}q`dsi*Z`#8oo*Jji-1k0M&UDvQ z{azn77O<#|cRJMhX_ut@!{yu2emV|$o$-O24R7wR2DP52l+(Rah7ltiI7|s8@ta#; z^*^fTc>o27LP6<({C|l5?_T#m#aAnMRy3M#|F8JPj_P8cdzMR`yR82a-$k=%V$+e= zvgb^E9RB}H0?A`xLvj@2Ak6f16?F8>kWv)vd}TxBc~}9svAq(U*VfLAU|?wM%BC5D zD}o0rX|kCr5#!46DLSSss!9fV>Olm8T7HQtlf8167SRrt>!A~iNhRhb5WpSh8t0<} zBI0h84^ zjDISi0lE`;>yT47;(jbEsU(4V|1bGV@!W$8XT`O%mCB@!_o5@V6I7qt_Ti3Bu0d?Sk1|opC0$xIJf7t9 z=YF-vldl#xU(gQXC))6B06R!H-+2kL%>e9o+f8nZ_o3E!kE50uEB+LH;SCy^|WIxI? z>Np(-edCzSp|AOdCl?G8xb9PHwKY0oz^-RMA6w~G`NxF(cocPqKVZk9?! zh5eh06a)l!6c9(GfVQb7@YE{UHryk|3`u zVyLu$Y)2at|6430e8D+3usR%0PLCzHVHa! zrY|f46K;#A0{a#Vi?aEmaL`Kz2w8we7~POwQjBHF&Vhjct@2QS=bunZ2a-GsO8*sV z&y1ed9`WXGQn!GuTF{NW(R{FZjN=bv$iGIn)au`VRxz_t>SAqlsq`@CSK{WxU!2k> zyr-Op7v9I$%|E~?DEJvMR6jgIH!2zv8>bnc;GX18 z@8#uUCGui4C{i6s$hN83g1@fie?4maUt&@VKavf;Y>MP!q}!!qWd|=_;N3gfV>p}> ziC9*)G4i!Rav%Z$ker7bGf9Tb&MO-VMjTRaK}j$0{M;*EW6cDx3|Nj5l) zzc49?;{kYY9fKT?ig|p9jN@Xx$gs04>&>ZE-#h#jPmEDI0_n$fE%aq+!@ZOJgNz`& z%q0gCxf-*Nsg0Y)7o6Wx$pkgg=YtI5~|FPp4!%F`^|4 z1_AU}P^1vFB>bfh7yj3{u)gG?PNJmVm_AL=cSl>Ey<4$qB!`)5Zxe{glG>ddNttsMU0AgMgo zuKdeEGO+y1K~@A@JhN)->xK3+tKN5Z`p2r~_Kas%wF*ho`p2rqtHZ^nU)`=&eS6ze z`tH~Cx|HPR3<-41s99Y;Iolk5MJT|fVs}aZvwV`KVb0#_=-1=w!kQ|FK7k(rl#4GS z?j7we--*-esjX?;-8P^0tYeu$sMzzo_6hlK^qr1Cv0Bja#NcQvG(O z!P4K#OheGA`=&&N;fxodDshfxVd}Z%X5pC1L$e6ob}92n{c%V0D1+5<^Jwg!L-QCj z+B+{}ExBSB<6beeEq)fMfG@@KwW%&8aF6*dC338^EhU{Mz?YMyk5rdaXgU3tQ>ibv zFQ*0HIBZK(QskNtjNp4|mFZ#Kes&egU|T%9nYCsTBC@e6wz~ zD>2`u+sz9rP1;@;>7LSxM$|KQn0;yH^LtaGAl4yD?7rV&TG~IS^0rLEDBx<~xOIog z_vuuabvb|VLowgQ#17-iRg+fhD%M)MYo0sZ9oU)!KHqn>kd2OOxYN^)7hht~vk+Er z)s<{ai~%zh6e1mJQ%y(NQvlzxW@m zldfBKM(zdVVUw?%_G29hLEk*giVQQyt&ubilPupf9HKwY)I6VdeonD;n0dUzQ2vI% zR5&~1E&0@OF7Il0xsUGyqxAW(a3!aod`iJiA<^$@pDra{;rufZ7n1mPCG%r|^Xg1t zcV&6u4&ZYo6^$M&fmP1(44jPk$su4~;`Y0N=P9yvksb z0>9w4h`v6WHNjC@1iFmZlL%n>>L?|4KoejjI(V)jn@c?Gy3kAMd5!+;=GfvdLD!uw zU3kIQa_3umu)P7CXE!EHW@nq4-9U%CVTkYHe z@{ZKVm;}+2e~V0Ia2PD$x^>phl0w4`doo%~^3bphjF^wr6>>*;Xpl)%)3g(;5#sWk ztvH&fHAdlcXjKj@nF`%%e(5d2%g_W%m#_eG5*}0KKs}0es5?Un0V+;g5{(QZL^S;D zcGEVQRvPy6TeY4ipZaXL8cCK$FeU+O571o1fSGV;O3$kTozIT|Fij;=9gibXp#d=a zpOqf->GXsIoSD-FXQU{HY^s7bztXkTz946>RGtD8m8^ljP^I*AL06dCqg5_qiSD&4 zu2!iAA_G;8rI|Dpmo?8T4kR=yX5D9lVLa~YCY`g(Qf{)+d0nX+%a`YeHK}LK#KINW ze!;Jz>yW`Q8J8_nsfBF7NJatC#G@NfmIfAN{FXQ;A{lPBZY5tLeuG|`o*L9E7jV07 zr1sB#k$aaX;C$Ib2skMAX^J%91cSes0Mv4?c_SIO!1VlNYD@Fw>~kGNHtacSDo3zb z-U3MY49+;~MWLM&iDZ+Sg$R*Foz!gzLX>!HS$-rf41*RNgZ6xvz54Lci@OF<=Oi;) zZdrX$uAC&^9!cw&vb4Q^*U(RoJ#56z%$~i%P{IB?afZ#zks@VuKT0xWsm#=QsoY5F z+xMW&$EGelQZH@{O9uYlH*u>dpAkJ6@uy^%;1Z;;{O34)X_}1*hUHk6+c6$YwOG%~ z`uXZMqUDSbF}ZXbFgt9)hr_MC2)*UW!GQ%`wZWUo$Fmv_*@39gc-9+jbLU`DSMW z#+%VKqM6~oN1djEAD{7fF5Y%{O6jV9ocMW)-s1lVkpgc0=E(WX1wnJ2#d07#BgD@d z!PK60G9W+ec>!V`v;cLNXhgSJAY$HvqP0@!G|w5$RhTpa8ExrHi(Af!133Kz9zTM+&*1ArIQkS`K8B0W;opOJ_av@8ieJy- z)Wdl6H10f(FVEx11G(`;K0J~G&*Z)TL;3Dhjysmu&gHU$`RioPI+~}>=BC5>=yV=B zo_o&cn*%!LgkCwKOU~$zLptM>o;ao(&gp}LI^d+&GxF(8OtbRA*)6MvCL%!RTzc%Kh&G}`6zSyMy zHR^NC`dP!i)wDk~?nBM{O#{D|(!_r>@)yngK0|-a)UPu3f6V<8gMY&0FEIN5%l`br zf4=l@FaFQV|L_8U?IM8cLV%hSe8Sf!2$+Cwv49Ln5e7&u5vWQI_<-+Gfffi66NpV2 z7-t>mfgd;)8@Nsw7=lYtf+jc;D42pdwSp|jQ!lt^F=!bsID-o?g4lwC4P}FrR)aIB UgVF+o&mx4(LWIde5&;1KJLF8>)&Kwi literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/chained-exception.gif b/content/static/2024.11/images/chained-exception.gif new file mode 100644 index 0000000000000000000000000000000000000000..3b605fc67362409dc665373f688573f5a661c774 GIT binary patch literal 110462 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 literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/child-execution-in-grid.PNG b/content/static/2024.11/images/child-execution-in-grid.PNG new file mode 100644 index 0000000000000000000000000000000000000000..3f865fc817a0ec1d527a1c069834336e38bf37ac GIT binary patch literal 69451 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

o5e(Q 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 Ku1v-x=zjq(yZ+z+ literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/decision-blocks.svg b/content/static/2024.11/images/decision-blocks.svg new file mode 100644 index 000000000..d721b1c05 --- /dev/null +++ b/content/static/2024.11/images/decision-blocks.svg @@ -0,0 +1,4 @@ + + + +
Input Port
Input Port
Bottom
Output Port
Bottom...
Right Output Port
Right Output Port
Text is not SVG - cannot display
\ No newline at end of file diff --git a/content/static/2024.11/images/discarded-variable.PNG b/content/static/2024.11/images/discarded-variable.PNG new file mode 100644 index 0000000000000000000000000000000000000000..00b770bb993905cd7c57fe562fb5858d8442364b GIT binary patch literal 2429 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 NLsbV^to-Qte*xaST5$jX literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/editable/Cortex Innovation Overview-Single Server.png b/content/static/2024.11/images/editable/Cortex Innovation Overview-Single Server.png new file mode 100644 index 0000000000000000000000000000000000000000..00fa171028495347813c734d97d4a14ea14c4b46 GIT binary patch literal 13806 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 T@2S8)aD`BbEW!cYtOfrMdj#VH literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/editable/Cortex Innovation Overview.png b/content/static/2024.11/images/editable/Cortex Innovation Overview.png new file mode 100644 index 0000000000000000000000000000000000000000..237b680003dd3004a3cdfa577f6bc07a30d75242 GIT binary patch literal 49812 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 literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/editable/Cortex Innovation and v7.2 Best Architecture.png b/content/static/2024.11/images/editable/Cortex Innovation and v7.2 Best Architecture.png new file mode 100644 index 0000000000000000000000000000000000000000..4824d67cfa1736fb77afb1be2b2ff8e259b63fab GIT binary patch literal 81115 zcmYg&N6z%x*4FtYgb)%F0J>L#23O85H=T2KxomfkbI#c_U^28A2UDO8OoHw2-Ud3~ zTjjXz+Iz)kJ?s28%MkzFzy0_B_OHMG`ggL#Ie-22ul~bdfBnn<`8WR>9O3_m@V~&< zzpReP{Po}e=YRa)fBlvI-;EEp{wnG&|Lbok`;V=^Ay7YNby4Tp-%##v2!cQe_Fo|Q zzaY2=Lw`eQ1Op#1`gaV+BXAmAUybYbk89&;`g>N#u|2qV3{ZGGo$i{O8n}!EIU1@&1NQSGb<5OaAdVQbGfGHe_f=y+;htbK10qr(J(!P6H__CRNDXnz(r( zj=g(O-`b;soQW6@&Q{}_a0hcDSJoNa-ETqYVzZH_~~%fYY09=~V6?__6KZ>oc54h&K@KH0S^pjnVsMHpfAHs8A@f z&pP}Wk@*>WF!%_XuepuB9_CFG_zp{cz&PAj5oiC7Kg8i?GAN?V53$k==r9xz|KVd|}R*q<9 z+F3DS>>Q;uIP(GTHSiB+gxROiWw1A=MNx=j@9)!7u;1*0t>Y}gpqH>d;5_$mcyvIx zsuu0xz`6HqJ9(p@c-HxWP6**M?hShB4;Ra)k#wiwUSuQu@Py~3cK~VqfzO=H@~>BX z2yyHY3 z*hj&Kv_FcVWCtytF6gsg5S`W)T>#->?2I3C7%{2!T8f_8G7D}$C$+_ExGCQ|tB&i& zj~~&ZrFPlFu4R70v8Q#})tLVfSz3WES)%AcjqoIp%C z1uks$fQ=0T<4*X~F5rM=-Ymn)d9@&rdRP>tmhbdgt`Q>hD-#}3NMV%GK&YATrjOC`Tn605$xL%*hMuOY!)i`crO8e zbrEn}myc~lv?{%WqBo7lkg?88tU3=Dw~6tw&$-Ow7t^1&Z!qAsEb7t;9pd0r8{ zj-Tu6g>K3Pj-w+`NXBIwYOo(`YM|`>L{X(1s+D5YZEZOVD#r#6v9U(MuPR8Pf2K$)$?tp6P%vbmk@cho)@+N+=D>s zzqOB>o5aA5YY037zBOrU9_IuyB?RDAlE6cgeuF+gO7*Pf&fbMwGFU>e{*_5)#-zK5 z69PH!bZg#Qnh_XqA)vl()L6p@9Pxn)3ve+VK1IJa4>5)u2OMAQGZi>yO#PsH7#SMR~PO*wroIDo%d_h8`tKc@1X`ANcFf zD#&Ab(mOD)yh8CjwT1id7VZ?qtuq%1uI(U_IAynvwpYM3Xux^ zt>+&)h7x19LLbN;lYF-Imvfod8SVjFy>J2R4~|1${^EyIq8gk}ywaaXm4;C6)BWgS=u>F8>1#x!>CX~@8qr-n#YFs_Ol1*ft zz;C~T`ccXFz#2Y)tdk-pnLWn$xw{RXCosKj-5Rc)Gksfs{OwJq^7gTSZxTzOD}rwo z7=j5}IGkEK;vKyfXv4i0VFGH$WY>EQ_DWmVyw*k3%G)W(mZA?bAYbi~Xbwe#GXR?( z7`<7pAcCNMe=QIGzP4!A$Lf-`3iH;GZ_?FJ5XpE-yHErjJ=jO9_wTmA~URIr;|Y>;Cx`DjXz z2IQH!7=Kk*rd_>+{CqMH88f%%hz-y~Mq!WyS#$4I=L1X|14%%Ih2qM7(q|`1}C(jx|;`N^=? zRtZw>aERR_N0#}%G1EzkUp4j>Q%I&Z#5r4GYt%h|gft2o1`gAjGCDrte&ZwsZCqVj zPNMoJ!sIR;ziPUe1J(5O!387YrSI~8i}}eeNf(4SazruWZb8hgK1-}Pzd%P$YZLjX zY|~eKMLQy2Q%D8~m=Y04nV>d|Ns3JY1G|TwkD5~Ay_5W}eFhcS5a6F5y~s4+p!PE# z@Lj0LoI{bmk#y_EPvlcwXaP+yUkdM>hMaC*JL%yHSyzO`h(-l(Q7@1eYBq_sEJB() zY5qMs)LuQAg1HVqLHE8cJ88_W$r)(oa#IUcv0YRvMjR4aNDGFAKHT1aU@#( z>~H1X-k^Zd1&f(`QyMHxEK(tGgeV+C5y7u1Z#=%Tu%Y8qMgT zF!%)wqI-=M8+9k@Uw=q2IDCkdb%sq$C2=^EYbaR0pAW_$rWOgp)PAkFrt&Z+MlR3l zIdeNuiMHM4^b6icQ08CfG0}Hn&^Jtf&K#-+alAQQTtDC8lB!}aUt8<@0{bx#crFGx zyzE(i48c=Ln&c7fH40wSw~ba3e!Z6McOJEB{<_%iHfDXTZrd~zh2KM*wCSZS?xqpfc4xM<&3 zr$9gq&E3jMCBX^%nP!je1*5>b1)=RqCV@=}OEy0V2#NA@cHM)eU>M( zn*PpL@V9)T6fGa0V~XaMEA%YPIm8q=dt*O8aDnus1O0lI7#L75SGf4(m;#@#zBna^LUR;FElXh!uU1&KxDDTSWvgoHj~EzlY(g$c5baAwYd#TDvP5%n;k_^Z%x ztSd>|)*S;$pwIHbrWLir%Pkdso)G+QQ;Fv>Qzf`$WiW8_$1lFNF9xOCnKNh1ro#2h z)EbB7@kch#WY37Wbfv^Jgx4p30(S>5mm@biC9!xgcvF9j1_U}8B&1(cKvVks7Tgd# zrPtH-A&;z8u_fwb1q1@5N+JnGjR+l42z~O&(k4lPzDYZ0b>6!BBt=%n?;(V^kG=${ zrzdC~(KA9s43LI=zHUYs1M?k?BH3~syo$l>au2`ejrIqo!JF7Wr9G0MbUO8N9&!!l zbaFl5MG=?V&VPk?rB9}F7%{CY2Lf?n=EleH1yvy@M!jdNr0aoai~L?c`L`B$cgqC- z*|ElM`W21eIBQH|Yu(R2cz#P)r$)Lu_^C>A`^lZXnZ|x_SnCN^$P26(Kh{{d;<+RH znI*DQG!CE_J>=`j1gB+qV8BfrX-P)w_yL2vg|oMeU%kdqq5cSC8h#^9FqbBg2*hGD z+;oPB=bB69$TXtrmgU}zftI>@N|Y496JBrF?@1C&gw>@71yoUoi4msg=9k z&%Df3KsYB492uy}=>_INWJ8&XWNc=o9O#jaYfn%p=H)0I+mF$UXAtoYQbXZ7sqcal z3#XiDs?CjhtNlIVrs4^3^~1YsV#eHf<6!uv)L%54vW}3;@O)I>Ra&T-YMvnGsC}dz z_W0EAExw)EUxq--*T6^79t{ncccG+h*Oe8@uaUJj8xi+xq9E6?mkre&fRCB-qOZpqXnr35!XvV&mQb5Vry|IL7iRIc z>tiL%AP?hOai-TY)^dL6tA1myOU>I^9Sl)$qmo`{$8i*_IO*D4mrTg{e7cs&Do0;B#8n~%;>tIo54x@-|pCz_)Qtr5)Y7ZGv<`; zn!l~dHu;iLX@8`YzHD@DXM7?vHbkRGWVz2b+}ZQ<$+Ld{(v}!Glspj z@j7}PB0=t!gDe2t}#qbZ~w3B#zL z#`bRT)YwXG*oh!|27VDGOjDYtOU^Bcebisc{B&XyAMuhwG=_JZ9$r}{Pai)G&`kwN zE~TBMYF3cz>GX`k_!lZy2Ks~22P3I=IVk8PiAM#5_SDMC@ zivm!J;9|5}l4Xj6X4nAMRzTJ)zdjMaOFxn@Cvr;zR9-WY#F~0KIEvBRD34i4tUCU8?*-9#M!fjuB+YGFZ6gMt| zJnC_|tMp--Ca8IJsxYNe{PFP{UMOU@NNPKAF=D#B`ChLZ;z9CU|HKt7JMKozadEik znf%Biweg$-Pjiq|FFP24r~7)taT@k_p9OcK(z2G$A4A`Zj351;UmDA^+B)>B2de2Y zrH3m2olQ5G~fBpGcYnU3K-xMUdY7=MK+F@MEGByfQb7I7(B;pnpHe0>8H zHs`fF_zV(^oU>d4OvKh- zV0i#=qf3!)fqSj`RDnQ2p6Y#_ln+Nq@jLaj;C?%LfFU5i7XA^Pys6bUwrae&Hf{@I zAP06(|7fWcn@_8Nn0uHCB?bn75kLgO>2kWKhC5QOU4$yf zW0tC9tf$z1H=2MCud97?w2=BJ_5J<%^Q-=x0dSAymPPVDr6o`rCP{XJcyg2}KX6S^7d&k4Yg#!+)RI4ZFY6#zM`xw# z8?pV>wg=L@;2plz*{jo!DlN8GZ!?vG0us~`m@V1HZK1GUMv0f*Dy7E3QPH2|OqqkO z?HrO$HGhBZM;G7xu>m#UIbv#197)YK{!_G3Kc`TW;dQj7@gzo))erxQ;M%v52otw_ zp-8knj!+@92m>>)QE)^G000`khcXeRUDG)SZ|E2<%T$$gd7&Vc{azMhngnzDyp%>K zWNBb29%g#Oc4)q3Z}h%-5*0!2gpdr;SEOj z&bwY;gW+ej5ArC#X!1_ts%1_G;o1*(sOJx%K)mQ?jELs%T5)cLl|*_D8-96*mNza} zdaM)Jj>nr4CcOx={|jnEk>^pBzr57^t_Db*5OB_(<1B-rK@h1b>8BLb3XoG8Ol6#z z)o{powolXmyWK;yu`i7^d$gsA&~O0b#?H|+PI}mob~iqxZ#!T4$2}ksb@6Pfn5vk8 z6wGj|9*j94Dz2$fz}KmbC!vQ$CIYvYy{8KbYLl9aU_sc{$ia0Vlj#LdDw>n)%K{ie z;f99Aih#hr3fO`iIz#$pTRpa3?fHZVe$-zT$4QR&{N?#w=c;v_LbsF5TTjhu>PIW8 zcd0b`mmu3OiCp%e75&?gtCvGKA`=XfgLG|mCUUhI4guFTz6L%MP=An6*;AeL$hiUJ zwyC(t2SFIZLA%6BjxwlfR7CL=X|Gw_4AS$b+-fM^a*i*lh&iG!%;87Hk44f)<+h_| zXh{W@{GOJkOQg7RxZ1R!mQLQ&$gj77;9bQL?(=oJ@i0N@6&ciTnrE{7k&bRlWdW8_ zo^@4$3dVsu{L^Kq010TZ=$a-^KNVcE?G?o3l*fV~(V5D47(nOB3RjYdeD>yBrnLv# zL8cpX=g_i%vk7vTYR3m}Ugxhfdkbj(#m>>vEa0W#;0jSrt~m7R!gBiE7G|5zEMD*B zjLt%3nw3MxkA`c2*<;}E>KdIh{n*dS5vpSvg?|`OZ%tZ%@^j$g2pX&_4$2}x5HQ3P z0pctKF%eAnteM7YY4`8dc1x@jQ0rRQ<2lWn5>m`y#Q8P)Y&5^mK3P7=DpNQ+oUbMO zvg4Gsih&Dh!%*K;gQ?azh&hm!1Lz&!xk>5#j_29|K}1*}%lPxY@RxBvebBoI%#G^& z?S_KRzr1pCS?Zkq-sPqyKtRlx9SiS(Eg<)20U*$jK1${ImxtHv;LWq6 z%gR1Y2-1^Y!?=N1Eiv0tkqCM-nTk z5>_FtTIx+;aw2&~g9dr6Af((Ypu?zmt>R&5MLKLBT=qpl%)auU9E~z8m$RDOwcn(g zeg}NdY~Lup)F7OdpoPg{zu0}#YW>$U80$c}au^WqoWp5GW!Y$Jp-x-jSxjon8=rCl z(W(#t=sqZ>%+Qc<%gc|nC!$VvMxQYhzc9>)1itAL$Ym9eY|a&@NWbF6<$q$`EhOmg zq>2cp0s6#?w_`|Z!yt^wonN~$;p}&?YWqR69Od)~g=Lcfz*^I^@~w)XHh|`}naPbD zo4mXaK@_*@Y<}hDXmsA%hKovL9ZC}tpn2Jb1;E?u#Ws=0zcNU(TXJ@t$z@*erfE3^ zGtBQ2pEK>Geoq*vdRhQ#c)3sO0COoVBRXeOoSQc0D~^ zdZz6xxjsvq{0n8@ts|D{2e?`uI9WKgg2UPy&<*<&OA|SSk-?@*Jae| zb|1%D8si^O4U*4Si(fb;wV9H_p^{KmP;^1kCSG=3VSCkh#(?#6^W~#39V`T-51>=` zH!*?Y6f1qC!0pz7l+DR&cdi_}mu5gVr_D2wpjR9e(Ix~GHz=Y4)g>~Ms`5~^Whg^c zKdVT{8&(JjYS_@|IwBA<(hFDKA9qU<$ya%WibQjQf8KW$Hoov)rS0?f?|v zAoKI=H+)i!B?+ze496flJbt=bV6{P3$7rxR39i--UkUB5c#4+xwxhv;FS4q1C)^<3 zO_Q31W#k=)*#*<0k6m<|94eS^D;@wS_~cqH#uQqEQsx&7YD0D;wqw;Sw;(MSxNp?8 z`pZLF+;UqV!``t+e(J5*@qAMk_It=r#G+cRT@&`2AFZGSd)KyOD zc*8C43DOCV+wxdH{p=Sncj1!=41v_JLprEp4O;cN#Rw^0aJEez;S7hWU=d0rK)v#* zUts1=z~j?uC8Py48TjyVacJ0vG$b^F-9^vl0ti}$;bXWKZQ4P(=6~^RP!A3kOEl4< z`e}Z^h-GY1aeep_uc*!yM;MmZ<*?KJbSd6ShoRMCE`cUvu;VQ9DtiQ zCuw|GNy4PJttlUT#zUBG^d_HUad8Be#64q+eR=quFZiDafX4)Ap6Tt@yarz*N-MUZ zVvl{AlzHhH&|#*RB7>A&0P@BNV1PB<^=YnR`XmSxhy(@{7(lVv0Z3gAlY``mDUY}| zRe|G}?e6MI-#yiJLFh5l9{-@h!hKhdCY0G=pYH?;los}B_Osj<@qSnfYMG3$zdwmO zdL``Luv4@XHOEi{blIjxQtyMAlT>(;0>M+8`~ll1n*yrBOdy^?L>!c!7EsJJn!eG= z8yml38J?BPtS@$xa|`xWXs$piw7QuveCu<=h))k=K*yjL36=}q39BkGCsZCDjCRF$jFs$5B*lFdSjMy zH&b^mB{w?WAt;V0wcl3*A8AR8#;pNd1jB8KnFFxM%n3h+9`8$1(zS|VXXsVTbCrk1 zV>5Hmcd5KFNc^YD8eE}iO4IB2c0)E-FRS+mA$l=3(6Hec5^&Lel?UB26(>}(Ij7Tn z4yHE24Fj6G#CH;u#rt$N9Oa6{nP}QvfX%|o%9|WA>ew|ob+Jmo;Fy)3sKZpzH;yhz zxvM&b0WvwYxgO>>R3(N2jEA24Xzj3M7L8jyKn?+eU~>0ACp4$}z`5c)egVPSs}BhP zBLXNp;mNxZTu3+-)>V6h$e`Ou5jk$kw?Wwy)8VQE)Hzx;B~N<>XX%VAN9l+?I)VDu z*hXV{Usl8{=Eaaj@fpk10KRTW>Yukj@G=vSnxursJrNz7m%D(ZlkS}KG41@i3yyl6 z*`7*GpJ0%J5;>9sw0}`ySx!6CAZQunkk*U`HLJ#G<|x@6pTqa=!DFrKO}>6p^@TXc zJ7LwlYKyYI;%*8Mo!c^Cm7+Tx8#nZ0twHSN8;4T?pVV}l(QoRk539%@-H8W-#U!XK z`=Pj9sjOtY0C51AoZlGDdt4z&W9tYy*6Q_(JDUGoCCJ(%XpyZv$WaZ;Wc7t{k%!=L zoL<(p0ukpmu8AG)CME1)h%6#TAkn<(@+?cs`{pA^hu8Y2!GLWhR+qIv3Picn{VZEzmTtklxttiPExp6V`0N5+OSP&yxd`>BN!hLJXRzpxC?{uQ0 z^AI?xd)YMQQwMh6#%M)CA)akOaU>s5eS2$k2RQ@=Z=q?{_=e5 z6Qug(xPOCJ-9tvGPx4}f!)^MSeomV>JDJF?_hA8AS-4-)0U#Zq87<@l>^Il$qyo69Cg8z!=Z*0MZ%E-EIvOZP zO}M++cpu*4V->~~5a2}{nO)*eHG=L3A~iYJeV>p)KGZ@=3L%%I0(39~l!B0fL>hx< zB6}&S-y&*#?&?Mj_&~s)k5WR+Et{>OWywY?gX4w>d+|+RlPRJKL!I>IFPvBtfQY{02(;1U{m^E9&OR&+U-XXFBmIb#{Z?v`Z2W zV^dN@^&z~rILi0s@|dayblPmInuk5k@f3)=fu4d4*9TN3IDnC_X^Q&x`H9uy(Y$jq zY()e2tJUoeLgH2ld5{dYsFZKOE#=t^jT~CRZVQa%>%7VAL3Uf-?9Z%NTvf=w(^Tgl zV$13u0)G#hi>TrrmAtJ%qLNcM`;FfKX|*z5ROMraBgDSvDb*KL;sCEiLjc$9x1m)t zmnT30gs(+wpj&BT2ZTlV-1&ya=s9gcuOZb8YsmXJ$8PJbDSVf3q&=u@xTY8okG>EmL zFYYrc=JC9+1Ce1~@?PN69bY*0JscQRvpuoYENGOY^`}S0*7e$K zC#Ynx_Jsw!rWZqqugx(xl(@JbhvrEFDo-^l3O?J`g2@81>RC;4Fpr88C0zl4V59mS zGOZ_k+y@($=KB~$w$BZA0uq}UGSZ{uXF#$DYw5;rq#`ioW3-l3jsAm9EX4{SUIJ#o zpPzF>tjz%lSpEYp?vAHAM7OiB#&VVx7p{=6734YpOpfui^(8dsN zH-7GXMNXe|QFoeyv4ow5W?f<$i)l&WKm!jiF~fc0fb2WVj0@0za;|~43;LCJTU3*Q zXx6Cw4BOZBvD^eT#L||mMU!dwq<`5QKcM>w&EHr7+|}B7V|l@wP=DKtH_s0!KAjtf za~Xn!zZX*lq`GcA?;fzKnu<(D2H1N~s(7qno)WQ;PC#K5~{+dGrAEUYoi0KROvslk`Bk>|26 zpCy`|HxUF~T6(Q?S$}hrv`z3fJTP#)XrXz%rxgvJwIj<3dEM3^yY65n?!z@^zQ2LL zJ-~KmMrz{>m>Mleasoh-$H1US!~^$kd)Ieqm&LrUWNtI>wFrrc%HY-5x?Xd8VpDG@ zC5!mL6eN2@o@2w?ifC4#oQavtA0oS115!k*azJ(j!4|>^)HyxA z!ojP@4b(An2S*WC;dT%sPxu-5vAr>@cRuW_AS>sCJ_Azc$1~{Ua2RJy^?kQVjffFB zt%tp-#%=fcWR*|GTTi;fj!nRZ0-FmeqIEJQRH8G(CHgU3s7!Wuc&xlvFmYJKed7HM!Z4o7s4Z$ z3#pQSWAFWX`&>bRLR&8pRJ-Wu2aN^hE1-u{#cvBhCn}+-qOeDdg5-dcj)AC!0nke2 z-0q3&9_9#g^1Ikb9AB&I5u=`0xq$!*H`^9;m&tL| zyjy=S?jqX9v0m&5#CC|C6u*Vwf8Ru9QdJMaYrpAIsJ_8R0n$-;JNyt|?Vg#TER{i9 zg)9;CQd~xMJDBR>KA5=KCVb}NAK%F&7rns{)e~yi=9U~76K(JsdZNh^-T>_uV4DJmfoMHMn<;EIY zL47__f@`bPpIeWK;mOA`%EBLm)p+;VQ_#x=dT7}yDCanh`pE#u-W7!a$quVtpEHNGx~u+3_cm{^^W^|d$0CYeYo{E;N(mRDls z`t_2-o~^`?y~0HgWj*2#?ylfB5+XF!92K>gGGtL-Gv__vN8)ov1Cm0ml{gL~MEl?%T^0k$LK?U|Zt(22>Z5)9igYjFCh za}VgYnpD`seUhB_!yVhT@_jP;HKbIQZD+udxDf*AtnSyE0r+E-fzVAzNnZxtd=KFh z6Tq}Sg6eamsV@RM<;^w0&?gipO0JV zlx~uYS&T7+gLc%sqnC++lTtoS9DxLp+c2SGH$t?spN1fxYnt}O^?gRM0UG18<3sl&>GuJKbb z&$aDoU9Y?i1x$ebzA5jiI5oJJW%~jaYoM|>PN(r}1Iz4D^pm*VYqdUI-|4M#*-Xbo z@o{OQ>hqKdO8c}HAiNEJ=v?Mu35)hQ=M~cN7#IOq5E^unRTCH8nNJpy_%-hLn`K5?$G!zwux1G)4){!Ug`GpuFB) z?l+jsY&_1&sH#k4D$uw{-8;}6ZA=ubrXfgy;%j~2M5!>R)en`s=xWZ5Uov<-l^d+6 zIW}c4)`5feCcfo3&EasJ1|%$z91|c$Du_iE-iWs4`(LzZ<$^`9lf|z6TpITU2{%{B@z;ToPdq$@XQji(xrPd7G8rIHgJsn!jBIxT z!cIY4&Pjig*aOs_9hpG0R^hWC=cu4Kf)3e6af$7;ToDdmuUak=l=#C(d@Rfmr!ADNMd!zFKs{OZuWce4nJeMM4k?lSIr zNA_LGb~ij+1I* zS+_y^E(L!#4X{<^m~8(vFOvI@`>brx)v^-xV2KnvFMYzr%Cm!b1t_z&oMXcKLr=JJtmK+6r4{GxvR1o1&i6R!l0GoEsr0_NUqS2?oON453xRp$)AEd5Y* zXIG%^8Aq=?2CYd@u#3Rbj(`pBNie#Tu>K|(TwP+=2m!MJ218^!;k%yAi>;8PPC?K8<6f`m1jU5N}m4~U+ zx}SN6;8?6&L4Ts{RJ(+vas8&jZ|H4ipQuQQg8iwJf~T3vtLp)JFrhmlb@#Q74=Vt6 zY1LO4=(q28z{ELkGx$)JBV5+TL87b1^)sbB)TQAQkK4{c!ECXcicOVRf~=qY6zK^5 z4+vl|Uq)Kkl&T#>-ZChm1H}rv0JMTDrWP~ase@7mD{(KBC=x*yrDR(u@<{J43l7cX zuY))#L+|gJ57N_UdPtlAC!Eviz$ytKKT)shPKnSz7hDko^Xua4X2Ss43wGk3zDZ-o z)G4l?8dw|QU%;dTGZ$7tvivEb=voO1_jFhv@L@+Ll?G(J8L54Gkaq9QISoq z;RY};u8mcNQw|9{Rfq^sOej9_t>7ed!FXX@5D2351gK26rUII`1)RchG4h<9Zt)@BYyJy;uDmA(~@ z=w$dDRvb6Q3R=ji;cce8aFvurYu5kWKn3lx>u1ahGth;}O@+oP3aBLGgVCV6##SM0@IxLuEhUtI_1E+h2=|DihV+VpqYz*u`u@%KU zqF5jXpkQ%C46pzN3z-f(Qn)0WSv6q2UF3A>5|WS%q>poC?y+_GE$0>xh?tWGZ~ z+A!m>7(3_+;K-F6;D#l5K>5CmnGAzOkZE@w|>9NFWIm zRH)+uvBCFS*bOT)ET>iwA-Yx)zy9RPc`&3j86|gUt+aR(-Ni@% z?B%3Tv0x|ETm+aLL{6l19}Nv!)i`rd6>Nqwp*`zU| zNK60&ldMvD4Rk);D}vZejnE{Bl7$Ykz$hWvS2D z6DW8fp{OJ>Q7Z@F2cUeGWmkdN2S&(ZP~3LBIhoEx(sf*n2}6Wi6H!)B>r@U-5YGWAaR&##qs-Rd2P((#)GJ}+#H35#65m~G;7$q7KPGI0)(fPwZIK*Wp~uNPAJ2`m+;Mzmrr8k7i-CNa@QO7`$T z8NNfJ)U)s&kQap;MF|Oe*81*vhz13Ag(!kH4b*o+3{FUV%2Aa@oKuSzxfv*#of;>?d$fPD1uiZQ#g}psN-#5B z3t~&u1e8N;2JWBP;jviwB)x^0;8LK>S^!<5jnBEdd4Uu7R~=BoPTRu{Z&Tw^IamyVS}O0;nb_9^nB}3hCg9 zcvuP7>`r7D5}i&gmBz+#)M&C1Fcp@^05!i_fdK@liJ*y=%lBd+vzXvRaqZ+d8cuHD zlbsG=JNXnCo7;mSdI^bQl3oQ0Lxfm@ijNbhL>{;Xt-yh`(a6R2M4DL366xs(J-|fZ z$W&y$67&TrKnt?T0yB!>pl+N(U|Ixtmw;zSCP-BX1JB1WnBt^9pV?|)GC5SSibrCa z`BI<3O-0fxT$@ke)stNmxZKQ&qYL>=CEDyp^Z24T787O%mLHuTPlcP2FuD_^Kxp7x zN}Sp%CxBd(5M^O26A^40KS9KCa@{yH*GpnaE8ka2`Pu1 z1efdeP|604_6dP;A*G4I8$9%@SAhgP!i>g3CLop05^yP8WU?6tEgM&2*NTxi9FYO- z0w2`9s{wKtNN)Z)>I7qq1P^%i_}ol2KA!cbhJ^)Li3xHpES~J5;ecU?B(vB;ko1(J zbqJ+Sg$0LYTXbztj+z!?Hhaq8La%fy;hUNwTLw|`}9K#CU!jWp08vK=Fq<==u zXs;S0m2#mggD^k%AQ9&F>eL9C2@+7?Jrjn8{;;XgJ(!)KR*Mhbs`Xe%+G699Nzk1m z|4a)0vGQ~tGbGYL!~<_)*qLfj$^<^B(AhxNh$2P$XjBY141SW8G#?zPgt^!p$aYDT zfC6nV*{X08@jN6IPl2>Bl}|_N5m=TSbm=RME<6&ilz^HvmWyOmtJxf@I^GU$gQ!qo z7+jPt!3uiZWXWC{21g@6ON_SilQAZO1YvTaWc)u^Pbd*z4O+3lNp_jt0PG988i(N7 z(0Y;6tTy=68nuT>p?Tr~HV2+Z=JH%ZK3PpMVb#nypjU|iBnJ&wikVEW9Fn6xy$1k)Rm6op6etQaO2#{*@xa=KWC zPsF=$JTb=3#n6Ct1sYBmLOG9Y;$q!Is>lN>8H{*zA|PcdhU#;m;aHd#FUKq6nPj$4 zi<3AsE;U1fw#CapjMl(`ITQ*O8mN4xQU^{UD+OxMR?ordZA_2}03%u+!sYgXlJErJ z7EwVJwSojuvBpAGqkKMff&vNNVQgT#0Z<4ZuniGsX8nQnao~|6G$3hdybmR?8t^7a zfotq80Yp7EmD)#gfqDz185L&)`417v;*NJfn~%hkC|oHT&tbWx(B$zxAr`1Kh{w!` z1R4ZkL!)nnH?fz=w4kK5UC+D;PHQ&v9(?%7~|NX1U4KFUXYG>t^p5P zU9|B;Gg|8vf-$zmgEK*JWK?Ccl;!r}mVt3$7eXGjI`jmyZGA3;g3o1LC9p$tL5G zIEK(F#S?v?Sq2;uY9MAa+i3vRCDF$<=m9HJHR@yqRxQWLk#;Fntv4HKc0SHya(U%e zA&aH{6HCKU6bW=Z^l9B6tS+Wl3{evr4W(G*33d_+Y%EcN@o|u7Iu0d(Mls1a84My* zx)~s>fxl9P!3W(vw1-rDqEy1rV!c{u1K7|ngvd#alY!-+@|6OKglVWU*Z;NQ#;D8X@Q;*Woc{1i&%EGQ}{p!)@~k|7ZhPydaSvCmSeg zmlY)vJFqxtS2=bPcvTWvYPApy;#9%}FF@0ip@i{r9Nme>*xew*XT(twAYMsuL+Ezk zA1rtPqKBl_GJH%cPn-~^l*+^+99ogAhSM<6loSx(rn=)1dQhX{QiGtS*hNt2p~d3K zwgFvP`EXf_%eZqcd$v>KK#M=2n>1&m9C7TC(s5EX1S02IN(_%(RH(Tsjc#1OqrTEZIu7Gq^4U9>ul5RVuIC;ex9Y0RP32z!L%DCvxPVJCTXB z!NdfY56Pz?z;skI%!C4|W=PDaF$|m@h+l}bm@1c$i8oOA4hlraUaC=sSKHK9DHVc7 zq)Gu=CdtQi$)JN;JK2MR$R?S`=i@|VbfS=k^Ma;AxQOMEg3cpWoH||#5?SE0T$m4r zRU2VWkZOZ76%bAq4xq#sgi5uW2N$SO0-J~k=L2veoL0l(L3fjEVp>INy%8@!IY_{2 z1w$+i%kJbGSsFE2iHajTC7>%54wpHZrg)E=fdm~>Oaw`oNTtXM|72&7Kr0iG(6j=;qcK=P3y1%{+Vg9MdqI-&uDg~8|4MjBTa&y>PZ zph8i}P>LNiJ^UA=K%;PnTLT$fLi3;HajC8B`|}gU%1+amg?|!hMX;x*-?LbllTb~l|{_pI1x6N z%n34RZk)oaOcXQ4ATp*hDa>*n+h}$suqimHMFM&X^-Q74E#<_~2_jJJz~U(>2`Dm9 zk5U_4N(0e(fDn+#u=4=01z*Y5dwJA&xsjKsv?gO=4xvX1`hlROu_a)PAe1F0kw9e) zSQ?E%hf*ml6qVeivxo&i_7hD`ioz<=Bv`m0up)v%f&}~s&~fo1uFGswV`X%rSR}w9 z9eAzQgtj8&Oa_yojK^_AAZ2E>J3MgE{|HWzP?Sg`9wY+gVm=apF01S+6~G8lh`h;Y zpI#2*8?4D*$c#{doRvwB#3kzDd=xsD1Y#~KwKoAYtXO3p5fQZiAypU`+F;O7S#ilW z5DHaU-Q<9?&3z<=Ta0sexm}GI%t!+@i(MAn_SzhB0((r%IqP zs^Yjr5XmLN=qRJd3H)XcL(3FuRRWOrR%$pn9w#BerID!AT$4yGph!5$9zNScLMi`P zV@jjj20}el1?0?vS~VMqCji(L3Q$C#uo{x(7EwItV}}ux94#IT%KK0}3|0cMhTTKK zuo4+Q22H_FCPUD8AVt6d*u*9nTpLdk$14SNoSQFqB2hu2s zc7#m9bj7=<@mwtf$B;_xYJr_c&@mV|gHol52RR)D$8Hu_!G}c{n^6lw%tXG(E(T4^ z7PCsurzk`?6$e8=;+Qf43=5U7VTDqdg+@RcBo+X<=1R~2lw#07>k~*pttdFo(3mi6 zsa(&{nL!sBL+PXtK(Jq{O^(w_xlS}4uEi$1sGbC^DjC59r-Dm+!LPoPH ztb)zg+u#ZcUkvvqBcW%pI(Z=1DKUB($-uwn;gh8b7KW}C!g!!>Un#UDnBYtiNLhkj zEtUuCBUlX}uSakhv~U)l4621#PKF7ne*=V~EZ~^Q29v-j7LlaM6nSzyic6JhLAnFn zDaepfSvY{VpwOEbIHgT0hj9odrv$W?(HSh8Rm^r{y&8!y-U?WOO2Z^;r3kMDX3)^o zQZZU?WTTToNR7deB9Vz6q%_`{hys=cQOO}W!REt7DwZ0COBOL1;GwA?`XX?E-XIf$ zDpTOuECD^i?G@2opd>-ZppaxFqgN;-sTdBO2FOE#5r*=42qYmMq#Y;#00+Z>bh#$k z%2CHmY_vI_&mmrx->qlpeSXnirM?Hs<% zgG2a`GEimhOfbYNR7evjZ6zu}1C$#S$s0&ME<OMgu!Y+7l#YryTkPiq=^>?nsEWJcd}V1 z0G4tB#ty^tXat3l$6-oR%$yPQp(Ex|)fTVm5Su7#bxqOrb%V#B6aD2HA zpJ^l=nW!}(2}S^moQMOsh6a_I1CUC*HZ%w%$do#fRLAkK zX;@Gvj?~%#qN*qn4(gd%e4@-rM4`DhIDmTQlOYQQXnmr?s!OIQnPP`ggNDg9I-Asq z0>gGLKwY9^*+L?SF|fT5(HM|Y0KSSg$ZbkGPbgKXWIT&NF86XJI4VJ}0Y(`35JT!k z#3`r-bwYAH7ORRUYZ>uz4wFqx(Bln409BD})0*wn1Y(>Bt$}OYoOl+ngNX_y+zP4< z4FIv$36GN?Wh#}1$nqrvKq|ZvfDFM5Ha)=}$FK>w901N|vhY2035*NiqL5yuL?ME~ z$qGJ8MpuB84B3i?DX3y+LY&v30I78t=$O^uct|jVnU7L>;@MIpg(5ejK`R(&M23UQ zCs>ROFH84lK`@$lP8=VJa#OHC8L2581uouhg*%;`I1`Bp`qDrvKbdL;8C)M^!DC1` z2~r2=#EJD(1fVf0QAh<*Cw!dHZA5Vq2%8NZ$2Z}T7_k|rRU&@O$3Od}C9zN2}=8}P;HK4gtP>ul%EUHFg7ZNGJ6d_Uwe71z7 zB}qUa%`3v2F*2RlMAQLLJ`x|DAYe!}8U_)KLxR>vABGOJ1l7ROi3M;vOfAPlglOW( z;dUBVs*uxd00;!j#fWXlcrBYEBPZhM7%XUf;i{2T7ebT>P=nnt;0F*104HBXU`X6X zJB^LP6UYbwmaXvz07$X;C^GhRZ;rL}s!Rj-n!w0CHa{{bQ7Z zWifl-M>16X7%7q3QRIA*32_a~0aSCNHY2aven z3^^7F9C-`?VFe}y6^|C0xn5upKo&Jt1rVA992uF^4|OvrSWL`_wC5((;L z2bm`axpJBh;y$>SDt8l^z&|AdJRS<FL!JZp(SU^~+H^`RQ0f$u_1nF%SR*F96@v`n+l-Lu+F)LQ)M<3kSaDKt!&HJD`f>>*w7UQOofAmt3n;+*|9r0p zlHw`s)!40DWH&mQAoMKwIKRiUfj1w|S?maWe?Zu4q3C1J%zrYw_u3LRa7qiiayeXn zGw7dZbGa+RC|Q&AnNh!2Y6lD)Gl#{3jkKJB6Dy=PJY2Q(7Q}wA`zdPI8 z{oC(h>mD|g@6mPs`tdsLQ}yYCNhN8gI$LT6|D9Lg7T46der#O-I#J=1qjMigG}|dZ zK0GaaQkdkOUb&w$su7ItD&CM@f9LPVpXuIni<)XLrQX^nD3P30cgJ^De}DbxxQsLm zwy+!8RK20HCBbjp(&v~r556AGt6rM_GB=8~J1;5id@|!TUzh%9KWFf#&m~>IDVx@e zn7J{ExhWF1;9T;qw)Cc(Emtt(%6v^JHK!VHYI_HF^v!sDSoCOlzp>hzD+hLuc{{fP zI}8o5wrkGpT@gNEkZjQRd4f;)1FMa+jXzS({53nk`T0S9Oo^6RlyvOFrFTC_@ADgX zcD@b$n)I`yzUwQJm^vusgXdQCt$k0v;pjKAE-=`XK9TbgmM-<9^FgNuhZmA!6b zUT(_uB>5DR--pYZo}Np+bt)!1bbM*h(8@y@yN7uWWt21?sl8G$^Mr81@3bXZb>zw> zEV`kE{nAkywEY*esFYrGmKC!|e19`i)AJf7CxoC}JE|(2+U<7x#m^U}{Pm5FLT*BLzF=fjp-P0hrFTa`NA$lwjcD@{Y|-yMFwbePf? zA}TC7X+f@d)p|E4t!Uv@|0Lp*_KvT26uzVpC1;QQ>izoN?z(RnX6;VRsSR`IgkMVi z$y%VwKFS_+tu$!h2kV=E29~nZ-ZfPI$cff(7bT^hZeG2y;JhBm+Jfq*B!=m|SV@qJcZh>h&+7vn#=)O_7v zbh?m#Cc0gj^l$9b2#2rz%P)NU_F<9BUi2Lk@mAEzA3A^X?f&Bm`&5Mu*wDTng*eH& zHz)W`WwzqoiMI7yWHWl*`JTPxU6HEnkSh70^BU}X%Go8eQ|gh~6Hd;nYq~U8{q$Vl zK*0IO*L17RyLzL@UAv}Lm9WvXp{dMPTX-gQ%*vKnOkj5C-pg&?3HC$Q<2l7iCpx3j z_m(c+x#E2M!~?k(x4Uc4OZAo^RXgYAujoC!EcfjQ_wy6YHyNE>$5q2H$cV}TW19vS z9S^aH)dA^MKhmr}`ggC-4wX4~CmT;~P6{kedivq<;R%Sv#Wxl{Lta~ldt3JwF)3!u z>l@*mg0ppL7o|zo^`WxOaeVdrT*BAJ>`)s$;o(=z&*!;SeVIf?2kv6zYU9hP{Vo@O z$|GS8IM1=1lWuN78&)E&UHiCuTXb|$*X7jq3P$uLq3yjqZT8@?J^W)M&4JCAd*83T z*=}3BIP!k$-nw@5L{Lzbbg%$W{%B=Z-C%^J`M~dccbfO@+(^QBT0PC|8IL2y$ENVJ zejN|lWA2>qs`~5Sds`;{!!a^?xPR$lcGun1%0Yo zSdot{ZBDa>N*_%N@GohX8D31WF0AbCpBCIuaPvdX!p59{n7Z%k(aF{6LtYJgjOaO{ zh!D46e$iEnSIABLXHNS^((2Hd!a>ud18A7zb1r?rTw=hAn|k~hIyTRA!1Zdp`f>dz z#G|Vh=dnKv#?`F9&{rxLb}D*J-rLZzjF;tq_#FrF`>#2U{^`ZhhY>^Her-Nbm-p=C zX!e732MhU0*PO_R;-pZCqe*nbR=RX&=!49PWQJ;Pn`)$|EbmbCitfJ=w-^-W?VuNT zgYfhxRZO0f*0ePD?-o(xlzHOC|HjRNo70lA04S~_mlSxd=;*bLQx0a+OL|KUP2(}0 z%h@H}aK=ZZrqu1BW1OWyBfQSrLFcVU>i)T;S7&XQ|2c1`8eh8Cwg8zxA9;EI$-u0# zgAZ)y-ye0`C;e^Qfl$Tw`_hjpJltAun{oeIuyoj~dws4K6%C)04O2$GgaNJ%$_@1- zC8`dWt=Y9FEoq~adUg7SCu0B2p#wixHQyYZG+_JcopU&kSvQKq>-piw0N6`VS8X(> zamlI5CGh3=DG5oTgFF=xH+O{EG9N6VJ`7r2+xqt%TD!_~p#IWZJ~w^ulfhfFLx)eL z|GZX&9-h{hbZWquuruqJ;@C;crhYmrbgdn={>qO8+nA3A*Z5Y}6V9E5&!g>ko5qc3 zIvCn$uTee-`q?4k*dD%^Sk73qRbC(W`jE1x=ICbS&F-u@owS5#+3pMcYWGw2D}~>f z0KdqWSrA|DfAYS#&ROaO+Xma%^kC<@Y=Zsd@z%>9)`k`l-k^GxL?;t2u0MJ0dekym z(!kEu@u7!0pY%-Gp8EOu`HYz>+do~7NK6_(@$KL<6WM!$d)>cObogpIet%Ni50Ury>QeIhq|humuCuNn1t zdrgTKs~_2$mIcJYQ5*9@~e!6+6>Hdc~Lhc>QL3 zLrnvx<<&h}aP>(-<0H$Z3%y@9kB?@p`{#Sv)`j&(&q{cFF(&#P~e zG1%v}O%<#>l324o)k9ym^DcJ9*+pmDSWAl~y0jaZrw^_z6}?X&AvBjNr#kKSl6R_OB|2)*jbo!hX#~(hop5k|Nm){McxZuY^0rRiJbZWI|Nx- zJ^FR4dbyJy+5i7`Gy^rZThZuy)mb0^=bZmB&xVt`DYLTTGid+UqZO-Tr{7-Mbh&+P zTYl^7++pCA_;WIOF=t>O@5yDTn3rG2rPO}x|K_G$^272h;Nw+i$|lfmep0SBmAS?gw_^Re7b1nTw@ft4qT0YV*`FCp=F5ob2NLVk3!Gc_jT)?aA!NOEc|rGzE4{>_Pw_3UGEO_ z_XTI}yt%aXLF=)DG5byw_ts|3QBr=K>3yx|x99hk?=RmWOv&hQy*U$~3eQsp44DaY z9ZUDKPWra5Vp;FTxOG=p<6!B z>O20`VDbUVkAF909H_h4ujSR+)R*2*_rG1>CxK_-PSPIuqhgao{P5nDDHZ?r56bTT zUsiKPR&0ebpf>OQiGj2&=D=7?!QAxhky*A{$RQa8r9lmWz#d!}xO)@l-?hf&nI|&J{WFe4hTSAZ zO?h^1*4o07-&@-1fR>B={mTD8#P<^6ziHjYBO^*TiUM~p53t2y$bRw#q5a?7AL-w` z?&JFbWB>b;-2(qyN)}A+*JH6Um^7j_BX(`r^4Ftt$F{+Q|IaOs}Ftq>ti)Z$fbf}UmUyy5mKkPfBqQZ$B)6`=`w+vj^ zvqS727hEMxuN&^1>znKC(@`;GfiQW9--r^_m%cA{Wf~`DRMxt?;s(cU2=G4`yYRKM z$6g{kc<2cKnV%eKjx~E!k=fn+lNNnZ`d_O4^mVCQ|I8G2)GuR6zabT=f@}TT+?KEP zgVNp?^c*eh9z5<<-ubZ+%pnokp##OpLo-$YuW7<#{t0f>12h=Az9wim3GknyX9g~I z@$ze#!*W|UvSJCCXXJ3x-p~wK$!hs5XoA?ls)d<@?(FmP%MR5&%sIb0>fPU2M%b;v z=;u^$e$B58$4_$P)B|v@rHUM;%wnO+6RX35zm-k=C!lCo;GxKf-7x&A&ExzdBXY5|eq=-}hAb0lAMpSI;|^`=c@weuREF_D zm{I8N1J1sGFwoyG^oD_b zr@jl_#H^0RgkAc2XBy<*4LI`eR?EK?)>|)xN(wLr2W?+ubLX_KjrkorY*rge|Lphz z-uWLNun$N5hHY%AHl)mWxp@1b7b)$Z9yBZtxKOb_pS|CH|L2I?uExqLVr9z9jFR$4 zoUWCwnxo+_d>`@~n$pt?BkMN7n;u%yXJ#Hd_d0M!Q*kZI{_nNSZT!ovbzQ_$Ti^9k zl2FxkhaV5E)U+?tRaHwIT?O-dZl726$*$+09Wib0%v>q@S;x%5;&b|Vp5*tZf)QP@ z?WaaYHWqg3@RvI7?fqW&*Mr1x>9luGpPaw=d+V9HM$KP7eUkpgxu{;qh1UD18r zifBuFBkr8>+pn1qYfd)pOMftA-j%=VP13W9@@EB$8;6`vI~+7~)!ak#%C#k56R$%A zlvrP3G+$Njc=I}FeRG+-eOb~LZ``J&Ep5xp4@v=fZzxkS^Baiwwpv$6HtBPWI7jmrBx#7Mt7OVJWKU&*eMrSEtYYQnNh7-cbGp*{gL_XZ`e3 zNz0-r^`fKgla6yrzRvrZHMFeZ^}Cp8{j&PHW0ZhjuJXyhem1Y`)mkvCYkQ~S^bCD~ z>_@uz^p2pC8EfXez1)SRo@PbQ`H)^MM5R?-9xTRh+}WNsWInOV7^!@t)#pLWw%9#}B?cwR=wjTMhpX1eIKBlFJh<0k5}n$Y^n#X+IN*i9ud z2^}BD_f|@(CUo7aUpLd7PLMa>R9>4>$P7c=Za*qTPs<)QIpkXE8B1M!*nm-snpM0J zld^W4Ru&E@UE1I{6!eH07TA3TGtgnI*b_!$tf>4Not|<&`1j8ozv8JAvKG+?c-p_5 zX}VOH6IeGjHEYMOkI6HNuOD^LYCarDTr-2By#BF%)be(M$#c8sBunm$nn9(3Rm(-2L}t!prg9 z+iDk>A_iwRr_My}n!E1B`eBcc)-!OPvXejCJNE_sTJV*)%=qwN(#6EkoQx94pC8w! zh&^QU8+Xi+wN-B-w^RVBa25SNk+s9%jfzlW7T+BbT(Nar3zAsTvhtaI^d1@B7sEhOOGSaq7?YJ3R6uk%N{02ILM(X}UDlT6b@YNfJ3j zNxiXhpkeun^@_DsqU?c(=Fw|p{LU=n@;=_^ke8iXQ#KM(xYni;biYLx9`-066WIMyZQXb;SF`HS zw@Xh=&xEBx!DD*HulGy4kvR@u8U6b!_P+k*$DkiO`c&-{o3K_a)ThCt9AKN;^HiXK|pi za+&@8_tdkaPfr7$a?r26jmYwc1-}Q4$$gWHFYBeeJ|%zpfHFqMThaD?!;3~AS$j-C zmGn`PHZ<(p^QkyDbQ^l-=f5LE{OP@q5AsT~#tj+wCGtaa>Z7|sn;*)2N?_Yv01+I?<&i{P7xrd7UM#RvU&HNmvNZpw#~|ge8u&DPRoZ}*c`g; z@o0L`{cGCe6#KLyg1r9hym8V`d38Q9SCCfr<+0;$W1c6P z`qPuzIA(?`FLBJtt4oY8kM#P%Z*?};oZMBJHt0g1p-y~uC~xe?w06MS9UFO`R^c;C z$@DQV3+Jb-8lyTC0pF4n+W2pdt?%-+BjyhLwVr(IufZeVT)bV7*O1LX#A1X8!9AUN zFakZ6@Zx25O6VAW;fl&j;gy{s%As4!CZ6kTnLBbKhW~bNpPa}qWdIs$1ESf|nASh7 zY$EQ!=JOpfe|1K_%~=_Fjo32wBymC4XWxvXH{0cJ;x9W|j1SkNrBh&**}#Uez<&>$ zo*UX+_F6TdnK8R7_!}cT)Q8(RRpl?=a(n6VyGz%pr-!#kH{Xny^mXs=dl6GMR)czq zlZ5$SuS5`hA$^gMv}zxS^ZUQA>uigr~7ZJSK5IGUWoc zE?FO{6O(iUvxj3gYM@W8XKXwY#u%B_UL)w$J|!8}G=8iHNfi`j++&(?@9*u@zVJ;s zF^>581uXq{&b6G-l6zCuS8-qH2pDpEWNuO`e(aU4*P7143*twXvPR>Nw~QTD@ODN7 z`73<@A%b@3NB!+SjUfYM%7C)bHQ8HZd?CT-`)$AbF?+vaQ%)#TZG2iF$~f|HbcAr* z;KCjMro_`uB`&N5l%lBJy?t2Jx8ZrWgW6OB;lU-SZ>s=%0h@IPxW4~ER8Huu;oE0N zC>MXkE;_#~b5zyB3!1DgE0Q0S?C(X~^LV54kaJ4FkJM`H!Hu%fy~<`sF&hsL4Q{0O z-@AMXe@MKfct}}V2fOy6^B>%uzt)FZOBc_{p+r7VW|3=CzVE$@348nD#2w-Hij0Ox8BX~>ii3rP^{p-`y zojIZT(IW-Hhg92l&hB9xo_aguqEDJN@4-E;fK*v50o2jrcKISw-(UH>fRl;Z|hIhUJ}2|`+YfgNfPjE zU@~JxJcdS$o&B4)0IO+HNwc{I5JvVYT!cUw&cPG=hyw`hAI~-p)TuCavK(LfUZoY4Ic|aJ90^MB5 zFIM~XgxZ3nr^pE7>&!D>Gh#O-Q8WC3OLgD^6Ik@Uwa9i5Rw&)KmVi+T3WxkX64>nD zlZlfe!zTCxD}?^gA~5HsLC(NP)A_~F*`vpn1_2rJY+$ux0I>YmPTog60pvn(9@U=)j!jvghkVqgIEu7)!UTlFf>YDAEN)Jvcpb_OX4GRcUvl z!iFS#4%3$JhOZfwZfU%gT9bZeH##D3Z`$x7-NF_IHa<2Iu_I5N8aE`W>1YA>ucWBI zX8l^@58TGpnSpnqO&?RbbRu(vDGIoFOUISF_gLnv8Ph8%^F?epf83hb#E+Xxb}mh| z#t$=m?;GgoSGsbxMm79`k96KRcBkS&l(lHOG%_MSvU?HX>1yuuY0z`5+P6CwIpwOv z5xlD&H9C7>%9G83`{>cx=(=F#%^fEZYZuKOOO5XL@PsBibkN6}fj4%Pq~|9dd7<4U zLiq*e#O>t0*n;|eC?LM4{Pn2Y>w^1l$cjzOJZbx9?Tji?;2l(oZO-$!XADB zK5*{LqN{=AKuwf(*O3pwS9Z*Q%KiCuO$2tW$N%w34W|(#@oq0I>c8#pb%XTkkc=bG z?EKs-Q>*;{dEEy*wz2>Bn&F%2B{SX}pA=E;@6Q{PyjwZu!O8%kB2T}RXrROw!A-hs-emNKrWw# znPx5l5rJhJWRd|O73)W_9|R%>lo)p>*q1D3a~0sqOYRpWZMQz#5Nh(vnAneYX9oeZ z*topnSos-Ja6@(|{pc=7@IK+n{@ts%AZ9C+`|UcJb!8_ZtKt64rm6Uy#p{70{rJo+ zjVsbU+Q%(-0vB;-%qdcqKTsyyt;tWD83EmQYR3gX`^pIKdN?8&;_wS+GHsLMVwV|d zjrI99ZTR4r$wh>B^?$d$9330g@7#xD7qwMIs>q00)%81r(l*m`IX8DYK5-_{IM)}E zG{bX@i<9D-K#)+S%?Jfp05;H7v}(Dm!Qzfx0zqC}nszAa??a zQ4=7MxnehIX-JWuD?12CEpSHG_J3Ja=#1k5|9wVC(bde^o1y!ZgoUuWWr)KjsveZ( zMem=m!;{IL^HVuxvUAdZ*8;qDZU7PO0bR+ezCetYH=vAm*vCZk(wWd^s0U?LSR)rA z53C?9D4D}-S=p^Bd&9ZnH1k?!4sf6s%$OweK`ryco z_jX22ie%22kqMTa(eO0T?`bFa_Eo@zKosAoLn zqVsclm%htdeA^xhVkuEK!o|Pexqmc1Uez{gdg`B5dU$rwhSk0NwnF}G*}rYEe}Y`+ z7cXZ0A3?4QYrEBao16DB3Ndut?MUR%Em#YC)u3s%)ZpysZW$oqyCU|i=E06#glVNq zwRanCPslI8+y8CDT>f;XrsC(j{86l1LrnuAB3Qk}b!eFi3F$&prn({;5n&v&?#yoD zm3@Cy8Bl~ki(Y&CP|XiMKHL4fjo^E~H%|-FzTM&aCr9WJSTi$z>UV>m-_QEu%BRjM z*3)C}$_FRS8d`n$bJ>(ryS5GJR<%%64h6`bot}6~9pLw(HItof23(sx|BS4n@ILO` z{Q2{YYXeMvek&Fq>wI5*(xilF?6^sweZUKhR{?b7C#wfVFZg)iZP=9FeoD-e(E~bD zvqN3*psJUcsw)y}K#x8JzzdugeBsu}6sSVtAR}-3YfD=GwzOaGzgHUyf7Xsd>j(U3 zsw>fE4_@FI{lZzQ~-9Y%yQ_gc*iZ zGuIo7*1CIlw3n_QOKIOb{n)Ll4B%_8-(RNwBYSQ=nC)rkPD7*om-gRvD8(1O^nx$oapC+`XH3#O*NY4NMwFi(>NGsv)L3~) zRx^Ed^_%(6x;kFxcR$&F@_ITI6sMpM6$(7BuKo3Wov4d2^V6yDPbc1u6c#R+y#+(~9 z!*L+EaqcPYX#bY1zH>I2i@#9eVL#@C_wQ&u`C!i6$nN9t)_;a-24r?dmvrQSd{bQC zn2zJxRnaB3$^4=|`9~bjWXpK1pI@Yg1XlIQzcB7r^XH3AE59}se`D{8iJ9h6oi+S4 zpWSCjpYg{!3LltzX^i8at3~f$%k9H!&j1(h!G?(^Tt`jw+aEz<>ETUas$?mzKi_M3 zzw4}~eCwmMou?xXRn!=s93Y(5_wPJq4L3bMC25#njVhSZ*ThLN)-2cCGXjtO{Pypo z?3!f{b4G1^2nu7EGhMai7Y20wZY_EL^WBd9AOXLg-IPA#%jeJM?uJct4(s0Z=E{Cv z$D2`Ik$vVlpZwnXV{HX*3^0n~9Y3mnHy$o*sLxBSmsw zKe>Q3aeNraA6bGgzw#m@JlF2$E;rSf4XMK=mg5^{e|tZGGwVy>Cy*hEjNog7fhS-L z8@eVFe|;5w>CbQP!ea{CX1rcL_5dK}OvlUH6aR?1Hbp&=8{VSI575?5O;GnPU4NkD z8$SenlF+}`(*-F<6V+Msc8sn`JlU^u{BVM#CjoJ%MH#{D+aN>@?fpK<-|l5zHN z>vyT$4Jqq8b1t;(53k%*eD>oyav^2A^&Am%B^s*%FP)#}-U0?h!|aIojR-%ux#-mk zOJ2pA!bM{@GKN>3#?LQ5Ji_$i-1P4Ecu$SbXk%;hWRGQLmAy=QoEIjnoYD)CgDf{oVh_=T9(C^Fr&~ zqu1YNw7Ss;w$5?BRc}uT}lVgwN zApV|xX>y?{*LYywmWH_xL+*=v&Y!n?!?QskDmCj|^T$^jT5ShnB`(svIW#J=F;H`6 z8)bR_rWush=;-r9P%5L!xF>(cAo=ayMw#V*!P=_d!hiwkJpCkBxfN!yU8fOqDv~gsUpWdgn{}gwDKuoc!t4HL_(Rw1wsr z9w^5nm#>@ii*_VyTT4Ca7f2A@XnKwu5tEn$5$SkKezHtNRN_^ zv-+ZepNh-w|8?TaQ(9W2edqD^&ld+{PHvm&o}SuKw@&xZ>Y=+s`*d@?aEkOr34af7 zym^cK_33iXoS#burIyf2PrX}^(zB`)b4)1#r8vlpkgoKtPfQ1D=DavC|DtOgR&z=f zx3{_+tlvn4b#-WJ1Ms#9qo!DHtI9T(3plgKXD;UF&5Fm|Ejjz##^|@C^xgcQIjX{_ z(xCM1KuqrVl??eA9iu(cN*qyr!IO8djm&v%liqx5S5Q;w*8?+&bzHgXn>|ttP1} zYJrE5E|!iPR5+se`&S0#%5-|hz$u9jb2+ozn!{llo$8q?Uv|1zq-EMiD>|ZI|WT8U6*Nt`doW(@#QQ+ zQ16SHO_AZnN&U{>`;cy*ePZ<<>e}6BK2`Vh&TuqDRuAiH@vI+tJE?c{<+t)`Ro?s? zO&wp~!8^}=jJxo*f}wr-!nHTA>o)>EeF6SVoh)U>x4X#hKS#q~h4gG10snl|ddgOR zC-eDmVe^)|X(b=yM$B|h?YQ6BsjJKn+_ih{E?{H6e!Hyp*7vp39zy=gkzKvNO?V!? z2IBK+OFFx*_82wb#u$#gqeUhzQicHSkg_{Bpzo~gHnF5>JpBQbO`l%U@%8zL{QY}? zWc)qxd|2giC1&k2L0*poLqlvj(xjrR7c~J*%OYFpxR;9q4sD0Mau@8aE6@Ad#u~Y2 zR(0;919Q)sS=(ngCx0xw(v(ud8v8hO(xt1Tn#y+WaP8{fGj61J+?QpM=doGiNa8*# zmaVNL&!;~9?a176KozR5Q|{O^vk#DcBat2b(KQ4 zDs6t4)wjIs(wFqzb!F2_R`+SIl8srVxSM|qWCd<7d&G`mWq0eKWSoS9q;qt&srAK; zC`(gG>*Z3Lw(j!m?e5>+*XLNjI}gUpqAWrLoxN!@mUOn<*l%TSf)R|p-3_v3J+Ebi zgx??T^|d|v4oD^#p{(m{85ozD+VWoW{q|c<;Lqe=L-#*|-x?lX#@k`7IvJWD8&M8| z2fG#-@sBqP@_$y{p1^EVO>ed@&Og0qM9Rk#@+?}@%?F}6=QB^9@q}Vy1}6^$g6L}9 zn0X=kg@xr~!dy2rr!Mt4dknHsS$qZTr|mFA2RXx#zfNa$>nNHv+#ZM71jAUnYx25& zPTA7@fb?2_L#C~1-HQsL5er-3!t3BF6A(Ly-6@z~x~`CXZw zx}sa0Pw}R+heQXi>q?#`xi1CZ>9GyFcx_|q0IRE8(r|6xODP9vKVs_N?SB|DVMnZB zPX3s+3h7zb|Dx_Iye+)UQWKg_sx2&fW^SBjjT-P=T`t{Y>|4TxEv)7 z*Sxct;yh!(r{V(Uw0`=l4JETtV(NZC3+3i^Yld0jL>6zXUTyi1`BTHuD;92t%o;+L~K* zqrZ|bIBV4iZ!hBuC!DN@^f=G35Hrb#W!N;F#&cJnFrJOgN|I2JdtFcb$yXlb9=;B{ zdbx^eq{3$lZ!sws<-wdO$)<$YySXFOCl@Hr@7u1oQtQ{ZZ9&Bcg9L!bKX#QAA7GgbL zX^C8E!lcb!;`;crxcJ=hd$CpRBVWHaS2*t$8}F{B7hlB)tM0D6iufF(CYnD!jS(q% zBwV+%`YGr>SQj7#bV+ zMP^m`msFtm8zM1tzMNCFW+OP5PV%NBO0inF&hfPNqbJr~04X%3mvfv~+ z0p62*U!C)(@I`P-NGVw*9#7#+*|HY7nPZAa-`K$tl?@JBAbOzIsGUbd)+NDjBV(SP zk0PPa6iKNsQ;&J@RT4{HQ1jHDJP^G)neW!D&`hn|7*k{?E%yb$>0MqZyqTHNW@l;Y zzUgx6yIb9z&VCB4TtP6Z$D5~(vJe~UAIU%Vz&^s8Red)S8WIeUf>Vk6Su{yCU;V)B zhi_#M8T39t2ry;*M^(=sBIhtn0gbRdJnILXTC&3~k(p8PP^pzxC z_$UFop|ng}33Id_@h;EP&3X+1|AB-}EgRGG8rV&K#X=1v^PT}^{P*P^=(O2vwe%=a z3`udghbm`<@M&yJq1DTi6{g7dIk;>`;+pQ?8_tVrRttF=h`aApZ%%z>FZB^psktnl zSY0dlly&N<>9u~f+PaImX#|HJ}?j;k|l^Mh~t+T(IC;vXBg>X z`=bq4IvXZghACr>ZbCc6Uv&x}4~id8&fo1Q_PTttOFe&>R-3It8_t2d&xbqB8(-RN ztAm8e{}4N{#g#D86JntKEm|R$@EnGNo3!b!U>WnO>Fza?^^(!L27{)l#e!Zc2)`Y9%1#N&4j)8s=MO(VBd4>+z*}Bh(3NOTz9?d(DUsFX$M|f z&)b@d91Zbw3E*E?#0S*|v+B9U#{u?jbh|DdHKObvmkkX@mRg;o0I=oYqdgghO_OSG zZ0@X@J-|2YqQ{1?vLu$xph%lK?(Ay!hr6ml$d*&wBIr36?1@;_P72u)OqzX!hAvv@ zuA)S5BzEO=mM(7y08dYeIY!7;?+KPU${1n8$fqB?5KAZ^BfJvzS&vnhM5>#TxVc&F zGdT$dV2MPP#V}_kyk3WI~dQSdX+{?Da5}cfYbN*WIkB(y$N25N8@_1NcYU9olPhU zjC#eU;?l|2awdjDSaCTF^J=Z#N05Z*t!XcjGLbN$S@T>%?v>UTrKKD!cNLcH?g4~} zvYi&X%~{9!?VV}N$#xy|V&ZOG;oG2fWCKLPI$GWJxo%}oYb5JXnfXuI9j^sVg0=I*M8xBJZb9=7>AL|DVeKzkMdk7lg&_v zJukldS(}iN7t@09*-BQvbPE)%&@9bW-dNYR#(hsNck}+>5Q}mfF%c_6U&D<1+H{ti zMQ32P;gyK%7g@eXBy}(Pp>N5&fhP0I5GC@Eeq8Kfxjn`EM4dPN)f+u;=2u7M_{?t#QRtG zT&mFN!aIG+Y7K12($^1PG>={H z#m4V%2Xiarg_}u@iz4X0k;}#}eT%)W*Z(}QHhkQq@EGAf9r~l)jdw?jXqsIs?Wz$1 zH3Qm{7a{aw&N9j_c5pPhmeYiLUiqvF>+r9uwflV}kdU6|&ocuPOlo)Asmfluj7043 z$+bZ6V@M{qfpHAO>B4CG*jK$sgNIcBY$MkD`s1Yx?}JqGb~B~guoA^aLC(|Ct83&g zTlB6UYPi;B%$&~N)UP~U+Eg>_o1Rb$kYbD7eZO>}T1*PHAv+`LScSDczYK>ZewbH3GnUZ~7sQ?TLw2N0t!@ z#PaN4!5!f|Bh~K=&;7m811}@)Pc78~xzY*_1B|yH$+(|gRvq-5zeOS>tMxJWfBp(z zhmLcYk=V93g;DUgezSCkF!Simykb~{eyDA!u5~WPkRV7~2QI`%8%hKD+PTdLobODA z@Lf<2$imU-*4vq(n6vu*+fOUx{_tcX0pFJ}e)Wt>qrUeume}9LVwhB1cRESkW0|`* z>*B8~Q>H!7t?V{f)yG|A;Pt}mKF4Nxdc{S*cMVJh^A1Hy{e%*YRZc8Mi)eNw@ZI%u zk6(&3T%Em{D^BH!*jA%i!IBS}arehfG03bG6c#1|KgEc0?`>c72x|Toj)eCZQ zhV(*i@qKp@q0!c-p~J{@#uz!1?eV04@G;b=Lg!_4tF2aJ1`>Cqa!@PX~J%}S6#yVJZx6#EoUpy zzgT>}+>fpCX#DN*Fel4Fsg1=FPo}{Xa2?czkmP`ogrU^i_^(-%Wg*<++2R01E{q-{ z^zz*8f2oc>?KL~lf=|}X;QR+wqB%MNW5*D?f#yQbF4O-{H0H!BIk#O#AdmneEeals zv2{Q$9yxq$BT9;bxouTF*vS88JynfHYCrb=&2Q($IggOUnLk@Y%ilYpqwNrvy#VjN zGzMfPoR`$|*5QYb$Xl&(*#=@%Jx}vFy6P3C(oYaAfP``nur4lf>nRh|3Wm0OT%y|@ zp&2o<#1_=MT0WBS+(0+f z&H}G=;}ZF!7*DHs!PAx358x{hH~0^qa&K?hM#q1t51JHJy~>a6p5GE#d!NbwtT*C{ zX#Jw&m!}D0QVw!lqyA(eEBRm%vb>A~lyX+&jfXwNBfnO?2 zhNtd0rhNH;ak+lsrV!m)Cn1i1M;TBJ;wRzG;&>X2Ix4T5Z9)D6mc{c!bE&^k5fK7I z7M7V@`lEJ}PeJTSFbVrH2#cPT_?Je>riTPNv)0qv25unEO1oG57BNTa+ zM0Y^cp$u?!c9>_s&i1 zFrm`Ddko){TaNs*P? zZr2?TVUX)bslJNmk z)+C+tl(-W)eiQM^YgR3YWfbfK&g&{Wh#*pz@c~J|Bi$9$VM+}<%E=vBU-NEeqXP@* z0%S;?0^l^VNWp{!EXU6_=OJ@UCrL-(qkMQpv#;gOle(>JzKTFUABFeGb04ybv`YB# zB`pKO3t8s5E1?wqs|EPqC0~Si@<~t;6sa&6_)Zq9EP^I#EThG99V?SudBW<7K9*5j z^e>Yc!=`>KZrWv;M)YLHukAXLQt-W~)5g;iy02>6F5_8N;c_3)~*SwNCgZCL9GUV$WA+E3+rGzVC z9{+Qp3W|_6`dKmMMAe(b9|VX}2}-!-?K*(F`?5bRd;Ni)f!6b67SS09tX1o{(Jj$8 zKQ^$DN{3KIG%eJ{k@5mF$^+WVkM#eit|RF-dKa1xGg8+ClpXe*D>d#wKd|zm!u8OC zQrI?wy~h|mowadvt}S%+;HP>npwv_^E{C<%2SIelS!7lHC_7d2j>lM<_r*OxB#pm{ z6kq9Jip&PtcdHO6ckqgSkSFxIwWA}&6|QOTwd@#?;tK68`*XB04Q~59ayFo>04xzu z;$Xi4B+{G!>j4Jj&OdsQM~wVy;|f3sDDn9YY6kbGsP4PMrJn#;E0^v65N@j;?Hsju z@+R#a1xCWWO30hyy2peRDjFS}?`ut^yg@FWv7OIOK@JxF$4cX(Y&yW3Wdv2*G5nna zwP9-TgtAi=Z4yBOJIdaW!%)OovmQAWk{-t3G*aK2kghlzq`LwEVCO#H(I0z=@u*yNn4yd@ev)^4u;tsAnD%pZ=+V%*V zyY=II98Ki$nk%!LTo?!jQH1pP5rtWbW^5Ri0a6o?C{ZBsh))xt^AIBb|+JMvKUdp+>dpp*_?Z4ZPi7@W-}3t0v1{#;8kF zv3JwIE+!B8G}#hx9Y01H-LYVXvpup0KIafvv5)C}nTwF5x$>86_vy=5#&E@f-`)GI zbI+=g)Sk5r>rXh4=&VJ^kSAy%nt6hVFNTIc7Iv*8k)i}PIoq#)<&M7m6H9?d(XuE< zDa>bsM^=0K$gqJcD5nR*AMO;x#JgD3vEJ&C#-R0Nkflw%~o#@7QTC?!2>Z!h;G@#FfljLt3xG1Coal!8nh15MV{ zhIeeHcflFxZ(6lDl@w3Hr{qlodNbM=>U5^HTN~mFfjA!VJ{x$M^lDTa1h&O%<+nNl zZ581OQnseR83#l|8)J^JIG*&*1#DxPQ{gOAccg|AbBxyoV22s@>Lh}BTx_LHHtDfi zK8S}`_ss2f+sJQPi4<6_c@nMd5dlYnPlxzpT9*YPY03g}61oI^`w)6S&qmWn?nFpO zqtqUUy5<|_RAYZ_-OLQ-&P1w8s7voASl%0>U)(XxjU89c0$eBA{gS^={%z(VI)L&# zv46GY3=3OEBRSaY*#yDYipQ$(DWyU#z{Ea(VEfrbhCP-T^1Poz^AW|%k1A^F!)n+iY|=%l zxluVEao2@WB|nGClQKpZ-==mKTDQ}Tn;HD>8rxCwb``^yp30edd#{V#9~RwWz-(1@ z9BB1p1Xkea>j3PBy>^KQh5Y#Os$gNwdmC9#%RoKNO?Lr0^QPalE(in|aB5CI)LWOXJTZIrsy&Qj z!zd$jZfaO-E0wVn%lNsZjKj|7s+rUCi!4-x{LOrXsJbsyGW#C z`>XxpVWHVjv9;~zQ03pkGYL9Zm<@QPv2*AD-OK#dQuaU^vGJR4(hO<2Pj9Ti$s?-_ zS8V#!C6vH?cMi@iey5P4?5fqOa`DIq+g9X)e~b_A)l6u3egQ$ z`3IK)Qd7GFmJ5XF(2jD7{HJ-ZZwWv``H~!m2F-^Lsi6eGg9$$N$W@Sc$g~u^(elPY zywVADkEq5DxTybf0xSW(f049kO3brfI1*!f)vtMCvc(5XslB*Y2OO#?-^C_wy&qhJ z`qWKWDFLiZuX9&^H>wi`CSrJ@%Jc!8S(w=Y25GH6zrS5u%1m5+v>}=z8Y2Y}EP8YA zd~Xa7>7P^$aXEP7i`4Tm;sYH#Ax1DOl*m!nz%TR}e#{X=DfY9$_}*$S*-%5# zXZ;UtY&XsuJGD7OUmY`tcB9~5>!%a2(Xr!PYl^eaH>tbHxLd)dOhx7<}n(_(1V zpI#$tA(k(albC3W^f$#25J>~3j{2*pz5?=@(2&mrs+3jyXREQ0B-rXORrZm>UzIgT zGP~d}N>n73TM$l6^e0ZoNV&M1ITsUfs#Y!sv z3sY3w4ClIQ^U1+KI%%NY8G}5O3;O$HSup~YCNVq}HxC!Go7umC#Ib=wkLnu;|C+q; z@;EIew`%AUCAxCpkDCb2tgB^szNg;}W?zWrRqfS{ew)q5+})_zsnqWVlPU%3Ojcid zD$C4}a(yYJRPtULaxm`|t>kJbX3||5`f%YV@R!3*6sR$s+CayhaELlKcOxh#Nx4_x zeB5fLw~{aVce;^@ZZ+@f6EkX%G>=Q`Eh3Y>?p4Vz_#J_~{#s5($ho^^?4(2$#S)H{ zsFDW0W{#$M)R+X2b(=v1kF3zS#ucRA)qe&ec`z2!J>*#6=`1j<;{3o`AV zMVtik>1KZyOkez!o5 zV`LhQ_hP{eiya|C)%+0?%Vee9$ObcPuXNz^5p^3nmesg4_^oWJlyBkl zXlP1|ysro7tM~ivE5FZp)2|dElWP-`A)hNAi;AYnPy&S71D_o?#un_NDjGQ(ZWwwI7>YeG#hpPs3!2&Lfq{P6NfV z$Wm*G zwF4D2c%wiTvp1w5_N4;hwXsV52SHX_UZ-8JH8CLj^#3nkhW^87B zwMUlEiwAU%!E@byz)@5D#+Dm~%U6>P>xhY@sstb2DxMaHKM_Qp9pv|5`B=E;Rl0WWw#b8JCCiBs;zTZQHwP zm!N9LbyoKiP<$1`U)TT1l*0wTM5mf2R<$B=uKOc`CO~Cqx&C5LS@UQiMx8slcR@t6 z$fI!HtcpP5WTrnuD)yQ{`LcTkbInrW0E;^HtygT^aEcuG{;?+-35?BhoKZ=%- zI+lw{@gH#u{P*+5bjBzfw}A44!PlN5cxOQ$X6WGXf>?H?ELU4T8pikZWz`6_>aWf~ zKq`kX^(2vSQ~`}X@R*KQ;APfHtk-QHb^|63+bBVzKkJpG>(Q85sG@wsA7-DOofd*~ z=#FJ1NXb5#rMU#sx^3K>t3#=6&FOrbsejI0k=DomBaZK8Re~(sM_)EyhqaC&7*BHpC3Dqvt=TJwKCl&uuNlP5if z&Nq-?BzL;aAQLzM6Pnb(f>R2-);MT;08t+C^?A-;ohq$~|1KQ!^uF zx-#%-xZ3dz0~-l5rzGY}+*_O($dVfJ_+nzF$xlw_H0~XE?*N|Sy)feH0AS?9NYj(5F?LZ2D58ljhj}_- zh#No|dPaP_>`_mYe2WZf9y3u1Yg8W$0T;Hk*c`~bZGQRFjV;I7{VsVie)M&`_CSeZ z!R{7@nb0?$een?<;qxEs*C{SJ(Qy_>L9LZV#vWxnA60h-K&;E#Z0LEX~O4!+@TQ zlu<@uP&3=UhadltJ_W*Y>4wu@n>gk6 zE5C&#g|g}1y7Ap_sd4w)cEQ$`yk53f(Lfj#K*Cys(%n)xSSIEgF!65Fd&cy)(~JN9 z-qF>;edF|My9aNOaA-$un5?bE_Dt&8Q<@Tfhy*5>56hG^8>*qpLs9fMkxo~kkp&oh z(_j{lQM|rmeSD2+g03iDV1&CUyAnWd$o>pU&vry^pPIeX`UjB86NHCx~4cTmn4l39Ba`VJJA?9?S(HFRDB|uxX6-VaTsp! z^jGjs=*Y64dv{G4qa{TE-hoIcJv&urq-B)9F30&29#&E+{k_HIK_Gg4Ob=U_#xrc# z+4sUPshgj7s$1VW73zB#Wn3`X&ls%oEq`0fYPD|^X!~v;qba+UIjs=R>FS;Cf-ll1 zIi9BB5x|dDvYJC-bvFdlFh}FT(nBIy5BiKqZ{SY-LoVv*Cv-}d#!m(GC0Az>prs+` zm7w3{ssA8`++oGGTOY<~Fu_yk^W#Y$9}Y!cDa~8cn0Id#tt*HT z(x$Ze$)m2LUCPZe#J5vi7MHJI7|RT_N8h3Nz&v}Cuj&^ywCVt@GB{;osXTS#h_D)l zy?9oBBLz){9|y~$oo94#Sd5EErH3)m&af)g;CV65Nv1tU_;uav3kcAEQ+^;TQsNFu zlp7qvRTHJm)*P>Ct5V{tFkpFH->Jy%W9H>R_?(YS1^3ll2bXab z!#ax*wbat$a_zB}JLOr>(=~I##b}uQ^=%&Wj`?Vb&4jVWD<&nJk?RrHHNJaFp9}g$ zC8Gr+zGP~_zuY(a`F+{`lBLKMnY6T(PXd8WSoVq zJt?^Eu6w?~T4)jP`@VQhZ*5z;pSiR`>NLj@7y|P+jNW%yeB2=Wgj6BkiJ5GG1Jkx? z*9!`Too-5jY`0YzcGU}+(X?;U+1y$j90?2P#rnbYZ>u^!(Gv11G-3eG(V|9hxW}K{ zpqkWbqrIlB#wkbDkm|(8(l*kv`?5@^OWQE1{7xD*fQvVbE@&8*M z1v2Tp*^5p*WX^r{W%`n69T`fHP>-sy3b3VOg17shRA#`at=V!Kb7Nh-(5*XX`UP_L zzf?v?BKX4m_)#$Ucfay3X^{SdZbL<1{%b)i!1$cc9C#$~JgcDJbtq zvXg5oq94d3i@WF{{IfW$$}Ql?;WI5n#_*E=$X5MBp#PIU#~4GQQiPyRkxMf+V>sa4 zq^F&tz#)n#nzalgK)M4hpW2tpe*$|EHe{fnfDAsB5{4ZKYDm2oaE5jWKQNUM-Mph= zfh@>>|67p%-x7CN$4&At5JtiGnE<);kgn|2pI#fp>y-K%zHuvre^XmWfG8Oow2a-R zL(&gpB@33}50I}9oT?Paz#biVPp18V;UB)0!Q(8_;3Ys%40xkp+|u~E_F>-GV^OaX zc^xnbZwtI8oN`%CWnlrSBxazt79>@PUZ`=~Szn4?2?DnoCmpXV5)Xot{w*PYpf-d_ zX}%u9`lomLk;>q^v3B!R za7SkG!9F>CBrG9&%WTpQmX@&%96+3qic> zS5ifLp&=#3IMCqbb+*XkrSya5oqk&eaEEug6~6R|1q>Im-x;V{zX~h;;K{lTI`Oh= zsFtYeK`E9A>EEWj&MM{v3&*7kj4CJoQe_GGY%w1pADJR3b>(J|BoKhi0KdLSzEXzBT;2yAh?@A}BhguZ5?LpioCM@an@4Ig+>eV^KF18~ z|7hBvBSOZ<=gH-Ge0>a3OTvTlM!KM>qRg%D@9(Vw)r2%A3n=Snu@2TpBhQXDl`sB0 zu5CZd0l7OYi!80NtKUzGASE}@>jLcO z$0^wWe%V)=`Ua@T|1u_ z^n=V*$tAa|xlF@7=AY@sY~zyX2CxSsi9Lh*ztVURxo0TJJ8B`nFHx0Ib!Y@p{%29ziQN zy&p9g(15vDEY<7k6f`nV$I*M>2>K;jG7>JkQ-L4_O)g(o(X$i%!0*@RO+TOqjSXgy z^=$;@lax#lehw&w;sfz0h?VGGlOnrHJ}2>+kGLPfUA@9McWrw5u*Hx_x1H`4zXE;V zsT1kdhkO|0{G-6C{0ws>0*b+WAInO|{}VxS_0FF?gqW<4cZpq-0v@U~a5!@476>z)dIlqn=a;_P)bFtz2s z+n)Z0$CQ73t0VB~aHtw5W7N?pyaO8A?)|w-hJI7+(RAKVBV5WJuxhaEcs+et4kCr!AHym6=53E>-}NY8y7SHJzywtSk;>I znl1zo<8Zc8j73B4w~KzyBmOyYGh~nJxl2;ho(Rp3U9@tMLm#uYS zjQMqpLuQ9jzsVqTDK-kTbo5mE-?FK@iE>F6Z=0^m1WkXDdFJFtPt_I3jd;Hk*^$9j zINNY_SS;YOXFT^j$8l&*aMBi)4Siu&F;~tpg1sM?48|1T^b$3WRq>4hCc}UUXfDlU!GJ zLK`rH@k(lsYx{9s=oSm3P$YDOWvvLr(x0b?wMekob)4sw*o;?#vqp-@>XAPR>mpfG z!c&tKu6rwmj?@?=n|&)o9M~5vTy^5WE>>@3AyV?dR^=Nsp}?e-LZ$HXBlM>(eNb}; z*RM8YQ3!v7hm$7ixJH^d*63LKB!4fALy|2?UmLrTIgL8HK=#Yfw8PL|Xkp`^mbl_Bt;97hfU3Op7kPNeKQD^^l1wPsi0Zpt16aL=< z%HQ4u4YNUrL&q2PKFOQDJpS{?v=k`xQG9TS6wlq!jAa6#-fMA8QBG_H)IJX7D0Nj? zLMigI5!~6#I|LODXmobUbW!c%kfRA3NmsxS1Yd`OzeasWc=OkO_se7Tl)xT#(V;$A zidb6wrVNj~V{hgF_#E(ErUAmj7QyBhS(!twIFAp`j2a$sAQdhH1!W}@DKjdX6p9dS&QHuKq#KJGr&25=1?0L)OU!g^|w z2qzjDV-QU&R8l+h(eMKkpXq~d_W8`hOgA4tkeaIau8evONtN%bNqZ?9JEn-M zA%Bz$Ce?A@FQEA`Zztffc?LjZ8$4bR_HD61TxSD4X~7liWGtI%kh(=O)G#V62$T0R zEWh%wg+MYGcKV<1=8{6H1_u*Df81rV6e4dmbY3B4MnHUpC?+)S>$6F)C zMn(cm->iVEkj8n&2W=T#Z9?ui2revnL9QInxm))K0H9hE2VLZW=|yaOoxG+!x5t5v z)}b(i8XO$=kQ>LJXN=w`EX*h$Qy=ey((!|n$!*v#?WbmYno8%IzXGNUSi|j`8Q3y4 zUs`8vimmrTJzq0TfK7$?YV>ok^IaKbY&ZQlm3JX(fzV0(@yP-TD@=I6n7HNslNcXo zaElBMs=J2Q+C|e{WkSv7`6o&!JerMGdmeF|yXUGbco)+?dlFub+aTd4GH>DI)y;~y zr^0i`ur?Ai2Cl{CZgX{UD(4?Hp7zJ%umW7s5og+$qHEQIhy;^}#V5Vicen6K#T{Lu zM{IZvykf)Wz;T_^aJgwSoTE%0W0B8=OKe-ZCWSW6gqlO=rqsqeR1(XS;~}9LZmB`1 zABPgt`jc(5i=CW*s#BqAQ^A11bzS}$#`NVln0YUG!*nZWkP!rGt7pySOWs(9h$3hRD&9A_8{pge(CjG=O&%0sqdq0{J-O2f)77@UYb-^d!YEdup~)% zjH7)Pw?U5$rSFdtFt8ON!~@*ePw~xfFUgvxtAj45)3E~Jo{Y73`}Evn}CILzw& zRoV524aVs_xnJTWA%JC*>3((DJz|>yL(msxH!h8*q3k@v`%#=+z0iq}qlz*a2y08BPcpoz+0`qcs3w+O;+c88wERK6Tm zx-CUrPNnhGJT3heR+6}KI-Sefb*?-5-R9)?HxvAxl{wDP4bHt8uf~}3`=}Q@`jOLy2IJWd+AbB>!8YRER ztOd~6a`2#p-x@!7O}b(;#p#5))@~=QWW1KGRV zaGPtGu*W53Km$D~$XFjQt9~Nr#@k_fS_u=}m%4oVW5lspY3fQcjwX5qq z@|gq8P5s_kdOEL|!gumDrH#F-Cm)P_;23LkjkQ`$dpeguT)Zx#!WRZQu&gkvlY{4H za+XF5jDgkW%5V@zU9xuc-%Xm&MLs_Ry85HTyE6HmL4`7^H6(GNZ+?FqwVwztG&DTC zMPAQ(2|Pp6che9%k?bwpJCX)8>S761P(Fov^ z5x1Bq|5~JH@>xHB-pKKSn0aO?%X(i04f+8VXRZGCyv7r|a|wTWC(dwnJnH9`Y}`z~ znzikjGK=C;4R;6h_#l0G`J>x7{kIqL7+bKI zXH0+c1VJ7F51xc}amJ;iLkidCKDH4;+H8h9Ua5vpzf}M~DWgJIqx=u%fhpZjdp(C2 zxtI1P{TAXUL3$qpKuSiSI8TdK`(g#$=U@)lTqkv5MF_+`4CF;5^i=kiwMBU1n`#R< z5q90Eb#39oXUZht4g&#mTm%{_JxHfO4bG|dyAfQz;e8(~8~NFqX!N?iGJ{&N_71*l zcj3}KYZ}N5-3wn5o7{BIhoH5My&Q7~D#Tj~s#bwEhQhB#jjGZ`@>``$d7m2Pd|Nf+u8H1a&$n zv<0TLs3!_bI@F?4RqFmmP5&rcq#ZTtaX4nQ17t{#Y@4y!27m-n8QI7%+hgRH-vWW- z9a0oD5m```V}quii?bfxTonVVLQ{`;Ti9vaMG2ItoY%yHtqw>=l)E8pD_qr`ej&8A z{oB0PoypVoC!Q@)cR@)X|so0+;o)6;Nh&9HD^y!^E&xuLzs(ogNggb)+rw zJXseD{v@;li_y6sqfX;hc<_SC#ABn3j-`6>I}GtjY%;ST&Ofr_okI{lO@YZhWsU{ckcGs{yKI3rUC#h|@qP3KxKboI zBnU~0gED@t`7&?5>EWO54oeL}huOt`5+4eFQwXA~pt+RKyrY@ieue8}ncB#7){Z(! zoz7WFIHKNtFgsNsggC2m0_drQ=5o$KFSwMGJG8lxjXYBbR7GtXA0SQC0L5k0EV8=?0uI>YV8H$2=r}yIH_fq5AT;6TqCV&pql@Qq->uUy0CP1A`?;dQ6n!8 z!KEKg*P3Oy=ZA6?`lNi1$5{`cUWLPfmLuw=bosaG^S+r7Emp*|Ek8SbUHOCrh#f?I zWIGvm24n~Zi#-qT-ixFK(6J!sJh#-BstmeDW`g!tqc3TD8_YJF&-va^_AWX9z6PzF zkwiMZ%jyBOkD!Mc)kQA`T~{=oxhJi$9072~=ST-B0o;gz|7V6#$5UFg zl(xnuy#7z8>l}1mRiK;vGtgJ1H%&YlGzv=Iqx_W@7wa|Sk^hOBREZijO}or;EL!+n z(J&?80L%%wi6Ap~ULZ<7E0wdm?n_UB10DA0qac=pr3R725E!#2yx3J4?M;lt&nq!r zio$M_S-LF?HqfBaK!BctFzGIjA5Um%9&JVQ+%tKlPUOPk{Uo`k60nmodlRjgXPzxFia>Q%f#>>Q#yYoGC7<9TtsIg3H zX95OJ00aL{jDGGJ4WDBVW7xVUZ8H)n9;%1Ac#xn_7w4y);+Xk7b3Rs5*`rBva+uY< zRkcp4V1ej1pE1^y=lSN#Q;3&%-3Fq2J3tB1>#TEKvtd6kG$|H;5W*&Y( zkT+d0TU~12mYICzd-LF$Hg@OGGi4qS7!TI)qtSiD7#rU-i`2XrDbRU|UJcrvgm{~3`=ggd()gQF}*H2jF2xB%T} zl8G?D=+|#x?ETD1PbIWZLT0MTE^@G31H}J1n();P3C!VEC>;1CS*mZtm^E1lHdHo=IGx0>B4eb*sx*=tR z!HoEVOjL$j3T3W7@g?jFeo~jeWIf~){8@2WNDdw+i9E20n@xDMnSBsH?Cf~nwl77_ z5vz=jM(LS0%&RiJY~CwhcFo8lUiR*AMJG4YS@1P1^X$-c-}TKxUR?B)VKwA zRsYpibml6#O`AGg$|f!u<>0YMpi)_s|8(^2T%~kp+Qf_igt-)bYkv$ST1Q}ZltKeH z{S30BzC)8Jy^I#}HW_-VxnEAiO$5H7UElHQbRu35b1{FafV7+M4g>`B0BG&DV?x%1Xh0K2${ibl3RQh_!okT9?(OZ z7eJc06s4qB_@4bc$XBKGr}8hb9R%j_(3Bv8qJBX}YZ?B0x^nc`4FdPW(WKujmXq^w z3?V)P2sU)zUtOC@ue7p%hIFe^GtYaOG1kz9e_A;D{+A zClJ$Gnd(VVE}guGnyT7w%?pX+aUt_XqK#aS%jw44V6yNJF ztZKY2Qr5Nx9$lDgH7v%RYwY75WmA5Cb4zx{?#rn=k>GEeb&F^FyQ*bE{$#n@wa%X8{xzYHI2yc;|a4BK2 zjN&nyA>zg8+mPzChh;DE2LbK#%#msQT1baattm5u9^A$ zL>@c~Q3^ z^I?5j1Czzn*MhKdh1&%=TW?g}JA4#!dHPrdUiqa$XCJ<9v_67$9L}Tzu57J)uI%g$X=KaaE7^<+CT~eY{?|HUWo@6_NZLley+=-nQySwlZTt0U$t*&Gv zuH;^Vx0bD<21&|`@|UktH!RA%$1!9+y~1E%F8^Ls^PQ4Sx0y|Of)WAggjS(=VKCQ9 zc!!{u_Tf=mdVvEwx`@K1>JPRUPLlO~`c5C{;pTU$Q?Z0rJC2$?CX(Ufh_X?7giiGNq%547CjF+3NN>jx+ywkUN@cvxXlRe2DxV zt6KUs&zExSGTKan?0RBjV+w~jKMAIsb`|?EwUo+^kh_$=Hq#CLg`n+n#z()`N-7=I z76ZLNCYTZBAIQ0^pt2+WUE;cT0YX9slr_?qCq%fD=|YO5uz|YP(03`-#xflC{u7Tn ziTm6&Ix~0?O@->J+9TXccg8ZrQ5fHM@rcYLOAA$R$mE5}PmlJ*-`}3Wu^Ut(EN8IC z+0+R)uNvMuFD9tQJ$>#_8zaw?M9=m8x`YaOL zSl*)Jl5T@WVwxPIGi#64W119OmJ7o0l{pR!^~Bb)NOTu?l)ZML$%%`p)`DN^|2~8{jpfkL!?8U=UXq1$yOq_SJIeWTXngUv@n8aI)wP3xDCZpeReaHn#_^pF7x-u6AvLqhk{~uTC!?Q zx!AHl#6r%U=N>MWw+uxUH#Q1B3`7yIhTNdOk9jA|sq)X=dW*Yvw#uf^Dh+h znp$70b_rao9}%ws*P23j!<)RE3*;hEAypdf?luRi2-rtfp=CPh&EtBh&iyDG-FI6Bd#i?c%%NJ|W<(5$3 zSF@(C$Ag$VqUlJTL_CIM6jKP#7;e!EkM7jy(SgiSTqFVU4gbVMCuB0I{-Dtb1=bE7 zi7BIe_J#vqEqGMsqfC)@6kY;650^_Rk$-| z)W!VxWRTznIEBa^Yes0;Ln7*y?jO={EMBpet;hLSXCa%?l-*w)+T00JHDHBqNWDK{ z<`RcEeLwHvng4!5LRMcx!FXs^>#f@(c}gnGmAP#1Gwe|Rs)fQ<=#2Bp2fUi)`wuok zv39KIV96+H_5!&uHmI9OSMnl?YP5ESZ z+?!yqY1Tm#K7obVDiWb!mvrPzlbVTILu zc~}~j0qQ62`2B-)BnYe~^Uiw(&;z0}B=cnQ5sGcxjOItB$=ZN&O)BcP_GeBA7y@$= zX=|>PlDVJyu8bEy{ps``ho3|YWds6ii4e(qc{D<|)5SoDtP_#j;y~c)FAb!>YraSJ znyp*7JNitEk?Bd-8o|vaj=>c%~Itut4+DHGB{z;$}GD^0=hI^d1aT(Hy2)DUgCtCo5RhXjWE zBupNDtBj@^0iOmVkZr++nvh!-NK%LnDjus=@y$vM{PKxNS1cx9*tJ{xIDZC;pz)(!E}WcU7vLCi8gLz>8ZtmyEWXVeKZ{o1}pZ zMvjC!c9)+*+Cua*CDfB2;GF;A0;sK%?R9!Yymb3e1>WPwcw}8N>P2$zYtaJDrdG*$ z@K;(ZZB*=0k32_%?l0AG!&Sp#XvX2i1vZ5TZ$B0_7}kZSkAA^aiI!V@PXnHu4z5Yb zx5}zs)WA{n>_QQr?Bzi#`R=o@sRYT%Nw)6f*1E?PuN=dXy0#g#JE0#a&h^DGhn^+k zlI5B<;aMagNJW|YuSKq3!NiGB_P9F)YBKjxmOb0|35}6dF@wkuB zKR7<*GveBGkC9$^<8dgYTULqKBwnnaDsRfW^10D+3Wlilo^Ew_qy`SmxW62QCp%Q7 zh;+QcZh4g;`FA3Q$G%1`Id(_j#N(&#c%3Al6Oi8$hydFn#sRe72Y%S z6?6xW?=yc-gq_Ux=`M}M*tgs_evOr%jO|Ya8=kwh_y>`DYK8PhH>-Y@CAojA{rWfg z!n$I;dqW8Bko)))m{w?X= z`f7+THbfmne2e-on|)NotKT0`cU*^`>v^q-jjYPNrZ29-%$8R6&)LjjhJM_pvA9X= zT~O)tPB%@6q0-UHlbX8k$<0rE>ce9C;rnkommC^U&-#LM>~4GFU;mful z>P~+JDL)v~SJOel`Rub*1Qy{rT>XphEQ1Awtjc1-R|E#}6Z~69JlUlZMI^i7eLXK4 z3%gK{TXjSnq&860*Px5OV+k_Mru)YoMs*^=pD14b=fEF5o;UQRcF?CkHknT{7oB`+ z;M-WqRY*I`1f!MFz>&wg8)qc_PVR5ZGjKo`yt*UnXgvcou##gyx3dlOF>9`J)ygDB z@--PiYcmLqv|p80RCEF%*(Wf^q?z9f11DU!(YqbYf~En|sNf>~)($Xp<5LqHPvAIA zndW_u(JE_!>h~$}`^VXx>E-3+zk#7aT3VX0n!38#S<<Pk+*7)fJWh!e;cK3xgjg+5DBv_8uG(x%6s56moDBeHDRD>8O4qIrK5pE`lW@wfxt@j zuM)?cr$2ZW3}rIX;*t^tE%%d8z(DB3P9Pq!|DT{?-FR=7)?EqegPF->V`t;%#H3-C4 z#-n4d#JxoWsSTf&Ur$Tr&T;$GrLlJ34>q*hI3ta%5pG9D8X)kBYa`tNUsnEP zavHRUJTG?KnVY-BhWd;h%>oyX@Rh*~Nn6{J?yTDCJlcf3CBb-Olk;tZXp}DA&DuFj zM=KC{$|KFE-tEKF-+w&Y&d%Hj zx#irj36s5k%q&;rdtPxX?_Nt$QxC#W$i@`0c@2c5xiUR!9H+iA4w-+b+#o}SWBztd ziMNYyZt2y^`(?4s( z_oGHM?hJcl7$3>3K_1wj6%5y(_PDy(ElIe@T@6~w@>KZ1m3I8ttDw>K=KSeeK?IsR zvFf@lseKyq)OEX|PU?}K#`W=I&R};xE@tes#=BXP8aJ&1ofi6$3jX=L*##3$SlKvXtl<)1{gVgq?L)+s7RO|r&@3=$KwJsHFG8f z?sWOtoz8>Yo6c8CL<2PzA2$ALBX7XQB^Q$)>z{QYi}UoeU|BsnNz|xdP*$wVvO_~4 z33z0rf}N_Hn3cJ<4oYJO275J$QFq3X@dYEm8n*7|@f?B>33Xx70OZ{UE`xX-mKX^o z?!zeuZ7why=W7WUgBLn3$|u}~e{oiFGG57H!XtZX;L|A{+$}6?&W%9$Wx`{)y}p`0 zah>GpE0#~LqHu)c3XbE0$YTi0AuZx4mvD)hvDFTJCz?;Y+5+ovJYC69-Tb$?q?u}j78?+ZyJ(Ph1NsL#dP&>_*Y`TXrHVaQlyeT;C2xD^(l@9 z`sRUz#FTN9H_&ksC%B`B0mv7>pVCyXCQvqq6F-!Ymv@t4}oOVpsLdmqzH_r-8czUCMmmb;NF#>xdKw|S=|tOjs2 zFR~a!G@^vhEHPr$eBsR6Od>jtOHoFC9wPbvPu;4R@NVXH@Dd|A zt}CJpJhIYM(^6Yrkn;@egO_~6{KR}?Xa|3rfp9-7_o58GCa{e6n@{~#{@P@=2n=c8 zrv(Z@7O5c3(O0I~Tr4&VZFBM1{R!w8|9Qfk4n(Bvl|7Jp{j|eaJi=e8LeLg8m#URk zx>KlUs|`XhOa)jbam8`{(PFjGoznI&*V5qyThjU;a4hWI#)DKb{SZY~Dkv4yIOHXr zx$BVnvavsYEr3a*SU>qm#c`LFS83q9$Dup)g|BhT%v&Hk-WRsHoh%LCVh)6@FUCw2F_%a=@aBbzQT9toKst2U*R(d5?$~ zjuoBSAx=hl5Kh3(%~nOR{HDKy!Lv^3F9jRVwM&5_Jid>kfOkp_eu)3u*=L&S;%Y;_H|B?{{B8G@w1n> z=_+F6I$CozYJM>EjX8Z8QmMObExE4SL2gAZL&7puLj}&O=IEdpC8(GT@kilUPH%jK zr74mPj8bS5%vT#N>>Tnq+$+f#bK^5R3+HBklcLM|cmbFdF7Lm&;0p-L-Ciq@W9Nt7 z9|;9<$=(Oz9;Ou(MI$LhqAMVQHeU5^|dVgwzeVe1r)>Po2kgxF5LftbcpL>jW@NytQcMh%|y!jbChXd+E-vPdhvOddOeRQpmk zf_rx;EkGe&?c_Q_sm}eMBh>#}X!I7AhPVpEKegdgh^P)rVzQ6j9qLfl1b50d{D@FU z3?gyd4*lU*4erW+Bj_PyfGTSz)I5{oGayH%3!-ripVc?{%LR)HCzU&S(3-c~HuHoZzNS z2ne9`jEsx}E*#88p{nGyr!AfQ5*>B>7_Gs7gES!iB;~EdaHY;UJt;_5TN}g>Y z(mwGAU)}w>xPmc-!?D1Li0zOBCxVEZEFU9D6!Q#rzcL?O=8HH+1YAJ+!APgu{3aofQk3fUs>pSPYoF%;$6`LOXsdp%$%iv8V$d5}cKO!i zud{sW>yA|j`6>Z@Q{LxHUv*(VzEx?3P`-(Mzco*pFZnH6JIQVQn|LehkLh9fV<#%X zuLm^_rZY~hHLpwXQbYXZhFmFc1G&)qOHvr%@GNtfd@(t1dkpjTl8Yeu-DCXX`s|z# zk;T``8B7-lLG#ug45pVs5DB;>)p>0$Ozl#3Rv-c{#456WD>r^_apG#8h0}Wd6e{%n zNt!sWUu`)Kqfx@~l^+dOO4MC6PGj3nD}+ABG1)Zv=g&OH=D3Nf&r#w?E+5bo?0(ia zWvqM9luVoJSXr2^#8;qNB9dRT$;|~amCyxg#lw`B`#Tp~9@=P`9LZ}vp=P|y&JuaZ zR>1^A!B6?}sdCFp3Nz3RaLan6@80aK%KzBuq(`1}M(bIz-sMQWS(VhnFWayeq?Suy z`HGrelDt>bz~#IMWU$Urd2qdaRVD=TT8sD8umroedTu8Wm}o1E8~0zqVHR7bHNm06 zd?%%CiE_0K^HQ$MX7>3}cMNY$H&Vf|C=xSx4ANYokVZg%eK~VBeU$2Pb!pSfd$jyl zkbdl~-LmZ1Pp1;sgB)$fOL}7ROvxtiF!^4|3b3Elv|rY?{YAZ)cGOsywRNekbj@!Y zZ%*^LqO=uisgv|gDf*wV82DZlJaLU>EkVUl^SvBy)Ae24Y1O0!MMneDlI6=m31N#t z$<}+poD_^3mPdgI*X{6@mSr!as&mcm+kD;6Sa96g^+2bHX6QE`U3_nFo7Kr;1R~39 z?=Ntf3jxz=P&K1g&4kKroOL@$NLNqK2d=-dwh}@Z=)3m1L`lhq(B3RK7CM|lIl{zE z)7s;#^>*gfwX@){9Xek@1sEn0dxsd&4zUZNX166*51yM?V)s?Xvg}c zd^@{bty(q1-gril%1k@7_ngf_uxJO678w9B+3tWOb30m?FBuLS+sau7%YWp-d=leB z;Vd@ox+h(ROrKR$)_gwS8d$-dQNa#9;V~I$MaZxUK^g&z2(gJIe_Q^9F6LA$6j9W= zkjMqZZV*G&$G+GFl-pnu&AGzhQ@+tUyqjKF(v99G?nVPDKF~#ZSmj17uYiLEzUnb5 z-hz95mA+~Ims{OZ2^|o5>=n0{eNv`@gA0TkTtjpEk<9 z;f5(~6~u?9 z6PyTU&1p1QUh>s(Df7?*JStgG;=1Bq5Zd^FiFi1dj;-tx_w|sxdQ9Oq%J5v zcvIU?QTuM8tUUgLIcnGz2V-#cONp?WM^HR(ZKhF#{pLeN_f{2%LY;x7t-}CF(>w*& zLn#qtcHNfv$=vePmV1Tk4&tD>7O1qO+>aY6!z+D9gI=wc#lxPk8Tv;?o^f}q*#P^i zsl#o9#*s|p)qzrxJNrM{59d!$AcVc?%paKoy?L+|%$ksA+9YQMbMJMNzC~UYok`Z6yp$UHAq2;5 zS@8LMB#KliPfc-B)jh_%oSyFiWo>}2Rt(GBx5G-HGHX8f#Rkc~s$(O2V@xNWip6KF zWENZi<%JGS$KP6#tH#JSN=b|r;ip?aK|Iji7-gJ6AsFLFb zvQqI|dXEAai?y2PDND!O+<|kKSU)h@R({^r^>W;$j(#-pbL^;@ln1TRzy zt=d2I154O6<2*WCL5df(824W>!(VP27Me1qKtT&$uUD_-Kc9c1OYMwuM|TDqvENF$ zU#w{pPejs@b^%09ABZ$|efZA>y5bH9KD_zC$L(=;RWQp{fQ@zYvM77pKUL11OVrfgzrejnQ9)pFPML>M)|=)&PEMyFlsAHAaOMPhQZeT4LCql@UKa9~vQt zy1uoLNfmyP+56EeZEkM<9W1Maq$HxWynI9?HS%W+_E6|Ii4;b6DTBTAd{J2kM;Ql1 zS>O~?4rOFN;|o|xUR&StaP47*a5&FcO2rR^aJc1IN>0|*4U(%W?Y3<}naT0ZgD8kd z<}$ym!CA|9%(8k3_h_E7s3wErN-B%!!ZB&bA1BE@{HxN0DLl{zo6bR^@I`2SZKfnU zOFdpAt(}Lk-d=Qt!AbXDvDRXgpV5oI1m&iFNt(1)-pz;3)p^mhAO^*LmI9 z66)l-<>F$2U1!`60lq};G#(dgBUrz?BVN{lKZcLm0fuZ_oWr#0t^@yRf1ttdZ}+D> zI2|@MP7W*THP0=ZyoIRq=%GTq6GNh`W)i*SRYd#ftC(Gsz3%=ZLqa1SnO3FhLi3C- zZ29zDYUc@ykU@uBvFR+g>QPsM1cXE9Hxuh-;_Wn(hABv=7VhgB57E}bjnwVUs}RmB zoBCY0+_m89|iA&Z4KH4V{2?9B(vzM@7I!ERQBk*N%q-Q z3&F|q#5UDh)w^SY^E$g7URymr8VAK~3Mjupk?!vSYEa$XBH4ZH+Dxy|7oyTV3(@1`{srcIxrSLOyxZCb$i!BHNO7Xh^cG zdPVL$;)EjA(%X$%++D407Ef5WD{XtrKelnzG2@{eK6BVTM}W7~Gk93z`)KmiWGO!O@QvI;WK7w) z--d>aAG?>jX6g?I_aS$od-$BvnG)l;6|4qaS)6O{j9lO2I{hf>&3a@M-{-t=E?<-g zOC&@Hbur*In_c~xWnI#r3H1z}9y=gjLWtSAQx}7ht^CYy{lEl|Cf8T2RsAZ6v+n5T zSgEnaPQ9oT=jbVXJ~ zt-8!{^3++H^cE?9NbrLrm^6Tmy~*k&!cEYi)jl(n#~#^sK9GU)@}^payuq;gg+bF9 zA4B8J#p|5qe3w-Vr@amWgUQd9o!hVd6as%L8Eg$c#;TBdL+*}z|29*R^#z^&YJ1%4 zkV+Fl#eslI#b4oG&So!0N#YICgfgso+xk#L-lp1&Hb>$=_*GS*%Q1$M-obC%Mnm1H zE<`PIpjoz!6U{Tp0ZtB*sWL-6P75D{L$z^9SX6jLEKM>mdF8J=@?SF19eIXOY7Rtn zB{dj4nd%DiK9l?RevvcFhyYhzimF`G=h%WY3y#*c5`X%mMQQRPo7~nS z;^vXtM~BTIYlzX$G_wif1Q?aY>f{ScW5uQp@lt2`50j(;>IK~W_CQJVMn;2ncXjHe zve0`n>{dDpbboMSpY3y=99BsEXdKAQNo-8?#?`rzJ?}T zo&RmFe-9H2rvcZ6Xq@M48M7rE?(CCJf9OnCSvPNim%ORSmlZ0ad3r(G{8QVP$1RVK zyM}_Uct-W~a3|bc8$arT=Avrw>P4}_N}x(vsOAU1QU~qQ4L>LYoxUkQTs`n(AE4rZ z56i4*f0@lY^B*oi{L9_xmlUTtqN9w28veIUdvslLDmIU&o3E#35Y`c~IWjfAo z@LzT~2uD(L&`I%#Ei|=qFuEv`*drB6+*F3NF~;7Z7gNGNSVfm*o?bFZ?T z3k}|plasTW3_K&@vN7;gMGuZ?=9$vbDmtD%szV9NW-c{qI!rz1ocU>ApKnu?G~hII zvFWe~refy%-7QKgAJtKyG+ETDbx=CEv)q;wkc%@%k>@1-mEFEckIOWseMhmC2v*Ch$LUO08ULg^C^GjpO#YZd;J!ozSiKZz( ze;LQ^a=1Ph@oLUT1Xc-fhs7wP_$jO0hc=j*ml-e1sExO;@) zG2BW0T{UIDeT6smj!&i&&%`&(%jI5YTTg=!CO-;=z`!f5|R(;Mvmc75to{aUjyWk8Hm zNYVwfvc#Zw86<84a$B@5k)Ys*kG5Gwz{HaBB`ujHS6OA5o9-_v6H^LEcb<{>UXo_Q zG{oXZXF;%Yj#3*GadWtt3J0m7jkEiwq@|^XpMJOeWIcFpnO|(7(uEK!hrPF?4m}P?~)%G_+yYwbEJy-4irTU`Y{odCV@G4WL?THfMrKvc6#Imk^j3wFxfB! z3Wj_zx;OmhxhuC)xfrg#0HpHkJ2C)4Os2T*7>=5Pjv;X+7zr7k8qlp z7p(Am6f>&QrBwTJ*W-snl86*Omm=3nsZ+&Cxzfs;KYA;Uj@~e>Z37f1Z-r}r$qY2q zU|XD@-W|gkjCi&Iqa!;!F(_W>Y1x>Vj<4FDUrFvC-5qlrq#vlV=^y!g`=0n!+%)6u znWMWaM-?T)0aucm7OU-=l>X{xqk(Pdt(HOQSZjU|FY(s*3j8be-Po*&i*`=dm*;aS zap1lZgTBAuf2Sql@~tm=eBpN1h?3A9h6MNY=+UxAY5tAD5Z`M^2wGZnz^izmn$x4u zoIGwgAXo8)2U;kf41y$sX%EH4XYT#j1O$&qN`9v}BjoDTTysJqZL5sxb1jn{?kyVT=Q#XaD{X= z*IVrP!C@ZB<5c`)wqbo97hEMjusG?)%c|5m+qa(_#3!>L$4Zj8cdxOkA35m&x3GUD zXtJ2Ybb-L?y_8z`p10Mmh}E`md3_M2?)#^_YlW&rG322g$5cGlWV10PFjq{lG^S#7KVq z28!on^k&E|U)#V6m-YWM_D)AphRaI6av|A@=MX*z&zgm6wfrW}*x z0pytaL1*|f?7pqk3qPpDO6=JenAV<>@+5FweEM>rNb7XNy7UprHjj0V?04val8iw~ zlwBq>CIzY5Ns>lv7MII5=MQQ`Lf!c{_{of#k5l$6oCGqlK2%9!IO83I^J>JoTYujI zlF?=68v8UMtA`&=ErHWmK=n`mU2*`+G4i0PHPtIifqjmOjaz?MAQF@A%=MwEE#j3x03zwCnz zvo!51LlV~|&E4^8&k^ew9)lEEq;;;{=Tb=pIfKy`-572f_nv-^-Y4VrtyIi%oN&&u zpWU{u80`L@TS^?$9=eCJ9k6OsPB6Qq-|cgPnCZ*-Hk*^YdB0GI5NfeE{}{2Xvd<5x zztA~g){%PiuE~|qWciy=t zn4C@vnxPsH?KwIc=(j4P+xA(KJFnJ2h#(G4&2zozVMjOXhqU=+rv+qX@aKlQ;wbho z*OKdfBYXX#5LYeKtjBFv_^%T#Z5$tK{S<^w+QdF0nLc>@ZfEqbt>z3XWf|f?%+#av z*xY?Ho-w(RY+$Ia{5aozPmWvexqA_h-F(WxB`U%95e3tQx25_dtnf;Ua(orTI_Jrt z$h;DSJ5rhcvsrM%)frv(Pv6#!Ae3crH#6@u={R!MKfeOS_pVN3*^z#=$`X^YEz*RE zvC!fu9%|^&{bHw8*mRz}oe zh6XUE-UYJC=eu;=Bt_I+1#$pN$?Sy1zhUL@!dzY`RwyCRK6x52T6nj&dd#6CyT)S_ z%j`Ugv-3;;+c(Hx)%7#a5zJ>+4he5Hjw2sAx7M@shzy7azBJ*wKWg<1C}TZQgL zxOZfQ==L}7ZVTdsT~M49?~|3)vQu7q7`)RkfPav(?H~70TP&2#8_Typ2iL}5741)y3EwM=rxd<$i5qg|0F7!_G@GKJ$Ej3}J=4mH!MOip`E(>Xeh zYZ;%Kbm>ekb&(K~t47#oHx(B=W zHgykp95v>s$2BCEF}HTZu`gOa$bFLLvA8nZic6b`Y;Tel?s2PC#U`_}%@J3>hw@6) zRee&idqmuMYP7{1-_Pz?DaG>_hsX$JS?$y>A+=!oKfQ< zUxXb{TyMVznbu1+>d^`S%D(Hvv2^{gphX!>B`(Dcv`pgT@)2XGPgZ(f;)xacysF&c zmno5wx9PTM^!c5HLw>GWZ<-lNhXgD>M0oHgFB*_|j34-(IsjPai9UyQhq1N5>u zp{2==h_nEu79=1D01L>Fj5A)i;&Rq6#?VeVta~?%+ zr%ikst$!Mkses1wUn{i-_0N5+91eVH-Dy-i90&_gGqB@r!wb$%CxV)XHAlF~rrO#T zbr%W-LrUzAM;kp`i4f~ zXdl0I_pfc(TSX81%y9g8?919t7YB;g6N*1KFch2miiwJPjI9{uq?z=|)?9X|)x-jF zsI2J(p>#KT{nzUt@@r-^O?l4Zro-W= zxZ9utf(dXQkIf4OH|Xzc7HGfR9pZo#TvQ!r|2ZYTe3>&d{>n@l?$3S5L$X)2wR*O? z$f!BuL?H{ne5dUcJTlcG_VPC^~IwCyI0oMoX+d0DC{(0u769}PAZY_gZZH97}8httv_e}=VqZ|%9 zE_w-?HdSA&_mipr@DK_9ehk;UZ5^`$wXjG|&|+5AY#rRA8jMFxI}|-qbFP0hT5WPM zveO+AI(;5BlkI+QB?=Im0i$A~PL#(;ky;H7;Obawp=wNN7MX3UEz19Mz63Fh}G zIz&-R#b7ZAsWB07ZO3-h@!93K5k!pq?HkfwU}N_6k5#KT|3L&`BsAr=LG=|AJfCqz7MU~oIHiC+QD-%F9uK&Ob?0I(8blmu=E2o<$+!qI^L$tasM=Y1 zijp=YA%?SR8!QeXM0^nW(N}s}8E-DI_T-8OMwVU==ZGr1YLw|!oW(ugt;-?pA^w*a z@aGi~aT8+#*ci5yoc6laX2xkkM%KJmf1~T;!+Qyx5_=4TK&?@{yU0Wqc<$RaO~^<8 zDgNncg5}yd%iIx(CCJiwW-|zN09$fIqE!IO|3lgOf8Zr}(?QPWhp8H*R% zH%FPqtO{Y9Pc`t@mfXz@&i{;^9$VHVw9&m9k2qNWhZONPvKfS$D(zDI3O{-Z*V?Ry zgPMXlYa&EWi#;4b+P*CrY;pR?Ls)J&}&@T1qtx9f%esLV5Y0f3Sa2())XlbA;kIjBm0k zOA@B?ytwi=k-)?TZ8NiKW*|)g!Pr^J>QZf4Qs<0flXqdsH(}|~9g`+*Z3HPY4~|7D z0r?M$XM7998jV_iB;);a5OOn7RT{9AZefb==RRV$kZK`px5f8j_H^ zvnmpokM6OCPiVYiL&L$eu+I*t%nCm#Ku&vENkK*pO}%lIHiPJ@OLlG*dF(M?wCUmD z64e%SwLIoJ5m(JOo68q)k=K@gm2NSuPF4+=6EjkxvgS>n{$=j{yA5*Donot%)b6r( z^FERj?^hAkkLXD)U^_p0XMM2(-9;D5Fme<)LTeah`0Sv8!HREP>+~kfwXTx(*HrQl zJ)pJDwXUZ*@gNWVxZb1xeO&Obo1_UV`p{2`OAWZLag=#=sypM)pT~&ilY7LL;!KqI zPYl3mC3YLHVDkC11Iz4_rV;`?peW_V?+P#0H!xkO!-mHhP&BoX z)zBX~ux#g85NEPGc1YYp;+n~A=F;!0JAwnK(9F0m z0>`2kHeTX_NE#|`x;7&qOM{V1EZQk71#<^veI?{2Jsyx8A^^jQkTRUDdUuvFI}f?}W8|3eXHB;5s~9O=8zht(OxYt|ezu!QWzF$=n=e`nc0GGc*z%TZL;zl0s|ZIt##Um*jLX*-RfCQ*+Nn34CFy6&NAW%eZLqdJB4 zHW6)X{DdZfwGWC`34^g1gt56rL0YkIh&mw*reoe3`wVWGK36IR9l_P^rlmIMBFx~& zBUL6QxO(?CUWMyOOggRYAZ_QGfJNdEi(TV`;MRJE;$z=DWLHLnwug{`kDzcsBsFXP z-!%eWXZC^{mn&@QclR83;T9t^>|49Xvudpa5ci3#fjR zt6!YAt$8uqF1)2xFS6Sh91t+5cEaeZ;`v$4`sd|7PU9A{H0thy-o8KA6f_HTt-^58 z#JzVp*TlV4=;cnJM_7zSHN6SvbPxZ@Lg->~19V^Z=A$u`&Zh*r}*d-)T9+@BZ8u-X7N-<$@~UmNn?udMpdo&k;= zLG-}(%0FzrLTawJ*3&i-lPhj^_&pbT5gF!gy!dVWVZ=vHaen+4UVX} znW4*#@Oj8BL-Dt@Md*r(`!S&VOM&M3wWel~ihvWNeJcs^XMV}kcQ^=+rBrFW?(?OS z`)J-%WuqVLw$t6l*2;~I4I4o8?F4*NhNUYX=SL*0LTEeUC_cApc1}(oQ^Tdt-~ZL! z7?6Jy`jzWjLn(6|1IloV1SGRX-h#vm$i_G2J_}5SCEhY4a-F<2Kiv4V$s5gd)vJ3m z{wy1V`Nzrn?d*Rz6^$4(`uV_V@Nz$cpHLX1~M4k;xDU{c0KeZk1k8Ed*$cZvSETUCSAq{}hsCUnl~N&R8?|apfnUWS3_^$`IU} zuFqkFbIEG3MVI)WhRRRCEWcL4NY};y>d@<$;iz7HKEOg@^|*8$D{Ws-2~xKcwQz;9uHFPL~_5sfO_Kf0^CYXkcED*J>1N`0^!? z_O0uYyG|Ah_VdbzdF18g9XJRmFRw>wNu)@ zy8nKy@gKk>zXhPHj3=BY)@>ROMgw0kFO6I@EG+yD6 zy;QL0jT&wW_}_FVP2T_IUk{g|f@`3hcU{pe6$wt<7u0}x2-2r7YDq0|r!mdEwuo8i zmsRpA1K{aDUHGyl9^CRQ2Ju|)ww@Pl#_m9iXzll&dqvdyn7Rp!H&ON$2QemQxn76h zn`295JjC3m`X44E)j4k4!++FiBbI>Q0?4fB3`?u3nd$^dgUHXNx0h~@AH&rhA4@R4 zhhd_{5|Y2{DHwQPjX)y+6MMFaFQy>r#U2;3hJ)#LTGXBDr-5}; zLA2oc0MB`lyCO19W-98xR1|B7YWjnQJ6FK)Q-e^i7E_w&#J`1Pwhx&KHA7t9`yBuOa4 z`mVYAYB@kHLFe!v^#;E=Pw56+{ov6KUIp&%a1@rGD^x#=>n)pq09E0SYuV6KZgoK9 zv!g7;0g}^&8+U#`Pdtee7lyq6agl>)F|gV>B$49Hx;IeIoc|N2&Z#YQQHmUEUjx;b zRR~ekAZ&Pzo^9BIYk)Dx%7Br~%>RV=R{1}2zw-GS(}JDGVU_*co~751Y;R1UC%D^J z9s3w)6TxD8FQ`&{z-d6KzsY>5{&f^BEA3rsC;h~C_Qmv{tI)RRYwA8saH7XV7BI&G zMdp5Uxy5`z6Q~6x39dt0%^za^j`qlL9E`5_%kMV|z9w|1%5T)@X$(e;;~f0b<@|V- z^Cv=L@^?$CnPO5a#+lz8K%ikxy#^*&B>9Fdd1B5^I^4#N@ zBOn(!n&AZ=>Ndc7ndr&|M0^`yVb=x>q%`#ofuSue|M@J=r^EFz8(<--XxHv<4`x3r z@mzuQ6M`0ETnoX(>EfORYXYKN1bX@|h1Kkk2u!)J#(D1qL$;dOylSjEuSh z6nB4_(_PQN>*VdA)}ZB-r|mdZscV3Km#yX!J2}f++-tRBgTSrI*vDfUcZSm$h%}W# z-=g31nT2j^MznoHYxiv>hUd}$HwJZ1X~hZe5y$;koV;o*WLk!D{GZoHEoT1!0%Yi3 zFMoZjM-1O3U2xoBXU)!Q-zV_|1n;91lh=;O`_&GSfhx zkkKSSike(&GvZlvda8hX*Gs=AaI7Dp{9&&72AULWth=}I3fYt4Uq17LYarnIGkqXb z2R)7J2QL97z<(*=H@@b!^6jk{x`i#)_M7eb%&vpcIYn~Vn{#LW!U@L?=G&? zj~SQ2s5~`SR%#|9p@*(}`(AjAUH!m)g7{4r!2^+}uSK8H8pD{5IO>8B@rjXd9W2@j zo_KeHneSS=A6xGdYsl`??S29_Va>DXLE``=cLVRbn<0?ACpEE4Cop%8lv$$3wrxsi zd9hV+zCth&Z9B#X-fKaD0yLWojh^A%++Y|{*4*WIaHewbrtv?_FXLB0IwVJHfgLg< zNDM?}4bnN(cx1U&{ckYP`_38#Fq$3U1(be%|BKDzvUp6m%w@OJqMlbL9T}u%?v`iX zJN$}Po>{9wX->if8^?_@lwY~1j7=D`X;&mrQ`*W|!N1*LI|S-8?cJBHmDclq=E)g! zO!eox(SJ!2x{lK|pN$LYiE1pso1z_ayUd7)e&L{hu-@dE?4LBYh#b|BytQo$_X0{Rx&L4++fTxWc_5E`iFImS{9m=IR$rT!3 z(s|>?6D4sWfsegD$AdQvCyl#|@$|ILGVMO@=7b#M5i=(jy_^zY^vI@Sf(j*j0`%#8 zQtj`>0v-QKQJ_%O)KWb$lg22cM5G(X>dEGdxV-BAg_2=uww!)5&hjW9lXEL$wc-3y zd)1XPDxr5mzg`r%E`n67>}KGs`eF?q!dO0|oEZh?l{J8gN_Wl!5uG>l{%n3S&xF28xE4Xdyl#B$E+@kR zKWDv0FzJGd&9H0P5SPE#pTL(kcxuVs7r|VoQU~S=5cm3023O+NX5-&yrS`=}(=b}O zbH&Mm1?PPP2k{YraF9lZ8p-K2W>XdVm6v6tKsi1s3hN8W?(b=xYh8tO&n4^a!(+S_ zj{1O!sFT&8saVeU$Ee#3>>;5}GB%+yr2sWmoa>Zl+fMj#X{9L#g%(LC5L z-+8V7#qW{dpv;@3crLX`wlJa^R4^gMc9VnakWbKb)xOUd`urbHt>s8la!K=LvdmN| z^4F76y?9AV-pDS4fbvsEOHG?R>^|)1cBvxUFB<1qb%6SE_s*@-CkGH4o00pqLJOfL zDo$|={Y6;3Avw9scyFf6%ptP+$!a7wV9J?g&<{}Z3SiTe>_sN{PzUTXHUe~2(t+TLz5vAK?RRb6*GHKBn*kx`~U}LN6VWY3D{@gY1XYZWo z9-P^(rO%M+wFDo`coPRbTR1>!+MCF2Bt~19E=-RDg}~JIY)Lg>_JdDRajmzf5nq*$ zDFuU4!P#G79~zs<(Do|Y~0PI)7H=e8sAXg&IiCu2T_LeZYJ z_|s<*m&&%;G2wCn0E-A*`o}R=d%D49B5dgb3aWk2jGvRHGBskRTfa|HFV&782Sxwi z0)#(4kRzqBGS8!%Kce!z1D!pg*ePpx4la{pJs;0R7z1C<&j26cWq`{csPnXFGN}DL zFgv&ngbHCTx#z)r;ilOErv7z9;~}Tnm#Z`wDy!5RTGdL2AdhCUApN%_!C8lrHZni# z(!_#nA#;FZiFjuVA~2vp(IQ&0Z{*+R?MXDCLf}_gQ|Rm#Q7yun`=sCPXwvDS*1>f4#ikK?RO;$XSzo(0kZCx4PLuz>59XYCVFfMbodV9J`s zclVYlhu+Ol+dH^~<*&@2I)EZApV9eYlM9E3PeO7jsmsjM#vtF{0*=(2O;D#u8k-A6o5)Y|>K`t!sy8 zU+YzX^=W~gBUSp+!eX9weTNN+$@`e*t%hiV$3?5OJRSJ`mYs&@7Z3_Kg7QQ*jbAk{ zECup;@JiDVbslyoizz4WG1s8C!|A2Ha2;JZbN{VM zCJ}IpTc)EF8-A%cuur!vX`A{;A7Zn6m%{SH5ap?4h}Hr52PtF^nCYmO&}%b_&d+Fa zbw2<>WH7uyX{3Ebhjx=+iS9BfzWF&@`EjhD3LS_@Bo6{P52c+?dPt58e^6<*IoH&o z)V*NmjdXnL1$0h+mJyU+01t=pD>zNSpaFs&d&{^aqL-G9^XR5o@=FL1Iq%__93U>Z zQIRUOW7Dw);~`$_$~}=*s@sEos=|eDccGJ9t6V?gUz3bFUx?@o>rEAU4_zcO-ru5g zdJ?s}vI5k6`q5=vmX6t(wp^WlMS18$o^?C={dI&naxXx3$HLY6U-PSzIP4?#!*eBP z)?auFs`K+JPj>WL($Bj&;oN4Uwb!$_6@T18O5FNshvOH)^l$Z+o8B6HnbA+~^ zEe9EIHqiz~bi(MBJhO!9F7t)U?z~1;e>bW$ib+{*{s{*KMOB6)^Wosj?hAy7Y6fA| z{@nZ!As%MjU)RD=O_&cwQ#Yx$=bkWgRG^90|lhEa0TusyM zMjvn?#p9+7DXv6@w86F<;dpx(^}bW&^(HOoy-tK!n$T}b-UQ=|k7NiDVg{|gFk#7* zKGl&@n4EXr@al$+^oI|9-oot!RS+B);dH~FccpK(&z2Ad)ABTijlG< zoXp~BMCgw;r^-cf+Dz3c`VAT2*&I0Q^EwzUw?Sq)k&sVISDrKs($0m&n~BX|flurT zwa>((Nd-bdMEAPHIwu@Me zcatMMd9%&)wSmnEcOwrithQup5K(Yg-=*{eHM_d9^xAY(=4&M12Knn*mVlLn$1XZo z)pw0}xuA?P+pL!qvmXBrzL&>GNjKy2!tJ8Rl4ADNAK&;!;rBgca$JsYh53u9CwN&~ zY;8%tL;Xe9(5DU(ct6$HVEnOnA-G4>xkuC%Su*aZ#z7!h)iA(mqlP;lJ7iK-54eG? zhF7WGH#Ww|t9Wy^#jP=ZYsvWBsgNH!R1rG1vl%QVyIDte&|d)(>y`j!VGGWji!=XI zt&sa-atmyF7}Xc}9P7RP;ITt9RnaqPkDZ26R3vI|Ol>d8lq-7S;1YdZYR9nU9%#2; z{>>$MZn58l>VW|{G`Cjovkzy+=$?f{5V<#L+fXI6WEBr zMg%tU&36d=$j{DI;MoNs%8%ijz(xc%vH~UqVf_DxN0w~5j7sBA#6;N%fuFO3yM3iy HV8VX@cIvy8 literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/editable/Cortex Innovation v7.2 Single Server.png b/content/static/2024.11/images/editable/Cortex Innovation v7.2 Single Server.png new file mode 100644 index 0000000000000000000000000000000000000000..e72f2bb26abafa98c242c6a7f3a57ba6388adae1 GIT binary patch literal 26720 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 D7GD6E literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/editable/Flow Execution Requests - Duration.png b/content/static/2024.11/images/editable/Flow Execution Requests - Duration.png new file mode 100644 index 0000000000000000000000000000000000000000..6d667c4d6f908e6b8673b1e86790c46f02b22c10 GIT binary patch literal 382464 zcmYhjN3Qfr8yBL7vN2J?mY;ac@ds_ z0V;mKARFk@hb$J0#i}SsKr&1bloL{TpRq0(_y!KLiS=|LULB<@nzQ!vBH5 z0RKK}$6`8HaA^AA3x+^5%7PO=X0_Y(!3&1l z*D`24)6X+w;d{q0P585r1OYZvG@lOcE1Jf^6?Thow7&_8hY@jt(S<_O+NuDBup4yzYVT=3b)m}xIK}5t}g>}|}W*XUXIRqn!F+BE?3J#9% z*wP|uo%9Es6(6v_ViI>3_*aeiJ{@nLEv*Qp}9Rt2KTAx=AA9LXdeV|gNL$61R5U1 z_#jpM4o#`d0hL%@zHdxnUoamqgJ`mGK%=bk{ZMf8D++=zWc2=UyL0ANW(n~-0q|#Z z9S5D~4f=wW5|tL+7Pz~&^An<+K^G0Hp_g$G>jxGptE}HnB-GGozEESXAEHNH?-Fo( zN>@fS0)n9%XGfprfZ0(0=9bNM7L3Cb^s_KpJ{ID`9668x;H^Y+Be45gu|O}@R3Ocp z7QB8q&l1}}4>rL4uFW2bpmc^p>`ncMSx|M26~8;vhT`&tkULLD>Fo{pmNh>YY2q=_ z-_f@W>ZM{EVbk-1O)54@p|Z_!y0?7_9)2I6!Lou_ey~a1M5bATBS(dWgGCnSl8brK zEO@OxVVFGEiDLYAZ>8YZ>2U1Vf&x)S8|dWOsZ=xHJSq36`2{nWzA;hy@T}Z+ddxhL zF@z+6A*->wy$O?^1)OA?yPkciSM-X7;QVc}*zypsyLvuFnT_9Oqhg&1RWJ0k@E2^n z9=>#N*!q64l)Mb~MH)ug@%|nr?kt4;$$;xd8T^*idPhihCvD+ z`Nc?Rl_VklNz!r(Kl%QW44OSNVpPn9{$T{rqQC@F8u%)hkYM(fPkiM_XZt-xW8~9* zUrIlC;}SmBOz)hxuW2kxE|8xrWyj$%YG0UoPSh~QO2`T5^EgGop9?t|>bETs*2lW^ zl9S14hL%Tne7PJVkoWA~!4T-^N8_+}rrB7M-Pi|}2VxPc`Z_Q(H~A(bu}vpJUEer{8m9=4xm(#NdrgC6zA`T1$3orTqY z2;bdAdO-+RoEd*i=jO|1oO4~MiP36pA8H(M{Q$*i7Y(7xBt&Is#Uh=G(~ z<%S^`2cpoHf9yb;tEdc=4LUXGkOkcvrAX}LES_Vd#lFuiK34>ZE&73YFU_8s#$YtT zz?u$bE0Olgn{M(+lX={A|M+y;M-kU_ZNO8vKr)XZbbiGaKW8wg2bUAuAQz_*i(*h+ zsjqv?w@|56Y}TOhej9%*{aF_$jMpLAyS@pDJwj@bYV13i$iR)N=9AlLmVF{M+d#2@ zBl~s=>6|TxPcNVN3DWV0%CLbB&W*%JV)0V8_PlrrYa4wqy8TSKuFkvYB_&Y&@ut`_ zSPArJ1G&W(0#I+PN#3Vl+RR2vL!2;o$A^JXG;MC52Noy$fq!*f>o6E zJCBG&074a0ue1*raCEP&di2aD+2r2ufYeS`YcPCH>s)VSV4>N)(vBlZOv}o{w%wN- zC>56czymC|Ow&P`T1)0xu&^i_9lOSZp_>6h+NOql9e5FkoSL^T(ehd04lkxD(S#2# z&#Ln@;Y9r1x*8z~g(z)o*C!xNcI-Mm#Z}D0h&d1QTmA}L!a&a~;dBHRu!a$Qk9$Wv z(!qB}Lo&r@*5PX0vp6(zt*?LwRhV)gm*1^@O@uS4H$R<$W`X$liusZTe5Q3Ej_K7E z8OtYgW2>!`&g5D?zlNDQDc`dVj59jz4Iy|lKVt!I`-y)f-{7&o4t3V=<>i|oNGkVx z^_$=;63Hw)m1oErzx|mOx+}$ZppvyNtFyYE*H+4HjWOxBJ$7)*u7FAs>7Q`hxhnIG zT}}c*&wNGq2DC67{n8Na0SJJM*m~bGl;?#i7+xvJ^hGHKRFC5Av2wbLvm&s}tNH^U zAyLQMemZw`{rI^1S-i_%-Kob@BTcL|-IKg}mO+=1M`0RDkP6^IcvGKS^8Ly4Rrx3Z z1XNLijUI5}yTA0tVnJh=NO9s*XpleOJh(?HCyv!TN(WL+`~n$}I1cFg+v688i_2MG zW9$F85B0JOkJs>bS1vrT#5n%!`l&bsPpCGf(qUXL=@tLRLXxbn1c!n|5*Gd4-Yi($a+$UG+YKtZYApHqKop3>_YuD% zOC*WTcXfZ=J9F!E30-p!P=xy`LA8M*r}|>j#)h4GrahaNXE{BhhUzt~WWFVflPt^@ z$v3eexzi>^tW&Y({d%0FFr^xl<1xM>B#VUL-x!oxb- zHqWNLCT25&G%sBZutEC|i_~VNqj)I@)o1-E0fe}RB1O5Fe(5NQ)H9Ov)Xr3)jKmos zP#KCmOT&R_=I@c?)-r9nSY=bk>RN$8!bh{zP zS12dH4^X7wAlK1RMcu*z4;sVbv&&iaqyY@fLh)0{8hlm22xP+weSv^Tndi5{{PQ(D zS}GH0FSH9+DTj+Poj&cQ=tjT7B&?~qM@C$BAHcr96)PHt>o7Z^&=PPDYwJ$>d65q| z1|LK4f_L~dgABrbtvVZUo5#sWYPL;54|3cK$}m2LrPmMgV%y_ciB&7&k7Qqz20Oezr8pvNu?>*I*$P7QivZ9*u%> zL?0^2E$Q~aVKnWEH=??(Ep*}Y+Pmd0IgG0r8Og5mavPBP4O( zV=nBR7~-~%8+d^N=WEzGu()$2Q5m&anFIjQms@hi@7GC7cyKCIC^N?JZk~CLB~eU3hP9H z$}4Bm&c7z>t7j#O#SFX|{3isc!vP4I8pRK9zPg)D?Bsmazt2k`5z_ zXuHgcd%)jU`$!{Q(7Cje(FV@QFU2iu<-KG(F?tL=LwWbV@)nymq8rnB77kw@af@8S zGMHG{Lrsn(#PFDU?s-yyVW~V^BKxqF6Qi%hHz7@SDQbxxwyi%CWT`nKf3-w&00&W- z$VIm|z+&@9#001H4P5vmI?C%)VwH=|nk7an|N+5Y+4|qlt*x2Ng^=6oF z(6R_sy(2nI&_CPDi)w($L{X{Ts)h($`mH zO~2mlm);{8nN|D3JtZ)?XlO}L(DTXyarmsoTuMdY`7Jfv9}xkXSZv()nxOD0yW}G0 z9F3~`aM$$UNtxDl4{tEX7POZ8fxfsQ!^2~()`uou-3ymkird?C!_O7kXPsUq8_;qS ze4Ba@=MfRn^x_?V1`)<9=7QoZo5XNOO0)_kgdrZtpTZI0bGlD8#e6uZ=)Z=lJl zpPfV$Lo6&+zzWGE3%yH~v2Pu(6z9e%90Nnc*A16ax@^E73oPnZAPHbXV0AaV?{0sC zMHD((Afk?7+M!1|@ekOvEEVgdV3LCt48jHmKNwMJlOJK;02jcUxs>IM_fWYmOOdY8 zZ^)(25Z#Z0`_gyy*SnXq-J~k~QMwm1Z7)X9P!}vFn|0BLUT-i*W_YA7_oL4 zw1(3~VM-t$hLCrzopijlDeS|)~p5SRQjA%j@+3%ev`u3rmhiO1;glI2Kw01+5) zREiyD%ri7THq9S5opH2DQ~k?~+gHA4{4toy{N!-s5Q;>U$odsAXf2bc9UFXLT=tQI z=PKArF60e_b82Btdh>@sVCXs>%}v9PE_eY9HsBQI66NPPYNNJwE(VYsNN%=->b|oc z7{z7~rJ#7k!pV1Er=ep$4jnUN2%P$?yr16Wf0X)3n5D*EHDy`P0^4|=h|QAEoQ;;HKL{y}_2gyK*x4+tLU zctulrW!3}neFr#RUzA{{*6$>pQFCdI1S5I^_~KsAGc-KF($%>8?e@F;q*9Jq(H`%} z$e7fRo$=}6(WJH4ln6L{{9<7$n(YF$CUJUpD{3#KyUzj;;i`W6%LIkJ#$e>zc$O^o ztP8w?$e@0dp;DgB#PHM}qv!GF%XQo5gjjm^;2%yZo_3T#6V#ff-6==awbLW;A4(P3 zn|=rEEtdFLyU7PJ-eIJtYw}O<0M1~=d62gUa9?!0it>>sglzY#M2;7S`Q#T>5A7xU z)jLlHx1=};Z>)}zDTRLe9!NMvo7L^lvxJ>{!j}bUsjSktAgm{KPuqz(zSfD-gKJWY;B0KP?RPM$P!#&9j* z5)L+w{gw2-F)K~{3K$u!O6pICi|{Njy6kr-ReXIm5jI=H`$T6UYKZ7uvIRiE)UjxQ z`6b~w6^Od|Yih;fb?hP!#Vf_h!_uVP0mWA@z`|q@b0K-gB#j0t+OMIIWFAm6c@+SH z5_>7PWj#7SnZh(XFkScSm1|`NBR&EvM8LG0k|~{VJ(=?td^!}pCxo)LhqGKSeRLMrw-nrPh0v6cQ_fQA|P^&1^5D3URs#zs4+RB=L z_a8Dkw?j-Qpu4HV)r0WQ3Uxxj3&7o@%64Vd@7swCU6G@fdN&50J$ukz4jg{Sh#(65 zcoFEaTXo>GRH=QpNtH4`8tMeuTBoWlGe_wkQP#eqxb;Y;(s)JQeYc;xjtsxZXZ1Bt zf8NCA+H`$p$aC!il}oa)Oxbb~r6BgTWLT)MlvAw}NvmHWpteSqB89XVIOYMs0h)MP z5gisp_00Ww(2d?ib!Euc<}4U5uo@8l0Cre9U*GEoc7t7fF642Esom#t#GmSo-{=sd zc(-ui5OC}IlT;s7ghe~|Kl-OihV)`Wp)WeT^j{M61QC5P4H_(|+Sq(weW$ZKf)Cr3 z>@yqu-YFVc9f;;Y+<{u-F50>B;6_HZnc$m|t z8U}u8Q{&J?K`@UoFfpM2#7EVEqG4U&ZDRqXJ{|eBwn1D8oMX7`eubyXEH!nT$Onp) z{d96ZBbgf02@!#5v*tB%OeA>eriwd{PTtQt-8kI^uJTL6^VLn(hV+6--mv;Y#sBpqDss0RrqwNkoRcoyMbOYzS5DkKF1A9aqbP6m?XdkVe=0IoTl;x z9LhtgKFiZ#Poo&$H%mYyOV**^UL^I5Hbu_|B__|L9U!j15;P<~gx4q8{-wKj+oW*C zyw^#cf)gJ$Jf&g0@a%D}GPozdx9t@eCYcHyp7_Ae1laE$PK+HqK#Vl@eaVYtRG=?C4~pv#uLR(|$6Ghbzu#TQ8qxmg^DBkYLt2?05Z zd8Xd)mOltzN2dOh^$Nk~mDt7=m0)VQBOwWj;-N5mYl>?+V+jSWWlDEX9QpWWV!uHm z#2FFj1p!eQw%(;pnx1YEGSP7@Dkt;PtOt)K_)$tWaydf-0k(a6qNV^;EaGZWnl

    BW|`^YQrA?@SwDooVeF3YH#{MKio^stDhE{EpwM12m&rpVLNZtk)q3t6co_Co`LAnr~rfX zl`qK)C?~0Vz3wxETw&U8?aSXk2M&af0<<%m2pUc{w5Hx;x;xYPaMp8nRZO!xg~47w z_Xx1fhxvEcssQ^IfAY@&oHndw&mQl%!Oy>HQS|r3qA%aDI9jn1Kj_#h-WK(t5-$Z) z0X~P@lDQTC2(N%LmIvyzCU+G`9S+6E09DgS!8naN_*MbGTby=f?pmYWp_K$pjHs5| zJW>mVEX+@qV@HE1D&L(BI8pkPcq0|R_5gQ$?HXgFg1xWJKOV_%DecNLY%NQN+7kJ`s* zU3VR_O{4>|QDkFF3kcd*a_f^2gAsQ8rfF&TMM07bEK)G=P*I+Y|L}9^1K+*d%KtXu)nr0~pVGxVeRyOl3-B9d=t{_{7Vafm{kF*iqmZ1O=joIa z?~J-V-PMgjWkURXF9&uFo|bpkQg)4({V4v}mn8t#`VT-L_RJuC{$gRee)B~_qX_zX zkyG4x@eRlpqvNL8ff`{=({aK%*9mmb^?ZJqISMXk9nz4#pw+j#U-~ACn6ZIH30h}qDI?&(R*>60xf5nh z=hb2}=jqEboXMVB;u9~wHvCo|zZLt)6}S*f5&v2+c~go(_PtHpF!IF+8?U}-NI&Y3 z?>9Gh9^7RcY?t;g%b;f}ecYM%ZDe9T7h^m#9eTA_pdOyxD#&W!(t3)TM)W${|1?eo z9ZcZ!-{S%t#_nogJB#F!`ztKCa6{bmsZ|!s?j;kHW%u_yo4};RqaVDVlX$~Oe_oNT zsAPeII9rc@?mZ*zuU?zGrFB26<13_0d;n19SL#4!%#_jOAMmbBcPMtJI-nV@I^mtg z1YTP_DRs>q#+QFAAmD6*!8PXR?INY;va9ciQcFlxS+1tUz$m}Kn1ycCWv0s!4y*x@ zUsfHN3@Kkbnhev_A({rEl56>q0B(!GB+t!fErIBNK(Z%r7IMoJFg{g<*d(Tq^Y64ecBJiR*iCk*4SjXm1%S$c>vqesjAI%w}{pcBeAzY!BFKuVn zZPtZDXkwE36FkjFy1ecLefT-7JQi~B(hT>Yi=lqK>uWrM{dB;NEA@sOVLrl>?OV>Ej=k9qY|_%btxH3R>2^SW3qyQwjix) z+&P#0h`?6j$Tuvt@Rnm6nlPW1{xq&D3QZ(`U$R>A*XYPSA|r>z1&0C5tpjqC2W)^$ z380P9sD6IMdL846gXgglJ)pn*8wnL1#rFhAj%^+yXE1GSM(TG+c#@hQvZUYP!3`ia zGA1!9&E^9m=q&UkskMGHdcA}PJABHG(Q7HfJ^dTKHyYR!F^NYg71H@TdC;Q2UfW_G zNnlFr@V-O8Be5HW-d8;fv^!N_ZVK|uaNpizLDs`NHA{AO50h593W(H zS9=JOtyp+n$*HFxT?`qmHF2?LqXp!dJ~fa)4hBMw8et8u$aUEr1sJk+fie=~s{l>! zip=(cVv7t;MW-pC^XX@!3-Ad6nU8#{0zu5)YIUQQJBnm)6CPA=z<|u}_$XOUr%IG^ zjVQST#2z~LgSlg`r|Vti3EDUI(gVAu|4!e>hAHHQZdDj2+=YC^Qx}k%z_;3~9{ZR1 z+Tn_iwuXYes}U;FUv#vV&i8>o$?MD3^7wc8v_A$#NGcv+6|B4K4ISqna%41~859v_ zBk|4g5rwp+0-3~!29he9+O=Av|B)4d!gtxFXC?_v`W0M~GJUe#m;5lS00wpiAmK3_ zLD>KzQY#OPwn5^du?2}+#wXC@JWweR5o!u1H1&@UIop^1Lb>hHDLsCTww^dZr{B?o zqf}@wGV2H6mx_HQ{EY3Qr3lxy4*8t`5Mr-N&;>xqscFM)e->rm6Ps)J>7e97xdRDz zHXx?Rbj-TN?Q_8(k#0yqq;Vi9fIP*0E*M;fg)?+k5QyEZntdfUbIQ!H+R!SSc*U2O zdW2P#zhui3DS4UR(ODl59tp?qv$Z>LRX5bAcK$+)8wfvgvWdFno z6nI!`HZS1>1QaWSTdG-MK@z$P@~EUpjG6zs-7 zu75?Gv<^fOA(m2^+jzd{Loc;2@<^d348 zCa-Z6-MR*aih@oD2fBcyXBXw;0D#F0rtMFp-BFFyS z9S{;g5JPj8GTgRf`7|U*n1*rMgR3U96TxlMH%(UD1uul<4(?1R$w>NPN*Cp2osSiC zf!1gsB|FhIOPB>~9>YJ#OBE~47#{EtPLiL?D3vn%)b^)-(ILi>f*xKJQOIEoRFhcn zNXHT2z?efIAH~~Nw#Fouyz zB%$-bdH@5s2L;Ijkt{e!Ik^#E^ffZ6dF9b#JxkC@Ax+}qf+^l(fQBwEwe-V(<@CDS zLO?o5G-VjS?5`eXo3B{M9>|SBBzM=ecf!Hf{o#N`OFW?~CNoKo@IJu4BEj30mZrSv z7@}%EKsf=CDgsf)dT-6g9~n$Dm(i=+9e{}YciI)|2jT_pY*!E_uIMo^HdqRFfCB=` z=y9>^(Z)b7jGR};8a0l(e!yi5E^dW!p6rLvggeB+`K8u~x%_9BHINY#;ir+(ttn!F8DFE_$7V%; z?G2{+{hY%EIY1a6auI|p8L7Kc<^F0$5z?vBh^;(k>qQ1xzA(FG%q z!3RrrZ0hSvSv6c8U%3k&5ZX%1!XSg40yZ&R*p;65G+?babxM5Zd@1wsSElGxP!(2d zz@8+u=Y&)hRy#UbL2bcDPWq}FgQQU}x>l~+&twn(jjQ!M%efvj@>+``h!tY>eg5(+ zs{o{9ec(y+92QjF^dqN$z^d_mQ4Ih%EA<5-NBwgoQdZk1=0(qaErVbsK|r4t187)9 ztk(0NmjXrlT0MDA(`QXw(+GLgXQ=oHs-to-VWfLCU%iM!_s_f)oplrB-WHQJsvtpc zpyVJ*!pA3Hns~Q_b=JhJ9FptJ^&29YWPCGFuJOTf@qnEJ;GMQh%^;L!a+5$E9mxE1 zkLy8ZEqadSkkjS3=o0DAbEDioF|bGnv1ABTxPYppdLFX{b96;xmA&2RNE=M5V{jNe zc;k8Pp0!uP_*KUzEMrFcO2!Yq8MAT%ht|qOmZIzQ0eshR@IivHcQ)3`1dvZ{MC1FE)Qg5JyKiU5QP z^}g0uPiris+>qssF(wO#nq$vz(f(b&Hj#jvdKT{ zkpYal0I`V@D9E6L@HKvVsha^*U@4O11c-d{NF!D?^NgjhKsuf8u9sUoUs}Gib5iRi zPak&x9&-w0fPcHFqEKRanG*Vji&p?Vl`4@?M1*>a`&|=S0Im(^@TIE_gv1hCepLk# zP`kvxGUq`6ECfNaRrp=2HHYNe$lEb*=-l$j&kAUJ;e-+ppG>hJKLywMZ5&rq-g1#s z!mMWaH}P4Lxr7H?E;

    ovP|>7CGC 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

    Q?XzNtJSdn3W5fOzY$-FwpovF8hp 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 z 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
      ^aBUN-3U67|fvy_ZuHFV|B_SU7; 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 Zt*qwVD`|;kLk8fFzP9n5N=>JT{{f2(I_CfY literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/editable/Flow Execution Requests - Requests.png b/content/static/2024.11/images/editable/Flow Execution Requests - Requests.png new file mode 100644 index 0000000000000000000000000000000000000000..b10a40956a9a6f7e7278cbaf1af172b7b94eb55c GIT binary patch literal 397547 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

      t?o~4^|7Buaorp8N@4%w^kx2D$TE`v%Nj{N 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

      7=;hGgJpnD^T&A_K+h1VdZNGvN*6U5 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 literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/editable/Flow Execution Requests - Time Range extended.png b/content/static/2024.11/images/editable/Flow Execution Requests - Time Range extended.png new file mode 100644 index 0000000000000000000000000000000000000000..7ad059abbc48f50f63e46ff42e46eb60d4d4e108 GIT binary patch literal 65200 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

      DiC0U3 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 UhdTVhmUZC6%G}m0$HY18KVTH&H~;_u literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/editable/Flow Execution Requests - Time Range.png b/content/static/2024.11/images/editable/Flow Execution Requests - Time Range.png new file mode 100644 index 0000000000000000000000000000000000000000..954ba9ed9f9eef081b5b38377868ce2d2f72d072 GIT binary patch literal 312197 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

      aVaU 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%0DKb8Ka=$ba@U|?v1h+WGjDdrxM`;;*0uP$B-_S){ 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

      D9bk%O{WNxkde%^w-q;>89q)uwX_C|;97*zz~$ z{ZE&fugRq{!)k+nk{Id?I)Csq(QRa)!OfQsx)K<_u8P>%)n2!p+Tkk2N3J7{y4>XA z4}7o)RZ1AQaAsOmP3k_Uy!BWJygGhQLi%J;k#a$)=SLDNc*!8YQqte>l8X_2XuezG zr>bi{mPhcF_u5)+{{*4ax!mgqMH3qY#(2s-^&DwG20@3@N2fA*@e6J_(AZ1<2W`xC zNw_HOW*wjD4~^?(nDe1&&>kO+UaXH`!!?WLFwoEV%y;ezwMPsO2Hmo(WZR6Mo=K1} z`x>;}*s-YJo{L`J3~7Pu5Z{+~)zVKgA|7g);*xW1F+N7Dm(Lw+L5|~XWa?bb>YcCI zK0HHzkB8(hx=K;wD3@%u*0Gd{LGUX6LP_Ab#ACN4j)x0vr-ml$zYnw*`ArB7!ZqMVK=Q)Yrp*@hidQ=$c z$0J{=U&YeiG(ihc|8NG$W5^DyC?fo%>!-g$X$gN8WY1*mDM?cqJA4Uay}O~~VhLJ2 z*ZJ7YkarBYM*(P^C9gp4-;CETztRH-vh3xhPUN^)?#AB0l6EoGMj*Ou+sdTK7A78V z7K8Qu?)JOwqTxQD;@fl5=4<1vtE-S{upHWvY}N4OFQ*+&Z4Iv7QnyXz*+Buo6E-T* zo6xlx)2)=Tw;L^FGWM_lySo*;Z6oAlzhe-{jDX*N=e17%$n3sGr-`8oWA}Jeaa%=Z z#WPB&pTwG5ei*t2A&3siNWg0>+ zM=Gqg3Zsf@9X~^c&)>Wqy?D8PViJ(AqW9ytyu$M)*jFCw83o+TtiWuoHxKG8FQGD3 zN{e<_H$Cn2_#)3Y$5n>(xhHiy&Du(P*_x0OnD7WmDG5E;^2M1q$W;-5@s2(@JLw#$ z2Q7cxk@e(1ks!K*5DZ>j)6Xl^DrAz2&-HWW`CtVpf@I&9>-yB$5t5vFG>)&=l506t z6)TNx2A1Sv3%S;k&UVWE$b=B7`(Frt?|S~3*ghs`HR9Ys|6?J%_lg92Gb&C%Ri-8v zNd@5|qV4hgFcvWKmR;T(b8=kE{VAg+Lr})+`cTAgsZV9d$PSL~tqA zXYgbzi@#Err>j4y&}~Z-Sfq*?gT;*WGpo?IYPwAE7MZ%*i&2_*KNmC_jcbx;jFOS_ zCcc3|3Jpp+%+PcbN&+8Q4x2rVkg2F2=e}{A5a1NTR8U@`2Cw!pxZJMV{2%d?#KMl`&-r>b;+1bm+SG*V+ zN~i_Y8V{ZyNBl`#Gc+%Ht!?e6kozl&WK<6~=;+S|OdH!Hqvf$tIkm}(s^VNrQ-p!F z)AXGjPXoVj#Qyq8m)l6m*-O`SDs&~(zA!G$OQL7jNuw@#zWN^<6%P_quR4k|`sd9Q z{;Y^Jle~VPw1Ic4XwF~`@Co+42WF6DK$`rL?X_(39d=fl-*Z(i5X)RtUGnYCCZX6^ z-CJ<^${jbhM^xtK?-xM%b@Jh~GMLhOS-#=Ck_9eLevOds=u;IhAG-M)x;NY`uk)&8 zBMxYt;&jzdR5E+ZN`r?k^j5vf;ow3of(_*m8U80cC-KNR-PSt@=9gIiT}E6Zxo818 z^fG7kG(B1AVL4ebuxs6=f-$uAv1j@8`5Prgpg^!Dp!pN$NWH8(GQ+|c&i^L3`IUsS z@I}uu4tW}R#12b&%lRfg@=GTw^o?4Ig7W-+n0q;)f|V~Zyvgg~6mMo1 z@dM)JMkIAD8H4K@1$_RfjFW%%G{o(-pT5-}NnpW5EAz5sANd)LU+fbel18BHtHuC( z5X>?ea0$zPTH{~HUr+Kga`8>J7ARel5R*#y+bp2xUiyZ2vUnn1xTaYabH%9orLNe~NK zV$j8TO)$zRG?`tV$zKQXr2SZloEJf-gia03rbcod;R>hL6n!WX?0{d=25glcosiiYs2bh;pBr!}jg{*fw7{XsM00`m%b5I?!7g>#%?V$TUcP>bG%S^hypZd7fwq2~+ zkA-6KS!~BChQFt`my-D_y!WCx2#2N9M7*~7nMtx^kOb8{tmrX3i9o7hETPRUYN;u1 zRWZZSY`>%o%2qa?$b+XZuiH>?K{+WmWj+C>q>d;v3?Iw0K zOpy8J_)St1_ta_H*gS^;D^xN+Hx9%FmGpjcQeX)C zr|AchYcYqFf{du&Mx>}xaIEsYTq(kDYg8T{XAr1(k00Q+fhLo~*El`!kV!Ur>AT;9 zU~11Rzv3}{AZs&fcA9$PJr$$fIMR$WF@T4hBh=|tN#}BG6OBYHydbi*6ps=AnNy*e z8$XqoGg-W1Ux?tfD1>CQ<;<0m&dD>nlfm8AUGYQo$DFLLlsUJ>M&${j@AuAf+ER55 z9T*~uU`Z#9I9sC}S7|Ne;!4=}8HukP}&=@FUsdaz~ehby>h zHObinClB9*NCN)pAA@yjZ* zp{j2!zie7;Ejy0wPRkgX4I4@F$2$c4hsG(APqcd}*EbN?b%#PeU@xsm@Yc20Okzs0 zieUL|h;G|Y!woK#@&a94NwQWF8{t8kitRDM}JksHB}yv(`G&~D~th9*1vLs7r{ zl)Y{s{Rv!a8h$qn>UW=(u{D3<3+@0rq>XxCcgoYRenkLbp-z%r9wzC1A|m5m7X-Ov z|1Nfm=5`Iz1cPn_zAYx8J%m!Bzki6tNGBPyJwN|2Q8eVVqxbjvnT@>H43;zAk-^54 z+2N#1m)@Z#wQP5_%u;;Z?^0!g&|0+EQp2E6M(obS#Gb1gtR@lAv&+|Vx_#-8&pjXP z`ob(&;A(k^{*U)WCZ!h+$-kEvdC$A~)@cC=3CP+c7e_hkFaN5mf$^1R`DHRm@Fa(0S+dm9wR<2|9iTaai}vB z1pC0QSkIT&`167o+e5Jmx92D8{j@ELqV_I5e|E*v+`Scbn&as%pg29w>6zEXy0sI+ z>Dr2mO17}?8IPS%_UsEDGeMk2L@@(r7qCL3h(b1bCHnMvDtc-6SfE#+4n{K>CrcGG zx*IL(d~)%(vX2K`iEoTch{Q4@Iv77M!F^i?MDgA*eI{+Kx>y{k_qV-nR?PKB2}Xla zCLs=FGVvTqRL^}ZM-j~5Jlk5cEy^z+L{3V|k!rB?ER7LjnwHd{&nTrHK3$+p!Y(0) zXLLUxF!lqsDD>;HA+)BBOp1@-rO{wXD$~g`b9$1sio!m|v3#4pZFG;X%Ch6FTX~pH z*WX#}(jvefjt9({M{0`e#LS!LZD{9NDxJ6K^Q33({B*ZM1RKt4l+HorPd?6VkU6!K z_2Qxkj(36r9jV4&v;+sxyBlb;4G(5y|Op{K&otgjF2TDLY|m5AEpahr=oK9140fnMc) z?32{UiAZRl$-(u=v{W%vpI(~<_E3ux=Z{3#%2FkQFCh6AKot9N^ym-`6R~J3(muy& z{x;L85!WLMn5THi!OF~Vr&(h#igT?Y?;|Um&<2_gBk{N*$*>@hYU+uh5mQahME|5n zWzkqA(%zJKC0m6``P1mAKPwHB|xn=8)`ysGIBtf8?+F~z#uGKd9cuU zfxk)jnD+*v(d*!I*JL{HqBBmb*c`$@=-+c8`*#|0WVz}k9(P7cYV~eMAlBzpSle0j zV{5wUuMD8eseoOF7iweVA}RUsq{i{L=asK3;{}cko(8kmoU~!_JkGpmT|gGBKJh4^ zu|6zVpf;cKKFqEA{&ASbEN_Bi_z5QJq8OH_ zUggsleV>o*6i?Qyn(6Z_lqJd3)n1~_&vlIaBgi`P97LEdxF_{ZL-Ayr6z6V7^vmxT zYDKIdd}KjDK=O;#nvFm*6Von-n+8`jT5%L3tOS|6!3l6)E<2Jezc{c>G>m8W9#U}ynS`_AdOG>Vu!~z zJSs20K3Z%e?sI;KOb>0_LsGnZ>aUuty--Rz zM5ytfMM)|g;VV-!E&++INBZCxeDi8~tX2J=zr2t}R9XIuW z*+7zcN^7ui6cco28ycNw3Y{rDVueT9>U1x|Sc3UmbBFYQ_F9#et2(UI>DKis8%_O^Xs^zT86 zz(7xVZA;{@M=QzM1Xl?<^WKP)qn0H*KjKEATu}^Oj*okz5do1j0IvA5FMd6ltio%H zznVN=Bl%H$^&xI!yBX;Mj!@I47u^s~Y3LQ2TeB%!EJm;UZNsl?I^m<<)!T`J#FpIt zEALSZI+4ua?WL8&_72c*moXXZCO%Zff(Ck-_%=3*&iCs3X|gSJ!@j3m-s}MFiwg6r z2fVLA?llVGN;A9VpA4QiXiR1dMTR`M)RpuJN$%n0+21Pa-`jIiV{Oq~jVlq)TH5?k zB_)306VkNL#AO}BlUegePFY5*>?3D8hdh9*C`u?TI5%L|^-ldQk941b(`dCqUO1zqH*ws zSFNhz)1QIj*91?D?R0X2vV^%zM6Xg|mJOl#`^^ynF1EjIo5F20q~bC&g?M|-bd&g6 zR`X1fJ0`xJCw#nTo@)j5PVk z?+ZW~=ZY%4Q43R=iiJzJ^NPMs^P3X0DVBx6q9L&Sz3iC2Mq8nZa){c{OR|ItB%Gp3*?KqvsT7MWNeSl%5TvNwjz|ORNdoL zilA-)~Pm#mm$YGSRH_y>a}hM(!#StbJuhA)#Ctfq#EGaXuQM5)hTShH$_ z*3(H!m?P#Jez}@OL0-jl?qsC5YeZim`MU681BnE`L)ZeyLr&I&IQuzc9f+Z8u$1dhe{zo|8#F54NYPA+53xEcKmCJo-JvKH zV(n9zly=5$3oY-V_RM~VYQwcwZ%ti5+EH%?lz)EC1H}1dVRAkv7-6o9EWUEOzvI*b%;pAL6CAhXT(zo#?LJd)*pqo6j z<-lHv#L3AlDD(6BaF})@1iq7b=?)@wTO{nVt)p~jDKg2{?YsFP&C_sVAG#ffF5F^) z!5j$v$^8P66`;-v`SmJ}zeXAb-`l|-(&Li+^Eqlq#g@zptU$nizhos%{fRy|L< zr96m;;$bPysUGIigadWEcWCw{8Bla{r85x5pe#!&`IPTSU3^1s2w{t5pJbpn={OGD zO*SV>P3RVmUw&oyXig;P#+JiN6=avmN= zOnmIL(@C>?u@8ZQnxvov^9qWs54Mz2UtoBxmuc~-822gJ4%iOlYEubYj%ghjhF50F zGiBe2xmp?1BS#yoH?z9n(c05@nZYF;wz)gZTi>m~MqS4xHMbVYJM22CpAu{Gz;V~k zVOx;=PfTFyb{u&nl=iv!gN@p!Tx-l%S_R)Gme_CoBp88e$eQh^m6wLyQ!}y7;__`x zo0;7Q#+>s^SIHMU-})b+G;{3bbos2s`Je(^Yu8-xHjy@?znxn1LMw4c&hG9klm3s1 z9h=;a;pM_zet1o`N~;|RQJocj5Bj&g;`!)tIhLdp$=ZI~M@{OUS-%v($u5Ie<0rBU z^P()jjb6)^GcNJo?T!4r^<>}1h8FnCw$0Cyk=3!HKN^08{vIDG@>a$(d2nmOH<#1n zhWyz7To%gK;J9$)7LQwQ{U_i%d$R$s0=zyx4G2?|kPG#^U@cfJ_s$UtX*nL!x*@RR zf<`q-u&;$pl`rw$ym?LQ=xwOVRlZ<+X7{>nKC`+Wq=NgF7y5n_hFM*scS7|7L_M;Q z9%bvcGmy8~^Owp<^dVW;ko0r`M2j5Vf~{F^^EJ8@ z&SJ34Xlv*)t1iyq2hgg?HNpliSS8{_lkD~$?N@RtSg5o=u=MwA(7u{EH?FlVNeXmh zHfxHzZr1U`@;+P-1{*dh47O~=>>MmqB@_OLQSNujyZUxT+aO5H@DkPNt^^VC9Oprm z*hu9SZ8&cKSDhP6Sdcv7hEm)7sa=_SH#vMF;iD*oEF0nAxGXT6#fpp6{@fYG06p1* zOs6+=EAUm>3rB_U#Hmb zsZ#y7^4SH!lD&8d^GrHy58I~R6L*7C{xYM`v-}LTE6FLcxiXH}g>+l`2eqW|wFD$! zfOwC-Vx5b)0Rm`faq$60boNB^T@cLI^4$ewEDhoC-OnUL8FJ3<%CLJszy*#%Ptoy^u{P9rNP&vz|Keb1feN#jT{Z2 zdirlhS018lohk=W7MkEb3!U_~{DH_!=KkbfZwx~g1fKKWWdLH1eK7bLOR2T?9w_{c z1LC3v$lGWPX=9;wuZ`M50^l`wa0B7lUjQ`9bdMnZ|45tnNc;ZIn+5K}KgA9siJ9>ru9nWT3zI~u@eM^fv1&pDy6$h-{4Ou#CJEJnls z6HMNfbPpx}2PLdOlM3vwT`0Wgi%kw|SXqws5dJrl7kC6u5<6z8%pgU^0_WE;KKvqO z{wNz^oO)94SPED`8HLKM9|Jkuekf6V_CFL;4FUOB{UWOWFCF{?4+al;b|hVTNizf- zVKqS~3p{9!s?$yx?9-`&iL+w({jG^XtR5nDh4}0|Be8K#?7$o=Q;~{67>^YQI4m{? z!aR-*DakF>0m7W8r)Rc>nm-(R`o1u_v%)=s6v?}x2xw_=Rh`ci52(uD{}Z2`xAiMSD*t}=W8(Pv^XRv$mja@3R983;LVEnas-EFUL=Qug^A#Fv%~!5 zpTG56)s7^Qf{i}Dwky3!QF>0KwAK^rmr~U>{x1~uPti+f$KUK(pJJ>dXl?#&(#bzH zk{r{^jBWa7yT<>R#iMjB()_$61DD{-P5 zK8zAPof+TL|8OhzGMCO8E(X^8cWD$BlEp53s@^UrYdq7fEgvmVt_$Ec9GmWYP_u0- zHbmo1vS)W2zU=+6d?Nn{wF1y1yxW>06)8M*eILb%uZJqe;hB#ZX@Dtr0SMd$#FQD3 zJ&T~AVv}j#BY5$~GCb2r$Yp&~8wI!FuGy(O?i#lnmg$J9WTdleZW-w%IvYG$SaxXnku(E&dt5b%fhp1FjF ze9C0~`ysXmA+em z>^TwYQP35IT{I1$)}{FRSEJ1pj!RPeHLDAD$q3F1qmu{!x?yhMHr=}hGU}fLPs*%) z?jJlXQ~0qxEPp@hQNp;7=>N;5M+ye8`PrcmX@OA<{`OC-ZAOnqw0K&7DvC`;TYnzA zi)=@#lfz4$A2`TiuxTy<{#9S-BNAxjaPMI8mi`d@Cl+9g6!2;J^BJa-{}Jg}?-z&v z>-AQ?^#!&^6+fJM$ssAJo)oC-t^f`SDO8J4s=kjDwR^S>?*DS$gU@Y&9k~xrV&k!t z0{-DDVL>zo!KMPRwFyz&+8JkQ&V(q)+;cBgv27)Oc&hfo(`1AKFk}klfFMZ7viSy^ zrrdof62Zjwn5u^H^``~F_})gCvHi0mi*bd@5k#Ip=W?;bx5%-|djkK9LW}uX2VB=n z3kB|8stX9{#)r}M4<3;K!hz*80)bTxCfZQ~tnGr6gcSbSNPb5K1V2RT4FuB015ye& zz88U5?XprvIuJECYO`v779bp+2|MVI+)MnG>6ykqC=VE0k^(TcydN8}K#9yS0r+n6 zD^U)khxcE?aD6cS1l!}mbBwSL_wR_{{DV3G1zCLq-W*8#Mh0ZlU?o7U^rJj}}!YB6s-q(Lq3hQdD?4`LaMP6b@P zr9(SaZqgO}0Gro=Qhky7;b*ZcyF9}8;Q%Ykq^SDFrDq#31^uDOXRoux03%2a%RF{a zX`A=5FF1_{(!GWdVab2AaY}Z?+aO43+AY+Tt0QEutx%LNu$LT;UDvP5AUcSU{C7h9 z7zn&mK@`ujfLYm>>V$tq@;e@}K;(Gk;U?fN)crMOf$5_9x446e zpfD?tVn^po0S?{Vmw*sJ!0&NYSqHeFww+&SzK6zOqeO+yO+8c>pM13uv7lbQlE6p7 zS>L{L#hBa>;g;3`dJYVRtg!!+3j@>N`{BzZe= zUkcwIpGth+OaZvlLfZ@#Nr4yw)RQ7pP|{KDuK&An(X-^4qGW?wUd6|IlK*dM$6XnG z;2v$;BEJm<2Eo?)p&`Dwy1x)auUer`ib*Km2I!bHM@E=%Y9ZBdSa{v3X0i3YTBN4e z6PtARe7v!q&rSciSYk~zUWVSt_~77x=p~U~U_D=RJC_mJJ~;ZS=PrAL&ksy#?+ij9 zwr5hB&pwZTyr+Tfr-~}gxuD00@Q0x;$`6jFvy#S9l4ibjq;GY{kuSBI>jT%t(>wIH zxXoug8}HNvjMHl9bwqnt#(hTxUE8OzjA(9_n>$g><*M@62nT1^mX~#I$Cea%6H}+j z6+8H=wG83;+K&T7|4dhrkZst7jx~S%!05kb{EwlB=N@gyVrZv|kq3Bgb(E%Ts}~lE zNmc1>C?%+0@wzrTr;x%>GHQ&HexD17!2Amv2KGR7_}1iB1*BDJ?jE7<^nW9Ws?!>X z80E!6;Ib~mmX{XUOF}-E`+>Ml`lCY~#DoAzoufA1mxP}L}CP?G%8Ug`=y9D>f9fG?z?(W*i-Q<10d(Qn%&KTz#_s9Kn#~?jA z(0h07RaL9jnse4F@VB@TDpg*nG7`882@Cyrc|d*pMr>;k^)NL5QJxU}7c%wxM$}_* zMWL4B6UIi;G4hnGxz?-2XW1_)+6w&a%O8{g@B{YoL_@HE&ON}}CX-#6OHaRbc<_!y zo$~crkf9TtDTwm#t8?ql0K7(F2hsq^JYt(Dtyv))-*8dK zet~>On6@Qu6WsVMZ$PP#Hwqs}(2m!nM5cpGDtd2=*RjnXm*!lT!@i4q0&2b6@Es{& zd4ZMh8Htaf*(zOX-csw%MP)gi0m2u-XKj0S)JLmqEI;3n$-0PNpTF-E1>>Gb^}_{zn6!vbUVVsX-C9fZHo zX=g+dc{e`KE=lm8owxbT+T==onZ=1p1jE(W|IikCW%9+|$=DU;%32uWC1tBCv$WF4V&ZN2Ekj$ZDThkEziq3ZBgRn+cncIGuYC zUQ51DV1M5L=A$X8r1~1g+WD*2c%gz67{NU={=Ck%3gqqX?9`lsq!^`$ zX8dSrLt*dzk{UQouUWF6Yxx&D=k3fmY)FMHZA zk%uQ|gpso|eeaJxekKE3Qs*=-4sIKE2T}`o$&m&z@7UgLm07%386HNb`=fT{15K~q^q~r&i67CBBE5| zt9W*F&Ip?W!M?B|9O9&J@Qoap@+JW^w(}nbWcb5Oy9e6NDS7M|OT|}NY5If=ig=(LhV@gEM8rjPE zs_eBh--!8yRro<{(BLB%sr(!7=`E{{k-V{Q93H&iN1w&4y-MGhWao75Q<;jb-NR9~ z6UtiFv$LY8GX*dZD~f5#q*>G}g8pgwfBXUUz$%!g8H;3Y7>Tpm7bg0InX^we`T5y5 z7~R&&sfRMMOSe5zWo}uw2fzA!ynKpdwNM2=f3+`FzgS(sCI?kYzm$;K3(Svmqcj&Y zCCZ7NE@i?>04O6p{1LRHKO}9Mb4icwbIV|i{S|?_Sl)(`SIgp z{Sgjly$gI89wx!4o}PboeKM_tzydJuOADihf7`0kc0V4_e_ZN96^A_~{>V6L+p;J?wy=LKoe66PkPkE0jNzyhV>nV#wszZ2gU>E_(KxfMNHi#t-s+hS;iF z)Z1!nU5*uupFgfWj~n)0`iPY6$(*DAZjU3F|E6ia*hVq`6fSFzIixlNVN_JHj&*iU zZtQf(A#MHrOq6*raQt*&luO$JM~=JC_pyZ!e1bmO1;dmVMf%DT_ku@)K3e)!yobu_ z9Sg79bQ!*D(?OONg9HGrRf>)HVocdT68cC?UMSDN>O$T8`hN+X^4~wX6BK0ydPhm3*!j;jit#(BA64uVdHOq@AwqwPu3EhfL6r&U^r&EYG_j zm~=5RZ8%oKo(l62M(gNeCt-(y9uah!90>DTmI8Q^Y6(KljHMxDYp2~KQBx}yyA2#p zAKcNDwQ!+cNfGdNeF%(bn}Z-NcFac46vr5*jX@h*K%kb_VXNJg-Rrn>hKSNh=PAzY zywKaalQ#aX-kKihwy{AW|2z=(20ak#G$N(gy8+poIiEVQ<4+!Fz_#bb+z*vbC!gNr zJ_tW!W#!dcP2{t!#}`o^!Mx7m{zYKC=qRUUY9{fCrAStkQZAOKTyH+zB;Kzds^xe)w_I+y(v@(o6Y;_hW zq7uALBA9~sm8>{WpFoFge_dele3w=C`&&PNx!G~BLii{upPzW71-KpJu#gJE@7eq0 zds+2BrY1qg!w%v127K8t0`8vRlMMbc15QN|o)>AJx1^*{MajF79l30XGNz*>cFzrF zFa?i#$;u*FR4v>b(bkXju$yONauSdR#Maga!iY-0tj2#8akhWTp7l~p%L)FAaRGCS zy8uzNy27v<@n$hefH&19t`0X==ivu*W5{ zVa|w zlg}u1TD&p%;9By?TBq+{jN#rI^#uwMPJ#Z!!k)eF-cG{#BdH-$-i2S-Mzm(0eHrQC zu4ir$#|+hiJ2V916PY8@{V7TDBq- zg_ne>GMgA(-d5(%TE1G9=8@0ttS0b+|ff-(iOo=$LaD33u#eE>E$a_eMEjZnm@FliHWsQo33pi76yomi$MPoMy28S0cZY4X_NMgjtMlx zQAO1G)fhK;lEO*41dAVM`f$&Uy09q zszOtv+c`Xy__*9yvFa-X1VQeg(y?i9n3PfEAw4`Ct(F+uuBN&0PN9(D{un^K%#spkOXT?RPfVJTg567YmquF#d?;jXV}?DfVPY?b3f1Vun#p2^CE=DSAqHynv%@oGAOXB_gt`o%WZrG1KHzBM^v zXX@WT|B1P@cmt>v(%ber(=}%MS;ACl!TEsT(JDN7!xDOiUOlRVt$$=`OHsb^b7{syI7Ss`rG z%LeBDK{uIpxW&$EAen>MdM~WD#=Ei5eC7=wVLv9b@Tb%)(C`LOP^<}xno@xXuovdM z@x)aTNZ>7FW32@6;tgp1zk;n#zft0{8pJ?@pvwE3D;j|~Rmk@W<%9HGg7M6? z9K0GPafGp)LEu%Hq=ryFI&MJzqP1vEWIxN7<{NS!5 z`P*^;D1h*v#uJ_0TE}5RvwUDd+8hNk&OZA76j#|Q6-6|SHJu#d3+adNsP2=_6sx;7 zQg_8Z!5*g==XYRjn0xl z?1Df-D0R9ThzLfAP>;PBkO0KXORHJ1dtjfz%2uUVd7zsl@vrZ&>}9=Pt%+31tDZu)WT49@uZPY|8tK(y zQdBV_2KHkyRj!k06qAH0jl#2!N408(M#DlHQ!dO`FD-ptK)*Uc^Y3v3p3SQ4!YSl9P8z(n@?Jmy44WN3+B#%94C$FwBp z>sGs`fzJcK2bjU9MSUOp$v=miY%dcRkf`<*W^9lH0EJLc3cuVI1K{Lttjz|W17MUy z#QY3USPbl@v?==cd>~x~)$AkaambBYR7>;)rk7^;HC9XOY+jGy=7bOGtuamDhX-^O zO|WvqeM;nUb0Z07#}+lBI8fRl+zcW4_T9u+KEv=pATGAk|0KjsRBq3^tQcdMKq`d( zfk~e!a_^fEu#YKff0hjP!kt|b5|-~2t>(G(aFkOQas)(Yi8zNZ%y&*PLw((DuI(&w zmE?g@tfew%A>F2{eK|2^1)x>EiOCp$AG^fZBk9X8S{pVPI~B-+bDz*YFlb{2`R>fG zOD1N*=>!MoU=6#>3n6eofcCyi`+fJ-v#BcroTJ=@&Z{2h<$F@?|IRm84ojqk+B+ z_A?<_4xT{%kg^mwH2_$GX95x-@&tRL7$5rmeN4R$01C&+wGE|MeD@}8(|up+#j$5J zc{Uw#KzrI$^wA`jF|sx4-@1j>>#BFaUDa63XN7^$(H&NNAPxNgUc>(5U+2|J15=61<64t9x7c0Fb|No6lQ$70mhwrGbTU6H1*Tsx^E>c|39RzfH0qc z7vQB{J^40fbjoK}p|qCso=krv0Ce#7K%Ux=YYUkAf5OKAJy2L?M+dk(MXIu=1dzGS zjtjT!8}JUp$2?o$890Ji#cv$o(w`>o-yfFx3Ecfi4X=%3;NMUzW6?l`emGadZo0(} zG({+qbzcA%pwzPmJv5(;NMAJ*_xB!24h6n7?+p>k-pJF1RW9TvAb>*Y#wQQ%e&S^y zK7${k{vCrTv@MVnb#neC5qct)J_FZl2SkuXd!qsUutR9^6uV1=Sj(i}0e^{4%iy{M zj80O#Noth4d`RlF$pR2b|8<`K2em{4T&9kyHs~nVrfdId!=F4BXetWNhi6z}zHZMD zO|H}c8`$s&+Wa?!W29nhIiNlgt+unGoRHo{D+?*CsywruE^8(zrT5?u_|d*fw~;3Cmih zlub`Y0?6yQN|ZfbqA##w?OM>4O{yaWh`9miY#Vhb^e4tsE|Ay_6z=_l%&LOG$jo+s zUnpK05Wx2UTPqR~_-LQzD#H^J91`A@A;<%8FN)Tpg(x4}7Azc~WxilgleR zAw869WZeV<$qRte|9{U{pHix4ILo3m%F2{(^!|hW&hy=Dw|VNZ)|)4nBAR5^IV3AiZpml6*jj9pw(?kc#kQ>c zW9#;TE>=URoXi(p0~a5UQ;94~1|PlsMQ%iPgdtg(I4H&;$dFl;74b(%d%8&`M|7eY z$+noGyf^v^Rz&8GR7Hj)Hhu&X4-Q`bOJ$iK{&K4{+_w!=hOg}V$iEAexNKUm`)lqA zL62%*R32V5=?`C(lsl{@B4Vuw>3g8Rbqs0VtLO*K8vFS-kj;9bc@Z7@`HKZC0RLdr zy%9ej2NUH=d9%bYI?Zqng<2kVnH?PU9P%UEMX+%UDDG*f(ZO$Pyi9*%JAl3DADmZ% z{xU+Jx}SOgE%+4rKsRH*;`JRA|G*&c+P_3^#QsqD19U`i`rVtTnT+!bet=s779MXJ zV6<8!MyN-BOir}8K9avtaq$65y-8EB?I${xB#+0BF2r|TVlVC3emkv@^`~X(5!Dhr za$|s3N~9lb_ihJZZ_s_{Im||=-%ENBJ=Qz)zO7eE}-FyM1N!eF+BPeHb!t%5|`PCfsS3*)yTta z9xuHr1V+pqc18lP48dx-C2fw_=gMXY{<}5adBX*`p(6Px082_RHv;})G@;!kp9b*6 zev+b~3v^D=#~m?7C}L1D4<_(Y7~Ha*`d`)_;A&J&;A$E&QeGe?5w8Po@PkbIlBEh& z2@<3xd^bvp4)#(q{ux$0dHTP!01vd{D~IeAEb)JDny)PI%n9e3e89-}$4v)CjkH$I z!!wAlP=eOsOTV>?EdSPAfdlT31xE?~E2vEE^Nk+(ctwU`2hj1cfDIQaXMPZTsF7t6E;0`@#bK>}Wkin1wHAk0jO`~OWKkbtHHv1fUjo8ql#&h*eT-Y-YP zJ|aKElsEU{>RE-5jmF2K?O@z57x07fvBG~d6_uMyF4|gtb8NEis9$_zP_p23Z+^Q@ z@MAXM(q>rnqdr|AxSC2W;gw;~$C%*jwoZygoX3 zl7bYURkmj)Ls|SIpP-^zdsziJ=9`jEmzv`_O`2I)QJnp#(C$GVkV&VVqxyJ1M2**u?*e9Zifsu zRBIvs(9f>>BBjaY`RA!h5N46~r_u3$HZZOgA;UfOx^=`ZnMi_01amzWN>ze*5|`}l zxT;*BuouRbxtWDpQIok+&~&zUZ(W}+vJC{Tu(lbvC6+X^udvA+eh7z*U`{G&YP3`m z&$l}{X4JL+Kti8gGHxqV-c6%LNK7jOr&!C6Sj=%8>yqqHX zQZ6;K*fV}TUy-9*aY$4m)`AgmLUE^JEQLrAjw+AF8?F~yzl>LGiBRkUU4wA!r$5Or z4R9OujG>t^4*Gkxe1>f}PNfWjhPSzC_R8hVjmo{y^0kvNI}DEk8eZGdIYB*ejIS)q zrEM&yR40EoWXi2GRH^6Nwi*4%G>A(18K#*vv^p7TQRRP4Y;*=lmJa)<(14ey^6#!P zD<#=x73_bXdj_w>SBA>}SOT75nQP^R!3;O%)Os&~gp1s`(Z8YOg_jAK%I-S1tRKC! zqa$6+Z;Nc2Boq)kCON#^&MXI6({H-BAj?lkp)j$cUwted8w+c9M<6X4Yt=5TJmk)C zPlLI!L%U8HWOr7rMc=f{)JYLPEXe=7dr z3NBNPD)qAJ3Y%VMNl6_0b)+}m_+&zOOL~!(2H4n}iiUpZ{49<~?^Zu?t!u7^1-x|C zVlsSnZqr0Q+a3BV6Rp>mVi-F*H1xWdsUo5gya(V*(KjPK+^gY&praH z0xXJE{z>rQBZ_+c0n$^Td}_rTn8IOrarT4XLoaoOZ5TWLSCrKLz=wZwK1huDJBN#l z)Ckw(3nh7QbS%g|?$g&@yrN-(_K-`wZH9OBh?rVo`rRkf)hXL6LrM`*<0rLVT)Hyz z0uLB3hPe6g+%fGQaK{i!U|nE=b_F?1Urjc@+V9l~SGDnnwXc#6)Kzp}NDiqY;UA`c zKRt1(W1JPC`X!+S+{IC)<`F5k!|x0Ddq-hv!(P0Hp_(P5h!<*#esxv{1Hw$9l#tE- z`k-3(k zG!SAknmmYYatISxq>zf$i6ToNBSI!3$6<11Usb8tiJke8+-blm>XXxRzLdNy-;x4m zcxD?C_}7x3AH1T=byp5(XQ*AppBuFk{U)wS^rutATYyfv!XN`b1;jo+*vCIX;Oiz5 zOh4jg*54&z4jar^V8z)C5TP>BiRM6)ggAp2eyvxDQ-+$=!{ETf1 z(ay;O^GYnbVqR%nm{`f6T(apR8TPuJWQ7L)D#X*h+_{4Ppred-KNumJu*~;uw8Nu` z1_(7Ui;tmk?IOZ!gayTy8W3&7-8}_f{V<~Vw;3R;QBJaw_66lT@AC_5fDJNTOU#QI*Z5V3|3*j1iXy`dBVSpz73427+#QWUIGZDZu5}&d9K}btW2)3<9)l&ItM@fx?KzGu$h_@+fTT_tuRCQ#>0u$Vl z6B|G8T!XupIva91|Fv9LjG|nhvJ&;QYVz|)ctL>SX8|q2#8KZHjjJzgtMk83ps(o` zn`tRrn0X-gRqz5`3nMmf4EpGI8vJB@q)MgdHiF!_G)IUKLyRFnsC7uFJYx$)T$eQA z`7f^ZAW_1BDJi`PT%yR^JMa4q@v6EezmTfIP&}s0nYyf_;v{No&?$!Aaj+5XIh;lF z$%5T<;&w|ds9 zGTmh_SE_D}Lac1o2#A{$?#T9fHCxAQFz@wS;@V5Fsrx2VZV=#Hx(R)&Dn zug<(Y3P)}AEQ8wfbe-D=;<@fz1FI-^yfM?HjcVu2UmRD4G0CEQWC832IQAf%xP-%U zd832o;*hiO5tElj{;f5IB+{?r+LTyJgN#x{wXW+guwSd~luw&<$8yJji;Q(-NC^7= zak4$yeXkOSpHwnM8e7bvF=M2|h8}NBYyQ59n-WHDR8tusxidYjLAa;jGeU84R(I3Q zhD;(K#tD{67FJ9wFa5$KcPY_u%@0b~${Wr@O%B1pl2e4TFdALCj zrZJ6b!ET#c?fCpXR`bD^L2HMbI@@uVZ_I_1pRHM(m9HK;mx=JFTogPXmC@D;CC3PI z-RCapjKjl4Nm_e&hZpI^i;IWSFR#r1lgVP-Q|M;b!K!d9!$q+6%DHF>c};aAA1_M! zYHboK0V|^1oTz&pf4BcpZ!P+B8Tr-HD~kU1YcY*xd?}X?!3Y0$0M|}zE!|NvsnM(( zr}L{oNi3s$K)A^vgVN1vNa3s8jp|sUhC=QK{7>@M*h~D)m&E6FuH;~Fvdh=xbI!w+ zU5)Z&FWqFsqHhAmY*)qLCU&BpS*XhXPojXPGs3J7!L@fC=Q^5#=z4^&zYiJHVX?kj z#Mo3%aw8krsPqq9d}r^d-0G$amO zlbKzn(kOb7VpB}Y8FlWsSgH3o5Ob!uG;KVO!%X#Pn<8;%ebOp)T5rkL)8ov-qBZU| z=#__~9D_ST%U-!6nv%SCCaFJt2s@}a)QJ38=rCO}bYnlIW|T4Ms5nprf&oBwX%{7Y z-*CiC3?D8^99yft{jc<<9S>srM9v1WXX>LUn7Q9$4oddLMmCpx)W4YL?jD=E`b<1Y7H8#rmbasnD&N6p4ieEUn?o?X!o8 zotZtOJ33NX0avrJ!7CS2<=Sa)gd4%lebKiA!91rPb(g?Z-zOdy4UZ%u*inRr@CBKWo?KHROO6S zI`@+vWo3@oeTquXl<*Kgf_0e$EeW%wE;V=|8|IS{3KK2lbEE)`4DLZ%jSUM=RI>K0fM4|9`rtH^ytzTbtc+V4`B{1Hx z;e=Whb`^GM&7v`a-Cq}&;vdR|=AJbJd4pKD+-}BE04$raYM699qW2P>Z-x$jcb^_y+Ro=_Eb`AQeTobm-BDuil^mn4+^%9PL_aX% zVbn?qp@BVn3$==78=H5IfV|c9_dO?W)J?$b(5@J0QVL@oCON*{Di|qIGrF7o`cLu9 zD~v0v@ao$K^{7J5@=A1hN|v`6*+K1G$Q18p@udD0=5w6%Td=5;jZ!zt)-n^(eT)@1 zbr|El$uRk3iCJS+Dz$)8ZI;B;k^)&kU3)l#c%+_RevzlL0F*i`W;42x#kMU`xwmHPbrzLPRdRe^f?WAu1n+>Yx~eu5`b6h`C7O%h zj3IGbX$3l>_%Pidv-}(jXll_5uP`xCROTVn)5cKsX=`UIuqGocVgze2Pu~=^2{w7)ZB`}~AA&=b@C~Ms zbB7Rm;9M(0X;mPwH~#x>kR#i1%?p#+P%y?@AZoh|6z+azspq!q_mw!TCgX;e^?9O0 zXN_Dz*$CE(jaZGnT-ZrWss+BNrmw2erUXoeZB^{sKOqe#yP&VNX>a%9(yY;BqpTz| zI2NA~9wCqv^1Tx|eE#9AYR1wNZRgf$qPJ(*L4ou16}PsEx;7P+n-Fd~8#lF)Ott%A zIc4RgSa^2J66jq}a&?amm8l*DgU3LPqg@fe7R+#g`8pOh?52K6^tLL_ zca77`P!Z9ib30upCrWbW#+mYBa_L>N(Gkwi_!%B4(s`vt{+Bh1`^=hw-@)AmLvj>^ zi{t@ol<462eXAkx<+P2d<*19Nen#JXFa=m2XbU-a?w}0Wq`7%5<8serm~Ax{-q1oO zDBiQx&4cwTa3s%}nto4{^@m2WO`SK@Ld%^*Sj|T-36_gzl|CXx+WzXatKAYg^N5{< zm>)Q-uW#yP-PYl3xS(O{m1y$4tH*M6^Wc5Hs*1N4#kF#{Tfea>I;`-x8c+_BKf*{| zl}8^RlHaoP(vM-i3ibdTVD!nh=Sam=RuW9rrT54Cn_H&O8~hy$d zCW#`)^t!;raP!szcT{!V%C&NA;MELIvm=(ux|J!^Q@ zMj2FibVJu7AfoWsUU?LTvCtq|~Bq;kQw1)|By#(vi!$p(;iz!SI9zsnogGrPFx! z;)z{M?rEdu@1~4?;0iMcThF;GIiohf&9FAzQH!!P)pUof+fS?Axb4+%kmRbPTcY(E zy)&CfP`+%pJD@4d8mwCn?l8mY>H2(%rq$7h)jJ8{9qK{VHB#cAAEB{Z+!0^HK>1q!EXWb7GqN$`%XQj#iuJjd z9<1M+k33}CFYIi+-aESu)ETnowDTi_!8Zy8Ed& z*!B%AIKo9O(6J!}?P`(8x^te~5IPU-xw!X8Y1sSXdz`8GMlobdbw?-qau|0&SNGX9 zEYZCosoa=PN4SovY5=g#(S9@t>_i2uU9tnsM&Kj5LD$kYXb$~Y|Bu(0yjH_VdV`(c z71T6+iu4@H#ok`)-EmUSGZ$6rk10;#P&scrvwRWiSh6C2hN1-mz9Ef zvVK_2?hjLIag_K*p9Ji66Gxx~py?}Yd_FoKc;Fosbt}hAO1sE&-_BQBs6Yy&&zcul zBkUZnN*O;Z<{r_JoF`X)ylLi8HMKSo(qdq1OdmO)jT=ADB$In?(_i%QME_t4M8&J% z$K&!<&c*&}eL^ViTwvNE>tIcayHVMX!mZF);0Qukd(h#?VCfi!g{(UI3iX1F_e-g9 zTyotP^Qn;y-%o6aIyHlDIr^~rmtsuK!zAnVxW?a_QIqbDy&mA7PEvugykOafR%s?& zTw+*BPKCbWOtIM4{#pZfCXc^rIq+1)HG&7-%1FtUoCz^f)s>*iAn1Gkp$H#f?UHz(tE7uy41!A`1j&BOfpi3z(gM zK|5+JXf9h5BC+u6V>t zf>Jlr(fXu?@Rb6ky@|NkQ5USSIjcEGZ^hGN^9X{yL z+gK=8LQPUO=lnQrS>uwEr>(lnDrZOHND4N26E=$7C_N~$K#80=QEM&3XN>!C#5jUm z5g_oOq8A5&Rt({IiXJe&!R&|3-<~iNT;Pz#qson$7+1o8o^Ek3H@dj|VexwvwlZC< z&{nRM#jEPy0ANC3KTorIz_}G!V7-%y3clJBVYre7A|B~2QUQ!UjR~WEMEP=6PtE}z zJn%H@^io*=ml-s}`MpeGHARbPQ@QSXBCb(g6TRk+;pu-++ZVcKzJf*VzKWTps4Olt zRf4d#Tmu_oh=k#Sw+scCy?;+{diEXGvtPCyx|%ferGvnYL7!(@g2(RXZJFi?2-Te! zkkI_oLA6TXk4oo@jug5!kTxb-L=O1x^Kgrx4!>y-^-#Z?#QfnV-g&pD`1v3qNC5l> zN3x$LMt~c~PNj`48j>m3@5G?7R*^p6k|thDpDU=}ATxUb2o`izI#j zhFD6lTo_;b!l7Z_H#N~cODmUp3KC1)SNe|0kb~-1h{&sY*0~F%%kp1BU^g-lC8$pCpSGjeHdC3977UBslb_ zjG3F9uAcu1x>{{+cRvg%keZGE`FneWrt}SgaSj@P#RE&O7&mz-v=(0|C0NY1RMLm& z@G#+0s&P2>RE?{)>wM|*-Q1v~M1EUpjPzEbomOnILQk-~LL5CA`7rU23B(OdWeUV_ zub~G+dvQcAFT&r-Zca1C#6OGvve#pI>K)LqcAqW@X=nmF2`>pX!|m!oKI&mvO#^cbEPT;J$` zZ{FGf+Gc|jaE}atwp8uGyW+?G4HviRv|s1X=XsSuK-ssqTJl_tT>cZQ03taa+s`ze zL$ZB{ly&FfrP?PX%u;Qgw3aw|I94ST`LT!OaF)?sHX=I675LjwZl%JgZIX&!zJwyP z*R3#a3;O_Jwe~AiSGfuh}YF~r* zigG(D;+j6WaDUQGQCy6q$_HI>R97yru-9@WALIn+nxKel*|fev9AseH&;`n_r}Lv< zeZaSwrfybNtYx;L#QgCKPgmEwa-uV`-2?x{fHqRh#VPhCN%NtJQe`Uv925+)-=zNn!{&oaqnpoz~P_ivo{jMY_x(J*_~ z_G8t1LV)v|7X(_PfrzLNgMAlut3@aLu90liRF0#z40*Kzfe+C-%UiIJp3&9vDm~@& zc05FZ$E;a^fYTPepeKNcR42-%+@>M+G-SsD%9Bl)8y_Xhv{4-Y}>k@c&S@eqYzsgJFGAH(H}0XqB4<*W_esp76|%oy)Ashh zOzuKG*Sl)B3~aE>y_8NKzfO$TCsAcaAFo}=(K$M`3T%K`o;v5tKP6d4`LM-LFLfDv zdQGe5&|;79b2q#YJTRI2L==(TlIIxQ*Mn5O=O@#{Q(mhRXV7%{7eo}tSQ znOaG|&a(OsWEf7~q}wn!Sy1P%&@l5@xqCcAy9k*P`^1-id*sFkm)D*b5K=s$L0lJM z?p&3DZJaricEjvd^}>mSI|atLFe@PC z|EZR>uV4^ZL%f?b&sy0*9?+P?+kf75F=QM0ZeFzT0&?&&t)WJ4sb?*jc*`g_wIJ{? zo{9fr-ikQtviqX$vlRJzbZ%FXF*dPvho$acm;Xx(pyoQa``WB~qP^@FIV;7WncWq& z77x{)-hiaLHjn@5(tpOFR}t*g(tOat)F*Al8hmRiw&dK%>kIJY8UX&qkdmYHV;Xd1 zA6PjdoJ53q$lR5h%s*kvm$^@2@Ffx%!#2c+KBo}^eJjXzpcU?jA~-rWXVcK~nk=A2 zo$k;8W88%9unMg%>T_m48%32;OQq(H324aV;G<3r!L50GmZI?D5Vc*& zi7EJhvb0KY}W+jn#qqDqH{!IBBL%Pkun@`E+((=;v zWS%uy7Ejnnq$icO9>)s5%D4EmuunV z(ip05CUZ1akpp4G*CdK^=|L>>_)CuVvB!1N5?V+CxtF~#2-_TRK?0jW36;qJUR3lh zPk6IjUn^H)|H$8DpR=U-B!L_DBb(9xch#c}|i7E|BXOWE9=!{jGVo3?0#lwu<_J2aEPj9L2*r@urA5L{L% zo5AFdD%dW!#7j#h4~MiB^6tx3|O(N;d6<5y~=&1>N6W z@J3Ef-B$qp_dXL0-xCEOU^v>3Cx<@uj=(AaTbI1$nkq<${lTYTNJA z=O55`nZq-TI`1tZ5`wrF@r_9JJs7X$iCmk$CagKf``lE>%43I_NA74LOQANccxogiybu| znT|mE_=p!6KYl}AKI)w}BOktf%0%7*Bo`(Aei1hUpi*HL+x|C&O)R|fg4(VIJ`uKF zo$n?%>XeDzJ-J~9lG4!Wu@uD(LfE$GJ{gzbu=`Lc`I>%+IpDDQgqW9j+d?F;zVth% z=4ZO$fyjSjtUYBkaISNsU(?Cw#w@UqvRKVRr zx>Qx^IZNB~IBiGFFqcXnRah%h=AySV{uhqLZ!Gcnl1e%Mid#=8Kvn@J%(WzxaXc|X8DIaoJhxpA@NKg0dmu;Ujlxt#`)({ejS@Z0XtFY8d6 zE=;1t@}nGM#)7!1>?>J0m!NXx2-RN>FFj1YPv;!!b`UH4_^n~`Rc6n!r4^V{SrQ$@j_VjLsjN3qC#!G76F2Ak z9~$D3?nimRIK6_9CFS4boK-sC&!X#^6A1dhLN&_P@Y~7C^iEZ*;;yDM(Roh#&&rFu zttP#d!^j|pFNN{`XFvN&{>6Cs39K1qU$%?~=gXp*an>&BKI&B1J01{f9XPwYI_lHN zPmrW(4<>x2ZK2Q;JiXLfKWyAkfn04RR5lRKMo0%G1+V-Z*(NgR#`?nX9^&MfBH7Uv zF``}kWB0&OqJDc;w-T%4^3L2tf$)v$onC}8B_bg%W@FW3yD3q zXF+?J?*}w%(0gD!RQfRhMDxUAl&&1!F3#HR{}2F_;ak@wmHCBiff<=<1B%Q0qHQr} z-v{kXQx71_1c~VM_s@;=pW;Yrain%xh<%`&H}bPWpkCWCA3UIH!!x;gNsW^ZQh$&E zUOdBpOaMX&K#->NPCpslk=`NPBN!E7D97Wy!@^YxzUlrP8`?5VPJlYB9Rb=KJkX5+Cd1ye2tdpb3>02D#36BV5=4Dc z=)sA!epZ2?5c3z3VFMyD_!W$ZlpAjz?$uVc^Qb352xRtLa23&C;r$0z3~{>Hrovbd_g#;mI2 zGBLox^gW4t1|Svc8PY%wcm8E{k5Cx`OJwXnV|X&e7^c#!dn+mRNKrTYQ^4)>S&m)o zvcHo5`mw;!LE~(O$g%7>?y)~0sA7nPV4_|7!5yL8zy0wC)$~R{^{)V_!|6HsJT)X4 zFz6P9+NTve9fb9K%V6r=3gw5}qWP!zeGzx<5@^j|ez0Ev-`hbWX9biM@@@z82Fxt! z`@nMm_m~~IE;7VF6qV@pMR-!!!F|(w_BW9&92!zGV7k`m%6Cs58fXRa|KE!L&ut-& zihgyZ_n_;36w1tLHew9l(}pfr@SZ6%Zwk z&oWF07%zQMfQ;jRBH;s&j3^RU9#L2kW;~lCm*PuoC!|%|Mou$p!fY5rnmc*bt!DWa zFvLVmyI5rnsDXDV@7RSeb3j;8{N+Dzfk_aF^mlcv60Hw5{-Ju8j$f3RjT)`>B@+TF zk}3qlSzF6_-@k(+3xpNKSRNrq4a_iq#`;6V|5=Ows8PK?0#6IW&-;Rr1yZ*%n=Qu% zSOLl}@Fx=XjL>_yACk8bz?54WsWA9^+fZo%=Rw_WI{9z$-fi>JN_bk!h@4|rx%oPo4__QZHlu5CRP->-QW~9Q1Mhcj1od~Nzn?NJs zUx%HO0rzalFmC(H`~@a8Hn6Sz@U8#wuOBkr?Ybe#7anPVD;bWZ|L)E8)R$C5|0l{k z(I-)gYH}!RI3WEU`F|z-1x)??o3}oyGcz;@s|9^)*lV+jmG2eQAB#-v_*V)m>!6)C&69tcq;4d8VDFy+1n7hmNwIR#pX})B(|FJS9~;bo1QWdDsj3xqR;pagPRh7cnxqF-SS+jie>rP^WdffrAV2IPi2jSA!4 zx+2>bn04OH^XvG-I*qk6S}HNz0P@n6C?OvZsMezgsk3{Zh`{Yg?JF^)7revjDB+T+ zdK5MDPf`EyG}O?F+8BDBFDq%P-mX_<7lZ*v@$m`aXslTKa zKl5m0@@7gxX(?{eS-(WF0Vqw9aMX^l z?6^gTaScfG87<|$`_#xqUg?!3q2|tAKctpbluwSCMPyLNi}#DK`Zsfl<7;STiLLa4 z6J0oL*r-02*aa_fBlfJs->tN)R+gz$E@&~k3sV81g>+dF^W4H``iog#B4=JcQ0S&O zprF+oQKswk9p?AB8pF2GuO&=WxYFNYQc92pK$oEn>_c!vqAR?o#JF15ewBGZwM85D z!fl=%fv$w4w|tEKD>URk?L!bZNAh=Do4bl+F4o@10?;1F)2xe^DNiwc*NV6DwA+L3 zw}W9WEU9M^q|u|RF@HZ4OBMEg!PN~+%m`h;L611{cm@4zC-Wg#%G5|it3JCqM5Q4Q zm!$tgs{^8wFm6x>GhzCB_dL31nm0_XC%F4A(|~dt-6P-yUJLu6jMx{g=N-*X^19|} zbA67=?eq6ZKkNO{)682VbMQu#64CBG3orZkiiDC@Qvb!7j&*-|#8s;0B@66W!~lO@ zl-h^DX#XV7P#L?a2ZGPEVi`^EJTNE=@d1*5Kxcr|k+4+lQ$N?OgpqJLfd}Bf)gQM1 z9l}aP1;DDOBfA4Ih+-$emt7x`q$2L%hf-lPA9E@-{vRsBFOjJKP%Wi9Qu93#X3km2LYHdV z>+UTkkYRG)jsQT2BM-oO#h}_nJ^W3)5rZGdi>@h-c}yEH=#twCTb!7z9MS*9*;_zG zy>{)xl+xWTp>#<~HzFt@B^@FSgD5q?fG~7RDJ38nD2*WPP$~ifA|N@0ATcxp4DsFL zIp;Y(|Nr~0Z++idvvk%P<~Mijd&jl+zHXo0w4?3;X@s0C^Xr6u*TX6Xo!1SHgU!Qz z7f+%Hf#uwa9Z|K^MJiJTPsxHtyea&fig>Ffkd*LCwF!UPI1b>_qKRm+4Pjf15mgMR zcGZwxg>g^o$W>UGgELa&5XqMd8LYG=D27GUTXCqX_i-BTE$+IugfWvHPcYp%SG=Ef zj{Erg39(S`$sLCE_KqK~V^Tx9W5%VS)H41z@WODa>6dUMW8h!PZNTHDqb-PIV zSL(Q{s_ixx^Bdu*-=?FVYNXQ6H1e{0NuJ~M0TkmZ_dFLJ18KNnu<04yvd@C5UhN-G zrC7IVB0{92=XL1GP0jh5)<-t+a~g|jj&oTZzNCGRTISmW3lS5Rc=3li2|9vi@hk#F zTO8MaP#ZG>^-u70`cDE<2)36=gd3XynKQt15SfzvdiKS@=#qgH9UODmUc_%jI{w8z z8+WFOh2CH`?w)TU;nr07d0b`Ry*bJSK_j{QVu_4lxEpBOE+sMRnE0Cw^Q|YIbg)H( zLt(2p0!4b1`s{@W(bxdBGEz=tJ3QrR^KVyYjs-=+#{Yj;DgTW{|1V|A0E@P^5Yw>M zu(7}oWfmN$D=9S%)6l(FP+dl{N(^#fRWxOfhpzY8L|!%%SW5HmqIih+RB%sxT|RO$ zn_5{i%VXRouhDbxn-ddy9g?|ST-1Zs` z^vI!UjL~MJ8zmtL(1JhC2LV3_2>*I9;b7zKj)e+v!14L0bP=JJT>i@btSnl{ zu*(cShqT6n^b6zrderD+vXj+5nwEnEZ>IAAIkQ_BA|ZwfwT%wq+9)EPxwjCQd%ye} zu^{b?b@iu5z)ly(GTz0!fnKdXd+)+OMK2fK!id^Vrn~#9K(3Om3De^=ZvU)&pJ}!2 zM$g^MpzlFaSC$!_bS*(iG%jeD%EDjznq^j^Cv0T95NbjvpS+rO`)L*W^X;Y-MQ`-+|YMpg`D`qfQwjQ`OD52;3oqS>?r{H%s)Gd!>Q`)!= zY!AIRJz$GuXmNJZil;Y`6&=rN^tiBXkG!4pBiaC4q2nXnl?2|P3Vw3eyucKX#Ok`_ zA8!8dkcf>DETG!uXC?sV1$GtQWM_X;#s6%Xdth{ zk%K|ZLdcekfd;=O@0qI<(LsWqWLTK!4wy$2a&*!*TWvdS_`7=JyTfED5A;5Yn;`Wr zS;L|CQKVm|W|GaxQk(+xR1V8g-8UB4tV11n!cLo2&?Pu1^*?}|XV?zZ8wvav4Lk?! zOP-(w*Y}%!^BgFNlWN&NGGxtZ1ySxpXy26n~0C4+%)A~`hz zlt7V!PV8(94K61sTFU|x1NF^+%n`O{dBrRb%9iWLSG@LhA#f!C_K*&BZLNB@pqi@T zEzxCt&jeWlMHx{BhZ`C-j{xvL@XHVinYlc%2FYH|3e^NE-; zzMiwPI$?W#1Z}UmVD@FqJlGIN_D>CAC=XVwR43<@CxQywvpSFKxQj^oJ(Je6Z%-d` z1oR6}!k=uSltn}k^F$|6;P26fDO8g$=&)-LcX#&mA6M+02z}5#Z{XAL19DvF&tvECYs zOEkdB=s13xaG@dM0zbq>M<%01jEx-BRWAGzeKUdj)Z0?l%r|M=2vrw2oCLO6<)WwB zUEuwihvf-OWpX-Q-v6qCIQ_yYu{_kDoVR$VKXCbu@YS=4d(qIfH-aagiKC)FuhM{h z-e=>r6Y7VzL5`&}m}Ta3=A4|7M=3pz4X4E^))clQMQCQc3GXs;3!!F_ zd`sr9rX7F{cF{;}_I#kM%QaO2N%xbG)L{|0oj$D{x9XU+lgu=4K8}aRv6ZL2# z{ZYB#&}GtqXRM5tmfL8wOo=PTE|adXYF)1#t`I(9U^0IeMRDydMl*Z6@bzT!RBl9y ztyu3l45gC;J-1<+J~huc-|;=seJEz8)Ig+?nBFs>5$kj9feJruQmv8ukY`SZh3VC$G!V|mT?x9AIv)bG5) zgH9}mR|AkGJg^?Z)Siab5tRkv{@Oz;3+>;K^?yue6}DM&8;kIm0J&4^9{ijMP-L4R ziG7_E08?RM;BX$Wj7urN-u{N0_EI1Xd=IweZtN6xv5MYnWMp5>ulByvd0N0%EwZe$ za@bC|{dE&gw=cM;*vhWL>c>)fGEZ%i1!9T6h~ZWy#iG>PF;qlT~IYiv0<%Wz;m zKRn^OzUyJ&h)$;ud_~&0jnX>Yrj*}C77A|nEY^=_DGj)>HqeqS3tc_do;%UMb&2Msq4OR<2mHll{Zfn z5yU=L$QdEUOuDClY_Bp3qo)F4KgZwwzVM_lsXNuDX)7hg0NGiBsdh#e`hHL=P^ihc z*Eku!(H7NwSQBdz_0}+eZ>qm`U+eu0cl`%p-nxqzATK3%qTik zku)zM_ta(GX}HtiDc?-a`js=B=qu9+69KbuD<75wkEqfgDyNe1QiJN32Qp%E&TQDM z{0r?#1AH%@zrcR|{shavzT1`()|N>+#{six3-lTqk3se_E*h-+wB$Sk4qQP8mzV(C z=WZ`YSj#|ywjXwxo}nRfLncocTS9i5CLNbeR1lPvr$T2}p5wlNpk-!oC)#EaN)8eQ zp(h-PZHHIlIYLT|UL0^RS7b{>Vsw(vrcP?FoG zuzE_3!9a7)c^9RvP-1UmASn7-ZN11SwS7#$%#@nHs#4Fg}n zcj6=g-O*X>q!L(7&OoIi6@!?jG`#bCmMAIRJ11`I^X^V3dv!w9yDeL5!dK+y zOku2LGm3a}r#dHP_O+cfqVbH5Hp8zgo0qr2$kY*tHw#QI|5JGDugmDu%6_wjFpk4+_1(Q z$O{>}0bIdy8`2-wfo(twn3=dL6o| zd?sV{)#tYty!{#D*iudQuN)IOgIzCTV}F-Kz#aa7CP=8MaQuzju=x>LejA#*7=Yt! zbu-S>3WTX+(_68GvHiEnz&YrSsu@iFr(G!p-kkomO6>IVTpDE42Z=kmDf(t=&x3d2 zFBObio=uOvhvJ_Xe;g3Q^x{u#sj5sgL~2NmXu65J*zs+}gAdFb8zqSMa>0+a55fDB z0hCEAC_@JXI3{8co3CIKApJ9;(lS_~RDn)Gs((bAN=|{wZ2QXboxJmAT z{hVDng~b4gqQ2ry$Bh*MUaA}Jz^MKn#6QCV<0At(MvUr;FW}9Mzy-J#r?@%;5F1sz z8EkSQi>ZMx;tZfMo16`h9|;JhyyEV6#sJHF4?-5 zGO!_`vD7#NcrFoEl(-`9$wq=2FQpZ(Ehs*aspK5`!&ESPN{1Tk@+j#1_dOPSGpvR3 zq3Lqi(|rlhJxxV+=GTL!4oxZG{l!wKC~&HRY2rq)KYtBABPbX>0FDE+y~>x*9Q^UM z|ASi%k?(|k4gq#ls#N13^%QX(oBDC1c7a7|fl*m3;+u=Xp>r0sWf9nAkkiPr2Sztv zuq7-2Gnsor*rZK@R;6_b#Ruz$#mpK8W8z%~L-pnV>tR&eU{pL| zL{uOjn+?7QIjZ#s(~HIKMVf=li%4t^m*^|L^<_9TJfgM<7i=ddl`?8Q5$E=2KkNU< zDE3XbCbkFPp6GfC)azq%YcqOFH)a3rxFu%&;B4-X)s@ti+B`;v8G1#Ft)|z35dIdye1?WkZ z=b`Q$Q;4Ur$zlqe@?cgPd<trA%I zRW-zZi(W+t6fMQ-<2mq5UEop?x+uaofU}TJ?T6T3e+ZV6ZLny{1B5Wi$v!`{kto(= z;mhJ+w)mabirtYK-LWLH3V&XEG4}{(GwGTlnB$`xU@Ko9-nj;T=`PLxn(ryOnP*Ni zy$(u~2s%prrG7Vmcb~SuRr|i*dScL?N0M|(7i@~Hon28E+@qK04V#OA{HL*a=yyiv zEoigcH`eNuEE*D1wX{w=983P`ZldVk)h7DOgU~@`I-EU4U$ygCe}(e3k#S~n!auFN z`ZkC5M3ka+n#v|C`$-5z8WUD>0_WB%V2vqG+9%hvE`_AE`88 z8h3J;n0h365|%4MmC= zb79p_x)BdaYIbgiFI*nqtpFwT+AoOjq?q0ScbOQdPXF*^ivD=+m34|hKi+%Ef4xV* z_hK_BSfyp`8#daye>a)+;0F{8az>K0K?z`UB93X(wm{O7+wFpZ(g^$TS^eL@7MO}u zAW@y-uAWzk`Qv`uL%YK0@~}NSrjVm{fjBA5yc3?1-8pUH=|1}KWD^r&eKmmx_na0G zQ4orIKE3F%vzW2-v+TT;hM6)K=efGau;a1xv@52On%w7`eeaBWLLR!83|(jN*0|N` zMO3>3&%w-J#4^2)ES?s@g6cB{W=_e_59<2v&zu`MlK;=ie1Lr^n~A^K7-`CmrVXAE|c`{cf?5pih74) z^Pj}M$#A>=lq!Y#Wp9>Fwxdfe3{=|lO~D^d)Zzx627>d+T=dzE5Z-*>al+gH$R#$O zPes`14w0p`Z527j5+X{{znhPm9=3&gohWVQE0C&(xEj(-eTlLOncu zFsfNDGDPmcSycPUc%|!0z4FxG5PH=3e~P%Z6SnFF8P{y{e4ZF_d}T&$0b=~W$b5`y z3bfEk6Rb_l(w#=?g4?3N)Tty( zri~!Hxn@CVFZrKVPQj_}44E-B`~@*o*k|DaVUg44{JA=fU-iKUhC?!?sY;LG-O@RJ z&g3LJ~#Cy6>klQu1mk^N|sdZJ@TKl3^j~t_72<+eOcdI-s9)= zuX_{AhF37nszX6}02se6bzl`XS>EW;Q?Ou_aWyTfR9m)nkDHO9j&5;mmJr$VvbkZ z#G(|!K~0}hTEZtp)D;}|{?YLwS;x(w_m&Qb+tn9GbhL1l@?G8Bb-pw*NdbG~Xdzfb z0g(6T(X!kB#JsnW-sIXLP8(%thc81&`&cSq#`G^KLSL>}HbO^@IX}Aiw%FQ;lsVl$ z-d1C`-TyS*Q}mr9U}FjW?^&ZNB2a9WO*WKUmjSN9Io1^|lV#&pRW-xaTq< z=-aFo!o-?*SU5uG$=~~dFE-V?R1CRuC0$!n&!>i6B*xo|UjB=lvo=TPz`)%v%$z)- zuyF#f>Jzg9cfoH4u3L}SoW$>nLw>0%9WZ49Je-Ty_{Wok(fZgYGW6AgIE<^+pms66 z*-0dg^vn}_nVcKb76`Vs9?}52rXG^(cM$l?t6y)!_2pGnJEH`^79p4yc8#9J&4{Pm zKq~$I-q+`RPEq2bO#{W=mADrsOCRhXJYin%TiJ!0%1aq6bBl;-3%@7{V@)*3EV&g3 zH?fX%rJI=UWR-T+>pVbHL(f@+4Oky_mNRx7a)|$%?r&u$He_T;m3YpAB{xXmpQ@EO zP#1Zp=+d!P_(HweGHKhTFRk7&_hX9W)Twl$XW#yMQ86RJ#Eh) zgKY7h2C&)(4z-+L|CZga^Pw+&?jS50^LGQue|72id$7kLlr9*(MKob~*z!s9W!Q~; z+|$gh6Q1k5D~7~pAZGSNQ>%k{zAX%NNEsxwW@Y32FlzX#y`n-udnW4M??RvW$cc(U z6w`$(dvDJCdDq_$j4s)`VH4gl@pj#7@j ze3y=QwWaEAq<=G$Cz-rA?}(*H$!cThYyPXd8`NG_`L0c9Xo*EN^H(lF0=q#!_XL@7 zYGxrGo7jhffN5g1>*DD<66Wd2DtoQ>En!Ad3>9y?@?Hvl2_5G>%N;{ZPnDID8V(B= zC51wSWc1zBdvYIdb~7pm3wBp43oA4G%0)I^33?moiy`>-_BZdw{p)`@3!ft=4xogf z#Mr2#crgAyJ~4RnhB(mQNBa&ojlEo(4XkO>Zy1~nKx#dQ*^`GIc!~-Sjw||WW8wj5 zUsU1RHSk5#?6VZ_&DdTd(0p0~nol7sr&OrN=4R@$ZNByhrPgNI?q($lS%eMS+P}?? zHMFasMnyJJ-5FB#N7O;(@LM;F^RJ77U|^1j-?}m7GfO1EF* z?H*FLeJ31W_XJQ!HiY4u4w>Fk_b5(T6wLBIkScpR@zQA_If#wSY&k*3g7NkNzZ8&x zn0wYC6M`fGcEfk?oL!+ZL~@kRB$EH?m?=%LziJ?3hNYyO(6RLK5D@A&NxqgtlBDQt zk=f3yaPOg0id;etVtO{Rdt^rmSey5dKWPJrk_?v|rxSL4gX$F-tUY`=+Nxil=px8AYKUT868TbueI$HfwBlUUb`PWd9dVNd9(?;K0)U^lnaJuU2Ufc*%Fkle^QvaVbz#LR97iia6) z${p{JwitemUwbn$lIzj|JGn4GdCJlA5+@{-Scme#Gs$0qU)ZFH4u4wZc^#5bWX zL(bk(rtPL1Hjq%Bp`~-A{fUa`xQ2cRtAtL~E<-EU zdfHAIsU$4nUXoXMntOub3O%l=*$hcDHmg-04%`nEGBa*$K1uMRq+gn%@TPxvf_EV+ ziwn0qHus58{o{6zRY(04Vzrc8IHIFP{#MH0u9aR4@*Hn(@xfUQ@JP$6FX=YLr%ube z@bJX&=%k1CCBF@sjaty-kavPpNtlnh$wQJHPZ@7R%+FQbT6&zITW0SrvbM{h-g~=I zqAgxBmN_KKp^e!oyviTBTl3!f+0DIR)8P(>mIrRR0g%_8CXBYWIU zTeUG`vCSl>20V2GYQriBXSO_(SQLKq>}ws>mejSRK;JW8&rA!}s9?rtNKGDpPD1rg zQ>O8ytIA@pdcMFcL62)A=LeTz3-g7Qna=BBYutCMXK)GMnK&G)RPZ+VT)%|qe6-bD zt===XFuIW>XXwju`wJ1e!w%LRfv&$q1UY7dKs8V}pk^2n`YugHoIgYDY30d1xLCM{itHuC z6?n7LN#HvdfNnyg6?FDhfQkP+cn!EXes7*LH|aMD5z{O?a^fnR)TJ<{{CT&jp(qGi zg=8D@n28SwaJxwW_p6~vehD?K0LB*RC|*ELyED!IjGTt~K0GMxdRCF(>7%*^`9+dL znf6NAR}hs)Dk+WBoBAePD}hR=J13G1qALkTxGGNlEi5OcOX{xmF;Kst^JTMHR>zGK zQkk~T=QpL2%s59C0vDt9NP|7Ho&u?TChI$TqG3{&a zFCpz5eYKCMX2!#xh`|yDarZ(Ouh1otiRW#Oi@_1o5@CvylE5EO>dY@W=EO!W%XuJj zxn?#@28>|FO|d7WoPxo++)RH~--Y)QZ_SJ^2-xHB&dm~J2u?XYs@{iHe0UP?blozP zL!4;4qjT2D`c}Sf?gLt6@(h3Az9pIBDLyJ_N!uz<6SeYo! z4;fMSsD#L7o?mnmHBV)YYS4WVykJ2-+=st^58hmTY<+xRmCCk&F3M=k?s7v$wzA0U z(@B=|Kv+xRS9;vCUFk1I?gDmRfy^Jih`qf-wsCUVxUqqj&0v=w%qeAlc`gjVxi&|i z%0NLva;B69Nx)_25xt*?n0VWCqUb*hispRrT4WCbNtgfvAd3qpK?_K#Zy!FRcf!| zi_ekYuB}%*T<5!vL@}upY%l{MEOywqfW z-oVkZ0D#2xZ8~urnk^r^8+52KwEB$S7}s8JVfCnq%o>Z)|TU7b2dfg^q0X3xE{Kh zrp155Qolfvd8F)SXZmHmucdm~{x&gu69xdZ4!ft=NdivmBF!I~4(PWh0JeKi1N>RV z8>$hARv&~a-SjjwU*g7MQaEgcQVWO`^h7wF!LF;;G37w?Tx}Yu9THZC|Chou?^NEr zNId-$EplL!-6J0FgEMT4ntfuhF@2x(prdJb{MeL7#_MHo>)`3d1*lEOPZbWeTxer} zM2J|$5A~+6e{L~KGw)-o~*V5aoS&6jY#cVz0idimlZz~7&qkX#6a%hDgjGxWskGzX4$KN za~(nX0+l3+V&+>h6sf`UQm3@yCvhhRM|uxBU{BAcGm5sYVe_ju{r2l1D)$#-c|U;L z91?eS?mt-jPR^r~+=Wl67(RP`hF+PdeK7(tH8)>K)8Y8wQWzSYm&c}fx;L`XBm;*w zS6y4;B?)+8zo?~8yj8?K_PYh~Kk>##Abejku>qD5UOX+zX8Tc@N{W(ki0r#eS+k*r%scc2 z`6HAI7=N4rX~$0|3x`RO2pf|`KK&MI12Rh0xzS?8+10i;Y32Xa0wjl>;%BuUv0EOk zn<3a$1H~4V?z5|#;)K1Aou0)jx%dz<)Ebj^VrIW~x^88=aJ;s)vmiTHVEbqR2B|~Q zT(pHfd<-Ep30(bT%cRmsi`UJu-F_1PT5N6Wq^b6;(ALI@nqlK4abgVg0#GlN*YP8_ z@UeErpyovsW~ncG`@5BoLr)^}%kpwb(%_G&TpvGwPG5u){@S4ERaQCOqm^PI_eV_$ z=$<)rM%S-BqC;&Uer7!8pUQuf#wc+aWL2yw|HYobLSCW;Srv1TRSDN2=D*cAd1FLh z@95qOV6ac*hG(|%#pxi&u4VDhWOwI=1yb5eaHmJE7tTtc&81nMv__zCxe-7E7X0Ek5zavl% zjM)!3hE8{SB};o{fvvLX%rwUi{oD$_fC|-{!kK*+^UiB>>$6a$ z{lWS~|*m09R<@)S~>uk{)(I(}Lo zl6Lam+G4HR3K(-V5gQWYX#5(8%bCg1o6s!Uq-X+23VD9whyoWGh4-?BmpF&31FX3i zsR2>I(7@?-FK6#5dNxINHiWh{c>gNt@fNZ(eQLVah4SnS-M#=;JtJ9?WRuY@gc^1{ zQfQg)fx=|l1`~_5Y(0A5si{d2A0L0o@_TL=3o9#^;O6;3L%YLRg^h7JW@W`yKSvyw zQfbd{By7iv7;OhTrQcm1jJfrq^Ra<)97ye}m(pO!>rbiaPiyb>rwbmdoEG^ZsSI}_R$@3ZL zCNfEOM)l5}C*PzmNk|w44;2{{D)$dy24QEBVr_?bm8}O)yXNP+6PT2O>mG;<`Kn$= zle5aqfs^7TZ{SI}1^$qBVq#)=U(2(Y=R+r@ittjU%V0r&&&#)OyN65ls)Kg##me#U z@JNK61nTF>Q8!H8Pw3tN>GRCb1k1_GyIs>?W=5|^#fRSjGk|0YUIDv=Hf@Wjg zs-0zkFaqo8i?yC#1eX_+fJC)Q2n{5Cnnu`sv=~yhja@Le3pGve_X-uYY2qb*Se?== zcgv)ckbt00uW@;C(SD&P>E+9p9pSk6mc#*EVem$Vs|x)5*VA|Ad6F6DPoKCHr1iA_ zeCqMEr%=X=B}@3uBk-W>y)2W9=V;h@1MgQT8s#N@rwshwe*4*eWg`TMSJ8};Cpv0% z9~IO^kfw>rF*&V`SM$7n{Ti~jVx+01rP~XK!=;lzPm=n}g!e>8Vg#WtZsk|O&ck%$ z`FMG+`?5HB$B!`r)pcSzyE%B7^swgewPeoQ53Jq$bC zLK^Qkr{$*Z&tD*2=p*O8H#DuX^$k3yhQEa2w1ZIA8I^%t8eV#1hr(xL5 zXCla%_s2HY538wD^K(xqBf~w82YY<{ZELyi;L`8feBzVwckd)M~ z9d>Z1zBBDhisbB>4UwbKCt<;l4W1K^pqs5@^A^RKCnYJ$f~KmZy0axZDgML(5+9#P zx`?|C^X4fA)jWZyJY1!VQe;G&yk9Qp1nRBSw@c^aCcA?FB{?~Z^v-#w3dHHhG@cyA zpsUI33irkecEPR?xo$s-XuP#NkiWe zArrirYIdHj)i&irB%$7HoW;oS@bmb61VTM7?$@;#3ikBZNUeg3rd2^V&!IHc>-R?% zw6xB_A-H_cKyjPks-$G@Vk^~l0)q(R(FM|{aiLs?-Qy{WJFzCzVt3nLrk?MO7?fr+ zCyL3})$@BYpx%6e9LlcCGR|3U=bHEx|G5WdL|ZdCdY}TVqXewGQhZ^g0;n*V_Kj|N zgaPWex$v6Ko&la0ae&L$#$!+EuvXD7=InXtmc;ObfYYy85ZQQpu7_|4qv=?dGH2K! zm!qR2WHuD7TWnRw=VPE3BoTcLDf+reE3?V9QuIeTh`}>CC)=k0EJU+1n{KD zQv+kiux(XM8RD1VK(U*am6Wyi+cb_5S>F+78AhI{ytOn_OLopi-#_*<`m|tys+DOr4i3YpYZLN#9 zBfK+^#a=Ckej_RG6=NCc&klQ4ET>pH0u#rxZLj-R_cp(5WE?$E-%4S-Hta}xlqJkR zwQ+}C@%t5!PIslf!tt9d^6!0~Bg8uOgt|ZJbUSjvoSkV3X8yd&jlFCT$?P zBmY#EN7a@i-LsxR&=}J!cCWuJXSy|} zxtbe_IoP=A)gz+i>FFoh^~TjIY@>cmzP_|YTEa_IrUYW3ub=Uwf>REn`h)T8-K4kV zq~-MRi6=dZd*ItQ6QXSq-!K!R=gFM-4subguC=kWqwav+eK{p38g*lM_&If1F!)P}Di2Eh*O zC{_por(%&>TDF9X+?g&`Wu9`rS_wRpl7E2HbxwQUxMR?<#kZrfBsPS5?sgn-`)QBg z>Eo(p7m+h%rQPXY_aeUKU;9)sNxYhx?+Y8uB_ z*WF=+7EkU}Yc&=shq4r>pG||pSj)Fr6|)UKcE5Ih9+Wb|yuEC}%53Lp#86=Edq-Cs zt?#I*ITENtMh@7CFPmZ@)rAWehVyPNhzbj5{P;16p&ms|zVp)1){f?#=_VypUq`PD zmGtWwHBRb1>9xZ8wr14ZIREC7FX5_i0WV8MSL%f>-pq{-QaEPr(DA`~$lC@QCu>{H zxnVJtIYZrIMy)Qx>m4$92SjKigZ8*r)E$gL2KK+aCo6n*jdbM~Q<{mTt@zYEzNeN` zWr@?KBoX)S+u&Na#d5m8D}j6x4DoN<=chx-JYJ6Q#-_xseC1&40VZExT1?D#QL!Kd)seQOinT$B$=ABkNNUB{rc?{5#6RnFs}sQ10@GKmX1T3QaHuT6La69$!V;<9YtSSR^sA6{;lTQf@N5wXw zcklAz;p0~W+nuKnaO?GT*xAwYP^li{D@5prM;C_A??8PKEU}+I-#7tIU<}o1X=y1# z12Z7Z)P6iWc@ukzw0mg(lq|X%*i&><_=Of;n>tuQC|XUT@$5Sv|8%G`c@Y0CuF3ZE z`I{$!feA6(b5*=w!|;@Orh4zr?du{}_D*rv&*rV3fnHtmjSD7~y>%+>BP5`D0y9Q1 z_~5T#VZW?ASiO-`C5-LUr%%QYYh8^*Un6c#W|JxdALP-v-4y?i*^u3vd#j^*>Mm1b zHrFv@wor0M72k#BY`d^D!7{B$zlAnr&*qm;zx1+2b%zg2vuzO|wh-y&j;bk5`Ne_K z%Mx~zKYQCSgZTF9c3Nuc*Bglq50$K8^(?&r)}N|2-InR!?HzY_4`x zvig4Ep*z_<(I@d%)to{uBAR`Vpm!PzwVk^wndIJZHrZY{F+8QnIt@~KT`Cka-}d4K zG9Y>ra%L4`)P$#ZZge?x^2T_|(}c0xG5GX-TYGB?*|xH=eNp?G?II*!9{ zR4yG~SvX0VD?#YL5nW!qYwXcZ?zJPzszvg$vyLI18_mG5IOz^!{ z?sfz|q2vDQ=;4MBY%+ta+NH@=CG6}ZXmNSjX??tU-G3s7=uvt`8WbE8(&#%1UCLmV9*M)wj7WrHdU7!TD z3^`KmQVu{_zbb9B=do2LA|_7zDJ(cg$qA^v#nZB~zCU0eB39j^6|*KFB-E=8J6g&f zhB3U|orP{HO@(1Lyto0o$=R%~H@Jl3I2YRm#^+T&Ey^qr-Qjpep*ox+yElE&!C zyUwD*HdZ(tSGt>pB-Mb+yQ^ppVO~%(sNj|yTdOYp;H%oXE_a+1MCPZB?rczytoFzF zns8k6;Ib3k!)(3~Uq*Kh?SBpa@;R7Lr1^6nf~_&|7{~v7O~D$r<{D)qmeSy=09gYP z<#$&sPo;*okPS~=CrKMJHZp#CtpDasm1!gX;gN8gQV@Ziw{`61CY1JZG@kV2*nI14 zE-%5#= zuKQuj`2jclzy+$A=C&VzRQUpNYtU;<81Gi>ZrhmGA{SUumG$K2%>naj(@^AtEb?)}tef0)K!Jr9o44voMib-8$Z2f!HKN zG`iv$8%1k?jCM@%9pp=E8p;j-rE{(MKFPX`B1e{*Ze{CDZ62jca7VbXXlInS^T(Xm z8gOZ*S3*_4!t9++q;lS8)Yq17^4w$O-W|~P9PZZ`GJ1BFc+{@x)s)jusHI``Ol{m; zp4WMYVd$QxV(PzX#gN!=FLaNx6j$^OfQwlHuPs!_E)m?(t4d7(I^;UJp*YK{zIDe| zy5X|rG}#BP?bM^W1yL2xshL8=(uqq~^#3 z88qaa!FljywOI&f1CG$V#&+k7{+H0*D_=f6iK;3*aQrn@dZ->eCr_(az!6tr_qMyP zJJ+iMGMgq%TfTVf!_KwP@+!B3kd{ymB4$ZqqfplEn-dD-p_bHr@W&8vgJ(1TR>-1> z0dW8ihtan1>j^E>W~w@Mf6@ry*ZGBk^Te;*o1B}2d@Eim!hk1S?buD?wz&_mEnTm{ zZsq08mfhsK!lt+Ms2+HWs#f$Dv?w;gX{@OPK+g>YxYFks;sfrT``k>Zt z_sKgYlRDw44U!3BM5w+t@i*CwruQ|V{kuYO_Ybb5Ej7G%)2x`eE~cvh0`tMP3?(T_ z+yJIWiyBe@Aq4k&;uExvO$}y?b-t1HfA=}AJ8SD)mW|XUsi*$pd(lEg+pH}W@7`Tz zA>RfQE}vMN5U+QoEuYYi(6X2ZIp->}MI%evA+UL(*Jv-Dp|bo#H6x+u$8NwIMIWT^ z=I<(sO!cSH;GGWXaAtPZxXP-y46wa&pMILS&%WBm_zSEf@OgPBM1TA+$d&2mc?_w5 zaK6?0Fm*lTF)ihW*+K}OgtLRhl?MV^!?T!6Ff+N=ehXJ%82)XZRQ>6D^EYZ=yaiMf<4deJ8GJ&H?G;NVL zc_(ttNaJQ3jI(u^>}{u*^fP}K(QgTQ?B#9f>#HpRhLaqEmJFy@dVQ(kLT{%#ul!Wq zoip59;kB)Qqv0G!@#E2bMebzQ2k>sLTKe6H*z4c9m1JmIyIWtaG*#)wBtE>~9PB3S zG3M&zG^Wm0Qub``I+a^+PKBpTL&M1T7hXNITU7=Y3j(Xh={@XY{zXqOv4-L?E%No z8zXa`W=0r|nIboS?N-0Kfbb_pN9S8e`7nEX#XuOjtTA>A)Ux-axYd0Sz;O=oaecM< zo(>orES_^Y4&uNx!#|~!c?cNIxJ}~{LZ__46a_+Ta!4xM>#A$ootJR}E~2cF6*oQ< zk3Ob4F;#wW$HQpobxcTKyzP<7>`CdxPo!vjbu)poJs}b=J5E)zM2E?u&S|zRxK;Gu|m1bWT9T3#~ z>H6NZ)uO}=Hq2eojJ!ZwR{=3k8sUOz^9z~}WF088D4E9mnmLW6-bUr>2+X{O^iB zK9JlzR$;c-F_as~7VCZ^dtgbA@~xfi+VnoA;A}1a@MGbTn~GxAtKMm~4JuTnor{xR z(BrJVlI8h*6*5A>Eab1TfOp>4QlJvjPQu6eQy0BvVunvPb5Ad(d%JbH2o-eIgwC{5 zFy*gd@uY(47dl(oNbkGc2codeR`m1l+rS0C32pV6sJVcifmXg467UWgnh66iPvdqE zYbgajK)BO?^4o^Ltf=UDbEo!sD@tqf7zCv$UuNHfe9p4+%gA7Lx?n=7xo_KoCLtDy zj{?vg(^zW4r$I(N`epo{Qu~lu+Hq^c_#c4M zJu4I6UnTmRbF|t12lvG#O=K<{oZSqesWtuA8%{s7FDWhJ)I63R=SKQFTKT0sA58N_Pk3PLsItfT_Sj4 z^!^3jEIPL1Wl`(bPhXA0bkZqyd#9szM{~CipuIzz0kjai*wxPkD9T@{z&0RHiZ%`x zM_MhK>w~(VRNE-Dsf174g^)5?eqQ+PnCkqHoY`}#Mx5^FGwm<3=CA~@4{%Pz8BpLB zm1y%cuH6aALi1*ATtpOD#9!lqB4buJ#?41QZ7D(8ZX#zWb;a%?+i;U!p7jQMo}jdO zyHa$nj|oAWFun2f!jm8-uQ;hk_9I#^pGHStbldc=9)zl@hVMLH_{ki0vfY~_?trI> z3EZZ}R0V9#usix-K;H7#V4bDN&w>24>VvaejHux^CLdzsaua7~Xyanf)H+fKtIw90 zEqLy}0@Mg00bEx*%a{Cj)T{V@6&b`wty+@{p4%kbl)}dk-%s6OeH+y*>`B;g!yW%X zcYfs3R4Gi>x>)P-Rp9!EQDd#XMk5c)st*-y4g#DS0`H9P^- zxHJ<9i~Vkp@}jM>Ys^IrdN+D^hP}zFr?N{7BY8?(GGtI^d|pjbn2(B?)Cd>bDd-rU z9&`Bi{QdQ&%_thrPFs%If>xMd|LAl9Z4T>6C8i zk`C!^Dd|vJDd`RY0qIg21?iOT6r>Rlyldkp{QmCmo^#I__m4ZyIAgqH@V+m)S!?gL z=9=@F&wQo_v%`1lIzNA8rZ>BK2<07nABWnWI^RqjT`c;aQfrm##P%iC8MqbKkK$3H zbo(hQcYY5$mC(i=x^O&{+D2o!mPr(HnBqtgaKw{7#V!9%rh5GSyVEr*?~`ID4-Xtsjbk6hb;{s#RM=iMn3&#}gnD4C5>Hw@wU*pSBD(`Xh3N0Dp^sbVBg z@>ll*(?o>x;&6zgacM)#u)9k3yz|+ZY$Y0cSCieVQq-SfQHC~KCJ`9VN=W&HG^fZ> zAw@;Xh>r_LpkRwRl6R$US{S!lISgYhKc8wbwF)B@V4YT3W~;KZwTFun;0;NTFybKC znXPD%q{(1t4R{Fa8BHEjDdrbgah#J`PgGmZJcr4S{4II5J?(0mb&fUWdkJBO^S=OS zn?K4lAa6br;!_8EnHN-BdU85p$w1ka0O5{|77&om02V~+^*7&jMLGjd1A?7e^Uc%PpWzgw(LRlkk_Iad14*9&=ir+%Jg=@-^^j~3r{2vfe< z9mQ2kjLyHH53@rOFR&5K}Q${#qTjJX)MPqaXtN*8nGaw5SM(8E|w92uTe zW^b_w-@36F5l2Rn6`G9HA&pa(c1C;+9bOo_Lx?D_#X~No^9pIG%d^L)+S2$M70vT1 zIoNfu5*!$N9R`UB!5uIBoK*T;34?lUbFxTdQiF890Ecy^SBQWR-7;^dAN`mTRW$=&^MFt4hQvAUbyFk$HAKFh6M+o zh{#O-JG@Tbl<9R2RoB3PnC>&oNg*NlUEGM8bi6rF6V}mWJE_hpQvJ9M(xBIRr^9RC z#FiSktSDnUcopz-7VRsX*lQl%sB{%vvj?4Rnhxx5d`YjydqxOu@INo$a(up3Fw_V9 zsCg-4uP4y2tkPia&ov6jwh05bbH4NI>pTFBy%OoIOAc@iZ7yD-;6WWy^n>x7BMDKW zfYrAXwfCZa&l#!ul^|nIOJs%Yb!&0A=U=h+HGBarnR24pv1x6~xnK~-@;bTV9U>GB zVp<0eHW=y$#I#--4>U~6dPu*`R-(+*W54g1Ur1c)TDA8nW<)=4FYhVu>G@&ZHu{i` z+ooG+eVChi`1_NSg+l4$S_{+h?IeLa4*9JqF;_@;o?~0uRu&i|y|3>JYPNR# z5p&dXJWMmG;LdjvYxhO3QR3yq2efnjwv`{RE3G8ZF27CCc$p|zDCy(05d6!;{=oq` zaMvU_ML_3bNf$V9@7DWELD6tr0L0(YC!$-T1V8tezkOB(89KQvvss0OB(m(&A0m9F{g=scEp%eg=o`N-DFqA?I z(S1bGp_$?RcQYI4m>-t@S%g1*lgzb+X4P?AmN(A5cy_7`{p`&nL_W%CeU?fT2SFimK4 z^9xrY8E`%eipOrI-V%C9{?DNPKfP1pINV%6x3XSumdUk6BXl|LjhEnCk$)sj)@)6a z-oJ^}a1-(;r4WEw`SrqI|AN8z2mVFYQSw&6FRtt6ZGx!HCTCspKJc&wlY`lDE1xvT zVBHN=FH*i7og*m?M>*M_2)FH)_{I-<_JDQ%`xW4ci*w$yes%7ptr7*4@4@K}%7v8Q z@k57q1r#T9ml#u_0pYH92MF+x_7y}mO$!yg&zX?mF*O)!+g0zayO!QM-ekSny??CowfBwS6tq)xFUAlf9H$Fto)sf?b)Uy15F$nZ!cVAZ&3`ki8rsDuz(t5P-pmG-g}`%^ zEBfn}|G#DT0uI^WBTEQh!3E}kvVBnO8j|5Sdi}r3um!dx!+$UnED2g*PK1Lpf-kAT z(AF6;{ujyA0Ob+Bq;KQ?MX0?K|YaFR&_rM)FrFeyJaa}3D*pMzC& z^&E>Iei0(Ik$Jh$$)kD7Y#r)@X!5;NY*?LWFmAG^=&xd;LPK8&9<3)25P358ZOA^W zG9$PD4EZ94$%&`M@a} zP9K;pFT4y@-ppu+j$i1Ux6owDjCN3lM?U$@ z;sgQT?`i?*22bQ2&)v9m_X5%su*~~=j`Zz(imjeB%u4m6b{Obp@g~&0wd3tso*|P* zM&u1`Ht6rJ3TB$KUx)g}GEv@o@^sm5x6ykB+$Q+E1j#N@N(=>p9rZIgz@TFub%=YG z&VH;G9`~>k$@(y!WLOv`e1qWIT4;=vZ^keVGD)E>-tI!{#OP!emS?-0&4 zgBK_nH1XMZx^>={t%rUN+(ezI{Hpe?5!|+~q;^axf#1q8!@gj2CzK(kJm5lU7!Q~k zdW-YmAwlh9&6dE3H}S!1g~xvZt=2+WsAmMQzj0JnbA#zFaw|&mmy{VW`u`%R%rB7* z-jrOVb%;vR*~U|ny;xv|iDpo#`UgS1KNaV|=+7wDeLB*hP?PadBfJmun4{MTv#rmY z$NmYsIA0w+BD+ijrPBUpJEsq4h5$@(Cnumrpxp@+zvyMr2AAx8k=|v@7kqkS1(pB>n1kC zbC_zVjQxUn--RflRw>JgYBKdgN;}vuT)?EOEwxaIw)`estv{Jpqe|AF9+9J6%tZ<7 zUFglauLf7Q!@lR8P!?B~eDc&^6l83hB_H4OfqKW=_1%yFC70MR1BoG{XbHJC>3)M5 zV7E#j_{ufJzR|-twf~r%>&80y9q7dEY#2Oxj0?0Ht;C$Cd7x9l-x)d@fDO)32=STL zZk*<)!sO6S6cf}8_p<=ssE6us5lz?12T#?(n@vQJmLP4L-28pmAFX#k%ik`*wed_7OJ$x8rWMp1sgVY^;sP;yukr z=%jTT4Gb7>CAtNKPxOY26)#Qm!={V}Iyoy1BP8$ddi_6P%(&(E=V&bmXm!-bRAyrcUepo)On|lDmyYL6fDX(PmDcRVM+~vrr=K-sB8d{^o?v zwNJ4*^OyRBSn&Yk#KhRX8>Zo6Gu(q0q$QF4sGrMd1DlH6{m_IQ0mdGmTVNt$?y@sDFIqyY+LG?b8hBJng*LO0INqoQuZ8+xs7D6fGYXGzl;md7^{77%*~!Qr)!&V-6 z>blJJm#)q?PvzL){{W6r+}oAWuD#p?SC{FHt{gm0!UV zRWE>h$1#$aF$nkdPngT}XUMj7lb;&xgUt&fb{AYf`A9}bhfQQask-I_DhH3m#E;>+ zzsSFUw9U7KhEKglCI*ZZ13a4(E0;ZsVq>)!w$0_ov80p5hus9$2ZYmH8&URz`wxEZ zE1KRt(4bC=EeqRMW%YP+VNmxuw|uecv48Uc)nCr2X1Jv|f$Nth}LJH-2lJ?S~ zd%3tY+c;}8X(7N+FhnpnXHe5ju>zgXy#+1tZgP&5y7g<8I{jsbjdctd+-mfA{-5%; z_JCRX#nZ*sZF{T?Z+gaiuseWG_(U#VC8Jbq{bPSsX$=n9Bi=fzht=U%B$!8|xg%Fc zsN-4`U3C_ilj`=7CHF0xc2b^Ao+a>B$9h#0o9g;I zCM=ANofLD&FkHt5F?yv%q?zNUXOy)kX(?#OSW2Ex+UhQdQ<2~s4z?$l1QtK?z*+RY zz~vz%He0;Yc}S#FXZLxLE2yhuW>LcaCpI<-Kk1a5vK{W;I%c>L?#TOLM;}AhckJc- zW42G0gCHMmZSt%~;VWo(ue6VCE&RFA9-HMCo8I?jhjq_yjo@?wdGG(}>68w-U1+_u zAZJ#4NI(^hA-Xqdw{>)$?U|0`dM_-`!hmLjpmw2dLPzCk9aYKeHyyF@x&%)pSI8uK zb$2^jym%A?}`3%K-m1T0G&MCFDXp}$ykm6c%sZJKJnDm4oVmBg zU0sjc3~0k??Np4Gc72OC%Ufy6q8qLA3VhSpQOM;b&Prcw9h$Rkd^C)bu*A@udYsz; zvQRq@oaSr0}WNcL*OgW9&2Rq%ZG;-)%m@MkGfAP%8jzD^j^abo&0IXa--Kr;x zaR^=?$i4JiqI{}2k&`>C1y6`i+Gg67!Sww(Gj=Zf zG~-O4*^m8`9rJzP8z}sz4ha6V>8Z;=J?EH5^vpw~P0dxR$ZnbVn4g zA`@V?zZSeD&_;V26rb6QX6FAzrem(Q{FSk4N~EO^Ym+RTOXzdUk(`G^x`AXmc_{#4W|Pr*`L??7mv!jp8+%hyzm5o4bcIW{Ee75@c^WEQ)ZL#e zFW(H?U_F41O3}mEdyseF$kdQlFG>8_*5;#wZn@o;x2+upHiQn$f$;H3>Op)XYR?NP zSl2Nfi{wq_9B1%8oMOIzE6lns^H|))ih_rjyzPg1DGu@~<>676=37xN9-b8IddDVV zDb4D$Bi1Jla(bcbRc(cLV#Q`Y7z$9~yzN1;bG)v8uiWr4mP_H-#_K|> zLwNe=qQ@S)tTv%yiq=}JL@0GzcPCdyRhJQ>NSOS%L`zGWrK!0wsC#O1>iKQ*V*%f- zo&(rI4Y81Sw;vf!3(`J6pypbS6!?lj)@KP50qmdPa>9X#uXXjZsBv|g7zFbcnBC%9 zb@Mew4ZQw0wyhn)MDB${WSF08be^taqFQ250@;yZ3=}Ax#*5SD7ymgMGx|c2^lRl)iFN;j6;Nl5cz`KKzXJ zM7>j09Ve2X3|_W=YjwNa7EFrEl0wh@h$m_MK5KE2mv*+IM{*RL!hF4nmIdna9R1sY%q4Sv0++# zm`OU$tB2{bk3@dI`>0I+nDQ~AZrT^s1M3#7cPb^PK>=W)q0jU>e$kLjYFc-fM4j&spMDq>? zMkTk{ZR3)idD&za6JhI1a>lx7jEhK16y82)$5WV~W6{kBic@!S5ZS|v9QWF8SdGK_ z9O?OK)>P+*Pw{#zoyBw1QRF0vb8!)yU0W3&nf_$5R8Ra$zKVI)cMI|joez`e2d3tW zkP30N_pBGbQnw(HogN>a#j46?CdQ=P5M%fc^=-y(>$6pKI(BlHB#~kxwgjIv+Kw2n zdwzW-WsqL5c=$&WVUo3f<~kWy`EMCkb}EpOtRhC}!vPRd0?_R=c;mHR2Hv-%28@OH zlv;`nL|T*)@#=i-G?;NYj(L6SXW*%Ja<*s9s4lY+{s_tKs5$7=2Rj(;(HFNbUG^_z z$zZ?fJ&E#D^DUI(3A2CH>P`QEPaDdPahnVoWp&IS^BW`7;X6e-g)Bje|w0MC;R&bHx*!&Iz zyyXJ8CR2#AAGg(wlBj%4M3|!tm=y2SUVf0mVxL$Ze)OKhaUF{(+yr|k?#77#skrMh zuA)3ED^?yihA?Sh1y04tAZVTasaY~XaxHKJS-4l9AO0ndF?yqEUz%-%@-_jS! z&hwPB!S(N>z3Psd?LM0p6|AlknfaaB#J5zgf1jfFe|(tx7aFz11071utmIgr8fM86 zKq1$xtLg0EfFj0mN_D#H&}h{&LPJk-f9qpkxJW5MM!xWzo|_=ovUQ`lALFR2>w~k= zM7Rt~L)lJ)VnY^>G3ON#DADU;@z=P1{p~9HJ-yqr#NFU?MVV{H_l`#m6fM)cQ95|hR5P<_}v5z?K z)Bs%YLz`%6kyBJ^qp6_jyQ1(0odPNUfDuJ23(cn;l0jVY=B?fRcC7C|-KUon!7@?tAt&s4b zG6J>pX0?Z(y`Z6i{t{r1UM0?<_IwhRc0 zgkDK9GGT~lXsGe<|3}+Q8BpUljq5Fx46a}TW`ISzh6pXbHbd~?3~%+2Zuq}MIrl>a zrvk=6iGJ=_{87-qw_g-a1S%O3N#zTB3?~oe7!nj+D8cVVpfqs!t8NuPNX${WXsB=r zpqZeut_8yElj+3eOu)rnz5m<@J*>Z9eB$6@F~h5k;0jofnI@rTzkSqaz=Nz$CW&PT zJOi0K$Gf~n0+Ai_$?v;$?1}c{J7t!}w_npq!)c-Z&bKhrQ~t9;z?&s(gx{5=HxD!i z)yL>?^|*n)(|ga08ehzl;}5kffxI!ijG zfK}0n;&lrKRRYOv$Sw(?){*X*S z?7bM1*8yr^Pu!<}osJA1E;ht)%X!M7kp<2V4x~ZUHPB&J76YFOa=Z zVYBcd{xQyR2A13#bHkuGlN!3EsPLC2Rn`sYcd08*vVCAmO>+!W!Z@zs13MutsohLx z*r?BpftO)w^)cIZpPm1PN1%t}3OCrmd*&LFE&`?lrIjdhdR?I*WIXqy%7|J*xoT~`2Y^fd2LQhpE-j4y6Tnq zOok=AWy-U}DmY;r_^^fOkfKrCu~nF(OcgV;JhRtlY|E4=>GQDHdAeMU?r5G6f(OoM z+eALG1|KzV9~Zl3zCUUBRIts^5bVy)y>3PIr$J-kc^)O9m(UQ?K^|!S#RD%Uyh>1f zYH-mHbVY8pj|^DmFpGmGKJ~wlo`(=1IE}o~cy3{$;0kmYHUrV?sqW!{ewl)0r;Dp+ z7$30O3XsO1YejtfV!C~0(P2P{zDH&wIi4(<79ahxCr9>EO0bLrcGz3mfF4r2p)A;I zEi?1$za3MIsdDkQPqJJ*nos`WzlZbv`X*L3HPlJUnRo#n8xofXs${1OX+GNmt<0i) zgIwHdkIDL7^IsSCFJAmSM%l#-&TO2d)fiBkwR(b`{h7;ZZBx1vMw$J)+|zDIC_XCTC*gSyM7!9IS~-b#x(nixC8$g-Ho3|ZFL#9b zzTQV`f6U$r^E)xKY4|%a!>s|z@JETQV)jJa(RHo$|3g`poB@hRR#y+uAmd;RO1A`w zZ{@2RAVufdcvsO!puzLIpIv|DopX>wuIN~1;(|nsEF|*S#pajXo({yy6qU!CcspR? zq=$Xe#vkcC@ax>O*%~#2?L5~Gxq5Mr&=mO)_92`#yZ#R^ValHTl8ePR#-}a1xS?_bI9z0PN`ca02N*!n=r24X@%va+q zD~f;TS+R&Jt-CWnmEprrnyVW&?G+deoD?%P%_BMjnA=|5hE+U(N@W%9boZUu0vv}7 z>&B+m@wYVu4XRS)Af9*gRwO4A~+%IMq+fevg{EZit)E!Mc<|(c9^B13|LnA)x zgr0m7u=|n{CPclPHsFViQ!3%1%V*;PDn!tVA%uW~WWsSb-oOLS1ocje2pb9US)ai@ zja9c#S-3Cz6057M1Rr?6#Tx5&T#Fr}N{Y0e`;Qs|vXBqjEKEp$Fm^-~+Uk7FvN9;) zp|qF>IP4ZOse3>U7P#{S`)G>HMQe$`fVMtlRlH5DF)(|$vN__Yy#KOlVUs7We5Iy65Y>RDdo`R*I|3MRk&!$6Zrv8Eb-T; zni;*sCOE0{OxqrY<#n}u52pAZUY)%ljP*eAd|~~Y%wA$Dgodh~7vT35P@K7!DI>-U z=p&kqnd9Ma3v~d@ZEf+6E(w%eaTI#}=6|Bh+?!OOK*GS3T8h;y7P8nXG`_@ZyM_`B z!H`_yY-NqcxosTblkgVA#w}{Yg@zmg*AG!4`!`e?YeGonRre)^a3nEcY|gaF1V}#Z zo@@l`(pe@dxZ-EPL>MRCmqig|v3QbV~3L#e!`>ZSWb_+dCy~5i%aW+;=jzTAub0Ye9S$=(ST(q-xq2(IO z&j(Pm9gW8ARn0EnAKecwq2VyG5TJZmmyrCyy6po*&*Noy_V}0L4PYgzkPSKBbQ3PW zYd?!8T{D-2*R!BHZF@>EfF@JGbq^+zqt+^(J?ud>a!ZL*at{SlJ-y=@$ARlt`Kr~9 z|D=)!sP~qt{N|GLv{srlcFcc?B!Hm-C5Eog9;=_jrG;F1x=b|uM3vN4LhZ@q`uSwY zD&KlERkyFdSHlbxC9a`fh-_d$MGdB5d0b}!u6z^q>~QCnwB}&r&0tG*b&}=_TY)L_ zeN=sG9R4O*Rxz~sr(fwJ?eO@7iRdfJ%Y515!HMjn#r0`T-H7NcGDDpz+D###?f&mU zE(DPqhwuGOY#(_(?$Q{B=Z>BuS!n{TvgvCPe8gtk;b}!f@Gn*mBTcfrYzfj( z&kH?HiL0#VQKS4$UOFYm*m4$nfOaxIaU7cAXtrYBTRwobFhe`nE&1Pq_uUQMNkw}EN)FL$*1#Ek28k?w???)vM>YuVi*>QK zqx_JMT`M%DRBojSkEA|dPhejM6sVoyRf;tEmy zUOX#{joi^;Z-bjbD)i{RuLU;8%>cTTnuf)EMZC{J_f_Mvht}0VK>Y2RU+uawmBw2n zE>hjaw0BWSKt}5*>1_MMTi7iu4HBUH()x9Z<=$23RX~lV4rOFvYiB`q{B0@}$!?(QJf?&)V>o>4_vY7ln{%R$%UWa|A_ z*3G`^%Z8yf0K5;!>ohz%LenaN8<}R*U97hnU^gTObcnsm`|LD7CKkie{~-7^1l-an zNK%q-gD224Cu8?^2h1t8S%x$}+vgKOsWqZR43nhUQW)FMjLTAASO|bn^7>j>&o4Sr zmOY3o(2;sp*VBjQS@h)J;T>#wRw_7>SJ{N8qSHI+7?8EbLu~b~v4yiB}U7Ep6 z;iM4lhn>|4y;Xw&rhzw0V%--2qakxpmlCL7-fc@YZ=4Qi z%vX9WCOLGUby?;w4hE<@Bf~!H&bZ}Z6qmHtom>lNsH$cMJ9Mgs&|4oU`dYT|`XEha zS!JG0b{Hf~gACKI!-!CzM#NY{1@p3(lNeqnK#F1*o4U{M0mJ|x0C1{^+7*u{qnS!@+ZtjewV2zF?jr| z{UrYtQeTg;FauH5fF^C3ZfpW#ft4>GGTG~3XQvEGuPj*FS7RLJ&v4d~j?Ar0tJ%mJ z1(m5-#BPKQtj_#UlpH1`URNUru8wAV385{rJPvv8Nicrjoy1SoP~o2<0a*%yw=xA( z?mzDMrs&bM4tHSx8NXgbH4JsXnuKoEH|;?F5sII0ReJ{MmK2xYktW8JZHJXVVgEa7 zaP-z9=HWn2MGnsepz=M!tyq9HcVyqM7C6~Y6wfJqWY4_vkadZ}qm_%G!mmKeCF$@@ zwSK_(o&@LAL!!=Wm7tfqdCovNcnPW|{nDH6j=WCo(?e?@cn1)MM*YhGjM(n#-MIBh zpTnSZzqX36{+v$S0UK6?Q;3YBC{To+6kY@7=8@0$yTlV-8~*-=g|D85H^8coXgHZ2 z>;~1!=9)TlG^os2KNCM7qboJ$If#z2zw^U z%3VL!=_=i+dSWJC9~XFkK{nsyrnTd4pP^fp5R6~RN%*L0cFg4s>^CLY7{`9`&*t22 z&0Mkxzp_0u?ZTP)iM0F18TsxFNA-l|X6TSnFki#omzR;I(3sN0!y;qM=#-Au@RzTaMEtwHzLLdUF2qrrfX^8f{n=w`r}QGhfwG%h70aMR zYH%mnr)3CLeDTg~n&|FQd&Fn9AhyRJF37jUA`3{Q(~e~JQTCbY2Um9doJX5}mLWe5 zkM6WJGr{uMouZZhp`^pRiG*9N7W&%j2_tUb0{fQ$v9!>Fm6>n76UViTUo~Tr0^?0T zo&>eQU4+6=(SIapykEfmb;_h&Dv^{UD<%FW&n7MT5Lj}m)(zPqxN7+1XPPN9#S$el8J!%Y;s+ZNV>2^%! zNFwiR-kJ86m4Ck?^A&-y;lAL9AWwqZRz_Z1ChhZ6BYX)FvBNoKT(I*l7oJA-3r646 zS0tnsSzoM8pBaDSeSB?>IimEhFA9(}dLS50&vO!t02c&u9*{6X;=;cq22Lc#nWtI}+B0R*5mxe_~^MZUHj2a0=%ssI*nYNOAjlb4$ zJU0H^_EnsUnntB^v3x4*s@ug!`~DGj-t6~OM8q<-0|Meso&;B+A@8_+n;yX<${+>` z!!do0HS-u^S9KQu6tE(*4NXnB1DcqLxfh8_kk8LL8@mioBA=IE_-?+^SlvtnjK3Km z*^ezRTk`HFqX%8cG~0z)eAvHy&RSVC;#fHdHO`+&Y&xGrTWa|eUDJY-Z{f9YgJ`P} z;6Xn^BYF%FKyVjgQTJiQwXCZ+wb_^)5ue%*pf&DnmWkxH{zX#Es*gPAb;R_w^QPFG z+2CxASh~Zy+qatMUPf*%iW|6dr@mt{rys!vy$u_hY1V!%a(2%DG9!_tL`Yb|(uCt; zw>sQI7U#IeS}Ift>Zze1+O6IA2_(h%4w3TA}Ut#a6u%!eD7Pkc&Sy zF#>G;@L-9te;xAxghB|ZEF$1#0Ht$IbfWDUwzqv63)2I@J+I2YR3ulP4S6^cX>28L z8_%4O;6E94utqKA-p)6(aQps?L!?Z5;3ZX8QO+Z zb-r&F>Kj2;wJ*{M37(&v{2Ad>3q;30*fe(ek)NzfcjZpl0nuSExH&8{kK``@Ntv z7sL+;!y~wPOA)^VXQvd?=GK_s!dy*&JUJk3TY%d`yNBX84l~vxwe?oRY!?^iv$V!K zs_^)+s#gi|e6mcxl5$XvT5R$8UZ{=cd)$o{ofC@w@Vc@I^9Q|yDzRac`Y$KySxlR! z)MY!8Hn}5yy{FXUzE^{K=`F_U7TKg?HWQe~yApSuPQ>JjJVKWg@2RHtyphrz5tT&9 zBi?$O`?a!*ziHGoGauZNK&a{CUW-q~HV|qVLDkZpKTU7P}V=Kf;ZU6ATFKw;Vb0 zVp-8Voi5|ZA#0CV)QK8kibr{awWP(~q?{z7ZPOmWmpixWr-XAkND^l-&iC@sAfjiL z?=`%VQlm3bp`9>!XMA9ZxR=iCF*!s(n z`H{%s&>SnW$4tj>dpt6!saODc)&3sr{u%M2DmD&w1IJ91cgN;P+`0gQ)N%y0};rjDIwCzHQil;ck zFnB0-a0H-F&CLl^#Bm=yJRd|s226kxfnDhK*DlOodY5l?8Nm+n7_@=e|Ivxh5URbY z2oFGt6E()qUZR{nEP}d+8G>2O-=F5UhQZ5TdiOIMw0w9TmAIBO8|3rtRYAk$2qFE2 zlF_{vqSIwx_3yv#O6vTNv?ej=6WVa0|Jwh~V_RT%6C}XATukMZ!S??d1}6Ivl@RmP z6^!v(D8L~_xqTi}R;bGorGd49le5#(bmKV8sr-j;gw>xZmo@^>q4SU+aDxksZxB_* zX|oU7j)6?zsrvQByLQ0PgC}tjSOmsPa{sdg+P?hD!q^``DPIH+CG`(jHfYPvS*~|7b}J zYNvp_b=8!FD7-9HB^VL*w;y9ZV1ZQNWH0R#eoNB2v@>vH5ojkM`*g^WP@T|sVX!7Tc!Y@((L-So>P)Mgi>cQSpw(ocydeN6d6V{xO$ zi?m=ZzZ5qEC~uqcZ}SnL4wu=$dr$Y)Vt{PyKE8A>K9mPD&IRLCP9Ptm4LronUJ?;8 zym`ij=;i6O>p2a8!GFODEVPYvYdRDP> zO6HhWA|8S%vpwNcM&O1;-sfxdQ9UP7d0mH!?-xsZ?-vXj@L2>_Jv0p9F5jIBd}*R= zj$Jc8yTIErvX}g|*{Y+yg>Ea?w2`}Tm#EEA+sV^CTE*$EnOKZYBtIj66XjcJ3Kt_A zkJ?v>*M7OUnnSGOvkKM^xENVniNe((%r*1gB=+MqaX1I zbD-l?d+icz`+Th|>vXAfMYPTqneB_9W@Uq5N}WiN^;m}JoTYuaRPx^$@wQl$22aOt zGFT%TU>v__fZ_VMA_bWp0x@8AXgXvWfTAw&`%p&hQ)Sz)d0>xDnCO?x+l5Iuz9Lyo zRH3NDl5B}7WZ)u(>ju($C+tN@oX52>nUjQP`jR$2B1Sktu^Ol_J7uuQ|5ZE#n@YD4 zhIt}EI3D`4=*a1rs6dx0oo4xPu2nVZ@pnu(2h7~>;@nZQ{Ui6tSq5XW?Ek-{PZ!z|)PV z`@$OJdQP5ELdk4T{^kO_)*1AB%q3n3-|#iEPL~!Vap0L+vCctTWxX0bqRjVR9m`2> zj!BXgfr#Kr$?l=(>Ide#huLPeA#bdQN#Doe;WATBf)jKd`!SygOxe77dsw#aQxV&+ zN`mgFOLJ|NvwSS>j`r9$Dz62}7>?hoj3P#DRJ26V3rbg^i_2YnwRCQHL}Z&M5vX^) zC1M`-ZklEg^FO@T4G_hU9IH5sz5M)>+LuD96e;4)zJIw?zn@$LvHXFcA$(rU-6+iF zw^fs2@Nt11yj&>u&q&h-4B9%#2{wwT?fROWwQN6`h7o5P(x~-pMyH9=~^wHfS~4k%EENI z5Om_m$3IO&xEu9Xn0%2IlI}m8u5-b;xptvt&f?A9Pv!M|F!=Z{Dp4l=(n4#M<>s0d zUfa{I1Ee{KO)nPE zke29*&Xk7{zqlO2FGk_Y{FGubj~8BtJfJU6=kRs@p0mP-;CZ+niGZPlF>O-!?zKvb zdJ637Y>=slhulTg)SDBUu06{Jh1~re>u5%w_K?@I9h2g$NzX0XwW3iCfB`!#S2hnc z@P0yP9y5+^$XLOOc7U!|fOiQbcFZ2hhg}^}xn(g19uE7U_`5LF6)N_YP&|2%0Y6Ff zq;mPjA_YCFcvlbRaSm?D80+-UYrLxKpwcgXhgTpPcai;oRMY**V4T|xGm8JY1(VGr zVvfW7y#!Ra%9#-60mbw$KBODAuT*Y~Wl&EFy_eE-Nw~!4c*XR1^b5pY9+9Swn)+TP zA%;F;Ywz~j&GBJFj(4&4v;7i!wBFn)?`%A8*K(|e6onbU{59gJ1<`6YId&eD4@OJd z8G_jHmk)kl)2r;oir)7hbe-qwuBId^`o-3=6yh55JQUjvd`HZ>bZd+@*`{(^HW3W! zjFnaSXEruOE7WPXum#qLVp-%Iqorm?T*#ko3cJ-H(fVMpEi3OyeNI)W(IPbwazX7s zdRax!4>vzatf`N(Z&qDBue=*5DI7&+=3KxGuZMlw&mJ+IoKSCYf715e#*Wxi`}@g; zSj(VK_bpcZKY~Qi_FrPLXB-3C&72=2$?KPgG>0_z(-Y)ZF5Bk66q>k$5=Muf~qJKs8RQui& zyhq`NcsL(!K@TiqPxH2CHfp9@uE9;`D$e9V&7b(-it5aB)`FHC$VYj5U?0;Ldrc)S z?R#gSI=9%j8`L<%>Xxy?qFAu~#wQR}TgNOY(#Nvbh9AM){Sxw4FLrLl<4{-jLTB*O zeZ9h_De7jl&H9VgOuo#s+f zGK-dQB25+=LB&sBnV$aW-)*0K&fkASseo7Gcb140;;b3Ftx7N(`98xU1m*1c1kHC# z9=r0O)0CiQGTV_CMy5h#KCe0_*nD{(65;Z#Cq$yE(w^yCUxzd$EA#if zjpv}Fp7Oj>2xtxmAk5K%V^;VtHVWVu1vMj^xG>_81VgSIJN933M>;|Kd@JR?QkS)D z$sWCdnsh@PX4(xRbEZ%P^7$QHEztZ3q{T}o9)#a*%k18?la!jRoJPOOJ>WSPP7uzM zurd)IHSvRmL3vWpJ*W=?X?K)ebU23u?K28bbdNWw`5&&`4Y z&k}QGCw$N9%1`+14vPf4TvW#LeviO$$Pyb$xx}4sS`XEFz5`~u9ufMy2!5_^ru068 zp6cuI;Ew8JW1Y#EfmDUzmUwt_wY;Sir+4W7du`2Qo%4aGU+An(QgdD%jXHI%ug>Gn zg&ShwD7k+d*faIbX}Ni{3^Q8qE^6c;`D0d13RTs&o=H$-ZDSZ+kS8Xx!(;6eJ!A3} zajBf7mC6xkj^y*w$9kwQrXrGqU?TQVDv8}+OsTvo?{#KC_bq#M^p10GUMF(@8-E>1 z$g87CV(t+CyRQ|5@$R2iE@t)8Hq^%sykq(A0H(6_<%|<2>>;l9ggfXHMFv(^>YPe? zSlJr}jWzyMc1b6Ij0iS66&2(%k>fCK(E<0F7jmDG+y~|0=x~-GxB3TM_LaJHK+sh} z&e@D4h>5~7@s&Z>bJYFA+0vX?hh!gI^fzsC4W=TI$gZ0&-t6%j)hvA;Qskq2EA!JR zJ^4x9P(HDm#+2Fl4Y_1G@AA_KtP-tu1EMwY!L+K?2^%*=d0G;((`jmTZJ zHlD+c9FD02*N=~~-2es`06kp!z2)Lxa%DqMX?7q?s+dc}Le6WGrf6OujjMfrK}NL< zvo`x%HCO)GcD!Cj$oo-5zH2pXJpTvyA79Pl$(r2lG-`I|Fl-lwYh?c}wV-&?|p@9;dgHSDG2R$)LtSZR4{T#R%nb9PMR z^O0RNoF5aB=&N|MS-J26$f-Eu;kdSvKbgfcg~1*E`P03MHKf+El`oo^1RnlcEy~4m zHUF`k$HdFiPlm(yllc8ro-rAFTstYCHuKzh=iLBWJwuNV?ja44nTs>e$7+moeiDZ~ zlV-{rGdmA#bJ1!7s~PR+dm}x3RY783q-M2H>xAbhbR}SPn#xJTx{uJc)qnQJjr|1{ zwLQgk`o8e&y~QS^69%gcu$?w`SU3n6^9E;TQ6|47h9Y>Ac-QkU(|D4*#C9T0bXhti z(Myf5sJZv-pd@3u>7HrvViU}auEpifVNv{*E47p+^B4vFQ@&YqgxRp}Hz{O+b1SW~ zu^4b=^ly{5RO>iltr*3YD`s#@*xEMMP!zMAvvOfdU>-t)V6}XX?Zc~5$UpcjN#lE_aK4)`NY_0 zs$A7=A{?YcA4qBKs_%cza!{piESd)LlP#S6?0b{NnR_ThWLe7e^4(C!RDBS8x!$dn zS?YQ0&w2zj(YtY^a|5vGV6taV{`e(BTWK%x#QTqf-h?`ilZb8Z4S62@QQGD^oL$!* zyp4B_L2_3EXHiVR+%>?HJREA}LF}5j08xegEWv61)r@q!SSAT}VoLl(5Tm!ai~gBs z_YyzG#f+U^9-i=VfE>tGgP(}b<;?4e#M>H7MM1@^$nK_iDw*|&Hu(qddB)H}?I_FB zS>G7A;dJy7>^>C98c zBX?&fOp!RRaDrvGb_46NB}=;*<0nm@{kmeFSwDIX1_g&-Xg3CYaP6LrCG@o|dH6-3 zp7FXv`I5LZu6DMW8HemwCJ%KJ%LOfibbI#C+W%H5I!Z^TNpZcu>ht<&pikNZ z+ESofei7n7Z79;85owg*ABD~PQ_tZ=8{3TR3>x4~^Si=WE%?2TyxlS90@jgZpt%RW zWBU>aJR1gV-g@?A`ClVD|>8GKRp%Q1gIA zC=^|x@Wc^gjEdqUx2`4%uSnWB!mvr3?w|S?P*X&HN_yse)vtnb%i@UT4N}?x=rQ-A zDJj5U_JbAzg_kiKSAn?f!R9|r;+PGVD}gMmfL3;R6I|Y~Z{;&{KY?iE&_e=?S{!oh z8vJ~7zi4>6*~*Muj6yxB<*qq^{p#Hct<-Iu|2VATfOXTandQ11p;>3?L*^*D1{lp` z|E1fDkVXyttlw}XXZln|p;QVr(tGEt_49HRJf*o2?z&ZQ&vhqA@pWII_dBLx-#1CV zh3@{8K}5B)XC6q3{7s`oF32;-uc+K6b%#aPtO&%NQe)0?Em27Eten-2#WdMvTMK$m zp@J_!CAb-F%pI4Wk>hUK$x!}W$Z~-^%lrR8o;ari=GL_Io%7~vO>fTicH0d z@=Y^13|VB*5kWbb)u+pfE2mR~i+lc`hA9>)P^O;3!f(?-;%XHYC`rM}>ukRtr~pfv zU|5`gOnV`u^9Go4{B08l1Kq%!92P8yffyE5@0qk=F;avz8|xGfNC?s_0=|?XT|ofw zJCBC-NC&b;5;XK700>eh_Z7ij%%BdUWotk0GlQfiDa!JxWI%7}1rtIhEbxvrP?p(f zeZgVAtOH~;apV#NVInWHD9-=6?HQ?b6Y z30#7&OuGT>)sLg8QNhLNjcp=Y{;}vkD?)_xb9O_I1uiFtrk=nz?Fe0E+H?&F+qaig z6?70NhPoGMp2c+~mOWVgK0O^s z^jMKxfcEu&+nvgd)Yf?ZkZK+vk6;*=^SC*1A?i!RKK*Dw`cN5Nltp9x?_Dq?o3 zKeN5ay_4rXZ?YW2O_pO>ZT%Bn{`MVN z^NZBn@Sl!_ZLfbS`O8AFVD?G9#CYfS-0|#9Wdb3lw?Hj$!C%B@be$rQuCE;SF@mX~ zKzKAfQH(lSQCI9s9o}~Ud^;5DRh`6QOowNfuVW+N2Ho*ccXDcC279d>bMPC`{?lFozEc9Q z)3z)yS5N4HiLBo}(g!rDq2mC!`wH=etXHD%=QGnoms*018A_FT{c}`F7YBmzjdx_G zDwLh0VPPcOYn7i@k4%Hy)xi3AB*+qSdlO$OnLWur-~H0hLnRiOuJcF7JQQSUK*rz4 z_gOUXy7y}`vG^&5ulbD+Rjv&q9Hfp$pg-hSM8-O!pZ)u0VEiB6jBb?E6rRjFqz_+c zI!5EC$<=A;o=Wl8`gmPFDxxiy)@18kYbW?G-OZqVhyYq7{|?j39kW&>z^mEHiG;lM zBPztNwz&3TgL7=qQf(ax7|g)2P+mZ}fq#?!AJ9Fl*B|JM0je$alzg5_TP|&eNLFGCsoh-oWG-e=jeG)~=x5SgU+9%~ zb26j*Z#Y6fY-S*W0jL1T1y_-<&hszY#rW_p zEMYUo$*%HElO9i=JpqU(z#Q4_hj|VzM?7^mAYZLpC2lgIEBE@?on&3WBqU2}J#Af% zO%nNH2;emR*>HjH$=cAJE%s;MzZPZ0e}j}RK9EJD93pGNOa?G*+(inhdD`%Ol>^xv z@BfCs#_fmER)v@LmK@_XQF|FcU}Fp}pCnK8LD(cdcJv!{?(sSNBH83B4)p*<<6@g0 zNT-9=TYLzV+y4gNEB^ll-%Dnw-o#ufp)KJorlhQ8L0tw-=`t*55A#AGwtv1nVgSV5 zla0P66c!pF|6DzL&ZP$cR43RF0N=CQ97uBj365VA3A{}@HG7w5db>-52C)8K(R+PR z91afak6>u|_YuSs2G-l?Ec_A3EQY|u!~uOdkauer1VU#gjN0?xPu^%C0v4E7fVKkYYyqkUa1}NIguh3k zM-G@KE}^F`n8|p+3t(+*E13Z)e}VbfyXRnC7{GutIE+}T|340)y@$|q9ymZ8zlDT; zO{(NF!oVl}7l-P?3i!kid>*#=0DjLTFYr?elB~su(Dwb70CVgCj{m=>9proa5g>6q zJ^G`xtp`5Toejn2GsqUk3TS{Ad*vc}PIyE7^CU2G|oYleSYNBkm=GdMcxAT&5k#q!1aDNa9Q+1rhL*%wR9 zFEDrDVMx>{F0{@j2M=(+3HTS@LkB#9k3q$K6Yx^TVq=P>k*ILC=@-KnuX}2XwX2Bd z9GjF~^DtnDL4sFXZh0Qo;->Fg5F|Iy|1|)QBJEf}n!8G41EK9fvT#ohRt^9T73qWI z;k=FKLrIXEk#8;^#RMeG!3mI7ip0D`lxy@Z>NhT^nHTQ#B8FbiMl-2^25+z85Mi&4dLA}h7}^}}(f zv9NotxX(`y8fO;y?e>sLJqdX(a!ovTm+|!lEHUA(2303Z(;^c+Z(O$Ih2bkM+{9;z zaZB0Cr>v5J0zgwX{m?Mfy6r~5k?6b3Jn=7GkQE@tknkR?&XD7P!3Nr&-fRl5) zOKpDTe3QM(JVzL9s&>e}!F>#)@-8iUOH7BW1I6k&m^txa*6*%ix)A}^S*7{D_=8`{ z5fJ>?EDQdgYkVn;uhN@!Ikxib_4|4Fz0_3utJj^p3fGE&VWRyA!_)D%3WN4`1$ac_SWKR6r z0qP8+!+YhVZhW+a6R$5Ly6nJvrYG&?t;1YaD(kZiccdJ2Gjvc^$hMuc?nl`_OhV3V zrW4jVCQn%3XI?krm(;ITz!Lv@y8BdqLB+n+Tl}z-v%)yqjqf*)IdH9F!k~uKS^rG= zve42V_1x7W1PK}5_Tn!iD|g7PzmxEAx565rwZryFAUtvFfN0^;1_7Zk`g^`&uqX?M|ucmjtJq z_vwq82MGde$$jrNe&i<|VzlJPNbV{=K$q5nb^R;+)$aXN+xn7Y?QpK}0XE~1Y?sIT z?@PDPg2!sB@_J;pVNxueEhYLLVcroxP&(?CQJZxhIQW{HwyHYWDE81XH3B!7pK;GC z|3d&^HejF-x8f($($ui@u(XieErtz1K5Yd^ z2ahKtD-(2wbRUDn+-{%1txWrl52HF;jUAugi|Ku+ey~ zL>)}hflA#FPffYxg7J?vy~7pb%md>)_MtzUA<%LKFTGM~(Mt!=4pI@wrUJ^&U-=|5 z!9&lX=u(Z8Nh>(=IV&O34CRztmC(?WnLE=_kC;Jtz_>{$DbK~n0oXb>%5) z&S^4=6~NblSC8V=f)!wBC~>HCe{vIVHb6BVd$VIy9mhCOD}iI((1yPaO|gHABl6Z< zeE%admvobQ`PWkJrw+Z4ouBHyk%z|o-is9dhz}^?N5IRwb4_uwArE~^NT~x zkh<76UIey@Qo*9!96F|+dOI!U>kUlZ^m^jP9S8KA*4OU5O}}x`J50fTCu+lXqjpqB ze&WfOIU+=1zgrJFnxw`_@&C>(SaEx_u1PGD>R{WWLeannUwzPR7Y=&D==DBjX^4_% zd|XCDcg=_949;}cR(&j2KVGd;_wJrEuc|Y(+9Pj3O&~XYU--(hE8BzC~nz*X%Pzw{|V< z!6t$}iMGc7v~zG>sp@~0(HUzk zJjxYB0pRcxb|TbDdJ>1iS!G7K@3!zSeIovV0Nh_31R{L2+KQ2As36I)f!@ z;>JfS{`p%>L)L?nf8!x^eriFQuV$WoB&zHY{Da;1`rNacpLprNXPtn7^`UR4sBp-h=*~0fM8tWdelwTI~-5w16J;~)h$jAMv$7=)i z1tcfth8Ch~;HOqcWC=n0atwpqA3m+ z14(6*^Nr(WJEYTgQw8bLK!}$k&%w{WOylL~yb7+&_JXkKnc9jZx2nE%33^F|D0d)6 z>-(&}Ix=r!G|T2kEZo3e>?V;|ixh(a-u*s7q7P8d)%V{JdeNg{Ph0nY%IEov zAJF(IO}S3qh1~@J@1ZL{qkljBq(*fvjSv1Zg29uJ6d23g=W}ul0LfcKtbp&V1yvdC zGYEewc-3}`TP=_jb??=N&sWUJ<^x$kNC_UOl_rW0rBS* zu;x1hDs5CIe6M|tjF>eS33jYllcNz_EPyK@LnOLxHWBp7TomorV8iNZF=WesIteL2EVES*v>`ZrMfiS3!@jhK zGOI#t@RDSed0=Jjkaw-yxA%0;*QEKbm9(10PF}>t0hKso!k?RgX*ZF5QmNdX zz|<8@AA+g{Gly;vIa@{7t@wAhJiV*s;qI9?Hf@+~(>qdnzOb@~`n#ZLzeWPUYk^05 z*FW9}679HfS5`xX{1gw{NczbEKYkjnIvgpF2kLk!biM%^)Nl!YO$E{pgiioJc*)yX zYTzLpsCu8mX2eVLSA{Sv1$uR01(+McqYBAC$EF5Kz3V17wWS5+Vh0<<%klAJd71(? zcrz#o@kxd#Nk0fGR-?oP`#EF~@2U}&j>>rET%Orw?qW(1_D1vjHL17P5BTAJBiI;a z3h_Y$OJul#Xyw$?yWUC1uS^rM-Mp}ZZ?5kY<~{qvRpF1#W9=qFSKk>AE?h;!|$%9feoFa)SF}-ZY5dac>q>eBK&0 z0%78BnXJZB>-f7*1MUrz4wxj(R-HTkxuu*^9eUT^2r4+5(MwVepaKa?+*NH5poICl znU!JA93ebiyKngQTkNmgsH5F4{DO;8@m=*cIq!)^LtVfLD9&j@h<+BL)ct|`D%!@< zR9jM&)fQx|0dmajc$pS{bnH0AN=>7e1*YkBgd#&tzZNJJi&IJGLW%{7YJW=HP?e}$ znKxL9z3w62aCma65>^=I8c_Mu2e=RUy~b^#LqtC(EYPjA4GReb(LU4ne5%{$s}1RS z+1fc0W2T(jE3YW)&JP|ppyFS?lVf^NtD3E3B8g_sq^L{nyg;2i>I=S!I5Bl&UFXIz zc9hMVj8X*BeG_gJDV?n(>kXf?$ld2kc$NsW%9#igp^U*!K|Y^tJU`ae<~3vZzlsRS z0$2oOd!jBlr^!g1->ceP({PKo64<^BHW}Ys{-r9Kvs2ei@P%{Bo)=;)WJj*~uRcB} z3ahakOj;lO;21l`V#8(dS&^~78n{gSDS7i6hPdhL!Y$m1@ z#i;W4rOoi4WQiS2wAG<%ySoDw$O^G=rUEn=f<`dYJqZG|!>1l*bfzrAj-|xSL5`QL zr9{ko0-^z7BH#h{7~=7WYLYbNi81~!;@1su&Zknzq_-6k_rIt@+ze4cIfRWz2uA}w zFnG0j_k+?u0$}uZ_|P}x2dgeioB{6g%bSLFS$Ls@IStOvXD zFgCvwhUyUXa_2lBJ5q&%=6=1{4TAfy-df>}V4!o!inHiVBUH}4=4{upU6a>5>+RVm z#nW`9>RD|I@ya~Up^?w;;$8sf9eqil4!2C_!C|5xV}eUlZ!*ga(eM1P>b~;a`KyQpx4J%_2_quo%`xB%6dTd zD9J9Q_ZqEeB>D5}dgNZ``0Vl~e2mmJVlXEf&=)A?-4#fLx6x`-ld*9{*S0P$(K2SQ zTU|yS8ZnTv)I>`y2C!H?tC$vQ0y2jn?_*7&=8T|DG3_6PZevbgFmU}%NUSm61a8GZM+Ji~82Q6qT zrERdWx+JS#_6FVgHGM6{#js?09!D|iDT?rI3saj9M|vapGJDI}E?4K0eODAhIIdCp zivLT@#Xbi{gZ~j`{t8Qc!Jm01cU_si^EHRGCn=&$@axK2dPU4dvu7~td{AGo;#du~ zDj&b{UvvG?y!3pz@b0)Y&=hIZf^8$R?FYHL7-r|zg%&qBJc;I-9cVy25(>_Pl_1so z+Zt+92DqzG`wgvSvQ?E1J;u1!#*y;##?^PfNf8T)AN2$3a!}Ovj>bpf>D<+?L#Q%I zhzQ->C%>->A=GUJ21nnZ<(UXa%?Y-NcOw;vr}S$-F1;&_aSi@Mu}Qk(7<9lkTVtr2 zJZ&~r`Rv(S=Fn{%ACK!@$S4wg-6fu>iH$NP(l$}*e#{6rGPM7j2jtu|K5iu92vk6~ zIT1TRHLesNPomZOP#*7mGP~|{-{?YQ%hLzKl^tby6sH|yM*O9^awf&?NtD41d-ck_ z&G*cq#8HLE;Cf}9@WF}dFfjF!#n7Sye$gW4u6Q9}L`&vo@60Rg?$`r2>5*fDORm4y zc$qyIJy@I2)do2T^ROTg#=r?Chi~xCpnZy+TKX7jHnAj0YnHh-G%@~|oy@VogDvtW zCJ9B?L!DfIG+W&U6$co_d2da|q-ilpmyiXIUR@YIJ$~neyJKljpT7o;uO<||kr|O{ z19yO>8*=SW%apqKQZlaY9m|);{mJfw20hDddSIo@1#Mo;-#G}-w*~kvR+R}{!C<#ZL3cItgQHoZ6WWHX3Vt&o z=eq0p>r>w1g1};rERHe42;S!hAVeEB^bYJ~tV~Mf& z!|?G=UON3fd(x0Bo(?FO@_N}ifUMVtnk@Grl+a_tj%5w)!;p*k&r6b_;NjXrE!@b* zw{9lKd|Mbw&x)!w7u8bXyP8`H-5H^6AX4K( z63yhGMXBwzi7T{?lNLUb)2oGkLta~8bxR4naKMzv(^MDnV5ZeT+ZD96sizj4 zk*N zXzDk2u6u|*>+D0pn<&n>b#Kh|xavRcem9TT_Lu4u?!If|3kf1#Sz$KM*?}}P3FV^1 zp^bs6y!`&+&0m!qG4>+HA8D&o5zdDXZ9j_SMC6MlJ;J$mqa{snr(o!rE(ujPwqq1# zJ*!EUl6FFc)!un&MGJoI+D(4qsoO5Z@VYvQCOqAC(r1qtNy=@iKwj!xs1AOe&G*4C z=TNXJ>16v;6(WY55>flS-qbAmB{76k1V)kAuTwS0`81d0Q7@^IAGC(c_rt>;=SknT zC++A>h|IL%S);@*eW zi>~=k>Q+(BIdsioztmQ~{zn6xv~)C2H9*Oc$&W@9EYGT5yU|hLWOR^<_%Z%>Z9iKj z*KbCydiR#`@oz}sp`DkU}Khr9_k5i z%s1#c)@>!h*a4T}nud*Re>n6#^v6W&j=)z-*T2q=LqxCdGwCNuirUL~T{UAKhz4&C zYbf`<9~AP;0&>qHy(Q!pnv!vDo~u5(VhHh7q93;&SNec&>DE7{TrWJiVbko(izMSS zIJUvuI}s5mW%Zl~NahJca~wV4e)K|IyereF0iIaK_7+oiKp%>3g<*fU`Chn}?N zg}Mi2VnkA#_iM~7LY5yz^@`AIaGEI>tU|ZmiEGgMy~2;A#M}pg$Mim<8Ye@?1#1j# zK(5>Jfl0;gj?#!_AG6|xI>B#QiO~hqn)ZKUb~21)v^|z8xR&z#pmRyW>Z}R!58&*@ zZyxc3`)%GznO#%0mLtFFWc#CM58U+PyATq$NqpWQFju3pQyw(K&DI6$9mVo(_F?lU zwCUeHpy|ic@=J3Xzm~F9p-W=+%f}_*?Z=mqYD3N#Zo?7JtA0@ZC4l(?xRyJqWQI^2 z;7WNS(XoUvVy4IQ=s+wxd@iSshzlPHON;pHL;E(_TFvqrUJl_2$mAd7N8gtYRSmY7H;`5jbY9tU(9R|J-Z;a+ zXf%!5ufckq*&&R96l}-p`!DkmrDE=zR71VK3p5X4-qoEYYV~GqY?3>u@~xzhAWB&3 zv%Mw>{j81rlf<5A77;uh7F_4m##Tabi#?5tkcX9z%R<@FB4e)9VEJ(&O1Ku6%8H!r z;a%Gz=9ph~vD-NS&WgPK3aC)8iq;0TAmHDx8K55A>eZAXc6$fHjg7{w=uM1_HlCXi zWz#!6n~VmVrg`avw9n(pRlT=o9aV{(^kA=KMQFM>2zE2)%y=a}D2uJw|IifVR=u(m zKGF2rPykLGV8X41npc@6jRqHs?dn{7Cv8ZB`ffH}Px9HOVL5Ok!IhSmEo_wy(vZb@ zr(;9B`$nfrAFs5fNW9I#aP$MIESSvc!h=cHDIvEz)pdVYZ093m2KOQbA^SwOHyOgI zqWecW3mGV&#Sy>aLcG>^4kPQqfaf4U56rAHkyB06xp%k&z98+I1p=@*vdS-S_wUf9ND<`e)nvxVk4$> z$|$;u<*w;;C;AcROe_!O>J?(J<;{WS&5`t?JB`oNcVDyvIs4)l@uf8T%y%r)Yu6Sl}>9o4YQlFhWF&`&H$R3MIX0Ofz#^f8R z&yrkuIKA$-E1NrCYp@E%FL|tx5Ucz67>uM~rxCLG_344E)J1^UF<|AqzO|iZNZtH? z>#SifqQp3;2^7&)JN{QrzBcr6Emu`cqf}y@@Ozel6pJWsP`^66F2FIY;0=E0IR%>G zXLYd7H112YTPJ~`fw%z>>lM*`Df0!#QQxc;ByiLn?XxB!k0`-s6cyfZnjG_ky}qq*k-8^swC0t1 zW-b50P9qc{J|&nCTPI%`^3`y^yIRx9j6G=6p7jL=a#ok+)WK()0MsQ|jjM1MQFt>N z)VIp{ad14_L#;#4s|WPJILM;DP>V%)pGRa9bGz_zu}t(t(45y9j!lkyluMSMH3|CL z;%gRmGJLjhN|kF-8?{oysuVrw&;z&b=a}mLId!Ka(opt=0W}!h6 zw0ul_@flSu%tF`;Li3?BiuZ^kOX0D-B__+TuI#f8O6rp+7_lj684 zdGlb}^UrPcNvBzPa_L>SfZH*+6(3hSUjP8S5^MME^dfbM>D0}$S?jwXd-tcrC* z@@612%S8u~C&yv`1){H!0r37#F3+3>i8kJcg zto6}dJu41dQrg&SQnRXsc%U=>Rcef)!@Q_e^5>PjG|EA>6+T`q502hW8r!OPGLbxkBE>?Ms1z>r-qj0u=QvUT>)EU2V>#wT;VBP`n)Pufpn*rKdh1+!Z zW}pg*1{|=RWdL7hJ@R!ZU^q7*YF>dFmp|5HKGA?6zbYCoVEeO3HpYoXhi5}uU2!jY zEk>LU_Hfp8^zhpYbE1g$>Vzu9Bl=)d9j0}NYfSf>2DftJV-LKDWrI;B= z;1^%Ie<%6am}<0Hz2RAglYUEzI2J0CTmgM3o4T?T7!>A^E(u-DO-XhiG&%85Tub?# zouqgjqH#!W0&2)=poYwU4mDBsVg0By#z0X7P21~=t9+TJGMU|@lu@l@GF5o`53fQiUrWTJ&hJ!rtu(Lv;n|BqCFS5sqQan5Plz44xs}z zb7yKVrvqm&xBL23AcGNmAPH_Ix;cNmZ<+do@?YX;V4{~OLvgtzq34tj0a=q4cKC~h zU#Gk4ykbo7RuJr0fA?xTZ)qZ>3vh6XV5FZZAm_W2gopm3=hE?Z3EgB3rSge zvw7txyiF2(sHj{ApdYqw@vH2P@tGBC*0=6%Q2&M_x0UEGnkHWFfgXf2>mmH&%nXo3 z`+ik2HMYo`G|(-Cw!2fII(XkNBif)meecGg_(TPLI`#`0_H%zJU?>WUL;17!W45i5 z(4ZM?Vvh9WOEPXM)lIVNG0(4rw|cdzGS0n;hDjsqk(eznDS8jxa0OuXZ&iub&7L!D zqmgsAd2C*5=-5|#G+C!bCMg1h_P+#;gd}3sGeWZj3|yBIc-^!)ZmXFgd!64Z55yZ7KytLTsqh- z6393za0AzRVC9oc{05u6I zT0XP!8&0Z(UT$LC)lW*oA0@DA;l>#Dt@t)yurWqc4W#-B%|6_>#5A8(+v7UfxNGpReQ4g(AIjYnKfvm=CN6G?rl2vUV{USy= zs+Hu8k&YklGvo3a5v4|9fOA5`Mneh}14*n{VE<}f{^vF%;FRkD&mQ|S3@TT6!h(4) zez_2j>?8q9jRg{7n+9#Za7Zf}<8Kx|`?e4s(+VdY2-f+9tmV|MC*6x6_?1Wmrnk(% zM$sQxHpTwG{O)~mHZJb5kf}Ddf zqf-Q+4T}aj|KS1vV;)^r5h35Pq(T0Me-T)!mxyEqOm%_DZ?D_n!uoG)EFV9>NJF!u zBi{;gQ~}U!5{oy7oSW5&_#bTX*m*+T!XSHh-gy(#e=#mD@%NQlb)(M_f;yat<@~0Z z1BIY&AK=AX>_nVYay<;;pRbIrX0GrMTM^L^yb5zNviV30Dj`|&ww4IRPi5+w;K6KKVu4CmLcJ1UEFqI_@@cSBVF|z+SZzc z0n}O`109o&pu4p9%&cF^?VvaUCG!;PL&)9j!1`)P`DZgWqI1u(F&_;CL%NiT+tsC?EHH2$67C`m)Q_=-Erikuv> zW}HA20?TW|S`cD!D#S-i9rgRXxA;ml7AWIz_S!Tqa z8=qU*P|fMz3^hILp=v;&fV6)zKH&sKN=7uhD?t3H5JnDSS`JEI8YJMjqf)IE1FR_u z0XHZ=yPDi1hqm*Uqx)jQ!{s(&XYKJH@^^r>LrjzW)l>Rq(V`?F`Fi{pC&E$nvJSknaM34eoZ;t!~$F()k?(B3ZaNz z2X%btddr5??o4J73u;kSZU1eC7}`~e%;+ws7}ZvOE+51*jflview&9f$?>CfybZ+C`lBwNhh#^Mhb1?LZVE|15nV>DU5sm~oN?GCcdty}Q z?^$dAVZF9_c#e_dNYx-kdbQOejb7$ODJ zj!9xFLyT&kqcZCODZ+_5#1ODs^?==8cMv`4$0r2~Ce^^$Un8j)nd$ygJLjuIvdE2r z6~X;=G@&0Bmij?gwwte|-m+pxf?E*(q$ti18!Kmz*PZ|&bm zn^!%$Fu>poi2&t08muohux`Q<{O=RF?Vz-swsL=|vNV>pOl|oT#zwO4bbkR5hnf#% z%w07cPtQCfm6&&2QA;fvBHqCo zL;Mbd*WiJ}l+{bFuO2-_fYpc*aUI$H1h}Na;HqaFKM4=~ur7SL@Z;Udt=)?9?l(1IdK^Y;0nTV8~IZ}`bHImwEO4djcp}iK~ z5{;zyxHV?7*pHu;-j~zD5or&BV;Z#kz!0GLx{}|OcuqFdeT$tYIHStzF!|eOff9#b z!#iV4w()OTe0&hW`m1@UskDCX2vD+T%v7X)?n&!leE&W%fZAb}l8=rKEh>VD2t`H; z8{i`Z^__d#jM5BvI2sBo4muWZ7_Wu=MLU}>7ZO+yWqostD$lDRezw42hz0JP_1SB^ zdQ9|=r7|ADYIcl8!Eq)dH3r}xlSV=OP_Bi$PI==w|M3nq^ zPH6H5Im(6%9|5(G{HlA(|6Kp?OO-?V*;19nr#OfM-6|>q>uhkEHz)@D1q(Uw+2za> zbl=I(2RtK)wx#ye5>nUSRAQTQL<(62e{Z!<`as^$6rOiJfepziHRQ$@Z|oV|2S36o z;){{3Mg@nFVaUjDj%+3n9}yG=A*yQ7u(?(WCtpeLr}`2_#)>=1a5S@F8)v$gnlB$0 z`HCfaCM-_WTD4G?o9%2mMpY1nQ6(sl@Ll;cvQ^$_gk?j z-cEGYWBXd75d&H@n+6!-78*CbZARDt5pFEtK^hTh*A*Tx3U{p~5}+$jlDlz~CB_CN zsut47(|S#^#%YnIDu-X015V+|+bFFqtC`oLyzF$60rllCv}TCu`EV09zV(NG|DL{u zEKfMbZh+xP;!C80Y*8UZl&UJ-^ALH+!IZoEGF@1sg4>dYxZaq3PJC>gO|4dkHftcY z3<=gNSz%rdo5SPnh$}bZf(`VlJSZz(v16Qd7)QL)#461Vu7;Cl6AP;ff6LOi{yDg; zCov&fk@gX(Ycy;x@;GJoB7?&e)yBqlO8cc3&r*OUzlI&p&Y! zO}aYYQYDp4FA0R@YB&&GR}vNd=>b0ICm>)1+#CFV2xO6w`ZbL-R8NHhH}X#CG9TY5 zY;~E^3*QeZ<)y#<8(3eOvy}Re>={L8p{rp0oV|H532sySrZ*tx66uBa+zmP)joa|- z)+ImBU>ewA*elde$54JvLpsE__DhyjsCPWXtbU;rv6>uaj2cch8Orh4ZTZ zxk@rarS@8P<27nv8lmq}0vG0tsk!$K5}BiXK=@Me1&GX`1GmnK$9abqc$UT!zo`tC zPXolQlWU5$;-1(%S9GZS$VKlP5l<_MaN7mU{HvX~x<>JV)f(ob7aW=8*{gdWoig95 zY9z>yLmgK4o74>(+2K@Mx|C9;zE|KF#Lu(Ir`V|v_pt&FjY5vQoI;w6-Hnd?>TS1b zDX30GJ&sJDQl`dM*-t36SBcUjoMXR-N73_ISw_rOperVWI?-+nR{j%XhETlYS8l>= zTTQ&Ka-vb$+*jnRk9@v+9Z;6SJHWI#`|c5yyh3j=v@NOqe6^0;nmz5vmnv_0XJr$C zN=JKW)5$4A(_Nv(w6wZ{CB=ru=jSG)Q332k8!jj(NDr>hB#D!QE#)zKyVU+@-fFm7 z!&R4Y?WfJ#l*0J6ws%TX)7Xq`?CRyGzn8j#lk&CEzU2rK)eS)Uu5(v6Sds8O$C?Sl z#b<_~2a}yoM927YJ2q9_(rc|ZYp;*@2j|cOZN&#>P6y!HI2z)Ez3ta=l zj>o3WfE&@|e(JuTbCwG~V3A`$av@D8-O_FX#m~t1S@V5W_gZSZsCGqh}O`LJmw^B}!oZQ95rN)Ivn`wWS6gaPx}<9kW3K+EXL^pSTTOB|bMH zJNTMzHnGvyY#Kr;$epk@HJA4xvFkx{Jg(D%Q7?q8A}Cos|Hq1o4A=pyDWyLag(Bxu zT1q`fmShq@X}i=6P@|(;**e{y7whIi1YhOF)T@TZe0;Y_Z00gfpC|oA6q7D8`^aE zBc_fo2eb!ODbVBDO4( zUoPP9ih%4|?C$z%W7oX0NNPXKCD(b#j~*s4rYxtmFl@)%2n8_ChFIKUFLN(MYTRV#k ztsd%#n#h*ZpG$CUzE;8pk(z5mqoMJ2rNQM-0$U>X7_go}ZglaA|C|+$KUqWya_6ct z7ysiInufc$Yf+>ajX@ThLfD5;13mc&1EeaYtz!G_u+{P(TZ0BTRzj7t@dD9@1V>8y z;Z#@Z#%|;po{Bc$hE?!6p9Kch<%R|M#R=L(h>mBwhZCN~4YjC}xz(#tcId+F&p`V0I%4Bgtnz7BDT118U4#H8E z()xgDFI+)v5>^jVx6|Dt(NT%*2hoAB=eCS=(ZX*g;&EfYt{YgW+q7GH$PqRWBzehR zdMm@p#l9|5y}fzEA+xbI8f5fsRVZZ1aXZece4N$Gf^AQjC%=5ADZZ9}{dt98%pmod zeOEf+bK{3uUNbV+$o|FL>(?xPTXxATSRa~?)f+(yyVnwtbTn2z8l@3Nd4HDjb2Z4l zyHewOZAV55%a`F3j06rsl6=P$W~eDF{Ar&{{Y8RsL>ToFPxPrQ73YNuudAHGVYLUs zm_@}xn;?j0qi6)Flzv!?Td>Hh&3aF8>GadK*-GxT!OO1refybm(4!{X*AI#G#@Wt` zb!}sVx~&0o8#Q63vYd^AH+?3l3`@St_6y4&du<1Fi6{wbF6I$k2Lnz|SVi|yx3Dyb_(Q*I-z|x zqQLQb;*e7w?JTJP&9$qX^%3A)^$1^5)fj-AHT-S>v;H=4Yr=>;tDlOND{gSM3a_;^ zXTKuhkb%jh*I=Jh3D|0}F%JHOraToVcS2viK@RxahT4N2uLQqbQSG7({}9NTbQ5Zy z3*m|*iN{$2RNr@Ps}N#y3%xqH9fb^5tcb%=F%s67d#`4J`K>YDr493f@1q3BjuXb~ z+RaH)m(8pxEz-U&xG6XGmtz0ig5pSm;9{BaPqTf$;EEzPjMOKvv2Cm%qMy%LbF-LBviw@4j4bOj2K3T)*PoM&m~Pr)JvMb$Iyp zuSq6~hbAM&izDzazs5GyVUF_KS{W*jOHL~s3}sqVqy#^Ns?jekdDiVUH9>;syvKG! zm!G~tNwL7t9`A*0e$%}wL61eB@Z+%-=8KPqQ&trR3pgFC0*On+I@@Lx1{!Zak@=kF z?$5oiB`SCT#U)|K@s<1PeP{T|V70ou$>_y5)K(O`c^xl0e$1`WdxspM!Jt5pN{>*- zA)Feafz@ymZLvw0Ks%JhV#UDgidu8JKV|6-=Z!W~esI=}m(|ZnBRkt&96S2DJazFf zc6&o(SjDp@NHUy7NR7VW9V@G171L*msLZ{Ox6li>&w%`h!UMli3InJuu9lemnvU;g zlT2sn{M$oZSbB_P2rcluU7k?>fCq>GkbaP5Z84@^doKBN35sMiKJX~&k zM1{WNWnT^7uqw+d@wbK%amD~0EjKik#@PcY@QEvQCS`+gRc1!?oY#&DL$?BJ8%o7H zlC*xUl432(+8Trr3w6wk`2(VQ=elJVCO@$SA*P!7M(y+|88;w)1TOA0Nt?>(4-^bk z{Omt}|B|+Be{rXcXNF9!S(J%WH{M{7JL-qpX-!ryOxxX7PSlEy6XIZQBGx zJ56SN-{H)DVMh%s2`A3U;B0_E`$GrfK2g{*Mjme7{5t}UyRPbsECuU5wVWC)EVYBd zD)+wTjErE$eV_ygq49-LGj1! z09(awLqYO?`1{{$27gy@@Ww>re7IoP`Q@wS#8i z^sEAI^ji+@MuLfXS81&k)QO+XL?%^hpT~98Sd>mR-yGIN%qu;0tc#JsTA*#`j#khe%qgl{~FaCR`*tH zo1z+E zHGBRX`MA?jv30yne&$HUz#_@I*+95~iuxjtUEEZ`00t(K(JwPQ!&W z4KhsfE4aVAkygIlMECt7LAtZ5U`-%f*yg6(zVf$5vBHH1l19@h((VggTeqE|>tQ*~ zbG)I?cP;u7q%b0uqvVe80^c=K$Mk<+LH9AFmL)^W6|e((U4{p3 zoB{-AQ+8uuDi!pcX;UKP;{Cr=OfMTF95zj#rOsM6(F{JVT<0x)FUsOejYf%bb@hpV zWg#N`viP`Ao3O$Z^r$*dN}yRmt6idxH@uqApu}>mZNZ;j5-%7}|9sTVSi7ku?1zEW z`jZ;HCogTwqc%U6a>eO_(jS(Vzb{#FDLne|?D^*rBKdCazUv)y>(IpJE^o(Ms}x)wmqGsx8T`w`3xJ^0N9?Np@;EZQ-7b-Uzo@Y9%82} ztqH8)AOZzKIukfjhT85_Wvf=AGCRNZkVieDrl|tl)zsKHcM>7E1(`Uk!rfGED)V;J zrd1FS5S7xd)V!152Zy`OI-$tx)IKk}1?CCzVjOLTRl&1-vg(>VdFvFUIR@E)s#$L; zDUR>#nliDA2@0)_vi{r~JJlPne4qCxO686=$rmvVMHS6@xLa$^O_{dNXCw{T&>WsU z%4TJA$p67w=rvP1QOOFT$kknE7TtA|caA*+QI!j0PhyGx~8vWo=LiuUo za3_<_KbomN8F7^Xk2c7g>rR1xe!}CpQdQ3 z@IzCFbAMl`JMtJ-ENiGqbcy$@He@`1L<`o*`J8^>r^>q-s=;bqd*sIwQD<@pc+BON zr=7*=1Msx=&PSPeTD?3kpup+jmy=3Q{xTn8ip0bX$Drmp@`BJ{xt=%s0_EYDQaO!J z%eh0rsI6Po?f%bP8;bW)8YbY1uBQInC?DUw;c%V1bPg*b7o-18_|=Tnz&bE!%mu& z+~4YE4HyZdt{SN6Q#(hWhPkcpU%H=ZovxMr3GOzy(3_<6=srr5=Cd`l9!^n@YB8%G z`;5ty#&|*^XTmbJ(Ia^%tggmiY_%6Rx-*q~f0-Qk3r2S-$T3TsyO(TNj zJf+sSjNv_VS?sPA%QDVE@ncM~}Q92$-EvIwvx zfO?^Z_vbVsu6{H0=#dtr7!F5FHHmP}(&VW63*On$zBun(*b^()L;1-6Q1K}g11I~A zCvNz-BU?DGFfLn7q$HlguDCIWym7^b6wAjj*3uwAiMy>vjg<)z=d({cT_+NFnux|uqMNTO#L!yj-Et(V3*So{n@Nl{k8ZueT-yh1v}0a;ZzGS{ z7vMmulCG1t52PH|V@eu=7Pq<@uwbwsRHmw1x(~M;Qfx#pmWeo(l0?S!7o68)v-8)I-9|~-10=FOPIZ?r7sJ*Tto-|R>Sz21>(`&+Kp_E@VU+Nt?uH1S zPJ8Xhasq{1Lc=D7Qxven$uAUkag-`J7;p29dgIAMpy~y}qJ7dQCCivb0O~8I-X=+#ond|UleDgoNSH~^5NuoTK$bKg12CnW<|%0 z?4z{umYRh;Ac^SHmfWtpPa+ooCJ_J}BfD_&wXR$I4VJ@~L<+>&*8sCoGaT*o7tsdG zz1j=cm87NxOg&7DC?sP~F8>QnvwufV`phSt_EjLK=ap>#mhA;v7(o;*Gcdg~XtE39>4vNv@2uCO6cr{Qdk2!Ioi zu<~o8R3!l3y-U3zybH_%GQHp&V40KfokIl%srF?Y=HHRIXTcg`0mt|FvC?i$vBZcd zByF#*cZAWl^l7(;H`lOVS;kK)#x}L21rh5g_Wdf)V)LQNd_*^@%XK?u-=6cN~*e-PAvD9QRX zU@$-swDt!S!_Kmc{80p7tQchO{0 zR}r{ziP^%$OMsA?Xg6tyfRjKkPqK@}5su!yM}RYvek;TZ0jS zi}i7U)#pR>9>a}i1}7BFu5?Z3PvJLqU)L4>4j4~fr*r!c)v7ovKm|7*+y8&#=@3A> z7C6)En=^L1HAZU!v57u86K!RiDYxJe)GNMOgH211#%bW|EJIXRm3W&>x0bxyMfWw&;XN zy-(u5rnWN*zzly00&X}j1OML+*3W3blQ>bUr0o@Th6bhdrN&<$LBsnj7DF`12H2#G zKIFHYNC?23cX3*E38PYnf52Z#rGadu4rPyQ`7!&?H-Ha8P-GOG?z!l+xIcjZUmpSX z99mtNuDxNb#6uth903#wiXwuO1p7D#m_YBzIXw44Y~;;&Q^(E1Cy59me9=Rn_7-?I zg)iF_y1<$OpAk9$aSf48T+Ob*{u&ta??w9lITsv&3!a(m_d>sXA_Sak9xauM23T8` ztPr8};6IVa&*0{IX%>HwoUyZtDT9Ht>MK8gwlGgJAW0}ZRf$V{%bIU|hPKxKd{*vk zl|-3+D|?v4(1|WAfK-vH^2bP&x+Gq+B{h52qb03J)q#;KpvAYA%+zZb%T&Tf#+}0t z+|T_A2_q`nV*7KAZmF8y{p??$W^(69(aPDr&k~gMo(@DaV^r~A1)5%HwRC&V$^#$i z3LLl?0Khllh3)SEp} zjj|h2UUCMco&87#_H-$vJ{DO^WKq)ZM<2M-4s|(jU;Y4aGxqB?u3u{8!_TeQDs1~y zwp4)fGIQkRVY72;!5GG@gH`L|*Op}U_0c>onSrWEJ>7n}kb4%f(e0$4Em{-u3K$l` z7jBpIz$n!{@<_a-1fR17f;yZ5m7e;$c=rGLm88Jl@Wk zJvm!kc2#z6^wF&5#7>abTe3+b9U8A~q3M#in5neDJOQnpEmyehA!q{g4*zS35D zP;8(-wqxhU81+H#CT+V!nMbt=b4}`4k?rmc><8(p!0p6|omE(TjWBkxlpIhxN7{cT zTBZcTv@RlbUY!D9!70t2r2l$!lRWTjueoLpL5ihA#QL}PcIM#KL%Q}?|9O5(Ey~*f zh~4Gbh&5oydwmB4kP3Xk_lU7bcCzatZd1GGjYV!xH50m zxSa*B-**p3PWC5SC|rhUr{?NCbL$DmAGrRYE)uvH(XF+HO@*4YeW`25DEX#ug@l>V zikUozKY%ed+AWtT^Yx)Z)5vVHiAk{F%?LhT?0-DO`O_!Cy>LOc1}=PH0m_3fvUyUU z`t|-U0Yh*Zk(urs7yIA5fER5q8Rhv=aPV}Pqn834IDghTc>6HVZu5?aiqC}7JY%9%`US9I96xJjCfpU`*D5G$Q;!t{!zhhHqek+0 zIqfW(BEY${`P-yZ8JcEk%K*kJSmN5*ZWf2<SRoHiB`&*sHf#3qL*G89dXU@0Zty}x&mvgR@KfX9MWb@)JDcw;_OfVSz~pd1rSQ*)Al7j^G!J06o`PQ$iNQb9*cZr00e z=Hw$s>E8G;H#vReUie-d8*)Xenbjh(CNW=W5VrM-aDUeXUSBL8^nHVPc= zbvf&P3;5Xy8{qZ8H0^W#yZW6x2d==HO8-iQ09UG|oq6BdkhM$dJ{h%SOTC9l)Y@(# z&6La;&j^W@_MDNHbhXA5{4Vuszp^1sC{~Y6V*5>OF1z2pJGC~-PeR06M)67k z;zJFg!QjB0WAP@+ z0zR_{WJi$wt4R((b@m7ES0I3Lv+wqe${>)TsP|zwEz^}IMbBi%2G!yM{Ye!AM7Exa zJ<;SADY}?ngiL>4d`z62f=g`R+L7KySK=-$m?IIkKf4#%*yl$o&1t3dIZK2|I~-;s z3_qbK0guKp(2S<5AITH<4=7CHKnG|CJxgNS=NMCsjbV7r^@)MaEX!}-akXI$(H@#u zby52PyR#95GbWlyjxK8v6V57mz=P~nuaSHPXg6UgN_DxJP z>cZs7Ee*?Dh|S~HZaqiU63jKPCaEWVJIC;!3Z)Gy!1`5@)j!{Bdw|U}erUN~mjm+@ zL#H^epk2aUjJh&TZvESUBp-{}uA;e)Kxa@ny2`KILv$(EWR0db9{jIKW%ICvTXid6 z+!H@Ky>R^kb2rg_ZSub|gySThTkyMqZ>$K!i-o`$Lt`sj)m%XZH@9IK*uyH5g2oCo zKceE@rpiiRASwTdZ`>ch3xi7*O(ULUf>^=s%XET8hJo)n8ij?rN#bX zmQF+=vg1S4eW!%4j2#KeH%$OET0xYFC3kdZi8jnn)5&?MkfnUB4S_0LA01NVXUp&+fkt>kPvj{&jxf zaJ@$&U3}SrHIa8$Rxm#L%YhNUXF~+Sap4$nF6_V^1ZIdCN7K?aL!0T zd*%`8P%WqOHql-YjHPECl>4W1m4|BU5;Gi z_4|x?TO!v*_;BCM)pN?uxsuRh2*UGP%;lI)UAas&#B=ii-F)M*P@080uDEf0=`ax^ z0;=6NVFcd;(&#)CpSdx%Sun|)z1e#h#1@st6_5<2i%$?>kQRMrWQ(a>Qu<;)NzRos zj+$7q(?_>AI$KWl_jr4zdqK^H^2Y6~xJRIvB{FMc-9eSDNy#YChUDZtCLzhgg{VYgRRpy#BZk2_X+X1cEDd(vO zK#7!N_(8%KBRPfc%YVK^obXNIj^IJrUJ|k%Dp3b2?m79y59L)@RXq|Q`V?qWcEiMe zGD#Zh-eiMpKDnv!LbDXiwJ#5G_kl(W`W(nu+8A!%-DDgxyXGL z@CP}5c#a3BLT*-MBJUFvc#(*U@;|vsAg=kv2PTY{Mo?Q||7}~TSsPNI*s}R;vgC^W z8=+M=g!PzG<2JxFje*6h6n6}7bH}Q1Nkkv#U*Lt$Bb@36D!2=Xu^Qy_u_pQ!!~ZN(hB7cd3K} z_0aYA2k@fe^(wxVn4sT@p9;b_I;e5Qv_uS_Nv1bjEiJf{#=KdT#><|;jo%X67?HGHe1_`V(gg9l}j{QAn6daV9VsRB`)0>eZ*2L|k9<|%5*a!s1DmMqTp0xW zV^kQ0PMF_s{3DCf~A!gC~&t^ZcXY?I=&axO!<`*+rbjm;ctVuU$9t zo{?PB%h&ZOuBg~v^j)$Yo2=N&pGtB|&AnN5K?J4omFrAVWN1t#pB*~ROO@z|?&3qW zj|2G^(%KV?rTWXQPZx<#-7Ttb9Cn*Yc-T!z0tY#vE|ZfBHaevzleMnbfx5~6fEWLp zQ3JA#ubd_fe;vs)6b|{U4GkuSqwJ-Lsb1|cA?UsU&+QFa#|+Gz(_#K$^{&gD3m;~Xaw?cED`y}&e9 zAZkAGbZ5N;-6%b@vWB_1oDixVk|&drIFZv1i{q*soq;R>I;WJO5ya_9%^A(z{OpF9 zqZOMzdt@_*Q6+mjT2|WI>a=3UDMb$?(Duh_FLp8BPU|phP3l%R4=rm|1REUa>EvWh ziMqhXHZ#}}z`z~?#fMNjd}SjO#bAeP>h0i3R;|0j&b@9CUU478%Q`ng&__R@&?5Tg zJnRo_cxkWhUs66Em#m@uPRu4twp$6^<(Fa3Vo_3TcJD^ecS==!`1*O;#@Jz+hnuFLcG6Pu}|g2}a)5i049;(WRs z?o|A?!Yq75aG-G%aWV++`_Vl<4YR)_>VD62Lzy%cYi*lHy+(=_fCmVdc&+VT-+8+&P#_;FGA3py!c*O9bt zP0}*v2Tb!3Cq|p!Kvic|s`gXb+H>_E`1$of9dUSna`culxFTZ*X!3!A{?{uU8b3NnaH{scnZ3n>!-j*x%* zL~G_W_ox?>bNy7dw^q2V(Zj0by=EiP{YObA zG?)6OG;A}nb@)|Qbgs23r4HkTRUP1}tMH?S1!388!^(^38Iin zoR+$!JsD|hP;Bg!Ca;!pCM+ga`E|C^DAYgtup}o2PHHPzl$ zRc1G6Bb|%#nVHx*nmySQa2VZ-KH_Pxu8p+cd#PSReh!F@37!{sCVoKoJwA)*JrKl( z4w>OXDpW}NJ2wWW;2vGSah|V@n^Xj^66;zA3lV=CdY?-$UsVm z4W1f-h&sE7gPUnT0q6wtEV3b7`BDv6Gn=p~Uv7>`%U#zrSlDe14%yenmPP(d%-e}u zxPE`$xTja}O67I zJ^xWg@3x>dUUx4&X|&ke5{ke(uop-|>wKpSXC7L(@ZR*i>g4#S8)B>KjXBkHHau@=iceoX+4uQ zXlLf(@H&XgT^XF5?wr9BU}$ngBA6>HX^Mp_AC> zxU_Hr381F<4T4^rgzA{yRuE}b4fz8cDnJpnx6Y=IZCJ_B%M2Okxs@Ib5*5G<^RcoxKd&iXFRJ80C9q-~^2ZD*QOv6*<;*Wk8w+{l+4}7W^-Q31Z zeXyYK$+-FJt4oV1RTtFl^g+{%(Q*atITXhi@rH!8z0;++Uv;%gc_xnIT%+Bvu9{AF zv`NE%)H=25M#hB?km5oq{t-mGTak3a6R$j`RDaP(Bg^&uZ*9Ff0MW?}FS?0EulTXkTPKdU8Ps?|k~U)aNF& zP@VO7$mh0l0&^d{0->ydAlE9Md=J{o@VQOubHZtzH&OZE0T5Cjw(H3(09H?UbT>`V z!YzNg&NBxDd;%084?rNixZ6J~YbIQ(Aj<{hC&T}6fgE7q;liP>7MmX9%9-P%K_cslI-`ZCJu186W(0B}A!Qcj^{sZ*s zN&+9=mH))XH@EfXlrQg{2Y|VoR#@Y0?dm zaJ1XWiNLG$|5S>7@V3>9VH3$BthwXKQ8i=gT~(}$qFH6>Na(U6oG3vTXH+)#9Fnl^ z#IC3v>Ub9=^J`Y7G^xm7sd@QsVlf|9K_a*3M6%e3(R8tc#sX?P;K;_dkNYIvDs0PK z>OU3JxTJYIH5#>MhxGMgafP&m*as&5R2J=1RAdDceLy+LoKbdVV_zxu&}yMzslN6Zci2beJaB;x@9UM|yKpQ-~gcpm%8g3iX#1%K_TmDhfb-&p8Grl~s_+U(1WA85 z|LttLABLqIIISs5N^6StP>*7%)z71wHsnGFGeG|}&A>~SR+Z}o*_XDb56Qn}{HG;0 zP|m`UQnr(;?0Ai`fQg3xN*m2-pUSe8>2bQdKZae#N*kfiv*&DU5LQKNA)|00+TJAm~WYz|$%-{I+xd_C&>cb2to%L@CgLX=B5f6qVATqZFmNEb1~>^k82UMtZndyvBM*)cv{5 z(njxb*)y*lMW3#U<&3Xsw^j_u%&RjQcVE$voIb9TKB~;PB;}-|*yi<5O}}8W!b8Z{ zxT3nOX1_62T z7@$L3KlOvTo?F!bO%tv@wf(0<*c|jk;;iOEx(XlmG|6PrWP_rG-HX!;iWxP&532Sk zgtuI5BjzF_=QpQ|)+hCE9PxiwC(WGqgUln1^!UL*w6wS$Sl2mpk-}yI8-_bdtvBm0 zi)K`E`63Lk23AJc7t8kj)u)G=aW3_oh+Q49N)vW+I_>!ID9Nay2RLpdi=ELeMImSM zUe1_Un-ju_P!_OgP4a+fQ-9&H&l}|rC-Xf*ca<*~d@5oQ`ndOBgnA$N*eqQ}1tv8+ zH^xVaNcB{ezO))CwQw))5rcrkaJ`+Yzt(N;M^~MhG=YpUMPX??UmcmQp{1G!*RRqS zh}tI9*UMydAMDeb%(D_{;B<^KGi$oa+4GtOX50vi4$Tg#Tb?fqU2Y@pU3a-gSE3gz ziToxvyRiHe|L|@ic=7mXb~km0s*Y+IFi`@3t8Ha+dk=8tIAG~-RBJkF`sv_ z`7Hf3c*60)Fhfbi>ob{AI=#LkwVByfnoleiaV*@)dx$MnKD*_o1NSU|Smc(L9Tt}Z?3%xyDGnLU=AQCf z&l>(R^~`8#nmn81Xrkwe$TK9Tdi&$Kky%XES%#ud(ieyw2j~bt&&t65-SIxTjeB&$ z=OT_JRfi_tE(SaO3k?sFK+av-p8on{HJ6>ryWjGe-;%HOiq`ZO9olcHB6`GaRlDk) zf1MYpUw?P116t40PrKFKfn-8mXohp0!p~#qz$sx+iHyOO-j-PIFI0bDBYuYO7=SD& zC5ML~?E6U_W$zYIo-;cAslv)Wp`m9^Clfeu8C0JtuPwuWBu(uS!_lMoTzbG2FIPR{ zAIO?NnKxn0j*HFB4fTf@zNxP;&=VDdva3B1!H?EsHI8_3m;E(KmKU!c{54D(-dhjv zR*m+KQ&?q2eyjL)<12;V2~;IO-7F?v6Z1U9h7sQ5D~S&^!z|9T^bqk!7R|jf52rD$ zzNmU*kG0Ypcv;lPoO7n|abo3A-yr)XZQyY72^N#{)Bm;+J5oFulQp&dANvd3NY53Ck3zzP15z#zO+%D}A5su-(e% z{k=w5pHc6IH08i;_<$Opq4(LA~Z&o;q zh-_^w|3KTH^ouw0<ELxOt3h>BLu)fMxq! z@dDeX#Kni+a4bDnXocWJJ7|q}=!HY8zCu2fhW-2ps;6>%M@?kEe4w0>8d#JTO%I5+ z@NBD61EOt@1)JG_TX&=As=1H(kq>)N+qggQE+pLH>qdT6pF#o(PQW+6kBkpn>Y?M0>xRo7IA`*|$#sTH|>O^Ik| zAG+Hp``nX)v?r??`}8hdRy0u&s`04694hEbjkmwFGMoUmnV+jp{)cb~!d&BlfqSkpC| z%pdJ3DkXh7(!;nytUq8@u+rPzKxn|oNxL^2H!|e4M?*umZ*L>Apxjmzc+JY}!H0P*52YIL>5{w)GY|ZI0#I7u?=gZc5Vb z0$t$6k%f1d>!W(L$6F<6P*?_P*zU0}LxIor0qdo_1e;!ic1xiY3DLN~cN zIq&sdPZLJ-H{+JqYV85`KPbcFYRa@OR1iV?n#c7&l>lJHuOe)j1%U-PhGCyraegr+ z!4X9K;^u1pWwQQ-RX5`)I-djDLw{V#Qft$NQP0YjUB&AyL&IyCATNf5PAQI=sE?e2 zSp?B}Rf^AE&FAQ|BuJHIzn$Y1(N}!h*1$DK<%ID9~@rL$JRF%oCqwy8Y9 zANK9a@ymCS&K+)3neLjc3$HN8OuN|X%TsrX1BqcDpD5c3i)~t!I#t}E8N zOLu)^z~bY>5{z|ClIkAXP#m~|6WRQAgW$zI65@|D=8GW^n*1vit5i@dG@j_^yarL=m@#^X`2aJESk37@a$3t zoCBIenSg7;0@84LlAtREe57WL!rOBxVIGw}dv#z8ygjRS-JZDWtxgK=XP#dwrxuNE zJ*_&!X>AN8U}7Z(#D1&}v57x$?=_3)!9?n)Z;QY(GK2pRbARf=0~dI$vrQI%iTV(W z7M^L3k?mdJaZ!Y1)8e6sSW?=m)@kYkeH?Fu)N!o*+=g#2shWxy4z_5ya=wOnSoWLD zZ&a9W3zb-hELBJOXJav~b%e5CSJ_c;@}g6)ZjeQ2AYT99?a;X<1%*jR=k%xkyCNBu zYkL#XM|b8dx{L0J!17a@UZ_^n^rNAP<5TsLh^Me1Iq`_&wCrH-T#6z{%-(KcN(V0m zgWO7UiHCaH=Bh3xKU?a+$A>%RoN)!(T}7(|UQv1cW{S0)?}W?E&CYUdByDf`_R)27 zLqCSM7x+L-B<1${&GB=Q7A01gpIodsj^$ZxWS2$VP!zh;`kcHxXxq1NbmlR@*o^f}azG7qZBZU5 zh>_~KaaXbXNLKetYgiilXP7twyUrcPX~y10n&?i>x}%d1P|#ioSec|lkk0qI?d{Sd z0#Wu@Ou>Rr%kK2ml|Ce;ss@9){2+C!kmQjPCQG$nZfiFM7k2bbwg#$mzf2ySqwH}P zl-Y=Cg{LiH@=&kc{ikMQADo3q+e^6xFRL+U-DIXM*(xjD&K2qu6faFAJjqw-JrleH zun1wR59%5WfXEk+*+JjH0gtFy?_?CX$oKKT!GixK@&&S&XB4VJ%~K6s^$cv=XnTJc z5wNEHRK*hQl!=r5TU;^7ON}EJ8o}?S2Zl2blxWioFA?yhm@wH9IfXd_g3ss0yNAW> z<@(CVfju6?F{jh5)+8dap)X4k`}%6x>ji*bYKaZD$FoU}m#f1ZKays z6qhNu|EW@S{K(7uX~wJZ^AdQ$tP&t-u}{-FuNeR6nJ*LlPSya9>*Prh{~L~lWJINoNCLv|^6-{b=l>eU3~B)L5!u#CO2j_E zMA&-@y(FZ&NrI_(Gc;p8=L-r5khNL*W>Uy&2DXwkc8$DqiIICPuG6?8%64l>As#6@ zNzZ7{m=!VOd7 zmS>O9`fX#3;xS>Rr5-jaqxYK&|L}g^n{UM7kG?gzVVz5M-kyM%AjgQ8eHl51!>`kC zF0ty~u?3nfu(QFE77vY@In;z9>0@{qCN{4h;LB!E>CF?ipN)MJhWbL*OV@iGZukm! z@VqY=14M}W+OlBpkJpup=)JO4TfOF(Wu%=Rb=5RVY{tQoNJ$lzL~q~9bULgv0_zqN z{he=&FtnM{V9juEw|JNEZd3l86V~}d$ZP%CLVOZ2qw&G!@4p31N-#cAcH~k z*p>K1L8jLZ;z2RQochYnW&gzTDk9WqvRSp9BI}cpeA|r%qpu!}hvZm>;@1XKs`H~b zR%Ytv+L*I~rGYmBR|EPss3UMW|7s2Id1PSQ6rgWIz>pY@7nvc>0-NmWY9hL*>P+2cUW;zorBQ;B z*{t2~)j1zIGTdZ&$EGRUNYNvWqcixvY%wPp6Ofu+;4x|*X|PSWIceTXewGxoAq-fS zqYsVdn7COoQcJ)UeNs?E=TXN}gf|Z{~(wHz*l>~#l+6W6o$O*M0dwak1 zF|7-KWTcJ5Ju{Y7PpN%rPK`FWU|tESa8Of>d8pE?Q5#E!4?O3(7e#L$&E&o=;+|DIw<5o!>x(ud@(3IydM4_V@I6fLIKE!-b7iD&*`0et zc266dPH7bk4@psUh@2ThOear@vgbfdef@hoyx(ijg$=4WS{m(UA0$={JGu4rj#JKU z@@(&xa=ZF*3B}Ls-xTuk^1^RsvW@pGX5P+U!mQ=sKis(HbH?V?#nOnAzw0%GfXO=coauiYR(ot8#E9@dOswKETNfdE~rw9rsw= z>|nJ)3M{*MJXgvGJ0y8p(blqI7XpbBquPp}++sB(GbipKV zOzY}1p|zHTY~K1axmo+U4%QO>C?1ySW#qpot|8}2sTwCnJgs|cvY>3uXLSx^dt*FB z2(6{Jx>bx$a@i=}nl>Anm(X8iC~o)EW4vw2QTExX2X>P|Jl|Hq{{RbGDyfZdzH zdP);De*^4axE{|gAg`J;(!r)Zz&C#~|pss!<%Fge4$pFPkK7!z`w(vH`jvDOKCCnne2@#P1Z+lQ(8|1zU?Xw4XgyYdvYwIfpKmpUd_Yo zlux=8!9^VQ@9jY=#DXDF&_U8R&=CIm*UW#0$zZ_5eN4lrYs&!P|Zu)jxYVveXXcP(IqF65CP89v3&%MTLJT+;r zE#Jhl7*27s6WQTGsaqfkujY`>@0uH(9!6{l9AA^;*{7;i2pM93kS*z8i^$Z_47O%} z_t7DkEeFFWoCvLt6^M|Iu;BeW>WEc+T`^rc1MA_Nqg4A_kY@9EisF9_nSHBla z@+A_dEYx{>_M%(E5TW98`>c|6-}`BS$T=@PFY;pB`iZN09my?^{ko0oK@eH}9n5P{ zp1xum3B-ArhIoE*Rsw^>0AM1qZj=ZD6*w=_YjPopjKS1qN~taA0nQ5qiBBll4=GfmNJmdolp3jo)8s9*VcIJzlW-2V~{_`jGXg-6CGh=71ixXqfu7xCPBYhcH&?}7m8 zrcieIdsaO{E50&VM4IAjSYQZ}$p@yNDdu6$G&u@2{vUgn7I!<8;_r6UnKcfrHJo~M zOCxRknH9PPAnAb^5Ld&A28)(1LToMaSElIdtXtZB!x;saZIy_Hlj|#2jHN-(1B`yJ zXo3m0$#=w#%PR|XLX7esS`=+1CR>emOZ#l+a2FpelC$^E_qtiEB>%jeu4MZ3PL=*h zsHIw6cG(KCzo{?LmSdnTnZ3HQIOtfXxaLjH^%n>~+0NctL%FL}!Mwu;NangrC zZ^*C*sC(+C{H*=dN~CDouMrtnW`2&Y zkNcb0dU`HERnJCzp!0>m&I8rvPce!QX?uBF*N%tGd;GPrzU^TJ+H+hykMMke4&9o9 zPN;gZ1?&o-GVRv)odS9)zH%BuQdZlJ+uFzMo`s^qlqJ6Mj^wwT?0EV_74=KN@A>;xjNkv~^7lEIk1_6k^qS6(*>^7&mye8)7p#@8@RX_}S zC5Z#x7g1FC-IpJdQ_f*MaB(trkxu32c4<*WIxm2S8uouG`|7Z$zOHS+K}uS>K|lo= zLg}GPK*XY?Q>BI+n4w!5k&qTdkw$80hLrBEp?ioSC47&+c%JwD@B8?d>pEx7+H0+S zulrtmFD)pY*$R!fG*9E}Rj4irM#bz;P#6#qVK!Hv!eFX?AlM-kW+Oz_uN8vEphe4G zd|;>I-SZbJpe4c-{~EwpjyGvI<}Q?9Ignu74L8mvc?H$wU3P9j7w}|seV2cj$*5tN zF^$GfC2IO?sYJf-BmBP}vsujnCo;2H^l4X(p--**K8T&{fZXbqyX;=o|Da;C=s)Rz z<&e6P17X*}?f-=sL!G@ObqZUzibu-`?1nQw0fqV9^9OrxY9v40G^U#4X5p#wJ!oG) zo7?lDn=ohfK=b;nP5j#nAZxMI_TKWDk{>la0|N?ZP+*IGD=1X;ba@dde>Hh@5q}Z@ z{kxEKwE#qj8{wJ%|gQH7{GT{RsAapJQI}3b?RV@l=q?`47W(a<04#M$}qU zp6YJ}Hg|i0)}4Ft{&8lv>K6jgE>AYhPnlO+Eq^?4!Ru$eZ-78E^SU*=QTrj2Lx2Bl|vQZDb>Dqj39Ihpc5wibtW!NO;5P7k!55Utgw+eS;>h zM}D{EcNOVf+3CSubh9y;^~vsQh)HIQe`l0YLF;Nchual@N@huW*J}gy191=9mmH&6|Q5Ni?pmt29!aoQFa+4sS;Fp);`W`f_#5<_*j z8Xn}>Xo5pa+*uOWpDuUagmb>RE}$?@a={_LlJdayF4qu51OrEkk$w|FLZ zpB&f;5MSLAsTWRY{>cs>2wq%Z67m>KEiWq#Jhe(-`>rrIPG2`)okB4=7miCRCPZtk z+C5@%Lk8nw6i8>N;oG?sKdWXmlhV(UoVx(-_{8e%B$Ap zwaw2(XCQD@2_lq!5vALU8@=eAuVH(|me+BR5o*#L_l;+HC2@~qw$&h&+~kZ~`uu=T zueza2aIdY}tz069CDiPfw|U`cy_XP_hv zE}PU>+XUqIHAB($D;~ObYKu)~{!`vWY{Q%vPt5j&(}`H{kF{xN<$~1P31O2Qr#|}R zXL#Cbp1dQE(iMSJ#X}j!i*y-qt7gRrq0$kJE`2~I(%f>$C;77pn-)@@b?Zte3tJJt z$5<3CKi4+lsak0CW@@@B!p^2VL#2nt+ptk;83%oY0n=qnrI-$(Pvs|~^VO(kRfA&$ z8hb#P0JQP@sp=Ugs4s=1mm%?QGVt2m8-?~0T}_BTq$l9bv@o3!ko7Y}nwO&F?Tn>^ z;(cp~q9BJHm|d+jk6fa4sgkU1xWox_K}$oN^BLom;)wGo%Zb@^s%ElbOU!EH>lnE_ znyYf}$;uq&crBu#51`Xgz1PF|r>ZyJ%+`Pu;|z8PO;D}#MtS#ALn7P~2pjuuyKKiE zW_(k4lb;chu`CZV(J3BKwplh9t-sG&G2{7$0sr*&%<+q6p}}_ zMpMW6MwE6QSuBew>{>auXSTfV?ugKN+~S8MZ4k`A zu5D+haEgv0&sl~-TE5B1p;FQ(>+KjNTUYbmml7O1be?8ym_&tMNT0QkdK_kyzqy>z zu6WX(sZ!dP&@hELpk2u3w;N4y0w{3mKPmFe^=o8ZYUNdO&#!@G1g3fJx@ji z_NylKQVzt(P6kex6e?oDUoBRD6K9!gk%c%Y4I&GOjL3^yMSUftWlwY9j&-EAbA9$5 zdZ>;h3PYL5-%MU)i{xwOW8`>~`?0qZa?v8^a3(U==&a=i_Z38CK;7!G`|@j}SA8{f zem~f^8n8n-lM`DvnGND&Fv}dH)pK(4%A}&;p3YLQXRQ`4hLd}iM~zcKYgO*94I@#8 z1yzV~^MRgMKbyt_u8w6}`#cLu?JXD%WvsxSAZW+eMr+&H4l=vW%pW`*`WADgZg-GL zre||J%!I0g7g6^?^;XI5HLL}&3OskWsOiTb0%U^@2O8XJ`L;w$mrDbcemwUbE|ifu z_1?aRSGlu1q<~4leRm0rXV80Ni_S&>{>(Qy_j%j}4f#a_b0*vOwyIY12jM( z0QeEsE*=qBmkQn7)OO>k3u z)ai3U;A5vJNbfDLpsy=Q7D^%MMxx=3cm`?WO_6MsU|P4;t4F+z;*Jij8#%x^&d4U! zW0ZqhP&%Yc<)&es7i?Ruy(y1;3)Fi(ClXxmie6Cnl-Yj}YBcEdXx&DB1iPza+cZE&!Qw3I)NEjy7EZ?C>{!XAcJPlPXZ7v8yhVTDUc)q2nm_D{EB@A*>0C+=WG>RXLAN=VnOr$^2f3j=Iy5R zG`@43PJ{#VB`WHRh)Ku zlZ-qli1N+#ozK}M%3H>+$;3nZ<3{g8D9 zgMa#R<`F`$o=jXIh~Bt~V7g7wDn<%8=Z(wsV*86+Ms*?a!Y8*IC681G3#xI`^LD=b z;Hq|qI2{2pxOOzhK*~);VE7LGBFAjV*z2uadXoUT7Zfp9DN&nh3d=L>NEbwM1lejZ zi95E_cF6EWP{DmC1F4vw+7+a$c@XY*bzZ7`UM>PTKHfMbSjR&9;WP74Cz+dNV$=R(nAH!0tnh1+z!%<1+(+nPwo zc-Bxo>YR#TJJ)Nxej1Bd{*6Z8+wC#4UiL4^eUS@XjC}RD{wl4{izmnMxL{mbn%ge9 z>8==HBIr=p{A2q}>x)j|QPGRf-b3wEE30;nJB9p`5r1l0bc$R{zy)Zr)giGdy#Twi zh^Yl{;QcplzJm%uFgI2h2hyby*o(iM$Ze5up&-YRn`B*FP(b7sKGL9!lwBBIF&UG+ zbGwPow{KF8a!pF>x&x@8o)KLxkGzIP5#f-hC(H{pkMep=>OWBI=4-!JzZ!(B$)`vc zF4x_$0p=_cV(tdZ?sN__v~FC)@NN8>5M`ENc;BdGw!7%SDUNe@7Eb6EbE1UBsiT{H z;W)9R{6R5qa=uS_yT01W@+Pu;yMBx#NQVxEeN0|^UBt4^6$)KSdJY{-&DVm85y#>n zLk)=FuYkMlJ0dN1%q|n!I;!Ve)31uDt=J()7%TAFL-oZKE(V_r-F|TxeQ=!;==99J zS@BoCLWt@!K5R^M0~g9@?yI;tJ$0I{v~8!s!hw#3CL60kjXOnBGO6Et=8*$Ql0Y!| z+o@?o-wtap+x(QkmTx!qi$8L#t_sDy! zc*w02jBEeH2s;ak*-EU4w6flDA-QjU(8u+@1neY3xf>V3e29*;=Ziva!`SNNK$h~y zmZasH{wsGv>&85OcILB*nzjZo-!j~58-p#hbtTdo4(F!7$1Jkd`lUq4yXLJU0IH&9 zuWEK+s?UbU_lAd;I23u?+wOt+iCwu^>F-oI`%LHGXVGDdTrwY9=THxyd;|P2_C1K1 z7}JsiX#@hEab)UKb=`-$bcJpk^UxRR|8g*qYi~Llx zf|+Voq)azY>wwVm3p(SQCo;Df&WuWru-_K+67=(@;gG)6xTm>>c=kI-UDI1El10`5 zRr%W5*x?S67vXWo1ZwlBSAPD7^UIIY{w?P&g4F5az&J$cM+p=CkdIHxzVE3;dw&fwZ{_MqTk*G~EOX_1;cQ@q#XyM-DQbn|Mp26iDau*8 zKTJVys-aQXCv<;9t&2epXQ?e&GzgZHoJFZJ%#GX*A}T0LBt}7GY|B&Hm@Hbh_pz;3 zlkRORlGLBa?;>9t4n$PYFEHM)z;mPg#VNn@RwiPeLo5KE9e}v3O?}^#vL~MEar{IZ zIuR)=<=_2a=FB|LLqZM!(tE=tOP10oBcq8(s@ZfGA)48_BY)$&tHvVd((WuVW79^vfZ#)ZT#Za^WA)u1p*8yk3-8sE_ZJX7Bn3fsDQHMB2HB4XET{6%DqLkAgl(*_s}fc8#c zt3RK2kkL?r>NT)-0HM$Z1b7*K{VQjLgDIgX$g8pb2EWuB8fdwqgVDMi)5bG7rA zqyd&Bm=KB$;ogF!KD!6VZ}-2{Gm)Pv?HYt6G`W-Dn;>{;*QOJUwp;dYpv|)A+Kfd9 zC*_3|x^1O{f=v%r9QD-BN!~{}HlQ(r%#OAArv>v#(5zcSmrdrvJ^nUtv_oblqMKKU zF|y@mMGe)*^n9vwW^8MQah~b9rb`F6%)^3dt7&G7N~&2Fw(_^^aXITtmd1=5s!91& zMmM=CGBVveqrj1q6<2j&^a`8p3xPKP8~kh96DdVv!|E$goBtH(#s;>$1Xuq2*aODY zhnws5P2xc}G#qLP?>Ta8NEya{SX{((tf|Zp*z_J|m2Ysra4_?j#xWKl;T_PMocfbB zI()3e9iFJ22Lt=ALz9|>d0t)Jaa$2OW8J!c1q|s`O_Hn(iwdnnDH=WQ`K+#-Z6v0o zo-@mw{qI-_zvSq9Y zGW=5|#cn3!UqTnDauC&LYM!AZ!s#lYux5IW=7wQXHl7rcnBq5>6AxC*` zr&KFP3$VIh4ej&o?@9%uwjuP!bAF1pYv{G_6nLa`vE{uH&6!E)E!mfxM><|8qZKFq zmM=_k$%0*qCSctD(Hu->iK&+UUq!+l;(M9Tx1Uy_F^i&c5&diI0iDIB)3A4x)8cH9 zJ|KEEyR7;SOC6N41Xmjk{l@)a-qKHl2Z0-oYsmrB?2J$D3*)US>Q#mPRp#|SaZo#7 znR;|eW+KSoT~cspQ}<(=>dfSp`2ii}j;~CR$X)-ED%zesNC6QMQ*JvxAx)3J@aWZO z#HH<%$)-ITL+_sveoa*86D@fkBo@aCB|1Aphd!5{U=*I{3rK#+;`lYZdL~Nv6pJPi zLwCgi6&vv~v--i+dV}84g{U1iWU#&BzW2t0r3Z3*%FrbAmrev7SlYI1ef56tCiM<@ zUN>ZG-OFRgfMWYJ<58r%fPwUAG#dM4gJnY=Jm6`+=>3*DdN!r<g&|{lpRK^J` zc}9PUgI{pt%;&t}Y`y3;^oX)9_Rw$axCCM*(g^UawYa?F>p55`VN?@N_{2r&;?P?P zj@20o`_4sp&;U@71t()eSy;tV3HWEO%Qlv0Pg9`mUbJHCMJ-iPRzEL}0>U!PUYP7d ze_EX_P4etWK*Hv?uV&qq4g3Vr-zyk=$MMFL>uO$zJOipHBvpnB$Ec{W%Dga}Xvw{n zmwj;kfJInBO>=0vzjLo$Qg)h=(XPTcBGFXw73D9JlFqKvW$?2uirL*AqdLFHV)9-P ztaO9hcI}|y=axu@N-i_v&uia1^z4L$H%w;WP~@gaEvZe%gWzqI&6A zsIcg2uXY|zfY^t75HR|ZNpCKY>;?Fwo%K9Oh`_QE{wNljoQSWo87)FA4%E0ae z>kVm0yukFxGVa51ew5$>tQvRWh>QMi>xzrd%e@y0-+P{MT!i&`UYsfqHcf`6kZK5G zYtzc@PI$*H2HyW4S|oh$cNATFV7ErCs3FU4dc_ID>lX@y>9xVRW0jMo9<*?7)q$4# zFJ<8*jzO=_=Ucay?HtpFcO_^5y1Chd*K})@RTZlHqda2c@OgyTz-sY|Q>K%wCo%>` zopVC{M@Rv7bTtB80i^HfH&F08D`u@`#$sqWx1_Fjv;Q57?3em5@sj$i+p#C@qOPA@qyHUBf1l>qF0ENup*o+2Sh=NCx77KZIX;7PpA^!!QxPEhB{o zob{^~D5Tg#uG2(7KaHeIO&WMVt+cnv zbH>E^JTLa#!{$jx^Xp2zCJnIlmfgFJo06OeN;`)bVwNtN+4wgTJgi}b)d2g#m5_H_ zq<9c0F{>T&Yx-c?Se7g$+(0EU1OHXtv2M0$x235ih4)@nwhxS2G8tBm;c5Y!pmO7C zmV5vr^#sfz;WO1m6zLd9W3W)sUKDBL3RNW`bezptD@&Pe5p{HbWifq@uI!hhk8 zVv|bu=Cy?BZ|hD~CbJl&({EVq{ZEpdnliNu*LW_LWILZRIy<^k<*SBf05%aSysg-& zzGxfW^p#r?YU6I+@b%4}BZOf3$bVBNhZqrE(%w*#&^nRlEzj?6BQ+z`!)ogPGh0kVcekFHo4E|RZ~*qmI~Ac5uPA_ zmLWiiO|A$WjOKYkIpx})N>2$Un%aHJ-(jApmhitrg6VhEw6O-`!t;_Fylp3h>*(lqioY!@nYx0UDM;N0NT|T( z-p8aI(So1HejzXFI-h5R*?PVVPaDrWTWM^&)zHEpiU`qpv|Nx|YFJJbWer}i^tvJZ zC7|{;i*!4xh4uVL#DyfI$*8l*O(S{G5@l9{(9|D{_Li4I6-r0BGL>Vw*k7!+Ti6It zvcIzlcP=}VCk1-AQIK7TCe44aoB&ZCK1}i2o%HJ#@?gV1>sksaL^ss);4 zK!;r@RD(YCWz!~2qh?3VN$^RIZ~$MmLGh9{LnQz~>%K+*Zn*at%wE4keYt$i9^IH3 zNK+d-=-z20=B7ilb(*jkPt9-CZnfgY>xb^(yj5RIBtsi0nJNQd#YQp6`Q79TitCw7 z{C(Bd2Y+~V>9os@y@zD#dH_p;{>jVK-p4Iizv28oIAmLJr14W?JZel@Q|G5(ae72Ezf?1 zg-pl!aMLd)qOBO@#rT$@&}rjXP%}p777~2Fyo4R)eRNfhr0ttYGTrJ-7ys4zz-bsB zc`dq}3mW)aX|l_}Skm9vt7bn^#JcioCC8#MK~(AScX6kgc-5ne0XmKSEyxZZ=FZ#R zV{|Pgzk1y7`*PiB0)W1m&Pd*(f;{&BevQ{@J$Y~kh6=IJtaK(_Vg&%NRKm-+t{*Plm`3$c@j5UWvb&LmZN~t*k-OpHT>0%R5=c(t(F&^QCF}XfWT0B?*6dOzz&%06D z|JZ{)km&OIw5fA&kX`0tM`UxZ|9+1WjN=2JdCk6aQw}H&IE22gTlQ0CiMTHmh*Ty( z1>fAek?-#UNZV32$~KaBD|a88Ng>YZ&4l3DPht!HSqjWM|v=4$+K4^Jv3$=|EH~$+Ie271ErRX zdsMxQmbjE&lIB&wKacYZk<)b3Rkjl|`_f$`Ffx|BkF&ly@c zUR*gJ@;IOAs)OX%CxcESF|7G%(SV^XsUGtJ){T$;NPOp?GV(9Sqt5}oagJDmF_*z6TY`vd<>m128X{YSm%7`%^z8?@0Db8FZwipp8YdqMl*gI zkgNVU;*^@)I!55gZ49sE(w+ByA~x_{!n~&4`r=~3kHY$yCv9-gi{#LTqc~m^B!@Ki z|NnRK0fq5=TaOVD(EvH$JZA0lDrq*NP^}#z!`NZ0Qa%w}DHfq&%TXnD%Ocf&PJNf- zpKk=30}}U8pGsC+n9{vh$U_z^jCYs#l`X3&X7tlobV_AL>zzq9=L9rH2roW1L5gTC z5iS6`NjXHspyUTSy|oo-_njE>vNti~i~C>R_^$&+CIVimsu5ev`&Y_XdXKrhNdBh( zl0Qi-8eZOMIQK-cXB%5n-jlp((-3j@e zGNum|E+ApPdJ*O?wNlGUHkAJ)ceR_ip+i<5?Y2W+-v{K38}CA4_W}x9n>wAVdRXu# z`lo(>$t$MXd=$3{_#{I^dX+G+i7>%yo$x@+B$$;?aX52MaH6Sh@m-I1qJMtEKNbn| z^Z%0(?*az@Nsk9Kpi#8%*3ahNsFkUx|1e;*j5}cP;P!qVS^wVWyq#YbEm)&-`brlU zc^Qkz=gR-C5(Vx9+{F>fCIN``s%E*c$3$8dX3oPFc7>Y$z(lbBC%$vzduI@l0& zwL;>bBmpujh9y5W<4?d)|33swoZqcQ2Ml4q^PeuNoAQ}G>E}uJma0Dv)Wi-n#$RuQ zvzI)d4o+rsc^gB#cSw8F$#}qo+GqZ=hLPwAN9Fr}qFb(mT6_1QW=m!HR)Ml>K?g>3>hWVr9VD+?zjF*n`Cc^ z5D{qyetr)=;}je3v@U5{RSv}k9?^`DRZ@4of#d;VSU g|MMTYVWLalm2N}PZIj+T9N_P4?~5Q>JPPlD#6z&W z&lMom-anVKmuDDr%(3dfScdc;|HJ?EAO8C5um7mXyz|#z|NVdd>#zR-{qO!;uqOWB z{#OkA`EOQ7V*mO-{?GsU|N85H{NMlYO$fLCD(kNJ>t87M&(gmTs2bPpUnu`C1QEI- z+m>+vi(q{}=5<*Y`9Iqb2tof1Lcqs^(SM-~jD!Cm`fr*hssDf1dmp>llHWg%%$>(9jInd~n-Pb|zZW&+{PUsL8LZX`W z#9iOvzG1Fp(2KIeR@QOq`PtwL*zb(dRrx;lH<{@ENvZS0qyIwKDzx5>4fAEPhvvv6 zE8&r$;F8bp#XBI9Sk7cQG!^Xip5|V17xhw$l^#^6 z3*cjM=+UDTxK18{foGABUe=EaULp&IirvDg-LIGq*!jJS8AkOR44HV*xZ!Zei3@H1 z0pDYk*vexmO0djP*7MI9PYHa5>4l_=oFnSZ0AImpJiC7u?ANrs0lcO^w=#TXV4Cdu z3oMc*d3ulD;RBziAxIRrg0!Sa`1(MY&XYYD7T48d_2DT5^{kFzb=(v_r3 zEDxji=`Z59(-d$hQLK>z7uyZFl6yF)j%!S5Hp`m`*Bxx$FqES;l*R_bVi<7FKOfO4 z%Gj`IREF-`g8LM2o|WnkMO)y9zyiX+cljM2Gws?OrsILKO6$q% z<@$l8+yM43Mj80ejYI!&5U)ZW@NJhV_^zk&DZMLV20W*Vtl4E6?1A@kaDiuGKU1f? zw<;T~{-Gnmh>!gGTIp4=q<=Irdts9CJ(T(EU9j7NKR!6>J`5}VKoS;`%x;vDu|>_= z6VW6)Qm?fnxjr=3-0zz}59QO}PxKv6-WG?WqQWp+)+(OLwkrtWeUT9;5Xa)L)l85` zk!cx7pQ(h@N!qY)7?$@9HZ8q}cS<|9-Z)2!0M_7@v=J%)909n_$0K{|HCXRJj0BAm zCE61ZmDqYB5AiiBla!Fl#LH?EkV`(n8u|d^$EHuA7ECkN+x*}klngT1;7YpCOY3^3 z&+7>1TGE4b9}6%EHYg{sN?Iv-q$-PkZEVnPijrxHbfq!{Pt7)T4))o2aN{Bj&ST-I zWbF5AGvGrsL`YxAm~W5unngpTK|f4FkS4LOz2gi%s2Go1u+wO3Q%96H(E|^*YhITd ztMEcmr}ROz-$dSMB8;IL>tApt;I>o8AR@o_%iX8Y9T zw1%%Cjwbn0NJ!I01WK4F^$`QQ($c1QlhzJcIKm6;RpJ9~X)g7QPH$PhN`jF~(%8@! z-I1}MM8rkicU8GRLKt>ge;=x?G#B-AWF!2+-!G&`R{GgdaQkP0qRLh4E_h{Z`b}JA z6i+RhO0KD*k70q8|!@b2y0}q%?sb-?fog5 z=p@?C>d;S>ehK|F%S85n(0PoRbN)#0!)rLyKY{D#LphhNlosQFo8N;18TvIkPl3Rr zvJ~~{!Qi*=$mfAOxsWYl#tQ<)mvnYGZv$Q*4_zv~({z+(z zn6ZG_G*>z4w@f?3WohmnIV0TKyq85-x;xR}BNui)Sc$V#kSTxSB)By2H`buckXCLs z1N7mdy6iYt>?Fcj+Sqm8Mg}qgOP=VJfWNXe>WEhh2V=Ueq&%isHt4#Dw`JwC{+ugc z(5D%g3G=`~`~3v>Ar)Fd{0Rde-O*C~tEb`|lkG<+(}}UK_<0@6jK8d_F%-MBq!mpV zNVp$U{8b@Cg?$>7yYvNnee^0&B(o*Z?+b{;-shVLg#YMSF-X!VX_R=A`tt4uNy3#q zRt-tsSC1AuorpK{?)XT7m$il7vQ*&v^l5t#2A`9yq82~|T<)x%JK-fM?r|270=QVn zy+`Jn1hxE6A#3u)O(o|*&=3#w1{vzjXBpzeBrv?md|a!t68eBfO%3r_bqS7?BBcu>*#HSa{18&6o$1W*I@GUEC`7hW;|FZYsjn1u9B($r z>|#b&lUhphT_HWctePlpQ#N)1g?FfiV~K@@w)u=J6r#1Gg(JWjEU9JU2$ZvNfSHh5Ew8it!sR6WsnjWZwl4b6VGyuo}~?vyCIEXD)HQtEOw)z{$D z(%g+9x3GRA!SP#bG3Zj>Yu)^yZJgs_#~#(0isD0KT3o^v2|UIVKJ!YQeC_tfADAI6 z*R$tH(yE=BP`4O9+n0Juu3-D3#r<7w8+cn`zW0V%22|Pn2MRUc7;3Ux3nZP z-!qOi_DdY#DpJ=kBe&aZ*S)X$-oqTcdk07!T{#y*d9Ewnf$X2hQ%c!IOf~Kl)V2sN zcD!PN6l28~XDi=GmJ+o?1Y5*(s~ zvPPpHgn}D((U?KTqc&P$N0;y)jZTIb8QNRMp7~I2mH!A#J~x$pg0oAcIL|a82^AP) z_9Uu9dZXYBgBuYOI<+aP4cQYNvb*UmJ5b62LCV%~=`3ucK?o*6wN(gLiSTGWV6H#7 zdJ~ONVXn`c_M;4h8qvP(uh7p9NpZ#9ZAX+wrj8R~$U9z5rAFS;QE}B&G!gvgA=oRW z-KJ5Vbg7@@Rv4(PA0pG>y4RYFP=7Yk55KP|*@;Vas-Xjf24HqafAS|+t~N{JF9lXr z(}!2ci~oMn7{k)Ns#;LOsr35s@g6EQXj-v|om8uSM6CSCO&${XhZIM=>Mg{Ljal!Y zxhTwdK>F9_Ktg6sVS?IZX!!P=3i?;^P<&q9QEeurURN$XvFF0`{eW;LMugTB`C&2@ zWH`@ZaTcn-02s9m8kWSXeIwgIeX=m&1m;KN39R-XOr#T#B3MyzJ0HQmMI_ak`__lq z$Yq(4lQv~IKix3GWTW$pv_yOA;B!wae{w&B5+1a`k%5WS%SraX%La$er`8BHh%L#l ziv{;*D9jqGzu)^<((;yU>aQE|2ez>$;ryQEXPF*(-!=9tbqDogM`4ddmL zN`R5M6mg7&bp_rr9@!h`T_avTn>v|P=S9}?qH`tUC{W8!M>2AvlIB=}9C+e)1NgOTM*=E+6zV>wyKddNfHD+zVVD{2G*yr4{Kzx=01I*MiLriKyP1 zIT9T2fisf?@gKu!!GRp9%}%XqN_3(6=&OTB#`2uB1lgsytaVSu zGT&b%9gd^VEt4!mE%PlH>sa3D28EQx9B%-g2It?2LPG`8ZVX1l&Z;PX$|jhmc)}56 z{st15aB>`z%FKg$7^4Kap((6Miq=d@C2=VOAWQDg>Q^s0}ZVQzX;lm`#g<^^|j_tf>>X}3LTL$eB$y1%x`mBsfL-X zX5s372?(oiRm&DQ{OJCE252=^2jQ-l(5<7u@S$lv>C{@^E~fR1-Dw0k5^LYeWAv7I zCFbsBQq+G^6ex?9(X@jQoQi#RwIW zK%O1S?+0ji@*meRpEfjfsQ!)PhYWeE-u3~i`mW8mp;%Ev4rHiD9uQDJ zQbHQ(MxZ=}!L1NQb9`^pdMU7Ep?Rntg%fkGJsC*+V=JZ{EgGK38C*>3x)pVHfb4HY zhQJ7ZyZu9<20Cm*#7Ua+8|l@E@piy=o<7b{$gjYc4b{2E`!`EJln6)L(Ulz#WRjnB zU+R}c^iH>P8F-4)`7XL$A6NXzMEzDKRg7XuE?wFihFN?`rI8bK{9VRe@V~%$0(vaG zaN|frzo5M!CcIgYo2mzZHpP6z+&G6N}b;VqjIa))_0UwxQb3tulva_ z=9%JZ5vdh`p9X>O)o!tRjr~=ZJMSA9`e*}YSLKj4q6(P*2}l`9Bqe>1je;n={L*2! zWI~|ZAWVw`qc_?d3nGJLtu4A;cw%AV65%P@FK&Ql$TQ*>3*hI`eF5BUm4eEU^L_K~ z?|nY66{t!#g|zmfDq`5aG2JiDtJ$8V=1oZ?&mncen!nd+6-2^*rnLp=0?wKG&oB6N zJjq1i9EhEo(O7kkT3)^54rp>w_cB&lV>Y+rpiyC#9Oh$W>2WxU@<=o*Ynk*erPu71 zDRAI&S68|^GdTxuYy0-!G!$=}#17<6xgVS^O`!MV#WruAS=~j)g3F!6Zg^%6lZY&K zi`!KmlJkB5mw>bS+MvgmVgoy@*s?l2mt9f(4RB+ZN3Imu4hbcy5-Upz=ckmr?TxO0 zy%FV`Wc6|W49Sfs!yCz~jL{yqBV(;fYA761&klFjGtP{Dtq93ggdyNB#hs?=uN6B4 zKPUNl1&mWM18r$vm=8po$=1gi$ZJP~&MDp03JlIY5KuFvczJ0iMpY69AYi3tn;*9T z4gr>D_r|iW(T;C*WPcv<8BTW3>B6CELB)@~jO_JgCn#686B+7$_#^2&K4e(F2@{&i zJ0R6b(;+M!4dqm>;mlk6uU;e?#dD?3fhQ323q#pwEOdN5(zf%JQ$ngZ&5=@@-r|vu z2pR)L5bu~um@(%M1w+g>O-uO7Zrb8Uro)+FZNiv<<+Fv@_$yb4S{DOyf_z^x;`;~E zggI={cZ@uGmE=wV)3>^br9e#H`(h?HHqnPcCPa5?nw|Z)Hr2|F8axUe1-$9+%c_fK z~fpO!GLz#C?3J_ni?+MVzuC zR@MaXV187ji7&T<7XkLMlUy_)hLahac<}MZ&<^7c=&v-ZDP?a5QO$Z5P=)JDa8C-F z*^92;-(;~!u?(jvx$?CzzFv6Dgf@ThoB6VsLRX^0W2RDX2tBuA!nZCV^{sg#Zx^SL zPP}%0PW5}^(s|a!Ses^2+K&5(pn0|bVs979hdOQ4QhEuyRON_Y$_X@b0D-d^)B#G+ zXfM&)x;LFXF(!&96kric*GRoTnDsluOiwgrYZ;u zQFjLPB$^zhr7-;^-U&3fUSXI|sQnSD(;@e%!Ql)hY}Uwm<}=LGTVL?Gh@ zL6lj9xi<>;jzQUSu84A#DMSjf`)y(~IYoM&hr_8sgSX%vtlros12k|2Cy(Dl2nx)V0o=Cg zlS%7aEc)FKcHv)u0s;*F<#^VnWQJX$glB6131&5USS&?qe{#4sr4Rrj!jw>rRGRVp zLsf)a3erUmcKD1*yiKK+37~9- z*BG0!csq9xz1Yy*AI}oKX5v^sE$FH@ub)^#PkfC^9A2LZU_x<4MopHJ|#^zl8Ay&uQlQkpkG@?GmHr+GO*31Aa+so4dkCdd~Rl6*PgjKwG zK>#hhkvx{NVhVi}dFnu&AXe|c?^V_=*Z|RW>+#Wau#os51A{=(b#Ja6zU($d#!pux z8>#v_uttg95UE=gjXVnkAvCC1L>Ihj1Xnt_A@p+bG>7YB8g_>w#E%--P%eca=*n zBz(ud#{r-g<@qNyVOv-X`4s$b1`U`v;h(d!BY|d?eZmMEZD*C-GmvfS51E&JTe{#u zV(P~|aVwO=^}Fp@e)f9AffKoj0Et_m8E2SwN%_|7=I01`08ek*kf=jipv81$ZrUj$ zW4ny0YYgrNIH8 z#BPz{oD#fPR$x~1@e#4A?vV-$5dt03E(T#n1a$+#-2Tjy`@-P_=y0Hyj$uN1X#6UR zLc`i!$DzyN1~}J?ai7u2uC}M`8V%F|b9f)P zwlM;p{L*tIZ`0mF={(D?5|9kdLtmK6-SG|*yWO`V18n^u2D84^9ALJ0&tGqJ!8|1) zJT5nF;ZrHROp`w7N3LyxKN?Gbf&iQ{4kU{;>om5Z3ujfW#6}#A|L`a!$3m3|fu0go zCLY3R1BzFA2b>574OvjM9WF-=7}EE?a{gptsc~-UlLhIy9^JKsUOI zgqbr)74Uy?9aqAUO*;hd?gobYK5xl40wD$EoX)ra*m8I_#LV(+F{E4xgmcB&p`e76 z4yS%UD>op2b4*xQ$KnfM2&k*rHr)mdx{zSQ7dDYeDAw_2kUnbwtCe2{a^$WdNma+x_z_I*iomS6+H_hzJXu$wtE#BahOa>hovD<$dRMW(; zfuv5DstA>}2pyRb22TKJgJ6qkAgmE{$jSBPj5$w#G7>cQ`a>2pUv^39lQP)hRSJ{{EDl1R z6}KN|=PW=S$d^JHJpkZg&yd>{Syusvrb2XxCzT{i%hrX0tvH|}++;2W#+By@1c>fDZG8(?-OvSF8k^9sO;tP!15 zWX}Ssuu!Ntv$+JKswrrgZJG_{t1TX@d3&rRqg@%VPkrrD9&s;*2kvNBqGtmq0il%? zZx~t)Ej3J|?&=7ERZt%gW&Bkyp7^2fyRE3CtG@+Fq>4~_9C%@@?_zzOXgzi!ZZ^5A zjc7E7uB$O4%1^eq_13zU^0Fa6kDEPC`W}s1RVlkSlv&T>ILT#+bwzox-l)brqWuEj zHp=`v3om^_byptk6nTB^6YBV-a#6LDz>Rd}D?53kR;} ze}K)wdGgc?abo%RhW3;HBtTYnJJ=*ixY3EAdRbm8v1A;K)D!o>&14QgHcasmln-nG z6F?>Hn?q#}VDI>Mj}4m|ZgBRByCPe(I!2!NxZ+=lSKY?0k2+dw$CSjh<`CRw2VT@x)H(x z_F^|c9VJ7kZ@2eK35yA07(2D6&Q>+>AHW$JYU8JPCF+1#jYG&0hWD(Nh<>J+UNrJ< zGzFVjy_05&Dxl7#f3a`)sk8@6V|~Ns$>+o-0su`gOuVXX0Za*u%qke#&fJ6^oDL*W z);~*ejL1iLY7UW!N1uJJtBo`%(vHfU>|k3;d`SujLidkSoa@yf)AGLPD9RA`uF(c+ zN}6BQGKqN<8%w3R4}HQFI4P;?FoD9ly^oSy-BQvVe(7t`ZXB=OBv(s^7myL4YCTAmU+1VSY57-$jtbV3Bs zknI9iXq@}wnh#r2YO*g4_MZ4F(b*eJkk)MT@O@Apr1mfa+wviR2|2bHxUhljj?j15 z2zv{&&3U(B7s!~N+#m0|zm;6rkh#|P3^S-^xbNQw$RBWP5GTn=D#weh&mQ<_aRwou zGpW`B%3OD z`4##Lq2Kvh&;uB~-R*y{Z#m{qIdnx0*NgN;upipYIRSbj{UzcTWULQg8cT3T((cNp zb1E6$_P0McXk!P{Gy?$0R(_X)WSg524un8m>?dbu0aj@1ck@CgLIH(um>|ccg_KyL z}3H#)*09{o&Nu`r^_O8jU{6s59!6?j8iU{S(8B*$T zBvu6EJqM`VE^jXF4gviY_rV+Vk-QTEL?55&l^{RR_|f3+lT1oU)j5(~LDbz+&nE)@ zBn0S@R!lycZ~_{ZFs>v^U%ur#`vfN3xpVvtASlYH($yvBYg7#?;adY#rQ$D>%YA#2 z`YF<0t~vYc_U^nYkOmXL*RkRE#IoYTL6bfLUrV3<)CTWZN!m2e5vCNg#mkOju}y|d zC$p)!2Y^Rut&endYh;i4u+=WGG+kkHYxs!VENDP~0jUBE*dq0VH5|GtFRQdk#M8#v zk=kRmI;#HhsXYwO7kL5r0xr(~RE(K#Lixkk>^$!P%k{4;&q z=ZU)DoAbSFyk6FuSRM_?xzJjuCsr-;I?#JuxqLxr;zZFaZ5GQtu+<7t&U_hO>AU#S zy0xsi&RA6ote}S+fHjaZK&5OMbHiL`yEmqSK6Gg-li91a+T*RSoR48 zv}5N!W54?=;%Yx0s{)zRHUCy?rh4uH+**b4Tco24Xf`y)39tKd*fJr=ZYOtPsam+? z>$>|<9!}OSnq)d#24RRLvT+OmLo`W+CzQ2Z&@GVT0R;kt4Nw6thOyUU5(4Vsjqr)Z zlml6n)yRO?bPFd2hm!pv>ieW&_w>AU>)5`B#%{dj+?aqvYkB;8ptY05Szg^xJiunL1sm0x_pM{BT#LMY8CkqjJBWK>zM1|il z9{{F-`ug*aPuamrrdmA9gXRqRv5+i?j2h~C+CzD3c%|0tF@D9y2J!rDsu}=u{m2@Q zgx^;Z2hfd5pInF^M0@ItuR!b4NnYyV?15lC{?Wc_v%iU@v9|!MO5b3TXqauMGKmpV zS)eKaC65@Up|aKK)5^U)xPVE4h+u)KN1=dnD%D3e$;@C5G#pfpYRRzRyqzcmp((q$ zdq4lO@m2>IH}=TY&(CH>4H@}14Y*xVS;h$Z6hK88VpbEiK;?J3de{px=&MeMJaPOX zV1V;>8-O)RvQ@zxp$^*5LkQQY+#M$7st~&IAM$Z#6HeZ2X-#V*rD--p4*5YFZhSUP-xTjGJWY0c%nV;7xvVEYq49HU^ z<@G@D`F&;YJYsgU!4rV*ZaTai2M{FWQELFH_HJUcAZlpIDXNTOba%}u*3Ur5*W@k2 zN5CW*w5O%T1>zIwo2uo(ZSsS`RskRwAS7^Dws2MgGWzul+oyA=UA>eB7U!^>?x#3l4;@DX%L~=BlP(>Ni}Wj-hC`B7W?{dFw8x zCKeIL)(`a?Fg&pUv1mB2B|vQi4hnu=8_me)NfGT%IKpmo4!1-G*J)k$kRy2hXleD4 zlX*I5foJRZen*dXQOj@cRPpWFv&@@eg?ie5OG?8g~H|An;jIo<5+_PZw<#oZ_oyxxEe}fnG^M%&Fs`E>o3zXBV+SjoQkA zx*@Lw;@-yEi)6bA$iS|3n)jN@z;^?SsB;8+Po+c7CF!0#CH_exrY|2H=r4+I#zR$8l%aKTlzkSTAUu%SrkahM%3J$yk`KX^Cb;MG&r?<1!=4wb0_c3hh zV{drdI$`EJ$#Np*A|Aw)W!r~+8&66*#b*RG)U7rdJHVWOWE@sX#re2dt^}?ZOnVPr z5(@;X1Kne3xNT%!w6t3yo0Ht_`|5z7vhrC%U(B?^<-2rTP1;0ZbSDeFFHmwEYbAkB z4Jh*10`z5G&`o@h1K{ZL)=v0Hgn_Y}bx#~1Lx&Lc_4kq0cOFUrAgRv~H_Lzr(-D8G zS@?C=Wc`|GKXR99NkiMhNztYSZ(UqZf$%)Bf{{x_Et0Sv(C(#7euM@%E5D@eP8hWs z5MI<5yO>p@lityg(W_KW9lpmQ}}i#YCr=%M<%!AUrEzc+9{ zabkRmm3QzSllQaO0l(pGyU~0!ayUz%u2vNDYfj9{#w022cf zdqVcu?V$jHMI<7#5=fMwL0chCDh7ELtD|G7*bBV@^crDjBK+<+RpppVnrjj0IYrP{ z?D(!R_+kaMj%nP`=5bYRZ!rD&WM$)T8~(*>Q3lEeNMH7%O@M^j3n94LV_0TCC!cs) z1#X=MJVGp%N4&*7Xq5tw%w#29_WNG9fFN#Laz4#$eS_<3iPGS*BEB*sDRrm_fuon_ zrm|FZHWmnN4G3r$KBlP@2f@k0MS2=w5k7gP^AI*5M418&}COXPD!9EV0&+C1g9zF z!5qPdKiIq<F7bUuDyM(?ee}!--Y|2#PA0FrmF}6P~q@|A(cDfwdx7+ z`qJvfn0qOIfK*kcFI{K-=HOpze!ZC3aYw%j4U8H1)^dXA4ADd2yuVBh1cVOd2XSUH zamLRJFKEexl&_EUxKZ=Lz~*GNEb|Md$A7f3U!eEdDx}7@5D(_$Qm9<0vs1_c@;!lU zfuM+f%GdW1t-kRkP$PywH^~q(bGty^%5bLw)H&#LQqXyBEf_wrD8-|a-3f@sxyfo^ zHJ^Wmkb6%d`VdHK(OB_6egaL0Tj8tmy&IKJIIllJe-Z)mLBGS}ayNbii2mZw%V*h~ znmYzJrdnDv10~vn3YW0m28gm2Ji?&9mA>IO>--zCCD37gm>I#w0FD7wzqRp9?+Eke zRST?K2wl=6)C1&$YuK{%a(AIU&O@NVb0uf~An51o5a_m9$K|vf6`IkT0Tr9n zgLbuoJ|elA>L*9_@fyhm_TFMHap=az`=$@hQhw?*jpphN+F-g4s67sjZ%w5G?}bHo z0=TaufN4BhIo40kYrU;@9T&!riuNKUrW${0aP1Hr!%il4ORz9v2@p^F!%8Nc=wfhF4#P# zwCq~;BUs>zuBClzz(6Ajx@R7X+jdelnvFfL&5MAOI5h#1k?pWS`sVscbH z#T~u~zI$zO5co*63u|YbakVW3#}K64&jv=;b3Z1SxUMIhmX=bj1euo)GgCc#s|foC z=KsFyA6mci9Vx*^<754Nwt`SOc*lkU7RLjf|kQpPNYt?dL^SZcdJ z<%Vhi31Oi1ktbu@XV@3-t`#R|+=eMAn75+~J3=!TTsKNLC6(l^@CNX$@pD8sTJ9gv zWLJ>o0X^NCFj7VPyykIYS2{aTX7oc2sz8uZSv3OdODoG;0{1h&zT%h~%W;!_K*e@e z*@YA19Twkrz_kq=AiFG|f;k;v*27SNS*Ts45gA}?Ow=}8CK=HwCBSai3jR|{7a#~0 z3vT8Ov|#)XxS4jdJwUEMwO=@SKvk)8BK(K)%xx-3a8kseFF}Z)c@gK*u{TpLPj_s! zaPfw7UwGl}GmAf8MHPHC-h{`vbPena&}(2@F7YtgmL*5DHT)Ft4u)CumxRj`?CdI#WSd6puoV;*T(4sa+40 zqU9o09z61^w>02Dj03wQ$i%WkZWEi6@vSG>ln2=$oT9#N5qkBct#?6_3#28Wyx4jH z+3WiHl!vY@Hrm{EkhA1OHJ!H%JjYZT z0Ns32J0wxey)Ye;l+$kV$id{L9>C!ik#g+>A~c5PvUnlGd6;%yR67&v7?6YL&feb!ToAc34bfR1T#M* zNe;MW;!`Ce8cndz$qB2xdk3TCJIr#ummHab36k#6S9hfQGd*4-P_6LqUOU*7nL(d* zD?8YVWxMnzoq?R|2b*Xw(w3@CtY|sRcm`ojLZbQ)^#}?)_WnK!aRIr#Bu*_^@u%iszk|b)<_``N*1hh(Ea-Vv!Ey_hw{h{fg@9E)fFh@z2$j=L* zs%)YxNd+QXPWFb5y7pgPBE}kbP|NNY{ua6;6$x382-|+>CD0Rr!+}ywj+2F4qjSxSWk^uK690?w)xt z4gICsL;Y|;)8#`u^xg)a9eNYWqq#ftp{|kZU(;dN@x_fuU@fXg`x)_xz{F_p6*d6_Xvv9&A?H^DetiS{dV^ahbXU+A zV&mNlw?xOOf)>|xaIsRJ-Eq_Fwe54`kf3ZmmKM{2()pXqXbEl|*fqVuehaYR3^|~s z-Tx*K!^*68u%W^Of73NF`#^gIh zD(DVaBarcKdu>Hl&De_>Bw_Yl!OsVDSoJaDYYM_9V>Rx(stB0S-IC`JO4n}yVr!uN zW$K`V*de2VG{a64Keca5p5ij{ilBk;8`x6DH^3uAFhh~<@`M|M$Opf^fII;@hRZ$r z;tL11%HzNv0@ujqKngHRQsvvEsM=1pc_0SBR&|VX22Ap70$HGbF=Ohiw;M!%f@-L0 z@eBpCOve`w(MtHqZDyb8=E}|2n@Z5ooRpU6%MWX#nsQ(p!5EK0z;;a=Q!PbM2Db%kp`vbfQc_h;#bIqDhWH*n4p8yz)X-OaL_0+E!H+l8- z@I|{}BC4cc15>#79c53k{T-`JAa%vFeQhDowdV4ina1q`h&M=AMCcJ9AbO#d;axG) zT-A${8YVx0Q%`AnTr3J0LQxKx=l>z;s%FIm$Dm>-}L&ERgJLkOY;Bj}DZca-JWDkmqQ{8hxN5|na|GT1BxkWn9 zA50hCceQTdQd)kE+3n4T2AlmLWLdo$+L#M^ny1LEO*v+NC2*+ z^pE%SnirB-ZY>)287yH-mk!?VCdLC@Ycd5LE?lzx&nV|+KkmnqNR?QP$C}K3?6;fl z$@@TveA#hKLZe|4-~AOrLlV;mMnTL^`>1`rJ_{$j`kAkefFN`SExio6mpk*^1==A9 z4xrQ^z0mz0D7-5;8w5pSc6Dr4gzL>i7XxzQ?x`e5qw|H_a$LaR;`;&nJue;&eWN8F zuXXEs_ru?lgU>RcIh9=pLc#j<8XZYL_})41RFjzA35M21=~jjZi7c2GO=E=;%H|g& zP9^DM++2jQyyR;<-8D|AdF+Ak_yawW`>RU)O}2iUpLhPGOnnf@p&Fi+0=tRePKsas zOg2_uMW^s4?UVf$b~#vsLe%y6Ds#AZkIDvk%&_1k#hJxhE_^kn9?=7iJWuXeuF=MB zvHPVVNv2bZ1UnU@by9y6`CUA~bD{f6y)0mX$`{Y)Fm>K_uBUkqrYP(J)?`H}ZG{Ip z$T-IiwkM3y{ox-|a{;zp$GoKrzqhJMaRu-T(hn+z&^!yqmpWq6qo(f>kJSoWJHPIH@_AO39{4#imBp>k#d@BQYbZRtLBPcpX9gW8{~
    1. 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%0A}fJf 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 z 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%0Ds70c}#v3nf_cbHGEu+poT*ch#oOQXe_ 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≧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�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 _4Vxqw+*} z+AOmlbBS6c=9v_7`YvO^n1bkqsqz>z-*N?i*FE$|a;nX+C>4weChlx)Xe$^9dZU_w zIemwhdM?-KU@m*e>t|%FPCtlsK44fR+o^dPO=>aR_@y(w+^45%t^P_sU7H~njph}9 zWkD(j?esJpL8m^$6luI&2+---uSf8Zv9bO(=zVhxB<8qv^|PUnb7+p=!paX*W;Y*V z&{oiX%lmiv-JiliZsX|i7gh* z_JX#^azobnkw4c*$?#XuSoz-V#tF`Fuq)WSF8vd^4#si{g;%CPCDFn@ttibb8(Zoj zv0SNPp;VdHfmkP&MFX#5S-BWv0rM22E9wCl|2lr9sj_zZ%G?K3Q+jiC)DMruDD{gSPZuU@@#8m{tu?v*|5NZ3|bm(4}8ltsIiH>K_ zWZdfF2h|<|O`lknMa0{@1i9+j1qYf+P{{0NK8guXr1(w; zf%rzs@q{^Q0lSr3_n7m{-pTO>dvs7Q;PgxT8PGkd05hUhr^l-{P+u-w1m~ypig=Jb zs<}GXt-Gamb+hGj_%Ok(ZK(IM{NNKVJU8Mqg%W)Z>SuPo8t`GVm+^OK%TH^56LzwT zluc46JZ+vTr;fsUXG{=6QI5azvmd6yhD%+1@+gBJm0~N+mi%(*#SP1`7Ws0IxZxh4 zUd_oUzq`Mtb2v!k=Z42|kosg0pI`tgymiO&;LIQQU`21?*Wv1L(3~E4qM%GiWr`r| z`NZ})zwlUg3htMM1?^HiDRe=Y^bo7|c(t2O1VG%)`WOgT`{a6&KjFzs_(<`FA$oJ* z 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

      P?eH;e`T;?b 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

      OGO^Y%D5r!Ei9B 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

      AhT!aD#1Nqy2@hx48@duv)nk)>_L3Bu_-fu( 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

      KRJUuPumN=HIws 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

      oH6)B%KIYU5F5C(s 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 z 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

      DhA$?yA0Hy{qB}3g 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

      7N`>`-Rt@j3hV362cqW_V{6Xs0 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 o)`0oKN1WJY+EVz>#l9uyqsAP!hm7%+%HR{1)E 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

      U3WRilAxZ9M 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 Q0RcbC@)~lLG8TdV2SS16I{*Lx literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/editable/Grafana Platform Architecture Diagram - On-Premise.png b/content/static/2024.11/images/editable/Grafana Platform Architecture Diagram - On-Premise.png new file mode 100644 index 0000000000000000000000000000000000000000..3f7a8e417038f4ff316c763ec54353940b455bc5 GIT binary patch literal 187938 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

      $-I`_`j|Amc^3Jvl{+t4Kr9jaR`tu`3 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 z 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 Gv;P2wQ%RKo literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/editable/Platform Health - Availability.png b/content/static/2024.11/images/editable/Platform Health - Availability.png new file mode 100644 index 0000000000000000000000000000000000000000..5adef29b07f1e4128e44c0aa73eb7b0683fb17af GIT binary patch literal 173788 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

      a8-^JCS(4RwZP_&#Rb@RbF1v+F8mpT&1J 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 literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/editable/Platform Health - Break in Line.png b/content/static/2024.11/images/editable/Platform Health - Break in Line.png new file mode 100644 index 0000000000000000000000000000000000000000..004c292494900e7ba47c5cd01e8f88ec71be4ebe GIT binary patch literal 149286 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 literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/editable/Platform Health - Duration.png b/content/static/2024.11/images/editable/Platform Health - Duration.png new file mode 100644 index 0000000000000000000000000000000000000000..00667ca133542191172357a0fecb3bb70f989596 GIT binary patch literal 304543 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

      ?}iLMX94;yb~YO+3J@=WTb^yY)@@1hf2P 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 V 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%0Apxd9!GXxvsS^R`cs{*k57I3 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

      p-tiO8Ynf=-NUx{J9|YE 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

      =xpNS+V<4|Z`J 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

      +cYb?Z|M=Z8i_g1LM3KzY7hSJn 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 z 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%0DR*#z| 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 SoN)iCHUS=9WYOupXe7P(UR-gV0^-W0v<)^ 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

      {H8PIH6 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 Ji7CW^Hz`;LGuYRK9u<)4f4Y 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∋lt`bn;D%utpbG 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%0DAftCP{im(4Vr52ZWb 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 literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/editable/Platform Health - Time Range extended.png b/content/static/2024.11/images/editable/Platform Health - Time Range extended.png new file mode 100644 index 0000000000000000000000000000000000000000..4ec8ad256e2ec068e0cacc0b811c99fcd2a92e69 GIT binary patch literal 65109 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%0ANbi4Jy#>LcmJ!-x8=jxY}v!QBp?$f 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

      h@bwxaeMu4I!%Js!CqUU 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

      ;NxD@Mhd)Zs>jA}!Ip>h;@gaIa+X&N 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 literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/editable/Platform Health Dashboard.png b/content/static/2024.11/images/editable/Platform Health Dashboard.png new file mode 100644 index 0000000000000000000000000000000000000000..22f43ea2baa409860ba7a152f0e72d038fe0a576 GIT binary patch literal 1739773 zcmYg&$L{RjverRD2qE1UKunKx8Ss~L7~1W2&Y>M<&N*kl0nfmgDUZTSAR+Mv3|Zdi z3Xt~hb~`MuP^;>zs;_?k+0=!9`gi~S-~H`xfBPp%L(fkmDG5l%U z1e5xo;D0o7sE@qPrUEqqri)n^m5!9uWh;5skxz~N*}kr&GgM)VN=}l;WWs*b`EJ|w zJzWw+tUrOjlND*w)`mvpIh5n(k}BvE|96D7Y&D@Pasj`p+hWha9C(BTYs-`FiHcNW z9-jpKD)JV5BFK3_1$gYi1MoBXfx)xBOVU}crZk08VuA0jx$ie^;tLsu=RktVV@aoe z8v(P=5)}{yo;tu`b9!WhAM{GU7o)($C){h0g5Epu+gvB`iMDrWmf*m~C2Rrm1iJXA zx8_cPvoar0=0F**_-FB$oeEl0;iWKs~x_MpKl z2b5`pPtbIWKI#EF$x{%2d`2CnTkhZ*3zOh8cEF0TaVntoUSKBe!VlO= zY-@#Pba8@XHkl<>*pIh!C2}R# zzN%B($OkI0aB}4-i_ppDNPD5~nCD?d6gfK(T6UwM6)%utg`bSW%n$Xp25Cx@!*N;X zKO@C{J<6X9aT{bl5^Fz zaDgA2GX%8qqhX-A_?R;bn66)80*aN7q=0?~I;MQgz4SahmIH_{ODGs^VFf{W>KOrD z%xbTIEXO1f9gJRU8aHzEfqLVCM#cn-{q7xgUyI+A$UkI`VjrBFp5qlNV&qxXFo)56 zs4NbbBMm#Tc_vdBd|M@dp-Y`1c;0E_WBg%cw_Y;`eatB53=cbh-!==@d~08s5^S{F z(nX#2P)$(#w-qNHWW|Cl{ozFo=p}28RqpFvH+(DpnPT$OD^Js#`lb@Z*tlRDuw0~R z&ntafJ4f6!W46EB29#9|WsIm7#F|PIRE#R{FXI{Fpof8{W=MONir5yPMI@ea){;q~ z3vX8XQvgNJnbq!(EjsQLX@QrtcKaCX=BUB>u2?}rJoe5lOz!UzeM9y-irYkcq0>F& zOHiM=!S#7)EoGZhph=wuC!@z^7o5(YxWyk^?D?D+ef(A;4(z#aZ%@CeFlNeE8c`A+ zg~n-%MO}VZIgFL~?!&sr)KPHUu|TFHv}M4X>5e-j(u@u%_g!N_MmGxO;bwq!U@OxY zGVo2!;c3vlZGLD{kE~8s0v1;c1U0tyIBB8Y*1=5VgXAIKI!zKZOB$X~Kk=~=doiA= z2el5As+MK0M7_HVk16(XE7H?G4@`^kldC~94fpfIRreJ|@wnlbx3A(+nh9WpWKBg07shMTQ+-&c(acg=aL2RTtviOL{A@1-Fb}T5n@D0% zTFQ52lrJ1r_)p}_o<33o&@(*W3ukp`K@I)Tgbzw>jO{wYH#OCvAc~HW8*eE^vEB?o0z&$(bKTJgh3E!ti6SXzTr=fM^a}z}mmjd-S%`YIkVvh;uk98Z z96vx!^R|Xw$c_IPvGrxXi%p;cIL*RP%PyAT@J03$(Y(;> zxX0q?wpy0mywTf=7oMy+$m--Cx@NFfj{gYX?oTkWRniYgnFg>kby2tJerl ztTwrzEVd{vKO-H>RE$gii_t=cHfuVA2k@Lhbu1N0^5cSL$YZ-3X0RNxCmw}J;H~ur zD{_xK`3=c#O@_sXxBUB#Rw3X&fCyim%8sNFX2{s#R^Fau9vvO?l~)A9OL)0V^ypS& z0$8K7dG|H(WA9hE5n)u0bK^ih$L*$_O;QKuwglwI)OT-#XDBxz}uYai{f9wTH?v;g8_gVfP+s24+*KAg;yC7dF;%lnkQ z5BuJ`5w*Y<;c<7T_}hf%j2VyP-{cQkUWK2R2y^Q)T7;uea~K_oZx5goHmp7*%=3-yi{6RIvp#ZD2{*Zi2l2Q{i1^Ez z=)wt-q(qz(YAwkp$!jzn6XOQxiRy(rhR#FR*C92*(p6c*HuJb`-D@4eZ8{eTnwUOX zU5dqEKH)Z-C~YGFsy0XmLiZz-GiWslXr>?Zm{sp+v{)S&^i>f3jbvfP;GMbU)7j{x zdwI0G`Xlp z8T0sgFA4-h=k;+8MnBc01!2*V-BX%p%>ba~YqYm`!252;J6uSQRsO)3lj}`)4Sj;@ z(r0!)I#xLwHo)5_t4j(NQ0@yab0hom^&#VgvW-@x}rV!JS z8Pru9(mlupOdZd=vov8~3RsrVceJo~{ubHmR~Eg;eJ}gy{L6^tl^wcjvFxsbpSN`Vm`E1NPlH(T|0TBcyL&lpw!{^-lXeR0sGQNtz&hzzhaTUp`*2d-wHLZ40vJUL+1+;?^GYk0r`X-t7?{(;9I;VvILzOL|~zZ24?~T4`8-GblmUXP?lh6ZKJ{ z?4XtEEMJeji%hN}fwmT;kVEN(F^9`_Sp4E@cL7MwxyN3k^@{H}(N83RlYk2aV81!1 z=3?+br}0OK=d?tVpC;(WU#-b_i<7j68$7!!p;(h1N!W7Nq%dT1IMS1{rDb7v zf&4j;_Vk=szhCLB?vx7V5rVxsoRrcqrT<)VIo{f5f1GEo@A3xnq~NSRpaDa&P}b*fuqHCePj>pb9T~q^>F)p zb=gM;rjAj0G>}c5%3qEBuFn$X`8sseu6>KSkNu_726#nu+B}I?W#Xa1(JW&E&xkea zq1ra1HR7PUhD9yl*Dz>Pc-yURm{KXAN$-K0lO((I-d;@gi^Bc1^+H> z25dieCjvUIU`_-(H+r4@2oa9BO38ZMh^UzL_!~iV{PW>{v`bfp;ai??BTUQhvh*d|$zUzd*d?edqND6KK)rKkVJZan&Oz`v|!&+Yxq#8CycXex| zS}tRCL;>aS%6AjlcCipCtlHu}hYQ=Uz>wE)CPUxTepqS8 zUc5P3`$06b{xgxvQ~k%egJ0Ia2z+Eec!DXJv!%9UkRPi4ejStIF8;^31E-)1MvR3& z)hYMFw2?@)W*RjM_;wqbUfxYfy=Hk1;YD`&NMI}Q$KpA{gyJ78W|x*vpZ)7olkqNl z<=+w{K;TGx+C##p7XjKo&KO~FAIRCs7v#3SLtU}7mOkk6VIeyv^(Aq=0WEln8NNu9lGhGrui;cefK)!_mz`REddl zyDF{w^B}ma2hT6q=+2nUHtWvTohWmTuYs83+;6Gvep8TwN7&RYSuZpY0F0T%3c<$(p14z!6ayQqnuu7iNzI z@l|#$ObprTgrhe-+1819K*+%_$o$9yHtp|Gpj<#kZ@INs7FWpxFdLmPQ8$av(nT`{mAO>7Kk8 zg$!ObtuLJ7iXBXo;#IEGRA^o+8PTZ#o7~x7(TaYjD-yCD(#Xh4hO5@5Y~=%TzbLeH ze>G9yj6dapNz2(i3Wdv{8y{b$WQdO!){#!n0{#;`_tcR12_*gdek~(c4JYF$rs8_-=XO6acfO>87FzB~{vFmaL$N zK~z!kZdCZ&>jH#6NHmJrl`GwZ|kZ@DR)EK)%0_xdjUW)G7O`FP}%>L*As=z>B_ig3djV8+Ic= z++_%VjzxzC6U#`*RI3{suh=8G*`*LO?+oHp z6?Q=&72F6$#qR-((+gim{xp?Y?`en+!uqVP8t$mrlp9G!1^kMU7aFo>PG!QX3AK32 zd$R>&6}7Dd+oLjh-H|ZFr@$aT`8@t75zdlGBwYJm&v#EKsVXRueWfwbpgpDUl(kn` zu%C{0Kuhb7)RBI^y=pJZ3UdK&WK<_8{Qx(MyQS?ka#za5Rjn1sPZLeUAK z79@-r&vRhClU71={0;htlL>DVIsB%m3xrlA+Jd6n2Q9S|QIz!E1eOfphrX(9n20uG zbRbtHwJ2lhGcAgaD=4Jmdi-x4PG>)>liW?r>|DnhmiApKM>U%G&mPTxHYJ&iJ$SkgoQq(ohYT1LV*}joy9sjm@0tN0 zTL;z(ngV3S+Ol=I*Yex}X9e69)5#B#){hm=Nxy(d7VzEM%Um1Lp+RVjHFb5+oBSfG zC;gpm*bm>f!OKmp>-8aE6CRk&zt%?HDLZVYl<^ZaSOQS zS?dav;8nef$V$Jn4qFgfWB8 zw&EXJ7J&!DIy)Ebtoz$`q%brB)vWfFt!7)umU7Y8&t%+3++)&V#;^Z7=ZB8zoXm$F zavX8~oUqxHL|(bdtW^H@g1?>sECGv0A@?g0j2s2r@t?KFdy#GdE_*L_t_>muJY#Os zS4(fn)XUEw47hJ=e4KkAw6v0j3k+@weSu>D$o6{T!mq=OumbybAM`^m3FPdA(uoT( ztyViOX|z*MQHfadB5;p`t>}&i49#%5w!7RAg$GkD^!~l_3%Zdn5e__&s(gk_e?I&> zA;_t%;s+npuQw$|8sj2e0*wiP2xq1)XEcQQiNh-3?0#WFA4))smRMPEo=`;CN}uHH zlr-ij`@l%q@o2=2R{LvHwa51W#Pb~fzPW_6Iq&8B6RiA!O!a62Ex|K9K$0x>2B&_y z@rc=D0#8-BDkA^gX6kh5!rbZ!)EwHkj_j4W1LdM!K_D!i#I!ej7wMvcvT*r`CWJL2 zy@<6x5fW`yuIsEqkGL98D%SJ$M~7yGcss;Q3>R2b%E)vZBD8w@_t4R_)gm?P(X*A9 zZ=$k*Dv9S&Rdmbm;Ew6o3|2G9rloz8H_X=G3}uHu?}~M>b69cBDXxXj5JP25@lh9? z%UlOUJJ~u<>U*YvR zk<8+U9!F~T1uLt00no~`z3P(Tbzp2cpz8J0(aTV5{7P+o%WS(xU|${zFV$ym$7B<4 z)CaH|x>pgC<80zKYJ1oZXWYyrGz{lJ@@&>|LG%q|;y!HO8z4afq3I{6*Ansh6E1n4 zyPuvmjDiDQBL4I>}VK7x23YC_L3+}r(45e*D?h^N28-|?xvF@WB9?= z=Tn^_d_D6@-&$oLW(e$V!`HVP=!nnw8TjxcqLM>W>NNl?iv5nxYXDSXXa2n7B=}Im zFPkszHZo?pw36CPT$O+#W5akJFu%52O@Ba+l*Gqpj6W`fsV9t9Mx{8P#_xA{OT<*BZc z5$#=)%~!s(t%gPImqFjpa|-iv{Qwx{Mb-X3yH&7QQCCk+U(M)Qnl%4j7&G)ed!dFW zdhG}Rd_?i9eC8PpV*MrcYs=G9=w5fWhJID|q9aJi(Z|kEM8F58rU2r=JGS~9iDPcF z>LGEul3(>vgA90!?u2+c!m1F#7^e{}vN7-WeYR8JGAXzPsnGwU$;z z7^nYcJOa#UwJ}#GT9^#lvpHPxIn0P2`2IKsEd(!vh|TP@Y;UZ1-2j2em6Ilhr;k%= z(x$EWU`(g+3LKAMsw?$__&O}sAiZJMSN%W0#C`tC+4ZbUVc zy^nPxYc`Rt2tgY?sMV4+v%T+D6udA>n$$bC;8D5u_euoGAf9k|N*tiC2C`g^^ALl{ zM)wR>5QsBFB7*uav&qqmxnrnJ1j8I{Sgj1jr^XdGcM?%j`E}#~i|T+Eup+GZ0yYFB zY|-OGNdbRrEP@DI69c-*7llf#vI7<@3$Fp0bu45 zT-sGtYtEbYE3_aCFL$Kx7mId%Gs-K5k=i6R80+b?hb@ zevLbXoZ(1D!Bx}0S!EXBG40_U{fO#{cUAk+WtPs9YVky&&-A2TiU)uNwgGTh=wz+q zh#y++CB>!WyL8)tk<#}UkvN}5n`Rd^wLMOBqlik3$V^1gw?ybX9)W#50og@3@KzF~?l zq?*CKOn2GlVhfwY<(7719S`EeDdL17Hj5@$vOpKVR)IOvL&az(- zIlpdx_R;E%&nEU+jS*N07GrE+52as>)bKv4Lw`z`A1EJW5Ie-%jj&{0+yxG|iDa`Q zUT*$y6QE={>#G#$%@LRgvv2w+L99c>XmT$%wK0r{+e{e?joSsb7uaW)3zJQ5YkiVy zwZ)+Ln?f*G|3awvvEG(E6;)u97t?RngsOvX?Q{Oh=@cqNcC0ExA&Os}kS@g)`7w=In>cs6+#hW6{Yq0CVP|$)NWFlCrf=ew@xt19*LKdq@5QlP0 zJP(ZQkxjAFRRCGush{Kl;0(jHlYX#`XnD}Bo3aT3dV{Z*PYbv}dy5YZLO0Jpg%O7r*`zp@WzRFYNZ0?{kofZ zK>S7Ne}g%EfNY~ObgBBd2Z=v6Q;MQgGy1203?h6+B02c2CLti^2AatMZv%Y2q1-<6 z5Z|^c52aPkBU+2au`(;hoY5{a!@yQ@ppP#RZ@jmpm){{5FzbX&T#5A^5HBi&N#zH^ z(?yb9oUx~Ql;pDPaVFlb#R6&RxL1tPgCIYvy44qCUTUH6$?FD8Ipoz%pX-#|aJ3Z; z0f_>d=|QmkM?pKm(tyrOuXYVsAmF}|v;uMON2AE~Vor;6#Q1rmeUlN5pBwZ-ds`rT z87zy&$8aE$6o}33I}0#@(z?OBRANw!S+n?Z;i^c8ehwxxXukMi28iFjKKTN8e6NET zzY=xBc}3y^noMAuDv2qNW8?rP(}x5Zg5*-9CXoP3u{8Vrc{dq&WY=Zg{d36EYY_s1^8}=5v#5-51M&f)}BG2!`Bqyq04p zqSqAsA=Uz=&HHBjTDMe##jgqME=#|Pu(PaYIoG>2CoyCnWvOD` zVzH((u3ZgHsVuXj(V2Y(9Q@-~HY@vz@^iRBZQe&@6O{-N@XV0ZFr z05=abxd_SL`G}!QKPftPnlnovS$#NbB0onl;c0NM^xPz)-sL@O%e7cI2L!QL#~S1p z$SnK9|D&#Z5W7x1nDZ*xm#zBtBSUM59Q!T;H{wQ4-KnRXJ>zgI6ik8wD2YB`m{orG z?h)K8bTS=9u0>u{?89(*NLymoW z94W-yQr`-BA6xVK>9hE(fDq3!APHMOSup`tEI57bOBV&>?N9c%+`7!p+G>J9(^mIr z#>jVsPGqCpu=ewlg84Y4C|_DDj1Tixjm1sKXH&C7`S?4Gki+UEPe~=lk1wZ5`pGOa zvUXma*^}ORtG)_e15Rq0j4vBJ3vA>Q;_1fcX;|HO2S5hurLOv| zT#Qh(WwOzpr(YIJrqt6=?S`X}{mS+T2S|K-w62#`)ulUjDBDY~&Hp`~YJ>pav0e z`T(!;+`o-@W2UpXj8E_S28yK=EktfZdjJ^&i2#YfDwe4vi(Y>bbNK36fcu+`p|4b3 z>9CLF*R=<1xNil_Vev{<5S7xAJ4>X@kA}VeO0gv60SMcn2&xIjYZ*#khfjJ8YE9=K z;7Yr8D^}tb;_bAn>(2_G{dEbDn(&xc)$?O<&CrC!F6-EJtR!-_AO1Jjgk5-~&&Ua* zm90OMKFJvH3B{9@@k!D#8Rwl?rxIUgzgjK3D&4y+fY zDh3Z@uUqJv(uX&Ts&}T6nQo-PLZKCB3w!96JYFKMmNCYI-T`XbIB;lq-<>Yyb$-l} z%G=xlNBD)4;T!;Eygs#tH?-_~k400XI8rv=aw z07*Cy-;kTRyr_;vd^~0yE?IygxFQov(oCd#^2ULJlKgG~4+8{J}W#4v&h|;9m8epb9g|1_k641B59ok$?x<^3uiJ z^SUsz@%6DLJwe#%XEhuSqP=XJQ;XtI#a5Ei8VE(44kN!!Kz4b=i2=baIzZ3CuQUae z$=4(hliZ3dMhCzY@!2ACOvr)6yl7(D{J2f7Y~HnaMbm@97urw%RB>TLUOmpJ0UCKB zp_6mXQ*7!De-6M0NuA!Gfib-*7;Tl(cU0$$qUijBz0UribCOOF9DNM#_Z!>e4-{jq z@cWzDr0*e4A#7FJzI9PtJZAb<(FKE1HFa`uvu?@DD7fv(3xLhVDmqaBf9}zJ4sKJz zN6}$4gw7&B1%q^Ni><*h4eB=Bac3PPC$^Z;4*}k%d+WqjN{yU+CTB+Ig`Rl%^K!9! zi-5yeIEBs6UmPfOITDdHD4zkWAPC4hCSgf3sP>C-#FbSlu+S_>JBn9`!{Y(C0fa?- z7mAS%CV&jYscJ!1K_;Jt6^g7^pgZS*$JX%98mi*a@orb=#TVIAuX&g^U1u-ZyQNM) zCw4b*psGP&$OUI4Pn~j{?-NjDIco!v__EC|jzxtgh9}qNK5b)j) zh>KcI>SCY745x7u59T_C2^6G|Ae3^QuG>qudf}OS1o3ZH{F9>GIRhL%q^3rVK4;m< zTpEBc3HNBbo}Zq|!4Ub+2k?2p3m9?m(T2wgd1vsJ@>Q^h3r=^_Qy(Y=Fyao$*uGhr zx&SQ?Ut2SUou^P=sCr9~@A zV*sj)7si@nlk%cRNG=sQ4KMaQj(0--Z4rSoNo!|TA z)U(X5&NZv3(-(8ofG+q8#QA(OkywD0UA|+Z-~<4N{Ki=+FH=|tDw?7r)bkC*rTSX} z$r>7uR!{_C@EHy2*BVzzJrYG@;NOUeiGzx}&1^1V-)+m0@`P~Y0ppIa03|ApYOmv$ zljopse&JTgY87??288JXk$0Pa0Fq!S1f8!BuR*f@6-)p)(3hFVFC3S|E(SES^u-vz zMDhrD=B!dcWfgU5g})g{7IJR7f#^VMizQWH~C@yAQ8 zaStUx=6Gb-kd*w(dAL=R&Gk!uz)PV3D}d)-=A&m2B1G6 zs+9nC7@Y_yBqxIAcVSTAD#e)sr&J8EKYb;`U)aYrs6RasHfy`D+6G@cq&ETe47BNA zm#ZFvCT2qu99I9$?55t;vyuOC+Cz9 z-u%A?lWu4Ds|2pO%4$pi_>u+0wHw5AbniJn>HfoAa!x^(e~=Y7~DaLD}2e=FKzU z3$UP3hK+taK%OZ`Pogflr0xQ)mk-+%U`&|7Gf`%}@Y^Y+j(I>W20scB#rEC_8ipkU@_oReIG4_y?Q#yhK#1mFV5d0mDsuR2uzltlrLn9ELq=fK70{`qTh<)!hDK zU8oT|v)(iS&8+X|HdbUo-3cEllwwCWlORgoY#47v4x7P%q^&#G1xhnpHKtbNw>AZ} zl{kq=U-^S7ppiJzQV{rsGwAkiqdB4ACry9ySHm`keYQL|HyscQrZ?Rbt-pbc1vZ|bMCknpG9+aPdce(fLnB0)ks)cnB`P)L{Xf1)ex z9y}k6#(itqx!vv_)ZwHr+nrxQ zv=3whpo}t(VYj-_&6g&~h$qM1s%5@SgZd{j2wfM$$yXIr_oL+m*pq)`s3F&cxQi(J zs=ygD3-$HX=Ga&7-j;g|)*U7v`oZdeXE*T zTpp@`nfg9pOqlPWnh+c>V~zbJ7wZ#2<6NbbNEM20fLMTiK*<$&5hnCWf&k_streB! z{-Gg*;C+1|Uxac#mZ07b$CDtJg@U3E?i6Xm?{lsPon+%2p?eDCJve^}4!J*o`e6MV zw5kdL`D*qMbcR3=A(?Xc)%z!M9Ux$qWtr^5BDdw*r)hcs=Zl3=;_=jumUBTPvXKJP zq>y6NRjoscV?~Ej@z3R05WVDwoq{%XYT8NeS@At-bPJP^w8KD}!7eQtX75)P+D z3HDf#4S_bAz(pm1Mv0c_?HU5Huil79Ij;RX4;4pfKVDvZiwZ2E*aV1wwDI6+Ed<=W9;e$Bith3t%ind-euCo1 zPWThQM(PycoVayCnP6ajul4|tE@ISZYV9B3YpLmtM_?*>rR`zx2Pq(@7{H(H0R59_ zy%Rs#Wd?Yh6Kz~R%leDoD~2nqKYDK03Qu0CrAa*C_oU{YSyqFYnP?2RzAbt4r}12oH2>VNb}A%oqtw@1r9H_sU&6~oBK1WPkPTvpw-SaMvk&idV4YCZY1F{^#0K+Yk9 z`@YuIERAIVJ@<*^rH!5e1MzoTsKFmt623rgc&hRi3|*%~ZICE~>D+Q7CFu{t0t$_- zpSs3eIO#;Bs=h%pKPRu0h_yzrf+Ig-oShq3c!$IrkhNt&DKZL1$cOsR2hQ9hz>e}^ zJ_{&z_Oaz4-^gJJ3PYOqS1Ipb>R~UoTprCa-l*fcNj(pW@^djzZiRo;M{vVdEYfDumivE&hcqB?v0m*Mf$vJ=h9Qw{Ir*F3?B2ZN)?680OY(&?uC7Vx$ zO%Ldtz@CsS4U>~`e=la!DvgSh{zN{q2gN0L8@%9S;dDSP2zQq);i+d|5&q7h31;7s&P$tGgt+74(7cCYMr*nYYVh&!SW@yUlp zUq+kft?+259FkF31wRB`RZhPn?m}nq1tH1v3pr#^vW%fN_fTb>?@n&IPpxaic$LCv zOv8Zu40Id1eVYf~w>Oz)vg%N)aiC$y-*Bi(p#To3_9oyR=?p(I$V{Y&cRZ7Qz90Au zbf%yCd2ercx+rat@%h1T4bZ(n)t?u4d!dME8>jmTT@>ez|FFUtR3VJljJVqVHGx6` zL5`z7^gIV6nfeMf@rw>X$e#cbp|h7a6^;3_32PULdv+Pkr>$}!a+I^QP7cMqbJ%SR zw>xSB-K5ylHz87L^}DMSGE47EDSpWN8+iPUcv0p1_Ye8SqVJf?OfhlA!Mhd;%fBZ= zh{%DQ5YLmEvblNtRCrsb{XnJpr?;-Ic!!{Ep9`uX07&+;d{j(`UsD%1wuB}=uW0YM z1F4(NOXkl0DPSeJ$;eWiIRJ~!2^U!X7-JE zU0NeT@#A{r*Z}ArzVV#S%%PI}`;v{KbvnQ67uvE2O>*JWCco7_Ktf6I4>J?8&PrzoZJHP4{5}2wWDXU4CgnXKdwPhu^06JqtNPkP6cDE6M?} z8Ed^r#beid)F;M!6n}ta0a+HtNsSaItC#TGy^f>Aiw_oT$9fdR8mOAvXMp}QQ5D4X z-hwzT z{a-jG+Y`t@z_A=kX0h3y#MuzN3#L}@!3#4eTdl80(C%Eqlg}+fgBNck)d$HDwO`%! zQxH$`*C1zEbmgaYS&b~i5R>Zpi@31Uk$Zlm46Qac&`5IkIKG+rt^wI+ZLld>SV@M zU}d8{jQwCStgcM?^{DA1>e&V4HPGsLB|l=|@md%JkYqx|9f#sdp!ir)?nGU@BI2XG zni%s*&g0Hp@pn`Piu{`tTfqlzuDu{1oR>DYkjA=AW;!_GfUfky7{4ChH<_ICwpRA& zj04o7-&IFZ_?fJntbfr-2v|xtrPeYl6)bO8#Re;@_XF%HY`Omj(Foi2#Cnj^SDT>Mh~|R69c17D1YB8oU~>?FHN>Wm zHSE;1s<`ZYOY74ClmB(`+yPlluNcq(0qa7QXS?g08O=Bw>u)A+Q@@7#h3vCCa82|FUm=9}-O*r@!=gnx zgZE-OrxuWlNarp4(Ygx4H<<+KBXF8nMK^5nDdzlB+d4GSf_`R(dy+3caGaz42vg|h zHu~D7HWcO`JCLEir&?iv7{;w!%M(gsx?0aq7YK^^)H2}@H}V^ZC7of6Q|4>mcCA9K zm;5f*o#fi0MaMlZX7;8MC?f`JQz)7=Q~@|F^2MG9sP7~%PjClSe!$Ac36D2i6A3|N zOwD~OQPjB3?s=1ga){s>ZX)NjIOwOI`8}b~*woL{opHR)rn(H(V6i1DpeWlLe?%4{ zxHk5>NcN5!%<_|0QVPI)gqv}K?_~P>lqTRZ&Jf2+To@+a31EoFG%X7!8QjFa@d>)6I8aLJw7ok6HifGD>R%C?ytoc_21e2xW3qg7jrPpF{v3+114Z0 z>v<0jPF@Kj6x(_*hbO=@2aqoWzQ6fovU|9lIkFos!1qySLYNy+yV&@$1kmb4sV_sO zSzob+(FgAHb^I0u5w&Z@7b4HH?E*aBqn$7lbdK&T%D8U+gfA@Jms#4g*fXrmpTrS+ zxdgyEpFd-8@lm0BbY2@OoWy(ZT!Ym-47V8b_fn4Z9QlUQ289RceV}sVcl2V&8kA(3 z`mA7ymF{BPfH4l==(HW31@>7fr+Hp)VZdRNjNLOChK(*asUL%X45x(u;Sz-Wn{~gh z{C?z*tNq=9UWLe146yAS!+#Sh+BO4h^yk)HOQiC!J*P=4zZZ}w0Rd!Je9Tmd-qkH>4X3dj7Rk1>16-bK)jfQiB4J-RNbQFh>!q0M0#OjKH(@~E(e z1#&IzqL0STMTQI`A=8RjC+$kax5P-|rpz#|I7sVs^PVpHLj zaP^%V@q=Yj1PBBEzBR6~n>uSLiaU)D+j=O5;nYzjF>)?tF$Xxcc70XZS?vmq6s;ql z^{!6nrvzPk@-3g(aTgHy%llbv>j9LJjjgvqqTd0i5geoX6KjJo zQP=RW!h{`@Y53HONcZlhLyG6(Tf1K`0w5|) z{1Z{~O_C-b!ylei4|B;BTaJXf5GI_WXwx1$`WkeS@{TktBLD@nl;U-BCLo}Zc&Kya zc!>C_(D2Vqvse{$$8w(t?+I3Vi&maWg`83EJU)U>0y9e>q`ZCCOrQ^%e|#YP=hi{6)j;AEs6g%tIm?fd z&J-36^(7=B%I8GrPPj5-(d^>C9P&G%1?(Q6aiC_!`_+ywr=0Jpw_U_*k%s11H zr~M-Kl(3OZUgds`JP-Op>HAb)uEL!2qaGL5^l6`Ug793itSi?TT3G!i&?oWvl`KIU zW&xtJk!~rRy*`5QK#J2|R2zHIQT)P<-em8ZHJS(@1=z9$LU)HNo5c&!8LFnPY=r_{ z@=B`tCR<7UOU-re+D5TpVQS&U_*pQJF++Pj!xV~1Gb4xiHz%R3VU@j%CP z4L;DHx9-_Wk+*v`28n^M4ng>aK`mG6iS)XAOgZSnWHLxEB0%9bt2h0wpH#K}-bB!% zua&BQ!U;s$0)R!gBIKQNzBG11BVJs4rwL5_38FbbjA8}-fu7~A^|-nIWS;6ip&>=$ zQ%~Pga7f~1!;bOeYboeh0^=CiACY(Y2D!SCtL z{Vq1r$4^nCs$Z>%zU$mi|GJa1gB#l}5#dY4cAdn}Q*!Uz7Zx)B8p{S*5{XBEj>#bc zhnfJLqS0?oLzJZ#hd&YdD^0k{;Q)~R0der5?y)-=Ea!*?_oQj7_+;MB+IUKXYRRE1 zfJNJ9h0%UcjycFXq}l1N?v(C<9Rn~>!gu+s(EUY#StQqw8nOuX}92%!z+_S{@@q;qUfgJl+!w zENM#LKwHctP4+T~YoH?6e-5E}WfXqS;+`L+E(f&&=s(Le?LmbGnZ8B#MSgO4HLrlm zA|iXnLn>FD02wLizUA(OXndyZ*OR+5{$ZS!j3L=hC193d^C7q!aTHRHZ8CyeEbc!N z(hqG29=WUVq0K<&jHW_wU?lTkNACnR(VL^iXoXmli*%f529atm_u+# zE`Wid@P~ZmZ}nl1T1+uZ1r!$ePLkCrO5m|416^Vifm>3(K$3MVRQVp$Mx^bR{_8tX zl{J)%3;0k`=7H7~2nhksB=SK1QFMh*=JO%N^aNNZlTCSht5H>PkS9!g=l z*Q&x;3O;JZr#XHyd4uXtmZG)FexgwRl89SYr+q-(`T?@>y3o~!Z%h$T+GAUHN;se( z=FBIhr@(>J_L$W@nLm7h&{RO|LkKYkSL*LSy7U99t zN4Q~91K7D)U>+SWWfWRpM-u~x^5m)~T6)Z%ZVaxMFpx_jfNI+2@ZHuPeDyXc5>vQ* zQ$b|P_`G&or#jrIBj9lZ4GlmX&Fg$j4wBaX&s_msi5f3J)&jYDM>G$n0_mO4rrae^ zqB@A!rtv|YfB9EA+F`3cP=UikVbxW)dl~`YmsR1UJG`AoP{U(k4#AIJGKx-vo-pjI zZNF7suppz{$NB)G1s$jvj_xvlLGtPbWJ@5q~KxeGY1HmPQtfWufh0KJuJwI$%K{b!zc8=fieBO>0t{RIQexi2LIp$v0sfov zv`=DlE)&g>g_h^(od!`<2dCX2?0$je!aG-51SX>&&d|-7O6^lUK*`L_50HpNEAt7M za0qVGEj9L1TV&z_fF6AKPT?$PE9~NEcMA~z5_kwoj&Be#$Ev4aXoVf}8_bnE(9)14 z;6Jt@bfu5Ay385l8q<_$|^$P{e z?L8n4k0;iGNFwY4no~n#UH<;71Qf4fv7;ncYW+2V8zVu(rcCId4-r0WR2Oh^BQ}P>u4svFJZZt z*aE~~4L05T_gkk6e-m=UMW1Q>dizCY?k3E<9CFEEkN`JV z)mBB(JXHEZTB!A_A~Mx{@dvlqwWeAvc1u4|29S?}E2m@_WEPiwoY z0Py&<9|FiZpN@`l&jYk|l9RRHnb}XpaO;acC6k!SZ9tf|0%hGQ_n!mF4Xknkg33TF zWS;`-@zq}OF=Pclzr7uR!Xi)-=@z54vFT4M(6%U^+vtq(&pV>YFHxu3y)cR7x6$Wx zO5Mr;U2n^|uf-cERq#zF(4&jL)kC_Y6LN(gD|P=?0d_b$*G)R$Bj_BROAsjs?t#4J z*RMG%H+h!*ltIsyp{_zgAe-Rs1Q#ffVqnnk^61hJ4;k4YoH9X&u+J!1V6C~&#=MUm zF`h{3^LNz(9!<*H%#mH&9n)8#M?%Buw$oZVg z1d_Oe9eC`2s+U4CyA-SabkV=i;!g52+?lhDn=B9t$n_1iPm&6A1MGm44t& z8m>HxIl&~{2U>9IsZWDz!Bio7%asMI>>~lJ43<|!a03UVjCgubPX>G|_8s5GgulJ7 z4}%Y44Q_CBXCIsi&YIg1gx@ti=pBLNEHErckac=Q@G4#A z4EqkmT}2|U;8!{bkOIZxq4VrHk2W5HxWhsMI>{C#S)9nH$(d6z>fiwpya6mF{OaI7 zg2(mNIerxr^{e{DTyG#s{n^P@Oq9Mt>Rd-!2(&StOFu5?RU9%WrhMb4Rwo>lOtyMW ziO!}-Z$pRF9*15&ABP(V1bv4YE3{F94hT@WUe2kd+LUxQfjfT-o7f0xQUekU6wvEZ zBNX>d>aE#+0THKAJX~48K}I<C&;9X}Z0Qd%#nVBj>0-Kwt(b~0xStWpbn z3MzfUntDAi=`pa6RUezths*+)e^&?^sI89vFyBt0W4ev`4@kVTe^QD<)QAEo3wF5~ zrVWRLu>MM)udh8m!4;m&8yO(U(Vz8QExu`($@oN+zjmzLLWbgdh`XQ#jcZ9 z*7y5I%3$CmJ``z6b_enxK6g^_5$ zI6zJ2EZIj`1bu!A8Zg$HY(OUD9LYe!V+3{>P1#$vqeG5TP^1*1&^6mJP@kCxnHPTZj3pBbC#cKh{-Tv)Ar%@EkuZMXVikIjDK121hzq9{z<_Ya&@6mrVZ=`8} z^L@{;b$FH=g_6Xdw~)BXN<&deBEScL7PWR=}l~t(zF8D$^xyHDc}3~^$2GKy2tBdY@l!6 zEQ{Hm5MZjPE3p&i!hQ<5F+lJIVsj4GJxL~g;9!6d82oOCDAX(`*6H8foDULc5+n=g z0#DvpG0EJ&H;8uA5}8%2D5-hIC*a1!ZDwb=LwG*WYmMw_mza3=<0=oN_|T%CC_z`; z3ITxp3Vv#cZX5C0Lv^^9W|W06{_|G61N<9e;o1!lF8> z*n_5mkr^n+f$Zt@L%bo=-gjc{K`3#aH?nreA zP@mTgJ^m5rO6AQ!O3d-|KzR%l-9R}F=ogS|KB|gF2Q)o-BONs*&)|!4qSe>j!aY{C zz$FFwYk`ZwYD686CTf*+4CG)B(Dy6_s5Q+~d~}~+?RHQ+ZC!J5?_jZPKJ@AdC{&2= zxkSlDVbdS);UKlRzSnc0qF>KX za(?qU6c||1C;Lx48Qz>yu>Fpvs_DH!+L+h(Xd&bcs?F%|_p1Rvb7a1Ono>N)|A$`q zgHuvO@Hdv4UuA6G0zuLg<%!Y1{7)DTQybhJFzE_2a(eZTV-i`vQjU~=X8ZR}V101Z z8I+;~Red-ToL?eaKl5DI>SBW@KGAfCk7YK|!(TxU)L(aB9Q@Z}++(cY87{%5HM!06 z0JtuM+gJjg?UC!Fk?(VW7@3W0T)Gx2v;^~*<%@TrO@ldqe!l@oC)FmdYPO zjh6PE7kO9Nuz{$7`+3;b2h@d$E-^5&xZ4!0)v`AF15Wt_5DspcVu4Imhs zF*e76iCzf0ACaGw0T@(-nZwveh?L)*yLtotgz3wIK3xmYgUnUI6AX^gu%gJ8pc0@D zXk&Rw-atnq_8gB^R?lv1pV0E=vK}Jz+nS2GLlfV1FKd*oXI0gi1N7DqV}2^R&l$=a zPZjJm_)|rwk7g5;mLh-9rG)c?A`3(~6H>_*R_~8M(MT1LTI%iXqG=5*?_k>peas%D zi9a6sHGIIGZ~RW$^8oc9ci?*u1aEysb^H2ecaXa=nkL^$cJBfWihN2>(qQfc#ZR*! z1jgf-9L%RN-KEF6F9i-CHkpFF9ua}sen{YR&$RmJPD@tTd=0Lq9i5-TQ^k~A} zJ^ca9`rxmHLRbc;!pDp=vRLb)HGBd<<%2LUup_O46z`y%7FMp1AmWC(4+SAA#F~$c z_Uf2vL;kd|v5!6sU+<{6#>(sQeNsU`C&$J$=csqaHX09XeeS_udD2iR?aoziqD{WnBbE+@0zV z97i*Nr;bV4!X<%461YbMNW2LJbTylpEbSap1uTxhOfstyoSlcPrJTvsyoO7iE!%&| zeu`gRnR>Rp!(vfOCah9h*Da;Ch~0ymQ2NZR0e!_=_a@%-B$ec}Fq`Gvp%*;dBD-CC zxFZno-aIY7nmMpI(CCt6ILFKozb-0{S||(5ClU+PFM<|9|@%2p127wKF;!m;wR$IJr zfchMTf)dN>_%A}y!Fz2h5lH?3L`>tesFW*lyz1o@&Jc4@hDdPba!9MjKAP7zP?Wla zVls2dBJ7wW(udEgV$8Qp*7>dq-A?l7I0IY2EX1)ANGoeF5&U6Q#5=QuCho9=DTv-C zT+qF=9SoxWq<+Y(1>n|H*D^Tll!5O4PVmKpw_YW~CZH9lpC9OzfC6n#0+=N3-r$>f zPsNaI>_algexo1K^UF~HH*^RUhn1sI1@iNozZU=tE2vby9zruECg8OCufSoFaYvbV ze8f3bFfXGEb}_|xH{JYf;(G8!`gC{50WLeFuxct`cX0} zj%yCMKGhZMOJNR>w>9L`3@hp*iZS+zh7>_3*V8WgC(()Wv+1(3@&{$DmZA>H(=^kG zet1cY%M9g<$j8rsZ8#P8x4bI%j|fDI%bru(ev ziz|t{+Q-c&{c?FMrZMD4TaRmG7giIWA$8@zo)uks8t=FXgkxL_xr0X3Azi zGKjiapM`~W0(dnL9&jCqdg#J)lpxr72t7W>O%ef&i@tL*aX^Fs&Ny;KdCAVWCQVyL zaTU~G2_8y6vsZd+uA*SEAh|9m7)#XNGTN1i4^`K=MFK}9mb()zYPHQm$wN=`ZMaEc zS(qJBu^*94KQfbjNz2;vkZf{%KIGW?`MuXZOUz$$bJOI#egU56U2AdTE$HCd_lmJJ zKsk@h`Y7984n~_=d1RU-WvVl)8sPav>*pIEd20>qDLv^pHGW zVxkc@sh6V!=ddZ`sR#1wkZix0Eut~*p66!;DS)){ps{<-pid*=2=8GNsJiYYI;CBZi3n^6Ps z-zM0ts_wA*O5+T1frR+yr@RwwD?^E_JDXPsO$^R{tTnU)U&iYRRtG(kf&Kx-{6Lqj z`Snhv>yYGtUUg+UtYzfJW-u$Z$^yAm$T-Wh16qtH-@G^;O@SB8urt<6Ku83cR&vrr z^~%!-SQUe8!o2zeMofQC3$xIkkwI-0aXv4AGGX@a6;#}pAQX_L;GiVFkmxZWz#F@q z22O%BYWMrVh)%hB;(lTVT&*40ySUL)##S_=5<=&*P9}*ji(30;MiNr~)E#$ui;)J{N!d2@@?kTdS9HZNIqR z4G4PSx@^Fy2GFH{z8xJbNrcqEC~f%CclQarI5QobOLK*XOAL~diFF25r&DnUq6S0u zmJE2&P|laMk*VwZpmRk~uqu=KtUu_ifO6Qzqb_!gx+qmgaoEi^Wl3iMDC>tA#uqe$%{4n zdKm>~uDNlF_TM{m?5ZZF1YhdX>1wObG;#x_E~kQ0bLL%QO@ikJ90pcLtf-@xIRbEc zRhk8Ee5n8wMvD?!hd!g3?>L7D%*1>O3ILQ8qIi(d@9y4Pn)<$PVB_xE?S1{8Zt*LE z@9v??p;N{^+K}Xjwn?mr6(qrjntq2=Te3?N6)}XWdMM#rTz^z0h;r^Hifv|T9<_O5=&CAwx5RtXq zvDT>jN+Kkz_^!BZkQygg!4bfFe*2$L9x@E}?J@94^Xx$&2sGsNO!XRZ+Rf*4X{TOa zqofeP=?0U+7p_0SdjwyhSLi4;Tb2A)ymlS3Y+4IS9aKG(hX(4j=>-Nr*qadEMa13H zu>72Uf69%()-0=AZD>5-6;uIZpqjvTWmJCe(bizD1CbIR+zKWmP6hM@e;+OvZR_ex zXAxBj)M5BMBNj4(M4xiZZ`UL2eqtVZru;bhxZJ4>56Gj(15*dMmPg33ud{t z>#0l@?IY#30MCNJFW#o13}V)QZCmt3yy^|J^kWhG94gulgJYQV`v6bKVogkN-imp> zzlg1iplUTg-@kVv9UyBR3&EU?F>9rLvX2;A@mBfL0p(*4!p{KJN$(}RWA5=$R8Wb3 zrbFc`K4>dGzIT|_zq%-5Jq1H&TDpu0f%W$Zek9YI=yx3$;6h^+uKP>!T*#~h#4>J| zR?d9Ex#ZN}k@kPeL6@Q;KPYCd@ABgO1B$zyzn3O;;DSGpZ8k;E8MqE=44N%3z!d@b z2VC%qKh8sz@GO68U8yM0~!$geB^$*OxJdR zC_gv1%WZom75px%{++3bgBxD1%retbhGUQ#d{Ws_^$~>?6{ssiqC6mBNZ7fh!i+XlT0kRP%s!$KEIxLTg@( ziG#7A+}|MyHKvcYU>{)P2Y+Fsy;+UoiNPHoZJ=T?etO*vl+p;dI!=Lw5xH8-=;m1> zI~)Z)?a+EF4Z_nC7O+RuyO5!0+cgVw>KsHo9t57@y!wj%vz7h*IAOotGNt#~djii; z0P7g|RpP<-P8bOE&88r5(z{DbVa_WRYc0c`Qb~Wh4>&!&$;nugd-UY@h&ImnBb#qp zAIh@cu_vzkK4&n({UOjJ2U)|bm%QARvQ-Ds7cX-=HIy5Oy(LiEf=RYM^bzRHTnV-w zYjw~1jk<%HSHiJx9KE!(IN|+83Iy77Zi2$E z@X7RoV1V8gGx}a?K|kS+OTa)CXV#W|2H%0UpbO@SfMW)Rgd`8l(J5dZ0E*8o*esL3 zI0U`tuJD~2|JKa72C+)PWJxRtd+q}=Z1%RfPTjnmc|x{$5K)Y!_K!?-^iyBckboJyd~FT>+W6G36t!OwTeK zy6h~v`9B3t#)d~w8>u|TpXQe#=+ zbzJiUAqZ%Y5?kJxI=mWLP=);Eb z2+T(%G=Y6_!57en5y=IJ&cROa^@oHS%dUxGl1uJMy@z@e6ri7ALJ0Q7{#P*}R6Ref zX&&MFHVeDXpr3;|M&sX$uzz9}f0w9W1-frNWBwJu-BQBI1jUhOge$>RTm?8AL4i=3 z5pYgR(ULeZ=qUjhX^y6j?W-NuWl*iqo?Aj7lL)1{;0?PuK12BQ5llIoAI-ai1_oNe z1gjZTPJaHG2uO4!g*D|l&~O1v~0(ADpUnug- z`weTUs(mp5^qhiiU#?A>RFMyzXNVYlnE(@BxV1kprG z@!2yIW=JWlDee=0OK>>ip2+Rr#R0fZIN?9*kOAFqOZN=ajhOl@+#@#OXlWh$^mlsK z!Bo!SVCJJun+6pNA2eh@-U<8$!A9qP7a~XdzJj_b7frk`-glK|^g~FBW&{I)6QmIA zOrRDFWm6|FPz-{ztpEc?c74Hp0C+J=xr+-B9C5|qKf%Qtert|+0*D=fbppnorL3j7s!XnVOy~-mUS}f|=7T}w&s!hvd+yIa@l}Al=7-j- z4(AMPpW0F)m8hzYvLc<5N_)~&0BgYY+Gr4uNb9{L&Og7!x=~lsi;AVv0~JPi1=J`N zJ!{y*>ajA0HbzOtfK;53H>~Q$pP`WqIB|qUr_i_H%@lFuLHU`ItGUlinJ(akHQm<| zHWos(Qof2CkKD}F0{i3?*9AA6yXl<2rKQV#@2oAc*G0)y4}1Q zi8F4bDBQ0A;)Op0X?v=7f7z>yLOjcU%#{EIaNq@|CIYM`tFbo?)I8PeX6?NCk%;Ka zsqC$^zYoZpBzAwWGMY0HyuglL46jWlYQQApF3)R^-qAob}YRE z6;&P}vi2JkcHresk_s&Y77Ogs3GVfQJ0)$i4^jfup}n}MP;73+aHTt@Re|C*qS{bj zN6ylrp3aqLjJfoNyPfP*iZSwqg8);bPjLsBn8IKlj^S%tBP%+yK@?R5W`x*LL!i!|TN!XF_C%nm3LoD1Ur2C2;fV||= zQuVh51=jwX4zqvARaU29%yi#c;N+0>JBW%S6^~b@7dtz!PAe zSk1G)4T1NfT^BxU$Iig=m)B>0UFZ6xv(Qh z`(^|y!VFVD&>iDQ744$yrRM8-;=%II^tb@H&9VU#d>5jOfBjNgaZ33)x8w(ZpHBhuu}vQ3ei)w$GBeTcWXDL zV21H&{MnR%s~X*9OZuiGpP1D zg$pg+i3eE?Gl@^KHWFSMfQO5 zgDCb|z)3Lyt_|32VVKwu+4X*DL2Z^9*l{sNDyGQxQ6POQ#~I#;11=MS60i5;%Kk_n zyMAqip@m%WOp6cV#Tk`vFL5e8-iv0K)8O8wUC{*R<6|`MO9H9+Ob&_bU?1+~;C^Xa z_et7*Z_C1`})&>1vTe81mYk`mEI*uy;J*&WrO-=0SXH@H=~f$FD>6;>6%UxGMS_x=&(K}x>2qo3 zq-jh!Kt1togsU|Gfc34|cW{^q=&<1P7Hm;Vr|Srobo1sSmHZJOBFI>M!N&yiI&xAR;pPT=xlJ{Cd z0r-x%R>y$vsB~ zCAG`uo={p_dR~30%m`Mqyd7&y{C=uFa8yUYU*89@7mnx&bHi^KAzx=)KB5aD_7ena z5G$VM+{Q29sz&U1`4HWRJ$yF)q$rRHuH$dgY*5BVd0TO^K0yZ_>0u(2DnKXq=OITe zB9AmGhVG*QVa^|@9rSmU1a88CR^DYn_d=41f-YDKY|2OD5o#+7S@g=!=Le*w^M#zn z8K8x~bk?Z)Zm?_B^K}V1ORrSIM`k7f z??f{4J+0}_r@dSN>sSzT+8~9sp=wBXNvmCdfzJ-HJ-LYDG3LdL2bM(AVM3yIbDY`k`q~S7N>+M{;}3AXIpA28pO4Tp4gh)mr`Y!M)b6vfe4S4Y zVo2Aksu-2VI`ZyR0|gXnbP;$Jcfs~1&OetXc==>mMw*NDRwK=EC$>^h7C>**Blab~ zJkE;tmMFl82E;)h2Y^Ue-I$@FIOgK!^zvd1&)V&%4fKV~Q@sbz4l3&bsHosWrrk>~ zUJQ1!bcm#D-Uj{`xm~kaWmc((j@tHB@6YrjxOpY%KbEd*J5e=^z7oA$3W^AVbkIAc zDn*da)1OV|tTmIEL=oXHU)jY&uTgMI?pvJK%z6P%cddcJ!9k2ZvI$K~tH;ND4e~AK z&96$$v|afH(Q5}!X-FUFCY_B|33+soZt45Xo|il0s(VF4ekHe8Hchbe5gsJ`Mm8A` zrncnLWnHmZE9LR~xs-eQ^jUeP9Z)HezC`YF>%k08hyHjw-gG09{cVpm8z{mj{f|H3 zm0l%WtAd(-slUYB*T%NHIa{|dW98qj`u06(kbdiMpU?5|`0eZsiO{IFK(Wp9Ay?HK|{vJ2WHVwbIorrpm8aVOgo7S+vvzixf|G_a$h*nrzwnvufs2M$y% zBxg`LZl71&Gi5KjLziYhS^}OqywrPm-Uki&g<{kV#H0@O$f9uLpx(U3h=GoE`&fxD z)!YHyIZ^eMyzqx>MjWqD;Dd^P+mo&MJ`X8`T!7z+GiHzUCURt;-MRN}@K)snV~hZ*3-ozzk5A=6X%E0fs;H2%$5FT!G4X-&cJUaWI`KTleLW}MLsvIG(8;l zPvhJk4*e5)?Bn}dQKcS6-9A@qG~{nEN@2K0m}*^}I>vb?$!pqCgQ%eOyP4x8(ytGb(wd zg1Y=JnwbF0d*^fY@a=v|*(vIW2OC*5>Bk6I+YbaK%_?cKvsvSrW1Z7%+Xxx) z;j-{rPlCXv6u?{9i72x8!Or*9f84Wn8i1#LxfE+a4s7JRlJ?d&b&lQNye~~8={{c3 zC6hJ(q0xz2E)GMFx=`(#$}OQnh|)1y;-twH?l0w|3DlEPTlo^32XPSXuiOLfEMF*x zf?cRd9LxIKUHS~**(eOI5IM>)Xv%7XM_CUFjh3E@F}|0m#Kq{%H>Q~{8=zf9L_sa- zc`9?o(D?5q^e+&YS)dtKY3jI>{YlT!b`4?a6P0V`@_SK?p^Ei0w8Cj^;1+-s>S~ny zdyao6%{6lD(=d)UqUzp8EKM{Ye<$21HzQ-8wJqPL$N1Y1DE*{PIXOEvhEJdSH`oz9 zw>E|hMd?RLuF0Ed-?RG056G$L)Au$FmVP^>GL}I5y3ZBSn3q`~*U6uAd3UdtiXxdq ziSK#hg`ZZFfZY3)Z8VQW-B`RS!u6h4+u=s3ovZ*Cd9uO2BI|84A1Z7}fQS}6af@w_ z-1DdJu(w*gj~esec7He?F8Qi^yiGtce6iPt_rerJ_j1pp*+bHS0^|R8Ja4ZiMH@d|7X8qMaA}*UryiN|eVsTr)_jx5XDKY+26$W?%TP`cuJL zV9L+WDSQa1_uDiT3$AyHgR@Cnv2L{Sy@Bu#wEpF(Hr3*%XAsIddF#KH}<(CYuXc)HXO1t zFq)O)Yn?L+PHA-1tRU^c{l=VBaj9IIGUE=Fw-C?rlod_#djjxrCE1NkIyVL|izx-d zzKM3B(X&*A{FF~0`jj>D-YWm`!sT(P^!Lusm(1#_KR4ZnXZl?C3&(?T zuD|z;Y`@0vcfeA{^M>^)`gP&p)JY*Qz>QWM`Dck4+n$CW9RqH8f97~W_F<@L&)`lO zNd^z`8S9-C+^*}WUZq>>WKkws+b~c3dMyCfX_N=VrKR8Jd~mu%Kq|6NkpFiu&zksg znIF}uppd&MdpLz}AM(5G!L{w6|N6lrY0SiPmsBV>{v4_h=Hyiku;9Br8!#64gWV7% z#~we>@UijX^NpG7(Sl%S2R++&=;<-@(I9oXHa^ z=`}mBT1u}FWl?=dWYOGPfA7tF95NB%6BzBur(6_zVl-0D{^0Ed7$|Y4LKIz95BSzK zfyw07hfiiMj?5kv#rNUKfFnllg%&{Lyc?Qh%C%h`VL=JYFo4RxOy64B-vx(%0HEdf zK~Qr56x1PV`>jfht^~da^OP_HNj%RZzSiJZK}|3vas}mqLTk?MF^fGI5{t{IxSUF5 zU^YUswjrr(56eHteJ}{yGdZg#f^f799*!FNF4>wtV+>Ouexmmqzm0EMlx(qLdUpqWY zP6hY-QOWsdp0=}WBCb8q1QgOISX*f&7&M|MuHj0$38!F_2$aT=Hukt#^qt$sJy18w zQ)zz_vx|+tN1VWZmVn3OOe{DJK$`q$_RE_r%{a_9?@0x?ds5Ep6trxnL34QObN+Tl z`B-Lnuq7sw6dWC*bU947i4p$hKnB%0yb4i};sXY_hE9hc5xzD1Kz@VMxxXnMTEcl4 zLy`+m^=i|?8J<5+-BFD8B|kN1r>^g(H(6wWRzM?pvSnPttR2$jJALi_t{3-b3)m3! zc<{sYT7}}2s4b+;gJ<)m=9dSBr|>XedO3Pk+e&K(nh9_=ijUc>K)UY=t2*aC-0T@Y zdws_$=Vif*4%?_|Xvs5%7mcK&(CvP+DWhWQ7X?W9gHc<)I!|Es3Ov2PyJ^Z8$x;Bj zqzQOsx(f2;aup|L5_0?=uT~`lx6kLsg5dG*H(JGrPJ6!p-Y~NcVnGP2;gNdvfhVp` zdxZO+n_XG|1?mUULv%i(O8S-ND5LaC^-(q+Y=-*z_D%WvQP7*Cv*8fMD6OmpM8rSkPw>Jh*MH)4gBh@O9a|jZC#j@a zEqGKvtbG%@((g!p#NvS^BV(cOP0c=3eHd~GJ%c4@T8`9T! z{zT{U;rZQL{OwzmKHcrrxI{N~DNPHU8aC~TGZQfoeWGngwO>O9!BRUx1Rnw0j1wv7Ia!x%s z_{a~k9SV<^2U~!T!k;6|Hb&NIrTV9O3&xKEa5HA4RKaAVfzeLHIKK9BZTfo9iZrPW|qhwCKcI+ z_8Qc4@iv(f6!hkbO005%s!7qSbOX~7_5{0cl)5-yv=NK}&O`oSWWjXn814Hd{;}YB zcTm*Bi7MsT$9exEi2baWaZL&R=LFxoL?HlB%-{Z{seXGj@TcrDp!j;dNM!VwJn6#B z-0QiJkImc6eF=Ba35ig-!$VhC%8QE3NQO@Gxx~oez#{Dn=b2c0fhK$5kS%+9ScTDA zl4pM2zN6iHXrHS2oShZn(m<04y?WAT^#M=j0crg?Vg`AWB@lz)21kpF!$(Um*|w+SzGQV!W@)p zPLZgsS$T)jf6`m72pjtV>V=cwGb`V!?)lWzKV}bbTt?id!59><_@Ec_u`feRz{j6g z3wO2N0Jicf&)!XjJUOg1!Gj*759OCNWN{DFb`BmJDm-vH*Wdu%M>y8q%A#<;S9{b2 zm3}2?JG;@!nwH=9-#!Ku&7L#uRJzHhck|6w$B{Sb=V-F&xeY3>KYtENN0SgFfiId~ zKNpX%`}IUauwKS`C_(xQe!F?GHX#Auu~@S_)U)4WMQc7tGoSFmZp*&-Yv~?8tZEe) zfNau7TYC}boOP-3bs&v3UTqB!Kx={}!0 z5gfBZeclt-pl2+ctNxhXkGS}pLS8NqLlMFCUpw#0_D~}r%=}V3Vky}~!{Cvu#ldm{ z>}+J8fNd`RM53jTVPAIOgG9RA_1ZqR`ccq}RY8Ao6jt=d5pw7g;v{u?wqW)j9eZ z^PfZ3-@vyfOOjUl?`nnO97#N%`m?PHXbu_dI*albf{pc8wE9gRE@5GR5l2gMxn4@T z5Z&qXQVSIN<2bcO6jx+eWt*NiI(v?rF_p&O{b!oMjV2r(^WvYF*O63`#*MAdmmcde zCyg5bxv$4Eo}b87!`C{%87E0TI@rt$|Hcj6@A>jLr>6L!2;FPnVEO4Q{k0}%$`oSX zB5$DvQ(kc<9-eS#FXurCj_M459#(wa1>3z{iNCmft7C}BS(z8|KBo<-sB==BCzrZ& zp|k#RztHXJ8D34h>?lz%PUW-XccH5rS#UUu@4E<;Z6kbA02c=q9pd+KZB9JA!N_8} zn&zG#SIoJDHH<0#5M@gDA%5}s<}b^!IYoc0rElpt@;in2%`;=y5|&eBCG$DtG@HJS z;^_yClg*)2J)XPJiE`&eFB7@vP*TVcG4qPHju&sLW(cR$dAi~1DqD8BfrR!s3|lnD zX7!jtk>^zF5$|z|+h%JlM5t&NWpH^mjB&M_I1v1!O^z2(dP8o!?mGqOJBk9(L1>uH z<;~qcr!^wkeWlM@@otwhgtFDGw(ihBmwFT=g;X=)41Bn=ifhANZaayqBDWh~Lw@v)SNIqKK)yAZ|Y4gCU`gK+zPa5&#i(S89WHye-JdMcv`k>0+;`1lXH|3Zr2 z(L0>vu^I&CZDrD&5PPhJP9MG|1M?QRcwH1vuDslM=T`OmdfWPk$gRxtVWhBZl6OS~ ziQRnxnDLoLZNE3%^)+X2ZI8&yZ`PcrOLr@K99ofKQW!y_aLciGbsaLyi0Y3cJNVt{ zL5IE0@SdQ?Lh`a5IEuD4g3O;H9Z4n+Y{T+AFkfe*$ZFW(HOPD2mGjyc|G5|Jz#!O~ zM!|rObF=9@RtSY`wrl~Zz=7tq75*XxVXfltLWfDMC53Ez%Bn!`T0Uf^&e() zlp#bv-$P2T!z$Da9`t(en{HIT*BaU}e`oj(kV1Plw{HA6$2aG!5%1i=2`3YCx=gz+eJ=*gk49qVKh{wZXhz->RB{=zzjCmXxV|+U$+V^b#)V13$ zE4hZH{T$j#3g~&O_w#G1gx-7&y6?LY7@#$;DQmPz3I5qHWy@3hj88D`b`+6`p0lO| zsUE$XPo8>;d>laMEf_Z;!_J3!?QC--0_ zr@le_EP_)d4yktb1AN~l*iU@cpipYAGxSlDEIWxo?@T92yI$%58ZN)TzD>{c5cEhu zdW%5Wqd}E`=UlP@f)V^Z;AVpg+WhwQRkBrTwXTGgIfGN?RE6;Ax{ zwwj@YhJPf3GjMz3W~^*~m7n9!weLJshSKiQ*nUEerrKMdgsQ4_udyZ1fbpJa4G_%d zOfm|+;+N36iTo&wvHL4O|A-8mnUfA{&SQRKIfA-D1%>0^bzI;pQNeSDpe{AC{O-j* zak@AvOje_KbM|xM{D|k0O@7^_X&dr|Ir9CLleW?d_1SejkT6lee}Y4-MOvOK}&sgiQj?& zIW!4q<;11aQH4S1IeEG|Pm@X`T};K6nF2-T@}og$V;@L`I)kB0Ka+UWh=TZZeJWO# zjktZ^9eU(<>t3~1BiBjCoI|$Lw;+)ep|6pK}}2F3yeyXjT<_k<^iG${l}5H;&u%$ zp9>)ppvMFuso3LpE6aF26nPRj-p&RzW+gU<=5}P)^j0!XSxSt&lmYLE3 zM@5~eALY|HLNNxXoAk7)4btQSfNz@b=@X%jA>lGYItliD#{i&V79n+6ewR>D-`T|FmbYxfGy^eC84H$#!^f9;%D4b(pNI)jcaBtU7lp1{ns41Z{ zRm|*uw!eKf?KIfy-lh9$YY9c5?U)g?nUY&}4(K2UmDdjWnw>!u{G8t7QUiV$t<~Wi zKr`ZScte!)5x0?8H4!S_Ma=~PYem~=J_jj<9m<)oezGY#Ia#R9yiP!F!XvbqjIHAo zNW1cYg6aM8LWXE_TDdgo;oD%TmbM!(2X8R>pwTdxu%^z5vype?J1%_ZFjmrnavBSK zOVA1pOsh->X{iyPk&nNQ)Rl6Q4WBL(GTV&hY+#?WA>3)T}Am@0^ z_3=7%?>_{RIUat#!6SJ+92{X1xMQ~ujIfvY8*;>gbB(feuaR0o-4rjvWVxq>KPBYF zg3+-s2Bcr47l@&2Io4(+NPbvt`Q>UP)Gsqq(mY?=Q)Yfxu{m#OK{$NUY9OakcX|_) zvb{!Pf#dyNdofDlVcUN6%nI5}8zylEj%3THMkC3(h(fknNG59T{s7i9u=<}~Y zckF?}5%DeHn0Ay+m}eHA8cF4);oyUI5-e! zjntlOz@ra*A3@PqX1bR~1gAEP5rs=Le7!TU{AEU{55U6YxVNvAWQwoi`F;ru<1)dR zOgcT{<3alr*TEq(&k$c_47nX~XbWbPYiZ7c%BincrpidXd^h$rzUpy~eV#c!3PHKR zduuwc#GgFvUbIk*UrNr8y=V{e^i3}+2&!ES+d$!hhdVkN?_}QLlWogYc9$P~Iw9hA zcpdmZB*7@&0V76!spOCxz_)DpdgqYZemc4KP<+8Fm!&)TpG_q)Wx09^;Qd-`zWVpI zE1LXrur{;?_Z(@wU*cvk%lw(r_K9iL+c>FTg`7Znw9S&q4?V)}iy49jn@Py`J_v_{^^tXEy+Nod?N5>;C5Ao zS(>rj2?QjGO7s;hh!SMX3le(lcx?#SujV z5-J6UV8kja#gqKK!^$jr`{SRNPzaB$g|0nBy24Fq_ERtG@=vmeegM>NH8QB63l22V zlgV}8tbf7k+KCH*`?J|*I}RU*65>NM{+bBS;|R8gi9A?v-I>Xb#tFZZfE;sdech|F zBeTIm5ATyH#s-*v_?;`I3-^yyk9)8QgKoatZ`L6b7;$DGqCdT$k{2E)0Pem}wfNqk zwsDF>0dnHm>ecO`r#=XEl3Pwdkk1ob1Q9w_`8WtYSRW0>Y|ET$P7jr5w$7I>Y=^6% zcjRTN1P>UR_-Dw{<^wu+e^!MNnBh{be+u*rbb*&%q=3zn@4>-}au?heK^ca59rnv* zsoZ>T1h}TvRb7n7)B4oj)PA*LUhy6OM)s~kmo3e;P)cNtM6fXi+Mx`nPamqZVx33jp^c@FMws z6W$P7*Arz}G09Nz#Fw&T!d;?--fo`qDD3x()`_o{+3XPJ7=bYO6%iig?>O97kWc^z z;rz+?m4vWu1}MJR?K4u3;crE)pn@&3aU-4IlPUJ7nq}U;hieQf2uwM`2pU1AeY}1b z=aSQdpPooz>Nx7Vcj)(#yeWmw{gh)3jP_kD$)u&Cqk>b1e558So@?zZZ_N2{nfZ7c zd_r6aNSI^h zhEglIb;9~5_pp0*E09zul(nl$OzwJomp^C5BB_iQ@g=@`LJfwSE?dW2;@{|VwM-B? z&Y+N)f{C$T)_d^kFWu%E!~xt%2+WDHx_OY@e9tLX$l@Y5V1TJ!EDdo_iIC84t?_$&mTCp;V~X0V}nx zX~P}4A*93|PJw-nZ;g>v$^=UtTU1_B-L;TR-Tf$~b7{G$tXHx%E)3Fc4I zb7G8@L4TyUYfoOBe}Azop0L-U!T_O+@(H%0)pN8nuKTftfqE8@_L**{ zgLrt?8S%8CRrRVWF^8DQ8&Vf$J!VIPzQYS5wjWyD*5_R9)3J`@0!Z!w{iH&-)trfv_zzD zDWjXjzk{rURR_d$-)*vQfDP^`4!Oq;ub4FC>uEkymr1`}t>U3xwU<9GQggaV%z;va zM{8DV!-+>}%ba@vyxJ(~9W8p?bL%FSRS#_iNJ4_h(4zw9C!e&M_)Q|RPJe*%CA@qQ za4K7;f%8pfmk$h~-VwtjaCf>$zaC)z{m<`3+;34FUJnoQ-x9FF3~!pJ{o{Y}-^-JZ ze%)l;2#I5o`q_l(9-wUn%z5qj&xlg|6|>>LeuvG^5{t3fV>_jpF<-&}_~=Z28IdGi z>8b^t_4s{KNc`yy0A(*l0&ok%?%4~?rT)sQi$bMwZNY4N$_@jcoGmR`ct;hVo8%dY zJP}8j!d;(-dH^~Y1zXX-T;9*{_E$1_Oa0Sb4q};?f7+IJyM8Rc9~2{H=m+0f*mEp$ z}M-PEH#uacsKpWWiy7%pG4} zp!b|Oo2xAd_0wulug*E$H-+d;>%QQ$&ha9PT(GMFD89{ zh*D@5RzhG!I!n44`ul7bOAC;0up76K&gK<453?O})p>b(*!_A3EVjg{-lL2Xb`1Ce zv~;|fh;mB6JKFd1{WN=R;yE#k4j~|KXSMS!&{~ch8gtLOYWu0KOiCvY-#^6H$6Bgj zyf8U6Ufj$kU-wKxRu5tH8%K}pvsX#MgE_@<-_fkD>>z3Gm1NCopNgeY#z;AOuiqjK6bM#$ z>Fyi(&K8cnYaE*|FI^yFbq}T2-GCHR4o2Dm^uyV6xx?jc6qhdvs{sV|k~vS~eLAwp zovQDL`{gh@JDR_BnZ6g6tTUl8C?0A^*FWA0jaEQ2Kbc4Gsd26h+WW2|qL7|iv~c)t z%fT&wAl{S*J6MY2pA4F$+~gl%zUUvkmlt+m(F4Yt zreAoy`N=L17{pX^&F#*oQbz^HD9V+mW#1+FL4>1Byu;69kEsMEwh{3upE^;beXobW z>c_6_eEH^E#i=&5{vV-hv83lYfWaF6lX~UO8twt%7Fo7k&1w$-hD+SF1{Q#4F1sf+ zAV4?zWWGKYj5yuv^E(-4ZU1qO62k2hk#jz9h(h5&r_=Bd(2v&MmY{GS-JMO`zPNt-ym+A`?~g;>zrM=~%ujP)fF@v?7HF zIKFvk;_${BkgbR}>G-%u>c!RaBjYvAK=}`N;>qpf_(S<0rA)xmrQ4Z41%XMes=Sn$F=ACUU%}ew&8+VD=cUW^j{x;n(8lG z{S)hDe27O~U#*;ScEq5mic;hTAd*N;uh~tD5GSmdiX`5oE!t8KXm?@-YqC7&Fg31$%817 z&V?Q7S|*{M0J8_4nZ7R?;z&rqJP5aazIGm>S3x$H>e;o8^kPZ^z2XCk2|?+6G0 zdy1-A5Wg&_7_1sF1u2xDN(LM=cI?g^Aa(#+$^oPaR~?>!0^3i*g@j&`Hu0-@$z#RLrPsvWjX5ZD!2MgVsNc@vAWO*;DA^i0W0PnFX_H~>57`$8lnNj=+ z8}v2IKr=b;6EH}`N}Q4Q5dl%S6+!>{c`@I{%*r_G`TNb7AymWH;e`I;J|nXAFvh7I z8a+GY_Ar!zDZWrHy6-V|>_Xv-`ieU^2cUpR@ULUHEPrTAVT>Q{WTCgw#r$b~y`azuLkSaQbZRg-b}*yz3oOCm zlR)0gF5Pp|gyDRuU-CVyuaosIM{-Xim8&$9;>%mreWMe3wzMWi#73Y%^dDUZwx{c; zCAWw7W!|lKlS;x`XQ-wrd%z)^FoR_XD=M?Sx?o4WE~aS4r+e6X8_e7$e5lVVuLlLC zL_e=aFfs5a>_;RuGC=08ii}Uw3D=sqHycOa?&H+Xy1Q`z zWGy?ZcfSVX)AuxpIPLv)#oX8WeF9(M#2Z-w*6m#hF8`@DSSowJU%Av1rnegg=hl0vP9bgjx>^N5n?+>IeWrTR_w zTHtuzb-cR_w@(Z+@F1kfZC6Ivr^c}lK;tBKki4|Sg!p5(*@qphs4xTk<(bS4-oDKK z&bcy~u|%&B@p;2S(S>GWlCYs7$%=+gF9B^(V#KQK-zZ{*wAwTEexBY}i&)56RU9cb4zY{l?TyZ(SkS|;=+_7L- z?yTEfT0DN;ev|!_1F8|~8sx2XZ#{qu+IXVMPE~^Y0Wg<_df{2Qe&oh6Hsl`SHS_m! zg*u!a)b+u-(pOCPGX5Ne=izH#(H%8vAFa90!&WPzU-N|ZS#GDt;+(#sC&X)p`+5kI z=!zX3=WcA2mOh#xcz)y4ei2yI>!INYa>?T~4-A0*Fmf{6rt-F)A=UQoDz!1s`~%kGgZ{PU@6+55IiEI9&aif*#8RcP&w>l$wn0 zz+X^)${+B1j~|Xg73&}fw&#j8>gA;MYtgn2 zajaWsPN?BIbND>IBjp5+F3AxbYDi;-)lqt?0sTp@0pyCgqx`0mY{v<<-3iDLrt((zH4WC+LRv|Lq|Z94xE3uWEvyESbo`xlXLCc z(+ZVtFIaB&3tkJKucWG0F@0f9`2e+a%9?Ssw08a$VxeAdtGw_x0SZk#M3X2Knmo)P z=J$T?>q~LJKJ0K6vV$TL-0={2DWLv>Z*ug9DdL|_$8Y-e0MhjEE~L)2_=3rxS@_Ut z3kutYdHUX8`+>@Ef{;x9L+~7Z7R#95ihycw2{G#gemL7*ew)L0$plA@PDdqx$pBu} zOxsPT-0KNOiv;W&Osjfz$t8m`R*<4*cYNoq1d#w{eYf1h{j$$EE^29q8cKTGjUeGV zAMf;@0m-{phy9R87a$55;u@j{FdFV@k%-gr$V^ZA7IU^E0u<_h`uj>FP!^J+Re6i7 z{_>;e$7P-5vfrjJkN6aHaJ+szz4^5vQDk3K!QYtjm|-0B6w_XtT%woIrAhBX84zrP#ALiY2@@36EvEh&MBUGgz$BrF$FxvW=! zWq+k_AY4lJeeiTWeU zNU7B|FM8knx+fI<@i$3BzF>Y?KUF~vlh{AI7eJIedxU%)(>YCLB+V&BKq>ar`z(em z>SL`f&JsAmH5jzBHw2Ki2^WSKlG(f7xA;B76uEx>sB<)V%nxur){^>HO^n!YTummb31OCzpK@ZxCPP-* z$*@k>R2rA~1PQ)9&XmByTF&|R<;^#4{c^`rLn`>#ovn49Mb)r1e*F_Wv~*+^+xR>l z6V-JQThw80zfE+&$e(qDPM2^ovXIx#LHe$j$t2Z)J56$$F4oO?@~;ha1)Oug@4S8K zXEj>)2_T0|QtDBgn^+$K2?@S)oL$1CwiNEGCsOl%YoC^z zKBd-IfZ1?!S_hCZ?b4|4R6neR@0lcvuzIF5_q^QqJ0v-YYE^~@1?u+?R-QCWdy115 z_#OPPTy}l3ZUINEy*#ckZUf1ZQORckDM>EnZ3G*E>I+;cV(#ebitOoiJ!4PZr5L2h ziXRt$y=B$4bqoR@P|~O~=R&LL^}A*9?B2+2F0K9nEv12)`$TPm`?~@hAI!|e6u4Qn z2vN8QGdZAa8=l)EyN|d%4V4DMkZqMy@04yweDs+QCw-r)_rm}k#_|wNDWXb6Hw;Ls z>q{}5gHW+Q50$_sqv#NrxFNGy$jm=(1T%_Wx960Ki{LxIC~1?9S%Lju(tv+}Z>iPZ z+nPN4&a-h{Ya=c3>xBW_!ui?G@Vc6topi6pgHCiHaRVc3#ScTIIpjgUM^5Q=dpIF* zz#NxU3$EAwsPxLWDunp85iS~3PforP=V-swFyE$uNLG8rH#6HECXPI37nh$oKBL<> zdW3&mynUpf$N5obi?+L^5?cPt?)%T%{n*gf7O4r|qv8Cu7YiH@&SNnD=nDG;^ z-bf@;hxjFM{$M@!*5yG31S>NtdQ%b<{S&m?*}2-OkgY2piZr`CoeL$#Rw9JD;qv@) zoNDW6Ub&$}{dWqugD?8wmE#|D3JTO1LZYeoAqMf&c;Fus2>*C@F*SY%Yl2zd#_nYY z=?SpdzEmzjHnF)Q8qz}j^;NL^z+owwFyWO4;kvqVNW*|L$Bh-4kUwSbLf$415%A>x zdL24I5wqv)KggOoz;j}SRDN8SV)r{QB{dbMlYWO^{^i65_I5WP8}KFhd|6FAT;bT2 zeTKhIu?^MOa=I781x|IsDfZH(H_e6-j;n1!d7idbr>%ctqJD$x`4Q*UFnvIkAP)~S zJmRC^j)w*0D_+;4kOddcGx&I!-Da<($9z#j;}gMYe8`8!J+?{4UAT!_)5)XJ)~Pu9 z{I05>Ewl-bC}pMQ=q5M~e@%YU#USx|Uf9yZ=}sc|fd(FqZ7$l!j@txWMq2Ho*N=GP zX;kh4qWy(5=NX}hIh-5lDfN%5MT=2;i8{rq&FN(we1rO_$Gi9X;ZS&8A4V(e4Bmhs zrHWw}LLGW9#b);^K6-4yvga~Y zN@=;RKR`U6eHuY)5>IFsm;gDyij9))MGB-q-6hNS$QQFm2EpkP6Z7N}=E#0G)VAN{ zi}XW1SOQBp$@w-;dyVeWr#Rtt^p|95ucn&bqr`Of1z~F*8e2Pl7h~ss5)WGbcD-OG z`_3Ck13WD<5Wmtr-pc4+d+r%Exe5*3PZNcQ=IdK4qwCEP-}F!wU;Sd;-F@@Ip?#iK zVTyoC4C_XJl0xZ&$i=Jh^nS&^Kcf^KIEG#nTC zC+91M?j38n(uo329O7L+wNiQVvNU1j82WV)PpDY8CIvyM-%|w>qj8F|rSV)%4Iq+f z&?M`P?>20cbv_rzOwBJ=CT8I@a&Y<}y0tv7h`fAFd^> zNcxd{ZP}&)0;G<46{)s$C`ovK4fmTeU&^n2sz8Rr2a|*{lJ)oK6i_+(Vn9jO2&z!H z$-lR=V;8sH6O)&;r73%IU-D%Km@Dgk=e+D}rtZBxhzg8;1>Go2dK`xAF+x~hH}`uD zrm&cmc^eLG5oEs%L1P5~$1LL>{lsP(_#+)7d_S`BkZ##;;22NXXe)ik*ed z@_c=7iqd>fc7G}&xp~9XF_D{r^sOs@J)oJMCm(Xg0VLz;21hbuuW9SMbyaF^x>s`U zulw<*gy+nfk9XrTIcB5h%(mVX7Zr|L>H^{nH zQ+3*RSCZ9T$%3nlt?T373GybYSbw)z{2%pou^F5Ch3SZ2O@WCF7VwX3eH zK>I7myj=Jf<(w49uTCI_;c2;eeBIRy`V5Cx&EJ%Cja)``P6sodw4=vc?7sZn&S!ae zQCbPU@G58WzXbvyDd`47i(mq2>q!%op-+3D_}Mf@8;_1VFQO?jE0LFRiTGpx{EpD*dL+KpON0~TR>xnRTV1qfN~QY0$or zzM)&ajCLy&1xM+#dT*Ifj@%nU{)PONpJyqZG^-|r&xzIc(J1)7H<bL)~sHNK4dp77uwThXa{ZR=s{KR(}d0YC0QkXS;QXn7_9tF6=Uem3n&sB8u& z17C$>kcmO&d93qNxf6kD3y;5&87IS_>%^>#@pgkr6nF3cM8LOm340M3b~-uag9vJ4 z6unvn%|t4D2l6PW%HQaaU&r7(MtQtKE9U)C$zTN@yo?-dBf& z+Ge=M_1HD=KvCLTk&&D?{p>xz$?F_nS2enpSIpj16?E9lp10Gh73H@WyVqYNjt6-L zl0+ZiJ|$kCJxuPl9^mc3F^3iod=KDq*MA&ffoR6lS)}Q zgS#<2_bIl3Mxs@Vuz(7VL?cPy@{QiR5|XA`j%n?$Kq5ZpAj*91dN9e^qaz*+8+_U~ z$$U2GqQ;-dy=P(aordFJC?4RtArEtlcr!+nIGqHwvte$M;ZsadYbZR6f7c%LccI9q zjF5HTBAZEZ6_sRdNkMt-_Tg)ID}vJXXctief!%aH!cOEY zY9UVX>Vqj95)lZPM%h|+|FXaK_Cw=|wqmVV7B=}nsj!8r?z$JF?{3|GdgS4|5~Nk6 z2nkivP~3P*;C(E2DFh(S`*+7Fz*50nsyB-uk^BUR<}ppEu|PtfUT$Ch$`0XlR3pyv z+vU{Igqtk|J8cV0r>nadXmCq2tq_611xWj0A0d`g%k#v@4P0xZ!G3a5I2kX+(5Ck^ zcN5#+bj*<-WT$3sE7SrbZ=K-7*h@Wl>~O#|IIadTh6+Y2afEw2N4_&EzkmPgsHfk8 zdg;E*)CN;Ka9W0a>1BKIU95>Tz_IQT9$tzmwv51Z-v0QDV(&64s9Us;4F^6nJHE4j*3X94J1$``0 z{@X))^6)s^PRr>y13vQJau_aI2^eh}<{1Z5y3ZPuh=eX44mj8`k1wayBR#NarUHlX zVSdjxK$z90p%k6v1CLxWEmw;|b^l{3qR;ll_XnJ34xMZ}T=5}wW*oRPFw(_*-KDE? z=kXoLr|5bk`9h})FipZYWDD(HRc=rIC-F}+cm;j)_Mt@%Mi>EgujJ6^?8yObY43-~ zKi6Hkh5Vr_dYXtV+9wTuRzh3Y>Mnc?Cz%>7ClmxCX9>}Fnd472HILXJbT19N^)+rv z`o8|ERKHWVewmz*)u4rbup<9??k9q-#at!d_VqjI@CkjK@6$)4vKs~-*p(tP8=M|d zAHu)u@djdLqAy5eHnADsBs0Z-E~HkzU+4B|o{(6(2ltio)Lu<|&wIIs_&>x0mhsa4aZ0}R zA1a@@&A>ACLqVlS;$f+sWV}si)Zk;4d`^b5XTfS37AY{oEAx`s)QHYs;7_OtogK6x zzm8^J_1AriQfB5=H)ZL`O>+u%U+8`)-}{Q zR^>z&EbAeT${=q?uh#hVTGawD{|Ck4!R)N6f&ZO8`O=siz%JO_jVriGgnQvGy05*C zB;g;%LTR~HY`DX&cDSl<5*IcgP-j&on?C*o$DiP){VaSV8NP$X^l`b9a*o9^ItA%; zH-N`qFTDW1$H7oNqkQ^y71@>fr@-;mE-&QfOH zJU_nzx40x-kY+!o^Uk1Af@tDu@%#8*;E~b*2mak-WMU9@9-xoX3aK*HyRnEY{j6-R zZPksBO!Ivzze@V+%|z+!4^#&d1#vk8S-XL~IR9PhooUiEAac#YGXK>5lafuvPnJ4n zBhr0b@Ee=4XYn?orFDC(cl|*G%lX(=0NfFEZa~B1l~(oj?PyRDfr=P9R;qjpPp0Hs zOpUff3G#J9ZwY|&aip@x>s1(j zVybeJNoEKRTDyxB%0Fa#49>CtQfW;RDWbi}t z6)rxl@4b_EAJFL!2dD`v@(dSFyiHH9p022WerWhOH0hszR+v%=QPno4Pe3ii_Yf~V z?h$Y+FCwH;vaSWgXVkav6U|60S)Sl?ckmryLz>uH}mme;JL?OW~*Al@FZZgRZ9avSv6 z?#$95`wjNRLqDv;#tPlF(he{c;v?ye_u`@Fd{YV$$Jkl8H^KPC@dwOJ8i!(Nb<=eC zYFr{LR$Do$kZq0G28LJkLjY?P`_; zV*SitfVotgJiFye4~+vq*S6Gv_$?1aRz&TGPPN(#F{^e|5p%`2@}?S0t)aGGMLI1) zgu71v#zi2jm$dqZ#hn3H+0*mBw{Wz)`W}JTd}`wn-d{S>hP`!(he<{1UrqgWZ8n!N zsR5~j5Uu&~j+|FQ+#m=Y-3u^x5`0sq&i=url5vJ_NvYpaF5gygC+BhC{XhqvNKWC0 zJch^k1Kd49-NGdgzO7T7H{K1FfZi(xNN)%#VXkhb#i!3jeyfmc!1FRXbQ)>?1CSk! z{R$lyXQ%5xX@4um*9dBY9S_$w+Z(H)W;7yCT>OanpdZrzGFddx>Am6(l`MG34XDRt z?W}0BV5OUx`{}J9Tm=}W&tZmgstJ=310rTpMv-IQ8UqR0Q*2lvhfvnh3a2?(PSf`D zHT@!_uG;8ALa2d*F9X8DA$Lly^9gpRCIF;9$4eZfg&OD%@iLK)F8V@?tIDZy{km)9 zmn(z!JHOCD=vcW+T<`bWk4fNhr+%AP@wI*V&Aiffey0$koKo7>Xm|}h*_$+j-`RG- z`W>XpEqM8jc=Rvf_qv1a6 zX^E)tIC-FA-yTSC3c7?=8%LW>oE{rv&_%U2DxP$Nb{yc;= zf}E==@qOHX^h3lA#51oF@QYx<+pB=;5)T`m8&Tu=GcqdtGgGgks_%7eqJR%H70 zw;($n9qH$09!bPDs6KY*{8z*;j=XRKGTgGl2zI{RA1Ll+rOvwjLsy^_^3zq_*OOx{ zA3^H<^uW8|J4E9(5)$$f6fdA^z{4*6kB1^0ojbg$9wOy#{oy2FgM6c2_ry9I zqve!J@ipp!*ji`{t?%z)u*K8Jf~7osMzrjnQ+isL9JpKT7qT|*+Zv{!l_ktFuy`uM zDQf)5fyK}-8GpEs(;HCfiOKa|#Q7GMT)F#pv}-2}f#?YPGYpJBA>ViN1-xGlyE20S}t8gk8}yl;{a zE}IB;zdefRAHu8LJ@)Etf*79g4V0JB=%d;ky7@KR9j^NO!SoA+zO=$Kze`(kjvsl`VLMk8!~ zt?xhg0}ekw&eOdsJ7b-J*uBk`i#MO|Bb<=gbIn1L=`s=)q=!~@h^NRA@geVc+<)Z# zAP;KN{zQA3DX8xam&v|lYan~n-4yC=tpVCO z9Z`qb@hfYNn>z1(s&gZZP%0XLm~^A5Txq!Fsh%AFTC@xP^t(3q56vTUgJtVgqY0AHhD$-ztNp3N|a)1_UjR9s|4}eOEcpx(D#( zHVEWBO;#2#^RW0=bGZf{m1ZpQ3Zf8UOCH0!o&FkJ28QhkY8-DP8ZR1J18wP;P!B#| zPLTu;mYFTKEO`PN3$0L?Yp-weRecU0%-I_1hWRzKuRD_o<>RSR(N57+xO|l_E(0K8 zjBFp7Y652*_OEX9Q|3!82zFfA4X-n0SW((8Uu!v~ld2fq?W7!slA)d1`_tRrL{8Dz z2?u<2tkdIcJ@=3wj@&GU%y^osI{bRUV^$3%B-Cy$+}eT$mJR50@VXBiqwg`=SXO9T zsPeOA=IQyg@66sQhI(D=^q@nkr;{SY(f7MAl(v}tsaDD;MZe8H2!L+eR+(_MVG_Yo zvZIKL1q(B`aESpBH@wbeiMd*Nd%k}?}y#p2oRG^4vJnA;OS5>ygxRFBDwNs!6S=nqTf%roZ-Gwqa9~}DUO~~ zr4Pq4ON#f^x==jN+&M+CXqCH%`h{DR`6>AIew9{Fx)GCuJ$15WI3nD1CAPkpO^7TA zaZ)>Nz1dXYaM*xk;&0;B%yc^r-T_vi$R9DdgAy8SWUO3uHj|tY9!beOi11?j!ny$; znWT%SMdryD6XukX2XZP7c~2=uy?-2Ucpd9L*!fpO8jDx!t=)%7tg@jxuaciMqJ;0wZB}m4_`$H7TM4+1=OY@+LNg8L_ntaT zIlJZfDsE@l_@FBRjIOKVdz6n`LZn*;?9X)FFNSdA%={UDC&+=+FG3Y7yo2*GYD-zUn!bzKK zo=TpIG4JbGQ$b#u64tX~!sgjsY44Np{Qd+pQmx?87I_YQ>Y7L>pJ0@%lXm+Kzv zMsQ&i7~l2d8G7%;akd#F{1z#OENuBPmt&XK2Y+o}g%IxNSG`yR1m$w7fXhHShNpg) zN2O~(Fn)lXIQe@AQTkkO*Os5%MIot^ob>eD`=x&CoFG=hk<|yKmR3;FhyOrfIDC*# zDv%WXBpT;SBQi8JZr`BA;Y@`isG`d6Oup!PdiKPdDDRtCUu>t0pWman3tVa@K(V@c zh=q|mgiu|s*jiAa<8o%r^a840@YKF-Udpse(FO(0dVju%{q{B>zyq<_yFh}=X51}f zAbzKAR7?qouxmdqY3HCji9Ot0>4!f2#tC^v)P2(h~yX{7Ksw#L6;G;ZU!kOPdmp3k@WdA%nZ z>4H`p(ne8GlS#^6PRh&JpP}2MTcm-J^Qqj<`r4x;`&}-I+m*9bMUIU|bkS%iBlF+K{k=@@wSSeP#Gu z->+LUl50qT8D;-9T~_Z3X0`3w&Go{JpWJ<8US64|zSnd5M~&s~^Eg%S^|Hx781Eg^ z4{PwVvV>tIyOfD_OS`IhoAt+qwsdKaY0-yT!w6oAKTEOre*Wsf$IzijhwrTD1c&OV zMYa8&D|BffdWI7NkJp#kUuHyrg_$t+VIPvzi04H6db9fIh$d6l(kqX&P;`&_#}@bd zp19K$mjk~PR9e-*WMiN;-@YOVd-(+AI4vgv&*f zx!#)1M>*W#(C*L8dCKfe?a9*oI&`Hpib(#@zmC9vGIeEUb+lFYOKZA%ZL8R&Oq8GF z3jTfcg%|F&&$345$le5Qd~?UXgc$@ z0!jJn8^HLB?j|_A>!q(%Ii1%BV_BD%MO5cF1NXl24fW)Y$}zaa*_nim)U|WR*7#h< z_V-5KUAbefvc(fTvBtTJn4P_DoVfBHfTTeK3=3Kr=+NU>aVmrgQl-(KgoA%Mh7>qQ z;qQ723wokvs5|0}WExfAK4mqj$9@Hw5~Qly8b8GS77Phqh&?U}b&W2px*UV>0r%(h z2CIyH%_^T(Wyng9IJ5owiR_Eo^(EwrraM#-I09{0bs=oWcAyAb8uOazwnMtZe+K0O znS~n~ky`R~k@L$HIR5oLXAIHWlXwdlB)D)n?ExF-HaiW1NUQ+>w_q`G z+{0-~D6ywJ4~gU~*Y@*V7=1H!kO$(QhUDlhZi9OLvDFdx0SY=SAS;?~a-{R>>NYhq zgD68w@aqT!yUg@sxajBopbD&DDBE z>E+@GG~+G)R)~C+B%3UK6`O04G5PndjD8B`ClhAB-Ew~cFTsA`c!sSEj91GCZaB5X zUJi_}d2i}2OrZS9ramyCl;zt=>a3NjMVCD1Fq_|q5xRh~7NX95=9Ke&B+UlFbjTyb zJ$RguuT7&>c&DfOq?Hp%(}~_W`_BR+n(i50?!OK0zOd&wx#>`;m&f?!Ub9 zw1S+-iYCxo_toP~LJ*0eJ??haC|5^7mfv(C~uXZUp8L0p3tDAs_G&_WYZ`OBbWxue>i91$4 z=A>R?!K{YwQ*paT-US3lylTD!SP;-auqS9>yOX@G?tSf}Vs2vU2hC?QE{+Bq4qeEJ zddu%T*7aXN(F9f~q0#g5D*E>XyA>O&9lo|Mu%Uf}`)GebRbNzEfJCtcFfZ?k>-7sU zW#XA>_ZBUGcuvgUS%-+dmZ50H27*GkU!mJR)!`s^kMWZ} z&u=R|eZ%nNA3AdnKd%D>rDhErrTeLxx!;q1M75yZ{R*u|pA1(R!4_uTDZGGLtM#fz z*eb*?VMGIBB(|Ho1;xI+UFWo&JVV=9NzUO~Tx*Xqja`1KX97mHBUS)NWngmXo6gPv z(@d2H?J6SzS353{6T4=K5d^&XVR>o)S>mB^?Q;X+%xD?t4B|s1YdfQzaxA@^4rgJ% z8>_ej23bI)m1&I%flH|3tGk((oO%`ES&X~hfsXOfNUq$^7`w9$a1w*P!-?dF$a)J& za^83Lf$I!yK>gY!!7_ROqV;Dr%=ts_6}4p$R(NJ@_JhWXjE@5`e*FaPEIpr3#}%&t z6p^Z`dxj1R=BG9VF5&O74i6W2;yZOHc*_yu9}L^b>#02&CwdRn+F{R2Yv^0^hC%OB zOV*^mcfJer@+00r-M@T)H;1hr1EM@I$$KAdzd`6hKOB&BKr-lA1Qg)kd=RJ0psas4`d43?j6B&^AdC{E(2WH@pY>o-9;qA3O zp5G$Gc5L+jRagqGVbZujZF|4agCtHf5~cC8uUGt9j;D8IoqMhQ5I?Z$`hLqAa^!4( zk}i@B>FxbW)F00n{CPG3rFG+p&pm{&V&%QtYxk}iNIypVfx#r4ohl2)!;Sv|7mm0n ztUL#rxLVAOBVMk$asmp8@B8p1zO#TDvf=LAi$}L3x6~&|~6dm(Y7UET5-&KqqP6 z6#Ax`vHc8o{fW_Y)j6)Kn9u2LOV_TBxQTw-m%zEHq%nKotzWnghHb%D|8Tx)`Qe_< zk^>weVB%6zhoj}FZwLlxeP+J(pI~tQImx3(W*J>UWfjSyNNqdC{ut2JhCN}fFP#A! z@}6{w3}E5cUeL%1n?_eOFdKQchB|x+=3ukOG}Z?0y};vw;bGqJw&##De7s*+Vn|*ZVOp1o9-(t#0Y|DG?Wf6s9e7rVMuk+(Y6HVk^;F#KVHT8w_A#9ZpIG~EN`O2WxE_%$%4eU z7G2`N7X0YGS);lEm@mN8-Khb9vbv8$i1x*f9z0~IF+S_xkl$!FZ0baw%KKZ%;8(AP zCG=3Y*WR8G@?wwqR~5@q9`q_>EmB*UCHW!;I2j1Arhzo5Ot zp5Z0#Kev$|v^{Yz6{_aIE&^l{9-b)+OhIbU%i$vbhMV-+QfQP(QYyV46b&yhkp;v2 z3T)D|gMh*>XGb3ssd&A^kj)CP1HutQgGI2lSCow$2ZXV+Cz2zq!|L&BRZG4#ya-s}@8e5B6!w zpP;ZIFFzROQF=D*Idqt8l0~{zmeYgEE+2#`dA83r+;o9c6ZeSR5rO}dth?(y;UmR( zWYF`RTer4uD;rIbl3>FSfTt$y_mvxuPU_ zUkUi7zaMp|^0CAo-G&Bu{uTHaqGqdTh~7^o;hgV%p$QU7VHXKzc-JZG$`7KJE(iM1ybW%ld37rz{fJo%4$;H)xWVW>VHV| z)w(-sr#v^dnucpEx5fP^mA8qy*#c=_lHq;IWF4vtcd5lVCYO4?-}4}sc^m`xcGNg8 zhj~N;U$MTq_|DxdM91YW#aS(v>Ef9;*;IR4{VEx6P=nRS#NkG2TsK}hDqww^9-sTF zxR04$(2lyH$t6AgmEmIJWSEP7&usmEnIlkaO0u9vXwxaFjS;NRV53K>%~>)EmrtauL+ zG8w`MiJu8DHm{g1b(ZX_nWzvqdz5}W)pR+uiF?V8_30Vk&|!67?+S==&Fm?XioS$g zL);OLiP)#cI?5*(a1CYdsFKBB{;!b5^4ZhJb|DfMpREw#5v-&q=0)jHjcqz zbJNw7Vh!eNkRk0K?X$6Es-~AX_WX7BEw5=gTty&pmES!wr%pnu_R+EoQUBfs8p3Qp zHWwnrsgQw%AMP}Tq!vOB9%E`M+!xG4Tj*ZH0#@d}nV$Fw-+2Fq&=|Y8(5KDW+G~$< z>h@j=E0n_tuf0y=9iV>{p(&1YHQ1h#+Q?SKi}clxLXfC*d%sWe^@AMX?r&1)y)6Hn zS%f>(;=Jm#ZYe_G;4>l*uACx()4Mwr441i<3b?G;mTu0H&D}~=xj^pp65_BMp{r!+k5mrxMU;DB4IeN_C^g)=H z_(8}J-r+~aWRJX@2*HE+qH*fNT3juV`9*FgLN&d8l^KrL^(CKjFSr`#-H#y^ zF309~?pAcT1{Ap&yq3|d-{$L4*hFiT7dy1ueKqy3{iA@4NFsR|n-X95G?E@2>Ycvs4b;ow}P{MV_4}}Rsk&phQQs}}HeY(LEq5;a|5S8ZP$oan*Mi;-= zBSNS+gLeoQoA1PzDx|i4K+yldeN%{Q>zh$=y2rw)U5Ov^2MKzi9p1PE>QhY&0E1x?Xnq?q(RK)tl#v z(U)k*NyU9}#6XP8kXkW1?tH(p+_`HG=dIS*g$)wXCAycsp9{C8V(D4|+He&9ENbSr zwdYoU%_>2MSy~qvMB=o`P3qy6=5QyGXzcrwdAxpw4l)Ql=X}qSl%MRU3m;`bUgW>a z#~&{@+`X`v&g}xNroKq08j^=?F#rL$rx=%W)M27}CnG=dp6cByEhQF?57eBq(^Z2@ z490342-kdDMNzrN_6hDx&eE*0AF4D^W_)o2BsciWx{hVBj|lfKCj6W*n`s?iJE)qW zOBZOc?QfEMuk45XwZ!?prfDz9JM8tX)Fy=I?iZ_;A1*6%I8)?(Itx#LJUuiX4^*bO zg!j1fa(KS4+~~Do9a`fPa+&!_Z;3{S+2kyhVp@FCAos%_-8uGf^Fg6{yqf!S?{<{L zYMnm?To}U3Z~f$F2uc7CAg=;l%e23HDrj|zLEb}m!Go;|avU570ABWD&-;tLHng&{ zr}~EfJs)|UK5fG0plgq<^!#_70y&%ZX#F}~)id=LRF-J-9=bTxr-Lgn z6$>?N&o!iz4p#~P@P11NX1)Qai3eM}q1-t=P*{Oo%q47r7`L+QG6jmYZ{rt|%xdU{ zam%-r6RX_WoBA^Aw8#8gyqrHc`U9E6A8n33m`Lq=07Wmv7Q(;iK7Rl~)ee_HFlf%$ zLeZs8s=$ePB<%LyI>*LuMaF4qBg#_w!hp0jok4jZXbRF~IqSpr;G&5-W>17a4u!Nr-FTVfe7w6B*hR__V>0l3G8Sq0mmsdJ_ZqXk_WDA<3)ANacuWPZR$L_RzZ)L>pNi!@UKHy?@tn|NIY1o8P@Q2sPQ46f(R-`(|5XNzBXD@V=e5a{IUZN^q^qOELAUPs%yJe82aW1c8Of+ihcrYcMJ!oxLLW z6Y+!kiHn_kvtJ(#8ShTSMXSEZQ$0f8iQ8&$jk!EvpYrWp^v{^gaeMHVHcq9KD(WeD z-q2Nd<%sjA+}iuCrqRCCFY(TA$yfb-arJ7&>8gffu3UhQl0_J)S&Y_BrM0#mEar~;m2v`S&+5Iv zh5g7KbN|dz=I?$=EI8(0#~ahjkC5$X@bPXE9O<3ejU6wSXk+&m5;fx#$^Kr zD&~RAc0FEp?J&7-SvbdJC7k8XvyKu$qbB(cP1XJbHxm5GLB{jU+zl`$f5$qRay7&8nupiYI*;@X#^BAD`qE${1dMR4@=-ekO;Qz zy6A)sW2Dl<5@Oo(n6kdaQTO|mtEj^EApKL_xVd$JI60;;AlH1~g?6r0vg3vPvpmxc zC5G$b;}92bmA>EZ<<9~7Fdx6yobTZ+XCkT9?n+tB^YY=M<7x-b2f^H-!-1oXZwz@` z$p9)?G&n=sM#0P4CY@ZXgGmQJ8Xu24{g`Wh=;>w z!3{*;5EH-)1T=*m)Gu3iPByffU-z5%8~MfI>p4(-g%ns8(*u2iTQ6vKdKSN>77SAA zAegkzBfzbtb48{p5BS~p^HG9>zNZXD89|9WXN1$0u7$B|8TeYrFXtThAy$H0fqsL9 zyX7|E&F>^V-TMo0fWSjoP@8qoJQ808OnNYn4$t(P4LAOLSaJ1e*%zrXp}*R9QQpl& zQH<$4Gz>c>bMhR-YyNbl#QlsYgS@4Y_`_j=WCbK-jU3W>dtl>f_H_C-y=i zFXs>C4vz8Lj_u>+PJa>UM;hdn$ur;x9&4Wc85S9v<;71pD9v%XCvdQ-zq1gMXSfBH zwW#SinAcltBOlE1c-QZ>5&UuW@m4>HAL851-W-f#t8L;)xo|Ge@|_;T-hSs?Sb5=hHci%t{xbp) zVIEFW*-lkiUoImq!0IemKI!NODTfhU_W@s=dzMK3)*67m>w4UiHv%Gn+Vu0^$q`QF znLK}Puea;Cw+XTZoRo{t1LOmnMfB?8oprs9Xr8I(=evI_O;YREn{h}{2Lm~J+>8Myq}CI4ne8J8;pgV^+(#00*pv< zs?MMG$bWxU9YJ6D3)t1GyQMSi)4ey6Mzn0X6mAB((62|{rtTx77Yc~Ey&#}Kb!kH} zkH$^kpo$C0s;6cCHDz&R?ndP2w}bT+UKh9=lv8rff<4vqBA_d*qhF2Try61UVnr5& zsxSN4Ogp2Qpj~bBK%c?daO1#w60EQJO<-nfrdb=}KF%+oAEdqKK2eo)4jj~xX~-G_ z40(*oLrw7Zzv{u|Mr z!xMDwwsnfamsPY!(vDY1&MwRXCBXx$^e%YkzAx?zV0QhLxNUh5|6w5_Hc#|SZMpZW zH=2wHV%qV_B}Wn6dD#Jn2vWjH^lQKnKnMLJ9izhKX1wdg%}fsc=EBa`FK~f-6FX}} zxakl;A&c+#`5PZDZk-ENSo&~dPHpp9G+~lB#%HP<-P9MTw(oWN%pSR3+rNjqxjaNT zzv4-BZ%%j6U~ukQN{x)&zMr`)#<+ZB1%XQ&oCYQ3(RC}`f4_}Ws9w9I_IZ;z;WTCa zw;_j+o#3AM`)UK<#b|BK4^!#O6^=j2MD}#ktDJ!rGP4hKLGT@~ghifd0Isgggv;o+ z#?Ge5f^l3=pEnqEq~!nL%=diWxuB9m<;ve|IdlVP^1q=ov%rJTJ?KWHrE|tD`)(^9)x^yIvtxg-<>cG}E5;(|m-#&e;X>HDR2z ztMmCu4SFBPYlVsAl!lP1rLgP(^`ujKg714xjQ<^9`!MS~212S=z8p!1Qy*Xa7>aRo z^NnaEKX;m-$r1NQJmeSSULI|n3{o}%UMUG2Q_K61@ij76t?l3(#z~hwQ%d#)?vY(f zp7>4@yH^fl<@U;8_*;FG45z8MfaW^UIATGL6R58q7+Wt=FFpA7EFRT8lrcY(S#Ov& zXn%9>{ftNLB*J1Sz)qkZ3Ri&RDqtC#9_UX096Nb+{bT**rKav(zCFnUmpC>{o0dxD zL_(Gp{tO0G+&{F>GNx)T9vt!5q!rO!#A#{0j93kTLwt$ zlvRfJ93`giE-qrEy#K&JgE!^%=>14t;~pQ>&{mk-gHWB>@h$DQ4a_K$e#*7?E0BDE zsS7U8E`0HoWYR((iaY=;#a?RRjY4_P_Lz0-I8*w+%z_93w7tIx!IsydXiVE`D+_wi zcL+#k?tV>Ovy+FcM?$l;nivPY3(YGEHnZMrG~*B3FhNP+INrLM$;-0Kh(-8~vT4?%T|A^!&4t_>?ze8NM08y6}tB zzt=muAxIUp_4LQ+`RMsZXspbq^D;Wqv4xP8KC%HozY@!Lzgmqn#qct>03tTG70nkA%1sAPmiAYX;*%RBFon6z6}UodVA?qM^Z zuV)r-6gDMOVBP0`9_cq7uw_UAFj8}Vdrs(!to#Ir&&Vme?gSx?P4x=0GH|0l#3ek}UA<;ivefOJXz>Kx6(F+jc8BTir8$|x+6vjkRi_;|WA`Pe`Nk-}zt`5cjBcp*;Pg@sHjcZQ0L(!L4rb2)q_Y4qHfnSsov z4$cDjJ_`WgAm!<$jSfdR6MV%lZH5`YUxTYOz$B?NC9Xcx`H$K644B-_8vw(+b7+WZ zXEsVkl85{RbcF@oBYY|eF!z6*=_mnK7nxm;HobhNxXwgEyTqsI5`8d~?j2i$xp0#J zD)A^9M|i%MNZHD|PmboFuzGgFoxMOx!_+Id_`V2x#Fmbj+AOVIr^~rMwYaC`DJUDr zF38aR&V_fu7_Y+{gpnM}<9=sc9~3kHo|v#+U~TGbzoKq;-2g^xZ^BWl^N(Li3kC<8 za3v4%zD09Z4$HfJ|E&}EHstrnKHEh5`?QcQmdA3_QFY**c+`)JnDQ{M3+Si(UEi9Q z%17d9Q^d_W%VJ&VX!MortgmN`ChpqaM|`hC$PGsqPD0dVy`{a-(O`voVXtPdY_O($ zV8{oZ;?+Cv4KA&@?twOPG{bHu0WL^V?!3hnn>s>7?bU=|mSiIE!ST%JCPChl93J!A zrC+~kUl!kK_R)8RmE_dBv;z6`33_z#0=Qm9;`L3qUPhpv-&*Wb%V3NE{9{wv0}ete zz7lOG>}izPXomnIw3Et(s+Mm*jsYF#pzzzv&pRV8@7t+u6~iri6G#8}OGCdg>_$*ofB>Px7~C6xE)R?RcBBL3?viL|HdCA{<$`*svd zmh_M8-(a!7U!1G2$AUqG0h6+Fxwx=iL=4#G0m5?;Yq`aj6l(hZ`|T$Ikkt_ca?{(^ z7nEvWnSW49F0V((wPIGV>K!~27K*f_tC;b7Xu`$e{{o&+a{BAS(Ic!y?ILJ?6Gy(R&7PA@U&R4lV=r{e+a_eHxJ^-Fh}&w$Ys>b>ggFP4s*{ zHV@(2&)!@d-yl3J&Rr3rSGyasYP2L=+daSQ9=Djgkg*7W1Nqe~rMS`ezQa$XJ?K;b zes_gP(5LjpwRyN>JwaITY~6*mEy$zFBOTi`jj=_mlC_BEOI=`TdcW;>qYIEv z$pNQJFnormBc@__euW$?E!dzj&Pks`r{VsiA^j3E7FbH4gR&b-+aB$ivbo*AbNUL6 zn(T{TFJ46@1?VIKJMQ?dr9O|{aERpRBWU9@2L~z{47L3V2^yPFAi>8iSVV>k=_eC+ z$AyfS@Mv;)PH8vY5DfeUgrqG+ev4mN=rB6*#AAO$+6iL$KtK$df!ecTUZ(k!xsgN! zRQsb9>Ow67S&(N3+h6d7KF!;;@NO}#cx}g0Zp6W4e}Q_Fn#3(O@#X`AGjX%mvC${l z_M61>4mSO~eX6z0Q-UX{6;KUT=b8s{I;~dUUqlaivbOz)hZzAqE(c3k7w@88hSAvl z-m>$}R=JWMHBL8gu)4gWF^&(x!jNO$?cdkmdqx&tU?Rt(Sy3Q`AFaE1K6N^3#YBe!=dG|Tq!W*1j$pygX&8X2`MBHI z?iLI|+ZiBii2$o#Dk#8}59|2>hQEzdi{*e@ZaqZ%3MM$mo4rHKZK#4iHr-~HhuSlj zD01lw>+i{kYnreXI3M+|$PQX5{DqNL#V~Icdr2th$iR2 z^1L-3E25$Dn4`cGy!|fJN%)7scBZ3Y6nb)$oDFqYR70*ef#~4IJZ|*u%!TIjb%0OT zgN>kTf{#gB(efC7bJ*kge zTv{HX*%EBN>&!D@L-y<;PS5QMZm!l#t^nDffVta3?q;v}FqCAvM*(v&y$Ty4XOFQa z;%!QkN?$jhwX&NolYZT=w8IYK z(gf?!Nf%HVr|U;vuH)R?=SYG?_GVab;rnbu)lUytRt~TGIVURqDATZhG-+rKVk5I~ z3i(vimp3U$8k8C{{r(a0Jzy5d8NwG{N6d1e{4MLc>QK?tGe)18<11=EmHxqN$6X@k zF9XK^j(q)y{QW8wI^KfWOuKw8L@NG}fef7gOefLm^+^>q-e!a``BN(Yp3Uy`!TMoZ z{z;S=)=xZ1RRHlY!R^14C%(u(G3EyFdBJ_e8SJHoiE2=*pu8_%$n2S)z&G5u!;>;zM*7K?jkn&qeWN-#^NBe+ z`Wj9~3x}eEJIEW6Q2W48V7mj0x?7LQh?{O>%xm=l>6SOW)%-_hr=r` zLdr#3_C(4Y(}0=U`IbTTI3po4BKMHLU=ld}bkq0csE2oZbVuiFDA)#+_@6wq8`bxIENeCsM!QYNmf(9UJ+u%Pq+ph>TOhaH5RR&@E={-6VNzQ;%h4yuhQ#4 z?EB)v(|A-XcSZbgRz;uf`9?xSVl(9BFg?`m*FR5V(r%Zxr_^#o@oZU}2*CIp6^!3k z0fqRhu(zdx728h+79g*sb1q4q7tO=Vjr-B`$301>BO?B(V+JEzd>U4H1v-vGU_@vJ z2}nFX;-)eumqBUiK&rCNAq{wT!A11%<(cVA(92U7+u?Y=77n8^d5>=S`9oYtbsLM5 z356#lf(}`2KPKk;^M?qG_XbwU3T=I{qaibUb95U(n;Bx)+WV8Q=#td+@ExvYg!~m< zeN%coVmjaYu%Gr0k*bWxYPNpCOeP46+OJZ+A3csr8}~6Jg6?<@1cg3?-l?+Gr^ApP zyNKiCa0-7#s6u(vq=NVQA4yl*wHg$K|B`w5n50BVGJP{g$PnSz-^Y8`deN5ujj?1@DObfw`*0=z=K248K%UgHjhns&KOBO*+s# z#NMfM{ch>tn3|>%-%&x95^_I7Y7~?D+ar|O?q7WrkAdao`x|;6-ofP`q|66Syr*C)8K* zOd~W+!)su~1)Hy14xf&TPTi1X=e__5JJTZtbpVwh!m}nnO$s1v=_?VTg8R~7H zuG|vMZ{S`n;h5Ie_0Sp5WA`dk5$rlG7K@{>YYR&UqfL+OEIEkixCpyE^rNxPvKy}= zW2dRzFNW+Lpstr6tJgDHLomy|qa*+J`AE&|(u? z$&vxI9yz(eR`^|0a7%j)B4eIG%m+&}K;)B)N6UIin|gftJ51yhDx=3z7~ZMQ?qTu5y_RWuo&=bymF z-RRs}N;ftlb!D2F1D@^O{kEifuz|jJJt^Pk<(ZCcP&n$6!n8?BE2*;NVjnC}4#2}K zpST=;47JssRUOvMcm*ZRQpG$}){(`Z1b!8pa74o2z7@l+!Wj09@>9rJC5)r@exf+b zYMs;2@#Sq|AH6c@;ETY<85j)kOoZ@X%NkqUqqSaz%=o59U{*qs5JJGQ9;a<;`~_et zoE0C4pYXCmubR07?^4}YgE>FF0*>V2>k&Pl`@T+t5eg~E`A;onfKV>#iE!qwoI z!JXjuo_b?$PoTqt8sIA`&lX!3>%+d5=7U3DZk4<*fnQapt_m=UXo*obQ243-t%quFOi-jlcS7<>iu6l)G9p@ zE^uOgor>GoVc5Y|7|A}BhQam|?@*O;H?9XYmZuMzgXa~Tpkdh(P&u`@+1kr(;>{#M zc&-&zag$7y8bV@c&kp=|Xmf6oWWCY$@Zd0};sk9z25Y6hkx%vLVI74uJg$bQCC-h( zFOi0I{(SkuHfm{z^hvMjp}@q0md{)HsDpRnsj}ao?c&bW+&@42o=^FR?hAIN!FMe4 zb|`5lcZ2T}-goYtG}|;$htqisa28;z9v8vBvE0htzT9aPSwN8D8*wjx($$K+h>&Ol zOs2{HjXAhSC{7$~rf4C>v_SiWW-gDHP5URGkA84|;5mDgAOfoaw#c$%On#TlPa z@~D8W9PVcds*06R%EaK@%{G$ZUo^dit8m?CFn)X#r!WsBuvr~xcPomq~p|G~& z)!2S*vkh94G#3??zw2o|GzUI;2!+Dkhu<9>pCi3>$NqkWe4ZjBfwC9n0!|rsKr!M7 zl$I(Q#`8Rtf7so?sU#{n%eXPo=l2yq_d29C^_31Bf|!~h9XC+g+uN~wPBp?V7^-I> z46cLnTaEc0xzoNrUfy`F%H{Mvxk8%l3DtFiRBhr@-`3C+)fKhKT_`BR+fE)HEtTFF`a?UN3!WZGk7x;Nc7%Ws?KSEg-%#@KE~NTf$ z_Sgr^q9**$$}2CQomX0B&2Ui$%B z9>dEzB-^8W%JB3UE%ugOzR%TPG8-!uPLP@mzLNtz@Bn6&;OLM8SB1yaP@8V~z_^XP z+1a%`mJ3s1;C!Fvr7B+0y|_oxVSUPieBrj(;-Zlja{zxmi~ue$q+cz2C7w^ha{>f@)q!5T^| zy792JP-CRaexdwNn|8MsVm}eF!8viDccnECs6vo?AXk5GOR!g{sLVQm2~c7oE_EEM zXSs|sLDh-)F_N}Z{u)k)M6{0`cvLoU!)R-=BYvY9+^hIs0J6)jT>VYvJ#0qn_mOVWsVB zk~(wH)F+tqYYeBtwT+e-86}jNLjOjPJ(@)FCH_*cAE zN@-9ITi)~$#bjgI#yjhiNyeVpka^KbPq$Sha7L18a)Iu4{UrZ(KKTQ)f_181LVTKx zXIW{-nB!HbCDCw3(g_Ccn}sr@D88Jb-kHD6%;DC9zoaprlrtrHK*g>Rt78EJywse%yqkjn7bs6j8tUY0?b71D zAdlK_7R>1f#sHk+w800ofIA^K2tPW0ZsgcZxelr9ed~LbKuPzn#^mCHZd;Y_eC|GG z70W57sXjU=Ushj}H=k(L%VnNlm3vGV`{Fexlgl+ZO91x&{7Ujo`BQ7-WsrrRYUJf2 z2$jw?8Gg$!gJh>A^1Ck;OEqlkU_T-J++L-9lrbKg1?dp-*LXUZHrIcTH^Lgv)SSLi zkGtaw{poS9#xsK&FcWFqZRJLYsfeBkyIm(XU<(|Gv&-}dS@*{QQseOtXRe1O;Qa|$ ze9DR&wtsE|D9aZEPwb1Gy+pM!YX4fJUVk=G*}5Qff=L|`R5n9m+AAbVT~9c*>!syfY@-fL2{LB zt7QeGCgC=f>*p{@;bsTKDMd~w{@-9aHnBJ)T|yDda%Ct<3Td-$?vixw;QP}%RE z$A_Hch5t^Q^YD9-Xdm(?S(~UHTJ#KGbz<6G5PAMx;XSN5 z)E2{}GFKtN{9HWpU1^7(QO+{@GZ2GodiE}LqrayY(7;wZ2@Vsrh4X#Q9tLoy_f~12 z@NelklcC(MF$AN875V~BG60ej21*F;CM5GrJ%SycP^YlrBibU+{V!!_QCITeSFUDD@T?HVH1Xr zEh?gh;X6U;LT_SV&<|33IldwhjGbz0pkNv}vf=@Eaak1*7 z{NrT@^Y@?%U1W5x7%%_0KBVaf_GH6eba$`ohV_z#&eQQT+oy9NQx5juK@7bJ(j%J6 zDOiiZm)cjLKT*0#1^)8M_4fGHzS^R#CN@U~4K?$2S${3!Vv1asd_h`JT0V`*c78wX zE9juch^*De>9@6on(w1|HUqi6sLyZOKt>IJM8YCZI7Lx=nD7SH^P`Vg``*j5(DeRY zi8~qUyl$6@w3jQo^6s&VCz} zm>HsnKYhP*B=_z+McUL{x69Go}6KD~FFHDAk zsis{?HG4_9`FVfF^?uehUwBAC&=cd72Nuq5bO0Kg9_W1G4DaRO)@-5!IfL7DO)~c7p@TF2^-U5AlmMF{#y|cfxWdQP&60o z>8NgZkXd1B^4b83_&SfWijq9Mu0724vg@xni{omZc`V~IMW+`%K*>?KgcgO4jiEpK zw^_EjXtZZ0GCp5YyyF4y&+a|L?6Ej+J&(YzgjL5YR$!*=2XxWmseBn2)ZRTmUGViK zk7kO|&<-~&VeF1+hr*A4bH(DY@4(dq42++*(7!;~+qPp$9d&2CTfz5`hJX*?{F@&$ zNc{E&TYnDXmaxk`UAQ#egCL0|hLAUovS=UJt?4>fy{`J7PnW*p&P8$E{Jr<*;k7@( zfMj_!{vaa8*6G|?F_k5#0wuF3TPh}?SpsuuFJ&RWpo14y1|f^&>Hg`}<{_*VhyyZq zO;&1)H2PubgL6=T>Rz6nm@_KM+&o=B@Ly2n2S4EDGs>@%kFWo&2n#U+5ljFQCxyrds zWdZQc3Q7xx2d`bF;!MMdzWjcM%-MJe*(aLp@%_*0i?_e`+{vK_QVzC;#Y*BWYn3F zud~VGk+t{tel-^i9>t$3@U_ba90oDyE@$)j*CepG<4feu)${2dR%v`w*ZkP;2s%YS zse55_Q_iHhi-zp!1Kq>~A$(MDr-?(NcHHeINB4e24cInLdopU#(AJ{#XA~VR8p5^5 z4x)_(fc@EF|I(4i1mr~5@1pb%{IL|_;s;iJ zmuPiephbjt#HD&_RCzI6Dkrq`t;hW9Nb<*=j3YzV-DfAfr|XH%^teU+*)|+%-H;{f9fee%WO?`1{(zVx>}^U(S;zR~7_N+y1{La~i-K zYM6Sy^SeMO`^FXCsdol8L3gOZ9>{0!=!R|pO} z%*aR@WI5JMYrO37dltNx<>!5f!$W9afGzU(pzR-kt#>j*hhcxcVW9t3(w#}}>0Hy{ zuv3kF%hAMtbJv+oZ>+~gYB|vkMZqP~GW1$zr0}wM*|5`+bXL3{{WKBqD*-*{DR?)B zOmi}sd`|mnr?En^W(I^0->Y^dzHGD+U(7E_rGkZ)#d6pK#%65da5knda!wkSlyE{n zy|H2!)DgB%zxVR}@jTU<=^0|&)ADwK$&*M6UTpW~QoL{mJWh#pWPhMq=Yi7RO+})o z0LD5ncv<-|<@uPV_o}5Db@b$P_1~yJ$-Q?P`USKik##Pw%KHf+;+RwwPXxRM0*E$C*4OgwJ;i^QUEu!p#kwWMepLc~ z@$yR0wD1R4vm22A=PWfzK|U+LD|kTYCtkSVq@ezVO*4$5Go^eJhpx5X(JF`$qR2%up5cx0?Oh394QMW<<>jA(-F-a--pjrj8f#a(ps z6g%siW-}uQNx;H8TE2PLBc4RhM|pfzjG!RFJPNA3eOR$7;q95DByT9SQWjq<$L1Tjw-EYIk$CG4kMzY_ zpLN*$Zf#vS$zBUMR1})Ye8}VV;-yckJp1+QgFgD_bsi(pcc>n^$Wms{G_@Q8#*Ovn z{SdT9+lgH;4`wLm&3mBEQ`1Ac%)rV7pA~I&6kF{W)E8nXb3);Qpt(AFSo?)H{et!g zD8;9#l~eC-aoShaS7B!~5#ocPtOa0StPB(JEPb=8qn7+W*VDW!jqXBu+)S-Jw7;vg z)xLu!&V%WKX^LAUk&y3#7vZ-G(eO}j-*tVzmG6mrOG79Eobtmlb#!5wvSjuCYKbHC z?La1+*^Bhd*%iqMNJAInG{FGLvH1y>agjuC=Ytp_7%eBTCqCu=FkU^BMfXyS#4i&P z#2X|!d1lr`@k_A>`=_s+CSR8RY@4K<+wwjVUOe5v%Kf)_H(E-EX_mSn zNIaf9pUPs9S->UsC;4I8LZBM6jO@3;Io?ZS$ig!#V!t6tE_vXQvQ(NCDC)t*fP0Y_ z_WAqhlGFUk)4rMnrScmYjek13?p+f$CIoQPJ>DnH1;e%K;AZHt*eH*f7 zz1D`%etmk1K3IeyyTTd!!t~z4;$l74p9Tfgq|wwcWy(2LpRnF~Kj8%?6ARBh`p)`R zLUHKXH~XY+sUg+r)M1}@9LCu=X5z!00YuK9Gxo_i{ewF}wz&9QyX+ian1~;FPL_Y_ zM%iURb%#SnQ9{a?ZkbxxvQ<8R9)@H8|erTqGN zFI_r|5?RIq|7l}M=)(g_OhQcUf-a=BuO|neP0$vs~vQ!zdcLPcY$q%P-mBD@nn{m+3TSt zW@SJ}04PtIC*LrK%6MIKTc-Q-w01eBIbUq&gmuS0MHYLytO|4xf&E`P$_km^EixWc zM1iycW9*aI8Zfe4eHg&Dy4FF61Tsev`Hqx{Ghu6Sa?Vy)H@dyAl24|yn~rRN5uf`u zug^|C2Cw+HPG6v$_Q5b6GcXzlK$s*XNt707^q6fORLXTx*XXNdBWIH$S3E=e>q_VP z88-GQiQOJXsKVHO_R;tGXGgD~YM=h=&~J{&fy@vK4?6hBt`aF2@U= zbCgbVv$enFh91o;j~X>+phh%TsYX+EXx@@f?Sk%l6;jmgsOiN*hF(q43@r_BbM|6` zM7Q6fpw8#e=AWVv6X4H$Sf<$M>tyZ2(@#2>e!Hlv8S(AmfL!)%UF09qEr-0pw$(f4&`0<($%hCyyYL1Pps+O8IlYdkoA^B4g)|+iD#I0q<(a`0ea5Q?}HBEt=JAO zAm0fj%3!_b#f#|#l&Q>D>tzJ4@Cb>Et*n-(?x*@0Pv_1#grPks*O}C>RAgg?d&%mLS3b{Eu)G(io1*%0g7Y~{pQJwU{BL_% z{{UMxQ()6hTZwyi=Woq3%Mm_*${;;u)^3}7x+k7@lQs6`UEU@lvD7>8A*}rQvDvuE|8|Al?J()^dZqa3K;^YY> z$x8-Gdh+ebeFNj!lns?4{ENO%K?oZ3N|6_R_+gonv^_RVe?F#{pLILlUXPJYQIIKk zY=b|9c!6sH4&he%F_6!YmIO2F)P~Y6;S^lqo#7=+Y7R0y0=uW;aCx;*v`-2v`=wv1 zoAvF%v45dd73J-;vPZW->kG;qH={v~szc9IO|H>1fLKp| zJFqGz@i;Elr5m=%^m~X48=q>o=rkZYY_4|M4b^wnkv=G{`b~scz(PJ?L3fg5Uye=? zD@kD|jej0Uy#-Ekf)3oOoL56c_4bHPaBy>KSexSrE!fj`@2BdQeJBbX_V=)~7~2m~ zYBvV9d9KnX#rZbBP7~vgZemMqeic8*&ml9+ox&y2)rVZD0knQtyJw@Nw{O%ZeGO>x zRdR!KP2WI2P6q4tn?^O^le{iBc-p|z?&dYQiO`v848+x$@1uUb6TQso*5~=bvd_h( z_6TyeCyTV*3BBSyiafrY>3rMJ(U09;xiZPc zaFDCy!CAVo`+i%=QyhmMJNNR74Lhv&>vW^`s&vl3e4}4X$YsA{^G}S58PkZ(FD{-N zT*0C`Xdp8}udmniI2|+D4;U4VMc&tey*lXv6cqMd$pt8bxTof%YpbV|w+BYYZ?*gY zrK$Q%Wx{de&QNN#j{73eRjm>8vh7~I*Ko3q!RDU39}F{%tUBwaLXYNseb5SQd;lKf zmJ_(&Ocwo4UL9&YcBRrqv`bPN$m7TSfuV6uG+w{{BC&yxNG6qS&EhkeBj3yEpDN;E zzZG-$1q72B z%S=wNe>H*yRk+&H-s&TQ?R0;+^ua!|@B>iJ3N6RSWM`l3Ou1a_*{%-AB-MFC0<}5Y zu%^i%3XhD%&-tOBCv3&~a2&opo;Kxl+s|F!&)+K5?QAqPEYU<^=xw$WGLUx9I|v<8 zaipkZFHTa%s(M`)tSs~1SV{wCzla2J`SktuKLq9?HM8weyWgZ(;zwx(_dtULIE#9J zn#&KZAnAdRPyEFl_^YVb5_QZ%M(TG zEPL8A7Ebgyl0b`nMlZAsbGa1lLp99op}^|A!eH@nn@6DPx1*C>>q`kBaD!6fj@gfe zQPzrxhM$8I9*O3cXW|Gq%Iv9quzwu6yUZ2vGlX0LEnm4C$xPKOFSq&<->QM7MzqM= zZ``v@rC9OGvsC9;Z;ra%y?%Ilb0apjZ|h zPFPcWq4rhhMj`iER~160eedj*UJ~SmBkaE)nyLqN_~z=YI2xY-WLTIbS+9fA9jXX# zf|K=c&M+tc*m8x?VDc%K=MlSS3x38O-fZG%9os$@a??Wf!aoY(F zH?~ECR^Fr&+}jaA{IGG`94lpGzLTycni7-J+mv!9?F}0_gn0>Hv->c zbCm)#PF!+^*vAx&rVOAKm1&=XY=knFDl@_F{M(er0JgE{@W*POkg9K)62a{=@p66; zeYJKQ#;vkwPq;|Ezxo*QAF|RRLvLo@;dLE(K$WJVWgd1%MuDhHD1CUxvjbrt5hrCX zK-e2qpZi+fsS;mHW#3s*L0VG-;eAA24Z^MWAbpS zGIBY3o4(?+<4qlp77E*t%GTE-HUtuyMNf(mJM2WH^kJ?l+Kis%T(X3wInP5`9>g~-_-fV2O}b%WRl@} zc@rjS^+f>Km29*y=lHTE1(#cAO<%NP&GVEx-?9{jDK#0tTs!I9M<3>I0xh)K& zz;H6z6PoBN7XlJ|KrmP({DNAcF6Zub3oicieeK`=udyL*Z8F+A6Ycerwf=aF_kfvt zc`=^UhBhya2VGj~v|_(aKV9n3lF|*K^mD1H@MBG&Za>Fq^nv9#Y<(bN|5e6%dfY1@ z`A2iZ1w4;IcMXQH=kxR709=hrqw9;^s(Q@%AKZ7=x}Q+2e!RGxvU*k9Q!eCU%IOrN zw~QMJ6UoEC9JTl!4V-p3&+{Y)jPNZSN59^;9<2zX>SVA7pQH!q{w*ZO56EiF5$mb+@%Nh-U9V@rfjcj-M6DBCiw#v5TbC$9tB-L{CfHNmFTyMzU1s? zZs3UecOubGmKks!`{o)5L+Y2`Cyex9fsu4MaS}^f0=V)9oj2ly#XzCLlX}yERCc)R z=5-K7(A-8Pqb8yso?~|r`KmA8A4pwhU{CuxixNLHx?Du}Kt$sdhRVyCZ!~xLo-r89c4umx2pD^_@G^cK7uKkj?4z=yF0 zuHGK!LI~V-{rabPt!et3L$=m9A|sDt~L<&>RsW{>LouyXT*-S;>!qT>{_KniH!Ps^;IPoKxVQ>&7KMx1WH3EHbPXgcO=QS5ysNS?hx zDL0*IpVIX3*(r#Uaykm-q1s<}4VqC7usR>mV8b<96%d?t;R6$Jeuf!_mwBD998kgI?3J1uwa^^rRQ zi-20Wu?YTDA;UQCzaHRI&ukqHT|HM^w2TLiB5 z?7fG5^}tzL+^ z9$!%OY=1_L#`ECD^gfjQSbTG91AaKMyi2g7!4prRGJ?_s<+C56flS2#rSIDt8WJ@{ zhV~R@=OA`((;2B*HB|Yi{I+_3y#!T=At5Ah!dz&nyKY8z_3G$V#nzt{MpI z%s%Y~IeH1wwbX+C@v$upn35@;~Vx%9Q(`qs09IsaqDg+JS*sFMrZ5Ds|piGON97cS09~ ze%0mu28)pqj2png%ny?5#l7V>?dR;%$soSJGu;>u?om)D>h@c|`vp9PEBc~F*6PUz z0R*7Sd3Q?pU;@YMX{TlP17I84lH>78W`Wt|xLJK@_CZs*_@i+Fs^QJh?r&XFgt2%p zCG+>X`E~cUpfnixyKt})zs{tSoNwbMOryxHoh7PI7!Jxpt!f)IF!EDEnNn?fi;s@~ z@h56~=TsTKVWfSRFlM<+`#JY-^`OeZpRy!Ad~_q!qp#K3y`IN-SX;Yohm1Sowkw`- z;q5OmHYfP@DMZJEqizTtUh!q#en`A_oB_y|45Zt8Qc*vlAx;Rhh&4mXl;g-7@6)n8 z#eMtRnD=GRD!=~r%VzkNIas#O7;)0!0h!EtqV}CX4c${9CXQ(|hvVE`RPvO127$i7 zr8rBU46ye88_-sfGatX;jz*ulRGNzHh;HGX-gUdc_~ zb9{947|{Fr`)vr}r#gQa&{;)OY`P;fvr!K)Xv{og9Wq82t8k^L3|>z{OEGkSgh+x- z8Fy1@mueAFXnGoFn7(8~c&>rd4mm*fj^p?Z*h!X-hEEHl+CeI9iOg<);AblSYtjG4 zp_?HPWpt-k*f2JW*Lo}_p*syQkO7C${7I8;1>SHKw~4|CVlDogeChc9e7Fx($E^~~#SaX>6fOQ-pB+mOpUf?|*T=GxncOGV`r8*L zfYl*p%YGkUlJrp5`UTSyAjB`Gt>P_b%0a>a-^~cTFbI`(uhmT}yoA+D0juzu=JrOp zVj`21bqYzeJ_qCUBTwi1JTFHftmxv!+fYTrM-}66zusyUwr|1696#yTaNf@|sTr3@ zcFOfkJqsYiX;H-%AM#6OttU@4{WC7GVd4w|z^6h>F~KO5WJJ=YOEWoV#9u!!8nV9C z42^XpK2WV70VOl_Gq(9sm#K%M1)AA|&Nwdnw7gFR{@$?|%3-SZX!Tx}3#8=1QIZYl zt1adMX8h{EG;ythXv~I?)ZM+Jjai!mQN0LabUJ#Tb)lj(hs| zx~_~A+_(JMEOAo2KtWCzRQc@*8*M^uohGA5sGmN=;WK{dgmcuppg`6mFOmt>m3v#N za{i4J3u`BKm(o3X`r+~=!+yW@_5t<|KLH?{8cT!v@VUZ-bpl=~&y%@xL2)U+BN2Y% zW7@smDRsj~O;2cldsqp0qoBwu8=i!x3v+Y*&;;QA?jBdXX37TuV8>ecI%wIe334mc zVpa9PSPeX6`TjBi`itI)D4Ce1f!yP#6Jr1<#+yvnddq?7^ zaIv-@5oyLbqNuM6^>w{Baz1m}qjYuOu`@tluYbx1;ic+=MFRElJOS6!)%u5i6*)e9 z|Agp}-e9S*$kUTOKe1uNFB#D92Cqn-&0)XBIs09u%j0hLt~CG7vRitE_!dsYQ`s)C z3~^vxD!1hIo?nx(fVp1}C39!xOz5|=hFN9PuGKDe4TtqhDULhMSpi5g^L33+$+x8+ zx`*+K_AM7L<}ydr=(lNREh}kx-0ckaEA<|u5ANl_~wA#-?6T{3@7>259Z4f?7M3CZNG&3af*y#A>uv9b#kJafdz>} zxdgi$=TzuifC;$xK$?UuB54ijmg4>>VRohdwtH~JST;_+idLjcN~^%>QKV09d$>3# z<@KQe8&(B9Z@lLUHIoznjHPl=i#deI%7@ndx=!9UMxC_BXHNX|$261J6m6>byvBRL zU7z|xdA~>$whw-?j_God65m)}2Wazt!Hq3clrNTsh&&*>_KO>i9fXK5-;}c0!qtAc zRZO^I%UQVz`)pG1ARt7R3zmq}Gu^-20VQZUqR*d1tnV<`c8Ch~y-s@I91~o@Uo-nT z0zDAGeG&Sq_F*D<8Qcq&h65IPXm5f8IY5$Qq;q`W)|}p zFK|TEl)X?uNX6x7ChkK$@n~@@r~+|pvTV%x8`01Pj#jCQlT@N5w=0Rylc@CjS-cjU zr~Qt5`6e_N*C!?5W5`9U)Q3P#pye;%aN$KTU7g=0Aip<%3=tue{q_b5nqLjJOQ7f% zkeSrGp{)ZdxtJV`juUJ!eLI3fki#3kisK*M@kx?5NU-kDuZwTfqlw_q{9&ob*d_zq zyinT3zWd9f4IjfVVZLko!sag~WNXSr@O#d*Gy`2{HjVcIg)=~uF4-K1-S#m}^6UOV z=XQDd=R0Z<0Iec2N${n=J_)=O1aE*{R}da+!K~Q&f(jKj-#61ge9mUv-tYK~`DS=jCLQlIAb_u3^GCwt zk){C^LlTABvU1$Vp)9rcX$@a4!_{AQt(&A*33RMZ(H`jTBul$DgJ*AsR zMdwRvwJk=6wCa*~e&4O-`?{B->W$m;YkHr zIIqvUg?w9K09L|ZHVfCktMwh|7mHM^xL+oP&JNBogW${4{P48!V__s7TXUB2b*Q^a z*w{+wEyuCLW=vQ=SEh@j*(rko)E-WA2UFYQ?`wT8`#^4-qqEv$)5-otYBAebQTMqD zVwS5e1DTw?TCwee9O4wFOBi-A-B!LtRRA)C-{Mo;efI~xQN(1{zQ)j)*^}G%f5oNcV6M^Mgu=GETWMBQioBa^r>y|nVj}O3-$-+ z&l0D;6U?j7l}XbrnydEjW2Axoy(M;H-iOnvAx1hsSb4+H@zOIQA1DN0qE`i^o{$rJ zu0#G9h7bOB_K_yfB@E5ZmggQ1tM5H3#T%=~DDqMaeG`3x`e~6knM8PilNFT*PzudmNk*QJ@6wlQj?{yaTl}gwY_v2_fqj0DF|DHe+ZgXSJV5ZM_ zM>kwS3`{lRlnD0DjZ{Xl6}d^y^jDpKuk)v=d_pSg^5Xd&efvRcD;V0N*PS#fJ%nh%|Uy z^pij3`(!?ObFWpR^quAG)C3vi z{Az*1DP}nC{a~F1zU{py9=s%%xAhZuNW~@gE`)Hb%{ve~RCW4Y<|Lb(lWNFcdEZnP zrx0*reCQiOdg&7^Y- zIAT3=F}yEQ<#`*+!^t;s!kfWvR&J0lDVPrLalP|-26A0$nFlUe&#Qw1N8t!ZSVmZk ztKMuftKO&0gVQvi2XLo(?+J0>tEWzq3qy(o9sx*lFM^})I>;o9q{`c~gSo*#Dun0W z!3`Tl>GlSeMaTz(eGSC0&kEw$YjI%qi3~EoeTUuD?ME{Z6kGS|!ZGx*c!9~}g-){x z-dpH0dSRz_p-pAX&i5sfVk)@?nhWE?L%a9{4Z7h;<%a-L@5Yvux`8I^vf1ss)0)XE z_b_C@IoV~Vs}4nxh6#alx)CSEMf0FjaoN?bp06B1D0)G|pgat;p>cgxax?abQl;m6 z8Wg~{As>N2l<)S_+sR~s?yih+MYF0$Z z-1Cdr2Iu*#)5tyGqSx!1{Sb08@7E=z*wT1_DXqxm5&4ajIqYzH5ES{8PWcD6;5b8o z-G)zC9c)MJ#yLb!h|9x1^8g_+g#0H=Q_inn3gr2V-5%H@0^e{huG`~qiK#R8tNQ>_ zVIpk2UVB)v#U*zoIf1+$^sV@SCp>j(<2DTMy}m~@Ek0cPzS(Mt)gPk?utJ?fS0TQh zk5u|5?~b5m?z6!1{jQLofG_3mw|kQ(ntjab>2G2s9J~-e)xjj&MWbjk^M>y}^>Cp1 zkEH9`QWJ`zzl4C4N9iCURe?8@jv#^*`TA@oYh@)FN3d`?_mo{oZkXq$a?$;oAX???->$Bf5pUeG3o$kfXM`&VA>>~dg6CWmo7O$lKOdiUO8TlqwAHM4nNGZ7x1wECIGOltzmaK zBkyC+!I9zbuE=MH{)RGYqbn^udED24739&3ymNU%%Vt%hC~VVIO7YbQ5wORKz-7em z(cEmd3t`}mN%Z-I9H@B!UY;JQ$@j0YEGVe$TJwef!bvYKbM47>cK#Ge zzF46%&_{;_PYK=<4-F%LlJNtOy8C0=eWkBXFBZ{DvKdXyzi#_l?w0YJuEs=GhywfB zqd0on?8dA5+U>Cc^D)5Wpkrdh9KUeXG@qu-KHe@_)lKbkU_a0Yp&h5(_lW%Ul|WTM zPEEJPIx|Pcz2-6hCzpaMaEYJKngC-;hB4;8;fo&B#`uJMv4j%sn3bP7=tG9sC)lL+ zj=oIXSEtu6s+DMr!I8Y0{&(Iq!JE6^^T<=z{XY5_2q6OeM(LUL7CC$a8%S)Gl300C z(z9I?P}V9B6NC;lamycfYy%RsKex7n>6{-Vh0GR%4*wP*g3bP>LiI|B(Q3Xd4$NxtS)zbHG9{}KwC4m>Fi zg8XLxc>P!nzO>&P8aMXaOV=Nz32Xhk@Xk?c5AXbNy^@|jnRnAmUE51Gh)r-@S#+H7 zG!<@jAGrN69H#2QSUh;4zOM4VMV#9|go>1^)TO-gY@we$#|&V5QWHLNJ5Z3sh=~*M z=U((q_MQ6Z+VdYUs(OXbb5%e*wsrR?J8raozMPEgGE?y0DV4!dO+dqk)R}=TKDyh*83Ix~V9+j&Ii@SYO8}&(jxK9p6e&4SwH(PZy zO9v07ny~A~gA$kFwa}^GzwY`7Y+FjNdx+JAO20L00^oJ*CFgOOPtt|047|rf%c(Re zJL)&Mzl4v(Ro_->>?%5UEz`5$bAF!}m{lDt=7=+i5BhZ#Z!{-4?}X_Vr&;bLD6P&cl=WTye8FewjBBIat&-ClTMHk8K z?tR*O(NwpIxsmftKM}$qaEA4!?Kdo>()IBYe?Fha#1MI&tsntF?yUP4MQXp2Aw{X@ zYbvp$IlM|XNiwhx?J*kKPe`f|-LapeM;-G*eFX^&em_9?LAO%o;}%3l^lIb7I>5SX zo8^El7<=y!mHI+fUwFOD@6QO^xl=Pe9vFx?{C8R56#9i^(2P0TIH1Rzi3Zb5)$39{ z>`+XC?=wBBILZ6mY91^^A4?eyDH-f`-LMB(JK_p~^sPN67*!Hyr~)4|K}w`|xI{4s z>hiLR%X%N6JpdzN9P`LKJ9@HATh`wSlf*r9yT04ZlbUwA7@y1cSWZ;Y#VL!d<{OcRitNtmvXI$T=pEBh9wKQbE&MBx-f;m+!#6Yn9 z^A-&d1R(21}i5gIlL; zt5>^#mB?&%tT7dCM7g(>qHd6kUW{9Me-90KbxQHrKr%` zPQk5R4?nmt8bPMnW#@w8?7d%eyWmm_@lR+54F;#u`_k@d>By%f0)nszB2#emZq}{f ziw_N=ppHk|GfeI0fA`n*)|qtcfp4q*r_$pGV}0z+jBGVdHEUODLts!EC3Tm5}PsS!w! zUt{vK?-%#)l)8l7T;9drXn+O}fqYou5?0c%0<#~c8sL|hf#tk`m4ja^?7XiE+o$!1 zQHs?shu6u*plZH))3NmTZ?IBHsRFTz;}rg@SQCbZ4}Ld>UwkKVA@zV4z-Uia^&^Wa zT5}Im4!t{~EXYa%F?6GkSnkDY`qf`s-O=*?g!e^R)M^Rs{Y@e;dN$T~>(NkdVzzs)o$T1J+j zMh$y9uXqIFJJ9yPrtU(#iUPlHEZ|EOUYL_TgLu-OO#zM=lb~*5GM*iX?-3=8HE;E> zw<$GRAEDKotr`X_YWquLw}db(q)k6QMa1d5dxL=a(5OQ+X>q)L)#NxqRA7~WdU&Qt zCBzt`U`te-ueH}X)_Ero0yVFvr;rL8RW-=ry3vEl-1v95FkAV&RuGzb{K*}HRL+aP z0^Y`rO}+}cr3!oInvYX<+ebUr02~M0jgFWfUk2a6c)Y{zHnQ_L+G{~T1vKG*kEqJo zjmWCajX?d*qs{VM;`L!J%CL$ZW>>-YpngXset{DYi()%~ONy054Rkyp00IL5y*;)9 z;R8F{u;XR33k`x@@cWcgzklf3i4n@Wue@JKw!zA&L!0r8OxINrK43$z0j}mdkUhf( z2dZH1dZ!lPfg1CgT5@?Oy-W&dG%k_xgn~AD6B@?4=Z#OcL{y7uIf&7 zrPEF<0N*wO6`?sqq8Ma0L&zJ-|m8b(Q$*4V)K1td#6x;Nb#Lmf&W z$n9NmKA=5_lw_O%&wC2^v%oI(1dXkidI`=mY#+~h~YhL4mgQuw)EDp>t;W{ks z`C7&PT|RrI*<)uD=hM9+-B8nxg`T5P0dnH&)4#FNLv$a_^vM35CWe3@`<<~tV!yos z0@-Wxd-f$s9#rlWZiEzUcm(5|IR3E>*fU(qr@U~#(yDR&42A|+{Pfw~D}vjYpP5(^ zHDbJz#mtqnu?pZKr+XekFt6`8KJWD*;%JXrxr+8$spPKW;0jr=2U?X^w*#)>(mYLl01xaaa7=v1tQ8z@Gt5rQm4fd@r((40k1r$Bs?Vd0wTH=_ z?ES;QqRToT&aed<(*9aXEuUM+QE*9K*KCDNjl+Yrz9qVi#@fDjg(8%^gHH`)WwJ?k z2*sn`s`kw!g1x}<)AtK%n5X4Ef(Q$Brz8?tW-<9Li#sFY1)|1k`yXO&Kfy~y?!h~Da!p9TCmwkWoRQIB=KnOO9 zZ(JeMO2Z|R%++#i&9@t3FU_nk-Oc`x4p3QF5+E=q}A<#(ZePOhDT+eV;CNPp`9O=Cd1Bi=WhiyD>F!?_1SxwJR=C+>cg%#7Ij>`QF9aB^E-TQc5FQFR1b}nsE^3vTp$lC};8WlZ zd~me-Iqb7v!DO~PftBqm5Cih<60NXFXH;xTX>h^SpkSchx;v2Vj~%GJ+)bw&<8*Sg zkK44s8kexWb*$*21d5%!)@uGY+X8$?hd?yIa4HxSiHG z|HTaOcE4lo-BQRYA2`KLpEUcf?r5Uw9qxEVUTXKroH?Xz09AYk&_=RBIFPPTe2SZc zH%87E?9LD2`pY=55UiF$)i>q`Vn)i~cI#tLJ{3r=MUHIVq*w;x@$vg!puDZqn&6{f z=U1A_6l7>b;`NMXWwe$FKKA@)hcQ2hJtpBKMXa2&D_sj6+39*hTzs=e)nugA_gAaS zyzcy)2A(&QjswE_-bYdHBRUCcBoF&HgUdBZv@CSV;n@_eknsT^*ul1J?)7B@l)}Os zw_=Y*4MCs5tk_S%KlE@<)L3|a`X6=*rB7|efv0{2-|Om8w}W+}Ubt;#50g@j#4)>~gor7#9es z;s+U#J&D4Y8g0Kozh`TYng=6Xy)N7QcYIv)V1S=d0{)&dFy^kUB8Z3cHDv!xu;;O< zg(@@?Q{^t&6+q*@?GnG}=WPBu+z);&= z0wDtYP-%Nw{Iz3U_$1}+MtM%!ZEzxUxxgzv<->Yg)S^%+I$ej^+22EJ1?+r?48jt69Lft3Mk~IrK;9KO$f%@I!2Ja)Swg0Yw<>O*-72UdN#?6fjW}7>Dg( zJprcG)B9dfaIyi~sC=J1+v?a&W6lV(alNtMr&hW2rtES2=NH@e`v9W#6+h8ft?QXT z2ZNn+z-Oy31`>|^;moNJw#Z9Vo$m?txsYxM#~7v@a%qsis+0R0g^9$I3H@UdCA9WDu5_Aj*XT;eEf#(G7ZtX&;!mrf(9vnDGajr zk4)VA>}K4AR%pIR3?!3zF0fGtW;p@}%2=1XA?eR53pms@MI0^h>1xPYjWKFYUQbSx zs5!(!91k_Uz4YGnynBstyk|O8E^f(J{Wh#Sn9zUM30+k{JAG#UrHIV@>Rb#WA$9J< zfqL}EY2QAun7J;{(K?8S{W`K3gdyPc(*vjDL*Rni(i^)2ZYz_&IQG6^aNh z`JEAb2mP%a`q%N{ZYVUaDXr-DH8mONTb(;{@%9~1 zd<-W2{SrMGI0; z7QM4a(#uKj43*+Rz7-?tG2Bk9U~>7NqcEHOvf@qcJ6_`s#DO^bNjiL{rBQ?S$gUj_ z8gutPj$m20k7*hGrVll9)4U``_ZPlKw=MX^v}N#8#?};RT!bIM`>Jd%P*D7s&@7qI zk+ROO!rTabusQk`<5efx(R&)5>uQSh~54nlWvP5i3%~h|{ z`(Esw=5x=yZK3x8Z(4Y;4m^)MN+&(-pIX8C(vYDX5?mB9#K!G4tL3a^KIm zXTyg3(!CMU(c@$cG?lpljO_}%Y@ilhd6AgU?QGQNeV>)$-j!6epts|6WqIh={Xp62 zo-Uu?_7>lkx)d|{^q21%x(HW_>bZ{?MIo)^Z) z*t!1Q>GPAhqFLN3jn>Y;q7}O>-=%~Fdb&<;4VdSkfvj3q4eMMD3k0@pkC)n01h@|L zk)<&rIy$wEiLnlYdsVW@>=sBE)G;6pd-}7O^k;~);~ppWkAu{(vCg+F{{x-p$5W&T%45w( zZqLDwcK`^U`p3wK)Iw`K`U8{+moU8Pn{SqSNt}qj-_r-eS|T^J3gg&=emFjKFTKN; z>zkZJurT8fBx@c^ohfJSaJ0~mQsmsdy1#EOzg|jsElZW%>j}u{n83bu_gCnE@Vk!X`=eYbNGt>rxuUTUJ}oo3nNK~+M?X4f2CgjF zb4rCb6u*meU(2)PK-jW_Mra!$PAKD*^ONmspO~M2x*VzRiG1lFhf9tPupyCAi=A)0 zN|4O(fU7Z@3qfc|I%8DBuv53C@m04&oKyxY| z`5qtj(`9^GfYGri(lz8X^RtQGFmAl-{qP0T3*!=&IewfBxI+nl?ODn%eDCk)M4v13 z36u(w$~m8W_D-r5;)Ag0Y+D^1X#a!yZhFrAnFhf>a$aJ>(T*m6kL_J%ed(s!D{7h! zI#JfrTGKi?Tt;Cqyl_L1#5Q#Vu?sI$oz6*+JmApjeMx?J;-N>9kqf&~OOWv2M}dm# z8{URRN%*5wLLE81%lmD1Kg-6q929%K88Ayy2H!nU>u)u}@>^8pYeL@nD!<(wv#$7n z10LMra{TN&-FiVs$$L0&O0{Go-#YDkHxGIIokcpiw`YU%!weGt1%PyFe8;waI3A9K zeMniSh`QjM-yxB636|h`lPoVjyRk=#=)7Im&!0H@u}3e3QVPhbZvbI(oFqK#5^@B< zoj}Fm_lW|A{=nHLLN7!h9sTRa-q)X9>le>gIG14~P?jUoqm3HgMuYldgHxU(tj zo=w6$KD)0N*up?SK=~))mDjH8SV-LEpUTl*HdQ z&ktn;Nyr=9xvGMu+PPV++fT)nV(V^&9|ihUg0-|_Rhysnq&OO+23q0F6j=jOc~7I*cqk@w?Q{m zKd*%hG?#qtyAN`U8R@sM(c|(ym9qb+BANES&zo;U7XV@}(-T8um@iaan}eXlAn3xt zbH5DGWvmxa>z{8OgZFB8w|FEDA1L?s<{6Ra#m`WwGZ4*T6j_uo*I7@``kkA5ys|#B z>cc$=zV`=FJH8(1XOhPper>4HgajHlTX8KJ)evsiLp@AJf1fbh$R=aby>+rb zWvYC9&d2%w{s_X0t)*po?d`#*(Zlb)KJ7JMke9r7`oYp~OFZMAaUNN}X!bO!R;rGt zAEJtG@;sdNXNF$i8+e>PTTSKcXSO?sGGtT$>3S}FnzI{%8&gI7w@+aZTeg_%N{RYNa zsq^kAe#+Nj8-n7Iu=u?Y$XUw1eyx7WN=}_%%!yT~IMgD~xYtQ(3r$rVQ&|LGNJeMJ z9;JBl)%r8jYx$!0Nb|kSuhXoa40C_QcAt3)vQ8D!J36h7qP;a|->A;H!v6_3{XB6` zz~;P{c`}qe(KMm63*R387cQh3?!y@Tksh%1fanztl@6yn=D$nhX@`C!&!(w0a2wti z$^CGIcA1r}k)OM@o3gG50cspx(Q_TVI(09GeoYRBl>zs}+hOM_3riiR<-4wG(kI?f z{kXj0VCk_<) zrxOqu;32c73|$=@bz#F_Z0*^9G(KT*q=CvDL=l|jQf&#pPsS-m@!J@OCzA*nE9)d5 zvus6TYDdTk@q3y_az9Tr7<>wM0g3;$kq&=GeWc*dr8hr`wetrJRqf@yV;_YABMb;G zvr6;GZ{XlQs^+~#Z~sUXSz+uD8AWiS-x=nPK&E8dgD3akrR=*Ezn$r$=Y7(^>Cu^b ze9|W`c<;CUgW(bmB+T1)O16F;KNmQ71k`6=C+$AF6`U^-UN~FUXlDz5%wARO8Ja>Q z?(GYuhMC}a8q%e9>*!c?3WP-e<`~vVvH7F(=4(|fOE3y?GDW)HZoxD6xu6@!ccAz3 z6HaA>MF%I&c&BpYbyA%P0anD~$`EvEw zOXbuC{_L)!(eP%}^q3%C)5J+n8s!o+-(ihi7npa<K5_4>qw}I|_AXV`Yo^WK#TLLlps~6o)Q1UaH!yNWq5wou* zf6+$Z&(EN$OyfQYD^Qx0dA7Oc+86`1f2r19D-6JxKe^mB@rpv!sXgU>#Z<0CK3M>Z zglCp>+m;|WH_o9PyN?2ai%*0D&(Lpv0JuKW6FveSNYD4}Fb{M^pH}ypX4E}9mgLOo z#7NHB9?GCaqE`t2icqf>mbUU5>-g~eh2@4ZwD2B1^hj?*K_-)7eLjD8B*u?;V`F+e zK6CgFWt+a*mzKQWtf+|&kQ+Xg5rvf??ANq=ow8ec6|?g7NUroePE|m>V>>tmY0>>8 zdL0TiQ@U9#(e@CyRB6=o7H8QHTCm(JujH3@CS?72=iB-9s&g0y_oN9o^}~FvN9!~< zp9Kf9<(CYr%QR}nwfvn(O?JOifLTT&L)b4Zo@IZO+jxyghUEONCi=i_I?U^bWc>B> zaG6tXmiGb7^LKGx(&l zL4HjsfNWZrZpU+gDa+x&fvr{SmXC~Mt%c0@5B{n=N2_e*t7kRaJ*CXUc)oa|^@Frk z)VMiymC7PR>{4>mHTj`fA(a+_OSZ2K{e3JvR)vtLi=9PTg4eZaT?*&mQC*f z!aK+F1A<1)%ltf+CDe?}?MTmd;wG){cTbyp$M#%m@BzC4m2Ww|+V;$%6;=)~62xoi zq2kE(Mjmv8LP6C|T)qr|2%J2;{9{O}gR}zJ_a6R~1OV(0w~$vJMn_alfFtPi=^x$c zsb>75ClKQQ#CIt4T`MF$s9M_YLToOggT{^I-}bU--1~u7R@xRk@5MH^Tljeh=OBlb z$Jc>q9t*F?uGSSBaPl`7Zt5**?`|R&m+NW#p^+`f5c67rw=(SG>TU{hM2POmKl2K- zFl^kP<3g(*@LCvz76hLEo@i&1oy20^HT}MW!9mshz&*;nWInCM&_6(XBKU-hKj}6# z(H_ATd96SF4OA)56TZ4$gMSjwI6%rrEteyxRT>Zcc)qxtUOd2DB5PavYh{Nit3qRY zHrkGV6Q?P>85K;cUXMMpB^P2mZ=y6A-J=aQ>E}dJW2(}Nvz7Ov@GtSGu;QTN)XN@S zr~*8LyLJJUhq|P$Ywlr;J+Do)2J-LmywZcq;(CuA0 zDHOU6+3PUOUZO8oq@i$J^w&BL;L3jN_ZXm;#<8&9MZJH)ikC49XJ0UMRPOIkx$PVk zfrzf15L{aR0w>{fAV0dtVf)#p^X*uOs>nm+pX)Z-=rvgOWo-Q!zd|mSja*Q7s|@?( z@43!zx4d_G`yJUGwPOZN@k&2kk`$+d-IC#Mo#c3fA;>{EL&uwTFI_PI1iNme-?(4hWu z-aek4P*FUKzcAQu-p>q?o`=meA1lb`{Wf?6Fg}bC*0uJ z9EGsno|GKlKTSb7XNogwr-v8ze1WLW5Yp=M@|aEqQ|}nNUpfM1J$rP^0)Z5xBHYOX z7wuI^WB;C?e0_O6X(hqNE@_5IySR;Dj4I0U!$y}t_`QgTtoG8y)IIksSgW>pDwy;4 zex(nvLZYNgDcr|(c8AA3p=6*61X-+2yllYJ1h{0^8>-MzR5M9@Zm@GNc{yjUH=Hu! zp$dd^3pV{j+C!4qFJ|)9@{qrLcCgl>70EqreTPvW>s276B$GXSLiUpwECAlb+gX|8 zyI>sXeu?+tboX(x*CN_+CB&!S9#7vaKSO!v+B<@U&0oP?E%YHBOv!qsn&VAd8@hTU zlvJlZjlo4bLwx>u&$rX-TIF|=s&YReDoDq=uD3?_bqj1MknXCdE3#HyjUm)D<>I-)r`Q_S{HY(p~woG#gxjc{N;qw4lnghwBhh zwuJ14brr8(a2h#&x~10P63piE<@V*73O6x?a~lcwENE1;9NZkn&vS*WfUSO+ zfj0vNYh4KGv`jC#o}9b0;?EER6u!7ilpV9Y$8xaJvV zeU1ha$;+V6ft$i(g`hcAn~xA!wGJ;c;UewSJyXk}sryUPA`Rjgm!o6ekSq(tz6nAI zL6k|F>^2wNgwcf1{bEzs?o=-%0QNWN+MY}nMqSQ1oPUrH8>BDlRct28&_Rr9jCU}S zNVyT~0lRmmZD)e|_KWqnx5pxNQXtlRQh>_{+tbst$HvnKfg_%ovw!Zo0SV#5!&rBtsmo9g!PZK{VYl}Z000`@LO0IG zb&toD+e5@ceVs9yO`RL(cE76a=G%u!k06pBE}v9Xz>7PPMg?ui!34+so^~~3D}27+ z1^A-{T`n6?ylv7DmTd8!MXaAEGM6N}Ur2`iW_9cTUe}?iKL-eWU5NJWSrB-p6V0b% zAC(ynfr}V_!ydh_xrKV%Zz{A54X<(&fCD{5MIn8`@Z_}bFptYCwpjGoJ@VY!BLU3_ zLvh^8+2?8M#Y!bm^=Bxog54Bzp9cf)I%T;q&i;L9~!V@5Y z88D5Dv;jYC*>6CJvO0MG!oG#tt(=HDL|?KE#)Ah}%B$sfeiB*)(b$O}gdz9lgW1 zxIT=s;*EX1B=E@*GSOZQ`JF1-=td96%1F&g-UYaNUxyHm$vBeBRUA=XBn2>2_qbLT zzOMQSe9-=>@5>y2UXYXW(}eAv>E*hSn279+=|}BLch3({H#HQq>PL$1$)`{u7=e>ghDZ#J;S7Un+qZ*FNX2u1vAcrw;xX=b3{L;sFS z4Z(u6rtY{QnVR!*6U}dR;k~?VpU)E^CRcZL`48iJ``Q?Xp{Vv3#)pR$Wn}K#*7^}& zX%`N8%m`E-whL4wIOkkL%t4e|&my0_68x~w^UW({9v9dJPWv5yuP<}_%rHMgXB7qe z#Xw1E?Pnx9nG?RXc!#eCt&`hP=otg561-2Yfa0jH;|^BaH)Q33Mmr}}09(^u6lsUY zH0S_Vt3c_;5Y@Nl=k2yH6mSjS^7G9_cf1&YJc^nEwWJW3ZwS{u7elGJGa&y$~L4# z4(VBN3!qb1u;R0W)N1nP?(LpnUEgPExq^$ByKC(2p+u92$Xt#*H2$FJd;~7aH?L3V zqJ&o%R}-gWKZDhQPh<~vlx*h365ub-;LeGt(VqAfm~i|S>8uUZ^7hotlm4<_mlTSU zk4|RUeJ^iFM=Inrdg=L*2r~x(q;M_mp zv^}~DgHzzGKEHx#geD>0e?jIZmT}2U@|*rie}h{v16lnNk%m@yL&8yw@^GYY&do2R z@%2^D)(sIKD%gg(2?wTWct#7yxf_^V^zoG6>q~mriUuFQQdf2zorXODc_{SZPS|=b0CGLh+o1z+z zX@BEVl>K(MXXqqf%ESA4Ba=!${izAnQ8aS@v#m@DCp%(XLy~ zEzR5ecrYR9d-`{XuGG~@BEr09Mr=>M=~kC4FV9`p zD(4>}K1g=4zJJa4!*twhiU1V;LtY(`SzLn~tm%b!duSiARYm;Jycw$eT)H44R~&P@ zQtpJ@7H-B>%9_clPIMO%n)sg^Iy)8AtIoSWj*zMYC9pEEf2B4$FZsL}Gyo45;|CF3 zZg-hMe_;4LdMGb_()IjIiG2sHNFCVcpK`h(j_vDt6-B$BHmMti;UYj9B&E;043wEP za+SJk`M@;gDm57E;DFNZj9@hSt0QlYFI4B-Ba9(UY@MyEFR)HSTrYOFie|N!o8^&<;i!&7_g! zEK+9fnH+Y>_>eA&dft~in%`7&enEBG)`vGhL6IjJkuL69Zo)fk841k`-y7uZiUPqI zD^oaN&%rNaqfQ$@seF|S?}t$g=Tc~ziIlQ)3*HfAwIMlqaRB>E5Pg-q#LKdFE=Bo{ zCW(4Tvps|30sOlB&4F(Inn7J$i%Bu*3B4?XxHhgQx%{q2P9IlnPGfbjAbZHz&n z7^&says6%zT*uba$b;QR5UTl>`sWq=$oi2dqHKIDf~Wpk-_Qs+eWmNw^Xy=|-_K`g ze9z9t*rBJb{m`nDX)tuCCx32?ZL>%(eOk|Fkb-=9{x%&81H!U7#99mv>bftUOhp)- z`P#Y>n;pCr;+Q$V67V>}XLU8{gUajobWq+7Mz2f5M!ge_xYBILfV)gVv*bmv%l9xI ze*80oMy}UBe?Or!x=-@Fb1bV6^2d8#0M)|{f5@lXw-fif*POCWV<54GO4)F%4-3Z0 zjj+qeY(`19?Gv;mZlB%+^(6<^puIa_vce|}BR_#3M&bOdsp<(-pJ|xc(b@K_YV_&X z`CFM{q!%i6TI4bM*o!*mjs1*O>0G41x=)(^~#A(01*hdbmM z@GICeO1|*vxA)23^Kf`~m`&A8FtR*3r5}K=MYE$hc318kc&I(0!A28hY$Gr`;K zqJtjmxt;hB1F^==3zZSbfGgP;fAmxiMe6!d#6(F(Nau+NZV-^%`r780Ki3IQQXWdqq)(sw*CSa0*WutI>pxQG55Xmm?A(c_;L!4+Sl+* zr6bvvrSG<`o6Upcy%s}ZRKn71*+Y5=;* z+ZhwgjC9GsT$5LlWnm{Cli+ujr{gY;E-XtCdh6Lh5f)P~0l(r(TF(t)I?=FwHl~4O zwoccejm7#WAy42V_`R^ivDdnbPtsS)6vsHba65R0HTFtco553aD3^C4-_Dxwv3&;T zL;aW$V$l~?gJA;b@nY@KH}IKgs z|0S-q#Y%d88c#>LIzwIjdz8P2M-qq=+_2r}8iTcDi*oO&Z}l{H+g-Zy`R1_A|ROYYW z{QMzc2?eZQ;F{x>!UK>VJui|H*^$78WkpCFfqu+P{29ZK`45obA7UZCjg;nx>4*PP z5V3+GGenW6PmsvueV0XNG>JKs#Cq~7`gpd#{>t0hGAI-$e7AFH-)sC zm+>>yZ&5|t4wOm=(?Y%vc$(Sbi|bXk=#S34-cS+PORP{R%_6(Iuv=9wm5|2;9wcLt ztKs%kN8NQ6@4#LLvpRHheC{IOvQmNEbS4%f5AQM64erflOeWkr5OjTHDdn$6HI`V(py^!HjPdHJ+XW65Q`Cnr`b+ znT!Z>ggjS?n?2|3$Xq_eG>%o^_4m(gcQDVJsr{4e5T39YCMD%dX0^*#efj>%=?Zzz zMme|p-3`)jbI9-SFDJ{oKepvb>q}FyV2Q#k#bZjV09@{Oaqtz_&`6%E5v~Q_oAGz> zz4t}(o!S>_OQq%ml`~!!$o*;Da8OSfmCq%{*`L5~u22po;0gdtTjIZon>bmhOv=vB z`*LE131*$pOFUY0e26dCTiQj1R|HFV&Opxs6JCGPkb$4vwrm)pAoogR8;8~nC4#Sd z^tADSOTnq}_9yx|lAk)AJROBgL~7wDy%1I>rM;W9uX$xYP_^yUmO1WFc;S^?(il$7 zfV{vSf!oBsVyHRe*2X%WI_Cqyr8jxj*t&!L$6^J~SZ<*5L%y2Vp2wJfb_IFPf2cwm z34%|bnOJB^F0}WD-B<)ul%KfT_6tHJ?=*PjDO}!X@p|~ZN8~LEG6`;M(t}X?xwm;< z>Bc_s9Lz4ZD>z5c`hgXpW2zT#TrmM#kI+hovpwo*FgoQ&e~0%7HYia$O_aJGD@-KS z#QoOBS+tjU?Oab}Bb%3LbUOk71}rOvG`ml&l`f#}4l1GJrY<_|dmr_>i>Qv^sY{C8 zaJ7kZ)`v$;mdNK7w;FNhXWFkv6Tb0u+h?V9=>3^jaeuf2tTX$V+;Jc+)|vb#C--mybTxPp=nMB-^Ly#a`X z^d*J~`#PId>}O63)+VOQ_!-#&{)W0VkwCNAp&;q?f?P$Mx!Z*>s3qQ973jlmCcgK5 z#ltKW8yz-6K6J)r9%g0uIWF5x8l=BkxS8NN^%|Myw=6N^(aV|eAxyot=-c{0SJ3!@ zRB01}+S)%JN3QC5kRf!9!!mUL#3r+&PxXGoU}>yH&97iV_;Xi2U48cGv_F~VIa%~Y z=O_;^pOkQ%Ugce@EpGL-GJ}b>jXbfI@F@tkyUN0u6Vn@>l^faiJ(KSTh!mEj&-?{r zX*SyPjk9e&go(TGr8MOeTP=BCtPpQ3R0Cvbto2{|Gbk)hw>w$8b*-YwsR z4};U}U$0*@Ed|xHM~a=%BpJrjPR{T|_8naUbdh*G8FQpIqm#fZUgi@K$nK= z7;#Aho;X-@0A?GZ133GSrR&;K6pNz2L=KNc1q2aLfj3E#5d-P#XHz|E^-Nb=iXxYD zPuRh41Z8?SK@ztdimjrVwHkiFpZzu{$lHO@IGZ}S?P)p`eiHZTk*;5nuxFEk$=BUp zO)D}Inz4M1q$ra^R75ALNZo2%!IYykyILOukg4J&?0$Jmhi+88?S8*AU2L(I!hnN=?Z6A_M!>dx6N^Gk zf7gW*!;BWE-0QeAl5s`YsNaIO%?w5tZUtG#zp8)Oq@lqz-8WF4HM;xX#h%7lJLduiPu; zFGHZ0OfeThUG?7aa9guG;QtXS_7i11+-REL%+&3@E=YFa|1{*|*~9n8_tt!isaX#5 zetCUBe{yD7wk(+4E7N2nWyK=VYgNglxBI@=u&q6Vw&wMZ`;opKtlv~1&VLEg2<{h; z{fPt`nmE_+5ar+36@tSz0727}e46*NLF8$(7>^#ewpT(iCfW;tnZN?*#b(btRNer1 z3UUd+gAv@!s`uo~(CTUP-og)ixt^URPz`i+DZUq9pMI5_8HxdaZZybX0tdO%`nPCh z3U)Ffc#JpH;YrZ;y-n^hqNWzL`GL$hG!H1Kb+^E7-hvhDDUEW~x%T_Lc<2P~ zW9M9&eLz|mzL%L}o#WxxHP-o*z_EJ|m^$CVm_l=5?a7&7EF&G@056#*p$~@O_<#ao z%tkeu)<~O2$Zzmy)p55K`Dc@&bFMAg6&zVIIzY{CBePi(!p=7?bV+6BqZ@S@-wELxF%a&qu^>E(s{(BMqquk$u~}8GExLgG zPY)N@G0u-83XzY<&%$&-3$+%tt-Zm zfeFtJUj3^HYI^w6Kby^H~2D7bv0>kel@5tmPjXkYT+aW8F-il4utS>ak8Jr+AX zD`;_T_U9;7EIxA=msGI_v{%eSuLLhg42172O`yjrms!#v9k|tEL*#0{9FAzK-I68- zisE!+ZdDvtFJDd-;vO(Ut+{^DW;8119eu9DDrl2mN|0qQg_um!(_UsIkmU>Ktw*-`VQ%aZG|cBxawbU?1x4hPPAVrDd)1R*&pZ{-bpmR5x<+8;pW zIO1G=2TPSI0kQ6w;W5|H_d8horo!)=0t565ex{C6 zeZ=6s)@~NCxWBkLq6}V`tIWF|l%A)yzD2UbzE0;!7-%pp_F$2&e12b=eK~*Wdj!z# z5!j0K9q=OyWJfCsM|{^Xs-eQy4%XFIe7rFP2f|iH&f4z@mGB78(MLjbzY?K-OU>Qh z7_(t_)8#LBSFXH&OnoA4?gFfM8un{YLD?Tv>X;P=YXk!DXCW*)Q=Ay61I?T_yXXO;~e7-NLI=LD25-25` z@sBi2AIgK9rvO7*MTWJ~=>Y)i6LVMA3+tDr9|~9b)PS)rx5w>;s_q#j#`X^CbiJC^ zdUN0z$9#d+x7Wk+Rzca;z3-CAf||Y{>8*#&<4lcv3ATDG(+= z4UPrKam8z1%}PE48g6|VDz;k&fF1dlaJ%8fA3J1(D@eqj4{--c{Kh6i<)%@>)#d5% z!{yRJuHA?a+oWUof;s^Efp>A~JswZC+944Y2=$<3H5-WfRi=K1v^lnZIm!cjW7cqN zF26G4%JC$BMYz3q;Sz*dIxq`SO=+Rmb_9osXR_a2t_*+bTMs){WIk{Uv_3-S#*)I_ zch^$g43!xQI_#c10Z|(5^5}B=%fC_4pH}?30X>iW0+>63w@qtChQM(i$@RjvA`M@WA9&-w$19NLn}|x=S-#62F7Z!B4UlHCCi-#=H~vL zLE6<$>G{r-gqKV+bva8Cb8$bv-~}q?smtz99tFd15z;O6(3N!2R^K%3;57`0hX>I9 z624Y!pM=7f@8e4XO`Y$)_UBES)mgRz7UvDt1)u$$DSM{S(DFJ$Wty9p9&~y6lpjk| zjxSxg54!7~D*`S&d|G>ebrikId=`1{Q(cU6ojPjLv>Q(E9#4<9*#q~xUEOz!5ZPH$*GYKTMh@G9v4zRZgf41bhbGHW1U=G4OJ?0vm! zD1Tb*Cz9u968jja^nsFgKb{PV^|!BN^7qz?C%{Db0MqY-N9ynZ%gs{_13G|(q&t3r zKW+ncsW5IIkeU)=9x4hx0d?z;{(kO7z1}!;A&#^2`d-e^je;74^K(ajYhMb*pY7Fr ziL%SD{m_E-_mWSq)_DjLrA^g%LGG+8Ly)PGXQW-`2ts#+EY8>>JC{Ef4#uSkqC|Nx z;~$5RFAL|52wPqPtnmOG~esC49JeVte0N@@;_!)oWnW^nyw z-U4|Lt+6?5!&UBD{^~rAS9}5-ca<6;ydH6fNcc0sFFS$}i`k5!2D4Eb2yHl;~mZ^o!&@PtkB zRVrRl!p78qsEt!}VnCu4bRBCiAk7@}UHt8&&v`5Ov;n4Sk7|ywwdFup!MSn$Zyp~u zch!AExtgwgNNmZ2kR^QOmZrQoF3Jn>yT|a+RfyTYfiQAxHyyYvZp+{>mR}Bkxn3Dw zoOfY;CU0^ZnfBrVdl|-`#8Whe1=@a^iA&lDj0v(eQ$ z1!2G*_`N#ATQ<%{pE5Wkrpbfz9k~Y=b9vbFt$@nlIs38tww)g|n<*J`P5rhl5ZVrw zCo(|)B02R$%))hsEC~O+JuWK4gb*4O(Oh zI_KYD4bQf3(t!-q3YTvy9f#5g$^`l+k*h0goZf7dG`zkNFrPR~(J~0d$=q*rxBsi^ zUhnj1Oqa_W(t~;~=3Q(K$4UbM3re^^1&oLM?tJqcIA?q;Gv_vT?qDRb=Q&3hlHf@B z9yIZ1KJVEm9#F1D)^$tFoh;}X6#YefOx+vz_WmsMAxdn`&~R|Yzc%uwHZ##Td%`xd zAm+U0(K${=5iEY{tAYL9kKUjDP=;yCfAGe-@jX2!12~{&)~)5Q)W(y(<`w12UI@41J=gAh6lF;YY6led)6;xf>juu+tNK4Mz~5(3Ox+hK`ew{ceWjLu(iTip=$uJ;c|(BQ+UooSE`^KUZS? z2neE(VVZt`_}?dhM_gy0nPhJTPSw_Mqgm4sR0xl7e|vS)pJHo#1H41JX&6VzPw#>3 z#M`BKwkP-Jb{6JRwkQ0s*9`?*o0`(=IpiAjdYn7doyU!K>l4>&*4I4ToW#F0l>u7j zYl@7WYUUa#x5QSS#KQ*z$v>xb;j=lXWq{@kuJQi87%{iSCBgLmczr#qr>|9e`r{KT zqwd#f7V?`eu(;p?naUw z;j)M-l-*}xB#1+q6Y~kP$yx(LW{;@Jyb5gd=zFR&o}#w%e^j1Z?uG9Kch8;JJwo+Q zw)M=UZLF!3*b5$h)v0#B8;`saVODW>mQ6FXrdlM*h7eE&EZcf69N4PpQ3CZQEGpf! z_dT?(#}%)?(CyFn7<#;6YYfC@Zm>%{yGwE)dSd9gMH8TOkjT3DL)yDwlYDp0`>BS0Kc%S5K)wVIc8ad1>NKbM`B8x>qSy z0!Cz1hzWfpnk4fYx2>FEUd!fj^C$b>PJSfX#-bJq4YZ+q`_ruR zQ{=O?-GKq(?>!SvK!b4)zsC|%jaA>PR@13Kw{rOb?ZmV05wqhrMt!J>m1hl@7Y`c` z&WD}dHVb&TvfFPwNAG$;Tu5d<-}(?VWjvwY)#hQ-EMA6-ga z!f*g13cpK{xw%5(rd{ZSST@4Z{Ux_>eui6=_k}QvZ(ytNMDmX`(YYP;RO-9T4ddm_ zwrvn^8Kh`x7gKEq^Xkns8R_Bt-p2pPclr2%hf+| zf`asqI(3)xN8Ii&;&t3iMH_s|p#Zfx8z+B#Ji{>Om1^JRg}W#o{pa8ZL?%_h>aXyg z$H^Vq#yGH{2Se8Lpg_Ecn@jCRuC8{iGJn5eCzsyxtw~?=7TSQ9fNw%;->G7wArsrI zlfEF+KY&9w%2ev0zj~|`(X}{9>L99%*4}Ub8Xl`PBpXyRB^E$7uF^j8Kh-$!NiOjJ zm97YHlL%=H5E9mjL`|ELxQjqO`T}`ao2jtL%57Bb?RZdF`{}^#GvsAu=nESd*6rZI zMlik(S3r1pI+bSKp{btDs*vHW?Fqu`yD(@5A7z1DKHCWR=_jAHDCtCHqz{5lU!4!k zBl37}xZ$_m6D-S%mA#mgdVhYjjAN8G;S`+`&L$B`{df4ajqlT4_Jut-IIq|JOnah9 zd)Lfuhd77x)B|^BypHs>-$g-HhSbmM;B}$#S z?T0ENf)(OxQE`6)Y;&-A%-AX+wtdj=DK+)#K!!EIwPbgbcPtqS`^(LqL~&{hJaKYX|2 z0RJDtYTr-pPs4&>;m87I*!o_=T|(ZMNHA)9^$$Zz{GX1Fs5-d!0*G~3kb7YIQ%kxO zizLomZztDJwxn-i2(IHb^|g2@IXFYSa<5U|CV-Fk>MHQ4IIf0!Peqm%mdD*PYycQ> zc=8V3MkBzic)7I(YgW>qWC=ugg#9z*WyexsxMy7Vm#zOkDo|C|06o^by74LS6gH2Y z<6_;e`wsfNfs(@@)IFS0M?2*E)nc**a|K+Nin+h}0r3j~hy$niW<>hNS?K+F5X{i^ zw>6!p>8sN8%EOL)DEpa*Wy@Kp+6#A>$wod5<^Tgu2coUj@^aJg_UFXt#U6Pk%|XvF zLjED10WQgg@I|A)=m$movD|#5+6En~(BvIY-Qpl=$ERHtSoXrP`Bq9bwcM}W0LeOz zozGGXmc1)eWi6m>V0Y~uSbm>a;P-KL3;?Y3twm4)^hWCofJ+0VuzDzqo=^FUQEzH` z8Oo>d+LO6mrAwA>fK3~$7HcMFoFJ=)6Ocgd*Y+a8|18$araSxcBC%xer%IqdJkwWs z2`f-LKRDF`3N+(;`tk>7#mE{=8PbmS?dqL>!PGu~!bj#m3TGS+Ptc?H{4)&X-ub>S zi$YBRyXhb6^)RY$X?|biE^ICbp^wxA=0G@jP_W{8dvR6?qx@OY?NO;D)`!~%X3!hh||y);R0UfbTc-7 zG6zW6m3|l0>tf+8ASZ@pC!?PqYTCoSaijCoI-q{i3hDrGlp==DfHt+(o0H9E5lfD? z6&m!l=UX+HqzpPozAU}OOTRa;;n(C9<{{3%O?>(obRxv%Is5Sb!K~wt!5=>DY7-Zm zM8E4dQ`f?z(CT7~%2gKJ^QCl@i`1lt-JJZ)qga>B(^v6=&^ofh6ScYy_w#JOj>Nh0Mh=44@M4|?<>95 zy!7vzEYHd2Xqg>N)zP1pJz{@v@cF#oVHI?)<5=Z#g0k zlY4G_3j~w;)Gz4s9Lz(p3VnwAQh6H0bee?j)5qTwUda*smGEqiP;dP=z~Y9#%@hie zX8iTd_cft7(Ie}2KZ8Lgq#Zz!MNx|>d;b4&I?77AGR+}R=IF}x3wn%XoeVF(W6287-TokZ zuve4ol|8e*LL7k9u@~uw>n()|;5X$dHF*!T0!yS|UX0vZdW`Q&F+a7HVIE-!`W6FJ zTf2y#EbA4E&{3=Br5>SiV%c1%M4Xz;z(UeiY z6Agr}4C1uk?ZoO$O=ayPlaJ1+;6aeTzw%q&-_AQ;j_q+^Y{s*ENXi(zi+bX0oyrkL z3U!2`wI&Zrm{(0{ZK?A7+>LF|QSm1_s$Jr>^tK*fZB;)7?mOJEIJ8E(p-B*-Ck!oA z4~z>GTwX^{ULAVuyDO6)(M?v3Hsw6rghLO^L80>FC7hVvP2?}!VuSOySiq4>h{xmD z5_0=?h7Y>DBvoC8*Qh^1cpJWl_Oh?Sq&QLI9v;&ZF%xGa|NGcEaEC{u%j)7qtl*7Ae7kQO8}su@spT6V-OWEyZcUHuSVTILOwDlV=vvhC+KLhikGp`df$^Mgqm%o}Vp3@~m{QcO_! zhuLB)p1ZS&YXM74I1=nEZJDL}c%Ns`BrubXy;+&$mDBs}xW90D{(ucX4W~Woq{RFS zO1O#PXByu+{?ZH+0r~>OyaKJG=pnA#ool7Xy?z5lwOY5<8YZ7vE>rMR-$pe&-e$+9 zp462v?XtJ|RVsPbq|wQB zgiLJL^Kn>@x7dU!oX~o9&7)40AsQGeH_J%}QW;@Sb7gMKcTR67@Va4q*eWZi?ywR4 z;OkPBZ?ADJzXQ>9E7r5lZ^f_SHjT8riqG>qJ$~&VuVy(6`UDAgHu9laB~v&f~UQ1+<&M5wy_h_hNV zCe?+e2Of#J*N@K^He7w&)AoLv;9;b~V5CS&)-31lwZAQfvkJ>Q@hw%W+9-^caQK=9 zX6=Uhl#zQW2I2ez)AG1>eigj`fPnrr(~}aOGJKCu<+i^=H@8-K4NM*~(J*b0J)sk%LlLvU~y>npy5*%xx(OJn(M62tl zMQ#p+gvQ^aWy@BTwnTV z={;w#bi&hHz*5L@1&j*Ka8Uvk_@1q^Whdj*fJu zxYB@UGza&LJpFPVX5?poA}vh6AUfvV;elH2m|`GKo+}!j()o~l{VS6*= z{nmEuWfhj?=Grbz<{5Glw)cd(rkBX??LkWC=k+m~-*fU7sk|~mJMnnlUltjR(kQEd z#sbgiMb1)k@&<@@oqu?CmO|#{#{`M@J!_8^G|>$kOY)cy-g`F6AlYna#TA0X^%06g z&^@YsxLVUiUle&j67KPEEF!EnO}>DDNZaT)U}y*_`fg9B)Q2$72P>=V+H@|Y3*ePd zI>RORi=|^vl`alU&Rgoo6;$%M0SJkE2sR^5EOn&(b|g?e|&UgZX6yM?tC{cU=8ZJBWOPqjI7a&*OL=;5L)CWkNL@c!PCf7ArZ<-&9Ktprf<`-j zu&>(GLH{~EYfzJ6*;@gO#Ro5OMtDEev@}l7bG6c>1zyf%BhuUa#~3OTlX+N`K`vjd z$X{%4WPP8ZT0wYlRbZq&4C^Oi;Rc9v3iDkxN532TQXHsd&eS>^z5ChmO&-Gc+}-u} zcx+PIa1LTHeCgX|{t*eblly@1t_N(Hx^ynx#625RLD83IQOKd;lztsR^HV#y+@wXA zf_OP>D{?3JSjz?xNUIfGW>b5`aj8Js)!~E#b;8vd3NG_aRKoikv&Qq$eHf}eLR9B> za(KfPOmrlT!{Uec7K5`kQ?3@Jplx_IJ`6H`+1NhOsdmex@QI;H4psA>KEch2x*9V@uP4{2|gx?OF#tgCl&KaAf}n z(OUfNwRs*}GYs4V7EA%gI0ENo%X(ar3}Z%MA0gV^BAaicgdvVrxq0IU`>ioM0y5r!Nh5Mq>0^y zvVxSmb!B^p0DJj8xZl3eJZ1KQ`E?_sn}&>r93FDf!> zC_o<+p7Hv41fmf7dZOK*mowa73%-gWI+E=oXb5}_4zM^-U(y2aU~=3E2vA2l9;gNZ z3wv}Y=oy2;!~_5=Vi8Lrk_*FzNPrcto5iOjp`wVokTdKt`NQc~+_?Q4oUf%*-(H63 zeYbSKzc_5WGAO+WkoE2Ij6n(8X9yyGg?`O}nH?w%Tn@|V2aFaF`Cp0DjC(x~$>0!# zr2b$OC}|F?0jj5V|7-ncN~4?!50VE2Z@K#SXaX@YmdHgz(&X9weSe3`&$#VBU4Geb zfU)v>3&PR_xWRAT6NG|L=DWnKJ*JbBu53rb-^N>*8m3elL+vdF8Eo7qG_mKAN@0b& zNAK%*i%ngCSsPNd5^zPaP=P`bHYkbQt_K?&k6Xm$QhFTqrh`{!EZnT=?m~8>dy@_S z>a~dCKl?XB?Ywi@LDNj%ge5GJE%0dQ29&QxQbQS#X#>7@*Th1<;R4Im4|04<_Y93% zH^Sr|m)oPc`2y+MN9JD01&YvWz3+F1c5uj>nI@B=<5?lX)M%@E}e^l5e{rYS4Dmb=@Hk&fclb%sl;UH@1@YhUvHp zC+S#6098Toz`yz+)O6wR38f?0-bv74+|Ta`H}+^yK-%a)cgCIpMupiP8Hq8;@j}oW z_lc$gFs)O;#txm-duF4s9@DpluxmodqRtqw_kDSAqEKVYY=1G}@I6~B#u-_yd{u(+ zbyrO9i0~`hU;Df%MNEMA<-THkYD+(BHqnzk)SA&Q`*;BKi444gHTx2e+OF1fgJ9U6 z7{edr+YeXory0p$3G>y(>){xM@mr_!@CAUkVAMDO>oj!-Se;Q#(6F3?50)!Y$GDZhL>thg(5Nc7stR{eT$9Dk2vSgPp)Gm2_Hijg$IAM)Ne+b{tQJe&~*_jDjmQ&oq- z4i3`EH7`)N3Xy%wpY+vlbc%u%1jy&e+A#QMxgn88IpfKr5WlNaODE_wsF`5AZ_wEI z(CapP--J=J$Hyd_5Kqmjy;}1>X(Y>QeAy9xy2N?qnMz{nm&E#yE>saxK|pCbP+e#V z^to!98C{Qn#nzV~G(B_|t?Bw=GsmCFp^MQ}K4*-3d_8XOB%{J@`lf=O5VwGHz=;1j z+dXc#(mBIc*rr#nYVj@09}ev^!DbR#7TEV0e4oeu;nV<9V)_}LXCFQfh|hkr`!WIh z;+9gGiLs8JqKP#!Fj?uYi-M;X~$n|6V zAZ~8WQGRnc+QvjeSfVuefj#*ZrG|Tldq~w_Kk}7#q^fdEX%c5@o9?9tU}3di>Qe!` zzRUgltSz!DCN$B}b)WZvO z4Nk!r-9d_c-P$Pry#0IOelvwzQc=(k?=Q|pi^F4JIiD%&!DB&z8RYNtty3;V@YLZP zfK>o&_5*&J(#n1vM@cW^NNY-a0>VEfWG*d3DE`qA>N_a0F~Ppk3~E+FuLcQNSFX+T zIRxAD#%$97@FRCR-lW~~s4v|pIC7n89s~XOruN1tb^GLQFcZ}Nm1LKgAiuCl+dvo) zkF;8h8m;{iLs0-g_9T`|SCEU_cKFb}$yDVGBLCU6)U9UszSo#jJ$bGd&p^&8d+Ir6 zx>cYENv8c&^@kTE!MuflS>LO+F`%FU3OeF-%Bkq?bO#zYUPk6izDDqfF-FcicegkO zZ=H7y3~=^?GNZ4#G_`jg1S+q8??#}OXA*qQLitp;QGKTFhgjH--Gk{Vb7f+7tMd## z`pJ^^0%Xh(6y!jHKc!sc+T&+SFIZGm$>2!A!aBTQ`qW(xYCg=wcm78_SNHe6j>~oi zAQL}IW2rrjTS=5sUI>gt9i;c4L1vSG56TPS6P3jC*aZi-fomG1+Bz7YTt6_d_UP9M z3qhw;|*c)yNe1>`Mqk-S}i3;2+M%5LK6W1DM0JDJ}4vh4CUpm+(sB;Ge`M zj<#mTw?vnbO zU`j&$8JDfg(BHS5QYH^0n2`k|DY{6;om_ncoRQVURU3b*N~vL3oJ*5W0swMz5s~rw-R66 z=XrO`Wt)LFm(>o|sUUAFY2qCPa5NquWXtN9ftHtf%2E{btN$KeAeWoRB3CJ71iC%P z?JZb){JjUdYCNXJ2^lE#j;5tP+Vn%-s!*JT^SZE7jUYf1#>qLnWsm(J4IP&Ltq}Ih?Zof-eks3F+X03T&uGlZo(qeSlXVnY{`q201o+ zNf`G2)I(u1NB6>3yyS?_hRrFYSc|LBg%6wyY%wXcuvsLpzH~b33re2U=@ModiPN5K z9qCr2J%H2q%Y^LOqoY`v~D{DcTPm*-Y8Y@VOS?lP5cV1d*Nv!V0+!OPK)aFRWYAJg+IPa+r| zx%^&soq~k4FfMDH_pmmgrMzOORaNPQ1Hrqd0}{ED3=I-}K813}eSmo&L_Vi929NJi zcQe|=3UOqzv|?$0H2)%J(wkAy>MNuavi($_B*5!LYO=ffvA)`;GpE?i+y(mt;`loZ z^Q>`C23*_xWir}ZITldLx-k7Lb&xow9U}^%@`WeAU&?wEqK7kkh4F4-(00E=K`?wp zKZV#%JZxmQ*S9)z6({lQYq-&SkrKZGp?nP}Wp(1sxdY^&@F-Lxp@~ov_O51zE)%jL zcak5nKgs#sog9Pmsp>4i*H&s5jAnneMo;mrdJg*utH138p{XA!viT ztQCPi^Tzy|Loo#s%q7KuOI?T>d>orqtm$mk+;(!}=lKB-9*|gzz`kL@=vf25RsGiO zOKOD+s(9GWe}%uc3oq&?(nf%mFI>(P773{e_9+Lc{~q;M)4BcgGm=rZ>G>U23}W@1 z_A9MtFO9wTp`T762S4?5an?wpXY)P!!GS84y5dW)S>h(P#a^r3ujmSVO`)>pXKEO< zuwE|~BOg!5>b!pEw0LvaIY}Sc@YhawQ5ej__~yZT&<60u1(}Ere--%4erJYP9XV#Z56WHuJ#Q* zR9}p-MD;-gVxCOzGP)OgvJJOVL(&``5@&A`{q3>)%fYYTZ&iq|-mc=KwLkAd1H1QB z|BNQ*bNPYAn|VwHm}egJWU%$qHne;Ev?roRx;^YEVE5N>lBe9siOtm;D~;3CZo`^D~>uLZFOv17HDA)tHRBT4`X zgSGwJ82>=Fo{l^PZ2`PJNUY!2Ytmsge~j8}xum2}O*icF&)%%TW!A3wL%Do_LZk5X z#8SQcv##8|LgQkpJ>!aFAk&65^9W!C_3-nDr8^IggDgDoArq82!=DNPvg>!vzilak zpblhRli8MtB2|}?m)zKigJE)Le27j+PhzOxrj$GH>&|;odkKEoRiKnS``PuwyPgSV znPb9&%N^vwb!>~v0gMx(olA5T$5O!eDxWK0;MfzL{~qp@>eiM~cSxiDOle6w{=BbM zj#9J4z!;`K-dg* zak@H7$$%WCpiZ8Ej?V(7ghl5C3zw{hK)|671du4vrX9s^UM-h?@q5Un8}d7LKjmYo z6FHpr)vBGtY!Q&HN<{+^E@YE3!^SV+U8oNSB>MeWQZksHBr@7)s>2!m%1HfO6xPH< zR|uqYl(65!wr4I{W&gFJ^yw-@^WnjLe!`+IkDE8Qwd@Pltx1>HD?dKm22A*u914#m zy-U_5ixqm8VUR=OtKP}uSKL0QSJ$r>T2K6zNqBSz;VS@`(il{eWQ@$GzT0e*_%8da zDqaTKkgnU{cKwtEcJgiysxCMFBJt~)`xTeBc&ax~s_T>D3+h=AS#H8D)BnE32$+02 zf>qa)hb3d58TDka>4X%0-bYHO?&H~Nrql?xpgxXn z7L;o#k;*oy>mk1g2==@FP#5jGW_v}G_T zL3_;D6|MTK`^sm!O=s}x%kDwzP;iTzLlSj5;d@dhIMHR3;JRLi)Q`p7!IA+62KX39 zl(GvGi>wQwnI&-Vy5C2Mu&Zx1YVJQi*%Wa#k&EGW+?I&+dt`UAS& zCA1H2{EG~=>~>3+ZxVlk*Q1?re)rA(tQ3E87zK1#zutQ2 z=~YdUX`Fjyx24?gpm4nCTuO*LH|4YDF}FLnld~!l=6>3e`>R_2zKq72QXmF1pI-?- z-Sxenl^Yyst!$PbA40E2RoE>*F|%yxBJt2mhsdq4*;7;|JKbeiE4~lUz%zA71mnSY zB%9?3j#P2HtnMCGH)^#YHfAQTNb3#J1-GM3c4-f5W{7l%ieC>Ay&N6^bSPY?puNdoL_=IEG*XIydBW*#!7)67 zjydE74dt!51>~Y#iRP6bb4Du`?BOoDey?9W8gc@vagO(-^9L=ZO9UuL*!ER6TyDew zY_7tVOu86R#`-i!;S{&9AmBx_pOFv6!;L6=vr-~OWq;$mTtn}`x5S}HSRkeaioF(N z)z4$0oC~wOs-!4NNA@$d%MgR{n~^H{j(Ud@hw>c^{B60ZVIjtkvqpH2?H$L^T4<&) zqOR--Z*^z*)&;GQZ|JwN)D}dC_qLmd|7=L;FE9P3#MT>VGAH5oI#VeTUoYTy? z$K1ICJRLFn^j9!M6ZI}R`cuFYdvJ^_{wYKKMfL_ebndj&!abG4Ryjj)n}gYxt6(N@ zE#B6wgF)RrHAc>t%sbZGx$f`8{>_rQ@SS`pG1!H-wFUPeh5B6;L%-DNS+|dF)V>Zh zJ{eFT#mP8YW;F`!9<9A%fHNrdmJVU{@d^&crtfnB-s*jcGVXiITG4+lD^r5)SSz=3 zkWRB3_K>Z@07QPt_O_2=v)p@kTcn2G{r#9E^^x!{2L!rbN9k^0?xV}pcJxy=-}hrE z4eW$Qtg78~hyYBhQ`+Gg;4pdk-XlwgPd`9E4h9)`P?%3B<4UNmUBk7Y8x&x8bh&iP zaUirK(y{Z2829QYE~?QvN#C`teyEoSoqM?=HWM7O#qMSLBp+9pOl>_Lv1ZcF$s1HY zf=JO1uL@);K=q1-i+qs9hMB5N1SolZOmDq*OU=Ij1R;v zU#PgdbHPli0S>iz-Q^>=r-zY2r|B)P{!4hBpkYthualn8X`WQF?4zvo&eWDh(Y?jDpWPi)${++v9#;_< z&|;R)Ur2*x=AsHy==`XlYy~bb-c0&H^p{iZ*8oBdW!M59D@YGz?hgIm6+ht5`Z%EV zVW0C++w!|%B0!SGygpMTFiu{?%&>4Unyr}I*Pi6R4g&=yinffr@wz$dw`qj zH8i13l||;2rJ3L5`BVvwkf~O6l`(vT%xw^lIFdvPp3I7aF0r8;QFSh*|sBL&QaRQxtVBZf6nqA}G$JWWl zAGhCdZ+!kAe5}9G$(5aa;BKY2iWo9Z`EZRtq?M5H&(TWc1p%xr6A;+cA*9RWX;z2= zDn~Nrrg1Xo)$ID*9cx04Zm^VmE}595d%BJB(t&Jd?mfxN`tHJ~hOmCq*FBtv>-+f@ zTm^Q0EC-B!Y$(fc=Z$Z7TNB%r7YlIG#0LeTydz919 zgqXeN?|0Ra=*L@>#8)DCu737b1g4_uk2{_(2u(TtPLT zCOofx(o@d*6zRaXCFOE`y!?{!x+s=m#>YEWail6MaCNZyKs9HJ7`(kk7OJP!f{cF8 z3<>-v6&Z~G*5!fDIrZw3o)PjO+&|};G4OlXl#rfl5c%SF_TsY;$9YY7{5&vWJaY?w z>)99K29yKQ6G?lM_#OUCty_X9qEl|5Aakl1DyUqhu zpB+K5OmvVghP@~mSgmc0_ zbv`~buFhy#x1Y)JXeA+Us!B*B2J+D>R9*hPr$Z9vx0ypT{XyNw)G}pkG&^fXmdo&;Bp`x$Bfp+?Pa?SM_#CFxx^55^Q06x2h>~e?elLjD=Lp_fm zhCRIMnnv^^EBk#H6=)urOE`-Rd7P62*8}|+mgxQ5nRcH1*o(y@>l_+`x?H~J^l#u7 zR-24{2&SrE_uPu?%n=0t{+@94BK~VWw9mfFJ(;Db^$wx|;9Oj+*T4aZxG$vG$@^^J zR`kiyd6SiudMKQVFkhf3!UHVKG_LFE%Q5YK30;2@WsnD4xg75ce|kr0T}|p>ukQ-} z)lK%>_d6cr#Qa8N3whun_HeaPpU^d-^64~T+CxkzvvdXuk!%flt$KmqnM&GX`6+A~ zUFP=oVrf>r&gW6m(!jHQU>IdRc2p81g&@A3P8ke z3GV%``gxa4|9m=Xw5E7fKlyv#_tI~!4f?$%r>n{`x=hCI&~+yE_bR~_?AgObfq9{} zVL#J>QqVa3jo0lX8eQ(fxaNM~4qQGxWnc#~0NkWq!N z??d%kb^BJ8iWZQWkr8qBk+~PA7?M~NSGVv5W8B9Vnq6g75zN;Ofg+bSr#~WsoGdd} z+gNhp4hHcC|NVyhwU^(-l^jyw{@1$ywQ&AY3<{I}Jh1mCFfQL}kBPDuu#C=M=p4L! z*;+dPwNHqiaKu)l+!uLFuN4o?&=J2z)ox|pgX#2vaBq&k7Et^_vA-YbbB~RyQgsB$ z)9EFN{KKO!I0PSflc+2peW>?^72e5D(LM0YJw1XIm)VtzU!LfMk4PDNvvj6Lz^> zgG4hDT%>a%MAyDdzs2>VWAYHC8N0{(9ERa331NAnpGlu1qsA=jpU#jJ8U$qhR!?27 z@o@tu=-9rDt{eV&gwHS9s|?135Ba8Zi4>fd`~LTLXn^9QErah6=(D^kdpA3oJ55r- zmfuIRKc9B&=kQMC;B`G`I^t3HP2Y7P6jED9x)7?e0}; z{Ra3&6#FXwjjzycVGVdZFLeUulbnsczEyJT(vkraHhk!{MR9rUmF3=7(IYm>OOD_V zE@29sH5+!F-($BAx!8LIby$pF>2+RS-y67Cmy7t+Dqfx74aq*uOjCvp?|P;MTS?cdmAoCO^vvr za#=^( za^;gPPk;NRO#jIDYp;#En+p(V!vdCoqZK$;Ve(=cRAS-dfZj0O)@qrKE*pYTcE&(c zP(K)840M_C3E;VkgWOU9-va$IOBYjswJ~MwfIwQ`LnKsSV?HJ>%#ouAi`V0y_729* zP5`;PJ(02ng;Q0i~@U0*t8W)aOs@p*ZE}> z37}-u^ywoZ(VfRe2nNk#&&|)qJ-&o~Z?t{eWQ%8$^iV_}=K}B@XEyI|k^06(u%}h2 z_9f^WU(T7N83)WieSC*}s!*~3c>*Pt(3^f(KX#k7$NYo@lsmbX<500Se|N7<1jawL z_i4ayRNWVN(hE;E3!;?9!;Gebzh{9*!%`{l%J;VJQHcWYq70lxSlW;Nn+OYNPS+Uz z<{bDkNVKYG&YjAybqJ0)I*u6~hQ5WHVf?hM*Oz-Rmp@NF_|a3@mOfQbLX`JgDd&AO z<@}FZhZ%G}ux(&(ivG23y@Er6#~`XGZ|y*iTPmwXnX%U3x|nQ0MQ~x{J9HL<4#;|S zWRpyH7ARgbTh5LiQph(+&M-bkMuj=qvmh?WE<@`-^ly(v;|ZEvxB^OYoWrw)w#XbP zX>=OE#llC-$N1F8_Hnp-I6s$IySoSCyh@Ob(r3ZfI!_b@kCogfSb%u5ax~wqd%v+) z%VcIUWg@*Bw+|{jbOPO~-k%Lqg&MWVhyz`SkKrCUE={@HX8y^(K5OxJF7bvLwn$~m zpIfCi;C8w=z`)!bA1ts2a|M4goN%F+-@SqqQNPD%eBU@2B9PU=Nt+zC%H8@-vEPA+ zEg6xX#t`{G3j!f=k~nlh_M?2szvuNXd_m-l7D_)HXP6_7ZcVieV134n8%adk@MM2_ zhPj8638RE4qEh?BCz+tUoTK!%kZ!i)=Be&51TlU=8hM6I-F7VfW@~2$l3IEf4 z@VsM{qmxyThQ~hZUOoT7#QClNysW>r8L4N%VlUVCQXca)!BgQDbzP`cOu7LaE$1ru ze{Y`#(z4G9sM)1S2BbZnO11O+=5IA%66IVRXLxz#dnB#-kJs?d?uR3P6ng}rws~wT z_T6B+!rKA(%)dr~yDD;V*sF;R6GeMn<8={fqA`q)&*uU+=lTM>2hME!cug{XF(twDqxc zVT3Ao@8bt91X#D_5m zdY<<^@xEdB~5 z*0GhIxNMLR0qBofzI)_qSG;(%yHC4=rE_~YEPD7Mo#=r+=e*+|u7OwErSn#sR!Ot| z_M7_p>~UO&a1koz7rSp2Q0%)Wt3|;z#lM8)EfvKRGxn z%2l;q!rQoCrRLR#o0<@djq?5Z+iu}QuMd29$WMLd$_hp7Wpm)}7@fD9Q|jP{*L|Jr zkkGZ$B<+m}3KoM@BTFm`bSnlR2A;jeF`9jbI|&X3sL{ireP|O{SwEzYt0@QX^~$**(4hQ$Khz3$A&hc`3D(;dZx(H(A!O-HUZ7EI4yWy z%SVn0SIhi|EUKtoj>{f@Cgo89u(xt_D-HqVdj!#Ub(7gXnzjP78TiQ#g!7g7KZN$B zLYwF23xxw8l4~~;f(AAeQ5i_lcCbT-)f4q?qp#*Zx6`E;9R_cFsQm@J?m^?}+mNQ- zwfGVi{D$a?4aUrcRm_vu#cZs%(qk{~d+2$c;37t~r`Ic}G-=7zBGvUN$ge1(w|T2kEb|W2;e5~EpI6IPfC)*x zaSwnFoJ*2+kw-XGR`@RVzC+Qxzsqc&oC)ESpj+?T|A2KF8nec<-zDljkOG@iw6FqAs=z3#fM@qIdiYqg+jbkDxZ@mzZgzQuQ^vNj;c!+AsI!} zC}&$I_xoQWs|2jOc<>bFVytsPge%rz{uN{=^+`Oy8)!HBO`kjVv_&JpPx{$Ygu2j` z_Gq?(yngmr1Ez@N5e-nippvc7U9#DowVofr5r(AXp6YhrOF&?TD$LAI(<;E9_7+mU ztO#8?b{OEI)m7z}M^7I)ZQR!^7IXvMx8+-%NAFn&AMqT)Z^ly#n8NU^*c4<%EZhCB zj(JdtlyhgOu5loPm+xg#X7w#~+naUm_}k&W`_&X|`MNp7oi>#A!yZ2MT zm?4~hmy%T!4kHRKaI38C@W_W;^iTI{7Lu?J!1ikj!yXgxgV6RO0Q7>FE0vtsb=YoO ze7dO}IlUjfC%nEyWT^0EOvR|yn0@)XjtM$Rka@q>9}IjkPgLn%rR*tBp};+P-ud5|{J2b6r+iFQ#>aX|6Lm7G#wzu+ZHtJY0`_Lqe<(o{_(Cdi^tUndi-J+M^8p zQA~+>bk4KN*9TvFBY9^Y^6{vO5M+Z!k)bhrEmnW9F?UBWa#b1fcQwNA0(!Dr?$ODt zGb7(?;zKZnt-Nq`2#yA26YZIDOBX*c*qWR#HJka>A>yj*@OZ!pJ+DO4#SU>kZ zeZ54o@Iwxr(;{yxe#JW>Vxu;B+uzNa;` z2+|*Jk5{&eLH8Dow9-QLS7m#g4#j33OpCNuc2Sxo`+U?-)eZZufLE-P5A#=qMmS@v zT>CT|=KI&Lx`1|gJfSR5s^iN|@_p*QKCjvNE&2q&O(4{M!Er!UI(xP+^QC{hZFr3^ z8|4I1fN|ORdcH`_fzQnG`$7$MS>PRiiZkEEB{j zUwrxxe*M0M_!rp(=L<0RU(Vne>kSf!^KIM+Bm^UgdI8e&%n>a&hrDoB&C%%~K)d_Q zKl=ygkMZj+KXkAFzX$I7o-^qdlB2m6>QuVW${zgF=W^>$23H+D#S)?v{0sVVJlf1- z_S~g1ghBH@(|NP{%b*=U>(@_l6@4iHgxEJ**ycS>>tl(ISW$1Yp{bK+^n;|MRyGBK zgR-LH$sPH6bM?y!LMYz2OmzhG* zsrLcN#_(4`N$O77trw6Z#BseJN?Ez=*lj8a0rn2a#!OV$_WCU$=b(%W;_Ac+L^8J? zQrcRdfM>diRcTC&eyX=7;oTWcLeTI0Eb?Xh{N`umTvOW7C5#;xz-oVDJ#=6ZegBo{p-2--yYwxK8x zQ(6BdllU7(P1#!?Rs7ZOZ;zcwwL`-gf^|XqlgZ&EPUOcWXgfe{@(kR20R8*tObE#9 zDG#WYo=JtK$fSg!_vld-46_4*dJ_J3vd8`gyO4_z_#|q z{7itmmk%T35ZRt$Ho3Zg{fc1RuRHHR6LhV*W{($0E6B9fP2(PP;u(&c`rwsk1q#SBPU$Wc}*ujt|@^K>g z=u71;*-iP(Nat@bVHU7BBy|ov8t*?O*rXSOVlMm@Xtcuv-l-;+-uyY8yK$-_UV>vN z1ZfmB%+l{5NG9YK_}n8Y2=Vy@q>S=w9?YJ~dBhj3C$Y^uj_PuY8r3$I^H2W#20NL| za#&sQ_KU3KvAw;!1$vTm3gcgBcLKSv9yqx-mm@rSNemypH&nd9rtH$b?ax)A#ziJ* z8IXn#x{k39Ar+rP?&V0GA+*9Z70)ngJ8Rd_5<5k_ z7XTqA`}862`7;w@+k$aV9o=qEpldMADiT*8$%g3w-6&(J*K&MzzjCrpFN#-UB3(CGWxhWku}Ux}EkeK9$oX!Z}-SluggMc1pd$M`%Y zuZknGoWc#r9;Rm>+i^DC7JKkj<8ps@d+>{+uuca*p~GWV3tPah6B~o8T%5Lj?ro^* z;J(bVNLIMDLGzF?8w=L@_OKqNtm?-5b4h{f(sy{76Q9&A2W%F5F=fVo`>KP$uY44j z7h1hG^K&{fudk<&V$ztBF9=$*VynwmZIL!1!GFeGE^=U2^p(7^c@g+e;^lWi_}2ekLfcU}hOW5~n*vRcS0>119I%`7E-eYZW`FM)6eHbcJrc-)|u1oUB&^dl%zRk}jQL`#$uQCU>YN@Alw2v;`bFA4@F zif%2k!lhP^4U4A>j`J(ek8j!5*P%z~PZ$AV5!3yWwX6dV8vh2rrHJ^V-R9#xkxhFX zs^Q0#aNbOzs@yKhf&Ls3j?s0hJ*iEKze|*1G8C?2j(~mAW67#=RWgpECLY8WeQFL-5C+&>a}`xgKMi8*!8-U%5B@%wD;j73{W; z3+o;-&awDhZ+!cQ7nHxO_)K59v_CqYU!j|ZjS>-b-KP*`8SV$hc{jV8Bwd&h4I#u+ zj6gn^@6p04qU`utFz4}43Ayk?6CCcio&aZda|(>(wGmnrF!iMbpy73UedT}(qaT&k zVhYvHhHyeuvpF)+2p(r=%H!R--< zoWQ~NK=rnP>ED{%5@So;(snE(n;e|V)${rE64!Q=g6A)~Yd0S>N365fX(^?zR>c{b z#)$5_Z&Hfs+g=;s5p`2}1b6oJqs@(qFx%q;;VWg|^BeY)cq$+5&mTrWWQfRhF7$MW zPR`lKn42Pe!YAI`Q=IB_;G*an@<4B#7j{y@fr@mFB)fg{9gNe#x7T#9- z4RZ0vE|9E1hhoa#HOn}`MXPfXvwgZu^@s@#?w!Rie&%eCI972VqT<0}ebU&H7xZlO z_Vd92%+7{H;XegVV|gGcm`v%sr#gz~PuF_!>>f`}y15^X7vZ-1xKxK*Wu8NVP>*C- z&&(xMuf1d2ujO-)Jk<9tbWA-jU4NBP3MVD^6+9oI0`PFF&F7b9f8Y|MTU9qMgSNQC zh;A&9;7a>AckVg0*=h=H(h1e{cI{3!FMCgIUgHU#Xxf)e;`H_BFo)JlRQ`djIauZ6 zXkD(|an%+>FqN>=mG1uAw>tN4XG=DusJJfSGcV?^g#3Yl&~Ot__Q>HFqQ*nv$aKoAJk#l?eJq*T^FH)>?^WJBRB&#=8?mbaq9`^c z+{Jsh@RZj-fXY--RaW!%mlRw8{ZU9iW{wf4k>2K3ub77B`T0qEt*5fP;KWn7e*ttnT_Br@)_9zP+ zcS4b?4uPYXr}lMa*WBm$Jv@_-izV^F{?2DtAd|We~#qhsn|u|I=wM$s`#nurrmVsB!99lVO63X+Wo>BPxgxxE(|cIb7=0f za{J4z^;9s868sLA-G5AhLHB_5aW%h>CU1dY!tJ5hd>BzA#lVUWP5f1Ea!4!7;Fw8* zVegb^QSuM0C_s5eU$DbbO}Bh5xIh2|qf+zyd4s~u+j0VwvP1HSKbYt&Cg<#|uWF4} zVwY_3Hqxn_jc9u^3&83h*dhC_qF)DReY_6KeF4fsv(xK!b%&o86yV{pCR~7@2lvD# zY5i%mCh^7}*%2)dc)zM&|?TMeYF1gKgy3^Bx<##N=Rj!B;<- zf@q$gwAr-AquMk{s^%V=*qq&N5%;-GPAMt9>rR@~`$*M>!4gn$mdyF~JC z1`UVMTDh`fr=L$rd@Xkhn-Va2_9l_ic9t(K)%sRosaI~d1gdD#zaP+W^T_XSeoUdG zNYE9#x6~=C=rwn{C!Rlk-#;}CIPWb=LA+H5!ZG)^1O((!%K7~*xyUCzpk8TDhj?BX^bJUGxEte# zoH+KgHYNvqj5v2SzXXHz|63K8#5f$Hto18NCS2Z%ub%;!$pg&K?H|y2vZ;jzC8yVr zxewk^NjoW2v)&)e2X|Oryb=CsFBy1P>+qL5Tl?&NJds#nMJTQG`;{J7@vR9QNbT_{ zr%XMAXSHnj{;#Pq=1>^}Ci{A@$f+wX-m^*uLo=}HP#)DL9jE{}=6fe{uvhyfnZiDg z((zcnIi}7}47;DDH2xju>&y9}YJsB8nHg5a@8(ny_k^GDQw2kkPR=YT@))qZ)N`uq z?oo_Qu+-ciWT0ba!)SO}_Yj&x!wi1vVIa!d4_Q_^jB(k;>v||ZrZ<8n^AkJ_Uuf?o zsoxdXB8Ou+Z(TP&4A>hi1@{mD3omd3Lyadl9#8r3U~4=Hf}>Pc8Zq0XM+ze*47H0= z>`QhsGw@j1P~(JwH~opD-5L%elbo=Gi6L_~6-#%XmS|?{3(9YXUrYx$($wTtMCK7@ zA==@KR}j^{d<~xDU*M07ihWqZ*Asm_kNu492?6HP{j`VXt;PNh=kQZb-q*FMJ!FZQ zQT`HsaWux)kiw|(u^8c@%bpkMRT-yU{{vs|q4Phed^^2?8^WT+Zy{RQ`64IR-1dhd z0;NLT_xzf;oL7F``>qsPR2Km-(S4E_FXS^KF6A_x8Hzj%_?6WBk|{U{k77Wd#l#B>+%avB)&Q8VJ;7QN;u zNh`NXI#}wSWsm;))rZ(8+2c#9CgrJdehM!?H0z5k+Vli4N?5{F5Imnx;UhF zm0}9Xy2H*xN9U?Hk#vadT6B1CYGzU*RZ{y}USEF}J*n{?bX5!xYy~_=jbQSuNi$T9g01YW1Cq}VzzlE|p`*~aH5B*O=!fJi`N2CAJY=3A~ z_A~lZP_l|g%{DznuCfB;TNi90x9Isw@1dV|=G1nOW|Ge2;*L|0RNZ2PK+0{^5AtkS z-=@7n>TYCSa2)C$cF^Yy2=imxegIY5zmR;gZYl`x>Q}> zOjLIxvX*>z7OC$a2lYXUZ|j}@*s3HuX|6s$&^NG)L*p)Mk_~?cuo659Zdtizu+2|_ zpuqm@PYBVm*MtY}0ammQeC%bVVAl#8THHx^_+{w!wBHTCSh*u4^%N1~vRIcFmF$V}h@ymsVmo4BQbnQ)Z|C|!<*$S9} zMDK9GT&=+W=yK?3w&QaL0Pau6zM^x*Urbl~zLkdBC#yw@fQD1NqDWD9$$R zPP~d2jmx36_0jk!%TYOoUl1Rli`L1Unz1e=;f*%bOHGn55lIYL{sw^;BJK~yPFh}v z6B3!$TudwI6#F&7*Ct;a!aS1fEr6R|HOK3C;=`?`r2I*87qU>_G@;9iGr#y#w<0Gg zI>1iIfx%Y%d{;1oX>|psrC90qL3eMd^}~eM$Nkxi#yEnId8Dtz=j`_PM-6Zz@GsXhf33y$&o!^U2*`x2KETy|NOVQc5e3~-FYtR zvjGcx*g|(@zvy{BxAOl2l{Qecv?j!n!S{ zPFcdXyq@}QWTl%gsrxuM+)|QgeKRTYI9WD&*tEZtN1#WABB3qy(};k&z}6`*kn9Wx zfEIDYB`5lt316tdf?e^7=TW4{q-eDDng3{NI$iwJP5i|tAC0t1%r0KF8No=qKaTe* zhD_TJ`uncfNcp5`;A4o6bL{ua=g!qU&)4w`LC=+?-Y{i4L}bSxG?DX~Qa`UzfkK_l zmu4#0qvZ7}TX9IjaEGH!kM7CjAFWthnj0_1^hQZIUCrh=wu;4OlZ!kW84PFEznlBJ z@;Cw7HJIUY!+$Qzp|K&Sxt#YKpkz`LTURb{1Xwxhj4-+hmpSAWw{fG}CqQ4JlSXZR z+oPQ98P}N`Z2-q>hw`3Y9eA0M1|C8iduPXS=?$lJH^LU*Z%uEmEX(p=AO?;Lvo90- z%2edd-YKBm1u`OFQZ}Xg7*b|5^oXaPp!<(z?I+*zsXaEkKba)9G&8aAn#;=Wt3MnU zd9Ng_Kf}APcI=jM58?8!hMm#G-tVU(lSo8Hc>PM@`cU){$(;cGQ{MVF$pmkyG%OH% zuUBDab`L-$E?w9-QcrA>SALmZw02p$C*d5QR>7p|^*(Oz(&>iC4c=ko91Tip2M&e(Sm!M=0?hU(RCKD+1n^OwK&|)pUs{_74kn>uz+~frH?UPqXUdcTf>4oE%)V^nNF(*!{>uo`qA58 z=|-vRL6ojgone_j;RDQWh{|RC*6&p_?<;i_{m!4h$}AsGy{;;fNP%3H5Bg9Cgzr-4 z$;?pcm~CQOJc>~fp7`wvGw%M;9|6%-6CiGZ9tsz9jnq173L?H^oBb)Sq$stTc6sn_ zPZ!p{3yHcS0(nQ#hZ^7`H`&4ab{(W2{}yUiun6~?5a;*RdbZs7J5=X z1>4c~naI-9wV1Q#L_z*}tIo+(8{tPCjK)NSko+cJNP#qc@i7#0H~Ed!?Qa5URQ{`1 zelm#{%6n`1(aYMyp+hn0sPvPxQ5JP=VuKIRVH?&6%47cX2=kauGpWvKlGnVHP&=;) zS{v>VGpG{aZWZeUMF7<})qikXcU)P2sp@H6PqnPXasrP&0 zntkrZY~F3$hv--jKA$-_ItSzoYQA8@e!&5*kHvkr*}Lqoo|8oTAtfqxZYSben2Osn z{pItGgj>F?)t8xXed34 zXM03$u&B}CQprq8d4GLn>nhoHQq1lHE1IHOFcE!c6gH6xry(f4{MLP5{{G+}cNl6Y z7)|5+RxEknA?9%z9cWBo&6~5u84H|LEmmK_tzAa1iure)ru@F&JYl0#-gk)&SnG{v z4#epjOPz&q>tfkkL`$z~i`eL3LGJV>Gmi)9yH$Po zoTqk}9E{#)-4Qn{KMva1u@&WhiKBJwTC|>Q_jhw{ zo^HUWCkwws;E`ZgZ#v7;P2#Z4hm6H0_=9yY`-KRg|FN!=<SZj%xl$XpOF@Gwae40z0`8J^ieEGh`iPtqj|-z*vCr~9KkjT49V26|mIHUh1R zgP*F!vSISOBL8uahm0CTp@aoTro$ceY0jZ|JS5rU{(kb}uS?c*FN=|!q8=tw+j+`K zn7pUzx3#oAICpyafF{As3f17URCX+AxRw8x_Cos9sq&x)*X{T~Q~>hPoeuSKQ?Gx* zhhx0%W)?%}n{1q2Yb}Ql-q$m#;Gm;q^{s< z9MvqH+sl2>wY8?vPdH*DuTCQ;$n?-xw=< zC|W=b3{ts={IY>RN>tHxy~geB5UCP6U2k74+=tNbw2an5piC-K!TyV@9^bA2Jv$i~ z=0K9QjItZ7DVGz^mgEU{DaNxX7O=btKN|$^-Tvsa8wN)|VFpq>{^NR#4r_oqK*zhc zji0BSH`NH|SnRO<$}5vizK>{}!7Ig0T&$+QI4&2SJ~^%4+5C2TipzF4Kd3J+=t60hiT2vBLStprTUp(*|uba(3~UDr4T&G+*KB z*Ib4-zz@A)$%_H^NLe)spy5Stkxw28?A0-^X8n-dOyeD!)|G&M!2sVuee1vBdeWu9 z=)?0388oWF8nljk;_vfhvW;Iq-aWD)80nV7a~fP{yyg_S=N-gYeLKlw>nyCjbRlTf zIE8CX1K+BcXO#Sd70{Tep#>UDK5-uFJ z4X&fKM*FN@hGp(+e8Ii5mrcnLyj5a=vJRl=n4*9oTz2&0zt8KU?gKQ+;M3s*z;oV&tMxcRR9m1V&t1xD8UavEcZ}A+a zu=4~)$?&Y+aVg`VtecyFhNJ&A5Rfe>g`@tr$HK*XP~e3+&%LB|Kg`TA zP*A5|>GECr^&lm<@m!OUo_Q?g=OeZqR3LO=zkLq6e?3Lw@thh*_JgAy*y+Hev`Rzf zA)ewHk`cmBj{C&uz1A7DuDfxeid9GFM*j(>o?g(b77}+Z@zPbKv(f}0#<@_IPQOg^ zHbmE*U8JaI>qmpil|M08?Q8sbA}`qkVcy~X!ju|AcsFGbT|Sv#Khyc}hKmtM=V?#; zVqePX^LzS+^6};k?@ra{I1Dqdz43+j(<3!}isvl-jmOK&rH|DHH%D!c{RN+m{4md9 zlm0|iWKV;L(o(h?Y^FKNM6KDk>$_Nb>C?x$h7#GS*9_!_TAZLYj5YwUvVA}QSl7k$g2+|(DO&EQry@o2cVg=6u{6H* z0!~Doa;wJdH`xMEbTW=m#lg9Z*CnGlIpUPS6>jXS5F!k*@jh&;+@8lX+8e=e{0#yR z6ikw#fmlg7&p|(c{L1$63?S}@yz$Nl`;q)}aC(C#>K>-Ks%E zX1q{|PH+~Dh z;7%F)q;eq!y0m7W-cMNYc^rAW1D-FyKIQua5@L=nx0ggcXL79BP@-?)@dz>tAtKfm zJ&G#_AL4YW#_Uu7XkN}pb5QrB75pdg@2jHvN4Mw9(f`0oUgH?Bi$4;M7kR-8t(2f{ zS~MsRNaNaj&P?1x*!`xl$osX}M>`GKH?c{d@;rIe=?^E$*;>O5cLr@rqW`w9X;JpR zpFL4LY9-{ZahQpq()9{8?`4D0soLZ>os{`sN9qy3yd*v02A;o*ww8F*J_vQKCat<# zfDMY>dV$^eKxR@V9!iH zhtM(8)oF!!@|s7u17%N`V?IV#$08?pcKbpq{9rmx0MqY+gsa$gH}Y2Zu5wf*(inL? z)}YBb1RPv)-BDGQC{c!2dn64^dCGmi{Tnj{vde`HVF%3wmK|j_W5`pjQ=1uy#*Moe z)Ba{9p@sN}EG+I$cm>Fb5NtM|_ysfcQsD39D4SKUoKv_WFpsWDPFu9ep^T zHSwB#6(WDH>(!GPSde(b1+dpQO|e|AvwQfxM3LMQqphEXZ3cd(G|xt=CH9-Vbp|?V zhol3N5FW)}@id$#t(QwXw~m2B$3CtOO|HRvT|S=4=28uO{&TQy}(N!rT#aD@hvtCRHuC|p0=`X_nW8M zoiv~k-D4&II`~PfpXELF_xt1j+Srno}3uY>+OU8G)3XuxIi6Q(M~ z)nH!+P0IMh#yyx$eRW9(Z0^O&es>D3F0kyxeBYLHJQ4WK!^C1HLIM)vf505@_hX{A zuy6l_9oW#exXctdB(Vp4^}cTW4a4~(yKFkw@}SwvmByI0E$|A%Y9HqBZ+`gb+4CcK zJYBTL#7y13%d0Ik{CkSf4gSZ&v^RTo?2F4C^lwFym_}}C26MafuWYuTeGUw?? z*9cOM*<+kY=9I#mAwNuW_orz)v<6cgjO+7li|hr7P2DdJ=JJD*p1v=&y%r8j1$`#K z<+?AK=RRj{3H+D0KP$Tjr49gBR|A}Xu4!D=It(H36zQ~mY6ciKn6lpKYu|paApfgBH9c-kRNG zT$pV>^S2t%PzqERo9#wEJhv{)tupNrm=za94kSF?>!fk!-|~8v8Ma0i>{WEac1Jfa zj2Z@=clouwy!xkZbtvfy17eK^DzanU&39o^7@&X4aMrKtkoc@=&CGibND(vU<3@7d z({OtG322-ND4E!%DBhoHP#I;MNu_22Pnm+-#ym!P6|5t>-}!tGyPi1<_?dj2AD8nr ze@gof=OUD^^Jn?6fqGIC*XvzKmy)EDjfb9nkaK+solBYl5=1yQta}`F^SM)dc%#Mr z2hj!-LZjyS3^r2J&S=y+!>GpJ;!^Wa3mE#Ua)BI_U3fn&b43Ky(r`M^Bt zn8J3e(qz<{!rA9$m6^K>dZ_DCEnMU9koGqO1~z(g;CXIGYQDjG!ePnp?WU?n$Z@mU zrVisz;;!*Snp3t53(32hVnUue<+-){d4~MkOp=RHJUr#*q@eLV0Wi<8Gr=FgNZpx@ zyhY#n_liL1tyUKiTz&8pz)r65+?o~Nb4`PsQVsNS4@%ZPlZ3gDr2Fyx&%Q7{)Y8e( zD%rXp;%&jlJBYTD8qqM7QZNZPm;C&4PROS1EFrOx243C|a?0U$4s~h#RGF1x~o-^H=M9T_cDFJ z_up+N{sGe&SawF70Zrm3S)B)J>8WBg%WC7U`!xH^RqtF$p0Ura!Yk3+dMnkm0Ni>c z9ljk z_)YiX(K9XTl+lbH;qJ~OZyo4yX@4<(z;w2iuQbwBWvc(KET?@j!U&&a5OPPYIQ4WB z*jIF<-clauC{hSjq{uZh}%;{vqeyzCY`(W?;#{qw2d0g2NQieTPU(*N~iF2Tn@5^lWg*Z^J#|$C@ z08zM84sRb~LN(;^7K|0Us&fUC#hr=4g;z{dtWScNeVT;)ArYTbUIPIIa<-4}Fi#y& zQv$TK6?q0L|0sKtdsUeEEYNt^f=s99*V8v&9`lP+h)Oj#oLzp_nUw01t3to#WfDK7 z7s{stWh#|>$0vVQWLHZ@C-vL+>D&;}NCRgjKnTM5x~;R{o_DrC^*t!gv4_)qnOeQE zOZ9xX;^eL75o9PH?nsfT>&~K+DGdYNJHVVfXh6=2M(wr;TPoym{BWjrMKR$M1a~Pv ztmobiMf2nqkJx>;pK%(z+U_|75b_>dovP|AEZotGqU+4^!H-W~jNIviKUWU)D z80@BMck$<@kZ0N2dAP$nL4OhPHrUG1OivFuW&J9~;u7cQ}U+KXrv5T&xxHQiQn!4_rj@0I@(EEXr23=0VW zjkYt|JakAcPdZ+<^w!t#98J3 zJ#&F47f3aq`rE!lp9og=BU*cxS0zGvChKCw6qtE3c9M;13W@<^x<8RLvsx;?EFlG_ zJrDd{gi)48@m8_0h3np*Pa{2VAKE5LA)ZYQ;)u-!l5s<@@vl&C$CtF~L*xQNP;UNVyLl`R8QDofebCF!3c}{K;c-Z!wRSeW89{?#l;%ntwa&boT#L z*{J;HNwj%NusX}9Sce1>q+q%0$X8ePCTr34s5o%PQMa{mpPqr!3r^)8ZR)yzb*Cur zoEo{zjCG-%Wj?Ar2j;?-sUH=KRK6N3{?!aZC*Km7uHDZUl zPOnBfr0gGty>8|}e>p$$^RjV02e$pw_IePnM)^vg5|PY;R>D#Z5nOJ+5>$b=N)_*# z>4d8GJrxiq-`fYpx7l|cPG*#NpA%yNsaZwd!y{9CNWdk1Sstl{@R5+*;7?RUPW!m# zjX8ap;vSJ&4`_X^Nio}NZaa~Gu^Zz9oDV4yKM3iKRg-Xv@0$Rt^uyVFO-cK9E;@xB z?LA%|iFjt~ueYeTU40H1z%&11vFQsuM9|t#1|)qecRlArPH0VID){VMS zk=qHGaWpPocHY=7eoQDOE?eP6Z$dx^Fm zxJ~sd7WWbQ0uOSzFT(XBOE>X+$0yHeNLN<4($*QbF5eAtIo0sgbe>Ej<`AKja^a2{1DGSFh)HeLFU^QRVbj9A1HmLV` zSdVDGEXz{Z)Ma=`B2kcDs0Xo(#Ocj`4#Rm9+a*&@j^s$KY}s_8yhgZSlI_PuDE1bYq=Mxe|m-PQw1=ApRN| z>R$WULq|%Y@L8eVZ$-H1J1kqETy^(R5)dO^s%lHttUNytqdr^PdVM|061D*F(}g6Y zmeN^B`qFvq5=G^&qUNZl{j1Np4QAWm{0WeaeeDI!i==hs9>)38t*9;iNb;+FJOw`M z+J|xI+#0=ad=fd{i#q5V0#Jcx_X|Ehgc>~e+jipM8@H-Ll!^j$}UjlLPxg&OHG86$k8F zQKAlJ74K%#ges^yQJh{e|M8dt6jHCg%~!v=0S%G4&PCnl;j&$veZ|1f{vUp9mvsVm z{X{ZE4f&htZJ*K!zq<3uKAcghbpN|bh7Bm5xfxDR(riWC|}qJb8z9qsSyZMP34m)_>%qsz8omd zE5G`{t9Br>4AYj52%1-ukO!gfXRLE+pizBS+O2Sr)Jw`;tdBH^j; zCWz|LD2&1TFNVM|VjG=cAd0KWy)Usex`WHe_uMvkx{TVh?u>I^ zxv|Zr-Zw4%ij;gtTaJrM0c0PRv2%X(^b8#bbQT1*-DXPVI}W7msY3fTdNpzQ-WSv2 zSN;|}K>?MBCv^&uquA0Oiv!Ct6p$b{p0kS73VDw&aK`8Ea2o8_z8mOJpW~E32>nf( z{gEoB^21((<{nJL`DDdi-`-*)CN4KEfjr^#`p#9XvS%l@@7JvTVRp$9OuyBedNP5a zfez&3PcR|W8g6Wq3rE2~DeY5rX0C&IYGI#)k7zMs^8Ip&$$OYr`b@6!7qPuu#zVhY z%_X>&JbErZNWp&=Neq-@LBNNSE+TJJVYCTP^}wg%DJlwq{hV|*a;a{ChRWSBb*h%q zn@|zTo8RQ@9?J??K?9BGQRD>j+!L>mRxfYt!E$~eDU#n&E#1mX{YtzZ+PtA@9No(6 zQLh(SSNFB!O>LR0!gcTb%Zl43P-^@UbTNFD5DR=@FO*q&T+UF~P9H@n8rMEMF?+v7 z&~rtj61sCyJFNDb9FGp~??ViQ0qZw1+Kp- z;sMbIIaasIsHbbN+5#A(_vPacb}2jOeF;58!R}o9-A!2Sk#6Z}Q#-y%Qm~uw^7ri} zm6QM&{;0x7K|p6q)kZS=!B|xl)A%^o{$3$ns>ui;rPmAle*BnaRRimho;%MT!|-YQ z1eTt)6r)~xje^fDRX+acHarp@K20!6ru>d03mUO<)&PUY9XE%9HF;3}1Mb<6s5>jn zDNgz6z$46+ug>Ug&Pz6_GKb`>;^NENk_lcmp=X+Ap}W)LdmckJ`Zglgs@kK z7LV1LRLbAoi_9OKK5hp-qXJ`&YMqkpV}8{yzmuy&e*lhjuLB*q{NMV<`UlGzT$r^l z$&sUS>>>ca%&8GaG=t0yLq?#|is8oTRmxMi->TK#r4YkzKfht-!@m0&Qpm~ib>0+(FXx(9 zZ+~EkU=hisFuuuyPl;r?lFR*K6juE`Kz{x4n4)W{mwY2!+dE+$PR(oFvE6c1Zl7`A zg=0OEP*v-=erSOg&2DIT!EBuh!7}mdet5@<9HM9RxRGwG-v=e{boFMmidf4qWIsmb)PWQDShI(bp z>A9TtZ+w`qV!7ADlWs&g{J# z07YhoH@8yx-IlRa;ei*2DXe=xi*+c3f^TRf#@dp^-LDJchk!Nz=Fj&*^cJ3 zm)@TEG6+bg*KXkAK-%eWv4_d_FC%oWgApF2-_g0HVdePry^Y)->`e|~CA6&@7p^qS( zOm&Nee}GYj4X3nE=r^&cJ%{r#tx7B3BL<~(XKg}9A7Y9o3X3hT{*Z?``txix;{LcN zdLqj1WIwZsKMkVz!wF<9Ss+mYpLYb>YA!hR)-u^X+tj~e&y#E(tP9(k?;$K|7YeQU z>$+|5-qF(go$1aWTm5~hMSl#PW2RfvmfFqVvu8t@v+XGCQ9yIs#?6yYe|w9xKSoaX zdNN8*-eAyx@8e(g*nSUMw^w4lZC^9PKynE-w7B+Jn%hl5%?B^9;w?JlXa7AkwjHb} z#cu2ROKVL+_3VhemPWn#!btfk1{LrGhk!GesE`e9A19_pV_9!crylCr@95#wfk`_8 z`TH&o?WFHqh&Qml;y!lexcKPnd*}|Q2_sQJ1S(wb0sbEk{^ibd{xy&(OZi>N7uf`1 zxrg@W@ugATQ>Z?YM(H0biY21*IUU~@eI$Ml^F}tsx%F+)RfV4-Dpm!xUKkntG~sr+ z{E0jRqyVuqvTdOTA)<6h-1%jEa9X>Dddon{OHKR!Pi`4}y04~ws>aGulNLsm$4mrYTF&4TOu@$h|6 zl(Cvoy!i?-qQN|#MegJTa!6)?WdFeKs9E|oWH~tEkbHc>lidJ{nasXik#GT~tdRHC zv!fZl5By&jgvkae9GEXXj{Mf`xjZkP9-L!^&n@MbbnfjE3uOcYxng7 zk>o?v|HR{yCt>&if#*0|`)3SyRQEYqKS6Vjx=)$>Z+Mp+VcKSRJ;K;T=&CPS(G~aO z;e|;*;SD~*py?+!T>uWYbcMvzzFu?JR}wODyU#$%4wW}rFVLjhv}nrkZ*s30O8!(? zma|+wjeoo#n}=i#oWx+LtWMZ>>ssFipN7tz89NY;tIzB7DTJ{JUNzNkU^(^uz7$09 z#XWwgO*m+txJavfFJm94FbeJvG$->_Y6@BMX9Z}q3)AMDv+s79@>z0uQGHHJ2EQvV z%kKdB^)Ppt8|-BS`S@DRyi|cFvQBC+chQ{^!;OVK%%$7vkudYK+~l_1hL37^M*fMW zMPUm4@yCxB`f~H~QNzY9nAZY-$mv<@ZX9D3OV!@*xJ`*8y>#8D_pn#XIM^cN>l65A zEKf#ytE(yBV>?9lsI>j!BKbX@EgLxD#$y}TiCeDo>r*7U(N%~~s~x1r^TiSCVThCC ziI%Gkt~%*<`^n)Rkl5F6Oq`u=2%7pmslufZWP%U!VhQ1!{wGR@vys!}Jg(1+kPCZO zMLU0{COHS!9{%Y5OfTg{NP;o(Rg$fm={-K12rj218&GvXd^+uLIT_K@Z1>&8id^B+ zqEvBPv*t~NMs5BWvx$$8^D_SFG zU!Y=HJP>z1;QdxoIy@xFHQf7>Qm}r5Kj{2zy^`Q4?U$>V#OnxM>qRO`0rF-f7HQ%m zQy;vzSEC-SR@v=CK4xG71qPb|r1*4?9_yB@cmo5gySdVM^K_T(4-tbdSZ09SK5(iPEMIoMV zo^oIs5N8D!c%c&QgEO}MLRv$`pdZ^opsQM_W0NX)rEPi>4%GUV=W6#XerA;HRt z>UMu;ovx9)K=d5OP;|$0WGH|gnEgJm5X;9M&?i`jaj(Q?@w5_!4cT9VPf#zc7522D zAqXD|?qKy5jQ8MliquW3;tM{kHv^Wu%OyUW$<2kR;xAnN&k%xxiG@H%F{53R%bC(NWNWEm6=iVSHKj1aeE0Ma|PGR*}?qkEmKsn>p=1U~GbW&hf=;GWpEM{=q68c8j*eRK#*`O{YW zWw?Mg(`Q+B=>cpSER}+}Kl%lgItj9fdi6at6bW+>Hx}@?aHDwj@F#2Y_jkG3Q&$oe z00eNB4!X1)c)DE(3U6%B7qd$DDw|A{jL-%_d<*xBD8WE$(TQi{=jri~&8Kw;ou)1N z&+@q$NaR(93vor1K!5LJJN&T*?nwhg@NSkMcZoSK)h)UA_qc@p5_y7;lQ2gENnDlw zodBH`B*xP&t|HI8MSjdz!l~vn*r3RlPRo<$=eH7xK5UP@Pnl3hLL|K6%LQFyyt0F| z8lUe-a4;d+%q5w>kIpJh7{e2x6p=DKU2OT_4_8Sd>oO7f-3-bui42K@_jdi+bs&2{ci z*MVoH<5ytLx8@A&Z-0BF#{eoOP-cs2Xz#^|u z(&5!P&YbQE>vi~K3CGVq#N_&x?G$6UR>V;&IgoH4Bt_WHhWI3o=GA&Q<+m5#r)eF7 zZ&fbh#u{z-Z1bG?Tk=W+A_=WzAl}~(b6x)Gu^~vt5QgHlx7~iWZzZ#9HZg!EHL8;o zzYR5k?9~+7_jN6uo$C*a@(a>%89a~B6OK)7-;r?0q5oEXRCfF2x9P!RPkphb^1TP! zb0(DUiTWI(%&nCo;XiRQETm!6;z*wT;W(QkJLPT<&(n}N|BBc5+fe*D06n_<*sF!- z!&3IB=;!;G-nbTpFqZqhfslS>t8QqE;rpU%)qGx@*b_LWqTBv11+|Ny$jW-~BKfv5 z<76J|Y<8@72UtS++#QRVT8bXgbJ^AQu-i%w z(pze8C%7d#sk$V=Y%geR=!`GD@Hr_0X(2i+20Aj9*I&MI-oF5jvLPd>5}OafQ{L;~ zKQ1N4_9`g;I*wC1YWqqm*4+rvz#EhZKBG7D`*pq7;I>yMAs$lP4NhEI3eI46W(k=! z*lz4)udoSRM2sr0?_~ z%MSp`=yAAH9%blAJzn34QcsbVPs}4@7lm95^UKNfpHL6{mf9 z0lrOC?B_Z)-}IDTELBHsf+nT*8HQ6OUyiihKnr7@~imwjDDge`ZM+Yc24 zTjUDtL^2wQ&#_;!6c%>}L%V+b3fs&ghi7e`^1+Lz@S4TY#XmyN?p5xq>Cw+}?KQ0U zbpASgs}1~_yZxZY$JI&P+4HZ;C71)|wVw_mrF3|Zb*<wKk9?Kw# zIbKo&!OncZxhLpa;zN*+biu~{45%|7?5BC#SBztM+DG4QaQB_Y@0#aTfTj-q?p>8! zH24&fQ+S^Pm5Glxp837#Ac{NI{fg#<)|?6&soH9?K>mGNF zFLc-LZk0&Li&+y$$iP(55%6CbV=0ZN40;;RHoxl~$XuYGx$HQP;2ST&ZU08T4-_F4 zk@r@ge{am)(KO<=hbDNx5T)|dnkw(8R4@6-ypwM^Xi&xI6Gq?f7tY6^b4uHYO_c}c zn!fe)1*~YU5O(nv8GEGQul!k@z+bYtIY`IAKjDRP9r?$xgo4FN&}_FaFak01Qk_0E zx#2frs{7QLPWwIsjm+njWIO;v0@%^%`=A3PAFu3ZfKJ_BXIWCRNFZ83PP}HhpeQ^I zqQCwg4J)EWs!`8Z)f}4>oyPkSWo3bxR!Sjk7WOYr{&@WM+iMgzq$!jO#r*vd^hZ;> zm_QdPy$L0{O8+ApiT!a>D6m!$V(cTu9vW!TMBHVCAAS0ThV|u!l_-W@*FF#R`tH+K zUJum|CI2GWuNH`^uk)#u_%J~z{+aEmP@HhBNYf?4WH)g^q;z5z*YzyPPBbwA?R(gyN5Vj zM^Xgcn~L~K@SF3XC@8W$EI7;VaqQHN`B7*?+RrQ+<6QQ>?_FM1a9>_HB_VHT<9E%E z`Tpj@f@61h6o@Mxpj@)Ix-Oa@RR)CgdU1a=up7jfphWE#`cJ#S5;KtO$$Kn@%-#-QfJR|#za^VaHw{L3k8}!m}KO5+ggl#@! zc-b4@Nilfx!5IEN2j<~Rzm`kCpWZ*&JP3tZ6Lz^ZO)(djKlO;_fA z@N5VU`X{sT*z_vJ!26_EUISgWng%Vb?1y@%KkxbYkmTH?rjkU>&vqb-0WKNEiQbuq z&#blcgZr^q5Gc~V^{2V^IJ=d)hq8L-lLl5Vr?^gwe@2yZs!DhgJEu~#`WG7p#3S{F z;wtN9u?cceZ$(G3_}_lt_W`9`t4c?KV4lv8ZTt+ej?8@g-z5R>7Pdb>@g~7p z=O*z7y1g^@{w!L0EaXY+$uiay1!qfgi%2tAbEatG=l>=MwJ+ELjsLEEhNF)Q2c#rZ_{A4`Qx znblG7c8_^B0-?v(@(SqJht^m9UL2eAF{%B-pK}LB59G*X_Gm(a-bwER#pCE+U0*Y0 zd>)@SW?b6TH>p5^Lsh+IMD+fwtv@IbL}9LILA*H_tiw-9kRoGW0C+?b$4l+Ae*$+= z+cVC>X{2U%SjS|Fmmix$!x9k)(m3r#lt_Nd8@}^(Iq>V?L$$Z;V+7v9Cud|i(x1T# z>dSO(fPWdEj|Ql++v#m%nT7j^N%mQl-973JrEW+h>TJ#T!|^TsC>TK03^yAb^zCz4 zSXoEYhnA8sal;;zIo$H5yWUevc_rDe6qeci9gsalkV$q?saOWKM zB^cWYKsvk3Sd10fBCJZ?Ye)3-Rw z9~>oNko$<7rqk%~&!+s>T+EPA*%e!L0RhaHH5P_2A; zTO?T*xT zI2W*$`W^j^*eCX*h0o(20fW&v6?l&cyRFg`boD*DhpB`YUUTRBQFsAoGwuWPJ1@5{ zms5`N9#+e5LN;RE-;1-*uav&r7}?)#gRbKDw-?CaMbJ_*xv1&wQD&lC(WVdLYYhn2 zrvSf_@t8p0U7>}?dQ8aQFpn&(mTO1mG~yR_#8=PjyxQ@W!U8~B?8Rf-CJrQ(`4RpD zsp0CqVVy{4d2W69PDDK%g8sHw7ti#Qqk%zTlEX$@*)38q7xC!q4yS8k8Cw zK02e=0^Q|sha|FDRN{Tq5_i|KItrFUTtGbz=^slgJ^(6P|MBwQ8<>EPYWWv!6^~{(fA$JO7&!(Y`4M6PC49c* z^9#0SjcSMOA(F!_JDeFP=pQR5!9FZe(N^HQOsVZQ6K6r0CPF zJ_#v_wpC|~?c1U}2jD!{35z`{eztRCsIDDV^ z4Vd-eurY_@y*mrO3W>U0SPF zLEStA-~hNy$RfH-XIEdNJqAD8eM)kdOs;1A{Fn4m zX4rV@*)dOF3i*q=&=~55Z91|?ulrs)ZFyB zKZkGq4n6Zs*d3z;gYfnVpo|90r75&0X@DVRB`25(<$Feg%P@OC5Bv!ZAhg5p_m@3d zgXANWyBp=;ys`cY>+P4lV3uXum#nM6k~X2Gh($x5GR8Qp6=!SInsBO8Xmn9Q-_W+E z@AnJ$hL5AK$Kqb{w1gzFKW)D_n9W7(B3PN=09R7NoJWR%9O3;WmFH`@LFO+mgAcz} zvLmCBZhiMjmbvRvRc{BhLHy?I8_Cs63L8`$3F_Nkdb$^)xI#M$l4*ER=^qP(A%LZ| z35mK<`!Xm`?pGpNM%Oo>Z!BpaO(g_6)%0S=KpU83ar-wny!m!pp7vG?;Uh@{`0b7$ zo#c~~eUkZiwzuWHogplpewo9nQQA1fmH%SPv~LwQ@b>FHFcZ|7&+BQ*CGx0rKSBCE z9`%83as^%Gvw6G3Fm!O33DmZs6;m=jN&a@u7U0g0(>Tvz45>yJ#t4CU4mOO0;z?t% z#lh*r5X}7;F7^kYMY?Gi7!TDO%mKAp{J2=L6LL$PyU!+T)Clu&)g#FS1A|iw>dNAG>-(ZC{ZB?OdRa>d#1to&`aKCV>LCnug`UK6NkF3Dz_FEPv$}Rpg{wDoo0jmWQ0HGfqkBi_zDAer@-- zQMEF>8SJrF4|M1mTKZRe23OSxfyWaraeur(Gil293WeM`M4CXUV=P)>S-z;UHHmA-X-q%qJ2B# z#yp+L?Q87mNiM-2oq_M8dl&af=OXFB?P!1o9AJ%ozgaB&6)Q<7i+At{94s)>bfjZT zR$tdvG;{(&*w1}&W6AaQ{av!<;&&y4>UlVkeJb^KyH$Kq_tz|kB{p@J-`!tlMqXa| zCu)iJ0Q$sfYX|Ai=IAxIrz`2yWi2+F^;LP&C1y9qB?W&IN`#i-9($X*ZPKul*%Kon zKuq;y;nqu5aB(r9@2cHsNPX{-XtBPU{P+68jkJM1ilI)#M`+V{`aq@~+3J2)d2IPl z#;20%eC(rOJtrD|2jz=D!Wj^H&M@uttS0^}ctuKPh?_T&y{Hi=FW znCH)^&Y!-W{N%)DZVyvhiqj@`Jakq@|GZBxSDNvE<5@Bu(QTQ%S$po1Nx6;hS}0SZ zkoD8&IZN+*+9}nze`LQ&7X9#QT;3#=;+7EYLRiMSYg9wVNF&?*p)d|Q#(()N?Jz&` zB$qbpXNf8J=UmOpWxIWnU1UX+`QC`Rtv*a=;w zq9V!sj1DZkW6!!Vm+zB(Z0>jXY?Hh-8u&-xsA%N-H7Ep4sT6FP(h@CDu_07B}no_lg0LW@` zwLYEiKl6wTPl|TTws7La=GfJ;9^R5Vnm4|-RPFtx0Mk(4`gT9g!TxL>3xvhV-ytp8 zO8>cs{O35~?q?(n@dbJNN7?``Z~h2s3e-koDqy48dQ2lCuR0kskfazPPM^avCjY<+@m_x4fAs&jEsu}V zc&^GRIYJ+sMJd#b*O|Zc#0`~#E+Egp2q%Cudy);2to!b4k>zcxzp~s3w27}X7WZtf zYo+l;wZ3sRP@3Z3cm4~QqE0`S(Rt8%{&dU11ikqkK1aCOyyYYq?@UYu*w*D4?(ezN z{)YH0+)Z6X4fbPu#?3d=!cm!zF)j@gP3J1*SkD)h#&%9nYZ01axCsTJ0!6VO<@M!M zsFM0Gm^-|U@`*}+e>`$vC_3T?I#B+AA)NHk-56Z=&z9wvmNS&hJ0*5Rr`T2oC*edWC%WTh zrnNBfbXSoL%CIm5>%!2#_qlm-dhsptOXAj-o0WVfm7yn>WFx(kqQg^=3<`>2%W8R! zv<^@%oaNrR9(TAq0IoH~WAndX{I6{eGx08l@~hB4x{e4- zt^jIeS}=m+tiD5+${ZBs*R`u4r$sfl{W?DY#B0)1lFzPP6f1!S*t7(3XPNbi5vizCQ#X8EfDjvA(_(dKWt zW8HvmKFZ0rKMlA2K`%Nh{vgJOziLZlo%-N!)y#;1<4!`EMVVb?kSz8Ig-Gxwsv*GJ zkug@~nD!;=`<{1dBWiTHe>cgj41Hx{tl;xoV@3Kx0eyBp0^7*bdz7oNg2BrBAgOk% zlYel6lNs@x>H{;ue^U*0xxlF?;GXS*v2JlXx>0;a?@%pFYk-=1m zb@d;ce#CnV*VVf?wX-krMK|{R>lp6){`cOX9kuc^DC)a3t!V>wby1Yull(kbBkRGU z@|iyM{LYwNIe(ajDf+#1%3e?tQBz+luFVVp~`*o+$FO$B# zCv%j=!mA|+=P zfNgN7fnmP67LQtTM?DJalv(eIa`NaoIezzBacDUaCqtw62!UQsEV9x``aIr0zM6AR zE&%-of^d9~r(1tMOVN{To7wyOT);G5z9->|(ul103~aY3$XRIoc!uF)ea{+!vbehA zuOP+TyVshY+%K;WF2Hd_QM4-^nZ*unhH>qZkmD5pPM69zX?!%`t&6?I?RN1(d{Uqp zxb}1ic-DY#(fDZ2-m98E&c%YK3^kc=PjgR*?ggE%4>v(cJoNeKe3K`1(ipM+Ld4QK z^wqP{R_2&P83yk?IvyacxCEaYBJ*r;8;q2V`+5UjIeZPDGcl*jcQ{n5V@y%c zgA2!yqPBar$d?&KcFdBmsSRDx&4@jgM5u$u$93N<`9k`1n9xIo#JG>4bUHSTb$@)9 zpYsG*2rR4 zKT2A)vH}P;kW4DsumaM^}FHcg{_3IBD zec6SCw_$z#O-|K5F24{AM(J&RWx&sHP=N**oP*aTRe57Vq`R|;fW=YPf;$3sNbou| zeDkEkfl4wX`ilwh&+)zKkB#{b`{AeI_sdkxlEAVbR>p&iDdljNQl-MS42VECstxR0 zTlzrlvHE>}A3!%#2Llcz~grW3vy*1 zv}}xp9%cc1Exs9l>@ZAd#RFiG;n0HOK$fcOeHdPJ3r~hm9$BfXDRwJ_9}@<(&*Y!vv~se#Te@{nkYEM+ zNioBnTh(LVIr}p^#E#W|)jeFev}g8pt-kMv3W!`X(mXcPOO?OdVoVC41@4c@U9U+2 z{ae^Wh~Hv64iEdTnk!hi)=xz6)UaEq^JPLpqT6kQYvL5m>i&@LvfHhF^W{Ox-9UdCCxvrd}nHndZ# zU42J5+>N(;AW>IO@f!dDUVn(?prcFOqUY_5dk~I7smtEe5jh^fpIqNVg;8%%ZtbP@ zUACwWK^SizzCd(xa;teozkzQak>$qLL=)YQ`>AN6&M%j)Yxh8vEN9XVAu0s0A)5{65;bUC7z+HC2;#N)6LQiFI@(a zlugv+wg87UL6x{@VPntfhP}tD_>pJYeNy{9$sX1``C!zaqh7)@^3?X)eybBp$X7cl zhl-`W@qPO-nxpUKE5vbNsmB>>=S>RT-r@d4rIsT(d?@AsJZFOZ02b<=J9`%tQ4;P= z8I<$5Sm&^cJs4L$FYU}IyX2x!`MZWFL2UU!KIg`he3CtM>-Td+?)%nZ3z2_QF+K2J zw}{2UBvtLqwC^~K4CrsZm$;`cj|@^8_aPETITG@6xT{K#D=D4MCqqE2^nNIhxbEl2 z1i8zD7^h7YtQV~1-3n=^(6hB&cX3A5^)9CK@H(y)`7E=8JD7L(e%hB#Yx!0-|MuW7 zINpWVJKl8SdhYLc$iIqUgG2q@b-*2P>pR0&sdK-4>wO@|mS}WB+QK({KMET@&fjM$ zyso8wL?@$Vb*y`#0t-{r~Hhbh!ycW0T zw}!(=l`H9^yyfTV9Lg0u2(;XMIj?EG&5y?%C;)mfp`f{F0_d}HRuA!Bt`?0WF*FwI zPXvsmXy!zGf%3lmt*Az7?2Dy%YfD}jxb%~O$!%OP44CG@FP8|hupk1SA*ls)%%wK( zPC;hf_af7_LK1eD5h)4tKfGb{) z+^nl;WShsSq6&};bQRS#%;S()E(LVva1^`?%-9<8nsLqwJ2F$S;9RdI@t=(Ftf&+q z1KW>kw+AY7aG-1;J;z*`rc2wziBI_nw3>x^wGgIN%puiM^7~~(^IKkF zjGcwBFOZMd6PXFU{FGYA)yT#njymmDH!lSzR;T7zaA$cR@xaDzc40U3(e0&(`#sNJ z8_wf23_haE5LjURUn zste?FfGbR7O>seR$gg<4av@bv7v*%UG{V-DhWb4~gd<)``2}SYxOsacX)<-I2x*G=kU55?jaHN*}l-di*U}?xn(SNsFYNZ1~3Qi z={N3Vo>icv2n!g2DWtrU-{%uJ42>t zHN|w)6eTsNIQmJ~<~sV1-2Xu=Pp&mi{VA_9@{A*sEuQSA;)Aqe2A+2fodlG#%*Um^ zUox(8VSz`LuS?lJ!n%Ix)OVG77s6>tGcUWWth5D5DDKCzpP)x(#v?pRLMCtv(q+Lh zQ8jkW_q9O>r8B3PMpxP7am75;pxc$KCy%oJ7~f4-xo{Sn{k|b-#`p$Q_#mmHwyY*e z5OGz;5-I}c*7~*pia9(1nEK$2fJT|*fo`|wSQXjvO|%voQ zlYlF7Eh5MoKH8opy!FenZ-hNu7dm!g@Bd`6mHG;x?+IrbN@X2 zDbbT~*PxxVSvf4d3^612ac$*nJ1P#sV2K^JpCf$z400*CIL40onh!#@sZ;n-ubz|j zsH7>EAWO;TlpT}5vBIN140?=QxkZ=1>NTiUC2MmFdDFh8Q`NIe=7zW-AL3G3iPB13 z9(652rE`HJL>8c;zqQmpi1!5soD^nn8Hw+ct&`ahWldHW$<4fvYN?k3CY02@sP^#d zFe$Xh=Jas>X%j4nJ>Ckp_klFJ+4}K%Ti+%qFo2)_xTq3eoOcYB`PgPq17ik?T;egG z%3uEkC<#@BD;BHK3Bx0Od_;o*u!z}{>tP~Z->=i$m4U_gx$jW6cHuNhR1zB=_t*O8 z6#Fdy4rxt2%~X}k3!c`;RULv;rj{?QI}#-MbWPhgMm<1!v%f!3g| zLO!^B&&$t!%A|83r}3)oX|KIPOP>(LJCxu1bEptR-|T@8+E;*X-RmADV^hFi3CgB>L zAgxMAZ$2|dVEKO2!S3G*@i_X}RPL%*pbVv*l&z(GynfFTwS;;7Ixxx2J3qjcmDOs1 z$d}8x(@SLS)k=bMu$u;LHZdyTi?3*ZP?&TeN|D`Z|gW zTxs6@_j)N8_R$6Ws_N8!wkZL8gqLm84iZ#Nv&7Yc3r@VfURT_oHH*8z_C|4gi1hHo zU#r;L7xQp>8D4odPm+#6N7`!@?x@)GeA<4i{(3C7)4?PD-06?l)a6jF0TIWGYA+4c z%(8#i00B+&luL1{fnhwlT#Qy1yYFBi6sPaF(+|tEJ#AIUi&kFi7ue7e!7f|{VLgQn zD<6FB<^wRdyWJsgo?1sB@AkUkkC?@N;p=5zN9XVe#W>J$NaqutV4-qoFM-oEaG>MePyD1fm)%$QWZ%;!`$VU6(hH+o#nQ@ zS*0GK)TW(?bwI3nhS8k~U2Pav?z~m0An$=#H;!c@fZk))k$*$NJc2Q_AuN6LlZSC3 zkBw{R1hZrWDGbAX%E=~HaGf&~%h zLIV<6F$o!9N!!xZR%joxl$82d;EtBxMkE*-sd8b=w}!iP$(uyP@ki*hBkz;L4Q%is zfL6ailO!AQjeI(|)cY)^@k2n~_*G@fWR)yu3DehbMs4`}dZ2sk zfA=S{iec|OD0x&8>b}Cm)g@_#PJn&NBqX-`b3c7?_6NVZ;fk%nhe(l-@>T4u$+qb= zcM%eCJ05b97Bd3Iz%~4|UUbaOhC-E*u*$^m@z~>8g)7J<`;>AhnssL-IMLdTs${?7 zPiyu2jc5g$7k;e6Lqol*YcA9_H_ucxPWF=H#drJo;Qc&upIrG1-cI(~{P5XzpIEw< zN|T|!@D|P_*{OA(Hma?~_hlq35x?qsFx>Z)c)|)>&HJUgJ*iYrALmu- z=-*q_wwKaXLCYCXZg2YMdRo42l#nONzg%J%*bWNEV4;vYBK^hU)d@ssa3VY$tkQa( z_2CZRbsXzzxbg+9J5UvIekOT_j6}4%t!Yr)fm>SIN2t2rw=aF<;kO=^Yr2|`YI*?B zB`rTg^TGtnx2C40zHjK-P~4j(r&f>=-_VxL)yG(krOpt826wr&uXBMg)yUE4{pj3J z-2JLgrYczCG)oEKIIhpsmillu9@P)P0*@)@YZ9-0;1xjMBP3luaa#e=!YtW=FJF*2;^JOqc!C2n!~4;Czag zA|#yBjNt%TO4?V`2GbHAk@%m3S~weXgzX}wD&XSy8@~VpeGUUumQRi=XrX)11~*xj z5(<1ld|E+B_&oQa^&7fMh_qs9I;t&M-^Ay)4jZQe`qP1^ykPODhI7UXhK8C2I^IGqi zcE7YloPgN?i)`d*Sspn~NK!LF-i`n#@%z^07<)br=bVQ996q5}kOD%H8@S;@eeHcn zpv+D7f(rCiLizZ-pVFUzezx2OJ>o&>t_g67tGJ$8;NZQ%bd0LFy)-LDY1$jU9DFmz zV*FxX%S7t4`h+h+tL1*ZC(deBog>MR^_z~)hz!%wy4jIn~coO=Yl$2|Jg5T%LTV@i;P6V#s8l+1~eZ43+jGa%ZJ= zt7_8|`5;}V1fZbc<%)uI1Ma*CDnicu<+G~aOCHW&g?dIZeOV9t&0>9j`@O0u#1?Gxmr1)RGsn^Fq#JBnde&GsmUd>hk zy+D~edc3!Lk3~}0tnvFW5W;{g0~$O>!SEL*RPVMZsIuP1n7yf@^0;1Oq4n)U@q>^k z7j!NY?M5k@Xwa_;8j*DP_`LMePyXD2$yXDt3K>S2D4O2HUc-&)xlsEMCMy&y6k&6= z&mr&9^DTTOFUG_U&g4BZJU}k*=d~*<;3lo2+29GWdJf|X85g)L&f=6Kc9OI z=E;3Kb8o1p>&^V?fgpGhjgIzP}7hsH90pSK8tWY@JUkT55R6PxY2h z$>OxH=O(i0*qzwz_Uz*gBKgYeRJ!?@tjPs9$L0L$KG7+9-ZJR50_8Fv8GHnkcKC9< z%D+8{iy$X+Q}>7O-ZR~=tTIsJn`z5O*;3deLBn#oBn|3jRc?;(BiN$p_F2{YbjPu4 z|IsQQ=BCSw3EtYGeoqcre`XLCJ=E>#qE@f>z@C2mO}^p#zI^YD=6R;6>DtAA;-Ppn zOJwt~Pg!GzZa!{>N3zE=pJxiY*r)zDJYu!jk8=Dbr#?xRUT`8NOGxg8m(6#`sx!n7 zrt(L;29F$n@)Rm?!?rwvD-=&^T0oe_BmGq&q!3tVpR+HH#`V0nzLEDLb|{@Z&c7eQ zQ4Izr31$xsmitt`!3Pkr&`uWmF(87{}vBf<~tuP%6l zCV%9fisQ4R4Wk%(zk~Qj!i0_~3DV$(!vswN|I?-PUPE5Bn7k-vgK$r;q&Q8(UNzJ% zb`4p4^(V%y==2g_ZWL5J&UFqA{C$kc^(n3(UbEzpw$EeITAvSNWyB0fs`UyFsWE+j z?(>zm4dJJ__IgyWC-FSa-o8C3M~67Wm&-9*O3{7?g|wfNBo6Cs`mO`ueE5o4Kz}?x zSeAgo$z3Z@;t&~W1R3c!%a6p!(8g4plS=F@l@Lrq398ChLOAZz679%aTE4y+6ax19 z0OZ*omAUlwf)zquxyd8n+&!D7i)P*+13gO0ari=?0`2tQQ-tz&8hL5s$tU}GY0^%3 zG$1_BpMB)&ya2IrPU0ni14C}B5)xRiC{hWCb|~<%T8g;^^Es>~`{l@nLpkLrM`D^< zh8pq~yPq-bKo|z3GY)e6V0csG((m-4kXt;dMn8|=j08Y({NB?wd=LZ^U!vS@>|(UV z<*T1P8P-(GuwTb$Prvq``0@8Mq2LFQ%4y=R!MLl2NOJU&_B8s3n*1Q6i4ni_#vOd} zJ}(x%*|&)Bs?@p4nUr4ryI?3YC7}0rhsnq03UqqU&KW8l-dWmifkN+diPCi82)&a) z$QCQENWiR?)1O`GmW}&XP`{UIgAgpP>0clm>#~kNG^PaWd9tLw;ozhojAu9#)_z|0q zdcB#M%=h&gGCJ=rCz{|GcF((rKtY@K3I6X-47$Egt-Ss44~=);9CXSil3=U2U@57e z0{KDI?AKnV*K@x*>D%GUz6r8^$=*RrtWB=wW6`!~1j1r$FLAVoPlu_!vW>W3u14Qf zRcIhMDHN#Y;sxCpqAPg_;r(-L4?chD;$z_ER{)|8%?+x1gMO=zkWP_d)foy(9qw6u z)wXYJCkCVgxZB-Qxn?hv{4G_+ix=tFb%VZ^`xPPRFf9Jel8=cmAW^c&kwYB$azU|d z>7v$T?6>*T#!I=N#(XWf2c<%DG@eK!wxqG*ZXJo|}0yG3cJK8CD zUb|OEhv(`*;(ag{e4X=ZKf~7A1A+k&#C`2#&V{|1xy0=I3iFF>zJB^K5#^Iz8BR*pYl0Un6={E#(LT`< zuXsK_aV{P*Ko^R$=K4Zio(b~FIbLXmfTxs;{B{EUP8zrZ+C(n1MTC%K#T|eE>CW!V zJcIiACzBorQ+gb4Dj?wKZTkDbLtK2AOc1mRoRX5BhFdff%1JYdh`sO?ltr zX)P2zB?>MnY!gcJY*}$IpRybvC!$)TPipW7@%bichav7?sEAzvQ2NXlcm7k6!zY|{ z1RS_6teLF#;*Kl((?R%VzcGTB0LP*_DF~NNA!1unT1a&Jub_loD}5HoP>8QRzn|E! zGoHn9em}0zkfet}^?W9P5gsmS7Sa2#Z255F45|>%%u^%1nOX3UfZrs=2(d74w zKRuUyr?6HAIh|sZ3(&&aV7t zU}dm7Az3I3c7AL3u`w>EveEfZd1*T5T!t`k3CZ{S^WL}+>2~}gYoFV9P`viX;Wi@L z!n)plrrN`j8gzZPG`ic1B#esO%B#3EN-sdw4A1_O(I{QX29raO@2ke_p8~6}6^`%r@;b5Ipd2#Yv&+|@i4Ti5# zPr$XqOW)98B~sKn)$zogTj2#bxeYm0=LHusxKtTGF!ZP1#4d6Tp~%V;qN&!NSJsmw zZ;OLNI6o$$=b8P&xpPa|j(T0)5O~VB`a=A-pOX;J-2?n%Ir$fVVc7?xEp6?$b`j8H ziznI!W-g3eWRKhH^u@;_z}?a*`TYduSa1D8n25Pxd%b;?;Sw$K`OcrTA~y%*BTKO- zYn?TLuM+Ay81_m6qf zU8ln8g*_-&8vg05;zYM}9-ZTQWd*?;mhc|Enp^ViJs8AT1alQ9y70fqt?~U|&HAY8 z$33U0uw|s|We&wKuRC|WU=%>t65ba1`Zi~|AmX>e(jW^ObM|Ijo^y7fj#X*^_Ui(r zdr{K1Y|JzXCkegjhkUgRU9%$Goo7|P^P>@;w&e*AkY?Ffra>L+SL~DJk0N89bRoM3 z(|y^`3n;7Ki|1a1ujTJ2DVe{VqjIyYh}lm+Do-#th2PV>JqO|W7n{{r#OIRJ$&f}I z1GBoGX_}%RFe3+zsK3j;okC}^VxrzpP%QY~&qRBCCO4#awKVjX_58`9eF{+$t~$Tr z=P7*2kJ(kH1HHbCgW21#B7-995Ik0aa6b@7rfrB31G5+BH4F;h)WQSrt2~%A69nA2Z*1z1*$|btR|k8a}-fRLn@VeMyD)6M^KN$`YHhbUC0TwN54Er*0<{^Un#dGppGI=!D!$cnx;@ymqH6Lht$}xI`i$!7mR`&@ z!s!3HYW~^KX0Q&wp+qHw*VW>&b)Dbxo6OT6p*&6y(|5BmNBbs9pB=6-0$9XImZOVb`P-4?4m-q%5UrjdKC4=c%Z`BARv z5*sL%-GtdN>wt)R_|=cwl0^-fUZ0>eVsOvJE$ti8OP+$RTsn#dL4W6Lf!@* zuE!$+3TbV|3w?`IXj#7?b!6Rc zD(3R@`doNG(Y62dchKrb2#twGI73+Cp*@&0QgzLoj;dL^)%41xw)D<=bB2T=O491X zxy*t;3c`J^XR8Cx#O9tv3)(7b;%qJ)xh3{D&+1goIN~$Io5QB?gt@(-W*nUuE6%O> z9$WWfrC<9%fjUT^ z9P|bQovOFAPDd^B$z5f$7Kdrz*>QrlYOv1{wSq}RoGlQg*tMpm?%}|m^pW>@9QJtR7Ty)R2o7b+Ia$1v4H+w1Htp{1nhFz-4 z5+gW2SinWGZxwMJIm?DFM6sUVuHPNiqv@?cu@j*PLVs7f?EsKI#$?5RcX>J~yM{oV zyrxTYjvo;jAEWoBUO^LN^jP|h*^`$T?ni|mSdTc?xVNyS$MQ)Sp*%E4;rl)3?mFGM zCzPZir1Hpj(JAew55s<`CD{d7p&8a?L#vzM6@lk2LygMl{_Gj7!Y>S>5noD{cE18% zDkp+|=B)D>@e~bd#~?C2fognU7uP(F9O1Pf8-JL{ zP9^Jcf$c~O`l}v#>o=?_m7)(+tiBI$`k-F+^7ks4;>GMHMNFJ3Q2A$P-~dvWEzY@y zW|IGj+=YCDnrR%2x~^Wrvt2uIeF8@p9_ZhKBlIhsE_U@Wi)|fhGl!tbg0DeAiK@y?M52s4h{vnxx4-uO z9((H6+XB=E_jlD|zsIO^y2QYBnBQxChltYt5`kD?9HbfaKG=Eoo}ZJzlpFB)n@+S=Q_jl?x2l$Pv zel)|)Io^j&hkwu@5yfeCm(QMRUKLLFd69(2qiL4SqdW)uMRsLrw_n$!(hsGc2)SGh zn^A!92sC)8Jw#yceehPe_xrH#F2oc*gPM}nE~zNvQ@ze`t+a=v4KKUKfpkM`>#)~1 z_v2#j8g5*6&3y~{A`YEVRia(8ADq#t`W6ceE6WrE6qWP6HovP*)75^-9{vCj3dx~u zmiQjPnUbQfqX1r`v8qe;6wouFw7)d%X%Lsl5D2M#To1x@IDdFaYA1;dE}Z=mtHT|2 zZ!r3Fm~7&c(G0lI1#BWczh?TE^`i8f_R1;VcJV9$q4`qxL-#2{GB+(wuP+>4i;BpL zw1SMp&!TZvIL0FH|j`)B{%2{#b=lb~yK=Q_DKLoTaB< zaM3%47%S000sI;iaoJ(Lf^p{8WryaO6WBOzfiE8 zAojSRVr$`vR+k}!ig=bv*L>N4xQj;r{>d{jy{VIeK2IyP4(&(;!uaBb%=G9IW0He% z2#~@kn9RW)&KY4H-!wbi83l7#dr18f*mQk*SqJzrt&1BMtIMpYaB}4JWs2?)*}2<3 z4)ue%Xq(Y+^6gge7Ii;i_bcQ(YBpHo8v(zvWcKanP4g)j6VBc2FIRw?VFml#Ln{XD zlHvxTwgvvEva=7{N^*H%`J*Jz87Jic^rYoZBp?iNun+Z>`dV*? zRA27pLB7G@_3}N^T1?{_FfAV)v{l$X_dij637$fq*NG)&KJFoI^#>jtifJS&GBG|e zK3EPnC@&$PZn|4{6Uz8ge)gpi*5N@jJgw6$oU*99eoS4jzR8*9GM~0Qd&YqIRkBso z2pu$7mC!|Op2DpBO-!UrW}w`;?5tfZxX15OS=t#LuJ4oAQ4iQoM-^sl)@&)j8UaEE zr2w7WkEWpCsbO>LsT$yxc>7nb?^f~z5Cv;9u2z9{{5K{wh*?UF( z3$-MQj^mX;N#i?eHnXY3dxI-Z?03Z`69%CK8wzo}M$rW$6AU5yX$znsMygg?wM$XJ zmWB2E0`dJt7#Zg>9`pGFW)OT#Xrqaxr(JFW+_iIW);bM(o`V`0L?wkrQK$a`RYuI9;f$_<~-q+60n@g*9RW48Ebx*TTmzgY> z0-mF9y_p%e(+;|)nhK|^bsoF#aq+Stq{b7YPu zPY>nj|59o%lW{wL+U{l$WI#Tk-d7Y2u{k#;fA88f^qc_%I|ts1&rw(AMQg zz7>}>y3c&O3f=*`@#6xx{+|hn1ysV*f!kL=(5%u71m1Bh&(-Y>V6&S{RN{tUmRmnk zNFf`^{+@r3I{KX_>Yvn*aR&9ayVf!b11C#|>|bEO9j^NEAF_z2Amn)7IzJyL<&rJQ zou~_gDA}qdpD7i76}&|Ev+E33mq7uP4f1^bTvJzts-1328WH#Ty`opAJo_5UCC4<`BuZIrYSMA}jJOK#& z*{xS4u7-n6_et)nG9+#XrqiA(dh$|6ZsetS=QsKLIWxZb6n^vP>em%V z?&~f~coHL4)5R)L?fT7^R=-sDKnqxbRM6=PK_(`nd!isOo=! zb&1imy_9t_ZXNj3gTLmM<&3U>bxX`RnC4z(y(rRy-6Ng5{!zttvJ+}}3zdUS9`G@+YEL^yd+m+3(&m)=*|8QZ9G}0}tr2>{u_?-#}!OF5T(k zet{#q<`O~!GU?WaV-XoD#YZrQ{&HY?zLj(-PM_N;vxR1PjP)G?pGlN)8hWv z1q+VFHS6+nGrY6!4fN?`{2JQ4FGue8IJ!gN8v7WK=m=a~fK|>t`GUAJ_s(61yynH@ zZqN4DTdi)5C>W_<;29X?oM<;WVLIGdmFnSqxD60u&qOui4D+m7^3%GDYdc!+7Gm?q zGvFd#0@-?(7Q;?}VUcuPfFD(h7lHyQKEnBu9A98qz7u}?Q#{n1dxPHXCO)oT=^fsa z^V0y|G;3aP#}4+;1m52@jK4ugy^q^RP70cYqJ#^RGpK4Eo3z?+O(hjp8o^YmLFn9E zwR3Yz1-W!?m7CSm*_bcyv$f}7zJ;7pdl^yxQZq7_UGEQR$Gm5_BOm@mr<0S}i5P@B znhq~=^;)%LNx}jy(lmSyf;fn6#pBE+voOBVRN&Lwk@%zm{6N{!H_w{*0K~_v zPvmRb?ImkC#xq=6P)!fd#En{>H#PkQ)A45Sn>W1tzQ4JEqdE7PCTLTkO>i&Ok8bP> z(r=>HE04r6G%Bc!jNj;qdaG2zf=Oha4&=!%Xt70M+8*%RPo5(>7!TSP1}HBe(&ul< z`Z~I$H9-qA6nfSkGswtoJ)5V{{xkjtPa9A^a87iabJ03hc*xsEK0KKR8T#)js-DcTgd(oYXUwzsVUT0>JM{(n z)ug)-sB**0?-5g1s(z;&X(@~-_$E8({#j~(%+>eVS;=VgeHTGtV7J0TsveKs_q=3O zks)e&&(Ih2-1+94UC4NYq^g4erWi3Ey6=!*NVEI6oMY(bZ>7yaTMq@N6_pZ4b-y{?xR;?p$LmKs}0s64&{`wp`ua*rKn=jAPL$CX~xGmi_gj z9Qq)t<~$%><37Zsk;BzPLFZ>0K~TG#To=wJud5lnS@lAY7jBOp3ovN zpX;b(dv%V|edTE(c8MVpxYv&Grz#wOdjsNTPciNm(x~hUxgQJh?dMhNN^E{0B9y_x zc>36fg>n%`_SnGb&lQrw+IILIZr5vL#%;u+0YG4aNaGfKgujnJVo=7-#C$%xC4|%^ zL54yjiJXN`E(su^{1b2l8>D1kvflG?GHUI{1Vado1FT2MIOb@n;G-l9RCxcjEH9k; zRKE6!Wcc|&y-V`QeLsmR3Q%94oMTIgT}Cg|$~yN-`F7V`d{qK%{_{g`@#F4?fxo-@ zZQdORFVCMa*^%YLZ_-r()>H`Pgy(w-g6fIe&~IV<*0+Fdc`j_Mb5{Ly2wKG))Co`P zOb7#XiFF#sI3n?o=tlE@UnMI+ay7m%T_e5(+1cvVetaDY3as_*HdWuuh0bik@KO`# zuub(E7_-dfZ+_?SS`!1I0FQ*${o9Voloow5?h5$M_W{>N^8(r1b>Xox=a+T4(9B)L z!;iIZx2M zg@W@(ozc8N`2;3sxr1F5A4!CpC;V+oxbqm#_MVju{!-pk#-9x-#aVzLyVGYs4=^@FAgUGMub=vB_uR z!;5X@+tVEq1I<2hw$$@_+v3rgwLX9xO=WrvFM2bdT#(G+b86fZey#0iNG6UUm(L|c zm7Px-ot)5xWlMZU0hR5+Jf60)bBZ7^@t9Qn2ETl(6*C|i#24)YwS3huBSZ{}f9o9G zxi`Dv*#%ziM(<6hD7%X`Lk(WXxIYvwOgDwGTAi+r5f0p|Nixu`dx5LsrOd5V%_*l& z60R)S`;X%2$NdGVA%)ip1?DX?zh%3OL_hXqW}Q>Ij#&LNZq|qX5Kn7{kQx_O^UJWa zons3zm#hp|>u{?A&xo1FMc1jAizXdPIq}ACb20zw%j04>(ab36ec& zARcfJGaf)Co;>SBtyC22 z&83wnrTzfL$;1LVB}X_T3LMVA6iZco`so_necttF97qyug(vs5vw@w@zx0I%OL6RfjL2m56M6MH(CEID-2*|myPV>@NdUOA|S_gwHlpkf7Y^*Y>= z^G8PATiT4YxW5eYXYIgaZNgznqMgA9Jb}v!1Pg#%RRDE%zg)3VK9&#Z{#hHza?0~L zh7Nqn!Kv=BSNK3D{u@(d8DyE=+KkOES0lg2Kc0$^p-gW73F%say)84SPkR6Q-{tiJ zTS)Ye+)GgRAXsxx(&7*H4h}^b?n)#eI70N}=m@t|^q)E$O3n)m)A`F5wwJF)=l!WW zjNEj%&h^9+6GgiFnHDOQH1}&~Nf>c>-~gM9*#>&&@B$v6ZfXaife3BlvSmzV=0`21 z1Rg4h(mDP;=6y5YIx_lf=*8rd0Qb0;fpuT&s!Hce@$+1kzy|9~2*=FWl12kLUfk(Vh;a^A9(JaSd_h5)IRM$V zJQ7E}-A0Oky|!tDIW9EB*Cr-EI6EWW_J|H-CpuDli1b1EJZlKMtPId9?b+j(axw{+@(}ekC+C>r?7gIbb=Y0!3&77hyo%rVY(6e8*@5D< zsW$c-iZ<$W<)2%?Ulmy!mE$Q`R3{E4gJ@~c*F2kkzW0I1ZT#~(Kg*wNAnPs+Cu^v| zx+tD)R4`OM!9RMVNAmc7yxs;aQ*9K55C0dyjD|yrOe?f~^u6+%h~F3iIPdI|R~s)t zj_JVC)OqK|Xq>}jk4`Qdn(JHD`#>3J4Bsq%48I!-YAi(^%d5=q8+R1Q>3-oRIvtkr zL(d3VlG5kcqBYMKGc+ysOS>1wc`1xto+p4fjHhuVEFG#J<@vzPu6%yI{P#W1*s;<% z_i|~p465LTEA(Q_xom`x3G(X#m8(-)1JbjV`#jxi54OUAF}okfPX*EA6)sM>S(Qq+0up)LV5C(-^q2#AYVcM2=NLD`t@QVkfua?+5P4rz&E*Y% z6^hMVQopY_gyoFm)-Euluu2)?6$rreuse$TE;T*B`oZkxlB7e(c5Bv)MGYW1wDBDQ zy1<_kc9oy%(A$)$s^%@es_TuigB$ctyjcfTo&}eaH+q0kKKe%?KsoH(?J8fxt8#1L zTMkKo)`m_g*DgU$bkdCGa%_-fgMU|?gBQi8%oB1@@^>od_mwm* zz<4`Qxvl9BMroLFnQa`Aa2Yu%|)xiHnFi8%q%C>s5xk*L8WscB~u&{)-O@`w( zgoFjsnI{pI@FoP|9DO->Kz{H!20h=&mspyW+^w{72yMB*J^>6^IEN1e$4MT=Dd zlv6zAIrIo+%)}xiN{1*OC}_e^bng>!`kYY_9T*_j^8+jx6~B3I1*aUZWwCH?@xD)x z^{cNO1ym~<&*AzAP?P6gZ|+je;i2#nTau1wb6hjOYJxlC>(uEH_OO%Z(VUsz)Hf|& z7_<@Kt@73kvFFKcwv`b?MQosxw&O!*z8P=c8~A$Q;1OnOX%5dpem!LG?R}TWv$+J(>X@5e~grZU2P79xi0uD$#!;5}Fq#zmIwHM8Y2XJ0)&>72z z-)YLzM;c+bl?GC|cEIOd;_OwXJ-rsA${BiZ-k=CoC9GygZ@L1ullj5n@_QJ#JHs$G z6R6u?i9{XS*M9Y90Ifhfbq?>Kejcmzp|yJqiV&JNeK>j=Uv5L z>yGfl>9hSB0E;zh(4+B)8Md2v>sAB2Rq1sLOKz2w?(Hs7VH{skX1&+scQJhiYu{vM zdjMbhtbWIBjCSO?Qw+Vu8lvSP_G670_iM01+G4wFHGQQ!rEXi*U1r6+Ii{ zl49)nLTUPM$9LT{N{?93viZesZIwZG$ayPIdCZNni$!IM%KaVk%W1ti6qWmf0L=** zqeiEzXn2DWvIVdep|IB=OOc|3@29Iu@Si*xTe6wqfL#2y`zHg`NLu>Mao8^Uz9eoW z_nq|Uw9m}$3A=xaOa5(&7nIWp=UYIC#;Gj>Md*s-<*5Z!cDkJ}KI@hczX8)tW(VV! zzyinP;=)5`mOa+#5x_NRUwOWb^3d5@Qp5yY$iTM7s7eDM?vm8)j{P%vX0Mr?(u3w7 zX`d#O`}@>wd!3$*>~E|dq0;_|D-{Br>uk(I%b<`ls_gUFkUywBk6h{{(9tUBW&Qpj zMs<(Y{*Y63@O2)WMs=UO=OHh)z}DD$|FQGGl<2)04_Z*(i~YJY`K^v+drHsVao<6G z4&K|(`uQ^|k>0Ol^gBUV{O&>gT6{0|oKnFiyKu3*UdTFcxSQ5ogkJbScuXSMpJS86 z3BekSS&7}~FIInT{cCO6Uw%4lVSVhW#@EvN8~-fSL43ay7l65Ue!rgjb5&DY6L>GO zDdAj|!Hfa=jJ?11%ooh{%-<`7pEi6rXrDy^^P05b}JP;ltA zdH?L0jo71CfLqLut$uuK2*1KQ+GK4+-TBl<_$2&gwhV)n3DwRgoGYHXL=t8&9({Uw zoDND-f?KzqK7L%CA<@>nFD$Z*eOxjRixc>m+amwyMKV#0l%8Y&hCXK}%8owN3%c{A zAvB2~p;AABURRa-(Z|SNKWc%0@v8RJ)o^M)l1GBYTV8yOn6j#oNPsW_V&^O9;6kjP zfGvu6NUr_@kVi)QVS3I~jQNj=;s5fs)z zO_vMW5~{}hBp-gd=|0QTm5JdT_`TfK+w7?e1{7`nq|16E+h0#hl^}T*IY9gInwfMe zxW5yOJXw651w&e8qpyDZjon*a6M{W0VoQxLtY{uF1<(}s2y2DpaCp8zJ86roug7%( z1S)cjFF^MNker!yVi4KP`=Yd5K=Itqk#9j$>FUV<#|xfpZhL0KyrCDUp7xFSbP4tw zV2|i43)<+u4rQ?o%ayxdQ<8D|Sl+~EuWH4L!W|xaCLOG96%X!JWp4ZNojY+GN@LyE zjuSUbJZ`_}6&Lplla2F@`Mgix^tdtIlpANg^k?`ns>%ya((J*t{i?8_-W`BF%}bZ- z$!X?-GWWSpLL%r;f9uZM&JfogmNk7o(+pzNi4G z)^Cl0gBb>|#-E1Ehl3f{-w&;$BqYv1)`UOqF7_bVZ!$FWd-iq?+NJ(nuSWVxo}$uA zLL-=>)0!;Rkn3YS28L3y{B(lzuyC8$;yYW-s2`ofjrfnI>snG3i=w{-f`ms9L4qVf zz&FVvA|UzeXVJH&>efsL8xc7B?686-Us*FgI$@_=ljFIWj}*i1*-)^KN8liu%Yh-u z4C*j=$LHm99`^0s>fVgEZRHl%dwWejD`063Mq$4(6us?u%ilXpwf1oYVtC&haKOj$ z@YrwgF6AZetIm^*i=8^mMSB!tAANGMsu|L!1DJ@CfZo1_?3r~2Sgq&qJlu{&3V+_9 z>{|T&HE1BmB5q`Xl5PU+pO(`#|>Vh z2Yu;AVW=TISAoZ}zT=$R+&N(BAM-lRNpG=4e$&TuOp*_YZHstB7U5UVW1) zE_1cd1`b~b+R7!RcN+%ax!j(A*Aj*B;TYAS6n=1$a&$;%=|q6n^vi9X6s~w;MKNMf zUZ>4=(z&$ga|q%VaH68?!8c;KesaiQ7>ZHchB^$-&-QkbC@z!Q*Bu)xfMO>zc(3_>IW)6Y zHIrJbi88NO8HpTyK94o*X7hXEc%mwrYp7kTQ=;K%k_jhdwB_8{HgvIK(!CtbFKC?6qv4fWID;DF=3Y2>0m~Y_{pXdJQTKRDW;8YPB2J$feciS-Mx2Uqns1M$J{duaXHvNzK|nI!#w$73Bl-m=xi-femnuqy8A?aK93XeMeNiv#qacBU~;T1WzE)3M&)HlJK?Xht$f+UAN25ie`kc z{uygNMVQn2v)A3UqYj-#;iJwf(FWWF{N4G8L;y|=^anc^GGIutZ4WFvF}YFO^np(i zoR(h)BT}3b7NC4aHTQdDcAS0C)$`&&HQm=Pq6EKmeY=K}~81MvxGZ{=7p zgM^7a$D^?HGUfeokI?F(gq!v+P>63xR?0QI3V{O19C$=z{=WCD!M>EvHOzRA7$N#48#0jbvR0Ep1G#y z@Dh6^Q&t^L=tIPlS8=Z`2gR60S6XbcT$P|w8j1%C^AmY($jgbVFIUXUll+<+7hO8t zj`RysE?A8hv|Rq)#1}^mKCaZzUM$P#`D2Dp)viI4SWS z(>k5*jRcZCcWvSyS)9Ptw9Sh^2K08Y9)krVcuQH7NKl!VU-i) zIqu`XO@d8oXwB>aQhinzP4Pv<^GX%IPUVV<@HR1#QGe)!om#^ z?a4hI^O5`PPbc16qk43AJuA!eTd-hB{NKCEL(*=kP9aS;q~{E z?d=OX(@!98tHl5ZTp71{*&9;yf5hx?}M zpWOb!Pa(fl)V59ei%dFzj+&yz-xaS@f7M(9@o}du%9ua-MyA&kS5ws&=PTVAj4$TB?j`m{H8tx;~v)YZt& zxf>uw5wj|P>EfBI&r<&r(O4gIZohdO!+wq4-kT?4n4JrFsQj@0jVCwG8K%(gb#NE^ zc}-G*I>4?4FN2C{X1Jv7zph+-eXc;e`-IYUwoVHi`Mt$mcb?|M{fR1sgVIJ2dy3}{qKKT%Vy-XPY21%YHcM$<~6PxWl@8j--bJGI{)km!GGA%#O~vnX^GbInl*fmRJUz5t%P5 z3##IK513AyOuZ3eiF9E1iC!048V?nO!`2_^5BYxpNFeU_ma@WKY(2XB)y7+hP zbIwxuJi$ek-F=Jrtx*f5|D#Z&3Na@#J;g8koxMTe*t-zYokmQ7KNhQ8I8ma@g|X%1 z=jbQbm6tk2$|Gua!U)D(19b;Z*$PB>OmRf3+i44LOX5L0P}YT0{1h554ULHKXpYH& z%keQm>`ArXN$not|6}%wvZC;3ne8#P{=^vEde6!MS&OzMpZd>tq4qqRQCaz6^LJu@ zfK&EVPE$BN6~=|TeS6GuPj&BjVDL=Bkep71qocStkz!xkp;TWdRrMap+3jS%1Z>e9 zIimoJ`0R>+8E}PXL7CTKUe=$7xK&5F9He9-RFH-IX-UyCUZAkCNo2IKFf6dc!=y z9vLq{tdO_`;^(={P}wW zH-#=A7xMxy`k$&8-kvPQUAAL}#k$`!9OYQ4XK-wq>lx16UMXfz@Qek)zXjn_HqlhY zpCm+#uTpr2maxo#H4FH!F+FnahX{X)`Y;!`p;J$8F%}R?Zmw*l+3W^C&L&-`cvr{C)+s2ON%9 z5zX*$eM53PSd~NejpeRTTd)kjEI-3)fPiddsSWhJ8uPjD#4w+2`BT6dP>RU!t7WnG zi=_r>6-2>7DJ9RhzUdR{db@jK)5mF)b4~u-Te`5UWX0;n9~ze=d^Jwz6a9)!D^LRB z5VX0+@_Y4hp<IfC}Oj?^QrBOI94hhymbVg1j^}wGSD06YU8*UT8GgV_e!-t zmoBS`O}AcmTCEr)px|DOXR{9j#T%XwIZcqidfS?Qqdv}p&m)J#y?^6gAvz>Kk1H%+ z^b-#1M4PQ195Z7zT1qq&w^4jMbzj<)lIGX6Wqr;(fJmx~)2sn6m38nr8vJGc`5*!~ zO|%uC(1A?tMRFCMy=Ucx{3`7MOGCtl4xwE7&fN!)dFll>B)!uN2e5dA)p0^NGc}y|B+FzScXbu`|F@G_& zX6Y-jIBoLLYaY3GDMCT{6KE{By$>Tm11>4v1a7EUex=7yEECiyrpqJv4hZ3LTifUb zQ_pDaXIUn1;z$4T5@RL?46yb>5C3}E%bmx5IP3cG!^050K^S@$7RJuydxK#7$4S8o zKws|H9Jth>n?xONKd2PpZKrv+l@*hOJ7CR-5)#TPlY+x;h@hH^t<6)2c>9)~*|va`13#&b_R;^&Wh zc|snXbczS@ALlIPCtW!?uqfOt6uc)XU68+s_0ljdh>b=Z<+o_rM?WuuN#IxCGSG{( z=xaP~>qi6gr%#3s)S1t=Crth;b^0Kc|5Tm;lYzKpVw)CEY$^K#>Shb-^*7A z015VP?XB!>bug0AdVg*Yl@8Cr$=mh|%$dMC6;PUN#IdJFK;XR~$zV&*-qH-(3x*@n z{c?Qx!}4nF{WDzl3qVF~DLsI`erE#rtYS#i69E|Yl3mfIEIh7R74FZZ#%d%CA*TEM zI02o*O?EnJ0S>SQo@ie7{Ab^6?&_1eW-zu0yyt-r|99=oml?Ta@1+RdVg=aHZ;PBvpXmQFdju&tmR3uV={lAW@I1=t5#I5@lzq?mhQ)SLwN&t7+#G|tGaFqa&)ILy zvveDR8x0}I$x1v#>g?ASvFoeMsxSlm++X!Ebr(3E9r}W~`#O61@9}f+L^Sl$6dA)$ z`@ksa+GbD8%J&_pM;&C^pFFP*1ZDxvL3#*>%T%1Z`^fHLW;#Mn3IErq`&w7to}*Gjrw)LkDHyrVvtH0S^~T z+aI^$?K(?KPUpSMJ09+8svZVOyb5}wN#~K} z;V%k#0ro5Z);PsH_WeAl8Wf>`F&t=!V>AzI-=*?wG+2`C?%$cF!|5z>_8b=QWDF3? zrL7s=P5=lJOvrG4dMAdr2meX$JN_d7${wvma^HVmVN30y3UiBRqCeT;xxnuaKZp;H zEce%B>?`eNKjuw{+85D$U56-o%8d5MXbS5u=bSzl>SwK&lMV)=ZNmQ&f6fcJUCKT6 zd$vcZw5&hyRmDj~MU|IGxjII6+_QC&z%7G~S}XVW+Kedr5FT*kyG`8`g}ec*yneRW zBXr?`tN2o&Pqv(Rx#oB;rvTU^(ZblWyPx%5gjuM5DK;{XkH=>tq&aFXmAT{i*?uEl zf<^JBStyToKly+EF1_kpqQ?sxjP*JJjTY)KZ9VzE@cjgbOX|9rPlN>nAYWoCxv;!c^@XP*IlJBB1U0TR0L-3;fDmiwG})FrFb{ElNtw z6e;yhcta}9{-u6W(}Ut*amgh?*%KC;vu*0g?k7Z#%qDiSv7g;3o5*L46BBX2#OSY^ zsOCxWdRa8I)4aIwDEu|dAn{-6TRjXzKAskFI9t&Qsik66&#`nIAliJ}7sBn&OGmH= zHEymW-05#ne!LmI`KyEx4iT(oL@m?<_FESeC_RJYc?~SpUN^Y@mCq`R76mLTjyw$7 zektVM48>vf$0OE`oVoi=sXh#mV1*99dj?!+g{lJ^|`mm!%B$Y)dH& zoNmV$8m-;!^2v(+ML+X?GA5Uk(&K&}?d%nwUK_)uek7y8A1I9`04&u!$T9Exkdxc%+Vq#KxRcGL+Vzl@G2`Ry_YaSM&k`wy=-Gf1a?kjtMWi|kzc?xS zD};19rc{vWLt`YiZ(Qhi!~D|Nu(^4D>yp0_B>KmO!8_>Rtk611Kb1HY9ClttH1Y67 zNp0L)LUUxkn|`sr6sRw#LPx9q{fC}uWf@G(AYkTBAi|yY9)-x+)Aj;eTp=r(D695R zS~6y&qu_prr$N3hz6o@K{EZjL-W>Fv+I))E)o!nZwxIaRpKd(5#4k*)&L!oBC}{B+ zTfocqw2Q`A9!pRT-&g*<9G5Rhn}*Cjmc1La?g`ia%bF2`Fso@WcLnmA<=B7Zk^G#Q zqUZ~NZ__xZ4XuzsTQxLrU`|#h!L$O#;SR;r0aX$?rdBv&!K=65_W;`{dOz-f|B9Pw zY~&||i1g*o@FaZP`cj9K71i0Xio_c)*{@we1a^ldx_>U+bY3U;fh*nTV01*X7XvJ; z?Urj@1v2xUGMQl^&Gz_Y61yr7OkhX=)w6Fda9ZBpm*qfv+-h8juLohKzk`Yp``y2~ zm9%Tzg*%+K4cR1qStAebk$ODNNpY$9`%&t}wJtCWl@=*e=Wnly*_<(Vh9Gk)L;@;r zP+6)$z~Xsmq=;Uf2CT#AYJG2^EsfvXsdQ>cyDM^mKt`$_)noLvyWJ~TbO%{=DxLel zZ_SKlCbS&$!({C9Pf8woj}N9jSN=#;P$dC4aM2t3NLS;2zaUikrCE%j(>Y&WXfCeI z3URgT2jH-9m45w)ctWKU`K4w0u*9$~9Q+#Y+`$4GWyvBseeBQwR|?lb`_00Z%3B-2 zjp|!$?+3&caPC4J{G{>weI706+bYKKuzvm!Kzl?DbA;iRkDu*_i;|=Cd-P}eow58+ zgn}hrU~aVd05@*25Di4~_>E})1apZKb+Mn1hl?LV26@)Hpx_Tve}M$%s z_aeb4*4-)lSf+jOKa>!l2`mS6tSusSl^^_W#?YbN;2nFCDyej1SC=6GvKc+n;&15?rwTQ+KEA()^ewrM-=n&vm1jr4|;* z6`fs+{RMRPY0F8Fz3=w6Zjg<@Mkcx~+!qJ+AXNtU?;v>#p6|T|AncsJMJ8{I`hFnb z6%k3#^Fd-tC@F^`+ravzUPb4wDhkBMZsjI_-m70o6}V6}QT+B)5&v$|<8^&6)xhY3tSZ{uDZtyPkkZG%}D}vWqh+9o9?L?N%vonhT*s0|Gh53xU7gJ-pn;U{&|C>coIfXC2o zga#W~FTnqPF_ZI<+urAHhw&G%$u+-xBnSZky!pLbA5{w9`X6HCPkH;jr)QTqykE-` zOOYLnmBPi7QC~2RZ7&QO3;*f$E>dBt#&Q%3=ir*Yhk*i-ChcmRc^tsiY6Eb>tL32T z$jpQc{}vJX=`?e+V>UL#%#l*R&-q%ZIC zfG1oIq0eP>>l>Eoq{(g9yoZ#$ns7SbEX~iH|F9UxYr4Ws8S-D8qm^5E)6u9M#M6V_ zXogYCHdZU+45tzU-7W3WKD4X4>OZcqY1}C}%Ea7Bz&no$PcqSx0V8f6MWMLzRvt!MU{W-xYQR48m11M z0iGl%I>bff&eqgM`zgLL57qZWO1WsB;MvXYp?T+}$`81zk}BN0Z&Ac|BgGD{$D}lT z#KC?C34VV@d5zbp+TK_-yHkKTWAZ@w+>1$k^gOu;HvyNXydckFhq*@5QH8 zll0(M%Y^|gH@zhQP)diX8vJ&;+j9#T72Ye(+;ID@IB%l2J{CLk-^y7jST`iU%<~M@ zx8%;&iU!S|{_uAVdy0M#%4}U>o|p5aU?|aieQhj_ut7n>j6PjtK)Ksby(Uk1%g`4j zz5s?u3zFXtga#~R9{UAG8kjpoo^$Yw2u#VFYv%mRBH+sF{CKUxx|r)TBtuL#>TR9B za`Xjhyl_p&?DWFMjrQx$#F8eD_C;i$ud|ljMTvXb%54v3`$nw)tnkJkKfC&=tXkJ^ z@fhR7o@BqN*#h|edRPy)rum*f%oioPzy|95Cwh2+ID#+c3wxRlw%7Z5X#Lo+t~b4| zADw1$Rkg1`_OF@!q`=wvK7P37mO+IaD(cJD{quh0vDV3H1!>7&{V>znsvEM{LV_WFTI$X^6tsdm^`11Kxw zq=YTnopXjT-Mf6^MT{grqv95MPoH-6eNhHTJ#-Y6;=+_+)%>2+SbIP4I~Bd4K%ypxrBMZs5nVXm3}k-&>9zNsa*(YH4zM!Ka zFXcoTdlt+td@Pk8)`Ofb*irq)%Pw@q*nVT9R+jd@tRh?afqK2nLY4I-*$ zIKPX-#k`I|Q$)6^ty^K9eO-j>>PuylnH@7O*7h9;M-W!RR=m5R?_t*hm)FkpAfppm z`h7rpW8Digj|yWS&nKklcjI;XtJ0Xe-q;y!-awkT+~7^NrqHgp3~Q=$ zKPugmMiG-UTi=xXR+O_9Q@uj%eXq2hf3t&E1aIOqnBk{_P|q-7jk0nRL&zeCpo`}t z8*yJk!WP1*0~Vy$ulsI2S=-k2fbc!S?Kedqdbl4j*ugu9v(7I!PicH8E{9s(y8xjS zZqSXSdPKe}EENl{aG2NVcbnK(vvTA+Lv**n`rJ-zp>Lm?Q47HS7kcQ$K-xfMHO#{-PJmX;UlDx$L><(JDDwUyVA^xGtcO2B z9lHH?(HWD|Hf1i+bB92Cy5D*4?2xcDFz565m;%06t5#-40(-G&5eWQ|q}qQVs)A&h zi*@sV)FbwddHb~*0qDQQupOeA2=Bq*a~E%WuyLBrWFYRY5SWWcbgGOO;Mw_zPx!MZ9RD&8(G`fWkopIDxEZy)ng zJXzsMcHj@(Zb3G$V9XZo6;}a_s@v!^KQZuYd8S0 z=MrG3<$Rr|i!Y>t{C*PokVF*w%s<93{1xTo6qIu4@L!5oXOQg@+F?$8`)wIO z!hWQ&j+|?#^XZg)YJ%-p9v-8J|FSSd!k=Zy+tS{VkajPfnk8mBFmXM42wHTaJ;a1r|-FiR-68-$>AyohZJE~Yo+_*pE?%`q5L)u0*_CP=46eUGYUWnP;W3J}RplHJCVr+o(@WeT&$mPbQQ z=6T>e&Iz(znSY``#jd5L?YZT+vMmX{s#}idMegFeAMnI54nb#)2mkV1`|94ZovHbc z^8Tb=7Ypi253BNWwj2(1T$dNjjGyn}ME;H+>vz4W+v(BE3gkzwD1 zht&|mrUl;yhl#30MC%LX4wde8tD=65x}AL-IGA60pB z^~;OI=ngmuRK5_+p{jcmB%0Emseeu{5Y^U8xSt0mY#MG%xrh4SC``d=RAdHPIwWTD zP}{uk4Hgp(7v^mT)izBhnEsSrbhGOt`&#yBCV?q^X^icQS>M5bh>$@wa>8TZRq}Bs z^`H&=ME;LEeiTV2x}EkgH5U9U`TY9IMnn;_lRmuF@ERZVvnb;N$v4M0ss$<#=#^K)9lLC7W&AmX0t8ezAaqi#s_j7)793(C{lu)_HVe$Lp*1nfd=~==c z4ChL%iSQ^=PKT^s9z9Ou{nU(K7z?4!&4y(gkj!12;ZEF-%?on6jf!>Vtrn@*$dWcw zhp}(BN%yaSu#_#@M>#UWNIn1DM;^E8DDpdHSM(AT?jNf!qX*{P{TG_#;bLrHk>QQ6 z`+5(GXR?s0wfm zI?QPs<0vmy7k8pDn#)gSWIbFL{1*gv5gSMBK_6#Otqb5SMWL6v2M8O*B{~2VWFiYCS4~gl*q^m`Iw|wFyIbaBN$I zPnp78>)I1EpXVYZDm25jO94MuWfV{H@`g6J#nEB#-tX)lZ;xdd#^J3@>PJi`=F2o5 zXZA-E7VHK<=+oYNfK7xR9rv-UIf;?ILWLjl)vpG|Gq?H{O$&@q>}ek4bJh`~1vQ$S znMQgA)k)DWi@i`o>k3-kBwSs%1x*VWL#9 za||t|6ZZ?LbM-raM0Hb(MC1-{FSqy$^!#s75l>Ft&GAcrp1_`wncBLH_Z%Jhqix*u zKWNw52?IWjJufMuk$6Zj2{@zXUl-pZ4hWOa&u72K$3YBLw4;e5`&bt$x&j!|4A6Of z!MRA($D?`zR58^}?+<~4(xL6#XN<akk0 z@cJF5t)(C{?ViTl={3B{05C}$06xeUZhO?pJB1F}RX;$N{57TvqFf+rOc)JyM zKC*6q<8c_EJNMtABv`r?WV=X7NWLQCiu}?1-YPJavl}_iuh>D`KnB#Pa6GJYG4K!* zf#w>tW2$#nLj3MumpDxBdvgA`2(09czxk2O8%t`u{BD*tJFDdVxd(#;1?FMjO{%8> zL+|;Z(bhX1VNkO#Wi5J6i2p6jWx>I7E1$TO zmBUpYR(v_~i64|`_3FIur05+EW7Y$Ig=&*JiXxBseO@qTiSLF5;i?O%G&xA+2MKT0O?r##_M|wUT%P9@>whvzy z_IJ8TSL63P-h|VY?N_7HFOHcMKYcrAmZ|dw(Wk^kN%eD;M5=}sCM7o&j zoGjP}mSOmJqd({l-!lml6BK{@$-E$;8_{NJ58=7(P=|h=QAU-1DcIOcH?F>i?@F&8 zcfxlb8aE=HUxh1>Uj*z7M=AvdGYF|Y+B{qlJ`x9jpc^z1O985S&;|AmZlOi&Wt(#H zo9)?jzuR2O!;h{voFWSzB0KQ~{{;KE3hw!+lkS6UAYY2#df(siaGZ}2qdLvlRrie* z^}8I;3#>vvN&ALMzQw=$?F$t#+Wz*9ojh;rBe`mW#0Hd~LKDHdw56iI<##{;rO%yp z`%Y`xuFg5_ZSSG0&Oj!lXK$|w_LE{#&v)^gP1u!qWH6LUAS0^k>6DxcFO5JaqDv!0 z-%i1*%372sFK>c7S2|$YuYn}ZC$Zuk4ETG6xRO9I-J-sLcPsg0)BEB5{p!I>@>27- zcVVpacpdquf0?31%8$)^oHw5|b#INhI)D%WnItas7VP!*X89=iV8qi@MbPDf5#w~J zVM{oYm!r?HT$%$3HUV`Q_LWn?83P~SQX;E4N$$_Fg2&nIb8s!ZsqLLJxJ+kRfe0-< zLtV4M4k{DWbKP(y6>~lAtO7R+fiIn&>l>L2 zNVbAcHm0+dN@PoXy>VahiyTX~EDgH`2+yf`%I<3^ar!h>2DH7B*NsH?^7^>;H9J8@ zj=?l6jEFS4`HPpwr|~DAHAa3d+mpj~oxZ~;zf>0`p&++!L3z{L&pJd95CKzMEd%hve4$ zY~kS)K^5*HQNJt2K~s}wKz%Ut*rMnt5E zUlLaPgBz8bW9$3ACSinwfsDm`EZ?&GV+3ySYdc>Bh{a)e1N3ofkQ3G2Vk9y$cC{TP zCwmHzFg2R#ck^ob%!{Dj%kgvDSt3z5p*smDn z`;z{RH_pVmJ5%2@MS?kLy>2OUBo(08KRn>22`tZiN9BruAe4{J3xV0d#qqG-zvBCD z^=ENqNDA4$ocjC#8V1eW-S@c>jTIv|m*ksfFSgr#sZTPW)mdLJd~>@&!c?n{!!bA!F@(67|MwM92kgYsi=&jYhZgc5+2C5FuUqRs6@vx`cdx zUBF+V-@*1eA*#HTUmQ7IP=;(j_nniF`7vpF;k;*V&4$8!+%?kVZgW?Z0^E58p3&~( zC$*~gkI)`dSmhjWp!73Z+ep51W`KIvRx{^-B4g-M+O$%$9>d*OlrWg@vGGcS6S+~>}7T4M@4X>sxI=|)1J{=z#B&)AX z2i=nV>A&CD4$vx*p)dN1*{>Q(%&TyH<_v@*pyxDQ$X6=#xZ~Q1jaoqrSpY4xqA4oz zt!~^K()z@GU-#j)7@gDzTEKh^9W7PLNym7;d^LDFfVbK~LO?t6V`-l5T(5|a=Pm3W zqrvT>3}TXhpwqEm8m6F6Dt`bW`>HLLS`Nr0;Sr7;9B*}x3Pn8jbUfvs@ND=`F@$85 zJDC}b+}T_8R@iLaZdL~Iw+BqyEabQ5s6VP;FPT{g^~l_xZ?!4o%z@IUSZPY%+yY{d zazna!*0SF&wU{Vf2!8eVUp3UeRH8&$Po?0#&wI`c!H z=^~Ay8zX@(16h+1RWG!Xh5LJE{QbrNZ&xt;qY%sF8Zc{9Jkj!DbC9L>DIZG_Z1U!5mn5A%6O^d&F{=9o-ak0QHFupp zNz&nseMc;!)3D4D=xY}A?^ELBezj^o{rIXSDavP5e*Nrs&dFh-9VyDeb7-ikYQ}l{ zgLMe()<)Q?T``8Qll8?r?C*p;4P+{Jzb%Q11Wm*R62sUObWFIVvkq^TJ&78AQZcqt zu{4(3kMB23Mg&?q&hznidqGs`M!tb%%06!VhJE)81#;p{K38@`fRSG>^zgA1rlpeK{@vJdWRkpFelisJlR-QSE!vs{moTD5u$`h(=t<2 zXF6cBTl6;0dqZ1%rQCA4_^#|i`gLERr|HTSje0#@x3aTA4_Be{h_`vLkZ0->>k12J zq*d_B@V?)G9P$S0+k5(izs21lue7mnQ0{-`N5oB(`1twL!S4@~{S`eDZn%way!`x_ z!lqtayl| z8i9uy(gjbZeBwIWgQj=|H@+WWf+xOw9vL{$;wcjs;<-F7lHtkJd{e~hOPl5#04o#DWJ^F}zPe)Pesu?T_6c0?=ir`U6B`KCku$lP(KFpqF!$C{=lxb{YW8`R#WI3vwFpxF{_c_ zRo|T1=_~qtXb^?CcptvlCZp(*O-&WYfJ@O3!bva*ULvWDz60;FU@R3kq?U#q!caPH_uC_Zh9(I zN;;jy+|%`m3A*qK$6sdNH_jjVB73Ox8YU2F}>Pvp;$0 zQN48@W5-dU>_{XR^Hrs^`JnH22D96eN$siLn8ckS5NlQnd2H1SSIqbFT2V zPdDlnWO7es7^%5F`9A{>;^<#;=co978!xJnIa9k+-uO3&=+zm7KrQdfE9_#qyvW7X#x~rJ|=br2Z2YZPcf06epbw&KW zug%`9hPd!^>qw}rgEywW^qP-vcPJUD2X4&1h!5h`_;UF3lKp8qG<2$s6+-d;GEVMc z-yH8Gx!kLZca;zH{vh6=N3x$9)cva&DubugSfEU4zkl5Nl0-J)R+G~&sL*29oEz)3 z(!TwRsZaBqj9UOJS#G!u`a>PzURZ{^$Ex^lm8|#!7}7881|yK)f@P^+QK#&?__Rfv z^M!W;b9+gCAs{gl&o%UTdb58P>-3nc)TwC+GIZtpIDbDzcsaHm{!#-{x7gz~V|*gG z2^oZQGZ@M`-R~IjF$)7btF^OT=4#~Ccu@B(1P8C2>syPnF+=*Vz2IvGiYnYh5`zPh zvi{)Gt6A>~RB88>mY-ALXsq`UIYUD9#VuK#_ffd+EWNI(@-dpg=DNH8Ihas#Vx* zXZwS@&G}h3$i7M@cz%F~OoWaVDK-50;1M|fEa7RMFO^%rmJI~u- zr@5Y)=gGy7M^X5Wai{OH0Ah1#`#%*%Grq#Hu#iqr%@BtD6Yi|pNc}X|O^`vjO5;yXzbB!D0cpUQ?2@B}{zXZ>1j^Arp$6pL zg=PE4&x?&;I$c4|tH>Ly70%0phmdY?wW&C70C+S+h+X>McPU&Rr!q{F&;?fN{@b(m zQoS3;IK4j@+7|XK!Bs3{@tqsKMC(PcZ*k5Gf>=D`6%=S~DvRs37>=tNci0UEyV9R5 z)U=qwAtc@OqbXcz=gr!N!+tfUOtPyeQETDfm_*nw`??kgsQ9CMC|%d>HT7^*%Uhzq zrmjB^De)NW7R)%t+_BVQR&8J1QXjJdO))p>pY!qwP9>CnXkwqSiw!LighQdxJ4@&7 z0>Ojn1M6kKt)KTlo5obF@NP+5;bx2K-7L5#v%KBqptjx32++hNKf<+m+V$(_l0#6p zR4F>rjAQSA$L#lSvM0r zs7AccA@Jyzuahv!S(eH%l<3$vBP5GDxDz{tOuS?Jg@YMzIP@*oVg6;2ta5O-(B%*3 z#2Q`>&Olzy%DZctNg@0W&MC@sAcYgO5}XLU_c~ItyClOtcklV4Cna@hI5n1|UyQ7t z&xGlFBwv1Rs$gZ|g^jrx5{(CBHlp8^tj4#_@zO?$o;SP|DZdKxIR&{w=mo&r?KhlcY zfokMl;eU5Z<~njOI7avRCVnn}KhPJ>VOvbYTbo?jJ9Hzp^qOV#YPsJ_!arnZgy8QF z?HTZz7Dix+PNNE0Alj+m2}aw{mpC35_qt=hHqJQCuteP}u=ZTvp=@t{VUuPbG3aP7 z*QAcAdk6}|Y9IF3?0FB%fD~@l5~bYsF3fx7UT=k84i}^ia+$NYqnoVEcmIyZh(SId z7y3@Qo51`{Q=yL4Y@~>x3XZj|Eb&xy8Rl)%nKVzj2X0y7C$c zJI+|%;ejZO02J7zc;)o;$RQ!{h`*y{jx9Aq`Zo?U0E0%{!+2Yu3J=+({Ck$3gWALEZ9pR)j?0+#z)DMoOi%9d6%}9p&X7N z*A2RW_Y%boZREY&fW#ru@X!K>^{?%{A)5=9wG|F$X0)|)2YoYEUF(*wZH6y7JCox8XAgRN(L4u99`pWuWp+q_CePP*qs?RHPra{*hfyAhwM*k_{ zTmhLE86xW++#;-290$jWr&edsl&s41bS&pZA2&Rzi|kTrMrwzUn0t@$ljMT| zBJb?mwE?1I(J_n7RZ`DWVKi?anNV528iTyafR23e$l){o9f`-v^-!7fkMOJEY^wZ%-ckA4})8r6?Lk z(N`i0T#|zlB#3wiNDvVfBtHEds%K44w`C~;{^5)JSb20r??2nG&Y=LliSQ^^zu&yi zkTlA~(G8jhB`I=(x`UFK(VWh|)zO~nqkg!_3x#r*0=61B+#M6jSOhikV>T^+y@)qf zOd`HI)rI5I8GBv6H~GoE^>xd>hml@INlA|!bQcW~noQEcRZ#}`)7-Z{{mDx*BpAzX zgThI@4i^p(JT9dgy@6E1_ho$cOFTS*9=#TOQ!v;kEiGM1gT3lE!Ud}u;B|>$wcgT$ zY<~e>FFb={P~!SLU9vq#DV^@cBRd*^AL0l1JJH8OkEv6imM*+F5faHZ>yuxTFmm#F z^Q-aL58R&quBBHO|(m^#@h1H8^+Q;O_2}%L8~J$hCJTTmweMNCulkG{wAX$C!Fi$j%)cN zVhdRz!0RF5q%y^Mt4~6(n?)}Jd64v-C!>s(Wzl&OSh;XsONr0_ycXpNa*Ik`jUaz! zS#CiiqF}G-DI3ffO&*~lQ4QTZPP>EsZq&i#A9U(29p%l9D+m6Ox8!5~*@wC-3zy3y zCHKqX5-4w1$eEir0Q6o zsv^ycW~M|@LCGerSh{|d01U@rJ$i2NyA^25ydB5)M(+m6&vBAsh)$aOt2?&6e}VSJ zdjLy4^7u7FojA|hH%q}d8;}>W-)c@ia_YrIjjFsZP$7YAqAnjzb_D1))mL*k1l3 zaF5o?%VSgiQA1b|fD^nEB(8?}RMFrq`XZQZEv}rC3P7n-Gh@ZO7b@kuJ@Bnx2mWCL zA2Hr#8j3ve|;n`*ToFWyiQ0*L7mE@vaOrZ8kX1O?3rnuGY2OpU;;zy%P? z-?m#x>ATel{%C(;XCaWwTUE0=m>=DxT~6I`e9|v)P|8rIp-w`-#C1=PSqnbV^bGr@ zC#uj`%!7OQ9b@N5vjoLx<(;W{WqJKPVrnv{zjQ?RQ{L<5g?GJqQo0^UdP*I3uhVwZ z-|wk$^>>*RBvZwQXYRxBRUVD`kkI*3+zM+UL~+|3^18!w>4WKt?&I zw{$5!zc=gLRr-udh^M#LDM$}WZ?xktXyntGR%1!L5n( zD29nd35((j=>}=5{iM?aoH;Fa4$#GJAWX`&Pl7h>`ZwV9#$)@!FlTte-2OKBE4USD z{gFh;59Nryh~ZrFSH|G`-5lh1a~yvlaaz3k_NLAcy}m#OSb%7?|2;eBegbCI>4s9LS-``Wkb^#t|tU^mB(Dr!XV zK-zyOeX{JoLJ)6y*PRt-{YH_MQsIV;(!Z%0RH=&fPA<98JxkeDig{lfZ>h6=9(G`* z_L9Hzn*vIHtJ0U*yyXNgM+v(b11!8ht?Qrb`FaOrP; zNFoS0VGe4SeVMzm>zfL(&`CDmJO?v)p|Vkz-|g{s7S6fH<^gDjq-cew{+T82hY}Y6 zg1nE~ms;nHv8BE4*TbLaN`Nw9Og4=mylSnrjU~=x<{u6(l@#A` zS$L=QLr3)Q9AChPo5DBT^j>LG#9=@37{5&E@uQspRWFaT-6p~1HU@`nJ|15yNOTZF z=6V_A_-{1rHtl^;BP7Ir_c!7ZuGK$)V~T4kezJBXGy6)f{|4uDjdMtt+HoMNdJ$XS z>3uY^S-B{PgM5hb)FY>q=*U9+QUh)9yI!Ie=5l5#$Md`<3@^>pr~K?Lq%3_HMgZ^= zl*#RlT)Xxv=2w1J-d+Et?H=83?fuoiMh4LUTC8}x3(f`fLNVR7Gye`>i)DZ7QF!jd z>>a!1&&uS1%ltd4orMYjo!wS0L&5@TuS=~^7yNlaHm3be4J6G#jJUxA{R|QHA@z*; zrT5WWPJZ#!cRrm|9UhP78Qx#aoZN~z^)pyAk#TroBb0*MQw#6&p(FHLW3Q~~SYd&7 zd3BX5m?Li`(2Jpq-_O68iStr)v{aoh(UV;XwgteY*zf6Xh}_!Y<7tLjU(7+hr^&5G zd({k5QT;nf0J#1E=oqsy(Y|8J0k|I+Z-4HNr!#8G%sn<4@S;3D{xpK=icqDjbxUx6 zREj!o-)8Gu&XzncyCM`T@){j)syYRDQ|6iVT6gADvR5T`72dUnOY)Iq?1q9e*0mZc zrO376SZ zc`lfkWG;_x(;c_)&I)~{`S~18fQs)oh9&;?tIDdW_x3KonVNwkkHt`R8I#>k z`FY^=y_N(55&P^p?Z?|=*r?Z9(uQ$^lMY4QU$n5z84auM=-MHXo|jwQp9H;Rx5Aa* zZ`{7i8#HyEsYr`=Vy6t zGaOwZrRRM8Rptq@kj0()ozXzy4pdaIH8)e=Rb$uIQJ=^ZHzD~rPH8;e;tmxjcr&iN zE$*?nT76=~xB2$PldhptCC3Ib4>zE(PqLdP#MrHzz~DY;W>DxXfWC~g?>Wr2H;qNn=(Uw!A%d(*JsR+pFBN2shAI@|)Csuc14!)8_iT|?RhumPT*dfVh zWJr)1XG#wnYfwAx%|?{`v>T*ThSpA#bpgGbBl&TC&r|wc#=A;>n)1}VndnyFijX&5 zL&TRMSfbA39{VNl-|}NT*f}phfAv6b7@QZpa(h1{%7FN~d#mb${T#QefGjG33OVz|HO(srl*c(Fly$LBbE_6v73OLpV+3@cajd*kta8mLSj zvRy>0U=~mGrU$$Q+ze^6s^9RO8r`sC$o;iaO1&O$(t8n84BBpTy6NswyM9xsY{s!H z2)c_|dD?1rj3T^$3X$MC_Qps}97%^-6_Q@zA-;qahY26W`Ve8F5L~BKH)G#tpC>6q zRXemEArA=^HA{DHt#N*C#f#T-y7KBG-qE3f^&W3<^dRuflrs#SSY1H3;=FA2wV2_TwiI-g&Qu6UBN*;9g5 zN_$(p;gKY9`aSnR_YpFz?X@|1#Z6ehdyK%w5MO!Oy66b0jz)Pql|ToQca=v}YWqmp zWf`50-u(rMU&muT=J3^{S4-{UR^p;Z>l~I+Vi7 zS09+0s_{ZTIfgD+_XXu5#`=9{At%s4R7o(1{bW6ZV1MMNTN-PF%5u#z!>utl33W-U zUl8;9!>AvkXqxGUG=^|mQg!xmC;Da z@AVDWqjn7WKLZ`>FV{3+d}gN2aLVg(8ab38h2?sR`zM0e<3*(*tH5?L0=xAkIez7R zIDAX;Nq7UbO~tpOdV*vx(`ni7?KxCyhN~f9ZGz?PK2ujbiBC57u zy`0hFb(uDoVP}fkS9SCIVWu>>Tx_;vkLOnre!CG~j;vgaif@I}yM1c`u%ed_y4rIW z!>_U?MD2oBem#BLU<(EGwq_&~85OWLsmgM)@K5?!h^l9HbhdAIEM(cAjpX+{N_HMb zD8U^-x>Xg;4821UIrXQKp5_tiM~s6+WRUI)z$c6$;kfW3Gws>jkDHdvz$GDPD54 zHtj+}sVD`9c$-DErMt!^L#UivHc8M$`6{N7Kl z?@k-bg`w2xoXzgDkSlv$@llC?dBL*LYU)jbB3EH%XYHqXM@opa=HsD8PQ91q<8u{w0= zjT)gwQ2(%fN~AgOR+brwnsui*e~o4KqDah?tNAr~xCPqd-Ynyr4up^Davz{6@jZFG z2Iy)7TJw1Gd1zreBLq7?;a(OxzRe$rp)c*13ad|9Cmz0O9UcUQjPvKcL)q@t9>M=xaVAfv3{b_kna>ap+bUhirN=dx&#>K z{u~ecK#|@2MR2uoB<@Kzx4+qOzsZ_SKLCdxLdtI|K=qB|4qm75Y|1yNNYXAGQp=}g$ z(?<~_awQ3gG1KV*I0jNiT1o3O>S}+fcXkZ%PH=BH2X9pjq3U_Xhg=}763E`R3|3XD z3YUC8YH9|({h%^CIX|m!$rnU|BZ*@~BDa7>|Jnn!$r|2!u(o$k#7oJh)()QV4z-03 zd_e41?h8Jd2#Q-L)ZW42llNa=D)fp-wsKz)bHJND?86#oLY8>U%>9z_XWx>UC|Azx zX=`7^>pc(O;kB-RrG_hs`>siDr`i{o^IFdc&jQ)bjMM_h`l#M{xVU5$D_(#QmFia_ z1m4amnj6(~^m4!Znsh>@v1DOj+9%3qcT|3a8BI{Y95v)(^q$fd^f!i&v?=+#l|mAje>{K+};g(FHDwV!ZP zJz)gD&_y zW4D8<6^BM8_U;XXwprPDf5gX({+^zXcO&gH<29UWw>>teMHVsx1*NSt+Ij=*Eq{G+>eHX37s|Z9nlvlA{WR|d3(i1ww4H2U#;%^j zFLyLWyeZ?tUEBH~1<9EY7tvyeIqQ|T+tVkuYM15e{KdETkP~eHDOiXD@=@0yUzNk! za^jJ^AaMjk`}jMP$OIzA1bb(Xtk*N))`c z!R8KM#?|Uojs94u(>~0(yua@2+{aV)D0k0FU`EE}p z-hI5Ww0`3~}Z zB8;cs6efIn&0Ef&D{AKyM5B^~q|WkImP8<)%42LV)63HW8Z|Vo+H-~6ZgQ`!hY?W} zM*6KfCn{x~BmVFJF%Q?4;gsle1D+y_spmP>iYLD47mLx8+pQZVXBS92eFc`Iy9p&2 zDqCUBlORwGqUPIo|1L(dk)3n}zX(MCqRXNWB+Xg-F>UQzPNy&^0`?SvCbZpP zC}`!)!nD(1KjyNNC}L{n2r*CTT|J_U%8t*kyuZ`+LyXWIbNvOF-b>ULq84nMlS_ob z)34htw(iQagK*7nR6vzpbn~&BYe5=`2o=p**)g0CwPa`2kUDJZ7PxvZu5zVWl{}cr z&?TQ+Cz$)qLrIH&SOw_WOc3#^!VbDepM_F0Z_L3Y-3f{UHL60JKaN|OeU!P+qN?#q z;kI^X9qI(QQYrV!>pn*8vyMj8Qh)LkOHV;*WWgid3ezvubxp=iJke3YRkyddtN&7Ug!oi`sbW?$5{tVX^^ z6!5>coFy$iriQQfNu55S(Xrs!3T{J2{Rzw1=J$SUY4pjSe}@Tr+bMGBB)B}NWi6zq zg$PUkq`C_)JQ3_#vUcg~Z|K#ef2e;y(!GcT-%*ZI%Zakios-XpbNSuRKXMrr6IXg7 zThRMyFCh45EG~E4yk2(h+KX|3*Bmy8x83g|k+)!7NDY!NcrUu(>6h^f2 zyLy{!j34|`n6A9kNVUG3E%NgtJ}b}gNnS`qaUeDF^mrs(ji?@}+~I9>`@G~h&nSO3 zv{sYOQD-Zcj1}dGM@Be(8p(#vX2cfOyYfyp^qq8DhqUE(s*bni8+nFh&%IgM%h=ua z!ERE5s;wgW-luHTe_QzegrAZhNyN>NVLRN3?;G-671YcWBP#cNp9E%Lm5_IUGORw{ zeKH(K0yqFwJDoxHc!{Q&e-QZ31PyJWaR7FPy;X|O^haI&$C2vKJqV)Z`uY0b-r{mX}jQo&D2_TY}i=?IwVzO!oc!QtYNW2M%$Jqk;V z0`Oy*I?!-^IFa>Qh}ZDFpw5L5pXXG#9nhtI^JK~&`^QT3j|C^)N-$KU93=9)Q-po6 zss>hS99(!ap3$*ik}c_X;%{r?5>OyNdR)Bjw_!rglt*&kI=AH5LG86oE~uyI^_)07 z>O?xxJ!-KaE)2fVvZHt;$ei}=RbZQhVWRo7ub|?;mG?6AgMQAKNj?#!2KhSaJgVU! zq?(ER{>k%C(dwAqcfh!96^7~aC#w)`giw+uoR3VEbu})BRg3&jwnwVtzMxKI5B%S)vYjUY(w~bbj1eqeg2u%N~R> z{&05+;@3;fozy10LqMYl_th1CmBd;h3Pk%4gfyq>q1?e8CMj<{T{>~$y)ei+3PPTN z684JvezscsGRiLm_i~R5RetFodNkJ07Ni8=^?*3B?r00&&O|F--2-to>Fh8`P*+lV zLg5?~)QZkqb;~J*TDIV!Q*`ll6tA!4^B~ljs6#~*E9C_@>h7wS zi6#5@d^tJY^W%1?;cKAqePwwKls~>(4wyPEFsVo6uD#R!aP4TFb@x%@%dK!(ys^&V51#J!$hzu15Ofv0;AV8VS! z6yr8d3LtKH%;ow1J(TpB$`8s-St=wjuV;qP1sR{tKAXs4C>rR8wg?#nI-2K+x5DC1II-p#8w(MQBQPSEgDgl1CTb2jwt7;z3K(<=W?cA5S6Z+djV&sk-M!!;>81%al#!-AYHe|K&V(P}nJZQ)l;ciXO?p^AAtEwA#6@7kE zDX@|wUtd_oNFI&ZkuSY6ZR{74N!~T%`_{VrEtrOW+$t2>8Ia$&k+0~=%%k19A>>`Z z^XtPyjhDQDfLsGg!iA;Er~|L;3sy#|ZjsH7F(@Pj7>2b9szE#7O^IneqU3&0EaOwt-D5Ca-*jNrOt3JI4 zP!2Il8h%f7HXGyI6lZC(!}ruMtQd@M3?nNw=*X6z_oHVO% z>zVgbxLsQ4v$Z2NM|95%KgCe~N@>FW*4~bXi zI9h$w@C>ohM=ir%cWWCWg|7#x#`RPX)F|EK;SmfnB~-)u$Drhp3Da3CxxF=@P#x_T zK$EBDIBcSwiZCsTD{+)b(GTH4J{QzadYNCEu9?IefBT|+yXfjsxcL_z1>Ei7lyE73 zvXT<`cbx9g8PLz*cn2)U4_c4=lRDe$fq058la9wjQgnS<6a|GGxu|a3%u8MJUN0WN z;Tq+mx{HC{p;{f>fYl(k6g*4z%bT2k@=J|pE$IV38Cq5eWXBM&p02xNuepr!5||MFrsPpWDVbLq#R})~`+~l4)c>|_J$*3XmC5MuCV>W2Gux3_T373& z8-@dkx@8Or3M-VRZr1I4IlfNG9=UO%WPSJjw~4P%l68>`kNK&{f8zCahgY*bKuWyDnfeSPJ_7z^di*+XywNumYIkW|1P7;4 zK9jAm-PRp0x92|kyggR%w<&+lpX;;>OGV9M70(olOwuF%hJwUVj~YQt*3wMbQP>)mGq;rl0@JlXF} zDqm}kfI4{LmIwaG@m{0O1xFx>c(}*RnM^Ma*s5q6&LqR3_g{5a0gb@|8RBv8kU(Rh z3WN=wFX#PLXSZS%DhI=8OaYxt`20GSfBUYGZyo!4O1wH{j-Pq2Yt51xxCy&elK1- z`%X?h^ob(t@w_2&FXo^2y$`uED#i~}fBLr^tb-xUED{8Ia70z|9^LwKzhV|cgwx#n zrF(b0I(iZ}T9b!j&kqT4ChqYJgZWs$r$?{~2GaqNu&Ugr9*M~S5K24%LpOazQ}Gz- z!%?>9uG^cGz59#5?cVCA&AshBqmYXI9=&Uo17$^UAad@xQ_W~B+ea?5I`@4Kj z?&lNQpM3yC)XPrN{5?$}J$1`1QU-VJp;(r>#991m{&>f#=uCMl2#vH92dc zNpW4-&nMWRcLhLTt7#};dbp6rr58m#-vU%$-$zqE^nK39E1QF$ zhEtN6@tq*k_GDn-f0m$d`E$8@IU{>1ePhHazL2R4>dQ-B>P%REtRC+x_A*6&*H!53 zjaN8LK<`WUSG#*cuO%ZsyEUHdyEOhSvV-azDP=?n`wd-$jqsV`m`*`n$aB=|<0beb zl%AgUcU_1su5g4r38i>R_%1i>os!i6A1)vI_aL%{^(zaZ) zUJjeKR?piBsyG05-ai{y-N#?yFS&B)44&(#OZd;0$Sn8>T|v_(%C(wh!&YqVvGGz4O?)D^~XNguo-yM7+JKG zu29UKs)+oB2j`i2^XpM_Xpzx}J=BR$!Je(9m+h}FhIh2jKpLw@Y}a+n$xR1 zpw!?Kp_`pbI;ia$x1RHVCZuMo;s_-iXpa4!yOoG>2|U&-SugQe(eDU9>dyla9FE2Q zg;)B7H48#wpEG|O2X5G5W0GcFu$Tlr2-VnrMasg|I{lhiV%GzvMPw(@->2^PKd=B2`i#I7n)fme9n#+I^`qC7t z^%)y)Y897I?cx41PPJc^x5?WDsgFdkP4&Ks4s=h|%7F)Ia=)%SByWnx5x=Mb>8 z{Q52%o{*yAmn?ZmsrDz*Jau@TjL4%;v-<$GWGRE)5ZD}NZ#e*5ezC=Uki}&XaknEr z4^7vUkv!FdNyEm`!Wt~4ydtg@5kG4!r0&o74*xgV7iroyUUd@M2t+)9 z{#EQ>Zf3L+V!HcWcyVdm+isKi&Pr9Z&#Kj_VCsm?5Aevq{AbG0Ul<|rJ^|v z<8O*T^k+G6sv)P-_$vZuJjG5}9qBTFO4&Y-_KR_T#=X1lihMvzhc)!op8uk^y0Bfj=y1klEnv(rgi$XAfa?y+W zHO2&142{muudHtm{#}Ip;`p%(K!5PwA0;dz`TN>x@lSM8R2KxYxT z|1nzI@oHwgP)U}COEE#klpoiKZQCuKz_^Xdfj^wc`cqo(?+};S(I#zuPM^tP-`?K6 z@HnIE8Y1LZaOlvxbSPGBA+3El?>3?Tw~Mk>Y((rnp8z_+-`}F-F0V;3vcYeDw0Qm) z1{z{A^&5L;_F8xyC2DbqhT&rxfA8(PKHaN!a-$8>WBYw*({48kV_nuyvJme>Mj zgIMyPtxos;9S9BI10FMNBWQ^9ccZ_@=Fw(srjM{X+W zwXxBtW&)}Yh9xH4_M={BaXy&)2)j_ckyesuZ;pCs%ZsMm=PERlsOd8|AAghMVw3rc zPQ)LtqZP3{YY=C5IfJ=VRs5pwm*!=5mucT-mCQ*~a@y^y@Dz&A_Cj~2e-rmM$;_Od z*@c~rvkkomr?L$uFXCXsYnPlyErI0R2A>a>)#BRrnCwg1+n#G`+=o(GUG{O)eusB) zs;ZfwgnSZ|Y*fzG2`M-zAyh|iOd8wnRdk1Xxk0PGFli4CW=qXsTa)<*Avia zPwvOpQ~DDNz11eMjHiP3iQeIKpk&)FiaHXp8Qr>x~N4)q40Bs9UX{S1oi@gh`n zn$@XGtCV~n?_uSn3(VjCeT@6=@&bD{y)_O-1VTG_!)|2kyG)R6Z}nEs&W8#+AZYW1 zldFAJeG*H@5+eCuDqb$L<+2%FUyBss(7XNNG?GtN%ZVmnf|CKVw;<6is5-+t$Y0ig z&4`#`8E5`<5I&s;Y{zX*I(od=-}OBmR|^tG9PO>uLhM6Dy0PyYVV7}rbaf$iR^feZ z2oY+Nr|#qps9D!76{+OcM;@A^TDk0=FghF%@_5PL{_Yll!U6<@Cv#qDzn4`nD0DHy z!^XkytirkK>zef^sIcVDRE`sH|#2@S`gQ#&4TFd2{eK7dvNdH;@)th4N=H_S4LF>{?WD+ z@qVhbdZ5D|OUEMeY>v#dy3nRRieCzR`l}V7eMTdOJdAqgOhXe;mljJ7UeA8_l*KpJ`uH=P5V&)o z4CY)EC~b@jTWagg8`dFUzwfBe^U-P?{aT@S4WiqkWRJXQ(ZC0mZX#~`sWy&k((1yW zyzNCF_5G>0MRA(J%Q{6-5s{~KpiHN?VIE0*@Qt1HXc0L_3#4>dwhbJ*vzB)u)2hZ| zcO!-)W}(({p3^}r8xPf5Cw@3?Dp-!8PP}kk{ikvP3p+TnW)b)c^pL(sazLfN9G8xX zVv~Xe90SDX4WsebL_h9<89*xn#OgBYH@_-2D`9golHu0`L;B&D|I0!$?|2$>jpD9m z&b99^`jVdEq*KMEYDY)PUyPB+C^`voUhK6XVi;LHtc1=7FjBR{Hi0f29&&n=m|`AkcPtkmSved z&+kEf%BQc@+b79gJM)1&G zQLlb{GoKQnKY6DyOa8-M3^Op@>~R%h`YY+tzF42^J(R7ZYF2hWP+uqj4{q9%9@kRw zqaW+O$XazRhU4orIcH^`%^Iy-rkDUQEZNs= z*~5FaJ)TX>omhwH9OYtFq3h|{hNQ~^{OwcND8G7`qe%45{W<7%w}-l@HBzJjdWfBo zmVq%EAL+pkPZZfY5LqS}ITclLcl9VJNk80cnN;)UM)ez$1NathhbTR)7pwlU z7xI{6X_S7$1#(C;HOK2qb-u^_v$$pI`R0O~D)B^$`g7VasQ1J#E}~q~;IE51+~%OD z+vC%;w)-Q}9%pRX@JBVyMjWc&m%WMt@%98!sHm$Uu0uA^Iu^?Ld+cv|yc`LH68t9& zGcDjAmxry3M3P^)GkZMh{hQjH8Nuc7otdHW{610yD>4SQuw*wM-(xb2dQ+gKAU~oMk?u2)*GE{KEwKy%jBDUQgJ(ur|hCP5UDuKj_mE%Mkd+?3>x!;#~ozB zKrNH3cXs_<8_FuT$8I}i=ZBG$;=vcr=1ECqhZ}s#zs4W z!F5XcQapZkR9i{LU*CTGsYZbssJ99_nNB&c>Oy+4-*TXEhPT6A%}V~X+1KK)hUSA! zJyztydb*cZVh^yhS`F0*4^DbV#Pw08#MgO2)PMddUFY*y(_luRYjv@-#(O ziq(>vi345oNo9ZaJ9uMSb0TVP#-GtI^!k184vG}`_Aoq08(c(wx*@tI{XP8>MP5)&*i4|pa;-DDjkDM8dD*uW6>3{_2XAx?uPN&* z`)S$%vLUXQzRtg4g2v#bXFH8Kc}Aog5NA1zU}1r3#*ChE!Vcgawhk|KBCS&&pOU^DKE6Jpgq&C z?Kmk^PK{*R-!q{z@-jCRlA!{Hcw$g%7WdFZrX}e_CQx>HO8ss_2nWE=_=kilx-djE z)yf2Rb!qUmfiu!QOex)w%nU@}%b=c?9uLs1?&UmseQ22P3rRuEoaz$3nl z(pbV@ku0Sf!#*6aL|wb%p-DcZr%D9B1NyYVH~bHl7fH(1z}`Nb<3{4`^WMLcyJ-}^ zu{`FWbuVZD#>-D#m=o2NGeemazp5hDd2h#05#D{s$#`D1VWM4=E)QX#}XHiWk)F9!ONJB?)$? zPOoPEracVH$*0$|idpTNYwp%c8pjvEV^eW(Uo^SW;>&T_oiT?Z)-U9tTmttB=nAL! zB-9T?$lVYwfpj|4g+BhIc{&WMExDlY)b@}E>6UYtQ54PCG|Cxc)!az^piSNs0Nt|m z;XEv-_2~=nW~K2rlqd(e8w>p{jp?y}=MOv|+%8vpg9->slr1fbc*=Hb+qCI+S7b!H z6W!&Ed0se@iek+@eISAa=FiV1O154RF8OIuDrlX13U#CHtWHLmO8&XrleB;vt48mM zy-{m0fA4jFh={BFJl{ZIyY3;DqIiATzFmra``@@XML)mH`lNmppn^5^L*Y`(i>MY3 z%Gdc!J>k2}p?7^{(c=ByYhF6&bvJWp(tesL7fQ}d1o;H~S!Pd!Ns`y!%}G%(G7NMS z+u|KpteI#*?CX3Nm;hsqSv?mkchkWm@92^o-M(Ci;*g(F+`{{=_-ddQvUw+g zZ?)@t$ZFR5O22z_`#g;pzLj>^L-BC_?UoE+fvOLinMs;?q=Pu2DTS5A>zg1y;n zr(}c(PK3Tu{;TA#v9+#FeEihSnXJ{Adp} zNZZQT!Oo}TlXj5Ur~P&$@^N8R=dn+;S-F!Pmz+Nz(g*3`T6>ljjPhqY+<57HBdZ#~ zOYy55LzM4b>wRI{o=uq?%EX}mO1Wt64EwWX0~~G5R_TO)tAlY0e9MjG&tXcZVq=Sz zT;eg@S2TcuN!~o2lbe6Hp=pPwAY|r{9_;Xwb^bj%&&~!7av4*cw8Xw^9N`H?zKAYHdKFIP~mG>pcth%`6aCNdf)nL zJw=-^0$%kU8-a8u#?Qf_A9L!S-m-K&p3ci|2IG%0J|)?*+}r2j?u1`dDW%s7fkvjI z*mS7bQQ`h+Ok35=b=m+7#!uXP`3T!Zb&`PP|LPy5pS0UV+0^7S^F_QIz1(==f{w+D zrG0PN?||=Gt6amS1O-F~9x|0eU=h~HzaS-oH{jR2=Nwa$%87f%h>fTC9C}poJbVA$ zjP~sR^1Gnt-&4s|{s(Dba?598t#5|5zsg*dZy1o|$$=Gt3YYMWSXGobmn(Vf`wC3Z z3wKFXabE;iL&BsOrW#VeKdqdS!F~;~#oB8xZJ+T(3h04rC!|nj+1>oO$FS6-sB1Ol!Cv^Vl1~8i&(+PbPG!P|j!LP?$&jH7N=a=uB?=OBgj@tp6@_8JeozQ-7rXF*ziP-wxnb01yOq|bnfH?__&HMVC zB|o}1U8pFqr72b>jN8EWP@J>A*wwW)Y0M^_+p^XZ;YXl(QDO_`)>oxC*!(mfP~_&@ z?o*c}B_ipqgIS6i#sjyj5DMo#oGC>Q1`6>#IGX6*J{sj`JBh~vy0-X~Yg-(^ zZ`Dv@g`bXQxB=3NM^@aFf->JEkXfxwYAPDOkVLh^K3d+)eiXW$J4x-izDT{_(6S$3 zkgxM^9lxPcHO=ioJRUHhBg7vp=X0*VoQb5|g5@0u*0f- zxFG(`QRCNPhI_kx;AhyjXvnvpf|@yiI=IwSEC4Werk5mKEeM&7xlC44^M32%;MGd$ zJJ%d_O6{L^0DWNWqCO(RmmM#qv9jF0lu5QBf*jSWOw@(y1bHeMt?gw1kI(k2n&==Y z@)Dh>Tn_h6vQoX+U2xf(dA^inMRziRH4p30WAQY{3U2lqP|PEG!VISG6A)!+JjuTN zndr_yyEFUYHa0m>om!xFmLYKp4e#%!tZOm(tn7zDgn2PO>bc}=9a?s~JG^bggc|$@ z{qySmM1`;>*?wFJsgexv&!<1gv}8hg+HHFKGd$H% zQhfkT-HY#V{qr2IyrUMC>+>Z`2F1 z*Muk6WjgP+O^U5k8V>#KlyRLsoGv+${krALj;|2F5pXr0TVN#la9oCnR1<-WKQ<56 zlN8e9HT)XRnaMIpgBj<66QC7*FC{w&%|gd@Sn@Md@$Ya*$8q3$kGMgo*b*8-LaOsY0;qtiWE=DK&E5T~@#mg2#NY|5_PhMS zUb7qJZQdDF6kh@J5eZg(8$kQ_QD96yrYHr1W^Pyo`hZ&-llmP4l}(Q88rk2EQ5;tY zHxD!rqP{)S@4Jercv>3WnQbRMA#&$ul&I`hKT=%T^($QqVeH!HktM1Gss*@RlCQ6j z|9GRzql+p-8sGO`Q{zX!1bZ8(1Zl48X$yT$749j0bZp!j3qwPo8z5)7i4w?{s_jNk+mNYXuRHvcmIcN^O@aNL4oCS^8u>_xL z{*R<9?N$v8qkqYi;Ul6*nIiSgEK>;K*Wc~jwa&Wt)G3K~c!oX1e@W`yGm3W=MLC)1xI`-SkHSt32> z440O?-0c&GvFkrq1va~8m!rDhYW!Gmf53kyjSS|L_F=n{Y1H?VWmZ)v!pLs=@pZdo z%=zsfIf|{yeHoSw`FH;2t^S?Zirb@9UI&18SnmFngrdQ-=A4|_hNzh7{H?=(*q@c$ zT@NWOY%|~d&XsZB1SNi3r+e?^xdvG;+WL-={GTAg-W#VY5vn;>WKW^Rmukw8VWz%> zOrZ>kk89m7TjAJ+5{(layGMm#wx@lQ{wk5hNX43*lNGxdikrbXN1gdRR*)W!SZnYg zEnLng|7<9Me&SI67^1Z0q;5CQmTn@ke*k_ia(6#F&NUfB3I%`-N=>vH-(WwHhc`e9 z)^x9e$>%*+P@hEsiVZN}q1x&_nXC5Uo8iy4g}MO#PE0mt5!y52n_2nsN0#NjXV)SP z_deLrD5t}#kzL4J_WkTn7NT^=g(bjmP^iM^4YwE~i>ZXrXH%}32xsXm04H7Zte745 zmO?l&2HY5}^Id@&Z<2}y=M*_^vh+wVQm{!%$2<KAQW<|s}bx_>wVdP)3aOd;7}LALvf*`eM}l~-mD=dY}_*N>%34huc! z#;?`2E{l@qG+Y(wSLzX96d4FEZ3+1dt-*a0qNafK_P~AKhxq&pnkR_9 z8&Dka;o2DW`DXfeo=Gu5K){zsw663$P2`u9kQq@ ziqDO+CG%KirLdBxTV>e517Hh=KIe51I8~9)ap20fqsM>Vny#B+YbI`I|C{#D7r3jl z#2*euBhc6YG5olBUZC8Z=1ZAJ+;npu#L$7_Y?pyvQA21oe|og!k!Z^rtCgy&4pLZp zm5V4EtIZNBWBuOgPpH~DKYL!pYjU8!%&L0sai}#>i92rS^z|^$6z=A6a85<*LUZur zP7_`sc%7cW6^`9!P0QYE!F&{A1S=5cF0Gw2A9AHRa0gS3J!CG)!nWVqd_P?@yR*;I zrk8zJo!;;fNYCMCC2>s0IQP>&ozABhojSa9+a_I{!-#d5^6)zUA$4(j(&{$e!JTH* zmM&^#Jv&dN~4Snw72+_4-KV4?) zXqUZO{ln$RLLs4XaTd)VbJvb@aZ|6hgt7|HGY?62fh~Uv93#|of64+%SFRFzN|!FU z1`pu0mFh_vRphhl2m|)$B5nb*bO!?IOjYQUaLavMIU8@3Rw!(`5X+g~#7CIkpJxSKS&biX5ozTF zsOu@Pnz0<; zeU0#=W)U<+t~1c{nqAU4q;9KqV<2>Mq=yYQls}lv**1AUlgp8%mz+3XlK>Tn8H&Z7 zOx~`qd-0)0()w;k28lQWi<{|7tsnUyIPtCIxI`f2^<05|_xAVAkblVsn7N$H#~Wiq z&JBY|_5mu7{Lq%S#Q!ypNJN^y*uuzAxFYJ{uX4pgUV0IzBLY8T%x*r0UX&fiZlcq3 zvuo5y@tS4d`!M4jAo3rJxS*d;Isa8DFc|=c_;$mn{JlGpCyRR88~H>PC@!f-;|c5W z{0`JeS`ORv4W4i|e;xlQdPjK{0yteNSNmvK$0;fmy?mF2aU4ApL9lwmx% z=W+SaMf$Z>4+uJTU-KsBaJ5IBtbj}9exDLnA;;RAjKp2i6RkpfbMS9^zB z2%-U6=FI>*dozr(6VYE!Zb1EvLTr8FJFGxO{hp|)5CWDXiAa?62M3jxI}57W=w0uE zLDMJi-;H>^84`q1_(BKro&v#Y8j9p~DsQv&L?X zzhRa~a=YGJR30uGZcWDMH8X$rz1RDFXaKb9-|4vpl5$TG>qy6m9jEV|2i!$2?rr&4 zLCv^;xI;^RKx|Ek`i12sk8V-uGuCibao(?CEVey5%J}4Lt@?(_79Oeh=RR*!`P$Fa zmxC~y?yJJJ-m9Z+mL824uo>zHj=4WYA(Y2r8k8``wDaAXGtG>8&Zg-TS*B{e=>E>+ z%z=baHI96tg-nn+BYK(LZ%ntyN z!|KE`f<5?jf#ovxODf&!a#YuMOdMcg{r-)fv(?K!Y#pNeJ`B}|0djQ=YJ12}FeB*W z5qm8dkBloU6Q2UxbACn2$;V!*dL<6cCiDAxKfr!37VzB98LPLMxYZ%tgU5?XXC;Hh|JCW;&rZhJrWbQ!sGuWzTH(cyf5cXnL=y7$yp+ ztyD{6_#^+M+0GB=*X@CtR)}e^kH_$p?K|&he9_yNjN}}oFXi&vlg|WEXIqKJ^obaK ztJJi4o*~Ysb}hUxmTK*b7AlSRFdU+CaW3zHJf7}DMa8_?xNIAH=_5o zJc%u$FR4XHsbA`HMv%$zQKjUc;NOk{3YuW_u)oB7KW_bZ9hk@CYrH|H0@}h+s`7Jt zg<(Kd;{dEe&z>&0>=*GPGh+-xNTuNqa!<|%JSJ@xx>FE5A3t6jYOwqPAH?h1W*;87 zbCTsP_UQx{ijB4!|0F+QzbNmbl&Y%I<%E~1iS-Il?$(cFlUHxi1$%xyoes|TY7Tk- zssf7aM%+HhxL!LUH%uM{_wVb%wyzs_AlIIBrg|CY=RV4mWAs7xB3-q{X|8h02UK_< z82$YDOCg}tUSE#IF}8*9_;v0#dA?B?dy>xX6Aa8$0uK%C=IFTs1DR{@Ip!< zA|-f21hYKSkQRAEQHs!tM#yp_Fq*$L>D$EcAN3(xJEgO7VgReBP}(H&f3Y zlSxJk$k~VB@+Wtve*|&(uwTfb2-G9J(~tAdjzSI8#jgwyRQIPRlI!6Nsdd{jidxYXA#LPXRGF#%-LJjysk^Q;{)zAYH$1)};K-+a@UhXpsRoK03 zMu^|XFO;F1ip2!>nZuR-KpQT5f7hzKgFd+U1b`{CTnA=h-{oOx~d zY!Ktr-4Cra=hJ;(M^bpUv+nC#8-Rgnr0oikvwAt^*r6D}H~kzhJY@O~!5401%h?te z&7G1fQ|&Ul`!4PEuYmCZ60ZBR_C+h<8n*B`;061$ouYm9c*AHmW&6Eg#dE^r``Td% z_LN2UPTRjhGv?E?riVqh$$6Kv&7x`GQhrTCq*h68U=2uQpaf=Ov zlkUr+(`)xba%eyY!OWrM$JdK>QldV+SM8I6>{9%o1*df&lobQaD;!`!QlU^Pwdr^_ znk1@f(H=!9aa_bYdAEh}*|*9$d2=GN*=6Uk5A#G)-; zd~_!xt|(D2{GnMu-$MICBp{h|6^PeJ0rrnY%n&})m3)c{XQHK5v{ zRf=e;^k#@sA@2K*R{xw7+6@-Q&g_Dw`=HsfJ!fOX6!wsLUnHfux(_D43Gd%G>Rdqj zIk?m|r=oi*=W8&La^rZ~Xx_HqzQ6Nnz>$%W>a6+Dz>^5!E!+m0Y?QtAF!pX>yO&o_ z@ewY#1QQKbIRA*RG1=$oWjCwd)}4eoLp;96=0`p8ru5e7+}(x0I>4o)Di=pIzi`;tJ|DgxfF;e}0S{dWXWL=-tLp1rGym>odn3elKV4A8 zox>#k#dTtexbXxQ8nI^#P}W45qdt1v{X^U65G6eLf?}h=KkLRq>+VXCd}df}JdDSc z%kuBe?+vQ#u1A;H z4@1Uk_Q=OABUq;l)rAxv*PkhLwWeKyMcY>ocVE*wxY`pq*n^H1`2M92C6kZwZ+^gZ zd-y^w#}3YWOz$tKh^Xd!lKAS$L}SttD>+bnt(efuPgo>rz)$*4gP`MyDA~8Igc8`Q zZsh8*n*yp`#<8-af|FKdIfJB!58MC=zdcS99e)(3s|@6Q#k@rFQgDQ=Uz*Z@gD6co)c?4EeQdHf$Y&w!?Ne!Uif_&+P82){ z9-|}EfN0=M0thcK+E2(@->NH6^B(P+Xo_W7VX3sdq441l;z^D#x2}(Oe<3M>s1>jz z$;Z6FpuiFRlfdIZq4BB@qi}%j9nHy-EM%GUE4Mo8K!W;=!`(lahm@z?u7S7jG5qkq zh}sDP(&rhw;EsT9TRW#dpN?1mnE%=_+iy(nQEh`z3c*2%`Z{$MR>_8HW9?yGGblBpV9qu799QLIn zN}a*U8^7)Z`m0>$PI5($VxDf7p3agm#b6jPlqg7Z4Vm4Vf_DkFTbAUsE3m0Au#7Vg z2bPy_!D!eJ(4G@l8*nqlkI8ESWX0wAXt{?eTTAx8zkKUz(5g?hxvzr3>DQEJ;eZC@ z3a9GVH>va1KKpFiTkmP#%+%ycUB1L(eJii>U0HvtpqM< zoaJXnY;0{w2$Ywv`z)rV9@ZLaTTxG4N)-rCij1+aB*xdwk;R_ZrYO6bJe;x`P0O2o z|0CgCF9-Gxe}kt4%a(WbfK12EHGsgIlL8=Uz*(o-M)Y6R4BUzO`5lvcDBcq{sL@24 z46Iku!!|x&@!B*%hK45|I^j?C#eewN`vh|Oxn%F!TxtE7EAzJ>R(11M{&^ZT1r?E! zqKe0G@h|Z32CLTGlylK0U(C;>_#B7!@%lVen>eD1TK;ZVhvEIgsOr^+C|r!QdYgLv z*NPrqnb{m-z>p^&%ZXWGp5WXlCAk~*Yo!&Fax4l9mNeMpCXn^VUPkbSdi&3Lv*YUc z*;fzOhZxKZp8B39dcyTZP8@zSRX_v~XOfJETNsBP4B>d9XhGE}!a<5F#cx1`U^W_y zl#1GJFhT6`92LG<(R(6=#T%}?``To+TW3s`=={C#b+D4ck3|)(&fGq!P;14%M+~cd zan&4>#XGsT65&4qnhdBwyJ7MQ^-N#x?Y_wLVcGlljNqs5@h$raF|VMS{ZcM@U)ahr z6T&n4f_!f8Z^Tv9?W_F`e+AB!K70*3uZ2!Rs8;-Or_&0~xZm8Yp=Lh(QA45p1~bgp z++Jt9`J_i%@w+NN(!{!O<}~+>646h4+WQ1QUxmHCUi(inEYXeWOz(OVO6jeKuiwE#Lcsy@l0HBa z;(j#glv^(~l&&qCZq7DlcTo}KF*QV21cWOr%{J96??jO}2y2?h5f{2P@nlH03 z`t)AXbu>{6-*1-6&e7GTb4xL+QJ4pcK{3k$Ig>_Qp0s!_271|HE8z%(wfn7Ax|f6=-K$n9b0N9_QBXobjJdSST-L&*-ETemLVXzrr9(r~L^Fi$hA z*Z%op&$pswHe)Nm8Si2FC;KgflrCI?8qB*^xla(C!L21P`sjQjp?h2@?(q@2LZUB_ zMC1UmKeQ)mk#*7yzuGNsZVQBxrRTXNFZuJ&BI)_CWjIWj<@ABl`q~eZ1y=$HdEQm$ zyF=wwMmttq^vo}9e~LdRNBQNizNuu2Ujd#LmfD!!`<&>1(JAhDTP9Ch0+bbv_ePL0 z;G7{5G)}*-X~O>wY`IUK)=W=yGirFv_EP_{#dEd7C({PI+}~%;Afa?Cu2IUZZy3QA zr8F*R6}0fQkIB&&W2PtF&%R)lU)P8kzy1~^Z?N6-k))qUsk4XP(tb6c03T`(-v`S9 z)G|@a$Rd*)At-I0&OVsfICph`l7IQWMp*{H+@~wz`yLy!UVV=j3$C8zRfGshd1sl7 z)4d)*>zSy)4qGEsRmZ#CaXMTdu-Mel7sM$olnfE5UMfB!!9;+c-8_o72>6(aHu$wr zwO83yLDr-}a9o#(VKDgZQ=@+U^odlbhbZpK+hA6o)tEx-a%zZtp9{p}J>JwClP>ra zb=){tfb3!a0^{0%exnBH^wF4l_0=s`HzKxYZTbUN6}5;ZC;`#eD&%-Ixm=s2JBtOa zj4HA2At$^s<F)Ha~MYa09Q4SFV24m+q)iiaID&-39`VKH>Vwc zUNpeJ0oZAa z-481Cjx4sH&?1Dzt&Y9E)956#a_?|{DlZ{0ZfVTBF%8eE-7}pa@hxoj0?d+HvIp3e1m6r!cK2nOe`rGXeH4irf-oey z(s9X}>QLXSrwWS1dtc>aT!CBv(1{)VMA|quK~|Ls8OS|BMZOigjoEY<&X5mqGN{7X zm7eZVAC(*T`nW-(so^^4j;&D_?X?k{pE|}Y59KW5(!}NaM-?GLs&<=yE>aAmo{8lw zOi-WjcI=NNq2bp2@Ge>dkD#lk33$u5VTXlQeqK=IHoq^ZKB4WelB`vKa97nIK*3Q} z$czEsjQs=E+}KBs)WLr~0mqhisQ60NDS7)8uP^!}w6s?~(M`g?_?ZhfWn$C@pazMy z!{gk|v)2J0ilK&=MRc{Y{^Jl`;4^W!ndW-RRQ5jJmEjJDxr?BP8KL#tHxuj_-=(?% zg@VI|*EIQ{mnIz^2xukd$-Wi zxq!a*u^^(Fl5g*oVWYoaI8hm(5Le9Y^Kh1J6hN> z5F|9*>dbV6y+^grc^VOwbok<*?zP2+9C)aWs{6#4z}op~oI)MMKavKXQd+jSd{kQ3 zL1&|>Jr7ljSDTF<8}l0NUtE|Jl^53VD_T04%B_Iu=~pRyv?uX)sR}-3!H(DAk__zT z?t>>|=O5LsJXAnksF(HwbYVDsDZrZBbr(Fi`;R~h)}b4 z`FyWQdH2h;8>$7yFPZGBO5Dt=t&g)_Qc5044Grg?GkjZPG?0nMGaw@OOw$yXid=i& z*P`j^yvO@~Z@FQdI#5~DX=KFC)%)VyqfQM0qg|a!%7AxXm_aYUupV;>HZ7*X@+a6M z?U%0j40!1Q+}y{Wls$jMipM^jhJBB*F1`^a6Hlw?1`_1;;4}va< z-*;=7O?NqabPXxbS(JZy##_yOLn)8z<-yO&`{3cQa49q{w(beP)cHMLwVytFz8jpV z-`7(7kcB+{UbPiN;D{SdW_G2h;u4eQUerBcy*+X(BFg(6$}xZ#{T|d&!v&V0fa}aM02#eE%8IrJP9rzHUIsC<;rDRv=iu@2 z+a_C)9Ka~MXO!;b2TQpIAIVWWB-2njfM0=Vmx9Sy z0HVDQw@okqjMBLx z^kBJovE#$sX$3&G>UB>@FY#q_(;;P9oj1a}BHq-(*rjfyl+OiP5^EZR1TQ?k!#zX~ z4uN=z=s0n&01yD2kt*0-VU#&8+vB?$TqDn~WJo(1tu6e)=#EH(8QgHmf}8I{4>Gnb zSQCnw%kBP_BD_fDUd8Jt zy=fMXK-HxJU0A94cOO-i(?<|treK73rh!ETyRhD>(@#kjJy$Ch!O=HW~vbbkI9b$j7--)3%&3J>^{V&@i6z}Y6jdDqUd11QNvIfGz+YV{PxgYXVb8T zsU32suuh5hxxfzONh7;}dj2za*@2Yz@pJzQ!X@%(VUBfi%Ug278l48+ zVLXL`c$;k#JG=BA(xOm5tDwDZ&WFz98p1^jM5uEwij zQZW$SSl1P(YDFp{)XSjD+Z?q=%bdL7bFf_Yn=sbVTDxmv7mHAnb(ABXQUd|lUsatY zrxHWt?)hy&BNL?i!8Atd+TtRshz z-p0xCU7-E$B)3eO`q+2Of_^Jk5V_s}JgThQL~aK73x0nahbyg@_a-D|QfOPFkk$Ec z3pRG!H_>yU9nV(4(RT@w?t*j+{J|>j_i=;H@|aA0Pv0L#z9$JObp#~&0yjG4o9)ZK z_Zr8ezAw*mx$G6xkpjCr^Azt&lrnXn`EEJSPS(ID%iJ|dCGd=%r1Lr5V8mc7R={-Y z`PtzQn~k=X6uFb>RfPP?w1DJ)W6FLenfn`BCLI%LkXJr^0bNj>u27f zulKk9Sso;Ua-2;>tQD9U?R>t(M?0~^_PWa1C@)2nN(Smg}Bars+l z%Q^AfAhZxEgyy-GdUO`KiGL_io=x@M_~Co`-3^hyR{7F9V4es5yPI;j&pwckNd%xnO8Xs?&Ke5*0fgO)DgI-8D zz#JZTk|0ZG(64uB%0_N93J>;8-V)QLi(F~lkEd(A&|xW)Vrtrhj4(<9s^xn8nx6Kv znoV75is1vLimq^v0lES|?)Ume5F0boIP<=nY!(_4>YVLd?0Wh_s}gSU`EzMKB3lj%(1 zohSMhvM0Aic!K!CXXWjhgI9{bJ7Y5QkDz6z>7K&qX)G>Id#Q2y(yq#;3iKAON0?<1 z*YIc!0?Z;XYou6+{b;fdAWFLd>L*}WXD!B?mF0jSI$o>6%} zB7DC%HkWtN$QfFL6}3V+$xtL{cI!w*h7j{63E8bVNTTzAjl$PT#S zGvq_n&UPC$iZ&{%2lb*uE};h4-Gf}viEp4CF;Q$pGKor(fOTDTE#d)W(<25v44gu) zMR(>a%Qn3Qv?w01YkRL_Bv^$SB=prYhjNb*UJDc!3?eM*B?d{=4Xi(|v;}R|ix?fT zwkoHuQjP*P=~xZEklXH_ zcQaYK4lX!T$4Cu=)^(2WIyw@xh4f-ZEC%}{>Y2na5~>U=Nn_Z1W|B(0)|N+X+7Po1OiUT ze5uR|jJo|E;6qcyV_+@tKN;39P~+A|Mf1_ftAhp$1x-HY66Fqb>*RvCuW=qE?B)En zkJUN8n1p{2pr>J6>dYB1l+`evAhnTyo-TIZJtR61BFIpWlTu=WNnY($>oB(dSU!LE zlSE#+w`(fVNWf$fy-_mvuB1F=WWTwJK4-up)ShrZoWFBC_u-R7EvnAn`-K(120vuS zYOFLW2gh`JuqyNh``{0~cg+dbUn(gYrNh!jVQBHU@2IzY0*A=&_nZ8tKb+w+uHoJn zJK5SCCG+q*Rn!8(+>M&}p1+Zns>MG@(u+lu}_~TwFc)F`2K8=HBtZ0bo3Fs4B zVZ*D5{Ore!lACEfgYU25-vu+HZCbJ9CqYFJ;gSTp(s^GShmo=_cVU}U-Fp0@k`(hf z{;0=uA-&+7Se~TRhwRw@uqhz&kxvC;Z8p5s2{)AGSvbkSt%@M%{Wa0>MW%msNvSLr zzh#|=+}RLAc5X{KFDK5~Z}O2~GGLf=$yP^<1PQSGZ}m-ZS5yl+Vme(Wl`|d9&!y!r zs=~0wRoYm79*%2O!>R-96r}Vha8~^nVXmt(W7}1vLjkUsWBOLidyE`*5MK)sUT=PM zXyIu*fR1-eyz9kp(6D8epLTrsZ>Vh>JfRemCI< z@bKD`u)%DJ4>Vz(X)$_p0I`X;Lqs6=z=a3q=Qw_6xu?fiU+Md7nDc|CZP%{F%usFt z#e6n)qR7mw1sUAONviw&@-+;zShHH6+_i%Wl3Bm@9+6rPI-tM+Otu&M#S)%E^k`I^ z;BuXYj94V7FY|U(wtyM~X#-sK0SPeyz z2_>m}IknWZHtbfixhI;0a%<2Yr7|fT&%YE2!*DxL>O&%ck|kgTHt4_~sNC zH2MW>@D2Ry>u>4)05&W0%fU0>DbRaFVY*k#y>p_ug3F+WimWqVww|#xsRFu@UHi}> zKmVHU?00za1PZ7i#&tKarjsdUghXlr0UBmHXps@f?|0ZKA3OhWkVN{D14leqUvGEk zwb#30{-&O8dv1?=szVR5LKe_jPX55rYvAQs%HCy`cZLQMYq4CZ`RK$zu#E9Gc$P^X=p=8+u;vN za|W^3{hgTTJ-jF)oTK>6KgoxfBwppi*RrRz!q$8xD#Yn=k3^a-l^vyDf%1qA8o2g3mF(=9U21yI`nYD_r8`4+?|OTq5fuGCPY;qFuS7h)3;7;t zf3i-H$Ci57ApSMk6r%m;=ECm>*bIrGZaCW zX`T2zF@qpdI^E!P%YIpP1fc`^5s@iG&LP!;uW|?lo|v$~!iv>v8|A z__;Ysz>EYv?h|h@W$}@B(ovnq&)15D<5LP$P_BgD-0LNVS8jV9@MO|RwQzJKH%_?tq?O>$Y_*O4!i{+_-|mKymiheO=;z&Gz1 zu#Efdqks2po(=+rkY0i>UJw~I-Jd5XLT~92T}93jp|WGKH3{?(nN<;tBD9VtEEK4~ z#^xSEh1E!fz{33DrCflr^84!a#M7A3nAWW9@NLr{alQMno3Cr{Q^Zj`?^AJnOyR@Z z>wCA%4j{`LYO zemwgDsyhwh8k&tx@VgJ;jR=4$6<+aO94Ueb`B=$3bI;N3mbF+NQtg+igwV*s`)+-$ z$g?>*{hPmuINl2~0g&J?Uh~sCMzyslg@w74@w$&^tf^2AV#pHOHSIF;8v9-s_R*qJnO##m+Dnz(X?4pgi4+*Q_^&Jr?}N!aiPKZPCHfCSOn-(fhPSCK9N{xHVxL5dZ`-I}G9?0Q|6-D7gcJ9s=jL@r zO-Nx#Wczgp$0X?o2^R1)S{G(3Wnb`E{DA^1%ea8HGUmHIE1bYsB<($P=J}kI26y@4pl#4nPj6OBD9|)cQATCD+zq_SfZUu4J^Qxk>MzLY)vFdOX9I>m%0TMG?yezCA^oH-O-} z11p3V-y8-`(fObhNwHJGbUT=ntN<~@Am;a?+o2XJu8F0C=SKtFIUrH8fB!Y6_CP~% z)%XXHE6LsSW8Ja}NaZbg^F$9ikooVFC()Md%lLYL24H?m2KzD&Vdf9MKce5Qf)=qy za0nQ1w32{qUvb>VYFZ%S2nCx*ZpZh|fuRn%-$snWp#=|EwRu3kiZe5>*{A;YvyToG zZC=7B7Q6Cpky!Sq3kPl$f4|Ivr8Hg+6s21VbvyBbFzMyTadf6Ad zvJwR8{QW6T^JOmX<_Wclc`5!S`uO{OPS4cgG+6DWL-H;1NCm#X*}sn<#=>9BQr?sy zL3-DD8nQh!A#Jl;5 zyJM>qoYUZ5-3FEP=F`tPrBea^bK#=oPZg+W|sAYJ5eWFX8R?I--z`@Dvl#|Oge9#$JEl+$`#1}6U+6-wT%ec=eF8)eq9 zUGbH+cq^#19i4A%XZu~z`OWUS#nj8DKCss=2dJugQ@)alD#+^ zsH7>&Q;yHS{rhmMVFD%3&FL(7i`Lwjs$$;}EJp_U#0hIY7$>39?HdC*A$mQ$N``y% z0NKH~b*gmkmTj>Pa?25Q#|8?ON^7X)jgce(#}A}i{;&6VU65r|-8|5Jjt^_ep^BJ&mGGc2b zd1-Sqy#wAmMFcM`*}4h0B=}uP$xNt(qb42TpX8wRU?9&|8m5ty;u{BU2YR@#CoyXj z976g?e!T)6t@%IeG3G4(W-7FQA04REC%JE*;69}1-jAhM_*mFiBisN+-yF-g5|n<@ z`{DXhXbQxTdmEaK0llZ-wukRi^TxmUQ6b|BVN%a~O|{zW8!w&|hET8X5@{&pr+r-? zg9UNQ3K4P#;^k-%(kGuuYM!eg zg#>RCp|E~ED`EcOAJ)T*pl^crts|nBhFlCZI@8UeoxX4h2n=T3GN4m(YWEXn_zo9H ztM-V;7Y>8%(Rabe9Ilk@(N1sa+iXLebD0Hm4C$c2PM7rFfp0rVK%BXJ&dh!*&vJFn z?cOGD+^ZYs{wI+N6t3@7ky3^;XuRwCA-|q2wYehWQAw(j)bDuQhN5b3^B{ZQ3-_rZ zR@NnVA$||K^tioMurGS^VUU{$p%Vzw?O{yZ5U_RmCFA{>EKo)5-E((_B&!m=s_5)g zhX--WN~p}i#d59AAMP`2x_n>ZYv28@za9L63LVa2+dO6%U|@&Wz2AGFR2tl4JlYO# zk)070??SC>WL+w@Dj*lJ21scJd8Ct?1GjC4`_17b{rrfg&=YR+l8%<}MZwEmRP)%E zza_iOM0w?OSnM6=3Ff*7v2L~g`a{85e%-^dJ3fH_f6#Ro45M_d>n!iyoAT+lE`U#? z%KSp$V5oXN!=_!<^F+u8_Jl%35kC+Fsd`rrx9wY!jBS`+Gm-)4!}W{e&)vF#O7`pj z_8I3ZEdIM19PHg^C?D#=v_}uOP_|96$X-|5`vr%G923grV;&#Q`IfMF0oI#5<^VaP z&Jk3hso`C2kmrH2P;~>iqTb(f5M6D~f5QSQ2yW);=omLC{BMOJTh zl*MsDF8qQ`n91i=dZ!G;x>3XEH1vKM*fNVlXRx+wz1f4YBBPU9pOvA^aZ%0z6FRfQ z0Do{tEvhz&oOdHl=E61lfY_QN9iyIMbn{=07JBPcUb)XPp%wW1Suw_7{Ywb!tdD^4PDha*q9B1L^R~r+0XWyXpNm-?;X+GSF2q4>%ne zH0HP*FT;ecxAut*H-jhjyS*MzA_XiY8Sr1YN}maO1|XZ<-$KD%SQyWiREvyhjM!iLaimaPfQK+ zrx=1DOj%Y!5;bSM)Y=h)%6$_vEwMiwM>tNebLX^ zcaQdlHQw)F;W76caf;y6ygr*YwLbc_oMkC1FQfJLTm>e9hk^N)&KWit=hO54^gMr( zB+!c6V_ZJb0Z)ig2lG#kOIHXAB-!#nBHGYKG{bG{n9^+4e0|CO>GYXo*ZyR04kUUgV;E}qimEVmLKGuWpee360;3ev{GVf~<-$H%-Vd3}~ zAOCbb`&qj$r^a)BXt#C)j8|g~q6dIf(8rCUZIR8x@(5>+prTF5#!?Sgd9`>d5zd{sG;g49c${L)`IbpmYCCnnSw8 zUTulmCk^F?>Aced+8I__B&&T4Z4lZOiLVqgM~+PApbMw{>Dr$P>ypzXrWV z74rUJ0I9d{6ZSvJc)4ubO8}vHhCe<9{1IjbxpU7hmm9T@=}xhF=bGoW+kg98bv-OJ zd(d&XkOZOl5+=FK=b}sJ8c*^V)ov~lYBg*pU$i9I3yFdsp z=(BL8pi_H?OLclKWSiYU$&b4oI;6r(?k;MVW>eu7w7sKW50;b}vfl4Ys>l4i7Y}Av zBe&9aF1KHCX?2m#zaa4dK_vL!sa9-wyT51V;u$}}61+3#bEwc%r?<5oudQk@CmI>k zx|Z_Z%tb*?;y!{rB?pStH8e|8XcjcYdE3ML^AKcK0w2ONRYKpNr~4+Ul^5?m9+4U4 zoT&#ylN>_&zV930<4Md#ol$j$JTumRG@A`1_(oBm1@&UhzAG}TM4a;_`!MgZwk=`mftDb%YFSL>AJQQ#iHmh5hOhdl2i~BL3ooaNR<5b zy{TTSXR5nYM7*4P!VY{$I@B;6x%47}Q`6A#3&T%&czM~t9>hkuC!Zx_YV2+zOFH}A zkU%atX${5N7YEs&Tq-NU?C}ElM17~0xc~}W6*mnt5I*zWRNS;m;4dLGJRtx#v13pD zjLi8#i6*P6?IO(3QD~u4^bDGJxuFo{=5VY_jL! zgtGQj0bjLu07zNjjSY;pvKbyKFOKsr2^Yr&O|n!=kBw8iu_}85iR+Q0vnJ29Mac&fj5=Q^W%Tklw*xbf9PbPZs#d z*F;5WP0c7__4|O^o`9i4A_PMRh=jQR+_l`e6k~wED z^yhyMXg;Dogh|j*;Sx+f#pY84Pp}rtj$%c5p>M)2Eh3JE-W}V4{eaoiG^@Wg(9j9d zXmu`9Zq&`k&5d9aQzpKvHhdJyN0C1)j?Ap{;>$LHSy?}o%({I#@l#F1>kqNpjK*&~ z<~C8B6z>goK0M1sqP`!om=vzMTK89c^o0pBw`6wZz+H@f_PTm2_u0odcLNZ_-`E|C z@J**950mK6*K1){EWmKvmrh)Px^G78UA%MBSmmNJQdM4sZ}na7A5lACTx?Y@y>hND zJru9g)9SnLmXEA<&g64X&~hG-dHs~)lwN_h z>2N4BLXa!=Tfp7GtaF#WtT^ir&Lfhkbc3(5e5gI#5#+Xr;%i>_O*Gh_)!c`$G}YC6 z%!PB+a~J;e@c8(SxFny~XY^m!9J4HO<-heUW-JGi*Dyv^4G_e(S<-eh^yHHYTYZkw zb^48)(bj>ZDK($Z6L2xGdcV7iP@3j}c(L8mo%h&bsbkT|MR;=Hsnp7RSGsFwS8>z4 z2W_>=R~9%^@Y8E63HP*h@;O>Dey=!=Xls`B|#pxB-|5cp) zJ);Gw39n+t3{EO$=6oLgNQO=R?Twh4x#H-Uxw1t9E7quPMLtmvLKH`bkLYOylme9F zGN<3i1;5xPs~$DpY&5k+6SJ`a9KL0$~sy#m)91~>^y11i%2 zFlbD!-eioN{qySg>{f)Y{QT=0TvEH*uJ&4JuXhnTA7vAqIS-Z6H7)>*cddLs-ATL^ zX~5AFKRaKJi(YX?%#Ng|lDNf}vM8qtA=4ijauqER_gG;9NkNx0>c-m-(G1qT26WRN zr+A-hvh?wAZ&w^lt}oBqQ;-wzK!TPWo)OfTK&MGe28ySu1UOz>2`gH3YLz_R&|5}` zq|qQC{47qgPRSlkxfC@&32ofB?$99!&c6RK*kTnFQMAzcTLb+Y0b;H#tdPSf%|Dax zQ+jzLRZy(oTl2K;8e~p~MfoHkb)dd>4BURFh)?fFFcBpE8u*4%hF@^j4xx|rqILEs zVPrE|$6d$~P8HyhMw>h*lUjXV=LOpO(4L*Aq33@g3%6Y#LIrqBI=|#_rav{%?ax4j z5p(f0yJEr2aX0Q2m-fjBDFfgKx+fwulaP3e@kzbU*<{Ffbd-$R3W+^+e6XbWny^U4 zn?DjwP+=O0UzhrQ+NaaNzzhECR&_q~^f5vs)=Rp-LFhl;0+WJan|Ey7Kx`^`-xDW% zp=2$5vap(gNa~4{UmnDa<@qZyHHk?p4*9A^)i$0|7Zgi9@Fd}B!qo}R+wPAEn8#9c z>0#D&`oK`y6(VY}=GmX@^-4ca?U~?j-64QJ^lLi*l*K^rCw*WSLeOr?Zx$=qsWB6BBI1jf< zIh(b4FZa0ZH&tt8GN_g}?eV1q?36Hu+m}SUuj(U3e*I-W@G(o^h`42?_B-6D1PCwx zGSeSn0}9#GcxXW<>Dx^#GN)uqA_y4H=ypGZ*7XuXuf_G8*ObmGNhOj)(zf?AM9UzT zRwq41V(fY#1~85IkjZH`D2FER=qr;Q+3_d@eNKMC`QnS=`dkx9`mSCYkwo*m`gLCS z6J+C@#j(|Bky3XhaN?r#IBHO=zXt?nv|33sm#eC%mS&tsJPJo#z=qI~zGTmnQSRy3 zF_?^Jw?}wFEsI3|w!kUwl0UeTii>_ZeyFGF50;EVAG*}?t>PV9CPqRfe(wlIc7b@6 z-XG;oyY6$tb)A1u-lxjhXoRN7JMBhydi*nlpm;$|VM>dp&CvN% zi5`y;(E|=U2RNo2ue+p_NJ$sp9JR1Bhq3#!;dVc-F)~E4rn6VL-*Q^~+d;C5V^MSF zTN!ug#^)P~Kg4Fx7@GWYHU+m$jV{&)_Q&1BL=#7QGSZ)S=yuiFjmUpSI7P?AsNNX)y*+?x#m5O z4E3s3#OtkQ1Z%PXrhRz85~3Qw;&*)Q({K-4pC$*AH3Lf^0e09I-}+roum$u(`sk%T z7p^WB#k1kPS7=A$2*JZg3k2*HYVly?WG{1L7ECq8af~pCg_Rl1&ms4QLydY zcmwR|Ey;SO1?J^bW41OfB=O8!b4^+V8AoX_Bj{y5}|OA+yKML2SwQ-8p^7 znRLC$yX1j*j%oM&VygaumVFZX&v(3UwrFS4ZU3dub^61Kob$*~m#~_g!_6COm;bwV~KrcI9Rj#;RvV}o-S-3f#(T3#WVRc*-T>SBcYu~UL|i{p7I^U}`e4|Km|clcZYyE^B4P^vW*!fF)7-nTPPp0L)$>~)7~w9sy%_ z{+&^ng9Fs!JlfuJXKzdTvK)yY4qtUn7tOnBPx3k)JY`4=)b*;0(cXBTaCmY-ya1_E z`^YXe4*o|#T-2`LC3}Blu8i;6>2uD2(k!)8ut@AFIJJO*daKnu*ad>|*_YjV0GP7C zOI!+$>;uCfRS)$^-{efbwb&TUKax9SQnc7!z(&mI!`(WTD$BVaC0iTnnJ9pWBA3E;8!#9_2AJwCeCDA12OAFM5~?UxEpX3~Fb(KExUJwN-LI9h6$nD59j(p246Y z2@@3FYn*=L?{y;mUN7yir#VC@Q98BoNdC4$q}&{0FtSO>E44X(>058#{G*Sa2zh@x zVAhS`!g2UaoMQ9jwDZr;i_=I*Ik_d*@XcSlCi2K9utHxe9e#TaH&l^qF~_V9w}HLg z_l@I|F$J&@%)sn@hPpkFmOg85`K-qK?YMFt*6e!`qCTCVIWhB?0_*7vW|vd7C-c$< z&yHx#JroKi)kBtpVsB}Yq?8O z2t9{snQ-d!R}vg#7{+RzxU6WN;HjA|RQX4tH;Pw|WlRqmH*Yila4*tP(+`O`3?nNH zkVNR85TSbmjJ>y}M766^e&k8fYnboX&}HFXuKInmn|u1ZI+?aSuFt(vJ0JVU5ykuS zen0FexzmY{1&Iqs@L0x*HROFIHX3lnZb zS>z8bIl2f>-8>!1(7j;&1(5Hion1i4@GKw( z@8zd1AXs#Z;1)na{cl(3z)(T=eavSo?zR;*^J!cdRpu}EIFEzp#=ZZ@?k)f=`#fZZ z-XBvZ<|f>7&L-yGf*Gfhc~nwdyRd7qAOAKHzOR@@t>a8cau(F5mH3O>@P0Yu(WtuW zmHkl}j8A`5^|Luzt2r+GGp@MJH#^$^j(%z`Wp5AlxvfCDVC&ky-7B=G@nZlL8bjUN zz}b{s=2>xr>h(U`Cmz?aU)&}vPL_YO+T8R=ND!FpiH`2c`hcC=#frN4E%+P!^W;6{ zMFajup7uJ%Jl`tvhwljT;>TZrPy5{&jN&)4UvT`Lk5sj@wUqPqH@4G_1)&@|nufb~ zDa5fPRHxo_BdG4GTNlK^go8Y^WlIBI)G!gR_dtEu$$d8z+fOK7V3N2J)?+3o3-MLK z2T)|6ngH4wsl)CIDU!@=2b=6fcd>bNUZtB7ABnIEm-p|2yTg4UxqLtD?OZ|AzunG2 zAdd~rJn7J3%%E&oI_8i2F8h9tK^#sY+`l<22IN2>1gaP@Za4kw^RCkvuKJTG7?LMw zZWbSQG<%pj)m_sZPxIu@9-i^IVt#j<^OCd#E`5~_E@*x@Zd07CnwPWOc5@)cqrShVMvxIH07Sl_A?0Bwu;quKZjtOG0; zs@izTXh{?5>N$r6F9!JQxV4@q`PkLATTBGCq1+p zln?BqHU?u4@$(48nKX1|BIl?}{lEBoEj~%36;JfK4_7C|F#7H+&@N}V+exX!S%IJm z+rap0F_mk07gJ&KUxx=seGQg|uJhdKOkk+~T<@3v(w{hQI0(i#r??*wjzUPe2v+pI zUd}w^pE=SW5faOEdGOZf|N+-vc`OO8_DM za=5)VF3BJDZAg=yO^)G0DBJ|&E^!2x!9GLo((9)6#~mRFp%^ zXj5rTPE?{jn?Vq6D|?a_vd06YO6k>-(v_Z6MON&Wh`Zb5)g# zj!!mY9)SKgujUP9E$-P<{sBr@#q_x^OA0aU_OXWtzxi(D7u8Q(U2S@d_I&dNH*{mH zjxK5qG4Ts}PXJ^x>dJbKr>{j~j$lof@7!frAdm{@T>RM99AR8!4tt_v#q=rghL1F7 z{6%Gbm`!u_;Bj)5d|WtTXxlslL3qXNa_AhxBOc-Tft^G#vw{-H1e|=PM5SnnK#x@7)x&4VL_h)3H%3IUYC-hU8 z007|yT7F8T_LQ+_Z+XRa^Z1wEj6rk&wuIHqbd2F==}1}R$2{8E+P!ZGHTnH4YwusZ zX2rs{q<}kwu&d|~42~{i)!TzVC%3BylXCudf9!`B8oTB_pfk@EbDhqLu@wVcPLLcZ z0x9r>M;*#hoP3is>f~9$lR+DPz+bP1;$X=M-nZdPO?;NWrr6ig^d6VV4!TayVK&nH zAFt#*K60{WbUK*GmYB#&-coZsfWIUB=(iX7S$KXDNAbN~e(u2lBBx{ai;~ix8cK#b zakg64<@QwtUg-V+DnyOcqVaM0!RH3Qv8eY|=Ix70<~g+z3clk#QU)hzsL?@XP#;qu z_i&ou%ix-G50w%Q*}Hj@n`l*}+|RhPj$2e^k0Nn|L;qy+Vn2dUmID7FAiCaNHUz@v z(o>IpC*arI$(@H?gwlawk81^tFnE{BClx1kfiBJIdoaU0@%EWS^~g&@LS5yOFu7k} z*78K#LwJdor4s_Vn2$;fT>kfx4c4w)tgyrTwEW`8VK4Td$|P}+ik1gk;yQ(&CC-0h zRNp;36FUKSbLT6(>G7{#jm;)DK=d$OYyd>e0T8I}g2bY64JDs9%zV@tqqA6+cu*|` z*BaqH%Ap@lKbq_?@7aUQAp&OU8KQ@vfW+iP8k0!)yQjBZdrse&gquBdtVlh}UUWsC zpE8s7W`6~epsSb?P5%LkYvoybRYAGfdVpr=(E6ngedrCjT-lyD}O8SyP@zCDB zEq|bYfSTxSzvjHpaWkUr92vJ)STwJ<4$KSk*Ald)_|+imuuf5cSxfnes#1u*VS2n8X?N$JUr-s1?97TYLaSd%9{?}{c~jLYDK zZR0&gg~Q*3Yy5`M1%QRV^E!Pr#Ag2p>9vgl8y2)8iR? z=sS<;5?k87XVa%QFZYBy&#r^!>-uSvOB3H@(mY^ZzkYrj3WSxvKh22CNTo$5@eka9 zf!LmKlO4(A%M3-?{a}#c2x=8(hX64NX;--JelIRT<-$p(%tX17BTl`0pwx^LR7xMF zcL`v;ysrxJ@?E1abGw;6c_%@@3ombVVxn5qOrkQ@zkLhLgFw=c7cziFjxZ#uyKjLV zn`Q4Zc~#1x5ccnSX9t5`sL@~6CQl#pdX)i5ywA)I+1oHR#KTPg9_sXSdlhfCC~?y$ ze3YJDqRu7y`-DQa%xs+XO zmgW||xKQzp>OS277WuwFDts}^=f%Zp1o0U`jQ*t3Uq5~Q@-FA<$<)hs#S=J#>GZWj z(Z*H#^RZXmj!J6sKndpo#?3bL39#v62mai|?x28!{=MEIlVz*oTkLPqg$eTVC7fR3 z##I+5p&MVl4axko;g=OW1S34It%7OS+f1ZHd_OY8PqEJ20}X3>yMw3kqgQXS&91O` zGnTY?IIl|{sv50-psH#GHI)aw`3Bmsb!vrv?(px93_;+q?qaRVOa38Vx3Lr8DTL26 zPO=283;YfG$9#a$3o+<-@0u@^Q`03a_%l6z(q-G`J@ghI7pg<~b^JYO9tndOhU1)s zAKh?anzHTlpCyVY!S0>-Rz1Jdoo6S`F02>sT63)B)4ex&lvH8wBd0RGPAH*%h}b21 zKl%lTbQ$jzr+#oBeCgH)jo2SE&S#o0lwYIxkU+ivr^WAj zGNO9AH2g%apj!(k`t;l@_u#~SmRq&tN%6{-z2f@Z1;GBkZY+XD`JN;CG)y-0m2Q$8 z)URSrnpl}yzR48}t{C$yiLA-By7+69>ti<4xc44Bd%I}11VHPIqo?pYTq8R*&Xug9 z8=T1!Kv;fT279cw_fU--5Qc}_Q>)0XFa@hAHkSF?{{1~3PPjEiA>dEA+Zwo5wBI9~ zckd$V0|Hx*B`pK^l9NW z>##Lu%j*ejzss%Zt!y#gullrah@jv;@V?y2FGlBle*n~oSfHYxUe|Rw?I)e=k$Z?# z8V(Qxf;WaA6dfG!%fH1S5~5~Z?w>!9*t1H{DlgNY?ZWvoheWclOWe(I&U+e7ZiT>h+ywG<+7w4+JwC&?|pT` ziIG@jx>s!&j_{tOp!jh`>_(36KEB=`HX469b5W`})hI1dr z&-i3+PJ&r4G7P^o;?^;flCrsY!yc==KJzu6s5vDVXWzruw4V8{zC_hWDAg7W$~}Me z0NLJ?VZVEOS7&~+?-yrXmiI?zGZf9WuG7!H%tQc%V%KM$(TYfW6VFH$ zl=fifAXi=n&+D!(Nmz#)CVHQ1FE-pFT6bzJ96BtYhj=MpOK$-{;?+OK@q$!1Vx zx1D&#TsAYiw#=6Ic>Blw*?CTsUgvO;loa^+-)aJCbTUtLpZmY!4O9)$c5Kta!ZA!9 z;?G}Btm)~E9=QYGhC{5!gc2B z(8~tDzek3CcxezTUnu)}!=H%8px`**G4FLo^Z%y*(pY!e^6_5x@L>O^wPvhZ%eoy7+6aJ3_>nnz=V7p_z`)=;UuF`@aBdC=u6x#}k&40kk4F`31&GZ%PG#$VHirngDe4}TeL?x~a_l%E_<*NI_e zw3zcv2CDF;=YTmNNfblyj+;RTN&6(p<8+$1>q%1MhcW_EJ#tWnB&vJET0G5#O=7(X zRu$r>83Rtge`xFgSnkRv_Addfz;&T8av}xk&_0nXD5(%oPl!_fQ+vYm`0ikl`z35) zkA;r=abg06G~NR`b3{fapWz3t)@V?>uqC_ho2<)YqLYT#K@W%PC;Yu(ft7tZ_v@i2 zcADqwbqKi&93GVb`ZvH}o$i*k`SjFDYYg1fiFloL_lg}r6pye>%Pa*ngMJT0rWrhv zhVF8LYNGGBVEnd0k9Qu*6j<7~3^Lm~`xXuOGcO-`A-M}Pcc2gK+E*%F%lb*H#yg| zg!oMtM0w~Q&;B)n)8{VxNuq5iT-N*N4aKJ0A&EpgY>An+IDuyY+bY`ZJR)gVBz_wy z_c669>EA06#s={6laoOT;C*&Rq5-#{1a_+CJ#{|WQL~`s`@2ES&iil~EyQIvB0-dg zYkz`DZRWy;JiIkCB0Csg%bCJgzmTc@f&%@Ies1I(Zzk%x;rF`e>quFce>^m#gzI*J zJNY80#PAsQEJu@VY<2)dKpDg;9xALtAXi@+CNOxw++4NK;XLcxk6x*Xo2R8JqJRmq zZJZb|nvL{JKFIP2X_a&Jk`L;X-|jlB{URnR3^r%NTzxxh%x<1OD-i|rFF$tDP-KJC zD8t{Lwu7^>=$PQuOvxyPr$J7!TO^IQ3Rra;d%{KCyeIt#m7xc+g--Xg{#7s`dcMAs zPF|K}9B$PdeD0z0m{JCmidCPx!`gUy;$%e5L_~3$SJFQD{%i>3Q!|FkOK4so4nimq zb#j9_R{UYE-w!l>^N-eY(u*IS^^^OK)|V&7OMk_zT+3}AX_>QZ-Q~?qmNV}0pr8=n`Zf7fczx}byZza%d7Pi4p( z^ABTLxrWYKG$j=}2mX~#Ea}6wf1x^thwNZpQNn=xR&u2uD$6RV`E}pE7ZGK(pB=fY zy2tLVN5}Wazn^*rEqRd|!_OmA?|aJ{T8_@1U`Sgfklx;QWl#jHOV8=_z7x&xmq?#9 zNG`-XtulaCJ>7AkE8-U#sdkSHCPC z@fP?4g-B<8!#7VI_xt-)-yv{c*bEpvGfq`8AscqT!6o`Sy0J=p;N?X>02_hg==$9Q ztOqp-JIY9kT-)Q(w30r}_ry=rl7Vzq64u!k8u|D{V1Lqy9r5P!xrGA3IExi&^@|%A$TVDh(cV+ z+f@Of6$c1m~8CV|CKJ^If2M?&q4%=f@;MOU!g{|A4$2ffYes7xi+$j zn1`j)o&EHNlJ_0!x6&u+dVrOk8D|rI?K?zz9Fhow+GhZ1e8&-NX!HLr=aBN(J<(;j z^YzM?Q=q>5zy41e=y5u@GP6Tdl&e%g9ozh#l6d@Bgr(RCbqC)%|M+>zw9XoJxbmB@674 z;ZM9~&}{kiUi*tJj;Aj#-ff0Gf(9|&kdqh@5%u}L4$}FEr|b~`jAxscm)7Ee`iqUm z0fA9OD4gRPrg8sdw+bdwu;ZErt(X8GVG+AG z8Odu5m0I+YBukJ9>}#8=&E=aN@F4tO1F-0K#H)xMg-%@m1)*Pk_dgYVUmhqIvfR%3 zzVj4Cl8di}eWHkA&mF9ydZX;zp_bySYi_|a>oNU<6~oAgMf|Lb{Tj&c{my;&%K3L^a+%XF=x`hlgrpV&1UK+msGpul z${wV@D{r%pXSgiNRS=E~9&E1E=Q={;>Duh;Sw#~)a~|NRAJGd|BKsQ1)dgSW=T^vs zbQ`47JwHZ#ghP()p(Ch`WZjcScQoGR#2_a-B_Z$aQ0eZvr=I2Gg_f|qTX};?rtZrbNpYf-`5*2 zlbphcIgCmN66S0yYFpM|*!&KV#Fp9PDY(mRt<{8RojVsPKJI0)eM>$y2=@YCwGxfQ zXquKP)rG8|GB;J4XbHwd8TCns8SnGa0v+tW=e`VnKXUs#_Lps~b3Gv{vW8M>x~jYk ztN5u;@5C~_^>!|Rh-XSNfpwp$Rqk=!0uk*R0!jj7<0}#y^qZ(#4eMOvjzz0DU06ZF@ruZ0Yo zSRNv+9mR1onsN2)e0Vps74t8V{z3V9^S zVNaui*qHr3@CB~5$-IArj`j#%;*5e&xlDT~x+9*8ZwHz{+JjMRq)mGg(+t^x6o2)4 z**)eIEhOp%JE7=V6I1!eF5yoWFM%>cT)Hk{E+tgFi`)J}8654~^m6VHnz~TYdM`dB z^$FvBcRwJb&;#79)UQ4YztNKSn`>te{7HCiqJCE8$ejmW#}^LV4tUnTFZ&$_s(8W| zPk-nGax@CQ_V4{HQ)l}#0x!EGNKqK9OZv(TfKoOH4$2FK`Wq4)Z)ax7zRFgf{^_ul z|J;9LjhTlw2!BSxZ3lIc9L?X)v4=QStEYFkV@#dO@$X~u_@>l*oq9%+gn?E4TUw;Xn>;)p9%^>zaKXG0WH{{lRJsTcwt;$erNe^yRqgEx#A?N^U*+c= zo#99Dz431W8^tPfzXv9KHa`xoP}J&h5SwBI)?7_n-=uvhaeDItuHDvl-DASwgs^G|zP- z6%g_@gHENGOf%!TQ6Io~7Zphy1oKnWAg5x^m3*v7oHshjzt?vS*!X)t{D|J8 z+56~HI0apP!UyAIT__CxY{`HhWDD&^t>AFS#^VLJ&iZ&z>`D?IsJZ7?t=i|Mz{J|SpZ^hQmon&?oP^~dzHcKI{cR-Vkvj~ z0MUzJ0i7^A-=C;;m7zSKY%_-1NdsW7zfPTi6{X9XHZX!rL9tcE*g0eGY zHp*%(%X-?s4&0y0i+0CrKiw`0q{a4Cr0Dd^JuTm#9DF4ye2vwLJ|3QVPl1)$t0u7r zD!|~k>|9dczz|MdC}d6Y@UErxK>H2A&nXY*-xs6A}HHPt%@%|4;|LDMF4X4MQOLg5w{;Qz3cw5vP*2N)Ad1fY~83M_5HIw-*jN_v_26Ygl8M{NPI9c ze-389!e=eHC??^1N&TbllxZIV9`n*-zhBntAuj&ZpGt9GQMdUOs(N}*ytt!U`O#k7 z_qh+ONvTfeCjX$lxRSH_v;-=B1q(QfmPws9c_L(yo@jM?zyp!;k`1^9LTZhx^DcXg z+x*q2vA(N%*1sWn+V+j&N9?R}e)Ba2Y4Xlng22lj-vAnCFw&?IT&?$*wV2yeg=yU5GER5XVNU*yZHHrL3IwKXfQhGekTDv8RRm%igWv^ zTUcft!R=`NLXH5jN}9O8Tz!tODs_l}G&SnDf7*-dh{_l+cXd9XfCk_%wjn#hp15Jp zHe0|ApTCC{rnjGR&dCghrI&5LAEb7$fl~dtCREPpD@;SbpB6bQ>^y(Qu>kk^ys%{v zJ*X4O+$^5CDJyFRerxsBO!MbV1dcMWgSm4P)!-)17&Q>3!+yR!E{aFk`;a3xaqp6 z1r-tiGiBXFoU>;u^Zn)sl+L8jvB;k3tO!EH@3r*)0oWq?880Z|p29sHg(YN46b{e< z#@b)CpyFw$Dw;*1y%*m-Jjb5lwN6%7cNYq# zRIfwDy%kA)Dj`iA6qkLgXU>O<*h;o$sR+Y#cuq9&_>8wJyybMr$Z$h*(XKPAShvOBOL<0m4))<@D73{#xsES#OS- zokLFeK&aV1+?j4$Z8mhN%ps@>vol;~L`GgKUxjsYMDT7NBXr^g;*QeIP zX5C&u=HlTU9d`4(CRFpYZ`C}cJ+B{X7Yx_-of;lvQC1L_CA;@~loMaK(ndBTuCWW# zy`YrL16jaOrdItYu91;yX{eH%CWqjZrQI7omScJZ!o#uN-&b8vaOkBUe6|v^41_3! zp&QN5dvZo@Z|lMgZZcD_7x2I#gP`SW8Vd@mLY&y_F!8!`PCLiZL%FmoOBCA2J8=yg z%umgWr*r008C^92Le=BsaSidkK(CC@knfANL4r;4B9;2b@zM$Y4hOF1X$)L%*n{>{ z*UwBu%^{do%}4pH&e4+K?#BPb&+JOnv>8PJbINJ&R*Cnuih-bjD8h>NNwQL0ZZkHd z3&|Cz7-YBSrS~Lm&Q(9QFCGMKz1)W;)cshS5ClUu}R9u~QG19nvl8 zXf(*Pnb1}AVhiR_9s9$6l5a?>#8mGsre3}{U0~0U?KP7$pPpw3y%4I%zxcMi>V5&m zquAs)fQTRgRXz8x5))6uv62Tz(q~*crH8*YMh#+lkKu~2z@RuuxYO&L zCN?#42*@nkeW*|{i!$+3`W8y-2TSUPMx)dRgy?K-i_gaP+yIFp9r^baSdA zTAV#G%y;4Y_%q0_RHFB)%Y$;nS2I@b zwt^zr?@elG!l#+l-7LA&p!xMI0Jhe5?+tNbnQ~9S@aKX5qA$7V@-~k#l=)DD=-oN* zVVNPTr+osGxA*s-=?n3+U^+WW)M$J%X^!o+hF$`xok!(#d_l4dAIRqVd3l}pciGQj z+4pwH`uz%|TU8lha}raVTXt*~3KL?5=gu7Xkq6jw=GXS4$wP6>XG2ROWM5)2KaxG>y3?6IsinpP zn?iMvdqUh}r5?w`AMs6U;b1I9hyncJo6KjS8ZPh+ME_Nb6XK9V_y-3mXAB+KO_TL( zj}`&O&Ig~Yc@utJqH8s9BHyI85s>GxL#+M0&D1*`{6J8@&~v8 z0d1SSVSkPM7Uti<^BYFvH-r;}mVdlEE#`s^^^$0gg#L2UIXl-@p5OuK9&hmaU3@_es1$bc-0Ih@_SRYT<;^2j5j@5~ zVCJUcZ6igGnt=6MX~i^ZKrETSa)u9AiB#R(Vb*Zb_Cakwymp{h zxa7XSr6Cl6k`{UmN5TDKe3&;UD~yd=iMx7`f^k&HssmqMQr+jke88yaT^kxyK1@!z zadwB(UB|-zbw38iiI)6Lr|@l-&B#pPc1oaDoyQouiwZz&xcWDyNa&0D#7P}9%rs?~l)U81Gg2iWG% z1|eo@I7RM}#e5I7@29V9`D;7mQsHAM_uo2q`tJ`0pHjFp#32QTIu!Pd9SJ=CpG(&# zBu86Z$)$t$)0Om9cz6ImnRUNC&D^8Be2No=|A9)7^vx1NMtxZ**P4>=8|~FO0sjQ+ z3~e>$Oe6*UBoe1QTL(Q}bAM;nt6PXmGx2R%TQ<4<@@DN2DgOc$pdR-QfBymH z0}kQka1|{({l$i$f$V7ClN)+Ao%}x9{NV;)EcDx|+OQ$MG{-;{os4xOXrnwRwVPSfy}r!pU1gy0?|Mmvw2rS5TEVbuSyMD#=*yiQ7+hp>RJ1#xh)B!oLx&K_an56P(9|XNgw$i`t(G z|JeN&i1q-*Hc4_mcNDmHCq)BDlf8pJshDT5cDRSo-$YX<14-rK!l_*X*g|g0yMEYi z>oN4{W!C$5@j1M2rossDnfA0BS?wab$}qgq=NQOp{GI?K_AP2JcnrDkix z+txjQXZKaTSZoO^3M7$gqj8o*kGy4HjHjY}bSYOiAoJi1N@s6}jcN)t5#CV_n8Z8u z(S3#2!;4M@U(mbm$V`E&AHKz*Dv7(kN1psR@9WOZo5&FASYgzvq8hM4!W@GGYTq~V z5ODBz&%L7a#V8_b0l{dAk5DpW;o?!C&12M0Kc=3r9R7CvlZ;}_Vj;Vm_3rG%HY9cf zo~iaVPOtZ*P+!E=f-ff>bfMVaA>)kI38dh6Ta$J82p4`rSd(@h)Uxaw*-OjH!%98x zjRK_i`tzXWoL@u=w(>V(iY%Cd;#%(qk)Qkbr>Fh~^Rf%dF&Ma~D20)ZYxY7c)`>=! zezbiOhMTW;F0!rNL%$HD5XG90G}hxklFqA3Q6PxIe~BpY2m&ewf=GG;l_WXCuiwk; zIlDWvGm40GcXidR@BT0bKugxYa$LZ%=4{@y(Yz(*tc;0el&ShIex#oFB~t)bt^Bgb znHr5dhR?y7-9p6lKq)B>s=uz^6dzIq=@)wS)5UsL`(zyQHhdlT5%bIzM4tXB{XG2l zK6aq#j;oyW1{nQ{1X{6=E!P$uQ<~SBqKY<~ybJ|_%f_U!3Zhe?U`qhZ~5XlUiKjzLA@A-ZJaWJap z`zJp5p29;rs-FA#zPl=>aA{EuTZBj;>wXxvryG-AlELUlQB9~T(D-mZ!eA6*(A>oG)u zCp2qQch7mP5;@8VK*## zOrPbI(Ax0|X$C13hS`m`{`N67eufG{YNKU(!c%+%6sp-xoZvvUk zWv4^7*Qe(Pi^TpwQWZ{tz_mmdCcRYPbzSc=cFd;EwL`ywor;5+rgS#gFC~f-Z~X^gr{9o7UTinOK9{L17y=}{Z$RU zHURW#Vs2vDxC;H6_TXeW_M>vob0bG82<-eqpxH5GE8!T0V=~{_x>oPkZ{eT>3tmp_ zJ85243UwTAF0k9}t$kfRECAoTvQv`?x%48})c+z)m^TTAeY(_D3ZYaC+0#fG(9%d~ zRl8kp4Q)JR14hZZ_Crbv#E*=91rzO&GZj@1X%0(o>mPY^-nhCO=!y5=DdD}a(-C^~ zutQ*7>D*8b)f~9OR|oxRN3c$r_Mn`2@a%>t!FL6;{#6?$8%Yd=+uOLt5tN?l#fn7w zB6&a|i0G@l7JFE547CNE=U2&V#$osHQjw>8nf`CEu&7+BwC$tYne|`n8A=3^iTwBd zZI;=2y2=Zwf`?ziOzluQ-c9a{hD1e%Yy26k;@CYM*Do;NyzkZR)B1cDbS@xQ3~Pn^ zzQKHyLjz^yh35%hNI~HAr0-o|fMv=7*%ME%aKBOBR+1Y*%A;&QT#ZDH;XA+2qm>_J zzs=FsEPQF+egW`cR3Z85>I7=^Xps88%Y1qOwrIPo&DVG!*$)@&aB(cq-Q^jka>_e< zcHp1c%F9`t)czgYi>CX$o)H&-?b46uPBvu3i0iHn*-@`GyX^DkI~z)ZzbSZG$-SB; zEQ?pi`;Pnd)3K_evxiP$5?zJVO$$H5;WF>56O}|O`0=oQf!QXj&)agvo16*_6jWjI zPKcAj7`;NlYX_^K71J$m?>!N7Dg{|1d41o_mMC~Me>@XJ@TQH0BPxs+nqxU zc}XVw)v$S_TwqeXAQONsx^%vLeq}CM>Nlvpm-0c|E?oY?;(M4a>4rVac@^z8)?(Oj z%d&cX1h9{h5hy$69B*vEf_2w1CXPhJB)iYELgIw#mE)4JsMNrZ-!E6Y-@RfFsPamr ze|%{#uLf-3jG!S^D*8xo(444G9bE@~ut%K6ay5n-A4Qs&udix8(F1X#uQ#|9wDjzL zE?V7PHxIM`$z$|n;NY>-U*6>Dx{WUwB;pWZNN5pUcweUY+&`MeViVb#=x@0)mz<&R z$ILXg&S$n9B`?X9?7C$6_fTaC*JRzP3)$0?>kKut3@<}PS=R6DS_X77hI7#epi*CG z7#t85x@7cI<-y*X542}wUHUAYI2*Y0lW@NrLRG~Fa|#73+C_i+NAnXrt1$E zzPtYRkzKtnm}u2!x?h838<7gfPkGkP7rGCg+gvmh&k-kJF~oxCfv3$A{(TQDLRTxD zoC%?Y`}A4s2;QY8Qz%d5eGgf6c7wr{JUv2K*s@29gr()>lIagE_AY*CQp^%TV1g>v zt;u0&=sJ4v4tz95jR2}bX3;Vv*nJ0TKC6@EBiXqU!q4}7{!r+K4J|Fp|P%qkbBV;ru zxiX$MWMuYh*W?m>yWY7(o*#jvei7A{Ya)PR@SKh%G-=qzV3F_GZ>zVLc2-X%ch19* zemMYu)~_pCLBc;~Bp)l0giE^L+;bD34_geS-q8maLPUD-oGSOPs5HMeYaV+eEi6_1 z9g3~)8|#||fvRc?$*WqRC1K;E2<$u#U#0<9Q~3aW z&%VBg+ek-fLXhKK?hU2wz8!;#7cNvb>o3CPW_FgG#lZpiye`-5i}=Ja#=Pj`+mq58 z!}n=X$2$>Z+rHs)6N_}Ovn4oNv){ZFB2G1Vd)FISzVLCbmlJF#9gRAUBFrc>F@S$l z2%=3=RffQFRCpr)lwjf=G)wWGdHiLVm7J1O*pZ-Df*Ejgx;Z^17cfvAx z`g#9Ld|nn&MAl>8hrO~Cia5iwLipKh`WuoXAx3^V{Jh_{3!KeI`-1rNxv+0|^808} z`>U;-x(dJJPnO|oN5bRKJG~Yu;H7jZU^xP+{cS)0Gmr7hGdDh0fLelS0v?dPSmPJ@r%yLi3=?wulYW^AC(w6)Y&ukUnsbo5wwjs(aJrb${jlga>@KV=`iW zyh+8rcrUca!th&N#t^b^DkdC-VHClPuFYJj&$Vd)rew+*1iBOY&re^Ps;*nu?z7Q1 z{?<{;ncBx)dG&KDiptnx@=nZW0nFMfXz+tRDw!icKg|S~YFwZQ=pt>fe~kMOQ&7vt zmkV?1E9^xc!pli8y&AMyJ$1!x?ri>S|7={GK|daBXgyn!5-iz`a4V?a@?;J&a||-a zA!*O`A7!==W)iwDy;A%87tPqLf~tdX9Qr;Al-md^s%=RX;Zz(hk>#gZC@2NRa&AL% zM)7qKVEgGKQ}#il%)|9&_~q#g&;*X#fznnyZ%s#=xBTTdcSv{eFoOCT_7i-(o2YLm zOm^z257b3W7>Yb!`k~oO-EnG)gPac~M%ZN8k}@8pecP?tD>sGgvLF6-g$XweGs=B? z#;eTBb02Tzk2rcvI`BoH;F{+A6r%toPL<35{LV|Dyub0k^GQoP~V-8W|z4m=Cgjpr)u+lFj7?M19D_ymdbM{ABO!ZUTO!> z`-i(Y7mE2dzic1j+LxFFG-e2k_kwJrR|Iu@2DHI2LVC3vD&q<^e;F{;Fu9BYr2)5xCfa30cfK9W8XM(rYY2BT6Q ztU!+M6kA}gSsqrEY$v^#_F4KpIHFU!j<5Y#Ip+1m&)!$FreR(zjK>(hiC(r|U-g=Z z(uG7OXMQX^E|u20aW(DS5QzC0`$&K=;)cv?rnD z*qu}i-h>`$)ntB=8h8wVM7PINWAqFdx_eH8TpmceeMKWXi;u%*iHXRZGzsiAM5>pw z$l)|ibYirZw!bp#SMJ2Fy$qgg_)as z<9O5CJn!4Dw11ma@;=*|eEPhVG4{PIVh?h>9L>%w?7})-Rlm2y^e2%KLP)bkF$z8c zc<$S0A-&jlm3pNa>&4~g3;Nvhnijwcc<6tnm^T^^@d&I~e}D0TK#Sx;RwDhLHL(56 z<3;H3x~}r;hmZ+Q)%1g)rp|Z7LtcY`dI-sDVMdyVFa3VsT&*2Imb15gUYBD?WrZJ4 z({_f&Z5xvdddtYOOQE4}qDWz8b#s$SZN0BHENGe{j@OF*a}RxNQ*rnRgV{Ju_#`!L zpHi+uAg@+)xFoOhGc(AGGj~>V8jtNWc%)#*9y8fRIh?-HVH9Nz`!n|-?^k7_dwN6k z)+|+CK@0r|KDsE(H=*%}PrQFRa0X@9t2E{G?I{YM~NDp0kMZp-=vAcn>fhtTCAc1enc_8Rr z8}N_k4O@J8ZHMQdQP?d}%sH54r`stPV#m>={@^}COR%KB-thRu*`LOR&Q*6z3ck~@ zL@!9jnX*?|QSdgqEq(C-?Ii^3K{o|RQx|p7kqqDLuB0_XduImc>3avY`ohfxIqGx4 z2@IccfyT1n<(7Ed@q_Y8F5)}edI)7)CP^>t>1$4(<|Z4G2NYfQsOEhvG$#=4@D+zT z)DIKla(s8|-ik2u>`f`*74B+cFCz=? zrO0Ue6yi#SD?s&suu!OGY%J|k*cK_?-0^7~L5tS*HA39yb^-2tjuxyst_TEpBWe)@ z(sZAv7O7{-Jw25D8gDNhyJ+pp73k5!{|BM|SXzCWousf|R`gcILbxq-z`gZO7gpf~ ztI0d@_+wX@HoY%R`OHky82;4?4w?GP?OjD^{7Wa%*0-`1z8=}$IE7JS@#YiU!W8)69vpC-R4gOjVWZkRJADs%e zC`Jc9BB&dx4Z{-iCn7Hw`H4R2uk2)sex$SJ13BaHzP$eW9a2*~=Bp7m-!9EMl7WzZ zdXE01P3Hj3`@+Y$&INez#wvzOPGWByUbE1EGPr7NnIX zFI<{TNv-am9=SMnoika#XZad+EUz%k_Mg5f+RV( zUzBa3$HJ&h3cHcC<( zZAW|rN;@w-d`9q(Mxc}7xW~(aCv-1po7{%uk+Lo?@xBWm=N5W?kl<d#n6w|q zVdJdzZ~-+5NxYs2DLt2EhZY*baLuhn=;cjwQA!(&nHvKhZODjS&vy+lcx0+6(o#yb(POj1%U#P9w z&&|NUYV)wc-s6|=3rzOc_Dq%oz5LuaQcYR!MIARif3EVXyH`3k$46<>I+y#OxUTor zhHn@8+SX8;qfu{+>eoXFc9x4I-M+1fuXgI3Q}OZ*FmBa;W)k&}eQskA$|B=b_VI7S zt^QTjUH@j*9FyGU8!zWM{bF&1yp{?LYu40ydgK=$S8|3>fie%&CO%I) z?O3G%lI4DII+N0a+ml4hCBmSuFOgZWr*34M7d7e$t`^R;hvwD`1vu#_p>F7B-gJ6L|GlQ=Ry8L%_vMWVx6 z`=qbKYVzg2`<4#-e3XaDea95pa2~N&uQ~>ZR2XEy+{2mnO#-hdBplBCkUqn9?R_q@ z%iAIZ3K++8`V)Ry8V)!@BCWk2jYb%npP z_w)5sYUazkQ!OqxcK-L2?tT@qypta^#B`}GzkH4@ihp0^Cmta!dw}ks!7(3iuRbiy zvh$xUHHF{mZwG2M)%c*~e7jE~dTq8M>nYWXUC9 zZDChVn)Z5^?`q3<&iQ^UZ&Fo>RKN{qI=8gE2r3f8Tt!uMwwBImmO7B5{pYm+^$W_#Rricw? zeM9{OuzfVZ5tgbJsUbhwjADE#X7KPP4cy${U-f%;x9Dq}vOMD6D)bqQd+WR` zFEnp6^G^rf>-|KG(MzrPOTkjd0HQ0Izo_rW2%pS!k{`mz$JIEm6w+9 z@JSWfy{`hi;1cCsiFYvs3&WAOQlGg{_q+3c6}NA}XKC=6D%>Y3>}uu5>62)%d!ie& zd4i(*$mTraHilat?85OJdd6VA`}sA+rdRsevvbSye&q8)funO2+@2lir-t2ml36^O zA`=g7^AZP#hM%WA#rX5OQHd>&KwaptUv+-a8M}R}_|@CLcgb0BoacPAa6Q%BA>anx zLjHaus3-q9WrVW8*?rs3ygpV@hVsTHP^JI6lTS^Iqx~+?IUv4&%lGu)y0GVDQ*Zy` zL_CMwr?K^diuPNN%}2Xu8GgmUZ(+WIoO^vJ5L{Dq@A=f};R_qv%MA-nb>iMnRr@OD z{sdRsdY%|lgry7@V>O#~ldsn-4qyMYA??uq8`c>ib)p-s0#lT}U$9}DF^ zK6$mcF>0N4ToR z@1CwgpM7*ZA^L`pdLK7Yxhp`!${al>XV)H!zY1B4#v->s(A;UN&-0LEM`W{u4|?7o z6ZV)Ya_X`alw2Isi;yXFd{v$ftShO06i7(lE1{(kx&QV}W%2RLZI8dHjG=Dp2NHGlryMaQx&i(GT2pXl+ zx9ys%J)YZITiKsJ=^KW}Wk=p~wmH8b4+cbf&=(Coq({V0(?Q>ZGyGK_*Eyp@zKf~= ze0fHCwcVe;1(`|MWwnWaf`v`q7--h-FoD0Kt$)QIFRk8cB*xXtQ*bjpK8tZEtV$SB zmUw;7o_OB1ZW0DA5)r@e%-?Y7B)C`a0s%cm36# zFljHF(wsGlg1ynxVXbR}YS;6-#|kUJf$ojHJ}Fj5a2!V*SfohDt3|bsV_h{JgGURD z{)7!rhoOMoB+xlXelaZVPkTJ#9=+sB!~UfEEh&h`GP-`7t-?lF~jG_q>Q z72&a6?>82L3{WON)^E$fT;>2CLJ(7g-{7fdDq2zJOBN!ik$7jyd*{LB{Qf_&&Dp_= zsrtmVs}S9Ep-m{!6mDu5{YKumz^I{4#Qhy~x853a6d$DXt%m?93t&tYYozj^2X8vB z-A|^#c1sdcjDu$ke;Ii4)_hJJ9z}21D)(!MPx03P&e|jFz>?$D)sEfqEcSxdm()Gc zZlwdnAnJ|B+Q6>q-m^M+8twFA5Q;8%hp7A*3>Sa6C4$4sW%@?X^Y3uGEB?HjsW$Pe z(uJc%!^@%b2y~OHTwy1;)W#6K@NUbhWgWLl;qlY#2}$az_(dbAoz_^eXSeFNH|?LP z|GKX5Y|}ci-`v=o@7PkDl*;66BVz zwN?ZuaLe|)8h0n8-zBDemH5a4$d)QF1wQr#Qum;a%#+KHpj$(Ga?bWU%M(9uP8^nT zsrJzP$hPYb!K&0{5CrWdBEX#%0TeYH5aEJ)e)k5<%%B3cv8(95d(g>#=;1fsQ2f|d12#}~RatlPIiZ!nRAns&9;K{|SICb|`eWPLUzkRp!x@&R zN9FtkHmU=nlZHMPJ39zESId49E-)A5FPH0S+ORukS!dJo6dg?L9ednKF~(ukzmW&G z^hqOnGKCfAp?^3dY{K}j#D8u)cYYu3!#>`w>sJ(7_*kzu41nNv*SqiaJf?w50|NTzJALgowI6saYXbvi-Tui=Km< z0|IeHUVx99?R}_coLKPIa=Y9B#sPmy>0z8AxL=jU!=O)CLmvh&BVl`s+oelnEbaLbzm_hEDkOiBO?dVuJ>EjW=?wj>*#@VKDGX#=Sa&ozLf*BVrhVQ ze?~X(Q?cJ*z6Okk>2PrJ=*@d`6P7**2L_1| z_B7xwh?braCH@?5j2jr_%4Y#)1;%7d~;JzUE}8= zdrXh7nZyE$Tn{4ug3A4R+fj1f3GggLRp~t+wv<`OGA6dxYiVGC(4q!w1-Hr`{vG?mqZFNu`e(ooS=B z58dj}fz|WE(e~NoTB0*TNuzO`pibk^o-NGoU4B=^(h0BMY? zUwU?4m#b*fcQ#X?>MX0R^L{875Qz`3`OhP`9*Gm#e?f%5Z1G*C_Pg(fLRs7#^3Ygs z7vLX9hjC>8nVM%Ug|)MkKql(K*hiyvO(Hsi#@92Oy0?GZx+^4v?Xj06)P-?;t3#O5JU}bWo;G+C{FvA-{0|B1aue zFdxjNq?fUipE=AM2Lkd*ySf9$Nxix-D)ga*I0Se~6v=x9nB9A}30;A;Q! zV*kWmjLj93bQeZlftK%wp{WWv))`AEn-}?alin;w5kG-jO*Ss-g(*`u*DtA9Z2eP-f_TQ&OC|W7Ypo z#n>=|JD>)87@jl%jtc;FYuR3DUHWi{Nzx{oeQX;mQ7xw~pQw7gG0^Gm2OECm&E{->09Kca5Bf=!6nXQrqmM z={&)i%X?kh*l@n4@HpR+gK*D=RY!V674|K?vK6T8O1A&u_B|^9a=Sr!aR)6YpW;PE zAtDf(R`etD)&yi|%A@$X)0>2GtD3LJa0@bOKN!75H)=pR=jnROP_RJTEfXS8(EH+hL*E&%+olmqN6-eX_@&HHRDojWD?N)bHivk1?sHGw7%K zksvL_DIVU(XeTCZ`P(DLf^<#|5wx;xykldN9%r1uUVXq*0t4gQGIx5A;PWylaUIC8@IYm=enaHcz zKa!7q1*!!hAzO4e{~kWU55-?Yn&z~ZeMGpy_8acc5k2C#jR6ukT@uU3FAD3DMQJP# zK`aTcD60H(uu;Sgnv@D1oS*$AK^Z!uAp{~rwbdT%RwUT$P>}T|H8J}#+IQZ0I5knf z9@a11uXAz=%meWVu_}?!sMpr_@EhM>PIE3D5r5&wXx94sg67g_?GwnG_BYVjF@GG) zVz)Gq==R2=6PNwvMj7GiTG}D~vOhT3#p4A3{it+CI7il`G8^lM(HHFn zoAu%SVl~q1*FO~4VyfpP7)qEtu!^cSg{%Ymr zOlVpkW`4Fk^}G{wY9fJF_>qY)q}-MN{VAo!O0ZUJh*j9L>3x{0WHw$)nhrFE0btGO z=W??-O8*5OU==uvKT90vrW$os!G=0hGGGU3jpYLDM|`p0_LZ;olVjYN6hVE~Cqe&K z{;0s3aXddGEcxo!n^}TI?IHI;>aaKwdrqOKk^>TW6mfu01&@4`n80IOp{HD&O^_@b z5;1lfQrXq5mCZqHQp{Hdy85z5lZ&X&oUGn=-m0D_DGy`CpFAb9N)!fBl*ZHl@9Z(!TzLWiWz;A zC0{RSBTjf(PeLs zdQ=_}KxRYLdP(yIj7&bh(U6CZLRstbPxPI)W2_5f+w|A~w)@MTK#3h=P7SF|TjWfc+WY!+zk-y}6WSZaqUl zv;4m9I|g)yoyHLGf>S{ohto^h=R}tDpm|;X*1u$fS5O;g@^+7&+zmJPXxNN+D7)wn z@{mx_yv*wJa?aVvOIrG^&ENKF=TwTiWq_AB`uif0M?iIlu5r0J^kBToTcc=wj*5%& ztIANAqo$1C85%cQp$^%tx?rOwY%y$c-QXN3-yMGvU(W~djNqbq2qS)<&X`N^T9hRd z{PvT^zj%+APMiX7vavJX-FrJaj*F(J7gL?}b0$$m)x`tDtnI<{zwB#roHWqS^uxO7 z7}nGpDxUC|MA5slw6>Za694=98{DoQ42BOCO4+Z&Oz_g!dL9Y;SBRuJng+4J&4HpK z;POJ=UM1%aj_4l51t(W{Q?gFo^4P$}TBXdMjHi8Q2<`-nmwmJp z%?B>3FNk}vNI7L3*VeN?vNrs|Zq#eR#g<6^$woYt->ymZppD6;_RED)D+STva$JhU z+Uy^T{#Uavj1M2jRhx#`ZAho)q0HDG1FLqFkKzV`sU)I^iKlPE53#32cZVx2S^Hpm zus73c!!z}}xeN1<->}v?8>jsa#^&(xi50k;=`g&U-GMJw@|3vIo^8ViN6K<})fsrO z;{PtQeEHv8T&n!nB{HpapCr8cB)IRdTB}#8gWyVd!v{vl68boezSE}X>{Q4NVu6I- zR7m*yMw!8FPfq%HoyFnBZ593cHkJ{`VH612#@vtQ;W5SJmblB6)-Fj1lbW3iq3$Qe zUk6YTElXbM+#w6cq_?81qjUgU-#!)0L@maaMK@86j+I{@oC9}1??G1$h;QMZl=A1~ zssDq=(oykN+!qp>)%e6eo3%7_`=$tWoch-E^a70GfZwCDMcK)A(qiA47)h3Q;=K1e zk-65d>Z40_l5LL{G+CxagXt3yLz6ojeRM9v**jLFQh!TyBUata`O&vKYv4ScF4@`K z3O8g1ZGa@^9FOi}4}X^r`?jsKQ$h%rXMl`6expYZh44oKIHxbcIVzWZHiH{(T1$S# zb7e?&Aj$9~j^h(H7eiEzH2X^lJ`mDakO8vK$OpLv`eiokG!Jj42s?r7-H(RAPpzTo zp<$fv7Ucce5ia*&f2DU&wzV)B1yx6V-Nq-Eih_5%Y(8_tlrp|Xpd$117tOahj6d-s z&f@E(A?k3=KSMLm3+% z1ljaGpXiL{VqUvwe>U^wA^N~u;PpE9Plw6#qG43b@1B?G@!-A^WU`~_NWX^>U6Rz< zEQU;EDRY|kJ>6sh;KQU`)!ohVb;+CP1Mi>X+mpHW`fQ)~XHX1qjdjg#c#8rOt2g8g zUcnd1hx0v9kDSn3<=faNKLfBJZp@8lOE0!mQQZArZdut^7e(`2c2KUU<0*D^IKIV1 zN`J6CE`AN%L6?u$C-^`GSmA*AR-Dg>6| zMaS0BFB?C{3ABO25j+gBt10o6LvXkQ_C^|PR_-?q-8>ySwN;4AVh&A2l|G_zo{7z? zGN37ulDQ+|SR8Ez7h& z&&(w2>bZ8+iwTX?%RUKgCt>*{Sev-8G7lTIZ6E#2-Q0u4pv+uTq&VuWB)dPTD$8h$ z!B; z5v}ZM%-@eMv=N>3n;N(pJ&%_op(hKT^OdOW`eDeoPm*1f>(#vg8G9ZG0(MVup4@(M ze7b?l#9dD^J+k4a61?X5yYRnW)B7l^Cu^s>BjKWe=JTNK91t2=zPHA`GbxFnv ztA@ws;n2ybJ|yB^4SP98YEA6rA;U2CJ{K#{&?IC88C<(gB@#S0xYbxZT84UE`HVXA6z8CvVC^JO#fc^v~?7HAkKxvszqJut^n-gwpc^F7R2-RR$@fIya20olX zkphS%#f#c;_FtbkZ(?&pjiNN1(dBf=TXAO8Tzys`!@9#eB<-#q4*d}Y9=u@?eJ>+# zchi(f*F}}QQiwLk6ckg7>NvMbM6+;C6mL1AtsAHqc!~%dLA6J1Z|&2s>Jc`V*5!dp z?)}RgIA#_@0GDZ*-!IZ*PZ})qehvu0KkJJ%4NZCfWquC@H4S^R&LE1+^(0xzTA<4p?TQ8voO&hC_j4o{PqruK>tUYY^bVQ>iam6^GFIheYJ z+ta*0qTj{zt8?I9FS@)hL-9l<)n$o#;nrkO%VA{ou_CZ=C)IDr?#Ogv)W5pTzO`eoKEc z)j(qA>-Xcz)cZ1AW5U(b(XigA8|5>e>Y=wj@s)j}A_ZvZN*u&?ciZjIy|siK*^5?O zvL|)l#`*PcUS{!m0LgL+i~We3}{BpzfE;;qATA^n;wKdS2eqD8w-XHpq>fw}PRUG22FS7DY?Dxqj%8&qw8Z;@codqj9Hy`1r%4_aT z$K0t7%cZhwJ^yqY%UEO|%zt(z13~gt{JY3VZ_@N3X=w5s(lP{pWCyP%(^*X;uiCeo zf#Zkz({N>eUu6ZDzmIzBMxJ{s($vWw;1V@v^FbHaE7lIx8@2fZ_7b{{9`bsNF^Oth z!&Pt;9f~iB5iEs|dH)ca+ic1JY;%^)5aPV0s@eJclT;1BGO_8FR5;vHqqOo355K0g z06wF6iZ9DG(Y`0SZ+isanG75~6Vt$MCNYAdeu^Oj7j>6C z2fbl{tn%a?mxg7DMh=JdVMrtK0G&1IGy2ESIfQUJyDT5`XR!Mi=yVw_Y<>Y-%=C2g zKFFyQpI1%Xa`GVUS1zNF8CZ69sVY8~y-|!iQvzojTl=RG0c6t?qh_v!qiCk_sYoyN zt=L_2qzL(>pc0ZBu?A6x+5DD!pR7!f0Zl$~CQ z(l>ufO^rHCBVk9-SG@Q6&^I#6TPNIG`+%YETXN&x)JPdCIj; zV_?t1il~(XCqms$ z*?sgL>jR$)UP9sq}$au><)q5K~VxJKB4+RbUe`@|@)$(7vroh)fX^K<0pU*k?rsf}-*ljzr4`+eJWb_&z^o^A_v`clTh-lI z_ZRNB>G1&bJ3NeqzY?3xN<-4a?nvaONI1U~W^|+ZIIO|1^uzKhdC%|EgY+ri z&T#x1>kF^#OXr8bd{0t+hjDJy2+pLSB>dor) zhF6!ytbfmc)~m{&$-5j;jD2Kmal$Xlu7Pkf0{-7{LS&47a`nn(qNTbEs;oyr#+Eb> zJZuc4LGSjd;B~zV0DRN#0fiLY>FVUbA`eK?`l229GtFkG(03jC!c+D_fEn^A_@526L?-)Rw&1NwnZZ}a#H8T*ymcuEb)g(XnE`6?~F zuMWKg-bo2ZY1YXJ%~o03Z&6G%sI4A8cAYb9=FAVd4$QO z@|DenV~SMqidx-EO$mWD?4f=-L~8_xb~^<>BaGEJYR{|o&%CCmfS;e3PV^GB>!&3Odt={1{N3AH4cE zohRJk#^I{su-+?z$WaHhNDYsSP{&U_+@tj9GxqQW+;0$6i;tA+TM!pt78k#}lyW7r zys1g&FRKSR`Z5NScrz)RAiJOZeJIV|&4 zpT3{x^O&vK!K%EQQq0A@6gi}>?PWg3qato}`g(tE>PLq)XmQ(suuN}J!N8&N4bPIV zU7qA`YgG1~;9D`uv>tm0f*hGZY=Cu=fC>;Zms?cyWN-|RM+>wpvh&S%fLs_-*f zjqM!618MZ6Lw`=RO4Fd`!UGQd^d@2(K4nCnSNjOGBiIbrn4u7isNBlti}*o7>~-F^ z0EK)wYBc@r4+DPNKQ=vSbGzdoJRGV>&6uB``};;CueXoKXnk?2h%iK5yo#@%hf>bj zpJuxgJ2SQ>1TOY6YTL`dOuJPCMTfE;(MfywCF-$;03*2)s`Nb3-@J@Hh?R%SIT0|7 zYnEggsV9Gv#W{7FizH|5Tzg!9v^NIl`Mn7Hw;kqT6=KAnx>5V-r{R^j|MKd&9E~L1D^1~eIf$S}6{Jz%r#eS3CYnFj6x3j8UR(jhM zP=5t*)$sS}qG>O2Y}qKg>ztjrskqEn*jf3IGgBz8#9D6VAkt#N_!GW6<%*q@OQ{PGnrNc8_4yBf}?9Cugj;cv&LWM zjk#zVRWO3Uk;o|2E@J!cJ4;bQf+A9#L*Si?Ke1e;P-Xb$WK}S zsPp|%_@g@J(BdoC&^iQc-%&XXA9vrAJ7N3~fblykl7*N)EIpzL9 zjEj2Xek0&TTeQhbR405J|Jb5YAUf9>e+zYeme-y&jF>ClQs#Y{?tZ^1A9cR_A3QBs zf3mpa%+(^fJkl{$GNF6~-|9#V0y`X^E(m*YU8SjZg|7AnM-xxZu(~oXKN1X^*+C{ijT6bUtoSCD5b{ zr!HapGZxd~$_j%ERbejQ#$B{o_G@gQ5-(=Um&IPwfrl(2TI+b&`ySM`o?df(7x3-c zwAcC^TEFi^GUhXpo2uSk5rmz>Ka#F%OHm+*{t}3!M?nzD5+uBV0xC(#@b!C{J!j7D zj3T0RS65fvKpvSfFgUyCk#z~)0njEy)ckRcgw8M3&z=IVZqlHp-d_J?s|H3aF+YD2RwT$Pp!u<$`vFGCKy@-m!^9OEWHAOaq z(nJk1p2qsK(+xLbArcA;Jz{V ztS9OA_ygb%F8ZF^jYG&6wikKskF31FcX%RIm}V7Fbv^8Rq5VX+@(f;SlbwqbU4Phv zO5njZIOli7DX9LcS#>(uSX%@*@;)F{q?XMw1ZMQNZ|wL+OYHFQveL(#yg)-`vs!^> zIi4z_sz~BF)eg@VYKk*W6=S|$_VyTm`Sjrl9u!r~;K;WJ#a#NTeNs4i-{ulNJ$vk& z`fK;L%hrjk{SHpBjqsr*pT~UVmG_mSrDajYK_tC>A(25#0D7qM1SHvxO90rh*Wv|e z8{uDx%??ny!>!zB)`ou2KH(im-nM(r_IqAHdtGyrPWpY(zuwJu57V!6vtJ3{vrjb- zq>YqzP4VOWxIt13H+U7FiF&v)&mbvHQToCOSAp->en$3WG}e{$?i^~yom)3&ws^g! zN7@&|h*PV1YC1z|*8^y}H>7;tkl(~K*6v;4h}NFg9Q;RCUZtW?d-=*s_P)nnurB;n zA&w97UM|gptlzRyKaEAmL1J-h{outwAL{#Y+Z)oab@P(a$!4e>>jQt?hohdP2tc6v z4eynG3>^&i-c|F>jZUY@&NS`Rss-Q6Fe-w>{2LwR#y6i5S!eL;MZF^bke!VHBa}Ka z3E|H%>a(`bad-HWFOTEp%896hFNJnXaYnpw`rqi*8C ze6*5a5@Hizj@?f%r6Q7F(Vt@~H?D7Exa~;O$v*1Zt31S=gX*%)x-aUyj~?Kji3dzc zb<(<)?M7XwYlW*~@}0VS1(C$OzJ%MNNo=<&$#=uIC~tvfypHYNYPp9HWr1p;rmsWH zPY4053&ab4T7)8o+SqT2a<5@d7u{g^>lDS4<&l#c(`J9`SQuGz0UYbpJvkFRrI&U% zAxl45!(s&((?vFt(%^r`d;eBhRsLze)48-#_XaO7Wp1TU{%J+(uV)tlE`^sW@^B&f5bO+a2O9JsJ(QpTglp*+PI#`CE-v>8APFRAWdIqD4{t|+kFK4 z*F{wa=0&&&*Avo${)wD2$!w&K0@hzXvrqC(ak%fElW{7+!Um_O^UZ{TiX3w8fg-*v z!@lf$y+>O=(~RqrB(3Z!(X_ZiMftMFse5zwR9YA<(+hgD_prBaBQdt`oV+Q=8)Fq2 zzZ6CAKDY1^b@$erKw0N3i|-ocEr;usMbf-)g^;C=Vt*RRWuxIGUi9G19%fCX*r!|c z?$?CPkP)jQASUcBwT@ohOkfm$OJ1)gS|>QZ5YAl($(@<-fFs3OrO;Fg<;_3GuV8*M zI7lJ9$#SsIGyKHykH?Ndt3K4Sr-%iVMY0P#7(UGX*pM$_$C3(q=`!Z+Pl^B4ty$Xa zDVg>MWwFB3B|KbU2SuIFPpR8IK!wjIA!YSTGN+AX4&acRPT>go;_`ngJx6`gZpojb z1q^RBnaU#WR#}i(dq-P_KC+=DB=d0OdS#nIqAlx+&?RUokc=or_=>?~E=7YMc=>{4 zh`!{nWOo_Y;yqql$kzU0bbtw0Vko2LjLR*vH0yCusRI4^^4)fhSK1bKxT7Hc{`On= zKpZSf{*VF_SdnG?<(Cp1tQNFwh}AW28xLV%yfK5Tlb`8^^OSD=G?nnMT#up&g_f0`x8p>w&=oNR?{*n6Y1g{3K4OQ`Tx$xF? zKHtJ9OCPtl4E`5(!^xf%3Kd-SDBfd(ihDiDLe;o zBIZ$L%2#c@44!~u6-IW{!tvqiDQqVmF}lz*vkk_WIdklUU`%3M11&vSUOiq}*jgP# z=VJ27Yn$m)jow7RD8z^N&cb7|4+iuB6q3G4q{vM^^RCYvOI-#6E0Ul0Y^HunYvFrl zZ8`qIg7V*=bPx-b{yc(6WP+!()izPQaklasb#ILuDAL7liMu;B;)gvc=Gf|l;q!`#E)R>HZ`d=Q2` zY*W%T?}{1a>G>8+@tnRt$4%xEs#Aw$F?$kB47?4*2(Cbh*uD~frIb&@WkYA$_@3c` zr{812PS%9xY!#XjE+nAj7*6EXLd;jUl&;z1Ky2#6^^HI6)mcNZjF*bVc^?D$`IuKM zG6L{OA$q7I9FX^w!ia&l%_};zQ!U{6(3siFU7&91XSV{8Kd}S%fXwHG0It8XZ3{E{ zr@J60VEMPml)SzG!}UwV<1~0;qsa5KJ=}dCigEGLVqO}y0Wf*rlPGGrpVq_sren=M z-Ll`=-#EyMi5d$*0q}_)ENn%9I1O|A~ z;eqT1E`3sM%U^0W>~(ti*v}tm6QmZkugeq+zV9bJnsztAJid3Ix*H!RMHiMbcNf#Q z$Ev+5&poH~jk^)(kLT4^LFVw;(F=j*!zrZ)@(JONnq-(+uLmlcA~OCr6zOGe+spc$ z`s?lZI(Kdk6=?7qFJ$;sWOQ2L{O}^gBdD9Ja7rIKzo#^H2sHAg8{mIk2wR=f$6;zA zZHhDb-#g5vn*I@emee><3t`)V*+ME%hf7Z;UQVd$%L&98Z^p~#4A(@`Cev(L`2sAD zp<%$>Zw?!kEmx?q_`cM8`%I_@_Q&0SP^llcx7GEQREY#C`R^#!=c}NH@y1Awc0qH_}n}*ma4$l zT^1-Fek(Br<+6oPE&j*$hNq>NPsmjLuy0r2%Q8UUfV6@S;;#gvK_GxKkxa=x;-zvP zMExvz6vI@iEB@ey4nvA-2xv-v`7g1x1VF0M~RUUVI z`tSaAa5W1F_~EGz)IOE?t+jLQ13UFqa1Lh$MnNN?+`7}T{7%hY2zMr)@%B<_KDb}T{RO$4NTKB;Zy+72F_ zF7g&z7~OKz>@gCWafD!8Ttn|)bA6aTb@u1D4J)vX0^-3xgb4#<`AR{Lf1k9s3%|!X z94}UUO_|unI`ba25EaKa9i={b-B^X4FRKo>YnDK*_sqVrV(Yd75BaqE3X(dzPr0Bh za~!3=Pa-Z*z4s<^f&7`}oKwp)`Pz|nCehl|Fz$)(sttttXqLC4{3(tVWJ0f}Jz)yz z(|fy-qz5F-p?^2({yCwGqiG<+buZzCcC-@$T$|Q!O`+gN2rViaMD#;_{)HFCRgO)) zuyfSSk1%W*mThWw$A#@Y2M-M4M+@o4kcsG^{?XYh)y zC&99vABJxU*30!85Pn)S&DPE?e{l09o@q_ldj#2&a|m9#*+W%*#WCD9{xNt^<~|SX z!L&!mMT(ulA@({NJ*+hPl!Q?1Ei#6)MeSeQ1&(%fxVc>Pd^NEciuszt>Ja;Aw}JcgQ!^>fiPqs^KD1JU-ck3H71ybMlQ2WDbybe6+bbPh zao)iLJS=X{v#HeAf3Dg;Kw`$9r!Nz}>IQPKDvyXFkaGt>Y=jD@MsP3e(W(dc&a`hg zcW*|~?5x`JF)+{5B0!>2VTE>kQLt%nJ)CW z$>6QD>fGm-3`QdGExzuO)I#wUWn_f1aAo2jj6*1knMY98P*pn!|v%TYAiB| z|DB&Hm#%{%; z^R!Q#ALqb0ZAqLQO9rqwQ<7X*aj}_ya@ynEz6M%R=CFv2>jh?bXxlzoSl8eA**@U9 zi2j-W__Zcr&hCRaM|7?qU8})^0ZLo?PsAFePqL#k@@*r(#@&vEoM=hEH6Z`9l1szE zP#qCcnDl{SR7d7+B6%aW3H*yvw7la!&)!gH)=S}K%(n}dpZ4&HN886^&r>HQX3xUD z;Nz#S4i$7Vxj*NfeAS%CcWT7x!<+2kN@BD;&`k`9UN1ZlfW_4<3L0lS*GRbINeY5Srg0_e^6OLe2p! zb{?^kBzASJ7VnWg*y5D5;PXaoaJ@%jMeoUleEf!a+uUfkLqoHtJ&Ie$PrCk2y3KLD z_7!dOpRL_}Mm&_MFdSUSb#q{7jT$3O`;>FL3CGJ*Oj9$5qCJlL zzE9HQMlAfklpiZ+hA&YE*Tk>$BcDhxWwKi#-)Wh*JvGGn-T-=*HJcR!1Xf6hR2BAV z9t6>*pLD%J)E+{Y1g+=Jlxozl6|LefdF=)#4qJKy$$VdzFbJ=D!&3RvfEXt@XSj#k z{A zN!9cz7U)!^Zc7!HI*?MaD#ex{p%ivz-XZEkd`%{b-<)Sn3Aal_-z}OqdD?XJqkh5E zt(3?kyt;bAEK@VSmy&zF0)`C=Emj{o=)oH+KtP_xw{dlpH$|=PKJ*>=$REuHztyP) z)>2$Y>MEtrj6azU<<+Qijlw8@KXANWcBvy9-d$rmp66BZe%$jo_BZBOSxi_O>y0#B zg4<(@IlkXrfQ#GX-$hho_#zkG<-aO((d5a6o0T=XqT8dQTZlO?umd|v0m<_@spi%xnm5ook;0X|y^yv)8sSNQ% z;wU#eWTeFFT?mgfiNzyg0xyr1UQg%R>Oxjnk|ea_V@3rPgucI2l7GE5|)En^?^5q_M zq!PhrbL&q>U|yxbV8s|QS(f6Vhim{amdEipBw zN^>G8A>;5xzQFQ;^|{$vFaXe?#$;Cfc~Lvd$fW69)K~)rX$6MJP2P&kz3n%LbA!upS zAafIrdypj9s*5=&mT%4QFF5?zF*T;2P-0vcunT;9NKUL=Z`3`?}-)b*o=c6HVQ;29TEh+f4drAs+{Bzth!pq+eYRBdl@ghEpL~$%!5U z=~!C+y~&dDF-JFTz5G5#GiKag_=Dquet2i%{h@{z^Fv>bAK1)(>HdzR7v=jQDE&i{UwgsO z0$=Oi5=^gt5v!Ecx=;^)ZLbI&D1CAd5A>Jwi|_!)OV&vg4dueX+jHZ)Zr}c0HxlJL z;l?Q=1gGHeG-w#_oyT7^d|CDV2X766x$s&!DPZm370%uXzWUfAd!$kDT&$xr>$SlY4vH2+q_&8S^}iB)b`YCnmmYUOvgLTGqqP1@%O;h zH9P?ua?gUUA^v%7hJwK$s}L1n80O3W?K6A+RlqMt!zLTs8J{_QSZogAl9V{~`PDyx z7L%zT>0M)Sgn8tE6DgfS5X7&iWM?|&;Zus*eh*3wNp!FeiH#{Y-}S4OrARd`k3TQ3 z!};bf?C>PN7Xm1c(A_jKCaFnv?}68oq;{I%$aLPa345G1KR3t)AfFg}BkQ|hqn+ry z4t>MFTp(Zs5fJ4K@4^~o9r140N@Zl&U?u&|{`fxV{9#(TlL> zO5Z1N<_Fz^BS2xlB%Gc_kxt{w9;G4NBa%v_)KXmTp#h}PKI}W_P+hD^OkQlbcYI;6 zlqL3Wj{vp-{RcZzPuQ_64Z)jE*rf?)vnsY&NO|7vM|4I1LRS6q2o}z45B#J&r_P8I zRr8C()Rn-f&IjPj_7e)AN1E$(k!K)*wx6hW%c)%>{bs!fvJFVD*J|IY- z#&CBbUbfmP5Saei2oWfe*iZNRb?3dVcTy$xQ+&ZIUf1VM|FeJEAjeQW4jA>&jUBJf ziM)}Qx;_8a%Nul3%_A5DE%}YE3t-;RO$3}VfttqW#x>nmg5#~RqFd^kg53Ie)yfER z)>-Eacf6`w&sX(n9bX?<5I3_pVXyJ{QhSY*kO9XgM|w|TRLlR=fIUQauS`Q zhDdX)B?huB_D_-EqlZJ0p%nq52>aX!Ql=t}XV*8%2y zRP-EYu@ZRGnii=g+G5^!W@7&xAfw0xSh8RDhrss@7HxrNUJ3Uca-S`ofJt%fsXQsZ z6R#05xHFE>g-8?6)wsWl_p=x<6Ea=)9PiZ#-&6H2rBVq^n$o;r2BkC^x zc3{*-`tUY^QkxD(|8<;FN7Y-4Ve;qRUUyWSp%d0`VS;-&PO`MewtRr?$G&iIC6qL_3w?^q^_duF z-)U|y<^a?9wxP;5!ir2R6$+zet#i-=Fk}TVed9732Yd?x6nk(4e6$(Xhw*d=Q#1CS z4BPKxx@WQ8870Dd7S!eQf^XqK1GeyhR@cG44cGF5CZMW$)4b99SUqNd?d|XPx(*RE zC(V~%x0jd72dPzml$#Abkh7=V;WBn2Gaj2MAGOO< zI>V13o%(PJ%9OjJ&6Z>mw_eniLE?Y$JeQamHa~)zY zFA$9L6Zg?}TN@Bz_cbR~X6FK(U{Mj7%;_1}@v`h)JvW;GEXnjl)1gl;UNpBkuB1T$LiW5 zs7akLWTmPTeFuQe3)|z3LM2&lbA`US$Hho>Dl6?g8UaFW(_}FJ0#kP+`(;q{`SwrTFMUS4yMLANTXV zv<2nca^~MK=ex;trMXrF?Gu$_X>8P5e(HVt7}PnJqNRz5CEuw&k<^Bym=PKV3^}py z!)cu^prll@cP%jUSg#p+sFL~ktrjkc#yqV z<2L`i&j_y?dw(C0l5SE1#@Qt$t9|8(TeGh$%oqV$(vQP{3dS7~MFubc5mOE&q0{c~ z(>N+m_&~lUF@E6#!gt7r-+LyKME&TmuV5tR;!lv+Pp^09aXY&v1^3-=AE8H_KH>@? zLD-cjVNyak`$fymFnInJn&7~~J?x;P1y~(w4FmK2^(aXkhezI0?O!BT@NS<9(1Aah zJtu?iq;BkAG|n^XTms0R%NlN46WUmGmilF!+YaA>LUaQ+9RsyB;x#}63MO>=$oRJm zRunfNK%&Bs%+=k>EZnZ{rwczXdvF<8TQmmb$gc!ia1nDK_l1#G2I}|8bdj?Ump!Wt zt#H{t$t#ii1^y=U=~<_VdGqJJ6#$k}#U<*=?a-N;2j{ZYyL@ye{&H^{B5*i2KF)F6 z=l{G2#^RJ0|EWzPws5__3*pt*$_w1zU1$t(p}~WxWMpuC=$GqE;M@i9Z|hl zkNQ(x4{9&YVVsgju1>f=uORyeduU>cWg=SLcG7~M2KV(mC4$TGetj>yuoHXsIm>ay zr`N%~q`Y5`dKHCXz!0G1+>s7j`{L=*uY{%+7Vq05Wh}To+@f+M%+S+*0Ojs~b*h}g z`rYg0y({)%f*&Wy2`m0uj(w)^CafVHsQna=8tvB>3o)rV&77aw4lG}K3V1ISE*r_` z%!cn)*u$hYUGBfKHnV0FAv*U-qR-F&`o6!3E;-rvi+bq3M4~7g%;K0J%^z?UJS?cX z;f*c>SR}tF?AYJ^0)Z&#D$w$Wfawy$PK=<*Z(D)(3EqbHnqn?sISwhXOfRr45+vgN zA`6Cp*xM!BYabf~jAM`&+W3!T3kCywKMAfQ_#f3@oG$@%I8R;RLk8I`XL^0gulB{s zW#t>#_glNNS3|)^;cb)oy+RIN;ESc)6Uw_oDLTdO=JiW1W-gXDgS;a>lXy0lR}PIR z%a{m>1>G}l8kC+2{teWr?dGi{UHu1h&AHHCyous4_iw2wa6uYhxGo9S%iXX(WZ;Fv zm7Bz0cFL$SfKQXX20bJ(sC`Abt)UbWHlEZSK&_ zP$4l41#CHAe!gf>IS0uPr`SzK5b5P6UbhK6xmU%y(xOM-uD@r$5wd~IdzVa$M#DV4 zw#$VA0GQ@ekKu0N3+9#(0pf@KBoJ0&|2knMSW8!i%-9=eiTBr`2`I1|$x@O}lR9#K z_il~t1cg2j)@+>(%XuG={F}eo_OnDbYDKq`${Zd>R5c2FR^J!Q=>xmCjYv~{JInUp z`#iI@U)9ln$f9G>NktwWu@Go&F3!gN5HpOM-1aG2?Wozw7^LZoR>7ErQ*e8CpIEAwF-CHgW18vV!hv+z&r}^}v z_u4^1gpb~1#NkfgNCQG!%goFA4up&SF0`wyhbg zd`3?`+N3>Pg#Er)_Vqj501Kndd+QLUrc}$(C?NZnpqmo7DK@*@!Ga51L2NAyDe^tq zO?wsvL9LeR13-!1-TR_5mxjSpJqZmsmuL`zgl9E4$37il_u)ZN=}g7LHt=t8m3CQ1 z8HRJeo0o*#@U%Wai7D^cnOHO)Y7VQ6ur%lH&lpni;xjv`N->n{<*5IjO1CFBJ4WY- z^p6`7wa$M|nNyypF%bhk=3X$41F=n86~*M+Dp9W4dCT6ev*#ZJ6 zmcp(SAlILtaNf#bP7{Chn?rT=p_Vp^NHSV^qQ1yn_S(D9K}$$MmhxbJlJ3Hz+x+AG zm>P4vE=f<0Lp5gyBx`%1yhGM;hE%+X8;bI65PVKzS~PnMQ&Qfv$K-^;CvWh$d6q34 zr;YaapfUsF3hXS{GPnDZAYSJ|ZSPmF(qrcs?9%YEyQTD8D#uzWS?hHDl`skZN$IVW zA$IKupS}ecZI<@-u%nr8Jr|pL zj+rvbB6`{wIZnrvmu+_TCgKe&1ByoGJSo}h#ym~;g5hkyZfA?10ejn*62CO-z$K)8 z_d&enW}gC=F_>ZZNEp@Wd}PU@*>kKw3p9su4%9R$B(}|t{^2^K;!%Ov2ii3kA5wJ& zc}=~+Njv!}{8ubINW@}V3N**-F}?o2>hnE&r1D^=>hXQ&qlKoq1v4fh{T`bGM z=(flMN=HR-&h{kzxe5^DGp-VRG_TP3U4Oo_n#!_WYS)xKKR!d+_{pghNrY!V@X=R0 zkKg6Fs^#0(hWry9!(47%1$5Dm#yS0L!t&#B9TQ%hWo+ndc<4MBTVYH~+%AVKa1D6J zRBUaE4^MZ_{NOx}fy8`2@e`PC*v58LhWkAKoSF~Ym}P4sxMtNok3YKYA(bF9SR9Bw#zk9;24XmzW~m@|LmlDk;9=6$r)Gsi7bLZzB!owN<*gXm z9@7UY=pb|Mct7FiYI^Qzp1LQR>wqdL4ZVYxG#^+J+92e9Q}ueYWn%WsP&x*0BeCE~ zMUmJk|Fz`PG*hN%8`56fhY?sBc9xEH3wMu2*3Y%sxvQ{zf?WEO9X36w@b8&+FJH$! z5CkE?G2bkJdysYgZZhF=#C^Oq`)Anbm>Z7K9V!PXGYN$+7nX;t>i|kvu@y%HW`(d` z(b27mt0^sBM%>mJ+Q_0qsk?DnR7wIzi}g>)mmBiO1Z z*fE@GBY1ukKxl^>Y@?Wl<>|g+*gJjh=gX+O?k5xNT~Zt!(jHfrgMd5K+h_^z@6fc1ut<2N^7Iu1iA#d?bRbR<92u9zPo?C>hv~5 zSjtA6(CbF$Tr6IA?b-2Iwhh-&d>zt?@l}`S53X+Nhx#2f+uew<2yAP*1W;svTAI;$ zK*rMnl!|Z#!uT4sG}IDnJlyvpqV|F&@8{19&28V=$*e5*fybBcH+;z}>@&$T($|V; z2z=QBv`>IdG27&2cb#bHw{tl_8c-T59c0L!fgTo{?DZ3+bzL<)zdpEL{tc{rTF5>g z2Z;6aGtLBU-$J3jJf;&W#&{e#wBQy9p+ZJC9##~g*ZN+HmJXG%5c1JQu&=X!N?Wr) zz0VR9m0?1Bwhsl7S5)L=|2(bdZ?dLoDNpea>*h?ebwqLpFcHP>T6Qe&T z2Ch?&3cN2KxjC#M0QANA9erkY?v`9o;XCPnXvky1rfce&kfQ4DqveBf9A?ib=s{=; zl4xC>!w?Weh$tX%SX^{hz6Z|uW zhwii5S(H1op?`MYI-fA=_C-$q1j4bX-m`h74zuNpXco_w`&*sfb`4md>W|CILE__H z#wYUuLaxXC&7FJXgpS=g%ngi4pPt6NP4dcfVZPK%^P!lXeP(_d`-j?#{PH~Yj@5Ez zYAAmcxA#|dbm{zYG?nm<#%0P*oU|pGU~};)h6zYa{W5^7erH6e9rYnQcX-K60*|pP zZr*gm$vsnuweMaYcv~s)+7k_;(IR>?+CB6=0O&Y6qd2^W1;;4x+sNNvuCnZK*%OV_ zJ#4PF0azO>8F3q;)1ag4bB;02VK{Uj}Jt~%M{V7NkU`W}uD!Z-V;`Bhvgb`;F+LobD+qmmF44v6TIEXC(+G4Xi_=s!@p zeJp#M+?sZ}lrt@NoE9$XCs<7aMlMkOpbn>7XnY*gXWxQG3{)e_sV}`TW8TvZ^@fRP4r3a^bFyTuA%4K2rHn zFnlk_J|CT*X687&vKEYXLcD+>a#Hv( zxJ-oDlFm`+(qK+5k~2?akVti`vZ%2$32L9-m&VLkKF2SzA?P!>ZCZ>RVc+h@>^Z3U z<+AP}`3I9E>E=3V$+IsAaxzeadY&nkYNBVBPrhG?x2Bk&^#tI-dk<>`fl(q5sHq4? z^zgWs+NCy^>KdI)Z|-%2y#y*BbGLogkDjf|sR!-$mK@`NKOH{j18KeFcih375GrLY zxx)8Vr|LZY#chR=~YG2A1L{yGH@5Pr&s-q2B|7IrN>$N9`C-A2Hd!o?Nk2PSFjwktX{hsF9(Z= zyi6Sq+B127lOEJp3^wYl0P$Os9X8S~yA;VR(y!=R{+`LUhS-e9H!3f_`CdO2vTWW9 z9&~ztn1DiL1TzXx{x@xpZBU@(U4Ot=pH>Zx4mg7i!F0N8-*?PS3wi^UbUupu&3;}M zsnnYx=>7zS06L}o^7%?5D2bLooW9uyX)!9SYJ{3Cz24UP*wGxNC(y7(eNe8hv%+C>j&C8C6@MM}JulV9>huof zWJlRJ?QyF}P@0*yOu9J&8FKQI7ON-$Yds$ts8`rLGj5o}f=W%%ppWC_z6XW2s-O_Ay zSab^lA;^Xo2$FtKz>@s?ST5K$f&nYv+l~V0XoICKXc4f)eMf=gu`DNsc~Ea+tn$wm zs12ue*GZc>$yKUGOd98PM?wNZTn`Red43=F{sxRKf0Vo>%ynAs$L=P)SerP^m0A4K z6h}+YI`be6Z%RUW;6E2Cw$PY3oG^5t5Ered-;kgUl8V&pbmz|dMBD2V6O@y#4UFL7 z>|;&N=7#M3a0{YV_Wf%S?dl}*y}MbLn$@}*^*!q?GSeErc`yKf9=dUd3p6Qy&{r;r zTY&1BLd#@M)SvSkFTJs!=g?7sc}vK`>Hlm~U}fcSSnW>A1Z{rN%5wKpW=VW>_!~K1 z_}}k%t#T{yj!hVUKPKPAm)B>{_^jK{>OTh?l1t!!tD@E#NA7V^dQY-m&rONI82Him zyA9JmEg#~;^8s%xmhg&U4_^axp|4?BEF&rM_VTu!K&XRYz;zz^PlV(N($T%9)@-{+s%E4q~{$-9?{l*8%m8K)t^lS-Ev}+5WVo>bx8M*%4V1SzjPi}^;S~*K#4Nr zbAIW;(5_TpkQ3t_#i(FEj{_&YRJ$vuQR$CgKLSNfHXJecj(Y%uTlq-FW5 z&Xsjepr5H6o-dtk9$zqnD;ca+GifN4!*FCE*F>FMVW?3lp>Y;pUKJkfSm|Msji>8N zd3BzH&v4ag&3i_kIhGh#<5pqndGGqxxbjB^(hcqP0jil$>siQJ?X&g6kvc=`$8nFT zZ|1o#VAOXH0tVX=aBlj+3mz+U%t+G{|uimgva&^n+Z`Vs5gv=-|E6kjqx-oLs~A3kO$N;h8$LWom`4P(~vyN;Sv&X z90}v?qiuT^5ECJbbNm@&;-@~kH>Dlko4508$}3eLOrpETZ(ToXM|!{4EBrbf%ce~*5t?BEyB8fC~V z2b&*V#>1Pi{U20=+7Hx{UeRuW2?D8kT+BSb@d2ysJt}>Ju)!7Cw;WATR$RQ)bm>fs z&+hfzt?TU?Es>~fODGJ~e`!zq_Z>wr()Pkj{O~NOxUVZ=SC`9ajpfgL{p}hkf_6CU z{CzAr@bFt^_MM{uuLQ@#{D#r={w3t=7t*evMeKnR$`f4_KqyAYqC6Ei>IaIsE_(8I zawzLV>p${9(!OZl>^AHiE8_sN*Jn0>Bs>xd`ej>ppQ)ZM6W7q-gDw?$!mSnHLVxOnq;D2fz%)4bl>C1>JNzWj0g zvg*u@?lI66m^>VND(ay2ewtnR_;zk+^ZbGpE0DZY)n&aoVf^a8w!|MASAq^X`kfwR zK{5x|F9gNq8=WRJ1L08)&eQ^V$z3?$ak5RB2z+!dyqob4taxAu+k5i|~aF&9;3P z4U3JScN8=clDVkO%k}dE zL)O)A)vl6BSiF%+QW3| zL?K)@j#EQ%TI7+y6AGvH4Mu%N%0Ea!tNV->Ts1I=iZ|FlscHy?6$`IyE-L^ILtbe} zvhQ?eVcZ9*1imQ?^NSbz4yfNvdTKg6Vr@IBk1J<1L?MmJTAZ;FnK_F+e1j(AJ3D=8 zjDn@`V0SJR%+dsig?ZEw0jS?vG4?fU0mB~bM@*5eRqwGSsE)MveyP z#9P6!1{P?Uw>VPev&Mi?8U@SQF>DZvkI+w9SzOQBrYruFql?#)+U50UnNBt}LppOe z=cZRWp*SS-Hb1RpAESD8Ky{%EYK@cq&Iwbs(@vG$MjV&C8}TNa{w@M7NB1#$_6Y4} z<4YC3$+q82Dr?W^WatF+Ox2(OeaBc(TTm0{=j1c6y@293JR2p){8MOT1e*W%(NUDb z@7ytg{AJq*qQ$YTZLG@}SLM=Dhjm-(hoz@b2WgRJ;<)_EYut7?KTCbS%67x5-M(gM z2Hb7NPkq}7sd8|pnlF{Fzin35yB;jZC~O2+X40>BnLPy`MuZL2WU_*gSI6{ zOxw43!VTp&>zxFDggq9U*b6LKy~vObC=Iov9sHQP7w{X#@2S3ybH>f9m$geyUY$Q% zw>Ekwo(ykk2sQdKj7gN*xntP)@F!i&01I;0v$O@3U{OY}rENqGX@OhFD zWkE68CEaYvp-;`Aq$GQUKAW$Lp+@}lxO#gHJr_!*cWN*`-c9}U^!cDOfBvC8QHqS~ zlZzGYmF}3p4VAr6zNd98DlZ^n+4U4YL&d!e4LnM&(ty+-uJ8Ig|2)wha%?XtP%1u?NnYh3PxM4A<9r%Y*!fy6;laqyQ*rd+(AD zCM$}fo^YC9C+G#jY={sKu*HT~l#v56_cIvfu8MT%qU0;|fYRXw_<1MQ4`f94R$WE% zQ{k@s+}w^6tM6UcI0P9~PJ#$*gvZ&8Dt>jLdnZui2;w0;YsF9794wGz-^r7%z(yTH zEkA1E{jS)s*;`B!vd7!Jk3`U3KMRq|z*^5Ub#?muUPt@Pwcb;N zBjj~)Ra$+7JlOA-CM)+?nD}47&g|{Ao&(SqYr5%0=Do{Aox`ak1iQrFy{RN7Dn)Um}QaUXl z52&)r9VdhM$I*Fpsj37~_%9(!@KHdL)T-_ znwR(BMFCTN{o2ColK3AhSwHtBZ=_oR)TDt@n&!M!zWbWY-*op__ga)}m@*K2z?DWI zm*jM@=;8gUa;%D=^lK1N8te14s4n0S*W)@l9KrVXM^TO}Z%t-6r&*gJy~cQOJnG|X zTe!+ppqYiw3Gyzi4?j7({u2D`(;^{9uMNO5a9R^z(VI$Klz)cbF+$)d(u;?xueY`K zu(n4_N!NS%nhAvj+da7|6@SnvcH8jjpr;$7$M<;-p#4n4GbMgLpubE=c4OlUW#g1X zc@J!*X_jEeoHGH$X#E-@eJ|Sf*vl_7Ke`m(h0~H@LZ06W-wI=U6+dgDAi@Jf2q#3k zZ6Z96PwO5V^b8mpfa|vy2PiHv;E&E5i={|dT(QsZMDHAyLesKIyCq5t&BiahJMud< zIYkKC>BwuZ7@&jed%YY{;C5`5**#7;aTOtUKEJv?u^69qRhb72%9OM`BR|so=H-KZ z`q{!7x5M{tb@_4TMKnxO%QaPB{oMGE*U~f^?1A>rKCz3{(n*k-><#w`B$Sb@pGdo; zpf$kI5LL1cNMm1Ug1b-Lo*UF5>M10v#j-Iqi}|qZbIPTv(GY_l-n|q&B}H&J#cBEI zH#I3oAl$pzEX5wrs`pXe${6CAq0`G>{Jk~XTj|)lx?+t4Aa7&#u^w;o_SlfIn_GU} zr##`|zMowEh2hr(oInXG`STmZwa8wuqZ3Qwcb{~&rSn56M7s{K|Dv~xYC;Y>#kSvr zi##au3Hm?0oe27e&b6v+*|B(QenrB5Zph=k(^|SylnRf*PcFM_HUcx`oNfq$%tzR% zDnmb#WB@v-RVP^^6x&HBYddTjv>|mrtUKVBD}6a`Big`xBC69g&E26mSbBLy(oKMW za$cSf%rQE3rpJE7D;7ea;=bEs|C)cAys`Zihsl>BDITrI+|lC_hTy4>2t!#0A<&VjxUn!{keNG3( z*^u?PKO6dBE7rySrICUR#DJ#<@A%jCitoT8+-Cag>!CchNzZ{~V$7D2{1dp7+E))! zjU2K%SD04KA5A)-4T47Ftye#!2RxwdeKUGV;fz_9GJD`#V}z=HpLlh4BJTYDMZeI7 zOc`^oWhO6;he}v+1bY_Xib1_#SQ65_3;(x}h21io!O^XGw6Eo`-zM)1-s$#*u5|b? z1Eg+7bjQQg8K?*O#9sQ@T5r$(fDWmU9b!J;1G8)IM`gK3rryMLMuEQPx7!b9I^@GoknP4wDX@C9I2>n^F z41qEBDX=k6eKD7=(k^f}eEshdB>12TOyV8v{Zjyqq5b^X&1>+*&_|N{lr%B#o8XeM zFsfNR{-~{Y9%+7OY(|(!^hG3&ESLf^GBE1Stz^()rdp%JQ=#wU)H)7*Jhh&`uhDew zN$h=yrBa_c_Z{SR?Dmm-O1dV-ESPu`~|pmku3{eYCx+#T4k^R(S?# z!D`3#7BdJhht9^nQ%*QS254pd{Iru4HJgXBHRiPQuyAIHRy5$(5vGYK?g2G-^0px# zv)3~iY-gXoabt*zI?Vr5D#aWF1P`AM#S^_VNc!u3m7*REixvr?nag*g+7Y?T-JX}5 z`0Mdx$m*4RCi^=XEe175-!^?%XWV~YP5yih2igCmg^>hANP2So4b3lY;j#WrH#5a= zOMTz(k*v21_i+F_)4Im)g_mxML<}#9uCeZL@YM}?)AsNc%8&AlC>H?D1q^6bF{RhGkvb8BAQYHQyR7x)wA{MIg|v-J~Lon z$XBN>&wO~16(yE=E^|{sO0Q!%sq34)>4J38DKHg-vt=FjS&{mF!}^qMLj*j;*DS>G z!a`;G_>9Sks)arG>&5U?9Q7|cqlS6-ul1+T-^KK?ztr}Xu79oWVE*EqzD5nt(DYfC zZt!9QPjp|jzwm+*z8J_2R2Aos5hW+jP8uqUo8-$xUU>X$;V0$h)m2}RI2JtXBWmY9 zaa`^Z&6$7kEKle5)h)P;BU8}v7K#T|&*bu!Ovg!h+V1gE@2M7V7m9J;xz^%4thCQH z$_0-%EFrQ0nS#^uCh=>WRDr&aV{<&}-8X)Xw@3$G)@Car+QpF~_nFAhSAHKUJ#tk$ zu=zFEzSEJ@AvL#N+Yp+Wi;vFv$8Ir^Y4)Zcv8Lzu>7nq-$1|tiVj$18BMxC@G2e+> zGxg!IdYg9lWX|sNoldQ!+gFbkFBS0G8}@@pRxDu2$ebQSHG@>x&j(jlGX?=X>Wcp? zyxkhQM8!S%&ldgvB%J^FIX7~^=QP$rjI{8%gJ!zZ;fnY+(a!C@lfi7M!cej~bx-Y6 zJh=f}B$a&KUgR6^0tZ9k_-dBhN&ZmOmoT@N(Gm>Vx|#ffCka~|>tgBaDhUEuurU#h z7xmrn`ZtZ}3j1*Gro(Fa05z$qTj@dgL?QZjMZ=;3XA$mI$hc|6lqD*=NN%U>aFSNR zY7JWQPw784VT^=&9JrRA}?4T)>2Nq`B+-Y9Ry1@9Dd7ePnN_ThU`Holwm4S)?&7 zGTD-L@?KJhk=I=t^ou^vZy&s1bK!|o7JaiBopOuMoO+%YQyF#*mBylFrNH_rcJWch zO~=hqzTIEs@fBLVg(gq}>Lwf&&seC#z{5y5t?hkEKY!#@Ukv|Y-Z*0mFjZoIU76MBq4F`6ClFamOA60ZIw z(G{@a(C&IVs-NzaJbM>E;~B?mae}o&P=j#)ny7Pj4jm8OZ7BBc)7+SrDK=k1D)?4N{x_6K{{T!gHHUM_2H0%_B2ZH z?}5wHVY3`Q+y;JMX>?otvvMpS1tez6VwdplWtA=;Ki`mmTPNW*#1R0}1qa}kv4eje z?~d~Au=sGT>tP94%gRrVVWJ>kTM62peG*HmHH~Fw->F{ag~|q>hAwy$ zFX>Mh^}AxxQ6~6LZ~BIt9V5&+a4CGXf1~@FvG#EH|DMAj8p1tVEF4BuU~0eP*tjD@ z3~Gfz0PmzCU6ks*Pg>V&#h3ltS%<1Fb>K!X8HVNI$v`MtoGuy~$*z4q3lQyIgvSe@ zYEv2MszUD6C6pIuW!S3F$cn=~skv$A{MaZQaafzVQ0n`&NPUwMh+|3yQo)~72@=*o zlZNjeX?8%97YtoJe~zWj`OToyxVJ91=`lpJh?U8VN^)OsKsB7-v{P^nd2>0TSX!*>yxNCBB@0yEj?;%UJeuA+e zO*XrfmrN~#n~sQz^W41Sz)Q9A$5~o))ktBNd-_-)$7BnS*ReFYio*N`M2V(tj3q!e zSRskeuvum=0_~C&`dObICO5H%hx$TS$=eqirfjF{l~1l#)pO0~K)fgq`@<-=JMegm zMk4iddCY%`{1r9l>a21W4lH>zk^jEkwMBesoTr1b@tvR9L#VQoVeWCqnK+%+oBL~x z%(R)jJY91dnN3k0kg>yDRzFQ=17H`lrQZ_{YG)&TT$Pc!e~RR|3J;q;AJ19PzdtG% zl7%3W@8Zz-QgNPwCIq}iYA@mEPV=#>!mv@&^^tA_-6&P&R%On$JQi(B1gn>x&oZ&6 zgRs{XT_29q2M3EZD2Z(!f3kMs;Yjdg`OoXA5JhKV%jV~JY7Ezu4DNR*H<+^U6>kw4 zfu4~)DwdW-DGe6PO56;hUQE1zj(S)MK+w5bI+S@W^yuQ}z};4(#OcDxPR1r-Z_L`dZ&u zr__hPtQ=mSj00z*(2=0r4r=SkEcPNfBvnKB=nEe`sL3!pMZ(w0Y@c7VI^vzv%YYs9 zAhMs_;Di<~4(ib#2>8p2K%=E_MN%oN$C34-3iq5#@)pro6=waO;U+>@(LHSx+!>S- z2<&&lbUR)o_hzaf1R_d;Y$MiVbG8JDTUV(}n4@!4%K56sz?}Vt1`FQ)HHJS!5#Kg3 zq>0@9;$CKv0%E?xnb0qyTB`|ZXoHy$voyboJ6Qkf9b^DC`V{}LHN;aQMC)$1#rx)l zEV@&EDR>_oZHyYuPt?nIPa}yZbS2^ex|%okdhOwidb{=A{jH+`#n4Bs;6UH?k<5D0^QN&19r-)U&G7vzKw46>f+2_Yr&RLt=RQs( z)E^qzd>z+pD{?5z%q^2|aqhu@Q}L}=rMde_f2!*7yY2gG{2{jCc)fiN`r>!!4(Qy- z@60Nu415OeA~YlQI4GaYM0XD82v0-1QzC4c+5?ZSlIm9NPzEI{hr8U;-R~x){DxYl zlLht3c!%lfN@s9EDc{@Trspfnz-50yLJxVY3tX8czHw}kXusYCjXY!!aG8f_pBshD;cf0V zl(S$5gd{6@G~@0wetu}+>*gf!Knfv}r*J0>l$0X*%z8m6h`qxiu~;}6_aCjl0VHsi`GY7MvgJ=zl1kmaW-w?sw>}XbRd%W2P%LK zlgl%Zz8`QTe7D*#{kO?lGLc)P%nVE?H6 zH+t)Umc-|BG98rQi;`Y*h{#I#74ED3~*x$2!OZ(|WNBED5mt+)FP*aX5ah>4Z zvApvVRyn(vWhwXZ@o-!oBg*GI?}Jbc_2g{vW6t9W+yA!lhW><1J`FM=q^&sQkci`PJ^CvWM7;1Y{8HG*?=RhZ!_9}uLz>WO-#?d zcww>uxw5bC@ZR&(d_w+h;FlSIyR3TyG-wYMrk^dslM?>VKCu?d4zbG|;wi-w2y2^z3*%oOy>XJ65cUc1Fxx(IJ{1XhyIx0Qvg&BuAbz^s&z<@> zN5@qRD=VO6IQX5SGY-~}4@W6XyrJj}hsG=i-%U@rh>&o)??NHX*Zs&)n+5Ar9Ms${ za+?;%K+ z7$F-E5F6$@Sn$&7y=hDn6*;zkOVao}zu@px5h;QO?{kWO@6!26C=i}m_wwGfvA9%l zw%BHdM?3I~Ben;=H*Wv$E?PK2e^!>E1_&RSl)zW&q-m3gk6c2G9aOh-3!S3FrA@DL zEmO;H0(E>AG;{}Q(QRPt*4*O^#0~fD(0eA_<+7qe;hu=gyk`m_ClxxTCN z4}?I=XZvT<0+b_Ty_gQaUM@K@oJo#`@%b1@DM_M7A)iPlrx)i^!CvoafbukPayj|mYEnL= zV*b<>S&$gMDpHw+44|BMBuyR*_g*MX{oIpLB(pN}D3}m^Pa^!BjGK^sP4BrnvYn_) z>pi@3A1R^VP)#b^KI#P4al;b+%`hK{es^ZhibHI_pTkAtzS2+b>nvHHn6dM-6Yk5r zehUeTtC$>F+l$EGj}{u0mPmKHhX5J|a!|Zx?VH;In;5pkdS8(t_{*aQUvuiXL01T5 zy>8GAbVIea>~o8O#2&FxXc>(&tZtDl&v#A`PZTXt%wJ3N>bvI-FiB6m1QX`b?TlV!au_F$XGCQ zi@!6~C&cgh&lrt)8Su(cJQn8phCR29jzV;O=>onS6;{Eb1w%vQZVT`qgzWMzJIc1e zL+tvwTP;ZBC;=tJUD7W_BPv($X-J~pZQn)ZW*ec#0|*T7(eB7Kjs^A{3Ptt`? zYc9Z}n$#Q+Gq&@a5c!zlV5(i^vWhOj7wmkp3;Mn#?vwGg(e@2sSRy`9^sY?R%#+e{P`?fv`Q zF0bVK3hk;-3k$Y=z*jzw5#-2YwyHg^#v$0o{cOJgpdc+q6ZS2ho<*4$=W%f43*i*_ zXQ!uqop``3()py9?{|;<1AC9JN<#Q~w~^BP?rE+2;uii=#_l%@>XgwE>&va{Ks%6? zX7o46jfUHo2L5Hv;kQ(NN9)&*ChjSYipn<R-4W6ECim*{gP~YY1iyI?QkH^izC}JffeqRA zdx~(kvq>&@z4*?p>E(@}&L#_$~L6?JRt_2K0*IOo6WJs;n#`M;}}VH0o@ z%}4PrzI;io*7~OJCrdl!%$nJ>G2nnTw)7$l-3a8RVOOS@iMb)C^|Q;Y{y#C9pB>l(^r% zZlYebHjmdQh<`$+KiG_5D3`fKIpQf%Dby#NfHpKUWXDstatj5-;oIuNC#<0p#2&TT z(Sh_hqK!VD)YO0vqxb8ADNLqj-}A*`MOm8sn;$+2=Gp*bHy)atW+f*E^aNJty)z5t zM$PkR97fF>NsABZbwhRN!w7EK`i;uIg5xlnNuw*(u^JD3b@$D4M9Jo_|sUp$ta3I=U@v;2A`1MwzB849PEGwE%Ha15o`CJ$ObKg6eiQEjuSytz957b(F6A$YQ=yW3kYh&V^!aml0HDb|=S<(fN%7x&A86n7 zL~aESg=p(12Y-C=d~ojb!9`22$m_0jm)_KMK{UYjm)0&{6o?mw_vu`Me*f%TwJqi8 zq%)7T{JmKV2~Wau5E2f7#^C!$hP^0P|ClS5RBlLX^7C10v~#2%w*vwW%=BVu9itQ; zC)-_yZSLM<6J>9A*l_QQ@=D?4_h3Kti`y3}{Pl}6@$#?(T5mVxMNmY9;9d)l9EJYd z=3_Sr4-c*lAn+i;7~$I3qo585(~1a(UFx9)pE*5rpqmB+WgD+$2ud_zV1<8$McVNX zWt2K~9)GFM+r-Z4;qC>SbSVcXOG7z*lQa>g<2z>Pf{u$5K>eBl z?C-rCs3Tf0Lwnz>yD|obSh3adeX0kI9zw`7#^E=3l8XptnttpDu0&6DTJ$n`mG;GN z=?@w`vj6g4#wOzZfQGcSljVfEWZufw%n*1?%=mqwRxj9wJxh+hZkw=*w-aQcI9{$j z#2j9ui2Y-%Kl(@iUbmMezpG!QO-r$f>ORD-kzs^xT+#a!VVhZR{lKWe>jmQXB15Il zuh=|UE##27wB0-I=PrAA_-SyPiw_iK9yAfI)yMSgC4F)GofXZU8BXyQQSF)btJ}K1 zOeV^u^UF6G&*H#0$bMJqk+yf&&3%RNnxQaXjs_ouv{KSArjNf1R!>^_qQv2c+dcy7 zd9T2EV~D6e6I#xxpQq;;PTZ_}s?MG>sVKhsWDhO+S6%xk3iHz?z6K)L-Ma8G?K)?s z-3Nn%#Oj6ixPIDP=wnr@YGqkVfVjJ@dk}+?D2IdC5W?!#VWHlJhRueZX;F4s}xd;QjqEKgO~Ws}rrFUeoYGDz=ix`>C%=e1uU@SUsG9G)*lQ=R0v zr;KLM(y(>+to3vKx$wuCh2<`k?AL)KCzb7+VSR8nG(TP$Ha+GD`fu;bg$z+s(*0JB z!5ay}_Z}wP%J*r{`R#ixQX{B)w%^Iz94_5e3^B&=^g^}#F=UkBU0$N2G>`l<$a>`% zQ(b*p9zZL9z~wC%cy_-fJACPr*pNuQ%y{o|HQQopwRnMnQX+OK^X zc5I4uIy;N#-2&qruTkIn0X_(g`wVKJPYVJ z%PD9A=X1jRi`QFSMALho$<@K|==YVbwJx=EVNT-xikp{Hz26N9B2eJ{$0N~y>Pgx| zsX&9z?rrNoTeJrDzMDO~%;)RKJP&(_AlASA;{Uvja>z&_LQCPV^&rRLq%z*+v^xfH zS$>sSLKFRWGvu7~I^MGt0T>7SyOa3~)O}+k`O`-7=&*eXxrkqiP^^2{9LT-4=)1@7 zUP-W0+%fLaXc`W>0S#t~`K`5;^4;EQ{{gbIQ;=ToXc`b?A4d9|KVgjPPsx3^2PRjY zzpk=cYqaV)n#x?E?3SJVHxR21`vQHO%~jp6I8@*zl*bR>DfP`p!86xMMc;>mcdP;Y z&w>)dAn_-&`#thV;~aISKw9dOWG^F|e%NJCzGw}$fA)TfpgI!iLmwYUtGN^6_5E%B zduVRr7Sd#^s8dW|a@fj!4~scps+??nd*G?)@bX`3S|IsWulx%7W? zIb^RPJAXc=8xvJYjL2soFwjf%dv&iLKHa4&1WeFe8;$KT^&aiz?LW4`^$z?L?xDz>zM1n`F5m?z8q)mA#HV7yFI%Kr__kX1qBy zwZ9L3heF={yVURH34UhDkF{NY;yyJ^m!9vAM%G{n9L|PYZ!PK1 zfVc?7T$68$zmy*&5R#=mORb-sPV)u5sVQnr61^45S(Ni7FLV-Q%1^7Ava2d{R$cw~ zo`Gr^$NX(Ca1qLs^0OrWz>`WJlbMOaY%q;D#(Fd`&NR8*PE6=ovla*b{oKzdtfm$U zKfKMmC{MZUgsNJe*UPfEqjF7A0~`ljOj-+{@WzSc0k`aJkx7s7k7$6pCp!GZ<1;T1 zCLb#;nobo{sJ!hS80g#?88YJGgrdb-wi`tWVJB9oGNk2TL*^-u%7Z zzW`}UnXjAx7*K!*d#Xs2^xLI6l)sBCSM`bs7@YtT+@G+~xRwG;>@u*Gv!xk%3=Q!| z_lnaGzMaiSX;V2LHU$ZqY9zz*I*WDia>v`c6uLdZx&XpsU#1VQr&iiyxW{Y$Y-|>JgAH zw;=jOb_vy0sWZ}pRJ_^O7@9WwPayZ%>;48(GM2NnUQdoHVlo3a`(5Jf2d=j`p6wJIl#;b_z+rlg_eW8zh zb~eg^*5HI=7GL5!&816)Y1~1a%p7ey;rDTkld;m)H&J{Si#+~m)RiKJUk{b317y`yo|sCQ4osS7!E+nBLAQ!jAtE z_3@UyS>xnz{UutR>I^x^>vUI7FaMJ-&^lUA?)BPN4e0>cgdU%}OJODuG8L9M9maiM zBnn0~IP^Zjz)Ty+$sb#Gd{QWVHJc6$j+%RTy5d}58`W;Nn-62ndGKn28N;(t(9$G; zm(%8zlXnmpT{`ygGVSJO+%ycTG69rJs$AZ9D4ELK?xx~{1nu1Bf zNfnu=U$Y0K0SBru#R}yfG7UP>>R0r>!XTX42Srh5g8Ks>f<75HQ1R-ZIegIs^p@}Y zEDB>A<5(CF#4b@DZD|%}n0U}1Pad!wDo@P*VsZnp&1_s$>YvLS#HJEn494)3QRlxB z_X{cQr}6sr$MG;LC_u3)?Cd?}c8xUogXLY^XF_Il2T(~@R~{@KWmHyf0>Ng^YE%%V z_C`jf_nLe=?mLF5tXGD~ctXA)zwq7g(6hds_2{96{OfqF!;y-%_yH#Cza4QUh>mf{ z#Az#IWz6FKcB(OiJ`!Jg zKOY#T9Bw%H+M9DY4ncmpR{kv97D zKwFF#!98oUzvEF>pIU``_4jbH_U;&cFFcY;>b^o!>+U|w1%fwDQyoAkf-xRA)(s$x zxSW5^atQGIu6C=u(dy)^W`gwyA0?y0>i1JPb20dneM^peA(ubux=zI9^BtJ)I(2df zI9yfPqX7D1NcEJN=4rnmeq2eIR1&?m509KJA6@)yslK%S^~VL;_V?KVPehb^I6ntw zA0+6cn-Ljv?A;!c$w<0ebv9w0f}oY#&P`+;9z>(DytXviP1zpZV^sA&*R^=X_sDL=)mKjGWWueGpT$(cBn0P{Z$Y zsLzywHMH9AV!$$dK7P#fFDu&wbwEmdMDwG}lLwolw3=G?{TAq(BeF%1FE$g(NapC` zNJ(~=ItoOu%bo%Z!PLhS_aNV8Sxa3UEhQyNcqjD-j}br0*uTSL^JGVD>!eC{W|l{% zI;GO>#mo2aezLVzGG3_JKH!IVFj51gzF$XPCy{xq#<{J(>?%KCw0DG{QK8*^Qh4Qv zC*2)>Am;ITBS3_K5$Ut6h<-|9ZSI}319Ch9E$(Y6b|lVv`?*ap?NFl0H)r-cbuq0w zYp6aRmKOf_iG5}Aip~By1DP3YxO=%%Uk31b8Tu!J95D?7uAo>aP z(%aPt4j}5sp=;41jT8f(T&P(Oo(ke*^IZ_RJ1>yX@{*^p-|VR$*E8!B8d+Zq$aSF2 z7pex)X&Tj27#*%weM%vic%XL=0mF$N`Og7O8~SsIQF975`T-6RYm(s{Mm4B*2<_B~ zZxx3RFl@Qe?t|fc3S5&yT+J%qkC8(p{zA@8Os4FRoSxqZt-owFbtP-R4KRC-AqKUG zZo}p&QfiG6BdVvm;$Xlb6o>m_F8f{k*^?|U9V8RQV#iv1(%t4Ss$!~5YY`~0GLsg~ zLrws_<>#RbSDqd`4^8JgUZ{;gIc1+;3#Q<-Q{m-QfVXO2x)*{V2>S214Hb>DEtCK_|50{#Ef3^+^w<6fbCh z%JXz3-#U`0qRqx9P2T)`9&@U6c9W(2@^zLW#Q*0XKV4LdbNWGVbGtu;Na3 z6XHkzG&;|D^j;(IwgZjo)uj` zlDnBXcVo5!Ur@DgVeLA&mz0K+46Y_EFOOQywKiZ1VpSfg$p-)BO0fT>-%>nmtE%C`2UOA6Ir3p~bZK48J9muU0l zEiEFvO2#5OuE9^ZD|+ydrXOXBx$^KNaW#zau$(3auZwc?UKQQ5s`hUT&jMixmU(XW^Xda;&J{TxJW8%Q z+dT8{kUz8K9AWJ3vr&^Jt6IN8!48+F%C* zX~Au<8SYfs(5ArZUcQ_G0}Lkb6c$~Td6g+1VG)x{SL#6cKj_0wjdaBM0vj@xpUgPH zsrqYb*7N(z=wHLU{^xVhoudgno(u)0!}QU*MM0~bYs+~*8B7CIBb!CnT$xQenGj~e zfOyYjev(z1=D0{TLk!3`{-4n7-)Hn<3;jOu586!<<@&}DF*AHwWbUG4`kQ~r)T*vI z6Qx=*Cu&2A-aWw_NHyVnE~oXqWR}B|!i5{&Eodb-Je>U8L)^`HH@_bqg9-9u^R)*vE@Ie;#U`7Q zmRH{2M|4w~uz=5>ghNO2yB=oo;H42Xvk-U|Ll9148Pyn2T)%0d&sR>f-$meS`#{B# zjPUVJ=bC*zZ6Auh%WvAGh*xi0OMdC=jY3rK3Ke-fYhxBjv^vjUyt)Iid0#0e{G9BU z9R$I2uPVYrdC=uV^7otkPW;@DY|+R4=!-%oLqLD8LUv889kKa>89 zHXwS>@=o+Ni6M-nu7+pEKfiGKlk<4F9hZN~6hy^*M zFK1sGT69F^al0u zK>ccCB=y5Vy-o=vPITy|)|!ItbOa_1b|pk!+8LYeGw5x6a$jTVPrZMk(B1iz>3g=# zm2kqihq__q0+_y7av8!=neC&PaG4&<*Q0&jw$oF*6knxzi?J=FxN`vC;PjxG{R{Jc z`f76>zTr7N9EWLA&aw;yt9f5hwOjAS-GQd}3*j10!X~drxERB%B@0w;Wv#b$WvIt! z1fKB)8`?gFkcdTHoZAH*$aFjVM7=K`2AuH=PC zCVB=1Cp-Okjg4@$R~+30+@zXgCChGGA%4WeqpY}52-dIbeO%^vke+9RY?5oe)w-O{!Jh8ciu4-o| zK=`j@i`Cr2X>c7xCgY}A;z_gd)nR+wMz7!f<2)LPI=))UL9#hg`QvTuL$?-FXGl)z zAgI#eJ^u!BJ)TzOphm24+k5kTThFhv`18jPpT8s{c1kTuS-?u4DB71k=09Kjzvi6# zy!pS|m**`v*l#K}?-$~I;*J7@Fu{|va5k>;`iy8m!2*ka>EN`RJzBT#2e`7{0Iah< z6QkTH@oXM&=iYlCWG$D3b@H`|ppD|#>)7d$=KM!(gL zn6cggz$PBv%x)Zo^uK&;>~`e34dp-)aNqi2GjcZT*ZA=Uf;!NL0&vzhz=tC8u-xaQ zOyvzikbT}ecDFC8$JP70TGUM3yiO55RDs^T;=b%PxJ=pyO&d?n=b;G;Sd~Kfm7+M` zPkbg4yRr5dsyzuhza;P2oickw^X%EE2bi}E&(dflD+43D`R^^M6o9%zXE2K zv{9c)66a=CjtcpDo{~cfAk;G#=)*)Cmv~`R;_xiD%jl2CF9?=@;*|8 ze6a9A@dg}lH;8B9eSJaQ>R>Q8m}HmOm$|kx5#u#uh*0=_KnTA3#bzr{@{*NHYan`AiHj9We0vk z^y#u+o%6;Oh1_z|awUJAMY|s}G?4%}$$ifvQ@$kR`TGQ0YUm@!`N+tLucu;=;p1x` z#b!%@<#&Z}9S>9UAxp5TUkf`@yr(s*-yr>gW5k2pSo^$fXy`E@lf(FLR|37W%e}W> z3BpF)+HKhwB;{gh`n>-cF27B`e_47OWO)FO%K6>fw@PS%C`{}Jf~l0g&8V>sl)Z{I z+>9Xod>APRDmaqgu%O82-&6k&pvwv!)GyM%Eu}wUP%DSK-W(3`i#e> zEx;x*iz~1dCy;V|6?%jG^_6tz3R7Mp13MC`#P(1Tx~)~jOPF#`7|6r?sD1R8SPhr^ z2jNq0oAo?I=Om9t+^Zq2DQ{1eoyp+U6Bk^61kLzB?Tt$L;vL`%y|C)#>Y! zr}r{q!WL1_R#&0YPeMzDCk6e3*bQ?&p_g=_=!g)I&01_0wuK?#dG(k0I7y1ocV7-b zAe_?oHAK(X!*|RFN(I*Oo|$-f4$mj;1UmhhO|QWNPLrA~ ze{Y^hZ6IJs>6w!SamwD$4-38NH$WbC{!Yem)5Y(-QPlozm-g$7$y_8W;r2Wq z9!+wIo}2LdeGazpTihw<-lQ(k_@{9o)!VG##xBFVVXx3RmxoY!*peb^PA#N zOJjWGqCJc&7JQ3x4peLFk-CWbA7<{=V9r znRT+CoBx5pguYU>-V5{Xe1xlvO~abeIV*1|*7BC-;5xxeT&eB2P0 z?%BtgL1Wr%-c>YUuzKmO2F6dscB>6we}fMJmZsb>@dsXbU+H%SVC*NW2OL?tC@+sq zP+q?EEByK1pYTZRoy@4aySHK@RzbA*Vxy~%dNM~X>;VStKR#Z%y^kz9Tmdq98W&-Y z2Qh6}l)Xz-IGk43(R4q(+hVlG%J-$} zMw5RKI67X}m=4vT4jDdPggT%py=ZfwjTL^vZb{_oF}z@ky4GX^(_54yRO4D>H0b#- zT|Z_L*4m1s_~~FB_B3)=u;QA_Xsi}63V$;FAmAHhQHqKuee-rZ8IK7XL0RIs6=RW=oFyty%q}L^9 z6|c5PN8X#vIJUq{b|_fDf_vTgJ<`Q&F%$DH$bldBCgx@92;QZv@6z!?GrzX8&$deD z5{)M++g52%rBe*&oH`|mKQ5fs-?1a?!Adb;8z} zwF|r!XPgG_S{SAfu3<^%uGU)-i3&3yCVJGkJ)k^iYRzvw^}D+Frw&yG+J!Toe}1Q*LncQN0iWs z4{RrE`N>V1q3+K@jPDoY;k=jTI8jr2dj)5l*SzUj96weZqZoOf&G*X;4;n2^VKH`! z#c^2=7do-;=V-*QF5W?FfXl;=h;~s%yIj*N;QChbVv&gzPP2LCQxo5m@M}rUm@{nE zDo}pFWJ^_fa^L9R2F-W>W`ln#0#MU6SI?CN&j|yxqR%%>j$%{vw>P;*{=Bak&_33eOrU1bh&OLF#ri)6_>9sdnK2ouX>@3ayNV=|VMU^1> zOGJT35l|7ylHN!nK|qxF^|Lv%*4(*gj*5it>guW;uo;>?o9+AIdHejJ6~61qD}BkN zN_k`-_A6KumSBdXbJ@fqTBvhyQg?YKNd9_zgw%87ej-%bQr!3YaD#$%B85Ga#x;X8 zI503?x@V|hkGI)qHSE4)1e3F+dX)bqcGh{gX6yHqvz0F@T+I=giHI~6m^;FML)))l zp9z2K&>r3I#Fdw>BCHkYqN4_KzMtUAdmzO}Dkr@A=7qJO#|xMN%T*A$`*?VipeCnglnPb))Si&yeV)#L2#%S1|$ zk5OL-jd}l?QLydgaXx77!wvRgA!j@scDX}tI1eBPn;NN9!>N0+CKdpv1R70=dFtzc zTtl#%fUPw-VU;+ae}2cu(Xw@0(x~ISmHs8}E|na>zK*%(Tr{lT`drS?-t_Z#`s=4T z{;eoOSp=vi)(raCJc@%$z9e{h4rKPenpZ+0t_jLeP7Af0vbZO3_kQK;o;9BLT8kHW)# zs@r{s5e#W2Kn2#ysF)&w-`ID@(B!~N_#uQ8mcFk{&+2GIc75ZGv;K+Giqq6d2(2x+ zYrr@$$pPILg>^%YTYo_AAg+(zE{dpk1v_95$LPD5wsJGWi(%RnWt?g z(y&>_W<|-$!!!)Ly;1O`i~zwTt9oLB8^%O1&9R zFtbShk|{J5?q`c~zwhJ5Zx^srVBCiT{6=IEA`A}`g$%5#L^@x%Ej|ekJf{63Y;0Hl zcr3^#!1>;z3^_}0diFeN(-mf-*4y-Glc#ui1We~(nn%m!)NSz2)^8E9n=QeNG+l2Y zB3XHGi}k*3E+4kX8-)8akm7pMT|ROdCfOMXtl?$eGE~Ihz)LLa*{Z*P{blt5tusN} zA``u%^%Y7~Qpxgmi)b!`(&$-z>|vwP2g-|}LxEE0dFX{#qX)&l%KeBSA?7JLTv*AI zkLw&@<;8}SbqsAttMR@Jug0ugL?kj>48p2wS2)$HiCP#wel=ZV8`XVar1?JM z^hUM1>}!ZQr%(~+O)Vv2Ws&dFo+b}@|q)(7b>yZc-Q}Kc}dT`WT zf(HMaxN6Sn0JN~F!4-4Aa?_dMMYF!Tbm}Z4h7UlO@ZNyC8|L3YzRsoh=#WhTYq_FI z4JUyc5xJ)mI`8Gtlv#`%1+i4Dzcxc-_9*1_w?8rH2aFf~J?CcI9y5)rE-Lgc-i&oB z`HKLh*!{6n$MQH{@?YsgA&eN3P@8L1FJ?ks-aJ+?G1A%#gq!%E%@K}jpiAk%mvIHZ zCj*V%hJw!pj=h?TD-lo1fqVYG!W(2xn?5S8uC)+7gl zS)nBYVUw1N@93)&BAhL0LWg!Qs7aXuFhRjBVbL}5xeN760&2*E8cD3s&Yu{|t7DAe zkEz?KCAJsh=iI=fc5i0u*At#G55==j8Ht-s=MS2P^ay$<`|VOyk^rhC%c-&VO1-o! zd>TmQf{WW5s6=?rU6@Jy@||?U1xcF{!D+5Ud>iKt;_7dBI-@XZ{AL=cWumG#l*H}U zzoTM$vlz1*rG4?FJEX1e#p3*^$x%*UA64%_f`ljqhK2AIiadN8HTA*P@8bCuN~V49 z>cQ_(Fa}q>{R!a3oz;%0z-VAeX?Y#((}`q+YvMaU9vyM``bC~Xzyc9Edm4l^v>Lk_ zownA@nV`_ghbgR|aQ?1InG1}^L+EI776ZJd0xW50YBG+>Or}TB41LHEAD0@?7ynnf+$|@Cc85FGuz z+QK|nfpdWu+gpeL9ogs49UD0L^7@#Y#T{$Gm+p!Xm-k)lOzcI5W@`13^4!@NsQ%Z@ z93k(!vG&bvd9zF^Vp4Nj<92%=RJP6%`_K*VO9#!sKK1!nuHJv{2QLo1y25hKIXrue zCoHP!^YGapuF{j&!Ev50XYO^3{oo%?fYf>U`jGNx4z_c4Ihx9)dODbvqPV=4`bJtI z;~!a{1`dMP<~bLr^K*prgzPa8`w!>pB`mrdCQ!p1%lgA3I4L9SAli;E?vhr)kVt%% zn;bo*HBCkEC7u$q$gj-bY`AB2+ys}{)6b${l8#4)La+5HAz7kw1RCi3Lloc-qzMFk zPa!M}*%R^&oF4sPN_q|T#}j%wsw?f2NIe$9iyLm&<0kT##A}j%spxwn@dven-%CbkG8i*R_6qj4nqzDf=mh9>R!k(7vygjhFPkw=Ce9h zge(S8=P%z>bI7{;(@CGHzH!LhP-jKGKDIt-A;PAd- z9iCEVU40k{Yy9!dcg=5+KXxZUx^|DM_VVd0DR4)dPnyjTw3`^v;hHqhy#BN$WR>pJuB@&x+;eaNq+bQ~bKC^$A~?tk#L<6NVHU${ z(fvRkGjx(!(2;!Wj*TQOYO{FdVQ5kNkIlb@=RWC-{K)YicwK*UDG4+67*^WV)NeE} zY2uC^;6#G1E8i15j~~9Y`i%v1-=o*3oPtg|+u!yDKzIAk>Ahtxkmj}(b$a={zybX6 zcxBa3vD1AfAFn^>VMQf8agbgsKC~L=7pj)8yJyL#jLgPAH+iCuaX|dh8vB`eq{x&_ zJX8C39@(@|?}x0z&QC$BqoSXzv=+xf)^iPOwBlu{zJyc__o)WnG}imfKvX#e&)7`w z-=74$`4`3CFod~$lzjoXX&Bvsd{R1V7k&Ryl>1iwW(az3wSs~A)QQ0Jz5-|~I;^=p z1=xLaKYSIOEA9ln+XFEYREHsmlJdT5^&la;KS~TkDh?=1$~W-%uQPP>PVd zdlSy@7Cy5xWG(NK__;ykt%Qjmj(3FrI`G^6v>s>{71NrHI`%OM$Nak|5RvtL>@kZ4 zpzwmAtzc9uLD6h}jIP`P!Z8|IQxM#;&(2{tXHtY)cRZ%eUcNYG=JFft|G=|TXp(6AB)ewxH=`GL+M4H*0h``Ye-^WIMje+=4#&IA;x%YCt0 z8T@rFjxmJj_E3Z4p5D99h?sQQ_q@}V zaSxul{@AC;!+;igM#BL4O}@;-$1-@RUfAXZcS?yO+ZIy&OEX6a@rynS_@#Gse_UMp zM|V9xzqjB1M&@k70qO&XkK5wp%PO?bZt?)kIKofF=Ajd1yiers&xvQ*;-6}~zbm#wCdw6*BG;pg;%&Zq${bdy!LS2l3ULX? z*oIB%#pKwJ>h*CTKJ^j35APc`S=jAj416d47`T)&>V1#`Dk9F*Z4$G5Vg8L zoQ=yb8sG0})*eK$BHNu6M=yTF%l9Uqx0)Ed0E$$RPN7g`oid)yiB6Gw*IfVNF;JomNj z{%(?8P<;Zg>4e*aUmdQ~b@+YGFf9N@3R6|FDcGU?UK{ltB)7*~gu^)6L=lWPe&k`T zUbz);w;U@#!|M{)#Pxs@SLy`*LaFz2LKg%ZImIUD)Ea~CWprOt3FGPd?x;~FX%a+m>xjFeh}C+43{BqW z&u>ujv4cNBy-O%s; z(-iJU5%_~1^*bCp9Th=5td#bRIRHeiqE39PbmGsCgli(%YSdB-FA*eIVKwt)=jUFn zD9bs+MSa|=%W1b#9Dcld(M*+@0t||^y-X1ru5LW@$@JnbXju~D10=hO5rPBTc4NCI z-hqwkW=()tzWlMbrBkKc8JQ=Ca^# zCQPGQ=-^D2_Doj9a7B7u@76G%g$k{SUyymDa+pVrghbb~9zDi)mz{>L9AFo1?>9c( zb081ce*1k-=Lt+iSpMoDt$?C<&qeX{a9hVTuy*P#Or+)8xmuROK zx~9#+=7sLHgc$lAvBlp<}nRaF>{t!`7AahT!N-Ra5PCH?U_e zq?7<;>v3L{^>ok2A%ihZCAXH|t zd-N(7#=nEDOWwnf!rCwXE&;FC-jBWR|GLr3c&g&zU6%KoSZlwYw&n5eh5MK_ObSm- zQG_&8>yO1;2M`VTf~{g&yzY}M>LHi*zz;+$P*3R&=V22RdgJ+iy!@s7+r}>DGNajp zH?^m@#M7ec!A*TqkPVq5vG*sEUtH3;mXV(f2Ne&$W>y~#Xa0ehA^y|-Sd#BfTR_VP zb)Y@F5Ms(_nzk=|rp7E(ynK)NsK>EQfbDqP`Wo0TkGeW9gr{mM86U=F&q8rK+~f>K zt_NlDrhI72ne0L4ak(KqqK)8vH^B38tTHHnD+;fjzkUo(gPzC7>s^)K+a zI9=>Crl;iwDFoFMr-2_n`Tyrx+yVx&Nao;T&4mK7d#+XcwrK zlc?S=#5edJk0=0&5ITn%c$vFO70)(cHV~6ORMVuiqfl)bT9tvVIXx;6FL1OI#W1bX zlOXYnQ@+1Ze0-ph3WYJ)Q*mCJ-#mK)XcU6Haa8w`Oc{`~(VXy5tc0W;k#NkU16iGm za=L)>Y$O9T^)^^p&Hb8o7jMp&N0OAopWKS~x+RZORhLzIy|UZsx_&&t&54kE8S|K# z@x}F^BK*zX+#goHYUB^J2GQjKFUDh`^z=Ccig><3Ycc-5=4apjh7=@+#$o6*hJgNy zeqisJ^5-}8xSKxE=@5gxV-wO#)L~y0aQDJD)kR*LVp2B>wz-PxruWu<*UQyH50 z<ghy_Zl^AcfS&YzP%iR{&|}v!`pX1f9QO!TP02zzl_ktgvesfcp+UU zql08g={)WZ1=kjJf$^ZBSPKHFCEx8%!3LIe*-4c?Uy^=BrSwhWJf8f--IFZ**=Lph z88wJR=bAObuKh}o8-h1XA(6=WzRxx?Kyq4SO z+4~il`v!Rw4s$yk@l)`uA&Jt-$vd+UH9-5LUpbFE2@KM6B7UBl;%A6@v$ANVIX7)h z&(-CZm(#~SB&{>`%8>QeNWGNd!QPM3u5ql8o!SrXf&yMk=Moz>ALqUYuH+7Kz70&U z_o;7a6${|(e*8ORY4>@JmSmYcYub*&_$W$m$DmgiohH1Lndf<%zVh!uHSYdpc@U~! zI&m6994zR;P_ndItRafGXW%?;+a%$Ri~DLJSachlJ+u~|A=@lZg<~JN*z2~*GvDVE zdgzV~)4H<GO?1Qj?ADu^c2ukbq)T`yYId zlQ&h8(jZ!zhbsUPqTO1_F7!#gKkCa*MBBDZAL9(?2KM;GS_LaAemO@+uTgqs-jwt* z9Tk`i_AAW_V8qn-$HfYQe9tZ~A@`Qjfq}na<|%e?Fm881Sdlb{#S{vUShrmM+t+(! z(9!!PMeJ7Yips)HlVSFUA!f?;RlNPzZ9Avo3A*GXK)(wS5;Lf}BnnhQo*E@xj-nbO8 zfjVGPSPY6EWVq#{9-@~K|>#(g~X7={9q_G+Q%~cQ4@I>ZwM`u(e-G+

      wUQ`-`0&0=F5$n38~rNvqYTKd^P2--1hCZ)j5m|V$$85Y?`dxUe z?LHYB;Tt^^DwQwKb4u}P0y)`hCp51I44`1(n?lOGtwk1sP)6yV?enYuzCAC}qM@8W zY+z)07=P<~QQ1YdON}Ng@#r}B2CR_(@PbbIq7G6@ypG4qhPIWVbP3645RciEv>#~t z!9(Qz&Cx3x6eLedC?9C&`JOHl?ubnQv<2iC+j{~juBncREt>O~{#eMpRZ;ExX>Rpm?o;&iN|1ZCy;>mAhBGZDzmlxbAhAvRXc0)Ob>^$?4~;1&tjNKbRW!RS146*+rH4##!uI`jrM6% zMuK6878V52$Bh8{EF)l#NA}fdF&R>JQ9F<@n*L@tZ2MVhPe<>W>8)5Q#Lh^W)~|RS z(1!TNa+wMuH#D28Asv5w|NQLd|At;^qHLtt-2w1ohv3aoC@yY#9&DJ7;zB#KIG?jq zTZR+aF6k~XCDIh@eKQRO9QK_N^X5uC{lKi3!-|`Y81#^$GaxzS3*TdSho0R8f8#G- zqMNIHu+il!+h0cT7Hn7w_2%Q0yI!fiJH3A5=-G2$%OHQ!sxtg9;$O`guR~$ac>0j3 z#A`}89*Oex@Fvu((MH3EPCYjqNyk`j`;Ikw4nH{lQmt1@D2a%VS7#iS!#6y=p9K6z zji+|YS~97Ao2NN&_0`$rn0wjk^mIe~E%9Gyd-%>i7N$W%q~Ax}lUY*{lT-=J<)o6F z^lTuf;kyol@uAF*OLpe#E(1QZT9wa=KO-lh>>cXK@$ zqN1vj^~u+$-mImnlCWRSM&%)MFpD>k#qo2pO(=JCcj0oXWvyy?i&XNeeFPs(ewX6* z)&vFWu7tD-5D(7nItzOthWdy5p-xKC;pT1*kji^kLb%A&@o}V~WRmbG zWNKKV#6x>qSSsaROh0Cf_GNs|>%XgCgY2-&*Tb$d5*+R~y4I zzR<7nW2yk9j0jPnrxa}d_%we`_iAEaV-24yi?u$uAcRyEd&Z5rzQeXo(CPP{)O>}x zRgH5pymGoCV^O;4Kz<|tv1sY@1Dk~B<fb>YWm z$30>H%$IxMYixL6$hCYl?R*_F=0f|o2iOoYo%tPr&|mT8O9${j-BecFO8#9ZdaQKV zif&pI&&L{dV8wyrj%p{J$xO5YlOpw9s36ek*XEw?<%nOM9ZD4fgB73%M&%TY_gIc6 zgCo(R+W(KO9t{xQ5&h z?#X|^+9OT)Jq*(9g?QG!COmehK8P}gaj`iCo{p%ZY;!!y?($reRbJ88=!|V2!s$^m;Arj(<+P7an1CG@PcEn`MtKZ2W162G-Q$z=FFH!^EA;D*A0Yw~ z^5Z7&XWfgEaD$g4^VKg-_|;fd17|iX-T4NyFO!lDe)s_>tI9(nAe_xP4G;eo6cK zGhpZ9-4Gzk$$NX_Yi!1XTNSgob&Z9+CIMe4Gvf}E#VrTrlqU!D^kk~MNZ?{i53!B4 z&;_SMvrnkfs1M^T@V}DV1AMOKc~tBJC%M&aK7E1Nks%)9#sQUG1Nozuzii)eRI+}q znDvgLr!|y~qH+1b^oO242jj%`8uTpT|15a@{$TLuv~YdfECl;}-ql%KPtD_a8I=2= zM9%dWw?|7?4p2}vk3N;Bfudc8yt6c$<+R)DsM^K(lQnRiTcS zF;F0H$AE47Kc#C525+{bjgDwS9knGnpr3(ij9`TFt`7#zM%C@_ohjz4B#;!~C)%TQ zCqP+bwUcz7dIe7eHzlH-zk>gn#6NuC%yr)8PhvtdX!Su!>5T^lWUTSdu2r^1&@mNu zBMPn|s$dUuBls?6&PZ&Z0yz~_w}&VQVjHo)R4-(K1laJ9qY3nY+X^cI+l{B)wGL6s zX?fgI|3lcSZK9Ig8>cC;_62s%9{4-HbTEM=_UZ8Mp4w^ON|Nbzyv=)1RA0nF5cj;m zy{YQE@_#CrpIGMjD3DWbF5U9?)>27>HXTC z5_K-rb`_AWPWweGWK-N->`J+lg8d9Cy7^rSmaz@pE_$qH5DjAky}`pX+WDf&SC9K$ ze^DuYne$WPEjBrFdUVfq!*(PaA{EkwWszlzaNiACZ~EPskauA+`GwnZ_064w_T+@9 zy8re-9Sxtu4~sDSIwn;<85(%|xgTcDq`y~=JD_e*B>Q)!0s zE8Q3}z;CMIO@k?c;!l))@`UptRYJoDEeNYvljRPg4m`{HGe*MCH21M7|A_v)pC^o8 zr6t?-6Q2F%Ld$Fwu50Fb-cULMpHFjpzd%0WospDY!M34kkNcFYa1LT2wA5(;ZW1`2 zfc5GuiavO)V`S?sciZEUK|RWe6|CD&l4?8V!7tZ-d9iHxirCXvU3zz#9ob;Iq}rR4 zVr$JY^?cm;OY$b%^BZlv3I?%LF6`fz+;Z)pZNoHnAmq4b;-L^QM`_&ll%K&(3?|Q1 z9u(gB^?ked%X4Jd3iZhQ7;8cTIC0Czq`~m*uw!exH|mukMx0XXzo7e|5M1wBZs6O= z_ZdqgTz>E(zh}+|P*KjN7ep!+3$D4>Q_{wL^+mcB&F$?2P;{Cjh zsG>qBg?vIsdBH94&%etMR;4bFAVxfBalue4w}zH8%r0@A%|+13+MUZO|3S0!G)kct zClUYQj=wXzc>9SMp$$#v6#;b`&iFTg@7=eRZhJOWN>6pg84EHUJ{IgWgewPjm=Ww7 zw`sju{lU=PrlDRSS3T3hT-ax;#_*{aC#DZh#pLX*SK$`OAoDiFhz!^_Jp8I34uFa} zxd7+v>a`gV#~+}d+~B~9-EY=5bY}4jUH}>B*gf=z;J62x@|m)|ZT__EcS#tCIR1G0 z62sOFZqlYgBgqxB?(mM4@4X8hoB>r zPs|zD1G6O~Y~|wvpK^1bnV&PyK~I<}XH(guP&_#Yih@wg-BH6ns}rfp;E-D;x9@A> zy1RF@IY5;8c3MbVIaDiW7+nWfFo-2i%VQn4eHcy-=b!s(elB$q;jiV>453H!U-2vVHDK9T}4DaX)wY$`h5?TeF=4UlG#@0@-f!asBJkz5^ z7W6yy`#YN7GbDEW#IT&8etvi7G9?;4=dr-DaUWlBNH!v?{-`ILJ6KLQG%}OkY{)}T z4jT3IQFKXfgE0j}`)Ap6fBSmCQ`z!IU-q}Mb+E8q(22LaObHzgL}1A-o&uC9*eR_?vv=OZe!CxS5}Lz zQ~Zp7#PK(6-*G14KgXMkJzj)%Ge62K{!k0A>i1D_w9Bt=c;-~F*Fgi6w~+s&C1oHz z3Q87q^@k$|H1q&~s6`{+iSGc9%sx++r?uiD(Y{D$5G~$yr;!z|6=s2O=>d=P8&sc8 zXXfha?sswb_fmjM^rnu8lk?VHugzzE=hi-xRobj*xwyoDmJ?h4a~OUHD1qP_2*qLw z^W$9ZRY(<7lrD|XQ-093yui<%LMCbs``4RlRksf z=h%)v=9j$-o;_*SzK(p#lfaAFLWs=6 z$G%%c*p9}OMkUsBc%QY-1k1tF6c#3?Tr6>}P3R0G&p1;fwC){jlCWqzT|IzWVe>{- zz^X6s3km?I{wyWbSL;4b99=>IcP&+3oi_c|pIUybZ2g9P^&mr2xRnYTdj9BwikQOo zK}k2~eAtJLBROBXv!?isLKmyc?$0R^W{%vEh|M=mFY)a|b1sB2UIYnajV6QX13m|> z=Kks%B&bgLf3FR6jQX41yJ+yK->2~FvykLqU(~JSJF&X7!a%H$m5bB_)0@699`*YU z68)Qp|C)>6^ON*RtJ|fEr`u&bUNs800eY>5b8}!W5iV=Ttf4&Y21$$LXd(_cdnL-1;7+<3nw@S?LlX6ahOP2Q24?CDmSdxnRw!uIwz0eSCn2|p2ALu+G zA6@Fh-cX#fAY94rLG*q+wBXJVm}%lt0yk?2#ll9-6E(< zft1-zs^|=8Rh@`-Yj8Ym^|j)$no!ekmo3A zJWC}l0Hfm6p1tv#w_32K15B50D?GoFsoR5W(UHe3F^LB5$x2Ee_gx+Om*R!GVKG*v z6QlrFhPc&9&vz61V^XqFR^tO+Qw9I|3~&FK8K#>u6NP$(C~?vRFi5mvcQG3u17OKQ z2g*a#Yj`ucpd}_hH8{4&^>0boexfC4uaD^&9(qEp`Y@Pt>+zC6EJUT(fwm)wDu=$I zTA-h;BS#6xCVUPP^^C*hqR`*X2W!!h zm0Z5F$RtEi;OZD+_M2fIE&tS9=%}gGcAsLR=vF?1nYhQTE?KM)Dx$sOcPL7T?qlFy zkXpi$h<{lZWV9cj6+i=6k1&h!|7zrEd7E-DKU|gf^u~qt>OFc+Li^yyIjg#R2sUpv z+zO1aA*9sKkTf%aDF<9hi--E5iM3SV%SxcFuDcdltCt| z1hPj?rTRP6tMI!9C1GYLt33}w(d{MpT;`v9v>!-%vrpqIZl26(Pce*FV@1#z8s9@y z?#OYm@SzRB=TpNQM}(+3UwfK$huXxPWhy#b z8+u$7KP6tK_~}|{8?1?NYQoz7j{UN{CGQ5q7XU~H85)S@NXyB5*;uNo9__n3)HPR( z0ach*U(tv1cP?)IoJ9Uv?FBIjWA=b1?ML#^W9Yk;QQGfMxE7D>@T2?0);4?U()$+F@+)Qe-h?9B1e*{tqKWyo*i$6@Uo zS#t8O>FXSr!l9uY7(Y!FK$zPX&|60j59L^bp7KgB*5DCzWkM%5`T378%`x-q+20oV zL~y=vyO0bYffryRFYJCJD@TQ`eD4}K$W(d&<FC?*c=fp9Go(roZoKERIV3<&KeprqV1HV_^e*z~Z$ytA7 z_lov0GXj{pXXw2X58|Dml1zCY%{e%K%@n;}qZjr9fm0<+@*f~MMiDyMJ57gRGI+_FVt z3#}XXd_QMWLbDHk&t8=E95Xg0kXV`1W$%wIT=10TJw0eth={_o7zhZUzaB)NDT48R z4eF=x-r)15uRRATzXgbel`elf4d}-5K>YgjLO|hRJ>1?=#2_Bh^H4sC*Hpq*CDdpojjjjQ>DXX8j8nq#DUyX&d)=5XjPq_JCVa}7BdcpYO_xj@S05p21Jd8 zLbB_j)a|ZEfk|}P6JMwn&#jiaA8CT~l4S@(esA2f@~wf@nxeaUmOBp&(Ba$d%_ZK^ zFSE-Zd)sjlWc!VbwfCXsz~aSaT|c!lM9pwdc4ZNf0f>8*mg(pQF=Z_7lG*B&@{w zIZ(R!s?SewfP}QGtJb?`B!s`WjGIFw1;!Q}G~%fN+~Ia$2Ya{z*F#>{ zzL2)cHH(7C-x@no+fmI_zWS%$MZ+^$MyS%wWEIm z_Q@jQ;V+F;_OIVpIagpDojTOzh8jUSiaN@E=_~1iBZ_r+y}W$?YKfHGSm!1`f1?~{ zmXVsFXWr5R`#Oh?5IPWYKn=_-Bn7cU{G%h?dBGkZI+Eq;)lBdR@VT3{LJ>{5MnB`W z_4+I&NDI@ql--7-C10Tv#~QlCNjW@lML8fibsRT-&)}X>x=n4Kge>6wxYy5t5eC*0vxsS@M$cIno$MyWo>2oASM%k&y*O9*f+X?|{un+(o zdO!2?>}l#b&}(;MzVK(@6jWniU*QvziORY7&2MAAhHVd6+8(;!N7z-~;s~-DAuL^h>&-L8C7$gYKQ%5sSeY6#>V?RIMWZC-8 zP(c%2rUWp2w;N!nUcM?QtOy@>By`YkyfG8DU@p%G@Cr)b-SHP`9e@3$vZZ3RnvJ+@ zhikmo1_X%e1ba1p68j<;8u9^?^Ws-_fR5s0@%Y7iw;nzONoeI6hm1>MVs?**94M5$ z{u2IxN}eZ3>iC>5Z2i1h@O2Yky_~wSyyX#_iMP)MRfdb+udt{Ou2bVVk)f-l$lj^L zlZQ9ST>O)+ZrVE@XXok#L=^E5E$USggSvu65?kb`CXMHpWG=F9iJfT{HY{PYft zVRQRrUp{H??W>cpSWJ$SC)73ZJnLk`1Nj1jsNZslPg%$J<4^@H$&|479i4Vx<-wY| z8$yPRJ?rM*aU*WfKz=<_i8I^N)WUT+xI2osVQtIQ{8R6lQoFA{U$yMNKjf5g$y(u; z*j{`PJ$`s)WKpu9N`uPT5HGPR69N2z^b_%!VF5?@Nsc}#w+&2Q|N#AV*fOs+wr)!+}172QA zb(3$|b%RU*Qm>iviTyptjQyf9eqs-`i+4p4<+6wI9&sia-uOXf^KdB&MXi6^g{abG zAKd^+fs~7P<7bsTQZ#Gd?PEJID+9+f!ndO0>rh4IawD`8*(RQ1mU-B2 zYgkd|`1<4=Upy0{eaIWscO31g-iPYz<`*jLmBDw`w^Kd^;@i3{YkxjeE+cWBW%3#K z?Q8smj6&s)TKNXT(N3Q82)g#8GJ{0k)?~hmAq4T<(Jxi%GR)lNg_)6s7ax1sC8 zPvHTGBR+v}$^v00Ng7>q+#!d1a`Aa%aWXuWD8b$7K3^yer{Io*#wuUI$fAo?DXL%* z_VrJso8`ye%l=|tp)W;3Q62s|aI~gFh!avoN;)jXfHBHAJmlCQJ@L3T`ZJ?%qOpG* zwrNbgkS3T$tAUEx3G5P!Je;-bw^XcR)r9ubI{hz~qTp#uP`*~ZZ#W|d*VOp5{a=Oo6AeP>5=^+>|KTJK!Y?DqJ zrX=C(@I=o7N6#hznC4Qyis0{X?qx3#tbgBoPmYed|I_xxK!+xH2^^F&}F=&z6G zFW(IwPM_BNeDuAKuE+_V*w=-k;CMJ$qwz2r#dUR=7+v;J!%MQch7fBZq6A>ChZ|ut z>_+*Q!vs|n#i|EbBhquF-7%@b7<8?ixJLmD0S8bTGq*7hU2 zVb(`|%)MX}a2{U@1VU!K3Um1VA^+9j##{M)A1oN(;_lrtoo69>wdnbvAYVB6_HRjx z*p z4+J|}KHh3|YpjdfYZhei{UEq!OG28ci$0n){AnyjqXSdl`mB^kW~W>1Sy6wdF3Jk) zIQ)G523filWN>iK$I<$5U(29hDg*mONP`80++8IroTnOI?L`ausAJ0AxRZY+7^mL{ z7|GWxUx03S;c4#t=_hXtrYnwYz=OE3p_2gzx>(b$kW4G|Gx@ql+s&O9cqy@Pv|oWc zQY4yuJ*vP5Bkm@3kzZ0wYMNw1gXIY%I%{4W`Ye5#EcrDsIhpI{wS@f(vuFKfg8e>|Ag%%CQ)yhy%V&o1jl8QNqg}@1L&)sDK02nCO zz9_N{x-NHO5J;??g*_Q|&*ECBa zzsZhxnA6Y@FCCb23U``(Pgd?ra(+i0GnUF#q9t`YdDcPpHUf%Nq@BU}hPcMC(B%=+ z_6lC`H6x!N0HSr_((-4am5-Th%Z&VdT#rBXJgw1%|3;3wuQvN|YMxCjQ}6KycWEX= z6cN({fAx-?aGdt{>?0;ZAG8}mW_DHbG;odrkBsyekTqnpq(eAAB1YHGJ61~BhTgRc z_4o_!+laWUh{rpMX4Iv>-u~FMb8O(Kry}@L+I+xv^;jJNdg^b6=5HtQe0HfxtY=3E zl&rd(B9Li*X`r`@tsUsHxap1Qg2@9l)yimTXoz-&^t8u*} z_!7xNHUf~vx|1|Zd!!W-mJNIG>0tpKiZKnkOO85+vd^=SR(a<^K%nn+n5b8>2l{XS zN;0$vk;|oha5+7`33X!p0IoxD>cNLH&~k@d$W-HIht26XTdH;tY1)S za@Tpk%Zme@JIDHSgW+JzBYV8`xKd`VT$Ez|b;whk?_s82UJ=8i@9171vOyhwLhWK_ zc$!K2WSIi|SMKFrxe_bhXBU^y^e5C*BBuE0=gr?Da6Q{+Bw%L^A8w_cZ|BQnle=(^ zNaDhi^)|28KaS38OIam|!mk8^giFbaC?X(mha|~J5_tOA%vy8K?~ECm?&_*t-v%$I z#TLKiQv)t@#691$4W}3F+_5)wJIzL$zFOW-E@p=ui=pj$W0FR?T)v*4yd17Q zy9eqIIb+XAOe$jP|GHZ|lj9a6)D>8XXj8LzC#lVp;W2Zv5^A5TeckoYS%06acUHlk zlRf|9=W5X$4-qTzNED$gQ|7f9jVZ?zHbIIQCByZC-S&R_(PfnKG2=NvhV4`#jLgex zjuTzg+Z=LtCSkFp3e+i-GgkwUr6NeoCp`p*We+P0LggM_VQ9_i&DzvaADXf=JHog$ zv}pJj|Lbh@zKB6rv{j&PGElUW8JD>p?rdf%_9c zUEuj??VhwhWID3iLAO)@D~0g3x}P5VA}Fqz(S*dcR6elAo8R93D1RFL-tKe6wj`9W zH}?skzSY0j@9Pb@n7+?iBlIu7Q*_NAAbip0)MTH8-M;nA(lFZH-d^{dy;VoAJ4xdC zz=t?dOmjvYHl-8p1vuro2g>-jhA8R^6Hgx~&*rcMhoK&7s;f3_zZUQyWd(eD`4j-_ zjPjl)s=?S1J5#fXbh^IJ!?T^)50E>F+yRXESX-S~qib|;I9F!G`SOYPRL0w3bjtMy zISNMmks&REKN6(v4wo;Q@Ne@KZKUEb`}t3iNXt*hmpX?03*(7DZ{KmQc&R^Zvn8_6KVqBR`NkEDFl zIO<|~zbfQhPpkT zu`g;F)r>YJsBo>pYrPZ@Ag}&YIz01f8su=A@4U%g8D1AgHV~igxDQPHU@t8EhI46} zlCoOEsDH1XMd#x?f1Qct6Uy$#5-Tzs32vU2m-lK%n~LEt`HLBoiEREmF52!4By3 z1jV$m#@6lhhJIVe?it#HS9$0R{rbdAN$f~ zaC+V=3Meb7LpXxN@C){p4L-NH-96jIO?~|SjIOBT!f0iMA9Bn>b9~-+4-V{};8s&C zxE-E~?)Q|&jOA`53Slz3c%PcEjqlebL4ET(x44Y?_wky_7!*PpDkD+E@t!ook8o-^ zg8TwAhN%h*s^EtdIR6K8ISw8gTkBnyyL-j`sJiK>hAL$&Y*3 zqb&SH^pq}4j_<2&`Qd6PS8~0-O#k`@YKelhH~aLk$mk5cfr5__5AYs<1H?s+S_+M* z*JLK_5r9u9A>zewc-b~*f)je}x@sN0iYL7RpX=gW>ad1( zzGrZXjmp6Sb3b3ld*3rA+x-Dyd|f>TNgdFdVdB^OF*N}O{2JefgIZnW7p;w#Qm1=b zUI{(G`tY-TQN3CAc-&9dvLmgq~knC?#P3RTyIO2QSpK{#}9{z#ks?>@5R6k03J%n9fdeQJ} zM%1S8Shs?og98EziimK22}O;vux2sZ{i>qUPKVJ>nGukXtL|-M6#Mk|{tVyuQ~~9G zeym3nQw5EE z^dPr>?uvtVOKLvT3tN$q!#upotH8F9Q*2?|t8tim@VtzDB+7Y|ks}zUiw-c3wg$$wJii~Bt5biWW&l=%nz@i z%RTG}Ak$z9my)}NxF#Qn564R5xA04=b%L~by#{#bZhbKa=~MEhhyD@e8&>@xW_=BeCG<6xq-tjNnvm)_X#ZA#mqm+ zfGX^~m3|dFkJCN_ec*9i@d5o-TcUr(ESSoJ_pwUN%qh;aC-~CrV@I z{7$?Ox`(Z|KdOe?xbp3YWRoGulbx~(;(ZjZdsgXD5`GEtB8wbyAQgF!{>auk9O3sk zh^K2ZRY$!4ZDCm$$NjGU^aT^o(1^Eu`Xmywf5?n)^Dunz=stmZ_kDKhC02EaEAoM) zYhvQ@UM6d0u$wBq946r-s6)3AxOih>#_@S%-_J&v-%l(7-Ge^$w{ck@Sy18opulbp z@8MZcpbGk3UFkG=>?fXsXfe2G>r{Tt8tD1LIkb$e*y4N;ale3W7$%%_hC#B?U=r=3`y8sj0j+D+`AU-yYE&h-7#uI(;R$io(PP`X zhISMNmbPoOXFIKa?Br=`yh+b^{qM?p!%XftD@mkcGmrwVh1bm2`KL9(j9z&_`V)I1 zSB0eZC2Q@_w6L^EL+*Gu3JtFyH+Dv#d(?bSmK)v<@NKHfeAXXl3(*r^Rsz4M0QS1Z5Ya7u*s;t7+I z)b5Mgj=lnPy`h_NC#FfV&&Owpwm`4Ix42OatJSxARJwhfpIGm{pPwJNc6hYAfCL%P zkUNe^*!K*ji1G*@)gMN^p#3v4f%I3!2Jj^k`jQ4&zchW4^$fuJe?ySwo(3@#Rljc= z;!sU{tkYi*R@X$;qvZ2>AH&P26}H&i!a6MOXzazOqM=xONTbiy@;-=HYU8G_fLb)e z^L{Qpk5j8D{M!s)|43Hpgm@Z{Dm5%$ z{X)Vmc)~p{-=c2zPm>rI0t}H~|JEPAL{eYf50W-^w8eR`Bmd`{^N5U`gKFMF_E%|;PW7H^c9x2Le9vZS8uxS zQ+2ZL)5%cfcW%p?s${8!6Q188V%3I+kRXzvhnSQpR zBrfob65g+EpK)p8P|p4yHl1}+)d9^-;W1?8pHP>@%~bkG9lnuTK?C*{(eJhosXLwX zq0mHuK4`k2A@J+n>heNwr(ZpDfeXS3rSV?5dTH})#vlA|QmmYJ=@at(CMAP&{v33= zFqwA@Cg7_(52F8)+tqiuQ)9M^s6DsA zDlbpJAN1vs!7}xpU!CLJNoYPUe(EY5dzi1|k9eZrSvTCusa<4XANwDif~xO9^Wf{* z>F-coS-lvhcbpWfME+!oAXlwNC(q}icV1-(x?%Khn5k&tF9J@JL-?UYrt`u|D(Ehy zpN%r6z#Jp#)Sg!Z$y!jsXb1-}t?eKA0Aq{&o8ALb z90>x0)mZi|L7?CMA4+!e^x-@0M|JVY=n9TWTh?;-|# zBV8if0bEs2ZR^>_*w&-Brhu-z{?>>UdH>CY)r$piU_D!5-oH~?L6;atYlJM${@(5>0vjiJhVg}R>jPd_n7!rquAAv>eDo)E5GAm!#!;0?d83{vNl zGalkCg3GFI`J4kQpXwLgrMjEoMYeU`d0$NUxma_3Uz$SEEsV=k>k{j{653HP-sJe` zyc58v%=35NGhjk~7S{Kv#DP#QFHt_6BG7HH_c3%#gUaXb=8 zC?{xL0MkS8*+E3M{an$oqmd~g2>AZ_RU1zDet`)~+Xr)(Zz)(0jm`-}Tk#QI>{YyR zX$nVmzfR%Wat-UrtL0NXGJXRis_&DO4Bf4H;d2`eU`YDkW18|q`lA;SCGg=KizlEZ z_*GrD?t7kNpz!1d+1&e$M=Sd;N>M%y3N&p9^n7G2=aV|Rsd z%Cu=%;P(%;GSD#6w;<(m)L+gg)m=Vy0Jn*$*fd*!19*Pj>jD>J+b>JkEAw!pjyLCb zA&CB$7PfNByqGmp=_mO4qVCzukCxvW^LXdQF0r>dkQ`}>77A(@m5#r0k;aI(bC;TNZ@7L-C*0IcXPaWlx%cCM+UTNw7K8|yE zD}2$M2{dbEe~zwPe?+vVhpglsR?W+X?Z`r z%C~;^-9_Wu{&zGcawE#z`u?75t~V8ueb2PBs7SJ$D|Ox1FQ$t4jRt53RTtQ>&#ZXI zaW5yvfw9!S{Wi8sojYp#BM78X5060aB$(#;$$o%3{0Ez5s3&k^D07xYo@@5v_l6Af z>-1LD)2oM^I7wUBA7{epYYHrPccTxyKfki@`g%?L#po4o{BqA6@18w8=A^;GOmT{= zwEYYC>G4q&LqXrK{$rrMSwMpscfgZ+QPejpOV9&29;2Wvt$o{vJB-(W)tF`+!mreS zBLjGq9hJ0`f0v8vDm5-%`gw?H(DF%K*5oVg_RXk5o!zyq4BU&~AjPAf&@&i|nR{+~VWepF-hft(|!(ySSS9pPX=&sCN?DVVm zA@iJSx)w*!scIv0+2evt)7U|bQYiaa#*bWh!U;K_B!2Bp563TY-bJSKX*Uot3t~XPf+t~cjX%KyVgVreoO3h8)Mb@$!d z*l`}2A4uhyv`6KzYUOsIF3O5_*WsEUF6DkwmQ!%OcaMt2p1YF3mo;@wcp5$Bk*X1O z6R$E=)s>~A{AlJ}I(oeP7Jhi7%wf#D$5pGvcVBTZuwcaf0v?=$85L)X7I|Tx;;8%G zmh>P+=P^Dtc09tqi-0MCA-=vZ2^CL6J7^f^DGsr~KC@FcD1di@p#YkInlZ#vN}eNi ziti?KeM5U8<`owz{9w8%NC^BxM$-PE3-c>LDo(IR?e)FJ);2&3K5QOI%zV8XgI_{X zs_>n02NB~q{i9DP*~C}jN!Pcf3RHfYnT+<6XV~&>ve(T zD1C(^KC7f$U5P~BE2YZynI5z4cet$9C&vnN2$e$}%{d9J|&-+aTtLEddCbJR4 z-Rltqu&Zhx1ZC_?91$P&eF~fDfSVdjcuM*_FVReHBYEQJ0~~e4amL0+XfSLAJF!sg zz6|OZMRl)c=#>1e(jM}*D0~~3tjhdC1xQnd7whMfw?g$-+&iJD;PY0V#XUV#l+|Se zdN1*AELqZa@I>&1p(U{HPX891ootDHG)1ybDB4SKv4O~mTaCq?#7$=0&fT?o2j9pZ zLZ(O&z5eg@|3SbFcHA#-8kO@Ts@W>R1{(xBJTn!$y?H~p&b0Maci(}RkTAh8+TOK^ zNV)hCXsYLm(uu3{_qmTgPsL2FV0{^m_!>%0Xmp=B7K^M?MReD7cwC7y+>PGlC!+$8 z=_Z?xli;+sB3wu2wy(0Hrzb>BJ7dq4y^#q9t(|8U#Ww4zYzm~m0Rb5H@$mEBEr$(W z4|2KZBwxcmEo@do*7N~7-90vk8*AB_*<`_Z!Rx-P3dlZXy_)+9<`iPUkf++Fr1VDZ zTMY6ZUU)8!h3ZhCI+5Vy3aJ)=9ehq@_Pv+(z2D&SpXWY=)p8G5LpAf4D_GQ2y6@eU z!ydz=>hwuzE@0mWwpi57VEQxgz}Eo-5qLEG&(_Vyw3Rpd^Tj~Nqp?v^ znj0}kizlt0aK5omH*ad{W4;)jKN;=PEd`A-JV|~5O(Sl1af;#7g4fCwGWd!z{pBh} zL5xuV_3xOZ62?6cX4eDlPiL{M3prC5ej*=aF!$*ythFA}&z^B@Rid9OEY;p+KpmSP zp$RZ)uZ{P81Jv&A>!wVg%i?2iz+2Kz_Zc$bFuJ?F3g}-zA9ozdzS{SLyHvI%pW$7G z(l5L%GkGHcFpd{PTum zKR%{co^r;_j}RR#l$P+rC-_OuoWZp>jT@yfwqjophm9YdT6$3AioFECoWc`Hr{H7j zsP7$05A|3!lOm)*Z3W_c;i1|Cba-42q6Uga3H#-w&uR;T7SHZ8q()t!*PA=Jv z|3?T(aI^6-(a}$kM@aFbS0`jK?%37iS@^;3N>;>%{uFC`Zn2w*f$XN&3v6|KSmLGS zzE=i#0rus4h8u;UHSJesP>KefJ*oxEYp-Ws_W6=I`)*ErZ?o0_QH0kX<(Q`T0XHd@ zfSNyUS^L{=TCmtqBli{}`PMf;{o5@jn3VpQUegSq0iCB`qL^9$a?^b=zUeb8f;~0x zg3{X5QeJFMSB`rd^e{c)vOzn~tl%83U<|L#k0q&6eL-5?3bl9K1P_^}Cy@G%PA{m^ z6^=`>#vJ4BjD7NSTTC(wvI5?(_vytu5RJ%@o9MdqT!wvsc+Yc$Rw)p~1R4OdUpma+5`8d>t~geGhnhJS~x{F z0UKcQ>>g}d13&+=FV1!m>?V(jEwp5c#6xu?i-YOPRZP**s}9)HfyZ3_JvJQ5NkZEe z5Nh3)&&B)QUgU{5z{+|r;a$Rgh7I=M2rkSwA$nu?9mEH6VbRwoRYwfpao=^RnyV#V)#Gr*K$Pk=^b)aff4u`Mx)ONFZL4wAG54~e~m^4Xk2@tL2Z9GYfU%+ z)~SQJ?dDU$Z7*hgrlVqvPw_7J`<%;C&)09ByD!NV=%_v=P+V@e$Yao4$dl)L#p6f_ zUJFDYyX|H0o;G6k^t$9cH>i#jgw$y_$`U$aL7jfCb>Aghs2b|=ii48c*ro~f^#}31 zn9&7#V3M?V^GFRFzlFYxa$&n;QFWP4ZkA8Gn~5?27QxiNySWd7sJr{(%OhHb<>{1o znhr-qksId}qrsAuZ^zM}rN{X?&nk1!u7{YJ)H9r$+6|@b(CQB*Z^S}PiF%>Yu0_vHlfXp3fr zPxn~y`pXZ0lB(PE=C8lzRcC@0sor%u9i3V~-1kjV+!GV))U~2g)-7l$@4%&GJ-RnQ zjXjvB{@hM9JHEcbU8Y*+eFOA-_sf5+o(mn&dO7D{> z6oDmQ%IWLfD!t#+0Knv z-~Zashs4*=Uv~gRO~1+SckdXC&Ng(<8dri4ulD$A55)r@wA{KUvJIW{#fzc8my@q} zhdui~BL%1FZLiT|d5rS2e1HN@{l;g|?4PA?yB423DxLnZvdX-#?E1?_bI$dLl+Wit z;1Bp|L04j{3S3d5dakTNHy@?AnE7pEX7iGy*$f06hON-)ujl_sdzuUa8DV4WuAF~n z^pocc*BE2d{H{-2bc(8MVl$F!(%z?B5Q3Ueu5yU2(cSH?gM~*Voe7ugedAnH57T?l z&Rmbr(+sPoV|1?%@{#3EFFX<`=!dYQ<|l^N=uHM@`Z6waX0zc<|;{a^ml8@|mQoaq;Ieu+)pI z^#LCT>4lt}D$d`x&?i3VqL6~02Wwh)Khm=e%Jqe6420oMR%r%!s763CaaqQ_njmg=G^xA;*o5W`UwB|FYBf1(NG@andmKE`Wf+G0b?H&nGd%{_kYjpUe0Ay14SN)K;}Q z9Ikd4M@Yl|jaBLF>-w_b=2m*kQxnr$*EhRWzTs09r z>@+mxExa#X^94Pd0={ovXo}vXklXb@`Fh?8Mr(jp;LmuDGe1;r-agU9)A=XEe&}$P zvd0bGz@qj`=goZKJx?9Q=SG<5Le9IdbdGRsE1xs}(PjgTvwTaw8?eae%Rz2P#C;k<3>R4!N*jMW2oy zyvHqlBAGHf{rKcJ7uG{xC!PSLu@Olc?jSH6fec1#EH?+cMW7_{H*%LaPMNwH-nBq*$a?UWZD7$bjC{i># zj2k-{QArLDEl_5_>6z?>J_}^+?fgrn&E4mM zHUai zV<}R4+gUEx(t>^0Ps^Hzffz-22ZMVjHYdovSHOJr7bZewAEn{-XW#V30ffO0ZtcABIcQ3(5WJmbTI#(6GP?BCVyYtqbOHtK%Pv9lBX zv&j;zb8Qj;zck{X;joPnELEocx}PQduk9QD0|ArsZY=kQN{=>?#7T@E_8KxB-N>7| zknERU)5RKDd>Zt!^u(2hta7`&<=j~x^S2`P$FIHN+r`_t){;p#+iz7>LU|xE>ejOd z$1nM$JoAM9OFe+8UXv)69swJ4{cadt8-=E)9YcneH36mpq%bUrj9FWdYi+xj{^`bH z=FQ*O7re4%J<$=qzi>R<*8mN@pVdO%=!+h?i6x*&K1Wt6Le52YAbKCvAD9mT348-g zOR1akz8gXvPFeMG#Vtx`Ppp_6#$+poQJFpGh^Hs=F#)ZfIz3j*fmJRy;S7g2NPd0vmv;O@S02J-S zj1qNUQN$=R(`F9~5Bw{f{`(W~3)`Gdzzp9qNZcPKw8Aha4zkO~Eq>gS{ydd2{kQeP zrTv)Mj{1J0C+r(m_eb|YU4={GFv;<`HW1Mh=Y3kzUhaO$nb8Cfgke3>iXVK$ zr(b5U{8b?eQOiBrU)?bnv|n^f-``dF3`AjWVgT-43JmSmS@igUvBa-3FO{m2P`Atd z)>P3yjP%WmdQyMs^WCfFL&E6Zx3a5`y6-L7F9-2$f&{88oZZEe7-|nn-%DLU%56YD z3|*)CMtLT@Rm#_4oOK}n#f}QdXLw}FFyH~y1r&HyZFuIRLr!gcGKkO;5%~>USn%T+zbY zb+}RtdlS75Gv4#!X#vqiwtm}=&9A=^o%ZD~Q?pV-E;dI#1o|;zExL$k_J^wrU|6%V4?09`JP zy0aOD>lv89Or*WQlvPb1%V&E5ad9l)1#Fv9wpVdBxf_^|eo8#z|J}gvdjUHh<>w1a;{`vZAi`9u&}+v+-!$qMkY9OaZ{6yIe%cBX>S$z*i=O zsgn*aKmjfZgcDAmp8M|8m%3lXJ(6yor8}yVEtM|VAxB^L^YezSxpsn&0IMGOgO;Z0 zDMz-+PlA1BjvmA{C4RDH+trP{%(>I;p8(6vb9(n_RXfHpk-s{~;Y~*D$s@r9h%#%} zeUQWBvB|$bPJ<%|BZyCYTw$0GzMyGF%N{hBzc`?Rpj#GBOb7tl>}+KZ{tkXsadltG zI561DD2u3A-&>XSJnE6iEn+RRs`|Vi4sDp6!=albZxxk{tew`Wg(8eX?Z}RM(}mD3 zkK^yHkg}v+`^#{G=G>15h)~{&kJck6huNnKGy?yeTmRqQ2JiR}PV6B_1@!*tOx$H) z^ygLoZu4uKPfd=T1z!3KeBYBg*9JZF4h`nX^7q`*=BA+%NvgGKpX=&jZR?h4=kXSDM&kmLD`Fa&#zO2?*L?M<#v&!NJ7w z^u7k751cWc#?5`9B|uc_pK~@Yawf4&d{^j|#6t+o_Fz95=iyy&)|XhHZhd)pOG9O8 z=g%j(xBJb9zQVK{itDGb7Kkengq7lr|3RB`EcO(@b_Pw%5PE77jDHGp*bNjR-=VT- ze7{+QjK&*r&}rtM7qP>ph3hkFp7%kV_=s0NkLuIXXg<)Upk|6uP@u|LY-@ZiOmsbR zpqNaCN`i3rEwfp=73O_nYU36NoARA=h5pQxMi2Yk00zN3-o_q_^_F*gw5f*68>9`u zLhwslIz>_2sne#?^<|xj`{P7d!TE9cm$Rg&GjAXpj9x0uyW6i@zpvnU+4ILb9Yrj7 z77wA~NBbqy11&Qo&W<7*Mbh>vyd&c!=^JJ`K8ODMd>vbE)h>N#a&y`+cHY{+9_-^{ zJ!_{%eSNAVj89W#TrQ{WyY8_PHr|T;OmgDzA`Abr4}pE@>_%>Qll2#iw*sPDpPaa7 z7{4TYfb+2dS7OvQ%-U))^MF+MZ@)N^uFknkl zZXZRGDbW|uZVMh{Z}J^b)J>OVx6QmcD&8~jYWa~*SXzB>QurH@6;aMf&H>b23wzQlFmwl|^!A5k4Kb2XBF~lG!ZXbg< z4)u93K2+X2xNn~-<@DY9?Z7GOe0?Ot|>4I-9(Dn^xd_D!p-TTOFfGumJ0C zVfT|WvwvCY%md130b-77Zfu}|&W0EJY~Ktv^=h#QSYb;|x?Via+85=Y$vY5T{7hrH z?c>CL*5Nv^?@yeX!Fn&49+nmzS$*GB7{l|CIl>))ilCqF%O^yc%{g*F%8OZt{Adp! z4ut;Ir=bw`zOs44;wjj*y{P*dd`PhU(^1K$SYjY(SxisI{@C5TeFu!X=uaw--tgK# zZd{(nSy8`YNJ}cOH{p6S2@QRFBC_tyF}flDI_T79-pocTy}$?5d=?{eR&lVEG1?dH zSb)$^)$`>zzPz7C)ry|O4A6VTy!-g*2WDfCT;3XY5MU-8K54Id37>!fNSSw>`5XJe(iE{&nwvaos_u|PNAGS;UH$K}^%EhTHD>`YlVZ4R>$yzu^2 zkWALI+m;9C!2fCWG9IdgWnZj6>(`q}^LvKto9UWmYfeJ+1~z6A%4=w_yf+Ah1c2D~ zwIM?3SR8h9=ex+gDHm|KG~Nehe|0qpan$j8a3=1*W9(zY)9@-j1M z3xJFz39YjOZx|wy2}`-1!0la}ftn{4=GNuIM$Gv(^b`F*9pAnOUMkT!a+kiKb`)s~ zCpwcvbL8jAwqAj3`T1}&v>3X?>@{*edt$o6A3q)^Qu`>i3QVhf8X!}k)C0vHdnHlM z{wmHxGYh=`A(mHTo}KBkssLAUA3fNP$Q@JSz5<>0kQ4t-3wdqsus=I~#$iJor4cnyWPCHfneP(~H6&AOpKDV#vKB2dH(wm2~AeFHS|9v!F_YenPF{S@`czR9* zo`w22TJNe(-(EI3=F`=ygHFgw;R2G?aQfO8Ymb~yH!#+O_zj;Z?mu6O-Uou)E-lPL zQ*|*|A|>Y-cFs6s!b@YSf9V{S6f7nO@e}URJCeNQ(WdqZiSpha$L?XmcZ@n%LEdI! z$5D%McJ?k7srr@ZRcm8}R&==>Dt1d>J;{j0@nn9M=!bU5Yt~IRlBFhB6DN7S9+$Kl z*~}-xn|EOjIebk%obz(eu{(3s|FIMnzYSgINai!yCwgm9=jG)WE;-y+-u6ciLiGQ_ zab?#g_YbVMHk?TWA^S0~^<(=$W3i%M8F;!3F`aHi;*Ps#fggxstAYI_hUYlYs$pc_ z^5=w|JQ}_!qGt|F%zkPtv6N#S-Zodt9`+C2Vlvd7NY$Dv)pod@!*jL5Gwi%g6rJ_L zO!N^9Ltd9>3A^tuy{hLCepeEVA5^+FjFg4b@tS=iwC~YhKfiv=Wg1J5EBt5=xt>c3 z;qa+k$`0nD|ISUyz32Ije06oCnyJZG#LFiB8*r8>wS>Ec#>IE^MqzXi_qGUyzK2Rj zoeD{EJ9~Is^pf)ln*MiKDsSN$s}lD}9=B(6J(q6=q~-XP!T8L|+lf+ae2UjY`P#u| z(Y)q+G}JQpw+1@klonO)<9;`sjav0{Ugwe^A(y)95cbh)v831a_YeB=}fOjP+k)NXeuuJ8n=d72;_J^YyMcHHsMwXP1`}b&rAY5|L zu@(Dl+ppln6?%S~3k=hcJG*apGlW$M$0&O_2@4+x& zR8wc-$&b$NyywZK-ei6~e)9B(Kh7?zZnbIJ-%eQ<3RRy8ZzTM%6WE?ywjU)V=J!QI zv#ifhC6TDKip$c)=o4-6P_qXkMVGjFo9S|yDTs5c0ht)#@G=QF*Nu{X_%ufkMt%fw zk2eZB+%68lV7f7KF`{ucPvzwZtNYJXIR4#6$6Z{0)wVB7&U~Zis!7i0uSaXIbpd0! zua>9IkepOjoB@B{EK<~?NfOr8?F$9Vp-O!fE<@i@Q!(k7fA{^X63Hb)arqbKxjIcC z&4^z68nLED3j;+-f7IaY=WRWvuJ~J5GdE(9UCaw{5Z}|=%6UWl80R$F zbSc|M-n`yj>sZ;shdaNug1E}J3;fMuToM3t$TO96K!L?Bm$2{qj3@JOgD--*Oxk0O&5gf~LS42q``OL$=-=r` zBV|PW=sT4p&T2!%vP6(|o{g_OOsHgQ(P^uPL(QQ3lc|?pOOGklW|?rye#TRWEyt0& z8Oby;Izr$a?STM74>IVA;uG7XEI3z(=u@PLZEqIysK59a_B&T2J*_-j%v!K|{IuiA zX|q4)bRTg6(agJJKMx4aCMMb|cRN6^=groxmRR^8c! zGE?`IUhEMg2%7TQlsJ>&@7S!yOBCH6Bfv$*SHI3TH3q_+A%GOUfSYTasE9v-vNqdj z@v|Zbj7S;wDp((s$Q`CF5P*cp9~#Yjwz>y~E#g;5B=D6X8#tExj^Nb%l7#NNx$~lZ z`cmaex`mhK*n{QVpU-CKK}Qu(4v9?m^<%I@L&grOCWo6hhTEC+tlJ`yH~|zJTR(wJ zkIOrIqGhzRbAb-YUxA`TVvtH?yoaIUzh=@$;z!!!KsXOoUN{R3xY|FupjZb$XR)A} z1i3~kia(c;@b0bn*oOh+P=b+zF6eb`ya()nQo;9zHVjm;i#AL2s)$<8HFGHf)T8n1 zJrLbDyQkF-f0$Z}7JjS=dJ0wFv%1r^Q(R;e}x_LR>uDl@!f~^dpGP9&VU~NXm zR$!3nZ5$MWe#ZehR@?XC?&G!luKKD+@>X23Xa3z}`GxKqP`3E9JObp{0$gqOr{wp* zvY||lt-k70SA6sR3feayPnc%34sHFu>SLXY>tQ9n1VHL%x~l6fuw{*mQbS^qW0(lh zeSM1GrOBbnpn<@@zJ+|b0oTJ^!r1W0Lp+uIX72-)r2$xn78+f%0v}?hFJO0S1hWgm zg@+5>|7y?0ym=)_Q~TcQqCmlsXvxt~(~7IKmy()eI?LQ;I($On!=4{|ZT}H}bNw*E zvKU($VY2?a*gt1@mueaNozP!pQ+Ty;)9){6{lDHK65^#N(s%g6`OamF`s`mDKSj(* z*%pE2TNrf=I%zU&%(b?Qi##0GjnO_F66tPN>EFu+e`tsHUeA6eSoKN&!?3c+WOJQ|X zlI9hQHr2gC8ZDyCsl8 zA1M|Cmx9K>Jh!6(93U(*PAI!UY2xuPy9h6x`PG)=TDUki5!xVk3OEEv)UrWNQs;hA$Q ztj}8aB8GqG>*@A=YQyN3gG)imLVDF9^oyBd5U+YOQ+<*s*3=t8Q$dZ=v4_qEu@I6K z0|B+)K2hs0H)NkHIte}w9A!YnQ-2V9;w*D$hzYJTyQtP{Ci!Ep-w?+5XebW-Kme0=Bc-Pb zfwlNRG%rgF_>$|P4-43^d^yrR%cs)tdZ3(su;c#Cq8N$Mxh@RRXR)uNFtaHc;q71K zkj{MqB|-kXrX`Xr#uYfmze^l*<>Q>hGdDc{3I@cJ9 z$M#E3Fj!HryZP7nHX^Pxt{k|f@8Cjf!;-K`HO;n`(WVbN zUZQwfpWy4opXAf>R){{x2RAI$YjlM`mbvfPZna(M1xVr?yC#=){Be4RxmMug7nR6* z$3+gmq&vl3VR4)lxfI`LZ8Rg0D(o4%d$l%(eIB*ls-pG%3ea4avk}uW%)Vtae?jSm zp>LXcm+t$W^6!*|o+^dEjB5$yJYETlDOYnY>JXt)umxhW11y}8e%HcOpyxfw(0r(L zwEvw)q2YhmL-W%{&t-cUeZ_FyyB5QP0$LUi^{_!Wp&Z}=%l*Cpy zYo7@{AxWRw{1}5H<51G6h-pGS53c3YPOscQex)DbBI}ov1M64m{OQ-Pf3#CCP~7RO zR58KFqH}p23EB^?+Zy@Vad2Tgh_^(-W0K8J12e3jOPVGW+L#}3hsW+mmzWvl@w{Hn)`1i=JJNorr!=

      |ADp!ymi+L!nWGB1eB@GvhQn$-TS+rB-H`@5Z<^6bjT znmPIM+nc?|$@b&`QqsKP zXe98r4`Qdjz4gE<;A!tnKJrH++txrj8Og#CR8{-Vh6bkU=m4@9x4q)3*Zr}zDAgd{ zCa;47*p+vYus9@_C9d~aA8#DR2D6tD=E{D*MAtmMo=Qk8=oek4vG;OW(Nqb$x%6c%@t5qB}O1ru{fujK!$NvAS+zD9q-ID?R z+(x#;gZ7v<5Xbi7qrkRow$mAPLEe;;tEaPp{2HSIaX#`HXLo1y%iHZshsDU;>RW#f z<9Bo6Lnpj4Fk(HWUbAGiHm<{^J~k%6DL0P!$A!q$e>YMf@1qDwn<>A2 zH=azIKvo$tkl)v%Xv%^#%+~rH;WhCJ|46#7Ek&^?`b*^S2q+>Vpk&{OA|famzP>lr zYxPW3836Hy6LvT`xK8(QRU5Q*(=+LKFABni_|CU*d$;fZAI|K?6$rRyCHcdkEgwjM zQ-OSt%2bYp7)OBqQ}ssX!mCJ%KZ8p7=HZ+{m|W3P6O0R}uzvdCaLS)?S4Z^wdK@nk zq%rkt&~+1-!_Dp!Ij)4=aH_Qc{)@2+vxWW^L1jSs@J@PEJA-&e7~EF$&J95UG?zU; zm#pA%ioTm@O)J;)f_41!hdT zTU6h>2BJfIf1S+TzxR10PpQvHE*%|!(l2l?mwozP<>M11Mi>a);-eU_Sj*(KT8cS$ zRqF#`D*PR?3-u?)S1(1p@Q_*Ir9||oTs(XyhhOIUjiCXO!c8g0&ZSY5lmSqrA*-_8 zDsP@oS5lc5UHCl7qc3{LRer>_VT!-)Q>fW0bPbvWLGr)wdM zKiac)-#;pJz5Ex%C+?>=c?p*8xw+0tLWbTUQ?-t$8}wn`g_6_d*HmW#I80Ma=x6lQ z98>ZEHu$Rh7%uj?ED!q@=s%|Iu+}q-!RXMno`VejC$lxE4# zA6(oO;XOz-2wU*5Ciw#DPbH28pO!6OW&2VdJ-*kyaqjt33)k5zEa_A1misQ4^w$JG z^7a5BDKLM$s5P~l{;QCT;ctc>JuupQlq`7*^DpXmfehmLR{}v&Ic!2pfa!Tm;VKo zL8ASeAg!w0pOkm@&f_6++*ds3g@42atJZtH$dSpym3wOsd$Ds!Yo%of@TO`?d5Xj3 zwg}}OvF-(kJJY&kj@c>CmjfUZb%bvFwu+BED^R=BXG;3v2_E(Jdc%t@wL88i-Z$xv zew2^fvR?e;N6f74vX^_(-vG>|>}&r_y9XqB$)BjEd&*H<6u7z<2M^^5^*=x1#4^Wo znODKrN9arGxxpURZOlErLxl)EynUssJHSp^b#_nXz9wr2x#4&!{^gr0q2)|wfe+0V5)D;Y%*-rRO~?42*pjM278l*NbQx!oOvqL~n;GnS1H0ra_mVZ+|%BYezb z^|EDAGS5RQ%dCakkd8d!YqtcWq!>@PjDJPEqZ~TiK^Bf>;uzdNJVY^T_*|AU;t>|GlK(wUB{lO5Wi#G{KR%0*rNC?#vZU1O|d& zxaN9oo3}_l3UN0C6B!1rZ=81N-8iPVKO zZ}Rz}#Xr1?)+7|&TdNtd(aU_BANKT%o8tTcBs1Tu#2PM!er-FaBdqozdlYm;-E`F} zyuNl0y3v#2a#qBp6Mt`zXqPv^uKsb*;+)tQ;_X1~L;l`1Z&26k@Ej#aGOtVjvTBm) zy_-d(Bv)Y>IGoz&cHSWkfThnu!+KMnvMB2YV-E{j{Cy(N+Y*ZkV0!@Vhq~*h{=JBN3P1Y8K~<}I*;V1 zr9VWb==C2jbc~3JdjYfYcs^0isuw?X()V5x9a-A49Z zzmTGV4KqS-{Irh*Z&P-ufnW zaNAzcFu^?kllJ}7{Zc3ik)WSMwFxn8u%ATEH!wHXH6}|yH?*q|H9O^CYj4idnSG=~yQls5eQJMZ#bkvx?Cai3<91sbTgHoFKm_lFX+9N=STlX{);QDh2 zI-Oqx<0qZ{CmIkY`SNiuHMOVk!oG?*5ExzdZPIW}{$G zV)cRqki2R^s>nl6Vp)~L`xVY5|v3D zJC)>c>L4dWY#h6Iv@*Yj52T~`5p5UPIeh=%9jP&#(4vI;=Zn?;x)isza-JU{2J&}q z;5p6WTnTKHaejy&RoCN_MErk}e2&j=%u}Q7pFAj;^4 zA!a|DQlP+ktseBgU5z>P>h5>7*EXkCdQE^Y9z0D}xD%-o1cMiBC+hj?41(eBtB|e3 zDgq)uOM9DpoAUVjm#V3(uMNF;~dxqwCc?9M!X#ob1di!ZD zC{s%QVX}njw7nhlr1q=G|9%iXmk4kdfOtK-E6eVtB+*@WcU?UhQ8i%$U-lh;ki%=Y zXA9x%$d+5PDDN!KYcVz~2xJ;(qI9x}dehVK6w|y@8Sld*xEvSa6B^2U5zZ6kNC{G5 z`!^*CqlrKLTN&%8nmt>TP(Fx+8m<6l$<0xTN<~M&4yYzM%+N`@JOgz0h9jf!m+$>6 zzOCV#d(LW82^T=W-#OC1?3`NNr=%Ee`>f6_kj?cd&?-ytHUT|x<<5K!IcYNez^Okp zAZoxi>eGx0;G2#flrKNSYExxVk4u<}J${YP^*SW3e%#1Feiw;|y(b77bZdSix}@-^ zhjPNoG+!N7a(E_N4M;~+3BM-8cSJck9KxcAlMl6?|w6!831i(`IJgkBENWk(LDoL-~=x9fc#0-p}QuORBv` z)2UKG5oGs^g7_9DO!GVj1&Fz>SZFmAnYwJ4_ArK>ijh-4#fSWcVJDS;9Y#LZsb;*v zbP)~kA70fjhxLb|$6@CDfDi8h9(zjJyBfb!FV0K+`<;tzAV@W8?$^lteh>TVFFw2b z9Hi*eve`g0GtZ(4dI!j7y^sDWKtBPOs%mySN-uPM9(`MYO<09uBEK=~WGEY+=M~Ix zT0121{m)M5yXO^h2#FNaY0v(xJp=<^B~Ox=JDe?KX6QsTo{k(_r4DwEto*3{aR!IL zL5|Jo0TP!=H05?!$IVBwD0k_tcrv~+vh{mg@7sDNwBz*+*kX6;*&NUTe4*;K^d~C^ zr5^8yC-8B3AP4lL??Ec_jfh2VSGW5cc*Us^chs<;Y(ekFV9cqz!Nge%@Zv<6fgUI0{0Fw^hiL~8U*sA*a2rCi!*;s;y7ycVG0LoBUf+sd)V8j*_>4nl4JnWZNXTw->t?QSRmm(Yu& zVLw%b8>(a1P%6ML9FSJ28ZeJ*)LhbPg<#`{)HQjU;>V=JS@^(Rt~8C5^URt>%DKJ! zRnjnlc5s?OyhLN^s;RSx4-@#_N;$4W&NT;pA-G{c{wbkzXY};yx|9Z>4JJK>2TVMXrJG!gk+le`K#)9UvlYQv|+y*<+oi*U5e|R zHG3>Ss^Cenw?@y*vLvBu=y(2}c);WK z^@i;OeuEId`?)33zE%pF@Jvtq<*mK2zBWdkrF9gNnidw*7rIY>1p0I$#wPr_iF8cA zX1Aw)*qFuUG#I}0Vj-?>f|je~-YbJ1%nJ7s{W*u&+T?A`OELBb^Ecp1Qu?P=xD&Dg z23)EVJebYWX+>H|1qa+18BRgQLuebd^Ii~gd!4QOoHhDK8Wb*R71}(T-zo@o9bO$E zug~_WMKQXkPA;rDL~(j5#l3R8aG&@-;M@MbAjiEFa`f3euf7Fyw}*16!vstIC^|&e z5IL+(jqME#Y#$MPicB1?vz^9|i zFuQ|M-XnoQDG7o9@8`&BvxtUt(8OE7qSSZ zDmA3l>o!HxJ_T=})2}H}a$n_T_ZQV`=(QOfFZfAjSA1=3cbrj0H{MIMuC@0C1dbx~ zH^O^~iF8ZgnUB&olbj#IH&Fo1@&I+K4N}xv62<#s?D1NU_ zT)jY2zR&4$B7$k8DC)h36}g9a7VF`=9Kiwvx|2V=e4!5@qBzzcriylq$mGOP;6r#_ z|8?fxn$};ul>vO|3A*%->9)5H^|AGy&4t9p0$oNk?)<*qw~rx1H3({fu#CV}eM)#F zyH<<2eDpeoc=R8Gv8M7VsrSu#C?=?=!=?9zckK=aM74D;%gjB*JRY+0yx(L+JH|8J zJUZ2}QmDT^V0FscPvVOwRb#JdGAVhW`={=*cl-rDnNDLKfdu~IR(D!nNN5#2i zt`8zN{Du)SGIfHK$wPKeC8P;Hf#3Un8=GKXaAebR0F&>2yKBuFR{NG&@V@$koAJI? zVtUA{6g!1nM*BH=f(2{WmVX_rrp*j^50*bwUvC-CB8D_rG zLE+*azM*Nt(013EBGx=vs-gUb_biVu_m4EHkXP?5+ap39;%~L@*m820-%8K9C*zdIYv5a* zH`@YRUgm=-byx12NeA|wzx_Hz%?a+EwU^zxvuQX6WeDdx@ZP^;qz)HdP+IUs3F)n| zvvK#2Byrsro>71WE&54EYH-~j%8+sKX$5Ky-lY{{qbyuoXpOvB=?53{L~4Y;%MJbh z5`yopjkel13zD%~TJ9-Tf^LRr9sbZZ> zYE_qcawhUYoNQt8s~2T{W(b}@t@rF+AKs{FP2%nQB3GjKkiL0cKrj74A`96LJ_CfM zK32hUYCWr;@M$IxRv9z)j`;ma@UR3F_4UYY&pQMe(1{&jlJVepc^}gFm)KoFF(;`A z=76T3w|$C3_UjiKEDVm!cAn-Hm z_YvyIyp^MZVm)pS&4q!nPiysnUWZC@4cup}9HQ*y@9Qf3a61^P{k#URi(Plr4yNCaLcu4|N3=AZlJc+d~g4>F*%jTqa6x&0?Zn`n(GxqyfV1Pn-F}j5VX!?T0`v zW2+)N6yW}5yvhUHj-_x!XZt;yl5Nm8AyR6vaJX}bJ_Bg}t+zdlqJV@0rKhT`Oc$Up zfA;HhgLhIE8Xtcf)q$!G-{E+zHLAMz#nF81GjbUHexW2C{aOmb?)P9l_Tk7fzGcr@ zn8abDjk>g4AHf0S+f)nXGrxS8*+oy`3Am9+dtcr0WBZ15We-83^Dz`Fo3_-%8E3S-zw080;YqZaLiZ@Qac|HN!&5-1450PfSiWdKH3o#7^=Z z1Sq`lij^5tb=HeV8{8lg7%TAPljCm*W4+r=_=2~>L|MGO^KHHlgvTv>{LP;W2xx=`d1H@&*_5lt}0j78{Ew4v9*qJaWk%Hsp**78;7 z(fe0JnPS?jfm(qGLf5iD^UIg~;^xQHaQ5{yM{rL)AlZbT9bT5&ok&6<6~EFDctP<; zWxW4&OgZTy9Hj((##$_RNYnieY+Lf$Ld1VI2$N zbymNHB0L|3KGf40S%z6n)LM>|&OZ(hse`E_XE9)G_n)FZkd5;c#q^m7^L zwMKzPA-4zI|1fdoefz<6sLNoQgmdw<2rfwFi*yM6I-r+qRHOE&v`tOiUkjL2j~8QM zSMR#iY^Hd*nzlKi*#O-mN#mRsgRB5g@2To-zwH1L{|=K``D{GH=GFbe&I1qc{t?i% zq;o)f336X@&ie5OPC!x<3G7M*+09}^ z`SyW0rqBq-3-?pw`JXK&+OOyO{WI@j%K4=ff4HkV(n?h}eK~-hD_#k512w=;!Qhi^ zjGq;_#jmw{Gji~JAJ(1XE!!IBn(ga#ZtL-U*}r{*XNetis$e6`aHb7W^mP{ZvSGx`^UG?Td5(F zQr)@Wy=vAt8x;l=sJAb}!(>oX=6U$tZ_hn->g;o8?`fm-y1kR~>MLk%@G}&sj}@-Ai&)Wf;&X2eq z&+O6CAQUWWr+I~RjrZ`c(Wx6gOqY-an05#eZGv8oM+D*1lZRex8y78^o0;qWE!ZOJ z{x9Znex94>i%sU+YPs@ntVF%l#^(gu`+oP)U3#_*Z#+{}iAXOUx!v^wZOZj-XLD6s z%w3MIN=v;odm{_)+qMt*3uWq^f4P4sDNYNb_^x*@m5S3eL3jNo2Y~RHghi< z1j%}za~vo_B;HoW>#4Y)xm!F1;I*uvvj>+ibN}*ya_cGq=S&plBZvg8PPW_DrBOFO zhHgiIKp*)eY)FF%s1CmCnnPk|X1?Z82mf5qza+I}pm@AGcPR{Q`AQpctfAkbz-os< zXI(WEdl%9EHmGF|vr=(IxPoblWB6N@+QE{b0i4OkriUs-r3wq~=-4yPi5DRx> z`H9frQ%AQPGhBcql@tfsvkq+s`&MxdiVj?J#XgV^|6p{sE&T+kxHvGV4*}n<^sm=u z@3GHrJ!7&g-U15XJk;$uO-~?D46YzEtB^}C!5puw{caj zpXC?sYp(&C$WSjA#{KSPa`i4nGP!;dYvC?)d%Y>^r&hJAy>WehTP8C`m0I9HizF?o zgEEc6T~QCF0c$M8ChvR6^oQFJ`^n5a-L9eN)bTIAJ59qW{%a!d^CSlv4S^M~vnvEy zOy^BGcvKIcr&E~Tr?`?&*w}>w_a~CPHm{!XHa0c(_6c~)wO}}d8#{H*?LBQo<5hKG zooHfE*F1(TG{2Qop}b_2z77ID6!@ zA>bQ=n)X(Etd8|HUPVpgV5WK;`a5}tG=WsEzNt0Gq`NJ<>T0iV5fQbcEB%fk#N3Wo zy6O6M^YMobL9~MR@WGC8MfHo-w5X}S43N=`VK(~X zK8(~so?LV#6x;srVjD6MDK2r6oa!$GubWj)3MGE6YVq$BuO^Dyp9|R#mjxNa-;R#}G@8UmIZaY^=NxJK zxxB_v*rA3*2nyq1<}}HtIFFD}MgVhtlw5a>8})=p@AR8`J=I#8)qGIIFz(uw?cW>HUf_Wl{U5`<_(+zB>e+?aT1?g2EgCw4-vK^qQn$ zihTV%g!`GnlRqLJEXMFY$oa_V#rJVSkt9z%WZB?1_0guh8-gb#RZPpSi(nkG_fe*0 zu$}SlU043SJ8`K&8Xu~Abb1Vje0-mkNB0<7(yyuKR4?!pUUfr}X_z70xP~B}`f?R| z^BY1ME;tmZ*Li23&!Bkp}p}@MCw8xKR`H@QJBHY!-KNu^vl&B{Vb6x zO{RVyf!{09Da zIC;#^n{BMGwPn3>$B2Nfv#X*xc{Av0z{KURK!`yHvBf>fL7(>FMH>UU%vin52mN|oRIJK}U-JSl zr9||R@=(`_2`b}T&T3osT@jW0qUCyGhI6+D{aF+9NBOIw^-nAHZj!CzWyNAxCoFc( zF}60yAKG(n04EtMO2!IoOO3Dd1kXhA5?l$Ck`uCmgm|Z0f8N%vNrF+Jlz_NC?}QI< zg9md*-NUVx=?#_}XKjolAI)m|x_~VUsgFF*CFwD%PUmlKnvhRPpAUF9o zvqS-1aNb?Lv^KH^7TSFzkeH8#|83!U#J#fJwZDcTtjAOtUFXL{sB|Yio_WmSC>dM0 zO>rh3iJx9tv5UqFEP0HvubK;DTv>eHpj{r{%F=(He9UhcwwMjK{e-BTjn;;fBPXR^ z!8(zd@x!;17qEZm!ZXN1!VID>{KfW3wAFeQ$ z)Il?>ALr7rqUAfTz7ia|JK`1X3}g&Iuk3`mhFWIR%ghHJG#!nr+14bP`Jc-3#-4%0 zdg-CF9?TI2S}$}%jbq~EIsg@~-1ki@=RbLpmFJo#OH0PoCUpWmn2+69GU^(TluzB6 zg~`~2KiGtSJE3ksG5*7Io!QySDc{pISyDOWczKos=$+J`@+}?>y%|(r8=kfJ;{%xY z`>v3VjyK3oB?8Sz*+8L6bFs#IcuS$%Z(N+#I)W_AF$ObsmwGRl$ouM-RLhmpU~LT& z@~Qe5!Xj#5kwDD#Y;T9FWs9HpHF;s%1elrcotVPmyQw?_)5t^Y7=pg0jo|eSUR$ z+pC|aflze5)GZ@JJDe>b(Nl6-)4`6Syv{5Cxcu?{$O4i$N11e$0+?I-QVX$W7!!$zp%q2o3|4LYHoBK6e zu(Lev73(p|4fF#$n-8xLWuwZ;_{cX8(d~)+%V3+^aOMGcbs%awFacj&i*x-}{32jc zyJ-Cy2hoy_y5G}dH7>v;kL|kSnsa_tApQ*b=#YasdiHA%KkX!U3--i%?Bt_+kU(X% zDUh8W;%XiUU!s@7fv$73cQnG)G z;GjcS3@q0o9pJry7eE31*tOS+lUraJP#?St@y=P0sqba4m6hXex4J(tLEuqEs34FEUoOvhh*Y%%tU=*i_fHz=P8Gg zqXz4pd=f6+r>*06ceh0Dx}Mq8p)LnR&MMK;4BD5G96d!Ea=-bPn&PqrpoPAR6dW-G z;a98oi-7*vUd}xHg3s*;FY!RXMUUU!tATJuZZz1YxgwYE?P9(Z^1|z2YiU!N!;$o$ zqC`U1@H==p32-yHwMr`|dDA4uPl&}xR0atfubb{iFlDdF;jA-t#?*FC7|^{5)2{cG^F*8OywBWrp2UvK1So}0+Md;qOCNxuyv ze!c2JtI>OXW`sIs2^~^B-}b@q|KG%20CGAr@HdyD&z23ceT%ISind2gO8Wln^!n8f zh;^6Y03eKK$Lyx}Zsgw?7ce|(Pt0pv4i-W+4q6FA1RBz+&{PgNj0^_4>QiifkkvO| zBvl5O0uLSH?i@}b`-=nr_S~rM`xi?&Vbp0tTzxk3y7HpX7m(=VW9}K}-nJ zL+$`-4stzp3qXA#`ArXp(~9FJzP-rkl0xcyfDR&s6RP!g+GO6~vGAm<#DV zuUBz2%@;gM+4@sAX5JWYdX+D8e6b_*6iR58X--^-9}zBs@%0_FZAu~_6KER($n#Vr z#rgL=#g9FLf-88{Jq&aRb&*QS@v=|J38|nAWkSa9?pOUbA&{HyAq1`KAG624aL$TL zRLbOqp&L$7kK6e?EI*cWg*b|Sm)N*`4$oma>8$IFMJhNT+L3 zcKfHMH6^&;FO&l{Mrh#hP`BE*qSKD|g=f^yx3dOiQO+{y{;_E9FB54V;F8$`nM296!t=>IL);yGG zYq$KX%?uk=d(Ia60HX!ZT1y{!9D*&{Jbajyd@cBT)qmW)oVz!=a_TFNPJ+jmIY6Ds z8X3QQE2^2Q{NRiAujI+R(qAuae%AM%WDTlHHh($saJd6QZt?DaEcF@1DDWWR;Yr>0 zF_2L~efixSEF?~MIeab(9)v*U?z`>#2mXLN8GdP~^ri|Ozn=+nd2oU0?(Jqdna7Xa zd(vK~o2Rwvb!9JX<I?+nxm3&eTP?pN$^UtP@j&!yDeyIn%zdjd%1U4;IvOc#dXYgW|ymqP4*DV`!4K zLjaW{t*7gFxNk58IJXzVASmv;YK0Ae%X>qsS_g0Fj`~po&%kEkg7$N>^wjhQE_%(7 zmof9KWYIa?2Pc063-F^LsIE6{Z2p7}I}7R8Ew8AOr;q9@MCK<;8htLwjn!QSIJMTo zdZ;e#!&GA!L@19nco#>YP7X-kr#N9O1+t!gbT)HJK{K_6_od3vA}n=^WuNSPjEW|f z9{F?JYqqT^npHYgmO2U0^ zMF_(2uYhCEFg>$FfW>hjl`y;#P;)|rCwAF$uws5|zLKJBe3ww&gvp$6ipwHtLgB*@ z5N{JFs(o*0YXaWkDRs|&vn!-Hv23bGfN4FZwG0azujH$)Nag95SI%kI8QX`c;X?)$ z2FO9ut-h~T$L$s-e7O}UV*R+DExEvo?sv`-+$gwcX$^_+)8Fb4Bphs2osqFF`g?I9Mn! zecA_Y0=>xXGCDH>GFKJ#ASnvzRky4YSgZ)apR@F*;^0G+3?H#nwoW`eextVlV6F=- z6uoK9VzTUFYogi;^!}ZfV*M3*Bm(l%FnLW>hSh}eL z*vPm(uPub$#l5DKq`pD&hJJw>Cv z{`EP^MsPs;^k39}t&yu(!Vna%NBbyCZ&1%7XSMo4-u-HpqTsz9`ctZ>9IQ&{oc*9| z13A9uwevs7z=NJd0d4skk<0IOukD43 zZ}WU&nQV>?H7*5xNzyH&l93cqb4yx*3lCtA2dz3B@jb#$C5l$QU!gE&ZtJx|D6iqO zZmo*w9NUXZvez7kYDE^`ZqA&r{HXT?3#VLM|M>pqyO|$*#^4rzmiPE}06l!3A_A|B zoin>Xl~;u z9rVy!F}2HTd;l7?;l!{HQM+JIzq_i{5x_G~@_n&%He~gHDIWf%aiLXfk976xLraWZ z75;C*a3$LxglB57cYV=*@poy#m%miL`iTAe@yg5M*nHeap7iVN+SQLV@3qa>3>v~G zvPdl909JtGObYWYP(65)eD_OddSZWc`$v&b*hA?g!_DCd1natmEP^EU1l5R};C$)O3jD(xF@crJdk#W%`U4%*k8 z5AX?~h~q)El(qV8$T2VOZNI4}1-NW@UjEDoVwLD|zC%!`3-+8|HYJaj6PKs6b^KnT zS2v2%_I91>jfRf7##*qvxt<#ZXeoY(w-q}y`&J6bq*MrI1L}=n`Zha$zZs$)o;6Kx z+Rs6=7K{{}8vobFSw5~*1NQTp*^iR&ThC_m+om3tD1J03d#%qI%43!WiDUcpb9qxi z&*G!4#qXvF9qJDL+Yc)Y=`b_N(`kbX(g&3$L=*w+i>Hp#P-A#$p-nN*#774RK;3dK z<=l0SHV@dW$sUcquD#OAU(nxZ$3~N0Ge0|OvVJ810IyfSg`hkx_Xdx?(P)KU64j{I zb*3>tz%p6%deOcy{EP(U*tYR+{SGG*uUEMM>xx?UlV-fFPg4H=V#}oRdaZMgx-&cd zlfKetYx}jGFD<6hPz|~QJ!u18po&X*9U&m~rzB);2iK+3-#EkAqq&HuTP18;<#($B zd9vhWmjfUc`z$09OM4g3C&TyUo?J}(lFrhita{LqxHpNJ=K?!#7S z2gv*Mci|zC$olN>w!k)+U5w;mQXpvuK|Q0_bx7gi2ESL;f1|0S;d1nL2f$Y?55ktAKvnPV*^p6-e!-C zHZ5>@_&vTQ&8X-ye&;5cPmvx$$F^{%spJuWAr!`t&w4m>ey zKlQnye!PD`Q{l7VMLFZW%-@FuqW9ME-dE*v*A_%k>I@XJjJku&BH2Mr>$7kBmjv(r zL90?j%qM8XHUG*{QpTq7gh2Xe-qgxwN@nheQ#AkihFm-IjW84^BocZUpzO+ajw3(@7%Vgm<)Pc7B*X1a2oDW1@t4jo*qy%Qucy}qLX>6tasr- zKFqHYbB}Vd+v^5g+Vr#q@f6_M9u`o(i%)AO#m_XSy9ioXpVP$Udfx7U`0vDoqQ6i1 zcr15YjZICVu_JohjQwiXiNBKFCxpyNr0e~(l^M4GFl9Bca)m>c)|ZDG+ksTsgnFv<9#_wCZ-6UG7_C z{wL10ALo%T-&lNmawpY|Y<0ZxmD2PHUN@O`CKTPtYgTq2sk zzpU@2let8WAe_HQM7$$BB6Xvs@BWrho4M**JdB&N?<8~TNOVeMpy^X$)10@ zhTeGNZ-(j3`ZhPq6}Q2ow+F&Slmjw*z(-y&GR3$z46AK&`^-2-{a zJp692vv%yBBm~wOmh4d7B=f^SEe7Axofdv%Z9{glZ;;PW4>T6$rR%57gOwAe#^bj+ zYzXsc_)|q=dV$EEb1%_2T4yz4x`@8s=flR_FV;5}b|-nYc{NT!H70{a8f~8U=TnBT zF|6d&6L?@Zll=oUOlWEJYaMjqT-EhzNlyIp)#R`Te~*377Tf*>;mTYOD%?^KXw6o5 zY2+D$N+r&7{{6K4ON&mHcl!*s(eE%C^={rv(Vw6~R3H5g&f#2_z3lk9J@z_BBt-h# z*Gi0jNN7YW*VGE5K`W4)T<1dX<-;)prd!joBXYzP`#LbCr{HcX{}1&{xyA>w?W|PWJI;bWAawK&l+WX(O>#e%!TqqmhK? z@Gm^|q7NJu0PTBeI}AUuqCSj?#~NpSp=|>Y zfgbgjAMqyjk@Dm`R0RlW(?TYjzKQm*13>Zi3C~~oLYXZ{R0?^BWf_mIpX#Ky4rDzHgzV!0n+zclS&*OgXY?gE#$( z!w*Pp;@f-3eK*FeS1h-Ef2wIwJ;#1#h{f#}r=3Y*zl7`9b5Hh9fA%QGd;g#cb7j(6 zR6p0ig|l)9A&Fn1zYnL56Q2i2?o5AD9D7xZ?nGV>?=0Mq`H$o^SRadjzBvVVc-*1GQyPw`P@PAf znf$Y)$9q7J0!{@Cn5tN~wD;dl{bDObd%8PW@yQrhV{Qb@C>OJ$x(u z(BiCDbXYLtRg-NMxD)uux9Fm)t--l`qFgsYo06qM+fZ}WKE$+K@|u!hjjY3(|p>5+P6{Z4H9OdhaOwmmn7 z=m^!SL3DIk9Irau3T>ajpjK(rx-ZeIpZl*-y4C2F=$W)DkgG>3`*D#ua2sk7w@zZG zSK-{=Ez`wJP#=JYufN5P*X;|36|OhrW1fC!GQkKB1H6uK|J zeT+Tz;#=o-eCex2R=@0-Ei^j3t)jG>+f> zD=5hW1B=UN2=}f_UmjqAys{+V!;6=f=%Ih~YvQEXtWqFE$i_tc&Q6jYR}Ap-dlX!*_X_=?Ws z-g>gKi9S!A{lXO|6C>&yAHHR&C*gVetn@i9uhBE_Xpa8U$ilVEyM9mK#Gv#0_9qXp zzfFdU_PI2Xoz(>?*$1NI7UBLBSHB<>DlRpD-VkEqVG z)5hhE>pRjgxekXmR&Z%}fgrM(vvHWQ^a7RsDXOq=8_{3PjHk@ItxfRszFnw282SAM zbN@y`ZY|sIm7AyUv0Ok*aS$pFqfz*`OoU8h(xd#9WMm%R8{kwGyVnrg$<{hVfAm)w zgQM#7-wBJ}9*drU=_U`Q5t*Oo_1*}%7@5SON`-Gn&8)&2B!F;fwa2v}%`wB6ll!8k z3i=tC&k$k(51-nO>epo^=CeTXJe~-sA!ju3%a(V(s0p_r$?mo>2up^YJ|o#-ABE!s z`;|JQ?^^Dpr^7*$_{5E@==e4WZ@4HF!K)X#$tHSh(ItV1WZJnE()7tlZtlA_CMV?j zd95BL<>l__gJa%ELYAOfOV>DSL< z&a?M-_KXRk>8`G-^{y0{6EZR0+bi=f2mS2z%^09#?-=e&TBY!_ATiC5%xTX~^+;d2 z(;aVwu4B@%(ty3%Zn;l;Xat4t(Vf@t$6+ZGz)V|Q46#8yQBO(M^Row8hb~ozVGmlc zM*j>MF4_k?r!BQ02;$$Etp2E<#t423+x1qjPDQ!5&wHMpeDpjCRzEU(ps6Mld*}0S ze{j=KCky%9I-hPh^V@#^iEc`rqXsI2$TA(xdrV5${Ky4Tl)eRsIXztpi{QKE85GEwNXe4Qks)o-kR-p~!S z-?nDbCXoO=&nr=`-}-f(eg6(Z+S0-f`_3%zv*m=jc`nXEqL-|OVaH3a2m8#e?Cr9( z77lIyK42eh#X}$Vm{f+SW`0=il6*>2Kx8ZltGAW@08Vu&A_v7TEK-P=%z&+BZFo{y zPu?N2#uYAH#EW+TO7Nm6tXcAQE(=A7{tE(-;ZifHPqDQ~hH*J^q}3hc8*t9mHl7oJ zdYFAHb3Fx@{T$g_=Y@X*gO#vgmn{c5K(gXwp3b zeWDcm{nCjVf=rk@+@~lMBr;mf21#N#?8aZ|D#99bBXhqfs&f!idK%d8N`;qZYI-!v z6=;<7Z|JHwNbb4bP_EUP^~0Nsz6n1zYQf?U*moS-&Pk2s(XK-hDBxGeCKzZ^hx$Si zQ#=S(kHhN2e(#n%f8(WkH?DlXm}f8ZmgcJ1V^a!4S~pANFUQQ$kM!jLhSr-lUm+b5 zXh%cDHa}~0A@5T?3pwF_1ER$C^fp)v6X`z=Tn;yRYoIsa2J=gW-(Hk6%$AaF32)~* z1Uz)jvv=B86N4T3PQD!!Cy%5>^=$l(W(Q(uigmpELAH?*@}!s8EC8_WP&j|0((l#i zlc#5{k*c=;ol4TohAv9v-}Q{D1-%lp3KUcoAO*3-xMm`Xi_K}YhZp_w_lrSIsf4{6 zXS}Upem)m~&Cc8q!$4jzV>U+NV2`I;$@E#Kw6gp}!DvM7x{-hHwJYEvot8>fL+Th2 zjz-RXY=XF(i^J3j$a56FejI`Hpnfpr4zcv*>Tkju*1X_LPAxo-5sq$z~t z4s8@!!RYWe`s*1AGA->!^Iyz^l6!9bte&9)e z*kX=_w^;Yzw(Z%kjC+*#!&~*l4=)>^_ID&BBFyVOm`Kx4FD66S?Nbcg*sejp&jb4h z%7YW_|K7L#`F`6T6h=x!k>MH0{;y`@-h+*Q+`cAhB@!gF)fL{05BNvq8OgiAG99hQ zH8l6|N$@Vxk3Y!$c)Pj=&F1`hA==>TiMz^GJbS+HH|y4eyVgwLSuvopzKihF1VKm$0a# z{Ig0d+BIaH=jZ~sVZ5(u(f8k%7Go7WJjUhnGW-+t_?md%E}1F5J`eAV&>4ty4}ifIdZT7i1l1A%Kf@ zqw}(nGh{{5c-&_RQ&8>v>a7>a&#A1p*iF^$BiTm9m0o?wKpu1*4i}z(PMveTjcCqE zll#5059z7G|mC4)!ooCmP%`^R5@YrDIhdLd3vkM&^Ro!Dki03wTCQhD`-`zhkt?&wI?s0hWM ztH3Y^5q2tUOl^laZyM7*YVUzjZi_K1b@tRuqJMBL-kS&jg#~@{(CUuiPx;N} zG{q)Yl*@+J`V9L>imeqBaaNzm_lAkUX;0(u*SNrwUG0cFv{=%sAVCP)0F6RWDc6)q(bUnBtg5g}r z1gWXqxI$|DW=`MiWWU@8+V=wI)P$F~e*M3ThXzRUda)?WXKA0l*=iJ)h|3uPya}*mK=C8(Z2l7#=A;b6#L3 zsn~fl{r+cK0zD%yPyl*m7kHrc{iSr~caMe}{9UDW7ofr2v3%R-!Vo|nxOBE`yg@E& zsMnF_?3w%WT`g&`Nd#8AEc#=~c;WT%)icAU{L-WSAq_9mryWR!hQZ&w)zfh}kJ>Bd?>R?W- zRd21Y)zu(2_Q3nF)_7IYr1)ss-Y1`YetnZRaMyd$O>-A`Xn(oJpu=i=svGG-Z;4lv z?jHE*0Q1xr3kVr{WnTDsrq8QsCR~Im{yc`>=VKNc`geJB>E{>Nx6@+lHS8C;O&gmr zckTSUo?k!*8U3sTP_HRNH(9h)(S10ZC%>OhhhxSg2tRZu7W{!=-E%22Aw3@>)+6F@6YeuJ_magUg_!jp)QVg zg#+FhdcMn^f3PD;&=BOY;rYp8^jNqr-jLcGllQP9|NQN?so=7y=ge%s_j)@d$63P8 zQhJ25t>?+!i-#VDj;Oz^JY2me6Rv0LaNQ@Snvb1RJzV`oJSC&GPbnS=!CBP1VGH#! zR!dT9kDw;C2(MNc6SPNZ(`jrEy%Tz%@y;E5>@k!?w%0e~GZQKMixrrfATDJ*c&@eg zq{%uwp+JkvQP!W2qea`6WyS#b>Gk`2;N9zpbR@VK$hLmwfcFpDW*=^4Ee6vgea?Mb zM!Ub^9#Uxa2d%{dmG42Hy7@_YH-@nz)AM=|y@9&O0PGVFWSsLc8m&e-N)9@YUQ;4B z{P$zEK~!a@qke+i^lDoT^wnR6H$G8j?-TOj^BHXn z;^}=kzcpzC($O*G``YN!_a2{MN`ZGJPw%K_ub=q(<@$lz-j5@A_}zPfOn9`a2hHRr z3kur#`G8v#9If&nf&)Lz4zj$!K?3`nn25x8OL7=La@wM^+TxiRssPoMyx>fwo+ysv zPk!tR0z@4I5RFcYjvKbmX+?Tl9~)+_{p!L=`^xe{1bmKo7xqo1l5<%nQA+h~pZyOS z+wGH1Efzj=pUnsHETn2x@B^NDyTW_}u&ZT*FclcSI7o_|-g7UlA(#^oLG@U5x%E1k{{s~r1IF|b`l*b)=F<{m?x7(}^)?*~Cx=VC zAA$um-*D4m{n*pb=zjP{=%QQq3AOVsb%b&x(O&2BY3P?#MAW0I`M18q>B*Ut;$b=m zXlXvHU^?A&8z_kXArIMygV6-eYz?xoUK}NJDL8LkruYW+yGy*_hMrhHS+9ARasK7{ zn~vE?0`H3#YH;WNVZkzEPBL&k7%g zcKaEbcASVCRN|{kFTDRD^lG9U-i)Z}?yE`B<}b_9HAge&`{-{uDSBpZ^>M#50Z<1pO{bj7tb4dLj7^s`iNEJ<*J9=dASMOtq*xL*(werK$?ALDaYRD zpLO0{rWB?rji!i)QEPnYH%*k0DiG0P_RAd*ePUP>z zz^7v)m^Vk`snV4=ao5zwJ-bC%KWm1ujOJiH2AX$A5;G{bd~jt^t2B zLtaAK;KSx!(HbOO@_qihSfViLSD2YM&@z|9spw|JOvT-*2j;ZTEk`%COJy#;FUgcm zkZ?riYOvko**``j^Y&y1?0?Seo=X^*;4-9fy{tOQQHG|Kj8e1geLA73Wubp#aXCr- z+i27E2V2=JqFAs$jFh0qshi9@vg3+)BxuJ+PwYtuZyK0&%L*YzTy@RCfmZ- zF1y^_2Vh;f9C~)AIL<1{+M?mIFvc_6!>O7&no`PU5uW0apqFXI~Jx|{4t?Aepe$uO}@;4tuq`5w>5^<3@WAP}j$ z#j$c`mft&W1%5U)rm(`-=EjT=xg@#-oM70l#~CRLyc zB-2qGt_!HKB%b-}NkdDhxtsC1=eT#FIa%z}n}^nj{=6w*OkF!Z-y+5pHYhXzj3T<^ zW79YrI2xl5E7~jH?#czvM_qgxL0lfc){+pK7So(mD>U#;gBBPs7 z#3HfJd)&=FkcE-fpDQt4xq|?rO@XhEB`jWo2UG37vLYuet$hA`k;tUc1qNo(z709V z(loKDBQyKz0F33N(9;OKw+Ro78^P*dZVx$fP8ov^8g946PfHV50zWJ+TGrs5bgyb) zjD@M?=k)fO<%Nj_Q*VB|SP;mMiC*`F&h^`++&?U8zYiEbeZfy%-6M?$LTAUis@FWJ z3POLxuYmxKhin2M+BENMcBxq|MYUu`_bxqAmID z3%~r79df<<>AvZ~T_!4H%E}>LHsAx0Y?2<>i_udFeBXxS5{dNm0WgcPm_3rUWWJK1 zaj}_9S}xHcJx?mEaX1PT0Saq9c$?4*wZfqJuqBTQ8bE`+mqUEsv8^8#d-pZ7S*Mo1 z<>4nU-{Wwxu*O}ZggDw=W5!bvRD;54&^AC8x_{(kUjDJba4&RT@SRot>Y=KNx@QDn z5VW8k(%5P4J=-_wWsE;cb$Xzcy#_{xvRUSyOysAh<4<$bn=lWwYprF_EjoqQOiL+? zN}COCl*n(qljY;mxm%tKnd>L(-Y%mQCApF0e%juTV@=Y0gjsT_TPtk*Gc@RHS)PCP zZPcDatzY*`>GXL?a7UqkVZ2H(R_t?>N`0mQy`@&3wJooJ@Za`%yZI=WU)JHDqD~)z zv-TkOq$ljm>FCIwG=BzPP1>_&W%NPr73E_T7bYPS%pv&3-kD#c=7YIk3U}g1Le?G{TslujzhJUqLr(=5@;kgA)qCrrQ85sx}@0rv2QEUMU}7$VD@ktDSxM zTmMPn4i^VQ*vH!X%`oHdqgN6TSnQ|wHku;Z2lpFi|Lx^*z5iJJSPy4RS-&%}*YKU+o zp%$r$o-MzSI9{>vwTNAX`%NU%#fj>#ZIFHv+|1=lHX>ENbPXdVNS1KUjqx{dyx85l?RRUUKFZ&n3pL0W; z4s$B^dqqQ9OXJ7T!@US~N3`CiX7*8k@XtTeU{4Q6i0@2T4Ng5l4RDd$ko|sf@WYLC znh!v^GAgzD#T-OSfps=q2`BV|;0b2mFZ7|Uu`r62$8?+kUp@SKM&bK-Je&%c&7Qfn5%}Vx*)tj4gPc`_cHP9KN zg&~>{GCMd0g^(QeGaLek(0Z!K zhpt|9d?8olwLDl*ckg!y-oc?Z(-TT*#<=X?>$z^If^DPNR6MA!=+-6;;JuNhW;KfB z277gNz>P%iwZ{aa^m)(<5@#vAkZ{x?Vh{j~KHnVMm;G9RxFzT2i!o~aa4&{|^Gc>( zh8J4R=3`; z970b#<>`rC?)>U_K6PtJTtfP?JmCy999Rh)n2Uxi$Eo0od)?-r{cKyxvwwc&o61IK zS7S=;`|~UQSY{Dhk6(hAZ!GwL#U%TWABbhf7@waB(mAXwqEGqQ(88%a(5*E6t_qUs zATvaI(1l96s)cX}`1RJ++jAUI7>mvdf7^UmUEQKOy}x2|xv%e{Q9dvN!=d~*t9gw- z{3|hjdpS-LBJm@iS^7e;}UXK-!Skv)sGJ$(^JDMZvyo-R7>$x{MkvRAOt6iC?*9*g2;S-EMBafjoX$&5F{~v z{%SIaMfR8?c)su@_QR6?i=z0)Mu1oS%%c7sEJs(l*D};b`2DjT9(e&UobFD{0Xht) zrcSRHgOYc8@X#?jvwQs>r&F-1t)YMWjNwu+0k^@Cp9*NlwNpSMT4 zDD~~d6~scSW-H&i-@a|>8v?lmWR%TAe0l=HH##zLKr8x;h6EvQ}zH{U)vxuTeICYoK37L4V> zl2Rmjzn(>Iy@Sb~`J47NYjZ>!2Ys3FKz&#r+R7iXWT7Qcy)(gWO`=cfh!oDHNOL-c zh7dX6t^VtMoV!pGKfBn6&?$^P;kp2>10?+0@Wd^9;n#Jm^A)(N_$OX}OU>MN~6hOi==FY+T^Ei`nVlkMC;&;L|1(a_M; z=5ZgfR|i|Ck$~D}YWMSm52AE$TCKyF+=Dw+)|=tH2XCAxY=~Ufw~YOA*ppOG?ITKha$otmx4+*+ zR&+wY^ns?A!4i;Nq~`*3hP5-Oq|MK(vyQJ!PahKab^dnNzGvdqmcr$b1=ek}&&FIZ z6eXX2miTxwru9oB!KmO&viXpP3Hh#D0tSSn-G7m6F#TWtf_>`pS3(slikSdC%d)&QGU-kmX+9}jk_gB(7H9k%C9BFUO$&tk> zZC{N>T;`=bjPpUVSQ6$q0dQS53-cj`BZiq&G9XxB*)q&pA)ZmYf=k~2vQ{gudm6Cz z9nJ?9?7Lo>y~nHU-mlA-|M4w04NuUQW_cS-wW4c!XHkg$wb3<>zrjoPG=%yq#&XI& z@WAE4wv&DPxK`W<|LyPbLyTmyPp9>)ClEZcUvva>MkV2PmkcfS1*nI7Ut}zxMkcWI z3ls&7@m&L)ti}*9u7wW0~?fJPR#8E!GX;0%g#B&~6j3{)$fRgFLZk z3{K&E1Z8-UsUp=+r{VF!WFUU`G`#;Pb%Eo$@oAx#{(+A5P_5SDD)YHy^WWF05J&HK z4YPdb|Lq6yMHw>3f4@{<)hG1~#|1If;7A1W;%{p9 zF;J>UEjq3foN8c9UaSq(+FT)w1-&s>o@)+T0N|Q(y9TIN8~zqOdWQhM2+cLBR`}w&YO#cL=wiEaXaBz zD^-3M<^y}tZRPE(8{oAFOKQUayZ>A8r2bUbeMt)*m#DgYP_-HYc;1SFDH|vx8s|9G zP{`IJTRSu7^Ft&mwN&eN;(UaEC9f^>o)*nMp0lrP3sVRM1FiQS8B4FzX`&DJo_M+- zRW|Uu>G7O*iQ5JpZWrZMDT+bgzwwveXZ!|#kK*=QOQFkez~S#Jq2(K%h_GQf)uakE{hRB)LUuZ;=bdEFnIDsF}qE z$lOu?zFZ!e=pyuik7fm?$kTh5bxirfErUL*s_Z-Z|C^;`0DJ~CU-})o4*OOoOjm#k(C@!x%VIq{&z3b;ULte}4yApso$alx|K`H_ z(C4FCj*+^{bu}AN55O)i+dwt1Nv5+BhZ}498asqn`f*mR&FFn0`lKN#TnHV+{f|4g z+6l4~%HVv}5t=hlc3CY7`waa`Gy$RhgCf2PP&WHg3u$2TUq<_GgRWbBHR6{FD4e78 z{AjTX8rGLFp529SuGqUy+%=i6ee#yeUmD)-B<(lj`Dm7~&Dl=^bS{O&#XVJ-=vV`1 zjk0E37;rSU{689f8eM}zPkDQ$Oe5vn zjD2lXPy6qQ7jwY0Jp|6>a7+WuMgdndSr>9QEp+xz3g`x3L2PAPCs(B9on$(${u+|A zEta{1(h|TA+^+-^+q#fU))|gZue=tH!#~G4Hj`w)IXJu*UDBC-i-09g+`pZ1i!f=( zf^FI0OE;YD8>Q+=kcoDIRW=ItVzyOxbBd;gk>rPBY_MMx^b_JMwzTG}yj`t<%WiFC zv0ZK!0PpYXoY@ipvfrvNL(M?4=5tpb+|#~M%r=<|5;J4s)3{JDGIsQ*a;`k11Kyl< zeP{`kV!e3HnB)m}-8dvESqL}U;_>V_;=&*L$G1suF_Pglv;7Q&^IdrAw?oZnKVw*z zJYDCj>wunf1J9;^v!BC}2{HNM(}&MZ-aZxh#AwAvYx^bt)v#*nW?+WC7u8BqT^Ifd z;bwv<13HeeCxFRzEb}I`^UMpdI)?3VH9q$s%E-ZLxQ8?V$2A@EWU8Tknixy5vA)hx zO{+YiQt@C}Y78|Z`R_)Xo}d}&p5N1T{rDi1Girivrr?=NnmZljWc_}h&NOvb!oF(n z)x121J*9LAYm}@KR8vV@v}0yha2e}W8)5_ana=WMV#vY+XyI32x|US4!MWHMakaHVZPd~86X7GR&_cb6*B;06yN`iY4|&PDPPs#jRIV^dJ;1mu zxL>?hES+>aDaJ)t;U@QM-+4Twu2d5GO_2Awb_;EJaX%GT9Lbpu!dE@}zqJmGIFXmv zIz{rM^1eouC6-qAiO*g*e@tUjK!Ggdzwwj|t+K}ACskfLeiNm9CR zkmR}4#TiJfd_ib9{v43xN$lgHcV51hn*NHXDY^-j+{WYvNjhP}E_ZHd5h*InayQaold*>l_~SvwnFV_Y1!%uYE;<=Ug=BhV`W?SN1`Y+iKSszlwz5{((M) z_(;r9jARipf8+Q4=+nf&mpe>ebYS#y$}XiA-EhlHGecwf6qm5cg!8lRe6cp!8$0mp z!$T}4H6uhS!s0vh$4rMk{;0a>Xr|*EhPgCWK#8Sp`ypMTr*pAB-#*Yfn1L_9uMDQQ zn!>hC_VOd?wV4nLc)no&$_LDFE&r|%uvN3aC#wC>uz!<(?dfxQPy1FwJhEEAYb;@% z?hhaB?JSoZo!hTXARjGGFMR>-_eg4XN!sI7!9W!mVzI=Ymy>w-e2?q9#?+y|Fn}a@ z_$|)H&U?hv!VUfKxqiO!4e+uKY6XjYoH6-OooC#RBq0Ci_v_SEdZ#yE>+O%_LKh|~ zSW+t$H z=f{eZ(VR@8G^a6E>yi!4K7u5b2uVtniW&fVkJ%3$r{z07 zH0K2LWSW=5u!myzbe8A-Dw3;V(JC?gE542F1%6NaiC}Yz)I6wHkuT*)B92m3qT&9S z!7kN*xC^<$$g3TM;NOe=g{q0+hXCXa!B+7Z)jwI`2_Q0x$m{U?M!$Qsft$%`rn3k*4YY2+S9GW+%Anm3(B?6XTc_;n?tNhU97!kZ%IAOd-z#s5uA!Xr7~5-6BF zwFILDFFQXFl9w-4qssG99#|!`cYFdt2jblQQnbm8kC!|BqYmxwck=In=UJeBp&D2p z>-+C89eHapPbXM)ds#UO$&5PLn*& z(Q|nm266lb0>p}8fdq$o*Mf0C{*o&Tf!X?I`8eT{P0Y)?L}aKwm^ZqPf-HI>W5xsa zSeMDR;lr}K{Mz%HVgs1VMW65Jq8ZQ6JZKQzp2} zryus08&ig)5mICgR>47Wn?3{no%KU1I3CiUnu~<+y|c%fGsK5K`HgeLhN5^>I%0 zdV0+uUhE;eSH_flx#*E`d`rxWnlX<^1!&@WAhti5xgDQaPNadvSz@P=S5lbU5|!h% zUsdFv@%UKd+c>-ygS+0_2a}rF_vg^(N{R0?-k$+#4EjX=qSQozLAjzpjp8~atay+( z{@k(HGcqT&W6U%WxHM7!d&|H1r8?PYj!qQeM=z#oiVywGzp+1;d|Nt0O&C7B6B>zG ztO9t4J8H2?a$FPTa-%IaNDdEY;IwnWN1nfIHj}jO2lWFywH`@p(Bn}0J$0Mdqw$p6 zBNja5z}G;7f0CS)Y{AvZjgCj|%?kE9d~IFPPwk`H^WX4-4!vH)_jQ{0EIljg^f=aM znRtD+v-Al_)I3N5<~`#+v!8>B54@SVDUXzV+V_9KMg%!my(t=8euUT5GI{|L5f%$E z&GPR8_((j><6dXTqdoczUiYEv$*p6wwYx{mXLgS7p*uas{WWm1dFW^cI&U5P8u?gj z5l>2nm;;wGs*Ha>1%vFNZMcyrz(n{MQqFczx_uGd7pBCPJ1nvlTfFv-f;8sRgB@-R zN|6XHBp8#?K>7LNSps_Mv@dB-pOH8by^68+JC4o>PlY(Ob7hZ7t~ZF1uDnojB}Q`0 zLx=dw+@F1}sO|p#SYZDS%aJf8?NWH>6+JqGJMM`c{4vtYd_^qIQEB+o#apsCKq9F7 zCC=kdSx8d(WTx0xp??6j)_VXUbdS4wK$^2YTgdTi>5npv-eOE!^!ISMN0)570vEW_T5HMvpTlEJYnN((tQ zM%VmLH}F|)Q_@G-yyz$5g~G_356;&I_JUV=EWP zsZvNpjWr0`Pp@+$hkngrV~L^jHD#_YG=)9h&aOgn5~ba?8!W;&l3kKF+`MWkSi@VM z_|^EkQgjZ4yZb@JARQ^c0B`mg%K=n_icvi*-Z2?^wqq{TV4Gwxza*r(U)Yov zuZ4GIX~hdz`IDbF!(-Z89^yDf@8h8nEvSuiYf#!VqXr+z*YMepK8vEw{dSZOQ4B4F zxfBw8JH_80UoFD;51^)}UkYYuIyyzJLe|VrZbu6L;^e*<X+I-Nc716Op@+*dB=&qai3hVqWk%Nge;x6l0dyW@Xyt!%wB?0Wk!r}81i zDU`0!{vQ;Y#ZhXi@TP{2E$q|>axY_q>BpWbmMY~?y zq~ZF5eyhGKlQ5j`6>;xV_nH7wg5V)ApXY#mgJ?*KX?k+*5FQo{W-9VkLf z1h>mz5WCX9IdPh6{I2s)n$4i8lc>+aipS4BWhj2EGUvytUCkv_h_lKVB`L)e})5X==H4X+6Z*e19Kb^apdL^exOjzny00%5I1mAHm*R{dT&c z&6OE_8Ae~kVt;>-8V6BpB76E~AsK!w5&~*1f&3)m4_!m2u(}^qr^Soq{T&FVd^;mB zm;pDvoB73EhIaWLE@*{3*PrSVwzvdqoxSShjl2$OQ+o|5R9(}4mve(tn;WIbdqT28 zKLSRD!kBLvevJq(M}c2nl6PxIKPr-yd@5lAdlFWSwzwqJ{afv~U*Xygk2iXs#q}Ks z)|n1YxRcxd%y|Le0Ky&cxnAq?7>zXkkjFE?&qs@&8=C|P3gp4_D3A_@5|YZu%9=d z27b@w%@0{Zz`4cbHDz6Dd3xocMk4W;6f6=Ot2GL8N-}zXl9fC-Wsu&H!r_)aH(|8* z&pNnK86@t8T#Q~{Yt_Ox1skxt_Ye~%+j)pV%Ump2xIeo+_q`_f!|P*CThrG1htFG? z{7xF1P;U&(p=k&Zn(#4FW7fbNgN6)q>dl8YJomX1kh4fOy%W`S7uf zoA4XHKgbo&?YXD*+Yms4DlUFWiWv)&E#lu@Oy5I$fE0;+5`b{|@`(dkZO|e?Lfgn~ zFM9sP+RZWvLX@R%7qTTmu2ksZ=}+hDcgk9DCbogMfvz8+Gd8FD{S=!n?<$8Nhc`XA zwWpIQR~qVFc#(x&yJQp+zOL|A0*Mry^+vtq>uGfll{DP=2cEEwlER(o)_Fhq-#vhR zo9;4CkE+uc9D`T4q9+&kwKzrBeXjUSo)$B+Ih;=aih^Nk50^H|kDr&*x;R#tq}m02 zcb{MvRc?bTFOq&W#p&Y}#flC)mT&wC(&Rf-Z_1;qeKjEL9 zjiTk`(kt}a-OV5oj66Q09cHrDN>88J3H^5R8Vw;rB4h<5FLfY1YhBc%Z!LZv_^*e& z(w={iy}r^OTu|fp=%bMZ{^s3<3$Gu|CafW8B}%~qPJC9qs|vA7_oA3f{($`=yd3aW zzT%orlzYH6#`M8bAQFaW(2wp3=Fm*3Cf9NGKFpu&TdVw3z7qgg=&BZ`Bj$s^gGWR@ z`TK6kd0f@s8?3qd2@i1CkB=+lLz~o-&gPGx4ITEgG(57**^B!{I%~c=Uck2;0D$ywA=B>|F%wWxT6GQ!x{QR~QMwl)o&%A|3TP!K-S5LyHK{ z#VbUnCmnN@s3Ydu?-6_!^gwrlFM_^5D7^rfR>ax^TpLEWf(N3q| zG+Jm(x1VW5!^+)XAUi;~vh*0vlFaci$VDAi{NI z6K;e64;cM5U%yY2FmdPyZEPhwsz~?#!4Ua=%v<$l-&#EEcA~$SI1RZ#SUlArKPwC% z0Lywsg1BObm@eC&3(J=lxc>di! zT>2`8W0k#}vQvz?o^{KI!d7Tc_gcr}UuV$_j^ZO!Q?hQ0RWmnjoG@WaXn-G*25ORD z71^!UJ!h(cxvYB?4gP@e%&>0Hc0a*M&CV?xx2&F3A~D!!F;KCi-^sYnNI`21)Z33l z*}u$JRGIM59HjGyQDrb*_1}$mj@pkvD|qnb${^-&x9w$MDe2Ng*=)2~&o5QA+HfrD zQ-gfnKEewg_TjiUq`r(!a_8#2&^4U!ImY8SNHw?Q0N?SJm*8~EkWW+H;uoaS8{%9WmvvEqHys0kWM8d zIbH>!9sskE563-7$Qh}!2HPDVcfT(usvU>(~WxL!Qyf657>3X*n+T-zV7Go zLC~){Z$@VY1cdRK<7!+_d?0>=P@0@?MLPrLHSVXU2hyM3&L9vQLnq4fyJ1n^eG??N zqmLsy@el>?(@mZ4i{|W{#xO})&VOE7azTgAkGO_9uO6bdn15!HhHY!dCCACoK#n@Z z`NGoeTaUVAk_#A#OSN21kFJj19YHyh1!e)P!{TzJN83;fV%|i?t*2k}(A_TCAj$F+ zC@RtUCH8I4>KytjZpxv#z7}*UD&>`}>?dM!&*rBD?&h)-Gk%H!12u|cyi{HZIue#A zTGq*#hA)nH1}3}kcf2?5tKhfQVm>{YjN(d?M={PnXq){pM@CgMU?4Ml=LXL(nHN~uJ*tUu+!y8-YXz8> z%o$6s)bJN^xjvV}eV&#usqG0MSbCVoYuOjaB(c!ViMJ5Sb~&r=Nk@IT5dw zz3I#IycFfW4;SB$%i(xtjxoV+q<}XcTe14Qa4}#L!+gb6BhT{j;*b~U{*UX5t|HJ} zxW_~NUtH@P?>x+Ky_qF6Ro*WfE6Eh_V0i8*B z2vr^;-ED^hDr=y!`+NMBNVhNnMc`W!NUox@Y7$A~^R5%?IjJtlAVc;nWEfswa_e5Q(fw+ClJ42R6tMjC)5Ej1kWm~uxU-3| zkU4dZsA0@;&UB+_w*NNx5@r8kej?$y6< z@bc9o8_{s_S;rsq8doB+9s=9Hz1fPjJwgiFdwTO!&ve(ktL@0UV&xG* zwAuKldwI783$fdM?Nc>5u)`r^N_kHnlM{9722K3T@2!5`{HmZwHBsi`^!?_C2 zN}4l|d}{u9mY4QRJT5)GPW#IAq#;O6b|4qM9N|=Wb9xj3Z|`-PheZX?N zs)Dl)kQL!|12XANK>rh8^L-N`J^&k0^<|A^w_2=qA8jwHDqDFN4VbVGy7$K3rk;$82UHUmbYi(eJk9hl4gITMFW zUNK1ESGg6~nn?R_qS{U+uEy2B5^5fwlV|w z9#nxr%YNV{$;1m-12~HmpkPY=Q z2vSz0#=fX;PmWzw^O;WDS4m4Le*|~*l&dta?Dt$Vo$GJbQxNvQZu=~S{)orhvfl#{ zxgCBq+Ujnjuf_J7tS}{DDe+50DB|_4P6Xq;;ZE^pw&{cIa6^ASg@jg(G~7qvs2>bq zBM2ThAh0=y)GMd16P~%8e2?66lAt4n&hY(af0wM+#}P zUWeCzW?j!=rp^C=xq*oG2J`t`BE9QYXj^#-WN}}bO$GGUHO$f7o4;mG=0Z55_>};q zE63cAt@COCF`6O29|qGpRvMq_GEq7$3t zV*7hWfKYc+!6)kH5=j}^r@H;SAVkEyxL!`d_xc)6;Z102J3n%~!$)OzgT5-dD)r)@ z*&mQks1m_x`7<&A(>LDdy0v>OnP`W*@WjI7n0thCoA-bj<}C{+9C|!KvT{}DY<6HL zC9!pI-1azQvxb9TxMmWg?-XWz{`u6(B3+u<9cUFKhe`Am3(z68c!$p2zd>k23;n3M zwqsX4orV-C01RL0-E=EmJ^0FI$!7$6$?7?cb)hd2mz5igre?{FFU^Wv;r67qNYNrbSc z*!s#6;JiVeD;taRpgH?XTnW)6VVC+{Q}nW|mF2iI^CnP@u$b&I)yDJ_FJ|xAt@X4} zdA_ipZ&Ol7^-b+-xoH~26a~ebx&2@iV+Wto`c|8*TDp?u;U7uo)upNuMB%?g4v(UM zh$xcbjhqyfB=GCcX3kn?-8*AI2Al5cs$Jhkfhl!2rB;y7!zns9%aGG!yd--W`>x+a zNLQ{?+-@0*p)VaphB~tj0Qe-t2&Y55mvY~+#cofoGa|XVODy*NE5@8uqh)7i!TP_lJ=IOQH$4 zYH!^y{fVA83zllTk$`f73mX2%t>>k>GZI}Zi`p=SjWl?AA)6<&jtA}S z?XzasDOYr4y;-8XmHn9`VMQKzxe-#xU^OdqhCb;Ptex}|&FOKT!>nYF``7(5jYsU_ zmVo^T2Z~Em%m=#v!G8;cd#gs0YtL9H>8h>=;n1zNEB(r1s>%$!pyed9raye36`g9b zwvQZ>1dS6ou=#k=&|khv_qXp74B)vsmZCRw3H2g`M(YJUgLOZ2lpQwp-ieZ-mc>sd z^6T{H+NnPe^fd{kP$De!ZXEIeW=ZEq=^s+2(T!{|W#?b{$q z>9|RxWQD(Eh5!40Zt3pAfQSNZ! z?%>OTc4Wg8jVn{#7rB#YVo#6Am++`O0L72M{6=|a4!#&Uib5DoJQ1sFF?C79T;z%L z<%B2jPa~IGyW7}GWY1rY`&vw@*E7qtW)jI(3mQm*>|K7)jsmg5PZzIr?IZHC#CfQ} zRf5lnxN%l#lkWr#O1C9bw*GV8Xid}necV>KveLobcnnPmN&e#yog?-9eGmi*S*Xa{ z4CO6mGxmRbZi$&;MmryYx&*czbYi-EaJ?B0it0X>y#lUW3Zp;2U_b{4*-E=+U*wTa zXkkzJ#rOu|EWntwW-d_*l6!`nauGvGa*aOxs!ovp?+j(Q@I2$gux-vY+wx zp=0RFS+2i=m!!WOI68~Hn!K8+wmz>%cLZr#@TD{htG1W>_WN_OQYhGy4XcH7liHUG zy~6NHqtKt{D2ll!~N(yVK;cQr#giF zjJ_z+X-kJ8OqyQRCRi#I78ra3F;yFAGS8R}3oj(}fe~!XTFPYg3g0Ki?Ff>M%F6kD z@KH1p%QtoG$nJ_b&mX5oo};R%)d;?Wq=s_*%FS3hzwADsuHUy;o__W1c=aXo{$e$x zM(OrmQ*vAASIZMAFj~e_X(!+BJ|un+TYTL9>LSL&uQIZ;6oB1_8WxBwsaD!OWb+c^lq{k@K)r4k z5f%!8?VY$zwus-#QrA>x(FzHjxwFh|alG%LDH~l`c0FBq-tb@Sd;NCBR*qUT2<+`X z|BlJ~CjaqdrYS3*yVtYAT$_Qo>}w>>UUA$L9NCl^fZ6n&rAs1)zFOCn@+ zY1z4+!Y71$TWWt^J(%|4G}IEc-lge-6JzxNejr|fAN3i13FuzJnJ5YMiq5WOv-E>6 zra65DFr0mp!*&EJk^1bQ0R>(L)QNep-0ifrzmf)*%6z^67SzTEj)7M^kNKPY3N8Mc!sk0;%3VOW+MhxYHb1FpnkF`ehf^U)$qJ zd-b)>fzm$04DUB=je7`jRO_hF<|@Y9=DAX@+dsl?Npwcgbp!nkU z8Hvf~MzYWya7M^4JUnhj3#%z+1W*n zgX24rUtGPRRTzyqd*!RhSdAX8e zZL$-Ep*s8I6bqO&F6$ZH_UwE~MF&;H?Iq0b5T;n8Fm&+cVT5-0y{OxrzC3_Zp4U{t z_5um%cekHcY0bgU&=6?BF7;{(?$gxyeQ;vcP-xBv!=5f~JkqRno!5g!@aC@xYS9kf z-vU*sC2Wplj5e^V_1Om_6D6)XA-`yCm=ZzdmQj*IyI~4I{XVqlV`|E==Zqj^M#%xrqahLfECayps;OACl)b3u z09TDlf}%vfuCLzAA59Qt)AobU?hSqRe?2SooRAJ5Y0?74qTPF|mbbDZWaB_I{w#~&3zx+!mV_cw5-Z#c44^IZe}=zeQP zI$%k~Fx;m!iqpvN`N3D{^rbeqFa2p5AbetLL|y0?PCR1eFRzGZ)+j)WMto^!8}^RO z8}=i3#XDRL15FWK!b)SU{XU+l+YXgNipxLta20>a9?|2ovTq${$-7Ix!9EGo!S!!b zf$~3iGX#Glk%;*OKInPiXsw<%@Iv?$#dS{YwYZ&~Zat6@1ymrE*`1gyzWH&}gyPx8 zm=6k*iNf_$Jg(Ht0o68*F=(9l6D1$yD6jJabHe5}fLW$jb^AnpemFNC)m;48)-cQt zg~xn-|HgTI<;G40ZUq=v-==zx{8F~DHZG8~({n)s29`r<`KI+3DtecR2v&dU=jB-O zr}%2wD4GZDmk`CvII535>Y(`wj!vvbXk)_as|mZ!G=Zs@dYxYqJ6GpZw)sqr{Y-lk zKjdk=00m?0=ADYyf#~(?HPLNnFgUDfzjm*?HjI?1iMQ==$v>&s`@KHE$H;IuUk()9 z7`K4t)!rI>WICbzX$dbWWSyfbw>S6zWccl z$n$#MvD{DM{*}{@dUP#)kom7SdimRB+~N)kO5@qW6zQk)3CT^d!@sCezqVzAeBt3p zQ0QXHB+=Tp(wZS3T@H3o*y&n)OnR$UTCe2s!1D4}o!h)wijwywd!2r)`1zXtj9oUz zx_%~d+%xw}^Tc+lkduAHzrUZtb|$QOQvG?|7B!~J;>;5Va8;a3y|xMWTTUq7gZvDl zWg?z2^#i9UAc@zR`GAs1n6b)~Q?3MPsLUN&wg$FLnD?){VX7l*2`^ozWnJ8|s&nxK--xv*+d)UG+ zXUlYcpXlplT`x22J?mXd+tr~8vswq3Dl_=X zWm9TSWN64L0G}Z{=VN^&1lR&gn!g_29?C}cB6*uQoR+0;V&Z}}xwq^=p2s|0Tf~XT zqg;;jJRV0!@fWnnnt4wKBY$!MUPS0D4dP&MOv47MI?#9Tv2}w$&F*{zq2k-GdBw!d z_3TWCY%S4{qqFShTrdkdO^G#CvU=aK%d;G@!jf!HUiAlS3G_oMy3C=&HI`6y2|9+0 zsI$Zn-`~qN9I*jDh0dZV?mte{kCM7|D7IRMZuni5Cbv(zGLv1h&nDzGd!f}CHdgQy z`WQSf`W@U}S~v@nkM}GXtMsxS8B}8*!b830_hgAc+n5`b7U$@!&Ic(CfWRc8$%P?H z4cP0wKI9p;gCt{+?(=p2Oq$p8b~6`e81^O=x_NQl({h)MSFr-gxj0XP(CCr#xK{%t zY_~g&jo^vx_4Ga1<_^5_==b0=;ggoDEzPN9B|C-V3^Y1iFCW(@<{J|H2ZSXbFOLqV z;I!MZNY0#oDg{>iev z@}o46d$z)SZda{d2gD(KB5mI9Tc#*OL%0Uw zZy4T482=6a7@-kPeL4>#GzrF#^zI)2b5?&#<2~%%rs{f1CgfHg*Z#TR4r4={k|S-z zN8cL)`9t4Mx!rHuy*0b%o7d2AT8baWsx|i(m+XUUeL*1hW3?VdPRHrKe=;lvb2Gno zWa=bGIeWuUR7z)Uau}gpC$ECgNyQo`*Hz#9UsU}lQ+!Y57&YyASh2V5N*I8uJrnq}~JjuusQ{0pCOtE*PD> z6lU>*FyVZNRc<>fEH1kc#o=pN@8jHs$Juz+yic?Xb1rBk78UYXW^?lcwVd_^R=jWqfyM4z!jGx#`pLP07A{D+9-C&GMZ3i==6+r)p`yPPfpDgSvx?Q25 zPf&s94*MK^3;0OsIlRZm$AKp;((QgkeNSzQ52H?lOTwcWIaJxT6wlAmu6fC6eBuxQ z1N=PXulSU@vvJ%pT!3GQ-*rz$@DySI{GS`mr(;>r5%h$^AG1BZ{V29XPZ z<>L`GJh}&GyImRURGW63me$6GU9z%9ppdmdpLkzKk@qX;CiairRHMv;i$|z?f)_|M9nPY~85p?t zr`-CtSg$g=jJ=XW?F-+LG*e#GT{F~JugUEUlRdl*SpD_&6E?8j1`3prclfxm!rPf2 zYStqjAC3EYj~@@%5{ByKhqtVd0#r}GEuUyC^W*&zcO138qkWu0Y|Zz-2$=Ll)Jygo zQ{O{$f79*g(?PVpzKcZ*FQ&3_Wv(#XY=XuhWAn&J+Jf%@pH%dg@Cco}R7m^=8(Xrd z&$YrbH5_Y1`6znFT*E!dbu_qI;_Ks3bV$>Do;*rx*(VTbKE1ase$HFvccztkd+c~g zgXFQ@=m{^-tS>|ww{9QeHsP(+U#Xb65l5Zoa{V#OpEEkNKU^4=5wj0Nny?Mb!^ev# z=Xeu!sEY35TyKmZz?^|l#rC1q8Yuau+}5xozcD_^T`ospfcTg9yq=-4!u#S^{@7#P zPhT7kHiIDp-i^5M1Ay70IEA_ytM|8(dn+wMv2P8z)D1;nNfUjM5c0kfFDxlA`;&RF zHByJDtM&MMHBwpIJ94Pg{tbgc`eVJE<4=4`qpjevJJ9G4H6yH4V!@r)rJ9a6{+iDF zT^vhEyp_?E>Niz`H&4*P#oW`WJr3jjdF(QdYHJLH_CQU)KKBQRG9#HW3Q&y_*L#`k zVj{OaufK5*xaZQ*j03z&Sq7ll^7sQ*t_dkLY^ljt0eI+fK0(dbG3H>z<^hB<^-zpC z5s@&m#rro3U709>%_np3g9CdgX7-l$vS-k*eATqltnIEzxKOv@pJUqGgUziteUBAq8{F^bRk;ojkYr(c>LgbNb z#`mqMwL=e9W9^53<*gO>1R&`svnikMzKk_JLk#-pv&}V&HdgLD1523@8#8%l1S^J2 zSIU{bLO#ZYgJYhdUW&Ug-jB`$1owLs_PY|>Ij9;cd^X?bL0c~+0d|WhQQoC!~HK|ceH;6e+|$`4!lPDcan%88Q%=Y@iC@i zwfKaORd=TH;vbw5t3_0b4qc){A=>?gC8gNEQU*=L3D+eAG<5h?;P$~=c7Bfj@n^>` zU~}E>*BZ}B)y5E!hx zgLX2L!wYsT=ttj;uaQ3b^C1|vVE@AK?}P{6e?S7mh+%$>hYXrxO~^XE^3Y03kTA(C zC@P>o23qNbti(`|d^)5^lZNM2g{{c*+#Qdg!=nsITtn{R56i=vt6bE-&u*W7k8v#! z-0val2M^FvZ&BVIV*H3s$6R3&RjuYstGy=!-^B3xLdiB>`q*8~<0RO5dwghzr(ozu z+WwIVT*7~(t4qBSUjH;g;XavG-&j6rDM5}zT5X2J>wB<60(&k$_KR{luuZn!vuGIt zoRWgAi9_=Huxe^pA5QR0z@tAdV&30O=Bm6dvN5oXrabSH-`rBe{BXWC? z8i~KM``(bKoX1}8xYHjeW0UGv_g@=pbd;?4fCuNJekDkxA` zhM_IgFwV@K2ZX-K9ywkw9``F;m3%}Qe}M4eyWijY`*1J-2oJRD#cL2H_8kavJjTrL z4Np_INed~I#I4i4$k&^(A4_}M^j+3RzzhI~sZwlZlx$t-?GS5jM?EnUDlu<(aLw0454^BhuNgi(OJCh6x>xtP- znroV3sDZj;Ws{(l!VVn+SBX!3TGj*mqX}cH4~aqbeSr*Ed{qmMJ^lF~<7F?Zvza(| zl{jQ!)04_hhe|M>pr!Nx%G+r{Mr$b zYn)NO{jsDwW%%V5lcYj zqm9xjxdHW5}ZXyCxsQ3A;9$*sieGz0+_H1$;x`58rJ3ka$jiR{U^FvUy zLTVShRnbcKYfvDTuGP364Q)Peak^sIDdL09X2zVvI&;dZ^H{p;qe)-) z-lv#UtnMBH-f=a`I?ZX8C@9nAIDqP@X2@n@f%6@)M~aUVss6laia>?fzE>cyXHc2H zD)PxdwdL?^TLmDHFL2#V$S42ThS+M8^=mpnHr>bN%Lylf{Dmjj-yFo}^2R~a^Z}|r zHTv6mMN2kd{!`6%tL(y2lKy?3S>4V4YfFgCc|AGz!bL;C(&MMR-u81!sOoJM1^SDb zW&dtX<}w6Q7QO*1S1RMJ5#6#;FSkNhf2>IR#j9FdhiN=wdN5!;!Tp%R55}~p4C6`Y z90d;B80AYJB@zF>Ve^9CA-)^8-xu6@<9S|&)O#3~8C71&o7uadVUvlMwryVNJKtlU z-q-D2ynC(k#==_V!vzF;TJYNR<nrm9! zAI##cW8CGJWS`Rp|#hLU}}OuS5A2L*qz%kJ+o zzl}!0+j(>7&W0jlP;C`&Ul> zC-lgzn@tz3H5FStaBVOmVjY8^o2)*`P(Zp_;IoIj(3+X~x^T zM#6(apbia(A6Mkxx|*JmZO${Iq$uvqqJipWo;yyo3(AN2_O(Q3&2>OGjdy1KsEdva z7LLD|KEd15Qrss zyI(*!PR4mSr=a!;6_=SemyooE0bjj(R%eyEv}}RSQlr`bxD8HSm*Vmun=CE>4OX57 z18hL09k@^J@x)Um%%;gzxGQbBGK$kFsrj-rXX&p95;KW)c)ToM2L`dpZkk2%r-6B# zV0%RwIeIf9b{og*VyUU;RQej>#4Kbfg?H8l()q z&X$WGxR78)ecbMSzfm6u#m}60bqd!~=c{>8`jGjtGfXj8-?U}hsw-FV6&S&3;x4uV z2ht#^TDvwrJqs?k-Vy0YSOA^^6Z*HroEjeuwNOIJ^`Z9Cw8 zmkI$+N1ZP6m$5!W@fFR-%S>8`L+Qo>Ak+Rl49`9$Xo-P;#PhC;IM`yxcXNUr*H`49 zn)UFavi;-Tvj=`IA8Q|6ug`Y}D=^KMf|IR!oOhuUiO9|+a-5g7VW#_${uamQ zV<5m#eqBDo7K?K%s$bYuIb^Hpliy~+fJ$Awf;qJ}+)HUAGs(ROq5c%S{^96>dtf~z z!YA*RQV8|+;`pUsjq5ROO%*njFFd}P=@ZtoTYViU(}vG4r)_t2s$V@vPAeoV}UHYY+R8_o`H zw)DZ|WO|17GTzO1CT|Shuz$Yb{Hfl6P9h)c>sjU=aA!CE#hRgD+KeX|*4DkwD%5%V ze(QSJR~bjqxuLf6uXy~+ap`ff7td~3Maw%Ny^yCQq6A6zh9$`NWX5p- z`_@mhPZG;?7ml*X{xYGhA@2m6|PP~KA$%cRse-)Q+d#WdXCupJNA zBDgqk!?SOZ%|W}3mza29Hu{;;VQv#lJS7`Z67k4$r{hL$#7JwTD~z1>)xas9UiL8F zBC*&M9dAw|veBM?64H7fIC3Sv_{RO!?IIV(O~ZutKH6vF>um9U+3lBQaWz``fTwdTlYMkwVCybtPEv%R%=9m5hI{bKtJExxoG@ZgA^ypLWnQm+u}@pKj2i69veO-w)5@0jp@x1We08Sqc_xJ_BUUkJK6H&B9JY|1U+= zFbnz|-LcP)>m4$+y1Sy!fnqQ(tpSKVMnep_%U?gp#-%$__QapcuN#mOQ!WJh9P;~( zeI1T_teSzsPJbuG!`ez=Bl4Ee2P)>#a}Ovbp99!yUusBID!3lVO-i?Vf}B~x8G9##K2*C#cKU@}OXqQ^@%G z*q-rKXn+0m?t9XEtGSmaJWFOR*{jz*fcSi)5BXK|!OL+Q?0b{f1+D6(SI5bI&(DIq zy_`n-q(FX^4^zCawr!flT@XM@n+)O2Vd5vjjrI_6A7A1& z-eM_iqQ{XUs^C^z{4p4TPax!`Sr71*`dr%xJi(Op_qwT#G7X8@Lh5=%C|uP={l24N zX?I_R4wiTIqQ~Hkoe(a5FQS*fAxH0uyqiDM)2DjDYA{ZF^gcXS_6-jT<>P}(@r-8c zqysTi@#I#Zds~1!qGjL&GF7P`!QhC?bXls1Pm`kR23>y@Naf*cK2B8;p4?~1f2VY5 zQj$7HCsY=mMWS2}1{iOX`;M6{{-7W%=CKl8MuyvN?rQNg#_h=gctdJ8T+YnR{cttlRF@r|A(zHAE9PUFLWMD86&?1+vu&$k(epGq zcu9Q4#=e0_$r3n3ir1x>*AX^Jx8GK7L(%3lB?poX0ZH;ivzE;zJ8nRl~{Z$f;XiHv>-w8oJmE-t42E_b(zjZ~g&@dLu?%T1pNJ0hf@(C`5Yf7<*Er2725t*M~`wfRW<0xn?9&7gF(96%Reijc{Bwa9mfd!dSM_Ei%`1K z;vbC@llrh7;hOsE@mwkI*S1mNXcxby^5*f&wPRmAa-fATs{dLNnxCB3u&8 z$C;A}UmuO=TmDT_hwus4KGy7u3+yGER%cA%a5d0p*CHoPaWwy!+6O(tHRxPptH|}i zhBkctedWxrjw`N-y8UUI`MKHN7>rNqmWxN&A`{l!l`0FH%h%$ZJ#@_I%?;QanlAWD zr&~5H)$DOhut|RIv*2t^Uah^{~V78_cMS23PN zSd}Woyo3>SzXWVBlt7UZ*qp_WODDUR`@JJss4{Zevmjj=K{?A z26M{1f_w~qMv+PQz4&K=4ZqR}Zen*Sx}#t`P2VFXwKyiG#0Xb%%B$_I-O;)62(c}} zUO?Ix!^;hYxa?GBEy2AQF*{GAk4_U^gT49OPxyA(uoR$A0f6u_zWI-9k?N>l{`bk zI6OT)W57^O`5jEXFKVNYRh5vQoQy8kb9@7Hefb?(pe zE$UHSEWFB&I}X+iG#feG_&8bia3Z+puQWo1ckkKt5ung&FYjURng0Q2gw;wC*>iof zMeofM969Vu#`LyCzh*U{&6ahaXuDVcw-ecy0w2+1)e)<`jZp-N=XHEYHuYz}MTgwJ z=OnM>g_H&5DUgmp(BL(fKy!Yh|vnpKPk=*P!- zpUw;{-~}Xg{DG74g>0~O%vWgdSaf?Xq6IIua~GWt21Po=XamvLz7QH7`CLefoz5a@ z?FP!|=?u2Y#|Tr~B#V)!Rw1&@%E``R*O$@t_uJPdib@8~Ls6W(CcRY!==7zuw}w(Z zj$>U=37YN)qMcHiWxu(U3{5agmkI`?h0PLz$i)gjp_@YTW9Cm^fw!?~yQkY?%AKvp zzJrbbN?&J>J6I_!LB((8@Qce>UrJ|o4TN&_?f(@svK(#)4>6% zKU{E(Pfwsn*pt(@n?M=0pFqSBhdI~~W-IzN?{n@Zzt7NK^BidnoR&mGL^}|fcmVs> z!qWkj|Jz?UztiUN{+x2|Q2*ev`6AlEt-kx@d7V;ixCv-^wQ^B|ql3AJSi*a;j15Af zZWnM!bEAZ}J!gZJo13h3=x=>D0<5wUtxBMenW`D!9~4@^9)y|+DrhnNkf3j?a&rTXJam$Z!UOg!uM z>+H=(lC$3w_!n1Ze=+4vm+9BIub}T_EB)*DXA;-Vl?En0&7{e%_w@jK?we$@Jp%Uk z1B5eOL}0BDp+`j!T`4P)gg7kP51*!FM}zLh-UszdFtgJBIuszxj4X&h2?=IYMZg<^&W2>|wT6KBmBXbP z_aUVMH{r+Jap%P}2^^fu$Yr9HS z()TCw)yMS(*8`aj_WA9U0PIeee@x@5njF58$QNRXz`6mya_CC7zgSjFc2i9I{{JA&$GPt~X2r-RF_ z$eFP1dzUtmU7+LEzRjm}I!5Q0wFl(~1(ume!!71tucyO{S3Jr+el{9GAme)+!%vic zNN3cp_8RD_IT~nf01Po1FGpj8%ZSH4u|>0Ev?*J=Yea(tkB zDqZ+RkfcL<9;Mq^hibPzt&x-T^_=f4m|?!;TTZ&}H@PEX1^jQ~?)yZngz*9Y8~bMu zv^5PgcKB=Kfd~5Uy>o`2(rKTrU^-W8LEFM4LJ~e`l7l;LJHekU<~(k{zi?EA$P|ZO z=W~x+0MMHIE(>p)#~-B}t%O63HAZQ?a$>R#_J$W4cI^bBN=Z?Ss4mSG-h}4^%f8TE zZV4=; zsV|X@{qRtya$G=K|9H(I{mEY#Z)6B>3^XHtHys;#{g zcx63*w{hsuKq&qUm=rW?xd}bI1CR=kj1Xb=1a5;Fe00lvAsh9=;FEp_k0>@0Qdv}Y zEKJYJGn6zid!O*<-KH!%lkjQW$rei90tk!XxT80I%OsWs)vsB+KKrPp7|Sf90;{|F zaLj_U%r=M@v_-**8N+eb$L{h{li`D&R8DAK;{DcB;ULStIuvTcCRIF14C$M=9i_>@ z&MdjjF=_@hm{FDHp@EtmDzs;VG@mYTX$s?5JE1=k6N>!_3j&Cw$+^#> z{tVR^{&Kg7ofF_#Xirb`I{ev z8O^15(vx~~`)IX)jh`@ox&IXUvM2ODgumD_4AT7H@dn2k!oB;OesgFTc)gX^F&8>> z&~yE(QoTQD>s7kf-C#YBeBBhJ;^yvhK78l?^H-6+yGeB${3AGdRJM=vG=H-7%S(@x zs2g2b+mViRkCpBVu^$}MgJOL|x-m0*iYt0K(z*Q&)9TlhlPSwx&g?5^A-nD(IwUfe zQA)YF!5Yt{%@ub=q|=5-tHddXzAo7)ZG?7S^9%wk@JbbMgts(G99T$lq~Aa9=>B;V z_UuY;vWNW+*8g_CyHgjym-27jZ+rbk=r*1sdGuG|_xGc%eGKINs$Pt9CWesGghLTW z*T->s#_}I?XU4Pm_w@uJG}L{vidz9Y4-3}8?;1?I?`2X$q7Ob_z5|J-V$?#Ss# zZyNs@!6&2Lhz@=5{i$Ps#)#l&`e|^A8 z(O1uZVZBe4kB_gSMeOYv)$-9s%t6YzRGnmze`0^Mhjj8_VDPR9wOEx+>$Fw%Q4~H0 z%?NhPeKxgw*uB)ZGzs(N4bS)M@bMDIzq~1etrmbhALzMFl?CAR%kx%A1-oehky1;H zOe7KrI>4eWvo#HDvke8*zU;i5UtcfjnON$w^#_E=&|Se8eExPP=rVg9S*NF#g^8h) zH^opkQo&L)xNL^gEK~Gxu99@bO@Q3$9vrnL4LF;_R{Ms*4nRc1=7WrxeNPBLy{}ga*Ta)sebnX*Eq~FnM4K~UCkYq)%pRFe z_Pzx4_IwNW{x?G?LKK_%Ivo+kV6bRG@FL5SonJu}m?xKe*J+mDZtV#M0Jn77IKjWrTC z3bDy(4Ny{G(?Lx7C|w;~xzqbMd@g}<>#G5L=+{dntjn7fq>db(AwR9}^2mK|>}{b;(O8hcDxK5U^mp0=B!%}#`pm`!E?R4r+WqGZV_eOw zyw3IhAa?#0C>^QtqK90C`)1;zkAmh$-|((q`+V6yk)LgW;vWfXwwL!<$pU+*H%syH zXDN$K-zu%YSD<<*F(!)3+3T|7jcY~O0U-Vvwr?Q6{VVrCw1Vg?fSfi|e-(L$!A{J+ zn%h42+nT1#id@eqTM{LysE8H7rg(QkrS0c%l!ji_F4jBacLkvXx8~0%q`U;8>5#x0 zI=!`yxD4a?WKSQeO2WGQ-0cJ{Ik(TBGo0c)DaVS@*11X`;v)>i$8Pxgp&%l5O2?P&PF4=CkPds@1sn#zEQ7ik~8n> z4jhHrzgq9p&u2+h{nEITHPBw6@Lo-|Z|k{;q!;0%Dwr$96Fo#(f3@X8Vu2Wl1^} z;)y*qqmeWf{{(I*o3pbQ9``taupMzVxf^}$E$oxw=S502F+X(C+=5y$;KR_q?|H41 zFVk1vLh-ka|LLGF#rMZsK(hH8S|EO7kz9`FGbjLn58_{FWWBD9MeDC^%ix_ z%&8QHfvw&6s2_2HEesWj^;~t6#(Lsc2G`H)*AFUi-7CCsZ472B{o^<#+~hG ziu^Bo?EUt9w-4NQr`D~1p}tH^LE;0Y^_8e$JZ;a6s1dJ-cR;7O2jWf0#jf8a+oonQ zqjP}9*YC}{!1nPbJfq|nQsVsk_SJVbpUf^>mc}W6?3els{8vXgUD+vcc;qRSE+S?>gFnaA2$eL6`nv75zneWn*$6sk`}^4E}W)eqM@Yfz&%SEuRP z4k=$;pfbOBC`w1f(TPL-<+5zqveJFL<}mqROwMR z4zCztT6v!j&`}QQ+fRl-ulRpuxvQPJkH6z-_`ce&WR_4yf1nQ0t9~JG-bHOqHT^Z|^BJY;?cA`ZY@`j}Fw51bf2@!nb(=BQIS9><}urOFVA@|91^(-f9eaTX!Yj5C>vqMLwQq6GpHWof1)VlH+A*Q_F-YXo{quJ*&gs1V zNgD1A6SZf`YWJ1*6{YX>L5y$q!AJ=bj@89^zs%@biv2pHAeqONjZ1l8)Q6=EIx=G3;di3PcYr*9=tiu#!)gb#21jPlm5<

      bI7upz|P*R0}M2dQ55PC~j$c+IsvdCMO2B7FmE8& zufC_Fd?vcX_ski@X$s%0;|Ohu#exW7bC_QIMY_81{E(c~WVk|V_YcGb2SyOxDUa~U zjX#k)QYT37H*9M5nc}t#FHG)(Bf`%SM0EIn@6pv%Q2HgZ&gs}Lv$)#!XpuyqpMSa5 zcIyvh2evIir(%JUAL@r=9j#3M{t5XjW4>RGX^#xlU%UD>ylIbgv{a78s-9ikID775 zS}CKdGmXT{Py2d&Jbg|dt#wT#e)&aJNbblU-10<~<7m10gZXmHc7e&zo{>mF z4Xl@TFpr4s&>4I&K=pbLLXkrM0xfSuq1@<#_QJm>lr|FEMM-h<1NwXCo|v^TslPfU_b=o_Ysc4C`LR%gW%JG6|#+ zr_HxZb9~+*w%DUFLd@l=d>v6!9ttRiKn@$}r;vv9b|$F9O?9J;UNSfl%Xz)u+q;x~=Y+@-%8`Isbg-dk5PCj}kzjw3mV!PQlaNMzMyzI07rBCVXa42>4^m|JoHUe&etR&lIt0!$2pGb$t<+uMk(5XRIS~ ze3-^w+{dg^+%Wh6JRoad+k=5Fn37~Jn`m9hPud6F@p#T%VoVj%Wf1aG2-e!JI#E<1 z);w%83{<)T>w>M)a8Np&TmmeR$^MXIZCs?pp*OflL~n@Rj)$-B=dF5ggZb6D)YiaB z69~ne8sFNHrY!Dtoy1AR`CMtcAuaqsHyT=}MemFrP@=3Tlb9~IBktRq8Kafp0?i$* zHHrRRdS(8waSGJ(%c6ZwKph|!JOjoOME%tPCJ)q#NFR;5FIs$gS^|6T;!@Okw{4eL z$}w+0U-%;s9)n~fOApsfL5Ts$S4`c?2iPcc zZ{AgWav&#k2M?>ucWRBS)w|6B3_Lp*_O!qRQA#O7R?WiGzP$(6Zy?Ev&vucW%)ayS zH;(=&yiP$MAhJo`PS8^Dp2WHEb90SZx;n$`Srq&|#!mN@4qDLj<0LWNS;VRgfqqZk z-HG^ia&b=UQY?6|?(bjjGwNP8B;y&%WCjOR8h~TuXuOXRCo?fyJkR%GH6SJ8I}~N7 zmKrmBb5el4@*B1>AM05QFySzY?rpNadJw%JDeZR0lvfS@a zDAr6VFBw#Ki?ulVg_Mb3Knif=96N5FHNBAu_+%-zG5&FrQMkgmkt&qAA*i!JBy*u? zc&=4*g;1C8(`UmKKk9z}z?t&~9j2m+0P=wO;bJQ)S+^uBZa@7vhW(rR5&G)unO#p; zxCA{@`aaXD@s;1$JV4TXAU|A;#655u(JusFh2(9w$SX8gzHCHY(m^o}zkyiLQ1kI` z%94exBgy-v5PY6f_hFYuwvnH7SQXqNE4L25$baM6c`X&1`m7MCCyl46$d3l>9B;UK zDrLd?r_RJPdPqhv%hn)nbSpXTdmv{|H@Mk>hnrWc-kzL|Hk7L6r$D)S+4uKYT>tm! z`y7K%34nC>C(>e2-yZjYD#~HLd6DI@tjY(U_2lU9H;^?gsj?T{IXO zE24+K1UIQf4^bE1?&nDg(+8j0zgOaHRO@Ei!L$n!E%Ds)HXjrZ6|(yr)_sY4T&*pP zm%~+(?&$D+Y)-{FbxA!dy2m{11n-3j!ykMcH1`t4(0&yaYn-mkL(}wUDMkHz=e{a% z#>F`SDGx%}S%#1ozsZmmqVXOJ#)Lij3iGwYXErO+Hb{R>_$Jg3?P{XW>4ow^cBN8L4`T)m62>?MxCV{J=zFbhX7Pl;gk{ zA$%A8Ku-iJ`d&FU;xq7WtnuC{-5k>iT+`Kq&$-Crugt{{kqLwzHZN{a0H+(mL8-Ab z#TiL63HT*;glHc zaB8697?o0bo#8MQBiFtGc|ncrrSYm@p9f>jaYRj-y#f80^cB}aUUlY3OME=yvTLgW zJ8Z09!fhW&FEsdZx3uGJaz6FqQ+j}pBC@s}p>R5x-UM?DX)Ryu<65X6W2!gkhVVLw z`Fh(_P^R2Yp58=m(TN!a)X#DTIqn)adGOudV+v~YlgigWr%eM0I7cdy`)2k@bwl=Y z1MCc5Uf<7mnd|YD8`;92CM6ses-f;I`YfW<+NW3%mfWZwq>Ul#!&@)q?xeRJev$op z_G%DLbUYH%suhn4vdt&MEv>j5i`nBeb}hUxi$pYxJmIrG*emK8QB0Q&?A7m9hD{!< zWQrtWnkKwF&FB3hE+g|^`HCpIS97(x)#uSq#-b4nZ5w=iMa~>tC$z|K>QhTew%Ri7 zh*bFF9(2WpLnXU1F1RtI-#Sm)?oq>|sq}TPX?pe6VQLAl2a;ja>va z(NSuZPjx$pI~B>VcmA0ca}qFIN0R9}J1Ue_~aUpB}P zsB_+Zf@wB?#|K9riK`g+SG-QD3GAq(Sq{=$Pe>`GOmjFl+4dNo`i(R9ve?;UQ`cU& ztqU!Adh_P^r?mvVAQ6UxVN|a@2m7MGP)F{W!l=SF3J{-=*NWGfTi-JDY5RWnZ`;|1 z0?a0YKRg1fblU<4(0R}bnMUHBgTjwWd4-i_v~W(o?Fz6ehx$8@o7*5&v%^$F)!pa7 zJXb9|$SU^ha-^arU-!tsy({3pz?}UU{p-q4r3Ey}<*CGZ5!ZE_7Y_$v#Rez_Dsp{= z4y};!HXDyN>>3**9N=NU+Vgd;j+_dK(saV3TcmR~{21j6qfUJ8+21C#KB^&iIWfN* zAdWcQzDKOFhCZuX9UM<~y=`&US%4;ybbGSME&Z6{Cbc39vps#%xP8S&t z_7lv$F*xGekzs&#A`g!drZG_~M3A;0(~Gt-owba3=Kj$#ru2T>_55)jUvQi|q~7Q4 za?kn1ZN0D7Ga6?TF9H5*4(u~N+nPn!hZyP13D8LTlB*kKt}BlT;L z%nmn=8AE9x!tc^q=&QwPfC;gWzbq4VRs<+&2s&}<4((SwsQsP#I6$itBiHtp0=M|n&gT(v!`z>%fGnc(=!rZJOp^EKXUhN11 z8TE6Tg^ASvJRCCDJ{%N~0fHljqm0J;XmIM=HMF>Hzi$L#!E&|mi}B}|ah!qxk3Qb* z<0UJD9YGIlsMeBXiB0BHd4l zyB}`rV40PeAykwWt^~oR#w+eQ|AP*Ywd}Abl;_W6Z%%ZJM~zZjg%*pR@+Z-mZy`|% zSL>78W`-E1YZHqr?{9N@+h2=i*|$F|%Y%1>gnhJcG($Jx_>B=*GI;wT{dI}DHK3x){*?(%?12hsa; z^u|>|UZ(0MCghqUT9)3BvmMC52|!ER!`n8#O>P}8FR#GAhQ2!>bRX95o$(&d{L!v- z*3s0jWNz;qPB8d9hqzBxiE0A3GsXAY)}6OSXCgM<(tZ^J>uqu?d=|VVf}Z!5G3-V-k9jrVST+;zn)PrA&Pa8!G5P3Hx7=ChwJpQ4Pk zPy*I=ua*t_NM2U-1H;%~ll&>Ollb9dzP`sKuowq*ckqT!*N}UQv%@?of1>5_p3Xa&MM~8{-KUp| zvCf443SiG&L3=`yDZQZ> zVbQd9xj8j`v0bPS2^^6mr2Emh1Ux3QBjYknRbR?;ph)CCBAE?gwA-u^_KkX605@w6 z_lLn2`EMgo3Z%LQfj7I)WqsP6(e{$}#WDdu3+Asqu+{dc!0F z_hmI%?{{T;)X^jwfJx`+rEM5U{O_PKKF|g?e;?;|gMT_LCOLNhK zwGT_6`XU=y87`xOrX-T!9Erx*zjBWM<8>MNw0(EM;K#YED+Hn5 zI`{35Oy1`KAm4j%BwL@kN9hfHmxPKUX%~u^5&GC1kcTd$OHSWMPPY`q>GR+sSol?n z#hkm}B9>j9o>jhhSz?bj+RqGZuRiA~oT8fL;(7ZW2{qO2AN*CfWr0=7wok-IzP3M} z-=LpQKqfkt>>+jMLa4mMQ43o-Uys)YI=h$L>;V@E$#I3}>ho0j4Ccv^CO*>$6CvSq zitON*cinoo+KaE$S{6;ug~5@u3(UE`?Q15YPcm`HV^I}kOjd{j<3*G>BZV=Di6^So zwg03mb8k+HawKd#WFWUOnf4x7G{byyj&Db-{oo!&UXTvLQ!%|7iCeiFFGC|+IuG+X z-IfRSCL1?f<8nCjeUtBOf*x79!iy`6xp|Tvhv`{7{=~?*qdg#B-y;54#Ja}4m@>(B z!O^-A=L%3zj$TA%w)T|p12Mxv^K+~;K*1;eRBn2codvXGS-Y>WVjT9JrR*Pe@PYJA+!2x)@#%KQJur})_tM?AjW3CjqQ7)wF+8KPYp@0M z?Yf9~j*RY^+JUC#SXvX`rr}Mp-0=<(3u_C6-#_jLgX#Cc!1J-4(gyyC5KOMul@u>9 zdWMpcxV8JOTfJDaN<`m-bRfUMBV0`TqY=S@Xdj<_SRl7zIPjK(eubwR4)&YUbV(2O z{JD3?&&5X3?r{rl1G@Z{TG5xctNG9&tBh0C$OAIQI%0y7^}>0SKdPc0VMB_(&b>=} zpS+MMlq_szqLUW`v|ZUt0S!}TSbI`mi^%g^XlL{)!T0L(MTQSP5~FIgAW6Z##WR=%N|=e)KnI=PU$4eZ3- zgDZ;I|37q|3XV>B@`@ymN{ODi>#^-2W-SZlBEEfoGp;$Lg&_y5fYQFrBwLSiNp&-` zQRv6wRq+5MfU3m8;J`XOP{R5G(4$(8A-%&kc9P~s)8O;-B1wr-~O;{g>!}IdQTn$`1=E^SXCAqgVHV}P8mr^fgVXQ?_FBy(y`Da&#L%pY$^)e>#QT??+#CA5jnn|2bd2n`T*m65r7|$~n7#Y<{nLEjXnT5X=-6 zc{Ge+G8hm>D`TUX_-}vi;@9=TPOS&IJ26Q*yKgkbVs96PZ%Ao+j%)^SJxkvuYWsRfW!R`Glye>qEZmR{0&%gu3oS> z&YTM%rksDYu3zinFhh}CZuHHunT95ceK9z-m{Fv9OcD(}?Vw>7->rVtAN?MDeDUSR z`_T5gj&Wix-O{NOw`70Fc?JBatloEt3kdT1hWl$L!h3BeN7Wss#EGvql zGz4zN@2OZjI@f3)jgtS0e5}DAVD|Wzmn)QbKD!jBymhVPdMq;APN0z~1~6rgzTDmdMZhiT zu1V1&g!Kp0uLVhe@afM6Y2YIrqDEyWf}}-INAXIHBahB@(9o?b-uBslpWV)ALOgx# zREaWJ{diyQlGz>mn{Ecp#zMHdE#2$G{aC3FPCs-9vcLVnS5Q2Py&^ELeOxwz zeRe8;%l&MKL`S;6uC9Hm?)*&s zXZw_@cI!2IiTtB|9N_9-!JwP4Pnh#mAI~`d&&2f6e#PPU$#_(h#Z3BBvofWsHQvFfx6oaYpcjfhPBs4R zdCqgh{wEBo6EcD)xF;DS4Y9-#@+d|F^whY|Y}r$IvJG!et{z&Ld$V^wBi7S|nP*9d^e#N6aqFu~k{h$Gtv^3I zBDR-{J*D>$LL~qcqG8{#|42UD@3f&ai||uy_M012827>Iip@!c~J~e-|%k z%Zvr;uuMda7`Tpq%zM~34r@Ngkh~1(GRZT&kFFC|){}DqTPIj&N5d{H5!k!G*AqYq zobpr2-DaNalj}C1Y<*PHrzZ;~2h_W`-}vY7tNxG=8z#a9PF`&8%9wiG)l3Q4@8S>8 z-Gc|So>ME@MZY*+qFU7w{Nh)CyXgyb)T%}ltWA=gcb@F;?=bFbYxsGn)SD=fx+xY=# z55t~KIRY4Ki>3&~tyf&fnx*~7@JujUmGeBi%mVu^@?%Y*QjoCsZQG;xonhJoeaRb) zNdmODQzKyG0)YZgeu}qsT?|cJloaK(AMDYos_xRG5BqOPDY|P)-;>#U)`QT!m0R|F zzLe3$rt1lRW^H^p*^zwlz^wIG9uf%0Ceik0F^zl1M)f1qsUpF&z84QrXmO9>?=+lR z$Voou0YTOq=Bt{#q+jfdiPGe(Km=m{cN7UX2m|u49L>7vss(9N57_dR(M?>G)d7%OI4i8;%qdkza8 zTRdqBrpMY6WqZr~e3>I7J6@WT#c2S*?JG;?@I8`ccO2up%!tlN&(VdhX;_~F$WFEN zVZOG%W!)$LvmNiz8@rOsXa=R(X3czYR2ps-dmj@ZEc}#vw?>k>2LE*LsO5IoU)4Y-ft_mYkaagy``W~RUnDA$_ z3n>=D^kTSGovkO357u|d(r#Kv*cqebihVEt+4fZ8KHpec$=vC_JfG8j=@xGJQ6@WH zCGIb;^puK@SR2;m-S^a*zjVf3DsV-Zus_2KZa+C3~$31M6YW_skC>S zchb}aZ9J=dLqJm?#uAb^{1u<*tJb&a0j@VD6A#>>-5GIzZ|(A)WHclrA22iY`9@2X z!K;Tyt0mkN9Kax=68|BFS-?*6=6#ItRu7o6r26~Us2W~VexLe1|11y&e1q@YHu5O@ zW0sZm1pc<@PuXy`x=ed8-9T`vQO7^>r+pHGv!TzYJF$wiE_ z5{3d246gm#t31*VnJf( zy?zivVuqEo+LHEZq5h)z0N+bR?pqxLwFX^1iO1(0TWFt->Bo&3%RL}Lx2vI_KKW1C z2xKgYXQ_`97jEXS2UCB{!^`Q9RGc=%>9Gf(`?y-IBY95?;4DvUy`5nzyYaAc zmo9_?XjVLOO+PqmLd>Eo9q@~CrPyfWJK16S0TKg{e^ zrk&ZL<&qGHwtjC4vc$1wRflMMW{U6ieF$M>P`FW1t7+F;qm^YjWB(@TwVUMPz6#7* z-19aWKsvsaB{k2M<4}+s>HhoYus7B#2DITPwu68*TXN4@m$T~!6h)L(Cy1Tv2~Ua? zJT83*P!wJGc2(?*23T!HZjCcJoDjJ_v+0THL2SQ4Zf~JRRy-P?t!#L?qOz&X+p8zN z?1ef^2f)!MyQ@!B4l2bfX!yAtmrNwHX9F&9r%acJxm*d@eF4r7xWj5%WLmAwixgYt z^X(5O{~f+g?>3`#yq{8ZG0@tdXJwQ!DO{L_r&Fgcy3}fN z;0#Zo#EJj(j~{^~X6tTesr2DD46C~!BAvPROEm|f0E}{@XJJI6`lTHy;e6o%9xDj8 z9+;fUsY~#(RWW7v$=+cWS+H$tIXa6$k8c63LAakJsCkT7@HK<@v-w*C7&MW|&?+m) zA=cTc6XVDUb8&im%iY)Z)$}`MHTO^*7v9|!@$(qaH0Lb~FO}>W#q|<+tJ!GJQ@;}7 z?UHU*8NQlKgshhV?DFb{9gGt+`L@(Bo5lNS*>~m||4;dGL$ni|r9C59Ufif6UIB!` ztwn8+xi(EDYu}?z^j{#vZE?<;lGx1HcN))79^oDX4#h|*ide=eiIiIpV~-JXlV#y;$mi6h7lYaPl%fO# zF|%h2wfvEHG8S6N0=x9XBlzSTFfuK=yd+ZZrhNWBpkQ`Gns}*JDb{>_k_IOm5&6if zVvp-5svmo#lU?Cu5Zn{~YNJ~6d{Tl+-j}LTjq~YQHkuHJ!mXnsltW@=pXz9N0Ho?^ zcxM@k>u(16;PPu6Uz~&l343O!F2%1xs${1}9(H1BH4pOG+E^pg-`oa)-DE#yLJh^}Wp$N-%o{_?aVr z4e85KJre}|Q{Yew;HzH9!2(-{KG(hH{KRr4pZH5Vb1qH9Jye9AiiFY)n=}d(yriL$ zClu34b{`K4YEIkNsYnXj-H;KZ0fn)^O`H1IBgF*Y=Sug;4)8#&3Bv6+}7) zP)zAt5VN}Glk;V7(w5Bo2uH^AGad$oRoT1;3x2$w=f%1QVqF;5b-zTF$gI3S`)@NR z3qjj_-)0D~9fQL|el7j6N{pE6h9mJUpt=<=(QAGqMTAy4>@7F@xm)?lOuib=Jy^n5 z=?2H!_7b*5F$^&QjnqCYFbn5dGrp}Lbd$R;Ws=?G=k%*LVsCc*^~9oU~_Y__Zuyg=)P0f z9zVW)c7%+F%k~Uh96apu4cst(zC34+KS@xO>hFjO8}Js5BC*Lj0CJ% zjpLE#dEZeUd*Hkx);pH%9{90m2>p@UOS-pIMD*cX?5EAUZwXkuuavyZ&dBeRSFb<6 zT%Rj~aM<6Bw3X%#o6{?TVuA8DGi#!Vw&7bM*JJ-0!=WJS=7NAaPKQ5oyIX7%W^_ zdtQ-;!teIPk|Q85UfwtQ*Nj;ozyWfqf^f+8fSXFgK(9`=-pgjI1p3i*0YVbNg;wX^Y*ji3>rYnOs z9Q->Z>V!Q*a&WajH!wui;^1d}(k{<}lBpvJ-sF2vedPjb>I z%&GGF&L360irJ2G!)$)w4mtYm+S9;Z{JMC<8gIWLvZ5Us{$Bmw=I1ecIUo7r4JPn4 z&YaXS`&Kd9_W9GpCcJp{T$S4~{SvOcE#kzhbh z$9Cz5K(LIR+!Wnio2Pa|ilZF%`F%gDFvFw3fwMl^1F;iv@kx{mL?yoEFRck_M2W${ z6}FPMm?0H-nLm!({UM@jHZ^K24l->eU$95Me#DX5w{qXGNR1xZx*R6j43zsP?{#W7 zb3lzDPB)wlsbO9DFKlZBV5WPuJj6_zE39B`OU2PM3<(isl${a(6)lEwztr087txnt zjcTUaQD^P#?--SYnG+~9>uynEge)k2k z#I3qS`Ezdx27**vEf(PjY7hJMHOLwC>joC(3c3G!FzCoPyh#7~Bt3tl^qoTJCz=L3V zVF|@6_n9vFD?zi_TiieJ*;QvG!+unS`w><#>K)$#5W2q*?2h|_^8z4x5}pFrQ?2*d zj0>K?<{o}SXG`{0iw8&=WL0K3dX#$?*pc_z;P>ec5Y1@!gM?DqN!jR8*79wAT@9%@pD@kaTYR!urWVO9t+GH>s zhg?q2{>dbhp?nLu1asx|{spHbn`lQBPwCGXWeuPiH-5>W3@WCm$og-1f~@|GLEZ5V z`{y=LF{Sc2bVYL*;YwEDj<9eyr{I<*^VGboa}7R5@M>=4qj#~_9a(i6L>bMxRq=bi zn}p@Bb(hgZoA!>fq6EwKevQB^x>L;jEL9q+u)vjIFND=bJ49X(`52&HM-r zrWtM0MeW)>JLUbIRT>hgPh9`>k+K=>&dHY)y=dmON;7Vf`7J-|sbP?2;u zSB}2_4!qPI*?c?lDdgmL!n37>EGaXzJ7zzYuPbQ3Waha3D$??E@r3 zwmYu7eQIl&K|7F({(Kz{z_N&IG{~@zl-9^zMmsoJi>J6Xo<4MIDP!vFuhAsegn}r-tIZ6{+R*w z)R$uUuwLr=+rYGlM6Ue^b?puKUpgWRAv@hpbz@TKlE0dI9{*r41~vAJObarK?yMUM z%t**~U^~fA`LZOkG6!bTaM@$M@$n;bx$W~)g|2<}4C8jOLPsHvC9NhE8trLAXH9c; z-P2HmbFev|k$?KzMYcFT(bzYIr>gm(EW50@Cl61*&`3KL9O0H+zE*sYuO3-co8b=H zJL0$=jBNj zp5xUb!8Wf`80d!YKYy@sDXST>^Bw&*H+I#~0A_5eah=d|BCBd%lGGMfPg11$)ktaW zl^)QLM>c3Afh8pw@AG?FJ+R)*-p2{{0K*p2_pybiI<$@ws&gapR0V9<+s6vehI@Sh z{)}{&O;Ue;^f|9eh8khmS7TVaHk2fSy(vrqO4sd-4CNH(K(fFP!zJ?tbaO4oTsq9821o# zjic}D6a~g>qKp18$nfdZm zJ(_Dz_QL1ehaZ=7^Y`b&mfrhajnD)9oT=}(#vTk(&Edw`3xFAs&}@FM^&?Y3yX-sl zZ0*rr`iApb%K|O8uQD_tSMs~ZBIN8CcerYeY{rV5iWL5{qMP=`M7;knANz^a40nvq zRCJCHT;158{--F4hA!V)*kH==>9o@U@2Sieo#WHuZsxyOmEi(z#)mt$j4#s~MFCws zr`05#>U*rwo5+bsyXVJI(FSOklybb?$NR>!9YfylOyAy-D;rwd$bWM!w2_-r?8xoC z@V$#RZOc1bM(-{Q^T z7L*DTDEz|vCx)X}J;;~v^WnYls9*2n=Qr^uqW*MxmqrKxsjqa4GI}+w|a* z>6@dy$=(jlS$^L|Aos-L&!~$t+!g)VS4}x%`ziIM>BdFwr#!c-e3ZO0?`?qHGPjoH2d0R!+u z0b5Sb)a{g>96Kf+?H*q6P7$Wp{?J?7>rDkQT4U7-Wm|d5A5a*Kt$>sS6?Gc(T87m>8O4?*QyhPPLW9taWjuEjR z4Vvf7b5gAc7G<8W^F6eK*A*nPk&E9ys?TB^X^c7iV~>iE+}f~N*|$pL&za#*fybH~ zSPf^C=x^LP4JJ~)OP)3QA8LA%Z9ASMsP584EzCsd6<>L3L%yW<+etJov)c%aHB3db zFL1=Wd@FadrXT6WJ>GNXrahw9F^`75o9cS{D}m(r)DrsueB0;{{lPw>gN}yYIKv7m zt;1o<^#BaU)~z+18mvBzKu7NCN^{V7R;KNXdUKhL+#d=JEWpe(vd?dqX9MGRB%6?( z=C=0Tj2@nhpRl=@4$#BvF1B3AiH`b!CC3J>o-GD%HL z_9=&b5QF2B<2|SMym4@`i)&md`D9(ky>UgZarPwgsN~kO48y!hgnNiQ=2yP&%N(+c zF2P4{rZyi3fzHWfAL8%2)i_`gs8^hhMBk9`@UN zbWEVfA?;4g>-Igz*WMDYM{N|@wH3F)V-BeQaMO>*W!@*v%M&JJkt=ALMVz&V5wDhP zbBZg#;#kY>#`;9pRyG_afxZ*`=?SalqakMnntkBj-fFL5#PHb1nOeW$&;h|fMgb7^ z6ABM#kq6VLxE)nWBRd=#b%nPS-F`g=8XClrK|tHJ{$MC!ZSG-lCG8bHTlHaZ7(V!j zapgP44T5(lzJ0=>tWkooNxTP=cz<(`8*_Evej0r8v0DdK(fS3`DhB<3pdO!o@|N8~ z$kO)_-1cFFevVmrQ{or-f2`$_DwX78N0X&&zK%gBJ=;&2l8P6f$~uMXR-K5@f;yO3auA7TQ1_e-iG-KK8Y_F32w1#C&!P5__HrWI7xZwGXiuYyEPG8sZ3| z+!_j;xKb1Vu{KI)-?c+kIy_C)?801G(hK<`Yorhi~)CT6!^0zzbnj4%NbN17DgX9zj(qcjhC@Y8)S#~E;N+uOu)(AmsT9{p8geld-?N=D z#*!gnBI_|>t({J61#P3Lac}lJOnQRtK8u3w&5p@)H`xXla(FWIxc+{~d3+d=t7OT* zO0x(1iz-ESp2R!ER+FkC6w#}CFI*r%a1KlXCz|@tWTn`^Z?)8ye3ts#F=W_&`9q=5~HEDiA^tbcz^N4ndJ_FsB^Pu1$qCM=V4&th>H~Om*y5Xf{n>R^o`;l;_H51@z383@ciN(K;TCp4@PrjN5F*P2i1 zDUFvPc9ezDl0s46FyyoAd>hyAis53D9F z7t3}iEcg(xGrM1nwUPCjCzpMq=A$%m^^3#64&f-|XQW;ufG39;?*Lu>zP2=R*1%`( zoZX(4{uu$$-%mjOzTyA)BE`6T+;4jWIxT0%;;?_#CmeDypGp^k2L$ZCSS%-Ih6rZ2N81roJ*eLnVuc1aOx3Q-QBj zND9Y9sbL@GVMT=kGjBHc7>hrLH~bN3!Tm}ceyRAo?w9ZdKqNn-*Xd>_IPr3zc;d$L zJs=%-yuIivT&n~D$)1iZfI;VNf9OubxPS8_(PpA26B8 z7ut(pGjV@K&@}H=EoXtX#(r+Nc{BElss>0WijfUck@@+X;+GN8R{67w zU)PzNn%IX|BM$wm7!T%Y|LFpTTYETiQO@i806GR6c4Hqhoikyq5^w+mKr`0iHv)cl zAt^j%DU|jT9jTXn^K55NH-NJ~ALQ~47f8NX(}3VfJ-<{-+?%)W_d_{6a3l^=g=o4~ z<=Zxy0xHCX#l;sY)1~!uAr(Ig!Y$R{(Al33`pcs3@4db0#?6?sj zqZ7M(36Q9p@LuJRnlANyhkWdO;@lJEFKX&_Sy9gH+iQ11|I9%M7#$>kFFz*bm{(&z z7nwBD>xDg&%J(oN$}R5* z+Ctw-b3VoaeS}FDj_|r9k-#KoTVoHaK|}Ji!W4;lUH_t0e*>yre`E^?sATdP z=x6jn^W)=4)&#eH^8F&*Rfgb=4nXo+AoKF>#jY}aypzXJvf_kOD(laJ{FC+(vr*HxORyLnFn*pbq1 z?LPI7@kZ`%@C}SA4H94KAqxVg5^M~rBZSxc@<){KV>S7cJak4@qhN?$`YzwzWgl<4R0_9PhZ^=hB*W_66`W z-dJLNT=?wDScfy*N%v^XRkG9NGb_*Oh6Dz5gunB?NH|a96>hQr>~0>#>^G~$zyL5Q zRsSAD-SytSsrdx3-8p+m?Bx=9$~K~|`o^@rVR{Qrob-nI%~yCH)t~sGGAH_j|3X0m zNV(yHT`HxiZgrBkf3B|+gIoVt5{5RPI#EYyrZ{Ifb^gA~lY)GV0=ys?WN)tfmZ9IU zcQEN2Q2HvSNb)2CkD!B?h0K~ktP`btHGGIk(T8)X-qDMI&{+Oi@wE{xEfMAW_&xzW zix@kiLDc-@fD<=#!FR^w{_-!Lyf3wbS&q<6H)GjiFT&X-JRfMjsc~tfLHC993~K|T z;g~?&$7661(6V&z_jSd&HY8^^p`fHyp?o;Yz0(@-7#T}l0>IgjfIP#YhaDXCt}DZ1 z0vZc13p1o?h2+-sgZ!0W?x6ZaSDW2P2o?T9o_s3vNAz!J>B6Hdk8QCa27FM@|kl%P@_in3w- z2LavL4~Cs6ka`^*r+X8czSz=+Lu^)r`Ur$98rZ3zV<()VLeO zTtGMzy8^U-x1TeSAUI#;@qivR4e)jjzAcCIp*Vc54Eb#1_KnosUMPCW=2nY1itpQW zpEi9t18r8yU#{TL3>PM+;KIVzO*sCF2EDg<#ic1~%Ec=*R7N1wy6w}~{iB&HJ-*h1 zZ+<_Pc#mM!bj^t%)6re^B}_+i7#4+URJo#yXv>86LlWD5LS@Z zq9gE_qw6%qo8e`(CKS}#4^C?1i$WQO{`)L6T{Mn}xYU)~(ze-X+tUR|#oac;1JOQL?+ug!<~u;;JWrF!~Y1*d>c1Qraiuv>oL ztX;=17F6+g>yC;}hg)}GP3?AwER<*@o?WvxF2FnyK)3b@&vYl&wl5f0!a9tZ>^GI731XS998k6b`RH2C7XZlJ;d9{=r}j)VElzq?wiIPy&CgL^2PBBt{=G&HxN*AMO=xODCpUv4OOC z^5CV@NsC}ub_DO-0cQL6N?hej1yZ+CP6&xGTJlqpiUihVu7>(bH*Bh;ud0nz-Q=(9 z!aN_e`jrV+8_W*WuD-qOQy&~O|8kq^$8Ud_4dt|JlAEj0=S$|o;&nih z93|Z21nJA0xPRV-bpJ_7%E!t5<&-bwc|`L$ZU5GNHP|so62#|n!djxX-g2fHZdtT` z&H}Y~5AkK9=mxQPK($VznV;B!`|ntyZ%(At(cuxWuiWC8=4Bt~99;O`fmoIv$2tAA>#%*?yRj}%d1CEBr;7U9kQN;w!k`(dtG_1FRuT?OEVOQRpY`^!*Jlm9VXE|-m7OiNlcYMn*0W_0zxCey| z8^AgMWc}~f3v&HJY(mCPC|MZS+EMmeff>I|G>X(%Ii;f+5MgG4;!f_#fE%eirl1u8 zwz|yXrqA%}=+g7k@yHLH-ZR%AAN!VMtXua6GNu@>k~$rKC~(Y|6Pg_o`;-z%udc>d zOF$hCiTELWptw6%aba5ASzfI(b!MYSZf)!M)EwsFG5T$*e=Z~Fi`i7!Qz?6tarV%6h_cOCk z8!-f!_@MsS= z8;PV#HBi>~BS^#m9Ee=iJ9ISL%tPJc>$G3R_aXIvsVulG`4kzdpC^g<+;w&_koZ@> zhn6pXd>yil@}2I7n|L2B>{4$UVJ#(Sa@@^-GR5m#+Wk?#4~Ls)#Q|(CK6~?!)TNVT zDDvV`nP$2htUlHNX~W(bgo7QN(}UQGal^d##%@`m_ptgLH`(w4h66uSQ%1y)YYnw= z?~FYAT~8&7le+ME$Ojc7yBCB$+&LiX_6d!Q;_Q*<%QioqLKNF9YM(4E>_KPqbC-!G zEkgLw0Ed1G5Uko8$!Z2n1JEZ_B{nukbD&H_V5Wl0pE>2lkJ3Ye&c*ymIFmp@?g<<2 zcF3~;N}BiQgcO^Y50r#$9z>I!jt^g1jML8}jW183&B$e)D_i%OWm^zC zty=V$|6p^|8+lKU)JbM|NFLiv9p-(q?4C-1Xohn3h9GF{|H?{+^{z3i(c-K!lO<7W*(=bBBAtK0=5j78Xq_z;9R&$PPU3tCu{QmD$rq;x zAo@mH_A35N!r2nwSlVrxb~{{Lc)9xerc#uBK#uerfXrG);`M*{`xm z(?&BP*q0@7|54#o!abiSCgpQT3L07R*Ts-q1?C)KLO+oHduk{<;` zBqKrLO(aMLLDJXXN%gs7RJT=%#2waNYX(=ozy|BGAac9asDjWCcBlEecQ5|nB<5|7hM=Jo^)|H=+VII$|!07jG*1(o>GXi+=t6sf*cab}c!hh|v^bFE5TSTKRQeKlfmQ&fi=yKrgOku7V77RK)oV{WZ?Y4Rjv0 zeets+&+~k<=5A$Nv5HZX9$WKFs`%rM(gDZ?=D)M6^6^VH+%w|C^DvCvZOjC6BI} z$Y-LwT@l4>!Uz5YM=dmHvhw#6i7!xDI{Kh4SEe$*mN5-q$zI~Ce-YO(kR+B3-V+g%Io!ELp->_BwQ|ez~ANS?nhndOf8cO0G zYeLKUsX{_ZyR8k=AP`LC?saY+1%brfac@Hf-xb|+<0FAk=zHCPF?pj3Al?y5wXWn7 zA$l|k;oevwyiuFoRHFsv&OJchE@m}&d1o+gQYM=_wp55?--8)gqNFwG5GQw|E!@!R z1_lCSF*6^hB)Al3UE4>LQM{+N#K(&Z zc%!Gtr7axYPn#-|B*f;zSYgb+h2e7mTH*&eVg?noi5Us^US)e1CeMp$z7G68*-8-i zo$goH4pHWPt*>u+v_3hxrzfNcbOc)u)do!D{4@toBB8h6Wolm$2j|M0fipZ<$&^n} z@`)BrFudRrd?W2WFQ>1l4{*d|Boeqb2!6lX{Q~+uLV#O4{e5*_B0?B<2#!_2>b5V9 zV%GMM8$7^B^X@cqts})BLwk#|CFe!KZ^B8wNbZLI1Qw}+Y*9fA^sKb(0Khv2C zW2!c-8TD|5Vy^LpI4XBhCx}x*c8*|Sc!(GSQNm)$99@@w3Dk23Z` z#Gwf}zjKQw1@eJCJdd}uc;I@@@Cy%&1Q+2~xdx$fLRqPQ;A@pv}-qg)JM1T*N(3DF>%oT+b+18* zxGI;TG!ABpf`$D9C7ND^l87Nad|Clw+v8Z?SF&}_Gzxn+P=!;P&$T!)`*K5(1#vCB z$-1VWqs>Ai2p2B|uYMJX1t_h7*U)KnW#d3Yr z_Bw?EA2|G3;VTGQsBtC2B@|9I0)$9T3h*c;Bk%;m5J()G-)>jB=a=T(U&bNpIcjF{v{w-p=|<6gyF_2`jti z7HF&akBJGeap@UC0w%k4-FNJM>9RaaFTzN^%%kwSL1U?Gy4&z$#Yu%bUjvrUBQw$$vbQ^Wc~Te7mRJc z!4jbhJQ%@{PdCJqyw{LQ{jq>#7f>%P4BborHRcg|D&|AjB z`HD<=`6ICZGdX#k^mL%tznJ&xra!N?*ELOD=9AFgA?1LL@NE{Hk+HfF>36jE16o{4 z8RP)kc4t864@oE4{S$^DbJ{wtR0=l9$IZv-9E;{c z3PLExhROkw{T`TAq!N zks)5p{g{xrVr^ZF`t1kku5AgDM9#hv_*3~xcNip}k`QS;hQ%kry-Lu<*HwZhcS5|k3A4C=R zh{boD2T)63Z-pgG?-EBm_0^YWwcbvEfx1@IM(nRUvg_aEmmfEfrfzKil)3QNmS-1> zKjQeKESB0-l6{G!^1Oh0x-W_r^Oait#W?yAyjb$eAk=F-n(m&4-1Co8_}v(q@Y2ek zK9xR!Aaxqv5~+K)=()ZE1_jdnvd@dg6SehxY=F(xKYfUs1Z#_8Ht27b%MWFa-Of5z zR@(!R2s`BM{$9FM$55^=?@JX+oG;%sY9`7eT4^|tt`q{`?|!!Lqznd(Fn&*+*vOk* z5D>n9Oi%W4Pb`Az@og!1Yq2Dba(jP<79GEij9LrZ5vBi|?7?NoVQFhF&K2fpmU)LR)B4);5Q2kVCV!RNWM3cmo>_i-{Kn#+H!1}* z9e78EsxmhRw#d%LA4O1CQ9)NX_)RzEJI>b2DX%@{a5Gz|J9vw3kcUq{IPCmBW&HNl z**!R;hePuQ=!c9-Vazn|!MmqXjnbxfz>-%uwCY5wf{!O8?isdt->A1DVc1g!Ukzm= zN_O>oDy4UXYN4B(w$;C31g8|+jAkm`o)QCzwD`UvSh2-Dv;p(K2jH&VXNk$S_7HjB z84=zdFF%DvVacp7csfUCb9>paUP3u}+M_Po(QbN{ajN=+bh2T+spr4?$bwQhM5(^pHtH~d?$R0d#@GemLBjYt- z#ath`%W`PLA+rVRK*YM!07;&Yy7LV<+SnffGHnyYcyEB~&$A}4=042YIx{$r=vV@l zb!TH)Dn=|rsNk@uKktbY+c72wFB|S4zkpS0mivKKN_D($NOI8sRx zAoysCE4)h8A-@sNvsji(rK9q#eSZ~mEyQfb>T#G3^%1a-MudZtHFNNW zg0C|~g<+q@K85xyOP3)N)VMvD3Y3Pb=gAB6yF3w$7rK`Hm9dpb8t=f`3*0A5r?P&@4*UBc0mr~Mv(m4GZq)=KqvQ7gy>-rn;eIMWfX;Mos zcXLq&R^1*9$H&ABzzup6U*B$%HNi6}zLhY4|BRf$Igu0whk=egkKR`I! zvIAfm^paQ1mKo}Yo;>z*B&6v839!v@Yl!YBR4zE)LB06e$qX!1#1zRR-r2&qE~NcQiQc0x!mVxn*v2aFmzyV34aB_#{`Rrx z@#Q5k58T!`Fh8PaZdD0QNt6=ww~io!4_{uj3ss#1di`1G89-q8Se<2e(|$v33gN^) zhw`&qULJ<`0(2JwX}9m=weKBALB{SEF$rlx&Kgifq_~w~^opdh%T!ltY%y=eQ?vXy zXZ82QuUBsOND`aR&XIPU4To-q;w*V6fNnw zDudD_%6;Nqdt65P`u)Kh*>VO<1m6#iy25&T(RN)urr?ncbfBF4{a`5yfPWK5>O9?J z2cbAU9e#puXt^gEvHSWQ+tOf3t}6WLO5Z9Ue7|QR@GL~d@&n7$PtId^DcgL8L3>v4 zAGj^2{_YPeeJx+4w&Aeqsa|{>h~qr=kt0v6#CK6_j4lu(uWEJqJs#Z0egc($HTXm5 zcmh4?9A{pr16D#W7hi&4G;;ofGpFa|p;4%1v|B^&cgKstxl|6i{m~&zneMg{$R(%6 z#KLX#5DvNXB_Uq*gVMG$!SxBJ0IiZU1S;-}DdYL^N|m_ZP~X68TA{_NNNs}}QtihW zwO28{`%w<}@PaU-Mx3vv1ZaT3a53@2v!K0NGXrGlaTI z__j&!;ie1AK|Uoha3yyF%Iz)aoUw(zS}EY#fJjme5OMa$m+JxWjXP|9fMQo@n6NBII1Alh>Uw5AxK*a{4tACGw9bS8sAca}-I6`I` zp|GYMpnU5Hvv8DBwS9h}t@`-E%}9aA)mwp#FGrjz{Y_qT_haEya46_+lVR%@N82@1 z9FV^TQM~HX|GMV;;w#azA~ zMiuf!^0$mW)vXg}VF#4|qffkFb>B3{nWlZJbR-yr*P>+fiTH`#c16OP5~lqSlbpjy zLr-V}X^1Nw-m}?tg9l_APoRWEhDk8GUhJ`#^Vy#u0A2g-n2@LLh*ugxt`s(MDdn+Z z+e0?*O{5AfNaFGPRIT8yOavfTW21h^_V$C%B)-d>_l1|pPQcQG`LuWy#A`X2H@EwZ z!bgxJO&sL>lX1144eUeyW|0$YBbH{}FmCd`k$F@$=c`f9c{Og`VSGV^9?%sJUN#15 z`G27uqU!Iu>NhVA$_N|YhLR1(* z@BS8pNv%v;ibH;gux?TeQfI#N3;yCKYG9y)?S^rRWsQ&2=%EsjUK#Eq?LTRvaq4GH z!WX^lN}WVFIXZX<{1ii3RTZ9@t9KFD4RJ+?Q`pN-U+c(sKHr`=`{*xP6$m%i4neg% z;k|;4giSY}p(nJ9HtfQ+<%ClCpZ+EJ+aL0tB1wbwr39huyPq%1UhRQj{3@a3d*xY` z=zMQiHQuu6cuv;VY8w`F#kx00RrGD*rms#vk}p<(bt-mtk@uLn1ZaA38Za_`s>wicW!R4eY+=pTRB`@}d`x78Knd(iOQxj?i;K zdcr+ZdZSNB(t6tnys{ZGMIF{kmIoQ;@W64#r@s)$Zl#5F#|E)6S~{nVoFpSZ%ZD~p zZjN(hFtrLzUY+dvBMsF=7iQd_AB=b z_ufU_Z-J#H<@=YZum0|tximlRqmI;nzyUE3$?G)tiXH=>gv}4u*YL93*{pEyShtJ* zfgCb@|Lu!JyusY#opdI_ZPG%bELOp=hf5efEQPo;y=~|ctH+TA;m z+y%ax&-6Qcm5!Mm-W@yx!`Rc1L(mbZe*?^`dNwCen*vruL!JTlSM<#c&Z?jsu#%2d z^WkYi?~mt8ec)N<%1UNsj7P?wp)i||cb9Zl?FrGU*Y&zdC-tkn9Y%hoH=+f<@74Hl ztsv0gGsxb^}P70x;rSxx--}W^vZa6|tw_&Yx`AOo})X@8P`7UEMFiq`EgpYQCchFj>f zl!OD**5$p{U)MMfAZRXU>_?@PF9O4cm6nR~hWj#B^69rA7zuQKezn#F8&gBH_cog@ z`?Rb#fB*q=9YouC=2Q?KCyIh((O_q+Gs+aR7dJa>7$vaZjYkP^(#w0ZfN`>{`)Rd# z<=}zJB6IC~vOkXN{Ve`BK10|}f%LcE!P`47tQ@{NKRNbGyrCMsczRso=?A=Epiket zwK+QLqt97A8A9iU)iK#_AUJnzNs3GsyFV2Y8m9kirdWroioUSS-kH3uqwmh#K#}hP zu)&8G>@h4I(C}>LdjsAK^iOsX%%{#6?fy*Ro3f9JwyNaUhUZR32@=QBhz-L6q74BQ zOB-`Mg=^A13AW^jV z0iq^W3P;>4Pk*7Y{3wcD+(WYIvF2h9roJ~$Hblx`6xC+KqwH2wKpS)aF_QCp47KlE|g(qJF9DLc$H_2C~le&p^% z`y!}&sZW;hYkV4;J6dsXyY{40+K??h!063XrFotN??-u7b6<#4C_Rdos(eEO66OJo zL2#yn0j09lOwXLzbS1efoooeQ9 z;?T^gTkuwysKA8cmj&&TH?JY46BHmHZW)z7UR3JAf?@H#Ve|ebSV949IF+!yrUbLT zoZFB(A*pD%y2of$*hHpHleaZ`KkhGP$lkoY{E*egKGT|=qy6rO#L=L}=T3#;q2zR~ z0c3l+y|PunJO}js?#3k%%r%@+Z#x2)*W!hfTjo1($Bch#`&(}TF)Ghtyp{%Yzck6C zwFV#q#mlWd0+$Xf$ix-%r)Ivs>HH^?`dvU9JnrXU!qsz1JnbEZTBBJcF}@S+l80cm zyg(piCeAYfOuTp16V6<+PgT=(N+l!z`mu`YQrgXI=hIH@6ri1c`IeRh5c zEio!?RJi@h7VhMvK+hd3SBq5FRQ5(O(F0SGhhaV3i^E$ocSCHc5t@*NJM%ik<|qBi_^hbNo$E0%7l zJ?boE%5A@z0{vIvN;c5*wk=4IFNv>(wFY=PLC5P)C)+q$Ivs8~C-u0kzbAJLt{udvlb>FfR`#+!d^&yi z+jJAAS(oqBCo4|T{K)I;FZQBeDOiZnV6Nrp)ie=nuX>8#|tT?pR1Wz3`l3xxUiDQlb8k8;C{V z{cN9)$Ro7J#v9fj*H8HAzg4cDdZH;_H(4T9=@lMw&H*XRE|lB(Ouf`(CHR$H%kK@Y z3c;T~J;HY7z|WOP$G6pwoy)6$0#bUZD9sIIYPy{wZZOZcs8{Wi+q|yJNVBIORJi*z zqDuen2kOb`zUDJ94(F?I_nHW>wC&{}G3)4jd3v(Uv54hkzinG;fJB!-oTJ!krH`gY zX{wKX79man!;-c>Kip*MHt}TVPWG5ft9f)XBuTcQCHZ!rZ@0slDE1Ug`PeX70gbdR zKUSyaGP=su`TcaBCn6OrLyO5)n2?*ln9GGB#-KBz)x4UHQies2D*-LfqVCX^%Oj57 zC<7x|suA;}d=vNK@l+ViLovgQgn|_I?A&TA@Sq&mNNga1cO-1Pfhh+mvj_O?6a)br zE=wRg#vA!;YL}nVRyDlSK0bOT&tL14ejD|Dgb*;%@$;EurVvpE%tGr4M$B~pnOBR4 zJjNpzzoDUC>wM<834SJar#lEK_;n&g2Jwq+#*PW4)d4km?ThttPeV6)FK%BSPkz=d zq&>*6IY)4sP&84YZyV&z`k8{CoaM?EHvDB15Tciy=9(InwF3l{>2Nxnh#m|JCFtkR}r&E>Et#}pzJ>*OqR6K zU1CG<_BrUdny)7R+@kBWjvi>eiG$*7N-|Kia|puFX48C=`9xo}?hqIDa%xdR=MRZxw{hQD9Z z`ivMk+r#=jn~>B4Aqd^X#hOyre<4&;4m?-lqE-AOU!@p-bblb`P4=;vrAL}!kUIvtR+ z126VAhm{CVz+coxg~{Z!-c;k%Z9C<78O_UMj*>HNc&aqEXw2|w1 zxNgoTobJl~pl=j;#r%V?vZ3__n|K$LDzIdbzM;0z&!5`KP^n$i?rs@uT|&&~C%kC^ zlL(JU2DVCXdxctI3)>ZH7Eg>CQ{J^>6UC_;sPr$_8ySw2Jw0y66nOplA|5_}fV$Z} ze~BES?BYuV%LEZm8Sh#?`@Qt`PuC)vH^D6yR{f-d76POU5r2pU3wW0SX**HNWS+aeQtyIsinyOuwq3g1*A8~8K>g;}v+tqPY7plq{ zGy)&>J~(iE1Ab&bsM(?#`|>LU_OJ|Y$4eDBV2yn&+KG?crhs>gPZ#|QNDp^8XzK3@ ztcsTN9e9r4eO%R^MN~skDq|0UlL!{a1u~NY_*L<|68Cq&7tMS+_rD z7P)1J#H4JmdrCekC4Th4N;Z>fqWb)S%GHa#W@9&l=-zL7NY9XcA21jrQfv9{wX>e-^RYa zOMeRMTVC+EuA>`^cL!kbg z6+Cp923p>}3i5A`peed`e_002ovKsv{D!h9SkX=USj|(Yzd`Blvszrq0|&k()rvo7 zZxe3!hBWMmOpEbmjKc=u!Hre1(wZB@ypr{foV(TChm*{?_H>3l_w5MMj>(ZpKy|3` zn#MC#Q$en#{*v7bn2`%zN97;mc=_`3$rPHGxo7$L)tlk#vUlJ=yV~omNUg87y{nTg4 zp5Hd~DBm>*FH?h>O(m@2r@pqA5G!? zkoxiCLASKHLH{+_hc+1=vS8_Y$hi{}8;Tm=M0_BpEJ4~T+$rauHrQQY`pLheq*=r_kvI+{+ept zy#)#}acr#pBn_Wlp?Y0F8p7Y#{ZkC!FC6bCqJgsh3aS|m|F!XvL~nC|#>`&zlc;?{ zo}^<1+L3CV_r9#JE>>VyDm{~WxJRz$>KD!OCJb29RUggL2Yj)iuafZ^1>rLH5gd;` z^i`%B?@WBuaeW!}xk1}bpjl$};v~NC4GnX$H)1%E!ehxZ8xI9We!D!c2V1_d(5jvH zDI(7HsYE@${mW+(wO})Xt9y7Cz$=GNdvoDB?e%MWGD2*&-!nkGv)kUc$P@7sn?0EF2SV)6mIU@fF*pmQ)mTrRP-BN7*=_xoxXHZ2+kqz_+gsPjK+Gf}B^t^0e;5j9*s1pH98L-|a@ z1CbTVleMi-yOUqNh$)4pV~j=%v(W+ zw{LTO#NWns4$n+FRo7BJzipR=+S$f9bmvIo^1YRhHX%+PDFh`%(;^q*e6Z{Ny8H_D zj^E`JEYP1Dne#e82t=M<5@l7ac6-lKaCW&LPBV$`@g3ck*V_ahwf&FQ#I-)#Lg5S& zRxi4epJ_{_tIfYwP~4HD+js3wq735=ocH}rP&$__1UHLQZBxe-h{HbF=4-Ozy!K;_MBEBAz!A;|9M^2N2)--rjqjgVllik2D?lL`r-G+NxYBe`5-3 zT=!O>6T8Z;^)IQl0My zg0h3PkBjF7*5s2$QGn5ZzNhP*v9f#hYoifF7kqyFe9h!tYT;%$sd!bCJ9agLh%6r@ zBsC;~!Ab_Qim-;S7<(aQ=itL-U3h}N_V_`Dc!4id&fgh&_t_oEeGq!DJq|4?>ifR# zV^v_KSEc}sycJ+n@<`hE-YoE==*Pe08$pa`%`3^wJP?3^Sl{%~zo{5p9SD1CdwO5a zuEnp29d}iagew6ufc>u5C;O5Vz{jTPv>$O`-FN8A^XUzjJ(>u@p-71Co5TO?%Vg(0 zax?|^M-p<+kJp2D1VV12Nq?>Fq*R$-qY{uwz$S6mZ6$43<}UT#jpB6-3CePeIb=Nr`s{7Jj9 z7pHb1ogB>dV7qyv-GZ_`L5h`54$@g}Ryr?#Vt9xf|AMttcbu zBz&oc7mxGDR9W*kE%P;crj`bS`e9qyU!XDh5v+>g1;#*E@!29jS}xJb zbhpOfv3H&C5Y~e!8Bf+bdC)ud>ZRjQg^FP$lfGVOi>%XxKha2~i#)*(#YKb#MgXZi z@?{<2YZS~jn2Q;(;ddicGULRm@-YnW%mhOcTw#AW5GM8HmMi*#1S{z^?dRom&u1t3-QRN zJhg+55tB)6+*MT@uBXpu0)$?DlD6R5(Eq(&_G^e~lJDxn^9jxG`<`j}vd`aTzaV$y zM1%P^4D7)jRldhgtevQXnh5G5T$5EA+}ZP!pVlbW8@I#fm>Yft%O;sprTyVyRvZog zeKQs55;LDjBf|SZ<{=#$CU^>b5P=zY?z8HdO)cy!p|B)+-xJ^s;U4UXl{&Jc(S;J6 zWUzuKXrKmb>ir_Q;Ywv}yj>Z3{$Ta+TMMX3R?@3)uDcL4bOJydf8}%9y?`N5!0&?4 zpve;vUlUbOCKMCH6XXd76RHSvs6zHvbK|=$y(j@m`EBU}6`FX+aS=qFeS-3t9Hxj; z@-WT*LS4?)cXuTIy6Z1U+MaPVxUU?(UX+zQ{qu!oH~6iKzXv|qd&-@f>OBE089@tC zPC*(qkeRff1A&Z_2~B8GZ;w8duLFpy7c{;Ba{V=j%cgfqD`Ub)BpCox#PJI*f?gRN zd2-48_)=NBI>PB(3(c3IA12p7jqw|XA=Ok6$th(2bKh^a_6p0M_?rG0R4;d_#|*W0peHOb7ryN*+2j<}c)g*)M!z!b|i?Bx|f)fgZkcrclUPbs}kORelq3!@^Oi^gIb4kf)r$aKZ*YU^g>fua~1(pJM0fB{mF& zqYu*_k>{rluXio%lGM<%W5%w2s1z(K@CA1qH}37ggx*yGYyqdh9W9mjjoMeJ27zk zg41WK{WxNE-Y3s#Ux!J=iM}lmJopqY;$!J@H^9~{8#Z(~?j~Kygq>FRIVJvn=IpbK z7W?;dL*{F}uXfq)lYs(ndAzJW;Cf|@Y4w(p=Y1f6lmg_OLg$JAQW{N^oMKBjyJy2W zKYjz#7w7v2IUAt@kh@KoHMk)V;Om@7_lM$4?%wH-ZzIpc#@3wM9>A;m**=%X6^3m= z*A)%ZcJBiyRqx^wB4sTN>G=(2$QQQ;*pQF;i5~jvL3k*+EfnOBiB!5#(hPED!k`IC zHxE!`COIUUdc5sZ_d?#<1MIOb3-@_{e9R(0tIHPvH?tp@VX*aiR6^y#AL^n>*7!$? ze6m_{v(Gk|hV_@)JKlb(@GaXr;+AhTxKbtiMkvAC_12qTz?fF{x=)u&E|tmaj!*n= z3c`LnWaRkv&ow-;`NX=ug3+2mz*V6IhK)RF1_f2zw=dkf(u?)aKOh6E<(^O>cIarE zN73~A5xyKhOGtoS4m5CQ^Dpw`MY{3TGi32~FegofBYg9sy3L4>w_5s`uU7Fk8!3L> zza+FD-|1W6)7pHxsy2QQ@dyE|Z8KO)C&g+h0F@<(zK=MO1^5JRo+GMZHI8MCxF z>FGJAV~@)Ntf|QeF%U0?*4{LJeNFCDBD98qBVLsLqmXJJWT+jGg*h>&uk${9>)Qvi za)3wtu!xCRMXN@b!(#dbo=$?n3!o$8+}aTPrO|df$ffEN zM>@4yIUt87T=ocxxL;6&zxaz?ORtBht$rI1!SL+V=4`NL?R6kpr>k*j2jRQBsqaIq zO|73Fd;JupJPpM`R?uuLQ{$dCrarAprc$c|&_4Xb+pTrgUp?*&{h8+%RO*!iDx|`G zu(CQXmo$6+g5)ZiR{kxgtL2`6)*z0Oe0@Dt^mzUS(M1Rii@_fA!50Ysf7jazjb<2< zZBeSk&;0z{AoJlo#vjPywqg(5z4q4?Vb^8SE_cC)t&MuaK*=VWc!_EH#Z=5`xIXM7 za6)otJuhXPx`unz9ye&Jar{>qpA!d!4mxdvADrwz2k z?wOy;jXib726}Yjk8#o5nSGjF2~cVEAfC!D3_d`(U_FPog(LoZvVwU(+TS~`L`O5+ z%5|a-bw&uNd90~}da8MUc4w@_OYq#kl4V?G4xr^_6S_C$#bEaCpe7(=q znZ+J}`F&+7nc4C+A=o+gDPV#r$vs5(dS4F=(~+Gb8JT`1*$%sf;1lP{3z2G()U&fo z8SFWfF5`V*r2M|k_i@N}DgGGHmjkRq@TXhBKY~%b*~1^(J6E{o0^NfR5g%LW!q0x{$YO2RGz=PYpNU2J2CT+1W)(w|_jpLRgyo#~U_%qW zMQSqIV+JRKSGYz5HE0xGKE)Ehg~M)VWrAW)xu>s}>BlaB^b2TZ+g;8})e|A1G#!E% zh5ySsT1iD-+=ntSM#5mNePJ)doNA90CJp(Up;WTrAAdS^+;yKo>$$%SKfb@*hMvRU zPKO*ZDhS`-Txpc z@^OdPnYJkb%9PZ$PcgP~cpmgKB+SA_NFb8y9sek+6lc&yvX8Y#q8*#rr~m97Z8<&u z_7R~Hig+K>{{pH91jyX+jU3S1yCuVH&Bxyxo+!)f4v6Kvlng_@>dtW+^%bZ6^#uj} z5&(9y7}(DRh(iD_TNRwn!ud0#O~t(}2ysyGIxHcl)9W;+aNcXCJ@6nI@0iy2ii4Zr zAPBCMoc8mSPu=>k9qnB{YCk~-0|*X{MVemizV^*BHOE5U4SQk5%*~(FMurB6Y8Xnx zW8CUhW4$2j`96m|S! zsFQ?roa=m?M1X9MsdRuq=+jZE+!W@|u`Co)IQoa`HR(w{xuOO(wdFbGe7!kDgIqnM zJ=OaNU=V5o$J$xX(0O!K!Ze(=x5V3>t)DNg&2z0nFQ`KH&kqh2cEm9V@u0tqSLSMc zF^uQy1OSHht{bGVq zs4Xz#)Q;2sL>P`?XRJ{qgZ(0;WPaUeeI!irdv>t?eqs!hPYs?CUjRJ*TCgDmPaSj+|Rk>_f+A@5InL%yV~5Jt~>n=Gf@B zc@Gfq%}QxnZtdE?MUuehrt~y|H~iDL4szpPB|KQyLDbYh8*ZE~tq9Y?w>`vKu6c7oTCoT)^Yi~ty^r>#F@ za*^nt`8Q>M9H>`(U;N+Gvw!we?-sb)@A0zk8E4{|9*}3R5KR9J__9vXr7{ZMF^jvv z-nw>`zx+9R*zYR-A_U^l2d#zzB8_wXY4No?K@Dpth9?I1O#Z#}BcHs)P!S0ata@k1rs2T5IUwC`~<-1xk? z%dDj<@*S9n%Y2kB)z#LC-y)ldTshv6Eqe+~)rvr=QQlxAdSdeZ+3XE!O70A^55s)x zuMe~WpvZpx^VETOw;xbKMjBEv-Jlqq^6{A)?7CfQ-Ir3*kUh1O)ayg_%eOaozrry@ z=so)6nhSG&e6#^KbstD?S1T4wGL9DA9nw05gcNVj#-j2%UxlX zm(v%eZ~J52FX!7nC#LxWF%dw$?+3!WsaajN_79)B8Nz2tJ7|Wm*1mAD@(Fodh(6A$?1)YjoKsz6Cbwr9SVrNuF~ia|p?UbF}gNge^I4u)*Oy#(_*eK6aqV z?C@cZxF~*d@~u9)wRTU!`L3Rky@P0#JMJqyDSm9!JLq=YKR0<_b3J@J1VVS-waXeK z4qO>J`C^OzS1W=DSgy2*S&Vyce6~D(qhr~Q3~Qj?`YypHos5H2oDUR#nSQ_IN?-aq!&8%XkCV$pRbz;Sd!I=l zQ1~uPXRHs;>tO4`!fg2#OC3leg z>c*IeBJPjsr$4@@#~Pi83x8dL9>_P+W7hh?{s}+?Hz?&B=b7%GHBgz2l>eII0lbs? z-ZtHQyo|HrvpX6ta$j|zx&HdGX^=M)|tYoS~s14-y`ndrUIw&bqv5iL0cjKa- zMx~0R)6Mg(?n>r+qojgn8e^FX;sD;yAn?u5BgeGppT4!jFSRb7kKuzH0ltFDRHV}+ zwCo_~Tql2hX7QqzRTmw+a(PW>S=(Gr$AoUdFo>b)3b$gC$QIF4quO9js$?oX(C|H5 z*Fq1caFdC%*rIKbw=Qy%Z_I8%D3zss#2G(^2vE>#gIWPxNhi4AolNH3W?cXMZ0(0p zo8=n6TnFAx@j{D2wRg?z{J31jICG}|k#uHDiULs({Uwq8Q3M2(MK+N)c4Zd?fv=yW zCt_k|x?9mksJeA4^Q6W2mq+;=C3aRk>|bDsNrt!eqn?<_`m(_Zu?knI<<>HbkA(NA z*q9}(@|9~sM9%rsnod`!LP@{jhVRX7(eHBh+f1DK%1E$Hzklq)CnYWUl-^C&TBbMp zi^fE7JZUSMrNDi>nSLuyO`uLMxhkGrm+_N6S#0J1^$G9H__+ThV_qNcQ~E9UVrl^4 z0-w7$5@!cQ0_VrhW6IqFo@|Z>sIN;Xj`^Pw5n>N!-&FUEDEp)G+P}>)HXlBlVSd*l$WVf>y*eOCZ!9jos{X zK>xF3JGLSZS;AKuauySnkI;l%I?eGu-!ih{@42wT*n(@y@;~A7nZBSMUNKDx0HUVf z`fD{ZVrG!+w9n^3gK|SK5%r}N6Wa}B1fWjX!eFFI7TpNX@ z!r+96?Iq3s@b5Sf{4_U|@51fqBJ{;VS=(zJT&(IK`SGp)V>I**rfgxDU{bx@K^1qJ zNV{HkilnR*X7P}dv-v$_(Je|N2S5lfS=jmcV?dQ3uWk5-b=b&&{sq@|mf1=uzsL7- zjI*KI#4qnGpBMIlv7bFG#a>fQugPflgTG$s^q#LW8LMEou1(V+n4sXnz^{clEDtxX z&EFSRLBl#fPb?vYtS6~#jB8kM`^g_tI($pQz)a~CMi@2D*A!o6^V z&X@Be#s1P7Yi;CcXty4bNG74JNLpGaacq_N{3FhqZ{g+Q{%M6Pj>mQoiFM%GkC+iy{`8tZZL9Sbzsr%hEK&XUEOto`2?icK2N*_W*B2zK_~NN0bIIRvvp< zNfAQ3MhE2Nb|(;tpf%^7daHq+{IH_ge+eqyeB}GEj$l>4=d_PzZ0cIy=so8RFFiVr zk-MViTd`=SzjOG+v+`LwK*;~4!1iz=+Fi)m_*ipbWyjlPoa0ftsFxdkh0&1lz0)UW z_WA#5-E}v7$CcRFrgI?NF@44#5<6^9G?n&(p}B*z<=l*rlZG&{oea$5YCZCge3T`e zBYC)9A}}NNPa7_By4MQ&N-Dm#-`EBTb0+ZBKlUNr_FG1l2(zUAiU4h-g@cV}Rd2P$ z@CWvsbniZP$EAA{xEY%Cek`VPu(JmrDN%^xK;R%i>mQOY1jHn)OepHMepK6-fD5wtIbDBe74;+A}*{`7-~pL^q~{p}ZLIAg>XRaJ|MC zZHD>bE-NR)?_-52i;uae=W?eW%g3|+&TDTo_EAOY1vOi01uZoGca12v@k#q@ZBX8M z%WxbId#%U%V-!=MKU{uAd=%@L(i}f5L-Xcw%bVz5?nkXbjO>y8PKyPm-3u%p8Ma$~=LXRF#ER;2w{8l+aFImfpHW~CKBtUsXadW3J%!@x zj*vq}T*n_D&kJ}31&tLa z+Rt(gAo1h#dlEbfUPu}mU%9G*C8L-(PM_yN&O>Y^+&#!38yDgs!zx?fZ-s1=mmFKUKz^hwzCMlww(b2}a4^Bm$2YnN z&?QFWR=1k7%O-XN!Z}NCAj~%&k$W<01?G!aVGkgep6SD8Kh#+y zH~LxK&cELU^q6F1?0}?G*gAoIW2O_iN|uq`$pVU-$bIgpEI1^|#N{ z2+~=<2CZm*LJ3DpGnED62oOatUTX4F26c1nerNsc&4JOkcFUCSOJB-%@8jzFN(pZr ze$(vl)h^1(#A(pqf0_|unB;RzLV@!0PS8n3OoSk`?%^KQrHwn0qyhKhb=%U0?u9$& zhGA7wU*r@=1E`5VX*y^Cmk{G|VT}lmC`eH6Z~0oPE%y+f!4f4VUz-_ghLu^Es^b2) z>?w0KdpsN&`Zj$#T?}7b1J>kX5+pC=P?Y3bI|9f- z-t&1;z3b!1X3;Co4-KYEgr@Boj&>i(b9V2XYKfgDbL|4wN>p_Za;UHpcNv!zBYy= zi!>+OFF+rMHf=IVNTniuO?Pt>7_{S7-6<*3-?2+ zBXY1``CjE2rK&@UMnAZu+2nnW$QqGuH3lEX+B?T1e|;%~YAAu-3k!WvgO>YTyO2zu zLaE>A=Y&%%hYYK7XR`PL%wVtGO^Y?2erw5Jn|m8YJ35IAsIdDu^@7@aCiWYkX!lj= z&RoRq;yzCcb!-P{=1PYUP5aNi+Gpkya$EF+bXb4=cfWG3;#_x&t!4sp@{p#Z+k9n` zpObB3or0fNFo_!3!(wg%b*{rzoA`<&*28kR+l#J=FDEAnVt>~a0^MRBq}qpwfF-=X zeYxM*E9FJu4+Y3M-E3mNF7>`KfA%QQHFD~f@`Fc)a$~M8cP^vl6d)61StjJGGJB~g zljBnuwF$BwI5D>u_~Kz;aMtWDVFvVbgE2rb`;YdyX3b&lfGm_jCb5ded!$W@qHQCw zEz|z?!37ih`S4R?<8|0yw#ThDW<;RA9c+oN$&{-X2;tq2a&eDz@GeJ}QxYq%pZi|p zFlcM%wOduv2lhQC?ehf@b$PG$aAn!R09xIO_cb-1F-@IVY!@so*sZW(M_zf?THTfQ zvG|Oog%GP3?u5Yl*ZDsC=oE0@7F%t9R{KOR`0td*3qtN+NY6^bOD=J>H!3w~@Ep=; z46#Na#3DhkuBm+BI#X|+DLc&-)~ylmAb<1P z+8X%{$X{~t6odpZkCCh5xNo&Cyo{NQ%}(DZb0O*mPTPyd*is=_jHsWSvO+%C5t zqP>wtt|uhhG`2@PW(n^LS)5)%6dwp7DS_Wt@{U47+BD zo0V>YqlqaL$c?Pa8I6K`@AA$2v=Ww)o(+=0toO@@CwlOzcdWeP0a}M)H)V$6Iwg-cs=JE$t@( z*T`8IwOB#^g;j&?O@g1s!C;qQ*9^)NF51*`!4c%|!s!?z=pY?m;Xp$AaOU~#Dj$q9 z^F#RKt>_R`bO9U2KkSP;GRLl>y$S72TiM%JT(wn0ZaSo{IYjSLJ8ag5LL z9QRsUt0}$TIMS^|4EO_SATEq%X<@vX9zKYkmtIe6FD=s&nm$)eo$6VHT1f}VZ6E#2 zLi2xBP2R37-5W05v(qK)dzPE1!WF^^XGwUA_Yd-Hx8>sqTDoxLySo|+Rv>D85-!%m>2CrM`#MDYqX1c<1}< zB3LGnsmB5D`NfZ~UIUH>1Xccov&c(BZy0ps|GBs!m(4ciOxbF#+VBL#`N4DYekjK* z^8U6W(L9m;Bpr?Gb%gQOs82L&LFbbPXfoghrc@&?=Z)V|P&UqK!rF+EjbF1NBj(X| zgZpcU=HqcqFMYNdiuSCoRm7B^TEAbn>%>~&FcY=OoHll8sm^8&$>=+rKeWvDdEDIQ z9=j9woh)^~fN}K=*<#%wcCi6&y5{Ehax^f%ubg-^7kAf)7N0k9Jz{m*7yHSOUObUS zu|B{@QzG0;Kc39&ic3VCJRDKd@_QOTPVdKlr-c`fRvz+sR^-`=i}W=7MEIC{sZhY} z`NZ_>^R0G%1YUmAQiVU&cG-VDm7r*lp@{SM9m%;AH7`Dup;Uq-byUD+^y) z@WS0x%Zj+!kxRu^hwxX>dYUHm8cG*n9B?k8yUziL&8;`SY`VW@hM>Fw&60>qzWxdP zm989S2>0pYj%q5bf4STn%dsNxl1_VmpPYnYQlH7p6L>PJc^({(Qz8c_F=g)f9k1G@ zd^O#9{~FPsP(SV!IVyO6pXw?2iHChw=eUXD{c4B3J`bOSxk!9XI}FalovS0 zM(8S#59nvZf;EspKK?)CVa{?>?M&Fr!6;VUgc3Z$A>h?uQ5~ z$$QrGdx7#p+Kb_43Mhu{9-1oz(*+$$B*~9y{Z15KcrNrt?3aypZIZ9t-%kG7aX-o3 z7A$0pYGhk2V|vJ0(`hgkJbhH<8J*5;#)b7W z0WX=P>8utMdhbN#k*hHRERb%)91rVzp062jlP^d+)n@M~4Z$H2IAODmAZpfoHf}#< zFUJHa&<{1pUs-B|yh~sq8@^2u&E|b0`2Hh}>#%~d18RuQAIcz5TGD4)GzwfFI3DZd zu!eGHxMpZA^C1(}labFVoUDkyL{rD%XQZ20gD+UI&zBDKC){@jvNBynDr}8);tPhX z4strj>_q%={!ggPG-=dc52=H@U0=wHMo?XmuF}RIGhLi^Ws{6`R1fr-SLIl~M&ckG z5qn4-mlo2->S8P727zl%R>LD~k{@Nb6}?2-ww(ZFd&i;C(zF?@x%)Oga}SqJ00#Qw ztVvC_{ObD85B=_@8(gY*G3JwGjWu-b*Skq=(&YIgk9TTz80z{Es!+TYKgv^) ze02JeH*_I!{+^aBr~Qb+-s9=2<-%JL4BxoB@q1q}KECElcV6DdaZbm+CX*kO zWIE48m&5z#q+?bEd$V(Y6?+8MJZ| z&Te%vGJhT41oug%(h&MBI^Shu+()?RLm)YH3KFWhXe@|@f1$!1 zcA^pb64To|g_vY>r0@22jOnia8u>GDjm@ml_MK4IAXf@!$UH9+YM!H+j7xAyw)mxqbHsX}7E~WB^Ji9w?Q8VVQ}g9i z`}>99c0}-Xt!SU^G;aH9lH7+5i@0d{2T{V$@`=G87%8K{m z0b?a5V(_`4r zoe0zXAS?y_pk9~AG`OyjV2gcn^5@2gjcLq{4o3!m5Z z_qq8$fFHbOR@76=$$g_H`i)6W;*%?>pZR;zO1I>0 z7Nen6Z{R}ibB(6ljeGEOPRWPbz?d#2NRh8B5op`V67ROIc``X0CAjwn7B)r)AD|Q*9Y#0{i1O*X1Y9{jq*f!#C*upb}C|t zHi~ZE%WCb$*>UxGWp|csL;fp$>?J>(q-T}#=vAmdn#QN>h-<@LV~Dmcltbzb{bZWY zx%&`^i~hOMTW_iB`Kh~?tRNWrPB(``zxW#5h9=8%@WgF+`KCXO?FChaNXq;_z+Jw>?);VPA>w zO);#8a{op9xG#JKh~zj@B?h|r`O^5Ij9;>yDfUKDJ|bs6rnLU<>VA#5W&)he`SD{f z`}HtAp2WV$vB5pS#+&eXkym*;e6T6Z5Le0%HnsFBAhAmJhpVH{>ZQu`4XXZj0a@Dr zi7A%VLPK4B&c}-5(Tgao(&xKFpM@a$?}v9TMRR>2LKv?nw^|t=Q{$w%oIx?@OhJXO z1L;hzJ$d+EHYSkO@3!m-00{aWQ?X#u3sjl|rUh*b7LnKCqQonD!s>eaz`r+Yx>HGB z5nJ9oZ=4Kc!5D9sH;O(qxoJ=QUF_CvAvVM#Gh&NG6n(<2o6p#nPTTz^A{4vS-&}aP zSVz`U)VfxW$Y!V-bc2eMCRe}icy@$`zOiQ3Bucd)h<&?N=3{;;Pa8V0DFjP$2=ej_ zmv8w%2FY_z!&jl8W7I~axV+%Fn>Ec{cha+9efhm|$Xr*jNTu-RGv5jT zus!xk_e6D1Z7E~cGRV^tO&QFJLIwCBk9aNps5FHzDJmnlp(K&d410r<%OjjlbuZL*?pEF~{z#ESaU0N-|6^ zmiIg2iBVIq-lJGt11!O*60383$3}l}-zE*BpY#w;AT60^DEd#<=T*OF!qcaU$@#;{ z(PWDIrj_9u(l_I&1mUGP>Vzev1!gU0Qxx(doY@R$pQu5DFVFP_p)b*N+gmD|Ge?|s zzfZ+RzK-pi%d)ifDv)jh^GY-~MxQkF0|smx$CsN)+j5E5Dxln#T;|Q?B0( zcu?>Ye-xx|$X(hm?A19t`S~s);77c=UoA&h5Ja;wNh$AZ{nh^{m<0BCgvyZVzu))u z4%|Op7;Z^q+v@(g(`^*KR#)B@?RYz+KB=BBiD%S3Wkj8K_>3NZ=CDbc-ZGNr3-#I; z12qi+W`#s=A_&yiYHz4gAuR&E2LIoRzB>biX^9|ZX8f6NFTY+z3(yd}a4v!s$qxE( zX2cg06w#Y2plo?)ngzDh?8vwAXx>Vp-HuMfXX$vK*z37Um8p%%aV_RZaG#ekx$s(7 zAsGJNkBV^8^}U!X#ZSGu>p&T8_9klKE5|>&d>@=gcvwXlDkw^c?+uN7lY5CzQ4l*S zhKQDLU$6MiZr{_jev{s@EAj&AtBlR;L>R#U$=_y2wz@kN?U7GB_`+#-#M>1j?lZZLn7mp-+beHKLvQG^9@eT5OVpJu zw1q#`_dlQO$ib9+IrJ!;<@+kju~~%kd|#1**Semf)h}&pOIYYk#vFXd2I@4(->*M# zA18+=ZT)`RPF5bw4k{NO*D40<=%DhxbpM$KGV-ofHOGVoa2%!?#-L4g{QI?``}`7b z8=GmUVenLc3?CZBru%BOe1S$SV=e?lYBEx6dBK9i9b5KrEHxl(xa8R6Mk@Zq6&68G zXRM&;D4t;|9?SJD^_x`wdD4nIT{dFjDcsS*m1*qAcK8=TnYZg^0NKrwMQd{s+2`4j zTK3fq8;8#IE&k~0AX=#ZNUK*j|KLqTGpc~#SQGs;$$bj^l8Daz1yrfKx&}h|zChbQ zcOsW!o9^*B3TT%-^sDlT>vuCd)P^Y0Kic->WTMcEl>6!eLH4YIr|r@x!9{)fwK#lX zQl{u~9gEH0H7$aK`CDMweXNj|hRK&dGT-cDq7)v+clPkQ`|5M`@DSk}?hjnhZ^S?R zo22%uOB5|b_$HREAfoogcRympx6##((oSY(wI6H5p76faT$5zkaSn13gXCyJf{C2l z{X~u*iIwU=v;v-;s(P8?&$=GI22Lr$5_SK=VEmO2!Z^GyE3XD)K}7o~s8KIG_jOS3 z2Ub~0vNMBpxW8Ki@so#~lB2<+H3Az%0dpmqCI8~H68y%?m;+h|d9=UJ7IZE<4)2ev zX-UVre{;F_J%^lIq?DudExbTt_<)6%!CO$CS1vn<#Bv0}ke1gt2&T%yE-2O2Y7wE~ zR0jcrl=Kf*fW_I*2h-8{+M_Mnqu-EYFKbTLjVGa!~S;Y-$~8Hrj!WmD+=Z*J1B`0Ml~rh?)02K_@?EI z*ix~N$;48k&a?=czMMiB9Y@jzDvdZMj@K4{pA}@&k2Efo+^&ZC_-fNG^?6eJaUhE0 zh0n!PT$f1QA!EOol^)L1N?0rQEf!nX% zNeZ8Tg_vG#!hY=Ux6}y=#A*iOa zNOsozfj64U1<1x~uZWG=-oLh-A5$;#B09dK(e>r#2I$bi6{Tj7hZlT^5b#(0MVmpO z_YG57`Bo>PZzZR9+jzdE_>ctulRnaIIp2QDl&Wg8l}GbCCWTTL2RsFjKz>YlyKjm4 z&QYFxtbra zi;V$Jh#mtK2hZVTY!LMnI5|QkVqS7dTyRZ^FN;LV8_{t?{5HY%d&9xL4;MFsiqBjg z9njb6!Kpz|+XafJV##sk$;os0kM#D-_(=UeooquV7 z&@n}Om|-JD`?3@DiKzFJg@nYnMcA}3UC!6n{gdeQifEW%?7O{$_&$%;Qqe3rTvzh+ zd)-t-q|PmZawbraeKRI2ynWew@F|FP8Xr;bdRRS)Ml>B_VQ_?pLrq0be%GIl(Lngg zWq2h$I{8jK(i!d<^3{pGp&OxfxJG9)lG-Edcg;4i)?CU}?Dg-EH7S2j@rDEV%|DSv z53=6FmoHsFb92-Xfjrf}Gh)1g-=BxT@)2w+rwJ0|F3;R@O3U2tx)OJ}N+ON|oCm}icO4)e{-26o}{<1$u z^WO=K-i~!+uEX=#gMnnxtk^)I*Qjg%s?jW-+T_CNPjsqemi5hj(yc!;c{iMQVv*Ew zA7U@8YBBMeB_zxyrxzsPU!HddpC0IBpLYNL2zVp%z)Pel={Lq)8Rjd%!<){_F4l#4 zC6MzPN!fK!lm*R=N87Kuxs+^qD5*wV{zv0YulOQ-sjVZ$O{&Wf5VQWlK6zY zY)^{MdSr*@$TTG%`N7Z%g}kl$4j8zdpAlQv5nkGu!dhN1>iYeomjc6Ja7B2Z8G~g%h%nwC$I4F`%kl629_-E21nZ1 zH)}J|X65s>MEpa=o$YD@6AdVu-}V0Bl+=6PvW%RtKQ%fB*qBFZaonLElPuM z5oT2>P3@|_8WMjIA?fRCr)audiO0Plj>CP1MLU|Dr;WH+4A}qYVM8%dU63Y*4f;DI z2#jm|6={ijbQRERUW{%5%?|<3@+6gaV2O+pwueS}HMl>78uIY6H}n0&l80|gj1h$w z6CO?W*nVJfFr)R%J>&_j;%|JAXz(V_X*hM#d@+!EaF;7jx=tUc$8iMn$bg31Uej-! zGGfMam%#t1)`INTw>@b_i*a1}B@9>W3&=Ye2EOXfzWhLlOXojuG9P?97@ym&(i8|m z#FFmI#Yj`q-Q@1j^Al{Uj8J}=S33tXhDo5|ALG0U^0b%GdU1Xp-bdEMq*DhICkWys z@f`U_5>xq9i6lfk?YH!LXxq`htar+IGE@4w96=(%m?wvQP||O|euGUUJI=?IJ#%of zhPK|^QVGjpFXq$|O9MGtv+DY->C+%EZAo~~FyuGSnTo~!$y!Zj*{`oV>ST+rGg|4` zEUDQy?1)u*Uar!1V`85keI|Vg}bhDzU}4J8VPp`xl;+|w0iGeac`-hFKf9)jyX;x^ZJDI!LaP-cBgxN zd}e#0*c<`Al$_lQ1Z(kaJomALqCt3tncxOx*`bP&GNfQiKdqei)5Ze`h_O!&gMOJI zlm1lr<-kbcJld#U%X&8&&EDsO*RLNk>qTCE0!l7}JFTDJ`PEmCh@|h{E0Fhv|q#Hq2q5KgOJV2GC&n;D~tCS^;hPQ+ywxN3idke_q~?uTjP8cEGbl z>NNho8v=KJWW(Yb{uM zN=5YXeK|HYV$PbGpO)w8a1*~XewSl@p9b2zm#BW^^D`(7*}QKi8F$8Z)2{{GjmJys zXcCb;_j@W{*CBxl&omJjg;k6BN{`iY2K&<<*lN6KCs%o_Ko9@6V|h5QpMB&&VnG%z z5lisHV^RM$?k?2YXTe6yf9-WH`Ci+`XB78A4ovPx;-%|Onl8B=g8XRG>EwiG_v>UZ z3~)%!>cz>$uYAc5E0Q{@f z;vtRv^Q-&SPkj*7R7ejfThqElmgEG^{!asvx+d=n&o>EISyrcxhvky!)4cUHatt9l zhc{ukNv|pjoDeP%iVtXl3$A+75$7}}Ic6UT%|rvi;R%n$F*)!r=_gW$3fkNKY6Czf zwEMX9$}O*Gu0Qyxb#H(u#qc$Z%H9-x7vfOXUzquSQ9_)=PyD$@@z^iZ@L3(Gh^eTay)x#fuLjO_DvAX5!CBKOc-l~br5QE9d#-5%4c9BFCuCk^H7X_%<(an z@kf>J%)z~~3FSSp!$cYdLtw)qIf}3@ze{l+Te?5e_cu5V{^R^oh$)heuQYY`yLa;9 zc}NXS3HDw_lhW@BK`~dl6Q-!QTMS2kEpz-#qm)2|{BD2PrO32jk!Y$mnhB_O$bD?_ zJ1afU7xSP}d;4C9!BnKMFIHJ~m42=|0}uXfda*0=87O(YdS=L5Iw{faiA4%p>-w|> zbnyY3C-U1oX`^4^N=ZF#AJCfPmDfV${ZK-51khCM2!LlZE8p(+^#Lxvdp2c%UG8Vy znD$2RL~?h8k!hSXZ|9xyB=D^8njFVgNYcbbfz;;J+GugX(Zd7k=MYRZA0HYL9jAx& zyg+|i)enUGi1!!J3y5suU{*)-UT>Qt=FzP_ z|Cs7)AyLAL&RXzw%+JbPn249`mw_;b_a}bx*XmRD4MP0}4;#W(|A4E2I%M!2((gD3 zSxD(eSb?-`UjoeMy&JLwZz@;5gYc$?my1o{&rzR613pahao6J|n)B;z-A~%BA!#7H z=LWz01d6SN(1`?B1g1QFo4IS8*+(`#o9((9{9bo?_*tH4+V^5wm3cTSKR2Y$;eButl zja8cdf*VP0?I}44Cr1Z5EEp@XeEmdjeFPSLRTpvPGYA&^t z-pOrf8fgzt;XqQ^3?Sae(>yi3-q-zpl4pN^j}IVABRCGMO1{4U@kJ8oUpMt4HRC7Y ze_t&T4nXX0bR~z?`Cw=UxxbPsP0o4gVW^m_{U{ydpv}V3v6V2 z@0db>Lpe)OYc}2+{`hKNHrUK9I=R^A0zYg&Ej(d)t#vyXZgECBigEB1r@Zdd&j5t6 z8PjO_N>2NLb{;E%JO_m8Az>#(GdP0a?>3QDm{UHW^YQy|l|FSR{ZWj8p%?n-P&-Vm zwpxfp_Qkf|7+Ze@a>KlFl_SKtr(jS3*e2c-?5khnPz4*a5J_A~+j4>LY~06pTu-Oz zq>ouT02u&kOn&bdFB-dhKke6eC`<*m5xD#spzsxjL)%%}M6u+9^?2pfTEtz%0$#XJ zXGrGkhBXG{+T0#sZP|l$FHi3LNXC~R>v=WPmU{{xcv+c>IMtbb9b=M!FKvlh*Qr~R z6j@+owT+t?j5|hMhJz)fW%br*@rB%u^m(`({zCQAd0i<8Y@g!q^Fa71t*FaB6Cq~u zW0b>lL)lgqup@ZtAJL3HoZu+hulxWzNNpY*L#c&iSj40LlIBzL0%`Bg7T*-*ma!{qzN5x&|#G`bq`l_28R5MUJd?EaQf-cExu#X$LX z2tCZ}S*V7~tBxk&u{Ny)Goe`1k?2=3W-X5Z8272cnR!yHbc5;ZNs?e)x) zE;|oO;X{$$Db^^k3w88ws-W*PfO`FV=??9mAsw2dD(a#s7%@}aQ{j8w2mMsV{)Yd= z=HYO@yngu3K0Gb)^rsb0zt*xikr6V%h^6^h8V<=t zK~1Dk^L(9!vG>*7G?ESp|A_+3;BwqI13Dn^KVpL=SQMxz{Zd&!^Fr@va?fO9wrb+$+eYlm=BiVug;?_l$Gre$uBx{% zZ4Nli3v=4+--zhm`u$lvFp)pUe7{J?A9}*WQ`$sS>U*z3SnM$Y4!i<2-?0(@Egv4N za!#ICjOMZ@C3>z<()Ef*Zt8im!y|7D`+7m0_Xb;WUc=(0t%hBV83e`2ceEUfqS{9S zkQml~`Xb%;TWl?|_V{XYsoMwGAu5z8`gR75FLLqudg<&}cS|susrn)}(aYA*K&dWh zsc$u?l}|rp-4in!Oz|_o`iY6xi;s`Wo|EXkxALd99}!#C5@Lt67k8}(k!0Lg!11T{ zS$34tArc}W^?ueoNzBK`A+$I|**VU#JiQGFG7UFFaG*H6ff-N8Dm=pXB!XMlVye5@6}jDx%ni0 zLF~x-^dAR31l8)tDyrTk2kjhS8WLVWvsHocz2X1h_Q@W#j&jt1V~8VJVMj+#cwBxP zz#1cNG48k+Q;#40&Z$6LIFaTG9?~n9)ZjA|LK^^l;`&x#TW?W;?X+w}^_&qk)3_Nv zU9eZ4_&fQk2lxQK=2H(PJd9W$7iL6}k|QV}g&EFYZHIpC3rupu;D7LX{M5bw_95yr z9sodIZ9+2qy)gi{7*=&BZXPo3eZLb_e|d6-M@bLs8K z?e!u17lNIf?DIfTcd`9(B!vY7;A`pWo+ECwmexu)8OoqPI-NJ!-cIGu(tP|LA1VkP zpPR}IW6ae1N5j28gS{6@b%KCwm2X_~*a4ZL3^w=N2cj154(v)OwCJDdoy8D&%LV9x z2`jne1!Sq{yg|o^NEVYNZ=Y>{wdPK~XbG(uBxW9H3CmDf9G>W4tVJ?2F@0Rj7qPY{ zZhcAsa1ks0i1hQKyZzutA!d%;%rS}!pL#hM&upK5kE&gy+5RC4<;ppVdS6IxrOBtBIdw69+Q7SfD3IB|9~RVcooF!6)<~rJQ<<3THlAza70|jxXY6M1@4!Rz z^l*U!6Bs>mZlr)itL-V?A{e;-ra~FmG9|`B9KVFA3WyTG5+XH&&NiBCk} zUgW_(_vlW%=|X=-S-@#0q^(jX3=uoXWbBxO`-emnP1rAoamuRC zSOuiJ1+!bRe&BgxCLIQGBpXBblF$8+S>;OcKJ%t;52jIkBOxv8d^KL`J_;C5;nh!2 zpOSmIhUFUm{(hhPd?Nti`Z=UzPosjBxo^mEAKf}3XOnrJ#_>IiJ~*)Puj(ur=&9=S zK1h`JPT%3lK3!jfSH{?2!hyEvvR@LH;5Kz%cH&mVhC>vehY@;pXE1j2yU=XZegTFz z{w>emZ5v)imaxDq2N@5IGAB0=kv@>Jri=bwjCATD`0)`NPj)|kIA?yMOoJV)gsbH2 z58Pl*cxm}z*SWFJU+&|9Sf*e<-43At+ul~}>F#lKB&;s!x&Jx=f{Jbn1@j(axSzw2 zU2Li|P;Sco*`1fy2gwYPE?>j@AuVqO%Qx3ej-9gKHX+@;cXDXP)MDts*A|x(n-As1 zK2p|g%=Y21&sjgr*(6D}l{A_pO|dB7fYv2~TS6oCF{}~8vYC-OA)uS!wWij%(svP6 z)57uW0--xhs5s_{iB)^k^{L3Rbvz;^G~*>5|o%aOH(LVJ3=~(+Y zTjkM-pKux}$JvmK@8i7tSmnR97XHN}EWf(k_I{_Fkr3w5<(D(9%eybF*@NlCQt08l z#y3{w-w$r_1~?eXtqgSbDOZ}sjwk=XF4{w6%Q1rVSjz6vgR7P=%MVY_Jc&r52i9Qa zpCq6~&Nd%J{yG2>lb_KqiXMJd=keNUC)UyS3!Hm;mz7G;M&STL&@oH9kn3?}+gE0Y zeb?w=XcF3B=Y?UM7_ITgGfiI^)tJE%#!=-XdXKd*^?jt%5U6M&$`}7VCi2BX5Sv+j zf2N$~M+SboJ45jB2v8@TAbxbpftq;*5S z08b?$__+Mk-e`li&XEp?!u@E59w`pQy0X^3l*1o& z)oXfvzAeb)k5Ek3B{UgU!8A#|_wT?v)E&qXQ(pM>XGF|wSf1Q}Z;3mM^Zi!LuFVCo zG_j#@cKA0p_m})*NJAE!WB1*Fn7Fv1&oG@$un(>-S$Ts}^VM z_uuR?v&Rn^N2&wtwG|U=K7pQ`{Z-amASXAatCY$ET<;y-ut^ChNCCCl&9P#PQvgb2=-O| z7V{tHvx#`ootVph>t0u9(1gOO+m0Fnio8M`Z+n9`BXQ=Qpsp|xM8v>sIk?3-zNW#p zb9w1rMir&u_o_L0p4-cX z$-9uhFGqfU)KnSzb1=V+u3qb;n{RNYp*M8@)T~xlHT1&u;?bh{iQZPZCHgW`M!m@8 zXM#OP?uk{*pItOQzZGK(R5?-Kum6=?#eI82KKme*{-%;juzf-RiZdujcoe1$Y0;gz zLI&_<4wOl#o|X0DDn0SRli&+H+(g>-+F1P0a*NtbVpV#bGzd~NfW91 z=unSmNcdfU(VbJ)pZfHNuN?A2OB8Z!>aOvTEj6)m>#t8e=HyaHBp`+_&OqA-f+hFr zpEgvMpRR%Fock4cG9Ds4^{RU^wZm`rd+Wk>XM8iuPWy28`1}Pg9ScSIT)86$Fc&k9l~S zobq$iN%c+r^!-d6)`M|8)d_k~>G}E$ma&ZNDQqK0V1bAiIYr4-?bnN3hp1atPO^87s+Id?2X4i~XH5U{`)e zu$+7?quu~gSq-q3F8zzWQ`$@AMNSc4fCoaOydB5&)U~hiGVG0g03X8a%`h*96Whgk zuL_DC!C3ZO0~s+dKu=D8T3`Knc`59|^v9IVq##ECJn^axf8z`#CC^xk?Vr}_1=W6o zGsoAF$^5rchV_ekB;DTbH4-M&IGR83K=9p-;#3amWDaGL3q}JOlC}5xrWq=xeKip< zJV0=nfH*49)oc*Rjzq}C90b&0v=Do zSt78`m9aw*9n4|4{jS*5!8dwrUme%@x^5bw>o4&ITGPW}Ki0>n=KaP^$KNj_K<5I! zb$_KfyTROEiorfwhKwej@`6AOIm4*a8~F&I4RvZ(-bSWlD^$Q1#rdtsGKV^d^pHjT zu+k~5A^gp{5{=@FDStgOQw zoiF1_Rq-4s-|4e^snZ8f9BJ_kM7W_^+$ET1mrW=Cxz^e z#fYl1Uiz`=BcXd&w6KApNk6c2-mKWjy3`=!vEkWABiRMfk&x@#hnt62L$5M$UfWkD zoS1w;zpfZ`72B%s#Kg)VgY(e%p!Rh!`3FW0xH>{tHW_;{c4 zZv=L37M;_kmCR$Z+|qrxU5F|eg9LX_vv%-AdRod?v~F=%s!9ouoayq z_mds*ERmthTyQ>Pip-hc2e2;{V63?A^+Cw2RHgrE55!~A2v}KGrpetjcs>4+bY5$U zYC#l!C33g~0ZAfJkvmX=h$vZj`dRdxZ_bQuDFe zsEnC78=sgc1?@Lc3VYb%fnY>?jtFBeqHcreXRH$4s}+(+BkKwCh1Ju9HALBY|I2E0&ND9*ff4ubbL(VD`27F3%o~5Z6$5&i zoDs5wpY&9219{P=qB|q4IPehtn6#y8k`#5RMhK_rIBZzF9MKMGnzzoc7PS#ea}MD0 z!r`g=aNuoAqbpLFLwKlcAnh5w1jtNf!ULD_ z(HvPRdTeH@5gvFuGyh14^0cbYskC00B{XESP8jU9r|E8V7UI#qr2W$|`2*L;qJG7; z-oI%&0CuGEe)bG#%6f8l4#1?9I@XXRX4F36yd&#P5>MD;8rI;vwjUU!z2|}$5u6uI z@HQx04v!Ohc<~9NIqV5vQD=T9S>!wr&y>fTaMa})lBTn6YUD4N;+2f`S6I|OZ&FI% zuY@5V$6tQ8AB>77F|;s>R3Jz29_x%R)PD09+u_QFJ|TW14hMTDS+Y@`L}ID^h5Z?@vcRK+j_BcYY>mCun*1-KN~P zKNm;q`<=lhdkmE1ixRWXc*B*ytvEXr80O>Y@CjZgj{3A%0p}iD{30sx@DatIA30v` zZ4j?K(kwWBm(zB>0Sh~8hm8m!*6k+mtrx`7`Z7(0)q?x-0*5Uan=P*T<3Ken+xr3KH8yLY~>`?#XaEewy+O+ z&u0!$Nq$+5moHI5>9*YHqPl3WHdy=9pLjlI;R_eMpSN0vWK@|M#G!cSOWcEoFbdU2 z(q**6;DXW6)4eDkRL@q0PJ%j~RrIUw3!WZMw?uqg_hS|1^EX44_FJxp1FaMoa)?gu-^{CVs6YX{>rd`+doM@ZIq zBOgWrg1Ll7Me`saPcuPbodk*YVzXau$QxslTj!r0MhHG_78HQ0E7dBGR2}*rH?dR2 zX{~*N*|C?%@cBHFaAZIdu6b#E$RxG}%-ITkUeD6yl)GoYrq!+#zgm_F(fc+_e^Kf$ zyq`%?@V{=s%+`Q(1a|V1KM2y#vu#Gl!15FtLWm6aDwV&^;=d=G?zxu)5yw% zAh^f7{0m_A&Fmr=dKupUnhXc+y}U=lY?N%N3+$fiK=sr!6arx<+ZZ3Ud71Z6pqF_I zo|+I%LX?81$7c3RF{NFeJblS2J7$0m@ygcnivHKA#8Xn7ABfx0^&?@f^q20d%9|_U zMT57mV*)ScXZY7GiK$iICseIIn=PS_=le+#W4nTZNrDwdgDwIuk}d}P8yweFj@F!# ztot){<`7A0meF`?5PBS%;I#vweAwJx?SY$yDV1DFDlD9AV2)N~q#*+SbWa)-8i9ps zd`~PIXk(<~m!!y{jaYJY<7Nrs_1!2h9ICN!^K(CwT3CF3`FvIPFRx~zki3K%bF*w~ z@VopxjN?5_uW%UIXIy)m`90oePx#B17cNSf;jww}7WT&U4J$-P)&_5%URf$S7Suu| z;YIY~O-#JY%GzIsQB|c3D~D1`LNC4aD-*0|CJS=UNXIsVS5fUW2Zmf1EIbgr(qh*AhK}j za?VDR;9V-1&*boQg_S@@#D;zZ97sRFFE>-HUy5$34Digi5Q!B_O}VcWE%Cw@=7_gl zFBaxfxYzAS-}?&`?0fW>+fn~kFbNlTIaYm^EIsDzR4oJXk&@^mq+s6Lie36B@EO!f z;?G7ImG$ZS`*7f{)iiwmB{^(KJv^E2iI?=IOm_Y*=DGa<@-gfK7Ct z!@hOI=H?Bjx@$EvZPPc_y=)XvOnzcB$rCx1ukv6xi2d{fl zWZYNy`gKzg3ut#2T8bnJ&6{I*WT9UGw1K4esB9Xss50z1eEf8h6wC;>q2IFB#KC-0k`HY53S)ymSY7t}POopqKUdD8Y40|a z(6HankN0GuZoKdAi}&}dxr4|-3)Jnb!N&Md!2s|0V%MKr9T@Nm#qe!G_HsYnA$q&c zWhZdVGG<}aFF(iY`-S({H8f?oX`Y$}C31WCjZ6IlWu%n8e>yOH7E6i{#>&Uf>S?Zp z6`h3EjkaZ2a{fq2*bM``AxLy3P9k}ywhPYKI5EOjUw^A{1GwSdG~KF zn)P1~LLxhIhM#Ay)WqJW4*T_enT0imEbhaHkqEyiN1er+KedvsmM1GT<2wEgoQSrV zBIHN`odT!%5FQ`eoHYhl<^j4ggzs?j0Vc3VAE7J6+1NI$33kadr?<3^B1>f z>&0NtX4r{(;3zaEOnaCb)><`dx9WYD$D#gJHU+w{w_;mz0!_T^xy-Zh4u+HND^D%f zCC!KJ4THyT`-^he@yt99xBI$ZVB~nnxXSwa54cddMo7h5#kS9z$_kK0lb=o6xDB;b z0QjHB@!a3vM=O!*CSTG`4l}#L1NV4guwOC4CkbzdVG{ zlAT+pzI$09RiEsDOxid-d;Q(n^kWgh6v|}}x_Jg!Oaq17=}q0oV|AO6nhdQ8rKY+1 zAb|_af`GAH{`AzIvC+mkOb#22t*>kw9H^;3zxwCMfdvjDj@Vw6pS>R&7R54gLI-S- zbT-^H)S@6yh@l>3K~>lMarwehFX#6Vjp?jkyJsw9^j$O$bfBDHio*BQ%50qAJzZcQ zkufQ)D?zyq=08kv)^}Nuz=1vzeI=SbKl?BGR5=`V`E2gE9qskqNs<7je+4w|#t4~N zPSPb?8&fy+^P(|7-Wik%ykkEzs<)A}v*y*$+--QZuA`q+T@YvyxH@B5ef(8FB` zQzZ9BHcO4jzskrA7SPGSs}3dCKh~0gmC9YJuml8EcJvA>a}Hjs(8{0PSn_UOV%38h zeH3AD1;i+1`SimO(ELH-b1@rhT@iSM(AqRcKCOCRA}4i|A9*)#jM8w8`br7uv`+&* z^LUE*x37do0l?%{XESwMtn!DFqW58wxx^yaSaXccq_CM!5D)hG=DLMevF>AYfR2*s zgg_0FMe%UA#OLL7-G_MR2_v+_;+^km&EbDrJg=_d${+y33SC2m>y+J))zL# zMH`2Z{M!w+tBpVT@! zF6i;8d-x?U(mvb_V5&@EE#)7e`#1ZO-45w8s?4w(G-$5yGT7fl6k&o(NA_n!Aj8Bx zqF6QeN0lf83D{{Yw}q119>&#ej%W~s`GfvCo&%zW3f()y0k46iM}J=(?g{*>i_@bC z7X5g}lCOjx4k!!5Tfd>j^)V*X|reU#$zc z&CT!YJFelWW@f#WT+}o4e@VDt4RC*lXP2dCXo}7t*Jrno|Lek=T$eev&48xD(@uqx zX$I7o?@aG8FLewi=IDIIXV1&sqCi==M^>?lejM!Cb>rnCKP*PZf!q>a8-&mt=;t8^e@i)z@B1zXABeXE+bH| z)i}-;VG9H3Jo?HXMcgLdN&{xczc)N<|N2hIDhchpdu699ng7c*B=$u{IIM$D2~=} zl1eX+to=dG*%>*TLbVxL>#gg*SMo;h8WkXsugf#CfO&_hnvE)Abpv|X=5}bEd>7ER zrnU`S*_uWMJbWKZpn1QajKA#o=J0+O9mO+wqw>gb7MoZDuG^OCVL10tcH*DfoQAs& zjZTWZJe52>A27M|tI6U@0_*tfeyzb=oMt~bsgM$WEqw((*#l&{D&p4zcIJKp^_~uW zEWTJ=6*m{%#zLUl9S+{wJY>` zXa9Ka9!P^~Z3Shpv&D{^3s_<2zkO_4KRqK%=y=9sAt^-nID#mVz{R9nUi_7$ROvjP zh2EDumO5nn7*Dt8$b>vcy2UJoB64qCuiX0C12q})7cye4*Ejq!*I6guOMb{dPQ_!K z*Djwwv0~pWWRr9+O9JclaZ8`kGCAkNX=@@)dFSObuLb4$DW*@Ht`bGxpCz5^w|+W* zuN@>Ck8AN(CP`yfN#n@2U$r*NWo` z#f?UEWSG0&f|05$GB_UQx#`?Y@Op~KUTT( zcV{ihxYL#&{w*DQy@R*?Sij#!hbN|5U1kMM%JYeOLtwnm7DbCI7>3Om)p-2zn%-dU z13&LiZu^TMCCP!+DR^FJJ$Q@Ees=r4$!@>uHJ4CFCp)l5cw$wbPnl;9!b?^NJoht; zeibaghaT<|+DG+?q9UH^Xq?29yRZC*S(n)uFH^e{SbPG0$EPUUOM_2jjX;N^_q%)# zML^o`8O4W#5L$I-o-Z!1dPR3s-qrF^mG|!;=7aB62xROD}5K8~w;E5vN~D6}-}Lu=dhwq+D6MdvAc5{r|q; z(843~;LaIPxdxh$ghel;?5Lf7ak(L1x9s&1CRom-${g3EHNPIh#J@Dj+JP=e;U2nl zoNm9Wk{e$kKl>YNe)qR&*Do?Y0zbzbTRMk><8;pBHJp2+-@hQ1RQOxoBWQMbzmEHz zEfx^U+1LE%vqN==-gJP;lTi0IDH*lDJBk*wz`H_JngV1QJ-)WV-li&g}J2E6+A5uiI4 zxtXD|EI|@K?^%@`u}u8~Eiipy@l$>5V1Y^55<8_T2@CNJM(ZimvS7ZDTu{U>?VH|j zKXfoTJCoEWES4h~Rk!n>RREZ`bJe5#d=m@!9*0vp0Je+iI@-VYXeyq+6w zyf5AxI!YZKsEKRWH7A7J2Wu+R$gdInwdh~}ZoKbxMCLji=EM7)ZVmX{fJYkFKroFF z=>?4|q-HA=@=&1dnd7kl%6!mwf2m`3gtK2^EMDcxmceyV_%CeI$$;qrb<%P_TnIzO%O#J=vN*K`^K z^B(G`p4rc`QkKVPJhQ96%pacrLJWH8c;3x~;qk@0$B+}QxvZR3&o_}VL%j&wwf11A zhcfFrmBr_V9uj$e-YhOKahpi=iOMzC4KBo-uYwl_6{gP6o`uqdaWt0q1Y4gF!y_0eY_@yfPiC+k$X7j(!^Av zLRH9JMBayFlI2_O$M68WZ5y9UiANCFMiQ@@WO+o3{OC5;{p)Wo_l~NZ53OUZ1~AzY zi)($owy$WQPtW5oxs91K$Wag+8SsG&>-H`|GHepBcr&GfPtZ8@S*66YDRaM5&{h9^ z4VFIDw=XpB5EX?0UEF>6wmX)upJldJO%0GwKX0ac)y=4z$n4moV}%5RlnbLZ44F&w zUYHv=(GP#q>9bvR=MSqF==#99ke#7%*uSMxRXlv49;N5axIAx|JMr7QRpb_|fNnrEOmZ)bRs=V~KUb0Uq`a-B=pWNo_shEV_XMxW5d&!-B#(K3 ztI!y~+33&Jwf(%*4^xf7f>l?Ur1EnctM{%$;03@P=$s}3Wm!_*;yqYbD<#zl6?kQ} zzU#C6y)|>6lY9rwvk%?yuhHd=s(4k(A{bwmZ_IUD}zvL|i?FKS-Z!gBVzqEI-HO9-jD4 z2W;b9XbD=gH*1B~hd8?f26wLOQgdeC#%Huv%6aigq7d;q+D?p0CvgFU{(7!n-=p+O zsggg~N5iOvEaTQ^dSoxhfDL5!ZWH48*v*T_8CAldAOA~Le=-SY-Q%)FT%5llRy zWvpeCcX#FB-Y4gPhv5rHfiXu}r*e<7M<3*dypNrL7mY1^E?mSuf(sj4*T)Uv;68R+ z+-bj70E1mRqoqF7xSzFOuZ54EJ%$=mum|;xIv`zV*DcWYU0I*<;}DPJS&F%U(Q=Ve z$;ENTq-7eE`9h zk{v&>*4#i^Y;7`p#7YfA$sccRrFdm7Z`pcq$2}r#nKv!&BcfdvCz|svc>?`op$zG} z5cY|Mu$TCCFWSras%IrWldK(4OkS*LW7RwpFm@jcPZzzmlX5}E0?-6ed(|Hdm)iH# z3H0~cRxt54uH5&Ww#=8f-^hgh+^O;stf)$+N4wWM%x5ih)M8lB8b98DdPZ%8N)w=i zz1DebeB@yRo14tVUhc(vegmguJ+4s>&bTEC?+Y2ro+n)<9t89smFKolRZI2q&@;CW z4bSiCq%<oJX8=2OL~3_iQ04M#BhxU`^+#|{fCmi#j04U zTbp?;X13c$){hVKIcPTbHKGjQ719VYUm~6B?&U3~d2&9-?`QHmL&&|Ku9!l{GB<xtXjK*h1?)ll)&Rqed&S!S` z>c^oue$%rEwQNo4kVnL=(LZ#l*%Le3@pmNQF2;9R1fmVjqlOHT+Yx(gGruxtAO0{l zXbK!U9eUd|?#Gymgkf#Jlxwly6!j74l5?79l|(K^wr}`_d;IDAl^SG?{#>heIFWPO z-t6Tly6`rRJsm#Qlm+97i5scOSfBO%GL&$=3H?K)%zl-CUd~9jE*ny)Q7+sy=B^H< zkH4ddTGRS@CplBqSt?W{vruB!fa zf&7a^WF;S+^mYHK#}}H+0a!!Dgb?%b5)h9m?@z^`bGrfs%cVnNM($)!76*{bRZ1A-9BJj`^bK**Yn7fnJK#X$tw{R%KX?>aD%)JX=+S-7ZS&JNn!DtA zU)FJP7O!8ule!J+_vx_?LoS_S_8vj&>jcOnyh03eSNEL6=Olj^4IugicD-D&AM$p~ zF7vs2t_rw4n=SdJ9sP>A4lwbvd>kR!THhDKxGOM*ND-0Bjdom>`|(7exp^R7lxN?e z*(c8LPe`O_pngx%2!pc>qBm(w(xPhFc5y|>tI?`((t=9_V+3}$sV>lwfMd?( zhk^*$;?NRs4;t_})fvW1tPY<+vQ#SbOXw{_v)}Y0wko<12WlTl{))dy{>5_jqBT15&;=}BUvr4&nCi_!GkPmnR zoPpn>9(EQk)zvxS?5hj(x~Nxwu-Z?LSWX1@8s*e3iQ5dft-MzA;JPV}@?+vk(8Cz- z>>z*qtb!YQ2W_sT-^rz3&h|W1Z>6;9gsQ@!s8i+n24!RQX5ni=Do^uF2u9aFw%8}E zluFusXNg#thK*{yOR)H^zbS5hm}B-8UNPWgU7u`b^ z8m7?|M8(Fr`%!N}mubGc+xZ?bL-O+{2u0myOwH7);w|6v1o)$M)!Sd`@HbbXP{fBl zsz=``Pva8Ye}5d8@mNEPMH0>hJ0=$)6fv`3ICuN>l0ESac{k^t^DD4w!EeNX1Dg%X z_!`>WQ)*H?uby!@Fn}V#p>W^nQy1r~b)u~DFtJ0sUrNL2{*<`hWQWvh=1VbG*UZoG z8x1ze*LRO}x}0mDAn_^jcdd#oj}%U^(csWa4FZ*3{4gEss%Pn-T zi*<~DXVDlAmS1-~yf7|wPnOw30XI0tMTcyH|4J}$@D)v4RPKU_RNKQF>v3vX2lq{iiy)^`WXT)gaTJt(KX z#xE-S+%?1#GH;4>4_AjblV3AAV`{4zox^!!_klHdg_Q69Fh~J+=Ha{ilwKU5BXP=< zKZ!rL2DJ3|MDO8tytp&Tu4EgN*sz$_L-rhk| z&0vWeHCH)0ejTezfL*)Zm_71O8gVm;CY+s((6(GSVBa)ksxc{PU;4f8 zsY8Z_7@C(ud3-w`Roa85`9wdM10GaBTxBP=5v5f(<5vR6=|1&;`E$7+VHf7VZlr%u z5KD)9qTQ|Ic0INvM!**q@cf58((?DD-oM|^xe%Qz-rMg1hWi6rmN!o)NkMTvz3&lv zj%Z%Cu$XHp(8F%H6eTt~&HLqb9N_4Iw&A-P$gtY*1jGRvb>)Gx7(e@1^UdBRDXDLh zMMWP7znGm3^!4-T=RXtTN4PsEMu3z;ociu>&l4kToiKY$uEQ@gwx&Pa6=uNu&gI0j zK0Yc;w6Ep6uV0A!K9t|z`4{tpd~m$$J2?9qje&-ZxW+)%VWg!j=Q)lIEJj;?{7Und+eAgG=5Dy)1@FCOD zSr0;&N_!kgs1-QO=jkO3v?a|T;j{Zm>`)IxK&@cl_by)!j=~UdT}wrW2iSOc=M4q+ zw11!@H+Soq*%WnR)ym6hc|BKl-yb*^YeLqJeqszDA&$qR7Jq;!V!d!7e#xpJ zFxEzKaQC61co8)g(~SOXzPa$RZm0#ns5C=ojISJKJKu~(?^#B?6JaXE1AB1~Y&El6 z-vQ)%LTmzb?jU-&kp4?<&Oo8fm@63W3(fyY+GIR%3hxPX#0Dp zsaYE8t(n{bUa^AR9K|9RTys?m<3OuQ?(IY7CpHLjUuGtU%fwtQs=>KO7cSalg~5CE zdWb~trgvAcyHdz49{C4WvtS0wG zUsb{~R1oZL9O&CCM{G@TC0NqcuXpNCl2$f+OGC8C=$krddBW*pkN8-89T_l3V4L7= zZ!ysFsb2;oWU38aQHRGmPM5pZS0BKe?h-d9&-S=IHGH7_(l4vmz_VM@(Ne}Csi?^) zQ;cvYCEn=Iw3=xCJ(N#-+~?=KHe$K$WvvsN<{4(iA{?W>+;4Oqxi^aJ6B4E|;%DXI zzRatY@urVR?4?etk-MuyE2-%DxRq!0iCoT2-K8*g@}Q7=`f+`^Jff+;BUC}r)W_eC z9V@8S{eBDWBlvwK^`lmN55bmHf615@ zk~iwmxNw=k79N$jaaC{``=aO$j<_w?CQRE%xS=D-e;(LY#H;Y<6I8yoT=qom-rRVQ zdg-D^DQYJP&LAZ(^ahMr?6w!j8OZx{QfaeAMA9pI%ZkX4gXY@yH$93cS!Wl zNDJEEnq5Q=HbRae$cy%Gkmg<5as%lBxEJ{CC1Y*oYrobHb2aZdv%ius;Kq2g|Frme zRSi8a*BLxA%=c4ohN0F>G4A!`bL~Fk7w7i+mqTk-^d?fD_0%?poh>52A`@WWgW~O> zpA|h{E`#3j4(;#Ac2T`?891whP-C24>R;L7j4I2M3UkZJAu&E~DMLonp$7c3wjbY^ z9F42h?8mA65y;^MF-Bpn8Mm<)iHO>y#;{DL9clu^Sl^4qSYM6N6ya~8g7w-499n&` zz#y3Ub+W`$N~0fE+t-f4*Svjy5(>}BBbU?A-W;ijmtnw8e5qq}c%IGEEG=?KT{lGK z8ZJVaPcS5%z9YNZ%y36@(rY-5EgCuQlizynqtfxc(R#@pFBfV4TITHle=9dUpk+E; zh3)joiF%*^3vgQnBui#d1_CJHShoYTP*ra~`C1aC{l398UOCtNLFC<3p{2^1&is6u zKc?|{{zl@)wV-yucPXJr-zB{J_3qd~g~j|>?x#|_*9D)SFGvqmZzkwHE`A5j@zIGQ~ADfyIbAE^#JAEtigGU5-fh9kL2r@8vZRjXA~>q}raLO-=1 zE!`38rz&Ut22|g}ukV_d@0n;V#;vT@k^Rf8Sa|^Ub?Z#&0#1*9gg(o;q<~szLzvc(}aF zZ-@r-xZ`26LoqK2W?2xLA5u>(q>Fh91XQ2m{hrOs&~3J7EGV+RC!wNS@p7~v@oIb0 z4ZH$YGIjsNxjNA3PmWb@dr4FCz+V68%jqMY)kCxHz%k7n>0Wd@F4{SX zTD9`s>kdukr|&OJMnC0Bza81fQ=xnbqu_qGK8E?#_E~tz%CnWd1|WVvFE>X|fG^L= z;W>c{)fMJx{LxII0x@0iLDUMSfKUvoV0_97V$D~X`=4I=$0rP=hwHs|kH$ikPP;sZ zx3mu{Ps?{<$*#VI1THM%kNyCGUjNSiOOEixynWc2kau;5HlSi+qMO_*1{GnymaMRK zolquSyW891%J&9_l68aL!!-nscab|ea!{Cf`-m1BqdE!#ad8qr^kpwI=Hbj*pDbuy zc-gYfG!}D6C*y{a(mpYu0dj;jz#Z8OixFTXasWD+Ff@(~=C#H&=zlC~jfmgqEkaA& zsr66h&K)FnjKSb)e=xypUCH7;=gv5^m2l>MhzOv5dw;GbY>x={_K6Q~5k&<00YVqY zA8!n`k+<#YiZ_T{d2ep| z0#?s*B#n^=26kHd@Dh@oMScT_cV8r8))gDt(! zKNf?`T5wOBw;jQf$&D%{)!w?c6lg^(1As3u9AMXEWv-LY<4UJpl{)=CFxVR}+~no% zeIZyve!07lMtH(a@KjLvjbhs_)oD1>b0klDzNNUDocR-N+DXtN``CJk`G$>KXGTqp zry$^SWuKV-K8vdR^?Ln~wy(raJ!&cVZNob>s6w?;M}&pq=)SuYF4{Sf2j+kx|c?GW;b zU3>OM@DFW685qNIIwrXLZtU<07tyvztfi!;7jp0p(Pv>#Q8G|qJ2NJqXlyf_!-DwU zuNn|8f~^((EE13852E(;NjbI=q|XgfP+myglv_{RS4ucr?h(`Sf(?%8QQn6e zsUEB`UJ55bZG@*l~M-eCes(9{bg-8Ns0yYE79} zYvS=*pj%R>PSNyG?@htOHLWY3AJRSVgS|s>(sRlNUWcut2q}PtgxEqnPv&7Cc=rE4 zu#XhGPYg;;b?At<5l^T2u0e2gYID?rSnIdt%wM%g%bl*jwgF5XuNU$Dj?@HUiJa)V zwdhBvFG0H8FVUt>w+&+`KnC_j4a)2+$Dj~5(TGjQ?Gq0#Pl{54Gxs4|IXk<}k&k-m{{Lf6Z<(-#v<^F0F) zAz{jAdX|?|jYKwZq9(OC3UeLd74;S<@|t}rAe3C`j*jAepdRdkoE5CAn9F)cm1o}e z%hVOY4Por2+Ww4G?!N#V|5;#pc=+w~u0kVss=j4xioBiy zXHVT|>h(x?V3k!}@l033$R!mZZ6liy9CWv*cX9$`0UKsGY@aI!*w31mEjk%LTk1`c zWnA{Ib$kY<5}6U;U5ky{=Uf5!1<#y70ZwdV>W|Eohqd*xs^td_BKswd7sf3(M6CeA z40HWG?R~vU`Ru)zSKO9X5nklL0IaIauh1?YE)VJabWbgKP_d%hJktOsZfnAU%y?9& z_6Z&~G>uhJFx4#oK!)>Bk>HxB&hZbbXr z*GO{_5(1+{kaPH-1gt3D&8zf)(*QQyID}^X=IGKs&3wI|i`k_>udL4tv+Y3u@O{<& zwXqNzb?<6MW%9(`o6m>n%oBZojGFgFfu6Dx<+t}AX|RvZU{{uLznG(^@rK(TZ3&t7 ziO`!$UK+zG`3Gpw%57$N@sr6b+FfsOp&Hh4Ga&!OHq-~JifMc~0Y_>a*2^V|;gmIU z?s4w+E8~0mG6(a@ti{PD)L2ra$AyZ~S)p9BY7dv*r|JY``$yS_Sq}of5BZ^{E%8E5 zyF4yZaZt?zdXI7&-o^4UFt$x6!+GVWD^mqDk<^h*M+%gR z@uz;kl=`-T-GGhPF01y^{ahlK$XN6x+#}mJefJNf>REw1h^cUUo!@zWPHzR%`@nZn z?mn+Ru0pRGxAqHjL%{EKSFL-r%NIJ@51wQX{RV?Jo*wWXETtszJYA7P$M`2Vf)-Z zq2r6g9KzBnNMD8Bhksr&chr2DbNB;rNxGnQ{C;mg1+>Sg>9$g~J}zrPx~EZ*QWowD ze%W+iQ5p;X8}mmCa4RwIn*+e#2PJEp4SBFXM-TBKu@{^hXP4_ z+tB27MpHCT5uW+W7(S^OjA$_yqEU^*@%b~O<32<{6Z3!jFsz|?e@PIrk%knl&`xXk^=JK{S&t+*|;;xn`3@7Ame;82b~1nJN1;Ot*!wwZ>0r*(EZyBxi&%-cbQPfyL_3~ysY5Q|TECC8fscI&Z} z03yAiMaUMb?8R<(iXY%wO*RmjkjihrQgzI}`hJldaP0TRlMb`p5s(7)s^BLulJGa* zF~pU<&+vbW*_iqGbEgOPw^%x1aA~}m)pPl{@7}}h0vM;_QNKq-T3R3pY>0Ps3zltY zr%@GJDTH6*4Q> z(S7{%pkE&q*mMujRg!q|TaMQ0HW5!$#7C0R`hA*(zx378wLi8Ms`&gJvqJU_$jZW4oeq3~iV{+87|zh+p=Eo*%pHucZ2 z!Fbt_5WLMd5q^nrVPvl!7)ygc!S;H?`QuTX+#ju7!c>&hiedoc@}xbeWL!dNZ03Ml zC<>1f>b(MX5WlTM!_unIe8O6qQK@h=W(w|Ro9J}nnR_+a#!~WpcHZ3c-;3sUzOastd z`1_fclWA*Tcc|aQx{RKumFtj_$V*i*n6B^dydVbYUalXAFOI%!sV2^yw$FV)+U6Md zzsF?Y{Cyh~52~voF*K9#y?@s$Ll`7kOV}qVz=E(RKMMoLGDE zlG#4Of$H{U%3uFdHuD3z_^724%hSEt*a%KdldCh}*5>(_7u*PLCQ0UHtidhp16F zuQU8w0h5Aqf6q}Yh-IrGg2OItN3>PuhKNY~Z*7NdHqv7@2C z4f#4in{+k6R9^>9Ffg9n1=4l--yu6_)O6$oCN|m5vVIh8d=@$2FiFQ-(MK9ANw{Iw zuBWbUP1u(i&W9C#V(wU*_$JskA)cX_GMAW|Z;I*6D;f@+i%a3K@8cl88QHk+IGrds zwXIBmvY}L+UK2Xa!S3v8^Y!#M08sE+;rZ*vzIj}-W)-qGr6TA=5p9=Mdd?!gI#w|Sjn+H_%1S)&`fh|p4ip+rg;gIeQ6oTT+NBfxg&>?I5%926HWR_<8kw&v8KJ94-XHbOa z7Tx*+mIWH-8EK;vo)A`)=JAB12Qu>5FsPcL@0UUbJi{*_@D^;(rn$Wahm!$E-V)t8 zG86{DA(qzT_!b8u^Wp~-<`cmg<%M`Bqg%mXWtsC2jcZ!`I(yq}X+V4TG%FKfB8k(q zkB3Rb3M7@Z*UiBoB;#5~)@E*U+#T{w;Z5X=)DwL2cxl1Zy59;@fvH3;M)QJyUcTBC zMhR^g@LthjF97am?>D!%Wo|IYBquKgloT($J1a6GYqfG)wtvjNpou870bH$ve+}3` z5zb5>KGGAK9a~d1uZ2*c(cl&Q;vgdzkL>l9y&)v|UiC73 zK=jnZpJ1P#Ok?`NIPa|~d0V2Ae7?vz<;TJm; zbr)?-k5=9ffxj4sV!y4{+$@yuZAj_ykz~&{)NVzC5XbrHjcdN(%pjZYI@7l6(+hB5 z2l{l}bWfeUPX5yUZ6Ccn@Yo&hkVpXX>%8|9D$I}{Uvs?t0dU2{qm!&|&IEInhw$Tz zC~;PM22N5Efwp8b)Lx%^F!bDCFpFRO$`kaCNpRJ87_Rgm=yE?Q8t<*7heNXc>LM1+ zAQqKypRa+eH7BO*?GXL$5ipu}6I&1x_ax%KQ`$i(<#I!L)9#D*>BAoyE}uixTqs?& zZh@5f=m1QmQci!-7Q8>L{RP8iVloY)l*49pvK7y4;xx|Igt)#=@^5V??TdVCdj0^3 z90N1nWR=-bwJe8wdFW{`%#Xn zOuBU;Ut3nWhY;_ZFoYsMaDT>XL(Q1r?^Om^(^g@+wSGsr(e1qouKf|qGzHtexdFuiS1)B}N!0Z9Bh*T-e6h>77A9`L zw9t6??9c4CvaK8jcx1B&((frF&-(@2QsIU4Pv_-0sdklFXE-dJVmN*k*j>0sexY-3 zmgsQ$Nc#;C@vuJKJlcXumt{Q?r}&`XMIMPW-P(_+BMtX*5AarhKX|6LUzB$%aZ;1` z3e1R}Kr;B@RqN;Dos3_%dqru|=h?f7wZ)!GY(U|;!7lRKBaLQyhQ>^MO!>7biJBeV zg3J*5%Fk{$to$H%!h)xUat==)L29D#)Aa+QA%+0SvP+ zx=Z$AQ|Bq4(N6I;aZkwZ=eWl`!^K-Y#h~&*jPI{K%H`KSMl05i2kKiBr1Mf$X*_8zoO?AxO$ZvmCI2sJb-)j{v0fyV+&dk2fG`~CQqZg07j=x7E&{Y5UPBGZL(P+_C zO)SEm@kz4>9Cb5)e_WG<%<2*eQ_IgKU_aALXn$)Sf9-xhFQ+UNeic*cQR8X$Q(6Jz zY5$NqJFq>{Z3+cl3&RS^62tCYe0@E?9`6K9&SHRTWapdu!(W&+{Vqzk2}pVjY9nc1|b{a!bF?;ZdHVbXf=oMyEwhjOY>=T7IUd6fHr!kT}y2do3m>&-me zhJF3xcCn5|6nw)e)0x|91~H!f>RQR69vmr%>uHutU{ypEqlF3q`{^v-6t_)C4eR2> z;q41XRPu@JafaHgos1LFT(yq-1A*4c<3U3-XMgwQ^J}Tx+j3$qk(EDud%S2NybjCe zk}!{U_H%LuCAi1uN1RJs_9+|x%cq-CG?6D<$>cS24md~$m&S;!O`Q!JA@SsyjdVz_ zqISBfK+*L)5PNhTd^o2byvvQ4i8PFY@VhhJ0CiFSF;&*_|;9O?7p3-S0+HEU(L6g_7ddV4?f;pXg##yk&s> z_xGbiq4ftR*{7G~b3&cqbAK(E7~p@csg{?pdIZkWIv&h94!s#D9e$>?16PF%GG{x* zuGf~nMw%lHf`D1GA(~eF7Utg5UuZ+ENtQPFU#a?@B)nZfUWZ`cQj(hG*xn+W*=iiKQgj|6 zIXIu*{b%#c>H+Zt$x;*15pLxcDMe`_4fT&`?0Nzv^ELoQO#C*MkriI~OK-qg00vlp zv+Q;GQJ-Afr0?pUjWb&_fkC3D>_NaPNw%jn8C)J^Kz-!fmWT#ZS=^ z!jBL)n|d!(T;iwzxBf9q0tq`9A2Pqbb|*nlFdpq|)Y*MZnwf`HMCXdTRTA{M-~=IE zqRHp(UM_Lx$LGLLSa9ASl>9Ie?%n-dv-W(f6(8YZ!oI{weCc@#hNsN^>8Hf;K??dv z!F<57I`)&&>)`qXi}KUoxO?(ytH8VgZ*a<|z-Z74nNL;J%Mm8OJwG3E-kQGVS8R6? zRXCY5u=uy$tNiBi9KVnG4owFhM^~{-*B3D7wy-=uo{(bWMTNosmft<|2GCv)%vd@Y zT5Gh0@?rK^>?`UwxbI0fnHPiZ((df!G3BJ z@K}XPypD6EKaUgcF4)w5e7<%L|A7rwRx0E<3@3wu6kc4!aaSFNwf*Kak@XyUYt_6b z_f`G@xIjQ!wr2tnHusUV6@EG6tFl;&sL<1Hnc8pEqDEKucM)T2^!CBje+D_T$GP8T zyCxuO?Rq{BK5uPV|6Gt|2lE~Me}>OW%A}zcJz$9_N$>2za&6SJ^7I% zj1`5ZNP-Dq`9wU_sm{8ij7rdBWkasK;O^IJ!K(496O(@qxqUj}FIht&@l&{csJ-Vu z0sMTiPw4vQh(Yn<`#VW(x|*KX`|+9*`S+Jl4=6$Ka1#upQI53*zfWi%$A5e5`YdH- z!O*8Ih+a`lYA+8zt6zKOLxX<<(hLp>n~jI|!W?%8AnB936AQDJ*bb(lfD+7kLE?#$ z%Q1PmP`24Obe2nzlkx9paD<#xo3Bk&T)*#~O0^$sV|chaME{V==R_Qu!y3xkXREDk z)|z8dKm2E{>#2caT72grVSv?MR~3+-i`6uYX)sSW>3y{JLs~vMe;Pb!+DUQG#7}mmvp|z8`bC zb%$d1-H`Z^UmV5BON5g|!{G3AdRZVa1IH8GL zlwU2G1lYyBm>;wfU8G0tfHC}MZ;jj!2*-(c{lJ<(o9mxPyyWuLkxj)K%#;sh(~Rab z%{JOlZV#W*MkeG8nBK9ee+OveBG06V&#@nhrl_=A!^%~stNHLtxeshRkAnlHzSXT7kG^j$`B5u9nz}AU=Zit?Mr2{zyB^RX-4`;Vgdv|T+ zc<1XOEaBA_`{tLqu}x2{AHeZ(I#3Icuh&Xzs>bQSW2h--Kb1a+dY=x>BRZ?^(WE_J zX!O~?m?VQe1lIPkuGa;S!V~9!6J_Wb(dQrl4(Ja#n|{W0kL|+U5@zTXgL_tfK8g5zf;n838iNHXVZK%2%fL<@ zlWzUxNhKwWoLlRJt^tTaWnEL$(BJ*)5Vo+sQ_a^yzoX@;1!?|FeTLD6G`F40OMfcY zGpluCeBXSY1#0|{;Nnw+98#mDF48^B8+P9v+L-8*|^oQnsG3^_br z@yNtD_w01q)79q1sa~JDuyA?Y*-C?6`I(S={Kw;t_df^9^>!-geE{0#wudEx45~r5 z&q=XT40_+8kKogi9IM=f74=^Ew4tZoJD8<*K6w=x{lJ%Ga}qb;Dtyz61n0e?KFVcI>5&5 zo3-zNo5Z}Fe2P|7xiu{P{$M^C>39vD(U-lRo_6;=k;wUjW}?#{%*tc)8pliE&2lPL zmo9hIO4lCBFE1)-6kbFq#dRSTtN-H6-#hDu@^y;#r7E^Ps)P&aYgktK*DWq?me5{8 zk^XjWKaVMtt-XKa9XCOE!`cC5Op!Q6w3F` znmPCH-3eXr=8R}nln2wZheXE;vG@%h`gh5Q?Ckdogyb!;R`SjtU+Z>b=tDDZM*RN0 z`^R|s_%$bsrBI{5ewEO9`*BTB|B=a}k0N-@S7IM?P`C3eGCnBz+~n<-FBi5S;8(`l z=aSFNGB|Cpomj}Jv>!H)VRh1A{IT=OKK7ZdA3@bt4-Qq8_fi?N#*6lRt!{3*YuC#} z!rS^oSGs9;<=5cE_xJb!0Xv(heJHS>ULlvaxJBWs+;y$IP4p0b~z zZGhW~vj-dG>QQ*nVH9p4yaijlz=$+OKZU#eju*?#IGP(w`XJ0EkJcP5iRJ4_8ocwK z0y8Vr1>-eOx@$j)%`ZNcBO!-Q^32zixJCPA6F*cr*?xPZeX;Y0Ep*oFm^WlcJ6jj3QLflZ1XGyETe3C-0bq~QXP&vL_Fn&ZG;MVGHSgP@8{y*$vTX}4JKS@)d1Z&tps!zkP7>Et`(LTf#%w4+R7&m)v$4} zaYN<&^fgY-{d4jE*w;5;%aYeSSfvsl$GS+=S4HLa;@9UvSextx21AsBbR*?CK_B5k zNldg4qvnqAV)lYc?cwPv7a4O$sdA^i8u9$@fu zjV+Nmnz@zs7aPkJ#Tlk%i&l68>5$cU_B%JAZ&krOoVsvdfI)D(q3JZiuTN8wh7=JU z+o$-4>#MnDFQ-e3o_e;Qza{6O97e|@&@Jd3sWQd7nd_Mhez&p#xW#|4;UBT@1v=RQ z09CxEw9x`~vI|o{nHztfiRq|2Lzo`y(q?bw!6j{F1kVp|*gUXYmb}u|!U7^g7#{ii zJOf!)@Vks(#E|6NUS`++gioOjbk9$LzJHP8GtxQXr06#%FyB;Q+ujIv6rPH}fwJMP zb@p!x%IWzhV25Ak$a&9tUNeDzP1sV8bKGkW!?f@?31*j&%?#qlZNTaBTi{XSG#wZ9>6Nf- zUz%rlV;Pc)AOJIOiE?W$M(&Nj`p}M0$@XgN6YJ9ANCSkHz1eU!up6JD{K?^Mx@l0{{K&=g62I^lpW# zL^|4IksB*V=0Sh+N9gV;U@$%4!f-C64qchJ6LpWxUDUpPt=xyPOX?Wu(o=(1XnnJ7 zY)#O_UHt^W3+>A|1I&fnS7yt=RhjK|@-2Wrkz zr!&bEu#AwuX*V1h7$~`W#f45yN)Hdw2=de=C0gd9zIV2R6e&ePJ^zT8J$3j|Iq)*E z7%YH4O)yCfX^d4VyKpbcpH$7M(of)5P@+~o{ZIma_k?r5ZIvt?{gv+r=!Va1o5h#? z@?&nkw)+_VRV9Ha)Q>;cAfd^>u6uwsTaY>OmfhYr4!j?jvmJ%vRfoqv{@Z;9PV>MtXBnw+K~lbKN5FP3SpZv>3c12*H-{(hV!`-BrqAq&R(au^!1LDLqj0O%F5XA{!-a{g8F-5qW}^ghC?%F00N$FXg3r$)`dQyA%SP;7tU#yxOgDx}0r z-tRUv+i*KMIm%qYyjxY3V6z$wSyNNAQj}*C#gPhkAzfh|CG-A;v50 zkC#GJN%8+xCEtQo{aG>{Wxw>t<{SDu(TR4;vHwNJoA`cEG`pS2C&&iQRai~sX}^Cx zsQsXGoK%EvY?Aa$bD2+yqCPAEH$0#m!OQO#t~8OhP9}xV4d5UX(SAlX^+J8id;0bZ z=JBD52L*1Y?#sR{n3muA(p&k;OeBsMkcjvUZ4U=<5Z6E78K=t65LxnqE)PxmQfIN4 zjLe8)1L6iqjkb+gLO>c*y0i|qe99lPbG%2)nKDi&VOtSI2VZiLeUkr6Zz$)ZqU!5U zw7tz0y^fTq9ifV&EOq{rl@As&*;nw$E2Ig<<R>rJ3o!;F>#Nr+)u?s<(d61Svg*N@%5MqFCR!Y_@;MHsPI{`=j**`IU^ysp{ z7?k`Nhb^C^i5k(BmAPgV|NdNHZot%JX!d$!!~@p#9Tp_gFo$_(#6ee1b#of-xn zQG#f>cK2v+r@e3^!FLJ&dY_uPHK?Lgk9z&t`TPzlLte-m%xH`k83!*ls?X!Qd(T@= zt#%krQd#QvhrzDsY94yUcu8=z3=OC zXi{ zlf*AFpO~V>&V9Hf5v?6a^>>nyG^90~XR+_}f6WiyCI+%RZns4e9*}ut!psW~K%-G2D^EfNaLe>0#Z9Z=7d6WW2U+U>_7M zWf$YP+p!I7eKo{bES2y4{S0`Vnnlx5EnpY5Blsm41>NP}^Rd~W4LHRbi^9wv_%c8z>mL8^Q<+3X)M5EcE+ zzHiy}V&7BnT>WsxMsVW6cFXoMF=ssQ1|P*r)wwas6vwjnSlle%<5P1|mU7(N*Y=qL zF5;y;W_78O9nw8zT`#ww?7=N|NB8udDAgUva0tDEg4VXw+w;hXFeeW4@c~H6YtVaF zR;Xq!{#wJx;g-A(ps1u=pw@T#ovA&Ep{`UYPMKD-=hi@SgYHFR77jn5B9UPIRX~Pn zsdxT)CC7L-{;!Sldml8L?+7}-RpYR9uRUa*coQZI1A9Bu%dLVnBZIZ8^K?&>QyE#;A8&V4?k`JwGK&pV(4h^5YPTP!4cXVXsI!|NSQp4-}- zy^P?4IV)EmF6CF)dBfNXWnOeV52E>+9!uHXg+4jmZtC2$w6JCz-VJ_j;A=)^=W=O;#t~2k4yMMh18C%N zFVaNIkII5j6evIpRzaV_+^)9+zB%m6h^AS%$xKpjj}DJ;evlyj{0SYU@XwP0a5WOG zrPH|wE#qj+;VpaVwfFk<=VYw?d~t>Od^~cZ9yn+D{O5AhyaMJ3Sw0!v-2F{x>&kA8 zdHv{U3|@DVnzZk~p$-RnTl|T&IfFiiZ(Axkpd(i>N7X3fD?^6$2doGGtxibnB@HYe zv0sb^dJ{~Wa8S(YB46I@!Juh%sIOqwl+oB~2)@dr(0hx!JQ@rUrCrXcmzC7{CZoyB zn_aq7WKuL6ylV8vBj}3T)(6*>UuE2us)N)qY5OCx3}~`0*mK8n81JAc*X4R%72z<m_v(gw+JFM-To1MKlDPox~I-iGWYlm0tvr&>_* z1(kQ6QwmU$_8N{SJhQu|m{)DR?0i6_y@Y#icW~Z4Tnn%-7axKYi%*)bvt!#lHW*Kd zNOp=#__Rii<9^7(%*$$Y*twaw;Gp^S^*wIY^J`dQ_7!^B9MK+mlghD##7!^@L%-ma z`2ohl>hjk21%q`{L(7He09yPECUzbs$L%QfwNI@XYbc+JBn3t&K7}Ho03n@ zM1r*;A%l@^H0tpCv$I*<-;?;;9<U23CxMc?OGOOAE?qs_pN{-GEAkrb!L5hJs~R%-S=QJ*bJB`1RVL(277 zDe|PS%U7@*-~<@q+iKkl!dJodVQ(LTFnXDq4IuBAbpX9bcEjTVY4z+K}?~PLN_LCoPO@k z5iRl5ssXC0+(e)YA=S5SXQ}Bqe@8(RcT6=(+2@h`5FA1z?myA`a7=s>v1c5w)6qD0 z0V(z{OsT^yVa|J2-Ufv;+;8(Emkp3}egXAc+$(q-^vVM~hEMcny_0(F{X*CjQdeZd z2>Rrl3A;lb3?@GA{RaAY#T`SPsfz9u4rfh}<;y^Sq{>-!+C_1z6EfL8EMyXu+wx4~ zzPratMPy-pMWQnnQjz=0UA4NPC9ypwVQa+}>(43vUDEI2gdGi+xjj0_r7$WL4_zMW zJ_o^o&iz<4T3^LyZNfEBMf}(Y6hjFuE9_O;g)h61)r{r+1b$AX#k@_oOq^mKm8 zPnXc{jHS7&oBhg@U?nB5fy(7Ere>FeDITuU0FMDMVdTD^J=9BC849Dck6}~xZm5&c z^fQgxw=ViwNX`?rmpR=oHk>6;PhvPggXs2jcvkg4cj9-P5z|oK-RO~Tva3K(g6UGK zj!$v!d0(Hrjblx3KTF=8*rxn$-@6~265A1nTUMxymA>?)kbkgOgvY_D8tQ|WZwjmo z2|TXqSo1o7pu7j1<`X|(>Q>0154XZhQ)bXk0xs;|kl_)z1M@|?sP4*b1DwKuJB$P# z%0<40(e?S5Ewo$q=83!`nL16E$Dvqr_H{(}|Bs6%VKiE7cs$kBl1K&pHc$UH-shtp z&`Wsx`LcXRC8#42ygt&*M~!_Y%}$__J@$4T{wcx~MTZ=n*wFRw!SNw@N~@pNCmcYt z(MGk zT|QU)WGBbDtdkiFJ(Ob4$w37RXE{W#Bj~ZOc7#NG*+1p^{=GVvu=!1`eq8`{kQR_` z|D-rAM9^~=LLl6d`*b2rwu}tYTj8O;KHx3S{@PQ8gshlg3cuC-KzTp;^M%Kdx z7x*_Ciu~QrR((Jg$%L={%eQ6ap7-*~v39AqpFZ{@{T0cG$GwwR z)&I#rIoqOz!ltd@O>oUHed6mV=lAS7Jw~Pk7N6m_eh(5wNvu0!OTwDtyV#dLwE`Jj zH{7DT<}Iz~oHXu*_nfR1nWpPK#orZPq~bgMWJ2e`AmrE&W0TToFsr*C4Q<(#`{rK; z)eQecv)d60LJAHPJx!Rh@F`4we7H+YXUGjU(^8`kXx&FWUX{~XpXCHAILrH?yQBz1 zTZwm5!Wr>GLEdk4aEMeG=3ba<4sTD~Ddpd_ktx54O9gNgSIE&KUYA|A$zo(P4 zxOE^!C0{=;bF5sg3qF{}e|P~r1U$(w%-F@GSe6W7fhb-O;l8Og`)^Y6Po(XlUosE38_)VM{pNq%NLZ@+sL**pL(^oas!maO4WR9 zoM8Vsq6f4Elm5^Wr;eW9ahr0a#8vbl?w3!wZD=JjoE?2G5%A~v5RX)NGWw)Cr8|<} zY@&9%`oMXUqM%hPyCtpbBsUrx z9zW(yRchgTBv0I@{*yGUA= zVkcmG>_)qRU?+tLv$fFlCt)Y=jPK~N=Vtu??aySWV-F`RUNBm^UGg4Qo!OY5)PcHMPvXJ& zfAD7ptOK}};}d$=r-7LPPeDo;eho?9-VK) zURZ29T{pXg{kpWVCUnGQYzb0A|ED}I5NfKSq+ZcF0Ea?vb%=nioMJmKhGG0_2KRWp zWMDt!KL|+HLwbvo&-{j_Q9*2g$Nad5~`W8V3gIVAqdD>P5CyHA-Rqg8qJUdrN8iLD# zrMhZwQIbxA$nxdszv?gksk>5n&-@19&>yrkeQmgK!o)(TSH*LC# zcNn;9#==sFVp4kxf9ctO{yfD3rg!4B5*w&L-g-}SUJH>}tI_pxEF}spVCr+rkEQ~- z;r12z@0o@%g+g_=nd!(Yy1o)gQTMKFWHd`w5x2vsD%W~B{D81( zoF155pz7mZ{y+@?Ps{y`{8~6&xQ$;-sXu(a!VpILHO>XVTkmU%fQ!*)&Lz{@%09X) zdy*(_C*08o@jgc+YI=l9628)Gik0Lie<6q|(|+jj^N@~QY?(!caDUfu%#UBBlCDZ+-EARJqf*=`|R^Vi`Y6!H(B$e z?qr;RF#iPKb4Z0pj?rNlh&~tl8-Cp6JY;1y-;>lxBmi8SgE9`F!=nHtLG7@*PZi~v zV?N%xjpFIMG|ls&8h39dDVb{C*)+}F%&V>=6YfS ztTWKBF|3Wqo~+6^@!=^{2yg09(Kp|Xvutx-m0&5zv2lF_MGR2H`h*tS9M}6r`Jo-P zn22{4VHp6VnHABy}&K^xv<7Z7nD*tJov62elH#@x2`e4!QhXivScg2Hqt2 zp>YQ&130AFY``E_k3v*U1v<*`BPq zbZk^LjHN|8U+{i*XPzftfrmODV!WbNDO~T_C^Yb*QgeZNT*w{Dkl1xkb8g0)&Iw|@ zb|a`iR?F;!D@;5vA26-n`)WnmD)q4~Zok@j7EYW!iQk=84BuV%6D|xU$+uQkdvI&Q zJ_gra6)--gltWuP$#stEDVlt|uGeLSee+2j_d$f8!@g=VuRs5B|K&wUy_^UtTBhpq*K#4iSiqW6CzuET-wBOtjxsABv8FA@LH} zI}xxFvG-uipV1<@=W&;WWshu=c_uii_?!N4IME7tNVd{&1r;s@{~hhSuli#T*Ngk* zLNn@um5-P*{J1L18*`xoZu+W)J$l$-j$$TjaeZu^k*^=8<9qR_<<~7IDE|J&E=|U1 zGeLp$y9X6zeHWZJptpy8TcWEEwAUI)4#(XiYrhW64xbq==Hu=5C#Ro9WioaVzO;Yg z{M8F~c(iWd^k9FPqIuzrL#brE`ng7%#HmT-rAqAu;faD>bAAZ)dFlkYM_Bw0j%TeC zmXuGE_3k~^6QBNowFYkPVk-ieH{%|H;1?LeSS>CdMr2-NA5N7($?XnF zcu!z@sf-erTFPRyRrDYZ;VF|2YtA_q0@^A*zgZ|&uYx!TOF^|db8G6r?}hngBEJsB?j*$d**HL3n9^z7k)A4zfwVf&6Qd0M;zFYN7bu< z+=w7etY{!D6q`jq(tQz-nDR5T=XAM-A`UbF%i)ppZDu#@EAQaWm0y@qK4^bvl9CA{ zfm1n;$>035YOiCIq}&6Nrx>C4uj`e(EV+0T9Su7FZN5;;hE)wZZkc4t@d;3{Mw9kw zIpB0k$O4q(hdOc*F2Y+xzEZkMx)W}O_^t_QE=-?C|mU zJoFaBN%^d->dEB5e&4ruK&8ZsJkrq#c6cn0ZWGiRC2m=0?5U9RrJQ{x63praYKsXG z;#%xM(Ak=0zl5u<>zGTM4zI)}>~F>~p$N;1#n{KJR-69TYM?@P)hoGSg4^B;k>zPt z-Q(ax(%Fm1Y@-b>lD$LjUZWjoFwuGmXJ${Or9j+-lXSEow_&=MGe4ZNu3fn1$dZtu zzLkc(n?C8$+lT)bK;GxE*1*_c*n?erZu?|LC)7A99;%!=mj$C1>++ra+|amYg2&8W^TV>|mD_q@VKZEzx%hhDz3m`^EDwVly0TzA znYGp`KRv-^6peYJ(v5h4L{Ffos<|U^!02i(Wk@xFlXZ%Tp2oa z&7;kl33vLblNqlja3F5a#aBQj@d)He44zvX_wK`IAYg!-dL1%&fr~t=f1TkP$#<|> zCWYT;b2k3zefasX^TzH-d%VJ3+R)|Vw{w768gwz&%;R*&t)Gvozq40p(BFEC>vrgi zOY6&J6ikO_&dp>bce3T=qplj8NR*ZG$n28Y$9UC;xkaYG~q z=*91Op4&%>>|dJ?I(!eS<9|cJNxm2wCSLncPv%eY4ejlEze$|1(4t`CFwCJhzH;Fr z4eE%ZsB)HG64AoHf!`yuFk8StT;2Z8=wU=s)BL`7yxXi_2@87>d4@vY7BmV_pb+fI zX@V|%H{G+*^rEM%ftFAI(rX)Wq#-NNC^{jM%TFbX=BRna$gASxtS5LlgObOP-P*n4;@97Pk#ig4`hHE-_l6v&lpTf3zOu{-jgWv&75jKS zO)9*B$>ek#tnEF)$Ce*C3Lw93y`Hbmry}m56b9Q%xA{v^?_=yG9%>8ULm7>f@|6Kj z2{%aL9pPg?jdL!&>gJc(P9`h4Q8S z`g0aNeVf!jyzk5RM6~*L#x*YLC{w(#Sd6=l4mHgj^2C%6G-@Q z}q zJ$P6|F{40Tq{d;N12J=k+_T#E_MT-oNH$@?r1$)ISod-dB=~{Q!gW=3ZiN!+=7dVH zLc_xeKr3eapNChC=mC9Z{>}=9!9YuXDJX|Js)_m9Np}Q!qR)Z#q2uAY=4-_)RmMvS0cNdtVH0AG#Z_?V$!b|70HR z_L>e>(8reC;@ zB+|slmM$TzYGDzBmjX52DvI;(e%`M`{HOx1t*xM%=Aw4Ow{|nt{Si^? zOXun9BHQm3xi7_!M#$**DOUbgR?Bw1-sshII`ey~_eA#dLcg~wYxrF;Wx!a=lX^P_ z^aYFJwuys@YvCNeFS;Ig;xeHWXBAo}A)6gzFvU zmI6Y_mxY01GW7X{wV4usLam6yTVe|^U@7!eQwbVFuUpG!a7jg}LO=%(%egi#U?6yp zH?bdj;?p|!0L32M^0J^|0`il7vUg{M>ELCbppynLlZLg{=-j_FR--Q_N!~SiQ)}K6 zmIEy<+}*ba~2KtNQMQ3po+TlT3UdFFJlO9F_P$={W(@#LphY zOuDy$;3|)ChVzW>OKN$ zqEY`W0d}#kbbeT{GfYo=IN{GPzKW9Hkn}G3oI;0V&aRwOU@u=G&K#KR*k}r@Hh+}$ zHG$*1ip@(r?n*c5E$$`nsD%szJ6i`U<5|x65(FC8a)Y5v_L0HKN7iWOCQT923fA#c~Ew)?2^;>UG_uSC?b=|%=$%b#8bHM%;o)-&}^CYgX)x4<2_vaY|_mNkm z(Xn_>>9cj%-mUQb%Jo6Ebswe_;2hL@R z@hQaNQ>^OuwSPYPCTfcjq`iwAvg`d>kJ9>5-&UFHg`fY#eHweR*UXeHZjT*K%vGOK z6YL7fWmYdsrAFQf-&Fa7)5a6Ry2KPDc{}wyYpKt0IMUDJLMAeP`@n=#!}&J&-|FLvRU*OP90H#cdw#;)v*FC!S<%mfr(Tu1 zuJ#q!d~AB-A)4Z9tdd1u&fIxqnOWQImyGu4qS>vy841mdz+2IWxiV)C8p*p=D}nXa zq!StxpT;pcvAS~qGc`;@*2WjH!9G0YL8Mq3!;3ZX>I~zj6V-UTlA03|HCk!Z$%VSp z;UDTSM<;flX%&YsQ7}5y-FPB$^G(Fj8@=45+ontVST9+C4G&-tk$*|Eaq8K6{2bt1 zCLZ8Sa^Cx;`}=_`M0G(2hxq06SQ-r8jJA_@6;E&eT)I+vztGvAxsFLp8u>x5=FG)N zn-%pFo7>y$M`30-2dV+p(XmZHW#+7US)}~jG2Mq||6PGFag5hJqzXgfNclKtwd%Hb z4fc$Z;OHC9%bIMo!hKTZkb?|tqvE9w8}xtcxDQkA0-wqV%WAT@)$+$LY?+mI#v+7G zAHsQEtE0P}fcnbd8DKw!sZ4k+njiIXhX2ckmPXh{^w&S*Fq8K&g{LTP%}tb7?_pZ= zM|axKLwM_*_>{*3W4OlaubYoU#yvk~&)x5b+IJ|Y;x!aqGhB#=c;AQ7v5aQ(n9qa< zx>t^d3v}|fB(`KB;{?H+(I6g=Jnuaccfyf;aO1Fmd{VcwGe=k=^47KN@G@~~O4R)a zPPW^zUqT^}7opX5k7~t!yul_p#T-->Ft@{>!kr5H(YSCU#qJd)5PeenH)TNHj{mV1~F%j%GQ4Ha{k2*Fy^2ejju%=MH^M_e$A_f_#)`l8N0C8Ra?Y z)#-yivA>s~+F!bNu9t8-ZUM8L;uKBB5$_1d>}dcV<~6n-F%99hzVOlBb|58;bd-5t zbKXEcnC^vmi|ed?;Bp_t*rVnd*!O1aFfV z#Fs3g6*E2pn?UBT+%g9G9NF*hulB^UV(<~9lp7f1J;DQj0_8`t$hQaN7*%i6!tJI;3_G3@AX|E=om-T89hnA zUs!N{B?uJTh3^+kX?jKk)@Az*uXi_a-xQ}|pXJZj;m!Vupx-Zl`YP8Z#u+O4!z+C1 z?bETBRFhzn>}6(MYKC|>ZWEK|X05%f(FfKHK$4^S&ERv~=Gv2O&7fexqO#x<^u6cL@(*kwisBd>_$1M&TTecF}#XKgZPZ@6QJc(gw76{VHsg zaPnINMZU;zI7rjtJbWFomUb(=P^XG;?N+wU&2s`NNNWewsmfvJI65$tep{~bCPPAj& zjv$KoQ~NFh1N$y}Jd2Ra!)2E+mdb{?pEf>l6Ob_|gDu=FSz|3=_Dc zySHpGh!Zv{-^vTHfSs+ia4_qVsh;`8TVxmJCTCDGWDQE??>DjoDjq-J|ueoW=wU**m9Eqn?xa z)tS%8i77&izlln1cRY~ZtsBA`mjZh4@He>gjH}&5db&BIjtLWT_bY6t68|ndRO~1` z!Dmz|cp-^>1voUz2ChzBQC5*E#lI7r@B0)HZBc` zGT5fWx0c{Px#w$e*FzS1{VvPI_&2b8;q-a%%`sB=)d6yn(z)iN>A5UU41BV`$@D5g z00oZ&uOYn@Y)^gF=Xy;t^Pt~#+mNp`Th}mZRVQ~*m8ty{Y((N5S=ud zB;+l=?O$Th!}OYh;DWW0W0U9=P0*aQqrD_XH1i;!QC*sCPRmNWv7a>7VnF5ek3QR1 z_~KnUjZBl*r-!YE594_2tH7S_eg0i@Wv;i_{4HZF0}P)22$`}6+ageGNj}4HI~mh z&swpcbMyJS=fQ9HB$S@Nqkg)lQ1ZVeHU|~iA#cy6^oB|W^ikFkislmB3}M)uj} z|B-ZE+lned^p{A2JdzC{Ip`aRpyVV1Uq72OYt6mmC?cV$uCCfaK3@daJ9g#)oIR$P zv!jZqTkSlVZG9_#7L^u79Isgsk~iLHj3L=VY_P}OcekP}WW4TCw_Y<Or`Brs5|Pam#*@bG;T-a?d?zsbZI*r+N5mPm%Uh*5s#3wmL5lODpC<2Z&6#^vb{nH`SJZdj|dpz(uiMk z0C-N+vt;qL>1JmWyM9P=6R79hrzB)~=Qd8_2h`_5r8NF3YRZorI_Tnm9(|6VC?kVKO14Kpylm`DpA`Lf?A{ixHe}}@RgtF>oJj$&ucpT{A|dSh*Zg|Y z`K?Ddn|f#TFH2@kN9Um985LvQ`VDgxFu-oTfB_qO>orny=p^CiwC-DY5S5Jb7bG(o zg#&qaxht@FwSH;H*m6e+N!h-MaU<)Vb}OOo;7Fuu&yg}cDYWFm`ZVi(75B&E)zrmfrsL6ia=W%h1f|gU*D`{^4!OoC~OQg>tpV>EccJr=#k|k_q zUt_yZ$3oO5S|=#+fqJ^iEZw!7${3&#{~VAdt@sbth63mh_{UHx|AvfF{TON*RDlLq;ksvv#zaED?rtEUt6IF? zQ24PJXM{V_Jzr=Z|f?zH!mG+K=q$&hQvP+^oNQDBrr{@S3zgDep@Zz}L{}iT+n# zBD?74sqH9BOgk)gPSqfCGR(#5xIy8X!%&uIXe~_k1H8}id&|7UaAM|M z1Bcj*Yt3KU(RyT`iw~jTm`^@D)Aty!;`Wwxo)tsrNeCv^>Et7;sqe%$Vg*MBUI19G zGVvUlB~;9s)OhdX`qt`jI$I}r1xVy6oQbWWKgU3|`%Qk@ffDd@)?d5A*`Bb`9hwp} z^hj4>DL`p*RG*P}shvT)KiZxkih|Vj0VR^|bo}$9@<}G5vOo;}&|SD*?crYRvrkBf zil6ra{R^F18{JSkKcZwGlwnB;-}JFj#QX9(yZn&tEIRSrOUqdSoAiFV3s)Gn0S8qY zk4!jj!}EB3eWGyHbK`I;XLMCSlYlUiL62?xhMhfZbil>l@;?_i}fZB`NP6y(AgkGus zONg2*FI;f;Lyvl%V8C}Y3uc!X?Z2MfP}+@9ekwfEE(|Zwk7lib{p3yj5Jv6U$_#p= z*z{Zff;|Ngsk2y56{Hx>oDeFd-pI@WB38e((+@B}y*}QHEgp%Xeu{ds6xTij!Z+D^ zI*(WX>4$Hd!tu$IKP)5%mzxCoZAA=OoXDX9n|bnaZBghH^>D1l*{b8^P3nlgVt#%8 zzW39w-GkiJ06nxK0eOER7GtVB$T3j1e#NgchIHc|&7dfC(;hE+f|6OzTMBbNA7L-= z3opJESZg8Z_!t-TLpsQxE;h(xC?C@Jq<44WElLZxIa7}&oaUy+oMzZK-k^+K zn!{tce8k~LC10HioW&5U8=V=-frdZ)@6O;BipytsHRI{$Mg7sPPU9wgukp%(aItd! z+v>itqXb6CSSIT`)gTo=Xz;La=-jg?uQkc)p}*brGEJ>1Nk2JTDqn=E=%qXA{!ltg z-SMzR^kZZrDokwCh{O%R#o2p4SVS`wc%)3a-0OsL+{Ux5_fPb-@ZK8cr-Talx#&AI zDxGS!+zWv5GelTcKhtXZYku9hGrp|ZXKn=;!orpK5ly~KOj<>SnZd5J!0fBKk8~st zYFvFE*RSkouU@h)mdFEb0o;sm%3xA^^Y~rW!v{&{jjr_e`J;HkOmSk_%){;jP z{!d0?{$AO}_yj%Hmtp|c8^16bFx!e#oy5*hh>{jL~sK0A9MmpeCrh->AWQF@QQ-` z52sQ(#d;TbD>%9@)e1A6((1{t?6>c-&r$c4Vk7G8O2B&kzjXaQ~RH^~{euw-G_2k~5OOHqY3 z$Q#}tg#KCpiRrbWJ4&cx@qujqrAd*fcW`3a4-fxU@|0$j`66%1hVrBAT!voT-gL*nbCgE9{<1sPZ?kD?>e*|^!^Z7ZY;yV|acZtHXAq9bLCv-~${ocLV4{IK&!R_tr zOFN|;@8SqJ31yPj%cn`|9yRc=zSd)Y2lBrK+s^9#8g;10nbgM?>^FSlo(B!j#Mxl) zI^Y$3BbLKnUwQe)J@BpVi3XszYyDvtlih`U21>FlDzd&PFx;ta=1A;M91#B)BObbqo0hQd_SW^M>Uy9 zJHJ%^BDkz1w25lx0PdkyhaLD%FNttiQh`zMVghhoq9c8%ME({)p6}p&WD)fAe0q`% zJlUuF6`f6}txw$&fA)k#1l4kuzx<~PM^S)-E49xJ-~H6~ELZ&Af2eBK`ju^dQ%Xvr zeb>a3y4hdQ)>nmr^Hd>0{K>qzev^uUli+fz(Zq75tAyZ3r4Ty`dx)DNeEi`DcqI?S zR6K(pZ4C}>I$L8(EUdJEv*7QlkPOcZyGVm@)X)66U5Y@xitle%9Dt_j3Q zjTRXAHGHKjW<2(v!{`2zpry8zzJ6OG^-3RKKjtLuk0y%V;#!ZoL}1O&E8y&8wrPEj z*}k4)7PX2*V`MT*+X0)th)CPSOi4zd9`D) zSH`=?e6;tUU)mdP-4=aY_7OI>3g{BEr zXVBzThB<4}Y;vV;*gAXMGsbv56(USrW7yVBN6Knu&wx?F-WpxD1Twt@0eKf9eY6Q| zN=EjX+wg}B&oSze{`bI%Muhc{g=P9nGcYVH9x@nraeWP z*-PFt&rNwdqJILu%UYCtz$~E}u7rHqXXxpa0}pw-qPCtvX4>jhy$7K{e+eeX?DL6B zZ3h7)yZtpKS7H7VPc^?Ue!POH1UsXiRSDAJ`i;NC-4*p9JOUCI;XzZ;8wbbB9qX#@ zl=VXO$7Nhc9uoKSuqP&G66!)Hfcqs9^%zwz$r`RR{BFvnzA6C$t{t|NvX$F|4Vb*B zZcskJXVHy6!koMQeg^`;0uxWpgzo^NPG;ZF3rS-w#eUk1Q7h?90QJuF@en`Wm3UF- z!<@bClonoOW?AcZ&yH_O6c$gahvw|p*3f<_KlS$Y0Wp$~`c+$?khZ>=+FkI{GTXV*npl*E{pRu7a;z+qeZ7 z>s3|!sexp6MS^S%XL7qTtskWe??ZZS`^YlbttY;EO&Qu4Po;L4O49Wj!2?rcxe}a$ z2I=ebT_2YIG68B7;C-%3r%($~J+Pb?Z6+U4%OY@S=#gYb^9lKwDj3P-!74xE%9U~N zv*ezUX|nNnKm*WqS%xK{j4R`a9Uf}2spGx`B60bXb~6A~y2pQVV!tdK;B-}AkLVxkl!j~h_^46nEO?7H*s+zO%ky1feWcwlzSwiW6Helri%O-k;fD%Ev=>-M^ksf z2qVX_?ZXF2FFNTB{3!s;k|+6hh@VK|qhodldwqXs>>HI1x%8(MLImucNDZHR-HA=+ zXV*}_bshP%{1X{6W zR}s2DsZ)_@);b4Qn$fMxA+G(wDX5u#Iz7U#x1=VYT0AuJ19^OPxd9RLPb@<%^QB#% zZ{jc2o!i*CsePv<_zvZC`QU2H$fPot?h2HDj37~*yGFv87b$dVqg-cz@<|*Y(I2*wWlq`RL zs4gJ8YtI#19Q?f)W61ARKfuc)&OWN26Q&eYjC;xv^DWoE97p6?}t=Yf8}C2(sEi)epi` z6gnf5+QGpbF6th7)`lcxu1(`nc2Z%kqIaM&hVb03-K~3~>|GFl8bN>-UUNB=4RYQJ zkdENF7~f$4Jz+lz{d4u}jfQ|yMu*xyL{t|h8RH))tQ^nX?`nDQ%CsDK2FO(c6GL%>2Fn;X~!ArEiLqva?k#?3( z3p5i3^1UdFTwLDhY=1?RE^i^W6Q%zNM91PkXph_o%M`)!2){w$t!{u|nI7E(9< zO7Lgfj@$5XCBVzPl1;_y^$5034L8_N27K_z(HP}UpKiVg`HkW9UEwoF-(t@w{Ej?& zPl#Flj%$mRh-hCU8q&#xy6G_K-o(>eB-r+^s5nC)gu8hhmg5ih*ipaD`y)mwDqQX` zt9J3S+^py7?6>|PFhxCb)HyZ%jwN7+J|r_yEhit$tHm6M`NsJzJ#Dzy#*3xzD%|rz zB>_#beay59>iKph-uxRbj41nwH83>*i+-zaU}E*)-a`Vc>_q73>cBJ1O?ryrtzS;{ zg_fSTcD~K<{>)!6^p($ob30aPX!Y-gz@aHPg<-`)_FC`3C=ea+s?KFqp58ZF-mJZ?;8D%xHEshn@e z^jUz|Tn|4ag~P?bDwi95=jSaVLkymBJX5Tj99u_Ue`Vh2zk~HxRvwTCh>Vr~RscR{ z*$2Jg;w6ilU?sK|N}28J>e-6oC)+N{)$o%2cFH#!Mz(_1$3(A0T09gE85}$q603p! z4c{e{wtEQ`qJ)eoxJlWYLEq@E(1}AKqFQMm%=_^rj-UE~QINg;M?4P43D}Gx*DB}+ z&=4|ekMf6;gMp??>nEj$nGFx8geBpPG(@U%y`jZ^c=t5vLpEKv2kYB(u5dlqY5sbY zr;`bd3(93KD`A#_7u;y`9X_~I+k`gr_$t*lc05}mvYIt(pI4~B3}h+!r#A++UH`Tc zR?RO?x+JDTx>wj73!<);jkn%K!&2T0fpw28&il*+jlT;(F7YwxsyDNaOC4OoY4fOA zpLjOvm07$#tFOE}REVH*P=f$X;MbFy%R#?&45b`_9E7v@h}^x)^Zf8lQK4nZ8iWYB zuH$N-)MnBRU<_8y)W;Vn>g1?9_(tXMj9kp(Y`pn?f_z}_9-Lr(f1zivPw(E23Wlm< zR7u|Py&@c{NO!ZwEFYf>jO_-1&YkUnD*2ughM?+wr6VKQ&uXMTA1L??^Mm_ZUymt5 zV;P!woc1v@c@s48Cl3Z?g!=2N=Y`cus+>p36RDukJ2jbHO{!gB4*}{Ya+W80> zxkax$j*G6>qwk)M=%4^p#{}NtXZAihYeNB>uJ@u`l4)>s4wgB9nYIcf#kTVM5nT8T zOyf8dy)?2ca1^&&MhmX?=me{*4*=N_eT>YdinM0^LH|}VtkMig=8Dz834m0rH{A&y zJ5awq9-8Dx`2o5~S+y@-E~lS+9rW|?e3xj^{Z*A1)7md{tpi<2tkGSQ?gB%m2k~y9 z(}z#0Q1<>-CIN^6;ERwi7h0jv%i@fit9)tW8ow1`US$3Bzw-Q|DB4If zsj%*_kNUlVai%XkvyT{8KXK_LUspL*&~h^KZcvK)yz6y1o(RCy&wBxWMI_dqPM$9x zO(;v*+4{rMB^k&S@?N6ZlNI|Cw>}Y40snat;EVipF`$)`$&`j7>%)CLoI1X7bE7+9 zYE#FSxKcm;@PQr9Xj`O?;KQa?5W<)GtB< z$ySk|j|Oq#2|;h;n5BQUfA6;Aw~U?p@$Kw^UbU*3$0T}FP8*=Sgril61^(zods_BI zgYO3X$>&s98UY)b%aOrT*f$B~eRxs3?$;=_Xw+12eDHa)-6-_d!!nNh{2ZQM{DJxv z@C`ep^l-IjuKsDriBD4u=T&0AXV*KGOUEya)aOx&YA>T-(@|r2+5FG?+%kQ!N_1P}; zN>v)#t46bI)p4sApM#DkaEjPVagy{N+S%NE-Ur%x^X^oqc9wXFvR?;kzfF+vb$ggc z!dVrbC+v%})gcQSF+)IY^^~&H+ZM<*qS@l<)b_|Hwt_+*aQmI325gl*)H5KaAL<}E z#jOO%3NuKs9&XH@s-`@ma6Tiy79WGC;latG(QRs? z4K#PWk8*gIjHZT;DCoZA=?!XlhwwWleG8dO-QJ@pUx?aQToURqR2L0u8uwRrzf;C( zA4sk3h(MdOKz5uidoAx-`OdiBAIV--3+LmFxH*L!;S+D(b7@HEbB?tGpbDUAEQSSjZ$4`z-(mAW@02yXZq@9o#}n$!Z3nI z&CmDhWjurZx@D$U?@8Ye*1|$!)%rQ8-lwmZ&9&R7S8E;{*WNRE)w=K4l-FR-L6#41 zdO*?YQZMZCDke%|fM<)hX!05QsmE`Na zcP9>A8a7Wy=bUBpO&-~OiLEUbq*8G?uyP&eH(C(42&T}cl+x7cyZ_e^vekYgQ zB4a+17xlKDcds6A$VBJoJAH669PXihFY$Z&-M+Hu0Vtthl9xY3;TUCyn`e!#KZpCQ zb&`^%CcVgHGu0c*?#B>@a_U~U*jF6y$6^zp7nlBbDwSxRCd7R1S~>x}HFDvu@jU|k z2#cJ7^UlxVYRYP1tIQ{~-BJ**h0~qY#Vu&?m;RvJs9I=lUs3C}!cf_MKP;P+M=9}0 zLLX72V<2Sl&6Uq?Q~w~uysaQ|C$S}vm|tQ@t}uEIuKo9PzQ19^f$OMTAVgT)Ni;pq zGFz?7s7xfF{t;E4im&Xwn+gwI^6FANql;+s-1UySxE*9&x zT-3Z7vp*X{X2ID|vBpa{59=J8wfh;)u$8)Q!^i$g@kDWVxt{Z5)mp?Asm~rmh*yt5 zrp6qwI{4?bpOu(P(}=`Tg=9;|N!s&g!=NcVb5}>~0+;dsLS{cGV&_b?K{@w{QVPIz zSI_QoW$w8w?cs=BI5NJ?X8ux)gvyb0&6rWA>;{BZ1*_QX7b`CnnOYKAcVQ1ud#dkF z#uw7ys7K1j0}a~1`hFE+1#VdhR-nmU9X{&)+982f6=I*x;uwtG^`>XkvOb6U_fBvW(1lKy)63o; z;l%OY^yod!N%>7xLfMdUhMxaYt*;kIsUkL^)!*CngBKIe+(AG$SD+RUHeNkH|Lnj^n0FyEGoarI5QZnqarM*&kXbYKgm<0#_5ACp5wuU8T-dgttYF+bGr zv}4sTA$xk|F}jIsWp=B##?xYD`P2H7VZ_v+o|3k_T;N)n!t^@))Kc2A<9onj6(9ak z6g^)UysDDd6pN?i61&32X_ePKeKNF0+po(G`u^{zpAYe4KGNwuPJvBGG=e;>)=Tme zG_Hl8P$=hzSy=q_J2Hxy37dZDL6eem5`pCY<($7drf^{>^LR<&v9~>_-z9tBU-qkd z2~ZNyO!TV;%+T9?Yu=s5&j$Fy-0)ffDSX9&_tFSYxM95DfLm0SxvW4oZPhIb^dlW6 zjJ?-DiHn7H<&lS&-Z@_BMf?<=l&7~zNy|bm$w!g%@Hl9)%LU#tRTWM&TQko+H>pRh zA-C{~?uNK035SCfy?Z~jwn)xfyt`L%`RzRK4;udX<6+5;ta9YJ7f&72y=rML0AA^SH$PO#C~Nvtq+fD68;su~kqa<53}kUpp%YG5 z#bRmfgCsCZit+o>iCsUJ&b5MF7vA5OJEFcvqb5S3`maPhcVoENaBjW@p};*Ow6oN3 z4D8G0o%+|5C0sNSac<(b6X9DY6Zd0VzcT6fwU5mPlJG*0kc)8kgyQxx(@Zm4I>=!r zyP}yiOb|Pyt6Z)!@AHJYk7H2V^+N-iU?*P{9ux&>ecOGBJ3Tq=*IMJJbtHH~9GCdY zJ#~654$kpZLI<*xFJjU~iEYMA#i!3>z`V8FjwltkQ@<0g)KlhwJ-JPzV zc2IE!O}?9rodvJnHLdxuVGP5}=e3YQIi_+e#=^*}UYAl+p4Zc-^=`1+Y2`Lw9Qa*x z+`P1ng_$DA5j`$XnRat24R`l9_3pXXK875IV;22 z-Z4Lylpn=vT~DX^@|csXu^&?NelUcd2YVrhW(s34a-k5a`O)p`QPufC>Nz(9zxqiG zchVqfyM?XL>Q5VZj-wXc6-cE^TV2xeCOu1q9Fq9v9t~Ic?oZEskbdCmqW*X(Ddwpj zVh%LcPcCznBd4Y)kNfb)Z}YE{cV8~h@&E2Kb#M_L(`LbdIcM+qH#KTTcJ@x%TUUHyOpC zpp>n{$$RVH*57(33DkX3Zm?EX55;e7p^Aaz9xBhcXZ4@f{DB$xF7FI}c2p)ft<#H7 zx9rq_@`(*k<>e56i|?qnP1}_5$+hw^7BnazXjnIB_M_hqA)Oc*e`V>_`t#stvQ~@Qn6KNSyC>Ux9nz+ULl?^=%ANN!f0cQL zHE`rzvR@KLZ;qtr4k9GuX)E))==9IF1bOzkL6c?_>03`P_@^On|Na4!WyK$sIUk8jC$q0L3W=RkEk4RMaB8%k;+FXiXIf^ksdpS6JlCEvM}R z0isqBqnF=brQA*h#wM)NniF~6%D}K2(mE1z(XdXGBma@2BYMuB_W8pIk4{R-ZB^cH zPc6cX&0jd@4D{R>Wc8tJ-U(4%Xpe>2cKNPi7Y8Q8vrkl=({8~bLfMX@<#iIc@5`sY zie=J}hP`}xbQX#uvFR1cBu9sBdfBjM=wcWKJ=5gl{0L5;j1lW4`h6!j^B$AIV5$*v zaC67-WqwM_ZxWE%%@w3qdzH|TgqPi$6LgQ$q87_yaft(YmJ8MZ`UL1ZABUqP^80O_ zR1N*8?r>rDiQy4Hx8g+4%JB|I*FnF4Cyu%%$$_divXr4n@N5Z-wL$ZB4t3X0jOcYa zTp0=l=2vd1)jK>#F%`K_*M%3{ehGH>A2{MsLB@^J(+doNHuVrl@4I5beKfEQAM)y~ zJnh3O=-As*8N3^#nbHY%UQ@TcZNuLKO4Qd3`)sVC?`o3H8lz-#v%vFk zkB|E&)^!lZD%B<4xQ?yAkHH~&`oW|#flPk&hZ*QnK8QY=go>>W@%h`T03VeHLiDF_jp_xwOByqd!-M_tDs)c&7DBwzir3JZkcb&uf!w{rI73^Tk6 zA&rscV51|58BU+YY_+GwlUQu23{wy3_896f7U>VMY=UdEKD081E?BT{00hM2Mm(uc zjW`S^T7$vtq;}t(#j08lU?4Mku~2V&bjIh+DOH*RNc8LmHn#`i@aYuj*^>_q zOV$9Y#5R;W?wDgf5`36e#}4gA1G~q&Z^<^Xb`q}oTN2*pr?JmtG&BuYM@{xdwI@VQ z>+VBU3@GL4WhX0oec>jSGA4SVG~>zN$Gd%*`GX<1&PCoT27zdIoejZmq#G?`b``IezuJuW$QDxyk4eT| z5no}DZnwYw2b7tb`YfUQTT}@FP<5A=EIX$BEx%7(9~hyO;vP$m^QA+EQ5JZeMJ;Hj zf7hf%>p|2&C*I&6^n|<|lRh6>O<8ZLyGq4DB94}~4^&;b3-{^v{XoV;ymmQtIJSJe z7heD@H-6r87X13W=WhL|Qk0;QynocA!E%)6h}AD;_S77&B9oGVGq9McE6{}?P(u3R zTOvljdNP;SE57}X6Mx-9;l76b5*O-Fa!!Xg)bxnnr7}=wW27Ig`|X1ReQ;CoU`H-J*{q&o~xwal+faR4+N~QQe&P<#N9o zm`y=Iu22l>ir!FriIz4Nm=Wpo&X@tRYWODpe2xd|3I?J#R46vQl|}r~s4seUXc=AZ zKF#|)G(0AFbri)*d{+qb0qXr7at26NCGL$8io2%HCpf!Pe);&y`JNK9r3w5^ZIe_n&5U^3%DGS`xjw|NUVGAGU1daNLb$lAMqi#m{(zy!)!4P_YtD& zZs!Lnmv6tWEq4UW1mU<&`8z zco^1(zi6Zw!(W$$>tbJb@eN9^P!&}#dT0A9YldAlpQW;^`ct?D-0P$*esHKD*L^-t zS0hS2ung|y>u_crEol1o21^geblaM{ev{TSptJI*;k8w-%nQQYX?KPJ`=)n)jUI6W^1if91Ez zp5HjX)AJH(NwEz1NsPxoA@FO_=Xlo3`wD^~GmvX*zgA{BUafeNWs4t6eZ(-ng_m8p zLUkPO{#^$%lo^UGo!Mp(EmZ^hfNpkS4;O9_|D5Ew6pjwnC9NpPK!$8nlpmUO&xeEb zAyqWE%lAY-u1_E?plY{107rVDfM_bFooAAqv9MlzF#hmhDFQz$t|jea_61I3lNEL{ z>2m%WV)ir>`xl?RJ#8-%1xbVI2eJ5lL!uPlvI1B*>jK`zAKnfQNW7Xovw)>fIxlss z3TGZ(xwroEN?BVwi}4ryBJ^9#JHt+ITwQQ19`->*fp5jwEg zl9^{XsKULs8Q2|k2L-OblXu?RakF31y{PDKapskCS{St-zz}*;o(yaw0T|d$0h^z& z3=}P+qTTFzXXjJE`QNda+H3Gfs&z*`_^_K5vRC_j{R~`w&Zn;(iSWim0ZomeB9dnp zvBui}XKljBX?pqmUZhj`i!Xav*iTm-o;vXVc$t)|(0z>Na4U`L_2JZE0p~06ZNNOo zrKg)C#YHxHWl~G%e`A7gnMs%7ZK>2tn z`tVF3{YrR{{NulN8<`U9jbgoT0cSIW0@7~~@3Rp@Fgp&(I{!FN2gv=fXqQjB-3N0! zIDoKyCsQ@B^Lq{%taPZP*>|u|BxRZQxVlT?@ zuyoF2x18JaAJHnI&O$6>Pu=W8QTm#AyqdFD!~hPx%^Pq${Zxpue$2T#v-UG`d-@xG zAV0J_iGc`MzTwgE_JedcK@>j*e`Vvl_k4(^XzV8gn_zHtPJ{~*oPOn8cfh;#72RKu znSRVA{!{zWneIZLuUztBkE%in;L#ayg(8tay)fhFLs&YG@W;J~lQBYyouAx0a+G}l zM3y6)%&D=PH7sLW%{ooEf7AA!7X-@y&|*dAL!aLg#QYHc#iN3g-~G=H!OX6f!lOIf zeosMgo@=I{IMZ6Ht;lT+b+~=9!yi|PtmuhqOPh9&io|kMEdY~+QRw6x+Jg}M9S8du zkaY4HaCCB`pv!^AyS5ifnAfVSwEc$fN225Y!@mJy$c?bvmt9pEC4}S@?xClfV9f-s z-VY_3J>tm2zGL^-!Sy{QHA~m_fAjvEc?1O1e3RQ=T!5-awY14+LJfmDVGA{sTNMV3 zc(oGM!*^44wT}^$7R)F8peN|7m{Z!tzD#Xx$I4EoK1;U*yji{{u&R?&aW4zZoYq_) zsicpyzppCS&Vkrg`#60eJOJI}*mDn|b=Db#x4XX$BjLb+yEwfiyw92dWpdwu1ebr~ z?CKl?+QJ%%^ojH5pDXjd7KXcLA)fj{9%d_5fG%T z<%V#*|03WU%EWTM>X$-$x9&fy1vm9Z3Mx9rfwDZKBxu>Eo0LbTbJDm0Xbc|xG2+i5gYw~s!D4HnRFhYC!1 z=ixGwPzZSUgop23-qFPG$ummC529AIXr+j@H-4-GK+)y9XMB5XXydZ_$lGsOk4T*qibg(@tod zSC2SUi{a+g!XSjKvssdZ0=-4STs8rQShltoA;*{Z+SYqU z6YY^)^{g^we^0?R-A30U1apJXh~JYvLXja6=-`PZgW$_It>mrV*0F?wB9MAl%}d+6 z(955P}D>sCN(bRAAPTRDz)8I2!!|LxB^FE22pi_GymF*cvYQ?eAv^<6XFSLB+%XIKZQ!`C=Uz>ylpnKv6;;UQ6<$XJiuq~R~lOWBF zU%?~(ugHLXG}n)vKBy4Nh~*8kH^n#BDt2|{4rM~?hQ%TJoTpu&S1sKLYEB5e8gFGz z!X!GrzxO-!BDL=mK2@kM z^i#0iv`=meVX5*9nWb1C9V6Qfv@sKW(Jg`gS0C**P^#A}AP)eozhhJ?;r4GSRUGkyyVS#dJH`8B;&x!;F31_Wqa6)pzIj zOw*b2!U@glEQ+DvNv;}{3G-aA@p!w{B zqf&G8aoa`p#f8!ib2>HDxKH=6$i;mWZ9O55M+vm0tMDiwPxmDa0wmv4Rn)4mIXECm z|4_7hdeTCkp8&n8i(@LHhTRnG(IM?~|C5rIy_HexleW%>K{|jZFk5FSoS9zh=APf; z5C0Q}>qi1c^j_I2C>+<~;a&leni<-?%xCgqnuJ?14D@YeLore#PlrMLHKmsvyY)xF zz^+ZeWJ~(PZP$Yq9ZZGq6>5~jCrF0xnBC+3+4#Cxor|GN#fNXPz4r94oX^L+#>^vC z#=~zlRzIMr`Z>HH{a=Mi(e2mVeLS8hy>Ls+Dn(1bHcOZ;zYSBY$k!opL`pMJRkl2LSCgRmP4(|YGf7Bd1Ip}7}^oNh#*$FzR`-SG?h5|PgO?=5o&d^yUTBG+2 zXP>*3+OzlIK|KUa^=cVGr)kiu0gl^{cz<*1`yr?X8J5EPn4eG5)sU;D3H9|%K)v>^ z-|anc^Ka?0+!>o_6ZX$va8+>Sd zwudq?4wT=XSjNiu1fp<|61<5&u#8Jitxv(z;QOVDqpU(C7BT@zq@ZcZe~uo6@sb|8 zIomQLSgMNDZ4ik#;=5Pj4A#+}A6sAm2AyxC)EiOCo#Q@R7Wi@@1?S>9DZOrT2k4Vq z@4mk7k>||t99T@)hqYZ7(G_jH={o1{mAx172g+L+e}^9I6&+4|B5~9;+%iN_HL&%E zcc7izKpQ9X+wW}*3;r|bgEzXrD(*f|)4ee9p1z%3;0Pi`T6uPM+E-+cnnR^*S&Z`Q zsei5!bBAD(RLIWbrb4`R;N;BDsV`u1mJ5uAeCDMRJigCO91tqSI3YOv)zu&;US9(9 zxIC;EqX3fvtpYpiy@LCrshl$Bw2wu^Sx7dD(n}^=rP}iZ?{)bTp?Pt~c5%-V<5)SYJzgFLm?CK;en z5GXd_EMXL4CP@dwyxT$PDpQi=!;>nu`iEWI*jIb&xr6-&vn>Ar;64;xtBV~vnQ@>G zDF|=Np=M?pmTCwIs(ns!@CPsxsUPF~J_jYY)K#iQ$%q>%G8*vP^-%zb?HkW_NsTn5 z?WV`#!KUi~`*Hu(F4trtS!(umhpB^4Y70s6F1i#-j=vs}WZ`!<*|@0kLq4b8 zAUQAl&jLH8J<9YQ)LQp;1<>cJPw}|in>QsG4K*S5tG5GGum4yzAKrg_76{0^gybQ! z3$WQT+~b-ITMr{UMvQw%{-<#TD(wWdgTS#E8e|&3VcD* zYJFqX8=`2D7Sv(1=dC-v3g`sKd8HFw42F;szrty_Ho^1bt;?%slHz~rK>d^>yf+OT z;&Ze1T$PtjOR(u6lSZ_-Ki5DPw^j<$hK8BMO~^^uY81TJ9RU9Nj(a?hHnZ==Cs<70 zLT4D^e>!V3uDJLEFBOe?L2rP%sutGyinp|#;NgCoHle5=YLL6v->lSyvxa00!#@Rl z0XlzsIcc%(2Sk30n7Gee_WR6g9KAtVreQvXQl5J^$x4HOEVfZh+gG0W=v-P})Okm} zXkOWP-cycbhCvz*(`FM|GQXj=O)*Vr!=^$940ygiH~H5${q3^A;)iT+ZU`-?q5cg0 zP<*=+cPLGgYWvLEAKtVb7-4npKf2w^?S8-Vmt*ID65~i^g`FwLTbcbnv(Lh8~+JVLH zPNyTeKvg`xP-i$~VADde`jjROx~AzQzw}tnc<5>I?gSN3h{0*jpXJk%sQjDmU?gl! zsB>diQ7F1brvKU#C~-0?txswwM^tZYI(tG~CaZYB(m(u{emYbp9b1}Li%D{jSnjhX z=63i#vQi%dYTd?fCJU=CA*v@bxt; z#@{329~Nfbb!1d>05$jhKvTP!Ai6T2dCltuZDo;fi4!d_)#2xbZ%{53j(+F|Zn~c8 zwxnPCastPtF7I^)xe;5_M249;Z_1Oi&-qxi3CwVKe9|xxS9Fou(|J{nxi6r6jQqin zii!^oZ@&GLnPeyn)tSdHKc6L?eABv*`XYAoHVR3($Tndqt(#s@6}c4$`$jb5vrGip z^(YFPi8BSf*a;$Q8z5!w{YVlY$|N3t>L{Ocz^{}H@mwuGS*3<~hrWMV=fn}Tw=Y3X zMx=bGvOx+XE)%d3YD8mZ>RGtm65ctDrda+;@9VYElqQP4Imi2kPbe^C{xr9Vf*8RW zR^^;oF+w(M=RAV5t4zi(x?}eR(98L7o;foie(Ug#yS*Z;S#XLpn(Wc$g`a#vB?P=R zxS*Q$}qgh?^^xRm~2;_K^frt|!xn zQk$tU*AGMk6-dx;HG4ak*XrSF&7uCs(wS|kiUd*gmly>enFSFLne+{15D*Y#lCSSW z-CnEuc9pY`WJX4u*k|*)2Z-%!RG*OrL$W5W-}`5sPqNotzlHiS_1i4&GZl)WM}w7!slOrmt335$DqJJwU^OD<5iwtyI0 zdt23LaIp{OxzkC}4Ngjc9WBxdZ>?y3Oq}cPGtPvAQKpGUy`&u-E@6UIf<}S`_IijP z0X&UvKTTxpazI879mmt=aZ1FrPpOd)N|11}(oJ0PHES6T>!8zGjL&^#2~{v%cW-e`4k3tJ zVMRa`k#9#KdI`Cd(*0{`#)SvZDO<&kr956v`?<-(-vRc|BA!@&gAfJ?rErP(iGpBM ztE&LKz`j$(=9U?v@ZpW$$vn#J%NXEm0Db#8I0SAf-Co6-A1(~la>AN__hqZmVJDwL zW&#RBr~ROxK2za#f{SK(ZmzeIfDrX6J-XK>FmRGNlbD6!{{ZVRsq`-64_(ixd>fX% z5l!QAkjf8np*hnm8Xo%T3;!})#Z9=ZmUV`bF!+?99i@3fYkxbG+Y+*BJ?cG792 z?pp@LU-(us6HjJHV>458kTE=vv{|g`}ilE6ExoN zuLYzT$~%;bT_hf{2Xdb)(CF-~dA@&1fMUQhEY2_A#N~AyU2~t`NVqtrC3Hg8p{er) zi5bvO%A)h;^QmFPKu$fO2<<<-;wljlsKDg{PXy_9P<1%a7{v2Sa}7NQgyr2zmU+dc z5?FV{T2hG8&PKF9Hk3-C9Y>bRcnVuq_**g$?uALGfoey4VTkYRCNgs1~0Ub!6CbvD4*~2mMDV*cq!gBq#*U*H)*@r zRpMRpwuFdtB~P#F$@_kDn%)^}(ydZ8ovK*~c*8H{E^GUGxTa0u% zxYDhy?zUU+ufXN@n%}`$4;VMjWBxIB2egXs+p~Q^Dvrq`GiDHd@|S+yr!V}_bV|bc z{j47^tUJB+_9ozx#5vH=y$1qt;g;+vsax%dVZ1+~y7jn!?y2&F|LI7L3B^-<$SzlWA9 z)dLMDhwF}j^ zzhZh<42E=%(qSkDO9naufXz&p?Gv(Fd+3F8RmHBD-gpxYVR1py2hycocBSbtx(Spy z^N)->ZtWA}VzUH}71-sXS;VQ|r{ZrnjF?mOrI(1|+1;pHZH)Da$6XvIAY+qMFofnl zbUh=2>zqg<@2Su$xXq^4K*@6p>aDDu3)oj& zh}EA4xU^QU(_Q^N?}r&lLGS#jSk?Wt=k$Hu59JG#ux4_zmhUsArD6UI!>;~NKyY8p zaDFmx7Zw(hX)|lG$3Wm2xVopEPMJ?YSRNvW>rvG0P`?2#zGyFlrFqX6J8@3MUdpX~ zc!d_m5g;keRe017m7>v)fg56MV*1e69t^c#LWg%u?YBA$OKXPQ$1^>KwN7f*ScP}m zt>*oZO~6Y*Hmg5lsCM^P!4d)C5po7TqaSEFAc^pr5B1;l+Ma$*q}y86p7W9D2nC|s z5#kmC$5vD6?l|iGFx9^b_3w4Rg!!X?YPSSdfbA!O8G@J3q+Q5Qw$8kWxDBivT40#n z3P>fCx8&FrU||@RDu@|{6$z7~!%2tz+a(I$V4=c{yuNfIz%)t^>MeNI3k|1N^>MJl zEx2w}ncX<*Elkxx&T`I&G{I0--rUL2 z^|P&}W+jidp&MsQVI4?rirI0Fug!vs!$+MT>cf%Z9V^5HDc)0L_x-cRJj+K}WQAp> zwpAgx9*m8`q@zK)3Sj2%3ry<6p_bqo&(@Rav#zS{uNY`fhDxJz``)JN9Xt>o6OR4d zcdXD5X@c+A!qDs}Bu%n@SMOA1lNDcdj(xe$mO7qpKQ#I?KTMENOEMdIihq2Fhf9T7 z;YqE?WCYb4!NYkWugp}x=lOgqp}i}-m!Y7|t9@QLEQm8uHD^GG2BpZ0*p!1B=uuS4x~PpU!+QB zHEIBW0iF~BFXkC6=L$)jNSvVYL+>g9tUEsF5+F%||6A{_xr_3+lD2(l-8Xu>KaUs4 zh=>Dck5S|&g;|EuFDvtj)zGx))xjszMrddcpWRD$j7RN? zPTseXcdD|zzT8`Dh5ZOUT$x{&_bavuKD=>zXrL0hj=KN@P33)&Db}< z5U8>?D~j09D~$R@mrs^9?Ip}Br^j{VMfr54O7YR?=W9kkk_k?^Lx%0*v}T7RBfw+i z4sNG?b=UcplqE~?zb`qPqVwEPh9K0IdA#fHSU7z9N*8<)-Yb1m+@uB^j1J^ESar!| z^1EwY?zqEiy!fv9_Ty%QB2n{c6&2RS8pWfYk#mH8AD6Q)k-2;YMhVuSJ94J4epae5 z(1&s{eDs%W%+V9?Q*&#>V<;U6F=U&xQf}dm1?qgCPx?p~pjE7!<|HP8sqC=@xt#$? zd4zCphfPh0z0mRj_o}0!&_35mFfN18INZFfeu9UO0(+A_w^o8W?64dadQ(qg1y~_z zpd{mR26_2;%kpaJxB9VvZ(NJ}WpH25cK2RSaMqpN{k$Um*>#KX_TK>fMEe;jPvKJ5 z2C#0rHS(w=CdU~)H>V)Zlna1OXNW}iFY%qVA7WSOmUrN6d=Tnssbea(XO77|z+dkV zKxFL9qw;WXcDETB$$$!ACfphHJWySu1fE#R_Ca3X`TL)z!0Hj<2 z`)<=DrcZCUywf+Idwto^(lq~_AgYjfQ{VFmc(dYotf0d?H5*Fy?mo4TbiW7V&A6tY zv4w@+c~ZWT@QnbIAC9br79Z_syCmrT$zX6kl%eYf7?K*rw06IKKlSyNB|22G(I3ni zkwR~x@oJo`>JY$D8;?0s{^ZutX#=8y|p@1jG9%4bq-^tXCsCG7zdG-S34LRf| zoFPdzIcCUoPxR<9aDWmGDuQ>*rm3Fmm=7(I zC#grD%|!gJrYmQSvlqq4ff;-%;^`|bko?nE00KwJ1LM0to)TNY8*BhZ0!;`~@8d&) zO@qT=l|AfI;TZ;j9n9RaoN=Fz?P6Tv=sN?c6d`XIgR}Fc0yB4lSm)vP7vA=@4yK@^ z0i34W>Cs0`hs7=|3Q3H%j)0*-eZnr)U&p2}2VB{w8>bz$M;xZ!HE=0#rL)JJm*E}% zL4MiIkOWwC5_&QZ8B9z3{KjddLfU!=P$@)~6=;dzhb3PTaZa`&MnC}IE?lR?><49F7+LLYU5fHP-Hy`an+iy~IK5k@Sz=!@AXs6)_vyz{E2v2&jH6MlBl!B?G%6!?_p6E^) zYQ<|gm`_f-44+{*{CFdNpAU=S#^eUh@$;OWtm`FQp3*TBjWw-LXAi8wdcYw#(~D+% z(_J-DkoF?(_l9ZrArq+<$bDZvTrLCN`u0r(VLg4GC$LP?Hmo1jowWR?cIwI7k7&;I z9)*1(^T_HS?n>Hp@s29mijO7WW7HTu&YS|xDmk$(qoX8fM9DR*Cv{Xx^T54wIA*G{ zr&}Z{Z|L+c8sfOYI*;I5LwYT@4BVZkAz9WlcB}7x$!M?ym6$L12Dk(doO6#2?SmPf~`C&+S!{tr9v!lzLHivA)4P$LfO_sy`RgT%K!&p z*d)^*w;QHP@^J3aiXB^GDk*Q91Z4RFy8Fp6kVZLN+K#3VScpxlN6+ppt)Gy~wvb8t z^ZBq(lNmwMjIJ65La|S|l&9^xF3tS2kPp9m${?G|6+M+`PvA~=Ks~;6A64gtX?Ak9)?g?}ja~4T z0moPvl0QENfa(gzGXQq{oms};-#%MCAuHsAq1=tMZw#)u0bG`0`QzIkB9pNAVuvL?z_|*^X3GsUIHgxwOb# z`K?wMD`EU_kIWU}BMIlv`=XCMVgSt}ECDo>=JjJ{4QrTIn;xX_)GTR-T)9$=TRL9% zLGLJ@jJvOYjzRdv98Tg&(#uIY-}fjIQ}k5ArKGLv*K4nx0q9&_c+!Qj?jHHv*fh8H z9TDrntq2T58oyHkc-r|=`{|V%JW2Y*-n6%Az{mci&!^jFB8ss3VMbL4DLm{XcRd79 zUIE&K4hMuPt9YJ|G)Ygzd(Q@_MnK+LhgNQ?XWJQQb{jn(E`Om{9?ePdbzxcCMaS`0 z%U z{0WWb4`w2bok2Rp!v!=aGwp%^c=nd16zoxR2moYu$ zdHaFcF22rQ_5HYV66GNqCam*3@H;U8APV_c|2;=*){{3DP#pWcm0<~9A~>n_3vqn- zIb#UhDSy4+Yt;LEA>4E2v;5RkK*w`q$-UV<<9y=}Y>5SgdnH^JX@^%SFBC0H4{H7_ za3|xxcXuA5%swP%QyS;a8VvbH(Hda8)ZI}o?}KxDAa|JadtjtJvc9goZ?>X)a`s#d z@4Wyeb+|^fxIaWi@1cO@90vCXin9n#HsUgPva_>Vd!QF3mzJQ4FUQPZ(s){nbfbG( zE-F7i6=t^woBFlYw|Tl`z_h>T8jL`9`Rq$F7A;96zr*Imk!qjX6Q$@|CGNJanqBDq z?K}Xs5iy3$ytT2Q)&A^UZATT=!jQ)(c2XWt^HdxaZRIZe6)Ox}Qyl5zq15b8^~)|> z=ND=%eyiC0QF_2n$>Gk)zOr|bNc@2$NCI>XdU@>c>2)F8Cj89VELfxGQ{;mal?_`o zXc%|W5XY2|7lC|oi=lx#J8rv`80Mz(ef@xWWXvjf%1#Xgvgy2Q3;GBLBFFc+3?*kj z5;y!ut=0a-V_iLo*2gvs9YqSPY~SV6{BSxgl4h!RGBg2$+c#*@$8rlkqb@3|sz&VH zx_J8)K!gRVspOIToxU%8mGLsc@iF7P2%xNQ#}v0>N%UM6JJzkHW1uWdVG1m z`xFq|=BN^1;*9i>*vugi;TGJV$+Gx3g*g}$ajtWH8YXo{aS&L8^lbroeqH|CP|44ADY(s*Wn1iANv$@ z6)=J>wUF8&|FVCDYdmhSo-XumjR`cUao2|a;KONPa}Y?i{zkAwg^jZ+9WkbMp55ee z;loP@kjL*-8zRvkf_wL>G)FH}7NO=#VKwwaxTj)>x1&NHPgco6HHbHt-piyZdfDg) z?+|>gGK_MW?LNv3ixfCXeC;Vh+c$B#m_`2jg~#am3C>6Q{)wZP7`k`icSMy3uf)ng zqoc<57C#JeFJnit>ucy2DJrFMo;+n)&)j!mS4s`OL0NW@*^2 zG65|)&ad?GvD6<7qd+D?d$&$mPUAxc)Er;hrxz0mJ`VG_mdDYvGz^%tbj+k4EyciM zY+KG@1G?6tX-2N@)qN5E&QLD*iQ}!uc^EI)zBqNNse2+D+p+JOc0+^TW5Sf4N7Z|r z!#Ovdrq6`4W$HCd$z_E8tNip{3o5qc@++P4o9P@iLfq&t2q&Zmc?l)7DVQ#xP?@Ii zYfdHAm&?mT7emIJpUsN~->c58j6y1Z0N)upRR@R11%ez0bQ#fHHB$WbL83NjEyt{b z)HH3i!to7JP3pU@!@Y^@eQ z&6UsKmrHCsu}f@#+8;579?2YVd?5;}lbMFxsv$BxlAyh4A<17cab#7UsSpdScc6n% zgY_gb_PVI_A*v|t?I690pK~cM z&o6}FK+G`vw5IjP`|opjZ(QtrhMAtp?0&(`(fF*m1a`Qe)8)Coi{Lo&(X7VI{k{!- z2}DQWk8n3an(9@Wi;Dat`q(IM8|THGJz74?pUTsqSCP)JPvZ?(;r@`(Q~scDX#crBLw&hl zL32eYnIzHkRtXq9i1Qw`9*Z|hjs@uG%s#sxICtz?F!qW){l>Ht!{l+sqameBH#XGg z9!Vce6ht>&<1{wN)()n9YPEnoRFSmt>w=O;6g?WW`e&CGX6~U5y^vK*Ovlsh~12OO)OPvmJ zg!i$Kp-xD+0-=2~=~HFTB?Zw_yn1!GT#P4=>!$cxS$!p(hlR$Sw1?#o(S^cV!<=}# zu7@>M4rALbl32ds>M5^|^IF-*efI1U-f6d#KM%zia+TQo<*Vu+XMc@u)<|;j6wp5; zAzh?j3W1{W2!LP?rZ{DkF0u9wL}}UwMz`->t~OkM4@Ge<8F^r#Sx_Mu4vs-6xju0c z2M&c4bpNxz%X7KArsa>1lhP2wa@5&ihycnF38ItO4V}r)0wrK_A8Mnd9R2V855FeNwf>?H z-zi}@(uK`*9bcideIjNgnLj|usM=^5d8+(n)d?Cwcl+)$u86M)jPHW~Y))VC);DJ- z{xTp>2G0cAU7AvAG@xvboI4N&F>!-`SgYmb$6r3#@;NxY07=@$fLc0^1}0UHhK_Vv^Q%? zPp3MJIy_{2$aD8FX*^u1v+zE??oKzH)04H#=2b;*3l$$PkmKr_rKOD?1_-8?D3R~^AkDIQhTaAC zjc~#WpYOyCoazajy2zKJOWLFo6I2`O#)2%naS;gj+CrPn^XT9g`$`($&Vy0H-?pD{ z&);Xx&o@3il~29F+Z=of!F5kK&I6%S23ho9_!c9Zywy$keV!neKF}{HUGo@x#|`NO z?jm*I39%QGc&k6y8Qb;zTE-si9M-^&6h49xm#?0K5a!4v+lND&A+zPri)5S#BJ^fd zK=CjpA%uDu2(-sKGvs7@LfW1AujK7pCm4(hRk~8xxOt2#A1D)h*iatRlI19&OdfK0 zhcl>DjP@|XIar4wYo*^8xZ=I!qYEb?TFXmG%yVyBZ*Uv*{6cP+cV;i2BO(3-6mBp= zH2b=>!@dllFRbm;TAr-@njBt`CWiZW!5w>OIUf{J2c13S4p#o^(bg0(a(rjGyCtxi zxBQU=#N|v%Fo(?aJhe&Q?v4jEF3Lp7+>ArU%;OgZ8YpmfJgm|WzD`~Q%lUqW*K(rJ zvB=Ux2DVD`k(4r!X0KxB@&duC}f-D#B;q57_C!8n|9gVRn1 zf4UCj_KcY4R53o0y#LZFQ06j%HD0m5Rq&Y218WV19#0HbEQjBb|BB*TF%qU?4zZ*9 zIQKlyNiYx(56|D%_$?Vtye71ule>5N`hsfj0R1%j1rSx~eVSb4*vb zHI%_`aV+CP^3oHRqahyzRE6+jB$cEq2*|t}9=~JtDc3ubxfA3MxL0c>NC?FAU_}rk z+~U(Oy{mp2An2Ve|8mo)y1Z0O0?82bao6of_}4_XzoBN(f>NCK%Zddkh?1e@W2~X% zDoI2&edCAsbj>e5<$j<3boiW8EYnm>)xfr{oRVE;nC^1SWgjQmtOa#g;YM2X*6`>iw}bL<>->HX$D-b@X~_bAE-o8yolBx zPvi5LO2gc?N4YPF(uF$kf$rD6Ud|hBL(_})1|BT-Z^@V;$DSvBX@uc<+x=!GZ+MBN z=MqNgu~Ya87iT#kDQx%R@Tf#_Ia0!9RIZs?9q=|laM)Eq!88Wx%_>PK{>k*C@}ZVJXJoM}S4yikqgp>5ODDH*7f%?oZHc->EEwzVH*EWHS#-~eyUtXvsLqtm6S3}7l_bA<6QQTdcP)& z07G5lZ^$&Z^QtL5Ys|W3=GIl_dUxM5qj!m3ICKGgB!4qk|Iz)_JZtGw)Wse|hQ;-0 zrdyMoX(@c(t^0$$^C!uBfv{Pp=JseMkB{S4y{|A@@+Yx1OXNVH-O+3rZeQ#9F)}>> z6`*E5i0f^QJ(ao|2cyVRl{kzj@=Eh47gHMk?f9>gv-WTj{vJa_`qbEee;IRatW;U; zA2)pmvmu%Hbq*j+VBW{4da2Jxb}8y8B);N12V_F>nsb`!$2_2=MtVi|VE|RZ0*HpL zjYGQ~_&s;BXPMT;CRYo;h9QQPGagw~1w$jpN zEwNX$A~MZvZuv$AlnMij6&z>$@WTfF_oC#hYK%@O5-h!$uuB^3$NdC~ja6?{$YZ6L zxZi6Z*Us_*^4@&MZpR2uH+}Kks?sH3@01F&=R?(8f2c2|h~4cf{c zirU4YoZipQ(*!m%AoY7}y_5d&C`!e=b=^#w7`93B`<)(_ImSB-VR+3PI28*Fi&kof zx2gT0$)xhUuieVB;0%Oca=C9ysx_0{#>8k*K24pbyfiFch?{`kpOFZOUC?r8mLe#i zRp)MWcAglW`Vg2*#_TN=P|na!)~V{R7g=i69X&p_5YrAEjm))VNY!c4M6J(>cmOqN z-G_SElasg+m(FDCZ$nOYCdHxwuPfRb?jq_UfCZjRbf=Qz%{?q}G-gC3=imL@jB>3A z^1cP)pN&b!27Lnfc^Q=D^R6W!pAjq^Y5)2qgeq7&}BHvq4T#g5$1<|{tF3jpt-=xRZK$}#2 z6F9`o(UcQ~V!}@qs2XmUX=#WSCD&zL`L2Kstv6r(g@sW9(*9+E!8O(Tz#Vb`H?JSh zm{(#xS=$TQ)ceibXY*%|dgOCrkDAPc=(U1Ic{|A#jh= zx`p6$zi$=JHe%g1R8zD=%g?xc9Q*w$*`v77lX?1sq=ik!g5Vw%b0%m1Rby^n9UNUL zW*QRD*Mzj^PPgVHkfogL3+ef?pM=Y~GLKYP-qOqX?16d&XG7HAdn!*7#j_f)OnSh~Le(j$ZNWd?%_v`=np`>GpWm&8Xgs zuQ2I3!QIZe@G^+{7Q($rKehuzoBQ|M3^JMw4hjE{dsNB$$46e0!X1y`)lQ!G#FJ0? zZ9gNiMUw{g;Egt)Q32EJ>i)XhQEFv=eI9U&XBFAgoRIV z8ZfNj2{FtB#Ar{jNVe}LFdz#w5_k^$y;wzN%G$Hs^oh1{4Qtk?dlOIl+*##KQytb!Eua;i1~O)+@gOD>l&v}j>dbfT0&EePnfatY$P?y(-)E`Vh`S| z!j^qS3{k=pN0@^aZ3YKd|CVSyy5tU$caDg-v3U+|COkWBLC9dc1GbQd4{!ehU5A%FVKd}z0H6KRXw{|1!1%ZHeHBfkeiM&B1>uJpPDeJNiE(;z?d%SfA=9+cYhW9^UbYBiX&?F%P1RvPS z$*(OLY`77}Zvt5tg((c3WIt%HwrOU^EbJq;*cT zjhrR$=Se&4{o}@Sk8{z~BrxBJ3QpT{eLKH%y)%wMYk8t3Hqt+vtCh^ioqCUOrIP{9 z+EIJ#+C<0{LycqUX}RRJ{5x2Fix!UT-GNyaUy*jx`dg9m$6z3ft)x=1c@YBGd5oP> z`;~vsj$-z043IL3=Y79?{I}7Uw1m5L=rtaIdpSgQ@Y>H3NSOy9Ni`(}o)LE;$>7_rz8 zuOA^d;XY;#A21mmWS`m}T@j-}vN+NhSW|riIBLF6#4hpU`y2-c9CK%)FDemOWg|5yFz} zH;*S)>AB-MYQC?`Jop~4Bjf-+V6H=b^$C0>O3 zv8LHtlwga>7Y0{01WdI3lhR*caFEm*qAa(R(2YE}w5M{DQ?)9R`bv;siIrTz$hg3yDA}Cr zlEz!3aG>%_zxQps+V|#pYXHAxZd$oin*kii9W`L#`R0Bx1P>hSx*F>Dgf?s%`uedi zzQ}o)@5(wP;YE)2Y@BHrK+kR=eW4rJf1dI$nK|ktw6BARipQ<1{5#Urf9Bb1YVcrX zE_1+EV=5f$JJPLj*$iBq|`=wx{e_o853%X_7_zN#o+6Khmk94w3_|?u<`nIFGle)`-6b(myM49 zyHP{zhnG$EgK>!=&MJnl%EAVVnTT&L3Z+hew6Qu9F|~frvUBNKr`uiCw3BHR&2V?t z(40${3LG9YwT1ni+C8AbKH8P4`6S=eW0Y62dqU-KLl9Oivp(3WtjRa$ zh)3(3tY2L^_ll+6KABX*H5wthLD{vc&cxKZ*r^}@+(MK1-A0eYYcefi&UeCC*uk?57?p^;o~f0tPbB6K1f;HD6*i@g>%* zgCM>bo36)OUedaUd|4Ykb6j47$DGitBhOQGwHFCSMmMzR>$(li(|jStee1Xvd8P9W zl%NXM#q+xAhljqIQIXQTCC$}kKSp6V$O6qSHlull2KE_osiMdFY3+lpKYc5XRV41# zQp|FGP+!RcHK(y%zaeHQ?eTrIv3J}=-!YJ7eAw3l+qMAJd`)5-7~U-;=2|Ij3Rosl z$Nl{xe;} zZpc#XaoZrjovQ$U3K)?2%=k!JJ0Vl;eBWgxw_*>+B5iaN>Wpdwkypujd!p1JQuZzl zg&!X@bgP@JUZ+%i4-aC-oDmS5_b6{4@N#y49kNeuo@EJs=f`X;j(?qf=?h5X$0ws2?(Gs^78BUL@19$T5~kWj_v7(m8f zY>!^!#o2?ACswOL=y;bhS?yrH#Wn?CG1*U_)id@neSiI&3a*m*GvRIQ%(a8N)({sfZAy`K^m9_%3PvJ^sc^(gb zo9(I1Rdexg6@3MMbA=C1u75Pd zMbSk6g;MB^?Y8jJ2mcx%_I2pwoZ|rM$&#ef3_X?Kh+LWGGo!O>+7bhkAIx>T=flZv z;D7$mPF;rR^mx)B1wwWb7tMKaisJS8^5*r%$WxF)W7oA(k5BM%y+PU3*BSl|=eD!Y z2Ntw;_zEy*W%Yc;Kq0ie9$p#6T*SjZ2O`x%{T>bb#<^Eew?uJSSKjfS<1w581mYhj z#jxFgx#}v{`bp4f@Efes1+g@QBfrL==muSwvTXEqY;q11a zB+Ga8TV{dzE|I5UfveWNrJSO?dydnX%w^4s(xA8EbKJYAI#2!X0oCEhh&Fo*F}vBT zDSw0e+-qUoNM9s-aDQ^DtFy}PPQ5)ARmAZp%y8Q9KI6_^HYA-%*c0IYX3LP^R1gj zVm`N^9dFpgKd?e^%+1GLHVr-%j_%m}_Jzp91`hpy5jX@^rh|3vl}fi#Y;>JZBr@Q+YyBDUlsTF$phVVsV_KWayyXIz|ObYs{+;=Z2*JxM7oEGkrfCU@XFQ>(Lh4!M2UkVV3Q8?{!40 zCOjRL&r$g#dMtR5pmyQSXs5?mDrdxwf~%|F@g6wHUclrN4WEFD5wtyO`${6Fzt4{s zzF*Mz*zr*4qSh_i9!ZfeczXTH6D9b+=y4HOIXz-RmF)Fl0^9uFua|TA1XcI6H>hZ* zOH`uqmC?2@47IC>+?QVAdjDhs2jEW_so7?E=*;t$(@7iVFO3+l!4-uSUOP%B-CA-# z-7f&a>4)fh)4z5<`S45VAdmqXEHcDlC89o;^Hk1ZGIn?pIZLS+%3y<@7YLui(?iZ~ zGyl%q+#r}eW^ZRE;r)rf^OIIQXD1Gh6`I$%FI8jKb>gLwJ3B;Ii@s0EeO9hk%`B*R z9Yw(KZUJg9qGz2NA!a-qqc4J?2Dz-v$1b*jKSE= z)fUll0?(Z}xRnl-ea8BoDNEH7KezNpGwGvHz-)t8zaK6zU9rA~z^MHXIwmtImMKI@ zujk;bv+_8n+6uU*@I-rZwm*G4UilLR@3L>r zcqRa>e@^5nBX0ML3DAUJ9)D8s{WKO{K|4emm z(&1!evTM7!C_6cOq?_sm*~LELtR9~MP%9PpchFan!<_*RWaE3!?_1Vs50J&DshV?b z`9U3WsnPdGShE3WB7E=ynxr#+RbDOzmhY3ZN2v({@$WuTt9`{05fnaX(SEeWzc zcdEyoY454$eH&=E)MN3>E&2}X7{_B{uOlZ+81C950k+XRpfd-Ql*wssF`JtY=!A*9 z{iZfN1qekL9@rvE&-vB2`{dmt+pf7*G@vOhDiM%a(I+UERQU5|eoICwcZuy9g+Xz$ zR`vB-H&d2$HzFrb1$-1U<=PqV>qCzktDYWh*d*^FQ29--X(5$BjiBRk_NdN?fXynvO5MgH-5Sw zW_UQ*N~wOlRvHx3EWUW_*Lk0gFQ0^P^xjSsAuO^7gmD+}m%h}H;gZyf4#}Cph&5VH zq*q8g{_lKZ$Z-<@6@>3FkqpjxE4Y0MY6|Mc;RI`~mPsXy%soCLC!7L}3fEv8FUNgj zrU8pXVLboA1y#wPf?|)mQ8zba;p*?DFuMdoF*+-2Hy2bUa6R ze7%Tu9}PUTs}*cU)U(#=DaAJ=tiNXBmZ190G4J##PN%dXDTNmrInL?}qQ)4U<(qTLXm zpAIWpYmM6VAU=I6t8TGOUSytlFX&KIW3m$#{vN{q6;04nc;Nfo`vTJm{&n_+CXEb6 z^fy{GqzkX1K=`SZ+pkeC*-b}(WBLlT_RE=}RGgo$jgDdwAHIol<+#uvmpz@5gZ|zJ z)W;a2RsTh=e4tKmaL?y-JUt8@&39A&LP|Ntb0!3oW{coYl1FI%&?b8J{y6{+u!JRD52|ims1;b$8 z_`?J3503JJ>Eg`iLl`wwLQxS3zHiO=+iE>b)l1rizI>+}!g+1j_p@LCkRc@XcL#Pf zVtzHn`N~$_k=VxLgRPuW|Mv>k5vXyF-YR_&CTbxcZ@t|Nd2pRJ4SE4 zqX=vJStnm>cc7ClhgRoFLg-&47{L6S2snSKOh zC(?${qTvi;-tzi0VX&3|=KPJe(D-#?gpo-v{Pv^X(IkEI7Co?bd!IAN&3M}sUM=}v zqBj~u>XKU#ZQotGc=c>_NIU&&t-CG)aAp0De1oPw-$bjN?~pl#?4=H&{IpBLRAPn{ zu;)J{!2W*lcn1=q54M%KL@x1hL2b$D$v!Ph?DO~Q<$!jg&Cj)^XfK=2@FxKog6w+u zJ@+e65yMNn8E`C`r8H6<@^kIomUuo*dJqe*5@l9qK$jKTax+gP~A(Wt@zky*?&9HewfmmooJCs z2s>sF8zo`P5|XWj`hG+)81BN^6X@ofV82N9!uH)Et#4%zI*GG*%DeaQlGTzi=7$-P70<(zO}wts4eGG5nhPOxcE5eAw31}^BFnuh`1Sm{^Ui%J@wk7hHR za7pg#`W}(=)3JuKz`kkU>xLf+7VD4i5PqQRKxOzsW1Nt~t7#U-N(=rOZDa zBAM$#_aRpWf*kXEI?0i*9%vFV$)%gbVX}{hd z{xzk-ea4Vg$@5ivLNU3J=?6w${V%84j5&-n5?UcqMkIa1*#l26ZQ^&CPkq8+BwaqS z6~cocWS?fpi`sq2Y#lROQQ_`VP6z=JLMR&N!ZNz}bMrorrTccDup1Lta=(Ny8CgCr z2QxE!ytn&qn?SfTJ5#(I#ImA06(G>hzR*;D=ov`lmX#ijQf3KQ#BbC)O!`;VzUK(* z==3rByC}|JQ10m&+aD-h-rDlBC?BZ6R^k$K1nbM(bh#u;h4JerK7~4b>dH&RGd77{ zBjM0h2!5190YjmSqJ7{SzTb7CTzlo~^Md!^(67lv!15ObAcJ*3Yq5P0AVu-qiI%em zqA%RSxLnMnTN@7+rQFy#%hI$ln^_#QLsZOPbahoW`+1wWC95Am!0zBFdzjTt*wm3+*LcKzJUlJ;u4lPlPR$RJ9y=%*y|i_Lh! zK1?eu5_z{J4*pJnR(eoXTz-7~A-%Ln+jqpjf^%9!B%{nai+^!L zbg98zkE=pNgF2;e-U=_4pF#_}oD@|t@?=)OmyhqC2fxt+KCwAh{TQd?+yRWwJQN*@)=tj zNB>JK_~h>63pEc~Rx(Z^t!sf5 z3oX*4SDsz_2%E_J-fmm4p%LwvKfp`F6WpY|{YvzS3fcR?8!rPukJX&6r?XAr<58F^ zxK;97PT#8=Lj$v*>PIPOu{dR^s7N_huY*$y0S+}|jvice&F0+zTwbMS?Q(w+;qWxN zU%2d1vO^*92+Xofx{oQU6mt9=mGv0~F`c^0)v$@T!-dt^c7-6JElzY)820h|8i*=J<-8xl<-+g}8Y-Dao3h1DNXdZ(i>7Z180;SC27Lpq1o*}#DrO~K1(P$$yG?olZ z*@h>%xb27}26vs61@hnW#Gv_Eh{GxhZ`cGW?jk&l{Kq^T!R7E;o500W`tFLu`4^{2 zS)MtCo3yR<^EeH^Dq0!WR;!098hAA>a-c6{%IGNj?*ZkNi`ynA>-t-w^_s32rLn1N$+z z(vOSTlzvIH@W+OI^mvSkj-}DiZ+C-R7f(cjM&l4Qt9d8EJC#)TI{fK3H*|Zihv(gI z&INne@0|0rc#W_8Y)yQGQp}#y)QuXGg@5(CJsQM{_sbK!^Pv?JZLIHH!*B zfNR|Bc|qfC3&(11GvSs27lrmQEP6`NIt)R+#HeXfIIx=^-1E_!Z}iJNm3w>9z)2`A z-<3b>OmM5?-{hnCeoLhi#R%z>HR;c{&-3+@UwpOwPV@77+ET9%Bg+1$ezkN~Ma(!9 zGJN3c|B&r%x3^IOy^P_iSU&@f57U?ArpF0%OZoEUqIG(F!!tGKYi&eJ=QHx!fRG0B zNq9E87jXDqp1pM*y$`II+lM`?d&IDxllmPGFL&c^5FepyWg*_zz{yVyqEW{)&y+Ek zGhAW&O%9zy@)QjeQn)Dywx>GTTA&}N;cxjd5Lm*^pf%icc{(Mz|Hw4mF@W>GUZOo_ ztLHCr$G&-ZNXquA^fdT(XCg8NEma(;P}1$Fk5dos{S#eW%$*0K;|!3Ww!oKU%|8xg zl}mG}Z}u^{Re}@O7>YVA?`Jf+wEaGfhZGdSExe?-gz#LgtS_IeHhJ={8vu zDpsfQHlBfcTJXBkIWEx{jagbMnT-^T`*B;HJu6gb39a)4001uLK=2CiMGasO>@={I z_yFESovZNh+^ESm4cC36MLQ?c=d02}w1tJ;Bo;1j)!uhci-?{B9@WUcI7Y+dq7)fJ z`b>PuUv?MBkMN&?AsnV}=c55M_;W+o51$hc=cO~h&r-ZxNO~LXN$lCtYoQ9mWSKhf z0X*$fu%LfY_Z!4D1{MvvR(`<;}vWRg|3@2_4(~0o1L>8B?1dA!v;cM67$+4KcSqqjd+AO;BhOpx}5CR z_DjEG6UHE1S>J~Tj=HXzj}GMYfaqLti!&}%|GXBV#n~83(z!bHk-Z{lRA>rqo5V`J zMoWH8EcdoxHY4BSLw5Qm7ok7IE^!=k{R%b#`SK`cyjJde!%b3|%oiM9k&hbvswmHo%Y6T|Nj|4YQEx6UAjer~ zDPGUjd-85z@PYIwfA+r1Q0gnwtGQeKU?vo$DU@X>3CY8esULw2%L#V)QBCmOykux0 zDSpSx>74ivtbhJXZT5_qVtnAaTHl7ex^pH>y7QRlcxyaC30BZ}e5+LS?0`H4P)8f! zT`q^??S3jAMV!>8Xau^h2CBt9e<1bVSZo}cLtCXKh}^qXdm2iM-`TRLb>`XOtY5S=bg%slP&nE zcP6d4M@2OmW;BJAv0Gry_p-bxG}>qmKWdEoq=;8YjIJ{?4}$LFIP==ZS^YkLPoeU# z!Ur?e6fXOk6dm>hUn)bvB&-MJPz3T{aJv{e*^T=oTZUIb@FWeps%KN$P zQ^ZBx?(COHD3m(D`|k9OSb*qmyzs9-QhDj6N|u!o!|NWzExAi>!c*dA&SuIcRXRKkgnd9bp7n(5*;NnJkHKEe!rV{!FNYL_m6a8g-i&U zRq-pw?>|(*uRm5V^3C6%ja0)TC7iSLt76kVH6BYNJ)TMVz5wZcU?n!}h__#Q>g)c9 z59tbIGqwTa&(z%TaYe5SXUW_spjqPi@Zdz(hen#m5ooioNQGtcXP+V*0TrX>ePC(1 zzoR_?ze2HN`+;8((L!p+K~9gQ_nRbp-Dh-#orlD{M3^A1>m|lkbi;4)Z~fB?{)9Vu zd%k6KOuPo=n(yTb0>V++hOGK=c8YtNEeY}0{f38*xGUM=a7yBM4{57|bzm799wg^L zhkpW`cB^u0SFcoWJiIK4o|q=a9pQ zrjm4To3z5{lJ8s?1qD2zAMRX(`49#I=fFvRSA`vUeu7n#hs4+Bxt};G+28(lu_j76 z%Wa>th(eyHh)lkopRvcMEtPy;Ax{R2h0uJ!RrnOz1bGSkLAX=e_gcoXlsca{ z4%bJjx~FQCQGH%w)oi6vMJ_{uCnKtYiWX0r8HDEhB)p4j^ex8|L-%ZzEIdGHl%9Mn z#wW*1c2^IFdRG}ru3Wcx%RGC;S|yD|9mDFmBFJw*Y+XmH@IL@d-E@;Tv2LfNI5h^m&4tMif6klR}8i`v% zihsLZ4R_xtKIaItB&N#!6z8B%;kt;H9XwLC#p&ob_4Igi6X>eyNkYxjy5cy{FCJ1d zE0$;;);pFm2(YffAl>JzQTB+Y6>L~qozoB+jCS;4D<4LkNE9uPHeH4sCYheFeef++ zfRhNsamQOfruXG{(|7`V_66K3 zdFM|5%WOAfOi^bCcS!V$E=n}SuM9*7@iU2%=eu|g19$Qc9vNquOGbnEJRZmQhh2uK zST>zw${w$-k*aR-gkkD1`xB<0fA7A1^l(Uj10enOH||mR3SX2@7lP6 z<{95YUU;_Ux4TaUr;%s)tv~Dua3z6@z?LM;kL~Du6Zt)wnZA&mo6PN(b3cTMupNGm zm(wFE@F6K(9#5a|0nIkqJxgt+W%^@x_<&!#ehvadlW3~NVIQJ-Ay%&zGhQtHiAhP% z?yL8$A(LzP3agIv1BEyj!lEYU@9(yCwi7*0E&2(mILUYSZ-qbu9XwygMioVFdZpTN zzfag&z!g@$k0H~(h1dT8%pgb#5i@P5UGz~4+G6r|arY6@@)B`npHHhlI;!?K`rs%= zZD?Orrl@%3vWH}rv9b1AtgC@Og8X)7tL%}&oEFW&NVCqFes?oE_SDC1=zC8jBN^;4 zMY-%dN)Acd&)YvXHm;a306(F+)Rv75-hRy8v>*QQ3PRHTA4B43etWN>* zX>-ZQt-I0!^Hh^^NauI17$CpI&qSs+O|19* zyaN~E$RSzlc1Z-A7TB-x9Htb3!Rg&e^A@IP;9bR6sLXqnBTWNyn5*~Ze&7Biq|RH=2n16UKBEwwsN`u? zfpu!0fin9kE5bwCx-X(gusD1X;Qz7T*JwmpZW{lxTwa;m)3VP8!t7nmC6|Rp6fn#b z1cFKqLnUtZ6T~DE`Z;7uIJ(UTkzr%1Z8U$T#Lkc2u3Az)`?B_#StzvjZ`hPQ9zXDR zaSKC+R(y+_GdS8@K)cMw9rg9*4wi5zzbNxbZbc36KfhP}K;{cxfJM0(ZRs!_@91S; zAQgxR!+j#4Zot3#obsd?)fEmF{lhO0)^oMz{XHIC?68dM9%JSvQ(O{&QPzr_D&seC=v4?ZnxSx4ft>+C?at*=rdEV z)X&RMUf{ZS%J#I!H~qQ|EP@KIjC=he4bby;hvAw8H}RO9+ue#+(YqW1!dl;=R|wqL zSmASGmi8%U~KUnQzzO2Kc~z52A18;iu_l0}iFbtG}~;wLiZA58R(cN1rqS z_R~SNFMbLdT=??^1^J6@Lf0Yl)KZ(gjO+{Hel8o^v5f0u-uv4{asi79z^{H?;IlV; zF8sbZ>eknZIOme(yIM5g#Rhn_zWl{bp~W?KCf@guOs+xg((?KF91&Mb;HjLmpTzG& z9C^1DmtL~{*jQPwui@{*>Vz!?8mF}lw`lIMx~KK_c=Ob?)EcfPn|=26-q+E8UA*9p zSXv3|$-QO|5j#nMg2gU6{u4S38U-1C;W#k3hz%G5ik#9GE=I+N4 z)ZEtqMj!xYXSbF8jKovM-@x7&6$-`%30=_{KV7i9z)2rTmt}Ks^(~~hi+stom!P%2 z_wxXpvyrh2 z@E{}x)6@p{*Dx7<+3)hS%H{gbtR69`5ZwR?#*D3SwZ!vZb75!hoSz>^x+k@ zAl)V>wf#D&_hR)%hWbk}?g4j-y*9Cbcp}pC+a(!I9bi%vkiv5CH`KUtrCz{$gf^-(T!$kkWut$MZ|xlolZQ8UR0XDZMfp&Ef0A$PAML}q)$Cig4@%@R zivP7|ahBoq^`iFSl3amB&&sVMe-Zu2P7jE_Oe3>=FA#3jlhCO7egIPrfAn(s?wjOC z?vWiyUylM*hvRpj>+WqXR9g*Pt!6LPm44pSjzRiP3OXHxeUd+gUQ+Fg-ABv+@UQvx zJWP#RV-&+|Cd$vbWwAm{1Q+k2_^+Ik^PEZS?naJ!RuflA(3duq*bv*E5YEYB#6pK- z!PF-FjKANmE$G#8N>sVMHm%QM!c@e=&se53gC7O{@}qobclksy%H*e61}UPE6Uk{a z_npeVLQj0a`i9<~pKGG#Pqg) z$6N434>xSHzb_iabf^ibXWI9D$3kiq+cSt!Q=Zem9J6zC27{AP-?o}>?lk`)S|VM9GxF zJ`i3gdbrY07yTP_Glw*sSu`%|Ar-9Aj_u;+ew;b)q{n@?`qlYj z{m}8Y$JqNoZ?_ro$6wDh_fi9x5Fu#Sx$)&-R4Sddf4buyGmLY-?_O&mX9Xq}Nf3gO zbdT_>H=@7K0_mcgoEaVFqSt*lfCn14ZOF2D>i(|09t7WK>7M?CXNG_L1{|aO5xsba z!}s@6dmVL%?aOB@@6jO_?Pt)F99hDLHzVLpb=l`W`hs=jT|%|{4b}ZE9NNNlJKCcJ zSZ`?YSUAM7u7ib}JY=)<+r`P28GtMD@q01wae5BlJJCGf2=$ocVf!k(GWDIhIv4wH zF_@Vo&jp$auZ&InO<8}(b+!ZY@Cv$~-sjIJA;3Um58Gr2vDSc570}IZy#?SIXtRGx zzMH+G45{0;e>pVNg2uu28Bik1{Z+4d*uVi$kFUx-A$V~?@RDt1^SQhdIsOjQ2R5># z`>Z|oz(m5ChNnE`us=8_2|q1yPE%Fps+>Gf6nJF*OTO<@Wko<*^ED1f$)>JhW4PPp zbRVlbb^nMr`CCwYm|v@>b^g@^QOBNspa~sHmlGeKpnU&{y7sKjcd#TQ15tQ+Nt|JF~GkF5z;<2$i;oJRo@QpR3{q(OD1Y-*DY;UwPXf zHi^?kvoPWmUtaos6ka3DMeJD3(}cEb1N&0@Mw?pgjl;nNgEsMOu47&jk+T-at-5NP%zV8C$aok-DXR_DGv; z4!sQ})n{KQUM=A+O+G;?8>F5+!e*{ zh+ppl@u)n@SGD0e`zn`Se{%+zM&nAZgn*n|{;Zll0!5#3cikKye67Cq6|lWWK`Hl9 z|B;&gvoepEn5BKz^_=dSqLQ60I&84sUVA25%&OER8rt0)y48dMHHF6Cw!M~Nle!}v z%;D1;dj`vy)FdLUM@VhYa0!e=5{f5&sjsI!b(I+RFa&^88yQC5WLW^Y6J}C2j3oDq z+Y*LaBm|0JpAk;H)&6mbM21$L&0~*D`PA55Y6}}z@m?NY#g{FbMf*ILIZ9O(=>gNm zxiQdwB(58#wS~=vbnZPHPQQCtA$0;TRe}&v^u?D3{_q#S=%DXQuvPnxvE89?qSExY#zm319HqzE$*8naJqzw?29YugdD5@^52j zc-S`eyGhoBY7qLaFO}FMyY3?fbfPwIMlX78pY+aE{IOF?2sFB)tZBL3?*c!M68}L( zsvPECES>2oQ~Vx)xm7Ein~&bl*F0?{;3>Q}&nv&>4@DWRpYF@U&18gDdcWP;RNx(c zY?FPFxR(fE#mWRLFY0P5bu-ysX7Yk2&;TzD%bm;y?ZXU4FSrTJr@EuPi1;**{o^Sk zFq@$5%uqDihd5ndP9#g&J{oPvcw2NZPXD$cHA-iA-1&WfuNd&ZC#N}s=whQ9euks{ zvJ1xmgYl>R$n(Q&3o#qkcIZ&bDqcZWG~`i3W)lUBiYIb0HLHvRhk!c$91|#W-Z4>5 zAC=}xU+RMUVA+AgJ;Fk={e=$i(I z0A+@QwDIEFtabLocKV4#0=i|&xE>N%?0#HlpIc8BDOX|lqH{}rmS6+AuBFAL-$SCQ zuj%e(;Y$pa%oZQ4`2K7f&53V*3-PA3(SNK*(*joluh@H)_Sr8^drX^ahq*2F+Vm9s zuEh5FYM@L$v;9%Z=o^&UJJ0PZX}sfC+}ESa<#6w<{st5KvT8>nNZ+)fyy#AX@GgiVkSFW{(3bs;aWPIbiJ@PJs(=-4_oUQMTfPzReD&P#n2yn2K~Q+v{-6U}mc>CtacO^VGu3p~_mCFU5jKP7Q@B0R zhDM(}pxJPrMpgCpgRh9p81;4tRH|`GcC^ZQhLP1$tTz(Bw;8735q!n@G3+0so1Yf{Y3eV3jw3RM^(vQsKLEcE{u^ zovDrb@qQxy)>lRx64`qF(mh)zrJ)CPMtCCh?Atgu%nXWu*2X`Rnu8j~2U4$}Q+~v( zFHNQ$sjhErOwg@xX1k)`7J;%orIblH{)Lxy!6KaOAtbUeKk<{;!qKEZyK5bj(~ zYt3m-OWUHAHO+dVBxt#V;K4Hqmf-PN&p&szw8!@flY?bDd;R&e81v)7|^eK-^ZeB z|DctJUb;c(`-OBTH7V`s1m~Vtj!xCU8dh{KP6Ifd$p+j|VNQ1}v(o0}&nxS-$djZ@o`vn*D)2jGeH< zu3wWJPWN=ZJJm$PWtD{m0Ksi2H*k;{3+$&qsSRNtYRY+<4mIWv(f2R0l>7OSFYZ%Z zUESwb-UHywJ-+eeSA_<$#C!Hz=~s$kO9*9$_V%KwV9c1FaxfN@Eq!Syk~V?xX@+oL zUF7)2o)qGzAKSj-zQQ~Kgb#<)I()qQeGL#Vy`#!7DO*oQ!49la+CUN_nX)hbH_p5G zNx@Nuenx{YYLl8`Qz-?&uhRQ22L-BV#tw_zo{_=h(%F}M@HgXBk4#9%i|@g>d>jiq zEV+_jGnbn#U1sXHZLcJ~k2N)BZ?e=5XT$Vp>G271 zbduj_1S!hwmI-=PkqHr4W6CNiCrmp5%gs^fxD1Kl6%RW65j<`+y-I%i{?@>81dzpv z5x5zGnBK5cu$>qsx^d`8H-59CLF{dy$MR8^u>HE#)$2=cwvKLbovtHi@8&DQ6l6X4 zL2SwW2bF2=;H2_je4HpVw}#}P(_0>Wo!8)Pip$8t8oeU!X$;sV)5hi`e@MXLNTcT? zg^qzo)&CJu6=}BF!?g++ppjz`-mY&L|MjLVF)$+83kT;Cl|XOBcHUO+!{Qy-Z?|8* z(aA;yv>hiMZ_@KbB)^!1i&dOP%|p{E`A*NL`4t{7e7+oNWg?3FT)$W@t2Ncm2g<$3 z&l&pBt6pjHZ)i~e56r1A=|^raA1}rZ3NBm)aXSrM^mDC}Y`4*ODD)I{Xlm_(hyHm= z_Hz1R&(_hz)wtSwMM+myJ}HzRT1t>cOmE-tbCr;nL0d#0e^D@yUd^Ws&!QI4_&je; zKE?!h`nUmq%;(dE%i!cSFF;vo7xYo!cr!naDY_S(jmp_?4PgOuvY!?o)bITX3~=m;x*>7PAd9w>F6cpZ3T?XVNm}voC2*nSa=F zP`dHYA=WtjoT!0j5T|E0u69DKCB^oI^1%Wo{lt{fhqT9E)a)eM$l3BKHJ1G|Xv}Ifx9M5ZSD}z4rjsmhWJ~&oy=LP1B>IU{&+Wff!j$H_m+VAX2mk zoGy=;#@7FhMMo*9OsnKJ_u=WM7`3k+gtVf`8@Q$>i6+VXBQO-%#%g3UG5AepdU#lm zSmYWg7=7+wwF|5J4VGKQMg{)2&L73dIfX%S&AjrB1cBH~J()jSmg9DasNb2kwAuVj z-P^da)iwNae^M_xu>hFXk$QwS^8vP4mS8g}G0x++|{u`Rb7|tOw;%BLhkd9A`S0NYEtf)_wNUo7nAjI5p+m(&l7Wel&L;^ zE_ZUcUeQuu6wmeVbFaW)ya9>0bnN#Mc?QX(+EcSY{Q8{Fi02Ejh|o49dyn$3uS6A+ z%RnS6RTb-I4}}h)m)qa2aem?@MOBQW2{@r;WaIOE>2Y58_aHx@#LV4CM&Tnm!~Y7O zZq>l<6l;@bbC>9RfwJI?w2Ij=-mfWWSi%)2|-y2nN74(1#AF2>xvO{i1GGob?%{4vC8c@nBZDThvEAiz~1@o=PCb znRZ?BD zjel5paaz!rL>{a48cJFocNY9O!BL%BUR|3)ao0fy z$6WqRJj>_$D7E=8b-Dj8L2~)`3bx+d;Dt);W}woI{{}c%d3~d>bWc#UGEFtR%oy_+ z0ZMrbN9ceL9lkeU6T?TxbDV$BfgZrJ0nhL9o-6j9{{f`dlW48wQ*BeFWkB zawqJcm9GCd`@k9zDn`h$9=kDAZ+>ts_o0B3ksx4x_$G*P_?Z@4PF>MPcWuMWT`jok zSjmAFyO{E>pGP%b#VPA^>-4Q}H0N^-kBhP2JRI{jGjvlwyp8p?M@b*i^Ti5I-F-R8 zB!O;N!UR_p43;j7ai1qfj0w0L|%KNFI$lM=s>hqcX z{m!_Znq7)K{fZL{4DKCZG!tx?UW~R2MSZpBXlP7a)jWU42d}^|KDCa?H)c(aI(Qi$ zd{5Ij;So;J3~YQXw1!h4dO&UsqIYzZhABiLI6)MpA#34tphceQKOM^=0n0iWKpu-(o6h%&~tQUQ^0jd^dM>M7&U zykHXM@&d0V{nw!aq{a5J2}5(06CL+%rMDYrxF~q~MfXImZlo9} z6^mr;7aMfNJ8VAG<#LAwmb|+lDv*O0JImHTzc{~m?mINTBJW@SmGOk$PV4Jv#lw0a z&b2ns>$JhVcXwnm2*%Mmj{Av>pH_u`Arhg8Ef{4tEn$x=xcop7eupqTH(lz5eAr9r zIK3TcrvNvjgHLMS=%j!F1DtvKBP$>7@1MAbErIlBL2wr@#%w&RT1v~0*XVozVUJYktpCCHLkJd`Tmm5a+h3-4!Veh zr%~H<36ZoaY@P(sz|IDL1>A?*QTf?_ie#|9`pCV#!Un;(w9n^*d1nr{Z~m(T!OYb2 z8hY@3f6_=G$7Dt@Y=s>>Dlm|&x?f@zn55KYBZjhfDfu;_$5Q6EJlMpqYP} z4LY2wEr*vQ{Ll{zr8x|%j2})ag^QVP>ADYO@Z3Ij)_l784c;|d_M;Wve&3Vi7d*0G zVH=8>w_YxuW&fbc4v!&Ja>!N5Th#2!NE(oBz$FJv6IJ=+!jrJJpY{>?#=SdaxW`XJ z&NVk})obUEK{KoBhh6oLgKi^9drZPzLwgL*UJrqStpBSxSK$1AXn5kpuXi&8gDnJ0 z|En&*2zbS`JhhA4FM}ZcwCV6sE?4mdMs~Gl#{KJ0Odb?mw!`x}Yv$-W26}~H?+HH_ z_nK4p0JA06xW;x&-;Xw>v<(W^%@We<(finMtij6roDszlz}vMB5q74ZoU)jwi!Z4;N|?CS*wt z{mAg#4SIm7j~Ii|9}rK$Z=R&4bZzS3+m5bu^mGUw$VjTxd!K+5ciNTAfU+iU;|p;-v))M z){evW0-HR1Q5u_s%Y^nO4KQT($yp%noGgX%yh_j85v0WgS5j_rvw-PcLsh}NHs!5z z<4cx>v%BA>t6#?V7f38llW4Vi&xoHDUhgv+pVP0=?n_sfo&V^(1@W*~c~JL-5Ixx* zf6ld9Czx}rn+A>6p0K(X8l<=4RCOo#3C1JyRJxmXk!Ilg5vxhVWX!YkdYu0Xj-UDl zYD|+$psMX}Y7hYFx%XQpAZJ^O7l`4rX%tus&@7zCQGJ04@)o#?r010>vm5VUhB&yw zIUJS2k|&Z&lcHus;l8ze5CJUUC@Z2I$gwC3@pP5IfI|B%@sv)gw!VgnJ}z-tU%lg? z79n{SzF^DYFP#cuaj?rfqHaMN#bEyknU+_yh1nNwnc+r>(>;h2$Iq7tokOn+-N=H5 zG|7ofv&Y?Y(bllX4}gyoI23lgj*#|rgZmIaBIs^;`!V7GcS6R&yYLi9sm#0_PAEov z(8kTI@u4{$5fq_q&OO=S99T~Y01JeU$_vvH_~E1fY(~Dl61RzAe%Jdg^XplX%AA+c zZhv&L&4^X8TvJ970@aVYJs&c_u>G9`vG`CI+B=zbEVAU-(@TyQKB|5A)BcE}o3?7l zeYR|Y71{b#Czrz`(DRo{K0IyDbSY(4-TD3f2r4I0leO?6v}*Vnk5z4MudF{T2D;ZN zUs|5RxyvFU@rJX;KmC;ZT*JiVQnL4cYknl6*Re?U#W}2LKUrf6^y}+%g>!(uQAn}M zF++7G(FphD*3i*(Bg#&78P4tHP5-um1+dT;mMkY`bqvl{MGDwJw=JeW3@@VniMYOf z3r#4l-JzRQ3*HE`rS$_obG(rEu41h2{78o9@Z9Q3Hq)2+$WNIl%<2$IlKw@;^Q|kz zoOprO4VTJRJlg?qoIN4;@ zxj&v!%;5Hl)|ojln;v&YUB|S(o<2yWUmrI-QWaG+75Kx+M;keZK5EmQhH%e+lBe6WWVXeb_$-EeKRcw9_xbtnUvaT(QUL|7f|+)u(3 zr6W}&8k`dN;JWRexyAE-XY9C?ZjdC%t_H9fRtf)-twmWb*`*;6nj^vBideR*Wj2H=^Mnn726{}7<5 zbRC0ze4p;&Vr++f%Kmk*&O>=qY4-8`AjCvF{K|p~neUrhAUf^*{cbMrksx)y*XmJ! z1_!YHOd^qh4pZOa;OmN0R}L>Eg zvIi3?O?PsyL9fGP@clX4;Pr$456^da-N39m2=r9=`CkKa@4z^Ax;gFl`8>SWN0{vk zY*FK0XQ!M(LF@hTU)rcv!{cp=&X+wHEO-r1-HYK*d~vxhd8cW(3B`4J(pAj1E%i=o z`W3N$TpW0Uuqhc6X1I#m5okI>*0^hBiC;V6=MDHJSZ>m~qDL?h?BE!2;xBnIKm!an zzk#e;=7&?OFU;+DiQ3;|?3>g`%&I*S#L2^Big*cJ>`?;tTQBg$wzJ_Z-{B>=BNHLr;q3-t~el9Slo^FVQ?k(=N zAqCI>Rd<_lLBDwS4Y6xLz4ahrWM1IZe#{z;$Z#v#If*-&oj2DSNM?GQctI9PS$+WO!wtV zDqi;rt~PeNk8JHQV;WUhG{kJm+dJd?I(1tKIIF3_4>N*w`P}pSXzo*@)4hF3!9SY( ze2yiJrA>L|MPD-WKBT9WmepMojBchsO3jZ;4DL33G-bMjFOEQ{-R}@2Rnc5U`1^Yy zFbeQgL`(RJhFBJr2>d!jG&>#etJDgGa3f*$jvv61YN#8Il(H~d{f_gd?#^v>Ev(y} zv3wB8i+PM7#CsiV?~|TB8{8s(J>OL_tFHhwGfB6vlgwfBmk*FCe%PSIS_pLedGyrd zemb9@T6#7ltHO3OFvB|tbE!t+kAG8-bC1$X>a=B-7Jm`_ zHVLtC8GFzb9ifM&_T<$khqilJ5*N{iXzd*xB#abE7d3NkUtiR1Q%$oO1Xd799$$SZ ze8@vkseY|h-Nk+O%q{G9LAccI<3eYvUng)Qt0Lvk?8}rQb%ne9@Lf3db)CKM6 z)#M>V9aKbDs}?hN<~ORD13gefT}FHFO`~QigR*yD_!@kEQq2#H^OD7HPOE;(TW5EC zq0h4iC4VlO7tRR6eH@2sIy|#%m&gzS+HvrWW#OkxR;!Sc27y9!t)1A@)E7?vrZGq!t$N+tJ0s+ z_Br6tAwb{ElDpzr`<7ndHUd`{Z)JYasHDC8bH&(qg|5U*CqRoICR%_A{n!4SfhJMA zQW#_PV4tIL_V;Mu;#wEUGOl}13Dpr;N0j>u=4Gu9*m`I`% zz`<$F25rcn!2~Gd@c`23_dL{Sj${!(OUeLTL43UGCEJr|1!`K3Y>B7JR`4yp`=4(F zkOw-K2#9ulqAD^6e^xw6piUninv`9q3Hf*4CffUAo*wbLF!m3{{z=c&{eJd4MHL}> zJ_uFx7(c>Sl%rda9Lm5uXRHKlM(JxJC{>H|i-=|GHS-yX#}z<6uXTG7n_6i$J`U2= z%;KcA$8Yz;ozy4iw9k%~G*YL0J(me_63vR|htB!~6oNusehC0j83kh;Hw+Sy_Rh&}_$*V{E<$uHJ zEOO5)AulmN?XTLkNP}$9hJhOzeu(NRa=bb@_rSLnsoow z>hDv8)krvhTZ{u4A779S)STAwe!5+(%sS7gHe=p^jiSDPE^;(W+D#Wnc)#~Ds=$&S z6nr>SQF67c$Z6F;A@%#Sst#&`eHgrtUv#O3lNtc*r5i|55R6o=yyY6$FTK%CC~)QI9v6%2p+!~H2sjfKDcgT6UDuYP zN)-JiBrsDJ{3Bne-CH$8W)o|zuoMncu8I_K>0yL}_(uD>BOai~*LGae)m zrk5*K<+{xa(cuF9;l9pAGMHc@^1S6{I<3R&P;L(#E>qzEk7TsN_rpq0)l==rY=t-N zl-{$)`G|HWYi=1o2T&4v9ZMj=!*aNZQyc5C_q&^p?ZJI^V!QbFg@Y~o2s-iFBW%ks zWZhK}tSf^Z4KF5S3xUVad^-)q+dM40=ehj2<3}G~CVK->8JXzic*)c6=g9TzHGnAC z8OEL24}cHrG%lwfZC~>t04+f~93mb*a?rkTOGA$$sPEH)#h%s|(a!pP-?VUia<-ii z6_&PcZkD*f>a2n8vXl}LpH6h9Y*%UN#)ffB@o-yV*>J**fZDnfpjiKm{s27(Gfdhy z%9bA{R96@xXQYQGz`ZA`z22|h4D!zJ#%{ig#{QSN4R#IgmT}4ISD*g^k`?a1g-K+& zdil3&xmW#~jFG(5btYel4oUwj+RrHyoR0A+u#K3aDIC*dvDG`tksra(zU0M~eM*_o zIb3`9H){PI@>)M`eA_+Fu=GZxyn_^glgHOt;HL&%BgJ1M+kYHm_E5fFPgZKWeGOIO zok%YCfui@2{_M+CJsovT%bkm=&4z{8pNE#V?<<>D+V<{){55>YtN3J=O58pSVN{Ie zoNu2#^jfVIY7W}ld$TDoXMxq5g0G;3hO{2G7=X5mnoEJodeV5P!9c);e;_Ek?IS(bnl(7S^mndA}Rc!xFfe- zUXTdw@>RQ{vfxWYca;e>Xy6*m&F>f-WO{=qj|?B<&+CA-gJA!PA`O5N#F1{B%+uqS z9(_!-*|J=C)C>PXsb}8wk9RnZW6PWOjyoL1{Zn8+=`7b2u!%_fc2FlG&$pu@9!Uxr zJ-<+zzoF`ueDBEZ#sZB!V&c68exnAO+!RF}LFpLsRYHi+5Jt0E>UM!8w>C$Snt`4;On!S!PZT1KkK} zDNac-ezY2Q*}o%$ke_@)97rtL@>9}-zeJmnEIspk>a&c^M)i53rOT0^;pw8KUya z*T|&k@_N80UGET&M~vaqUOwwQSVCfYTOO{Zr;l5Vz{dLl*Z4*tLsEDR7sfM_WRxOQ zmtPWN$Ildo*>p}$K_|fG;r9CV7rgeC!6eFoq6p+FmsjuR@Wd~j@4pFLyZ8BM-1${lJ zsf?T0;uHFYc6+U8z&}6DGiHB~ZV4Q>q?+3$sLBi;J*x5Q$p=(QcXv3MPAB|bSC%?D z$4_^lCAlA*93hBc7 zc9Od9$*y!EUFPzjmZ$URg4`sTSs!M~bjb6R7%PZOA%ozQ$yk0XW4ZdOPhf^l~p~p>a?FH&u|kQHaJ#Y$^4!|1@kCa_gik9N9%jsmbU3H zC`ma@w^#VgIhs-Gy+3_VJ`Y(=#COVuyzIhWKDYAOB;1l23WdXHmCaxJ#7N}r-AaFHxoMRC)QGkPHxoo4a&N~T@(>Hpa6^=L*38*m3^kd9ocRK z_eLdo=kjo62d;OSS_d__B$eL>7?a|8;h_;sk^~uSFqeBi2=`5Cp_;Z{p;yI&QSMe8 z?i1G{_0RCQ!oOvbf}tiLrhG9zadTjLJ^x)`wkQ-rBB!=4i^Qew`NN&}oU@Iq=x=Od z2V@ym0|SA-;78DpCHulGaMI4%Vamw$b9_VkbIP!cbOU@&KS&X2coV2DRatb5i7lBm)opBI%q>)crURsOwDeTNDK zIVnDN`9dtL-+H>PlyyYQ?{#5a*`j^3ZWdnI$^I3FE>y)|UDBBGuF&82dCPZ} zN46Z-!)-nQbQG)J>fJ1rx*r1dm9HSJ!j0S}UVxKQSOa*d>V+e@Cw6yn*_ZLc714bM zKXGC)dH6v6{8*(!-yf)Q^>Q6qr>r0o_p$bYFYhy!**}@ma|glABF_x?gE3kA!LgC@t2?i+*X+%>wLiJ;3d%$seZpM#00hj4K`7V22Dw#V=K3db?eWVYv5~h1=&A zPoOqZ>u`?0YaED6`)YfLPWM`=x`k<-B{!S*d4hel0_o)MYS_edwYZhTm)qGw@yl>wdYC2xdXaIT1be(GNysxEjOd2=p+#qD z-R4~D*)g-P_H$noCEM9=;+`S#W?(p%x@dEcnFY89&fQx{C7P#9Q6-?)*Y~cwLFpE`+ z+yIp(?6+l9qpbvG1o@<@$!x<<8Q=d=n1qiPe1b;ynXp{ttD&oHr7VjQ=iOv-ts`C( z)vlg@0pVIEo{4FVeB^I zPQ!n|aBwqu;xO);R&n?o5B^`xGQfAN)pE$-vr)3WVnnFrSeZfgtx zhmbS-H5Aj--*U_|c&$8U%#{7H%MK^(8s3mSmI(4OzCkD3pJ|8u_EPbzQ){DRHsHa$ z-a*)0KU@Ws7dR-!~5?1!J|FT4Li&h3%!t9pCHkWLODx33!Lxy^pz z`$FcaIULIFdcfpN6*+cygxJQ7DyduN@#V#`N7Mlw<@FMJa*L_;{8;Qo(e z-TX-7m7$2Y)klOCAbb81)(^`bu*W2G+Q-h4H)(SUUjuP*4i1IKgTzNWB*x2@bbh4j zBc)tV(B7mXnOrq%+<3vo2;gn+M0*z^`SopkCUTg%ywcyp{o4BJq41jByy$1l+f9%G z+%3(}{S_Wk5!aPY>Gj2p*m+{}A2-QwCBv*#EWBqEpMg{3m17qcEdInEK zW$CEW0a;b&rmB~Pdp$Dhwa>-(pccJL3a5LylKWi1ii>B!7h+bgg4}$(QH>9WEmpq4 z8;nXA!VwE}qd15jx#Awtd>&}%8>s+G3-`no2Zcw(S7GRtnwLAqKRlbQApAlkb>F`g9uZwE zg{zc=J@F)tmJc^@d`5hr5Bej$1jpbl1LT>^Qgu9`mk`NnaH{ql(Yu3K*dS?xFk0pM zx%t???G;uZ0CH9@4$zvHs&DhUqxe;7EO?P7;(PGL`npV4V5dX2S%F33zE^=kmIt2m zz&Z0MNzYskNofO=Pdr@X$Q^wryTNjqdKIg!Ztl17>AU>f+dX_ckw%=2T=y0w`f^5d zk{$N}!5psr{gSUPu>CNm{rt{7@rOpdHMeZ~oZtm(@AuY+L;Y1u_2iGsx^EYt`FfO8 zx&|xoDN)P4d~g*=?07GJI7uYE9qvPStT#E)-w~x}?520<*d#mL*%kr_@n`ZdYxqb`BDS-%cT);MhJuG$cx9|@8UK(FE zEr=B-7LSASl>;cPKW+_)h&TTGv2uNXzsh)&{LtOs?sA)9!K{@$Yk+EI@{RDCS$JI> zue&--T@I@gSX485_T0X83)H2q5!rpv>u-U}!n8Ys?q{A(;UQvL10vFOTf7b9+@|KA zT;f}bWr&GVf?1r{Op3((<$BB7d|asBgT#d+5e9qP6^e@!x@S2ov0fMQe1+u#ah*Pg z+@VCg$)wVFp0vMi1Oa^0{n)PpG_U7@Pep34wuCR(&;U=uzDRv%Na{DBK*S?tHjcvn zWIwUN@tmD2ncSwxE?qk-&X@9o$AHGk;Ytn$80Xt3*p~r8%U)M57e3aF8X#>>8u$4k zUe%8kSP*FsN^s)oYV&T*!yeAmM|s={#zw83X1*hc&4--ODw~V*Mq`1(Q-QP@#E5Ge z?je1E%cN0up-c({7zDzZ? z{yLKTC>C#%plBj0JaI-DvK22W{Lq0TJunee8HcmnoU)b;-_kw{^eU{zC_R4O+HcS6 zt79~fZ}xSbGI3FheX#a!p`V-?N%{NMK);iv39RFMFSh}|51_W^b>>4%gXcYlZVW#3 zZm9SDJkG9AYq?@wg$I@-^K`~)7};h?ajRY6Nll*yV}?&R*F2|RO+{XEKd}@w zINtSjt>)8>pR(d(*crReH)GbbEQpvV{v&sX5w>1GxF6s@?0X_#BsaTLeXbdgxyAMQ zyWj6L%<+&bW{~vvy5DJ;Fz;s&7<%dsJJ_zIeFqt$_CQJ-mL=QpC*Ot+7}Eu{vd@jg z46ZW+E7a;(?V^aXHeSDC7d+7QqV`IG(=Bky`n|R60tK(^cRy&wLQ_h}2B)?b_%qp^ z`4&1^&D|u5W~hkbsZjd=Wo9(3Zn z^k!N7?&txn)Gh1rn|=TX%6=SoC?UYAiu0E&rp7MMIwD#OIqq>x-^tc{`S1O)rUu9^ zmM5OC;{&y|<{V|v=cZHP`kLUY;9a|0mpob7Yec6d%~eOrBg9aMUf*-xgQq*;&O z*AYBA{4`N?Ua#Grke$9RJT)Sm?hDFYCUr9U(LTTShtxjymzTF=gP{90xuHENkpB^C zvi}4QV=v6%BK|?59zV#+B-|*&{NdYRIn;SjgN8#ey$|zw#m8hDr$V2+5kA95WL;$c zPnR5C7euc2I0@5 zvlH2SKEUP8<3{nt=VitA37&y`uXt1tW@YqjB1P4#tkjL?(8Dx!Y)D4FMne-OUVVB< zpe?!^}{vOsTq_}V=uyqxxz_!sTb${0z{H4c!A z@f6h5-v)%Jn(K$^=fJ{`i8qrp@d^MZ;JwXvZ8$6kA_S$f20H|C6NUFhn7wMK?lzC4k zfU7@_!!MtLmqSVyMuu7BuzHtBIb3EXqxyjcJNh#pVHMarEfTA+b%dZz8eu)B#=f<( z@X+MIxi#>!wQN1%x39+laJ%1#N!iV?Wb>mne_ltKeuObWLiN`Gz6<=NsjOyH(_f=f zv*t>C*k2Td^1viJEAnquo(A1H5@%zk-soh$Asfcw_~&OsXY#D9lSch{lr++QBcD{4dfbncu4ZU{U+T&^>fb&kJU2jw0s}jov`dB!Zp#p_Nmap3(K64^ zZedpz$);EA_=}q3W5DBPL#Rlpi}{D>a9euZlY;TqX4FJxr}sbvpa`2e8g(l6oAU41 zuctbyY#5_|uU!9LU;YP+E$kAf9~Wk^yJ!5lcibN#RjO_X9EEADXXvB{UzkW2e%l@o zw_n4T^qYy!idXCGC?X2)yQg&u=QWAk2;l{M6hcYvc<8(y4X1Nw*TB4<#L!a6+?4g7 zu5@K|DzXZMx~pDfWfJWl`<>L46 zi`TjM@t>7$4Tk^EH6rh`1J`noH3OWn=_ca^dGfHrC;%DR8 z7yE?@=NA+v(o7}@IPD7x@R+ZQX$O^1k`-KeFBguURCcA7;rlXS9r?5Vn7Qmyesx-^ zA5h@u`RkRCsLQ@XfILkUB)^#w3xa_ZAYQr@AQkF@2m{>3diPgt+9%fYaQw4g0Wp4p zBwjs0Y2>{~@ueKG=~kx}oavlQokHR6Kn<4VT(Sr4OL1LT&b5R{BK@8)F=|#f()SRk z67BbPt;x^t`quPQpBA!-byIe3igo|ypCbW80%UrI<}vc5?Kuy%mnz@+dOClRpRdfA zEc5wQDk$}f=#=A-QWXv8st>?w+IRZ<8DC~a#m?#LpP&^+L%__3PG6;cIM~N^l&kcQ z1iyCduS?y&_#d3qt<%uFpxbm#1Vw?!6#--55H2oHSO-(l1gc{p0!N_-<7K{w`&6gw zkm@eFp%v=&ekNb2(4=IyH4qJykO_lD3b(f%lP!6gj$zMx!^Q-l1HQyjpM3H+fj*|1 zPQetYSa-nY)RZ=wH4pQNVcgfz7jbEIWQvfPv8zi^J6kJH0o>bE3~SH39 zVb_%XdHXg?Z0{qRe9(k>ZIIWb)e*+mt=9x944cV%^6bs_B6-t&mEh4jhkFsPj~{|Yrw>B@!JCN> z%UD%(Y|Q(>1#l|>Y@+a~$FHm8i*Yr|Jnahs!X@uI6U8%sG-n01^Gg^~(pD#qMGf`S zvLldN^GzTh!{R?YZzMPzZ+A(R{hxnqL&sCe^!L5mO50(qET&)7f6?qh$|#-9-IJG_bwcug!lLY-WKSMR4pN^AyW*(o-j57x3FNjQw}s(T{$3rE*KEwRFfr zdB(+lcBN5Xp)8QLR5`a6H7Y~8nPx1riFfz}@hjPPu2g??pKo|2)*JLuw;wQq9=;&re(e`a? zn8_&a=W~a$fm+PRsvcphdJ>nm!=9E?JG8kzsb!ijqdigwPYjMRA&MIMiPPT^UlEb? zxcV>@PNBK@)y*|dlu*4I_#3 zAAeLOaZis6{sXftlCtuXPxER^4>pZn?TN01ggJbeR6|tO>mZ0fgJyr&HgF!H16w z+~~67WYfo^a4d*vz2#HK+=*G0_6OKLJrM@v`=dkg7F#-!ikbo1om2~r_G)JCOy;Lc zz`1rRH+FOVS+)-XS}T`M4j2(ohO1UrgrW!70iu!c5G@7HmX{eht^a!|V@hx||A867 z2os32sf2RpgU|OF3+;?NNwPkPE|XgetuL$fA*&$>VqZ$np zZ&K5g<+R90QkR&$#52)PX3xog%W~J_>?Z9086R^@8H@(;ANPKeW-WVfwwJ#&2;osZ zR4vAf6G`od;?j5ZWKQPz+_TUZX6`;wei!(s@lWM>5d9ZkkI%n{%z#@pp&CLlwU52g z@?!!ulg}GuH6NL=uz3hyw2nP}`eshzJwL^l*^{S>c{VNoq1hKmCL7EBc*KL2S9^x8 zQmBrDvaz|m)Z<|+uS=OUabA%_jLo~j6@x7-FOFnSqyCf&s8o4Lb zqDLx)PA)7m)6&~VL{7;$Ff}6i(Jb(MHcJIc_THUzARFb=ozy9Ff-fq(Pf^htA?5Vy zy-El7s+*IUOwKXqd1(N!oweJLzs{VJ&gW$bM@Ulm&XrNL&LAuko@6b<+LZv$zKu?T z@$^*!6E*u5ngZ~qPKMiG) zxVe;OKLg@KM-H&$?^^&rDdy?0cX{~zTGF3w?>;d3Jjijhv5-sbh0-qbM#2f-+*i5J={ z)UsI`bD7WUJF{joyUpU2?j#hrZ`^v>y38!=`*KOZ2WKQkekne4OHl5V8<4&!*}mIE z1=bLb;5w?#1d~W5A4e>IfN`F)>~wfAI=FMk#{=fqc1|7uzAm6+_na-+zkT$#a^_A@ zCpcW8d|8W7KG*ubfpk*$w$xgWa&4$86NfK z&u~I8AvA5}Xj3uH2WJFsjSEedH1h7%mI4&^fWK^b9$`%LeqIjXy7+@70P9a{r5P#1 z5p(9)n1&#MQ|RCtUx)5@g38RIh{ky^w>u7sm*F>AxFryIWiaf)c(3vjEbFaxBQLDm zmQKcn5*j0H=r*njhpqBdmJZyaA)+2i82>DCwK~Jn+T#6}${A>mb@LuHBm7{18F*?xN%V#KIrxo<=GL^5r>eC4X$oLqfm$ z?PvyBxBDpeZEm*!E zi%T@lN2pyM7dwRkbjtYnjO>qzhi@jmQcD9$1gmWvh9Pi*!%Eke?(w~=xA!+{^F55= zjbL^jxP67OT*;hT@lo4d0=<*2*rvma^4KiCaMuU>K+?-)Nxbk{>Y+BuyPCc2LkQ*^ zrclk!&E2^39cnMqF`$b1bwxlFmiGIRAfh_JiQ#mq*@`g6H$BztV62>v7_^`B{P6vb z0bdKiMY5As$)t7%a~WjUP1m8IR3+C?gSwa?GH9n)-@O{LCLf84-s>=&h|dUb$vP28 zR~AVxhrjfjhS1COqJh-@0`1Nx$h!Dk=JzX}*1XE#50XP&hWTCfDXpzF&x&MS_YGZ{ zpw%|EuL4_U-v3l;kJe)26M}pC^O;&gNNC2Wa8djN1qINNsx{ADtoVEvPMZH#vh`=6Fry-hupy|$2r<^i_1zr<*mA(H{J0i0HVXUOqsB6-u%xf& znzsGX?M2RWYJ9e*DoU zhHaYzh&wLp`E-X);PYY%ziaS7Pnth_T@$hSWvcysu#Z3XgP6eg)ZZQjho#T@fn{B0 zaAh3)Y)dUN%oPd1JLu`o8R|wZTh}#_kruSHw8E)=U*47cO06} z@bo|vybBEMcjXPj@9rw^7j9p8YnPQpm(Tru4(v|_BX_?%dj=hqEUjc891OfzenoWF zhw|RJe>kx7tIS@cBQz8D?PD%1zf3lqv!RXl#Ry+VE%egZ%wBe;?VIzd;q z48%5Cp4j8lF1UmmU6`LmI%>~60E_ zYlE$cuS(73g{7U}4^ioQ>>nXON%e<5*>8W{-lX%S7#+NTlk?VTU}R;6^S*(<nLwi+oTGtG;kn6c&RUSLKU^nR3AzdsJ5@`>xA{f zGDIi4t17C;K#}hc(|Q}YWI#U@ESS>%Fa$66wv89#JC3h3`yfXty zAo~%$yTjCUU-HPZ?T^WS8bmM$ATWD2$zYCdjt7$Z1^>uvi z5O9|Xo(WJ>#s}#YI#y~QtkEYl_jzbXzR#>^s!>?Xx7Tc5pWZi5lXfwh>eP29)q5aw z&r+^Zbv8%ctTCRL8PfBGj_+eHLGnqUyxRhu*UCIM6n zD0?L=_Fxj-26nFPJ+59qFKsDcEBdX?@?qG96jn--o9}piF8pKy|pH+D;>?@yM@9Vkv%wP%d`=jw+h`u49 z72dGTjnLk&4C=B^vKi@Xvj(@he%zK=YGW|mhNq-7x*VfEh+4-HjeVVX$Bs7MtV7>k zXh8S1iwn8KZdlS5o&9}^X9weo!uozK{*BcRClH;tau)uGXyVJe@8OgvP!8lPhJl%` z-mUMy8sgh{mfs1lhtJPbyhz;rLeIzP2U}bC68BXM>~n@3!o5B&wWvqiPd|Y(#B`aj z<}*khWv4%$qEtOku8lz59L~gN+LZtX>d!a}r*zpvs}q#aTKS+!ce@-x+_dfe)#GXX zH3Va!3M$94LeJkHeA20$;8ib%IFQRa%ODgQ0m}(!LdvJlPK}ipKA=OlfOa5!VIiur zO!D?K3A@5BI7Nyy>Es@9K1AXSqsh=_pQNv74_U^^e0%43e5-EaI_S7SUr8XJi7OwL z$duCyqX&~)NsmTu55+(+q6ITWro)YvbGZp1J9=CNS8LK-M78AhaP}pLe{lCxH>Nj> zZmIqJLKc5No=> z-le;|apj+p4Hw^b$f#QCpKt(JGVoNRPdhqp3e!`~3Y;E~FG*Pk+h}2QFfR z@W(pW&yT*1bdEM8ZJmsEB+)$BhYBZJ`20Lo_Qm;R=SK8f@Lg}A#LbT=nPF)0!^Jy_ zePdb)OzIi^KH0z6oUexEkXdksL*t4CGbtc+1i*BAiTfn zt6Ts+#yF<2Qt`d1*Ts{Gpw@KFMQulZ#DJD z4-{wE!Cg(0lRir8$b8uQ0+SbqimcTM>Lm157B5LynwL#HFF2x%yx zI{LtS$@4b6rWchn`A@TFk1I9BVb(stL7WbD1UlQ&ad!8=ki$)3@mKfgoE?XUc1ISp zln4Fy5~P0U1;#9@`{BNY#f5kR(*}Gi>1M>=P0-8Z31`gglRSKw5%!Ze?p510=S)Y z<93-IGT+emgkE(!e8Y*@7h(zaW!KtaSt>EQ{h}P-M&FHqk>~eZJo6F7xwyV>*s#jj zBjcQm>y?tN-rV4n$7Fupp~=*qn#Dm%O|)7 zv}j6qH{_A}OY5!s>{H#Y<(8SA@x7W&0<8-gfa7!r*vRk8_sc4?Auxw?6kFGG@jXQ5 z9l?!{sxfn%L#tD4r;3`PTvbRBAG5yo@QaouaE%cQ2V&pXwXZd<-eJA7^?AvfNs=A5 z=kHl@#OG91RB0xXBP|WNN_EVrOc6u9C^8oCt;HtTL(u0lG)mX?{Y;#YV3}w+tiWhm z+K=o^dO9bN)-FM;%dsuUmdI#|T-3Go85La>OwUy7BItjETh5*;20WT;$T(RD47C3` zr>zpldrAO!dR^ULWvHz}ws4)%8iR60szhr2O3r(LgOz}GSh=xxy@M@48Xd4@9*GhU zP}*Se&!ao%<$*<+87J-EiI1&sd_)fiu4NHttOV`*62Y6MCclqjolHw}j-tek%oFx?Uk@{>qT0I*5$pF>p9mT1qGgpq#?yb@Ynp`8=usM|ad|XsnsDsl zdVsv#-2oJ-`nvir^eWe08dbvL!}$y>Kde3Oh9F|Ko_d#9Z8_jm*l;pFQ}Wy85z?xjI?ddb#Z0<_D zpLs2^x)5r>Ve5rY+zZNvQCcOFk*>`77wRrKBHeT8jx5rrah!hSa}L4QWnRq`Yygso z^*AiY*4%N^dO%YU`po#x2SFJ8@_wF_J-o~b*^jQEkf4Qrzz^Bw@#M^oR-^9$u9 z!P(bFheacO1?~DfP*Bu$Uqxr*F=e=a{00Gb*qcBDbvS?)G6ZanJ`?#YHowa!$LyZP z-H{Hz_vBM@dLw^C4gvK;h%&bv^~~+Y92qB8O@i;DM743m%wM@r0KJpkWQ4S_&Kj!> z7i#%J=|77gP)gp_FD9_yC426zLbG%TS4KtfY~P_2OK|QvNiw%~w-*ndUJw}!`60uf zb=U&g#X7sM>lA(3DiRTgj#gML8&_bvAG!l|b*zuFTI|>B|HnyoB2lHGwp8F@55(@(R5%5J}AJ|5;**n{b(O_QX$ z%h`C$I=Eo@UZq+7&v3uY*s4xze{EuOcrae^E6h5z2AV=Q2;I2&ZTLX?{JHG+E6D>c z3&?$XWO|D@?48boM;sAvn)Gu1Jcy?s*i`_VAyS{fi*k+%C~R+f6gWqtobGDLWxLM; zt>>3g%I(9em(%Cnuq3f*y-V8ZhfQp{$`edMCH1j;zTv{>us7e;0)sm=1 ze986S6=gWV$ZE8k#6K<%4*q+f0LZyXh!5TaR00oURA-PUW`-Em&XH!K;XL*+X*)cm z!C59z1zR``b$}bd3&WxZjV6D;oS<_*P!q^}xJ>igLWq{{*&Vw5Z}zy4UYJb{0?-^t zV+Z;{PkT{nl^W7vKx@U%`SpNAwb5W`ydsTv%MeGHM0q2(b!7SaUCp}a*~+I~mZX=i zpYbF0! zkm;4J^}+WZIX1nLr9nHZ?FJvjXHHK7XMc~9Tp^Ev8e zS@=Ay=scBGoOcgz&tm|wP(vTwlji;@#QZwW`xPoKNuoq7m-P@vA{>a`Zx$d;_U<^j zAoy>Y`PP4Gh&NRZ6!T|wT{t_PPVwfZds+v1alyT@u$=f5HUFR~2%q!(?A0dwtI9rq z-m!6#pOB~lOC>(Q`Q=n_97*0_60SWiKQ_vUO!UrY(X84G{?g%l1mHEk?mGkJsF%vG z&-w}e7t0ZRG2OCsdnQA6KERME%p<1Um794_jn|?-7{`|_gQwHsf)InMe^*rk>y_A!g6Yp2|x3jbZ1xbz?g1U-}Rj;cFf zxeDw`GzeT5jNxify0EeY0kjMxNg9fX(oU)V)lg%^J-I zMGFp5*XHP&f7a4xNOU+~etZro)0ai{;l%O$KFTpP?v3e4T@>IadA<%y^s>*LaCNoI z-FhwSPPvhuUQCZx{j?$e9NvQ}WuS}@^3S(?Ku0zETGtjm@!KRN5U(-9<=GB79FVw6ApQ-_CVfy)~kI^I5OAVKv{b znY*2XZ+YpA+3MT3O_--EcY!PuN_Ih2(;`-#t9U{8(d%%>>2YgF!fo`4$G5~pX|=Od1A>G=kvlIq<=adSLfc^uAI$_ zAl)+8Lwt>s(vKyguAQ&&f%?c<2g~tr$kVgOlHrl3#C9A>LK5L4fKL&vlU~D&haLeZ zo9`z*=GyJ3t$LK0I9X{vgS(6!CV%}*FDpcrnca^2&H`U=RLyV*0`Y|?M@}brk|%$T`%?_? z-+A1GeDnOypWN^TSa9sYs^$yfZEf7r=>Zr%b39LzJ^!^~z_r^0#~~RG-kt~HtIr`X zgn#!;6+h!Cx4N!-iRLhh7eQktd<%tJPyGF@q}(Il@oW33xcYrQX=$r9TOGCi>DjkJ zAS>Z2#mn{Dp_Z3Yb@jNX^>u%!kLfuW^mt3kq_{K1M>uvCG4;%Yj$kEL`?rOIP}<$- z+02>BQ@iYoQOdd3?X>JMZn zn9ckI1B;X9a3_>0q<8+iUHxAG#FEcigZd6f^`Smo(fsnBh^**!IEPBMeJ4*yZ-m>y z4eVk1LHro6b}o|zP11A*3$LVNEb^zxB7=T7Sb|;<6dW_|S?lLcXcj%`xd6<^KB;~& zU}-wPS85NZ*JppefA1@Gj(A?lt&BhNz(1D%hpS+I&b=257Il__n#`>C^Wy--_K1^v zu=e2+ijZbxx6zr4GSXjbD+gbQ%T%K7g{U+laP&tnexz?}jdWJM#_{nb=FIG#c_8sm zE}5CacVp3^-Ni|Hv@N|~_`%^8=6Bmf%!BP67O}d&DtCHeFPav@LTiDWmKJ(i$)4 z<)f-Cd;WZRNg?xC%O^81HsRflCwCM95=){pH-zU3xxv@?p4<<80ks*!Qhv&f7{i0m zhH+pF>+F|M=C|t7UfV~!;?WE9yqd$Ex(DWK7Ruu%k;EwDnIm1WP;b&FuK8ZH?Sk4L z2xUhCIybnmMYUdCS>50!avPn;S=FX)BqW%Qz;YXSaWW9Y@IKP9<|CiaeiM83yQ}|F zplT|dxntc+Q&vhwI{-}^0DJj8{ltl^`Z&_b88EBk^*Avnx@)Fcm8+-_%0Ya5S&H@F z{R)sHZjN_(iMrpS@MMhG&chDgorB{$8~1*sg-Z{I<}M!B+Ht%)Oobg2-hdl-vfc%E zu$p>)pOZIi3%o5!%2CB;az0~BKuVp?h_8WYip`=t9A)FW@>%}a9T55AS=xtb92rPV zp=P6wtUq1~VbDLu35u~0`aW}vh{8qm_=UsqUiWKwba67o?S1^JTYAosfj1a*4bYQ< zFLN;UN>vL!jRV8v?_u)Wda4%T95%ni@u54W&2TNiN4sFDouQz!LBY-jMungqY}|O; zs9bl3yrX4A%i77Ueohej_jrE4>dF$suEN}B3~SJ-k zrM-UUm&*CG0124z_hY?aT147X*MJq|=Wq?fWx71d%^=iM*SnCg7BA6Vt$~5t^*VTw zFlv-HAb6?d0QYt$CTukN-cnzeerPimP#_aQ03z?eXVCXP)UI%mruqEOLi$-$@4K7b zTUF;4DO><;nWXwD$E)YF)cdvZ_m+QeUp4Iw;euo3XvZG+T=336S;s56fgV$4HiH~6BGzX zv_wv~vme25<4++Yz^Ac}yt=399jy(9vN+O0rwCvxp;-Ka=PAP;6mwvpe`Hsj!i6Hl0DMPUAl{$@}IJUbP>BpA(?*UW@Ko& z6iK0S(c7mLGq@*mGNGFS@!)w?L@YDBN4S=70mAQzwjR}=fb{aigP`9`F>GDBu*>~U zI%k!Y$QK7uV#Dd<{iohKRU@<`v*MV@w>Tcepo$#uN^98rK~!|@d@e>j&ZhbR>23n zc9F_A^CG_K5w9|kTnlsIdTH07HYWBpU44T4N`ivw5DMjy+53@SNP=U-$6!KCjUVnA z8)eZ*ZFDTYh1n9s1mijDI(krzrr~#n^GIcHXC?6vJ~kGjo!nIM|LpJX#?b7s6L>0) z9pO46yVyta?(j$P!Y;Q8zaHx(Fwx?s&Z-_g{K&T}<|2Qo7OO5-IIq?2JIzV&@pzud zB(CgE#?gY?4@y~1)uf9#{%WKOl;PFK(O`P*?)iT)M6zgt zhCA&U+*b-MZldqpEjc}>+5h8+zyH83;_G7+kKPa~m_U_%wvxf|csPvtaCaehTlK>E z^h%`bntEdTy9fNj?LEMsESSgev#uw7ztBVTqOL!?{XH`==isSrJ&p2Kx*to1j#Uqf zq#t7SF{pgS#ZZa z4!6T&`kE0NB{3`5^los^Cn1Iq{;dj6JLm8|qJRxNN2dflyMue6^>?#HjE|NS@P1kt zk(@ggs(YBdFCbg)j8dQ|$kxRWzr-U{_QAiakMJ-QQTgJ81YzPe)>As$J-lb^>cO<6 zvvb>#MkN=)KDZywY^8^fB1epJPL{J+YaJUC(=jRIxo)IGjVOZ&{O3O0(x-5+ouoQJ z{1%xrq|UzjepBZM$?4kdNXD1663t1Rgnh?!I)h0sGlUl172>MML}6tBhDddS z$W`A{+lbH79nhY2nx;dYeFxO~f6dP6;-xP_hL}E8A-dD^x|IYoJI{lmHkwP4?U|eM z=Pa8%8I9YCqzI*orO#Mi;5JwRSq4k_TI`*yaAbcS)uJf+ODafsB%>lZh;L*NkRYJ&^}VPbqi^4?gcjkP z9oC+!^X6as#bW)HF2GH`LrjRQCHeC6Q@OM^?A=hw?a$r=^w!dB*ykY&^_;zaFxbNK z3T>A^7|hb$v~M6>>mf+(Wri@4Ii&2fW5-g>KbuBvVVBAEKeCKCSWH~@=gShIoRwd( zLxS@=;S-0L4zG0*Xp(6Y$eejCT|!XUy93~d_>iLm_{`~(csKg#cs4Q)UAi>#o2z(!)}}DoMa%-4Lao}C^LUsR{bZsd{D)Ep3fC=P)Wh!>PIb3 zQpsJWX8;7Zu*^Ic6fQhz<3sjLCf2^KPI--w#<45qygWf#sy+qFE2f{(8n2lqm8nq# zXa>ItC+f5fo1@x_YqWp5QmN2~f%DhpFlvEjGFzHIpJgoWK}gPNVz@l@Z=wEp=Kf3` zo_$X1v$bx6!T;vXS;PC$s;#OTD?989^!LzZYf=psA}}|Lg?5(<@K?lT=l=AfAM3T7 z)iSI#?|Fl5nA6)#uU(0C^};sQtcqr&D1E@V2MwDPd%fJ_x{PP}SstF_1H~*FD}dbH z8ulFo$D4!EtWa!jrSUu)aIv;Iq^KKwM<4O3)~+{V^gMk1TFi$60hfBs_ac*oMzFQ$ zeSWk$I0~+S^F4hIHvjO>;S%i|9m+Hc29;o~apa|t6^kznm+a^v4zF~6j(sl*gT#-X zuw$Bdsb%8u`v^o(_@pO$`1;Q~fCz$AB}hbHvvr=6#VU{Gu^#SOAoZ~BtLyILVQ|vE zdpSYgyw|X&E0`ab7vs}-WJar#KyIiOq{dR&;v1EFu3U~F`WGWv-%Ccp4ZTL^x#_6C zK0DsFZgvNrO8x6={Q}zYc&rtr8^xw^HzIpLZ=BdoQ{OCW4>ev5HgD7xpqD=l8%|Y_4^a3zscUCV+#e9Ow=u*lvzK-iJ8Dh*9TRGa$`dOEY=%};F7+P1C=*j zczR!E0hl_Cm!3y-40#=9kkLs8w4EC9g4q`K;U0zKPr$D=dA%J8?`#i{01?l_HB|t^ z1$}Z8E?;0n6VTVUx~+-rlhMGI4C=M%X9BFj`+-i!>nBlvq=D2kv$QS53M~5x)krSM zaqREdJqV19t7E!}zi)L4h1lTM%DJ%~FMH(UlQCoW;7_7&DwD-t8p-?6^w1~vF{18s zZejYd)bur~fEP4=;Am#I5L2JSc%z=pw>doz?vUX%VU$cz+k51rvr=rQ_SW3mE23OJ z3EwK|jtA=@s`)*>k#-8xKSPP|L!3GhSEzDn6Wfc@d;M9^3#QZB;?x7vm%8&@%6j}@ zN|1m?U#0Z^aCpD*Ae1cmq19r+>|}c-p6C`E+8t4lT^x^JrQXu5dTF2m@wP5&3!T;? zqe-=19rtiE0E+M?1Q>i#nrB}<_Y`H57-I%)U9O^j3{JQC#=b$-*`vWF#Q0SlNV4NL z!+TSk_X-Q(`{!7|S&+Y%>I?_eC_V%3O+L?4Q=Zf|PVCRcI-Jo5J^Uv4bPDu~FxFFZ zJHg+V)r9Q&RV-^#fsDp{G(!M^{Mz?q0d`FR#z^+4}zHbB&XE}?N@+!2hLk(V@5JHtiO;8`f6|OAy zTG0LWctYDw5}4wDCMz^@jCMD0y@#9fhrzhvn6QZrIqm`m2l?KjPnk$RXw&{`xTlox zI6)RMs=&&EW{Bk2($r&d50^d}c$nUTl;K(=EU$QY7GG*AmhW53LC)(QsHq-cTRsuv zU9DRs|M4uXl6?jVWe&5aiaN~dz8XD9kx~4k2sY?NtYY|cv7a?NX5(*rylw3NAOMh$ z)j|k$XLw$J=+@tqDY>7w@+Kdz3`#Z>WB;D)sW$=Yg&ynrv(5L{q$Hjg&e!+Z9Y-BQ zMm&8%u-KZ;;FR}W0xTPgpNUq}bD#5LKf(5L49efndP~T507QPNhA|!l+|h<98WDLW z94q&Xa9=L^47$JfTo#(zwVrb_soq?vPp-Z<<>C>9hO!H+OsDl)W#7WNBu1bCh@nzv z?udbgSa~mcNY;v%DlQV#@GV_FHR8I<6$cmJrg5<#X!Mv0V*(kQ0y+bQXA4t9>>0Gs^whB()*a8tOOY3AJr}3kHUDeh~cr(CmRv zp-*t%eC#_%f-8xk;(mN=_v+Wd$kU^!dB0&$U*x-@t-jRF&v^enwmL#Rog&(GJE3T1!fx@yD204b35@(`Y?!V{SKU~ z#__kvY#=A<_WNY4`=EPd@p5j&H7rkJV`DoD-o}0j#Z~w%568{lr$&KslJ9@v_yq4= ztKG9A?x_i`Po&+;XdKmx5z>E?gm8+w7)29%6>x*$TtO%)L2cddi|D?4Wk-pbE@BuR zR>MO7j!(;RIMLS@9rpZ1*ePI}`&>QmgwBeTo-YEL8!=oTZCno|w;Zg+Q!219FJ!9>jf(%P2B3=l9OaDkHu zGBOW-ex;hEYwYVURgxL-esTyNa`x`3RXjM4u}W_jttZ9vjEF4C{O?)mq7-#_8Xoil zM7wN`sI-efBrlTw72L|Zl$50mv5X6@i}&NRMCi?j9;u!pccB%3z5t@7Ir*TcYaV=uWWzW`b0j|5=uS*T!}D{_ zo%VO>(&je?#lB)2oT>jcQsRbolAA@4^*Y8UuA^vv-gks+a9FXr$gZ+z)x%EShs|5> zXQ{>5Nz)o}Q`+o>(kK4>J_XkG$|*JzBqmujP#{ith0nKTRk$Oa792&PYDCa-&iWLa zGx`2Z?mMM+-S1p{U^aPhp9#e$)z>`EUG5Id`@3#bSup`cwLo=-v65G z(*|PpF^<&5EO)go*!X!5r-K)KU5GQC4+e0fJJplV&IuR5@$0TkM`p?3>;(>i`C;;q znvJKY1c%>#QWSJ0U*>OK&*%64E95V258m(i+P)&>!4mH8y8W8Z&e(2;GgMnuhP5_r3ys0KY>>g%}wMpqa-exFH$w=Nq}67Ec6 zo=d;NC;?mth^?{K^mom<@cs6w;`giKMhQitJwDF>wQSSzczG&My6$5%!3}vK&IH&( zI9jAHHadi=RA|&m5j#Jh+A#*K!0$SACTV)5{2!!Xpo0N}9t0~~Jw6HGNxt2Wxx&LP zUCSr9w~$r35ArZaIJ(Sn@Z9gsa!L>4+>jh01dC`=wwR8R!(GS2cPlRPYKC}Fy9h-G zUsFF9HbAzRxv4cFGJzmnfJg4j%j&ze$~oX(6bFIs=W_syyCPABJ^w^|aiK!f@4)C~ zp@uE@KG-&OsT|&^#I>8q`D16fmOOfZu4aj6oLiolu(CIt{+Y@&*|8vB{xu=xmEZQ$ zdTdD}`E?jvvDZ$h&%3ia@0G2!%nNxGUn=~JLx@cr66|f}?#$wT1@}M>9#F;nv+#8C z5Tz|rq@djd&tdiLZ+7ja2kof^9diix%cxj)f8&a!`<(-;V#miIQ5*ZGfF#apq12MK z-{SYyU+LvYGoKk+) z`^wi>eUWm#EC+gDuDU}{v}F2AH**~7Z(e=HJQ>ZTWT?4{0h&+u zC!MAG<@Y{tdUdt*F0_pY+?>yK(N5YBafh20=(;J?44GmX7b=+018&G-f#Qe38xqnq zzOH?ut)%JS%H@|mo?^5jr%@C7dPt%XiJn+(-&?NHnMdL`t-tT}P@>g{@;5~GhDq;v zP}LYHeP<5Lh(W!19w_?=&2i}q$}!Z4XwgEL=k9BItM{Tp(I{mM2D(QCfUJ5H&pEytoKVTF&vB* zOX_OksQX>}>~Jk!0YPJj<~LTj4*29;*n(sMji9-Rkai=g+jn1TKt99Yi7+!u&Ed4da*U`Y#ZhN(U-MOqNpHAShxD8{;QQ`o%lvk^dG#=g*Y912F#4o*H!9=ES z`s-zY!?v5-)Ys5hH1K&YG=p;cphc)dZ<)eUzJe*%fe?*OGCzw(N04&5^#!ACeE{Xf zqfN(bkLBvJJN||j7>|oY6X4U$uQND7^yO=p8ntRjNtoVlE%`D;AO_~RO-8=OhJ0=e zw44v(S*xD?7U!A^BaSwPvH7u;dg&OZ-)1M7Jfz`K2k%X*?XSYlTyEwoX)&iI%I>;x zgD9kPaSff^NL>f^abP_N)C@P1?GQpQ@qtr4wm##)BxU$LCG+IC-Vyi1h*<%m|2a2T zoCNpdr0_8C(}El+Ul4nr{fyR7F6T>rGIzYx%c_>9w#(qR&Y(2Za#&q_5v3qGYu69= zIlOzK6PvLOIeGi+OQ*$Lypyei=g?9i1TnSt%(rcBKH*#629LWECV2;>O^-!P9+~pu8LGA$Iz~tqf`t{(_3z;OU1Sv!(t75=f}#N1)9cQ~7hm zH)y)O*d_tey88j&W+EhmoNM=cTBO_F2eD?zsN9S^FmEbk=~;~T^_MxY^?VX`wG_`n zUgZ3b*5t(BAMK=A2oqN9EsA>A{}4*dNXk(ZBHrlN#h!8-8!2gPhLL9(XEr=G|h{6~h1@ zIQIFDxp#XgyFLjCX9PhDQGX0mC3m{W!!Q^>e9aOZ6wD=Mi>_$yYM&S#XD4p zr<~UbnI!%Bo$PI|I=}s<69kfW7j-8|TE!=4TkCEy4>xOj`|SM$ESCUDJf8Gq0E!cu zxNQ8x5hf4)7xwtAKTGP(*TPt_{oj+b+0qK=BxD{jI`7Jq@^cx-M0Ro)1)+V!`w^uf zfIi~A?-cM9#PNtdY{nn^-dHI+WsNMr`2tStMLD6_fUhuR0-IzkT71#L1uKYV90?XA z_>%FPMKJ?H{qf1nzPo*Yz9{IgRU^j;@v%<|>FM?STB1aR?-fM-uCwBE*pTOC zmH6?LB)kTEm7SMV2!73_4aAG^6dVs_1mzyQt6t9()QRgty2$F=vK34y+uSvNEdodN ze0M7K@2E@WUX0NQliJAYdM6ocFhYU-;*%{Z+^C_>B;{A_BK~q!nnv!O62ZOhyyE0s zTFfxB80eXnFMs>wl0uuAu|FG-2@wuRke5Ea9}^;cSy_q!jgV0uZpx{L za8HuF4DLe5zlq)a=|IE>Ud~*+fvSg!XT||*N<70zd#K{|mrCiWu%4ekt^1ow_IuW5 zFhzUu1=_#MYqHQxMM5Jsg~NV(y$NGfP3pP?nK|+4m$@xNv?eEL7T^R*V@@Dw{rl@Ih}3*S7=B4+e@Gq~2vr;R71_$+&U(G&Asi2C8aOr>*% zw=hT4@gR>!0aGWlBvAI}*2vOxQ9}j{VFB1*eb3TfDrDe6U=l1iQ7UU5=Y6xGGRM_V zBXR%gTp?upP%Xc8_zI66C;<6-R8sv{&TII| zECy;iFfStdmIo*E%baS;B4*;(>rg-4zrOe)H!vTz=rPln?!Fxr!mUcqPY!H+JUN9- z8}K0YmweyA#2989B=tGyN+52E2gO{j7oY7pw$!rt4>q`a`6ldKH%K#Dk z?OfNM^Pkx5g1k1qAOX)QJ+(Afu{PuU+3ETUaTEtRjyp zP!7F+?M}DXBp;gei@}KkT|Opo<-TC9?RvZ43k8x^0Nov*GYJezzcnZ)DDZ9hy1@-- z`?}a2k4K2?N3*z(uldd`!3*|#<9pt;=&X7_vv?P>)A{4m&M>>Bha6 zPf+)L9Xh-x_!OUMETH8d{xu|!HbVOCTHy2?xMynBj^f!1ZgJjBVFiBpRh6j9j!?yC zaeWvHW^uod*Br2@HL2-ZZf^F4qY;6I1-;n$fOqwm*Hi2wYh*9qj9d6#dXG3d>AsTS zz(KxNFs?a&ifD^W>4W)9RcF~@=oJgemR9vcS6~@;y&7Kr)6{1ngG{D$&Bf*Wc-qVI1DE zhU1wjHZgg^!l)TER%rAP;VrH3A%4gu(c0J zcrR`5r{_J3qXxXW^Mr|?{rq@Ke0oA_f^W0^od$!>THRfuiKD#(KKf$b-?`VBolN%Y zeJC1J!n+d->UUNKvFxhXnyLvZeCqPbKkZe4ht-$S_G}0)Pr(p{nDCUJ@S*@nLnjpb zd%vE)azyCT6SJre^f2}SLK`}W6xtY*`l~uLc@Eo0h5N6kMCRpa?%M$?8jMHJk9z&vRwbJ(hVu^tS4PkPhb3 zcz?&^^$c=)o%_@ZpDL?Xk3{IJZ@bfM>Tx?b3n9e5B#^B&(4gin42>c~1FOr5j)2l_ zK7HXZQn_@S#Viu*YTNywxdub(9hAjedD#3t3=O1CN0%g%{O_%QUAI&B2n@=gnrr5s zaOysuRe|N`5S$i4I^|XHL}F~F%O@%VDAXaflbE>j+|{q&OLTF>Y}j|Z4#+4?>GqVM zBNZ)UeapR9_CcQI0kW*&o(ANyb%-BF-lrz_HY$72e~8iM2znqJ8fLuIW{3i{9SANZ z<*TcD>MMyaX>|M;(^m|DA6K8FQH&<8DE}3O^RxI^U=-HI@H}I>!g@#_7)hVf?f}sz zJo*N0=Chvw>7DE&+_*gR{dQ&E;di6oGR)*odPQpMabmSb_v!1Y!Tb|E888-ll(n@$ zxw#H7WJ7m87V7<3&`#<3{Po^yV_JZYS?;+bTwlCfDNRrpc>374U?^mZttTH7`)+Y1 zd+Iz@-aT)BM>7&2TL_F-SUgi(!sKRSa4&Q)&zJrl5$kkVpo%xyH}|7HZq=(Qn-{Yq zC^aE5oquzgSH|C*@S{)-8);O25AsU2DLAhl2qMuULbTuc;b-sLA5s;5F>ZvbNrnH0 z7C-bL+}_sLTN~OzcSniS+4>rsjB{B^5nMw>1LG&|Iw1B0eeAFyM&{pYVyPcJ{q0df z(QKDvcTyYQ6Q(8zA7F4@qczY)*X(P8f>gMo^Aup)c)A|48D7uT_=(^F?U`Vv?X)_+ zwIg>%4H|i(4)mOr0&%)>lJPPK5ix9h+Y*G=XPVlx3z>>yO}*X7aYSJOqqb(D`x9(x zI!?trwznOCW1_yIw~)rhnGWdhmh;X@{gm<4)Z@-5BT7V{uPwV250*);7b1}`n6XBf zr`>Y$NB(~-;{QoL4~?EpY<{$_RkI+0$KU3Iy$LI5(pRKMa+ub9SxL;%zPRt>{p%a* zMi>yl=3RFY^3eX~k1yN*y7hEyyFDZ-4Vb^f+hXS64I~OF{C_?Tm|`#znVyGP0mmyT zNd;IBCOkeQLzof_+Pc=hMmMNOJDtkO-zy8zs&VWNqZeY4h};So(Zn@>KB7wTK=@e#7zr1OoQ~D!yW=FY07y* zU=n@AjP=nJMfsQr#h>5kl05S-X86qN*naX2V<`ezf3|EprRf^~Y9A1Z3?*6n=n5}3 z^b-+S4N-8S?vsPd$b)SNqo-LRN)kSedXqDZ_(ZTVY1>6+u5Q}}$*@_N6zlg}4V6hk z`&r&I&`&Sl)HI?XPL!Aie>Me+s@iPo^NwTnn7tkpX}RyaQz+gN`iQe(;rb!cMdl(4 z>OEs05|0i2Gb4;U@||{!QZ4-+82{*Cx~g_wUMrnH9wjnlV&P{_?>5#P;77WqyMv8& z5fGq1ha1nSkBdULUH?|i*F|{`H(}h-$a0yCAbTESt0J6RhcGq%oTd`yiPpqE+P?lu zzjmbeVK{!#8P~~Y>*O!jz~;@5i}`D(#gO1r`>d5@<8U(9u|a#-x8xJ~WFqD`yt3yZ zx!RfU!)W96x^ThN2ugFlJ}^iU{h4r`A)mZCQR^cx?nsK-SLX9Ex4rb@(W$>YuE0cI z*vDs7M%ux^xh{20l-_k!rX|%zQ}mh@ady3`tZp2`m-eXNZ&Arq|GP32PXS zM-vpaTFEV{E$?BYoEIUIDTI;fV^6L3+e^Q^xbm*O$>u1&&l|K4F+xe+;kI@dRMZi+ zR#M>KC&2mQb`2^=G=rs;eWx_mc%@wjTi4BxGRvWu6GW7s@Eo2`&1qkT%O<5-@IL&n zIz0V>{CWK63TvzPyO1g!IjUtlrhVKDoHCK>l-cKp}kaDdf6XHYi)H@e( zT??vu0&xdqJvT>EIEzxZ7hkMBN3r|oXT(6jM?pm?+06YJ47qGQ`mg8l_5?46q1=Vz zv=#ZSadX>fzUx@MO6CZe#2@uwfn6RE=Uh2R#P|EVAF}H&2tD1#mGNVyM~Ws~ZktsOU| zbqS7QZw$Aw$Csj*k^6JPQL7lDq(?|47|iVFa~c=*pa1WL-I`f=FM;_3u5VS_?e~FH ze1dTmT_YtIl{7h|2$6UcNMZa$a_vdk$E1IFQ^=Vij#;syc^r2*lV})sMjQ31S-~ z%phG*_uQ^~(GGtiejwiDM;opId${;iG9%Ra+bfI)jwfoFj$f{EBT9p~@^Q;|9;lqj zU+?$X6|lvT)T2DJc}ThOyG{D3Be!jYR@Bb`js`p&z3M+?tS)5_0@$?u*)SY}uBQk! z6MXRcZchMCT=K)S5i5WP?#4}x$&~$fd1X1t#OpVx{OgFWn0?P}KQ5(u-dBzv2`|eZ zL#Hg9r?otN?yEw^!|BR?q1jz(%xvBX`cynB zBS&M)b3N8Z)o^*;ui|m>x`I+9V_#11j`1NsRQGD%#f6|h?>&0MTh5H_%>|ouXVx+_ ze?rXuAazk+qW60!(1`2QOSZo#2Fr5A5wV~Uf}3JhLHYOxcu3kiS253;Cs+rE@KgiR zowFl&ff-sZv%?*Q)X0^FhNDK5qN6>3*x0ZFdEY99-x0(M1~U>N9`%#TwZc8-z3uh} zNXB=&R2|2Hic-=SZk+ym+_UHPAaWRUOE~Dd-b{l@@T;Y=S18xlS|z=UIWP9JQ*Ie4 zwcR!uob5j__;`8<9Yna}?7go=e1l?N@A+3Bm%sFeE>s$M-3gaq*|$)mt3i24Pa`;E z7wE;g^U2e{&lQ?)l-7VMiK3Yha`j4|Q+TQJ81IfLfz_4e*Fikm-@rmV3h2|fq0eUt z^+jkuHKDdV9xtHm<;*?**5CjSGS~*B-mC4><7Mg|1$mW_qoIW&ecmjV5ZSIOqoIl| zIvi~Je4|0`a@g>2Y8?@szu&8-?RT~vHacosi|%CHWjuW(gI{v-8S7iK2R%%uVyfC% z{DBRY0&VO9wk1NAGvsJ5g~=%=Y|yd7K9&#s{WisT11m6UAKdBdC2N%9IjK4o+|>u1 zu#ZDxKI6fS?|X4n-}7D7ejwGok`?lyJ!}7v-syE=CAhPHpv+B9qu_&~3-zx=CVOD~ zSB8J~O$RSowr#&Os*#uzdk9Aq;02W7RJt!;J|b4$c^`$(LyW@Lva~i)elNAW)X5iT z1`!%_qHcn@SBsz|xwN{&eU!{z?uR|9NuSMSttT_QJ(AFi$!j}IMbdnaZphs$6G=H_ zVvZb`4Zitjj>7Z!=8xY!Hcd|)cZ50Io`$F|tSP4i!H*1G*5TVdPJ@dNLN1nbtL*P; z#;H#e+b#b!1B@Wb9{}TC@jC$sE3n0kjv|RTjdjc_Q4w*H)?tj(?bAPN7Qq`bc5kx) zrSUps*iE2Ji1+uveEIwu#vuCL>H2dB@jcLgn`}3~Xd&u&(cjlk^V2Q376Ry4MpKDm zJc@oi3PlH!xeGhD!5BoPB`J)H-{H&tLUSDl@*nu?h9+JCvkMF$JsH{q#hwQsYq$Xc zz0J~33_m;f~W^)X3Z0j&6qwuKJ3?jk^ z$u`0IFOEt32Vwut`E0zmOpTmPBm@0Q53&CvMlCD=sHG@#>mGIW!dQ1lF2U4l-qe?m zckBzo*tQ+Wd)b{Hr{?V0Mvw9P$ydCMQ5jbXqW;Mm%_?fg@t@R@XMR zxkFO*>^RrwefME)c?7x()7CM3$@`TxuAt@H*iJnRg|J)YoW(J|lbV|uqyIOvhM%${ z2Yr~cettP0lx+E{$Vf_f3gD4zq~;Cd3BWn#&PVXqw+H*A;hWCnET>G$&^>`yC9y_t9S+iBPEg{O}PUA|QJ$h~Cc?G5|JBP%=q0>5gqz@H|@In;u36f*Aawh1cs;LKjbK?(;es2_ODk+#|A!I879kLVREu z;4%HBIY(}coTos+aprp;q{=qfRQE(r9_1AL_ng*7mX=8kf*PucI$({8ckwVEb)NP2 z_)XG_$h=GXI$nQ+r)O82+M~*!jSl$=LSeHH9|H`-ABT(|WVv6VSC;xoDF8rn@ zQ8+k-BZgB*0K1#Qf{L5)!|0U zdIPgs43wEBmpXrBeEbOW#Cj-Gs;`Q+1)wVWw$qa~pSL;8Ea4_mm&D~s-Lki^_*~m% znbDM;wn>5Eos`u^m;U-YokOulY%3K z{-CTANJe;oi4U38uiD1jL0J-s>w4p(e{rqf!mB1_S#>Em28{Q}b<+{~hZ z0`BL1HH5j9=t!EE?9%X82~!StD5Ho0?gT(&j$KLOm2gCUQ3CuO`WRs+L=5Mk9~7xk zY|RNz1ET=;8VkT2oL(LrK`^Y9T9y@~+fLeo4cG(shEwJfH>a#tQu52z`^Qd8kYk9^Rw9~A zss)4M$-6=Wu7yM#m;Ph*Fo}{Rcna_LYVNqzUII5S*ZPi{G-8O<+$ii=%KZ|YHGf}K zmpL55RW(}GJvC(egUcd|JLZG83b9-Z=JfbYENu1si#l263~(h8i_a1gyFY;$hI7Zj znXqsdW4pu{O-(=hW7wqkoA2$hG;zor$UhT!&5gIqyjF}@-9K;3$o3WDLgweC+*`M} z;933HD)wEK=7dcMOu0S-1@_`*w@8l1(a83(Y$Ahc_KnxB=5s%lg{mhp{q{QiJAfbW zXO0!9CqLH=giNwsHEItDo-QJd6=h!6{zh<2MzUr{$*(q(`u}0nX!?Dn1hIF|7f_wy zS5Ux!K%v=AVv%ya88cpPG%y=zIPj$V1NwD6;-Nb{$WCL5XQH6r7tJ9tgo~dhwo~%m zqU#Iw8tdsjoTa?g4aa@Fc0N9qd3e&CuUenn7A}$dC7zqo%*R$aP`>Q;iFt?Z6PNlz zixQ>vI@!HF)C&Eo5egDO<0xN)kSrNbR>0w(-V%%2@UQyoGp>wY7q4kVN-p{PG zxD;^?Z*)|MiEq3LV^RiGfz>hki!s#}cHYnn$!bY_8FoHW zBJZok^==W-!H?gkh_Pt*PpiT`{*-|?;FP}lX~RUFDUblUWGAvw^EbHP=Y-Io-3S}? zyBP+_<%8zUN3Y>)n)o(Q{rco(7rc45mrjLLtS|T&Im+WvxbMe1IaeJ&Jj0hAc%mj; z4rs47#LIizUwE9wQ6J=a63WxF@s?9X2i9iOuX0~BJKv<>3kzsW^}Z#ib^Of1%ky~4 z2qv>)j$*MkS@oWa@SW!w$V1IxKVQW~WwWUlq=@Qqv!r~{kfR&SZKymJTkuc6;E=1@ z)E&bq{$=NYS>|RO;2YbzgO~FA)Ve$qXF0AuxxA-rm|1LeaD-;i^#||>-cztspTB#qozDK{@A-REEQDXCp?nDh5 zMvobRm676cb-q>RzP_UFprfw|qEdYbw!c!mGP6m!Ehi`=R&NqvIgq#wf9D@^Te%i8 zLB63($UlrKe{ANx-6BB>A2Coo!1jFW6BRqhqkZnvgNOWF?yg4NtwC*KLE&3=QiNOm zu+&%-1E!OvM`MuPbRAX-r$oM;-N0dh4jkC`o()m;N3UG+F%pKFM?v(*b@no=!TbTL||wmRra$ zoR3rGTv;mBL+~&8?4mnPe^Jk0pUYovzCu&*xrf?m{#AY?K>MkD==+n{SH&trn&=2_ z1PpKRMO!@8AVP?I!1wEn21fw*SFTE=X#2WtD*eJavAz&Y<+yK;Jze;oB{nPt@_{%P>TSC{xZ=;BvJT>uY4#UA zfiCoX{HX6eOX+^O;(?W)`~G^S5&Y~MKdF7+n)2)B_?s4@O`4W~IiBl#D!%(BU-kO~ zy*;PnpNwnc=y!C+7(#-{l=b zXAge?TB$;F+;4DC+li9!$DN?NDb`%18Y0aUU$7tL?~Pv`m^Ukq*vFY>=ft^O3Zl_c zIU7PmSl1+!)OUns;;~=wlX$;ovFKGWIyG)EfJ~+pcNt;w<}n63lg7BClw@h@5L#Hyc+dB&hrC_=HS+d!`2LJp z9rye9XHNG6fmpfZ-+_B%a{ucYs%604+*E!5v5TV>(~h%&K$Bk!ihIiLYJhG^6E~FN z5qpm-Zv)5NN$4>=(2irb=zgUW=@7Sux&3+S{qY1fI{%R7FMc0Q%K91lACmv{D3eH? zrh!k{{jO^P_pg4|D}qIBchAeO5BDee#er~*N&53JiH(CE!}a@t;U%VyF{3x=gxHq~ z=4>Pn*%c1LcIZ%sZpELL?=5`bCYCdJRbAi_>^)l4y0YweT#hC7JT=)y_6pJ2Ns@&3 zW3_FVDB2D!^AGDbvLxNds#a*3Uwzq9)e}2Zt}^L z;j6s4>@68ir-Kl^@JfwX5m=!wP)SN{lD<%TIETa;c8pBQvb@-=1YQ*u5Uls9?hiCr z%<2cIvAAiX7z9`CY$VS^8~#=c@_C)gViP(KYvUOV-u6zULf= zvts2Ih}DtO1)@lQ=q|G>T({pqJY&FUe~;9JzY1sWQw9;hT9vh1!nFHdDfaS~@yy7C zD5pXuWa7${>bawsnx;PcPkH(tQNWQMgQfc_)li51flQw#*C_;VTLAB3zD_WF|NK*@ zvVqfe3qDVcL8r^}*Ju;HaT#nGsRP>_jvN#dbPvBrfqouyMDICnOg^V+dc+#cH{={2 zP?m^4%-#IbtM`!)nrDr?v_d)WBQNGTCOX2n^DVxEmymHIsa-l{aEXo}ou5b@bYV?0 z>+97Ztx9(LIN#0lfU){N+WauzZdC*x$b$=Al>6|j_^kpO<>$_&>slAr;`M1Nyp_Fn zcYFZsjsKs^aU6S^C{ZF~`aSvyCO1uj*NX&<_;+})OS>M90MRY4UoD9iT!-;a6~cZz zeh*uXiS;%6t?#<1Xdt-)X?IH*Edq|-P=9@~r#Bc(Z0<8lyQm%8Kymf-s^3v17o^)H z<>iOwPugx1&KFkb>h-={v-Km4_fkRkI;ikjI>0Jy!OAF8j!S&<&oOW<_+6`NBqM*s z=ZOa%x%<`JPoosD_&Z_)GE;GaXlN}zFf(z@QD9%g;7 zBO{lSwz6d8r}Q{0BsW%`nglMX z_qeK8E3k_1Gnc*=9AP`Y(KyZIC9(#I!}QN#2q%H#a3T}di}+U>Lmy>O#jT3Pqn_BY z=u}&px-vk6wEvdEKVES4YTob0u=9SYTnIE;pE9(|h~eTNq#Ktrl4fpr?^mL*!2b`@ zcfr2k%zGIb@N`H5=-~tO{vAM1Vpy*9b;?i5YSuUbynW@jz_|6#7x*j&eL%c~xOVFC;bdB4i^ z&AHsR{B$N5ipNsKBj11_?iV){-|TgwnV=d+Npdm&3{~>Lr)kZr7fhYE4-YKYsiJM3>u#SJHK*&07A^zltYts!4}qM$tgfCA0*#&!+sN8R@zO-V|&*RAw@Hf!$n zz{sQ%5UJuJ6(|!n(y?jgJWs^Dbau3OvqWu9#urVxwr-A_{e{o{cbeDVtghG#I<=;K z2Tk_zhgE(LR$3%Y6O3h_MrtSSj%IK`Xnq$wvPxw4-gt^BjD9qqcAa2r1cZS4y352A zUytxkGX0Y^{g^fx>AT7$jz7RNb-+(X#`66nJ9dSKhi7rN@lr3fm2(&mAL{qOLRwYs zaqHt1^IbI3M@gGemBwZZn-hw9P_ek#SGX%tbWkY0BM3#svNn_1@vQ5K$SJQY;350N z9!K>%mm~4&zNe!({Z+p39%QjfZ6rhgD2mVN;_ii z4$~XnOjYA~H7@1WTmEG|+JCH+B66kscczw?sW}m+zK+%rEo%N^o8umXMp;hLr=FQc z9-@WwnC$oYVFPQB6oRitt0xwxu^Zrnvd0jIoBX`1qm&|oAF3ZdvwZJ=J*Y%AD?=%N zq1>-E_XDf*lH<$Qx3%0?w3lei_#Fa5+f(3uagM_9PzkUGahS-spOQ_q*!{K9m?xeu zi`gsg#}n7L;ZzIbmgB*wAFsk$B05C|z-ZYXTk;=oO;1p6m+~Rnh`V00@A6q0cCatn z^p!1Mt@B}yr}uVlKI;-M!H-dXAJewICT^l*ho;hI2AvN4`AU<-?KGCU+V9WZVxHlH zw7_Qh7Q5l;IunT*$@}F$?dyi@7La^8?zOKK(c(%%(E!={F_+WI5#IfT8w|f)RYz#- z)M`V%h-p7xk41m^YkdRBKJOk-DL)MBToxvrXfp8;sUwx${XN9vH_DFTbSe=b9H`}o zD|PXTUg;4mcyJ3O>_4RGLGDd4X)IY8DQ@(3TJ{H|lww8{uBv<_;JCbmBuin0`{;e* z&Qt{0+hHIc4ipAyla>wp%6r9;{E|Nn_bbcRNG&+|vZ3?gexW{;=AI6JmAerlog(J2 zg9Dma240(!;9!KB_`KL$@6)z&Sh#^!MFr8(gv8aItm9{mdP!X}sO8>dNBU@|?%{ zOJ=(7{oNSTnb${*c)ft%>95avzCb^UDw+P}32Y6#E-E}a+TwDCqOW)ejLya|RJIbC zPI$_%L+ZDM6p|K~;O$(D;aRS?Sk7c!1XTPEHCso_Ac0-kH%7W-zX7AUGDNUw(I?)<1=URMw#C?g^7==Tbr;SM6c_`ViL9f zT`u&GM?Wg5#HL|=DK7Tg!BzA2hjBniS0Vbs#tk{*XmnJi|`>)(&=iXzlO^fQ9m}=)%fso=tT4&wp1%Z@t9bwr8MS6 z+CsdCUjl6hzR47QHaP6%;|bC8enu5|Kk?g+zVh z%1eo7F@$B>$PC#}o@Tje{ak#aqJu}gecIG!@*ir2`)9N)d)tPiDmY8*D-_RJH0Sa+ z>6-9YtsCUw(1$e5VblZ8UGlLAkKMXFZz^At-r-JnA!a+8^RmA&`=*_3_7EQWW@XY9 zgj01Gh28X4#)L?Ggn2Of;aBCaA9T6+db6LIis=kv(NEq7*b-+xxhr*pP1#Z$P);d& zs*iLV&23Ratn$Ec1-$ETz>#AVwz;Pjw2n9jZEB&?{@J82c%z5-fd zY2A>c0NVH2EPP_hA-RNM2i1Kw{OUdC)p|rvSbB4_b7!C{I3T#&+ z>Be)52~4-s9~g|RIlHa-FoZFtf-x6MWX~hJHs9ANpU)?-K=cEYQVI-uTI+@vgO=&W z3wCclq4Al2n6c;h*7;ka+lR>ff>e8%=5N0>R9(1znmge-HXV5-rxDZLKFOX1bp0C}XOwJZTibJknA>jw(3Ovo|JG;;gfe|>%;*3KPRf%=VU2PXd$%AW^=`&vwzNeD5GM96@S zh|10LYrplbb>`CG<{3-_x!d!F%UWXrZ)P=gs6= z)kL>v^F4a8AqSG_H!iePmP{z?cP3R%w-fV%o?k>N1skbSLgN>rcW6D-I@yOgut;nDI^JED#>n#8BO;V$gU# z7nbPs&93E^x61<+6#I@^QQ+tA-;DhHo`_N!CvsKaHE?o0a{l=_;qC1GI$QdAjjfBB zye*I)va45#RJC$}_~ZqhK5JD4cGuY6Mvj6@`gBl#aAQMuFACC-c=3Q8z%{W6LgFPX zrJSVl(pxqmP4cvW^NGU{W4_+BeFa*}B^j)tY3q~U&`EZ?wXSma_cPe(Sw8jAc=m3u z?|bM%FS1^r27i&cgu84)pMalih1-u!$ z>V3p`tY8jm`gRka!|_9ndtNj_PT^x?|LYy!E@>XA`KvhD16FIf zeVbtE0G7BQcOG(X$3%FK&pgi$pIkzIyy;hqyJga7dQvCLZ2mz{{ZT{l0*J_vlT$8j zcX-^i%lFlBYL}!YsCFB+qwD@0gPKm4dHsz%g>2A=IC_vcU?3YX`nMZGt>$Z~fU-fi z#qV`}teMQRB$Oea2rGVie!Qf7_@ns0(%t>ux}xa~V^}BTvH7mXvZ90+irv9V;8V`W z1Li2$0PL_JQ~yZNT=}N}^^M&lnN8VaHRcMMfDkh}H-}gxiFm*F&nCzqW88dDkx9m71v5xX4f_Qv(k9>gs((5vH@NIFBFPVD|DX3& zw0+?_ihVqiWaBMyQD3}IpOz(Wj1-{-h?+~Xi=cq!CYPcG82jvn9;_+x%vz|}*JGOP(Fojn_s0cl2ceuWm zmgs;LK<)sZH3jC}fx-5gisbWGm&rWCT6tvX1-8SC&ThveYAf)n#M~FZ(y`3+kTGZq zK!qG((f}obNz)rr<}$?hOB_}ISGdoofKsVQEefs`_f-G_kklLt#DWrT0}M##;O{Pl z{nPw<<-*gWdxh+1K9t+wNfN^UsRL0j2y+~Yt$Up87E;dY(4C@bn z05x5z2y09>U*JCM^HQK499)Nb4*|$NJqUM-y7miVv4GL|AYjSHPyR8divV)f3wfVAHF<<4mUB>4f#PLCK`{{OMYic9U9U}uA0R|Ic|CRD7N$OV)`g}Mu{u&YD(8ZF zT+rl0lzUIVOvQ=k_s+O42}%O!8eyb_SlpCPkf25zpq3?aOkqFNbl-Q>Sl9EGkmA#z zvB-mufF5kcTFdk430tCxEdHSw;>d**x{`CKhw9vVpdC^+xDQt!3%+51X4&Jpb#~>% z1?8Nc_GXW05}ROuvBi-NUCa2VM(`d+EXspoeZx!H znYN4Ja1MBlW)tQ~=&gAzDwzcuKSz-r6TMVH-17_H;Re-BIXqjD5HGiGMHz!^f>N0zK{AD?#9d(zi)s9WU_U(cGvDk_HE&8ZAKaO90WkWfV zp(hC0Wmy0h^z5$^RE|^9hy1if=H&wI%dh-=dFX@s$mn1tAy9tYZA!Y2D4}`mR62;xarB?HIpN7$AA;!y^u9UrDgVw&JQTeGkr~2I` z*Lr2WTPIG*KXzTOC{!m;GwHpNrK|+GX{9iU)#Eu@P;mhbiA*joC>lPsDC4RX{_{*8wfXkDv`~XbOeK!+F4tcHg;}@TKXAZby4%BYN-+W@>nx3S$#V4T zc*fQ}WAP}X_hGaubsGeuh< z4}q{*Q!LHnBeqN)H zmKNk3EEwhvtU?%eP!7&!h`#ub^FEg-?69-)OT*%Dq0sXz(5TZxwaN=wFup?$yCN+b zktvNxtsI8PCi(CRu126D9(3eDt4Fec6&=gGVKi=_$j)Df&LeZ z`BC1%VkQN@_wCcgy5zLU4*8fEP!`jqf<=8^R*A<591(H6A0R`;gcY|OpMSF75ODws z>}o__HQeW3)_Y-qVw6M3rb)kF7l}#MH#BVp=Br?#{dNaJnu7?jJzRxtLl3JK-!5Z- zsp%CEFZn1WVdoy#oM$*Ua^t@gr8xA%laac!`qGXFhPzph7KxLIR**knlbF*(NVxzd zlZI#YVyoKEh=(q8e}9?}=|jA$L^WDYaa-**9q#v|sBp@eu7D{rIRGSWtrV_byVM=66J*lE{Z@EvqdXq&63_3`X&eRPN+Gv28h{I&fv&^LO<+Z< zqX@-}T+eWzwHlmxl->rp2x}Ou|>bsh2$R@B`sQRd6Rmwor)0bH+E=A z3xaj~T;FP|^X_p7?U>4qZeGG52QojPJ1*I$<-@dy9PLZVzKGx}`(5`a-|(!%{!gy` zJGI%Lq{E@{@dq3No?cG2LKJN7BSYBd@hTPSLAJc`xl>mo)gIt3gSP0?Gkxp*5rYV? zdgagY(;j4pX-KIsj1P!=Eq{U1XhYAZ-v8vu9cM@4F^r873kpHxzaprv9Y6ebFC-0y zG-vnuHF8+WN@vSYr!GYu$U}h^Cksm_c|>&;z6L-Bq}cw>-yo~s)!n8OQk~z#27=#o zv_9f?g{sf{6D9)3Z(lcMbjq5qs=K|MIT*e+H9F$@rQ8h(G#TQM(&rx5`dTbc;cZDD z61^Q_x3G`s%$SF)dprxNzkfwkExCK^hy3e>=A*OhlL)r(LVq5r@k@R6<^p<$PtqK; zAiNqhg5?^jjhU(#GZ7?iQB9EqL#)s3`KoYga2OfH{RvgHkZM-BWZ!9+6wT`O z5fcz;TK0V5=VL~Fg7h;x4tAHV>ISpYwT?v%w!Ox$X@qzY3E}HR4cBX9; z`~I%K6Ubnqef~fRb3PvpkQH2e%QBR&1Ap&9mg=TrD+!4XE#z&BmM&WJ+h!Kn&0zwo z{Ct8u;_v3FwxWSHeDK4QJkk?Ie7LhyzTfG7!PZ@@8-)E%+b=18!Y0JU_qljwHA;|W zwWgO16pSQoD1yk~@ldEu&0ZzsTx^cI4`y=1j!ZrtXkp&(ZgXz$^mRd;roF;7#Ld;d zLM!jX3Ez%4y1v`Z8E|({x9{`s(Tk#l_)eCNn7!KVMiI<~dE6}!>BuELPW7fqb`Rs>-P%2;O>tYz`@ zdOtPp%ufJ#Q~)f7!ren_Jlth@vF=;9d)ZsKF>!jsG}q9QYD3o$efp2{G{BSUiroY< zK-7wA?5E^-&^%UoIW;5SZ+Q+qHT^_N2^%#AAyXdViZTP_$fH}BjZ8MFX7ydBXE$^E zw8GasH%3QK(n(tFk%WQyC{O@wt!8~Jz~6l%Q~-bV_w~WZAO0uU3Kbi#d-x-FhnPYo z?h)rYq}nwt4iCF-mH9<+%i5!hW)BX8-+ZB8CcFH&eRqu&L37vJl^Th?Ll*Qpx29FG zaYo7$dFOC9FSjHb%Ckgshc7?{)GdB|`~0Hb%GG&9Y}mSt;PtZ9JBV?7uB{jKi_tRdc4Q@H&B?PmUS4w~9NKzjC6mw+S`+ zwJoSO>8CwYM{s@rifFH789s`z+owuJn|7^o+Ij#Asu<4(3Dc|%ezkBC^!?f7gqNE4 z(N(^WI}-Y~$PXU}pgC**qm`=5%Te*21MP~zsY-nr~3Q}KRw zl)ybhDmgt#v6R~V{*%CE1ONIyo%aMyoi-#9*~YE#Y-pttGlzQ&U9oyH*xKQ*ut+HH zvHEY_h6cb4J~*Mm`wMkm2& z0C+q(aF237?C6{ydC5o@tGrHc2ERd&y;ol~S#+9(AZh&eU#BY_VM^@NzdIVYjDt6FsB=ghh~6}C}MV?pls{~??^k@>;N;EC0*2lF9+pWR*nE8%mz zXCM48>iYrCxX{!-icLf`ReLeu@ z@M${6pHXC%K`nuH1mx&-b~UbhP~bU#F2|SD#`~1-S8@-H>dDe}CWF0)Hr*eG6>)ks z;tkVz+DM8##F+j8M8*?F=83O@`ce*(B!8Z(6oeLQQtc+D0nc4P zrMi^oi~aOCIu8>agFrrkI+7$|LE_hr)G{RR*QSB4g#G7%4pW|}zw(J(C8gswpOXRm z-v^;2JjW8-1^+SNEUC*kPIwt$?d$)2Qa9U<3t>4q74yHeuzTE2T#<^ z)^-?)bNrpY`|UWVy!xmAV{`^YJD{6}mp)$^y2jjV&?k2*d4KH1BW%50*Y*MG`+Bkw zI=;vUX57a2Q$!X>dOE3BgCrjZ%Y#O-IV3EU>pa%j@UL3D>^n#0i?tY5Uz2Wcvk_0( z!@C`q<<;}|ljb_keO3Dk9R;~QmC+By7kCYH%2Ivq(20Z}@Y3ujJ%TI2v#9@r+FTv`+diWHW^jM)QAQ9QXE4|(Guh6ZC)Q&R1Z=wS8Zv-{N){0Dgx za)RHl1J5q%v;6uwoZXu7gv0V_A?TW*WQkILm+kj+?|Pp=U(d~0j6rP{KP#!S5B|RU zA+PZiK&%%Hd#avZe$rFRU`3ERK2skDZIjpg;(88HQlwZl-fQtgaBWS&$r#_ereS7% zhfDGTm!;XQ(4i2$-1(N3ssOf{y_BzCN!9VXlvD+k7d4}K5>=k(d<9&g#|!plS@fE< zmNj$&WQ-P|2UQ(~LzI!`VIKJ3pUg-ZBbNSRcoaT*rk&qB*Zj!;&*; z!3j4~X@^9(9WvAVJ<+5d@XGGTp6>-vgB$e04?ZQ80=ch^OBBU9DghVX+*qW{q%kK{ z#RwOu^LUO0G03~{a`EafbbG`yW{SsSHibLwH zWXaVdN4MZcxiU^ty{Pg0cR9!a-)<+G2BYwsjUIDkq3DL8r0C`fQpRkX$|*cVSAKb` zBc62WeQu8wJixyu5F}wfJ_-6QM<j2{ovEafgfX6Z~op9l1X{@Tx1B)M%Y+7 zrz@IRVnWpEO!=zZExz*{Ex;Be?DvY!ihY?FA7Zc`*GcEL`*!7NRt@pnq8aT0waNJ4 zFK7ATQJ~=hhD*l2O1>~-s$D|#F*G%mMk-{9{yKTxg8&d{97YoxBI{gcN(n#W9c(?6 zFUH_{nKHb3{oo(6g6fBWhUVDPcYR4e{i6gzu5GN#7d71H8x+wQY$IOIF@_jpvrI3NIhHxDnRszR3ng#Vc3Hn#Yc}`o zGkG5Z-GRpQqnCvj+^16 z`=)=MkxgWl)7Lf}m9MDglgo$QC#mQYGL?qe9Qvq_Pu%+^?DtRdJ_ribpV&0^vKV>& zL1_0ab$8{dTJ{kUuV7-!XKesA$r6)VEe)DrXL?^^Vl(v82T&qb>fAoo`~^(~m6U|C z{7z4WxQckFAjbvq`!O7wjDEc}Te;~?czZJIA?bsn{2iX87Xoa@d~#C^-yGyoZ&LX= zNuVhmPkIs(Y(p*gr^xQwfbx9*4E%aP1}bmMv|!)+j1?f&p*mVj>F_jQp-;y{g)Ycx zTlM*l7AD;+-d}gT5+{(OBbquirx3k#&{WwMlmVi$4Iwk{abP(lg5SF6Moc}er`(Xy zsq1>9vsG*#^tWFYJdu<_KE_re6xh(Awp%=eczNMQN$z;3e&6u>rpNmXd?kjy7Fu`< z>N{ZgV-GEOf7Mrs3mvlEIvyrhBiKuvT9^2l&(9ZEl#0`>^H+^LK1}y$L&FRqd+!gj zJM|bmJ#Bs4*NhU@uV}$|EGf2cMOBzaiBZlzJ?^(PJSPz0%q+Fjr(1EB zWv}C7`E8iAGN1J0k2KK$W5pX~P5De!$Dh^2SCZ-wkC(Wz|C#CgRxuN`4;6g%w_cCp zcsJ^=Zai-fW1qM(%>q=a>|T5s{GyF&tB+o@({tSlIZ;Kq3N+yb)r7;tP^-)4`_JRk zI68NapZAv!)L=ffoHBQn$GLH|k<9KldFmwgc6&FOrDWOpoyuh^3C?RN+xfy6)A~vX^dL9mS?P zu`|61QT7Uy(X~teAYb2-{Ch^?gCW)-^>b~`cT)+4Y<1b}=k}Ing$wnB*xJN@cgs`D zFUvmWAo(6IsAL(9i>D$^0+k_ixj&Xb45lFa<#*Qmu{ujl`xPGKaX^1r<5AvYpV<>s znO6gJhb*?WF~|=RsRAFc2oeL?%RNmYPxuE#$iM5hYGyRlP?4qOe0{H=gk`#V9{Td3 z&?Mw$X(u>dHBit~sGe}U5RVq^gMX$!Tz|_deWjbeB-`1+oWCOAV1g8udf(&jMx9d> z`9hGpv#o%a=~cCy`yHuciaTnrAFyLmr#Qm$ddDZAtPh{v+q@Q`35|MpfRx%xC5y4T z{A~*dH>*4FVheX$q^Nb|JdMoB+wSiD3C|(m5?oc5Ea&;o3g#!|EuN*-EuBvN$CBwl zQ7<`Vo_bSxo6or< za1djn=Tz53sJG(SZX`clnATO3-VFw~YJLxovy>10`S4aoKAMW%n&!y^j%dxRlk^t) z^j5u@!hzsI__zIu&MbEBGMMuTnyfo2e>0=saMlZU;^>XgM9RnFnj>ECNW_@l17{|F zSLRE8*>f)G(F$QZq1%(gtTY3M*#K0MB)KOZqtxLF7BtJ zArz-)`(oW-CqVrUeEhd53djx0$zPsUp~64cTxci?m2(T6T?I|9Z$p4Vtz~blZW>cM zFN!+z?Q|xWi7)}JxW)Q~Ync_ta(7D2dUax&J1zGR*+d;j=ck``fBg;GS^Ed1bes6u zqW(*G_88L>*hUe5`UPgS{L<&k1XL(xg@I!iE_L)kVpnO@>;P>?Nq*>|!F_8`5sMQc zeo*zi1Mwu84j*rzm#Ij}m+odxdDoQ87mQvvckT~~4I=d#wd0k4_Z*C(JR=>dy&jpo z9wRsy0{ybs2b%owCzTjsP7C$Q8xQ^&8qgs(#cF@Qi^}Lz$k5caBEQ`)W+0x*K|OZQ zG@Uc%YvNPTXi&Ws z;J{CYo1+q+%1%a-P7Qc?*Fb!zuMC%@(v_3Q}% z9pWqws>k|quJwIYeTR=j>+|Sc=pT)56yp;$%6s@gFX;)r3X! zVW)mT;fB4h)Eg0feeJboC}FY&{knyGvUpW%Nay+ca@-1)8$|XrChPX$mR2mO^8!!r zjNO-uO1sN{~+2BPLub-Y{-sr+MEsGse-(%aOd%xG5L_s|9J%rU*cm_e8k#wMS( zJlWR(LEU4hQMX{_*6`I<`z4HzceIa*P_yju?bHs9BHg(kS?PE&sp9#wf7U$OCc2}6 z#}*vhO#qi&zPV}Nwk#c@))x5j0d<9A&X(%abM49F-7{ltAyAyHU2i6NV4u8<;-e1k z=^)3=HbgmO@{(M`b>*64gn~2p9fknr|Tv0892ygMH$VC&SN!#_o@K z&`Hc>4fPDXv5dY_7ugm9@QEXsq=}!zsyrCI+h1|ZeC0r?=<;q^h1VPeM zpT-|_eb0r`#W64~UG~~zi3)8CS#jHXM2wd^g?DQ4+tM}beH0?L`{agWG-~iV&@Q5$u;onpb2t9>Q#(y<#Tv2Te>Y`)i(e z1dC5nYMu+`z-Y=JcI#A$bS!4*jy#7TZ(3FH86Ky~x!TYWdXnd@EnZ2Z7=p%RU6bA@ zZy&Ilf7iqtNX{FVCPFn$js&;5*%aMV{#t5F_JmXp{q-KV!;6bvPJVtglmdtJS+BuY zebmOh=db+q?l-{-*}g3OBx-Ta?og=n6G^*NH%T|tuDKx(knR)iE`JuynA^8}O=9ql zsXbZ2cFTPK*{U2pOA_}|w3{^dx4b!W%seOQvV8^=(%~;R`*0YSQgNf@*syf| z&I2!R$u{)gN#t?zpy;D#ah5iJ2%)4jtn_7O$9W5XHAHup0g|yBZKiOjwGli2Whj01 zT190vhH^4d#wFf&q~Cty0_UUW4NBGmY?(2p(Hn#w=qCiSP{t(ezjz-M|FK>+z2C=v zSe$mBhBbG0X#Spc%R_iXlkHrRCZsCGO2Cg}U&gd*q`9+CH1r&NXcpaNBDvo|1Skn? z2sGxK-lg{+=HcXivh(ujCZAh7*{JB3Us)Ffg}$k2KnJn_X^4(_RzX`uO`$fhW*9=U z_c4Dmr_13hR`r$sne+r*puwoAPe|S6^5+~3Bs(8YL}&bst5sp)Rb=LMub7kDrpO;6(!Mlq-eI1--ljPXMel4%xPH4T=6bQe_k!+u`u!H$@OZJz%{h({h z3t952_=p=IjTA1IX(ncLyUz6LxR5(wb;18C04heL`$IHO<|J`9F5hGG8CZC#njv3% zvA)dq(bvU@cren?tYANwLh2hY{X?Mo2r{?Cb|47%Tf4z)FbB#aBf*pPvuMYDN$)#2i~(WJ^80$aebIVL9enX&%6jWK*ytPJugMGFal%N_vvzP_I7-@~9sSDO%O1CJ#ib8t z_?Y`C4mfR19;Bx6rFYa~oNCmEGdn2DaSdX!DC_*oIZuHCg|6!gb1DOup*)fU13<(+ zt_5p1F_UdUyKO4Lu--tPdjGV39%cK>BgEV(a&Cq0c7aq@!f;Aq@9$m;azQIoWP zTzq9P%+BPL@n*j8QM4B3E*%P05FfF>?09SH|#=1B$y@AF1N*-v`f^ zr}nS3cR4;@^yRx3{kXL~?_<2u8m&8k7ere$FY%>&;hihvt^f z7Lg7g03HGhZVl>rW$3M6k=d1tn6B>TkMNhuTA3 zuhn?FF2O4(gOWqU0R`*0Ci;^#B=@>HLUBmYPQ+NZN|Pv2*d58reJCjeflv8C4WYPw zRGW5Uju%5i1)6Z+%hECW>)8u{AcO-iGv5A;>b>ezRy>aSBncuR2i>*9q0tz8XEXg{CJ`@4I+WA?Ziv>lN>Gq>>? zJXF^z{kGD~cm6s(_qZMLwi(Onjvved!Mhzs3S`-P8KU5(0D>^uN5QE&cZ!KFH-i0+ zyVpcO&Ptb|;0?r=A3$l$g^Iv>royU3U_1HkALV6V&gb)wJq!)yt3aj;*V7iZ#bV%& zp0L)lua}Mp`hNX5+z|Lzi~#%TS01tx3Y~@PnyYfJLH@aqu6aZA^J;D#H?_PqIVt(1 zF8=lz**a-zXN`k)_e@;lxG5M+8dI6ym^&By?(X3|5^LF?8=#GUqVHE^mb4GrE8?O{ z9601{KL0ArL5P7}@uv!t>=edyBkkVLx%og8CR)eq`by{$#HFu$Muu7WY$I1D7X`4% z3&PDabK_2l7}pnCTC*`cLjyZar=jhX>_x2WeXJ^1@5>~c22cX5%+vjfa- zk_91OnmR(%?JS%rZ(CW56r5vcf~PtJ&jWwB55aFYy_3FwRA}@@ev0{aIBgSYzPY|) zqe>py>$^PimP#M<{L8DQzH0iT94_=eC#}d-_{0KTia7n6?s+^Hq?*ikEaPvMat#xN zgpj;QQi)XvUXEGFy+v&EG`;x307+=;#Ncox!9k{mtAZj>*4a(Kv~ceJ6fD2h+}(MA zOqiTKMB?D$im{d^k$l=0NcEdTn8UMK^|X{y*7g$~)Lv|gV4)^^Dm%;f#J)L20>!zI z#nVg0F(wLg=5C43&G|JFMFGwI-YP<-dhQ;mDEYi?1lHv5b@YEIBih}_>!ch$A|wJV ze(Ef5MPT!C{E+Ehwgb44ld_|8$Zx{{NjT#o$PjS@+AOu9D}5@WPE^V{wXeeEMYw{d z)-1BqovS@f>&M>jVsNp^SIeEZ2)a~Fka{I2w(~QoDoRqE*zL_Qce$93ozm2YLj9L`0KgfYL%rpz!NH9@$65EtSw@WX|iFl8MW?Ha0)I=LVUTp^rwt5k29pldHmAq?{Cpp zw72{T(L$i$O{y>He6-tqKfcR+O9zyP?#5`4UHKk)Zx9UkT}5b9=;@2j9qpZsvi_Al zc@4$R;u&a>@XI}M(D>Y(Z@V6|sBBFvIW}wXVZnBd+#itrPPfvo-Y?*P2p8Rs-eZX8?sFgP zYrZUqte#O;eQepPwoO}l%EQMhoY2ENn2<0TB;gN#pFUNcuq+Y%z^4qDsuiHA`gxvk z*l@3p9Ufw2$qrs7%h_=LsPxBcux&yW2_j%HyYln~`@y<8@(To0XpOj}e(=`Ny|d$d zTr1J=r0hF^M5RJ6Cr=SO=!+JLnm2nX-j3w7f!O(v8H&Rh*^H{vc}PCTGH$ech0oonUjZ0ny)0SJO<@g_wFVn4el_^aAa`m`mW%tfQRn<%5l z6>H)czIXTVL2asY+z69d71uv`0Yi-e{%bQofS+xRYVo zt*@j)-Gb%B)Axa96snrt@yqvV0gH%;(JzgGCfR+Q>~u^l55vBC zf|bQ%b61TWr>7J;7Zpcr??zFgSoIJ`VFYC`cB|9jpJe~UgP((mU!LL4&U zcCx8PiAR$jST;Tbe_YJ;vJUYti~jz{-RW~a#>KX9K{{ruMBZKR&_3<(^`*RgavI zm$w$VB;nZek%k1t6CBbbpMVNIO`LYzeF_yY-cR-U5~?>+=d-^4Wrc92xIVrTBB%Nb zR9WqNnki`ZyFbqMBytaT#?q|ZJ$C~V z41di9c`8Z_ciL@b70n;W0%D-VBb1cCzv*tIyE_{JNL84^+HK1GeZpImyWJvidrUwk zigVDZ-5&t~za(QZpN_lx!e?6!J+aK>QkO1|Q&Nw7Hc$Jj-^YufW&4&M zDv9w=#W#_E#fBFl#Qi;->4lH3Z3XJY3DdgoHX1s^hX(?$yLjeazp0^|$w>V+_|tQ^ z_{W|L_s=sW>QiHU(jHg*Wc+eJ_@uGdu)1}aV*0Lf7{j5hWWkDZS0QRnUz#6qC{O&A zn!!YS2LIur5RE(Eu)|x)4LN*6i@-rhdmT?I3k z)LiB>{leFMpmn2T!WVh8yXj{fduCW)uU_HWXq!de6N|FF2?@eh>TcY^lm9_h!+t#p zVK@F2i$I6`6mLMx$$IYTI#Ji*by9Pbi7QuZS+(t{roVj-XWXGvDE1hBMJmks>Xta{ z_jMp^=xEodi`TVT5%yQ?17;s@s8BhLkfq6Pm-mx=1LC_7Mgy@ABb%!rHp^!AKKDa^ zeMS76x^4u^MaQ$qWYa!pT35Wak?_U7RCBI@km#o=HS9cm%>Di#d?<3TC_{iW@`d-X zfl!5W;!n}h7TT@g!4X8zUs-Sc>g+S_ZQkTVLVSM0<5728upCm{+gDf^t5xO2Gp_ho zgnG2OvL7DQ3l!OpPT{8)gE~-7!)WmFeSNWXOuSx@m&XNmds&i+Lz~?_(BU>mmJ9KIT2t@kY;EsER}jZpSj1GZ^Cg zsyBZO;+x!A_8sn4@LPa^5UY)voUWpxx}bWJ*!ul&pB zB0Wc6Oe!#2>ie>>F!=5gtT0K??#M3|~W!o%ENS6&NU4 ziuVt3Y|T4yc-d`U)vs)QqJsVj^)QCoTM`?JL^Gb5lY&d$**&26z7AWgYq##KXB7y0 z0HIfPCwnO5vuBd|M33WN{H%eru1NXbv1g~#;l-NMrx{q~xoM~2eN^XS*{$#R-sHJr z=Zg+%Q7!w!Zs7)$kfImeo{q`78%~OGTHz){){ujQdbiSCNOuE^uS%s{CZE{YVWj<$ zTyhKLFN*@sEYxi8-Q)P!6-A+$fOpdfM<4p@`>$fsPp>Zf>jG!Z-*j-WKcT@8%O|gW zBbYdF&H|(A72@E$bW1&GLs_8PKAm35&oFu&s_hkjuWxXdHMCTWjm%$`OTIOcT3^vq zY}nskM1}9=f&BEjj)A7$1>KCH{Jm&CTUIeLLQk9lq0tTZB<`QZy|{4w$Rbha%y+K8 zwMUUyH0nv`-ws4DR2{>Fy34i&^u>?$)pT|PgY>?~#%P3Cc(=RiA1(YfkU}oHjt?5Y zGCu9xRJpoABX^#0$3eCdfZN|!Jmmz+j{R7sCnRFO=01~9hHwgN?vc5@kxXg{2-20m z|a+k6L|cF=~@o$ohFe{yHEb(+6Y9QD&ldpKU*9ganEY52%k z<=arz$!DcT*M!WS#7Hj-4Uf@tZ2^eVZ(m#-oOB)r#N$X@!r>*nd3c&~RKIOd>4^8k zxY2x3ox-b-9%BQ_Ty(F*&M&d_Mb;0r_dESP39w2ZTUmM5CZ$CBQgm>g7DbN$5seUv zgAusaSTKNAEcO09T+WI7FeC1Egpf=rAWfWz!D-~tb_e!D9GAQ8hBn;1z4wB7?FmT~ z3p~q!ZGGy<3%z}qDc|<9y1agNJK^ZtkA9Y%DXUO@oiBA%mvesB9{KhhRT_oa$4Img zHNeR_=2w$8cNfdrs0&0KQ!1D12g9BZ-~003`!ck0V~QYY5iMX6Ms1fB1aar~J<#Ze zM80%+#VhXRqJ7Wr^mP4mqHz@jAkNaEJhX+;J^bcptw^??tM8#Et9+z%sstsUZ9iAb zx7yDF_=O6v+qlm6_aF>sSGHxJ4UTSa_*e;PEz_}52*edCOEuQgS&B9lLRDd+@ z4g}F6CwzM4**;^Wf9KeJn+Pu;ep&G$!1sWEw87p)?v$CE3g|!7FMZ69d}vpjxTyVi zeIfnj?&j^v=fy$A{G@eNY97A(r#Hi^`3Q1rR>?8s zpZe~~C6^~8I!>Tdj8g?0d4Ja3WBkUw`P+#*kfyKB6qT?`m@u@Xz7mq3|6tov_+fl& zU$gCa%7D#sZ(M%;F|0l&0TY~zDEK^;-%BXdloWTm{b-iYaQq97B77x3@M;p4JAy*KREH9NdP?~@a!_u#vxcn9a> zQoj-F!lB-jA>XB-7-jtC5JlGSjItZ(Y(roh{=&xBL0)J{E*Y&7XF5_GW%&Vye?kWb zO~DSx269E7Ln`!ID^zI?yv$Ra`y(~4^dYV`>faLW0`%&yie0T?WZc8v%8mbdb4c5!cGVE6YlAEJvE>&npgJn1hHGbM1uE`1?Az>#8QtbEq6a*YjUwEB zM}rSE9P8F{2`hVL<$R~=eY@&Ptui5pF1Nz2bJ$`C4JIJoPRQzci&@b zgirr_9P~Z(#Sg(e^I}oBbf6l$yw=Na*#`~$92*nC5QU7=GOsQaqWiw zq{j{G>gX@SNIK)KX>c(_oaskWcj;AdBwa`5P77?t|J~3l8kzM00-5GkIiHcDjhf$Cxy*Om9&xtz3UxynP{x zT}j>{;d*K5_;#rAOL!;d`ZHQJ4PWpmgA>$yjTR2LFsOIqNNX^ zX~rlvh(+-XAGcUA@sI(Dkiv)6-T=ZqdqMLtI;@{R38_AtN?7UtI{h36dw>+hW5iBb@j5|6W8(!z>L}%{%ctL~EzYn3-*Knqf&T31%^4*+SF!zbG zCU3O;kseZa9E=JIL7k8H-Aq|pGSNBlE6T~9)8w7q9BXm$_Hj1b0e4b=WB6en6a9I% zP41;^awID0j0@0D9*W540l{H+< z$zpJ4G}|=&n6-SV!O$bV$azvarF=OXxaY5P8Qr7JNXOg&hxYt8$~_mYn)Pp>YcJc{ zJ&?tLQPCp&IcznJ7LucY*5;0X>o4ApWcRg91|X(3ZC=LL%* z%U(~5jH~p{u+H=9X^(XerkD#HXA@rF4+ecg_K=Op){YD9@g9z$RwN&&6?*lr+fARZ zMv2BZE_zn&#z?+_xz%iiP#*3;1L*$=m+)>V$3?J6wCohqP6-UYUg_lfs{{0B) z6*bQN`xEb>(P5mD+2T`nzv*`VDXh-%U1yi>fW63F>BLC60fmd*(iZP#s8s`VJ_sfiJ;o8bAu}>ZE!focj6=Y3vu=gh256q6*JB-)Uzq` z5v{CS_R^xpz#o_tPV)3XL=kTSQ4*==Z7gR48CZ-fM6vn?D87&2qBJUaZ=y-E?+;(b zn_7FyOJDOS{U95BkAC%!tZ~Pwc9uBGKE0^ijsDEs4Ou+=1}RQp>`jYRyBC~AwyGX& zWM79LfDBZA=?nd~0Y$DswSVSd!YS*Kn#%1ynex>Ixxf9^=N>;76uVFU8}@qv=Hk(p zF)s0+CWr<@wJ?DFVqScJS>nw3;}EnWD-5!@0`LRAmmSy*A8O9*vLS63T z(ux37>{s|J2vh|(D zx53CW55sKj;pq4|vBq$){Gk2+9=?4Sl z&u2cKp21*sN>W!+J8XwlGsb-^-sev%c#?`+;UH(op)h!;1x8NQN2hqQ5DFO&!X8RE z$bnLpx&*gOj{cf{E=?nla3!iJ-k1XJlW#+X7(op=;Udf=U~-Q8=U%u9hvuU&sS_bE zPmTKB$H)B%)w>80&N^HDjzh|a>p_ES@%3t!n$sU(eK8Z?++3>a1e2G53XTOV2xrf6 zW@zhfO?iNb>QXy0P7r)tG_Rg)v~4qK^5akwiEn>H^UvRJGyYb-IDuW^wMvqr!wfv_ zo-P8gx$lr!VBw&RDO21|Z~bWB4O#g=KKO&#kR+bGirW;w54{tBhmVoyTK-(T$d#D5 z`w3R#RRxYcJpp5ibCuoagYZ6v$Zp{`7?ar`dl0TSgvQ70mS&*II$I0;P5ZW98mtHY zCIWOOTbJY8l`OYd_E@w6-bTV!YI5Kn&;8VXVX>AR0WvE|@}(~`u9m1!KE+E}58EuE>D?~3!W6pd7yiB-cfV}3e5>%F8YTmS;(I+N{S^ENr-^f|I%4xq z%j1Q7(VqvMN$mId+6h5)C`Xg@_+NM$AO4@jmp}WcPpPbR7D*>g;QOxQYpZ*P84abs z?IMW=%NJ}-fuKDk#iq(eq&4y_Z#(~p&r-@~x79J43wYbzEzCpG35Iq2eH7vDKycFR zk1?&m95lOBcO`$V`Y7H<)8eX}M`0W7k&i~6C#^NxHSe$&c-`CgKL|sj9Usy~GFfFK zm#4Ho?l6&GX5;t$UQa$O<=ngq%R?{pL1CQHZ?lMZMOXY%);7tT!Y_3_+N_XnQxE?x zSabjK8Yb*s_~c)mtHwV?aV#zEsu}Ed+icWZwr%F+nNsdvuKlG z%BjcS#3`KyYkOV^NAxfH6aH2}@OY=w*QzuE!8kc^&Ph2VDd@?K6d`~w~uRJ zQKY3P-w&3UO}c}pRHXE_ebFKAbTMDQ43)}PQ%BMSJ5-PCL=QWBabUBQWxuV`)WUh zMxvJqp5Z5rxR%P>XZk+I##Orhp7Nj0{oQQ)>72(DTy_2O8Tycq-CNq*+I9sK>5()% zuMwA=bb9j*A5FBs9BeBd?6G(DsP6^d>nlC6Px#2|2+mZ!4leI2n$K;_w5$bmnt{zQ zq>D`ieZo*z)|S~uZNe;Q!BauGO%6GY_-(}tHS`3&QT>D^Bw9kidUfYJo zH}3+)*P}H{{{-Hd)ewTdzF!2Zh}H71g>?A7J4W6r3Nll9k_e?QA{9rQ~_LudxpPbVuttHh=bCqEs~vtN**P6zdY}m^i*afuWg^V-M4luHQGgrgHBV-+$a%Z6oZJD_#Vf1#)^Nb znq=SfV(!z-a+KeXD-J)3%J9kD6oKHnn%9M}Z_>$UEKT+or`hHonkQ0r+%Bc$90fLw z^5ovF@_D%k?)L!uQjLoPF2)0?QlRoaT-tqqkNjY#W@+KYa@Gx|4RSqbA2nVOz2!#L zhP{8F+&^avNh-o|m>kTZYDvY3$9OpVs!e>a2ARq8(J$iZK%sY7_9^^bYh(9AV7qSLuNWe9FR+JT_=r9)m{zW4ol!s`nK4awbwiLf)+ zpnnO?<3+#w-}KQikltzBJAB)`nJ4E~sRS}Tpz}jlE-S0<_iIBFvk%vDROK8CWRQ?x z6l8@|z{1Z@UY^$V!*O8Kt6b7$I$@6YNOWbAaJ2Zi8afF?hbyp2QlB441BD-Vy5v5HIw z5iR_+?4NO9APvIwc{Kw$9ue$ zxnPVdc?}NN=6w6HfcD5a$2iX^eZp*-)tW7&xjlhl!z}&zSyMlh|E|-uXnr&b?)g6d zgB47{v8gT+_Vu^rQ}i(hS;O`ce;1^7#DCT6?%Wz|&I}7>Gb* z=L^qIe}me%53atZ!QVmHlVc5vqJ8suzkQ~whKkn%xV*N!@LIgvB?6i-8Rp|NJ|63a z*VXJ`^;G924x5s@rMvorz537!JM%|{roFn~N&lT3SkK=ZcL1cU5%DP9t9D;2)Zu+F1A z-HfldLYc{kWA@Kb(m(lUezb8pT2p)ZV(menkGcMmB#5Gmd3{eM=Sfy)z5fI9KAo#*ezTBPv#UM&8yI)yvEri6$w zcrQ?2@!vB;P_#XD81peS-WaOTOWzRLeQ|i+=cqe9`%pA6zqCW`s~eDV#8U=NX7af3 zCkfFEjGgIq!63hXFXyT*mH}|fxGz0Id$1*vJ6~FX`XJ zdiuj!mv>zmXrOKEi!=fH<9;(=;{5v}!TrrD5Y4Eh^y<+8J@`-SdP0x}IyQZ}9KYLs zX66@Hy*Vw~*l;TWu>uU|g|giMb`v_*js<{6_{4OgJf>WVRj3eu&v&{$8@*l8=PHhm zB&A#AAE%9H*nLQ5Uf1Aq>Bc9yaD{t&KO}TQkke2NAzIIs#XrByxW&SnXVL z%yp{zf>ySR+IdEMx8c>cdT=jD_EXtOa8+c#U7faZ9>BrOHJ-P_Eg$n>6NNu*S)Rr{ zLJl3ap}#K`EaBn?ITYXNM%y=2qjqyjF=V(E=+Wk46)*kKh ze?#_LDs+;{_(QTr+|B)3o3RWgzYpff6g4HNHmQ^Fr{XDnREt}%~ArbDNX7A~3j<2>5AqWZkLA2S z>H~ZK+e)SP>j6oyao+Yv==*fbe%kZwD)p#0pyNGm&tKBd`edC?!}HmTG6tUGZ-hW% z3kk@XtRw8vZ;f--iPPrK!drbW@zTbH6F$f!0OMYuetXP(dR(bit44dK!;p(E4`+>V zf2nKagm~b?iNXUncVwHJ=LEKWpA`TV_|ox^rdJqdV49k^Nd%ASoAP>|)>T7^PX0;J z?JfWUeNd;a@0hXs6ZxfbPM>(~Yz%E)qS-l~#c)qOA6=RM8TLCn6C6sS+@W1#&ISy` zzO6x0;_B`>$4K1v`o;+}hXm^dd`SG%o^$vXjW~W5=xS!I6Zs-^JK@E|o67=>o&7?$ zh|};y9SAI|RyRoHlz>ya<-#`Db?#v0TEHyppT+4K6i~aPEE|?WQqD<2njD=NQu12* z46c<09POWR-4ldF=`l8+cGxc+Q-}b(TUJzJe)KA0r0^sz1dv^f4I@a;=l6D_~$EJfSJT`9p zPLttFXmV|%PW%B+Gxyi%CJF0A6ij{I7kNuCHJ8gzW;N$7-XQ|c5wWU0u`lcM&XcWn zI@&p2xgc^q!I}x;dvH6 zcWzQURAZ_;@rd)+_b~6K?9fH_n3ey$^OymJmwa`k$tn51xpuWYo8=bE#lE;m1jbLW zaK#N5l8kHJ_JJ7(Lte=YB^v*zqg&{?pKm)*UZ&=PY}pG$A~&#(AZXbi?&;kG+N3wg zQ4S(Gi3Gn-j4DEP7Y!3!?-O^Th(*u!4)z2H=l=DEDE#F4ueUtU3{u!?_wJG@TxZr5(}*h0;CJVUx9r zoiT!^2$ZLwBAfG?5YlXRpH$iNJkNcrL48o+2@Z9X}obJDezkXwNP%}E9`zN zHhZTR$8m}dorBM8-V}5*?AMV&uLFrJ({{U}r7`$P^L;Rn#`E*N{brwjvvsAt3CKXI z=rcaiE9L@~6uO6baN5A2B{pT2RC9Q^BGkHY`Sj>F|jU3T=-cXY-boIpGhcnbHkyAwP0yQoM7EH16M7HG7xnq5FrugdU@yh_*8>`%6q@;k+z%}< zW`36Yh_FOmeIY3k{)xyn)K6bK$wk$x#_HwADItoug!%ADnGF^~Vl8cV*bXnBINqOF zOp~CpugP`8G)6PWY9sTZNSt>eeOR5ayo{3wWAMZ2AQk5&)eHKWI$F7!epQCRM;Abc zBoQ2evQvEqy8#cWL)Yr@_&i2Gs5N zM8dsK#YX&|cuBRy7wl z9doG`QV|wVui*Fm;cM?Vz5hm1HZ43sA;|KV|7gj+!dZ>w6xxHM?-zB~vXmcGZcs2f zD2aJLTfM2}ME~WF`d2En_ZYTVE3+#US_kdc03!n_$Z<>y>nGBqj>Q9c+>ezs2mLEs z0NC%L&!Evb99m=U91u~U43Ydxo8|A~@%ABq?E1_*4t7)-w>HTeN2H(F* zp7db8oRG)EFitQ`(2bzDPx3jg9@4Q>M$^M)4vW~58*y)ol$G6{2d{q1=j>=%WCOB4*SS)Z%OkyHRd*})AtzORnEX~jYf%bF2WxSwZ@W<^RS*#xtyr$k3fL0;q5 zC8LGr?5jTg(7lwT{DqngA#2pj;Yw>dEo8SZI_5I{wQiB89W2>xiQls~LE7{Z)VKN- zoaOw>72LGY;a5#Reflyo+k1p1#?d{wi)0Qy%bv3NJBzVY_t3Yw!Cnj(+n1~BB_9tS^Z*>1LFZ_jM2JH_3(NAjschuLCv+r<)DjZQa)M#I0%p@-#J z{0+m}4+o7h+jjXHOcabDFe) zW0JQY^ECLiZZEZr>LmOjun?PDkCH?cb!8pNSX$>tgQ~UTU4Kz#4BpTbFxiDfp?zbu zed@tmm_4bLJo*J(ExVja_k;`v7~*rApCtV%Py3ZB&_4LPNd?=AH~$lEuRZhdyD`xp z3@m@Zw#A6eq#Tmi4b<#Z_UsQnAh6Mv+qq))`z=B+HD`1xiUY}Vch!F!8}9S>NUoP= zwWss&b?fW_1o@_n`MEKN3SOt&$cFr$I4;F8LUsQ8$>F3lHPUT=u)Orazt{a62t^`I z35qGV?KcGLr!%l%$NeG3#?3rr6UG7YBSdHvcqU$LveA}((0iLpU3oq$5OR``b-szh2M=bI=^z?wq9mj z>R3+7+-W2@j1bE6J&x5r)VC$uWVP5axI_|v3(%reYLFvqj9g#$z@{i z@pv?$)GsSf(tn@Yc#jhf(@Vct71JN>c!dHRSXn~p_yZUC#%-$t0r%6rFqbU4vmV4* zfU>VD!2{NoP8MDpVBW)3UTcGxa{meWV_-4?kzyAX1xCYYc z4}RUEolCWu&92YYqv_S3tiGl;?D8YJz3`~!O~7=1RldL@1SQs<*8^h$IB3Vig$a3EdM}pOrqqocAFBj9)97L zi#%jhyt0<$crV(M3_`0Uls8%?Ipx^$HC+^8ZhJjKd6ho1MXwPajVuYM@knGETYA91#87;kxEzIrn$i=5HE^@ zTVgKw-UT3v`4w%weD#(?8w=X@qNc@-`36^>@;Ejv(->^Axtz;oQtmhU{f0>`kFN+I z**8jt(?P>Sy-z^tm2+Ux^5-n$ey^fUeoipm9mpCuG8yVT#AYqvp91&_5eKHEf~ioX zSaR;})=R%$YF#7p_4g~n&g-~A~J|OIbXJLjCG4Ulc?3SE; zQ3+E>;I6&9J}m6`ica74E#4mx{W`Uc@)z||%xXrDKYYkYZbSu8yOhxxb8uKPC8j@h z2mpZJN0WsWh^w97-VV3I^i&pYpu9Ww^q}V3jR6(Zefh;XIVYyb$n00p&$5R$zeJP2 z!5taKv%_kx6w`NQIh<}9r#gp4{y+_x`l7M3QH#Y>q)hEBQ!9mvb7PiXzuzKxV-q>v)Cr}-hL#WqwFqxqxmvJ zahliJ_z)`#wtjWn9nlMUYdO-~_Ic5`=AChSiL%^YWVMgfLEcA9Gt_`-<@LF3pZ-H9 zzWtd2p_ngBEI+g3#cHmv2OGL~>e*WkZ$F5Afx@FGCf;c+5!p7I7S0_rVD4MO`t;C2+J1)=q%qiUPdl2VOy8sqPDGLzb)lSyz94VNc9`SbHM1P9V`VDT zgw8MZ3L(*!tl>V@ITu$2eNc%N*mpgsrEJkP>|1+15U%3gd$yEN3wBG@qAKqWiI+3? zj0!2)DW7)b<1ZWg!m+q#C7AtCZorMcEQNNQNWtPO>Bmr^e5N`irGP2k^7d7npm!@# zfiLo0Myces@=>$?-iAXf2a&Bu_Nm-#0SBu2t-8f!;9E1Oy{~9!UYp1Z7o8gd{!2V1 zoCCEwa^}x3A8E1$Xps#cmd}LGMc%${>82OYz&BA7`Itx3%H;RI;zIU;szdYy` zH{WADlZ)_QbjWG2#(5oIw+YK33opHETyk1@IrX2AFksQ4$bE&+fvYD8v$cw``nt98 zh={$S8TFpeej^XGzo+k1o7T0X^C1^xjjB){VdmG`Hh(cMTJs)hUZG>*aYw8RX*3lm zNTv}TM}$`OSH922sp4zdU{`OaZ~+nV&i%68r?WIB_^))mj%S^PN=68*O85ls_7JWy z78Taf>MBo_R7^)fd^VA`EkPTu0l83)w~v7w_QRL<9ofG)N%$;t2&_pR`#wGI$C8#s z5u%?PsgFiZ@8DAu1)|{|Byd%;OqhB!dig6mH_*CryzbQ;L==u1Qe>qpzev;4| z)9T+!xHjSD%A0r*)pR;O!?VRgXTla|SfcDhiCLfk2+t9nH|X;XFHllxpe4O6@*OIH z07>l{W$ex`G7YxYgV!$zyC2QD{Soe7yIw-{K0&_{<7_wcOgYuR)AJO4k2T*Nn)gO;35CU)i2gIb?;Yzw@aD@KBu?l#J~;-) zYZ7E3z!rhWQ`wXO^O*0I?kA@0%iVtqDobB0R$x(Kp^|rP5&y-p;C?Gyf-_3} zuXd?B=!)R>a`jBbj&!NUV}XyRc7d@|5+Oj91Yb${Ludbxio_$e2dg7c{EA8>Qjm%8 ziORc|Ed8A3sdVKr+egY2(oR>A-YnB8a0csh`Y>a?rbzGB*YvVD1eXW#c_23f}9WGZ)e>je)t>S;?;mqg9L5_YqV@ zd9mSR9#_(UZ`R{JIhI+qNjNMUx$o(26>3FwFWOE%W|=J&(zE*v#!Sihl(lF7p7nFp zy`F#lRLA=~%F=Sw**bR^U)vYhNsy`RLHgto9#_~o>@izujP%{l*m&KiEJ&mN)RJ0k zua6$MdaIPCbM&_)9^}fIL`5QWUwzLx;3j4eoo5C_G1aYXs{h0c?e{^yP!Uc&WHY3` ze6-CJ7fcuW@-m)*lo|JhC3W|L+*?aKw=b7R$YQ=Dm+ZT-*5J1lM@AwDWw^lgbFk7~6DW5za1}89!X`byLs~$tNS_uwg zGKT^ElHo&ZRBCpqJ9Vc&*DJT8gl(`tg{*pt{U9^BEh$!}uZ6Tpxyo1ecfJ#C?R+RE zCj)X&9c#TOZ@0!bC*j9vN`1bPWPMrPRBo`(>ZmRd>NQBzQeI_IrDY*Ef>hx^b19rgw-3~ zj&l%4&?@gJo+QhYoZ^ocMo4HNzcI9H;y=9p*?>$Sc|Y_|Yx*lr&ITF3hD2+xUD?13 z&K&~!{ASuI7w_;cnk#hnPhCR3GCtmCevPr^^ZbJyt)`vk{fOm>D^yMIvL73HRn}FO zl2t}UlLrq=2yeQ}b4WJu(a@|RzJ6ZoGXRbxzi7gBT4Rbx**lO}0n6d8;F_hCjPs%# z8bMXpH(4;J6DAAw@$0h8eu|9%{~7cc4|SAq^E?G%+OhOePko*{{RT5@jC8^F!I5B! z=}{R!QU*T_eH2Nk@}v+Gc^pz;;fl5dHF}PLV6?d>)tWaV#T2PBM_4mGAgm<*x(8ft zM$m;FF66cMZtc(VN_VQ0XAbX{8Iy_r2u;`BYBD%sC{)+`c*HBi{xI_<{XIM&FQP7j zH=fS0wm&IRwdoz^n4i4}DLK9bRJAK4{|NgfxUm0%9nl?tInvp^J$2brO3;|D!D)MF zkFybwnO>0Aa4z^-V#s%^ypcAm>IEa@YCR4X-R7wRwY2@l4qsJ=a{GQiGQH`9VB|gfvv}+u9!`Mh55GErFh@Ou zY6Qy1$y!YGzs_wOyIaeGhA%z!P}}eL_7)!$ySXd3&4tHYwES+-`PP?=zp&Q#l~2k0 zpyvZ{IGGOk*5@;bmy`CmJvV~)Q7_U$P$o{VeFV!aA%zX**&c^8Nj0TozmNfv1>1%To^D80zsqjJF!2MsE9{FCkaAOrFho;eKi95PsAaW$3hNUDa8 zAS`;tAK%fc!_b^#_q;IgZ3D85N~h_11Lxh5FcuBM5}e<@3(8YD4LQOKHB5!rCfg?) za+n~VG4EAq?4wyv9)1 z^3!JbR?dt^+8ytQ)1q@)R*U%vqT7BoBFET%!WkpsjeK~irM;>z^N0*aBTLbesh0r9 zjQ7bh-@~8KE0~h-ulWx0Q@s5k$<)0XM9O^jotIbanhxf^BAEKTCg36Vc%nb$po;vf z@Cj&&Gfa~zaoMQ78C*;V@!a0Vbm{Vo+M?@A=T9AU%%8V%pcI-N(g;JOx=$UZmJI}N zj0tCd@zOTWj(KnQGhf5_@i2#{kYbO|&u6|ZR+0nX-F9lno#zpBSLwLFXA~~OWW+XC zMMM}B+V`r_h+vX8agXE+dj}34>~QBt<`4a#1h?10ulDB=Z;d8B5V@^5A`5})3Jedr z-|{QkhE#(3k{|P03d(ssW@!`NyYYB;_T+~eMR0LUt`+)1j$QXU%xI{H@)*NudYoQq z0ipI03F>0n+QRm(Kzj5KxB6aUhU|q&9nvFwbFrU+YQrP((mg5c%9r$|Pe?Hl%dcvX z5RGYQn(;9=#{RTP`l|go$B zJ5>e!xVheDzNbCfe%BdE(b-9CLU5J)@h6hUFFKI+w95(`kCQr|7pp(J^VTZUi5k^d zJ?(dRx6OMnxikAj!M{N|ZtuTasdfQ?R3fKLXr8PssDU-du2g(Pbq=q#Vm) zeq}!A7d(W+%=f4>pbjo&UDl+dR+FrG&{0EN6V=gxgXT{&1|{`(Iyl{#rZ60X38H^r zW|TiA*c${^mbE$WQOlH{Itrt-%06onE61|d7~;1H1<)qX(~~C&bMPb7nBxsokLpvf zZ%^;vxqhSuia>bjHCU&eZYc^=BoEYz`x01?lm5wtoBHI=09y}FZ!$GrWatqkiP3&| z)Q~Hai%gJbzIe|k8mP_R_nLjJtmVNLz`8ydBC?_iE>$=N`a1dMOOjtSM&MWNjbp^G zcmM0p$+de6+wB&V9Z(#ZA^Y!VV!0nr)+b-9RIK{w;GKr6cp&Z`o+A`BF2vf3@y0~DwR#Uhnp#8xIZpbKYGUQh7 z-%}%Z*g;nIVlHR|_4Mf1>Am~59$ZhgW9fWeJUkJzZraXhZ+e}qV2_=aWBpY!FFmkm zYCbMw5nCy>uyuW2)W6YJeaI?3ooj^Q;;%!SxmF(0YFzUd?ez2;QneopR1YP3pS{c! zTZr!bhwLl8eiQGfnAI}cac=U;&BOV4VqQlHR>M>VV%_xEZk3x6!T>&ZF>0kM|l=|8G)WdokOV>}hPk2lS zdLLa_z|uX~TzPi}`FmeFe5E*hC{+)~VK{PKND_3Nk1C=+_GZvUMeG@U?MDt|ON)$w z?tA<$44x$;mjnyktP?)RZ>5&`IVQrF?|k1-=hga{_eN^o zw8E((bA=`*3@%r;2cWTVwcN9OBnrj*`4Qa-R{2CSeQn;)`Aq>s6I>dI)Rn`-Nmv}X zV=q^0M6j3Nv4~ao_kEijvn@z_PwumaGe9OLXg@+sE05pob^dDC=8J$2o0^pOd6w)e zUmqMXrb8yYA2XtAI(~@p=d8mt;EW{7UQcq$XAbeiWxpMg>KU06A3vNgFmMAjDKPXKp-s{hzVW*k<|u~?4fQ>o~A`PZQHQJF@1vHE=x9O{%;@XvJUS_S+hZrafWtFQ+mP6-%S=v;zl$wARs9vgQYJc~GM)lEU_nzEEr(XAp@XF1{}PjMma_g_HM^bDK$v_n>Ir%T)4_Tq#6D9F%{W+uTz=*S7HjjK z4kCjlvQh(HKr=ynSrq8cM_1YrzV*{4j^9H^I!)CNoAJH2{e(vG<8&&HNmQapSY*>+ z7{m2vuci3=4&wFWGPoY%mTx`*(@QZi2UmrW1Y&@EIY~_N%f9tc;!ze6JK(?RNOYN`OxuO80{-#<=U+0*h(9gMQSsOp(G?Daf#{+`_fvV>2GR5|y`uH!jlDK!ZlTSlW&GM$|{eojLrSgKQLr|C16E;K9T2px!_qQq0Dw09yLQx zZ;OL|L+914b=Y?nEAM@2w6BTsUpw7SW?y)Rd1+7YV`f+0Ecw;5=C#&+Q|O_F@ia@_ zB{ED|z|%jY&P4AoBaOZC(WwTQZ{Y$7(9w{c*W+?Y^Py9upCR&5P)uTF)&-%R+_ zJL56=OkadOO~?EQL8vV6iJNPSt&f_XbNjZOSm(Hw{8PA}V1+5H@7Vuw1EiV}$B`6* zHcYZA6$FCAQm_sNP-Tx7RRh`mkGR*@Dsp~(zh8w6=OMaYD7!<$p zqcy(N@_`SZ!w-;LooEsDlzl#w?hv(9H9PKS>wKEO-Z00zFGhOW!wF7R{_xFC1WSff z^{P{QyLQggQjk zDd?S}bRS-(fmZ7?$*^e2Ki0>&6R3?j2Ckuth0$;b9o|03BoBS=amrP648sXJ#j5iI zHV(Qb_7|}m)HLbTdC*4f@29)@e7R541EXz6iw9df0Kzv+T-q`J7>*) zWk$+nTsTh>94Ts-Wn8pn=CV86H@AVw=iQPhd_v@G*hjJ=Agzy3vzaLL+v#%m!8aT32^S zoG;lC-igH!qbVI(C`k`C)3`hHEqT*c<9Ge#R&rVlFU0Cf&xc{Eu9+A9Qdx&>E?OA* zcKHl>A8Yjyad&7`E#psi18q@8GjlXx6o%hyoRWxY5Lw|A0Ci6Y5ebsM36EzJ06WdI zd3!$g~>c+`v~4AiR_^BZJjpJZIUxxc3Vx zC1KB#z4IEMUGR!if;`o9z^^iOeiH}jKz>neWtGO?Sb76&`*}GZKtn6eKA6INfnMZVJfLsx z=3{OWe+kn6^hWJUa%gjM4Ywh@10tQEjAv)QI^u~2ax}pNPkP^kGufu8l_oMxqAcWY z1QLmU8tBB3BS;dBeV6-6D`S@+gWv$rWH^nH7Mj#R&2AwjzL6 z#pU$c2fzUa#tb7Jtw{Z~z9HL!Da7*|iLD-65n|)we^g;n00Dp|MDXe_-$W9%fV1CJ z#ZC4e-}$(4PcAq75DEG_5=rV)#LN;O+Digzf`2KPVVd+jS1HXFz=t6uXekGfvW?`0 z()mlO@JWK;cIdfTm5#p(oz`jpxi8Lli%h+IoXaVWSg=1JfwnDE?DleaNW8H)_NP z`QjwSP@+PdMMY=}@e&a;Bm5Nh^?4%olj7dh&y`B=a2%c<&tD?UDC(V)qCHia=`wtYc~Za^XWxt+N75Hf5&$or2jO+|_T z3~tMW&5Tl%XKfOM8xp7xi}sd+M%&XD-$cz|J)ufVr&Zun^esiA9Ai;65q@q$nO56v ze?lbQK6)_z6llaz%6~MS*|wrc5Ji6pMG+pECqZVAHyK3)RA#=u54TpYb-TLC>wu7C zMn;_22WD)%@4n!5Y5%$1&D)f)Q8X54tkrjE^21BBC)LwDCb!{W=mCx3oK z5zU1^YCXH?epub6Z#L@=%m#AUJvE@HguHx!SqH$@+udxMt1ACRFg0K;<9CK5;tRn1 z=Dt3{n{nzBT%*$$GFiO;PQ57o83{fKEnw7hYp}6GF{2yRlW`V*s+iw-{j>}M;OR%f zH5|h)n4}b@hj@KI&Q@JFeX)Cs3#?-OaUzfJn?*!Wu@%1Ri)PFx)9mTA=%$_tJ}wmFoKU>d4aZ> z&PcqxDpx{^0haQ$0N5$82wUF9v}9FC}mOL!W-`!`)MW zzXf`{^i7=xD>>~eS+lwPb0X4bM?%dagH=iNaNz4QVMoPtzEZ5Z_fCzewXXD?vqSpx zRos~gjMz0j=QnWGmzia_smP1Isl1B!%&xyfy;R>9dTzFt`o6j*irB(KZYHsvfQzc?89KirxMFd!WgI<+v!JG(Av}!?VS1`9@@uI-F;es za`NvtBfFoXzPacTy$R1;ZY<0d$p3wVWk1L3MWWkf|KM(jg=cRg8_k-*r@h4m9XSX7 z^RAJC93Jz=UnG7z$)FU(xiD-Q*a7!*lJy4DoUhwK5^p-0E1Z&4H$zOuqf5)<rdp^CJ>4fouM{kAKBYR@jk&KB2g%z< z5X*n<&pVFUItWjDREqK@Op~+&yl}qE!DTZ+(9ttz(Z+9IHbmDJm=>VYE6{ja2@kCm z{4gHNG{N{e04-g>&=dAO5Y{y5r@p z2V^!p{fgf=2=M#^RJqdY=dAg9$2sos1y>_F%gnchY)Q2=-GZa(iBb;dMmMkJ%&P|+ zfRwg}mwivv{arkK1ZSGpT)TzNc`AC}s~;5~vym|((G=`qJ;iw2gNCP2M(`=~CR*-L z{f5HtK;~rI4_RI*jZyDn1M{bt`qY4vm;~MUnuO43u$oKMCYaDJqlIDw8FQ4mZjWk= zu)nT9hhjw)Q+rQ*9n;kJVJ)AQ2_EnVIE>Ivs}8J(CzkG5(nhHtR`yaeKkleYc(8#~ zr|tL+=a0AFQ6;-UxGtX)1eRN=HV>IsIrM~R-_as_(LKtRb>R3OdF+-u z%hmj9&S*UES9X3qN2>DTs1!<%csBC;G*9(qzVNrTK%MZr?9BlNK)xonaURT z6Bh(U0(z|Z-mkZEm=4p%jkt}8_$8~o7^}tWYG2k@*1OiS@~}w2GByp<8XC8NkjiSV z1gsvfo=l`JFIQLV=wDJuH(|NU@B)~btNkEWq^|Jkfuq_H04bm9w0@sIHxBZMBHp#U zCE24tKAR&d`DbBQU;)Ql3a1GqmVw>#7RvD~ZRF@Z{6hAeOdr4UYPMmSGbg*YlBIH< z_xU0cr~J1aR@oWjM2a()$;_*!?b(04hwg|E|9dRUh4X7* zoqhPSB@8V2AanatRQ7E+EI0Qf;!U1PiUlBTI-^)V@#;^?*SSrefNN;-+AS7IbWV7| z#(Jl9d+PFZf1>*=JS6GS7ayQaa(=^#Y5*WJ^ZjEWoT{YagcS{R$}y$yio^U34I)7Z zf5-`F(z?6mo{prH&D0y7*Pt}+GonF_`%PI$Ts0c${X{r2k%$ZS8r)?Tu&4j@AIA8# z(s0(V1TUz0URPqJ&p*D+n{Z+>Bxi?$AxMht>;VRojTZEiOznFFEA66p zekak97PJoqt+%|9c*k`g+*M4$*&D9(>D*M-97^PtO{4_GhAS|csHn!n78Eto@M;L) zfT51f(rhz(SVohzyY&4REC02*9q6OExzZI{tlk;QCVOT3ooRe9rgxdBbn$Ru$Ne$_ z`>G#ldAJ2xqF?%fgGDk&$SPt{n3^z(;aGG#eIQl@+pN z&#-M=10f~s>CSIvV+rNpvX}>BL;^4avLsp6&Hsw4rciC-+yzPfgF0{^9C2H!9=dqwPvhWxsTxr~{mvfLf zN(&E1F@&lQ9+YX}yv#R*>}EJB#E$cZW%KL~e`ylVD@--TU9-Iy1jn}QB?>8})#jte zTKY;_@6oM>{zaHHp)vA>W{ipImiT55(*o_g-0mONKEcLG zDre!@10*mtiF^TOGW;eeA;S)9@Mkzn_4~}tzKACz{ZBt~3|_5`vCBOtKs3=ga!B`) zTzRlAd55x_@AC~bOSiQ?fA-6E$3^3i=2OUX(i9tE^4u)+^>UA z3|_-GkT3$5J+smgSKQui&PO%2k21`A*1p*9^K>rsk*<*UGLNjx5*X)?ci@4o#0%Nw8zuX+KmTa_>2!w$TF1xZ$+4n!?es&v;b9;>|MG#6v{`wop!tqCm5J9jV9Viv;_?rfWT1$Vxowore4at{pC;atlF zgG$$l>Au37_K=099^Os3e9mI?yIh*KIs!9~QVg!0M71DOpV9h1q~fDb)9t=XsW_$< zzp9ql++d9tz`p(Je#jA5NI`6i(J8)%PJpMG2BvB0Kul+63Y`Oc$BDdaYLhAZNZ6+W z`?!_{`@}8$E=HfA#XSICJ?Dgsh@zXBUGS-Uuyw7Hz(c}Sw1;}iM$R3LHpAb%a zfmB+w?CGmyB>RYrt1rJtb_44FVxLtEx*m}Xdjcy&{N>28B-o($vhfnPWdb}PPj$tZq{_8LwuH>USU>ya> z2nTKZ)wh6&-qGpW2o?p!B#~qzO%&Ij>xW+F&Sf9qzd`1-r_1d?!~M3v`@4tBfw9#D zB)U%XV4((EFMZJ{^6mD!As4Rkz5t) zpt&dP&IKXfsIJsUbmO?rlv78vvLBDsX9hRx{KZoyDHaN18d+Xl>d_GWg{KLM+^@nmL1M_UMikXUU{+&75aVL+Sb2Si8GoLfB!|V_mjOw z$a#SY##PGu6@03D0ffLMV#ZSAdZtk|&o83)Nv!~m6i-aZ3F_q}{LO=f^`)v;If&pt zebaI%^44R~7<;Pn!ddmNj?6i&Gad{hxwqG)?fBtCQo#ysVyX`AmPv3~QlQamUj?4k zZ@t|$zyCe^N0!YTU%1=%w!aZ5Rrqt5!mYTxIYv4Eh}~X7A`2rn(4H;pgbcfAZRq%n z3UO=z5%FexV}poippVjy)tTGWQ}EPr!-6Z>zg}zdX6V7UmQLHF;L<`u0!y8$+1#zx z`73!~(1B{0=b65jM=~IDF^A*qxYcKpL)E3_pZWQ48a_ES>$(q~>OJyRm)^%s?V2Vk za(3@*S%F)O`}kzrADQDSv=jo0va)e>=fP z82DIQFFfTZkK*LP{`iM7(_iFDMcV_m;BYV5bY)*(&s&y3gHO1G0P~z8Ixl1f>uAZv$2;cB+^dF)PE&xW zp7!;!Px1~-uHWDS4XRghJ)oGd!PcE%OV9ghLvLiN(;j2u+(>j1s^mxamj)=xOZ{AJ z7WYlDjE5yn8`~&5DnV`MZ#TIyZ>xHv2Jn0jiLZp$ZBKZtQ9KiaCGDq-U)%a6yE@vZ zXM4EfA?bHEsnS-z8a!!Bv#4h#5tI!E*87Y!+zys^us>@2QX&b>)J4QdBdNI+5XpyD zc%r2iIy2!MgaKxFN%M~7bfqjqZX3XS*8PSB(t{8gNJXONmiU3GCD*$TeIR|LgL_&T z{Ok3-XOtdIgU2IN-e1IFzlf3kf}J0zpw7nd`I5dd61n1CBKHT2i!h20{nfI1tO_Vp z3Q6LX8bfC8%pY@3OG2P#I)aSWV=h?N{iW>Hu??x}580wQTtptxQ?8}s@5?YNssm{T zq(D6fHg#Gc=Wh0};%G4=4IepbX5{z~I(4hQCh%Gkq?k=cfz2DZ#)k<*^<)i zkJ=Fc9fIyFmANv+-vIpR$^##FBRuq}0#xh+1|v{yCL_D43LsB%N9b(8L@%bz6q_9vVEd}dg4*=BO$^JkKOmZEwY zIPUc7@!K9fTxG;ZT(>!R5Iy3q%jniAVTKHKP4aa-A^@6HAH8V|ouVbs5MD4v)W%kt zK^?X+S8+W={Ws7QRb}7R-qKq<^^~DAk=YEY^cAoE84`xMt|R=~W74NOBb~ zfv(pZ96P$p?g+yHL9&ZnNMnRF*zfNOR>J$}NA$a-D-mI!OfFZ!_)@q(xL`8gz2z2G zm{;AY6W$rfS#Rj6DrFI`N7aDI2R?Vu&ww}KFJ%8v5^mbQ@_h13TISE(=QIlG$_=`o z6Ac{nNK?__h_*>`aMZLHt9kO3y3%56?P2RjhLPlpkChJdBJnqfsw`Tg`;D)%aI7HF z2IJ zz8=?0E9!(kA6|-Vawd5e%;k8xb{D&X&mCs~T*dA+$o;&DJA7N7Nn^7FnC%*O0YZ`3 zvn7$lZ7hwDhpeidN(!Mhp22@afy|;jGU1Ozs_LFycaI9Bkk)Se#Z8CdI6xzL%2tQu zHTU_e4bJmOAUL6n#*?>|wsibo1pJRfUyCn#rtm>P^^0ljePQ4-Z;lI?kW%~GQ+iKwNih&`IXc=MFT550%i=)6XG`j{6LKRaf;^P(z$&ug<5J#7q$3 zT?EY_0B!rEP&-d>UcEFO0+9WXALJf}&UK5U?(mAIA^xVCA3PyKViJ2+DM5!0Oo$#s1B!y^&9)LL{4zWRIJqSt8) zSc-Uk)H6|3+~hy?_~*|x!DIl!od!6fUE?uF)z1^>a^HAgeJQHe9Z?3- zE4}acs8Zs7@2rAfhXjo5!(j=kz0vnSvprygJSEP=og5^{w)49wU)FDPCNA68Dt~Ht znry0Yr7xciR#ij0a(G8c`{rp?yYL>qVUdDwOb(lm)fx}Rlq_L1de$Ymo#+i)fDVnp zScl(*zJK%DP&%L5_ih}hVt|>G=6Ti81CyuU*CkUq>1PlwyN8>pad6*KnQ=3$i-$MIfBPLkFAYYt9h^RHY~tLlf+rl`=%R35K>ow0k%LufpYacw z=*17g6ULZchY5bnrBNCu?Y*)v4{y;(NOwd8QpzB`t)(!3b35I!s!=hw1V52Jf$m{xKpxfLhtYI0<~H2jLUVY&)cc@ASgQulRb zFD7vrfn9n~@(w3l(t2+zg){2*`wCHQT(<52Lb-BwKzBcm7O$(^-q^|!QwY-T@f4sQ zihttEqmj|COEChEH5(ynSenR-T?JFB4fyXhUUY3JijU}FnD})6>EIbO5L*^Fllozc?FU?O|uYg zui7C8%}zWHiV>(Z(Jfo?e8K$`&x1J%P>*%j8Td!1s&&N##k(3WCX_I}l$mTeKe`X0 zRHD-y=Ts(-0%!2&tXc2^$&7ij@y$FC_2V#K_7#mK%#{W;)}hgDvMz=7Bj`g9tDf)O zv~59UKr~w|5D9MZRZEI<_s)?7JG5^4ImaPL0rokt26QtlQw&?_2WF=55c-J!t6F}V zN}hc?_Tu%2?HgWGnYg8zKmMhn^y5FFOSJN>yMuw?*Ug&gBRu#~wy0o@l*> zk4SuqD(;4GucBn1Ywym>u`SFm`cdE~g9poRt^{B9dU@Rmd*s>cx=Zw=)L7nXeS^U4 z=%<%CQ9^|zb3^4#_P6g3EqPp14fck33p7{K#~D4<-v=~<-8bfiC;xNr`)%YDyB;3% zyRLk1=SYA--w8C(;I{5^mb_w1vh@8Q2=p3`0Co?>wco=Iv?_ZaXmKhgfCXj$%`Pm7MO1@UO>M_|2XmnZ-c>ctRJ zzv21k*V0-(8o8&sJ={-8*9UN*q#ZcB&d%|VHnU5qI6aGjhKFMn)=SQBlPu@=PnvT6 zeZv2-rUOQ+@+_-lzR+zg>%HzFUMNM^hMK2S`*;h$3B$4Rn%5Z~2Q~wU?z?_F;vag{ zzxNWV^c@PcrT?{J9`}&qL~c}jf4heYr&sdBhq4Y6jQ`}c;4d@^2<(hcHso=N9ZmZ- zDWhG!`cbp}jeTWL1IV}zxhcfqry1! z%k*(do`&YHQ%&x?5018wUx3i;Asf_ONHU19OsbDru1=GUzSbz;GzSWlaC2W?NwclE zU#Tj|d0=<7wOft^|ze;FTnLJ(U z6Fwn3^FDa!e5S~p++(l~VXjg8Ytsupg%FIeW`h##$)*ylY~Zv$Upj9@Ny3^RIog4NcD zuG{YmS&|?;E>Bj+fVh5(wZW1TdMVkjLd@t&JOpy5(tnxwbNk_mju$H~z|B3Ut@27Q+(qPvfiOMzJx=7q7U79Ysl| zb=DWBubbNuQ-u==ie?7fq~~y+n#_8%s=`#vy&uJl)1!?I=9L zs4a4U7X7X=plN^pfCp!HNR#fB;>sz_EXSD@j^Q;JL7s5eNkqrYD7XvuaraY`GyeEy zaBg4|LQ#k>4jcm}buk&JAiNF+PllbFvBId6wsu*pZu|Lc^j+NL%3dEE{gNHntf86B zeB6Jf@_K_NsgLf}X1tHFj}eyTPEByS6-_jp%cuMEyi-Q9S{?jw1nY=7|R zzIsVfu*lU9`i6$DpCf&3QPU~|?eBOZ#qO$L?hSNtuZX}K_2)*gh519MLSbF^We)GCI)TQ3L@8jHr}%xn3e!s^9#=b;#F2T=VwcvIBR$&G{#}uhSW$wxEocwzJ?uE~QgAh~eCgg{qliC+J$4Op^^>T{G^T~L z@6(?G1^4gI3)16lVw_ckh1b0M#!0f?HD^&mA9zvo`j9`$qwBn2%9%vs@XTb>vt}6! z5zJQb@q^a2#vKWRa9Ly|s0SF>KT6Mx=DaD!Ch_Hf3W6Wo5N`3aEu{cHpJu_gkPgYi zIUlYQ3iDs>_;dyu$Wy&XoiV=br#Rjo@u$M2yAlS&;)|AKclzfLq;k1H5nqVz zmo*HmC6Kfam7<9=HbHc4z@g-#eZZMv3W#kai(CsG%~kA7@rp0j<4Z5w^6Fu04SNOd z<0U`sa>_O;imhe-Q{le%U{g9-_w@ZXH`aJ@t8W5+vmAPu^O?eaqM7kW8Cj}tYm<_w zx!|xlm5@b>KQkIQ=XFIh_I6%jcpXA4=6KdqCiC&83&BYgA%rFw#QqV%=LHA0Y{Dsh41rmkI>vJM`q` zMqSRjQ8pLN8k9!lfPq_gGgmGi5AT3Vv{@1^Y(+2MY;It0`yim{$4AR3`P+BkufBPv zT;mg)qiArOSW^NGF8xdz0n`WoLf7b{T{c$(_r;*f7=;b4FB_|DCnP~Y8eb{>kvs3T zEi1^}Z+_W-H}1E&N=+4+6Qw=S`BQ@1B--#&XfmZ+7i&l#+{|DfQ}^n0&?n?%PnuOv z?_{~ZN8v$DpPQ9j_c2dp`_rmENcY7He>Kq{)m_c{5)^B@)xvUM{qq5EUK?45N3rn_ z0TH~YU*ifEPwc7rT*?O;*SDlQ>%Kd}9pEIBSIi8@=lP}K9c%41QqA){#S^)I7+Nx& zpd?E5?8(3LZ-2^pAG39Su(;R=tDnb(^1`oX_ z#ro2n;zQ5Q2gyED_yRBMC+)P^8wizL#eQaC0if28;Oy>EM|{-&74xqQ+C(uvBkReh zL-bt3_w35ctIShg>PQC(+p(IwS6jl<)_dxVuL-hFPW|EK`wBk~ApEz!c~@^9`I#Wk zzI~Znv;<|-yv%PS#7C9n+45FPglXb`Y_MoKhLBc1aw9gSXc2}p{E}gx4)h)c5o9?bpwv_XH6Bb zIR=kL?jt+jkqw~_k8R(boiRA1lvW$zMqfZ2%I<@7ALJKf4kwmmUIv_>uCPuMP>fHg z2#aNfo$$-i-~_$T+uV=37|eBey_5F<)+hAo4O=WVxn@#t`Z}z%9*wnzC${w}qqxp4 z{4yjd>^;h{HS-3?VC2D~(+4J(v!p#w>6}%?8ZLbm=N=P->ptfmNT~e-iOb%# zgsLk+*GH`p<$aVq!**kl$vf`z(0(xiEidOGKN$UZ>Uz1Kw^xqX72wKs9pr58(wb1M z>NVZqU_OE~aKB??!<|VaQfyG8O8!ym*Y)zWVA7^rdiV&RCw4K&I?5`O{b<qqg~>E4rz+W)RC7`W|^TCPDS% zciFr#$|N^$m#_acSaX=33DC&pp(Sgy2y~wt38PyM>Z>ljm_tYJ>k0Fiw>=t@YD6Z1 zKPX=&i?YuTy4mpsOPJ<;Oh;s|rf}&&)qbdK@hFO4kkfLoF>-g>KL$SbF!}6Qo2lrA zJ46QvE3a&tFdUn*xj^vGQ~fJ-G5880E_BY~HAyIXVz2$AMlH0y(|&)|Xc~8JfCvOl zu5HWPbTaTn_@XGvZX&;Af`gk;=#%Zqhk7?#z*P)ux!=D6lNz^&ym7@oNnu^=?%qON znuBCyEjKVHHFQe!@o@Hj`oR+VD#{BYrFy@fA^>Nj5H_S4C_iiFtOwtLPHQN7c{{-8 zpwrE`YL#NP6d!M2XEQ@h&&H$*Uxc0U*B7Z z1%eaHAgiz*weGY}y5C>VaQnWK6G69DEVVSn@Xqg-0=rE$3t&O6pq)ZaZ-JGGDOT2t z`s1a)w3XJHgc?01Gyg>cUFME@oE!qZj{Sbetf%ISJZXr(mePE8@RlD=af9!dI~ z$)KgFTKAhp?|1RHgnV0iX-@VV83GQax%RVECp0V;*5E#kh8 zA$M`Q33+S!S{CCNGQXhj9P}`T6bt}1q0zVJ^CP(7yT5txBXW-=XS2LjPNmM>0(92x zcj(jSA9sF^?ll7BXYFBWe*L_LJ-YCKk4%|6b~Ibv_u@v3Jhz04f_7ZyG-ZUfa?n^K z0+8g#c;Azr-)ui7_M*D|_Tt>@iW`;NWB%2}U#@TEa-L5s7nc(9u6RV}Tjy1DB0xv{ zX^+!I8*jV6)3)T-O!|%EqAHoCK`mf)d#ur3haY(bp4Vh0=ht~=?3JPSmk;mX7Z=&t zTPune=F`v232VJ{U`h%-oR@m(EDhEr2Z?FfWIc4rt`FrD5v+xhN;jJ6OzO}v88a;V za*>bQzJ?wyKX>12Ay`_=thgY5dN6_iYmkb{FWr8qZ{7L8yvLeG`3{6yepqH7cM0SZ zNTIN%yGI(|zpg_dM;|vh4~w(e+#o+P+IJ@pp>K8C8k?$8csI@$}fmO<>{kqR5ryKztyxt;wgRUgDSFmKT zQ!|bD>3|)$?=F@hQ*iplkzi5~ znd_{6>w+LBA3j@CLb)}z#S~xHbs)%?a=1g2%~SgIuopWrBl>hFl=7d98hOa^5lMri z;zsC>$d--aSoA&tSD?7%c^y!mz|5!gh51}jgJyG)EH3P6zzg>AjGy|MMN#?TrsF=D zNcCqQh#@j=?~ggH22*(RU5YN`u0oSMG-6ZF=QDoOy+qmigU#_MBdl@d*b2W-zLza# zNN3Lgn8J1ngyUwAJX}OC+_I-jC793)wm8jVu@9q*Yv77YXJ%hH_i=x(tnWJ; z%RY9<=XJl6uy7u~D%YUR8^KZ$_Bj zYj+XVO1C&HKf%%5VY)C+DpfvCosvBup!*t=QTx~UPG|g?zE3c%ggucEQxzZ2H*y?5SEi%)r5itON-6JMcO)e*2Y-qyEv1)}=>5SooMC!dglqX-G2!9? zZ1o^|)TB|TO1{wJFF#1B&a)_yM>jcr7CvA;=?SjE_%!MFz1nyUX=&VQJWYb{rfPD5 z6rQTtJ@3Dge;Yjh-!7+e3jhGWG%|kLpkGf@8+~L;Gt!^~)198l^C2xpe^WJfdbWiKO|mOM7KXVum-rU$zZ`E?~ilpVkf9!Byr5e zc)z_uDR2cxO3E#KqxGms?XnUQvcl(UFYQJkx{tfuUIUt3srij=%lf(agwX*KpvV zT%Hors0|PSgROZk^cXe(K7^rxwO>Z^Zl_ZkIh2SbwLXZM}jzlT|AlMbM6T z^nG#qdUGzT@`)3wyI$03ks;O6rv>U+d|-g)#l$G5qM-EeFI(vW`gjUX3BrCSr;!c; z%mx=uZ6)nL0tq7qZz>r4sm0a-rwL~Ro>PDt{91n@oLh=g zl3HCTv9W4OhMb!g&h(EOYk&V{<%PZ#=wMZ>eW@C)()QJ7;rV^_n<4R^LVx<*p@s$% zL=(>*`9Kj0Q51(OZg>ady0FGov~y^?;f^tO!qBN>>YHqmYwzW)#$Msasm;W^pzhe zf3Abz-nK7qdSe^FanN=+oloYg^>dVxFwv9hFX7j+@HA9Zgn1eJK?+$G#}C$E)9=SxPgm?;I7>b!$vDOWNdf zwS_!nJ57Pjh<^w*2Sr&&^>3e#v^a2E4774z-eCe~{TZ1zuoNkU2L(MLK$I_O-gX+X7HD%<;3pK8J2x{QiDX%iyrRPI{k1^#Jox z8T+DZtwBBSif2RL?C%7|5M1Tbed*O6z7p&+|F}qALf>!DQ?-JVbF&;O)FD*Hc-)iT%pKrbHhR1kU%jyc94=x7YUe0FHsb2~Sv$o6;XohT1}? zhUvhXQqpo?HBCoG)-CztD zmHZz*iy1Ej{&#>drJTi>%El8;{yBZYO#+W+Dao42=+%w3gR0PUxgEiuz~7+VsslHY zF8lN{TaOER8_x_1i-~ysh`VY-%6hVbxqt~F=klB5XIP*3DU_L8F_iCoY`Pb5hjkX7 z31P$HUVGFeLwH-A@%C=byBU1}R61D6=`9JLNbZ8!K7Zz_8LA(FHMY4XcigReY%Edd z_vpHd0kofvd@RAvqGRd$K~=7h2;9;MHfV48$63r5lZbcl9)?2|KrA4J~e0HFyN zDQ__~fq80}XrJ}{>um6S)~5q7obuzdB0D2wAp z`y4CN&GyOhx%|%jW!6r6m{rEN)^E!D^De*{(RtOk3x8^!%|a1*yWwNQ zw0LamC3O3{J^kW9;hDRdg3SL6mSr9N-Cb@sxT>z=sQeAU$5YblFgn9k*BfcL`cX@@ z-|%g5o|s8j2^#Z=v&oktdr~WXZ*BxV)hDgcX|Y_Gfhd0A$C~Kr^(9QK|IX?G94~&) z$BA}6TZb_so$1r==2Cqx#w9bQ$BiMWu4$V+Y(GAoL46gt2* zD$lv$lrjqxUAh;)EgJ&o<8NSGey~PT8OEyJbJ8ycTpcmD$4! zx)NOPW!g(i)Mzu7D48E^kn(@m{Vj~6DCBLV+5QC9NdK`yPBAG zIR3XUc||=a*_w{%&K{OvpQOBxrCY}-MzTPJ2Gg+0EluOh@x}~wL?HRj?}Kzqf1TfT zdv`3_&IFgZo`uX*+bY=iVm69h<#U5_Q}Ys}_|@sv@-5O09=x@iR%T;v{#c4;yw5Y* zQuxYSKBBw;4C363n=D`ND6SLfwgCD7Mk%bFTx(B}2Kk37iW%t0ypD_jHvyOfvPx;z z*wZQW_43qTahFJN)?T*&d{RY$y?j+3d_b&+(t#ZO9RN@`@>&}%(Kc=sg(TSi65@!^ zNU6Nv9uh?U!k)wZY@}P9aZF$_L9bBwH_n-K`rs*ziGw%1k)*aRxr~2F#RGo1AJhlS z6imr~_-kKa4w<&mI!q)cWMdG;K*w??6@+p*XjivP_NNsmVLc?Pt=wiXIu<;Fk2tXp z9lFII@ul}^68CS3xF7o*#5;J#b+o?Xz6jv&On-QvzvWmEWnY(=0Jst&z(R3NBRFx< z_JPcy)J^+m2p_@NY;rR17qBSaQnKA}7A-EB{EmtLRvAUu=do2up70xE#^JQ$-{1jU zfO}~FIO-te4D=r29*#3({Uu{oPr#l9nBa%_vYO|GTrtR`Z;fFoy}4$unn*;QF5a{qI+^#t263l^S67IKSr+jVceQ8JGz+ur9?zW1s~pH<8%Ig^nssF_VgWr!~ZZ= z{Yfk#A3>m==-(SQux!7a(Mm4E2H`7tBY>Ry7e8|mAy%3)H&*&N=H~5|&(trx`k#e0 zdNkjTHyY}E|BwNwHwxrfk!4T=mset6zU>#gI;I*xoO&>v^aIg2rUcI?C$A-vTfTCj zrss@=Q{CcbP5`^n)ex!Z^fuXlm!nZWB}zrFGxwy*OV?xnetttGfu@~F?Y+z&9A}mH1W*3% z!`CiCnGn~zb?npUwT>h~&EJu-2Lcg+oo;7jNK~Vj{@3ld1X6FvaB-h==fhKUUkl`L zWG5pbkYT=jAI>uxg;r&T_cAaNDO^_SCQFZf|0j2YX?^AVC%t~3-=y-o%TMrR3w7k~ z)%`Z8uKK2w(SZRO3Ecrh9mLFUBHH-4k4gDNP8XdL2lQ?6q6FQ~tGHf~brayhFfqqy zJNJWko}eI7z@Ax9CLJ7g(nw zXySQG6q>%}n&(Ce#U07z2+ri1(?OEGCP|t9%&)C;sx|#0Lwl?W<1&ckWA%u0! z5$-M36D8I7s@rO%GEOw==L{V!E_aV!GJr0X_Nv*halY}lHYB?lwN3ccOEH|5`I5W+ zq#8Ezc4njmZ(UDs=cjIbdiH$a8s`4vh11jPGI^pNDR$SA(FFw{J!qTAQ9-fC`DN30 zfS@P8w|wVf0ittwScOAq){(EVRLDD~h4+J4iUNzolc;%`o4R_CmS);`<2oQu*QcSn;~x#rJb#uWfUNHlhTg~YGTvm`%@<1=X1}?U zFGGrxy?PM~@#|7vp9$&clc6j7{;V!OnM_kH z&%#@5gBYQMbj#4=n6YSS=(`ynIa&Y=3dJ_H^}5QBE~kH$R;BS~@6)>T7TM_m4pioH zY_(7QD4$#cOyrzav={qoRTA-0Og;pvOx+j!^ByB8-^X6@0oaY-_xY?*@5>M;fx!r7 zb$kC|WZ`k>QgbUh&yPz(-29k!k}}-4tsCthdi+0Y`TL%Y^SoHqN$ zP#A&u{ERUk&~ubCB<~G322q`OAIIlbf_n-Y2KuB2gnsrw3{z7xza1wjeKm?uJoQy; z;l++4=Ed0+u*r6%H1B6+J*$wnn*BsLl;1kHX&P-9y9TWulOAq!?=$6 z!jw|+5`V{W%HF0v^t;!Gv`^xP`-fKO6KX03RE}@0NdIH$yt-7yf++l#L{Q;TvII#= zdP4+}oDqKgY6rl|ir17hY8hK|P4L{j^(`KQj7j zv|k6bg@CnFy6^GvU>PN7R3w59Q4`42a`N^yg;>ZJ;jZ?J(cMCL z5O)>bwuPMX%R(OiBu9Weem}urRqol}eSXENZhm`=k;KL;&h7StQY_ronOOGywx z2}-JXZ0~nf0mQPlZH;;YgD)cyS}VU<*{ZfRFV3kqZtwN`zTva5Eoc7?3%f+#2V{Q~ zp4A;|$(yE8-4lrR6~*)K7Z#33{U9>-hPfH9JC7VJi4gmh(aaD4X-M0Ix zD^)$xl{5F6g^y=eJ&B-LF5@HoEW=3Jx0B~%&;aFIKh@3=*PDJcer&Sey@%z@5Wk3p zZDGWhKZ6f-b*i=#pMx(z?FKpG6i-~m>u_V>-dO^_9UA$HknSGoNxbo0qa2~eHBZjv zt<@(X)8@Y1Nc!mD%rF=%eqfIJhQOi= zN6W#|U0Eq+mXcu+c`bT(3DWkLd^_but=?6D&_Z}3Z{YWh1y@}znobh~&*JcNP^s}& z1eXGL_!X&zhu2l1a67 zP96^lk{BN^`DASYPf@q|NKHI@)YEY}-T@h2kb)r#w1K;+&m%B3_q#pEs&=~O_L(r# z6q4nS0NpPy@#a?tg3dfbp$)WB4m(P%w^Dd;>;mS-dcY^^3f1@ZG+y}5b6j}O1k**2 zf-1Pk7g9ny^y_&aev5H{)G_&ny1DNA!A?%)&$tZO-!h3#rX5Sp)2(J&hR4_X!@8cw zV!elA zT8sDLQ}4~B)d#|~h7Zz zr&Nuh{`m!a_|n%d+)`(w58vjAyakoylI(@YG`CIn4LN94ZhwA@$wVCLDH7=o9gg?Y zJ|IexBag#1x%$tUa_32>RJ)*_brae`ZB2Zb%4lJjmQzOC`-Im4DsXu2mkj(ge;Jx6 zP!eA+oUV_Me!zKns2c+{S;MZZ7iFg5A(6lyKE?MDl_w2njbz4se0lMZ5JMS;#I&C+ zUF`;ozgrH|{sptL(l~nbKx%4_4E)e~TnQ$< zA1y+gbXdK*u}i3Lvx&78Ami1}6ziqe_A`w-^z3)8QrIMcbOUSu0)1cfz@8dESweb` z8httQ12<1<3BcbMaxSL<+5?sgUNKBfs zo|@0%pOk2XAX5{{hE&#Kmfm0j*Pxufk9Cw@kv(75QoE~!#3Xh%9M0Vi$HEbr#VLGT z_hWNuC%2aAOPaNhTP4QXij_ZW?kj^=@FW`6YxnK76(mzurAaf|eBUl4*TA_oIpUr& zjp}qvPR3|Nqd9ExJH$$7g3fGcpUm?y_}3vAZHoz{$6vgC&sSrzcd&=X3SA55YT}BkEfL8 zZuygYqxr@*%`&AZ%KvUM{Te!e!Qmj59nNX?`|COl%E)v@Lufv2MO|TUdUz0h_r4I( z@RcU0{>wwW{9sS?VBUwdn=j#la^jI?D*TEDmT*Ah$k4^aol~xp{dtYv%8{=c^0RymJ44i- zl@BrK&GC;YxJZ(r{2GJm_&@*PJVLo@4*|LAV>^QY-xqv=B?ixL8LG-_9}o@Z8`d!i zdo6*IQ5E*@vh#8Uq`I>RW(`rQko zXu)qDUw}od&*Pb$2$K<>X;7V;>&@5Rfvmh{xxSH8(_MJ17SQ%k<}CmUavPzuXS`U= z9v-b5Xv(DWSj8pHec!+Rt#`AL8O(zIl?LOS+8y=Ts| zF;Dl6dT6fv<^i>H^ZAKaDCC@V$q82x`}7?RT5h|#&}cz3o0d+>f4Q{%ZlWn>whdfingf>D<_bo=y)bcV3Vn`~7{z>4he*BM3 zy^rV)J^_#XoXZ|xT9p(TuJ4mK--{?6!t>HU)%y|MwqZU}QGHz7^i~O<+^t726F=;l z?N`a$fxpjLlI!%iVx-+;Y(snJRwJ{}Lj+Fzer4Z*MEP1S%v+iHS;A3%Zm#j!x&p7L zuNNh>A%ewwa~T&9%1l^D#hC$^4V+C-o&kLgPdeHGo@H{S1TpfYUUYqWNTIGb0Okiv zfq`wknYlw9X6~tCD_FaMV^!Q1-Z;ZIBlfsK3#`+Abl}HoU$p0Av7dt54&WVZiu={4w{*u-n6^HkbM{O?+O@z)$GG=B@Ug4JW3V9pz-|hq7~?I zdTY@{!&CDr@-kb%z5R(`NvWLNTFNiUqI-WP(DJbkV-xK6r(gr@mF%+&HuPA6!>!!* z)SPygARhio33>=0u8>V%em}~jM1ppnJnO!_J|Vh(s8}y*Xc}$J`x)T&J4K;_*H-z2 z=3(hEiYs`|3Eb@N_{@EY{JBSOrIx=T@3b}HUe?_~v2v;o$XB z_XV^8cDG0AkV(uzVJF6Wubj&ge|U0ApmjO&hsULr{kIzP=d3m`?%(09^p*~93k{q5 z)P|2T=S!}iPqb1LN+{`HA}Ua|_(bSez;0Yj!xE21C+!g_@k{WKVdIqIFZ_yryS1uO znyLOhV7a5)XFAM1za@V+_0R=fOJ3;aL_d14J3_N(gGdy*ufE#Gk0?5?V)zdM!9sh4 zxhy`mf`7GnabGuKghht~CHNjNUrVE~`fLw0=bf4 zkzF3xd09-h!R>}-j5?OOuy*M38xkabDuxj(0v=V#A#n)SxYbH*5y+8v&xy%bVl zT^_FSA&z=HzV;8iAlbtfTbJGuO}B$J0hwyrtmQ)x0nJ(S>@T064G9qDm-u!s6SKc? zTp9OuDg@z0UC$}{?cdMf^i3)6&xs&j+LC5$or^`tFnBS-U`bw6! zQ*uE&^9@;&q68;4g41x8)I%~m}}7IBA#i(h+(RQ~PZNuh$q4moIRa(C#Iaui|E zwkI%A1U=<+lg@;<`O|L0Eu!TK>YvYQeQ*IC+7tEN?-m&eU{fOH2fT5Ogu)!nz7JcG#Z zUuGCPZ+$W*S`QUZ%R=7>b$<%SSK`OqWWRr)uP~6}{`(y-@Q!T&&%7Il%9XUcX{P95 zk&p-E&LI%HdBbgQG?jc$65B!zs|ru+Lao*$>E1lvV}FdfA0>5R^0lA1M*lP+`hNA^ zX5(vhca4M{1`KtR^D`q7jV6q>gDBAMiyLz9F_8z}y#k&gFLJ$%0wl}^Ar@a|(=gmZQ&L?;c9EB_j|lfh)tr#s7i0)NhdyT-HWS|`dl z$o~DXZqoq@d$@dy@NFn7Ex7kKpx$Q;mmrj2v)fba&D?t~ICErv+T`Dmu^m`tSljn+ zyIopf>XsYG8J2q_DvNjq$-xKxcy6iQc(7Pu6))kjta9OO>=G_1#I=2#@R;=+s^&y-WJbKh{=WzLC3fj zSnzj_%ALK)E1&Uoahb~8wBr>;rPDw(jY?Iw+ASu==5u-dT3lKNBDwEgp1G3KR5yQq z-6=L3|1hdn-S3>Z{UU>RcL$JSqzGLb>_cJq$r3Siiq?POFStTyKdf@bChOPBes;Zq z{7vuMFCm`!on_S9SZEWvg0|@{Lj&Mw)y!q*(b1CpwXgPz7hE6Yx1Pg4*|`q3O0qth zt<=^^W8Ecx(Tn?yN#jhPe9o(^Ezxm=Mg_dnAl(nI

      uauqE|fcWAIRs0ImI@xeV7plTSJ(_^32W(-2iXWWm4fG*VG+-E8JLQ?YiJ^dEE z^TEAq&2Owlqo3jlw0g{AEKtp%a64Ghc<(1F=Y{KU(6kwsgi-$Qs zrr`u8V4x9ZsZxCkQ?nIcZ`?;WwStR-Taqhy5Wx@-AViYOC~(?5U)^oC~+Q z7w5#OHL;f{Qz72EC%5X5$NOGSOZ{d72J;y_z(A#`Ki$B2THnIOjnO->xSvZzrZgtOGGJ#RgpNRi-pfvI-WTRk!8VPF0g>iZ@LYOl#aHqCQD&(|i&kvfBohs!n zJP8%HeIo3+W<@}IYK5sbJ8NG#x$>W{PjF@V{G`aD)rH3$?IVNPLmiq;l=TCF;+8^0 zA1_ujsrjo64rOJMWv=VD#~_q-)$>-~UVkwsL5c;!~~UW36$qvjXH3-J^9 zN&g)$S`h?rQ3ikE5vT82eeWYN{*ND#N>UH67fedg_8XY4%FAOSLQHMc<(k3v`1J~* z?=Qk9EJ`0@aN1Wt7ucF7(hg2vkvNN!1J4fPA^}qE@1bOoL&)MxH5?TcN|UkRQs9{o zcQQYKi#NoBu)IiuR+U~dBf<5UWVNqqP7|;?iT4nXJj<$}6U$70V!cE*jIG&^wA-eM zNddF4H*(0c0MQzZJf9^>|R4ttZ7HldTs z6ffbq5xj%*9aM&orh#iW9DG{Q5X`ebFj}PtT((ZcMA&%ymQ1%8Qp?F6Z&3-_+;aL` zK@Gj2H=ffIhfPG$bVV4nK08ia2UUSLVcd?g;YW=nNg^gZa-wQq` zT1}r*IQLDZUPHM@cEm=Ht`3(~b$Q|)x0DCE`V5Pdz45;651TFPtAHC)eAMdo59Bh! zCDUGZ`w#I(Df%W5M6PJ3;8Wyd-`wS1yvBLynOSa=s(wq%BlyOwB*%ZlWoF# zMfe?p@yV;rUM58^9^?D383}6fG|}nxK?rMhI}HbDo51D7!;sa*JB5Yw&G_a{z_2_m zsrp{b%X9)0=*-`yDm*T<9?;oVy1JTOM+&mvFfYl|d_&+4nOTCd0(rBUjV@~@c=6OZ_` z+>89RLrS>f;&1^gYR)QP!*iRw-zS5%GG3vm(0W6 zJ=)Hat8X-MUk-&o2J=gwZ=l*IG!7x#@Sx`vcPR~&#n;Xr%-YgLR)4fD#QhECQzl7| z&c3w%psiNkKH*Yw(f%ic2D|uP4%zYSckEdT?D2s-+Y1d;$+>-6H((dDp!j{Nr~65` zw3t?tHXJD5DM@6_pQpHo>cr)XoqO!-c|5Vh%@Bf{E4Hru$(jOb6eRh+?2B1(E(PYP zfyg7RLibn|2$v!lZJ`MXZEOm0kD4B%j`v%nq01BaA0Nq;IjWETuo!Yd0*cGHKDPR( zvrXnU+OZ%*AB`ck2EUZhw9)R&`W+lJQyaCV_V_z=yya|0rEy=8OWA=@0VN%{Gowq@^(WJ ze#;4$Q*pbo>gC}PQt548i^h8xRT)4t{;EUzK`)_+YV{vZisd{40stT0J3tq@780|r zg3{`qoLV8U^7ny8^qb)?{3Gep=C{vSbu9`lH0S*D#;spJUXH8i3-o?VFYT|7?&W9S zcj~?uWKZvK-@W_&UP(POZOxnc?S~8(ws?v1?hC9#a(Y}xV$Io?U=yT#W+Dk`q#V|_ z&Iz9lPl{9JzI|%-@BAh`XlU5TcDP)_`a3Ouw-`Rz z7}of|u9DB|N{F97*PL#=yK6S5EC+Pdfhge`Lirtf^kauqYT}I6x!WjRi?$_7NjNpS zbH{|wN|)m{*iTA?L7qHHj7|lU)a_G>PEI<~gc0S^KeqTbFwivJt5Y5!#+0a>gN;4e z?#dw?&Nl)O6p0^~Q^n+$pOH&}Hm<%xlbie{7&GDLRVbeMSNWN5TSy{_r~SO z(!f2#=`7OfI4{%1kAjl&Km&GzS&cz+=t+ml=TDq@+W|L(_Qu*$*+gL_8t!^4hibf!zFhpFzkB zf>BM~k%@gUhFhX4SgEn(x%T@@vaSzfKilmWKiQs)%f(nk7Ab~puCFH&UNgEOJS^zn z`I!SGd0)vj;p^7w^`ExiyQ}s$ccd)>q~P)T-L~s*pASmaluPDjoiVX^zk}0#@`MvF zTF##Lp^NhgKMeHwa@B!7y25D2ltx|cnemdx`QN@00=Tu14LWGJ5DgLFHhEvZJU&k> z-&vTu&=QPf-22yrs!``>`lbC)W?oVd5nrweBO>o0*QzE<({8!zy~WJMuM>yVQzyqRk8GoPFRhyWDML#_)J)j ze7@o<%Nh5mSJU}IY_G*e1TLB~H^g3#dHN~WkMXOct?2vx_F!bU)_yPbU;sfogwmqw;xg!N zF~$Z=;d_V6pkgg*E$KSaW9m<<5TqG=o_>>_j7wHbLW@Nm*_2lSB6QcV>O=lzLF>_s zdMU5h$G8U=*3H)M;{%XE{DH4kp)`E%^P?u6qr=Du^2R7e_89^^`MODFEMJee$(EeH zH0}_&W&9<%Cx9^ocjWAs)KzYf!zZ2o=sH$vv2I{*C*Hn9p6@?aWHAwJE@>O1fViD5 z<)q)Ym80!78;dqVGYNyXCm`kNmLhmM;8Fr-#q{)U7CFluE>XQl<& z7yqy<7#RUa3di0~!71(pwMxS_?I^&yAN$Hp8Ts2jH8OF#o{W8M`MZoc!6XOmWj^!% zy^o+E(Bmifx}~b|*O?iY9*{Y`?{;shrJS?lTp!mfHS`9n&Z;IBo%Z3QOGopNF^Bag z+vL8A&`^qpl&C+W*Vob$en_T$q1?7}U>aXQNV-&holYhCPR}iUy8<~>0F1gKWbsrH zGXgkPb|s7oYe#nPcMow$5>T8;DSYM*3k7nndA9tXbmPOBtIN3K+itcuIurF=m!Zotc}a2EUMo9KGzF4 z?Lqf^Rr`e8Wc!6mRepBehwfU4Mz_tXr8*OG-zr|gMGe|B9rc}@wJvqt@s;m!rAbn% zbVqkY>@mRW@!2$kFboBGZih6JhEzF46S?nCuK}R1Yv=I=74Ri=S>Y&rEjKujR5#Rz zUhHyag@jEwN5q@h2amEX&L9B5{{cRng#-eFMtW24(&_37k!IeXr;;yl%vtC1!%s?C+uMA=w(oB%mw0&N z!uz3R+9gll1hnSSjl2kD4q(wq6PB>b`AVEc`xTts`a*v{6nu@D(h(ch6lbRWg(Sqd z3^$8F*^Emy9^RMN_xPs88C~IIEjVb4gN*6o(xltFf98^{@!e;tb=aq^kvd$TVU=ZBU#o*ykKtpz9o+J%N$}l)Q()js;Us#%F$MRfS6*>@CX2x-m=LZx1 zwH>SYQ(SNHGe2GoMKmObF-su$!3ErhbW6b-O?_Ov9n*A32IVhIP>Mi-k}wl?#fe)_yY0tAQO_-U~*E@!X2(VCC+ zlAm5@kX`@UV<)D{*KEJhMdQ>+ps zzV-0wp(85h64Y1Pul$_P3wF#d@UaRY4+U;c1`oLhbmaPS24sudq_c>oW#Sq%O_~)hibB`ouXHla~Ew-e^kA3 z3}byk45PjXG`*9P^6vZE7|u*64H|8*xT!sAYv2Y8|9Vut3RU+G}B0h_+}wI zVh~5_l@~xWXY1k5a8BO~?r6O4DlAa($t=aSU=<7I^KKFo3)cqGgBiV(#Z<-d{KE<_gG1>AFM}s=UJ~ajS^t#+*#N$-jv1exqM#tUpASmh~*ltv|lW(8*|X+3%3= z)dFDVbK93Fzk4g?>KMDle8E7)pTfR`n+#es@xmL(qtxSTlY;lEjtxqZaGo|)N$(r- zcqR_#82)AI^H8^Js&c#;o-;5lknsWxRsH>r(ssP2W<>bDrhg8NG*o`H$AP2KFIY$& zgX4iVdf7DNj0!>Aeq>iwgzGd-fzn${6}%L&i8sh-jFy`}`$WuM=zZd%PgMGaogi3i zXQa_ObXov&fqU1G;a+pw4C<466x;g-YS@VOg4HJ*PMisb9>Q_bvjmtKR< zhb3SB{B#ch?122D{I*5h?1NqJ(eY6>JOBPHv}5uLkJ0l%)R)ve&75_thVdS5r!!h_ zym-H;YU+OqH-Dbb)O|Xh3idawdq*d$o_Y0YIrF}%IKRGMpnYh2&VI7={954@^_M&F z+V!^aTVZ@)D|Qd!=A;ordik5LuN&&3zXmwRmEvCzk?{6ONpBa_N{B7G?q5;Q`rPQ< z$F$b1S2vio^LgP!F<_9%imryV(w#_*(aW-JBS(W&2kE9t0GQIYpT%rQwKDTWbb6Bt zAumwA7tr^Al|#PX73>=Kl*U5|r2OPI7WbR&5yt1!U!vAjiS5$%*foy;rIw>EA4(zF zSScQ|;2|X<&T!(uwIROt^Lpoq3K4vBFpM+(sVL+V#qxJWDg1*biMC57;6lcgejQB5 z^A1^f+A9d)>Y}+Gu-{w!c@?A$HKPu5@Ay<2(L1?AMee)Q-({wLK0oaolekkWXFm6s zfmY%|iI*CZusvvdV~l2XWFhcRyuP*o8DK~bpWFp`(C}5acFNk22@m{N&G|fz!XL`) zw12W6X&3QeasuR%I8!iL8?qWVYZR}Sd^>$9YkKlhJLQqEs!w=zg-9@X)_8K|75&3% zaCGsNTXMS{xf=@8*8R{6SXCdHIbVeRFg&mNw}myr>^_gu12pxOf_qc8&HJByq=VO|=lDfvG5oh?W)b$8JSR_J36qbPmy0uz_%T&H zMiuUbZ^$oh@x>sG%Pf`Eh86*ijLc7k)_Qz-j|q|ulBs60yIILcMfYz^A>^^W*RaH! z8cz;l)EQ2J+>Q5LhoKDmLzY_9swvt)TsXFwA&Ws8_agr;1>RQ_)$NbEu-)Osv)$eO z$~$1B5=l{9i#^vXH*5BG^zLii&ES!OH|i-$>pU!@&3f|7A+t&A>+2h`BmHt=Xd(J} zLZ#$Lplzof-2%CozoU7t2A2AE@*h9=?8co3QBSK8M28 zNOZDKdM)mQQGALo!|#2ZZ`+~8EGoJ#XZHtq;e0c5nSMJVf!)MJO|q090<&6|^n2#* zJ9>@A@n=un0KLNBswXyYP;I_uYQL8(VLzuQ{pXyK=@6AY9pax|>+){C0aoIq{W%3r z+DFuP%jQ`sK1=ePUNEuI>S`ko_cx-?8Hid$0$`iPL3g{h3Bu!wjOlNR$rRrXE`KQB-8xpb_%E^D zEQY|9K?11U$urcYJ*rgR>@{+|ytF43K-Ej|@rsTuv#LiMTbHJ+G#pe=|KaV*rGmL~602NCr zN4If}Oa=L7NAF!-AkyqJppw$xY0;YWfb#fHb6DmBGak`8bSI*PHbM-LcT^qmiOQEh zezHYo!awmjZOCLMCfabg^ypzokM}%aE(N@%vZ*_5$m@0HIo7)U+M(V_COr0246RZC zmRDslYT{TH3s1^e$xM-qdE6n48D(p&mV2Cq0H;{6=V zzOBt;OSX9Ae*N*Y+cAlUdATw5vgwfg^Em58lP02P8HoyBCl$4q?P9ZPYBYwsa<|cR z{$_uUm8%n#@L8s%)kXj2%kEkuHkY#AQ!;;1bc+F>brSnvw30Qa-t+G6p*u-#cfy`m zSV5cQH-w?laDKgbE{tMQhw0byFmEh?z*ELj$m#tgt?~U9T7{66RII`{H zl44Pe{jBj(K%13@JV7dyHw~_C+WNWQ7-r(?_1+HPVp@zsUU0$GL zo4yPcas2&C0erY&RTe#mOB-9T%+($}X=|U8dqn^4{H&gRa`*h-_!4*|jpl`2_SM9Q zoEduRIYo%}x;489yAgp7%LRf%E+=2U3nd=+D~^9Q^@xJQdJKh%=-5M+PPz~X%u(*o zbAzMoV6|+Z3cOA**|<)SI?R1!nOIm^Nw97umVkK9^It;a=1zj z$s4cLTq5S`^LH7TykdC{r-OB`$?s`;i*cOp1HZyVuoog-?k)mDB-dTwgI4nZBD9oq z#F>`&rc_9bf7C1ZQ6iLxhZp$DN|%Aqs4ovqQv5;Je}VvFC{9NUM$G4Zh9LOpL`1(& zqpt$ozAePD_@cHT)}Vgv0YG{tv~b^qsr^Mz?r4pG{-6OC3OGEUULtMsiA?C@PnB>@ zZB)V@_cH^>g#4sa)bi4eec2{j)%BgnBWDgkk@fng>5T8%T!~m4gdY%`{8(QnxYoDa zu$A1558rR4eay!HNEuz|`<%e~n_$)g!_cX7%Sgw|0BOJv_m{pMVFfkz4nGrU8p(3s zC*Bo+z571>%x~N_52LpnIdAowJ(x(7iOL*?qn|4Mc4U&bDDcu#k$)6IDwhlUd(bcD z`3kXeBy`n4ZzqibIs+dIh?^ugiCv{_^m#Lfn7A;on|K{~&3u;6J0^rE?P0jpHT^cz z!8v&EJHzXL?Zv_1i*^=WnBG@6PGsM_fEKyO>I@M}m5z&xLAl-PH`vTq3*?C1+W13D`(d8qzB=d%{%QRAWjvb>2A;W=@WQP zsx~cmOx4#(eB2)pW0OXJAjj(sEZW5j!JYlIEQs}(m=pKdbejc&o}7By5&T+-%5Tj# z5?_ffcm%_6**rKJRc|*Wv4j*$!n^6&h!0xugN3$-tUj^j)%4fTS!4{@u?X!h^YNP* z8s7&m==oV|yp#Zy$qg;U^2ul&M_9*zt zL+-y&oi_*X=ncpeMEsvzT`0^_PQrI2yyXVX9Cwv^JPDI<@pZ;3MtkhNVL8p7U4ouqk+r4zKJwgVh+UmM z$*fKr53JTa>^lH(^_|AcMVq+?pD#%Vk%?9oJb=0UuF*(Wndh@DFu?!|^nIV&b=v>Q zu@J$eE86?9Nz!ii&-i7JH$?T^@1L00T1tbWa>5lNZnNfd`1iM!J)NHRnQ(u%5o0wX zUM^Sjn4V~w*@wpYZ0+w$+kGfH&=)7sjREz%2nhB3vfp54Ha*d1T8_<60(?T1;U8w9 z$o7_l?%M2bFl>sclI0~|QwlHi^Hsio287`|}_Qh}g7#4Y64~)xI1}#Do~&QXobR zPv6G5`&pGK*X%pL$Ki$OH{mV7M)85_*>X7HcBAg)qge*GS-)t|AK-1BoDqA9mS<)U z!P^&WM|D+>n%f|UCkA?NUDuyhNeLK<1$?-;qpCip;DQG3W4wsco*w{!i_v8c*CmV7 z#9G$i0VHFr$OeV`32-d)>b4#i-l}&sV?{6(GH>?6ub^SIYDGG8v`B~j(;kYbs=kbN z`(wM4X8%~;B6YJo`n4pC&pPM4X^Lbmqxf>EkGbr*KX<>@6zWW$pl?BCP}AkxG0WAM zh9h_O-h(0$Y#Q$22?`M0?rnBa8nTy{MAGQ$G;Wyk{c|*K7;pfjf zd6|Cs{d=DP1TMN#z4Mu{X^!mK^oit%LqLL|g*Ty#z;1Q--gtmk6iHlLgP-sWjL9!Q zwQgZ)vJ~~Vt@R#OAl)9dElm~yF-F0nC8bP@r#Yq~4`ETOMmdrS2oP9`zC{gOE%>jA zuaD2hXaW536DWFrM)3|%%ShD;#~{AmAIe(mt%x;TF_7769%Az52{b|04{P}1{D>c% zY*xy&yK6kbN5>;k`&_AhhKL+;8GVTkvLfC@xb=0aB`F$^w~sZjEGmB8`tnZNxY^kp z0v=O@KSno*=+xuyiqtIo{=DYc4XQM+kghqdcO)vM^dZxA1oKDXeIp=rlsH(5d@f&3 zT8~()Li8Y8?;A{h&`vt!>(5a0d$OjL3wx_&^MW^)X2VfEPB9EG+Ab)-$>pccbS_v~ zDL7+I%p9Tq+@d?VPp&Z)6NXtf--IJ-K#@jN($B$AZ^pr!kGW0Ypy36d-xqiWL)&sE6uJ6>Ar-zFK<2}tSB*{;{=*|PQH>TO zdekm47ai|-{Y?#&#;omfqapYDF&UpvB&X<8r2?!U|1N_>qt^s*<*@04_x<(T&G3ri z6R?_*67c8^^8nb@I@Kmll@N(o~-3mEL8DpIHWkQW!g) z24yJbZGBm>eY)X76ay|kmhbt*oH4`yzOddBz%;htsd-Kmd)uy+zg)Zb#x{GXD8j1H z`FtGthPHY5OP}C-32^XPYnwV-Fxj#=HX4`xex+IVD32rkHEs$~11S&Yq4evtJ9;N; zX#OK=fA!&Va4+#=+>clFVwe||GAHBlJ5rUYNaGvkodjNYAYsmUJk@WnA+Gb&sjues zdI-#pf>PQ5R&q(@R8mg?zdR#OY0Sn1yE zeO~AEnzUpA5~yR^`=-JXXvR$dz@(V)Nvh~Dg0|pEOTn!Z<|R3++~A7)8 z!Ck0lTb&PE`PQIyllx3!<=?q_wy3q@7_jBIzBE_{mamM>2@+fMXgp`ph00^N3l}k& z8M|=Eb$$zq-gFF^;Z?1^L;(Rj)*Nnt#@P25n$EG?k7?er_C21!(%9pbUbd2h8m)he z?0$m>^uXJ*AEBZP?;o4#34<9G$#b3@x2|a3H84f9nUeV6Q#_kHQ7FG4P=tyG(C$K1 zO(m(`ah9cPc1B0j(xpcVs0dXQfTl@NwLl4g&3tf)pUl!pCM}!Nv7V&cqF?1AdfLqM z*VZ1sL!H(z@-DsQyx}M$Qh8#=kLE`*-}gZYo?QIAxLwkN5wsI6*@w_!|4zNe?3q(G z^51c+PVXirigw-M3~cEKjS|vRNO@WXI{Rmixo3AFhw1^u%op+0kG#&?7?}3j4E&io zu&4BfeAw?zf{{S1us8zIC4zW3TCTPOw(vmc3-5;c`OHmEQSpE3+FkR zh*atW!h9XQ$vT`Xjh{(cB7mbc#~-z_KTA$<5U*?ZW>ocQrdmkXN5_v!qgSmk*%w{- z4uV3=5zjcg=H)}`6U*=2cH%Mc0{L)SH`<|1J*JkPL7y&;hBzOO``ftUoz;Yr08Et` zBMZCM?~5Kj`9xZ`$kzyc*y9*9BwK0*2(Ix4z9RPFjyq=t%8jsBe(t9`H`P0Qler3* z!RBOQrT-aTy@j`4wx2RbI_}<k6zn~FUpK2{}qY`YgQ5v&A~gzc)1lS_aFU!sG)ML{F9=9gCRKTr4j=4CMS9VzqKy$MIRAnbPn!b*Qv7t^fF zs^bVwK6m+?42Ys;uNMa)AT$}gsVpiOUVGp(zNWq>O;`=;ruHyN1E}9oG)a7|w&$KB z&P;8pE}y*8FJ6Tdb}cCmY`P%3cJkRoN^WdQi#X+SF4!=a#)}+=N4weE#F;y0#R>qUbM?!=p$RM3N$JNR+5Z(yy;g zt?B8mpoqx5C++ZRFe@a#lZpw0-=6oV6p0P3d=LJ{U!Svc)&l8}Q7#zdc!m@UQS@mH*K2e>% z*K74(YT!pM1@7>jjT(WHE6mek4!v#hmS$}naO$#xWmVAMyT`!WXT~fYnD^OYq%2%d zIgqD!2X9uodlyqJ(tB_XF$BdA0@R!^5TKh}z{HO6&iklr)b7gfwg39bmXWR+d&=e5 zfxx3SDvnWA5Y8F|Lih8~R}1y~eH^)I&wn)ICEqhlp^syrTi!}ry)UkFb9!OutVFDO z7W0c=21(bFt2Z6p3(R~9pXhBi>jq0!P5C=rh2xyE#;v^vP5b%Lez?Nk2p|U3Gu;aO z4Mb}rN(pY=1^&LdVgMqVTFYtQ^^}v_Db}KKPCK5qR}$Qbq2#l^gG(DNj?4iLV;Vd3 z^;NxXC-TmwZNK5>iyO%$8re{N!u zgFp|thBjzG;DzZ&X?@IUbV$E?zQ{U|JV7fElox;Cn|8`L#%QS^IAsiZHq{N7qV=@3 z%5N!PyLcI-Od|SAm5Gp0%)Q(KN#s-n1aSbHYTx1QGr7SqAiW!Y-Ym}Ki{!MzW%%|S z#9p#(2S^Ac&UZg^;^T$UB2J&F^QEt;k6vq3hn}k!Pr(>=<`41YJKr(m!FBoqgL`W1 zQfukUB_yQF!nD;J;D!5-&@6_{`m7Rc2Xt=k=B?k)j2=wY%BBzSnga7tWJJ!;f6mV_PWoRrKhF9o;Cwtn*)>Wi?=@ZN2iky$;Yj_gTBh;>8M~2>1K|4IMyb z^}eA2A&KyiAgF8WqDaGSb;$j(EV<*f*d|HI#P$9%oU)(w!*<#1P?GBi6%c5r;)U^n zF^-^?NL`p4-#puq{p__j>kzNpv*}wTs+ws0HsEx=-ar&*df!L|g;|BDlwNw=pRUKA zJRH>eGkx#u5|@)OK(2-pKt?~tc#ld!*$`efjqHbRh6j?;O3})>3Z#7i zpwSmgQ!cmc8P6r4Fl>2~Y}q${GZWSg>Bv{Ak?Z#%^W`a(JFQm}_4D3an2`K)plH#a zE8djexteBsE%D#eswVi9eJvQ@^T#YZV#Wk3-;U|-JuDrVR}{J_Fyu{&Zu>OYVmAm| zwn%9vOoIq)@Zk`nb0i5ignaj%#v3biS;EVH{F(QC>t5q4?EJ_6vBa|42t+D2X{Ac~ z`eMvLU;@?tP#@ZP>I!8Z z37~uhdA(1ukF+G+8Ujm=HHUV~Ef!JDzPw z5esmqGJ2sn9&)n(-9J+|dakXerGFitd_vzhR~RoK(!a)f} z+8BONv15p#&p%wPNHr7nWg5R(NEJpunKc+s`!I?w`0K)~D4Uo`}zAuoX&%rYk3v@`E#e3pubyj>#@QF;X#? z>%-h{!X7T8D}bdr7b7OA-vcMwTI-kcZ65>VUChVMW-V>@IfCu>FP{FQ^win}QNJ+u zUN-5zNpjJ1Pp^Nyd50M~m^goUNJ-4u3$yCm zF<`nc|5^FZi0pAw`c#ILf*XIn4Rnc>z1X$j%Yx%e;VLz-5ZOeqsc zx{S1dJ9js!l8_SG>-($1Rr>xEB4QnGD|Zo%`|%whPnDR*a7<1zn1W6q;0(0mCC$rq zvp&};0Z80)oI?bS`EL$)o6sPfuLGZ2n7nk6%lhB2{g)iLipP2ylG!nnI?CXV*FT>m z0nX5S4|v3-v7sn2cmAYwkX-}G8Si6X(-F52!WGtZD$tC#2L|w)29@2#@8ieksD1wV z{Ea<64^4tIZ#0+cMQ~jMnfTUB3#Fs4TXBaFV24N%j38-UlggXWewD`(`^9{PW$^dI z#IOz)D@Q*jo2|n@#b;1HD>d8J>MSP=kwGm@I9`me8oN_*Bwtl^H`GIRKHS%OpvnW;?nN^UQOJr zp1Nk=?j>E0(smoS)S0_`P6;zJ-|h@8IU7?}A2f=4GCdTxfe*uTW*M6MJ`qCUeL}s_ z?Uw}?(f7wg3Iis~ay*bWie3rR53R9%44^F`i&bX0oArL}A@6>v-i^&P@!cQ^RLg1# zRme84Q|-7N@?O2dqop#Z7z5Qck+q&bc!Y6;NDf4)RCXbPbycsX+-JM>vC|#@YmV8% zexQJ;jg`F=&Ru_$(BZSgB($ujU8rOEgjmHOcT(kk zZyf(g0Nu*3Hb8jSgn8m$N(;#peMxv-9Sz) zBJ&|zRhgob&+jC>Z{Gw+t6Ed?^Hyl%^bNS}4ou^?3cPfwwK8fvAEshUMyL|}M_QL=(VH=tc zl>%Xz`S}Skj2`lHy~2mp_+2g#>O!P8nPMQu({m7tr{XjEU0XqQPWlMe4Z9!-`@#_-CT zXS(&m2)2|xMvd3@xtDkN(->2Cs~^=7qnj0?NNj!Upp94&=JjHA(W@592|$F`msnn2 z5Tz$)W}vl3BdT@hFRTP`jLZ_IE^Jmv-trhTD4yc7+Wrpgv{}!a;%C11h0WMJF!_@a z3HbzA5t4*6T)Ms>ptNQD56J)kTYPreVc4(Z&8Yi!hE@Gz*bn6`NIj#aKt9CCZwHvu zA()P6P3)vzb<86+9``wFZE30F*<@AB%;_JP8ZJ~w-bu$MVT_Pizq@6P z)YZ{JGz!50B|4dw<>T|vvrqQ}@;xjnumDGz&K~SRGDoT9qUHE|sHqyhbik0i^9tU` zhjZ&olxpT>@E2B(4QbK=TCb^c@l4*)K#)_&lKmH4lp9W+SC!OaQvU(D(*{N`2ZiTHeY}q{UV^X zUJ=cq74d4Xdm$fBPkKL%^Kwr1jucE}m+Wxx$BmVl>(*J%xv}nv=hi_pc9cjqMR7OU zwm;CzJ%>%5%qz4s>uwDur~Mg13_a#lrR`*emsg4)iYm}alba=Z^yC+9kQ?*#D=tcN z^~c|ye*yEX)T8{tLlu>TPV>t^ms7ldo4u1_8WiV*{U$c+&}?Vyu16%qu@0jNtM&{O z({nzt+trr2)k32Z(gb}qU3JLBE);9yYF#ALx{4I2^78y-FzdRx(A}gjUL%k-I*p3q zvFhn2!r@oUI~w}XZ8dVA_$b8sJ&iQ#v!B{}5QCqUFvWrBehvAgQx|qa+}%IGDFjKb z^xnrS@$78W!9LusO8`x7^mi%@8JfA)EX$kKx2P*X*s^*Kh734BOxrH}z-NG)d~>-@ zZu-8l#!$786D31WS&`=Q9mf^Yn#*BX~-o55Qyt>5>EK+vjT@vgp*g zrm*GHQqMx3UsiHZUoce<^qKb@&Ue!N zie07aoj<%!{v_B5ESsB=|Apy&C$|^ImmJCKY+WyQvIpkglC_iQvF`%qKCg%0Eff>b*=q%z1)d>W=RK7K1Hv1Sc6#_C;|a>GvDWH3Lzo+kRcrv zKqS54!Vv9-4F=ojqj?w>oKh7 zF6ZDh;=7ROKHXI_U5`7_%#^b&OQwndid3T z?*_pdrdI8A%;i#NL&6BLA+Ykhy{J-6Q;f=z;KpwDxhXi}x_(3RKz2NLJi1)A!MXjg zw_a4mLKl+3{tL>8@*WNW48upCIK4Y2cj7Nl`C;+mn8AmuFCGr4$_*4Kn41UYnOchb z=K{{p|yJ zmE4>BdSoP4+CzE=kh)fhdT6bd9Na4!y?^#)KZQ5*Gt)ZG0kXOCl7HDu>_+19qoC>@ zP8N#5ZXf)s`W?vWO*vfe7{y#iXi#)6&1K@@#Tlo|v?oQ6o1%$uffsI7e0Yl14_Mgp zH9hw8N-te)^gA%>MeJ{1k*kH5asmD(9 zh=J~*tJSk#5jyY?x(`3(`E)4mPx=KXw*ZmpNW3mCE;$1<4kupQe!0xdZQBm(i@Nre zy+?=BOZDlDglgjRl3=~1J1g%$psp%6^hPM zbiN#aAHF`J>$ix?iiQcy-t?~2vC(GdvFCiZ!=SMKDj#A}8ZOL06JK}pxFuHo6P&n@ z;E_rUAST{f@Fzx}zgXSQ?DKf(`Z%U4V0 zzA1Z3eA_b-I}#ZT3c1fZeB*-RjwFi2>|%Q#Z%-C~Rgpi~;es!}41|P+nVG=%+KnHjy%ugw9`8VvdLnVv-@Tr-_YHT z+WQO*FYjReg6*>xA=jJMDxPM)yzPv(Sp$1RaE75dB+1)3G-sBz=r?Zy+HV`D&OK2353xB05T4*;8?3>!R~BB}@t7 zO{?rM5;z%Yopp7Afp*0!&Rf-Gqe**8i;my(TTL9$o8CF-1u41aE-`}hF{ql;vgvB$4fi@*ghsC$67tB$&h6Hdgu2MJB!4!_T?VdI!Dh(mNlWP4P!Q@)ozlH6?+T++_cFRCBzGUv#X3<9q&~f_twnM?0fkXRq&+u|_eLl{Wo! zYKv6kT(i4LGF{LTe(-ynbLsrQmj z;#9lGSG{%R$@d9Byr5HX|AI(xlm@cR`|CAHoZ$C(ai_gdaOG>VfA%u4*zZr0nl+E+ zZ~@DB4*U{!dh}oQREdX*SkV2JHcfe);4J55(%07^;rzV1vGRG8|8r$a{_%J!mL$NR z(EV}h923z|=J(q59z0gu_o{GjIp;#Wjd%O3qpDsg_sksb9|=N;a(<+Jeq5gey%AP9 zFEaUE)4p6j?`7PPzG~fUY_oGKz=&-ml?l}rY$56V z$XS>RpPDQ8%94~a-l7Gj;~C8w_0Sa1Z{4eWMly+HO;_Vte&F-*aBVRSaKBj2;H*&V zHLX1miMf4bH;HL-=F8@^P0Y(LgUaY9B5(!q045SX5DO*wCU-J-1aIx~JZ&4zUODbT_X{c|vuls>c z2&Z)Z5zU5$(Kk9Tvp7Cl+)Ygfm~Q-d@%^yNDlN9PDD_ErL2v3epf6~an65}c?EZxm6lRI&ks^?? z{R-88S^qIjI>YYaAo=bucaBW*r3L@-W&?h#e_f%m-Z{S2YuS+;?(5hUO78j1HtQN- zwW^87e8pl@e|LeS|GZYPua>bQDJfFOooxjVEGdB=H*W_y4WVwbLjyQfoo zU**iu{$(ArBbYJJ2z$hr*mpxEO}C6FuJ*?Vd!C`qk)UQgGaLC zWfQHHU?Tl^yuyv@qe-2CnX5Odgoqy?%Ma}#M36AVuU&Ga%Zr~noaY|w`bbi}wh}z| zgT2E1d(X#)E`b!%qj0mFdkg-7el7|)=N;x#Q&Kp>?0F71it#=i6tZ(Tu@eL)GXOYd zjOBkUCO`zU;Z)RgCm`>IP6}AdsDN1Ld#bSE-g_kP_F-RHSmuNR`93}U!yCE) z5Z}cR@cX)-3}VE%NWDTE3|M_6sd&o3O~(00y6U;Smvx%zu;M#op-3h3)s|}~H_xpl zkgZDGiHpCVV7;$PSgFI%%WQ|{$hzlTA!U>S#FaW|+6N;S9;?Z_-<0~B9wt@M$1tPr zIh(i8guQopDae&*e2HOFYW>86Az{1$kC6uf#5cGE1L#*Xd8R4 z`4qsS^_ZjZapRyRKw$30+UU*^*hf*~NDNy~Z+cO(%*5O8|Al|y`=?J?#2z-ew z2`Q@Z?)ZN^Yi^dDh@iExCG_%#(mdo%EJ86dBSaEkjINgWJYL$P zd|I6WW&6SxapE2S)dOvgcr3j%p6~*D8*w0_n(dHVO7c56|LR_P{;-r-TU53^Ey6>n zD@&%Z8#^UtN*#3;vSrD>3WGD`mTzO_Lo8bnmdAj=Uu%kE{r)Gq&NrSOyb6OJio6m}Vk735FGVO@QQ-K>u#qB z0tpvS4%3T#UB~ycoRhWch!mja0o@#hC+(q~9`Z!LxAzQwS`|dV1d7Btk#1Lt1-F`h zfgxp>XSh1KOh?_1=mh`F_rWCZr;>HlBc%Dw`8Ss_-lvo-uj=#5S|cm9N{vV50}gq8 z;n8zZYrN0!khnmPyF~#MfHD5Jzb-Fp245^|r@A=`J#MzJT74!=S?zo{eB5-v6DdYC z>EUBn%eUTsQ1;&IyepMFFY)`Wl=t5PQC%}OfM|aagpgC;W02MJ2~ESbUS2=l=A3?G z4uE^f}odtk83Q_qn2O`g$ z#ET2vbbg(n4O5ga$x_y87yMFTH{gDOsc+{c#fb4RolLHM-Z>czXzS~EXBV@VbB4KH z^B}(m=4Q+(x~yUqC+Y*OiEbwI>CGwnl6=2Rf5${;`5fWgAR!?>&pj!c;^hs=d+)CF zRS(5t8Ge{z1>y%cQ`TPlUQNG=3$O=gPRVuX0^bX#uC$}*`Ek~!0MOI(D+_+>=Oip3 zK6Fs1Y~gbR2iipQMp6~;S-=GhHrZGR%Mu8a;0Adt!QbO&M+pgkO`+G-!K!bm&qvr0 z9IiKC-*vO_fY1qs3_AKFc4`M+-2SUe34s zoj+{mzL%EAv@bx@;=wvx$jYkYV(9!sOVPEN3qyaa$Gd&Z=;wfzisYU)#mte^L#@;B zFy4X|fKF%Yfl@S9`4H7$Qy-|Ww}H=8;D%fT_2NeWtQK+JuDwcOjZ2+}*M$u4Uc>0| zGVIyWIE@fJU7*p2Z8ZS&QhSgQrw2;$4}+PQc2SH}@%0-Na_@d!pXGh+rIvL6 zvWG4OwsI;AKLa2F39?FWhL{gSY`q)@j=wvAi0=4)&keLe=1r6-`{CIN0Kon8Br|BM zN%I5CLQqb<3CURCNHVihG#hRL3#Kr{$2#$?+@jxQe&%LkkE!xuE9SghaOEYR;*$Ln z_Hi`TPY1fZA|q zv|iU68*g3mZOqGY-hLQ}swThnqV2b$ZvTkO1!Oll{+%<1K8qPLSQT_EPv!H6F<3Us zWy1;QBVAl*`?Tj5^A>}3vC8-U`GcJq3BvNLg>yP(a`ZV;J!)dicfI7de<*&}40m=+ zVIXxnx!k|!UX2vUKtUm|?(Dw|)KayVuWz~ly!=N=IPKU?q zU_f8V5tmt!#m98N=Us72Ron5?M;|dIjESgTSw8!r+m!3ciHqqEcNQKU1T#V#jbrf8 zr&*=Cql0?QDO8qL?{6!85JR_2Mi}iS5jb1>rTqN-la?+TiEnaDU%mGdUpp(4we7$U zGuWB&#~1NIdFK#fCu~=#P}9{F@MOg^fWT zRhQt^@>2c*3J!rA52h+Knbbl}2rfS!^AFcemwZ4=JD+WI=9~Vrnjwd)XNZMW_;*=K!Nxa772{IUrzA#50;4g3> za3~^(fFJ&plA3JZRpH{hdEVF7Ne*)U1^s6`BXNUC#@Wb{!alFiD@&ixVe99bi^Ff_ zFM`1u#3M<<-@eo4p#$d70X{?Dw1$B)qB+asZL2_Whnz0OnqR7!>W5e&@=A*{;jBnLb-6pV1Q`sdh-it}NQ4ANv)Y z09Z6I@!Ec^q9^}#-RgM_bq|8(O{m=M9qOpspuc(5lz-4-aRMizLmp&|-^f5F?E_ea z3xhXkEK^~G!787)pL)z^8LZ4Tp05u+7-S9p+7MN>e6&R9UjpC^G#jjwADDy|f|hPQ z_CRlPu_Re7yg%`xE>*VZO@#uj@#E3@q%lw&5Ep`}2Dw(!9%kgW?e_D_n$uo-i9L-j z{ww5YqsZ+EKJsRq9K11yq2oBctrbL;!Su3cw#Mgg-WG1(IicA~H&@OSeR~+H_If|g zq8IpL$U+Hj73ubHgpuI+X7Y4)1t#iMv{9-j+TI#~FVm;S&=?Xj&5p_}+PU+#6go6U#0AGf$X6bJvWdT0U zkdnOZPtEF_=|6g8z2Ml8ih33DK6J}oDj)(?vPY2a_R0*h5GWT9`AEK&8}SS+2&1GC z^oEpumbx$PI(blx(t)h;wc0~G-w*K5E9Q)3O=jXHL2&%^O+6(32J|HDY7UeDBRA3n*uKh7b4XFIYQ549bdrixCC-peO|#_t z(l#JsMoQC25X3+`u-xnA_I>c$qIA8Clf4P$6_WnlUD%VT>G2LZ;1fYIBQ&n-Mx6tGcBDcI zCg6h8{Q!#jcU{{Ai1c_GFA5Iqx0cdpnijTERWI`YaAYXQ9%ufco>y51_~_ZR5~ z^&fR%I_w(vx%y}0fsS~KKa9NJOOZM6ZMa})S7>Qd*b)T3MX8bx;^TqmqQ@EkIc*+}O0FM|kCl&31s0M2N9dIp|igdHyxq2;ib zcwYPwq93wde7z^)P|au~`j8tCz`mq0k!0QUg{-(mO?wZ&r6ct|U*Sl9SFa&EoBxu1 z>tkQy>lkQG%N}S*l~~wUEj()oT`idfoPR!`1a%nJ>*K?pMp!;wF8*=o!eMXIkoF5lml==V^LR zXNr9jgagQah=1Q(e1Wr)Ob5|)|H>(Ifft8$e}rBndyZ1|e2+JhKE%s|u3bC`Kcp|w zg}g{2Wd3Wsn#(2b8cF6QO5Fpc> zq@evNU87x!?na9JZQ={$ldwJ@#k1vA9G#u!=Djf&z|C7`T0Fsilu*@NAmmHXW!Zeq z+JS;RFJ3M#i^zB1VU=D@_Uqp&xY~u znlPG5!x%QY-{~8PBCN09bTz&*=?(WueSM%ilT?mq>^-pqH<83ntP-9R?JBWPBUzWu z$|yW4wD@}&%<0#q(CYS;@QwoAkDq~Y+;e$NG4q0hQP)G-s=jfjlz%26ktwpYz>bcN zLK7yMnw!rMTk+YwQhzAIDui-`n@RoL?jWgoOM8M&2ww54*xZ=$g+&%+4U6dG+ry(a z7G&v2VWSKd`yC)A$#MlBu&m^(Fy?FLA?S? zL(;Cs+I9Tt`W=ss02zAgE;=9k5xxktO4U**&|@4gA3wFomwTXxHPsl9-1FtMlR-^26R;3pR7HsSu9TM~?7A(-#j_-_Vt zZ|bJQD%16E_ip`E$5Nopf%>-OWz_TenRz#@;eM}I{%P;q}UGrag$gAXS6SCZVZx2}SV*a$In#H2eDE&NJC(ZIF z`Nr!6uRKvNqPgbv&n;V5dSxn0cz#@OD$8U(qr=gJm}iH!OiXz4^-2LOSl6ryi*9?r zZ^`&!|MR)LjHnI^-);5)kB%2qSI1XfbeXVlj>7%Avuh{;PWF<0=?8qEaB-xkayk6& z=PN7kEtq9;7l|JlQR@x!sp&Lx*7s-Nfxv<2>-B};mo?%Te>(JTuD^@iePPZ~3A(^*v6CJ^zC6tX0eK7Rm_|rm)^GksrwAB=w;hP?-#LCV6hP zX~DSi!Wtr%IACRJl<`6u<=LQVAw9p!h7kvrdk;KA4ih6i zW-dKXslZ{5RuMNQICmXl&%LM#S|~lht+~rhgcz;}h*cf3XWCMJkN*n`a|%7}N|{#b zhsJ|wca%HGqqz!JDG28WglLSiM|;m0hr;q9qBhX5cZNy)A-_oDfWCryP@m4e0jw_GPurs&OO|kN3SjMqGWHTT{vlN1Rq$Z`~&AQ@&M5Sd9T6i#DMqt6s}FPG1b7S zS5gWk;8%(okw9&cB@moBSgjA+~I# z89;I*c@MquE|V~eqpkfucMtuMrRqzNU7E@cpz%>GPk8B3vg96r+y)rT^>%1<<|8Kh zwT52d?mH=cpBJMXqXp7BWNEc9!8^8LHmHH@&4l(C zbf}Xbs7Lat!jlkd7F3mvEeQ>s$MxGm_pEpbC_HBJj1W+UdGtP?EBT`6n6K{zGyV{% zYkP3lyPSZ>$vD=9I`69vEGV$p9P2<(!*C`j*K1&s$X33u0a!Ub2W`Ubgm0=vcRr$roO^D#9KY zO0jtr$8uly`_Z!qUx+Unt|_Tltx!Unit0z<RPp%k>|&%5GL53}>$S z((?w|Np=rBIq}93gqt??#AF3q7-xl+2J4(G<^W@!;}bU8eAD%(agpDaC16%w{QyJk z%i=n-rkU$vMxwJBTBo9bh>J|rGXEqUJ*#em_0dX;Wldq~D63Cw@6{Taw zef7M3SI47}yyK`0wJC1P@?w5RP*w}ciXfGoKoI^aJ*aN-vyoN7z#D+b^jh z-XQudR5VWyONr?2iE_lI!JEZZm+oUx%MYt4I)^;aNI_LZ5cZKOFb~ByAZCsG0CKOv zsk7uR`pwb2#F*6ccd}8Sx$Vj@xqZOcsL_;vgK8-Z!+b5IA{=F`cJeB zmmBlpBVvR-0|izG7Jv##M1teEWaKuyg0)vA-|G{tO$g)|>gEJcRU;=_clSp&m$U2thk`5f3is(jvo*!g)RaU}^^+ zK>n~~=Xe7;;9HkMz)E739TcgYVe}3U?%1LZo%oHe4<%72RK1@s#CYQ^kV<~q6UuEq zV7A(oMsphZuw#IY+3u&y)nkv*FXGHQ`+Qn;D#7SDh9>zBhA*5ed-txr3qkxliN9e$ zOuNtw4{WxcoMT&8uxm<}RX-Qn)Puj?Z+k6{@j9eFiqEm`R^t{6 zzwe&uM=h;XjRI9P2q@zF_~kD1SrnuzbIAAjb3n(40ObI1WvLR5_PzlwzeqmVw-Q#Q z{k>kpb#;JD*a`)Er8J5Hr8$YT-2 zfUI7caoFs;IB#~p?IM_O`5*aZs2HfmaiTxoCK{L!C=lGE`O8)Mm4nS^V~1Ns#XF_a zTHNKz1=)9PGW&yfB2ilgbM}Mzgn_lRR%P|i=Y!l78KSv;D|x|QiqnKRBAwS8nA@on zeIJ<&<7vpbN#P}aOhl=6Tmwn#YojeKn;i7l>B%jVKHqjjR;joz$_4)#J)mT;7qQ#a z0Hp(7uA=*G>UFyPM3`@w zpfN+6PR{%DK9pvZ=JlRVoG!oe=Ib&glC%_;##lt(_$1lyu4NrY6b*2&!gb!46pl*Q ziu3EyGvv*8Hb+r^LY2y$>w>wY`IM3EL1tusrEjcV!4|#a%erU#%T!L)S=r<3 zqko4K7gi@`gJe)ZR2@A%K~vikY-!3-T3V|>@*DIc-M97=h~I+oVST>c)}BDsEKswV z&UzN23&tu*aC2{;Wq~!r>&o%@Sl6e^zmBXL+EmPY{8*9K#qNuFDrmXMPWg2h#59~{ zJ;&_*R<^j-(mAW`3R=3}cLNWzxhGm6{C=)U+=hLRBCyb49^#qP^qXKnrEvz}1p5hR zcBuxlSOW3>Tk{hB7nTWoW8;4j9Mg_6Pu`K-w#V>k`TW}QM{3Gu$je+XU2^tdrXq^{ z1oU=taBiV94&0)={>(@8*md@rCNoNu^0>idO|_*L8_VANPBjp%i*90-OTv%(d0Jj` zgVFwAPga24x-#;a(Lu7s6Rp6Q_Pk>AVQE_X8~g9Ojh9_x`Mtd!HnqXdOUfa5MR#5* zu9nqbrEx2{hx2UD*Zngsdq{Ci?eCL^;aZo}&yZX;yIquz@j5n-mU7kKYk!d&ME>@B z7o2grp)j~nlHc-5#w*8=_s7t{)Mmo3FG2FzsLh0QYr2Fif7E;uEvOVwG2;gw=}Uv| z%Z1{LhGWA-b7G8*FC+XZpxFs9^R6P*5!u* z>9ORkcFqU{NLXD8Q{KAE)y;TlSIc--_!Dvw(OumZzC0tGN~G(rnbmwf=9M)^XmXJ0 zNBYh-@g6j10%68GI7bXQbx_N6ior|od-9%X9vPgqM81PJ|8X3azl+2ka)ycpt<6`@ zT_(a^HFtUWliVElzPt=Ttl?P(SyV+h)`Ku_dKj&p(ZjW?!49Wd*?8mkK=Bez`^n*t z$&WxN`O1lHkp73z6&=enx1Q83bdN>8-|X14;>^#2%XMGxO2*i7SO7qcJv#s<&xLx| zf3X_?B1qdKgmW()@cH(6h=EdlkynGdekyGi_FKG$WYcw`rb#-(| z)fM_U+2JdWp21C9lOPbk0~OQeRlRi8cguKB-OCEl3z?r*tpAWW>T!b$aYlL2x3j;; zxc()k8*fBZs-e4Hu2t)A_8gxk?%_LUdua^w`}lnJKF@wpEFF;0RG~L`6nSF*5nutl z9FPuba+^Fw_G-fbOMeOpr&sxbr{8g0KEhjZD!`HtEllaE#or!>=9_{8!bVr(Zngg5z(Kz9R-?H~KzNV`HDHep$ zUZ3uzrzxCXOnT|EGltW#`hZmg@k{L&=}v(a-97b7-sTWfA!q493Xi7ac6xp(YTJ+I zna~%Y+x{0UXMKx$Ej{_S7AzxMK9|L5HpPkctLX*-*)CR$8~J`*RK5023d1Tum-3r0 z92BwuVA;}XD7ixJlfJPlSgsTjGYYI~%wm&hbYZMD77Ran2W}|?dBvG$8Azk$rM&OA zLNgL-s!Zs5m&p^xA+SW@x$z`a4hNfC*lxQf4Fz4@R`O30OOKoA93N&4Nj<>3NGc9k zV|8_G)kcRwTzoN8A8)XKZp>u+Fj%isQ0nx1VmFeSf_$f_jx_>#gq3)0PSCQ;#7TrLOS*OKK(nn_Zn8X%@s<7yG2v5U| zhMLQ;9l^JxKi7=qFxs>AN0>^sS(iDi;f7qh+l5HOLP4F=0petjThz!1#p60!x;l-A zi1xd>YOTw2YObL1$Q;c)U%-L1ep^Mck)F#@duSqNX!gLEv z3Nkyfv8#`^D#0j#Tu}CsVQzzW?bITvQ3j8fURRSC;YgQja5=)!6ZnkpR1YUah~beW zT3wVj`FydGxyU&|`&OHY5dKSESa0^f*J;qfr~4Y%5BktL9oE}561Q*d4XwcVG0Smj2T};{l-zaDfpS2RDo1^4uog250es%{K zyzLA4?%gQ4pM9Xmm;8L*jM$i01)Eu^74HLNBh!+jW$n(&stA+t7@bj^tC&r{ujj8z ze(~NljTX`Ic3A4o0R0jZU+OkTMOSeA8apZLXwY`H8HN8jWTN+Y-B{9Xg$q18AH&_% zaS2%B;1ar*g#p-=*urJP~eJ)qWj|{NC>Foy5iY(g;8x3p#5B~MiH}O$TkB5RB!<W{H0?Zf z!JK*EfFw?`%N)jza`bJ2$Jj4eUu+;_KWnWS1c&pQbl*!0F`Z6HP+X?14ObQ)!%CB| zZmF&m!#r(vidzE!zHk5!3{PD0URd>-;dX4rZvu3HS!BX*GTmSXbsDe#I@7(E&dEk6 zUo$fDyh3<4e01P}%9-VMDAf5MOt+KGxFpVRW!;D+A&{8ISQMDY$}^bwa`aJ;r~N}}NN@zt6iFbQ5;C8c&Q~R!D3&Uu-uH^|q?t2G;rOwY zaR%$ygMiwZ>G;FDt&IaX;a5nQBOK7uA^@45YuX!?J4I1M&*$3Dhx_bowxxM>RCPV{;T=fB}$<a!x+rC!f1`V>;C@ zJtv2^AOrvdzlrpZj`B|ANB(MG%DRL?DE#RZw*i_El8=`=u56L!hthP{uW-H)GZTwq zDHgNzV2b26_dP7)y0lcUi`-TJ*uuSgQRc%1r(UmcTS<(`@#~6IF^b zLeRN&=%dt+eJg2)Ghrfn3*>R~twSj{G9hGmiPSmzq3MuGkJo2_YDy=ZM24Wt1|K_27k!H#m`)_p&r<^rSh-Z zNM+u05Z*csW?R1Rr`roTtKTtVwMX>d>SX%z%K~}Zrmv8IHHtfN8;;)+ZFbs8jD=QZ zIc8LHd!Ld`m;3IqBYdEQx$VIsr%-LTC(oL`)!*N_w%_o5zwY-6CK4y>6e0B8V~D4W zs+880pUG~46qa39%A!OBrxgpEQCGb9K$^jX7>boB5AcY4Q_o>%f$-x zINoDiWpIXyu{Wx!u~cX$jQ7s@MzT<0-R5uKOU;ZW8qk19b|SPgp|i^LFuQhU8H-$ZdI zOS}y9Nx2Zha}9Bol8nEiL;TqJY%*lvlY^eC2eo;m(B)xo5aK=h7F@BrVsL*C0TL!R z7|Zp+E~+OHK9WC{ZFf6oXfDO-<@Tr>t_3O3zXFwOz3$$=8f5U!Gf;O*oFB`4M%BN0 zgHoLeUkUm1(7x!yrn2XTjjr6ZZjQpd_AtQ;?aRqLfOL6?gu{2%CD;nf&{w>Fg%s@c zSiPTQ!9FeXsFWsCQ|qbrPZqyh2Scb5dM6p|S5}EEYF>C{8jik)-XTvL@AKSLJL+OE zvjk@ig@0(ztfSTEMS(uZCpu3;S{rh&W1R7^ zG|Gw0)7_JT>-01b*K_kH>&CyKjLk>gC-q+Ys!#6$(fW?G4=|O({HsSL~8BN{lr0F*|x)Oy#2<)BxJ7BKaYS3Uiv^Zw`-WBPw95jsZ~SapMT#MVFeNTq@a#YY>{l9Y-p?jka8#5%h~7 ze7z->>MKiuZ{Lfa8KdFQ^7;ts1J2I(HAq{(KL^Y07*4?8TEz~S`*WQ6T-M{Hy3-2iJ z&1Lp;SG2FHU8z_r`ug6W)y-?#^@<&EUn}Ez6e{Cx*0~zZ6vcM#jXfE+i+A%ne$|DCTNbRvt(e!mhL4vYq=mie0yN+)J*D+v43TG+F7?;cVD#U@+~{+JU~ z`Oc@lWCZAGJX604_N94>g_hpKx9$<1NEqh9XZE>AtpB1W_%os zKt0E{V(U2oNn5~$6qKetVD!D)E*m62;T{-y9i8O57rtVP!92%VjATMN{sNeK7i z3+zZ~Dfw1c!;lznGmr-%xpl9Pxp0A8Ltmb^;{_XUCY5K!y@Z*@y*WF75T#`bj(ra;=YK-sIM&*@ygFou|KpMy~n-UQF?tJln>;dc->y>bu1ew0OMDIiwMn_ z+qWfF+Z|zkjAc0#p@(!ShGU)dU+rrK>p{h1|MubSc9))Bb*Z-poSbGc^@H>6=c3K< zn2F1Jh%U{Q`3CWT?w;VC6BDJl#;(w>uHMPJ-+&N%IeEwzhu{<`2rn2F`s+~Z%Gt*W z&0|_>>vRN_`iV!bJr2Oyh!J;&B48UdXiH}oiRD0iKdfnii#L4rKsr31I!?YqFiV~Y z8+x#x>iBv7bUBHMeP{k6=>M7y`tBK1Sdum2t(tW*uB}0Hda4v|u+QVrsZEdpy$5=q z@|ogEhB@zhe!)c-V@c$9c}7v~f^|S51$X)7urnH-MU^;W`+B8SBdn!SyH2?nt4Q=nx%oE2s<-q6i}qoWETUwr#}VTMd5F%$6p2Z5-XYDg_??VSY!AvN(oez8Q&F zHXxt3E?DWLjMC_ej2_l#RBvArqE`n0}E{)YY<$kZTGa23-!V}-5)$6|NA$EY+EgQ z#$C4g=J?q6otZS}eM@MOtN)c$xm4K8WAX2T|ApEX8k^tJQm^|>Tlx6TaxVxQy0=xF z@(NEv;^HUZA3L1s$fHz(U#Fo}T3+%0VN|bQ=bO~+a5id~fJ=w<^J#I-9NWSb=n-`YpI{E7l<3E{_g8`<AEhUI3AW>B_u`^S*lD(oF1e+Q0*MRZiPR?v&P)ks3rL}I`n+Euo&*AnTNC|P=T4EAvXn06e_p}|G>{mpu8dOP*INie@?L}b| z)7t%6jM#{$HNBy8Y^# zd&Aw93`(cw6AB;4?-A}<-AX}L7>Y7@>B?=r;_pk;yA~qmc2nc|ENN~*fTN-B$8%D3 z&ullz)xPx`wCF4Q^04oKeh6lguBf6)Bb_2V4*HC_evLn-X2;N`n(Q0UgUac=08Cfs z5C=!GMlu>YvPMCScV{QD{#xhXr-R77d{Uq27)$4-Z$gRPj@=%MhcvaP2|hP8J|t5r zZKKcIrp6v|n%rY}I0qagrX%l62wroAB@o=douekbHILsIXM*G^uJ%;yu>?NnP`y4F z$im|??2Gl5_d;g!MR@@woUe@61Ab|&vOFb~_wo8ve}$MN)U0@tg3}qgYIFmL`w-SZ zHMD1G1{zS^ALMuJxH<))@-*Om+);#d+TkvPCHIH9!?DYo*d+MYKWk~ntQGBaKX=^a zv!Me4a2Twk7huc!j{|kpb$UyueT2kWc+79mWn$&=`t;+xRr2&0sdBQx9?(}|FJJp< z^ExNwiMJ+1p$Fyc3DP+Bko)74+xWiwvXP93RDwK)mH0qar^O3x$^*ogFRK=c{53fK z9_j5??+XYG%|G@!Z%jSW@`JJboB>xw9%0^`p12=t9N+%=`^~+JaCuLw8an(dV@kX; z>r4pF$OmY?eY|~PL!=D)HT22L&SKgR?m-Trp8lJEo%#i{&^>dAzL`NEN9+v5wM>IO zevESWtpoDZCq3#k`@^M^_Xu|vCg#F!*Zxu!t{Ap3+33LW~}Yk6Du|GJx(7#hEEn0sZqPxM`^35 zk*cb1UzL~j1h*~4zf?nY+ahwSUC0ec48vQj17-0b9>KP}yqdqA>O*Ewhh++udeGiy zUsj}_E!*5UJUg-vU9Ir@uMRArvk6^wJ)-A2Wmg&OQ>>N|9Y>? zeHB5MzsFpltL`!Z0^!OJ;x2=-LL$+IvEoykO;AYm1QAun{8QDbV^0eGX}b1)LS z&rZpM=_T@rHJ#UPAK~huN&fdES5VACPU;}vQ&;kwN7i>c?isZ2_ppkim0E~WTKdqE?(Om8cJR171^+B1?r`W9qNl1D9|k45eVcUz_sJ-tvAE10+G%xT z-hrfwithc{n*36}gN^)^jg9a^;~+tblj7hor3dnr&gyS~ztR;ylTH$fn(wxny~wt~7T6Y5LK7)jwHLvloP z(k?Lg^Xj~C9j`n+uzcOoi$Rk#QsS#mTo<8?z6+8UGR%DsuJ7*@15L{|I1i^6=wHh| zojVzzla3=VZXW=+0^;WxJ1Xd;!Rep;;Y`xll-tVC}&9Ac)^p@E?NH4nD@Rz@RJGqBuel2@GK$= z0vt`n7hVtYc@G-3<7*{FY(xdS$?)Hco%8+6DPl zQO=d#dU=ADapE(G71Z{)eXpK&^OV&k@2p@h#Wm~C>kD|`%Q><|W$bwVjwdKRZ%~xd z1c}`93E~1D-AKyu1Ni5ieKvQ3r-j}#_sRI?oX>mAr=~;0s61YymlWdz96Ff!^DD^Y zR~iq_YKf}bR|EM2gaZS7rQuz64vx!kbWg|U$+KQa@4oli-J)D^J>yDrx^3mIvn-nY zxU=ED0_cxoF-g<3j!1B%2Uum}s=`t53r=RJLIXe$q72(8u*Y4V5 z&4N5Y=(+J8_q#Kl?;!Nh^im%MDL!Bo(Dg3(_B2j5a=w!u#Ib7(;E)mQ=Qb?>2+s^zjAxOo@1whoSOZjfQs62YA_}HNP6I% zQ*3=w?%6&US|7911bOP^esWljS2%L$>N!4)sfwLk%I$)q!hK4U7HaMRJT%w zWt}L7D2H-Z;cL;njpTUs+I#vt7ZaQnHG5aNlI*R6!SZyoBd%$0kq&Adu#6&#vVm{P$ zpSifb>6Zl`50x4+&vt{BJ=)IQXJU${!Ap4En}8%-*gJvSp{AVgGrGBQexvss%ySM^ zSqQLwh3Nv`$6EmH&Evl6m{2KMm{Hae@9l_iMG{`tZ7l-2Y)a|%LW76v`1wm%@tMRN zoOzc!_?L@eR)5Y*Q-3+uA1g9BLmIbc4MW!1Lk)_?UEVK|p;ebl+}YO+OI= z!h}MI4pXq-?#3dh?0USH?C)wEedFZ7eCeau7ixT-HLZ8n@_o5~i2&O1du*io8~5?{ z-8&F$hM2M@oyeuBTj!zj-($1`N|pHl>Y7QtGS1u zOV1zHqV`$QjbW47p_Wk{6PA?gy`j~HRs_+*tQKzMZMoi z-9QM>#2GE)C#we2r!+n$He7A)US}0^5ZyoHM8~DK44y!WOEi59c(@$KPbIyfQLSI= z=*(%1$oTgOvc3GD__k8P9douHNr85D@BzJ5M{Vs^bw9{(u16Fb-lnXlY2MuCnVorr z&i3FGeQQg5YB0^isrw0T+zD|w&N%W+iSav~1ex%J79^%J*Y7G4kx;CS@0qYrj=kk1 zrs30Ruqm&iaEth94a9PrjSp08@ZIUh+3M(1XIl#zNiX)i+25GdPmh=Pn}KQ|Gd;*1 zwRDV5^u@YlhH!@W8_)|586W7fg@f*Ptl)4|o@J98%B!zW&cg_#F-p#~7_b*WGE|!M zfZM?}Pg6Vq z2!utb_IQSV0%NG9F{Id`qigQ7>1Nj(qglI>juh!pI=1*_5Uey9d z7Rb}{d4PfwK50Jx+Fp2TM;A`TWHX*nf8rw2Vt`B1OZ(N@=M$=L^&-W?Qy`IsR+&UE zC3jlj6b+FIF(jcX7D#s%Otrov6yNM2Me?zY)`?1B`RM(ZKnGXN3`pDcsb8j#J#8zw zs>HShQtT)o8C0 z8yZ6j0AeZ-aAdg+k-y)y?@?i5rTjqD=~|j17_6VfqE4>>aAq``oG07M2^`>g{mQcz zH7xQw;%^UIvCiri!-~b_+jJTA+x4eje$&^q6{*(Ny=9~20&wE+=fl?=$EyR;D0{C9 zi7EW59w!+3z9IC&@~SeoKg^LeTY8gY@Wq`gg1kr-mtlm4tpSniQFWOdAB ziWUF~z;Rb@95}$>zorAY)BC*P!NM;eSfjOKA1WOrFhOfs7%1#nuVvlebSh4NZVfpd z^2_<2wi1LIWj{G;d2wni&036Po_YO9p{#d2q_Enw8-LNY0$Cl;ojvpbzVD%V1mXSN zx9dxikE3TJd=1-9~<6NdE6GcznEz5 z{YhgZo4l#v@q2on2Lg+=b^%UjfaOZ@k10qWCV#`F zunoBSar-6OBC zbsE)QFpcm;!#AlL*J@B{6v)i*O1FQ%Xj^)${XOdor8%!N6)e7sD`+l^JkMPFm7}MB z&vR%!HfYa^(432sUCRg2%z0s{kr$>|{aEt;`@o`E-~ENzV>NODAmAz-iRHrmITZ>^ zx!!d8+cQwN;`%e)qw%$0641SPZ!+!g5{sP0zwEY%;cGXz3Y zMN7y)!e#E^2ajT(X80td!6xoCL({|$ZU;3V2GrIz8E&dQsA1&s7V@tKsK$CTKW$q8bN)8&p1rQXJHPj_d<@vH-3!+G z&C`#>f1mAU|-#cF{e`=T+=;O=7aI|{AB+0Qe9FAL+ul8 zYyx})CzP3I(Z@rHN#paMjoQEH+$cZrtc&CoQAH*H$m>xKac?ANzd?^5I~hWCj#hV= z?@@ma9-O5x?z%T=r^5hw8EDu=ez=GiGA~MbVz*)hFn!$Ter(r#_dTt)(~7?o1(cqf z%rVQ$N*XK_gpBbvgZ)00+Dbv+DMbqsWh;vG@H{YHD>!I!72Hg~d!F~7CSSv4Mb0Rh z)$jfI(gE}R>dE+*Lc8tLReYMIo?^{~znF9QUN%obXPQnjSSa?H>bv)lK4udOR=iEx z_v%lu`IC#&fuqrhDw{n4XxcRF1ED=|9}t=1fY?`!ut4Xs2Pon4xEt!-g~T!^&f)2} zue{X0cz%K|r?XcbJqe~kuhv_OSCsyEv#X84A1NY81h@T0G~XD|a_v6}p19;)evhyE z-3}9%>>=$?dR0s7kWZxGOZJpFeV2liH2Ck%*yC^dCHsCEHd1p`-S#(pzLDrB<-&R* z0hcP3$Bz#mKl<@YbD zsscXGWt46X9T^IXJ|FFH3vPi106I><#Fz97Dg4fCY%Q0;_x^mJ@j8&FTRR5CXOB^| zt2(;7tG4kQS`gA___#u&MiW??w@w-2G$HwN+=^3aiv<)OAN>TReUYt=Am1w>%fqjo z&I2!M9+7y_gNJh<+YZ@Zc~ojnp$OK*;}|5Ty1j;wXET7ToNpfwe17{L1S%xmp@iUm z66KY@^p?d~)}Z&*Ef1MU*b|aM1detE_0LaGy-e{Oytlz;GQF>T`uG`!>#27?Z=-6g z+mRxlp2dm>I`2uR&iVv!o3>}ONk*Z1jhn216ST8wS2MM1Jh zykl_r^IdkwH&8zE3P#M~9`3~%>7~&(K$q~JU=Pu?eEPN~$lp*i&wgMU_6?K_vsk&l zw$oz4h!mfB>ec>Ai@J5YJ&e^rqyJ(@u?|Zvy}Z6&zB?cqlCI6|s`?9{!@NRhzh>W7 z_A1P&R8J&KB=Jwnx>Z!1_Qy0xhW-Mz&`wk#Z<&u%!L6{i&>$OqF^i5q%CzT40yL^f zFAhKJX*_@E1lkqi*Xaf}eEzn{1amX^T-XS~Po_*D+BfUFftw&SvG8TtRJ@uqx3H1V#vxLgSP%lFySh^0CxP~?xV;@u?zGQ-nuUmp>`d7g+IY5%B^6++LAk@ zOf(;oHw{(BeH_iD!7d5Eg#ve%JU&sTqd#^(O1N#IXZR-_$xIm^35ZfT99|0d>iG`Q zR3encv4d**k<|IqJ6&$}DdvTmP^sSG?wnwD2O8ouZ@<4OaNoG!qI4*F`-eby|AKuv z0!be;8tD3AIG-;vl=f4eykKrjliS&F#wn0ZVe#hPDU(TpdgKZu0X3NJ{Yf9B&3)9^7sy; zo2cGr5jp{bQ<6*}r!DkUs#r}p$ckYHr0Cm4z!QK#AsG3-Z7XG71Gpe_v5z~7xSg`& zQ!ihH-3|~+=K}`9A^1LlzBP~_c@G{qmH2lcZtq~`u9c)dpBJNKmG*GCy-wTnlug-c z(KJ;|H;Rq`6TXLG13J?lp}vOwYtnq6amUZYib#vfjtJzWk~#e%`s+SfxVc>l!vEgY zOWO1c(E;ywq;%4C=+=c>HGHsj4!-E}oA^-~B#`q6)-#?jGWQ2=~LD13oS-h=1yzQ9p4IwDY4ccS}2EjDJ{PyUs=F<7PTf?dP3wX z_vA}Ckd5hE#*ce(&uU+GZmVt^O`m%f6vrViY?!S5LiR>d?iIfaXV_&gK2CC1qWfdB zP635x^4|5F++m-U>KOgBx54lCAhoC?^=D(WUx@!6=F6OAjlZ9V^#yD?{Kpr6+iq3P z2Cd%J^Y2--y$4SXV!tgVTm8C*ILz;+F@*HV6U;05J_hIaY%(bRK%ZqDi0Y-im%Xz1 zsXLTK-{8RP?|st`?*t~*9YzKFpz{D7|LBc_4x0~?9>9ybnYu&GpaFL!g}&cjHhZ9G zJ3e7c(;2~DLziC3=h;Q}@zaZL`>`wM+jZV!S;YYM2B~yaJkgsIGC^;-fu-qtzYCgK zu!3__VH=Z`V)ZHA)`H)_3GLv80G+V6yM{8-n`=%5^nly>`nGeb4LxnFDgFXSw8d~lj7K@D5qOmIXBP*o1U7zP6 zW~LW++_N2X`|TkG1Mx{`DQ+}PHxrK>(>{Op2%Hbv_#d~_v!{w1QjUZ$O@qAEp zRRARS8_BVV-FH^=0KgLIS10`pz2D8*gM{6}TDoGdmZs+B^`$r-Z$iGNB+IeZP9&9* zx)9{osiXYSV6p^Cy%3&jyV7bdqq_6@wFWSq4+HLWn@uk3LCyLCq=64_^hwMA6j*(j z;eGr0OBFe*0K)Z+27k`z;i5f43DBq{ zbLeT~D~3vQEJ38wA4A#ceeA8CJ_@@Lz12v2-6Deu%avL$?f?(4^1SWy%zx(@e9dAw zn6?IbfX8q2x@2Pzvac9r7rcudO?RlDzw2#rWo)*4Vu!Z#`@l3+r5e}fO7V1=o~n-U z*Z8!Le~$5@PwK01SVJXZY|;T1b!YmIG9dZ$;Q|My?;LWoG4upl>3EBO+aH_xqmy!t ztK5Q#4F{F)2?wXYvL5CBzV;YjZ=v)JM_8N?b4|SeAn*yVf^QdqZY=fBeS=$>^w#b* zP>F&j-)xW!=v<@pq78ug@@mbz3_mRmS!0BS)EtPe#o4o z==_mZz*QX0$+gah8l9@?rZczuq5V~Q-h0W9YYiAqf~oVUaM!f&c8@J2#D(ESQ?%ce z)4pF%dar-o`mu$k4p&DhS*6c>EiDGSg*HBj?w6ODHl;HBfXxpkxJ0jqdyg02G(}7^ zly6BK9Pb-!#4D3MBkhuXU3Zj$IMyo?ITDti$5=S|$_B$FGYSl&K*Frq-~O;K3`yYl zH%fL%GX#MdpJl40fIVFLn4B`I7W<)uE%^SX zzdiOU`hMI(uqK`-nTfdaZ^;E?cWSul2I$~e=r^Ys2MCNO+<1z;Q?*A#UISyGyXNPrR%8R7==?qB}NXhGPqQ`xGP?h&9Q_PcYV&mGkbuIe6Hxr{3 zs)JW&7yp;slIQNW@Hy9xQE|_jk>3oE5X-M40-oOI?Fsff^PN1X{QGwE!?TPmm^JS( zkGj03&Mu`Bh0htGXXKjtVN+&9ku88rG6Xm_#E=Z}EG7tjwQb$&^P&YxG{wpp?xg z*(AfONOq4s1xi8Y4-eZt>0dsLC^H)#CfDwdvJMM>Pbf|>+pNF1cN%mmhR%acYp3LV zTi8<3Qo=e~?K?J1s!pmBqJ|bdKM#lnf1Z!G@cV`som+lA(B{!z@+`Q(_TbmncYegB zdoFssZ>5PMHujg0{VeLq_;`Gjf3#hmMuKYZT}087R;B%XD12R%yE5H9SSe9Df*I{k z==f;F`uTm>r>rA<+mCgN(F4hD5gjdtBngeMtE@_GnM_w+XpX zK>kLVzN?9KtG1~K|OhDu>K*e++f#UD@2%15C zJ6h`=7e#>}(%e$Zq7Kr`x$rgT&ug*L-tKmVj}i{5FS&r#2qe?7U1%YSIn-IyM*qZ3 zu{X4{x2sEQe(#;mek6MP_TghfX-DyAE+DD3;wKm-=tsWSSbVX!{5+u;+kuT)9Ft<= z1*5dTNA9^l&GwmZ&I~f+kYl7>{Gh8WO^rv4Aav5pz$a!`71=_hPt#|m!IP@OTdub& zyWI{oKM`X!2e2D#Pk`)>K zyjbvxYvZFSiu9dd4iBfa$}16e2h=DO_f;|ex8fyaBA!ir;flp2rHNM{g^-@ZYk}fnuOE?Hqr$Zf6ahEG%T`cK<7hLwJw}6He4zxr& zeen7U`w~(YbWi+U>V4jn84`BzgzmYBS`R8kqxe&c%aOK)hG2{dK}$5s>WLRNNkEr2 zhsK#Wr+!PPAlRWPMu~M@f4uXWA&z5+(cpFnu-4!zHK6hbVYs}aoX?|Xb+K^`s4bX% z)~{EZFK4LUI83t&_xu@lM7PM@tIuz6kL6=JhZj5~0!l(*2JBUX5=Cl{Uo=7iS%5E^ zcR&f)f|5D zc4nf;ehpL7IJe?COw{u_3H;alsK+`mUQ6e_A6zzJy`5=Bt=jl)LUY%E%@}^&LY=#L zjP-UTrn4r0%IL6}&Ap)^W6O?SOZ0p+f}#7D`|ZOIOO4cMF9@qI7{Ho5TfZg0Q(uwZ zI|Meg8{Jg0z;M|-)sJacHqzZ zd{IYgm{OYW-R{kXmnP|*<2`0Q{<=L(J=#N(ljZ3MyrnMo^OsMw7bjXDbJOOeT;0+O@*EHGv^PvH5&J276CO{P zs`;m2qfULo+62vHYC-NJ^yeS|0%Xs!S2WFRB5%G_@}EV@2PVg4NJFd#8NB z;S%D`ru@$MP_W-QT=@G^xxzVVe>3inG+V$)Eos*kzvnTHj1!J6#}7OG=?3DG{^D~s zJl@G7UEfuf!gxt1D3BFmZ0Qn2nC4;6f`E81es~^IBxK@#@9@XTiujtm<-5}A%d>)e z;w_@^4NwF{K&M%RUlt_kp{S*Czdhc(iviR!rVsp0IgnL@x{8)hEtl-)n!s4(_jsDs z;#@fjg&&#CD`;thS$ImE{ZR{B{A4M$mR&J;vtT0spuPDtzx5v4YRxmX3zo4Cr#+MR zVw+Ans$oAWJZF?)m^RV9mDcjcfFgjE> zG`)FC_PtKoJ=#F4z+?k+q+IsKg0^iy=KsJY9akJ4@9Xh%$rijI5R>WcOC|IoZGca3 z=&@BFZz%Trd4`>XxNkNeOPHSbXNH>~Z8jkvAcF0Fd>|lrTP6p@a+>ztKPHQ{S;}Q9 z0qSvTLBayH(U79#c5{v8cfLGxXzjq1b~QEn`?oZ%TQ$j$qTe1=VzQEhCy33mH13&t z*QjLTxv#Qo{X;}9ObU{rCH}I@vP$AApC8wQEAp<$d4ps|dG%OIzPa-UQ-WaKFR6-^Nza zuJVy=u5W(rIpz6n+I{3T>+M(M(Pbee;e3Y*JjId)Xhqn3oo!!KXfxrThEkGjm+SG- z`+VvjmO@DTJc!=iM%iW;fG1`-l)*ct`^jn(pj!O0fx>okQ;sTOtYo!66#ol38N!}@ zxUS^P1FLIM!E?7oLYVYm@SVF^F<+86vr2?7q+ z)+s=_=hO3q8iQlK^K~D#PEB@kNH6=kvkwz87~K753|v7U>hqI|ySL1tR=S|@r%oBP zI{rYt_uq@W>KRsT2{_}LbcPK0D)N?9V66$D<}rhI3RNR!8)EMJyYO=Fj&iy!65R$N z?j-VA*z52tQ%ox}3B?PV$T^KzxK&iT}`{_YGI4cSDr?E(Nmn zqiaj>Vy6FGDPcEUZ`$nZBwZqhMwFIWBr68%m)LG8m7?A^*ba;hdeCY2A4LS&;4!u^ z5PCH4Db<25Lr6;<1wTKLel}$OUtCdj~h2~jMU5ilP!$x;WC4s|DR{28g=`ICe6)U%Ndv^D-L^5zV=4ah^fwe}L_e z0uzY4hL*q1#ZaqiZ#S+wR;d_w7g= z5+Q~^b5jV**7%9=Q?{={yTF`gxNCd?MOqn3oec3Ze!+krXTD*iJ_%j?Ad;itn!{5s zejh^yKPnlT`}fS{SF4yN)x5>fIU4=)$%JpkF|OsYDB&P7(D;;Z8$+iL#tyTay~r0| zb$7&YdmI=OA5zUGtQeLhjJKfXCop0-KdSMD@ZK^@{=#YBBAy-*58nn7p7UZpgpCR2E*bA4J1Z zx#(wyDRDhE)UMZH-y+xPq1xK<5dn;mwvZV*w}BYgAU9!YkWPp2u3hV0su66s2fT$W znYif!eU{4`q;Stj61eKM?kU3O9Yy;VnM1zxRS36_VSXTwn46EVilaCic=)Pmxu=Sz zFj9I8V0$KpSagVNlY0_ndkRaZ zy{5mHg4&}IT|YGr9wZre8OehB)smrTc?Zjfa`GDBjGpSx@1EfIvyo@xe=~O4pOz^e zVAgydy(6#TiD(+F;3#S+`_lU7g1{&2b(ntx({IE(`n(}(Qrl9=csh z&`lu-$wdP9DsYtpkMbOQh-J2b8RoV}x5C7pko-s`B4X`&o%AoNmCMSvtt&j2VA~*M zgSqcPar+Pv?v!Syt4G=62ZgGy9#(+tQumgJ7bal`vPT zKomF}-fa0K)~_HPj!x>F_3*gWh*TjE5Yn!<=sBmMa|6-v$l1d}RwA~HHaZK6HYO~O z^CNqa^DaH_Yu4Em>-Rq7qia0yciV!D?*d7-uC?(holl+l8u(B5fs4i%;=Jauhv`4{ z+WhU>XI~CZ%t{lhp-GqDm|t$6sKQDdtvuvkUt*gOg)?H?f#lvT$Pozd`|A~jraGdz z;(Blwl-hAfwJ&L8>wIypGjCgL3v1I5FoIK#a4K(v}hCgm0 zlSjNg0%pj$yv|waNEF29BP-@NI>Xvz_IVXT@URa4mEPIucOHW#?z#cR#s1O8J`?G@&b-I6wK;`BFU-v#9dr;wH`F8n^vAk*VmG7@Byhs^OWjs)Nba2$U%TF`#(pWZ%2{q54? zjOVBcew*}xlf_Uh7G1)lT0fq!?5M2NlFoJs6Z}D)x;GNR12J5 z8R4jLo~DX>i~T47Z9gQ-pfN8AE+B@AxNo|COC3~z?pG|(=e+cuU%30zqW4Y4a;tqn z!-Iq+e-qg(s1m?k_0aq8i#1XkLQA5h!LchPUHM(NlSwO&um9jb2lIxe31B(P_WVqu z$otC7bt!+d?z-@9!uwI^K4V+w+iOza0Q(E^{2pIoxf`2wf{r1zs6C8gPn5x zKC5BBm@lEBi+4Y>cw8{V3Wk7N5Oip#H97eA8WE1PZ+Z8Fm85BUk@$|NZp9l-$_LP} ztfD93qb@@pp2AUZ>y~9qty@M`x+9**NfF_iiXHpGHNrRq;*SCJ`2PJIBLX~Z$eG07 zhKd`z;lMgPoL|iWDa7G(1rHEkOzlg$1|?J}Nm=5VCfI5;2(>`#Oc9&0!@tJHgf4ec zxG-;W0FEEutUUxu_yK?kFVCGU572w=p8HS~`LMP@Ky+R4Vi@K32aC!qCVBVrkEHYJ zQdJ3}@LwWGdK3wwKNu zly!l5M~! zdD^QBir(G>iF>*Tjka8ybk_=V)8a$R7JjbO*%b=-qcID8(a^>8eV#;Mbi6ZhoX2Z> zOQx@l-dJpZlww^tHGzHSdUH6dZMUzu-I*)mT;#U0TvC%bl|=oqHPlIJqVd3~P%C8b zqvlY}CwV6AxW~N91kp49hblZG0pGPQb0rMsJ;qu#7D6jM7h6#d!aJbkR;i8 zb#D+zK?V?-w?y_ey)Q}gNZ)*G;MS8s|3J@sopWI^ZToxC{6J8_7V)lsa8CdvEvYwD zx|#w}gY$&6hnNj&2qOtcX&#5494LjzWHuDj}yzO>da=?^oF z7wIzqGOkeJy^vrN{Bo{UK70Q2R71$*<5hZqf4WpP%LG$$&jhqIoQ-v$&PF{jF69eu zj5bSSP5iA~8P&b)NCpMauNRv9{qyPmV8{*Cp6vq7&=X{f?7n8J8LAdfR!{~KTi@qtxz0W806xOe{uqLG2)Zodm;99^-d0j zR_o>JMl6<7i+4cWp0SUuatgbLt=`Y)OBLO_cz;Uh{lJf~+ZJ-#aUjx-_l-r`Uypm- z5U(ygg^ZDTScVrho7Q5l0O1&^!~E_>JccH}C#O0Ss15!?^p{}pqMs54+fOgh_y2Z| z_VWit=RGr?{ka+9^<{lU3*-x!9_oI@&U3oNDg7M725B@24c7QTMRf(! z|4#YTYvu>&XLQ~UumtCceMAsili8Wf-ZfRL(%gCyU70_KxlqI{ud(IZYFj0vPb zIby~+-%o zehVf6{*q1b!5%EZHtM}87dgDo51To92c6w*7z11FFOX~u!p-vbD!xPf)pmhe`w?PD zu)vuir+MrLD*N!jyQ78bcctfSS2l@h8yLFw7y?7Y9U&H|=M?9X^t&H}8%Q+gdb~ES zw|`&1VC3~}mv$^$I=9X3t9BZ)w+!-YM*Gq01>Kjwlz=?XU3EE$Fr$m>9+Xr75_`r` zWs*Wqv(xdJD%6<0=KS{6gYnbX(jHCWiHI%=Fa;%^hVCusHs1zX&5NKqXKJSlk418N z#ashIes^rMS~v0|Yt*Hg-_K$2RgeN0Xvk0U1dh?kp>?Hw;Kz0A2NAy9i9zlnOf z4&INo(EIcj);pu}<#UMz<##Afn7_n*!MgpC{~QL9thDc@x*~W>hhXbUH~}U;9SQ-t z7d&8fL-*l6^Fg{Dt{=y@+T*@YSPI7Nxg2Xo8|x4FNS`e$k3#|~`REkxiEYSJB@0v% zEr#U+S%YjCI?v|NYGIU0De>vs>+!R0s^vH_z?w{aEY-3+79J>(4Q1TJ^C^W2Wu+=e zhlUW7kaGDM_ojIHlw1AI)0$KjlYRVwrL9B!N#_wAG333169nAn_n01Sz3rim=EI!N zy1I{QQ5^40@On}QLVXqA{o?J@&f&pry1}4s^N2JjMonzyQFQN#=3*!geNYegtN&I% z#r-)wB10Q#nM>9{Es|$0FJp1-&+{vf=C8~eZBrim6DNQ;Ecq`C=|6{>49wbY7@tLv`p7cCPgvI6u?m80{My<3iwHTK~B- z#nv8WWg=A`rn4X}Qz$?O$=e0i>bRsBMCWjYb{y@$5-n+^I2oY*>eDHVs z{`Mxl&N!O+erFI|deUO!$R8i)s|2&TrGMzl6b2_9hRx%}d{^mn4{+uLI#&rokl3Lz zqVMsx?EQqhOy7=>P`_yXD-CZ+Bd97yjifVd>3_a&OvRn(flYQ^b>PgT4AJjbM%*7>66o}R{%bL!0f)m%fP)< zYCE=Gur%@a8c*`2NwJfzzP2XN@VeGX<={iRS@QH!r_J8kwl zIo&PaGX-*q;G{M`j1GC-Megn1Q)eW9=N^<}6y;TVD68J0BGToMkGOP_EmYsiyo3Gw zL2s@_p!`j&=>5gPQnDUSj&m(BDJ}vkB`^B*94{^|htdX*?>n8tJDMDa1>8ad(C14h zdvm`}5c?Y^aSWyOs>v#j0_Q_;kg4F}49Vkb&*AG4ORu0f9vFkJd^pM7<=5A(F3Kz1 z&bTCgcmiwa3Vg;08W9e8n|Grtm`Jb%cYctr@}xoVYmrzFi2-@ZR3icwzvCLK_HvLTc{>{P+a(1KgEg36iMl z)qJj-LSFQYPH$Vz=#ACQB+Db$IUM_W-u;Y*;2bz?RZ6rF&zLvXq zf8Wm`=l6GAJ>RF2LP=>{Z>H?#BPB87TgtPgIlzJG>4?&DzeUyJ3!zR49CLBSYynCm z5RM;drd(~&*TeNvyVkr4tHgX@vH1JEE(LbDl9ued1~aifgS=k&$0!c|CD;M5A~P-| z)2!|38u)Lsu-)UI{J1}7nFdWqYA7A-BKmVLfo*_;7}v~R=4zXhNK2fJRZsfSZZ_Z5 zWxE|B%sj;u)D)vIfbDn16Zzh9DpN02pt*u0!s__@2;Xlb!y83&>0syPA1{YjXJP32 z>TtQcF%^S^JBG)#=>Rk-0em~}0Uok??aCc}+P+D0V{bP{{77I7Jp&%rOsQ^v4iCmY zdH$j?iuFP_H3Ty6w|}Si=?v2%{xvSs9@EhVMQpDcX2tzUyL`{B69FsebFF!gEwMwR z%YJ{tj??NO`kMAp8WS#C;{GhUnlYxFGoC}Sm$Q}U=Qy8p7Km7ZrBHH1tC#pN*Tdsf zBwoPt&F}He6)%f%MCNYoeBEd=o_0W=wKIS1ijOKX^Ge@0xC@s`O<41ObA;QK|9SN| z5)ZyfDyRDjZ8pc3rjy2q;Eu2Fe!sDNlvEhhm~)gTvtg!J*4(&FXY6;xZ~s?skDW%B zZf%JzD>5Y4D6N^*Idet7AK-Zl?%&17eF7|>7d@Xr&(%>T%SMczR_l2*pD+e^>c3^- zK`TM)dVju^C+*`z*J^szw=))j%M@%5YUjR_j9!bG$w2C-Fh?B!O!LWwMvH%oRNgem zR@u(+7Ny4$=|f&jzfX8d=Y_*$Fo)wQ&RDmuE>(jyFm0id!Dr8d0LbU_bGYx3r zZX%L=JMNL@eo`STj10rL)`KxrsCmgp8-lU%)+g=ZQ?o{noJ;`+rPp>mb=T8AD7iD5 zbDcl)DkBJ^%O0Ct;O@8W$HbRf-!N=;4JA=zrooDVW!TIjtLb@}eR%=Q|JTQR%tJmQ zzg;;{&_nzLS5)%av?hA)h5b+oMgR3doD#~EFT(GOI}(6SxsXRLjPeVNWWzg`ZilaOb; zDSX&suQ0HJ*520U!yC)oZ>cu_4#kATY4r+1!6%KjlN+WydZm_H;fb%ayepI-V}wp(Ygsbef~?(-pe6(4#npf&b% z@E#9Rcy)K0m@I`p3^2B+Z!rE*2^`LqVK4^+s;7ZjPiM^IXs&EFx~)rSub`=WmWBeK?nFmsLHHfwGT;nid|-@-ck?l zp*R-4u1%+wv;Xz(qBI`SMU?;L2Lh9O+Avb1oKNREa91srWo3g)MVhuJ#ESE&5+@_+ z($|<1)(*5r`ahRRywNDj%M@=$a~XtFbAnfe{yN;AH`DF7&OSp7C)l^-*3>a>t0W!J z9vys+aFiCWHV5;Xy1WfY*kOu7I%s+B7irE&-|9}V>NSN**&Y-rakhoy820tffAD|_zAms5Q*LJp7qnp!0#56 ze4vtkUsIEQ@%|R^H67&m{qujSeLqO!Hu$!Bxm3^>uDfB10-0j0t7a^zkv6`tMmg~m z8lzUZ?&I}?^`-UrYgT+P8G6K#d;qGy*N>y~gsV0iPyCNrMhxVAN0zAv=ajFF`2(Nmt1xe?3%@eRHZ__eA1;7?3&O3egUmO3rJnM2AN&T9eUu zXH+$yD{#>h0jYt^FHX1L`A3hKwifoMxl`Oa+6J+-9@> zTk=7Kg|GRX$Nt$wfXJm+j?ws z=n+-D7bhFr9`c_j^BvL^bvHx0vx>ES1Jp_v65HzprB3mj@XPB91;;X`0&2 zLH@CLgRTG^6Vtr^cA*A@g7o40+E-lwgzT7;=U)I5aGfX}`F&p3;PLqV*1t(p9b5SE z=4}3vWDhT(@ZUk2snkC0Wpvo78 zr^`=i*-R3tvg4A0fPlI@e?0W<;$H8$_sck_Xfc^E6|yIR);EBAM|Vno;|PA^*?^R! z%ek<3A1LJzl+c2}3l^If6MsW_HeVabxNNu8RDgi@suwl*O@;^uby{&<3nJ)XYHM#Y$sIc3?W7krEZOUJx zuYCWs$+r}@2QlWSX_ES7S!AK@9z^_Kt}4tedAMk)wpm&+dTGG&TJm3?OS3u z#0DdEqGEfZ4_B&tZ*w_TVz$o)*QfZ(C4<*rC<2i(;)SJ5Z$+jE6->UduahJ#EmE*Hh09CrkC8S44{lP?VYf zoL9+vnf@)qyz4~4J8(}Ukp1JpR)X9wCpXg7k8!WR&c%IbG&4Vee!cc-1E>{K-X5k9 zDe0|Nf(f)vO%-Y&O1`XIup_|LzJwDr&rh<_LUv!<@i%2^*as_q82#cTIME-&wYu>4 zwz=m!PEr}jt0ydwO3lYJ2Oz}#>mKlGh$M?aJXX=x-X3EVDakw9T<*k(N!p>KO*JY1 zdl3t?D4-+Zd++ZliN=+rdG|xkuenzeM|dXSKv-iHRZ=EJ>&pfjc4kz_5kQlD!fb7r zmxQt4eWmSIi`4QR(n3 z@by(Kwc{wf?C%XK&ayAB2M5yq{akukxZ-J|_c?uCR&{FcnW%8x$PV>t9?}k7*S64z z!Nc}WPu=Zu{%I~z`{O;9409S&oj5lT182}+;&4~_r8I{}e5hY*PJC&hdFn~1KT;Z7 z+@Qw(`f90<`L_yqGG3dHyQ)nz52nR9t5mPquNRb5oA_fo-~o8o(#E-c@dpRq!IPBf zeCVEST!R+a?&oDx3hMGY;7{|Memwx06HtEi@UGY8^vl+xE? zzrGEqT5@XNafrevG;QZi0drps0tF^!~v0oft(zIO$Nr8ealb?>K&O zCYp}$%8M~@xR~OHUiX*dJL3#m=}95oTR#DbO~vi?p>Ycpt*L$og_Dox?JaiuP{mj8Jos+!cu>R>Of5GL*H1(MX`Cb#im(!S^P;=;0(I~p z6zkF0G%CfiJQmy#`$md2sePwpeOqtQ7HK=`VR_DIH0Z7L zgj036Yr>@|_Q>XrQ|3;_VDyFf_(-9gPMHdnX!0%muV~)bUkquerbYo9Gn!dgZi?~2ZCC_j6 zeXV#>jL=xcHSX;hRaO3ko)+niTTonya5*x>tLFB2?D}ST0)^PQJ-hZqMCv|Zp40Tp zov6FXqnbKxeYJg#w@Ht@omEk|#!6X=2B*QD_izgX5Y>OlvOZzlX}fs!gQ8)i0CNp> z8c7^ZaqpC2WQYOPJc3Kjo&V;2Hjhrw9fR({1pw}JF`_#z)>vS{K#hD|0h%%1S!EB% zMrUG@Pu8!jQU5oZf`o@WPjGo)JuF9NHZ-3u+H4gdeaasvdAMA@#Zt)lU@-%Os1#gE95Nd9<$N& z+!a&umJQRV-s<+FZGKsv*vkndd;g6;Il{ym>E-}R>+Syge4xSzLAN@XeU_sM=f zmAzO#>?vE}T2k*2%G>bjeC}8z_l@V#a5sB1gEyxnQ47OFyjlw}21JW%URAc-aXdwy z?b{ohU3E2PrcvNzsD0-UV6Ff zPJu=t_E1ihTL^>Ng9g`16l9oOGE-{i^6i&)Rs(rZBc+yv+7}9Z-S-vdKI?OFi^Gq? zB;cc88&TAJFCa7RxIRx+lJzO&+_7zHjtpbp;rD?2fq-GA2p-?(EsO6G#gD_l428?@ zG)6V`366CwT^a__+7yd9%`Xz?gx^5mS4=LBi^3~0Da~qn2<#mF^1Sp*F~6JaId6Bc z$G59puIQ17ey#R`wl)85Oa83>5!is^ zt6#yk?|DsnjhgWd2N75i9;}u=VDGE=n|0Y?mh()~~T=&G`jxsX$5U?Q5qX`I-n_kl5LpBiR-2T0@sL(v z8wMc2M`_j0$Cwt|_1WI-1>fO|^S71+D52JPBCB|ovO9Os)$QbTkE9s{t$O*U3lG6g zc?kk6QRW8L>jcJ<@~{Nq(M1z1EVH$ZS+wo}(pII1_d^nviC>+nrc6nOPPQ-&j+X;R z^^!}|fx-kA9~#Y}-{@e>m7mQMRZ!eyEtpmH>zu*(AXY|4*+cFkrpq_8oQ@m2 z{toP0o$hG3`si3K(Df0l6!_MvEfZ-)Kz7-`A2lD@<<0%vtJVm}<6}zVAhP!z5J6<> zdY7W|B`Ljigdu2Wc$R+)ki1=8Se>ZN5u_>_YHqlLk?r#0_i?~_TnZ;}bR;$)ZSWKK zR+D7mPSm~&;m?usK*0OL)|4Ce6skzzHNoYz5zh=&ywoT1@eVsvehf+!BhO&S;-yev z9}FSsvCX!%Y5Dr_th~SL{3Mrft~tE+m>_GdzcBG!>@%ygw;}*N_^V37_U+D2wI6_@ z*YCrWwVu6cEDucX2)hR3m)88>yL->@^dVWedQbOT6_BgsYM%qo;XvkCVWcbQG-jHZ zTIIu)NXvTjbNg3ayJQL3R6IwjK9;aRgF-O8eT62ZCF9lf&3-fWziM@? zttUNf_t+E}L`^;ZZC{J*Z@W|zXx2PwvR{`W>^MV$nCAH4E4q|fG*ebeh>b7BEy+2UA0of?90=V%iF zuwC;sK?mhYFuFliZ7-+Y)o1ZVSwzC(0Q zo~tbVo@}$6m4ul6{;QAsB=Q`m`2i$7ZsvR29}M<<7R#E1gxgW}wE|D+UmyHia6Wal zW}qp}ylkKJ`(5jPt+yp9O;CN!KqGEF>v%nS=*k3U8MLGdS0nFzFIm+SzvL9LbP42L zLHm6FdA^{B)_3+la3M}4dq3UdG25cS0NBW$nM`oTb=3fJNUIG1ugY6e}eWGi9b(s}l2w_8I&iKe1vPyXL z(T4=2sq`bq}j=$dHO&0==!@%@xNZ&eEwUBh5a#AFDND zWk_cUB+#cWMu$yC(dmdr($lGJBIa36pF^^07T|ODbB@&Ult|R!k{wJYFZFE5j`Z;t z(p%zNtoWu8QNX^*p#-J)c)I{e8HmkRY&lO}@~5O7k8{l5Hk5tV82y)zE$4MQ*kbT; zT@>UxdYy7;yj#=j5#}q{OGtU2-W5RA$U>UL?P|n_&`M9A5S{_jYxM}a_6TH_#rH)) zYuNYT;``utqz3ZP@qfyTb0+i0qgwt3(=@QLKr3R$9Bjn#sL@Qt=YE1UY&>?Bv0$tW z-t4?j@rBNhp1dBC&XM2=oF)58%)$?mdg#~|TTbgYC6p%O?F6eMgMi0Ep7N16PX*)D zO2ZLk+8-OI?d}Oa?}&GmmHVZJhVtrDtAX}M+QQ^cdEO<#N(823EjH6s-DjC1??Gu4 z&kQJ%d&7>{f6fpiSv)yy#|-I_@RcU;9i1LS?3Q203Q5Us%j?p^Xkf{i-bJHlEef~8 zt9>ujd8hujKm`@B+@|Hhags8KmSN)SYCIDLaiqCctb$ai1tK84z*&;`VL`#LU%^Gz z&zQPlFV{xK-Zm|c9_#nzA-?jL8|4~?!XW@s%zl_nwNTRv`|rn|SFVIJ9X86a_(RuI zf59lGa8w^VKMQWC34N(F_~r6R4DZJ*UgC@CYcNA*wALtX%CDt{d%vTvo{_I<(X0y0 z2Y1#vPrvcY@N8d@==Ud*nMw8cEN@z1t*yN2`=7q%M1LdO>HCx$s2xyeQoIPJ?|p%5 zp!gUEB1WEHcv?(bU+2w95O|il&+VTS`Lzw`mgsj9rVs3&kc9kW^+??eXrwD_3|rn% zSO=3Rt&pRW!siFr`26VJ_|L|TP*LdT!tw6(izp(o%}YXuiNaa>37p*^d5pdkANGg! zO_(xjc;-PX^c;0IPm>W6R(y|i-%s|0+aj9>*Z}H@-RdI4@4E{}dTAlbA||_v`Tev` zp>NRi2({-JXE8p5YHsdXzBcUg?k0keS{OkKsi_?9x5E|g@D%PO&4>AX6t2HV z<1ai|bJ-2^8!VV#X75Ys?iIc7mYbLFEzdEMXHmA5n{h6eXZdWdBC)z}?~cB$Pd3i4 zSNm++JB%vKH#XeLPX?rCYKz;*KLMg`jAQO6RtW4!>u=SvGT1QeP2dcqlCI_uIXIzPE4W+N{1sge2rpE7YfaMrLZ@e&$5+|J7n6z zNfR>{bHkM7dtpqGuDdU4EB|TJ<{KxUrSM1srqDA+fnX8&?MXf%CT1qD+sSQTyyz%( zZ_9m#Eg&Hl@97l)RHR!hnb>sC{CW3h=bWj$!5F<+H_@S?&0{>fygKv{v0o==6D%K< z40O~B`L&3?YS-={I&RCWPzfp~~+c{JAdcDU@}526e$ z>G|~g=6b(1XqhTgnhDF-(bC@l44iCaY$2!`F7_aVrZFPIbdsZR1CF&LZ&hOD0Yn2O zy6?+p_x<(FQ_!q)_>k`7&+XK{3Gqhrv)&yGIkwc;%%A(5e$ap>p^M*TDUOKFM4xTH z{`)+*PhgJTBV5@IrUX!wB7f7OS?4=oHjv)NzXOQtiht8)r(y*spjmcCtFUEt)RWAm zjlGi3a6h17c$sBz2rAa^ZCaY;L|<9I+_Mm8fZxR@8*UCl-s{Wip<)uwQAcGbhDH%l zGtIjS|61!TKh(Z8{(4SmY7ZX|_m+4Os{C3{#EYiLhp;E6zS=If1}2^TJqK+}``alr$P^tF;l&?SV-Lz`sRqRn+b+Ii&c7n4=tl-3P{gWkYai`s zvMDf__t1ov9u-Q+NynbmO5SR#LpCP{LESV z{;qGV1d5~80cgI`=`zsH^B35xj%H4Uo#2WS=vZ;-4~N=8?SjRivf5KQToUU3wCzR! zZXzapOR>o2SiCAQnw_RJVTacWP%T>r*dnF2axjR)agWvNEc)#CG0^uPC=cyC7^hE) zKD1@ZoWuMru)*OB@4&~$G)8jV*(canR`$BGMrK-ipX$(1n>CT)wTYH(xO@`I#q=X` zxqS-6<~r`5bE<&F;Um-Zcz)}-}u`7Mo*U<|Gb%4W2@+>ob8_o9os zUarUEV^D9!pPVy+ab~PF&GNV>#7{XwE*^vpOIW`g&m-QKX?}Tq^FaQS=?;aj#*Yzs z!n9;XxE4r#<(!#E6b^eXQ8|)qF7^Ew_|Vm@F>@pAiYl$s+4xaEHQP5FfJ;4J=Brnv z^OdF?>wTk&^y@anRrwL;;9P&Xls~w8iPX731}7t=JK{7c&6O?o=;7lGxb|bHrmv%P z!vZ5xGTM;_t-%Ax{7!3x_8DkcREAZ9SXhRx-d$_IV0Zd#s)LEwh%wS=Rw-os@2GtrYMLxrxL?mR>W z%CGVz!9s&PTmXvAe8^Cn5o$tFTNY0dk>DwoK5XUlq*7Grk_m37{F)ruey>ZI^7)3c zgeb}>U%#P7?GBajHirYlY2U#39!qd%tC9YZ1Pqx?;!QSd?FX!46dL$FpSsF$KEzSv zKl6V6{z499**H{=W8%_F6`}al9vD0BUxzz1-y0BD&-3kUsu;w|`!hxrHK}7lkbN?# zhO(9*eqsUJ7plN4!XW<9&u4B)p>O>L8h_4!v#u#xetZWpQH*bC+Ik4~qUJdnJb(5w z@n}Gdm40O-DQNm$)-w00gMfyqUvu^MnyL0(9+k?CEDOBgA~&YHM3_Gtr7xI_)_7yBVeLm%?hGjsZ&+0o~fC0{6A5OpmJ_DR2JmZm%t*Rd~m8o{V(zmDVF#h~klq;WS zeSgAzF1~-;!4qnu5&VtJMsfK_HHEACko%9F6uJK(A2g|LVRIKywnRm%JbjiN8Tqt; zuzu(z?(jT7N>v&UzJHYLPpHugzTX$8wTGcux-XyC?v*~y`^_yIcPXG+|Fl|`!zQge z-q!f456{Q>(Kkw(ilxM-<@rYr8U2|6qy0U!&U&lZI*AgxtFB{w_Gn`GUCh%7{k-D$ zG)z(gVdN#k9#cA=_5oS4=3bdVv%CDhS&z{jyN6q?e8;I@gD(GSkpmCeG@dg#X0kkJ z<3PvG-Y+O>jtIFC}fcqe><*AtvAVboTgSIR2D| z^R2bJ7@da{simE2^d1$6d-Rj+lR=$dY{>R`IM*KYFYvk-wA~sH$t)#Rwxxr>>zDTrd@H#qUg)_hd$b_wQ>q@G0@>*8 z1v{vtj_%{4d`Li_`N(`DJvtMi6>^555r3>n4@ECD2jZP|%hmJ%M^x1iTu|a9p*dMS zQ73yHcHc-5ncn@h;=2iM+jD(#hD?w0gXYfa{SpI3f7=%0y{vX&5xq68cjFq9{@CfmC+a=@2lPlmv~j!}5?Hr)&+ZE(Qf`CPr={0WM7kwyNbivpoY zS-;&2Ize4sMRu*jhhp1aggs(#*#rJYTWhh9CC{jJYPABt`)1c9s!8GGx0glWYE)0e z8Fm=Kb5sj5Lbo0_xqzrv7nCM{SN$;z zm|>0Y(c1gLP6gOsXyNC?63%EFGr#Do#$#~km`Q2U$2*TA;xqax7a>hoQDw#qfPth`5pwKFgwsb^^G_t~{1HpSYYveBd4kkj8L-!$TP z%wwa~n=dib`gYH$!zmPNffUro7^FAq-CDl?=}~f1?^1scFMq}^*WolS%*RAAnZL}d z4haEqrq_u06GNQ-LnhhnWQ6_xmwnG;Cr>gv{YPtLN?%|{6~u}?&>CP92W7U*IX*wy z@G^aIKE!ho!2h6l?vv|ve(4|{w@vTdOUkvqxy?ppql35$8&2v<#ZF zU@T+@1Z&0b2eT1k0iwIvd?E?_X?6nZ_%GfkRWN92tI}t{wH1tO8JK5_CQbiJH?8RAo zcAV$;K?F8vaxdR!0-h20ao>BZrSn34uIn6Sxg%qV65-IjS0+8>n;lF!zc1+H=Gh*= zym&rrKlF=C_eYS{zW5nmOQ90kc?y61bA2brZo1vd4>DZLe(_XC5f%QsubGF|y!s$& z*DH=GnlAplav!Q1T~OBL<2ApJpK6yt7a+UkBjMq{q>rE6csvdBe<=MP@noDES^i=N zbV*q8a|JfFWGFys_UXdxIc(fRXUBaiAIRZ63R8@>G9S-*AG~F&Z5!EGK2e<>RX*n+ zfmdV(UoG!CnJdn~n`Dmf-QSf;2;N~?n$Mkwa-IoJ7X!jJ`t-wrOXd8Hi@z{E|GxzH z@Yg->=-L2pRrJ(5jB_sSv|k@D+driDwB@VlxSXDUWqnM)8<%?*r5g{_#>)JDhdDZ_SXJ0Gvj zA|$aTpjR(5+5rj_TXNoT=L_Sb{^e<%&>^mJ!y$L~v5rHCE%V_or-P4)8hokV;4+@5 zq>ob0AtTzx@o@+#eovDtppw9b=kPhg7;ib=Z}a+iw5XT`mWz(&{gRH{db2;$9%oG& z$6ZoJ6JEXh`NHG1ZRspZaTxS=x5Bhm!?jZk*O#$l#Y?MScGHb6R4&p*4E5n=DgtyX?iqoW3%HGNBFuu#pi=2b-PKc?jna!Co2E>O)J{}P& zg_5<00m1z?;D6S<8+|I%vixRJw=Uqcn|IF5zGy0-188qpqbrHqLNVQC!4prfwPW6r zu5lI2)ez-k19xK-Yydl&+~pH8g@s5xI+3_ z206oA-o?OjXB32l`+XTxGpCWj3YKhu&h!9Bfy41>>q_37R^m%!%Ms?OH?*KW(KWZ< zDmd_9e`LEByX2P~PrrM0e?nKd-Jbe=|8t-E`PS8>)S)AE2LAkhu9mvL5m{tu?lqyy zbAa$g`eysBk|r0$-`6#Vj0&;@0_?fR?Jq(AIuKF;Jo59u^^2UE%dExk-r}m@#2nW_ z)b!)+M0qg{fd2Uo&#~k8m>XDwyQt}?{S0LO^G;On;C`_n@Y~1XEU<4t?1H5=x%57> z0?_$KxKj>{wO+!%I#V?v#Kcqo_(=Tw@GEsR9n%DVxoeJ$8y)>7&VFZ}{cOQUfJ@4~ z%^vaNqc`ZFDt}?b?W8Xr70g07e)79-uqrYi#N?wwj~y&2#~ZpxE3e7;`^dFhCDp#MRG)7=(m;LK%{|fAkrK z1N@Pn+da$c?%~Ofq!(9jLi>v^yo*^W-`rS3_JPMz$Dg02P-D=G?&$=LynM~8+{>=> zfi7tkriTypq4?nM(B(Zw(VoCFe+g6m(h9auuqXT7O_LN=D0qMrEK{y0OIsM+Lx?BB z4@T+E+--WKf6V19e}4pTtd#p7PI!bZN3(dkM8|3#3X{5cAK}TYLU&Nz#=+&rX;aYi zd~R75Z0=$mx$Vo&4R4nRRk`9X2z5*wCg<~L3RbfWvzBNBn|txsGY&7skWXtw7I8*}lZ&TK$;Uqn3y2xe(o#MAu`v3m3&PNJvos zTus&BZY8CSb*zot3dekOqESooQ(Wu=xbrIY=zu?(xp~7r%#&M}7uy?^9oK`Q0@H$w zE7|P%tY?=wf8q3<%suCwFPI9HmdeY3dJFVEyL8NFTZeB2b^x|Kzs7(sF{MUN+$o~I zP5aa#19ihTxL}tjNAT1A%HBnEAH^dTdHdt4I*}R$`uK}z%a9c?_sMZlb``_W_a!r^ zPcMlUO2ox%DOA&MXo@@;QwlYXKxN!UAXzi zE2YTMMQaPGXeXS!`inyb`0J*z05OsdueI8P-!1Z#2&R3Ob;eq_Us#6>ivusOz552| z|HnJL(h9!v0i^62+;SQ(qBm84XmtHJ3 z2KR}SFAjdQe81DVe+zAYK>?msC3fNNkH6c|0@_C>tt1U~g5O{f~=B zBS<-#=#s!oCi1M{!F(LFT|=GDxb7t^naAtZvDxfdvWNMa#w#{WdSn0C%kd6u8lzXSTfSUqq@&Vuif57mAMn@N zY=4o~(F}V{WR-s*r|>)a>Jk(64@S;Ce=dmz;xUTi{Tex7$k=f#j`pz?+IE0WMD?S1 z+!S;Z9gPHyOPr#^&|0is!Zi%;_tn%|Ifs9OYK=Te1R^GY=j}J2I|F4g>(R->{rq}y zjf$q`ZR`g5U9)L4{*e~2_%VC8M&n)+kkvMR6F1Pm_npZ=ykZ)p$=>sKoip4dtA3g(4?)cJ zP6wp=AdTq0e0FIzD4wPq99}E=$ri*QKqTNLLk!0bNlJ&)<6dVeE08p>u1Bfr!xC*Q zJu3DZ%;N!E;oy4umO3kx{%Bc8|24apn3ImZD#bFJesR5`gXEXz&)iIN=HNEQ&5O3( z+(vw@+_=LB+a!MUE)Cq#Ze0c2C4^viKg#AoxR8~z>@zdA=H3U-|MdRcp}dM;HBM}g z1sXr>cfXv6bTW%0VWFPD$A4KZY9BFIZk}K|mhDUE2LCkQ3eJaRxTzVtKl&P9Zhn0? zpaHBb^Kj2-1n!hP-pfasQhxY_uQ`cHJ|#&0+m|ZG;+&EY-E+~;1>HVXufA8wJH{%Fh2R(#&?i( z;1$LC49DKn0H%%Uje*(cWsdwNW`EEM&;Lj|vn@rLB?`Y1^KdDX$P5C4cPgNwj50rc zZ>ra-bN=d55i!Y(jM(w*3O*{sa`^-eHh}Ce+rzAqy55v>aspx;R{3Rv7d5tETJY2x z#{@caPpo%sXYjpoUb|5|z@ks(H>th#uDFF@=Euw>Es_&I=RV*5;WYAXVdc? zWSlv7!-R_or{mRy zVX)jDii6-yLV$vhzci2g<9-=$Oa`G$#pAoriWNM(?{E)#FVkXi80+Yq=?VD}>`SxpF5MD!&_hh*#r213 zm|5pTadYKo9k7h)b4%!b6Rg?cf@I`RbahLoP8NF>!{X zKg!44BYOTal-SqxOoBoh&Txys(nR+R`83Qe&zujhKuH4yc=x<}$P9C(hTQdrj?K&S9uhApTx08XTbQgL<6>_= z5i)4fb82MwcP%ljLm{C-1VZ^;~DG=mNiwf<)F@$ zn?DfpX;39{C$A1`6q0_<9PFQ?udMyvKNOhSXLOxykKoITFO=hHy%>+w+RLZhh3?e3 z)18vfD1#9E$X^aGKDOOcg4g10AxuYaitAeJJ@j3tqS!mqKE~Rjgqpw{U~GN{xb8lQ z=iZRm@`9=ccbI+oZQj(={?Q#)Hp*)+ty zn&Wz7CMU~nlo(%QyE!O7yliwc4shh~AdtA@AnYojbqFTkCZ%YPKS`A-PZ=KZ1?xaQ zolFC8dhTDU=sj-YN;?*t9KN~AxR-{`?Lq3si8s_{pJO%`Nq_wJSil15hEl-{JZCpC ztil)95(JOu2c3Nn+{OwEFFbD3!q7LSsbJr~un|8~&3H+apKA1=zDnB|r<4166Z>bP zi?^(5E_WE1{fh|=p{1@)33I5eIP%IqC3rp|dgJ$XJstG7cIt2@TBn6s(0hF-Acr7k zRe`oWoS@v5 zSLjFk*9|Q0d(Ek4Wa3-WYPsu3s5h`CUmZ1&5+JD&5+q}FxEDS@nr zbO4-?J<}arS#Y@M%8X5!?$=^_J03cNv|kuP@7TQ5DTJ90(Fn>ca5;9-oUVUbHDT6H3{9BU0E*1SlaZ9c-M91yts@FMLF&A>Gc^k?Y&6WGm>V> z0^=_m9rTI*g4BV#yq+gd#*M*Fl|bAYcr&RRH%LXbk1;c!?Q6Ks^6SjYP%Gm72!Q9p zl)XX-{)A%u?D^?{^xU+c3!1ZTd7!wMNi>*%1&;`j$vx8RY!jRZ_bL%nq0r!qE93IF zU_$k*OfcTNfhDsayi?$gSlwdtZ-cISJrD!))ABd@)-xHSW;|2y)cuYo^UZs!E%Ouz zJ1&sLgT%$rBU2)CGpZi+VTP4iS==atiChZNRIP63dwDv+4wZ6Q0*$6$L}l3U+U$3mPkj0Y*{h$3jsaWx;=WIeD5Ku-(I!R z6rTC%4DR9&on;GNwx7)YAmaAd6>jOpm|wEqx7;{)QEjnYxkReayI#8qxZeNXtv>dH zcv+zzR4Ji4f)&1`Uci#_gEZ0m98{aWx!QMsPQ{rcy9YR*8j528z7FS`14;Bg3+#h7 zIm8JAQo_OV-Lu)~ z6Qf}jPbKat$ry76OI~c>ksxgxqH@|vc$23mn8f$sI5LS{9mh(a{=6VeSb#TIC0!1! zEuyE8pv%vOGlmH60j6(lwNL#x7{Yo}DZ+x^%!$RfHo8w9I7?EXL&yEG)akN+Nc{9m zT~O&wPah6RB$VGT4!#7wEV!b1i+#u(qV9+y>}UW-SN?hoXW3UhqMe9+wMIE8e2Kie z;ZQ9!blgi`3jAIpAV_2$UzIfBYtztWj9+u!leql`G+sYX%ctv_=D(gO7Fd$;>mNrBAJh&5C%~dc_voIt#eEO2KB_F1Dx-EZt>*JsCnleNss%n>p{|q@|Kp#SXF!a zELX@E@D;bh@Xy3`5&FCM`5aPj@Yi}<=#V%BBs7+ynjNfJrNB=4Q&*r~bElrq$o4Ke zs&*IqeB~@UY+UK|ATv-xAISdRk1WmOJ^Xf~ttZ$1+9HSZX#XaQmx>nJra*m?sO+iG z!8SAAz6!TpVTNgObCuAaV}mMkx4fDE;mm)wxeo%Zc^@8!C^tq&4zHm7-kNpP53S<( zGfbbY{;rhu!#Kmqg+@2mPjdmHA8Rgm8I_~e-+P_v9##n+c7K=*(B(=9rFT`Atv+uL zW%c`Cwl5puS;@h_3k*LXwZI6mGS2-^b$`tO4E3Qw^_-%7`^X5$XW8WiHCr~D=VZK0WC#KkIZp8c?)YZ6=ClHRJ;BfI3w1h+ZTkO-@}uj~?O64nz1>YLJxw zoZN=ogg~7SgfsZ$%3EK^xy%<~G)Gl{H;4Y^H@jek*68pqZ&|Nj1I7|*-c(Mh_ie`l z@Ijhzn-vg~uQ!=-vtW(qS&v(%m_WMDjN}UPn*dg9Mi|`daWyIz?at%{# zh@sL2=yhf}qxPyjRzeA@Y`~do1%JB5)pF1DC#jGDMM8vFn8dzXD;c>Ahh-|Iq&f$b zvWF`x<0b?U1c2yI+U>2y?ynpC+TndXXf5u8*(OSr-j&DOo5a{Gu{__}ogDxp`*U$+ zQafCnd$X0~vDJn5zE%lbrsRQedOVFy0mY8CA2(%=5)}ayw&~J!OH!J=5904lcMe}i z20!!kko5G`L1)IjF64c6YORxXPOqi7&nktmv5dUW1~LZQ6^c*Y7(Ve2Dleo}23xIa zrNp-&!A}Al-~<^?^l;~lH`=vyu$~gW)YqrUJpYVun)N>OFufs47-nt)A?WTq&{o+W zGkX4&aTc1DZ{Yx-#g!ZYgywF?p@EmQtC7G{2rTJ+^Y8g`2h`rEf}#$wEJ!&4CZL~8 zHR3Px9wPb5Q>G4x=$=e^ykS}`ACt)ySub4#pE@NXm5I?+@2mG>fZFi@NPH_#SvtB9 zuf%q;xn2|a3Hcn0eHM%7%h19AU7xN5gKI)^>xDjg+oKXmDT?Gj-f)5k#s^ES0*q|k zgSH_9r4M&Nz~0W2hqL6}Ll1k$wBt;hi-?m4e}IY^%o(0@X5F4bAXu}B|SQ?3WcAj1x+>}9HJ+DjOnW@exhYI(hgbr&wKf4twlG3mq zx9_NcD3k|_wIp>eH|R#IxDO22M*Yo<4z=nO`c(4ZuiRu-;w*sy+yP@|wH;e%g)`eE z13XN^=k;sS zdc5f27t!XvHlk{5?W-)E$2VLisXna7gGXH_j1ko2Ui*Cg(F<4zb`^b^(7yQe2C$m- zi<6|@TewtwL86n)h)&f6ZMKcU_+#$w`3PIEuiw$Zad#n?=3}>`Ytv7!z0&5`lYHl7 z7NoRyco)dEmIO%2MQFaDsV^wr;VYy#g6Ail{pMn^;tXX7Uhu8evkjqnU4yPw``X62Db{ zZg%~_RKWv`zGX5?c>v@nn5sG)P_?aUlVlqIdoa)|905A|LKCACg#6un93jj4%s2U> z3^uS?wdB{Q-}`m6*RM|ss1L|n?F`gf3uaboX0^youqFOW#1x`jQ zFvGSWr#$~;3Hzoh$cFGJf64FI?~`l@v1yKkE}sb46(e{GqM>}#SZ46OZ&7)(jBJ|ZxJ51~JU2-7Rn<~bKQgu$UOymNo1B;Vsb zn2~few0efWLf5dfgU$Nan~rXsvvzyDx6TjGM7VC>;cIK^Xzw@a z7k0^qR5KqIvyVWZ=N|kQ0-pK4RA5+~eX+DoFWC-xRxb0_f}@fjobUf#bTX6oPAZK| zfQ@#igcWU4{~2c<&Z+xd)Ut-pJn;M;-0C!IM{SkScc zZ*(hF&GG)dijmk&+08k@b4r*X8+)h+_}l9QhIkQmiezZrZ3h*Csb1IF%=ji^lu?j|qerNJ8rvcbKL| z7mvC)`KLA>&=A!xkm{|cBjE*KWkuH<{InxHdp)Ih^0o#S1oC3av(QSP6*GDE*li@A z`mE4>mnUtTLafU_V8XYw!0*g=$f#UQk-|!5Ct8b*#mQV92(<^sq?l;5b{3Wb)e0=C?jk;U9 zGi9II60;wiQ-g?|UuSV#Q+pBwU_bye`5CZv+mMEndPee^lF#KQpBCHOm|n&S?V0;b zs$5o63(B)wXIo#^T z&QMp+dmu%F-~xUb*?7;Id1o52JND6qo;pT5Aue7v(G#|=W@R$EuG`KEO&YT zyvi?b=4>&PcM-+%anY0*9UVLK)YUIj{Az;e#R-{koj|TF}dz}kB(cI6xpn&a-ZJPbb#+KXs?fM78{=5*@|z@f@Jz$tE;s-zn;3+dRK_5PPHt81_)R(f1aaF;LoW5fUT; zGTltOt`+Eik}Z^CsrJZpIt5J zI0jO}$6Mo`{&>6qYj=WYXM0elwra#<121hfHu;y{vq+Uev)_m#u19R4T$JdRhyw6c zlb+~1ClY1EXcKgx*1aiYA7Qp75=cEYxYi6zCWzadCYSA^%&7X2P2e$5><9#B~{(Q8*(6h^CPc8k* z23`+Dut3o!2iSw2(j{6d4fq<~Z>j(25m_mZmU{pMLalCx+S3Kh0vd4rXs>fp?Uk1ywY-owEX-Ti zC&3wyQtLVQp&ic#-@Q|Myz0!czMsMS2nZ^mRgN3?JMezaW_wDx>$mu_hUZK8~bm4HV zjV?Ba^LzCmhCBqSaqz|x|+{T=v_Ws3v5aiN# zxPcvut(;`K?P^t~MH~)qp_m?5lm@4n{nD(RaCH9gt1$ZDWec2#i`(aO zP|bQl^1%TOT!?~tCikIb*FwB69vJBlISEbW+VP3~l3IVbfye<)x-$`3Fo{Ov#p!1n z!|hQLTOXIMKz&3CY4u}~i_Yv}=im+N!^Qq4BHiPZs9hGgzr>=d9p{~8@rE`SJ;X!Zyk?A80hko$qJi&w}} zVa<jSgq(XlMragd$zx96P`q2n@kF_#GJ#T**)89xR z!dAd+Cj9@8HD*jBnkSrA*k+ge5?xN!pp;Dh$1kdJ7TQr5_k(m(C1R6{B6hY4^qplh z&ZPCg%*#?&U}M)WK+f&T7EUDKMZDS79n5R_Hl_`P>lqR%5VqYzs}0`cR16lL{bgZt%iU|vq>UpG#xuT1m( zDt9+O!_KN;J(M9NXhqN020)D;=z>!Q^pK8TP8=|K^U+fRtzG^-3R3Xz2?J> zUd=Ig}?j$K`NrN4i}N#gBVi`mLJgdW%R*El@qvP@o${> zN$Bb?KYR!LZtDI@@o=6w;k4I`ia3Kz1l2!RtHEYNdcTQB!ahHh>+B5RX8E}E>&Q^D z>7XYmdm3H;yIMbWLH24?k$H(1CA!q{!inN&!mo-vwc(I?SC~0qIyRa^-a$!SvHp<- z?_=P8kGlCW%M6;~;Yq*f{6r{lwEYI++*EIMn^nzzQA92f)+>CW6b*lelUkK0?3c8z zg6qO(V{)e#T*vf2vBl%b<=mrcOTp6VT#h!f3t`Fa~BD=5#PQycEbCT zK!B0F+PY7EMM}O+LG^-XZ!A3h2F|Yf{OIaOm2w()PDMWqYfnP&cTJ^NadMu@N#F*~ z$~&|G826->v`^t1Hz+n`ErKoLUn4`mm5gGC4@(z{WBcZ+jtClia-(ax#ewDS=Y47& z{!@PWIr=T##pSNFleF}PM-J?`m&*!7=#RTFPcSYoGB)_*D>4-%d?R4}@r0rqllnXRE z<=|6k)X_0}JrUHltRC;7#W|O;(>g2S43=q}-mzJ<7qG|2Fh!6!4M>UZ}JB%%dTG z$9Fmt1hMSR${P7(x5cFLi#O#SWppnz6XgCOXo?M8;#bnPuP@kYGn9w+mVM$9mb)7= zIdd97Tm|?Af6Bkvo$G)l|G@G40k7vZscQ;)w! z&fcwC0PpVwL*Hvu@%#JW5_R*hr`!7~LL*v$4~H299PVgqJJ1qJ?R~%$u!mOPAKWn& z%hCFHTP;2)7aKjqqKq64+h3mI?fYIaxtTBf63hHyTbz@*2M{i34m1AiqsCipL4SG` zk^l6p>izbH{lL@7Ulz_zpP{3W+xrZMLa^-+@BuSMUPdgl8A2@yB;pNKg*g!FmR6i# zMsm*&^**=0p7V|3%(9X5p331ux?mfBso(W+A51Dy*e5eC?j^QGm~wl^h&>KhG}EK? z##dO`URY5??m>H9R-wqs{a$wvNMp=ErKaUF0{2X zlerS7W+HYiwZ1PoD}0oY8eirvpB^H6Z>ho-@51XwJ+D4e2eiK^T6a5b5>giWFIpSW z*^d+xGhHP@JVw@wZ*Y5v!LM)^s(ZUhG0yI=G=6}<$oh7R#c%^2Ddb2Mnhl58Ro~P_ zC`r?CPNx@d2UuFMx7o8qCV-=9&Fg3to3K3IJ3fnsKy|GEq6_#jEC+(f)hB)5gC2{K z&m)9L+eG+bs_*%D%{+=~RQliT{4G9#tTck<;i<)+68zof;)y}FpedYoAAMHE7DaVh zerTcW@x5!Zkqi6nz$OCY1Poi*sHGj+dEd@Fb%A>IK`25oxPM>_RE>Yy;Q3XB*&bVh zyQ0{UgKy8`s9{7EFWRI%xme!FcILi9EjeBqJrqT;<=nSdh;oVOY zUi9bMgZ~J3=6o}6OQf-C13o`P*q(rC-vsSi)|P8DHa&eaXkLF;NdcZ)`{%6z)M;T= zCjySGBZ$L#w4__=o~G}5uRXFX;l&&1y?D)g@&Rr#1dt1={0VBr>SdslcjzTk`jR;} zVdtq%Pmt-I>f!EiMb`E~U_HgP?2@pkx9CRsqFHOfrTpL2kiyWc27t7Ywl zERNri#i0vIiYohu2}jNfLJLfiTKbNXEf&UTICD0tjcdcR$HsxV@e9txni`Q|BNm}GtGH=Jl+c4UL9>1Tk( zox~m=*@LB-&K|a^l8WYF_NgKY2|KGlxqvipuQRiGR6g zIWKOvddH>zv4Tvq$yt#|Pcv?e%fOIVZXx5}aMj-5o7Hhwf_gok1m@|-uz*(dk=JFA zPZ*(^Av=py4HW^`pBmsq)UKr${*Jue!7w;+==huFFkxRE*M2x?cY-uwDDg_l=$nE@ z@)7qd8{N$@AULG2n)~E9B~sRK4(WpUuwv_IFsMj!9zYM?a3 z)if-#i`XFH*)Y4By|4bspwGUHEjR*QsDdvrOY)b8MNLhqgaE<KEjr=X5j{`PwUe>o^hJ@Ht>GJ_zDZ^@U$F|B%jek9%kqB)+@?30_fRZH-Y zpCDN(BF!J=^px}dM_LX5gTCBeqR?8+M}Vt@N#8JE@|~Hq6g$4ewHPgFt0C0{aIUgu z?)@RVu<1bC_4^Tx&k`<+HDNb){R?p?ccU70PB#d3-wLYyaqh@rA0R>{+7K`?|18ST z&E{Vw>fYZNF#II!yIOl`-EsRBommBWv>(1B~u)w$qgr9U{_m$oEmeUj@Jum9NigL#Z0>_h0llhbu@K?yPZ+7!S z<#HeVAaY|?A9BT<(Q0XYASs=(6AIoc+M#T}!?r-Xa~C2kzl)m`Hayz9td3S=`of6( z*`>v4MI3Brq@LcIoM{ey+BB)C&83rQup=buIPW}7q-N@Smck5?_P$wvx zl~uVj@Z#Pwq8k<0q$&;VtoAB>&ObajH^kF?KPf%X2M_&S%-D$;T$J_g6&5VtRUzo< z2uXrQOjyg^7Ul8h!7HP?ohnSjtOTR%NWR%Ot_EkF&5v&1gwyp(y44MVs&?*IH#pu8 zx$CdxbC1y~4@ti$Aeq`)X=vOYN5ARPeP%;!L1;WK@qxes$!!s9{Vrdu1e#_>*Fo52 zKj>P&^mmKCZxK@S&40%eMSbd7Q(*KoVPlom!;r+qoZ&wTZW z&$#4#C!L=rFvNm@H{Wkz!7A^^iRZ5zG|ovW{FsCRRsz8GK{uW=%hYTA2L;r_Vl4~T$DuO$v#@GX8%5Tbqzjea+hc)#B3_H zfG#4fL*=i}*3ZBmC`5Qc02I?2BKnj1F1h90B&mnBqSz4^pKEu_I(x5F+ z>NE?iO;f;a&jp%OQ7h^_yBp5L#oHGat9yT(==Hoj9^sy%+=GGlpVc5QnZFDSGR8hn z7dL<-!Gb{k)4QFf+R>`{|! zf~`%a0ZaFix=>zIG3}Ys4U9QShSTpFtA~ghzl|@-I>An--vy|$vS{PlzYMSj+lZ~O zWx&Myr$IDcmU)Jei@5#1*qDBy4IvBJvr)~DQN<9sD215t*=Gig);`FDU`Z(cu$34ybZTtdgN9+`irJMQ_;`=I2XlmBm0k zUmy$>40}u7H;LmVLsiW~+^KmjMEka?np2Z}@7vUn8aFpQ-(w}zQ$*<+i_A=#1%pA#-BE5z&J_Qc!6(B zbXre0aMC_$)4h28C7lTPGLPpa+s9GJo{^HillyJSq=p8UgAdB>zCk{A(z%xW^)hBQ zzZSp!_J6s|Y94Mno}Sa^ZaG*f^=gV*cs@PlbA2 z-F-#MBDlxW#8V+4^VL0)Pv#Men5JF#kmc0L##4Z>0Cuh-|KS|QLP2oFBjd$wmJ9WS zTnPeCj=F2_yOLv`k%szU_b|^aKe!eR4Je^eqW}}!$WYO;sG6l8L`nq47jcnh;QNpQ6aj;yD zmT%Xu60$4UDsN)v)1T{tA_s%0E4mmd2m#lJO2)SXj5u)mWz_A0mNxY)DNSVV@Y1OHeaKCZO}^NEw~10S>{T1QMUJd&}5 zU@CCR{3SWm4A*RuE1x(hexM^<)rq_q!VmyB!E@9uO_4rgqdVV?b?j2lYIibU+uRb< z?fcpXV=nZmz&yCrpN?q*Mug)zoYC!DgFomO6c@jcIJV4iy6khjf3503a~kRN7B{#U z1b%e}E^dW3_6wXrToA*duR~Z^15?F|cYa`GeN+sFlXkabp#!V~M3T>rCf5$zl(n;AZ#;?$a08w|Fi%_kQc#xEVJQZ#~W{DP0-}wM` z%BZNCGfK)yj-c;Wl(O(I7J zfg)|$$dz!IQA~eL`5u%@9G1?8SF5xh+akJUn8*=>O1XWz@a4z;(F-5*m+ODy(n*g> zatIYSCy)%1%v|};2N0QQru4!;n?rv)({s60W!ih;mKi^R`z+#f%fk8^FNw`k)d%fI zOe9O^B4V$@jVU#{D(#i#uTvs!BdW(bj}A{3frVD(v)S%rr0Ii0jM!*fei>v1!fW`g z5B&-Y`0L@v!d4L(1&INQtyC`vPqdYZUqO{v$?9$c_mVgx?w`l-LxmDZ|N4on>`U4S zKjVvXdK>(hkBlx9iY=UDE9F!A=)6~atCDyqO#LekKoTb4{z? zo@eP@NAbTjQxX2xr)~|UFf-{yGf+(Z0$=f-fTf;FNd4`P^5G4=4AZGaipO;yg~uwc zhCL*|`&*uZ?!$GTBav3+2p=h!H?>HDY7djUG=dnu6Y4R7DlicqoRCcatba)Eb~F3l zfKBFG6Tsg~&udNydGL$sB~7o#TQb37RvF7)U0eAv9WUC;!8AwW_Oo6Hz-gjOA%zyf z6Q+m5>@SV?U-!3K@xUerFq9koCD~bYJU*;PW95MM_JD)a>H07I;u! zlG($&K5vZn=)UCd*cg#odN8lPj*TN9THzM-Ayy(ShXvbrn+^wE__*f2k?8g%CFD!} z=(U)=HBbw_si~=Z1UK%}`OvxN`}ojq$qO>QjUVb9yRpP94*R9#L|N!RX<*RBYhKd{ z^3pMVWS&VwOhWaR`<}yXfHA6VfOk+IM(_%7(D{zuf8b{#LeC}@ZW;^#!iqOanK+*s z%Uu^{?V@&{hNBeUhV;d<>RSMWU*x-JPMjk+aQ$9jEgEg@Z`sHQy$v6aQKvJq~}83j(pe)uS6B_`0?^>0Z03c)QA0+&O0eV%#TpYsburC zFEPy9Lt3R(XQMd#=I7!Ftl6%`Xr6FjoaDWq)q}X5v2MkrZRvnFeGfhTd2PRk<2^E{ z^Ui0nMbnm#+S(ebBf~x``Wnv&@2C5Af*}Ii?x+tb>A&#@sa=sb#~(Gb=FM7 zYQis=C!G+l9=dO$bNy_uQ}EmOsb-P(qV*>4uJfdPfj-R&ymjt)1hglxD2DefJ8XrO zh1mjO^(S;C^8mT>?C*ofHy;O-&Ppb_^BeiAzHC5-cRESUndwzQV?cl87ua|+u}xeX zOwv$yo+mJ|7;(L<@FNo;?%OX!S7j$lLTV#dKjhm1JmM@2t|%+Ur_%l6D13zjs>gUw zYFYqD2c*Uok@e9EpHmW;qd*h{deZMHcG&5(zwUQJ* zC;YZ#AZDF)@`9BNn-suRsf42E4+rD=cPoT$XmD(Fn2LsMy_}kzM_Zey8)p#dei+v= z1ZGL~rTXnmNAtDH;a$C2xejzy52*t`41~4T+*37UmTa!7DG))>zE1#V5y=&N0W_+S zmPzbOYHaXi!hG-hU0fy}e}E}otUvH;U64;0%K6F@(V&?1rR$CR2FiC2->b!Wh4Hs` z3j7o{T!b#&;O)TAabBKqX;HCR1By}YZjrS)X^Oc+x-EE`Lq62}g^VAC4$H&M$fn=D9KU{z( zXHINkdQ%|9kqM{GJ%}$z@k$*^?~IjspP$NuADv+I)@0)8Yr-dCR*bP-%&6IT;vvEa z<;E)Yt;w@=jhG_zwe76=Pqh4o6U&1kY=7Ikw!YjVe+30O9dOKvvt94^wusoc>>&+z z$>cE{<-%ZnCH-ojr92XFw0_&dFu^P5=K>U+XFfk(?)IU$hqFM|-BX?=I9&8xs7i*VZDjq4*GpK>#x_`TZCdC z;oy5YQ2g_W051_8#JU=bb&D0U6!0NdTLuQe-iM>`=7wHTW24B8W}PH=0kOGS!PB(` z1t7gY-V0g=2?5RW%>j;LKbX&dp=SGqQp_qHI6+WiA%xe^sVY)OUaDYhiQMv>J33gI zsx5sRwO;E2m#v0&;1ZlB+uaiqCa0~3fXX047a+p zP;2&qiM$I-vvT!Tm&-oN>aC=Dx!??n`h9jug$6fiekphZ zHdM3F$Gdxma_{yt7`O}VReqQ^%l!*NvhD_T{PFSFZ?RGD`x`Gc@p)7& z?3P%dBTJIF0VWAY>z#bEdK!V_(qJ1Y~IQlYwGYYIF$vn-q!w8zZrr!>K9?0&`d6$_C2apgS{_IsRxr$Rt~<= zGBt|jdPDZEwsZ>R#82BVE#mm!MJRm~nQeg=f0}aH%4*y z%RYzyaKHZ9@|kLSlk4^!NY#7N zc%XbXp6(@gZbBQ{3hzxE_6=G}lG-`U|2pS1I9Fc;V+_5|r3u1G=D8|;>C}vE5sFX# z?*buyI|$r;@}6%%xks#uWGuvw=P%~r69_>A8&wY|c-z9o!M7VVuVo~m-#ox)D>?B6 zQE0f87Ay?)UQHC?Nc|q?ZwrHv(~vXaPm@m%et&I9GF=N(@a9k*CnicxbfMgOM@O=i zaL(QdETU&XR@95Qpb~!??)HXWsTYu>wwl9QuBuhoD2al}?4h%nGPbs$B(Gh+#Z&5x z62qB(J?aRlOfN0VBLr&1gFHFkr&R=R5K5rfa47wo)4Cx;e%~jujs(*lmATptjF(Qi zX@0k+w7?3VZ_OPy)s2!;2&=TDZ;u!K5Kbh?Wvg~36<9*Np3lcUPCWmOZLFrX6xOW5 z;V~CmyYf#83F~kWQv(9sQY*=8-=+Dc`t{=}()cM<{G`#lhEMVd}x;#D$wCV18A z8Vq$kP80;T#rgIYE%$R_%?Yr!Z3*BAcvF~na|+3ic{+e520N>lcC*co>52UKJ^WDn zJtQlKY=Zmahpt8cWV!FxkNItg*`H4v0w^gwJi-;OMF9gYy%jvS&qQ-&22&!xSP>=jjZ`@n}d`H5hEKR(mCWW4hI1&bYn2 zB#x)`p!WH4%B~J>pwi^%EW|XfRmt{Rq=WwnP_YAU{xSGFdzBrF8qij53w!0#!slU zO&!;wE%_CdTY8^AbS5P1#irX~0y%RJCY*Z2|BGn6JB{cu+?=ZX>oqzGhBoX8J_!!t z8B!B<6xZ@}OS2Xj+nczjr|R@go&K727Y6ea(yr-r*);nI4>&hD4)zWP*TO@$MYd|4 z&sP#*kBRH275hF1%F;Z?WQ+Ji14|;R&-<0jt}kSKH917;YozcM zwJ$*TG+0&VfjNfz@8a@_^JRW=q{O4*)D!Y7 zqpa(cY|GP;B<&e6gL#BCNJHy`42&^t*5WHq*3&IKhWxWz73X+_dkR^{fYD0u=O7UX ze$66DuD8{N<3sFhe%vR#`c&$9OOTVVI}om@Mo?c_syy!8s9FKr?E%SItK50I_VBQx zSX!GgO2Hd}Mf!?s|5L0w3T)Wh7K^e`?R=4l{8^pYMMslKYjzJl^39TSm0y*eZs` zjj^N0(Y@a+_xAz5u9^pAe4J)I#c=#!{?bN=;i*VuWwLD5Z#`;E2va2KS1HkVfRdnt z6UzH-alZn-f|IhxBPEbSYKoBTeQ>38ArygB!j;ZFElQbvo^st9A*@I5=he|@ORM^) zYw8~<%&@bB6O?M)IRaLK(XoGD&Jk_rh}wqZ!|c+N28+0&y~XNf4{|(iIi;62JYcQ^ z_8)SZDn-V93unjN@0gpnPCt|7g6X1=%IWLHFSR!3DOrHP(v58U&GqZdsjfe=1YQ3? z^vZCGT4Yn%1Y-tg(D5!~VtAVg8aA34dQ0mM1~~nM-`Gc(|6H3(o-^o;cp)+PSO{l% zLBieCs@a5NkMXWVZKqj7VT4(8I6O3F`~2PkU433(K<9(-oT9ZnDRN_>)9?*DKMXo; zq$Y*cGEWesWJBmF9gQ(N24~8Nnhv(^0x=IrGH_mm$Iv>ng_;cl6y!k5Xf<|f@8y`Q z2d`$TDwHs(#ll^=#Y^?v<&L}w7hH?t@LK#}w}0H1ZO*tR`6=^2*5%*k_jxn2@PpNw z`x^U2L5#3(v~DkyPbL|^9l!bq%77VkckVY($I8N)OK0=YE0h2JG~5aLWIZ}1u^O%4 zj!F8!r!K!Q`d~~a0E*xJ#IG}h*PtIv*FAzWZJAq4-`aU50ebsIG922V{gvB6MXMhP z!&<~-k`v1CAQlK_kL(DSocCdezbCJ!d08&sb4&Rgf3MW&Q~n3MGWZSXP`NFN;;{$(#X4T#snMpzUXUX8Ye zhFT__;+ONr>s9kEjhrn8Ut%@lidVqV&$rJMFuDCaMCT`ctiAq85ORv1OSmYjm(!cM z*|qxmmC;#%GiSRvT}!a}#KC$P`^!X0x$Wk4ZWB1?`{U0A=QI8uKSRC23!c-f;*S2y z?FlSi`R-rusuL@LI?~rC#OLDIK4Yh7bO4vxkubh9r=ARe2UXff21d9%(AiVzh0eSf zD0sl2?Vl;BQwV1BVgE+(6YN9Cdjt6t(dUiaqeSsnJ?2-=h|85&V-C^ific(NeD$~L zoLR?xpx#lXwLbTnv&MCyb^7aguYLmiWFH*VV_|cyJ_6Xe7EQVacURy`Jb<4zbeHq2 zu(4%k4L?`a&5Dh@Z^>H1E)u?sVSLRbYrGvS^2L1RQ`*oNu}&!U6$Eldt09Yw0V1}&U!HJHONFX7oM>j;P!+w}w_aJEu zMj(w0_Qk^R@iY~^{8{{q`@o>P%gNDb;8YydW{7e&=>qz+y8U+74>hr@TU5>!ww2>m z`*qgCK5$nR&W^dy4;asV-97%XbY@$sB0&`WC6LiakWpk-LEcbAMrEG9z7KVKt?Is( zeXZlxHZuF)X@-gpX3q}3%`#y?S z`uWuP^pvVT!5!K{co8T28Ibyd@Z;D(tK{VOH;B0(K(k9*s(4A(!X9m29T3IM28Mx> zRPTg~D0a>A=d`zhiEXtq=|Xq7`DL^G(m%fU6rG#$fa!YK-e##J(JI0J_t(ln!Nx+FZC{Qw+}s#29O0Hc^Df-3>; zqMOEr!Nq|@RzsXXhlktNs(5T(MEYgBH$a(qwQ!;AvaLI94^u^&b7?qT&$#)nm`Kfz zts}fFzq!tFm<6l%1l9;bB7%5g!dr3u2abG4QMu3+X=6uKCNf zl)gDOFsZ?lFF6Po`}D8)c|Fm5N0K-BPiGGfiw>bFeL20IHpzgDnuy4k&ecAlJDjoT z=Rb%&j5}X$$?Jx3JF*X>`%-?n%XLJxvLPK6O+E2B{TgZ-c7)1^_Pk$TN(KbQj#!B0 z{>bqQ_#(>>=;25jZD=*8 z%C7gRmJzD!8O&m%Z|{pSh@;#h0r_m+hO-@+$W=k)n!v)V^3;3nDWU_TE;=%@O-;fc zN%OZ5-SOd}qXq ziOq_o5F#N5)n_L_YfNH(QbwVjKNLo)k49XaSX`eSKmSsA>jA(4E%-d_E;_LLp$3lL z)w5|>A`Z9AyZ@Tw>;4uV>XIQNsr(&B&tVhf2*nq&hC)_$t(kwq?{k!n+T3Fzd6dKz zG@{QeIcouHBkcCRrA_zm#ikPTR=eAj-R@E<$P)e4waK8%FvUutP;g^FMvBfQlQWk~ zhjwjq0vn*7uBJ!9N^L8A@-#Di#xap;-S!Aq9DiS**|14fw&*o2@5-*u$LK@<_@7Fm zo8XC(e6;llH}DYQc3Qr{v0i>BbmTax%NYanUf?bzbj*;P3KGqiAM`1qKY+Oos9JL) zzn_#wb^HZJ4xHt8^+7xCor_Sy%#`U<)XGN&|AT1{td~}3gj@6Byo1=dvF$z+ddeeX zK>kCVd(Y_v_t<^!Q*~@PBNx-}%g!@oSqFJjG!;b7ftGsZ0~PP~ej~T`%er}y-c^6w zGl>3TGRZT$7wFnFA8bAgYd}x;cK;(3T+atb6uQ@W#06A{YQ4~$87+1LO~kRbi0f#h zuR~WPi}#KZzlSt#0ZRU*>W)E3tdlu#pE^-tb$R<(SNjCB-~HWorhXm4*OO}IehBj(>T?bU7CQ=&tEm^b^VE1Q=yf&W&>2#Kdw)FlIssAC{rss z*$pN4X>~8RVfUl=7dehrO(^8z>!^vd-CLbJ@jv_h5Ed#kP%ti=h7BtiT5LVR(UMAKjF@9UnK z^2Fxe6%GjoJlB&C9+!BeEKbDEMpJ$OA)=AbD66GY_wl(gO@B1wnvg@ z=GDs9L%j~CGCn5f`X%HJtK2EA`2ZIhQ}uQK8rWS5h^Cad2W)x{6wy)0>*~xC1x2+e zAd9zOQ8$_bK7I?fj(VSKU3Rz>p0zpewR*rAGX#_JNZRJ|VWW<46Nkch0fNJC3T#wWz^&l4U*KV$hbl8r`6Ic`^3?q0>1VZK2%6OfOIUPbGE)N15$!bANq*N6w-$nB8% z7ORjGJAX3n61vr`RBMaRLuMHIr+iQzuBR@7SKmRsW->5!HvshC&2UOrTv|KEdcVq! z#)olym^tSv2VRzd39BGvO+eb^8&gGl>rIzm(?U|1&rZ~~q zOg4G`;)`YiToJwUJ_G{(%inxL2yL8~w{hYiT3cA#N z?6_XIo!i%OpN-2qOH+TiKaTy&Lg2o3|LFMFu~X$tPQChk6uG<@FsmL?8G3n@af-4f z^fKR~b2DzlG?BMUrKi{LxH$u-23+bKsBgN`NH1To6CZEgKITmTuFhc*?1)o1$iN*N zZ*$R0?=H^D%D7b9p?U?2+y^XB@-1XA8ZM-h##Ll+*-Ig{V!agu)xWewy&SN_h!bOR zBKy8ro&MOr(6e=Hi9FoktC)Wi-}n-|-o~HzQ@D%wMlhbAFXpJiUE%b6JYA0P*Zi<( zGW6p;sC!F;8iu@6puYLLrm6M=j^Xi@*(ba%XX%(KY`VeAy26`fc`(-BJIh@+I`$=MeN{UO8Qya}<(i}ICd=Sw z(Y3amxRAFEZoisU6M4s5Q(wtEU8Cl-D zy5&7Y6QcCK?E%5<2;!|s4wCigBUUp%MuJL{5dA!l(m%ET5?S|MhRl!yF0o>unta$3 zyJZc|JwM67jjZ(15?&jyNnWvEsM?;1n26W&ds`q$MVuKh*dVIgK3(z4MO@%TIT*`K z<#ZTXfw5MCFr7a%ajoOHfEJ;{nHL>{6sRiNp6gG(dJRf!@;T(q6WNE~X)8qJ11isi zhHV(TJuJHyn11ojp}i5R{x&Ka3Ur}Z)7L9Bi%PzP8O@SNT8<~Pu^*N;>qTB0kdWwT zt`fd-@Jj%gG3N4eWIb3S^m_{kUJyCSgJw+9Z9DG`<66!q(|C~J7fw;=JI`qsp&}lK z&mi=LPToK<`Z-bjRxIuK7!CxtG+?=z?z(~C4yum0kO>hIHq9BX&IKb+Ui60GH0w5^ z0-RdZgww{sY?2^pcnj#kzH|edS@z$6dwfnhWwWcT>n5Xz*vD_F9aTMd0f2g(+EPZF z<~?ldsYjG9!ADm8>tq^J&_tO7JEVivQ18voUPU6y)d92aOw339PJ6&H(1Gvb-7a-~ zeqp7S>??z;iE5?l}Fo1n7;bliZ6hgk&?45>fO`M zC9{(FP59qWR{c^DqF^FRr3G3Glo30PHh!=Df(sq}Wjn>bqir?3@-&8))Kuy9i@c+(LB=j za^E3|c$J3ZAU6#;J+DWGLsI3kHDXhP3`u13Ztc8BQi`G_;lKwUN$Z*mUAyvI?)c@K zU&HK}30I$eJ`9&|4^>o^D5aom&k!Yd|66N*7Y2g4<(GSz=5tSYztU*_em~o{m?tX| zng;j8{DkJAYd?T$#3nWkR5s;Lvy0v3`)3FXFMNQ@3rm4Q=fy!U*Tw~S;|!ssb)qO_ zdZ4v3kB2N^3ooneeeog6`@^a~@7KWtQEjgjTxuxce{`f8K`zf?5J*1|0>Qx^#JYa;YRZ)on(~S0&-Cw&X z7qLh{k-8Fy$3%0Wnk6~|9R(#V=0L%8T%rF?6Oze9ZO@16+(1TpH;V5iRP@V-%2v4s#73*L2FnWFM z(l7P1S>)xFo(-vk?bhv%t`Mbb7FpX}C?kqof4P<1WHP(iAzOyqP`1G5^0%YHIl-Gn zPatPgRFHJ_3dvwhpMN>@hwKAJ8s(a5_T3g^=Yj@6bbvRCDlQS1+vh`QI8hs`?dMmZ z1=J0d;}^X?&eOZ$6iaE%P)}?M^?eocBnXC)EV&%4>KYr3G(s_N&cLP>FkViFA~UKEpUh| zim0kZ&l`V}wD9{Wm9;!PiI37hxDgqKN8lZ9%hh>g{l{tILrR=6%*L>I%ytX=-6B=L zNB(24`mMUd!u-}9C#HvnZ9k>o!`4gn38N)kFicTzoSnx(T@!gzZ{FE0t_*r#?cI`#`L!*f>OJM%6XS6-nV;&G!Oy*=z6$f2DA_mm7@K6}aS@#C!cET?vSNMGyj-fbReS0J^1rN|HM<#6AFj>IUu+x_-U zujDQ20+PYpBi?lU1)_5^2M--L!GZVS)N=KY3OPhM={1l0@}v(~o)l^+Mf1t75M#iO zS<72nK-0-()cso_fnap)r;B906vLoajBDj$SZLt2%?`T}!ct!T?b=eeXnEMBP+Ob?4UDIM)S7(s zhqW#o>2o*Isk7g(>M)eZ=PW(X7T51Rq?piH?sU5I^`Mo?Z6D3u2OWPWv~ssk6&)QU zrz!ax?C9gK0GdpPFtT}OQww#dS*=84+A*#bl#TAig;+-FXb3+MRXAj{x8sq?Sr0Tk z>fC!szFo$TPNY=za<&5`IgahE`2pr0i7CSq_Ra0HTWYoBi@i2Tq8gM`w0!LtXVP%g zWBr4mGK;7aY=w=;uTKw4-L#$rLZ|L^TAE(2Yaw;t>d#kJ{XzfFhwf&kK1lbnO7Jz? zamdD_I3OR_F5Eli!Fr6})nH4?L#e{MyN4^XQF)-mX!=nbg+HZO);D6Q52x-1jaiqh z)91F};(d%nZZX1j8H_58hy-Y+?avM=#>%-pOn$DhiW-SuQHak)@r<4|{0r0b!@h-6 zB^mf{AhvP)bdH$SZ#oSP)z23bkHOg!+!Jp+W@c zg~i`uPInu;Lh*Hv;hcJSgdbH;ru^~hI2sSwCt1ITqG>;nKMg3=xU1>+bHAiHAp6Mr zN6m`5T!pzjfq#CVUg>bA=M=i4!)U6j>}S>J`dbs0fqB(zc`nDB@hJC^7vB$Da>@ec zV*$&G^o4Rqa?JSg1K+uC(@m%M6~5;uLQ&x|4{Xo$I_wjUSn$?Z$o{8-F++6nsUh)}Ap~dOG|D&Z#Up53k^aly~vTmEcT5A|GIdZq1H4-)PQDvA)BR zg=ww;*a6wc#>qm2$XI%`Hk!TMps%609eKN+@d2v&@@1&*TI;|3v#>TAlf^pTTI&O+ zx<8V*xFKX^v8Q~gVzI!8gXZu%3+eLO}jON z-F}c^o=>kD6HKp=Q%l_!{`8{IAq>uDD4OQ-`Yo{;-so2QhPnIwBuSjCj}IfpJ`Wje z3W-53Bcnd6=jL$Xm}8okehV*~7~MZv?moB9Fev&|N6?VCSyK!k8_%Xo_#XDNsx_XO-fK{*CB~1_El(VH?Dy8DmbXvx zzVa6c0??z(z#ARfd$+h#d;Iem4=%Qs?GH9x)8SX3d2`dh`{*UUyaWZj4O9mM$AaY) zRkpiKth7J|iN8O}j+MOp!wN$D9jn(Za$bQk^jM{p2p0n$vf>TsOZD4_CAyQ&tolu<^f0;`^X|W1u`fZ+bKt<+ z+hwXEOE-?EsuW*P4D89YU@3SiwT?7bA)eoVwz}ZEm4p5j4`+}H!hLX`e!lllx*kJ# zzJ1|S!rJ?muhwwr6oH4V>zaMf12J$CNwx`G&VEkJS*q|<%~4zMpaB0>IO%Yk5?=>t z(cm(fX5OQf%O^?Or#=Jkvr~U;xXlE2mKX`Uj1`I%JVk$h+sh4KI-Q1gKgzdByVoMh zVv-qAZ%O161RG~9A75+C4S$AQ+q?(3NcEz;tlh#ZN*cqD;?A#MT1U+S82yp7j}d4z z^f4DBW`Uk)zFOGa_ruo&Kz>gb#JD1rJUvwQ_2}~GM5(&mi#$-fO!uNLD7wQbiFe7+?Dmm?YtHfRP_-J+Af&|0VF-m3MR|XWt1hGs-ohsnd4>?c=o0StCIh#{ zsQ0CGI-mJNifT={j!F;+>+z12Yc>4ttFfJ-z4`q86>oyDNwrDIo&3*NoOL z_lUPl@^NiY1Qi}D4S$+}Hu`0mso2JYj^%BeK^y+ja5G2HEXmnw-DyaMUB!sSSzvRWA zvRMNw@*Cuyr|7J9TvT)Hl)oS2v5%Jr58a)};DMoZ&Zv@r!@_wVGUDP7-Ff!nAdES_ zKTs2~&HTcJa&sMF>a9e#LlM~SwVWl`-7LXl7z^V=yTftPLRaruxo zQDFD|5#gdMddu;aecK*l-;FfP^P^-pM$``$`hFl6Kb+G15#OE;k6BqPBU|hE_6o*L zh~_4+1CuW~d}UQ~0kk08v$YKZ*g0fVhIG8ees%(!H>DpcLwwMjw*_yh%jE>LPkifW z&S{H3Yw_`ogDl#g_2xK?bVBPMeM!Q&J!i2-9fq69oSwl3#$MRSk&hON2Oo?*5LcHu zf3>7^(2Hyl(}fDW2lJx)Kzwwa|{LArmX??tk z^8Bj^o0{@AHdsl{U`qSvWqS}Zdf(e9L*~P!X1i5i3{IsiLbXMU(Y_{zNho!y&psGf zsf5q0b{3*h03CX%?3XSy`0bdNQIIt!0hj`zs32k|*tJ@_RWxP#Idu zzyxDZX}!hSrl^w+qf#LvE<@6L4jw~I$1FVF%Z+$Ki=aOb=nF1W$Mg7eEeY&5@KAHL zD1qCi{2By+B{5;@Z_MpjXw*aYg@UBDWy#xF*naA=M{%N0YZpk|r}TE?@88w~cm=hmyR1c^7Vd2 zo~@wHl+TKmf8$@EYc>Lpy5GKSS?BL}dynvPa+E(;`Kj2vCLtZ|dl!uR7-Fa@FkKrF z7=T5bF^m@5pC$k8fe{jvr*aF?2LinFC+tLOz1`8L&283g%Ai=`PRNJc+3!B*f-bV2 z@M8SI1a}?RpOV{XjWjI2BR>4$8mW2I^fCg z+gCgB-vOND*hs!|z4gQU<>S;SQOH}Fr8D>8Pv26EgO*~q0)h|!5>Gjd*D>XWNwl6} z2{qC%BiYB=?_Pr^7G6MAFBn689bWeq1+A&FOk0ujQFpk{v^h<8L=A{Ll77}fY`8r` zkr>|(H_^s8(PY^f4Gybd&qwd=A#2km6!nK|1gcmqqrX`)c6U=e zflCk8`Fj8Pt9CA`_nO~?@Ay~jjo-zMOYINSu=Js$d&#)}xX1fNg2)!Akpf^%@wiIm zGkb1J7kLBxz%n$sjkCU>Uw;n|Ce{sbwB8U0zrODe{W*?_4kX9;?FCxHKvYiB_9EdY zi7I#WL&En{W7zFGhFrr$qBQM`JZ&4`MfjytbxJPaos1q*y!hLA!27lNs21^kn&dN( zvOY}5XwIgibH=F_wek8bwx71}-mgU~xg|>D@o)r$7Gpsq*YD$`FXVTxb8kNHaM9a8z~MDBFb(1^?Q!fH1YO6H?cWBpBdKjXpqed`(iIFX z`Hgo0{!f??R;!_sm;cy5wLql_d`n0zITl#Z7 zR!LIoC0yr?bCZeGh2bRFpmCrA{^+Jk^k~TK`bLDApeA3QSkYlxNv?{N*!V2rA}T=& ze$0<27pY_8BZ_>j6l0n-XT7>gSADEL2kc`+_XS)bKHIm_0#|Bwe_Qb^+22-qIuW)U za5k@sQS)Bu!D7{CUOd2Dy+xBo*I-qYF&f9G*i%7SN?1khg>?@#GUmYn)832h<7Jra z?Ok594^$8^CW6?TE`vvZWGU?egPTJeugcSC+bHr%hq9Ukt`SLK!UOw-O6QMVDk6|a zw=@oLAIa#~nWek%<(x!VLLtkKKG6UG5W`i)CvzdmG$8Q-#E<(#9??zi4AP~`L0h?b z8qZj4c@f=D9SS4TFaqc%?dQdKjvF)-r-s@cJlE;7v19dY}dU;fqxzWibA zkN8#p;^AO!1YV!*puHrUz24)7TY)zX@i0K!sMFLK96BoIGOFF#|JRQAY`8L5O$ zc_yR=M4{YIT=rK+N>2NdaQ?$1LORDi_&KAR@P`FSSaTF6vADc0Yy2lW)8ufFuaTk? zxw^*YFwEKh4Nh;uzj#-@-|eFHXgd7}IFcz@7(WQ*g>Ho&MvioJF}|nzgM=GkJ;y!$ zh@@4afjf+Mr@ycCe#duH_>RT)Ni9{(6Up&v8dur zYlyiIa3o7~WF5-JYu)zGWIg?`Ipany7DS=^LTvA>{NB(up%=WtqIclw^6_N7lUtkm z+^PXP>hD)X?%qVD&AZ62 z*-})cRFbio%IL2gma2NVBx}F{3&I%(s-zg zGtHEni0VaDIZMAMeluz>gxuSBcyf)sQn3+oNb?cD6;A`4uM zwp{yT9p=2d*5ZMkEPZ~tuke{0_F<3zkz_#@5b5pr@487};-(At1@!-0{6$HCZeLrW z!Vwx4FC8y!tDVcMmwb=NC$~jyIk8(bpTH0U_?hCk3%-NR~mUiSHQ-x&O<8*&s z?f33cCa97v-cB$^zD1jPoTB^XMpiZtX9=Lkw{S;bK|=6@E>K;W=lf*6{{-k`cAQ<$ zCw|1U={(HSMG09u^wglKx zc{C8Gxq(mb2OU4v@=C!-f8YsHGm^aX;>4pM-iJPU-q$!GT6FZEoHdWceS`c*V|HKZ|ECU|KxI5*`Q}f z#t}g%($&Ld=Hg3sAvtjQ=xT}nsnYKX)~)dnhM7PwOWq+HEeF}_ ztsuwaJdq|npH4_D#N|S&3=WE9GWmY}|0MYr*vt%;+ijhXOGBU&lzYyVVM_aagiAU# ztnRnZ^ASAE>ncv@Nbd4J>L~RE#UWhkMuVbn)8i^X9$&AwQ0zg8U(yxl>pEm8D%K%0 zFIVpOntW^QSLgi!r2GKj28^9{dbCJKH}0a}=C!B2rQ9(kH zKIn3Il{NA)K~}S_Iy4aG%=Y36N~ppM^}aHadng~_crb}2>oW6Eyw1$N)$kYJQQ#7r zM1{HibiPZN=J&PS7?zTQ^bz8kzJVV0;>-XR8r2;ea`(KX^YgLi%&M^dFhk12>iKgP zo137JWBnJR!rI(8UCUkvF27!{uQwP&gZ#vENY%K!)ZQtOG6#|Z3PPu(193m-?sZY8 z7YvXD=XB>#4c2CK8y^#eiZ6@;B7=nurr2as@QK^wE1XAw?C?A`_CRPLtq_(1GwTU3 z>$_Udy=)>NL52q?RcuD#k31o4AG)uB*6gDS2xCA;+ImHbZXf0sr~`~Q+I$Q1dt`WC zc%$K@Hqyhv;&e8?ULN!v9S4-X&WGb<%b#kpYn_gz_w-rMx9ZLO!d`;ITRZT{^Lt@5 za2H()aTS7jHJcO4#k;&IvC9AiCQcF;$a+#xPwU)-iEVi7n;{<)L>F@OB76o3-}42V z7x8<*!Ysndjo>2bN~`p~{|xQB!+ZcQ!?;2E*ST{k7Y3J88x3=P@ExuHk#pi^) z0_Glp6tYawzY3U+z(LJa+e zCgZx4UL&?0=J*HzMC^>N`Y&pd7x{dLzYngkkCI2q$X93Hl`8Z8t}U@_>G*JsYK&3w z**7tvUbGyYp#dK-2jlm>)K)c}iQDC=F@S8KX>TEf-~zhe2R^$ae2mwla*y^|<+|6a z{;UV53#0Ff%mo2|pPXi1(h%sCZsH&wJ+n-jZp@ zM>G^*$ib%*J%Il4(#G^+TZy` zWPwmg#&Ty+_!Fg!4MJ0U<|-qS7w)q*)uD_B!|=?}1ZS3l6*Uy``YuDsFX`G%iF+Wh zp+v3Ph$ zjFAQlx-*UbwtnB(P@L6WUiRe2fuz7y^D4ISYr4vq^ktChZwD-hB1}4tei(?-$+_@P z)|5`b$gjvR7|6e1!pB3xT@fVOKVpIdJ=$qs;50&4TE{+ilJntx|H8fX!yCN0v3p1g zvn>E;AiTLzElr3+#N;aO2kjhj;6T?s{khgO9WcZ8qTkVY0Q{%iqf8%3o@4_S8wqs$ zN`bvnd!+Pr@tg8-lO>a0#OvI`SozDgz4ys`Si3&M!ztH0KRM_2)N~&+IJ7Abn!mSH z&R{A>BVPa_DU@%$2Wa+J_+sQMe5Rhhi!sK;gHE^GohVfQhf)Ho?-RCRCGKP8ayZ!U zv(aP%qUqtrb#vq!rVg`n$x~XYVt9tg(jaxaVg{IR@3EEy%d!D6l6c-4?d;l*OEr=& z$0oDCsmL)w=Eq+z>D+NGARC{Q$Uv^QWAUnrL;W<93|4r(^>`bjTRb&(kA!~Q)l%1u zUsLY>b~hlEb@eY<-O(t=P`~4R%mL8lyeo1~S+735S(B?dfm4jpcHGzS!O6wM z8osgh%g6noqyN{lW6eBFV}#IAiBBqzkMli6%h<4jdkhWb>RFfl+jG}9syA}0Sx+n; z;+N(c!jTg6V!gy1QVjjM0KCi8^Z^QKo4sXi2d`1L8`#G9MF#!nI^0--SV0M#;0%o(` z{o^#3;6FcN#yywTcQ-ECBS&SgLefAkHE+qC8|e(o-f(=qeL@5ytCP=$WJxs|1upxX z;;^cfgmQndPcmT-jC6Ub%>cXCh=+8vDqZ5Z+)s)`3v5Ll=nGvvF_$(n#p$G$f_eQz z9n(JGmEib#XuYUF{H(m|w=-aSadf>eO}NeHlwMG--_OK>eQU+@W)+(%h?1A;bNbA; zY$UhxK~tBzLEZLaPDSVbmY?KvjSVBQCW>GxZ``k!AV&0-PuBWF2A*J*Zsj&b1ljby z{@VkU#L4!lAKtftvkcC*HRHFfqV$2QPchy#1SR&?XW>2k(5UcF5rg~!{?xxA{Uc;vAZ)4A5wS@v(FrZ<;d4&*vhL# z6(1h=Oy46XmHX$anuNbV@cx&WYv&4qzieK@^9#6$ll;)MMj|S3A~^&qHv>=(|+pKE9gyR)FC12EOXZZ~Q%axA(smJ(y9_*sMgse!8U0 zY}><&BH~McUa5|_3Iv}Y6JYSxSdP5hGcBW~rmez`P7l~7E&iYd;wE!aQ)LGbwg z#pBB<$KEVS6^Wj$ogrv-nd8US&%(jBsh_~vT@HIYn>zGQKkmW4%Gf1;Vzh`J2*mHp zE%5wx!0A5}D5)48iIv1y0_e$}xSEtNS)S2vFvER{R8SIEtVwJ5_lFF6xVUhY3QsZ+ z!B-$J34&8P!2GgjfA+a$j#nozSgefj2F~Eh(@Y*@83(>X11enc=F_3$;wvj1tmFJX z2Dh#dCjL7|o%NF0FAq{;J>6VAQ2(r#?!=Yd2D!zBmK<7t-$|K2p1EE1Ac#sEE3Nqx zpH5JfuavlZCkG8Sw<_iL!5`ew61PdW$0Y0rEEq4(K;gvu=e@0Lo@S~^yU7EI4W)Tf z?|BbaW^?157?ck8n^qB_TA2_>u!^IdPjJtQ2ou^w?H9Ol68=ys)`vQx=`I*g(fuv8 z(rz)Kd>$y*4~OnB+pValxIr7o={`p1LOH*IH_5E4zD@8r0>w4Av*D0|4+1@*Q z6}tfIAo~2ALHKdRZMt#V%w3ReygiH86NNhRiGd*H%V-Sc6j|QltajJr4|MuVe zc`R&jQ_VYQKrC!CRP(c^#a_YI6tgYBzqoS9ew?1V;1^eV z$^q8fuG_;a33JQ=8zjgZAdcaouwVPExDad*yLJ35vAMyTgUBeepY|ypu0-DPC|D{) zEDa)oQbuKE`W4eTXLdx)?*l!3v)dSD?PH&jxD)>z=jq&8dM`frK^yN+R|PbkQyNgp z`Jc1fZ21dM{3JEfVz{FFpOQ8hGzfH!D}fUnmlx9huz(m0(S=OZ{DkQliaS)_M1GYL z2Fg$CJRI}Q4~Oi-Nylq^DqBIvuIW`}*lEAvg%*R%dmpOz0?!F|JwZF0C{ZFEifOFl zQutVs+Q-+NJu=G8^VKVw()QQK0xC|hEf$B=)Q}FI4OaDQ*^*2Pf!Zp&NdtE=n6!M3 z1HFhNKH0K8sO$8Rb-~rs6bRxM72oYEw?~jyK7|JMED?(;j-Pv)V8G!W=+pha0FS|m z%S$Utcm=)lbCd_H4UxJZZNmzq&*a=G%MTn1qty;az8%LCQdgsAOy}qH2-vWGN)y;> zpt>0Wl~g)oLj$>qh`{g`ZwT=FYE3TZ3w*kfCdM`O0L2-Q-aTO^(r}PDIVA|~_zK=l zd%Y7dX`f7{9#_rlU{E_POc`PipxkaB*g~zJSS{JyONx!L%;@|hII(=G^@Gg7a@Dbq?#f=4;S8+R$U*9jtqVaV#YRh#$ z-YbfmLs9E?ArJ<;o~`EbioDmx*vlgu959=Fa=e<>e4bCZ(8nHpO2GOunR+YdpAD*) z;BGEJ=@r>Y{N2;5ID+|JR`{pp{qblE&dIx?$6jshyb?o9N&2Wq*%1KVP_r*ZbAc5`{>RzlYhOSL>ZJP3;7=vT$<_s~K47 zsqz~(hya9qZ_RzQAOk0{>v!RxQXt`imloVIpB^>M9em}m+&={j6Jlc~taXodiQtO_ zFW~T_xt0pq?kKyfeHdD)^+7it#|j;M;ac2f^>)-=^!L*_r~q9uznXwB)ADS_tH6(A zpaQniK`13mkG>q_Muz=R&6_ znbjur`^swqm4o3^Sf0B9QR@?OA2RtPdpm?r%NJ(o`rFeDc|d0bSpnoEf%d)6Aj~I% z%P?-l_5BO?MdJ85-IXs?zc7Nu-OnB>#bKOIINVPN&T*IZ4HcINIk&gXl41Q(XJE2h z!<`9I>Sd@MdVo7nVOOpk^QLfOKS^GaiDuoe$GZ2w_7OV!$30`#`AJ6dsx+33y@$-I z;o6a~bkc*q`-<#RpM2pEf22gqWo?=JeM{jZU@}ng^)&k$xw(JKlmq=Z2Hv|OGmSW+ zU-UzTu{uA`Cmu!CGTJ9i_S6yHVmkKb%Z%Za^+t^cI9L_JWp={FQs8?Enm-aCX2p=m zxD{s}J{rQs?1Zq5iTrS9Sr)YT`=<#}DIU2;ZcP{XKIlZuO8uWroIC^gR%!Xl-tv1i z4)Y!uYjG}S7J2%9%N+chH--CNSD(9|p<+ItPd9Uh;u<*Q!XvQEWhC@c-x^x>at1iC zJH$da#Ao9EX=lsn)kNwv$Ku^ivjWmMWv>Sj?z!rCHxCt&99E_Xkbtv&{&Np<9-nw@ z=>w#VYEZUUzG`p%BtGZgsdKxYze*uYOm=Pq5=I)^FK&`5FH30JgZ4tl%aEk4o5a`+ zxkbzgi8^3}V!MczG8-PVKhDkfz2HJF`bURr)g*F(z@^rvqYw1b(7ap^P8r_+ni8h< zk0+?n`{a2@!Wp&<@Ku#Qx$}Eg;V~>R=2G}^ci0t*{<9?0eI^;n zxYTunNloQy3M|g=fp*|D9h;K}|B{}z>dZ0wd%qlg-!jLBWOi|r4eCN%PZIiu_JDW+ zgvLCHH#cO!%3S?tYrQ?!dA+}TM(|2+ubS-c$JxKxX(;Ee)XF0(Uo(KuuIv;V19CYth-lPIZ&^*!9HKRp#SVw_r|Nr`A_lcv_oi5=VHXA zS#Vf^#OK=_`Gg!Z;a(!Ahj&ptF$0t=H-E!K$wE!GI<1}|yvpU<&n}?q@gOKj!?bVK znsKYlYv|emJtLgepqD<47*Hm0z8_e1MwLe)$h(FfW$7M~r^Nbef?K;=^LRK$;T}4j zh@^Qujn*yN%l^{Kqg_Ul*vG^3+B9!44pdb|&QB`7J?Qn_zRdeYyQQp=p>R7@444uh z{eEu^2*#Y6@dtb_RAj+V3*sU&;GT5N)LJ-fzhlq1>c`#}z?GMS)`rMD4PsCKw5pTU z=dM%f7vpIH*+=F5jw}^t^A8Ec33yyxAYu6|dZrfxIt7hxq4bCULbjFBDybWa+r`hK z%NV@Bi}ybE88`W#$ySR=w2H?bh~}Hrs(?>aR2?C+1`}G}RIk@P1vMtdm`UCmEyQGt z-B{>H*L*|EU&uMYk?^eHh7z3!Cw|-nn`*h)2GC)ImRkz|q{tU4k4yGG#|*_L z6LTG#i1}Qvr`BRn%D!u~Wlztn6`!w-mH#8@%+?fTnk{@wATk{?$SjjGo`H;tB9nqw z-;3(~)c(KfDn$yC%*cop?<&6K&!hD0?1e-g>5i@fp3XSFFPbgPY`+lepo{E6LQq+k zx%r%O z1Y}lwBmBS<$TpfwTI zzB)qN`Yeaj5Zn6AxUOw!?=&Bi?ZF|_zlTqYDb&xcS2bY317f6yYYSxx=?rmuUN`&390@0wWe!YO{*$y3m(M+WUz4ih(W#15OLV&y{$ zC;eF#k4Ln8e7{7?R9A%()asnNzN>|i4L;Bh9$g@I%hEiivh4Ia9GXD{!Q3ri&|5r`ZFq7KX~1g zLp8PeBa^uom2b`-Emc3GH_u$a&Bon*(QqaI$*5pXnZHNMP*|5WN{L$4U1a-^z`vB( zLm`m2t>DByS`b50mc2ZK_X+rRcnwD4%NQ=rZ-J?Z3ewcVX!p86P@o|bd@P?)r^bX~ z#sZiZv|S#Cavk%BhgyTgoPOY?rW*yxpTMrj-WiwIiswRcWGu>R5_YZ%5F4qIQSj}~ z2~b$-XK-6EFKFi{JGx0UIoEAa1P-Tt-rH}-mk`%|OHNsP{I)(}Rj0E4RIJr#eKeXL zfr8QEXL=^A@6t6JUYKSb7k$2xL7nd}m=_GvQFbo`4uTk)&hN))NYRP-^PiVb3ZwXi zzehh#u7;R)lG?NPE%30!Aym(sN;O<5uc<8DiO>6ZFP<wQ4-~amDKX4D! z0KAUWM;*FraZ~$1bh1ma=n)UNf2$%fKwVE@rFmGwVXc!Y-#e2pfbXKGg5q!QS(Vm0 zr(|wOR-$O z3cGou^S$jsXcl*ry06$ji_{CFv-ZolQ)HE`T^Yh-QANo|>pFMK^LGSQ4n&RM$nO;o z@vujEcjASDZZ0;+b<7R4~yX0b?_U* zD#r=fQAkqj*FGG|;)Jg5Phx3_M-SGwNc``+@GO zvYw(i3eUNxc22>3TV>HEDeHR2<$U zTzMXZ^M#EJLdNy0l(p{J$`|596VZYutaD)Z;a{K8QF57sdA;HJVD6_|Vq^rhsecpg zD~Uc4@c(ye&2y*PI-ahu?GOPNTJ?*eMQ8xwx$baUg4Yq8M*rC_C!UHpQs<~@oXl+H9Z?w-A{pPr9<7kgW{-Pi*35|pAbvsF6c%VdQ&X)p-w;jkiF(8 zaqZTBQq2`$0e-)sur^qFuw$aK^R882)z9+>se=M=r<*Xx<4Xg__qBSiQ@_62RCX$1 zy=C{Uh9ustAF0EE9=2axT+$^q^w%ZsU53U<)^sp|Ko_C>*4@T54qmRe(!r@x!1b26 z!=JWuu+Fh|J#{{gwP9=5IB1LeOGJs*jI?a`f{WR*uV~uxQ)~aEvgrO2FW#& zSK@U*DY_;C&yuorx{nX^hysI97(`3JF|Y@eFQI_ zAcTg@FaBtm{xdxnK&7F4T0D4iFgVUs=1B~7Ua_z8)*Hh(+WQ(Tt?p7?ETr_B z!rAK`w($0O3!!R(PeCJGB~476_ZIbK$y zbzd+2$3M!)xsQmQ`J~AGKsFZ#{eCQ^u?-a*Uq|YCyL!U~{?W)}Sf?@iR`&~fHE;%# zY%^r03WDpb-^CQ;+W`$3Z#3z>%cZ$!?IRb0P;x?TK^n771(>(l0N}!>cHb4+I%mVN z+=fcm4!fRyE6EaMla{H0&=eQsvgxWT?J?@w zGqf9hsCnzp5wX9CVXuEqm#=+YZ7r+jPG)l??rvy1-Y1PifZzG8 zK?=>Um?c|zJd6J60X%pJgU_?*97?)c3yZuWNcP`Ke%)-glz+i;GkMlm@*10#AhEOL zsJOp+1OxqZ+Go0~7~j%$f?<|8vqP)Cwp+`@a^X^$u|F(wc7jb9B2dxA=_yAcuVM5p z+2{SNytJ$Llm3arRtj~8oky0eWVZAGl^P!BU+<1F;f1*!YtizZV7yj^FheIMs(Q+& z<_2xghvn@%HFKzFn0N)sMa z-M<##)-6%_{v=yopPHKaP(OPn%t({&_}0w1UBFZu!O8eVK6jt3{&T2Cn(f**iYW!P z7W(($AKL~zkFnu!d6X|1*VKX{ewn_&( z4G~;W7<{6zjqjHN3*-Hmm6|M$-ijnHQ)Pb~h3QhEQ@UK}2}I6qNVovcfBn^c@8g!CaFrFCClmZIFZK%X9zY?c6ZgIPub?E-VXaTB*C}!d{AAn}0l9Sw zO+Tgn+gUew0nHSd8YXcwr4l$R#iwyASCWMS!~p_q5_E8HoON&rKoFJke+6x%a`@ficl zSzS_S({pr74o7%9&5JNvtb!c)w`H9J;3IE@VEZLNt3DID0ck0~VH#m&gArt|oLHZM zx@dm)T#1dx4+%k_;keft!K4x=QtI-aU3b)%^mq~Pn-9M^{P^7icalw#R~&R0pey_i za=M_C$LQs=hZmR!TkLQ99oc7dh?=Ve-1HwAbTLu?s__(1KorTq-=ReicV5xXDy3>Q zwtV^+=M4YJYqwy;2PoTW=;PpfVCf?i{ z!lB-3TPW=jmGpgNeC|(^1TW>ecw2n7$R&2g0gakBB!EvPRPm7G z^_1LKo4`JKd4(&qiLUa=6VRE*qIv(4z76Pi*_z&KiUHciQR1|d2lVCG2Z^w9H?4Q^ z{c@ZRr<)HD6ExZuOQyuLT`{>q}SI7XV+1Iq%pp(ht9lpNp5}iN9z9L2IhDT z7gPhpmZ6%KafByG2;?}Ts}Ul2{c3r5ZaFUPR2%@z3Z^!B~k7e?9}h+dg-Np^E?IL9gz9ywNyB?;3CI zE2&|AFuGFMFM*yOC)QbKdt@FVIbXzj+5pV9C3AhOi^(y&0*HKJJ9>{Gy+lPa4#Zm9 zL$D))-p{Xyi2~2l(oW<1%Mj~!F4Lgh_x!=7_zeZEn5RKC@4;tgHPNLm=2K6L*N{Cc z;(Yv_ctc1J@BQH?3+t#y($z=zYw-U5##KPtpnu0fYMr0`dnT2^#ykO-j2Fa5K1?E+8Lnqn~+hFDt6~aEz$~jzLvRixpv!x|;V@{=sE!|Q191f3RdmJ0t zR{FG`Q)p0h_aQKbt@qctF+Z2DP6eOa?*k+hj1O0%PMtY><5y4wP(U@GYT@1QgZ3(< zwJX(wn+3srg`tQChe#>+qdhW8AEqx~@%J5L{qr1|ldpZzy)?m(?3{K01NG8S*4AhG z(k|v|cY9424Ez9UgfA-60R%LpWe6Ht^uB2P2H6~+*q|ZfxD(^Vs73#eW*>awktFLI zSg${;LJg%WWwniX0FaeRd%Q9c0-+x9Ecu3ibGrW1rHTGg)m2OKbx3u^|A6{;U*eG% ztCY{1>2NS%4u2NZL&^D$?aj%fS~H!f8*ty_hKbP8&sQHd zMrY}S1{@IlJz|gUM!L(qN{OG&SU*| zpvG_NjxZtn5dI8Fmsx9R{W>?7&xJSD*0_ul#M};1wCrd27+Qb5S&6v8h zol-ghBe2E}8R!WCkRX|}CF6CuWcG+jlsl0gS7s5W%hhRw1aDIEevn8rKiwWULf>8x z{O9-Oxk;a8)!3_%Sf&%IkH<@OR}@C-PUlbGmYJB(MBn|xTcTr?Oa+}6==s7ZRIql8 zey@W!7Chw#pHiFGt;1D0MCS5~{q2UR-++I1#K-eQ^gDJR4ZM3R^{4|9eFoBW ziV;M6*p_oym2r^VMrrzlbMKWTHN{o*rMUA#fG*izLu_+%4c@o8aFD447wjTEyy5uR zXIjZc!ldWrWo%(+{oM(f;z@Z`ircHdK-)GUdAyKfCQWR!sq67VREkubykj5GaqWvm zvM`_QcBjP-bryg;x{9$rXiBtYLe?fh%2Qw7hD$oCrvI7uTyhIi_erBSZ?KK$dEb11 zs9H6y(GT*w{apF-ts7*z7`b-4GH2;cbq6N!6A;)W7=38+ulRfa@Iyu;;gF1ZB$9__w_n(y(UzE4?;Fi$S6QxmiRAF>(n`E>=LsBwN; zm#56y5YBh^<7<2m$XYX3K!tm!Le=;kWz2s1)V|WDFCg5-r-+>W!GaBksD8_1b(7`j z)j9sJ+8TuAT=5>(W1qqT;r@ji9sg@0Q{jnKfIX( z6JP$SHwAjLS6Q@x7pcSR$Jd4Grh!BC21E1#?+h==s7odMAS6E^gP)L2tC;T!K?W*v z)R)sMu|k$ig7nac&eOL$QM0^SA1+ruUNHLmL#{lNzT`9Mavb`imDPQL1?+2hG>BN7 zDJRaevfO&GNA*{RH;C7W2Nw8o&@n2+CG&&l{Ib`K!~29@J>~OXOSUtgH&Dpf5YJy@OHsUjiXhY$QC$gX@XDBc?99&@61$)ktHGkub$<&(JB+68Sr!cL@qeYBGD z?x62}T?(|#+bao+x{R^2>0q&2J)e44s=I1M-SjEd9d}&ZIHR1zIG^45Nug!``h4BH z^XDCXe@vxri7x+=>XigD?93={X}d{G*+9FT@5?P8S^&bRX%sBv5ao!s^h}h>*dZK` z_$|k?Y#Au98JOoq_#K5q+*HA)-I3SnnA2pn)sTF$1u}m!n7hB4?5*_kBW*HSExHMP z(#z$^!F%`od_k_7T^J9pPG|rSZuRG_NRRH#3a_jjukeF+A1Zh>bK3!DBBv!2rk%DK zQ(jM8fGm(5WQ@iTWfByd(-jeU(Dyh-wVwRsg&kYC*E7Kxx2r0|q122)#O1lGn#Lg` zJ#8q9Hq;k=Y^s>$LSV3oIT-c{m|(8IpNIPD7gi=ntG4l&UrYVcUkt-bZbQfcF_?T# zUBa)G9eX_4l4r&wrXdfGx-cr%dHrh4c@L5zQ-UibTZk9>Iu9BDD{7qXOYqtgn4Wdv zil8jl8yEyCd)S^<#L>?OoyzN>L}}?vzQ(U7W2O~P)yJOoOp?^(5}LzoxR?UO0vO*S=tM%vGM4E9?nqwI&m~r$UWV}BUdfhMW~G}Gmj>Au)H+@QcH&a zsMJVo3QMk!d3xM}Eq+ozOSSY~xfT@RMM?1SXpE@(FT>{i&UeN?8_Xfju={`sX*#t}ZT z2P7&BbON87DMwgJuP_E$=VMJ-k>wrI1?FtCH-!;f zbayitpm2FFsLLp_Y=2!ec;m?44Ky;pzpB-PH95`zlO}C9(k&ksH=mNdkxxky{f73a z>f$fY={X6@tBz{@+h(1YM|@{@8(vg^G%9`3>na%HP(XAYLWfSqDOd{eHR0(az7W~G zD}?{c;xoYvkoY&}=A^kl4paLjZxjwQ6X;pEAMNe8CC{>lI=y1QSNCJp#)4jhEYC3a zEA!NQ-j`%&*1NLRg&wW5Y1mLkC3BWkD?I#U{l0~1+zqs2!>7IkFnb(6Q}FyPmSnuX z@W^Spx2kwdcWcYu)dJFy=+dEwKAy4PMN?oz!dd&U z-(9Fi%kt-!Z#X^Xb7m5B`)U)S!vNizT`>Da8#H!p7MH>A4zRo1`vw0DsD3IgvcKCp ziboVoPSOAqMh@wEFv14yi0MSmMaT>99sMJCv@8(BZ554UUK_vW{m2Hd-P%hTxVH2X z53>9z2QG!BF|Ae&m2`(a(}QE{0*~E$j#{9euPluHY^#;|8|f}2v{7Q)dFXS-OHUhZ zdP!(JEj7g0+HVw#{eIAWIKxh9+S^l~10zv_lWMVDC)-_kFU1i~wYn1f1^Cam zWWO;9YY1B|0c|W{T!^;*2o&olRy2CZlXSQ11)gf-_nBkC_Z7S1yLe$g`_;u)O^lZ@ zO<|$8#-}VJ7`#e+L|~2xBkX9O8|SzQg&w+gWnYOpS|N~UhvN0!p2msqhSdaX|FIv zkajBl#Z~Avv#>B~ZNh$G{-6ruzKk2u^Qg2NaVfk3L7;-a2Z&AI2{P8J-Y0BNeE7=X zg~+uz3NgQ{aAlx&zLxOiD`3X>#Y{6M2eje%1S*v`UyS?Wr;k4j%{ucpfRy9egc3f1oZlgM7@6_3vEe@70Be7jP#vK{ z2WHiaZR2W%qt5EQh%YsHZ?v2G!gmj}i5L0JKKbbU2^YIEfMqga`;F6}OCRg`g|Cf{ zJ!hEw-D+-uW;&sp0dM@FqL025=!2tQA}F`huPu0O52qndUb0w&Z#}!(w9OnMeyz19 zz3B?ZZ5Rdh`0o5|V@9d|2Heigk zubhQzz44Laelb<7@V1&lf@gTPX?fr%wd??$2Z~9as;7|sJDLA};bE<}TM=Z%o77hR z#h!()sjosEm%Hd@j?A1fu6N6E*-x=Q3J3V5<3BRL+P2n4YqA0RIO`F+JU$2Efrc0u zU^`Qgt8>IlZj_u=I4EC!#R<{bpXBoQ=3k4f-b9w$hezJ-yLNFO&I@w>>%r%|Nl(8SmS-5kMQB+#1m9sm+w84mwrsJu`Z@#U+F;Ds@i&TKgbFz4u1=I z^YUmKe$NX&&U>o(R(ao8lHB`@B&1>v)+&xv&k*NawG5w~XLk+{-5WhL8k=%XwEtyL%DTfw7 zsaH&EFr+09?EN_#UB_SVKc}|$Yxpn?vsG9M%3&e=R7C}~@p*K5rt~HrlWku(M(Ldj zt=UYf4cnFP2mLIW)8`!4tI(SJR525Hl=5PdT+@9Ow2QirU|{9r>7QcmGyh%IPQ+L2 zF!rFv;Mc46-jj3R;NTxEZVXAq2&X+>xlt|LMAmq$BHIKP<8?eoFywK4+IqI-i)YqJ zGA@x^@X@&ee^C6SI3JAsSU>Y$ zg(2BoME`VS%u0E-0(7vOweqoEjR?eijy}t3x7_S|LDTr#EGn$x{HS~=8?|@eO|Yl! z+lO%%>%xPL6Uzb;f1=4+mBtP0aRZ7H@(&fZ7RupbzXNl6f=I_i#(NKH$k&f>HF8eA z`;c?{^a~pO!B-x~Uy|SEA24Jl;&g`4LQr0C=CVs~>tT|`sCTsQ??|AaAiN%j;b~nn z$N^C?d6FWXgs3)PH!*)=g7E_2G=2z&ln#!;xqvKz!|iJ}jGQIw20QEi*Ld<|>!=^6 z5A0ZBr^f70JN%mW=M$b0M-*y*Ox>RLi>hTI(wZgSH5Ol8qFc#eUJ?mAUgxf6a0a9V zWX-%jH#RFYZtV1fsNCkK{CyWjydPyK0;$SQ-zUREpRyZB3HN>@*=w0U&E{jPXea(F z9H@Rapy-ZsQ4(1^evhRG#ka8EMBpl1uZv;D_;?%fX^#z%YHh%m+=HvmJOtXiX_4*} zi-|)!S@<;ka3=iIy~@8pj+?T@-VbNQw>TJM-C@V@pu+9D@O)-|zO}Nt!W6L(Aym9$ zp2V;9znQ~G=l+(N$7f@C(Q+2W7ZJ}eP{UD@Vz->Wg}cmOp<6jJ_Y)0-yYz#FCOnGI zG2AW{4+X|OwovyIMg3-o%_%?a$$j*`2=aB~5`-}_($8>QJ5NuoqqsNr@-xN2*W9ea z>(*qa1T_EKmAkQ&B66=mW}G*U0JW4hFI`1RH+MM4zdg88BG!kVkSfE)g#2&1o8;HJ zWFYO2G~hZU<4j}Owt2y+kD<9qhdpmItzqd@3rf$}_19;p<&j}wZ6B_m`0cv?2?5(o zm;SI01P!{Gc{6suA;qL)z=uo4c#)_#t=#6dDKt=!9s+O)BD35Ng;5qr7#TtWcl2Na6WaH#qR96;tkvyvW23o! zv7C2e2ppTfA0g$)yo3(bbd4^DlQ^V@aUXZM{NL!Z2Qf84`eVIr0JD=TB>tyNM+EhXL1i2)J*O>u5Xac1_A8?>G+ zvdDJ7+ykS?6WuTS{rvG}EXA-@BF$mZV_6u$k zm;Ls`F1bbh>Qtuq;NG4DuTePtWM0sy5V6phu1tPE35{FWxl=B~_i^*P{r(cpZ|0H~ z5z$o9#}x$_{BYKNkz_Aumr^eEMwh}7+|m1OFsCy&{$Qia|Ec_9S(a}tz zov_fC%kkzuQr>CXOnCc_*KmcAJ>Z$7Y?!cGp?#dT!oR?g{mxvaWgmy&>}y4Qjt=;Ch**X7R_-E<|BV&Q8V2iLYnTo zut%8?+UD^%qJhv6^kOby%aDJJeQd0~KcKhhbVE5Cuyz`BZXMVni5g^GRG^2*b z*bON_{JIB*ct{?7*M+(M{k671G+8#u4Ktd!9n{}x?Tpu~h?=%<8^v&+H6}${>(JQG zH#w4r<*u*?s&ur>aBEtEUJDh2w4rUdlFsr5S|%EY;L2=5xxl`~O^-2PjgP&CgnZeb z=bcw1>YAVPF`uBMQbrhyJ&lOgSo zN@5p}XHXubs1DWZw0Nc(4a)iZ%FcNN!1C`l-op?r6HnVJ!m!t0RaygIX@~Q*xDKC` z^4T-^()u28wesupK5Q;Sm|B>^AQR7P!}LDyR(u571`(3Y{mAP85IN);F!=T^dh@0_QdCwiL2#Je@V3mYpT zBg(TGSV#2~J>M8Gl^ZswsHg;7spuE0vS%*8SNn?WM;Se36ey17_uhW zo(lR5;bT1~Fol#oy`6sET6`9W5JX|U;n@_gB+pCq97zW-wmFXcRW4Yi4Z3twR&vx% zP$3)*@xqTse9lvr?!!i0feMZH*^~|m`?v?V4o^)XFCu1+2nA7<`#MtWu!02IQY_u=Kx7#Nb<^!aX5S)NFtozYBDmjhfz9#w|bqdU?RkUl&-ho(g zB;CjlDw9Q~dh(Rq0LP2wql3ZG-QtGOUAzu#bPe{K;(i^D;QQkcbsQj>_iQ5YG}J_y z_GdV5#ELYGfEgK0n86>pa#mGRo;+2oQsVPf^%TMIdJ~4fu3R(P?(qT26na$p8%LJR)5tW?2KK+ zQUu3{cffwh5r~QO_jyX&OH@w2Lm+_-y(4zb`eYoL!sz!Kuty0!_nlgF4})%tuzmaO z8xpNv0?Y0uE6hLhTnOlwxXj$$&g6!z_d~;@g_yXaH<{Lm>YkMSq|e55U#ug)Qz)+y zz0foqd*#okL06D6?B)G&#FrVc$6LfA1zIZ{-NdlmQyXHW2g+xV;l#(osi|!__q?8D zX?Di$I*U1cLq8H){rhI*c|vMZ4D#>$O@~+peNC)Y_iW8=>9;lUAj2;{=Yq#FT|$1T zVG@4ZCPEH&GX0Ah36k;dYu=~Q`v%tL-Ha_!-|z71obE+8_}hygoUDA3Pv>PQNoQCO zsAqmp553n>`ZbbZ+?NenNG`0h5a)t0B_0>{FQz-wq{Innc9CY(qwg+ZC2#Y)kLW!< zVh-0lD20n${@ zDKnweDQe$i2R7Sz3CfSP&*=Hd_HNTiEt@ExIVf3}-t|n(P_#f_{JJ>Fu!08PQ#EV# z0M(B$jh=q{)H?I4R2?+1eIA1HH+fya)6xe&TV9VnVj*;ym&N5S+17K;F@wn2LNrg( zZnyAoIUJzS})@ zb5V(7bt)535%90~aACT9=(_DlTv-3UlaTE7m3MRN#|%h#9Vs# z8jtS4H&fvUj0|;}6FkV71&b4H!*=#X9pL`Os-+nC|JbXDdcWAN)JSs!<6d&V0Cu5P zd%&C`EiBw)Vjlol?(WEKDTKKRk}2fD=iuC4Xs&vr4f)L!0TI<^%V={Fme_qg-_Qze zFU3&2=L>J=oy-Z9-Oozag@aU;c*-sjyGK+eMz7T=zyY_iTyM6I6r}ioSsK{RNugBzR=Bjbd>kEjb@&+UA+ZrszumlV#K_i_@Y!k_TTfT2_gQi9GW&B#b50?t< zh;R-`5_FwFVj6G}B6#yqP%lA_7nt6C6eLsKX#j++dA!lwPFIp5Ska1o=r{V_=cjU< zZ$I$ej%QiPTyZg|t5q(FVd`vepl zfpy#PTw?3K_%&eg?~e;llz9&bZiW1Ke1XHnO;pVz6;J&uPH z{hETkO<9TbcH5cZ@Gr=*d1kOfAHW=6p@aX^ zncjS+szOGD-V-7i%qN<;C-;>}$sA>KwcA&(tpIzRq1d_n-3mq&p#Q&|r*fb76_mbL zdEaeZ&2|p&!*Lmg8*P>iyM@gD+{9zMMknk3x@YGwhSP0=)I|t4Jf;2N6!0}$F8((e(g|TC@}$?V$WKvV*qTK?b1*OG)kJ^h zy%{$z$|25b<@(8N%g-Rn?1UB#vB*!{&wAY3HN0(aR^ppe#-}>AfK2EVHid^Dv#`Sb zl?P?Dx?}0u=j=U3Uf=9H{?lMuN&h4xplEY^1OgLwv!Jbg@;K^{z+s3U3Kr_v_UlSIunU9mt2_Ajznn_h-=TDud;bn^Bowwh36C&Vy&h)jNI-7_#SsY$C%Yf8m836Om}c}yPrAWk zQeo7^MRPY4kx~O@*4}ualzc@s4a46><&DqC(Il50bnMEN^gQ_a8JhgV>u~+_XQFPu zJo|oS{)bSztMfjU)CHJ}Vq8^z^3q4PlsRVInh3?t~y*5Uz`Ru5$*-e_d7k*|gBgyw2^B!-gQT~6^h zy@iJr1L1tyF5-}@8xjY$09TanDt^{@ja~SWI6hBY_fc5D>IQr57de#D^rHKR{<)6& zRNb2iY`IsUxu>5XLW7)8BIrp|j}~ZC!J53*+4iC7UIoi-dpt9p-zPMgazxLYgr>Y5 zz~GO1@ZvnEP|e%@CMkQ^&{M_^xe-%a=*h@|>Q@s)NHRj->HG326V^(^eo!{*18^O9I{yp;`HYU zm7YU1He6rb^HJ%}Z-c(dvH#ZoH6wlus+oJi?54d8Dc$y2@OAe&DwXQm4}QPe=DOgk zP$B{xbePtJM-8_Re}{s^s~yl89%t4%J3KTYeKIR1<=8cup)1z>O5z_$S&>!sJB@|Z z>mP3N?7KQ2Ouz)uw=_Ot^aEofov3gA+NBvxREu;>9m{{7VGhw^H}$r5g-&Ki*^CP=ek72Fd5bEQS_eBL-Z;r4rGAoxpr^ zzi9E=((CB}4IMZ~`UzfZ_oj64i^s@5VV9CFL-<{T$Ngfe(_ZTlbC}NWsY`r|uV?ap z@9{fQr*}`%`CrT|og02htXRqw1=V35`R}|pDjo{kkpO3C1mVi4X=;?xq-&MmS`v!8Ahqpmg&idZMU8M$9KB`{fmZ zzg7UDRjCc6b^FO>*?AvN-a>k5Q1Pk6TBiq~8-!uyE;umw9dil4ale99aay*>4l_fJ zNf;ws3|$l2B9u??1tZ)UEJrPILeL0yvrG|4k*nBTH=oKw5y^_7@_rzqgrk3XQ)lE! z$IeLk`*n5Pbk*j~)NbELKvuR4%`!+GSFlFaPu4w4)bnnyJ$0E)oLa+%SX*a*eKu-o zOF3Ak_T6VNWi;M+nsYISZ!tY{52S=XKnURTgb}3p+*H35Ne%mry9{Ye2*wJI?;jas zRv+*5SxlExG~?IngMB}_pLk~*aSE0_HVA$)+VP0uI4^6>0tf>CTw*+R?%_j`Z=vL* z;i!2k`07f%v8QvEM|ERe;PGzk z3ZN?P9b^Y$r3hV|4l74;hwux4I7SMl7Vf)GE2ZsODpw z+VsXt^CRot@5AeuWWwSITB=D(SSwEJ@4-;U>qoq+(v720e4bmTZO2*2e)|q(Kn?Wf z7BD~9Ka_2t(fS>djc>@{Y$%K+AH0VH`-#JYWW`I}3ZLhGNL$&4mS$lG7J)5~;6ZFq z)VB8Nx324n)<%ib+ERKR`{s$)yFr1p>Aih*5a-HEjPz7qs?ihKV?w_=eUF{ILEBaW zQ1%B>&Y%6o+r&+aH0Z%Es~)B-N;Ky=ACG)8F6VEkf4ssweN&-%UWX1_ODwP}?;VPf z_Om@k5x?A*)o3>rgYkKCHthuOIlT^FnFeuRyPP4iY;Q)B^n2+@j2YEfyP-Yg<9Uxv zYwt-dxjAO9goK;#n}=0RnAf8T#sZ< zOcD|gV%%6TM<$i<-h`|XBi(vC3YH!fXGKLK``JX4?tkx33^4I^h4&VBq1^`ru<##m zdHB0~x3gK^ufJ)Koc?MC?UnmpE_N(@Ip+f$c;~UfRl41qv^U;7IMB4hbq*$c?9g-V z69q-b*C)6hjhf^tCrt&Mljty-KS`kRC6}L)F#O@-VSX4GgOER1*l&Q-7}cDs^3n{s zXVeUL0ypNuan@-*U^<&mUrxFdXbyqV-X549-}!deEgAEO8$4{+lzM?X%ouTP*gs*~ zw0^|sgzP7TVP{^acUXNh%Jva?WZVJ@znoWIk|#`(a*FN{)E8jglFo zuLx{tHi{<8uJPQ!=t0p&DfV!w{eUcre|(=c$So#NCr`b3U(b8cYlBu&j^~p@&S=Yo zWZpLS_3ZBpfI7U39WmV~df40$Fe<-@3HZ}#iNxX4A8eWceHK3+r0urdv-jbQr>OK97!Xj-b#2 zy?=UIeZrhN3dfuJsHPQE)ABG%?w+|+#?vvFhAitLKnKI>Z~W5bzJNV)y|IdcycsW% zI^uTW)z7ZJl)GbPRII7-5PditF1ng?@x_3BdqYDT=Dp|hD@=;*w_h*Cze|G>DbJ^5 z^h7!x-I2h-kCzXu%u%BzA3r*jDpjswk$AO_DP##itkiRMciOd6GdFt{39TRZ3+U_D zNxsfAKu2eBZJ&It-28L)gpd1!wuqvC1+olgM=bbPAAS~VwsdFXe4XmkJnmC~)6+1{ zy6}y!J^jW+M*TG4MX?s&iO@;06TBDVNDILmP$tujse5+cpXis|oNjGBd8~|1x4}MI z>8;_6)<6hKc1FBk8$i}$*4+O%>;7akdaMnXwc`o;LgwyM_EnF(c)3dE{g6QI2aOJy zyrDeCh!9m(YTfOSnXXs&v$laHv(?$7Iz4`8cEh8E*U-_(V85Izm$tXMGbS&w+31#m zy7w8V+#FOdaBjadQZGH^H-2|K3aEHBU}HSLjQ%qiv_sMBdfuO^wuWeW{Q4@&No#rD zcUj(pyYdzzTBcR14E2=;j*EWZoIeZKlLqb&rmN7S0PA4MUnhy#%#-3BIgR=;;9T58 zI*)K={yyl-r9N_3`^$^rAlR?;l> z%O9i^?ezWEDC!8kd;9D)a^WK^+5;7)XiCi!IC7v~jIINXC7n(xSvmZ6K6?601K3@Z zyR&kCa3*?)ZSyC+vFldMU$FAFx^ER12+5;2ib@aKzI)80%+SqSdp%EUzr*^)=4COc zqD+TN*nh5f_hLxAU)7OOx*!spe-Sa!V zIW2w0AfWDE7wYl3JjnR+P*|O&kD~C~w{YjTeo^hitF{UEGU6{5Zc5X_8p42;35R~% z@+5%mPx4B7s0xS*(nk9AYQ}EITo)Ed_$5S@CcUr+ysE~7Wo*z}$zbhMaF}!Q##sO;B zJ|QHfBb=ez4_Bync>I!0Ye}oF(Waml|1zCGEU%Fgm!iM_ZE_UBL^2RxawjR-{)i_M zM0@)0D-0i*U4~9N-(qxjmJ&5;5KKL*$D+EJUqy7~tdwoadA)V_=S^0*hj)g!>Uuuu zsPBYZddKr9Uf@Ee{PfDoctUs&J;;pV8I1~_kU&*g=SU-FG90HYwH6FbOYwzalz5?!H_#CUwW9xg3LiRU!5A_+q zUo=)F44PstzM^kOiH~8drNBe4O{72_SJvqlr{m<4@~M6^DBO8@3{;4RN!i6Ah0f}q zniTI8Mq;3fo164*A2ojyh*R{Kaz&q}EB2yc^!uiKR7)l?MpR3> zY+Q^!mije%(@FNL__ce#p2uf0pDdup@M%xV(G=uPzOSSjjfdNFTZ)BC+(X=Ty)9Sa zc;dqCuW4f6nT?ae+`S>S_Sgoy(6m%QS*(}a<@mjXpL_O%g(AlTD6GByYGj^@KZLV~ z&Vv71X`T*6vtGYxhUDSCI32Y+!}^uIf`}EI@+9T!J%22!j7^EmKla``N{XsmAI5n> z2_i@sB%_jJ=k6kRj@6;MI+E<1s$+Fmhaosb0YL--VF*eZGDDUOLslG+G((o4WC4jX zgx@ZF-%q@9?{~jHzqNj>S*)I(>Z;Qx?6dbi&wieySrRnH2tbge*>MdC^(Iz^C}KcC z>V=!(yLC!djw`p@bDU@UigQLz&6EONhHl8ndWHgAmU(qy=}fftvM z{B$~GPQ?SX99b5}l!ho@Bl8D+9#DUES!gb2ky0xc`;a&$rRPpag&RW}ppO)X{6-rJ zynd-D0MVU*p0aBQOlV?3v@MJJwZS;wDa;_|xSL>E;Plg+45j!Er(Ew2kOaZjBP<@k z^MN0Umf^i&3=gg z`B{=_K+z;{B{+pn86)ZvDo9MN&sdVW9NVP`g(OJOvO!5yBM+JLHe)?&LU|Cj->~# zx|qP6i2&dMo}!2vV3AhIan zVrhh+coC4tb?#W2!N-$OG-0JJR9tK&EiNo0VoNCoocxJ6Hj_t`v~iSdAUnns3=z&1 z#$_pu+7V`Y#hMf!hKVGB+Tm8CIuN zC`$<95qN`s)10t)n3RPp6WK{C6uPi*`kQGwc+!7XeCu)0J*B1SG%raVEnUaXHQIN?|@!tz8=P)GswZ>t&d&m=o#jO#!J z8h3?rF!VBE(r?1TpwATZ!ILri@qY00fVuz=qa2hUBfLnA1^QMxVU&fX;%LSq!xTQC z8FCpRP_l$AW+}w84z9!NcUa3uuhoCu@o5{yrrP~8GeLzT&Om? zRD4NNqV#zw2Rw$QFhCWt-eVvn_BbXsW!d_a4A291_?yqBNe3e)m(M3cLE$Ovv=KTp zHy8#$kJ0XrFk`S#88JW_kqUrc0`Y0uPbFP$H%M{dpl9uaG6@Xo{y9)lPl?rj%!0c- zX@Mdv2FM=JCR!B|CI@(;R8GBKY{y6?4L21T@laTrBh^|s5K86zCN3t{ZqQF@MjxSpv9E;QB9+EJWZMsu%;;O^}`iqe&QYVor z^g5}M2}KJgrNJQ8@iB^*w5l^fP0UMJ;##Xb<1+bjR8~OcH~=80SRms;#f(tI#Y?2wubS~Q5{ zELlwLH9`hDV+OPVW)AV4CXL1K%SlKP(8&QGhCpVb5Tlf-af&@4U@K>&bZ$2ehx-(m zeF4to#%v)*C#7QO1J~1XG#X=n`lrt(Q;KC8gWI89$?lt=bPPOV@BnN}uBEgtjAFCZ5ONCj*)+vT@&bIV765xp zr8Flo+Pu)Vh{G4g(>7TW7DU*W)$8F{6eS!XPnO=|6<(3aFK01xet94remZpaK=ueHY+8Q`xr{E%%nnaLs}DOlUX;<;nz8!oZG17vn`kaRj8#|g*}P! z$X6IlznOiRU>0|enEF)Rqi3#?H#A(h)jVQ<81_QwQniXBd1 zhPa=}cT!3b>Z8{PoOx$yyP3)%8Mogr^6GOsk^EJ0Dg|XcI+__$mNn?ZL|7WfcuFl> z5@2(6QMKP36_8S%%cZtioa!v!k~Ah`7+5En-5-@iqiQ*lj++SJS4lIx9-T44aXD~H ziU<9Krxg;hNvpJk04|GS@tibC8%VDn=xRsKr5JK=L?yiR8lT4V(wC6Ux*2tsm?4&e-h zIFN$`TtF!RddfH)g@a660xnEv#4$C)Bn}2Wd;%jPN(Jp&;&2aze z;wDSP?eHXX;Jf$?wBO+aE;p`?z&$dFo*A)-*hxF>glTQ8ScL7<`9nHfXOb!qQ;22E zASo%`4S+x+p-77#(x}}T_+1-eo1$7K%gqh@EH10q1*!XxIjYU2l`1IRGRAUjIc5mz zbyndB7~n;K*Df z)8a;+&+D}KNj4}bfSd>T2-^^Mq$4adX7rK~jhPQ0qCb~qWE~kDlvyR2 zd_)d}P_BRyz{t>awiP$Wp+XpOiKsAevcX$f9{of)j~R6lp!qFOfdZ5{r8B1zD4p+S z0_8Gfx1uJSp5d{C%zUdABx^XC2;$Ltvs{X4lCn@gBOq0(HC|lmNXWruc90@cBoGUO zxIPoqLJor<*=k2N>dYohA%WD+;xo+x6a!u$(CDPhGAqNJ;Mus|XhsO|ZjIZhllYxU zZXiZz-MEww^~5Z-%8;~06hTN}%My}Te92~k60{2t+N3%~2r%ozrVYSMIMyV5I+5Ei zhxIAatMm~e$;Oyo49VeUrOiO;NdfBjri?%xfOuSHfs142nOV`4KZUsfSfpnYrl1XA z^hvfc z@Q%oCc4nD&MN-c5f<~m*DlogGIyYCOiU`y!xCSU>KvqS=#B`AORI(H-dp3h01fT&t ziJ%@RWx^IoP>ajilow-V3BS~B6cIqeAc6!(ke%jIK9B`6#<)%Dl7ikjsAEOhHZp|kWG)>Bu@A~O zD%@;(PQXGH(GH(Rqcl+_MkouYNjs8O>sSh-H^w8(628W65BM?IbiD}f3|iH3j!+JQ zpTJT`O46AOKsJ1GCEO;B>Le@)>bA);cCP|4qjF&`oOZZVz{wV~MZ#Wo51MMmXoldpl%18`xMA2 zz>zgikJ$_Yz5xJCX4qN9K=$I6*o}UJPwYxrUs2PsbO3DSdYK@V`%1%)FHAt(MlYYJ zfvF7{$#_I$Vv|Xw@Ph4UJP=mJT$eU1>Gs$Qdj<)Y|&A0Sn-O z4MtH6%BAC6P$o1A6VN~r)K9~WQ$|S;VFYD9ffoAM2M!yZ=7}ghL4G_5UF1txOf0~( zn*3H*HoOhUa^FQ!nu?2EL^P}xa&r!-OoFOtt};$I0q3J9 z>6EfPye zLZOW@Fw{@l1Zq-X$Z~iBg&u%x(kz&&> zBn8kngctCuK6e(F-dKJ_t5iEIOamcfDaa_p08mBTDTJ~Bvl!*$7KzxI49EOogWj5Q zyIgiSs6m3NfZc9OQ&J$*K=mNKVKnH~8QRSa*68T3WkNB4su-d<0;HD!n*>jFc(o>*27_~7AWIiHBN8_+OYaPk zP?`!O*?^dK9n##OI0Ax{P?noy#a&87%`^mbUNhg%O&iQ^v6V0evQk@^>x^1Rc_!`T zX>@!eAyWw%LY^|rjv!=+r;bO}TH1mMB1kqDdBh9={|g286={h6jG5) zlaZd*Knj-t!7QEG9)ro3OUa}f+PjHR;Qq=O3>^+Q5s4es0X!iJnUFB>-7*D8!s1P( zWJ-pTE7kJpaLdZbAduYyCUqI#>Y(5qc`Qn1$N;Hg0oEy%5THp3S5DF!BXEbg%r24J z69WYVB*l%2B2Y7d5>Zlb2wEksuptKN5EfS;CVg2SPcK$eUW#MZYm!#CB8~$FJp`8C zBXZ@$VZV}N1%5?P5yRACH4&B|CQz89Oa_*MHV+|?pcmRLQFw`A0WB8dgju8vgeu$# zkZXpvV0Nw9%uPrYVEaWHx58jn33WLDx&u?2I~{;c$0>_TRVD)+4f}<_sR99oSo)lLQ9Ce>X@quxP{U_%NE_h1oF4iqBqt7isQ{`Oug7DG`+Z=S zJz;moZS@d(0~7)Q1*S15;TscfD5+&Rc}9E4LMjw06H6ZekyS1<4p?MlGC5-LTQYhF zgsbqD+XeSVp!!Z^!*N%P0qH*=UAE*H5r)ygSEfjn&lMB$P?eu;(D;Hukf@3Plbuk- zPuZ||Oc9i^TzXExrqlp`norHqNK8gttq0IwLPT#d5n<8@xPC3d$%No*h|Hi72n-1} z%E!?#T}h9Pgi>U?2r5RbcBzPDI0Fu&LdjeVHG4iNtyFoVltGsSO%Wl3Cx!$%5a5MeR*_EN=EpKTB`UE6#YzcF&-Y*q zDJGJJRMH&y#xhh20Tp}~P&DJ}1THf}o?!4nRay`7$4Y^a1$x|eEbQ>7SWz8RQXzUt z+K1Y6c#K37DR5hXu@#4Tp=5G6z;yw+0*dAmkYz#un!_^!t|O9w!z+bZ>Gop`EzaRM zGZ16R48Z6mbAo1061U@K2tN>;I)TyCA?F50#H`oi6+u~_DBSI9}`wA#1~5ak$z&KVsrzuA*2jwWfz#HE3+ar zDCY1XNLOW5%(P9-2xahi)CjmqwLq22vT;)E37d^dmxn79Mzc9?6of9>F|c4V&{m0K zmJ}Aud6FrfN(|&2k^lsV2uQ$!&KZNnQ38Q$E@kCLWU`1M7z!DTps)g+MA`igs4$gy zglt_LNXQvHkJVvCoRHH<0(MI2rX8ht)*KSRbhk4Jm&6V#fjVn|9ndP1Y(2api~YaNpJK?EnB6P!r_32 zpJ35PBv8~ z1W4zsvII^~?SL(OholM?w5cAz>TYEITfMig>5bmeZLCn~cb)6i!|ez6!`cz+Rg$2Z2U16$58g z7}LsvP;(khNS%l;9_K092%J)iGeDo9NkR#g-p>SfXf@yleZhds9~6lVMt?@22M8VN zz`~T$By>;;NlJM@az1caLuVkXS+of)Y;<4cPrGU7X4R#7q!D zfm|&iAaf3j0m)^eKG;p5uSk@X8})>dv~WckRg@13J`OBL8I(o{en@qc9|7w`In7u& zB%xO&%s4H{%lZ9KT8F{!Ssup@&IHNgNYYLR=D?ZAs|e1*!>wtZ!LFyzjDkSz8mEUd zP8-)iI4Q-Ven}EfLGChcgtK*>F5z%`^wDIH?S!np2MXaOQGtNo^KcyM>Vs;7-)M%< z3SD}W1{EWaku_wEAxN^M#6+C7p(0-(uCt2WZZo2^1NStlkf=o)D3lxuApDPcaF-a!%Aiejh^b~niar4xL_rBx<<+@(7F3na+3Y4J-=46ge3}^0 zq6alx9_5i3JZ3Lq%)lqeLMvdifr6F5s0# zm?nRU$2AHdV?ifcGP&3 zK~kIm4@M?e`#q6}S|jH}1SSayL=mmSZsdaW3{R)xX>&O!4V44+iQHophA;sGS|3ML zL32#b_A*s&+`)EfGct{zFLH_1GL4GQW;k`UZzRJIglEWFtTH%Uqn&cOQKATgI2R() zf()aPVBt0%B}&3Uv0M!v2z*_UjxEY%vk8yJilyNWxeRRp0YWPD zlOhX=0K*N?b%VHfRBp{AUFnFGfYgZs)k0+;d_KYB0ZFw^C>6UBpuFJ(eP4zHCEaeI zS|hz6OF?kqTr_WNZ`oH z4JxNwEw))QI1~sA^yV0F=!xw>8zd&-W7eQ1Vn`7loXK=aWRjSRqi{nxnm(xZ;re92 z9F#&*9$F1Q5~Cz;_8}%c;SOZ1FacFmDC%?s>~LfbT6AzT3OCr&G~-f$V@-nCrakNh zvL}m2OOyN*cgBU0}f(ylkN!s{P0e1{nI0R{kqau2nR1B&z@V1xWNN^sYhn$%hjyU1) zK9vHwO_vPksX?zZO7B3-us52;LbjaHz|MF$K1jWSP!`jU#DTYvUPy7hSm@weF%u;* zOM?n16%flKDx(Z)SyW8=;U+l7W+WU2SJodBLG_hT5Kb{%pumnX!}d(t%!Ud9ts(@` z6Of|vUGc0+K--)!?LYtXcTF?hzv^%T#tuEx?qC> zF)GkoAix8YF>_9VQUw?nBMXy=Q+kkJ1@@{$&f>GW-3nVw$$WL##ev7d)oO^!Ek+2e zJPD=`^yK9NNsN`F7g}5Z_3_}s!*vNSlfz*9eG!@{Nyf3zEV(0pUT%!Vq za#NDjdyJ6)(0Rcn@RLBCmZXg~VPRTYOU8t3eVkrol*`HH)3hFhq1Dx%C0nN_^O%ll=pcaW7SzyZq zk+85LqtEd`!#NcIs9S)=F%nJ_Vt+-)0FXkEz@q4{0-On!XgWhV;9xD~igDeDPm9N_ z41S6NeiFEV)H{7qNk)-FH4M7n?G|BzCqqzrp5kt;n$lP;UO+JGX_-P%GN=#R*;!Hu z`aN)glalM5^zaGzac7juxm0wJ=tcmji{*5f+Y29|qY0xI_G-61EXpwDaubuZF+(1q zgo#kW1jmce5TjRBs(QL3fxI4yL!xPL>X~{VL2$CddMKMw;6d#x_!0{f(T;muZm>HH zj35WtD?AQ51K{xC3n8k8#V6*Tsc6&~tO3AqZt+Qqfx_>?#3OHk4vJsHKgjAX08 zq|nnWY}cjO{1{4R3=t*EVT}TLOgR zAw>aCfS41dBIfY8gILIE;7R@bm=VqT6vA+h^g-R5LrQR5YJV;(vqQ=q z>fw_fkkpd~^el0}NvJ|Vi zg-jR6fm_94NfyaPU3>$e3F1N8^g2lwhr_^9_IN-SPJ!diMJaolM>@Pd7Ah9{;JjIb zrz8?N;slRgpb!8E4z$4dQGn(EhjAzl;z~NJG0QT7*tJ6pva|L$5TNO7%D7mnl|g?) zq9?~QrDE{}P?L$3z^q`7g<<$b;)Khoh|yb3P7qRq1S=yG_n;__n!*4TAhp5-V#yja z5cwf+9*{(pkTWntLr|YK=HQ5+GC#-(n5?hBu~rrbmzZTFuFlyc;N^)$45(=k$sN29 zWMqs{CFl*LeOcHaeR7%9pv4gdz;W$xu45KLol*=ni<9s-8Sslh1nB|9iI|~^$e=a` zR8FCVJZTDL%5h7~ua?FjJLxkR<3WMY2gT?Xio>x-qkv&F`=S6I0);~}#sx(a4{-1$ z=#3($6*9b9+SE`|kC}y~Lut$?m3S=LoYtXEX;@|o2-e za&Q1Y;`7iVAWS7c?S#@NzCHlZAFD?e(rZaJ2ev4o4Fmc`p+xHy`rWuV5%frXz%WJP zHoIPA^s}rS)D+`q*&Zjt1T~xtc-$fya4(|ykVT-PVa%{zRfEPsDp}~V%QF}&rOsI5 zaoj-gWHPbB3@jD=3;?@$ATp4!LSI0Zn+2-bc5Mi;16LOdk+D!t3MWHy0TjqvJcuGH zP!ep^tJO+P0ITQYh!@U@(FiwVvc%<}Rq07HeV8Od??4_F|CNb~=^*MA**PYaU8ZA# zny5pAgcS@*qhQLDo&-)QY`hrG*SkbQ5$JWOq>#O(w>qYk0e3O5ZDD2>P*x@;kzzOr z2^3r!lssNY|EiK)W)7v8a2Y=dp8$SF0b6b1D!c-bp$%K|>W9u`x&sbh!Vzx6mbPKj zzlSqk5buUx!(ER)sZym?6{SRoX9nInS7X)$&&&Py?o_x&ySw$H^YvgKgw$EFJ z+}|{4)xe8qe@JaxRXJ-0dEr83dT(p^_gS^Ks@CmW<$v>EqdewFw14~6HS?;s`n1ab z`+uK)+_z$6{kQ%%w}vL{TwldezZ_rw+5h6s^d)d_@_*Ir|9kH@4)6c%?|;tw|Jx`3 zKkJh<13oEVIiQIk_D$EVcSYw4?ri&hZl4{;7FDa2e{JcqmDm?8dOi64hi*5QuPyuj z(T1Z{{`vJvZ=_bjOnLnGGEWY+lzEow>ldcbq5uFM(ZBy)JL; zXO4MazGnC&6L-FRe&OZyCB<`UR(x`y%E7NX7>}g zo&I4h`@UDVr0I+1J*an=7W2;~r_^uoHQT3MT0UU-X&Z0(;425-uib=mAnf3%t^?JOqi@z;i{o4C~j^LzGc?FMd#q&NGH2B`AUk}f{GqUTv zz`fc<*01-}=iPg7Z~CC2Kg~{`Uoy3mrMqLwSF3!*Qjuu*`Jt8J6U%MJ)XkGWmMvOv zvtlHAbnmpwypM>%OQ&{E|2BBv+3jAru* z^G9c9*PV1{J)*l1ZrY>W`P|Je&`XDrxm~~eIqzJ2fAipl?b~R3bMCXsrGe14ZibKX7TYURS?+Yg<=whzv3dva-fNBg?P_aE19rxi4+zI?!=g^$1Q zv zJ*w`8gg5Se6mU#w*vY&YTd11J@{C(MDE|!xac$MSQE1+P^y(5Ne17)bQMW_SpFS*m zSm!Xee&{jSls3y+tr=2DnO4|M{WcKsyuAE5A8>RjK0@|7)ZpY2|2&A4`c`j)n0ch9cd9$>|*ewf}ZZC+woHD}+1 zrp4pCZa%ODZ9n8tg{bkIoBg)Crms1wF4x%u{VI-#>Wcz5cqj z9X70ZPW9Zf-FtgOZ1Mn-EI4;qgx2Zvtb{ywc;zYEfxYB=P_zRNN|MF%FZ#AsmmberM*c)nC-6u>maaOm(h!@UUQ!1w9=fAyr z@0^~iyOlihtjj&TF;ftqN4~!+U)S>1k~zPf+j8?KdCOGS;T636j;m{Re&iW?YK^DN z*u9H=U99W!W`fwx?Bw}@V~ft;=zOY2lV;8Tdg#Aj%`>&qSF}EoYNV^!GrS%}?ucI4 zUiR?aEiW8(PW8OEr+!)27Q>#!uO8koXPfuKDPvmX4lMcE(NJ^i>DVrhCQUT0SYI-_ z*Atg8U)ONTgr@u(h3~Y8Ege%K7MZ!c^lxW}j%ll}*pv66x%O^R4fDa1OG`4-qC1|O z^CKmy5AuhXcy69tvH9hT%Gs$4gYTp58eF#ZEFa$a8Y6j4@7r;bD){VR-pACC11ld_ zJe+@N@Aw`?*=L<`XXP@({L#i5>EEv$+BjK> z$IUj}FYQ==dS~0w#vA*VKVKZY^rHThlCcGyPD)-6CmQ9==|%)r%v`g4$%^SV$CN%V zp6vdkG@zSmy|(AEvR;psLw*|a^m_5^HH)bC_YQBjeNcDf(8doR9K1iO^6tgmTEtv5 zZ2B8Qs{^V+{V241>c*9`iyzOvv3Kd#)1216xkEP8pVPkIhUFVW!=68!{`kXLr`Gy< zH0*Gzuw}u4{i60%_`vY$b0&@PiHj~(bR1#j+RqdhtHO5gc1Qh!iv1l+DiXIUn8h_$ zm=>(R*()$$hcdi_$DN2SBoFs`ENG~#ncw;ATlPr<+O2sxc-i{Q(~zU#;Z&<-^BlVx z)|xx`?yh&r)_p%`Z(bwVNvK85f5$(lvHpuy6Gjc|d}Ye%$>%RWtyT2w?(RBeIFi3| z^(6HA(S=i*pKh`5#Pvnf`6=wTmwGPuT%CfRx$>*s{!Pi)RclSNS2G_r=Ue|_S?_=F?7cIb_KWk@P8Tf@h4CGAN|8;kbKs6acSFpyhK&s z+<5oeC$*YZ?B?^DPpnoOHtTLhEYHgq&&z%sTJX)aDZ1W_T~@U_4b8N#uo2rQLwCH^63$Z4v(id?#)9d z%;@)U+WQ~N7OSRq49t9|N7onoE|fJ~wrKLn6gxE1*SuiovSBY@XshLK8R{LzE9z?s z=S>*9?Y9~dTbs%27OmUxeMj@XipQtF@e$9~_Yw8ZTeEG(NOaAR>i*aFh@aa0{70#G zP^;VHec$g@P1?6_U)##7hn5oc+CRB;ruv0io#x!e%Az;7Z2!@6c74dwW#Crp^!|yl z#^A}W=DOX-uDn0v{C{;n>#oc@)sT0uc44Np(VST6_ftC!h-Ww4-567!0gCsz(w_IB+i-@R9~;N+k$wvDo2waOQ~TjU=7MXz@~ z$69WC@$}}J>%$0D(}J&;4*ui!f#V*u;IAlAe#2BEZ<{ZEH)zLDu;9a6Zf_XOo87*! zV^L;hJA1`GzTnE1L5Ia&>c_HD1Nd|I-X8yKz~frSc>{F~S`no){&FVa)rSqMKaeuk zkMK|xSAH#unql92_UPE6iop4;n~afTXvH3CL#VuKag%XFmTWBUPjA=0iTyjx{{Gp@ z4|}bsX#9@}v!HJE{Ury>X7}(M``!BF!xeiw9^Mc>V+K>S@&fZ=ZJxDZon-?<#*g|v zJpJLFA9Cwc`4=rxi|(z~k11Zo8#MuSxu0wA#LtaH zi5tNp)&2{K6DG?N@L|rEC>d{k(YO2q_!HJ||Ls(t-m$z|b$K<2JxyNsPV0{B`%Smu zOKx{uySwe9QI!YV%}t&g|H+PI!l=%{;%~sK-;_~JiMc>t)xPUvcux!kqU-MRfqI~7-`k&@*uP>ifMO#w-Ja0X_ z-41O<>vmuC9wPtCM7OG6HE+oKn%k3RG~~@-IEHUdUY~rc*21E$#aGqER}VI+wSEDw ze09;~HShgn*jxQg{1=<`U=PMdR6f1AYIYUP!O3lAANj)cwes+H3x4@((xjiiK0WMt<>U15 zrklvCk9wTkex~R12gkrR?-mBa&8{`MO#5%V@aY2`f2lz93sqCu)GtUQqDjkTpSf-> zy1IGLXx*>v&%NcC(!RNM^J^YuU#dpcryqT7-vSQYtr`t0FAXgDWS6_BU^`>c!(Sd< zojdGg^Yqzocf5RYCOi4c=9??Yy_3&(n+<#T1oGWsugJGXOI8b*dwd2#;WrdyU z@(vb`&`y8NCT^ZMDrG91qP0jL(UU*^UYY{`irQK_*K0O-Hxvg1z3nRX} zHeW!#INfYhx9v~n8RwjM92k3Oo%h1)tM^rxPa>;9H#_H-M9y_D-h2z(rrE7Nt5&V& zv2v?m&(cV<-h(Up-TwHSI=v$KMWUslfD1z z67p(UNAvQpZ{?;A=(KhRgxY^-6?-}^UvTxi{CTU7e80x?!>qvk72U^O&CQ%Jen6-x z(>XG->6iR=4V)(Fq4THjR^HihbN&~-vBPtErB2#>$h-OPt_~A}mV{j=KDqUbq1#gC zRey7H=!S{S_m{m@YxTP=d-tC{fSPe^A{}-KTQBoEcYRRn<7^(gaAjq+?%lGzl%JN= z@crxc`m1k#Qkzefp>D|tS+mm+1-tFJ@3s@_UMs%)tbql$xzUFo6y-052tYfvUca7iKe|H=Ika#0(m9;K(LFuNcwO_`W?w#k zJbT#v{`2n>#zmUOLw-NlZfU=bEAMZP_HDD`=FoiSnv(Go<~}@g`u(O&Z}z%y>mvKY zJI9F~^f>fn+IDqF&2waG{_UiawM%Ji5E9>n>2g9`%TwPMVV91^G+nVr* zugSulF9z?b)=1FkJ)*4t;astH_R+JONN(ba0xs)!c>9roLmr-h@tJLWxaWRybWyk2 z8~PNe_AgygQNOj>e!S~I>n81%uN~n}gn!xm|GZ)uTQ%F=_T->ib*!l`ml%t4Bi@08 zng0H-Kc3i}3KiEJQ?wVHfpqug7i#A7MvX&(*<{4!{a^H`Q|;6UF&$*Byj&qx=4(p= z(^vGmUZcp`XGQ6XhsRcO7jEeJ;>qQ*5ym;e=HEV`V~JZcXQ1_6!X~w5_XpQpTV>yi zx$Sgw+-Oaz|MGEn4$WZCzOj8nW_iyZ4~Lvvx;0bUBES8bZzc@be_!+Qm1xsp<=4&* ze7yE%@)2W3wa_8mCwI zt1EUhn0SFg7a445$LxXE7}!^|1&B6`%|pX5``m2R$Vb*i}}uum)m)<;*-${R7qI|E#;LQ{N3c31nYHWRUyX(WDeDHdPU9Q(8?)$@k|e5Q+Q)qV zzHvLYt(bLw?PUAOwnV*OcgyY{{Sc;6b3ZZsulrWXyV&mT)3XCM4@+PbSGI>#*VaE8 ziIzqe_}_nh5dI9->Tb*1xNWtxr`fI2HfCw zSh7ZWShknDMm*|nsC^gF89zbN#>OjOZb&X#Gx| z-UD9u+hch>&mS|l?6vh=w^v^D(3us#!Lle= z)o~?rcJ(63;p)fg|8xGfdRA@aul9XO}lR##N{qk!Fi5+V*cB(`?t0-Prf#URSHWQWJ0?lsrxmG&YmmzdLOm&gK6P~ zZ?F_q@_yY3oS9@b~zq|AJ+Hd!UWqKT6FJx{z zF{(uQ;B&^CY+LD|Z*~nEcC2&)biDb^!?c!0@t9F3)Dj4R!wfAm=Ol4)S z8#n6nHZ2n}C%~cEoDtGx|J*SO+c#Xye`4wK$K^>I)8kw0&_65#%eHX$?D<<@n#$|+ znf=;rTji?m>vnejmh;-B#LssYdTbdPlN za?!54Q9&0;D+R1*;qcYnU;oU=;+-R<1;;)8VJhFBx|g%P6YTKKy4YWf_5Nd6B*lH_ zf4if@hr+U9#r5hPzj}J|=KJHwd281`=qQIw!NH$)>#n{Q>U`FsaP0U;i`VKZ794{c z7efEO`^NtLsP8vrz!uk*2-shiOwtDXe?CljSa~1WXFc^VpjfZ^R-pohIv!+@0jFsOO#`B zSFbgP3z-{|d9N??KL_oz2JqQ0S=c)Ed{|nnjt3t7?Kb&&Q>NcCjajXnik==6pV&4v ze~r@m?t2s7;9Mm>qc>UBk)&}XDyZ@LlxWql>iGd{EVqZ0woMNlIMbeB6OJ`e+UL;QTh6H+JGr3md)u-TyQeeckkt z_2=<&(A%T$GsZZ&?at{a@Y58Oj-Ov|L%qVnVf%pK?&W<)f=~;Il}=1*SM|w zo!1{#_r1Jh({3MY4kq@@%?2kbdsQzQxx3=X+pn9;KZmYWF?_Fs9X>|;)F_I*_t*Vf zecBhVKKSnC-sgIEhyChicPV#5i4y<3%j`D{`A76OTJU*;+lLlIt3I!}rq|y_Yt+sM zzf>O2;js8jx92_mrXB1f&X~XI>lgj`nEO7XGVz$I>a%P6dr?9?tgN^irGa+p)Ov$jbwbDz^Bx9IFBA zsL!+qRSG|A2(IjEv3&QR=Ayc~@UmwmK6rP#ZQ&obguiq)dN#qTebf^Y)h+7oZC-#ulAhZA9c7hXne!U=W7iop!G_CXeU;CbdrnN5m83Cw4>lzSp5&xbTh5DM!x{;eMHSK-*oacO4-Ed2*>vz8G znP2$^+cnSd^O0Zb+{AZbKUJ*neDm1Bd8Vn8ia&jv+4Oj&@zBAKZPYV=&m*=_+YX0U z&Yib9^!}-KrET9w2u_p2YxSUa2V7Q0|Fkd%BG9{Cje~bDP_>1me}P2sH&^`C^pecn z`C{0%g~m~^8j@%0wca~2`2`a3#mSbiC&}i6pZEFOBNnxqWTdy!<6jp4JE`QJxbxo8 z=^b8loLh46QOgEB`ULE=4CgyP@K~+TEGhvSE)q2TKAiYrnzcFCEazQ?cN{)pV!w4@=u#>>c^({?61A z;-U-c^$!)pd!LPCBsCYm*c02kHWAo2v3_^z``K+B_0!tr zf9~mh1+|)WGxfV?>2o#gJm35WXhWZiXWgeq|I?I?oC-6#q{+l)XFh-?^m_2;Vria- zh<2hC3sk%MZ(ib#?7#f;y{h3}Io0z{zZg%gb>=mh@bdo1x1)jm znMo(Y56b5(kBtA;TJR#s>0exP>hDed4_*Hq&vyU)kK($QYZ{^RLcGHyk9d#DA+8s~+?!5oSm3aTso`n5H04l7izd&EQ`O_F! zEbF=4LoeUYrgm$)h^hR&qp+8n-#HiE1Gi0?wI$Mf`LAS?AhLPI-syjjayN6I2{-(w z1{PexDE>Sv;j;N|Ju21L8>u%r$Um47d};Cll0W4q_i_1>5CwD zw6+##XNs?nRSNaA*x0a~tK{LEu)3LscdTCv)dNaeX$J@Aj2`N--cdilHf^LIU9;(b zyRt;(-um}Jyfx^g1y_Dk+eA8_+cNHfZ`|PD=iSTRKubEQ8Gq?U>g21%r?e-R&gZb7 z?0>bWt(Jbstj$$iB$#G0!cSD9&^k!uc8rbddrJIIwtI#DERX8Y&^L#R{&jJ7BfM=r z>m2-3+5eAsKdq1#51~IhMg4t6l<1(Pk80BtaGTt=KlAuiA2|Sd#e+WPWJ` zb7O_-Lh^r>dY#Mh+8~Nq>d9ZhdzY#yp{CD;6S++jM(Rkp5S{|e;DSP2we(=9+rwT- z2;1i>a@?1QwAa3}{9_(EEn>uC=eb|+gk%D(S^izp?~=jUAZJYJ?urzJ`caR3L@Md^ zu*jP`|F4xMpEU|>5v~k7U&{#C38!N-3wO$C@G!GU{MQPW?pwyW1}zPWo_GHMtX}x@ z0FOZPRD%bKl&acGn_927({diDq=RdQa^0Qjd*crLK3Y}0?z=}rJj@B2O8@CdATIiP zPE5`Rfu;gne|@sdg#NQ5J}qntpG#bRG0#}P-dDcL(+1>}quV*Nf9#h7T%WKC(L;Ox zENK{q#&$QWOvSTd>Cre#GY||0CEo+LyEoMaK-y21XT&VyB6|~LYj3$Rry}3yI>@QP zwFmS4J`(l%a=Geq+oZH$uCg#tn`xOU4@Ha`+fv$)AVlq?K{}D#u=iyKf01}Ws3q0r zzj*5t?i4Slem(cU*y(hW0U$@=W%r!netE*#vf3!%J_036Eg1l~b;~h!*d9pasi)tt z0#N*j8hD+PUYWu_AMu57WJ{P_8**^A0>xF=4^HaiT^{4VTmN_Ogxl~|@KMh84=@RKR%ibrt!J1ur`h`7y} zq_7KIC}I&;J4O@_|CA!)91FJwvA%x#~#9-`siyY!dLvzv|=0JiO- zX;Ma=fF_u{#gS`}XtMPbZlLJ5^y|Etl!zjPU46Q(I$$s+_1cqr4UMtCjy_jMp}G16 zzmluiME69N7U}sCB~Ap*h^8Vn+ZMH@Do=6))(4HfQoV@yIyw2sIla0m%*s?=V^;@v z5i{B*lbdEe-yVH_MdQtge>5f$nPaa}3--L|v*^7$@jf8?@_P!zBBngfWv(LEcn2cY zsI+Pq)lb)A=a8P0(ab$Ui+z7mlqu4f8F4v#-zf2sG1-`d#_US*d>!HLv{TEI3iISZ zWn=?R+P18ulZiy*1Za%7kBKz>{h9B|fDS(J!bEg$7pU9D>Bb}LPYeMkW|D2Af1f#@ z^&ANP!qL2ee;}t148htLB*@r`nuzQ7=1S_t7E?1`1J>_4(H_gCb`L^6vSamM>P?mO z+xxI88Y=0iQ`vO^ZbEQhI_OT|$JXwnYn&sIH{kZ3J4=EYwO#^=67+Yq<&~mY2LS56 zVyz=r;qW~6wf^NA`3IJCEW6B%7FlqRpzFBh%f_H%7vtkyErrVN-8AvnJ=BuV=dNv5 ziGsZEt!oDyok5cvMyldu)AviGStXKZJsx}|Q(!yw^n1VC1vm7q9qZ?OA3Fmrg`CXv zlKQ7(?D>Obd7PwxSO7BuV!iYSEKBhqv`Cb@I2Ds)`(ougg>~GaY=IHl~GfR4gh&j%Y zl0gckO)42BDu@2<_Il8WaeUhY8fdNd_Oq4M==UVJ{n{g%)nTpjN3jXtS4vbIeHtF+ zCgG)h5NT##A3wA)i7>!m#rE~n1-!iW%Gp=;&{!r~=;*_unK&f9Mi#&0PH!u1O0c@J zvUYwiiXs3KYIOl|#o9710h!DzOU_^q+>_%qgR3_YbnZs?$N~=H4uHF-y@mrie}*@n zpQ7KdD(9I^MDrR{y)7UAWcltaGHq=i*g+;M2ApjZ`AlT7^Ba?uEtE~wG%3~#7t3AF z-GB3Pma%TE-lp4jDHjkac01oUF_BFd!Nlv{ZRYk`HO&m8DH`rIld81o=FX=XE^=Sw zEwB!cB@&@y3KUmNMbhFQ3;Yyyw6uKBfSLkyoZgbRE|U7lJ?*Bd{qKeHE*z&RyNoUj zG@h#(y6o6DRT{w_QI)S?X)&Ufb3AiK8sv zDfasB>>8!#j1|hK$5q|3q!Y{Tk_2`}*jaKjH=kd+wrOMQ3TN74-|@p*TSxZI8FbxJ z2zzS0N#u!ixqIh=C=aN3?H)f_C~;g%L*~<5or@SpioIostmB}npynn5&Z1a=$=>7! z%@&MW&~*sw9_{6=h;((;w8HRH@Aj0-Yk8fpT5~A-L#4ju(rpACbVUy(Zs5Ssx)KrA zRuSa)1X)lik226)2|qR|e$HUvoYyGmWq^rjOJO7+*^9qvMGfp6h>Ni8H4@EhRp!U> z{R^*Q#3z`&uAadWt(l^4_ge12ZnoiB^J$As5zam|`g6tAvTDrV7!e_Z*+VG5!d-cK zjfYX1`=U>uYrDgs2QTY)12RJabF06HLe z@of(r<zCqX^M9VDRhW+iUIU|@-ocSb7ie7W=;64y~-vB8I z<X@WjQ7UmFJ9N!ffALdNQaeL2dKDMnG6WDR$G++xbnhZg$?1saiBAr!;x4b znL%>1n8|OyC0%H}RkqlYamw4*h`wy~NXch4(WS%T*GkTc@S#J6E(*%a*VnE$K5)P; zV{Bk7xuy{awdeoQ$W}*bV)!ghAhiw$b@`QJtkTgw^H$3lamA*hEWAO^$p}AxZHZOQ z=v&KlIloI?3szz|?KQ=s=YOjIiK8Pwgr=dyiIuPM<+X)c0~ z#I9=^g!_3Fmw?(?=|dlD<@4A{u~6 zayZW-D&a(T(n;rMb?_K=s2#PT`vmg03%uigNYZ$P@I5~0YhwAL84VeI6}XCp%!xW* zyt#+udp$ z6{09N6{Z27ku!SYA`9ycj10H=F%6>ubx>~F>6IfhI` z$f^wujcg?mxAEOdojSRoT2CfWkzO06zu|HV?|ub%Op!&jXav7LQQ^_yjWj*XraP;$ z`N;JrHCX!uobMNYK_z+8GxEM;85m2I|5kfRb1KEmWwb=|n0sw#@2@f%NqX%{h|3f42ifTJm=E#dm=6B-H^m)bRa073XrMgVu6aM84;9m~Qm9 zZ`lvQVgl(wV`;)7(G86!AL>tr_q*u)%IpUP(>4YBvLTQ!Vo%U7h!dl4xx8Cs76rcm z4Gq;oSfx0YllZkt9EawYQ+2(08vJNSIlK{eG7rwy4^;rM5Pu ztAkP*I7r`2M6wbF>AeJPg&k?cyy`!vah>$UYLv@JJNvZ=RzUE0d)|26qju=&yJ?6q z$beQG8az`=1r?9iPv*cZRLKZ$ctWk}J`N9EKHU3USw5ZQtjW?9085y9&t=?!$ByEV zIWfub35RgY_rmA6(nbQ{MVuVH?~He5@|d?kRu)}?uZlHKq>iZ*b$jv}hsUlzbvPo( zxQ^yjUM8OZnu0g4{vp+FpE{qmJ3)sZt+s5S<1YQA0;h~a+K6Fo2a znp2@6Z(W1__7}^za};F#*=9Q)sc4>`Zc~+Fl33PutsAR8#7`e5UsRnl$^CQ@KtRFg zNU6|cGszjm?a)YZr|}wxI=a`T4vIq@!jVDtN9o&r|>T2PYs( zG_UY3GH)1!$$rMi>W?m1iL8$6F{bL?bi+J>fCrT3MO>f@diP)k`k`xw^O%!H;PJuw zxV>5>QBK;F>u5cLk^4Dp)C{lIpLbH`ejz^Lh$6~6aDl+y>Bfl?Iq02uQ0WkFp?JJT z#H$l?*oVrc?;OcuHn9xr2|FXNGNYpehb8dZ`vYvoBCBkHrDWx~hxOkQS%zv{WbDUo zY8;4e_t|ks=N!3h10joT-D&t)6oTG>d;_;UoxZ=mz+~(-bnHL*R%w0QbI@Ox$1lIi zek3nj_UKje>QALpyiT!4Bl$Y7XM3tC&#SB{E;ZYk*Tq`caZbOZM`BsjG4{Egg9m`= zE00Fw&19X9@{RSx)c#Ks>pV_Y zTy)g=o`HPm1SeIh{G6~G%Zxwnhx*Wqs&IY13G+U&_bct?2#oaJ2MNM%OA&>n3-brH&N7^W`|9 zyDmR}TZL)vgYLSw7QzRL!7Qgtr)nh4>sh)zA8VyF()$VxFy`R7u4@71-^&!5N^w%{ z9Rjl36j>{msFc9`g`}|WK%tL_qvC2j-#HGg?&G!l7{c>$4!s%N!rfCbLRrbl-ee)p zZ9{io7@I)`X>xrYdd#kW+?rRpttYLrNow;^W`O{P3YF z9%53w1G&awpk4!%V6GHIRiTHP>0oT#J$_6z-yAzCpg$N~OQ8q)M&I6E(C_?~C+eHw zV-e-+5ptS>88*~f-`l({WuNNC1k`8?ORQ$;sB1<`oyKp?z!^5+$m#;eSaeph*ILF- zom~Ga$D()M)V(UV*melNi1UO#BWqHzLB4?U)h*?0!r>}xy+N#CG=a(QI6FPJi+||2 z%42^-$s-t3ypNTo)FHd$%RC;2$OyHyo@+%7PTM47mRn%~QQ(Lvw7x^tkX$)cSPmkcY^a4bWC<9}IeZvZm;0VO ze+t6~R=sq^twP4VoaD##=4 zcO8L$RLZTy|A+GiLSwFnT+G0aYwraf`TXa(UmjAv?NQqCF&tulS(nE z)(`P<6m4?XdSP|`5vy=%ppi`+P`<(Ii`q}Yk-J>>Lj?wLAW>k;E)#X0Y`QM_{4g$9 z^VX+_r~KmXONZZ+RUlc{y{Y}F1yvRfqS-!w?S8=v>+*}Km&?C0WXXEthGSIGR4$MF#{ zs`Wj0+iTbj$Un>)rgY%YN%~yF@fKs8rCs47YkSvaeew1k!!$&jwgCR)W9{1MEQXK=9@P4UWZ(GJ zz-mg9(Q5y*TK4OsJ(6ioGMfWW66NmK4KEo{9dDJX+P^;n8B=n5T5e9=4(-F6taoUf z1d>wB?Ix5ITeugy5`1KeOvsaKgz}sHOF3+>Hq+L7x2>*SyTAJ%1ZmxHYQ4>NT+8{1 zlORk<+8$I}epB$rQmwADtT<*o3G}kWrmf4S_e3pGb|gu1shyi9en$ifZcS)B-XLH^ zsqObb*vginoo$@Ts)R25-#l7XAb$YZL30if#1btLB+Im3OrSf_wbU&lO769vA3KbA z94E5(E8BSQNlHG85sm8Y&%BeeD|5ZODOm9P zF9{jXyVFUs`9M08g7bA;NdxgEb~l?fD5!S-MCDDkt?6{6<+{Jf1+Nh%=@j`Ofb&wovzt3P+IZ~ek+Cw*g5gkp6-j+8-$i< zv76HJz~gXxaMJ7K*6xFjkGkM`jn$ft%7r>}a*jIsQBpqrix<*(r&-lJxr78$?H{PNyF&Z1P z>G=MeAcJDr1MLTq(2~##_Z=sly7Gn?5U&PvJ;ZtrUL_+U?l1v^eCbnpLGT($iYf7G z9Hi?wr(+EN`E$?&Dd>cZHoFk+SRZj+0x0xD>E3t&^{n~}Zz-XAf)Jf_xp|1WxR%Qd z@e%rBqsfDUUJBv`%uH`UKDlH+z@;%ipvU=($V* zgJ(xeAXeBrDa>m%-)LLM5n&)wYWEDuB4_xH2MNOZrx~1x(pNbDo0IBx+d+B)!Bfl^^sEaFO1hV%2Wi5oo>QVAQ-Ft4aof!g9HWXsr z82UbjOIPe5)H{#CVOB3+Vi($>BBbuVl!!a9Q0=#V=PnwKP3t0!QC^Sl>OcIhLlkxD z3yWG6vHtFnDSaIv+Ji3vB9&{i=ahHt?ilw;K= zC4D{7QhZKIV|%nqB#+^X;2VesR!&qE)(c@MHk4Yve`*&u8E*GFkA+EYJL<35_rlHG zSmV{kU!V#I`I5$jcl>x&t$HqAVEEHLouz57_z}v?HJ#<HKCqq{u?51l)V#NiA|s zpeJc7c$igsPESh3l&ZkCJFOP>xIRJCS9iu)P2+o?r>uRbhOCrS58!yhby`jcR!mmu z=JFCR61!a+L7afuy1$boAbDJD=yKa&)dfjX+|} z-lbLRVk3XWX|fOD<1zb#9xp2h9%#{J{G@&_#_X zd~xPWpIzYnI-Ja}o~uFU=m9LghC_v_II4a+tyFff%UKrg>eN-Sr9#Sa9*)U$i0W&v zI$!xqD_qm^O8nBH7I3V1T5A!2Ki~|L=H=>b_3#_Z%x$q<)?SSUo0fj^3`oaw@WF4N z9Ay}EKr-iO>XxhgY(RJ02hU4YfQO}sR>xOybHlZpdDNig<%>N5>oUGB+I@+6$L%?f2SFQi2}NS-*(ia;VK$oX1ghx$zGD3HX?S11AS2FYM% z7U(JIWEUYwx?j?z7EDal553dp4HQTJ&piOpF!L=UJx~?Pmol_d>Fc@0LE^t%{U4GK zZ)+KMo=aReU{t3}&wk0a-j11VW&}J8N8V_AdQ7vk6UgnbmfJmqoOs}L+4-)al=_82 zUM-;XRsj^@G`?=-2_d5{$V>V(b|n3>ZEh`17T-pyI|Ks7jp-!u9#~G9)nZJq|5~a~ zJMJA$_tE;-wHs&7-_`=SxP>Ste#QUNng8mJB+drEWo3viu>qQ8h;D~EmDR|~U4r0J zKqiYzb?0HZ26iAL=uW(##WacV;`~48LMmZXPlO!Zu-MlVln*a)67mCza{<&TqgI%g zhE1&u)Jda5%vIHt$sur=a1aBt{Yfyo(s|0I_qv>Dlol4wSfD&xeokMO(pK6?%;Uma z8WY3OPTlQ}x9kky64!U3QfsVUbmEk4{>{B|QnWrB;~OdO^tZE3$EbjDH*W#vX1$_& z{JMrEU0>3ROb*0!*-z4DJ)}l{N>zEU-=+75g$s0$4 zu9ra9f)lhS4GA(~Ah7}y0@YGF(7|}EtQs-m!e9Iw~OhZ?M@Jf*oOZd z{Gx@M>}NB3nOc5KSdE;Zo%YUKom#@TSAn`|RKhSrKIj;ML!N12%v^(HT%`q}k$ocI zA<21Hgh8?AbB()h<)?f0WuV-6r)w49tZ-)su8DSf-o5-^(NqyoxUIIb;`%c$Dtp%C z^y!We3*$03SReIJPweXx8wTffN)UQfi+H~5k>jkrrFiN)qp=g$RWZzR&ZbO@K5+g} zKt@n@1^Tb%@Y6Zq>0j-PgCLjJI&^CT5y}PaK{a>+RG%#pR^ZcLd&}{Ig zq%-Ly-M=SI+meBLD0ZJd|5cj*Ij7L{{NA69$LHbU;m-=wjLfM_lf^yheEm1O}-X} z+1HnCK_^r7gtC=#AwcV6H#aRakt)~DX+6T@hp*=m2Ua8GGmttwVE#M#pZ*g0>!)Jh zw+cDbf2{sh~JaplSsrzUfcvn!^A6%OoY|0)I}Noxx5KtH;_W_syAQ=a<9(ss(~eu6%%!UK>`t zQ~ZNn$PoZ;LkPejWo9=gTey|rKK*jo3A;MFf5oMLok=_^y6Ew-+slaN-+OD;$yly1 zX)ZGpruzMEZvq+xN;`lJw5|h|(2?UT^FRI}?@4Jm%DMRXfU~y!>pv3{o;CpgDB!S? z{B0uPRp4egn<+m1x^so*)LJdC<9_Q0(4)$k#|C3es3og7e>O;!!ybMU!`GzDe{&tm5L4eibP%qWaU%7N@P*)Vn{wufo zKhgAUJ>X&?msxxMH;x3ep7w-vT$W)|x)}htVo0B1|Fu8;sq6`Gq<4Xb`foqnJO&nR z(4`{*ScKcaz7tQ7;87+SRm^)>9X$IGyM_RuJ zj$G4T`uf`s@xfTpC!wKt z-qYgxGoN%`*2~!%i-_V&Ii%3)xH?D6-cLRUp{TUUi3)dF(uvj*kBO?3GH$0JWK3HX z8MI?XKzfDW`x3X96sP@Xg%}2=uk}`LvCk^AaG;V0c1ZaXWLvD?y}rb9Dh9paaw^;L z*_a~_!xL87wJABvIQ4AXj^7t1?^H~GUEe$6ue0ASJ$*8oV;CMQ>A9S7?b@}sIKQew z7CO4@$Dwl-fKu1GLvFKvXS`}%D^=2q*JM0?SixhlEBBF27Z{jprclWj+un+L35(LI zj{d)UHZL;hH7eRxRlZc*r!{hpK8t>RH{-=O!=T2H??QL#W*ZW(%2d%P-mE0Zpi$@V ze63l{+czo+BH zp#x}cz)iCLcZd1sK8sAtrdb^k zXA4*P5K_Z&dnSb)5X1~SW119$~} zcXy_#(@Q_#6I_cz373?{52~>r6K3S5@M4JJJHQhS{`o`!!N3dvdu&&(rV^kCBEKFy zcmDRNR}Ry%iJdE-mi~H2aa<$#Rn2IO{{uT1$;-{lg`UP?XO}BL@iW2v;N!CjREP(E zy^{D~dk50C;)sl^LK{`GTgDZ}{u2M)G8d@72wEucB?x*;0&@j-I^x)GUMW3&tf1v; zrmy?IzOgLyPws-mEtff)BIUf)>$Nb zk)VY-?t!18#CYM3-}lqo7QiDc#N3jR2O55WKO8@B7kaST^G?DlXX^TggvjG+3XgGduUA zW1DYF<4}Cg-torxHYMCEsn$LE*f$jsywk4QL2H^)l#U6$$dzpwXP4$@-X~3Zn$g1P zA2^dXHI3e^JH}WS)2Di?X_KsM{?}vV{|YVyB4@1EFe@MuKf3fZaI{t6EULggtZA6( z+f)VPy9fltftN7Yt(z&bgrvxNhlFYD z3?J!@plS_6ca`(!P|Hh9TDU|Dv9Ig|7)aA8OP}Rc*_qC{@w7NiO z+^x7*A!l(L_^xjC7_Ue}S&7fr=uM(gWczfM)3!pCX+-=xju_UHqy)uFcPQ~_IKh#c z&3EZ6(sZ>ubr@}DeWdBKiphI-ua}PGX!sD;FziyA?%${;hxN-sbrmtewd_8MmtXzN zDjJ?O!-pZ&DTVd%HghXnW#D_Rv%PKK=FUm-4Rnf(^zv?OO&@`wdEQA{U)0y!CMB-h zA79rndv4(5ESpiBeqzcsc$JD~C+OvAZ%T9a^eVe_%3;`iZcs9`h$U zU-2H`OP_}AD8<+xelpo#YsM%=jFza-FDKoQ6qn)a>fgMxh7#bmwtjFoF>lTNKJ}Lfs9R`>6pi7$R{a2Yp zOIb#oa+%gE4?6gH`(KqgJ9)}m$ceSos4NgXS}Dy{sCD%2yY5QFR%@Doe1D>AUl7g* z?oaDV>R5j%3OX=mOAZJQIuhwOf9pTvi)R>57re?UTJyroDmT~^1yk)a@a&ux+ne=& zcQ%vcJ7p(LE>mR?skqm)Nhd)T;(syP`hLPltOQp6?7?at>i{qYrO!7j5>(&gX=Xt5 z4?F_CLM0*Br?abDSzj6P#i4;g#wW6h3(-6WjH1yO4Nsfl%YB3Pw?5dFj*5Bz01)Jh zxh4>oxhezvyf4Zwy`2zVh}Tg4i17+!UT)g!*lUU42n;fx$;zo^IWvA^(CzYG;GKhX zYUdDOV$*Xgw%`5s4B)oSz5w#Iy!Gj23wMnq;xQ?x_NckJ%WLkZ;*E~K*lyxdBrM}bHvsA&5P7(1 zQQMd=Tygvte<{A^Z)k-xR-a2XVX)wNvE*hMAiL8GI8x9^InWmknEqQk^<)w;x0?TI z;3I&9IZMI8bbs#!MSEh~PwX}|n;Zp5a?z06VXQAL96oWEeOb%AXL7epCeG%XN>#@& zUDu9u0-1(iud0I~>*M2`yPf)vzwqByZxK4mk zXbCk*SZ(aH3Q9kmrcbr76Sd#93j&W8XBHA~JfEoW4j+0zwymDOsQU@eNToaf{@fSA z#J!QwDdGwmPBX@60!JB05B0^U zzYbBRnG8{?cSo?1wE+lp5J@5A zKXOR+7;UY+WuctE^QDA0*=$n6%t21zD&twQ`m+<9W33wfT=TctHZwWMx-P8IDdot2 z1(k6Dj91RsXRY_MiW8NB%ZdoXB2kB{gB_ajYq6Bj>(1z>{JiY_$zqQ^CCKr&Y!4a! zs|A2(b`dV?)^I%bs@ixJeaJZ>bq*lQG1Y^<`HbZ& z?%}sr9^ei3175y;3}-BlmaFl|G^q_j3;^sT;_(3}<0qb1vg09hTqYJe4O6IURj$e&&U6(Ud#)9Lui_pFH zC-u>i*H6gFPe(arUsR}|c(xl|@oBAn9y0ibWKew3L{4^jEP0Uvn7JIJXHD_@P8Tc= zpnCNS=dWy01*b5Jb`ttgU=y*&t9f2SZA~IzjI83sT-U9{aha!3^!*&(ck2654~+>m zFMSiiycnmbx9W?rgd9ad)JS|u^f=qJ(Y}&rqHIyd$y7Sfs{TV`+WcYijhzU%#-Sl? zm>kj^qnX3&Xmyr*zM}z{1wO4$*ysbVRbSQL;>_h2a=zFlY8?MgYIQn-JjfAk!w-kG zf3Pe=(he3q<{J`qO-vB{%tjE!_5O&>shuXjU}6B-i733hZ!A4Q9`d$0M%ttvCH6v9oh&Vm^i1k#=XV%O2jL zXCE>Na_|SQ`jGYMgPYxSrs=ZR=GP4S!voonF{`7^AdoZ%ghLQw{s%UF`b1Qc!DympP9yvUz*q0I$ z3yv#ndSL9;zLzjlduzN_m-l4vI+pmdNI!`ERj6)n(ny`q6v)BQWzoVw;XPliZxnP& ztLOs5N2lawZk0y#Yj#nURR=@ckEqp0k_LB%!Ml?|T`Vc1ZrIFmu)$Kna3g(Iq+14M zGjDh^H+_W&h8KD;>L2bfn)B?Vs1_Kx3mQR~DdC_G>+}YmyJ_~uYfOT&Jcvh?4}U7s zf8oQ+kJKERRh~dJ3U8W+H@Jb)*>^EM9z6GMyT@A9kKcr&F2=w26wCunM3(s_#H zUomt->HlEMs*i@wxrE&%rip-GzAZbM&Uy69cYVjadKk!xCv?mRjr}HvBNOSQU&m!X z$XD2S%jKh7NXmTEz7NU1PO=l#L4vT6z9BTEy&;X%ztqJNuc7|+Ma8wi1hH9lrCj*! z@}UC@8v4WNB(Zg1d3?+)BvnSnqx28c^Bi{DoobD7xz$%Xou?$g89M={3Nvi3AKzdC zj!M15-fO6e;WB@gbpWr@`~P( z7BbFlT!-~oi0L7(Hh3u=m?F(R8ooNCKUyo7DJEh}GQy zi%cUhNWzq5sc#^3W@JUs$7RlWx+C&BU)q{dzS~Rg0&qN7Wy52upO%?0SYX}v?UCfY zK*>e7-}Z?nDWK%^da1gf_q=0GW}yq}hW)Pk}MylE^dM_B~1% zE}Ef+J7JwCbxypa;_~m!sRqLx#L~n_R59MWtPVvMv9IHMwl`|bby6Wd25t3XZ>(qq z2D?f=F7VQ%cZvu)%<2_$ z-(|K-_~4eEoKT`NxG9+SUSp8RoG?3|no-sn*)?L*z|1(F6JIU{%c>(ph>5{o6BOX) z-zGQQbun8T#cWnxY(#7Kqc<)tlMD9`Uch`0EL0um5a_WJ<-FkeIDM}9wQQZM_ z_-=2-+sJdgE7Ez)ygEIkbYV++UThhKx@OQ4U zojMF>XDRDnKT_#Fp?L&Ea5x|I=s;&~NxA02_IzRfRDiA7rgSeQUm~Y@L?@<;TVRvA zbR&IfLRc9Y0ZCZXLA1wrakE3Lt(AWBubUmGvu(C@|N85EJjdC{0?VD!GLiqZ3 z&p?m@$sD3~&qrI2u0W<=+FaXeXHR~4k{JYK=H^1Ol*4tKNZ!7f;f81HVl%p+u?1BQ zvA)ueCW;+AQ>kj(P?oR9s^F7q+JzHArE0KqvwbX+WgOL={f!h+-t~ao(R0TAwZ+ZS zriwgB4+$Y>^LqlEJCU#e*R`x2nJalp9FYTJFBxE4yU`<`o2peoGL=&GDgns(LCg%efuVwlLcOAwaGXq$TE%v=t({94Us52+s_QG zi?11sE9pFuoOvx1Lw(km-Yr_?uxn&^pDsxM)7Vv=ht0!F-Ay;lq+akwYoH!4hm++# zQCh}jlyW#&hkG%LIoEopaTFx2f*o7{k00C_Pu=m4B$c0*Tm}X&GXr z2;W>69UiGUv6v0Dt6YW0PLhguJr-V*4%{@0%EALvgdRA?{tWzfyemz3IYS4a3+wqm z$0MMCg6P*908dAMcA8!E5FrmcuUR9IuCkD@Mk_E+@V?ibhN$a$|F`axD!D87M(TLY z-A1dhRhK8u;$!ALZ+n=3KCHd5&U3PhsPH6%Q1Kd7CpG3yk{4ITHJ2X!=$yH(jH9Tk zVlS_(7%OI;3arPsrt(^MaaYQTsiv9>6!hElsg)bs?}deMRSJRM+O+pHNfSbF!FV^U z6**!6CdgyoebM7i!+)|AWOrUx%Z*NaEO>vVFoNso%c>x5F8JAaiRZ^1)PX)fJ8!0L zUdnzihS{M2N!Db^H#Ml3^ zBg(B?*RFxxiKQT*wjgqVJorr;c`V%C<8fcFRHZ`LORPJfXG(Sxk>VaSb>kI3-{J|@ zD%EAn+LSB(2Q74nMCf2Pn0t~x^F|cw#|_&Ht76_kml}_0CF5HkIC)-9%K_uL&>mrZ zb{7id8!mu{c!8<^*spSeya8=j*2zI}NAng+ek+D;_rRX%=<9*c4R(mDs7i%#;;}r| zx3QeJ-4Qe1=>aO4xGz%Op%o#UA6cWiyhGGZg*{XzP#o|X2;f%2HO8fj?T*~<>udEm z82*!?O4~K2cC%%``O-T(J^>m>EM` z9VRt9cAS$A$z^7NcFx#i5;N?iaBY_y>v}KjuXxI_tcMO2>? zH1)N$-%x!WdAEFN-Ar1~j;|(2@agP!HzoH;y%x@Eh*8d}UD&DO)iM9CpWHbpi2f7c%)s5~XSIegF}lY~wk&i%%Vt z_VC&GLhiF=@+q{9iu4s&vl!QU9}_>cUIdIzep`Xo{@T6E{d9IIWg0bOikJ(REtfQC z>})FO^r4(#?3Fy0>mW;S!V3Hx%ASq3#+~@*+fBRv@#!S_c3?_Nr?^@#KtAKHY~f47 zdCb&s6p3jmclZb@z*zb;T~QdWPiqy1N*OkW1i_tVWP~qa2d`eJteASiALH`XD2!8Ggb-F>uvWdsDB9`xle0I*|5sCf z7ijQniAEW}OBSR4v*XyOe}v;KGvDgO_|Al~~l4h=S%X$~>? zQOm&%T@gwJt&Q>`p>j`q`IfD772qyZ);9B#rhKdIJRVXJ{=W|9k|m0!{q(0T>g}vw zZ}|2Z9{8z!b(ofE9&-wi#_q-UrKbT58(z(2l#_p*(=nDoB>Hzk%K4Nog34X209Z{< z;O2?;O{dJERu6sogvJ?*Lrb|0SW<4xalD`|O&i zY#Nx@wWOs5FjA!dFj7UoGg8)&Q_>ppH}1??+0#*_tM5MpPwA4D%x8;&o^Aa92z%?W zsJ8Zh_^2SEh!P?Qf&zn-2+~N1gv5Y!gLDnuEl3Dbg1`{cIdnIubW02+CEZ9jylc*R zp66$r_sbu8vFF-*uf5i~*WLI1*=leflY1h;J4vL}lk2K2jhYLA)Bpcm{*D%^{~G^n zJwt`-&hLOAp{wBEK|;#EgM@5Ko#q_qu5*5;6&VJR&UH+A@oI-(;%n+1K|peBJHGJ8 zZsg;k8W->4ZwHQuCHe$@UJzwn`#S(y`D*|)^c2qq5t5V0lns$nwf3<~|t$1MD&1!e7ooH|Nw8=%}{X+bHpih3e zcjf#zW!!jkiyTzz@MOu@qu7KWd?a-j$aDWGChob)1UC5?732IwgXT&Nvp(FSK0V!^ z)Z~Yhk6FLNCU}_HYGa6Bf;{=OH;{F{1ON!O5PY-1A+Fy(mZas*6^*bb1Uk%!zGNKF zyt!+Q9Za&?P2bg08rk15^U)^E)OLqjY~uXh)aF#0w&;Xb-|I**zaL{ARLWAZFDPib z*tCw+4_ESUjZB|2it)~M*3hf5Q$Wx8r%t(-h*%tY79KPO7#`7U$#cD`3Y^+{Ed2F&b~hPx7|Urt-PkXJG-!u zVfL-uXr(M)c6_(Q7kaX_AhBD@`O|Uv_wT;>L&OtKuM`fut&ML%$~@{VaD(6nE6O|T z=7Jk)`;JfT*gx2pTq;$6&uO){h0sxn+BD$`ziR>=XyutTtz-C$1^X|<{dfi@!pE6u zi*-p0AG~?XD7!_WcGT_22x(pZ4Bzh^R@~F^8I{Ai-F~o41o+{$%iYK@u$Enqj(%nD zzY`2twJgxeFHDtrPxLQO2BIHS;IpaTVB9E;>{dDKEh6}K=jO`^Rdd6cbfyy1{ceJN zhgE^$MqN7lUof%$Z35(kKcWlT09*wUz})PveN(ciJ51kN=t-CkCF65d{>bA{ws$=B z23NikR1bx;N%0&wpR?#N1OxCsEPTjfVaq)^fHD`s^+$)I%%b%lFZ3>zTc=4USvuvWaOMqoKKAl9iMCJCgzRx3i<3orEhZIhfUvN z7iBfSoXtRQa>X;rAaigOhn$u^VZ$AY#S5`mLNvEXFY2skzEu6U>a^I}pfl zE=Clce(Q`AP%AetMSO?9{($9vaCn%uVx2A<;`HJ5XpgQvgNP1P94~Av{e+Z?m?86}i;dlw< zwZ`ywhjTp(ZRV>N5+df9yeC}*o$3(3?JRt^d}V0fWeGd>WV3}_wcwTKdga2s)7>F0 zZtK~%AZ0oope!j7JyL&JZNJ9qvImQxQ=sd=j~Pn^kpjqfvCZuLG}2c!r_Rqd&RGpQ z@6_(}NgVZfoP~QDc8_FiQNd)3^k{b-msQNZ)d{PWyG1;JCus5E+~bt5w)e;miXE&R zpOhJIJp3HS-!0eKqZYBU6-|);z2>?7jaYfC=)^MzUsHocS2A&hd}!w;anK5Wrml^M z@q0t!!~spu)8BN*KM0QE3i`>(ma5@9|4M_?wWHGA;fQQ8%|i9ctjzuf~y4}i-t z8O$q(%?zKjyL$ajB7lTdmiQ1z&aYWM;cR-|fR8%|9~&vO>s8%s=G86w#2xRDFzlcFzvT+wShZMf|2P;na_x37=D zw_n|wo*VfV>Y&M(s9H*!T?hL&EA#$#vJP%brz zh<9G5MZsq(mWBhYQWf4OgfAsA^(ShaRO{VqrQ$e~!0DrZ`0&LQj2i=P`{NmE=9Sc* zU(QaCbM-|@kNE)vo%3p8OHP_JxX*BHg_NC`%Q_Wx933W{L?KUm0U$=u9cDokI4!{B zneJI5&2gNIP$~hi6}ifVUl8pe>`lpgyjpD1pC0rrO#whj0BlB+T7dV-B2frutkeZs z1S}ekU@`!ur;nBZDq;bm9tBv5Li7A;DEh6FMQHv`vEF;*8DE^c0|na8vn>FDI@Ew{ zANMSPL!ufI+qF{(uyhpliTe$UOWs*Y8B5T@!p4TVyWQ5uxJ+Hi&gMFz%13pMRO;PN z(R3~6+6fueD_){-DJ01|>i}NQAi$=}0*H+dJ!{)|P61+TsBrms*bj4icGbXUeHsE>WlfhtUm#|__rOFf`mt9A~r!JR9kQdRjkE{tdChV%2!SjK#Y{=e=KfHm&G0zRS zRlMuT`!w1|jgM^uxD)GQGg^m zecLtNu9dtN8^`Z40Z@`rSRu9h@pju2u=y2$#Mb1;cyfBG{{;)e`Lf{EGaxiNuy1f) zrh&kLLC?LCE1kUC;?ph@SJ+C`vva zxWoVQRS8C+4Q@898pUEIX^MEK|2G!^{wfG72EG?<6KyGIWRywR_}I;DyNg4g&IE2+ zz4E3~Q^Xe8+64C!a2Lmn!C^xC11C20j=!;WXF1Kl#TF_x-z6dCkMLN<{j3l z&SJxqRUj74qOa#A9PBiAN7sfIKaBZ1Zn3biu!QSUrEv<(0@cSjbb|kz&{QSbth5vi`bCqh63cBgTvvZ=NR;k zGbBdh4W{i-p2q$Hf8$sG5w$?mJX+1CCyN2TE?n8}fGds>Nj$ z?C$WYYnVjId5-nXov(d8mJ=NTJr>+W@> zizkEfNRKO`ubP%Amg9Wb-Efli#JFmzb8e4N9+o%pS8UANXJxaEE`2J^WaC=Ld$fKu zzGtsdpZL6^#l&&=Gi!IPYgPVpe%{Qkm~!iU9qfs;Djah8uIlZj#^d7M!$a2i!I_5j zA^xiaGP8l@rH6SQnbM~(7_WcJxf2p%_-lyePX)C|Gf|xSc=VcIFlq6b{pqMHQ~wtT zz``n}ql433>*m;E(yTG^5$eRTw4t1Y%{O}}E5pwYdpuN;w2}%K+ryyQ2mV7c(o0ih%8LPMsFkAHTD&$XhozViNt>pDUqTa{3{)5^eRER)}5 zFNbjcal|9Z*A1k_HVaa``(rkWgtz-~7cBiohDti*D;^_-NX-twn{yIhV-di`Ng%GT z1gQ;p0Q^_o`I$@hWIC?FlkcHKTCTl_80~Ju%e29#WM(|}t8j(2CNyzyV0C?{B`F$8 z`cJ;?WB|lUIsnN^7~r(iE1KI*1WA15g#iGji@orOK|+@a43~^MHJ;aHd1t9VhFMp{ zRZWry;8^oyZ#92@gTZFlO`1&?w267+Mwu5)I-WQHJ!BxlCtx{C*YU?9w3Xn{t4G-wzJ(v^(yhS{7fFk(Z%9U0 z>W|LBLs~+}%jbQwx~E+wMQR9wv_6*35kqP>6%jESMMAXEi2LQuyyx!q2i3dImZs*% z)|!SrBT-$<$I%|-IQ(I&hq~fOg`9f1fCtgF;n*LkKzJ$w%L0PWX@$?;n?ka`{uo(V z^ep9A@@0I|JGS+tjF<09XHL)Y zs#jFZ!4T+<4Y&2Qsb)eh&$r=89|bawD?;zcgVpsPo#=0F! zl@ih`OWoJ~xYJ!t#&Q$Zt6ZfjJH%ZK7zWFYxeQH$H%+rNdv5oZ5pS%7B9_Q&R~Dlx zujz*b7ha&uPkp>BjD4(z^X_OZ`5!Gf`ZhZ=jl-DZ#<%i(!bnSRhB2$?_L~OL5g@Zs z^%-8VcfdB(Np7<-jwY+?7Rh6d*{(32@^O2$lRU_Pwjf2itgi~)!h6wsh4&vB5~aE+gmj1%nHv7d9bV@WLPzFq5DHwee$hPP z7^AP>Da#2F*aUW-YR5c$^NA<1!#5z&VG7mE&j=k(ZF!rWCQ@1VWwAk|ZoU~UUDC4I zJ6U}}-}wu~VCgRY9YEc>Mv>=M6Qu5txarKJ={rpLp{iB3S->8MM{9uxKp>VnhzfWa z*B8kpw>B2-aI1uqn2G*_oz1)?d2SDM<%!*TnoNq%vDy`V2dPt z{QWaN+Mc@e$ju^6T%aO0E&-j}jX>KX8*p@(Mn zwdN!S5)n6^6B5+Ew5hYC)0VBPJz@<(ZaJCSem;ytRvTH)eA_jgaHX^CNZ>9uExc`Z zmSAo%@O*7~GU;;p3uZ(6#fJUC>|uUigjFwn6|(-VbxVA2xi-*%4tWR$*pzWUFj6#$ zEPeGoH`!&>V67N*f@+j#g7v$EOMmp{+~ApT1nVm+%nN)hSvP;g6!_Z^;xAbGWI1YI zrUJY$k{s*$b=z;eqDB;1mY$SoQ+agWTuIgKy_8Ow1ADoj5M|j~9DW{0LpG zh!U-Cl)Fz4r&%MF?R&@nD`e^eGYj&d8H?yTd?`g@JeEJKue5fhVz)DnByo<(vyFrz5HE zSl&BZXSF>>1Bvzsnf5w)sS`XN{Z)y%G0Z?tvb*JyA=|obpi9g$hgrlZL7AV>2gzYQ zVdE%@0LqtmM2{=!pEp1V2htr}=FYYlbFCk#Z+|T&QFpFSe>DDHpflfC3kQ=kZ*IdQ zul3j^bHlCP^l&U+fpgJ)j&HMcFD@&o+ie3Gowczvc<;IVX8Epa&9W$R?JTbS<8|av znFj)Cc3k3&R9rdGbnr3VTUuULTQr4g96nbE!BjUfvYrfFmkZpJp>vlxN{jrnuIfZm zFneBKpcW7G%KGvu@=7$nM_n0gL}&bQzItU5y589uDJHYTJNPF*m0*xQoIJSoz@YLY zXzok>S65(xf8}e_%uft*EC!u$AvbH*=E_NnnoZwQh5+3sZp_~?ig&tzVPpIK3p)Md zS9A_&XlNB6Vd{~_DB?&aN4Zc4|6$sz=LSB|v7oiVT(w*}>Udap#}S;49ipe>_3+uV zXM;t8U9lX%jbgRa&+tU=tit!PdVcf(3)}i=nbh(WyMQ z?nwzmSQjw6%+d2D?TAF*LeiM+1Fvc0OB)z8uZN$%f^U(jlX}Pw6^LcYrm^jIjkKXb zJCpnyAm}mDUr(OxQWwv54cB11)hCz;nSZUQOrT{yGl{ab-asd;tgkugCPyY^CYuZ! z6dd^td|3P8Y6sU8*-qzOmLCy9^xGFK&z?V{?_uqikD?H7R%9<+sy1F@?It*G9cYK_ zBAp7b{HU%w$eZlPk(_U8elej5Tec@b&>0#U_0DI@rgpVU6OSkB2i4w@#7Xpbb3SBnRNMkHGs<<}ld zgu4QpV{l*HqAXVY4!Qe565)@>979la+~PogtYS`tlb+&m<8BSD4^;Aa9Q}r5br;LC z`T6>hdyZ3=4v&x3?qA!6+x*q=bRF{+(0Mkg;zDI_ejfMUp1tFsyMoCkpCu~{$`8fu z+o<|2r8)CeY=^3`%V2~MwZ3Xq<|=BtRn56r{Tb9 zlJ#bb>QGyOzAed8+X7-SsvOT3O5#9{(5a?bX}Hq8+Jr1pVj|>!tnqF?^5u5-M}^&x z-5BS(^mwMbc@BIhB4y4Wk#*C?U79x8&bE&-EevY%Hx#r!VoYQ|>7NX*!u`7DXK1_` zyh2CfSiR+Uo=nGkHS=p;g(=cq_6_}c@`!dU;Y_cj4$c2)<=-9W=D`92BYlHDlSnY#E3B)A=tF4zWOqm#iwXB%n%+awv)rz_+XWH<09 zmV4jC;PM1E{FoPjR0EjLKxAoa>kE2E?YJ?WT zAEu`tj|_;3<-RvDQ0fZOKwj(7IRbOOg}wp8ky7NZV$#MyU1HEh0{kdaAy2nn1avH- zD7)XPEAzB{Oy+)yRK)VOdVOwcH(PY{w3V2TBq>JKwb)e0zKV9pX2-00eR`&ry;0MS zm8#RQmF-Ukra^98_>uYH3Q75NBKFhA%J|3phyb5$RUXlgCz2b%@Kn1fXy3+vZA_*@ ze8M{MCoPi5vMT?mVJjl`-so^ytK;R26XRSHb5)5eC2J!$Dxh33Vaj#%>B{qu znG>4hBua8J{Iv65q(|%aL?c!f!BIl@*^wJ*DBk&;mraYyVY0Hv0Q48%3k z6B%yw);-%!I5(PZ^tVRimelGjVltpjXbY#I*Q%?SBb+8#FwerrXE6qF#8nO(dB*+e zO-ehD{ZM*CFxwi-XEM>75DU#?kh?oCX4z=xo^C5Ct9v{X!mmmQmBeiJ7E*5+>|gNA za@9S0;;^nxucw2UsySY-j;vG>Y?g1VTr2w)#;XB(Pg!|~sxNrbC@7DW_IR5~er-Ns z?umU*DGFImnK{%I||T97|PFW$)j?^1xN62hqc`*qepD@cPlk(j*9c66(%1a z9~JFD;3+lkj^k2%@rl7NY^?8bH^(=Ps9q~!E}Qv41suHwU!0?(mHb=;Ey%-Q?x=>p z>?qW20TwlRmS(N<(RV-coko0VWzY9uuNJ#`@E_%V$NcgEz8(Gg0~et>VVs-13Q- z^uwnfXRfAgNp)_=%Uv9kB_~0LjI1{sNCbT#92g)BMFOD z8~~C%YJLC}Js!{Zu&opoC5oZ82phS#nDm*jfsL)Ru2aR=d`>O}1+(^B;8_OsN8x?)HtHOux~AQxUN{gmz2>h6@I)z; zlSm@wbrbLf07ZbSjjw=DHU?5*h z%c6ESlJLZeppB&$Y8kbK^% zi3Mcv^aV;y&a5M12zU#{Jv?}5kTjtAj0ww)-yP1syVN{mDPD3Fc-bKvzPIGoYt*w( zN+=EMP1d=YS1W)op|{okaw#~`f24PemE(Jm`{|KN(q(*>f)N-%O3Ac~2k|jgj=rw2 zC-V^Z&FQ9GePKx-Oq=e%{m2%;4K%pf?HLT+v^VGhmIFx`h&M1 z3~OqMOJ0U}4NvqNF&WG;E=4j_>fC!0Yn)(%{4hJ8JX4iLrq*%*SVkZAJNU|73H)T{ zj$6^&(KiFI%q0`}#z`DRBjDfww`p$}m19M~|MKUWfHi;hcI{;09@GoIOOIc1I3H_~ zvq9Vdi~<9rVX7?C=)EpDbAxJovy%8n^=5cGq^)ajmfR-SM2DwJzKoK*)nHp`wz4>judv4(Dm!j-;l_aYdusu(TbRuS zaiB4*G9W^&ANk&@JUW0leYzRMT+9_1n3Ft#HIglzz&FU8uH%iR51%uTj0gm7eboq_ zPG*SwD?ys{2LV_)@OmgI@fF_$o7zWEJm4Bx~mj=RBn+l9^$GU>( zkg->huFNfPduoS3tQPooY+bZK6L8$*OijI_@6@@B4|%Ekg%0vcTksGBE40 zZe#&-3zsCh)9fw!AG&2=yPuM&`GsV$>d-~PnV+mNx5QfdW}$5X)4ByCR8l`2jHf~< z0J_d;SHjC;10MD~-41MzWQ=`<9bLH%e5b0x&0`?h?F`bY9r=JILRS(!EHDSgVz(?$ z|F9TX+u3fA&i*Vp8v3ajQUPo8%#@;cSvoUDDa5Auk<6cyKa3I)6C3*!b>i^?bNoZ6 zI){QuXN{G-E%Q)nk=T4K6%QhY6G$?8ke2q;ru)yvH$TgLkhd`MoB|4Zy7aQC`U{Mr zNe(xledIeov2g=IV#T*_*XFT5R5oa)(`K{FA!pmkpgH1@yt~@rIV9-6WxV~wSHWBV z9%OHE8+ZTBLz)OgkUgoJgt&JBqaBuz-1Sa;t>VErrAC;I>#|*Lo+;j!s{Si<8 zoqt?%KxO9;amoHYJdZa1#$9~XUz-m7%d{~oP}SNsfH~#gq<~EmHV9B&IFcs;s)f#r z#v34_ONh!*6O1F`I>gm7T_w#R|a$um@5AV|xFdZwwKuqKmF@FCNDgTwW z8UZC}(*g7vCD1TrGeA4>*3a+!_1^!?PapubT2wk1AYTp}(6CBUC)>pv`%j;u`-Y(T z#&tjrVVB-wN%aaQbu=R;4ym0}&v%4qHh65Zz1~?2HPZMR>xyV`S8lV#rbaNae_bLB z8t_n5)P$Q}MDhY6U_NaR#kxUy$PymFXKL(WN-!BhWNTE{D@b-CZA+W};n7RnehV15 z1D$pngo~V0M{L5vu>L*{QPacwJw0KL(x6{e?~L+AwFV{ilZvM?5O$B00efqXXJ6VoeL-}jC!}PHqCipbTn)8Z1=*_c;*Wz<- zP%6GCYbH5p-!@Uog6~?|Hrg}Bvvz78rizn8iH8&v-p!WYd&gZQ*e@bE7`a$c&^C94 z8(v?9xXp|a|FwCk21jZcCq3ge$!?XF7)Uy|&d zdqtsFw&*}jrZ2xA=lu(qmYg2}=wW z@z-DlVs55FCT0n*pkf2@eJ2)5HambeaZ0* zzgV{o=d{r@|t|NPY& z4Y;HAd_})0T8$J1n|63QR5eqtEez{uY9UIRTH-_Bh>aluz75-FUBjMuWHWT->3Z=$ zX|22y{Apys%uVUfkfttFn=bIroujJdDe)|EDdG;~)Xvuo^N334=U2^sK*FiOP^d)Q z=Cc0wh6tg;%j%>-S+26@Hao+ia*raQVYsnWd9Z2uAgX8j;S!1w;nf~0xmGCURA^?CgRS=I7&{rx6N*?~G? znXu%R43oLU(Z2VDF||8N$kqRxFn!yn@gb|fv|RjC^1UucDN1Fxl6Wy^UwRIBL&t8R zqkT|{k{aJR>)Y4+LcKI%4ggEP_D+H1Ho`)v#3X6%oZsqX&Zu#iuf1`iHM^LMD1m!z z*yU~5&@7EFKo_O9PY%u>JXxSIF)P97SR~+1e1phCG<6;E(3Du&Ye7#=WT#CvL*x&Z zIapnr4TQ53y{<|k6WJr=smfK#7TzYmQ<7bJLO+ny;~u2WuDBaV7yAMoX)+7jb<3=Q zRiL|Y8cRiF)1RR@!L}{g88q$br6Gk@~+I$8<0y2v>hl$u))6ojQ{ci zfnZcqvKimF8 z01A>MVe2E%_;rdcdU?uq>p_Q_;Yex4g;fX?Q=sW2zI56!F4zZ9;UK1?`2`ZqJ;%v) z5vio2U~@^na{>fi7F02a4$yLmd0IH{Ui6?|Ah16Jt!4qrWvGcW(W$mA^49*Jog7nF1fU34Fo;^mp)yq7QV^`M*iL^%hEQH$LtcL#qLe8vXY} zZZTe1lz;|S27ewHfsQ`lkNi8nwj9YX(nb-9Gov*yOO;wbmwiVA9c`{FWZ??*4htpkQ+Xju20hMgO*hvbP_qR}{D(uazH=Y1B&{US9=l=$8qSVoXvsGEI&0Jj6VTyru-HSC{%xkO(N8k;&yS25)z0dq;%Cb*x$1;2q5bm2lrV~e8a+0`zRaca3Dih< zUS?;r7?nkbl?ln;Wp}@K-cVuyRf9O6SlgBiTAZjyF^Oih!io>+x5iY;kA>0m#eSTE zGnwJYw?MWWq@MQ`qMr)V9fzGt*dg3iRY%=%=~LBPbk6&Fc6SONC@dKMR(9hVM{hal zw!iXzK4kgbZo<<0`P`kRqtc_Z<615v@A%(@fgX?-pl|LRDE0~^xdaa8+UVKyT9?!Q zHRJk`LMW5;L5ODbk934mbPS$HV*w zPOE1AXLeDMP_q02H+w(p9>$@XmiCACleWC1FWxwJ=L?M#uEL!x zhlLWECHiXCYET?3ZDl+1-*(~u5akcEOZc3|{Z+M!`G;>4{Vj0WYM=k)8JUq6& zr|Fi!r~6YtJxY~u@UdOHk59s7&+znK{(kY5ofh&aHl2a`=>`a;C_nkRV^e^q;tOh6 zo1jl^{X^j$khRU}b&ESmf$TXeZyU&O_@|%8d6<3OsCWv;3uo&xzBL&QCwGlpO=;-? zu?)=$9AkOn%;@kcy02(F$CSbwY322 zlB^kdx6%BvEuoy3`I_Mt-s)qD1RxAen;A+=uI3proDgZGe7?kO^sze8OXShlJH@GA z^RwAzm;AXiZ)0l!MH%~JU-PZcF%{n?Fx5gvRFCxRqQ?TeEe01udq;_f>ZXP`vMhpX zu(f){PYtPMXnkoemW!zV;n(M8^}wN31X>5y+)?)!VyZe0piEIJTWy8k+>NrCoTVZzuRoX?tArt(#U@2Fgm7tK{`UJwXLx({rYsm)4&@n!D;_JTWszSc|gv z3ff~T@|JJcFYY+tM)(Ptbaa^Q_9=0I0=CFZf1aXodQ-Ln#b+7I z_tB9K^Q!2Rc498+rG3{DI3K;QDDpQGfGd{KGm)tzi(ZwIW*wS7t}JIH)rTxKD>?fcZAg6b%06WCYwIimBhW( zdi!z~R_w{iwsb%pOzTcFjBukyf}fl}@)a@Jg1$Wr9agp7U0rm@!kwNGEKVU>Qll%~ z6>Lv_WQoQZMt&eMdT2r)G!be&OeNFW#QyS$lC46b4IAN#4oJ%4h+Gt_W83UN=juK^ zwuidwzz3VrVaXgggL3^O!}-T6CcDng$x?h=Y6<^q7f=Ob?lGqNMLPYtKXt%w-AE+z zo{wVc%H??PzpDl&YOl5$6jLv69^sglx;HGCOys1+aF|9cZZ0kwb$#S`4!T@Q$#neV z&@|tFhpibtbu1iNF16{p$-_x!wdk#AcfEJ#t`l*TO^M865s?dV+8p)!bE{gU zdToti_W#`^E+ne=b5n|K)d&?E<9zeOIf()Qu=lg=^2dBIQ&IQ?+&?%8fZ8nuG!g$S z*w)w-(U_)fLvzmzeJrc#Xx|#21=MYAUXlI1yv3}w4?8WTu-VY8W9@g;&?bx+uO7)xZ;y|(v?xCg0N*|1%cA;j7XH(>1`wZ7V*BrE)p^pRUQpC7`pzu zI;xg5UaZ)MkN(o-Dbc{7V}04xvEKcW6P8?I8OXTz`V03y(o5)+@nP&*Sn|huEz_I{ zw=|ys;kcK20!|}wWYdTS0v=m|41~N=WkO`;^Yf)mx3&u6w%_%@U!)1@TvE^iZrF)~ zYF>%bW$tTK(Wjc?map;tXxJxVUeTEBL~5DFQ^b!w(P)d-%d`Y?2=}C)WEo zIkfQ=hQ2x&WGkr9?qv{?@VXZ5ae7ggjV=?DAVTplSX~AlGxD!=3=37= zvi6shhc-=I0x9fKXPWh?{kJj*a=qxtUW$~BL6nMx8m>wWJT<7Yggo~n+vH&hZnuML zjPS>YBBl7{DROF*L{NqPzW?+>lhVP=wjKC7ao@QhfOkN<3~-twgE_t0&9l4##uVKf z!Dvwyc3Zoi*rZ)#no0SwgK#NIs%!`~2LT?AbS=tDBe0ZqC!|iAdUg z$hZ9=h%OR%JM96T4qI~Mi@PuC@tE$DU8)bt!gjybD40niHz%8_>`gaKRG_SX6@!Uw zI{)?LnO5ugE+?+@!j>j@`K`Ev>uh&mXpNx#aJvo91^+B-GyigKdB)?`MdL zT8Z9u&phf-o6iu9Y{wUjf86#vvk4`j81`-l0)_bgP3qy0Z{G`YFw6ll&I9ieSIQ!Fwg}IN3SIE~LPRBl5)fb-B zEd*F#+zY||{nP)Hf+JL5MD_@X)3d~D*SxXV50{m;cX}w9kV^Gi3Zha&7U~(ee8U-X z(rdZz8$`Lz%yV3~JcjBM`Ohn(j2lFJDxwtOXkXA`Z55rd z*q0cLQ6aNC*Ty(w+Myq9^ zZ2IlJe_V#ff;(poD#J~I$N*yo(&OP>>{_Y-BMCMEBR}va_&CY{Poaw!+!G9hhPMfr z*5dU`UQq7m(KZ)9WJW|WoVw;q3M{bEXW;Yf1!iylF^AvxL4XGHCae#uH4Z3pUg((Y zSnSjI7e5364~1c+36R_r5I~E4iS>u5`N@v?oAY|+-3Qw{^pHl@UtsVWcz9P>^6EwI zDGCWRO!l@gFRHtkwsv3{s+_UH+%I$(5rR9d(^A`LE)zcjWBL-^Z2Q&Z{I`!)1yfG~ z@pb_b)XZ)*2|W0>yMFo2QveKf+5Z5Lr>!sG5g(H}xqi9fUqsGdo@HS2efH0T!9J`} zfY0Nhu*SS-N&<=aU?G;!^rQfD_>3ZryPH@SK16|fsLflJ0_Cptf{s?>1Aws1 zrVQ1%TuBHkQdu~86_4;E`&y$$UsCownfnX6O(48fQEtc5^e@SZjS|p|uf;~i3zG8; z{UbgM?@?%ynfcm`KJA7iE<5v^am{?9o(Y5mWGKCDQ92a@Os7x9q;DjI(@yDJ6>4P&R@wv-yQq+Rrh}Ptfh!6cGRgPdwsq?#562jw z@%1X=Xi$a^>0`X|PKBgqLjf}Q)VgfZ`RkEVk6y;dl-elxK$uGM9^+m6v{UpL$<*Bt+78;S%Z3`k2pq+Tl_Ro=pJk!EIJM0p+q7t zo3Xqp%)AhpZik>x(BEY7GU(JNtb@tYJ8=dV8h?n79@Sz@*psnHnTYOa%jIhZH9Ir$ z1}W+^OO3c&tcj1cjyg2W4n~BK2NBsyPBfP#6?cZ7JeniXi*b0Cb}xoq^~zRimY8FLuj8ZtZ!Upvb2@K|#@5szS!cv{2sazxjTRC_ zq#3dE)VQN4!g;0wugh)KgbZ$zw*HOkFb`(k^pw}erEX9<0Wo_1u&?BJW5~zFR3|&J zu?!99iREL(vKYFaj89lCk4YmGYctRKmv^Vq`a0Ossy0f`5IG++-0Q0a!pYg9oJ|Yb z>W7S$uf*CTg6O8GOt9_1^T ze14vi1}$dYZHYymuRHS&?^93OB5T&wq15`iX!BHF(B|dO5#a-FK{DOdtXnki6r4|F zH8dY}opuq9a@ZuBOfU|V_!(qRnl>n$RgACPFxD*dTpZVNn~|X{o+_mWk$F z#PX5&#{(}JDa~E0$cY#C@){|-Hm%ocvjpe19gOwtYTJ*@ks2IbeV0P4HC#XA@!C(2 zE7*uel)0M4%un#k^PKC)nfSsLpA_c8beP?oy;R*55y$M}lm-LY(~Vk7TU$}`d&77* z--c9af+D<|Uu2VhTXf9z);&2hp?o0ez*i*Egv+S7v{YTHr|7eMuA8$&LXwT4(KGqV ziz61M&@rMpqg3AaCHXi4|~l7^nagg{%-b>rd&aFzr{rl5Ir z9s07>7cB0bw)<>sYgkT-`yq4xRaj^Kr?C3*DY@$VUm2~`AhF!C?-Dal(tWB|r+KAQ z^e9JWck&Uko18bhy@tkiraH>xkiRz9lxC>CXeD^eYO|8?Z zm?zFl!@7attfn1THWSh7UxmLjc$&>q#n`8yU^-2Emq)tCZQ(V-JSOdaI+9yYQ@9D! zyTGhxx-KHfOzn;wUnjj~qqM8gHxl1$SEP|bH)B7hu73EiwCiqI;;ZmR>^pn5)D>=5 z%)g|X7M>6Cww-Lia}CX-mh-Z{s?N+hp_ACEzAH29kuzSyCviB^UUSKpsaNCGdZ#sP z#%LI8bx>5OC|z%6D?2xTY5_V~@u5MN_!yRgB=HMNXtbM8d3mF^)PU7AdG`_JCrL|RN9D_cOk z$x7c)S-tB?HZ+8mGGI@vPV44(8%`?HwAeW7_AC*DHGAF zu>>CKDcK17EZfhnL1X-)<(B(FYxC&ph(h2Q z)FVH6`f%T`_tSK;3)dWnO|VjPVvv!*iaZoycS&}c`n^Q+A{C{3XMM&M4&OO(XBY?5 znJ6yL^h?-oPmMcIZ$=FyUxvEq_ydcla;Fd6O09FntJxMKd4@924@|~gBwA(ZMM#rB`2TVD)^SmG-MhFnihzKKGzx-9Np~3_AfR-E^uW*! zGa#TMN(qufNq2XOAl=;q(hNN`4E*lld7t-t-Z=U@=g;$x9~JJId+)vW+G}0cwbove zlvE7uc{ofhnV2(qq%{2QEV18=USqX2EiL$5+Hw;IfT#kcgQ4nKz9qHLZzg5^Tg~(^)a8QJcyjgIdX3uDlDz z2u@wlFa$TT8nD6gjzoM?Ehd&w-w~esHw3gdW1~6fGPo*%v-JsRB;6B~B7 zHcL-LH`J#wdKAw4+9fWnnpc4@D>JQ+*mA05?UCI_$s#&FoA>5Ny7^sQ)bSmmII#V} zraFUlkD%ef@#GxQJ0O_wwMDp0Zi#E0O#G;#NR_Tv!?Y}36w#PITY4S!dRblCivU4t z>Br0YZb7O`xm6`f>CHF3x&=AgpUL+$T7($be#yfiuaNpEV4KSLvyw9Q)i7HW+&`Ew z4z#!yBp2sp7>IiirW5Cyo9-r9f8y^D=i~|TiaQxov-JOvvqw?NpW+7jOlz_faHuoU z!mIDS@^$3V-{I396SPd-<yw6&?WHD4>f3FE+3>c z(|HAjig77=r8o5KO0jVby&2KDNFCDKqt3ut4-gbcpsGD&vmcg z7V|JU##Pi_iT>fXU-2V}J>7iw&5ymYK#YmJNX~(ouLZ|z+(Z86P3-xA{q{H z$-u^W&i3`5c7{1QB|0`v3gS)7-#Wh%yF>xwqrE4-Iyn(1;B5(cPJ>+MpmpF0`7Ial z4sHC{r1a9)d_ySkslkpbWshv2D1MvqD$dx4jO~klNG_FuSc{Hhp9PD{fU}XE&q-|; zJ}o=1sUTY(o|Z~3SwW^sMRHk-d-r~Kj$8o<$*RD}*VJs$g>nX%Z~PQb4>|getsAKc z_$E$f0e|WI(6y@TQ{hLPI6f38l!*R94NHk@7-_AUyPE)S(~uT+>euF}7}BmdX9Z#k zB6jS*Gxq80Fu`(^ zQycM)d)dIeiyjIuz@d$^T!)u|*S;o0fZUI%1^%1R`)Y^`(ZCQpmIhh2@lC^|VvHhy z1^`@ED_%Yy^TFZxQWM2UVv((?h2bLvPLz#nP^99gUNPMj;`)z~iac3$ayNc=-k^u# ztPh;WHMSF99I;E}0kAOe%e-i&y0)L3JWJ%-yK_43&&>hEZ5m=8OCyTKo6e+?j2}V= z=bZY6o;u|`jV&&bd&n&DM~qAO5s;yV+!33QVHm>xfeX7k^()@~$90{3q^z;_V?SjH zkVKlM!9*IZXr->-OHvO$OqC$@S3x$eKhAG~No4~2e!m<5EK`7n>vA6`H;}YH_AP2+ z&Wv}=k+-c=EVT6&uJDsP+G?xDjbSQrYdUE*)?MWjJIOlSzGP41+dlD&knpp z^!R}-Apq8+@I=rcF@W*)%RedkkD>n?P{+WC28})%GXSLkVM;}T+WB^H%mbls0Yp&8 z7mA9tQ`qu=wBY#ow@43q=%&@cyJ;JIHzoEhxZgi&6mi(i(!{)(-BJ9P z>p5fcWCBka0mJhPKK}DVVd#fUpRk6ZE1{a0)%*mm2gRe4j%7pDZ-fyQBrl)k z6uUmZiGD!j(~Y`JQDS-mx>ve%@zJ2BnkG-D;b$W*TI)~g#(BpVjc3lfDAy0Vg(A5` z8D=yJDY&K!_F&e|ukmnU|G?b>qO4!URzSg8hO$JEI7#?;nFAg&`WM?X_BD z@;8Qu`;((}^*)VoFr+FH_ddmim95d-%gqFG3pc7BHdvXP{R=O8t~9^Pwn0|BGq*wE z53K65oHBDGw1Yp4)$^l=Tajg-qsOFqgl%Z!8~_>4Z@hRKup7P!Tp`no0N0b&ULdqAFPu07id;*Z05Lgpwm-l0RrQMEOs(&Q(~|X{tsGL&X=#Mf5M(mtDm`I z%i2#Z$)Pdg#QAfb9L&RG=oPY->g}P@^$)CRNw?Rbs92hJTPw{bsyPl*I0$d&()rm` z2-je8Vz`8-oD;M9T6==Ex-g&QMZVUgb)?(c%^nU~a?vCr0jrK~m61kkZ0eVTf%I2! z)%s=LcKW5up@u$xwFYo=ZW&ABtHxj;V~4i*_v!T0aaPt#@L{?z2{PG3n8`Je{Wm z59XcHYl1qy$a#VfE6dJ&*<1`mJv^7=%zGMB<*E7Pk9u>}3gI_3PmGbQ;3j6xMeAk& zD6A7u8#x&IdW0D5)79|1n~Rr}m>iW9x!w>w_>uA;M`%~GrVdh=lT@I#tw{bTsZpK7 zBZBWJ`f2%QO<;~FD2~o6?G>U?KZmecfp4p7IK|<8)!yU0q16%|k77g%fJX+bF3prBpcl^ypwLiaR|=Frg1$Ae*LaM$PtVInuB-d)a!~ z`8H@0b%giqcaW2OS+Vbs7ilD2U>J2#*!{p|XphzBb-7{7IvXcHI2r)^p1 zs2v=02A_8rN76N_MMn!h9PDIfOdakb{jWga8+-9yw(OxjA5YyerGk+_0JxlgOX2Ks zA`)En#?Q0y@?8{IEX8T7V9XzCIQYP^&e4hl^Dmke%xic#y~9y15y8^!B~wYZzYmCyVuD5b9> zj4>XVgs^`S|0<|a|4_F~1NcX<_?!S9tOb*hH1~a3loRB6NQ*oP-Fy0~U?nTIh=b<% zmGQ~}x_)B<0ZI?4z!8aVUz#Y6*Fk(tnr)VfD-A9+h>RX8i&>fHCvieYAk+e4ENlJP z!*g%nrDnZ1J-nEwWtu1WF>swV3Ox47l}Nw=8N5;-?ec(t4EdZlafEi}&RR|me=$76 z@6nBNqnQ&=iw*3N)+lC>e)`hSc^&oDH+9Zgce?8huq5EQ33iQX>Y)ObHmarRuS`H< zW{QXk`D{mBuW$UcRR0702|_A-xHWKMJ#4;s(ost)mPnk~q%NpO5uVf>xn^(0-N@%B ziqcG$&Mdc_I>Z|AQ|z5xZ%=ZoKYx*4u53BI7Er!jFN3l@fN*%fsr*o-#}?uV#uh*s z7tPjXKbfKP)X8kr%B$6w)Ue>*8>rz?&XMrKgWcpSl(|hNo?=7Ttlm(l)5XTAG0Rdr zQe{@I!N)!l6Kh-S?*Rb>KF6 zr{%cU?n=`}vJ?(=$Cgj-eOWu-tSXUXf7Qaj-OI-uo&*4KnZ+c@+#AOF0vk7i&s#CX zUG%e~Vh#sDa3iv2hp&gdu_*z%SbQ0)^X@w;uZjY7wJV~Y^NhEsdECzjI^lzV>2o1R z3RiV&b_QS9fLjFjcf;Arb9O+XC46J6qu({k?o)aeAWL8BkZ1llltE8f+AIHCE?iOUdn4;@3jkPf?v z?WoT%=BJqUE$93vICwQd=lKse>V!#v7(0%vDTjPH3`)!g&eP$oks<#23n<~)JRjk> zR=Thq;pn??On!d8RWntiCndJe0aqeYt<*O&uGrU;_iEF6@Z*&2XkcOYz$dpJe*Py# z9o4}#R)aL&rQ6Hk$K13L*Z0-%|X%MmwOh=C8!Y!r_T3l4ibY$JvIQjdBc z^-t7J2{3+&cBEx-jzJhl`_IKKb*|9tVH4gP2d$x*IfwOR{PPVg&JzLTHM^k^Pliq8 z1c%pRa|!k*4xiT?CPs$KS~TcSm+3RC_Tu$< z_Ov|?3&z(a@V5UO=$N2$lGl2Ea9uH>SOtw*_J}F=`P8Z@?A_o?UTK>I={7Nso#E_- z{wA!7Wdo9gySoB$!oLJnBP{Yo9jA~f;nC~@NYto~pVkvx*v*7*EZel{v$a8G zWB&u11)+3Yt)J=xEYIEbn&&-L0RrnE`c@D*TG!sDp~D&I1FGTX_9NT!{jCf^pT|m0 zN=g3=<)iXogO=yBx7pv!uCr`^5aHlr9h}$F1|PQ9Di;Ob;4AQKkng)9SiL0L#{vW2 z5;FFnF-HrrM%}2H!knex;t}h-rEx3vAr0vyLF>K@oyf7gFR`-#Sgv7rV$nMw}3Dsi`PMO^>Ik&bsvmb&Jp$ zH~mP1-t4HP?%#B`lF~%;O}SAtYcdR7*pBzcnYum&ZTt~;2tnfxsW{3NB<*~_smPQ6 z>;>`fT*p-&HwWlWuJZ%^2Y8+U8Dh{w-2Wege&H;M7(>7Ryl4Ko3)J7HmP0?GvO?*M4t_($bGKNO38i1{lf2!O`R z`Nz||ju!arzf18qAYEbn$UUWgU*e-$x|O*qxRy8E>1X8>M1ttQCAI(hf6fokF{=vb ziw1UyR&st5GxY3^<#{=Lq-04sI~(K%O9S#|GJ3;5)}*on+9#$if|!ka{p#3*gaUGT zmMUt_6{p_yQfSJlwY9R$WQB-U;vA$i!2(>oCeZL_Q0qQ0;*i^X6VDiia0UU%2_^u% z9_c3lXy0ktNf;5({hLnQa}~hQCNJmlbPl^R2X6=gb~R*8u=Xdxk#8yhQgjRquS^3l z%k38|p2ui@wViGwy?%B>If;gJFtUSCWeA(AEoWV4g`S=>NEMG-SZiwcUu{xF42{xrPgK z$BAI_dksK9!=x3Jz2E-+y)9&V7gf`5ZLlF;I|PM0534K0eiQj7?Y(I z-!w<+t5HPL3emvF`RI4O^22Y*{1l%I?fsTLMZ+lV(!e+zi~2iwFk>GA^pfehi(sc# zb=o|IByqQVha&uQKBQzLS{c_{U>Eq!C#t_EWdHLcfdRiGQ+j2xu#Hs;Y?3JSO&$O) zo{mp^k`ewQk6mH_Jew=d}aWRnd2 zfDK$%N7wuRzZqVbDHL_c)t@`rxNl;W#QKZ!(}2BNaE&bT~vxr6+A4ZrrAGQ#{LIaPsQ(-hlDqdumH6GI4Y?QbQ zwH#F=-~rSbfR|AD?gjk*y3tU;sZ;yHUHVk|;I}_zua5DWI$$;R8}K`TCWH3?-yQ)_ z>8b;<@UUGt;Mdg`MD5xxU|Y%tv)4s-=Do)X>1mFrySBXwjw_bniFT$6r#rz(Rujwi z*~TiQy@AU2(0;`<`fWYEVjfY3mOd;faV67)XLdnm)>D>X&|1dD(? zh)%?LHB9CveR|VMV)V1|(^KooB8LQ0pU|A4h9>42mr?S{Rb6PaU21b0lU3mE$uxQU z*z*Mi=U=+zItTfl^+Fmt+*T>;_x)o+khZaR@@frqJbalYU5c55BwyP})Tm6|r;p$Q z%tQn;gc{<}d@uv+)#$^YTI~1y@*0{{`1YU#u&^pa{$phGdx_T3q%IAXJ<(3v1gqo zvN$jruwGiG04mx}C+6$3M~@_?({c9r9kxp29vjt0>1pPimdX5j5O)TX6LA<)n{m%# z7aDIt`oh+Ph;J(5z|Jia5^K|=4H_)stqisY$C>DSIT`0@!GmdVi32v&#YZ0vU=P21 z9q|hG{i8OT_JFTBT9#S?D!vcSKkH5###x0_CB;a_q80|lA3!+aEuG1 zfhdG>&8*hqT!XH@=9E&RSNcBdLkah^1K2k`>aDZQz3kUH-ku+DZD8rS=6Srd+!tr} z#8n!t{vn}(jY2B*NxP&0Ka}>?u&5(RK)k?$3RRh!N>6ybr)`q?v13JIwO7{OtYNCI zUBN(N%fJUfHJA5!q%mwzrm9YYi1<}S(oaDPcg5H3QQP~dyM)sFG zFlCg+uruRj?Fg<>;?%|2>nt-`I-p8soU8yO!-9O3!OY#TsW%dgL!Hb7igKS6mp_$l z`T`u7ovzA>0MMX=z}+_01T1@mb~@zS+k>Ghr6o_lr_wui=&b<)bR`VpafrX7jwZHf z_N#?Q%h~(Wq2*SC*dtpaI^pw3?=qEk50Z9M47iQ+;-!WF)RH-x9aM_{E^f%BEY_z; zP7L3y^i=;<2IY_}qNQ?WHOEWC)j35hl%Bwnc6hvEZX`9zQz=Ml<+{6FD&tz}7{5>T zk*o85YJ#ScuusObqCle6B}&cph8~A6_ar?vMw&h4Xz9S=Ag31{P6qKbye~(P&*6jo zm)3EgkOt~KF6wKI-Cy$FcI!J`=wN>bLW1k$e{qUv{Sbd|+Ek~pFB4(ou?ILe9xdGg zbdXF)hfdbabs+CB(cSnuyUr7!{sOE%vlu;yduL$+69w$f=t`9CVY*mMzv8W*<$9@}<}zsNs0j<)-G@ z>pi-&?PZGJ+bKOa@KT4lxVBvWM!1UQWaw$n9~z1)^Vr@2Ys~E5$R9ULWQe(tbm+z- z${KgKW^gStw}FCcduys1FZczr*#H_Z%5w1=uD(ITL$4bj;~DI~Vo%e3eJ^(dWqJ33 z#1KFBhG70DzTNpV{%={Db;@4#8ob-uIiG{1B8GIGOzQ^fQ=*mODO__g@%<{Z9sE{5IhG%)lh`N~(E}~YBc9viO!!uvo)2}rQh}-W5U4nqCCCSm zKis~{dNF#05gdr~t<}esYH9-I8ou1iK7ghwC6jHsv^>(Shu^4plwq$v4UH08*;K;- zWQgvU6KAPdouX@RHS)f;K3Mh+2>RX~t#>wLlg~xX)F^0`<0^Xk(8P>1)h-@j5KmOP zFlfaxqC=oVP%|>*CzfSAqb;a$DQ@I&wkPDvUWhPohZ0fl(XNb9yGSr!VWM$IrK}|M zLn&PEK+-%@L+P{l+xT?bf)m8B3ecCpGz|zaWbP0ImJqZo+n`4Fyy;!w+TW~wz|UYU z+nGe?b=n^C*c3HKFe`O~Qkkd5zJc`CeLfUfhRSQDM`NJF zp3*#N%1z)ZY|Dfr9ZW|3Q(hAsrPRiF;f5FDp@B0S!86ob0wV%k0)@`z%G;EYo{n1& zq0^7`mQI#8&3l~2pCH_S`RY^ss%o27R2|h`DNsJ*#&fOdn>RU1FKi!6gnF!7OfN{3 zsUNs0jfAHjmf%HGU~Zx_j5BRVCIEf%N2_KQZU;sxq9Fy*R1$l~<>XT1OMXoG*@?q5 zQ=^WAp&Vnj#Jg-s?@((SMr3qh?>Q(XqQx!G1Mjsmrsqt!WSjRseBHR&s%xH^9%7QXp@pf{%?4{>aX=Xs_LnQ`=dn_!3_B!BN<{E@RW?)ufFELqnW&04~ z-!*ZBgO+Hc_!~KjdsE4m$tU-^UIJyeYbBqSk6U9)?Lx6*Bl+V0M3$`ALV4yDkBlxgQ};5KLxj)ruYMsQpf zt&HKWq~z#itm?k|Hl-(|Q?Sfr-hRf+Af}77ZlF~-&7!CSLg)z&l<^jlT>@kYo|nl= zBgLB_?{waz#Bbi05C0nws&@rwPZuT2omO1y_tv|L z`|wcC=0(?u+x_JI8!ghM!1M!6ll+ZZZutT@ws!}PTd_f%aypW0IE0Wzb5M2h&yWMc z)fhRjp=~uD?5>?bABRHzyKwiXlXt>Y^y)Q+8qBdP_;MX*4#Ic8v#S*a-X{1YY*T7w zaOS0cft1am=2d4aDJg2djhVo9>j0g&tV9u8AZ}tH6xkMnSGi^HtU0Fgsx@@pq4bSW zaFNr_KgiH&Z{Ui>iVkp@x}(|dZo+nPV18hlbWZI zJ{H(7dk3j2)az7)KOXr$^-S|dPBgg09ig;!&J-7xaH1s~zVR(>T}(Rm360dvdR~l2 z3C;q>o0?Q`lIzt7nvt>iy5+Lz&lrV8FUvpxq-mu^uS&TU0?Aod@&*EjWO6;ci)YVQ zf=>$)`!_D@B&uyDr9vC-H+U`{Pz{&r<|>IL@TfKMP zIQIwSpllU;9l0>WQMN)`6`+WwxNjfjDQPo)oKn%y@E|O?)KAe}>Wj(i2l<;F^N9RC``8c-l$DD+hMqQyO;7N{$#T*o!}!2~D^I3n5h=ibYf zS$Sq#!5{7Fq0%^-m_OlkL!Jg49jFu%Te+MhD3q3!0nJ?igIfB_pa?Ax>=@BT5mC=1 z7ihtbN@)8b7%hgv2sxgH#U3R03vI}<6EOr}m>mIWQHHS$7R_)dPBioIJR+*@B(Oh<6 zV&Da&=qIaZ<2N5(FMBZFQZDHNOyF>qFd$&hXZ>9KHaM(_dDq4{4yc!ys9Eh(a5-Dl z*_4x@DLV)Z6dX>)g;nhj$vDoODry4_KNctPkQxWCa|YrC{IOSMd9xnB_*5z7cs68R zhU~O(>G_gB$({8gfZ~qz=H*MApcX$xz0*(Eodm6Zf$VZ!_tf%5M9V)p9UB4NEn;mF zpW*^aK3#R7Mh8?OygwLLJZ8NZhU8z|z=R$amO5|dxy<`38Xr0Kjm_SgT4h>JOGIuY z8Xv;YeL0@17%KuI zJuaRFX`vSfZGx5;hMg~U3HAr3;V%cji?i_~4ex;9I7e9<+Xll>yU@`HHwsYOIkodx zYg5fpG3BGls7boQsrBoR3NN(;#n1v3?d%-UWy`T+PmadX2lNSsQt>1}JDX(Up7E4> zZ#G%O%z*}j70wk>ZM!a>TTxFo4aD__5b&`gdZnSa!Rk5Gk9E83R#OF2z^S~hiHUXf zuSD+{q}FPLxNMWrbEq9~DGaYDo(YI39P}7=4?R!fTm9f=&|gG9lD#oqUyKLQ)jM0$ zUgsaFhX?h9es;}vb&MQM5^qi=_Rbbp2sF9Z{{W2^nHDb@q(n3^|IAqjBv~^OT5T2J zV4KV#@C{C}Rqjm0fxjjnr(MF zb(AYq5v*5tNj(59wPG^|scy^V+(k9qksMY~)iB7nEv6uGTl;|1XEnW&&*mMs{L@S4 zCB~x;?q)S{Lp~irIKLc)ix2+=W;3Ay5F&OF+@kQ9F|j2S2<+2$vu;nwmZHD3aVGU% z&iB%qU^?Pl-00#4aB9trMSNdQ)?3WuOywmVc*W}SK-4AHc&H5|^A)5?+=aj?`N6TX zBh$RQlUa-b5w8CAS!L>XUc{)CE@EnEx4E@)kg{rKyvsBFHcW_cH1TKa9g$Y1Z&C|6 zE4ll127`u&R`5*d@LAYy>%klGukKirbA6(;o+YYq0*^{AZM}a=0%9e{$CG2-*arpV0&UDg_$#8k=H9x&1qB|CKg*vQhd%Y9 zDo{K5()@d@)?y2xGLKhOGvJjp{Y@r7 z38LVFbh<}$Z~ye*>vfBb^q~^nzbN`zbv^CO!8bUaqB5soxQ4g^aC*;jyvi=-b9^I6 zId#|)?aq0X=-7?+Qh29``kaQFl}GAjkt~w<7Gdsxdy{^w7k$T`eSW*-XHJ)ZNVukt z)wUaw1FEJlWX_SO58NDSO4T^|)S&r2wL(6t>!*Qzlffy?tSY<4ZLRNBSEEP_poxem*k!$g} zIC6&F#c9*O);XVH7r*Q?koVL+b_@%-^B517S81zgJ0rj`yDfbBi8lizy`)9h9-$L= zC=W#%v%M~ml-v*y$*4BlSZd;12_p!;s4!3sI2tHU5=6|g%#0wrb}#IjDKqlDfjlq4 znr<{9v@Xs2flJ&~(!;$RHC67~tJdR@J|V)Ds0Vw5F%@%fB$GN9;?eU4V4C-8+Robp zqpA@@&~9%!6C#E0>_9mTG~52X7p)X;f%T(QyUT>* z%ZHOkd}Bxq-w^1%1!S?ZL+I+tXSa-qC^0^V-tSLG%LP<^J~t+5H}HMj#2h$1RoS}+ zT)K*`6k&<)f0_hwd=b1|mk!*z^HahWuEG*z1Yl-6Z`p$+lBAQ_@LO19v50KcQ3h*r0 z=&EvJG7j zOTKF6qKn+MGr@^Kok_khU-+u36r68lj2#a^AmV7?NoU{EhUeOYhmEu(;2&5e3@#Uc z>7?H-y7-5Bf1UhG9`UyE8uTIm6&8QZcOP({LzN4#D@e7PqrY?|(92B#{migYn%92E-aPp68A?vxfjbm=DL7!2ayKW0dt?=fHGBQ^h=_hU}*btDl6(*@^3A`$N5yg<7s60^$7qwF8&_T0#D5-s=o>q)f4-! zhPPPr_5^L21!K5>X{l~Ke=EWF=}yvfH0mz({gITU{6E?@F+c&bW$Muh?x2nc(u(Vn+2N3(jxpq!o1t%aR^7+-f(%gA*9!!0skPVfIcr$DZ?HnoeMO%~q@fHPDj4G#cWqt|G%_L40+Bz zG}?z}6Ja| z{UjNWiYV*bLVd_*mc%NoN1Vkwn{PFt6%X1+>0%HHItR=Qjib1O7hKVZHje6sgNfRD z7rUgH!ihQ0h$^FBV*%B)JM|Janbuy=kp7GJc8TmWF$a6j6?k}V<*UIg@S(QL!ime9 z9`LY>E!opSO+0OCBHhYZc9zQ2iSH29bWVh(SIowD@kwG?JUb4bKJVGlOBU<8%_kKh z1iubC%Ej>`eCP%HF21u}E?*2Gs=TA~+ZnC#3ZDho3uk6-(xo%8asoBPN7L zcqj2RGA@{1MZ7#>2B&9jeNT?Ele`ICtwmA|xB?yJpL7Y-lMaI-9t|6j9=b z;sKScCIWU{LOEEI1Qr)$Cq$MnhxS7tQ08T_ki!m}eymt&Tu&;oK1Qg16 z4U2475WV}sf9+5i=eT-?zDTqRZii1*oZ;4Vn$9wS<)!xZxK45%$A;RYCR*0GZd1T# zr_I}sKV0TD zx4X+{zy=RwtbJ1u;XJ8|bRS+4NVf2bs}jGncM2XmXwDJ2e`TZQG$Hhmsd? z$5vYVF7hY?F0$Z0cXk|;p`7c3P$66RsootBzmshpU60z{SmMD1R4ftPsBcFjydoPI zhq$PJ_9%YA!J_u=V1cFE``qQ`K(^NJOSSbEBfK z6#l@t#-~fy^QN}y{i;k#udII|@6>sji`YQMi6sIVr{-GM#_wyJi1PS|_~|3|X)*a<#pDK6<+BFx2{5A_K;4lUOG#a!X+!@G`Ed zmWlz}Rp0ZWpO3-c%M(gy1Ra{RP*V`qL6^NaA=w~ z-(c2+%iT(?Q28RL8p?`H|+^F;3?RVu^uVY zOuR>U25={+&XkTs)ZCkG*lvN~60Njg;7zl;O^0EA{N!z=ygl6?i;Vm&4PvaFf81*_mq+aUOPcu%|OeE zdXb{X#NQIsAGq-U3`NlN*5DvxL&+ZhIHW&qtAEmw$_QsNt*Bp1;M0>Q?j`gO->DBAcyE2s<@7xG#!&9>MDB zQhReD{#l~DmQ4eCY0I+3rtUaTr1khqn_ zxAz1>iwW&@&Oq>F!op~x`*mV-0(pDg0Wh~1+b%m1n#boz8rt$H2)j3~)2+;<^q98{ z7?)>e+0l5UgaOvI^Ss^ixe0P^5|f-w?uQsLh^!y`1u>V9;e+(YNzoRhcon@}laJ{M zdBxlaLzIagvtRSxd>M1{5Kv;Ix?TV=P69(1fJv>Kr?sngx$VpgpHw!yxofp~9jP}} z$m_75Pe*JgZcBx;Z#GMm$o8?S$M$L7#xHJGBBi8*&!e#6rUA;PHbIxk-H9+0Gyhjh zYmRp-Ey!K%`vgnH@6V*-EeHivbjZEf+lq1Gq4P|qI}#4!x1WFt-KKx%g~OPxZy5h$ zx2eJ7eZ(9=FOn|A>t1X0>&G^y4w8W1@z`gzXiUMOM+VQ#c| z`s;OKhv4@fHYfK=JYaLmo^}f&^+m7sP0}{@zC37NLd>r1U8Y!9zk8?w??}%^@p8_Q zlliQ8wQ!*#x(KDFnCdwMwQ0OLvja~b^J~}HTsJ5ZvsQ3k+_ICxWMpJU=!t@-fQ|8?cKSw>8I|uG`&)*QZQD{0O=?-)o{?9+~_0DXR2Q z%==N*j3S0geMYydv;MJ0$oS#W zTY_=MaS`|TKT^qPZY_T+^x|D{`c}iG7{2=Lyp7$q38VN>*c5B-ZU}C$Wd70`*zGAc z-ZP?<-K?UD-GsB9VXmr<1@-9`2mK`!qI9Z@blxvtOvJ$H>71yZ8`t)}e?BHIrmeC+ z$J*!2wt8=D9NqGHa!{l1v&kk6=>slEnM00?&4B}Z%Q!}phJ-X%_TH|QvLfMe5iUqgCcc1u%(WniCAd!G7-j|37IKJ5v; zAFTTl`C8Ri_Qn=}k1Fla%K36C2z#uI^%B%lCnIh+S2f5j`Qma3tLsKhgP=P^1M~A^ z$o@uwq7Qy|<0j2lcSDq=)^_h^k|?I)=CyVM*H6*3XGl5qq~%mKjJrV&rVP-OyErJ9EQj zmbUod=YWO)KFzednln=ITASmkgdmH5SDWXLxqWSEOij$)7gER0KPA^1UuL)=Zn@L7 z%?TKLoZ2WX2|gs!nQt+PB8^GvKbXijKErNvA5n<*8o012&llU&bnQ1CG)ccv=!7fN zi{~*xOrw=FqhCKePS7w59?N9BtZ1sVQK58);x0)R{lNKZ@z!u|o^}m6VcuioxS(p7 zNJIiAJ$RE+Du(J}nf`<&(d781LUCg&v*vM%D=)e0~;TC}FHWG01HoMm5!+ z_Le5K{BTmBX}bTox9`^iWu>6tLSs3O?6aDpb7qDuyW`q?HH&;D3__z}g2CB&rW&uI zPvn6%ozr$?*ue}oYc87sbyRng=J2;OrRPOnw6T(*(p(tAtm+p|?0Y%IDt;1bU;2%C zm!GD$>Kd@+$4pg+5mqYi_#^Qv_G9Qyg>0R)8#dJK#MhNyNFonF`AOLe%=Der*zl?q zu4iR$Wl=~aWvS}2Y>C=3!zjdww1=r-_)w3+!+^W|0#NW@g8L+8U22^E`Y0G+wTE&_~Az4OaNClFH@Hwe@bAv zMU;)@CZky4nL&mTRiSGq4?TZ*rktTtwwVdjD3(C#hvRmF=IHICKi zn7Tj2H05{V&s&La@tN=BaQpgG>q?0CEpSs^SBgIPY->k#(ok&`M|w6B{`mcDoX8oU z-}U>rs_zU=ek@Z6t=bR6T9Ru~bP~0SIhZV1(oJf<6vo4+V7ig1XgNY#mejEo%O=4N z?v#~I=`GO9^sdbxd)}oS$DXB$eLSp05MH()2jQ;JLrY@JNy*CW61z2)T*Xti*kfn1 z5U)|+r3nl+YVAV9Ha5SEk}L`DY#da1kUnVH}mS7l(9~xki?-oEfmKY z@4IeTcoQd0?L4un>B~#;<|=|#&R~CbF6~ll_`-Zv0n-l={887*D$KcF70?%TI8@lQ z>quZ#G<7TvcPL1|s64Fop6Wkl7eq9q1UjYPlohqVcV*kZ z5blgu#JOZF0yP3IgNp1C=#?F$qQ?~!?0o}X4fr;?Ycz+_9%G0eWw7jnR$x`UzbTv) z!V~mD(3NdR!m_rH_=h-zh!&{omJ%rB16O-vaVBLQiFY^4ju}i^cz*>mKXKkJ7*lN7 znsPXMunytdlc%(a3HAJ{s#_N^aj5CV-6ss$iw(uKEnOs`8Tw#TBF;rzxTf0Q zl}LLm-iPSf512!=dP%I`%m9Mh>Co$O=u>8Fd{+=?SbWV3!$n8cRKXPVim1jxGIg-WqW8P()Jq8*81jOvu+{xVZ$`0t;nmT1dSRfQTve?X8 zU=NaPkmu7PCp~xI8AbdFA+usxZ|qMDN+@@%i3j(T*rUNdWZkvjipo@NuSuXRY6K~u zjTFO%ULzDvKDX|T-y4SIa7y!h^AiY992IQBbUXNXd!xVNFuQaz*7Rt}T_EwHy()$$ zXV=!umhMq&1zx~&FWzxS%H#4<+9GzZewe8pjT4hFVX!9Iiu}z{(93@8`}?Zwy4K_Y z4%WmA2cpSOU#<{BteZiijbooUmwi>KXyyBFwhQ38RIwCrmS$E&=25>xV=Ha?Q zMK7}MZ}Zkd9yGk%`kH!Zb8G6v>oxL=6(^}QBm|dV8yII}NRT9uIyaz5tXI*DbpRc{=88OdWZy!c58{@?MczUdsO0?)$&l)8Omf z`qo|af#7rxJQV46(|O=XIML2M_l%WwBAZF~*2X{D$^M*BO(VTGDKW&>vnH2ZiR-(hPRtHF*2OM}*S7C*@nuYaiyB<;;Ly;wHI5fJ%rE$8$F*Wc$ zlM*puMxd-eT2o`R+r4dO=gYXi3;7{9(|+YShO5 zguW^gZfg}XY)5uL?6pDDlm2KS#8a^8&g1>k6P!6(FwM&ic`gn3_@~t~?_sC-f^&;9 z$@56H2CNl#O740;7%0Uw9*sFZX4nW_*XUzr1qQbZr^T!H3F{au3a__{5?w2+d>)0z z9pn&0D(5HbV?Ctcd~lGW;%y&$CdW}G6Ro|oZGpqq^8=v{%Nn@@7K z_2VSP#yogAx79${<;w16oDOnto!k6kw+($h%KJ8cEEeYs05-K3=Pn2-7aoap@XI*W z==wVGWubj-|Gb;o??I*wl5Xt)Ymh66NU?+TQKP+@=(=qU>dN=$%jCfJ7>#4k=2YJ5srEBo$ z=jLRP9TLwsIeBL{fK3Uz9WymTz$T84Pou1QX5v&KG>f9?NXf;7_T zP=J2%`7>MH0u?r8=4>tx4fRDKu<-&U%=8)5`9@Yj54$YW5g@)q<%y^tpXUuK zKAVPwy4W`@Y=gg0d?Y-d8TScK%-@t6ora@+Y;%I2{6ZNGkyzWiSFW8Z*t)^Gf@H#8 zo02ybKX$ZvIfPkU44f-T|B8Yoj}Xp-wj?lf)hR_j}LCMO*TQ=wzf(BS6bpy1M8kjt2Ys=_*X)l!tue$}cJJ?oJAD8&wZkogM2a za$SA+AL`9%%IeIR?OQZ*G=oJ23Va`!+9U`bDWE+|l~mu$9j9bHC%EEur9Iqf;acbr zUPDK>k-Da(=Z}x32fFP)MtiG|UnO0!qNPGmN@3{Jehv!J+A^#qR}#z>Ml7h})VOL@ zpyw^&EcaN?7A{UKC`d4uRyN>=P!Q1!tIlE&hM`DAaJ|;GJQ(}dSq0>_Y(1o>+;m<1 zxJ$Y5-RfG_pY~bes`1^3HCRz(V6AioY8V`Ja;wA| zvdQ>1@rp{^kMW=AJHaIj)}E)-Qr#q*E?dQ$G^i}eH}>0eq5?Us#q5|g1xB87e#Aqg zMlxH%a6xF|WWtb%$SM}W!pNxZ{g4fmdxbjS>oT^Ksjq9WF854)3%M~GQS<4bKasBz zuib+^@X0@R%!sv-;bqUYvwpl>XCyC_Pz`YBvYNvdA(~rraQ2c5czyl?v`o6AxSdC+ zS1L`5iG~X+Gk0@43?EkktIS%9b(yY&o`7Xuv`ml(zqMU-^$KCs#|ceK-18U}4Z*d3 z$@Ix{B zN5=h`pVD|@1buji7$d`i(#GvqtzjsgI)}b6=?$P>p1sFN=({V}ySb|N$?EiIm!}!T z)5l;;ABivg#E?$jlGV3#^eZ#5;z{j<9p&efopn+U7J(YwaDe!S)u`Yp*)KCI34l;D zf~pr}Mv%Oi#Lc8`S9OplAsv7bbhUE#>k1v)>Y#|Z9+8}{`n@B$R{_e7Avg!o9?IxX zL~7WMVa8L)pAyNOrf%VYl%;O?p_rBxL!x@Ui4*I9CBL3a=qG{hE+W6Z_H((Zu6W4E zBaMNq`Wssi{Rw&Zu*{e6pLp~(OL}QiI{z|M3IeZ7+d1-vy+Tc}o70tvQ4FF!QCh^M z+Ae31wt+(djzbsqd()v;#tJb`&7yq>yvFZ7MY0!DjvWH%xP&}reJ}0oto=W|9345N zZyLHLahuTovwbdP_0gxYMnh-|CX9%7ELf{UWEp2*`Y(9tXMDKP`h0nkz&_l8D7>FiFJI`Shn-7~B+*=U+a zJEC;A^J!h;HOMoR`sG;5Z?0S^fEUf+i*dTV0}A5v>hiph%|CB{`_JMm@_xRf1Bsne z8lm*;faEkziepUw-X5N-yqUp5$qcfXA=E9Tg=%U9n~HPDnbE<2g|dmnkt&As<|M2( zhuN)WMz>6z7hjV^>VnB37{ZmZF(0G01B?O=TlnUDG0V4tnaIK*UnC<1IIM6^o_aNt zDWf(t#FiDKMY&@_w1uOC$;ZE9)`c@%%|eNrcyxn8(}mDNi-I^&KJrxy->{bJnncYg z#i93HC@P;XV=>w@m(TcniK>Oeftt<%P|;YBMf}g9I&L1iLFA4z0rB(Y^zB0dq-KUi zO^)p{^rs?HTvp|)RJmYj&hw9?qebaxwf(oD)5-*Y*EYI{-63fTm+31O_dSOUS1PVU)UYw{~Y z9_O-B%SodjgNxjue5;vL`gwrQI`ELBBSVZ;{SEH0sQ1;zXFjIS;pY!-Vb0}P3^?WK zp$z#(QIgD*ex+_tkq#&z!O6ubI1NS{OSc=w6R&u!JYch97y-g`&t9 z`G%iWs1}`PMvRIo1)Uf4*tGjUxf&z-r>f#`Agf1-b$7Nk+?VO{F?@~51_gSzOr=r3 z80m~kYx>O-o4*7eY%$*J7Tp;YY>gsr4D2I*MAuDstGa9<{+N7xHH?H`Va~+1$?Dog zd~0#DzLGBDS57N6z}=LvWv$9pCv$UVTEm-+z5d!A)ubU;S*j{0FW}EVzVS^E)mp55 z&$aL3=VJ5z@~2e-H>T^bH~*O^S%3DQOp5V9(1c4Lg?@#XDUL(wn z5(!SX_JE2x5o_(xeFC034OgtI#OFak=+SpTy&>zb_#ZJ709uG83J^^>bTv7Tm_&$3 z<~ve9pH1%nbpcNJ!07zU99B8uQ4nyx?Kp=twt-?UV+~eC&(pBu4oirQdH``@T1;W#T%WIq18Hm&AS59CPcH0-No^SAY$GEM1lfi*+aTYUT#YX z8A$_&Zq0u_$p))j6M)FWs;opC_!u~_}r)Rkg{SP;=ok2P_bQy!*H6O^6L_pE(8?0UUc4DcyfBq zeLjEX7ia?~?wR4MQjwmZHcE3<8Bi`ST)sJf;%)LD%Sa=XZ(ZC_NFBx~rPWKl;;&Zh~&Bm>dnNdcqb>c6fVNK-T1?CAwnIsa;9Lg zEbgw8TeNEL-hCZ+ekk)XVW@*R*;cZ|DuP%JbYQ=cGu5JaMU3y!a;({g_8{?lr{+xY zLbHpz#yjP}%@_m8sy-4=%HqRU5|dgGCuLv^v!!RkEKjJ4R2GZc(ek;y&xRR19V6Kn zmV&F;bg*>g0bgk9n}U@8W%SYgy4b5E+2E3N`9m@Fr8aR#*gkG2qgh}ZX#|{RXSUBd zO#^#Kg!IOtsQ*<1*1)2e7S&@K_YOVxOmBvVLjnF5YHfZW4Rj?SW>iKw0E@F|8o7r~ z=I=UJY8I>(e=qLtqq4s-YkSCjEQ7O$3HtiW4*+^ODfh5quSzePs~-KjGCLpNEOX)g zbTha;Hbxl3(Hzc6HH8nq9aP^$M5mzWNduD3$=PQ5!t~CPvMTl6_Gir30_Ed(+R|=B z9^vy~}rL?V1`IoI0B##=+?cDNwgpKtiRJXSr| z>^x?;nab_d@d-w8^2A}2UT7rSUTjJbm6X9=A<%Y8Ac*VII*dzvZ@yq-pK#~_*Z@^k zIc7=Jar7y8m9hfDhRcMM zzsjY&CBwXw>BNQ64`gd1g(ddz`z>qNx!xB@dVU&LtBJt%lF@Wm2Aa^B9@<|Nb9LPzL9~+H-OMM~`7^!zSQgmRji7 zfpiyhfw3{anRNTy#w1A>7v!tRmBd4wuFzGP=rW+n)|L)au@vvjB(8Bi5o@wF^hIwy z*8Dh!q+ZQR@U{&G-jE+H<^n<);pciNGN`;JG15xAjg|DpC1JP)W-7v!yeF5exbxP= zI9c^LqDZ2iwVG3v0WtL=#5V$+)1-dp-YHk$dkUdEaevQH%-@c-z?VW&De%0QPWwm? zD=m4GJWsIUmDvK{R4~IfasdGaN5#T&?W~~PY`=~2GqLTf+GQU@$@XT7?^~SfxdBu_ zaT;%iJ)HKHvhz)s$7{{>?7k5nd%TLj%rGhN~AJgD#nrHr|vBt&u&MxmOleIgqkDTZ8G_UWm|! zOtfC^PW4Nyvr&u~WePh;5Ss4ZG_c}@7C)S=K>V%`8jVD=mx8~Uk zl(-nf_~))I^X`QEj3XG^ip?S|B&X=Pa@Nd*#R;=O>_M+`#Dc#s@o)!R&Mh>3O+4ts z1mJx01sLDP-iDd=SqRU*>EO0wsm28Uhzi*_=23s{kiL&)72^qFzPF1*=Sa~kp=W<> zjYa0mRx>K*(4z-ZISW^=lpMv);#Uw@aL-$umkt3fl_Q0pefg9$Hjb9E8nY`}uJ|fF2S~!V{ zSek1iU(G5**ZJh~t27$BS}`14!7f~sG@5atv7UT8v&Zbz0x!nC8ptIvv#3*K#9Xl} zoV;yM5dC}fs%QY2sY?;l`z%`Q?a^mA|3Ie35tQMJ{2F~YrgT5KI}m5F)v&ttzy@(>^f)F-7+3x8D$^DF3{wB6ZRb)~ z$n3|VT_6GUN>^?np;A}UEojCByNYpzP*fLoe8b7A_$dDs-}g(V>e;TQ)z8=(w(G}% z``@P1d`wRHR%^3OF0VvhDg9!$bmS7yJsaKBKz3j|FZj{U5`rKUrd^xDk_82_7$TFh zB;`K2AJOG3q!&G`-J$u1K1&HdKhOJFUXcy7Spr+(gWDx)=f@uOZwA$I(k|9aUd2 zgUR!K6z|0lm4-dQ>EuRexCGGdqeb*GRK1Qd4`2-#b9Yb<32*yi?&)>tJB^u2PE5@ZS|7n)^+g---Y-hCEL2=hDqpdpo!|b%5Hetg7Psbp4cw=xTbS?2h1Y zmT&meA?5+9-(}7WbqZ z=Q8e715ZrWs)8(B%`xgt66hv$o3Ht zcLH#w6gM_V%^%{zc`W=gjcrSZyta9#T>A73e>v|=nz;rTG($)2MRs|o$4F<-zxDxOV89PJ{{K97glYZqqE27kz z*5S@)urEakFxpy;zZ%ewO|3YiHf`ETr_-66ugHz>}0-R=!^v+0i^t<9~E|#Qd znFI>$`8IfQydNWUII^N46i{!30be;KQJ!TR08{Tjg?igozs;bkcZA?}nm>)PfQP!^tk7=DNqfFQd$&R_U@Voe(*s1)u^E>L!*)$%yRR~h6o7a=blU7ikS8G8+u$s*5Ip-phpE3^EDmd~XTpz) z`Z*IhMG7I3A8_J5$T`Sy!NHQRaMwTRwr0hMOZ~H!pe?SoRA1H}X}9!AR;g~(BLCu^ zqab5_v4I^IZIH~Oy+G=O$LTL0d7S6)nk>7`{u*G41^Z(0U)&Mh`f1hF(9|dQX2}7p zAc6HDI>Th;Lc-xEf@Ho>|J%+0R8(o38M8PQ+)r2N!;;c6gGkF(#FcxL!g6v0{*kxI zWbaj5iD3Vmpn+%gx~9D{N+;$bzJUWia&7$!{GAMpAYlwRciMF~KPdMMEkqvgFXl6T zHyzVx81)qW=vPd0Wv%u52?x0Z(7V79He1dP$G`mA?(t`MZ`JU4Uf0CHGZU0J>_vQU z5dl~r3ZihZ_21HD>eCi=Yjke*-Tq8v{gh?9v{h)@rrCYmV7o$K#d{(Ab!2?Y{_!Et zWn^}Y{#DRV9F@b`l~8qwT9jD5?4&aUR=j)MLBpTmjo-_8>54HY^5v@Qc) z50IylQMU=MXfoA7Ecu;|BoaI&bMyknw2;mJwotvBTw8lhgLgR*B#l61Gw%yZSX6tN zFEIKiliWe2S8Z!|VlH1;`RKZB8dcD;To{ez|IUAwg-RalVXHJzOIe4pjuJmmmyshk zP+O_!c6>2J`v#!v2_3kMSHg0k(EzpR!7J!xeFrElk^$V6k~jSvHZZ(x^xuhw#fid> z9co0Y&0;_ZEn>ytQXgm;PR?r*8C0Yf-$%edR-C&~e2~{u!vpxB@YDim6J~2acC7yq z!lCA~<=!##&$+r9cK&0tW}oOl4XVli0k%2kpq_Q#)#obd?{r3FNFq1Xs(j--udvEN zfLvqf(f0kC$B3k;YtWMt>2W-!$sEzxB<4n_mx3ob&qxY%YX@$ByAXwd~{^_3$wx#QP4vM3XuJfVz?e0h$D)@Ti1u!W^e57T^}smZfE zg_bSzD*w>*IdtcFg9qOW?%M?$(;D^7iy*LCV;vEhwseWgWmd`0DYL+AYtG+*sGNWZ^2Wz5v z9vsS!<*D+NU0qtmONdKWD9msWcTw zSCh0LXxEccMWf>l*-Jq229Qv@4Pso(drAL}utdoqMUH(9GjV2TOR8X=1D-bqSO+)JLnPl7ck^O9_1`?jj5ItRL>7)fhE18o7LAAwe@%W|oZVvd?1RvV zu3WXgbP4R$hK8||Bh12RU=HqdO>Q%5O}kAQ8TPszY&A)>(FFt$n(&Npta(Nlwe5Le ztZ!D%lBbPx%;c%5#E34<9N+t%uz3aUHK;Nw|epuE6riY_GTe!S8@kv7zluA7yjvQVreAEZEf zqUh&Gk;(HwK|Dj~M0O8WqBG~jG3R95Q&0JZOM(OKv7g|7hmtQQ z(|vnv<;*)sz?+Zk>DSUEf51nJpP;B)@|2SLKa*Ho+%l@JAFc1K0BO4n++L> zeCd5WrG{At+M0Atg%`lxlx-fae-N`)1mX=XK(z6w8NL%l)v%Q6JK4yVp@mh`Xiif5&yP`D`tNBwRjigvJ*gP0jHne;4arhQIZMwNIA*ztRqj@+6QDo=-_QoEp|a9%%cgYc4u3Jmev>2SCRywC%x5@+FGOjcUEvppS;nYkPFbd*rzUg}hIKNc zw9(dkTR08Ze=`f7UVPq~h|fd!67~4*#N9=&^!MFQQ!W(Lf1{3uPT*;jSVsQ?##r(e zZVA5j+|M1Bch)s|@yBO@NK;RTwW8Nc_v7mh!ct4tRH(GyoO>GHRvG-PxJVP8Wy#v* zTpOj$QHTNUFDyG&v+HqtDDN3)We|>a(-O-+enNn%y%zl&Cqh}4tokjf@o0r4t*@I1 z4|{mGok@whg1yZ1@<*_!ngbA5JFmrp9A|_OR`LxyRIbR*p0k48cjcykx^6?1pCZ6b zqBi=^3(u*WhceFZ&0dZ?FO{{0BSJt-zQ}{<5sp-kF^KH$7TF*#{%J7&GcIWsnJj|f z9#b1qdghxv8XF1J#@%@SmupXxsM-K<$dtb=Mo05t9AlTiCjr2V2oWT8cPdJ9@gzx=NY3 zsKFOyzPqv5_5~?_d2h|utWm?)x?42PL(~7aL{)$%TcfAuDi5LwH3|jE(>iJ~phqGi zI%R22q;IVsgr76LH+h?WbYFDusxC&}gXn^>FKW@Wu0Z*@^QYnf80SYZaHXb^Y(#KP z?fkov=)4#+k@ny!IaZ=~ZD!J;Ipm_%0(pO&{AXO(4qDM6$Gymt15@BO3RWn8g3*Q^v|{3%$ISQJOR z_m0)4O%eB}924aDDKvn{lFUi(q^^M1G}hspi-<1b+(CzHb(+9DEp4}0+RZpbC3140 zGAtWw@0V17Vz@G>@7^%D!i=5rPAfc;MaR99B3%ATth2xvAPXfJpAS1HCgXbxBGQs_%}=i$#zy z#toL8Rmjk50CrPS!?+h~2O`ui&X@|peZ|TC;W0f?OlDeVjbNj!CAK3UQXKMER@R>F z0siO)s`mW$@bK$S8@HrH`ez;I`?hy3*O|TSn;4$SZy)RGeUKI+<-2{}rc=qyOx!<1 zF#rk3>BUZGcU;Z_sIG}{hH!2uBm5e-QqckXC}bndkF498|dBBB#XhkNTQj*%+5x>FODC7!c$?02+5W7f=~pXla+m`rw1?ZbOV9f*#LZvD{^9wi}&w! zrX$|Td%!#S*E348-4rna+5j6NKMaVmIPDn{(Ri$1ndDJE+CSQnkL?5#&{x$lAT5sx zZfNkTPex^FZz9(f7mS-j=JfMokIc^_(Pdt6K(f@1EKC;^_xOM8PC3F}mzz~$Hhb#> ze*bSI4=wz^1cFdMHt7_g`t@O*eCpptuJ6Az*6w48dtuSQ{m8zp2k#4x?XAy+-B}$} zZ(GH0g<}ViYJyW-)qBDMrNq&?{GeKP@@uH}tIhWxnO1|UF~Zu;u^n&J3+0o64H%k_EaMRJQY*GjEn+kJ^kTgl3fi4VW3dA%cXI~ZiNBXfl@L! z=+>bEh<`Ulf-6VvNpND0Pla3g7qvMI@>@*k+xT<4S#nYLypy z4`pBkCd&CF@nJQYNH6zjOp3&W0-fnongC4Z&t{58r7}37dX>eN@1tD$sdodB;Hh_O zxSvUR0bde=ZLy9d6<6|Kt@RCztb#L0+|g8q>x15(_GJs7o}Zh4z9XJ5!pUT#gY`** zON|yqZC>w?=m!1syZh6f;-Y|D>%kj>0V3Nx+|FNl8R$Uu;9IL|LAmE6j`DBN zX!kR;GKq}}G;dXXk6ch0SPsy>F}3j5{3PfEDw7WumMM*^ZRRT)%~SPzQecZ46&6eE z)L66_fg#^=NXS&oKZo^Zht<$}w4&P)HX)|x-{lNacNN6X3SP@?C#TTIrFxU5MXLLT z!3^XMx>KwyMeG4f6Uc|lzYI7SoNXt)vfJxib$<~s+^1S|i$ZyywO1A5At>rDSNWs( z;%%N;-Bd2Uj-LFA%Cy2>c-M*je$0a8v|pqjfiWp7E66NW6zn{@N2dIyGnXX39R_Xy z3+O(&$fUZ~m~RQi$kGPR0G5I0^X#_&i@}?R8lD|#gVSJ^q@XbC$4Zs|lvLGrG=i5m zeJ^qx1DXtqixN71tohav7b~*;q49se$&){NKMtJ#Y^=HVR{Gv$#op9QSNGMh;Oux~ zs9IUde1PX35T^IEhZ}7e9D0E7Jynn2B*q#K$T4Q}6Drz_{}N)( z=wbHZd0;`4JkfZL9aV%sMnVH}+8}evBT}hEyD6>1KSi(J-3)YUw^Rty^|dpM4az*! zhn=E>=(qeslnV<5^*|@+r1Ct%%noPJ=|N;@=H*|`!WvM}#((yIT>z^GJo}+I4MdN< zoKtwE+mKTNnQa=+byF|d2a({vBknlWz5|rN;BJvT*Jj~r>g0c)>;E-!v_Sbq*%JAN zh&1E4SLi6|*Ppjx(+fZSMuW_*fdRt7xlfYtQxLH^=&RxrfJVgBezwr<+VYXygsX;O z3X+zx+}@GKvY#jD9VOeHFmISnDsA*Bt6>6^t?8>WxoWw@ZZ*?+# zG`5EAOhVwar7@*$tPD%$gfQ>e-;P7|vBZ85&6HoW2MMwl+NfRyeebTWk+>O7ag(nFZLc*!KR=N z{Pb^z`2Q8FVGnjyJ+=P@hC~V!P`utN4I?F!ZSOoYe?DgcQ_fr0MX@CB7M;UdGos%^ z*F_*-*G1|>yDS&7y=yxu63avKBr~Y$+ly$--jNB2PdF zqpB~&8CA+&vhk8MVzU9tw`8P(s&;sV0F~sTZ9gK??M*oHoxjAfRNB`O2j`aDCx20= z%f?=NnX~!x`sK+o1>|(Bvy>)bG(PDkLj^1R6x%ZGn(l>5ms$+jrl@W3f%r3zRFVGd zbfWU2qa%LYBH!8>wm4D|ZMFq2q!mOH4|snsxI5u4{`cT!1_LYr&;3^gFIjz+0(mlct9lvB@=K%riY$pUj#WR=E6p#npVEemzBk0=sLp>$clb)$Kg} zF{ASAo0Dm=kvz5T1as1-@p zoqHnrQ`I(^#e#A2rN#Q7*cQt^4MBpajY~%SGVKf!wG%ez%PRe}hfczM_sg}U7I{{t zvb9t{VLh*;Vr>Nl$d%`YbXiMW45E3sr0>bdNAoiJibb3BD;lKrLT9k2U#fv4dl>`{OmM6fnQ8Gbztx;CM)P|ELcU5aKv z%iRRAJ}t%Wtm=0P39sneWWbBTd4+61v!e5x>$0bJh5<=15-LiNa0#$v_)c~G->Ega z_3NJ}q1e^^>h9cefGc{IUcU*-=dpwDphOd?{SwBs;{<2`|S>w zF{d`-(wntMFoy&~TUn9y&3?_eC>sbOI?w~de%#}!keTudn~Atfqq4*Ybfi3an#9KJN!(FS{ z__MBvxH;;yO*7buzxV!cuYZxLuG>%^KpWihQw+xb`m-f~;o8OUOPO2X?ST7EIR5A7 zpo=EwF1{{tL+I60wzTV^TYSx_=WTw{$y2rCvJiPLn!amZI8G0cBFzb;a01}*%_0m< ze%_U~!E`PMWkHB46;|mv2enUfio5P-0`NeXW3*kxbuIi=8e|5@UJdiOzTfO3?^IjX zd>bUuP)9trb-~5$!I;A^ChuX~+O%bF&LBx3vv$0%7|2i?w6=?Cg2g#6=lL zG3`Y%hg9euhcBd|qt--|!)$;AT7NYimx3apaoqa&4F~iaErT%er|m-s%P3+ZaF$c= zEIEO4Wn(dK*8Dq|!WA5AHe2ErwxS~`eOc6bcnT3%{@0L8;reu>U1FP@iu;Pr z;0JgSL9UwECKHzoqS?>#m`Dpj^HSch-;#`;UzNqlNY&#NW>2LP@yn6_{UNWv_C*~E z8bSg#43_nScoI2&&tBex@0tUElBds-*J|?p=VOlP;da&YvAl(s>`U+GZfq}6NGSK6 z-j8aS^+66G!*cTRpT3Y>&Fj6R&>p;UV#G3fsSlC_)XX|p6LDf)N%oAQcbl>(lo#n< zqTv?4N9P!WJa6IP`_zh*c9NtXk zOc#oo_O}ttXGk!_3KV$H=OOp_OBnc{h-fY2a<}n6Yakk?5RkIYh#o`(tY8-S#d|AszzXLFL+q8GbXwkv)!np^L=B_UapQQ>Uu zuh0Cg0sdFzovU`Op1Co=(AN#D-Ib;lWjo@V*hq|PAE4l4zJ$paR z1L&5l>KGtRS33&<(X4hH20zjq90MukPxLSY!}0~C$Z*dJMdprP)lg3%sd^>UCk2L! zb#}wT>rLFFFs_D7`8zjSGa_*O7D!Cj}*GxGkV(I3{SBm+Iv}=;;XwB>&9rLH6psL=vm* zAR)BQ${qvc)Q3D+n1X*T2C{WSUP*Zv@vFt7!DpErynks&5>TiceoUD0Hc&Nm_uPF2 z9u9O2_h&hYdLarLX3=UX*@BEAoBXQ;EzC*_B&%+aPI+85Dfv6-E)nYJQv^LZYcLGP zXyT;u4xVu8{435_L=CNiKvS}RdAL)8uenH{ZsCJNVK1?&a+BX|QN`4{N9wl7xCR5W zZzS*v9aR*E|F#B@22(cNpva*fR9*WKK*Ha&Oxn9zI;jXhl|!ukti#tqb9w^3GIV`E zqP8?bs=%Dt(vCn{%GH9bqH%(cTGRP(-j^K~l1Bf{BITIy{b-6=#$_af*ASGw%aaT1 zP6CiHdNjoqLGhf3cbNw0qqsRN$112mJz=&P>kg;RX`I$cddk2G9y=--Y9o)2ln37Z zUOW+i=c+N-Op_%h@!LW(%bmTSu6}N#YZDV;8k_vz%FpO%@aF%&l0XSc5Ot-P9oXxN z?p6~;wf0pGkzFHW`4__G-*KCLB3WhdSXtm*lkH`%5bHy1X_p5_+D2&e(3f8#nUzNN zA}*kDkGzx5jHft5;~TF93@?;IcqM#^POatts(=S>67-w^QYs_19WyV zPt`~B{FNwl!$O%M9daqw|E%*})q9OO->!|)KWQhg^8Kqxk>r_jYG%>O28B6 zV&j36$TXWL0U7}=e&O}6b4aK1p%j2U2Xe6S*d0$QV`#Ij0E^A*@rAwLAG2>nmXqR5 zXAMp3bF~9?y_RA2c~xS-_%dYSKcDXYklHbNA&AC@qZ>hLQ%LXy_nGHw(CXkyHL#aJ z!lfynTZ&tqq*!%CrC?I>8)PrCUqrB1{HcEW6&{M~^(MzR%7iZ{7~HdGsL9(yUsc&Z zLWfTqKjoMJ=i5lsnOD#kcU*}9l;@@{_HVAh^JH-ys06h8^;Q<`g~#39Ep;`FV?>Op-_`X%cCNYJ zvNA@L0KVbOE^x)Ke}_!^qI#^xG*jxp2wanlmv}eK7+41l$o$>Rz}S@ zEa%$v@++`_YV{ziRw%DrFKd1DVBlGe=gHMU0y#wDU?K}|jhdsugl0SfSVuJ^A?N&D}zTbpT!hJY}>%h}SXgyh0`peLj zJ9KrlfE7grp^O44d21fQw@}lN9YsTmxGAa3t~*8OR{8vyCA6v&L`M}Bgo9jpNAY=% zB8GOOJiNGmYId-T*Aa>+#dtfSgo?N=0Mtc)d|^)i(Iw59O-jt&oxHB=tBZnNcRsns_+dGio9-Y2udeODmJ$GP969M&N)>-)t<37;SJ|@3sE}+ z#l6dT;=TeQcr}jmOsSpW&yweG6aDB~8I}sdJI0t>u77f$f;o8E<&XwUvr0(ZdW@Mz zh#@JR)0|`61pV+Y2kDzT&0)T2U^7@KnzEK8xyxFD%fzOXsWm9cD^ZA=2{j;hT?vBl{{Itg^<<3`1x@e zg(99ibT&mTV7}bxuPJ+<%rSGw>MK~wpcI7(7 zSr;}zNj^#_pA64W$0=m-LiU;xsdQr6jCa-fR&No}jRg~ll|bCoNHldmM7`~3aPi9( zN6fOG8#aXRf}@f_4y+#sj|r)#ov@JDzR}QD{685FjW5?Smhn;pQwQISv6q0!{0vuK zklxA9c|-NTZ`e~<*vOf=Rwe?`_~VS}H4gI1$>92xCj2V_@RTG!`=t|eY`W-}FW0%> zhy64+;Cr|0DY)bzNZ_tlg8UD!O+4vB-^czpl&SrU{k#5?b0^aO8_J9zI;CHhjtP5a z(m!W|BH|dpyPgfrfPSVg&OdON)5DNCT6M$O-Skbl$mo36YH>*boq-&sNW22hLE)!V zNk}qGzeBZR)yA;P1S_sOyQ}HWHrk>y3uUaDY@D)4HpmwRrwfbBelICZsLsnaE`)@vG}k27 zU_m(qRW-WMdq!D1-7#R~hd{k}ys@%(h|;btJrl@EhJgQl;`xqa4Aj8I{%$*ngb+OK zo*ZY1wDkGVgM#1IwCEl>jdxMNR1&eSwuJA32pAIes&H=NU8$IIwOowDx zaAl`1V-?2fXzo}XA_*dNUUe~5H9Hmx9>b%RDlmWwF=e-~7n1d9wjx_b{HO$-4G#tl za8SkteQ5&*!8+vog9otc{mX*;sL=kC(3{;v>T!|e#!`LvBfIE3-y?s3L;VK7&(ifY z3TXfHm_0)zISoPK=Ga2m$AvQZ!b-t;H~1Z$M2`EAgYpNX1wVrGZ(ko%hb%!VvCYKQuHkAFfE{HLM6$v0Vq5aZPbchYq4ALr&=`H#MKTjj zNK%;B@%$G=eT>i4YsjIo+ktroS&Z9!zGZ!=>_T`G4MYOR7E6zN=()W{uJ)Y38(XGy z>xPh&L10B0nNzbvyHH6Y4V<=I8}fVCY+OoYDg)@xT~ZUoo+4wCq2wYQOMmfN&cVTp z5x4Ykh=-;f>x$A&_S|M$%D{yu&T&sOCnGjj!10&sIo5#fwOufIPW7zf_VNx*ewR)a z+gL*F{u_#T7d%Iap7#to0zKMs-WoYo_%j90zKJi0@XW&1@!Vh)J$w>3Mw5IylX8A4 z?)}bMJ8$snEBSoMY`(f}C4zp^p!sVHb_?mS+4)C24rv7!;590LddAm=UvLsR9>x%j zk)|gZK4~Z3cULRW@K4JfFyp<@51kkTiq5R>F=T-EZt!BJ)Nu)vgw+%|@60!vSZvPY z<>p0B(wg5!A(Fl?3%xp)^>9&gLTMIIK)RGkP4#CvAB{fv-yo=gytyEd&ZDqBfY}#m z(E2u#6(S-_Wr^)+t#m9m*{*mv)4du#Q5g2LcoNwPo#_&lnD73&DN}ihq)-4SupAbl zB0xbLM#$WlFcBk&4GZO;8aU#9a8jo)F0^yJK*S?p!JMZ#WCAAlisMl0`r;JTP^iP2 z-AnM%Y_O8M!{wf%>7NVf@8Mxg$Ch{#j8^(O_YRLsF3yDRg0JLvT#yF$(VUWVeoBOa zk^u`ym3IEM0_3!?6gWGa+w4fg=A6)%hL=P@?Uw~zwmr+uaarYhc{r2KJ<Uf6#IKhCqpYF}{|n!o>YnSgy5i-Y_q&tKX}?1>Hn0|aI(0C^ibY-5y@J!z z2wzr?_bItBmyyp&$;n{Krp^>yo$}=+PxN|V`{JeZf#C8&&;vwAi?CfA zt=6Fi&&b;V<(&kk`H1^}m^$mIDBE!B14D?Uf;0@>NOy~XAR&TucXu~}AV?22bcb|F z$4Cqy4bt5;bPajNcb)UC@Bd*j3)b`8*S+`e+Iz%`>`z8pnSXq&e?6EWj;?6?1=7r^ zM??TQ(Ego-I;hw%PMm4xgCogsJtG0GZyb0jPhieeqO&5CrA~(dm)%&nly}E%evSN- z{zXAb@7ZBbo)S5Bdww=8X+tj?8H~7uTK!8*d5llAIi+2XsXAh_)J)L}_R5SA<(Kau zryD_-pqRjd70j2$M=(iwMxR=2#8?F;d-cta4Idw)^VKo4*S@laimJp4#NL!h)RNE- zp`gFw*3l;zS@be~EPQ zNre9PCMogD5@H2}Rh(N8PeII5jb4P9(3Nni9YYWg`oxXpvE(qZ=HyJfFE)m1W_@n9 ziQ_)K=TQ;)$3WbF~h=BXWpsJM2REuQ4zt-)F{9 zlOESZF$F^+Bwy6BpbaV+i*{vYr$jOtS3ML>WjkK;WMH2=iinNZz-^(TT+f&x_H0~y z&lCla4-WGWU$JT$niq5fLq^6Yd_TH0LOD>U&vnfhxqrXqulluBi9h^(2Wm5#4=?Q) z&3yv&|2b`x+-@}*Ms?%h0yVS_YTj#<#D$zXv|dM`YRec%jmj(U$eHG(q{Z>L0xa!S zB!>DQHM7*dr}v_1s2US$G12KZs5JE@sZ3GUmI((|0L|{Yh4oai-@q% z-`@PXt{#{9okF|3II;}O`Zb>?tpQGo$J78Qny)F@m>o7q0Y627ij2u=4k+Xv8ALDEqqekYNkw+Eo zQa|g5Wtop8^2M@lq-B>^;ed_@cA^rk-O`g5Aqq8=C!-6^OYwrlQFz^Jio@7h0qZzh zVwQ=tR?&DFgfO`|AGp$Sxp))gKP9~T~Kx*5gmF$HO`>EyS8g{UFDZ1_JUGud&EG_BFq zSH-D(e^iZ7ueoRYpe`8wHTij7VC;Y@=gez$tFoqdgFWv2>-q#YbcD4X*eF=(Wipi^ z(-gXGW3e)DmdHi$makHBpkOLU@4dB!fg^~?~l zrsVz=Yazee_3-Vo&}x|Ef{u^V4cCqx30vZNh9GX!y%|@PUvTnMS0t~!23*xj<*O2S zjZDX~2W?x@Q$pZ_XKcV^+8r^w6L~aK#7Rfin@ixn7c)?HcHpaBMgAsU7;pY^X(ty9 zgkKfBOXz2_T|hgxbvdP~8t1=7H-#5;+jA+}bs@SxKNjdIay~#e^~+&#a<=oj@$y$w z2S>;K@`=j7!)z*J<+Av457ASKI`Q+yFrWn=(|)L5xSZHe zx2sYxdOA;?>UuitD&CcRhVPGhbzZz%xag!0{lL?`jbKCEd}rHMlAqS_p1SY%4!oY@ z{yBld|2z$h$7`8MmXjbSk$XQe{I@^O;zybkpc0n}`*hE6i2ICS=W)srMUBFk{b#0| z+ujbM<{%)^zVNR>vv6x0fH_c>kVvpw$|TVjo*?OiXhd&llP| zx3H60VOUY`d8PV7q6Ng9o3^d)ApqCrsmBz@OhKce7o{wHH&;PuYG>i`DsTEO5jinF ze2P2AJmi!gbCl{6{%eOgv@dfz1+3EC3L8RQVu#i8Zngo8)QtGOJ=cezMpI|~k#ew7 zZt8n*mQbZS)X25x=LgY)7yw5Rk)Qru#T&D6e}S)mx^E4PDPXwH=1!>)``^mi;;MNd zGKY$#Dc@6u>NQlATG7{YW;lZCn|+Biqi2KxX+Au&f{LRZ3Y?8iGMhi8ud+|O(VGdk z)0Cs^TC{T)$ZeM2cT+VY8vvYRbcW>tj5D8EuhTa1+rLg4-h@qLzf80-;LL44VBh)J z*Z4Z9w$H+fJ4n7}O!~gJUvS9x)#i(WwE13CjlLdDmufQs6Hhv8LTLzc$CIx>UgLK? z?loqkko7ptEpG_gi05bw7WEAx5Hv|+V0-OcnESnkxS;FTTa<n}^L5x015u998jHSSME$^9XLVPuGnnx3e(~P734{;6; z8Ss2qP&t$F%S((wK}S_J>hN8*G_JI3J7=ee_i4)7ayf}c%r5yxF^uIRbdD_7wRlLM z!g$DlkV&caxaUX$Crx89Z06f_ zVPk@ndDOl;)6)_BqOW$Q4R*54#@*%u(s(!!ZlL?TEs^I8l9F)&=deBjUPRsmBKi9_ zRt&`lLezjPq9s=^J~lv2Q_1&gIK(=bA* zpw!=<$ykrLcF#4(mudoWvEHx0NhNmjK5WgfT zq6L#xn_RNQRQvky8gu6{1EQ!hk#wPw7cI=zJ$OIg_3>QMgIy<+El_@5c4e&Y6R^H* zBqAoirXKN@txHXzdy^A7JAI0+_@%ZP9r|5X!GAK)XZRylEpOCveUx9=JSyrZ9Nd?E zOnlMW7aW9!A_+t1lZJ8LP*zrZm*5B_ujn73=feD3dbm&vow_H zfnB3+$@i>@JY|O1(q9o~>zLXaErt<4tiCv~X@*LVgKRopti8<~OYqM?4nn@qJ;ZF0 z!wTM^`Bh<#JuB%hK_yHvldSffS%Ev><*fdNs;rAd>jj+zG!GV{s!Ux`h;~{ z5b0y1a4v9orz>$#YNTYG`gMNx;Q7IXq2;Z@MNqzBh;uk6b+`18CsC{5L?zijJx`}* zkVz6gcv%yHD26=HY*J*(a{t^q;^5e`5RC2VJqgNATDj@GDe8h}bnVZv^Az;gLa8zw zeg5cq4wGR}y5su@@EUF%`WRm36BnhnZ!y^PgySqbRW)x!UB-H~({((;oK%e-HW2uv z?{U!ceF>AqS>%4;O`Fj|gU!@!m4D;d$@9}m2>@3px2=kyzOwz`OSNLli9Dr;hVQ6b z_LKqVCJf4(10TM;g-S{UTp~(k76yzn{+-n}H_Kiak2jax05LZ;<6X8dP?Z(H~Bj}Ov^ zKY=X3yZgv^-cqwG%O`;z(QJ{YJ*G-wG#h=;v~O(X}OZmng>?k za)E9I6VQA>=090IJ>sZ4F6)Qk#g;mL4w}2gzPMq z-cgjk*LI%HOjQgh>SJQ(G;(BvA=$O#rt2YjoCHRcOTot0vsA(i(o+-{eRUi%({MX~g2j-&5)|G`C5BnE^L& zysGRC1TVW=8RcpgS1J>4fF6+AVy=2P;yUPv4&ZZ#eKlYG>+=c=IZ>kLN`7-{sIwlC zGI)=+(}PQ)3)|nhkf>gOUo9tB$px^kHAxHQNodKv$EFvOYr^jjt_60ESdH=g=!bS! zqT=GEjbS=sIj%G9Q^tMQ z4!9Hi3Af}es9hxvM)8VjoaJtLssv?MCa#D^;uz&tej_PyI0{Z#8#K%_z3AsfbP(k@ zG`%aZDSK-(?4+^sXH*^@z;V=ECK-P@JS2}fM{hKeDE+$Hf16G8^aHx{QR`tB ze}H?zFG_;$N+^R1xGD%g^~5;&Z(gopNH!l@q0?=#ne*(?@>Yrc`=J}UrknO%an3A{ z86ATRiaGj8D0crqZpQF+A~GKamG>HRPtL;@6J^adV)S=_lBolzhrCF!^N|D2|Ge$E zoV?s(k`(ShFnN>^iK~Fz$-;mg-kkkzVzlmr?W{%7&1l|MyM*(H-Ig&o9f>Pmi$I>X z5iP_e-5tK2>IK^^PvMcGH(CZkbE=J75wcs_ImNbW_91cS={K9EWzRz?deXuqX%@jQ z_y|P%0(~v$X*a0&pDMR3dfvVxa1lgotYrCjFu0Uw1zW)9$PBo+zXIRQ$&t7!Q}v)u z`S`Y_kX-A@T*nIkGqPZ$Vh6g>)`r~E7BzjwU$LFzpo?d=)h|JSF4E(GoWNPVg}avZ ziEr(Hma9YRR1b**v^XOQ0v|g!Z`&ZzxNQ&e@Ws;;7>mP-f5zqEO{;3_!9n>{$!C$9tgjl>76&I2Ww-Pu2ePSb#{t$^9zM*v?f|lU3{1uB2H`+fj%UQqbyd2Q)Yc zU`bGPJtIjkWas}G6Q#{6nB~J&b*rFMp4l7v0dyl>2ZjN2Q%9=w$4P6f{T@x$=$tg1 zVrtH$>a^WH+r2p1i|_?OXk0$<)sZYNyCW+emym$8bk3vH zRVw@o2=;j9n3{1Yf1N-HVZbYCAEShIKgxBT~3uMfX-4BZWnF=#POMp^mO*rS4q|d zB0Bz*mW(XwKZ&&X+Iag@S^?&}Mtb<~orX|I{jghRY)=a`=+&*w?$1sTQCUkOGEMqTP>S zD79oElN6#;jDozi`+=v+sgyrkcN6A&Gd~z2O&LuT3nHOe^WABp4hiWZorgp*Tw5if zV16KrEglNtYbHXekc=#Q#}#ZWLH2XG#||o#80^c?v(Gnhz<60W!M8xr{mLVso$)0u zhBP*Vl5^uzcN1GI6j?FhCD&E)%a$0=VXubs80!x)dRlNe5tv5FZ*790(*N&GL=GNR zg&OU&OMR5Ast`a>Q?*$SA~yR(5@Jq$#&G?y_ZkC=d6dJ&sU&5xpsu3Y?Ja(7kYZF@ zLU?rCQ1Tv9@s)VhC}Vz$-Ipx9H?oJS-1E}N%?tNJ-dB>zF=1K1OY3M4uW7hFg$t{`(*MP{Z9t-@YEdz(RSfcPF<;Ne+}~^mf0n= zbG5PC^0U7?%tJMKVae)P!*`d%UBgPWY7=;OtLbrd)FqQsa5%G-X2Cfla&X~uNGoyL zGvmF+iWK{-`D)995lS)we`A;W2IlrnbKJYm^mkwP>~KBNlu+zu08rTLaz@NNu=c&fYch`L$4H=1Cm*bX;)y`ng=PX*~3D1;7- zw)6au^E~w^*m+(WxTCjvr+L>S`Ot%l=(-f_tj+l0KcW&iyI+#CQXB4nk+FJ|CXJBy z?Q=bttl%iM1p~2MC{mJU%ieHS1iREBGSqOhihrHz71k0F1 zCEnsMhr>D7^S>%-9woubJlc%BndYAqQe>!R5jVAe0!!d7TE)Xg7$QD0d zgtCco%-z`!GdaHhq~9gcbL~y`<iAjjO>t4h^gfYX!0PQC%9bTnEE)B+7qD(7}25 zc5SgV>r|;y7U_Dd$gU4ZsFf2b$PeAD)$O5qV>KEjO;*){%&3Sf7|%90N@MmH967M^ zhZvAu#sqNI%_95jU=GX48HNQv&l;3kU79%ft1Y#7WWn(p1=pz~h<4_?yZS9tHJcF! zJT=KwKdZ{m`sJdd^OVYC?D5gR{FM8R_Kd!Li^2|eSOvqiR432+D6bst(e(i;ax8t@ zT#w~e4=SR7K*kDU0x=HpS^JzJ1+%)uxe$bg=HPtX zUXAYlobV95V76g9x?a}$b?3}zV0)lYH}Zkw4^t`G@W>VE&(Vr>LdJxu*f?T?GAMd~ znf%H7Swz?aCHkJ$inEMq7RS!YtJHctoY3QLt_rAhe!g(c*TzJ zt&*#VIHZW1w+q>tv#{<(h}fZ4U5QK37C_HIH6y6b-x4&?ATLN@anTP27D{v!j!f6+ z8E-7T_{G917_TKVESLeb;g9EDVbg}N#`9O}B;sNX!h;C)2`D8q;y6D$R>ITLfNy** z;Bkj!=`;S*TxJyu2nCXRGaErR1CD}l7l5hl-+HJh%!WvSTySf_K=DlExTb~OQ#WLL zVeOn)=kQjSRg*X$>@0%j|HhZX&UA)Q`SUj{3%iF#&%Q$yj0iRFsz2u8_vqOs@L8y1 zSNvpuPW+syzPSCeh!ci{_3et@Y2kT!_0a$tmGGRc!)+@U^PulY2LN8rTjiYDX5Y1@ z{Cmij->}>g?92P405Tdb&xo3uWigTlj#z#4!4q_xzlPBhNj1*XE=u$zle#vy3SI^^ z`!aXkJ3U`JwdGh6#bcBBAl$pu>jgW`Q*TGnXMrYgHPsMLj}kNReh%6Sf2dr&tHd2h z)cK$o#H**2Eh#419Ou@}*ofVHjqtc94LUBPwAxVy8WGR%)W;Or8R+@oFx!}SKW{7d z?wR;$2wp?4V&`)gP>i$VQbrO}vdPzYHzhb@9`&!S&#Ls4>? zQ=Q7x<)eWv&rdmRNT{ixEcWOX^>wZZ#hA4OGQoF+X!HIB z4Wz&RxECT0j(;Yq5TQGMQaMvVsW}W@@b`r-Q#`)_0n9@BGZP|(-bsEI!WNmi8Vr|v zEvI5^PfE?_OFK69S%-squ^hKF<$lxoOc2c`DpuP)&M>m6OXYwI^UIp>l00#B;3q#z z7tE{r&iWQf(!!8eMapXS-)q}bonvBZPDjp~B;>ckacS)?RBGS7Da$cr|0GSm#4jMd zu;#1%_<)5jJ;{sb*DexR)N#8abE}&?INEC+8gN}El%{}W{{V?Jj&CBX{xH@!#NmwM zFr6W6%!j{9qiilkZtkUve3oEmU!nXU=c8Ahg%w+;k{C10X#9?hB4(h$XSrQKI`)Vj zAov2`VMFyfNlNsJk)WRX@rz&TdX{18uB>R-_*%RiM(#FpzlYdgMn3GCtVcBhXWQHc zJD1`6g=y68StDIw{FV8T6&?C2f%f@RQLmdhCl23<`|YTdG(cV1xcKhG{t%^=axOr0={k$S?#c|92#-FkjA z^H6#qg~-En3B6dzHKDHccZUx*ROq?dFMxK%9DmVN{MzjrrZ`Gqwwf8$$Ym%GUI6kwEJsCryqpz7vzJt&@gu8V~fSg=x#_BM~>crVYEi|UnLU)ldObm6zqWiS>X|4TQtiaZ%Ox@ z3&@w512)N5KR_wH^r3YL)!u_z!-P7SUMoJ7Nc5rnE04!sC3-98DL;??q=L`r>VH4{ zHG2Glm~bT*ABF#Haz1TvP7>tY_9iee8p(i2)z9SPbA#pX3?Pv*I*mbQblSLQ^d zhrAf}iPaZ_0SK|BD^21&Ab1fz@$%1q%8c&3b?jx0)icpUv2Vk%1Yk5bU8PrGnAWEt)Bu)c z?p*>*Y}#^|H0j92U$Em+?V(BknRW(m=^yupQfO(KgJa+eT9d1mY-jde#|K8DFzCxN zg!d=kO&0!c?(QqvaIjM|=xX+L{i_Vo1zV0(q;KZaIK>-%7!bi8CnZZz!C2vA($Y^0 zudvZ!N9dbv>NpV5m^LIi(xk2eTy~1;}vIYVUjM8 zgR`)jlK;&j$P}ZT=~3{~P+WSC0^@dm&X5%UvRTdYHBu+_?9)J7zLXPvhZ9GCz9szZ z0@n)`HSx!s5t6|WYf5Zpwd~ra!ox)KD4(IA7L-d&_oM1dpJ9)oHq#)_94gerLOpeC ztO7}c=Y3;9+6s0z9;<+_0y=J=g-7-m0l2p*npMzr7+6soAo(3znsI1sK|BGc@K>2A zgL^`7=xnGWoqKUs`YUPkaE&{e9lCJOLO7MF=?gUTnf7sHgb!cwgoaXo=3}^e=no#- zt%z29i7M{V$ESV<=N;0Z9!>Oj(tuw7IbXurBn~xsvWJNNOjr?G%-dOn2GQ}|MWGsgJsE*7s z*^2a*Z$=4>6o!hR>&2)_Q=4Z;xH=}TOlKC+9*JO}^%R?qVKA_an)oSxlH}TU*eY?! ze;utlN3)~Q;>pa0pyIytn4~hI?qrtI5YuXJRi6bjJ?+f7Uj9`JL8?JgFL+RSVN+D=`Qp&GgTkn8IYr zjF-5~!}EyiK#a6qw0d%(Q)Dpg;2*wCT0EDhKEc zxK+3k-2!j~^sVmN75#D?B<#Jc_i%cFWQN#!`Fb+O#{{S`zvY*wO+}ljoAiR1X~25EY~lt zcBxWG?i0ViNxO(_E$^3#-T>#uR0X-u4k#_SboCmR`!8GBPe3E7UY#Eqw|^< z^AOK;_II==y*9mFKx`BcBY%L(9b551Bf-Kz&5dU% zw9i+$*3^ovi$#IRV(@@I^eY0eA? zM4In`tmx9@8t|fvObnfQ>onZ*KrDCY#7=U+(bStF9?8)3GR#+Rhy=6y1tR}<4a3gs zyCf=arBUqehw+bvLG2QM9w&}$oNzBaoOpQ9ws-ZqaO6vidOUHi2^G~}3W*_i9>pou z40epBKa{$EH}>zSk)Y>hb^Oe}Noq?w(}nFu9x(a_h~k2p#`AmDh7g&!*rK?q#ki%V zf9$SgNC~3{J=v8Q>|{Cu6~jQIR}#ZL5UzSCZJ$br^F3EoaiqH8lUdO)yzAJXfMY0u z|4LAZ6|p$n8t?d6ZlVpV`;>>41tP;IVv+kpf0TL7J_<4yNRhu*vrMeh`2!R&o{`bH zp1h7`qR=n!cPC6W&mj>+ln|iWe>M{ST%Y(sq85q%*l+dTGdC_{X^U}LwfdhMF>EDK z5BO}J+edlq9C5q~uFdb%EeXa#7=FKx4^jhembKiw+KyZ8yed^4d$0t~t_%2nhA8I; z44?eFC}(D0Hf*>q5GZzPiE+Y3x#~97G1*6KFmS!Q z8~4C<+cs>!F$V)?Vzpsbe*h4D`8o2ks+n$AqPX3ri>M9m=u|xEik9nh*t&_KrCrNv zfg9;ioR6Q~r4m{uJAI)b=&-#JOL~+~Y6-$a=~olLc8EKy`cYOA^hp_4 zqvnU(<@+2Dzp&MxjMYCWsZ+vQj6ND)d0;CygrcV0b|w5$ZS=x(LHZ%Na}((wQK7HQT;u|K1D*E~ zvGi8%O(YdY3-gJbslS;<0>utfKh7ae^ve=cY?!5k$uMKI858otB}TKOPd_M7L=R?@ z^{jC2rtc^7zH|{Fe7b(mD+}z9__GZazMj_Y>huZugLMr>&7cSDK|a0{KMbcsBv)?x1wCh1oPmc;-v;Ts4o&d^{a zj@RiF;Z=+rW!vA->BgFzNFkOOZW1l}UwQWa9t`5pCS5U$%^{x&9=24q{Am0VCV<*+ zJ|2j9E-Nq9o1S5uVjhrM_ zJ-zLu@d#JZh|<1Pw8DZQ6Xs@1jE_xccE(USiBl<6{7`N0vQF!px?w3C4L1+u}Fr+2LK zll%@SydQPfQgg?cOs*2S*9ECo^c~#GLxu9M#@ahOZnC#Tw&36*}fMz@SsTJfxFk$+OpF%72VQxJc z;M{X>EZn>Qp;wIXYi03XU5?d!D{t(w2_B!2#wztRf+8Tv6=mYZ;0JQUL!Jo5O%4qt z{G`w-Flx>lrPROvIT2TQJVP}-fBa?{lwz)mz^xI1-y1F+hVL$5hNAfDmAs=2j(RTD zA7D&nq_z!7{?UK%-t&{rjLnTbt#*#=Dy)d5882iq=Kk#WH`fd-d_y=c7Nf~vX~^id z=3f;HWxBWFa&R8bJjx?aiu*<7dS*7Zc1wBAXv(uyT*d1Ed@ok9IUv7$E_WDSU}$I@ zxK*bL(yNWkmGNn(fc?A@FDG53u~reeftx^iSZD!iL{IR};aWj5@MK;x3K@1{$>u0A3@`yV*2 zZi#T_e_;E1BR-t^&+L!uYWufgVMcY4b{VPaPaA-+uRh}WuL1b$xdMriGraHA42MIM zb??(wb<(~_+)cz44->hDk}pyJN8rIk{afxxA4AOEggRE} znH6|&GRBAhC!>2(XJb##BluX+afO+_iqPr+m>s6wpCvo@Vd?5Xu8%09h@i zR>3Q7m6=<_39;(Cy=h8SZ{6{xb}uo4+mAY&%afQX976e`z5Vpn&%K|qPe<$nq*-_( z62X8@?t81@-NfoQD6_c6=oA*TErtZ&EH1~|uQ95v2r7_(T(duPDB{4@KgW0>g2kO{ zPiJ?$L`B&5pI0om7tG2FgSai}_;oC<7|=VBl|D72uchfONK%e$rYw&Ca(FHl%sy(B zvzp*54v@Dv#WgxQHz=3>!Bg|$SD~qv-GpVr*k7#5NtsXdo0n6dBT-ddr14Gf-{Din zN2@Kk7e83^qxn^TkC-uH=1{XAaAdc$pKq{RB`lI!a6Fvv;%gXGZA|-FOf?A*Z)XAn-7dvkN*v>& z9w#$>y^ylG#q6)wf0RfNIZtI_c9z~lxrs*-7uwF#Oe$jV zLwALxU^{CgLlaCSM{?%U>p$;GuyN)rLDY6FU-68Iux~o#Bo4&luRnK- z*5(*?lP}2yUAM*)p?IA;IK1L$Ij{KKcGXK7y<+^96=(rrOf~S-@tvv9{%dfRD0p@8 zh3o#LOL9*cUCkV+XZ87UwWJ_Uq7{%x;m_6nl8$_`{p@*ZSE9*J0HFQfW>Ww{hxVVH zsniqojKfCv9#YSqd<;YYc54_$kNhYCXO{)-=?G2wy0)D+PM8oy7UPpc?fMW%NbmfS1Z~+B;asRzpXF!uVwZh$#NM!oR~=AAZ=M7MWxEb1~!f zvX5fLsT5E={Q!I!=+t2M*^sw>&b&}C?BxX~<+SX&y*Qa4@q*eCFCwd@xVm=O$;3t# zK&UCZsEv?6J5HmR2T+k`V-`yR)@pz?1P`|_IC3jVmN}2kdafWj!)h}ne2d{7w1*(^ zO@YQk{myHD*F9`lVSTNo{XKD}s-xldLYxU?V_5E2C${oy!TgY|v=Lr(4NpW>T)CoO zPlszrwG+vL;I=i^rk5ELdD@2J6y}>i>mMKAP25MCUayX^D8}kA)}E+elX6sj-DVCk z;Nu{6H61g=7NxUBu6c^`8;?5a541f?1vaSFJsPh39UNE)bauVqs@FioNsb6VxnwmG z4o16_=8}0fS&cvI4AXxO8|JkbChIDk{qT0edq|I-*71X$)qz6kqzt5%TXw_dqTq~v zjuuvL)xo|-uU+1L_7JpdaRUDKcrU6(tyN$-FPA^Ohc=;T_>{V!?-}6ma;EiG&e60?Edx6dM#R{JSTk4^o(ZAEw^H z!ELFoHF#enhPXlAQsju*vUCg30m-PdYaZMh(Zez*|LXQ*6K`_KJM;ozS7@0niC%-@ zjD3!n2@GY6as&b4DICkA8<V2Z^q}$}e1BBm#^!hK$BRz~AmhRM@MJ$<#}II!o}<|H zu+2Gz!1hEX$Pk8egxDkVX6J0ju`CIX?%j6_=Rt7b1pV z&%$#6c+74L63udM_J570u;R{md-J6>qQIlqt9Np1Rq%@13ZsSMrhjmeyjC2ue|WV( z*+u}75bX8n4f8~A$<2*xu=>tP;UB}aIP}8#+i1LrQqMH7HzfCRjem zu@bFq)VhyoGas9w8`+v!OP4 zvOxyI<_eC899|RA9urhs?$B=%y)ACt{KWyRJ3?ztvgni;W?#zN4P42$-stDJckJ~& zaE-VkYk5W>hmBOeWG6Qf*uPSpd$`sbn>ZN9@tz+hs0Dlu;@bNfHucp^5G93^|i zts}3y_u?W*<%HPt7QDv%`hpErUUc)TG5h0Q$?G+RbeFxc_i*6O2;L?#PN%qvPZOl0 z;=Gb;m=|GO(0r`dyH1w~tEsHfk!19oo-VRq`L*-qikv{8=^g5D;4uO#Xh7h2b@|zE5-#Gng#1T)Hs?q(z?B~Fff7>Xr z(sZF>JZlU9Zk~H6f>)WUVpFS$Yywi$E0Fp%#BH~@Rw^C$Anv&6zn4B&!3Tq5(yzka z_+H5mM|};-vAD&1KE*>4O5Ei)vPeP}*Qp}aPDCaLtI_|F04Va*(BJR^v|3M1@2_Kh zwn)dkb}qFRl-oKy8Bs^eGV0qOk-Iqr08UdLyZ9w6EYOsrx(1q1$m@ zTZ!3ga`6u0sIr!ZgleEaF};Fg$&K%M^E0UxHEVW-|CPIX=KR)fv5{FEBTq0VQikYI zyK`QSym(*Xz*@Ko2v6%7KZe1wxAcvy=se9{Y~`5PRHSwT6vky+TF#xW3bG{c9MOL+ zbt&b1^3&<{L=7mu>t7Uaf0yssO(8i>?9CAds25OF{cA;SW+s6aV1toN)BmbL;ywBc z&KD7T^)5KtK=C@hb0(eHJ&j?;H8S#>ti~@qQBlb5wD(=5*TFi?2UMWC@dAat=0HR( zDQxSFW6G$)yM2CvqS=P@2ErDF3p1F*FtcZ5AmL1QarWQC63gr|Chfew*f$J+EWxi= z^8&-8!l*|xRE~Y3%#~g33~~-03QV!<=T)Qhv6;=R@^Bm*5!#ou%pJxM7!w_+hKS)+!(9y`?_`o6Q91>6xmzcWuvG7Tk(pX zZ@gQl$UpH)jm3Op1Xf;zU1gwc7xW7eInE~gf|KK-j6po%Ki;;Mw%sv?qN|9)8ji<& zK+h1oKxg0S0;*(3mmhl8YRWgu|G4^C2ReY(0h`)sXi+6dRYEw+rJt0tl%~E6VGrXe z#CiA9P2wO>v9ko`x!y%Q9Q(x8SNmq-o!H?6*tGv4!Q3)_SU~+xMc{F!+o(cy(Bom-?#tlKW3MhhufJ+3f?mn50_8Gt zmS$RZvlm0GR_<4BivMtSiCK()ur&5TtgFr-N75q%Gl4%_i>ptbUIr?bPJ>dQ#ibpA zfBWG3Ro=g~1S-23X&UF(1KSY;IO={ngwdzU%agwJVsgeu@YSKQaikKX{s3x((w|7$ z+x|R=W(8(F;|_h^gdE=-{oqfX%rFA$Sd6RGYbWX1Uaq^}PBY{ek=u5E$&>@aVGz*Y zU%%7N-!SUy=Oj{=>i9J3MhfM$>+@UE`CVp@TqB|@FYJc=80!-r1KHOO-UE^O2VN5{ za$n6Osngu!UjcV+|C;|D3+7$$I9#*h&jxYSD3}PW_ev1D*xFDKir^Z5`jJ6n%NQxj`U3@r1G>}NgFCec&~3h7@WQ}B0JQOwhd@uo~8Dj zdVEHdI>9(|pPG0;rDLyrw2X&IUdbRN)dwkuf3Us@&#@f%|#N5MM&F*X-2HD#!u0mQ{@3h3#7Km zFB}`ENrbX8qJtw#O$_xzD4|R&T(Gdqu~+!BXSzB}M>OPaO!oN5a~=h zcw{}Q1&G|5Zgj3UpNyBY(}x+CAsBCsGjR8Q{P{#4w|}B0Ch-IOUPS4=s!hvi#S&gQfp=61U&+{$mBOaGv>=eFOA)olJ&=IK#qcmKOlT%W?m{m}AO)Xxvd}$ai zf9J4R0*05qjLjRS*ADaScp+i3UBEc^-hl6aGv*mW&=3txC>aA7&ekG0DuIXENVFDg zMEdj~OrtQG_NqI6;@%8MfuJRfK)jl^9BdoO!kHI@P-lTp8}%|93W3lujy+5p&LQ*9 zyGWL<`d_SM$@tBdvHa#Y-U{F?;O90>R$}1lp?-a*pY%!PUD{pfG-Sr=HrQ7=DQ`@7 z(1CDpoF;psmnbt0>*ZGj22s76`v|%MYaB|Yj8^LUU0OSZSN4-#?AHeA^00U#c}^u% z6NL))Ud{KI^YG{G|4~rAtzbRJxe*}<5g!^u^BZpkvy1O484en1+qoq8yv=UU-$3&F zjZ3bwE&^s)dPSjZsC-{We`41DdxY+%c>R-F@q13RaE%{J5qp?BC@VOQ1`+V zueEyj?v8wSQwiX|$y2txzUBat?Z9MsNDcc1+qerih1o<(DAPmq{tZCx8$aO+7>^(A z-0P*}tvF8d6(eOhd|pEF$gh8w;FhyWjk8)WlBcuNM3L<9 z^I7rV|3u15{o9W0%ze%qzunV;$Lzvn0F~Yih$Z))s)(o{)%pkBc+C0Z-#3qY*e+iD zKy;g!m5Ot#P)O#2N#Gxm4cw(~f__LB?`^kU&cD+A4lUHbsc~r(tp@mJrKc{33blV4 z$YV8N_lfjnaqX+y^n%fbC0j(3e?rs%Wus8O9vnrs3tTm0U8scsPw;anCVA=q;(^>Vp}z!W!qAojtUG0jgaD;{P5g6 z1_Zy)es#}M$N0a1GVA1@2LJOL)|N6ngvcOdw#OOG{i@fiiWob?wHq3a#y5+Ouza>( z>ct64_N9&)P%`1|?BM;rci&BU4B92x*HEBk{M6%?QAOUA5b5a;bFq!J{Twbj%o-&y zPE=zge&Dd3prIcX6Tv!o348w}RgMgZFfnXne#%mSnOg-|ZMq70!W}>Ay+?w}&hog4 zn>_@LU_Dvm+gZU+{k6ozX?sPhLg>EVE;$~^e{Eco0)|9PZ3Lx1JbkvZ71y%et}P`E z0q~iKQPfrT>1NREf!B?|#ju=MG(u0Cigm_X>2oxERq3ASH^a&}?HMl4KY0-i$Opr1 z=UsiexBFXvJt2FFiLja3YevxdHGHt>%98=N;8*@)v z_F7+M(Z8c^&7FZ%`i}UxOxb3|pLsWnik>mTMus&EoNFw`*R#)1o6O&fcq#t8Ej#ub zSuI8g@z}MmX3ail5dT^@Z;cUTJZxI6>ZG=NxqA9^$(xYU=(?n^It6V?!0S&5C)h&= zMJ?HY2%Tw!u0|B=4A^{1Cu5wSVU)f#F3*0=C1PmW2x+FP8-e!kTQr^PrGbGiaXW+S zv{bZdvryr+Rg^UYD9_cwQ}(heroso~qnoT4p17=^p80a}BC`c>r9?51?DxWop09ue zLOs`pU9cy7X@-#)Ll&A_xz?t9haj)%w+xjsLryJD?&@|L{)%=~m~W6?!Q71=kl~CG z^4-Wx)uJ(ri?HYOf(|sNKEeo{={s^GY?fH-=O>tzHiVIgjNq>hwbS~S8>T1bU~;47 z_@BBU%}?&auMU3*Rs5Hj;{-ETmh->-y=%(qn?U*aUsdjR>_$`NNm%VzqLXHTZC%X= z?)-p%&}vRUr^-lbKF(*+U}1^^_zF~!*T)Qn9NgY3`kG^# zSRjLN3Y7i(>{QobpN+ivfoydn7*UX+`(bXCb9$cPuGd9pw^q$|UYm^#s$6!LU#WGI zeV$J-C>pE$^nrT3cA4d7;bri9d;L%l>bka2p9;$7_^w@tObxeF=`2La3SG$#RP50m zX&C|Ag#W&{)|-xoqIQaJKokLL!P>WN63s9@Y-A$0zst`cxvw_q*bpo_$PwWAEhXI< z=`2JT6pmH3Qf58GkQ86O-Bgc-=E>OOJ&I(-r`dxnfWiLuNPZVbg{ZOzvhD~$3_ z2Qv)%S|e=s&&@V9xr3>j?@hrpioWwt2|RW1%$G9vMAObNz|QG%KA=V|s613^Ixo{| z^OtBH@ZUC$Np0lqkSZkx2tkHRc4=KN1n9a}ivvZ&?9~Jb{o8c)niwB1#s(}c^gy&2 z{Enek<^XpE#b`vmNet>G~98oKWuO0M>O zne(5)3QUPLHWx}jlyCV7w&4jnsGW?d=dcveq8Z^e$4Ct+ef!e2EU0e+v5-7uhybrp zGFo?PaHQzQ6rUY|kHHi~ib@43FoxD1UZlYJ+i4UByVq&z)_vtR%wGXNfQYS54fjO6 z@SuU^Q#adzO}nMJ^q7V33bdlCI1R+gi1)Ev+1K|_JiT8oUKMFQ_-3Hc#q*vpX0Ng( z#s8axj|46gR?-gqZAOSdKH@o~W2)7S$YiAGldE%oI^UE!MOkw&G*AtmYca4}Pif3{ zv2Q(qB9UFpe0;Azk2d&uOa_^O)^uD$^WNPq$QhVVlitmK$%X8qg%gMEh@)=d?f2W^ zjUFPobxcdbhlyRh#$Na|0qrkfb+%NHJ2b=&OzqCUF}Z+B!V4zJP^{;V0Q2h%S$>7m z(UhXwK*Okc?bQ}4^RCfGO;3aI3Xc!}RK^P(Y%|dbA%;`9Ep3qrBkcb%Bx0r|!MY~N z{fOt4t7t6!j&T4#JU*SRV^0-_a-iP$vUQ`pNCtWFtnE1d6D_d4XNx$%Mt}J+lZjhU zD(W*i<>_b`wSe`{Lr{WpLgK9}(utWeUwBYe+W*%A^i@vEbd>*xV-SIERkp!@?%&Jk zOQ3G*d{%3VvaiQt-flJWaGjvDWtsWq0;uW`;8_lnVAMHn!lv(KM)3>rE5R``>;~2P z-ZQs!2EabOg5&AyqHPDYp65W=G5A|oilFy>#7s+SHbZvtOgHx*`NL;ufWZLm_VGVi zGSD?Ei097yLC;;W%RlC&sBP_*`1t3`8n2$iqClJcQA>{9YSSlZIvKOxW-kjSvtLSF zpA$Oa257N!N(|>rwab_yLjnbls9<1DxSp?dP=I@NVBQsG=~q>cG6?$ zAD*;>Rc_Ga*J6xy>=Zn`PwAWZK8L51e2jJN<0E&&6Bb zWi9ZhkJ^nR$?r-`ZrNAgu(qq-7*=SzGB2+2B6Fa@%1;AI_tVSKrnbv{Aii7QQPin< z5c#U%iG8*@*0F*WXc=xdMKixqd)n5ohhVY@nG=Kax$ewXR6$<-j1mimsc;R8>!(HxUC$>AemZ~Iw6%b#`A_It2mjcN*klik_D7ox0%b0-1CmFj<+wq1KOuH&$R*_FP#t26fu{v(zSEU>tK zYKx*#h)xqix_SOHcDt)E7|A|?5Uw%!8Yf(5 z<{GD&FVN6KZBgsbX-#~5ZMKs@{{cThve)8VRy;13m)<4p+kSX)I^*Zi#kPL82q+SD z=oCEf7<#V%*f^aDN1{7#Jmq!f(D1)ou%pxSy1TEp(~%MC@bzhZthGB1nAl9|e15Aq zuCves`d{CivA70f73<_u;EAB$J+o|)D&ZD~m518|c>5`*1=LsP*IXE(zc}7&uvazw zv1es*?Ld4+*-^n4kwAe6w6Tn8Cz2ahc-R4O6Sqj8#vWhz`&7t2thKYPZ|5Q%r*P}% z+_!8zyM~+=*8A(pw4K*h(oBftlr`;jB%L3ZGOf-IbV(h*$~F~V>Q!_3J;AQdq)slg z_uJI?a+>ByNTU5`gPSii$G$0;pUUvY)}w5j2^Be3ipBNnsURqGrg|L6LW0$YcMvlp z|GyL%Y+~ao{pSD7LzUsrI1PasBxD>MQUh%1;#`H5CSDQiVhs~UtToN>rGZ348GU$P zu5=;@ffp|S-e%;h0%qe|OhGvnt4&2Dde8Z{SC;{lez!g!Yyh*ug91e=7;`I~CueK_ z2yF&CNLZ(6h~tP$XJA|L=GyC4z1OCJY@6MhA86+sy%0?AvXUT}Blw#2P?+;}Vmy_d z&fzFB+WZu2IoiXFx32}@c7vvyde>`{qeiV)sZi`Awlvth>TWB1A$nc?+$&7|mh6t7 ze`zTye2iEf=Wp^An(+S_VEr05P*L~gB&O2lAWXfHr~!&G4f0k|Gsjc)j{+bJO1aaB z!l#UtfUd>n3*m3YEjpTqHVMngxRs!oWz*e`34H9(xF0SwZxtgp6+cy`C8c|t_X375 z+=QyI1O{>T_Btpl(gpG}7QJf%sf$YkboL$#F~sh8wS|4kvt_1XJ}acBYG^;1L&Al_<`D##^(+nwU){%uy()Wn>c`+SXaw7R4_);_qo0T zyL(yokuXo_MWuOY!##20ukSCK%IIUOBWewUG(G7tkI0|&F0?=cM%k?zweD$rNXZ9 zRkXcluQ)Cow4JZc-p2%FS9%|I6_$NGiOGB^x|o566kKp1XNAP8K}V&tDpQlD*kX2; zE!plK0LMxT3x7O5q#M@#tj~vbXFIpjJ3OWd304pF^oY;K{D!I`fh^I3H ztI$UMwliu+>5toB;8AAeK{%cuwT7*GF@3)l!8N+w9Djwv5jU2b&byKJvoI^6b&$-{ zz-3n7M*o{6LE5(r6dN@}ii+z>qJ83wg<@Eu7Pj@vMuHh5SX-&Z%`Dj8^_6uDRm<5E zZKgiFy8%r_DE^;4=YbcLRF)H8ZrsEXs-DvbUf*=ch9{A{`c?h zMO6GaXXVKWm7j8W2G_f_|6&Lj|7X#@7fK-pN}GTdkdCg`z2z|BNJfee$tcOJTJc+4 zpQS+NV}2W~AW6I5IEVRWq!vl5jr`C5ek^7-Ap33Gb+lS(=cBABQ@Nt(4AHa6ekhaGnc!fOBwX*L1C4iqxbWJLuXl=dldBI?E*%`3DQl}qP!j#TQyweJbxuON^|g{ zy?y(EK6K(2?p;*fqM1_k53;#oVP&Pf{Dxv!Osu&bM%^Q?_42QE(pe$3-l)t9SmN8t zY1F&IM+HBQ1xhQ$0G9#-kY+)lis8^81kI0;61_sp3>4kectP7#*F6z}nF?ghocnbf zzt(qqx(Wl9oRbln!&VH}MO#H2y;gy@qvF-shsn((g_ny)*AAVkzdzTR4)0;H&TOiG zHB;7m-}@dOe5ynXe9&)l2Pc0i!Juy9Z}m86FPSmr9^WlRThHGK-UIF{`4mcxkF(da zsv$7N*>O=R;ozc8!4SW51M?!IAvg{WIfUvaZ=o>`2w6?Uzz|T%&}d3%UomoV13zEk z+pMxUm^feaJKPXoayZC&Fm*W6(bLmY_dCJVw$}44r$erBKqvM zf2li)4&0-Hh8VgLVkKltSQ%x~=MkP1L!iVQ;(;Mt%|pNDQ?s;riviKEUxZjx925^M zUU+WJkgI-g5$h?(HU~+BBmQvRV-0mbwjSRiGXbFWQzhoC8CnALLtgvy(Fm%O@#Apu zzGD_z5GL%H%Y!Fg20QbLut&Zd|Z9u+

        =PI6NM1KpV0W%#}&!stP}0_LMb?WzqA3jJ*XtQnAJfGDch4J zyy-w$&}r%_jf`c>zG-7+%9NIda?6Hyo53pPL`hxhO&KUuDH~9_Gkw<8b$bc3RP%jx zM(|PV?J!4bXDMPM!RUI`sp(wZUX#~V_JI8E`FE8=4~yE-+UPoL zJq;LkJ+>1p5qHJtQ3#TKyDKzM!C&v;Tec48*H0U<&O~3e^o*^b z&051rk$8@Xoz}m~hyxYK1InR#=?~p#dhzc=!ql%C>Vu2BeIy%wyWfcGP28uW#kb4p zWrWKYgLZupl9PS_Z4O9&Z{f}-IZY7DB|lw2&O_&z`v~hdxy)YRE;}J=J3LJW#+yD1 zublFC92v!5EXGQ(5--RYb3e8Ip$V4!Yhx+LH95Jz)bLGRjvCiWb-bp0MtIBz%f=F2 zpm7APCNBJrPRpXSuDm#bt7%%A#)%2JLMz>@GY*MLaKcdPfg4mWf4V}xOr=gR@0Ub) zR^4e7i;pVuKqRZAtQ{(b-h6mxz4mM@*Sap79R5u~fDQR`lggYXxfHNDHtf>MCr3QT z>gj9?o#}>4T2o^m*xMEdLQ_M?fHi;jkJVv3-fQ&2kg`F01)}uZjVV(SnPnopQnAne zi$jRD>yG|a)F5cN$a;T{{$sTW8XB#fe`NdJAh|*FS(a%-=Xbx&4e)O)8pAM~$MFGu z8}qeHrS)-97LB?71r{N7{p46>agh$DiP9qK{TXgAa$L-GE~h34eX2jYfzG#)F=`Qq zy5^NTD!vG$$GPV)=&uvAw4OjFxNmk@?5Z*($0UR|9H-~T3*}HMI1P<}3=IFJk9uA* z?-{H9E&6in0wbR;{g@O5v(5UAzMI?KZqU_ELM{p`i}3H$&I}ZFHM|i(nZq|4jLNAQ z-7hp6C~g+dG~TS?QnnV4`Tq6%5KVw+nk9A@B{okqBS{!fu05TBd?vYTerMzX!*grg zntPJct$GbB<vDgN4xKVsRUGGZ%& zPftsX^(D_y^JvkqG@#;pk??Z}&p+`EyYWv!k4a59tfQv=oR@u!*HC`++X!X?b~p9M zoD6e&6KPN|v@`l&ZbOXd<$gV%g9YDDRMErEICjR|2eNHm9NRQ2a5u>JW z!H%037-fYwV6&6fa*eUZ?Z95TldQm@T4PbSEs`C=S419O%<{WE7CE>@6k{goD3rK3 zPvf)`E>%n}r(O9&AwJ3f(d2u!<|8V06`49I2qlpU$91B;cYn5ka``q2WUfshI~;;Y z-K;vLgr8I-hiVl>@7yIL@1v!y5}xnz9lovMs6+asZ?r3Ace#pqU}h7$1f>U>Y5!n0 z4cwTi_%6`mb`UorR+IyHKHIP;5z=J`-#hBHps;FDJQ+2HX}8uCl{0gAqYrfmP z`lltO?=yC%BK^b3j7X3)whvaUTD8nrtdD?ZTRaebOk=)CghtU1b12-pv@`-y8A!N+ zxnkY?jq~Os^T`U8srTp|4e^5b$ErCMoJ0Q&EhMK_buG-KZ%TJtOyq+P&XEVa2g zde!y8uC%K2<&6?jQ=FHY<3_Hdxwb?dGjX;x|2L)^QDQ^H(k#MN|G}e{?+n7{O1zdP zNY-jgC@v?L7Q4e5{_KvCNKio~38`NC&NCBF7?nBWm%v8D*d%v5G@|dAi6Srg&0ckg z@@m;akN_?2i+V;Vb7rC~l2>6CC3t)(SpQ$6L07B$TM<(i0!r@7Ewsx{K9ji_`~!zC zjcRU)SBD0YXU}|^v@Hcpv}G*3u&Q~f5>GY6!Oi|$hKLmcx#w|my6CWBJ?JrVO7Z?j zF*xmPP0bX*v1ABUX^?a>8jYDER`ITck2M7EZ+20T!l{@5Tadgnn7Tfr5Ryx_NGA){ zotSnthbLS=CNHMdIz}c#^Jl`EQJ5+%fJ6q?UiJK?G_gk!m!x&R*B#bJk{@TR{Bs9ucx_FG{x!|0qaO zm4Bs456$rY2me9h6e+y?KvMqBW3@UwHj2 zxcihn{>rgy^Z<4L8pjp$g1{ph3JM1hZJe7}CLZ63D;h03Mj*V7 z{$Qj4Q@i{js{G#aI*06-v5a_p5BDs}!CQN@Cv^o@Rjge}_fn-#SNwwaFeNuk(kj;_ zk(KgoyZ^F={)qSe%xD*Eud$^s`n3Nhe$fuWW^anQR|G&9yZp>wS38b#@(q9b{k5!h z6f-1ofgN--L1~L8AG$S+P6*VQT&rDN62hpHZdG)DF2+uC?MfP9ouo9{=&{MZq`0rp z8#5*Zum+2?MNAvpxS^aOE>VW-7*Hnb&A}8&%bb853yLYc*nqSmT=ir?Fvion(~CHp zc>?Q-ZC|jB?Q1G&)l(aLn8qQsrr3kYSirKBfyDrE+G?hdqlpx7-mexG2Hp}zVjA1g(g7!8zUWn7;u-CDF zFa3sc^qtmfdA?&?dX2qN1DE3S+X~3ExIVxMlvy}$+95-Sl&q%_wwuo09m|1NYNxY1 zu^Yc*4+@QCF3i&8)d=z^WePtXYF^|>@?0F3KyF=&NqD_wf&Ao-dfKxy^ZyiTTK)ds|S-wY$i)2oX?hh~#xq zGXCY=VvO*x5~xf?{_Vv3Lnkz-c-~(|C-{)We(;#n=L=NR zX>l*BTI(O(qRekptSfq_$a7=wccx)roNHL!v^;@KT&Cl#bw)8vWHc#R1oJQ>ZofHj zb_WOoXtkhx+j*kKh|7Ab0;aAs-J2$EUOKQ_SU)*vj25Id-hgd>*(m~=X<>uh_<;8Q zd{Lip$K&A{&KPUI4|p(jyruw$IB%}@xUbYThpGMq5n)d?@ir&JLD3_H{qkbhg7MBO z8(4>IP{OKe$;9_JP{r^;dS|*FB(0VO3zk#YZ&I&vr#5K8I|t58n0^>K=E(gIx^$Ii zy=njT-_$|Rkbq_R&+PWGX=&RQ0?g7(NevN1pFkBL?qT3}{!fROdX638~C-gyc1+qTdD+m%dcFPgQ``p(Bc(_J#~c%@A@?Is{l@93=d zks7yVdOBn>#bQ~-EGgfiSR|DHEXn%bP1|U5JsB+LSyQfO5EHQ}zxCcE27~v^$Em5y zL=i2oqFt>J?u#jns(?#4P`%!3so7{nRYf>85^_1f>SiBowxM*^wy-(5Y*00#JG;F3 zkJyNik2DydYa=ZqnTWR?Td$k6lnu3S%b zx?y_{7{$6WMId1+>(L__sxjANTKtfX9ohp^dppJvC`zxu&_Zv6mJ32<5qz>~z4xPF z)~<3goh_y_l!=&6a%`A$Qoco2)+2^4Q%)kyCx^i08THvF5HJf7i(1vKw7KpN4dGY` zi4XDs{hO@9Y6B*{6qgT6qJ)-S$VFkvc%6BE2)K(VYgujC2=>`J^QzwV8Kb+!$9`QJ zRq^K)FcQ?hZa+E_Rq|etrnRmY-@0D5L@6(khf*l5%#NH3AGPfa6sWJY08Gbf^O2CJ z&8MymP&pGo z8$1)&Pv1IyPdE~zX^s&V=z3y$%sjlKJTrRVOIEn#hGBxFG7d}U==nIyL;OOS{ndxp zu8gW$;v#T_`zDFpc6e6aLntv?@(s)2sEJK$L)NO;ldW~p3K2nP5$oNDRtWw9DO)^l+lO4=@s3_mkz&c;tr)$ZEX znGs~Rzu+Cs72HsdSCXoBjy}S)S3iDlZ{PDem?VD;7a~e2zC4QNybto7)wlc8$vU^| zof+HVvE%@>0UB#hHI!(B-@K?VGCcT7chnDl2+wc>+zCkY-X#HKx1dPU@)~kA9ImBG#46ZNT)vP z*Pdb6m2`edY{$K?M6ox?IrbOa1@269w&PBds6zyDeA`}B&S5~VE_=UpiWy2zJwY~| zw7Dh5A8Uw7@tbi1tnJ{$LY`d7B?MCwmF?C?J}u*zfbyO=mO<8+)q>?;dk34}ZNc%Q zqz(=d3z$qU+7RqrXdS&gMw_(S4sVmS_Gt$}^^EB^dgvaVSVO(ZAW^5PQ#p4}Iv!W_ z13VLzY%L`^&hAqsD9| zT6&Vt21x$zo8XH+9j*vG?-r(l_fg4DLN8bGda5PSxiz@vu&wvv(l~L{Z~gC6iwzEH z1o$Nxhr9KnA?|8Teol2akWOk7H8T|er}k}q0W>0)|C?Tw^Lg#yF&OKjCdTK-V@!w`_Gt-;9KOEd36);Nn;LT1N)=MC?sf%z?flX4>T$9J`?D%SJyq9Hcno2!fD}K&@7N$a~D$F%h)@kKvVFahybsta8kx zEhpID?tZ2Gjtq*Y1qhkxcynAY&U(K+JgO1AKV$9Y{$nqq_27ea(M(>OWhBo%fxV6hVhxEgy_U)Td|A@8Zc=wlhgG8)S|v|AqMrxCA5)G|y|>Oz?1xT_ zAr20VUaenl>SG)4e(HK<{Aek!e+I~YIqv56Rl2;hl{QM666-y?eKsy1!*@n@ zs)rdvjE*3H=h|5y?ms9uO`6s_f6R%#Z8A5_5{OMsN8x~(infXu##?$ALM^=v} zS02Fay_n8Wo|%MvTcfU{{lS6)VQiYz+g`@f$`TF-coCQI+3sHN=8ec{EG`q?=S8d;lFm+gI4}F3A}ZL zZyY0IFQpWtta%=+cBil4{lR99FB!vgA`SLx<^x}T9&cuUk(ZgyOB_kDM}+qbfThDG zW74hi29>i-+>F8SfC9``)9^sL@>|vX`$Vq%=C8;nVc_TAFwkfI-Oq9HZ>(%)-VQGq zuJ5D&qkT3OwYKB`Lmr&wf5=NR0-((>gAB#}?+=5Xf-rbhSB`J1-H^x6Xrx;4WCAlx zbL|>!vmnwrH++Mr<4pnm+*>7I6L!Wgi(0VG91910L+v=cL5dsgT9<*$<1&n!dh2PHn{OPMa0soRZns8r}=c6!-eABz_bPLsr zvS1QnZIrBjm5kZ;e@Cv}SgL>fjW<=F<+LBLbYYZPuK}&2ZmSP3lEm-#HU?c8pr_(> z5M-u5B-dMycB=%x;1PkI*`SDN*SO+q`pLtZzyIo2pWXc%tNLsS>~9kC;S33JMiw&{ zVC*Q(cW1i>Q}-HWZ(aU9=;zc}?y@0*)KV+2^z?u_;8%E3L#3wHPjQP;CVc0(mt>Wk zi|_*Ge33wneBzIfScHjh87MHkxTQ>LHzp#uWJx|dw;pI(4SV~ zG?ythGdAspi*Ao@%=t5?a7yIA{ydH-Qf2VmH8vA@<|%eL93qfB(Zv0-KbSDr&f0fx z*;N1$VVmpC2V6a5JU@;X(i+TLdn}KTZL88psgRGTYBk15u+yC2t;eJx#1#pVFTXPv zEQZMz{+k~Thi6+a7A zkWcn5&dlDxuN(diMnBko+++EZ`tbbzrhmtGk>v*~_+eJ55<0Ubj4;RsE{@0MI-QNZ zV8@2N%KEWC`P^113)$u+{@5b z$SCo6s6AIu6qZV@UewSwHbG6DGCSeN^M7N32^w}vFpeMzdtM3LWxKbPaK|19Wlp>1 zr;*=M4inM%y7%5(^cZ+v2gzW}m1n17oZ2^OCri^(N|QACf~)8ej0IfQL%wER#(<-- zi@x-)L;d+FFkCccU>A-THV@n^JCi?vsUq9zTd2AOlOZ~94?;_dCIc0WlL2M6{siBg zuj`(VQtFqJCkLW9AI)3)N81#rc)W0b?Ddq@ewJRDpS~+X+t%8z9VhLO0QK093Kur- zVH@e`StJL}7s=;}4<$?jOI|>Ro4>U02udqI&nG#|%@)~^{F|1#pJeL|8I&E?k8i#- z8WRJn1l+2(t<5pKT1zU=tQJ0!mQ|USqFwq6Zj62?HgkVBI22U3P!!0uZ1FSMWy^4c zWE+IdgLbxLI3pLSbWI&883ML5fCJQ;hh03gTR@n@e7xWtv=a) zwH|ko=x6x-IQOOJ`V)We>*E|4n!1aHU1;FndYRMk%F7Vu2#TSQiZQJYHw`q zHs4?9AAZ8jfU@y)yh$LXze@K1v7Q1ay)XYm(y#wm&%YpfT3$A9jJf?*Kn(!R;$8s9 z$F>P4I_4xIe^0ItCBQ#HI%gv^XQ4uEs(F-J?uQOF^rH5rx+c`iIS-tq>vtHe#At6b zGPn?MT?}y_-&k>RSB%0*WCUqmT@_*;q6)f-5ZEdQU(HPB`$2t=>k@q|O9rOJ5pcd| zTz{1$Ffl9shgY-zv8b6bR1vcmI!UFc>}I+S$;;R=L73qHWN4CKg0_KLw0W9hn1IrO zaNKh_#IDo@SD|3oHvBUqvBog9+!OKmmuvug2I|Sq8C3HgqE1VZ(X|RyDx%2W+8Cfn zu4!8SL#&}@7i()1lZe*bLXs!<1Lu+$lDlDuYEfKVIl0U#^$%0z(b$y+1Hecn#Y5!Q znkc{_-TZnUn(%664Vu|IGtYWLp{cs7Wf^iIe=N_pK9+V=hH&fAkDSLTXW0DP%65Yw z(hgZ5@UWC4K!u59l<{cN`up1=dqy*71BH)-!7@cjGl|J+qJ>l$K$Bv`qkIPYzHjadJ%f`*KjLW)l&`ac zB*3ZD_qumfb`+J%j)UzZ6OdCO1Tf&KS{{ha(o-HE~BozzV=RF+O z6Db9mX|_c8+=(4eOOno6cwpL1I|3o3m)JA@{gqtwKe-hJP9^>c`dS_Ad!DN2&77By z(qlePG1;aQvsXT;>~?@9W%pN2jMG+A_?~LfV6ov3TV~?{(qR6pfufzIoOhlu0Ri`p z?^%hNa6zO6-meTvpVHe+=Pgl|``>TK79Fi)3igVtT5K8ru23>QT*AxbEv3LUaXF_n z#0@>{7xPT9r|~SJH{+3Z6ASgf7K%T7*uskizO2!~2*INP~yM74pn^uh7gdM?jD(U=D1CB>%8 z?4@g&z*FXN zj6Hy|yEdEIuP`aUhNCyht{P3n@1?T{U?0f;BtfW~J-><4OKp8*K%abD>Nf(^fP|=2 zgSRZH4F-(^=|B*>4mJ2gyy?{Z`^<&8-~SDI}A2B++9I=r}*$^JEhLjw>kLs zTun*P*SM00G;!hrv0~d&5qDzizF1!IO!NS5K{BY&&o!^(@>iE|M2zd4{n_tX6+SJ- z*0pdW{h7U%4x!lfdmftbU3le;|THs(JNUCo^9xMvxPS zABG0d;Yr;Fzmxb*k95PUg`t{ zQcpZ2%9PNU_dC7lIE5FkS34Db*k;A5uY5B!on%$m^tgc)oxb+9{t4+3KuWzj{}N$5 zJ2E>_zg~o^fk-FbMx7xfl~q6IWn+cD*eQOrOjQiQ-uIW!bOwt67n$NLO`hKtuEi=9 zk!K8bhZSygT?d7L^X5yRpO&KVzam_7QM|O#ix#lOO+;q;EbnyN?utYtRJdfeJD_&! z8uG%(`hYKP7wwg9rRT<2ct0g1w%Bv1k(S5@n%oCP%qiv|1F<{w{g!jdbnQ6hJb@AC zuc-)}U77Pm-47Nk*cfm9$1Oi)|6{NJsK)iM;1WzJhKv;~p+EO8SW^CXNGbuZ$WE4cbgw{vit4npC`kDB)XYObgSTfIJ61mG?BC-TRkHlR@u z(RIfR7V58!$?4#g%HS6>13dv3BBKkRqgUs%p9xxwod$X_vllCYW?gg65!=sw7H0ch zzd`+6n4p(TtsRt{dGm1wRZ@(EvRlAR<^r7@nL&QvnAex^aDPo0vV&G;_z=HOhf#0r|yQbq}e$^zmA8K3OPE+D~~1zqYqCF|6{d@esKClyhibXRU5#(a+FMuS1pZ*QH-uLI<5o2 zJBa%^TR3j&v!ET=$(U4ju8p~yf-yQ>%mN``)HmuJeWWDfRu&7a}{X=GX@%Ehx zw&F;}KPH1)bZ_cUBr;xX5>X@UkBoaOnegR3#3(HzBI7I8zT|{8YA-h_s(31sh?u}= zcFyJp?BBOX+BD{@$x^uoG2)Q|_xwqhz6EBTPG>%@bEskxD3VtScBi3MR1F6nYI@mL z#XvR#JXlph67)esa}$o-0JkjzrUv{Nb>meJyoKWJ7W6sXhM=j_c_x*_kPltd5W*Nk z6UFoWp%stWcFpgE!2@$_5!JD&^_|WBEw-&5^`C?{o@?`2^1iFj`sFFUuW+c(=Yaw# zldH^0>e$#3l2(QTSbpd1#mrWEjrTrqyn%jU80zegEd{+Tj{W;m15km0`2C+2Gy@yB zrsY1K?$(NA(9J|<+Eq40NS%gnW-#C{6ae(9utvcV;m6Z9(%HYwK`Pftnr)PuMZ{KOyjQ*B z^9zf~dLE2>~C0Ph|&&SLt6L-zOcO zScIF*+wyek)~9NmG&oBve@Z_8>b^B&*_p4(86(@8mGXqD!yt08aS8J+m06V#$t2$A z#6Qreu&5;{+3SM;J{gdJb~_kcvDD{y6OATe(-L^}z?zIS*Z+0Ywl^D1lOwM=!j3%- z9ms(+7VR|Wj~07GBC?7-@Noo+?zT;u^f#N~W?nQ!)VE@D-Ua!3f4#rZ?m9BbntU^o zXQEy+h%zg)E^KiWavnRUSx!azl*I)gvxwGtXT#}U`7llR<lh3*1DdHyPcJYYzmC z4zxavvLwR7@KQ*oEty43!%|AwrfKD$b6#M!_$8KA}~&=sPqAPW`i3va|`o`)4mV|2DBr;H*&MBa>Lb)HnAQr#ngnqoW3 zNP-1HcGf(ULJv6wio|U}zS3H&_?C&RFDr&R2D2)^#-G$$6$_CZ@#^FkEy6U~Vq$a{ z(jJ9<8^wJv21vQITRtf;V%c5Jr{eXJ*XJZwQfN9oP$UaRHRZh8slYa)L946O%ZW&M z5=;$q1>=!+WLX5vHp0oRVWJNSM_u(Nnc@hwNnjA&4R=f6jG|GAqzc@8r~b(J!Ko5z zhmTE$4?}JQ?0n{Cf$o0q!YRAzhs7K0zg2ANU~|tjAzlbtpqmP>e-w5cZhoDl{^E|e z!VxPgnUZJB;Xq+s#0UbpZz8Xy z(D0L?wv))kPVVnW#gRPP3Hs)q3Y5|qu2EN}cyj()=+CenX}2B+GltYnuH|R$9C?V8q@m7bC!)Tsf6gV8AeMw1Rj zR+b{a{&Qv(pZw{^THgm}yJ;!;8}qA9VWWAU^%~bpfM%n6NjrHCdQ((m98TK(Ke1p) zv?RPDyj&N4>+U*ds&5f*=zdlkxnC8|pIGWQ$RFKhlA~n6ug9WtF9+hU${hf1g+hPx zkEsrE7DRgwxW@HbyRGMcI{ViA|DGrrKUATGLB@QIb8%Hitnx)K4{JWL;Tnl&%4ST> zhhB>oM5@8hFR{)p_E@)C)L-0c_1ZQl`|_)}IWidclyv5dvaWAI?5kdZENT%Yl4nFc zpGsTT%^GO4=~l(qWlQGI?#H(YS+}6X);S}+P8#xHvt;iJ4Xx@w|CudX1)lIbi-9)#QmS0!A z+89`I*#l^{hE73@$u}Q(ZMhC#-To?uRF!f)8hb{mUt=W4Qnn|Iq;@7WG+>tql%DU2 zdJo>(idYjVQPF9rm^NF4$NhfQjPdO6V#XS9!cMJ9SU%tzNMXz_z7B)Y3%$74{BE^; zxOP+lvb*nLP%?W#Q&+b_i(+7W1##U!%8)dKH|Rh_`MW&>2>UPe0Bg?sbNcjaKAMTL zoseWfLZrRA)R&)Se58)pG{=poI zwx4b9MhE()eYF6$qL|Ss|1Lg^5yL!+MlQ5FOzJn2xjz#HpE$Aye5;Df*;L15ww}~2 zU)P}1k@O@DV}!cQQRP;6#a8xG1eZXaCB={?gOH){kM0JVT3KK_)i>hLw;4;tXFdJz z3nmmdXYqxZFDO(GSJ=b3Tf(aif3fLWs(F%U-6t&U_OFsw<)j1(VO@BMqqcz^%FeHIuU@5_nX6`PAx<6177UFwY%E z2h(~ukz;ZDxlg*SnLc>lqrG+9a-Y4CqG#8_=y4?%A2TLp-sq(jL)Npn|4>q1`*XO8 z$%8;{f#Hb?x>$O`E<$|d ze<8|CWoiHaa69Buh;yt}5wi42n_pHI!|{ES_flo#pH;)-*4N?h_Y?ibtyTb8_elev2FX3j9d@GErQ#AWa!PbtE~p~ zCSy*2kdccocNl)h#4YyXwO%5`GeRNV_&%HNei}ngFNbA{#zM+{-RD0<5=NsE;aOr- zts1j_5oW`qw^r9_Ys}Zl;*qJwoq249kB^AMNC$7~#3=i7=Qh&+hW*Sb{fOQUK^Q*- z)ZNe5n@2$8&HjGL%@&a^&Fiyxul=SQR1*&b)FmgYo%i!)3DWK8J5Tflo$nh3xN;d? zh#jRc6iWI_(nWN8;Y6zD!m7a8X`3W@b4x>0n)6CgnO)T1Q0z2C%D(he>EGaG{A{$VmtPRwPI9OI+o$Y-9C5G4*9*uN5xWVH}Qf36Hqa0YYvu1Q!AqI&Luk1 ze&Ce3v7+FKOQgE+{NioLvhKY_gZ8BjQ&~hTQanRE*Kh*Ws>2y&or6ZGpuW9<%~!R^ zZb6f&^Fw)_XHS%Hx62arfdGgf+tJ)0mez$&Nj6JED;hXaHsiy1nOiuEQxh%>2kuqld={o7HEH8_r?J z3n;6KoJN|!M~!$x&SOYnN^^UcS%Wlv04Q0T7=ceY4jlEU$@h;Dddwf({cFPPG(%t%xmCWRbG?}l)~ce^}Ru?tCW~*|F+_M(y~9mTCURa=^P*)c6QRDWMdu0!7by) zcEOPG;l2q>%AVb|HCHoVKU(c!Ik3mZDHLTbKcT*a?}{^Dk29A3Q;{XG6>m zuMfz;0woMcCTuL+BYTBFF#ef+KjmkbBM#2EG}8MtRL`ksMNC!rGqm9)u@wCYNb;;Y zr;z%TxEGDKVocW_%mEgnxaCO;7Mcm)f64qKM988U)&a3g)P_`>+-xCYI}?pjPp;3G zqeG9j?|y-usaP}u^7_+GQYbO)*-V@fXiwq4@U=9yGEl7#D;y`u0Y;BYw>vLOMJ$04 z&!xWRr>Y=J?WcD6|VR)HIuD?qa!a%@!{q~;_dxY1Q%AwR?gJs_)trSJ_ z%Iq!38H|3>I;u;7;<*^|X2X25zqf3fE(HtQufa1xg<>UV(3xtuinYP3+x(QiH8mS? z{eLXLf6Q+jg65v{f6OnjWbUV*bbDLbFaJNPu~O_s*M&*%Ys7PrGE5nzgC{PTekfT; zBYWC^NEA@~3oYihf|I&4sg6~oWIC#N41VW0&Nb$zrJOD3WK>G;7l4X9AC7GUp0MUuKcwc$ zB(S0`?3p##tO!=IzhXXuL-~8~9DUQq2EG26$}xSH&ru&H>P{4t;!Y!^4G21Pt(9%o zXU+@kA!u2Lp}2BkZ>F-vO|1;)_j)~ma(jsEAiIeEt2_!Zz_}p0T4rw=b;eCdhua8i z6?L)iyB8h|)c>qWBiy=XYy}&WbZu>bX9$cpU`d6-K2GpWGih}>80Qs)ji~*`lmJT_ z)6%1dz-+^=`Lwjz<~rdpIAtC8$3akJ8D6)f^&^xwJi^fYy=IjO{ ziYTVa4?FpeUuf_HX7LFvgWW};nf*Z@`JCmpH^kX$%)tyQ%e!q{Fr7VxAz(Na&7dL} zO&>~!*sSS@fyhPf<76h01*5)Xl5q!xDH+$R-b`kr?g(mTk1eZQ7con#i8d^NR(gMJ z22HKuXAvdcWYo$ng{!r8fc)0Ls`tizZv`CIr$V4_59-9XP1*zp>NiquGpqV|;6{qp zl6*(&ap-6qf$`&6Gx9pm{WCIkw;Xes`1)_gi}efhXqf8hm&pCKwsPs<{%_3wAu@gr zFK6q&IUQy@+#v%iA7W`oNbsvm=Y}66*GNf-m^$VBP#hF(?Zl(O=y({UHWlS#LSnc5 z_hqg=taBH)g62p+M_Ede#$W|o2P;Bdr)={*hIsl#`)rpylX^l6C z@I1>Kypo^(j*F0%@tQ6()E>wltFc-Wy%X|pJTJ9-h3IQO)qBfu7vV$Lp^|ohg-ew9 zV2(7&4%K$A|0tV?Irh^apL_xcX?JZ? ztZR>dsrVZy+4taAiF)^pPCCBm7hxYMa_mbG%O89v_`WfCzAH4Qv0H}&!~5(LwSm?4 zOkoL@=*}YX`?i%2x= zhb5hiw}KJJEn;^KiAnq=@7(<5po%vywu z6=Ouomba(xp*MR#fGOgT87}DbSqXEK+pLVRy;};Cf75H3jEW&>Mag)Tp<4LOO<6&G z#)|mQ$%vBxAr$1OMSN*^363FQwy!OD>c3rJQ$@T>F(sS%N-Ma`>LY6-Oz9Gmgx1vS zE!rm6g$dnkHW5t)!}|Q6V-;&emG8|CS-;&gelC4a3BY27OC|!j{|;&ah)_R@>sLC8~b!wsHdb%YQ-8@JvA0-*@( zmMipLzI@SXyR}5_m`eYkJ?I>uo3%~IR*(d9d4SJ^QQy@_is8(3pMnk=WSW3#=|;T zW->N!PR{ia5$jP`&bZe7IBSvM`(Suf;GjZsGFK091XbG{BlVmUzePfKjAcYJ=l;sG z4wsbWW6s!Qtw;X=zm)IhPwro2Ky`Cc`JM#B9&Vj6xzi>JGYpK(6}v!1$3qQlZWsI} z8apYoAKpePKXna!Eo@Z0rMW(AmQYtDQ{M)WD|a(i*bcQJXN`N@y zyHlftp8$|A;oCjs2(m7yRD9utOy7%6aw78Ym^Bp(d#Z~u!&kQZLn5mUd*2mspEnbf z@Tz#fllUdvZB+j$1>HIvh9`d6lTym|DI+2NaOBHA#@@IYjlfGqQ9BQx%%;9$p+=TC zM#yn4k9Gj?y|U}7~bko2O+ZX$|Gq@0Mk*L^TPmuJjaXKYP( zGu9%Zb@$sj-Cqei8Ol*=;^ou_1%E{#-ev)BFc$s$)|Wkgtao~DY9Bhxg4X9Bp;iJp z-t=ugWgE^ao$?pe=mDb@>FdTPZ-2Q94{Y6gq0LZ|rr%4Cl-t0a>8D7#K2x^=`+-@N2 z#!_JNMsW0G6?vIMoKO zTbX`wXJs;C>I92Hq8H%$IjfC%>8@ovtVhRDJt@9wlpOgj+30GnQwUD#)EOn6!we_P zE1Vy+F(Ki7ez}q)R5Z5w6}i-^SN?Z_5PRba-AcLLnfO2(>kBP*GAD{*#j6@jVh;9K zK(rK7oBA!f7^MM`Zp; z-Uwx0AY4NNMQdEj`;W|Cn#t)2AgiTR2fB$yE;FTafNXv|Yn0g?LCF$PE^)b*X_%{j zT@bKf#XXm}A>b~DUP6SgRbN|->2?xHO7GJdan+F}rVv9KKu@F{5$J*dwG10VdM<&N z1xHvj4*U1I$L+6VF=M$b#0h-3L8RZR@F=ImMqY+)^j<=ZwhDGx54C2Iy8HbK(Kba? z0x(kVB0?|T@^Hzhasi9n{Xd|s-Sz&@0#G)1ksn& z-ZYY7YF*_Yh>_FY&WOYPHBT|dLPzL0zf?oacdbAe1|>}(I@Tt_(x*`vg;bJJPN-6D zrr-MPDE}a+id@3XuL}l)m@RictsKxE`sDx&&cOEYH+v`0jKD*oE#SU%=9em=Y+tbC z`GGbhGn`Q6b==*;58?{^p}Kra9|z{YNf6~`r$mf#5OsN|-6~`6fzUEP1Lrhk4U#hn_T_U2rd8G_8+VO$V)-|N{zs%8UMMs z0dBeNJJNv$t+e$x;nTVGiuR)tU|4P=oWSOY?k1AkIzKJrbGHyZ63tMC#qzWWRRl#4 z%V-X^;&XP{LC_FB!p>el)5vu2;*?cz;Qn|w6@9vxC!fj1i;LYs!leZ=EyK5T3Ni`H zVGd-OXxGJdTF-KY8m*s;3=|V@Pj4<3`;`bp97IsCe5Ma;%iA0bzZVW$Gd9(P)pJD)SVzGs@ZB-+iI6w3DPqif{TP zWLg=1;TRP2;*SC&k&hCX&$lHBn{mhe(aa&$K&4v@r(3uzE$8N%vSje0{50m^oBtT1 zqw~LcQnyh6tBL`NTm%UubA9}!4+F|A$rCnpgjBzonLPweMRSXEy3Ks$npSLqr`bE) z@O^Bo-1cUAqQk>cyN3_{ssxTJxMt3sXu)sV$f9Gt2wW2Hrb6-eKoR+V`E#F&Q;1O^ z`{&&SA=-qv;s(cM{UO0e<}`U(x3!-VOUa||BOE{VYcg<%M(SRDnD4fR+Ple${UiE~ zE>axzz6-E3IFJ*0rS0G-6kdQu1egR~WXj83K*7yPG2)9@yYuaS?Nqn}s-3 zn}rA`Mdb7Bh-34a*cecrk1hQGuJT;1)Hqt*($y^REz}7=@UHd?Q$>V`U*m;6TgxuT zqzfn4NsC>{ca?G-AMo10LE+4ujA&34^%FB$1wW@y8$F4SX_}%(r}8oFL&jK>KA3Y9 zh}TCBjs^Me(jIabqGNF{oHTV4KTTS#Hat&Smq69!=GA2e=V-N}q6d~rOcZAJFlh}& z>sj151cfd|>ma~;;xPVx^CFgh;9qthn2gH13MgH#8U$8YTF>A|KWqZC_61%}ycn2} za(s0IEpy<^+sEc{JuVV9=!y7oDoRRh}110AQ^S&T5SdIa{6+>LHs(Yb3mQ#&= z%slA?5tD>6yyfuVE_W$v&N>o)_$Jl(t^nWjQNQCi1I8p0Xi1y* z9x@@f$%@_kC*m8sO*dRPmQKkNSr#c7p2_vY?-cpbO;wL&n6M}wc+tIYUOh^%;bpe@ z=XaWeV0fu4PLpJa;(r+bt~*;A0!t~z_vNeOGm?t?e9RvibUn|X-Rs8zxmQ#)0!+Mz zmmmQ>c5;tRr-kSGHAO~0RQM|n4tan+xqc-5b2A03w<6OVSS#=n_Hu;;JBI_IHYck$ zsDtJxiX7E3E<HyNr4Lz2w#0Pqe^38cj|nh4Pze3zH}QGsFHUe|5GsTiWzkh z&oOPt<)=3EruV#8a&X7fWgEunBDZgZ%(oyxP+tjxyk{n@E-JEbBA<;GIHMJunb1M4l*$VlR_DkLn$7StH0;Qj|nRr_{ z?``|Vx%om|u^Q-N90zVj6D6)2e!SSNW4?RCa`alQEZ&w@)7edb()8+EB?Yz;ErxHB zQkzAH!RaLs=cn|u{FmwUra+t{trlinz^7&=RSqtuz|2txLe_fm0?u(pS`-grIBULo z<_hz}Yq*?kbnZ4(Tb}|a`&!0VoN0_og%Q9XGQU2TH5>cXy}yF5aIJ|(TLrY4z|jOc zBmkRd0aW_v*I^9Ub}$}|(2$eDYQG6nIdB|((#N{v(Eim;{ov41uk>}8X_&2#ZwpLSh>Os z+pdoM3Le4SjGXaJ8{(ZYV?f7h{i5{&*l)>-)u@1j&xNw#`3w;>)Qp@X^oY|I_>w1R zMG-5a34v?#h)~2ep^;W{pv@#Y3Llp_4;%H1>OSNJr||1bF_JN0u$*SlG(WJ z6g54EPTHW~8}$#GbG0(k)9CqMcXJdQo;-MO7uaG^X=UDEP2K2&vDngP+mXprAexiezMMBEIz@O=<&w?bAlly<}6YUYNJi6&npPEZ{*0XRPEd7hhvF7s`oWUU_=fHWIrr<`)d-!h z1x{QHjY`T#Ajb40ZJn>~4Q(e>mK>0!iGEO?S7g>5?3?!4{4@Bg8)sw^&=yp*KNr#< z*7vjH(2w#7fDBt$G(9q5X*YIZMOK37neE8I3KlovN4nM<*B?*AW0A7*j_lvRV8eva ztkk6j9If0f3K8y%eZo7s4loj~`(9*+*R$KAXziPLyp-Qc{nm1S|}}geY3bJL&^NEr=(S9-%DO5^1ZCdH@{WF5W>IJv6mb^H3E*I zP!Ga{pY3Aso1}cR{uE|SVwNX${=pycyl;p>FlvUcP^G*8Sl8Z0!>Vs39Xkvw2~i*M zr!aAbfv|}?-UO2Et}q5~Vpl+ce20Ex@sAsp2`e(*tPN}<7fD>-2@Z5u;KaN3w8$XQ z=R#n;de4(m6v(b%j5MkDbK1(DsM?~$L|?Y(K97cQ9_rWmDlR zosU}E5#40>UN?7{*U9oI;#B1AZX3obeeQBG4Gi-8HTC2dJqX`e9w{(*CrMI;HCrji zcFj@&-422bY}VHc$yp*cx_Il zr7W|&FwpXK!_i>9BZ7*123ETsq{heimgNi*%vdQ!Sf`+&GjPl+JguV?tx|p45d0>_ zFeSSi!eOu+6&sLz@{sZdmvYiF?P(5hJS^TOx)|h#`ZkPql)Uq9`4}=Sdyn|rCHsHH zZ`3dzEjMwY?>}Ik;{-pzGXAl1!cT%gx_GYt?giBX_ z>jN2sc-g=7JDV;Mt{IhGxG7&1Fiq3p5ib3C5QkH3Msj(-Jw>x6Su&m_;N4EG7b&P~ z26CKcTEL#pSK`TBI3qUG-|qyFPC?i0dxM@r2GbMh1|AFjhr=mP1n9b(7Lm)Tvv1## z^Z^39{BPkd7E$p^JyiLCf?+%FtWL^9wT!u1Ex14Y@> zZoZP&M1FD%caJG4CUkP%_EM6=hv&0?gI!zlEwVd1P=3CtFv7K}xCEUfU&#b>ypV~H zG+)WbZi!_Wagh#?FzIGu2)`$)VhzyFL^+Q)<{(rK5#kFdJAX5`hW+xXM}<>ev1%Y?XrK?a)G3nz zE;iSYI$W0g^<*$){~6IZz%JT)R_o9R^Q}`<pW?4=;(KyFMKuQ7|?1J$c+4l!GP8ttq z{DH9D75B{9O=L32NKu5Mn#E|bYr%;=FxoJwrn!bMos&uOG2BJkFR*Y|e!)k@nO`2y z(23bjR>W2~9wunon*|9u-BVGlv3avSkVw)ZrLwZ#jCwCCivUY`=P`sZ-v^u`2KUTA zM-Q@&siIjbBC*&pr)>xFO4mIIj^*XJb(%zi?`0{REF^i*qi9w`^pqH@EAYo|5w3qZm5lyt^Jbo89|k+38PQk3NgnC%kFWR<)t) z10w97M(e!dsT|RI7KjLO?%WfdY?ZdyssxId&~AL{;JmLc@GE>*j4!vaj z4WVN8^SKH^A0>q-vc+~lJp0WTi)43_mMw?L;q`qstSqw?%%x~CbrTth)Kax+Jn+l; z3UBC@SSn#fqHpgAb?DWedAK!3eU|~4(04BV^4fL8c)-7rg`9Q>9XeVs6?1xNmWA%x za4liofJG2a@1lpk_YPy=V4HdCjA|;7reCUJK!%X}K4J>_-NwuAk7 z(~wdTj8|RG8|KUPc>zoDdiL-XOo32PQONj)9$p5*6{yb>+gBSy0uFZnuF?kC;_JfF zodjk8VeesuHn5Cx;t(&)6Em1cfP_?dG?C8+XEzWfwUk7aG$0$Gku$_fJHu&Ew7E7y zndN1UK1A4k-`7p6!C5$925;kQM*Mo?xrDpPWBRN6?cQ?ebkQ`o97e8s<`N-rJ-YYb zQvovlt!zf;VM}l->%9fVD>}_uup}=GOJEfND|MzLHl-#Hdy5Qwd0Kd&&659^m206ObP?t`zn9cw!3x8j4qm9q5K@qT6&tg_q z_Spkf9DLX^GH;WkWcTj&im=!DunD~Fb-r_SUb8MFTj_!^G7xMq1ROv?EU0>()ihxP z#s6eaw#QxlDmTgo&z||{f_5cPkI>e5nW?3JZ-YGP!5#?V%!@vT%&os5_my_onFXl< zjRheP3PPs(YdcWwCKd1Z-Rv-xy(w{;k7*aZ14+FSxkig6>+u_4hSc&#Ebt&`GN4Y7 zHO_Owa?zjQ6&BcqOm-asj9fMjVCU-=b|IoDfTK0laedT+83V`AndzSqKUn-03sS88 zrhCqg6~SX_DL<;vOwhhFs=tuL1AM~Hv2^}iwM;l#>yA(J;>`8-kym;yz&J%klXgY1L}93xAc3Mr|pF?Uwd1Et*n{cIZ&ma@=9@sKl(PY?}J7nDUX7GcB$eI|j7G_0X+&$9KjY*j8o88si!5Q08dvpqW2(YPTEOSl4gpw`0k~8 z2X3~~$~R49hmx+s`p7pEv~<|rmcVrIhNNAh=$g96>C8JSbWahwME)$zdKfD z{I9xH8`7@D>G;4=t5K|Ft#(0kch6qzc~h(D6RB5|379A639);_m*xGhgLV`L-sJnS zE-j54Jtjd6$MK+TtUOQ0uOutb{^NO%j<@bcXGK#M>Y`dSA7!rou;YovtSc|zdR`7^ z8sJF=YMulJqd%m)t9M}{P4$5P_5GSB^h(4_pXi(ndZdfEb@JNW2E}M}; zAE2;g)%&GFF=Eoou5UciuuC-|Emgv5ofjGdObPWeJQ5c~t$d1LgUqK&Y-?#It ziCBmO8jxaMtC@eb1N-(#r|%&WP5&PY;E_tIN;NP{7Mk_YRgW67{fG9@dovp)vr!hJ zNMHGB#;4=?Wd{B8!wCcPLycr-TInE;EVSYNW;gukba{A(o3!TRs79$h=P5tOvP@FJ z2YimDkCNuGbU<)k#`I3!c$La8=0>4B=yWc`+J4|>RHHT)I4cw23p(>&*2UQN19pJ`0kkvQq^;{3>&Fo=Euxt ze+!xYaiDbqg(+*CYy-l5;E#63H#-k?(GUcop(L=zxiXOTMhX?s8M_KslY5*2sK3Hq zWuWG{PvkaYuT#s7ck4y$6!C_-;^1=0Li2qnjicl{Nz}s@qOOqhp4bYLO*@~=9VQfi zlUC1sZ6)fh**SeKK;|>1jmSrNi`KC(T97PxddoSy^2BDs>%|^7VD!~v-uC-pD2s6) z-{4CPQV$oDBzw7}8A;ZE zAdC}SC!E$wA7nylE9roqueC&p=a6SP7*eAdOi36AzGo#%jauUN*Ts%_PG z!qI@7{e5ze!Nz%(H_nSAo%v2`8jBvq7t=X{5VjxmEdp0OZx-$zwe@963ME83E`D;> z!`MmxiAVXJAx-zd<36>={_2Oc`+nY*vrG2j#qbLwTT!&CyXRO+(MbXgIqUz@#YJbpU z+i`(1n>|mf|CCwYj@N^ox+bRCWE0Eh>spk5h$q5tx35pLVuyF12ITe|mQeL$-LEdN zZuM1j?9O^;+Gp8!x1zpec@`3zNz9h#b{#zwsRv?mRshM&H1>Mpt+n47 zc$s~fyVclKj~gZuzH7(@lcj#|4T~|X)!oRWq#9h5Y0Fdt@)kL zQpH&b`g0|jRt_AYFBR;W{uHExuyO!2V%ua% zB61i!rtH+oJ(7t>9>>5|)>8%g{~x7uN&ga1i2L2furpb}vS zj3GXp3DOsKhF#$$8mMqYBmO41-y-4LPWsa?V>o%Q_xkf8s58Ycv)Z!^w`OL>Pq)w} zVA{z;++-ovTuvkCO_o+HH2Jd^>M+fSK>N)C-j+eC)N_Dk7f14o47Nx6z(9((oc3Qc zD@(V;z81{AjCN(i0x)8CR0r(T473>9jxt=&hged~Sb&esjlTUL;Vf4jCC=48A`dq<*>`B zNVfKFN3Drn$<0~Il=@^Q0yIyaL>^x`;o80oP&Cwmx2AU6x=Z&yzQ*c>{@yxz;FkJ4 zpk+bn(PB}Y7S+FAFzLmVvA762ov1AC#R$G6%PY*3I!aD_Z`;R`A*HuKvo>x=g$B;x zx}QKbm$B zx__ln@Lqi(*J=H?Mi{GFwyH+tGGt7=^Pzb1Uh!F#-HiWn7QzGzwleRFIPfDLr*spd zO%}6&VonD-3NoTI`?sKjjPd$4j8uN(S80Q8JA{tUQx=z(OGm1l$zL|YlZzujlRkT# z6cUfTi6gC)|H?qurs`^j`Ek~vx6okrVcya$x{W7QjAx1R$-6y|i3)7yah>K;n2){| zcRM=5xYDbktx5Ms5vFjp#>}=}*vKFZYtvBesln)J^ug%-D|JA8qqPy6R2oi0fu6}| z_i+@cFX5x>d!?IPRX!A!!GV3x!5xBdCbe!QfQ!LsJ5xDQ$gq6`kNl&YE8i8u^b*j6 zAx)ds|3O54b0cPN^OgKrBENkMnBi?voIuqQ$VaF1YE*D2*58u_%_b)A&*3IZnY!HH zUv1ALcq}kPs-SDxQCUkz&dTNlN!kmx!r3^|sW*e)S#0c929pw!IIghHBa;5NhB4?7 zz^JAL$-n%$cup*~3% z@o-rC&MffJyai5i=>a=FfI&z`tivP6DfurD{TOL)Nhj&{?I>q}l%^14I6~2uN>B^yQhYt)!G`af zVMi83Kjr}tIJG|1sy}R8jS0I`kuB>T&&IGG07b2w9e(;(|THrJX zMdexzloR4!h`q5{eUZRFFtEi-UfKAH4=lw(h70I(i8rfmi4IW_(i{= zr;dEp`!v*gxXWy%Ts`Wfj_Wo5baXqjZw`ra#-Bd2H--TEH>1bnD_&(pck{5xNuB^v z(Vxe%;T$RK_aJ7Ptwc!Ge>gB+D{Sa{!9O*6XO7QsOj$F=vshHA5-N@R*15>g03&dl zsV8b1V(D3+fPb=6v?hJ_hjvM0h1=LED_pg*4=kOw()vl;&KJX)K%i_N%gqv9B_aYW95%qkJR-0frTL`M982=fnwbiM_}POm3h|X|Id)N9@;%fFdWrpL+6T+1m3|c^hO`RGUmtw|yFdirOBH z;6*nHcR6Tm`Wt^_|5-~pe2pR+j)XGvl?OSpDYQOXFEH2Xa7zJ2{%@#&+eBl#e>~E$ z4II-V%zqGrYWGg~FH>dc*HfkW@T6(Q&5s^w?CAf8@I{XoZCGz6V>KJ~TM!)KK8LXtP(z_dkUsjo)m; z)Egh*W-eSMh_7`2FIRFvP^tP_lLVyZ`h}l$238a@B$noR>9rsF1*`={IwPLBkwP}% z5r*-1-fvyFJynP$>X#)E%m!>3MeJ_d{i%VQYbyH^IZH?A*`HopF;qUPY0K`C0c>x6 zY5XgtNeTX)6Rfuc>Z~xq6wTVG=8)~8Sj#$BBZNj1=ouhck162w`cHo%crvgO6fs$x-`szLDq)w)#2gIp(@xUsOCiE{+&9LX>UX|H);hVq3rzju-jDgqH=Lh$T zRhdxorDM*J{Za#ythMs#;d*w~U%R8dPk)9w5m;bnLN7QV;wm|6jLk#n1dN~9g2ict z@zdE3J?Lm~Cf1LH@P#sD3;?RbNBuFm`UX}qo|-{Q*&f&)d;gSw+Dlh0 zznxoobzzOdQ0$6-;$d~UiUW~WeH75)Q71B7n24d!Td5gXd=LbuUPA#65y(kxTb~h54b<1M|SrI^5 zc?7xRLVu9ZZQL8vIt<;~tDdK97ZCme{zDWOt41V-DEhQ)B)63H{4FD%ML_K68IJ2F zs!&0ILM4M;pUWVjG4jbq0`~vY&Yl19>aX%#SVjCQ?iNsXtINeUxAir z=QI29X{JdcP6e(lq_QzRa)PP%D-nsnv*pc#_uqe2o{&Ej;|8?AEKnnR>YtI-UN zphnm82c2#Q{FleQRmNT^2a6A~R(%lU&S)wQJ-!=`i*;Maj%?qZK=NLH%k)@He2!!G z^yNLngEdPpFqM69W$)8Hf$4rkHtLZ;0W4CDkc2y6B_oeOY=1T;l;kpjFT`s?_#QA^ znZxf)v+5`zn*}^8MrP%*HGU%@VFBm(tFfcRT(Hl5P(L6l%4yu2zz;q=0$>-GVB3uNVsSN5zrb$G7aB=&b0^GmXaRc&ld&to-R>&xC#%zoV;CGl12>EGvCid5NfrPB|hBxlsp zqxwmv@$9>42ysLjww*f13)D?F(5SFElEo6gei>?m(RxG8yLyt8y*e%N++hN}i`;9% z07mQMO--Dpk{BxQG8!eP>{8(bO%g8h={fEmup9&`F?{Q9hR8or-HnC5uSh%kqv#~m zHF|INC_&7- z<5Jl|J(9^UtSS4*t(_!gxiLlceWCP?82^8e#>`@<%v%A5d7eeN^hB6oCgk<;_s}C& zL20q;{p^zZlIBVBVNQN5S?-OVLh0&3z;OlIRWEK#hq>?bW{o0rOQu$g3BR}f zo%21Y0C01``2?GkzN$yuru{3__-OJ7VI=8bw)+$K4Yfm;tq50fK`OklOO*xE&3JsY zN`=Tewv#zQO>fyPU%7a7zguy9uB5By85pb%qjgIg?#<%hyoKEHJQ_1Mh#XtK$++bn zdE`>UqR0nQSv!X&<(**`hn{hCrfU?c^V)i|n9SfG2DP-QZj6YX-J?+xEjzxUYB5!! zOXI%2A?EimaET%?ADcyE^Ntj-yA1pJD{*2@3T$+IO#2Of^cr_29#Wj`J1E~u*@!5; z8{L1@*NV^Ljj_{r#CqmX{nwSI&D`uK`>&!T*MeHgpqH>^dx?pi5RR{IE`X#^61HZg zZd#~XvCY{8gs{S~Hu^#xO3JBxhW>gx{ByK@r8Hh@e!HnTRG6dhwuTpT$&D$@^J6C1O&I9sn1P&{V({VCFXdnKHAID51$-hZjdUgQrQvxc54O~pWe(0z1LuQZ?4 z@;DA|CW8zv`tsWAwVbo5K<|EnCdEzkm-Zz3CCGuk9JxYsM8T?%Fg@t#0knKJ~u$8<;5@b^z_XRTw zo)w%;OXE`u&*-m;N{tNmIf4QZ?lIb`*%4=w#Snn!<$9*DS#w#5-B8FJeaxgc^lRM~NnXd&Upddh7#lKszFGptx`d5jDVAzjjP0g3JGR z#iaaZN1^Gs17p?hkV?F&rtpdE$w}~GT3Ijp@`UD5wg*L-mmP*|%k>EZt=RU{k^rP? z4?4^s;sQr43D<2Q#8>U}fe}ei($qa$DLoXVz($W^RJgFx`;23Xg?`~nGBo9MPFPn= z5t1*z=7titl(oL>sb20Ub`_@TiUZmGBe_3yW__CIyH)%#(f1EPLj|<{Q()9fkj131 zpPU*5IJ5bWnT`swNoAg=k`b(mN5xj-YDR#L*(_G#B&!UAWpuK#{5-snzUAqWp4)d_ z)G{Y@+RM#%8;14Di)+c86M>+KV-jG`!{2I|5up4<9R8o~YNA35ZY>&{i0S@dl_?3Y zWDZN!W)q%fU)tfLmhfk$uN>=E`oc^sI{gRm5xW>oMOArwVA$&T{$uUO%_+<$4(k}Q z1Y8!3tn$$MOH5gj=;lQbZB=p;K$`8E%ZW;N| z{@&aEpVSr^-25tUjv5;8c?*H&tj+f?cjM!=C^w5MkU^>yxGr` z@hqWE(zxSU_4Kx6m7YAj28lP`H6n$cUoA^UMu$kLtP?!(rWNZ_#Suo=!;n1LPe+8< zzz7o#z)I5&`ze0cKzRMFwGxQ1`fPjqsDHjM@eF)GF=?YbI7sk!2`o5`R@Oz;V`m~w z`2T2n2ZzZ2_xpR}W}BNPb27KuYQu!hwkK}3z1cQ4o14AaHaFXK&-?SefB(bG^L1U1 zbDeVvV;8zR#2Qww(3MEZ$kV5XpTUOF)59^)?!4?7Eo>?TKZ|?(s7I{g;UGQZ3lV$e zaN`EyWwe_k27Kx*dfzibzomin6chMW(6p8<%J#`>IRbPo7 zqv(6v{GY}EDm1^4No{=Cev5lvj9A_t5n#K+ZUtKkFZCx6-T3k>yTWtx87_`486?o( z5IHOu3mODw;DWA~(i0bXiF&+C?#f^b_@a>$M`)m6?z6hP!ebNnL*4J7=uc}+JNV2J z|31i74Atj2B>qk0C7n!m8k41lL9J^!+v04q(QwPpLQV4S%fdckw~bDxp12UhME@1^ z(o$H63N|w4MkGa&#(%oS%SBSvv|Njxd=Dxr$>$97SI5f!Zm7m-fI83tABxi=&>T)?&{UnK{f3FV_4S>wZo%*Y(ipFBU}W>!R{0eRG|p%EVL2YRYJ zlz00VsXPjViNt0KlGIoFCi-6BszkjI^H!_8KYW%e_5K&XP0Gy9V9ZLgHPA5YRLou~ z=sP2m--_S>*HD4&7=QsL)GY_XiKy$P(ZG(%ux1GespGG0G)<~%!)zv-kF};=X4tl- z3GW_kL!vqobGhlw+R>QbT%s&07+HDn>p=rjtgnB#_^Z_2GK!uDna+LN$sRhkfmIAX z#3dhtLBA=;=KX~p@99F^<_Ka0S|r*!KDXbE329)8zqUAD*=fGsq-l9|4#QL;`w{`k z=TY}}sU`&@(7K&Jm((7rT^aFnpI;<%@9u?K*XC!Nmo{SjUA}(q7nFGO89~Ze6+T{D zKv+%u&2#WtSPKkDO5<)2fli8(w+%V2G2ps!tREo@?hfzA9VrjfPQ})vva0J*hY{!o*kF#+!KShuk$7Nn;R$gq(L?UF|0mS5;|M zcu%BjD#Ik#C(a!(J!}cOP{&?34|YafSvVNDjw>wV#xcM0zH3)bSot{RZ_J#zozmq_ zoH+H+3-p_Z81|(%*h7(li8N&^z*u$SSU)@g8#*J?!?hA2o??+FCF*cO@LYsS_-jEP zqML;nJeB@KDy5t>$Lt{Hov@}|6+d-wVB3JmS7nGNGjun^MRTTY>+a*$XFr@8PE-F( zaOoSC3Q23)!gA~eZn!@v1pX`ad+?Ll$9K=r$-u)Jj}7wGJn!Tz0c$@@HTrZ;f!<$Gfwhj;?j~6ezezV&WXG*aHww@ zn&CwhO~#7=*t~)a1b-b?vm^0)S{+pLuuH&&28P^*zHus;_i|p>bEs=}^Ta7k-t69- zmHAsr+9{yAOn*#7M{aQ0PE!8`;K%U3xWfa_PcLu~RtzRTX460@?=358lo-h^WT6~2 zBf?jaP)6(-7Gt`USEUngBY}&8zB=}?TwBOLA>G+(D|z08wt_6b?u=?)=1uAd-o4Tw{Ud zblA2|`yuL*(b+_>Zog0mb0|T@j;_(@zmvAK05e;(K#~{o;Fw+8SQ^Q-J!Q>FPJUvSVQ1qCqScR!;L!w9%lgS!wsYY(Q|RR7>xZ;I$JJ!ttz@) z5C^^2!pt`(gFa#F*cdqxQTQ%8pntR_bWLJ^BRHK2ojgSQ zzC8zv6~JefAYj!SVHpX<`1r!tN{z_Pw{P3%jjCiIz0!=&60L4HNT#KoGjO)cK>!S= zd1p$Bl_`=lh*e>W=PDazRrnMh0LreOB@$#Fj{FX(X{tvwrz;($%Dax{wN1iV@=Q-W zg^s0O3S!Ur7MD?@@U&H0xstS#4n^M(30XuoX3R()z9XRxyfXuLah_naycd>)v>jPZxUa~WT3I_jR4^X>`4h*8 zc@v^KuIM&!K9l_gRv;V<9rO^v(kVC5y`!;{L7`MYxf7(}J9~WN#ktOF3eo7xpdJ6I z>g3QMtT*#>KrpcX^!u>FNvU#CzkjwykL*TAVMum}ikOWPk#J_fe&8fUh^(JU;tr~o z!tl4xT}oCxblb?ktDZhHpb33ZVdT1|`90?R2LbfB+~srN>n`K9y#= zL}--ng_Lxlc9#jIx%hv7Q8MTXn6Z}7e`{V&1&z99l#SHGx#&bmJ@L*Vg)B7YjWD9c zxl<&wW_`t=X}nRBZk{e?pF6o?FIy7s=Pg4_|{Ry01s`c(L z(!H;6?E?2pkepCwFVh-yyX?0ZR7Wf^`x6w5gz=nQU89iu?QM0o z^-H;z6PFz2VwhoVR0G*mB}@UBk-Y(&p@kno22oe-sMeZC57@gk|NHh+R(W4hNFd_S zU`RoiBP|uafOPL_V=J#$lfg|08lVX+q_06T4NMdN+*vdjvs!$+7TzNSMA~qHzRz+I zxN;)~*1t#jnYdc$d)x(dqx6U`to|&z^mKgqMEZ8RLy=M)+ARdvZ*)Cu6q3W+`D#(x zMCiTmXbJ+&Wv%|DZ1*T!3?xbm2o#jm5GIK7xbknyl$&qFeMhf_GZ(_BgPF^=qZ^_Ld+EfFu5kM9f6 zMnfjD%tWjU^e_O40UTHe#l8D`)qnV4xPnf;jFgF6^ux&C%idTkXF<$rAKF~#M#=(B z_}04bNobT%@-GK**>2r%igu@Qv@gV=6l7HgonSq;99c&ergU^B>O(nFyP9B~?M3#d zg^1}2|FAj_liQ+0Vf9(2oV7~S!D$REP_n6-BR+0iyzlr;dbgO};#e{8@oZoWL z9W?okp%6rZP7nZ(lTxNJJYPpLT71wx^OQW8It^WwH#v?0Vmxh}8eI6d_f{;u8SKH( zxaPZNTstcca#F3o0{LI3Udh&)Ps~hPOfF<9G>ep(cw~9bUI3X76b&75%D{Y0`sHpIZne#0}xacQ@z0W4Y)5xOUaTw9A?;8lLyim zA!-C&bSamXhMt7aKX(c2#|^a=kIOAz!~@MA!=y?ynoi51GPCPtjZ)+7>W!I@YY0q` z=EOBf=3jms4iM+a`ido3N$>8H+M*Kh3%>IB7dSs3Hcpob-aS5^5_}>ONe?g$oJ4%U zT)|Z!@i;)IX@0h}xghvLJV)Z(G*}^VqJURwlN*;v6nc_E)D|h^oRVXqz}F?g zz6-~H#E&lVXy5ir>(dJRimTomX}3vJSO)lo${#&z&^S)t#4G{2xxO?sV5Xr|O{T!- z)%&%iSw3Z}l~KFExV^Urw&zBJI1AfWFOP%ghYjd0P701od4On)!0oX8!qH zBU%={>YFpl$3w|xeal|BmKVpQIW6_8o9G1m$K#{{fS!cpfUvk^qDm~(dAG9qfa!8< z4u0+SH-d(Ga{GwQ9D5r7o?XDuy@h^AIlPL&*}_$4XswX&y^@e*7b|x13mOU~ipc%_QJ%(MX7SI{;IqsQ>3Fc}Lf<%b1N2>>i?(Jb@G5aDJ?^WDGahG6wJp33>!4P~<5r6l{<#p{AGhQHwL|2WL|8tcc;q^WM3}S-%lNQ=-X~&DdnR-e zbi5tc_5e`FQQfX0%`ab1X~!X2-_TP0S(_G4ww}66u?M&YD8KT4y98!V8{`*!douoS zA>j=D4(~h#BEoIAWc0i}wmjVWp4<$lvtV7&$;*vdBMmd?{YIkq{?9T$Ug@1h97|Su z^oYRWcA<0i`H%f6x40s1LS^uAAF{r%KjP*ug|T-fieIw!xm}Y+cJ$yx!-9rob3(8L zO||a5;rQ|=hw?{n8RFzMQrjfj>po=2Qk_rv%s6kNlq!E;K<_^zk(hIK$*&_tZ9ykO z-7ZM>;>lrWBZ6(LER(h=;;r+P0F#;~nf2+9 ze>3BbOXv=@(~q8gQTd`vrjTrG&b8&SaFPYQfv*tf6`irZyC3Nw2ex3cA^CP_0z3m5gP+k*tcr(rdd?tmLX3L zn2ZMA`fx7-yEyWkLkIpS+8q4Rl7Am85(C}uw!|^pzro@#91kM?W5b_Oqfq)`D$pYM z#6}Jgsl^8CY;_f#cTMRu?Xv!RNbI1j;87)-Le5%u+~)4`p=J?6xR6xyOtW~Gm3J=H zYm|e58FUBhpZ5=XIHi|oq4#O4@R1W}%jlcDmp^osV6TLq%pvD7%eFvVPq~l4246

        0<%QL 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%0D=tmal6+nkL1avLZvlx|CtllCuqX_Nlz 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

        W^q735^A{2lL} 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

        VhTyiLwUN^1l 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 literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/editable/expression-editor.png b/content/static/2024.11/images/editable/expression-editor.png new file mode 100644 index 0000000000000000000000000000000000000000..5660a432175dc9194c28e7045749eab1b184a8e9 GIT binary patch literal 8458 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 WI~}9SzX5-4D6<+}hLySzum3NR1EL)O literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/editable/variable-editor.png b/content/static/2024.11/images/editable/variable-editor.png new file mode 100644 index 0000000000000000000000000000000000000000..8e4504cd4eeaa8bf6eb5a68b48f623b6fcde658a GIT binary patch literal 9239 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 literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/exception-in-viewer.PNG b/content/static/2024.11/images/exception-in-viewer.PNG new file mode 100644 index 0000000000000000000000000000000000000000..139faf1a8a0effe2d43ce25ad04d7981c5b29eb5 GIT binary patch literal 22188 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 EU$yK}od5s; literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/execution-in-grid.PNG b/content/static/2024.11/images/execution-in-grid.PNG new file mode 100644 index 0000000000000000000000000000000000000000..6239053b26aec35a15b36f72442c1915cff4f70d GIT binary patch literal 61676 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 qJh6ZR2L;32wEl + + +
        Input Port
        Input Port
        Output Port
        Output Port
        Text is not SVG - cannot display
        \ No newline at end of file diff --git a/content/static/2024.11/images/flow-error-status.png b/content/static/2024.11/images/flow-error-status.png new file mode 100644 index 0000000000000000000000000000000000000000..75eaf5533bca2edc25508997fd583867afc5f265 GIT binary patch literal 22260 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 Glm7q#Z6UV+ literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/flow-exception-full-configuration.png b/content/static/2024.11/images/flow-exception-full-configuration.png new file mode 100644 index 0000000000000000000000000000000000000000..3d8b57780e067049e37fb0fd1de8782f7524ac4b GIT binary patch literal 37091 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 literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/flow-exception-no-configuration.png b/content/static/2024.11/images/flow-exception-no-configuration.png new file mode 100644 index 0000000000000000000000000000000000000000..26eb9baaf922146e32ace8d6b369bbd5617202be GIT binary patch literal 19715 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 X?@ZBiVTx=}4weJuZaszrfwulHsL=_S literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/messages-grid.PNG b/content/static/2024.11/images/messages-grid.PNG new file mode 100644 index 0000000000000000000000000000000000000000..768f9fbd99fe0f23d3994b1615a9b62425731fa9 GIT binary patch literal 19180 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 E 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 + + +
        Start Workspace Block
        Start Workspace...
        Action Blocks
        Action...
        End Workspace Block
        End Workspace Bl...
        Handle Workspace Execution Block
        Handle Workspace E...
        Action Block
        Action Block
        End Flow Block
        End Flow Block
        Text is not SVG - cannot display
        \ No newline at end of file diff --git a/content/static/2024.11/images/reference/concepts/fundamentals/variables/what-is-a-variable-command-panel.png b/content/static/2024.11/images/reference/concepts/fundamentals/variables/what-is-a-variable-command-panel.png new file mode 100644 index 0000000000000000000000000000000000000000..88809b778bc743c14507ff18b99ad2d9ee121005 GIT binary patch literal 11548 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 to_oNDTq0K>`6p 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 D)wc@h literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/reference/concepts/fundamentals/variables/what-is-a-variable-exception-panel.png b/content/static/2024.11/images/reference/concepts/fundamentals/variables/what-is-a-variable-exception-panel.png new file mode 100644 index 0000000000000000000000000000000000000000..3d9fafa4e1d98216b15fa2e3b607468cc820f428 GIT binary patch literal 30153 zcmb@tWl&sE*ENVsumHg|5Zv80xVyW%26qV>f_rcY?(QzZt#S9@E{#k>p6C7EshS@% zRnt`zaA|Izd(J+4t+n?$;RlYQ`a5e}vUE%nU-~_)V)5x;Z2fm3>miidgJ0$}l+nnv;OdMM-MzaN~iA^-E%P^SOSmww;0 zMNo7C(c8TA=)`}>GoGh&TK&8<)d_SsM|hl?u{%gX>Ivbqt$; z&Spl>001^`vR01~KFQEC#t(Jz-%A%p6@e-zgI+XY8(SPdKw}21w z`GKN^oO?F$`}3oGr_lC9`uWle3gh{D;bz)F>2)$<8^U}AOxt6N?epNO13#lhq|TR<-zoU7(B6-F=ey{sp1E! zccq{BG&!ZYpW!H{^4~$rL_R}YYuha%p3PfWdZ1RmFyV0M-<%zsK0w8zcZSjQ0sVa3 z1^r(4>#?k9JzCu{wzm7M`8;MC=P%CUWA7j0-JRV?b%1M_mFW@pBF0%gsT_*!Ex2c6 z_kNDbb(Y(IJOlk^ns-g zY#kApv3KzCg`e$es3<=i>O_=#-;?{UUUH|kRCFC{Y?w?8K6>#J{%M|_@p~Q@-@1R| zl51$1r2KiZ+>XV_Mvtn`Xc`ULC}9J?1zs+qb8e>|!74=WHipm2gFF`+!eD8vX+PBVFQ!crrP| zqJuInS%rM~@9ir?l0+ zU(-9DTCq;u245=uT;2Xgwp5&)idI{%Fk}F*{OAI_Y`AUCoDZ@;tJFL~-38t@q+}7scT_ zvN~DLaKw*xHikAh!%0rDii8qwyQn|EO8f`sNDttyR1Qab&ZGi7-)WqAp2+3Bbob5& zSk(Ef9lQXOZ|bquo;rp)Ez^mf|2*GS-?g4Ggt=5YdaQd`v^OEoHiSCUKWF@o7UA!p zzAf#PV;G5Ax0{?O?@qdN7%xcL55?_Ek`4JrA9cBY@S>K-<<{xU;SC(<1`@v|JxB2Y zHNzfoWQ`qV3XRZ754vw`5+Qma4kn z9hF`PmNe@E=9+Fc&D!qd-3-%op2jK_T->3hIuiG6Psw#+Td>!M?0WZn_HY~V&hOpS zH(;EV>q}>Yx|G zAB52|Se6LR!VBWr^W9M?)qA z#0z+|LQnWSpDA26rY>AO3LS*z;+=Iu^PXckuUF<|NI&!P`Ol4%?H~UAfyUaY9@J`5 zt}c(DXVrm0X6>{|5F!#Ycy!d|JZA5C=TbaQ*5~5V$mJG3)b7VLxf10tPX30MQL={6 zTK7+hRs$cSELr;KOzJ%D!6e&GuL{8o|DFszvnxE0sLw@t;ORXlgO~kjne&W~R$aJV z^Kzd^$sDgklyT_&y575umD#(OM|0jDYNucgJNcY*PvKc(tKG9-*)^xGU%py}@+$^u zRHx|ik*{f=|4QWtQ6#qYhVqrH6G`C%cHL%#bzE$C{JjP{4T2;}OL{+G>v&K+#S_wO zo!uYh#b9Y+!%qFN<*r3G;45Q;@qNr$00T@5Pd~d)@>Lq19rP{I28z>W1Xs#yxm)#_ zZTsR{t1Z${8y618iZ>Rs-%_C4j^Ppd{#ARwM5~@xICFxt<*(lsGPhGu7atty>m8|H zCh5j^fD3H^U-~nlM9#JQFA(DePlyYaSy^)5($jR%Kr=OU|4A>K%|v|z@C&19bH8$H zjAe_zX;ES*3gZ|WyH~H8z+l> zW`z#kKBmY4n=*H+^X8|i@p)Ki7vsBs52C>)6_DiMLr$2|3CW{p*<0FKCUzN=dJZrS z&c%z8R|hj?Fgnr#;nT^aeM0~084^w-WJM4OV%1}Q0q)(3`ge|rNOiLHh~<77nDG?* zm;P^}9D2`-u5FJw&6s`Plh>vj?QT!4k=*Yd7n{V8mOieqNwjj{R?H(8r}0+GBew-7 z!`Ka$5Br|2i6{8-w#h=Yw@lTPqE6ivhOZn|ba?O+#?-5y*ynCWHj>KH_>nNzRQ5}U zE}f5SPZ;*wI;$99e(>987VH@B47buWzG>l$UwZ5z*AhnGZQTT}@5r=sz` zG;W354&8`>UZd7aQ}Z>^ZDkPdoyy1DbL=s0!u)zV%%fbTf~bua=%#QAdn6JFgr$K! z?{Z6Whv=iJKy$9p-y8!^Rd>!dYl3K8)Bm~R_w2=cUndO(W2C(=Al3*6M&wgwFJqu&HdvBg(=Wv=PLQt|9rboq-V&AS{!E<;;aytM1Wt4Wo-?^C~?{t}?$ba)gKA%qL-uL~g90T&W z9WW%0m1rdMQ{gLlbxoM77@YuizX{dy?L}Pcz3sVTU48b2&(#8=ePSQD!OydRs!=y9O>ijdh+abgD&+e8h82XoIP&T zlZ}@f`Gsz5nJcX~F6W~E3_DA{35)F|D6YEJUtB(qb*{=hx#LaeLr8cIV>ArL-%U55 zV0|9p`Cm{Rw{6bQO|FIqi6CE3taJ>|@@Dj+n#$y6>z?77Ycw^(mJx<2h_<)oO`IEt zTFLIbc#dFYHy^@>6wJgTW`*7%nBDr2HsW?592T zp9WY;3aDGR!X!ZfaP3Se5AHu|6fSphq8L*~cK)T60*;6PK&!*^fhsM1)5y$V=-b8% zv*5+87d(njO0If9DUIP-AB240kRUc3J9UyL`u30_tm9FhME_J_?g;q*D}9(^IxF-~ zP~!4SXS-Z%iQ2yFKU7qtvA%G0SXeEP0Gvk)e;)%S?_f01JOthC)c+3}^xrK)kq!g; z#iI%Piv?+b`^``*ON+hH)Sw?f5bNKkQ-qbb_d}h<4^A({P=2r% z&r?Jh#nOL^vGYSBo6NeYr+D|VRsio&1Ap^$Bx`fWuxR}Cl&$T0i^hF7D1PZu75?zv z3ZUC`RA{+WW4yK&_-ioWPvP!;oYubuBQ+O+D6goX=e=8TwxX)iwr|I9TX784`mp|! zfTvD~E5x|T18&`;?Jiy^f$fRV&tnjBD1!${J=}!?g>|brIeN21o3L9T$s2lx|F<5$ z4r1N=@Wc{PEx5EYt`^O+HlzKXj3wd`|AuVK`#r`_oP@9-aiDB+11kjt7c0V>%%A0} zbMEQAO;2q`Gl3W@s%_u`x_&5y&yTR~m&ts8=l+?PUf;Xc_2PoA z+}zxc1O(+tJ@Yd&dC=0mOe?&>yR~=c+m(K>wu@{<%^=cO#|_;4{Io1S!$?C1u0D+6 z!;oV$huOx#1g_t*E8SF5i2>x9FqQ&rFPz6{0M^KU0%M8tt}im~pA!q`ePaA!KNK2{ z0K(UB%RA=J+owS~d`l*O{dPWu^Bh@goj+XCO`}o#eR;q3b~B1CpZNy#*f(xf(BV0_ zm1$vxA&!3N44U8L{psgv!Ct|fhW_G9(NX(oo}!`>IrzH&X`_c{;nD!-(KP;`vuNyb$^_-`7l`dx^ti{`G)<9h`(=$p1*l& z`zY#Cdm~tCPoc)(2Y=HGe8fZfghe{b9LV{; zQR48=^2o%&c%AnUZ%OOD~c;5+sc4-xm(;f%f_I@%oX10zMre7(=7u$s|#L&fsxi{GF4+dF7oCwRsX z3-n_*=$&ae%<_#OkoU&OL82Exa>H1Gev008|1z?O#NIv=+z+_?Wt%pqsJ?prv}NuHm>;8k zMeWEiTRYHfyS$&j=xtQJ>OcTq1OffPc%PJc;|zUQC6E1lDSpaL^l{i-@kzkGZ4=b* zW*V}vq7ET`uXlbZmXDRMj|?~TY0cL})lUriLW_{47u)mEn>&LwFh{(eYir?WKH5;4 z>TBNziO{;^y)X2AF-EZD`o<~#oYyvbIlT0U{vvWmVNmsf6*x@`hdr(BI88iDG#UZF z;6|m@$L9=DXZMBeyl*e&+e|!cdOb5Uc&&Xrs>7{{q;NdY?+7Jgea0))?In(UOD029 zUrVMQK{c}ow>1xOI_TT`?dWX;{rf;Ik_Y@!ASzC`$x=T4%oOQ4xH zks7TYa2x^SUT@or#6OOPe5>S$`C=%|-k`xlFlu6aYf@gMt4_P!Zc8;K6{wpqu@c>n zu?LG8>2tR9gNXMP*OT6YhVg=-GY}R~)}`y$+r9d}L?PB1dB`vKg92ja=D)Q*9EVe6 z8f5SKM-pWvXKX;+uJ)K?IleskZA}EV%Qd;b@V;D4RQ9ND{+JYc-}2x{G?Td4*j-sK z*A(@iG`zie`ClIKrF4hQ z9_Yq5Zo*2h*A_Ox50sI{mVbGy953b4)dr%Ttk=yR)%pE{;9m|;pz6q0UwGMnF&OuM z;XE3514ph=MoPo0T>0nshr(?cLaZBqqUrEEYj0{i^{F?4YJVnAYkA>ul5$q;*r}YA z`uFfTkxha}E1kYXcXr@*@*+vrczf3lo^I;Juoys)-J}l(4#-3Z^J=AtSu@k&Q0}1Zu|3G;dK6}yO zM!sZxUGT*hYHF#m_r*Ys`n5e6U3*CUZ)qe9{#S&41%yOhTu`oXfnBrZDva9Os7r2( zEQh%F4Pxb1%a=Fd*V$huco>-Hq^whp*Ev7B?HddCb01?}0UKqzg8!Zv^7h&a093>7 zER^{hvJ^^(zw#84I@pA`t$~*N!0D4m0AN##R-;N#Hrnuvs^0g?1bZX5 z13%yp>V9V5q8dDB@-2`S5?K42pH*U5lPW@>)%fr9SrD_M4iAY4mq{rxTXRn?FCV2^ zonclIe4SPs@t!A{SF4Cck6NMo>&})Owu{CZbz2=N`_Y^kCp>p_DtuTliF1N_7_=Zt z0mG6KXjhVo9$m9v`VJ(e2>*UCWi*v3AZf$p^Kb^r0A2HZbJ*Ns>3xbv-T0FFiZPJk zeczrstPB)4Ey&-!KJ>r3C@b0bt8wIOHh(pNqz#%d2cOBec>S}ejGuaMkn!20-z@7gSWprQOB z$u#zXsdJ!s&+XB%24JT-Kg>Mh;T)CQF8TYWY3UL(J#uL+aqGv2Vw$N|GWB1Ut;oFk ziUAR}1Xf&##RU$PTDhzFgS2I#Ud6SB3H54!mV@Ogh;(@7qEF_~tLPKRD{I&#ZDxR4 z&+WIk%jb?5iA3ZZ;5}K?e>PSVM$oJ z!!*r3+5_)4trnHv9u%sqFICZi0%E%j9xG^Cia}(Z^{fo0SUP#@=-s3 zU1!V11Sq&tuoEy_`Nb*nE@LwCW&|Z{(_CMFP4~}L;=`VSfPctDBbGi^wr!nSC3ky6Q?zl~dL?AsjdsjZ+T-C6aRQ5GDwwe*WVwG;KtD+LR zLN|4&Z4nQ-IYOz*qvcN)J@6r%ZEQ@AZ`Ali;y5G*R4&-*JFSU7A&&RFt(E4Aa=j+EUB0 ziu@Yy&#|w^#o{;DJ=`0Dv4lVR>4e&EGo=h_8oiU=CTq*b<8AOC_H$O1wdX0E=pooq z7d#RT^=z>S=cct4sUTX)bD*-{wz{u~L$(X17YA=-P$cH|IMX9Gtw--!Iaf8HOk`a* zvap^R%(4$bw5yO}l#RmHC|w5D9JMmbF?nS9?|q;y;eI9J7lUR z{WT|3kth&>a!oZ5BeT$ZYRE?z%0#|V1EM|7EH6YJT71x}?xq*R=k7zou~Uv{q9`H4 z{1OIWsjpsktuUk*hf;{5W$tKMud)VT9e67oA6S`~oab#Bq2;O+1Sj}3*9KKXq>aLw zeL1q$MPX)$^p`x@Fsq5auFyWB(X|vocmFcR#0qlWff&$g&y;GNZz3yq^n;nV)~j^^ zO97;p875w8eK=f>UuF3i8wZy28C+5+>b4OJBV6?;==m%=uv3Zhkkl+Uiy@=@K zqY~m8THuF8`wv)QWtH?B;gDeN9+8@lpr%Z0doV5k|6O@Rgw)iTH$$_!=88`{Zrsf$2v zVGdIISw%k@&Qwf($(GFXN@&qW0V*HI7ea}_dQxlJhR-gKXJb&JW*%%9mxc{5Ie6CD zsM&{TDKE*e1FrFQWP`E{Oayd$8yuT{EujAJNvWpavCywd!Et&Qtph_d!J1<$wV8FY zpO_#hnHmaj5*$G{Nrmahj{f1Rc~?+qSkO)sTT)Nu+vB$WnQoHtQRlnh@_YrFNs7JI z?t!NvM=E+ zkF|ArMqirZZrwi+3lu^!ogHXMVp*jhEr8tW;SYP(YJfi(rGp&~S+R-SL?n&w11#8K zaMr^v{yy`h5UL>th}~hi1tg_Q&%#iAN~djEIfMk?-}VL z$t<6Dtg}$B9~(7^C?pz7CX>?st#^0?Dk<=e%u-mX6#446#+7&HZ64w$HoEWN*CR8N z00%4~4T`?m;?e{ex{IBpQ}n>(F(kWP^K;dC9I2cYc`tQ+$}9|(lt|MF3A~GE6p-tq z<=D%6PJv_3ExXaY<<}Y*@_Q7-DtsI19PbRA-|h3ru<{X^_{j`R*LfilF2N*gZZ>~W zNO`CF3fim%q&K2(r+Hn^5`?3PNyq5n<%6*&-LIDpjZZSRF5U-^2}d`^9!Wl}Agq%} z`M>i~$#`;0_-#p*S!@DX<04SSR2z*Je84>qy3|QU)VK?!f88^}fjP{ZbeK6}GsU^* z``@LYlsMg=mC%-GZ?(7W`HStrH(n$`=n^v&-659n2e&&r$lzmCh;LH~jY9Xk&XB>j zm|8I8mGE$7isS1YMAx-q8q!hydFceB3A)Ele__yD+7uB%Hk|oaugXR35quXYVMB)h z!<7d9pDtMsEmbk`6MpA`|VXGHB_n|i1OM6?FKLeOzaus z1urSGC^G8v=|IK;+plfg;KREz2wh?uW=jhd9@BPfgK&HjY?qnQClo3WZ=@}%1jKm? zH^%?)E!2w33P|+T-py}?Nk!4ZOAJB8q2~oGhrC z9+O-jd05RCQpE%gZYG=|v_WAquFqy#)Qnv4l1BVg)F>%w!PtC~i_t!V)Kh7?;WfQA zYa^NkQHcK}ho&Kq|3dSXVq-sLPcX4OD?p3JX#dpRuv&@v~=XZLE#jjN9rt3l0+qCsA zW2RQ+pJAlcniWfY2xk6$CL;@;4X zY+}LT9|F!wKOtl;3+w6S)ju1&llw`UakioR7d^Q&BWYmOv78Ne{&b&;S0mRf>S3k1 z`}(p@V2O=#)tA7kU%#a%^9$Szl#?_X8-`nvVl$Nz%BH=h6lcQmy|UflPXu&A+N}2@ zwXHQH4H3Qshd@@llS@@5{!LF0t>O4}vQ5@VpvbD6<9b7Rr(=m*TFHY+G)lA$6x zL8}HuZ2&byzej_?Z^SF=Od+KlDFJo=@`lTYZ@CC35~6WrO&`TAN)~bzk0>Bh_grT! zmjM*gwz^f$|?oYV5=RoOaNcB`?uyyxnj*v4j7( z(zM|@qHl$(R>6M4#0E)LxK!6LUn*i?xcY0eYR_2&XK-ql}YPwD+ zzv{@IGqCXaw>|?zAd9XRF`yHOlMsGKe+9LANQnXdwHFAa4bU=eP{fP>`M@Ib!;v|d zvAPohsie6e6>zOI6MbSI2IgWHm6euhaQOLB*)^!M=H|7KknxPiCAFAcZbIACwb&i& zEmjsj1_S_HC|MsZPBed<05&g!g(7RgKyG zPxAy-8(#19m9%QRy+_qKcC@mMt@$~1Kw#nN%*xQtE*q{L_~>K}rr^Crhbl8OQGb9WKMEj+k0B*m-Y>O;@t^LeIG7MyOT9 zq*mxni8y}M)Aol!wByIFwqfIarXcv!#11CH(?a{4_BiD-0GD~)P4a}0#D94VUQtP$ z3_>uAvan;pqglOUcSmG9*^FGZALuny>lH=`$hcs=D7GqJU$47{2UyXvkI#0?V{rwy zF&9}UKZ$5Q`W?!`)A_W7m|zDP-WR|kCuZ`?J0Zhj}C2eEK9P;ZXB~uY%r%qg)A&1XS%t)@N zK5peDWLFu!!@m|nADsbv=5YY5q3*pPP%s3E?cq^_233W8GB(h#pW|bfWn9l*L#215 zVsD$pKHFM+n2FzAZEwf3SNzRu5#smJ^YD%V)>4B!UkP;6&)6}6{_I5)tI-HfP42n(wWO;@kd2sF&ItfOKSDFqhYWO zkkq4+iSx<`O*lEni}_?&8;06m3+G-G7;8hPjgNL;s-_~(lDyS+kX)bc9c6xTGED<5 zVy`?WYo*6tAR-yvptCtS5+Npqz`p7;2mwu5n3!fTNZKd>B{(jz z#uP_lDZ$}2|9A55%bwdYaWk69(YwC=V@Ys+C5Fnc3uA=dHzgsK%SrgJ z;Gsrsd2bZMiZK)^1uA$*q#@?Z)$;keIuShnS#`jhDIr6>@?T1^EGF?IS^p1b=nLI{ zo9(Ets1Nw%q}o^pNC0E;9%R~6%^!Rt70Og!Sso{*;>JEW`}?DS1N65&Y|fX+uPfwc z%$C{vNcSym0VK7Bko9hnU2-+N-#C?_zSR%aLwiz*(%0wTuZEsHJ1uLYOZMhXjqG_(h}`7Bh=%cH7vwT8M=4EsB#dF~=g81m3T2q<*Jv8kwsag1JoTb8o~7s{ zhqm;1(uU9Iy}^^nw$2W}IA|pRZ7I<=y@(a`#kZKKf{Dbv_Az9T8JH#(Y`RWX!oxFM znP!2OrMoT2Hh&m*TowJ^< ztb`i>RvnEE3c)E;@>~$LW~dyjl{`{(Z`WeV)P(tSzN#{rmAOq4LoLPBE&$!%s*;<1 z6S=f29Es~~><|@SFOVu?5Bosfm z<2`!Ex{KaDP3=4*h#I2Hv%Y-HXb1myL{)*j_(e59MbCao-^xW{crGI=}(Spwa1 z+#68)60;@Q@Mdx9l|u-xQy}WI>u~AYy_v&kn(0QD%Bn|;R++Ee4xiiJHh!243FTy3 zAP>!*!35!1o$(mH!IUS{>!(xvlMC7qQg$pFkqwnZ+tWK%{{f^uMOfK-sS`Y(Sqo88 z$E1aj-{G0bHXjbCsc(36yq6~;!KI1Wn^KMDFzxkVTH-i;4tqusvZgmG<+{Ox*|K_kC^r@(?|olRd24@F%OwAuzTUc+VIV-u&me zVOSnPhCk4q1VI%l)u9X4GaBeq)#uzg!BOq)FXH#hJ9%O>w)OlHAyXm>UYs=vElNoK zhBn%AYuWTCYqI_YmN|5~d$wv!N-A1Xip*&Z?m(OGBFGWdBha*?aA!Vw-D~0_)%z9& zd39|V#jr+m4aSO$bIU{{R8;dvQRowyCKL4k_yU>%9*d_a1N+5$bkgSVA0#$ z%hLutAKpCVAnj%^2;Z7dD?i8X24paOEgiqn2BS!R+|T5 z8f}Nd+k_Yg+WwauwHP&y0=R#HU1lU?Ez=-$Jqhp-&~m5mGnJUkJ-)OhTuNJ9v~2wNJ1p1v#YV)_wRx@L_6K znFuVAH!TDO4)L>WhE~I(BGgVqV9TnJ6*OTM1t5H5EvXHPk>YIKy?%T&J8rX1i zn*0-z#ZLT4G+x%R)(CY^c!Jwb?Zr8bd!>_~4xpqt($;Y-8_XiLh{@9TQmx8m#;%rp z^$_Qm$fY;1eD0*AU&`5>06usREYr@JYNdQ-hZlGzq(bqti3h83rO@hAZu7ZrE@>TW z`F?I})YK)L+&OB&e~ZmU{J#X|GnAUP_TLyqC?Xto#cySyv|fw0cFHKRyya1mO~Y&# zcvaIui22>k+$FkgIUmN`fYC~;&<*h?ClMcM#_h^n6{d|A+thv!*yOw^h5 zCIhS4>%zKV`6mLxXdDqvx@{$RWl)2 z5jvEb74w{uQ*M>Lg=N%rLr-^XMprXr7MF?$1@QsDxcG3JN2E8FR*mSiKQbYx=d^ia zFmKOB#GW6ybZvWdK^|ItH~HI}s0UM~nfsqOqThljKT1jknwN`jJ@y;3FVx&kO{e2{ zYFZ`Aj2$8dOxJf9f`g#7uCs1#^BNUzWu4Zh>tc2|d23sx~M;Mnb*;Yup}0m;Kr!msDa(py5e*3I(Y z+c{V`57%67%zpLZmD2-q^#_B<9d7QR^& zG)|~7*5Kr_`-gDY7c@<<{LQv8TVMr|3TjzA_g-bv#E`_oyFz^Z&zEt<1qVA8KOVub z2O4%+t%3}XhvtFm!v-HnB&1@V%VoaS2~f-svIvVBQO_4+}o=oKB1`56NY3Kpm|DH>#68l%6vk3lwduR!_hTVphuy1)jO!z%1 zPKDtuXcqCoEnXO}btu|2evI-N;Af9u;e(iEyuiSi$opFUo*gepnIX%Sy)G64p*6Dq z)0Z5@7Tmscr~Ak#ucd$qUuV#h)VUi)GLI^Zpd(J%6%GfgHZ>ziF78q?yy7bT>p0^I zkT6Vg>qJ7|b%tyEHGs0@&>={T#YT5a2?}Gz{K7`+BPYR0l?YRn3==y|0x@t`gLrpY zGuhCTGtraPt@>CJYjkdrOp}f}OX-TCn}s(WmUNa_Z1r6k#L!b^Kny(@#L%}m!>`KX z@SSr}%wvO1eqX(lI8@U2f?{hP9?C1NQV zdm380JYj8i3=|Ie9QKHn15$GXsrr?-rj~`~r5LpUz@pVPd&*HEM564jn=6w}k?_x0 zJF2W=nOi3sTf86F-IcLp;HG+GmDLF}>{#{fH2pXjO6rgBf;{JKHn)vYQSVVP)Hw8^ zPL7}}Jru29_Q|+pF+1hYZN#}XFIqs~F=5%HRYICVO(`~m#v>lIM6!_7TdPm0UU6)g zGSk-HiUKlmOkz@R+Zy;X1g7NYQ;f+Q-bLQ}0o2J_BE>ODy<;GEw$)t@`SfYRO39L7 z;T!89W?1S7`LyA&G)$S%YL4uX2z=UXgBP7pnP(Jjyp}OJWbv;&P%rK$E+RL3MeZk? z%!+wt*IAQXE9oL3%6EXVAfcJ$UW^JV8cf&7OG7&C>UGDAY$Q}Bwm-=Z;fS`*EfO>_(a)^3qhDNM<9xNj+j zdo7O+Nghv+(kaKJxe=54@zf%{8?(QCl^>&xA{%i*G8ze&0@ z@d8Tnf{Jpj0F6&7#_%s>LcEyD!nblwlqbK0XNw$5AEoa}>vM3^ zjlJ|G=oX+saxR@Hl*ct!>I8Fb3fJ2>xpU&|mNKK}slBm=se5$I06?9{DAz0!(W;%d zl)U^PUE@k%N(#1Z+?CVnZWp#eFE1B2qX{G z8G2!#88J)g2T(c>0|(h4RM_uY$5gBfqqaDks7xF@(IuU;O2HSenXJ)IotfbXP7Sb` z6jQuURfYs8-yAGc3+RTR!Z)ZqeG*iY)hETP$7&hI)JFgLP*qKS# zu5+8^IQr%`k1X9ECRc)ZX{=>7^r+pxE_`Q(0y3wNMG5(qFA7J<<78{wOr>LGi3S%Y zZ{FsK^;WjYVKWdj;}^dVE*67c-~U)cwgw|Qe+&uA{S3h#cevmFaa^kE^`Y^?u>XB} z$N$rWfx|}(vS^Ep?EmyjbRE84=KYVzkaW3<$$^!o^4;A_A5>I$QTT6D-eU0Szugv+ z(5nBMP2ddwm)XSd@w^vh4*zZMp~l)H*7dOZJbq*Q=dawsgDhu!zHRJOb$R;UNEc!HYhmDgmcL?9$O)r&KiHT|SPL|$%XbCa0{fqQ z%Su!HpH`ner#YuOd5F+OngR8t7;={S6beErf=7?S$BVUttS4Q)wElQ8rQu~B^qCOTfWsT{ z8+wv6(x6Ux#)(ThGkAKn&-_tIWF*fwEEv5@S`pgC<+92$`dfrL$O=LRv4@54PI{sA zFp|mvZAD+0vV!x61^?Dz^9?gLBm3;yHAPv@pNO1hFmC=)rI9fweiy$H$KrvePP8 ztg@i;)%FRS%&ivF%n@{Zc={`AGo6pXqsc5B&e@0ut^-Da`}8)4d!xZ(gJpZ@pUR2( zI{VqAv1NyfJ(Ma6RH<3ok#YF+&;rb-SJPNskV_pQbB zSOx}igbB&_75Cr`_h=&yo52_3eyc(IPUMkw!)5AJg1AeuaM zwP)0VUBNpddYHG>yS&?4tYa34FRx@0GCMn(Jt)0M1Jh(d6}>4_3a2-2RK49lR5BLF z|9q{?#&KCvBg;l{QBx>NMvU96ZQ@^p6UC!1$i!}#K{153)Zd~DQU}V?fZG;0y0rEH z_3Kp{g_@D?m=m|(L2i*QI<~LDBpC{!;ng|jxE(HEnHQDz&}y*u>LwSv$st>-s_~j_7(NL zo}{r0Z-oD?0<1byi-^e*(wwrmz|;Touj^Y?B5|>hSQFdc6=4X8j zC*DC>nZ@qtl_HQ#()x>3@P$s0OW8lLxV*tEl!TIt!idQ$i{Yyu7OstuP8pnUAot9! zLb(!QoES0vn>Q7gDi+7WvR>2q{QUK29U~2M8nTs%z;ByuNf_q@#I)7OD_F9-^_v zn>*w)oy%^vuZWg&t8PE#&7zwGG;Ya+D&-RUPBt|SI!>XW^v@zJ*Lbeak9#sE5pC@o zmX~w?EVm3*zOP{x%Vdg3no-wPt6s` zAv#TSkYUh1xad)r=pHY>nRt6K-|dTK;gd_W!^NAcUkz>7%n5NA`llJB&)gD>alz%0 zo!5d*-aH>uS33q6OJLZAwkV!e6)TxiBU~-;1Pxm02d(qr_@7Ao-8;?K*AyR=M8I|z zf5sAm9C}~VCl9H#k-4q8#XJr?xhO*r=rw}GgYKG+Jg(ktABT_z2ZxWJ6oU*GfEGBU zua=OyDUYW8blrI@xC#nK1nu(3!IJ6=; zkJ>YcQWC|;D=E6(JV_LSix~eYWAoCUqt8+`vJCrEB%h zjQ5;84L=#ex&nm$g_#D~C3D*J)H=w_tumkOYoD! zu;sw9eIy{EVg?Jpx!v<3;qfBrZvuDh38UwcSahrY{{G_T z&2Tvxm>RSg;yv_2bBJ0rLtcKj>{j$t&D4WqHA7W>1f8KzuTdxgfB3!sHF_dZDQMt} zhrY(`cS{^n(z*506@u`fYlr)~cz0UmCN8Gvq)dyMWI`uGQ$rw_cS<9H+Oh$?3(~6Cj3T<3ZFTsCo3czyox%sAH_xDLgv}H zV+AgDy;^^uYwP8G+9UJj|7!2NMyXA$TD8Tj9kZp? zS~Y9W+I!TjRaLtYo1lqWp+*oAMB+a5H_o}|yzV{!-|H{0NRZ_5_GnA6Pg6Gv0-%pY>>k7zLW4-RTGd|2!O z%aogwSWM3CXwwg5emgNni+l4LI0Pzyfip5a>V^HZb$hju3MG0&*|IWhFh2< zMRR}RF8;JSOBYYLI0YV)2EAV7X@fA#0q0eaOJa7gL!!aB!I){3>8HL%YChiV!m)sd zHR}$;x$?pZpTyP zcVFHAHUCjs(Ct{i^WJ_X76rd7APT=b7=Dr7IF#aaf0hCK==Gqp1ug{$c-A#>9>`ae zroGHtC#QhgIJ2b&hYJhft!_Nh#MHNjB5=5f7l@AaVL^e=|$H%*HE5NR#TunAlZU-@OhWD`C{Q#X>!uA9}85s)4=JxhilPi|3}21geMu*oHZ zrc#rV87dpQuDPE&&x92ci<9}!{ZQQo&s$MLKg#wz09703u4dc#ijFnxXnHm8w|+{a ztUfggMcGos8%SMp3K?l+|57tS-%M5M9Go@t-k(uACC#qSW#wFnKxIuk)+5ksBGQkePWNZ(RLK(VpUUh*@yuG+e$c=P!= zfpkDn2y>oECqRT4US`}PqTsA4^EY$R!EnsoxhRsR;?lyB#ra`K1b(-8lV4^_G_FIx znlJJ>q&buA0Vi9biHm9lircEoD7{2OzM}b!uR5S;xbI0bPXH#8oBw#^ZIlTsDAM87} zopy}U+xAnt^uklSlgmSyowc$kY#>6^ot8+ix=EE?k$k-JSiyG6%P$?nlvsF_Lsc|! z3_#$thcf_kqNP?S2?5A^zL~Lf!b>`7{jZ~sv>9W57%%1&dp=S~E%edQvvN!>(J0fJ zIxNQ0-cOHfh{_022@}juOPhLI!G?Z(#Ry|<=0ao%np&$qT8c{}W!zO)7K{~JZhPN5 zU!apyp+SRni&DZjRC3Ow+i!#v(&S##uBkg(kaVZaX!lX4p#o+Z-Z~|tnB<9=Y(0>{ zTSGE)Io|ECYghT&>(6x6jWO4|Z^}!&b}rlqcE~>=$&ER&M>0{kUx?941=Sxj*BVPu zi;?Ig6D&;hzVk27kbNVcjw9>-aC5fgJ(miLf{=Q4#wp#L4!uu|0aZfL_bFCw)vVY- z&phnWUYhTgpK->Icgk);hEuFJ-SzNw>}IJS??n9!Dk->$qWR*CZ;jFh=xa1YiPZx( zCK3|;v@km2{grF%u)!f0YTaJRkd|74{lUbN7r6cuI9si2;=jxq|%Gg zn{CgCbDS{hDbBUeD^&&@$-7gt>7$bdU}X-m z*b{D^pbPKf-aDocigU87|v%SO}!z5F2%p{+WuQNe5K&^3dZ<#Ci3oA>+ z1_im@AaShw3LLk;C(4O{LFmVWtux9#g{2ghYx!3O71Z`kM8{>LyYAJ$5mLw3EhaCF zGVLAuH=#E0w^B4j#RVtGR><3(vqvura?$yR$x2;S-O!)IWU))#6F27A!>i};x$@f^-HSa{NM~ZbuhYeKwsHVs|Hvvhi$@qgWA0+kzO-Dk1TZ$GfpeW2Y-Dnw zg({qBNQ&!6Gr^B5Z|Lnid4{I<&el#ly2L%^545Kp)S_b&cxkx(?-4GMbuz-KcxokhyzsvV_eU?o}@*jfgR z&dt5O*1-Kp^cz#@1(!`q*4K(^HQal<%1r#7n@E`E;t(dy`jem6t(+5jK8zc{WinN| zr?fVd!UJ7<`(yqP3@Kl?48>I?_a$K}dF9!X3(IVIqSwHbORaXd2N~*aB9ypZs+09_ zZR!T6`~YGmC&70so&=z8;6)t!Lqp7CZt7-yf25L(-J6Z&rDbqnQ`o{oId{ndYV2cE zgE9BMa)8fv#LMJY85xUL!+Fj?VKw>CRISu(il1tV_1R*|C6=zws=ALpDlZD$^!(~$ z6BkEvn@76k{q5Ttq`Jisa!0RJpDM8@^jcTE0>*6Oc_RRB4BmuaB?C_RqIo}F`hXyk0EHmw*beP<24L|?>HdR9$n)>cw zmPV&=Y12PJZlU*#K|Xkr@i3EYA!1FmE?N;^e08V{H0Bf;;zd44{ zEV)%1-u=A&V^N80*A8dgusD`T)UZr^$c?ON`i1K>L2+CD*CENdeP`2q@#h8G*cvaL}3zd37HnIOO

        5haCUNJIkG(w0WI@pYfl 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 bN@UcU4GYQ1NB}OsdO=l5Q?cr?W$6C`;~sFc literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/reference/concepts/fundamentals/variables/what-is-a-variable-variable-panel-2.png b/content/static/2024.11/images/reference/concepts/fundamentals/variables/what-is-a-variable-variable-panel-2.png new file mode 100644 index 0000000000000000000000000000000000000000..57fabec9beb055b0d84e9615caff5a6d1d860035 GIT binary patch literal 36728 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 literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/rethrow-from-list-exception.png b/content/static/2024.11/images/rethrow-from-list-exception.png new file mode 100644 index 0000000000000000000000000000000000000000..d2ce32fa3ce92da6282118e777a8efbf2c41814a GIT binary patch literal 22471 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

        j8a*u-thHU zynQ5*w#7RUxQkfp`D%$l z`_&5fG1u%nV;!jZm;+^ofYYb1qwl$LQqe;XfEkd>O%jxxVNwN{q(I&zy1XXASoMo^5ZCba~g8mzKO!S{qnPr zC!$Jd{f%3D_f+s{ynDw_TKv0V?xGWK4c{pu?m$yMiN6J>9s82__XMO82WpZbe|D&Y z*xXSPSM~0lM;7=G(n%6L%_#LhRv4*sZy8^AoOYhR$A8?yet+A~-F5!q!{aXd`@3=X zuD`|j{|;1WZ<`vrt{Oi4I~Lo&Ucw{2>5B?@@jB>nm;3wO)Q6|by7&K%-M>F<;-hZI z-alP_S-(8}fO zWDX(Oufnc|!l@6!X~77376gML;@6j;s2=a}^H9kz2(~4J+h0UDSp;u&sP?WOp9BAk zufa^i5pND6B*Br=ERp;d2=>?rCjUsr?8r=m2+{dS_1nl_{r)P70nbAoO5sSO>L?S` zaFp3?#4E!nwgZ3NAMUmXp;|0a4i3=>p{UP0+-M$AVh2&)iZQ+pG5%lW<$q8)SG$Mg zxQG2y z4AgfHiqP~9O$FfqKp|+L+%w1l0;B>_6Sx2&HMy{6u*w=Uqrw5%XOMq{P#Pt2^b|wu+{r+MXWx{Oxli*VVNjxFSQ%Y*3;`g~$UAzOm)<)| z&Va$eBd2sL%h3Y@=AkP1of~qVLm!cokdi%256A~VnF0Z>fv_4>TON0=WAQX3uoaxE z3H6+Xlmnd0K)L@}Kj#^VR56d|t;kk|}upGzi2^I&9IbpcqhbLhI z@sYyyns^Bcc{=S3NE?-aHXz>;T0RY_?uIO5WIG3vEB#JEXk{9-k(GA?3Ugt|yUd`T zVl1@m2@!HfRwz6*YkDNjv&{no4#A;A0_ckAZHo?Sik@Qzp~y@GK}kgw%n=UFf$>(t zq0=J;Rc&NUD`aVo&?-P_rihOK5QNhRq4$R1AR&N@;^@?}pzxAP0B;T)nr&G;Lk|G> zBf(nbQ@RXU9?z!i;=)FL2M=hw6uI3UGD17^4=N6Jb!Rjr0X$>Jj)?iAdg{FWi&mhr6_7{8t$R&J)-qt zY|WlB4WE8H@;+1(SmycK6jkzoU*;E=Ur|(8FN8oBMp{Y4PyBX#52`s0I-Re z#-S+SAPB}?2YFFf_xZljOC zch5`kuKiY*AGL+5dF?N%&z^&Tq-GEzO3vuB(axY};ZP)9{YNMi7YZr{(B9WTsx6`U zDaAB#0Ni_;%4rDUL%sVnL^BAc2cebyMwZu2*D#$Q!TYHP1nLkGqaLkAgT|Brpfe9N z)gEODBkf%(pDit+XK1B`xmjmTSzu(x!3ba%8!&`Ti}ZjPtiT$&A#h|1Si0l1r3xt;B(9xrJL%w3iw6AtuV3!Oe06fMj_U}rD>pCZ_dcfg5d+oI) zxd3p1+V|y-Ypr~Hw$gkLD8sj$wg;$G2N`8vURfhO&bO=rC1@2-_pto;>HEI65hFAy z=nASG(9qbbf(3XjTArubz5+pZw@>GOKRt)Ib9~B0_MPNHvNg+23G&;$TK~#HiR)nk zvslRKK?l0}YPteRDX6jX;J{I8Sqg-<0K`<=E>+(vOg)x656AHSOQ(J94G!Xm%4gfp@O2X;&y+on2ReiR5_aB#;We=pJ|{Xc zw-S<#PpzKlGOt`Xf7VvQ!qHT^HTx?P0(hiy4TXuV&zX+rI`9Zjb)w4y)O1Av3F8`Eexq2D?o zn%`z303$E{3@dWZX7i-#B$YT*0FwTsmW4LtTF$C1Pqrgw-Z~F7q+|yXHHr&?>yseP z%k_*2tBcePBC&rLZ8t`$B-n2;kk_x+@IO#a`fU^4&mb9pF_|D5X(>%Rb@S z<*GTl++Sg`zF_fj{IC=3D+K-~KFW$$I646lU&5j?Xa8oB8(ovLev?z^0f>+_O)=U? z#swIfAzdw@8ozr|RJJl*D)lL#TS=3glk+jq1$FbxG8ByB~?w1u`TWE=s`i?&#)!{?QwUATXRU`Ktvj#w0pq;4hexL{Zgr; zDQHhKZmdy)zQ=P6@5*xT2Fxifs!J?r$5*1QV3orLv1ULc$Hkgs<#~7|QAIsZanLhq z=yoJ1_poj9{CA1OVTD^)5FRw|r04AJ6S9#806fAk zf=yc`^_hvSLL~u4%ntZWv+XNnIxYe}2|kWQnagQAL41XvP`5DdB_S!HAq zCOBsrgw6wPq+b0{cdR1&yKoJ%jtBVs1p137($Jgh-Uun+DZUwn4C0<_t)D3dK`@n} z^6FWso(Ij?6l|LX?#DgKTo*fqCBS0Xb@E|+S%2p&s4Q&7ie?o6JMa;Mj;TZISSxx* z&S~&3$^tnaPfm%FpnH=}aH{4i9&kbtEEx|V^Z_PFc6OmSv>=4IoeXoi2rzua76^p_I{`M2O1^ z_$zDqqCgUqC=&(E82TXp+G$tu(qV$=)bXzHOKpn?`Uj+eY#LO7PSd3h^j_H8T&>J>lKs;Klx&yD5w(#pcm5geQ^c4;w zDb+R>J>ZWZFXR$1G#Oh}q*lY~Z~?QlC(@*JG9d{<^Mk*7k21nS2?|Kb6@m*EHvF0t zu03ALUB)&6B+Na4#fb_3!6-L2X+%A|BjL2p5Mq$$o{R8N!L~F`V2h=N5I2YE?<4 zU(cb1Fb=0NVL_4UPjWMn={gFgutxMVhJ)H2=zuoEMG;QYr~i1hSi-fQBiUMS@w-Vl z71eS_2z3>RV>8sCDXDs(Cb#^2`CY*(kBN8J5gxz#n7IBpr^_#ldh5h2?4?;)C(`wx4TV$&U3;pXYbJfzu8*;Tq{ME-hg*ysFB+KR&x@sa)C|Dgp!{#Oh!& zc(?p3V!>|`@e+?mc<+s~n-KRo`E=7Hqj}67E@AN*n)e5c#P7e1c`B*(+DLKPEQRjv zJQGR?s}wXcvOFeYBy(;fzEBaVieCP>980x9}yCbQsK-LLrE zX6Oh~%i;t(uyFIcBQakQ%EHos#3cuXU>n3hDsH4rp^Y_FOiZ^1CjxEPCvsSKK?faRx@QTD7I1#l0kY z1;J!m`diP$2_Rm`NC1g|v*-SBNv++D-|>bQB|3bT+Tky{!Pp6x;BUc4^Kg(w?|$>j z@wfVXpM!$HH?3s9`7(#k=JMC`ui_tBHA%D_tdJOBU5_2y1i%3AE2FV*X9t9g!SY5w zz7%N|yd(xXjWEx4$7mpX!%Hjy&-u{?r$hX(>_(&%J?bI;H=SOM`>>o&jLl}rj*w9`7?YL*ZT<5fMk}gc%9dEp`Z_sGX!l8z7Pqai z$I+ZYZ2Pl)KarGaf`Bhr`kM}5Owi||>DR@;2v(=;)UV0bpM3wk^OC%x$j|MqK!uW| z=~Qa6>WwJRhaSmGioO$FTAuW8^;Trn28w0W+cI{e$z!K!_wL5w=lsBCM!Gbs-458J ztfkyY7P>G2d!GuWhAqkZnwKN3VZ}gzHTGq+rjy)2)J$z&O?nl^xSwDl-9a!Q++hWl z@g^n92Y~LO2I}AAlFoyITsz1#=~MuPKd@inO_aC~qFxb2*7CEtndTTVs4oz`<}al{ zItU4h3ORHO&_(vKsGyTBr%I%F37a`HiZyXp(hc~G8qruYumj=>)H(v&QaHRz2SGu_ zlp0oCRcB}{tF62MDV?WG(|A6YZZ$KN$YtznL?Ue!rtR#i!_Y?2+ee>Ol| zHf;eUeL6J!dry2%qdvIayoscKC)5L?J4XD2{1dI%*gs_aM2zFvLp3TwL^P}~N-v&x z%EX18>o4-4R_*Kmk}lTx#XA65tz0m=^cNp--*m% zo23NW1Y}ES9DXyrAG)*z5}`odV<5!*&T|bHs*7eeX=GgN+E$!PAYIIW`y~@w+nsXS z+oGI|n0J%@8-I(j{^eeZr$SS@Cvanj&@ry5g-tLnNSmO(L02OBm7*5|b;HtQ6c0@} zg}ZR0?&(18At4v*nJ@mgS|OVc@#22pM!pQo=ASZZzY6i6e06u|{{0_^(JQncZ{x1t zV1!*zGG%Uk9|mMi{W}d*%wHhbxEqjsh|Bmc+Sf1%=${J981?w4D)YTNK=P@s8go^g zSEPGdryJ9@8nIA=38OC7RAy@-oP@pa?6FqL9w#sUEFJVAmr zsRNy!OXp%z)oRQ+Zu0V;gzoMa{XLY>9@IE?I)+a-Ek-XLu?&W7PdAIq+L$!(MHIiY zG--W1V+VNpyjV4Wyi`nv#pPwGvmjcp%t?DMRY4DzZ8ol_@?>-DLKzM$@ zxqr~5BVCtqz#(K%`6ipehWA25`Rsg(4HN79b*ROGtjZAY?vx)WT!C(4b$3Y7H3MxyFR49ArU*G9CC zm41JF?yMrB^%*JUR~C&JdB#l^Gb&Y54SM>F^5KkD%jMRTkES<`7LF@(w#jkRkCtJK zHI^5Z>(*3sj0%sA7OAS_iH}j4jA~*6eQqh@stYco~peMcSa_l?CcsKEQ z594?*|9Iasp;dQ$z;=AlXB;&YIX;{*K2knD+A==YKR!M`KCwGKc{x6XF)>X%F~c}9 z%RezEH!-g}v0yu~=rb{j(-UPl(pf&SQcm<42PYPQsSZGFTuy9aOl}cRZivIT`6qwM zP44PW?%7WM@|oO^oIH4(*vXhYY?(ajpFEyd-!Gs1b2)jMIC+9GbdJQNdS3n9XX-X%>aIZJwtVWLU*jrdqN_tCu4Mv+p()U#);+DZajE|B{B(NLr*hMn zzSCH^8sN}rQ06rBKh2x+Y3zk*T&5|Uy=i>RnWM{T7}E@)+GK1H3$dD33~$EM9d4 z8PcR7t~+Il0qqqk&9dqlbl+L-|J0c==Uy|Z^O9)s$?H54&+*&M-MGvN4QL8y&i#$l zX3ebry)_zpImNLzx3V@{dNBLPbWY@IMw)4!T40`EZC=)He#>-TA!?pCXk|@lGK#5||5}k8>Zux%35IYK10t|ZIRJ#(OzKoUDV>s%tgn&8Posf%nBzg z_VlxH78A(zkL&eO&H_`OOiMJOdfsmg2=$hHacBH|4Pa4A0SnWr>x?n++OBFvZhHn< zkNOGVCBBL!dTK+2+7g0kK2Y8eqW2>zYC7825cA`lH1daNg|^7iQsT#<_a9^7mRAhjY}ZNdt>wbK<>LR0HWQ7q zsV8%AS2n0tcsN(`%$BnjjBfZ>a_v^~{~!vkmdni4k$;vqsaC2mC#(02Gb(@;g&OR` z!1_=_@EfDdq#x&zh8MdCRyyNf^FY=VBmdA<*`(Dr-^EsvNp3hIRZp8`fib?*Ag*+l z_J@9wohiy}*D(IfknJmw9)@85YO*J%$$~VcuST^0L9qQWWsx%3Y(cPWAx`H_NB@}4 z;sQr;5uBDLBkQKDQYP#$;0)#@C(@K1tiIg2w$ZXa@o}x~Kg42%=?~n=9p81%1GVmT z(^Ts9y%vpqy>+g$i7DLm15Cv18?#eYv&sL==>mXzB#0%Fm5~b56}633JCn_MGy1Ld zhQhVYb@Od%^F?1X4w(9dfCb$d;*@0hI#m5(7s0}_#Q`%tdql8&MKpD4VpJeFgtw3b zh?7utF2$|QdJ}X(%b9fq=-TA0W$K&!#s;I+w@d`yAh1qAWA#7FpZ%7t3uYW=#=jG{ zP%J4x_G$CYMP0j0^vn?*4~h+cKfEw50}_>Vtr?*9b#D%YzmTV};!}f|in?-EC7#nMHN8 zMH>S=AbY^BV$rVhCxpt=gzAQE`JY`4H**$;b*+sJZHc`NRl7{HJ(FL*P&S|JSS*vk-Keo0yfqesP$!{6UQFS>l7XVb|JQkNY46 zJ9?JwU2zBWqBYhZ+sFOC{;Am(E&$P5w}Y}QLy{dv%noF5Cow+(V@T~G3;T@8h}0s> zOL51|0tfp4G`#!{=->y~fA)7Xe&Z!O{CV7J3*BWN&}Us=aJrl~cl}wm*e}EtE8J>v zpr(F{v6cq{u1^?o!R$68fxIB~x-JC!?RHk^ueN_S>|2O{N(+`0r`jhA-YnA>Zbwdw zP9qZt*4SUak`SST2=;CuJ#sT&-JHA9sMT(DmdTh?(}DX30z>c^#s2B%W};KRo^zf3 zc0G;Rr|ZMUMWejVy(X@s|1c+66_4sFUCI}ZUIiR|pmv=tI{Nlx$PAk7*f{F?bg(rJ z?Cvt*4lwE!w2BHt^xLlvsPC_Jy3ipJT>3_ww@!8PZvD(hNV5}8hm#}D@c2c^WH#>eprj}8hmR4MJp1;F@RGSEWW{*c^ zx4)I=RsYWM@K4X}t$6G`T3sEp7d>z-JXqDw!BwYRvHLjhRvBKo(_x)QnVWD9dzLeu zL2%W-wHnoZ@_<&Ivbb;Vod7uuJwK6naT}ievh$|H`uo>!1^4~w4>J$q7=(lUv+@5p zyYPbM#+YOYNOR&L_;y8a1A(`MnD9Fjo;nRs*plD3dI0S|;y95kER{YHmNWY%h!dlo zH3O)?m93kj>j?kriQl*@oM1%3!k>+C=Rgpm{%K8$*-b-Y^LD^|v=him?m$y?WsCx{ z!Vy&!&Y9~g|KY9F+q*BCZ*c_tVvF^mH?+@YIz~yp@?k|ykAFKotr+{r{Nn%6CV+C6+qX0dwR`H z@$0Lntoe7*7B&8ReNS#xHvzHljrrfYP8OO5qBch{*Kae|gQ7P#9=B4Wfc>Ct{7GO* zRZyDzJ?QEArvupWKIkhxqL|y_7v^Nq)HRCkD}oMexx8+c6Me4n^zPThp|rg@XNt}3 zp51hqd7ppC_ z5DrbF_MzYvyU=UuJ0sBJNri9k>E_fx=m6H84eq4W2Q$kL!7^PBnPmU!pEkZ=na>Jc zw^`VRHJIA?TLPHx??dnY-~!hg){cvVaX$gsyIrRT|Eya)g3cb-EP~Viy@L;H%Y%E^ zb>S}bij8C0Ec$T3jF)^#3Wqt|hk#JtDkVm$+7v?gS(%JZgRWGy#*1kzi_73Tj@6ra zA_ss6P)y-Nn<|3f-QuwMu*{Syd_cWatMy@>t5h$RNn-PTrgX^TZ($&P>)>iQU5I}z zz8ppXqA-!v1nDhOXX2qg7+f@gpBVZi=@fa@7DR9 z7MM+FL#Ry{{;+%`F>b1p_YaEg{DLA~^BCy#F;zCXZ8dbjjRFxwkV(&UlfLro*))}L zLDP!*TH?PQDW&T$Ag_~RJBuPkzmrGC4}R>IhiUPY7lpFC`88uLBR;PQGdzgOHfOCE zl((}eh}@E;;7BYBQ@0Z)O4bF894K-ab&DG zeHX##x1mt*!F0mK7<`egb9-&91d%U^GE;boVdwYt4y;9n+oAW%SBrUm%i6bQx0LvG z=_QM+5uFoxfr;13Z)H%P{)SDMjFwiYwrM;)40n6jK4&KIx<5{)W6wHb2GT?qXGR>i zQ_ClF`AdnA(_u3O7P?4oj@5QR&}3ow&53l9X+B3uK%!~GT#Lqu!Ddx}ZKW&|v&w?R zHz<#*8s-bOhV?V;W}(b_2O*9%Ut|d6lv-D!oE=o`$tYTvo>8LS6Gi-P0XjG}OEzW& zxB4yHo$;^W_-`5e;TpQbJTh8OK}NF8XxmXFwUr89K3c}F_k3|HR~^;(rhJG1Xvd7i zn)>H!%~O)-)GgDpM4Tl0c4+W!Cd;TOAES5SX{0L7P4ZfAIX~7BTJ&??*vL4S_CI?! z@9oyz^TSy%mgnK6Okda;tWj2SN6HPMKcd{e>!)s$y=v%8+iG|0 zG2C7=%DoCdy&p0~GI_pg&F9(-y|y#0R?8bmiTTI1*3NYEv)1=j;`O@{Y4g1IYxf@s zx1#Yjrhmr7Y|Nr|q(r+|vyA>`Mv-XhZeK*adLv9$?!wJtp1!LvwRUNIeEW06atMb^ z1x$z$W${^Px2fc#pher^K08KDD)R&BOtQIUs)1|&!uPP7hrgTecjN1rMI%RsBM+>F z?ySPaC`t$;s_CdV$T5Pyd{!azE2o(WnP8+9Q2HaFr!?MTL1WREq)p1wTe3v*WI;RK*f{T z(`bkzgZg?GDj*j>x)EA}w!WgT5EU(s&wzWTSW>Vr5Nf7KU*H()ak$$%bMOjGd#@Ml zH^=L7SIHmAuVywFnUV8GsC4>cQ?bjh8^svzVS?o|jee6Z)t50O8WOR^uk*PiVK~`L+jau3f78*C zJIH{DNC&$LzhL3v2;DxOCAkcso5Y=BqGwZO5UM8ZfiVmD@~*B=4o_r-@Y&|1mW~Jx z%69I4#-x9LA8!db$Ks(7q>O*wh03n3pr~RNK<&vyduQ7 zG+pnHg+Ypy{=aMiIpZFvA-P3+i0A|dhNsYcn}OZKYO9P9SPVahOBEX=$ZT{IynLW(TqUmrMFc4eG;D?6qTcLPNr&KAysedlpd^zjY#L<*_u9L}7 zSpkz0L%siSdYY}$YUsRig6Qmi$*Yx(AkCM48Z!JE_!ONseTbNbE5-e459=K8!Ut9$Q`@QExHmF7co_Uc5Sp?I&7RegDlyvQE^Yf{mcyu0xYzq+e5I zg2Ozh%cKn?Dcr=VgBR6PErR1u6d~P>dnvj$(4A}tfe9zxD@1euPLipGpBmloYX0@%F1OT(hxGq3z_!7Tut2{7@|r;|$n%jzF3FPms83CPHfJ&I0kWpUPv>fO8J zEIZabFE{+zn--zEmDfZ;bK^>QWG!lM{#i-ebiBD{^(_A*XXVhId+3&*OkH$*ox5zY z)vMG_?Q%Ui-r3y2J)+`vkzOXwdPhALmb++y0tPq%TVH%LeA%{S7%s+yv7ZycL`Wk0 zIV8w2>(MK$6=!qLiIqOTWaXecDN1uVPQa1$TMcIoEw_P(^66*gR`Ru7cf)-Iipt`Q zjb^JgKwiioD9^9Iqo^IiD`l%X%`JABERGhe3WCgfPEuFe^!w1#YwfhauLw-&M_liL zq~$d9EH2b9aqQFI_Hs>=X1{r3iD&E4EZ4z8&oSj^Qkt~tdmb^z$=&d`_pm2dG$rSQ zUR$NrB8Il$5`ma7tEf>)zC&A?_DV5lF#X^OFfT^2{ODPP?RZn0_oZ(z(hzRj9Ee%I zKP1cxFSoG7aTg*ZoIeYWFRmlfE)0sV{FF!2Wy=Fv#YrB#eka?tTE_L-lF!0SkWoX)~awj3uqxy?xTz`F@VNxxXOKps=y zmr#z`rshk{KGcBzxtJL?Y5%Rk5LHUIy-eMWiX$~5mNC=>#*-427-bw3eR-|zYcyt# z5seBZFqcv$pok}N=vk^DBQca#Dpxp0BS`hhCY~;y*&CFNH5jxVCdC+3qFSj4H&u&W z)9g1GEwOr0yZr)hV$@ZBOd#p~KQd#C99}i)G|#t-1>^Q$ilyB#Vz3-&ki5uu(nb}H z435vRr%ZO6p@@uo?_)&!BARY5!K)EU2Q^BQ*G4;p1^PdEk> z2(8?-^qet^d3H4>@MXK40*iGIOV&E0STfZ1D4cSxzr@@m?LwX~l2mr9 zV&cXo2biwxZOZ#;EONk*@@v)wDrAPz=&+qTMiRxR45ec%kr%enIo3UUnjsuUB6-AE zskCL|`mJ{hPT~rrJdu7PjEeEQ@;OM8HgKZUi~Zd(qWgJ*JYuo}28G)7r$DO0ySFeY zG=|C@zk^|83fl;A1&OrM;DBACR#i=7N<+MUqL~?~U(w3HPzl=w3N@JJq0=9lDF!Wl z(JJSaw5=;1))@7(Vx_t;k&ldW*04Kz%eOo`TaR-UAF=ha68S5X*n;$G#QWb-F>1<; z8X|V3gq2=LM+$k_b#Z7nzbPT(h%>NKo@~o7jUTiO=_xvA%Hc_*@Rbt@Q`u}`80s-u zIV)H29CS9V(5SH+@Qz@uXYh#2H zDE>($kNc=?RBDiYS-I9h{0{>y10EO4pFik==9QU9kW7w;tJ?)mGZ%-(q0Pj(z7!BF zu;?CYR7GhHF1ffk#Qi-K)oa3XV5IE!U=q9_U)C;hCKT4 ztI!}cTWNdTqJ7=FyA|rZBq_wWH>7%8KqF0hhHYj77#rxha}A>>~ABEhIk#= zjO&L`&9h^aIi)#DSDoVUp{NE01fLygO8t@Di!4>je?%d;MH zRfD~9palKNwUA1wxU&ug0D;NaTKPJaa(qr&AP$ED@4JcPadq)3jRGrQ<>P+s`jNI0 zeMYGl4!wh3E|e}+M$;wZo){mHWkF`_%9h0BpG|C&oyHcYT?^}@MPf%KO2@w)PrM*k znJ%rcs`0j5DArRNcba~xr<;7?s?gd$DXLi2n3fbup<-z3Z>BWk1zn(V4G2;mPy67S zOEKS@L~NHZTZ=WXuQd1R!@P0aLRjvPS`?W^rYm-D;&f5unu3W}MWp;Uxh4C!jkIWB zrrumvgP!ooPf@k;CJfT~MHCNhrLA-iH49mz>%|7? zpTmqBgga%b`+qwwJV3jN-}9%RP9Jyb?~=JrXWjoX|H;y&3lFf>rdK5VbHee9dy&xf zY!vfeu=aj~Lzc8Lp2MA%ipxjc9n%DLhG{Y2YurF(-Jrim8=S`S^v0ucq(MF0<9jmC z-^{a$k$6{OXRD7Mr^)V6)G_)`Zro;W)MW#zwFZV9#lc#|{dqQaf)5-Uu!-cc`j6uR z?>va}6hoE+q;gJd;Bn=~W8~BLWMj=d|b-KE~%H?((F;Q1X4xrHhYok2*J| z{+W-)!=(nguZDN8rnihH<&_qLuQvOYHlMGK*p-f~udd3Ku8yys$(5dsufFq@zPGPI z@RdP?uVKQKVY;tT{*_UguW=pf%DCCrr2WdI&)0NJKtJHG-od5W&;KZ#&RGBYT0C4? zp!->3Ut1FSSy5hFG5A@tUt9C}*@#`+$oko;T-)mS*_mA1+4$KzU)y{8y$im67a{mM z@Ioum+dThT;k}PT-L+G*pL6@QbDy8f*tN@?pX=(i>rX$oqieUne(vs#Y78fi*h1=6 zt?raJo(%q8&m1d0e{ZoHZ&`mIl^Y+OFYiA1apU^?m0g=ZlPrR7{3HAW5^e(0{R8uF z0?Yh^umwGI8vWXZM997bjopOIJqsQ;p+Eh@j&8#K-Z(Y;vwZi5r+bCm_=i*8hBE{_ z4~-Fg0TE&WcBmUk?Au6m6mPiXZIn$wwDWDWcR)<=ZA_n^0+x5MPC%SZV^l;yeBEt) zb3j7-Z9?DI(3`)p>0jekzh0IGBp%%+{|)%?aQgv0Fom`?7V9R7Qsna2*A(`7F1!gWp}a3)2r6a&=8bAYiiy4`y(?9@ zFV_jGFuAYz`ycnuLO zkEeunV?m#e?mztvYA8kteOwJ{TqXSU5Y$BZ(8Lh@c}_5O>1(4{@HDLbv&ut@PVj#w z4=Ix8ub%TBlEGh4sx215UlSg_rnmox-u|U5SPvfD)*Rg4{?Pv6zOCw^Lw4X>-$Uom z;I5lhlg^axGnD`qq z_3$|5FF3g`-j^>v{R|sm2%UAu95#5IP7j%351m)}H(%T_E!O#6_RWIxzeVrPE|Y%? zQ^AY=|9+&0F6%rjMWEh%OXyr~4qa`3Q(qRk;{UMnJ#>Bb-#YhwhEV(3oY?x$f1BuG zTg5@oPWIk0kxlN7P3)%~zObKsB6FMkJE-;@v9LXpr@iK{m6T7zDqW2_62BtC4iY3H zWW!SZ!+xAT9@IS@Hi!LU==huW^t&$f@JraA)u%t{Pe<-u$2V{O{Cqk^e}6XT|NHdK zX>ivm_WKKV)P;diGkeFm*uy>_>Qd+Zl|}1c72!+C_DhrZH^HbIO20Md?`7VSxA~~M zGSpB!>J}^Lt_t`7qV?FogQ|TkM{l3{_}wfItrV6cwf8vzfaLo zj}NHK|5>BnKcP#WOMXWMfBW}8*GZmDeMece{eRXr&%U7VAOFw&-(z(|_8%k*|L^Vo zpWWvA>2P}g7jy3!)KsIs{f3ax!O%kh4MjQ#h*HIXbPxe4p$dvf7ZvFx^p2tT-i!3! zdj|oL4hBVf2c=5h_&j^>|Fhq7KAdyr%$zfm4@|NqSt~=XS#$la`?~-281H#<_4Xep z;r;kuF98`MrT+PDBe>_0vICy~Jow=#nXLPNJ@cPyzSw3q*R zrGKsn`=3j~h95uta}wq5AVr7&j~;>pcpzUOkeEUQ3Bg0*8WaT8a8|nbH7=Ad z6mS~jbaF;%t`xCWX;jVtvl^)yM>Unl3(mKs@)Lg?R_pq7my`tQzqYk2R`$Q28dkjw*K8Y8}-7fjl>luR{*@Xi0-C%a0Tgs z$TLOtP(5a{<5Y8z9hU-sj)C++U#3zvobklIE|3u%+3dOLiM^s6fCn%|53oi^RW;M- zOojA<7-}|@VR@<1Lp+{22Yo*rC*LThqW@Vs`*=Rqh^l~N?ycr+-XEzkV^F&h;fmCT zouhn_-&fS*2rzT(xGeb>`^Wd~-cqxO@dDuhysgyONtLi>>L+U_Q$pR39{i@6(vWA4 zo6-s}icvl`2#;pf<@cnWM#|$>S0=q({mk+7{ZibFiRW+HS<{D4-*PHAzoTU}e`y>) zXK}l$YC1_^M|&36IZL--Tf20BfJRUI%OE(7IbrdoRYbgWR)cZElGBnW{j!UhBxLbL zFF*ZPk4-81rTF9+dJGDDGZEuko|mAhnAJX&uo7ssTL0CX{9mQBFW{7AqAV|Ozr~f# zGW$b~Yt*C}e#GjSB>jjt_F`B|e3_oKmTcF?u%7x}ApV8>Ga81C%n&y5`LqaW*k*2= zN%CfXnip)VFfToMt03aRzDZW?GOQf`VuOCC;`PppysA-Y#@(7PCMkb9XBqbzex#@D zHSM-B?zjA0PT6n!ea(2#0lt-b&_(``>9B|PS?XaQvp3Vx!0n9Gqao^<4V%h)GpV-2 z53o!p?f5_d%Q*;40U!YI0RS=pTW~oLK!gR56EP`OWOn)y;lYgtDzdtRAZ#kBN|o8Y zVbHtQivyK8{U6|uLYb7SatC9$o)#MoR^<&R2)-CfRj$q-O%Z#ywK!N^@F@e~N5ZU9 zQ#g^M6vJaYMae2-v`#|)W=#H zkJra@R27LY>sPivSKE9YYi&MV>ZtU_b^5inoF8v20TUjJw_cted>_tuSp6H(eR910 z^;3Jhw{MP)bDCu?Wz9`X?CnB~FWLRz`S*DK2`He3ju^(0NTP5hkjZId#f13kASJ+D zd4tjRR(|2PP`)~@IMj}@Xo|7GwB`2*u{EVMl)1S7O0e@L*D6|$j@vw(V+aaI%fL2Q zV>A?!FeoazT=S4B<)R<)xV1KE;W7lA<8esf`i~^b{Gv6xm&~gRh?OW>(-@m+tMxP& ziRrb(hX(cLNv;Gu8=3xN@*JT~n))xZ!tZZwqSFTvhnSC zwhD9ONur}^Rfx92^Xs;@N-AJjL_ukK{ANL7 zt4{Y?&(^}2UM{^2+e@w8;yvg9l_+qaZeN6Lh0qpk_`QE(P3=FDB^^{0u?_*Qn zIqZiY*A^IeUQ2$tl7#xn$frLV#>&Q_otG-;K##8z>UkFbCw1CTJF`l$>@29 ze*Suyr{!TH(N)A^r^_DQSn`e=svp$e<_U2!*?kS>yy-msGNbhDJDSlm!PEJ4r!*<* zRhjEBD@E99*EDzQ`9|*7u&v_oOCz(*()!5PdD4$a7v7f5*k4w@>5{fBAP#$Tx!-Xt zQT-8WK?>kE1C?JL7`qmVmLh!qMqi zs8S~hN1-mEL|XL4dOKGCzz;6>=~B4x9s_fQAB$QR$!j*iJBC16sVYQkQ!U?yaR}Y> z#7rfRUO`jx4~o2G*$`~`r0m05JA^P3%ZXH8PbC?^hl@IFR!B$2Ty-1 z+X5;&pyL}d5iXVH-@_(^>IX+dGl%u*sq=Y*oYPdap0fR7$>YyT8nbUYP6HO*-qH@Z zg&$ktfV{hi5*xq{JzWwC@9{4{G;*WnehP|&t7*0N{VLUt8UYd(t=(F85se@}$v#js zZ-sRA1n5pAjW#jLIcsYM>eJ+KE#)itY~;g)tpe}ZSv+EIit-Sq(c>O1;*=rDzavbO z2sXd53lr8-eQTa>Ta&Dwur;Wa9{jAJ=hc?!CgetJZp6@PqE^z7j+lvN$`;Lf9GCn+ zf@!VA##XUGYx0xg$)Q**jj>#xEU7{6YUzE$5)&O4W+;__mDZAp{^oO^F5noui`}{j zy{e3az@bDVjrop4G9~6fhMoNG%@?Aivi)`M`J&zzv2j`_4y#0E3x6xMW?YyVjOMP| z_K(-FbejBvov-uC^e@(Z$;)dTtx+kCr(^e8)#!l5REND78V4g*2yNSBBL?)$6Nndl zGdOi8Lem`jt4J4i)V*Psunx#&jJ{8C+Oz>)R_SeOWrIrzEr9f>)08f-b4V2X{3 zLL)%2w2|~qY;00Mi67wt`G{RqJ+w=#VwVK&!QYx@9F3WD8XC0B|9w?vDGNv=T`0n z2BV+e*OqbiEj@T}H25Q}aB{$^%9v5|xhwk%<(VBbL6*DP63cnLk&o>>8Sab<^4!zl zNG;5$teMBy>uCoh>*!PWnUNhj<#&(Tn-I_Rm&py9Es{{Ozo|*`v#)Op>%H&2D_$-m zBbwpWknYKNg_Nf;{&5hY|Lz3{V^01i`iAAN1BY7V9`S3eS)DxTUI*z^p|)qt}!;?2g6t-eJ23tDjX*V`IMaK|rn>^4rS zwk<8{>)Rwm#(*s#_%IsW{MkSg!A+D8mSZVh^+t13apT%gt~4J^ntd8MO}g>WWsJUqKrXoLBLV zi#n{rZ2Hf+TQV2jXs!E|6m>8X%253_eq+p771MR|8q0EEycdpXP*OMkC zqFN>Nkb-(DqWml|go+4&ScBi>I)LuLiP_ZO1j?m^6ibV7;#zyFlFx30^aDcy4;=uH z;lADue(UvK4`=<^eg?P{a`b~O-~2SaWD%Ii2z0eVXVKxrp{Q1 z93ZV5R1e2P9S;C_aLqgs?mpJHXS3omrNrfiHz7Lgxu1ZN-9qD4{+l zco}f{F$=QDD+KOB(WGx9be{*_e+5M$iG)n?{2RRN#{*NLD0vLo6R0O)hd0UGhZDJH zz_}<`bOcWpyP=p1GX^xN2cj1DgcahxJ~BjMNWc%=#?&a0&0B&ZukT^a@aWF)H#j|k z7&18x5M!|4Yp7?*0luyt5pxG#(~CRz&SQ_?SavJw#)(oP3g6QSg6b@h;x2&TM4u`# zd_B(K3x5M@!Z^#Mo6iWTI16Huxgvpu1ajj9#>Bo1TnXRDbVX}A^}{CW3EmL7==ZyVo{Ot9qzp7N z-~8dQ0TL`ailjrMyNLnb7=Vo_h-;JV{sDnE93b4`k(`j2jpeYcPD)+dWCA2n5zw*) z1Q210@Pq&ao*jYW8-T_+?~p-fv3P;?xr`A_4JTcyQqJfZMK7cx;Q<4_Firp*G7S1% zNuVkTn;A52OggRxoSba++-?ptS-$-g=>l^XaYsrfF`{sks~L;EI&mYC`cFrO;|}3c0k}{ zUEtD01nw*Vy+OW)6*5OVM!bUix)ok#c?UNYDqv-^!!HWau%c**qF95Xc($tfWe!q{g76&aI>&xumJ7q-DOO z?V_XuR@x;|+G9}K=T)z?Ol`|z{-y#%1;c+f4P;PC6`|`m0!){?hwlXj1@r1 z3Xow1fqMn6a*(9Cf^4CJ;<5t5SV<*WNn=<^=Uxd-sf0CGGA&fzysU&XR&y-7EZplXQ|hdn z>ueY5>@Vva80+6k);k*3JGs}pq}01L*Ly6~dtKI}7#n;g8~hC$0^J*eQyM~>8^RYF zA}<@zjE&Kfjj@J}@$QX@DUHd^jj0Qb>6eX}j7`~+O}U0m`R+}HDNV(=LW+f^vdg9l z#^x%?<{HE1I``&=l;)=9=9Y!#w#()Y#+EM0mL9{FKKGV^l$N39mXU>)vCEcm#@0#6 z)+xi*Y4_IIl-Bv?*2RU^<;zwKma*-dWZSA?+nRgZMoQaObKA~B+umi{0b~1-Wc!I> z`!DzQvy}FW=JuobrFQYObnz{A30!pvGIa|}b&D8v-}mSiOYN3u z>6TjTmcHsnF!jhv^~f3ZD0uWJrS_<_^r$WNs9*JHF!gFl^=cdS>U#7dQ+o|sdW{x) zO|E)PnfjjNW|)lnEIj%wQ~Ru2`fL~b?63M9nEKyJ^*b8%J9+fGr1rbD^m{D!dtLRT zmp?r^_!qlPSmZ8$cp|Y!?3Z~&Iso@&j6p_bpL+Wr-%W%u$aNE^z2h&KG)JTuf zNT0{ZKcIpJZu-V^0-81fYn@W#-+3DMkdZN7MPK7V8W4&FlLC?Jeqx7Kr7!+5cfU;XAd;mFeB$YVVA1H7c&h4!>BooTaT zaP5@M9+Gw9yYOms$zyjZNgKHGU`Fr&@MDx}oq6E_ z9RC@=K*{kSaAWiH{;PdV@*DN2Lilx^Bd*O#RnDW*t#ViuX#pwD*?cF3W4u; z(`RYC{1hX;i&0GTW4^;FR@eAf$TYrjF3&>umSbAKKfgUgL1CblPL)PJ-(&|RMNI=p z0A|wDFTAE`;Xu{4A3UAYVWVpvX2A~9>y9StPG0LS>FaK7>mJMNUf1iWn;X8;8~!F6 zfnFQI*z}FiwvF)RjmYZ_^v%s^>CIS^&3LcP#PrSNw$0S#&GhTd%$r-;(p$METlrpF z_@p2NoUC*YT->(x@fu{nLS{S;?i!~o6(B2b+iq#wZoJ;6f3wZcvLl|g-Da}glTO*V zygf3u-9EO}xx9lw(M*nQ8)Sm3yy%`d>^|w(xg`rW#%z6&-di=<+vV69RHx~JgJs9} zbWpoS5YVmwNCQH(c};yP4LMh*K5g5lTiGYTJCI;Gkf_|&cEBA8W;fgUv3x*LzSRW* zYhb{lonTFeLwyvO40|w|4yMN*8eza1f``ij%=9EOElrLiSm1z3nZb;kuRMug<$VM9Y#}l-Z^wuS6G_Jg3ko>z0fCkxSwu`-YdSW@FqW zGu6Ufo?W(t=>|svG~gqeTfe#i{Ox5Z?ry5WXs~z@Zhx@SOK4#^9(q`_F`Dyrvg3Rn zZmB38Zh2t#lkZcx%c9A+suv&ZTXyJ?w(tQ0L=Ac_ML=t_RY5@gy(GW)tXNQ%?Cz99 zcLm2P+9;6hZ1gngYx~TkM zd%-)nW}F)CVVh5(oCM~U_gD^6t5xr`(>Q9RNC{h#Y>i1`)hGO68vG<%u}=%bI;&KO zS~>ASvSGZr5QQ+Fs&|nhyiz&`+S;`2G>@v-Ybxb(nEdbQ_VdV-C>8@%-}LF|>SM)z*;%2k|5V@ ziePS&Vv5IgtE!RD9+Ug(CGu7Pe8af%sn?cwwn%IA|D7U-`-=RQ${rW-j1=> z_%{oxpMHn9U7XS@XJoJW!k&wa_}e>iRn6>*?3qa20Mhc~?v`_H&fUid~SrA$!zVr3R0basT5=?iQUkiTEsU}Jd@}r~4y>A~IujnHpa zD8;}WFuPWWMS^dzCs&T}>Ri8An^}xZ4VnYKp-!sN;Tv0ls0wj?68SZS_3PCAHbRyP z?`K8hb+dYkx-ac~shHTYM;vj*MgbZg<`@?JUk_R2RQ0^y-NNHfDpl~>kbQyA4iZY@ z3++%di#%d*QOHh;t?lPM5dPlLf&lZzzH%$!X5%}j_SeoQuq13`aSMzEf2?@>wCrT1 zm$f#PMT<}5@i(RQ=$hnI{g))nq{f^d8)^8kzC-tSmFHqf-ev?kypuMdVWaiWNw3lF ze0Vzy_^1@#BRr;=PSlhS*ez_Y(HTcS3)8s0EzU=>Rwy)-yh^TmTt{&JR50Lb;o*;I zKB6C$dTg7TO={xN?#5-Lxa8J=?|2V?_z-DZqpvxg(=eZdkNL)6A?4td0 zWFQS#z&}>C7c?tC%}rNQv8w!3!-}RD(aa56d6Tove24i$J58iVg?x~Ut_cAC>_MHj z+nN1nTz@P)wJ+B*G}yv%pd3DKpKfyxqJ6rq+;Y3dz-?rm`Ep&iJwP$*O>>Fyy6;RP zLMxhzcE;px(o7rhS4_YUG(KY!kAJ2ORtnmx&fctX2jA43w5+JhN&D$sw1OOqO_Z!p zp@#lU9)wMuHth{8`*EbLE>YUYEaAAjkIdZ)5_2NViSGWK=aGtJ552voy7!Xjj-?EV ztYydUY)&sf*FM~AHJc$}0Ts=|A0Y!DjTS61t_z&8>WwIo{*r+70)}~nv6nx?XL#s) z6j#wh>uXBx{^{46sP9Dp&na1rs&|qc^!lY8=L`u3c&yhc!g9bw$!9|J!MRgo_!hxZ z*esLyTL%(12bH}`*0S?M1(?F?D>11;Y=c74rNN%9DzTEfI7*}wa9 zDe|Y`i(7=QCn$cf4O=WFb-@J{YM}eQ$2jqW%|j>|Or5v3N&Nj$0}7(Qz~UGH2;gG{%m5R? z?*V_nBKY56k(%fKCRlvO1_}1G{yznaHASC;MQ^Qn{BK~fJCvDMu(-R({2yR3O|{-$ zshWIZ{y$*xrdor;(-yLyuz!O^)pWH+&Tj#synn!A_4=pGM`2EG`iKk}!n+?#Mw@E4 zXDVI{+k3e3Z21i5DHB9~jiy_AGCV|{*iRN_#7Jq@o zWdF3mwG@XwZd}GPR1^mm*NO@>G$K#^0Ej(q99X2|nM~4x6>nsR-=9aPL@MxX=K9O3 z`~i!hYk0gQAXI*4AP-MmhRQvS?411Kt>XLfZn&RuAC{*iq->4$M`^=av5jvnN8NUL z2Z7R80?frJCT}jps5WVezGVrs@b|;zWj-WiT-syTb zjh^ir8A?(2!#<|3DR27WK|A~XtO>S9P3+Wi1A~0^JGMgwO?<~A&0T88qhkHm@5ZD~ zOE<@)3He2G5I5{jCS3DN0h4N?%n^0N{%oa#HuCIScz3?b zceLX5-1lfbdsp+=XJzMWelN$)*E45+xNhVow8f7arIcN4ncI=y+OFuAp5Ca!fkn-l zuVt5e4}Of{z+(HV`#}%=Gp!-wRJ*IAkrEM)<8j416UUQ!uOG-xJuCnHbME#2gOft< zJJ)A~@1I z%NI@<96>I>hKz@=!TptoEewv6XGiky!WXzk5f0)3M6I*$9MyU zl5J^pN$mUIpwk((~o|d0U$3#5UPy(!loiRTfPe37#a_hILU%UY&@bi zK)9-$WJ5;_6-0+7o@v#5pxZ4}QdF6YPCm)?x#D`OF*F(9bdo0+u}P)Vq>(g#k}oz| zq%N-V8NGK>fFLi{2(lhazsU~&pH#;RC>clzfB*o5YAArOpD(e0P%u6i6dVB{1cyZi zqoZT|V`u3SblvFU7N}rmmqjp&s1WO4QzxfbK{q z?D6;c>jRYkj*XxIQy_=`j*a}K?krs(0ILc+7cMpuOf1ad@P9cra+{5$lxX7lL>NpI zXgq{d_X3Taf5t|1O2)I4L#%s{+Ez3F6&p!YO(^OK2k`l~O40$A%irUZ;?%ujrTeeg z$eB5?_2p$WGcSX~_kYDk{;2ze^mViI+tskFKe3U&)xDsW=)8P0%>3nl)cw_1SgfN} zrA5HM)O|chQceB9MJqV^uF7Ark$p@zJ+^LnrtaC+x6dWdKDFUuBk(uF51&!u)cx#F zY{XsK{`d;ag+YPnEKLpKemlp?6W-sz_(5>$uC#Wplj=cj@mFkwD8qGii2xP!x4L%` zJa=+2ex)BO*vIufT!chn8F_E5@Oz}xuZ^jQjq|@^BUa{*>J@Wb;SDk`8q4nQ6S$T9Rc`-Sg->`I~>#U4JIIVen6EWG#d?47#Zxt0P5Stg5 z;$kC#0?Amq)smWN>k`Lnah~b;`d?c(bw9lQEO_0R1gGvCB?e&z_erv|h7@qIkxsRA#_H+TrOe%sYANvawe zTFEslk8_)YPNH`;dhdIUON_f9icCT%{CkU*om8(%-?Yr#^uJ@x7{qr}$NZGWCXcP4 zw5sO)v<-LXNf}Pv%OgwB!F!XX$75LnsgRTak`Y{NL>0#C`2mJ58J8E`b&T7j0}aRk zM058)BVQT6tTa*;shtFGstPq2B-q`LGtcv+hl99W-^;$vz^S|7{C(|lufsQ}UPV=` z^66L9@Y%sq!{)A2LpMR$*|*zuTrYuv`x0W0ENTbOek4){YtGPa{^s*^)?s?LmYY!4 zSW3?@w$}^Qw7b}@*zcE^i6WIs`dYbO=I);P4Cy`-T;Fzi&?DLJcHrXLw!M~hL+9#v z{Nbx+`G@S@9Xl>Tw7-8XVl8&x6JKHI;WKQvbx$`6_LF@#Nm2#Q>DL+SFHUB>_4lXr z;-Ux_5L6gnl4NEqXEE2s9>YceVe-3|)2NI|5edhB0jA83W+C>zs{ecKFRuwE!Z%f5a zg;aHOLbN|l-J?O?zoG{Sh~vtS#c}E`M@5;}P#^g6Ko&Zj4fSb|Vp7QUaX**Yb+eRp ze{3J_0Ak6wqN?M1YagL(J4648x?g%o$O`j~=~^SWAM?0e%u9_O{IyV|EM$)r?Bd6c zQ+H7StFibF%Prc$L6E^v5Ivqhpd*12L4&XhdS}L|7t*o7Aj}E|$lVg5LIKz_$x#ED z)z1@UbuXgbyN7b@XaE4s$*S0bn#3ENXTugi>hQ?7FZf<10dPaeiG5}h^{Io8N$XZp z8kq7F=sF1{H0qo;CFf>tui zaCG@g#~i^gX=h_%O)*^Xd@*t+6S||x)C-XUud^bJAeE_X*v~?x$HiI+LsR(@KZ`UX zinR+=z7!k$EJluQJwKY|kn8#=5x>V-8H2g%8`6EYJLUQl$o_;@xVdir z{j->J{U@Z8Rm~T)$oNnjO^amRb5m1-8|Y4a3rt|!_0P)su8r7%HK7FZw**35AZC%_ zIawN3g5bnW6BgBZ16Q4j(iA*$iS4;*H>YY?qRg?1>Vh7YTd5pKjIa8;840O!8|SS1AgPhn@R@)&$V2&L(7 z38+@|E~5w@1bC@R>Y+u7<}8rV!0FvwfyK9bznl?JVPXpsql#~ z^|`RV-@`UmnGQLC_^T;2Z}vLenKA|8F<}Vr#>r3yW1e#&;nnHAm5~Lu1ql~?Xe#A5 zuO%^r_&4wdO{Krzh&06j9Xo2Z)vMDxtZ#BXL}Bq&_XMNyDuP(yc*MeD!hnIRZ=ChI zL)H|I$@bQ06{~uDQ#ddv%?uB~1RvXf0K`Kxy*O>cqwJ-v$)Cu*lkH&I%#689X^yaB zXig+js*nM}`M*AVeeuQKO;bVe_Z&sVY%AVbCo9Fy^3#+HB07LjY0%Q`;a*z&6wl*m zcNRkSu%;OY%=?T9wH@mma?u_#QdW`6wNnLz2c>CM&6D5Xo;1(T;}*bWeGa8J=5kL)$u~otsW~*-p4JgVxpr0z(|k85S=)gq_M`!bmN>B&8Ifv?f_^V)ifT zkll*N9!P5Ewwc%pk$UjEJ0R0N+0tJtT-cxn;*uB|z-u~6dvqQ7BJT?=tSP=)AU??J z0I+;t>IdQ!Emktn4s*Xxzyzrc!yW|bi1|=9UU%Zb50>SxPz|sH+wpq!Y@!!74mDQ% ztQQ)arzG&LyAM!43=jOqVCJ+rKbjW7>~j*nAH--kU0;i%2=Gt85j`3>#*2i!qM$d! z!$aD|-uSlED4C9+tT#r=8B%Tmlkh3fzXB;+d`hs5kZ|vo4e}}J?eV@oM;8QOzT?nD zb%DtHtkb@l;$mV!TD6lV%!H@h`MW{Kjkkgo;Sm^=fovn>##tl6-2HOxD`$v;nMZ_c zm4m>LdUuyVDpwTdpe&>gW|W3!UJF#U^H9Pw@c&8r=D=K4rO&5p}ip z341)F5`V(>?JTX#H*Xt9&^bdBeZNvVyMK8^!DTE+_BFq&=@P(8MER^&067~_@h!kK z*nit10AGlg3mRyd7-$XUr~5`(T^s07$VmB1mmjM8#wBRvP%FeQ$m5Lh6_VK#8ay7Q zsm2x@*Z_0t)-yAE9yA-=gvEn;Zv;mp`3rkdo4Efa&DR6?@PLTg;;Dv_2^nqf^!^nTii>V~imC~e%aZbO4|r%SjY zrKoX0=)i3FlZi)V-@_-xBBqcL(=HLSi4pS+5sR}C%V!Z7XyiAs$W>(InoHzHV&qms zsdqe1#;0#`Iq5}KqDO*V(7 zI7j1_mQ#sG(db9fxkf>gqF{|tOmk5;&!gZB(X8Up?E29huF+gc(L9aOd~?wP=h1=; zF~Z_8BKk4+U1P+sNil!cTF=EupT{5=Vr9i+<@93}Tw|4zVpSSr)#hT=&to+h;EE#8>8twbYp&@VN$FdS={s}jd*|r~3>in_87KM~zg#oUk}@tDGp^<`uFo?7 zuuPytCdeR@z%7#~Ig_L*lWabd;vy3Q%c7FVqA|##bIXDzXTh4XnC7!?USz>x*{l-T z>;~B!ZrNPP**s0zeDm1?7ukZa9ASwZ5rdrjZaHGfITB4dQu8^|7dZ%6uB=3^oI$RF zTdq=au1Zs`+I+71MXm-cPfH?C+aOQZEf1NTXV8S}&C4^n$TNlIKbOciH^{ee%ePF< zw{FU}ozJ(w$ajDhypv=qmFnG!zld!`2OTBYy@Co|@mqoxOHu(wxv*>E zx&2|dm1GD)fN3SPq|))A0^$y!;;keVtT@)hb3UkKaK~c~BZMtfvGUSV8dl+983A1G zl(c|qq3tT3;VLo*yt|CF_iU>1R9(3)s~_0lNitT;*myr`rjfU)Av#bOzpPTs6r0cx{}hklh!G&K^`~P_*~Wm*fc!buA_1Xh~W}Y6AjXm^)k31$wD2#y-H8A z!D6A(iMKj+n>xt7CX10WF|1DCrm?_=+MO4038M;=Z2HL9EG1N%+1x}m(eNJAB*fU# zBzY%F(yGmdk{V4YWJ7oZ0Kn}szM;_~B?J&nX`$h~#p$9jRZ@R7|NnAqq~yr~h?TZH%V?tq`S^x38M@p<$a!pXG9!4JZdBs{=|f_>fHU`+&$ zbAxSnI)x6qHLw`)&8u$U3RuGdEX3C>v(p(RHF%e=2i-D&<{R`3?-A$g))D+er<01h zh55iiQc{KvU=0W;mW*1nV^C8NVuBeU01V0;^grnU>!88$ivS#THo**cv<#YL4!78j zAkdvU8r@GSz&dcyvyuKn+g@EnUsE+$)}hD21N^k2pOX@#YYNuT0P8pmRF4ew7!5a) zfi>Y{PXV~^>(kN5pa$yG;o`tCADKZ#CnyS>=P@+X(%n-HmdOO)3J1%iQjt60jtB7= zb%xq@y(9yJ@CGkaKkbl#e(g-0wG7-Wo#^Tqy?52QXf&FjKQ3b1*>pUrl{z_ZOXZK{ z1N*6s;7EO#6l9NV5VSIJ7(T*g_i4arDxT?+F&yOGGLCOID(ul4Tq>!)(@%Q^(jOn^ znHXM`n)2g=7-)b&ER#KIQ%sLX*o~)NE{*&m>waoFO!;v#zNq_gYH#xk@ahP-+!icA zIY>ed!X*K;I>3gQvHg)jMSd~`&*_(G(};*!WJR|xGx)RZkjF@`wv^P9j`6!!{Q`$y zSeZvZ8-dAw4_JMieQq~DXf$2KJe3(S`r+|hJnGiv|Bv&}_&?77>St6|*Z+f&qIYXP8p*yS%&;jfKnU=@kma~C z;!}v7Z0#WwPCilcs8i}+BSkppU$yQZBSp!068r&B6;@x>cbZl(4Z6`hf_%F7HFAfO zQ}zECDf;95SN#~o7glC^PxEcbH-C~HLP}8H(ZTdkXUeVdZ|6V#-y=mMQuS~iwL*fo zkuLS82=$=W3ot+OJLh+Z{&u>0>%W};>n{KpJ`Z&!_6-kXME;lSXnB~4%zNOIL$$2N@ury+ihn3-c>N}KRC%e3yZ_LFJ1L?AaAY566M4A>>nALBH*SRzua4wP)Vh%!&SOV_b_YeAbF^^*dx$m-q z*krBDsW7TPeSQrx0z@(m@Gl=|8_8x-ifIBrdHR|Fas}a`35@(f5Nk4Fhdcyc_#`46 z{|l#a5YG8uPxtt>$?5b4ri;eQ6w{{!avFee<=24h!P{w4Mdloi^EH+*iq=ocFUDILuy5`I^WnCLp1ABaL9?4bgqirM+5OvVF$BYB`{7b-~+e87aC1i?`H zrifWWQs|0)S>V4JQ%0wG>)QNr{&C)rguKlb0(JGv{6q4A<_`qkL6$NMAD;XIABY4i zy#j_un?Fiuk?i1=qgajQFijNbD+LLXN$$H7oN`MAnE{M8{n z)bM@h5&Gf>YaWjHq#7!M&G?lDccEFxY%9QP%Oiyz=GJ0(M8Qa0o~)s?ze)s6R#t2h ze(YQa$6((13>Q8oXnc-30IRG4e5+erVd4DN=4>UH6Xy+m=?hWLb{HB|MkS|C4sxd0 zMzdw-qmPD$&Q!WlLB$e>#B%3^G2*TfSHaIv%HF5>IXS< zuAFJS-jiAtBC>WkCH4|qWQRBbQ?E$4h`5%2JLNvS{<7!PxUjS@>_hx3NtPNY)4}1; zPkhs7Rc9pH^z~UF+DOJ`eb|t07w+_ zNJ>gY(CIV)lPDuK@WBgowV5KBxc@PXe?YGjrb$-A;R1h;xhM8ypRP?CTmoVq7tsBmj907Z|p5jQZo_t1r!TtVaE`630% zqt;FA>KTY`>W4x^LVd)RRJKWlM8IGV{SX>rQcl?^%iBT`&mkZ@zcpce5uj!H^vhJHD-o zm0-<95I8hm^u$#bT6IHyj{(l(GXHOum$q zz^7~$<{bhyx@tl%djdSo*OXpbj{fZpS>LNfEmuJ3C*og0^od_{PqU)e`o?*99+j2K(#SF)}b5^=ZFL@d!6*l&{} z*W#ZP+~z{E-t>f%L#$*9XHhStX_1<=Otm#bi)#|6jpMuMmtP@88igFCoFA$4u4IMk zSvp=JU?`Vf_c<4Z>GWscL1ult%bn*MW|_g7CNb;mdsIEmUJ<1TB8*hsJ!Qc600Z1j z>yodOW2v`M=^0(1V)#U@R?Y*WtYy-bM(~3IP#$8(A;##tkzy5;gA>hOsR~lIwgVs(i2Wi5RW8wR_sm7h~^g{hHyRx|+pH)O@eE*MlNuTJb}6eRyJv z%IHs}QFDUIr|6ypFOj{{J*1BgsPQ+QN2h-3bAq>Lzlk`9CvR74A!sw2LWV4~$lnB1=g=U+-^#kr^5D3p9R|IMb@Ec$XrRyNp zf|8P_qQB$q=%Cv}>B-9r+4xVRTU6N_8o0jWb41SZzGK9YCkSfS<1_9NsFp^4z4@Y+ zP>|%qq`o|;g4tbGeqVkz#VY~nkGBPGRVq`2>#F*-;+GK9E0TA)VHcC~38;!yTb%J6 z0H%O>K&Waku!f7-d4y8%IQeUf^!4fAR?hUl~#9Y(!pi3BceD!_053_<|WXT7;Nq{8=&#b?uQvOaHv|pP5)05q2I#s3 zAQJ-&8Ul=F15C~WOre3##RAQdffg=*dqch#^?^*!0S?fhw_-t#$RH<|AeY1-w}v2( z*&wg8AQUthx7XMo864;m9Gn;&+7KK*8ytx}3r0gjqQydDksk6_A8)8*BM_i*dw3um>igf`5HvKM2(YvfK_C5J z-cZ3tZM}AHujx z_&?rIv`e&b2(#dSydj=J+eciK55!}Tc`^U;hO8pTe#Icp&5tW1emei#8yXB9%8!Nk z#0dyR8@Tcqa(n-*kG-uK_b+cqIrupPrEw#rU1K~)RQ%uGkX8tUgdvt{E&k47yzNSY zLlVU4Z*OQWN^dUV7G5HCXQEFCUC`g&koX5l7q7@7s-(t*58VE7e|tm9;qt*rX2kKF zl}U72$-Z+*3_}0%hVl~=%Lggh3S&RQ>0S>emu<$>{Ot|721|udvYp`zPsE+nCt*6@ z-&jd$Z%pp}+Z&qmpWLKfa83TKFGS;$_Ln!rolFpwfLojW%Q>7VDkUOBquwfPgEg&H zJdHRr?#Ex=kRx&6QX?(Lc^VmQ`j!44Z%Do<0NY48v`K|Wl0fX2P8FE>#~W&jNuSMp zK}c0=NqK`Oljtyu_FdK=Z^!^`(vWGC6%H?kP^myT|MG?oXR}GN0N^aZq7t0dI)^R_ z@Z)8)$Y0*j)LG&Kk_>V*049+sT}-X;mp9aUmPC{q%MO*atS5icqwYNr6HC7=N z0W=D&%6cum{z{7AGHxT{+q5M3q^e0gDqGJ=J~C?HtkXbVBuj0TBN4@naBh=h#q^Ce zUrCY0Y7LfAIW%6y_*rS?SOIfI?N?HyI9iK22VnnRv072&Hs)(y5v3Pc_g_-PQ(pI@ zuhg5?55lNgPA&47hluMdDOyk9(Jo&}0jSU+YNl{BUsoONySkn$`>fO=0EVd8;+gU7^Ms9KMpG%orzc z0%Y$R!c3F{xO&6k28FlgucQbHr)6=smesonp}3_Bu0dv~q2Z+ED=C_RX^oF;n$l`Y zk#2pCh|Bp(iZY|~=vn|{R z-m2Jgfn8L8UWs!8(6jFNN{W)hI!3jDk7Ek=5vit`Enh>#3;!iW@Zn3+1Z3K^7TQ3x z@x~+0|B|8*jjnmaTITbl6rPsiOkhcS%gt9(R2h0_jTdBHn!sBJ$N)6F)!Dyxe3B5$4+exMuvh;QU@jbcendq+uT^C^gCBnqJ^7$47mquo_IQUGBj+GkYp zZG;K6Cc7=4X0`-6s}d`6U@~O1M5iGGkPZP3`>l5j1soQLkH+Oy3^P&ppdDD6HBOBO zEbmCu%?BhR44VPQ2cl{_ZE%hY3aMLdYD>|$~pe9MOY)~&Q&~TzrZ*>SzKW1ZbXKM3l zP=ymP5p$S%P|EspG;wlfSLbTL=U52JNI}sZtiJOlTJuqg?X;6wk(L=pRB5)Yvp9kC zVjsmkoj>B@nvf>Zz7FPuiuG-d3n~o7l2t!yC(sEd(+e>MP-+)r6c>$Ti`1*A9@8^A z*v1L@muv_M^*!d+?!L=Upb0zxF4Iwjcu)pRm%fr4^0P(LXe^lxTw^gCk4HPsI`?CTdX)lbo#eZe==g^%hihP-24wJ zgXq*2tLoIYrApoP)zvkdpKJX2>zF@@JuUsqtq7XYK@NoujPQDxSL34}Ig z__Kzputo@Q#&u8^`4(q8H|w}JtwD-SC+VBX?Z%rc^#}a3*-?Px^#O99t&XfM+>XY( zDwNyzDZ<-4yot@%%j&IcEOnon?65d~{82`@{=SJVa`+vTpF7YogCK&5i_7v*yjof9 z>U!DThs_=Mj%|Fs^pB5~Ti+6F#y!NVB(n1odFwrL`dnSQ-kQukw2r-o%`a4{hKO+u z6?Nk!YV{}K01wjC+lK$eaS3-$FXZh0kyYe`%t5K_HgAUiO54`vddV)qVLQ)Z#aOiT zXA=9?VUXuOZ0lCR#(=!{ZoX)@f_kc|ukd zf94Ut?b(oAav2cIYU}K2vp;I7BD5?RjzF zms*{3L26k3I)N&Gv9+PyozZ@IOnW5DxHG4>W_5lwiMO@vwH6_LiPHs)&Z&gy*uT)a zg0cUaEiV4ucBNQVtjT+wg>-cTD7{C#34uRuu)7r$Xh%ESz_r<~VL&CmzVt^rf&KdG za~}TJ4@WlJP*(1C2ec86yM3-fe@<4tLy~*R_3QZO^zHT4(GTDjh_L^V|8_T`kGA`P zqxFU;|BQ6DD3jp+-uC|2)i4Kgd!=2I1k!2P#4(fgvGCNHO6+Cj)yy(ss!aD2)9C{h zIIJw(BUMdSH_m@{`k6osj=gF5%T2;W>W%lkwFdZLTjaIGu+{gP6 zI=Lf=GM1!y+n4pP_VEf>Sm zM##c78Hk2KPg0VPyU`ET>(ZdfWGhQLEZ*a#Pp#!K-})iG-o8mz3~2 zKCf1HUbpFeyt(#uK}DWl@^bv^4NNbVFV)+8b^XGN?T@!M+lS_M2V<%9x86M;6y!No zCttbsPLL4WUFF|)&(?1h?;-WJpM~ppG8nqRpfLd5eJjc_G@mf9SAsBPNe)7AbPYE` z2=&tT!brRiH^L~tWWWTvbNXewpZ92I^TANb>3=Qc;hi*N9cxSf{)?*;1~@>=G)gTAfLP z=UmpJORQWAzPJ8OkS{gGReHsC!?;uMa4-M+JEn_*5WFvfvkdaO1eVmiiWS>ybFiv(=)3R<{6avRxbXC{$ z#6zQZ)+kgliwF~<=-W>+e)i)&T z@!a2U-8r4TP86xGYk?gzLO&-aBeVGgzwsVd+wS!gc?xtk>Y=(WrfR*rt{A8KK8+DK zf4FThDDBX`%gOQH1wXgXaz6_p*~xHjrns54l$(9nSE?5Cc`=_t{BgUeU-t99(jEKo zzUg0<;@}=te`*0p6?5ow`rMMQ?8xv}fnLh)bKT^Lm4DTFgFz|$`5v7855eO% zL{2P+Yob~g&r`maXAZE1WUuhE~^z0wh*kXzi zrp8#EX>;@u5E7*QUU@?m9&E9a)4F%-1>e*$xcXeCT=d)W;%M(gxP}yCoZqJ~E=12v5IGoqgB?4rXx^6QQKwG~DJljSTy3Y~fy2hcB_SUD>?~mcKGu0O+Tj>-M@p&f2gNdIXkZFZ%4y2D zivAC#Y)Y@8nigy0R@$4dOPPwQKxfRfaz;$N>Yc`dO6PQe{h+4& z01Wv*gH{d#&9zCFH9_AgR-@g<)LO*UKy`_on7Rz!nwmmPA+d{P-+BZ4g+A>pXun(f zcD0UlZO%EPK^8>AiEFM5sWtia+1T1j&(-QV)<0WM2~)2Qk-s|RxmB7#QKh9?&(#HZ zwjWsoa0?4l9Gd2f?OZ8bv@f*OlB`Z?9;jc5#8__RXvWfv7%X+H&M>Ob2lhl3+u8y; zIpr%F?R+o2_0LVzyH)rR!*e2Kfi?|*+zNBM({OnYERW(fC%qt5?c`lbjlAkU`@al6 zyK-0R{fw?utV9#Nk$vZWK@@<{cp7#zXAEV_ck1wm(dxuehCJ9d@(^1eWBg;2eqOUv zZ2wo$O59Nagr7**t`>rBPVQdTAhL7h7YwC8zVksM43;rfKBn}Q!Nb~El&PPd)7RhF z2Sv0fT_orxUnc59hb!j2rZcpS^#(lx2jx>Pea!jnMT&HeoWHFX{JB~h7dg^Zw4k8b zh0pnsYmu}})Qn4x6}cMs=YV0JOFEU$Tx*_l%Q=^ypo{3H-j_9z$>>FjzaK6#qePee zRm;?*PRX-3d1E4m^$gV_D-wwf-+DTUPv)(iSKkbG+dwN~l-M>!u#thn@wR zux3ClI3UdYSJmnkr>nN+xfzDLe!y&ATlo3Pv{!C! zS-++1l3d_@$gthnZr%l~;zwp+NE^BWMwr5FSJHxhtYIXo#32u7&ZuU|c$gzLVs-mm z+UozFJQkp9XPveW0eNsQ2Q~X_>-?L=OfyMf-CP;tce6^jxBb)A9?)Fs_t;N7bf-J3Fl%Jg%`_$vMK@@qxU?qc#+?2B@<-^V3#?Zq)sv+Ca7wJv?V zISu`OPfRM&4?D&42NsfOkXcU_7p&q{4GGYctc(3$sR{ z(LTi81=g+8@PMAzb4j9D88G5?NpMciqa=*`A^4(LFNA+h#IXSqls(&qHTypbBj^zj zuj>WbH%bt9TbXLv#Uo;V0Ys#OQHJ3M=2j5%og25(c`J;}}hd*-kJUL&P5h{li$h$h{2o7c}a!Nv;+2?(+C83lr*xH+UfdPx|10|_n=(Uu$i9#&P^K2l}xVL1R%IL>Sv&LvVC1}2hija?)A9NM*4W?b7EP}-q`Y_Z_NXLsv zBmD&9tCP~f|IIZnS_tT$ju@J9=$Wi1?6i@IbCK@4C?OV{;CK*sY=FCRmaN+OEe76Y zoJEsrJQnOCGv_lL88uVpD4cQY=!#z%@UnhYrku!2=H)(^Q^c)O#OqYVwFQH2nI#xh#GeG~hR7Iyrwb#UF>OV=Kp@&j zYlm5WdE`whyQflsloK{syjd9@h;K+Yx zrQG}5ztJPx@P`p6lPH`n>u9F?ZSs^*uPn-}R2WG@=v19VMz}|>=teFFDu96&5BR~# zlu$JPx;CbfOv>o){sb7XeRi= zeg8L|&7j1I*8_FAGIb+eh^WN;dnI>}!k#;-QbnVCqCN0Z^ZQPxKS5Zr>=dDohLev_ z`o~&21&m3tT9#`TKvhFgRd5MqbuX!+o*_(KVYNLf5AmCJdnb$2rC2G=I?}F2pi}mJ zLmE!q=s@jx522o=0T@kQ!IYz)T;Gg=f#zvU7;G#wK%RN+FR|&T8II9gHFRU8FWay$?+5^H3$=ztVYd1Wqc4ICK z0%mtzTM_Y}WP>%A^lLFZYpK3V8Zil!#YNx|;*0mnb*l=23Uo1$eSZi2SUv1j9`CSnJ(Xx$B)}A*A?AZ)6CH0vomp=+YhD=7Rmz$ z7-W)9VpYSKh{CeVeiq#>@;Wcdfs;#%Gn&c;9%#MMbh$<#n!(Xy%^^I@v+w?VDwI+k z)2`G+RNgw26*Bdmg!w!)_3N#~~E)36mp-j+m*~ewCHwoWX`UD1wsMVhC&i@}Nw?A_q<` zX3NYfTg2Xt;iJqVk&u|#RW3>oE*Q9C%mL@dQE#Itt2Rj#KBJZbqzD8*1y^me8mF)3 zvdllqkw=_PUP`tB9*b+jQQkg#;F&6^?W;iWYv$kuM9uk;cB<^N{6Cd<{drsr!)LL`6fg&SV zDK?7&_!cqX0OpHF*|0P-CKOlGi`{!#<46M9G`?a}sf=+^?9feYhRpaYnGGX5PG!wS$&iQB%lDXYo& zN`3U|GREF1z-*jRr8I17^>dK{cu=_}cjotN!^y@x+v0`s=I_gOF!M!9&cceH+Vj-T zDPd;I67x}z;tzH>NM;8_PHcTbyPKQ{$X~Vw342&ryCu}OG_z>dC5L$jqy+I60V@tT zx%LuA#>+Wj2nzOZViE6K6NNCh|1x2StIeke=F*(kaOCgC=8RqZz=D1l{}MAJi=F>K z!eYQOgE-#&zJV8|;KWpoY2kJU_2&+0)&{k19z@?9k=J&yW2EtVGVkhhFa6@g6N;(d z1U43ZH`k+9Z(vS9uOA|JPmC<1+cB)f;?fW?q*diCMwG;iUt5W7o1CqaGh4 z%L6GRL616D#RbrM5F>J3%hC4X;hII`egX6NqzjAX~D z$hN#Dkm=wydfBh`$T4jwP;9;M&poWV5agaJ``6zsFS+3;`4lC}E!0-;1o#k!{Bn6? z3fA*zU1N3~!hTFWl?c6-nh{ZoT8 zR~D+DhV>c2e)mFptF(CSUvB%Jo@-OFT5EpRT2()S{E?3m17@)IUNxtRV!cQOQ)~BU z$=`P=)_3KL2r2bl_y15$10Q>C0Btf!EPbm>+5FdLDFoi})QjSK03D&zHDhlmT#fbcJ1$f)9tfq z(B8`A-=$RfOVwq><_rKG2K5ab0mEX(;M;dNY!;i78<+|l zg=5)brBbCTt4G=;fL17F816&)e2!r!;lu1KT4zK6C z%kyWZot{8w^r4nV=DmRkY>=^S`$CCeE7vRw(B_5ZXd-O;j*X6+>Nq2HCr)<5=(l{)izpzRyS)kd2;-NMBi=gp3k`ZdIiYQW9GSSoAvd%A~KX5nzc6Svoi z#_-JU-PP3x@4uV9;Y23;Ew}rJvt_)_E-b^_tgF@eYJ2_47SlSliAVi*j2D%RHC_TQIS{^w5Hmb{8KGG2#ncQ!(E6wf63hbqt z2!sfL;hR#Sn}es@%(ZW;x;Fr#%a zn$Tbmk~eI_v4MV0{2b?Fox~6DVRfeGJYC2-g9>Avi9}VW?GHcIF>|r2*l?;qTz+R; zP?VOnpHY1)VYM`L^ij4V@U~%JQBZ4higYrwoo_k!>!egrZvWuea5Tr|*z5+6bNn;m zwV2%O`c~BtQv8H%Tk|(kjafY!iy>npn)j3Ifc2CAMHPO>i-`SbEE4PK<@C`VbK z&DFPGs;<_dZLBu@=-ZCnLG8Ez?`2!OpSP;P56Fd;@84W}@|N=D zBrk~X!Sh4lBi0in!~bOW^=vI`x;#X8en9+X@o6^GU*PpLGKv3fQoxgR+Nb$T1L8ua zrWuQq^aT04M&bdD))%OHz|m^{Jn|B|?KRWC%pwOoy=~1wxOYB>i&1~GB9PDNt3b!B z2_k$azQm^%LcP6^gy7y?6N6!dEjjz84Nq9CaZDHJ@}NqAv>!7IB{TTYuWtlMQDb=N^!F{@OmeKhJ3A;j z>bWyb=46Awh4Qi53w~D@Cu9oFuhPas%EGbOW@92mcsI~Yd(J5{9U)+E1&hcqq&Qgb zVH8kYdr}wZCQw6U%V_Hi$l)?dg+x|TiICCGCc`vX?X%%DD6N*!m(&zgU2Huyag|%# zmKF-7Q%fmV%td=(SPZg_W4^ggKsc~vFmx`ntTv_mp&ipOX0ZfQr(MWLTh!%TREuE5 zmF2!;i22YuR0RL(&<$n1VMKB8M>V7?c}mLkKCDCvBWPbQ?-kip(SNb0N!C7D@CbqW zObElFg~{5gfpXvJ^zPfFn~*BC4+jcdrld$!fyvb`EO=QG#Ue{RGs)(>m9pt&%cDw5 zaUmZI$Q`2%K+oC8KACePrnhp?iTv+R;WSp)v8kt;k~*Mo6^1AskO)gTpl%FL_B-~k zlCdR)%I`WltS8G(hKO+$-?zpMDmM<@YMM)wdVcMG*Ej`p%cAfhQpsLlGVfz;OlmM` zX4X(;j(KL7;Airh4wbkJgyq@6#}*%7?Y^j67C(*v2u_x0?H1T}UcF!I&eQFH3j@0> zq!KO+h0@?nEg7{<(+vnJ2c0?@HM5hOdWml-! zGkOddRNQ!^Q!lU2vFAm={)}>==wFG|_rZiW{3iqRdrBBd}-KzTS zi2v!5r$vCHj-=t-)H=0G`!5C2@W{b_6YE-{97j_EuR#0xKuLWltSl3 zqElUU=~|D+&vwPpfq1?Wm4Y+*>RlY3`abT~*uMPM-*(|0`s>{GbLwjdB9jUg#5LkBavMKCJ9PMwQF`oE7lL$}PvXx#VJdW& zzFi;omfgHICqp$b&~YrF4m%lSH-+##zuetl_qi5W?JEwaZ`WgQ{p0U556$FxmhU_%q0dIfRDA-9Qir|E0lgdu6LBc8 zI_H}%S0ygDpGK+wy9dU$o*2u!YtpS;(O_84aTcX4-xD6xfjYP0^Z~hOhdaCb%zGCL zZ-*efe^b>fD&-9MfRvY2QP`p%n#1px&FkG?2z9{_|9-tUQ4j9E{f!pT?yBB@p#TG> zqL;~EMUkp@#F`R)Ui7gmbv*161ggDUe^>mgh?wUUhjpik+$yVki=z+n_yHzHT#iEw z88~L2tlxr(4P~g`3aOq`^%o+8p7VK1B{zhtj zCyr*X*40nNO&WcKPlM!HVx`}KD8S)aMabDsh1q1qUPurmihyAZWfFY@`*85R!1mUB91^YO**^f;g+$c=tZ}cm=6HhIT`Xlru2nGqZ`I)bx?h zP)$4Xi5QnB(qrHwkWt6-9Wb_D4E3P?u3J&;G?Nhezvq*;sS$ham_><_;2JqoYvO2a z<-uqYIu*2VZ;_{vYQS!ywk;F$Bv7s)mNv#z{!B7*!KL?GqbrG`IoeatFW4m5atPL< zGaEup!Py>7paUnn#r(_2xUX<3@;Y#w^0*s?B^Z= zDml#(nUGQ9PI`WBJnSz@@ejkD1h5RB3j(7f&!xSec=$8Z?9x$f(1-h z25ZSFx~LH1O$U0Tx=H~?5+PC`hP;H`oVkIFA;<&Lwjy~irJ32(=*a`G5mL#!138AA z)AEtg&Wy355qU8RlE2xs5r~RGpQdejk8h*D=6dTthF5J#j#C}MgCTvy^&eHIZ%Co#zs zP8=rc^rkOVwsdw6GLo_Lq1fEY8q$T<3q)?ToTk^L=8n5Ni zjFVHE`B_+29V!L>75KVGG=5Q&%t(}HY!z0Qr-HZ@#blFcdBij)g< zcE@iQTP;nM<>_=CgnJRVgzash%1$%Mjw3pUhcza*La{Bn9DuuqhK_-CgKCF=#3!F@DlIped@0PX=x6N`rwMIU$@9N2na*-lT@o`a zh+T|CoLF*IE$)dem@z1rU-YY*wW?Y%!-y&l<1DR%tWNN|K7K4OI

        IP;710!I99`-!Ff3Hib=HMjpH%Ivp>JaW|8Xr9s-5jH0w-`7H{rImf#)+UjE5P) z`>!?+jb!eMMAB-&<1Wy^;S=B=&510_<#CRkRPfcT8M#!~=|KVGg<0^K(4_<;zNM?) z#nIL41aM5xAbPDR`~-Lt2yy+yNZ2+C1eWh1G2N?)+%DOu$yvs6Fg@Z9-G|T@k&2?J zF+D2{JQ^_tOX(WAGQ9{5JR4oBv|WGB0r*~_TOl0YkZQUrtmz4vvPhYqX_@CJ8S6qQAjE4RLNC}U3!ilzp3NLO zT8^o?Xr9?5|tB(w78_bw8AFjLI z94~MoPX7EXOrd37%fdNk#MQ6GMYldgrCNu)!Yj1<&UK4_TyBw~i@fJZ=zm4X=}0tA zYin0%%Xm$U%qV|zOTtT8!(1-oWlQF5M=tE>DknO&curC1fNSoQOi19>blj^jLuKsr z8NuQQM-5L$Qd8`7D8ND&L|NptH*OV1U+5q=;>aLRC7h!h)-=k5x3~i&5 zS&4P;qH0Vht?!zncA}Phf$iN0sQalJ+Ss1p3IolgHrrD}=`WH)|mF!nwR7i%(+f8yFNGc9E| zV**hp<~*9|TbX+|rBd2hM4nr?pFm|lwUj*ZIMZ7@H(Ene@eaE+O+E3HM%s>Z*y$e% zT0hzqp1eJ}Ih=_*{GxL_K6QMva>_h)dbV;_KXtCRa)Cc}skU-$KXHw8b7MMj)3*AL zH^#Q|*gyV{H4p8@8a|s=d_sPOk4ZnjhhqCnvL(={ok6kzO}@_ z{riLN5rO+pmGnQ}ScZiwg6Ch5aLZpQ4+$lYzuH{Cj64FY{?mFip@Tf*t&ifR ztAPbkN=}D3LhAs^W4Ymzq{{LnY^ek~?$DCwP1?F_KXOD*%B)dxn;5+GLaXG+7uMpJ zke1eLzr8|=i8hI~6!W75>D_EPvz+^UIs#+M6cPaVYt-vC=H1Q{idQt;ms=p1ftN2ju0gZ&2iF9;zeFBZ&5!GPSqW6yDTLF(M$R9wmi2cbTOD1 zl_wALBDVjd+w{&Vwa=4GMZV|hrOQc}Ygc)Fi`y?Mn@;NnOj#sUyr{kp6%!6`ZkoGg z3DNP1<9Z_pQS8{=WxS(&vNQWbAusvHCgr^ob)Jrq+4pA`N=3k8dUt$8t zuBJa~Z?qoYi{Ls{5YE(ge5TGjTHEhozv0b&|ETcLUl8^z#aeJx@kM`XpQG`WX8Fjs zCp)%d%*EyDj$(G}?Kl@u%Zct>b)T&5GoGl&QD3cICL>>=A{gdveSOS@DBtY2w|1gs zl}~OpVZn0W_z-JqE1LEV=9sOS(n^8m$*k(+=5^TTq+5Ljd2Ykj?ado+QI(D2Cml6= z>%_GcVEHsYmzflNR#$bsdSNH%ogeRa*5aAVU3ssZ3*hwb1FI7ot{bk~ork_V-QZ2# zYCBzql8v~t0O84#Q+%p21rROU&+@G~kZ6k%K6k<2nt(YeOZTUjJCZS1dmPJe&KD0gs?K&bC{Fyve)V0}T*h>SKG4u)TCG#Qc% zF-p%s1S*lyLQAdjKsXVO*M`PV6R{99$(&$`8S>#Ya>W0iQZDTR$W){De@nSowpxwW zt4*$NSav$C&Zl*YUo-J*k$B<-o7%P2x(WW1XnH?9s>Tv*G5aT^pX`FF|39SM&?R=? z|10Hsxk|@iffur^C^hx3$6yj-y{R|t_P2UsZ(Q=yJFHXT1^Ljw8{8jaBuZ2I{=ZW0 z?LJ};hd-gO*MCy3{QBLkL)d_~c zrO1lwgJXD@>O}ZIQm#UNnw*zR;YJ?30{OAhf_+tIk+I{iH-iOfk!GEu=`LKRjd;*7 zq3{2Za#>KK`OrqmlXaBDLM`AcMIsSw67s@f>Yc`D)!*rQX~W-;rE3)qSfo?Le1H?! zk;X_A=V3nRQ(XT^xjdHxQKNj18;R2b%Kg&PVCVC)3TF`X^i1rNLQymI!O9H)aYvVh zNnVCdjCmRM%_L>mkN5wiTv4=MmUuc$%6A0WWL2tr?V80;Juju+Z>oQj)ii|zC%R9( zqA{gF3a;hzM$!COt0u|1Smlb@zF2D(ye12(II=pY%xKVq9Lu)O?2j|Qt0CPMHF~R3 z)-}o4BUk@N$~|mUSo6B<#MZ9^qfpRMD-}VIRh6gU?2U)=mIJA!f*~!h1)1-wcl{U@ zg;D#?nt{C^#lDrcA5%MqeGn%a;-=r7ljS0SVQzCTimxrFPHrX0;%us~e!*dssX0;C znt=20<0S7dVaACkJg)HlUH8B z|46w=PN!c|ZYF=NybN&Y)NE_581EG7&9Y;<=;b=&d$Fu+=RK0fY~%k(xzLDLUs7%d zyMtrl^f5;e!Nz!p<5m05S0N(rf$0}0{QI*7hKtc*U4Me76;t_$yEWTx{xdHJ% z8h1Aw^TBPo+R+X~pT5h<|I>bWj}Y|!xJ{&Y^8wO#YDL|C|19|dZb#=EEUali^w`y2 zEbV2(Lj+!4Li(LFg5rIC2a0<|kQ*E&m_$U&q^z0m5%z*407q}3z(wFd*8Fb=ZT_ak zN-JE#jSk_$E|TYp@Ld>6nBWBVLyU0oKbbM733z;{N;T41n%Ur2+Pxj(N9JDHYZrlq zJ*?K1!3h}DD8mPIRLCK2yn<^7-^%2>CALDyHU+~btA$e?O7Rzifrz$>4D6Q`@n4^{ zG)5Q)#EC@=uujoB-34=7Ko1Glr5g`t5ZwYP$%~k+=#4cj_yHyNs-%2MXk0!g84wlZKRI!Pe59v2trkhnwd>M>2&;au?m7szk~cEv*-$1WH^}#<<{E`oWmE z*<+P&t}{M5EJ}mmvROnzh(7($xVSQ^Io{9@J!>~LP6_JRVt4 zpUmK8#(jWqDAC}mo~mu*m|Z_3oOuu92J#WcQ?eNt(yZ4y)=rHSw|qh&)aEiNhNK68&U zYs$HwY|6BlXA1Kc)XAPmHo;FthI z%&%EeEw%cy<1(fsO8-2ZGPYu+?C7Lf?GLv;%EreSaIz(hmo@cno)bU-yES~VhKdwg zNu$*A#y-Mzx}Cssa%anilkJzu|;E8|dOiO8&G2M$_r^K9~! zOYt|I^N2c2PC&_fU8RO@JX64fOd>(Iw&MK}s?sFG*mqF{5Pc*D%KX*gG zdlHPvBh7U3gG@=nLUmgoNSo|aZsIoq!4IjubpvSLv@TSnecR0RJ}V=|XsCNDS(2a) zW&V`@bK|Qpd-$K(pBKF}YPWV28%D%ewEwRri4TgFg$An7s_Ms>_`IdCR- z615{pM@*OeTEi6^a3xH&hO9y~drhPAcK3!kSwT26-wA9pVEJ1ayxnDH(9w;wwR<_= zO1KdxzOIK({mFMCM4c0An-l|dPDVvmxby0Q@$pV_IF+&O zadO+Z%f1kgz;#Li5Tf#{c5|Kc%aP}vDEg1i7nR(9bCou|#CW>5qmK>clfruXyq5n| z;lX{Qd+xQY*FPWaYOrls%-1D0ax0(ORy%*$bn}{!v$4m^zFVYZtS#kzcZ%IcJr>KO-8<7NZ zh339%mJ@0-EN8IOFDGIBgKZO0vZT*n?dOwSecqoXx7y!y1{{|)A`|@Pl zO}2W}iOF~>LWQv)&NrN^PjHTh*F4kOMZQS+)4Z0VaZoXQ?JQukDO6ThN%W$<%GtSE zGxcpFebKf37$n&`(cxTy`B!om%6?0)1hbxB#%6C4a2>S$76&@t@SG>Oi)UKeq{$_} zf#Y4HVki1HID@m=(!2wP zx1F*|ME=-|EfBAv??Vxe6C(v`ag+5l%tZH#R@D0}fDvQ&al;|)U;cb@H}SbPhZ&x_ z)*XiaoZ7}{+zEN&=~T7feG;~F~$CZ2_v={Xm#Muge@k!B9?hA z8_z5j@<62+Lb%y@xj+qO;~2K_^$~f@z8IpXRPB#JrUt0XREt@h+*(RIMcg+4TqxoN z=!EtY!VGMZ3hz=JS=jLfWd;FxASQ1XKY#XWj0}ZS2)sm*eF-_4(E2#+7C@Es1bACf21^Y}OUUdquh$2Cigmb*1LO#T+ zwy(Up+1VRK>{jxmpJxw3W@WD@lZT-FRiAK%z;as4@mQR2bBp3R&*{TTmUqVRyOc0BK%*jyobL>3X}+9fa!3A2vW{)Qq7o$nZUr=iH5J31sK_98L2 zBT|Lk>A2sbfRQdv=x9&gs~BK*RoSQf%OA*B>X`e(h<$nz!Ch%lF@71zeTNI zQ!XzO<`JKjg`}sh)@pzGUULps))~a2bXE$(vz=l@P79n-u)+zW|0JKZodSUw2x+VA zGGd6qOH)XqvYq$$DY%00lpR-mBC(hN@o5-UX72;hSHe7Zsun zZA5`z5DrZ!{AQ!wtNNRD0nU<=E;K=Fd9hQAS#Ug|Pfyg;4#OF0K_>N9|A4({0I7ej zezhi6&!73%YO;YQJ%OhaohkZHJWDlm8^Y0$cX~OFGRxtAi^boZ#Wt_sV-O?ZmW-XP zCD!d$3{KyeT5R=l{o21p<{6nA$o6t_}b zio3g)(gMYE_&(41ojLc;-1{f&nLTUITA#h%FPgV_pI@_@#k+|*$VnI~gCm78u{{&;l!ad+0u@1B%2))C$&eDz7Y zUuAlOnay;W&$()fZ=``ze^ez+d(VZ;FRbDZsg|qnV)@pku>0G+#~SvU>L?yB3zRaR zmb5d-v|Bu<-|W96pt{G{J5T|ef7M$YnX^CyvHiwXUcIa45577rnLtEZ66j?DtZKKO zsG67>{IEd&sZinJ4N966Sg0|Cj67sJc_Eh!@~$=deFMb#@>E(tA*GCXRkPW&KGH*L z9n95xlpbP zPiu|PyU^;;6o};acYLSVi_58+JC)2hY&Yl-j6#J!x-GW3g- zRfv+rDp|4)}8R?l=Pbjg;Rn36C=cf zYewWxxS*O`lzx^mIsz)FUE;pfo8kRg*y3Fc)bX!RgL`n7K=`!&bZaB1ML)L#Jwtd} zo9T$%b&l{U#S5HncBJ{C#YfaWMeuMre{t|3S4bOY*{HnUtd-nac&=da_osr}GsgDB z*l&6R16&2C`5#yEPlOR-TArxwd5PpjWvvBtt{!ZaFY~c@miL_EnWYg255$xiA6zOea*N;J@4oa+cs+1 zt19j_yGAO8-dn`rmD&2%a0}+sT?MtdE7!cKVQDTJsIzik_Oa*AA2z5{9j!+6=oG*4 zs6$ybcDgrHNKFt{uO~9pPySsmoT!|l+3RTC5Pf@F2U4$L$52-1OVM<) zLo|r0GdioKf~sqis(aV4`!K8fbhZ0}s^_nNs~|%=6`+knvh&)o7d^WdEBktFm1{1m z1L6Pbezlj5y6?479|zudl(imMM-LvLjVqw!BY1VKhGBH9odBK1toTN>9ueGBMjrKbJkh z|9xWmHDKl?vraw9U+`@@d-7pz^0hL6Cj<$X0f&-)3O$D&^GSp=gj3uMX{)dq#}t3* z5l2yktMjV*GbJ`9{p2hJ&$5#Xe~aWs#DH@fr(Y5%lnCd{8VD*|9{Nuh0# zNN!KM8!xh;BXJ{5qwf$=<}Z>lEKL?I4eSu&10p|#5P4By2horqhy$h2AjE2~INyJt zUq(ja4MF0SSXM{D5kkVjMaB_-wR+kI5DFo7VZ`Az1F)L|cqLX288!~Pc+j?2CwGX% zBm@SZ=v4ywr^Jc83;_a2#JquvL?+vLR!evcOa4!bR9j1CyF?7nj9;F(kWGmx^OtdG zh;Y0LonY%ncFd z4W??78-d(inBgu}@5bV5fXS=9&$%*H>%^pH^tky%lC+12#li!;zExEeY?W<7@<4h& zvCVi{qTc-G3zPYgu04V@yuAPbHUMYz^*oL#!C5yBZ4W)eM;zv!Kg%2IB_D{VOc@fy zI?t)`N%QE@#IK12k%~WD`jT8@Y+b*7_lGMa8+i*yzzqKuvOqwFEh+JjBJ^q~aMQ|S zHmw_pwhM}fY2@4ZW6W}B z7!!rs<~PxsYT8f&-hV5Xfau~V^P8G}lQ7Z3Q7Ong^3pooLfRSy?l$vfDxoc&Fb{Vi zRVJtkUdmdXTuq#>b@(H2#X4^<_r|h5#*1~`U!SdZ1mk_|e!ROnUG0hg*z^4K$idLc zs3~FmXb-#$!DPk@X#ucuH}H!qGu)+Y zsD^p)LYy$W8x&N(MoOkjwiB(%+( z+sbJGnO9c$rX?5<3^`i|4e><#Hhy)L3jO6p$+`q!iKdfn8FN;aOR}y5up~s$7R2^# zSVr7@Mgb{1pihTYS^zT0TnFsk4@2v8Q=sZ6;IpN~Y)( z5)jr_q9`LI7w7KU%MOJyR2*Ky4AvThsg4SaTYBlD;%Lq9n49Sqo~E4~^+=4?g*3?N z!}1BN_CbFztAIKF)e;K=F2_`zR&L^k`5@f{R@9#F5KSNxk2oMnz*L-B$naj>4e;B6 zWja5`BNM8UW6e6i_!Q;2VBkFAxo8rM-3EJL&y=!xsECD(Aria`}rGEf@#MnFoKXAP()MCsD4tAi8r2{=A zsJ(5dK^B z-ViG0|hjEg8Vw0KcdP03VADS>EQK9kc3;(`^e5H z@dt+kW^x35R48X3@jl}uQ=MiOdSQgS4G%2z*L5TcIV3a_!XP0Zf7fgfs5B`IRXFcF;Y*TgY30D9>+5#7|ep?r4dbnKj9Hhnb(j!ruulz);Cq z+g^HQ3GxgHFFEZwbrku;{^J5^E=WBP`N!4dAuzcqRgpsa6V~d|s8@4SO^xGSk(|ZI zMOFAW3|SOgqBysqBAqt*8vzLsy=?`?XdgH;`EU{{Zi zB1Fy=DSo-jp&C*$i*I0Dg|C&k-y0SJjZkmq6*fvE+=SE>XyKRGhknoT4|<_T(ta+l z#Dl;Mn}0_c>roSRQEqH2Q0+lBcLP9j>B|Y1jYxoll{T1y)HGdz6=_9#Y@Q*;RC$XN zkY|JMCY=RQ>G{+&iI z8N|Y%BO&Dh(kQwR(iicWVU_&TWR*of(Df_kt+PnKxD~hz{rYj@1{xgCA6aXGz2tkC4ly zGh^}i&CY?$8PDJ+AyweaK=zlAku_Dwv-lIvsot31LR0OxnrSk?6e*C%Z1kIiYo-N@sm~uU{j6G?nj79)V28M_b>L0hWsH5mF7-w0&_~=q3DE(2jBnaTRO9|6R|V{II=78|!u^{* z7I45<*EZoC_c!}A;85hEZ88}5DjzHGNcv6tbbQ=ZF-PFBvUB@v9`1FyQs4% zF7CRTZVeE`K)Kka!dDX=cxL&gV|nuFu#rgQoY<^mWz)&+!2fU z-1lO6dDk0Ma=x#EpH5TAI#!i71qR19hU!)2&mBDfx%>B`EeK6qaCFiwC z7U=D^`MfR{e0LhzvqT&3r@tJ0+wc70+xBEIQn~vB3na$N2MBipfM`MG2)Z6mzlJ^t zDr*SYKoF5U$1b{kT?@_fq2WGhNW(WjlOaD+AzyN`0P*k;ud9%o=FqE!P@L;f#&V~( ztYIyo0j#%^C z@2v1H`RG2Im?3zKF<-Q4OVr3w%w%hH(UQ;@D0bc^w!AfxR6TleICkA8GRFr$6%e-} zAGbdY?;nopNp?6Gjyo@pI1&oJX^gwLiT-61|Bqa*TQBBzIR1$>;yyj@nKc0=G8`Zr z42(>`IEJAK$6+2P;3eCLE)6EWV*8?em`Kha|2pyu zo395`#TTyQFW{jsI4;p|6q5Ky+~3+J30EWuM zV+Bp07xIkSf?`-cK;y+Za-WOf*7_Q*)~L`4j_ZS+sJoDtvT zX5pO0<;=mzoYjoXm64oHw#*HT++E*{9fjP(<#fBq+*5_jgOS{eNB#K$wep@7=SX?JmEE82+TArdXTFl#?4aO`HxGz>$EcxkEtQ}Pn>rC6}+y{~iYVUzC*2 z5a+dGw)_i98cqJr8u(hRXegduDvDY`!y+$W?*G6O)=l&3oJ$ebFXVJ|;_KBGm)-7I#g^Lj4xhg#|8H{oV6IBH zanyLcwPAONc0}?S?)7zljAY$>W8Bwu`#*A;7Tn%+JX`*Pk_OI@?)2wajOBtq6z;8H zbL?((>Aia)r&+$zs&uwq?hgM)POn{UFKUsX=e@ua3#$vBhMOicg8wdBv!W4ns{cz) zSJjgCqaQfeM$-F2PQSnt zM1-N+;Z%0R+Y!Wmpq&VYxTS(f#=>E(?h4kX3dY!Pv z#D}w=lozMkRca*m-5giun%`%YW`9MnpH{Et*qzq=M^2Yl81S>z^a>oYJJ+MVkken! zE6=`;3!HNLePD;5HDTj+7&gpVS2-F@di_UEhg0b_**Mw%@?O{pKW{s0u1aZrF*Pna zuYO6_7XLaJGi?7>Q+3e;z|y_=kDRV=>C(Bj@5O#I_{Q;BfU}_=UDx4qfc#w)#Qy?( z_SOP#lJs(ju_fzrg!Kg_g>T&` zg`6IB8gJN2Ll?cXN{MjtbI2}xA*W*{gYK7#40Y~Ln^Xty&sz_jicY^N(L7i-{^Ra6 zYA17kyga@X>pbGsBzycbRR(*!n$!Jcw8ky>>F-5?Xx-C4WBnI$dM~(CB77euU0Vg=4h6 z!oey0BG@Fs^uZF2i*RR6e8t`mm#YR5l6~zb-I0U6kki-VNBs_6zZt-m=28wJXnalI zqh0QI$fhAO@s@8HK1;vwd3pmU@-O7{I1R}voU@}rJ(l)WFBN=lK+KCkg`#a&8Ynzm zga0LNHnNC;tfEbrfmaXq!SWSHA37fp@D{}f1<7TJM1h@vGdEz*nOtF11>~X9@BkiOlhvC~tF;pcrifxcWy(CGyDJlo`caS{by5iiTQg6tQzATjF zqxyanI#SIen3C-koLU8KM8}do&-Xt;nD2BIvViGP(tesm|nChHV5Ep+Y z36i!wuW;%E!f@Sj^B>7+?QCeO!@QOF+Km4Q;?p_eJY#nEc*%JA;@(;tDDN>eO8;;p z`WhqpxLpTrZH~2qCYLGiFE1<*WMO>$LT9nZO+_)Xyz1s@-AO7(Pu7dQ3^0~@fD;YL zAjZr$V$u%B&3XR4`#Cpats8`o#oFQfYPsed4H9#RHhnim+UzckH9^6PAa1Kn81}0h zCl`8`IR^j97f2F#e5^JxlT_+h{F?A&>T4fw>MuS+z6rZaH-q_}Hgi2>E<1(Sf}}{@ z%9UnMDLN1LZFL9yPAelM?-sr0aM<{5Rv)vBu~uLA#5LQ6J)JG{EHMn$@>e7oI)*De ztR|IswS4#?>Sz6-Y1kV6RRU}6Sjc}38`#o0VyENNC=>Wgq{YS&$4W)xaQ)_ByA!=z z%N2c%_m=9goh0iQj8mkcRvgsZ#(U{X^tdC$fBXHFd#{U_{_2Pr{ z#h~CXa=EM$Jo^oAX&V{?+5Vxu8&$yUp4(qQMlcrjokBH)YK250sPgd-JiQ7%6t_2d0t#NQIt zXS9Wmdq?DUS((D8{h^%)vrEx?u*UQKWc>YK^pWeuuSg1dxm}6*-qC5nb{4^CdSbV7 z5X!fFLM(>0zk|P#V14QJA1j7nyFtiV#V~9_EQ^9r)V-Fyz43?j8hSAkTomm4Lmm@D zIE6&1%0r32L*g5d97`}8rYxLc7Pa--Ea|?d=wZL7LnZY@-hiOZ+aZ~YmajMD~v1zW}g235Ir2zOfLBk%$k+JVktbM2xf1C zpQy!VM;?K>9q!XA6q!EE|HUT4PbV_g=0gT~lu~1)Yr0OVo^9Uk%N@a}4^mO~x3<-8QE9_bO(3E0 zbkhp*u&CRJJcejjz35&zZ>>!@bU(U0J=%yMX4L2H4^a5SBHLhV_?S>E+H8!Wyh9UV zET(+yn%){FDkt^Z|u{3LI@ zxKPARd7OPgJaQZ7BPcA(Gd?yX;kQ5nb_NG(Md&0b!F@J?*q0q|B!rhW5w4j?EzC}4 z8&Y4M=r^0lc+5&y0WoI%VypRuvx1dH0a7LH%3i_6rJrQ+=gS>}EH0lfX~_HqC1ny4 z4t{1O#T-dOx=WI8`_R&ACL4+W_KrkmIaw|vSxa9>DZ^5OEu!Pd`R8J?h7GGWMJg&` z^3h_XJ_et8MkU>1(XZ?3}6lo{lQzzvjotMc!-ATK(rR__k4GhJ3-|+?rr>A(P zn0cjIQ=~IVrN>lI2i^HQRix9+rYGA{$1C{bSs)P;upYK}8`h_c!-D6N*@Qtnx;ZRs7t*`cohJPkGg1^ySK zlq4}tUMhR)m<-tz>pzrK0We$ zj*Rhg&po<(bE==G{x;{_HfO&r1(QDS?=klcMLswr?@l4-L73phD7|9K$BrU?F-p;+ z2rwuKi7NB&rt`@Si19M>2wvLsIt8S5+!XH%B^nCm6#z?jxovt`s7QscGPxKji$u)| z=OPQyD${%J3US^6cvp&qB#QX`ib90nb5|Di?i9(}k+WeI2vx#m?21J*iZw8a#4Gc_ zCj_dPC6mG>M(u>!201kC__Apw2J9Thex+=eC6az=tNNw)p`|XBrRGybLjh{ZZ-FcK9z2#ic~ed}UQe zCc)}x&E|FuBYTxpW)1q=+PzAlgUo`X(bAKZ%JUVrm+jlu`>ITXx<}}alaRB~ zI7txv2sDG95#*=^?^pwQ;LtL zIrton#u803SY&e1O?Pc&?>`VKuQqAkHT|%ynRp-hx4ljWi&hUSM`AU(Ui)R}PHLu< zZDF5`ZQcC&l*Bgc+gpx0+wErO4ieXnEc>yfMcF!UENb7XEdLKlfu}9O9PkjVECr<& zd$X2^2am|;%xJ25=k3;brQk%YOoI>KKAE+pQH5tzwYe*`xoo%PDG?NKv#ySfuVH`*d&Su9)ervFPpqwr+d5 zZj9~jW~?56wjM3Ho@)-O8;+D)jB=C|_iWh6MxDwL;KFs*XTCzt zf}QZzDCHfsi*);U*3KUa%Rg>(e#|ER7-sF4dMVW#Mj4MW%V$R^#w1H)JIgB5sIS2_ zACt62oOELbusa6CmIu~v22986%pH;}jU2552G27G`P&937Y1oF@tHVD^&g{M#=l@Y zn4GP0`#OaCj}Ix2w=EM68ww3GA=rlcWQSHmhb2pg8ApaY4~FBb=zxx-*uJJ&s&47Be{JYBv5pX8fLYJYu-DYG+&ld*Y6DqE&wU!D6BmHnD6pjJx(> zuHD@ zr-6Po4Y8k>5UWOeKn;v&S2ZFxTtg}pW_@HC5_ z=(}$;E#o*RB0A3gFe3q`QtgV8R@hJuYNrJlHTX`=K+Clt9Vv~!@`R14`s3#%gY zpB-)Nx)#*I3u})Hs8oyb!wX`@i&)e160wU3<%l6T;ePx{iS z(ozggb6ieD!g_z5{CwKYJh9ets_3F)*L+gVOH(jB&2d;|Xc<#$#mQ%7S7gPhf5qZx z1r6+9nWOcUE4(Riw!VvIHgi?Cb=ArkzlG-Wz`0m&EUb@fxr=6XgbO;>wRGgYb~KCL z^Rz}mzFxS#mK?jziCCKX$zHD|x4yZ%&Q-o{S+%?t*nN<*p5L`NvyLBBBe6##Iy+i) z?ihSD(HtbSNgcR;XB_-6(Q=}@X>Pss;~n55{?`4|Mi|ZJ>G>MANzm5BH|v}g_#FDJ z==O}@7PM-EKt+UFWgEA4X%$THOfy9#w$pdG-H5gG>Q@uz#x@h}GQJ7~6lCy@Hjul! z!!Tp#?@KKfSH1knUpVN!h=bXFn%gAD7x3H?c!g^+WUSeHo`8e%*Ef z&)(j+dA_tq4+xPXb=@NlzazNHTvYc_(9b>i{m~53@fW9bqhB#Qj>n(ljz0_?d7K>O zZcOLbx)*Mg85{1`cI=b|xmI*nf(%X=o=;fGPPxGaO)8VkxTi@btF4y>1RJL<-Fv+z zRJtZz{c*0Xv>UUDXBQo3z{N9CvC|IjqZu*hx$cASNax*I=O``bDx8GXL2X;L=RH4H zhoAQkxt(`%mnVPzI)8S&*x0}Pwf9%$;#h3$>-PD-tcz)#i|n9_w?UhLO*=cWU+df# z=<&ZFey%lbU(|GO;ndk;;9cwmof{TxkvLz<)2tkW3HP5{YBw(3(Pkt|vnlIHQ2<-a z7gnrv77Pece8S*%%I7~3q<`52{$i^A%`^NX^vUx5q}l7eZi2OrM&3V;#8<+>Gx&A& zLfD*&c*@GEpQTjIM0y&(^Iqc_U-MjC3DyFz=mA)2<|uCgmd-bCI6JP1j&Vf5jr!^KYo|AJ^Q!PiQwRPWUzer9gT>JkxDQ z$Sos5%1!aDCcji^rsHiK@;1L!fkqpY}-zWIlIz-&a!!P*K)1yYwI#w&Zw ztMfiN&7gg8#s^KI!9IQu4t!{xynBqrj}OLArlbCb80n8UYoq%l`R6WP2EW+(-f4V# z67Ojcp}K{Bd5>wj&cpb?3a6UL3q5LiA|rh|WMb^3dmgC+^w2%#V9lQ7*{mbB(L(^G zc=&-USL*rVfDj-m3Ag3a)V36yfQh$>XL?5_hJye96P_4}2-N!j2Tw2=%>94C6J2cL z5`94ZZ`R*nGpD-sW&?3dh6{yURYbwc)i%u*hApo9KT8Z3f30_DUH{r&UA*|z8-j|* zY_#;->;<0KZHn@&TB!B;UwA^ciEP{CrZvNTADZ_9Pl)iXG*bYx2z5>Uu z0&4rKOF2qoVmEn)Xud!4jQ*jn926lQe@5b*pyfl8<X^(wI3sDIf=o-00Z39m_l?dy^{oZ_uJvt-QoL4vcsSk|{C?&j4f%%2x)lLj zc{%p_ojh=}=3b%gZS1w`xyWKaow6u+i3~uALDG`s|B0k>?P3B!5xX!B#S*yPve_l^ z*&gdZMZxAnX5BKeK=l#Y0gx~FSZv_m+*%|^p=p}MDdmoB`>$q`#~_1_$YO)RslL|j z(*FZbc&S0o(~Iv8f6piaaKstxi(+?xTSb8UEH4AjoT5}eyGq;Fh&$VAiTlY^O*)d^ zQ~>Bjlb350csPrz)bV$0UPU{zYue3)&k2y~UxR@FUz8Z*{hL+i78J4omp)kNgL6L# zuZOt|1x!fKk|<5&w2!0Z(QW)eD8Q}9S=lrMS&fVS6JIC}y~R&Wgs}U9p||njg!V^6 z#fW=W8hjnAMdRH?|9?;3-WHorwk!55?HAigL!>?jS>8c9+bM{)+m#wgW52Vyz!!L; z1Ml7a8Mss|;1ANxbHLT?CxXX6{IorRw^`c3LHDO+@rSvnvB3xb{{2H}KcM~xPvAa0 zv(!D)sD*eln4-|U%!tWdLKYRbfL!HFAZxWSs=a97n?9*4|;{vVw zGIQ)u@MX3}Eu2x(49C&uN2Sre0BPoSr%*q$A$>j$s?adN&!-=_trn?dREU}A!-9(= z4$utH#OE5MQxtWDD({(-DIH03l^%aYN-rcJL4JP$V^YDm0zJj0uzHLlu#jq>HIFeBWJ00-XBVr(au%6q9O;AtuCj4}oGE?x)z^6LPqYKTc*B&mh_Qt!4iyfo$wMahp#+NG# z-M>=m{74+k2JRP|(7fuR_#G@TP8Wv`t`Q#9#ST_4@Wi;aPGi=-!)MV4{i$%BrXnUs zTd=>uT&d2tDl12O;|GKP;EBc(M@L70!?gpQmX3W#o6EEwZvl?rA52cJv19e@%(`u3 zR!;6Y4@O6_y6ykL6E*(EXV$tMtNTvgT@S{;!*x4%nVfwm{7tS(b-T15Gnp&kr2kYJ zy8gtz3EWoNy#MLleY)=){Pge%fUehz!t4@)6JQEtS?WOAFX-*NGX=@%^%0f2z^4bGT?EtD8&N`7^FrSmS+dIMk7|~>rThm^eAXY{^(1n~nA$(G(;v5B zcF&jyu;we%pI8G^;kpe1E6PnvpFZv14Y zH)OD&iRPT&_QBrh1)k_Q_!g;z!!B23z*NEP)ey^dCPrkw`C0#B?Sc$J2YaayzZFYn3j|x4Zp1G>8iF6TwU8; z_}3j7>*R-Sw1vXrgNP}$KV=W1*v<|j>dP^7fy)`~5cGK0C9gXN9~!Pv#Iv>6i@GL6 z80~ea)czp)&E89=Q1q;# zxmrhX{2JIBIN*}j5q13Qy4LUs76>QW)SdZf*20+0i6o+g_U1O7dV>iTjIm4giD>AD z^d)a(fHJ$YZ;mqUACWc@@cWCqynt@z%*jqQ>ENWoqMA{Eo!XxiwdnJUR)M9`aQbj<6j3$jymt2@;K zG1pJ6C(+K-hud@?+dNHz%=74;Ds&L{W9LCZ(R9z0c|CXg7teyQuBU7Ck3auSBA%&w z5GcI>&K@MjUS#PW6zN`|Q4gwRFPcXWIhHy_?!npX#og<{1AfN` z_7X6DCuHm;lKxIC{n600=V7;p3@Sm|Bz_r|bQLXedx|+^Q(t8ePx&D6idvF^Q!)n= z?;^h~eoMl}p6~Tz9DRT!Tec*7wPcc-WPGpW&nd|`Q%Ucyefw}p9%?CGPAT3!$#Ho} z#xn`VcT$KAd?~>gDdFrN*^*MR^-`m~QZc_JLkfRPL!>@pOG{Aqo6Y=)=8^6c?{8}m zlyo4Magdgekyc=gt*%d&i-9W@M=J-w<56lAlCi}frPZlrG^laH+G&X-AbvCPVrm1g zR-|L|S)5%5TqOa{m#LiQAUy}Tu}8Ft5lHOnyGBg38nvv2h^!?emI*^)+$vQ?i2UW;nc2{tqjcl|yKou_QKt1FTGboq<`cTXQ6bE^D3=ZK(B7qpRwFZ!V zz8iVK*D~M$8x$=OELjI~oDbh{-7wia+h7NX%uPWS9y9#531(P5F!%r!<<6(3be90ke=V#0>J?D+(56|x_PU_R-?4LK#8k-%GMVho6{ z9vZ|62gobdkt^~22AOSx!~sy4!xyAhver(81^_dR9*~(V-#M=Ix_CIsA)~$@1Z;&S zKLW$>#}gQpzcdYy?Z8#l6oxDzNFBng$Qzh3cgCRi^`Els;X&b>@Bc=k6K(hOlb>v0ag480IIesAp4-I4=Z*lt6m$i z&QuSBB`3o{a2qw4-wYEM zT+C)B)JLOjZJL1#gwzWZcWDmYVnRL|VqpTEIgEt^P!MS3sAt45xcYFY__rxQsi^^6 z>Q&)s;;e8=l2$8_k2T8=D68FH1n^1L>73>KHcMcvDi^55XgAs2$q-wv8po)NBs3j6 z{xePw;_EOMv84LECr_E994!w4kf@Do!2zJD<2@M8~>spE5sQbrVI$L%N;K>6{uF-(+cgExf#ycnEE*|*Z3U}!*pgg27g{1 zraYoW1gD3{_=fTI>c&y4HF(UUf-&@KG>oA$k@Y|{0E}573@bK9j2=es1C!-f33pM% z1;bETQ8mS_1#RwGuRZ3sL3DmC7F{6B@Yv2MS)la~94AJP7X*WKhy%ZHh zz|k(N>Rj4wfpEcuiJ>_|$t^?8eQEutF#!G=TwFWRK}AIzHC-FP#{&b4=Q>jX)Z}#t za16${))3ZKqn}fzhk;O)gq5jpK(&Oi{qYVw5<&aNFmVp4W)g8He#dxAW;GzS^O^9Bk!{0T>#DzKy(uf z;IL(+BcPV`=w-=XBPU3l2UT57Gu%|OmeU|q526CsQz0KwJz5JD2dDv1LwHc_L@Pv^ z)0OMDgkuk4MkcDCOz(}%XdNuItY>w33dL@Lnn!y;(TdD!GY^%+n>I7_`E84ZIoh8G zP4ja4G=?!e=FigRdVz30pH;Bhl#UgE!b>OHL+x#|Hrz!8?Pv!EIyznQscrimh{tN~ShDsIX$?F~AW}19XD?t0eEnq;(w3V-p5WFwi-l4lrI) zs)yz;3<7vec0qu@bNi$uYC>B;Rd~#sZm1aA68xLt5~< zud}|%i$!KR<|QGxWW=Zy(@F0R;ppN9G=d zA04Vc&F8~*7*oxu2Ni&Nqkt_a%nJ^oHGp?R$=44f_0CbJfSU5K(CU}mtC2d37JP~X zqT+)h23J1NhKuQ~4+p{$(ZY5-c3T~dWe1@d2kTSXaDjT`os?tP7D@)%rp^FVb$IHJ zz;<}Efd&Xx4qf^vaG`9y38%UEBQS;g(<$7>%0?7bwfsWW<(JsjI?Po6+<{PFe}Vk# z3_#Sva0$p`Z3=Qm@oxoInSc&0x9Li(cS@$kdJh1#=Xf}0+}4`g)JkfmTdL*12Tfc_ zFS7l*W&AtgBR}VSbK#a9uGAMOzH1IYgA6rd4Oel`DYqsy>0wNsHgL$AaL!JIID{Jp z2mXd~9>^HcxN7zS-wwjp#8AS7uf)&+^x|IO9`y}vo;13?hh7|2_4;V-L$ZJ65dVlg*NOejYunfa3Y zDy1GZsQ4tS_PBP+88!dJBJoOKD;2S!iS*_-f8e?CPpHx`v{vs|a<`0+=cuNQyNO2R z-g($JdH~MmDK^Wvpb*R_XV$Wr46*MXf;(X%iK1?5ee2+A6YsU>rbfx6wrr@hn<71)mqnLIsdTB{9z40_dQeU_0%wR``izk9-aqk-C9lu!e|BL zX@lWh7k}t~yYVaO3;TUynSbyvNYOuKIZ|6JDkBdkC`Cw2zNt$PoK zOr+>eGgG@inz$o4RaNVud{fY4PY?oZYA=Eu_Hpp(km-5#d`e3` zOyqe_-2{Rd46G^%P$IS66IC+wf$hp{T;%MzJTLE~8_#sD-r}z0egg_K`(6dZbP>RF zIeitq`<~-Zf&(fg%Bac!5Fe7XBXUtMDXUtsSV*5Gk9Z|GN35&wiY)}0FI|X>8g`-$ zi76EiB%ETIWkJQ9abP&cNMb?8?B&@ia$^qT``ByBpn$2#9wYdF;0eVvUdNLwwwHPB z{{v67xSgL|b1c=H4}IaXzu{bIvRnM>_+efrq}2@zL{3l49;$?W^9!7j=Db;nva`~D zdPTI=ANdCHO5U!@HdGy3C6Th89$d*+sGK7icGaNK>b}21IaP*dl%(Rjuynz=Vu^+IHXuXM@{&R{)~K)5%$vp0O?)Wk&6bH#BJ3=kVcuZWh<#z-d~pz zBjp1dFv8eLbbqkgzdxXEm{hkS*BTa>kI*QfEpbrqBSbw9nG_)D&7Zw#}^-aiA+ zX;jU%$}5aCaZF*P$*2KC z&*05Z;lIZmbzjW1+CRLDK}-!W+VMJ+%vizH{EsHeK+2D>%BMMeWTVi&KIB7 zM*sm3Zg>D`&z;rcb~b*M05v=Jc;A)#%(La0YrZ+>oqPT{=%IH`xxQtSRhZ<)ioW{0 zn6v&m?6J!}JMFdGUOVYj86i`dg{VI zf4x)2W4}H3-FyE%_~Bn3eY(~^wYKEui_g9G>%0Fx{PD{_KmF&EkFNSnQJ?>Q{qwiq zKL7(LzyT7lfSSu6QxFIv1@?w!!7E(hm;=E85F&92n4ohoNURA)aDyD|;0GlL!D5B5 zIU~&A2}LME4Qg?JTI2Sr*AGnmFarY&>%%UKo^na&jEGK2WVToU4$)?8&XU75{mT63GM^k(V` zSIu4y6P(lhr8#+c!Ewqmnd>BHG{5;yZql=zw@ha};i*qw#?B_RM=)`2A6QI~M zs4(Ygvs&WwIr$_eLWB22ZUz8-ZEFtjfagHwXq2Nh>nKK32U6#Zl%%XIDX~zR(pajr zSS@vFEnoW4Tgp^&HMJ=)Zz@t^sZwyKF`Q|BdYYgTZg503oKXjd)T9b^a6?t9Q!i$k zqek_qO|2?bt7_GvYIUni?P^xL>Q%8iHLPUyDOb-rR<$xUt!Muw<67AoSGl6~t8_Ih zUF(|HsN!|6ef29;PZP$r+I6pUH7sEftJS|6m8g1EELH;xS-whkvSqETWfPm($X<1` zm+dTEKkHV{YL>K=?W}1_n_AHpcD0WcYiL>P+QnjawuiOtZE^eB)y7t~y5;O>f16w3 zG8VEM3@EdRX-^YcRH7aYrcS>YUFkY=x~sJAb+3utlhSj$t+cKbt+GWRWw9vZUEg`( zmEQ7xhP`K5uX`&MU-;_ocjv%R~0^m%&_Q?bZ{?WK*(*(~P$(7m&?urt7@akX%lbS&q6k{@6aq~_d*)S zjP^>Y>z8U(k6K2B8R$VOz0yu=n%0=MwWo27(`VXZR7F{mP!jNiY#BwxOFnkqRxLke zFZ=bsV?OE+^QvwP=Dag>JZWGS8m6!D~R^!;x3+?i@9UgI$P8{16 zr}*T|hK+P+4GtaW&@t$cZhILe;9vm5!0R#<0;CKoXb^?i1^|Wv5T#)K4w|J1fQGvy z01Y&UihyGFtO5XzT=1b50>DrsTeKYKB~Loa@1pVqHoc2PA;8JO;Pa2YVPI0}y3Dek zbp+g;#YO2u*0+8WG=OO;Y%e;APVRH6jb#9%AjMK_wk87H-QYzjz|K>o^lZf{{|Th+TnJ-xV2HwZPniz z^-?SWH4sra4;cvI5AfFcovC8Jn4AYx)S zOTB>;Ew?)<%C3^Uq$D)2VE(c)F$!=Qi4>RM(M^s&G)w(HA)OeGe~6#_PauC=)W5{m zOqL21VQLhFkP0D;!uTOY^<_dPYyu~sg!Va)rJ%tj7$AX&LVu(IV@w4F4qVNR0s@-H zCjbK6G0rQrhxd600fZp=6^*3`Ny|}S_Z>tgh{FFt#wdVv$AcwD9f@fGxjRe3? z7@z^ZLI0hgR5&30t=%PPNu(u31>FCE!tjOeDVXVL8|&>_6|UYDQlYKA9yM^lQA|MY z?Ow4BT2TPPCX9k5XaXi|LL2l*CXm7c^ud-CjB3amycI?tkU}OPfUs0l0r;9NAV6U# zANcv6N0>s9BtR$&okzWB^!YP1)u;d{p@S)IHiW#C|D6C-{3IHZl#>Z5m0>E1y?qQe&KqC^PP!Qv( zETCCD;wgmSCyatAgaUKSUi|rO^MxD15>vkb)_^0<%D(?+Ki*nTh}`2|)INC`RIb=wm~K zg0R>O0uK%^~%N<|q=iZF{r7653#+h7#NO@P5Bgd($Wck5-6lq447Ox8zJhD$qbLZ(4Bo{xzG5FPz+E&VPMCrcDgYnk z#7!)vJFbZ}{y@RdBT+^q^7Z8h=8W6K!7^x#*B~Y*+(PLM)Wd~Y7D8NPO6Fuj=BJqr z>~+8wh9U2f98riu1#TjLI}$X#S%3 zVMN!xTqk%!Do_d-+s&E3jSfM$OH!f5`6X?_COWQ2K+0&A86 zg8=AlF2KvR+==>!b&!H5q+?k0K^sUY29BY2_D3IBh#byfNC4+2bV4U+fx_kyf4F5Zy!u9v6kAaVh{Q zOv*}xW*dZp0QRO{E&_{sLMcpO1v&_N48;KKhuUa@TnZ_Ro=nPw42$-rP#{1m;3p|8 z!j8tKClml|z9xKtL64&0W5_3c4u>W53XcjPkYWUEhTALTBN!-STVN!a45p>n!X_L_ zk6^+jn8FU0f||1F-T9`kq(N{3f;T3qCMaqjtZ0k6W2B10Zl(fg^Z}gCpyxfOp&}~$ z{o;@o>5QfUDj?^Y5F&pL=Y*tZ0`x(-d4i}CKpMQlM2xDRdIF%*$zTu#Tx4gsAgKau zN&k5&AoTy}j|Lte;3k)R!VU^RC^Q{S;2&tvgsre=sFDI8z-O40=Np(OdfGyH4yPqR zM|l#dC_JmvC4~$TP7rZy>22BmP-bP`8Lp9R$$D4^aUlnI0LI`E8i8RH(x_(+#Uk43 zO-RToTmmQrMH_H}&U(!$h{7*&0w!2U0lWccm<)|{!X~`JhHL_l*kDg21iuub0+a%* zX3d(2Br0&o&mBb?%m!ef0;@U>gxqW@lr2*D8bEUA_+g4fXw4;zf=m=ZCj2ai1nrb8 zB8MczCNPFActlHpO>uC927&^L1TOx0jVXNNP~2!Ipuwtc3DUNr^c}?jbb?}R!q-L{ zDH#9gFT#eq-h`~afwbVP&IUyR_$<{jr_ffe$%t#2Vk;o%?8sb#*P+_yrikcLX!6+vz!ze%jj3kv1D30LYLqvo^ zIPc}|O#*0wCFDy21Sd9f$yiN$sYBDU3(}_-ILj0{*U{C0x+qasn6x;P^?eP1OIc zLcq$13_vDmFn4q?vq&w~R_zbi0@L0dCu{=PEbsVULiwr$1zG}7U<4svadK`jC^Rm+ z-R<{U#2dGv7b~z=!U-D0@bB0HI*#s?ASp*3>G&Pq6Pqw6c!musuVi!|O8_hbkns@` ztda07j{I$7P;1}%ERkxBDQJR}tnMc8=0*tJ_~hLW2wN!+8?k8x>aa~lJ)A~$6iAI! zNuiWVwbV<=R88HKPDR&rSr>L~mv`kCe}U8sabX9TfGFsrGT#8qis1~;?Al=hN~8fA zT<-`cz$f^NN|Yc2q(q*Y!Xo60C}hH#4CufNz)SR+G|MqhEFZB2fXNVtDS-cO+ag6D zXoA=>04j_^pbkJi#)xbhgtv}@3_tVlQi=!fG7O(Sp8!U>h*)i&U?Z-UJSN$0AlT19ZZLUIIu|w5BA$fVOqsfJge$ z<&#*=J$7?eZ*^2dB4{ch1pi@AfW{kuf@e@58Z4qF1SU|c#7_u-UWfk)U(00zyh5E~ zh&gXFDKNAXgL6Y;uoG)@cJL!DXtYFQFj#}aU4w)ZZ-QqW-YJwqp734U-7yZ19L-(= ziU>&oz(Mv2z(^X&Vq-*OW6CK6wl}Ud7h^lz8o-@3oW&_OlVhNUJMMHhlh(; z!raW=x63CJO0xG-#A3Qsr znsEoaM*TT4x(795l)Ha1;01okBQwLVH**Ai(O-emTB_%`3pcnnVVHB%x6Fy1rLr z#eWROYXX|9Ih#BDLxzOGzrnd@%LQic0TUw6f5@hfpA$Fx#s}yx?&3-qwYhgNpKCQA zltLJ@d}N%$Moe!XkDtdwyR^?MfJQ_Ch_IUDM4NAQ(%GfBtHh&MGAdA~CAf2Yw*gpZ zf{VDw8s{|5xJ?s2;a51ZdQA zQVc*g+jh8=!Y1VIx}|}6P^Y^Ky1ioxDD+~IY&z|0bV`JRDRi!jH^wRs4Derq??3S_ z=E|1;wASM(hoAuhEP}#sN$xiVPXL6eR0$LmOhC%hn@^w!6m<9yVnm4(DH==zY80A^ z4{cFg0O*yeHwp%D`czQBCQ<|o7Pxd$!KX|E3Z`KI#-UA|eJp{(WU|0Up+gf~%s5m* zM~G=Iq4CfM4X92uM~zCrhXJ66sV*Vl+9v;Ef>EYSbrMkV6DOJl1CYvO3(zK<3eud? z=Ya!v&d6mVEWQAcB_)ls6_xTme?C z4oh_%0KK4bH2V00+ zgn`CFF~!M(@iV@8;3&RnjIF|wL==)ZQ=m6cWGx7gQ)(sgAyH=Xj}*DuD4>l+-WUK4R7znf zflr`(sH96?A%zr9P8q37E|FS5lPnE-#ko7pWh;%lZj9)SQ&6)7la=h-#9IXlP-y@- zcU7R*THip0TU4g$qgMgh^*~!;T0mci-Y})sn1)s0jT)va5=vVHU{(}U3QTz^mdA@I z!-7&Vr49RlY}OKo#CosYpZh?d4?;%ap=0C^=3mgk*E_|MxaVGq$OJUWWE3cig}9AN zfUMm_L%`ULYhx*SLnlJ^iceTVZBLp@8Zgnm#{BCI zEa}52h}1N?fayyf0>#OY)rL3l0Yd&$;ktwpfFC5_2QhqM3{wUuPucKOITVx*c}S2R z^3YR1tW*$%NGT!~F;YYf6-7wZfm5YwRS{`bci2>l&n$od?5Ub@Y#}R6n8FeQSb$;} zP#o+OL=>Aq15KD>2?8vj4WtM~A83XNKG5zBnV6PC0AY$zd;*YpnHb|uOSlGb$r{|wYK{x!E0m{zG_J8b$Y}#70;ovtuqhOu89){T!sh?I?5oETxb(r`;KETEJxq30&-iO^J#qJQO-XgT@DfMpFp0Gc?3EQu5fgLN?~ zoUlc{MmYdmSYi}lVM+n2^9kPJ>S6=HC>TZ|7ke?ZN49uq0Rpg7IA&rcjI+c@(cpTOUF|0*vsTS(N8*22d4F1jR_4XdT5s*auQP zwlSeBsVz*&B@gN(OgPcRCKdtGSA;CI$t6HnA2I=5q`?wtfUb0-3tbsRF-?H-A)#=H zL>(T{yOIho5XVd2@_zTcOPmO)GBAJzU=fS%orN`2HIXTDXSon504FX+3OJpmEkMnn z06_oI*-tFy6lRnUdqz=;WoC;MpXfwc`xDQL9T>2vAy)7VlE$E*!4#nQ1jG(GibN(? zO(bSZDi|t?uX&;&Vz~s34*U|D5Ev5#ppKWS5s-lD>?WWlvGWKsSdjlu z+Zhw0j`b&Au_Vj3Cc>2&Nqiha)l7&o!kpMpb~*u6K17ZW0m>FAxO7=fGndq8YLzxo zQLa!hU=!i%M7$Of*B`M&Y5@>HYxs}=I*a(u&$oSS+j^Lh$s16h>THv@5^ zO1{2?k89dNFMSX-z_kUOTx~~>EAqY-xB~--UUZ`~puTtNE_e3?-t#uf=}%`=)TO>C zs#o1oST}E>ghml;WFwGa2V^uzKnLt{r zPewtCh7h0>ozQfz3&ICa44x0%F0Cd)VaTWiB>-tyOhi>?;-AMzRFwk{DA+u%jEF*@ zrC5MNYyo=R#L+pGTg)rK086Ey!N1M{!?ra6u?3`JgyDK%e@6F;NEb=eeD^yQL-C6H zUS92Nhv?|y-k;KsFco*tPAWR_IFgj2?iX71ax(F*QjrSY&t9Ol=iUN2 z(TOzp&=Tgi*C@6u5rw=I48FopQ&RD@Ph?5++AkE$=JE<~O(LQI#P7-!VD=g!DKue( zV(B3O;qX8~^a`Q@ug{+Lj_%-O6jGs>-r(>WY%K!d4Zg<2Si%-UVTAu!FLCtl1xJEJ z2n!>iXFg)j%>u@A($7Zv06{cJ6y(nUF>fM#a1`n#0lyDVAn;;Pqx`l){wSmVz+m$_ zF93+6sA_OK_}~@V?}S*XAP9g7JpnZWa1;hGA~JA6z)%4IFZb52b$l>jqD2UOPzc|k z3rTPYk0~Oau(ZmL_jXV>NQ^QNX8{0-0PTeh3*rqxVJ=h;6j%?I8bS>ja1p_P4Q;_a zXhg&Iu!btaP3A-t>%?5NYrFVl>9p=su1*y@r4_gC6<0A9L1l_&0UktAP9OjSDB}1I zBTrxi+y*0s3?jJ@$rBCZzPc*jB#HM1s3H=PB7)IBlB@JOp$-3}u>gBfD6nxbxRDxx zF&djOMxF*`G9&?p5m$~;9lZ=O&T%5V5i!s)7|{_pu!A0>5gykOF|=_T^YI<`&K@V? z9)r;zDdHZxQ6G_!J7DM^)8rr#G9l9r{6M8oW)ZzCGKW|ZBMU_%H&RooPQ4_u6eH4q z?Bm2pa?c3k-B1!u@@^AK0T2Me0o9QoS@PrdkjlivgKUx~Nv|isUrWM5-P9KDhabN4U;MnGcol< zE0sE{Rh(kJC7hQ#g}TIe(KmoAc+M z6Y~O->1;DMIfXW_lRC9?Q?j!acQZ}$%Q2y|ILWg-%`+v@Q$2fUJ=@d1+!H>fC_ce* zB2V!(KaxAKGe2>2KQqNUy$d{lS2PfG$L1&MN9NWJ<&ziWIHbuKRZ-I zada_t)IZb9K*e)FWAqs1Qb-MOMs4y)i!>XR)H#{7Nu4x0>+?`d@k4R6O0ASfVUdSI z)Kwl6O2O|-Khr_O6f?=ROwBYhlN3#tCfumBI_)z{^)pVfa!%zmD-HBH)pSkSbWc%C zPvf#r&ofZf@=piVmyp&#_p6wO9XN6<4V>SP_L+JGEJDRav>!T2s|nla*Pu zbz8#~T%C1UF%?>`^;o^tSGjdvbJbj_6SpOTM5=+SG8Od_F$v+U^iA` zn{{71HeXrxVH*}^ztvyQv0rOdX6yB2ofTti)@4OjUvpJuM|Nf@c3FEiVm;PpVK!J5 zHeFlxW@9yHP4;PPwqYbVHYPN7r;qw{$%hbx)UdSJ!n5R{&a9c3+ov zXV-RX7k6)$a#dG%bJur!7kGbHcx_hzhSzw57kQ6Yd6V~VV|RI(_qo7k~3t zfA^Pv`*(fg*M9?8fCrd>3)q157l02~ffu-cZGnLw7=j~Mf+x6vDcFK97=ts|fD>4Q zJJ^Fi7=#@dgh!Z!H5hu|2!;PsScOxVQAO2J#8-&Gmr`X|JIU8D%vXJLSci9*hkH1O zMc9XfScr$1h>O^Wj~I!QSc#XIiPaZ~n;43tSc<2ZimUjDpV*4CSc{byi?`T|zZi_e zSd6cDjLX=J&lruXxQo-6joa9b*?5iLSdQn|j3tQ^vMqyY>{g_Sx85Nlm zhqE}2=@^j{*@_QYksH~Ox%iPCnUN!zk}LU)C)tuSS(CRIlQ-FuKN*TU8I(tvl!sW4 zPZ^Id)li_7hTFE4T^W#D)rJeBkQcd>Z<&ro8JBmNlX-cJb=jAL*^+@-n2Y(5iP@Nw zIgycBnVZ>-QF*HRK$`!jxexf5BLx|WURiv#ITlxSmIu&v}Q_ zS)JS2klh)c<(Qr0nVv(rp6}U=p&6B}`I@mgoBi3lxcNH?8BRC>2oCz7p8%m3nxPxI zq30Q&aT%f`x|Amxohcflwb-IFnxlbWqdPjIKN_SXTAxpupZgi0i%6hhc%^;RT*5h_ z9a^SkTBJuhl55(gB{`>g7^io-oqO7+)fuRR`l5;2sCgKbd&Hz$_)oGfr33n@!>gr{ z=$i)vrek`hv-+Ti`l#W!tBaYdgE_3fTCB;stH;``eHpFO8kbMG04zbN^Z2AuI;vH= zuBAFZs~Rb;I-&oyfD5RAeT(>zg@Lenn6QQ6jSt(f3wwtZdx-+Y3gUvlm+!B%6%gmqK)wk)xe*${cNo9*o4*m73bp{iw}1*3`o9DGz!{nfxM09Fd-P2n_ti z?K`U%yvOG|!e!jT0UQf5e4#hI!=wDer+lGDyvR=+3sStZhrGqHpvb*kzbU-Q^&85C ze5QBYxVwPOxjV;id%@cq3ZS6N7dp<-9L{%Jq1F7Lt-H-{+@bH>p$(kP*?hIRfD7(i z&}Dkj8J)Nr{mqLT(vN((`MkXgox8Ey$bZ|<3%$beJIwK1(xZFQ^IW=19k&$(l?#YpMcQ0o7NNj(H&i@g#pkR zozVZ=JkEvP(Vbn>g<%S^pw8_))`wlW5uBR)pa9B`+zTMw=Ni4!UERY=y@lec6`BgJ zKnR4O3bH^8ww>D%y4a~e3a&s3`W?*M8w>os-=)CUjT;KC01Fm<()pd>6&|~>{o(2S zpt&FlF8<=XfT6Ly0Vv+WuOJAlprN^-3WPx88QKbh;Nt(?H1GBYxm9-r$8i;TIm(bKB=3zP)Mw-><;qEnetP-ngfr<24nyVAcVG%ats`fEYXogvym5 zQiMG@D6Akvi3X`y1QPKfLMv6eJP`)v3Kbw*s$daD1xv?|QKXF2as>)SVOamJ#Pos? zBg`y0wMda7M2p6QR-#aG=!N2zD_sn3nKBY#$t@o_HeKpbn3W(xb9y~E)S#`LPpp0n zIZ`2%qXG$feWEZ(6o(TLMnq_FWX7CkL5h4*@?^@D!hXJtIkP6>oWfvQ>G?BgSRh5I zB)#mE=@Y&q1JMu`=Zf)sGZ0O1ztQXvW+JFWQD{adK|V zZ&MpLK6y3REv>DRP>@}@NW~K^MzrIS3`SWYg;`42;S<+62Vz$3Eq)d7N;ep683>< zrkZYwsVxb73Tmhccq(eCrk;vws;aKaYOAik3Tv#g&Pr>ow%&^CsJK@aS;U;+o|bYh<2&Fg%C|Wp+&ir&6O8Kt|b+b z7XERetrZgCS8f+wbk_yFmexmByx7vatw!CR25v_Xojb0>!lb)yyC>yj^1K#9;cr3) zlg2L;4gDMNz+QdGlf+XbEN;UO6;-B`2DwIMW6@y@m|H+_3anZNlR-`y#rK*u-Hb!Wx?J(PW!!36g z-hw0(LSAgQF>LE9`b4|kZ85k(THL&z;SrjCI_ih2jvD{#8g)s9!tPy8XBVVz{jL^P z*e&<%2POWyNTLf|b3wLe-c?G37p}U77qY%O^z_Zw<%f?srEuq4bg}Q>cVi(Yxn117 zMO0q!4u#-Rr8LF5w#$sZ`ZQG$qO@J_XQ1RPU4PK{dTn99lx$~r;Q`!sun?8ebzuwY z%7Xq>5{2D)VRRA^;JV5uy4`*6HVkx){g4Aa=K-Nhm@`PoOrtiTJk&j;Y!5YQK`7dz%5C(bBbAst4RSeH z0<0ymiGomSq8Fgd25KWSod}=jI_Z^8OI_+h1Gwc&sA@|t7bU1vuJEMHM2QL_{fS6T z!-Xnz1qwpAo`Ozu)RZbUdMaJ(QrlB4r2VS_QUL|NrCR@|gwUtZOfo0cB(z(Y5tVpQEsA=#NlTkX-A*3nnPnL_Q zD~ytyFF~zhgYcNJ%0(uf#qAl5#!3If;42Gi8&TYV=n#Q~C?qb~nh@HDQP4i23kyNp zQPTN@yrOm__yLj7pi5uTNTCXiE2`m+%Eko4(Nqi8qk|s|;Rs83!W3pOuZ)F&O)y}? z9R5ThkCm+AEYev*Xh5@mxjeDF6<@FSwGY#xRZVszvT?P~MK4D$XgY~4{%2uO7`>iANiWY=W zzJ^hBk_+NCNy_RUM@t2W?h=>T%<@i=D1<8bdTc@BHmztMc-qvSH@$W1mAJOkV_k?% zk%MqXwa|q*wvGb8gOr7i;0vn{=|U8Of~YE7Pb;lKNtoRBaG}tdmoDqt;yxq=cQvsl z0;`-#W*TC*dSmQ;fW4a}rYw^OA zqjGkJ3BjigZ%IMU+9N9zX}J#}_yqGaql62kFDe9KQrnYYHa1vPi?6Wb9}oG+OMb$9 zG*$sF!Ql>n_*aKaq@1rnVrQAS#InuzQd2%sGG~im*?hCZY~0OjF{g2U5gS-gpB01Q zlxMZ^N!rpIh1tY2JU&*}OCau<)W*KYntAlpCqon2;AKBKvK-J=oI2b;Z7#nP89guQ z`q*=FAYPcg#Nv#XULM+$X-0?^rhHj|3IC=<%KK%F-!hLYY|ho(SV)?WM0rpcIF*I6A`91fvt2xLtzE_cYPF+fQYkzQqWF% z0aLdI5%}gF(M8#Fj@d`L!nRe^b}dp5HP_nhL=Y7hHv%;gkaHB(4sCs(G~i1 zP9w2;p(IwG(EuaDO+a;P-LXt{rC9-kPFoOy65?#qc6dXWI{KDaiuGMU#vIM$QpDCG z$HYTHfCU?&Fe}(10(U}kxPAo_a_zzeQy^9!;#}fFSXiZNyk{4HQC0x-Hps*@9*9o- zV>TFwQ&b>vW!4>u5?$+4AcOUGgBeA8D5ZZ@-QODT(~sRTCzgRt0l8{a&=xph zkT!;iOZXKG$%Tr;Ka|sk6X`Qizy%hWT9c!Z9BDfrX=e3zfzX6B6Qy_1r;?--R!_1m zFM0nS3TPk|7ah6gA7&X(Gqz_J$bF{9X}re;)hHEA#*Gnlw9+@^Du{e|AkA!j~H z5%uXaNh1thfP@+$5NKmk%V}nGW>@evcem6vYB-%nWRSg46zDl${6dMdQI|2B&&o zcU4C*szidHJhql~dNBEjIkI{ttGG2x(UeN2a_Sj|u_>9mHEl)sQ(oqT`^j-ksAEjy z8O<0x_cfiR$OT=al%;VwLG-O)IhoEnJ?R>)WHC=X zG76fN2@JM-ohD6iNzK;Du>*TqKJ=$Ox35>AF`C&m$0)A~dlc1~Hvr0gyu=g+Yd^y` zHCIrYK15d#aTNZFX$6Zl`0=mcmpI7jvf)}V{i=W0#%@W=5d?u&A*BCCB-%!*VxlZc zwqMJnnj_??d^SB-(c8@|}QCOA})uIJ{C`GxU7EFt=Gzmlp@@WQfS193; zkD(A!peR&O66lw=K!hT}QELS|NrMG2vhgQ6S&Uoo6Cae3Sy_yNQ&vLJFgQ^Ym!^}y zgmI|56a**~Dc2g2yH8Ak5=&vX>uMZ$tGBZINl@Uo3A?p|ORa^Q65y7&i`%%i_qcm2 zxxYlY9(B3pBO{u7i=FF~NfWwuGrALGKc{OEc;-V&X%VgaH?OOgylXv*;(INNuBNxG zhv80>BrS|valdMTX&IO$R6>9WHrA_?57&b}h&n6);k@cix1oLc= zsjeDK!_YIE3Hz!(L$HRcx`2p4jp2vEnM)`EFc4P~A)Io62Xd10zvbD0;BmlJ3I%7B zBL_+oN@-utmlRq+u4-`4<#7ps4QH&F36&Ohy5*CAZ--b`|qP~1;t05Ye zy(PoILvj_9s7bh8H8AVzf>_QcR5gTpyA6vbO**L z;T$=uxDmlXO>u2L#TJWUX*2ROQ?|Gyhm5=AUR04Ti|hYVcPzk&2ex6G00D3+V~e)E z?90FWcxu}#Y@2y*yLoW?d7>u-a^X8~Q7v21PDbi5;*?l~@_!?ay@*Lcn zncHO`{?u7|^;h^J7kQeerX;k^cn~dePYvf1wr9=Wzo88(4&@z9pn!V?=4T zmZ=(;5gj)`5x})vDWR$tlZ0|2^%_%}FD59kAX^Kn}Mj_KK>7rmE$VUwPfq=>=u% zHPr)=Ag(n@t`Qr@7022t5K};X6>G9ul2#<-Te-?faQ#^_2%)gSa&|?1d{@yI{TEAD z+1$L_C$WMS9UI7fAd#gpjsZ3`QQ2lSWz<(W{k7O2(ln3dWKx^4yv^8h$1hmBHE5I1 z%1GE|tsb|G%WnkC{q5iXO?ekqEVcj&mtgCbcg#>l74T;T0i9RZJH&fgK03JXm1g-hm*Bgqee8;_VYUFEd6J z;ZJr$;wV=X>$0QpQ8pwlL3z_YPWGe$j0GG1+3C_a9KJ6KNl!%ndM7SvG(qGo{^C^U zrg$;qNS+X4#M>!C6FHs`J5J3JhGkTp>s zD$rdX=+UC;ixnBmv@G&`VKdQsBdA zWnMX1tnM0t1!%ME$moEG(st)#QcFV-$A04)`V`f^e_Ey$L)kgtz9^XKGvadW&1~y7 zoErMwDPjxYF)#BopDV)LD`4;jIj{2qe#|wR%neYt&a;nRn;Nd-pQdF7NYEu;#)QN-u9i->ie(wP%m(SMT(21=aXH zAMwWacA52FpX<2}lU?uiuH%ZJ>2O5V}r68Ne>au1Ng`B`Ck7O@$C7!QTTe__V?!UePE)zO!Kb~`!sL!3jSdX z?&TIWtG{jb>}njDoM=%ka#)zZJAarU$ZOU z#?3<4?qI?$8$Z^&7BEV|4IxK{%;k!dELo;p;W8PB=#@_@V`h7KwCcyC8M^Mvx-sm+ z1y8R=NjtS{zPc@6_RSl0UWd0G?-drsiWk3Ug=M({C5x5lWq(5s?)D0m(yFubR(TsX zUM~l&1O9l}O5*>zcfGUjBE+tH;KKJ#rkP(RPoVsx{s%BX0S6?oKm!k4YO1XkWU#8P zK>6ygy~JzjyTZ7DLJBD)a*es&u(OZ2){MgqM3ykrki(Tc{IInUC3}oS3$J^uiwrjm zjWHK(({Z*JE37ZbA9H(;$J$IBGPWX-OtM8LWqeE+E4Fw7FY>UMLc=VqqtQqBpb*AM z!e(5OAqs(H2n#Hl+sF$PH(U%xAyJ}23hv}&vdN7W(yvedeEJhXK?fzYP(u$z6i})f zWE86hBkYkSDCb-$Od=`O^EL1~B5}AeTe9@hJTpC#HM}MrwJ|S*;j+t5%`CM$Oi4Y? z)G}#x6|MhRWla@VGWWa{S5F5r?$;8LL$g;}jTM&IWLk!A8gB$}8bIr8Zr4e?)g(ci)AqU3jOJcV2t%eYReF_vJT9eftGCVAlQ>xL|`@ zvNk_#708LfFxMG|F$abei$z}A>a}Nd?UV=j=ncb2z9rXrYJxFJp~4Zq#GmYQDMYjF@&hYJs4ZTGy(tc9&|b zw^mJSuD@=~Yp};gIOqL(?ir__iDtWPx8L@8W26^US~juC4*71p57yi1zV`;)*}w<4 zn{fZbyFNT|!puIqVV~iKJaWl{7I$vC&0SjYs{htp~y+GMtY-d+52p-uvaj*S`7k&;K6%?t2%2ck;!5fBo>cSATx<#lK&E_2ai+d;a~e z-~Ix~JLToCf9@Ng{_rQj1vXHDWhh_*|L4F7j!%LKoL>bGNIwc*(197mpa<6%!4HNo zeI-QU0|3B4Kfg6-!Ut~9g)Dqw3SHQ~^{r5bB8*`RVYtH^_E3i%lpzgs2tpqYk%vD- zq7jS#2*4%!kbA7FN!o7Gv)I+nidV$qQKm8gE_Tt2Uj$L;1;0Ub2*=E2SsQ?6}nJ{Hq@aHg=j=2I#G&N)S?&Nrar6a&wzH+qeB}gMnyVOl9tq@Cq-#W zRk~7^w$!CBg(*WdD#gcr)TTFWTS#NNQ=azJr#}U1P=z{Fq88PtN6qF;gThgqHr1(y z(kW7UKn zyJF>TddKSB^0wE#?}cxC*qveJXqByI=nH*T4S-us6?ZSNsPWFi+?ojTr0kCiMrARF1qPlj@orJR-3@^;Br zc3YFDyk#zT*~=M5vUagNX0yup%V$P&n$;ZODleDJZ?>40*F0xB*V)ehv<)+y^*k{- z-`UT926UhUo98_j+FN}VbfOi#Xhu&}sUA+Up(S1BMpxR>m&UYI+nn7=cN(f@&UC0n zJ!(>4bkpedbgFF!>QcAb)vt!NJWowvRo9w8h>mrxb-im|FNn~#26kgv-D_eO+t|nc zb+DDa*I^&q+0TZysFS^HY9j^L(Z+VRwLRr&SKHfCY4*0oJ#KPKIkS)!^S76M?Q*x< z-S1xTtUs)7dczjp_r`a=OWf^x_ZztS26(^)-d}$Eo8Igmc)}IF@Y5FD;NM0#!zDg( ziWk=553hE_E531#cU-L($N0L#?QxQq+~jNpdB}sU@sqdQ7%Wz@@oHhv!M#3eLXvxy$|Um*4#Il{fJJ#jj`bpWprO4{!L_&)oLI z-~RVUuKefk+xp|*|Np<26fEScy$iIw;p4y&B*EOGJ-!3M9?QTIWWg5PDho_O##%uaq`?|QDj1AG#hO7I z^065j4Unq(Zcsi8n}vEX=|;Xu<}J zG$=GZDXhXVBtxpA2`t<~o$H)%tPlALq9~sL^LTNEX1bTLq&wdNE9#z#KT7aG_XgM#7xvgYVtr7w8ZT@#7z{% zQM9KMe8NwhzEC8^Rb)kWVnkH*C`@d{Sro-rghdKllppv3lhQ?9RDg`h7K{W;8(DX~t&+D`m_^X52<+gvMz6MrEu_>v6$d7DEm?X%M%$=G4tj3zG$a>64hJ47DEXt8INt%Sor0mG2 z^vR(_Mw@)cr3}iZ1WBiiN_W&rp>#*9G#ane$A;X>qm)RVyh(b@37`y1tVGJJ1WC6P zOQl3fwlvC!L`#w^OS~LNszk>C2s>x=2?FTFUet=h+{LUw%&REO!)#2&e9WqNOvFsg z!W_q21Q1&o0G|7z1@KJI^rFvPfYAI*(ge*e5>3+_O)wJ8)$GjFM9tES&C}!}*sM+2 zyiM9vP1oE_)%4BTRis_WKHX& z&gSIK?bJ=|e9i7uPVa=y>HN;<1kN!3YEAXj&h;$L)pSnt9MAb=&+A0b0Gz)KL7)PVp4b z`y@~f6;b)z&Ze1a;8%T+s%V(FG+@7adUx1I8x6Pip^ZaC56%`mC`At(kivmE5*_*)zU5H(k>NERg5S?#LO`z z(=s*FGi94KJSm=lG&I$smts>lmD4$;(>k@&K~YnaiqkuNQyJy zKPA+Df>Xgv)JApGM}^c2G*puRLexmziA7BSLa@|L<DWmkH0 z)o)4wZe^4Ja8j)>*K7LLLm_}RxXiZ+*KzGF8S4WuAXtJWfN~N5-}}W+u!L~>nF0_1 zpAdkA#UcR^SDmm}fGr9z=mZ3aNsP(J0Z0Wf_z5sb1#@lJlvUZ4HMCGofQ!9~mt6pk z2>^y=6g02|g~f^humm*!z*nC@13mzRp}kl^nOK~7gI7pbLlFR>MT4ac3MNz=icJ8H z_1J*T3N*lkPI!f`;gI7octPlWD@L6){1G8n6G{}T{y@~mzs~~{l-3mlq zfK0dqG|&m%9R-yC4FFs4U5ssmh|LKBXy0n=0|ba)CdCQ(P1pq>00W%g_|1t0Kme&N zisyZU_XP#N1x)(gUnWgoE>hn4)mQ*7fCcCSCbfmWO<#yL8o*^!^_^h$bzj33;Sna` zv3ggmNQF+=-l|9gQ0P_#Al^7-n9bxOuv%dS0ASbIUdlCBTM&R1#$3()MO#qbCgxWLt_c{E;05?bTkzkv-QNLNU$7bgQb64W4&e+I;J2k<{LP(xE#jhB z0ImfCoW+F2RhuhLfC9jTH?RfIEQOA>2?$PreM$f{M&Fwtfc0fyF%D!A%L*{K1O$lL zHvojHAOK7M5C9m)LQM#TG}xE|umnpUS)NG%Nxq6V5Z6?=1X8esuXSXyHCa*6gj9H3 zo_&Ki2!&4wg*K>)1bBl@E(Ji)S*subiOqylXj_~JTT@WsJ_dwTVC7Vh-2sqgRu05x z4h1`$<5VCcSB~YkrCnN11DxfF0!W2WfM%3!gH+H2QDEja)rn8QTbx*gOt@NbzGgJY zW|6Jr81#|`kfF%HFmgJi-S)4s*O}N-M-~>=8g)|rdlQq|Y zon?kC+B8UmXBGuM0N7P-WvUg50@wtSy$MT51B_YfSw8EXD1}lMXh7%$ObCV7Er5JZ z00hv4MX-dUP6etp>V^Jir&j2~erSP8Ovu>_=Gs>F+)@}hZBKCRPf!3tumnzMZcp&s%}j$*Zf;N*h1$+s7$ya)euGZ{g#sRN)Ru3& z4Q`$20|AG|#*N!H=!613@B>Z*&nD|WNCi$P=u!Z4o3MmZeg#Vi1y1M$ex=;#j$4EV zgybggPUr;kOMPcY_Bh-Fa!*aWsE z@HVL0QxNd!-ULw?*8@**OIYv*_j5qcTPu<=-Rqkz7T2FwEesZ75gi<(j7`xk4 zINv@W=6L0VR0sgg{^dTH=5GguJs$ToAZ=k>1XBR&J{R4cc!dH_0LmrbwuWZ`cw>w~ z1JqUH19o0c;Dei3>5N(TcF%-Y;0Zn`@Bq*RPPlJNIE4n!giMg#PtFALBXiXRP@vkq4gfkvV681+OF#t) zcizpWS27aDj2CdFHgA|11x|2Z1nBmc-2`3^0IDDLo*00u*Mx5VW(?MMS-;?bZ|n1Q zYI)}aR6t;aZup0fc)1sRyN9MyM+Ho%YBQ<|G^lEySAa#hgf}SIIM?(}D23xyfIi6e zUtin-=yhGE@iy3mi{AW9DA!m2^;FpWZU=*eO=3XlTfB}~0T69VIA1il1WOp&p(|o?@*}!%(Zx1Abx1V6fKh3R7TAR5D40zM6r|xaplEQ~&{>NWDR`V70~pX-0wndZh_L0Lz#Oa@uSw6Ca3{ zUQtfK=Te&lV5mcEBXz-J)25SJ3SjGY?gie@n{v~aGTSGgI5j{fPx+-lADn<;R02*h#UNK+DRA9YMxlWT0tO-o6om<-(TQ+r^mP=Y(cchDWo{0CY!Nw zW{RExvgqQS5hY|x00Ww4C!W|jxe1iI#+Iu?V7$`FC!s*;ku7D3(uXCcynB@{fgq60sK}#CvR{D zV`_k~#TFWjEf94ZsbJD#)C){qbpSc?CU9y0soBe#w}`z$Kz;)VfJW176$A zE2VUq?f_gvZuflCBRXgomIP0mVm+|&IIzv zqb+tf21vOM`E_EzV+Q<5CZM3v7${*vgus`rL1~^XX#8r4w-Ke{_O(b#`~4RzJPZU4_sp!PX6hMFhJ;X)}c-eHG(iWt>j6!Y_ zMWA@*l?1e<0$#St1k!uth4sU>a7XYa>3&75>6V83B;7G;!)1lM+zA zH;N|}rhwD*!0<<^K?yBVq@ooQfJJM45rU@MBquxR$xnhZl%gCZDNAWek)UoUnqo@e zK;bf`*yuz8AVtNn(kc&qB`G@sN*g-Ssx+LUh%akH;DCs;H*^9G0boiR1Q(-TfguwX z1DgKKRlGi!2AODxSO3bFu33Kn0&SoOQXlw03Mg43n7`@+8bE=hPe7+ncUqAsKEqC3 z@yJ{dg4(UBb8m^xQ%gTu~ zs5uUrLKBv-L>d4C#RO=g6AnRUDAJGyPkf>eNQswAHQ`E{xznYj*u>>X;R#FNhe8zs z1&}O3iczF6h&lTT7#@=bOB^jh&Wp$(Q*jEzaRxd|%BfLb@fkokb%jp>YfHuYgS&Mi z6eA@?CXf^sQjj#InCM=PQqjz4EugMx$k9|Yf`Ck1qD6Uwi&~A^*1cg>I{XsAC`OTr zk-lPr%el=+MZt+woMu}8U=_tvkNPXJropVI94%=}YueMIHnplMkjja&-PR~4nN zjp+m^QsG@O8g060I8beDL{d?J!d@XN>yZLwiA%iVu`;R>h`K9A(O8nGmPiGbsuwII zJtS8P5C9sVdZg%JhCXP*Wwszi3M;eR?v}_FHsu5N^XcBoYARdAMQs~Z-rC1FgUO^a5Forc|?yj8Pux89Y z#1^3d1&`a{(rlGkF=-fYx(G05PK-i~UbbwVJ$extX*te+KIfgeoE@(M1y`JagD476 ziY{|`5uM-!i=qPv6idgwOUNx&*?dn&m)bt5+gSJxOQlRigZ5SWeK& z{nGN3AH@R}fO&!4_`D)Y zr^wW0ZS|{TJ?mQEI@h~CT3S<;=Bs3$*pKpZmec&~r$RZ-L89}YS6y4(c6!d=&JnwJ zJMJb)+hme;WywT6bSE!6;R|p0!<#5kn$Y;KJJEKpLq777pFHI&Z~4ow8tf1mJmNd= zdBQ)wCHO5ZSox5w)>QA4oc}!QTQBy|^Q5VtI4>v!jrrT-KKHucJ@0$(dzolH&aNLm z@uh12lhKpb7O!|kbkiDm)2+Vv(r-QNc~V8fyrRp$-#+)d@BQzCKm3^wO6sO>e%4oC zC7*tNDdh}qID<0!=bu058P#<0<3IoU-#`ER@Bf|z-{H{T0M;M(9o;C&9|0<$@%>)| zI^Y9BU<69w1oA`xCg1{|U;0s?qg)^cE}#Z(UAa)`mI$|h_;wX}0DVpLbqT){A-Ab%tD!Sq;!eT7S;w;i4p&%Sf++r>2 z;x6)HFZ$vy#$qn2gfLPb&>7<~B4aWt<1#X1GdkllLSr;a<1|uZHCp2}V&gRe<2G_* zH+rKk5+h24BjinnEtumuqGLL$<2tfqJG$dL!eczj<2=%1J=)_v;$uGQqdm6bH~Qm0 z0%Snm;5hDG?#hQUDiPSPkPw`fms}}7As-eD2@{9r-qD<+Nc!~gn?2Ng`z>Qb}Bk1CZQ_o zUwT!nrsEr!LP(A0IzDN;y6d|_ATj}5MX-ttTB(Hc!Ilc4cjT3wa>Ojbvz>)YXMhL5j z93&rX0(E+qQIRMDnCOjM+8m+5CoDoK#N``2Cd|g=T%t>0uBgl|0!htL&u|K7jhpt6 z0)U7DUG|J7kb)@CO<?%>n|>My<};g8lR- zy3}lLf@4*F^F$ARVpm&g~rj1sI7ETXSAAQ+}?;L zEP{;?0OO(~x(4Zf_N-%~fhKS&Vtzsz9Hb?f$-0D2}UPK zX&;!(XVhzc>_!1N=A6`SY}i5%5kMyXYPQg>!7UPk5YYr}j8g`#ZZsw#nn=(-8O|BM38avJ!&!6}qWD4-W7m}F<9l_-eF`lL-{ z!BxCu!o&(dC}4tP&UlB@A2HI z7vtzQNy&4t6)Ax6xdJI-ma&W++<2K}8aPY;V77rpuqiM=>bm3W@^K&gG3AZd z|IB9s5WpLV!q?j7o%Bc=yg}baTOs%DCzxJiq=8gU+Z({8Ca|S+0>--Z?LxF?Da7fe zEwUk3Paz+2*6wG4enR(FSYtHuCjiO8TyocP8!;-oH672^Fac%7r%*J5vFC3DAl~^x@3aRdd0Gq zisS)Mltn3|!E!lf!J3O0=@uIC#aPD?2P5Vvz)O@>Tr&j+0Zos&+_FU&2`3;TVJ1{2 zpaPtM0V>#@z+S`~pn~=hvSen$Dc~h#aK}M>!~nbtPffE@?pG>=0&KVJAbZ3j`0`zb zvz%mt!R>ZIOYcRTtdzjhkr4p@vkJ9T_-0BQ=qYF@imuOeEcM!M>nn_cZxWaplTl@! zBP8KT7q81A1!q}IY$=RyCSbye(h(+HmN{m(bqfF=yl-}1=yEsr+OChEne^HMDFP4` zI%bH9fN$HrTBVREt<5IVEqtWDkrh4$M%y`iJm5O*7C`?NmWI~f5z-7q^e~;O6{J5J!-6+Uzz?20lz(KnB3#w_k zMZ8xYp(}NoupKo9aI|Uvg1yUKvbIQ+(`(Cil9|o?HZX2qHqRZ&fDFhhTorHwaCeRK za0aj~RBd;bMFAi+I(9Q3AoxP_fpNp|c)u`v8#E>usUnHU@;&ghVM3(-YT1UbPcFJT zHt?q}pJPAzInoY^mO_48u8UvodZ#*yrZKq$$0uZ%%8stEinM~y*p@cz0-qZ;o@C)!jw44-Bo5N3WxJE?a*Bqw{yGus-Fy*}yb43J8C-@v1 zn1TZjvoX(WnO6k=9H*YZ7;IBv&~|~sn?rV--*48cPIEJF=00bpJRZ(H*?Gp85!m^F9P`F zI)wty69=Zx6Dp||eH*l@Oct`xqodEydZQvWe@oaoMla}I{iADch%81sp*Nvc^6@14 zjIqwK<7l}g{mxVFIX?P>pW_^p8?KSY+NPJX-Xph@wkaqyJDU6CQ-0-73VIo4JHZd~ zS&|~_Q~Us!Y^W5S2ol2sJcmurw+Y7^^v}POK4@@$SOA8>hsLy&+MSq5!&9AEN5puQ zO+>)=W=jPB0$c=*JS=<%!X-#1`-}%_#|<3gcF7CB)2aM-ZL>%0DaFOxr&kI!lFHcz zQz=_y&00;PvyG)oq|TOQs_`dCt8dx}Xp3o)#!#<@o>e)jXn zfd?1P*%l|2pG1M;Bp|^Xf&nOdwAE+SC+L$uSq}jHQ>Q-Et=qavxlbqSd@i*~uwcLf zG@ml@NkAa}WboIWtB=k}a+^$TpmPp^>-s1Klm*1IBs1nTv&0nnC_^BXGzO?llS|Oh zjKRzb*yNKw26%;mQ#K(5j6Ns>;}T7_qinkuVcbptP%gQ|lp1ZkWRwL?8-Nc>_>j!B zJ}lXU0S4YOvN2046y*&R2S_73QZyM5v$+KD3M{6w{E8`$J_$t=oY3&;lukq`MUz+m z5K`z3PF@M6lutmJihu$}QAtfUNg+T0k4Q-+6tR{{DNd>^(K8gU9xBC@H05lg08&WN zi_t$7?Szy92zc|8Qc8KHlQQ2p^V2ok^a&GDENP>zkZ{suP)<_utEZ;GC_q$DMQx)M zTZ9TT6go*MsLL(ILZAS-&^ik+NcoJ*thrvr)4VxVDh!ZJI4OygO}L6oT#eFT%#>0f zi)^@c*=^U|cj1j!-g)V**WP>a%~#)j`R(_&MKG}>jW^P;1fc)~;6xM2`aq+TOr|sM zx&*SDxH}#tPLRCn0zeNyf-AHIlvI8ofRi*(EYG^h5Ew~-0Ni`HKTJ+cpygWsVMb%* z05ryIL(JNEtHQ}FK_$KG{M%8(%?9|ErGZvLk+KCyF(pIL1|V4LGzLy%5vhj+2{rVN zyaZ){k2K|t9~gkxW+jhIW8%sX)JOnPYBlWcyqQWvIZi$)$frx*2!#_k6JqL(PK-+h z44O1j?C@6}hfAYWI>Dq9Ad97I6iyPiBy*L@^oiR{Q0D^;%3A_tl&nO@M5Tx5VmuR? zT6%+U!!sErafng@#FJ0G|MaW%%$30;q6toan?G-ZOv#nQ=1zT$@-&KvW93Ex?uJ z5oQ3|@CpGaK#0n@C3FH1K8^(7nB=MDEps^;J^+Rf+j+z1K(R3U6myB2$MyOhC}!$N)KBhK`z~iz6q= zkhMVM4OeNXLoq5YJZ6-m9rfr(HMvTWj+CS&HR(xFno^anl%<&&T5kFP&Cu9Frknv0 zJQviNWM1MGX#m7e0b!sO@yMK=89*s6F_J|9H4USv=hYOr001RmZaSHaK|7StfL6v9 z7saIRf;341kRqIdx)ey!I=HZ=m91@cYe-ufSGmrWu64El>s|4hSG_V&o>w}`B{l)r zz@F@$IW_7VXtasI1{M>a=qo4zhav(b?{J`y;gvoLhSx2Ue+UT0-vakmk7~AbqBZSl zQG3O`u9mf}b?s|m8(Z1V7L<<#S}Mq@lI(rPwhVp42RRX_sh(1ol^H;LGB`09rPh#; zWbSjJ8(rzng|^kT?sc)7UF~j{yR_{sYrcD#7ELBbJ1|0S}nK1r}Ff^P6A=FPOm%cJPDu+TY6jmopM}(O%ml zF0UFmts8czhdKOF5Mz>#FNN@lQJi8Gub9Oxrk92P$x9j-Q+2i9N$-ts+#Ve7n8!W# z@sEKVWFZgv$2unRk&S$0B`=xDP401$o&01RBiO}Nw(^y+oMkOndB&yb@|M9IW-*VM z%w;z7nNK`p3Ktd4ZFcjU;T&f<&za7rRI`lps>?ns;5&NW^LP3T=s*h^M1&r+q5X_# zLkl|5i*EFy`MhXCKU&g}mh_}A?dVKHdefTjw4p8iX-13M)1=0btZucd z1s!Tw16tOzKD4bzjcZWry41YRwXa_dY+4Ju*Te=irHzejW7pc)$8PqemHljHKik>V zhPJgc9c^q+8{5_H_O-vA?Qm~e+vDc;xV>%vYtHDo+~{t%yU{IbKMUa2#HM$>;|=b7 zcX|N=K<;q?e%u8RAm9Zz_`%t8aD^|N;SE=K!X18aTSOe-5T`i6C;o4WTm0f3_jtfL z{&A6yoa7}p`N=OHa+I%}wnkdfCsO_F1pI z?Q1`F&d+`Kx%d6=fggO~51;tOH~#UFpM2#D9`;vS{_~-4_uFH=_rH^U1+Gzk3?*P$`0SE8_Aus|ZZ~`f?0xj_V{*S9Ja04T+0LgCaq6q;+Py`EL z1WQl^zb*iH;uFvy01(ds`v3v@;OnxFeMnGQaPS0iPysox2Yv7dfiMV#a0rPI>oSls z9IyzLQ0zPq?6z(Za3TtEViZRIK?+}?4ZKbOlq6sfAOQ@I0S7>IQh@-nQ0oxD6R1!M z)o=<&ArxkC3E?mfclJE}aunD8?`uYGA5^4|!@e{lb0p93HP~n!A ziSov708+seMnn{NaOSx=`@~pa5)9>na565?~smu^1Z>_p+`JG9eRD0dOz@6^^79yABr# z5nR+m?Rrt_^3n3X4j6O)kr??g>y8l>PN5(R5*`WCAZ3vOl(8Hg@*yEIA|=xPG~(*| z;2isrNzASfz@Q`1KnA-m0I(g_8!ZL(u5jRX|N@)N3tA%Su&*|II&@-0^{0p=toE#VWs(hNBP0nAP*JHZpE z1S@_r>jnUzNYV>qPwJF%6g*)u`5^Bs$SM^8Cg09=STgELffSmO>oiL!t%SCQ(#@f8#Q3Kck_FQ|hl=kX~sQ5Sh}?E1hH7yuNqQfC;z6ZUZ^xegdn0Uo;& zAbk_-j?oaKE&xV>0X{S822(BJGCHMmI;pcd^)3NM;S?GZ>@YzzqwW+DASM^Ust_PA zzmt7>F#%d|>cGGh7NG$Ah%u#(XTsAtPeuW>Q8KNcnn^D{76Q759YG+Plh6%iD$(2pX~HE$6%H4$7i^fx^L9)UC| z1rZfUVKo2$@HZpT6i9&+gfkbLvpBErIOlUYx0IRIu_3LqOwII6(KJmPFFP?)>fFLR z6`%ktK@-vh5Pp({LLp7wfFbmf>e4_>O2JMQU`EIk>Qtmp8!r@a66)GQ6EvX|zyLsL z!DbRI{6NfCRK~Q7hp`) zv|~N?V?p*Au@e+PVJ8(-Q@qm_07IC_DpMm96h?uQUf~lk;U4gltWx0(=p<8Z!4ph2 z>JHUELC0nQgKNY>8C|h2S(a8@u&DwQ3^G9h5i4dbVPPS`Uf|f>`)QB?35)`Iz z%u)dn05Alm3X%3BzH<~PL=;S+Iu=0z)>Q#C%M%JlF+0%}L4g!H!Z^Tnbu^C;mILY% zfE18(0X#urq=ZfkQExjz69yn?7r=TnVR6keM!g~w(%?!{fe_?2YF}1-Fy|Gj4r(?3 zL1$^^8ShmvQBz-`PJ@Cm9s&011a@FeK~=@hpWu-(PJv;&jx+tUO5G6Z&_H4nN^LT8 zO2ZO4ClpMD7CJ*VdZl-IsaFWG^HW5@7A2yh6fk(saf2q#EPt|TOf@q9BkI5x>$W!P z3|9d@3tY8zOhDvt5H&PA(P@D;Y6swQ6_gapcj}IAKusYO2&N$ipgI6yR0j1v8I>=7 z;IqPxnm*GN$rL+3b7RT0M$3am6x1)rF%vMTffwNiux@{wvp5>^O@0;-9tA%^m>mXT&d{|R2O)`vV>8SAYRvh22mc1bYK<#wk&$H zVGnjh2!jT*P9#m?6iOiK1`;R8k*cNFv( z>rz1;5sL>Yu7_-h~7+@4)QYq6W4Z>M@%lM43GmV}9bB*D+pZ)ot z0s8o^mtsOe0r+5_7~;4XctSa1ed9ET6<`z^%W%=MNw3bKl`|Fe7A>blnLJbK2%!@` zv#GujY9kksANo|Ql{g0U61;IclGCZI(whyJqS^MNtxg?VnQavSgV8r?9a<@65SQ2V zjIFLbz0ng&A(xFhJBk@-O;tIYdYQvCq(>U4PoX*}`V~r{mohgE;I|pI`RbmNIT3`3 z3DJqSu6BI3Tf36wLTb^;tn*(U1eWunqgL5j*s* zmu@>@Qht~Zq85*vSpYJjKxsMZ&`2*YsL%qe4W^iGQMz~|^>JVSBnH*P6$?7*Oy-%r z<0VCNmj4(KG8uq3`6LfnrIYfXh8JK8U^_shAe6JK|IiyV#qL@5}3U;DD5?o9}8 zp%**r62KFHs9O^G6?*Z2sT!)g@Pa&dLd_#aQyc0w_L*gQDrl?^3SgPO!)Cy?U{i6d zJF_TXK@-w46V=)&p%N29A*}!I`gEopTktw;VKE$|Mfkc)|C%xmSfMO{GTfQ46MMob zyuvMf?-pA*k7$`p8i*U4susX-CQgv_bF9jDan@6aLSdFd6so;(9FYfuL~<0o5kEu0 zC-rtc7rBa_J&1MWftHE5&%y=VH}~mI<&RLr4F$!=o{Z;5nQkj-oQhi+E88Edb!A{<7$WmqBXb^RvhXSLmAU&1_Pjdol(9Wv?!tYo$Gn(YPXy>#SyhGz&U}F1cnr3 zkyZpon#owfM<&z_=ABKQo}l-_S-sU={nf`Vx=TeAC|Lnjmb$sst-TNo%u-+!6{0QZ z6$A!zh?r2>(-bs8eJp_#UZGD3U@^Jovye6u%#v%8!xFCih=v^$K$q7)!Ph1FoCmeG z(NBPHTwo-lYAa++z;$snx2Zsx>Y)8kEvvcVKopGsb`w6caE1MTz0=z{Ni48%Ft>EE zo7Md|fpGk@J0_$q0q4#^TQ4mrj|=7#9)6>(eUv{}0eQW0H`5WT1e?I!9fBGqW zGO!N%we{_0cS65zkC=&)+n(G3uC>oFt6t5zwcIwJ zIDvWv2H{z(khg+%&AWF_%?fv?7EY76@8igmD__pMx%21HqYKTL@b=@}#-(d_4P4{# z>@mS_A5Xr#`Sa-0t6$H)tmE8W+so(Nec^YXZ|CdZ&%eL_{{RLkpm(^zC*FVv4prYl z2a48UOAjU};e-@cXyJtzX2_BN@NpHPh9IW2pjG$vlwXJ_rl{hIEVk&PYSwl5;fpJ3 zCJ|&61z<~uTvenMApztTq*g)y4oResJtknJkU8R5Bq2#UsicxiHtAu9NFv#zkxNpE zvlxmAv0hPkDbWNxV?k5rB+ZX>e zs^*CT&KpVh*9Z@D=_X{NRD zs_QDPs8UMsz1W5du(99&>S{2=&kh?d!x8(+>%^cwOs~ZFrkU-x2ScmzsBuPIZ^yP4 z%q_d%#%N%!^1f*^mN>u6BcC@T$}OHh=UnN|Iaisd&O`eg^wCHw>NL?z8+|jLKu2A) z&{4XXvRMmsJ;2ukED*NXV3%FC*I<*Kw%TEvEjHR;cMZ4Mal1{n+-#ri_1kRotvB6s z=Ph^IZjXJo;dB$O_uXwbzV_RQ*FAUQW2-GV+=55mcHo-(P5I-BgHE~UlILCc;*!_> z_vU?TK04-hTV6Qllb^nJ+=C}RIO&Mvz4+vK=l*!`xcgqY>A_>3d-9g=P5kk{U;g~? z#wTAq^44E}z3_nlXAk}H!lTXn_uI#AJoU>ze?I!ni|>8(=5r5z-|NpWJ@?aZ4}AXl z+aG`W)x%%?#uq&R8nAoQ3t$58ral46kAUoBAo1$wKkZepch*~9{~)M8_f61&``aM@ z2Kc`D!LNY#3mgeWNI?iH@O&OTAoc#2LIcJSfiSdT?btWG4&Kg$(BlxBZ1K4w8u5ro zOrjE($iyZ(@rh83q7TiOrsjt$i_Ch z@r`hdqa5c*$2!{aj(E(Y9{0${KKk*GfDEJ{2T906icx0R(V`+Xa-u~#@;`=*q$DRv z$x2%Cl9OK^S(}^CKX~D0*PjEZ{C{?GVYk)~n?!2;NsPKA9cD(GWAbfljRG1kA z_vJ@g%&W!rzDQ(-s&sKE=>h=|97S?fH<{W5qCD-au2{3e$;ewpq5XHw4-*|aC0TTv zQc##3y&~P6pJ1)F=akv!3eWnVM{3vQvOD0qxuiPH>n}j?92y=xm6MQkk~Pw7ROS63 z=Q&~b+@ciCazZdJeEFUNWp*Eo8`-&J)Rqfuh&*(G;-FvwEQKq)&tA6^&=CH~Ok-7n zCem2Lr>DW12J;8lNZv#M$FdZ}fIQEHz~pT*xRFSefD@+!2($NAQ>I2)1xBD55kc$( zTqov)6GR{gmPeVY&j#*3NkiOC&2wk>d3+?8zHzP_A1{y_&_%P(dQ?)~;eBcrjIhmjXK`wXQh@0S zCo#Gg26^!`$;<|1+(h;^=_CpIYPKifJ!|KF*L^KS&}9Q2Ue?+}9+eZDpoBAA%1B+I z=f2eRiYq`CqJidSnT=dVI=>ioT{RDb>kP{j!JR?Bw>9ysMCK;mvg_ls>1lG?4Yk?fXIZ$;0 zDw1SWDH8uUq=Ou{B_ND=p+(44^~G2Kz@JNlH{hQOz%&wA7o#j1_$S~n zw?zZyLU4DJBFi!MQN{`i2cr=aT}rh^%dAMJCYWA}c~ALC>@oMF*ob;cECse$lv~C>eEGrJ z4OPaN0$qR^jX&0xQqY%hm6#c=oAUf9Mp5#u{&=`i2I2DV3n4Cv^avx!G`atWKu)of z@KWYADy#=Lw}fswo=xs;cUWQhE?$JD4=ZJT#V_DF+xcAn^EyX?p4nAoM90H3(l_^I zxPD$j^`cUG2#wW`pIIGzKbqOxiFVV$TfNk#^qbz{=)W6~b06jpv`?J~$H0yN zjFjsgJqxh$-WrR6z3GMS7FuOe!7?yRj_$D5V4uN40F8p>!VQA&+vj6mz;u9{jIrCJ z=+HC)gN7=97_-ex5*Q_5>dj%Ew`SY`cYuw7m5P8I07j1h(vVaeoBjlN0WblxkOJTK z#Ao=OL>X(wouaO}zy}x-_Nj`xH57~oz<$j-$#Ys;8zUZWdEHNeayJF=H#uRC!L?xP zw;?{}V(!oSg7VQ+Ndhn|DkuXU)>#MSxqpzqe-B?QJi$0Tsn`@`jD}6C)GFFWs@P%S z5iTjfr?C*%8Q10+C_|Vp0UqR^B0LFzS#WxTWG&sQ{20XGZ_WwwkuVSfh)51f#{@_> zL8JWvgOs2g5fk@h0ELF7FwCR4Mm7lw!bL13$2>oKRb~gXw{_k&4%2Li39=%_TZ5u8 z#?mSwlkC7JARLSF)Oj0D?HNmx8cUWKo>t666b3Xp5Pu8-{2G9}b`eG%&^j;}N$6+j z@DaZnvZ@%GQed`l-){eF1SrQoMHxfdJzz^X%Dd^j^Gdj~b2drK&5 z8ElncXKY5>^kV;gFzLIPR;nma_4|E@rL?N8js0sxbqrY0KxaO1=SSShW}IZI<(eo$ z;&+mzI2@O^?_t_uYz?=Mn*ofwosQHw|?pQ`{CXyfF!!wad zf5CU=oKkcg-Ae*KiNOn)gHwTbYDv(Pd1%4$YZ!|7Hfm)r1}7ea?o5NbRN#@QC>R<@ z#TguK8JJIjlkW!-`hznC(ggpenv7eQ6+)R=09TxT1~N_5F3mJGcylw2tuQ&FK1n(p zfu{rH8PVH3b_uM9Oc2GVY$d%tgMQ++uW7dbRunngpH<%%2*WzhQ5g;Xfps^jUG@OQ zI-YW0O?d4bV?42tG%O6Jj-gH6e~ES+gF*y6ZW(M@NZd+K>O;}YBzJv0Bn`v1S9n-R z36KCo+Bq5fm7rkvo9vvc0XLNQjp#Y0i4`&SZB#)>$TK1X!egjYu%{BaffErVLx-Lw z1uQyEgu;ZuP|%}bDq=V+m?PH#ZkvRLW{UWW5@z0qz))4xzH1h!bBjZ+K%X!wuVyoR z0G7rK$OM27-|8==zPM2FYbS)`Ux6%4F}NC=fMwfW-ktYo!Y<4kS2e zZ%zrrV)ebtYG-x@sh_5q3k<|^`BZ5&odtG`TQRxE1_ZINX+=1i`Q7e<{)R0SwFb>V zmJ-MUd0z|hF|c}sflKl`2-aRU#H)qlc7ko-P-Uq|40htI!`B6JX(FDLLKRypGC7=! zlfASF>qyjLihEuXgS9g0RJFe;Bi=O_&eRG?x<8bJ6C(3cgTs6Z(vW41jJq}3ZyR-3 zYHtViH@QG#jtY!IqBh7ZGL+Z8097lc3@^b1UKj?=oPtxZAA)+{mp&zDrfO8cA6S%)oP;8lyY@aHNE%a{Ltkyxw#`E|C5mv_2VvX*d?Q`^u)7~B1=^fYa z+c#So7cMC_BFXUtLYmZyze-Y{EOrd%bX+Zd{-=)GFZ(=x(jjwl+XO81xbOXmo|@pe z34fpAhQ5O!`WOGtGqn0HrqcgdF1ab|RD@YyL{b?Y$n zBn5SAy3pC>2nYWZHooFAsqL{G>WTc>^L&ZZN~+gxUnuTXZ+LExT}H2yMsL*5-e(#@ zhHPJLGkV@#_3E{K^;!CwcX|)3*E4EG{nViE_V7qpMqfl*U(`}x%vB%8r_WESKf%1; zMWH7^icUSFAL-Jcb=8lRLZdTOGR(g`F&{`}7$|KU@Qvy(_MuI`8sPGAEH@u)i0Z23 z8w@}UwhVPPUJc^fzBDfle&`(R=EHSn3=Ld;?(!M(u^JjN?--OCp3-O^W*GLw8@`z{ zubEyNUfHjnZ5w`C_&&*~`^m_8IqIkR z=)bGcJ;{NBy3vB1QBb=fkU0h$e)Gp?3}rQT=RlWOdYm%ak(6;<9dDdwS%+$Q{9bf8 z{<1nf>0pu6MCQdfSLTGl+i^};O1kBV^ZbcN(v!?R69N^?9KMr;Dw9&nldKFA6Zw-p z8Iy7qC>h@=6>06q7E>}O6B_&)s*KZmj9Ti~Q5LVwg4bdJbcu623gg+c}qz$r_tEpLYF~P;MZZkvi#mp1Ec|-(unQ#;iZz z0vZ2Y>4AFT^+HvJQvC9QL+3)Bui6&FVoUp?Ii+T#?PB9KJ&tiHVrsO_cd1Z%vD=lZ zt9?m0U}=nTao}J{ZDwg|nYEX3dBJzCQLtv#f->iN8NX(EBXfSzcljIt3J|xrxxDhy zcV#MbW%q#T&|=k_bajM(_17@d+48De^y*;6>SYDf{J|>ta1zj3!k1b5`Eu>fgK6l! zCE}5_^3yfyn6=lw+LR*{6fY>CYk0NCa0(RO?gL8?>rsf`BuK)aCNjT`FwjM zGl}q9WV}ZK6(Fuf65Ak&tp&g~W9t%rpU125qShegm<`oRSUGM(ZDm7eWJB-Xrp~_& zb*)Y9k&U=D2>mh9h2%OaYeGb8QS^}9SAf`t8C<_c>@xDBzUoH@94x2xeH;N`jv=9# zEw7F(pOr1Ye_QC4tr}*i<%3}>zile%9~Blqc=5hlAOCP)`SIexP6so%PJnp46A}&I z&RE&W`nOez++Ymf&hHqDs9cE3B6qm66|1#Vc}QF@0A@L4_)xWz?YGx-Z#xFHU9htE z+h;d7bN9X=vD3)zC%=7+7O`PYS|1Cv`QQFnQ|dlNk$s~oJLe6L5Wptuz=-bJMtF|=!Wzpv(Z!Fu@Q-Q;9uF_p;Twq zFMqjw7!?0BC;1F+1Dqlsf~T@h6tn+?x}W|oc_G)FR(l4%VJHmo(E-p%=f`3|=)?05 zv_J^L0F4WE!%)|%!B@QX``^)!(!988fS9WQ+{S<3wYtEv{|0<4j2#UndFhN_1xd>W z-Ydh<0)T@%b>ll4w=o*1&UxhxI82q=mFcSN>MW4)4}svxs@BmPZLs{OKZ>J&TEt?_ zSQ32U!8vf4vWZu)?5jK^tm|Fa%1ora0}a$YjNo+4;Fl5aA}IV2h3P$`DyyEDYi^`$KrM8tQWLfJ!>sA$=176r?4d=Q=kLSK#aTBE zGrOBR@5Fm&t-8Z|Ftiju+$&7OIke9V2MMf(Qtj`3Uz-1AKbE8Tk@FyRTq7aLfgj%n zN`Wts0c)zOe~By!?11=_ zscD0o_{2R4B#=s~Jlf4k#=sM_G>Wbig9%HW)WkmTpBXa%;!bcGT(Kx2JLG9!_W z2*I3Rj}pVQ46u(u_y#yO{`kFDl=#TzR}+N6KD-J#@>FjP^wdRu8yM&tzBPQBLnl~4 zzWDRaQ&Z>q-%qKmyA3%_Jx)1DGJ3h#9zEj-beT2zXz*@+A}$Kb0kY&_j^|R%`Pp({ z`Exs3i_Z|JF0eY6ulj1$U5hfM@TROnYFR>-fK(4eV~ZB%!;?>78u6Wp*M$(;#wL@~ zAkAN;`>?UfSPazV5jHXgs}lkz?2``F3Xcn)3e9*}$4H)?TVv#@JvVAb0_qi%A3pW8 zO)`6-JDbS3u1k_?M;kcz{C!4`Ep_VezxE>;!ToBEC4|-q5hoP3{w~$*W0K$}e_tW< zElklL@iNkXa;$^L6e!gHZf~$_^S%6pHWC&zT1E2a!YW`0bwG25uU-r_!zk1onmhAHr{w&(CBEfUU=kC#YRwWPvzm-K!z- zY9{GX5{H>YDv6Oos%=t#yp$Ua`3?;k7P>)@Fv}+CUy0O>6|FWyJ5_n%jc zKy#UsN!)*KJ^)}HGyyvbPusS6&{pd$u?>pAnNY%JSniETb?VTo#}Y(m1#juuC-%(A z(K_rJ;@R$z{0evxx;8tcz7Q*)G$FJBI+vmZDbM4FlmQn!r~Gu@T}X*Wq`+~~Fk~0+ z+E}g+470y@(j6xH2_kdehf6FQrMDLDRD!QIjdijf>Q0 zSFAJUlH)xaMZeCsX1qD@P?q}f5)Fw;#1}eOMuLAngfCI?GYi$GkL3!A6C^SJ`XZ|m z(HrQ#L(u(#98e!%k9Th-v3o&D;r4de#(kcB>(oQdpinQd%*K|t>x*)NxL#6izO6YV zoc9q!jS@|{DicX+t?3L$T$iw>01=y-bw_vNppBhS=3fnm5kwNFnw?0+->+sX0|Fi2 z3p5*c%AD_nr*vo7h;2>8YI6#u?b+B%F8|f?@N!6VKFJe5@EkR>oqTGO!fbwS!sqkC zE~AUj9_dOBbQ%j~5!*V*GhXO~!ECcqgd7z4dDwhscC*9UHu&5h)Amh$&wW74C9CYE zm!V)#z-#NMZsBzEHGBY8AXKnp`ADtI^5rkiTIN7P@2S4XB;h#1iW2c>UIzJ`h9&B* zh8lY&2E|HL0?>A2EpZ77vN2W?ruI_BV3=yInqj5}hqKAB*V8(`o|5Ob&Sp%ChBh47 z?EKn!>n63-DMFFBa#RnSji5o}f>1>uhl>@dw{cdvNL6IPj;7=0Wd9p|JgH!p5j#Bg z_E#9H2PXg<9p2MkON#0|4p&FbOP!vOr}b2C_sbuv(OO>Uk-XU!diBJz6oU^Q1iYdC%bwZXr=gqApFweIK-$e zM(D-+VKep38!t6wDLMjvF9{3G;eG?XPqzk5r|ecucoHl{B2V$ zSv(UOj(<a(5)@xW0gzWgYC|2y+=ZVd;xw&f%$!#!vl&;!8MMvz5K>vfW zu_Xr<4%3^dJWdhyyQEGAlH22tYJg-m3))8>#6vP>FEu27NvNcFnq+I$N2*;rqlmmS zi*BW^704)S_<4f`wY+7dlOuFd!a?u^;2m*sv4NT`F8*k^7ar~EzG^!yTZ6=ZMX4vr zW+%uMvOCJaGA8eFOx7Yp{;BH#`(n#%_3~`B@#xyEDayN9+_d4%K?{w|lXR2j;6Lo? zZO-V)h*gRrkDez#j>7ECIq|a%0lS>OM`5xgNJt>ff;#aX(2P9>+h0*#YBB35HAP+I zIqWLK6E$f5gW*Ull7G!Vup-H%vN(M3V35yyFXN%8z1L*si<}Hz>F-isr|GkJW^B2e zHz#khRGGLKUY9g(?^xgWo^K@oUA3CN+gQ^wmT2gl)|Rp<{8DgkvXZrS%i_rU8EoMw z=AeGD^q|x*X~vNiY9bXd^vKgAHtye_mSc;b@kLi!S9kte5_LQcB&%3<{O(VBB|G%! z1ZY?N5i=bs?w|UZ{w;*PUuB<-+4_g7 zx$!$s_PRXyQ1d4^!6%WT|5&8?q5TWDc$un(JGoCjhdm*X!aYuZf}bFGNlbqHx^+V3 z$#3r)L1{*)Je-A$I4JiNAl(Hi|pO;&IZ;vhe48*cy{)>NY-*W zUWN*`47pXkFVrlZBLrWD&O0Y3qt> zC;}OZC=w+jy)Ha!`DbmNL9dxDT;wbn>Z}u>R#8fhr;p>gd+pmEnJdKF+LYP7>2)?J zbR>P;O`BAQn!-|KZ2Qg&xh_K5o0$F2OHf&0xA3Fn5=yVKhRGg;3oWi&gj zSGjUz%hw?t<&p(uKXw%nm`bRRN;IuX2nknUca)F0a`36t>mZew{XT-yUQn9K?d7*G z$iCtMl`uAykLIdLAjESL)mQ~3lSlpU`;vxKGuzPxQV^Sae)_|%Q?Zd41G z)HZepI?e}(h}8uc)N3=;TZAJDqB!cM9yDwaHdG(Zo{H>YDCq?al_qG6W~dL84-u&Mf?N86mNdSS42_y=mXm0X zQ|1p2MGmzUf0EZ6W!8LVqq$tCHtVB_jL>XL(Tw~lzbF-S6F<1DF_N^exjMwW)<*oT zoa-0wh`dA4*C36}p^-$JksmJDtvce#1Rj;JFP{~j#7=3QZm1mYkHEWz2_yd7BvZiz zE1j2LlxtlMXHYmZ|Os6LYoe zUFYgORFo$yxc@-0gwHpUpK*gxcKtMv z4tOCw`%PZGjeT~tZYFYvz>FEd!_0~z3Gl*ZJ#39OJe_U<|-84>z&neTkMP9R@5hlGC z#z}+?mWK0ZAod8wNT6@d|HLpwn)|h@NtR|^@~{bY;v64aXB1&z0^vf#u1SG(UAE!^ zJ=H>Z1zEZ;LGfGDJX6zhi`v3^QD|kfFTgXYL?70pKJ`; zprQF>yI3t@)>=?qQDA2C(kvMcl$E7dPcO!|n0;BUYNJ~6Nn5lq0Y&MUcV`xSi8co$ zm%jSyE0d%7O3l;a%ttmK4osV~cn-+)0TcWdlhPJb(#tHzfm5y)vu_E;sPacLEsigi z=6n&@H-R)wcq<1MtJfB5q?X?pSJo_oX`7axYv~C5tLimE}+V)g3C33Bl^{j^&wR`H|tXVdj20foB&Lt1F3k=LZ>Q z%g?@etzL1Em_Z-_%U=*75dZ*uw?BZ0NRt47+yHnG2Cgcy6d4%kSXN~l8xRU-Q_E1P z&h3e$5pr7UtIqrSky$~Tyt3Rv7-SX3&t1*^@j5K zT8GKf&9M54#m4_Hc66gSW|xbuaHin39BQgwj|yN@&(dhVWk)GO&MQOBwOgau8&0IP z^K*L8$N$5Q-u8@DSr2Auwl*9rHoe|k8E*Zf8c4zx@m8~~>13VV_kY=udbU=(gm#5F z+Z~#iw$?vKJr$8R|JNOT$U2tC1Ff)uwLf=UckloDzwT&FH7{|7i0S0oeZiOH@%EZB zfztnVN5zyZsB0XH0;3Gq_b_%RhwtJ4>yFgn?Of|o!ZQx*(PBS}tz88Vx7R-+!Q2}d z1!_l|k4l^+8*v(scQ)d67D8+i44yh}CK}t7Y$ge7_HQPmLb!jV*d&SPB-<61{77?Y z*!hv3m;>F)cr)X;mFe+=hBcggb7w0X4d&U#ZX#H3=c0hzLKX-4?sgtViDxGt{oB8n z)y<}*kM-Ay>P`_hglD%n|4;!!=f<~7l^c9gf-I@(z2Vs_uY>U*OBrCyNPMCPdTB-V zVBYQ!jY?TG9q&Qi)Klk*5U{`1c7YG(9jb`clJ~G_Bgy%}+j(+5 zAQz2hLAKzsc#qmnXPn(^iynM|(}nTlcF0avc#mc$Wy$h+c zd55BkhImwa%h{s)SN=bdm|@pH%N|>q*-Bo2ZVvveqIti*UkkeX;{036boBZ6C{aH# zTxG|P^Nj?fJEEUjU?_F>*e5oBx3Hlv>T@9Q83BCgy9XD$<&BoF@Efo%-Y~Vu?U(K~ zZB@472>KrA9>g9!xH|6E=lxwtF|Pq^*xfz4`ZcEQv|U-Z_*`1*w-fNw@Au0l_$2 z(=?6sRNsVr-!jjd!TX(d8d=)Fz#!fA?6RTc`2um~H zP>2!xs{7RDBgWjC=SiySQziBUYLiW6HPt@T4n0i8ei)y4jk=kPLR=zAp}^lbygc;J zWZG{qZeLnOn~{9isJbvRDuH3q?-L1hCU%cG@HOq;y-sg*;S`gtqcM&l$2>dbd=%WI zr5h3-GsaLTwMBauWPFr$K2#+0r~hWu?|23`(`8OLconRja)WEA6Js%zir=^;{Un z>Nx~CXqK7I4$L&P{H`EaBV+lI2DFSM%D=yDf$T}l0&rHqXSmFguxu7MfBPv&(Z!Oq zY_5Anr0T=(Ju9X?<1d`Zn#2MZJ3`|5;f3kijOhJmvXXNh&mY%jw)0xwcb*@roT)CM z+IOa)U+lTbN@~boc5!`OW-`6u>v>=thohtM+&+HxAa~wpgD&X$W8d&nY6CP6)bYJ5e% z9O}*iL{;wvrT4VNp?fkIEyPuiAhPL>>HjkoLUNh-uj4^!rJBq#|oJ+B6FDoQ5 z9^+S+%b~fWqTeze*&&?GU$LWU-!kd><4x@Q{dK)xG<_VELaB!Qn<}-YBd`5xQtd4^ zxOl{86bnVlM_u-W*V6_*oxRFbjNUNcYnf~AsIMu~*k=T%k9o0LEXwJUrxA>t?5`FeohkX<2u&Z0E+2Uc=o3?h+BTwsvm7~MQ9kdolzTOuD z`H$;y-v*d)bn~lPy$$7w=5E2sCf{b19(6Oy*ha9m&HTF4&|5F%9K&n2YSiG7%m2V3 z_Q}69XHWkQn8^I{7;O9Tr`K~xw(_;=YTH)&opW61zx8Vz!{!sB zi_eKMNBKh1Q&JyVM)My0R+eO(dhld>{H@>b()H#&%lATaU6nto@rs~x0&_Wn zzV^e{tD(!6|Nh`seUAdQubTFh2WyLb%UnPCq=|ms8T#NiQb2a`ATJAB>gM~iw%^S;hlS_L-J7e=Ofna5KmHB;$aHoT`r%4;b?@(y_oWRJ7v34!i+==fZg!G< zCqh4*71^&Dq18jtKSljE?fv%tpm#(44z~PYO=v2Q4@4gRIz|4gcRenWUtDi|xFHI_ zr}+Tt^9P3o@V*b=QE{c+cICrEKN1TRHV%C35h#`tDA5!sH5Vu&7C0jxcm)dB1qXe9 z7xW}0NUbSIV=hR`f%pj|Sc5BAe>>=#U9eGDuxZ~1vy@;nm0$~+5Ob~&ORf-Gm zpuI|nb6ntumG{J$8({94q>4xVPaun zL49G-H^pHR+hJ-BVkh5}l03pwQo_@k!ZYT=v(Ce@G!eOC5#4x-;Z_l`fe}tt#36YR z`R5T;G?6u8k#)wA4IYtADUmHI)Rke>?P9E-9jMEV#X6fJdp)B1QlbW$qK4+8M$V%$ zjHB9U6eh%|yHv!cA<+v>(MxmDE9cQ`G%??|!{@okHyxO^Amp<&Vmo3nhv)ybSAU9q zJT?BfFc)*r|Kn=TM~3Pcbl1l-8VtTT24sQ(dtxA-5ixj}zD^A7w~rszF;MYXN|V_C z*pcc-@zW@BPXwb$1o3ob)ba3Kag}BmvjtvU5^vsj(6!+a=QWI zB~oD$j?hF01d|CucAidN90A`ERZNXjYfjLZPtf|C&=CfZS`(|Wk%ItO5gKOV33I~& zM$L()^NB20LIg@pO)@P>%)=t(`qjx}!4JckX>_9%Cy6{#ll^SC(PQy~^FnmG zF%8VHfbhGHI3h9=fLa$&?N2Gs;T4KYupTGMMnQEvQ&Un?)0$J)Xe3GX0m$(KHh&-) z2NXJ{rD1`5&$MF4L{j}EW)@hvczSI!6n`x?;1rst6YfxzSmX|kM5oh^OHvtR6uge{ z#X^(ONlxKOg-BRuN_4{*w0I2KIREj{I5-dBhha10xDmbpEc*t7a06g3N*J-sNlt>m z&b+)MCgu!97AuY*9D|;T!!iNL$8m7dF)#it`Ek$6xcw}dV!>Y6wC&Vv+O+egv~uyR zJ6>t)+{z7O0>l7$HZq-V07yoPxTR|5p<#LMIS?E)1r03-hu(8app^v*UrQ7bFyX`H zrZ-}zObC+E&~!Ac&=YpwG_4p7bZON&f&-v189net3i;fYo+B}W~nTb2SSZ1E9GvXuk^ z1Uw)mKsdnT*$e=4S-=(Z5T;Z9`AxZ-0I>Uo%1{CTVZbE-zePlW8wR$Zhafnv=!78} zuoVt~`0@pu7!!}esD4cY&#FRvs-Q_|@a$iL6PV(b6Es4+(3XdR1Y3Hk3`x=h2s-)T zy1>J~l?$=)jzIb-tcYw}po$GvvI}=WR-ZaSe_p_!j0v{?isM}%T1^87I~DP?*6=OX z++KlATX=GByoltusP;xY=ZQhi#Uvs$qPS?MtU5w5dbcq&H<>H`OXgCxLO&2J{mhmM;Hm7-Kg2te6>aep?U~(r9i%P{GgML?qrC?yU z_3-bhtu{Ptg%B`_dm~&Hl3N9hm@f-cg=D+K($UZ&0od$(b0G#==nl2$&&tPEVv#V| z%`v!GhrnU}5f2#=ey8a!OM6$ z+1khS#rJgcgw%?q_G-(ab(G&CemlV^U0_m9Y11W0I;Q2Br^d)K!2j()Q?=r#R{ml@~b8*H}IQudq^w1^po zM~vup{t7by+`LiVtUN@bVs;*m-M&~*PZAdLJE(40qjm}UopDJDxi7a9OmI^?G zZrgRLZFxR4SZpp#2Uh7qj6y@jh;h9>Lwy-Tt6Vq@$uCq^xKd~_IgbjZ!7wFd9w-VS zy@!LB*HOlTWiE@!{Oc@;6PSG@F0Cv3UL(Hs0~e`M(WP1VRZv~JIx1O6v|2lS9BiFF zaIe3scoJ$h(4gicDf0Hk%2skEE%&{6JXv2F-9^>Co8wrHY+%QSlq8&-tVNs z8~GO1bUxI%$(JCw7qM=wXkyy-Okspf5J(*xKjTX{O6|Z3cVQqde4vHFrau1e0T_}LALDNy$XW@xYuHg{WK;AJJ z5?cV2EZ@4F!!5OIRxjLGHIn&*RU)#_#G8EApgrXPz}rS4+xDlW`e?HFOmg(V ztg{#mLt&wXRk`WI&^!!dhBORyGQFP$T~CGaGax>+GNxR^yITuD0Nam8HX5ZEly`A_KN}(B#E)!#5&)Jt8kB65uwq=;hK%qopWJ4`MUY@h^tQT%-J0V zMXEG}?-=y(N)dT4IEVd$|OUu*#ak;Qm5n1ulx(e=y2 z%_*40V6VEigTL_GX~SUL5{lVxRoF{6k>j(X%Wm z8O9ad->uew74n z)!Lq1ucb$W9lc>^t=}sD?N;5}`#SzDn_G?%@4IL^u3uk*cjWt>tJ z*mJ4Fjrbt=J8~Z0K@?rXL-ce-ebNF*#OX6O%|9SQzU*I4mbCjJ+I@S-b#uA**M2#l z*?&T)-OHCsJAC_hgA5N+i0sL9CTkWQ%GSyIdN5VB+c2?AWJp)wh&&RJ$%*=y{PFX6 z5vDN+37i2LrF@frcwqy209FSU^_=WNqt9Z#8E>@g=}JXB&&8-$2Pzh3y-L*ZjOJSj zlr8@xPz%!VDW&cJ+NuX+A)A?wR<7{DC*x&YWzEBGFe_qkHVWpz_wA2q!Hr*%)eSKu zA)?-`s-6fjlj8+T1Hf)LsK&ovQ5^-2x0?d!e{SBt)t}v*eYmMv`PKkeZn^^}0X;g; z$F0c*L8*9Dn6W^B3^B*OE8(&4ivG!P4Fgmp+ZRwC=sA8Kc2re3g$795j$H>pgf;_F z;V7JJ3IyUKrNTwUV~~YAMPQsLN;Mt8*uOTVN=0G(o;*M;H>6Y>UnQqB_Dv~2aLbN3 zc&Vd$1EDfG1+amH5{(jScH{FO3B^Gr0;w&hj=F{TunG5;67*Pc01Ujnxp%i}O~Xy1 zee*Qr5YTcY$)$bUKgFpj`GJ`oIq-`^GkCR0B$(T<8!uIucWs~c^hT>IO4A=-$P|xR zt8hPcYWNbBu9YR*&cac;|9X48K)c9t`Qq*Ve7*Mja5zbz{x|J*76B&%g#3K@_q_MH3R7WlW*#`AX(Klv zNU^`oE0GBZFAVLw4LPKMvCi^xYIwUH#~?XE zEv(dzR<0xmD>|O8s>Kmq5r8HTjlm5(@Rz!*y6F+^xs@c;tW*pH2lrkN_z@S5N;q3&Io|tsHKSz713bi|8pRW=0C9-yuiN ziFo%+=gENQ4ow{L65p9Rl?}$TnB61CQOjvu-v*5sgDG=lEGwvTTsk?>V;S45Yx;6> zR7g$hcvpvEkB5oV%6^x>|2#tzP}V$V(NeF;6o)$CZ#-N@@TklgP&f@uCu(f7#@OoA>mQ z+T-~@l1dG|91GLmT{sr!C3)?}(l^{(IF;AVcsW-M6 z7<)5+l5^RfB%36dXDyGjfVc*`R8L?-MnHeq!o_nV$0>-I*EB#QHa;t)f3p%_#4lhO zMoWZd|8qxwu3kHF-1mMnp)Pv;W=h}4_w9_?`}Ur9y6muFPhaP_Gdy^sps}#mpX>L& zPso?MzcD6_>x{)4`FZ|Ge{b3H{aLb~*KS$kKd=4TSwHW}%dyPMpj;;1EB}5n#NVw+ zqYu7ki=!hx$Lq--{4VwyZ~U%)%|1h&Ke>|J`{x-39I~PCNIj67gzg{yV@HhVNQjb7 z0EMt+6y@9}Vx>F&^cyH5X~<0liJndn8@m-$(?gE3aO^G129(%y0C*ya*+DvtvmXU9esHj3G1@4mFF^UsatDy@Wh=TW-ZvK>t5> zB*npN@mEbRmprL9qkzxRQ~l`zd2%a*Eg;peq6pSc>0-ANjP}&9;nYw4A9kdqpEj9) z%Z@xXU2g33(-$}FMBD#rx`*gztdx&@n|rPGrcgigf80^8e%7yid+AxInD-C;?8^=N zC)c#2Ow6V3_vyI8VW$1z43s&hTT6E~7DRYJ5wiRp*bc3EJC~XIhJdwW8#e^8- zvvD}8YMSbq3A_wT^!)!H{cbSZ22AWYk`&l~)5PF{t1%kz{>RydYfRB;p)B z6VcU3_fq0nfwRSdmr+}bI8XcPg@sj#!KVuL&Fys8VGYU}kc3ESi*k&x1Imx~<6UKNe6VIi0AGsP6PO zcJSK0jGXmc4aDN$pS!5&oLr)bK`9>IwaWKz^Cw^6tfW2=1k(i8Dr;_2miXqI2KVjs zMx8RnYZgB!^Ueg3UV@yP{_TbE5P326swjB^fRLLrE&!{bW<&hj>OC|lBSEZ#d4LiACr6#I`AYsrL|;lVbP z&?4dcS9w3R+07$n@d@gRSu0eNBr{KCAX5v zaI1%s?@~d>V;ZcVAU8%H+dSf#05-^9V0M^&UqwMquJ8VQGf@}qIkb|KMZh3ej6Mey z`G&SaLCams4UME9&L;!R@V;~Yk>hkfbU7Mshcv^P!Bv2tXe&=v)6{?a$TELeI>C-z zm=$+UZ5MpF!&)LRfr(ILj)q67D2^U4ztgb$@&w)(%w>8blTgmKu}v=+)@e1eHd@p< z(f>sMS>+XYj^evGLRch{A*z#9*t;H2Lj)616sw6$?J)rb18LP%a(dDAO&d^ z3SY^gmovVrhYP|7k_&VM%=?iuZ0K2Q=~tcvw=KnJQ|2sd;HPnh7SQxfC~0<`V17N2 z@+zD5_FY9+V2GJeRE|JL?DLj-r=e$imTWRzdFsSo;A9>tDIzXiRW_M9Xtz~{H|I$R zGVp++mNTeBdr>SHNuUoA96|vBX07@d;aPRU8zkzsxhy>+M23%$E;#>8Nr@!H$Q`H$ zN~!`f#qEQwUHabbbMg@01YB&VsKNQ8&OTA=>f6L+`{Oap!_&HP8bCmS;r>upHKIXx z8-#~pJI?L8c1J>dsH|BOKU1q`)uCD9zpqmI`cpEkvOH8H{)+zKYUYz!hnFrajKAGjquj1l_ z+Hhr^Mci(nn76UAR$tveYtnx$Ajl~q$e=Hlmom7imxqD;(RweE4HP96d@GaO3EGnn!#fA{JIY#81Pf<$g5Y!o3CiUZ z=s#7>Rc4ZP#T`%Ohd|#3G{bsu8F*N z?gi+>PViX`4S7{j@JfaF4$JF4QaICgBZMzq&Sv>c%*aw= zB|=V}mx?QhKkL>4_|}JP(@aH$5=9s^-~?aP1mgrsh4_TJv;<5*({jYvgcXH_6_Aq{ zg)AM4?>tvghzNUV)@LnOSvZA6lSNsB4OdwC*lTUbYc&rIHQQ4d1yf}J zgT;)vbO?Ui1m)}5W>ed20oj3h)kXUaIM7$7N{diD37RnsI=op-)mbuR2{N-=y3ho% zT(gzMSuoJse!vs<=Oq~=_;nc@dC<$iey1M*`K5&zP z@B~izyf?h5`|X4L{aK?Wmr{6MaqQPjNDM+KUp8l1&ugk z&r@RsFpyp)gbq}I0J&2J!wl`6-iNHogCIZ6aNya%46@s-}SDTzrw z2nJK+&0u6}y@x54xBXlTmH`9d#0<3)fQBs$aK;O1-jX#Qz)tgGP*5}Bc{{4zuV(ws zP?la?eiu+Eh&BjKOn8@3*vNz6gM1@^GK;zsO<+q{6M;qxeEV5@aKVGHQvzmPS+idM z)tR2u){mK26v@MMDs>igI)FR@Iu>y%7@IYiXh=!`X_9j_~!Nd_1N zPT@yU@G-m|VygDe{Z$B}c-OylHbqN?itH;>(F8zi!7zoVTMGfuggM?X%e5c>WKC01 zkf>_`=tx6@!RXB4BY?&BytoW%b{4*H%mmys35=x(jnM72ehbTOgVqd9^Hfn;;aG;l zci?-^W8Fu1+EB(+|FNci?&yo5;X z<}bVLY#zzKD5lnga%WCR!8EuB$1QCJcy3KVi;UyPvq&)2ONa>hjkf#_%^2&Q#O>N< znI2Aq8UXU1ehZ+OZqxa@1_-=q6tIp4X)f>bdK%tnguLYyFpltm^l-BOoHlW27T@?b zWZ16Z{Z0cpmvdVHXci{wwhIZ=NQG1gjwN$Qo(S3`G?pwr82YdT7AG&^BWvlE@2%cp zoH)2vIJlZ|V!W_~fIJ9x4Gi_35K@?PIk&thCK6kq(hD;ZIN57xO1WZ{h-6|SOkRF z@i(>Y<~5m3z=YN2V!DA-F4VgomgGzDzPkYRI=i0)umm97kir>q!*~N!AhJ8=ga}6i zzO(a%NZ8hl>f&2&>80ucz;sbScL^B)Fu>eAjc8dZWSm&+*f7}tgShD=dEiDb2!XA3 zjVSTBHb{SI_SIerOK43G^Isp%aFs*%31pqcbR4_4dpAHvAN6v+?|XR~(#BH= zm2OhzO$f}@ka2#<#0ZHHRRDYFQpGRp%vFFLXFcizG9wYcP636Yc3>Axz@QsBKyRTf zI}EuT+(cLOf9AX6Kn=$|h2*r0R8X77e|)?EgS$8g{YH!bPQRGG_@n|T1(pyRUVDQY z(0n~kxdddlOo#0a@c_z600bZqbTwoBmJ)QHzxbbp;3o0u{8u^a+%xfoT{d6eu85r#@g# zSt4W+jV3e$H*)Og@gvBPB1e)eS&~p6leRj7VE|^}8wPI_q`8D3!Kh6L28uG(rog37 z2?Q3fq_HNTQKn{c9Kh+*##9s)Ostp^BN{?!X7*_V$`c_?rV0p5@FtZ4r%(kB$OP4? z&4Hy*EmDBsQW~~T6#(@#R6!qzeFCpd%W2eKlZqGrD^8HIzGMp=gIS%E#ecS#HE1IncWv29GhsaVw_AvC2l zZmhXe0UAuEfNMJS(sd2eZ40+W-1{)0}8ET3#z!8se6HCP`%%)|x1%K)MJhnUGcICZv{fiJu+1N}B+Q z+JeR ziC@=(xFx)6qLIoamYqgg0`{Cj3K+aDm6lRQrGZIAnvw>{CZk;D(I=ctY#J%3T*4ep zsF*^qtOuXQE*fuO0tx~4s=PAG18v#=l2K?_;%RFSf^kVEi?HeDc%PgiO39pXvQte3 z2r$aVO;Lsh8flF3^JSWnY%ao_bC*7ruCPAY7)~F@4VV&Qg#|_ni7!$ zef|lEpulOZX4j^af-t%zpPX`YaVd~MDyRSltgys_6}DdPEszOmQqM^>>UsMvP?m|m z*Plgjg8>LA2Me?+CMyAAit-!r5h0iE=A|jDveHVE>NHV5p#o@riMA<~{(e45dk<8> zGtj&LKJ++Td1;F=+P@_J`Rl*`KmYyv|33hc)FhCUzz}{w0~ipfKrn#88dmy9Ypk^; ztzhC5r@+J;{<4S)l43@HsNg9&QIj_nMns)BMJ8H<2BnDV6A>JMJucBgO;FEOouF28 ztOFQNnBo*1V+>BrhrX8W%@(AP;pO-Mpwob&Q>QQmD43IgMa=3HqZlFZNYTS!c|vuT z*u*JDH-J)r@f4t_i$Kr-3JW$76YfbPyEu}W1uW=kn1~>HzyJzD4G}#PT$lwhIFJtx z><0-TWC*dipcAGLI%~8dDS*?5VLh=Ex9OwaIF$D9W#0C^VN zggxk}fCXqmhGtx5ToB+XJ~{;z7QDnL-XJLgd?J`_0MGzdg~|x(@tO9B8r}5rCQ?|U zf~N2U9=~{sXvR~NY-9@UFmtzJu1tNls34(YVwr&u!kMRlCLRCv7x=L9o&=aA5<4** zr_j@$qj+HqX9%1hwDX~*n3yff`9xuAvU>v&fP=unryA|gy|0*?a`5JN?AAb}9zl$%IJ7m3zA@JR?bhkPV7XZh11s!t#l zxI+UNpw_jr^#a%by3mf`8o;^IwXSx(D_-*&*RoQ81f2Y<1+TD!7-Uj{9_fQEegew` z*a86)O8@~1P=Ez6c47h$>jDrkqRgT}0M$}gX9pvIfhLM0gcxma1c2J}P-?7i{Rm=> zCQS_WC$PP}qE8mORVz!J$19CTl*wBh? zwgdFY0AT4FRFsl?xBaaxjJ4m(y0^ivWsiJSD@|98NL>X$0|AV6S~MVF!m@Fhb2mcV z`F3Q%69&xxvIKBq>0-D;1eoQE)8ZD{boRuuVQ`F%%VAjNn5trRFs494+{B#r#H))e za62^Kfh=IQ$uiAxrMVp%Gk72i9zY*fE23p(cq1FGvT1DrAS-J*vTaCNj(aR3822{C zKL+x7wnP9Ui^#)KhA@5KeA>GqwnOnrvT!LpW(pH|wUE7Vg5mtTvN|Nf0ywW~&+CS3 zEq6zi)+?qnt?5m3TGRjaNOv6_;Qzph*#Uh$z5z34{w(YG%p;2`_F>88f+ zo1Ok_obR0Kz6)?iPAhd(TV3Ew-a6A8tY)w~yX$0^x3Q=FaJ3)3?QVa2wv%otvu}j% zXP5cid%pC%znAZRN6+5>F8GnyeehB*yy1avY#s$2?v8&vM@=GW}pU2+{LNihdf^eDqaYV6$GwY365YvpR}%8VI2D59|GbX3gQqFq9KyuAqHY1_TeH9Vk7q88ZKfaO5!6b z;UqTVB`V?K#T5>Aq9^9nyy5R^eGuA(ZoA}hY4E5@QNz#=WiVlCdH zE#@LF?xHUCA}{`;F9stp4x=y@<17{#CUBR%FLKJH^L z@>Ud9q7}{{lYAmU7UchUpm~6TLUIBSG^9g5Bt%A}L^h;0PNYR%Bt~YWMs6fWcBDss zBuIv&Lsq0nmZV9ZBub{FN_ONduB1!8q)4_TOwJ@t)}&3|rf8OBXpW|7BBfxa zCSVfgKq97VzUJx`9%FjtY1XDmmZojyW<%npZbl?;_9k#TW^fKCQT`@z9w%BNr*h(? zYBncpdK+v;=V20{Vk*XL3g>bjr*URyWNs&LdM9^=Cq#m$c$Oy+kf(WyCwiu5b~dMK zJ||;Ir+i*z2g>F`(k6S_=6dF*TJGm*`X_$|Cx8a%cM_<9UgUrtsBOAuYQkp?&L@Q0 zV0D_rb*^NBDrj+HsApd2hH5B=a;S%PXoxB(h>j>`s%9E2K!ajngtn+BPH0I~s7jWo ziP|KM)~IEYD30>yjqWI4_Nb5MC6ERwU8ZIlq(T~8)L;t#By_r{lS-(4cBMoL0~A~V z7I=Y2vLzL0ffisXL~9Bo%al7KG_U z3WJ@_sY7mQ7w~CFYAKhpsY9;mn4+ngmg$$?DWPg)oWiM`0xA&HDWm4;o+hfI25M1a zffY3BSq`a0QURV4=~^bGo_Z>&!ey#<2IAgN&5LIA9e z&^;-z3LuPb|6=Z>=J|q@Q!LqufvqG!1 zIwTexYZY7p7l`SkN`bXPLAGMSwKggjR6!NY0lN18sk&xrL(YM`?rRi`s=Gd`xk}`} z20_3!${BEvG(b)3PA%@0lO}2L~g;g)@c+-L7M*mY!q;T7PRf(nrRdS0Th(%NouYYaIWV9 zK^IuA7Ic9WTtS&aLFiHe>q2DgqHd#7!MJuRL_$Fo2m##!ffZbVof<0aTB)ewF4e}a zt7^d%1TE`s=@eW6)iNtYUN7ywF6fFb>E`L_rtV65Z|A0|^v-VW-fr&h?nCzO<J znkn%bZ$u{V@>Xi|V!`ujtwTyL_G&E@Ou?OUK@jO8fP4=)u3WL#_=2uexX|w{ZWIF z@~<##0T!I=mNqIJH>4bQX%=X$7Fg+|UV-r9aTKR(0avlfN`Vgp0Tv{%5Qr@l^J%?W zLEzr;-+Cz&<0%(3z`1TgBzHk4+icfDK@=x4?Aq}Y;PEKmEW!5i!~XH82J#?#K_L(C zEYI;1EHa)p@|98nBx9*0^XbV}vZtP`6+q-BTfr+gq$x)MD6?%Y2XZ%`azmyvA$M#S z94|*Qa25RNmPUd3^6wK=s;C?*GZzeU$$CLQC+w;Aq&l-RwZ5}2 z?=uzLvjkJ=6fE>Yr)dc1GZus`y7KQZ1HqX(@eI51%?bg}iYm~iX+}?KnVzZ^V8PT% zq~@~on_lrn3v$I~bVi@)4tKOin{Mk00~I)Hm-4fsc7aM$!9(7uo~ksV0<=oIX&105 z@P@4yz;i$|HI{b46+i+1`YjeTbwlrvNrXAARC+cjvH zC4=rNhEUrW?>6L7r$I4I0x^xpeZ(0*asvo~8dI(myzNAirKqB711mBwkL&h&!6Iw! z-%_)^3NN(=fp_OD0GsTnM)%LoFCJg+Lf`Qr8>|#)!9+)-4g0V%yK=XR^C{Ohm3C^K zz9|q;D|e%-E5j_GQa3Eq>3AD+^7<<;7x8to@pfA_CO_=ye)kke0o6WtLz1@?K*3^9 z0ebW4dRupUzqd~3vz5{}dxzfqwt#ocgyHoGE~VG!Srs_MYhmbMHf5u{Kw@ zn|iow3pogPu6GCj!9!~_?n=RtKeU);!R6xagd;gor|XfsvoZ4|1NX5P0Qq?jdFmGV zlsozGa`;1nu$fcA6dZXIBX8g;xoV5)CgU|uk7q<`0sb1S42yG$13?U{t9Pq#hHG!h z!nAcit9Q4zpKGnN)~Z$Sc%A2T*G70lx^lu+au6hJcYAjgM6!nyZ=iF*C0{udWVyR? zI_`EVPcwOHD;^_j z5MV0;O#6*7I~WT zxt}+DL{h;EZ@6VQGa6U($(pOEw(Wx3ujj_MmxAylqj46XD~_KliFfS_xA+uzfh)VO ziW97nTlg(wGN2cH$UbE9VywwRu_G7wlpeCoYp&Q*b9s+7Buj1+{<3>1M&5(r%6u@6?k1E61(@*Xf!^d8Pvd6)IS& z2+;zB$`vbAggqf>MHm$>SF$`2CIzA}VL-eHgK}kH6fIu5RLLT+%M~b3s7Mhh@Z-TP zL85RGXr+o3F9{bm+ye4RNhm0zNTKp%CKN4Hx=4|-(aM#j6R`lXdKGI{ty{TvC?0Jv3?zUcI&nhboc%}0eA4@$(J{O9({WC z>)E$={~msP`Sa=5x1ZjYEd~4eD?o6GfdB>kq`w0D0|h}&xJpO}AsT3~!3Tq=0t>R9 z$O^2kxS)_MD~!5o3xl%qV#B=%8VMnVuHuO=A+}f%wWGM&utME*vPv@Ou8Io(MJjgd zNG!6lvQbDZr1C-wA@%|yq6-o0>8GkLqVO&#ma~eXthAs=N8_T1jk>SAqS47Hpd(Sl zthUfgxr0*7Vnr3Z2%D1tG1O{JE3mNQ%e^i_l%pt0{U|w(q(GF`3tuHm ztc`MI^42G`FbO)3lr$CDtupL$LseO2b5|T?1yV6vOT~(=DztSCh#-fp2*)XqYpFsm zWbI6fErhgc-DKT;7v6Z~HFepmv}hoURV}SEs#+seEJU=d>i0qr8_<^j*tAlc;;BW0 zU~USXjQcaWh})eP|j};U}zA6(2 zW*nh7_M#hw37J!21Z60S3AeRs%P6i;7l@$?UMi?#k>)VOIxl2cqaUsM=_semqFM-n zK}*d_S8L`tUXMMhBIKf{NG{-T8@7ruF8mzSPEUoFs$ijTZoul(7B;HjnQrv3R<9ij zLW|9eu40Z0OH+ufdzt2Fq+#nsDA<#qyUOXG-1OqdlV2os3X+7d+AI?rU|OJp(SBFE z+Oe~R5CzN=@4nuB{~h??g&&^y;^oWFK>q*~FhBy6FAzac6x@pc!3ZI=e(qCeR0%r7 zL9C+XtDtCDbFx^(QbiuuRXnSSO6|GNAhE*f@;^5^^kOD=vnr*kT67aD0tp(>baO49 zv`a|F`A`4{f;V@03@h&I-U3|~KC6sxBPFTR`QG#|05%OMc4{B@^mijB^=f{x(Utu; zBEKQ=i7!{E)5$)FC5GrKWR-#y2erhqtu^3L{dyM!XHt~9XkjA-6cXvi;*o203s5eE zqOWH4L=2imV025Y@WGP^=riDN8W$%Jfz`_<}bHTBkY)Nz@+e)keg_JPm zNL*AIV4vk1#BbzOmq#{HXj&YnzOcomV$&L-_BUTV+8!M2EANnjc7b_{uDFXn|lv*e`>iuJLtYm{btbhLB@OH^qz#%iQO1a27V% zg=jBaGp7}l(=tCj#Zgx|8Cp(L1(kFmf8N}R?MTYI@|e_kDOKr8S=v&UzVxK}G0=aQ z*SzOJFF^~s!h@`Ly`_n1D;ug!!HncD?*%ZBSXkBn6&l7t7BS|71k;L8i#3Inh;e^A zlA(pTkeHC=g>C+lR%Ga+GLc~ffmrcK!=M1CTk6POAgh%{y0o;kelw^yTU50oRZyg= zajAfEs*0d0JE^wsW;nc-Za!xfLHQ2|W&v5qwDmUG0gIwP3xZjtFdQpf7MyGaSFB*w zDY^Ddl|Ni$n24yC(iH1fLfVxXTNuUCvQT~~Oygxxrb|xtv9-AIA+TVj#6#(bg;u#x zkk*C2jbbHq$eDsoYJ!E-i4?opO`BGdWRsW>lCK2g8i=F@qCu^TYf7|NKVzr`ae842 zSTGk{wOe2NdL@**(a8OtKwCv(%S^^apB0|}>)W;JNEj-K+Ud0DDy@lv^5(omzl zMG_W@X0`iXg`~E_o$gKwQ#ZdE&T*EroRK%vuhsHlJo$%BABju>CKoJYVPZ;7H^%R5v zg+&i+Zqc+P`rInQ$cD9GLc7+mxb?vQtq|lSSWz^NirnbU7KJd3+Y_uP&6gmU5Yu8! zWw5m>BSnkRN|)oys7YDsL9113R^T?PT`fjCWxCp%2kTfVvu%?x6weM)sCQy*(mJA3RB3!N<`js`{vh#?CKV? zk4$TeD6M66gE+ek-Z;d>(JU7yq5clOCyLfqpa|JQjn2ugltkrlHRlK$NupyWx%b0D zfOclGW@PFah3$B2GHu7NVf`6AHQu=1PpTsh=;U?qy2~!AU`XwifGyz9aknS?cIZVf`1_ zdrBf*xF9c<#5ksl{07B1bYe|R!usZ}F47M*R*SW?qW!GTRq_G~wyz5=i}t>6ODY01 z#;^P+%1_Xb3&1GT79%nLROS7EApXRu3g|B|q~QJpO8@rHGr;ZYa&V()3~?x901FUl zGDG&1rcw5%0o_l&yub@WL%u@eo}y1W6b=XR1XM&N1sh;2HbdetkH%^X42Q1Y%mncw zkN^wfw?GM1K%ygJge+!43m>BkrO3qG=wjptCzK)$?Zztd0+k5Dfqae-KM8_fFAEAU zMV6)u5)oiRsO5eOkzNicQi3fSQP6}WG>n2WmLsGJ5fow7^KX5C~&Y4S}U51gbB(z!kUP=#&DWt}ve1WJ@j)Cn9HUYLWaj zV+>R#=TyV#0uwF2;%xu#pfW%$)w3&ERhQ^@t#glhCXiw1uFh( z@fL9f1y#@&XRsARL(m+HLNbS`((xf$h&Z$Wpe%wjB%+@zA}^eg?IK0cw15Cb0tR8j zjtG!WE~Klh0ErZ(TTU?*|0m3ZF;&t}B|cHR(yVrH$M=elC0o)ZUs9#&tU!BJ^=LSdU2((W9^c@^C~@hSDh- zjxWGUDX;`JkgX_c$cdKdDmXGLzzm9N1(UReEfNi^MCC$;g`&vp(VW5r$?unLZo9DJ z2?MDvwUP?|j51w7OLJuBz@joQal);HWM zGmwKU(y$8HLP&z*EjthfO=2;QLo#6~)xb!(ph*~U$5#7KT= zD8$Gp<qp0+!VF05sFHctlWkUR7YhuGn zSTPL$EA)~=2rqs~A+l~F`~}3C(r6B}=jyE#|88C6Q-&JCBc_1-CPWGV$T)y0T^^J% zr}9^}ur9)6bcTeM1`S53{o)y^Oq_^Mu_tY@^VQ`=OY^6M|I|xkSME! z=1cv8#$InCg;7jP)F(p@CAH)Cz++Eg(og>sPy@9)2!Rl~Lnix!5K4g*7L`%az$W)B zr*aZP1no|Lk}ov^9wQw9-twhB2kA;^5BJRqH9Ta>KnOuQ65vr404M!yr`E#CD)7vHLo0y=JX01F>n*!9H`iR^ zT|KuD4Nc@aA`7n0PUfwXK-Y9*S9UG6WoOrRZ+GNI1Y`P>IshY%zGY(R4tL=NcI9P9 zr$cm!ZQ{byGhcRikp*yXhfsG1ajVyQuh*pxHF6(ya<#%k{Lt2B6XX(6BQa4JpEpNC zE)luOe4Q74`Hn9M5evAGAfMzaWOHLs_kH&_Jd2lq|CbQ`7hZT5d5^=x%!OLTljQ)| zk92olj(0l9mmm}IeDhOI8CW`^_d0M#amj;lu@{6xScKa{d$)J_B9$xuN>_Z(%uQkR z@-Vo*1o)F$I5A!rhO1w6x-H^F*t_@ScR(?j}18#A-RaTxDP(~ zgU1+?Gud!U*o>10jWK4C0eOEzS(MS2l>gX|OIek*XO&wSULDw#V;QL6Se9!U2q;-4 zsaKPCnU@cjlRFuwr00iinSWE6nDf(^p*We3*^QT(nYGxNpIMpzVOg428JE4-gL_$< zw;3jX8JKSpg*7Ict2yMxnViqeoMAYf&-s7XnVpN7n%^0f<5`~R7?%^EgU92NxtX8) z*?7Fzo4;9d!#R!X*>v66p!JxRMH!(J+IAb-p=TGOBU*MRnxZ}To>$VJH=3hYN^t}F zn?G4)FIqoOnWTU2m@WFGOPZcnnt@f?rI9(N-8iFlxub6yr-cWkfmx*G#iVE2n_wEK zeT|rfdZ^R)sD;?5lUn4KnyJsMroT9+r<$tiBR>cLtFv0Gx0t@HXG_ByZs5n!$1TCVeYuK8N6{raxq z+OYLHt`!@w-I}ibTCmX?u?3s5A3LxuJF@2*vIG0DH=D9GyRkXDvKRZV3!Ajry0QHl zvkSnk8T+$c`?5*)yd^xrD_p(_+`yxo!U>$hA$-CAdwav>+r%ULu`yi1GaSG@e8eaG z#g`ktVf?=VJH*LbvoV~+!#l-iyu*JS!8yFhR~*S1yT4WY$RnJy(b}|$Jjw5yvZFei zs~XF*oIQ5BleJo)zZ}fNT+GLu%*))&&m7IuT+P><&D-3~-yF{4T+Zj5&giZ{~XW*UC^yupS9f358Z>ySkM=p(Hq^-A05&oUD79=(ktE4FCEh}UDG$6 z(>vYM_ngrA6wyZ=(YgH7PaV}$UDa2e)mz=wUmezCUDjuv)@z;9L;XAUnbdckpH1D? ze;wF^UD$`6*o)oRj~&^QUD=mi&97Obc^%sSHyWT7o!P71+OHkkvt8S_o!h(J+rPcl zaeZ*3o!tHTqp2O-(_P)yo!#5r-QOMF<6Yh_UEB?|-0!`geSO~do!|T2-~S!p176?< z9@XnTJn$XiwOQW@p5Ytb;U6C2BVOVs9^MUJ*ApJ&t9Rikp5r^-<3AqcLtf-Z{?47< zrZXPpM|k5&p5le(0Ot>7O3zqh9Kz9+wrs=#L%%lwRutb=s%i>%SiC!(QyizTyduz(;g(w6bUy|wn=brET-tYe&@B_cux!4x${_gW0@riHm1)uR7 z-|-(G^4-4f&pz=hU-%Y3@-tuaH=px6|Kleg>n&gO=?vXH-}Fx(^;2K<`yKR;e)M18 z%`kuUXP@?K-}Y}m)mz`@VW0O~O7?Ld_=8{ghoAWC{GRQ;_mh8ky1w|E-}#>(`lCP1 zb$|Di-}-@v?WJG)x1amFU;3&4=C5D;edqVR-~7)X{nMZ9i=Ohw-~H>O{MBFn=b!%T z|K-^~^xt3q<0Jk7LV>`61PdBGh%lkTg$x@ydC;`JAMo~vgFB>D_g#dIWtGRob~eEdpNY{(WFb8KJ7HI=GClQ zyM7Hjw(QxoYumnEmNQ<@pZlWz4LrE;;iw4_BB~m<^5x8%JAV#6y7cMPW9z=lyEg#h z+`D`K4xZ`p1j(zLKaW1W`t|JFyMG_~`p)dV!`r`)Kfmbm@caA!4`6@-4oF~uvdO0t zeV^&aV1o`m_!NHzPDo+@g%)0jVTKxNh+tj`Xa^L8B92JneG+bnVu~uR$YP5wzPMJ0 zI4Q_ii8kJdqiH9?$YYN_{s?4{LT)G{PauYvW0FcPxz&zCJ_%)%Qcg)_mGKqX(@)wl z$z_*bGUcR|Vvb2>nP#4erbI>d@s*bKeFQIf({Dd zcwzR5XrhWP%4nmS{dweegicCneup}WX{MTP%4w%|VHs(qqK?|#rJkOOYO1QP$|
        adFQ5& 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%0DEmoa8sXOhA5P!C|Yns60cK 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 z zrepdkY}ln+TBdIrry*aQCTUezRZc{^S3p=k}gc+71vNdC}k)pCK z`!gTyul~Nz-fELxje*U zA;KrT!Vw+C1A)XB-NQjV(UTzrNSw&8oVJmn&{;eftfSLq`_OYcy%qh&8~wr|9n)iB z(odYiFP+1kT+>y7)2;j$KD|0VfW$*!1SmbdW&FftyVj2z8FZb*t$f!1g+0`7{mPBu z17LjwK0pMjThXW8x0(ISRkF?9+^}Ir&qd?gAmkzuxf0mRFq+?l}` zj3Lh@d%x%0ARg1 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≫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

        hgdY8yv#n`EFckiY`Sl}kqD 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 literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/rethrow-original-list-exception.png b/content/static/2024.11/images/rethrow-original-list-exception.png new file mode 100644 index 0000000000000000000000000000000000000000..01c394ed8a4a3d8cde202d32bab2daac20694463 GIT binary patch literal 22695 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 z

        jw^dtS58}vKqvx&F&EBEV5*8ssK7Iq{=fAyM$ns!xMM{Y9SEbvyL2b#w29y2Ly zr8v<%+k1;6z2X=&iTwp}%}6IsNORVymzU9~1`Zj?l8@9%_2Y{}*nN(m+E4Zkx*}fFq`HeG9b@+rZu}49{Czg>VV~fwe zJO~%-sW=C&e!@2QHkiT}wNuko+TC%Ap$_KRTKh@jc0BHCF4J#0h5)!l(WZpQOW+Q2+_n)$oo=*qN7& znoA$c*BZ`Pi`dRiu6rl=QNdrADZ(L~ANGun)$Kr59lLMt%p6zfpPX5< zyUBk+O;_J*G~&!ZY=%HqaCF!X{l(=l^GbH12IHP3n|_=n5)|Rm^fw4AK>vk|)SS zy;tbpwHrD2(4oFZ7`u*c2rpbCwVJ x?yyirSi`?~*Nmd!Hy5{iG~z7c*v{eco*ZN>N$B-1Yq;<+BYo2w71td?{|k~l`NseN literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/run-flow-contract-change.gif b/content/static/2024.11/images/run-flow-contract-change.gif new file mode 100644 index 0000000000000000000000000000000000000000..51f7ec5869658ca4b376b5ddeaccd85c5274442b GIT binary patch literal 269466 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

        +3ZLDOk#swan69=Cex{&;rp}%(ZbqD6=vA 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 literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/editable/exception-handling-blocks.png b/content/static/2024.11/images/editable/exception-handling-blocks.png new file mode 100644 index 0000000000000000000000000000000000000000..05c399218c1f8c8e2b46abc591d1603c032b821a GIT binary patch literal 49209 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

      VZ}a_n_gMV5{7QZ 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ß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 ` zp@NItx>gvEua3QOL#qC4qAVLQU*>N6vgAH+~ijU|tMj zVdJ$K&HeK|x2dHzUUf zR!yf@+eLOlE-&$SelMF%)Vk)`&9g4RKB)qH6-+S1_E)B2`AUTl;fdJYh||{5iSHGt zJY&_bWQ1qymoo}jOw(3w-*4$)5fndkDMzA4PE2VfVWBoy2M`to96o3GuaSHdnAh(J z65e;b)n&2J-_XM-D_;tWava)Evh-|*Ze_UfFMzn=*)N!Mg-f#U@*j?e{%_llX z%N>B$ymrX4G3|NezCjn~pE(md@9am1Vx0EcmJ*f9C>yJAT}_*S@0RnykJKvk0XKUI z;65DOWczuw=x}g-@7C{0KJ#psz8Yr#2U8Lt34OoizjM7`pn+cSL9*WK{a*6l5cR%u z!`49c-6shh>ZmrD#?)|UyFN9AeEg#d=z||^!Ke|t9S~q5{qLDmKgJ5T@%#SPzC<9u z?A|S)f=%>Zm&~qBTRr%0F~IgYFE>U(z8~o?SAThS<|FVOHk&pD)1Ub$uyy6LMc5pM z{39>s%vFGrY;Ctcv488n6U<{mz%4wXF(mzK@%>7g`*v)j(i63hRD;S_tsO4ZU+X&l zWhg(o!4q9n_omnHB=^>LiZ7DD!sfZm5@-GgL)>>4m^!0^kC$1!-X8uSOF(tpZRK-b zy%oVl`hJRkJx1!g($u(a&*!+VZ!qXd^wvKvhupdcjB?Kt6kyKYR|Becx#I!-9|`{+ z0(@p|uvQ;XBAdW);oC&HYT@+LvD$-On$V z&jQO!mrQkf*QjNb2$R@;nKSamfjP6>Fq&h zT&T?0rIl0efAE=i7r{J6Yep3vKJggb+4g4Rlgxkck$qzt02JH{Qk;hXUG<+z>i=I= zQqzZTTW<*~e`O?E+2;6?|HPIZPm}Ps3$7Y&%!N6b%m)^CIW|viF>-5va!A2(eQ#$P z+1Md`SNN6HNXyKpLbb1#q6Q>Z&+Ip3rl)_IWw4~-IlDn)l>T9uCD5$P z**s$ZW^Y}v`%X-%H*HCfWwyw9M4E>c-m8f;NbiAm=yTs ztOE6&V>LvP+w`#chV!`Q!lzE#zJ4**)pL9|!@=CXcN#$RQ(H%Q-P{$w?G!A!KKe1_ zmm@t5yh{J+%;lKJkjt;Y@jSY7A1wSPJuF=6+vBDdc=hwy{nFt1S$f!h2zb2q%T?fW z(@dG?{^j+80ch!Z`+Y*;MT56T6mdphkK6j^aYlE+K|M18j>F)2{7~s5RAs#%I6xP+ zuSZQW^~}#_KY(}kfahJ{G2oXgy-}4`Ngx8;u{8vkgIl5AW^d~``F<=obs#uKesCNa z6|dsFs|gO(Z;uX*U(PE8;>jAXn>=B@h!-o&* zoN&O_e3cYcYTrq#4V+N~Qc|pO-TTW5`|Wl260ExeVBKX?AAeqp;7S^(Pq*qP0f2xB z0DDt$oTmAH1Vr`6(s~V~bo4qnE;U;IvaEi4vF!nit^UPhNC5RQ`KJX)y%Icg-lYWy z{-2$)yHbx?>T%GMKbDpgkkC_bT(dV&_+?rB_F@|Yi)}ktY*XM->E{Iqt~`q~Do{rO zSM&ZQ>MpH2`(NLscv=(cZl&(tpZ7DKHaF(;*1Yj~YtsI+HK~&MXKR8D81bD+_-AYW zvo(Rb8u`zyW=bJyu=wRQKQ_07bPAmqj-riDkh3yx2L2R$+r#x%x_0|t%O*7Hq}d60#lfNz_GYhiMDh(pqbwgOj^)-__pFsr zQjo&kG&NRbaofQ@;rxMtqR6|$Hpgn|AGKODk2-D6)^m>LrW`#}_xA1sS2ta|dZzoV zB5+!d`PB+QLSu3&0}cz|A00H=#C-L^CzESWId?riqvDmrVixuKVvpFBIsGPAzV%Df z_I!EeeBzrQYXbIriwE?80GE60DGeF$5&QRH3z-S&nIJf+{B`JptH;Ksr0JRpeY;Knb79Qb1(IJIA2zAqQJNkf070G!b5~xFh6ycH)m3IJ%*&_a>Q@z z=u`bV%+?`$$^L3cu`_xszFaT%S!Ebys%V)tXUjS2=7Bjq0=ncWy_{&P5O87t60$`j1pJhS4 zZ?MXfB=2n6{XF%|0Xt>*J@hEoYSmeqz@U{CBhm4PzR;Q@CWGWrzN$|?2#9m9)69NJ zyE6gY6te(XN`RS_)p3o={^$TRFOA&4d$HEugUpFsF=;9}&gC+j1znv+1gNV@339p5 zzjYb=M1v1cQ1gRI=&=SLy%I1OBr9dJUfCdOgUe5}=!y!a7kXpyzahXY4KGm3@q+kl zEVqCiwuUdppdyH0z5j99QjbWZ6zp>8Ts)5c-?&i=WLav2qzCe_jGB5JY63CG$w z^Q_dAaBl&;`*kmUv*o9G2?rCwUb=nCr#>-srr3k)pU8$a)7-*2?4 z*U67T?V7q}T_J;wl+`5EaOgm_FJFM~>xe7FpYSH-zdIgwzlq#h?ZU=e$};bUYnw+{D}D+M|@={;O}j0%&Flv?W}+VwJ9 zxFPhHt*!Oz^IDBN1?cNPzEy}XDk_?{)M;Q$PfH6tD=yyLg1g?(I>w02WY=N!-cB13 z8rt#GufAMR;Gu-J_eiJdBz@ouib6b^n3xKXxv{%(%|Nf&# zM$K|Co4f{_w2tcw5re12#Hykfr9_jgRpX>U7i6=;;ROZVqNb|u;M>s+VM^C&Bl>PN=L#I4Sok?1G zTWK5@Sk53J?`d5hKE2dJavvtkmNYgt!f+xB3T(#cKxHh7FVinnYQs}1`zk!EbP^$d zN+%Nm6&k^(tsl^^R8h$*(43jUx4!m+tmPYR+CBev^PLJ#cH2_(XuCCY;%b!baXaiq zzF016YisJO$1@x-3!MEVbutGBQ6_3Zx)eKy0Ct!)_wn^cb!X*W1rNZ!#1(lv*^kn8 z)WlGADD_z_c*X}Kyr91I9Gn0Key|Z(a|qCV1Ynzr9B3wozzKC#@XT@;JPU@vDyVOr z11AXJt>fQZ`;Fqhx*hkF`y*0ro*k2L)56knut8$rF=eG6L;RpX$Aq-#c4+c6`B-sQ z6uy=qy0~^KK0AA6M)jc1E%ctLDyk)?>Tjx9{(JVq^=)L<7@$ud7W_~2scyhCtuI`F zZ%o8Lj=;};)HjOh1yD@?I0C=r2!Jjf(shS)ZuL$7&FlRikNT@;`EM%aACLOq;->%S zJnDZo($^5}*Kzwl7U_>HQd;6e$fLG4%xp3JQ%WDVp@I)>U}k1!xUBnPNqK2OQEt3> zM}XOknS1AqMu7wf>X|{9`8V2p3-gabhrBHYO(qEpQR&$l_2!7BWv>`A+S%gjl`D!` zT8@s6rD z(lpyXc#6A6#KvtZOw^=9Yz@BdbQLr_*8Hsd{!ZxWvw!?En)ZJLZTRmC^alavKTgI! zPR9SAVY~lpHZ2amW26@RPKD3dMevxcG17hMsSOQL#g4UlxKMu|eu1wpRu{4wUGY zu_-4jw9BozK3O=jd~O@rG&!@eFO0DQC7Q*seII~ ztZZsp4-bo}b+J|nHjkLZxyxjG4Do;K*x@csDwDHhmv)FD9PEJl0 zHvLQleCR!WvskW_H0#(6c^B=e+-5EONK#hdf!uWiH+Yr|+O)H~n;f*72*02(RY)A$ zzf`5sd=iTm;bWt}hET zCOW8Kx$Z%4_uG|Os+o=b>t@#NKBRm;QNh?p%|ieXRNe8Rx(Igl*QM9=>IBl#*&u{B z4jyyC5Uf6IU2SbHGEK!P@Q%!Z=FPgye|H}A1s`fKYCz^F+^Ip$#BFf?p+Th|k5<5z zau>U`#n({cgr!K>gmj%VNTwAW{@YW1YIfK)zKt4Am@hC#gW>&>LZ=6&=d2g=@Z zPI}n&0Zm@&G7^zw664h2ZyHN>Pe*S&f_8K#Raf~og-oo}x>03y^3ThvwWW%)H#1k= z!z{l6-^6H(ROX`u#+>1f0HGJimH#F5!Oa^|&}Ez^xsuF?e@iptA9%V)4DQ;{4mJc2 zzNM}asm$$}e4|sVgPOVx$^P@n5C8?dPiXIG!(cntFJF!m7w7W$#O1u%^EL>B00ZPZ z!p0x53C8vkwC{vy45ptFd3-HlLx{_D=%rayE6Zd?2|U`Z2ZnEuNP7N15absg%U{DF z&e+;18&s_J7v8nXsTm>4Qyg@sibl(cAHA2buP!pGI9cD3qi#jc|BbDvJ0K$rKSj_Y zRb4^V>3YK0}&!TX&WjM_J3U!1@;CiFKBl!tLUrMBuVoY5Ymu`c1~~dnU;rX0~HL z2FVcfI}P|~Wo8AlKRsf{&N4qz*3#0dkM3qtTVMA@jYP(+n6aRWD=iVU38C2%B(QsjYd;(sk)?kLiFJjk3vcjrORG5KS+a>*?+FJgy?5c_XhP z{(s}Qseu1NN8iEi?QKk*E$!{hoDQSaxlQXlcbj7MQzr!{sZyxz`e9_d&p=%B3m4$O zL`(z{aot2dG@e;PptnrV*1R0MW{h*2oQcoP&Arj7IYQMf?SH?*_lC@EX_y^}qm6-893&Ga@GqWMEL@{jYMTrL;`$`S;VZ-WEdDaUlRVvH7A&~|Ny4@PUWg`c+NLNXUdkUy=b`hcj`GbK%BkbbL(~yNew03>)CJO zX5=&pXP#jrPh0C`Z>io`oiRKUVpREPy_H-BmH^R^vS0|E%qUdC2jZj#gX7k2bGVJY z%wFiwRfb;;$;xe%7A#-wn<*chBoX;lddlM29}KYy+l)S6BWoFY=DQ5l=)?M$(cqF@ zLr=48t^x<$_V~Ok%L1uy)MKd+##-VX4eNKstPUsKQI-7kKpTo-=IIpcJe0*VYT!1W zh!;6rl<6w$PAD2JwdtE4MZT#y8dVSWmTc&qxuF_NBdr-VevYH_l?r)dMwv7c>X0qWhro}3nrp<=p;TCiNGGn2P%V{boC|nLd@$z50A=7#49y9I({!Se? zP5a45q(R9oT5oObZj`lVw7a^xIu6(oj5t;9(D#RYm}U=dx*(T&v`N**K!t7G37TtLEpqk=}tr&Yw}yy!e`ag|0OWJ!@W z#pACfN5W0~8eM63niV6T#xT+!S*%&*H|*=|?df6DwJEye<*RAvxqzRXlg%;DeA@(H z%g%4_qpDF>@y;1+=U0zp9nITH*KhB!ipZ&Q&Q{zQk6q_Y?z&;oAhrA^|rkf}GD zw>$C#tv!*GUqg?@`}-;T4P|ooakubozcByw2@g~eel?E!$*?djh${8Gj?66pX>Y!d zJ1~@-5ab6oSpM>W@7}qPF&^05`xv>o;yIZ)x+mnpfwd6{fBlo0^d$A}wCXtYb#9kO;Pp?5V1LO6D?)>MAAd$afuH@;tpplzMs?x%ms83)DU zPxwmDDcp-&8{)%c3es?U*kwQJvy9wpZyK5fUq~Z@Magu6*GRRTWl1~q;WUm|#i+&v zd3ZVEWFktLR`TOLW1ldYYA`ukGTY5sUR@*trz1H$in1TE(i*qx195!@AuqQ+uEtuD zTu)h!B(rA^a7Cxy^}9|ijnc%BTO%|uRpNjp#`d-<*o-*->!PQ`f1vX?u>${!7inqG!miOL%XgXkE zGeZ>g+^6#~!VJC~#ZS*ED=QNRNi&kq{p7lAwgqLvP>T}C5?sR9g0T>5fRPK~%V*u685Z}_l?JgEB zK;Rnzx&|}NrIjjK6}H^A0a!zu^R_77p{GkEuy&bf;6y>_w39rt)4*N4Ll?FVwxK8f zoqwY*0L^xAn!0i`2)%(+{4G1ogdW8MQ+}_U;)tji=a!zjhZQ!}_UsZ-n zo}viCh>~lwmHx`fLp0O7-H&X39|M`ITwGrokUy##tvyxs1d-gp$vKzJMnbbZq$!3W zF1S2F-Fn;k4qonF=r2=<^Su53$sx+TQ>P)q6DsGsXHLhoKK$C0&QqXkkJMmu({pMC zX3lKgU4GFJ!`ata58t^?Nl`rDtLNqqvDXSyl<>8!4rFHqv~;3;%(*3LUW+2~NR)}c zP(ip4#NHH1hV32Sz>l{ku|nPrWdeIgP7aGLWq?J)NtUu?2Gca{Ti4$69Kv>@;kUCL zu!32agBlxyjFrQaV%-kI=Lct$H@HSEYqlxwrZS2C3V>S82}wu0=M@xIc{0ufEC!u+ zX7Id4MJ9h$O7@$`WC9KHPE8-XaOvzjW7tCvruS6OQrk4fssEZA{6RMGQOZnw{K+&V z?=|3brFZQ;e61Qt-LP~NEHn)nO&*F}$wx~gBoVlcW7T}*Lx^)B56dDWBmEpA5v=~W zJG{-cdFHKtA~lnB*y17KBRh>)6c2kc!|IWzSQhGzakoE%81YuQtc)k^z5%8B5)_y% zR2i0q8$Z(N)RugW;<)U=`+;gDr;a~E61z>1vZ2fSBMC9u_8?O-B~iU`LL86usj3L& zpFus}%0=Tr{J7jME+060RHm0(m}Cgw8^0|S_vaU`P7lhY*U8zBE~DV)nk#;qI5vdN z4j$VAD%c7x{26prwt_Q4%u88Lc+gKU^B7mmv#W<;Z^qzGh$pe~ss??igjM3<-R`^> zmR64o;hM`Tw@RVOO?;FP3Zt3~eV8HKb<^(Rr^@AOho3U4N*8hVnPks;K-0+a`w zvO2&z`2?cwm=F$I)eb%XDG1m75#)M&DQiuX0LV;fZUtvwR*0q!|D(O^EF$Q&xsw=9 z*V1jU9XDGR{2=dR`Vn^@$$470$*!lJH~2sWVt_W%Dm5KmVgfDw@(QZeGK=~k22(E?){W3O-4AUHg5AC|? zr_AO0s%sO~r5!psP{afCr1~2pvi1+72kxJ8jRCDjZhLXqloG4s&zENwPozrDe^BtJ zl%+$J3D2HQGeU+Cb5K#T7yj9s%6K^32&pk%PFQQ0FP_X4bQZ3m+e$T@T_A|`S5ESn z_2v$skPsVc(TEN5%tZEa**@@#yUA@ya`{!0`fR8KiKWMeB*N~sMPjuJ_?N7CC6#lW z*DV;QYb#dQ+=yVU|KQ~QNXp~ksoW)7h`ZqFX*wrsO|+`Ol2v) z&&3#S_vY2`d#o#mUBxC$7eJg#K423a(KBlhmE+^t$NLOh%M>n@BbIDf{drzapx1^)20wb!!LcTKq2dIWg?24}ahK&!K7$~F7pOR29{K=MtUD@voFxDHHWcgx z%eioQ3c1N-b-ECt9AC=E5IKZ!0}H!w0A7NM9gRcC0i~-|@pPMEYm%DC>}5IQVPLI; zgg~Chw{sOZP-=v2reOwNtVxZ&OJET&3_N)eM3AV_hXlz@JV1SVWQdhpo#F=Jh38b+ z(kQ+~1zT-`l+UR$k=nQIV4eKqE1vGDQY`8fs#A-A@A?}U_zw$k7q-LN_GTiPCzPr_ zo>k~NyHaz5a39y-Z?I-^aV4_7pRFO6J)tZi27WOvjuHH+A`>Vj`ng~j;Qy&$>k_hT zk~z6(5cA2)-JW4e4pAr**Z#5xxNG@ze-@3P=PqcvDjkiiszC z)5+}zW?l;<-&VG{z1Qa)K{z403NR?Y~}7;|dCN8&1L@r3VoPp{9Z;_Mb|B9;uS6XX|ct*rxj zkTN;<*g@3IZ4zZ&;Hpf)5f4WpK5pTz0JFa0-0wQNc`<-Ze1dbPd+!wj*lz}dL1frr zsU@6)|LP(650R91PlD?e*SH~(k4KDHpfu!+Hy)=9$z*?G?kdaP9d7rfi?eJ%H0__; zRD6sJ6pvbElS45k4>}B1y`lYGr|>CB)nOv%b~atet6;(WIrXn$YlnSuHeWRLlWg|F zsyuzGPJe(qAFi6V!-vYVB2tqzYEb2OL29-r+w=w7NhXRh%+;-Z4;M!aC+Aa&-ILPo zdpVe5^!16@q-x9q35sg@D??Be+;!3q@@sxFwIb~zu2}{5)RnY_qPV{(tr7{JPuOfY zM59ACa)Y0sl+Ac%ona!MT?bK{M*4*fy~bGQ9`kLf@AbKg5yG$+7aX5t%^)bN#Bnu* z^qhAb!28l%hTc=L4*clIz=3%7t74~5SJS~~y}Ry&>H9gn*XRFi==pp-8juhMdMccP zks{=^s&4D(vdV4n%Zh@)Y>43@YegQzv<%evtaM{#68hmR4KvcPX0ldashIoxDTk4I z5acuZ4H`Ok-yu%hB1&Ac2oAcg!y*2C7v|7m^Aj79(NPGkKtfg>oU9$~FH(-WCk_zD zyIw*gG#vcJjZ&l0@kApZP8MoN1*}zyi>k(H)%0hb*#H>0g=_XSuq`Lw&8Ceb*PHrT z)-PQ??f_5#7Nqq}JI~@z7{HHUp{x&3^zX$Hw3adjNm-**+Zjh$8#SqY&JS%q&&nKQ zX=&*{h=UDye#VntT@3bfKQ=mdgrMD`-@XKgLra{a%U35v?-sTjCtgcioOmZU_te@? zIcF#;N)G}rjNLZ&1-zaDP;bI-T(^R#49wfcwNVAOYK6G+of!?*$q0VIwPXZ_N6bjD2{C=}gbA z25`&8p%e0i_eE9QJC%fiV}V~LJCSKHGKCNJ_#R>ipF&eMNY4AnU^%cWb2{A+4NgAX z#E*=_){+{O{dkMVlsNj32WlJ|EicyFZ;(f^fcug2z9g6Z+K{{Oc*tHVnrl4zj0}^i z$*OB~mGhM>ZW5otc!YBL1d0@^pq&^Ut`NcI+4E7V=yC38hb*LA`)|aTwt(72ym#$}yf(~V}be)eO zp^i!OWpRdGnVfye39A+W_N9hCk{|tPuvwX8a~X+G-Q}#Wx0)W;x#j;S!NOFDpWH_& zPV3KQ1K#uApkiNF@!u;vf3qBm3LYMXgGL^M0Hr_fOq3)K1^dUGEQaL)%A{@4a42eJ zBF#UpiBp(in+L%m&R>B}*6}6e=8(^7k-I{?KTyChi~s@DWMkad~zV8y@ex zAp}%{%PSQwKBH=25!I(&JVoyA1~~@GPM9O2Pj(5XE^~dP5i)c9p3>$AR5aoqe;>rp zap01xO_L1ivYu1B##1Es#kMDi9co=qNU7^3*u+4#;H$d;UN1M~9P=i6lg)Btb@{A&zs|{&})*c{P zLV31JtD_0G>}4H%o|VQDEY%cqMq}NpNlo&Gw<760#}tTE;IiMujUkfv)y1J_OK0SC zhSlR%+Rj0hm$K)|YnR?*XK#;|5@Z*<5>U1|18d>uac|+dlY;8I2|d{dC&tQy`acGV zcX}YAohNP*vAs6F>^93zh8M4=l9+_v48QsFgpj|$D$xEH?2T1>gbssTa^p?c8@sh{ znX`=b=bKyu3r-ur)VfyL8eWh`do7RkAAPH-qT)cMOcKWu$_7?W$-k#`NFaS1PE(M8 zcvIy<9uC9LR-!peri)>FI3y2NBN1ZNu?VH1!Gx6+6`-O%{5d=KOHYXJdtrd#P;0gU z!&=nr)?Ua3`S99-gu6|V8f)H0D;6=W9H&g19tWvzh|ibR$w+_-`DU5iBIS%)581j2 zPz9f!{%_SEp{`!I{J~K~6q|{&uC*@~s6B0b)S~^zO78xn<%{{Y7~JBbcsy~+R2X6Pr=?I|HIskB$uwdmY#Z=XH<)vQVVsu6wrQE}F8R6SlTq?UDht zmp@h^a`x997QX4)0orCz3B79mhpbW^hNGo>JtGjbw2QY|B74v8@#mS$KZQ@Y4q@Y)08)2cAxnK z%ABqqdT!lhuyyDbmRB@&trsMT4@9A@wg|?ChEpIaLHGR9`Qam?aMKjqi5J+>tAQf# zK^PDvox$cqIEB3oh!UG3<*eO)YLoD_@q-0Nc@xJesB-15y`l+Fr7!QU7%eo5C8V(V z%&23(BmSbkA^xgm%%E3pGrn!>=)hct2%Yvk9RAkZN72E7gm&{?X(LWdSeSr%w>+`J z`4m!Sbxp_K4F9uRXp~e`EI)T=_=WlV(t+!w*#)bj>P0~1W1%ba5Lt=bIPv^zCkT;{ zx|EERz>LnWLyUQ-Oab#Cv6 z-p=+mj5GJLV<}FOKi1Vj27KqqwhtfnIrNNHMHfhoJ)7807pRtA=6=~_G9_Gc!F*nP z-RRicw=9fbxBy@H!DaG#jVDVU{lX6xmahH~xzcrKy@`cFA%q+diO(9RQ}{v`4s%N7 zmO1X+_mKph*@!SEMzikwge{b6g%nKNZg${jrTF&*r{hEe` zRVmyZS3R~&z6wVAf|e^|*WRqn!sE*1S$#O>7T(i|&xKIvmI5UVkifZ>rj<5x{LQu$ z$e?T0MzB}6(v0~&ccTD3C~kdjPf^Pco@M;psG2Y;+IU3?+=CywEFDU5HZJ@j| zCI+vNX3essx~493nhbY7d?XGq(YE~#?^6i4D`*vk>DlGl)5;h%ikrDuAy658!?u?| zb13Z%f?HPC=Jgk!d5w#amgVwFfh&bB0A4Vj8yYsPdz+X)1Uloi{CPDC;6NUvj;=Z@ zx8c$$QO}M%m)VCU-M-H~s0izY-{*c(XO`hxSp&o}%C=mCgFHQGoEV~XUKxusRt_|8 zO{yLaGh{-_E?!N^%&6z%0l8_DKM%fv`~QswB46Cg)_6Ot`=czbRa;kWJqHT2XxW0$ zkBUOQ0Kafe<)iDU0fViYC!|q^^c-}3c?=r=R)YpC^nw|A#?g**qM{BXbA=c!TNc1u z`m=Q~6Z{12mo|!4g^j|^GVV$^$fwiJPv9p&HMjqV(@5hh4^n48VZUa{Iga86 z(Pl|Y9o&3ZlgY@`(cc??gGBGiAi0&Q<^ClRUm7lyZNHNhdY$$&2^jC+6o}r~X1hxYG5lQ=EvqyWH6;4`8%pFGmNBJ3cLGxDFA*S~W^V6}be@WJ8(VQ}Uk5`z;GGa|}vioDK5Eb|dZ>O0+tAu6LP zRh%kG2{Xo3w}?Mg^vPFk9vj!xuYdafEHtYQJUc31y=!sE}=4guIm zJFxKzH58;CpOEWaX2c!E0GrR=MsgIo<#h>&l{QMKY%^#f_ZQT`Um(g>VsrlKiuXV2 zikF1>6x6O%Dzex=Re_p|B_-sheV)C@(;B#DY-oKeFxENLBGn~eb^ex?hQOl!;t&4^ z<*;CfOlDhCRQB~uux2ndd`A0*vKQSBF_txVKN=?nej^j^`ViYvs014s)_nELcHv8az5zcdJAd~ngp80{U>{9eN#uC7dToO zFd2Sn-&HIUw{WZd~_W}CPW9$qM~uv6tW6e(LsG} zwaSE8ybgyI(krYP-G6%VLOiZQ5NWr+%hb#OPyG5EzSbrUAT;H?5$Hzm^r7F zwMX}nQzkn9nU1(I#OKjim^b%c+icz4fsf?pC+e~@AYkPBeQy9@yCdd5{lJMfo54BsA@Hn)z!RVcgtz*RTUYy4s5f`i6HE@nIpC=M&#K(k%O&7ohOtrXz%9@i)<_8Qc^_hZVx=jy;%_uIaUd|_N4V@b z6tvUDJ9UIm?`e=$Z^7n#5FW-M&YA4(C4Iwd|Fg+wgFOVuQGWS5N7<{N87Xv*o%R|}hj_VH?JMR4@q zIP^CNg?d$k(+<2)a%X>iLSOF!LS0!*ukbaMH0Xrwf+ZR`x*_70~6*2`>69k&xwUl zm~fBi%!~b_iIniqS+&IO>!ptp9Z+#Db8p)1T9!;^GGh(HbG__k{)@W%fS_zSi1!N= zSNGM&XXk#1gb9p*{nV}N)6Jh#Odz^N{{`m4AosT?+Z<+#^aDI?8G9O0*eYUJ}>YV60)Xr_v5}sr(Q6GjRH8TI6B68`;S~vae>FTWLK?U$bC%m!7~oI{a_Q>ox*ukC4j%U% zzKinid}^JvqdYA3r0?a3aYSS@5+StN*SW``Wk6Cra?GQl1v=Tp^SOV3XG4XriO+X< zyOXIR>zvQjywAMnDF5t=?oRG_sAbq%1P;Xq5%_NQxn@SCl+S6i5Z^=C&?fPE zZ?%w@PKs=b%h})kZ=@DP(rhwE4n3(OuRNC^=X{XhQ~O>5hv9{#RRYXmzGN?`Q^#!h z(_ih=&wg@X-?3UYS=iYP3wl(+WC%`G-WCa}-Do+ld1+QtHtXi%Mih7*W83YVov1%Z zEIO8oLsq1Nf1GUAgFSYCcFS2<`Kw#bcx*uknJ7C3E(L*NH{pOePH<08PSVqd_=yv& zz3Zb+&dx2t#KJSLpF1{JNRW{k7#RFKg_{ic+zT(8Xi1+DP}V2TbBL*{lQ{3FV@~=g zjN?;wZ+0NA4lN$?IAL=JlOwn%-*nGi>mQr3@BGz_9iXj1t(}I4?V8g}IFE8@OG^jl zw}fX!Ivxw<>N7EV&qJ9~ZcsxlYv zJ>n~kP+yKP{tvevd7qS$IUI%*4rGbLz@fG0V6O%9ue}y6qQ|N^FU6q#G}vbUsS*uD zYmc=ySPMSsu5PcpH=l`~{BV&%s;(mY$9tS#=(tBr*{z};MRa;ga3p)09(>=q3%0YY zftSrZs~9M?Yn0(^T`lW@$Xel6wlDWCX5QwpLMQdcA7J*6L>=-n|C288Y31}O4b{?P zZQ0bf!|UuM5*}RQ$tdI3CHYAfQIX^Tsx2*XeC7w9{{Eoj;eKi9uXn11h`3~8*;!&~YBj3fjp{3y1`DF!>oCz@Ah`h*F{Yp^s+km}Xt*9=}no*+w z5&Z?+jj^AMH{YH&6>P@1+7Vqz~(E&aL1Qkuf){+^Qso+yzW^RIms;}B$qDs){R5f%v zi(Vq9Qfe-BEPU`i!1P|A9%-N((2bGF8hjV`Na%W}Dux2$0sPa~pJDXimjrEB|9VHj zn>N@3=q{4&MQqQY4=N$ZhV%QY+uH}-Uk{AQ6rl~vqUKN0L9j-0oXZ7V#i9*_z!W7C zm*`P#szXA>0)6~S5AUPBzp+1m2fs_7BB0e59LOK>CKF4SzH^6=ni`)IA6ItUxw);N zk??t8Fmh94CluLWwbI)OyXlORCqTh%*I!QUL5hv1C{^8Tx6T zE2j%|%zX&04-Oi!vqL|MLy$4sV-{%2peF6)@1s&b!iK308ry$hx?IC5m~_b;v)J$wWizD)i69+ z3k}=&LIep7n2YQHJzRy+w{cW{GU93t;kCEUM>7V#o_AHR{I} z(E#UO@0%@o0b5=Na?DkSY##yH+D!^#t8~1@kDVpZu#|7L!`w(~u8}SosPOv;s5+*X5#)KlP9C&DwxFFRGmB@~*22u>ErgMd#(kz;_QBwjVOEgPP_%fy8?5?$*BcRL6FH6)k3}78ETsvt&_Sm8pGuQ7s!KXCGP!nA<6W2gKWS4Q z7ao~o($=#ELK8cm;zM2g)}L~AL#DcrIzm z>o+noqJf<@XwjbC7@~*y>15jNh{F-1zz`^=e0CNQe;V1r^_uI9qS|*h z_HTn-D7SANm=p^)TvY#Q&^5wCV$=@~N>OGKT@q)9_eHZcQF!Fv{=zQEJNhoxw)BcLufwrv7B(SFfM%%rl@oqlI!rC8aC-lS(?xTg_mJM)(;zeX2xMgkR(NMS zR!xJ?r#>c_+D-WDPIcI5wY~9L`{inMA(z)t6>MSS%|7x6R!swo0d+kba9fskQe|+H z(l7vY+c|RxjAmW>uQw24v7dd4P$MghV13Ld$BH~~(<)&bBi9i<`E<}_ukY&U3#VZU z?g&QqS3VO!;?@Qf!y{?gSg_^=i<@47VQ4k~Zle%7Ye3=!a6px{Fo%$G5^osk?kT*9 zO$aU?R=O#Vg@r~*Ph%hC#4;-LxG2gys}$c-9v5#D34V3g z^e!ruE#h=Ely=;>p>iP1?w~;@C<`pYf>0UMW9V6!;92|-h-Uv%N9+Ar#8IC%+iT`W z{IoQe{C!T&eV5Zt+SeCtu%QnEdSba?vBckxL~b4v62(~F^2dt|t0!39Rrq z6!_Uz$jgG;mP2!T3C-yitt`B=(beZ?Qh)(Ka8AV(Dqnz% za(VJ<9G6`I-tg94&hB*l%ITFgUNxZe=6^7Dpq{_H9ncr}uWsnwD`>Qj)i2#eeNu7) zlAk$EOLQ?WJcI1b33!1&yzcL?WDCI(Es#i%nshi&y5_Gn^|z1y{p!C#>@NcWKL^)B z_z^>=DlLgMavd#7}16_;H}wmgW=|A{2}Xe`+-(eYe*W9dLi`bA6z8(L(nh1K-Urg<5N4g;{-a$j&tbK zzrMhb>{-TXDp~##XSyOh>bLIDwwD{H?jNJ3p?*`pWtw9tku#X~-}C8Y)%R z>sdq)VXWQel$3v<4uQ!$tg}BI%w_P?pH3uG9mTBvjdGor+=sg}cJg>_1<O2FC@EKH7~J@p!PHtG{wtRsw4?UA1! zwFd}gg$dacpok^RV}#v$NdH?uxw{Mq1M=Lv>0Iv3;~Dy01P&elp}oDFuYNLFU$(%! z^@PuW0LLcY?4;`W(n}Hh14}M970ucH-4@JOq|=Q_lz2)Dqtn1*a&3TBL+k5L@qz!c z%bXLgTjzvJ82YZ4nQ6Qq#su_kXaM-yZw3dX53L7%;GAvmf&0CCO+f$l56Gz&d$6co zb8A`SGReALWT~F93#R?Xxo?NKlDfRT+`zoRRQv%MT^d_l4ewR=$hHR?;by3|S54?O zEAWPSdbv;Q({_f_ThQF}E1Ej*_?_Xv0}N--QnEj9 z>{K_GI|5|Kd`?BqVhA2FuCI%OvS}Q#jB+7++}>9Rv&;f3w4%s0-6{aiZF)rJFB>3y z4RO7b4wzBA%)hqhCqT2Fqlf33efh67`??ybD*ni6wl|u{N|{sA<ZU)G)Oxz0pYuBIaRj4Uj!PJhw+cnj#XAU*i3aRGCvqn0lLyj=Xdd=456OpA(#$ zEAIpq9({yxVQF6#Si!QOn0;&O9sNR^Fv2|f-Dc{97_gG=tU8_tDszAodsO>!Qy)p4 z*)oqGoM2v(^WRW-7^#4Prhu>*C0 z@oJ&Rzb^3I-Ptn!84wUxqk-`j2%wZH6k46X;Rc}53Mgi^`pdD;zZlQp>BK`mJt4a5 z7tQ02HGS6w(0HGQjTfh|Fxv7~>CjF!a&tJq5-Y?j!}*|&5Cu5NC6q+?0-p*d0=VSO z0XeS?EQ%KmMBaB*%G+RgNYSqbC4dg~JU{cX$I^R{jQIW3N{54zmldx=Wa+|~_ zKN+wRa#bMr6dfxPA5-Alqqt?%Iu{VPZGL_IG2XfM?IG>|2~3cOO#B)xVn5fHCVeZ3 zt^1-RH0fVoGcvtLMs+It)jlsb{>g#}>B`-3mGnUme_4q}Wp%m@ zB~F1TkyA@zFghFjb}+ox(a8Q(_X{m2tuQI&ylIm@^jTMrJ@-q~kD|?;j%-BJ^2!^t zfEhXe;a_HicKSn8zBAPf~F24EPLY)SabzY#G5Wy zq9)L&YR#NSIT_VVnBA016&PU%4!FF85eSAV>)R}XJH;(^@95qA&f+IqXtiWZcuBkW z8S%$;)DVYWYL{$~uJ_;H!{CseMc_!jGJv8)@$;EslD{Fj=@8_!+&R<>EVCdG0x@We zA!#=q{)#642e%E@;?C0xQSaHcONB73K5N@`5EqaYh(cy-{7ZLuNxbQgNQsn^!$2Ds=xz4D}S!32cLPsxGg zQTWg;qhEFzYX&4~aaLW+4oE48g#XyBn1z?SC#T?hh* zdPDvSz1YQ!$ zZmg+}OLyO`bTH{~6k2LKVu7RCxQjY!S!`ew7_!MflaWP7QF|@;vSPDF(i{ z$pA5B+6{^;V4YJKNjT;F^ExGeBciYG6CJR#-H5{_SITG;+gkyTOibk0^?@^!7K+bb-@fUMHTsAz@=MR_$ufdONeo;$R^V+I|?(m zn+(|Sgv-_seo+`zP-~l!#7;|d9X82@K=moaN0|_yDMZp0V)-R5cgxr6oZXNwQG`(A zwf#Ioe50cVHqk5Whpjd3g6S}sT{4TOiGt( z8=|tu+{C-$Te--6;NtkLCqYAcl~XdEySMj9EBxf3@EZyyjBq8SDqTWP& zIpk(KfTeIZSWYZ+#OEL1TIRAX_ifZN)Xmm``r(}5_y24(ARXo}d)K6W9QO)agk*v& z25;_jpM)#HA^kLLbZet;Zhl?X_el!s8u4taRmU%{sH7V=meSDp#`Bn-p6GUbb#}G! zx3?+<7TA|$FHKICu2pvwH$dFrO>_)WN}=#c_s0fG_HaQve$81#oW)(atmm%TqC%n@ z&I9?{@I@}?6tSLMG7$t=(^{?|Vj1-iWxyKu?;I@Z*DdJmxa(x6i$@}y#8t=H^-w}y~p6m+@U$x(kS-tD>8$C=R$1;!t z`=@l(Z5DRG&{n?1=A{6ZXNU_~1z>?LiOiv_@a^Y1lu?EQcJs!Ge~5bcJ%qUOI;h33 zywrH(h8e;yo9JCy9lin4?DIh>5n?&iz3Zai`T0}jb;LBSLmLo&mYo#&jH#yR^c3Iv zesZ(~rZ0+h7#GrTpxRTZ+gU$dP!PB~Q;?+WqEa!Y&xaK`sXz@pzU^Gy3k84^C>zN- z4#q@LQp{+vM5k9>ASeSy24Q)+cC!JQz&bA;Rix8m0|(v*0LKf(&dA#5gcbC_Dbv9- zzL$W=l0_gXDAKEvfm|dxoe}U`W#&Iu@mIy#=7lX*wNV=XCJ=JBM*BjE5 zCwh^)vfpwtT2oll3N1;Ws{pdoYAw?K=D{qUmnY!bCeV=7pW4fzrbP%dE7CGN%^$@x z2vzuH;GIb1&$pfC$5q_C8k^7Xg!CmuP%@k_Ly=J=@BHhaR00%;K|jtSk@eWq%g{}3 zRuyPRPG$44&Rx5RrvwDEqG2nWdAS{Flyq3MQ~VwzJJu3N@5Jx;xc3*5ow}Cik*;ML zrT|b)1XB@Ih2ZtiXmSp4%>E30+}X}}BGNlCG>>f98BY#Yqp^Oi>*LDnKy#3@f;?v% zGqy7of76q1^{oo&x8J;G&2N1%sH$C~1HLy}fautx3GfK*bC^m)_E+N%rHlkKMm#ra zKa4YvG27hkqj?pHAq-o;fgq6CGkEgki5mY^d;wexXPytH-&=aar59pANO}6fg8C7) z|NVIcZ^FrdeQUj2ljK_wSuc0>+i+1irCIRj=&MjDb&H`QeWC5~7vYAhPar*poQK&a z=V5lhZwRH~Hiv-!*p^%hoaxWVa`;#nr#%2&Uk!Ph-{a{2!F@v#1GrQ@*br>y6oGXm zQma$8UyVH~iX;xF{`(p?_FYT)W67DNk;uDQ|$Z)t4 zx}OT&-tqj1{^G?<6hkoyk-6MEPj$aG*jdRXV9=lMrXi!ohGFR;UP%e6MpV%a11TptF3iN+T}!p-?9Ul5c~Mft+-#jCOQ?BREA zS9D?+_$uxce5QHznMC##hOaM)f1uvvl8t1s{G2MCxsHdB_tiS-RZ%Fha+x9mEX&gh z`)U0R<9#j_^Yt>;z4a{(S{4dQd zbSxbe#cY`m`9J~TZ8fql%ZO>V15WI4`aR6VeC9Q>zqFL_Vdv5t-V!rC9HnFh3zMD_ z*YYa*mS?hE>hvp9Q<9Rl9yxw%GT1I@-c9-1rF#UWI7jAWqne>#y`hd$k}l)i~(?VWNmFjIA?z z2)18>+_bAQ+Ba)|g2Z=wJ!GS_x3}E}6CbaS>lG!~7(o{@4xCPEr-KU`_}x#h2bovb zqNC|5RLXSPfr1Ag_cthy`i1VT$Si^YWcN9)fb9Mh>b(@=*%dYayyvyGwOBYf$HS&( zof*y9zWFX2%nkDVi@q(@+&u|@fT^u&(5m*Q}&S4FzWQ+S-u z&X4YWj|X3@D&<#F7}M>88ZKzuGWpV$+-$dGOXR`3fVo0CPi*Mh2JFQHW-pAuC3zT1Ilz3^*j%j!@**LTw1mSf@VBwWcj=U9o5Kk2HVBD=F-;nUYvlFcA z=LjXDx1cD|S)_ke?}c%I{>BmV9-qj#&ga*+;V=89rt;C)@!t(t_I)f9(S4W`wpJyB z!pc&W996psl_~5p7~#lDqM#4hX|M2Jt5&3&`)QVYtPsYm{phG-rVNMt@GW3IHOqCr zCR!YikCxDTZ}{Jgw8@LeR?+PhDfg4SgfZmAAz6Jnu9D`eoDw5vl}kAq zy_>1@8)VW(QwnC`0+JgueQSLh3_5ojKxjafz~pwf!m?z^_0E^cj4rMgT-Lr0Aux^8 z*RzOTx$?$3AM753(AI)tI@=>J>9hAx{_t;ykfnv%N8Q0c7QPcS6(KjBJ}Lp_fz7f) z+ze6s?|)cqAMBWXX%T9OXS;A0WgGvV<1+C@giL+ZEMCXc{_OWuYYF6QY0(yeHjdkM zKl!2$ybpBQYEuBS*0{I0zw8O$KB9SWvNufaGWo;KW;gCm(SnTSBH0p*^Er+-ZY&9OIRR4cTl@1^cv*yKU%ou-CK3fhTAM& z7004N`TjzzDXpD}EnI6=>}kumchTI<NbE%?+=_$D z!aHEi*j1_C=I}1P)gZ*1AKuZJ%?#4zy~&!m1+ z(~AiReV|aR!CIhY-|DXum2EJJJ4T`TWzUvkp)+I)s+MLDjE(F zEPRIm^C#}dh4ZNZdysh4fI1e0s>g_kZcIF)vprrdF0O?Vb@X{L3_t_^*G`k;LH5T& z`9UI)Zvy;U?NR7KRjL&$J!AJ*lesQ2j}AnOFj~i9 z>bm(~ij2X<8L4E#$mN$v;A`Pm*tIWUDK*v6<>Q^q!;{r!qgX{2G$eICoXr18QgLS% zp+WiX32JgIeJM<7>S(jkS0(m8wv*-Y_b0LkixHsDPr;1e4S6RoV_uMAp-uaY6Zr zOo&fGDJ#F*&ea1yh)b@csIk*+=hbf9cCRv#OwS*&TMqt9xRGdi7Jv2y0D_Jd`OeE_ zyc4sSF{gbkk`XFPSeCMZR2kjtjXeO1k(gEV3XFJjW4W=|WnfXb&UKLarjgsOY6d*TuFj4#4t+vNo0hoxy;N~JeL#Ud+{A}x^e#M=I zG?}G~2i!RZ_{f2?OUn4{;wQImlw?GGj-AQ+n5EN&LZPs(T)AIHWhu*Js@`?OJ#GPhR=?bz!O&{1C zfyl$_awuCCnp@ZTL5!nFk3PO+E&Z5)>$$5a@6@0Ss_!XnXHkaN0+674QFS(Qb6Y2w zL~L>5{%&w6Z~gW0OSzvXK!l{l;0%LO3x}X2`a?{=@F`Vb|`vaej`DBIOt7O_w1Ae+KAGSs>+i{eOb_}!>w}N zf=ir{k#W@RX8UClY^6uRO=Tx$;S`fOUt(L)Hpxy*u6K~`l2$Y^u3uO&fC7zOU}DZU z!lnF{ZAL!lGIz|egNPHqP#vl)<)U8C;&CeDx;gQt*|DR0r4WTA1(jInd_bH#z0pq~ z;3kT?>hjiJ&fa``(@|zvH_!H{;SS)w4~>VRxGXo49-hshGw#?NBgQ=f_MlMb6Ujoj z=Xf6Qb+is+8odK>DD&VCL=|JNpsz>=YA{&||6}!ruNii*U0O{(U%ichH&1xYBJMlT z_ZR0~S@)o#h00Iep!tnqMLN6&MJ6=Edc7;R`3N0pJ8#V9l|*b>Jm;=MD*INXy1Isd zj392F*3#_B6>m}x@kZQXo0bq{6eITn4v1B>)&b?#KB-)^A!~uArfz2Ypj=jcF#Td9=nizmfVD)vV(V=DRVB$}0C_O(ZFZvS zu~NW1jP8?s2c9vdkmo#qY<)g?Nb{`FCqO&xIuaRpE>dCE8`~XUi4di0mkR-&rZudD zdQ=M}!B`2QT|koqtndei9qKi~t0KlN`08m;@u_rlRfmTTUVYT6#jlsFw#qW@hVE=v+11n&a0!p|d#D~z$_|9^ zM@bS2sG&k9s1QM^bXp+7%zLjvUXx$uJRX(&6zO~)KZhvB*`8DTiByi-@=|U14N)}nrI$(vo zUTz6UrbHUwUR15pkom@}N$If5K9}?bEp6Kkw(UkwN7o2TjV8gF|dlkEdh;N0|eH&HMlVS#F&KZqD~h{zR)snP*IIn;w6QV2o<$X%Wj|@mzfo( zqJsrhM-BnOKbaEb;=r`DU0q#iS%j~0-)!%Qq4NdlChrHN|h?F-*pG9CZR5Xo^!HnJ+aXlR) z*cS99-Rzv73L*i!=WgC6punA+`5-f&ILvMQmCZ^&=V9+#s*0Hd?7@{1;0jB3pZ%N- zv6s`nS00^>#6jIBT~2e7^6fgc(8?sd$nL&b=h|sqOi(bD^OY5DVc@vYu0>pXz%tdr z-+G$lPEpry;nQFtoqar?`JKg5hlG<_dG?knA(hUS(ZcjCE()JOKAg5#y|DY%n4Z?b+}O?2?0)Sk8@?E}x8}bT1@Dur^=>dG8`)wadm`%~ zyCJeFPJ&HfiPyOHGwW5yy|*Iy61DyhndYT(FJE04FkaNNA=@;KYqG!h;V~x%{JPX| z{1~^<3Qmxj9J!&s!5AS4$#UPE2YJB2lK$lUvTs-AjqFFC7%nzme2n1Fy))oI73|lr z$ENRK^X1Gd!i7Amq|*f0RxUqO9lQn%l7W>@uJ%~4&YA_s4L2udprJ|8?@I9#pX7V? zb9lO8KM8wGbzi)y*( zbS5T+M_aU2b2hgt8n00YEt0iUz0_r>tgNKt;Kz%1VNYx9;#x8QanzmFD%BbQe4WO|($0sXw6bes1zyCL!OA!^*3dk>c~7DlEh!Z7T<3tl4gvt@LoM&u== zUcEtyeOFdTCEp*9k9B$TKs!oA`h}lPgw$>Ly|SEd6!OON2>oW(G%r8tjo}{6En|(6 z%X)iX9uLl6YUmgh09$(Pxar(CW&5fQCWjg-ltL82hQ)_R1D!?X?v-hdHF()79X{$m zVjd5B5lR!?s(o5Pum1jlg<*{V3-ME&B%HfHDGJcP>GQiG}~heOhCv%wwru^zD}`%hvmxWM-|cVuiI6R>>}R9(5}t?J2RD*af} z=R3E#=5vpsQ?c!2uB(N1J)6~6UD)j94)r2dX#qM8UKuGu_P_Hq=d~KTdUmudA&=TW z{`uT?WxiWu4v*ANB;0T`ujh>eT5auH0|4R=>djIldQt@?U(e?VdZiyeyDhzi6pp=Yiw8(>e zDz1ZvFU<4R%H5H!v7+)3WMdA(r0k9KYG*aW%i(Q_bvbUDV}g?&3T1>4sofhNun*ES zmqtW)N0n-$i`G_BqYdBmlcbXo(9-&%=aZd%k7~qGwqnr$e0|4XqCC8=cVyjOu!s%2 zU>X3l7MxywXgxHC;l<0rxl7X0GlkApI6Ve-2s}8|t@@@h7`GXZ@z=MwEi&tYiKaiM zrVbRb%DsHtg{vaK&NwZnoA9_9gO^$JKd`F32x5YBU5fKmO+)mm`7u7Pcb>@IyoIj+ z!3KOG1TNRhZIEJY~FrvNIPQo?K{L7t`^g7h5Qc)s7bN@Tewa_UrnfN!|`K95=)Y z3-)vGxqYjp@+}*4;_!=96r-+;+=%#UjXPtxDeHUZcU7I8^i;0LK0Y+KC~?Qyqcuxs;XD#IKeQ;- zuDRQ66p}=di!ZB!-8{tdp4!IM4Q%nr`Vqb}B6kDevxA8&P|r^EA0;Ld4S=!$EBGPt+vLL*|DLc+piHR}1|npWYAxm8t^)6>%g z#BYXpmLIB=q?ow5l+$xi^_4HY7^lxY(Jv>?|MrBJmSYIVLD>9ljyntgwWvrATK?N7 zuP%I4`9><7nH3b|CJ-Fr%GaAsS}92ReYA6cNOfL&(Gy$Be5>poYjK_e?K^H^779C( z@e9RaLoYlk*lc;eYYG{*4w5O#I!)*p4m@63VIIg84C){BkIS~O;N1)k9-3^i#_h7} z8B2-2VU8~VXV}bQq7P8Al6vPsvS?r^0}>zHiZ=Pd^2g4F-3lckxo+{VG_9muUSnw4 z)YfJ$pVpRB8c9WdY>}SD%Y7G1gbgbEbeEnzM5W$-16(|H^%?olM+1apb z*i$y0+v_r+&xnrXWv?3YVKGrLMT=OR^!T)rcV21|2|JPNugAU5<%{OK`zTIJ`yxpF z1SP~(&gjfN^>YgD-n zxBXE+@K&V!NYDhCYZ%k48Yd6-*eR;b<2gLQNlTY`aX(C3HrDk1N;zT|4jz%K+JPh_ zBu6X0$MxZ&!a7KU93seNJe>g#TxDZI+^1brJ22alxn~=EP1021t)y&>shw={+u|ph zo^vE&8D01DPK%$kzmSXk$fTuRWepNaYZNbk0%5$Qy$IM&U;U}i>7BkZYdMQj4nezV z=GvoEg-e%5&(zT9*f-*HZKwa-v-7KT`g<_>`|cemJNYky1Q0G1{^D7TOw`Zs`peZH zhZa5D%x@Gw-~RPm>;`e?R!;? zIH5O3M@9tSt|ejI2G^^9tCOySZx;E>=G6NW6^Jp2re`SHS-gF~I7rIS^zp;MHKoL% zOKov4Y^Mo8@%D!NHG1INx}ku2KIbmSJ!p#wsIGx?HW$Gj-2cUYe6{XM&LXrfY2vYh zVq7lRHrJXv$0|qqAN=g^yVpBIA*6^Ctrp!Se@S8RpC~--Yb^ge&;H{k21H=c`MJs* zhFF4}AgWLNjLMw-Ul01Xr;maMPCet}m?OT3CkmG0a9LBnOwJ|P*DNWK> zdbxv*1Y25K`g*R@islDzp11nk7LzKxmS3-uD2U?0#v?cDj^)A}hTxTQ*MIRq*1%Scd|9ZdJtUJ)l6Eod;4I>zVXap~! zonC*Il*%TBZJziZhF`-@dj8-#W_t2hWs6+1EZCqFPOY*TCk${Ojo2Vt{F;_$@ zEj3frdnf+eWyX5}MgDW(*Z(saT_PnLKg6E}#w-gTf7Ki;@ zhu_iOy3tb6W$h~G%r^=L(^;JQU77Zy| zTbiM~M*)1fvFVO)w-yK7X^PDEno3u+K3Vjqj1-z!eZ3O4PuisSyx;2$(XQU-t5!p7 za&L=>`>OUXJn5Ye${ps&Jz1h4%2ZeN+AoQu18W2V9amv_T6V6Flmx=cG?%k5Elo{p~5 z#uR9WTkD-k?@*NXmv-v4B?@74=nDn~gqh9M`+7R}=6D=*EcVynhmvxJ1mP2T^)A7x zjQkiaMvK@*#XN0yk(O-QT$FN%8xL4G$8yCg_hbu=uN?LN^d9c9&Q{Mt11}xLbL$m$ zM_r%qO^HaC!ygsPVtJS|(`{3ul5x-O_+*lbgj307_iGhlX^7Hu$2%ybYvGgji#H_f zZhokKm^-9$bZ|tfe$>A{cIsKx|4Eg{(PHBA`1rV>=b_+ycS-;e6XJ(hRy^Nws@~_% zDxXp%P!n~z-@A8Vdi}uPIiijkJ*qtkiHITwtu(XCWY=Go4Cd&N8dU8*`2PI#SVz!f z|3bXLb3cCT?@*qiHIlj+>B?ibyLzi?K_g4a({b%95mm@I@-K-vSNV~}UY~;FuFkB9WJg`05RqRR@!(~v2ksWxSCpl45(%jNw+&NUI;a=r= z6m$4l7B}Ht@pn#6n~B2Pan)VIW_sByK}ksP%p2CP};42Jy6^~==U1lXx*N$JNSCpac!4` zg5TomtM-gTBD3DNfe8Z7N5q&84d@w#zPZmm+&S@H`%b*Q*pI)n%%^s81x#19&Jv$m z`~l1JT+Ov_UZcfxDo2V*x6y_R9?A43UpXSj!B`zFMlUu~ZW^nCuO<_D)|EXSq-qW$ zZaqG5u-)kMde|a`J|UH->-275snBYV-|5lG$=*rER+-gNU}fuK&34CN=l;pwBin^t z_U*Mj{-?t^*rcQ|XH?qBdq%OdH5iF!ajE4P+Nn(FhlPRu^q_|l`lUIg-`2Ilg)r() z_?33hMQc>umq*?eFVok09ME|sabe(7BU>jM=vDG`6$c}$J&zc>;)ICN&?47hL|2Jf zUhJ-oOEyTK#tH8TB#L|DczIQDyYz9rzNJn@f&0mFzztk|xuK!q{#@qz-0qr4ZtYAM zY423*rUV@q&4s4Gn#hhfxgW~e_4pqjhPUV7kB$o*GNSqldA1fW+QD`?}tM*_Q`-X7Iqmzg-w3DDz#RNp(lB1yKd{XZ*Qd!Is_+-&6{0On9FnaU@Q* z`KZJ_QVp3|G(UdK2r%s={ea)*i$2~ElSer)3r?2>$v!#ok{5{|PUbPOv81|X7Gd^ttVRvTqZ_-MG9ZKY>G_$>llJI` zPHL(P+;3uq?HNz`mBgw5$yUuZ6H_rC`d-TV7!mQ1TKWio741H?PVtkbMi~dyDoxmI zx1OY@hqx!FdAV_3IlWVU$>YK5tO6hkAhN143!p|G7%tm8U~F={GT> zcbA8(gH7b{n|e93mU)q%jBvrd@t;4Z9^|&}g@G>5d3sJNur&aQ>R+`>pO)I5HVO?A zO6`%0r7WF(Tf&JG3KL$Z`mp;oTh#&hesXVX-Gbyt-`e5RU$|#Gk`i$4JsYhgcUt)t z)c-^SmfH&_`>tNKwYe!X@Sa_zQbXw3c#%{H#$4w^wKZ_Qu{szL+JX`jQ7y1Rf5;ZS zvnb~CT@#F5Lyoit|4DbeLAwmE%PSFOs=G3>M(ec(PwVzwu;+WyPp)BHTeJJQ)BO=+ z{pt~^>P5Ny#EQY<<^7QKoCsoewHxo=(JqhHy6q5!#O+!Q7QwEPu=rd5;HQP>i!$qe zyvdO$k^7~#K2`FDi1WR%uqeVP?N7D{x4ohT_9^l~Dp&i3X5a!o`2@+X-|%Npn4bZ_xhzoVw1U@`#0qcpx_tG+L~~~>M-D=|vbQHuD8Oxp zf~CT2Gy1a2@qYVcWDR%vM7guI$OrrN@1?jhp(L2?srXb#Ih3gDL#BzmgyH^bSG}Dh z`uyp4f9?gSwI4Jdv{O3jcfVA_)9)n{7NgN?OF_e`kFKON|!~48=U1sLz^LJVG$`YeP z7u_TMTf#_triRuMo_ZV0?XlNX{aBH;PIbsaEmv8u*Cu6a7v`{tobHuS*erh9&LyNIB@=k6gp23XN z+3T1o(I{)O$$gN}MZ^dD#OrOAI2|#6y`sEx2C~Gc2g_(Y&&5?}MB@FMVNxG#!sl6i zlC7#6FRFI1$l2n#qs_M);D#$s1!nu}-XADkls_h`g z4Gh6ZdAHOeutV~Sk#RsjB{q8B3rXl7igmC$vK(kWRv)}0=6<$icRHwu;>m{(qd(YS z^1JS!Q`w)+N8XtX!6f5-h$9}RWv@golRyV>@KiDP8+O88IOX&hPaVwm#A~tcfPB8u z16MMNMD6Gv>_91nPNO<8*A4$P}aPN{JnvT!(B^8P>%* zySn#M(H(7f#q5_?c)z~(eMSOlDHM0!NhwrniB4t}yT-02L$7l__(ENr$5~2WPJ;d}h67|E)w? zwK6q4zoFD{aIHj!L-z9`tfZW|#21$&=0nmrJ--ZP;D>{;bkcD0fOO-L!f{_!+!x7Q zR>3n>`Sc+S}p zeBi6v6ThxkJdIM}uMvuVnaphwu;fP;rJAouOE;#^a}i0#wt{k6n$Bf4<=0D+{U%Za z`SkQ4S}GRo2DjrMNWt$RkyiEq%yMB?Sxvico$zsOh+cP{lqs|Zulk-VpVCo2qCotJ zpjMA0JP-H8&)Mun3SB8i(mZXA61)&%)TzBQS7&#wNgx}~7>Kn<29C4m#lFMJ6q3b) zbTPeQvo$+(PlFaUQ@Cs*4_azsF$jUnH;=;z?;lag9>r&Cw@dZTn;f!ipXfu zJA2}veo(A>7|wvsN#=V-2VZ~{%OTxmiG6R*b*KbRb|F$2pGPI5VRoLdyIhtNq8~R( z*?g~F+`liVk-B~I{d_Lxu)v`8X#_q)0G+CzYSq2%^;A?wb62`va!!Uceb2&#%MQ!^F9`St}4;ip1Xnu4TJl3BO!UxmzQi|6!t`r^fg zad(`v0vvZ}^JjX1Kc&R6WX|ew@rkbBZRR8GYV$ywIUc&gK*0~dZsx&@rDM7~Bz8ae zUZXCLu1XfICZSfF4tx!f!7DDna!7WOA(KWlk5=_gPvgG{ls56FQ?Gn7TkC~lHC3Y4 zT!69}30;_gNjRcmjHsGfsyRP{FE#|;d+_Le-$b}&_x-^jUt;Wxx5`r_$uKz%cZ-Z9 zQ(gmW%dP`MKtB>NCee4s>S`1Xq^UW?|gE*s&^#z#safl0IVsZ#}uzkr5#UWTi4ny>D!N6IF!ydO-)lex&* zyU)q$bGn1))s@qEKN@R`;B<3d>qiU(3%GTWBi~rn^$Gc@w&P6SJZDmQlE9pfWH%6;y8Tk!`JZ)7a?_X<-F%|%vxN>ny!;!I%@xrBZ!Y8Ki;Xaci=QebCinCX+TckzVe)o)`zOC}BNOj~7{+IV<*(eVbM zS{GCaxWV~l#IxJYycTJ#@E2q!w(E?y@5R#U6NQr*R%D@P($GbNN?X6@-MxU>CS$(Q6EYk~EUj^Qn-`r9I#zY|9$>v^kX8o;OG|;q(=?j#R)mOod9eI2_v( zCVidC-ZR>Uw~$aICa6hDm1whAsVq<>Eu5_t&-qXmWuVShPg6_W!al8j^mr+a$FnC> z?ha>$0t)ttt?(FW-09JJ5YqfYBU_G|GcXpFl3uN(1XcR+bH)O3wArXiuFuu^AcAFk zJ0Q3J`RYOI!SbN3-7*{op?4xg_d+zrv1ls$l<&qfs@+c=XS z{o_O@X$Q;O0lZG8FDjU})P5 zDb(A_At_FqLq&3|;Y2lbeXiW5dv#ksGmAa__}tA|2)V4wE;6M+Y~PU)72}wXWJy8! zS8CPIcSH~NVqWDfb5)s%kmk-8gjn(^0noBczC}mQw=T^ka?P== zLz|Gc#R{l0Y?{^PY^SeePrG@^0zqg`Izpqq2Zl!d+T6?^!@uEM zHsk7V0Cmz51>o~V4m`BSngmPYPH_MX+w9h+%5Mwj7Lxlkci zN_${PvB)FOq%8G8IDLb_j*U<*!V|p7DT0)?wNf z#lgvqtThAF!~DrW-p~+Yzp3D^yG()t5eEFrC&_ia2Fs)!;fzQ)%T7*yl$Fe-oG99$ zW!_LIqgK_*O7O8IdF`9XSxao|(G?F@CO7`&9Le(|ywOH=$*=q_axQD@14%k2Pb^0= z!Y_X0Z9W;4$&EBURiP26q1c(|jgMS|Vp_5aI>j@}tWY!rR_>1+QOG9D*3FBI-4lp$ zVP;M|-jw6IBZl&tl2V15lkhVQTYM#zl52#xbRZvIfxxKsZ*fpJXTj)w)~^&g4k#HU z3$@OiH9JhGm*nG~Hax>kiV*t~Tgs%Pb*%J<+2KW4Q%oELXO0ZxX4F@CbhIctf_?C5 z%v+}t?aIhmlEIREg8W!SnyKn+)4WKl3#E8)2&&QO$^)68QuQWM*Mr3}ROc<8Po05a zTNi2Nn+<(ct2d`MX{serbLH*p6G0j0vYJ%4Fo*eggWHUfEz)V-O0;VR%GNPG?WimK zDPeg13ABg)s9!8tV}HWVP3^dp#5h(g&It*v^CBsgXQLJqG|F_djDh%X{yE9?c&u&e z3q@$`GttysO7WjgCr=bEuHNedI;(QB4L9ZeVt+Lc;~c_)2v@yXCY*aer=S0MH} zV5jF)a#?B8R-~GGh-C*SB;@0Wm?Mm{<|}-!>6^fIA#ai2h1R=o6Hk>J1SWIs7Kt$R zy*T+jio(?!z!w5&^6!&-cFE|9m!sD*TBWp?TBX{jlLE3FbQU9V@s&;PhaWs?@{{^^ zc}i-nK+NEZPTjV@Dos>z`wHqQQSl}_TV}vG;5Z6v-)J$0V_h%C42W_pSqNRoQ-Ua%E+|4-pz4dL{~S)mtBMK7S(R{qHDRBI^yr7iM+M(p9ya*Z@tlF%eKa^{*;y7M-tnc950=f`?)`^ID=hv zFhxiQeTwqO2!yxd0?`ySaF~9(q-j|a(On>gdVbVDD&u|iJ8*d7C#dznVkf5zrTili z|G)-{FMANvOlou-G-B^-;^8%312k_CA*>(5!pvd+YNxxmTX$B6huF zhQmz>%@GK5tmeO1jr%w9O^KB^x9SaAG*O;TD9fRQ4n;Qv+ERL==Tp7(M3UwhW6JnQ z2kQ7-KDp4`z$DC|0h`0TfMX(w-3^<;6N=Bg76li$phpiuoyHw!%cFD~d16o4=@>si z68=@ne|x?mR68YQ7Q;d2ZC0M(&O}*gjg@9$dwFN1DazQMv{~=G$a>zAhm7P>ix@st z!k3?i&Yp@myi!?NNnGLm#h>qskxhUkrSk!jYD_+icxuxtAoBN`!KIoHaM*pT69!0X zc8eyOV)<%;Zf!|!cA9K5Z0wo6Bu$tI9#mv^Q{oOm>`UG8D5z{ys%0Szvt1~HfpH?Y zNUroD5p=wR3KKEOch`oK7nZoBKo!y(j5@kqhJUQZl8~E~@mu~n2hiS93j;^@tAG<4 zhUsX=J!ygj7K1l+wgPb{QnEJD)goGSQWIcWz{f`J+-J&^o+)D1b&nSK9P|+}KNkZ24xdUjf-Rgu_hX-ArYd z<%<5w8?6_#s=>x^cQB0?Y}-1)#&kIPw2vKt@~HM4%M5%G*DL~$CH$cEmMjE|DEA^D zJsu)elx6Zf75voRGetW<(la373xR-hDD`l!gK+ zMb&C}{2f7V-z%rF#X6A8pXry)c?I;pwlzB37*k~xt!=y5H!+nAO4>%r4}|R7AeKJ5 z$u=TMD1a{4Fd;3_Z9oNlf>j*O&&4{B|Cf0hvP~6-dY49yIN$Wc_{Zrry4E77V4z63 ziUblaAncO3*x)6Zdz?+s!1>t!)0xG%uUMCi`ou+3Y~VA)cT7ykA?M54l9s3fx#_@bjQ+MUaE`*M^NH^Xjog{mU`Ewu z30~i>WiIsPl%5Zi1rhL*11z_ zJ9-WQHw#m8aE>Kq0k)4-qSZx{*`O1!t)p2UIyL%?FdC)q`!!IP)#n)mahxe2TCMO_ z&|&4p(b{0~l>AcdHA@Y3{iv~AwCG+b29-X`;2QO4Tu_&d4$t?FaUB?Pq|z|9@%183 zIVx$9W_hk_CL;~y&X+4u65aKF&9-V?1&A{D#Nt?(@Exp%%8o4L= zcO_<9JtMWlK81CD2zJ`@)ZmXxsiYe{!hUds{~dHo*ve;-iM#&DY4Ad^ki5<)j@`a_YidwP2ysMe2$b*>^2>!fK}@XYariV@ebcCQSM@ zKzPFEHW31T+8Pd~VhODeX+!hNn+cB>8WBp-e1i&kT0tjE6Hu90+Fa926~4<^mz_cr z$|<|ICet%0Qad?Fnm)c7Go-?)trW)_76ZYkM}Xa`j1JO(Y0IBpizLa=q5##zV+1D2 zGRcpC&xF&fTNWT`8)@i*A%huM?pJSfzvbU9R$HX@@x2=+>J5i2?&Py8?$0%;ny9e% zB&t(0uSm*XehGtljC+B~9)w-K4K3;0+ z_rkFejq8IcWWa|Im$Lud$2^(gJMI_%prT;un|iSYwRce8mgVp$Y3l7Qi|qMRdvpDlP;}B zXOS^GB3PB#@J4?8x%{46_BHAWS(Yg?+3R{q`GG8C@9%F)ladky0#X}!d!J57#NIbi z7;CxvYQ+PIfR;Dj^d?1D-dw3Q+!HPLGQ4tsv}y8}NQeD(w>t6bZ&-kOY#&US#(qkW z$*!rK$I|yuY(J*5a}rvmGFeBkE6CO%CI+P{~ElBL8r*sD|Aosw$k!Y4P%4;76H7Z07@& z7UWkqXcWxrV8G0_k_XaynGVQj4Zu-{{q{QR;y<^hTJgC={LGEkuJu*~5@uCDV~W>d zl3M~xscvqF;Ej8<9-Nw)kp~AD+^UkWb0U+IL~=Yj-R}y`DWRgS@L5X~3+gZ%(rC`s zX}}<4BIjHufM&K|xnLT;BOTKNB6Em6VU`&3iL8AZksPgaMwidQ_`Vc-Gh-4rcwp3H z>MJRq%sHiT!0N|?{QbKU?-6oup%4q=T-ENU`krJ&v9Z=0#i6!O( zJ=iP}A!mI$%q)_DsK2r^?n@5Y!%mL7-$}}de*a#^JYG*ta_3$z8j!yz)tTPM|LU|c z@Yzh!pn*!JpslS15hbVkMqb9e|0u~`bcIrSPjEwQ{EDsRs!C!g_pa{r3XN0FkMATK zABC%GQ_m}hW2HG#&P7MAQW`vN&ClM|SghJIs3v9Hm{4%u;bMRcQP_sq=j->jFe&?3W8jzB;AA#Sq*_HBPS<7DR|LE9lz)J> zR6&L8jv_Pc4|m&Nu}COmGayb8Dj3vGa4`JHIB!Tz>Ur|JLImTOYWie5W{-?#e;%?s zmisZ8&8bMc&eI@{L9@#5jxC_~RH>tCV)RKMh;RJ~UmDttK9^#%wxOwS2$ZP`-J9f#x|VqTgn1=&j?_J-$9 z;|B2$sWYZ4yS%u=%+jDbbvF!6jGxa}PEe2veTUu(m$?~*eD7pF^=vS?>`b__FUD?i z;j)@?v^L2LkH+5N!c~V3{!C;k9m|)^H}JcZFz|zQ`!3tw)6gu_pPVgk`DVf*Pv>~7 zW!@|o{zKxUV1-D}&*r4x0flPsTfTARwhfx5y1vowz(jpy1Y+cez7 zCe-)jsh%Bs6-yjX(W~Z_Tz^<(l&y5`y?4neQ|z`>*MBFGMGl|&q7#+q{iSKbC(A_{ zmN?HDh1ZED*&5!p;tw9<)lAERv;Sn*PROeL!;EY6PyQ|w(a1~W{uE?TXU;y^XKAy) z=6x3q9=)y_AYE$umlDy{js;b3cx&xUMeENYrD`QVWf4{LCoVwzLm*=tu-NZ%RK><7 zQ8MdaQB4-A4l^qruPO>{rJ8Q|OcvWa`- zwA2FMout>>P`|9QmRU$)sQ__X7BnoN!}0hQh@mF>&#hrYX#z$o)@j&0|r z!2EzGCPBG-SEE`dv5 zw5syA+iqY8vl@+3p8ZO9(}qCas{GyGQ9_-r)N{U0`xu z8$r-z*!6-fJXnca_rGHS&<0H7Eg6)LsF<`lr%}lVxyMS_qmX}8*Y^zvvZ7CCV~`$2WF~I zC+-unn{gjpPBN#M!^Pw?N@XSqJ?YO?5q8~4Re7Bkp(F!b?{9o9CVtzP3?z1iU=J+a zqO~mK*Dcvvlz#+AtmV`m9RevISeHC&!e=({HH+WlXclSms*&zKj zW5%(yX#o9skO$%cZOLA8Tzfhk$TaT+-SyPQ4VMJp<1((S83c!Os~0dKeI0dCZo*` zbeP{>8mM!*7gy+Mto4v#S*#Ugx;9w2A&0oz>_nla1XQXvG_`1iB&f?BpjL*7<|RUJ zFVG4Ew7H@uTZ~ix%>6PDC?*ziF-KpyabUD+N=na$6|UdlJ;Qup`#pm?=N)}u5;Dna zy#8A-mRk_!`xE%&v{pk$kkP>K%$-|71kxSmiE(=_$A6X@f_lE&eY(3dRaytIUFol1 zbKK(mfVf>~#JfaMH~rcX3Kxtu>u% zUBNF=2ssPV_3|dh$EQQ;2Hmzcyu#>IdwRm}d|KTMu$R<58x$tP4hy{(1X)?m7&p0( zEqv$hKmS=Nyt52-=lktU6!4Q-xSpamihN)4ZwhR*!DnY>}o&Q8AK&5Ln}*NE;a`*Jo_MzT6|O+WVpuqBZbBc@-eLj&+434 zXS*cfh}R15#Ga8cYi8xp)i_L{@j2K>a=6C`>QuZXg0oKR9wx)S>+1BX2xdpST+oB7 zkEmq7=ub1Jj=5P$?)06nMg?B9Y=TAB8S0Np?l0^N){D4gB=WBdj7_yot{VT!0Bxbc zMGS2^YI?Zo`PO=fh)jA-0S=99ZcR)It<8ogz22}vuZlpvs*ue@9xq8Om7hsm(YS$h zny0oV%h!o`kJLE!>tlND!48EHp*ZRoXrd)~x~I&`m(07(h4WvQgEeDWGgE5)W@R^_ z2Q?zGLE+J}zdEKo^we9rC~XYp`)k>bKjOvlPddrOQYImMc*U3e1g1=EJSNcCm!W+& zo7;Wo*^MsOl`Tm#8d}Gi%Ds)(Ya8+6Xj4x#f27VC_89u&n=mP<55ttYQAPWB(hE3R zt*6V@ee}37zo^4mZ&-MUi@tX4(us)jY`R2K8wtW@jdM!xIUUa$TsX`zt}{$)hez}0 zK5q59wR=G$axZrSA{>j^l{^?>k_!iRGCBQ_Ze6VQk|F&$+2-CJap^qRL+$D z+Xfasxi42w;TK%XcYUmpD}!vVW!@``urb|PLl(zXb?VIWmuL5JlV*14n9WeVrmwpe z?`hG?4czUS!KIc)#;gMqa*z72_b%O z6ZnKpcXOl1bwrsye_^`YfNF!Ok;_$+dY|^M(}&AYvr4@2*3V=%SXSTV+Ag=kYCX6U0h9qSq9yu20-tXwKpVe2n8Dd#$Y# z;z`Gv8d5(MQq$`8ezlFhJ%Q~hDr+pR);2Yi1+DV>_mVh#jiy3rP_?p zh{-)0F&qM?gsSC8oEo2+gMJau^U}=Ph)^Sr7PO{hJI?$pKL$HjXkJAy1=(=lc)rIg_`v}`fDSw;qDg= z^V*QYLX2mxXP@iD+c*T#VwRBR?FC!yT=gEr^4d}D>v1V{6?x6t_e3&mzWNlne;_Nb z*4VDJuREqAWRtSb?&p*N+#uWV=mK*t#dU@yZQJmexnmo>5j`{CnLJHGznl}Tk3VGSM2iq0Yz(vSsgS#P!x`ue))zXv+3t{Z29(x9S6Izc^TJ{K~!x(7)OK zdbKt!3B!RDdgZFR%I76{0t{C!hbM+aL#+L!&123%zVrNIp*#x8JDZN%v$?ADw?p@J zFy7C7C-ux-W~Gu(f>(q<+xG+Q zan0?=cE00XS9Mo|jDuNYZ9GRBG`jD6^PRg*I*PM7eM|3_xI=!2;q#af%zUif6|&G%ImC*#5G<~*E-|Ng6KdK2!B#~o zOty?kvYtY#&n&g)((ss*N;h|f~e%m?5|Wgz5cg>5GKF42LzIcu@rPS@$iqSPld_z9*R@VKUJNT zgZv#2{(*N}0PTc92@k-8(Ev=i8jf`r<1aStKX5Fd=g%y$i8vA7$F?uMvy3_I>B#wS zzcZ}i&xFB$j+Zf7n(`3T2ehwWzczLK^|X2?5GkZq@t$h3%%@n=-WfCeuQP^C1^`EAsB&J^ z!%mTaL~tLTkZmIlwOj$I0Ayz@S5~7*G+1V5v9wO`*1LgPfpE3*DeGom>ZL?*P|((j z0X~=AA|sPN{}NS?-T16td9#YXfBbz={&lEuXg?b0E4#_9b-@ZINJRV-i>7?;| zPQw-R&0Q^av$)n}tGe=!R$BVlzZb${sY*(MArH#Q|F83dI;^@`ir1E)g z&6uT+$1x;u8Fd?bF>>^bWQeG4vf(o&?~Zxohf1(J@uvw~7Ff?j$i)7T|KnP=-7ye2 z9;lik2ZRfs7eXvXCFtiJuHHk2PB^9Pr(8zCMZFtnbzB z9Rm`9i{fY+#j-{hq5{v;+1X}`Kx#z-q77Co&ufuQZb2G$Oge}{Ss~-W$o>|eCN7g5_ZsUNjmhH4iNuPI8pDo8 zbC0R=X{mA;LdXTaLRyLp^^Iwe-kvS3%abE57VvVD@Z`t!w3yf;IlsKznkW>yIp#H* zz5C%qH|-gMN#N2NHIjtqgT1625&7&t+7N7p`=p%dzubM6zw=s7?w~NeWtH?o?5Pv+fnvYnXq};;Y+<(0%}xlYE`npBmSi4iVyPLPHQJW*ISt*P z&ZVZy^y2dK%TsYd#zELTP9q&HtuQDMB@@3#=YljR%d;p{&5w_YYIWTBQ3$BY22OC9 z)G_a5c4*X4IwW5%iJiBDq*SMAH&?~PnTApv4RH|8s)@{)Cd;=`89zF*JpvBXN-`DnXIUs{h#8^? zFjZ=mAA_a?Ir8S9D39x}e!szd8`hOC1G=#c^7&r#SPw!AnAXI7d+L6Q@vs zQsAiU?!To{FIL?yMUttkxX*!mav!9~`Ko>tOwD&ot{DTDNt@ut_C%4?^iJkT$LvfS z_)QI^&Z&bW8!GAOx02AS0xl~J-ayg~pVM6)mA=?Q=c_X|A~mVc!aK8Fs?ssk$~zMl z))!p%8R_!E$%DkjDqZwDW0MQaO=G!Eit44>s(F4JS12f#^wMKFJ9BOs@hmzyEG@d* zdkJiuvJHvimR%9*v9Ba#r~omtCQBPq*H_TOat+e=*;HTaqh_KSLf~7`?K! zS(2nW32RDl+!)Ahy=lw^!UqEyE&<>nJ(uoa=DE#&}4$|{UnU8hvrX7^pU z>+uE#;je?^wp}R6KOYTY<@bDmQQDlTBIL0Z&$$ns1|hlydoxZuKfZLhw%)lV_qn~U zi^^32mnE;dY>gnfUn}Je6kDFcF9}~4q&qEAR!$Gj%YAtzk&3kdCF0TZLhemmoEpsZ z;o~#wD}CIsQTz7pC0OP3PM-kLG-pX*D!AdGPK6$o#x1W6;W47mO1y4SUIa19-TS0X{tVwq^4)U%wp`6Y>-uPIbwFlw9i8_~}l5NS6Piavu ziY=Tdj0wds;kyyBG%VG(nO{a_i_6(t@><>nCHnihm`xX zHS#r9ljF-|Sles8t4F&KC6I(|yR=&XR`!aaO2VQb%E>xDgZ0C%9xs1A*Y4`!?4|^a zV&a=aG@^H`0q8xU-_Y5N`w`9F7bi;bj5Ayrx8x*(SAnhvGi8s~8LTFY*4dZCMzg7{ zcBdjQjNx+m7F+f`{pGPSt$t*2bk{{iE&5`dK~m2ukiAu^-BH^= zI$YkWU)ttx*ysa!D;9$JZF|ak#&K&{NU?vA=}WvHqL9yR$IuQ{r`CIT(cZW}UeDtg zPwnigPmyE>LxR^oEUf4e!ZT`ai*zW7=jtGeN@wJz6f3Y~CQHwiA7GF`v0#QuMC<`_AgzIB)rC zK?$1~!g-EG61#J9pL%}TQW*+Jv4{0aU_0cQY$8TyJLwVEAKMOgm{9KTEi5E*L zt-=e+A=*45gD3J@X(u{oQ=B}#St1Ge^hctq&(rSGIVGY~&11Y+jfxrKEY#}m4w9Ek zV(WR%2eM8J#StQV533R%QJE6Fa6$ob2!u($gD4^idRLP|Xg2Xf3PQ*(wXqV(fQ_1HI3+j~gs&)rAR8l;4 zd&Z!lvOill2D4?>J31$pTU}PWF?`sOMt@@a0Q^t~IV)T?v*I@M)qnocHLb)c0qd(B7uKT`!DNq$ z-^Vg#dno_SjtRGQ-79}r}4zKFdE>jonM&;Ym-gsRgR&Bl<%i(I1V^OqQYak`-YWIpfUF!W!OssqJsFE zGkh{5gRRkh`9p}$GxG!w=_K|VOftcOHh*%HzF2hz4d$9jN#gzC)J=)?A726UA+S0|9lX^8Vy5&rR-Pf0uGI4iC$tJA$aLXVCR`Txc>C4`Qx)ACB+ z2aZ8r`P2}d$uOc>yY7Zu?pp_OQ@Nf0REbuu%WkV@RvbjmKTna&4?+rkC%M(m7B?z% z^)034(zex!j%3`oN=_l<2|;QTAE}`0=@=t$69&s4@l%9NKx&b;}#3HCV&79Vk-un4N;DPz^#%VH}QABg|6}XFCUk~P~UT3#7QEBo~ zy=>kJt7QHQ1o`n1I(h~A4}gsN)M8l4v=^FAYj;!iu6DD^bX(S*d`z_O34Xk}Ho730 zE8A)<>$cG7q5}rK!m8cF`Jfa?E3+vml6Y87Vj#blB3CX+2Gmy=|LH&xOCIoD?c^aD zoHdTK(RH_!E~dxwHUQ?v5Uf_c+eUKcntl((TfJV2jVR(FY~w3IXn`7>R=1!ano70| z;`X7&c^h01)Wjgy^haNCg_GC>W5%Gms7jy%z{)lN0~qgzkoyB|P8^vt8hjerr!244D4n?DXe zU^ovXb4f@>-B2qk8Vsg!EC^m%(ti&1T^OKCjM(0|YpA;Zey3V`7R0Kgsy@ajv=K`!M@&*$8>AmkrH%IMuT1Hmw}=8-p~8N|oc-QIDd6I6sDB19 z#sxm6y5xOaGgYdCoA>2((YgTtctcf5DMK%miH~R*x>ayU`d9z=e@HasX^()Do{yqf z_cyu`xaR*u30nC89Oin~h?Bejrl63%0n9@OZ3PzS%4^USHd`rk?0@4@_+No1qaMb0 zyz+0${-Y3?`|$GpTcb|mKd(1qG)KSpP+WwZei^D(s3N)iV-M`xe_U$+^$&jSfc^v) ziS7Hq74GaB0z|gz{VW`K7@bWX$-gxHUy?!_F8=?oH2nReZALiY$;1p^3~wqM?>LWyheqqqr}j-AiVx#L2MkIw&KC6FW-P9^gV25M4LVazu!%EudnV*nNC zv4619ZW3~az+JxUr?oUXtcHX{y&yKk|2u0jNaf=(BJxkH1t}+C^FLF+ZGjI4Q1X0z z17leX?n3YnXUslwdGx*BBsu_jkxL6HJiHsa1AYcDPYIN(OWGdbm1ap0QOPIE{UI0v z0(@MSSAx-an4<-b)_j#07q4S^owy-Fpt|NWCY_d_4Vy51H@AZv0JIWPbVSXF(mXb1 zq@wUlDH7b-_1B;7Ob{9^zHQ%bq=AbYTE1U#kDV z$cth$k5~px>BKSG;s1^WAQ9TjIzQet2ek#1*IPDkf*`tYdIPY9e>ptr%(3rDWK)gf zlGTt;=AR1T9oX2PG%)FppRP1Xw_M3#!;&|$#le*rdOKy|K@CX z^OFVI!$*YKzvk*r_NoXtUFRQyRczyL4ot%TTZI!Y!E;A0)E0pp^@~&FRB?H%YRyg! z-mfJ|A(Hb^#I}C9->*fw?{3Ipp>$P!*!4;8JV7mC!^}YI=_$rYGFLIEJ3#7j3eTS` z7K%ay7H$Om1XM%+Tz=@H)oNL@$KxMWnr54UZC_wFfc&`lCdR|0%P9#WrL#fJrTzJ_ z$GlDwucu&$>+{X@i6K~3X^!vNZ;`pWok`0=i}83uLGRBXOE@!4z`Gjcnx+c+XoCnnvl74qF+ zKKL=dIw)B1%AIf4rF=SjB^4B-f~ggKf&=oe?MA?L@xYh#e^V$=;bAqcU(8Yid5ymt%b*VMfX{1TT$;a2 z49WpC$HSl}r2Hyig7iS#%y=(u&puj6wn`AXKcM>+1x{n-rAUQb)$E#;m#A6%u20SO z=Nt3@o1qa+8Sb+7BMM>K_4LF&UyEU~d`W5pW&7;Vh`ZpoO5s@1+lmO49I3+2aNOM# zyD7_&UpGT+96d#96%mcjE_Gy$ApJ{ivWTmLQaFZEzNp0q&GNib;$o#gZU{+8;dHE4 z;w}wX4B7250g7$tb00oMaNIlohupYqJZx~Hc`KX1TqzPgay<{TYD(tuQv^=M7?u$6 z1n{gUYpht9K=rmXr?(?-N%+r7!9i|1++c-tb=jSj1%;-@08MzZp1^QA6OoJP?tYQ% zT+rdOTPy!3m;x|_I2L_V4##G;KZp;wR+ax3t+85Zm5TE6ADMQ*^A5NjDCSDNG%!#E zS!Mki5v%}0tCPZ!jp(*PH}FNdolC@_X2i3?IP!pMQ1GZ!|F}WB&auvk4B!@e4jRLv za^%4Q3De@!j-K6-%!B=T`6Tx8qRFNMt6v$uh@Yk(_fA3SsbZB}`r3%FnPI;+B@!WD zHPER~_9b5XR*Qg)GlS4PCH9^h$_*;Bf4?CKeCa|04w_=)@G;NRNk+RPS^}#*jy)4XNaTKGi3H|7C0j5FGCqSC0dRs&)#CT(yX<7P-9z`WA90?G?f5bC29c?fa++4%dGK3AioJ=nCavf`cL=AC+7g#q;SDTOW zn+(Nj6{-l88g|_4_~dg&B)+PW`Tcf{Y(%o_V_d{9MBC#}f8pGO+d`NIOuv&Xw|?Zg z^=+N*I7sLBa9kg{&Qc&2%3Gn*SD8c3T211oZ~NVPEeu8N{cIQv5xIGN+9Y7$Tsz{# z_kXxA-av{C_b;#(t7%M~^93~;hx>8^SBgLju`zMOrL-sB)xS(GdZtxnQip{|Zg_V5 z>!3}<7m=x6rQ2UMENDh1j`8qBeW@h?5ul^$urSb&coUj-8E)AsUyvz@MV6E+^XhTe z{H_a!qy2qunn+A9IP6Nf<5^=S1XP@Uc~{fe;f*}eAjG!L9?@qjm!uXfB_eHV1vsJ<3ns4yx9^~m1idS^1Y z1t~;^D4g+Pl1}!KK#BeoyIauPE%^{lDP05rzs1gk-&E$~|HG6JJ(1j6{ndUD3pimf zT-+IXsV)0Z-m*fCLyhYOZ_ZY8LNHJ3!sV;vBGFSoK``TdE$|FQ4$e$8Tc+K> z06XgjiaijPxcLpEtEurU?~&v+h8fM(TfnBuZ~K_hj`ss#eW0dOvk(8X8Qwv!fmX8D z-wZ(2PbfD0ZS9q6jm3UhR+kLD)|m0rsbh|VC=kwTdvCVJ4zF-d%)t1sMAvhBlXd9t zPf*^#Kf+Cl9rrgDP*6|HYTB0|Z%0DyEFF{ym;6ay$@}=&uEBBrOP!{W&i?#>I-vgb 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 RdIoxt&zgkv;-PpRo`pBh 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 R9zF#A)Ks*t=PTWL`ajb*lA8bk literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/editable/Platform Health - Overview.png b/content/static/2024.11/images/editable/Platform Health - Overview.png new file mode 100644 index 0000000000000000000000000000000000000000..74b6e9d6d5bf98debb2938827ad6fe419f1634ca GIT binary patch literal 609302 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

      G`%l(oA7=ns69EBUJ1O}Tzkzj) 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%0Aj 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�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

    2. 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 Ijn9BNB-m#Pz83PeP_=Pq$U%E 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

      (S$TOPiP`rh-?1Q~Ny5r^Q8*vf^vn=pcq~ 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ⅇ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 literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/editable/Flow Execution Requests - Not Zero.png b/content/static/2024.11/images/editable/Flow Execution Requests - Not Zero.png new file mode 100644 index 0000000000000000000000000000000000000000..a142188a92be1912bb6a389c88c88f207870c26c GIT binary patch literal 175012 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 z zz|Bj9?2*t9lQgfV)B7Dxb(F?5oV{{oa3SF*kzLV8PK^~fWwMi6Vu}$645)wTsqB~Q zl|lr}T7}DATYSg{^wZTTnb;@Tf=mxPX~OZtUmm7+G|TgoCAvDY;5%w~c4G=j6IO#- zxzdQe;r8=yKMw-rp|}lN0|~B|;;bG=K-EA^O{19Xy>13(7nCr8a*|<^*t;wj zMilQ0NWj@(wIVWKqWdi5Dx(p85Gt%1Q75mZ2TSliv)mAgw&`17p=A$u*E_c3I(nyE zks)A7gNWLegpaD2DWZX=3>pa=Y>8&M`+Ff%K@@%v0vbtiC*_36Ogv0do?X3V4&N!d zda35`1Ls_#dQqT}lpXc%NNC9F$qv;w#(OoQPd9|SteKCzz{Z27BMPT!MwY1jAVR!A z%{7!R@k4X#F#rS?z(TZ8%;$$HNTPYly73;PC(A_oTs%yT+V1g(zGVeU%3cyMKpg5( z+5FDtVDHh{Y?ztxXIjY{)rz&kjN~(v450QN(g%2(b1si`#_W;$9?y;u*Or)RzeT9O z?yt`Q>0U3-wC@dIv{nZf$Z8FI`Cj2UBAMfP2c2Cp3B2o&jB9C_e;0^Nz=q4 zdPxf+r(BNCSLj&iB=ZH`R6t7yy{F#mwKvya{K|D7R5ab6+)flnki;S5_Y^Cw$pL1w zbeE~#xRfuQX(+4s1b$)CZAt?sN5j|Z*}oYCb&!Z-UVcK#1A<6x+Y;{%!)1iX=3tGCiQUDdq~H(4f=)Cy37eh z@2XqiD~fb_#nJ2t43gF7OTM>*(n;hii_W=UFk32bm%5kzfhRri_8Ug*+0Q$jP#qq7 zT`rmPFNMxAofJp)+-7a z3>a+boheCq#_pUuA@28qpDL5;lPV#x$aD@R0R!2q>Iwl@V}62M=$06Fod0%AU@LNv5xe)X&74B@}MYD-RPfX9JqP1n^CF(xi)Y3G}C z4g@Rp%2>qmM4*@qKS%BN{h^%+j>Zx=CUP9{Qs3dIt3_C?5ClHCy6RZ=;8b^)lwmZ2 zMfT016W|m;kR0PE;)ZOBi~ueNIc&TvX}2c@W*|tSO|N(91JgR@D$U1OE^W=w)Q?So zz);>g5E^AvnWi1mE5?<*;WJlepk~b=gT}EXwoR5SlcO{`YUOJRG?7|1wzKE8d8OMb z+4lAr2^gLHuEYiVUN%nLlY#b9Y@5h&D_n)o?+NAVXf-HXSf6c2YPCbgOu7*LPuUQve$NzKR=|d*7c?=Ra7GK?rz28*Kpt+bXm0m;JOXPAxke7Igv> z-#eu&n#rk*2@KTiZ|}QainU-cau_-U7<7+w%H^>cmqIFe(66yrd8@W1=5w8ep45S^ zhD+d-J8HnD7DDqj2hgrYUPar}o!X}E#>b~7i0`)*X@RvCkpn$Ii0rz@3pHZ_Nnk2v zV2Ctw6fiYU0<^F4=N;7L-DSxE=<)GdMB{bZ$q6Epj)*~shd1Q6vU=c_ee10{jZ@K* zpkWj+kIHa3wOqp;F?ro**s{jv7W(0Qtoy>EaN$7ihrd;S01-KPSWa(j?^*|SVhW9O z3a9x@dD}y7GcqBWKY|5{N@u(d%4JISToq8Y9m~ZpUJ9tJxE9T}i+dq&i-bH$83tC< zE?hi3cx`UZX*x;qhud9NK(!7@&r$1~ds*zh4`U2cq>^MO2tsspplw8>GA`@3Y#h)d zWL1Oet|G6TVT@+SbW0`+AyD^$!<&3H3*UgG5U&yC|Ksc}1FBrQ_hGsl=@yX?kdUq| zEsAbh8U#t{Zje%G5m35>O?OC(3ew%3(%tzE=NvdbzvKVQ`$0G2zVDe?Yi7-wwXSu| zOtsyR5FKVUI@+M#6_2-R279=N1ZRB5sHl_YhfjLma+4$C5 z&#>mISGR(`kLQEFFYv`sPYLrIb>isk_3DGCk5d_EKs*>)Vx;}DrOnzSh@?ZRMe${S zMZ9YLP`-B48FEQT%FjHqeo%8_Z=X&uQth;gDJCWsCFa~R>%xM|jr*2(8l>>!q-410!DZi+YZhzU$pcfT==p@wh${L((Qr~a--loK=z_<5QiG~fX-m%; z;+nISJQ#bQ{1(V*s<~ixLtPhhv-sVYyiXQO&4-Y6bO25Lk~hX@=`=r(1BY#ubv}K% zG>}6B62|#RFUc>qgk~x3MqXn95=l?;BU{_rePu30Bu3PCr6M9dUa~I&KR3&L6L7Oh z+S|8t+aVJZH}bf2RZ6gqy*ExyV=LRDF$i|H~{9E(g|brY5o6esvIiPz&jL9V=w6w#{pmfW`x6(Ma|FZiga3bPTE ziR#0L8{@~;`zs7jKJx3FKjjSO4#_@ZGybU4S%9)nkDBQQzsYeNqwDm}3QE>Kk`2Wza#quI#8v$0=&&|TrVk?yhPGXq^gU2BW>TC*VH z^$%aWdeTt0Pd9;;=90Ys!|)|!VKuY2W2>$jz%jd%@mYo{05Am{z`U827+F%LGz#*y z-Ixs|FP?ILZmqNtn{6F<>}*5ZMLhO(WaQDh)F+AxnXtN6(j);kvi)?oio~s*)(k%* zS2EGc&4Nbqp{zcLKgml{n+$I*DfY$S`3|ktC%Zr5KR+lvJ&xHN5R5Pu3r^k}+Z4+x zQPmNac_Hf2ank_JX0rJ#>FdLX&c_RU1Eb!jL>aG>Z4g6Da*to&7`Za+db}vb zK1kB<)Ad}I|G=s)?O?H4m%wtk8vgZu*5NkD{HX-QzdihteM;KOds~>YpnjV=TP5#p zWhFl_MF_#urfBEpdGSlnWsI>CUnT(v;MC<7^2S7UV3^p6cmn$NE5~swv6;n=Rp-<7 zuzs?>U%KwzBs!$Y8+P{gsxHo-D56n}t~jj#o;N!fqME1i`fcPz=_qAU^n(mgQQd1I ztC<_%4NB*_@s*rYG_dcO!v2J{_IV;s3+qt+UTws8&}2RU84l1akbR%{ZATa0K|m|) z>{DV`c-3#H_wbo3thM$0PD4AOUhyznN@K2pawCc@`~K z5%ZPTEu-Wrxgw4CLO2FD?QI0KZ~;dQ*R*2M%?rZmuG+wB-wAJ*r2RaZ86X-&VrE3{ zu^e>sm4A`=hEfR6$Q9l4sFBF!+mI!REW);0K~$E=T0~f<`!~#fLpDIzn+<$p4B(^`dtZTCv3^??P-XRmg^5DU~<(if%gY)wbF+S2xx;7 zTJ5l$$iKw^$7rAd(Ssesdw0S$K+zG&56l4!RLxk{KY{6|brBxs-KCopdFx$e#PLc( z3c`?hi2=Je<9dYqN$B5~;uV@90CnzfJ(}Z=Z2+Yp7OAfR^8e+lciPzsQ0Ux`D*dR;u<^hjL$Tm|(S zqu-%sqtD0<{3Z5#jMFn}Xn8u?p|CyRgwHV-2xJN?GzMf57Z8`Fj}!pPiBZj{{i zQZAq(Y(0B?(c=e8ZPJu=gJk>|H)2JXWlOl{Tklx9j|+5zPaCG?<-(MFt<9E{?0uxs za<)T@f$*l>?F2=l5Ss&}e^{ zj!Uzae?Z2CXj2q%7auvvX%Y%6{a&7-0`V9<|MHkuJf$^ZdRde7p;H$f%Wb$oHIJNB z-`E|%+3>;s^Trbi@5Icm9mj_H&Y@l+_&Cl;`54SR|~hn3=Img5VXe; zr_qsmVu)7$l;WNH=eQKJ<}Q8XUvCUnn`bxtsbGDlYKHffsb+jCip)EikR}CuT|GQy z@@MxW@Mr?t0!ik!S_^uPeq;e^F+a6Vf;VW}&4XFKThk{I_Hz%n^It{A;L{NLD`_^( z&HA{&2F_)U7IV;0jd1~kLGh%XGoa)02oi;Q1O>hIR?B~nR^ve)clSWb8QL^2J5=Vd zJAc76Hcxabf1HfB+_BQmQ>eVl6?q}9<{hP!8Oy_J&-!}n&0ZbK=Le=$ZzG-&LM+x3 zpgE_wVP!9y+hb-Da&E2cok+PHN(Z9Oj3+KLsaS<$L{M6<-Wd$rduOH~RG{7@DN)0Pmv=~TnjFB9c(?AvYvl|aY5B~F?rjDK3Q zv~753mdA{^$&h1SXXjm{oe!^aC7b2) zCcpXDmO#^8aTjJxE0PIT9YLo*dg6r zi^*R&@0DdaRAR~T#>s85Hf^U=N32K#y)v`>%!g%N)Fm5rWm0N$Zf2j}MASB=$YOag z*^s3dOwDvpCXHGWxd9p^Ayg8TNV;FIidJf&X=Av<^+zBk!6Q3?XF5Eks=RQUySqq@HHJ!^X3_1yW*v!F%dqW1w?AiX}xtCMbo zd6J*tOE?ayryawR3O!CZ1{zP!FPeNlCmDY9u3D^k3hP}&oWD0l5UA?z-%xF=P}1fE z?4W2)p4(!*|EP#pQx8v?&E}5I11e5jM!pLa*JNG_Q4(O$S@_nQ>fJt@56^(~Kr5lk z(HW4AIRE{3^Bn{7+=f(W(_(@*)7@T$<*H>IvR(XjA5hb#0-zEK~hpT98mVXjF zSQ4TZ2?X>@tsARl!ZEnpajmEb=NgMx^QUF~BapP(9HzP>B@5T-bY zavn6#4C+*F%GFn{enRgc@`Om;u`1F15E=kzXp$M57g)#1;uW zjTvg(pDu{*6*dk0&Cg2=0+cRY{_>Ut2w`a7=kr6mtCGkr8)ptYD>vQujP)7*WEg=n z!{;+?R8QAgU06hzxT@=;-TiWPLs_s)2dUp4fqCFxZxP73E+pLW^K_m;A-@yMN^7!}65?}RtncF+Fp<3s*lE^Bm$7Gb4iMux~Nbjz%O0+U}y9k&8e zEY7BMzUMbN$O?f9(Y{Wo+0R*|7k0{$vc6Wqx7IePe45L{ius9_>weSU%>wah2WEEU z{+nHPqqXo~0SaIw;Vyz70}>@k%t8yBffTKUIC!ynTJwHui9^iCo(L);EZi|gZ|Z~h zQx73xq;*zjUxqrf6ZhHe<_j6>EV6M*m-s)m2u~N@iL}vwLf)eT4zY`)yL6Pk?3uet zxg}MFHQ3w9<7ftR6P6bKo7-Y}CEUGcHzJ|!BS1q(f2uOos{)Z9i2PiL_wx?Yi;@@# z*>62flf$P;-oTUQdbF8N@mp7~y*gSXKZtB!68@^vI9j8@+-e~%|9w3;$$ttu)cJKL z&??Tw&?#R?{rh(|12<8G2sy0-cyGG3HZsY--()lW1|-InJiy1KiFAgI!JLDm9G% z$2^RFMw{M3`rYW>{^h|2V%0k{3&gF*wCLe}lXSOypr0QX^twf+Dk@7pTuyjE8#0+b z0tXKtHJQ#V?~1ArE6e!6CmiV!-T1!6=99ZKex-;4zvdIlHcl=dcebycw~K!HL_^6Viz2GkqjR&v9=TZP$h4wK{lOsZ@3 z%ZgV;$yQVBPvYl;jJpzR#Z%L%M*F^zsFxTuck3rHtiwGT&KZ*NfTl@P1(OQk;Zl!3 zYsA+XXRsJ8HR*>5jFzpxX=u>g+TMpl?Em<52PM1aZMMZLYnMjkIG*o+8ZEnf(jQzSe#y5ES&D`}$g?N;58W5crbUeIETu&`6+Uys})VbVU4 zw_n~7-C5|s74x#vs&!T0R9GLy?yjGrJv*9HRLR|6W<1~O6xv)7)BR#A;CW&S?&eJJ zehVXAp|PuxdozSu4_ogM2oF^y7mdog7zXW`u6#OG|1 zFDC!^CLxa46ql?#KG!4{oI3F$1H8v(Tj=9}I?0+5~p&mqEIfHes+b2?k7Nd*GK$YO8c%|La}`q>r9#jyHFtggqW9xGKEq$=M3_cw8_BIr%KBF4evgD6d1FEh_lYse2Kn8 z`{VhyK)2biVwa%KxrP&=|H&t=uYG;EQWzv(cNQKiTQAOWw}wf7lxKdTRgBB#JKR(VR7d^G-AQ!JQQems8OJ=jS!J}ige@#Dx6iT+A=**rqvCR zu4<^RaGU{*VH0f&mQ5w8ml9t-k7rn32*m$d%6pN#yB4*$OQ#icnV#KS>{$)laT`r zl54LB;j=+KdX>{9=~cm>)5f!4Dj^I@208ui2K=9iBB<0NuHM~@&kA4s;3~Bo&_PZv zHtp-axHx?zl7)-m`bNDZgKlY?9*c}iqn3!SW?!IFv zX202k`6DO_dMUaa^vGnSn5wl_{h|NIAd)VbXjXMPD@!b@1A$l`i?@#Jf-?3*olR#vfik5?*j+G#S7oj~rqKIR}k*Tfdin@9EZ z(vx5gu?g1DUuk;YgV0}O(EN?rKpJ#H<@jlwD1IQ$`m^udB?)1oZHl+TC_GY}nAX!C z|J-YX8(XGz6aRfd|7BHV7ZASgGtzO%kZFH?IfRy8eJR7Dc3f~e<3B0Aq}c@Lz!)F; zBnA6#TL2;9P>Da7tQJuKRlxj$MhzPi_2BMXgxc93kLk3lN?9Z#a?=f(^M5YQr`uv@ zl~W2dK335%i;60EJ@PTI=G|P}+(&|Uq8=v&tvQpP)o)u}&dzH4y<(CcHJq%UxwI~K z@U?v#Yr}o|^i%j<>_Vqa_NYkHl4`kurR0b75h9w7m2Mx6UBuH;D7{WfUHENwU>ML^ zVUMeFYQI4L6m38}zhPt?LwuD?DqSX|O*$mw!^fo-g%qX!P|AgEmm$F%P&UN_a*yYz z2rorz-cDrG{R?R zcOuExt$$~xVy@paYh?{;;s-npyaivus#&`5R1g(vIO zR&cr?(K^aOV=2zuF{$h7=pCy>b zvItRGH|Y_-=NU(x?g>>B>XUChX@SZwtLn5jb-~s6y=z)qPkD zXlwKk{Zy$ka8U!zg=XwO!kd|$cor61nXg&GH&n@HQCW}cb>HM`S7&9*qC+27Mt$!q zvGl-nXe7_!b#`Py@N_c1Q=Yew9rNd)dmG%nDbC&(CBE){MR$&XA zR$BD|@1iEfH^an~K7DB4$d-@G#aPIYcc-J^iqX$eT~`@ou=rxVE$r?g(p@eu)1R+R z13%ZCoNP|Fx3pap>sSf#R0Eg%(g5&P7LDA}@UHI%LGxvNO zx|}e|EiToOqX}Z=#Pci&%;XxfJeEt%0II-~L)~Yz(#FoiLPelyear_yQH24@#CL~? zg}&Cnm8alfn^0ySZoetSJR70RCUWuTCwj&U;nP5ts6iIK5cq7H(Wy_|b^T)uzj|4q zpYLc-A}vi>k=ib{W>wklHaQT<$&I*%td#9vAfuvw>*`Xfb+I{b;`zXQepfYDD}Zvu z4($Ki?~yq($fGaX>MxIfkwp^07#>GIY{p55;Ir~XLYY*ya`?{f6$T_fP_3a}J2>d4 zWuST5UcxH1RjFX_9DmUB((vSSQl3NPdCLE8F<`e(*YKHkjl}!Z2lc6PL+YI{K+eW` zLxR|^Z7nD)Fc3=Q82{JCq;m^sRt}A2^^+Vsfe?4k!64UL#*~y?NQeOxpd3&n0)v|t z*(i$425?U@U!cN@oWd;FiIS2$M`=I_&bOr=-~Qa(mWkj`iiyH5bW$!tj<1xYyr?%s zohd2(l4ZiSqpmt^~Ehf9PuNTM=a%vFJfr;MA2;*HyNDhJuCWB1ymSp1iv9f>etKyFv%YBT1yM@AjV~_pyYwB-pZu|felJQz` zIjP;a*0gVwgayigcW^+xty`>{DGG>O{6eX!r<;?aXB&@80Lr6zFfZ-}YyZ7phTi0d z1wqE2FlTJ$mZWm}P_!RrtS2!Z9%3H;?N$Bl4gRCM263de+b)t<#3EtHd|pL%QyV!BlcW zW1Ad)Bc>vosgm5<8xg~<4fS__?>hifprB6t)(?1HCV~UF{I`}A3{+B5dCkq9JAaHF zQI1ag!2GE%{gLm+gea&`Xzq{A$H6&pB}^CT%^#}8Susb4Mq=iz7l4=k`0#zS%Zcj> zZSrOdtqcXmD(MCoUfelX>rKT=c|i5~YkUHN)K+)5gR|!zErymR$6aA!>_4J%)VeF4 zc>&^<=e7H^BnpEFRNY=5F_d3kUS={pj* z2P#y-&h;@-o(;A#8-(q7VYmiknQ~S!=b&a(dCT4xP^}8m`nuT;@(hp=b8O{LV;Ymv zKO^WFsgXs*Ww#7?*tV**t8;8kOnvvpo96#|jn{kOZcvM|1oiAtppWY;7-7R_^X}*O=r6P` zuwaFN|cry%L8{qM}!?#qDh(@ z>k}RLe>`Yl-k$qGtZU&U7g?>)pc4@rlgvRTnsR)%$IIBob3z^UfPvIJp-s=HxoxY`FE(4#OnBh*3=bPpX-?&*O7U5fU+WV4Y2e-NfSW_a z^D;O@<(xYAS2YZ1k^&3T&|PF#r8V(Q+TF!4))doMi2vuPchxZ?JhZI2pf}@Dd-MXA zi|D69SWx6UH4xAQ9}0wPzztv?IE5-nBg4w@H9Sf!XRHnG$K!-%{^M{0*Q3x3z61rv z&i*Nv+&3f>qKK6Exho)Ue{rcg!{Y?**vTvLgMVF^Gevk7J zH*Pdxr}ki(yqIMfIYMGTR*FgPZxJqN|7itm5f5q82cJvMd)yO*Oz;sO_{e}M!aNxO z+yD=2!3K=}TlE~TZu-?ipywUSD!TCme)@~SU176YtxQ?M15$O~n#bgSc=;vM|)yni-^))f0^EW?NSsK&x(yJ?=e4`%3o7S}y~9hNYRD=3&D1Bl3M zR{Cw?#k_cns&{vP)A03=cNA&UGx%=rsPrA$PHrNeY6cRx+!{M`mb{2X%bH1X>bzL= zk@hffBF85t4p`>CTUY2c zT538oGvf;&F>`GNM$2MdNd<6cXLk*nL)V}0oWH)4z*i(xn{7wT`W!7mur_RGf#t;_ zNuPGp5R0)4#76qtg)X}Rq}ryS*dsn6p=kcp|8DhBFWkT+S=cB!LjM~)L-m*% zI3DxCS4+LeB4^vpWM}10LzosU3aJkO&DvY}xWO4fH}$rb^-TB=>*Fo3DGUB@Y6kX2 z;t!7-M8n~;y(Q;!-iF5p!0iuu@^2b@$G(~Q5q1^-C^Ut4u`CeLjR}>Dc+c4uVSMo4 zNKI=xhz5bAxY(}{FY-tGnKa!gH5427iaaW>Bu=r6tTNX1vOpXJg~1m z>HCp4r}aGr48#*$iO%>hcmxE&QbBcJ0ftt8r39BoL=v1Nde+ZzrW*V1 zB}^f0(PXHc9s$wnYct=8SJ1+9@cb1g+RTCo0-z=v#MRBykgv^qU&5xolV_Img_qO* zaO>e0zI)$INrygi1O|OMp=&Mz?)$;oF;jRwT-}9HD8`eQyVi#f^E4a^L4cve)923L zF{K2tXC5wbJQhA9b{Pg;i3yK(HoNP%R|ecD5K;FZ^yD}C&NSH@QPriRc z#eG8T3l0J3k#{`-z1U$+Dx=jVTs*(0BraR6@HwDgkUHCGGb&jWv*Ee$#dS>sWM-tl z=6qs#%+gFtRJRUydl4u2rdY%9ztt83K(SVhGd#VFYff&q^u7j2pko5k!tc$sC&`8_ zTr8U8{CY>2Nl_dnR!JAnON@|tEj421)g{MDO~X{##v~9%3JWv04yd!79*cv5E7aR7 zBisWd;B;!^A^O4vQtY_r6#()Ae%_KT}PrvAou~T_oR0YBYO+5aVdavhm_m# z0ib`#*fcYH0^^PQ%20Q}u=q=rD7iC!`*Sv$$Id+ZxJZCF0_U@5V(DM);zd0O#Li1^ zrA;)Si;Z}``w{fZV7)4eRG<;F%xpl-3MpRD0V|03enVkO8l6(g;?D@e%QHI~rOc49 zh#hnI?1Q`CzrW?S5!xb76h@c2K*%@akYgGJ#7nta`-oMwmvmf4?XXGyO3!r`jf#!r zN$POEyP=cg6u$4(a-o@qs%!>Sig0xB* ztSoDoq++Tx^R}#H&b}yz3cC3Z5oMBX=7>2bovp3yzklSMEApI>do@z^h=%Y5Q{P2v z93I!3g*+TLH@CIP^Lrrd`Igf==oWjndunQ;{`zPXOKy~zZeG%3;;!cIlno}ubS7|0 zda?c9-(;YeZ7^RurBlG6m6Au^@{27|zd#tZkRRaIN&%kto8aIEa5O5^pVJ5?-N^F% z^iz{K_SDDMjnnX_$$VR!t_nq*D`qM*<#xE7mWA$dF`vb#oWRer3Ba7=ex7>iU7%4` zC3yIr0W+LU)A6Trb8k#?b68ZKvWHxh4dC#Erb;qPig<;-+2T0!Tr55LRLbBHu-Ce@ z)FZ*9Rmrq7-|5R3p+IUU;7U&8CM=P2steOodaZ`;I+UxObr6ZM0;v6R_!QTAhqHDs zKsXaHD*1MIL-)mQ?KE|~jcisZHe`+$Ic3}!N0$sDwg6#3VULsh2WRDv)gQ^~beDm! zi&>Q!FK0d4k@_Dt%vs`aZ|G}ri^!|LEfsxQ;iBgL4#n}&ehe8 z3XM8OtsOi4K+p_OaFGJC8Mz(2_ga!|x%0FyR=6#1QwzI$zmN*b8E+;97h$~b!X|$} zFjDeT%_Z&&?-wKa*wTh!n>3Zs&;D6X8{>n|^v#~g?q>;TxA!Cs5hPPATnma#ome+q^)d~^RYb&HrQz;6 z1#iDLaw8~XQld-od!I9OmL5v4i>5XtzO_dl3b;NShl~+Alf(iInsHMA%>)Q^i`?;! z-~YkKZ#~V&s#*7(j|T-dVBQ~)ltgj`@NANgHCP+&IU#v;vihNiEK%oMcmBGN$#~@# zvzWnW$NqTJVnlz(9SdA@8VAZa0Or%T)U;3kJV0e-{oNNkV?b#brUF=AH1HVYqJ6@` zgydp82|>~0+ZCs@0C`HRrBUUfRlH zZ6BCRFrEXRinPX4WX!tP%E^fWPWbi2l%M(7)^}yy6ZNS8wNbj<@!|SZ+Mrex+vDh5 z7AS~CK1+X=1P^E}8xM4Ob7Bzg+=(jGKrj#pqtrxDMjvA67O^*}H z4jElR6Lkj-g5Q9$cGNikzlbelV`C@I6Qs- z&!H$8N$#IWB!d8mM83ppdcls~DY|?vz-9Q;8_=tM8yb=zDh}CB^!7M)OcDRl$`a#3 z1)m*__{f`F$Sb_gM9M)!CDVO!m>2zdwc~n#i*Dy@Rx2iC=OVFt`o`t21p3!f-dD>~ z>$e*b2)zO^uwH3qCao{FWUhNlFS#HC8QmUxOYj-;aj=~`b{4i&=jR#X*$xY__chCz zq@{_5K88<^#kTHE^!YFdmvw+fZ>OzVIji@1%~3ti3$YVem`(!ArS_t6%(UWZuwT4a ze6_bOM(AKjpQO|a<<9k^)n2LjuFZEsP8-RJKU&S|Haj$VlR;FA1ulk9cz$Xy_xw>= zib7fjC`rr3h$_&o&PIg+@=Td?P+nJQjh|jp(OhI8(_a?u_>;Wwo+`Tp6bgM^Z*WHY zC+C(BEpH}t>#S@qAs!d0;bO7wJJok-F*fsWt>i_cMl{ZNou?p%v9w@Radk?)^O)9g zn9*OZPBc;(Ia8PplO&Po{&8u2cKQ<&?<(gOcODU| zxu%YOa@c3NXoZx-ibJ$gi$46a)&AypL~Z@scb^@ubAO)_{4OUO-9Rmw+;;$2X&a2G-p_5byIm-A{{~9cl;-3H4BVBDnn;pk zvmpZ~%n#FYB~F%RB%UM?CublMXv;I0LI@tP_9_i2vam7A@2Kb&z9YJqrhEBu*P4+R5+dSXkOjBjPL>6+$jx{V zstr;dD?i}MNIDb6f-Ld_kYm$s_cVJV+b*<+l>F+Pj?pb&nHrFbnta{9z}AQV^8+&W zlw~#xs2RT9o&C}rFg{DXzT`3Y6tA$Pfng{ge`eG_12tg^IjY(`84S06-KtwWBKm3Y zn}7Y!kFz9bc^jcy2tDxGeLisf91s<2e3u-$^yrFE6B=i<&ePPGx9@aglKu{^XcC1R z9~sn~4-^LoIi2r_BWEi!hf?#X5NAm7W3p*?o;n= z17*4oSv=6PgG6BmEnP&OtwDMBy`D^0XBKR}gN`HhPt0XcCs01}_sAqjus~~TWFQ#* z?~8#EVD4QVSmiE@PcLuj|Dw2*AwPGIJ4UC<{-L_ufnu7p#lGF#t?Eanf#qR--L}Bt z^}4H=_4@q9qG6e2`YW3dbo7pn<@fQTCZ~1La08UsQ3fXPD?2pA20Q8M*>YWC4Vo&C z<-A!2Jl+qs3C46KN@eYAfWw-9_386l_f*C6ILXM!LLF9B(*PmpwrX-KiSnS9$JR6r z4{n*VR4WC1F%Ikr{3+8CzW8gJRi9iCU!l41)t3;V(@*%oC?hHPVlIQn3`0%bY5(H< z6kP*x|0R63vL6mL7x|PYH)`h7r0yZ-D9F=6J?yQ+rnm(b*jF*n#!Av%O~wp_{f^>= zfd?f`JkXGJV9K&J`qfzEKfhP>Y-w?y-U;wI3U#DOt=k(Fkk9jBF|Wg+S@dz;C%?_I zA|Nh7GdHAL@z65`Yf0=0atT-SajMjm9^lpD3{ZT5sEmGFv(&^F(DURN#9}}V3Vc|U z&_Sig6ZwRDnrm<>o^(Xa8VHGM*)kRD$J`IT5GTLx1hYJOh~j!V=K zW8OFLAe-}EJ#BibMySimo(+#h!IcO^A$=Ka5iJanqsE7c2`d&KKn?#)lGnx$G?R{f z?Kzv@VrbVtz9B}-6D6NPPBj*>6Xd7H;cMrcNZ`?wna>IM`|M74b#^!F82Vsw6*|>> z3a>8rO#DF$Ie=B9N3X2*eij0>q`nu3u4#wONhuDiIA(99U8FC5cVU9 zES`Za`Z($qSu1(*doS6i74xUaTic(~DPqY9ivw~6wBPrkTIhmEO-GNura(aY(GGHS zuccC4MU2?SWNpa(`q-#+c8bg``CfQdd%*1}NGp6>T*W(f)DT*q#~C_Ix6Wam+rxL65|_;@ay3{(3~O-F-SeslRxKvFiDS^(AYefWfBkr-)R5lr z?O@frGyu*)UUM4QG#ru}Aznvez1h$}j@t*M)b{fEsS=R_&8sa^%v&}P5&I1Zci^ty z`aBuP9J7Y$)%$&PVY7Oau0Fvf?5^S}kzPrEO>WA3I3Jh^Gsb?eRG|snxh0ok$Ah>Zj3Z>yuV1v#B!$v`b&i$T5iJ9^=RLS|v zZyt0dYG?_K(Egzjg8O(UgB*S&W_oDQ%!ZlK&hIooQ4ZhyR6?dJ!-ij3PqUtEgBw7( z&r|(RdPY_S!3Z0wt;O}3Mc6SKA+{kz8WaB|8Wi(vhi;8D+1C5N8`UfE=_Ece36nZO zSKZ=EQIe+>o+WSV7%B)a7n#D`qGXl>TdXf{*;2=akAJiEy6L2zs?YRv^IO40b;N$j zgikaX-q=8Pr-X@PLdznp#rfR5l76F5+!3OiC$5zOSs?Pv>=P* zd$*lxvMuR#_w<5*nk}}oi=P!}Pb$5x5QJz?A)7Wz=(q_vi~r}XaLDaf!ou?- z;X;DRWPF`rK~#?r(@02HA7=(BtA0fSBH(iCVGK_H~fnE_rW z&UIDevT~+z)DL@=V!rm@91-mRrf?P)n!Z29Dh^p#r}tdcde)>A+-+MmNm(kfiN=dg zbkNEpiW?d04FGNAo$M5CM}zu4GxXG6kk!(OiWGf=R zYWiDGzu;!0#_gSQL&_dU$B>^Y_;e0na1(^qli%P59P>G@(M_@mpc$oK4#ou?ta$yl z_^Dj;Z*ZV|`+gJkhaK+3)S)+dvFm99@%ez~tmp#Q`0fD@5=^&YduI?_)A=KT`?eag zU;qBl*h{a&JMo9k&;MtAg_DAn__k-(m>Dk+0u7RS(`teS_1ZwMX2gOD=>2yr<+NMr zie7%TJx?~}nhZ*&on3<1?Ab;<-n6U0e+_`+nV5*Q*7uHmrAB={VSGLif$T@|g>ZEU z8WNB08>UPxS1T^73p~dZCy+?|Lk^180qCS3SKsPE7!EY7D`0LaPKmGe(v9X*j_~VM zlqKTjjl|b&)J~%}Lx;~H)&m8OF<~JUw|tTpckvfK$XGpH?5G7*ZexnE&5r+m^G1>3 zSU!wVqB6r2Y_fP9mdc{|F*W34#o} zO0*{mR(I(rH3%d85bm1pt>rk^^E!@_>WL3s6yOj0FF-9B@(#nje2si@y)LstfAZA7 zJJWJcQIvVK@|Ngv=k8Z$w^8I;B5b)zy=J_MTb4x6p5098_xC|Y@;E?PoQ1@CSI{@e zDGjk7v+kvWFi2%7i?R-T+zjX+n^K7H(-oupZCtwtekI;Xdt3c{>9hN*^teYWAY*%{ z$cFLyfm{g4*b-^o;q56#mJ2yX{ADRNK;hDv$tpK*9A5X4R}63ar&&$Y1ZlM{;c+jj0Y~p}=AU9)0?tq||>*OT&9)ur2Nk=#S-! zC$|raZ5vP5yJ}vNYLb86H7a~pUJ`M=^Zcfx8m;6@+#yakV|#DGoSb_nJbK947|<@% zG#`D8sS^gR!bqi~oqJOMbj=$Z4Hy=mpr7pNxealmUbF2TOK|&6o4rhNN$_T^Iz)*H z|5+`1)IRWHTFtBy-X~IOYJ0}s+15_FXwn`M$YvsZBx^5_vt3ZAZ!`(i#{rR7@Jt*h zMru91c-zO9irBBD^BI~Ck=9%yKfN~RH|F$~>^=gbS54@BM@hBh&b8Th@Kz-NOV^Yb zL&Ftz)1m}TX-V^(Rt_W{63@Wy{FF6;>c=O2my6x z*K5_?tV?foB$RV|DsHb39H_Cqb-rKc3?G_7>p|=_4P_#!f9NsM)G%R%+sy?r``H+Oc79wAYA_Nud!waIy66MdwkFDtl-U~L28i?7{-7Pws#(Ddko3t)z|fOT z8~4-qZsokzp*Qx`HZ>E}mS0QlLr&N=Gd%@Xl1~JK!Z|hytUxBo_`iUc8Vw))dsccY z2SO*0GHR6IBq+EcMByGW;!rn5dt|e`)Xrg{*F>-aN6DR~YeClF0Pz$^eEL;r>Z1|a zX>j=&uQu#d`U9jRwUc+k*zvy>K3oGyI=AX=%b4ZrL_$BOSO8y3q(;?cujfYnt#{xR z%Sl=4{pjEo>A$7uT|q0VUg#q}ABe-tL=8J|Eh7K=u)OZa^}GP%e_r44bAXT2)Eq3k zA_>o6lU4wS&aHv6-;Xwr`|HE*Uz0G%4rc3U0qt1QEW&<9d~;$D5EGcv&8+Z)8z1X;qg$z{)4(_LCqyxbqT=D=% z2S+Ldy$NoB>{O;0AxigVJI~bxHgI28;s79)$e-4GQ~d%9TNkx@X8rwD!^K;B|81cJ zt+Jr@?RFe6#NLj_oK*sd%0$T*RPV?GF#1=l_-EkmK|8oMobj#~tD-7!N?K2L*LZ2W zotu!)YrAxE}9SGtd3JhpIHUP6eP=K~`h#TR_#qU|~v?ZTFZbtFo>6 zNu&W)<0Hm|T)RoM>Oj?zKbjMm;Y#Bj@WqneUb#E>1BhR8NB#=}`d3sGcw0JNn00Zf zh{{R4$I}DvL2TGGOv~kUHc&$ahVl2Ap3kqQvr90q6`1Y_1eN81RCw7!Y$9@c|J9j@ ztXOA&=a23cc@$Vnzykb@d~U`~Ov~XYLEB_e^SQ!ME6#n(2n-`s3tdV@0(nK#Kf(GV z5sa9_Yy|0g=3F=ZKu8^eY3(wMg<9+|W32nOX^QlsK!75&;B&9AvBd)+|#EFUj-Asw$)i0F?9}e*T^|5dl z-i#?5DZY=Hg{1XOS}tUv`?^mJC`cfD+#qF0qNtj@JLF~XqX=x(na?I6nXT$d8t`(cM-eHj77s|PgB<)AVr;D?Fq^p^r1xv1FUnQsMm&>_9gH+ zGIGVbED;g3>%Rokgo$>$?MQ6iUQ%R;!`=(lzV6O%B5Jt&1#u=vP!0nvG{dQ22NMn@ zCBLUZRQ7y)JueDHzziyPk{?MMV%?goh$%XgwfC;dRl~2*i~@(JIxJzT|MY%33JvL1 z9d=k5-@ZXLUl-z~BKIjlQF+0?opVNv_2OOa|wb$#CDAAYv87 zqe}KXe5k*d`}O}l1j35(CMK{s6q`~%S!#gWuZP=5XE~BC@X@G)pv3P1r%Vb*&qrwq91vJK+3HMr^rrg||bOyL96G=uFA{|McJ==BbcITKt^n)b>XCrVs| zIpw(Xc9+aM&FqDEah?wewcZIqa1A{c!C<@u?){BEW%YsX0ZQ`^KG==5xRGvyEtusR zon?AAQ|Av8?t1R|+yZBp*hUiX%zpu!H*dQB(v1_&Dg!pG1ue{SzyGYlf47fo4gCM= zw6p1B5F!l1rr^~ZE4Kg?Qh50~wHPEMB+7XjM1T`o0!bay7~@800=c7FwhB@4nTou$tGy1kw|!z_Vg|HRz=ef+;FeCnSVaQTnR*WEUPRc7CGXWzS`DsC%kVUTF#N;N zkJGlstm^$MD)^{{os%^*Yh4`-0XpaM;`Bba-}vqHw4NcjP_8dSUP)gA++xaFtOnv{ zUg}L@G`LPqP9W7z0#GZxxWIOAN00mdU%?XG)qC7^J68a5zFJV<4Y0$?S&GOYWpC_# zayipx%z%DMy{mLRpgYgNX1{Z$vpflIP(njPgI-2pdTi|_z1y25Aip1wXM z+ws!iX$i=8~HfB_S8*}E-)zu|RY{miIyR&f}IQe&iz0qwLOq6m4QB9Zb{~KKGY0M*w!W)xwyRY`@%_jZp?J-LgqEZw{q0 zlN$n+i7)=Ywyr!L>h=3aDB@PS61s^DF_w!^(b&o|*368tU2C?nE3!sX-K-Tu3{5g* z#xgR7WLJ&t#?3O;kbTd-W%xZ>?tR_9KmU%`d|vaM^Eu~z-p@Jb-S`;NfLGmxx}i-D zgMP(D-wJV^3cmH9J@q!>PE;Gv|~VtB0CG}f;CyN8uP00z_`JKNfx23Nuv zbY-j>7&j=9@gVAx^J*O+x=SQ5%!EMucF2quYh=qtOXUrs;#Zf2+<;6i9Swj1x*@g>Qz#> z>c-Iiu}AXGExf%Ofcj2TzG;~53?A`ttq~?=S#o)Ihha0>)!ZwCkOkWxkG(KVkMcR? z@g9LdZ1Be`+10UhI%Se$9x&}^d$NL6is6;9=A5F$T*xPL548f_v|3c5Mfq@f_{*-R z52B)g-ckAL8eG8-=vj88mMvZK_VtbO(V0_O`UskwOy|l2m$NMno6&CP=H_l~Q{B3d z)uv?YSRlzc>0nWyJ-f(fgWJ6RPt^Vv5lWh z36xWUU`M`G$rre#rv-Zj!d_mVFl>-NTIL+qQ%PRyf7ks>prd);XKI+$6=2-#c;SebmpLDHYgWPFgQm$oR*;h>H>UD;XaYJt?IpCtQ^H7%~8 zm7nJAN-(9->%oZaTh#6Tsc3MTU5sC)sZYXwyp03A0IL1TBQj)KFfx?C<MyM*$*eh^o}LoOL`BiJ=n4^ItC#k7F)ysNQ~0-rYVS;2$*ql! z%L%m~)caHVHib9`=0>KU`2JS4v*kvOi*~0?WsFwq*<>+NOG6GjwLZ;{*V~Mt@3y2X z=lX!f_}1NheYtLs3?DFviF^XP)^Nm+>zY+#chcgsSR)x38O~EG-S%CaaqEX_4*!S- z-*dw6lyE6n^xyM>V`EN%PCi>JuB+~9B?)3iq~L(S2Z8iFbM~OM=O3HJ)&`WTCXOvV zFICxn^ab5Rxa5nM_DBr&3p70=lV+59ZYpbTl)~N4gs~^{;;{tzWiQ?zRHSVvfD}>- zsk)F6AP?OUMvLLg+)3zAFrcb=13?uMw~0m-Gb_gs=yE1a7~x?kY!3HBU9+=Z))<}? zZejQdh)}{TREThVlz%WXv4%c4Xv2Ds`x@v<7AgGZ`XZA!mB6Accku2eCXc`L=u@m%Zc&z~Nmy3!8nB|O zs}PEAZY+Ev$@q?lhQ`g=kr+i`R_$#Sl4?9Q?1AslvyQWG$DpQiRoBx0$b1x2o2ea7 zvPCh&d$_ru(fn%P8cGl#R#-P^MoB<(AORBuI@vHWjk~)v0k51l4KTS=B7|gKc7kf} zRy7Td<^zH~(ddAHSNux8nvzWU{R<5WNpQEad%jgbb1ipqbA2$Z{-Cea0-6c;(;&(a zmA!kKa&Ux^*{|HhAgk~`nghDNq%Gup@YvlUFuMJA#v|nTqr_mZvTE!XUWBk^q@lN&*>iqQ$0QZQ z$zt%E-cDhXtzI3(;dD+qu(IW}!C&_e3l7%{hII@^c0^RNaq(9aj+6RtG@dJwW8~^L zLh%MTMUR+$o#)>d`b)D{ibN)sGRN9^STX3H93lr3{x&@%N^KQX_U8nGOcn5L-Uv>hb$cq4gx(^D@)G#b zxToejf0Q$M((_UEZk+YB-mE5n|Bp{Y?V1K{)<{p>m3vRk+Rq?d#RI)w#e^)99K^jNWGuC*x-pPoq2!-MVVNiz&y7sh^VjrlQykHO7)-M%*NA&n|)fpoGB zIq8G!fS{O|+8E{W6DA2fcEMaXWYA;h+tBCPuaJ>7?g84TU3lhBYEZMR|N2K{M|vY9=Skbe3DU5C59vWwBxW(_H}kF5;(4UhKQW*q@Pjn zBT^M)sRED@{v4mX85RMIsTX*X_$@FKQBdbTSMA*J@Y7vH3dij5^20kK5H*7svj6rg ziFC&(=M+zL_5e6dQa%|v;su5-fsm{f(w@_8#>~Wt+~DAw zx<^!fJVH9H;BT32ge?_<47JhAJ8sQSPm{9I*j+aXwOA-pZ)#s>z)12#y^~<3GIW^3 zCxQDJe_v(_L}U_tggQBl(F`dl+R2H0s_Z{&?Do0p%Y3;E@)dtqTkPk6aZck{27LZp z&mtA4`cn~P%f(!>C0S>|j6}2^e2ln_kr*1Ia4)lf5M|F*{h?dy8v;>V0tiHOZ~=Q# z9ryYQJw|_$KUSCB7;+M;Ae>caOxh=)=$=F8lrk?OSVSXB0L(h$&zgHYq;VzBZ-yRP zdpc`B(&27~;w3K)=|s9`AQXWMI=^-cd$8%4tQtEiOx{Vf zkG&ljaE^TS3E9nmx>so(Gzl9Jc%aG%CQcNV%+r41k1q9^-VDEzy z893?p-=bH&+Wq~`UafyGk>0q$!p8PoJN^_&7)keWZzJedNbUK{$CHg01?18(^ZjKG zY1)=XCOc#z2a+h6*i_SvqbGq3YrBW+Qx$R>Im}0Hji=S2<8tp__sRe4%7JuyGZ?n} z+r(B%@B3ua-||*bTPM1Tt3muT<$2=To*in()$uBu@o24bngf|Hh9-zoq*R{IqO z1|_%utzGsC3&3EzFPcX}SaK``tV`IY0nYmXdJ`%6xB0s$Y@m_}R=g4=N7Lc*l<9h?sbet8Ic&NiXJ2*Re`}@t1Q%b zyDS7v($~R0mbYbWq{s>YL^VL(Un$Y;%c{hOEIqKef8(zwvJ&TG$ir>@Ow*s<-2YJU zhce0lD&)Ddz3H&wis;foUNQ)G3b37xkrVALO+jfO3D>6rJ-IM~J(?u- zWp(C0@aA8#v+pPbow!rCp<=Baz6H|XGvGB31)vBmFxI0E7HJD9ePCxdc8IsU;IugW zZscUCMWJMYiMSQ$MLdDW!fn}Y(RpUK0nnBR29s3^Rpov&Y={xlH9jTJG!FcjvJekl zZYKt(Sm5Zv=js6RlH`gK6Yj?q*!N=|T4nDZrX18eXiN?EI&k3r37HpeXwzW&>1HS& z9{MDh!{&k@9{W}hq#SlUwxVkAwaT%t6o*;SUe`y}MH(EIVvVlLTptKFLS4t;BEySl z1Qso@VEbzOLY$zgHS2xXHo}MfwcUsX%ojH$ZtmA`1=mk?cRS-p`+cq0@glasN)?Tu zJ1~!h05-v+QTMK1y$U+VM3xRt9 z?jojic1hkL+#<(VNWsH!dHg-fMNEAPFbr6~*(hD9hhQ=oPpaxzI~ot9l*9#l-dbuX z_ki%)>cUi-X9TtLo1Jl*rb!f(>Kkk}`6bPWDT4jr_o}N^!Gag|GS{T3I{=Zeq!gKz zM6%?_fuxlVri0N{+1WQ0Z;gq}rYU-)zBV**lyWEq^$}(k-Z#o+wVC2>!fKfX=lLjG zunz_E2Jo3@yXj&cB3u9Jpa3WuJIP;>nK+8prnPxe>8JYZ*A1huRl7zwreZxQD|HmM z8mly5JV4_e9&?sce$t;TfEQ>8i+4-O=pIq5a^?y#4KCu!nFQck2!<5^m0&sxvl{fzUfA~LHif~kUX&$c2*J)S(cAl0BC zf#vV{`T6M}mo6R7tic{2jPnJs50KhZzV35cMr+AO%0Ze7*k!D*h8cN=^Y`f}$Hz#e z447)X2SS}H0Sh&wmPIsjynZwkG0|jp6rE`_OE#~KU`06+D>zTr7T>>r04x|M!bBbP zB~opicn7%(S+Y!oBxiD)e2Ui^kR5U`M@gLkSipj9f*ZwRgUqTJ|KDU;1LY~qaz48F zQMF0$4XB_MFT8mqK1zV~J^XStg#mX`Z+mJ)&`UO~ES6sHUn*MN-dyfvY>eZ) zI*@fH=Hj;#kOweKr0q{K2+rn?+NA@PEZ)CeyipU*wBMek%=hWW&YxjCOr$h)T}`Zj zl07&rQmV|xHA_S(BM4!x*10V^2tc`XC>BA`Zu9GPsTwsS#Ch8n@mZBV*S_W`p_t6_-fut z^DDLjB02VDkWv*H>yzrbnb)7Dw@RvT{Q`J05>DIoPGl!{czsFqXErnCT`Uyc(Vb+B zKC}h~*D?$4_XjkYjcffEJ%=-Av$}sWzZ|k2Pll@Td;&b;Hjs|MG>U>!C5i2^Ic0RG z51{72vK~O8g<4x%B~NI)Os4FE4Z&$>6O%hI11-P&D%s2M-^y=Q_ePtKS z{8ATy5pK6cXKKVNu4^z){OUREcByh)$g2|WVwq?5vMcD;)0qFd3ka;wz7|z_)pg*# zT;^Cbe~=Y#R`T7eY)=78kNfERX}|2mC3W~CPJ0#oBB00#hJ}pVC!2b+Xa<&g#b9UE z##*1(qYKx^kxKL)yPpF@At#e%=y5x~*FL2YU%^;g{nSfcBi#8&|4S4S0(*JE& z`%bq;|617TeDwGO50_u}fIhIy)gP8wkN_Nf6$k26!v7fbe~I!!_}&W}*wgLuvuXZ4 zz#j~+@em5Mn}qU^R7C%|9r%C#>pOFAi)G&3zyDHb$6ue@g!h3z-7AKd3p8va{txP4 B_^1E? literal 0 HcmV?d00001 diff --git a/content/static/2024.11/images/editable/Flow Execution Requests - Overview.png b/content/static/2024.11/images/editable/Flow Execution Requests - Overview.png new file mode 100644 index 0000000000000000000000000000000000000000..c520d02f26e0efc29a3a8ca42cdffbec08e75719 GIT binary patch literal 603554 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

    9eHoAr!3b-IL2A9U@d1NX} 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

6HsTt-{Q)0( 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 RI>(ovGB7?-c0ssI2Vi?|w00001b5ch_0Itp) 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ℜJl;1tGUUrX~KWd{0G*&cQNK% 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