From 0b7e68d14e200d3b10f9eef1a7ea2dce7e56b4c3 Mon Sep 17 00:00:00 2001 From: aB0t Date: Sun, 30 Mar 2025 21:42:51 +0000 Subject: [PATCH] Release of v5.1.1-alpha4 Add all needed Powers to the release package, to speed-up the build of the demo component. --- CHANGELOG.md | 7 +- ComponentbuilderInstallerScript.php | 2 +- README.md | 6 +- admin/README.txt | 6 +- admin/sql/install.mysql.utf8.sql | 155 +++++++++++++++++++++++++++- componentbuilder.xml | 4 +- componentbuilder_update_server.xml | 6 +- 7 files changed, 166 insertions(+), 20 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index ef056d548..a9c9eb5e9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,6 @@ -# v5.1.1-alpha3 +# v5.1.1-alpha4 -- Add edit and create options to the ModalSelect Field (in Joomla 5) +- Add all needed Powers to the release package, to speed-up the build of the demo component. # v5.1.1-alpha @@ -13,7 +13,8 @@ - Adds the Data Import Function to the Demo Component. - Adds new country related tables and fields to the Demo Component. - Resolves the Database Updating issue in the compiler. #1212,#1209 -- Adds the Component Commands Plugin to the CLI for Import of spreadsheet data-sets. +- Adds the Component Commands Plugin to the CLI for Import of spreadsheet data-sets. +- Add edit and create options to the ModalSelect Field (in Joomla 5) # v5.1.0 diff --git a/ComponentbuilderInstallerScript.php b/ComponentbuilderInstallerScript.php index fad35e484..1857256c0 100644 --- a/ComponentbuilderInstallerScript.php +++ b/ComponentbuilderInstallerScript.php @@ -3292,7 +3292,7 @@ class Com_ComponentbuilderInstallerScript implements InstallerScriptInterface echo '
-

Upgrade to Version 5.1.1-alpha3 Was Successful! Let us know if anything is not working as expected.

'; +

Upgrade to Version 5.1.1-alpha4 Was Successful! Let us know if anything is not working as expected.

'; // Add/Update component in the action logs extensions table. $this->setActionLogsExtensions(); diff --git a/README.md b/README.md index 6a8280c58..784bb8dac 100644 --- a/README.md +++ b/README.md @@ -9,7 +9,7 @@ The Component Builder for [Joomla](https://extensions.joomla.org/extension/compo Whether you're a seasoned [Joomla](https://extensions.joomla.org/extension/component-builder/) developer, or have just started, Component Builder will save you lots of time and money. A real must have! -You can install it quite easily and with no limitations. On [gitea](https://git.vdm.dev/joomla/Component-Builder/tags) is the latest release (5.1.1-alpha3) with **ALL** its features and **ALL** concepts totally open-source and free! +You can install it quite easily and with no limitations. On [gitea](https://git.vdm.dev/joomla/Component-Builder/tags) is the latest release (5.1.1-alpha4) with **ALL** its features and **ALL** concepts totally open-source and free! > Watch Quick Build of a Hello World component in [JCB on Youtube](https://www.youtube.com/watch?v=IQfsLYIeblk&list=PLQRGFI8XZ_wtGvPQZWBfDzzlERLQgpMRE&index=45) @@ -145,10 +145,10 @@ TODO + *Name*: [Component Builder](https://git.vdm.dev/joomla/Component-Builder) + *First Build*: 30th April, 2015 + *Last Build*: 30th March, 2025 -+ *Version*: 5.1.1-alpha3 ++ *Version*: 5.1.1-alpha4 + *Copyright*: Copyright (C) 2015 Vast Development Method. All rights reserved. + *License*: GNU General Public License version 2 or later; see LICENSE.txt -+ *Line count*: **978935** ++ *Line count*: **979081** + *Field count*: **2098** + *File count*: **6625** + *Folder count*: **645** diff --git a/admin/README.txt b/admin/README.txt index 6a8280c58..784bb8dac 100644 --- a/admin/README.txt +++ b/admin/README.txt @@ -9,7 +9,7 @@ The Component Builder for [Joomla](https://extensions.joomla.org/extension/compo Whether you're a seasoned [Joomla](https://extensions.joomla.org/extension/component-builder/) developer, or have just started, Component Builder will save you lots of time and money. A real must have! -You can install it quite easily and with no limitations. On [gitea](https://git.vdm.dev/joomla/Component-Builder/tags) is the latest release (5.1.1-alpha3) with **ALL** its features and **ALL** concepts totally open-source and free! +You can install it quite easily and with no limitations. On [gitea](https://git.vdm.dev/joomla/Component-Builder/tags) is the latest release (5.1.1-alpha4) with **ALL** its features and **ALL** concepts totally open-source and free! > Watch Quick Build of a Hello World component in [JCB on Youtube](https://www.youtube.com/watch?v=IQfsLYIeblk&list=PLQRGFI8XZ_wtGvPQZWBfDzzlERLQgpMRE&index=45) @@ -145,10 +145,10 @@ TODO + *Name*: [Component Builder](https://git.vdm.dev/joomla/Component-Builder) + *First Build*: 30th April, 2015 + *Last Build*: 30th March, 2025 -+ *Version*: 5.1.1-alpha3 ++ *Version*: 5.1.1-alpha4 + *Copyright*: Copyright (C) 2015 Vast Development Method. All rights reserved. + *License*: GNU General Public License version 2 or later; see LICENSE.txt -+ *Line count*: **978935** ++ *Line count*: **979081** + *Field count*: **2098** + *File count*: **6625** + *Folder count*: **645** diff --git a/admin/sql/install.mysql.utf8.sql b/admin/sql/install.mysql.utf8.sql index d000f284d..ad73fbe29 100644 --- a/admin/sql/install.mysql.utf8.sql +++ b/admin/sql/install.mysql.utf8.sql @@ -2120,6 +2120,151 @@ INSERT INTO `#__componentbuilder_joomla_plugin` (`id`, `add_head`, `add_php_meth (66, 1, '', '', '', 1, '', '', '', '', '', '', '', 1, '204d6d55-d4c7-4162-bd2c-39d19302b406', 'The plugin to fully integrate componentbuilder with the privacy suite of Joomla.', '{}', '8aa96d76-94e3-47d1-8dd8-f430b72ed0f7', 'dXNlIEpvb21sYVxVdGlsaXRpZXNcQXJyYXlIZWxwZXI7DQp1c2UgSm9vbWxhXENvbXBvbmVudFxQcml2YWN5XEFkbWluaXN0cmF0b3JcUGx1Z2luXFByaXZhY3lQbHVnaW47DQp1c2UgSm9vbWxhXERhdGFiYXNlXERhdGFiYXNlQXdhcmVUcmFpdDs=', '2d8677ea-cda3-48d3-828d-da656c52dbe1', '{\"method_selection0\":{\"method\":\"ddc9d897-8902-4ac3-bf38-f37e6af1a46a\"},\"method_selection1\":{\"method\":\"3692862c-6688-4afe-809e-c6677b318fea\"},\"method_selection2\":{\"method\":\"1e9e7ad9-ea31-43a2-a288-ffaa4bec5101\"}}', 'CXVzZSBEYXRhYmFzZUF3YXJlVHJhaXQ7DQoNCgkvKioNCgkgKiBBZmZlY3RzIGNvbnN0cnVjdG9yIGJlaGF2aW9yLiBJZiB0cnVlLCBsYW5ndWFnZSBmaWxlcyB3aWxsIGJlIGxvYWRlZCBhdXRvbWF0aWNhbGx5Lg0KCSAqDQoJICogQHZhciAgICBib29sZWFuDQoJICogQHNpbmNlICAxLjANCgkgKi8NCglwcm90ZWN0ZWQgICRhdXRvbG9hZExhbmd1YWdlID0gdHJ1ZTsNCg0KCS8qKg0KCSAqIFBlcmZvcm1zIHZhbGlkYXRpb24gdG8gZGV0ZXJtaW5lIGlmIHRoZSBkYXRhIGFzc29jaWF0ZWQgd2l0aCBhIHJlbW92ZSBpbmZvcm1hdGlvbiByZXF1ZXN0IGNhbiBiZSBwcm9jZXNzZWQNCgkgKg0KCSAqIEBwYXJhbSAgIEpvb21sYV9fX2FmYmI4OTdmX2Y1YjhfNDY1ZF85MjEzX2RhZTVjY2YzZGYzZF9fX1Bvd2VyICAkcmVxdWVzdCAgVGhlIHJlcXVlc3QgcmVjb3JkIGJlaW5nIHByb2Nlc3NlZA0KCSAqIEBwYXJhbSAgIEpvb21sYV9fX2VmZmRhZjZkXzIyNzVfNDI1ZF85ZjUyX2Q0OTUyZTU2NGQzNF9fX1Bvd2VyICAgICAgICAgICAgICAgICR1c2VyICAgICBUaGUgdXNlciBhY2NvdW50IGFzc29jaWF0ZWQgd2l0aCB0aGlzIHJlcXVlc3QgaWYgYXZhaWxhYmxlDQoJICoNCgkgKiBAcmV0dXJuICBKb29tbGFfX181YzU5OWVjZl84ZjU4XzQ0YjRfYmJhZl9hNDdlYjVkMzAyZTVfX19Qb3dlcg0KCSAqDQoJICogQHNpbmNlICAgMS4wDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIG9uUHJpdmFjeUNhblJlbW92ZURhdGEoSm9vbWxhX19fYWZiYjg5N2ZfZjViOF80NjVkXzkyMTNfZGFlNWNjZjNkZjNkX19fUG93ZXIgJHJlcXVlc3QsIEpvb21sYV9fX2VmZmRhZjZkXzIyNzVfNDI1ZF85ZjUyX2Q0OTUyZTU2NGQzNF9fX1Bvd2VyICR1c2VyID0gbnVsbCkNCgl7DQoJCSRzdGF0dXMgPSBuZXcgSm9vbWxhX19fNWM1OTllY2ZfOGY1OF80NGI0X2JiYWZfYTQ3ZWI1ZDMwMmU1X19fUG93ZXIoKTsNCg0KCQkvLyBUaGlzIHBsdWdpbiBvbmx5IHByb2Nlc3NlcyBkYXRhIGZvciByZWdpc3RlcmVkIHVzZXIgYWNjb3VudHMNCgkJaWYgKCEkdXNlcikNCgkJew0KCQkJcmV0dXJuICRzdGF0dXM7DQoJCX0NCg0KCQkvLyBjaGVjayBpZiB0aGUgaGVscGVyIG1ldGhvZCBpcyBzZXQgaW4gdGhlIGNvbXBvbmVudA0KCQlpZiAobWV0aG9kX2V4aXN0cyhKb29tbGFfX19hZWJmZWI5Zl9mOGEzXzQyYmVfYTIxZF81ZGI1NmFlMzBjMWNfX19Qb3dlcjo6Y2xhc3MsICdvblByaXZhY3lDYW5SZW1vdmVEYXRhJykpDQoJCXsNCgkJCUpvb21sYV9fX2FlYmZlYjlmX2Y4YTNfNDJiZV9hMjFkXzVkYjU2YWUzMGMxY19fX1Bvd2VyOjpvblByaXZhY3lDYW5SZW1vdmVEYXRhKCR0aGlzLCAkc3RhdHVzLCAkcmVxdWVzdCwgJHVzZXIpOw0KCQl9DQoNCgkJcmV0dXJuICRzdGF0dXM7DQoJfQ0KDQoJLyoqDQoJICogUHJvY2Vzc2VzIGFuIGV4cG9ydCByZXF1ZXN0IGZvciBKb29tbGEgY29yZSB1c2VyIGRhdGENCgkgKg0KCSAqIEBwYXJhbSAgIEpvb21sYV9fX2FmYmI4OTdmX2Y1YjhfNDY1ZF85MjEzX2RhZTVjY2YzZGYzZF9fX1Bvd2VyICAkcmVxdWVzdCAgVGhlIHJlcXVlc3QgcmVjb3JkIGJlaW5nIHByb2Nlc3NlZA0KCSAqIEBwYXJhbSAgIEpvb21sYV9fX2VmZmRhZjZkXzIyNzVfNDI1ZF85ZjUyX2Q0OTUyZTU2NGQzNF9fX1Bvd2VyICAgICAgICAgICAgICAgICR1c2VyICAgICBUaGUgdXNlciBhY2NvdW50IGFzc29jaWF0ZWQgd2l0aCB0aGlzIHJlcXVlc3QgaWYgYXZhaWxhYmxlDQoJICoNCgkgKiBAcmV0dXJuICBKb29tbGFfX19mNWUwNzUzY19jOGQ5XzQ5NjVfYTYwNl85YzQ1YjM3YTY4NTdfX19Qb3dlcltdDQoJICoNCgkgKiBAc2luY2UgICAxLjANCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gb25Qcml2YWN5RXhwb3J0UmVxdWVzdChKb29tbGFfX19hZmJiODk3Zl9mNWI4XzQ2NWRfOTIxM19kYWU1Y2NmM2RmM2RfX19Qb3dlciAkcmVxdWVzdCwgSm9vbWxhX19fZWZmZGFmNmRfMjI3NV80MjVkXzlmNTJfZDQ5NTJlNTY0ZDM0X19fUG93ZXIgJHVzZXIgPSBudWxsKQ0KCXsNCgkJJGRvbWFpbnMgPSBhcnJheSgpOw0KDQoJCS8vIFRoaXMgcGx1Z2luIG9ubHkgcHJvY2Vzc2VzIGRhdGEgZm9yIHJlZ2lzdGVyZWQgdXNlciBhY2NvdW50cw0KCQlpZiAoISR1c2VyKQ0KCQl7DQoJCQlyZXR1cm4gJGRvbWFpbnM7DQoJCX0NCg0KCQkvLyBjaGVjayBpZiB0aGUgaGVscGVyIG1ldGhvZCBpcyBzZXQgaW4gdGhlIGNvbXBvbmVudA0KCQlpZiAobWV0aG9kX2V4aXN0cyhKb29tbGFfX19hZWJmZWI5Zl9mOGEzXzQyYmVfYTIxZF81ZGI1NmFlMzBjMWNfX19Qb3dlcjo6Y2xhc3MsICdvblByaXZhY3lFeHBvcnRSZXF1ZXN0JykpDQoJCXsNCgkJCUpvb21sYV9fX2FlYmZlYjlmX2Y4YTNfNDJiZV9hMjFkXzVkYjU2YWUzMGMxY19fX1Bvd2VyOjpvblByaXZhY3lFeHBvcnRSZXF1ZXN0KCR0aGlzLCAkZG9tYWlucywgJHJlcXVlc3QsICR1c2VyKTsNCgkJfQ0KDQoJCXJldHVybiAkZG9tYWluczsNCgl9DQoNCgkvKioNCgkgKiBSZW1vdmVzIHRoZSBkYXRhIGFzc29jaWF0ZWQgd2l0aCBhIHJlbW92ZSBpbmZvcm1hdGlvbiByZXF1ZXN0DQoJICoNCgkgKiBAcGFyYW0gICBKb29tbGFfX19hZmJiODk3Zl9mNWI4XzQ2NWRfOTIxM19kYWU1Y2NmM2RmM2RfX19Qb3dlciAgJHJlcXVlc3QgIFRoZSByZXF1ZXN0IHJlY29yZCBiZWluZyBwcm9jZXNzZWQNCgkgKiBAcGFyYW0gICBKb29tbGFfX19lZmZkYWY2ZF8yMjc1XzQyNWRfOWY1Ml9kNDk1MmU1NjRkMzRfX19Qb3dlciAgICAgICAgICAgICAgICAkdXNlciAgICAgVGhlIHVzZXIgYWNjb3VudCBhc3NvY2lhdGVkIHdpdGggdGhpcyByZXF1ZXN0IGlmIGF2YWlsYWJsZQ0KCSAqDQoJICogQHJldHVybiAgdm9pZA0KCSAqDQoJICogQHNpbmNlICAgMS4wDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIG9uUHJpdmFjeVJlbW92ZURhdGEoSm9vbWxhX19fYWZiYjg5N2ZfZjViOF80NjVkXzkyMTNfZGFlNWNjZjNkZjNkX19fUG93ZXIgJHJlcXVlc3QsIEpvb21sYV9fX2VmZmRhZjZkXzIyNzVfNDI1ZF85ZjUyX2Q0OTUyZTU2NGQzNF9fX1Bvd2VyICR1c2VyID0gbnVsbCkNCgl7DQoJCS8vIFRoaXMgcGx1Z2luIG9ubHkgcHJvY2Vzc2VzIGRhdGEgZm9yIHJlZ2lzdGVyZWQgdXNlciBhY2NvdW50cw0KCQlpZiAoISR1c2VyKQ0KCQl7DQoJCQlyZXR1cm47DQoJCX0NCg0KCQkvLyBjaGVjayBpZiB0aGUgaGVscGVyIG1ldGhvZCBpcyBzZXQgaW4gdGhlIGNvbXBvbmVudA0KCQlpZiAobWV0aG9kX2V4aXN0cyhKb29tbGFfX19hZWJmZWI5Zl9mOGEzXzQyYmVfYTIxZF81ZGI1NmFlMzBjMWNfX19Qb3dlcjo6Y2xhc3MsICdvblByaXZhY3lSZW1vdmVEYXRhJykpDQoJCXsNCgkJCUpvb21sYV9fX2FlYmZlYjlmX2Y4YTNfNDJiZV9hMjFkXzVkYjU2YWUzMGMxY19fX1Bvd2VyOjpvblByaXZhY3lSZW1vdmVEYXRhKCR0aGlzLCAkcmVxdWVzdCwgJHVzZXIpOw0KCQl9DQoJfQ==', '[[[Component]]]', 'Ly8gUEhQIE1ldGhvZCAodW5pbnN0YWxsKQ==', 'Ly8gUEhQIFBvc3RmbGlnaHQgKGluc3RhbGwp', 'Ly8gUEhQIFBvc3RmbGlnaHQgKHVwZGF0ZSk=', 'CQkJLy8gY2hlY2sgdGhhdCBbW1tjb21wb25lbnRdXV0gaXMgaW5zdGFsbGVkDQoJCQlpZiAoIWlzX2RpcihKUEFUSF9BRE1JTklTVFJBVE9SIC4gJy9jb21wb25lbnRzL2NvbV9bW1tjb21wb25lbnRdXV0nKSkNCgkJCXsNCgkJCQkkYXBwLT5lbnF1ZXVlTWVzc2FnZSgnW1tbY29tcG9uZW50X2Fjcm9ueW1dXV0gbXVzdCBmaXJzdCBiZSBpbnN0YWxsZWQgZnJvbSA8YSBocmVmPSJbW1tnZXRfY29tcG9uZW50X2xpbmtdXV0iIHRhcmdldD0iX2JsYW5rIj5bW1tjb21wb25lbnRfbGlua19uYW1lXV1dPC9hPi4nLCAnZXJyb3InKTsNCgkJCQlyZXR1cm4gZmFsc2U7DQoJCQl9', 'Ly8gUEhQIFByZWZsaWdodCAodW5pbnN0YWxsKQ==', 'Ly8gUEhQIFByZWZsaWdodCAodXBkYXRlKQ==', '', '2.0.0', '{\"property_selection0\":{\"property\":\"56cc0535-fd9e-4db9-93f7-9f0dc9ab2a58\"},\"property_selection1\":{\"property\":\"a89d86a3-08b0-49bb-a21c-24c04ee2a280\"},\"property_selection2\":{\"property\":\"af756e64-0781-4f35-a6f3-2917ccd7ca4c\"}}', 'IyAjIyNQTFVHSU5fTkFNRSMjIyAoIyMjVkVSU0lPTiMjIykNCg0KIyMjREVTQ1JJUFRJT04jIyMNCg0KIyBCdWlsZCBEZXRhaWxzDQoNCisgKkNvbXBhbnkqOiBbIyMjQ09NUEFOWU5BTUUjIyNdKCMjI0FVVEhPUldFQlNJVEUjIyMpDQorICpBdXRob3IqOiBbIyMjQVVUSE9SIyMjXShtYWlsdG86IyMjQVVUSE9SRU1BSUwjIyMpDQorICpWZXJzaW9uKjogIyMjVkVSU0lPTiMjIw0KKyAqQ29weXJpZ2h0KjogIyMjQ09QWVJJR0hUIyMjDQorICpMaWNlbnNlKjogIyMjTElDRU5TRSMjIw==', '', '', '', 'Global Privacy J5', '', 1, 'https://www.vdm.io/updates/componentbuilder_global_privacy.xml', '', 1, '2024-09-16 14:55:27', '2024-09-16 15:50:11', 2, '', 1), (67, 1, '', '', '', '', '', '', '', '', '', '', '', '', 'ae2fafb4-e84b-4534-ba9c-6c9e1700b318', 'Register [[[ComponentNamespace]]] Commands\r\n\r\n@since 4.0.0', '{}', '5df401b4-c9a6-42c8-b50d-87f67c8a15f3', 'IyMjUE9XRVJfQVVUT0xPQURFUiMjIw0KDQp1c2UgSm9vbWxhXEFwcGxpY2F0aW9uXEFwcGxpY2F0aW9uRXZlbnRzOw0KdXNlIEpvb21sYVxDTVNcUGx1Z2luXENNU1BsdWdpbjsNCnVzZSBKb29tbGFcRXZlbnRcU3Vic2NyaWJlckludGVyZmFjZTsNCnVzZSBKb29tbGFcQ01TXEZhY3Rvcnk7DQp1c2UgSm9vbWxhXENNU1xDb25zb2xlXExvYWRlclxXcml0YWJsZUxvYWRlckludGVyZmFjZTs=', '3f139f81-0697-4392-b065-6426adaa7ac6', '{}', 'CS8qKg0KCSAqIFJldHVybnMgYW4gYXJyYXkgb2YgZXZlbnRzIHRoaXMgcGx1Z2luIGlzIHN1YnNjcmliaW5nIHRvLg0KCSAqDQoJICogQHJldHVybiBhcnJheQ0KCSAqIEBzaW5jZSA0LjAuMA0KCSAqLw0KCXB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gZ2V0U3Vic2NyaWJlZEV2ZW50cygpOiBhcnJheQ0KCXsNCgkJLy8gUmV0dXJuIGFuIGFycmF5IG9mIGV2ZW50IG5hbWVzIGFuZCBjb3JyZXNwb25kaW5nIGNhbGxiYWNrIG1ldGhvZHMNCgkJcmV0dXJuIFsNCgkJCUFwcGxpY2F0aW9uRXZlbnRzOjpCRUZPUkVfRVhFQ1VURSA9PiAnb25CZWZvcmVFeGVjdXRlJywNCgkJXTsNCgl9DQoNCgkvKioNCgkgKiBSZWdpc3RlcnMgdGhlIENMSSBjb21tYW5kLg0KCSAqDQoJICogQHJldHVybiB2b2lkDQoJICogQHNpbmNlIDQuMC4wDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIG9uQmVmb3JlRXhlY3V0ZSgpOiB2b2lkDQoJew0KCQkvLyBSZWdpc3RlciB0aGUgY29tbWFuZCBpbiB0aGUgREkgY29udGFpbmVyDQoJCSRzZXJ2aWNlSWQgPSAnW1tbY29tcG9uZW50XV1dLmltcG9ydGNvbW1hbmQnOw0KDQoJCUZhY3Rvcnk6OmdldENvbnRhaW5lcigpLT5zaGFyZSgNCgkJCSRzZXJ2aWNlSWQsDQoJCQlmdW5jdGlvbiAoXFBzclxDb250YWluZXJcQ29udGFpbmVySW50ZXJmYWNlICRjb250YWluZXIpIHsNCgkJCQlyZXR1cm4gbmV3IFN1cGVyX19fNjQ3MzE2YTVfZWI0Ml80YmVjXzgyZGRfY2EwZGMyODYxYWQzX19fUG93ZXIoKTsNCgkJCX0sDQoJCQl0cnVlDQoJCSk7DQoNCgkJLy8gQWRkIHRoZSBjb21tYW5kIHRvIHRoZSBKb29tbGEgQ0xJIGxvYWRlcg0KCQlGYWN0b3J5OjpnZXRDb250YWluZXIoKQ0KCQkJLT5nZXQoV3JpdGFibGVMb2FkZXJJbnRlcmZhY2U6OmNsYXNzKQ0KCQkJLT5hZGQoJ1tbW2NvbXBvbmVudF1dXTpJdGVtOmltcG9ydCcsICRzZXJ2aWNlSWQpOw0KCX0=', '[[[ComponentNamespace]]]Commands', '', '', '', '', '', '', '', '1.0.0', '{}', 'WW91IGNhbiB1c2UgYWxsIHRoZSBub3JtYWwgbWFya2Rvd24sIGluY2x1ZGluZyB0aGUgcGxhY2UtaG9sZGVycy4=', '', '', '', 'Component Commands', '', 3, '', '', 1, '2020-02-06 15:09:34', '2025-02-25 10:56:09', 6, '', 10); +-- +-- Dumping data for table `#__componentbuilder_joomla_power` +-- + +INSERT INTO `#__componentbuilder_joomla_power` (`id`, `description`, `guid`, `settings`, `system_name`, `params`, `published`, `created`, `modified`, `version`, `hits`, `access`, `ordering`) VALUES +(1, 'The Joomla CMS Factory class', '39403062-84fb-46e0-bac4-0023f766e827', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Factory\",\"joomla_version\":\"0\"}}', 'JFactory', '{\"source\":{\"dfba58ef-f823-43d4-ab73-865fdaf09294\":\"cc80bc8a51e833273c7dcb92832ed36e6fba4e33\"}}', 1, '2024-04-09 15:00:24', '2024-07-08 20:19:50', 3, '', 1, 1), +(2, 'The core Joomla Text class.', 'ba6326ef-cb79-4348-80f4-ab086082e3c5', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Language\\\\Text\",\"joomla_version\":\"0\"}}', 'JText', '', 1, '2024-04-09 15:01:16', '0000-00-00 00:00:00', 1, '', 1, 2), +(3, 'The Joomla core component helper class.', 'aeb8e463-291f-4445-9ac4-34b637c12dbd', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Component\\\\ComponentHelper\",\"joomla_version\":\"0\"}}', 'JComponentHelper', '', 1, '2024-04-09 15:02:09', '0000-00-00 00:00:00', 1, '', 1, 3), +(4, 'The Joomla core session class.', '5ba38513-5c4f-4b0d-935e-49e986a6bce8', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Session\\\\Session\",\"joomla_version\":\"0\"}}', 'JSession', '', 1, '2024-04-09 15:03:18', '0000-00-00 00:00:00', 1, '', 1, 4), +(5, 'The Joomla core uri class.', 'eecc143e-b5cf-4c33-ba4d-97da1df61422', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Uri\\\\Uri\",\"joomla_version\":\"0\"}}', 'JUri', '', 1, '2024-04-09 15:04:32', '2024-08-01 20:01:24', 2, '', 1, 5), +(7, 'Route handling class', 'd4c76099-4c32-408a-8701-d0a724484dfd', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Router\\\\Route\",\"joomla_version\":\"0\"}}', 'JRoute', '', 1, '2024-04-27 12:01:46', '0000-00-00 00:00:00', 1, '', 1, 7), +(9, 'This is an abstracted input class used to manage retrieving data from the application environment.', '59106b64-dd51-4280-be0a-1b9b9ebb7161', '{\"settings0\":{\"namespace\":\"Joomla\\\\Input\\\\Input\",\"joomla_version\":\"0\"},\"settings1\":{\"namespace\":\"Joomla\\\\CMS\\\\Input\\\\Input\",\"joomla_version\":\"3\"}}', 'JInput', '', 1, '2024-04-27 12:04:55', '2024-05-18 09:27:32', 2, '', 1, 8), +(10, 'Helper to render a Layout object, storing a base path', '7ab82272-0b3d-4bb1-af35-e63a096cfe0b', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Layout\\\\LayoutHelper\",\"joomla_version\":\"0\"}}', 'JLayoutHelper', '', 1, '2024-04-27 12:06:33', '0000-00-00 00:00:00', 1, '', 1, 9), +(11, 'Utility class for all HTML drawing classes', '34690c75-1090-47eb-8c06-7228dc7eedd6', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\HTML\\\\HTMLHelper\",\"joomla_version\":\"0\"}}', 'JHtml', '', 1, '2024-04-27 12:07:27', '0000-00-00 00:00:00', 1, '', 1, 10), +(17, '', '55e9e8f0-3c5e-483a-a063-7c7565b00ed7', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Filesystem\\\\File\",\"joomla_version\":\"3\"},\"settings1\":{\"namespace\":\"Joomla\\\\Filesystem\\\\File\",\"joomla_version\":\"0\"}}', 'JFile', '', 1, '2024-05-18 09:22:26', '2024-08-25 21:33:57', 2, '', 1, 12), +(150, '', '0c1a176a-304f-433a-8233-37d01ff87815', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Toolbar\\\\ToolbarHelper\",\"joomla_version\":\"0\"}}', 'JToolbarHelper', '', 1, '2024-05-18 10:07:48', '0000-00-00 00:00:00', 1, '', 1, 127), +(259, 'The Joomla CMS User class', 'effdaf6d-2275-425d-9f52-d4952e564d34', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\User\\\\User\",\"joomla_version\":\"0\"}}', 'JUser', '{\"source\":{\"dfba58ef-f823-43d4-ab73-865fdaf09294-settings\":\"3d7e9377fb2a56e7e75142012284de73e574f313\",\"dfba58ef-f823-43d4-ab73-865fdaf09294-readme\":\"7cef9f314c12f5fc91b2040c24bd0d400934664c\"}}', 1, '2024-05-18 11:08:29', '2024-07-16 22:01:33', 2, '', 1, 236), +(264, '', '571422c4-0340-49f8-b846-5729c7af6ed7', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\FormHelper\",\"joomla_version\":\"0\"}}', 'JFormHelper', '', 1, '2024-05-18 11:10:22', '0000-00-00 00:00:00', 1, '', 1, 241), +(423, '', '7bd29d76-73c9-4c07-a5da-4f7a32aff78f', '{\"settings0\":{\"namespace\":\"Joomla\\\\Database\\\\DatabaseInterface\",\"joomla_version\":\"0\"}}', 'JDatabaseInterface', '', 1, '2024-05-18 17:03:02', '0000-00-00 00:00:00', 1, '', 1, 400), +(485, 'Component Site Route Helper', '92167f18-8543-40e8-92af-053ef4c210d1', '{\"settings0\":{\"namespace\":\"[[[NamespacePrefix]]]\\\\Component\\\\[[[ComponentNamespace]]]\\\\Site\\\\Helper\\\\RouteHelper\",\"joomla_version\":\"0\"},\"settings1\":{\"namespace\":\"[[[Component]]]HelperRoute\",\"joomla_version\":\"3\"}}', '@RouteHelper (site)', '', 1, '2024-07-19 09:27:03', '2024-07-24 14:05:29', 4, '', 1, 462), +(486, 'Component Site Helper', 'cf3b95c1-ba56-4193-8eb4-9164582b7f55', '{\"settings0\":{\"namespace\":\"[[[NamespacePrefix]]]\\\\Component\\\\[[[ComponentNamespace]]]\\\\Site\\\\Helper\\\\[[[Component]]]Helper\",\"joomla_version\":\"0\"},\"settings1\":{\"namespace\":\"[[[Component]]]Helper\",\"joomla_version\":\"3\"}}', '@ComponentHelper (site)', '', 1, '2024-07-19 09:28:51', '2024-07-24 14:18:05', 5, '', 1, 462), +(487, 'Component Administrator Helper', 'aebfeb9f-f8a3-42be-a21d-5db56ae30c1c', '{\"settings0\":{\"namespace\":\"[[[NamespacePrefix]]]\\\\Component\\\\[[[ComponentNamespace]]]\\\\Administrator\\\\Helper\\\\[[[Component]]]Helper\",\"joomla_version\":\"0\"},\"settings1\":{\"namespace\":\"[[[Component]]]Helper\",\"joomla_version\":\"3\"}}', '@ComponentHelper (admin)', '', 1, '2024-07-19 09:29:15', '2024-07-24 14:17:55', 5, '', 1, 462), +(488, 'Not for Joomla 3', 'c2980d12-c3ef-4e23-b4a2-e6af1f5900a9', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\User\\\\UserFactoryInterface\",\"joomla_version\":\"0\"},\"settings1\":{\"namespace\":\"Error\\/Not\\/For\\/Joomla\\/Three\",\"joomla_version\":\"3\"}}', 'UserFactoryInterface', '', 1, '2024-08-11 10:44:41', '2024-08-11 10:48:56', 2, '', 1, 463), +(491, 'Interface for event subscribers.', 'c06c5116-6b9d-487c-9b09-5094ec4506a3', '{\"settings0\":{\"namespace\":\"Joomla\\\\Event\\\\SubscriberInterface\",\"joomla_version\":\"0\"}}', 'SubscriberInterface', '', 1, '2024-08-13 15:22:32', '2024-08-13 15:22:48', 2, '', 1, 466), +(492, 'The request record being processed', 'afbb897f-f5b8-465d-9213-dae5ccf3df3d', '{\"settings0\":{\"namespace\":\"Joomla\\\\Component\\\\Privacy\\\\Administrator\\\\Table\\\\RequestTable\",\"joomla_version\":\"0\"}}', 'PrivacyTableRequest', '{\"source\":{\"dfba58ef-f823-43d4-ab73-865fdaf09294-settings\":\"e0d759209fe13e92d6fab43138a47ab91eda21cb\",\"dfba58ef-f823-43d4-ab73-865fdaf09294-readme\":\"72894a26c5ca1e2cd01c7ed494783d0af227b93e\"}}', 1, '2024-09-16 15:02:31', '2024-09-16 20:46:53', 2, '', 1, 467), +(494, '', '5c599ecf-8f58-44b4-bbaf-a47eb5d302e5', '{\"settings0\":{\"namespace\":\"Joomla\\\\Component\\\\Privacy\\\\Administrator\\\\Removal\\\\Status\",\"joomla_version\":\"0\"}}', 'PrivacyRemovalStatus', '', 1, '2024-09-16 15:05:13', '2024-09-16 15:05:30', 2, '', 1, 467), +(495, '', 'f5e0753c-c8d9-4965-a606-9c45b37a6857', '{\"settings0\":{\"namespace\":\"Joomla\\\\Component\\\\Privacy\\\\Administrator\\\\Export\\\\Domain\",\"joomla_version\":\"0\"}}', 'PrivacyExportDomain', '', 1, '2024-09-16 15:47:54', '0000-00-00 00:00:00', 1, '', 1, 468); + +-- +-- Dumping data for table `#__componentbuilder_power` +-- + +INSERT INTO `#__componentbuilder_power` (`id`, `guid`, `system_name`, `name`, `type`, `description`, `add_licensing_template`, `licensing_template`, `power_version`, `extends`, `extends_custom`, `extendsinterfaces_custom`, `extendsinterfaces`, `implements`, `implements_custom`, `namespace`, `add_head`, `property_selection`, `method_selection`, `head`, `use_selection`, `main_class_code`, `load_selection`, `composer`, `params`, `published`, `created`, `version`, `hits`, `access`) VALUES +(4, 'c4169332-3914-400e-b861-972b2d465963', 'JCB.Spreadsheet.Importer', 'Importer', 'final class', 'Spreadsheet Importer Class\r\n\r\n@since 3.2.0', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\[[[ComponentNamespace]]].Spreadsheet.Importer', '', '{}', '{}', '', '{\"use_selection0\":{\"use\":\"61d1146f-2c2e-4e42-8492-d076f945cf35\",\"as\":\"FileReader\"},\"use_selection1\":{\"use\":\"9ffc54fa-a71e-412f-bc8b-064fc3b69167\",\"as\":\"RowDataProcessor\"}}', 'CS8qKg0KCSAqIFRoZSBGaWxlUmVhZGVyIENsYXNzLg0KCSAqDQoJICogQHZhciAgIEZpbGVSZWFkZXINCgkgKiBAc2luY2UgMy4wLjgNCgkgKi8NCglwcm90ZWN0ZWQgRmlsZVJlYWRlciAkZmlsZXJlYWRlcjsNCg0KCS8qKg0KCSAqIENvbnN0cnVjdG9yLg0KCSAqDQoJICogQHBhcmFtIEZpbGVSZWFkZXIgICAkZmlsZXJlYWRlciAgIFRoZSBGaWxlUmVhZGVyIENsYXNzLg0KCSAqDQoJICogQHNpbmNlIDMuMC44DQoJICovDQoJcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KEZpbGVSZWFkZXIgJGZpbGVyZWFkZXIpDQoJew0KCQkkdGhpcy0+ZmlsZXJlYWRlciA9ICRmaWxlcmVhZGVyOw0KCX0NCg0KCS8qKg0KCSAqIFN0cmVhbSByb3dzIGZyb20gYSBDU1Ygb3IgRXhjZWwgZmlsZSBvbmUgYnkgb25lIHVzaW5nIHlpZWxkLg0KCSAqDQoJICogQHBhcmFtIHN0cmluZyAgICAgICAgICAgICAkZmlsZVBhdGggICAgVGhlIHBhdGggdG8gdGhlIGZpbGUuDQoJICogQHBhcmFtIGludCAgICAgICAgICAgICAgICAkc3RhcnRSb3cgICAgVGhlIHN0YXJ0aW5nIHJvdyBpbmRleC4NCgkgKiBAcGFyYW0gaW50ICAgICAgICAgICAgICAgICRjaHVua1NpemUgICBUaGUgbnVtYmVyIG9mIHJvd3MgdG8gcmVhZCBwZXIgY2h1bmsuDQoJICogQHBhcmFtIFJvd0RhdGFQcm9jZXNzb3IgICAkcHJvY2Vzc29yICAgVGhlIHByb2Nlc3NvciB1c2VkIHRvIHRyYW5zZm9ybSB0aGUgcm93IGRhdGEgaW50byB0aGUgZGVzaXJlZCBmb3JtYXQuDQoJICoNCgkgKiBAcmV0dXJuIFxHZW5lcmF0b3IgICAgQSBnZW5lcmF0b3IgdGhhdCB5aWVsZHMgZWFjaCByb3cgYXMgYW4gYXJyYXkuDQoJICogQHRocm93cyBcSW52YWxpZEFyZ3VtZW50RXhjZXB0aW9uIElmIHRoZSBmaWxlIGRvZXMgbm90IGV4aXN0Lg0KCSAqIEB0aHJvd3MgXE91dE9mUmFuZ2VFeGNlcHRpb24gSWYgdGhlIHN0YXJ0IHJvdyBpcyBiZXlvbmQgdGhlIGhpZ2hlc3Qgcm93LCBubyByb3dzIGNhbiBiZSBwcm9jZXNzZWQuDQoJICogQHRocm93cyBSZWFkZXJFeGNlcHRpb24gSWYgdGhlcmUgaXMgYW4gZXJyb3IgaWRlbnRpZnlpbmcgb3IgcmVhZGluZyB0aGUgZmlsZS4NCgkgKiBAdGhyb3dzIFNwcmVhZHNoZWV0RXhjZXB0aW9uIElmIHRoZXJlIGlzIGFuIGVycm9yIHdvcmtpbmcgd2l0aCB0aGUgc3ByZWFkc2hlZXQuDQoJICogQHNpbmNlIDMuMi4wDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIHJlYWQoc3RyaW5nICRmaWxlUGF0aCwgaW50ICRzdGFydFJvdywgaW50ICRjaHVua1NpemUsIFJvd0RhdGFQcm9jZXNzb3IgJHByb2Nlc3Nvcik6IFxHZW5lcmF0b3INCgl7DQoJCWZvcmVhY2ggKCR0aGlzLT5maWxlcmVhZGVyLT5yZWFkKCRmaWxlUGF0aCwgJHN0YXJ0Um93LCAkY2h1bmtTaXplKSBhcyAkcm93KQ0KCQl7DQoJCQl5aWVsZCAkcHJvY2Vzc29yLT5wcm9jZXNzKCRyb3cpOw0KCQl9DQoJfQ==', '{}', '{}', '', 1, '2021-11-13 17:52:23', 26, '', 1), +(11, '4b225c51-d293-48e4-b3f6-5136cf5c3f18', 'Utilities Json Helper', 'JsonHelper', 'abstract class', 'The json checker\r\n\r\n@since 3.0.9', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICAzcmQgU2VwdGVtYmVyLCAyMDIwDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\Utilities.JsonHelper', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIENoZWNrIGlmIHlvdSBoYXZlIGEganNvbiBzdHJpbmcNCgkgKg0KCSAqIEBpbnB1dCAgICBzdHJpbmcgICRzdHJpbmcgIFRoZSBqc29uIHN0cmluZyB0byBjaGVjaw0KCSAqDQoJICogQHJldHVybnMgYm9vbCB0cnVlIG9uIHN1Y2Nlc3MNCgkgKiANCgkgKiBAc2luY2UgIDMuMC45DQoJICovDQoJcHVibGljIHN0YXRpYyBmdW5jdGlvbiBjaGVjaygkc3RyaW5nKTogYm9vbA0KCXsNCgkJaWYgKFN0cmluZ0hlbHBlcjo6Y2hlY2soJHN0cmluZykpDQoJCXsNCgkJCWpzb25fZGVjb2RlKChzdHJpbmcpICRzdHJpbmcpOw0KCQkJcmV0dXJuIChqc29uX2xhc3RfZXJyb3IoKSA9PT0gSlNPTl9FUlJPUl9OT05FKTsNCgkJfQ0KDQoJCXJldHVybiBmYWxzZTsNCgl9DQoNCgkvKioNCgkgKiBDb252ZXJ0IGEganNvbiBvYmplY3QgdG8gYSBzdHJpbmcNCgkgKg0KCSAqIEBpbnB1dCAgICBzdHJpbmcgICR2YWx1ZSAgVGhlIGpzb24gc3RyaW5nIHRvIGNvbnZlcnQNCgkgKg0KCSAqIEByZXR1cm5zIGEgc3RyaW5nDQoJICogDQoJICogQHNpbmNlICAzLjAuOQ0KCSAqLw0KCXB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gc3RyaW5nKCR2YWx1ZSwgJHNlcGFyYXRvciA9ICIsICIsICR0YWJsZSA9IG51bGwsICRpZCA9ICdpZCcsICRuYW1lID0gJ25hbWUnKQ0KCXsNCgkJLy8gZG8gc29tZSB0YWJsZSBmb290IHdvcmsNCgkJJGV4dGVybmFsID0gZmFsc2U7DQoJCWlmIChpc19zdHJpbmcoJHRhYmxlKSAmJiBzdHJwb3MoKHN0cmluZykgJHRhYmxlLCAnI19fJykgIT09IGZhbHNlKQ0KCQl7DQoJCQkkZXh0ZXJuYWwgPSB0cnVlOw0KCQkJJHRhYmxlID0gc3RyX3JlcGxhY2UoJyNfXycsICcnLCAoc3RyaW5nKSAkdGFibGUpOw0KCQl9DQoNCgkJLy8gY2hlY2sgaWYgc3RyaW5nIGlzIEpTT04NCgkJJHJlc3VsdCA9IGpzb25fZGVjb2RlKChzdHJpbmcpICR2YWx1ZSwgdHJ1ZSk7DQoJCWlmIChqc29uX2xhc3RfZXJyb3IoKSA9PT0gSlNPTl9FUlJPUl9OT05FKQ0KCQl7DQoJCQkvLyBpcyBKU09ODQoJCQlpZiAoQXJyYXlIZWxwZXI6OmNoZWNrKCRyZXN1bHQpKQ0KCQkJew0KCQkJCWlmIChTdHJpbmdIZWxwZXI6OmNoZWNrKCR0YWJsZSkpDQoJCQkJew0KCQkJCQkkbmFtZXMgPSBbXTsNCgkJCQkJZm9yZWFjaCAoJHJlc3VsdCBhcyAkdmFsKQ0KCQkJCQl7DQoJCQkJCQlpZiAoJGV4dGVybmFsKQ0KCQkJCQkJew0KCQkJCQkJCWlmICgkX25hbWUgPSBHZXRIZWxwZXI6OnZhcihudWxsLCAkdmFsLCAkaWQsICRuYW1lLCAnPScsICR0YWJsZSkpDQoJCQkJCQkJew0KCQkJCQkJCQkkbmFtZXNbXSA9ICRfbmFtZTsNCgkJCQkJCQl9DQoJCQkJCQl9DQoJCQkJCQllbHNlDQoJCQkJCQl7DQoJCQkJCQkJaWYgKCRfbmFtZSA9IEdldEhlbHBlcjo6dmFyKCR0YWJsZSwgJHZhbCwgJGlkLCAkbmFtZSkpDQoJCQkJCQkJew0KCQkJCQkJCQkkbmFtZXNbXSA9ICRfbmFtZTsNCgkJCQkJCQl9DQoJCQkJCQl9DQoJCQkJCX0NCgkJCQkJaWYgKEFycmF5SGVscGVyOjpjaGVjaygkbmFtZXMpKQ0KCQkJCQl7DQoJCQkJCQlyZXR1cm4gKHN0cmluZykgaW1wbG9kZSgkc2VwYXJhdG9yLCAkbmFtZXMpOw0KCQkJCQl9CQ0KCQkJCX0NCgkJCQlyZXR1cm4gKHN0cmluZykgaW1wbG9kZSgkc2VwYXJhdG9yLCAkcmVzdWx0KTsNCgkJCX0NCgkJCXJldHVybiAoc3RyaW5nKSBqc29uX2RlY29kZSgoc3RyaW5nKSAkdmFsdWUpOw0KCQl9DQoJCXJldHVybiAkdmFsdWU7DQoJfQ0K', '{\"load_selection0\":{\"load\":\"1f28cb53-60d9-4db1-b517-3c7dc6b429ef\"},\"load_selection1\":{\"load\":\"0a59c65c-9daf-4bc9-baf4-e063ff9e6a8a\"},\"load_selection2\":{\"load\":\"db87c339-5bb6-4291-a7ef-2c48ea1b06bc\"}}', '\"\"', '{\"source\":{\"guid\":\"1a1b6f3d-f16c-431a-b270-7a8a80cc7f56\"}}', 1, '2022-03-08 21:03:54', 27, '', 1), +(12, '1f28cb53-60d9-4db1-b517-3c7dc6b429ef', 'Utilities String Helper', 'StringHelper', 'abstract class', 'Some string tricks\r\n\r\n@since 3.0.9', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICAzcmQgU2VwdGVtYmVyLCAyMDIwDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\Utilities.StringHelper', 1, '{}', '{}', 'dXNlIEpvb21sYVxDTVNcRmFjdG9yeTsNCnVzZSBKb29tbGFcRmlsdGVyXElucHV0RmlsdGVyOw0KdXNlIEpvb21sYVxDTVNcTGFuZ3VhZ2VcTGFuZ3VhZ2VGYWN0b3J5SW50ZXJmYWNlOw0KdXNlIEpvb21sYVxDTVNcTGFuZ3VhZ2VcTGFuZ3VhZ2VGYWN0b3J5Ow==', '{\"use_selection0\":{\"use\":\"640b5352-fb09-425f-a26e-cd44eda03f15\",\"as\":\"default\"}}', 'CS8qKg0KCSAqIFRoZSBNYWluIEFjdGl2ZSBMYW5ndWFnZQ0KCSAqIA0KCSAqIEB2YXIgICAgc3RyaW5nDQoJICogQHNpbmNlICAzLjAuOQ0KCSAqLw0KCXB1YmxpYyBzdGF0aWMgJGxhbmdUYWc7DQoNCgkvKioNCgkgKiBWYWxpZGF0ZSB0aGF0IGlucHV0IGlzIGEgbm9uLWVtcHR5LCBub24td2hpdGVzcGFjZS1vbmx5IHN0cmluZy4NCgkgKg0KCSAqIEBwYXJhbSBtaXhlZCAkaW5wdXQgVGhlIGlucHV0IHZhbHVlIHRvIHZhbGlkYXRlLg0KCSAqDQoJICogQHJldHVybnMgYm9vbCAgVHJ1ZSBpZiBpbnB1dCBpcyBhIG5vbi1lbXB0eSwgbm9uLXdoaXRlc3BhY2Utb25seSBzdHJpbmcsIG90aGVyd2lzZSBmYWxzZS4NCgkgKiBAc2luY2UgIDMuMC45DQoJICovDQoJcHVibGljIHN0YXRpYyBmdW5jdGlvbiBjaGVjaygkaW5wdXQpOiBib29sDQoJew0KCQlyZXR1cm4gaXNfc3RyaW5nKCRpbnB1dCkgJiYgdHJpbSgkaW5wdXQpICE9PSAnJzsNCgl9DQoNCgkvKioNCgkgKiBTaG9ydGVucyBhIHN0cmluZyB0byBhIHNwZWNpZmllZCBsZW5ndGgsIG9wdGlvbmFsbHkgYWRkaW5nIGEgdG9vbHRpcCB3aXRoIHRoZSBmdWxsIHRleHQuDQoJICoNCgkgKiBUaGlzIG1ldGhvZCBzYWZlbHkgc2hvcnRlbnMgdGhlIGlucHV0IHN0cmluZyB3aXRob3V0IGN1dHRpbmcgd29yZHMgYWJydXB0bHkuIElmIHRoZSBzdHJpbmcNCgkgKiBleGNlZWRzIHRoZSBzcGVjaWZpZWQgbGVuZ3RoLCBlbGxpcHNlcyAoLi4uKSBhcmUgYWRkZWQuIE9wdGlvbmFsbHksIGEgdG9vbHRpcCBjb250YWluaW5nIHRoZQ0KCSAqIGxvbmdlciBvcmlnaW5hbCBzdHJpbmcgY2FuIGJlIGluY2x1ZGVkLg0KCSAqDQoJICogQHBhcmFtIG1peGVkICRzdHJpbmcgICBUaGUgc3RyaW5nIHlvdSB3b3VsZCBsaWtlIHRvIHNob3J0ZW4uDQoJICogQHBhcmFtIGludCAgICRsZW5ndGggICBUaGUgbWF4aW11bSBsZW5ndGggZm9yIHRoZSBzaG9ydGVuZWQgc3RyaW5nLiBEZWZhdWx0IGlzIDQwLg0KCSAqIEBwYXJhbSBib29sICAkYWRkVGlwICAgV2hldGhlciB0byBhZGQgYSB0b29sdGlwIHdpdGggdGhlIG9yaWdpbmFsIGxvbmdlciBzdHJpbmcuIERlZmF1bHQgdHJ1ZS4NCgkgKg0KCSAqIEByZXR1cm4gc3RyaW5nfG1peGVkICAgVGhlIHNob3J0ZW5lZCBzdHJpbmcsIG9wdGlvbmFsbHkgd2l0aCBhIHRvb2x0aXAuIE9yIG9yaWdpbmFsIHZhbHVlIHBhc3NlZA0KCSAqIEBzaW5jZSAgMy4yLjENCgkgKi8NCglwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIHNob3J0ZW4oJHN0cmluZywgaW50ICRsZW5ndGggPSA0MCwgYm9vbCAkYWRkVGlwID0gdHJ1ZSkNCgl7DQoJCS8vIFZhbGlkYXRlIHN0cmluZyBpbnB1dCBhbmQgcmV0dXJuIG9yaWdpbmFsIGlmIGludmFsaWQgb3Igc2hvcnQgZW5vdWdoLg0KCQlpZiAoIXNlbGY6OmNoZWNrKCRzdHJpbmcpIHx8IG1iX3N0cmxlbigkc3RyaW5nKSA8PSAkbGVuZ3RoKQ0KCQl7DQoJCQlyZXR1cm4gJHN0cmluZzsNCgkJfQ0KDQoJCS8vIFRydW5jYXRlIHN0cmluZyB0byBuZWFyZXN0IHdvcmQgYm91bmRhcnkNCgkJJHNob3J0ZW5lZCA9IG1iX3N1YnN0cigkc3RyaW5nLCAwLCAkbGVuZ3RoKTsNCg0KCQkvLyBGaW5kIHRoZSBsYXN0IHNwYWNlIHRvIGF2b2lkIGN1dHRpbmcgb2ZmIGEgd29yZA0KCQkkbGFzdFNwYWNlID0gbWJfc3RycnBvcygkc2hvcnRlbmVkLCAnICcpOw0KCQlpZiAoJGxhc3RTcGFjZSAhPT0gZmFsc2UpDQoJCXsNCgkJCSRzaG9ydGVuZWQgPSBtYl9zdWJzdHIoJHNob3J0ZW5lZCwgMCwgJGxhc3RTcGFjZSk7DQoJCX0NCg0KCQkvLyBQcmVwYXJlIHRyaW1tZWQgYW5kIHNob3J0ZW5lZCBvdXRwdXQgd2l0aCBlbGxpcHNlcw0KCQkkc2hvcnRlbmVkID0gdHJpbSgkc2hvcnRlbmVkKSAuICcuLi4nOw0KDQoJCS8vIEFkZCB0b29sdGlwIGlmIHJlcXVlc3RlZA0KCQlpZiAoJGFkZFRpcCkNCgkJew0KCQkJLy8gU2FmZWx5IGVzY2FwZSBvdXRwdXQgZm9yIEhUTUwNCgkJCSR0aXRsZSA9IHNlbGY6OnNob3J0ZW4oJHN0cmluZywgNDAwICwgZmFsc2UpOw0KCQkJJGVzY2FwZWRUaXRsZSA9IGh0bWxzcGVjaWFsY2hhcnMoJHRpdGxlLCBFTlRfUVVPVEVTLCAnVVRGLTgnKTsNCgkJCSRlc2NhcGVkU2hvcnQgPSBodG1sc3BlY2lhbGNoYXJzKCRzaG9ydGVuZWQsIEVOVF9RVU9URVMsICdVVEYtOCcpOw0KDQoJCQlyZXR1cm4gJzxzcGFuIGNsYXNzPSJoYXNUaXAiIHRpdGxlPSInIC4gJGVzY2FwZWRUaXRsZSAuICciIHN0eWxlPSJjdXJzb3I6aGVscCI+Jw0KCQkJCS4gJGVzY2FwZWRTaG9ydA0KCQkJCS4gJzwvc3Bhbj4nOw0KCQl9DQoNCgkJLy8gUmV0dXJuIHNob3J0ZW5lZCB2ZXJzaW9uIHdpdGhvdXQgdG9vbHRpcA0KCQlyZXR1cm4gJHNob3J0ZW5lZDsNCgl9DQoNCgkvKioNCgkgKiBNYWtlcyBhIHN0cmluZyBzYWZlIGJ5IHNhbml0aXppbmcgYW5kIGZvcm1hdHRpbmcgaXQgYWNjb3JkaW5nIHRvIHRoZSBzcGVjaWZpZWQgdHlwZS4NCgkgKg0KCSAqIFRoaXMgbWV0aG9kIGNhbiByZW1vdmUgdW53YW50ZWQgY2hhcmFjdGVycywgdHJhbnNsaXRlcmF0ZSB0ZXh0LCByZXBsYWNlIG51bWJlcnMgd2l0aCANCgkgKiB0aGVpciBFbmdsaXNoIGVxdWl2YWxlbnRzLCBhbmQgYXBwbHkgZGlmZmVyZW50IGNhc2UgZm9ybWF0dGluZyBzdHlsZXMuDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICAkc3RyaW5nICAgICAgICAgICAgVGhlIHN0cmluZyB0byBzYW5pdGl6ZSBhbmQgZm9ybWF0Lg0KCSAqIEBwYXJhbSBzdHJpbmcgICR0eXBlICAgICAgICAgICAgICBUaGUgZm9ybWF0dGluZyB0eXBlIHRvIGFwcGx5LiBTdXBwb3J0ZWQgdmFsdWVzOg0KCSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtICdmaWxlbmFtZScgIDogUmVtb3ZlcyBzcGVjaWFsIGNoYXJhY3RlcnMgYW5kIGV4dHJhIHNwYWNlcy4NCgkgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLSAnTCcgICAgICAgICA6IENvbnZlcnRzIHRvIGxvd2VyY2FzZSB3aXRoIHVuZGVyc2NvcmVzIHJlcGxhY2luZyBzcGFjZXMuDQoJICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gJ3N0cnRvbG93ZXInOiBBbGlhcyBmb3IgJ0wnLg0KCSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtICdXJyAgICAgICAgIDogQ2FwaXRhbGl6ZXMgdGhlIGZpcnN0IGxldHRlciBvZiBlYWNoIHdvcmQuDQoJICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gJ3cnICAgICAgICAgOiBDb252ZXJ0cyB0byBsb3dlcmNhc2UgKHNwYWNlcyByZW1haW4pLg0KCSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtICd3b3JkJyAgICAgIDogQWxpYXMgZm9yICd3Jy4NCgkgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLSAnV3cnICAgICAgICA6IENhcGl0YWxpemVzIG9ubHkgdGhlIGZpcnN0IHdvcmQuDQoJICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gJ1dvcmQnICAgICAgOiBBbGlhcyBmb3IgJ1d3Jy4NCgkgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLSAnV1cnICAgICAgICA6IENvbnZlcnRzIHRoZSBlbnRpcmUgc3RyaW5nIHRvIHVwcGVyY2FzZS4NCgkgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLSAnV09SRCcgICAgICA6IEFsaWFzIGZvciAnV1cnLg0KCSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtICdVJyAgICAgICAgIDogQ29udmVydHMgdG8gdXBwZXJjYXNlIHdpdGggdW5kZXJzY29yZXMgcmVwbGFjaW5nIHNwYWNlcy4NCgkgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLSAnc3RydG91cHBlcic6IEFsaWFzIGZvciAnVScuDQoJICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gJ0YnICAgICAgICAgOiBDYXBpdGFsaXplcyBvbmx5IHRoZSBmaXJzdCBsZXR0ZXIgb2YgdGhlIGVudGlyZSBzdHJpbmcuDQoJICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gJ3VjZmlyc3QnICAgOiBBbGlhcyBmb3IgJ0YnLg0KCSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtICdjQScgICAgICAgIDogQ29udmVydHMgdG8gY2FtZWxDYXNlLg0KCSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtICdjQW1lbCcgICAgIDogQWxpYXMgZm9yICdjQScuDQoJICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gJ2NhbWVsY2FzZScgOiBBbGlhcyBmb3IgJ2NBJy4NCgkgKiBAcGFyYW0gc3RyaW5nICAkc3BhY2VyICAgICAgICAgICAgVGhlIGNoYXJhY3RlciB0byByZXBsYWNlIHNwYWNlcyB3aXRoIChkZWZhdWx0OiAnXycpLg0KCSAqIEBwYXJhbSBib29sICAgICRyZXBsYWNlTnVtYmVycyAgICBXaGV0aGVyIHRvIHJlcGxhY2UgbnVtYmVycyB3aXRoIHRoZWlyIEVuZ2xpc2ggdGV4dCBlcXVpdmFsZW50cyAoZGVmYXVsdDogdHJ1ZSkuDQoJICogQHBhcmFtIGJvb2wgICAgJGtlZXBPbmx5Q2hhcmFjdGVycyBXaGV0aGVyIHRvIHJlbW92ZSBhbGwgbm9uLWFscGhhYmV0aWMgY2hhcmFjdGVycyAoZGVmYXVsdDogdHJ1ZSkuDQoJICoNCgkgKiBAcmV0dXJuIHN0cmluZyBUaGUgc2FuaXRpemVkIGFuZCBmb3JtYXR0ZWQgc3RyaW5nLg0KCSAqIEBzaW5jZSAgMy4wLjkNCgkgKi8NCglwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIHNhZmUoJHN0cmluZywgc3RyaW5nICR0eXBlID0gJ0wnLCBzdHJpbmcgJHNwYWNlciA9ICdfJywgYm9vbCAkcmVwbGFjZU51bWJlcnMgPSB0cnVlLCBib29sICRrZWVwT25seUNoYXJhY3RlcnMgPSB0cnVlKTogc3RyaW5nDQoJew0KCQlpZiAoJHJlcGxhY2VOdW1iZXJzKQ0KCQl7DQoJCQkvLyByZW1vdmUgYWxsIG51bWJlcnMgYW5kIHJlcGxhY2Ugd2l0aCBFbmdsaXNoIHRleHQgdmVyc2lvbiAod29ya3Mgd2VsbCBvbmx5IHVwIHRvIG1pbGxpb25zKQ0KCQkJJHN0cmluZyA9IHNlbGY6Om51bWJlcnMoJHN0cmluZyk7DQoJCX0NCg0KCQkvLyBPbmx5IGNvbnRpbnVlIGlmIHdlIGhhdmUgYSBzdHJpbmcNCgkJaWYgKCFzZWxmOjpjaGVjaygkc3RyaW5nKSkNCgkJew0KCQkJLy8gbm90IGEgc3RyaW5nDQoJCQlyZXR1cm4gJyc7DQoJCX0NCg0KCQkvLyBjcmVhdGUgZmlsZSBuYW1lIHdpdGhvdXQgdGhlIGV4dGVuc2lvbiB0aGF0IGlzIHNhZmUNCgkJaWYgKCR0eXBlID09PSAnZmlsZW5hbWUnKQ0KCQl7DQoJCQkvLyBtYWtlIHN1cmUgVkRNIGlzIG5vdCBpbiB0aGUgc3RyaW5nDQoJCQkkc3RyaW5nID0gc3RyX3JlcGxhY2UoJ1ZETScsICd2RG0nLCAoc3RyaW5nKSAkc3RyaW5nKTsNCgkJCS8vIFJlbW92ZSBhbnl0aGluZyB3aGljaCBpc24ndCBhIHdvcmQsIHdoaXRlc3BhY2UsIG51bWJlcg0KCQkJLy8gb3IgYW55IG9mIHRoZSBmb2xsb3dpbmcgY2FyYWN0ZXJzIC1fKCkNCgkJCS8vIElmIHlvdSBkb24ndCBuZWVkIHRvIGhhbmRsZSBtdWx0aS1ieXRlIGNoYXJhY3RlcnMNCgkJCS8vIHlvdSBjYW4gdXNlIHByZWdfcmVwbGFjZSByYXRoZXIgdGhhbiBtYl9lcmVnX3JlcGxhY2UNCgkJCS8vIFRoYW5rcyBAxYF1a2FzeiBSeXNpYWshDQoJCQkvLyAkc3RyaW5nID0gbWJfZXJlZ19yZXBsYWNlKCIoW15cd1xzXGRcLV9cKFwpXSkiLCAnJywgJHN0cmluZyk7DQoJCQkkc3RyaW5nID0gcHJlZ19yZXBsYWNlKCIoW15cd1xzXGRcLV9cKFwpXSkiLCAnJywgJHN0cmluZyk7DQoNCgkJCS8vIGh0dHA6Ly9zdGFja292ZXJmbG93LmNvbS9hLzIwMjE3MjkvMTQyOTY3Nw0KCQkJcmV0dXJuIHByZWdfcmVwbGFjZSgnL1xzKy8nLCAnICcsIChzdHJpbmcpICRzdHJpbmcpOw0KCQl9DQoJCS8vIHJlbW92ZSBhbGwgb3RoZXIgY2hhcmFjdGVycw0KCQkkc3RyaW5nID0gdHJpbSgoc3RyaW5nKSAkc3RyaW5nKTsNCgkJJHN0cmluZyA9IHByZWdfcmVwbGFjZSgnLycuJHNwYWNlci4nKy8nLCAnICcsICRzdHJpbmcpOw0KCQkkc3RyaW5nID0gcHJlZ19yZXBsYWNlKCcvXHMrLycsICcgJywgJHN0cmluZyk7DQoJCS8vIFRyYW5zbGl0ZXJhdGUgc3RyaW5nDQoJCSRzdHJpbmcgPSBzZWxmOjp0cmFuc2xpdGVyYXRlKCRzdHJpbmcpOw0KCQkvLyByZW1vdmUgYWxsIGFuZCBrZWVwIG9ubHkgY2hhcmFjdGVycw0KCQlpZiAoJGtlZXBPbmx5Q2hhcmFjdGVycykNCgkJew0KCQkJJHN0cmluZyA9IHByZWdfcmVwbGFjZSgiL1teQS1aYS16IF0vIiwgJycsIChzdHJpbmcpICRzdHJpbmcpOw0KCQl9DQoJCS8vIGtlZXAgYm90aCBudW1iZXJzIGFuZCBjaGFyYWN0ZXJzDQoJCWVsc2UNCgkJew0KCQkJJHN0cmluZyA9IHByZWdfcmVwbGFjZSgiL1teQS1aYS16MC05IF0vIiwgJycsIChzdHJpbmcpICRzdHJpbmcpOw0KCQl9DQoJCS8vIHNlbGVjdCBmaW5hbCBhZGFwdGF0aW9ucw0KCQlpZiAoJHR5cGUgPT09ICdMJyB8fCAkdHlwZSA9PT0gJ3N0cnRvbG93ZXInKQ0KCQl7DQoJCQkvLyByZXBsYWNlIHdoaXRlIHNwYWNlIHdpdGggdW5kZXJzY29yZQ0KCQkJJHN0cmluZyA9IHByZWdfcmVwbGFjZSgnL1xzKy8nLCAoc3RyaW5nKSAkc3BhY2VyLCAoc3RyaW5nKSAkc3RyaW5nKTsNCgkJCS8vIGRlZmF1bHQgaXMgdG8gcmV0dXJuIGxvd2VyDQoJCQlyZXR1cm4gc3RydG9sb3dlcigkc3RyaW5nKTsNCgkJfQ0KCQllbHNlaWYgKCR0eXBlID09PSAnVycpDQoJCXsNCgkJCS8vIHJldHVybiBhIHN0cmluZyB3aXRoIGFsbCBmaXJzdCBsZXR0ZXIgb2YgZWFjaCB3b3JkIHVwcGVyY2FzZShubyB1bmRlcnNjb3JlKQ0KCQkJcmV0dXJuIHVjd29yZHMoc3RydG9sb3dlcigkc3RyaW5nKSk7DQoJCX0NCgkJZWxzZWlmICgkdHlwZSA9PT0gJ3cnIHx8ICR0eXBlID09PSAnd29yZCcpDQoJCXsNCgkJCS8vIHJldHVybiBhIHN0cmluZyB3aXRoIGFsbCBsb3dlcmNhc2Uobm8gdW5kZXJzY29yZSkNCgkJCXJldHVybiBzdHJ0b2xvd2VyKCRzdHJpbmcpOw0KCQl9DQoJCWVsc2VpZiAoJHR5cGUgPT09ICdXdycgfHwgJHR5cGUgPT09ICdXb3JkJykNCgkJew0KCQkJLy8gcmV0dXJuIGEgc3RyaW5nIHdpdGggZmlyc3QgbGV0dGVyIG9mIHRoZSBmaXJzdCB3b3JkIHVwcGVyY2FzZSBhbmQgYWxsIHRoZSByZXN0IGxvd2VyY2FzZShubyB1bmRlcnNjb3JlKQ0KCQkJcmV0dXJuIHVjZmlyc3Qoc3RydG9sb3dlcigkc3RyaW5nKSk7DQoJCX0NCgkJZWxzZWlmICgkdHlwZSA9PT0gJ1dXJyB8fCAkdHlwZSA9PT0gJ1dPUkQnKQ0KCQl7DQoJCQkvLyByZXR1cm4gYSBzdHJpbmcgd2l0aCBhbGwgdGhlIHVwcGVyY2FzZShubyB1bmRlcnNjb3JlKQ0KCQkJcmV0dXJuIHN0cnRvdXBwZXIoJHN0cmluZyk7DQoJCX0NCgkJZWxzZWlmICgkdHlwZSA9PT0gJ1UnIHx8ICR0eXBlID09PSAnc3RydG91cHBlcicpDQoJCXsNCgkJCQkvLyByZXBsYWNlIHdoaXRlIHNwYWNlIHdpdGggdW5kZXJzY29yZQ0KCQkJCSRzdHJpbmcgPSBwcmVnX3JlcGxhY2UoJy9ccysvJywgKHN0cmluZykgJHNwYWNlciwgJHN0cmluZyk7DQoJCQkJLy8gcmV0dXJuIGFsbCB1cHBlcg0KCQkJCXJldHVybiBzdHJ0b3VwcGVyKCRzdHJpbmcpOw0KCQl9DQoJCWVsc2VpZiAoJHR5cGUgPT09ICdGJyB8fCAkdHlwZSA9PT0gJ3VjZmlyc3QnKQ0KCQl7DQoJCQkJLy8gcmVwbGFjZSB3aGl0ZSBzcGFjZSB3aXRoIHVuZGVyc2NvcmUNCgkJCQkkc3RyaW5nID0gcHJlZ19yZXBsYWNlKCcvXHMrLycsIChzdHJpbmcpICRzcGFjZXIsICRzdHJpbmcpOw0KCQkJCS8vIHJldHVybiB3aXRoIGZpcnN0IGNoYXJhY3RlciB0byB1cHBlcg0KCQkJCXJldHVybiB1Y2ZpcnN0KHN0cnRvbG93ZXIoJHN0cmluZykpOw0KCQl9DQoJCWVsc2VpZiAoJHR5cGUgPT09ICdjQScgfHwgJHR5cGUgPT09ICdjQW1lbCcgfHwgJHR5cGUgPT09ICdjYW1lbGNhc2UnKQ0KCQl7DQoJCQkvLyBjb252ZXJ0IGFsbCB3b3JkcyB0byBmaXJzdCBsZXR0ZXIgdXBwZXJjYXNlDQoJCQkkc3RyaW5nID0gdWN3b3JkcyhzdHJ0b2xvd2VyKCRzdHJpbmcpKTsNCgkJCS8vIHJlbW92ZSB3aGl0ZSBzcGFjZQ0KCQkJJHN0cmluZyA9IHByZWdfcmVwbGFjZSgnL1xzKy8nLCAnJywgJHN0cmluZyk7DQoJCQkvLyBub3cgcmV0dXJuIGZpcnN0IGxldHRlciBsb3dlcmNhc2UNCgkJCXJldHVybiBsY2ZpcnN0KCRzdHJpbmcpOw0KCQl9DQoJCS8vIHJldHVybiBzdHJpbmcNCgkJcmV0dXJuICRzdHJpbmc7DQoJfQ0KDQoJLyoqDQoJICogQ29udmVydCBub25lIEVuZ2xpc2ggc3RyaW5ncyB0byBjb2RlIHVzYWJsZSBzdHJpbmcNCgkgKg0KCSAqIEBpbnB1dCAgJHN0cmluZyAgYW4gc3RyaW5nDQoJICoNCgkgKiBAcmV0dXJucyBzdHJpbmcNCgkgKiBAc2luY2UgICAzLjAuOQ0KCSAqLw0KCXB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gdHJhbnNsaXRlcmF0ZSgkc3RyaW5nKTogc3RyaW5nDQoJew0KCQkvLyBzZXQgdGFnIG9ubHkgb25jZQ0KCQlpZiAoIXNlbGY6OmNoZWNrKHNlbGY6OiRsYW5nVGFnKSkNCgkJew0KCQkJLy8gZ2V0IGdsb2JhbCB2YWx1ZQ0KCQkJc2VsZjo6JGxhbmdUYWcgPSBIZWxwZXI6OmdldFBhcmFtcygpLT5nZXQoJ2xhbmd1YWdlJywgJ2VuLUdCJyk7DQoJCX0NCg0KCQkvKiogQHZhciAkbGFuZ0ZhY3RvcnkgTGFuZ3VhZ2VGYWN0b3J5ICoqLw0KCQkkbGFuZ0ZhY3RvcnkgPSBGYWN0b3J5OjpnZXRDb250YWluZXIoKS0+Z2V0KExhbmd1YWdlRmFjdG9yeUludGVyZmFjZTo6Y2xhc3MpOw0KCQkkbGFuZyA9ICRsYW5nRmFjdG9yeS0+Y3JlYXRlTGFuZ3VhZ2Uoc2VsZjo6JGxhbmdUYWcpOw0KDQoJCS8vIFRyYW5zbGl0ZXJhdGUgb24gdGhlIGxhbmd1YWdlIHJlcXVlc3RlZA0KCQlyZXR1cm4gJGxhbmctPnRyYW5zbGl0ZXJhdGUoJHN0cmluZyk7DQoJfQ0KDQoJLyoqDQoJICogRW5zdXJlcyBhIHN0cmluZyBpcyBzYWZlIGZvciBIVE1MIG91dHB1dCBieSBlbmNvZGluZyBlbnRpdGllcyBhbmQgYXBwbHlpbmcgYW4gaW5wdXQgZmlsdGVyLg0KCSAqDQoJICogVGhpcyBtZXRob2Qgc2FuaXRpemVzIHRoZSBpbnB1dCBzdHJpbmcsIGNvbnZlcnRpbmcgc3BlY2lhbCBjaGFyYWN0ZXJzIHRvIEhUTUwgZW50aXRpZXMgDQoJICogYW5kIGFwcGx5aW5nIEpvb21sYSdzIGBJbnB1dEZpbHRlcmAgdG8gcmVtb3ZlIHBvdGVudGlhbGx5IHVuc2FmZSBIVE1MLg0KCSAqIE9wdGlvbmFsbHksIGl0IGNhbiBhbHNvIHNob3J0ZW4gdGhlIHN0cmluZyB3aGlsZSBwcmVzZXJ2aW5nIHdvcmQgaW50ZWdyaXR5Lg0KCSAqDQoJICogQHBhcmFtIHN0cmluZyAgJHZhciAgICAgIFRoZSBpbnB1dCBzdHJpbmcgY29udGFpbmluZyBIVE1MIGNvbnRlbnQuDQoJICogQHBhcmFtIHN0cmluZyAgJGNoYXJzZXQgIFRoZSBjaGFyYWN0ZXIgc2V0IHRvIHVzZSBmb3IgZW5jb2RpbmcgKGRlZmF1bHQ6ICdVVEYtOCcpLg0KCSAqIEBwYXJhbSBib29sICAgICRzaG9ydGVuICBXaGV0aGVyIHRvIHNob3J0ZW4gdGhlIHN0cmluZyB0byBhIHNwZWNpZmllZCBsZW5ndGggKGRlZmF1bHQ6IGZhbHNlKS4NCgkgKiBAcGFyYW0gaW50ICAgICAkbGVuZ3RoICAgVGhlIG1heGltdW0gbGVuZ3RoIGZvciBzaG9ydGVuaW5nLCBpZiBlbmFibGVkIChkZWZhdWx0OiA0MCkuDQoJICogQHBhcmFtIGJvb2wgICAgJGFkZFRpcCAgIFdoZXRoZXIgdG8gYXBwZW5kIGEgdG9vbHRpcCAoZWxsaXBzaXMpIHdoZW4gc2hvcnRlbmluZyAoZGVmYXVsdDogdHJ1ZSkuDQoJICoNCgkgKiBAcmV0dXJuIHN0cmluZyBUaGUgc2FuaXRpemVkIGFuZCBvcHRpb25hbGx5IHNob3J0ZW5lZCBIVE1MLXNhZmUgc3RyaW5nLg0KCSAqIEBzaW5jZSAzLjAuOQ0KCSAqLw0KCXB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gaHRtbCgkdmFyLCAkY2hhcnNldCA9ICdVVEYtOCcsICRzaG9ydGVuID0gZmFsc2UsICRsZW5ndGggPSA0MCwgJGFkZFRpcCA9IHRydWUpOiBzdHJpbmcNCgl7DQoJCWlmIChzZWxmOjpjaGVjaygkdmFyKSkNCgkJew0KCQkJJGZpbHRlciA9IG5ldyBJbnB1dEZpbHRlcigpOw0KCQkJJHN0cmluZyA9ICRmaWx0ZXItPmNsZWFuKA0KCQkJCWh0bWxfZW50aXR5X2RlY29kZSgNCgkJCQkJaHRtbGVudGl0aWVzKA0KCQkJCQkJKHN0cmluZykgJHZhciwNCgkJCQkJCUVOVF9DT01QQVQsDQoJCQkJCQkkY2hhcnNldA0KCQkJCQkpDQoJCQkJKSwNCgkJCQknSFRNTCcNCgkJCSk7DQoJCQlpZiAoJHNob3J0ZW4pDQoJCQl7DQoJCQkJcmV0dXJuIHNlbGY6OnNob3J0ZW4oJHN0cmluZywgJGxlbmd0aCwgJGFkZFRpcCk7DQoJCQl9DQoJCQlyZXR1cm4gJHN0cmluZzsNCgkJfQ0KCQllbHNlDQoJCXsNCgkJCXJldHVybiAnJzsNCgkJfQ0KCX0NCg0KCS8qKg0KCSAqIENvbnZlcnQgYWxsIGludCBpbiBhIHN0cmluZyB0byBhbiBFbmdsaXNoIHdvcmQgc3RyaW5nDQoJICoNCgkgKiBAaW5wdXQgICAgJHN0cmluZyAgYW4gc3RyaW5nIHdpdGggbnVtYmVycw0KCSAqDQoJICogQHJldHVybnMgIHN0cmluZ3xudWxsDQoJICogQHNpbmNlICAzLjAuOQ0KCSAqLw0KCXB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gbnVtYmVycygkc3RyaW5nKTogP3N0cmluZw0KCXsNCgkJLy8gc2V0IG51bWJlcnMgYXJyYXkNCgkJJG51bWJlcnMgPSBbXTsNCgkJJHNlYXJjaF9yZXBsYWNlPSBbXTsNCg0KCQkvLyBmaXJzdCBnZXQgYWxsIG51bWJlcnMNCgkJcHJlZ19tYXRjaF9hbGwoJyFcZCshJywgKHN0cmluZykgJHN0cmluZywgJG51bWJlcnMpOw0KDQoJCS8vIGNoZWNrIGlmIHdlIGhhdmUgYW55IG51bWJlcnMNCgkJaWYgKGlzc2V0KCRudW1iZXJzWzBdKSAmJiBBcnJheUhlbHBlcjo6Y2hlY2soJG51bWJlcnNbMF0pKQ0KCQl7DQoJCQlmb3JlYWNoICgkbnVtYmVyc1swXSBhcyAkbnVtYmVyKQ0KCQkJew0KCQkJCSRzZWFyY2hfcmVwbGFjZVskbnVtYmVyXSA9IHNlbGY6Om51bWJlcigoaW50KSRudW1iZXIpOw0KCQkJfQ0KDQoJCQkvLyBub3cgcmVwbGFjZSBudW1iZXJzIGluIHN0cmluZw0KCQkJJHN0cmluZyA9IHN0cl9yZXBsYWNlKGFycmF5X2tleXMoJHNlYXJjaF9yZXBsYWNlKSwgYXJyYXlfdmFsdWVzKCRzZWFyY2hfcmVwbGFjZSksIChzdHJpbmcpICRzdHJpbmcpOw0KDQoJCQkvLyBjaGVjayBpZiB3ZSBtaXNzZWQgYW55LCBzdHJhbmdlIGlmIHdlIGRpZC4NCgkJCXJldHVybiBzZWxmOjpudW1iZXJzKCRzdHJpbmcpOw0KCQl9DQoNCgkJLy8gcmV0dXJuIHRoZSBzdHJpbmcgd2l0aCBubyBudW1iZXJzIHJlbWFpbmluZy4NCgkJcmV0dXJuICRzdHJpbmc7DQoJfQ0KDQoJLyoqDQoJICogQ29udmVydCBhbiBpbnRlZ2VyIGludG8gYW4gRW5nbGlzaCB3b3JkIHN0cmluZw0KCSAqIFRoYW5rcyB0byBUb20gTmljaG9sc29uIDxodHRwOi8vcGhwLm5ldC9tYW51YWwvZW4vZnVuY3Rpb24uc3RydmFsLnBocCM0MTk4OD4NCgkgKg0KCSAqIEBpbnB1dCAgICAkeCBhbiBpbnQNCgkgKiANCgkgKiBAcmV0dXJucyAgIHN0cmluZw0KCSAqIEBzaW5jZSAgMy4wLjkNCgkgKi8NCglwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIG51bWJlcigkeCkNCgl7DQoJCSRud29yZHMgPSBbInplcm8iLCAib25lIiwgInR3byIsICJ0aHJlZSIsICJmb3VyIiwgImZpdmUiLCAic2l4IiwgInNldmVuIiwNCgkJCSJlaWdodCIsICJuaW5lIiwgInRlbiIsICJlbGV2ZW4iLCAidHdlbHZlIiwgInRoaXJ0ZWVuIiwNCgkJCSJmb3VydGVlbiIsICJmaWZ0ZWVuIiwgInNpeHRlZW4iLCAic2V2ZW50ZWVuIiwgImVpZ2h0ZWVuIiwNCgkJCSJuaW5ldGVlbiIsICJ0d2VudHkiLCAzMCA9PiAidGhpcnR5IiwgNDAgPT4gImZvcnR5IiwNCgkJCTUwID0+ICJmaWZ0eSIsIDYwID0+ICJzaXh0eSIsIDcwID0+ICJzZXZlbnR5IiwgODAgPT4gImVpZ2h0eSIsDQoJCQk5MCA9PiAibmluZXR5Il07DQoNCgkJaWYoIWlzX251bWVyaWMoJHgpKQ0KCQl7DQoJCQkkdyA9ICR4Ow0KCQl9DQoJCWVsc2VpZihmbW9kKCR4LCAxKSAhPSAwKQ0KCQl7DQoJCQkkdyA9ICR4Ow0KCQl9DQoJCWVsc2UNCgkJew0KCQkJaWYoJHggPCAwKQ0KCQkJew0KCQkJCSR3ID0gJ21pbnVzICc7DQoJCQkJJHggPSAtJHg7DQoJCQl9DQoJCQllbHNlDQoJCQl7DQoJCQkJJHcgPSAnJzsNCgkJCQkvLyAuLi4gbm93ICR4IGlzIGEgbm9uLW5lZ2F0aXZlIGludGVnZXIuDQoJCQl9DQoNCgkJCWlmKCR4IDwgMjEpICAgLy8gMCB0byAyMA0KCQkJew0KCQkJCSR3IC49ICRud29yZHNbJHhdOw0KCQkJfQ0KCQkJZWxzZWlmKCR4IDwgMTAwKSAgLy8gMjEgdG8gOTkNCgkJCXsgDQoJCQkJJHcgLj0gJG53b3Jkc1sxMCAqIGZsb29yKCR4LzEwKV07DQoJCQkJJHIgPSBmbW9kKCR4LCAxMCk7DQoJCQkJaWYoJHIgPiAwKQ0KCQkJCXsNCgkJCQkJJHcgLj0gJyAnIC4gJG53b3Jkc1skcl07DQoJCQkJfQ0KCQkJfQ0KCQkJZWxzZWlmKCR4IDwgMTAwMCkgIC8vIDEwMCB0byA5OTkNCgkJCXsNCgkJCQkkdyAuPSAkbndvcmRzW2Zsb29yKCR4LzEwMCldIC4nIGh1bmRyZWQnOw0KCQkJCSRyID0gZm1vZCgkeCwgMTAwKTsNCgkJCQlpZigkciA+IDApDQoJCQkJew0KCQkJCQkkdyAuPSAnIGFuZCAnLiBzZWxmOjpudW1iZXIoJHIpOw0KCQkJCX0NCgkJCX0NCgkJCWVsc2VpZigkeCA8IDEwMDAwMDApICAvLyAxMDAwIHRvIDk5OTk5OQ0KCQkJew0KCQkJCSR3IC49IHNlbGY6Om51bWJlcihmbG9vcigkeC8xMDAwKSkgLicgdGhvdXNhbmQnOw0KCQkJCSRyID0gZm1vZCgkeCwgMTAwMCk7DQoJCQkJaWYoJHIgPiAwKQ0KCQkJCXsNCgkJCQkJJHcgLj0gJyAnOw0KCQkJCQlpZigkciA8IDEwMCkNCgkJCQkJew0KCQkJCQkJJHcgLj0gJ2FuZCAnOw0KCQkJCQl9DQoJCQkJCSR3IC49IHNlbGY6Om51bWJlcigkcik7DQoJCQkJfQ0KCQkJfSANCgkJCWVsc2UgLy8gIG1pbGxpb25zDQoJCQl7DQoJCQkJJHcgLj0gc2VsZjo6bnVtYmVyKGZsb29yKCR4LzEwMDAwMDApKSAuJyBtaWxsaW9uJzsNCgkJCQkkciA9IGZtb2QoJHgsIDEwMDAwMDApOw0KCQkJCWlmKCRyID4gMCkNCgkJCQl7DQoJCQkJCSR3IC49ICcgJzsNCgkJCQkJaWYoJHIgPCAxMDApDQoJCQkJCXsNCgkJCQkJCSR3IC49ICdhbmQgJzsNCgkJCQkJfQ0KCQkJCQkkdyAuPSBzZWxmOjpudW1iZXIoJHIpOw0KCQkJCX0NCgkJCX0NCgkJfQ0KCQlyZXR1cm4gJHc7DQoJfQ0KDQoJLyoqDQoJICogUmFuZG9tIEtleQ0KCSAqDQoJICogQGlucHV0ICAgaW50ICAkc2l6ZSAgIFRoZSBzaXplIG9mIHRoZSByYW5kb20gc3RyaW5nDQoJICoNCgkgKiBAcmV0dXJucyBzdHJpbmcNCgkgKiBAc2luY2UgIDMuMC45DQoJICovDQoJcHVibGljIHN0YXRpYyBmdW5jdGlvbiByYW5kb20oaW50ICRzaXplKTogc3RyaW5nDQoJew0KCQkkYmFnID0gImFiY2VmZ2hpamtub3BxcnN0dXd4eXpBQkNEREVGR0hJSktMTE1NTk9QUVJTVFVWVldYWVphYmNkZGVmZ2hpamtsbG1tbm9wcXJzdHV2dnd4eXpBQkNFRkdISUpLTk9QUVJTVFVXWFlaIjsNCgkJJGtleSA9IFtdOw0KCQkkYmFnc2l6ZSA9IHN0cmxlbigkYmFnKSAtIDE7DQoNCgkJZm9yICgkaSA9IDA7ICRpIDwgJHNpemU7ICRpKyspDQoJCXsNCgkJCSRnZXQgPSByYW5kKDAsICRiYWdzaXplKTsNCgkJCSRrZXlbXSA9ICRiYWdbJGdldF07DQoJCX0NCg0KCQlyZXR1cm4gaW1wbG9kZSgka2V5KTsNCgl9DQo=', '{\"load_selection0\":{\"load\":\"0a59c65c-9daf-4bc9-baf4-e063ff9e6a8a\"}}', '{}', '{\"source\":{\"guid\":\"1a1b6f3d-f16c-431a-b270-7a8a80cc7f56\"}}', 1, '2022-03-08 21:35:37', 58, '', 1), +(13, '0a59c65c-9daf-4bc9-baf4-e063ff9e6a8a', 'Utilities Array Helper', 'ArrayHelper', 'abstract class', 'Some array tricks helper\r\n\r\n@since 3.0.9', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICAzcmQgU2VwdGVtYmVyLCAyMDIwDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\Utilities.ArrayHelper', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIENoZWNrIGlmIGhhdmUgYW4gYXJyYXkgd2l0aCBhIGxlbmd0aA0KCSAqDQoJICogQGlucHV0CWFycmF5ICAgVGhlIGFycmF5IHRvIGNoZWNrDQoJICoNCgkgKiBAcmV0dXJucyBpbnR8ZmFsc2UgIG51bWJlciBvZiBpdGVtcyBpbiBhcnJheSBvbiBzdWNjZXNzDQoJICogDQoJICogQHNpbmNlICAzLjIuMA0KCSAqLw0KCXB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gY2hlY2soJGFycmF5LCAkcmVtb3ZlRW1wdHlTdHJpbmcgPSBmYWxzZSkNCgl7DQoJCWlmIChpc19hcnJheSgkYXJyYXkpICYmICgkbnIgPSBjb3VudCgoYXJyYXkpICRhcnJheSkpID4gMCkNCgkJew0KCQkJLy8gYWxzbyBtYWtlIHN1cmUgdGhlIGVtcHR5IHN0cmluZ3MgYXJlIHJlbW92ZWQNCgkJCWlmICgkcmVtb3ZlRW1wdHlTdHJpbmcpDQoJCQl7DQoJCQkJJGFycmF5ID0gYXJyYXlfZmlsdGVyKCRhcnJheSk7DQoNCgkJCQlpZiAoJGFycmF5ID09PSBbXSkNCgkJCQl7DQoJCQkJCXJldHVybiBmYWxzZTsNCgkJCQl9DQoNCgkJCQlyZXR1cm4gY291bnQoJGFycmF5KTsNCgkJCX0NCg0KCQkJcmV0dXJuICRucjsNCgkJfQ0KDQoJCXJldHVybiBmYWxzZTsNCgl9DQoNCgkvKioNCgkgKiBNZXJnZSBhbiBhcnJheSBvZiBhcnJheSdzDQoJICoNCgkgKiBAaW5wdXQJYXJyYXkgICBUaGUgYXJyYXlzIHlvdSB3b3VsZCBsaWtlIHRvIG1lcmdlDQoJICoNCgkgKiBAcmV0dXJucyBhcnJheXxudWxsICBtZXJnZWQgYXJyYXkgb24gc3VjY2Vzcw0KCSAqIA0KCSAqIEBzaW5jZSAgMy4wLjkNCgkgKi8NCglwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIG1lcmdlKCRhcnJheXMpOiA/YXJyYXkNCgl7DQoJCWlmKHNlbGY6OmNoZWNrKCRhcnJheXMpKQ0KCQl7DQoJCQkkbWVyZ2VkID0gW107DQoJCQlmb3JlYWNoICgkYXJyYXlzIGFzICRhcnJheSkNCgkJCXsNCgkJCQlpZiAoc2VsZjo6Y2hlY2soJGFycmF5KSkNCgkJCQl7DQoJCQkJCSRtZXJnZWQgPSBhcnJheV9tZXJnZSgkbWVyZ2VkLCAkYXJyYXkpOw0KCQkJCX0NCgkJCX0NCgkJCXJldHVybiAkbWVyZ2VkOw0KCQl9DQoJCXJldHVybiBudWxsOw0KCX0NCg0KCS8qKg0KCSAqIENoZWNrIGlmIGFycmF5cyBpbnRlcnNlY3QNCgkgKg0KCSAqIEBpbnB1dAlhcnJheSAgIFRoZSBmaXJzdCBhcnJheQ0KCSAqIEBpbnB1dAlhcnJheSAgIFRoZSBzZWNvbmQgYXJyYXkNCgkgKg0KCSAqIEByZXR1cm5zIGJvb2wgIHRydWUgaWYgaW50ZXJzZWN0IGVsc2UgZmFsc2UNCgkgKiANCgkgKiBAc2luY2UgIDMuMS4xDQoJICovDQoJcHVibGljIHN0YXRpYyBmdW5jdGlvbiBpbnRlcnNlY3QoJGFfYXJyYXksICRiX2FycmF5KTogYm9vbA0KCXsNCgkJLy8gZmxpcCB0aGUgc2Vjb25kIGFycmF5DQoJCSRiX2FycmF5ID0gYXJyYXlfZmxpcCgkYl9hcnJheSk7DQoNCgkJLy8gbG9vcCB0aGUgZmlyc3QgYXJyYXkNCgkJZm9yZWFjaCAoJGFfYXJyYXkgYXMgJHYpDQoJCXsNCgkJCWlmIChpc3NldCgkYl9hcnJheVskdl0pKQ0KCQkJew0KCQkJCXJldHVybiB0cnVlOw0KCQkJfQ0KCQl9DQoJCXJldHVybiBmYWxzZTsNCgl9DQo=', '{}', '{}', '', 1, '2022-03-08 22:53:52', 23, '', 1), +(14, 'ce8cf834-6bac-44fb-941c-861f7e046cc0', 'String Namespace Helper', 'NamespaceHelper', 'abstract class', 'Control the naming of a namespace helper\r\n\r\n@since 3.0.9', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICAzcmQgU2VwdGVtYmVyLCAyMDIwDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\Utilities.String.NamespaceHelper', '', '{}', '{}', '', '{\"use_selection0\":{\"use\":\"1f28cb53-60d9-4db1-b517-3c7dc6b429ef\",\"as\":\"default\"}}', 'CS8qKg0KCSAqIE1ha2luZyBuYW1lc3BhY2Ugc2FmZQ0KCSAqDQoJICogQHBhcmFtICBzdHJpbmcgICAkc3RyaW5nICAgIFRoZSBuYW1lc3BhY2Ugc3RyaW5nIHlvdSB3b3VsZCBsaWtlIHRvIG1ha2Ugc2FmZQ0KCSAqDQoJICogQHJldHVybiBzdHJpbmcgb24gc3VjY2Vzcw0KCSAqIEBzaW5jZSAgMy4wLjkNCgkgKi8NCglwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIHNhZmUoc3RyaW5nICRzdHJpbmcpOiBzdHJpbmcNCgl7DQoJCS8vIFJlbW92ZSBsZWFkaW5nIGFuZCB0cmFpbGluZyBiYWNrc2xhc2hlcw0KCQkkc3RyaW5nID0gdHJpbSgkc3RyaW5nLCAnXFwnKTsNCg0KCQkvLyBTcGxpdCB0aGUgc3RyaW5nIGludG8gbmFtZXNwYWNlIHNlZ21lbnRzDQoJCSRzZWdtZW50cyA9IGV4cGxvZGUoJ1xcJywgJHN0cmluZyk7DQoNCgkJLy8gbWFrZSBlYWNoIHNlZ21lbnQgc2FmZQ0KCQkkc2VnbWVudHMgPSBhcnJheV9tYXAoW3NlbGY6OmNsYXNzLCAnc2FmZVNlZ21lbnQnXSwgJHNlZ21lbnRzKTsNCg0KCQkvLyBKb2luIHRoZSBuYW1lc3BhY2Ugc2VnbWVudHMgYmFjayB0b2dldGhlcg0KCQlyZXR1cm4gaW1wbG9kZSgnXFwnLCAkc2VnbWVudHMpOw0KCX0NCg0KCS8qKg0KCSAqIE1ha2luZyBvbmUgbmFtZXNwYWNlIHNlZ21lbnQgc2FmZQ0KCSAqDQoJICogQHBhcmFtICBzdHJpbmcgICAkc3RyaW5nICAgIFRoZSBuYW1lc3BhY2Ugc2VnbWVudCBzdHJpbmcgeW91IHdvdWxkIGxpa2UgdG8gbWFrZSBzYWZlDQoJICoNCgkgKiBAcmV0dXJuIHN0cmluZyBvbiBzdWNjZXNzDQoJICogQHNpbmNlICAzLjAuOQ0KCSAqLw0KCXB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gc2FmZVNlZ21lbnQoc3RyaW5nICRzdHJpbmcpOiBzdHJpbmcNCgl7DQoJCS8vIENoZWNrIGlmIHNlZ21lbnQgc3RhcnRzIHdpdGggYSBudW1iZXINCgkJaWYgKHByZWdfbWF0Y2goIi9eXGQvIiwgJHN0cmluZykpDQoJCXsNCgkJCS8vIEV4dHJhY3QgdGhlIHN0YXJ0aW5nIG51bWJlcihzKQ0KCQkJcHJlZ19tYXRjaCgiL15cZCsvIiwgJHN0cmluZywgJG1hdGNoZXMpOw0KDQoJCQlpZiAoaXNzZXQoJG1hdGNoZXNbMF0pKQ0KCQkJew0KCQkJCSRudW1iZXJXb3JkID0gU3RyaW5nSGVscGVyOjpudW1iZXJzKCRtYXRjaGVzWzBdKTsNCgkJCQkkc3RyaW5nID0gc3RyX3JlcGxhY2UoJG1hdGNoZXNbMF0sICRudW1iZXJXb3JkLCAkc3RyaW5nKTsNCgkJCX0NCgkJfQ0KDQoJCS8vIFRyYW5zbGl0ZXJhdGUgc3RyaW5nIFRPRE86IGxvb2sgYWdhaW4gYXMgdGhpcyBtYWtlcyBpdCBsb3dlcmNhc2UNCgkJLy8gJHNlZ21lbnQgPSBTdHJpbmdIZWxwZXI6OnRyYW5zbGl0ZXJhdGUoJHNlZ21lbnQpOw0KDQoJCS8vIE1ha2Ugc3VyZSBzZWdtZW50IG9ubHkgY29udGFpbnMgdmFsaWQgY2hhcmFjdGVycw0KCQlyZXR1cm4gcHJlZ19yZXBsYWNlKCIvW15BLVphLXowLTldLyIsICcnLCAkc3RyaW5nKTsNCgl9', '{}', '{}', '', 1, '2022-03-08 23:27:57', 24, '', 1), +(17, 'db87c339-5bb6-4291-a7ef-2c48ea1b06bc', 'Utilities GetHelper', 'GetHelper', 'abstract class', 'Some easy get...\r\n\r\n@since 3.0.9', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICAzcmQgU2VwdGVtYmVyLCAyMDIwDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\Utilities.GetHelper', 1, '{}', '{}', 'dXNlIEpvb21sYVxDTVNcRmFjdG9yeTs=', '{\"use_selection0\":{\"use\":\"640b5352-fb09-425f-a26e-cd44eda03f15\",\"as\":\"default\"},\"use_selection1\":{\"use\":\"9d76b8dc-3883-4755-b11c-131d19ca8a53\",\"as\":\"Data\"}}', 'CS8qKg0KCSAqIEdldCBhIFZhcmlhYmxlIA0KCSAqDQoJICogQHBhcmFtICAgc3RyaW5nfG51bGwgICR0YWJsZSAgICAgICAgVGhlIHRhYmxlIGZyb20gd2hpY2ggdG8gZ2V0IHRoZSB2YXJpYWJsZQ0KCSAqIEBwYXJhbSAgIG1peGVkICAgICAgICAkd2hlcmUgICAgICAgIFRoZSB2YWx1ZSB3aGVyZQ0KCSAqIEBwYXJhbSAgIHN0cmluZyAgICAgICAkd2hlcmVTdHJpbmcgIFRoZSB0YXJnZXQvZmllbGQgc3RyaW5nIHdoZXJlL25hbWUNCgkgKiBAcGFyYW0gICBzdHJpbmcgICAgICAgJHdoYXQgICAgICAgICBUaGUgcmV0dXJuIGZpZWxkDQoJICogQHBhcmFtICAgc3RyaW5nICAgICAgICRvcGVyYXRvciAgICAgVGhlIG9wZXJhdG9yIGJldHdlZW4gJHdoZXJlU3RyaW5nL2ZpZWxkIGFuZCAkd2hlcmUvdmFsdWUNCgkgKiBAcGFyYW0gICBzdHJpbmcgICAgICAgJG1haW4gICAgICAgICBUaGUgY29tcG9uZW50IGluIHdoaWNoIHRoZSB0YWJsZSBpcyBmb3VuZA0KCSAqDQoJICogQHJldHVybiAgbWl4ZWQgc3RyaW5nL2ludC9mbG9hdA0KCSAqIEBzaW5jZSAgMy4wLjkNCgkgKg0KCSAqIEBkZXByZWNhdGVkIDUuMSAgVXNlICBEYXRhOjpfKCdEYXRhLkxvYWQnKS0+dGFibGUoJHRhYmxlKS0+dmFsdWUoLi4uKQ0KCSAqLw0KCXB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gdmFyKD9zdHJpbmcgJHRhYmxlID0gbnVsbCwgJHdoZXJlID0gbnVsbCwNCgkJc3RyaW5nICR3aGVyZVN0cmluZyA9ICd1c2VyJywgc3RyaW5nICR3aGF0ID0gJ2lkJywNCgkJc3RyaW5nICRvcGVyYXRvciA9ICc9JywgP3N0cmluZyAkbWFpbiA9IG51bGwpDQoJew0KCQlpZihlbXB0eSgkd2hlcmUpKQ0KCQl7DQoJCQkkd2hlcmUgPSBGYWN0b3J5OjpnZXRVc2VyKCktPmlkOw0KCQl9DQoNCgkJaWYoZW1wdHkoJG1haW4pKQ0KCQl7DQoJCQkkbWFpbiA9IEhlbHBlcjo6Z2V0Q29kZSgpOw0KCQl9DQoNCgkJLy8gR2V0IGEgZGIgY29ubmVjdGlvbi4NCgkJJGRiID0gRmFjdG9yeTo6Z2V0RGJvKCk7DQoNCgkJLy8gQ3JlYXRlIGEgbmV3IHF1ZXJ5IG9iamVjdC4NCgkJJHF1ZXJ5ID0gJGRiLT5nZXRRdWVyeSh0cnVlKTsNCgkJJHF1ZXJ5LT5zZWxlY3QoJGRiLT5xdW90ZU5hbWUoYXJyYXkoJHdoYXQpKSk7DQoNCgkJaWYgKGVtcHR5KCR0YWJsZSkpDQoJCXsNCgkJCSRxdWVyeS0+ZnJvbSgkZGItPnF1b3RlTmFtZSgnI19fJyAuICRtYWluKSk7DQoJCX0NCgkJZWxzZQ0KCQl7DQoJCQkkcXVlcnktPmZyb20oJGRiLT5xdW90ZU5hbWUoJyNfXycgLiAkbWFpbiAuICdfJyAuICR0YWJsZSkpOw0KCQl9DQoNCgkJaWYgKGlzX251bWVyaWMoJHdoZXJlKSkNCgkJew0KCQkJJHF1ZXJ5LT53aGVyZSgkZGItPnF1b3RlTmFtZSgkd2hlcmVTdHJpbmcpIC4gJyAnIC4gJG9wZXJhdG9yIC4gJyAnIC4gKGludCkgJHdoZXJlKTsNCgkJfQ0KCQllbHNlaWYgKGlzX3N0cmluZygkd2hlcmUpKQ0KCQl7DQoJCQkkcXVlcnktPndoZXJlKCRkYi0+cXVvdGVOYW1lKCR3aGVyZVN0cmluZykgLiAnICcgLiAkb3BlcmF0b3IgLiAnICcgLiAkZGItPnF1b3RlKChzdHJpbmcpJHdoZXJlKSk7DQoJCX0NCgkJZWxzZQ0KCQl7DQoJCQlyZXR1cm4gZmFsc2U7DQoJCX0NCg0KCQkkZGItPnNldFF1ZXJ5KCRxdWVyeSk7DQoJCSRkYi0+ZXhlY3V0ZSgpOw0KDQoJCWlmICgkZGItPmdldE51bVJvd3MoKSkNCgkJew0KCQkJcmV0dXJuICRkYi0+bG9hZFJlc3VsdCgpOw0KCQl9DQoNCgkJcmV0dXJuIGZhbHNlOw0KCX0NCg0KCS8qKg0KCSAqIEdldCBhcnJheSBvZiB2YXJpYWJsZXMNCgkgKg0KCSAqIEBwYXJhbSAgIHN0cmluZ3xudWxsICAkdGFibGUgICAgICAgIFRoZSB0YWJsZSBmcm9tIHdoaWNoIHRvIGdldCB0aGUgdmFyaWFibGVzDQoJICogQHBhcmFtICAgbWl4ZWQgICAgICAgICR3aGVyZSAgICAgICAgVGhlIHZhbHVlIHdoZXJlDQoJICogQHBhcmFtICAgc3RyaW5nICAgICAgICR3aGVyZVN0cmluZyAgVGhlIHRhcmdldC9maWVsZCBzdHJpbmcgd2hlcmUvbmFtZQ0KCSAqIEBwYXJhbSAgIHN0cmluZyAgICAgICAkd2hhdCAgICAgICAgIFRoZSByZXR1cm4gZmllbGQNCgkgKiBAcGFyYW0gICBzdHJpbmcgICAgICAgJG9wZXJhdG9yICAgICBUaGUgb3BlcmF0b3IgYmV0d2VlbiAkd2hlcmVTdHJpbmcvZmllbGQgYW5kICR3aGVyZS92YWx1ZQ0KCSAqIEBwYXJhbSAgIHN0cmluZyAgICAgICAkbWFpbiAgICAgICAgIFRoZSBjb21wb25lbnQgaW4gd2hpY2ggdGhlIHRhYmxlIGlzIGZvdW5kDQoJICogQHBhcmFtICAgYm9vbCAgICAgICAgICR1bmlxdWUgICAgICAgVGhlIHN3aXRjaCB0byByZXR1cm4gYSB1bmlxdWUgYXJyYXkNCgkgKg0KCSAqIEByZXR1cm4gIGFycmF5fG51bGwNCgkgKiBAc2luY2UgIDMuMC45DQoJICoNCgkgKiBAZGVwcmVjYXRlZCA1LjEgIFVzZSAgRGF0YTo6XygnRGF0YS5Mb2FkJyktPnRhYmxlKCR0YWJsZSktPnZhbHVlcyguLi4pDQoJICovDQoJcHVibGljIHN0YXRpYyBmdW5jdGlvbiB2YXJzKD9zdHJpbmcgJHRhYmxlID0gbnVsbCwgJHdoZXJlID0gbnVsbCwNCgkJc3RyaW5nICR3aGVyZVN0cmluZyA9ICd1c2VyJywgc3RyaW5nICR3aGF0ID0gJ2lkJywgc3RyaW5nICRvcGVyYXRvciA9ICdJTicsDQoJCT9zdHJpbmcgJG1haW4gPSBudWxsLCBib29sICR1bmlxdWUgPSB0cnVlKTogP2FycmF5DQoJew0KCQlpZihlbXB0eSgkd2hlcmUpKQ0KCQl7DQoJCQkkd2hlcmUgPSBGYWN0b3J5OjpnZXRVc2VyKCktPmlkOw0KCQl9DQoNCgkJaWYoJG1haW4gPT09IG51bGwpDQoJCXsNCgkJCSRtYWluID0gSGVscGVyOjpnZXRDb2RlKCk7DQoJCX0NCg0KCQlpZiAoIUFycmF5SGVscGVyOjpjaGVjaygkd2hlcmUpICYmICR3aGVyZSA+IDApDQoJCXsNCgkJCSR3aGVyZSA9IFskd2hlcmVdOw0KCQl9DQoNCgkJaWYgKEFycmF5SGVscGVyOjpjaGVjaygkd2hlcmUpKQ0KCQl7DQoJCQkvLyBwcmVwIG1haW4gPC0tIHdoeT8gd2VsbCBpZiAkbWFpbj0nJyBpcyBlbXB0eSB0aGVuICR0YWJsZSBjYW4gYmUgY2F0ZWdvcmllcyBvciB1c2Vycw0KCQkJaWYgKFN0cmluZ0hlbHBlcjo6Y2hlY2soJG1haW4pKQ0KCQkJew0KCQkJCSRtYWluID0gJ18nIC4gbHRyaW0oJG1haW4sICdfJyk7DQoJCQl9DQoNCgkJCS8vIEdldCBhIGRiIGNvbm5lY3Rpb24uDQoJCQkkZGIgPSBGYWN0b3J5OjpnZXREYm8oKTsNCg0KCQkJLy8gQ3JlYXRlIGEgbmV3IHF1ZXJ5IG9iamVjdC4NCgkJCSRxdWVyeSA9ICRkYi0+Z2V0UXVlcnkodHJ1ZSk7DQoJCQkkcXVlcnktPnNlbGVjdCgkZGItPnF1b3RlTmFtZShhcnJheSgkd2hhdCkpKTsNCg0KCQkJaWYgKGVtcHR5KCR0YWJsZSkpDQoJCQl7DQoJCQkJJHF1ZXJ5LT5mcm9tKCRkYi0+cXVvdGVOYW1lKCcjX18nIC4gJG1haW4pKTsNCgkJCX0NCgkJCWVsc2UNCgkJCXsNCgkJCQkkcXVlcnktPmZyb20oJGRiLT5xdW90ZU5hbWUoJyNfJyAuICRtYWluIC4gJ18nIC4gJHRhYmxlKSk7DQoJCQl9DQoNCgkJCS8vIGFkZCBzdHJpbmdzIHRvIGFycmF5IHNlYXJjaA0KCQkJaWYgKCdJTl9TVFJJTkdTJyA9PT0gJG9wZXJhdG9yIHx8ICdOT1QgSU5fU1RSSU5HUycgPT09ICRvcGVyYXRvcikNCgkJCXsNCgkJCQkkcXVlcnktPndoZXJlKCRkYi0+cXVvdGVOYW1lKCR3aGVyZVN0cmluZykgLiAnICcgLiBzdHJfcmVwbGFjZSgnX1NUUklOR1MnLCAnJywgJG9wZXJhdG9yKSAuICcgKCInIC4gaW1wbG9kZSgnIiwiJywgJHdoZXJlKSAuICciKScpOw0KCQkJfQ0KCQkJZWxzZQ0KCQkJew0KCQkJCSRxdWVyeS0+d2hlcmUoJGRiLT5xdW90ZU5hbWUoJHdoZXJlU3RyaW5nKSAuICcgJyAuICRvcGVyYXRvciAuICcgKCcgLiBpbXBsb2RlKCcsJywgJHdoZXJlKSAuICcpJyk7DQoJCQl9DQoNCgkJCSRkYi0+c2V0UXVlcnkoJHF1ZXJ5KTsNCgkJCSRkYi0+ZXhlY3V0ZSgpOw0KDQoJCQlpZiAoJGRiLT5nZXROdW1Sb3dzKCkpDQoJCQl7DQoJCQkJaWYgKCR1bmlxdWUpDQoJCQkJew0KCQkJCQlyZXR1cm4gYXJyYXlfdW5pcXVlKCRkYi0+bG9hZENvbHVtbigpKTsNCgkJCQl9DQoJCQkJcmV0dXJuICRkYi0+bG9hZENvbHVtbigpOw0KCQkJfQ0KCQl9DQoNCgkJcmV0dXJuIG51bGw7DQoJfQ0KDQoJLyoqDQoJICogZ2V0IGFsbCBzdHJpbmdzIGJldHdlZW4gdHdvIG90aGVyIHN0cmluZ3MNCgkgKiANCgkgKiBAcGFyYW0gIHN0cmluZyAgICAgICAkY29udGVudCAgICBUaGUgY29udGVudCB0byBzZWFyY2gNCgkgKiBAcGFyYW0gIHN0cmluZyAgICAgICAkc3RhcnQgICAgICBUaGUgc3RhcnRpbmcgdmFsdWUNCgkgKiBAcGFyYW0gIHN0cmluZyAgICAgICAkZW5kICAgICAgICBUaGUgZW5kaW5nIHZhbHVlDQoJICoNCgkgKiBAcmV0dXJuICBhcnJheXxudWxsICAgICAgICAgIE9uIHN1Y2Nlc3MNCgkgKiBAc2luY2UgIDMuMC45DQoJICovDQoJcHVibGljIHN0YXRpYyBmdW5jdGlvbiBhbGxCZXR3ZWVuKHN0cmluZyAkY29udGVudCwgc3RyaW5nICRzdGFydCwgc3RyaW5nICRlbmQpOiA/YXJyYXkNCgl7DQoJCS8vIHJlc2V0IGJ1Y2tldA0KCQkkYnVja2V0ID0gW107DQoJCWZvciAoJGkgPSAwOyA7ICRpKyspDQoJCXsNCgkJCS8vIHNlYXJjaCBmb3Igc3RyaW5nDQoJCQkkZm91bmQgPSBzZWxmOjpiZXR3ZWVuKCRjb250ZW50LCAkc3RhcnQsICRlbmQpOw0KDQoJCQlpZiAoU3RyaW5nSGVscGVyOjpjaGVjaygkZm91bmQpKQ0KCQkJew0KCQkJCS8vIGFkZCB0byBidWNrZXQNCgkJCQkkYnVja2V0W10gPSAkZm91bmQ7DQoNCgkJCQkvLyBidWlsZCByZW1vdmFsIHN0cmluZw0KCQkJCSRyZW1vdmUgPSAkc3RhcnQgLiAkZm91bmQgLiAkZW5kOw0KDQoJCQkJLy8gcmVtb3ZlIGZyb20gY29udGVudA0KCQkJCSRjb250ZW50ID0gc3RyX3JlcGxhY2UoJHJlbW92ZSwgJycsICRjb250ZW50KTsNCgkJCX0NCgkJCWVsc2UNCgkJCXsNCgkJCQlicmVhazsNCgkJCX0NCg0KCQkJLy8gc2FmZXR5IGNhdGNoDQoJCQlpZiAoJGkgPT0gNTAwKQ0KCQkJew0KCQkJCWJyZWFrOw0KCQkJfQ0KCQl9DQoNCgkJLy8gb25seSByZXR1cm4gdW5pcXVlIGFycmF5IG9mIHZhbHVlcw0KCQlpZiAoQXJyYXlIZWxwZXI6OmNoZWNrKCRidWNrZXQpKQ0KCQl7DQoJCQlyZXR1cm4gIGFycmF5X3VuaXF1ZSgkYnVja2V0KTsNCgkJfQ0KDQoJCXJldHVybiBudWxsOw0KCX0NCg0KCS8qKg0KCSAqIGdldCBhIHN0cmluZyBiZXR3ZWVuIHR3byBvdGhlciBzdHJpbmdzDQoJICogDQoJICogQHBhcmFtICBzdHJpbmcgICAgICAgJGNvbnRlbnQgICAgVGhlIGNvbnRlbnQgdG8gc2VhcmNoDQoJICogQHBhcmFtICBzdHJpbmcgICAgICAgJHN0YXJ0ICAgICAgVGhlIHN0YXJ0aW5nIHZhbHVlDQoJICogQHBhcmFtICBzdHJpbmcgICAgICAgJGVuZCAgICAgICAgVGhlIGVuZGluZyB2YWx1ZQ0KCSAqIEBwYXJhbSAgc3RyaW5nICAgICAgICRkZWZhdWx0ICAgIFRoZSBkZWZhdWx0IHZhbHVlIGlmIG5vbmUgZm91bmQNCgkgKg0KCSAqIEByZXR1cm4gIHN0cmluZyAgICAgICAgICBPbiBzdWNjZXNzIC8gZW1wdHkgc3RyaW5nIG9uIGZhaWx1cmUNCgkgKiBAc2luY2UgIDMuMC45DQoJICovDQoJcHVibGljIHN0YXRpYyBmdW5jdGlvbiBiZXR3ZWVuKHN0cmluZyAkY29udGVudCwgc3RyaW5nICRzdGFydCwgc3RyaW5nICRlbmQsIHN0cmluZyAkZGVmYXVsdCA9ICcnKTogc3RyaW5nDQoJew0KCQkkYXJyYXkgPSBleHBsb2RlKCRzdGFydCwgJGNvbnRlbnQpOw0KCQlpZiAoaXNzZXQoJGFycmF5WzFdKSAmJiBzdHJwb3MoJGFycmF5WzFdLCAkZW5kKSAhPT0gZmFsc2UpDQoJCXsNCgkJCSRhcnJheSA9IGV4cGxvZGUoJGVuZCwgJGFycmF5WzFdKTsNCg0KCQkJLy8gcmV0dXJuIHN0cmluZyBmb3VuZCBiZXR3ZWVuDQoJCQlyZXR1cm4gJGFycmF5WzBdOw0KCQl9DQoNCgkJcmV0dXJuICRkZWZhdWx0Ow0KCX0NCg==', '{\"load_selection0\":{\"load\":\"0a59c65c-9daf-4bc9-baf4-e063ff9e6a8a\"},\"load_selection1\":{\"load\":\"1f28cb53-60d9-4db1-b517-3c7dc6b429ef\"}}', '{}', '', 1, '2022-03-09 00:21:06', 31, '', 1), +(18, '91004529-94a9-4590-b842-e7c6b624ecf5', 'Utilities Object Helper', 'ObjectHelper', 'abstract class', 'Some object tricks\r\n\r\n@since 3.0.9', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICAzcmQgU2VwdGVtYmVyLCAyMDIwDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\Utilities.ObjectHelper', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIENoZWNrIGlmIGhhdmUgYW4gb2JqZWN0IHdpdGggYSBsZW5ndGgNCgkgKg0KCSAqIEBpbnB1dAlvYmplY3QgICBUaGUgb2JqZWN0IHRvIGNoZWNrDQoJICoNCgkgKiBAcmV0dXJucyBib29sIHRydWUgb24gc3VjY2Vzcw0KCSAqIA0KCSAqIEBzaW5jZSAgMy4wLjkNCgkgKi8NCglwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIGNoZWNrKCRvYmplY3QpDQoJew0KCQlpZiAoaXNfb2JqZWN0KCRvYmplY3QpKQ0KCQl7DQoJCQlyZXR1cm4gY291bnQoKGFycmF5KSAkb2JqZWN0KSA+IDA7DQoJCX0NCg0KCQlyZXR1cm4gZmFsc2U7DQoJfQ0KDQoJLyoqDQoJICogQ2hlY2tzIGlmIHR3byBvYmplY3RzIGFyZSBlcXVhbCBieSBjb21wYXJpbmcgdGhlaXIgcHJvcGVydGllcyBhbmQgdmFsdWVzLg0KCSAqDQoJICogIFRoaXMgbWV0aG9kIGNvbnZlcnRzIGJvdGggaW5wdXQgb2JqZWN0cyB0bw0KCSAqICBhc3NvY2lhdGl2ZSBhcnJheXMsIHNvcnRzIHRoZSBhcnJheXMgYnkga2V5cywNCgkgKiAgYW5kIGNvbXBhcmVzIHRoZXNlIHNvcnRlZCBhcnJheXMuDQoJICoNCgkgKiAgSWYgdGhlIGFycmF5cyBhcmUgaWRlbnRpY2FsLCB0aGUgb2JqZWN0cyBhcmUgY29uc2lkZXJlZCBlcXVhbC4NCgkgKg0KCSAqIEBwYXJhbSBvYmplY3R8bnVsbCAgJG9iajEgIFRoZSBmaXJzdCBvYmplY3QgdG8gY29tcGFyZS4NCgkgKiBAcGFyYW0gb2JqZWN0fG51bGwgICRvYmoyICBUaGUgc2Vjb25kIG9iamVjdCB0byBjb21wYXJlLg0KCSAqDQoJICogQHJldHVybiBib29sICBUcnVlIGlmIHRoZSBvYmplY3RzIGFyZSBlcXVhbCwgZmFsc2Ugb3RoZXJ3aXNlLg0KCSAqIEBzaW5jZSAgNS4wLjINCgkgKi8NCglwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIGVxdWFsKD9vYmplY3QgJG9iajEsID9vYmplY3QgJG9iajIpOiBib29sDQoJew0KCQkvLyBpZiBhbnkgaXMgbnVsbCB3ZSByZXR1cm4gZmFsc2UgYXMgdGhhdCBtZWFucyB0aGVyZSBpcyBhIG5vbmUgb2JqZWN0DQoJCS8vIHdlIGFyZSBub3QgY29tcGFyaW5nIG51bGwgYnV0IG9iamVjdHMNCgkJLy8gYnV0IHdlIGFsbG93IG51bGwgYXMgc29tZSBvYmplY3RzIHdoaWxlDQoJCS8vIG5vdCBpbnN0YW50aWF0ZSBhcmUgc3RpbGwgbnVsbA0KCQlpZiAoaXNfbnVsbCgkb2JqMSkgfHwgaXNfbnVsbCgkb2JqMikpDQoJCXsNCgkJCXJldHVybiBmYWxzZTsNCgkJfQ0KDQoJCS8vIENvbnZlcnQgYm90aCBvYmplY3RzIHRvIGFzc29jaWF0aXZlIGFycmF5cw0KCQkkYXJyYXkxID0ganNvbl9kZWNvZGUoanNvbl9lbmNvZGUoJG9iajEpLCB0cnVlKTsNCgkJJGFycmF5MiA9IGpzb25fZGVjb2RlKGpzb25fZW5jb2RlKCRvYmoyKSwgdHJ1ZSk7DQoNCgkJLy8gU29ydCB0aGUgYXJyYXlzIGJ5IGtleXMNCgkJc2VsZjo6cmVjdXJzaXZlS3NvcnQoJGFycmF5MSk7DQoJCXNlbGY6OnJlY3Vyc2l2ZUtzb3J0KCRhcnJheTIpOw0KDQoJCS8vIENvbXBhcmUgdGhlIHNvcnRlZCBhcnJheXMNCgkJcmV0dXJuICRhcnJheTEgPT09ICRhcnJheTI7DQoJfQ0KDQoJLyoqDQoJICogUmVjdXJzaXZlbHkgc29ydHMgYW4gYXNzb2NpYXRpdmUgYXJyYXkgYnkga2V5cy4NCgkgKg0KCSAqIFRoaXMgbWV0aG9kIHdpbGwgc29ydCBhbiBhc3NvY2lhdGl2ZSBhcnJheSBieSBpdHMga2V5cyBhdCBhbGwgbGV2ZWxzLg0KCSAqDQoJICogQHBhcmFtIGFycmF5ICYkYXJyYXkgVGhlIGFycmF5IHRvIHNvcnQuDQoJICoNCgkgKiBAcmV0dXJuIHZvaWQNCgkgKiBAc2luY2UgIDUuMC4yDQoJICovDQoJcHJvdGVjdGVkIHN0YXRpYyBmdW5jdGlvbiByZWN1cnNpdmVLc29ydChhcnJheSAmJGFycmF5KTogdm9pZA0KCXsNCgkJLy8gU29ydCB0aGUgYXJyYXkgYnkgaXRzIGtleXMNCgkJa3NvcnQoJGFycmF5KTsNCg0KCQkvLyBSZWN1cnNpdmVseSBzb3J0IG5lc3RlZCBhcnJheXMNCgkJZm9yZWFjaCAoJGFycmF5IGFzICYkdmFsdWUpDQoJCXsNCgkJCWlmIChpc19hcnJheSgkdmFsdWUpKQ0KCQkJew0KCQkJCXNlbGY6OnJlY3Vyc2l2ZUtzb3J0KCR2YWx1ZSk7DQoJCQl9DQoJCX0NCgl9', '{}', '{}', '', 1, '2022-03-09 00:35:23', 23, '', 1), +(21, '9c513baf-b279-43fd-ae29-a585c8cbc4f0', 'Utilities GuidHelper', 'GuidHelper', 'abstract class', 'Global Unique ID Helper\r\n\r\n@since 3.0.9', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICAzcmQgU2VwdGVtYmVyLCAyMDIwDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\Utilities.GuidHelper', 1, '{}', '{}', 'dXNlIEpvb21sYVxDTVNcRmFjdG9yeTs=', '{\"use_selection0\":{\"use\":\"640b5352-fb09-425f-a26e-cd44eda03f15\",\"as\":\"default\"}}', 'CS8qKg0KCSAqIFJldHVybnMgYSBHVUlEdjQgc3RyaW5nDQoJICogDQoJICogVGhhbmtzIHRvIERhdmUgUGVhcnNvbiAoYW5kIG90aGVyKQ0KCSAqIGh0dHBzOi8vd3d3LnBocC5uZXQvbWFudWFsL2VuL2Z1bmN0aW9uLmNvbS1jcmVhdGUtZ3VpZC5waHAjMTE5MTY4IA0KCSAqDQoJICogVXNlcyB0aGUgYmVzdCBjcnlwdG9ncmFwaGljYWxseSBzZWN1cmUgbWV0aG9kDQoJICogZm9yIGFsbCBzdXBwb3J0ZWQgcGxhdGZvcm1zIHdpdGggZmFsbGJhY2sgdG8gYW4gb2xkZXIsDQoJICogbGVzcyBzZWN1cmUgdmVyc2lvbi4NCgkgKg0KCSAqIEBwYXJhbSBib29sICR0cmltDQoJICoNCgkgKiBAcmV0dXJuIHN0cmluZw0KCSAqDQoJICogQHNpbmNlICAzLjAuOQ0KCSAqLw0KCXB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gZ2V0KGJvb2wgJHRyaW0gPSB0cnVlKTogc3RyaW5nDQoJew0KCQkvLyBXaW5kb3dzDQoJCWlmIChmdW5jdGlvbl9leGlzdHMoJ2NvbV9jcmVhdGVfZ3VpZCcpKQ0KCQl7DQoJCQlpZiAoJHRyaW0pDQoJCQl7DQoJCQkJcmV0dXJuIHRyaW0oY29tX2NyZWF0ZV9ndWlkKCksICd7fScpOw0KCQkJfQ0KCQkJcmV0dXJuIGNvbV9jcmVhdGVfZ3VpZCgpOw0KCQl9DQoNCgkJLy8gc2V0IHRoZSBicmFjZXMgaWYgbmVlZGVkDQoJCSRsYnJhY2UgPSAkdHJpbSA/ICIiIDogY2hyKDEyMyk7ICAgIC8vICJ7Ig0KCQkkcmJyYWNlID0gJHRyaW0gPyAiIiA6IGNocigxMjUpOyAgICAvLyAifSINCg0KCQkvLyBPU1gvTGludXgNCgkJaWYgKGZ1bmN0aW9uX2V4aXN0cygnb3BlbnNzbF9yYW5kb21fcHNldWRvX2J5dGVzJykpDQoJCXsNCgkJCSRkYXRhID0gb3BlbnNzbF9yYW5kb21fcHNldWRvX2J5dGVzKDE2KTsNCgkJCSRkYXRhWzZdID0gY2hyKCBvcmQoJGRhdGFbNl0pICYgMHgwZiB8IDB4NDApOyAgICAvLyBzZXQgdmVyc2lvbiB0byAwMTAwDQoJCQkkZGF0YVs4XSA9IGNociggb3JkKCRkYXRhWzhdKSAmIDB4M2YgfCAweDgwKTsgICAgLy8gc2V0IGJpdHMgNi03IHRvIDEwDQoJCQlyZXR1cm4gJGxicmFjZSAuIHZzcHJpbnRmKCclcyVzLSVzLSVzLSVzLSVzJXMlcycsIHN0cl9zcGxpdChiaW4yaGV4KCRkYXRhKSwgNCkpIC4gJGxicmFjZTsNCgkJfQ0KDQoJCS8vIEZhbGxiYWNrIChQSFAgNC4yKykNCgkJbXRfc3JhbmQoKGRvdWJsZSkgbWljcm90aW1lKCkgKiAxMDAwMCk7DQoJCSRjaGFyaWQgPSBzdHJ0b2xvd2VyKCBtZDUoIHVuaXFpZCggcmFuZCgpLCB0cnVlKSkpOw0KCQkkaHlwaGVuID0gY2hyKDQ1KTsgICAgICAgICAgICAgICAgICAvLyAiLSINCgkJJGd1aWR2NCA9ICRsYnJhY2UuDQoJCQlzdWJzdHIoJGNoYXJpZCwgIDAsICA4KS4gJGh5cGhlbi4NCgkJCXN1YnN0cigkY2hhcmlkLCAgOCwgIDQpLiAkaHlwaGVuLg0KCQkJc3Vic3RyKCRjaGFyaWQsIDEyLCAgNCkuICRoeXBoZW4uDQoJCQlzdWJzdHIoJGNoYXJpZCwgMTYsICA0KS4gJGh5cGhlbi4NCgkJCXN1YnN0cigkY2hhcmlkLCAyMCwgMTIpLg0KCQkJJHJicmFjZTsNCgkJcmV0dXJuICRndWlkdjQ7DQoJfQ0KDQoJLyoqDQoJICogVmFsaWRhdGUgdGhlIEdsb2JhbGx5IFVuaXF1ZSBJZGVudGlmaWVyICggYW5kIGNoZWNrIGlmIHRhYmxlIGFscmVhZHkgaGFzIHRoaXMgaWRlbnRpZmllcikNCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmcgICAgICAgJGd1aWQNCgkgKiBAcGFyYW0gc3RyaW5nfG51bGwgICAgICAgJHRhYmxlDQoJICogQHBhcmFtIGludCAgICAgICAgICAgICRpZA0KCSAqIEBwYXJhbSBzdHJpbmd8bnVsbCAkY29tcG9uZW50DQoJICoNCgkgKiBAcmV0dXJuIGJvb2wNCgkgKg0KCSAqIEBzaW5jZSAgMy4wLjkNCgkgKi8NCglwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIHZhbGlkKCRndWlkLCA/c3RyaW5nICR0YWJsZSA9IG51bGwsIGludCAkaWQgPSAwLCA/c3RyaW5nICRjb21wb25lbnQgPSBudWxsKTogYm9vbA0KCXsNCgkJLy8gY2hlY2sgaWYgd2UgaGF2ZSBhIHN0cmluZw0KCQlpZiAoc2VsZjo6dmFsaWRhdGUoJGd1aWQpKQ0KCQl7DQoJCQkvLyBjaGVjayBpZiB0YWJsZSBhbHJlYWR5IGhhcyB0aGlzIGlkZW50aWZpZXINCgkJCWlmIChTdHJpbmdIZWxwZXI6OmNoZWNrKCR0YWJsZSkpDQoJCQl7DQoJCQkJLy8gY2hlY2sgdGhhdCB3ZSBoYXZlIHRoZSBjb21wb25lbnQgY29kZSBuYW1lDQoJCQkJaWYgKCFpc19zdHJpbmcoJGNvbXBvbmVudCkpDQoJCQkJew0KCQkJCQkkY29tcG9uZW50ID0gKHN0cmluZykgSGVscGVyOjpnZXRDb2RlKCk7DQoJCQkJfQ0KCQkJCS8vIEdldCB0aGUgZGF0YWJhc2Ugb2JqZWN0IGFuZCBhIG5ldyBxdWVyeSBvYmplY3QuDQoJCQkJJGRiID0gRmFjdG9yeTo6Z2V0RGJvKCk7DQoJCQkJJHF1ZXJ5ID0gJGRiLT5nZXRRdWVyeSh0cnVlKTsNCgkJCQkkcXVlcnktPnNlbGVjdCgnQ09VTlQoKiknKQ0KCQkJCQktPmZyb20oJyNfXycgLiAoc3RyaW5nKSAkY29tcG9uZW50IC4gJ18nIC4gKHN0cmluZykgJHRhYmxlKQ0KCQkJCQktPndoZXJlKCRkYi0+cXVvdGVOYW1lKCdndWlkJykgLiAnID0gJyAuICRkYi0+cXVvdGUoJGd1aWQpKTsNCg0KCQkJCS8vIHJlbW92ZSB0aGlzIGl0ZW0gZnJvbSB0aGUgbGlzdA0KCQkJCWlmICgkaWQgPiAwKQ0KCQkJCXsNCgkJCQkJJHF1ZXJ5LT53aGVyZSgkZGItPnF1b3RlTmFtZSgnaWQnKSAuICcgPD4gJyAuIChpbnQpICRpZCk7DQoJCQkJfQ0KDQoJCQkJLy8gU2V0IGFuZCBxdWVyeSB0aGUgZGF0YWJhc2UuDQoJCQkJJGRiLT5zZXRRdWVyeSgkcXVlcnkpOw0KCQkJCSRkdXBsaWNhdGUgPSAoYm9vbCkgJGRiLT5sb2FkUmVzdWx0KCk7DQoNCgkJCQlpZiAoJGR1cGxpY2F0ZSkNCgkJCQl7DQoJCQkJCXJldHVybiBmYWxzZTsNCgkJCQl9DQoJCQl9DQoJCQlyZXR1cm4gdHJ1ZTsNCgkJfQ0KCQlyZXR1cm4gZmFsc2U7DQoJfQ0KDQoJLyoqDQoJICogZ2V0IHRoZSBpdGVtIGJ5IGd1aWQgaW4gYSB0YWJsZQ0KCSAqDQoJICogQHBhcmFtIHN0cmluZyAgICAgICAgICAgJGd1aWQNCgkgKiBAcGFyYW0gc3RyaW5nICAgICAgICAgICAkdGFibGUNCgkgKiBAcGFyYW0gc3RyaW5nfGFycmF5ICAkd2hhdA0KCSAqIEBwYXJhbSBzdHJpbmd8bnVsbCAgICAkY29tcG9uZW50DQoJICoNCgkgKiBAcmV0dXJuIG1peGVkDQoJICoNCgkgKiBAc2luY2UgIDMuMC45DQoJICovDQoJcHVibGljIHN0YXRpYyBmdW5jdGlvbiBpdGVtKCRndWlkLCAkdGFibGUsICR3aGF0ID0gJ2EuaWQnLCA/c3RyaW5nICRjb21wb25lbnQgPSBudWxsKQ0KCXsNCgkJLy8gY2hlY2sgaWYgd2UgaGF2ZSBhIHN0cmluZw0KCQkvLyBjaGVjayBpZiB0YWJsZSBhbHJlYWR5IGhhcyB0aGlzIGlkZW50aWZpZXINCgkJaWYgKHNlbGY6OnZhbGlkYXRlKCRndWlkKSAmJiBTdHJpbmdIZWxwZXI6OmNoZWNrKCR0YWJsZSkpDQoJCXsNCgkJCS8vIGNoZWNrIHRoYXQgd2UgaGF2ZSB0aGUgY29tcG9uZW50IGNvZGUgbmFtZQ0KCQkJaWYgKCFpc19zdHJpbmcoJGNvbXBvbmVudCkpDQoJCQl7DQoJCQkJJGNvbXBvbmVudCA9IChzdHJpbmcpIEhlbHBlcjo6Z2V0Q29kZSgpOw0KCQkJfQ0KCQkJLy8gR2V0IHRoZSBkYXRhYmFzZSBvYmplY3QgYW5kIGEgbmV3IHF1ZXJ5IG9iamVjdC4NCgkJCSRkYiA9IEZhY3Rvcnk6OmdldERibygpOw0KCQkJJHF1ZXJ5ID0gJGRiLT5nZXRRdWVyeSh0cnVlKTsNCg0KCQkJaWYgKEFycmF5SGVscGVyOjpjaGVjaygkd2hhdCkpDQoJCQl7DQoJCQkJJHF1ZXJ5LT5zZWxlY3QoJGRiLT5xdW90ZU5hbWUoJHdoYXQpKTsNCgkJCX0NCgkJCWVsc2UNCgkJCXsNCgkJCQkkcXVlcnktPnNlbGVjdCgkd2hhdCk7DQoJCQl9DQoNCgkJCSRxdWVyeS0+ZnJvbSgkZGItPnF1b3RlTmFtZSgnI19fJyAuIChzdHJpbmcpICRjb21wb25lbnQgLiAnXycgLiAoc3RyaW5nKSAkdGFibGUsICdhJykpDQoJCQkJLT53aGVyZSgkZGItPnF1b3RlTmFtZSgnYS5ndWlkJykgLiAnID0gJyAuICRkYi0+cXVvdGUoJGd1aWQpKTsNCg0KCQkJLy8gU2V0IGFuZCBxdWVyeSB0aGUgZGF0YWJhc2UuDQoJCQkkZGItPnNldFF1ZXJ5KCRxdWVyeSk7DQoJCQkkZGItPmV4ZWN1dGUoKTsNCg0KCQkJaWYgKCRkYi0+Z2V0TnVtUm93cygpKQ0KCQkJew0KCQkJCWlmIChBcnJheUhlbHBlcjo6Y2hlY2soJHdoYXQpIHx8ICR3aGF0ID09PSAnYS4qJykNCgkJCQl7DQoJCQkJCXJldHVybiAkZGItPmxvYWRPYmplY3QoKTsNCgkJCQl9DQoJCQkJZWxzZQ0KCQkJCXsNCgkJCQkJcmV0dXJuICRkYi0+bG9hZFJlc3VsdCgpOw0KCQkJCX0NCgkJCX0NCgkJfQ0KDQoJCXJldHVybiBudWxsOw0KCX0NCg0KCS8qKg0KCSAqIFZhbGlkYXRlIHRoZSBHbG9iYWxseSBVbmlxdWUgSWRlbnRpZmllcg0KCSAqDQoJICogVGhhbmtzIHRvIExld2llDQoJICogaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9hLzE1MTU0NTYvMTQyOTY3Nw0KCSAqDQoJICogQHBhcmFtIHN0cmluZyAkZ3VpZA0KCSAqDQoJICogQHJldHVybiBib29sDQoJICoNCgkgKiBAc2luY2UgIDMuMC45DQoJICovDQoJcHJvdGVjdGVkIHN0YXRpYyBmdW5jdGlvbiB2YWxpZGF0ZSgkZ3VpZCkNCgl7DQoJCS8vIGNoZWNrIGlmIHdlIGhhdmUgYSBzdHJpbmcNCgkJaWYgKFN0cmluZ0hlbHBlcjo6Y2hlY2soJGd1aWQpKQ0KCQl7DQoJCQlyZXR1cm4gcHJlZ19tYXRjaCgiL14oXHspP1thLWZcZF17OH0oLVthLWZcZF17NH0pezR9W2EtZlxkXXs4fSg/KDEpXH0pJC9pIiwgJGd1aWQpOw0KCQl9DQoJCXJldHVybiBmYWxzZTsNCgl9DQo=', '{\"load_selection0\":{\"load\":\"0a59c65c-9daf-4bc9-baf4-e063ff9e6a8a\"},\"load_selection1\":{\"load\":\"1f28cb53-60d9-4db1-b517-3c7dc6b429ef\"}}', '{}', '', 1, '2022-03-12 01:27:10', 21, '', 1), +(23, '640b5352-fb09-425f-a26e-cd44eda03f15', 'Utilities Component Helper', 'Helper', 'abstract class', 'Some component helper\r\n\r\n@since 3.0.11', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICAzcmQgU2VwdGVtYmVyLCAyMDIwDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\Utilities.Component.Helper', 1, '{}', '{}', 'dXNlIEpvb21sYVxDTVNcRmFjdG9yeTsNCnVzZSBKb29tbGFcQ01TXENvbXBvbmVudFxDb21wb25lbnRIZWxwZXI7DQp1c2UgSm9vbWxhXENNU1xNVkNcTW9kZWxcQmFzZURhdGFiYXNlTW9kZWw7DQp1c2UgSm9vbWxhXElucHV0XElucHV0Ow0KdXNlIEpvb21sYVxSZWdpc3RyeVxSZWdpc3RyeTs=', '{\"use_selection0\":{\"use\":\"ce8cf834-6bac-44fb-941c-861f7e046cc0\",\"as\":\"default\"},\"use_selection1\":{\"use\":\"1f28cb53-60d9-4db1-b517-3c7dc6b429ef\",\"as\":\"default\"}}', 'CS8qKg0KCSAqIFRoZSBjdXJyZW50IG9wdGlvbg0KCSAqDQoJICogQHZhciAgICBzdHJpbmd8bnVsbA0KCSAqIEBzaW5jZSAgIDMuMC4xMQ0KCSAqLw0KCXB1YmxpYyBzdGF0aWMgP3N0cmluZyAkb3B0aW9uID0gbnVsbDsNCg0KCS8qKg0KCSAqIFRoZSBjb21wb25lbnQgbWFuaWZlc3QgbGlzdCBjYWNoZQ0KCSAqDQoJICogQHZhciAgICBhcnJheQ0KCSAqIEBzaW5jZSAgIDMuMi4wDQoJICovDQoJcHVibGljIHN0YXRpYyBhcnJheSAkbWFuaWZlc3QgPSBbXTsNCg0KCS8qKg0KCSAqIFRoZSBjb21wb25lbnQgcGFyYW1zIGxpc3QgY2FjaGUNCgkgKg0KCSAqIEB2YXIgICAgUmVnaXN0cnlbXQ0KCSAqIEBzaW5jZSAgIDMuMC4xMQ0KCSAqLw0KCXByb3RlY3RlZCBzdGF0aWMgYXJyYXkgJHBhcmFtcyA9IFtdOw0KDQoJLyoqDQoJICogU2V0cyBhIHBhcmFtZXRlciB2YWx1ZSBmb3IgdGhlIGdpdmVuIHRhcmdldCBpbiB0aGUgc3BlY2lmaWVkIG9wdGlvbidzIHBhcmFtcy4NCgkgKiBJZiBubyBvcHRpb24gaXMgcHJvdmlkZWQsIGl0IGZhbGxzIGJhY2sgdG8gdGhlIGRlZmF1bHQgb3B0aW9uLg0KCSAqDQoJICogVGhpcyBtZXRob2QgdXBkYXRlcyB0aGUgcGFyYW1ldGVycyBmb3IgYSBnaXZlbiBleHRlbnNpb24gaW4gdGhlIGRhdGFiYXNlLA0KCSAqIG9ubHkgaWYgdGhlIG5ldyB2YWx1ZSBkaWZmZXJzIGZyb20gdGhlIGV4aXN0aW5nIG9uZS4NCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmcgICAgICAkdGFyZ2V0IFRoZSBwYXJhbWV0ZXIgbmFtZSB0byBiZSB1cGRhdGVkLg0KCSAqIEBwYXJhbSBtaXhlZCAgICAgICAkdmFsdWUgIFRoZSB2YWx1ZSB0byBzZXQgZm9yIHRoZSBwYXJhbWV0ZXIuDQoJICogQHBhcmFtIHN0cmluZ3xudWxsICRvcHRpb24gVGhlIG9wdGlvbmFsIGV4dGVuc2lvbiBlbGVtZW50IG5hbWUuIERlZmF1bHRzIHRvIG51bGwsIHdoaWNoIHdpbGwgdXNlIHRoZSBkZWZhdWx0IG9wdGlvbi4NCgkgKg0KCSAqIEByZXR1cm4gbWl4ZWQgVGhlIHByZXZpb3VzIHZhbHVlIG9mIHRoZSBwYXJhbWV0ZXIgYmVmb3JlIGl0IHdhcyB1cGRhdGVkLg0KCSAqIEBzaW5jZSAgNS4wLjMNCgkgKi8NCglwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIHNldFBhcmFtcyhzdHJpbmcgJHRhcmdldCwgJHZhbHVlLCA/c3RyaW5nICRvcHRpb24gPSBudWxsKQ0KCXsNCgkJLy8gRW5zdXJlIHRoYXQgYW4gb3B0aW9uIGlzIHNwZWNpZmllZCwgZGVmYXVsdGluZyB0byB0aGUgc3lzdGVtJ3Mgb3B0aW9uIGlmIG5vdCBwcm92aWRlZC4NCgkJaWYgKGVtcHR5KCRvcHRpb24pKQ0KCQl7DQoJCQkkb3B0aW9uID0gc3RhdGljOjpnZXRPcHRpb24oKTsNCgkJfQ0KDQoJCS8vIFJldHJpZXZlIGN1cnJlbnQgcGFyYW1ldGVycyBmb3IgdGhlIHNwZWNpZmllZCBvcHRpb24uDQoJCSRwYXJhbXMgPSBzdGF0aWM6OmdldFBhcmFtcygkb3B0aW9uKTsNCg0KCQkvLyBHZXQgdGhlIGN1cnJlbnQgdmFsdWUgb2YgdGhlIHRhcmdldCBwYXJhbWV0ZXIuDQoJCSR3YXMgPSAkcGFyYW1zLT5nZXQoJHRhcmdldCwgbnVsbCk7DQoNCgkJLy8gT25seSBwcm9jZWVkIGlmIHRoZSBuZXcgdmFsdWUgZGlmZmVycyBmcm9tIHRoZSBjdXJyZW50IHZhbHVlLg0KCQlpZiAoJHdhcyAhPT0gJHZhbHVlKQ0KCQl7DQoJCQkvLyBVcGRhdGUgdGhlIHBhcmFtZXRlciB2YWx1ZS4NCgkJCSRwYXJhbXMtPnNldCgkdGFyZ2V0LCAkdmFsdWUpOw0KDQoJCQkvLyBPYnRhaW4gYSBkYXRhYmFzZSBjb25uZWN0aW9uIGluc3RhbmNlLg0KCQkJJGRiID0gRmFjdG9yeTo6Z2V0REJPKCk7DQoJCQkkcXVlcnkgPSAkZGItPmdldFF1ZXJ5KHRydWUpOw0KDQoJCQkvLyBCdWlsZCBhbmQgZXhlY3V0ZSB0aGUgcXVlcnkgdG8gdXBkYXRlIHRoZSBwYXJhbWV0ZXJzIGluIHRoZSBkYXRhYmFzZS4NCgkJCSRxdWVyeS0+dXBkYXRlKCcjX19leHRlbnNpb25zIEFTIGEnKQ0KCQkJCSAgLT5zZXQoJ2EucGFyYW1zID0gJyAuICRkYi0+cXVvdGUoKHN0cmluZykgJHBhcmFtcykpDQoJCQkJICAtPndoZXJlKCdhLmVsZW1lbnQgPSAnIC4gJGRiLT5xdW90ZSgoc3RyaW5nKSAkb3B0aW9uKSk7DQoNCgkJCSRkYi0+c2V0UXVlcnkoJHF1ZXJ5KTsNCgkJCSRkYi0+ZXhlY3V0ZSgpOw0KCQl9DQoNCgkJLy8gUmV0dXJuIHRoZSBwcmV2aW91cyB2YWx1ZSBvZiB0aGUgcGFyYW1ldGVyLg0KCQlyZXR1cm4gJHdhczsNCgl9DQoNCgkvKioNCgkgKiBHZXRzIHRoZSBwYXJhbWV0ZXIgb2JqZWN0IGZvciB0aGUgY29tcG9uZW50DQoJICoNCgkgKiBAcGFyYW0gICBzdHJpbmd8bnVsbCAgICAgJG9wdGlvbiAgVGhlIG9wdGlvbiBmb3IgdGhlIGNvbXBvbmVudC4NCgkgKg0KCSAqIEByZXR1cm4gIFJlZ2lzdHJ5ICAgICBBIFJlZ2lzdHJ5IG9iamVjdC4NCgkgKiBAc2VlICAgICBSZWdpc3RyeQ0KCSAqIEBzaW5jZSAgIDMuMC4xMQ0KCSAqLw0KCXB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gZ2V0UGFyYW1zKD9zdHJpbmcgJG9wdGlvbiA9IG51bGwpOiBSZWdpc3RyeQ0KCXsNCgkJLy8gY2hlY2sgdGhhdCB3ZSBoYXZlIGFuIG9wdGlvbg0KCQlpZiAoZW1wdHkoJG9wdGlvbikpDQoJCXsNCgkJCSRvcHRpb24gPSBzdGF0aWM6OmdldE9wdGlvbigpOw0KCQl9DQoNCgkJLy8gZ2V0IGdsb2JhbCB2YWx1ZQ0KCQlpZiAoIWlzc2V0KHN0YXRpYzo6JHBhcmFtc1skb3B0aW9uXSkgfHwgIXN0YXRpYzo6JHBhcmFtc1skb3B0aW9uXSBpbnN0YW5jZW9mIFJlZ2lzdHJ5KQ0KCQl7DQoJCQlzdGF0aWM6OiRwYXJhbXNbJG9wdGlvbl0gPSBDb21wb25lbnRIZWxwZXI6OmdldFBhcmFtcygkb3B0aW9uKTsNCgkJfQ0KDQoJCXJldHVybiBzdGF0aWM6OiRwYXJhbXNbJG9wdGlvbl07DQoJfQ0KDQoJLyoqDQoJICogU2V0IHRoZSBjb21wb25lbnQgb3B0aW9uDQoJICoNCgkgKiBAcGFyYW0gICBzdHJpbmd8bnVsbCAgICAgJG9wdGlvbiAgVGhlIG9wdGlvbg0KCSAqDQoJICogQHJldHVybiAgdm9pZA0KCSAqIEBzaW5jZSAgIDMuMi4wDQoJICovDQoJcHVibGljIHN0YXRpYyBmdW5jdGlvbiBzZXRPcHRpb24oP3N0cmluZyAkb3B0aW9uKTogdm9pZA0KCXsNCgkJc3RhdGljOjokb3B0aW9uID0gJG9wdGlvbjsNCgl9DQoNCgkvKioNCgkgKiBHZXQgdGhlIGNvbXBvbmVudCBvcHRpb24NCgkgKg0KCSAqIEBwYXJhbSAgIHN0cmluZ3xudWxsICAgICAgJGRlZmF1bHQgIFRoZSBkZWZhdWx0IHJldHVybiB2YWx1ZSBpZiBub25lIGlzIGZvdW5kDQoJICoNCgkgKiBAcmV0dXJuICBzdHJpbmd8bnVsbCAgICAgIEEgY29tcG9uZW50IG9wdGlvbg0KCSAqIEBzaW5jZSAgIDMuMC4xMQ0KCSAqLw0KCXB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gZ2V0T3B0aW9uKD9zdHJpbmcgJGRlZmF1bHQgPSAnZW1wdHknKTogP3N0cmluZw0KCXsNCgkJaWYgKGVtcHR5KHN0YXRpYzo6JG9wdGlvbikpDQoJCXsNCgkJCS8vIGdldCB0aGUgb3B0aW9uIGZyb20gdGhlIHVybCBpbnB1dA0KCQkJc3RhdGljOjokb3B0aW9uID0gKG5ldyBJbnB1dCktPmdldFN0cmluZygnb3B0aW9uJywgbnVsbCk7DQoJCX0NCg0KCQlpZiAoZW1wdHkoc3RhdGljOjokb3B0aW9uKSkNCgkJew0KCQkJJGFwcCA9IEZhY3Rvcnk6OmdldEFwcGxpY2F0aW9uKCk7DQoNCgkJCS8vIENoZWNrIGlmIHRoZSBnZXRJbnB1dCBtZXRob2QgZXhpc3RzIGluIHRoZSBhcHBsaWNhdGlvbiBvYmplY3QNCgkJCWlmIChtZXRob2RfZXhpc3RzKCRhcHAsICdnZXRJbnB1dCcpKQ0KCQkJew0KCQkJCS8vIGdldCB0aGUgb3B0aW9uIGZyb20gdGhlIGFwcGxpY2F0aW9uDQoJCQkJc3RhdGljOjokb3B0aW9uID0gJGFwcC0+Z2V0SW5wdXQoKS0+Z2V0Q21kKCdvcHRpb24nLCAkZGVmYXVsdCk7DQoJCQl9DQoJCQllbHNlDQoJCQl7DQoJCQkJLy8gVXNlIHRoZSBkZWZhdWx0IHZhbHVlIGlmIGdldElucHV0IG1ldGhvZCBkb2VzIG5vdCBleGlzdA0KCQkJCXN0YXRpYzo6JG9wdGlvbiA9ICRkZWZhdWx0Ow0KCQkJfQ0KCQl9DQoNCgkJcmV0dXJuIHN0YXRpYzo6JG9wdGlvbjsNCgl9DQoNCgkvKioNCgkgKiBHZXRzIHRoZSBjb21wb25lbnQgY29kZSBuYW1lDQoJICoNCgkgKiBAcGFyYW0gICBzdHJpbmd8bnVsbCAgICAkb3B0aW9uICAgVGhlIG9wdGlvbiBmb3IgdGhlIGNvbXBvbmVudC4NCgkgKiBAcGFyYW0gICBzdHJpbmd8bnVsbCAgICAkZGVmYXVsdCAgVGhlIGRlZmF1bHQgcmV0dXJuIHZhbHVlIGlmIG5vbmUgaXMgZm91bmQNCgkgKg0KCSAqIEByZXR1cm4gIHN0cmluZ3xudWxsICAgIEEgY29tcG9uZW50IGNvZGUgbmFtZQ0KCSAqIEBzaW5jZSAgIDMuMC4xMQ0KCSAqLw0KCXB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gZ2V0Q29kZSg/c3RyaW5nICRvcHRpb24gPSBudWxsLCA/c3RyaW5nICRkZWZhdWx0ID0gbnVsbCk6ID9zdHJpbmcNCgl7DQoJCS8vIGNoZWNrIHRoYXQgd2UgaGF2ZSBhbiBvcHRpb24NCgkJaWYgKGVtcHR5KCRvcHRpb24pKQ0KCQl7DQoJCQkkb3B0aW9uID0gc3RhdGljOjpnZXRPcHRpb24oKTsNCgkJfQ0KCQkvLyBvcHRpb24gd2l0aCBjb21fDQoJCWlmIChpc19zdHJpbmcoJG9wdGlvbikgJiYgc3RycG9zKCRvcHRpb24sICdjb21fJykgPT09IDApDQoJCXsNCgkJCXJldHVybiBzdHJ0b2xvd2VyKHRyaW0oc3Vic3RyKCRvcHRpb24sIDQpKSk7DQoJCX0NCg0KCQlyZXR1cm4gJGRlZmF1bHQ7DQoJfQ0KDQoJLyoqDQoJICogR2V0cyB0aGUgY29tcG9uZW50IGFic3RyYWN0IGhlbHBlciBjbGFzcw0KCSAqDQoJICogQHBhcmFtICAgc3RyaW5nfG51bGwgICAgJG9wdGlvbiAgIFRoZSBvcHRpb24gZm9yIHRoZSBjb21wb25lbnQuDQoJICogQHBhcmFtICAgc3RyaW5nfG51bGwgICAgJGRlZmF1bHQgIFRoZSBkZWZhdWx0IHJldHVybiB2YWx1ZSBpZiBub25lIGlzIGZvdW5kDQoJICoNCgkgKiBAcmV0dXJuICBzdHJpbmd8bnVsbCAgICBBIGNvbXBvbmVudCBoZWxwZXIgbmFtZQ0KCSAqDQoJICogQHNpbmNlICAgMy4wLjExDQoJICovDQoJcHVibGljIHN0YXRpYyBmdW5jdGlvbiBnZXQoP3N0cmluZyAkb3B0aW9uID0gbnVsbCwgP3N0cmluZyAkZGVmYXVsdCA9IG51bGwpOiA/c3RyaW5nDQoJew0KCQkvLyBjaGVjayB0aGF0IHdlIGhhdmUgYW4gb3B0aW9uDQoJCS8vIGFuZCBnZXQgdGhlIGNvZGUgbmFtZSBmcm9tIGl0DQoJCWlmICgoJGNvZGVfbmFtZSA9IHN0YXRpYzo6Z2V0Q29kZSgkb3B0aW9uLCBudWxsKSkgIT09IG51bGwpDQoJCXsNCgkJCS8vIHdlIGJ1aWxkIHRoZSBoZWxwZXIgY2xhc3MgbmFtZQ0KCQkJJGhlbHBlcl9uYW1lID0gJ1xcJyAuIFx1Y2ZpcnN0KCRjb2RlX25hbWUpIC4gJ0hlbHBlcic7DQoNCgkJCS8vIGNoZWNrIGlmIGNsYXNzIGV4aXN0DQoJCQlpZiAoY2xhc3NfZXhpc3RzKCRoZWxwZXJfbmFtZSkpDQoJCQl7DQoJCQkJcmV0dXJuICRoZWxwZXJfbmFtZTsNCgkJCX0NCg0KCQkJLy8gdHJ5IGxvYWRpbmcgbmFtZXNwYWNlDQoJCQlpZiAoKCRuYW1lc3BhY2UgPSBzdGF0aWM6OmdldE5hbWVzcGFjZSgkb3B0aW9uKSkgIT09IG51bGwpDQoJCQl7DQoJCQkJJG5hbWUgPSBcdWNmaXJzdCgkY29kZV9uYW1lKSAuICdIZWxwZXInOw0KCQkJCSRuYW1lc3BhY2VfaGVscGVyID0gICdcXCcgLiAkbmFtZXNwYWNlIC4gJ1xBZG1pbmlzdHJhdG9yXEhlbHBlclxcJyAuIE5hbWVzcGFjZUhlbHBlcjo6c2FmZVNlZ21lbnQoJG5hbWUpOyAvLyBUT0RPIHRhcmdldCBzaXRlIG9yIGFkbWluIGxvY2F0aW9ucyBub3QganVzdCBhZG1pbi4uLg0KCQkJCWlmIChjbGFzc19leGlzdHMoJG5hbWVzcGFjZV9oZWxwZXIpKQ0KCQkJCXsNCgkJCQkJcmV0dXJuICRuYW1lc3BhY2VfaGVscGVyOw0KCQkJCX0NCgkJCX0NCgkJfQ0KDQoJCXJldHVybiAkZGVmYXVsdDsNCgl9DQoNCgkvKioNCgkgKiBHZXRzIHRoZSBjb21wb25lbnQgbmFtZXNwYWNlIGlmIHNldA0KCSAqDQoJICogQHBhcmFtICAgc3RyaW5nfG51bGwgICAgJG9wdGlvbiAgIFRoZSBvcHRpb24gZm9yIHRoZSBjb21wb25lbnQuDQoJICogQHBhcmFtICAgc3RyaW5nfG51bGwgICAgJGRlZmF1bHQgIFRoZSBkZWZhdWx0IHJldHVybiB2YWx1ZSBpZiBub25lIGlzIGZvdW5kDQoJICoNCgkgKiBAcmV0dXJuICBzdHJpbmd8bnVsbCAgICBBIGNvbXBvbmVudCBuYW1lc3BhY2UNCgkgKg0KCSAqIEBzaW5jZSAgIDMuMC4xMQ0KCSAqLw0KCXB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gZ2V0TmFtZXNwYWNlKD9zdHJpbmcgJG9wdGlvbiA9IG51bGwpOiA/c3RyaW5nDQoJew0KCQkkbWFuaWZlc3QgPSBzdGF0aWM6OmdldE1hbmlmZXN0KCRvcHRpb24pOw0KDQoJCXJldHVybiAkbWFuaWZlc3QtPm5hbWVzcGFjZSA/PyBudWxsOw0KCX0NCg0KCS8qKg0KCSAqIEdldHMgdGhlIGNvbXBvbmVudCBhYnN0cmFjdCBoZWxwZXIgY2xhc3MNCgkgKg0KCSAqIEBwYXJhbSAgIHN0cmluZ3xudWxsICAgICRvcHRpb24gICBUaGUgb3B0aW9uIGZvciB0aGUgY29tcG9uZW50Lg0KCSAqIEBwYXJhbSAgIHN0cmluZ3xudWxsICAgICRkZWZhdWx0ICBUaGUgZGVmYXVsdCByZXR1cm4gdmFsdWUgaWYgbm9uZSBpcyBmb3VuZA0KCSAqDQoJICogQHJldHVybiAgb2JqZWN0fG51bGwgICAgQSBjb21wb25lbnQgaGVscGVyIG5hbWUNCgkgKg0KCSAqIEBzaW5jZSAgIDMuMC4xMQ0KCSAqLw0KCXB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gZ2V0TWFuaWZlc3QoP3N0cmluZyAkb3B0aW9uID0gbnVsbCk6ID9vYmplY3QNCgl7DQoJCWlmICgkb3B0aW9uID09PSBudWxsDQoJCQkmJiAoJG9wdGlvbiA9IHN0YXRpYzo6Z2V0T3B0aW9uKCRvcHRpb24pKSA9PT0gbnVsbCkNCgkJew0KCQkJcmV0dXJuIG51bGw7DQoJCX0NCg0KCQkvLyBnZXQgZ2xvYmFsIG1hbmlmZXN0X2NhY2hlIHZhbHVlcw0KCQlpZiAoIWlzc2V0KHN0YXRpYzo6JG1hbmlmZXN0WyRvcHRpb25dKSkNCgkJew0KCQkJJGRiID0gRmFjdG9yeTo6Z2V0RGJvKCk7DQoJCQkkcXVlcnkgPSAkZGItPmdldFF1ZXJ5KHRydWUpOw0KDQoJCQkkcXVlcnktPnNlbGVjdCgkZGItPnF1b3RlTmFtZSgnbWFuaWZlc3RfY2FjaGUnKSkNCgkJCQkgIC0+ZnJvbSgkZGItPnF1b3RlTmFtZSgnI19fZXh0ZW5zaW9ucycpKQ0KCQkJCSAgLT53aGVyZSgkZGItPnF1b3RlTmFtZSgndHlwZScpIC4gJyA9ICcgLiAkZGItPnF1b3RlKCdjb21wb25lbnQnKSkNCgkJCQkgIC0+d2hlcmUoJGRiLT5xdW90ZU5hbWUoJ2VsZW1lbnQnKSAuICcgTElLRSAnIC4gJGRiLT5xdW90ZSgkb3B0aW9uKSk7DQoNCgkJCSRkYi0+c2V0UXVlcnkoJHF1ZXJ5KTsNCg0KCQkJdHJ5IHsNCgkJCQkkbWFuaWZlc3QgPSAkZGItPmxvYWRSZXN1bHQoKTsNCgkJCQlzdGF0aWM6OiRtYW5pZmVzdFskb3B0aW9uXSA9IGpzb25fZGVjb2RlKCRtYW5pZmVzdCk7DQoJCQl9IGNhdGNoIChcRXhjZXB0aW9uICRlKSB7DQoJCQkJLy8gSGFuZGxlIHRoZSBkYXRhYmFzZSBlcnJvciBhcHByb3ByaWF0ZWx5Lg0KCQkJCXN0YXRpYzo6JG1hbmlmZXN0WyRvcHRpb25dID0gbnVsbDsNCgkJCX0NCgkJfQ0KDQoJCXJldHVybiBzdGF0aWM6OiRtYW5pZmVzdFskb3B0aW9uXTsNCgl9DQoNCgkvKioNCgkgKiBDaGVjayBpZiB0aGUgaGVscGVyIGNsYXNzIG9mIHRoaXMgY29tcG9uZW50IGhhcyBhIG1ldGhvZA0KCSAqDQoJICogQHBhcmFtICAgc3RyaW5nICAgICAgICRtZXRob2QgIFRoZSBtZXRob2QgbmFtZSB0byBzZWFyY2ggZm9yDQoJICogQHBhcmFtICAgc3RyaW5nfG51bGwgICRvcHRpb24gIFRoZSBvcHRpb24gZm9yIHRoZSBjb21wb25lbnQuDQoJICoNCgkgKiBAcmV0dXJuICBib29sICAgIHRydWUgaWYgbWV0aG9kIGV4aXN0DQoJICoNCgkgKiBAc2luY2UgICAzLjAuMTENCgkgKi8NCglwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIG1ldGhvZEV4aXN0cyhzdHJpbmcgJG1ldGhvZCwgP3N0cmluZyAkb3B0aW9uID0gbnVsbCk6IGJvb2wNCgl7DQoJCS8vIGdldCB0aGUgaGVscGVyIGNsYXNzDQoJCXJldHVybiAoJGhlbHBlciA9IHN0YXRpYzo6Z2V0KCRvcHRpb24sIG51bGwpKSAhPT0gbnVsbCAmJg0KCQkJbWV0aG9kX2V4aXN0cygkaGVscGVyLCAkbWV0aG9kKTsNCgl9DQoNCgkvKioNCgkgKiBDaGVjayBpZiB0aGUgaGVscGVyIGNsYXNzIG9mIHRoaXMgY29tcG9uZW50IGhhcyBhIG1ldGhvZCwgYW5kIGNhbGwgaXQgd2l0aCB0aGUgYXJndW1lbnRzDQoJICoNCgkgKiBAcGFyYW0gICBzdHJpbmcgICAgICAgICRtZXRob2QgICAgIFRoZSBtZXRob2QgbmFtZSB0byBzZWFyY2ggZm9yDQoJICogQHBhcmFtICAgYXJyYXkgICAgICAgICAkYXJndW1lbnRzICBUaGUgYXJndW1lbnRzIGZvciBmdW5jdGlvbi4NCgkgKiBAcGFyYW0gICBzdHJpbmd8bnVsbCAgICRvcHRpb24gICAgIFRoZSBvcHRpb24gZm9yIHRoZSBjb21wb25lbnQuDQoJICoNCgkgKiBAcmV0dXJuICBtaXhlZCAgICByZXR1cm4gd2hhdGV2ZXIgdGhlIG1ldGhvZCByZXR1cm5zIG9yIG51bGwNCgkgKiBAc2luY2UgICAzLjIuMA0KCSAqLw0KCXB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gXyhzdHJpbmcgJG1ldGhvZCwgYXJyYXkgJGFyZ3VtZW50cyA9IFtdLCA/c3RyaW5nICRvcHRpb24gPSBudWxsKQ0KCXsNCgkJLy8gZ2V0IHRoZSBoZWxwZXIgY2xhc3MNCgkJaWYgKCgkaGVscGVyID0gc3RhdGljOjpnZXQoJG9wdGlvbiwgbnVsbCkpICE9PSBudWxsICYmDQoJCQltZXRob2RfZXhpc3RzKCRoZWxwZXIsICRtZXRob2QpKQ0KCQl7DQoJCQkvLyB3ZSBrbm93IHRoaXMgaXMgbm90IGlkZWFsLi4uDQoJCQkvLyBzbyB3ZSBuZWVkIHRvIG1vdmUgdGhlc2UNCgkJCS8vIGZ1bmN0aW9ucyB0byB0aGVpciBvd24gY2xhc3Nlcw0KCQkJcmV0dXJuIGNhbGxfdXNlcl9mdW5jX2FycmF5KFskaGVscGVyLCAkbWV0aG9kXSwgICRhcmd1bWVudHMpOw0KCQl9DQoNCgkJcmV0dXJuIG51bGw7DQoJfQ0KDQoJLyoqDQoJICogUmV0dXJucyBhIE1vZGVsIG9iamVjdCBiYXNlZCBvbiB0aGUgc3BlY2lmaWVkIHR5cGUsIHByZWZpeCwgYW5kIGNvbmZpZ3VyYXRpb24uDQoJICoNCgkgKiBAcGFyYW0gICBzdHJpbmcgICAgICAgJHR5cGUgICAgIFRoZSBtb2RlbCB0eXBlIHRvIGluc3RhbnRpYXRlLiBNdXN0IG5vdCBiZSBlbXB0eS4NCgkgKiBAcGFyYW0gICBzdHJpbmcgICAgICAgJHByZWZpeCAgIFByZWZpeCBmb3IgdGhlIG1vZGVsIGNsYXNzIG5hbWUuIE9wdGlvbmFsLCBkZWZhdWx0cyB0byAnQWRtaW5pc3RyYXRvcicuDQoJICogQHBhcmFtICAgc3RyaW5nfG51bGwgICRvcHRpb24gICBUaGUgY29tcG9uZW50IG9wdGlvbi4gT3B0aW9uYWwsIGRlZmF1bHRzIHRvIHRoZSBjb21wb25lbnQncyBvcHRpb24uDQoJICogQHBhcmFtICAgYXJyYXkgICAgICAgICRjb25maWcgICBDb25maWd1cmF0aW9uIGFycmF5IGZvciB0aGUgbW9kZWwuIE9wdGlvbmFsLCBkZWZhdWx0cyB0byBhbiBlbXB0eSBhcnJheS4NCgkgKg0KCSAqIEByZXR1cm4gIEJhc2VEYXRhYmFzZU1vZGVsICAgVGhlIGluc3RhbnRpYXRlZCBtb2RlbCBvYmplY3QuDQoJICoNCgkgKiBAdGhyb3dzICBcSW52YWxpZEFyZ3VtZW50RXhjZXB0aW9uICBJZiB0aGUgJHR5cGUgcGFyYW1ldGVyIGlzIGVtcHR5Lg0KCSAqIEB0aHJvd3MgIFxFeGNlcHRpb24gICAgICAgICAgICAgICAgIEZvciBvdGhlciBlcnJvcnMgdGhhdCBtYXkgb2NjdXIgZHVyaW5nIG1vZGVsIGNyZWF0aW9uLg0KCSAqDQoJICogQHNpbmNlICAgNS4wLjMNCgkgKi8NCglwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIGdldE1vZGVsKHN0cmluZyAkdHlwZSwgc3RyaW5nICRwcmVmaXggPSAnQWRtaW5pc3RyYXRvcicsDQoJCT9zdHJpbmcgJG9wdGlvbiA9IG51bGwsIGFycmF5ICRjb25maWcgPSBbXSk6IEJhc2VEYXRhYmFzZU1vZGVsDQoJew0KCQkvLyBFbnN1cmUgdGhlICR0eXBlIHBhcmFtZXRlciBpcyBub3QgZW1wdHkNCgkJaWYgKGVtcHR5KCR0eXBlKSkNCgkJew0KCQkJdGhyb3cgbmV3IFxJbnZhbGlkQXJndW1lbnRFeGNlcHRpb24oJ1RoZSAkdHlwZSBwYXJhbWV0ZXIgY2Fubm90IGJlIGVtcHR5IHdoZW4gY2FsbGluZyBDb21wb25lbnQgSGVscGVyIGdldE1vZGVsIG1ldGhvZC4nKTsNCgkJfQ0KDQoJCS8vIEVuc3VyZSB0aGUgJG9wdGlvbiBwYXJhbWV0ZXIgaXMgc2V0LCBkZWZhdWx0aW5nIHRvIHRoZSBjb21wb25lbnQncyBvcHRpb24gaWYgbm90IHByb3ZpZGVkDQoJCWlmIChlbXB0eSgkb3B0aW9uKSkNCgkJew0KCQkJJG9wdGlvbiA9IHN0YXRpYzo6Z2V0T3B0aW9uKCk7DQoJCX0NCg0KCQkvLyBOb3JtYWxpemUgdGhlIG1vZGVsIHR5cGUgbmFtZSBpZiB0aGUgZmlyc3QgY2hhcmFjdGVyIGlzIG5vdCB1cHBlcmNhc2UNCgkJaWYgKCFjdHlwZV91cHBlcigkdHlwZVswXSkpDQoJCXsNCgkJCSR0eXBlID0gU3RyaW5nSGVscGVyOjpzYWZlKCR0eXBlLCAnRicpOw0KCQl9DQoNCgkJLy8gTm9ybWFsaXplIHRoZSBwcmVmaXggaWYgaXQncyBub3QgJ1NpdGUnIG9yICdBZG1pbmlzdHJhdG9yJw0KCQlpZiAoJHByZWZpeCAhPT0gJ1NpdGUnICYmICRwcmVmaXggIT09ICdBZG1pbmlzdHJhdG9yJykNCgkJew0KCQkJJHByZWZpeCA9IHN0YXRpYzo6Z2V0UHJlZml4RnJvbU1vZGVsUGF0aCgkcHJlZml4KTsNCgkJfQ0KDQoJCS8vIEluc3RhbnRpYXRlIGFuZCByZXR1cm4gdGhlIG1vZGVsIHVzaW5nIHRoZSBNVkNGYWN0b3J5DQoJCXJldHVybiBGYWN0b3J5OjpnZXRBcHBsaWNhdGlvbigpDQoJCQktPmJvb3RDb21wb25lbnQoJG9wdGlvbikNCgkJCS0+Z2V0TVZDRmFjdG9yeSgpDQoJCQktPmNyZWF0ZU1vZGVsKCR0eXBlLCAkcHJlZml4LCAkY29uZmlnKTsNCgl9DQoNCgkvKioNCgkgKiBHZXQgdGhlIHByZWZpeCBmcm9tIHRoZSBtb2RlbCBwYXRoDQoJICoNCgkgKiBAcGFyYW0gICBzdHJpbmcgICRwYXRoICAgIFRoZSBtb2RlbCBwYXRoDQoJICoNCgkgKiBAcmV0dXJuICBzdHJpbmcgIFRoZSBwcmVmaXggdmFsdWUNCgkgKiBAc2luY2UgICA1LjAuMw0KCSAqLw0KCXByaXZhdGUgc3RhdGljIGZ1bmN0aW9uIGdldFByZWZpeEZyb21Nb2RlbFBhdGgoc3RyaW5nICRwYXRoKTogc3RyaW5nDQoJew0KCQkvLyBDaGVjayBpZiAkcGF0aCBzdGFydHMgd2l0aCBKUEFUSF9BRE1JTklTVFJBVE9SIHBhdGgNCgkJaWYgKHN0cl9zdGFydHNfd2l0aCgkcGF0aCwgSlBBVEhfQURNSU5JU1RSQVRPUiAuICcvY29tcG9uZW50cy8nKSkNCgkJew0KCQkJcmV0dXJuICdBZG1pbmlzdHJhdG9yJzsNCgkJfQ0KCQkvLyBDaGVjayBpZiAkcGF0aCBzdGFydHMgd2l0aCBKUEFUSF9TSVRFIHBhdGgNCgkJZWxzZWlmIChzdHJfc3RhcnRzX3dpdGgoJHBhdGgsIEpQQVRIX1NJVEUgLiAnL2NvbXBvbmVudHMvJykpDQoJCXsNCgkJCXJldHVybiAnU2l0ZSc7DQoJCX0NCgkJcmV0dXJuICdBZG1pbmlzdHJhdG9yJzsNCgl9', '{}', '{}', '', 1, '2022-05-13 05:36:32', 45, '', 1), +(25, 'd7600b43-771a-4747-9f5d-952765721799', 'Utilities UploadHelper', 'UploadHelper', 'abstract class', 'Upload Helper\r\n\r\n@since 3.0.11', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICAzcmQgU2VwdGVtYmVyLCAyMDIwDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\Utilities.UploadHelper', 1, '{}', '{}', 'dXNlIEpvb21sYVxDTVNcRmFjdG9yeTsNCnVzZSBKb29tbGFcQ01TXExhbmd1YWdlXFRleHQ7DQp1c2UgSm9vbWxhXEZpbGVzeXN0ZW1cRmlsZTsNCnVzZSBKb29tbGFcRmlsZXN5c3RlbVxGb2xkZXI7DQp1c2UgSm9vbWxhXEZpbGVzeXN0ZW1cUGF0aDs=', '{\"use_selection0\":{\"use\":\"640b5352-fb09-425f-a26e-cd44eda03f15\",\"as\":\"default\"},\"use_selection1\":{\"use\":\"f11dc790-713e-4706-9a85-a318ed3ad56e\",\"as\":\"default\"},\"use_selection2\":{\"use\":\"1f28cb53-60d9-4db1-b517-3c7dc6b429ef\",\"as\":\"default\"}}', 'CS8qKg0KCSAqIFRydWUgdG8gdXNlIHN0cmVhbXMNCgkgKg0KCSAqIEB2YXIgICAgYm9vbA0KCSAqDQoJICogQHNpbmNlICAzLjAuMTENCgkgKi8NCglwdWJsaWMgc3RhdGljIGJvb2wgJHVzZVN0cmVhbXMgPSBmYWxzZTsNCg0KCS8qKg0KCSAqIEFsbG93IHRoZSB1cGxvYWQgb2YgdW5zYWZlIGZpbGVzDQoJICoNCgkgKiBAdmFyICAgIGJvb2wNCgkgKg0KCSAqIEBzaW5jZSAgMy4wLjExDQoJICovDQoJcHVibGljIHN0YXRpYyBib29sICRhbGxvd1Vuc2FmZSA9IGZhbHNlOw0KDQoJLyoqDQoJICogT3B0aW9ucyB0byBJbnB1dEZpbHRlcjo6aXNTYWZlRmlsZQ0KCSAqDQoJICogQHZhciAgICBhcnJheQ0KCSAqDQoJICogQHNpbmNlICAzLjAuMTENCgkgKi8NCglwdWJsaWMgc3RhdGljIGFycmF5ICRzYWZlRmlsZU9wdGlvbnMgPSBbXTsNCg0KCS8qKg0KCSAqIFNldCB0aGUgZXJyb3IgYmVoYXZpb3INCgkgKg0KCSAqIEB2YXIgICAgYm9vbA0KCSAqDQoJICogQHNpbmNlICAzLjAuMTENCgkgKi8NCglwdWJsaWMgc3RhdGljIGJvb2wgJGVucXVldWVFcnJvciA9IHRydWU7DQoNCgkvKioNCgkgKiBMZWdhbCBGb3JtYXRzDQoJICoNCgkgKiBAdmFyICAgIGFycmF5DQoJICoNCgkgKiBAc2luY2UgIDUuMC4zDQoJICovDQoJcHVibGljIHN0YXRpYyBhcnJheSAkbGVnYWxGb3JtYXRzID0gW107DQoNCgkvKioNCgkgKiBFcnJvcnMNCgkgKg0KCSAqIEB2YXIgICAgYXJyYXkNCgkgKg0KCSAqIEBzaW5jZSAgMy4wLjExDQoJICovDQoJcHJvdGVjdGVkIHN0YXRpYyBhcnJheSAkZXJyb3JzID0gW107DQoNCgkvKioNCgkgKiBHZXQgZmlsZS9maWxlcyBmcm9tIGEgSFRUUCB1cGxvYWQuDQoJICoNCgkgKiBAcGFyYW0gIHN0cmluZyAgICAgICAgJGZpZWxkICAgICAgIFRoZSBpbnB1dCBmaWVsZCBuYW1lDQoJICogQHBhcmFtICBzdHJpbmcgICAgICAgICR0eXBlICAgICAgICBUaGUgZmlsZSB0eXBlDQoJICogQHBhcmFtICBzdHJpbmd8bnVsbCAgICRmaWx0ZXIgICAgICBUaGUgZmlsdGVyIHRvIHVzZSB3aGVuIHVwbG9hZGluZyB0aGUgZmlsZQ0KCSAqIEBwYXJhbSAgc3RyaW5nfG51bGwgICAkcGF0aCAgICAgICAgVGhlIHBhdGggdG8gdGhlIGRpcmVjdG9yeSB3aGVyZSB0aGUgZmlsZSBtdXN0IGJlIHBsYWNlZA0KCSAqDQoJICogQHJldHVybiAgYXJyYXl8bnVsbCAgIEZpbGUgZGV0YWlscyBvciBmYWxzZSBvbiBmYWlsdXJlLg0KCSAqIEBzaW5jZSAgMy4wLjExDQoJICovDQoJcHVibGljIHN0YXRpYyBmdW5jdGlvbiBnZXQoc3RyaW5nICRmaWVsZCwgc3RyaW5nICR0eXBlLCBzdHJpbmcgJGZpbHRlciA9IG51bGwsIHN0cmluZyAkcGF0aCA9IG51bGwpOiA/YXJyYXkNCgl7DQoJCS8vIEdldCB0aGUgdXBsb2FkZWQgZmlsZSBpbmZvcm1hdGlvbi4NCgkJJGlucHV0ID0gRmFjdG9yeTo6Z2V0QXBwbGljYXRpb24oKS0+aW5wdXQ7DQoNCgkJLy8gc2V0IHRoZSBkZWZhdWx0IGZpbHRlcg0KCQlpZiAoZW1wdHkoJGZpbHRlcikpDQoJCXsNCgkJCSRmaWx0ZXIgPSAnYXJyYXknOw0KCQl9DQoJCS8vIGlmIHJhdyB0aGVuIGFsc28gdW5zYWZlDQoJCS8vIHNlZTogaHR0cHM6Ly9naXRodWIuY29tL2pvb21sYS9qb29tbGEtY21zL2Jsb2IvNC4xLWRldi9hZG1pbmlzdHJhdG9yL2NvbXBvbmVudHMvY29tX2luc3RhbGxlci9zcmMvTW9kZWwvSW5zdGFsbE1vZGVsLnBocCNMMjU5DQoJCWVsc2VpZiAoJGZpbHRlciA9PT0gJ3JhdycpDQoJCXsNCgkJCXN0YXRpYzo6JGFsbG93VW5zYWZlID0gdHJ1ZTsNCgkJfQ0KDQoJCS8vIGNoZWNrIGlmIHdlIGhhdmUgYSBmaWxlIGRlc3RpbmF0aW9uIG5hbWUgaW4gdGhlIGZpZWxkIG5hbWUNCgkJJG5hbWUgPSBudWxsOw0KCQlpZiAoc3RycG9zKCRmaWVsZCwgJzonKSAhPT0gZmFsc2UpDQoJCXsNCgkJCWxpc3QoJGZpZWxkLCAkbmFtZSkgPSBleHBsb2RlKCc6JywgJGZpZWxkKTsNCgkJfQ0KDQoJCS8vIFNlZSBKSW5wdXRGaWxlczo6Z2V0Lg0KCQkkdXNlcmZpbGUgPSAkaW5wdXQtPmZpbGVzLT5nZXQoJGZpZWxkLCBudWxsLCAkZmlsdGVyKTsNCg0KCQkvLyBNYWtlIHN1cmUgdGhhdCBmaWxlIHVwbG9hZHMgYXJlIGVuYWJsZWQgaW4gcGhwLg0KCQlpZiAoIShib29sKSBpbmlfZ2V0KCdmaWxlX3VwbG9hZHMnKSkNCgkJew0KCQkJc3RhdGljOjpzZXRFcnJvcihUZXh0OjpfKCdXYXJuaW5nLCB1cGxvYWQgZXJyb3IuJykpOw0KDQoJCQlyZXR1cm4gbnVsbDsNCgkJfQ0KDQoJCS8vIElmIHRoZXJlIGlzIG5vIHVwbG9hZGVkIGZpbGUsIHdlIGhhdmUgYSBwcm9ibGVtLi4uDQoJCWlmICghaXNfYXJyYXkoJHVzZXJmaWxlKSkNCgkJew0KCQkJc3RhdGljOjpzZXRFcnJvcihUZXh0OjpfKCdObyB1cGxvYWQgc2VsZWN0ZWQnKSk7DQoNCgkJCXJldHVybiBudWxsOw0KCQl9DQoNCgkJLy8gSXMgdGhlIFBIUCB0bXAgZGlyZWN0b3J5IG1pc3Npbmc/DQoJCWlmICgkdXNlcmZpbGVbJ2Vycm9yJ10gJiYgKCR1c2VyZmlsZVsnZXJyb3InXSA9PSBVUExPQURfRVJSX05PX1RNUF9ESVIpKQ0KCQl7DQoJCQlzdGF0aWM6OnNldEVycm9yKFRleHQ6Ol8oJ1RoZXJlIHdhcyBhbiBlcnJvciB1cGxvYWRpbmcgdG8gdGhlIHNlcnZlci4nKSAuICc8YnI+JyAuIFRleHQ6Ol8oJ1RoZSBQSFAgdGVtcG9yYXJ5IGZvbGRlciBpcyBub3Qgc2V0LicpKTsNCg0KCQkJcmV0dXJuIG51bGw7DQoJCX0NCg0KCQkvLyBJcyB0aGUgbWF4IHVwbG9hZCBzaXplIHRvbyBzbWFsbCBpbiBwaHAuaW5pPw0KCQlpZiAoJHVzZXJmaWxlWydlcnJvciddICYmICgkdXNlcmZpbGVbJ2Vycm9yJ10gPT0gVVBMT0FEX0VSUl9JTklfU0laRSkpDQoJCXsNCgkJCXN0YXRpYzo6c2V0RXJyb3IoVGV4dDo6XygnVGhlcmUgd2FzIGFuIGVycm9yIHVwbG9hZGluZyB0byB0aGUgc2VydmVyLicpIC4gJzxicj4nIC4gVGV4dDo6XygnWW91ciBmaWxlIHdhcyBpcyBsYXJnZXIgdGhhbiB0aGUgYWxsb3dlZCBzaXplLicpKTsNCg0KCQkJcmV0dXJuIG51bGw7DQoJCX0NCg0KCQkvLyBDaGVjayBpZiB0aGVyZSB3YXMgYSBkaWZmZXJlbnQgcHJvYmxlbSB1cGxvYWRpbmcgdGhlIGZpbGUuDQoJCWlmICgkdXNlcmZpbGVbJ2Vycm9yJ10gfHwgJHVzZXJmaWxlWydzaXplJ10gPCAxKQ0KCQl7DQoJCQlzdGF0aWM6OnNldEVycm9yKFRleHQ6Ol8oJ1RoZXJlIHdhcyBhbiBlcnJvciB1cGxvYWRpbmcgdG8gdGhlIHNlcnZlci4nKSk7DQoNCgkJCXJldHVybiBudWxsOw0KCQl9DQoNCgkJLy8gY2hlY2sgaWYgYSBwYXRoIHdhcyBwYXNzZWQgYW5kIGV4aXN0DQoJCWlmIChpc19zdHJpbmcoJHBhdGgpICYmIEZvbGRlcjo6Y3JlYXRlKCRwYXRoKSkNCgkJew0KCQkJLy8gc2V0IHRoZSBwYXRoDQoJCQkkdXNlcmZpbGVbJ3BhdGgnXSA9ICRwYXRoOw0KCQl9DQoJCWVsc2UNCgkJew0KCQkJLy8gZ2V0IHRoZSBKb29tbGEgY29uZmlnIGNsYXNzDQoJCQkkY29uZmlnID0gRmFjdG9yeTo6Z2V0Q29uZmlnKCk7DQoJCQkvLyBzZXQgdGhlIHBhdGgNCgkJCSR1c2VyZmlsZVsncGF0aCddID0gJGNvbmZpZy0+Z2V0KCd0bXBfcGF0aCcpOw0KCQl9DQoNCgkJLy8gc2V0IHRoZSByYW5kb20gcGFydCBvZiB0aGUgbmFtZQ0KCQkkdXNlcmZpbGVbJ3JhbmRvbSddID0gU3RyaW5nSGVscGVyOjpyYW5kb20oMTIpOw0KDQoJCS8vIHNldCB0aGUgZmlsZSBuYW1lDQoJCWlmIChlbXB0eSgkbmFtZSkpDQoJCXsNCgkJCS8vIHNldCB0aGUgZmlsZSBuYW1lDQoJCQkkdXNlcmZpbGVbJ2ZpbGVfbmFtZSddID0gJHVzZXJmaWxlWydyYW5kb20nXSAuICR1c2VyZmlsZVsnbmFtZSddOw0KCQl9DQoJCWVsc2UNCgkJew0KCQkJLy8gY2hlY2sgdGhhdCBoaXMgbmFtZSBoYXMgZmlsZSBmb3JtYXQNCgkJCWlmIChpc19zdHJpbmcoJG5hbWUpICYmIHN0cnBvcygkbmFtZSwgJy4nKSA9PT0gZmFsc2UpDQoJCQl7DQoJCQkJJG5hbWUgPSAkbmFtZSAuICcuJyAuIE1pbWVIZWxwZXI6OmV4dGVuc2lvbigkdXNlcmZpbGVbJ25hbWUnXSk7DQoJCQl9DQoJCQkkdXNlcmZpbGVbJ2ZpbGVfbmFtZSddID0gJG5hbWU7DQoJCX0NCg0KCQkvLyBzZXQgZnVsbCBwYXRoDQoJCSR1c2VyZmlsZVsnZnVsbF9wYXRoJ10gPSBQYXRoOjpjbGVhbigkdXNlcmZpbGVbJ3BhdGgnXSAuICcvJyAuICR1c2VyZmlsZVsnZmlsZV9uYW1lJ10pOw0KDQoJCS8vIFVwbG9hZCB0aGUgZmlsZS4NCgkJaWYgKEZpbGU6OnVwbG9hZCgkdXNlcmZpbGVbJ3RtcF9uYW1lJ10sICR1c2VyZmlsZVsnZnVsbF9wYXRoJ10sIHN0YXRpYzo6JHVzZVN0cmVhbXMsIHN0YXRpYzo6JGFsbG93VW5zYWZlKSkNCgkJew0KCQkJLy8gQ2hlY2sgdGhhdCB0aGlzIGlzIGEgdmFsaWQgZmlsZQ0KCQkJcmV0dXJuIHN0YXRpYzo6Y2hlY2soJHVzZXJmaWxlLCAkdHlwZSk7DQoJCX0NCg0KCQlyZXR1cm4gbnVsbDsNCgl9DQoNCgkvKioNCgkgKiBHZXQgdGhlIGVycm9ycw0KCSAqDQoJICogQHBhcmFtICBib29sICAgICAgICAgJHRvU3RyaW5nICAgICAgVGhlIG9wdGlvbiB0byByZXR1cm4gZXJyb3JzIGFzIGEgc3RyaW5nDQoJICoNCgkgKiBAcmV0dXJuICBhcnJheXxzdHJpbmcNCgkgKiBAc2luY2UgIDMuMC4xMQ0KCSAqLw0KCXB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gZ2V0RXJyb3IoYm9vbCAkdG9TdHJpbmcgPSBmYWxzZSkNCgl7DQoJCWlmICgkdG9TdHJpbmcpDQoJCXsNCgkJCXJldHVybiBpbXBsb2RlKCcgJyAuIFBIUF9FT0wsIHN0YXRpYzo6JGVycm9ycyk7DQoJCX0NCgkJcmV0dXJuIHN0YXRpYzo6JGVycm9yczsNCgl9DQoNCgkvKioNCgkgKiBDaGVjayBhIGZpbGUgYW5kIHZlcmlmaWVzIGl0IGFzIGEgYWxsb3dlZCBmaWxlIGZvcm1hdCBmaWxlDQoJICoNCgkgKiBAcGFyYW0gIGFycmF5ICAgICAgICAgJHVwbG9hZCAgICAgIFRoZSB1cGxvYWRlZCBkZXRhaWxzIGFycmF5DQoJICogQHBhcmFtICBzdHJpbmcgICAgICAgICR0eXBlICAgICAgICAgIFRoZSBmaWxlIHR5cGUNCgkgKg0KCSAqIEByZXR1cm4gIGFycmF5fG51bGwgIG9mIGVsZW1lbnRzDQoJICogQHNpbmNlICAgMy4wLjExDQoJICovDQoJcHJvdGVjdGVkIHN0YXRpYyBmdW5jdGlvbiBjaGVjayhhcnJheSAkdXBsb2FkLCBzdHJpbmcgJHR5cGUpOiA/YXJyYXkNCgl7DQoJCS8vIERlZmF1bHQgZXh0ZW5zaW9ucy9mb3JtYXRzDQoJCSRleHRlbnNpb25zID0gTWltZUhlbHBlcjo6Z2V0RmlsZUV4dGVuc2lvbnMoJHR5cGUpOw0KDQoJCS8vIENsZWFuIHRoZSBwYXRoDQoJCSR1cGxvYWRfcGF0aCA9IFBhdGg6OmNsZWFuKCR1cGxvYWRbJ2Z1bGxfcGF0aCddKTsNCg0KCQkvLyBHZXQgZmlsZSBleHRlbnNpb24vZm9ybWF0DQoJCSRleHRlbnNpb24gPSBNaW1lSGVscGVyOjpleHRlbnNpb24oJHVwbG9hZF9wYXRoKTsNCgkJJG1pbWUgPSAkdXBsb2FkWyd0eXBlJ107DQoNCgkJdW5zZXQoJHVwbG9hZFsndHlwZSddKTsNCg0KCQkvLyBzZXQgdG8gY2hlY2sNCgkJJGNoZWNraW5nX21pbWUgPSBNaW1lSGVscGVyOjptaW1lVHlwZSgkdXBsb2FkX3BhdGgpOw0KDQoJCS8vIExlZ2FsIGZpbGUgZm9ybWF0cw0KCQkkbGVnYWxfZXh0ZW5zaW9ucyA9IFtdOw0KDQoJCS8vIGNoZWNrIGlmIHRoZSBmaWxlIGZvcm1hdCBpcyBldmVuIGluIHRoZSBsaXN0DQoJCWlmIChpbl9hcnJheSgkZXh0ZW5zaW9uLCAkZXh0ZW5zaW9ucykpDQoJCXsNCgkJCS8vIGdldCBhbGxvd2VkIGZvcm1hdHMNCgkJCSRsZWdhbF9mb3JtYXRzID0gKGFycmF5KSBIZWxwZXI6OmdldFBhcmFtcygpLT5nZXQoJHR5cGUgLiAnX2Zvcm1hdHMnLCBbXSk7DQoJCQkkbGVnYWxfZXh0ZW5zaW9ucyA9IGFycmF5X3ZhbHVlcyhhcnJheV91bmlxdWUoYXJyYXlfbWVyZ2UoJGxlZ2FsX2Zvcm1hdHMsIHN0YXRpYzo6JGxlZ2FsRm9ybWF0cykpKTsNCgkJfQ0KDQoJCS8vIGNoZWNrIHRoZSBleHRlbnNpb24NCgkJaWYgKCFpbl9hcnJheSgkZXh0ZW5zaW9uLCAkbGVnYWxfZXh0ZW5zaW9ucykpDQoJCXsNCgkJCS8vIENsZWFudXAgdGhlIGltcG9ydCBmaWxlDQoJCQlpZiAoIXN0YXRpYzo6cmVtb3ZlKCR1cGxvYWRbJ2Z1bGxfcGF0aCddKSkNCgkJCXsNCgkJCQlzdGF0aWM6OnNldEVycm9yKFRleHQ6Ol8oJ1VwbG9hZCBjb3VsZCBub3QgYmUgcmVtb3ZlZCB3aXRoIHRoZSBnaXZlbiBmdWxsIHBhdGguJykpOw0KCQkJfQ0KDQoJCQlzdGF0aWM6OnNldEVycm9yKFRleHQ6Ol8oJ1VwbG9hZCBpcyBub3QgYSB2YWxpZCB0eXBlLicpKTsNCg0KCQkJcmV0dXJuIG51bGw7DQoJCX0NCg0KCQlpZiAoJGNoZWNraW5nX21pbWUgPT09ICRtaW1lKQ0KCQl7DQoJCQkkdXBsb2FkWydtaW1lJ10gPSAkbWltZTsgLy8gVE9ETyB3ZSBzaG91bGQga2VlcCBhbmQgZXllIG9uIHRoaXMuDQoJCX0NCg0KCQkkdXBsb2FkWydleHRlbnNpb24nXSA9ICRleHRlbnNpb247DQoNCgkJcmV0dXJuICR1cGxvYWQ7DQoJfQ0KDQoJLyoqDQoJICogQ2xlYW4gdXAgdGVtcG9yYXJ5IHVwbG9hZGVkIGZpbGUNCgkgKg0KCSAqIEBwYXJhbSAgIHN0cmluZyAgJGZ1bGxQYXRoICAgIFRoZSBmdWxsIHBhdGggb2YgdGhlIHVwbG9hZGVkIGZpbGUNCgkgKg0KCSAqIEByZXR1cm4gIGJvb2xlYW4gIFRydWUgb24gc3VjY2Vzcw0KCSAqIEBzaW5jZSAgMy4wLjExDQoJICovDQoJcHJvdGVjdGVkIHN0YXRpYyBmdW5jdGlvbiByZW1vdmUoc3RyaW5nICRmdWxsUGF0aCk6IGJvb2wNCgl7DQoJCS8vIElzIHRoZSBwYWNrYWdlIGZpbGUgYSB2YWxpZCBmaWxlPw0KCQlpZiAoaXNfZmlsZSgkZnVsbFBhdGgpKQ0KCQl7DQoJCQlyZXR1cm4gRmlsZTo6ZGVsZXRlKCRmdWxsUGF0aCk7DQoJCX0NCgkJZWxzZWlmIChpc19maWxlKFBhdGg6OmNsZWFuKCRmdWxsUGF0aCkpKQ0KCQl7DQoJCQkvLyBJdCBtaWdodCBhbHNvIGJlIGp1c3QgYSBiYXNlIGZpbGVuYW1lDQoJCQlyZXR1cm4gRmlsZTo6ZGVsZXRlKFBhdGg6OmNsZWFuKCRmdWxsUGF0aCkpOw0KCQl9DQoJCXJldHVybiBmYWxzZTsNCgl9DQoNCgkvKioNCgkgKiBTZXQgdGhlIGVycm9ycw0KCSAqDQoJICogQHBhcmFtICBzdHJpbmcgICAgICAgICRtZXNzYWdlICAgVGhlIGVycm9yIG1lc3NhZ2UNCgkgKg0KCSAqIEByZXR1cm4gIHZvaWQNCgkgKiBAc2luY2UgIDMuMC4xMQ0KCSAqLw0KCXByb3RlY3RlZCBzdGF0aWMgZnVuY3Rpb24gc2V0RXJyb3Ioc3RyaW5nICRtZXNzYWdlKTogdm9pZA0KCXsNCgkJaWYgKHN0YXRpYzo6JGVucXVldWVFcnJvcikNCgkJew0KCQkJRmFjdG9yeTo6Z2V0QXBwbGljYXRpb24oKS0+ZW5xdWV1ZU1lc3NhZ2UoJG1lc3NhZ2UsICdlcnJvcicpOw0KCQl9DQoJCWVsc2UNCgkJew0KCQkJc3RhdGljOjokZXJyb3JzW10gPSAkbWVzc2FnZTsNCgkJfQ0KCX0=', '{}', '{}', '', 1, '2022-05-16 13:20:50', 60, '', 1), +(26, 'f11dc790-713e-4706-9a85-a318ed3ad56e', 'Utilities MimeHelper', 'MimeHelper', 'abstract class', 'Mime Helper\r\n\r\n@since 3.0.11', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICAzcmQgU2VwdGVtYmVyLCAyMDIwDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\Utilities.MimeHelper', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIEZpbGUgRXh0ZW5zaW9ucyB0byBNaW1ldHlwZXMNCgkgKiBodHRwczovL2dpc3QuZ2l0aHViLmNvbS9MbGV3ZWxseW52ZG0vNzRiZTM3MzM1N2UxMzFiODc3NWE3NTgyYzNkZTUwOGINCgkgKiBodHRwOi8vc3ZuLmFwYWNoZS5vcmcvcmVwb3MvYXNmL2h0dHBkL2h0dHBkL3RydW5rL2RvY3MvY29uZi9taW1lLnR5cGVzDQoJICoNCgkgKiBAdmFyICAgICBhcnJheQ0KCSAqIEBzaW5jZSAgIDUuMC4zDQoJICovDQoJcHJvdGVjdGVkIHN0YXRpYyAkZmlsZUV4dGVuc2lvblRvTWltZVR5cGUgPSBbDQoJCScxMjMnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5sb3R1cy0xLTItMycsDQoJCSczZG1sJwkJCT0+ICd0ZXh0L3ZuZC5pbjNkLjNkbWwnLA0KCQknM2RzJwkJCT0+ICdpbWFnZS94LTNkcycsDQoJCSczZzInCQkJPT4gJ3ZpZGVvLzNncHAyJywNCgkJJzNncCcJCQk9PiAndmlkZW8vM2dwcCcsDQoJCSc3eicJCQk9PiAnYXBwbGljYXRpb24veC03ei1jb21wcmVzc2VkJywNCgkJJ2FhYicJCQk9PiAnYXBwbGljYXRpb24veC1hdXRob3J3YXJlLWJpbicsDQoJCSdhYWMnCQkJPT4gJ2F1ZGlvL3gtYWFjJywNCgkJJ2FhbScJCQk9PiAnYXBwbGljYXRpb24veC1hdXRob3J3YXJlLW1hcCcsDQoJCSdhYXMnCQkJPT4gJ2FwcGxpY2F0aW9uL3gtYXV0aG9yd2FyZS1zZWcnLA0KCQknYWJ3JwkJCT0+ICdhcHBsaWNhdGlvbi94LWFiaXdvcmQnLA0KCQknYWMnCQkJPT4gJ2FwcGxpY2F0aW9uL3BraXgtYXR0ci1jZXJ0JywNCgkJJ2FjYycJCQk9PiAnYXBwbGljYXRpb24vdm5kLmFtZXJpY2FuZHluYW1pY3MuYWNjJywNCgkJJ2FjZScJCQk9PiAnYXBwbGljYXRpb24veC1hY2UtY29tcHJlc3NlZCcsDQoJCSdhY3UnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5hY3Vjb2JvbCcsDQoJCSdhY3V0YycJCQk9PiAnYXBwbGljYXRpb24vdm5kLmFjdWNvcnAnLA0KCQknYWRwJwkJCT0+ICdhdWRpby9hZHBjbScsDQoJCSdhZXAnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5hdWRpb2dyYXBoJywNCgkJJ2FmbScJCQk9PiAnYXBwbGljYXRpb24veC1mb250LXR5cGUxJywNCgkJJ2FmcCcJCQk9PiAnYXBwbGljYXRpb24vdm5kLmlibS5tb2RjYXAnLA0KCQknYWhlYWQnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5haGVhZC5zcGFjZScsDQoJCSdhaScJCQk9PiAnYXBwbGljYXRpb24vcG9zdHNjcmlwdCcsDQoJCSdhaWYnCQkJPT4gJ2F1ZGlvL3gtYWlmZicsDQoJCSdhaWZjJwkJCT0+ICdhdWRpby94LWFpZmYnLA0KCQknYWlmZicJCQk9PiAnYXVkaW8veC1haWZmJywNCgkJJ2FpcicJCQk9PiAnYXBwbGljYXRpb24vdm5kLmFkb2JlLmFpci1hcHBsaWNhdGlvbi1pbnN0YWxsZXItcGFja2FnZSt6aXAnLA0KCQknYWl0JwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuZHZiLmFpdCcsDQoJCSdhbWknCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5hbWlnYS5hbWknLA0KCQknYXBrJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuYW5kcm9pZC5wYWNrYWdlLWFyY2hpdmUnLA0KCQknYXBwY2FjaGUnCQk9PiAndGV4dC9jYWNoZS1tYW5pZmVzdCcsDQoJCSdhcHBsaWNhdGlvbicJPT4gJ2FwcGxpY2F0aW9uL3gtbXMtYXBwbGljYXRpb24nLA0KCQknYXByJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQubG90dXMtYXBwcm9hY2gnLA0KCQknYXJjJwkJCT0+ICdhcHBsaWNhdGlvbi94LWZyZWVhcmMnLA0KCQknYXNjJwkJCT0+ICdhcHBsaWNhdGlvbi9wZ3Atc2lnbmF0dXJlJywNCgkJJ2FzZicJCQk9PiAndmlkZW8veC1tcy1hc2YnLA0KCQknYXNtJwkJCT0+ICd0ZXh0L3gtYXNtJywNCgkJJ2FzbycJCQk9PiAnYXBwbGljYXRpb24vdm5kLmFjY3BhYy5zaW1wbHkuYXNvJywNCgkJJ2FzeCcJCQk9PiAndmlkZW8veC1tcy1hc2YnLA0KCQknYXRjJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuYWN1Y29ycCcsDQoJCSdhdG9tJwkJCT0+ICdhcHBsaWNhdGlvbi9hdG9tK3htbCcsDQoJCSdhdG9tY2F0JwkJPT4gJ2FwcGxpY2F0aW9uL2F0b21jYXQreG1sJywNCgkJJ2F0b21zdmMnCQk9PiAnYXBwbGljYXRpb24vYXRvbXN2Yyt4bWwnLA0KCQknYXR4JwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuYW50aXguZ2FtZS1jb21wb25lbnQnLA0KCQknYXUnCQkJPT4gJ2F1ZGlvL2Jhc2ljJywNCgkJJ2F2aScJCQk9PiAndmlkZW8veC1tc3ZpZGVvJywNCgkJJ2F2aWYnCQkJPT4gJ2ltYWdlL2F2aWYnLA0KCQknYXcnCQkJPT4gJ2FwcGxpY2F0aW9uL2FwcGxpeHdhcmUnLA0KCQknYXpmJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuYWlyemlwLmZpbGVzZWN1cmUuYXpmJywNCgkJJ2F6cycJCQk9PiAnYXBwbGljYXRpb24vdm5kLmFpcnppcC5maWxlc2VjdXJlLmF6cycsDQoJCSdhencnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5hbWF6b24uZWJvb2snLA0KCQknYmF0JwkJCT0+ICdhcHBsaWNhdGlvbi94LW1zZG93bmxvYWQnLA0KCQknYmNwaW8nCQkJPT4gJ2FwcGxpY2F0aW9uL3gtYmNwaW8nLA0KCQknYmRmJwkJCT0+ICdhcHBsaWNhdGlvbi94LWZvbnQtYmRmJywNCgkJJ2JkbScJCQk9PiAnYXBwbGljYXRpb24vdm5kLnN5bmNtbC5kbSt3YnhtbCcsDQoJCSdiZWQnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5yZWFsdm5jLmJlZCcsDQoJCSdiaDInCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5mdWppdHN1Lm9hc3lzcHJzJywNCgkJJ2JpbicJCQk9PiAnYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtJywNCgkJJ2JsYicJCQk9PiAnYXBwbGljYXRpb24veC1ibG9yYicsDQoJCSdibG9yYicJCQk9PiAnYXBwbGljYXRpb24veC1ibG9yYicsDQoJCSdibWknCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5ibWknLA0KCQknYm1wJwkJCT0+ICdpbWFnZS9ibXAnLA0KCQknYm9vaycJCQk9PiAnYXBwbGljYXRpb24vdm5kLmZyYW1lbWFrZXInLA0KCQknYm94JwkJCT0+ICdhcHBsaWNhdGlvbi92bmQucHJldmlld3N5c3RlbXMuYm94JywNCgkJJ2JveicJCQk9PiAnYXBwbGljYXRpb24veC1iemlwMicsDQoJCSdicGsnCQkJPT4gJ2FwcGxpY2F0aW9uL29jdGV0LXN0cmVhbScsDQoJCSdidGlmJwkJCT0+ICdpbWFnZS9wcnMuYnRpZicsDQoJCSdieicJCQk9PiAnYXBwbGljYXRpb24veC1iemlwJywNCgkJJ2J6MicJCQk9PiAnYXBwbGljYXRpb24veC1iemlwMicsDQoJCSdjJwkJCQk9PiAndGV4dC94LWMnLA0KCQknYzExYW1jJwkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5jbHVldHJ1c3QuY2FydG9tb2JpbGUtY29uZmlnJywNCgkJJ2MxMWFteicJCT0+ICdhcHBsaWNhdGlvbi92bmQuY2x1ZXRydXN0LmNhcnRvbW9iaWxlLWNvbmZpZy1wa2cnLA0KCQknYzRkJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuY2xvbmsuYzRncm91cCcsDQoJCSdjNGYnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5jbG9uay5jNGdyb3VwJywNCgkJJ2M0ZycJCQk9PiAnYXBwbGljYXRpb24vdm5kLmNsb25rLmM0Z3JvdXAnLA0KCQknYzRwJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuY2xvbmsuYzRncm91cCcsDQoJCSdjNHUnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5jbG9uay5jNGdyb3VwJywNCgkJJ2NhYicJCQk9PiAnYXBwbGljYXRpb24vdm5kLm1zLWNhYi1jb21wcmVzc2VkJywNCgkJJ2NhZicJCQk9PiAnYXVkaW8veC1jYWYnLA0KCQknY2FwJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQudGNwZHVtcC5wY2FwJywNCgkJJ2NhcicJCQk9PiAnYXBwbGljYXRpb24vdm5kLmN1cmwuY2FyJywNCgkJJ2NhdCcJCQk9PiAnYXBwbGljYXRpb24vdm5kLm1zLXBraS5zZWNjYXQnLA0KCQknY2I3JwkJCT0+ICdhcHBsaWNhdGlvbi94LWNicicsDQoJCSdjYmEnCQkJPT4gJ2FwcGxpY2F0aW9uL3gtY2JyJywNCgkJJ2NicicJCQk9PiAnYXBwbGljYXRpb24veC1jYnInLA0KCQknY2J0JwkJCT0+ICdhcHBsaWNhdGlvbi94LWNicicsDQoJCSdjYnonCQkJPT4gJ2FwcGxpY2F0aW9uL3gtY2JyJywNCgkJJ2NjJwkJCT0+ICd0ZXh0L3gtYycsDQoJCSdjY3QnCQkJPT4gJ2FwcGxpY2F0aW9uL3gtZGlyZWN0b3InLA0KCQknY2N4bWwnCQkJPT4gJ2FwcGxpY2F0aW9uL2NjeG1sK3htbCcsDQoJCSdjZGJjbXNnJwkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5jb250YWN0LmNtc2cnLA0KCQknY2RmJwkJCT0+ICdhcHBsaWNhdGlvbi94LW5ldGNkZicsDQoJCSdjZGtleScJCQk9PiAnYXBwbGljYXRpb24vdm5kLm1lZGlhc3RhdGlvbi5jZGtleScsDQoJCSdjZG1pYScJCQk9PiAnYXBwbGljYXRpb24vY2RtaS1jYXBhYmlsaXR5JywNCgkJJ2NkbWljJwkJCT0+ICdhcHBsaWNhdGlvbi9jZG1pLWNvbnRhaW5lcicsDQoJCSdjZG1pZCcJCQk9PiAnYXBwbGljYXRpb24vY2RtaS1kb21haW4nLA0KCQknY2RtaW8nCQkJPT4gJ2FwcGxpY2F0aW9uL2NkbWktb2JqZWN0JywNCgkJJ2NkbWlxJwkJCT0+ICdhcHBsaWNhdGlvbi9jZG1pLXF1ZXVlJywNCgkJJ2NkeCcJCQk9PiAnY2hlbWljYWwveC1jZHgnLA0KCQknY2R4bWwnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5jaGVtZHJhdyt4bWwnLA0KCQknY2R5JwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuY2luZGVyZWxsYScsDQoJCSdjZXInCQkJPT4gJ2FwcGxpY2F0aW9uL3BraXgtY2VydCcsDQoJCSdjZnMnCQkJPT4gJ2FwcGxpY2F0aW9uL3gtY2ZzLWNvbXByZXNzZWQnLA0KCQknY2dtJwkJCT0+ICdpbWFnZS9jZ20nLA0KCQknY2hhdCcJCQk9PiAnYXBwbGljYXRpb24veC1jaGF0JywNCgkJJ2NobScJCQk9PiAnYXBwbGljYXRpb24vdm5kLm1zLWh0bWxoZWxwJywNCgkJJ2NocnQnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5rZGUua2NoYXJ0JywNCgkJJ2NpZicJCQk9PiAnY2hlbWljYWwveC1jaWYnLA0KCQknY2lpJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuYW5zZXItd2ViLWNlcnRpZmljYXRlLWlzc3VlLWluaXRpYXRpb24nLA0KCQknY2lsJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQubXMtYXJ0Z2FscnknLA0KCQknY2xhJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuY2xheW1vcmUnLA0KCQknY2xhc3MnCQkJPT4gJ2FwcGxpY2F0aW9uL2phdmEtdm0nLA0KCQknY2xraycJCQk9PiAnYXBwbGljYXRpb24vdm5kLmNyaWNrLmNsaWNrZXIua2V5Ym9hcmQnLA0KCQknY2xrcCcJCQk9PiAnYXBwbGljYXRpb24vdm5kLmNyaWNrLmNsaWNrZXIucGFsZXR0ZScsDQoJCSdjbGt0JwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuY3JpY2suY2xpY2tlci50ZW1wbGF0ZScsDQoJCSdjbGt3JwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuY3JpY2suY2xpY2tlci53b3JkYmFuaycsDQoJCSdjbGt4JwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuY3JpY2suY2xpY2tlcicsDQoJCSdjbHAnCQkJPT4gJ2FwcGxpY2F0aW9uL3gtbXNjbGlwJywNCgkJJ2NtYycJCQk9PiAnYXBwbGljYXRpb24vdm5kLmNvc21vY2FsbGVyJywNCgkJJ2NtZGYnCQkJPT4gJ2NoZW1pY2FsL3gtY21kZicsDQoJCSdjbWwnCQkJPT4gJ2NoZW1pY2FsL3gtY21sJywNCgkJJ2NtcCcJCQk9PiAnYXBwbGljYXRpb24vdm5kLnllbGxvd3JpdmVyLWN1c3RvbS1tZW51JywNCgkJJ2NteCcJCQk9PiAnaW1hZ2UveC1jbXgnLA0KCQknY29kJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQucmltLmNvZCcsDQoJCSdjb20nCQkJPT4gJ2FwcGxpY2F0aW9uL3gtbXNkb3dubG9hZCcsDQoJCSdjb25mJwkJCT0+ICd0ZXh0L3BsYWluJywNCgkJJ2NwaW8nCQkJPT4gJ2FwcGxpY2F0aW9uL3gtY3BpbycsDQoJCSdjcHAnCQkJPT4gJ3RleHQveC1jJywNCgkJJ2NwdCcJCQk9PiAnYXBwbGljYXRpb24vbWFjLWNvbXBhY3Rwcm8nLA0KCQknY3JkJwkJCT0+ICdhcHBsaWNhdGlvbi94LW1zY2FyZGZpbGUnLA0KCQknY3JsJwkJCT0+ICdhcHBsaWNhdGlvbi9wa2l4LWNybCcsDQoJCSdjcnQnCQkJPT4gJ2FwcGxpY2F0aW9uL3gteDUwOS1jYS1jZXJ0JywNCgkJJ2NyeXB0b25vdGUnCT0+ICdhcHBsaWNhdGlvbi92bmQucmlnLmNyeXB0b25vdGUnLA0KCQknY3NoJwkJCT0+ICdhcHBsaWNhdGlvbi94LWNzaCcsDQoJCSdjc21sJwkJCT0+ICdjaGVtaWNhbC94LWNzbWwnLA0KCQknY3NwJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuY29tbW9uc3BhY2UnLA0KCQknY3NzJwkJCT0+ICd0ZXh0L2NzcycsDQoJCSdjc3QnCQkJPT4gJ2FwcGxpY2F0aW9uL3gtZGlyZWN0b3InLA0KCQknY3N2JwkJCT0+ICd0ZXh0L2NzdicsDQoJCSdjdScJCQk9PiAnYXBwbGljYXRpb24vY3Utc2VlbWUnLA0KCQknY3VybCcJCQk9PiAndGV4dC92bmQuY3VybCcsDQoJCSdjd3cnCQkJPT4gJ2FwcGxpY2F0aW9uL3Bycy5jd3cnLA0KCQknY3h0JwkJCT0+ICdhcHBsaWNhdGlvbi94LWRpcmVjdG9yJywNCgkJJ2N4eCcJCQk9PiAndGV4dC94LWMnLA0KCQknZGFlJwkJCT0+ICdtb2RlbC92bmQuY29sbGFkYSt4bWwnLA0KCQknZGFmJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQubW9iaXVzLmRhZicsDQoJCSdkYXJ0JwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuZGFydCcsDQoJCSdkYXRhbGVzcycJCT0+ICdhcHBsaWNhdGlvbi92bmQuZmRzbi5zZWVkJywNCgkJJ2Rhdm1vdW50JwkJPT4gJ2FwcGxpY2F0aW9uL2Rhdm1vdW50K3htbCcsDQoJCSdkYmsnCQkJPT4gJ2FwcGxpY2F0aW9uL2RvY2Jvb2sreG1sJywNCgkJJ2RjcicJCQk9PiAnYXBwbGljYXRpb24veC1kaXJlY3RvcicsDQoJCSdkY3VybCcJCQk9PiAndGV4dC92bmQuY3VybC5kY3VybCcsDQoJCSdkZDInCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5vbWEuZGQyK3htbCcsDQoJCSdkZGQnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5mdWppeGVyb3guZGRkJywNCgkJJ2RlYicJCQk9PiAnYXBwbGljYXRpb24veC1kZWJpYW4tcGFja2FnZScsDQoJCSdkZWYnCQkJPT4gJ3RleHQvcGxhaW4nLA0KCQknZGVwbG95JwkJPT4gJ2FwcGxpY2F0aW9uL29jdGV0LXN0cmVhbScsDQoJCSdkZXInCQkJPT4gJ2FwcGxpY2F0aW9uL3gteDUwOS1jYS1jZXJ0JywNCgkJJ2RmYWMnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5kcmVhbWZhY3RvcnknLA0KCQknZGdjJwkJCT0+ICdhcHBsaWNhdGlvbi94LWRnYy1jb21wcmVzc2VkJywNCgkJJ2RpYycJCQk9PiAndGV4dC94LWMnLA0KCQknZGlyJwkJCT0+ICdhcHBsaWNhdGlvbi94LWRpcmVjdG9yJywNCgkJJ2RpcycJCQk9PiAnYXBwbGljYXRpb24vdm5kLm1vYml1cy5kaXMnLA0KCQknZGlzdCcJCQk9PiAnYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtJywNCgkJJ2Rpc3R6JwkJCT0+ICdhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0nLA0KCQknZGp2JwkJCT0+ICdpbWFnZS92bmQuZGp2dScsDQoJCSdkanZ1JwkJCT0+ICdpbWFnZS92bmQuZGp2dScsDQoJCSdkbGwnCQkJPT4gJ2FwcGxpY2F0aW9uL3gtbXNkb3dubG9hZCcsDQoJCSdkbWcnCQkJPT4gJ2FwcGxpY2F0aW9uL3gtYXBwbGUtZGlza2ltYWdlJywNCgkJJ2RtcCcJCQk9PiAnYXBwbGljYXRpb24vdm5kLnRjcGR1bXAucGNhcCcsDQoJCSdkbXMnCQkJPT4gJ2FwcGxpY2F0aW9uL29jdGV0LXN0cmVhbScsDQoJCSdkbmEnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5kbmEnLA0KCQknZG9jJwkJCT0+ICdhcHBsaWNhdGlvbi9tc3dvcmQnLA0KCQknZG9jbScJCQk9PiAnYXBwbGljYXRpb24vdm5kLm1zLXdvcmQuZG9jdW1lbnQubWFjcm9lbmFibGVkLjEyJywNCgkJJ2RvY3gnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5vcGVueG1sZm9ybWF0cy1vZmZpY2Vkb2N1bWVudC53b3JkcHJvY2Vzc2luZ21sLmRvY3VtZW50JywNCgkJJ2RvdCcJCQk9PiAnYXBwbGljYXRpb24vbXN3b3JkJywNCgkJJ2RvdG0nCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5tcy13b3JkLnRlbXBsYXRlLm1hY3JvZW5hYmxlZC4xMicsDQoJCSdkb3R4JwkJCT0+ICdhcHBsaWNhdGlvbi92bmQub3BlbnhtbGZvcm1hdHMtb2ZmaWNlZG9jdW1lbnQud29yZHByb2Nlc3NpbmdtbC50ZW1wbGF0ZScsDQoJCSdkcCcJCQk9PiAnYXBwbGljYXRpb24vdm5kLm9zZ2kuZHAnLA0KCQknZHBnJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuZHBncmFwaCcsDQoJCSdkcmEnCQkJPT4gJ2F1ZGlvL3ZuZC5kcmEnLA0KCQknZHNjJwkJCT0+ICd0ZXh0L3Bycy5saW5lcy50YWcnLA0KCQknZHNzYycJCQk9PiAnYXBwbGljYXRpb24vZHNzYytkZXInLA0KCQknZHRiJwkJCT0+ICdhcHBsaWNhdGlvbi94LWR0Ym9vayt4bWwnLA0KCQknZHRkJwkJCT0+ICdhcHBsaWNhdGlvbi94bWwtZHRkJywNCgkJJ2R0cycJCQk9PiAnYXVkaW8vdm5kLmR0cycsDQoJCSdkdHNoZCcJCQk9PiAnYXVkaW8vdm5kLmR0cy5oZCcsDQoJCSdkdW1wJwkJCT0+ICdhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0nLA0KCQknZHZiJwkJCT0+ICd2aWRlby92bmQuZHZiLmZpbGUnLA0KCQknZHZpJwkJCT0+ICdhcHBsaWNhdGlvbi94LWR2aScsDQoJCSdkd2YnCQkJPT4gJ21vZGVsL3ZuZC5kd2YnLA0KCQknZHdnJwkJCT0+ICdpbWFnZS92bmQuZHdnJywNCgkJJ2R4ZicJCQk9PiAnaW1hZ2Uvdm5kLmR4ZicsDQoJCSdkeHAnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5zcG90ZmlyZS5keHAnLA0KCQknZHhyJwkJCT0+ICdhcHBsaWNhdGlvbi94LWRpcmVjdG9yJywNCgkJJ2VjZWxwNDgwMCcJCT0+ICdhdWRpby92bmQubnVlcmEuZWNlbHA0ODAwJywNCgkJJ2VjZWxwNzQ3MCcJCT0+ICdhdWRpby92bmQubnVlcmEuZWNlbHA3NDcwJywNCgkJJ2VjZWxwOTYwMCcJCT0+ICdhdWRpby92bmQubnVlcmEuZWNlbHA5NjAwJywNCgkJJ2VjbWEnCQkJPT4gJ2FwcGxpY2F0aW9uL2VjbWFzY3JpcHQnLA0KCQknZWRtJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQubm92YWRpZ20uZWRtJywNCgkJJ2VkeCcJCQk9PiAnYXBwbGljYXRpb24vdm5kLm5vdmFkaWdtLmVkeCcsDQoJCSdlZmlmJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQucGljc2VsJywNCgkJJ2VpNicJCQk9PiAnYXBwbGljYXRpb24vdm5kLnBnLm9zYXNsaScsDQoJCSdlbGMnCQkJPT4gJ2FwcGxpY2F0aW9uL29jdGV0LXN0cmVhbScsDQoJCSdlbWYnCQkJPT4gJ2FwcGxpY2F0aW9uL3gtbXNtZXRhZmlsZScsDQoJCSdlbWwnCQkJPT4gJ21lc3NhZ2UvcmZjODIyJywNCgkJJ2VtbWEnCQkJPT4gJ2FwcGxpY2F0aW9uL2VtbWEreG1sJywNCgkJJ2VteicJCQk9PiAnYXBwbGljYXRpb24veC1tc21ldGFmaWxlJywNCgkJJ2VvbCcJCQk9PiAnYXVkaW8vdm5kLmRpZ2l0YWwtd2luZHMnLA0KCQknZW90JwkJCT0+ICdhcHBsaWNhdGlvbi92bmQubXMtZm9udG9iamVjdCcsDQoJCSdlcHMnCQkJPT4gJ2FwcGxpY2F0aW9uL3Bvc3RzY3JpcHQnLA0KCQknZXB1YicJCQk9PiAnYXBwbGljYXRpb24vZXB1Yit6aXAnLA0KCQknZXMzJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuZXN6aWdubzMreG1sJywNCgkJJ2VzYScJCQk9PiAnYXBwbGljYXRpb24vdm5kLm9zZ2kuc3Vic3lzdGVtJywNCgkJJ2VzZicJCQk9PiAnYXBwbGljYXRpb24vdm5kLmVwc29uLmVzZicsDQoJCSdldDMnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5lc3ppZ25vMyt4bWwnLA0KCQknZXR4JwkJCT0+ICd0ZXh0L3gtc2V0ZXh0JywNCgkJJ2V2YScJCQk9PiAnYXBwbGljYXRpb24veC1ldmEnLA0KCQknZXZ5JwkJCT0+ICdhcHBsaWNhdGlvbi94LWVudm95JywNCgkJJ2V4ZScJCQk9PiAnYXBwbGljYXRpb24veC1tc2Rvd25sb2FkJywNCgkJJ2V4aScJCQk9PiAnYXBwbGljYXRpb24vZXhpJywNCgkJJ2V4dCcJCQk9PiAnYXBwbGljYXRpb24vdm5kLm5vdmFkaWdtLmV4dCcsDQoJCSdleicJCQk9PiAnYXBwbGljYXRpb24vYW5kcmV3LWluc2V0JywNCgkJJ2V6MicJCQk9PiAnYXBwbGljYXRpb24vdm5kLmV6cGl4LWFsYnVtJywNCgkJJ2V6MycJCQk9PiAnYXBwbGljYXRpb24vdm5kLmV6cGl4LXBhY2thZ2UnLA0KCQknZicJCQkJPT4gJ3RleHQveC1mb3J0cmFuJywNCgkJJ2Y0dicJCQk9PiAndmlkZW8veC1mNHYnLA0KCQknZjc3JwkJCT0+ICd0ZXh0L3gtZm9ydHJhbicsDQoJCSdmOTAnCQkJPT4gJ3RleHQveC1mb3J0cmFuJywNCgkJJ2ZicycJCQk9PiAnaW1hZ2Uvdm5kLmZhc3RiaWRzaGVldCcsDQoJCSdmY2R0JwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuYWRvYmUuZm9ybXNjZW50cmFsLmZjZHQnLA0KCQknZmNzJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuaXNhYy5mY3MnLA0KCQknZmRmJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuZmRmJywNCgkJJ2ZlX2xhdW5jaCcJCT0+ICdhcHBsaWNhdGlvbi92bmQuZGVub3ZvLmZjc2VsYXlvdXQtbGluaycsDQoJCSdmZzUnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5mdWppdHN1Lm9hc3lzZ3AnLA0KCQknZmdkJwkJCT0+ICdhcHBsaWNhdGlvbi94LWRpcmVjdG9yJywNCgkJJ2ZoJwkJCT0+ICdpbWFnZS94LWZyZWVoYW5kJywNCgkJJ2ZoNCcJCQk9PiAnaW1hZ2UveC1mcmVlaGFuZCcsDQoJCSdmaDUnCQkJPT4gJ2ltYWdlL3gtZnJlZWhhbmQnLA0KCQknZmg3JwkJCT0+ICdpbWFnZS94LWZyZWVoYW5kJywNCgkJJ2ZoYycJCQk9PiAnaW1hZ2UveC1mcmVlaGFuZCcsDQoJCSdmaWcnCQkJPT4gJ2FwcGxpY2F0aW9uL3gteGZpZycsDQoJCSdmbGFjJwkJCT0+ICdhdWRpby94LWZsYWMnLA0KCQknZmxpJwkJCT0+ICd2aWRlby94LWZsaScsDQoJCSdmbG8nCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5taWNyb2dyYWZ4LmZsbycsDQoJCSdmbHYnCQkJPT4gJ3ZpZGVvL3gtZmx2JywNCgkJJ2ZsdycJCQk9PiAnYXBwbGljYXRpb24vdm5kLmtkZS5raXZpbycsDQoJCSdmbHgnCQkJPT4gJ3RleHQvdm5kLmZtaS5mbGV4c3RvcicsDQoJCSdmbHknCQkJPT4gJ3RleHQvdm5kLmZseScsDQoJCSdmbScJCQk9PiAnYXBwbGljYXRpb24vdm5kLmZyYW1lbWFrZXInLA0KCQknZm5jJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuZnJvZ2Fucy5mbmMnLA0KCQknZm9yJwkJCT0+ICd0ZXh0L3gtZm9ydHJhbicsDQoJCSdmcHgnCQkJPT4gJ2ltYWdlL3ZuZC5mcHgnLA0KCQknZnJhbWUnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5mcmFtZW1ha2VyJywNCgkJJ2ZzYycJCQk9PiAnYXBwbGljYXRpb24vdm5kLmZzYy53ZWJsYXVuY2gnLA0KCQknZnN0JwkJCT0+ICdpbWFnZS92bmQuZnN0JywNCgkJJ2Z0YycJCQk9PiAnYXBwbGljYXRpb24vdm5kLmZsdXh0aW1lLmNsaXAnLA0KCQknZnRpJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuYW5zZXItd2ViLWZ1bmRzLXRyYW5zZmVyLWluaXRpYXRpb24nLA0KCQknZnZ0JwkJCT0+ICd2aWRlby92bmQuZnZ0JywNCgkJJ2Z4cCcJCQk9PiAnYXBwbGljYXRpb24vdm5kLmFkb2JlLmZ4cCcsDQoJCSdmeHBsJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuYWRvYmUuZnhwJywNCgkJJ2Z6cycJCQk9PiAnYXBwbGljYXRpb24vdm5kLmZ1enp5c2hlZXQnLA0KCQknZzJ3JwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuZ2VvcGxhbicsDQoJCSdnMycJCQk9PiAnaW1hZ2UvZzNmYXgnLA0KCQknZzN3JwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuZ2Vvc3BhY2UnLA0KCQknZ2FjJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuZ3Jvb3ZlLWFjY291bnQnLA0KCQknZ2FtJwkJCT0+ICdhcHBsaWNhdGlvbi94LXRhZHMnLA0KCQknZ2JyJwkJCT0+ICdhcHBsaWNhdGlvbi9ycGtpLWdob3N0YnVzdGVycycsDQoJCSdnY2EnCQkJPT4gJ2FwcGxpY2F0aW9uL3gtZ2NhLWNvbXByZXNzZWQnLA0KCQknZ2RsJwkJCT0+ICdtb2RlbC92bmQuZ2RsJywNCgkJJ2dlbycJCQk9PiAnYXBwbGljYXRpb24vdm5kLmR5bmFnZW8nLA0KCQknZ2V4JwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuZ2VvbWV0cnktZXhwbG9yZXInLA0KCQknZ2diJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuZ2VvZ2VicmEuZmlsZScsDQoJCSdnZ3MnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5nZW9nZWJyYS5zbGlkZXMnLA0KCQknZ2d0JwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuZ2VvZ2VicmEudG9vbCcsDQoJCSdnaGYnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5ncm9vdmUtaGVscCcsDQoJCSdnaWYnCQkJPT4gJ2ltYWdlL2dpZicsDQoJCSdnaW0nCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5ncm9vdmUtaWRlbnRpdHktbWVzc2FnZScsDQoJCSdnbWwnCQkJPT4gJ2FwcGxpY2F0aW9uL2dtbCt4bWwnLA0KCQknZ214JwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuZ214JywNCgkJJ2dudW1lcmljJwkJPT4gJ2FwcGxpY2F0aW9uL3gtZ251bWVyaWMnLA0KCQknZ3BoJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuZmxvZ3JhcGhpdCcsDQoJCSdncHgnCQkJPT4gJ2FwcGxpY2F0aW9uL2dweCt4bWwnLA0KCQknZ3FmJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuZ3JhZmVxJywNCgkJJ2dxcycJCQk9PiAnYXBwbGljYXRpb24vdm5kLmdyYWZlcScsDQoJCSdncmFtJwkJCT0+ICdhcHBsaWNhdGlvbi9zcmdzJywNCgkJJ2dyYW1wcycJCT0+ICdhcHBsaWNhdGlvbi94LWdyYW1wcy14bWwnLA0KCQknZ3JlJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuZ2VvbWV0cnktZXhwbG9yZXInLA0KCQknZ3J2JwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuZ3Jvb3ZlLWluamVjdG9yJywNCgkJJ2dyeG1sJwkJCT0+ICdhcHBsaWNhdGlvbi9zcmdzK3htbCcsDQoJCSdnc2YnCQkJPT4gJ2FwcGxpY2F0aW9uL3gtZm9udC1naG9zdHNjcmlwdCcsDQoJCSdndGFyJwkJCT0+ICdhcHBsaWNhdGlvbi94LWd0YXInLA0KCQknZ3RtJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuZ3Jvb3ZlLXRvb2wtbWVzc2FnZScsDQoJCSdndHcnCQkJPT4gJ21vZGVsL3ZuZC5ndHcnLA0KCQknZ3YnCQkJPT4gJ3RleHQvdm5kLmdyYXBodml6JywNCgkJJ2d4ZicJCQk9PiAnYXBwbGljYXRpb24vZ3hmJywNCgkJJ2d4dCcJCQk9PiAnYXBwbGljYXRpb24vdm5kLmdlb25leHQnLA0KCQknaCcJCQkJPT4gJ3RleHQveC1jJywNCgkJJ2gyNjEnCQkJPT4gJ3ZpZGVvL2gyNjEnLA0KCQknaDI2MycJCQk9PiAndmlkZW8vaDI2MycsDQoJCSdoMjY0JwkJCT0+ICd2aWRlby9oMjY0JywNCgkJJ2hhbCcJCQk9PiAnYXBwbGljYXRpb24vdm5kLmhhbCt4bWwnLA0KCQknaGJjaScJCQk9PiAnYXBwbGljYXRpb24vdm5kLmhiY2knLA0KCQknaGRmJwkJCT0+ICdhcHBsaWNhdGlvbi94LWhkZicsDQoJCSdoaCcJCQk9PiAndGV4dC94LWMnLA0KCQknaGxwJwkJCT0+ICdhcHBsaWNhdGlvbi93aW5obHAnLA0KCQknaHBnbCcJCQk9PiAnYXBwbGljYXRpb24vdm5kLmhwLWhwZ2wnLA0KCQknaHBpZCcJCQk9PiAnYXBwbGljYXRpb24vdm5kLmhwLWhwaWQnLA0KCQknaHBzJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuaHAtaHBzJywNCgkJJ2hxeCcJCQk9PiAnYXBwbGljYXRpb24vbWFjLWJpbmhleDQwJywNCgkJJ2h0a2UnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5rZW5hbWVhYXBwJywNCgkJJ2h0bScJCQk9PiAndGV4dC9odG1sJywNCgkJJ2h0bWwnCQkJPT4gJ3RleHQvaHRtbCcsDQoJCSdodmQnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC55YW1haGEuaHYtZGljJywNCgkJJ2h2cCcJCQk9PiAnYXBwbGljYXRpb24vdm5kLnlhbWFoYS5odi12b2ljZScsDQoJCSdodnMnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC55YW1haGEuaHYtc2NyaXB0JywNCgkJJ2kyZycJCQk9PiAnYXBwbGljYXRpb24vdm5kLmludGVyZ2VvJywNCgkJJ2ljYycJCQk9PiAnYXBwbGljYXRpb24vdm5kLmljY3Byb2ZpbGUnLA0KCQknaWNlJwkJCT0+ICd4LWNvbmZlcmVuY2UveC1jb29sdGFsaycsDQoJCSdpY20nCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5pY2Nwcm9maWxlJywNCgkJJ2ljbycJCQk9PiAnaW1hZ2UveC1pY29uJywNCgkJJ2ljcycJCQk9PiAndGV4dC9jYWxlbmRhcicsDQoJCSdpZWYnCQkJPT4gJ2ltYWdlL2llZicsDQoJCSdpZmInCQkJPT4gJ3RleHQvY2FsZW5kYXInLA0KCQknaWZtJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuc2hhbmEuaW5mb3JtZWQuZm9ybWRhdGEnLA0KCQknaWdlcycJCQk9PiAnbW9kZWwvaWdlcycsDQoJCSdpZ2wnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5pZ2xvYWRlcicsDQoJCSdpZ20nCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5pbnNvcnMuaWdtJywNCgkJJ2lncycJCQk9PiAnbW9kZWwvaWdlcycsDQoJCSdpZ3gnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5taWNyb2dyYWZ4LmlneCcsDQoJCSdpaWYnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5zaGFuYS5pbmZvcm1lZC5pbnRlcmNoYW5nZScsDQoJCSdpbXAnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5hY2NwYWMuc2ltcGx5LmltcCcsDQoJCSdpbXMnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5tcy1pbXMnLA0KCQknaW4nCQkJPT4gJ3RleHQvcGxhaW4nLA0KCQknaW5rJwkJCT0+ICdhcHBsaWNhdGlvbi9pbmttbCt4bWwnLA0KCQknaW5rbWwnCQkJPT4gJ2FwcGxpY2F0aW9uL2lua21sK3htbCcsDQoJCSdpbnN0YWxsJwkJPT4gJ2FwcGxpY2F0aW9uL3gtaW5zdGFsbC1pbnN0cnVjdGlvbnMnLA0KCQknaW90YScJCQk9PiAnYXBwbGljYXRpb24vdm5kLmFzdHJhZWEtc29mdHdhcmUuaW90YScsDQoJCSdpcGZpeCcJCQk9PiAnYXBwbGljYXRpb24vaXBmaXgnLA0KCQknaXBrJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuc2hhbmEuaW5mb3JtZWQucGFja2FnZScsDQoJCSdpcm0nCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5pYm0ucmlnaHRzLW1hbmFnZW1lbnQnLA0KCQknaXJwJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuaXJlcG9zaXRvcnkucGFja2FnZSt4bWwnLA0KCQknaXNvJwkJCT0+ICdhcHBsaWNhdGlvbi94LWlzbzk2NjAtaW1hZ2UnLA0KCQknaXRwJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuc2hhbmEuaW5mb3JtZWQuZm9ybXRlbXBsYXRlJywNCgkJJ2l2cCcJCQk9PiAnYXBwbGljYXRpb24vdm5kLmltbWVydmlzaW9uLWl2cCcsDQoJCSdpdnUnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5pbW1lcnZpc2lvbi1pdnUnLA0KCQknamFkJwkJCT0+ICd0ZXh0L3ZuZC5zdW4uajJtZS5hcHAtZGVzY3JpcHRvcicsDQoJCSdqYW0nCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5qYW0nLA0KCQknamFyJwkJCT0+ICdhcHBsaWNhdGlvbi9qYXZhLWFyY2hpdmUnLA0KCQknamF2YScJCQk9PiAndGV4dC94LWphdmEtc291cmNlJywNCgkJJ2ppc3AnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5qaXNwJywNCgkJJ2psdCcJCQk9PiAnYXBwbGljYXRpb24vdm5kLmhwLWpseXQnLA0KCQknam5scCcJCQk9PiAnYXBwbGljYXRpb24veC1qYXZhLWpubHAtZmlsZScsDQoJCSdqb2RhJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuam9vc3Quam9kYS1hcmNoaXZlJywNCgkJJ2pwZScJCQk9PiAnaW1hZ2UvanBlZycsDQoJCSdqcGVnJwkJCT0+ICdpbWFnZS9qcGVnJywNCgkJJ2pwZycJCQk9PiAnaW1hZ2UvanBlZycsDQoJCSdqcGdtJwkJCT0+ICd2aWRlby9qcG0nLA0KCQknanBndicJCQk9PiAndmlkZW8vanBlZycsDQoJCSdqcG0nCQkJPT4gJ3ZpZGVvL2pwbScsDQoJCSdqcycJCQk9PiAndGV4dC9qYXZhc2NyaXB0JywNCgkJJ2pzb24nCQkJPT4gJ2FwcGxpY2F0aW9uL2pzb24nLA0KCQknanNvbm1sJwkJPT4gJ2FwcGxpY2F0aW9uL2pzb25tbCtqc29uJywNCgkJJ2p4bCcJCQk9PiAnaW1hZ2UvanhsJywNCgkJJ2thcicJCQk9PiAnYXVkaW8vbWlkaScsDQoJCSdrYXJib24nCQk9PiAnYXBwbGljYXRpb24vdm5kLmtkZS5rYXJib24nLA0KCQkna2ZvJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQua2RlLmtmb3JtdWxhJywNCgkJJ2tpYScJCQk9PiAnYXBwbGljYXRpb24vdm5kLmtpZHNwaXJhdGlvbicsDQoJCSdrbWwnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5nb29nbGUtZWFydGgua21sK3htbCcsDQoJCSdrbXonCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5nb29nbGUtZWFydGgua216JywNCgkJJ2tuZScJCQk9PiAnYXBwbGljYXRpb24vdm5kLmtpbmFyJywNCgkJJ2tucCcJCQk9PiAnYXBwbGljYXRpb24vdm5kLmtpbmFyJywNCgkJJ2tvbicJCQk9PiAnYXBwbGljYXRpb24vdm5kLmtkZS5rb250b3VyJywNCgkJJ2twcicJCQk9PiAnYXBwbGljYXRpb24vdm5kLmtkZS5rcHJlc2VudGVyJywNCgkJJ2twdCcJCQk9PiAnYXBwbGljYXRpb24vdm5kLmtkZS5rcHJlc2VudGVyJywNCgkJJ2tweHgnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5kcy1rZXlwb2ludCcsDQoJCSdrc3AnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5rZGUua3NwcmVhZCcsDQoJCSdrdHInCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5rYWhvb3R6JywNCgkJJ2t0eCcJCQk9PiAnaW1hZ2Uva3R4JywNCgkJJ2t0eicJCQk9PiAnYXBwbGljYXRpb24vdm5kLmthaG9vdHonLA0KCQkna3dkJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQua2RlLmt3b3JkJywNCgkJJ2t3dCcJCQk9PiAnYXBwbGljYXRpb24vdm5kLmtkZS5rd29yZCcsDQoJCSdsYXN4bWwnCQk9PiAnYXBwbGljYXRpb24vdm5kLmxhcy5sYXMreG1sJywNCgkJJ2xhdGV4JwkJCT0+ICdhcHBsaWNhdGlvbi94LWxhdGV4JywNCgkJJ2xiZCcJCQk9PiAnYXBwbGljYXRpb24vdm5kLmxsYW1hZ3JhcGhpY3MubGlmZS1iYWxhbmNlLmRlc2t0b3AnLA0KCQknbGJlJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQubGxhbWFncmFwaGljcy5saWZlLWJhbGFuY2UuZXhjaGFuZ2UreG1sJywNCgkJJ2xlcycJCQk9PiAnYXBwbGljYXRpb24vdm5kLmhoZS5sZXNzb24tcGxheWVyJywNCgkJJ2xoYScJCQk9PiAnYXBwbGljYXRpb24veC1semgtY29tcHJlc3NlZCcsDQoJCSdsaW5rNjYnCQk9PiAnYXBwbGljYXRpb24vdm5kLnJvdXRlNjYubGluazY2K3htbCcsDQoJCSdsaXN0JwkJCT0+ICd0ZXh0L3BsYWluJywNCgkJJ2xpc3QzODIwJwkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5pYm0ubW9kY2FwJywNCgkJJ2xpc3RhZnAnCQk9PiAnYXBwbGljYXRpb24vdm5kLmlibS5tb2RjYXAnLA0KCQknbG5rJwkJCT0+ICdhcHBsaWNhdGlvbi94LW1zLXNob3J0Y3V0JywNCgkJJ2xvZycJCQk9PiAndGV4dC9wbGFpbicsDQoJCSdsb3N0eG1sJwkJPT4gJ2FwcGxpY2F0aW9uL2xvc3QreG1sJywNCgkJJ2xyZicJCQk9PiAnYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtJywNCgkJJ2xybScJCQk9PiAnYXBwbGljYXRpb24vdm5kLm1zLWxybScsDQoJCSdsdGYnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5mcm9nYW5zLmx0ZicsDQoJCSdsdnAnCQkJPT4gJ2F1ZGlvL3ZuZC5sdWNlbnQudm9pY2UnLA0KCQknbHdwJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQubG90dXMtd29yZHBybycsDQoJCSdsemgnCQkJPT4gJ2FwcGxpY2F0aW9uL3gtbHpoLWNvbXByZXNzZWQnLA0KCQknbTEzJwkJCT0+ICdhcHBsaWNhdGlvbi94LW1zbWVkaWF2aWV3JywNCgkJJ20xNCcJCQk9PiAnYXBwbGljYXRpb24veC1tc21lZGlhdmlldycsDQoJCSdtMXYnCQkJPT4gJ3ZpZGVvL21wZWcnLA0KCQknbTIxJwkJCT0+ICdhcHBsaWNhdGlvbi9tcDIxJywNCgkJJ20yYScJCQk9PiAnYXVkaW8vbXBlZycsDQoJCSdtMnQnCQkJPT4gJ3ZpZGVvL21wMnQnLA0KCQknbTJ0cycJCQk9PiAndmlkZW8vbXAydCcsDQoJCSdtMnYnCQkJPT4gJ3ZpZGVvL21wZWcnLA0KCQknbTNhJwkJCT0+ICdhdWRpby9tcGVnJywNCgkJJ20zdScJCQk9PiAnYXVkaW8veC1tcGVndXJsJywNCgkJJ20zdTgnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5hcHBsZS5tcGVndXJsJywNCgkJJ200YScJCQk9PiAnYXVkaW8vbXA0JywNCgkJJ200dScJCQk9PiAndmlkZW8vdm5kLm1wZWd1cmwnLA0KCQknbTR2JwkJCT0+ICd2aWRlby94LW00dicsDQoJCSdtYScJCQk9PiAnYXBwbGljYXRpb24vbWF0aGVtYXRpY2EnLA0KCQknbWFkcycJCQk9PiAnYXBwbGljYXRpb24vbWFkcyt4bWwnLA0KCQknbWFnJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuZWNvd2luLmNoYXJ0JywNCgkJJ21ha2VyJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuZnJhbWVtYWtlcicsDQoJCSdtYW4nCQkJPT4gJ3RleHQvdHJvZmYnLA0KCQknbWFyJwkJCT0+ICdhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0nLA0KCQknbWF0aG1sJwkJPT4gJ2FwcGxpY2F0aW9uL21hdGhtbCt4bWwnLA0KCQknbWInCQkJPT4gJ2FwcGxpY2F0aW9uL21hdGhlbWF0aWNhJywNCgkJJ21iaycJCQk9PiAnYXBwbGljYXRpb24vdm5kLm1vYml1cy5tYmsnLA0KCQknbWJveCcJCQk9PiAnYXBwbGljYXRpb24vbWJveCcsDQoJCSdtYzEnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5tZWRjYWxjZGF0YScsDQoJCSdtY2QnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5tY2QnLA0KCQknbWN1cmwnCQkJPT4gJ3RleHQvdm5kLmN1cmwubWN1cmwnLA0KCQknbWRiJwkJCT0+ICdhcHBsaWNhdGlvbi94LW1zYWNjZXNzJywNCgkJJ21kaScJCQk9PiAnaW1hZ2Uvdm5kLm1zLW1vZGknLA0KCQknbWUnCQkJPT4gJ3RleHQvdHJvZmYnLA0KCQknbWVzaCcJCQk9PiAnbW9kZWwvbWVzaCcsDQoJCSdtZXRhNCcJCQk9PiAnYXBwbGljYXRpb24vbWV0YWxpbms0K3htbCcsDQoJCSdtZXRhbGluaycJCT0+ICdhcHBsaWNhdGlvbi9tZXRhbGluayt4bWwnLA0KCQknbWV0cycJCQk9PiAnYXBwbGljYXRpb24vbWV0cyt4bWwnLA0KCQknbWZtJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQubWZtcCcsDQoJCSdtZnQnCQkJPT4gJ2FwcGxpY2F0aW9uL3Jwa2ktbWFuaWZlc3QnLA0KCQknbWdwJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQub3NnZW8ubWFwZ3VpZGUucGFja2FnZScsDQoJCSdtZ3onCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5wcm90ZXVzLm1hZ2F6aW5lJywNCgkJJ21pZCcJCQk9PiAnYXVkaW8vbWlkaScsDQoJCSdtaWRpJwkJCT0+ICdhdWRpby9taWRpJywNCgkJJ21pZScJCQk9PiAnYXBwbGljYXRpb24veC1taWUnLA0KCQknbWlmJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQubWlmJywNCgkJJ21pbWUnCQkJPT4gJ21lc3NhZ2UvcmZjODIyJywNCgkJJ21qMicJCQk9PiAndmlkZW8vbWoyJywNCgkJJ21qcDInCQkJPT4gJ3ZpZGVvL21qMicsDQoJCSdtanMnCQkJPT4gJ3RleHQvamF2YXNjcmlwdCcsDQoJCSdtazNkJwkJCT0+ICd2aWRlby94LW1hdHJvc2thJywNCgkJJ21rYScJCQk9PiAnYXVkaW8veC1tYXRyb3NrYScsDQoJCSdta3MnCQkJPT4gJ3ZpZGVvL3gtbWF0cm9za2EnLA0KCQknbWt2JwkJCT0+ICd2aWRlby94LW1hdHJvc2thJywNCgkJJ21scCcJCQk9PiAnYXBwbGljYXRpb24vdm5kLmRvbGJ5Lm1scCcsDQoJCSdtbWQnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5jaGlwbnV0cy5rYXJhb2tlLW1tZCcsDQoJCSdtbWYnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5zbWFmJywNCgkJJ21tcicJCQk9PiAnaW1hZ2Uvdm5kLmZ1aml4ZXJveC5lZG1pY3MtbW1yJywNCgkJJ21uZycJCQk9PiAndmlkZW8veC1tbmcnLA0KCQknbW55JwkJCT0+ICdhcHBsaWNhdGlvbi94LW1zbW9uZXknLA0KCQknbW9iaScJCQk9PiAnYXBwbGljYXRpb24veC1tb2JpcG9ja2V0LWVib29rJywNCgkJJ21vZHMnCQkJPT4gJ2FwcGxpY2F0aW9uL21vZHMreG1sJywNCgkJJ21vdicJCQk9PiAndmlkZW8vcXVpY2t0aW1lJywNCgkJJ21vdmllJwkJCT0+ICd2aWRlby94LXNnaS1tb3ZpZScsDQoJCSdtcDInCQkJPT4gJ2F1ZGlvL21wZWcnLA0KCQknbXAyMScJCQk9PiAnYXBwbGljYXRpb24vbXAyMScsDQoJCSdtcDJhJwkJCT0+ICdhdWRpby9tcGVnJywNCgkJJ21wMycJCQk9PiAnYXVkaW8vbXBlZycsDQoJCSdtcDQnCQkJPT4gJ3ZpZGVvL21wNCcsDQoJCSdtcDRhJwkJCT0+ICdhdWRpby9tcDQnLA0KCQknbXA0cycJCQk9PiAnYXBwbGljYXRpb24vbXA0JywNCgkJJ21wNHYnCQkJPT4gJ3ZpZGVvL21wNCcsDQoJCSdtcGMnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5tb3BodW4uY2VydGlmaWNhdGUnLA0KCQknbXBlJwkJCT0+ICd2aWRlby9tcGVnJywNCgkJJ21wZWcnCQkJPT4gJ3ZpZGVvL21wZWcnLA0KCQknbXBnJwkJCT0+ICd2aWRlby9tcGVnJywNCgkJJ21wZzQnCQkJPT4gJ3ZpZGVvL21wNCcsDQoJCSdtcGdhJwkJCT0+ICdhdWRpby9tcGVnJywNCgkJJ21wa2cnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5hcHBsZS5pbnN0YWxsZXIreG1sJywNCgkJJ21wbScJCQk9PiAnYXBwbGljYXRpb24vdm5kLmJsdWVpY2UubXVsdGlwYXNzJywNCgkJJ21wbicJCQk9PiAnYXBwbGljYXRpb24vdm5kLm1vcGh1bi5hcHBsaWNhdGlvbicsDQoJCSdtcHAnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5tcy1wcm9qZWN0JywNCgkJJ21wdCcJCQk9PiAnYXBwbGljYXRpb24vdm5kLm1zLXByb2plY3QnLA0KCQknbXB5JwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuaWJtLm1pbmlwYXknLA0KCQknbXF5JwkJCT0+ICdhcHBsaWNhdGlvbi92bmQubW9iaXVzLm1xeScsDQoJCSdtcmMnCQkJPT4gJ2FwcGxpY2F0aW9uL21hcmMnLA0KCQknbXJjeCcJCQk9PiAnYXBwbGljYXRpb24vbWFyY3htbCt4bWwnLA0KCQknbXMnCQkJPT4gJ3RleHQvdHJvZmYnLA0KCQknbXNjbWwnCQkJPT4gJ2FwcGxpY2F0aW9uL21lZGlhc2VydmVyY29udHJvbCt4bWwnLA0KCQknbXNlZWQnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5mZHNuLm1zZWVkJywNCgkJJ21zZXEnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5tc2VxJywNCgkJJ21zZicJCQk9PiAnYXBwbGljYXRpb24vdm5kLmVwc29uLm1zZicsDQoJCSdtc2gnCQkJPT4gJ21vZGVsL21lc2gnLA0KCQknbXNpJwkJCT0+ICdhcHBsaWNhdGlvbi94LW1zZG93bmxvYWQnLA0KCQknbXNsJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQubW9iaXVzLm1zbCcsDQoJCSdtc3R5JwkJCT0+ICdhcHBsaWNhdGlvbi92bmQubXV2ZWUuc3R5bGUnLA0KCQknbXRzJwkJCT0+ICd2aWRlby9tcDJ0JywNCgkJJ211cycJCQk9PiAnYXBwbGljYXRpb24vdm5kLm11c2ljaWFuJywNCgkJJ211c2ljeG1sJwkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5yZWNvcmRhcmUubXVzaWN4bWwreG1sJywNCgkJJ212YicJCQk9PiAnYXBwbGljYXRpb24veC1tc21lZGlhdmlldycsDQoJCSdtd2YnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5tZmVyJywNCgkJJ214ZicJCQk9PiAnYXBwbGljYXRpb24vbXhmJywNCgkJJ214bCcJCQk9PiAnYXBwbGljYXRpb24vdm5kLnJlY29yZGFyZS5tdXNpY3htbCcsDQoJCSdteG1sJwkJCT0+ICdhcHBsaWNhdGlvbi94dit4bWwnLA0KCQknbXhzJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQudHJpc2NhcGUubXhzJywNCgkJJ214dScJCQk9PiAndmlkZW8vdm5kLm1wZWd1cmwnLA0KCQknbi1nYWdlJwkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5ub2tpYS5uLWdhZ2Uuc3ltYmlhbi5pbnN0YWxsJywNCgkJJ24zJwkJCT0+ICd0ZXh0L24zJywNCgkJJ25iJwkJCT0+ICdhcHBsaWNhdGlvbi9tYXRoZW1hdGljYScsDQoJCSduYnAnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC53b2xmcmFtLnBsYXllcicsDQoJCSduYycJCQk9PiAnYXBwbGljYXRpb24veC1uZXRjZGYnLA0KCQknbmN4JwkJCT0+ICdhcHBsaWNhdGlvbi94LWR0Ym5jeCt4bWwnLA0KCQknbmZvJwkJCT0+ICd0ZXh0L3gtbmZvJywNCgkJJ25nZGF0JwkJCT0+ICdhcHBsaWNhdGlvbi92bmQubm9raWEubi1nYWdlLmRhdGEnLA0KCQknbml0ZicJCQk9PiAnYXBwbGljYXRpb24vdm5kLm5pdGYnLA0KCQknbmx1JwkJCT0+ICdhcHBsaWNhdGlvbi92bmQubmV1cm9sYW5ndWFnZS5ubHUnLA0KCQknbm1sJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuZW5saXZlbicsDQoJCSdubmQnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5ub2JsZW5ldC1kaXJlY3RvcnknLA0KCQknbm5zJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQubm9ibGVuZXQtc2VhbGVyJywNCgkJJ25udycJCQk9PiAnYXBwbGljYXRpb24vdm5kLm5vYmxlbmV0LXdlYicsDQoJCSducHgnCQkJPT4gJ2ltYWdlL3ZuZC5uZXQtZnB4JywNCgkJJ25zYycJCQk9PiAnYXBwbGljYXRpb24veC1jb25mZXJlbmNlJywNCgkJJ25zZicJCQk9PiAnYXBwbGljYXRpb24vdm5kLmxvdHVzLW5vdGVzJywNCgkJJ250ZicJCQk9PiAnYXBwbGljYXRpb24vdm5kLm5pdGYnLA0KCQknbnpiJwkJCT0+ICdhcHBsaWNhdGlvbi94LW56YicsDQoJCSdvYTInCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5mdWppdHN1Lm9hc3lzMicsDQoJCSdvYTMnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5mdWppdHN1Lm9hc3lzMycsDQoJCSdvYXMnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5mdWppdHN1Lm9hc3lzJywNCgkJJ29iZCcJCQk9PiAnYXBwbGljYXRpb24veC1tc2JpbmRlcicsDQoJCSdvYmonCQkJPT4gJ2FwcGxpY2F0aW9uL3gtdGdpZicsDQoJCSdvZGEnCQkJPT4gJ2FwcGxpY2F0aW9uL29kYScsDQoJCSdvZGInCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5vYXNpcy5vcGVuZG9jdW1lbnQuZGF0YWJhc2UnLA0KCQknb2RjJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQub2FzaXMub3BlbmRvY3VtZW50LmNoYXJ0JywNCgkJJ29kZicJCQk9PiAnYXBwbGljYXRpb24vdm5kLm9hc2lzLm9wZW5kb2N1bWVudC5mb3JtdWxhJywNCgkJJ29kZnQnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5vYXNpcy5vcGVuZG9jdW1lbnQuZm9ybXVsYS10ZW1wbGF0ZScsDQoJCSdvZGcnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5vYXNpcy5vcGVuZG9jdW1lbnQuZ3JhcGhpY3MnLA0KCQknb2RpJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQub2FzaXMub3BlbmRvY3VtZW50LmltYWdlJywNCgkJJ29kbScJCQk9PiAnYXBwbGljYXRpb24vdm5kLm9hc2lzLm9wZW5kb2N1bWVudC50ZXh0LW1hc3RlcicsDQoJCSdvZHAnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5vYXNpcy5vcGVuZG9jdW1lbnQucHJlc2VudGF0aW9uJywNCgkJJ29kcycJCQk9PiAnYXBwbGljYXRpb24vdm5kLm9hc2lzLm9wZW5kb2N1bWVudC5zcHJlYWRzaGVldCcsDQoJCSdvZHQnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5vYXNpcy5vcGVuZG9jdW1lbnQudGV4dCcsDQoJCSdvZ2EnCQkJPT4gJ2F1ZGlvL29nZycsDQoJCSdvZ2cnCQkJPT4gJ2F1ZGlvL29nZycsDQoJCSdvZ3YnCQkJPT4gJ3ZpZGVvL29nZycsDQoJCSdvZ3gnCQkJPT4gJ2FwcGxpY2F0aW9uL29nZycsDQoJCSdvbWRvYycJCQk9PiAnYXBwbGljYXRpb24vb21kb2MreG1sJywNCgkJJ29uZXBrZycJCT0+ICdhcHBsaWNhdGlvbi9vbmVub3RlJywNCgkJJ29uZXRtcCcJCT0+ICdhcHBsaWNhdGlvbi9vbmVub3RlJywNCgkJJ29uZXRvYycJCT0+ICdhcHBsaWNhdGlvbi9vbmVub3RlJywNCgkJJ29uZXRvYzInCQk9PiAnYXBwbGljYXRpb24vb25lbm90ZScsDQoJCSdvcGYnCQkJPT4gJ2FwcGxpY2F0aW9uL29lYnBzLXBhY2thZ2UreG1sJywNCgkJJ29wbWwnCQkJPT4gJ3RleHQveC1vcG1sJywNCgkJJ29wcmMnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5wYWxtJywNCgkJJ29wdXMnCQkJPT4gJ2F1ZGlvL29nZycsDQoJCSdvcmcnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5sb3R1cy1vcmdhbml6ZXInLA0KCQknb3NmJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQueWFtYWhhLm9wZW5zY29yZWZvcm1hdCcsDQoJCSdvc2ZwdmcnCQk9PiAnYXBwbGljYXRpb24vdm5kLnlhbWFoYS5vcGVuc2NvcmVmb3JtYXQub3NmcHZnK3htbCcsDQoJCSdvdGMnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5vYXNpcy5vcGVuZG9jdW1lbnQuY2hhcnQtdGVtcGxhdGUnLA0KCQknb3RmJwkJCT0+ICdmb250L290ZicsDQoJCSdvdGcnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5vYXNpcy5vcGVuZG9jdW1lbnQuZ3JhcGhpY3MtdGVtcGxhdGUnLA0KCQknb3RoJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQub2FzaXMub3BlbmRvY3VtZW50LnRleHQtd2ViJywNCgkJJ290aScJCQk9PiAnYXBwbGljYXRpb24vdm5kLm9hc2lzLm9wZW5kb2N1bWVudC5pbWFnZS10ZW1wbGF0ZScsDQoJCSdvdHAnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5vYXNpcy5vcGVuZG9jdW1lbnQucHJlc2VudGF0aW9uLXRlbXBsYXRlJywNCgkJJ290cycJCQk9PiAnYXBwbGljYXRpb24vdm5kLm9hc2lzLm9wZW5kb2N1bWVudC5zcHJlYWRzaGVldC10ZW1wbGF0ZScsDQoJCSdvdHQnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5vYXNpcy5vcGVuZG9jdW1lbnQudGV4dC10ZW1wbGF0ZScsDQoJCSdveHBzJwkJCT0+ICdhcHBsaWNhdGlvbi9veHBzJywNCgkJJ294dCcJCQk9PiAnYXBwbGljYXRpb24vdm5kLm9wZW5vZmZpY2VvcmcuZXh0ZW5zaW9uJywNCgkJJ3AnCQkJCT0+ICd0ZXh0L3gtcGFzY2FsJywNCgkJJ3AxMCcJCQk9PiAnYXBwbGljYXRpb24vcGtjczEwJywNCgkJJ3AxMicJCQk9PiAnYXBwbGljYXRpb24veC1wa2NzMTInLA0KCQkncDdiJwkJCT0+ICdhcHBsaWNhdGlvbi94LXBrY3M3LWNlcnRpZmljYXRlcycsDQoJCSdwN2MnCQkJPT4gJ2FwcGxpY2F0aW9uL3BrY3M3LW1pbWUnLA0KCQkncDdtJwkJCT0+ICdhcHBsaWNhdGlvbi9wa2NzNy1taW1lJywNCgkJJ3A3cicJCQk9PiAnYXBwbGljYXRpb24veC1wa2NzNy1jZXJ0cmVxcmVzcCcsDQoJCSdwN3MnCQkJPT4gJ2FwcGxpY2F0aW9uL3BrY3M3LXNpZ25hdHVyZScsDQoJCSdwOCcJCQk9PiAnYXBwbGljYXRpb24vcGtjczgnLA0KCQkncGFzJwkJCT0+ICd0ZXh0L3gtcGFzY2FsJywNCgkJJ3BhdycJCQk9PiAnYXBwbGljYXRpb24vdm5kLnBhd2FhZmlsZScsDQoJCSdwYmQnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5wb3dlcmJ1aWxkZXI2JywNCgkJJ3BibScJCQk9PiAnaW1hZ2UveC1wb3J0YWJsZS1iaXRtYXAnLA0KCQkncGNhcCcJCQk9PiAnYXBwbGljYXRpb24vdm5kLnRjcGR1bXAucGNhcCcsDQoJCSdwY2YnCQkJPT4gJ2FwcGxpY2F0aW9uL3gtZm9udC1wY2YnLA0KCQkncGNsJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuaHAtcGNsJywNCgkJJ3BjbHhsJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuaHAtcGNseGwnLA0KCQkncGN0JwkJCT0+ICdpbWFnZS94LXBpY3QnLA0KCQkncGN1cmwnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5jdXJsLnBjdXJsJywNCgkJJ3BjeCcJCQk9PiAnaW1hZ2UveC1wY3gnLA0KCQkncGRiJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQucGFsbScsDQoJCSdwZGYnCQkJPT4gJ2FwcGxpY2F0aW9uL3BkZicsDQoJCSdwZmEnCQkJPT4gJ2FwcGxpY2F0aW9uL3gtZm9udC10eXBlMScsDQoJCSdwZmInCQkJPT4gJ2FwcGxpY2F0aW9uL3gtZm9udC10eXBlMScsDQoJCSdwZm0nCQkJPT4gJ2FwcGxpY2F0aW9uL3gtZm9udC10eXBlMScsDQoJCSdwZnInCQkJPT4gJ2FwcGxpY2F0aW9uL2ZvbnQtdGRwZnInLA0KCQkncGZ4JwkJCT0+ICdhcHBsaWNhdGlvbi94LXBrY3MxMicsDQoJCSdwZ20nCQkJPT4gJ2ltYWdlL3gtcG9ydGFibGUtZ3JheW1hcCcsDQoJCSdwZ24nCQkJPT4gJ2FwcGxpY2F0aW9uL3gtY2hlc3MtcGduJywNCgkJJ3BncCcJCQk9PiAnYXBwbGljYXRpb24vcGdwLWVuY3J5cHRlZCcsDQoJCSdwaWMnCQkJPT4gJ2ltYWdlL3gtcGljdCcsDQoJCSdwa2cnCQkJPT4gJ2FwcGxpY2F0aW9uL29jdGV0LXN0cmVhbScsDQoJCSdwa2knCQkJPT4gJ2FwcGxpY2F0aW9uL3BraXhjbXAnLA0KCQkncGtpcGF0aCcJCT0+ICdhcHBsaWNhdGlvbi9wa2l4LXBraXBhdGgnLA0KCQkncGxiJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuM2dwcC5waWMtYnctbGFyZ2UnLA0KCQkncGxjJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQubW9iaXVzLnBsYycsDQoJCSdwbGYnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5wb2NrZXRsZWFybicsDQoJCSdwbHMnCQkJPT4gJ2FwcGxpY2F0aW9uL3Bscyt4bWwnLA0KCQkncG1sJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuY3RjLXBvc21sJywNCgkJJ3BuZycJCQk9PiAnaW1hZ2UvcG5nJywNCgkJJ3BubScJCQk9PiAnaW1hZ2UveC1wb3J0YWJsZS1hbnltYXAnLA0KCQkncG9ydHBrZycJCT0+ICdhcHBsaWNhdGlvbi92bmQubWFjcG9ydHMucG9ydHBrZycsDQoJCSdwb3QnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5tcy1wb3dlcnBvaW50JywNCgkJJ3BvdG0nCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5tcy1wb3dlcnBvaW50LnRlbXBsYXRlLm1hY3JvZW5hYmxlZC4xMicsDQoJCSdwb3R4JwkJCT0+ICdhcHBsaWNhdGlvbi92bmQub3BlbnhtbGZvcm1hdHMtb2ZmaWNlZG9jdW1lbnQucHJlc2VudGF0aW9ubWwudGVtcGxhdGUnLA0KCQkncHBhbScJCQk9PiAnYXBwbGljYXRpb24vdm5kLm1zLXBvd2VycG9pbnQuYWRkaW4ubWFjcm9lbmFibGVkLjEyJywNCgkJJ3BwZCcJCQk9PiAnYXBwbGljYXRpb24vdm5kLmN1cHMtcHBkJywNCgkJJ3BwbScJCQk9PiAnaW1hZ2UveC1wb3J0YWJsZS1waXhtYXAnLA0KCQkncHBzJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQubXMtcG93ZXJwb2ludCcsDQoJCSdwcHNtJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQubXMtcG93ZXJwb2ludC5zbGlkZXNob3cubWFjcm9lbmFibGVkLjEyJywNCgkJJ3Bwc3gnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5vcGVueG1sZm9ybWF0cy1vZmZpY2Vkb2N1bWVudC5wcmVzZW50YXRpb25tbC5zbGlkZXNob3cnLA0KCQkncHB0JwkJCT0+ICdhcHBsaWNhdGlvbi92bmQubXMtcG93ZXJwb2ludCcsDQoJCSdwcHRtJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQubXMtcG93ZXJwb2ludC5wcmVzZW50YXRpb24ubWFjcm9lbmFibGVkLjEyJywNCgkJJ3BwdHgnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5vcGVueG1sZm9ybWF0cy1vZmZpY2Vkb2N1bWVudC5wcmVzZW50YXRpb25tbC5wcmVzZW50YXRpb24nLA0KCQkncHFhJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQucGFsbScsDQoJCSdwcmMnCQkJPT4gJ2FwcGxpY2F0aW9uL3gtbW9iaXBvY2tldC1lYm9vaycsDQoJCSdwcmUnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5sb3R1cy1mcmVlbGFuY2UnLA0KCQkncHJmJwkJCT0+ICdhcHBsaWNhdGlvbi9waWNzLXJ1bGVzJywNCgkJJ3BzJwkJCT0+ICdhcHBsaWNhdGlvbi9wb3N0c2NyaXB0JywNCgkJJ3BzYicJCQk9PiAnYXBwbGljYXRpb24vdm5kLjNncHAucGljLWJ3LXNtYWxsJywNCgkJJ3BzZCcJCQk9PiAnaW1hZ2Uvdm5kLmFkb2JlLnBob3Rvc2hvcCcsDQoJCSdwc2YnCQkJPT4gJ2FwcGxpY2F0aW9uL3gtZm9udC1saW51eC1wc2YnLA0KCQkncHNrY3htbCcJCT0+ICdhcHBsaWNhdGlvbi9wc2tjK3htbCcsDQoJCSdwdGlkJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQucHZpLnB0aWQxJywNCgkJJ3B1YicJCQk9PiAnYXBwbGljYXRpb24veC1tc3B1Ymxpc2hlcicsDQoJCSdwdmInCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC4zZ3BwLnBpYy1idy12YXInLA0KCQkncHduJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuM20ucG9zdC1pdC1ub3RlcycsDQoJCSdweWEnCQkJPT4gJ2F1ZGlvL3ZuZC5tcy1wbGF5cmVhZHkubWVkaWEucHlhJywNCgkJJ3B5dicJCQk9PiAndmlkZW8vdm5kLm1zLXBsYXlyZWFkeS5tZWRpYS5weXYnLA0KCQkncWFtJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuZXBzb24ucXVpY2thbmltZScsDQoJCSdxYm8nCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5pbnR1LnFibycsDQoJCSdxZngnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5pbnR1LnFmeCcsDQoJCSdxcHMnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5wdWJsaXNoYXJlLWRlbHRhLXRyZWUnLA0KCQkncXQnCQkJPT4gJ3ZpZGVvL3F1aWNrdGltZScsDQoJCSdxd2QnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5xdWFyay5xdWFya3hwcmVzcycsDQoJCSdxd3QnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5xdWFyay5xdWFya3hwcmVzcycsDQoJCSdxeGInCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5xdWFyay5xdWFya3hwcmVzcycsDQoJCSdxeGQnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5xdWFyay5xdWFya3hwcmVzcycsDQoJCSdxeGwnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5xdWFyay5xdWFya3hwcmVzcycsDQoJCSdxeHQnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5xdWFyay5xdWFya3hwcmVzcycsDQoJCSdyYScJCQk9PiAnYXVkaW8veC1wbi1yZWFsYXVkaW8nLA0KCQkncmFtJwkJCT0+ICdhdWRpby94LXBuLXJlYWxhdWRpbycsDQoJCSdyYXInCQkJPT4gJ2FwcGxpY2F0aW9uL3gtcmFyLWNvbXByZXNzZWQnLA0KCQkncmFzJwkJCT0+ICdpbWFnZS94LWNtdS1yYXN0ZXInLA0KCQkncmNwcm9maWxlJwkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5pcHVucGx1Z2dlZC5yY3Byb2ZpbGUnLA0KCQkncmRmJwkJCT0+ICdhcHBsaWNhdGlvbi9yZGYreG1sJywNCgkJJ3JkeicJCQk9PiAnYXBwbGljYXRpb24vdm5kLmRhdGEtdmlzaW9uLnJkeicsDQoJCSdyZXAnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5idXNpbmVzc29iamVjdHMnLA0KCQkncmVzJwkJCT0+ICdhcHBsaWNhdGlvbi94LWR0YnJlc291cmNlK3htbCcsDQoJCSdyZ2InCQkJPT4gJ2ltYWdlL3gtcmdiJywNCgkJJ3JpZicJCQk9PiAnYXBwbGljYXRpb24vcmVnaW5mbyt4bWwnLA0KCQkncmlwJwkJCT0+ICdhdWRpby92bmQucmlwJywNCgkJJ3JpcycJCQk9PiAnYXBwbGljYXRpb24veC1yZXNlYXJjaC1pbmZvLXN5c3RlbXMnLA0KCQkncmwnCQkJPT4gJ2FwcGxpY2F0aW9uL3Jlc291cmNlLWxpc3RzK3htbCcsDQoJCSdybGMnCQkJPT4gJ2ltYWdlL3ZuZC5mdWppeGVyb3guZWRtaWNzLXJsYycsDQoJCSdybGQnCQkJPT4gJ2FwcGxpY2F0aW9uL3Jlc291cmNlLWxpc3RzLWRpZmYreG1sJywNCgkJJ3JtJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQucm4tcmVhbG1lZGlhJywNCgkJJ3JtaScJCQk9PiAnYXVkaW8vbWlkaScsDQoJCSdybXAnCQkJPT4gJ2F1ZGlvL3gtcG4tcmVhbGF1ZGlvLXBsdWdpbicsDQoJCSdybXMnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5qY3AuamF2YW1lLm1pZGxldC1ybXMnLA0KCQkncm12YicJCQk9PiAnYXBwbGljYXRpb24vdm5kLnJuLXJlYWxtZWRpYS12YnInLA0KCQkncm5jJwkJCT0+ICdhcHBsaWNhdGlvbi9yZWxheC1uZy1jb21wYWN0LXN5bnRheCcsDQoJCSdyb2EnCQkJPT4gJ2FwcGxpY2F0aW9uL3Jwa2ktcm9hJywNCgkJJ3JvZmYnCQkJPT4gJ3RleHQvdHJvZmYnLA0KCQkncnA5JwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuY2xvYW50by5ycDknLA0KCQkncnBzcycJCQk9PiAnYXBwbGljYXRpb24vdm5kLm5va2lhLnJhZGlvLXByZXNldHMnLA0KCQkncnBzdCcJCQk9PiAnYXBwbGljYXRpb24vdm5kLm5va2lhLnJhZGlvLXByZXNldCcsDQoJCSdycScJCQk9PiAnYXBwbGljYXRpb24vc3BhcnFsLXF1ZXJ5JywNCgkJJ3JzJwkJCT0+ICdhcHBsaWNhdGlvbi9ybHMtc2VydmljZXMreG1sJywNCgkJJ3JzZCcJCQk9PiAnYXBwbGljYXRpb24vcnNkK3htbCcsDQoJCSdyc3MnCQkJPT4gJ2FwcGxpY2F0aW9uL3Jzcyt4bWwnLA0KCQkncnRmJwkJCT0+ICdhcHBsaWNhdGlvbi9ydGYnLA0KCQkncnR4JwkJCT0+ICd0ZXh0L3JpY2h0ZXh0JywNCgkJJ3MnCQkJCT0+ICd0ZXh0L3gtYXNtJywNCgkJJ3MzbScJCQk9PiAnYXVkaW8vczNtJywNCgkJJ3NhZicJCQk9PiAnYXBwbGljYXRpb24vdm5kLnlhbWFoYS5zbWFmLWF1ZGlvJywNCgkJJ3NibWwnCQkJPT4gJ2FwcGxpY2F0aW9uL3NibWwreG1sJywNCgkJJ3NjJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuaWJtLnNlY3VyZS1jb250YWluZXInLA0KCQknc2NkJwkJCT0+ICdhcHBsaWNhdGlvbi94LW1zc2NoZWR1bGUnLA0KCQknc2NtJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQubG90dXMtc2NyZWVuY2FtJywNCgkJJ3NjcScJCQk9PiAnYXBwbGljYXRpb24vc2N2cC1jdi1yZXF1ZXN0JywNCgkJJ3NjcycJCQk9PiAnYXBwbGljYXRpb24vc2N2cC1jdi1yZXNwb25zZScsDQoJCSdzY3VybCcJCQk9PiAndGV4dC92bmQuY3VybC5zY3VybCcsDQoJCSdzZGEnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5zdGFyZGl2aXNpb24uZHJhdycsDQoJCSdzZGMnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5zdGFyZGl2aXNpb24uY2FsYycsDQoJCSdzZGQnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5zdGFyZGl2aXNpb24uaW1wcmVzcycsDQoJCSdzZGtkJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuc29sZW50LnNka20reG1sJywNCgkJJ3Nka20nCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5zb2xlbnQuc2RrbSt4bWwnLA0KCQknc2RwJwkJCT0+ICdhcHBsaWNhdGlvbi9zZHAnLA0KCQknc2R3JwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuc3RhcmRpdmlzaW9uLndyaXRlcicsDQoJCSdzZWUnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5zZWVtYWlsJywNCgkJJ3NlZWQnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5mZHNuLnNlZWQnLA0KCQknc2VtYScJCQk9PiAnYXBwbGljYXRpb24vdm5kLnNlbWEnLA0KCQknc2VtZCcJCQk9PiAnYXBwbGljYXRpb24vdm5kLnNlbWQnLA0KCQknc2VtZicJCQk9PiAnYXBwbGljYXRpb24vdm5kLnNlbWYnLA0KCQknc2VyJwkJCT0+ICdhcHBsaWNhdGlvbi9qYXZhLXNlcmlhbGl6ZWQtb2JqZWN0JywNCgkJJ3NldHBheScJCT0+ICdhcHBsaWNhdGlvbi9zZXQtcGF5bWVudC1pbml0aWF0aW9uJywNCgkJJ3NldHJlZycJCT0+ICdhcHBsaWNhdGlvbi9zZXQtcmVnaXN0cmF0aW9uLWluaXRpYXRpb24nLA0KCQknc2ZkLWhkc3R4JwkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5oeWRyb3N0YXRpeC5zb2YtZGF0YScsDQoJCSdzZnMnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5zcG90ZmlyZS5zZnMnLA0KCQknc2Z2JwkJCT0+ICd0ZXh0L3gtc2Z2JywNCgkJJ3NnaScJCQk9PiAnaW1hZ2Uvc2dpJywNCgkJJ3NnbCcJCQk9PiAnYXBwbGljYXRpb24vdm5kLnN0YXJkaXZpc2lvbi53cml0ZXItZ2xvYmFsJywNCgkJJ3NnbScJCQk9PiAndGV4dC9zZ21sJywNCgkJJ3NnbWwnCQkJPT4gJ3RleHQvc2dtbCcsDQoJCSdzaCcJCQk9PiAnYXBwbGljYXRpb24veC1zaCcsDQoJCSdzaGFyJwkJCT0+ICdhcHBsaWNhdGlvbi94LXNoYXInLA0KCQknc2hmJwkJCT0+ICdhcHBsaWNhdGlvbi9zaGYreG1sJywNCgkJJ3NpZCcJCQk9PiAnaW1hZ2UveC1tcnNpZC1pbWFnZScsDQoJCSdzaWcnCQkJPT4gJ2FwcGxpY2F0aW9uL3BncC1zaWduYXR1cmUnLA0KCQknc2lsJwkJCT0+ICdhdWRpby9zaWxrJywNCgkJJ3NpbG8nCQkJPT4gJ21vZGVsL21lc2gnLA0KCQknc2lzJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuc3ltYmlhbi5pbnN0YWxsJywNCgkJJ3Npc3gnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5zeW1iaWFuLmluc3RhbGwnLA0KCQknc2l0JwkJCT0+ICdhcHBsaWNhdGlvbi94LXN0dWZmaXQnLA0KCQknc2l0eCcJCQk9PiAnYXBwbGljYXRpb24veC1zdHVmZml0eCcsDQoJCSdza2QnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5rb2FuJywNCgkJJ3NrbScJCQk9PiAnYXBwbGljYXRpb24vdm5kLmtvYW4nLA0KCQknc2twJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQua29hbicsDQoJCSdza3QnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5rb2FuJywNCgkJJ3NsZG0nCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5tcy1wb3dlcnBvaW50LnNsaWRlLm1hY3JvZW5hYmxlZC4xMicsDQoJCSdzbGR4JwkJCT0+ICdhcHBsaWNhdGlvbi92bmQub3BlbnhtbGZvcm1hdHMtb2ZmaWNlZG9jdW1lbnQucHJlc2VudGF0aW9ubWwuc2xpZGUnLA0KCQknc2x0JwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuZXBzb24uc2FsdCcsDQoJCSdzbScJCQk9PiAnYXBwbGljYXRpb24vdm5kLnN0ZXBtYW5pYS5zdGVwY2hhcnQnLA0KCQknc21mJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuc3RhcmRpdmlzaW9uLm1hdGgnLA0KCQknc21pJwkJCT0+ICdhcHBsaWNhdGlvbi9zbWlsK3htbCcsDQoJCSdzbWlsJwkJCT0+ICdhcHBsaWNhdGlvbi9zbWlsK3htbCcsDQoJCSdzbXYnCQkJPT4gJ3ZpZGVvL3gtc212JywNCgkJJ3NtemlwJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuc3RlcG1hbmlhLnBhY2thZ2UnLA0KCQknc25kJwkJCT0+ICdhdWRpby9iYXNpYycsDQoJCSdzbmYnCQkJPT4gJ2FwcGxpY2F0aW9uL3gtZm9udC1zbmYnLA0KCQknc28nCQkJPT4gJ2FwcGxpY2F0aW9uL29jdGV0LXN0cmVhbScsDQoJCSdzcGMnCQkJPT4gJ2FwcGxpY2F0aW9uL3gtcGtjczctY2VydGlmaWNhdGVzJywNCgkJJ3NwZicJCQk9PiAnYXBwbGljYXRpb24vdm5kLnlhbWFoYS5zbWFmLXBocmFzZScsDQoJCSdzcGwnCQkJPT4gJ2FwcGxpY2F0aW9uL3gtZnV0dXJlc3BsYXNoJywNCgkJJ3Nwb3QnCQkJPT4gJ3RleHQvdm5kLmluM2Quc3BvdCcsDQoJCSdzcHAnCQkJPT4gJ2FwcGxpY2F0aW9uL3NjdnAtdnAtcmVzcG9uc2UnLA0KCQknc3BxJwkJCT0+ICdhcHBsaWNhdGlvbi9zY3ZwLXZwLXJlcXVlc3QnLA0KCQknc3B4JwkJCT0+ICdhdWRpby9vZ2cnLA0KCQknc3FsJwkJCT0+ICdhcHBsaWNhdGlvbi94LXNxbCcsDQoJCSdzcmMnCQkJPT4gJ2FwcGxpY2F0aW9uL3gtd2Fpcy1zb3VyY2UnLA0KCQknc3J0JwkJCT0+ICdhcHBsaWNhdGlvbi94LXN1YnJpcCcsDQoJCSdzcnUnCQkJPT4gJ2FwcGxpY2F0aW9uL3NydSt4bWwnLA0KCQknc3J4JwkJCT0+ICdhcHBsaWNhdGlvbi9zcGFycWwtcmVzdWx0cyt4bWwnLA0KCQknc3NkbCcJCQk9PiAnYXBwbGljYXRpb24vc3NkbCt4bWwnLA0KCQknc3NlJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQua29kYWstZGVzY3JpcHRvcicsDQoJCSdzc2YnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5lcHNvbi5zc2YnLA0KCQknc3NtbCcJCQk9PiAnYXBwbGljYXRpb24vc3NtbCt4bWwnLA0KCQknc3QnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5zYWlsaW5ndHJhY2tlci50cmFjaycsDQoJCSdzdGMnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5zdW4ueG1sLmNhbGMudGVtcGxhdGUnLA0KCQknc3RkJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuc3VuLnhtbC5kcmF3LnRlbXBsYXRlJywNCgkJJ3N0ZicJCQk9PiAnYXBwbGljYXRpb24vdm5kLnd0LnN0ZicsDQoJCSdzdGknCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5zdW4ueG1sLmltcHJlc3MudGVtcGxhdGUnLA0KCQknc3RrJwkJCT0+ICdhcHBsaWNhdGlvbi9oeXBlcnN0dWRpbycsDQoJCSdzdGwnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5tcy1wa2kuc3RsJywNCgkJJ3N0cicJCQk9PiAnYXBwbGljYXRpb24vdm5kLnBnLmZvcm1hdCcsDQoJCSdzdHcnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5zdW4ueG1sLndyaXRlci50ZW1wbGF0ZScsDQoJCSdzdWInCQkJPT4gJ3RleHQvdm5kLmR2Yi5zdWJ0aXRsZScsDQoJCSdzdXMnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5zdXMtY2FsZW5kYXInLA0KCQknc3VzcCcJCQk9PiAnYXBwbGljYXRpb24vdm5kLnN1cy1jYWxlbmRhcicsDQoJCSdzdjRjcGlvJwkJPT4gJ2FwcGxpY2F0aW9uL3gtc3Y0Y3BpbycsDQoJCSdzdjRjcmMnCQk9PiAnYXBwbGljYXRpb24veC1zdjRjcmMnLA0KCQknc3ZjJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuZHZiLnNlcnZpY2UnLA0KCQknc3ZkJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuc3ZkJywNCgkJJ3N2ZycJCQk9PiAnaW1hZ2Uvc3ZnK3htbCcsDQoJCSdzdmd6JwkJCT0+ICdpbWFnZS9zdmcreG1sJywNCgkJJ3N3YScJCQk9PiAnYXBwbGljYXRpb24veC1kaXJlY3RvcicsDQoJCSdzd2YnCQkJPT4gJ2FwcGxpY2F0aW9uL3gtc2hvY2t3YXZlLWZsYXNoJywNCgkJJ3N3aScJCQk9PiAnYXBwbGljYXRpb24vdm5kLmFyaXN0YW5ldHdvcmtzLnN3aScsDQoJCSdzeGMnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5zdW4ueG1sLmNhbGMnLA0KCQknc3hkJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuc3VuLnhtbC5kcmF3JywNCgkJJ3N4ZycJCQk9PiAnYXBwbGljYXRpb24vdm5kLnN1bi54bWwud3JpdGVyLmdsb2JhbCcsDQoJCSdzeGknCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5zdW4ueG1sLmltcHJlc3MnLA0KCQknc3htJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuc3VuLnhtbC5tYXRoJywNCgkJJ3N4dycJCQk9PiAnYXBwbGljYXRpb24vdm5kLnN1bi54bWwud3JpdGVyJywNCgkJJ3QnCQkJCT0+ICd0ZXh0L3Ryb2ZmJywNCgkJJ3QzJwkJCT0+ICdhcHBsaWNhdGlvbi94LXQzdm0taW1hZ2UnLA0KCQkndGFnbGV0JwkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5teW5mYycsDQoJCSd0YW8nCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC50YW8uaW50ZW50LW1vZHVsZS1hcmNoaXZlJywNCgkJJ3RhcicJCQk9PiAnYXBwbGljYXRpb24veC10YXInLA0KCQkndGNhcCcJCQk9PiAnYXBwbGljYXRpb24vdm5kLjNncHAyLnRjYXAnLA0KCQkndGNsJwkJCT0+ICdhcHBsaWNhdGlvbi94LXRjbCcsDQoJCSd0ZWFjaGVyJwkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5zbWFydC50ZWFjaGVyJywNCgkJJ3RlaScJCQk9PiAnYXBwbGljYXRpb24vdGVpK3htbCcsDQoJCSd0ZWljb3JwdXMnCQk9PiAnYXBwbGljYXRpb24vdGVpK3htbCcsDQoJCSd0ZXgnCQkJPT4gJ2FwcGxpY2F0aW9uL3gtdGV4JywNCgkJJ3RleGknCQkJPT4gJ2FwcGxpY2F0aW9uL3gtdGV4aW5mbycsDQoJCSd0ZXhpbmZvJwkJPT4gJ2FwcGxpY2F0aW9uL3gtdGV4aW5mbycsDQoJCSd0ZXh0JwkJCT0+ICd0ZXh0L3BsYWluJywNCgkJJ3RmaScJCQk9PiAnYXBwbGljYXRpb24vdGhyYXVkK3htbCcsDQoJCSd0Zm0nCQkJPT4gJ2FwcGxpY2F0aW9uL3gtdGV4LXRmbScsDQoJCSd0Z2EnCQkJPT4gJ2ltYWdlL3gtdGdhJywNCgkJJ3RobXgnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5tcy1vZmZpY2V0aGVtZScsDQoJCSd0aWYnCQkJPT4gJ2ltYWdlL3RpZmYnLA0KCQkndGlmZicJCQk9PiAnaW1hZ2UvdGlmZicsDQoJCSd0bW8nCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC50bW9iaWxlLWxpdmV0dicsDQoJCSd0b3JyZW50JwkJPT4gJ2FwcGxpY2F0aW9uL3gtYml0dG9ycmVudCcsDQoJCSd0cGwnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5ncm9vdmUtdG9vbC10ZW1wbGF0ZScsDQoJCSd0cHQnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC50cmlkLnRwdCcsDQoJCSd0cicJCQk9PiAndGV4dC90cm9mZicsDQoJCSd0cmEnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC50cnVlYXBwJywNCgkJJ3RybScJCQk9PiAnYXBwbGljYXRpb24veC1tc3Rlcm1pbmFsJywNCgkJJ3RzJwkJCT0+ICd2aWRlby9tcDJ0JywNCgkJJ3RzZCcJCQk9PiAnYXBwbGljYXRpb24vdGltZXN0YW1wZWQtZGF0YScsDQoJCSd0c3YnCQkJPT4gJ3RleHQvdGFiLXNlcGFyYXRlZC12YWx1ZXMnLA0KCQkndHRjJwkJCT0+ICdmb250L2NvbGxlY3Rpb24nLA0KCQkndHRmJwkJCT0+ICdmb250L3R0ZicsDQoJCSd0dGwnCQkJPT4gJ3RleHQvdHVydGxlJywNCgkJJ3R3ZCcJCQk9PiAnYXBwbGljYXRpb24vdm5kLnNpbXRlY2gtbWluZG1hcHBlcicsDQoJCSd0d2RzJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuc2ltdGVjaC1taW5kbWFwcGVyJywNCgkJJ3R4ZCcJCQk9PiAnYXBwbGljYXRpb24vdm5kLmdlbm9tYXRpeC50dXhlZG8nLA0KCQkndHhmJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQubW9iaXVzLnR4ZicsDQoJCSd0eHQnCQkJPT4gJ3RleHQvcGxhaW4nLA0KCQkndTMyJwkJCT0+ICdhcHBsaWNhdGlvbi94LWF1dGhvcndhcmUtYmluJywNCgkJJ3VkZWInCQkJPT4gJ2FwcGxpY2F0aW9uL3gtZGViaWFuLXBhY2thZ2UnLA0KCQkndWZkJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQudWZkbCcsDQoJCSd1ZmRsJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQudWZkbCcsDQoJCSd1bHgnCQkJPT4gJ2FwcGxpY2F0aW9uL3gtZ2x1bHgnLA0KCQkndW1qJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQudW1hamluJywNCgkJJ3VuaXR5d2ViJwkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC51bml0eScsDQoJCSd1b21sJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQudW9tbCt4bWwnLA0KCQkndXJpJwkJCT0+ICd0ZXh0L3VyaS1saXN0JywNCgkJJ3VyaXMnCQkJPT4gJ3RleHQvdXJpLWxpc3QnLA0KCQkndXJscycJCQk9PiAndGV4dC91cmktbGlzdCcsDQoJCSd1c3RhcicJCQk9PiAnYXBwbGljYXRpb24veC11c3RhcicsDQoJCSd1dHonCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC51aXEudGhlbWUnLA0KCQkndXUnCQkJPT4gJ3RleHQveC11dWVuY29kZScsDQoJCSd1dmEnCQkJPT4gJ2F1ZGlvL3ZuZC5kZWNlLmF1ZGlvJywNCgkJJ3V2ZCcJCQk9PiAnYXBwbGljYXRpb24vdm5kLmRlY2UuZGF0YScsDQoJCSd1dmYnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5kZWNlLmRhdGEnLA0KCQkndXZnJwkJCT0+ICdpbWFnZS92bmQuZGVjZS5ncmFwaGljJywNCgkJJ3V2aCcJCQk9PiAndmlkZW8vdm5kLmRlY2UuaGQnLA0KCQkndXZpJwkJCT0+ICdpbWFnZS92bmQuZGVjZS5ncmFwaGljJywNCgkJJ3V2bScJCQk9PiAndmlkZW8vdm5kLmRlY2UubW9iaWxlJywNCgkJJ3V2cCcJCQk9PiAndmlkZW8vdm5kLmRlY2UucGQnLA0KCQkndXZzJwkJCT0+ICd2aWRlby92bmQuZGVjZS5zZCcsDQoJCSd1dnQnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5kZWNlLnR0bWwreG1sJywNCgkJJ3V2dScJCQk9PiAndmlkZW8vdm5kLnV2dnUubXA0JywNCgkJJ3V2dicJCQk9PiAndmlkZW8vdm5kLmRlY2UudmlkZW8nLA0KCQkndXZ2YScJCQk9PiAnYXVkaW8vdm5kLmRlY2UuYXVkaW8nLA0KCQkndXZ2ZCcJCQk9PiAnYXBwbGljYXRpb24vdm5kLmRlY2UuZGF0YScsDQoJCSd1dnZmJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuZGVjZS5kYXRhJywNCgkJJ3V2dmcnCQkJPT4gJ2ltYWdlL3ZuZC5kZWNlLmdyYXBoaWMnLA0KCQkndXZ2aCcJCQk9PiAndmlkZW8vdm5kLmRlY2UuaGQnLA0KCQkndXZ2aScJCQk9PiAnaW1hZ2Uvdm5kLmRlY2UuZ3JhcGhpYycsDQoJCSd1dnZtJwkJCT0+ICd2aWRlby92bmQuZGVjZS5tb2JpbGUnLA0KCQkndXZ2cCcJCQk9PiAndmlkZW8vdm5kLmRlY2UucGQnLA0KCQkndXZ2cycJCQk9PiAndmlkZW8vdm5kLmRlY2Uuc2QnLA0KCQkndXZ2dCcJCQk9PiAnYXBwbGljYXRpb24vdm5kLmRlY2UudHRtbCt4bWwnLA0KCQkndXZ2dScJCQk9PiAndmlkZW8vdm5kLnV2dnUubXA0JywNCgkJJ3V2dnYnCQkJPT4gJ3ZpZGVvL3ZuZC5kZWNlLnZpZGVvJywNCgkJJ3V2dngnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5kZWNlLnVuc3BlY2lmaWVkJywNCgkJJ3V2dnonCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5kZWNlLnppcCcsDQoJCSd1dngnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5kZWNlLnVuc3BlY2lmaWVkJywNCgkJJ3V2eicJCQk9PiAnYXBwbGljYXRpb24vdm5kLmRlY2UuemlwJywNCgkJJ3ZjYXJkJwkJCT0+ICd0ZXh0L3ZjYXJkJywNCgkJJ3ZjZCcJCQk9PiAnYXBwbGljYXRpb24veC1jZGxpbmsnLA0KCQkndmNmJwkJCT0+ICd0ZXh0L3gtdmNhcmQnLA0KCQkndmNnJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuZ3Jvb3ZlLXZjYXJkJywNCgkJJ3ZjcycJCQk9PiAndGV4dC94LXZjYWxlbmRhcicsDQoJCSd2Y3gnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC52Y3gnLA0KCQkndmlzJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQudmlzaW9uYXJ5JywNCgkJJ3ZpdicJCQk9PiAndmlkZW8vdm5kLnZpdm8nLA0KCQkndm9iJwkJCT0+ICd2aWRlby94LW1zLXZvYicsDQoJCSd2b3InCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5zdGFyZGl2aXNpb24ud3JpdGVyJywNCgkJJ3ZveCcJCQk9PiAnYXBwbGljYXRpb24veC1hdXRob3J3YXJlLWJpbicsDQoJCSd2cm1sJwkJCT0+ICdtb2RlbC92cm1sJywNCgkJJ3ZzZCcJCQk9PiAnYXBwbGljYXRpb24vdm5kLnZpc2lvJywNCgkJJ3ZzZicJCQk9PiAnYXBwbGljYXRpb24vdm5kLnZzZicsDQoJCSd2c3MnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC52aXNpbycsDQoJCSd2c3QnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC52aXNpbycsDQoJCSd2c3cnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC52aXNpbycsDQoJCSd2dHUnCQkJPT4gJ21vZGVsL3ZuZC52dHUnLA0KCQkndnhtbCcJCQk9PiAnYXBwbGljYXRpb24vdm9pY2V4bWwreG1sJywNCgkJJ3czZCcJCQk9PiAnYXBwbGljYXRpb24veC1kaXJlY3RvcicsDQoJCSd3YWQnCQkJPT4gJ2FwcGxpY2F0aW9uL3gtZG9vbScsDQoJCSd3YXNtJwkJCT0+ICdhcHBsaWNhdGlvbi93YXNtJywNCgkJJ3dhdicJCQk9PiAnYXVkaW8veC13YXYnLA0KCQknd2F4JwkJCT0+ICdhdWRpby94LW1zLXdheCcsDQoJCSd3Ym1wJwkJCT0+ICdpbWFnZS92bmQud2FwLndibXAnLA0KCQknd2JzJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuY3JpdGljYWx0b29scy53YnMreG1sJywNCgkJJ3dieG1sJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQud2FwLndieG1sJywNCgkJJ3djbScJCQk9PiAnYXBwbGljYXRpb24vdm5kLm1zLXdvcmtzJywNCgkJJ3dkYicJCQk9PiAnYXBwbGljYXRpb24vdm5kLm1zLXdvcmtzJywNCgkJJ3dkcCcJCQk9PiAnaW1hZ2Uvdm5kLm1zLXBob3RvJywNCgkJJ3dlYmEnCQkJPT4gJ2F1ZGlvL3dlYm0nLA0KCQknd2VibScJCQk9PiAndmlkZW8vd2VibScsDQoJCSd3ZWJwJwkJCT0+ICdpbWFnZS93ZWJwJywNCgkJJ3dnJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQucG1pLndpZGdldCcsDQoJCSd3Z3QnCQkJPT4gJ2FwcGxpY2F0aW9uL3dpZGdldCcsDQoJCSd3a3MnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5tcy13b3JrcycsDQoJCSd3bScJCQk9PiAndmlkZW8veC1tcy13bScsDQoJCSd3bWEnCQkJPT4gJ2F1ZGlvL3gtbXMtd21hJywNCgkJJ3dtZCcJCQk9PiAnYXBwbGljYXRpb24veC1tcy13bWQnLA0KCQknd21mJwkJCT0+ICdhcHBsaWNhdGlvbi94LW1zbWV0YWZpbGUnLA0KCQknd21sJwkJCT0+ICd0ZXh0L3ZuZC53YXAud21sJywNCgkJJ3dtbGMnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC53YXAud21sYycsDQoJCSd3bWxzJwkJCT0+ICd0ZXh0L3ZuZC53YXAud21sc2NyaXB0JywNCgkJJ3dtbHNjJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQud2FwLndtbHNjcmlwdGMnLA0KCQknd212JwkJCT0+ICd2aWRlby94LW1zLXdtdicsDQoJCSd3bXgnCQkJPT4gJ3ZpZGVvL3gtbXMtd214JywNCgkJJ3dteicJCQk9PiAnYXBwbGljYXRpb24veC1tc21ldGFmaWxlJywNCgkJJ3dvZmYnCQkJPT4gJ2ZvbnQvd29mZicsDQoJCSd3b2ZmMicJCQk9PiAnZm9udC93b2ZmMicsDQoJCSd3cGQnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC53b3JkcGVyZmVjdCcsDQoJCSd3cGwnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5tcy13cGwnLA0KCQknd3BzJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQubXMtd29ya3MnLA0KCQknd3FkJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQud3FkJywNCgkJJ3dyaScJCQk9PiAnYXBwbGljYXRpb24veC1tc3dyaXRlJywNCgkJJ3dybCcJCQk9PiAnbW9kZWwvdnJtbCcsDQoJCSd3c2RsJwkJCT0+ICdhcHBsaWNhdGlvbi93c2RsK3htbCcsDQoJCSd3c3BvbGljeScJCT0+ICdhcHBsaWNhdGlvbi93c3BvbGljeSt4bWwnLA0KCQknd3RiJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQud2VidHVyYm8nLA0KCQknd3Z4JwkJCT0+ICd2aWRlby94LW1zLXd2eCcsDQoJCSd4MzInCQkJPT4gJ2FwcGxpY2F0aW9uL3gtYXV0aG9yd2FyZS1iaW4nLA0KCQkneDNkJwkJCT0+ICdtb2RlbC94M2QreG1sJywNCgkJJ3gzZGInCQkJPT4gJ21vZGVsL3gzZCtiaW5hcnknLA0KCQkneDNkYnonCQkJPT4gJ21vZGVsL3gzZCtiaW5hcnknLA0KCQkneDNkdicJCQk9PiAnbW9kZWwveDNkK3ZybWwnLA0KCQkneDNkdnonCQkJPT4gJ21vZGVsL3gzZCt2cm1sJywNCgkJJ3gzZHonCQkJPT4gJ21vZGVsL3gzZCt4bWwnLA0KCQkneGFtbCcJCQk9PiAnYXBwbGljYXRpb24veGFtbCt4bWwnLA0KCQkneGFwJwkJCT0+ICdhcHBsaWNhdGlvbi94LXNpbHZlcmxpZ2h0LWFwcCcsDQoJCSd4YXInCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC54YXJhJywNCgkJJ3hiYXAnCQkJPT4gJ2FwcGxpY2F0aW9uL3gtbXMteGJhcCcsDQoJCSd4YmQnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5mdWppeGVyb3guZG9jdXdvcmtzLmJpbmRlcicsDQoJCSd4Ym0nCQkJPT4gJ2ltYWdlL3gteGJpdG1hcCcsDQoJCSd4ZGYnCQkJPT4gJ2FwcGxpY2F0aW9uL3hjYXAtZGlmZit4bWwnLA0KCQkneGRtJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuc3luY21sLmRtK3htbCcsDQoJCSd4ZHAnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5hZG9iZS54ZHAreG1sJywNCgkJJ3hkc3NjJwkJCT0+ICdhcHBsaWNhdGlvbi9kc3NjK3htbCcsDQoJCSd4ZHcnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5mdWppeGVyb3guZG9jdXdvcmtzJywNCgkJJ3hlbmMnCQkJPT4gJ2FwcGxpY2F0aW9uL3hlbmMreG1sJywNCgkJJ3hlcicJCQk9PiAnYXBwbGljYXRpb24vcGF0Y2gtb3BzLWVycm9yK3htbCcsDQoJCSd4ZmRmJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuYWRvYmUueGZkZicsDQoJCSd4ZmRsJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQueGZkbCcsDQoJCSd4aHQnCQkJPT4gJ2FwcGxpY2F0aW9uL3hodG1sK3htbCcsDQoJCSd4aHRtbCcJCQk9PiAnYXBwbGljYXRpb24veGh0bWwreG1sJywNCgkJJ3hodm1sJwkJCT0+ICdhcHBsaWNhdGlvbi94dit4bWwnLA0KCQkneGlmJwkJCT0+ICdpbWFnZS92bmQueGlmZicsDQoJCSd4bGEnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5tcy1leGNlbCcsDQoJCSd4bGFtJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQubXMtZXhjZWwuYWRkaW4ubWFjcm9lbmFibGVkLjEyJywNCgkJJ3hsYycJCQk9PiAnYXBwbGljYXRpb24vdm5kLm1zLWV4Y2VsJywNCgkJJ3hsZicJCQk9PiAnYXBwbGljYXRpb24veC14bGlmZit4bWwnLA0KCQkneGxtJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQubXMtZXhjZWwnLA0KCQkneGxzJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQubXMtZXhjZWwnLA0KCQkneGxzYicJCQk9PiAnYXBwbGljYXRpb24vdm5kLm1zLWV4Y2VsLnNoZWV0LmJpbmFyeS5tYWNyb2VuYWJsZWQuMTInLA0KCQkneGxzbScJCQk9PiAnYXBwbGljYXRpb24vdm5kLm1zLWV4Y2VsLnNoZWV0Lm1hY3JvZW5hYmxlZC4xMicsDQoJCSd4bHN4JwkJCT0+ICdhcHBsaWNhdGlvbi92bmQub3BlbnhtbGZvcm1hdHMtb2ZmaWNlZG9jdW1lbnQuc3ByZWFkc2hlZXRtbC5zaGVldCcsDQoJCSd4bHQnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5tcy1leGNlbCcsDQoJCSd4bHRtJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQubXMtZXhjZWwudGVtcGxhdGUubWFjcm9lbmFibGVkLjEyJywNCgkJJ3hsdHgnCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5vcGVueG1sZm9ybWF0cy1vZmZpY2Vkb2N1bWVudC5zcHJlYWRzaGVldG1sLnRlbXBsYXRlJywNCgkJJ3hsdycJCQk9PiAnYXBwbGljYXRpb24vdm5kLm1zLWV4Y2VsJywNCgkJJ3htJwkJCT0+ICdhdWRpby94bScsDQoJCSd4bWwnCQkJPT4gJ2FwcGxpY2F0aW9uL3htbCcsDQoJCSd4bycJCQk9PiAnYXBwbGljYXRpb24vdm5kLm9scGMtc3VnYXInLA0KCQkneG9wJwkJCT0+ICdhcHBsaWNhdGlvbi94b3AreG1sJywNCgkJJ3hwaScJCQk9PiAnYXBwbGljYXRpb24veC14cGluc3RhbGwnLA0KCQkneHBsJwkJCT0+ICdhcHBsaWNhdGlvbi94cHJvYyt4bWwnLA0KCQkneHBtJwkJCT0+ICdpbWFnZS94LXhwaXhtYXAnLA0KCQkneHByJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuaXMteHByJywNCgkJJ3hwcycJCQk9PiAnYXBwbGljYXRpb24vdm5kLm1zLXhwc2RvY3VtZW50JywNCgkJJ3hwdycJCQk9PiAnYXBwbGljYXRpb24vdm5kLmludGVyY29uLmZvcm1uZXQnLA0KCQkneHB4JwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuaW50ZXJjb24uZm9ybW5ldCcsDQoJCSd4c2wnCQkJPT4gJ2FwcGxpY2F0aW9uL3htbCcsDQoJCSd4c2x0JwkJCT0+ICdhcHBsaWNhdGlvbi94c2x0K3htbCcsDQoJCSd4c20nCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC5zeW5jbWwreG1sJywNCgkJJ3hzcGYnCQkJPT4gJ2FwcGxpY2F0aW9uL3hzcGYreG1sJywNCgkJJ3h1bCcJCQk9PiAnYXBwbGljYXRpb24vdm5kLm1vemlsbGEueHVsK3htbCcsDQoJCSd4dm0nCQkJPT4gJ2FwcGxpY2F0aW9uL3h2K3htbCcsDQoJCSd4dm1sJwkJCT0+ICdhcHBsaWNhdGlvbi94dit4bWwnLA0KCQkneHdkJwkJCT0+ICdpbWFnZS94LXh3aW5kb3dkdW1wJywNCgkJJ3h5eicJCQk9PiAnY2hlbWljYWwveC14eXonLA0KCQkneHonCQkJPT4gJ2FwcGxpY2F0aW9uL3gteHonLA0KCQkneWFuZycJCQk9PiAnYXBwbGljYXRpb24veWFuZycsDQoJCSd5aW4nCQkJPT4gJ2FwcGxpY2F0aW9uL3lpbit4bWwnLA0KCQknejEnCQkJPT4gJ2FwcGxpY2F0aW9uL3gtem1hY2hpbmUnLA0KCQknejInCQkJPT4gJ2FwcGxpY2F0aW9uL3gtem1hY2hpbmUnLA0KCQknejMnCQkJPT4gJ2FwcGxpY2F0aW9uL3gtem1hY2hpbmUnLA0KCQknejQnCQkJPT4gJ2FwcGxpY2F0aW9uL3gtem1hY2hpbmUnLA0KCQknejUnCQkJPT4gJ2FwcGxpY2F0aW9uL3gtem1hY2hpbmUnLA0KCQknejYnCQkJPT4gJ2FwcGxpY2F0aW9uL3gtem1hY2hpbmUnLA0KCQknejcnCQkJPT4gJ2FwcGxpY2F0aW9uL3gtem1hY2hpbmUnLA0KCQknejgnCQkJPT4gJ2FwcGxpY2F0aW9uL3gtem1hY2hpbmUnLA0KCQknemF6JwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuenphenouZGVjayt4bWwnLA0KCQknemlwJwkJCT0+ICdhcHBsaWNhdGlvbi96aXAnLA0KCQknemlyJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuenVsJywNCgkJJ3ppcnonCQkJPT4gJ2FwcGxpY2F0aW9uL3ZuZC56dWwnLA0KCQknem1tJwkJCT0+ICdhcHBsaWNhdGlvbi92bmQuaGFuZGhlbGQtZW50ZXJ0YWlubWVudCt4bWwnDQoJXTsNCg0KCS8qKg0KCSAqIEdldCB0aGUgZmlsZSBleHRlbnNpb25zDQoJICogDQoJICogQHBhcmFtICAgc3RyaW5nICAgICR0YXJnZXQgICBUaGUgdGFyZ2V0ZWQvZmlsdGVyIG9wdGlvbg0KCSAqIEBwYXJhbSAgIGJvb2xlYW4gICAkc29ydGVkICAgVGhlIG11bHRpZGltZW5zaW9uYWwgZ3JvdXBpbmcgc29ydCAob25seSBpZiB0YXJnZXRlZCBmaWx0ZXIgaXMgdXNlZCkNCgkgKg0KCSAqIEByZXR1cm4gIGFycmF5ICAgICBBbGwgdGhlIGV4dGVuc2lvbnMgKHRhcmdldGVkICYgc29ydGVkKQ0KCSAqIEBzaW5jZSAgIDUuMC4zDQoJICovDQoJcHVibGljIHN0YXRpYyBmdW5jdGlvbiBnZXRGaWxlRXh0ZW5zaW9ucygkdGFyZ2V0ID0gbnVsbCwgJHNvcnRlZCA9IGZhbHNlKQ0KCXsNCgkJLy8gd2UgaGF2ZSBzb21lIGluLWhvdXNlIGdyb3VwaW5nL2ZpbHRlcnMgOikNCgkJJGZpbHRlcnMgPSBbDQoJCQknaW1hZ2UnID0+IGFycmF5KCdpbWFnZScsICdmb250JywgJ21vZGVsJyksDQoJCQknZG9jdW1lbnQnID0+IGFycmF5KCdhcHBsaWNhdGlvbicsICd0ZXh0JywgJ2NoZW1pY2FsJywgJ21lc3NhZ2UnKSwNCgkJCSdtZWRpYScgPT4gYXJyYXkoJ3ZpZGVvJywgJ2F1ZGlvJyksDQoJCQknZmlsZScgPT4gYXJyYXkoJ2ltYWdlJywgJ2FwcGxpY2F0aW9uJywgJ3RleHQnLCAndmlkZW8nLCAnYXVkaW8nKSwNCgkJCSdhbGwnID0+IGFycmF5KCdhcHBsaWNhdGlvbicsICd0ZXh0JywgJ2NoZW1pY2FsJywgJ21lc3NhZ2UnLCAnaW1hZ2UnLCAnZm9udCcsICdtb2RlbCcsICd2aWRlbycsICdhdWRpbycsICd4LWNvbmZlcmVuY2UnKQ0KCQldOw0KCQkvLyBzb3VsZCB3ZSBmaWx0ZXINCgkJaWYgKCR0YXJnZXQpDQoJCXsNCgkJCS8vIHRoZSBidWNrZXQgdG8gZ2V0IGV4dGVuc2lvbnMNCgkJCSRmaWxlZXh0ZW5zaW9ucyA9IGFycmF5KCk7DQoJCQkvLyBjaGVjayBpZiBmaWx0ZXIgZXhpc3QgKGlmIG5vdCByZXR1cm4gZW1wdHkgYXJyYXkpDQoJCQlpZiAoaXNzZXQoJGZpbHRlcnNbJHRhcmdldF0pKQ0KCQkJew0KCQkJCWZvcmVhY2ggKHNlbGY6OiRmaWxlRXh0ZW5zaW9uVG9NaW1lVHlwZSBhcyAkZXh0ZW5zaW9uID0+ICRtaW1ldHlwZSkNCgkJCQl7DQoJCQkJCS8vIGdldCB0aGUga2V5IG1pbWUgdHlwZQ0KCQkJCQkkbWltZWFyciA9IGV4cGxvZGUoIi8iLCAkbWltZXR5cGUsIDIpOw0KCQkJCQkvLyBjaGVjayBpZiB0aGlzIGZpbGUgZXh0ZW5zaW9uIHNob3VsZCBiZSBhZGRlZA0KCQkJCQlpZiAoaW5fYXJyYXkoJG1pbWVhcnJbMF0sICRmaWx0ZXJzWyR0YXJnZXRdKSkNCgkJCQkJew0KCQkJCQkJaWYgKCRzb3J0ZWQpDQoJCQkJCQl7DQoJCQkJCQkJaWYgKCFpc3NldCgkZmlsZWV4dGVuc2lvbnNbJG1pbWVhcnJbMF1dKSkNCgkJCQkJCQl7DQoJCQkJCQkJCSRmaWxlZXh0ZW5zaW9uc1skbWltZWFyclswXV0gPSBhcnJheSgpOw0KCQkJCQkJCX0NCgkJCQkJCQkkZmlsZWV4dGVuc2lvbnNbJG1pbWVhcnJbMF1dWyRleHRlbnNpb25dID0gJGV4dGVuc2lvbjsNCgkJCQkJCX0NCgkJCQkJCWVsc2UNCgkJCQkJCXsNCgkJCQkJCQkkZmlsZWV4dGVuc2lvbnNbJGV4dGVuc2lvbl0gPSAkZXh0ZW5zaW9uOw0KCQkJCQkJfQ0KCQkJCQl9DQoJCQkJfQ0KCQkJfQ0KCQkJcmV0dXJuICRmaWxlZXh0ZW5zaW9uczsNCgkJfQ0KCQkvLyB3ZSBqdXN0IHJldHVybiBhbGwgZmlsZSBleHRlbnNpb25zDQoJCXJldHVybiBhcnJheV9rZXlzKHNlbGY6OiRmaWxlRXh0ZW5zaW9uVG9NaW1lVHlwZSk7DQoJfQ0KDQoJLyoqDQoJICogR2V0IHRoZSBmaWxlIGV4dGVuc2lvbiBmcm9tIGEgZnVsbCBwYXRoIE9SIGZpbGUgbmFtZS4NCgkgKiANCgkgKiBAcGFyYW0gICBzdHJpbmcgICAkZmlsZSAgVGhlIGZ1bGwgZmlsZSBwYXRoIG9yIGZpbGUgbmFtZS4NCgkgKg0KCSAqIEByZXR1cm4gIHN0cmluZyAgVGhlIGZpbGUgZXh0ZW5zaW9uIGluIGxvd2VyY2FzZSBvciBhbiBlbXB0eSBzdHJpbmcgaWYgbm9uZSBmb3VuZC4NCgkgKiBAc2luY2UgICA1LjAuMw0KCSAqLw0KCXB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gZXh0ZW5zaW9uKHN0cmluZyAkZmlsZSk6IHN0cmluZw0KCXsNCgkJLy8gRW5zdXJlIHRoZSBpbnB1dCBpcyBhIHZhbGlkIHN0cmluZyBhbmQgY29udGFpbnMgYSBmaWxlIGV4dGVuc2lvbg0KCQlpZiAoc3RycG9zKCRmaWxlLCAnLicpID09PSBmYWxzZSkNCgkJew0KCQkJcmV0dXJuICcnOw0KCQl9DQoNCgkJLy8gRXh0cmFjdCBhbmQgcmV0dXJuIHRoZSBleHRlbnNpb24gZnJvbSB0aGUgcGF0aA0KCQlyZXR1cm4gc3RydG9sb3dlcihwYXRoaW5mbygkZmlsZSwgUEFUSElORk9fRVhURU5TSU9OKSk7DQoJfQ0KDQoJLyoqDQoJICogR2V0IHRoZSBtaW1lIHR5cGUgYmFzZWQgb24gdGhlIGZ1bGwgZmlsZSBwYXRoLg0KCSAqIA0KCSAqIEBwYXJhbSAgIHN0cmluZyAgICRmaWxlIFRoZSBmdWxsIGZpbGUgcGF0aC4NCgkgKg0KCSAqIEByZXR1cm4gIHN0cmluZyAgVGhlIG1pbWUgdHlwZSBvciAnYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtJyBpZiBub25lIGZvdW5kLg0KCSAqIEBzaW5jZSAgIDUuMC4zDQoJICovDQoJcHVibGljIHN0YXRpYyBmdW5jdGlvbiBtaW1lVHlwZShzdHJpbmcgJGZpbGUpOiBzdHJpbmcNCgl7DQoJCS8qKg0KCQkgKiAgICAgICAgICAgICAgICAgICoqRElTQ0xBSU1FUioqDQoJCSAqIFRoaXMgd2lsbCBqdXN0IG1hdGNoIHRoZSBmaWxlIGV4dGVuc2lvbiB0byB0aGUgZm9sbG93aW5nDQoJCSAqIGFycmF5LiBJdCBkb2VzIG5vdCBndWFyYW50ZWUgdGhhdCB0aGUgZmlsZSBpcyBUUlVMWSB0aGF0DQoJCSAqIG9mIHRoZSBleHRlbnNpb24gdGhhdCB0aGlzIGZ1bmN0aW9uIHJldHVybnMuDQoJCSAqIGh0dHBzOi8vZ2lzdC5naXRodWIuY29tL0xsZXdlbGx5bnZkbS83NGJlMzczMzU3ZTEzMWI4Nzc1YTc1ODJjM2RlNTA4Yg0KCQkgKi8NCg0KCQkvLyBFbnN1cmUgdGhlIGZpbGUgZXhpc3RzIHRvIGF2b2lkIHVubmVjZXNzYXJ5IHByb2Nlc3NpbmcNCgkJaWYgKCFpc19maWxlKCRmaWxlKSB8fCAhaXNfcmVhZGFibGUoJGZpbGUpKQ0KCQl7DQoJCQlyZXR1cm4gIHNlbGY6Om1pbWVUeXBlRmlsZW5hbWUoJGZpbGUpOw0KCQl9DQoNCgkJLy8gVXNlIGZpbmZvIHRvIGdldCBNSU1FIHR5cGUgYmFzZWQgb24gZmlsZSBjb250ZW50IGlmIGF2YWlsYWJsZQ0KCQlpZiAoZnVuY3Rpb25fZXhpc3RzKCdmaW5mb19vcGVuJykpDQoJCXsNCgkJCSRmaW5mbyA9IGZpbmZvX29wZW4oRklMRUlORk9fTUlNRV9UWVBFKTsNCgkJCSRtaW1ldHlwZSA9IGZpbmZvX2ZpbGUoJGZpbmZvLCAkZmlsZSk7DQoJCQlmaW5mb19jbG9zZSgkZmluZm8pOw0KDQoJCQlpZiAoJG1pbWV0eXBlKQ0KCQkJew0KCQkJCXJldHVybiAkbWltZXR5cGU7DQoJCQl9DQoJCX0NCg0KCQkvLyBGYWxsYmFjayB0byBtaW1lX2NvbnRlbnRfdHlwZSgpIGlmIGF2YWlsYWJsZQ0KCQlpZiAoZnVuY3Rpb25fZXhpc3RzKCdtaW1lX2NvbnRlbnRfdHlwZScpKQ0KCQl7DQoJCQkkbWltZXR5cGUgPSBtaW1lX2NvbnRlbnRfdHlwZSgkZmlsZSk7DQoJCQlpZiAoJG1pbWV0eXBlKQ0KCQkJew0KCQkJCXJldHVybiAkbWltZXR5cGU7DQoJCQl9DQoJCX0NCg0KCQkvLyBGYWxsYmFjayB0byBhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0gYXMgYSBnZW5lcmljIGJpbmFyeSBzdHJlYW0gdHlwZQ0KCQlyZXR1cm4gJ2FwcGxpY2F0aW9uL29jdGV0LXN0cmVhbSc7DQoJfQ0KDQoJLyoqDQoJICogR2V0IHRoZSBtaW1lIHR5cGUgYmFzZWQgb24gdGhlIGZpbGUgZXh0ZW5zaW9uIGZyb20gYSBmaWxlIG5hbWUuDQoJICogDQoJICogQHBhcmFtICAgc3RyaW5nICAgJGZpbGUgVGhlIGZpbGUgbmFtZSAod2l0aG91dCBwYXRoKS4NCgkgKg0KCSAqIEByZXR1cm4gIHN0cmluZyBUaGUgbWltZSB0eXBlIG9yICdhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0nIGlmIG5vbmUgZm91bmQuDQoJICogQHNpbmNlICAgNS4wLjMNCgkgKi8NCglwcm90ZWN0ZWQgc3RhdGljIGZ1bmN0aW9uIG1pbWVUeXBlRmlsZW5hbWUoc3RyaW5nICRmaWxlKTogc3RyaW5nDQoJew0KCQkvLyBHZXQgdGhlIGV4dGVuc2lvbg0KCQkkZXh0ZW5zaW9uID0gc2VsZjo6ZXh0ZW5zaW9uKCRmaWxlKTsNCg0KCQkvLyBQcmVkZWZpbmVkIE1JTUUgdHlwZXMgYnkgZXh0ZW5zaW9uIGZvciBxdWljayBsb29rdXANCgkJaWYgKCFlbXB0eSgkZXh0ZW5zaW9uKSAmJiBpc3NldChzZWxmOjokZmlsZUV4dGVuc2lvblRvTWltZVR5cGVbJGV4dGVuc2lvbl0pKQ0KCQl7DQoJCQlyZXR1cm4gc2VsZjo6JGZpbGVFeHRlbnNpb25Ub01pbWVUeXBlWyRleHRlbnNpb25dOw0KCQl9DQoNCgkJLy8gRmFsbGJhY2sgdG8gYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtIGlmIGV4dGVuc2lvbiBpcyB1bmtub3duDQoJCXJldHVybiAnYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtJzsNCgl9', '{}', '{}', '', 1, '2022-05-16 14:27:38', 12, '', 1), +(29, 'c4a188de-ad78-4a6d-9d5b-01866846d701', 'JCB.Service.Spreadsheet', 'Spreadsheet', 'class', 'Spreadsheet Service Provider\r\n\r\n@since 5.0.3', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '{\"0\":\"-1\"}', 'ServiceProviderInterface', '[[[NamespacePrefix]]]\\Joomla\\[[[ComponentNamespace]]].Service.Spreadsheet', 1, '{}', '{}', 'dXNlIEpvb21sYVxESVxDb250YWluZXI7DQp1c2UgSm9vbWxhXERJXFNlcnZpY2VQcm92aWRlckludGVyZmFjZTs=', '{\"use_selection0\":{\"use\":\"fd3f322a-082d-4579-93ad-3352c5adfc71\",\"as\":\"default\"},\"use_selection1\":{\"use\":\"e250638e-4a50-41f9-9172-db3e7f174d26\",\"as\":\"default\"},\"use_selection2\":{\"use\":\"c4169332-3914-400e-b861-972b2d465963\",\"as\":\"default\"},\"use_selection3\":{\"use\":\"dcb0e061-f337-44f7-87f2-f5c5fb9ce917\",\"as\":\"default\"}}', 'CS8qKg0KCSAqIFJlZ2lzdGVycyB0aGUgc2VydmljZSBwcm92aWRlciB3aXRoIGEgREkgY29udGFpbmVyLg0KCSAqDQoJICogQHBhcmFtICAgQ29udGFpbmVyICAkY29udGFpbmVyICBUaGUgREkgY29udGFpbmVyLg0KCSAqDQoJICogQHJldHVybiAgdm9pZA0KCSAqIEBzaW5jZSA1LjAuMw0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiByZWdpc3RlcihDb250YWluZXIgJGNvbnRhaW5lcikNCgl7DQoJCSRjb250YWluZXItPmFsaWFzKEhlYWRlcjo6Y2xhc3MsICdTcHJlYWRzaGVldC5IZWFkZXInKQ0KCQkJLT5zaGFyZSgnU3ByZWFkc2hlZXQuSGVhZGVyJywgWyR0aGlzLCAnZ2V0SGVhZGVyJ10sIHRydWUpOw0KDQoJCSRjb250YWluZXItPmFsaWFzKEV4cG9ydGVyOjpjbGFzcywgJ1NwcmVhZHNoZWV0LkV4cG9ydGVyJykNCgkJCS0+c2hhcmUoJ1NwcmVhZHNoZWV0LkV4cG9ydGVyJywgWyR0aGlzLCAnZ2V0RXhwb3J0ZXInXSwgdHJ1ZSk7DQoNCgkJJGNvbnRhaW5lci0+YWxpYXMoSW1wb3J0ZXI6OmNsYXNzLCAnU3ByZWFkc2hlZXQuSW1wb3J0ZXInKQ0KCQkJLT5zaGFyZSgnU3ByZWFkc2hlZXQuSW1wb3J0ZXInLCBbJHRoaXMsICdnZXRJbXBvcnRlciddLCB0cnVlKTsNCg0KCQkkY29udGFpbmVyLT5hbGlhcyhGaWxlUmVhZGVyOjpjbGFzcywgJ1NwcmVhZHNoZWV0LkZpbGVSZWFkZXInKQ0KCQkJLT5zaGFyZSgnU3ByZWFkc2hlZXQuRmlsZVJlYWRlcicsIFskdGhpcywgJ2dldEZpbGVSZWFkZXInXSwgdHJ1ZSk7DQoJfQ0KDQoJLyoqDQoJICogR2V0IFRoZSBIZWFkZXIgQ2xhc3MuDQoJICoNCgkgKiBAcGFyYW0gICBDb250YWluZXIgICRjb250YWluZXIgIFRoZSBESSBjb250YWluZXIuDQoJICoNCgkgKiBAcmV0dXJuICBIZWFkZXINCgkgKiBAc2luY2UgNS4wLjMNCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZ2V0SGVhZGVyKENvbnRhaW5lciAkY29udGFpbmVyKTogSGVhZGVyDQoJew0KCQlyZXR1cm4gbmV3IEhlYWRlcigpOw0KCX0NCg0KCS8qKg0KCSAqIEdldCBUaGUgRXhwb3J0ZXIgQ2xhc3MuDQoJICoNCgkgKiBAcGFyYW0gICBDb250YWluZXIgICRjb250YWluZXIgIFRoZSBESSBjb250YWluZXIuDQoJICoNCgkgKiBAcmV0dXJuICBFeHBvcnRlcg0KCSAqIEBzaW5jZSA1LjAuMw0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBnZXRFeHBvcnRlcihDb250YWluZXIgJGNvbnRhaW5lcik6IEV4cG9ydGVyDQoJew0KCQlyZXR1cm4gbmV3IEV4cG9ydGVyKCk7DQoJfQ0KDQoJLyoqDQoJICogR2V0IFRoZSBJbXBvcnRlciBDbGFzcy4NCgkgKg0KCSAqIEBwYXJhbSAgIENvbnRhaW5lciAgJGNvbnRhaW5lciAgVGhlIERJIGNvbnRhaW5lci4NCgkgKg0KCSAqIEByZXR1cm4gIEltcG9ydGVyDQoJICogQHNpbmNlIDUuMC4zDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGdldEltcG9ydGVyKENvbnRhaW5lciAkY29udGFpbmVyKTogSW1wb3J0ZXINCgl7DQoJCXJldHVybiBuZXcgSW1wb3J0ZXIoDQoJCQkkY29udGFpbmVyLT5nZXQoJ1NwcmVhZHNoZWV0LkZpbGVSZWFkZXInKQ0KCQkpOw0KCX0NCg0KCS8qKg0KCSAqIEdldCBUaGUgRmlsZVJlYWRlciBDbGFzcy4NCgkgKg0KCSAqIEBwYXJhbSAgIENvbnRhaW5lciAgJGNvbnRhaW5lciAgVGhlIERJIGNvbnRhaW5lci4NCgkgKg0KCSAqIEByZXR1cm4gIEZpbGVSZWFkZXINCgkgKiBAc2luY2UgNS4wLjMNCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZ2V0RmlsZVJlYWRlcihDb250YWluZXIgJGNvbnRhaW5lcik6IEZpbGVSZWFkZXINCgl7DQoJCXJldHVybiBuZXcgRmlsZVJlYWRlcigpOw0KCX0=', '{}', '{}', '', 1, '2022-07-09 10:21:53', 19, '', 1), +(103, '8aef58c1-3f70-4bd4-b9e4-3f29fcd41cff', 'VDM.Interfaces.ModelInterface', 'ModelInterface', 'interface', 'Model Interface\r\n\r\n@since 3.2.0', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\Interfaces.ModelInterface', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIFNldCB0aGUgY3VycmVudCBhY3RpdmUgdGFibGUNCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmcgICR0YWJsZSBUaGUgdGFibGUgdGhhdCBzaG91bGQgYmUgYWN0aXZlDQoJICoNCgkgKiBAcmV0dXJuIHNlbGYNCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gdGFibGUoc3RyaW5nICR0YWJsZSk6IHNlbGY7DQoNCgkvKioNCgkgKiBNb2RlbCB0aGUgdmFsdWUNCgkgKiAgICAgICAgICBFeGFtcGxlOiAkdGhpcy0+dmFsdWUodmFsdWUsICd2YWx1ZV9rZXknLCAndGFibGVfbmFtZScpOw0KCSAqDQoJICogQHBhcmFtICAgbWl4ZWQgICAgICAgICAgJHZhbHVlICAgIFRoZSB2YWx1ZSB0byBtb2RlbA0KCSAqIEBwYXJhbSAgIHN0cmluZyAgICAgICAgICRmaWVsZCAgICBUaGUgZmllbGQga2V5DQoJICogQHBhcmFtICAgc3RyaW5nfG51bGwgICAgJHRhYmxlICAgIFRoZSB0YWJsZQ0KCSAqDQoJICogQHJldHVybiAgbWl4ZWQNCgkgKiBAc2luY2UgMy4yLjANCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gdmFsdWUoJHZhbHVlLCBzdHJpbmcgJGZpZWxkLCA/c3RyaW5nICR0YWJsZSA9IG51bGwpOw0KDQoJLyoqDQoJICogTW9kZWwgYSB2YWx1ZSBvZiBtdWx0aXBsZSBpdGVtcw0KCSAqICAgICAgICAgIEV4YW1wbGU6ICR0aGlzLT5pdGVtcyhBcnJheSwgJ3ZhbHVlX2tleScsICd0YWJsZV9uYW1lJyk7DQoJICoNCgkgKiBAcGFyYW0gICBhcnJheXxudWxsICAgICRpdGVtcyAgICBUaGUgYXJyYXkgb2YgdmFsdWVzDQoJICogQHBhcmFtICAgc3RyaW5nICAgICAgICAkZmllbGQgICAgVGhlIGZpZWxkIGtleQ0KCSAqIEBwYXJhbSAgIHN0cmluZ3xudWxsICAgJHRhYmxlICAgIFRoZSB0YWJsZQ0KCSAqDQoJICogQHJldHVybiAgYXJyYXl8bnVsbA0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiB2YWx1ZXMoP2FycmF5ICRpdGVtcywgc3RyaW5nICRmaWVsZCwgP3N0cmluZyAkdGFibGUgPSBudWxsKTogP2FycmF5Ow0KDQoJLyoqDQoJICogTW9kZWwgdGhlIHZhbHVlcyBvZiBhbiBpdGVtDQoJICogICAgICAgICAgRXhhbXBsZTogJHRoaXMtPml0ZW0oT2JqZWN0LCAndGFibGVfbmFtZScpOw0KCSAqDQoJICogQHBhcmFtICAgb2JqZWN0fG51bGwgICAgJGl0ZW0gICAgICBUaGUgaXRlbSBvYmplY3QNCgkgKiBAcGFyYW0gICBzdHJpbmd8bnVsbCAgICAkdGFibGUgICAgIFRoZSB0YWJsZQ0KCSAqDQoJICogQHJldHVybiAgb2JqZWN0fG51bGwNCgkgKiBAc2luY2UgMy4yLjANCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gaXRlbSg/b2JqZWN0ICRpdGVtLCA/c3RyaW5nICR0YWJsZSA9IG51bGwpOiA/b2JqZWN0Ow0KDQoJLyoqDQoJICogTW9kZWwgdGhlIHZhbHVlcyBvZiBtdWx0aXBsZSBpdGVtcw0KCSAqICAgICAgICAgIEV4YW1wbGU6ICR0aGlzLT5pdGVtcyhBcnJheSwgJ3RhYmxlX25hbWUnKTsNCgkgKg0KCSAqIEBwYXJhbSAgIGFycmF5fG51bGwgICAgJGl0ZW1zICAgIFRoZSBhcnJheSBvZiBpdGVtIG9iamVjdHMNCgkgKiBAcGFyYW0gICBzdHJpbmd8bnVsbCAgICAkdGFibGUgICAgIFRoZSB0YWJsZQ0KCSAqDQoJICogQHJldHVybiAgYXJyYXl8bnVsbA0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBpdGVtcyg/YXJyYXkgJGl0ZW1zID0gbnVsbCwgP3N0cmluZyAkdGFibGUgPSBudWxsKTogP2FycmF5Ow0KDQoJLyoqDQoJICogTW9kZWwgdGhlIHZhbHVlcyBvZiBhbiByb3cNCgkgKiAgICAgICAgICBFeGFtcGxlOiAkdGhpcy0+aXRlbShBcnJheSwgJ3RhYmxlX25hbWUnKTsNCgkgKg0KCSAqIEBwYXJhbSAgIGFycmF5fG51bGwgICAgICRpdGVtICAgICAgVGhlIGl0ZW0gYXJyYXkNCgkgKiBAcGFyYW0gICBzdHJpbmd8bnVsbCAgICAkdGFibGUgICAgIFRoZSB0YWJsZQ0KCSAqDQoJICogQHJldHVybiAgYXJyYXl8bnVsbA0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiByb3coP2FycmF5ICRpdGVtLCA/c3RyaW5nICR0YWJsZSA9IG51bGwpOiA/YXJyYXk7DQoNCgkvKioNCgkgKiBNb2RlbCB0aGUgdmFsdWVzIG9mIG11bHRpcGxlIHJvd3MNCgkgKiAgICAgICAgICBFeGFtcGxlOiAkdGhpcy0+aXRlbXMoQXJyYXksICd0YWJsZV9uYW1lJyk7DQoJICoNCgkgKiBAcGFyYW0gICBhcnJheXxudWxsICAgICAkaXRlbXMgICAgVGhlIGFycmF5IG9mIGl0ZW0gYXJyYXkNCgkgKiBAcGFyYW0gICBzdHJpbmd8bnVsbCAgICAkdGFibGUgICAgVGhlIHRhYmxlDQoJICoNCgkgKiBAcmV0dXJuICBhcnJheXxudWxsDQoJICogQHNpbmNlIDMuMi4wDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIHJvd3MoP2FycmF5ICRpdGVtcyA9IG51bGwsID9zdHJpbmcgJHRhYmxlID0gbnVsbCk6ID9hcnJheTsNCg0KCS8qKg0KCSAqIEdldCBsYXN0IG1vZGVsZWQgSUQNCgkgKiAgICAgICAgICBFeGFtcGxlOiAkdGhpcy0+bGFzdCgndGFibGVfbmFtZScpOw0KCSAqDQoJICogQHBhcmFtICAgc3RyaW5nfG51bGwgICAgICR0YWJsZSAgICAgVGhlIHRhYmxlDQoJICoNCgkgKiBAcmV0dXJuICBpbnR8bnVsbA0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBsYXN0KD9zdHJpbmcgJHRhYmxlID0gbnVsbCk6ID9pbnQ7DQoNCgkvKioNCgkgKiBTZXQgdGhlIGN1cnJlbnQgYWN0aXZlIHRhYmxlDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICAgJHRhYmxlTmFtZSAgVGhlIHRhYmxlIG5hbWUNCgkgKg0KCSAqIEByZXR1cm4gIHZvaWQNCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gc2V0VGFibGUoc3RyaW5nICR0YWJsZU5hbWUpOiB2b2lkOw0KDQoJLyoqDQoJICogU2V0IHRoZSBzd2l0Y2ggdG8gY29udHJvbCB0aGUgYmVoYXZpb3VyIG9mIGVtcHR5IHZhbHVlcw0KCSAqDQoJICogQHBhcmFtIGJvb2wgICAkYWxsb3dFbXB0eSAgVGhlIHN3aXRjaA0KCSAqDQoJICogQHJldHVybiAgdm9pZA0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBzZXRBbGxvd0VtcHR5KGJvb2wgJGFsbG93RW1wdHkpOiB2b2lkOw==', '{}', '{}', '', 1, '2022-09-13 10:05:07', 21, '', 1), +(104, '584747d1-3a86-453d-b7a3-a2219de8d777', 'VDM.Abstraction.Model', 'Model', 'abstract class', 'Base Model\r\n\r\n@since 3.2.0', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '{\"0\":\"8aef58c1-3f70-4bd4-b9e4-3f29fcd41cff\"}', '', '[[[NamespacePrefix]]]\\Joomla\\Abstraction.Model', '', '{}', '{}', '', '{\"use_selection0\":{\"use\":\"1f28cb53-60d9-4db1-b517-3c7dc6b429ef\",\"as\":\"default\"},\"use_selection1\":{\"use\":\"0a59c65c-9daf-4bc9-baf4-e063ff9e6a8a\",\"as\":\"default\"},\"use_selection2\":{\"use\":\"2da6d6c4-eb29-4d69-8bc2-36d96e916adf\",\"as\":\"Table\"}}', 'CS8qKg0KCSAqIExhc3QgSUQNCgkgKg0KCSAqIEB2YXIgICAgYXJyYXkNCgkgKiBAc2luY2UgMy4yLjANCgkgKi8NCglwcm90ZWN0ZWQgYXJyYXkgJGxhc3Q7DQoNCgkvKioNCgkgKiBTZWFyY2ggVGFibGUNCgkgKg0KCSAqIEB2YXIgICAgVGFibGUNCgkgKiBAc2luY2UgMy4yLjANCgkgKi8NCglwcm90ZWN0ZWQgVGFibGUgJHRhYmxlOw0KDQoJLyoqDQoJICogVGFibGUgTmFtZQ0KCSAqDQoJICogQHZhciAgICBzdHJpbmcNCgkgKiBAc2luY2UgMy4yLjANCgkgKi8NCglwcm90ZWN0ZWQgc3RyaW5nICR0YWJsZU5hbWU7DQoNCgkvKioNCgkgKiBUaGUgc3dpdGNoIHRvIGNvbnRyb2wgdGhlIGJlaGF2aW91ciBvZiBlbXB0eSB2YWx1ZXMNCgkgKg0KCSAqIEB2YXIgICAgYm9vbA0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqLw0KCXByb3RlY3RlZCBib29sICRhbGxvd0VtcHR5ID0gdHJ1ZTsNCg0KCS8qKg0KCSAqIENvbnN0cnVjdG9yDQoJICoNCgkgKiBAcGFyYW0gVGFibGUgICAgICAgICAkdGFibGUgICAgICAgIFRoZSBzZWFyY2ggdGFibGUgb2JqZWN0Lg0KCSAqIEBwYXJhbSBzdHJpbmd8bnVsbCAgICR0YWJsZU5hbWUgICAgVGhlIHRhYmxlDQoJICogQHBhcmFtIGJvb2x8bnVsbCAgICAgICAgICAkYWxsb3dFbXB0eSAgIFRoZSBzd2l0Y2ggdG8gY29udHJvbCB0aGUgYmVoYXZpb3VyIG9mIGVtcHR5IHZhbHVlcyAoZGVmYXVsdCB0cnVlKQ0KCSAqDQoJICogQHNpbmNlIDMuMi4wDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KFRhYmxlICR0YWJsZSwgP3N0cmluZyAkdGFibGVOYW1lID0gbnVsbCwgYm9vbCAkYWxsb3dFbXB0eSA9IG51bGwpDQoJew0KCQkkdGhpcy0+dGFibGUgPSAkdGFibGU7DQoJCWlmICgkdGFibGVOYW1lICE9PSBudWxsKQ0KCQl7DQoJCQkkdGhpcy0+c2V0VGFibGUoJHRhYmxlTmFtZSk7DQoJCX0NCgkJaWYgKCRhbGxvd0VtcHR5ICE9PSBudWxsKQ0KCQl7DQoJCQkkdGhpcy0+c2V0QWxsb3dFbXB0eSgkYWxsb3dFbXB0eSk7DQoJCX0NCgl9DQoNCgkvKioNCgkgKiBTZXQgdGhlIGN1cnJlbnQgYWN0aXZlIHRhYmxlDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICR0YWJsZSBUaGUgdGFibGUgdGhhdCBzaG91bGQgYmUgYWN0aXZlDQoJICoNCgkgKiBAcmV0dXJuIHNlbGYNCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gdGFibGUoc3RyaW5nICR0YWJsZSk6IHNlbGYNCgl7DQoJCSR0aGlzLT5zZXRUYWJsZSgkdGFibGUpOw0KDQoJCXJldHVybiAkdGhpczsNCgl9DQoNCgkvKioNCgkgKiBNb2RlbCB0aGUgdmFsdWUNCgkgKiAgICAgICAgICBFeGFtcGxlOiAkdGhpcy0+dmFsdWUodmFsdWUsICd2YWx1ZV9rZXknLCAndGFibGVfbmFtZScpOw0KCSAqDQoJICogQHBhcmFtICAgbWl4ZWQgICAgICAgICAgJHZhbHVlICAgIFRoZSB2YWx1ZSB0byBtb2RlbA0KCSAqIEBwYXJhbSAgIHN0cmluZyAgICAgICAgICRmaWVsZCAgICBUaGUgZmllbGQga2V5DQoJICogQHBhcmFtICAgc3RyaW5nfG51bGwgICAgJHRhYmxlICAgIFRoZSB0YWJsZQ0KCSAqDQoJICogQHJldHVybiAgbWl4ZWQNCgkgKiBAc2luY2UgMy4yLjANCgkgKi8NCglhYnN0cmFjdCBwdWJsaWMgZnVuY3Rpb24gdmFsdWUoJHZhbHVlLCBzdHJpbmcgJGZpZWxkLCA/c3RyaW5nICR0YWJsZSA9IG51bGwpOw0KDQoJLyoqDQoJICogTW9kZWwgYSB2YWx1ZSBvZiBtdWx0aXBsZSBpdGVtcw0KCSAqICAgICAgICAgIEV4YW1wbGU6ICR0aGlzLT52YWx1ZXMoQXJyYXksICd2YWx1ZV9rZXknLCAndGFibGVfbmFtZScpOw0KCSAqDQoJICogQHBhcmFtICAgYXJyYXl8bnVsbCAgICAkaXRlbXMgICAgVGhlIGFycmF5IG9mIHZhbHVlcw0KCSAqIEBwYXJhbSAgIHN0cmluZyAgICAgICAgJGZpZWxkICAgIFRoZSBmaWVsZCBrZXkNCgkgKiBAcGFyYW0gICBzdHJpbmd8bnVsbCAgICR0YWJsZSAgICBUaGUgdGFibGUNCgkgKg0KCSAqIEByZXR1cm4gIGFycmF5fG51bGwNCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gdmFsdWVzKD9hcnJheSAkaXRlbXMsIHN0cmluZyAkZmllbGQsID9zdHJpbmcgJHRhYmxlID0gbnVsbCk6ID9hcnJheQ0KCXsNCgkJLy8gY2hlY2sgaWYgdGhpcyBpcyBhIHZhbGlkIHRhYmxlDQoJCWlmIChBcnJheUhlbHBlcjo6Y2hlY2soJGl0ZW1zKSkNCgkJew0KCQkJLy8gc2V0IHRoZSB0YWJsZSBuYW1lDQoJCQlpZiAoZW1wdHkoJHRhYmxlKSkNCgkJCXsNCgkJCQkkdGFibGUgPSAkdGhpcy0+Z2V0VGFibGUoKTsNCgkJCX0NCg0KCQkJLy8gdmFsaWRhdGUgaWYgZmllbGQgZXhpc3QgaW4gdGFibGUNCgkJCWlmICghJHRoaXMtPnRhYmxlLT5leGlzdCgkdGFibGUsICRmaWVsZCkpDQoJCQl7DQoJCQkJcmV0dXJuIG51bGw7DQoJCQl9DQoNCgkJCS8vIHZhbHVlIGNvdW50ZXINCgkJCSR2YWx1ZV9udW1iZXIgPSAwOw0KDQoJCQkvLyBjaGVjayBpZiB0aGlzIGlzIGEgdmFsaWQgdGFibGUNCgkJCSRpdGVtX2J1Y2tldCA9IFtdOw0KDQoJCQlmb3JlYWNoICgkaXRlbXMgYXMgJHZhbHVlKQ0KCQkJew0KCQkJCWlmICghJHRoaXMtPnZhbGlkYXRlQmVmb3JlKCR2YWx1ZSwgJGZpZWxkLCAkdGFibGUpKQ0KCQkJCXsNCgkJCQkJY29udGludWU7DQoJCQkJfQ0KDQoJCQkJJHZhbHVlID0gJHRoaXMtPnZhbHVlKCR2YWx1ZSwgJGZpZWxkLCAkdGFibGUpOw0KDQoJCQkJaWYgKCEkdGhpcy0+dmFsaWRhdGVBZnRlcigkdmFsdWUsICRmaWVsZCwgJHRhYmxlKSkNCgkJCQl7DQoJCQkJCWNvbnRpbnVlOw0KCQkJCX0NCg0KCQkJCSRpdGVtX2J1Y2tldFtdID0gJHZhbHVlOw0KDQoJCQkJJHZhbHVlX251bWJlcisrOw0KCQkJfQ0KDQoJCQkvLyBkbyB3ZSBoYXZlIGFueSB2YWx1ZXMgbGVmdA0KCQkJaWYgKCR2YWx1ZV9udW1iZXIgPiAwKQ0KCQkJew0KCQkJCXJldHVybiAkaXRlbV9idWNrZXQ7DQoJCQl9DQoJCX0NCg0KCQlyZXR1cm4gbnVsbDsNCgl9DQoNCgkvKioNCgkgKiBNb2RlbCB0aGUgdmFsdWVzIG9mIGFuIGl0ZW0NCgkgKiAgICAgICAgICBFeGFtcGxlOiAkdGhpcy0+aXRlbShPYmplY3QsICd0YWJsZV9uYW1lJyk7DQoJICoNCgkgKiBAcGFyYW0gICBvYmplY3R8bnVsbCAgICAkaXRlbSAgICAgIFRoZSBpdGVtIG9iamVjdA0KCSAqIEBwYXJhbSAgIHN0cmluZ3xudWxsICAgICR0YWJsZSAgICAgVGhlIHRhYmxlDQoJICoNCgkgKiBAcmV0dXJuICBvYmplY3R8bnVsbA0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBpdGVtKD9vYmplY3QgJGl0ZW0sID9zdHJpbmcgJHRhYmxlID0gbnVsbCk6ID9vYmplY3QNCgl7DQoJCS8vIHdlIG11c3QgaGF2ZSBhbiBvYmplY3QNCgkJaWYgKGVtcHR5KCRpdGVtKSkNCgkJew0KCQkJcmV0dXJuIG51bGw7DQoJCX0NCg0KCQkvLyBzZXQgdGhlIHRhYmxlIG5hbWUNCgkJaWYgKGVtcHR5KCR0YWJsZSkpDQoJCXsNCgkJCSR0YWJsZSA9ICR0aGlzLT5nZXRUYWJsZSgpOw0KCQl9DQoNCgkJaWYgKCgkZmllbGRzID0gJHRoaXMtPmdldFRhYmxlRmllbGRzKCR0YWJsZSwgdHJ1ZSkpICE9PSBudWxsKQ0KCQl7DQoJCQkvLyBmaWVsZCBjb3VudGVyDQoJCQkkZmllbGRfbnVtYmVyID0gMDsNCg0KCQkJLy8gY2hlY2sgaWYgdGhpcyBpcyBhIHZhbGlkIHRhYmxlDQoJCQkkaXRlbV9idWNrZXQgPSBuZXcgXHN0ZENsYXNzKCk7DQoNCgkJCWZvcmVhY2ggKCRmaWVsZHMgYXMgJGZpZWxkKQ0KCQkJew0KCQkJCS8vIG1vZGVsIGEgdmFsdWUgaWYgaXQgZXhpc3RzDQoJCQkJaWYoaXNzZXQoJGl0ZW0tPnskZmllbGR9KSkNCgkJCQl7DQoJCQkJCWlmICghJHRoaXMtPnZhbGlkYXRlQmVmb3JlKCRpdGVtLT57JGZpZWxkfSwgJGZpZWxkLCAkdGFibGUpKQ0KCQkJCQl7DQoJCQkJCQljb250aW51ZTsNCgkJCQkJfQ0KDQoJCQkJCSRpdGVtLT57JGZpZWxkfSA9ICR0aGlzLT52YWx1ZSgkaXRlbS0+eyRmaWVsZH0sICRmaWVsZCwgJHRhYmxlKTsNCg0KCQkJCQlpZiAoISR0aGlzLT52YWxpZGF0ZUFmdGVyKCRpdGVtLT57JGZpZWxkfSwgJGZpZWxkLCAkdGFibGUpKQ0KCQkJCQl7DQoJCQkJCQljb250aW51ZTsNCgkJCQkJfQ0KDQoJCQkJCSRpdGVtX2J1Y2tldC0+eyRmaWVsZH0gPSAkaXRlbS0+eyRmaWVsZH07DQoNCgkJCQkJJGZpZWxkX251bWJlcisrOw0KCQkJCX0NCgkJCX0NCg0KCQkJLy8gYWxsIGl0ZW1zIG11c3QgaGF2ZSBtb3JlIHRoYW4gb25lIGZpZWxkIG9yIGl0cyBlbXB0eSAoMSA9IGtleSkNCgkJCWlmICgkZmllbGRfbnVtYmVyID4gMSkNCgkJCXsNCgkJCQlyZXR1cm4gJGl0ZW1fYnVja2V0Ow0KCQkJfQ0KCQl9DQoNCgkJcmV0dXJuIG51bGw7DQoJfQ0KDQoJLyoqDQoJICogTW9kZWwgdGhlIHZhbHVlcyBvZiBtdWx0aXBsZSBpdGVtcw0KCSAqICAgICAgICAgIEV4YW1wbGU6ICR0aGlzLT5pdGVtcyhBcnJheSwgJ3RhYmxlX25hbWUnKTsNCgkgKg0KCSAqIEBwYXJhbSAgIGFycmF5fG51bGwgICAgJGl0ZW1zICAgIFRoZSBhcnJheSBvZiBpdGVtIG9iamVjdHMNCgkgKiBAcGFyYW0gICBzdHJpbmd8bnVsbCAgICAkdGFibGUgICAgIFRoZSB0YWJsZQ0KCSAqDQoJICogQHJldHVybiAgYXJyYXl8bnVsbA0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBpdGVtcyg/YXJyYXkgJGl0ZW1zID0gbnVsbCwgP3N0cmluZyAkdGFibGUgPSBudWxsKTogP2FycmF5DQoJew0KCQkvLyBjaGVjayBpZiB0aGlzIGlzIGEgdmFsaWQgdGFibGUNCgkJaWYgKEFycmF5SGVscGVyOjpjaGVjaygkaXRlbXMpKQ0KCQl7DQoJCQkvLyBzZXQgdGhlIHRhYmxlIG5hbWUNCgkJCWlmIChlbXB0eSgkdGFibGUpKQ0KCQkJew0KCQkJCSR0YWJsZSA9ICR0aGlzLT5nZXRUYWJsZSgpOw0KCQkJfQ0KDQoJCQlmb3JlYWNoICgkaXRlbXMgYXMgJGlkID0+ICYkaXRlbSkNCgkJCXsNCgkJCQkvLyBtb2RlbCB0aGUgaXRlbQ0KCQkJCWlmICgoJGl0ZW0gPSAkdGhpcy0+aXRlbSgkaXRlbSwgJHRhYmxlKSkgIT09IG51bGwpDQoJCQkJew0KCQkJCQkvLyBhZGQgdGhlIGxhc3QgSUQNCgkJCQkJJHRoaXMtPmxhc3RbJHRhYmxlXSA9ICRpdGVtLT5pZCA/PyAkdGhpcy0+bGFzdFskdGFibGVdID8/IG51bGw7DQoJCQkJfQ0KCQkJCWVsc2UNCgkJCQl7DQoJCQkJCXVuc2V0KCRpdGVtc1skaWRdKTsNCgkJCQl9DQoJCQl9DQoNCgkJCWlmIChBcnJheUhlbHBlcjo6Y2hlY2soJGl0ZW1zKSkNCgkJCXsNCgkJCQlyZXR1cm4gJGl0ZW1zOw0KCQkJfQ0KCQl9DQoNCgkJcmV0dXJuIG51bGw7DQoJfQ0KDQoJLyoqDQoJICogTW9kZWwgdGhlIHZhbHVlcyBvZiBhbiByb3cNCgkgKiAgICAgICAgICBFeGFtcGxlOiAkdGhpcy0+aXRlbShBcnJheSwgJ3RhYmxlX25hbWUnKTsNCgkgKg0KCSAqIEBwYXJhbSAgIGFycmF5fG51bGwgICAgICRpdGVtICAgICAgVGhlIGl0ZW0gYXJyYXkNCgkgKiBAcGFyYW0gICBzdHJpbmd8bnVsbCAgICAkdGFibGUgICAgIFRoZSB0YWJsZQ0KCSAqDQoJICogQHJldHVybiAgYXJyYXl8bnVsbA0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiByb3coP2FycmF5ICRpdGVtLCA/c3RyaW5nICR0YWJsZSA9IG51bGwpOiA/YXJyYXkNCgl7DQoJCS8vIHdlIG11c3QgaGF2ZSBhbiBhcnJheQ0KCQlpZiAoZW1wdHkoJGl0ZW0pKQ0KCQl7DQoJCQlyZXR1cm4gbnVsbDsNCgkJfQ0KDQoJCS8vIHNldCB0aGUgdGFibGUgbmFtZQ0KCQlpZiAoZW1wdHkoJHRhYmxlKSkNCgkJew0KCQkJJHRhYmxlID0gJHRoaXMtPmdldFRhYmxlKCk7DQoJCX0NCg0KCQlpZiAoKCRmaWVsZHMgPSAkdGhpcy0+Z2V0VGFibGVGaWVsZHMoJHRhYmxlLCB0cnVlKSkgIT09IG51bGwpDQoJCXsNCgkJCS8vIGZpZWxkIGNvdW50ZXINCgkJCSRmaWVsZF9udW1iZXIgPSAwOw0KDQoJCQkvLyBjaGVjayBpZiB0aGlzIGlzIGEgdmFsaWQgdGFibGUNCgkJCSRpdGVtX2J1Y2tldCA9IFtdOw0KDQoJCQlmb3JlYWNoICgkZmllbGRzIGFzICRmaWVsZCkNCgkJCXsNCgkJCQkvLyBtb2RlbCBhIHZhbHVlIGlmIGl0IGV4aXN0cw0KCQkJCWlmKGlzc2V0KCRpdGVtWyRmaWVsZF0pKQ0KCQkJCXsNCgkJCQkJaWYgKCEkdGhpcy0+dmFsaWRhdGVCZWZvcmUoJGl0ZW1bJGZpZWxkXSwgJGZpZWxkLCAkdGFibGUpKQ0KCQkJCQl7DQoJCQkJCQljb250aW51ZTsNCgkJCQkJfQ0KDQoJCQkJCSRpdGVtWyRmaWVsZF0gPSAkdGhpcy0+dmFsdWUoJGl0ZW1bJGZpZWxkXSwgJGZpZWxkLCAkdGFibGUpOw0KDQoJCQkJCWlmICghJHRoaXMtPnZhbGlkYXRlQWZ0ZXIoJGl0ZW1bJGZpZWxkXSwgJGZpZWxkLCAkdGFibGUpKQ0KCQkJCQl7DQoJCQkJCQljb250aW51ZTsNCgkJCQkJfQ0KDQoJCQkJCSRpdGVtX2J1Y2tldFskZmllbGRdID0gJGl0ZW1bJGZpZWxkXTsNCg0KCQkJCQkkZmllbGRfbnVtYmVyKys7DQoJCQkJfQ0KCQkJfQ0KDQoJCQkvLyBhbGwgaXRlbXMgbXVzdCBoYXZlIG1vcmUgdGhhbiBvbmUgZmllbGQgb3IgaXRzIGVtcHR5ICgxID0gaWQgb3IgZ3VpZCkNCgkJCWlmICgkZmllbGRfbnVtYmVyID4gMSkNCgkJCXsNCgkJCQlyZXR1cm4gJGl0ZW1fYnVja2V0Ow0KCQkJfQ0KCQl9DQoNCgkJcmV0dXJuIG51bGw7DQoJfQ0KDQoJLyoqDQoJICogTW9kZWwgdGhlIHZhbHVlcyBvZiBtdWx0aXBsZSByb3dzDQoJICogICAgICAgICAgRXhhbXBsZTogJHRoaXMtPml0ZW1zKEFycmF5LCAndGFibGVfbmFtZScpOw0KCSAqDQoJICogQHBhcmFtICAgYXJyYXl8bnVsbCAgICAgJGl0ZW1zICAgIFRoZSBhcnJheSBvZiBpdGVtIGFycmF5DQoJICogQHBhcmFtICAgc3RyaW5nfG51bGwgICAgJHRhYmxlICAgIFRoZSB0YWJsZQ0KCSAqDQoJICogQHJldHVybiAgYXJyYXl8bnVsbA0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiByb3dzKD9hcnJheSAkaXRlbXMgPSBudWxsLCA/c3RyaW5nICR0YWJsZSA9IG51bGwpOiA/YXJyYXkNCgl7DQoJCS8vIGNoZWNrIGlmIHRoaXMgaXMgYSB2YWxpZCB0YWJsZQ0KCQlpZiAoQXJyYXlIZWxwZXI6OmNoZWNrKCRpdGVtcykpDQoJCXsNCgkJCS8vIHNldCB0aGUgdGFibGUgbmFtZQ0KCQkJaWYgKGVtcHR5KCR0YWJsZSkpDQoJCQl7DQoJCQkJJHRhYmxlID0gJHRoaXMtPmdldFRhYmxlKCk7DQoJCQl9DQoNCgkJCWZvcmVhY2ggKCRpdGVtcyBhcyAkaWQgPT4gJiRpdGVtKQ0KCQkJew0KCQkJCS8vIG1vZGVsIHRoZSBpdGVtDQoJCQkJaWYgKCgkaXRlbSA9ICR0aGlzLT5yb3coJGl0ZW0sICR0YWJsZSkpICE9PSBudWxsKQ0KCQkJCXsNCgkJCQkJLy8gYWRkIHRoZSBsYXN0IElEDQoJCQkJCSR0aGlzLT5sYXN0WyR0YWJsZV0gPSAkaXRlbVsnaWQnXSA/PyAkdGhpcy0+bGFzdFskdGFibGVdID8/IG51bGw7DQoJCQkJfQ0KCQkJCWVsc2UNCgkJCQl7DQoJCQkJCXVuc2V0KCRpdGVtc1skaWRdKTsNCgkJCQl9DQoJCQl9DQoNCgkJCWlmIChBcnJheUhlbHBlcjo6Y2hlY2soJGl0ZW1zKSkNCgkJCXsNCgkJCQlyZXR1cm4gJGl0ZW1zOw0KCQkJfQ0KCQl9DQoNCgkJcmV0dXJuIG51bGw7DQoJfQ0KDQoJLyoqDQoJICogR2V0IGxhc3QgbW9kZWxlZCBJRA0KCSAqICAgICAgICAgIEV4YW1wbGU6ICR0aGlzLT5sYXN0KCd0YWJsZV9uYW1lJyk7DQoJICoNCgkgKiBAcGFyYW0gICBzdHJpbmd8bnVsbCAgICAgJHRhYmxlICAgICBUaGUgdGFibGUNCgkgKg0KCSAqIEByZXR1cm4gIGludHxudWxsDQoJICogQHNpbmNlIDMuMi4wDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGxhc3QoP3N0cmluZyAkdGFibGUgPSBudWxsKTogP2ludA0KCXsNCgkJLy8gc2V0IHRoZSB0YWJsZSBuYW1lDQoJCWlmIChlbXB0eSgkdGFibGUpKQ0KCQl7DQoJCQkkdGFibGUgPSAkdGhpcy0+Z2V0VGFibGUoKTsNCgkJfQ0KDQoJCS8vIGNoZWNrIGlmIHRoaXMgaXMgYSB2YWxpZCB0YWJsZQ0KCQlpZiAoJHRhYmxlICYmIGlzc2V0KCR0aGlzLT5sYXN0WyR0YWJsZV0pKQ0KCQl7DQoJCQlyZXR1cm4gJHRoaXMtPmxhc3RbJHRhYmxlXTsNCgkJfQ0KDQoJCXJldHVybiBudWxsOw0KCX0NCg0KCS8qKg0KCSAqIFNldCB0aGUgY3VycmVudCBhY3RpdmUgdGFibGUNCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmcgICAkdGFibGVOYW1lICBUaGUgdGFibGUgbmFtZQ0KCSAqDQoJICogQHJldHVybiAgdm9pZA0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBzZXRUYWJsZShzdHJpbmcgJHRhYmxlTmFtZSk6IHZvaWQNCgl7DQoJCSR0aGlzLT50YWJsZU5hbWUgPSAkdGFibGVOYW1lOw0KCX0NCg0KCS8qKg0KCSAqIFNldCB0aGUgc3dpdGNoIHRvIGNvbnRyb2wgdGhlIGJlaGF2aW91ciBvZiBlbXB0eSB2YWx1ZXMNCgkgKg0KCSAqIEBwYXJhbSBib29sICAgJGFsbG93RW1wdHkgIFRoZSBzd2l0Y2gNCgkgKg0KCSAqIEByZXR1cm4gIHZvaWQNCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gc2V0QWxsb3dFbXB0eShib29sICRhbGxvd0VtcHR5KTogdm9pZA0KCXsNCgkJJHRoaXMtPmFsbG93RW1wdHkgPSAkYWxsb3dFbXB0eTsNCgl9DQoNCgkvKioNCgkgKiBHZXQgdGhlIGN1cnJlbnQgYWN0aXZlIHRhYmxlDQoJICoNCgkgKiBAcmV0dXJuICBzdHJpbmcNCgkgKiBAc2luY2UgMy4yLjANCgkgKi8NCglwcm90ZWN0ZWQgZnVuY3Rpb24gZ2V0VGFibGUoKTogc3RyaW5nDQoJew0KCQlyZXR1cm4gJHRoaXMtPnRhYmxlTmFtZTsNCgl9DQoNCgkvKioNCgkgKiBHZXQgdGhlIHN3aXRjaCB0byBjb250cm9sIHRoZSBiZWhhdmlvdXIgb2YgZW1wdHkgdmFsdWVzDQoJICoNCgkgKiBAcmV0dXJuICBib29sDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHJvdGVjdGVkIGZ1bmN0aW9uIGdldEFsbG93RW1wdHkoKTogYm9vbA0KCXsNCgkJcmV0dXJuICR0aGlzLT5hbGxvd0VtcHR5Ow0KCX0NCg0KCS8qKg0KCSAqIEdldCB0aGUgY3VycmVudCBhY3RpdmUgdGFibGUncyBmaWVsZHMgKGluY2x1ZGluZyBkZWZhdWx0cykNCgkgKg0KCSAqIEBwYXJhbSAgIHN0cmluZyAgJHRhYmxlICAgICBUaGUgYXJlYQ0KCSAqIEBwYXJhbSAgIGJvb2wgICAgJGRlZmF1bHQgICBBZGQgdGhlIGRlZmF1bHQgZmllbGRzDQoJICoNCgkgKiBAcmV0dXJuICBhcnJheQ0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXByb3RlY3RlZCBmdW5jdGlvbiBnZXRUYWJsZUZpZWxkcyhzdHJpbmcgJHRhYmxlLCBib29sICRkZWZhdWx0ID0gZmFsc2UpOiA/YXJyYXkNCgl7DQoJCXJldHVybiAkdGhpcy0+dGFibGUtPmZpZWxkcygkdGFibGUsICRkZWZhdWx0KTsNCgl9DQoNCgkvKioNCgkgKiBWYWxpZGF0ZSBiZWZvcmUgdGhlIHZhbHVlIGlzIG1vZGVsbGVkIChiYXNpYywgb3ZlcnJpZGUgaW4gY2hpbGQgY2xhc3MpDQoJICoNCgkgKiBAcGFyYW0gICBtaXhlZCAgICAgICAgICR2YWx1ZSAgIFRoZSBmaWVsZCB2YWx1ZQ0KCSAqIEBwYXJhbSAgIHN0cmluZ3xudWxsICAgJGZpZWxkICAgICBUaGUgZmllbGQga2V5DQoJICogQHBhcmFtICAgc3RyaW5nfG51bGwgICAkdGFibGUgICBUaGUgdGFibGUNCgkgKg0KCSAqIEByZXR1cm4gIGJvb2wNCgkgKiBAc2luY2UgMy4yLjANCgkgKi8NCglhYnN0cmFjdCBwcm90ZWN0ZWQgZnVuY3Rpb24gdmFsaWRhdGVCZWZvcmUoJiR2YWx1ZSwgP3N0cmluZyAkZmllbGQgPSBudWxsLCA/c3RyaW5nICR0YWJsZSA9IG51bGwpOiBib29sOw0KDQoJLyoqDQoJICogVmFsaWRhdGUgYWZ0ZXIgdGhlIHZhbHVlIGlzIG1vZGVsbGVkIChiYXNpYywgb3ZlcnJpZGUgaW4gY2hpbGQgY2xhc3MpDQoJICoNCgkgKiBAcGFyYW0gICBtaXhlZCAgICAgICAgICR2YWx1ZSAgIFRoZSBmaWVsZCB2YWx1ZQ0KCSAqIEBwYXJhbSAgIHN0cmluZ3xudWxsICAgJGZpZWxkICAgICBUaGUgZmllbGQga2V5DQoJICogQHBhcmFtICAgc3RyaW5nfG51bGwgICAkdGFibGUgICBUaGUgdGFibGUNCgkgKg0KCSAqIEByZXR1cm4gIGJvb2wNCgkgKiBAc2luY2UgMy4yLjANCgkgKi8NCglhYnN0cmFjdCBwcm90ZWN0ZWQgZnVuY3Rpb24gdmFsaWRhdGVBZnRlcigmJHZhbHVlLCA/c3RyaW5nICRmaWVsZCA9IG51bGwsID9zdHJpbmcgJHRhYmxlID0gbnVsbCk6IGJvb2w7', '{}', '{}', '{\"source\":{\"1a1b6f3d-f16c-431a-b270-7a8a80cc7f56-settings\":\"d0e288fa06bf1fb2326fc7508dd27bc2070e448e\",\"1a1b6f3d-f16c-431a-b270-7a8a80cc7f56-power\":\"dc2d8b985257c2ce09e4328112e9c8a70eb5e184\",\"1a1b6f3d-f16c-431a-b270-7a8a80cc7f56-readme\":\"3ad9612244d57ddd86f59f97436493e06b5ea6df\"}}', 1, '2022-09-13 10:05:47', 54, '', 1), +(124, '06f8eada-d59b-441c-b287-0aea1793da5a', 'VDM.Database.Load', 'Load', 'final class', 'Database Load\r\n\r\n@since 3.2.0', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '6cbef8f8-4813-48e3-b05a-65e1aea95171', '', '', '', '{\"0\":\"2ad31f74-f579-499d-b98b-c4f54fd615dd\"}', '', '[[[NamespacePrefix]]]\\Joomla\\Database.Load', '', '{}', '{}', '', '{\"use_selection0\":{\"use\":\"0a59c65c-9daf-4bc9-baf4-e063ff9e6a8a\",\"as\":\"default\"}}', 'CS8qKg0KCSAqIExvYWQgZGF0YSByb3dzIGFzIGFuIGFycmF5IG9mIGFzc29jaWF0ZWQgYXJyYXlzDQoJICoNCgkgKiBAcGFyYW0gICBhcnJheSAgICAgICAgJHNlbGVjdCAgIEFycmF5IG9mIHNlbGVjdGlvbiBrZXlzDQoJICogQHBhcmFtICAgYXJyYXkgICAgICAgICR0YWJsZXMgICBBcnJheSBvZiB0YWJsZXMgdG8gc2VhcmNoDQoJICogQHBhcmFtICAgYXJyYXl8bnVsbCAgICR3aGVyZSAgICBBcnJheSBvZiB3aGVyZSBrZXk9PnZhbHVlIG1hdGNoIGV4aXN0DQoJICogQHBhcmFtICAgYXJyYXl8bnVsbCAgICRvcmRlciAgICBBcnJheSBvZiBob3cgdG8gb3JkZXIgdGhlIGRhdGENCgkgKiBAcGFyYW0gICBpbnR8bnVsbCAgICAgJGxpbWl0ICAgIExpbWl0IHRoZSBudW1iZXIgb2YgdmFsdWVzIHJldHVybmVkDQoJICoNCgkgKiBAcmV0dXJuICBhcnJheXxudWxsDQoJICogQHNpbmNlICAgMy4yLjANCgkgKiovDQoJcHVibGljIGZ1bmN0aW9uIHJvd3MoYXJyYXkgJHNlbGVjdCwgYXJyYXkgJHRhYmxlcywgP2FycmF5ICR3aGVyZSA9IG51bGwsDQoJCT9hcnJheSAkb3JkZXIgPSBudWxsLCA/aW50ICRsaW1pdCA9IG51bGwpOiA/YXJyYXkNCgl7DQoJCS8vIHNldCBrZXkgaWYgZm91bmQNCgkJJGtleSA9ICR0aGlzLT5nZXRLZXkoJHNlbGVjdCk7DQoNCgkJLy8gY2hlY2sgaWYgd2UgY2FuIGdldCBtYW55IHJvd3MNCgkJaWYgKCR0aGlzLT5tYW55KCRzZWxlY3QsICR0YWJsZXMsICR3aGVyZSwgJG9yZGVyLCAkbGltaXQpKQ0KCQl7DQoJCQkvLyByZXR1cm4gYXNzb2NpYXRlZCBhcnJheXMgZnJvbSB0aGUgdGFibGUgcmVjb3Jkcw0KCQkJcmV0dXJuICR0aGlzLT5kYi0+bG9hZEFzc29jTGlzdCgka2V5KTsNCgkJfQ0KDQoJCS8vIGRhdGEgZG9lcyBub3QgZXhpc3QNCgkJcmV0dXJuIG51bGw7DQoJfQ0KDQoJLyoqDQoJICogTG9hZCBkYXRhIHJvd3MgYXMgYW4gYXJyYXkgb2Ygb2JqZWN0cw0KCSAqDQoJICogQHBhcmFtICAgYXJyYXkgICAgICAgICRzZWxlY3QgICBBcnJheSBvZiBzZWxlY3Rpb24ga2V5cw0KCSAqIEBwYXJhbSAgIGFycmF5ICAgICAgICAkdGFibGVzICAgQXJyYXkgb2YgdGFibGVzIHRvIHNlYXJjaA0KCSAqIEBwYXJhbSAgIGFycmF5fG51bGwgICAkd2hlcmUgICAgQXJyYXkgb2Ygd2hlcmUga2V5PT52YWx1ZSBtYXRjaCBleGlzdA0KCSAqIEBwYXJhbSAgIGFycmF5fG51bGwgICAkb3JkZXIgICAgQXJyYXkgb2YgaG93IHRvIG9yZGVyIHRoZSBkYXRhDQoJICogQHBhcmFtICAgaW50fG51bGwgICAgICRsaW1pdCAgICBMaW1pdCB0aGUgbnVtYmVyIG9mIHZhbHVlcyByZXR1cm5lZA0KCSAqDQoJICogQHJldHVybiAgYXJyYXl8bnVsbA0KCSAqIEBzaW5jZSAgIDMuMi4wDQoJICoqLw0KCXB1YmxpYyBmdW5jdGlvbiBpdGVtcyhhcnJheSAkc2VsZWN0LCBhcnJheSAkdGFibGVzLCA/YXJyYXkgJHdoZXJlID0gbnVsbCwNCgkJP2FycmF5ICRvcmRlciA9IG51bGwsID9pbnQgJGxpbWl0ID0gbnVsbCk6ID9hcnJheQ0KCXsNCgkJLy8gc2V0IGtleSBpZiBmb3VuZA0KCQkka2V5ID0gJHRoaXMtPmdldEtleSgkc2VsZWN0KTsNCg0KCQkvLyBjaGVjayBpZiB3ZSBjYW4gZ2V0IG1hbnkgcm93cw0KCQlpZiAoJHRoaXMtPm1hbnkoJHNlbGVjdCwgJHRhYmxlcywgJHdoZXJlLCAkb3JkZXIsICRsaW1pdCkpDQoJCXsNCgkJCS8vIHJldHVybiBhc3NvY2lhdGVkIGFycmF5cyBmcm9tIHRoZSB0YWJsZSByZWNvcmRzDQoJCQlyZXR1cm4gJHRoaXMtPmRiLT5sb2FkT2JqZWN0TGlzdCgka2V5KTsNCgkJfQ0KDQoJCS8vIGRhdGEgZG9lcyBub3QgZXhpc3QNCgkJcmV0dXJuIG51bGw7DQoJfQ0KDQoJLyoqDQoJICogTG9hZCBkYXRhIHJvdyBhcyBhbiBhc3NvY2lhdGVkIGFycmF5DQoJICoNCgkgKiBAcGFyYW0gICBhcnJheSAgICAgICAgJHNlbGVjdCAgIEFycmF5IG9mIHNlbGVjdGlvbiBrZXlzDQoJICogQHBhcmFtICAgYXJyYXkgICAgICAgJHRhYmxlcyAgQXJyYXkgb2YgdGFibGVzIHRvIHNlYXJjaA0KCSAqIEBwYXJhbSAgIGFycmF5fG51bGwgICR3aGVyZSAgIEFycmF5IG9mIHdoZXJlIGtleT0+dmFsdWUgbWF0Y2ggZXhpc3QNCgkgKiBAcGFyYW0gICBhcnJheXxudWxsICAkb3JkZXIgICAgQXJyYXkgb2YgaG93IHRvIG9yZGVyIHRoZSBkYXRhDQoJICoNCgkgKiBAcmV0dXJuICBhcnJheXxudWxsDQoJICogQHNpbmNlICAgMy4yLjANCgkgKiovDQoJcHVibGljIGZ1bmN0aW9uIHJvdyhhcnJheSAkc2VsZWN0LCBhcnJheSAkdGFibGVzLCA/YXJyYXkgJHdoZXJlID0gbnVsbCwgP2FycmF5ICRvcmRlciA9IG51bGwpOiA/YXJyYXkNCgl7DQoJCS8vIGNoZWNrIGlmIHdlIGNhbiBnZXQgb25lIHJvdw0KCQlpZiAoJHRoaXMtPm9uZSgkc2VsZWN0LCAkdGFibGVzLCAkd2hlcmUsICRvcmRlcikpDQoJCXsNCgkJCXJldHVybiAkdGhpcy0+ZGItPmxvYWRBc3NvYygpOw0KCQl9DQoNCgkJLy8gZGF0YSBkb2VzIG5vdCBleGlzdA0KCQlyZXR1cm4gbnVsbDsNCgl9DQoNCgkvKioNCgkgKiBMb2FkIGRhdGEgcm93IGFzIGFuIG9iamVjdA0KCSAqDQoJICogQHBhcmFtICAgYXJyYXkgICAgICAgICRzZWxlY3QgICBBcnJheSBvZiBzZWxlY3Rpb24ga2V5cw0KCSAqIEBwYXJhbSAgIGFycmF5ICAgICAgICR0YWJsZXMgIEFycmF5IG9mIHRhYmxlcyB0byBzZWFyY2gNCgkgKiBAcGFyYW0gICBhcnJheXxudWxsICAkd2hlcmUgICBBcnJheSBvZiB3aGVyZSBrZXk9PnZhbHVlIG1hdGNoIGV4aXN0DQoJICogQHBhcmFtICAgYXJyYXl8bnVsbCAgJG9yZGVyICAgIEFycmF5IG9mIGhvdyB0byBvcmRlciB0aGUgZGF0YQ0KCSAqDQoJICogQHJldHVybiAgb2JqZWN0fG51bGwNCgkgKiBAc2luY2UgICAzLjIuMA0KCSAqKi8NCglwdWJsaWMgZnVuY3Rpb24gaXRlbShhcnJheSAkc2VsZWN0LCBhcnJheSAkdGFibGVzLCA/YXJyYXkgJHdoZXJlID0gbnVsbCwgP2FycmF5ICRvcmRlciA9IG51bGwpOiA/b2JqZWN0DQoJew0KCQkvLyBjaGVjayBpZiB3ZSBjYW4gZ2V0IG9uZSByb3cNCgkJaWYgKCR0aGlzLT5vbmUoJHNlbGVjdCwgJHRhYmxlcywgJHdoZXJlLCAkb3JkZXIpKQ0KCQl7DQoJCQlyZXR1cm4gJHRoaXMtPmRiLT5sb2FkT2JqZWN0KCk7DQoJCX0NCg0KCQkvLyBkYXRhIGRvZXMgbm90IGV4aXN0DQoJCXJldHVybiBudWxsOw0KCX0NCg0KCS8qKg0KCSAqIEdldCB0aGUgbWF4IHZhbHVlIGJhc2VkIG9uIGEgZmlsdGVyZWQgcmVzdWx0IGZyb20gYSBnaXZlbiB0YWJsZQ0KCSAqDQoJICogQHBhcmFtICAgc3RyaW5nICAgICAkZmllbGQgICAgIFRoZSBmaWVsZCBrZXkNCgkgKiBAcGFyYW0gICBzdHJpbmcgICAgICR0YWJsZXMgICAgVGhlIHRhYmxlcw0KCSAqIEBwYXJhbSAgIGFycmF5ICAgICAgJGZpbHRlciAgICBUaGUgZmlsdGVyIGtleXMNCgkgKg0KCSAqIEByZXR1cm4gIGludHxudWxsDQoJICogQHNpbmNlICAgMy4yLjANCgkgKiovDQoJcHVibGljIGZ1bmN0aW9uIG1heCgkZmllbGQsIGFycmF5ICR0YWJsZXMsIGFycmF5ICRmaWx0ZXIpOiA/aW50DQoJew0KCQkvLyBvbmx5IGRvIGNoZWNrIGlmIHdlIGhhdmUgdGhlIHRhYmxlIHNldA0KCQlpZiAoaXNzZXQoJHRhYmxlc1snYSddKSkNCgkJew0KCQkJLy8gZ2V0IHRoZSBxdWVyeQ0KCQkJJHF1ZXJ5ID0gJHRoaXMtPnF1ZXJ5KFsiYWxsIiA9PiAiTUFYKGAkZmllbGRgKSJdLCAkdGFibGVzLCAkZmlsdGVyKTsNCg0KCQkJLy8gTG9hZCB0aGUgbWF4IG51bWJlcg0KCQkJJHRoaXMtPmRiLT5zZXRRdWVyeSgkcXVlcnkpOw0KCQkJJHRoaXMtPmRiLT5leGVjdXRlKCk7DQoNCgkJCS8vIGNoZWNrIGlmIHdlIGhhdmUgdmFsdWVzDQoJCQlpZiAoJHRoaXMtPmRiLT5nZXROdW1Sb3dzKCkpDQoJCQl7DQoJCQkJcmV0dXJuIChpbnQpICR0aGlzLT5kYi0+bG9hZFJlc3VsdCgpOw0KCQkJfQ0KCQl9DQoNCgkJLy8gZGF0YSBkb2VzIG5vdCBleGlzdA0KCQlyZXR1cm4gbnVsbDsNCgl9DQoNCgkvKioNCgkgKiBDb3VudCB0aGUgbnVtYmVyIG9mIGl0ZW1zIGJhc2VkIG9uIGZpbHRlciByZXN1bHQgZnJvbSBhIGdpdmVuIHRhYmxlDQoJICoNCgkgKiBAcGFyYW0gICBzdHJpbmcgICAgICR0YWJsZXMgICAgVGhlIHRhYmxlDQoJICogQHBhcmFtICAgYXJyYXkgICAgICAkZmlsdGVyICAgIFRoZSBmaWx0ZXIga2V5cw0KCSAqDQoJICogQHJldHVybiAgaW50fG51bGwNCgkgKiBAc2luY2UgICAzLjIuMA0KCSAqKi8NCglwdWJsaWMgZnVuY3Rpb24gY291bnQoYXJyYXkgJHRhYmxlcywgYXJyYXkgJGZpbHRlcik6ID9pbnQNCgl7DQoJCS8vIG9ubHkgZG8gY2hlY2sgaWYgd2UgaGF2ZSB0aGUgdGFibGUgc2V0DQoJCWlmIChpc3NldCgkdGFibGVzWydhJ10pKQ0KCQl7DQoJCQkvLyBnZXQgdGhlIHF1ZXJ5DQoJCQkkcXVlcnkgPSAkdGhpcy0+cXVlcnkoWyJhbGwiID0+ICdDT1VOVCgqKSddLCAkdGFibGVzLCAkZmlsdGVyKTsNCg0KCQkJLy8gTG9hZCB0aGUgbWF4IG51bWJlcg0KCQkJJHRoaXMtPmRiLT5zZXRRdWVyeSgkcXVlcnkpOw0KCQkJJHRoaXMtPmRiLT5leGVjdXRlKCk7DQoNCgkJCS8vIGNoZWNrIGlmIHdlIGhhdmUgdmFsdWVzDQoJCQlpZiAoJHRoaXMtPmRiLT5nZXROdW1Sb3dzKCkpDQoJCQl7DQoJCQkJcmV0dXJuIChpbnQpICR0aGlzLT5kYi0+bG9hZFJlc3VsdCgpOw0KCQkJfQ0KCQl9DQoNCgkJLy8gZGF0YSBkb2VzIG5vdCBleGlzdA0KCQlyZXR1cm4gbnVsbDsNCgl9DQoNCgkvKioNCgkgKiBMb2FkIG9uZSB2YWx1ZSBmcm9tIGEgcm93DQoJICoNCgkgKiBAcGFyYW0gICBhcnJheSAgICAgICAgJHNlbGVjdCAgIEFycmF5IG9mIHNlbGVjdGlvbiBrZXlzDQoJICogQHBhcmFtICAgYXJyYXkgICAgICAgJHRhYmxlcyAgQXJyYXkgb2YgdGFibGVzIHRvIHNlYXJjaA0KCSAqIEBwYXJhbSAgIGFycmF5fG51bGwgICR3aGVyZSAgIEFycmF5IG9mIHdoZXJlIGtleT0+dmFsdWUgbWF0Y2ggZXhpc3QNCgkgKiBAcGFyYW0gICBhcnJheXxudWxsICAkb3JkZXIgICAgQXJyYXkgb2YgaG93IHRvIG9yZGVyIHRoZSBkYXRhDQoJICoNCgkgKiBAcmV0dXJuICBtaXhlZA0KCSAqIEBzaW5jZSAgIDMuMi4wDQoJICoqLw0KCXB1YmxpYyBmdW5jdGlvbiB2YWx1ZShhcnJheSAkc2VsZWN0LCBhcnJheSAkdGFibGVzLCA/YXJyYXkgJHdoZXJlID0gbnVsbCwgP2FycmF5ICRvcmRlciA9IG51bGwpDQoJew0KCQkvLyBjaGVjayBpZiB3ZSBjYW4gZ2V0IG9uZSB2YWx1ZQ0KCQlpZiAoJHRoaXMtPm9uZSgkc2VsZWN0LCAkdGFibGVzLCAkd2hlcmUsICRvcmRlcikpDQoJCXsNCgkJCXJldHVybiAkdGhpcy0+ZGItPmxvYWRSZXN1bHQoKTsNCgkJfQ0KDQoJCS8vIGRhdGEgZG9lcyBub3QgZXhpc3QNCgkJcmV0dXJuIG51bGw7DQoJfQ0KDQoJLyoqDQoJICogTG9hZCB2YWx1ZXMgZnJvbSBtdWx0aXBsZSByb3dzDQoJICoNCgkgKiBAcGFyYW0gICBhcnJheSAgICAgICAgJHNlbGVjdCAgIEFycmF5IG9mIHNlbGVjdGlvbiBrZXlzDQoJICogQHBhcmFtICAgYXJyYXkgICAgICAgICR0YWJsZXMgICBBcnJheSBvZiB0YWJsZXMgdG8gc2VhcmNoDQoJICogQHBhcmFtICAgYXJyYXl8bnVsbCAgICR3aGVyZSAgICBBcnJheSBvZiB3aGVyZSBrZXk9PnZhbHVlIG1hdGNoIGV4aXN0DQoJICogQHBhcmFtICAgYXJyYXl8bnVsbCAgICRvcmRlciAgICBBcnJheSBvZiBob3cgdG8gb3JkZXIgdGhlIGRhdGENCgkgKiBAcGFyYW0gICBpbnR8bnVsbCAgICAgJGxpbWl0ICAgIExpbWl0IHRoZSBudW1iZXIgb2YgdmFsdWVzIHJldHVybmVkDQoJICoNCgkgKiBAcmV0dXJuICBhcnJheXxudWxsDQoJICogQHNpbmNlICAgMy4yLjINCgkgKiovDQoJcHVibGljIGZ1bmN0aW9uIHZhbHVlcyhhcnJheSAkc2VsZWN0LCBhcnJheSAkdGFibGVzLCA/YXJyYXkgJHdoZXJlID0gbnVsbCwNCgkJP2FycmF5ICRvcmRlciA9IG51bGwsID9pbnQgJGxpbWl0ID0gbnVsbCk6ID9hcnJheQ0KCXsNCgkJLy8gY2hlY2sgaWYgd2UgY2FuIGdldCBtYW55IHJvd3MNCgkJaWYgKCR0aGlzLT5tYW55KCRzZWxlY3QsICR0YWJsZXMsICR3aGVyZSwgJG9yZGVyLCAkbGltaXQpKQ0KCQl7DQoJCQlyZXR1cm4gJHRoaXMtPmRiLT5sb2FkQ29sdW1uKCk7DQoJCX0NCg0KCQkvLyBkYXRhIGRvZXMgbm90IGV4aXN0DQoJCXJldHVybiBudWxsOw0KCX0NCg0KCS8qKg0KCSAqIExvYWQgbWFueQ0KCSAqDQoJICogQHBhcmFtICAgYXJyYXkgICAgICAgICRzZWxlY3QgICBBcnJheSBvZiBzZWxlY3Rpb24ga2V5cw0KCSAqIEBwYXJhbSAgIGFycmF5ICAgICAgICAkdGFibGVzICAgQXJyYXkgb2YgdGFibGVzIHRvIHNlYXJjaA0KCSAqIEBwYXJhbSAgIGFycmF5fG51bGwgICAkd2hlcmUgICAgQXJyYXkgb2Ygd2hlcmUga2V5PT52YWx1ZSBtYXRjaCBleGlzdA0KCSAqIEBwYXJhbSAgIGFycmF5fG51bGwgICAkb3JkZXIgICAgQXJyYXkgb2YgaG93IHRvIG9yZGVyIHRoZSBkYXRhDQoJICogQHBhcmFtICAgaW50fG51bGwgICAgICRsaW1pdCAgICBMaW1pdCB0aGUgbnVtYmVyIG9mIHZhbHVlcyByZXR1cm5lZA0KCSAqDQoJICogQHJldHVybiAgYm9vbA0KCSAqIEBzaW5jZSAgIDMuMi4wDQoJICoqLw0KCXByb3RlY3RlZCBmdW5jdGlvbiBtYW55KGFycmF5ICRzZWxlY3QsIGFycmF5ICR0YWJsZXMsID9hcnJheSAkd2hlcmUgPSBudWxsLA0KCQk/YXJyYXkgJG9yZGVyID0gbnVsbCwgP2ludCAkbGltaXQgPSBudWxsKTogYm9vbA0KCXsNCgkJLy8gb25seSBkbyBjaGVjayBpZiB3ZSBoYXZlIHRoZSB0YWJsZSBzZXQNCgkJaWYgKGlzc2V0KCR0YWJsZXNbJ2EnXSkpDQoJCXsNCgkJCS8vIGdldCB0aGUgcXVlcnkNCgkJCSRxdWVyeSA9ICR0aGlzLT5xdWVyeSgkc2VsZWN0LCAkdGFibGVzLCAkd2hlcmUsICRvcmRlciwgJGxpbWl0KTsNCg0KCQkJLy8gTG9hZCB0aGUgaXRlbXMNCgkJCSR0aGlzLT5kYi0+c2V0UXVlcnkoJHF1ZXJ5KTsNCgkJCSR0aGlzLT5kYi0+ZXhlY3V0ZSgpOw0KDQoJCQkvLyBjaGVjayBpZiB3ZSBoYXZlIHZhbHVlcw0KCQkJaWYgKCR0aGlzLT5kYi0+Z2V0TnVtUm93cygpKQ0KCQkJew0KCQkJCXJldHVybiB0cnVlOw0KCQkJfQ0KCQl9DQoNCgkJLy8gZGF0YSBkb2VzIG5vdCBleGlzdA0KCQlyZXR1cm4gZmFsc2U7DQoJfQ0KDQoJLyoqDQoJICogTG9hZCBvbmUNCgkgKg0KCSAqIEBwYXJhbSAgIGFycmF5ICAgICAgICRzZWxlY3QgIEFycmF5IG9mIHNlbGVjdGlvbiBrZXlzDQoJICogQHBhcmFtICAgYXJyYXkgICAgICAgJHRhYmxlcyAgQXJyYXkgb2YgdGFibGVzIHRvIHNlYXJjaA0KCSAqIEBwYXJhbSAgIGFycmF5fG51bGwgICR3aGVyZSAgIEFycmF5IG9mIHdoZXJlIGtleT0+dmFsdWUgbWF0Y2ggZXhpc3QNCgkgKiBAcGFyYW0gICBhcnJheXxudWxsICAkb3JkZXIgICBBcnJheSBvZiBob3cgdG8gb3JkZXIgdGhlIGRhdGENCgkgKg0KCSAqIEByZXR1cm4gIGJvb2wNCgkgKiBAc2luY2UgICAzLjIuMA0KCSAqKi8NCglwcm90ZWN0ZWQgZnVuY3Rpb24gb25lKGFycmF5ICRzZWxlY3QsIGFycmF5ICR0YWJsZXMsID9hcnJheSAkd2hlcmUgPSBudWxsLCA/YXJyYXkgJG9yZGVyID0gbnVsbCk6IGJvb2wNCgl7DQoJCS8vIG9ubHkgZG8gY2hlY2sgaWYgd2UgaGF2ZSB0aGUgdGFibGUgc2V0DQoJCWlmIChpc3NldCgkdGFibGVzWydhJ10pKQ0KCQl7DQoJCQkvLyBnZXQgdGhlIHF1ZXJ5DQoJCQkkcXVlcnkgPSAkdGhpcy0+cXVlcnkoJHNlbGVjdCwgJHRhYmxlcywgJHdoZXJlLCAkb3JkZXIpOw0KDQoJCQkvLyBMb2FkIHRoZSBpdGVtDQoJCQkkdGhpcy0+ZGItPnNldFF1ZXJ5KCRxdWVyeSwgMCwgMSk7DQoJCQkkdGhpcy0+ZGItPmV4ZWN1dGUoKTsNCg0KCQkJLy8gY2hlY2sgaWYgd2UgaGF2ZSB2YWx1ZXMNCgkJCWlmICgkdGhpcy0+ZGItPmdldE51bVJvd3MoKSkNCgkJCXsNCgkJCQlyZXR1cm4gdHJ1ZTsNCgkJCX0NCgkJfQ0KDQoJCS8vIGRhdGEgZG9lcyBub3QgZXhpc3QNCgkJcmV0dXJuIGZhbHNlOw0KCX0NCg0KCS8qKg0KCSAqIEdldCB0aGUgcXVlcnkgb2JqZWN0DQoJICoNCgkgKiBAcGFyYW0gICBhcnJheSAgICAgICAgJHNlbGVjdCAgIEFycmF5IG9mIHNlbGVjdGlvbiBrZXlzDQoJICogQHBhcmFtICAgYXJyYXkgICAgICAgICR0YWJsZXMgICBBcnJheSBvZiB0YWJsZXMgdG8gc2VhcmNoDQoJICogQHBhcmFtICAgYXJyYXl8bnVsbCAgICR3aGVyZSAgICBBcnJheSBvZiB3aGVyZSBrZXk9PnZhbHVlIG1hdGNoIGV4aXN0DQoJICogQHBhcmFtICAgYXJyYXl8bnVsbCAgICRvcmRlciAgICBBcnJheSBvZiBob3cgdG8gb3JkZXIgdGhlIGRhdGENCgkgKiBAcGFyYW0gICBpbnR8bnVsbCAgICAgJGxpbWl0ICAgIExpbWl0IHRoZSBudW1iZXIgb2YgdmFsdWVzIHJldHVybmVkDQoJICoNCgkgKiBAcmV0dXJuICBvYmplY3R8bnVsbCAgIFRoZSBxdWVyeSBvYmplY3QgIChEYXRhYmFzZVF1ZXJ5KQ0KCSAqIEBzaW5jZSAgIDMuMi4wDQoJICoqLw0KCXByb3RlY3RlZCBmdW5jdGlvbiBxdWVyeShhcnJheSAkc2VsZWN0LCBhcnJheSAkdGFibGVzLCA/YXJyYXkgJHdoZXJlID0gbnVsbCwNCgkJP2FycmF5ICRvcmRlciA9IG51bGwsID9pbnQgJGxpbWl0ID0gbnVsbCk6ID9vYmplY3QNCgl7DQoJCSRxdWVyeSA9ICR0aGlzLT5kYi0+Z2V0UXVlcnkodHJ1ZSk7DQoNCgkJLy8gY2hlY2sgaWYgd2UgaGF2ZSBhbiBhbGwgc2VsZWN0aW9uIHNldA0KCQlpZiAoaXNzZXQoJHNlbGVjdFsnYWxsJ10pKQ0KCQl7DQoJCQkvLyBhbGwgc2VsZWN0aW9uIGV4YW1wbGUgYXJyYXk6IFsnYWxsJyA9PiBbJ2EuKicsICdiLionXV0NCgkJCWlmIChBcnJheUhlbHBlcjo6Y2hlY2soJHNlbGVjdFsnYWxsJ10pKQ0KCQkJew0KCQkJCWZvcmVhY2ggKCRzZWxlY3RbJ2FsbCddIGFzICRzZWxlY3RfYWxsKQ0KCQkJCXsNCgkJCQkJLy8gc2V0IHRhcmdldCBzZWxlY3Rpb24NCgkJCQkJJHF1ZXJ5LT5zZWxlY3QoDQoJCQkJCQkkc2VsZWN0X2FsbA0KCQkJCQkpOw0KCQkJCX0NCgkJCX0NCgkJCS8vIGFsbCBzZWxlY3Rpb24gZXhhbXBsZSBzdHJpbmc6IFsnYWxsJyA9PidhLionXQ0KCQkJZWxzZWlmIChpc19zdHJpbmcoJHNlbGVjdFsnYWxsJ10pKQ0KCQkJew0KCQkJCS8vIHNldCB0YXJnZXQgc2VsZWN0aW9uDQoJCQkJJHF1ZXJ5LT5zZWxlY3QoDQoJCQkJCSRzZWxlY3RbJ2FsbCddDQoJCQkJKTsNCgkJCX0NCgkJCXVuc2V0KCRzZWxlY3RbJ2FsbCddKTsNCgkJfQ0KDQoJCS8vIGxvYWQgdGhlIHRhYmxlIHdoZXJlIGpvaW4NCgkJaWYgKEFycmF5SGVscGVyOjpjaGVjaygkc2VsZWN0KSkNCgkJew0KCQkJLy8gc2V0IHRhcmdldCBzZWxlY3Rpb24NCgkJCSRxdWVyeS0+c2VsZWN0KA0KCQkJCSR0aGlzLT5kYi0+cXVvdGVOYW1lKA0KCQkJCQlhcnJheV9rZXlzKCRzZWxlY3QpLA0KCQkJCQlhcnJheV92YWx1ZXMoJHNlbGVjdCkNCgkJCQkpDQoJCQkpOw0KCQl9DQoNCgkJLy8gc2V0IG1haW4gdGFibGUNCgkJJHF1ZXJ5LT5mcm9tKCR0aGlzLT5kYi0+cXVvdGVOYW1lKCR0aGlzLT5nZXRUYWJsZSgkdGFibGVzWydhJ10pLCAnYScpKTsNCg0KCQkvLyByZW1vdmUgbWFpbiB0YWJsZQ0KCQl1bnNldCgkdGFibGVzWydhJ10pOw0KDQoJCS8vIGxvYWQgdGhlIHRhYmxlIHdoZXJlIGpvaW4NCgkJaWYgKEFycmF5SGVscGVyOjpjaGVjaygkdGFibGVzKSkNCgkJew0KCQkJZm9yZWFjaCAoJHRhYmxlcyBhcyAkYXMgPT4gJHRhYmxlKQ0KCQkJew0KCQkJCSRxdWVyeS0+am9pbigNCgkJCQkJJ0xFRlQnLCAkdGhpcy0+ZGItPnF1b3RlTmFtZSgNCgkJCQkJCSR0aGlzLT5nZXRUYWJsZSgkdGFibGVbJ25hbWUnXSksICRhcw0KCQkJCQkpIC4gJyBPTiAoJyAuICR0aGlzLT5kYi0+cXVvdGVOYW1lKCR0YWJsZVsnam9pbl9vbiddKQ0KCQkJCQkuICcgPSAnIC4gJHRoaXMtPmRiLT5xdW90ZU5hbWUoJHRhYmxlWydhc19vbiddKSAuICcpJw0KCQkJCSk7DQoJCQl9DQoJCX0NCg0KCQkvLyBsb2FkIHRoZSB0YWJsZSB3aGVyZSBnZXR0ZXJzDQoJCWlmIChBcnJheUhlbHBlcjo6Y2hlY2soJHdoZXJlKSkNCgkJew0KCQkJZm9yZWFjaCAoJHdoZXJlIGFzICRrZXkgPT4gJHZhbHVlKQ0KCQkJew0KCQkJCWlmIChBcnJheUhlbHBlcjo6Y2hlY2soJHZhbHVlKSkNCgkJCQl7DQoJCQkJCWlmIChpc3NldCgkdmFsdWVbJ3ZhbHVlJ10pICYmIGlzc2V0KCR2YWx1ZVsnb3BlcmF0b3InXSkpDQoJCQkJCXsNCgkJCQkJCS8vIGNoZWNrIGlmIHZhbHVlIG5lZWRzIHRvIGJlIHF1b3RlZA0KCQkJCQkJJHF1b3RlID0gJHZhbHVlWydxdW90ZSddID8/IHRydWU7DQoJCQkJCQlpZiAoISRxdW90ZSkNCgkJCQkJCXsNCgkJCQkJCQlpZiAoQXJyYXlIZWxwZXI6OmNoZWNrKCR2YWx1ZVsndmFsdWUnXSkpDQoJCQkJCQkJew0KCQkJCQkJCQkvLyBhZGQgdGhlIHdoZXJlIGJ5IGFycmF5DQoJCQkJCQkJCSRxdWVyeS0+d2hlcmUoJHRoaXMtPmRiLT5xdW90ZU5hbWUoJGtleSkgLiAnICcgLg0KCQkJCQkJCQkJJHZhbHVlWydvcGVyYXRvciddIC4gJyAoJyAuDQoJCQkJCQkJCQkJaW1wbG9kZSgnLCcsICR2YWx1ZVsndmFsdWUnXSkNCgkJCQkJCQkJCS4gJyknDQoJCQkJCQkJCSk7DQoJCQkJCQkJfQ0KCQkJCQkJCWVsc2UNCgkJCQkJCQl7DQoJCQkJCQkJCS8vIGFkZCB0aGUgd2hlcmUNCgkJCQkJCQkJJHF1ZXJ5LT53aGVyZSgkdGhpcy0+ZGItPnF1b3RlTmFtZSgka2V5KSAuICcgJyAuDQoJCQkJCQkJCQkkdmFsdWVbJ29wZXJhdG9yJ10gLiAnICcgLiAkdmFsdWVbJ3ZhbHVlJ10pOw0KCQkJCQkJCX0NCgkJCQkJCX0NCgkJCQkJCWVsc2UNCgkJCQkJCXsNCgkJCQkJCQlpZiAoQXJyYXlIZWxwZXI6OmNoZWNrKCR2YWx1ZVsndmFsdWUnXSkpDQoJCQkJCQkJew0KCQkJCQkJCQkvLyBhZGQgdGhlIHdoZXJlIGJ5IGFycmF5DQoJCQkJCQkJCSRxdWVyeS0+d2hlcmUoJHRoaXMtPmRiLT5xdW90ZU5hbWUoJGtleSkgLiAnICcgLg0KCQkJCQkJCQkJJHZhbHVlWydvcGVyYXRvciddIC4gJyAoJyAuDQoJCQkJCQkJCQkJaW1wbG9kZSgnLCcsDQoJCQkJCQkJCQkJCWFycmF5X21hcCgNCgkJCQkJCQkJCQkJCWZuKCR2YWwpID0+ICR0aGlzLT5xdW90ZSgkdmFsKSwNCgkJCQkJCQkJCQkJCSR2YWx1ZVsndmFsdWUnXQ0KCQkJCQkJCQkJCQkpDQoJCQkJCQkJCQkJKQ0KCQkJCQkJCQkJLiAnKScNCgkJCQkJCQkJKTsNCgkJCQkJCQl9DQoJCQkJCQkJZWxzZQ0KCQkJCQkJCXsNCgkJCQkJCQkJLy8gYWRkIHRoZSB3aGVyZQ0KCQkJCQkJCQkkcXVlcnktPndoZXJlKCR0aGlzLT5kYi0+cXVvdGVOYW1lKCRrZXkpIC4gJyAnIC4NCgkJCQkJCQkJCSR2YWx1ZVsnb3BlcmF0b3InXSAuICcgJyAuICR0aGlzLT5xdW90ZSgkdmFsdWVbJ3ZhbHVlJ10pKTsNCgkJCQkJCQl9DQoJCQkJCQl9DQoJCQkJCX0NCgkJCQkJZWxzZQ0KCQkJCQl7DQoJCQkJCQkvLyB3ZSBzaG91bGQgdGhyb3VnaCBhbiBleGNlcHRpb24NCgkJCQkJCS8vIGZvciBzZWN1cml0eSB3ZSBqdXN0IHJldHVybiBub3RoaW5nIGZvciBub3cNCgkJCQkJCXJldHVybiBudWxsOw0KCQkJCQl9DQoJCQkJfQ0KCQkJCWVsc2UNCgkJCQl7DQoJCQkJCS8vIGFkZCB0aGUgd2hlcmUNCgkJCQkJJHF1ZXJ5LT53aGVyZSgkdGhpcy0+ZGItPnF1b3RlTmFtZSgka2V5KSAuDQoJCQkJCQknID0gJyAuICR0aGlzLT5xdW90ZSgkdmFsdWUpKTsNCgkJCQl9DQoJCQl9DQoJCX0NCg0KCQkvLyBsb2FkIHRoZSByb3cgb3JkZXJpbmcNCgkJaWYgKEFycmF5SGVscGVyOjpjaGVjaygkb3JkZXIpKQ0KCQl7DQoJCQlmb3JlYWNoICgkb3JkZXIgYXMgJGtleSA9PiAkZGlyZWN0aW9uKQ0KCQkJew0KCQkJCS8vIGFkZCB0aGUgb3JkZXJpbmcNCgkJCQkkcXVlcnktPm9yZGVyKCR0aGlzLT5kYi0+cXVvdGVOYW1lKCRrZXkpIC4NCgkJCQkJJyAnIC4gJGRpcmVjdGlvbik7DQoJCQl9DQoJCX0NCg0KCQkvLyBvbmx5IHJldHVybiBhIGxpbWl0ZWQgbnVtYmVyDQoJCWlmIChpc19udW1lcmljKCRsaW1pdCkpDQoJCXsNCgkJCSRxdWVyeS0+c2V0TGltaXQoJGxpbWl0KTsNCgkJfQ0KDQoJCXJldHVybiAkcXVlcnk7DQoJfQ0KDQoJLyoqDQoJICogR2V0IHRoZSBrZXkgZnJvbSB0aGUgc2VsZWN0aW9uIGFycmF5Lg0KCSAqDQoJICogVGhpcyBmdW5jdGlvbiByZXRyaWV2ZXMgYSBrZXkgZnJvbSB0aGUgcHJvdmlkZWQgc2VsZWN0aW9uIGFycmF5Lg0KCSAqIFRoZSBrZXkgaXMgcmVtb3ZlZCBmcm9tIHRoZSBhcnJheSBhZnRlciBiZWluZyByZXRyaWV2ZWQuDQoJICoNCgkgKiBAcGFyYW0gICBhcnJheSAgICRzZWxlY3QgICBBcnJheSBvZiBzZWxlY3Rpb24ga2V5cy4NCgkgKg0KCSAqIEByZXR1cm4gIHN0cmluZ3xudWxsICAgVGhlIGtleSwgb3IgbnVsbCBpZiBubyBrZXkgaXMgZm91bmQuDQoJICogQHNpbmNlICAgMy4yLjINCgkgKiovDQoJcHJvdGVjdGVkIGZ1bmN0aW9uIGdldEtleShhcnJheSAmJHNlbGVjdCk6ID9zdHJpbmcNCgl7DQoJCSRrZXkgPSBudWxsOw0KDQoJCS8vIENoZWNrIGZvciAna2V5JyBmaXJzdCBhbmQgZW5zdXJlIGl0J3MgYSBzdHJpbmcuDQoJCWlmIChpc3NldCgkc2VsZWN0WydrZXknXSkgJiYgaXNfc3RyaW5nKCRzZWxlY3RbJ2tleSddKSkNCgkJew0KCQkJJGtleSA9ICRzZWxlY3RbJ2tleSddOw0KCQkJdW5zZXQoJHNlbGVjdFsna2V5J10pOyAvLyBSZW1vdmUgJ2tleScgZnJvbSB0aGUgYXJyYXkuDQoJCX0NCg0KCQlyZXR1cm4gJGtleTsNCgl9', '{}', '{}', '', 1, '2022-09-03 19:19:27', 54, '', 1), +(125, '2ad31f74-f579-499d-b98b-c4f54fd615dd', 'VDM.Interfaces.LoadInterface', 'LoadInterface', 'interface', 'Database Load Interface\r\n\r\n@since 3.2.0', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\Interfaces.LoadInterface', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIExvYWQgZGF0YSByb3dzIGFzIGFuIGFycmF5IG9mIGFzc29jaWF0ZWQgYXJyYXlzDQoJICoNCgkgKiBAcGFyYW0gICBhcnJheSAgICAgICAgJHNlbGVjdCAgIEFycmF5IG9mIHNlbGVjdGlvbiBrZXlzDQoJICogQHBhcmFtICAgYXJyYXkgICAgICAgICR0YWJsZXMgICBBcnJheSBvZiB0YWJsZXMgdG8gc2VhcmNoDQoJICogQHBhcmFtICAgYXJyYXl8bnVsbCAgICR3aGVyZSAgICBBcnJheSBvZiB3aGVyZSBrZXk9PnZhbHVlIG1hdGNoIGV4aXN0DQoJICogQHBhcmFtICAgYXJyYXl8bnVsbCAgICRvcmRlciAgICBBcnJheSBvZiBob3cgdG8gb3JkZXIgdGhlIGRhdGENCgkgKiBAcGFyYW0gICBpbnR8bnVsbCAgICAgJGxpbWl0ICAgIExpbWl0IHRoZSBudW1iZXIgb2YgdmFsdWVzIHJldHVybmVkDQoJICoNCgkgKiBAcmV0dXJuICBhcnJheXxudWxsDQoJICogQHNpbmNlICAgMy4yLjANCgkgKiovDQoJcHVibGljIGZ1bmN0aW9uIHJvd3MoYXJyYXkgJHNlbGVjdCwgYXJyYXkgJHRhYmxlcywgP2FycmF5ICR3aGVyZSA9IG51bGwsDQoJCT9hcnJheSAkb3JkZXIgPSBudWxsLCA/aW50ICRsaW1pdCA9IG51bGwpOiA/YXJyYXk7DQoNCgkvKioNCgkgKiBMb2FkIGRhdGEgcm93cyBhcyBhbiBhcnJheSBvZiBvYmplY3RzDQoJICoNCgkgKiBAcGFyYW0gICBhcnJheSAgICAgICAgJHNlbGVjdCAgIEFycmF5IG9mIHNlbGVjdGlvbiBrZXlzDQoJICogQHBhcmFtICAgYXJyYXkgICAgICAgICR0YWJsZXMgICBBcnJheSBvZiB0YWJsZXMgdG8gc2VhcmNoDQoJICogQHBhcmFtICAgYXJyYXl8bnVsbCAgICR3aGVyZSAgICBBcnJheSBvZiB3aGVyZSBrZXk9PnZhbHVlIG1hdGNoIGV4aXN0DQoJICogQHBhcmFtICAgYXJyYXl8bnVsbCAgICRvcmRlciAgICBBcnJheSBvZiBob3cgdG8gb3JkZXIgdGhlIGRhdGENCgkgKiBAcGFyYW0gICBpbnR8bnVsbCAgICAgJGxpbWl0ICAgIExpbWl0IHRoZSBudW1iZXIgb2YgdmFsdWVzIHJldHVybmVkDQoJICoNCgkgKiBAcmV0dXJuICBhcnJheXxudWxsDQoJICogQHNpbmNlICAgMy4yLjANCgkgKiovDQoJcHVibGljIGZ1bmN0aW9uIGl0ZW1zKGFycmF5ICRzZWxlY3QsIGFycmF5ICR0YWJsZXMsID9hcnJheSAkd2hlcmUgPSBudWxsLA0KCQk/YXJyYXkgJG9yZGVyID0gbnVsbCwgP2ludCAkbGltaXQgPSBudWxsKTogP2FycmF5Ow0KDQoJLyoqDQoJICogTG9hZCBkYXRhIHJvdyBhcyBhbiBhc3NvY2lhdGVkIGFycmF5DQoJICoNCgkgKiBAcGFyYW0gICBhcnJheSAgICAgICAgJHNlbGVjdCAgIEFycmF5IG9mIHNlbGVjdGlvbiBrZXlzDQoJICogQHBhcmFtICAgYXJyYXkgICAgICAgJHRhYmxlcyAgQXJyYXkgb2YgdGFibGVzIHRvIHNlYXJjaA0KCSAqIEBwYXJhbSAgIGFycmF5fG51bGwgICR3aGVyZSAgIEFycmF5IG9mIHdoZXJlIGtleT0+dmFsdWUgbWF0Y2ggZXhpc3QNCgkgKiBAcGFyYW0gICBhcnJheXxudWxsICAkb3JkZXIgICAgQXJyYXkgb2YgaG93IHRvIG9yZGVyIHRoZSBkYXRhDQoJICoNCgkgKiBAcmV0dXJuICBhcnJheXxudWxsDQoJICogQHNpbmNlICAgMy4yLjANCgkgKiovDQoJcHVibGljIGZ1bmN0aW9uIHJvdyhhcnJheSAkc2VsZWN0LCBhcnJheSAkdGFibGVzLCA/YXJyYXkgJHdoZXJlID0gbnVsbCwgP2FycmF5ICRvcmRlciA9IG51bGwpOiA/YXJyYXk7DQoNCgkvKioNCgkgKiBMb2FkIGRhdGEgcm93IGFzIGFuIG9iamVjdA0KCSAqDQoJICogQHBhcmFtICAgYXJyYXkgICAgICAgICRzZWxlY3QgICBBcnJheSBvZiBzZWxlY3Rpb24ga2V5cw0KCSAqIEBwYXJhbSAgIGFycmF5ICAgICAgICR0YWJsZXMgIEFycmF5IG9mIHRhYmxlcyB0byBzZWFyY2gNCgkgKiBAcGFyYW0gICBhcnJheXxudWxsICAkd2hlcmUgICBBcnJheSBvZiB3aGVyZSBrZXk9PnZhbHVlIG1hdGNoIGV4aXN0DQoJICogQHBhcmFtICAgYXJyYXl8bnVsbCAgJG9yZGVyICAgIEFycmF5IG9mIGhvdyB0byBvcmRlciB0aGUgZGF0YQ0KCSAqDQoJICogQHJldHVybiAgb2JqZWN0fG51bGwNCgkgKiBAc2luY2UgICAzLjIuMA0KCSAqKi8NCglwdWJsaWMgZnVuY3Rpb24gaXRlbShhcnJheSAkc2VsZWN0LCBhcnJheSAkdGFibGVzLCA/YXJyYXkgJHdoZXJlID0gbnVsbCwgP2FycmF5ICRvcmRlciA9IG51bGwpOiA/b2JqZWN0Ow0KDQoJLyoqDQoJICogR2V0IHRoZSBtYXggdmFsdWUgYmFzZWQgb24gYSBmaWx0ZXJlZCByZXN1bHQgZnJvbSBhIGdpdmVuIHRhYmxlDQoJICoNCgkgKiBAcGFyYW0gICBzdHJpbmcgICAgICRmaWVsZCAgICAgVGhlIGZpZWxkIGtleQ0KCSAqIEBwYXJhbSAgIHN0cmluZyAgICAgJHRhYmxlcyAgICBUaGUgdGFibGUNCgkgKiBAcGFyYW0gICBhcnJheSAgICAgICRmaWx0ZXIgICAgVGhlIGZpbHRlciBrZXlzDQoJICoNCgkgKiBAcmV0dXJuICBpbnR8bnVsbA0KCSAqIEBzaW5jZSAgIDMuMi4wDQoJICoqLw0KCXB1YmxpYyBmdW5jdGlvbiBtYXgoJGZpZWxkLCBhcnJheSAkdGFibGVzLCBhcnJheSAkZmlsdGVyKTogP2ludDsNCg0KCS8qKg0KCSAqIENvdW50IHRoZSBudW1iZXIgb2YgaXRlbXMgYmFzZWQgb24gZmlsdGVyIHJlc3VsdCBmcm9tIGEgZ2l2ZW4gdGFibGUNCgkgKg0KCSAqIEBwYXJhbSAgIHN0cmluZyAgICAgJHRhYmxlcyAgICBUaGUgdGFibGUNCgkgKiBAcGFyYW0gICBhcnJheSAgICAgICRmaWx0ZXIgICAgVGhlIGZpbHRlciBrZXlzDQoJICoNCgkgKiBAcmV0dXJuICBpbnR8bnVsbA0KCSAqIEBzaW5jZSAgIDMuMi4wDQoJICoqLw0KCXB1YmxpYyBmdW5jdGlvbiBjb3VudChhcnJheSAkdGFibGVzLCBhcnJheSAkZmlsdGVyKTogP2ludDsNCg0KCS8qKg0KCSAqIExvYWQgb25lIHZhbHVlIGZyb20gYSByb3cNCgkgKg0KCSAqIEBwYXJhbSAgIGFycmF5ICAgICAgICAkc2VsZWN0ICAgQXJyYXkgb2Ygc2VsZWN0aW9uIGtleXMNCgkgKiBAcGFyYW0gICBhcnJheSAgICAgICAkdGFibGVzICBBcnJheSBvZiB0YWJsZXMgdG8gc2VhcmNoDQoJICogQHBhcmFtICAgYXJyYXl8bnVsbCAgJHdoZXJlICAgQXJyYXkgb2Ygd2hlcmUga2V5PT52YWx1ZSBtYXRjaCBleGlzdA0KCSAqIEBwYXJhbSAgIGFycmF5fG51bGwgICRvcmRlciAgICBBcnJheSBvZiBob3cgdG8gb3JkZXIgdGhlIGRhdGENCgkgKg0KCSAqIEByZXR1cm4gIG1peGVkDQoJICogQHNpbmNlICAgMy4yLjANCgkgKiovDQoJcHVibGljIGZ1bmN0aW9uIHZhbHVlKGFycmF5ICRzZWxlY3QsIGFycmF5ICR0YWJsZXMsID9hcnJheSAkd2hlcmUgPSBudWxsLCA/YXJyYXkgJG9yZGVyID0gbnVsbCk7DQoNCgkvKioNCgkgKiBMb2FkIHZhbHVlcyBmcm9tIG11bHRpcGxlIHJvd3MNCgkgKg0KCSAqIEBwYXJhbSAgIGFycmF5ICAgICAgICAkc2VsZWN0ICAgQXJyYXkgb2Ygc2VsZWN0aW9uIGtleXMNCgkgKiBAcGFyYW0gICBhcnJheSAgICAgICAgJHRhYmxlcyAgIEFycmF5IG9mIHRhYmxlcyB0byBzZWFyY2gNCgkgKiBAcGFyYW0gICBhcnJheXxudWxsICAgJHdoZXJlICAgIEFycmF5IG9mIHdoZXJlIGtleT0+dmFsdWUgbWF0Y2ggZXhpc3QNCgkgKiBAcGFyYW0gICBhcnJheXxudWxsICAgJG9yZGVyICAgIEFycmF5IG9mIGhvdyB0byBvcmRlciB0aGUgZGF0YQ0KCSAqIEBwYXJhbSAgIGludHxudWxsICAgICAkbGltaXQgICAgTGltaXQgdGhlIG51bWJlciBvZiB2YWx1ZXMgcmV0dXJuZWQNCgkgKg0KCSAqIEByZXR1cm4gIGFycmF5fG51bGwNCgkgKiBAc2luY2UgICAzLjIuMg0KCSAqKi8NCglwdWJsaWMgZnVuY3Rpb24gdmFsdWVzKGFycmF5ICRzZWxlY3QsIGFycmF5ICR0YWJsZXMsID9hcnJheSAkd2hlcmUgPSBudWxsLA0KCQk/YXJyYXkgJG9yZGVyID0gbnVsbCwgP2ludCAkbGltaXQgPSBudWxsKTogP2FycmF5Ow==', '{}', '{}', '', 1, '2022-10-22 19:20:18', 18, '', 1), +(126, '6cbef8f8-4813-48e3-b05a-65e1aea95171', 'VDM.Abstraction.Database', 'Database', 'abstract class', 'Database\r\n\r\n@since 3.2.0', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\Abstraction.Database', 1, '{}', '{}', 'dXNlIEpvb21sYVxDTVNcRmFjdG9yeTsNCnVzZSBKb29tbGFcRGF0YWJhc2VcRGF0YWJhc2VJbnRlcmZhY2U7', '{\"use_selection0\":{\"use\":\"640b5352-fb09-425f-a26e-cd44eda03f15\",\"as\":\"default\"}}', 'CS8qKg0KCSAqIERhdGFiYXNlIG9iamVjdCB0byBxdWVyeSBsb2NhbCBEQg0KCSAqDQoJICogQHNpbmNlIDMuMi4wDQoJICovDQoJcHJvdGVjdGVkICRkYjsNCg0KCS8qKg0KCSAqIENvcmUgQ29tcG9uZW50IFRhYmxlIE5hbWUNCgkgKg0KCSAqIEB2YXIgICBzdHJpbmcNCgkgKiBAc2luY2UgMy4yLjANCgkgKi8NCglwcm90ZWN0ZWQgc3RyaW5nICR0YWJsZTsNCg0KCS8qKg0KCSAqIERhdGUgZm9ybWF0IHRvIHJldHVybg0KCSAqDQoJICogQHZhciAgIHN0cmluZw0KCSAqIEBzaW5jZSA1LjAuMg0KCSAqLw0KCXByb3RlY3RlZCBzdHJpbmcgJGRhdGVGb3JtYXQgPSAnWS1tLWQgSDppOnMnOw0KDQoJLyoqDQoJICogQ29uc3RydWN0b3INCgkgKg0KCSAqIEB0aHJvd3MgXEV4Y2VwdGlvbg0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdCgpDQoJew0KCQkkdGhpcy0+ZGIgPSBGYWN0b3J5OjpnZXRDb250YWluZXIoKS0+Z2V0KERhdGFiYXNlSW50ZXJmYWNlOjpjbGFzcyk7DQoNCgkJLy8gc2V0IHRoZSBjb21wb25lbnQgdGFibGUNCgkJJHRoaXMtPnRhYmxlID0gJyNfXycgLiBIZWxwZXI6OmdldENvZGUoKTsNCgl9DQoNCgkvKioNCgkgKiBTZXQgYSB2YWx1ZSBiYXNlZCBvbiBkYXRhIHR5cGUNCgkgKg0KCSAqIEBwYXJhbSAgIG1peGVkICAkdmFsdWUgICBUaGUgdmFsdWUgdG8gc2V0DQoJICoNCgkgKiBAcmV0dXJuICBtaXhlZA0KCSAqIEBzaW5jZSAgIDMuMi4wDQoJICoqLw0KCXByb3RlY3RlZCBmdW5jdGlvbiBxdW90ZSgkdmFsdWUpDQoJew0KCQlpZiAoJHZhbHVlID09PSBudWxsKQ0KCQl7DQoJCQlyZXR1cm4gJ05VTEwnOw0KCQl9DQoNCgkJaWYgKGlzX251bWVyaWMoJHZhbHVlKSkNCgkJew0KCQkJLy8gSWYgdGhlIHZhbHVlIGlzIGEgbnVtZXJpYyBzdHJpbmcgKGUuZy4sICIwMTIzIiksIHRyZWF0IGl0IGFzIGEgc3RyaW5nIHRvIHByZXNlcnZlIHRoZSBmb3JtYXQNCgkJCWlmIChpc19zdHJpbmcoJHZhbHVlKSAmJiBsdHJpbSgkdmFsdWUsICcwJykgIT09ICR2YWx1ZSkNCgkJCXsNCgkJCQlyZXR1cm4gJHRoaXMtPmRiLT5xdW90ZSgkdmFsdWUpOw0KCQkJfQ0KDQoJCQlpZiAoZmlsdGVyX3ZhcigkdmFsdWUsIEZJTFRFUl9WQUxJREFURV9JTlQpKQ0KCQkJew0KCQkJCXJldHVybiAoaW50KSAkdmFsdWU7DQoJCQl9DQoNCgkJCWlmIChmaWx0ZXJfdmFyKCR2YWx1ZSwgRklMVEVSX1ZBTElEQVRFX0ZMT0FUKSkNCgkJCXsNCgkJCQlyZXR1cm4gKGZsb2F0KSAkdmFsdWU7DQoJCQl9DQoJCX0NCg0KCQkvLyBIYW5kbGUgYm9vbGVhbiB2YWx1ZXMNCgkJaWYgKGlzX2Jvb2woJHZhbHVlKSkNCgkJew0KCQkJcmV0dXJuICR2YWx1ZSA/ICdUUlVFJyA6ICdGQUxTRSc7DQoJCX0NCg0KCQkvLyBGb3IgZGF0ZSBhbmQgZGF0ZXRpbWUgdmFsdWVzDQoJCWlmICgkdmFsdWUgaW5zdGFuY2VvZiBcRGF0ZVRpbWUpDQoJCXsNCgkJCXJldHVybiAkdGhpcy0+ZGItPnF1b3RlKCR2YWx1ZS0+Zm9ybWF0KCR0aGlzLT5nZXREYXRlRm9ybWF0KCkpKTsNCgkJfQ0KDQoJCS8vIEZvciBvdGhlciB0eXBlcyBvZiB2YWx1ZXMsIHF1b3RlIGFzIHN0cmluZw0KCQlyZXR1cm4gJHRoaXMtPmRiLT5xdW90ZSgkdmFsdWUpOw0KCX0NCg0KCS8qKg0KCSAqIFNldCBhIHRhYmxlIG5hbWUsIGFkZGluZyB0aGUNCgkgKiAgICAgY29yZSBjb21wb25lbnQgYXMgbmVlZGVkDQoJICoNCgkgKiBAcGFyYW0gICBzdHJpbmcgICR0YWJsZSAgIFRoZSB0YWJsZSBzdHJpbmcNCgkgKg0KCSAqIEByZXR1cm4gIHN0cmluZw0KCSAqIEBzaW5jZSAgIDMuMi4wDQoJICoqLw0KCXByb3RlY3RlZCBmdW5jdGlvbiBnZXRUYWJsZShzdHJpbmcgJHRhYmxlKTogc3RyaW5nDQoJew0KCQlpZiAoc3RycG9zKCR0YWJsZSwgJyNfXycpID09PSBmYWxzZSkNCgkJew0KCQkJcmV0dXJuICR0aGlzLT50YWJsZSAuICdfJyAuICR0YWJsZTsNCgkJfQ0KDQoJCXJldHVybiAkdGFibGU7DQoJfQ0KDQoJLyoqDQoJICogR2V0IHRoZSBkYXRlIGZvcm1hdCB0byByZXR1cm4gaW4gdGhlIHF1b3RlDQoJICoNCgkgKiBAcmV0dXJuICBzdHJpbmcNCgkgKiBAc2luY2UgICA1LjAuMg0KCSAqKi8NCglwcm90ZWN0ZWQgZnVuY3Rpb24gZ2V0RGF0ZUZvcm1hdCgpOiBzdHJpbmcNCgl7DQoJCXJldHVybiAkdGhpcy0+ZGF0ZUZvcm1hdDsNCgl9', '{}', '{}', '', 1, '2018-10-05 17:01:41', 24, '', 1), +(133, '524eb8f6-38d4-47dc-92ad-98b94e099ac0', 'VDM.Database.Insert', 'Insert', 'final class', 'Database Insert Class\r\n\r\n@since 3.2.0', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '6cbef8f8-4813-48e3-b05a-65e1aea95171', '', '', '', '{\"0\":\"ad12ca1c-d3ce-4e7f-88c5-c6c92bdedc48\"}', '', '[[[NamespacePrefix]]]\\Joomla\\Database.Insert', 1, '{}', '{}', 'dXNlIEpvb21sYVxDTVNcRGF0ZVxEYXRlOw==', '{\"use_selection0\":{\"use\":\"0a59c65c-9daf-4bc9-baf4-e063ff9e6a8a\",\"as\":\"default\"}}', 'CS8qKg0KCSAqIFN3aXRjaCB0byBzZXQgdGhlIGRlZmF1bHRzDQoJICoNCgkgKiBAdmFyICAgIGJvb2wNCgkgKiBAc2luY2UgIDEuMi4wDQoJICoqLw0KCXByb3RlY3RlZCBib29sICRkZWZhdWx0cyA9IHRydWU7DQoNCgkvKioNCgkgKiBTd2l0Y2ggdG8gcHJldmVudC9hbGxvdyBkZWZhdWx0cyBmcm9tIGJlaW5nIGFkZGVkLg0KCSAqDQoJICogQHBhcmFtICAgYm9vbCAgICAkdHJpZ2dlciAgICAgIHRvZ2dsZSB0aGUgZGVmYXVsdHMNCgkgKg0KCSAqIEByZXR1cm4gIHZvaWQNCgkgKiBAc2luY2UgICAzLjIuMA0KCSAqKi8NCglwdWJsaWMgZnVuY3Rpb24gZGVmYXVsdHMoYm9vbCAkdHJpZ2dlciA9IHRydWUpDQoJew0KCQkkdGhpcy0+ZGVmYXVsdHMgPSAkdHJpZ2dlcjsNCgl9DQoNCgkvKioNCgkgKiBJbnNlcnQgcm93cyB0byB0aGUgZGF0YWJhc2UgKHdpdGggcmVtYXBwaW5nIGFuZCBmaWx0ZXJpbmcgY29sdW1ucyBvcHRpb24pDQoJICoNCgkgKiBAcGFyYW0gICBhcnJheSAgICAkZGF0YSAgICAgIERhdGFzZXQgdG8gc3RvcmUgaW4gZGF0YWJhc2UgW2FycmF5IG9mIGFycmF5cyAoa2V5ID0+IHZhbHVlKV0NCgkgKiBAcGFyYW0gICBzdHJpbmcgICAkdGFibGUgICAgIFRoZSB0YWJsZSB3aGVyZSB0aGUgZGF0YSBpcyBiZWluZyBhZGRlZA0KCSAqIEBwYXJhbSAgIGFycmF5ICAgICRjb2x1bW5zICAgRGF0YSBjb2x1bW5zIGZvciByZW1hcHBpbmcgYW5kIGZpbHRlcmluZw0KCSAqDQoJICogQHJldHVybiAgYm9vbA0KCSAqIEBzaW5jZSAgIDMuMi4wDQoJICoqLw0KCXB1YmxpYyBmdW5jdGlvbiByb3dzKGFycmF5ICRkYXRhLCBzdHJpbmcgJHRhYmxlLCBhcnJheSAkY29sdW1ucyA9IFtdKTogYm9vbA0KCXsNCgkJaWYgKCFBcnJheUhlbHBlcjo6Y2hlY2soJGRhdGEpKQ0KCQl7DQoJCQlyZXR1cm4gZmFsc2U7DQoJCX0NCg0KCQlpZiAoJGNvbHVtbnMgPT09IFtdKQ0KCQl7DQoJCQkkY29sdW1ucyA9ICR0aGlzLT5nZXRBcnJheUNvbHVtbnMoJGRhdGEpOw0KCQl9DQoNCgkJcmV0dXJuICgkY29sdW1ucyA9PT0gW10pID8gZmFsc2UgOiAkdGhpcy0+aW5zZXJ0KCRkYXRhLCAkdGFibGUsICRjb2x1bW5zLCB0cnVlKTsNCgl9DQoNCgkvKioNCgkgKiBJbnNlcnQgaXRlbXMgdG8gdGhlIGRhdGFiYXNlICh3aXRoIHJlbWFwcGluZyBhbmQgZmlsdGVyaW5nIGNvbHVtbnMgb3B0aW9uKQ0KCSAqDQoJICogQHBhcmFtICAgYXJyYXkgICAgJGRhdGEgICAgICAgICBEYXRhIHRvIHN0b3JlIGluIGRhdGFiYXNlIChhcnJheSBvZiBvYmplY3RzKQ0KCSAqIEBwYXJhbSAgIHN0cmluZyAgICR0YWJsZSAgICAgICAgVGhlIHRhYmxlIHdoZXJlIHRoZSBkYXRhIGlzIGJlaW5nIGFkZGVkDQoJICogQHBhcmFtICAgYXJyYXkgICAgJGNvbHVtbnMgICAgICBEYXRhIGNvbHVtbnMgZm9yIHJlbWFwcGluZyBhbmQgZmlsdGVyaW5nDQoJICoNCgkgKiBAcmV0dXJuICBib29sDQoJICogQHNpbmNlICAgMy4yLjANCgkgKiovDQoJcHVibGljIGZ1bmN0aW9uIGl0ZW1zKGFycmF5ICRkYXRhLCBzdHJpbmcgJHRhYmxlLCBhcnJheSAkY29sdW1ucyA9IFtdKTogYm9vbA0KCXsNCgkJaWYgKCFBcnJheUhlbHBlcjo6Y2hlY2soJGRhdGEpKQ0KCQl7DQoJCQlyZXR1cm4gZmFsc2U7DQoJCX0NCg0KCQlpZiAoJGNvbHVtbnMgPT09IFtdKQ0KCQl7DQoJCQkkY29sdW1ucyA9ICR0aGlzLT5nZXRPYmplY3RzQ29sdW1ucygkZGF0YSk7DQoJCX0NCg0KCQlyZXR1cm4gKCRjb2x1bW5zID09PSBbXSkgPyBmYWxzZSA6ICR0aGlzLT5pbnNlcnQoJGRhdGEsICR0YWJsZSwgJGNvbHVtbnMsIGZhbHNlKTsNCgl9DQoNCgkvKioNCgkgKiBJbnNlcnQgcm93IHRvIHRoZSBkYXRhYmFzZQ0KCSAqDQoJICogQHBhcmFtICAgYXJyYXkgICAgJGRhdGEgICAgICBEYXRhc2V0IHRvIHN0b3JlIGluIGRhdGFiYXNlIChrZXkgPT4gdmFsdWUpDQoJICogQHBhcmFtICAgc3RyaW5nICAgJHRhYmxlICAgICBUaGUgdGFibGUgd2hlcmUgdGhlIGRhdGEgaXMgYmVpbmcgYWRkZWQNCgkgKg0KCSAqIEByZXR1cm4gIGJvb2wNCgkgKiBAc2luY2UgICAzLjIuMA0KCSAqKi8NCglwdWJsaWMgZnVuY3Rpb24gcm93KGFycmF5ICRkYXRhLCBzdHJpbmcgJHRhYmxlKTogYm9vbA0KCXsNCgkJcmV0dXJuICR0aGlzLT5yb3dzKFskZGF0YV0sICR0YWJsZSk7DQoJfQ0KDQoJLyoqDQoJICogSW5zZXJ0IGl0ZW0gdG8gdGhlIGRhdGFiYXNlDQoJICoNCgkgKiBAcGFyYW0gICBvYmplY3QgICAgJGRhdGEgICAgIERhdGFzZXQgdG8gc3RvcmUgaW4gZGF0YWJhc2UgKGtleSA9PiB2YWx1ZSkNCgkgKiBAcGFyYW0gICBzdHJpbmcgICAkdGFibGUgICAgIFRoZSB0YWJsZSB3aGVyZSB0aGUgZGF0YSBpcyBiZWluZyBhZGRlZA0KCSAqDQoJICogQHJldHVybiAgYm9vbA0KCSAqIEBzaW5jZSAgIDMuMi4wDQoJICoqLw0KCXB1YmxpYyBmdW5jdGlvbiBpdGVtKG9iamVjdCAkZGF0YSwgc3RyaW5nICR0YWJsZSk6IGJvb2wNCgl7DQoJCXJldHVybiAkdGhpcy0+aXRlbXMoWyRkYXRhXSwgJHRhYmxlKTsNCgl9DQoNCgkvKioNCgkgKiBHZXQgY29sdW1ucyBmcm9tIGRhdGEgYXJyYXkNCgkgKg0KCSAqIEBwYXJhbSAgIGFycmF5ICAgJGRhdGEgICBEYXRhIGFycmF5DQoJICoNCgkgKiBAcmV0dXJuICBhcnJheQ0KCSAqIEBzaW5jZSAgIDMuMi4wDQoJICoqLw0KCXByb3RlY3RlZCBmdW5jdGlvbiBnZXRBcnJheUNvbHVtbnMoYXJyYXkgJiRkYXRhKTogYXJyYXkNCgl7DQoJCSRyb3cgPSBhcnJheV92YWx1ZXMoJGRhdGEpWzBdOw0KDQoJCWlmICghQXJyYXlIZWxwZXI6OmNoZWNrKCRyb3cpKQ0KCQl7DQoJCQlyZXR1cm4gW107DQoJCX0NCg0KCQkkY29sdW1ucyA9IGFycmF5X2tleXMoJHJvdyk7DQoNCgkJcmV0dXJuIGFycmF5X2NvbWJpbmUoJGNvbHVtbnMsICRjb2x1bW5zKTsNCgl9DQoNCgkvKioNCgkgKiBHZXQgY29sdW1ucyBmcm9tIGRhdGEgb2JqZWN0cw0KCSAqDQoJICogQHBhcmFtICAgYXJyYXkgICAkZGF0YSAgIERhdGEgb2JqZWN0cw0KCSAqDQoJICogQHJldHVybiAgYXJyYXkNCgkgKiBAc2luY2UgICAzLjIuMA0KCSAqKi8NCglwcm90ZWN0ZWQgZnVuY3Rpb24gZ2V0T2JqZWN0c0NvbHVtbnMoYXJyYXkgJiRkYXRhKTogYXJyYXkNCgl7DQoJCSRyb3cgPSBhcnJheV92YWx1ZXMoJGRhdGEpWzBdOw0KDQoJCWlmICghaXNfb2JqZWN0KCRyb3cpKQ0KCQl7DQoJCQlyZXR1cm4gW107DQoJCX0NCg0KCQkkY29sdW1ucyA9IGdldF9vYmplY3RfdmFycygkcm93KTsNCg0KCQlyZXR1cm4gYXJyYXlfY29tYmluZShhcnJheV9rZXlzKCRjb2x1bW5zKSwgYXJyYXlfa2V5cygkY29sdW1ucykpOw0KCX0NCg0KCS8qKg0KCSAqIEluc2VydCBkYXRhIGludG8gdGhlIGRhdGFiYXNlDQoJICoNCgkgKiBAcGFyYW0gICBhcnJheSAgICRkYXRhICAgICAgRGF0YSB0byBzdG9yZSBpbiBkYXRhYmFzZQ0KCSAqIEBwYXJhbSAgIHN0cmluZyAgJHRhYmxlICAgICBUaGUgdGFibGUgd2hlcmUgdGhlIGRhdGEgaXMgYmVpbmcgYWRkZWQNCgkgKiBAcGFyYW0gICBhcnJheSAgICRjb2x1bW5zICAgRGF0YSBjb2x1bW5zIGZvciByZW1hcHBpbmcgYW5kIGZpbHRlcmluZw0KCSAqIEBwYXJhbSAgIGJvb2wgICAgJGlzQXJyYXkgICBXaGV0aGVyIHRoZSBkYXRhIGlzIGFuIGFycmF5IG9mIGFycmF5cyBvciBhbiBhcnJheSBvZiBvYmplY3RzDQoJICoNCgkgKiBAcmV0dXJuICBib29sDQoJICogQHNpbmNlICAgMy4yLjANCgkgKiovDQoJcHJvdGVjdGVkIGZ1bmN0aW9uIGluc2VydChhcnJheSAmJGRhdGEsIHN0cmluZyAkdGFibGUsIGFycmF5ICRjb2x1bW5zLCBib29sICRpc0FycmF5KTogYm9vbA0KCXsNCgkJLy8gc2V0IGpvb21sYSBkZWZhdWx0IGNvbHVtbnMNCgkJJGFkZF9jcmVhdGVkID0gZmFsc2U7DQoJCSRhZGRfdmVyc2lvbiA9IGZhbHNlOw0KCQkkYWRkX3B1Ymxpc2hlZCA9IGZhbHNlOw0KDQoJCS8vIGNoZWNrIGlmIHdlIHNob3VsZCBsb2FkIHRoZSBkZWZhdWx0cw0KCQlpZiAoJHRoaXMtPmRlZmF1bHRzKQ0KCQl7DQoJCQkvLyBnZXQgdGhlIGRhdGUNCgkJCSRkYXRlID0gKG5ldyBEYXRlKCkpLT50b1NxbCgpOw0KDQoJCQlpZiAoIWlzc2V0KCRjb2x1bW5zWydjcmVhdGVkJ10pKQ0KCQkJew0KCQkJCSRjb2x1bW5zWydjcmVhdGVkJ10gPSAnIChvX08pICc7DQoJCQkJJGFkZF9jcmVhdGVkID0gdHJ1ZTsNCgkJCX0NCg0KCQkJaWYgKCFpc3NldCgkY29sdW1uc1sndmVyc2lvbiddKSkNCgkJCXsNCgkJCQkkY29sdW1uc1sndmVyc2lvbiddID0gJyAob19PKSAnOw0KCQkJCSRhZGRfdmVyc2lvbiA9IHRydWU7DQoJCQl9DQoNCgkJCWlmICghaXNzZXQoJGNvbHVtbnNbJ3B1Ymxpc2hlZCddKSkNCgkJCXsNCgkJCQkkY29sdW1uc1sncHVibGlzaGVkJ10gPSAnIChvX08pICc7DQoJCQkJJGFkZF9wdWJsaXNoZWQgPSB0cnVlOw0KCQkJfQ0KCQkJLy8gdGhlIChvX08pIHByZXZlbnRzIGFuIGVtcHR5IHZhbHVlIGZyb20gYmVpbmcgbG9hZGVkDQoJCX0NCg0KCQkvLyBnZXQgYSBxdWVyeSBvYmplY3QNCgkJJHF1ZXJ5ID0gJHRoaXMtPmRiLT5nZXRRdWVyeSh0cnVlKTsNCg0KCQkvLyBzZXQgdGhlIHF1ZXJ5IHRhcmdldHMNCgkJJHF1ZXJ5LT5pbnNlcnQoJHRoaXMtPmRiLT5xdW90ZU5hbWUoJHRoaXMtPmdldFRhYmxlKCR0YWJsZSkpKS0+Y29sdW1ucygkdGhpcy0+ZGItPnF1b3RlTmFtZShhcnJheV9rZXlzKCRjb2x1bW5zKSkpOw0KDQoJCS8vIGxpbWl0aW5nIGZhY3RvciBvbiB0aGUgYW1vdW50IG9mIHJvd3MgdG8gaW5zZXJ0IGJlZm9yZSB3ZSByZXNldCB0aGUgcXVlcnkNCgkJJGxpbWl0ID0gMzAwOw0KDQoJCS8vIHNldCB0aGUgaW5zZXJ0IHZhbHVlcw0KCQlmb3JlYWNoICgkZGF0YSBhcyAkbnIgPT4gJHZhbHVlKQ0KCQl7DQoJCQkvLyBjaGVjayB0aGUgbGltaXQNCgkJCWlmICgkbGltaXQgPD0gMSkNCgkJCXsNCgkJCQkvLyBleGVjdXRlIGFuZCByZXNldCB0aGUgcXVlcnkNCgkJCQkkdGhpcy0+ZGItPnNldFF1ZXJ5KCRxdWVyeSk7DQoJCQkJJHRoaXMtPmRiLT5leGVjdXRlKCk7DQoNCgkJCQkvLyByZXNldCBsaW1pdA0KCQkJCSRsaW1pdCA9IDMwMDsNCg0KCQkJCS8vIGdldCBhIHF1ZXJ5IG9iamVjdA0KCQkJCSRxdWVyeSA9ICR0aGlzLT5kYi0+Z2V0UXVlcnkodHJ1ZSk7DQoNCgkJCQkvLyBzZXQgdGhlIHF1ZXJ5IHRhcmdldHMNCgkJCQkkcXVlcnktPmluc2VydCgkdGhpcy0+ZGItPnF1b3RlTmFtZSgkdGhpcy0+Z2V0VGFibGUoJHRhYmxlKSkpLT5jb2x1bW5zKCR0aGlzLT5kYi0+cXVvdGVOYW1lKGFycmF5X2tleXMoJGNvbHVtbnMpKSk7DQoJCQl9DQoNCgkJCSRyb3cgPSBbXTsNCgkJCWZvcmVhY2ggKCRjb2x1bW5zIGFzICRjb2x1bW4gPT4gJGtleSkNCgkJCXsNCgkJCQlpZiAoJyAob19PKSAnICE9PSAka2V5KQ0KCQkJCXsNCgkJCQkJJHJvd1tdID0gKCRpc0FycmF5ICYmIGlzc2V0KCR2YWx1ZVska2V5XSkpID8gJHRoaXMtPnF1b3RlKCR2YWx1ZVska2V5XSkNCgkJCQkJCTogKCghJGlzQXJyYXkgJiYgaXNzZXQoJHZhbHVlLT57JGtleX0pKSA/ICR0aGlzLT5xdW90ZSgkdmFsdWUtPnska2V5fSkgOiAnJyk7DQoJCQkJfQ0KCQkJfQ0KDQoJCQkvLyBzZXQgam9vbWxhIGRlZmF1bHQgY29sdW1ucw0KCQkJaWYgKCRhZGRfY3JlYXRlZCkNCgkJCXsNCgkJCQkkcm93W10gPSAkdGhpcy0+ZGItPnF1b3RlKCRkYXRlKTsNCgkJCX0NCg0KCQkJaWYgKCRhZGRfdmVyc2lvbikNCgkJCXsNCgkJCQkkcm93W10gPSAxOw0KCQkJfQ0KDQoJCQlpZiAoJGFkZF9wdWJsaXNoZWQpDQoJCQl7DQoJCQkJJHJvd1tdID0gMTsNCgkJCX0NCg0KCQkJLy8gYWRkIHRvIHF1ZXJ5DQoJCQkkcXVlcnktPnZhbHVlcyhpbXBsb2RlKCcsJywgJHJvdykpOw0KDQoJCQkvLyBkZWNyZW1lbnQgdGhlIGxpbWl0ZXINCgkJCSRsaW1pdC0tOw0KDQoJCQkvLyBjbGVhciB0aGUgZGF0YSBmcm9tIG1lbW9yeQ0KCQkJdW5zZXQoJGRhdGFbJG5yXSk7DQoJCX0NCg0KCQkvLyBleGVjdXRlIHRoZSBmaW5hbCBxdWVyeQ0KCQkkdGhpcy0+ZGItPnNldFF1ZXJ5KCRxdWVyeSk7DQoJCSR0aGlzLT5kYi0+ZXhlY3V0ZSgpOw0KDQoJCS8vIGFsd2F5cyByZXNldCB0aGUgZGVmYXVsdCBzd2l0Y2gNCgkJJHRoaXMtPmRlZmF1bHRzKCk7DQoNCgkJcmV0dXJuIHRydWU7DQoJfQ==', '{}', '{}', '', 1, '2022-09-03 14:06:26', 32, '', 1), +(134, 'ad12ca1c-d3ce-4e7f-88c5-c6c92bdedc48', 'VDM.Interfaces.InsertInterface', 'InsertInterface', 'interface', 'Database Insert Interface\r\n\r\n@since 3.2.0', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\Interfaces.InsertInterface', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIFN3aXRjaCB0byBwcmV2ZW50L2FsbG93IGRlZmF1bHRzIGZyb20gYmVpbmcgYWRkZWQuDQoJICoNCgkgKiBAcGFyYW0gICBib29sICAgICR0cmlnZ2VyICAgICAgdG9nZ2xlIHRoZSBkZWZhdWx0cw0KCSAqDQoJICogQHJldHVybiAgdm9pZA0KCSAqIEBzaW5jZSAgIDMuMi4wDQoJICoqLw0KCXB1YmxpYyBmdW5jdGlvbiBkZWZhdWx0cyhib29sICR0cmlnZ2VyID0gdHJ1ZSk7DQoNCgkvKioNCgkgKiBJbnNlcnQgcm93cyB0byB0aGUgZGF0YWJhc2UgKHdpdGggcmVtYXBwaW5nIGFuZCBmaWx0ZXJpbmcgY29sdW1ucyBvcHRpb24pDQoJICoNCgkgKiBAcGFyYW0gICBhcnJheSAgICAkZGF0YSAgICAgIERhdGFzZXQgdG8gc3RvcmUgaW4gZGF0YWJhc2UgW2FycmF5IG9mIGFycmF5cyAoa2V5ID0+IHZhbHVlKV0NCgkgKiBAcGFyYW0gICBzdHJpbmcgICAkdGFibGUgICAgIFRoZSB0YWJsZSB3aGVyZSB0aGUgZGF0YSBpcyBiZWluZyBhZGRlZA0KCSAqIEBwYXJhbSAgIGFycmF5ICAgICRjb2x1bW5zICAgRGF0YSBjb2x1bW5zIGZvciByZW1hcHBpbmcgYW5kIGZpbHRlcmluZw0KCSAqDQoJICogQHJldHVybiAgYm9vbA0KCSAqIEBzaW5jZSAgIDMuMi4wDQoJICoqLw0KCXB1YmxpYyBmdW5jdGlvbiByb3dzKGFycmF5ICRkYXRhLCBzdHJpbmcgJHRhYmxlLCBhcnJheSAkY29sdW1ucyA9IFtdKTogYm9vbDsNCg0KCS8qKg0KCSAqIEluc2VydCBpdGVtcyB0byB0aGUgZGF0YWJhc2UgKHdpdGggcmVtYXBwaW5nIGFuZCBmaWx0ZXJpbmcgY29sdW1ucyBvcHRpb24pDQoJICoNCgkgKiBAcGFyYW0gICBhcnJheSAgICAkZGF0YSAgICAgICAgIERhdGEgdG8gc3RvcmUgaW4gZGF0YWJhc2UgKGFycmF5IG9mIG9iamVjdHMpDQoJICogQHBhcmFtICAgc3RyaW5nICAgJHRhYmxlICAgICAgICBUaGUgdGFibGUgd2hlcmUgdGhlIGRhdGEgaXMgYmVpbmcgYWRkZWQNCgkgKiBAcGFyYW0gICBhcnJheSAgICAkY29sdW1ucyAgICAgIERhdGEgY29sdW1ucyBmb3IgcmVtYXBwaW5nIGFuZCBmaWx0ZXJpbmcNCgkgKg0KCSAqIEByZXR1cm4gIGJvb2wNCgkgKiBAc2luY2UgICAzLjIuMA0KCSAqKi8NCglwdWJsaWMgZnVuY3Rpb24gaXRlbXMoYXJyYXkgJGRhdGEsIHN0cmluZyAkdGFibGUsIGFycmF5ICRjb2x1bW5zID0gW10pOiBib29sOw0KDQoJLyoqDQoJICogSW5zZXJ0IHJvdyB0byB0aGUgZGF0YWJhc2UNCgkgKg0KCSAqIEBwYXJhbSAgIGFycmF5ICAgICRkYXRhICAgICAgRGF0YXNldCB0byBzdG9yZSBpbiBkYXRhYmFzZSAoa2V5ID0+IHZhbHVlKQ0KCSAqIEBwYXJhbSAgIHN0cmluZyAgICR0YWJsZSAgICAgVGhlIHRhYmxlIHdoZXJlIHRoZSBkYXRhIGlzIGJlaW5nIGFkZGVkDQoJICoNCgkgKiBAcmV0dXJuICBib29sDQoJICogQHNpbmNlICAgMy4yLjANCgkgKiovDQoJcHVibGljIGZ1bmN0aW9uIHJvdyhhcnJheSAkZGF0YSwgc3RyaW5nICR0YWJsZSk6IGJvb2w7DQoNCgkvKioNCgkgKiBJbnNlcnQgaXRlbSB0byB0aGUgZGF0YWJhc2UNCgkgKg0KCSAqIEBwYXJhbSAgIG9iamVjdCAgICAkZGF0YSAgICAgRGF0YXNldCB0byBzdG9yZSBpbiBkYXRhYmFzZSAoa2V5ID0+IHZhbHVlKQ0KCSAqIEBwYXJhbSAgIHN0cmluZyAgICR0YWJsZSAgICAgVGhlIHRhYmxlIHdoZXJlIHRoZSBkYXRhIGlzIGJlaW5nIGFkZGVkDQoJICoNCgkgKiBAcmV0dXJuICBib29sDQoJICogQHNpbmNlICAgMy4yLjANCgkgKiovDQoJcHVibGljIGZ1bmN0aW9uIGl0ZW0ob2JqZWN0ICRkYXRhLCBzdHJpbmcgJHRhYmxlKTogYm9vbDs=', '{}', '{}', '', 1, '2022-12-10 14:06:51', 11, '', 1), +(135, 'caf33c5d-858c-4f9a-894f-ab302ec5445a', 'VDM.Interfaces.FactoryInterface', 'FactoryInterface', 'interface', 'The Container Factory Interface\r\n\r\n@since 0.0.0', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\Interfaces.FactoryInterface', 1, '{}', '{}', 'dXNlIEpvb21sYVxESVxDb250YWluZXI7', '{}', 'CS8qKg0KCSAqIEdldCBhbnkgY2xhc3MgZnJvbSB0aGUgY29udGFpbmVyDQoJICoNCgkgKiBAcGFyYW0gICBzdHJpbmcgICRrZXkgIFRoZSBjb250YWluZXIgY2xhc3Mga2V5DQoJICoNCgkgKiBAcmV0dXJuICBNaXhlZA0KCSAqIEBzaW5jZSAwLjAuMA0KCSAqLw0KCXB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gXyhzdHJpbmcgJGtleSk7DQoNCgkvKioNCgkgKiBHZXQgdGhlIGdsb2JhbCBjb250YWluZXINCgkgKg0KCSAqIEByZXR1cm4gIENvbnRhaW5lcg0KCSAqIEBzaW5jZSAwLjAuMA0KCSAqLw0KCXB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gZ2V0Q29udGFpbmVyKCk6IENvbnRhaW5lcjs=', '{}', '{}', '', 1, '2022-12-14 07:12:55', 19, '', 1), +(136, 'bfd1d6d5-56c1-4fe9-9fee-1c5910e1f5d8', 'VDM.Table', 'Table', 'final class', '[[[Component]]] Tables\r\n\r\n@since 3.2.0', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '2.0.0', 'e0f6ddbe-2a35-4537-942c-faff2ebd04f6', '', '', '', '{\"0\":\"2da6d6c4-eb29-4d69-8bc2-36d96e916adf\"}', '', '[[[NamespacePrefix]]]\\Joomla\\[[[ComponentNamespace]]].Table', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIEFsbCBhcmVhcy92aWV3cy90YWJsZXMgd2l0aCB0aGVpciBmaWVsZCBkZXRhaWxzDQoJICoNCgkgKiBAdmFyICAgICBhcnJheQ0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqKi8NCglwcm90ZWN0ZWQgYXJyYXkgJHRhYmxlcyA9ICMjI0FMTF9DT01QT05FTlRfRklFTERTIyMjOw==', '{}', '{}', '', 1, '2022-12-14 07:30:10', 20, '', 1), +(137, '2da6d6c4-eb29-4d69-8bc2-36d96e916adf', 'VDM.Interfaces.TableInterface', 'TableInterface', 'interface', 'The VDM Core Table Interface', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\Interfaces.TableInterface', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIEdldCBhbnkgdmFsdWUgZnJvbSBhIGl0ZW0vZmllbGQvY29sdW1uIG9mIGFuIGFyZWEvdmlldy90YWJsZQ0KCSAqICAgICAgICAgIEV4YW1wbGU6ICR0aGlzLT5nZXQoJ3RhYmxlX25hbWUnLCAnZmllbGRfbmFtZScsICd2YWx1ZV9rZXknKTsNCgkgKiBHZXQgYW4gaXRlbS9maWVsZC9jb2x1bW4gb2YgYW4gYXJlYS92aWV3L3RhYmxlDQoJICogICAgICAgICAgRXhhbXBsZTogJHRoaXMtPmdldCgndGFibGVfbmFtZScsICdmaWVsZF9uYW1lJyk7DQoJICogR2V0IGFsbCBpdGVtcy9maWVsZHMvY29sdW1ucyBvZiBhbiBhcmVhL3ZpZXcvdGFibGUNCgkgKiAgICAgICAgICBFeGFtcGxlOiAkdGhpcy0+Z2V0KCd0YWJsZV9uYW1lJyk7DQoJICogR2V0IGFsbCBhcmVhcy92aWV3cy90YWJsZXMgd2l0aCBhbGwgdGhlaXIgaXRlbS9maWVsZC9jb2x1bW4gZGV0YWlscw0KCSAqICAgICAgICAgIEV4YW1wbGU6ICR0aGlzLT5nZXQoJ0FsbCcpOw0KCSAqICAgICAgICAgIEV4YW1wbGU6ICR0aGlzLT5nZXQoKTsNCgkgKg0KCSAqIEBwYXJhbSAgIHN0cmluZ3xudWxsICAkdGFibGUgIFRoZSB0YWJsZQ0KCSAqIEBwYXJhbSAgIHN0cmluZ3xudWxsICAkZmllbGQgIFRoZSBmaWVsZA0KCSAqIEBwYXJhbSAgIHN0cmluZ3xudWxsICAka2V5ICAgIFRoZSB2YWx1ZSBrZXkNCgkgKg0KCSAqIEByZXR1cm4gIG1peGVkDQoJICogQHNpbmNlIDMuMi4wDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGdldCg/c3RyaW5nICR0YWJsZSA9IG51bGwsID9zdHJpbmcgJGZpZWxkID0gbnVsbCwgP3N0cmluZyAka2V5ID0gbnVsbCk7DQoNCgkvKioNCgkgKiBHZXQgdGl0bGUgZmllbGQgZnJvbSBhbiBhcmVhL3ZpZXcvdGFibGUNCgkgKg0KCSAqIEBwYXJhbSAgIHN0cmluZyAgICR0YWJsZSAgVGhlIGFyZWENCgkgKg0KCSAqIEByZXR1cm4gID9hcnJheQ0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiB0aXRsZShzdHJpbmcgJHRhYmxlKTogP2FycmF5Ow0KDQoJLyoqDQoJICogR2V0IHRpdGxlIGZpZWxkIG5hbWUNCgkgKg0KCSAqIEBwYXJhbSAgIHN0cmluZyAgICR0YWJsZSAgVGhlIGFyZWENCgkgKg0KCSAqIEByZXR1cm4gIHN0cmluZw0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiB0aXRsZU5hbWUoc3RyaW5nICR0YWJsZSk6IHN0cmluZzsNCg0KCS8qKg0KCSAqIEdldCBhbGwgdGFibGVzDQoJICoNCgkgKiBAcmV0dXJuICBhcnJheQ0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiB0YWJsZXMoKTogYXJyYXk7DQoNCgkvKioNCgkgKiBDaGVjayBpZiBhIHRhYmxlIChhbmQgZmllbGQpIGV4aXN0DQoJICoNCgkgKiBAcGFyYW0gICBzdHJpbmcgICAgICAgJHRhYmxlICBUaGUgYXJlYQ0KCSAqIEBwYXJhbSAgIHN0cmluZ3xudWxsICAkZmllbGQgIFRoZSBhcmVhDQoJICoNCgkgKiBAcmV0dXJuICBib29sDQoJICogQHNpbmNlIDMuMi4wDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGV4aXN0KHN0cmluZyAkdGFibGUsID9zdHJpbmcgJGZpZWxkID0gbnVsbCk6IGJvb2w7DQoNCgkvKioNCgkgKiBHZXQgYWxsIGZpZWxkcyBvZiBhbiBhcmVhL3ZpZXcvdGFibGUNCgkgKg0KCSAqIEBwYXJhbSAgIHN0cmluZyAgJHRhYmxlICAgICBUaGUgYXJlYQ0KCSAqIEBwYXJhbSAgIGJvb2wgICAgJGRlZmF1bHQgICBBZGQgdGhlIGRlZmF1bHQgZmllbGRzDQoJICogQHBhcmFtICAgYm9vbCAgICAkZGV0YWlscyAgIEFkZC9MZWF2ZSBmaWVsZHMgdGhlIGRldGFpbHMNCgkgKg0KCSAqIEByZXR1cm4gIGFycmF5fG51bGwgICBPbiBzdWNjZXNzIGFuIGFycmF5IG9mIGZpZWxkcw0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBmaWVsZHMoc3RyaW5nICR0YWJsZSwgYm9vbCAkZGVmYXVsdCA9IGZhbHNlLCBib29sICRkZXRhaWxzID0gZmFsc2UpOiA/YXJyYXk7', '{}', '{}', '', 1, '2022-12-14 07:42:16', 10, '', 1), +(154, '4815e1c7-a433-443d-a112-d1e03d7df84b', 'JCB.Service.Database', 'Database', 'class', 'Database Service Provider\r\n\r\n@since 3.2.0', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', 'Registry', '', '', '{\"0\":\"-1\"}', 'ServiceProviderInterface', '[[[NamespacePrefix]]]\\Joomla\\Service.Database', 1, '{}', '{}', 'dXNlIEpvb21sYVxESVxDb250YWluZXI7DQp1c2UgSm9vbWxhXERJXFNlcnZpY2VQcm92aWRlckludGVyZmFjZTs=', '{\"use_selection0\":{\"use\":\"06f8eada-d59b-441c-b287-0aea1793da5a\",\"as\":\"default\"},\"use_selection1\":{\"use\":\"524eb8f6-38d4-47dc-92ad-98b94e099ac0\",\"as\":\"default\"},\"use_selection2\":{\"use\":\"cce56585-58b0-4f72-a92c-e2635ea52d83\",\"as\":\"default\"},\"use_selection3\":{\"use\":\"92291f1f-f248-4ec0-9f2a-3d47c49eeac1\",\"as\":\"default\"}}', 'CS8qKg0KCSAqIFJlZ2lzdGVycyB0aGUgc2VydmljZSBwcm92aWRlciB3aXRoIGEgREkgY29udGFpbmVyLg0KCSAqDQoJICogQHBhcmFtICAgQ29udGFpbmVyICAkY29udGFpbmVyICBUaGUgREkgY29udGFpbmVyLg0KCSAqDQoJICogQHJldHVybiAgdm9pZA0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiByZWdpc3RlcihDb250YWluZXIgJGNvbnRhaW5lcikNCgl7DQoJCSRjb250YWluZXItPmFsaWFzKExvYWQ6OmNsYXNzLCAnTG9hZCcpDQoJCQktPnNoYXJlKCdMb2FkJywgWyR0aGlzLCAnZ2V0TG9hZCddLCB0cnVlKTsNCg0KCQkkY29udGFpbmVyLT5hbGlhcyhJbnNlcnQ6OmNsYXNzLCAnSW5zZXJ0JykNCgkJCS0+c2hhcmUoJ0luc2VydCcsIFskdGhpcywgJ2dldEluc2VydCddLCB0cnVlKTsNCg0KCQkkY29udGFpbmVyLT5hbGlhcyhVcGRhdGU6OmNsYXNzLCAnVXBkYXRlJykNCgkJCS0+c2hhcmUoJ1VwZGF0ZScsIFskdGhpcywgJ2dldFVwZGF0ZSddLCB0cnVlKTsNCg0KCQkkY29udGFpbmVyLT5hbGlhcyhEZWxldGU6OmNsYXNzLCAnRGVsZXRlJykNCgkJCS0+c2hhcmUoJ0RlbGV0ZScsIFskdGhpcywgJ2dldERlbGV0ZSddLCB0cnVlKTsNCgl9DQoNCgkvKioNCgkgKiBHZXQgdGhlIENvcmUgTG9hZCBEYXRhYmFzZQ0KCSAqDQoJICogQHBhcmFtICAgQ29udGFpbmVyICAkY29udGFpbmVyICBUaGUgREkgY29udGFpbmVyLg0KCSAqDQoJICogQHJldHVybiAgTG9hZA0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBnZXRMb2FkKENvbnRhaW5lciAkY29udGFpbmVyKTogTG9hZA0KCXsNCgkJcmV0dXJuIG5ldyBMb2FkKCk7DQoJfQ0KDQoJLyoqDQoJICogR2V0IHRoZSBDb3JlIEluc2VydCBEYXRhYmFzZQ0KCSAqDQoJICogQHBhcmFtICAgQ29udGFpbmVyICAkY29udGFpbmVyICBUaGUgREkgY29udGFpbmVyLg0KCSAqDQoJICogQHJldHVybiAgSW5zZXJ0DQoJICogQHNpbmNlIDMuMi4wDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGdldEluc2VydChDb250YWluZXIgJGNvbnRhaW5lcik6IEluc2VydA0KCXsNCgkJcmV0dXJuIG5ldyBJbnNlcnQoKTsNCgl9DQoNCgkvKioNCgkgKiBHZXQgdGhlIENvcmUgVXBkYXRlIERhdGFiYXNlDQoJICoNCgkgKiBAcGFyYW0gICBDb250YWluZXIgICRjb250YWluZXIgIFRoZSBESSBjb250YWluZXIuDQoJICoNCgkgKiBAcmV0dXJuICBVcGRhdGUNCgkgKiBAc2luY2UgMy4yLjANCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZ2V0VXBkYXRlKENvbnRhaW5lciAkY29udGFpbmVyKTogVXBkYXRlDQoJew0KCQlyZXR1cm4gbmV3IFVwZGF0ZSgpOw0KCX0NCg0KCS8qKg0KCSAqIEdldCB0aGUgQ29yZSBEZWxldGUgRGF0YWJhc2UNCgkgKg0KCSAqIEBwYXJhbSAgIENvbnRhaW5lciAgJGNvbnRhaW5lciAgVGhlIERJIGNvbnRhaW5lci4NCgkgKg0KCSAqIEByZXR1cm4gIERlbGV0ZQ0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBnZXREZWxldGUoQ29udGFpbmVyICRjb250YWluZXIpOiBEZWxldGUNCgl7DQoJCXJldHVybiBuZXcgRGVsZXRlKCk7DQoJfQ==', '{}', '{}', '', 1, '2022-12-30 21:27:57', 11, '', 1), +(379, '1198aecf-84c6-45d2-aea8-d531aa4afdfa', 'Utilities FormHelper', 'FormHelper', 'abstract class', 'Form Helper\r\n\r\n@since 3.2.0', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\Utilities.FormHelper', 1, '{}', '{}', 'dXNlIEpvb21sYVxDTVNcRm9ybVxGb3JtSGVscGVyIGFzIEpvb21sYUZvcm1IZWxwZXI7DQp1c2UgSm9vbWxhXENNU1xGb3JtXEZvcm1GaWVsZDs=', '{}', 'CS8qKg0KCSAqIGdldCB0aGUgZmllbGQgeG1sDQoJICoNCgkgKiBAcGFyYW0gICBhcnJheSAgICAgICRhdHRyaWJ1dGVzICAgVGhlIGFycmF5IG9mIGF0dHJpYnV0ZXMNCgkgKiBAcGFyYW0gICBhcnJheSAgICAgICRvcHRpb25zICAgICAgVGhlIG9wdGlvbnMgdG8gYXBwbHkgdG8gdGhlIFhNTCBlbGVtZW50DQoJICoNCgkgKiBAcmV0dXJuICBcU2ltcGxlWE1MRWxlbWVudHxudWxsDQoJICogQHNpbmNlIDMuMi4wDQoJICovDQoJcHVibGljIHN0YXRpYyBmdW5jdGlvbiB4bWwoYXJyYXkgJGF0dHJpYnV0ZXMsID9hcnJheSAkb3B0aW9ucyA9IG51bGwpOiA/XFNpbXBsZVhNTEVsZW1lbnQNCgl7DQoJCS8vIG1ha2Ugc3VyZSB3ZSBoYXZlIGF0dHJpYnV0ZXMgYW5kIGEgdHlwZSB2YWx1ZQ0KCQlpZiAoQXJyYXlIZWxwZXI6OmNoZWNrKCRhdHRyaWJ1dGVzKSkNCgkJew0KCQkJLy8gc3RhcnQgZmllbGQgeG1sDQoJCQkkWE1MID0gbmV3IFxTaW1wbGVYTUxFbGVtZW50KCc8ZmllbGQvPicpOw0KDQoJCQkvLyBsb2FkIHRoZSBhdHRyaWJ1dGVzDQoJCQlzZWxmOjphdHRyaWJ1dGVzKCRYTUwsICRhdHRyaWJ1dGVzKTsNCg0KCQkJLy8gY2hlY2sgaWYgd2UgaGF2ZSBvcHRpb25zDQoJCQlpZiAoQXJyYXlIZWxwZXI6OmNoZWNrKCRvcHRpb25zKSkNCgkJCXsNCgkJCQkvLyBsb2FkIHRoZSBvcHRpb25zDQoJCQkJc2VsZjo6b3B0aW9ucygkWE1MLCAkb3B0aW9ucyk7DQoJCQl9DQoNCgkJCS8vIHJldHVybiB0aGUgZmllbGQgeG1sDQoJCQlyZXR1cm4gJFhNTDsNCgkJfQ0KDQoJCXJldHVybiBudWxsOw0KCX0NCg0KCS8qKg0KCSAqIHhtbEFwcGVuZA0KCSAqDQoJICogQHBhcmFtICAgXFNpbXBsZVhNTEVsZW1lbnQgICAkeG1sICAgICAgVGhlIFhNTCBlbGVtZW50IHJlZmVyZW5jZSBpbiB3aGljaCB0byBpbmplY3QgYSBjb21tZW50DQoJICogQHBhcmFtICAgbWl4ZWQgICAgICAgICAgICAgICRub2RlICAgICBBIFNpbXBsZVhNTEVsZW1lbnQgbm9kZSB0byBhcHBlbmQgdG8gdGhlIFhNTCBlbGVtZW50IHJlZmVyZW5jZSwNCgkgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3IgYSBzdGRDbGFzcyBvYmplY3QgY29udGFpbmluZyBhIGNvbW1lbnQgYXR0cmlidXRlIHRvIGJlIGluamVjdGVkDQoJICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJlZm9yZSB0aGUgWE1MIG5vZGUgYW5kIGEgZmllbGRYTUwgYXR0cmlidXRlIGNvbnRhaW5pbmcgYSBTaW1wbGVYTUxFbGVtZW50DQoJICoNCgkgKiBAcmV0dXJuICB2b2lkDQoJICogQHNpbmNlIDMuMi4wDQoJICovDQoJcHVibGljIHN0YXRpYyBmdW5jdGlvbiBhcHBlbmQoXFNpbXBsZVhNTEVsZW1lbnQgJiR4bWwsICRub2RlKQ0KCXsNCgkJaWYgKCEkbm9kZSkNCgkJew0KCQkJLy8gZWxlbWVudCB3YXMgbm90IHJldHVybmVkDQoJCQlyZXR1cm47DQoJCX0NCg0KCQlpZiAoJG5vZGUgaW5zdGFuY2VvZiBcc3RkQ2xhc3MpDQoJCXsNCgkJCWlmIChwcm9wZXJ0eV9leGlzdHMoJG5vZGUsICdjb21tZW50JykpDQoJCQl7DQoJCQkJc2VsZjo6Y29tbWVudCgkeG1sLCAkbm9kZS0+Y29tbWVudCk7DQoJCQl9DQoJCQlpZiAocHJvcGVydHlfZXhpc3RzKCRub2RlLCAnZmllbGRYTUwnKSkNCgkJCXsNCgkJCQlzZWxmOjphcHBlbmQoJHhtbCwgJG5vZGUtPmZpZWxkWE1MKTsNCgkJCX0NCgkJfQ0KCQllbHNlaWYgKCRub2RlIGluc3RhbmNlb2YgXFNpbXBsZVhNTEVsZW1lbnQpDQoJCXsNCgkJCSRkb21YTUwgPSBcZG9tX2ltcG9ydF9zaW1wbGV4bWwoJHhtbCk7DQoJCQkkZG9tTm9kZSA9IFxkb21faW1wb3J0X3NpbXBsZXhtbCgkbm9kZSk7DQoJCQkkZG9tWE1MLT5hcHBlbmRDaGlsZCgkZG9tWE1MLT5vd25lckRvY3VtZW50LT5pbXBvcnROb2RlKCRkb21Ob2RlLCB0cnVlKSk7DQoJCQkkeG1sID0gXHNpbXBsZXhtbF9pbXBvcnRfZG9tKCRkb21YTUwpOw0KCQl9DQoJfQ0KDQoJLyoqDQoJICogeG1sQ29tbWVudA0KCSAqDQoJICogQHBhcmFtICAgXFNpbXBsZVhNTEVsZW1lbnQgICAkeG1sICAgICAgICBUaGUgWE1MIGVsZW1lbnQgcmVmZXJlbmNlIGluIHdoaWNoIHRvIGluamVjdCBhIGNvbW1lbnQNCgkgKiBAcGFyYW0gICBzdHJpbmcgICAgICAgICAgICAgJGNvbW1lbnQgICAgVGhlIGNvbW1lbnQgdG8gaW5qZWN0DQoJICoNCgkgKiBAcmV0dXJuICB2b2lkDQoJICogQHNpbmNlIDMuMi4wDQoJICovDQoJcHVibGljIHN0YXRpYyBmdW5jdGlvbiBjb21tZW50KFxTaW1wbGVYTUxFbGVtZW50ICYkeG1sLCBzdHJpbmcgJGNvbW1lbnQpDQoJew0KCQkkZG9tWE1MID0gXGRvbV9pbXBvcnRfc2ltcGxleG1sKCR4bWwpOw0KCQkkZG9tQ29tbWVudCA9IG5ldyBcRE9NQ29tbWVudCgkY29tbWVudCk7DQoJCSRub2RlVGFyZ2V0ID0gJGRvbVhNTC0+b3duZXJEb2N1bWVudC0+aW1wb3J0Tm9kZSgkZG9tQ29tbWVudCwgdHJ1ZSk7DQoJCSRkb21YTUwtPmFwcGVuZENoaWxkKCRub2RlVGFyZ2V0KTsNCgkJJHhtbCA9IFxzaW1wbGV4bWxfaW1wb3J0X2RvbSgkZG9tWE1MKTsNCgl9DQoNCgkvKioNCgkgKiB4bWxBZGRBdHRyaWJ1dGVzDQoJICoNCgkgKiBAcGFyYW0gICBcU2ltcGxlWE1MRWxlbWVudCAgICR4bWwgICAgICAgICAgVGhlIFhNTCBlbGVtZW50IHJlZmVyZW5jZSBpbiB3aGljaCB0byBpbmplY3QgYSBjb21tZW50DQoJICogQHBhcmFtICAgYXJyYXkgICAgICAgICAgICAgICRhdHRyaWJ1dGVzICAgVGhlIGF0dHJpYnV0ZXMgdG8gYXBwbHkgdG8gdGhlIFhNTCBlbGVtZW50DQoJICoNCgkgKiBAcmV0dXJuICB2b2lkDQoJICogQHNpbmNlIDMuMi4wDQoJICovDQoJcHVibGljIHN0YXRpYyBmdW5jdGlvbiBhdHRyaWJ1dGVzKFxTaW1wbGVYTUxFbGVtZW50ICYkeG1sLCBhcnJheSAkYXR0cmlidXRlcyA9IFtdKQ0KCXsNCgkJZm9yZWFjaCAoJGF0dHJpYnV0ZXMgYXMgJGtleSA9PiAkdmFsdWUpDQoJCXsNCgkJCSR4bWwtPmFkZEF0dHJpYnV0ZSgka2V5LCAkdmFsdWUgPz8gJycpOw0KCQl9DQoJfQ0KDQoJLyoqDQoJICogeG1sQWRkT3B0aW9ucw0KCSAqDQoJICogQHBhcmFtICAgXFNpbXBsZVhNTEVsZW1lbnQgICAkeG1sICAgICAgICAgIFRoZSBYTUwgZWxlbWVudCByZWZlcmVuY2UgaW4gd2hpY2ggdG8gaW5qZWN0IGEgY29tbWVudA0KCSAqIEBwYXJhbSAgIGFycmF5ICAgICAgICAgICAgICAkb3B0aW9ucyAgICAgIFRoZSBvcHRpb25zIHRvIGFwcGx5IHRvIHRoZSBYTUwgZWxlbWVudA0KCSAqDQoJICogQHJldHVybiAgdm9pZA0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gb3B0aW9ucyhcU2ltcGxlWE1MRWxlbWVudCAmJHhtbCwgYXJyYXkgJG9wdGlvbnMgPSBbXSkNCgl7DQoJCWZvcmVhY2ggKCRvcHRpb25zIGFzICRrZXkgPT4gJHZhbHVlKQ0KCQl7DQoJCQkkYWRkT3B0aW9uID0gJHhtbC0+YWRkQ2hpbGQoJ29wdGlvbicpOw0KCQkJJGFkZE9wdGlvbi0+YWRkQXR0cmlidXRlKCd2YWx1ZScsICRrZXkgPz8gJycpOw0KCQkJJGFkZE9wdGlvbltdID0gJHZhbHVlOw0KCQl9DQoJfQ0KDQoJLyoqDQoJICogZ2V0IHRoZSBmaWVsZCBvYmplY3QNCgkgKg0KCSAqIEBwYXJhbSAgIGFycmF5ICAgICAgJGF0dHJpYnV0ZXMgICBUaGUgYXJyYXkgb2YgYXR0cmlidXRlcw0KCSAqIEBwYXJhbSAgIHN0cmluZyAgICAgJGRlZmF1bHQgICAgICBUaGUgZGVmYXVsdCBvZiB0aGUgZmllbGQNCgkgKiBAcGFyYW0gICBhcnJheSAgICAgICRvcHRpb25zICAgICAgVGhlIG9wdGlvbnMgdG8gYXBwbHkgdG8gdGhlIFhNTCBlbGVtZW50DQoJICoNCgkgKiBAcmV0dXJuICBGb3JtRmllbGR8bnVsbA0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gZmllbGQoYXJyYXkgJGF0dHJpYnV0ZXMsIHN0cmluZyAkZGVmYXVsdCA9ICcnLCA/YXJyYXkgJG9wdGlvbnMgPSBudWxsKTogP0Zvcm1GaWVsZA0KCXsNCgkJLy8gbWFrZSBzdXJlIHdlIGhhdmUgYXR0cmlidXRlcyBhbmQgYSB0eXBlIHZhbHVlDQoJCWlmIChBcnJheUhlbHBlcjo6Y2hlY2soJGF0dHJpYnV0ZXMpICYmIGlzc2V0KCRhdHRyaWJ1dGVzWyd0eXBlJ10pKQ0KCQl7DQoJCQkvLyBnZXQgZmllbGQgdHlwZQ0KCQkJaWYgKCgkZmllbGQgPSBKb29tbGFGb3JtSGVscGVyOjpsb2FkRmllbGRUeXBlKCRhdHRyaWJ1dGVzWyd0eXBlJ10sIHRydWUpKSA9PT0gZmFsc2UpDQoJCQl7DQoJCQkJcmV0dXJuIG51bGw7DQoJCQl9DQoNCgkJCS8vIGdldCBmaWVsZCB4bWwNCgkJCSRYTUwgPSBzZWxmOjp4bWwoJGF0dHJpYnV0ZXMsICRvcHRpb25zKTsNCg0KCQkJLy8gc2V0dXAgdGhlIGZpZWxkDQoJCQkkZmllbGQtPnNldHVwKCRYTUwsICRkZWZhdWx0KTsNCg0KCQkJLy8gcmV0dXJuIHRoZSBmaWVsZCBvYmplY3QNCgkJCXJldHVybiAkZmllbGQ7DQoJCX0NCg0KCQlyZXR1cm4gbnVsbDsNCgl9', '{\"load_selection0\":{\"load\":\"0a59c65c-9daf-4bc9-baf4-e063ff9e6a8a\"}}', '{}', '', 1, '2023-03-28 17:12:21', 11, '', 1), +(382, '7c1fb50f-8fb1-4627-8705-6fedf7182ca5', 'VDM.Model.Upsert', 'Upsert', 'final class', 'Power Model Update or Insert\r\n\r\n@since 3.2.0', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '584747d1-3a86-453d-b7a3-a2219de8d777', 'Abstraction\\Model', '', '', '{\"0\":\"8aef58c1-3f70-4bd4-b9e4-3f29fcd41cff\"}', '', '[[[NamespacePrefix]]]\\Joomla\\Model.Upsert', '', '{}', '{}', '', '{\"use_selection0\":{\"use\":\"1f28cb53-60d9-4db1-b517-3c7dc6b429ef\",\"as\":\"default\"},\"use_selection1\":{\"use\":\"0a59c65c-9daf-4bc9-baf4-e063ff9e6a8a\",\"as\":\"default\"},\"use_selection2\":{\"use\":\"91004529-94a9-4590-b842-e7c6b624ecf5\",\"as\":\"default\"}}', 'CS8qKg0KCSAqIE1vZGVsIHRoZSB2YWx1ZQ0KCSAqICAgICAgICAgIEV4YW1wbGU6ICR0aGlzLT52YWx1ZSh2YWx1ZSwgJ2ZpZWxkX2tleScsICd0YWJsZV9uYW1lJyk7DQoJICoNCgkgKiBAcGFyYW0gICBtaXhlZCAgICAgICAgICAgJHZhbHVlICAgIFRoZSB2YWx1ZSB0byBtb2RlbA0KCSAqIEBwYXJhbSAgIHN0cmluZyAgICAgICAgICAkZmllbGQgICAgVGhlIGZpZWxkIGtleQ0KCSAqIEBwYXJhbSAgIHN0cmluZ3xudWxsICAgICAkdGFibGUgICAgVGhlIHRhYmxlDQoJICoNCgkgKiBAcmV0dXJuICBtaXhlZA0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiB2YWx1ZSgkdmFsdWUsIHN0cmluZyAkZmllbGQsID9zdHJpbmcgJHRhYmxlID0gbnVsbCkNCgl7DQoJCS8vIHNldCB0aGUgdGFibGUgbmFtZQ0KCQlpZiAoZW1wdHkoJHRhYmxlKSkNCgkJew0KCQkJJHRhYmxlID0gJHRoaXMtPmdldFRhYmxlKCk7DQoJCX0NCg0KCQkvLyBjaGVjayBpZiB0aGlzIGlzIGEgdmFsaWQgdGFibGUNCgkJaWYgKCgkc3RvcmUgPSAkdGhpcy0+dGFibGUtPmdldCgkdGFibGUsICRmaWVsZCwgJ3N0b3JlJykpICE9PSBudWxsKQ0KCQl7DQoJCQkvLyBvcGVuIHRoZSB2YWx1ZSBiYXNlZCBvbiB0aGUgc3RvcmUgbWV0aG9kDQoJCQlzd2l0Y2goJHN0b3JlKQ0KCQkJew0KCQkJCWNhc2UgJ2Jhc2U2NCc6DQoJCQkJCSR2YWx1ZSA9IGJhc2U2NF9lbmNvZGUoKHN0cmluZykgJHZhbHVlKTsNCgkJCQlicmVhazsNCgkJCQljYXNlICdqc29uJzoNCgkJCQkJJHZhbHVlID0ganNvbl9lbmNvZGUoJHZhbHVlLCAgSlNPTl9GT1JDRV9PQkpFQ1QpOw0KCQkJCWJyZWFrOw0KCQkJfQ0KCQl9DQoNCgkJcmV0dXJuICR2YWx1ZTsNCgl9DQoNCgkvKioNCgkgKiBWYWxpZGF0ZSBiZWZvcmUgdGhlIHZhbHVlIGlzIG1vZGVsbGVkDQoJICoNCgkgKiBAcGFyYW0gICBtaXhlZCAgICAgICAgICR2YWx1ZSAgIFRoZSBmaWVsZCB2YWx1ZQ0KCSAqIEBwYXJhbSAgIHN0cmluZ3xudWxsICAgJGZpZWxkICAgICBUaGUgZmllbGQga2V5DQoJICogQHBhcmFtICAgc3RyaW5nfG51bGwgICAkdGFibGUgICBUaGUgdGFibGUNCgkgKg0KCSAqIEByZXR1cm4gIGJvb2wNCgkgKiBAc2luY2UgMy4yLjANCgkgKi8NCglwcm90ZWN0ZWQgZnVuY3Rpb24gdmFsaWRhdGVCZWZvcmUoJiR2YWx1ZSwgP3N0cmluZyAkZmllbGQgPSBudWxsLCA/c3RyaW5nICR0YWJsZSA9IG51bGwpOiBib29sDQoJew0KCQkvLyBjaGVjayB2YWx1ZXMNCgkJaWYgKFN0cmluZ0hlbHBlcjo6Y2hlY2soJHZhbHVlKSB8fCBBcnJheUhlbHBlcjo6Y2hlY2soJHZhbHVlLCB0cnVlKSAgfHwgT2JqZWN0SGVscGVyOjpjaGVjaygkdmFsdWUpIHx8IGlzX251bWVyaWMoJHZhbHVlKSkNCgkJew0KCQkJcmV0dXJuIHRydWU7DQoJCX0NCgkJLy8gY2hlY2sgaWYgd2UgYWxsb3cgZW1wdHkNCgkJZWxzZWlmICgkdGhpcy0+Z2V0QWxsb3dFbXB0eSgpICYmIGVtcHR5KCR2YWx1ZSkpDQoJCXsNCgkJCXJldHVybiB0cnVlOw0KCQl9DQoJCS8vIHJlbW92ZSBlbXB0eSB2YWx1ZXMNCgkJcmV0dXJuIGZhbHNlOw0KCX0NCg0KCS8qKg0KCSAqIFZhbGlkYXRlIGFmdGVyIHRoZSB2YWx1ZSBpcyBtb2RlbGxlZA0KCSAqDQoJICogQHBhcmFtICAgbWl4ZWQgICAgICAgICAkdmFsdWUgICBUaGUgZmllbGQgdmFsdWUNCgkgKiBAcGFyYW0gICBzdHJpbmd8bnVsbCAgICRmaWVsZCAgICAgVGhlIGZpZWxkIGtleQ0KCSAqIEBwYXJhbSAgIHN0cmluZ3xudWxsICAgJHRhYmxlICAgVGhlIHRhYmxlDQoJICoNCgkgKiBAcmV0dXJuICBib29sDQoJICogQHNpbmNlIDMuMi4wDQoJICovDQoJcHJvdGVjdGVkIGZ1bmN0aW9uIHZhbGlkYXRlQWZ0ZXIoJiR2YWx1ZSwgP3N0cmluZyAkZmllbGQgPSBudWxsLCA/c3RyaW5nICR0YWJsZSA9IG51bGwpOiBib29sDQoJew0KCQkvLyBvbmx5IHN0cmluZ3Mgb3IgbnVtYmVycyBhbGxvd2VkDQoJCWlmIChTdHJpbmdIZWxwZXI6OmNoZWNrKCR2YWx1ZSkgfHwgaXNfbnVtZXJpYygkdmFsdWUpKQ0KCQl7DQoJCQlyZXR1cm4gdHJ1ZTsNCgkJfQ0KCQkvLyBjaGVjayBpZiB3ZSBhbGxvdyBlbXB0eQ0KCQllbHNlaWYgKCR0aGlzLT5nZXRBbGxvd0VtcHR5KCkgJiYgZW1wdHkoJHZhbHVlKSkNCgkJew0KCQkJcmV0dXJuIHRydWU7DQoJCX0NCgkJLy8gcmVtb3ZlIGVtcHR5IHZhbHVlcw0KCQlyZXR1cm4gZmFsc2U7DQoJfQ==', '{}', '{}', '', 1, '2023-04-01 02:49:38', 32, '', 1), +(383, '7179fde6-1e51-4b51-8545-7ca18f74a0f4', 'VDM.Interfaces.UpdateInterface', 'UpdateInterface', 'interface', 'Database Update Interface\r\n\r\n@since 3.2.0', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\Interfaces.UpdateInterface', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIFVwZGF0ZSByb3dzIGluIHRoZSBkYXRhYmFzZSAod2l0aCByZW1hcHBpbmcgYW5kIGZpbHRlcmluZyBjb2x1bW5zIG9wdGlvbikNCgkgKg0KCSAqIEBwYXJhbSAgIGFycmF5ICAgICRkYXRhICAgICAgRGF0YXNldCB0byB1cGRhdGUgaW4gZGF0YWJhc2UgW2FycmF5IG9mIGFycmF5cyAoa2V5ID0+IHZhbHVlKV0NCgkgKiBAcGFyYW0gICBzdHJpbmcgICAka2V5ICAgICAgIERhdGFzZXQga2V5IGNvbHVtbiB0byB1c2UgaW4gdXBkYXRpbmcgdGhlIHZhbHVlcyBpbiB0aGUgRGF0YWJhc2UNCgkgKiBAcGFyYW0gICBzdHJpbmcgICAkdGFibGUgICAgIFRoZSB0YWJsZSB3aGVyZSB0aGUgZGF0YSBpcyBiZWluZyB1cGRhdGVkDQoJICogQHBhcmFtICAgYXJyYXkgICAgJGNvbHVtbnMgICBEYXRhIGNvbHVtbnMgZm9yIHJlbWFwcGluZyBhbmQgZmlsdGVyaW5nDQoJICoNCgkgKiBAcmV0dXJuICBib29sDQoJICogQHNpbmNlICAgMy4yLjANCgkgKiovDQoJcHVibGljIGZ1bmN0aW9uIHJvd3MoYXJyYXkgJGRhdGEsIHN0cmluZyAka2V5LCBzdHJpbmcgJHRhYmxlLCBhcnJheSAkY29sdW1ucyA9IFtdKTogYm9vbDsNCg0KCS8qKg0KCSAqIFVwZGF0ZSBpdGVtcyBpbiB0aGUgZGF0YWJhc2UgKHdpdGggcmVtYXBwaW5nIGFuZCBmaWx0ZXJpbmcgY29sdW1ucyBvcHRpb24pDQoJICoNCgkgKiBAcGFyYW0gICBhcnJheSAgICAkZGF0YSAgICAgIERhdGEgdG8gdXBkYXRlZCBpbiBkYXRhYmFzZSAoYXJyYXkgb2Ygb2JqZWN0cykNCgkgKiBAcGFyYW0gICBzdHJpbmcgICAka2V5ICAgICAgIERhdGFzZXQga2V5IGNvbHVtbiB0byB1c2UgaW4gdXBkYXRpbmcgdGhlIHZhbHVlcyBpbiB0aGUgRGF0YWJhc2UNCgkgKiBAcGFyYW0gICBzdHJpbmcgICAkdGFibGUgICAgIFRoZSB0YWJsZSB3aGVyZSB0aGUgZGF0YSBpcyBiZWluZyB1cGRhdGUNCgkgKiBAcGFyYW0gICBhcnJheSAgICAkY29sdW1ucyAgIERhdGEgY29sdW1ucyBmb3IgcmVtYXBwaW5nIGFuZCBmaWx0ZXJpbmcNCgkgKg0KCSAqIEByZXR1cm4gIGJvb2wNCgkgKiBAc2luY2UgICAzLjIuMA0KCSAqKi8NCglwdWJsaWMgZnVuY3Rpb24gaXRlbXMoYXJyYXkgJGRhdGEsIHN0cmluZyAka2V5LCBzdHJpbmcgJHRhYmxlLCBhcnJheSAkY29sdW1ucyA9IFtdKTogYm9vbDsNCg0KCS8qKg0KCSAqIFVwZGF0ZSByb3cgaW4gdGhlIGRhdGFiYXNlDQoJICoNCgkgKiBAcGFyYW0gICBhcnJheSAgICAkZGF0YSAgICAgIERhdGFzZXQgdG8gdXBkYXRlIGluIGRhdGFiYXNlIChrZXkgPT4gdmFsdWUpDQoJICogQHBhcmFtICAgc3RyaW5nICAgJGtleSAgICAgICBEYXRhc2V0IGtleSBjb2x1bW4gdG8gdXNlIGluIHVwZGF0aW5nIHRoZSB2YWx1ZXMgaW4gdGhlIERhdGFiYXNlDQoJICogQHBhcmFtICAgc3RyaW5nICAgJHRhYmxlICAgICBUaGUgdGFibGUgd2hlcmUgdGhlIGRhdGEgaXMgYmVpbmcgdXBkYXRlZA0KCSAqDQoJICogQHJldHVybiAgYm9vbA0KCSAqIEBzaW5jZSAgIDMuMi4wDQoJICoqLw0KCXB1YmxpYyBmdW5jdGlvbiByb3coYXJyYXkgJGRhdGEsIHN0cmluZyAka2V5LCBzdHJpbmcgJHRhYmxlKTogYm9vbDsNCg0KCS8qKg0KCSAqIFVwZGF0ZSBpdGVtIGluIHRoZSBkYXRhYmFzZQ0KCSAqDQoJICogQHBhcmFtICAgb2JqZWN0ICAgJGRhdGEgICAgICBEYXRhc2V0IHRvIHVwZGF0ZSBpbiBkYXRhYmFzZSAoa2V5ID0+IHZhbHVlKQ0KCSAqIEBwYXJhbSAgIHN0cmluZyAgICRrZXkgICAgICAgRGF0YXNldCBrZXkgY29sdW1uIHRvIHVzZSBpbiB1cGRhdGluZyB0aGUgdmFsdWVzIGluIHRoZSBEYXRhYmFzZQ0KCSAqIEBwYXJhbSAgIHN0cmluZyAgICR0YWJsZSAgICAgVGhlIHRhYmxlIHdoZXJlIHRoZSBkYXRhIGlzIGJlaW5nIHVwZGF0ZWQNCgkgKg0KCSAqIEByZXR1cm4gIGJvb2wNCgkgKiBAc2luY2UgICAzLjIuMA0KCSAqKi8NCglwdWJsaWMgZnVuY3Rpb24gaXRlbShvYmplY3QgJGRhdGEsIHN0cmluZyAka2V5LCBzdHJpbmcgJHRhYmxlKTogYm9vbDs=', '{}', '{}', '', 1, '2023-04-01 19:54:56', 8, '', 1), +(384, 'cce56585-58b0-4f72-a92c-e2635ea52d83', 'VDM.Database.Update', 'Update', 'final class', 'Database Update Class\r\n\r\n@since 3.2.0', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '6cbef8f8-4813-48e3-b05a-65e1aea95171', '', '', '', '{\"0\":\"7179fde6-1e51-4b51-8545-7ca18f74a0f4\"}', '', '[[[NamespacePrefix]]]\\Joomla\\Database.Update', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIFVwZGF0ZSByb3dzIGluIHRoZSBkYXRhYmFzZSAod2l0aCByZW1hcHBpbmcgYW5kIGZpbHRlcmluZyBjb2x1bW5zIG9wdGlvbikNCgkgKg0KCSAqIEBwYXJhbSAgIGFycmF5ICAgICRkYXRhICAgICAgRGF0YXNldCB0byB1cGRhdGUgaW4gZGF0YWJhc2UgW2FycmF5IG9mIGFycmF5cyAoa2V5ID0+IHZhbHVlKV0NCgkgKiBAcGFyYW0gICBzdHJpbmcgICAka2V5ICAgICAgIERhdGFzZXQga2V5IGNvbHVtbiB0byB1c2UgaW4gdXBkYXRpbmcgdGhlIHZhbHVlcyBpbiB0aGUgRGF0YWJhc2UNCgkgKiBAcGFyYW0gICBzdHJpbmcgICAkdGFibGUgICAgIFRoZSB0YWJsZSB3aGVyZSB0aGUgZGF0YSBpcyBiZWluZyB1cGRhdGVkDQoJICogQHBhcmFtICAgYXJyYXkgICAgJGNvbHVtbnMgICBEYXRhIGNvbHVtbnMgZm9yIHJlbWFwcGluZyBhbmQgZmlsdGVyaW5nDQoJICoNCgkgKiBAcmV0dXJuICBib29sDQoJICogQHNpbmNlICAgMy4yLjANCgkgKiovDQoJcHVibGljIGZ1bmN0aW9uIHJvd3MoYXJyYXkgJGRhdGEsIHN0cmluZyAka2V5LCBzdHJpbmcgJHRhYmxlLCBhcnJheSAkY29sdW1ucyA9IFtdKTogYm9vbA0KCXsNCgkJLy8gc2V0IHRoZSB1cGRhdGUgY29sdW1ucw0KCQlpZiAoJGRhdGEgPT09IFtdIHx8IHN0cmxlbigka2V5KSA9PSAwKQ0KCQl7DQoJCQlyZXR1cm4gZmFsc2U7DQoJCX0NCg0KCQkvLyBzZXQgdGhlIHVwZGF0ZSB2YWx1ZXMNCgkJZm9yZWFjaCAoJGRhdGEgYXMgJHZhbHVlcykNCgkJew0KCQkJaWYgKCRjb2x1bW5zICE9PSBbXSkNCgkJCXsNCgkJCQkvLyBsb2FkIG9ubHkgd2hhdCBpcyBwYXJ0IG9mIHRoZSBjb2x1bW5zIHNldA0KCQkJCSRyb3cgPSBbXTsNCgkJCQlmb3JlYWNoICgkY29sdW1ucyBhcyAkY29sdW1uID0+ICRrZXlfKQ0KCQkJCXsNCgkJCQkJaWYgKGlzc2V0KCR2YWx1ZXNbJGtleV9dKSkNCgkJCQkJew0KCQkJCQkJJHJvd1skY29sdW1uXSA9ICR2YWx1ZXNbJGtleV9dOw0KCQkJCQl9DQoJCQkJfQ0KDQoJCQkJLy8gdXBkYXRlIHRoZSByb3cNCgkJCQkkdGhpcy0+cm93KCRyb3csICRrZXksICR0YWJsZSk7DQoJCQl9DQoJCQllbHNlDQoJCQl7DQoJCQkJLy8gdXBkYXRlIHRoZSByb3cNCgkJCQkkdGhpcy0+cm93KChhcnJheSkgJHZhbHVlcywgJGtleSwgJHRhYmxlKTsNCgkJCX0NCgkJfQ0KDQoJCXJldHVybiB0cnVlOw0KCX0NCg0KCS8qKg0KCSAqIFVwZGF0ZSBpdGVtcyBpbiB0aGUgZGF0YWJhc2UgKHdpdGggcmVtYXBwaW5nIGFuZCBmaWx0ZXJpbmcgY29sdW1ucyBvcHRpb24pDQoJICoNCgkgKiBAcGFyYW0gICBhcnJheSAgICAkZGF0YSAgICAgIERhdGEgdG8gdXBkYXRlZCBpbiBkYXRhYmFzZSAoYXJyYXkgb2Ygb2JqZWN0cykNCgkgKiBAcGFyYW0gICBzdHJpbmcgICAka2V5ICAgICAgIERhdGFzZXQga2V5IGNvbHVtbiB0byB1c2UgaW4gdXBkYXRpbmcgdGhlIHZhbHVlcyBpbiB0aGUgRGF0YWJhc2UNCgkgKiBAcGFyYW0gICBzdHJpbmcgICAkdGFibGUgICAgIFRoZSB0YWJsZSB3aGVyZSB0aGUgZGF0YSBpcyBiZWluZyB1cGRhdGUNCgkgKiBAcGFyYW0gICBhcnJheSAgICAkY29sdW1ucyAgIERhdGEgY29sdW1ucyBmb3IgcmVtYXBwaW5nIGFuZCBmaWx0ZXJpbmcNCgkgKg0KCSAqIEByZXR1cm4gIGJvb2wNCgkgKiBAc2luY2UgICAzLjIuMA0KCSAqKi8NCglwdWJsaWMgZnVuY3Rpb24gaXRlbXMoYXJyYXkgJGRhdGEsIHN0cmluZyAka2V5LCBzdHJpbmcgJHRhYmxlLCBhcnJheSAkY29sdW1ucyA9IFtdKTogYm9vbA0KCXsNCgkJLy8gc2V0IHRoZSB1cGRhdGUgY29sdW1ucw0KCQlpZiAoJGRhdGEgPT09IFtdIHx8IHN0cmxlbigka2V5KSA9PSAwKQ0KCQl7DQoJCQlyZXR1cm4gZmFsc2U7DQoJCX0NCg0KCQkvLyBzZXQgdGhlIHVwZGF0ZSB2YWx1ZXMNCgkJZm9yZWFjaCAoJGRhdGEgYXMgJG5yID0+ICR2YWx1ZXMpDQoJCXsNCgkJCWlmICgkY29sdW1ucyAhPT0gW10pDQoJCQl7DQoJCQkJLy8gbG9hZCBvbmx5IHdoYXQgaXMgcGFydCBvZiB0aGUgY29sdW1ucyBzZXQNCgkJCQkkcm93ID0gW107DQoJCQkJZm9yZWFjaCAoJGNvbHVtbnMgYXMgJGNvbHVtbiA9PiAka2V5XykNCgkJCQl7DQoJCQkJCWlmIChpc3NldCgkdmFsdWVzLT57JGtleV99KSkNCgkJCQkJew0KCQkJCQkJJHJvd1skY29sdW1uXSA9ICR2YWx1ZXMtPnska2V5X307DQoJCQkJCX0NCgkJCQl9DQoNCgkJCQkvLyB1cGRhdGUgdGhlIHJvdw0KCQkJCSR0aGlzLT5yb3coJHJvdywgJGtleSwgJHRhYmxlKTsNCgkJCX0NCgkJCWVsc2UNCgkJCXsNCgkJCQkvLyB1cGRhdGUgdGhlIHJvdw0KCQkJCSR0aGlzLT5yb3coKGFycmF5KSAkdmFsdWVzLCAka2V5LCAkdGFibGUpOw0KCQkJfQ0KCQl9DQoNCgkJcmV0dXJuIHRydWU7DQoJfQ0KDQoJLyoqDQoJICogVXBkYXRlIHJvdyBpbiB0aGUgZGF0YWJhc2UNCgkgKg0KCSAqIEBwYXJhbSAgIGFycmF5ICAgICRkYXRhICAgICAgRGF0YXNldCB0byB1cGRhdGUgaW4gZGF0YWJhc2UgKGtleSA9PiB2YWx1ZSkNCgkgKiBAcGFyYW0gICBzdHJpbmcgICAka2V5ICAgICAgIERhdGFzZXQga2V5IGNvbHVtbiB0byB1c2UgaW4gdXBkYXRpbmcgdGhlIHZhbHVlcyBpbiB0aGUgRGF0YWJhc2UNCgkgKiBAcGFyYW0gICBzdHJpbmcgICAkdGFibGUgICAgIFRoZSB0YWJsZSB3aGVyZSB0aGUgZGF0YSBpcyBiZWluZyB1cGRhdGVkDQoJICoNCgkgKiBAcmV0dXJuICBib29sDQoJICogQHNpbmNlICAgMy4yLjANCgkgKiovDQoJcHVibGljIGZ1bmN0aW9uIHJvdyhhcnJheSAkZGF0YSwgc3RyaW5nICRrZXksIHN0cmluZyAkdGFibGUpOiBib29sDQoJew0KCQkvLyBzZXQgdGhlIHVwZGF0ZSBjb2x1bW5zDQoJCWlmICgkZGF0YSA9PT0gW10gfHwgc3RybGVuKCRrZXkpID09IDApDQoJCXsNCgkJCXJldHVybiBmYWxzZTsNCgkJfQ0KDQoJCS8vIGdldCBhIHF1ZXJ5IG9iamVjdA0KCQkkcXVlcnkgPSAkdGhpcy0+ZGItPmdldFF1ZXJ5KHRydWUpOw0KDQoJCS8vIHNldCB0aGUgcXVlcnkgdGFyZ2V0cw0KCQkkcXVlcnktPnVwZGF0ZSgkdGhpcy0+ZGItPnF1b3RlTmFtZSgkdGhpcy0+Z2V0VGFibGUoJHRhYmxlKSkpOw0KDQoJCS8vIHNldCB0aGUgdXBkYXRlIHZhbHVlcw0KCQkka2V5XyA9IG51bGw7DQoJCWZvcmVhY2ggKCRkYXRhIGFzICRjb2x1bW4gPT4gJHZhbHVlKQ0KCQl7DQoJCQlpZiAoJGNvbHVtbiA9PT0gJGtleSkNCgkJCXsNCgkJCQkka2V5XyA9ICR2YWx1ZTsNCgkJCX0NCgkJCWVsc2UNCgkJCXsNCgkJCQkkcXVlcnktPnNldCgkdGhpcy0+ZGItPnF1b3RlTmFtZSgkY29sdW1uKSAuICcgPSAnIC4gJHRoaXMtPnF1b3RlKCR2YWx1ZSkpOw0KCQkJfQ0KCQl9DQoNCgkJLy8gYWRkIHRoZSBrZXkgY29uZGl0aW9uDQoJCWlmICgka2V5XyAhPT0gbnVsbCkNCgkJew0KCQkJJHF1ZXJ5LT53aGVyZSgkdGhpcy0+ZGItPnF1b3RlTmFtZSgka2V5KSAuICcgPSAnIC4gJHRoaXMtPnF1b3RlKCRrZXlfKSk7DQoNCgkJCS8vIGV4ZWN1dGUgdGhlIGZpbmFsIHF1ZXJ5DQoJCQkkdGhpcy0+ZGItPnNldFF1ZXJ5KCRxdWVyeSk7DQoNCgkJCXJldHVybiAkdGhpcy0+ZGItPmV4ZWN1dGUoKTsNCgkJfQ0KDQoJCXJldHVybiBmYWxzZTsNCgl9DQoNCgkvKioNCgkgKiBVcGRhdGUgaXRlbSBpbiB0aGUgZGF0YWJhc2UNCgkgKg0KCSAqIEBwYXJhbSAgIG9iamVjdCAgICRkYXRhICAgICAgRGF0YXNldCB0byB1cGRhdGUgaW4gZGF0YWJhc2UgKGtleSA9PiB2YWx1ZSkNCgkgKiBAcGFyYW0gICBzdHJpbmcgICAka2V5ICAgICAgIERhdGFzZXQga2V5IGNvbHVtbiB0byB1c2UgaW4gdXBkYXRpbmcgdGhlIHZhbHVlcyBpbiB0aGUgRGF0YWJhc2UNCgkgKiBAcGFyYW0gICBzdHJpbmcgICAkdGFibGUgICAgIFRoZSB0YWJsZSB3aGVyZSB0aGUgZGF0YSBpcyBiZWluZyB1cGRhdGVkDQoJICoNCgkgKiBAcmV0dXJuICBib29sDQoJICogQHNpbmNlICAgMy4yLjANCgkgKiovDQoJcHVibGljIGZ1bmN0aW9uIGl0ZW0ob2JqZWN0ICRkYXRhLCBzdHJpbmcgJGtleSwgc3RyaW5nICR0YWJsZSk6IGJvb2wNCgl7DQoJCS8vIGNvbnZlcnQgdG8gYW4gYXJyYXkNCgkJcmV0dXJuICR0aGlzLT5yb3coKGFycmF5KSBnZXRfb2JqZWN0X3ZhcnMoJGRhdGEpLCAka2V5LCAkdGFibGUpOw0KCX0=', '{}', '{}', '', 1, '2023-04-01 20:02:28', 21, '', 1), +(435, 'e0f6ddbe-2a35-4537-942c-faff2ebd04f6', 'VDM.Abstraction.BaseTable', 'BaseTable', 'abstract class', 'Base Table\r\n\r\n@since 3.2.0', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '{\"0\":\"2da6d6c4-eb29-4d69-8bc2-36d96e916adf\"}', '', '[[[NamespacePrefix]]]\\Joomla\\Abstraction.BaseTable', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIEFsbCBhcmVhcy92aWV3cy90YWJsZXMgd2l0aCB0aGVpciBmaWVsZCBkZXRhaWxzDQoJICoNCgkgKiBAdmFyICAgICBhcnJheQ0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqKi8NCglwcm90ZWN0ZWQgYXJyYXkgJHRhYmxlczsNCg0KCS8qKg0KCSAqIEFsbCBkZWZhdWx0IGZpZWxkcw0KCSAqDQoJICogQHZhciAgICAgYXJyYXkNCgkgKiBAc2luY2UgMy4yLjENCgkgKiovDQoJcHJvdGVjdGVkIGFycmF5ICRkZWZhdWx0cyA9IFsNCgkJJ2lkJyA9PiBbDQoJCQknb3JkZXInID0+IC0xLA0KCQkJJ25hbWUnID0+ICdpZCcsDQoJCQknbGFiZWwnID0+ICdJRCcsDQoJCQkndHlwZScgPT4gJ3RleHQnLA0KCQkJJ3RpdGxlJyA9PiBmYWxzZSwNCgkJCSdsaXN0JyA9PiBOVUxMLA0KCQkJJ3N0b3JlJyA9PiBOVUxMLA0KCQkJJ3RhYl9uYW1lJyA9PiBOVUxMLA0KCQkJJ2RiJyA9PiBbDQoJCQkJJ3R5cGUnID0+ICdJTlQoMTEpJywNCgkJCQknZGVmYXVsdCcgPT4gJ0VNUFRZJywNCgkJCQknYXV0b19pbmNyZW1lbnQnID0+IHRydWUsDQoJCQkJJ3ByaW1hcnlfa2V5JyA9PiB0cnVlLA0KCQkJCSdudWxsX3N3aXRjaCcgPT4gJ05PVCBOVUxMJw0KCQkJXQ0KCQldLA0KCQknYXNzZXRfaWQnID0+IFsNCgkJCSduYW1lJyA9PiAnYXNzZXRfaWQnLA0KCQkJJ2xhYmVsJyA9PiBOVUxMLA0KCQkJJ3R5cGUnID0+IE5VTEwsDQoJCQkndGl0bGUnID0+IGZhbHNlLA0KCQkJJ2xpc3QnID0+IE5VTEwsDQoJCQknc3RvcmUnID0+IE5VTEwsDQoJCQkndGFiX25hbWUnID0+IE5VTEwsDQoJCQknZGInID0+IFsNCgkJCQkndHlwZScgPT4gJ0lOVCgxMCkgdW5zaWduZWQnLA0KCQkJCSdkZWZhdWx0JyA9PiAnMCcsDQoJCQkJJ251bGxfc3dpdGNoJyA9PiAnTlVMTCcsDQoJCQkJJ2NvbW1lbnQnID0+ICdGSyB0byB0aGUgI19fYXNzZXRzIHRhYmxlLicNCgkJCV0NCgkJXSwNCgkJJ29yZGVyaW5nJyA9PiBbDQoJCQknbmFtZScgPT4gJ29yZGVyaW5nJywNCgkJCSdsYWJlbCcgPT4gJ09yZGVyaW5nJywNCgkJCSd0eXBlJyA9PiAnbnVtYmVyJywNCgkJCSd0aXRsZScgPT4gZmFsc2UsDQoJCQknbGlzdCcgPT4gTlVMTCwNCgkJCSdzdG9yZScgPT4gTlVMTCwNCgkJCSd0YWJfbmFtZScgPT4gTlVMTCwNCgkJCSdkYicgPT4gWw0KCQkJCSd0eXBlJyA9PiAnSU5UKDExKScsDQoJCQkJJ2RlZmF1bHQnID0+ICcwJywNCgkJCQknbnVsbF9zd2l0Y2gnID0+ICdOVUxMJw0KCQkJXQ0KCQldLA0KCQkncHVibGlzaGVkJyA9PiBbDQoJCQknbmFtZScgPT4gJ3B1Ymxpc2hlZCcsDQoJCQknbGFiZWwnID0+ICdTdGF0dXMnLA0KCQkJJ3R5cGUnID0+ICdsaXN0JywNCgkJCSd0aXRsZScgPT4gZmFsc2UsDQoJCQknbGlzdCcgPT4gTlVMTCwNCgkJCSdzdG9yZScgPT4gTlVMTCwNCgkJCSd0YWJfbmFtZScgPT4gTlVMTCwNCgkJCSdkYicgPT4gWw0KCQkJCSd0eXBlJyA9PiAnVElOWUlOVCgzKScsDQoJCQkJJ2RlZmF1bHQnID0+ICcxJywNCgkJCQknbnVsbF9zd2l0Y2gnID0+ICdOVUxMJywNCgkJCQkna2V5JyA9PiB0cnVlLA0KCQkJCSdrZXlfbmFtZScgPT4gJ3N0YXRlJw0KCQkJXQ0KCQldLA0KCQknbW9kaWZpZWRfYnknID0+IFsNCgkJCSduYW1lJyA9PiAnbW9kaWZpZWRfYnknLA0KCQkJJ2xhYmVsJyA9PiAnTW9kaWZpZWQgYnknLA0KCQkJJ3R5cGUnID0+ICd1c2VyJywNCgkJCSd0aXRsZScgPT4gZmFsc2UsDQoJCQknbGlzdCcgPT4gTlVMTCwNCgkJCSdzdG9yZScgPT4gTlVMTCwNCgkJCSd0YWJfbmFtZScgPT4gTlVMTCwNCgkJCSdkYicgPT4gWw0KCQkJCSd0eXBlJyA9PiAnSU5UIHVuc2lnbmVkJywNCgkJCQknbnVsbF9zd2l0Y2gnID0+ICdOVUxMJywNCgkJCQkna2V5JyA9PiB0cnVlLA0KCQkJCSdrZXlfbmFtZScgPT4gJ21vZGlmaWVkYnknDQoJCQldDQoJCV0sDQoJCSdtb2RpZmllZCcgPT4gWw0KCQkJJ25hbWUnID0+ICdtb2RpZmllZCcsDQoJCQknbGFiZWwnID0+ICdNb2RpZmllZCcsDQoJCQkndHlwZScgPT4gJ2NhbGVuZGFyJywNCgkJCSd0aXRsZScgPT4gZmFsc2UsDQoJCQknbGlzdCcgPT4gTlVMTCwNCgkJCSdzdG9yZScgPT4gTlVMTCwNCgkJCSd0YWJfbmFtZScgPT4gTlVMTCwNCgkJCSdkYicgPT4gWw0KCQkJCSd0eXBlJyA9PiAnREFURVRJTUUnLA0KCQkJCSdudWxsX3N3aXRjaCcgPT4gJ05VTEwnDQoJCQldDQoJCV0sDQoJCSdjcmVhdGVkX2J5JyA9PiBbDQoJCQknbmFtZScgPT4gJ2NyZWF0ZWRfYnknLA0KCQkJJ2xhYmVsJyA9PiAnQ3JlYXRlZCBieScsDQoJCQkndHlwZScgPT4gJ3VzZXInLA0KCQkJJ3RpdGxlJyA9PiBmYWxzZSwNCgkJCSdsaXN0JyA9PiBOVUxMLA0KCQkJJ3N0b3JlJyA9PiBOVUxMLA0KCQkJJ3RhYl9uYW1lJyA9PiBOVUxMLA0KCQkJJ2RiJyA9PiBbDQoJCQkJJ3R5cGUnID0+ICdJTlQgdW5zaWduZWQnLA0KCQkJCSdkZWZhdWx0JyA9PiAnMCcsDQoJCQkJJ251bGxfc3dpdGNoJyA9PiAnTlVMTCcsDQoJCQkJJ2tleScgPT4gdHJ1ZSwNCgkJCQkna2V5X25hbWUnID0+ICdjcmVhdGVkYnknDQoJCQldDQoJCV0sDQoJCSdjcmVhdGVkJyA9PiBbDQoJCQknbmFtZScgPT4gJ2NyZWF0ZWQnLA0KCQkJJ2xhYmVsJyA9PiAnQ3JlYXRlZCcsDQoJCQkndHlwZScgPT4gJ2NhbGVuZGFyJywNCgkJCSd0aXRsZScgPT4gZmFsc2UsDQoJCQknbGlzdCcgPT4gTlVMTCwNCgkJCSdzdG9yZScgPT4gTlVMTCwNCgkJCSd0YWJfbmFtZScgPT4gTlVMTCwNCgkJCSdkYicgPT4gWw0KCQkJCSd0eXBlJyA9PiAnREFURVRJTUUnLA0KCQkJCSdkZWZhdWx0JyA9PiAnQ1VSUkVOVF9USU1FU1RBTVAnLA0KCQkJCSdudWxsX3N3aXRjaCcgPT4gJ05VTEwnDQoJCQldDQoJCV0sDQoJCSdjaGVja2VkX291dCcgPT4gWw0KCQkJJ25hbWUnID0+ICdjaGVja2VkX291dCcsDQoJCQknbGFiZWwnID0+IE5VTEwsDQoJCQkndHlwZScgPT4gTlVMTCwNCgkJCSd0aXRsZScgPT4gZmFsc2UsDQoJCQknbGlzdCcgPT4gTlVMTCwNCgkJCSdzdG9yZScgPT4gTlVMTCwNCgkJCSd0YWJfbmFtZScgPT4gTlVMTCwNCgkJCSdkYicgPT4gWw0KCQkJCSd0eXBlJyA9PiAnSU5UIHVuc2lnbmVkJywNCgkJCQknbnVsbF9zd2l0Y2gnID0+ICdOVUxMJywNCgkJCQkna2V5JyA9PiB0cnVlLA0KCQkJCSdrZXlfbmFtZScgPT4gJ2NoZWNrb3V0Jw0KCQkJXQ0KCQldLA0KCQknY2hlY2tlZF9vdXRfdGltZScgPT4gWw0KCQkJJ25hbWUnID0+ICdjaGVja2VkX291dF90aW1lJywNCgkJCSdsYWJlbCcgPT4gTlVMTCwNCgkJCSd0eXBlJyA9PiBOVUxMLA0KCQkJJ3RpdGxlJyA9PiBmYWxzZSwNCgkJCSdsaXN0JyA9PiBOVUxMLA0KCQkJJ3N0b3JlJyA9PiBOVUxMLA0KCQkJJ3RhYl9uYW1lJyA9PiBOVUxMLA0KCQkJJ2RiJyA9PiBbDQoJCQkJJ3R5cGUnID0+ICdEQVRFVElNRScsDQoJCQkJJ251bGxfc3dpdGNoJyA9PiAnTlVMTCcNCgkJCV0NCgkJXSwNCgkJJ2hpdHMnID0+IFsNCgkJCSduYW1lJyA9PiAnaGl0cycsDQoJCQknbGFiZWwnID0+ICdIaXRzJywNCgkJCSd0eXBlJyA9PiAnbnVtYmVyJywNCgkJCSd0aXRsZScgPT4gZmFsc2UsDQoJCQknbGlzdCcgPT4gTlVMTCwNCgkJCSdzdG9yZScgPT4gTlVMTCwNCgkJCSd0YWJfbmFtZScgPT4gTlVMTCwNCgkJCSdkYicgPT4gWw0KCQkJCSd0eXBlJyA9PiAnSU5UKDEwKSB1bnNpZ25lZCcsDQoJCQkJJ2RlZmF1bHQnID0+ICcwJywNCgkJCQknbnVsbF9zd2l0Y2gnID0+ICdOVUxMJw0KCQkJXQ0KCQldLA0KCQkndmVyc2lvbicgPT4gWw0KCQkJJ25hbWUnID0+ICd2ZXJzaW9uJywNCgkJCSdsYWJlbCcgPT4gJ1ZlcnNpb24nLA0KCQkJJ3R5cGUnID0+ICd0ZXh0JywNCgkJCSd0aXRsZScgPT4gZmFsc2UsDQoJCQknbGlzdCcgPT4gTlVMTCwNCgkJCSdzdG9yZScgPT4gTlVMTCwNCgkJCSd0YWJfbmFtZScgPT4gTlVMTCwNCgkJCSdkYicgPT4gWw0KCQkJCSd0eXBlJyA9PiAnSU5UKDEwKSB1bnNpZ25lZCcsDQoJCQkJJ2RlZmF1bHQnID0+ICcxJywNCgkJCQknbnVsbF9zd2l0Y2gnID0+ICdOVUxMJw0KCQkJXQ0KCQldLA0KCQkncGFyYW1zJyA9PiBbDQoJCQknbmFtZScgPT4gJ3BhcmFtcycsDQoJCQknbGFiZWwnID0+IE5VTEwsDQoJCQkndHlwZScgPT4gTlVMTCwNCgkJCSd0aXRsZScgPT4gZmFsc2UsDQoJCQknbGlzdCcgPT4gTlVMTCwNCgkJCSdzdG9yZScgPT4gJ2pzb24nLA0KCQkJJ3RhYl9uYW1lJyA9PiBOVUxMLA0KCQkJJ2RiJyA9PiBbDQoJCQkJJ3R5cGUnID0+ICdURVhUJywNCgkJCQknZGVmYXVsdCcgPT4gJ0VNUFRZJywNCgkJCQknbnVsbF9zd2l0Y2gnID0+ICdOVUxMJw0KCQkJXQ0KCQldDQoJXTsNCg0KCS8qKg0KCSAqIEdldCBhbnkgdmFsdWUgZnJvbSBhIGl0ZW0vZmllbGQvY29sdW1uIG9mIGFuIGFyZWEvdmlldy90YWJsZQ0KCSAqICAgICAgICAgIEV4YW1wbGU6ICR0aGlzLT5nZXQoJ3RhYmxlX25hbWUnLCAnZmllbGRfbmFtZScsICd2YWx1ZV9rZXknKTsNCgkgKiBHZXQgYW4gaXRlbS9maWVsZC9jb2x1bW4gb2YgYW4gYXJlYS92aWV3L3RhYmxlDQoJICogICAgICAgICAgRXhhbXBsZTogJHRoaXMtPmdldCgndGFibGVfbmFtZScsICdmaWVsZF9uYW1lJyk7DQoJICogR2V0IGFsbCBpdGVtcy9maWVsZHMvY29sdW1ucyBvZiBhbiBhcmVhL3ZpZXcvdGFibGUNCgkgKiAgICAgICAgICBFeGFtcGxlOiAkdGhpcy0+Z2V0KCd0YWJsZV9uYW1lJyk7DQoJICogR2V0IGFsbCBhcmVhcy92aWV3cy90YWJsZXMgd2l0aCBhbGwgdGhlaXIgaXRlbS9maWVsZC9jb2x1bW4gZGV0YWlscw0KCSAqICAgICAgICAgIEV4YW1wbGU6ICR0aGlzLT5nZXQoJ0FsbCcpOw0KCSAqICAgICAgICAgIEV4YW1wbGU6ICR0aGlzLT5nZXQoKTsNCgkgKg0KCSAqIEBwYXJhbSAgIHN0cmluZ3xudWxsICAkdGFibGUgIFRoZSB0YWJsZQ0KCSAqIEBwYXJhbSAgIHN0cmluZ3xudWxsICAkZmllbGQgIFRoZSBmaWVsZA0KCSAqIEBwYXJhbSAgIHN0cmluZ3xudWxsICAka2V5ICAgIFRoZSB2YWx1ZSBrZXkNCgkgKg0KCSAqIEByZXR1cm4gIG1peGVkDQoJICogQHNpbmNlIDMuMi4xDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGdldCg/c3RyaW5nICR0YWJsZSA9IG51bGwsID9zdHJpbmcgJGZpZWxkID0gbnVsbCwgP3N0cmluZyAka2V5ID0gbnVsbCkNCgl7DQoJCS8vIFJldHVybiBzcGVjaWZpYyB2YWx1ZQ0KCQlpZiAoJHRhYmxlICYmICRmaWVsZCAmJiAka2V5KQ0KCQl7DQoJCQlyZXR1cm4gJHRoaXMtPnRhYmxlc1skdGFibGVdWyRmaWVsZF1bJGtleV0gPz8gJHRoaXMtPmdldERlZmF1bHRLZXkoJGZpZWxkLCAka2V5KTsNCgkJfQ0KDQoJCS8vIFJldHVybiBmaWVsZCB3aXRoaW4gdGFibGUNCgkJaWYgKCR0YWJsZSAmJiAkZmllbGQpDQoJCXsNCgkJCXJldHVybiAkdGhpcy0+dGFibGVzWyR0YWJsZV1bJGZpZWxkXSA/PyAkdGhpcy0+Z2V0RGVmYXVsdCgkZmllbGQpOw0KCQl9DQoNCgkJLy8gUmV0dXJuIGFsbCBmaWVsZHMgaW4gYSB0YWJsZSBvciBhbGwgdGFibGVzIGlmICdBbGwnIGlzIHBhc3NlZA0KCQlpZiAoJHRhYmxlKQ0KCQl7DQoJCQlpZiAoc3RydG91cHBlcigkdGFibGUpID09PSAnQUxMJykNCgkJCXsNCgkJCQlyZXR1cm4gJHRoaXMtPnRhYmxlczsNCgkJCX0NCg0KCQkJcmV0dXJuICR0aGlzLT50YWJsZXNbJHRhYmxlXSA/PyBudWxsOw0KCQl9DQoNCgkJLy8gUmV0dXJuIGFsbCB0YWJsZXMNCgkJcmV0dXJuICR0aGlzLT50YWJsZXM7DQoJfQ0KDQoJLyoqDQoJICogR2V0IHRpdGxlIGZpZWxkIGZyb20gYW4gYXJlYS92aWV3L3RhYmxlDQoJICoNCgkgKiBAcGFyYW0gICBzdHJpbmcgICAkdGFibGUgIFRoZSBhcmVhDQoJICoNCgkgKiBAcmV0dXJuICA/YXJyYXkNCgkgKiBAc2luY2UgMy4yLjANCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gdGl0bGUoc3RyaW5nICR0YWJsZSk6ID9hcnJheQ0KCXsNCgkJLy8gcmV0dXJuIHRoZSB0aXRsZSBpdGVtL2ZpZWxkL2NvbHVtbiBvZiBhbiBhcmVhL3ZpZXcvdGFibGUgDQoJCWlmICgoJHRhYmxlID0gJHRoaXMtPmdldCgkdGFibGUpKSAhPT0gbnVsbCkNCgkJew0KCQkJZm9yZWFjaCAoJHRhYmxlIGFzICRpdGVtKQ0KCQkJew0KCQkJCWlmICgkaXRlbVsndGl0bGUnXSkNCgkJCQl7DQoJCQkJCXJldHVybiAkaXRlbTsNCgkJCQl9DQoJCQl9DQoJCX0NCg0KCQkvLyBub25lIGZvdW5kDQoJCXJldHVybiBudWxsOw0KCX0NCg0KCS8qKg0KCSAqIEdldCB0aXRsZSBmaWVsZCBuYW1lDQoJICoNCgkgKiBAcGFyYW0gICBzdHJpbmcgICAkdGFibGUgIFRoZSBhcmVhDQoJICoNCgkgKiBAcmV0dXJuICBzdHJpbmcNCgkgKiBAc2luY2UgMy4yLjANCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gdGl0bGVOYW1lKHN0cmluZyAkdGFibGUpOiBzdHJpbmcNCgl7DQoJCS8vIHJldHVybiB0aGUgdGl0bGUgbmFtZSBvZiBhbiBhcmVhL3ZpZXcvdGFibGUNCgkJaWYgKCgkZmllbGQgPSAkdGhpcy0+dGl0bGUoJHRhYmxlKSkgIT09IG51bGwpDQoJCXsNCgkJCXJldHVybiAkZmllbGRbJ25hbWUnXTsNCgkJfQ0KDQoJCS8vIG5vbmUgZm91bmQgZGVmYXVsdCB0byBJRA0KCQlyZXR1cm4gJ2lkJzsNCgl9DQoNCgkvKioNCgkgKiBHZXQgYWxsIHRhYmxlcw0KCSAqDQoJICogQHJldHVybiAgYXJyYXkNCgkgKiBAc2luY2UgMy4yLjANCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gdGFibGVzKCk6IGFycmF5DQoJew0KCQkvLyByZXR1cm4gYWxsIGFyZWFzL3ZpZXdzL3RhYmxlcw0KCQlyZXR1cm4gYXJyYXlfa2V5cygkdGhpcy0+dGFibGVzKTsNCgl9DQoNCgkvKioNCgkgKiBDaGVjayBpZiBhIHRhYmxlIChhbmQgZmllbGQpIGV4aXN0DQoJICoNCgkgKiBAcGFyYW0gICBzdHJpbmcgICAgICAgJHRhYmxlICBUaGUgYXJlYQ0KCSAqIEBwYXJhbSAgIHN0cmluZ3xudWxsICAkZmllbGQgIFRoZSBhcmVhDQoJICoNCgkgKiBAcmV0dXJuICBib29sDQoJICogQHNpbmNlIDMuMi4wDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGV4aXN0KHN0cmluZyAkdGFibGUsID9zdHJpbmcgJGZpZWxkID0gbnVsbCk6IGJvb2wNCgl7DQoJCWlmIChpc3NldCgkdGhpcy0+dGFibGVzWyR0YWJsZV0pKQ0KCQl7DQoJCQkvLyBpZiB3ZSBoYXZlIGEgZmllbGQNCgkJCWlmIChpc19zdHJpbmcoJGZpZWxkKSkNCgkJCXsNCgkJCQlpZiAoaXNzZXQoJHRoaXMtPnRhYmxlc1skdGFibGVdWyRmaWVsZF0pKQ0KCQkJCXsNCgkJCQkJcmV0dXJuIHRydWU7DQoJCQkJfQ0KCQkJfQ0KCQkJZWxzZQ0KCQkJew0KCQkJCXJldHVybiB0cnVlOw0KCQkJfQ0KCQl9DQoNCgkJcmV0dXJuICR0aGlzLT5pc0RlZmF1bHQoJGZpZWxkKTsNCgl9DQoNCgkvKioNCgkgKiBHZXQgYWxsIGZpZWxkcyBvZiBhbiBhcmVhL3ZpZXcvdGFibGUNCgkgKg0KCSAqIEBwYXJhbSAgIHN0cmluZyAgJHRhYmxlICAgICBUaGUgYXJlYQ0KCSAqIEBwYXJhbSAgIGJvb2wgICAgJGRlZmF1bHQgICBBZGQgdGhlIGRlZmF1bHQgZmllbGRzDQoJICogQHBhcmFtICAgYm9vbCAgICAkZGV0YWlscyAgIEFkZC9MZWF2ZSBmaWVsZHMgdGhlIGRldGFpbHMNCgkgKg0KCSAqIEByZXR1cm4gIGFycmF5fG51bGwgICBPbiBzdWNjZXNzIGFuIGFycmF5IG9mIGZpZWxkcw0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBmaWVsZHMoc3RyaW5nICR0YWJsZSwgYm9vbCAkZGVmYXVsdCA9IGZhbHNlLCBib29sICRkZXRhaWxzID0gZmFsc2UpOiA/YXJyYXkNCgl7DQoJCS8vIFJldHJpZXZlIGZpZWxkcyBmcm9tIHRoZSBzcGVjaWZpZWQgdGFibGUNCgkJJGZpZWxkcyA9ICR0aGlzLT5nZXQoJHRhYmxlKTsNCg0KCQlpZiAoJGZpZWxkcyA9PT0gbnVsbCkNCgkJew0KCQkJcmV0dXJuIG51bGw7DQoJCX0NCg0KCQkvLyBEZXRlcm1pbmUgdGhlIGZpZWxkcyBvdXRwdXQgYmFzZWQgb24gdGhlICRkZWZhdWx0IGFuZCAkZGV0YWlscyBmbGFncw0KCQlpZiAoJGRldGFpbHMpDQoJCXsNCgkJCXJldHVybiAkZGVmYXVsdCA/ICR0aGlzLT5hZGREZWZhdWx0RGV0YWlscygkZmllbGRzKSA6ICRmaWVsZHM7DQoJCX0NCg0KCQkkZmllbGRLZXlzID0gYXJyYXlfa2V5cygkZmllbGRzKTsNCg0KCQlyZXR1cm4gJGRlZmF1bHQgPyAkdGhpcy0+YWRkRGVmYXVsdCgkZmllbGRLZXlzKSA6ICRmaWVsZEtleXM7DQoJfQ0KDQoJLyoqDQoJICogQWRkIHRoZSBkZWZhdWx0IGZpZWxkcw0KCSAqDQoJICogQHBhcmFtICAgYXJyYXkgICRmaWVsZHMgICBUaGUgdGFibGUgZHluYW1pYyBmaWVsZHMNCgkgKg0KCSAqIEByZXR1cm4gIGFycmF5ICAgRmllbGRzICh3aXRoIGRlZmF1bHRzIGFkZGVkKQ0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXByb3RlY3RlZCBmdW5jdGlvbiBhZGREZWZhdWx0KGFycmF5ICRmaWVsZHMpOiBhcnJheQ0KCXsNCgkJLy8gYWRkIGRlZmF1bHQgZmllbGRzDQoJCWZvcmVhY2ggKCR0aGlzLT5kZWZhdWx0cyBhcyAkZGVmYXVsdCkNCgkJew0KCQkJaWYgKGluX2FycmF5KCRkZWZhdWx0WyduYW1lJ10sICRmaWVsZHMpKQ0KCQkJew0KCQkJCWNvbnRpbnVlOw0KCQkJfQ0KDQoJCQkvLyB1c2VkIGp1c3QgZm9yIGxvYWRpbmcgdGhlIGZpZWxkcw0KCQkJJG9yZGVyID0gJGRlZmF1bHRbJ29yZGVyJ10gPz8gMTsNCgkJCXVuc2V0KCRkZWZhdWx0WydvcmRlciddKTsNCg0KCQkJaWYgKCRvcmRlciA8IDApDQoJCQl7DQoJCQkJYXJyYXlfdW5zaGlmdCgkZmllbGRzLCAkZGVmYXVsdFsnbmFtZSddKTsNCgkJCX0NCgkJCWVsc2UNCgkJCXsNCgkJCQkkZmllbGRzW10gPSAkZGVmYXVsdFsnbmFtZSddOw0KCQkJfQ0KCQl9DQoNCgkJcmV0dXJuICRmaWVsZHM7DQoJfQ0KDQoJLyoqDQoJICogQWRkIHRoZSBkZWZhdWx0IGZpZWxkcw0KCSAqDQoJICogQHBhcmFtICAgYXJyYXkgICRmaWVsZHMgICBUaGUgdGFibGUgZHluYW1pYyBmaWVsZHMNCgkgKg0KCSAqIEByZXR1cm4gIGFycmF5ICAgRmllbGRzICh3aXRoIGRlZmF1bHRzIGRldGFpbHMgYWRkZWQpDQoJICogQHNpbmNlIDMuMi4wDQoJICovDQoJcHJvdGVjdGVkIGZ1bmN0aW9uIGFkZERlZmF1bHREZXRhaWxzKGFycmF5ICRmaWVsZHMpOiBhcnJheQ0KCXsNCgkJLy8gYWRkIGRlZmF1bHQgZmllbGRzDQoJCWZvcmVhY2ggKCR0aGlzLT5kZWZhdWx0cyBhcyAkZGVmYXVsdCkNCgkJew0KCQkJLy8gcmVtb3ZlIG9yZGVyaW5nIGZvciBub3cNCgkJCXVuc2V0KCRkZWZhdWx0WydvcmRlciddKTsNCg0KCQkJaWYgKCFpc3NldCgkZmllbGRzWyRkZWZhdWx0WyduYW1lJ11dKSkNCgkJCXsNCgkJCQkkZmllbGRzWyRkZWZhdWx0WyduYW1lJ11dID0gJGRlZmF1bHQ7DQoJCQl9DQoJCX0NCg0KCQlyZXR1cm4gJGZpZWxkczsNCgl9DQoNCgkvKioNCgkgKiBDaGVjayBpZiB0aGUgZmllbGQgaXMgYSBkZWZhdWx0IGZpZWxkDQoJICoNCgkgKiBAcGFyYW0gICBzdHJpbmcgICRmaWVsZCAgVGhlIGZpZWxkIHRvIGNoZWNrDQoJICoNCgkgKiBAcmV0dXJuICBib29sICAgVHJ1ZSBpZiBhIGRlZmF1bHQgZmllbGQNCgkgKiBAc2luY2UgMy4yLjANCgkgKi8NCglwcm90ZWN0ZWQgZnVuY3Rpb24gaXNEZWZhdWx0KHN0cmluZyAkZmllbGQpOiBib29sDQoJew0KCQlyZXR1cm4gaXNzZXQoJHRoaXMtPmRlZmF1bHRzWyRmaWVsZF0pOw0KCX0NCg0KCS8qKg0KCSAqIEdldCBhIGRlZmF1bHQgZmllbGQNCgkgKg0KCSAqIEBwYXJhbSAgIHN0cmluZyAgJGZpZWxkICBUaGUgZmllbGQgdG8gY2hlY2sNCgkgKg0KCSAqIEByZXR1cm4gIGFycmF5fG51bGwgICBUcnVlIGlmIGEgZGVmYXVsdCBmaWVsZA0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXByb3RlY3RlZCBmdW5jdGlvbiBnZXREZWZhdWx0KHN0cmluZyAkZmllbGQpOiA/YXJyYXkNCgl7DQoJCXJldHVybiAkdGhpcy0+ZGVmYXVsdHNbJGZpZWxkXSA/PyBudWxsOw0KCX0NCg0KCS8qKg0KCSAqIEdldCBhIGRlZmF1bHQgZmllbGQgcHJvcGVydHkNCgkgKg0KCSAqIEBwYXJhbSAgIHN0cmluZyAgJGZpZWxkICAgVGhlIGZpZWxkIHRvIGNoZWNrDQoJICogQHBhcmFtICAgc3RyaW5nICAka2V5ICAgICBUaGUgZmllbGQga2V5L3Byb3BlcnR5IHRvIGNoZWNrDQoJICoNCgkgKiBAcmV0dXJuICBtaXhlZCAgIFN0cmluZyB2YWx1ZSBpZiBhIGRlZmF1bHQgZmllbGQgcHJvcGVydHkgZXhpc3QNCgkgKiBAc2luY2UgMy4yLjANCgkgKi8NCglwcm90ZWN0ZWQgZnVuY3Rpb24gZ2V0RGVmYXVsdEtleShzdHJpbmcgJGZpZWxkLCBzdHJpbmcgJGtleSkNCgl7DQoJCXJldHVybiAkdGhpcy0+ZGVmYXVsdHNbJGZpZWxkXVska2V5XSA/PyBudWxsOw0KCX0=', '{}', '{}', '', 1, '2023-06-02 01:08:35', 40, '', 1), +(436, 'ff8d5fdb-2d1f-4178-bd18-a43b8efd1068', 'JCB.Import.Factory', 'Factory', 'abstract class', 'Import Factory\r\n\r\n@since 3.2.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '2e5bf608-de5c-4b00-a20d-47c26aa350d9', '', '', '', '{\"0\":\"caf33c5d-858c-4f9a-894f-ab302ec5445a\"}', '', '[[[NamespacePrefix]]]\\Joomla\\[[[ComponentNamespace]]].Import.Factory', 1, '{}', '{}', 'dXNlIEpvb21sYVxESVxDb250YWluZXI7', '{\"use_selection0\":{\"use\":\"19b2ba92-1655-4384-acfb-979c80de8b6d\",\"as\":\"default\"},\"use_selection1\":{\"use\":\"4815e1c7-a433-443d-a112-d1e03d7df84b\",\"as\":\"default\"},\"use_selection2\":{\"use\":\"2dcedd6c-c95b-4a37-9cac-95d28faedca3\",\"as\":\"default\"},\"use_selection3\":{\"use\":\"a5daf189-3345-4b13-8716-c51f686f545b\",\"as\":\"default\"},\"use_selection4\":{\"use\":\"21754a8b-2323-4a77-8459-378a74c1ec97\",\"as\":\"default\"},\"use_selection5\":{\"use\":\"202ccd9e-dfcf-4cde-a0ce-bde1fd27f088\",\"as\":\"default\"},\"use_selection6\":{\"use\":\"c4a188de-ad78-4a6d-9d5b-01866846d701\",\"as\":\"default\"},\"use_selection7\":{\"use\":\"b5184f80-613e-46c8-b40a-b60de779bb78\",\"as\":\"ItemImport\"}}', 'CS8qKg0KCSAqIEdsb2JhbCBQYWNrYWdlIENvbnRhaW5lcg0KCSAqDQoJICogQHZhciAgIENvbnRhaW5lcnxudWxsDQoJICogQHNpbmNlIDAuMC4wDQoJICoqLw0KCXByb3RlY3RlZCBzdGF0aWMgP0NvbnRhaW5lciAkY29udGFpbmVyID0gbnVsbDsNCg0KCS8qKg0KCSAqIENyZWF0ZSBhIGNvbnRhaW5lciBvYmplY3QNCgkgKg0KCSAqIEByZXR1cm4gIENvbnRhaW5lcg0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqLw0KCXByb3RlY3RlZCBzdGF0aWMgZnVuY3Rpb24gY3JlYXRlQ29udGFpbmVyKCk6IENvbnRhaW5lcg0KCXsNCgkJcmV0dXJuIChuZXcgQ29udGFpbmVyKCkpDQoJCQktPnJlZ2lzdGVyU2VydmljZVByb3ZpZGVyKG5ldyBUYWJsZSgpKQ0KCQkJLT5yZWdpc3RlclNlcnZpY2VQcm92aWRlcihuZXcgRGF0YWJhc2UoKSkNCgkJCS0+cmVnaXN0ZXJTZXJ2aWNlUHJvdmlkZXIobmV3IE1vZGVsKCkpDQoJCQktPnJlZ2lzdGVyU2VydmljZVByb3ZpZGVyKG5ldyBEYXRhKCkpDQoJCQktPnJlZ2lzdGVyU2VydmljZVByb3ZpZGVyKG5ldyBJbXBvcnQoKSkNCgkJCS0+cmVnaXN0ZXJTZXJ2aWNlUHJvdmlkZXIobmV3IEZpbGUoKSkNCgkJCS0+cmVnaXN0ZXJTZXJ2aWNlUHJvdmlkZXIobmV3IFNwcmVhZHNoZWV0KCkpDQoJCQktPnJlZ2lzdGVyU2VydmljZVByb3ZpZGVyKG5ldyBJdGVtSW1wb3J0KCkpOw0KCX0=', '{}', '{}', '', 1, '2023-06-02 01:14:26', 16, '', 1), +(462, '9c3aa650-e536-4eea-a2d4-73cc3e184aa9', 'VDM.Interfaces.DeleteInterface', 'DeleteInterface', 'interface', 'Database Delete Interface\r\n\r\n@since 3.2.0', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\Interfaces.DeleteInterface', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIERlbGV0ZSBhbGwgcm93cyBpbiB0aGUgZGF0YWJhc2UgdGhhdCBtYXRjaCB0aGVzZSBjb25kaXRpb25zDQoJICoNCgkgKiBAcGFyYW0gICBhcnJheSAgICAkY29uZGl0aW9ucyAgICBDb25kaXRpb25zIGJ5IHdoaWNoIHRvIGRlbGV0ZSB0aGUgZGF0YSBpbiBkYXRhYmFzZSBbYXJyYXkgb2YgYXJyYXlzIChrZXkgPT4gdmFsdWUpXQ0KCSAqIEBwYXJhbSAgIHN0cmluZyAgICR0YWJsZSAgICAgICAgIFRoZSB0YWJsZSB3aGVyZSB0aGUgZGF0YSBpcyBiZWluZyBkZWxldGVkDQoJICoNCgkgKiBAcmV0dXJuICBib29sDQoJICogQHNpbmNlICAgMy4yLjANCgkgKiovDQoJcHVibGljIGZ1bmN0aW9uIGl0ZW1zKGFycmF5ICRjb25kaXRpb25zLCBzdHJpbmcgJHRhYmxlKTogYm9vbDsNCg0KCS8qKg0KCSAqIFRydW5jYXRlIGEgdGFibGUNCgkgKg0KCSAqIEBwYXJhbSAgIHN0cmluZyAgICR0YWJsZSAgICBUaGUgdGFibGUgdGhhdCBzaG91bGQgYmUgdHJ1bmNhdGVkDQoJICoNCgkgKiBAcmV0dXJuICB2b2lkDQoJICogQHNpbmNlICAgMy4yLjINCgkgKiovDQoJcHVibGljIGZ1bmN0aW9uIHRydW5jYXRlKHN0cmluZyAkdGFibGUpOiB2b2lkOw==', '{}', '{}', '', 1, '2023-07-19 04:17:01', 9, '', 1), +(463, '92291f1f-f248-4ec0-9f2a-3d47c49eeac1', 'VDM.Database.Delete', 'Delete', 'final class', 'Database Delete Class\r\n\r\n@since 3.2.0', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '6cbef8f8-4813-48e3-b05a-65e1aea95171', '', '', '', '{\"0\":\"9c3aa650-e536-4eea-a2d4-73cc3e184aa9\"}', '', '[[[NamespacePrefix]]]\\Joomla\\Database.Delete', '', '{}', '{}', '', '{\"use_selection0\":{\"use\":\"0a59c65c-9daf-4bc9-baf4-e063ff9e6a8a\",\"as\":\"default\"}}', 'CS8qKg0KCSAqIERlbGV0ZSBhbGwgaXRlbXMgaW4gdGhlIGRhdGFiYXNlIHRoYXQgbWF0Y2ggdGhlc2UgY29uZGl0aW9ucw0KCSAqDQoJICogQHBhcmFtICAgYXJyYXkgICAgJGNvbmRpdGlvbnMgICAgQ29uZGl0aW9ucyBieSB3aGljaCB0byBkZWxldGUgdGhlIGRhdGEgaW4gZGF0YWJhc2UgW2FycmF5IG9mIGFycmF5cyAoa2V5ID0+IHZhbHVlKV0NCgkgKiBAcGFyYW0gICBzdHJpbmcgICAkdGFibGUgICAgICAgICBUaGUgdGFibGUgd2hlcmUgdGhlIGRhdGEgaXMgYmVpbmcgZGVsZXRlZA0KCSAqDQoJICogQHJldHVybiAgYm9vbA0KCSAqIEBzaW5jZSAgIDMuMi4yDQoJICoqLw0KCXB1YmxpYyBmdW5jdGlvbiBpdGVtcyhhcnJheSAkY29uZGl0aW9ucywgc3RyaW5nICR0YWJsZSk6IGJvb2wNCgl7DQoJCS8vIHNldCB0aGUgdXBkYXRlIGNvbHVtbnMNCgkJaWYgKCRjb25kaXRpb25zID09PSBbXSkNCgkJew0KCQkJcmV0dXJuIGZhbHNlOw0KCQl9DQoNCgkJLy8gZ2V0IGEgcXVlcnkgb2JqZWN0DQoJCSRxdWVyeSA9ICR0aGlzLT5kYi0+Z2V0UXVlcnkodHJ1ZSk7DQoNCgkJLy8gc3RhcnQgdGhlIGNvbmRpdGlvbnMgYnVja2V0DQoJCSRfY29uZGl0aW9ucyA9IFtdOw0KCQlmb3JlYWNoICgkY29uZGl0aW9ucyBhcyAka2V5ID0+ICR2YWx1ZSkNCgkJew0KCQkJaWYgKEFycmF5SGVscGVyOjpjaGVjaygkdmFsdWUpKQ0KCQkJew0KCQkJCWlmIChpc3NldCgkdmFsdWVbJ3ZhbHVlJ10pICYmIGlzc2V0KCR2YWx1ZVsnb3BlcmF0b3InXSkpDQoJCQkJew0KCQkJCQkvLyBjaGVjayBpZiB2YWx1ZSBuZWVkcyB0byBiZSBxdW90ZWQNCgkJCQkJJHF1b3RlID0gJHZhbHVlWydxdW90ZSddID8/IHRydWU7DQoJCQkJCWlmICghJHF1b3RlKQ0KCQkJCQl7DQoJCQkJCQlpZiAoQXJyYXlIZWxwZXI6OmNoZWNrKCR2YWx1ZVsndmFsdWUnXSkpDQoJCQkJCQl7DQoJCQkJCQkJLy8gYWRkIHRoZSB3aGVyZSBieSBhcnJheQ0KCQkJCQkJCSRfY29uZGl0aW9uc1tdID0gJHRoaXMtPmRiLT5xdW90ZU5hbWUoJGtleSkNCgkJCQkJCQkJLiAnICcgLiAkdmFsdWVbJ29wZXJhdG9yJ10NCgkJCQkJCQkJLiAnICcgLiAnICgnIC4NCgkJCQkJCQkJaW1wbG9kZSgnLCcsICR2YWx1ZVsndmFsdWUnXSkNCgkJCQkJCQkJLiAnKSc7DQoJCQkJCQl9DQoJCQkJCQllbHNlDQoJCQkJCQl7DQoJCQkJCQkJLy8gYWRkIHRoZSBjb25kaXRpb25zDQoJCQkJCQkJJF9jb25kaXRpb25zW10gPSAkdGhpcy0+ZGItPnF1b3RlTmFtZSgka2V5KQ0KCQkJCQkJCQkuICcgJyAuICR2YWx1ZVsnb3BlcmF0b3InXQ0KCQkJCQkJCQkuICcgJyAuICR2YWx1ZVsndmFsdWUnXTsNCgkJCQkJCX0NCgkJCQkJfQ0KCQkJCQllbHNlDQoJCQkJCXsNCgkJCQkJCWlmIChBcnJheUhlbHBlcjo6Y2hlY2soJHZhbHVlWyd2YWx1ZSddKSkNCgkJCQkJCXsNCgkJCQkJCQkvLyBhZGQgdGhlIHdoZXJlIGJ5IGFycmF5DQoJCQkJCQkJJF9jb25kaXRpb25zW10gPSAkdGhpcy0+ZGItPnF1b3RlTmFtZSgka2V5KQ0KCQkJCQkJCQkuICcgJyAuICR2YWx1ZVsnb3BlcmF0b3InXQ0KCQkJCQkJCQkuICcgJyAuICcgKCcgLg0KCQkJCQkJCQlpbXBsb2RlKCcsJywgYXJyYXlfbWFwKGZuKCR2YWwpID0+ICR0aGlzLT5xdW90ZSgkdmFsKSwgJHZhbHVlWyd2YWx1ZSddKSkNCgkJCQkJCQkJLiAnKSc7DQoJCQkJCQl9DQoJCQkJCQllbHNlDQoJCQkJCQl7DQoJCQkJCQkJLy8gYWRkIHRoZSBjb25kaXRpb25zDQoJCQkJCQkJJF9jb25kaXRpb25zW10gPSAkdGhpcy0+ZGItPnF1b3RlTmFtZSgka2V5KQ0KCQkJCQkJCQkuICcgJyAuICR2YWx1ZVsnb3BlcmF0b3InXQ0KCQkJCQkJCQkuICcgJyAuICR0aGlzLT5xdW90ZSgkdmFsdWVbJ3ZhbHVlJ10pOw0KCQkJCQkJfQ0KCQkJCQl9DQoJCQkJfQ0KCQkJCWVsc2UNCgkJCQl7DQoJCQkJCS8vIHdlIHNob3VsZCB0aHJvdWdoIGFuIGV4Y2VwdGlvbg0KCQkJCQkvLyBmb3Igc2VjdXJpdHkgd2UganVzdCByZXR1cm4gZmFsc2UgZm9yIG5vdw0KCQkJCQlyZXR1cm4gZmFsc2U7DQoJCQkJfQ0KCQkJfQ0KCQkJZWxzZQ0KCQkJew0KCQkJCS8vIGFkZCBkZWZhdWx0IGNvbmRpdGlvbg0KCQkJCSRfY29uZGl0aW9uc1tdID0gJHRoaXMtPmRiLT5xdW90ZU5hbWUoJGtleSkgLiAnID0gJyAuICR0aGlzLT5xdW90ZSgkdmFsdWUpOw0KCQkJfQ0KCQl9DQoNCgkJLy8gc2V0IHRoZSBxdWVyeSB0YXJnZXRzDQoJCSRxdWVyeS0+ZGVsZXRlKCR0aGlzLT5kYi0+cXVvdGVOYW1lKCR0aGlzLT5nZXRUYWJsZSgkdGFibGUpKSk7DQoJCSRxdWVyeS0+d2hlcmUoJF9jb25kaXRpb25zKTsNCg0KCQkkdGhpcy0+ZGItPnNldFF1ZXJ5KCRxdWVyeSk7DQoNCgkJcmV0dXJuICR0aGlzLT5kYi0+ZXhlY3V0ZSgpOw0KCX0NCg0KCS8qKg0KCSAqIFRydW5jYXRlIGEgdGFibGUNCgkgKg0KCSAqIEBwYXJhbSAgIHN0cmluZyAgICR0YWJsZSAgICBUaGUgdGFibGUgdGhhdCBzaG91bGQgYmUgdHJ1bmNhdGVkDQoJICoNCgkgKiBAcmV0dXJuICB2b2lkDQoJICogQHNpbmNlICAgMy4yLjINCgkgKiovDQoJcHVibGljIGZ1bmN0aW9uIHRydW5jYXRlKHN0cmluZyAkdGFibGUpOiB2b2lkDQoJew0KCQkkdGhpcy0+ZGItPnRydW5jYXRlVGFibGUoJHRoaXMtPmdldFRhYmxlKCR0YWJsZSkpOw0KCX0=', '{}', '{}', '', 1, '2023-07-19 04:27:21', 11, '', 1), +(485, '43134867-5cb8-4280-9be8-309fd2fd135f', 'VDM.Abstraction.ActiveRegistry', 'ActiveRegistry', 'abstract class', 'Active Storage Registry.\r\n\r\nDon\'t use this beyond 10 dimensional depth for best performance.\r\n\r\n@since 3.2.0', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '{\"0\":\"af0eedbe-603b-4671-8e5a-28165d88254b\"}', '', '[[[NamespacePrefix]]]\\Joomla\\Abstraction.ActiveRegistry', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIFRoZSByZWdpc3RyeSBhcnJheS4NCgkgKg0KCSAqIEB2YXIgICAgYXJyYXkNCgkgKiBAc2luY2UgMy4yLjANCgkgKiovDQoJcHJvdGVjdGVkIGFycmF5ICRhY3RpdmUgPSBbXTsNCg0KCS8qKg0KCSAqIEJhc2Ugc3dpdGNoIHRvIGFkZCB2YWx1ZXMgYXMgc3RyaW5nIG9yIGFycmF5DQoJICoNCgkgKiBAdmFyICAgIGJvb2xlYW4NCgkgKiBAc2luY2UgMy4yLjANCgkgKiovDQoJcHJvdGVjdGVkIGJvb2wgJGFkZEFzQXJyYXkgPSBmYWxzZTsNCg0KCS8qKg0KCSAqIEJhc2Ugc3dpdGNoIHRvIGtlZXAgYXJyYXkgdmFsdWVzIHVuaXF1ZQ0KCSAqDQoJICogQHZhciAgICBib29sZWFuDQoJICogQHNpbmNlIDMuMi4yDQoJICoqLw0KCXByb3RlY3RlZCBib29sICR1bmlxdWVBcnJheSA9IGZhbHNlOw0KDQoJLyoqDQoJICogQ2hlY2sgaWYgdGhlIHJlZ2lzdHJ5IGhhcyBhbnkgY29udGVudC4NCgkgKg0KCSAqIEByZXR1cm4gYm9vbCAgUmV0dXJucyB0cnVlIGlmIHRoZSBhY3RpdmUgYXJyYXkgaXMgbm90IGVtcHR5LCBmYWxzZSBvdGhlcndpc2UuDQoJICogQHNpbmNlIDMuMi4wDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGlzQWN0aXZlKCk6IGJvb2wNCgl7DQoJCXJldHVybiAhZW1wdHkoJHRoaXMtPmFjdGl2ZSk7DQoJfQ0KDQoJLyoqDQoJICogR2V0IGFsbCB2YWx1ZSBmcm9tIHRoZSBhY3RpdmUgcmVnaXN0cnkuDQoJICoNCgkgKiBAcmV0dXJuIGFycmF5ICAgVGhlIHZhbHVlcyBvciBlbXB0eSBhcnJheS4NCgkgKiBAc2luY2UgMy4yLjANCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gYWxsQWN0aXZlKCk6IGFycmF5DQoJew0KCQlyZXR1cm4gJHRoaXMtPmFjdGl2ZTsNCgl9DQoNCgkvKioNCgkgKiBTZXRzIGEgdmFsdWUgaW50byB0aGUgcmVnaXN0cnkgdXNpbmcgbXVsdGlwbGUga2V5cy4NCgkgKg0KCSAqIEBwYXJhbSBtaXhlZCAgICR2YWx1ZSAgICAgVGhlIHZhbHVlIHRvIHNldC4NCgkgKiBAcGFyYW0gc3RyaW5nICAuLi4ka2V5cyAgIFRoZSBrZXlzIHRvIGRldGVybWluZSB0aGUgbG9jYXRpb24uDQoJICoNCgkgKiBAdGhyb3dzIFxJbnZhbGlkQXJndW1lbnRFeGNlcHRpb24gSWYgYW55IG9mIHRoZSBrZXlzIGFyZSBub3QgYSBudW1iZXIgb3Igc3RyaW5nLg0KCSAqIEByZXR1cm4gdm9pZA0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBzZXRBY3RpdmUoJHZhbHVlLCBzdHJpbmcgLi4uJGtleXMpOiB2b2lkDQoJew0KCQlpZiAoISR0aGlzLT52YWxpZEFjdGl2ZUtleXMoJGtleXMpKQ0KCQl7DQoJCQl0aHJvdyBuZXcgXEludmFsaWRBcmd1bWVudEV4Y2VwdGlvbigiS2V5cyBtdXN0IG9ubHkgYmUgc3RyaW5ncyBvciBudW1iZXJzIHRvIHNldCBhbnkgdmFsdWUuIik7DQoJCX0NCg0KCQkkYXJyYXkgPSAmJHRoaXMtPmFjdGl2ZTsNCg0KCQlmb3JlYWNoICgka2V5cyBhcyAka2V5KQ0KCQl7DQoJCQlpZiAoIWlzc2V0KCRhcnJheVska2V5XSkpDQoJCQl7DQoJCQkJaWYgKCFpc19hcnJheSgkYXJyYXkpKQ0KCQkJCXsNCgkJCQkJJHBhdGggPSAnWycgLiBpbXBsb2RlKCddWycsICRrZXlzKSAuICddJzsNCgkJCQkJdGhyb3cgbmV3IFxJbnZhbGlkQXJndW1lbnRFeGNlcHRpb24oIkF0dGVtcHRlZCB0byB1c2Uga2V5ICd7JGtleX0nIG9uIGEgbm9uLWFycmF5IHZhbHVlOiB7JGFycmF5fS4gUGF0aDogeyRwYXRofSBWYWx1ZTogeyR2YWx1ZX0iKTsNCgkJCQl9DQoNCgkJCQkkYXJyYXlbJGtleV0gPSBbXTsNCgkJCX0NCgkJCSRhcnJheSA9ICYkYXJyYXlbJGtleV07DQoJCX0NCg0KCQkkYXJyYXkgPSAkdmFsdWU7DQoJfQ0KDQoJLyoqDQoJICogQWRkcyBjb250ZW50IGludG8gdGhlIHJlZ2lzdHJ5LiBJZiBhIGtleSBleGlzdHMsDQoJICogaXQgZWl0aGVyIGFwcGVuZHMgb3IgY29uY2F0ZW5hdGVzIGJhc2VkIG9uIHRoZSB2YWx1ZSdzIHR5cGUuDQoJICoNCgkgKiBAcGFyYW0gbWl4ZWQgICAgICAgJHZhbHVlICAgICBUaGUgdmFsdWUgdG8gc2V0Lg0KCSAqIEBwYXJhbSBib29sfG51bGwgICAkYXNBcnJheSAgIERldGVybWluZXMgaWYgdGhlIG5ldyB2YWx1ZSBzaG91bGQgYmUgdHJlYXRlZCBhcyBhbiBhcnJheS4NCgkgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRGVmYXVsdCBpcyAkYWRkQXNBcnJheSA9IGZhbHNlIChpZiBudWxsKSBpbiBiYXNlIGNsYXNzLg0KCSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPdmVycmlkZSBpbiBjaGlsZCBjbGFzcyBhbGxvd2VkIHNldCBjbGFzcyBwcm9wZXJ0eSAkYWRkQXNBcnJheSA9IHRydWUuDQoJICogQHBhcmFtIHN0cmluZyAgICAgIC4uLiRrZXlzICAgVGhlIGtleXMgdG8gZGV0ZXJtaW5lIHRoZSBsb2NhdGlvbi4NCgkgKg0KCSAqIEB0aHJvd3MgXEludmFsaWRBcmd1bWVudEV4Y2VwdGlvbiBJZiBhbnkgb2YgdGhlIGtleXMgYXJlIG5vdCBhIG51bWJlciBvciBzdHJpbmcuDQoJICogQHJldHVybiB2b2lkDQoJICogQHNpbmNlIDMuMi4wDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGFkZEFjdGl2ZSgkdmFsdWUsID9ib29sICRhc0FycmF5LCBzdHJpbmcgLi4uJGtleXMpOiB2b2lkDQoJew0KCQlpZiAoISR0aGlzLT52YWxpZEFjdGl2ZUtleXMoJGtleXMpKQ0KCQl7DQoJCQl0aHJvdyBuZXcgXEludmFsaWRBcmd1bWVudEV4Y2VwdGlvbigiS2V5cyBtdXN0IG9ubHkgYmUgc3RyaW5ncyBvciBudW1iZXJzIHRvIGFkZCBhbnkgdmFsdWUuIik7DQoJCX0NCg0KCQkvLyBudWxsIGZhbGxiYWNrIHRvIGNsYXNzIHZhbHVlDQoJCWlmICgkYXNBcnJheSA9PT0gbnVsbCkNCgkJew0KCQkJJGFzQXJyYXkgPSAkdGhpcy0+YWRkQXNBcnJheTsNCgkJfQ0KDQoJCSRhcnJheSA9ICYkdGhpcy0+YWN0aXZlOw0KDQoJCWZvcmVhY2ggKCRrZXlzIGFzICRrZXkpDQoJCXsNCgkJCWlmICghaXNzZXQoJGFycmF5WyRrZXldKSkNCgkJCXsNCgkJCQlpZiAoIWlzX2FycmF5KCRhcnJheSkpDQoJCQkJew0KCQkJCQkkcGF0aCA9ICdbJyAuIGltcGxvZGUoJ11bJywgJGtleXMpIC4gJ10nOw0KCQkJCQl0aHJvdyBuZXcgXEludmFsaWRBcmd1bWVudEV4Y2VwdGlvbigiQXR0ZW1wdGVkIHRvIHVzZSBrZXkgJ3ska2V5fScgb24gYSBub24tYXJyYXkgdmFsdWU6IHskYXJyYXl9LiBQYXRoOiB7JHBhdGh9IFZhbHVlOiB7JHZhbHVlfSIpOw0KCQkJCX0NCg0KCQkJCSRhcnJheVska2V5XSA9IFtdOw0KCQkJfQ0KCQkJJGFycmF5ID0gJiRhcnJheVska2V5XTsNCgkJfQ0KDQoJCS8vIGFkZCBzdHJpbmcNCgkJaWYgKCEkYXNBcnJheSAmJiAkYXJyYXkgPT09IFtdKQ0KCQl7DQoJCQkkYXJyYXkgPSAnJzsNCgkJfQ0KDQoJCS8vIEhhbmRsZSB0aGUgYWRkaW5nIGxvZ2ljIGF0IHRoZSB0aXAgb2YgdGhlIGFycmF5DQoJCWlmIChpc19hcnJheSgkYXJyYXkpIHx8ICRhc0FycmF5KQ0KCQl7DQoJCQlpZiAoIWlzX2FycmF5KCRhcnJheSkpDQoJCQl7DQoJCQkJLy8gQ29udmVydCB0byBhcnJheSBpZiBpdCdzIG5vdCBhbHJlYWR5IGFuIGFycmF5DQoJCQkJJGFycmF5ID0gWyRhcnJheV07DQoJCQl9DQoNCgkJCWlmICgkdGhpcy0+dW5pcXVlQXJyYXkgJiYgaW5fYXJyYXkoJHZhbHVlLCAkYXJyYXkpKQ0KCQkJew0KCQkJCS8vIHdlIGRvIG5vdGhpbmcNCgkJCQlyZXR1cm47DQoJCQl9DQoJCQllbHNlDQoJCQl7DQoJCQkJJGFycmF5W10gPSAkdmFsdWU7DQoJCQl9DQoJCX0NCgkJZWxzZQ0KCQl7DQoJCQlpZiAoaXNfc3RyaW5nKCR2YWx1ZSkgfHwgaXNfbnVtZXJpYygkdmFsdWUpKQ0KCQkJew0KCQkJCSRhcnJheSAuPSAoc3RyaW5nKSAkdmFsdWU7DQoJCQl9DQoJCQllbHNlDQoJCQl7DQoJCQkJJGFycmF5ID0gJHZhbHVlOw0KCQkJfQ0KCQl9DQoJfQ0KDQoJLyoqDQoJICogUmV0cmlldmVzIGEgdmFsdWUgKG9yIHN1Yi1hcnJheSkgZnJvbSB0aGUgcmVnaXN0cnkgdXNpbmcgbXVsdGlwbGUga2V5cy4NCgkgKg0KCSAqIEBwYXJhbSBtaXhlZCAgICRkZWZhdWx0ICAgICBUaGUgZGVmYXVsdCB2YWx1ZSBpZiBub3Qgc2V0Lg0KCSAqIEBwYXJhbSBzdHJpbmcgIC4uLiRrZXlzICAgICAgVGhlIGtleXMgdG8gZGV0ZXJtaW5lIHRoZSBsb2NhdGlvbi4NCgkgKg0KCSAqIEB0aHJvd3MgXEludmFsaWRBcmd1bWVudEV4Y2VwdGlvbiBJZiBhbnkgb2YgdGhlIGtleXMgYXJlIG5vdCBhIG51bWJlciBvciBzdHJpbmcuDQoJICogQHJldHVybiBtaXhlZCBUaGUgdmFsdWUgb3Igc3ViLWFycmF5IGZyb20gdGhlIHN0b3JhZ2UuIE51bGwgaWYgdGhlIGxvY2F0aW9uIGRvZXNuJ3QgZXhpc3QuDQoJICogQHNpbmNlIDMuMi4wDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGdldEFjdGl2ZSgkZGVmYXVsdCwgc3RyaW5nIC4uLiRrZXlzKQ0KCXsNCgkJaWYgKCEkdGhpcy0+dmFsaWRBY3RpdmVLZXlzKCRrZXlzKSkNCgkJew0KCQkJdGhyb3cgbmV3IFxJbnZhbGlkQXJndW1lbnRFeGNlcHRpb24oIktleXMgbXVzdCBvbmx5IGJlIHN0cmluZ3Mgb3IgbnVtYmVycyB0byBnZXQgYW55IHZhbHVlLiIpOw0KCQl9DQoNCgkJJGFycmF5ID0gJHRoaXMtPmFjdGl2ZTsNCg0KCQlmb3JlYWNoICgka2V5cyBhcyAka2V5KQ0KCQl7DQoJCQlpZiAoIWlzc2V0KCRhcnJheVska2V5XSkpDQoJCQl7DQoJCQkJcmV0dXJuICRkZWZhdWx0Ow0KCQkJfQ0KCQkJJGFycmF5ID0gJGFycmF5WyRrZXldOw0KCQl9DQoNCgkJcmV0dXJuICRhcnJheTsNCgl9DQoNCgkvKioNCgkgKiBSZW1vdmVzIGEgdmFsdWUgKG9yIHN1Yi1hcnJheSkgZnJvbSB0aGUgcmVnaXN0cnkgdXNpbmcgbXVsdGlwbGUga2V5cy4NCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmcgLi4uJGtleXMgVGhlIGtleXMgdG8gZGV0ZXJtaW5lIHRoZSBsb2NhdGlvbi4NCgkgKg0KCSAqIEB0aHJvd3MgXEludmFsaWRBcmd1bWVudEV4Y2VwdGlvbiBJZiBhbnkgb2YgdGhlIGtleXMgYXJlIG5vdCBhIG51bWJlciBvciBzdHJpbmcuDQoJICogQHJldHVybiB2b2lkDQoJICogQHNpbmNlIDMuMi4wDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIHJlbW92ZUFjdGl2ZShzdHJpbmcgLi4uJGtleXMpOiB2b2lkDQoJew0KCQlpZiAoISR0aGlzLT52YWxpZEFjdGl2ZUtleXMoJGtleXMpKQ0KCQl7DQoJCQl0aHJvdyBuZXcgXEludmFsaWRBcmd1bWVudEV4Y2VwdGlvbigiS2V5cyBtdXN0IG9ubHkgYmUgc3RyaW5ncyBvciBudW1iZXJzIHRvIHJlbW92ZSBhbnkgdmFsdWUuIik7DQoJCX0NCg0KCQkkYXJyYXkgPSAmJHRoaXMtPmFjdGl2ZTsNCgkJJGxhc3RLZXkgPSBhcnJheV9wb3AoJGtleXMpOw0KDQoJCWZvcmVhY2ggKCRrZXlzIGFzICRrZXkpDQoJCXsNCgkJCWlmICghaXNzZXQoJGFycmF5WyRrZXldKSkNCgkJCXsNCgkJCQlyZXR1cm47ICAvLyBFeGl0IGVhcmx5IGlmIHRoZSBrZXkgZG9lc24ndCBleGlzdA0KCQkJfQ0KCQkJJGFycmF5ID0gJiRhcnJheVska2V5XTsNCgkJfQ0KDQoJCXVuc2V0KCRhcnJheVskbGFzdEtleV0pOw0KCX0NCg0KCS8qKg0KCSAqIENoZWNrcyB0aGUgZXhpc3RlbmNlIG9mIGEgcGFydGljdWxhciBsb2NhdGlvbiBpbiB0aGUgcmVnaXN0cnkgdXNpbmcgbXVsdGlwbGUga2V5cy4NCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmcgLi4uJGtleXMgVGhlIGtleXMgdG8gZGV0ZXJtaW5lIHRoZSBsb2NhdGlvbi4NCgkgKg0KCSAqIEB0aHJvd3MgXEludmFsaWRBcmd1bWVudEV4Y2VwdGlvbiBJZiBhbnkgb2YgdGhlIGtleXMgYXJlIG5vdCBhIG51bWJlciBvciBzdHJpbmcuDQoJICogQHJldHVybiBib29sIFRydWUgaWYgdGhlIGxvY2F0aW9uIGV4aXN0cywgZmFsc2Ugb3RoZXJ3aXNlLg0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBleGlzdHNBY3RpdmUoc3RyaW5nIC4uLiRrZXlzKTogYm9vbA0KCXsNCgkJaWYgKCEkdGhpcy0+dmFsaWRBY3RpdmVLZXlzKCRrZXlzKSkNCgkJew0KCQkJdGhyb3cgbmV3IFxJbnZhbGlkQXJndW1lbnRFeGNlcHRpb24oIktleXMgbXVzdCBvbmx5IGJlIHN0cmluZ3Mgb3IgbnVtYmVycyB0byBjaGVjayBpZiBhbnkgdmFsdWUgZXhpc3QuIik7DQoJCX0NCg0KCQkkYXJyYXkgPSAkdGhpcy0+YWN0aXZlOw0KDQoJCWZvcmVhY2ggKCRrZXlzIGFzICRrZXkpDQoJCXsNCgkJCWlmICghaXNzZXQoJGFycmF5WyRrZXldKSkNCgkJCXsNCgkJCQlyZXR1cm4gZmFsc2U7DQoJCQl9DQoJCQkkYXJyYXkgPSAkYXJyYXlbJGtleV07DQoJCX0NCg0KCQlyZXR1cm4gdHJ1ZTsNCgl9DQoNCgkvKioNCgkgKiBDaGVja3MgdGhhdCB0aGUga2V5cyBhcmUgdmFsaWQNCgkgKg0KCSAqIEBwYXJhbSBhcnJheSAgJGtleXMgVGhlIGtleXMgdG8gZGV0ZXJtaW5lIHRoZSBsb2NhdGlvbi4NCgkgKg0KCSAqIEByZXR1cm4gYm9vbCAgIEZhbHNlIGlmIGFueSBvZiB0aGUga2V5cyBhcmUgbm90IGEgbnVtYmVyIG9yIHN0cmluZy4NCgkgKiBAc2luY2UgMy4yLjANCgkgKi8NCglwcm90ZWN0ZWQgZnVuY3Rpb24gdmFsaWRBY3RpdmVLZXlzKGFycmF5ICRrZXlzKTogYm9vbA0KCXsNCgkJZm9yZWFjaCAoJGtleXMgYXMgJGtleSkNCgkJew0KCQkJaWYgKCRrZXkgPT09ICcnIHx8ICghaXNfc3RyaW5nKCRrZXkpICYmICFpc19udW1lcmljKCRrZXkpKSkNCgkJCXsNCgkJCQlyZXR1cm4gZmFsc2U7DQoJCQl9DQoJCX0NCg0KCQlyZXR1cm4gdHJ1ZTsNCgl9', '{}', '{}', '', 1, '2023-09-08 16:04:26', 40, '', 1), +(486, 'af0eedbe-603b-4671-8e5a-28165d88254b', 'VDM.Interfaces.Activeregistryinterface', 'Activeregistryinterface', 'interface', 'The Active Registry Interface\r\n\r\n@since 3.2.0', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\Interfaces.Activeregistryinterface', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIENoZWNrIGlmIHRoZSByZWdpc3RyeSBoYXMgYW55IGNvbnRlbnQuDQoJICoNCgkgKiBAcmV0dXJuIGJvb2wgIFJldHVybnMgdHJ1ZSBpZiB0aGUgYWN0aXZlIGFycmF5IGlzIG5vdCBlbXB0eSwgZmFsc2Ugb3RoZXJ3aXNlLg0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBpc0FjdGl2ZSgpOiBib29sOw0KDQoJLyoqDQoJICogUmV0cmlldmVzIGFsbCB2YWx1ZSBmcm9tIHRoZSByZWdpc3RyeS4NCgkgKg0KCSAqIEByZXR1cm4gYXJyYXkgICBUaGUgdmFsdWVzLg0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBhbGxBY3RpdmUoKTogYXJyYXk7DQoNCgkvKioNCgkgKiBTZXRzIGEgdmFsdWUgaW50byB0aGUgcmVnaXN0cnkgdXNpbmcgbXVsdGlwbGUga2V5cy4NCgkgKg0KCSAqIEBwYXJhbSBtaXhlZCAgICR2YWx1ZSAgICAgVGhlIHZhbHVlIHRvIHNldC4NCgkgKiBAcGFyYW0gc3RyaW5nICAuLi4ka2V5cyAgIFRoZSBrZXlzIHRvIGRldGVybWluZSB0aGUgbG9jYXRpb24uDQoJICoNCgkgKiBAdGhyb3dzIFxJbnZhbGlkQXJndW1lbnRFeGNlcHRpb24gSWYgYW55IG9mIHRoZSBrZXlzIGFyZSBub3QgYSBudW1iZXIgb3Igc3RyaW5nLg0KCSAqIEByZXR1cm4gdm9pZA0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBzZXRBY3RpdmUoJHZhbHVlLCBzdHJpbmcgLi4uJGtleXMpOiB2b2lkOw0KDQoJLyoqDQoJICogQWRkcyBjb250ZW50IGludG8gdGhlIHJlZ2lzdHJ5LiBJZiBhIGtleSBleGlzdHMsDQoJICogaXQgZWl0aGVyIGFwcGVuZHMgb3IgY29uY2F0ZW5hdGVzIGJhc2VkIG9uIHRoZSB2YWx1ZSdzIHR5cGUuDQoJICoNCgkgKiBAcGFyYW0gbWl4ZWQgICAgICAgJHZhbHVlICAgICBUaGUgdmFsdWUgdG8gc2V0Lg0KCSAqIEBwYXJhbSBib29sfG51bGwgICAkYXNBcnJheSAgIERldGVybWluZXMgaWYgdGhlIG5ldyB2YWx1ZSBzaG91bGQgYmUgdHJlYXRlZCBhcyBhbiBhcnJheS4NCgkgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRGVmYXVsdCBpcyAkYWRkQXNBcnJheSA9IGZhbHNlIChpZiBudWxsKSBpbiBiYXNlIGNsYXNzLg0KCSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPdmVycmlkZSBpbiBjaGlsZCBjbGFzcyBhbGxvd2VkIHNldCBjbGFzcyBwcm9wZXJ0eSAkYWRkQXNBcnJheSA9IHRydWUuDQoJICogQHBhcmFtIHN0cmluZyAgICAgIC4uLiRrZXlzICAgVGhlIGtleXMgdG8gZGV0ZXJtaW5lIHRoZSBsb2NhdGlvbi4NCgkgKg0KCSAqIEB0aHJvd3MgXEludmFsaWRBcmd1bWVudEV4Y2VwdGlvbiBJZiBhbnkgb2YgdGhlIGtleXMgYXJlIG5vdCBhIG51bWJlciBvciBzdHJpbmcuDQoJICogQHJldHVybiB2b2lkDQoJICogQHNpbmNlIDMuMi4wDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGFkZEFjdGl2ZSgkdmFsdWUsID9ib29sICRhc0FycmF5LCBzdHJpbmcgLi4uJGtleXMpOiB2b2lkOw0KDQoJLyoqDQoJICogUmV0cmlldmVzIGEgdmFsdWUgKG9yIHN1Yi1hcnJheSkgZnJvbSB0aGUgcmVnaXN0cnkgdXNpbmcgbXVsdGlwbGUga2V5cy4NCgkgKg0KCSAqIEBwYXJhbSBtaXhlZCAgICRkZWZhdWx0ICAgICBUaGUgZGVmYXVsdCB2YWx1ZSBpZiBub3Qgc2V0Lg0KCSAqIEBwYXJhbSBzdHJpbmcgIC4uLiRrZXlzICAgICAgVGhlIGtleXMgdG8gZGV0ZXJtaW5lIHRoZSBsb2NhdGlvbi4NCgkgKg0KCSAqIEB0aHJvd3MgXEludmFsaWRBcmd1bWVudEV4Y2VwdGlvbiBJZiBhbnkgb2YgdGhlIGtleXMgYXJlIG5vdCBhIG51bWJlciBvciBzdHJpbmcuDQoJICogQHJldHVybiBtaXhlZCBUaGUgdmFsdWUgb3Igc3ViLWFycmF5IGZyb20gdGhlIHN0b3JhZ2UuIE51bGwgaWYgdGhlIGxvY2F0aW9uIGRvZXNuJ3QgZXhpc3QuDQoJICogQHNpbmNlIDMuMi4wDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGdldEFjdGl2ZSgkZGVmYXVsdCwgc3RyaW5nIC4uLiRrZXlzKTsNCg0KCS8qKg0KCSAqIFJlbW92ZXMgYSB2YWx1ZSAob3Igc3ViLWFycmF5KSBmcm9tIHRoZSByZWdpc3RyeSB1c2luZyBtdWx0aXBsZSBrZXlzLg0KCSAqDQoJICogQHBhcmFtIHN0cmluZyAuLi4ka2V5cyBUaGUga2V5cyB0byBkZXRlcm1pbmUgdGhlIGxvY2F0aW9uLg0KCSAqDQoJICogQHRocm93cyBcSW52YWxpZEFyZ3VtZW50RXhjZXB0aW9uIElmIGFueSBvZiB0aGUga2V5cyBhcmUgbm90IGEgbnVtYmVyIG9yIHN0cmluZy4NCgkgKiBAcmV0dXJuIHZvaWQNCgkgKiBAc2luY2UgMy4yLjANCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gcmVtb3ZlQWN0aXZlKHN0cmluZyAuLi4ka2V5cyk6IHZvaWQ7DQoNCgkvKioNCgkgKiBDaGVja3MgdGhlIGV4aXN0ZW5jZSBvZiBhIHBhcnRpY3VsYXIgbG9jYXRpb24gaW4gdGhlIHJlZ2lzdHJ5IHVzaW5nIG11bHRpcGxlIGtleXMuDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nIC4uLiRrZXlzIFRoZSBrZXlzIHRvIGRldGVybWluZSB0aGUgbG9jYXRpb24uDQoJICoNCgkgKiBAdGhyb3dzIFxJbnZhbGlkQXJndW1lbnRFeGNlcHRpb24gSWYgYW55IG9mIHRoZSBrZXlzIGFyZSBub3QgYSBudW1iZXIgb3Igc3RyaW5nLg0KCSAqIEByZXR1cm4gYm9vbCBUcnVlIGlmIHRoZSBsb2NhdGlvbiBleGlzdHMsIGZhbHNlIG90aGVyd2lzZS4NCgkgKiBAc2luY2UgMy4yLjANCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZXhpc3RzQWN0aXZlKHN0cmluZyAuLi4ka2V5cyk6IGJvb2w7', '{}', '{}', '', 1, '2023-09-08 16:12:43', 18, '', 1), +(489, '7e822c03-1b20-41d1-9427-f5b8d5836af7', 'VDM.Abstraction.Registry', 'Registry', 'abstract class', 'VDM Basic Registry.\r\n\r\nDon\'t use this beyond 10 dimensional depth for best performance.\r\n\r\n@since 3.2.0\r\n@since 5.0.4 Joomla Registry Compatible', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '43134867-5cb8-4280-9be8-309fd2fd135f', '', '', '', '{\"0\":\"64e291c2-11f1-423d-a44d-837cc12cc017\",\"1\":\"-1\"}', ' \\JsonSerializable, \\ArrayAccess, \\IteratorAggregate, \\Countable', '[[[NamespacePrefix]]]\\Joomla\\Abstraction.Registry', 1, '{}', '{}', 'dXNlIEpvb21sYVxSZWdpc3RyeVxGYWN0b3J5IGFzIEZvcm1hdEZhY3Rvcnk7', '{}', 'CS8qKg0KCSAqIFBhdGggc2VwYXJhdG9yDQoJICoNCgkgKiBAdmFyICAgIHN0cmluZ3xudWxsDQoJICogQHNpbmNlICAzLjIuMA0KCSAqLw0KCXByb3RlY3RlZCA/c3RyaW5nICRzZXBhcmF0b3IgPSAnLic7DQoNCgkvKioNCgkgKiBUaGUgbmFtZSBvZiB0aGUgcmVnaXN0cnkuDQoJICoNCgkgKiBAdmFyICAgc3RyaW5nfG51bGwNCgkgKiBAc2luY2UgNS4wLjQNCgkgKi8NCglwcm90ZWN0ZWQgP3N0cmluZyAkbmFtZSA9IG51bGw7DQoNCgkvKioNCgkgKiBDb25zdHJ1Y3Rvci4NCgkgKg0KCSAqIEluaXRpYWxpemVzIHRoZSBSZWdpc3RyeSBvYmplY3Qgd2l0aCBvcHRpb25hbCBkYXRhLg0KCSAqDQoJICogQHBhcmFtICBtaXhlZCAgICAgICAgJGRhdGEgICAgICBPcHRpb25hbCBkYXRhIHRvIGxvYWQgaW50byB0aGUgcmVnaXN0cnkuDQoJICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDYW4gYmUgYW4gYXJyYXksIHN0cmluZywgb3Igb2JqZWN0Lg0KCSAqIEBwYXJhbSAgc3RyaW5nfG51bGwgICRzZXBhcmF0b3IgVGhlIHBhdGggc2VwYXJhdG9yLCBhbmQgZW1wdHkgc3RyaW5nIHdpbGwgZmxhdHRlbiB0aGUgcmVnaXN0cnkuDQoJICogQHNpbmNlICA1LjAuNA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdCgkZGF0YSA9IG51bGwsID9zdHJpbmcgJHNlcGFyYXRvciA9IG51bGwpDQoJew0KCQkvLyB3ZSBkb24ndCBhbGxvdyBudWxsIG9uIGluaXRpYWxpemF0aW9uIChkZWZhdWx0IGlzIGEgZG90KQ0KCQkvLyBzbyB0aGF0IGFsbCBjbGFzcyBpbmhlcml0YW5jZSBjYW4gb3ZlcnJpZGUgdGhlIHNlcGFyYXRvciBwcm9wZXJ0eQ0KCQkvLyB1c2UgYW4gZW1wdHkgc3RyaW5nIGlmIHlvdSB3YW50IHRvIGZsYXR0ZW4gdGhlIHJlZ2lzdHJ5DQoJCWlmICgkc2VwYXJhdG9yICE9PSBudWxsKQ0KCQl7DQoJCQkkdGhpcy0+c2V0U2VwYXJhdG9yKCRzZXBhcmF0b3IpOw0KCQl9DQoNCgkJaWYgKCRkYXRhICE9PSBudWxsKQ0KCQl7DQoJCQlpZiAoaXNfYXJyYXkoJGRhdGEpKQ0KCQkJew0KCQkJCSR0aGlzLT5sb2FkQXJyYXkoJGRhdGEpOw0KCQkJfQ0KCQkJZWxzZWlmIChpc19zdHJpbmcoJGRhdGEpKQ0KCQkJew0KCQkJCSR0aGlzLT5sb2FkU3RyaW5nKCRkYXRhKTsNCgkJCX0NCgkJCWVsc2VpZiAoaXNfb2JqZWN0KCRkYXRhKSkNCgkJCXsNCgkJCQkkdGhpcy0+bG9hZE9iamVjdCgkZGF0YSk7DQoJCQl9DQoJCX0NCgl9DQoNCgkvKioNCgkgKiBNYWdpYyBtZXRob2QgdG8gZ2V0IGEgdmFsdWUgZnJvbSB0aGUgcmVnaXN0cnkuDQoJICoNCgkgKiBBbGxvd3MgZm9yIGFjY2Vzc2luZyByZWdpc3RyeSBkYXRhIHVzaW5nIG9iamVjdCBwcm9wZXJ0eSBzeW50YXguDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICRuYW1lIFRoZSBuYW1lIG9mIHRoZSBwcm9wZXJ0eSB0byBnZXQuDQoJICoNCgkgKiBAcmV0dXJuIG1peGVkIFRoZSB2YWx1ZSBvZiB0aGUgcHJvcGVydHksIG9yIG51bGwgaWYgbm90IGZvdW5kLg0KCSAqIEBzaW5jZSAgNS4wLjQNCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gX19nZXQoJG5hbWUpDQoJew0KCQlyZXR1cm4gJHRoaXMtPmdldCgkbmFtZSk7DQoJfQ0KDQoJLyoqDQoJICogTWFnaWMgbWV0aG9kIHRvIHNldCBhIHZhbHVlIGluIHRoZSByZWdpc3RyeS4NCgkgKg0KCSAqIEFsbG93cyBmb3Igc2V0dGluZyByZWdpc3RyeSBkYXRhIHVzaW5nIG9iamVjdCBwcm9wZXJ0eSBzeW50YXguDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICRuYW1lICBUaGUgbmFtZSBvZiB0aGUgcHJvcGVydHkgdG8gc2V0Lg0KCSAqIEBwYXJhbSBtaXhlZCAgJHZhbHVlIFRoZSB2YWx1ZSB0byBzZXQuDQoJICoNCgkgKiBAcmV0dXJuIHZvaWQNCgkgKiBAc2luY2UgIDUuMC40DQoJICovDQoJcHVibGljIGZ1bmN0aW9uIF9fc2V0KCRuYW1lLCAkdmFsdWUpDQoJew0KCQkkdGhpcy0+c2V0KCRuYW1lLCAkdmFsdWUpOw0KCX0NCg0KCS8qKg0KCSAqIE1hZ2ljIG1ldGhvZCB0byBjaGVjayBpZiBhIHByb3BlcnR5IGlzIHNldCBpbiB0aGUgcmVnaXN0cnkuDQoJICoNCgkgKiBBbGxvd3MgZm9yIHVzaW5nIGlzc2V0KCkgb24gcmVnaXN0cnkgcHJvcGVydGllcy4NCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmcgJG5hbWUgVGhlIG5hbWUgb2YgdGhlIHByb3BlcnR5IHRvIGNoZWNrLg0KCSAqDQoJICogQHJldHVybiBib29sIFRydWUgaWYgdGhlIHByb3BlcnR5IGlzIHNldCwgZmFsc2Ugb3RoZXJ3aXNlLg0KCSAqIEBzaW5jZSAgNS4wLjQNCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gX19pc3NldCgkbmFtZSkNCgl7DQoJCXJldHVybiAkdGhpcy0+ZXhpc3RzKCRuYW1lKTsNCgl9DQoNCgkvKioNCgkgKiBNYWdpYyBtZXRob2QgdG8gdW5zZXQgYSBwcm9wZXJ0eSBpbiB0aGUgcmVnaXN0cnkuDQoJICoNCgkgKiBBbGxvd3MgZm9yIHVzaW5nIHVuc2V0KCkgb24gcmVnaXN0cnkgcHJvcGVydGllcy4NCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmcgJG5hbWUgVGhlIG5hbWUgb2YgdGhlIHByb3BlcnR5IHRvIHVuc2V0Lg0KCSAqDQoJICogQHJldHVybiB2b2lkDQoJICogQHNpbmNlICA1LjAuNA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBfX3Vuc2V0KCRuYW1lKQ0KCXsNCgkJJHRoaXMtPnJlbW92ZSgkbmFtZSk7DQoJfQ0KDQoJLyoqDQoJICogTWFnaWMgbWV0aG9kIHRvIGNsb25lIHRoZSByZWdpc3RyeS4NCgkgKg0KCSAqIFBlcmZvcm1zIGEgZGVlcCBjb3B5IG9mIHRoZSByZWdpc3RyeSBkYXRhLg0KCSAqDQoJICogQHJldHVybiB2b2lkDQoJICogQHNpbmNlICA1LjAuNA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBfX2Nsb25lKCkNCgl7DQoJCSR0aGlzLT5hY3RpdmUgPSB1bnNlcmlhbGl6ZShzZXJpYWxpemUoJHRoaXMtPmFjdGl2ZSkpOw0KCX0NCg0KCS8qKg0KCSAqIE1hZ2ljIG1ldGhvZCB0byBjb252ZXJ0IHRoZSByZWdpc3RyeSB0byBhIHN0cmluZy4NCgkgKg0KCSAqIFJldHVybnMgdGhlIHJlZ2lzdHJ5IGRhdGEgaW4gSlNPTiBmb3JtYXQuDQoJICoNCgkgKiBAcmV0dXJuIHN0cmluZyBUaGUgcmVnaXN0cnkgZGF0YSBpbiBKU09OIGZvcm1hdC4NCgkgKiBAc2luY2UgIDUuMC40DQoJICovDQoJcHVibGljIGZ1bmN0aW9uIF9fdG9TdHJpbmcoKQ0KCXsNCgkJcmV0dXJuICR0aGlzLT50b1N0cmluZygpOw0KCX0NCg0KCS8qKg0KCSAqIExvYWRzIGRhdGEgaW50byB0aGUgcmVnaXN0cnkgZnJvbSBhIHN0cmluZyB1c2luZyBKb29tbGEncyBmb3JtYXQgY2xhc3Nlcy4NCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmcgICRkYXRhICAgICBUaGUgZGF0YSBzdHJpbmcgdG8gbG9hZC4NCgkgKiBAcGFyYW0gc3RyaW5nICAkZm9ybWF0ICAgVGhlIGZvcm1hdCBvZiB0aGUgZGF0YSBzdHJpbmcuIFN1cHBvcnRlZCBmb3JtYXRzOiAnanNvbicsICdpbmknLCAneG1sJywgJ3BocCcuDQoJICogQHBhcmFtICBhcnJheSAgJG9wdGlvbnMgIE9wdGlvbnMgdXNlZCBieSB0aGUgZm9ybWF0dGVyDQoJICoNCgkgKiBAcmV0dXJuIHNlbGYNCgkgKiBAdGhyb3dzIFxJbnZhbGlkQXJndW1lbnRFeGNlcHRpb24gSWYgdGhlIGZvcm1hdCBpcyBub3Qgc3VwcG9ydGVkLg0KCSAqIEBzaW5jZSAgNS4wLjQNCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gbG9hZFN0cmluZyhzdHJpbmcgJGRhdGEsIHN0cmluZyAkZm9ybWF0ID0gJ0pTT04nLCBhcnJheSAkb3B0aW9ucyA9IFtdKTogc2VsZg0KCXsNCgkJLy8gTG9hZCBhIHN0cmluZyBpbnRvIHRoZSBnaXZlbiBuYW1lc3BhY2UgW29yIGRlZmF1bHQgbmFtZXNwYWNlIGlmIG5vdCBnaXZlbl0NCgkJJG9iamVjdCA9IEZvcm1hdEZhY3Rvcnk6OmdldEZvcm1hdCgkZm9ybWF0LCAkb3B0aW9ucyktPnN0cmluZ1RvT2JqZWN0KCRkYXRhLCAkb3B0aW9ucyk7DQoNCgkJLy8gTWVyZ2UgdGhlIG9iamVjdCBpbnRvIHRoZSByZWdpc3RyeQ0KCQkkdGhpcy0+bG9hZE9iamVjdCgkb2JqZWN0KTsNCg0KCQlyZXR1cm4gJHRoaXM7DQoJfQ0KDQoJLyoqDQoJICogTG9hZHMgZGF0YSBpbnRvIHRoZSByZWdpc3RyeSBmcm9tIGFuIG9iamVjdC4NCgkgKg0KCSAqIEBwYXJhbSBvYmplY3QgICRvYmplY3QgIFRoZSBkYXRhIG9iamVjdCB0byBsb2FkLg0KCSAqDQoJICogQHJldHVybiBzZWxmDQoJICogQHNpbmNlICA1LjAuNA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBsb2FkT2JqZWN0KG9iamVjdCAkb2JqZWN0KTogc2VsZg0KCXsNCgkJLy8gQ29udmVydCB0aGUgb2JqZWN0IHRvIGFuIGFycmF5DQoJCSRhcnJheSA9ICR0aGlzLT5vYmplY3RUb0FycmF5KCRvYmplY3QpOw0KDQoJCS8vIE1lcmdlIHRoZSBhcnJheSBpbnRvIHRoZSByZWdpc3RyeQ0KCQkkdGhpcy0+bG9hZEFycmF5KCRhcnJheSk7DQoNCgkJcmV0dXJuICR0aGlzOw0KCX0NCg0KCS8qKg0KCSAqIExvYWRzIGRhdGEgaW50byB0aGUgcmVnaXN0cnkgZnJvbSBhbiBhcnJheS4NCgkgKg0KCSAqIFRoZSBsb2FkZWQgZGF0YSB3aWxsIGJlIG1lcmdlZCBpbnRvIHRoZSByZWdpc3RyeSdzIGV4aXN0aW5nIGRhdGEuDQoJICoNCgkgKiBAcGFyYW0gYXJyYXkgJGFycmF5IFRoZSBhcnJheSBvZiBkYXRhIHRvIGxvYWQgaW50byB0aGUgcmVnaXN0cnkuDQoJICoNCgkgKiBAcmV0dXJuIHNlbGYNCgkgKiBAc2luY2UgIDUuMC40DQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGxvYWRBcnJheShhcnJheSAkYXJyYXkpOiBzZWxmDQoJew0KCQkkdGhpcy0+YWN0aXZlID0gJHRoaXMtPmFycmF5TWVyZ2VSZWN1cnNpdmUoJHRoaXMtPmFjdGl2ZSwgJGFycmF5KTsNCgkJcmV0dXJuICR0aGlzOw0KCX0NCg0KCS8qKg0KCSAqIExvYWRzIGRhdGEgaW50byB0aGUgcmVnaXN0cnkgZnJvbSBhIGZpbGUuDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICRwYXRoICAgVGhlIHBhdGggdG8gdGhlIGZpbGUgdG8gbG9hZC4NCgkgKiBAcGFyYW0gc3RyaW5nICRmb3JtYXQgVGhlIGZvcm1hdCBvZiB0aGUgZmlsZS4gU3VwcG9ydGVkIGZvcm1hdHM6ICdqc29uJywgJ2luaScsICd4bWwnLCAncGhwJy4NCgkgKg0KCSAqIEByZXR1cm4gc2VsZg0KCSAqIEB0aHJvd3MgXEludmFsaWRBcmd1bWVudEV4Y2VwdGlvbiBJZiB0aGUgZmlsZSBkb2VzIG5vdCBleGlzdCBvciBpcyBub3QgcmVhZGFibGUuDQoJICogQHRocm93cyBcUnVudGltZUV4Y2VwdGlvbiBJZiB0aGUgZmlsZSBjYW5ub3QgYmUgcmVhZC4NCgkgKiBAc2luY2UgIDUuMC40DQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGxvYWRGaWxlKHN0cmluZyAkcGF0aCwgc3RyaW5nICRmb3JtYXQgPSAnanNvbicpOiBzZWxmDQoJew0KCQlpZiAoIWZpbGVfZXhpc3RzKCRwYXRoKSB8fCAhaXNfcmVhZGFibGUoJHBhdGgpKQ0KCQl7DQoJCQl0aHJvdyBuZXcgXEludmFsaWRBcmd1bWVudEV4Y2VwdGlvbigiRmlsZSBkb2VzIG5vdCBleGlzdCBvciBpcyBub3QgcmVhZGFibGU6IHskcGF0aH0iKTsNCgkJfQ0KDQoJCSRkYXRhID0gZmlsZV9nZXRfY29udGVudHMoJHBhdGgpOw0KDQoJCWlmICgkZGF0YSA9PT0gZmFsc2UpDQoJCXsNCgkJCXRocm93IG5ldyBcUnVudGltZUV4Y2VwdGlvbigiRmFpbGVkIHRvIHJlYWQgZmlsZTogeyRwYXRofSIpOw0KCQl9DQoNCgkJJHRoaXMtPmxvYWRTdHJpbmcoJGRhdGEsICRmb3JtYXQpOw0KDQoJCXJldHVybiAkdGhpczsNCgl9DQoNCgkvKioNCgkgKiBTZXRzIGEgdmFsdWUgaW50byB0aGUgcmVnaXN0cnkgdXNpbmcgbXVsdGlwbGUga2V5cy4NCgkgKg0KCSAqIEBwYXJhbSAgc3RyaW5nICAkcGF0aCAgICAgIFJlZ2lzdHJ5IHBhdGggKGUuZy4gdmRtLmNvbnRlbnQuYnVpbGRlcikNCgkgKiBAcGFyYW0gIG1peGVkICAgJHZhbHVlICAgICBWYWx1ZSBvZiBlbnRyeQ0KCSAqDQoJICogQHRocm93cyBcSW52YWxpZEFyZ3VtZW50RXhjZXB0aW9uIElmIGFueSBvZiB0aGUgcGF0aCB2YWx1ZXMgYXJlIG5vdCBhIG51bWJlciBvciBzdHJpbmcuDQoJICogQHJldHVybiBzZWxmDQoJICogQHNpbmNlICAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBzZXQoc3RyaW5nICRwYXRoLCAkdmFsdWUpOiBzZWxmDQoJew0KCQlpZiAoKCRrZXlzID0gJHRoaXMtPmdldEFjdGl2ZUtleXMoJHBhdGgpKSA9PT0gbnVsbCkNCgkJew0KCQkJdGhyb3cgbmV3IFxJbnZhbGlkQXJndW1lbnRFeGNlcHRpb24oIlBhdGggbXVzdCBvbmx5IGJlIHN0cmluZ3Mgb3IgbnVtYmVycyB0byBzZXQgYW55IHZhbHVlLiIpOw0KCQl9DQoNCgkJJHRoaXMtPnNldEFjdGl2ZSgkdmFsdWUsIC4uLiRrZXlzKTsNCg0KCQlyZXR1cm4gJHRoaXM7DQoJfQ0KDQoJLyoqDQoJICogQWRkcyBjb250ZW50IGludG8gdGhlIHJlZ2lzdHJ5LiBJZiBhIGtleSBleGlzdHMsDQoJICogaXQgZWl0aGVyIGFwcGVuZHMgb3IgY29uY2F0ZW5hdGVzIGJhc2VkIG9uICRhc0FycmF5IHN3aXRjaC4NCgkgKg0KCSAqIEBwYXJhbSAgc3RyaW5nICAgICAgJHBhdGggICAgICBSZWdpc3RyeSBwYXRoIChlLmcuIHZkbS5jb250ZW50LmJ1aWxkZXIpDQoJICogQHBhcmFtICBtaXhlZCAgICAgICAkdmFsdWUgICAgIFZhbHVlIG9mIGVudHJ5DQoJICogQHBhcmFtICBib29sfG51bGwgICAkYXNBcnJheSAgIERldGVybWluZXMgaWYgdGhlIG5ldyB2YWx1ZSBzaG91bGQgYmUgdHJlYXRlZCBhcyBhbiBhcnJheS4NCgkgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRGVmYXVsdCBpcyAkYWRkQXNBcnJheSA9IGZhbHNlIChpZiBudWxsKSBpbiBiYXNlIGNsYXNzLg0KCSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPdmVycmlkZSBpbiBjaGlsZCBjbGFzcyBhbGxvd2VkIHNldCBjbGFzcyBwcm9wZXJ0eSAkYWRkQXNBcnJheSA9IHRydWUuDQoJICoNCgkgKiBAdGhyb3dzIFxJbnZhbGlkQXJndW1lbnRFeGNlcHRpb24gSWYgYW55IG9mIHRoZSBwYXRoIHZhbHVlcyBhcmUgbm90IGEgbnVtYmVyIG9yIHN0cmluZy4NCgkgKiBAcmV0dXJuIHNlbGYNCgkgKiBAc2luY2UgIDMuMi4wDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGFkZChzdHJpbmcgJHBhdGgsICR2YWx1ZSwgP2Jvb2wgJGFzQXJyYXkgPSBudWxsKTogc2VsZg0KCXsNCgkJaWYgKCgka2V5cyA9ICR0aGlzLT5nZXRBY3RpdmVLZXlzKCRwYXRoKSkgPT09IG51bGwpDQoJCXsNCgkJCXRocm93IG5ldyBcSW52YWxpZEFyZ3VtZW50RXhjZXB0aW9uKCJQYXRoIG11c3Qgb25seSBiZSBzdHJpbmdzIG9yIG51bWJlcnMgdG8gYWRkIGFueSB2YWx1ZS4iKTsNCgkJfQ0KDQoJCSR0aGlzLT5hZGRBY3RpdmUoJHZhbHVlLCAkYXNBcnJheSwgLi4uJGtleXMpOw0KDQoJCXJldHVybiAkdGhpczsNCgl9DQoNCgkvKioNCgkgKiBSZXRyaWV2ZXMgYSB2YWx1ZSAob3Igc3ViLWFycmF5KSBmcm9tIHRoZSByZWdpc3RyeSB1c2luZyBtdWx0aXBsZSBrZXlzLg0KCSAqDQoJICogQHBhcmFtICBzdHJpbmcgICRwYXRoICAgICBSZWdpc3RyeSBwYXRoIChlLmcuIHZkbS5jb250ZW50LmJ1aWxkZXIpDQoJICogQHBhcmFtICBtaXhlZCAgICRkZWZhdWx0ICBPcHRpb25hbCBkZWZhdWx0IHZhbHVlLCByZXR1cm5lZCBpZiB0aGUgaW50ZXJuYWwgZG9lc24ndCBleGlzdC4NCgkgKg0KCSAqIEB0aHJvd3MgXEludmFsaWRBcmd1bWVudEV4Y2VwdGlvbiBJZiBhbnkgb2YgdGhlIHBhdGggdmFsdWVzIGFyZSBub3QgYSBudW1iZXIgb3Igc3RyaW5nLg0KCSAqIEByZXR1cm4gbWl4ZWQgVGhlIHZhbHVlIG9yIHN1Yi1hcnJheSBmcm9tIHRoZSBzdG9yYWdlLiBOdWxsIGlmIHRoZSBsb2NhdGlvbiBkb2Vzbid0IGV4aXN0Lg0KCSAqIEBzaW5jZSAgMy4yLjANCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZ2V0KHN0cmluZyAkcGF0aCwgJGRlZmF1bHQgPSBudWxsKTogbWl4ZWQNCgl7DQoJCWlmICgoJGtleXMgPSAkdGhpcy0+Z2V0QWN0aXZlS2V5cygkcGF0aCkpID09PSBudWxsKQ0KCQl7DQoJCQl0aHJvdyBuZXcgXEludmFsaWRBcmd1bWVudEV4Y2VwdGlvbigiUGF0aCBtdXN0IG9ubHkgYmUgc3RyaW5ncyBvciBudW1iZXJzIHRvIGdldCBhbnkgdmFsdWUuIik7DQoJCX0NCg0KCQlyZXR1cm4gJHRoaXMtPmdldEFjdGl2ZSgkZGVmYXVsdCwgLi4uJGtleXMpOw0KCX0NCg0KCS8qKg0KCSAqIFJlbW92ZXMgYSB2YWx1ZSAob3Igc3ViLWFycmF5KSBmcm9tIHRoZSByZWdpc3RyeSB1c2luZyBtdWx0aXBsZSBrZXlzLg0KCSAqDQoJICogQHBhcmFtICBzdHJpbmcgICRwYXRoICBSZWdpc3RyeSBwYXRoIChlLmcuIHZkbS5jb250ZW50LmJ1aWxkZXIpDQoJICoNCgkgKiBAdGhyb3dzIFxJbnZhbGlkQXJndW1lbnRFeGNlcHRpb24gSWYgYW55IG9mIHRoZSBwYXRoIHZhbHVlcyBhcmUgbm90IGEgbnVtYmVyIG9yIHN0cmluZy4NCgkgKiBAcmV0dXJuIHNlbGYNCgkgKiBAc2luY2UgIDMuMi4wDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIHJlbW92ZShzdHJpbmcgJHBhdGgpOiBzZWxmDQoJew0KCQlpZiAoKCRrZXlzID0gJHRoaXMtPmdldEFjdGl2ZUtleXMoJHBhdGgpKSA9PT0gbnVsbCkNCgkJew0KCQkJdGhyb3cgbmV3IFxJbnZhbGlkQXJndW1lbnRFeGNlcHRpb24oIlBhdGggbXVzdCBvbmx5IGJlIHN0cmluZ3Mgb3IgbnVtYmVycyB0byByZW1vdmUgYW55IHZhbHVlLiIpOw0KCQl9DQoNCgkJJHRoaXMtPnJlbW92ZUFjdGl2ZSguLi4ka2V5cyk7DQoNCgkJcmV0dXJuICR0aGlzOw0KCX0NCg0KCS8qKg0KCSAqIENoZWNrcyB0aGUgZXhpc3RlbmNlIG9mIGEgcGFydGljdWxhciBsb2NhdGlvbiBpbiB0aGUgcmVnaXN0cnkgdXNpbmcgbXVsdGlwbGUga2V5cy4NCgkgKg0KCSAqIEBwYXJhbSAgc3RyaW5nICAkcGF0aCAgUmVnaXN0cnkgcGF0aCAoZS5nLiB2ZG0uY29udGVudC5idWlsZGVyKQ0KCSAqDQoJICogQHRocm93cyBcSW52YWxpZEFyZ3VtZW50RXhjZXB0aW9uIElmIGFueSBvZiB0aGUgcGF0aCB2YWx1ZXMgYXJlIG5vdCBhIG51bWJlciBvciBzdHJpbmcuDQoJICogQHJldHVybiBib29sIFRydWUgaWYgdGhlIGxvY2F0aW9uIGV4aXN0cywgZmFsc2Ugb3RoZXJ3aXNlLg0KCSAqIEBzaW5jZSAgMy4yLjANCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZXhpc3RzKHN0cmluZyAkcGF0aCk6IGJvb2wNCgl7DQoJCWlmICgoJGtleXMgPSAkdGhpcy0+Z2V0QWN0aXZlS2V5cygkcGF0aCkpID09PSBudWxsKQ0KCQl7DQoJCQl0aHJvdyBuZXcgXEludmFsaWRBcmd1bWVudEV4Y2VwdGlvbigiUGF0aCBtdXN0IG9ubHkgYmUgc3RyaW5ncyBvciBudW1iZXJzIHRvIGNoZWNrIGlmIGFueSB2YWx1ZSBleGlzdC4iKTsNCgkJfQ0KDQoJCXJldHVybiAkdGhpcy0+ZXhpc3RzQWN0aXZlKC4uLiRrZXlzKTsNCgl9DQoNCgkvKioNCgkgKiBTcGVjaWZ5IGRhdGEgd2hpY2ggc2hvdWxkIGJlIHNlcmlhbGl6ZWQgdG8gSlNPTi4NCgkgKg0KCSAqIEByZXR1cm4gbWl4ZWQgRGF0YSB3aGljaCBjYW4gYmUgc2VyaWFsaXplZCBieSBqc29uX2VuY29kZSgpLA0KCSAqICAgICAgICAgICAgICAgICB3aGljaCBpcyBhIHZhbHVlIG9mIGFueSB0eXBlIG90aGVyIHRoYW4gYSByZXNvdXJjZS4NCgkgKiBAc2luY2UgIDUuMC40DQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGpzb25TZXJpYWxpemUoKTogbWl4ZWQNCgl7DQoJCXJldHVybiAkdGhpcy0+YWN0aXZlOw0KCX0NCg0KCS8qKg0KCSAqIENvdW50IGVsZW1lbnRzIG9mIHRoZSByZWdpc3RyeS4NCgkgKg0KCSAqIEByZXR1cm4gaW50IFRoZSBudW1iZXIgb2YgZWxlbWVudHMgaW4gdGhlIHJlZ2lzdHJ5Lg0KCSAqIEBzaW5jZSAgNS4wLjQNCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gY291bnQoKTogaW50DQoJew0KCQlyZXR1cm4gY291bnQoJHRoaXMtPmFjdGl2ZSk7DQoJfQ0KDQoJLyoqDQoJICogV2hldGhlciBhIGdpdmVuIG9mZnNldCBleGlzdHMgaW4gdGhlIHJlZ2lzdHJ5Lg0KCSAqDQoJICogQHBhcmFtIG1peGVkICRvZmZzZXQgQW4gb2Zmc2V0IHRvIGNoZWNrIGZvci4NCgkgKg0KCSAqIEByZXR1cm4gYm9vbCBUcnVlIGlmIHRoZSBvZmZzZXQgZXhpc3RzLCBmYWxzZSBvdGhlcndpc2UuDQoJICogQHNpbmNlICA1LjAuNA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBvZmZzZXRFeGlzdHMobWl4ZWQgJG9mZnNldCk6IGJvb2wNCgl7DQoJCWlmICghaXNfc3RyaW5nKCRvZmZzZXQpKQ0KCQl7DQoJCQlyZXR1cm4gZmFsc2U7DQoJCX0NCgkJcmV0dXJuICR0aGlzLT5leGlzdHMoJG9mZnNldCk7DQoJfQ0KDQoJLyoqDQoJICogUmV0cmlldmUgdGhlIHZhbHVlIGF0IGEgZ2l2ZW4gb2Zmc2V0Lg0KCSAqDQoJICogQHBhcmFtIG1peGVkICRvZmZzZXQgVGhlIG9mZnNldCB0byByZXRyaWV2ZS4NCgkgKg0KCSAqIEByZXR1cm4gbWl4ZWQgVGhlIHZhbHVlIGF0IHRoZSBzcGVjaWZpZWQgb2Zmc2V0Lg0KCSAqIEBzaW5jZSAgNS4wLjQNCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gb2Zmc2V0R2V0KG1peGVkICRvZmZzZXQpOiBtaXhlZA0KCXsNCgkJaWYgKCFpc19zdHJpbmcoJG9mZnNldCkpDQoJCXsNCgkJCXJldHVybiBudWxsOw0KCQl9DQoJCXJldHVybiAkdGhpcy0+Z2V0KCRvZmZzZXQpOw0KCX0NCg0KCS8qKg0KCSAqIFNldCB0aGUgdmFsdWUgYXQgYSBnaXZlbiBvZmZzZXQuDQoJICoNCgkgKiBAcGFyYW0gbWl4ZWQgJG9mZnNldCBUaGUgb2Zmc2V0IHRvIGFzc2lnbiB0aGUgdmFsdWUgdG8uDQoJICogQHBhcmFtIG1peGVkICR2YWx1ZSAgVGhlIHZhbHVlIHRvIHNldC4NCgkgKg0KCSAqIEByZXR1cm4gdm9pZA0KCSAqIEBzaW5jZSAgNS4wLjQNCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gb2Zmc2V0U2V0KG1peGVkICRvZmZzZXQsIG1peGVkICR2YWx1ZSk6IHZvaWQNCgl7DQoJCWlmICghaXNfc3RyaW5nKCRvZmZzZXQpKQ0KCQl7DQoJCQlyZXR1cm47DQoJCX0NCgkJJHRoaXMtPnNldCgkb2Zmc2V0LCAkdmFsdWUpOw0KCX0NCg0KCS8qKg0KCSAqIFVuc2V0IHRoZSB2YWx1ZSBhdCBhIGdpdmVuIG9mZnNldC4NCgkgKg0KCSAqIEBwYXJhbSBtaXhlZCAkb2Zmc2V0IFRoZSBvZmZzZXQgdG8gdW5zZXQuDQoJICoNCgkgKiBAcmV0dXJuIHZvaWQNCgkgKiBAc2luY2UgIDUuMC40DQoJICovDQoJcHVibGljIGZ1bmN0aW9uIG9mZnNldFVuc2V0KG1peGVkICRvZmZzZXQpOiB2b2lkDQoJew0KCQlpZiAoIWlzX3N0cmluZygkb2Zmc2V0KSkNCgkJew0KCQkJcmV0dXJuOw0KCQl9DQoJCSR0aGlzLT5yZW1vdmUoJG9mZnNldCk7DQoJfQ0KDQoJLyoqDQoJICogUmV0cmlldmUgYW4gZXh0ZXJuYWwgaXRlcmF0b3IgZm9yIHRoZSByZWdpc3RyeS4NCgkgKg0KCSAqIEByZXR1cm4gXFRyYXZlcnNhYmxlIEFuIGluc3RhbmNlIG9mIGFuIG9iamVjdCBpbXBsZW1lbnRpbmcgSXRlcmF0b3Igb3IgVHJhdmVyc2FibGUuDQoJICogQHNpbmNlICA1LjAuNA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBnZXRJdGVyYXRvcigpOiBcVHJhdmVyc2FibGUNCgl7DQoJCXJldHVybiBuZXcgXEFycmF5SXRlcmF0b3IoJHRoaXMtPmFjdGl2ZSk7DQoJfQ0KDQoJLyoqDQoJICogR2V0IHRoZSByZWdpc3RyeSBkYXRhIGFzIGFuIGFzc29jaWF0aXZlIGFycmF5Lg0KCSAqDQoJICogQHJldHVybiBhcnJheSBUaGUgcmVnaXN0cnkgZGF0YS4NCgkgKiBAc2luY2UgIDUuMC40DQoJICovDQoJcHVibGljIGZ1bmN0aW9uIHRvQXJyYXkoKTogYXJyYXkNCgl7DQoJCXJldHVybiAkdGhpcy0+YWN0aXZlOw0KCX0NCg0KCS8qKg0KCSAqIEdldCB0aGUgcmVnaXN0cnkgZGF0YSBhcyBhbiBvYmplY3QuDQoJICoNCgkgKiBAcmV0dXJuIG9iamVjdCBUaGUgcmVnaXN0cnkgZGF0YSBjb252ZXJ0ZWQgdG8gYW4gb2JqZWN0Lg0KCSAqIEBzaW5jZSAgNS4wLjQNCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gdG9PYmplY3QoKQ0KCXsNCgkJcmV0dXJuICR0aGlzLT5hcnJheVRvT2JqZWN0KCR0aGlzLT5hY3RpdmUpOw0KCX0NCg0KCS8qKg0KCSAqIENvbnZlcnRzIHRoZSByZWdpc3RyeSBkYXRhIHRvIGEgc3RyaW5nIGluIHRoZSBzcGVjaWZpZWQgZm9ybWF0Lg0KCSAqDQoJICogQHBhcmFtIHN0cmluZyAkZm9ybWF0ICBUaGUgZm9ybWF0IHRvIG91dHB1dCB0aGUgc3RyaW5nIGluLiBTdXBwb3J0ZWQgZm9ybWF0czogJ2pzb24nLCAnaW5pJywgJ3htbCcsICdwaHAnLg0KCSAqIEBwYXJhbSBhcnJheSAgJG9wdGlvbnMgT3B0aW9ucyB1c2VkIGJ5IHRoZSBmb3JtYXR0ZXIuDQoJICoNCgkgKiBAcmV0dXJuIHN0cmluZyBUaGUgcmVnaXN0cnkgZGF0YSBpbiB0aGUgc3BlY2lmaWVkIGZvcm1hdC4NCgkgKg0KCSAqIEB0aHJvd3MgXEludmFsaWRBcmd1bWVudEV4Y2VwdGlvbiBJZiB0aGUgZm9ybWF0IGlzIG5vdCBzdXBwb3J0ZWQuDQoJICogQHNpbmNlICA1LjAuNA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiB0b1N0cmluZyhzdHJpbmcgJGZvcm1hdCA9ICdKU09OJywgYXJyYXkgJG9wdGlvbnMgPSBbXSk6IHN0cmluZw0KCXsNCgkJLy8gQ29udmVydCB0aGUgaW50ZXJuYWwgYXJyYXkgdG8gYW4gb2JqZWN0DQoJCSRvYmplY3QgPSAkdGhpcy0+YXJyYXlUb09iamVjdCgkdGhpcy0+YWN0aXZlKTsNCg0KCQlyZXR1cm4gRm9ybWF0RmFjdG9yeTo6Z2V0Rm9ybWF0KCRmb3JtYXQsICRvcHRpb25zKS0+b2JqZWN0VG9TdHJpbmcoJG9iamVjdCwgJG9wdGlvbnMpOw0KCX0NCg0KCS8qKg0KCSAqIEZsYXR0ZW5zIHRoZSByZWdpc3RyeSBkYXRhIGludG8gYSBvbmUtZGltZW5zaW9uYWwgYXJyYXkuDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nfG51bGwgJHNlcGFyYXRvciAgVGhlIHNlcGFyYXRvciBmb3IgdGhlIGtleSBuYW1lcy4NCgkgKiBAcGFyYW0gYm9vbCAgICAgICAgJGZ1bGwgICAgICAgVHJ1ZSB0byBpbmNsdWRlIHRoZSBmdWxsIHBhdGggYXMga2V5cy4NCgkgKg0KCSAqIEByZXR1cm4gYXJyYXkgVGhlIGZsYXR0ZW5lZCBkYXRhIGFycmF5Lg0KCSAqIEBzaW5jZSA1LjAuNA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBmbGF0dGVuKD9zdHJpbmcgJHNlcGFyYXRvciA9IG51bGwsIGJvb2wgJGZ1bGwgPSBmYWxzZSk6IGFycmF5DQoJew0KCQkvLyB3ZSB1c2UgZGVmYXVsdCBzZXBhcmF0b3INCgkJaWYgKCRzZXBhcmF0b3IgPT09IG51bGwpDQoJCXsNCgkJCSRzZXBhcmF0b3IgPSAkdGhpcy0+c2VwYXJhdG9yOw0KCQl9DQoNCgkJcmV0dXJuICR0aGlzLT5mbGF0dGVuQXJyYXkoJHRoaXMtPmFjdGl2ZSwgJHNlcGFyYXRvciwgJGZ1bGwpOw0KCX0NCg0KCS8qKg0KCSAqIFNldHMgYSBkZWZhdWx0IHZhbHVlIGlmIG5vdCBhbHJlYWR5IHNldC4NCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmcgJHBhdGggVGhlIHJlZ2lzdHJ5IHBhdGggKGUuZy4sICd2ZG0uY29udGVudC5idWlsZGVyJykuDQoJICogQHBhcmFtIG1peGVkICAkZGVmYXVsdCBUaGUgZGVmYXVsdCB2YWx1ZSB0byBzZXQgaWYgdGhlIHBhdGggZG9lcyBub3QgZXhpc3QuDQoJICoNCgkgKiBAcmV0dXJuIG1peGVkIFRoZSB2YWx1ZSBvZiB0aGUgcGF0aCBhZnRlciB0aGUgbWV0aG9kIGNhbGwuDQoJICogQHNpbmNlICA1LjAuNA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBkZWYoc3RyaW5nICRwYXRoLCAkZGVmYXVsdCkNCgl7DQoJCWlmICghJHRoaXMtPmV4aXN0cygkcGF0aCkpDQoJCXsNCgkJCSR0aGlzLT5zZXQoJHBhdGgsICRkZWZhdWx0KTsNCgkJCXJldHVybiAkZGVmYXVsdDsNCgkJfQ0KCQlyZXR1cm4gJHRoaXMtPmdldCgkcGF0aCk7DQoJfQ0KDQoJLyoqDQoJICogTWVyZ2VzIGFub3RoZXIgcmVnaXN0cnkgaW50byB0aGlzIG9uZS4NCgkgKg0KCSAqIFRoZSBkYXRhIGZyb20gdGhlIHNvdXJjZSByZWdpc3RyeSB3aWxsIGJlIG1lcmdlZCBpbnRvIHRoaXMgcmVnaXN0cnksDQoJICogb3ZlcndyaXRpbmcgYW55IGV4aXN0aW5nIHZhbHVlcyB3aXRoIHRoZSBzYW1lIGtleXMuDQoJICoNCgkgKiBAcGFyYW0gUmVnaXN0cnlpbnRlcmZhY2UgJHNvdXJjZSBUaGUgcmVnaXN0cnkgdG8gbWVyZ2Ugd2l0aCB0aGlzIG9uZS4NCgkgKg0KCSAqIEByZXR1cm4gc2VsZg0KCSAqIEBzaW5jZSAgNS4wLjQNCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gbWVyZ2UoUmVnaXN0cnlpbnRlcmZhY2UgJHNvdXJjZSk6IHNlbGYNCgl7DQoJCSR0aGlzLT5hY3RpdmUgPSAkdGhpcy0+YXJyYXlNZXJnZVJlY3Vyc2l2ZSgkdGhpcy0+YWN0aXZlLCAkc291cmNlLT50b0FycmF5KCkpOw0KCQlyZXR1cm4gJHRoaXM7DQoJfQ0KDQoJLyoqDQoJICogQ2xlYXJzIGFsbCBkYXRhIGZyb20gdGhlIHJlZ2lzdHJ5Lg0KCSAqDQoJICogQHJldHVybiBzZWxmDQoJICogQHNpbmNlICA1LjAuNA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBjbGVhcigpOiBzZWxmDQoJew0KCQkkdGhpcy0+YWN0aXZlID0gW107DQoJCXJldHVybiAkdGhpczsNCgl9DQoNCgkvKioNCgkgKiBFeHRyYWN0cyBhIHN1YnNldCBvZiB0aGUgcmVnaXN0cnkgZGF0YSBiYXNlZCBvbiBhIGdpdmVuIHBhdGguDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICAgICAgJHBhdGggICAgICBUaGUgcmVnaXN0cnkgcGF0aCB0byBleHRyYWN0Lg0KCSAqIEBwYXJhbSBtaXhlZCAgICAgICAkZGVmYXVsdCAgIE9wdGlvbmFsIGRlZmF1bHQgdmFsdWUsIHJldHVybmVkIGlmIHRoZSBwYXRoIGRvZXMgbm90IGV4aXN0Lg0KCSAqIEBwYXJhbSBzdHJpbmd8bnVsbCAkc2VwYXJhdG9yIFRoZSBwYXRoIHNlcGFyYXRvci4NCgkgKg0KCSAqIEByZXR1cm4gc2VsZiAgIEEgbmV3IFJlZ2lzdHJ5IGluc3RhbmNlIHdpdGggdGhlIGV4dHJhY3RlZCBkYXRhLg0KCSAqIEBzaW5jZSAgNS4wLjQNCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZXh0cmFjdChzdHJpbmcgJHBhdGgsICRkZWZhdWx0ID0gbnVsbCwgP3N0cmluZyAkc2VwYXJhdG9yID0gbnVsbCk6IHNlbGYNCgl7DQoJCSRvcmlnaW5hbFNlcGFyYXRvciA9ICR0aGlzLT5nZXRTZXBhcmF0b3IoKTsNCgkJaWYgKCRzZXBhcmF0b3IgIT09IG51bGwpDQoJCXsNCgkJCSR0aGlzLT5zZXRTZXBhcmF0b3IoJHNlcGFyYXRvcik7DQoJCX0NCg0KCQkkZGF0YSA9ICR0aGlzLT5nZXQoJHBhdGgsICRkZWZhdWx0KTsNCg0KCQlpZiAoJHNlcGFyYXRvciAhPT0gbnVsbCkNCgkJew0KCQkJJHRoaXMtPnNldFNlcGFyYXRvcigkb3JpZ2luYWxTZXBhcmF0b3IpOw0KCQl9DQoNCgkJJG5ld1JlZ2lzdHJ5ID0gbmV3IHN0YXRpYygpOw0KDQoJCWlmICgkZGF0YSAhPT0gJGRlZmF1bHQpDQoJCXsNCgkJCWlmIChpc19hcnJheSgkZGF0YSkpDQoJCQl7DQoJCQkJJG5ld1JlZ2lzdHJ5LT5sb2FkQXJyYXkoJGRhdGEpOw0KCQkJfQ0KCQkJZWxzZQ0KCQkJew0KCQkJCSRuZXdSZWdpc3RyeS0+c2V0KCd2YWx1ZScsICRkYXRhKTsNCgkJCX0NCgkJfQ0KDQoJCXJldHVybiAkbmV3UmVnaXN0cnk7DQoJfQ0KDQoJLyoqDQoJICogQXBwZW5kcyBjb250ZW50IGludG8gdGhlIHJlZ2lzdHJ5Lg0KCSAqDQoJICogSWYgYSBrZXkgZXhpc3RzLCB0aGUgdmFsdWUgd2lsbCBiZSBhcHBlbmRlZCB0byB0aGUgZXhpc3RpbmcgdmFsdWUuDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICRwYXRoICBUaGUgcmVnaXN0cnkgcGF0aCAoZS5nLiwgJ3ZkbS5jb250ZW50LmJ1aWxkZXInKS4NCgkgKiBAcGFyYW0gbWl4ZWQgICR2YWx1ZSBUaGUgdmFsdWUgdG8gYXBwZW5kLg0KCSAqDQoJICogQHJldHVybiBzZWxmDQoJICogQHNpbmNlIDUuMC40DQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGFwcGVuZChzdHJpbmcgJHBhdGgsICR2YWx1ZSk6IHNlbGYNCgl7DQoJCXJldHVybiAkdGhpcy0+YWRkKCRwYXRoLCAkdmFsdWUsIGZhbHNlKTsNCgl9DQoNCgkvKioNCgkgKiBHZXRzIHRoZSBuYW1lIG9mIHRoZSByZWdpc3RyeS4NCgkgKg0KCSAqIEByZXR1cm4gc3RyaW5nfG51bGwgVGhlIG5hbWUgb2YgdGhlIHJlZ2lzdHJ5Lg0KCSAqIEBzaW5jZSAgNS4wLjQNCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZ2V0TmFtZSgpOiA/c3RyaW5nDQoJew0KCQlyZXR1cm4gJHRoaXMtPm5hbWU7DQoJfQ0KDQoJLyoqDQoJICogU2V0cyB0aGUgbmFtZSBvZiB0aGUgcmVnaXN0cnkuDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nfG51bGwgJG5hbWUgVGhlIG5hbWUgdG8gc2V0Lg0KCSAqDQoJICogQHJldHVybiBzZWxmDQoJICogQHNpbmNlICA1LjAuNA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBzZXROYW1lKD9zdHJpbmcgJG5hbWUpOiBzZWxmDQoJew0KCQkkdGhpcy0+bmFtZSA9ICRuYW1lOw0KCQlyZXR1cm4gJHRoaXM7DQoJfQ0KDQoJLyoqDQoJICogU2V0cyBhIHNlcGFyYXRvciB2YWx1ZQ0KCSAqDQoJICogQHBhcmFtIHN0cmluZ3xudWxsICAgJHZhbHVlICAgICBUaGUgdmFsdWUgdG8gc2V0Lg0KCSAqDQoJICogQHJldHVybiBzZWxmDQoJICogQHNpbmNlICAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBzZXRTZXBhcmF0b3IoP3N0cmluZyAkdmFsdWUpOiBzZWxmDQoJew0KCQkkdGhpcy0+c2VwYXJhdG9yID0gJHZhbHVlOw0KDQoJCXJldHVybiAkdGhpczsNCgl9DQoNCgkvKioNCgkgKiBHZXRzIHRoZSBjdXJyZW50IHBhdGggc2VwYXJhdG9yIHVzZWQgaW4gcmVnaXN0cnkgcGF0aHMuDQoJICoNCgkgKiBAcmV0dXJuIHN0cmluZ3xudWxsIFRoZSBwYXRoIHNlcGFyYXRvci4NCgkgKiBAc2luY2UgIDUuMC40DQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGdldFNlcGFyYXRvcigpOiA/c3RyaW5nDQoJew0KCQlyZXR1cm4gJHRoaXMtPnNlcGFyYXRvcjsNCgl9DQoNCgkvKioNCgkgKiBSZWN1cnNpdmVseSBjb252ZXJ0cyBhbiBhcnJheSB0byBhbiBvYmplY3QuDQoJICoNCgkgKiBUaGlzIG1ldGhvZCBpcyB1c2VkIHRvIGNvbnZlcnQgdGhlIGludGVybmFsIGFycmF5IGRhdGEgaW50byBhbiBvYmplY3QNCgkgKiBzdHJ1Y3R1cmUgc3VpdGFibGUgZm9yIHNlcmlhbGl6YXRpb24gb3Igb3RoZXIgb3BlcmF0aW9ucyB0aGF0IHJlcXVpcmUgb2JqZWN0cy4NCgkgKg0KCSAqIEBwYXJhbSBtaXhlZCAkZGF0YSBUaGUgZGF0YSB0byBjb252ZXJ0Lg0KCSAqDQoJICogQHJldHVybiBtaXhlZCBUaGUgY29udmVydGVkIG9iamVjdCwgb3IgdGhlIG9yaWdpbmFsIGRhdGEgaWYgbm90IGFuIGFycmF5Lg0KCSAqIEBzaW5jZSAgNS4wLjQNCgkgKi8NCglwcm90ZWN0ZWQgZnVuY3Rpb24gYXJyYXlUb09iamVjdCgkZGF0YSkNCgl7DQoJCWlmIChpc19hcnJheSgkZGF0YSkpDQoJCXsNCgkJCSRvYmplY3QgPSBuZXcgXHN0ZENsYXNzKCk7DQoJCQlmb3JlYWNoICgkZGF0YSBhcyAka2V5ID0+ICR2YWx1ZSkNCgkJCXsNCgkJCQkvLyBIYW5kbGUgbnVtZXJpYyBrZXlzIGZvciBvYmplY3QgcHJvcGVydGllcw0KCQkJCWlmIChpc19udW1lcmljKCRrZXkpKQ0KCQkJCXsNCgkJCQkJJGtleSA9ICdpdGVtJyAuICRrZXk7DQoJCQkJfQ0KCQkJCSRvYmplY3QtPnska2V5fSA9ICR0aGlzLT5hcnJheVRvT2JqZWN0KCR2YWx1ZSk7DQoJCQl9DQoJCQlyZXR1cm4gJG9iamVjdDsNCgkJfQ0KCQllbHNlDQoJCXsNCgkJCXJldHVybiAkZGF0YTsNCgkJfQ0KCX0NCg0KCS8qKg0KCSAqIFJlY3Vyc2l2ZWx5IGNvbnZlcnRzIGFuIG9iamVjdCB0byBhbiBhcnJheS4NCgkgKg0KCSAqIFRoaXMgbWV0aG9kIGlzIHVzZWQgdG8gY29udmVydCBkYXRhIGxvYWRlZCBmcm9tIGZvcm1hdHMgdGhhdCBwcm9kdWNlIG9iamVjdHMNCgkgKiAoZS5nLiwgSlNPTiwgWE1MKSBpbnRvIGFuIGFycmF5IHN0cnVjdHVyZSBmb3IgaW50ZXJuYWwgc3RvcmFnZS4NCgkgKg0KCSAqIEBwYXJhbSBtaXhlZCAkZGF0YSBUaGUgZGF0YSB0byBjb252ZXJ0Lg0KCSAqDQoJICogQHJldHVybiBtaXhlZCBUaGUgY29udmVydGVkIGFycmF5LCBvciB0aGUgb3JpZ2luYWwgZGF0YSBpZiBub3QgYW4gb2JqZWN0Lg0KCSAqIEBzaW5jZSAgNS4wLjQNCgkgKi8NCglwcm90ZWN0ZWQgZnVuY3Rpb24gb2JqZWN0VG9BcnJheSgkZGF0YSkNCgl7DQoJCXJldHVybiBqc29uX2RlY29kZShqc29uX2VuY29kZSgkZGF0YSksIHRydWUpOw0KCX0NCg0KCS8qKg0KCSAqIFJlY3Vyc2l2ZWx5IG1lcmdlcyB0d28gYXJyYXlzLg0KCSAqDQoJICogVGhpcyBtZXRob2QgbWVyZ2VzIHRoZSBlbGVtZW50cyBvZiB0d28gYXJyYXlzIHRvZ2V0aGVyIHNvIHRoYXQgdGhlIHZhbHVlcyBvZiBvbmUNCgkgKiBhcmUgYXBwZW5kZWQgdG8gdGhlIGVuZCBvZiB0aGUgcHJldmlvdXMgb25lLiBJdCBwcmVzZXJ2ZXMgbnVtZXJpYyBrZXlzLg0KCSAqDQoJICogQHBhcmFtIGFycmF5ICRhcnJheTEgVGhlIGFycmF5IHRvIG1lcmdlIGludG8uDQoJICogQHBhcmFtIGFycmF5ICRhcnJheTIgVGhlIGFycmF5IHRvIG1lcmdlIGZyb20uDQoJICoNCgkgKiBAcmV0dXJuIGFycmF5IFRoZSBtZXJnZWQgYXJyYXkuDQoJICogQHNpbmNlICA1LjAuNA0KCSAqLw0KCXByb3RlY3RlZCBmdW5jdGlvbiBhcnJheU1lcmdlUmVjdXJzaXZlKGFycmF5ICRhcnJheTEsIGFycmF5ICRhcnJheTIpOiBhcnJheQ0KCXsNCgkJZm9yZWFjaCAoJGFycmF5MiBhcyAka2V5ID0+ICR2YWx1ZSkNCgkJew0KCQkJLy8gSWYgdGhlIHZhbHVlIGlzIGFuIGFycmF5IGFuZCB0aGUga2V5IGV4aXN0cyBpbiBib3RoIGFycmF5cywgbWVyZ2UgcmVjdXJzaXZlbHkNCgkJCWlmIChpc19hcnJheSgkdmFsdWUpICYmIGlzc2V0KCRhcnJheTFbJGtleV0pICYmIGlzX2FycmF5KCRhcnJheTFbJGtleV0pKQ0KCQkJew0KCQkJCSRhcnJheTFbJGtleV0gPSAkdGhpcy0+YXJyYXlNZXJnZVJlY3Vyc2l2ZSgkYXJyYXkxWyRrZXldLCAkdmFsdWUpOw0KCQkJfQ0KCQkJZWxzZQ0KCQkJew0KCQkJCS8vIE90aGVyd2lzZSwgcmVwbGFjZSBvciBzZXQgdGhlIHZhbHVlDQoJCQkJJGFycmF5MVska2V5XSA9ICR2YWx1ZTsNCgkJCX0NCgkJfQ0KCQlyZXR1cm4gJGFycmF5MTsNCgl9DQoNCgkvKioNCgkgKiBIZWxwZXIgZnVuY3Rpb24gdG8gcmVjdXJzaXZlbHkgZmxhdHRlbiB0aGUgYXJyYXkuDQoJICoNCgkgKiBAcGFyYW0gYXJyYXkgICRhcnJheSAgICAgICBUaGUgYXJyYXkgdG8gZmxhdHRlbi4NCgkgKiBAcGFyYW0gc3RyaW5nICRzZXBhcmF0b3IgICBUaGUgc2VwYXJhdG9yIGZvciB0aGUga2V5IG5hbWVzLg0KCSAqIEBwYXJhbSBib29sICAgJGZ1bGwgICAgICAgIFRydWUgdG8gaW5jbHVkZSB0aGUgZnVsbCBwYXRoIGFzIGtleXMuDQoJICogQHBhcmFtIGFycmF5ICAkZmxhdHRlbmVkICAgVGhlIGZsYXR0ZW5lZCBhcnJheSAodXNlZCBpbnRlcm5hbGx5IGZvciByZWN1cnNpb24pLg0KCSAqIEBwYXJhbSBzdHJpbmcgJHBhdGggICAgICAgIFRoZSBjdXJyZW50IHBhdGggKHVzZWQgaW50ZXJuYWxseSBmb3IgcmVjdXJzaW9uKS4NCgkgKg0KCSAqIEByZXR1cm4gYXJyYXkgVGhlIGZsYXR0ZW5lZCBhcnJheS4NCgkgKiBAc2luY2UgIDUuMC40DQoJICovDQoJcHJvdGVjdGVkIGZ1bmN0aW9uIGZsYXR0ZW5BcnJheShhcnJheSAkYXJyYXksIHN0cmluZyAkc2VwYXJhdG9yLCBib29sICRmdWxsLCBhcnJheSAkZmxhdHRlbmVkID0gW10sIHN0cmluZyAkcGF0aCA9ICcnKTogYXJyYXkNCgl7DQoJCWZvcmVhY2ggKCRhcnJheSBhcyAka2V5ID0+ICR2YWx1ZSkNCgkJew0KCQkJaWYgKCRmdWxsKQ0KCQkJew0KCQkJCSRuZXdQYXRoID0gJHBhdGggPT09ICcnID8gJGtleSA6ICRwYXRoIC4gJHNlcGFyYXRvciAuICRrZXk7DQoJCQl9DQoJCQllbHNlDQoJCQl7DQoJCQkJJG5ld1BhdGggPSAka2V5Ow0KCQkJfQ0KDQoJCQlpZiAoaXNfYXJyYXkoJHZhbHVlKSkNCgkJCXsNCgkJCQkkZmxhdHRlbmVkID0gJHRoaXMtPmZsYXR0ZW5BcnJheSgkdmFsdWUsICRzZXBhcmF0b3IsICRmdWxsLCAkZmxhdHRlbmVkLCAkbmV3UGF0aCk7DQoJCQl9DQoJCQllbHNlDQoJCQl7DQoJCQkJJGZsYXR0ZW5lZFskbmV3UGF0aF0gPSAkdmFsdWU7DQoJCQl9DQoJCX0NCgkJcmV0dXJuICRmbGF0dGVuZWQ7DQoJfQ0KDQoJLyoqDQoJICogR2V0IHRoYXQgdGhlIGFjdGl2ZSBrZXlzIGZyb20gYSBwYXRoDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICAkcGF0aCAgIFRoZSBwYXRoIHRvIGRldGVybWluZSB0aGUgbG9jYXRpb24gcmVnaXN0cnkuDQoJICoNCgkgKiBAcmV0dXJuIGFycmF5fG51bGwgICAgICBUaGUgdmFsaWQgYXJyYXkgb2Yga2V5cw0KCSAqIEBzaW5jZSAgMy4yLjANCgkgKi8NCglwcm90ZWN0ZWQgZnVuY3Rpb24gZ2V0QWN0aXZlS2V5cyhzdHJpbmcgJHBhdGgpOiA/YXJyYXkNCgl7DQoJCS8vIGVtcHR5IHBhdGggbm8gYWxsb3dlZA0KCQlpZiAoJHBhdGggPT09ICcnKQ0KCQl7DQoJCQlyZXR1cm4gbnVsbDsNCgkJfQ0KDQoJCS8vIEZsYXR0ZW4gdGhlIHBhdGgNCgkJaWYgKCR0aGlzLT5zZXBhcmF0b3IgPT09IG51bGwgfHwgJHRoaXMtPnNlcGFyYXRvciA9PT0gJycpDQoJCXsNCgkJCXJldHVybiBbJHBhdGhdOw0KCQl9DQoNCgkJJGtleXMgPSBhcnJheV92YWx1ZXMoYXJyYXlfZmlsdGVyKGV4cGxvZGUoJHRoaXMtPnNlcGFyYXRvciwgJHBhdGgpLCAnc3RybGVuJykpOw0KDQoJCWlmIChlbXB0eSgka2V5cykpDQoJCXsNCgkJCXJldHVybiBudWxsOw0KCQl9DQoNCgkJcmV0dXJuICRrZXlzOw0KCX0=', '{}', '{}', '', 1, '2023-09-09 17:29:07', 43, '', 1), +(490, '64e291c2-11f1-423d-a44d-837cc12cc017', 'VDM.Interfaces.Registryinterface', 'Registryinterface', 'interface', 'The Registry Interface\r\n\r\n@since 3.2.0\r\n@since 5.0.4 Joomla Registry Compatible', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '{\"0\":\"af0eedbe-603b-4671-8e5a-28165d88254b\"}', '', '', '[[[NamespacePrefix]]]\\Joomla\\Interfaces.Registryinterface', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIE1hZ2ljIG1ldGhvZCB0byBnZXQgYSB2YWx1ZSBmcm9tIHRoZSByZWdpc3RyeS4NCgkgKg0KCSAqIEFsbG93cyBmb3IgYWNjZXNzaW5nIHJlZ2lzdHJ5IGRhdGEgdXNpbmcgb2JqZWN0IHByb3BlcnR5IHN5bnRheC4NCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmcgJG5hbWUgVGhlIG5hbWUgb2YgdGhlIHByb3BlcnR5IHRvIGdldC4NCgkgKg0KCSAqIEByZXR1cm4gbWl4ZWQgVGhlIHZhbHVlIG9mIHRoZSBwcm9wZXJ0eSwgb3IgbnVsbCBpZiBub3QgZm91bmQuDQoJICogQHNpbmNlICA1LjAuNA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBfX2dldCgkbmFtZSk7DQoNCgkvKioNCgkgKiBNYWdpYyBtZXRob2QgdG8gc2V0IGEgdmFsdWUgaW4gdGhlIHJlZ2lzdHJ5Lg0KCSAqDQoJICogQWxsb3dzIGZvciBzZXR0aW5nIHJlZ2lzdHJ5IGRhdGEgdXNpbmcgb2JqZWN0IHByb3BlcnR5IHN5bnRheC4NCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmcgJG5hbWUgIFRoZSBuYW1lIG9mIHRoZSBwcm9wZXJ0eSB0byBzZXQuDQoJICogQHBhcmFtIG1peGVkICAkdmFsdWUgVGhlIHZhbHVlIHRvIHNldC4NCgkgKg0KCSAqIEByZXR1cm4gdm9pZA0KCSAqIEBzaW5jZSAgNS4wLjQNCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gX19zZXQoJG5hbWUsICR2YWx1ZSk7DQoNCgkvKioNCgkgKiBNYWdpYyBtZXRob2QgdG8gY2hlY2sgaWYgYSBwcm9wZXJ0eSBpcyBzZXQgaW4gdGhlIHJlZ2lzdHJ5Lg0KCSAqDQoJICogQWxsb3dzIGZvciB1c2luZyBpc3NldCgpIG9uIHJlZ2lzdHJ5IHByb3BlcnRpZXMuDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICRuYW1lIFRoZSBuYW1lIG9mIHRoZSBwcm9wZXJ0eSB0byBjaGVjay4NCgkgKg0KCSAqIEByZXR1cm4gYm9vbCBUcnVlIGlmIHRoZSBwcm9wZXJ0eSBpcyBzZXQsIGZhbHNlIG90aGVyd2lzZS4NCgkgKiBAc2luY2UgIDUuMC40DQoJICovDQoJcHVibGljIGZ1bmN0aW9uIF9faXNzZXQoJG5hbWUpOw0KDQoJLyoqDQoJICogTWFnaWMgbWV0aG9kIHRvIHVuc2V0IGEgcHJvcGVydHkgaW4gdGhlIHJlZ2lzdHJ5Lg0KCSAqDQoJICogQWxsb3dzIGZvciB1c2luZyB1bnNldCgpIG9uIHJlZ2lzdHJ5IHByb3BlcnRpZXMuDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICRuYW1lIFRoZSBuYW1lIG9mIHRoZSBwcm9wZXJ0eSB0byB1bnNldC4NCgkgKg0KCSAqIEByZXR1cm4gdm9pZA0KCSAqIEBzaW5jZSAgNS4wLjQNCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gX191bnNldCgkbmFtZSk7DQoNCgkvKioNCgkgKiBNYWdpYyBtZXRob2QgdG8gY2xvbmUgdGhlIHJlZ2lzdHJ5Lg0KCSAqDQoJICogUGVyZm9ybXMgYSBkZWVwIGNvcHkgb2YgdGhlIHJlZ2lzdHJ5IGRhdGEuDQoJICoNCgkgKiBAcmV0dXJuIHZvaWQNCgkgKiBAc2luY2UgIDUuMC40DQoJICovDQoJcHVibGljIGZ1bmN0aW9uIF9fY2xvbmUoKTsNCg0KCS8qKg0KCSAqIE1hZ2ljIG1ldGhvZCB0byBjb252ZXJ0IHRoZSByZWdpc3RyeSB0byBhIHN0cmluZy4NCgkgKg0KCSAqIFJldHVybnMgdGhlIHJlZ2lzdHJ5IGRhdGEgaW4gSlNPTiBmb3JtYXQuDQoJICoNCgkgKiBAcmV0dXJuIHN0cmluZyBUaGUgcmVnaXN0cnkgZGF0YSBpbiBKU09OIGZvcm1hdC4NCgkgKiBAc2luY2UgIDUuMC40DQoJICovDQoJcHVibGljIGZ1bmN0aW9uIF9fdG9TdHJpbmcoKTsNCg0KCS8qKg0KCSAqIExvYWRzIGRhdGEgaW50byB0aGUgcmVnaXN0cnkgZnJvbSBhIHN0cmluZyB1c2luZyBKb29tbGEncyBmb3JtYXQgY2xhc3Nlcy4NCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmcgICRkYXRhICAgICBUaGUgZGF0YSBzdHJpbmcgdG8gbG9hZC4NCgkgKiBAcGFyYW0gc3RyaW5nICAkZm9ybWF0ICAgVGhlIGZvcm1hdCBvZiB0aGUgZGF0YSBzdHJpbmcuIFN1cHBvcnRlZCBmb3JtYXRzOiAnanNvbicsICdpbmknLCAneG1sJywgJ3BocCcuDQoJICogQHBhcmFtICBhcnJheSAgJG9wdGlvbnMgIE9wdGlvbnMgdXNlZCBieSB0aGUgZm9ybWF0dGVyDQoJICoNCgkgKiBAcmV0dXJuIHNlbGYNCgkgKiBAdGhyb3dzIFxJbnZhbGlkQXJndW1lbnRFeGNlcHRpb24gSWYgdGhlIGZvcm1hdCBpcyBub3Qgc3VwcG9ydGVkLg0KCSAqIEBzaW5jZSAgNS4wLjQNCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gbG9hZFN0cmluZyhzdHJpbmcgJGRhdGEsIHN0cmluZyAkZm9ybWF0ID0gJ0pTT04nLCBhcnJheSAkb3B0aW9ucyA9IFtdKTogc2VsZjsNCg0KCS8qKg0KCSAqIExvYWRzIGRhdGEgaW50byB0aGUgcmVnaXN0cnkgZnJvbSBhbiBvYmplY3QuDQoJICoNCgkgKiBAcGFyYW0gb2JqZWN0ICAkb2JqZWN0ICAgVGhlIGRhdGEgb2JqZWN0IHRvIGxvYWQuDQoJICoNCgkgKiBAcmV0dXJuIHNlbGYNCgkgKiBAc2luY2UgIDUuMC40DQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGxvYWRPYmplY3Qob2JqZWN0ICRvYmplY3QpOiBzZWxmOw0KDQoJLyoqDQoJICogTG9hZHMgZGF0YSBpbnRvIHRoZSByZWdpc3RyeSBmcm9tIGFuIGFycmF5Lg0KCSAqDQoJICogVGhlIGxvYWRlZCBkYXRhIHdpbGwgYmUgbWVyZ2VkIGludG8gdGhlIHJlZ2lzdHJ5J3MgZXhpc3RpbmcgZGF0YS4NCgkgKg0KCSAqIEBwYXJhbSBhcnJheSAkYXJyYXkgVGhlIGFycmF5IG9mIGRhdGEgdG8gbG9hZCBpbnRvIHRoZSByZWdpc3RyeS4NCgkgKg0KCSAqIEByZXR1cm4gc2VsZg0KCSAqIEBzaW5jZSAgNS4wLjQNCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gbG9hZEFycmF5KGFycmF5ICRhcnJheSk6IHNlbGY7DQoNCgkvKioNCgkgKiBMb2FkcyBkYXRhIGludG8gdGhlIHJlZ2lzdHJ5IGZyb20gYSBmaWxlLg0KCSAqDQoJICogQHBhcmFtIHN0cmluZyAkcGF0aCAgIFRoZSBwYXRoIHRvIHRoZSBmaWxlIHRvIGxvYWQuDQoJICogQHBhcmFtIHN0cmluZyAkZm9ybWF0IFRoZSBmb3JtYXQgb2YgdGhlIGZpbGUuIFN1cHBvcnRlZCBmb3JtYXRzOiAnanNvbicsICdpbmknLCAneG1sJywgJ3BocCcuDQoJICoNCgkgKiBAcmV0dXJuIHNlbGYNCgkgKiBAdGhyb3dzIFxJbnZhbGlkQXJndW1lbnRFeGNlcHRpb24gSWYgdGhlIGZpbGUgZG9lcyBub3QgZXhpc3Qgb3IgaXMgbm90IHJlYWRhYmxlLg0KCSAqIEB0aHJvd3MgXFJ1bnRpbWVFeGNlcHRpb24gSWYgdGhlIGZpbGUgY2Fubm90IGJlIHJlYWQuDQoJICogQHNpbmNlICA1LjAuNA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBsb2FkRmlsZShzdHJpbmcgJHBhdGgsIHN0cmluZyAkZm9ybWF0ID0gJ2pzb24nKTogc2VsZjsNCg0KCS8qKg0KCSAqIFNldHMgYSB2YWx1ZSBpbnRvIHRoZSByZWdpc3RyeSB1c2luZyBtdWx0aXBsZSBrZXlzLg0KCSAqDQoJICogQHBhcmFtICBzdHJpbmcgICRwYXRoICAgICAgUmVnaXN0cnkgcGF0aCAoZS5nLiB2ZG0uY29udGVudC5idWlsZGVyKQ0KCSAqIEBwYXJhbSAgbWl4ZWQgICAkdmFsdWUgICAgIFZhbHVlIG9mIGVudHJ5DQoJICoNCgkgKiBAdGhyb3dzIFxJbnZhbGlkQXJndW1lbnRFeGNlcHRpb24gSWYgYW55IG9mIHRoZSBwYXRoIHZhbHVlcyBhcmUgbm90IGEgbnVtYmVyIG9yIHN0cmluZy4NCgkgKiBAcmV0dXJuIHNlbGYNCgkgKiBAc2luY2UgIDMuMi4wDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIHNldChzdHJpbmcgJHBhdGgsICR2YWx1ZSk6IHNlbGY7DQoNCgkvKioNCgkgKiBBZGRzIGNvbnRlbnQgaW50byB0aGUgcmVnaXN0cnkuIElmIGEga2V5IGV4aXN0cywNCgkgKiBpdCBlaXRoZXIgYXBwZW5kcyBvciBjb25jYXRlbmF0ZXMgYmFzZWQgb24gJGFzQXJyYXkgc3dpdGNoLg0KCSAqDQoJICogQHBhcmFtICBzdHJpbmcgICAgICAkcGF0aCAgICAgIFJlZ2lzdHJ5IHBhdGggKGUuZy4gdmRtLmNvbnRlbnQuYnVpbGRlcikNCgkgKiBAcGFyYW0gIG1peGVkICAgICAgICR2YWx1ZSAgICAgVmFsdWUgb2YgZW50cnkNCgkgKiBAcGFyYW0gIGJvb2x8bnVsbCAgICRhc0FycmF5ICAgRGV0ZXJtaW5lcyBpZiB0aGUgbmV3IHZhbHVlIHNob3VsZCBiZSB0cmVhdGVkIGFzIGFuIGFycmF5Lg0KCSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEZWZhdWx0IGlzICRhZGRBc0FycmF5ID0gZmFsc2UgKGlmIG51bGwpIGluIGJhc2UgY2xhc3MuDQoJICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE92ZXJyaWRlIGluIGNoaWxkIGNsYXNzIGFsbG93ZWQgc2V0IGNsYXNzIHByb3BlcnR5ICRhZGRBc0FycmF5ID0gdHJ1ZS4NCgkgKg0KCSAqIEB0aHJvd3MgXEludmFsaWRBcmd1bWVudEV4Y2VwdGlvbiBJZiBhbnkgb2YgdGhlIHBhdGggdmFsdWVzIGFyZSBub3QgYSBudW1iZXIgb3Igc3RyaW5nLg0KCSAqIEByZXR1cm4gc2VsZg0KCSAqIEBzaW5jZSAgMy4yLjANCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gYWRkKHN0cmluZyAkcGF0aCwgJHZhbHVlLCA/Ym9vbCAkYXNBcnJheSA9IG51bGwpOiBzZWxmOw0KDQoJLyoqDQoJICogUmV0cmlldmVzIGEgdmFsdWUgKG9yIHN1Yi1hcnJheSkgZnJvbSB0aGUgcmVnaXN0cnkgdXNpbmcgbXVsdGlwbGUga2V5cy4NCgkgKg0KCSAqIEBwYXJhbSAgc3RyaW5nICAkcGF0aCAgICAgUmVnaXN0cnkgcGF0aCAoZS5nLiB2ZG0uY29udGVudC5idWlsZGVyKQ0KCSAqIEBwYXJhbSAgbWl4ZWQgICAkZGVmYXVsdCAgT3B0aW9uYWwgZGVmYXVsdCB2YWx1ZSwgcmV0dXJuZWQgaWYgdGhlIGludGVybmFsIGRvZXNuJ3QgZXhpc3QuDQoJICoNCgkgKiBAdGhyb3dzIFxJbnZhbGlkQXJndW1lbnRFeGNlcHRpb24gSWYgYW55IG9mIHRoZSBwYXRoIHZhbHVlcyBhcmUgbm90IGEgbnVtYmVyIG9yIHN0cmluZy4NCgkgKiBAcmV0dXJuIG1peGVkIFRoZSB2YWx1ZSBvciBzdWItYXJyYXkgZnJvbSB0aGUgc3RvcmFnZS4gTnVsbCBpZiB0aGUgbG9jYXRpb24gZG9lc24ndCBleGlzdC4NCgkgKiBAc2luY2UgIDMuMi4wDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGdldChzdHJpbmcgJHBhdGgsICRkZWZhdWx0ID0gbnVsbCk6IG1peGVkOw0KDQoJLyoqDQoJICogUmVtb3ZlcyBhIHZhbHVlIChvciBzdWItYXJyYXkpIGZyb20gdGhlIHJlZ2lzdHJ5IHVzaW5nIG11bHRpcGxlIGtleXMuDQoJICoNCgkgKiBAcGFyYW0gIHN0cmluZyAgJHBhdGggIFJlZ2lzdHJ5IHBhdGggKGUuZy4gdmRtLmNvbnRlbnQuYnVpbGRlcikNCgkgKg0KCSAqIEB0aHJvd3MgXEludmFsaWRBcmd1bWVudEV4Y2VwdGlvbiBJZiBhbnkgb2YgdGhlIHBhdGggdmFsdWVzIGFyZSBub3QgYSBudW1iZXIgb3Igc3RyaW5nLg0KCSAqIEByZXR1cm4gc2VsZg0KCSAqIEBzaW5jZSAgMy4yLjANCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gcmVtb3ZlKHN0cmluZyAkcGF0aCk6IHNlbGY7DQoNCgkvKioNCgkgKiBDaGVja3MgdGhlIGV4aXN0ZW5jZSBvZiBhIHBhcnRpY3VsYXIgbG9jYXRpb24gaW4gdGhlIHJlZ2lzdHJ5IHVzaW5nIG11bHRpcGxlIGtleXMuDQoJICoNCgkgKiBAcGFyYW0gIHN0cmluZyAgJHBhdGggIFJlZ2lzdHJ5IHBhdGggKGUuZy4gdmRtLmNvbnRlbnQuYnVpbGRlcikNCgkgKg0KCSAqIEB0aHJvd3MgXEludmFsaWRBcmd1bWVudEV4Y2VwdGlvbiBJZiBhbnkgb2YgdGhlIHBhdGggdmFsdWVzIGFyZSBub3QgYSBudW1iZXIgb3Igc3RyaW5nLg0KCSAqIEByZXR1cm4gYm9vbCBUcnVlIGlmIHRoZSBsb2NhdGlvbiBleGlzdHMsIGZhbHNlIG90aGVyd2lzZS4NCgkgKiBAc2luY2UgIDMuMi4wDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGV4aXN0cyhzdHJpbmcgJHBhdGgpOiBib29sOw0KDQoJLyoqDQoJICogU3BlY2lmeSBkYXRhIHdoaWNoIHNob3VsZCBiZSBzZXJpYWxpemVkIHRvIEpTT04uDQoJICoNCgkgKiBAcmV0dXJuIG1peGVkIERhdGEgd2hpY2ggY2FuIGJlIHNlcmlhbGl6ZWQgYnkganNvbl9lbmNvZGUoKSwNCgkgKiAgICAgICAgICAgICAgICAgd2hpY2ggaXMgYSB2YWx1ZSBvZiBhbnkgdHlwZSBvdGhlciB0aGFuIGEgcmVzb3VyY2UuDQoJICogQHNpbmNlICA1LjAuNA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBqc29uU2VyaWFsaXplKCk6IG1peGVkOw0KDQoJLyoqDQoJICogQ291bnQgZWxlbWVudHMgb2YgdGhlIHJlZ2lzdHJ5Lg0KCSAqDQoJICogQHJldHVybiBpbnQgVGhlIG51bWJlciBvZiBlbGVtZW50cyBpbiB0aGUgcmVnaXN0cnkuDQoJICogQHNpbmNlICA1LjAuNA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBjb3VudCgpOiBpbnQ7DQoNCgkvKioNCgkgKiBXaGV0aGVyIGEgZ2l2ZW4gb2Zmc2V0IGV4aXN0cyBpbiB0aGUgcmVnaXN0cnkuDQoJICoNCgkgKiBAcGFyYW0gbWl4ZWQgJG9mZnNldCBBbiBvZmZzZXQgdG8gY2hlY2sgZm9yLg0KCSAqDQoJICogQHJldHVybiBib29sIFRydWUgaWYgdGhlIG9mZnNldCBleGlzdHMsIGZhbHNlIG90aGVyd2lzZS4NCgkgKiBAc2luY2UgIDUuMC40DQoJICovDQoJcHVibGljIGZ1bmN0aW9uIG9mZnNldEV4aXN0cyhtaXhlZCAkb2Zmc2V0KTogYm9vbDsNCg0KCS8qKg0KCSAqIFJldHJpZXZlIHRoZSB2YWx1ZSBhdCBhIGdpdmVuIG9mZnNldC4NCgkgKg0KCSAqIEBwYXJhbSBtaXhlZCAkb2Zmc2V0IFRoZSBvZmZzZXQgdG8gcmV0cmlldmUuDQoJICoNCgkgKiBAcmV0dXJuIG1peGVkIFRoZSB2YWx1ZSBhdCB0aGUgc3BlY2lmaWVkIG9mZnNldC4NCgkgKiBAc2luY2UgIDUuMC40DQoJICovDQoJcHVibGljIGZ1bmN0aW9uIG9mZnNldEdldChtaXhlZCAkb2Zmc2V0KTogbWl4ZWQ7DQoNCgkvKioNCgkgKiBTZXQgdGhlIHZhbHVlIGF0IGEgZ2l2ZW4gb2Zmc2V0Lg0KCSAqDQoJICogQHBhcmFtIG1peGVkICRvZmZzZXQgVGhlIG9mZnNldCB0byBhc3NpZ24gdGhlIHZhbHVlIHRvLg0KCSAqIEBwYXJhbSBtaXhlZCAkdmFsdWUgIFRoZSB2YWx1ZSB0byBzZXQuDQoJICoNCgkgKiBAcmV0dXJuIHZvaWQNCgkgKiBAc2luY2UgIDUuMC40DQoJICovDQoJcHVibGljIGZ1bmN0aW9uIG9mZnNldFNldChtaXhlZCAkb2Zmc2V0LCBtaXhlZCAkdmFsdWUpOiB2b2lkOw0KDQoJLyoqDQoJICogVW5zZXQgdGhlIHZhbHVlIGF0IGEgZ2l2ZW4gb2Zmc2V0Lg0KCSAqDQoJICogQHBhcmFtIG1peGVkICRvZmZzZXQgVGhlIG9mZnNldCB0byB1bnNldC4NCgkgKg0KCSAqIEByZXR1cm4gdm9pZA0KCSAqIEBzaW5jZSAgNS4wLjQNCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gb2Zmc2V0VW5zZXQobWl4ZWQgJG9mZnNldCk6IHZvaWQ7DQoNCgkvKioNCgkgKiBSZXRyaWV2ZSBhbiBleHRlcm5hbCBpdGVyYXRvciBmb3IgdGhlIHJlZ2lzdHJ5Lg0KCSAqDQoJICogQHJldHVybiBcVHJhdmVyc2FibGUgQW4gaW5zdGFuY2Ugb2YgYW4gb2JqZWN0IGltcGxlbWVudGluZyBJdGVyYXRvciBvciBUcmF2ZXJzYWJsZS4NCgkgKiBAc2luY2UgIDUuMC40DQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGdldEl0ZXJhdG9yKCk6IFxUcmF2ZXJzYWJsZTsNCg0KCS8qKg0KCSAqIEdldCB0aGUgcmVnaXN0cnkgZGF0YSBhcyBhbiBhc3NvY2lhdGl2ZSBhcnJheS4NCgkgKg0KCSAqIEByZXR1cm4gYXJyYXkgVGhlIHJlZ2lzdHJ5IGRhdGEuDQoJICogQHNpbmNlICA1LjAuNA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiB0b0FycmF5KCk6IGFycmF5Ow0KDQoJLyoqDQoJICogR2V0IHRoZSByZWdpc3RyeSBkYXRhIGFzIGFuIG9iamVjdC4NCgkgKg0KCSAqIEByZXR1cm4gb2JqZWN0IFRoZSByZWdpc3RyeSBkYXRhIGNvbnZlcnRlZCB0byBhbiBvYmplY3QuDQoJICogQHNpbmNlICA1LjAuNA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiB0b09iamVjdCgpOw0KDQoJLyoqDQoJICogQ29udmVydHMgdGhlIHJlZ2lzdHJ5IGRhdGEgdG8gYSBzdHJpbmcgaW4gdGhlIHNwZWNpZmllZCBmb3JtYXQuDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICRmb3JtYXQgIFRoZSBmb3JtYXQgdG8gb3V0cHV0IHRoZSBzdHJpbmcgaW4uIFN1cHBvcnRlZCBmb3JtYXRzOiAnanNvbicsICdpbmknLCAneG1sJywgJ3BocCcuDQoJICogQHBhcmFtIGFycmF5ICAkb3B0aW9ucyBPcHRpb25zIHVzZWQgYnkgdGhlIGZvcm1hdHRlci4NCgkgKg0KCSAqIEByZXR1cm4gc3RyaW5nIFRoZSByZWdpc3RyeSBkYXRhIGluIHRoZSBzcGVjaWZpZWQgZm9ybWF0Lg0KCSAqDQoJICogQHRocm93cyBcSW52YWxpZEFyZ3VtZW50RXhjZXB0aW9uIElmIHRoZSBmb3JtYXQgaXMgbm90IHN1cHBvcnRlZC4NCgkgKiBAc2luY2UgIDUuMC40DQoJICovDQoJcHVibGljIGZ1bmN0aW9uIHRvU3RyaW5nKHN0cmluZyAkZm9ybWF0ID0gJ0pTT04nLCBhcnJheSAkb3B0aW9ucyA9IFtdKTogc3RyaW5nOw0KDQoJLyoqDQoJICogRmxhdHRlbnMgdGhlIHJlZ2lzdHJ5IGRhdGEgaW50byBhIG9uZS1kaW1lbnNpb25hbCBhcnJheS4NCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmd8bnVsbCAkc2VwYXJhdG9yICBUaGUgc2VwYXJhdG9yIGZvciB0aGUga2V5IG5hbWVzLg0KCSAqIEBwYXJhbSBib29sICAgICAgICAkZnVsbCAgICAgICBUcnVlIHRvIGluY2x1ZGUgdGhlIGZ1bGwgcGF0aCBhcyBrZXlzLg0KCSAqDQoJICogQHJldHVybiBhcnJheSBUaGUgZmxhdHRlbmVkIGRhdGEgYXJyYXkuDQoJICogQHNpbmNlIDUuMC40DQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGZsYXR0ZW4oP3N0cmluZyAkc2VwYXJhdG9yID0gbnVsbCwgYm9vbCAkZnVsbCA9IGZhbHNlKTogYXJyYXk7DQoNCgkvKioNCgkgKiBTZXRzIGEgZGVmYXVsdCB2YWx1ZSBpZiBub3QgYWxyZWFkeSBzZXQuDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICRwYXRoIFRoZSByZWdpc3RyeSBwYXRoIChlLmcuLCAndmRtLmNvbnRlbnQuYnVpbGRlcicpLg0KCSAqIEBwYXJhbSBtaXhlZCAgJGRlZmF1bHQgVGhlIGRlZmF1bHQgdmFsdWUgdG8gc2V0IGlmIHRoZSBwYXRoIGRvZXMgbm90IGV4aXN0Lg0KCSAqDQoJICogQHJldHVybiBtaXhlZCBUaGUgdmFsdWUgb2YgdGhlIHBhdGggYWZ0ZXIgdGhlIG1ldGhvZCBjYWxsLg0KCSAqIEBzaW5jZSAgNS4wLjQNCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZGVmKHN0cmluZyAkcGF0aCwgJGRlZmF1bHQpOw0KDQoJLyoqDQoJICogTWVyZ2VzIGFub3RoZXIgcmVnaXN0cnkgaW50byB0aGlzIG9uZS4NCgkgKg0KCSAqIFRoZSBkYXRhIGZyb20gdGhlIHNvdXJjZSByZWdpc3RyeSB3aWxsIGJlIG1lcmdlZCBpbnRvIHRoaXMgcmVnaXN0cnksDQoJICogb3ZlcndyaXRpbmcgYW55IGV4aXN0aW5nIHZhbHVlcyB3aXRoIHRoZSBzYW1lIGtleXMuDQoJICoNCgkgKiBAcGFyYW0gUmVnaXN0cnlpbnRlcmZhY2UgJHNvdXJjZSBUaGUgcmVnaXN0cnkgdG8gbWVyZ2Ugd2l0aCB0aGlzIG9uZS4NCgkgKg0KCSAqIEByZXR1cm4gc2VsZg0KCSAqIEBzaW5jZSAgNS4wLjQNCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gbWVyZ2UoUmVnaXN0cnlpbnRlcmZhY2UgJHNvdXJjZSk6IHNlbGY7DQoNCgkvKioNCgkgKiBDbGVhcnMgYWxsIGRhdGEgZnJvbSB0aGUgcmVnaXN0cnkuDQoJICoNCgkgKiBAcmV0dXJuIHNlbGYNCgkgKiBAc2luY2UgIDUuMC40DQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGNsZWFyKCk6IHNlbGY7DQoNCgkvKioNCgkgKiBFeHRyYWN0cyBhIHN1YnNldCBvZiB0aGUgcmVnaXN0cnkgZGF0YSBiYXNlZCBvbiBhIGdpdmVuIHBhdGguDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICAgICAgJHBhdGggICAgICBUaGUgcmVnaXN0cnkgcGF0aCB0byBleHRyYWN0Lg0KCSAqIEBwYXJhbSBtaXhlZCAgICAgICAkZGVmYXVsdCAgIE9wdGlvbmFsIGRlZmF1bHQgdmFsdWUsIHJldHVybmVkIGlmIHRoZSBwYXRoIGRvZXMgbm90IGV4aXN0Lg0KCSAqIEBwYXJhbSBzdHJpbmd8bnVsbCAkc2VwYXJhdG9yIFRoZSBwYXRoIHNlcGFyYXRvci4NCgkgKg0KCSAqIEByZXR1cm4gc2VsZiAgIEEgbmV3IFJlZ2lzdHJ5IGluc3RhbmNlIHdpdGggdGhlIGV4dHJhY3RlZCBkYXRhLg0KCSAqIEBzaW5jZSAgNS4wLjQNCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZXh0cmFjdChzdHJpbmcgJHBhdGgsICRkZWZhdWx0ID0gbnVsbCwgP3N0cmluZyAkc2VwYXJhdG9yID0gbnVsbCk6IHNlbGY7DQoNCgkvKioNCgkgKiBBcHBlbmRzIGNvbnRlbnQgaW50byB0aGUgcmVnaXN0cnkuDQoJICoNCgkgKiBJZiBhIGtleSBleGlzdHMsIHRoZSB2YWx1ZSB3aWxsIGJlIGFwcGVuZGVkIHRvIHRoZSBleGlzdGluZyB2YWx1ZS4NCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmcgJHBhdGggIFRoZSByZWdpc3RyeSBwYXRoIChlLmcuLCAndmRtLmNvbnRlbnQuYnVpbGRlcicpLg0KCSAqIEBwYXJhbSBtaXhlZCAgJHZhbHVlIFRoZSB2YWx1ZSB0byBhcHBlbmQuDQoJICoNCgkgKiBAcmV0dXJuIHNlbGYNCgkgKiBAc2luY2UgNS4wLjQNCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gYXBwZW5kKHN0cmluZyAkcGF0aCwgJHZhbHVlKTogc2VsZjsNCg0KCS8qKg0KCSAqIEdldHMgdGhlIG5hbWUgb2YgdGhlIHJlZ2lzdHJ5Lg0KCSAqDQoJICogQHJldHVybiBzdHJpbmd8bnVsbCBUaGUgbmFtZSBvZiB0aGUgcmVnaXN0cnkuDQoJICogQHNpbmNlICA1LjAuNA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBnZXROYW1lKCk6ID9zdHJpbmc7DQoNCgkvKioNCgkgKiBTZXRzIHRoZSBuYW1lIG9mIHRoZSByZWdpc3RyeS4NCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmd8bnVsbCAkbmFtZSBUaGUgbmFtZSB0byBzZXQuDQoJICoNCgkgKiBAcmV0dXJuIHNlbGYNCgkgKiBAc2luY2UgIDUuMC40DQoJICovDQoJcHVibGljIGZ1bmN0aW9uIHNldE5hbWUoP3N0cmluZyAkbmFtZSk6IHNlbGY7DQoNCgkvKioNCgkgKiBTZXRzIGEgc2VwYXJhdG9yIHZhbHVlDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nfG51bGwgICAkdmFsdWUgICAgIFRoZSB2YWx1ZSB0byBzZXQuDQoJICoNCgkgKiBAcmV0dXJuIHNlbGYNCgkgKiBAc2luY2UgIDMuMi4wDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIHNldFNlcGFyYXRvcig/c3RyaW5nICR2YWx1ZSk6IHNlbGY7DQoNCgkvKioNCgkgKiBHZXRzIHRoZSBjdXJyZW50IHBhdGggc2VwYXJhdG9yIHVzZWQgaW4gcmVnaXN0cnkgcGF0aHMuDQoJICoNCgkgKiBAcmV0dXJuIHN0cmluZ3xudWxsIFRoZSBwYXRoIHNlcGFyYXRvci4NCgkgKiBAc2luY2UgIDUuMC40DQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGdldFNlcGFyYXRvcigpOiA/c3RyaW5nOw==', '{}', '{}', '', 1, '2023-09-09 17:29:58', 23, '', 1), +(513, 'bb29a833-73f7-4283-9327-bc7e41f0723b', 'VDM.Model.Load', 'Load', 'final class', 'Power Model Load\r\n\r\n@since 3.2.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '584747d1-3a86-453d-b7a3-a2219de8d777', '', '', '', '{\"0\":\"8aef58c1-3f70-4bd4-b9e4-3f29fcd41cff\"}', '', '[[[NamespacePrefix]]]\\Joomla\\Model.Load', '', '{}', '{}', '', '{\"use_selection0\":{\"use\":\"1f28cb53-60d9-4db1-b517-3c7dc6b429ef\",\"as\":\"default\"},\"use_selection1\":{\"use\":\"0a59c65c-9daf-4bc9-baf4-e063ff9e6a8a\",\"as\":\"default\"},\"use_selection2\":{\"use\":\"91004529-94a9-4590-b842-e7c6b624ecf5\",\"as\":\"default\"}}', 'CS8qKg0KCSAqIE1vZGVsIHRoZSB2YWx1ZQ0KCSAqICAgICAgICAgIEV4YW1wbGU6ICR0aGlzLT52YWx1ZSh2YWx1ZSwgJ2ZpZWxkX2tleScsICd0YWJsZV9uYW1lJyk7DQoJICoNCgkgKiBAcGFyYW0gICBtaXhlZCAgICAgICAgICAgJHZhbHVlICAgIFRoZSB2YWx1ZSB0byBtb2RlbA0KCSAqIEBwYXJhbSAgIHN0cmluZyAgICAgICAgICAkZmllbGQgICAgVGhlIGZpZWxkIGtleQ0KCSAqIEBwYXJhbSAgIHN0cmluZ3xudWxsICAgICAkdGFibGUgICAgVGhlIHRhYmxlDQoJICoNCgkgKiBAcmV0dXJuICBtaXhlZA0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiB2YWx1ZSgkdmFsdWUsIHN0cmluZyAkZmllbGQsID9zdHJpbmcgJHRhYmxlID0gbnVsbCkNCgl7DQoJCS8vIHNldCB0aGUgdGFibGUgbmFtZQ0KCQlpZiAoZW1wdHkoJHRhYmxlKSkNCgkJew0KCQkJJHRhYmxlID0gJHRoaXMtPmdldFRhYmxlKCk7DQoJCX0NCg0KCQkvLyBjaGVjayBpZiB0aGlzIGlzIGEgdmFsaWQgdGFibGUgKGRvbid0IHRvdWNoIG51bGwpDQoJCWlmICgkdmFsdWUgIT09IG51bGwgJiYgKCRzdG9yZSA9ICR0aGlzLT50YWJsZS0+Z2V0KCR0YWJsZSwgJGZpZWxkLCAnc3RvcmUnKSkgIT09IG51bGwpDQoJCXsNCgkJCS8vIG9wZW4gdGhlIHZhbHVlIGJhc2VkIG9uIHRoZSBzdG9yZSBtZXRob2QNCgkJCXN3aXRjaCgkc3RvcmUpDQoJCQl7DQoJCQkJY2FzZSAnYmFzZTY0JzoNCgkJCQkJJHZhbHVlID0gYmFzZTY0X2RlY29kZSgoc3RyaW5nKSAkdmFsdWUpOw0KCQkJCWJyZWFrOw0KCQkJCWNhc2UgJ2pzb24nOg0KCQkJCQkkdmFsdWUgPSBqc29uX2RlY29kZSgkdmFsdWUpOw0KCQkJCWJyZWFrOw0KCQkJfQ0KCQl9DQoNCgkJcmV0dXJuICR2YWx1ZTsNCgl9DQoNCgkvKioNCgkgKiBWYWxpZGF0ZSBiZWZvcmUgdGhlIHZhbHVlIGlzIG1vZGVsbGVkDQoJICoNCgkgKiBAcGFyYW0gICBtaXhlZCAgICAgICAgICR2YWx1ZSAgIFRoZSBmaWVsZCB2YWx1ZQ0KCSAqIEBwYXJhbSAgIHN0cmluZ3xudWxsICAgJGZpZWxkICAgICBUaGUgZmllbGQga2V5DQoJICogQHBhcmFtICAgc3RyaW5nfG51bGwgICAkdGFibGUgICBUaGUgdGFibGUNCgkgKg0KCSAqIEByZXR1cm4gIGJvb2wNCgkgKiBAc2luY2UgMy4yLjANCgkgKi8NCglwcm90ZWN0ZWQgZnVuY3Rpb24gdmFsaWRhdGVCZWZvcmUoJiR2YWx1ZSwgP3N0cmluZyAkZmllbGQgPSBudWxsLCA/c3RyaW5nICR0YWJsZSA9IG51bGwpOiBib29sDQoJew0KCQkvLyBvbmx5IHN0cmluZ3Mgb3IgbnVtYmVycyBhbGxvd2VkDQoJCWlmIChTdHJpbmdIZWxwZXI6OmNoZWNrKCR2YWx1ZSkgfHwgaXNfbnVtZXJpYygkdmFsdWUpKQ0KCQl7DQoJCQlyZXR1cm4gdHJ1ZTsNCgkJfQ0KCQkvLyBjaGVjayBpZiB3ZSBhbGxvdyBlbXB0eQ0KCQllbHNlaWYgKCR0aGlzLT5nZXRBbGxvd0VtcHR5KCkgJiYgZW1wdHkoJHZhbHVlKSkNCgkJew0KCQkJcmV0dXJuIHRydWU7DQoJCX0NCgkJLy8gcmVtb3ZlIGVtcHR5IHZhbHVlcw0KCQlyZXR1cm4gZmFsc2U7DQoJfQ0KDQoJLyoqDQoJICogVmFsaWRhdGUgYWZ0ZXIgdGhlIHZhbHVlIGlzIG1vZGVsbGVkDQoJICoNCgkgKiBAcGFyYW0gICBtaXhlZCAgICAgICAgICR2YWx1ZSAgIFRoZSBmaWVsZCB2YWx1ZQ0KCSAqIEBwYXJhbSAgIHN0cmluZ3xudWxsICAgJGZpZWxkICAgICBUaGUgZmllbGQga2V5DQoJICogQHBhcmFtICAgc3RyaW5nfG51bGwgICAkdGFibGUgICBUaGUgdGFibGUNCgkgKg0KCSAqIEByZXR1cm4gIGJvb2wNCgkgKiBAc2luY2UgMy4yLjANCgkgKi8NCglwcm90ZWN0ZWQgZnVuY3Rpb24gdmFsaWRhdGVBZnRlcigmJHZhbHVlLCA/c3RyaW5nICRmaWVsZCA9IG51bGwsID9zdHJpbmcgJHRhYmxlID0gbnVsbCk6IGJvb2wNCgl7DQoJCS8vIG9ubHkgc3RyaW5ncyBvciBudW1iZXJzIGFsbG93ZWQNCgkJaWYgKFN0cmluZ0hlbHBlcjo6Y2hlY2soJHZhbHVlKSB8fCBBcnJheUhlbHBlcjo6Y2hlY2soJHZhbHVlLCB0cnVlKSAgfHwgT2JqZWN0SGVscGVyOjpjaGVjaygkdmFsdWUpIHx8IGlzX251bWVyaWMoJHZhbHVlKSkNCgkJew0KCQkJcmV0dXJuIHRydWU7DQoJCX0NCgkJLy8gY2hlY2sgaWYgd2UgYWxsb3cgZW1wdHkNCgkJZWxzZWlmICgkdGhpcy0+Z2V0QWxsb3dFbXB0eSgpICYmIGVtcHR5KCR2YWx1ZSkpDQoJCXsNCgkJCXJldHVybiB0cnVlOw0KCQl9DQoJCS8vIHJlbW92ZSBlbXB0eSB2YWx1ZXMNCgkJcmV0dXJuIGZhbHNlOw0KCX0=', '{}', '{}', '', 1, '2023-09-11 14:34:49', 14, '', 1), +(712, '9206082e-a3f7-472e-98b2-de90d06cbdcd', 'VDM.Data.Item', 'Item', 'final class', 'Data Item\r\n\r\n@since 3.2.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', 'AbstractionModel', '', '', '{\"0\":\"05744dd3-4030-4cf8-8dda-a93ab809b473\"}', '', '[[[NamespacePrefix]]]\\Joomla\\Data.Item', '', '{}', '{}', '', '{\"use_selection0\":{\"use\":\"c548640c-a461-4424-9ac5-8dfb5ed06d8d\",\"as\":\"Load\"},\"use_selection1\":{\"use\":\"03bbc8d5-86e8-4d2f-ae5f-0d44a4f7af13\",\"as\":\"Insert\"},\"use_selection2\":{\"use\":\"68a41264-64c0-441a-a3d8-8a5e557b1883\",\"as\":\"Update\"},\"use_selection3\":{\"use\":\"d8f9ba53-c490-4e8b-8e9f-6757224e069c\",\"as\":\"Delete\"},\"use_selection4\":{\"use\":\"2ad31f74-f579-499d-b98b-c4f54fd615dd\",\"as\":\"Database\"}}', 'CS8qKg0KCSAqIFRoZSBMb2FkIENsYXNzLg0KCSAqDQoJICogQHZhciAgIExvYWQNCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwcm90ZWN0ZWQgTG9hZCAkbG9hZDsNCg0KCS8qKg0KCSAqIFRoZSBJbnNlcnQgQ2xhc3MuDQoJICoNCgkgKiBAdmFyICAgSW5zZXJ0DQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHJvdGVjdGVkIEluc2VydCAkaW5zZXJ0Ow0KDQoJLyoqDQoJICogVGhlIFVwZGF0ZSBDbGFzcy4NCgkgKg0KCSAqIEB2YXIgICBVcGRhdGUNCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwcm90ZWN0ZWQgVXBkYXRlICR1cGRhdGU7DQoNCgkvKioNCgkgKiBUaGUgRGVsZXRlIENsYXNzLg0KCSAqDQoJICogQHZhciAgIERlbGV0ZQ0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqLw0KCXByb3RlY3RlZCBEZWxldGUgJGRlbGV0ZTsNCg0KCS8qKg0KCSAqIFRoZSBMb2FkIENsYXNzLg0KCSAqDQoJICogQHZhciAgIERhdGFiYXNlDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHJvdGVjdGVkIERhdGFiYXNlICRkYXRhYmFzZTsNCg0KCS8qKg0KCSAqIFRhYmxlIE5hbWUNCgkgKg0KCSAqIEB2YXIgICAgc3RyaW5nDQoJICogQHNpbmNlIDMuMi4xDQoJICovDQoJcHJvdGVjdGVkIHN0cmluZyAkdGFibGU7DQoNCgkvKioNCgkgKiBDb25zdHJ1Y3Rvci4NCgkgKg0KCSAqIEBwYXJhbSBMb2FkICAgICAgICAkbG9hZCAgICAgVGhlIExvYWRJbnRlcmZhY2UgQ2xhc3MuDQoJICogQHBhcmFtIEluc2VydCAgICAgICRpbnNlcnQgICBUaGUgSW5zZXJ0SW50ZXJmYWNlIENsYXNzLg0KCSAqIEBwYXJhbSBVcGRhdGUgICAgICAkdXBkYXRlICAgVGhlIFVwZGF0ZUludGVyZmFjZSBDbGFzcy4NCgkgKiBAcGFyYW0gRGVsZXRlICAgICAgJGRlbGV0ZSAgIFRoZSBVcGRhdGVJbnRlcmZhY2UgQ2xhc3MuDQoJICogQHBhcmFtIERhdGFiYXNlICAgICRkYXRhYmFzZSBUaGUgRGF0YWJhc2UgTG9hZCBDbGFzcy4NCgkgKiBAcGFyYW0gc3RyaW5nfG51bGwgJHRhYmxlICAgIFRoZSB0YWJsZSBuYW1lLg0KCSAqDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KExvYWQgJGxvYWQsIEluc2VydCAkaW5zZXJ0LCBVcGRhdGUgJHVwZGF0ZSwNCgkJRGVsZXRlICRkZWxldGUsIERhdGFiYXNlICRkYXRhYmFzZSwgP3N0cmluZyAkdGFibGUgPSBudWxsKQ0KCXsNCgkJJHRoaXMtPmxvYWQgPSAkbG9hZDsNCgkJJHRoaXMtPmluc2VydCA9ICRpbnNlcnQ7DQoJCSR0aGlzLT51cGRhdGUgPSAkdXBkYXRlOw0KCQkkdGhpcy0+ZGVsZXRlID0gJGRlbGV0ZTsNCgkJJHRoaXMtPmRhdGFiYXNlID0gJGRhdGFiYXNlOw0KCQlpZiAoJHRhYmxlICE9PSBudWxsKQ0KCQl7DQoJCQkkdGhpcy0+dGFibGUgPSAkdGFibGU7DQoJCX0NCgl9DQoNCgkvKioNCgkgKiBTZXQgdGhlIGN1cnJlbnQgYWN0aXZlIHRhYmxlDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICAkdGFibGUgVGhlIHRhYmxlIHRoYXQgc2hvdWxkIGJlIGFjdGl2ZQ0KCSAqDQoJICogQHJldHVybiBzZWxmDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIHRhYmxlKHN0cmluZyAkdGFibGUpOiBzZWxmDQoJew0KCQkkdGhpcy0+dGFibGUgPSAkdGFibGU7DQoNCgkJcmV0dXJuICR0aGlzOw0KCX0NCg0KCS8qKg0KCSAqIEdldCBhbiBpdGVtDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICAgJHZhbHVlICAgVGhlIGl0ZW0ga2V5IHZhbHVlDQoJICogQHBhcmFtIHN0cmluZyAgICRrZXkgICAgIFRoZSBpdGVtIGtleQ0KCSAqDQoJICogQHJldHVybiBvYmplY3R8bnVsbCBUaGUgaXRlbSBvYmplY3Qgb3IgbnVsbA0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBnZXQoc3RyaW5nICR2YWx1ZSwgc3RyaW5nICRrZXkgPSAnZ3VpZCcpOiA/b2JqZWN0DQoJew0KCQlyZXR1cm4gJHRoaXMtPmxvYWQtPnRhYmxlKCR0aGlzLT5nZXRUYWJsZSgpKS0+aXRlbShbJGtleSA9PiAkdmFsdWVdKTsNCgl9DQoNCgkvKioNCgkgKiBHZXQgdGhlIHZhbHVlDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICAgJHZhbHVlICAgVGhlIGl0ZW0ga2V5IHZhbHVlDQoJICogQHBhcmFtIHN0cmluZyAgICRrZXkgICAgIFRoZSBpdGVtIGtleQ0KCSAqIEBwYXJhbSBzdHJpbmcgICAkZ2V0ICAgICBUaGUga2V5IG9mIHRoZSB2YWx1ZXMgd2Ugd2FudCBiYWNrDQoJICoNCgkgKiBAcmV0dXJuIG1peGVkDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIHZhbHVlKHN0cmluZyAkdmFsdWUsIHN0cmluZyAka2V5ID0gJ2d1aWQnLCBzdHJpbmcgJGdldCA9ICdpZCcpDQoJew0KCQlyZXR1cm4gJHRoaXMtPmxvYWQtPnRhYmxlKCR0aGlzLT5nZXRUYWJsZSgpKS0+dmFsdWUoWyRrZXkgPT4gJHZhbHVlXSwgJGdldCk7DQoJfQ0KDQoJLyoqDQoJICogU2V0IGFuIGl0ZW0NCgkgKg0KCSAqIEBwYXJhbSBvYmplY3QgICAgICAgJGl0ZW0gICAgVGhlIGl0ZW0NCgkgKiBAcGFyYW0gc3RyaW5nICAgICAgICRrZXkgICAgIFRoZSBpdGVtIGtleQ0KCSAqIEBwYXJhbSBzdHJpbmd8bnVsbCAgJGFjdGlvbiAgVGhlIGFjdGlvbiB0byBsb2FkIHBvd2VyDQoJICoNCgkgKiBAcmV0dXJuIGJvb2wNCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gc2V0KG9iamVjdCAkaXRlbSwgc3RyaW5nICRrZXkgPSAnZ3VpZCcsID9zdHJpbmcgJGFjdGlvbiA9IG51bGwpOiBib29sDQoJew0KCQlpZiAoJGFjdGlvbiAhPT0gbnVsbCB8fCAoaXNzZXQoJGl0ZW0tPnska2V5fSkgJiYgKCRhY3Rpb24gPSAkdGhpcy0+YWN0aW9uKCRpdGVtLT57JGtleX0sICRrZXkpKSAhPT0gbnVsbCkpDQoJCXsNCgkJCXJldHVybiBtZXRob2RfZXhpc3RzKCR0aGlzLCAkYWN0aW9uKSA/ICR0aGlzLT57JGFjdGlvbn0oJGl0ZW0sICRrZXkpIDogZmFsc2U7DQoJCX0NCg0KCQlyZXR1cm4gZmFsc2U7DQoJfQ0KDQoJLyoqDQoJICogRGVsZXRlIGFuIGl0ZW0NCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmcgICAkdmFsdWUgICBUaGUgaXRlbSBrZXkgdmFsdWUNCgkgKiBAcGFyYW0gc3RyaW5nICAgJGtleSAgICAgVGhlIGl0ZW0ga2V5DQoJICoNCgkgKiBAcmV0dXJuIGJvb2wNCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZGVsZXRlKHN0cmluZyAkdmFsdWUsIHN0cmluZyAka2V5ID0gJ2d1aWQnKTogYm9vbA0KCXsNCgkJcmV0dXJuICR0aGlzLT5kZWxldGUtPnRhYmxlKCR0aGlzLT5nZXRUYWJsZSgpKS0+aXRlbXMoWyRrZXkgPT4gJHZhbHVlXSk7DQoJfQ0KDQoJLyoqDQoJICogR2V0IHRoZSBjdXJyZW50IGFjdGl2ZSB0YWJsZQ0KCSAqDQoJICogQHJldHVybiAgc3RyaW5nDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGdldFRhYmxlKCk6IHN0cmluZw0KCXsNCgkJcmV0dXJuICR0aGlzLT50YWJsZTsNCgl9DQoNCgkvKioNCgkgKiBJbnNlcnQgYSBpdGVtDQoJICoNCgkgKiBAcGFyYW0gb2JqZWN0ICAgJGl0ZW0gIFRoZSBpdGVtDQoJICoNCgkgKiBAcmV0dXJuIGJvb2wNCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwcml2YXRlIGZ1bmN0aW9uIGluc2VydChvYmplY3QgJGl0ZW0pOiBib29sDQoJew0KCQlyZXR1cm4gJHRoaXMtPmluc2VydC0+dGFibGUoJHRoaXMtPmdldFRhYmxlKCkpLT5pdGVtKCRpdGVtKTsNCgl9DQoNCgkvKioNCgkgKiBVcGRhdGUgYSBpdGVtDQoJICoNCgkgKiBAcGFyYW0gb2JqZWN0ICAgJGl0ZW0gIFRoZSBpdGVtDQoJICogQHBhcmFtIHN0cmluZyAgICRrZXkgICBUaGUgaXRlbSBrZXkNCgkgKg0KCSAqIEByZXR1cm4gYm9vbA0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqLw0KCXByaXZhdGUgZnVuY3Rpb24gdXBkYXRlKG9iamVjdCAkaXRlbSwgc3RyaW5nICRrZXkpOiBib29sDQoJew0KCQlyZXR1cm4gJHRoaXMtPnVwZGF0ZS0+dGFibGUoJHRoaXMtPmdldFRhYmxlKCkpLT5pdGVtKCRpdGVtLCAka2V5KTsNCgl9DQoNCgkvKioNCgkgKiBHZXQgbG9hZGluZyBhY3Rpb24NCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmcgICR2YWx1ZSBUaGUga2V5IHZhbHVlIHRoZSBpdGVtDQoJICogQHBhcmFtIHN0cmluZyAgJGtleSAgIFRoZSBpdGVtIGtleQ0KCSAqDQoJICogQHJldHVybiBzdHJpbmcNCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwcml2YXRlIGZ1bmN0aW9uIGFjdGlvbihzdHJpbmcgJHZhbHVlLCBzdHJpbmcgJGtleSk6IHN0cmluZw0KCXsNCgkJJGlkID0gJHRoaXMtPmRhdGFiYXNlLT52YWx1ZSgNCgkJCVsiYS5pZCIgPT4gJ2lkJ10sDQoJCQlbImEiID0+ICR0aGlzLT5nZXRUYWJsZSgpXSwNCgkJCVsiYS4ka2V5IiA9PiAkdmFsdWVdDQoJCSk7DQoNCgkJaWYgKCRpZCAhPT0gbnVsbCAmJiAkaWQgPiAwKQ0KCQl7DQoJCQlyZXR1cm4gJ3VwZGF0ZSc7DQoJCX0NCg0KCQlyZXR1cm4gJ2luc2VydCc7DQoJfQ==', '{}', '{}', '', 1, '2024-04-09 15:23:26', 27, '', 1), +(723, '95c02df3-fe0a-405b-b506-b7a5b8605b66', 'VDM.PHPConfigurationCheckerInterface', 'PHPConfigurationCheckerInterface', 'interface', 'PHP Configuration Checker\r\n\r\n@since 5.0.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\Interfaces.PHPConfigurationCheckerInterface', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIENoZWNrIHRoYXQgdGhlIHJlcXVpcmVkIGNvbmZpZ3VyYXRpb25zIGFyZSBzZXQgZm9yIFBIUA0KCSAqDQoJICogQHJldHVybiB2b2lkDQoJICogQHNpbmNlICA1LjAuMg0KCSAqKi8NCglwdWJsaWMgZnVuY3Rpb24gcnVuKCk6IHZvaWQ7', '{}', '{}', '', 1, '2024-04-10 09:12:28', 9, '', 1), +(728, '05744dd3-4030-4cf8-8dda-a93ab809b473', 'VDM.Interfaces.Data.ItemInterface', 'ItemInterface', 'interface', 'Data Item Interface\r\n\r\n@since 3.2.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\Interfaces.Data.ItemInterface', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIFNldCB0aGUgY3VycmVudCBhY3RpdmUgdGFibGUNCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmcgICR0YWJsZSBUaGUgdGFibGUgdGhhdCBzaG91bGQgYmUgYWN0aXZlDQoJICoNCgkgKiBAcmV0dXJuIHNlbGYNCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gdGFibGUoc3RyaW5nICR0YWJsZSk6IHNlbGY7DQoNCgkvKioNCgkgKiBHZXQgYW4gaXRlbQ0KCSAqDQoJICogQHBhcmFtIHN0cmluZyAgICAgICAkdmFsdWUgICBUaGUgaXRlbSBrZXkgdmFsdWUNCgkgKiBAcGFyYW0gc3RyaW5nICAgICAgICRrZXkgICAgIFRoZSBpdGVtIGtleQ0KCSAqDQoJICogQHJldHVybiBvYmplY3R8bnVsbCBUaGUgaXRlbSBvYmplY3Qgb3IgbnVsbA0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBnZXQoc3RyaW5nICR2YWx1ZSwgc3RyaW5nICRrZXkgPSAnZ3VpZCcpOiA/b2JqZWN0Ow0KDQoJLyoqDQoJICogR2V0IHRoZSB2YWx1ZQ0KCSAqDQoJICogQHBhcmFtIHN0cmluZyAgICR2YWx1ZSAgIFRoZSBpdGVtIGtleSB2YWx1ZQ0KCSAqIEBwYXJhbSBzdHJpbmcgICAka2V5ICAgICBUaGUgaXRlbSBrZXkNCgkgKiBAcGFyYW0gc3RyaW5nICAgJGdldCAgICAgVGhlIGtleSBvZiB0aGUgdmFsdWVzIHdlIHdhbnQgYmFjaw0KCSAqDQoJICogQHJldHVybiBtaXhlZA0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiB2YWx1ZShzdHJpbmcgJHZhbHVlLCBzdHJpbmcgJGtleSA9ICdndWlkJywgc3RyaW5nICRnZXQgPSAnaWQnKTsNCg0KCS8qKg0KCSAqIFNldCBhbiBpdGVtDQoJICoNCgkgKiBAcGFyYW0gb2JqZWN0ICAgICAgICRpdGVtICAgIFRoZSBpdGVtDQoJICogQHBhcmFtIHN0cmluZyAgICAgICAka2V5ICAgICBUaGUgaXRlbSBrZXkNCgkgKiBAcGFyYW0gc3RyaW5nfG51bGwgICRhY3Rpb24gIFRoZSBhY3Rpb24gdG8gbG9hZCBwb3dlcg0KCSAqDQoJICogQHJldHVybiBib29sDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIHNldChvYmplY3QgJGl0ZW0sIHN0cmluZyAka2V5ID0gJ2d1aWQnLCA/c3RyaW5nICRhY3Rpb24gPSBudWxsKTogYm9vbDsNCg0KCS8qKg0KCSAqIERlbGV0ZSBhbiBpdGVtDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICAgICR2YWx1ZSAgIFRoZSBpdGVtIGtleSB2YWx1ZQ0KCSAqIEBwYXJhbSBzdHJpbmcgICAgJGtleSAgICAgVGhlIGl0ZW0ga2V5DQoJICoNCgkgKiBAcmV0dXJuIGJvb2wNCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZGVsZXRlKHN0cmluZyAkdmFsdWUsIHN0cmluZyAka2V5ID0gJ2d1aWQnKTogYm9vbDsNCg0KCS8qKg0KCSAqIEdldCB0aGUgY3VycmVudCBhY3RpdmUgdGFibGUNCgkgKg0KCSAqIEByZXR1cm4gIHN0cmluZw0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBnZXRUYWJsZSgpOiBzdHJpbmc7', '{}', '{}', '', 1, '2024-04-11 10:14:41', 17, '', 1), +(732, 'b3d2ec33-76d4-4c3b-bb2c-86ac14a221ce', 'VDM.Table.Schema', 'Schema', 'final class', '[[[Component]]] Tables Schema\r\n\r\n@since 3.2.1', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '2.0.0', 'f3c04c28-bce4-422e-be93-7d163e4e342b', '', '', '', '{\"0\":\"4dd11b9b-3c64-460b-aaa6-62ba467db7aa\"}', '', '[[[NamespacePrefix]]]\\Joomla\\[[[ComponentNamespace]]].Table.Schema', '', '{}', '{}', '', '{\"use_selection0\":{\"use\":\"bfd1d6d5-56c1-4fe9-9fee-1c5910e1f5d8\",\"as\":\"default\"}}', 'CS8qKg0KCSAqIENvbnN0cnVjdG9yLg0KCSAqDQoJICogQHBhcmFtIFRhYmxlICAgJHRhYmxlICAgVGhlIFRhYmxlIENsYXNzLg0KCSAqDQoJICogQHNpbmNlIDMuMi4xDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KD9UYWJsZSAkdGFibGUgPSBudWxsKQ0KCXsNCgkJJHRhYmxlID8/PSBuZXcgVGFibGU7DQoNCgkJcGFyZW50OjpfX2NvbnN0cnVjdCgkdGFibGUpOw0KCX0NCg0KCS8qKg0KCSAqIEdldCB0aGUgdGFyZ2V0ZWQgY29tcG9uZW50IGNvZGUNCgkgKg0KCSAqIEByZXR1cm4gIHN0cmluZw0KCSAqIEBzaW5jZSAzLjIuMQ0KCSAqLw0KCXByb3RlY3RlZCBmdW5jdGlvbiBnZXRDb2RlKCk6IHN0cmluZw0KCXsNCgkJcmV0dXJuICdbW1tjb21wb25lbnRdXV0nOw0KCX0=', '{}', '{}', '', 1, '2024-04-17 10:39:32', 14, '', 1), +(733, 'f3c04c28-bce4-422e-be93-7d163e4e342b', 'VDM.Schema', 'Schema', 'abstract class', 'Schema Checking\r\n\r\n@since 3.2.1', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '{\"0\":\"4dd11b9b-3c64-460b-aaa6-62ba467db7aa\"}', '', '[[[NamespacePrefix]]]\\Joomla\\Abstraction.Schema', 1, '{}', '{}', 'dXNlIEpvb21sYVxDTVNcRmFjdG9yeTsNCnVzZSBKb29tbGFcQ01TXFZlcnNpb247', '{\"use_selection0\":{\"use\":\"2da6d6c4-eb29-4d69-8bc2-36d96e916adf\",\"as\":\"Table\"}}', 'CS8qKg0KCSAqIFRoZSBUYWJsZSBDbGFzcy4NCgkgKg0KCSAqIEB2YXIgICBUYWJsZQ0KCSAqIEBzaW5jZSAzLjIuMQ0KCSAqLw0KCXByb3RlY3RlZCBUYWJsZSAkdGFibGU7DQoNCgkvKioNCgkgKiBUaGUgRGF0YWJhc2UgQ2xhc3MNCgkgKg0KCSAqIEBzaW5jZSAzLjIuMQ0KCSAqLw0KCXByb3RlY3RlZCAkZGI7DQoNCgkvKioNCgkgKiBUaGUgbG9jYWwgdGFibGVzDQoJICoNCgkgKiBAdmFyICAgYXJyYXkNCgkgKiBAc2luY2UgMy4yLjENCgkgKi8NCglwcml2YXRlIGFycmF5ICR0YWJsZXM7DQoNCgkvKioNCgkgKiBUaGUgY29tcG9uZW50IHRhYmxlIHByZWZpeA0KCSAqDQoJICogQHZhciAgIHN0cmluZw0KCSAqIEBzaW5jZSAzLjIuMQ0KCSAqLw0KCXByaXZhdGUgc3RyaW5nICRwcmVmaXg7DQoNCgkvKioNCgkgKiBUaGUgZmllbGQgdW5pcXVlIGtleXMNCgkgKg0KCSAqIEB2YXIgICBhcnJheQ0KCSAqIEBzaW5jZSAzLjIuMQ0KCSAqLw0KCXByaXZhdGUgYXJyYXkgJHVuaXF1ZUtleXM7DQoNCgkvKioNCgkgKiBUaGUgZmllbGQga2V5cw0KCSAqDQoJICogQHZhciAgIGFycmF5DQoJICogQHNpbmNlIDMuMi4xDQoJICovDQoJcHJpdmF0ZSBhcnJheSAka2V5czsNCg0KCS8qKg0KCSAqIFRoZSBjdXJyZW50IHRhYmxlIGNvbHVtbnMNCgkgKg0KCSAqIEB2YXIgICBhcnJheQ0KCSAqIEBzaW5jZSAzLjIuMQ0KCSAqLw0KCXByaXZhdGUgYXJyYXkgJGNvbHVtbnM7DQoNCgkvKioNCgkgKiBUaGUgc3VjY2VzcyBtZXNzYWdlcyBvZiB0aGUgYWN0aW9uDQoJICoNCgkgKiBAdmFyICAgYXJyYXkNCgkgKiBAc2luY2UgMy4yLjENCgkgKi8NCglwcml2YXRlIGFycmF5ICRzdWNjZXNzOw0KDQoJLyoqDQoJICogQ3VycmVudCBKb29tbGEgVmVyc2lvbiBXZSBhcmUgSU4NCgkgKg0KCSAqIEB2YXIgICAgIGludA0KCSAqIEBzaW5jZSAzLjIuMQ0KCSAqKi8NCglwcm90ZWN0ZWQgJGN1cnJlbnRWZXJzaW9uOw0KDQoJLyoqDQoJICogQ3VycmVudCBEQiBWZXJzaW9uIFdlIGFyZSBJTg0KCSAqDQoJICogQHZhciAgICAgc3RyaW5nDQoJICogQHNpbmNlIDUuMC40DQoJICoqLw0KCXByb3RlY3RlZCBzdHJpbmcgJGRiVmVyc2lvbjsNCg0KCS8qKg0KCSAqIEN1cnJlbnQgREIgVHlwZSBXZSBhcmUgSU4NCgkgKg0KCSAqIEB2YXIgICAgIHN0cmluZw0KCSAqIEBzaW5jZSA1LjAuNA0KCSAqKi8NCglwcm90ZWN0ZWQgc3RyaW5nICRkYlR5cGU7DQoNCgkvKioNCgkgKiBDb25zdHJ1Y3Rvci4NCgkgKg0KCSAqIEBwYXJhbSBUYWJsZSAgICR0YWJsZSAgIFRoZSBUYWJsZSBDbGFzcy4NCgkgKg0KCSAqIEBzaW5jZSAzLjIuMQ0KCSAqIEB0aHJvd3MgXEV4Y2VwdGlvbiBJZiB0aGUgZGF0YWJhc2UgZmFpbHMNCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoVGFibGUgJHRhYmxlKQ0KCXsNCgkJJHRoaXMtPnRhYmxlID0gJHRhYmxlOw0KDQoJCXRyeSB7DQoJCQkvLyBzZXQgdGhlIGRhdGFiYXNlIG9iamVjdA0KCQkJJHRoaXMtPmRiID0gRmFjdG9yeTo6Z2V0RGJvKCk7DQoNCgkJCS8vIGN1cnJlbnQgREIgdmVyc2lvbg0KCQkJJHRoaXMtPmRiVmVyc2lvbiA9ICR0aGlzLT5kYi0+Z2V0VmVyc2lvbigpOw0KDQoJCQkvLyBjdXJyZW50IERCIHR5cGUNCgkJCSR0aGlzLT5kYlR5cGUgPSAkdGhpcy0+ZGItPmdldFNlcnZlclR5cGUoKTsNCg0KCQkJLy8gZ2V0IGN1cnJlbnQgd2Vic2l0ZSB0YWJsZXMNCgkJCSR0aGlzLT50YWJsZXMgPSAkdGhpcy0+ZGItPmdldFRhYmxlTGlzdCgpOw0KDQoJCQkvLyBzZXQgdGhlIGNvbXBvbmVudCB0YWJsZSBwcmVmaXgNCgkJCSR0aGlzLT5wcmVmaXggPSAkdGhpcy0+ZGItPmdldFByZWZpeCgpIC4gJHRoaXMtPmdldENvZGUoKTsNCg0KCQkJLy8gc2V0IHRoZSBjdXJyZW50IHZlcnNpb24NCgkJCSR0aGlzLT5jdXJyZW50VmVyc2lvbiA9IFZlcnNpb246Ok1BSk9SX1ZFUlNJT047DQoJCX0gY2F0Y2ggKFxFeGNlcHRpb24gJGUpIHsNCgkJCXRocm93IG5ldyBcRXhjZXB0aW9uKCJFcnJvcjogZmFpbGVkIHRvIGluaXRpYWxpemUgc2NoZW1hIGNsYXNzIGR1ZSB0byBhIGRhdGFiYXNlIGVycm9yLiIpOw0KCQl9DQoJfQ0KDQoJLyoqDQoJICogQ2hlY2sgYW5kIHVwZGF0ZSBkYXRhYmFzZSBzY2hlbWEgZm9yIG1pc3NpbmcgZmllbGRzIG9yIHRhYmxlcy4NCgkgKg0KCSAqIEByZXR1cm4gYXJyYXkgICBUaGUgYXJyYXkgb2Ygc3VjY2Vzc2Z1bCB1cGRhdGVzL2FjdGlvbnMsIGlmIGVtcHR5IG5vIHVwZGF0ZS9hY3Rpb24gd2FzIHRha2VuLg0KCSAqIEBzaW5jZSAgMy4yLjENCgkgKiBAdGhyb3dzIFxFeGNlcHRpb24gSWYgdGhlcmUgaXMgYW4gZXJyb3IgZHVyaW5nIHRoZSB1cGRhdGUgcHJvY2Vzcy4NCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gdXBkYXRlKCk6IGFycmF5DQoJew0KCQl0cnkgew0KCQkJJHRoaXMtPnN1Y2Nlc3MgPSBbDQoJCQkJIlN1Y2Nlc3M6IHNjYW4gb2YgdGhlIGNvbXBvbmVudCB0YWJsZXMgc3RhcnRlZC4iDQoJCQldOw0KCQkJZm9yZWFjaCAoJHRoaXMtPnRhYmxlLT50YWJsZXMoKSBhcyAkdGFibGUpDQoJCQl7DQoJCQkJJHRoaXMtPnVuaXF1ZUtleXMgPSBbXTsNCgkJCQkkdGhpcy0+a2V5cyA9IFtdOw0KDQoJCQkJaWYgKCR0aGlzLT50YWJsZUV4aXN0cygkdGFibGUpKQ0KCQkJCXsNCgkJCQkJJHRoaXMtPnVwZGF0ZVNjaGVtYSgkdGFibGUpOw0KCQkJCX0NCgkJCQllbHNlDQoJCQkJew0KCQkJCQkkdGhpcy0+Y3JlYXRlVGFibGUoJHRhYmxlKTsNCgkJCQl9DQoJCQl9DQoJCX0gY2F0Y2ggKFxFeGNlcHRpb24gJGUpIHsNCgkJCXRocm93IG5ldyBcRXhjZXB0aW9uKCJFcnJvcjogdXBkYXRpbmcgZGF0YWJhc2Ugc2NoZW1hLiAiIC4gJGUtPmdldE1lc3NhZ2UoKSk7DQoJCX0NCg0KCQlpZiAoY291bnQoJHRoaXMtPnN1Y2Nlc3MpID09IDEpDQoJCXsNCgkJCSR0aGlzLT5zdWNjZXNzW10gPSAiU3VjY2Vzczogc2NhbiBvZiB0aGUgY29tcG9uZW50IHRhYmxlcyBjb21wbGV0ZWQgd2l0aCBubyB1cGRhdGUgbmVlZGVkLiI7DQoJCX0NCgkJZWxzZQ0KCQl7DQoJCQkkdGhpcy0+c3VjY2Vzc1tdID0gIlN1Y2Nlc3M6IHNjYW4gb2YgdGhlIGNvbXBvbmVudCB0YWJsZXMgY29tcGxldGVkLiI7DQoJCX0NCg0KCQlyZXR1cm4gJHRoaXMtPnN1Y2Nlc3M7DQoJfQ0KDQoJLyoqDQoJICogR2V0IHRoZSB0YXJnZXRlZCBjb21wb25lbnQgY29kZQ0KCSAqDQoJICogQHJldHVybiAgc3RyaW5nDQoJICogQHNpbmNlIDMuMi4xDQoJICovDQoJYWJzdHJhY3QgcHJvdGVjdGVkIGZ1bmN0aW9uIGdldENvZGUoKTogc3RyaW5nOw0KDQoJLyoqDQoJICogQ2hlY2sgaWYgYSB0YWJsZSBleGlzdHMgaW4gdGhlIGRhdGFiYXNlLg0KCSAqDQoJICogQHBhcmFtIHN0cmluZyAkdGFibGUgVGhlIG5hbWUgb2YgdGhlIHRhYmxlIHRvIGNoZWNrLg0KCSAqDQoJICogQHJldHVybiBib29sIFRydWUgaWYgdGFibGUgZXhpc3RzLCBGYWxzZSBvdGhlcndpc2UuDQoJICogQHNpbmNlICAzLjIuMQ0KCSAqLw0KCXByb3RlY3RlZCBmdW5jdGlvbiB0YWJsZUV4aXN0cyhzdHJpbmcgJHRhYmxlKTogYm9vbA0KCXsNCgkJcmV0dXJuIGluX2FycmF5KCR0aGlzLT5nZXRUYWJsZSgkdGFibGUpLCAkdGhpcy0+dGFibGVzKTsNCgl9DQoNCgkvKioNCgkgKiBVcGRhdGUgdGhlIHNjaGVtYSBvZiBhbiBleGlzdGluZyB0YWJsZS4NCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmcgJHRhYmxlICBUaGUgdGFibGUgdG8gdXBkYXRlLg0KCSAqDQoJICogQHJldHVybiB2b2lkDQoJICogQHNpbmNlICAzLjIuMQ0KCSAqIEB0aHJvd3MgXEV4Y2VwdGlvbiBJZiB0aGVyZSBpcyBhbiBlcnJvciB3aGlsZSB1cGRhdGluZyB0aGUgc2NoZW1hLg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiB1cGRhdGVTY2hlbWEoc3RyaW5nICR0YWJsZSk6IHZvaWQNCgl7DQoJCXRyeSB7DQoJCQkkZXhpc3RpbmdDb2x1bW5zID0gJHRoaXMtPmdldEV4aXN0aW5nQ29sdW1ucygkdGFibGUpOw0KCQkJJGV4cGVjdGVkQ29sdW1ucyA9ICR0aGlzLT50YWJsZS0+ZmllbGRzKCR0YWJsZSwgdHJ1ZSk7DQoNCgkJCSRtaXNzaW5nQ29sdW1ucyA9IGFycmF5X2RpZmYoJGV4cGVjdGVkQ29sdW1ucywgJGV4aXN0aW5nQ29sdW1ucyk7DQoNCgkJCWlmICghZW1wdHkoJG1pc3NpbmdDb2x1bW5zKSkNCgkJCXsNCgkJCQkkdGhpcy0+YWRkTWlzc2luZ0NvbHVtbnMoJHRhYmxlLCAkbWlzc2luZ0NvbHVtbnMpOw0KCQkJfQ0KDQoJCQkkdGhpcy0+Y2hlY2tDb2x1bW5zRGF0YVR5cGUoJHRhYmxlLCAkZXhwZWN0ZWRDb2x1bW5zKTsNCg0KCQl9IGNhdGNoIChcRXhjZXB0aW9uICRlKSB7DQoJCQl0aHJvdyBuZXcgXEV4Y2VwdGlvbigiRXJyb3I6IHVwZGF0aW5nIHNjaGVtYSBmb3IgJHRhYmxlIHRhYmxlLiAiIC4gJGUtPmdldE1lc3NhZ2UoKSk7DQoJCX0NCg0KCQlpZiAoIWVtcHR5KCRtaXNzaW5nQ29sdW1ucykpDQoJCXsNCgkJCSRjb2x1bW5fcyA9IChjb3VudCgkbWlzc2luZ0NvbHVtbnMpID09IDEpID8gJ2NvbHVtbicgOiAnY29sdW1ucyc7DQoJCQkkbWlzc2luZ0NvbHVtbnMgPSBpbXBsb2RlKCcsICcsICRtaXNzaW5nQ29sdW1ucyk7DQoJCQkkdGhpcy0+c3VjY2Vzc1tdID0gIlN1Y2Nlc3M6IGFkZGVkIG1pc3NpbmcgKCRtaXNzaW5nQ29sdW1ucykgJGNvbHVtbl9zIHRvICR0YWJsZSB0YWJsZS4iOw0KCQl9DQoJfQ0KDQoJLyoqDQoJICogQ3JlYXRlIGEgdGFibGUgd2l0aCBhbGwgbmVjZXNzYXJ5IGZpZWxkcy4NCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmcgJHRhYmxlIFRoZSBuYW1lIG9mIHRoZSB0YWJsZSB0byBjcmVhdGUuDQoJICoNCgkgKiBAcmV0dXJuIHZvaWQNCgkgKiBAc2luY2UgIDMuMi4xDQoJICogQHRocm93cyBcRXhjZXB0aW9uIElmIHRoZXJlIGlzIGFuIGVycm9yIGNyZWF0aW5nIHRoZSB0YWJsZS4NCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gY3JlYXRlVGFibGUoc3RyaW5nICR0YWJsZSk6IHZvaWQNCgl7DQoJCXRyeSB7DQoJCQkkY29sdW1ucyA9IFtdOw0KCQkJJGZpZWxkcyA9ICR0aGlzLT50YWJsZS0+ZmllbGRzKCR0YWJsZSwgdHJ1ZSk7DQoJCQkkY3JlYXRlVGFibGUgPSAnQ1JFQVRFIFRBQkxFIElGIE5PVCBFWElTVFMgJyAuICR0aGlzLT5kYi0+cXVvdGVOYW1lKCR0aGlzLT5nZXRUYWJsZSgkdGFibGUpKTsNCg0KCQkJZm9yZWFjaCAoJGZpZWxkcyBhcyAkZmllbGQpDQoJCQl7DQoJCQkJaWYgKCgkZGVmID0gJHRoaXMtPmdldENvbHVtbkRlZmluaXRpb24oJHRhYmxlLCAkZmllbGQpKSAhPT0gbnVsbCkNCgkJCQl7DQoJCQkJCSRjb2x1bW5zW10gPSAkZGVmOw0KCQkJCX0NCgkJCX0NCg0KCQkJJGNvbHVtbkRlZmluaXRpb25zID0gaW1wbG9kZSgnLCAnLCAkY29sdW1ucyk7DQoNCgkJCSRrZXlzID0gJHRoaXMtPmdldFRhYmxlS2V5cygpOw0KDQoJCQkkY3JlYXRlVGFibGVTcWwgPSAiJGNyZWF0ZVRhYmxlICgkY29sdW1uRGVmaW5pdGlvbnMsICRrZXlzKSI7DQoNCgkJCSR0aGlzLT5kYi0+c2V0UXVlcnkoJGNyZWF0ZVRhYmxlU3FsKTsNCgkJCSR0aGlzLT5kYi0+ZXhlY3V0ZSgpOw0KCQl9IGNhdGNoIChcRXhjZXB0aW9uICRlKSB7DQoJCQl0aHJvdyBuZXcgXEV4Y2VwdGlvbigiRXJyb3I6IGZhaWxlZCB0byBjcmVhdGUgbWlzc2luZyAkdGFibGUgdGFibGUuICIgLiAkZS0+Z2V0TWVzc2FnZSgpKTsNCgkJfQ0KDQoJCSR0aGlzLT5zdWNjZXNzW10gPSAiU3VjY2VzczogY3JlYXRlZCBtaXNzaW5nICAkdGFibGUgdGFibGUuIjsNCgl9DQoNCgkvKioNCgkgKiBGZXRjaCBleGlzdGluZyBjb2x1bW5zIGZyb20gYSBkYXRhYmFzZSB0YWJsZS4NCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmcgJHRhYmxlIFRoZSBuYW1lIG9mIHRoZSB0YWJsZS4NCgkgKg0KCSAqIEByZXR1cm4gYXJyYXkgQW4gYXJyYXkgb2YgY29sdW1uIG5hbWVzLg0KCSAqIEBzaW5jZSAgMy4yLjENCgkgKi8NCglwcm90ZWN0ZWQgZnVuY3Rpb24gZ2V0RXhpc3RpbmdDb2x1bW5zKHN0cmluZyAkdGFibGUpOiBhcnJheQ0KCXsNCgkJJHRoaXMtPmNvbHVtbnMgPSAkdGhpcy0+ZGItPmdldFRhYmxlQ29sdW1ucygkdGhpcy0+Z2V0VGFibGUoJHRhYmxlKSwgZmFsc2UpOw0KDQoJCXJldHVybiBhcnJheV9rZXlzKCR0aGlzLT5jb2x1bW5zKTsNCgl9DQoNCgkvKioNCgkgKiBBZGQgbWlzc2luZyBjb2x1bW5zIHRvIGEgdGFibGUuDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICR0YWJsZSAgIFRoZSB0YWJsZSB0byB1cGRhdGUuDQoJICogQHBhcmFtIGFycmF5ICAkY29sdW1ucyBMaXN0IG9mIG1pc3NpbmcgY29sdW1ucy9maWVsZHMuDQoJICoNCgkgKiBAcmV0dXJuIHZvaWQNCgkgKiBAc2luY2UgIDMuMi4xDQoJICogQHRocm93cyBcRXhjZXB0aW9uIElmIHRoZXJlIGlzIGFuIGVycm9yIGFkZGluZyBjb2x1bW5zLg0KCSAqLw0KCXByb3RlY3RlZCBmdW5jdGlvbiBhZGRNaXNzaW5nQ29sdW1ucyhzdHJpbmcgJHRhYmxlLCBhcnJheSAkY29sdW1ucyk6IHZvaWQNCgl7DQoJCXRyeSB7DQoJCQkkcXVlcnkgPSAkdGhpcy0+ZGItPmdldFF1ZXJ5KHRydWUpOw0KCQkJJGFsdGVyVGFibGUgPSAnQUxURVIgVEFCTEUgJyAuICR0aGlzLT5kYi0+cXVvdGVOYW1lKCR0aGlzLT5nZXRUYWJsZSgkdGFibGUpKSAuICcgJzsNCg0KCQkJLy8gU3RhcnQgYW4gQUxURVIgVEFCTEUgcXVlcnkNCgkJCSRhbHRlclF1ZXJpZXMgPSBbXTsNCgkJCWZvcmVhY2ggKCRjb2x1bW5zIGFzICRjb2x1bW4pDQoJCQl7DQoJCQkJaWYgKCgkZGVmID0gJHRoaXMtPmdldENvbHVtbkRlZmluaXRpb24oJHRhYmxlLCAkY29sdW1uKSkgIT09IG51bGwpDQoJCQkJew0KCQkJCQkkYWx0ZXJRdWVyaWVzW10gPSAiIEFERCAiIC4gJGRlZjsNCgkJCQl9DQoJCQl9DQoNCgkJCSR0aGlzLT5kYi0+c2V0UXVlcnkoJGFsdGVyVGFibGUgLiBpbXBsb2RlKCcsICcsICRhbHRlclF1ZXJpZXMpKTsNCgkJCSR0aGlzLT5kYi0+ZXhlY3V0ZSgpOw0KCQl9IGNhdGNoIChcRXhjZXB0aW9uICRlKSB7DQoJCQkkY29sdW1uX3MgPSAoY291bnQoJGNvbHVtbnMpID09IDEpID8gJ2NvbHVtbicgOiAnY29sdW1ucyc7DQoJCQkkY29sdW1ucyA9IGltcGxvZGUoJywgJywgJGNvbHVtbnMpOw0KCQkJdGhyb3cgbmV3IFxFeGNlcHRpb24oIkVycm9yOiBmYWlsZWQgdG8gYWRkICgkY29sdW1ucykgJGNvbHVtbl9zIHRvICR0YWJsZSB0YWJsZS4gIiAuICRlLT5nZXRNZXNzYWdlKCkpOw0KCQl9DQoJfQ0KDQoJLyoqDQoJICogVmFsaWRhdGUgYW5kIHVwZGF0ZSB0aGUgZGF0YSB0eXBlIG9mIGV4aXN0aW5nIGZpZWxkcy9jb2x1bW5zDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICR0YWJsZSAgICBUaGUgdGFibGUgdG8gdXBkYXRlLg0KCSAqIEBwYXJhbSBhcnJheSAgJGNvbHVtbnMgIExpc3Qgb2YgY29sdW1ucy9maWVsZHMgdG8gY2hlY2suDQoJICoNCgkgKiBAcmV0dXJuIHZvaWQNCgkgKiBAc2luY2UgIDMuMi4xDQoJICovDQoJcHJvdGVjdGVkIGZ1bmN0aW9uIGNoZWNrQ29sdW1uc0RhdGFUeXBlKHN0cmluZyAkdGFibGUsIGFycmF5ICRjb2x1bW5zKTogdm9pZA0KCXsNCgkJJHJlcXVpcmVVcGRhdGUgPSBbXTsNCgkJZm9yZWFjaCAoJGNvbHVtbnMgYXMgJGNvbHVtbikNCgkJew0KCQkJJGN1cnJlbnQgPSAkdGhpcy0+Y29sdW1uc1skY29sdW1uXSA/PyBudWxsOw0KCQkJaWYgKCRjdXJyZW50ID09PSBudWxsIHx8ICgkZXhwZWN0ZWQgPSAkdGhpcy0+dGFibGUtPmdldCgkdGFibGUsICRjb2x1bW4sICdkYicpKSA9PT0gbnVsbCkNCgkJCXsNCgkJCQljb250aW51ZTsNCgkJCX0NCg0KCQkJLy8gY2hlY2sgaWYgdGhlIGRhdGEgdHlwZSBhbmQgc2l6ZSBtYXRjaA0KCQkJaWYgKCR0aGlzLT5pc0RhdGFUeXBlQ2hhbmdlU2lnbmlmaWNhbnQoJGN1cnJlbnQtPlR5cGUsICRleHBlY3RlZFsndHlwZSddKSkNCgkJCXsNCgkJCQkkcmVxdWlyZVVwZGF0ZVskY29sdW1uXSA9IFsNCgkJCQkJJ2NvbHVtbicgPT4gJGNvbHVtbiwNCgkJCQkJJ2N1cnJlbnQnID0+ICRjdXJyZW50LT5UeXBlLA0KCQkJCQknZXhwZWN0ZWQnID0+ICRleHBlY3RlZFsndHlwZSddDQoJCQkJXTsNCgkJCX0NCgkJCS8vIGNoZWNrIGlmIHVwZGF0ZSBvZiBkZWZhdWx0IHZhbHVlcyBpcyBuZWVkZWQNCgkJCWlmICgkdGhpcy0+Y2hlY2tEZWZhdWx0KCR0YWJsZSwgJGNvbHVtbikpDQoJCQl7DQoJCQkJJHJlcXVpcmVVcGRhdGVbJGNvbHVtbl0gPSBbDQoJCQkJCSdjb2x1bW4nID0+ICRjb2x1bW4sDQoJCQkJCSdjdXJyZW50JyA9PiAkY3VycmVudC0+VHlwZSwNCgkJCQkJJ2V4cGVjdGVkJyA9PiAkZXhwZWN0ZWRbJ3R5cGUnXQ0KCQkJCV07DQoJCQl9DQoJCQkvLyBjaGVjayBpZiB1cGRhdGUgb2YgbnVsbCBpcyBuZWVkZWQNCgkJCWlmICgkdGhpcy0+Y2hlY2tOdWxsKCR0YWJsZSwgJGNvbHVtbikpDQoJCQl7DQoJCQkJJHJlcXVpcmVVcGRhdGVbJGNvbHVtbl0gPSBbDQoJCQkJCSdjb2x1bW4nID0+ICRjb2x1bW4sDQoJCQkJCSdjdXJyZW50JyA9PiAkY3VycmVudC0+VHlwZSwNCgkJCQkJJ2V4cGVjdGVkJyA9PiAkZXhwZWN0ZWRbJ3R5cGUnXQ0KCQkJCV07DQoJCQl9DQoJCX0NCg0KCQlpZiAoIWVtcHR5KCRyZXF1aXJlVXBkYXRlKSkNCgkJew0KCQkJJHRoaXMtPnVwZGF0ZUNvbHVtbnNEYXRhVHlwZSgkdGFibGUsICRyZXF1aXJlVXBkYXRlKTsNCgkJfQ0KCX0NCg0KCS8qKg0KCSAqIEdlbmVyYXRlcyBhIFNRTCBzbmlwcGV0IGZvciBkZWZpbmluZyBhIHRhYmxlIGNvbHVtbiwgaW5jb3Jwb3JhdGluZyBjb2x1bW4gdHlwZSwNCgkgKiAgICBkZWZhdWx0IHZhbHVlLCBudWxsYWJpbGl0eSwgYW5kIGF1dG8taW5jcmVtZW50IHByb3BlcnRpZXMuDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICR0YWJsZSBUaGUgdGFibGUgbmFtZSB0byBiZSB1c2VkLg0KCSAqIEBwYXJhbSBzdHJpbmcgJGZpZWxkIFRoZSBmaWVsZCBuYW1lIGluIHRoZSB0YWJsZSB0byBnZW5lcmF0ZSBTUUwgZm9yLg0KCSAqDQoJICogQHJldHVybiBzdHJpbmd8bnVsbCBUaGUgU1FMIHNuaXBwZXQgZm9yIHRoZSBjb2x1bW4gZGVmaW5pdGlvbi4NCgkgKiBAc2luY2UgMy4yLjENCgkgKiBAdGhyb3dzIFxFeGNlcHRpb24gSWYgdGhlIHNjaGVtYSBkZXRhaWxzIGNhbm5vdCBiZSByZXRyaWV2ZWQgb3IgdGhlIFNRTCBzdGF0ZW1lbnQgY2Fubm90IGJlIGNvbnN0cnVjdGVkIHByb3Blcmx5Lg0KCSAqLw0KCXByb3RlY3RlZCBmdW5jdGlvbiBnZXRDb2x1bW5EZWZpbml0aW9uKHN0cmluZyAkdGFibGUsIHN0cmluZyAkZmllbGQpOiA/c3RyaW5nDQoJew0KCQl0cnkgew0KCQkJLy8gUmV0cmlldmUgdGhlIGRhdGFiYXNlIHNjaGVtYSBkZXRhaWxzIGZvciB0aGUgc3BlY2lmaWVkIHRhYmxlIGFuZCBmaWVsZA0KCQkJaWYgKCgkZGIgPSAkdGhpcy0+dGFibGUtPmdldCgkdGFibGUsICRmaWVsZCwgJ2RiJykpID09PSBudWxsKQ0KCQkJew0KCQkJCXJldHVybiBudWxsOw0KCQkJfQ0KDQoJCQkvLyBQcmVwYXJlIHRoZSBjb2x1bW4gbmFtZQ0KCQkJJGNvbHVtbl9uYW1lID0gJHRoaXMtPmRiLT5xdW90ZU5hbWUoJGZpZWxkKTsNCgkJCSRkYlsnbmFtZSddID0gJGZpZWxkOw0KDQoJCQkvLyBQcmVwYXJlIHRoZSB0eXBlIGFuZCBkZWZhdWx0IHZhbHVlIFNRTCBzdGF0ZW1lbnQNCgkJCSR0eXBlID0gJGRiWyd0eXBlJ10gPz8gICdURVhUJzsNCgkJCSRkYl9kZWZhdWx0ID0gaXNzZXQoJGRiWydkZWZhdWx0J10pID8gJGRiWydkZWZhdWx0J10gOiBudWxsOw0KCQkJJGRlZmF1bHQgPSAkdGhpcy0+Z2V0RGVmYXVsdFZhbHVlKCR0eXBlLCAkZGJfZGVmYXVsdCk7DQoNCgkJCS8vIFByZXBhcmUgdGhlIG51bGwgc3dpdGNoLCBhbmQgYXV0byBpbmNyZW1lbnQgc3RhdGVtZW50DQoJCQkkbnVsbF9zd2l0Y2ggPSAhZW1wdHkoJGRiWydudWxsX3N3aXRjaCddKSA/ICcgJyAuICRkYlsnbnVsbF9zd2l0Y2gnXSA6ICcnOw0KDQoJCQkvLyBQcmVwYXJlIHRoZSBhdXRvIGluY3JlbWVudCBzdGF0ZW1lbnQNCgkJCSRhdXRvX2luY3JlbWVudCA9ICFlbXB0eSgkZGJbJ2F1dG9faW5jcmVtZW50J10pID8gIiBBVVRPX0lOQ1JFTUVOVCIgOiAnJzsNCg0KCQkJLy8gSWYgdGhlcmUncyBhIGRlZmF1bHQgdmFsdWUsIHRoZSBjb2x1bW4gc2hvdWxkIG5vdCBiZSBudWxsYWJsZQ0KCQkJaWYgKCRkZWZhdWx0ICE9PSAnJykNCgkJCXsNCgkJCQkkbnVsbF9zd2l0Y2ggPSAnJzsNCgkJCX0NCg0KCQkJJHRoaXMtPnNldEtleXMoJGRiKTsNCg0KCQkJLy8gQXNzZW1ibGUgdGhlIFNRTCBzbmlwcGV0IGZvciB0aGUgY29sdW1uIGRlZmluaXRpb24NCgkJCXJldHVybiAieyRjb2x1bW5fbmFtZX0geyR0eXBlfXskbnVsbF9zd2l0Y2h9eyRhdXRvX2luY3JlbWVudH17JGRlZmF1bHR9IjsNCgkJfSBjYXRjaCAoXEV4Y2VwdGlvbiAkZSkgew0KCQkJdGhyb3cgbmV3IFxFeGNlcHRpb24oIkVycm9yOiBmYWlsZWQgdG8gZ2VuZXJhdGUgY29sdW1uIGRlZmluaXRpb24gZm9yICgkdGFibGUuJGZpZWxkKS4gIiAuICRlLT5nZXRNZXNzYWdlKCkpOw0KCQl9DQoJfQ0KDQoJLyoqDQoJICogQ2hlY2sgYW5kIFVwZGF0ZSB0aGUgZGVmYXVsdCB2YWx1ZXMgaWYgbmVlZGVkLCBpbmNsdWRpbmcgZXhpc3RpbmcgZGF0YSBhZGp1c3RtZW50cw0KCSAqDQoJICogQHBhcmFtIHN0cmluZyAkdGFibGUgICBUaGUgdGFibGUgdG8gdXBkYXRlLg0KCSAqIEBwYXJhbSBzdHJpbmcgJGNvbHVtbiAgVGhlIGNvbHVtbi9maWVsZCB0byBjaGVjay4NCgkgKg0KCSAqIEByZXR1cm4gYm9vbA0KCSAqIEBzaW5jZSAgMy4yLjENCgkgKi8NCglwcm90ZWN0ZWQgZnVuY3Rpb24gY2hlY2tEZWZhdWx0KHN0cmluZyAkdGFibGUsIHN0cmluZyAkY29sdW1uKTogYm9vbA0KCXsNCgkJLy8gUmV0cmlldmUgdGhlIGV4cGVjdGVkIGNvbHVtbiBjb25maWd1cmF0aW9uDQoJCSRleHBlY3RlZCA9ICR0aGlzLT50YWJsZS0+Z2V0KCR0YWJsZSwgJGNvbHVtbiwgJ2RiJyk7DQoNCgkJLy8gU2tpcCB1cGRhdGVzIGlmIHRoZSBjb2x1bW4gaXMgYXV0b19pbmNyZW1lbnQNCgkJaWYgKGlzc2V0KCRleHBlY3RlZFsnYXV0b19pbmNyZW1lbnQnXSkgJiYgJGV4cGVjdGVkWydhdXRvX2luY3JlbWVudCddID09PSB0cnVlKQ0KCQl7DQoJCQlyZXR1cm4gZmFsc2U7DQoJCX0NCg0KCQkvLyBSZXRyaWV2ZSB0aGUgY3VycmVudCBjb2x1bW4gY29uZmlndXJhdGlvbg0KCQkkY3VycmVudCA9ICR0aGlzLT5jb2x1bW5zWyRjb2x1bW5dOw0KDQoJCS8vIERldGVybWluZSB0aGUgbmV3IGRlZmF1bHQgdmFsdWUgYmFzZWQgb24gdGhlIGV4cGVjdGVkIHNldHRpbmdzDQoJCSR0eXBlID0gJGV4cGVjdGVkWyd0eXBlJ10gPz8gICdURVhUJzsNCgkJJGRiX2RlZmF1bHQgPSBpc3NldCgkZXhwZWN0ZWRbJ2RlZmF1bHQnXSkgPyAkZXhwZWN0ZWRbJ2RlZmF1bHQnXSA6IG51bGw7DQoJCSRuZXdEZWZhdWx0ID0gJHRoaXMtPmdldERlZmF1bHRWYWx1ZSgkdHlwZSwgJGRiX2RlZmF1bHQsIHRydWUpOw0KDQoJCS8vIEZpcnN0LCBhZGp1c3QgZXhpc3Rpbmcgcm93cyB0byBjb25mb3JtIHRvIHRoZSBuZXcgZGVmYXVsdCBpZiBuZWNlc3NhcnkNCgkJaWYgKGlzX251bWVyaWMoJG5ld0RlZmF1bHQpICYmICR0aGlzLT5hZGp1c3RFeGlzdGluZ0RlZmF1bHRzKCR0YWJsZSwgJGNvbHVtbiwgJGN1cnJlbnQtPkRlZmF1bHQsICRuZXdEZWZhdWx0KSkNCgkJew0KCQkJJHRoaXMtPnN1Y2Nlc3NbXSA9ICJTdWNjZXNzOiB1cGRhdGVkIHRoZSAoJGNvbHVtbikgZGVmYXVsdHMgaW4gJHRhYmxlIHRhYmxlLiI7DQoNCgkJCXJldHVybiB0cnVlOw0KCQl9DQoNCgkJaWYgKGlzc2V0KCRleHBlY3RlZFsnZGVmYXVsdCddKSAmJiBpc19zdHJpbmcoJGV4cGVjdGVkWydkZWZhdWx0J10pICYmIHN0cnRvdXBwZXIoJGV4cGVjdGVkWydkZWZhdWx0J10pID09PSAnRU1QVFknICYmDQoJCQlpc3NldCgkY3VycmVudC0+RGVmYXVsdCkgJiYgaXNfc3RyaW5nKCRjdXJyZW50LT5EZWZhdWx0KSAmJiBzdHJwb3MoJGN1cnJlbnQtPkRlZmF1bHQsICdFTVBUWScpICE9PSBmYWxzZSkNCgkJew0KCQkJcmV0dXJuIHRydWU7IC8vIGxpdHRsZSBmaXgNCgkJfQ0KDQoJCXJldHVybiBmYWxzZTsNCgl9DQoNCgkvKioNCgkgKiBDaGVjayBhbmQgVXBkYXRlIHRoZSBudWxsIHZhbHVlIGlmIG5lZWRlZCwgaW5jbHVkaW5nIGV4aXN0aW5nIGRhdGEgYWRqdXN0bWVudHMNCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmcgJHRhYmxlICAgVGhlIHRhYmxlIHRvIHVwZGF0ZS4NCgkgKiBAcGFyYW0gc3RyaW5nICRjb2x1bW4gIFRoZSBjb2x1bW4vZmllbGQgdG8gY2hlY2suDQoJICoNCgkgKiBAcmV0dXJuIGJvb2wNCgkgKiBAc2luY2UgIDMuMi4yDQoJICovDQoJcHJvdGVjdGVkIGZ1bmN0aW9uIGNoZWNrTnVsbChzdHJpbmcgJHRhYmxlLCBzdHJpbmcgJGNvbHVtbik6IGJvb2wNCgl7DQoJCS8vIFJldHJpZXZlIHRoZSBleHBlY3RlZCBjb2x1bW4gY29uZmlndXJhdGlvbg0KCQkkZXhwZWN0ZWQgPSAkdGhpcy0+dGFibGUtPmdldCgkdGFibGUsICRjb2x1bW4sICdkYicpOw0KDQoJCS8vIFNraXAgdXBkYXRlcyBpZiB0aGUgbnVsbF9zd2l0Y2ggaXMgbm90IHNldA0KCQlpZiAoIWlzc2V0KCRleHBlY3RlZFsnbnVsbF9zd2l0Y2gnXSkpDQoJCXsNCgkJCXJldHVybiBmYWxzZTsNCgkJfQ0KDQoJCS8vIFJldHJpZXZlIHRoZSBjdXJyZW50IGNvbHVtbiBjb25maWd1cmF0aW9uDQoJCSRjdXJyZW50ID0gJHRoaXMtPmNvbHVtbnNbJGNvbHVtbl07DQoNCgkJLy8gU2tpcCB1cGRhdGVzIGlmIHRoZSBOdWxsIGlzIG5vdCBzZXQNCgkJaWYgKCFpc3NldCgkY3VycmVudC0+TnVsbCkpDQoJCXsNCgkJCXJldHVybiBmYWxzZTsNCgkJfQ0KDQoJCS8vIHNldCB0aGUgZXhwZWN0ZWQgTlVMTA0KCQkkZXhwZWN0ZWRfbnVsbCA9ICdOTyc7DQoJCWlmICgkZXhwZWN0ZWRbJ251bGxfc3dpdGNoJ10gPT09ICJOVUxMIikNCgkJew0KCQkJJGV4cGVjdGVkX251bGwgPSAnWUVTJzsNCgkJfQ0KDQoJCS8vIHNldCB0aGUgY3VycmVudCBOVUxMDQoJCSRjdXJyZW50X251bGwgPSAkY3VycmVudC0+TnVsbDsNCg0KCQkvLyBQcmVwYXJlIHRoZSB0eXBlIGFuZCBkZWZhdWx0IHZhbHVlIFNRTCBzdGF0ZW1lbnQNCgkJJHR5cGUgPSAkZXhwZWN0ZWRbJ3R5cGUnXSA/PyAgJ1RFWFQnOw0KCQkkZGJfZGVmYXVsdCA9IGlzc2V0KCRleHBlY3RlZFsnZGVmYXVsdCddKSA/ICRleHBlY3RlZFsnZGVmYXVsdCddIDogbnVsbDsNCgkJJGRlZmF1bHQgPSAkdGhpcy0+Z2V0RGVmYXVsdFZhbHVlKCR0eXBlLCAkZGJfZGVmYXVsdCwgdHJ1ZSk7DQoNCgkJLy8gY2hlY2sgdGhlIG51bGwgdmFsdWVzIGlmIHRoZXkgbWF0Y2gNCgkJaWYgKCRjdXJyZW50X251bGwgIT09ICRleHBlY3RlZF9udWxsICYmICRjdXJyZW50X251bGwgPT09ICdOTycgJiYgZW1wdHkoJGRlZmF1bHQpKQ0KCQl7DQoJCQkkdGhpcy0+c3VjY2Vzc1tdID0gIlN1Y2Nlc3M6IHVwZGF0ZWQgdGhlICgkY29sdW1uKSBudWxsIHN0YXRlIGluICR0YWJsZSB0YWJsZS4iOw0KDQoJCQlyZXR1cm4gdHJ1ZTsNCgkJfQ0KDQoJCXJldHVybiBmYWxzZTsNCgl9DQoNCgkvKioNCgkgKiBVcGRhdGUgdGhlIGRhdGEgdHlwZSBvZiB0aGUgZ2l2ZW4gZmllbGRzLg0KCSAqDQoJICogQHBhcmFtIHN0cmluZyAkdGFibGUgICBUaGUgdGFibGUgdG8gdXBkYXRlLg0KCSAqIEBwYXJhbSBhcnJheSAgJGNvbHVtbnMgTGlzdCBvZiBjb2x1bW5zL2ZpZWxkcyB0aGF0IG11c3QgYmUgdXBkYXRlZC4NCgkgKg0KCSAqIEByZXR1cm4gdm9pZA0KCSAqIEBzaW5jZSAgMy4yLjENCgkgKi8NCglwcm90ZWN0ZWQgZnVuY3Rpb24gdXBkYXRlQ29sdW1uc0RhdGFUeXBlKHN0cmluZyAkdGFibGUsIGFycmF5ICRjb2x1bW5zKTogdm9pZA0KCXsNCgkJJGFsdGVyVGFibGUgPSAnQUxURVIgVEFCTEUgJyAuICR0aGlzLT5kYi0+cXVvdGVOYW1lKCR0aGlzLT5nZXRUYWJsZSgkdGFibGUpKTsNCgkJZm9yZWFjaCAoJGNvbHVtbnMgYXMgJGNvbHVtbiA9PiAkdHlwZXMpDQoJCXsNCgkJCWlmICgoJGRlZiA9ICR0aGlzLT5nZXRDb2x1bW5EZWZpbml0aW9uKCR0YWJsZSwgJGNvbHVtbikpID09PSBudWxsKQ0KCQkJew0KCQkJCWNvbnRpbnVlOw0KCQkJfQ0KDQoJCQkkZGJGaWVsZCA9ICR0aGlzLT5kYi0+cXVvdGVOYW1lKCRjb2x1bW4pOw0KCQkJJGFsdGVyUXVlcnkgPSAiJGFsdGVyVGFibGUgQ0hBTkdFICRkYkZpZWxkICIuICRkZWY7DQoNCgkJCWlmICgkdGhpcy0+dXBkYXRlQ29sdW1uRGF0YVR5cGUoJGFsdGVyUXVlcnksICR0YWJsZSwgJGNvbHVtbikpDQoJCQl7DQoJCQkJJGN1cnJlbnQgPSAkdHlwZXNbJ2N1cnJlbnQnXSA/PyAnZXJyb3InOw0KCQkJCSRleHBlY3RlZCA9ICR0eXBlc1snZXhwZWN0ZWQnXSA/PyAnZXJyb3InOw0KCQkJCSR0aGlzLT5zdWNjZXNzW10gPSAiU3VjY2VzczogdXBkYXRlZCAoJGNvbHVtbikgY29sdW1uIGRhdGF0eXBlICRjdXJyZW50IHRvICRleHBlY3RlZCBpbiAkdGFibGUgdGFibGUuIjsNCgkJCX0NCgkJfQ0KCX0NCg0KCS8qKg0KCSAqIEFkZCB0aGUgY29tcG9uZW50IG5hbWUgdG8gZ2V0IHRoZSBmdWxsIHRhYmxlIG5hbWUuDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICR0YWJsZSBUaGUgdGFibGUgbmFtZS4NCgkgKg0KCSAqIEByZXR1cm4gdm9pZA0KCSAqIEBzaW5jZSAgMy4yLjENCgkgKi8NCglwcm90ZWN0ZWQgZnVuY3Rpb24gZ2V0VGFibGUoc3RyaW5nICR0YWJsZSk6IHN0cmluZw0KCXsNCgkJcmV0dXJuICR0aGlzLT5wcmVmaXggLiAnXycgLiAkdGFibGU7DQoJfQ0KDQoJLyoqDQoJICogRGV0ZXJtaW5lcyBpZiB0aGUgY2hhbmdlIGluIGRhdGEgdHlwZSBiZXR3ZWVuIHR3byBkZWZpbml0aW9ucyBpcyBzaWduaWZpY2FudC4NCgkgKg0KCSAqIFRoaXMgZnVuY3Rpb24gY2hlY2tzIGlmIHRoZXJlJ3MgYSBzaWduaWZpY2FudCBkaWZmZXJlbmNlIGJldHdlZW4gdGhlIGN1cnJlbnQNCgkgKiBkYXRhIHR5cGUgYW5kIHRoZSBleHBlY3RlZCBkYXRhIHR5cGUgdGhhdCB3b3VsZCByZXF1aXJlIHVwZGF0aW5nIHRoZSBkYXRhYmFzZSBzY2hlbWEuDQoJICogSXQgaWdub3JlcyBkaXNwbGF5IHdpZHRoIGZvciBudW1lcmljIHR5cGVzIHdoZXJlIE15U1FMIGNvbnNpZGVycyB0aGVzZSBhdHRyaWJ1dGVzDQoJICogaXJyZWxldmFudCBmb3Igc3RvcmFnZSBidXQgY29uc2lkZXJzIHNpemUgYW5kIG90aGVyIG1vZGlmaWVycyBmb3IgdHlwZXMgbGlrZSBWQVJDSEFSLg0KCSAqDQoJICogQHBhcmFtIHN0cmluZyAgJGN1cnJlbnRUeXBlICAgIFRoZSBjdXJyZW50IGRhdGEgdHlwZSBmcm9tIHRoZSBkYXRhYmFzZSBzY2hlbWEuDQoJICogQHBhcmFtIHN0cmluZyAgJGV4cGVjdGVkVHlwZSAgIFRoZSBleHBlY3RlZCBkYXRhIHR5cGUgdG8gdmFsaWRhdGUgYWdhaW5zdC4NCgkgKg0KCSAqIEByZXR1cm4gYm9vbCAgUmV0dXJucyB0cnVlIGlmIHRoZSBkYXRhIHR5cGUgY2hhbmdlIGlzIHNpZ25pZmljYW50LCBvdGhlcndpc2UgZmFsc2UuDQoJICogQHNpbmNlICAzLjIuMQ0KCSAqLw0KCXByb3RlY3RlZCBmdW5jdGlvbiBpc0RhdGFUeXBlQ2hhbmdlU2lnbmlmaWNhbnQoc3RyaW5nICRjdXJyZW50VHlwZSwgc3RyaW5nICRleHBlY3RlZFR5cGUpOiBib29sDQoJew0KCQkvLyBOb3JtYWxpemUgYm90aCBpbnB1dCB0eXBlcyB0byBsb3dlcmNhc2UgYW5kIHJlbW92ZSBleHRyYSBzcGFjZXMgZm9yIGNvbXBhcmlzb24NCgkJJGN1cnJlbnRUeXBlID0gc3RydG9sb3dlcih0cmltKCRjdXJyZW50VHlwZSkpOw0KCQkkZXhwZWN0ZWRUeXBlID0gc3RydG9sb3dlcih0cmltKCRleHBlY3RlZFR5cGUpKTsNCg0KCQkvLyBSZWdleCB0byBleHRyYWN0IHRoZSBiYXNlIGRhdGEgdHlwZSBhbmQgbnVtZXJpYyBwYXJhbWV0ZXJzIChzaXplIGFuZCBwcmVjaXNpb24pIHdpdGggbmFtZWQgZ3JvdXBzDQoJCSR0eXBlUGF0dGVybiA9ICcvXig/PGRhdGF0eXBlPlx3KykoXCgoPzxwYXJhbXM+XHMqXGQrXHMqKCxccypcZCtccyopPylcKSk/Lyc7DQoNCgkJLy8gTWF0Y2ggdHlwZXMgYW5kIHBhcmFtZXRlcnMNCgkJcHJlZ19tYXRjaCgkdHlwZVBhdHRlcm4sICRjdXJyZW50VHlwZSwgJGN1cnJlbnRNYXRjaGVzKTsNCgkJcHJlZ19tYXRjaCgkdHlwZVBhdHRlcm4sICRleHBlY3RlZFR5cGUsICRleHBlY3RlZE1hdGNoZXMpOw0KDQoJCS8vIENvbXBhcmUgYmFzZSB0eXBlcyAoZGF0YXR5cGUgd2l0aG91dCBzaXplL3ByZWNpc2lvbikNCgkJaWYgKCRjdXJyZW50TWF0Y2hlc1snZGF0YXR5cGUnXSAhPT0gJGV4cGVjdGVkTWF0Y2hlc1snZGF0YXR5cGUnXSkNCgkJew0KCQkJcmV0dXJuIHRydWU7IC8vIEJhc2UgdHlwZXMgZGlmZmVyDQoJCX0NCg0KCQkvLyBEZWZpbmUgbnVtZXJpYyB0eXBlcyB3aGVyZSBkaXNwbGF5IHdpZHRoIGlzIGlycmVsZXZhbnQgYnV0IHByZWNpc2lvbiAoZm9yIERFQ0lNQUwpIG1hdHRlcnMNCgkJJHNpemVJcnJlbGV2YW50VHlwZXMgPSBbDQoJCQknaW50JywgJ3RpbnlpbnQnLCAnc21hbGxpbnQnLCAnbWVkaXVtaW50JywgJ2JpZ2ludCcsIA0KCQkJJ2Zsb2F0JywgJ2RvdWJsZScgLy8gTnVtZXJpYyB0eXBlcyB3aGVyZSBkaXNwbGF5IHdpZHRoIGlzIGlycmVsZXZhbnQNCgkJXTsNCg0KCQkvLyBIYW5kbGUgREVDSU1BTCBhbmQgTlVNRVJJQyB0eXBlcyBleHBsaWNpdGx5IChwcmVjaXNpb24gYW5kIHNjYWxlIGFyZSByZWxldmFudCkNCgkJaWYgKGluX2FycmF5KCRjdXJyZW50TWF0Y2hlc1snZGF0YXR5cGUnXSwgWydkZWNpbWFsJywgJ251bWVyaWMnXSkpDQoJCXsNCgkJCS8vIEV4dHJhY3QgcHJlY2lzaW9uIGFuZCBzY2FsZSAoaWYgcHJlc2VudCkNCgkJCWlmICgkY3VycmVudE1hdGNoZXNbJ3BhcmFtcyddICE9PSAkZXhwZWN0ZWRNYXRjaGVzWydwYXJhbXMnXSkNCgkJCXsNCgkJCQlyZXR1cm4gdHJ1ZTsgLy8gUHJlY2lzaW9uIG9yIHNjYWxlIGhhcyBjaGFuZ2VkDQoJCQl9DQoJCX0NCg0KCQkvLyBDaGVjayBpZiB0aGUgdHlwZSBpcyBpbiB0aGUgbGlzdCBvZiBzaXplLWlycmVsZXZhbnQgdHlwZXMNCgkJaWYgKGluX2FycmF5KCRjdXJyZW50TWF0Y2hlc1snZGF0YXR5cGUnXSwgJHNpemVJcnJlbGV2YW50VHlwZXMpKQ0KCQl7DQoJCQkvLyBSZW1vdmUgaXJyZWxldmFudCBwYXJ0cyBsaWtlIGRpc3BsYXkgd2lkdGggYW5kICJ1bnNpZ25lZCIgZm9yIHNpemUtaXJyZWxldmFudCB0eXBlcywgaW5jbHVkaW5nIGV4dHJhIHNwYWNlcw0KCQkJJGN1cnJlbnRCYXNlVHlwZSA9IHByZWdfcmVwbGFjZSgnL1xzKlwoXHMqXGQrKFxzKixccypcZCspP1xzKlwpXHMqfFxzKnVuc2lnbmVkXHMqLycsICcnLCAkY3VycmVudFR5cGUpOw0KCQkJJGV4cGVjdGVkQmFzZVR5cGUgPSBwcmVnX3JlcGxhY2UoJy9ccypcKFxzKlxkKyhccyosXHMqXGQrKT9ccypcKVxzKnxccyp1bnNpZ25lZFxzKi8nLCAnJywgJGV4cGVjdGVkVHlwZSk7DQoNCgkJCS8vIENvbXBhcmUgYmFzZSB0eXBlcyBhZnRlciBub3JtYWxpemF0aW9uDQoJCQlyZXR1cm4gJGN1cnJlbnRCYXNlVHlwZSAhPT0gJGV4cGVjdGVkQmFzZVR5cGU7DQoJCX0NCg0KCQkvLyBGb3IgdHlwZXMgd2hlcmUgc2l6ZSBpcyByZWxldmFudCAoZS5nLiwgVkFSQ0hBUiwgQ0hBUiwgZXRjLiksIGNvbXBhcmUgdGhlIGZ1bGwgZGVmaW5pdGlvbnMNCgkJLy8gTm9ybWFsaXplIHNpemUgcGFyYW1ldGVycyBieSByZW1vdmluZyBleHRyYSBzcGFjZXMgYXJvdW5kIGNvbW1hcywgZS5nLiwgImRlY2ltYWwoNSAsIDIpIiAtPiAiZGVjaW1hbCg1LDIpIg0KCQkkbm9ybWFsaXplZEN1cnJlbnRUeXBlID0gcHJlZ19yZXBsYWNlKCcvXHMqLFxzKi8nLCAnLCcsICRjdXJyZW50VHlwZSk7DQoJCSRub3JtYWxpemVkRXhwZWN0ZWRUeXBlID0gcHJlZ19yZXBsYWNlKCcvXHMqLFxzKi8nLCAnLCcsICRleHBlY3RlZFR5cGUpOw0KDQoJCS8vIFBlcmZvcm0gYSBmdWxsIGNvbXBhcmlzb24gZm9yIHR5cGVzIHdoZXJlIHNpemUgbWF0dGVycw0KCQlyZXR1cm4gJG5vcm1hbGl6ZWRDdXJyZW50VHlwZSAhPT0gJG5vcm1hbGl6ZWRFeHBlY3RlZFR5cGU7DQoJfQ0KDQoJLyoqDQoJICogVXBkYXRlcyBleGlzdGluZyByb3dzIGluIGEgY29sdW1uIHRvIGEgbmV3IGRlZmF1bHQgdmFsdWUNCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmcgJHRhYmxlICAgICAgICAgICBUaGUgdGFibGUgdG8gdXBkYXRlLg0KCSAqIEBwYXJhbSBzdHJpbmcgJGNvbHVtbiAgICAgICAgICBUaGUgY29sdW1uIHRvIHVwZGF0ZS4NCgkgKiBAcGFyYW0gbWl4ZWQgICRjdXJyZW50RGVmYXVsdCAgQ3VycmVudCBkZWZhdWx0IHZhbHVlLg0KCSAqIEBwYXJhbSBtaXhlZCAgJG5ld0RlZmF1bHQgICAgICBUaGUgbmV3IGRlZmF1bHQgdmFsdWUgdG8gYmUgc2V0Lg0KCSAqDQoJICogQHJldHVybiBib29sIFRydWUgaWYgdXBkYXRlIHdhcyBzdWNjZXNzZnVsLCBmYWxzZSBpZiBubyB1cGRhdGUgd2FzIG5lZWRlZC4NCgkgKiBAc2luY2UgIDMuMi4xDQoJICogQHRocm93cyBcRXhjZXB0aW9uIElmIHRoZXJlIGlzIGFuIGVycm9yIHVwZGF0aW5nIGNvbHVtbiBkZWZhdWx0cy4NCgkgKi8NCglwcm90ZWN0ZWQgZnVuY3Rpb24gYWRqdXN0RXhpc3RpbmdEZWZhdWx0cyhzdHJpbmcgJHRhYmxlLCBzdHJpbmcgJGNvbHVtbiwgJGN1cnJlbnREZWZhdWx0LCAkbmV3RGVmYXVsdCk6IGJvb2wNCgl7DQoJCS8vIERldGVybWluZSBpZiBhZGp1c3RtZW50IGlzIG5lZWRlZCBiYXNlZCBvbiBuZXcgYW5kIGN1cnJlbnQgZGVmYXVsdHMNCgkJaWYgKCRuZXdEZWZhdWx0ICE9PSAkY3VycmVudERlZmF1bHQpDQoJCXsNCgkJCXRyeSB7DQoJCQkJLy8gRm9ybWF0IHRoZSBuZXcgZGVmYXVsdCBmb3IgU1FMIHVzZQ0KCQkJCSRzcWxEZWZhdWx0ID0gJHRoaXMtPmRiLT5xdW90ZSgkbmV3RGVmYXVsdCk7DQoNCgkJCQkkdXBkYXRlVGFibGUgPSAnVVBEQVRFICcgLiAkdGhpcy0+ZGItPnF1b3RlTmFtZSgkdGhpcy0+Z2V0VGFibGUoJHRhYmxlKSk7DQoJCQkJJGRiRmllbGQgPSAkdGhpcy0+ZGItPnF1b3RlTmFtZSgkY29sdW1uKTsNCg0KCQkJCWlmIChpc3NldCgkdGhpcy0+Y29sdW1uc1skY29sdW1uXSkpDQoJCQkJew0KCQkJCQkkZmllbGRUeXBlID0gc3RydG91cHBlcigkdGhpcy0+Y29sdW1uc1skY29sdW1uXS0+VHlwZSk7DQoNCgkJCQkJLy8gSWYgdGhlIGZpZWxkIGlzIG51bWVyaWMsIGF2b2lkIGNvbXBhcmluZyB3aXRoIGVtcHR5IHN0cmluZw0KCQkJCQlpZiAoc3RycG9zKCRmaWVsZFR5cGUsICdJTlQnKSAhPT0gZmFsc2UgfHwNCgkJCQkJCXN0cnBvcygkZmllbGRUeXBlLCAnRkxPQVQnKSAhPT0gZmFsc2UgfHwNCgkJCQkJCXN0cnBvcygkZmllbGRUeXBlLCAnRE9VQkxFJykgIT09IGZhbHNlIHx8DQoJCQkJCQlzdHJwb3MoJGZpZWxkVHlwZSwgJ0RFQ0lNQUwnKSAhPT0gZmFsc2UpDQoJCQkJCXsNCgkJCQkJCSR3aGVyZUNvbmRpdGlvbiA9ICIkZGJGaWVsZCBJUyBOVUxMIE9SICRkYkZpZWxkID0gMCI7DQoJCQkJCX0NCgkJCQkJZWxzZQ0KCQkJCQl7DQoJCQkJCQkvLyBEZWZhdWx0IGNvbmRpdGlvbiBmb3Igbm9uLW51bWVyaWMgZmllbGRzDQoJCQkJCQkkd2hlcmVDb25kaXRpb24gPSAiJGRiRmllbGQgSVMgTlVMTCBPUiAkZGJGaWVsZCA9ICcnIjsNCgkJCQkJfQ0KDQoJCQkJCS8vIFVwZGF0ZSBTUUwgdG8gc2V0IG5ldyBkZWZhdWx0IG9uIGV4aXN0aW5nIHJvd3Mgd2hlcmUgdGhlIGRlZmF1bHQgaXMgY3VycmVudGx5IHRoZSBvbGQgZGVmYXVsdA0KCQkJCQkkc3FsID0gJHVwZGF0ZVRhYmxlIC4gIiBTRVQgJGRiRmllbGQgPSAkc3FsRGVmYXVsdCBXSEVSRSAkd2hlcmVDb25kaXRpb24iOw0KDQoJCQkJCS8vIEV4ZWN1dGUgdGhlIHVwZGF0ZQ0KCQkJCQkkdGhpcy0+ZGItPnNldFF1ZXJ5KCRzcWwpOw0KCQkJCQlyZXR1cm4gJHRoaXMtPmRiLT5leGVjdXRlKCk7DQoJCQkJfQ0KCQkJCWVsc2UNCgkJCQl7DQoJCQkJCXRocm93IG5ldyBcRXhjZXB0aW9uKCJFcnJvcjogQ29sdW1uICRjb2x1bW4gZG9lcyBub3QgZXhpc3QgaW4gdGFibGUgJHRhYmxlLiIpOw0KCQkJCX0NCgkJCX0NCgkJCWNhdGNoIChcRXhjZXB0aW9uICRlKQ0KCQkJew0KCQkJCXRocm93IG5ldyBcRXhjZXB0aW9uKCJFcnJvcjogZmFpbGVkIHRvIHVwZGF0ZSAoJGNvbHVtbikgY29sdW1uIGRlZmF1bHRzIGluICR0YWJsZSB0YWJsZS4gIiAuICRlLT5nZXRNZXNzYWdlKCkpOw0KCQkJfQ0KCQl9DQoJCXJldHVybiBmYWxzZTsNCgl9DQoNCgkvKioNCgkgKiBVcGRhdGUgdGhlIGRhdGEgdHlwZSBvZiB0aGUgZ2l2ZW4gZmllbGQuDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICR1cGRhdGVTdHJpbmcgIFRoZSBTUUwgY29tbWFuZCB0byB1cGRhdGUgdGhlIGNvbHVtbiBkYXRhIHR5cGUNCgkgKiBAcGFyYW0gc3RyaW5nICR0YWJsZSAgICAgICAgIFRoZSB0YWJsZSB0byB1cGRhdGUuDQoJICogQHBhcmFtIHN0cmluZyAkZmllbGQgICAgICAgICBDb2x1bW4vZmllbGQgdGhhdCBtdXN0IGJlIHVwZGF0ZWQuDQoJICoNCgkgKiBAcmV0dXJuIGJvb2wgIHRydWUgb24gc3VjY2VzDQoJICogQHNpbmNlICAzLjIuMQ0KCSAqIEB0aHJvd3MgXEV4Y2VwdGlvbiBJZiB0aGVyZSBpcyBhbiBlcnJvciBhZGRpbmcgY29sdW1ucy4NCgkgKi8NCglwcm90ZWN0ZWQgZnVuY3Rpb24gdXBkYXRlQ29sdW1uRGF0YVR5cGUoc3RyaW5nICR1cGRhdGVTdHJpbmcsIHN0cmluZyAkdGFibGUsIHN0cmluZyAkZmllbGQpOiBib29sDQoJew0KCQl0cnkgew0KCQkJJHRoaXMtPmRiLT5zZXRRdWVyeSgkdXBkYXRlU3RyaW5nKTsNCgkJCXJldHVybiAkdGhpcy0+ZGItPmV4ZWN1dGUoKTsNCgkJfSBjYXRjaCAoXEV4Y2VwdGlvbiAkZSkgew0KCQkJdGhyb3cgbmV3IFxFeGNlcHRpb24oIkVycm9yOiBmYWlsZWQgdG8gdXBkYXRlIHRoZSBkYXRhdHlwZSBvZiAoJGZpZWxkKSBjb2x1bW4gaW4gJHRhYmxlIHRhYmxlLiAiIC4gJGUtPmdldE1lc3NhZ2UoKSk7DQoJCX0NCgl9DQoNCgkvKioNCgkgKiBLZXkgYWxsIG5lZWRlZCBrZXlzIGZvciB0aGlzIHRhYmxlDQoJICoNCgkgKiBAcmV0dXJuIHN0cmluZyBvZiBrZXlzDQoJICogQHNpbmNlICAzLjIuMQ0KCSAqLw0KCXByb3RlY3RlZCBmdW5jdGlvbiBnZXRUYWJsZUtleXMoKTogc3RyaW5nDQoJew0KCQkka2V5cyA9IFtdOw0KCQkka2V5c1tdID0gJ1BSSU1BUlkgS0VZICAoYGlkYCknOyAvLyBUT0RPICh3ZSBtYXkgd2FudCB0aGlzIHRvIGJlIGR5bmFtaWNseSBzZXQpDQoNCgkJaWYgKCFlbXB0eSgkdGhpcy0+dW5pcXVlS2V5cykpDQoJCXsNCgkJCSRrZXlzW10gPSBpbXBsb2RlKCcsICcsICR0aGlzLT51bmlxdWVLZXlzKTsNCgkJfQ0KDQoJCWlmICghZW1wdHkoJHRoaXMtPmtleXMpKQ0KCQl7DQoJCQkka2V5c1tdID0gaW1wbG9kZSgnLCAnLCAkdGhpcy0+a2V5cyk7DQoJCX0NCg0KCQlyZXR1cm4gaW1wbG9kZSgnLCAnLCAka2V5cyk7DQoJfQ0KDQoJLyoqDQoJICogRnVuY3Rpb24gdG8gc2V0IHRoZSB2aWV3IGtleXMNCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmcgJGNvbHVtbiBUaGUgZmllbGQgY29sdW1uIGRhdGFiYXNlIGFycmF5IHZhbHVlcw0KCSAqDQoJICogQHJldHVybiB2b2lkDQoJICogQHNpbmNlICAzLjIuMQ0KCSAqLw0KCXByb3RlY3RlZCBmdW5jdGlvbiBzZXRLZXlzKGFycmF5ICRjb2x1bW4pOiB2b2lkDQoJew0KCQkkdGhpcy0+c2V0VW5pcXVlS2V5KCRjb2x1bW4pOw0KCQkkdGhpcy0+c2V0S2V5KCRjb2x1bW4pOw0KCX0NCg0KCS8qKg0KCSAqIEZ1bmN0aW9uIHRvIHNldCB0aGUgdW5pcXVlIGtleQ0KCSAqDQoJICogQHBhcmFtIHN0cmluZyAkY29sdW1uIFRoZSBmaWVsZCBjb2x1bW4gZGF0YWJhc2UgYXJyYXkgdmFsdWVzDQoJICoNCgkgKiBAcmV0dXJuIHZvaWQNCgkgKiBAc2luY2UgIDMuMi4xDQoJICovDQoJcHJvdGVjdGVkIGZ1bmN0aW9uIHNldFVuaXF1ZUtleShhcnJheSAkY29sdW1uKTogdm9pZA0KCXsNCgkJaWYgKGlzc2V0KCRjb2x1bW5bJ3VuaXF1ZV9rZXknXSkgJiYgJGNvbHVtblsndW5pcXVlX2tleSddKQ0KCQl7DQoJCQkka2V5ID0gJGNvbHVtblsndW5pcXVlX2tleV9uYW1lJ10gPz8gJGNvbHVtblsnbmFtZSddOw0KCQkJJHRoaXMtPnVuaXF1ZUtleXNbXSA9ICJVTklRVUUgS0VZIGBpZHhfIiAuICRrZXkgLiAiYCAoYCIgLiAkY29sdW1uWyduYW1lJ10gLiAiYCkiOw0KCQl9DQoJfQ0KDQoJLyoqDQoJICogRnVuY3Rpb24gdG8gc2V0IHRoZSBrZXkNCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmcgJGNvbHVtbiBUaGUgZmllbGQgY29sdW1uIGRhdGFiYXNlIGFycmF5IHZhbHVlcw0KCSAqDQoJICogQHJldHVybiB2b2lkDQoJICogQHNpbmNlICAzLjIuMQ0KCSAqLw0KCXByb3RlY3RlZCBmdW5jdGlvbiBzZXRLZXkoYXJyYXkgJGNvbHVtbik6IHZvaWQNCgl7DQoJCWlmIChpc3NldCgkY29sdW1uWydrZXknXSkgJiYgJGNvbHVtblsna2V5J10pDQoJCXsNCgkJCSRrZXkgPSAkY29sdW1uWydrZXlfbmFtZSddID8/ICRjb2x1bW5bJ25hbWUnXTsNCgkJCSR0aGlzLT5rZXlzW10gPSAiS0VZIGBpZHhfIiAuICRrZXkgLiAiYCAoYCIgLiAkY29sdW1uWyduYW1lJ10gLiAiYCkiOw0KCQl9DQoJfQ0KDQoJLyoqDQoJICogQWRqdXN0cyB0aGUgZGVmYXVsdCB2YWx1ZSBTUUwgZnJhZ21lbnQgZm9yIGEgZGF0YWJhc2UgZmllbGQgYmFzZWQgb24gaXRzIHR5cGUgYW5kIHNwZWNpZmljIHJ1bGVzLg0KCSAqDQoJICogSWYgdGhlIGZpZWxkIGlzIG9mIHR5cGUgREFURVRJTUUgYW5kIHRoZSBKb29tbGEgdmVyc2lvbiBpcyBub3QgMywgaXQgc2V0cyB0aGUgZGVmYXVsdCB0byBDVVJSRU5UX1RJTUVTVEFNUA0KCSAqIGlmIG5vdCBleHBsaWNpdGx5IHNwZWNpZmllZCBvdGhlcndpc2UuIEZvciBhbGwgb3RoZXIgdHlwZXMgaXQgaGFuZGxlcyBkZWZhdWx0cyBieSBlaXRoZXIgbGVhdmluZyB0aGVtIHVuc2V0IG9yIGFwcGx5aW5nDQoJICogdGhlIHByb3ZpZGVkIGRlZmF1bHQsIHByb3Blcmx5IHF1b3RlZCBmb3IgU1FMIHNhZmV0eS4gV2hlbiBhICdFTVBUWScgZGVmYXVsdCBpcyBzcGVjaWZpZWQsIGl0IHJldHVybnMgbm8gZGVmYXVsdCBhdCBhbGwuICg6KQ0KCSAqDQoJICogQHBhcmFtIHN0cmluZwkgICAkdHlwZSAgICAgICAgICBUaGUgdHlwZSBvZiB0aGUgZGF0YWJhc2UgZmllbGQgKGUuZy4sICdEQVRFVElNRScpLg0KCSAqIEBwYXJhbSBzdHJpbmd8bnVsbCAgJGRlZmF1bHRWYWx1ZSAgT3B0aW9uYWwgZGVmYXVsdCB2YWx1ZSBmb3IgdGhlIGZpZWxkLCBudWxsIGlmIG5vdCBwcm92aWRlZC4NCgkgKiBAcGFyYW0gYm9vbCAgICAgICAgICRwdXJlICAgICAgICAgIE9wdGlvbmFsIHRvIGFkZCB0aGUgJ0RFRkFVTFQnIHN0cmluZyBvciBub3QuDQoJICoNCgkgKiBAcmV0dXJuIHN0cmluZyAgICAgIFRoZSBTUUwgZnJhZ21lbnQgdG8gc2V0IHRoZSBkZWZhdWx0IHZhbHVlIGZvciBhIGZpZWxkLg0KCSAqIEBzaW5jZSAzLjIuMQ0KCSAqIEB0aHJvd3MgXFJ1bnRpbWVFeGNlcHRpb24gSWYgdGhlIGRhdGFiYXNlIHVuc3VwcG9ydGVkDQoJICovDQoJcHJvdGVjdGVkIGZ1bmN0aW9uIGdldERlZmF1bHRWYWx1ZShzdHJpbmcgJHR5cGUsID9zdHJpbmcgJGRlZmF1bHRWYWx1ZSwgYm9vbCAkcHVyZSA9IGZhbHNlKTogc3RyaW5nDQoJew0KCQlpZiAoJGRlZmF1bHRWYWx1ZSA9PT0gbnVsbCB8fCBzdHJ0b3VwcGVyKCRkZWZhdWx0VmFsdWUpID09PSAnRU1QVFknKQ0KCQl7DQoJCQlyZXR1cm4gJyc7DQoJCX0NCg0KCQkvLyBMb2dpYyB0byBoYW5kbGUgREFURVRJTUUgZGVmYXVsdCB2YWx1ZXMgYmFzZWQgb24gZGF0YWJhc2UgdHlwZQ0KCQlpZiAoc3RydG91cHBlcigkdHlwZSkgPT09ICdEQVRFVElNRScpDQoJCXsNCgkJCWlmICgkdGhpcy0+ZGJUeXBlID09PSAnbXlzcWwnKQ0KCQkJew0KCQkJCS8vIE15U1FMLXNwZWNpZmljIGxvZ2ljDQoJCQkJaWYgKHZlcnNpb25fY29tcGFyZSgkdGhpcy0+ZGJWZXJzaW9uLCAnNS42JywgJz49JykpDQoJCQkJew0KCQkJCQlyZXR1cm4gJHB1cmUgPyAiQ1VSUkVOVF9USU1FU1RBTVAiIDogIiBERUZBVUxUIENVUlJFTlRfVElNRVNUQU1QIjsNCgkJCQl9DQoJCQkJZWxzZQ0KCQkJCXsNCgkJCQkJcmV0dXJuICRwdXJlID8gIicwMDAwLTAwLTAwIDAwOjAwOjAwJyIgOiAiIERFRkFVTFQgJzAwMDAtMDAtMDAgMDA6MDA6MDAnIjsNCgkJCQl9DQoJCQl9DQoJCQllbHNlaWYgKCR0aGlzLT5kYlR5cGUgPT09ICdwZ3NxbCcpDQoJCQl7DQoJCQkJLy8gUG9zdGdyZVNRTCBzdXBwb3J0cyBDVVJSRU5UX1RJTUVTVEFNUCB1bml2ZXJzYWxseQ0KCQkJCXJldHVybiAkcHVyZSA/ICJDVVJSRU5UX1RJTUVTVEFNUCIgOiAiIERFRkFVTFQgQ1VSUkVOVF9USU1FU1RBTVAiOw0KCQkJfQ0KCQkJZWxzZQ0KCQkJew0KCQkJCS8vIFVuc3VwcG9ydGVkIGRhdGFiYXNlIHR5cGUgKGF0IHRoaXMgcG9pbnQuLi4gd2UgY2FuIGdyb3cgdGhpcyBhcmVhKQ0KCQkJCXRocm93IG5ldyBcUnVudGltZUV4Y2VwdGlvbigiVW5zdXBwb3J0ZWQgZGF0YWJhc2UgdHlwZTogeyRkYlR5cGV9Iik7DQoJCQl9DQoJCX0NCg0KCQkvLyBBcHBseSBhbmQgcXVvdGUgdGhlIGRlZmF1bHQgdmFsdWUNCgkJJHNxbF9kZWZhdWx0ID0gJHRoaXMtPnF1b3RlKCRkZWZhdWx0VmFsdWUpOw0KCQlyZXR1cm4gJHB1cmUgPyAkZGVmYXVsdFZhbHVlIDogIiBERUZBVUxUICRzcWxfZGVmYXVsdCI7DQoJfQ0KDQoJLyoqDQoJICogU2V0IGEgdmFsdWUgYmFzZWQgb24gZGF0YSB0eXBlDQoJICoNCgkgKiBAcGFyYW0gICBtaXhlZCAgJHZhbHVlICAgVGhlIHZhbHVlIHRvIHNldA0KCSAqDQoJICogQHJldHVybiAgbWl4ZWQNCgkgKiBAc2luY2UgICAzLjIuMA0KCSAqKi8NCglwcm90ZWN0ZWQgZnVuY3Rpb24gcXVvdGUoJHZhbHVlKQ0KCXsNCgkJaWYgKCR2YWx1ZSA9PT0gbnVsbCkgLy8gaG1tIHRoZSBudWxsIGRvZXMgcG9zZSBhbiBpc3N1ZSAod2lsbCBrZWVwIGFuIGV5ZSBvbiB0aGlzKQ0KCQl7DQoJCQlyZXR1cm4gJ05VTEwnOw0KCQl9DQoNCgkJaWYgKGlzX251bWVyaWMoJHZhbHVlKSkNCgkJew0KCQkJaWYgKGZpbHRlcl92YXIoJHZhbHVlLCBGSUxURVJfVkFMSURBVEVfSU5UKSkNCgkJCXsNCgkJCQlyZXR1cm4gKGludCkgJHZhbHVlOw0KCQkJfQ0KCQkJZWxzZWlmIChmaWx0ZXJfdmFyKCR2YWx1ZSwgRklMVEVSX1ZBTElEQVRFX0ZMT0FUKSkNCgkJCXsNCgkJCQlyZXR1cm4gKGZsb2F0KSAkdmFsdWU7DQoJCQl9DQoJCX0NCgkJZWxzZWlmIChpc19ib29sKCR2YWx1ZSkpIC8vIG5vdCBzdXJlIGlmIHRoaXMgd2lsbCB3b3JrIHdlbGwgKGJ1dCBpdHMgY29ycmVjdCkNCgkJew0KCQkJcmV0dXJuICR2YWx1ZSA/ICdUUlVFJyA6ICdGQUxTRSc7DQoJCX0NCgkJLy8gRm9yIGRhdGUgYW5kIGRhdGV0aW1lIHZhbHVlcw0KCQllbHNlaWYgKCR2YWx1ZSBpbnN0YW5jZW9mIFxEYXRlVGltZSkNCgkJew0KCQkJcmV0dXJuICR0aGlzLT5kYi0+cXVvdGUoJHZhbHVlLT5mb3JtYXQoJ1ktbS1kIEg6aTpzJykpOw0KCQl9DQoNCgkJLy8gRm9yIG90aGVyIGRhdGEgdHlwZXMsIGp1c3QgZXNjYXBlIGl0DQoJCXJldHVybiAkdGhpcy0+ZGItPnF1b3RlKCR2YWx1ZSk7DQoJfQ==', '{}', '{}', '', 1, '2024-04-17 10:39:48', 106, '', 1), +(734, '4dd11b9b-3c64-460b-aaa6-62ba467db7aa', 'VDM.SchemaInterface', 'SchemaInterface', 'interface', 'Schema Checking Interface\r\n\r\n@since 3.2.1', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\Interfaces.SchemaInterface', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIENoZWNrIGFuZCB1cGRhdGUgZGF0YWJhc2Ugc2NoZW1hIGZvciBtaXNzaW5nIGZpZWxkcyBvciB0YWJsZXMuDQoJICoNCgkgKiBAcmV0dXJuIGFycmF5ICAgVGhlIGFycmF5IG9mIHN1Y2Nlc3NmdWwgdXBkYXRlcy9hY3Rpb25zLCBpZiBlbXB0eSBubyB1cGRhdGUvYWN0aW9uIHdhcyB0YWtlbi4NCgkgKiBAc2luY2UgIDMuMi4xDQoJICogQHRocm93cyBcRXhjZXB0aW9uIElmIHRoZXJlIGlzIGFuIGVycm9yIGR1cmluZyB0aGUgdXBkYXRlIHByb2Nlc3MuDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIHVwZGF0ZSgpOiBhcnJheTsNCg0KCS8qKg0KCSAqIENyZWF0ZSBhIHRhYmxlIHdpdGggYWxsIG5lY2Vzc2FyeSBmaWVsZHMuDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICR0YWJsZSBUaGUgbmFtZSBvZiB0aGUgdGFibGUgdG8gY3JlYXRlLg0KCSAqDQoJICogQHJldHVybiB2b2lkDQoJICogQHNpbmNlICAzLjIuMQ0KCSAqIEB0aHJvd3MgXEV4Y2VwdGlvbiBJZiB0aGVyZSBpcyBhbiBlcnJvciBjcmVhdGluZyB0aGUgdGFibGUuDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGNyZWF0ZVRhYmxlKHN0cmluZyAkdGFibGUpOiB2b2lkOw0KDQoJLyoqDQoJICogVXBkYXRlIHRoZSBzY2hlbWEgb2YgYW4gZXhpc3RpbmcgdGFibGUuDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICR0YWJsZSAgVGhlIHRhYmxlIHRvIHVwZGF0ZS4NCgkgKg0KCSAqIEByZXR1cm4gdm9pZA0KCSAqIEBzaW5jZSAgMy4yLjENCgkgKiBAdGhyb3dzIFxFeGNlcHRpb24gSWYgdGhlcmUgaXMgYW4gZXJyb3Igd2hpbGUgdXBkYXRpbmcgdGhlIHNjaGVtYS4NCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gdXBkYXRlU2NoZW1hKHN0cmluZyAkdGFibGUpOiB2b2lkOw==', '{}', '{}', '', 1, '2024-04-21 17:27:00', 2, '', 1), +(735, 'e250638e-4a50-41f9-9172-db3e7f174d26', 'JCB.Spreadsheet.Exporter', 'Exporter', 'final class', 'Spreadsheet Exporter Class\r\n\r\n@since 3.2.0', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\[[[ComponentNamespace]]].Spreadsheet.Exporter', 1, '{}', '{}', 'dXNlIEpvb21sYVxDTVNcRmFjdG9yeTsNCnVzZSBKb29tbGFcQ01TXFVzZXJcVXNlcjs=', '{\"use_selection0\":{\"use\":\"0a59c65c-9daf-4bc9-baf4-e063ff9e6a8a\",\"as\":\"default\"}}', 'CS8qKg0KCSAqIFRoZSBjdXJyZW50IGFjdGl2ZSB1c2VyLg0KCSAqDQoJICogQHZhciBVc2VyICR1c2VyDQoJICogQHNpbmNlIDMuMi4wDQoJICovDQoJcHJpdmF0ZSBVc2VyICR1c2VyOw0KDQoJLyoqDQoJICogVGhlIFBocFNwcmVhZHNoZWV0IG9iamVjdCB1c2VkIHRvIGNyZWF0ZSBhbmQgbWFuYWdlIHRoZSBzcHJlYWRzaGVldC4NCgkgKg0KCSAqIEB2YXIgU3ByZWFkc2hlZXQgJHNwcmVhZHNoZWV0DQoJICogQHNpbmNlIDMuMi4wDQoJICovDQoJcHJpdmF0ZSBTcHJlYWRzaGVldCAkc3ByZWFkc2hlZXQ7DQoNCgkvKioNCgkgKiBUaGUgbmFtZSBvZiB0aGUgZmlsZSB0byBiZSBleHBvcnRlZCwgaW5jbHVkaW5nIHRoZSBkYXRlIGlmIG5vdCBwcm92aWRlZC4NCgkgKg0KCSAqIEB2YXIgc3RyaW5nICRmaWxlTmFtZQ0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXByaXZhdGUgc3RyaW5nICRmaWxlTmFtZTsNCg0KCS8qKg0KCSAqIFRoZSBmb3JtYXQgb2YgdGhlIGV4cG9ydGVkIGZpbGUsIHR5cGljYWxseSAnWGxzJyBvciAnQ3N2Jy4NCgkgKg0KCSAqIEB2YXIgc3RyaW5nICRmaWxlVHlwZQ0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXByaXZhdGUgc3RyaW5nICRmaWxlVHlwZTsNCg0KCS8qKg0KCSAqIFRoZSBuYW1lIG9mIHRoZSB3b3Jrc2hlZXQgdGFiIGluIHRoZSBleHBvcnRlZCBzcHJlYWRzaGVldC4NCgkgKg0KCSAqIEB2YXIgc3RyaW5nICRzdWJqZWN0VGFiDQoJICogQHNpbmNlIDMuMi4wDQoJICovDQoJcHJpdmF0ZSBzdHJpbmcgJHN1YmplY3RUYWI7DQoNCgkvKioNCgkgKiBUaGUgc3R5bGVzIGFwcGxpZWQgdG8gdGhlIGhlYWRlciByb3csIGluY2x1ZGluZyBmb250IHNpemUsIGNvbG9yLCBhbmQgYm9sZCBmb3JtYXR0aW5nLg0KCSAqDQoJICogQHZhciBhcnJheSAkaGVhZGVyU3R5bGVzDQoJICogQHNpbmNlIDMuMi4wDQoJICovDQoJcHJpdmF0ZSBhcnJheSAkaGVhZGVyU3R5bGVzOw0KDQoJLyoqDQoJICogVGhlIHN0eWxlcyBhcHBsaWVkIHRvIHRoZSBmaXJzdCBjb2x1bW4gKHNpZGUpIG9mIHRoZSBzcHJlYWRzaGVldCwgdXN1YWxseSBmb3IgbGFiZWxpbmcgcm93cy4NCgkgKg0KCSAqIEB2YXIgYXJyYXkgJHNpZGVTdHlsZXMNCgkgKiBAc2luY2UgMy4yLjANCgkgKi8NCglwcml2YXRlIGFycmF5ICRzaWRlU3R5bGVzOw0KDQoJLyoqDQoJICogVGhlIHN0eWxlcyBhcHBsaWVkIHRvIG5vcm1hbCBjZWxscyBpbiB0aGUgc3ByZWFkc2hlZXQsIHN1Y2ggYXMgZm9udCBjb2xvciBhbmQgc2l6ZS4NCgkgKg0KCSAqIEB2YXIgYXJyYXkgJG5vcm1hbFN0eWxlcw0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXByaXZhdGUgYXJyYXkgJG5vcm1hbFN0eWxlczsNCg0KCS8qKg0KCSAqIFNwcmVhZHNoZWV0RXhwb3J0ZXIgY29uc3RydWN0b3IuDQoJICogSW5pdGlhbGl6ZXMgc3R5bGVzIGFuZCB0aGUgU3ByZWFkc2hlZXQgb2JqZWN0Lg0KCSAqDQoJICogQHNpbmNlIDMuMi4wDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KCkNCgl7DQoJCSR0aGlzLT51c2VyID0gRmFjdG9yeTo6Z2V0VXNlcigpOw0KCQkkdGhpcy0+c3ByZWFkc2hlZXQgPSBuZXcgU3ByZWFkc2hlZXQoKTsNCgkJJHRoaXMtPmhlYWRlclN0eWxlcyA9IFsNCgkJCSdmb250JyA9PiBbDQoJCQkJJ2JvbGQnID0+IHRydWUsDQoJCQkJJ2NvbG9yJyA9PiBbJ3JnYicgPT4gJzExNzFBMyddLA0KCQkJCSdzaXplJyA9PiAxMywNCgkJCQknbmFtZScgPT4gJ1ZlcmRhbmEnDQoJCQldDQoJCV07DQoJCSR0aGlzLT5zaWRlU3R5bGVzID0gWw0KCQkJJ2ZvbnQnID0+IFsNCgkJCQknYm9sZCcgPT4gdHJ1ZSwNCgkJCQknY29sb3InID0+IFsncmdiJyA9PiAnNDQ0NDQ0J10sDQoJCQkJJ3NpemUnID0+IDExLA0KCQkJCSduYW1lJyA9PiAnVmVyZGFuYScNCgkJCV0NCgkJXTsNCgkJJHRoaXMtPm5vcm1hbFN0eWxlcyA9IFsNCgkJCSdmb250JyA9PiBbDQoJCQkJJ2NvbG9yJyA9PiBbJ3JnYicgPT4gJzQ0NDQ0NCddLA0KCQkJCSdzaXplJyA9PiAxMSwNCgkJCQknbmFtZScgPT4gJ1ZlcmRhbmEnDQoJCQldDQoJCV07DQoJfQ0KDQoJLyoqDQoJICogUHJlcGFyZXMgdGhlIHNwcmVhZHNoZWV0IHdpdGggZGF0YS4NCgkgKg0KCSAqIEBwYXJhbSBhcnJheSAgICAgICAkcm93cw0KCSAqIEBwYXJhbSBzdHJpbmd8bnVsbCAkZmlsZU5hbWUNCgkgKiBAcGFyYW0gc3RyaW5nfG51bGwgJHRpdGxlDQoJICogQHBhcmFtIHN0cmluZ3xudWxsICRzdWJqZWN0VGFiDQoJICogQHBhcmFtIHN0cmluZyAgICAgICRjcmVhdG9yDQoJICogQHBhcmFtIHN0cmluZ3xudWxsICRkZXNjcmlwdGlvbg0KCSAqIEBwYXJhbSBzdHJpbmd8bnVsbCAkY2F0ZWdvcnkNCgkgKiBAcGFyYW0gc3RyaW5nfG51bGwgJGtleXdvcmRzDQoJICogQHBhcmFtIHN0cmluZ3xudWxsICRtb2RpZmllZA0KCSAqDQoJICogQHJldHVybiB2b2lkDQoJICogQHRocm93cyBFeGNlcHRpb24NCgkgKiBAc2luY2UgMy4yLjANCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZXhwb3J0KA0KCQlhcnJheSAkcm93cywNCgkJP3N0cmluZyAkZmlsZU5hbWUgPSBudWxsLA0KCQk/c3RyaW5nICR0aXRsZSA9IG51bGwsDQoJCT9zdHJpbmcgJHN1YmplY3RUYWIgPSBudWxsLA0KCQlzdHJpbmcgJGNyZWF0b3IgPSAnVmFzdCBEZXZlbG9wbWVudCBNZXRob2QnLA0KCQk/c3RyaW5nICRkZXNjcmlwdGlvbiA9IG51bGwsDQoJCT9zdHJpbmcgJGNhdGVnb3J5ID0gbnVsbCwNCgkJP3N0cmluZyAka2V5d29yZHMgPSBudWxsLA0KCQk/c3RyaW5nICRtb2RpZmllZCA9IG51bGwNCgkpOiB2b2lkIHsNCgkJJHRoaXMtPmZpbGVOYW1lID0gJGZpbGVOYW1lID8/ICdleHBvcnRlZF8nIC4gRmFjdG9yeTo6Z2V0RGF0ZSgpLT5mb3JtYXQoJ2pTX0ZfWScpOw0KCQkkdGhpcy0+ZmlsZVR5cGUgPSAnWGxzJzsNCgkJJHRoaXMtPnN1YmplY3RUYWIgPSAkc3ViamVjdFRhYiA/PyAnU2hlZXQxJzsNCg0KCQkkdGhpcy0+c2V0RG9jdW1lbnRQcm9wZXJ0aWVzKCRjcmVhdG9yLCAkdGl0bGUsICRkZXNjcmlwdGlvbiwgJGNhdGVnb3J5LCAka2V5d29yZHMsICRtb2RpZmllZCk7DQoJCSR0aGlzLT5wb3B1bGF0ZVNwcmVhZHNoZWV0KCRyb3dzKTsNCg0KCQkvLyBPdXRwdXQgdGhlIHNwcmVhZHNoZWV0DQoJCSR0aGlzLT5vdXRwdXRTcHJlYWRzaGVldCgpOw0KCX0NCg0KCS8qKg0KCSAqIFNldCB0aGUgZG9jdW1lbnQgcHJvcGVydGllcyBmb3IgdGhlIHNwcmVhZHNoZWV0Lg0KCSAqDQoJICogQHBhcmFtIHN0cmluZyAgICAgICAgJGNyZWF0b3INCgkgKiBAcGFyYW0gc3RyaW5nfG51bGwgICAkdGl0bGUNCgkgKiBAcGFyYW0gc3RyaW5nfG51bGwgICAkZGVzY3JpcHRpb24NCgkgKiBAcGFyYW0gc3RyaW5nfG51bGwgICAkY2F0ZWdvcnkNCgkgKiBAcGFyYW0gc3RyaW5nfG51bGwgICAka2V5d29yZHMNCgkgKiBAcGFyYW0gc3RyaW5nfG51bGwgICAkbW9kaWZpZWQNCgkgKiBAc2luY2UgMy4yLjANCgkgKi8NCglwcml2YXRlIGZ1bmN0aW9uIHNldERvY3VtZW50UHJvcGVydGllcygNCgkJc3RyaW5nICRjcmVhdG9yLA0KCQk/c3RyaW5nICR0aXRsZSA9IG51bGwsDQoJCT9zdHJpbmcgJGRlc2NyaXB0aW9uID0gbnVsbCwNCgkJP3N0cmluZyAkY2F0ZWdvcnkgPSBudWxsLA0KCQk/c3RyaW5nICRrZXl3b3JkcyA9IG51bGwsDQoJCT9zdHJpbmcgJG1vZGlmaWVkID0gbnVsbA0KCSk6IHZvaWQNCgl7DQoJCSRtb2RpZmllZEJ5ID0gJG1vZGlmaWVkID8/ICR0aGlzLT51c2VyLT5uYW1lOw0KDQoJCSR0aGlzLT5zcHJlYWRzaGVldC0+Z2V0UHJvcGVydGllcygpDQoJCQktPnNldENyZWF0b3IoJGNyZWF0b3IpDQoJCQktPnNldENvbXBhbnkoJ1Zhc3QgRGV2ZWxvcG1lbnQgTWV0aG9kJykNCgkJCS0+c2V0TGFzdE1vZGlmaWVkQnkoJG1vZGlmaWVkQnkpDQoJCQktPnNldFRpdGxlKCR0aXRsZSA/PyAnQm9vazEnKQ0KCQkJLT5zZXRTdWJqZWN0KCR0aGlzLT5zdWJqZWN0VGFiKTsNCg0KCQlpZiAoJGRlc2NyaXB0aW9uKQ0KCQl7DQoJCQkkdGhpcy0+c3ByZWFkc2hlZXQtPmdldFByb3BlcnRpZXMoKS0+c2V0RGVzY3JpcHRpb24oJGRlc2NyaXB0aW9uKTsNCgkJfQ0KDQoJCWlmICgkY2F0ZWdvcnkpDQoJCXsNCgkJCSR0aGlzLT5zcHJlYWRzaGVldC0+Z2V0UHJvcGVydGllcygpLT5zZXRDYXRlZ29yeSgkY2F0ZWdvcnkpOw0KCQl9DQoNCgkJaWYgKCRrZXl3b3JkcykNCgkJew0KCQkJJHRoaXMtPnNwcmVhZHNoZWV0LT5nZXRQcm9wZXJ0aWVzKCktPnNldEtleXdvcmRzKCRrZXl3b3Jkcyk7DQoJCX0NCgl9DQoNCgkvKioNCgkgKiBQb3B1bGF0ZSB0aGUgc3ByZWFkc2hlZXQgd2l0aCB0aGUgcHJvdmlkZWQgcm93cy4NCgkgKg0KCSAqIEBwYXJhbSBhcnJheSAkcm93cw0KCSAqDQoJICogQHNpbmNlIDMuMi4wDQoJICovDQoJcHJpdmF0ZSBmdW5jdGlvbiBwb3B1bGF0ZVNwcmVhZHNoZWV0KGFycmF5ICRyb3dzKTogdm9pZA0KCXsNCgkJaWYgKCgkc2l6ZSA9IEFycmF5SGVscGVyOjpjaGVjaygkcm93cykpID09PSBmYWxzZSkNCgkJew0KCQkJcmV0dXJuOw0KCQl9DQoNCgkJJHhsc01vZGUgPSAkdGhpcy0+ZGV0ZXJtaW5lWGxzTW9kZSgkc2l6ZSk7DQoJCSRhY3RpdmVTaGVldCA9ICR0aGlzLT5zcHJlYWRzaGVldC0+c2V0QWN0aXZlU2hlZXRJbmRleCgwKTsNCgkJJHJvd0luZGV4ID0gMTsNCg0KCQlmb3JlYWNoICgkcm93cyBhcyAkYXJyYXkpDQoJCXsNCgkJCSRjb2x1bW5JbmRleCA9ICdBJzsNCgkJCWZvcmVhY2ggKCRhcnJheSBhcyAkdmFsdWUpDQoJCQl7DQoJCQkJJGFjdGl2ZVNoZWV0LT5zZXRDZWxsVmFsdWUoJGNvbHVtbkluZGV4IC4gJHJvd0luZGV4LCAkdmFsdWUpOw0KCQkJCSR0aGlzLT5hcHBseVN0eWxlcygkYWN0aXZlU2hlZXQsICRyb3dJbmRleCwgJGNvbHVtbkluZGV4LCAkeGxzTW9kZSk7DQoJCQkJJGNvbHVtbkluZGV4Kys7DQoJCQl9DQoJCQkkcm93SW5kZXgrKzsNCgkJfQ0KDQoJCSRhY3RpdmVTaGVldC0+c2V0VGl0bGUoJHRoaXMtPnN1YmplY3RUYWIpOw0KCX0NCg0KCS8qKg0KCSAqIERldGVybWluZSB0aGUgWExTIG1vZGUgYmFzZWQgb24gdGhlIG51bWJlciBvZiByb3dzLg0KCSAqDQoJICogQHBhcmFtIGludCAkc2l6ZQ0KCSAqIEByZXR1cm4gaW50DQoJICoNCgkgKiBAc2luY2UgMy4yLjANCgkgKi8NCglwcml2YXRlIGZ1bmN0aW9uIGRldGVybWluZVhsc01vZGUoaW50ICRzaXplKTogaW50DQoJew0KCQlpZiAoJHNpemUgPiAzMDAwKQ0KCQl7DQoJCQkkdGhpcy0+ZmlsZVR5cGUgPSAnQ3N2JzsNCgkJCXJldHVybiAzOw0KCQl9DQoNCgkJaWYgKCRzaXplID4gMjAwMCkNCgkJew0KCQkJcmV0dXJuIDI7DQoJCX0NCg0KCQlyZXR1cm4gMTsNCgl9DQoNCgkvKioNCgkgKiBBcHBseSBzdHlsZXMgdG8gdGhlIGNlbGxzIGJhc2VkIG9uIHRoZSByb3cgYW5kIGNvbHVtbiBpbmRleC4NCgkgKg0KCSAqIEBwYXJhbSBXb3Jrc2hlZXQgJHNoZWV0DQoJICogQHBhcmFtIGludCAgICAgICAkcm93SW5kZXgNCgkgKiBAcGFyYW0gc3RyaW5nICAgICRjb2x1bW5JbmRleA0KCSAqIEBwYXJhbSBpbnQgICAgICAgJHhsc01vZGUNCgkgKg0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXByaXZhdGUgZnVuY3Rpb24gYXBwbHlTdHlsZXMoV29ya3NoZWV0ICRzaGVldCwgaW50ICRyb3dJbmRleCwgc3RyaW5nICRjb2x1bW5JbmRleCwgaW50ICR4bHNNb2RlKTogdm9pZA0KCXsNCgkJaWYgKCR4bHNNb2RlID09PSAzKQ0KCQl7DQoJCQlyZXR1cm47DQoJCX0NCg0KCQlpZiAoJHJvd0luZGV4ID09PSAxKQ0KCQl7DQoJCQkkc2hlZXQtPmdldENvbHVtbkRpbWVuc2lvbigkY29sdW1uSW5kZXgpLT5zZXRBdXRvU2l6ZSh0cnVlKTsNCgkJCSRzaGVldC0+Z2V0U3R5bGUoJGNvbHVtbkluZGV4IC4gJHJvd0luZGV4KS0+YXBwbHlGcm9tQXJyYXkoJHRoaXMtPmhlYWRlclN0eWxlcyk7DQoJCQkkc2hlZXQtPmdldFN0eWxlKCRjb2x1bW5JbmRleCAuICRyb3dJbmRleCktPmdldEFsaWdubWVudCgpLT5zZXRIb3Jpem9udGFsKEFsaWdubWVudDo6SE9SSVpPTlRBTF9DRU5URVIpOw0KCQkJJHJvd19oZWlnaHQgPSAoJHRoaXMtPmhlYWRlclN0eWxlc1snZm9udCddWydzaXplJ10gPz8gMTMpICsgNTsNCgkJCSRzaGVldC0+Z2V0Um93RGltZW5zaW9uKCRyb3dJbmRleCktPnNldFJvd0hlaWdodCgkcm93X2hlaWdodCk7DQoJCX0NCgkJZWxzZWlmICgkY29sdW1uSW5kZXggPT09ICdBJykNCgkJew0KCQkJJHNoZWV0LT5nZXRTdHlsZSgkY29sdW1uSW5kZXggLiAkcm93SW5kZXgpLT5hcHBseUZyb21BcnJheSgkdGhpcy0+c2lkZVN0eWxlcyk7DQoJCX0NCgkJZWxzZQ0KCQl7DQoJCQkkc2hlZXQtPmdldFN0eWxlKCRjb2x1bW5JbmRleCAuICRyb3dJbmRleCktPmFwcGx5RnJvbUFycmF5KCR0aGlzLT5ub3JtYWxTdHlsZXMpOw0KCQl9DQoJfQ0KDQoJLyoqDQoJICogT3V0cHV0IHRoZSBzcHJlYWRzaGVldCBhcyBhbiBFeGNlbCBvciBDU1YgZmlsZS4NCgkgKg0KCSAqIEByZXR1cm4gdm9pZA0KCSAqIEB0aHJvd3MgRXhjZXB0aW9uDQoJICogQHNpbmNlIDMuMi4wDQoJICovDQoJcHJpdmF0ZSBmdW5jdGlvbiBvdXRwdXRTcHJlYWRzaGVldCgpOiB2b2lkDQoJew0KCQloZWFkZXIoJ0NvbnRlbnQtVHlwZTogYXBwbGljYXRpb24vdm5kLm1zLWV4Y2VsJyk7DQoJCWhlYWRlcignQ29udGVudC1EaXNwb3NpdGlvbjogYXR0YWNobWVudDtmaWxlbmFtZT0iJyAuICR0aGlzLT5maWxlTmFtZSAuICcuJyAuIHN0cnRvbG93ZXIoJHRoaXMtPmZpbGVUeXBlKSAuICciJyk7DQoJCWhlYWRlcignQ2FjaGUtQ29udHJvbDogbWF4LWFnZT0wJyk7DQoJCWhlYWRlcignRXhwaXJlczogTW9uLCAyNiBKdWwgMTk5NyAwNTowMDowMCBHTVQnKTsNCgkJaGVhZGVyKCdMYXN0LU1vZGlmaWVkOiAnIC4gZ21kYXRlKCdELCBkIE0gWSBIOmk6cycpIC4gJyBHTVQnKTsNCgkJaGVhZGVyKCdDYWNoZS1Db250cm9sOiBjYWNoZSwgbXVzdC1yZXZhbGlkYXRlJyk7DQoJCWhlYWRlcignUHJhZ21hOiBwdWJsaWMnKTsNCg0KCQkkd3JpdGVyID0gSU9GYWN0b3J5OjpjcmVhdGVXcml0ZXIoJHRoaXMtPnNwcmVhZHNoZWV0LCAkdGhpcy0+ZmlsZVR5cGUpOw0KCQkkd3JpdGVyLT5zYXZlKCdwaHA6Ly9vdXRwdXQnKTsNCgkJZXhpdDsNCgl9', '{}', '{\"composer0\":{\"access_point\":\"phpspreadsheet\\/vendor\\/autoload.php\",\"namespace\":{\"namespace0\":{\"use\":\"PhpOffice\\\\PhpSpreadsheet\\\\IOFactory\"},\"namespace1\":{\"use\":\"PhpOffice\\\\PhpSpreadsheet\\\\Spreadsheet\"},\"namespace2\":{\"use\":\"PhpOffice\\\\PhpSpreadsheet\\\\Worksheet\\\\Worksheet\"},\"namespace3\":{\"use\":\"PhpOffice\\\\PhpSpreadsheet\\\\Style\\\\Alignment\"},\"namespace4\":{\"use\":\"PhpOffice\\\\PhpSpreadsheet\\\\Writer\\\\Exception\"}}}}', '', 1, '2022-04-25 07:42:37', 15, '', 1), +(736, 'fd3f322a-082d-4579-93ad-3352c5adfc71', 'JCB.Spreadsheet.Header', 'Header', 'final class', 'Spreadsheet Header Class\r\n\r\n@since 3.2.0', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\[[[ComponentNamespace]]].Spreadsheet.Header', '', '{}', '{}', '', '{\"use_selection0\":{\"use\":\"9ae018a5-9064-40ed-ad69-9c1ed2a459f5\",\"as\":\"default\"}}', 'CS8qKg0KCSAqIEdldCBDU1Ygb3IgRXhjZWwgaGVhZGVycyBmcm9tIHRoZSBwcm92aWRlZCBmaWxlIHBhdGguDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICAkZmlsZVBhdGgNCgkgKiBAcGFyYW0gaW50ICAgICAkdGFyZ2V0Um93DQoJICoNCgkgKiBAcmV0dXJuIGFycmF5fG51bGwNCgkgKiBAc2luY2UgMy4yLjANCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZ2V0KHN0cmluZyAkZmlsZVBhdGgsIGludCAkdGFyZ2V0Um93ID0gMSk6ID9hcnJheQ0KCXsNCgkJaWYgKCFpc19maWxlKCRmaWxlUGF0aCkpDQoJCXsNCgkJCXJldHVybiBudWxsOw0KCQl9DQoNCgkJdHJ5IHsNCgkJCSRjaHVua0ZpbHRlciA9IG5ldyBDaHVua1JlYWRGaWx0ZXIoMSwgMjApOw0KCQkJJGlucHV0RmlsZVR5cGUgPSBJT0ZhY3Rvcnk6OmlkZW50aWZ5KCRmaWxlUGF0aCk7DQoJCQkkcmVhZGVyID0gSU9GYWN0b3J5OjpjcmVhdGVSZWFkZXIoJGlucHV0RmlsZVR5cGUpOw0KCQkJJHJlYWRlci0+c2V0UmVhZEZpbHRlcigkY2h1bmtGaWx0ZXIpOw0KCQkJJHJlYWRlci0+c2V0UmVhZERhdGFPbmx5KHRydWUpOw0KDQoJCQkkc3ByZWFkc2hlZXQgPSAkcmVhZGVyLT5sb2FkKCRmaWxlUGF0aCk7DQoJCQkkaGVhZGVycyA9IFtdOw0KDQoJCQlmb3JlYWNoICgkc3ByZWFkc2hlZXQtPmdldEFjdGl2ZVNoZWV0KCktPmdldFJvd0l0ZXJhdG9yKCkgYXMgJHJvdykNCgkJCXsNCgkJCQlpZiAoJHJvdy0+Z2V0Um93SW5kZXgoKSA9PT0gJHRhcmdldFJvdykNCgkJCQl7DQoJCQkJCSRjZWxsSXRlcmF0b3IgPSAkcm93LT5nZXRDZWxsSXRlcmF0b3IoKTsNCgkJCQkJJGNlbGxJdGVyYXRvci0+c2V0SXRlcmF0ZU9ubHlFeGlzdGluZ0NlbGxzKHRydWUpOw0KCQkJCQlmb3JlYWNoICgkY2VsbEl0ZXJhdG9yIGFzICRjZWxsKQ0KCQkJCQl7DQoJCQkJCQkkaGVhZGVyc1skY2VsbC0+Z2V0Q29sdW1uKCldID0gJGNlbGwtPmdldFZhbHVlKCk7DQoJCQkJCX0NCgkJCQkJYnJlYWs7DQoJCQkJfQ0KCQkJfQ0KDQoJCQkkc3ByZWFkc2hlZXQtPmRpc2Nvbm5lY3RXb3Jrc2hlZXRzKCk7DQoNCgkJCXJldHVybiAkaGVhZGVyczsNCgkJfSBjYXRjaCAoXEV4Y2VwdGlvbiAkZSkgew0KCQkJLy8gTG9nIG9yIGhhbmRsZSBleGNlcHRpb25zIGFzIG5lY2Vzc2FyeQ0KCQkJcmV0dXJuIG51bGw7DQoJCX0NCgl9', '{}', '{\"composer0\":{\"access_point\":\"phpspreadsheet\\/vendor\\/autoload.php\",\"namespace\":{\"namespace0\":{\"use\":\"PhpOffice\\\\PhpSpreadsheet\\\\IOFactory\"}}}}', '', 1, '2022-05-02 12:57:59', 9, '', 1), +(742, '85785701-07b2-4f81-bc1e-0f423700c254', 'VDM.Data.Subform', 'Subform', 'final class', 'CRUD the data of any sub-form to another view (table)\r\n\r\n@since 3.2.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICAzcmQgU2VwdGVtYmVyLCAyMDIwDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '{\"0\":\"576685fd-263c-46bb-9fdc-1f5eb234cbb6\",\"1\":\"34959721-415b-4b5e-8002-3d1fc84b3b2b\"}', '', '[[[NamespacePrefix]]]\\Joomla\\Data.Subform', '', '{}', '{}', '', '{\"use_selection0\":{\"use\":\"7212e4db-371f-4cfd-8122-32e9bb100d83\",\"as\":\"Items\"},\"use_selection1\":{\"use\":\"5acded67-0e3d-4c6b-a6ea-b533b076de0c\",\"as\":\"default\"}}', 'CS8qKg0KCSAqIFRoZSBHbG9iYWxseSBVbmlxdWUgSWRlbnRpZmllci4NCgkgKg0KCSAqIEBzaW5jZSA1LjAuMg0KCSAqLw0KCXVzZSBHdWlkOw0KDQoJLyoqDQoJICogVGhlIEl0ZW1zIENsYXNzLg0KCSAqDQoJICogQHZhciAgIEl0ZW1zDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHJvdGVjdGVkIEl0ZW1zICRpdGVtczsNCg0KCS8qKg0KCSAqIFRhYmxlIE5hbWUNCgkgKg0KCSAqIEB2YXIgICAgc3RyaW5nDQoJICogQHNpbmNlIDMuMi4xDQoJICovDQoJcHJvdGVjdGVkIHN0cmluZyAkdGFibGU7DQoNCgkvKioNCgkgKiBDb25zdHJ1Y3Rvci4NCgkgKg0KCSAqIEBwYXJhbSBJdGVtcyAgICAgICAkaXRlbXMgICBUaGUgSXRlbXMgQ2xhc3MuDQoJICogQHBhcmFtIHN0cmluZ3xudWxsICR0YWJsZSAgIFRoZSB0YWJsZSBuYW1lLg0KCSAqDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KEl0ZW1zICRpdGVtcywgP3N0cmluZyAkdGFibGUgPSBudWxsKQ0KCXsNCgkJJHRoaXMtPml0ZW1zID0gJGl0ZW1zOw0KCQlpZiAoJHRhYmxlICE9PSBudWxsKQ0KCQl7DQoJCQkkdGhpcy0+dGFibGUgPSAkdGFibGU7DQoJCX0NCgl9DQoNCgkvKioNCgkgKiBTZXQgdGhlIGN1cnJlbnQgYWN0aXZlIHRhYmxlDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICR0YWJsZSBUaGUgdGFibGUgdGhhdCBzaG91bGQgYmUgYWN0aXZlDQoJICoNCgkgKiBAcmV0dXJuIHNlbGYNCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gdGFibGUoc3RyaW5nICR0YWJsZSk6IHNlbGYNCgl7DQoJCSR0aGlzLT50YWJsZSA9ICR0YWJsZTsNCg0KCQlyZXR1cm4gJHRoaXM7DQoJfQ0KDQoJLyoqDQoJICogR2V0IGEgc3ViZm9ybSBpdGVtcw0KCSAqDQoJICogQHBhcmFtIHN0cmluZyAgICRsaW5rVmFsdWUgIFRoZSB2YWx1ZSBvZiB0aGUgbGluayBrZXkgaW4gY2hpbGQgdGFibGUuDQoJICogQHBhcmFtIHN0cmluZyAgICRsaW5rS2V5ICAgIFRoZSBsaW5rIGtleSBvbiB3aGljaCB0aGUgaXRlbXMgd2hlcmUgbGlua2VkIGluIHRoZSBjaGlsZCB0YWJsZS4NCgkgKiBAcGFyYW0gc3RyaW5nICAgJGZpZWxkICAgICAgVGhlIHBhcmVudCBmaWVsZCBuYW1lIG9mIHRoZSBzdWJmb3JtIGluIHRoZSBwYXJlbnQgdmlldy4NCgkgKiBAcGFyYW0gYXJyYXkgICAgJGdldCAgICAgICAgVGhlIGFycmF5IFNFVCBvZiB0aGUga2V5cyBvZiBlYWNoIHJvdyBpbiB0aGUgc3ViZm9ybS4NCgkgKiBAcGFyYW0gYm9vbCAgICAgJG11bHRpICAgICAgVGhlIHN3aXRjaCB0byByZXR1cm4gYSBtdWx0aXBsZSBzZXQuDQoJICoNCgkgKiBAcmV0dXJuIGFycmF5fG51bGwgICBUaGUgc3ViZm9ybQ0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBnZXQoc3RyaW5nICRsaW5rVmFsdWUsIHN0cmluZyAkbGlua0tleSwgc3RyaW5nICRmaWVsZCwgYXJyYXkgJGdldCwgYm9vbCAkbXVsdGkgPSB0cnVlKTogP2FycmF5DQoJew0KCQlpZiAoKCRpdGVtcyA9ICR0aGlzLT5pdGVtcy0+dGFibGUoJHRoaXMtPmdldFRhYmxlKCkpLT5nZXQoWyRsaW5rVmFsdWVdLCAkbGlua0tleSkpICE9PSBudWxsKQ0KCQl7DQoJCQlyZXR1cm4gJHRoaXMtPmNvbnZlcnRlcigkaXRlbXMsICRnZXQsICRmaWVsZCwgJG11bHRpKTsNCgkJfQ0KCQlyZXR1cm4gbnVsbDsNCgl9DQoNCgkvKioNCgkgKiBTZXQgYSBzdWJmb3JtIGl0ZW1zDQoJICoNCgkgKiBAcGFyYW0gbWl4ZWQgICAgJGl0ZW1zICAgICAgVGhlIGxpc3Qgb2YgaXRlbXMgZnJvbSB0aGUgc3ViZm9ybSB0byBzZXQNCgkgKiBAcGFyYW0gc3RyaW5nICAgJGluZGV4S2V5ICAgVGhlIGluZGV4IGtleSBvbiB3aGljaCB0aGUgaXRlbXMgc2hvdWxkIGJlIG9ic2VydmVkIGFzIGl0IHJlbGF0ZXMgdG8gaW5zZXJ0L3VwZGF0ZS9kZWxldGUuDQoJICogQHBhcmFtIHN0cmluZyAgICRsaW5rS2V5ICAgIFRoZSBsaW5rIGtleSBvbiB3aGljaCB0aGUgaXRlbXMgd2hlcmUgbGlua2VkIGluIHRoZSBjaGlsZCB0YWJsZS4NCgkgKiBAcGFyYW0gc3RyaW5nICAgJGxpbmtWYWx1ZSAgVGhlIHZhbHVlIG9mIHRoZSBsaW5rIGtleSBpbiBjaGlsZCB0YWJsZS4NCgkgKg0KCSAqIEByZXR1cm4gYm9vbA0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBzZXQobWl4ZWQgJGl0ZW1zLCBzdHJpbmcgJGluZGV4S2V5LCBzdHJpbmcgJGxpbmtLZXksIHN0cmluZyAkbGlua1ZhbHVlKTogYm9vbA0KCXsNCgkJJGl0ZW1zID0gJHRoaXMtPnByb2Nlc3MoJGl0ZW1zLCAkaW5kZXhLZXksICRsaW5rS2V5LCAkbGlua1ZhbHVlKTsNCg0KCQkkdGhpcy0+cHVyZ2UoJGl0ZW1zLCAkaW5kZXhLZXksICRsaW5rS2V5LCAkbGlua1ZhbHVlKTsNCg0KCQlpZiAoZW1wdHkoJGl0ZW1zKSkNCgkJew0KCQkJcmV0dXJuIHRydWU7IC8vIG5vdGhpbmcgdG8gc2V0IChhbHJlYWR5IHB1cmdlZCkNCgkJfQ0KDQoJCXJldHVybiAkdGhpcy0+aXRlbXMtPnRhYmxlKCR0aGlzLT5nZXRUYWJsZSgpKS0+c2V0KA0KCQkJJGl0ZW1zLCAkaW5kZXhLZXkNCgkJKTsNCgl9DQoNCgkvKioNCgkgKiBHZXQgdGhlIGN1cnJlbnQgYWN0aXZlIHRhYmxlDQoJICoNCgkgKiBAcmV0dXJuICBzdHJpbmcNCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZ2V0VGFibGUoKTogc3RyaW5nDQoJew0KCQlyZXR1cm4gJHRoaXMtPnRhYmxlOw0KCX0NCg0KCS8qKg0KCSAqIFB1cmdlIGFsbCBpdGVtcyBubyBsb25nZXIgaW4gc3ViZm9ybQ0KCSAqDQoJICogQHBhcmFtIGFycmF5ICAgICRpdGVtcyAgICAgIFRoZSBsaXN0IG9mIGl0ZW1zIHRvIHNldC4NCgkgKiBAcGFyYW0gc3RyaW5nICAgJGluZGV4S2V5ICAgVGhlIGluZGV4IGtleSBvbiB3aGljaCB0aGUgaXRlbXMgc2hvdWxkIGJlIG9ic2VydmVkIGFzIGl0IHJlbGF0ZXMgdG8gaW5zZXJ0L3VwZGF0ZS9kZWxldGUNCgkgKiBAcGFyYW0gc3RyaW5nICAgJGxpbmtLZXkgICAgVGhlIGxpbmsga2V5IG9uIHdoaWNoIHRoZSBpdGVtcyB3aGVyZSBsaW5rZWQgaW4gdGhlIGNoaWxkIHRhYmxlLg0KCSAqIEBwYXJhbSBzdHJpbmcgICAkbGlua1ZhbHVlICBUaGUgdmFsdWUgb2YgdGhlIGxpbmsga2V5IGluIGNoaWxkIHRhYmxlLg0KCSAqDQoJICogQHJldHVybiB2b2lkDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHJpdmF0ZSBmdW5jdGlvbiBwdXJnZShhcnJheSAkaXRlbXMsIHN0cmluZyAkaW5kZXhLZXksIHN0cmluZyAkbGlua0tleSwgc3RyaW5nICRsaW5rVmFsdWUpOiB2b2lkDQoJew0KCQkvLyBHZXQgdGhlIGN1cnJlbnQgaW5kZXggdmFsdWVzIGZyb20gdGhlIGRhdGFiYXNlDQoJCSRjdXJyZW50SW5kZXhWYWx1ZXMgPSAkdGhpcy0+aXRlbXMtPnRhYmxlKCR0aGlzLT5nZXRUYWJsZSgpKS0+dmFsdWVzKFskbGlua1ZhbHVlXSwgJGxpbmtLZXksICRpbmRleEtleSk7DQoNCgkJaWYgKCRjdXJyZW50SW5kZXhWYWx1ZXMgIT09IG51bGwpDQoJCXsNCgkJCS8vIENoZWNrIGlmIHRoZSBpdGVtcyBhcnJheSBpcyBlbXB0eQ0KCQkJaWYgKGVtcHR5KCRpdGVtcykpDQoJCQl7DQoJCQkJLy8gU2V0IGFjdGl2ZUluZGV4VmFsdWVzIHRvIGFuIGVtcHR5IGFycmF5IGlmIGl0ZW1zIGlzIGVtcHR5DQoJCQkJJGFjdGl2ZUluZGV4VmFsdWVzID0gW107DQoJCQl9DQoJCQllbHNlDQoJCQl7DQoJCQkJLy8gRXh0cmFjdCB0aGUgaW5kZXggdmFsdWVzIGZyb20gdGhlIGl0ZW1zIGFycmF5DQoJCQkJJGFjdGl2ZUluZGV4VmFsdWVzID0gYXJyYXlfdmFsdWVzKGFycmF5X21hcChmdW5jdGlvbigkaXRlbSkgdXNlICgkaW5kZXhLZXkpIHsNCgkJCQkJcmV0dXJuICRpdGVtWyRpbmRleEtleV0gPz8gbnVsbDsNCgkJCQl9LCAkaXRlbXMpKTsNCgkJCX0NCg0KCQkJLy8gRmluZCB0aGUgaW5kZXggdmFsdWVzIHRoYXQgYXJlIG5vIGxvbmdlciBpbiB0aGUgaXRlbXMgYXJyYXkNCgkJCSRpbmFjdGl2ZUluZGV4VmFsdWVzID0gYXJyYXlfZGlmZigkY3VycmVudEluZGV4VmFsdWVzLCAkYWN0aXZlSW5kZXhWYWx1ZXMpOw0KDQoJCQkvLyBEZWxldGUgdGhlIGluYWN0aXZlIGluZGV4IHZhbHVlcw0KCQkJaWYgKCFlbXB0eSgkaW5hY3RpdmVJbmRleFZhbHVlcykpDQoJCQl7DQoJCQkJJHRoaXMtPml0ZW1zLT50YWJsZSgkdGhpcy0+Z2V0VGFibGUoKSktPmRlbGV0ZSgkaW5hY3RpdmVJbmRleFZhbHVlcywgJGluZGV4S2V5KTsNCgkJCX0NCgkJfQ0KCX0NCg0KCS8qKg0KCSAqIEZpbHRlcnMgdGhlIHNwZWNpZmllZCBrZXlzIGZyb20gYW4gYXJyYXkgb2Ygb2JqZWN0cyBvciBhcnJheXMsIGNvbnZlcnRzIHRoZW0gdG8gYXJyYXlzLA0KCSAqIGFuZCBzZXRzIHRoZW0gYnkgYXNzb2NpYXRpb24gd2l0aCBhIHNwZWNpZmllZCBrZXkgYW5kIGFuIGluY3JlbWVudGluZyBpbnRlZ2VyLg0KCSAqDQoJICogQHBhcmFtIGFycmF5ICAkaXRlbXMgIEFycmF5IG9mIG9iamVjdHMgb3IgYXJyYXlzIHRvIGJlIGZpbHRlcmVkLg0KCSAqIEBwYXJhbSBhcnJheSAgJGtleVNldCBBcnJheSBvZiBrZXlzIHRvIHJldGFpbiBpbiBlYWNoIGl0ZW0uDQoJICogQHBhcmFtIHN0cmluZyAkZmllbGQgIFRoZSBmaWVsZCBwcmVmaXggZm9yIHRoZSByZXN1bHRpbmcgYXNzb2NpYXRpdmUgYXJyYXkuDQoJICogQHBhcmFtIGJvb2wgICAkbXVsdGkgIFRoZSBzd2l0Y2ggdG8gcmV0dXJuIGEgbXVsdGlwbGUgc2V0Lg0KCSAqDQoJICogQHJldHVybiBhcnJheSBBcnJheSBvZiBmaWx0ZXJlZCBhcnJheXMgc2V0IGJ5IGFzc29jaWF0aW9uLg0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqLw0KCXByaXZhdGUgZnVuY3Rpb24gY29udmVydGVyKGFycmF5ICRpdGVtcywgYXJyYXkgJGtleVNldCwgc3RyaW5nICRmaWVsZCwgYm9vbCAkbXVsdGkpOiBhcnJheQ0KCXsNCgkJLyoqDQoJCSAqIEZpbHRlcnMga2V5cyBmb3IgYSBzaW5nbGUgaXRlbSBhbmQgY29udmVydHMgaXQgdG8gYW4gYXJyYXkuDQoJCSAqDQoJCSAqIEBwYXJhbSBvYmplY3R8YXJyYXkgJGl0ZW0gICBUaGUgaXRlbSB0byBmaWx0ZXIuDQoJCSAqIEBwYXJhbSBhcnJheSAgICAgICAgJGtleVNldCBUaGUga2V5cyB0byByZXRhaW4uDQoJCSAqDQoJCSAqIEByZXR1cm4gYXJyYXkgVGhlIGZpbHRlcmVkIGFycmF5Lg0KCQkgKiBAc2luY2UgMy4yLjINCgkJICovDQoJCSRmaWx0ZXJLZXlzID0gZnVuY3Rpb24gKCRpdGVtLCBhcnJheSAka2V5U2V0KSB7DQoJCQkkZmlsdGVyZWRBcnJheSA9IFtdOw0KCQkJZm9yZWFjaCAoJGtleVNldCBhcyAka2V5KSB7DQoJCQkJaWYgKGlzX29iamVjdCgkaXRlbSkgJiYgcHJvcGVydHlfZXhpc3RzKCRpdGVtLCAka2V5KSkgew0KCQkJCQkkZmlsdGVyZWRBcnJheVska2V5XSA9ICRpdGVtLT57JGtleX07DQoJCQkJfSBlbHNlaWYgKGlzX2FycmF5KCRpdGVtKSAmJiBhcnJheV9rZXlfZXhpc3RzKCRrZXksICRpdGVtKSkgew0KCQkJCQkkZmlsdGVyZWRBcnJheVska2V5XSA9ICRpdGVtWyRrZXldOw0KCQkJCX0NCgkJCX0NCgkJCXJldHVybiAkZmlsdGVyZWRBcnJheTsNCgkJfTsNCg0KCQkkcmVzdWx0ID0gW107DQoJCWZvcmVhY2ggKCRpdGVtcyBhcyAkaW5kZXggPT4gJGl0ZW0pDQoJCXsNCgkJCWlmICghJG11bHRpKQ0KCQkJew0KCQkJCXJldHVybiAkZmlsdGVyS2V5cygkaXRlbSwgJGtleVNldCk7DQoJCQl9DQoJCQkkZmlsdGVyZWRBcnJheSA9ICRmaWx0ZXJLZXlzKCRpdGVtLCAka2V5U2V0KTsNCgkJCSRyZXN1bHRbJGZpZWxkIC4gJGluZGV4XSA9ICRmaWx0ZXJlZEFycmF5Ow0KCQl9DQoNCgkJcmV0dXJuICRyZXN1bHQ7DQoJfQ0KDQoJLyoqDQoJICogUHJvY2Vzc2VzIGFuIGFycmF5IG9mIGFycmF5cyBiYXNlZCBvbiB0aGUgc3BlY2lmaWVkIGtleS4NCgkgKg0KCSAqIEBwYXJhbSBtaXhlZCAgICAkaXRlbXMgICAgICBBcnJheSBvZiBhcnJheXMgdG8gYmUgcHJvY2Vzc2VkLg0KCSAqIEBwYXJhbSBzdHJpbmcgICAkaW5kZXhLZXkgICBUaGUgaW5kZXgga2V5IG9uIHdoaWNoIHRoZSBpdGVtcyBzaG91bGQgYmUgb2JzZXJ2ZWQgYXMgaXQgcmVsYXRlcyB0byBpbnNlcnQvdXBkYXRlL2RlbGV0ZQ0KCSAqIEBwYXJhbSBzdHJpbmcgICAkbGlua0tleSAgICBUaGUgbGluayBrZXkgb24gd2hpY2ggdGhlIGl0ZW1zIHdoZXJlIGxpbmtlZCBpbiB0aGUgY2hpbGQgdGFibGUuDQoJICogQHBhcmFtIHN0cmluZyAgICRsaW5rVmFsdWUgIFRoZSB2YWx1ZSBvZiB0aGUgbGluayBrZXkgaW4gY2hpbGQgdGFibGUuDQoJICoNCgkgKiBAcmV0dXJuIGFycmF5ICBUaGUgcHJvY2Vzc2VkIGFycmF5IG9mIGFycmF5cy4NCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwcml2YXRlIGZ1bmN0aW9uIHByb2Nlc3MoJGl0ZW1zLCBzdHJpbmcgJGluZGV4S2V5LCBzdHJpbmcgJGxpbmtLZXksIHN0cmluZyAkbGlua1ZhbHVlKTogYXJyYXkNCgl7DQoJCSRpdGVtcyA9IGlzX2FycmF5KCRpdGVtcykgPyAkaXRlbXMgOiBbXTsNCgkJaWYgKCRpdGVtcyAhPT0gW10gJiYgISR0aGlzLT5pc011bHRpcGxlU2V0cygkaXRlbXMpKQ0KCQl7DQoJCQkkaXRlbXMgPSBbJGl0ZW1zXTsNCgkJfQ0KDQoJCWZvcmVhY2ggKCRpdGVtcyBhcyAmJGl0ZW0pDQoJCXsNCgkJCSR2YWx1ZSA9ICRpdGVtWyRpbmRleEtleV0gPz8gJyc7DQoJCQlzd2l0Y2ggKCRpbmRleEtleSkgew0KCQkJCWNhc2UgJ2d1aWQnOg0KCQkJCQlpZiAoZW1wdHkoJHZhbHVlKSkNCgkJCQkJew0KCQkJCQkJLy8gc2V0IElOREVYDQoJCQkJCQkkaXRlbVskaW5kZXhLZXldID0gJHRoaXMtPmdldEd1aWQoJGluZGV4S2V5KTsNCgkJCQkJfQ0KCQkJCQlicmVhazsNCgkJCQljYXNlICdpZCc6DQoJCQkJCWlmIChlbXB0eSgkdmFsdWUpKQ0KCQkJCQl7DQoJCQkJCQkkaXRlbVskaW5kZXhLZXldID0gMDsNCgkJCQkJfQ0KCQkJCQlicmVhazsNCgkJCQlkZWZhdWx0Og0KCQkJCQkvLyBObyBhY3Rpb24gZm9yIG90aGVyIGtleXMgaWYgZW1wdHkNCgkJCQkJYnJlYWs7DQoJCQl9DQoJCQkvLyBzZXQgTElOSw0KCQkJJGl0ZW1bJGxpbmtLZXldID0gJGxpbmtWYWx1ZTsNCgkJfQ0KDQoJCXJldHVybiBhcnJheV92YWx1ZXMoJGl0ZW1zKTsNCgl9DQoNCgkvKioNCgkgKiBGdW5jdGlvbiB0byBkZXRlcm1pbmUgaWYgdGhlIGFycmF5IGNvbnNpc3RzIG9mIG11bHRpcGxlIGRhdGEgc2V0cyAoYXJyYXlzIG9mIGFycmF5cykuDQoJICogDQoJICogQHBhcmFtIGFycmF5ICRhcnJheSBUaGUgaW5wdXQgYXJyYXkgdG8gYmUgY2hlY2tlZC4NCgkgKiANCgkgKiBAcmV0dXJuIGJvb2wgVHJ1ZSBpZiB0aGUgYXJyYXkgY29udGFpbnMgb25seSBhcnJheXMgKG11bHRpcGxlIGRhdGEgc2V0cyksIGZhbHNlIG90aGVyd2lzZS4NCgkgKiBAc2luY2UgIDUuMC4yDQoJICovDQoJcHJpdmF0ZSBmdW5jdGlvbiBpc011bHRpcGxlU2V0cyhhcnJheSAkYXJyYXkpOiBib29sDQoJew0KCQlmb3JlYWNoICgkYXJyYXkgYXMgJGVsZW1lbnQpDQoJCXsNCgkJCS8vIEFzIHNvb24gYXMgd2UgZmluZCBhIG5vbi1hcnJheSBlbGVtZW50LCByZXR1cm4gZmFsc2UNCgkJCWlmICghaXNfYXJyYXkoJGVsZW1lbnQpKQ0KCQkJew0KCQkJCXJldHVybiBmYWxzZTsNCgkJCX0NCgkJfQ0KDQoJCS8vIElmIGFsbCBlbGVtZW50cyBhcmUgYXJyYXlzLCByZXR1cm4gdHJ1ZQ0KCQlyZXR1cm4gdHJ1ZTsNCgl9', '{}', '{}', '', 1, '2024-06-18 18:13:48', 37, '', 1), +(743, '68a41264-64c0-441a-a3d8-8a5e557b1883', 'VDM.Interfaces.Data.UpdateInterface', 'UpdateInterface', 'interface', 'Data Update\r\n\r\n@since 3.2.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\Interfaces.Data.UpdateInterface', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIFNldCB0aGUgY3VycmVudCBhY3RpdmUgdGFibGUNCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmd8bnVsbCAkdGFibGUgVGhlIHRhYmxlIHRoYXQgc2hvdWxkIGJlIGFjdGl2ZQ0KCSAqDQoJICogQHJldHVybiBzZWxmDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIHRhYmxlKD9zdHJpbmcgJHRhYmxlKTogc2VsZjsNCg0KCS8qKg0KCSAqIFVwZGF0ZSBhIHZhbHVlIHRvIGEgZ2l2ZW4gdGFibGUNCgkgKiAgICAgICAgICBFeGFtcGxlOiAkdGhpcy0+dmFsdWUoVmFsdWUsICd2YWx1ZV9rZXknLCAnR1VJRCcpOw0KCSAqDQoJICogQHBhcmFtICAgbWl4ZWQgICAgICR2YWx1ZSAgICAgIFRoZSBmaWVsZCB2YWx1ZQ0KCSAqIEBwYXJhbSAgIHN0cmluZyAgICAkZmllbGQgICAgICBUaGUgZmllbGQga2V5DQoJICogQHBhcmFtICAgc3RyaW5nICAgICRrZXlWYWx1ZSAgIFRoZSBrZXkgdmFsdWUNCgkgKiBAcGFyYW0gICBzdHJpbmcgICAgJGtleSAgICAgICAgVGhlIGtleSBuYW1lDQoJICoNCgkgKiBAcmV0dXJuICBib29sDQoJICogQHNpbmNlIDMuMi4wDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIHZhbHVlKCR2YWx1ZSwgc3RyaW5nICRmaWVsZCwgc3RyaW5nICRrZXlWYWx1ZSwgc3RyaW5nICRrZXkgPSAnZ3VpZCcpOiBib29sOw0KDQoJLyoqDQoJICogVXBkYXRlIHNpbmdsZSByb3cgd2l0aCBtdWx0aXBsZSB2YWx1ZXMgdG8gYSBnaXZlbiB0YWJsZQ0KCSAqICAgICAgICAgIEV4YW1wbGU6ICR0aGlzLT5pdGVtKEFycmF5KTsNCgkgKg0KCSAqIEBwYXJhbSAgIGFycmF5ICAgICRpdGVtICAgVGhlIGl0ZW0gdG8gc2F2ZQ0KCSAqIEBwYXJhbSAgIHN0cmluZyAgICRrZXkgICAgVGhlIGtleSBuYW1lDQoJICoNCgkgKiBAcmV0dXJuICBib29sDQoJICogQHNpbmNlIDMuMi4wDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIHJvdyhhcnJheSAkaXRlbSwgc3RyaW5nICRrZXkgPSAnZ3VpZCcpOiBib29sOw0KDQoJLyoqDQoJICogVXBkYXRlIG11bHRpcGxlIHJvd3MgdG8gYSBnaXZlbiB0YWJsZQ0KCSAqICAgICAgICAgIEV4YW1wbGU6ICR0aGlzLT5pdGVtcyhBcnJheSk7DQoJICoNCgkgKiBAcGFyYW0gICBhcnJheXxudWxsICAgJGl0ZW1zICBUaGUgaXRlbXMgdXBkYXRlZCBpbiBkYXRhYmFzZSAoYXJyYXkgb2YgYXJyYXlzKQ0KCSAqIEBwYXJhbSAgIHN0cmluZyAgICAgICAka2V5ICAgIFRoZSBrZXkgbmFtZQ0KCSAqDQoJICogQHJldHVybiAgYm9vbA0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiByb3dzKD9hcnJheSAkaXRlbXMsIHN0cmluZyAka2V5ID0gJ2d1aWQnKTogYm9vbDsNCg0KCS8qKg0KCSAqIFVwZGF0ZSBzaW5nbGUgaXRlbSB3aXRoIG11bHRpcGxlIHZhbHVlcyB0byBhIGdpdmVuIHRhYmxlDQoJICogICAgICAgICAgRXhhbXBsZTogJHRoaXMtPml0ZW0oT2JqZWN0KTsNCgkgKg0KCSAqIEBwYXJhbSAgIG9iamVjdCAgICAkaXRlbSAgIFRoZSBpdGVtIHRvIHNhdmUNCgkgKiBAcGFyYW0gICBzdHJpbmcgICAgJGtleSAgICBUaGUga2V5IG5hbWUNCgkgKg0KCSAqIEByZXR1cm4gIGJvb2wNCgkgKiBAc2luY2UgMy4yLjANCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gaXRlbShvYmplY3QgJGl0ZW0sIHN0cmluZyAka2V5ID0gJ2d1aWQnKTogYm9vbDsNCg0KCS8qKg0KCSAqIFVwZGF0ZSBtdWx0aXBsZSBpdGVtcyB0byBhIGdpdmVuIHRhYmxlDQoJICogICAgICAgICAgRXhhbXBsZTogJHRoaXMtPml0ZW1zKEFycmF5KTsNCgkgKg0KCSAqIEBwYXJhbSAgIGFycmF5fG51bGwgICAkaXRlbXMgIFRoZSBpdGVtcyB1cGRhdGVkIGluIGRhdGFiYXNlIChhcnJheSBvZiBvYmplY3RzKQ0KCSAqIEBwYXJhbSAgIHN0cmluZyAgICAgICAka2V5ICAgIFRoZSBrZXkgbmFtZQ0KCSAqDQoJICogQHJldHVybiAgYm9vbA0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBpdGVtcyg/YXJyYXkgJGl0ZW1zLCBzdHJpbmcgJGtleSA9ICdndWlkJyk6IGJvb2w7DQoNCgkvKioNCgkgKiBHZXQgdGhlIGN1cnJlbnQgYWN0aXZlIHRhYmxlDQoJICoNCgkgKiBAcmV0dXJuICBzdHJpbmcNCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZ2V0VGFibGUoKTogc3RyaW5nOw==', '{}', '{}', '', 1, '2024-06-19 09:13:22', 4, '', 1), +(744, '03bbc8d5-86e8-4d2f-ae5f-0d44a4f7af13', 'VDM.Interfaces.Data.InsertInterface', 'InsertInterface', 'interface', 'Data Insert\r\n\r\n@since 3.2.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\Interfaces.Data.InsertInterface', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIFNldCB0aGUgY3VycmVudCBhY3RpdmUgdGFibGUNCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmd8bnVsbCAkdGFibGUgVGhlIHRhYmxlIHRoYXQgc2hvdWxkIGJlIGFjdGl2ZQ0KCSAqDQoJICogQHJldHVybiBzZWxmDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIHRhYmxlKD9zdHJpbmcgJHRhYmxlKTogc2VsZjsNCg0KCS8qKg0KCSAqIEluc2VydCBhIHZhbHVlIHRvIGEgZ2l2ZW4gdGFibGUNCgkgKiAgICAgICAgICBFeGFtcGxlOiAkdGhpcy0+dmFsdWUoVmFsdWUsICd2YWx1ZV9rZXknLCAnR1VJRCcpOw0KCSAqDQoJICogQHBhcmFtICAgbWl4ZWQgICAgICR2YWx1ZSAgICAgIFRoZSBmaWVsZCB2YWx1ZQ0KCSAqIEBwYXJhbSAgIHN0cmluZyAgICAkZmllbGQgICAgICBUaGUgZmllbGQga2V5DQoJICogQHBhcmFtICAgc3RyaW5nICAgICRrZXlWYWx1ZSAgIFRoZSBrZXkgdmFsdWUNCgkgKiBAcGFyYW0gICBzdHJpbmcgICAgJGtleSAgICAgICAgVGhlIGtleSBuYW1lDQoJICoNCgkgKiBAcmV0dXJuICBib29sDQoJICogQHNpbmNlIDMuMi4wDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIHZhbHVlKCR2YWx1ZSwgc3RyaW5nICRmaWVsZCwgc3RyaW5nICRrZXlWYWx1ZSwgc3RyaW5nICRrZXkgPSAnZ3VpZCcpOiBib29sOw0KDQoJLyoqDQoJICogSW5zZXJ0IHNpbmdsZSByb3cgd2l0aCBtdWx0aXBsZSB2YWx1ZXMgdG8gYSBnaXZlbiB0YWJsZQ0KCSAqICAgICAgICAgIEV4YW1wbGU6ICR0aGlzLT5pdGVtKEFycmF5KTsNCgkgKg0KCSAqIEBwYXJhbSAgIGFycmF5ICAgICRpdGVtICAgVGhlIGl0ZW0gdG8gc2F2ZQ0KCSAqDQoJICogQHJldHVybiAgYm9vbA0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiByb3coYXJyYXkgJGl0ZW0pOiBib29sOw0KDQoJLyoqDQoJICogSW5zZXJ0IG11bHRpcGxlIHJvd3MgdG8gYSBnaXZlbiB0YWJsZQ0KCSAqICAgICAgICAgIEV4YW1wbGU6ICR0aGlzLT5pdGVtcyhBcnJheSk7DQoJICoNCgkgKiBAcGFyYW0gICBhcnJheXxudWxsICAgJGl0ZW1zICBUaGUgaXRlbXMgdXBkYXRlZCBpbiBkYXRhYmFzZSAoYXJyYXkgb2YgYXJyYXlzKQ0KCSAqDQoJICogQHJldHVybiAgYm9vbA0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiByb3dzKD9hcnJheSAkaXRlbXMpOiBib29sOw0KDQoJLyoqDQoJICogSW5zZXJ0IHNpbmdsZSBpdGVtIHdpdGggbXVsdGlwbGUgdmFsdWVzIHRvIGEgZ2l2ZW4gdGFibGUNCgkgKiAgICAgICAgICBFeGFtcGxlOiAkdGhpcy0+aXRlbShPYmplY3QpOw0KCSAqDQoJICogQHBhcmFtICAgb2JqZWN0ICAgICRpdGVtICAgVGhlIGl0ZW0gdG8gc2F2ZQ0KCSAqDQoJICogQHJldHVybiAgYm9vbA0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBpdGVtKG9iamVjdCAkaXRlbSk6IGJvb2w7DQoNCgkvKioNCgkgKiBJbnNlcnQgbXVsdGlwbGUgaXRlbXMgdG8gYSBnaXZlbiB0YWJsZQ0KCSAqICAgICAgICAgIEV4YW1wbGU6ICR0aGlzLT5pdGVtcyhBcnJheSk7DQoJICoNCgkgKiBAcGFyYW0gICBhcnJheXxudWxsICAgJGl0ZW1zICBUaGUgaXRlbXMgdXBkYXRlZCBpbiBkYXRhYmFzZSAoYXJyYXkgb2Ygb2JqZWN0cykNCgkgKg0KCSAqIEByZXR1cm4gIGJvb2wNCgkgKiBAc2luY2UgMy4yLjANCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gaXRlbXMoP2FycmF5ICRpdGVtcyk6IGJvb2w7DQoNCgkvKioNCgkgKiBHZXQgdGhlIGN1cnJlbnQgYWN0aXZlIHRhYmxlDQoJICoNCgkgKiBAcmV0dXJuICBzdHJpbmcNCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZ2V0VGFibGUoKTogc3RyaW5nOw==', '{}', '{}', '', 1, '2024-06-19 09:15:05', 3, '', 1), +(745, 'c548640c-a461-4424-9ac5-8dfb5ed06d8d', 'VDM.Interfaces.Data.LoadInterface', 'LoadInterface', 'interface', 'Data Load Interface\r\n\r\n@since 3.2.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\Interfaces.Data.LoadInterface', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIFNldCB0aGUgY3VycmVudCBhY3RpdmUgdGFibGUNCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmd8bnVsbCAkdGFibGUgVGhlIHRhYmxlIHRoYXQgc2hvdWxkIGJlIGFjdGl2ZQ0KCSAqDQoJICogQHJldHVybiBzZWxmDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIHRhYmxlKD9zdHJpbmcgJHRhYmxlKTogc2VsZjsNCg0KCS8qKg0KCSAqIEdldCBhIHZhbHVlIGZyb20gYSBnaXZlbiB0YWJsZQ0KCSAqICAgICAgICAgIEV4YW1wbGU6ICR0aGlzLT52YWx1ZSgNCgkgKiAgICAgICAgICAgICAgICAgICAgICAgIFsNCgkgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICdndWlkJyA9PiAneHh4eHh4eHgteHh4eC14eHh4LXh4eHgteHh4eHh4eHh4eHh4Jw0KCSAqICAgICAgICAgICAgICAgICAgICAgICAgXSwgJ3ZhbHVlX2tleScNCgkgKiAgICAgICAgICAgICAgICAgICAgKTsNCgkgKg0KCSAqIEBwYXJhbSAgIGFycmF5ICAgICAgJGtleXMgICAgICBUaGUgaXRlbSBrZXlzDQoJICogQHBhcmFtICAgc3RyaW5nICAgICAkZmllbGQgICAgIFRoZSBmaWVsZCBrZXkNCgkgKg0KCSAqIEByZXR1cm4gIG1peGVkDQoJICogQHNpbmNlIDIuMC4xDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIHZhbHVlKGFycmF5ICRrZXlzLCBzdHJpbmcgJGZpZWxkKTsNCg0KCS8qKg0KCSAqIEdldCBhIHZhbHVlIGZyb20gbXVsdGlwbGUgcm93cyBmcm9tIGEgZ2l2ZW4gdGFibGUNCgkgKiAgICAgICAgICBFeGFtcGxlOiAkdGhpcy0+dmFsdWVzKA0KCSAqICAgICAgICAgICAgICAgICAgICAgICAgWw0KCSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2d1aWQnID0+ICd4eHh4eHh4eC14eHh4LXh4eHgteHh4eC14eHh4eHh4eHh4eHgnDQoJICogICAgICAgICAgICAgICAgICAgICAgICBdLCAndmFsdWVfa2V5Jw0KCSAqICAgICAgICAgICAgICAgICAgICApOw0KCSAqDQoJICogQHBhcmFtICAgYXJyYXkgICAgICAka2V5cyAgICAgIFRoZSBpdGVtIGtleXMNCgkgKiBAcGFyYW0gICBzdHJpbmcgICAgICRmaWVsZCAgICAgVGhlIGZpZWxkIGtleQ0KCSAqDQoJICogQHJldHVybiAgYXJyYXl8bnVsbA0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiB2YWx1ZXMoYXJyYXkgJGtleXMsIHN0cmluZyAkZmllbGQpOiA/YXJyYXk7DQoNCgkvKioNCgkgKiBHZXQgdmFsdWVzIGZyb20gYSBnaXZlbiB0YWJsZQ0KCSAqICAgICAgICAgIEV4YW1wbGU6ICR0aGlzLT5pdGVtKA0KCSAqICAgICAgICAgICAgICAgICAgICAgICAgWw0KCSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2d1aWQnID0+ICd4eHh4eHh4eC14eHh4LXh4eHgteHh4eC14eHh4eHh4eHh4eHgnDQoJICogICAgICAgICAgICAgICAgICAgICAgICBdDQoJICogICAgICAgICAgICAgICAgICAgICk7DQoJICoNCgkgKiBAcGFyYW0gICBhcnJheSAgICAka2V5cyAgICAgIFRoZSBpdGVtIGtleXMNCgkgKg0KCSAqIEByZXR1cm4gIG9iamVjdHxudWxsDQoJICogQHNpbmNlIDIuMC4xDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGl0ZW0oYXJyYXkgJGtleXMpOiA/b2JqZWN0Ow0KIA0KCS8qKg0KCSAqIEdldCB2YWx1ZXMgZnJvbSBhIGdpdmVuIHRhYmxlDQoJICogICAgICAgICAgRXhhbXBsZTogJHRoaXMtPml0ZW1zKA0KCSAqICAgICAgICAgICAgICAgICAgICAgICAgWw0KCSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2d1aWQnID0+IFsNCgkgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdvcGVyYXRvcicgPT4gJ0lOJywNCgkgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICd2YWx1ZScgPT4gWycneHh4eHh4eHgteHh4eC14eHh4LXh4eHgteHh4eHh4eHh4eHh4JycsICcneHh4eHh4eHgteHh4eC14eHh4LXh4eHgteHh4eHh4eHh4eHh4JyddDQoJICogICAgICAgICAgICAgICAgICAgICAgICAgICBdDQoJICogICAgICAgICAgICAgICAgICAgICAgICBdDQoJICogICAgICAgICAgICAgICAgICAgICk7DQoJICogICAgICAgICAgRXhhbXBsZTogJHRoaXMtPml0ZW1zKCRrZXlzKTsNCgkgKg0KCSAqIEBwYXJhbSAgIGFycmF5ICAgICRrZXlzICAgIFRoZSBpdGVtIGtleXMNCgkgKg0KCSAqIEByZXR1cm4gIGFycmF5fG51bGwNCgkgKiBAc2luY2UgMi4wLjENCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gaXRlbXMoYXJyYXkgJGtleXMpOiA/YXJyYXk7DQoNCgkvKioNCgkgKiBHZXQgdGhlIGN1cnJlbnQgYWN0aXZlIHRhYmxlDQoJICoNCgkgKiBAcmV0dXJuICBzdHJpbmcNCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZ2V0VGFibGUoKTogc3RyaW5nOw==', '{}', '{}', '', 1, '2024-06-19 09:55:40', 6, '', 1), +(746, '008d111c-9d43-427c-8dd4-2653e8b74be8', 'VDM.Data.Action.Load', 'Load', 'class', 'Data Load (GUID)\r\n\r\n@since 3.2.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '{\"0\":\"c548640c-a461-4424-9ac5-8dfb5ed06d8d\"}', '', '[[[NamespacePrefix]]]\\Joomla\\Data.Action.Load', '', '{}', '{}', '', '{\"use_selection0\":{\"use\":\"8aef58c1-3f70-4bd4-b9e4-3f29fcd41cff\",\"as\":\"Model\"},\"use_selection1\":{\"use\":\"2ad31f74-f579-499d-b98b-c4f54fd615dd\",\"as\":\"Database\"}}', 'CS8qKg0KCSAqIE1vZGVsIExvYWQNCgkgKg0KCSAqIEB2YXIgICAgTW9kZWwNCgkgKiBAc2luY2UgMi4wLjENCgkgKi8NCglwcm90ZWN0ZWQgTW9kZWwgJG1vZGVsOw0KDQoJLyoqDQoJICogRGF0YWJhc2UgTG9hZA0KCSAqDQoJICogQHZhciAgICBEYXRhYmFzZQ0KCSAqIEBzaW5jZSAyLjAuMQ0KCSAqLw0KCXByb3RlY3RlZCBEYXRhYmFzZSAkbG9hZDsNCg0KCS8qKg0KCSAqIFRhYmxlIE5hbWUNCgkgKg0KCSAqIEB2YXIgICAgc3RyaW5nDQoJICogQHNpbmNlIDMuMi4xDQoJICovDQoJcHJvdGVjdGVkIHN0cmluZyAkdGFibGU7DQoNCgkvKioNCgkgKiBDb25zdHJ1Y3Rvcg0KCSAqDQoJICogQHBhcmFtIE1vZGVsICAgICAgICRtb2RlbCAgICAgVGhlIG1vZGVsIG9iamVjdC4NCgkgKiBAcGFyYW0gRGF0YWJhc2UgICAgJGxvYWQgICAgICBUaGUgZGF0YWJhc2Ugb2JqZWN0Lg0KCSAqIEBwYXJhbSBzdHJpbmd8bnVsbCAkdGFibGUgICAgIFRoZSB0YWJsZSBuYW1lLg0KCSAqDQoJICogQHNpbmNlIDIuMC4xDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KE1vZGVsICRtb2RlbCwgRGF0YWJhc2UgJGxvYWQsID9zdHJpbmcgJHRhYmxlID0gbnVsbCkNCgl7DQoJCSR0aGlzLT5tb2RlbCA9ICRtb2RlbDsNCgkJJHRoaXMtPmxvYWQgPSAkbG9hZDsNCgkJaWYgKCR0YWJsZSAhPT0gbnVsbCkNCgkJew0KCQkJJHRoaXMtPnRhYmxlID0gJHRhYmxlOw0KCQl9DQoJfQ0KDQoJLyoqDQoJICogU2V0IHRoZSBjdXJyZW50IGFjdGl2ZSB0YWJsZQ0KCSAqDQoJICogQHBhcmFtIHN0cmluZ3xudWxsICR0YWJsZSBUaGUgdGFibGUgdGhhdCBzaG91bGQgYmUgYWN0aXZlDQoJICoNCgkgKiBAcmV0dXJuIHNlbGYNCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gdGFibGUoP3N0cmluZyAkdGFibGUpOiBzZWxmDQoJew0KCQlpZiAoJHRhYmxlICE9PSBudWxsKQ0KCQl7DQoJCQkkdGhpcy0+dGFibGUgPSAkdGFibGU7DQoJCX0NCg0KCQlyZXR1cm4gJHRoaXM7DQoJfQ0KDQoJLyoqDQoJICogR2V0IGEgdmFsdWUgZnJvbSBhIGdpdmVuIHRhYmxlDQoJICogICAgICAgICAgRXhhbXBsZTogJHRoaXMtPnZhbHVlKA0KCSAqICAgICAgICAgICAgICAgICAgICAgICAgWw0KCSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2d1aWQnID0+ICd4eHh4eHh4eC14eHh4LXh4eHgteHh4eC14eHh4eHh4eHh4eHgnDQoJICogICAgICAgICAgICAgICAgICAgICAgICBdLCAndmFsdWVfa2V5Jw0KCSAqICAgICAgICAgICAgICAgICAgICApOw0KCSAqDQoJICogQHBhcmFtICAgYXJyYXkgICAgICAka2V5cyAgICAgIFRoZSBpdGVtIGtleXMNCgkgKiBAcGFyYW0gICBzdHJpbmcgICAgICRmaWVsZCAgICAgVGhlIGZpZWxkIGtleQ0KCSAqDQoJICogQHJldHVybiAgbWl4ZWQNCgkgKiBAc2luY2UgMi4wLjENCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gdmFsdWUoYXJyYXkgJGtleXMsIHN0cmluZyAkZmllbGQpDQoJew0KCQlyZXR1cm4gJHRoaXMtPm1vZGVsLT52YWx1ZSgNCgkJCSR0aGlzLT5sb2FkLT52YWx1ZSgNCgkJCQlbImEueyRmaWVsZH0iID0+ICRmaWVsZF0sDQoJCQkJWydhJyA9PiAkdGhpcy0+Z2V0VGFibGUoKV0sDQoJCQkJJHRoaXMtPnByZWZpeCgka2V5cykNCgkJCSksDQoJCQkkZmllbGQsDQoJCQkkdGhpcy0+Z2V0VGFibGUoKQ0KCQkpOw0KCX0NCg0KCS8qKg0KCSAqIEdldCBhIHZhbHVlIGZyb20gbXVsdGlwbGUgcm93cyBmcm9tIGEgZ2l2ZW4gdGFibGUNCgkgKiAgICAgICAgICBFeGFtcGxlOiAkdGhpcy0+dmFsdWVzKA0KCSAqICAgICAgICAgICAgICAgICAgICAgICAgWw0KCSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2d1aWQnID0+ICd4eHh4eHh4eC14eHh4LXh4eHgteHh4eC14eHh4eHh4eHh4eHgnDQoJICogICAgICAgICAgICAgICAgICAgICAgICBdLCAndmFsdWVfa2V5Jw0KCSAqICAgICAgICAgICAgICAgICAgICApOw0KCSAqDQoJICogQHBhcmFtICAgYXJyYXkgICAgICAka2V5cyAgICAgIFRoZSBpdGVtIGtleXMNCgkgKiBAcGFyYW0gICBzdHJpbmcgICAgICRmaWVsZCAgICAgVGhlIGZpZWxkIGtleQ0KCSAqDQoJICogQHJldHVybiAgYXJyYXl8bnVsbA0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiB2YWx1ZXMoYXJyYXkgJGtleXMsIHN0cmluZyAkZmllbGQpOiA/YXJyYXkNCgl7DQoJCXJldHVybiAkdGhpcy0+bW9kZWwtPnZhbHVlcygNCgkJCSR0aGlzLT5sb2FkLT52YWx1ZXMoDQoJCQkJWyJhLnskZmllbGR9IiA9PiAkZmllbGRdLA0KCQkJCVsnYScgPT4gJHRoaXMtPmdldFRhYmxlKCldLA0KCQkJCSR0aGlzLT5wcmVmaXgoJGtleXMpDQoJCQkpLA0KCQkJJGZpZWxkLA0KCQkJJHRoaXMtPmdldFRhYmxlKCkNCgkJKTsNCgl9DQoNCgkvKioNCgkgKiBHZXQgdmFsdWVzIGZyb20gYSBnaXZlbiB0YWJsZQ0KCSAqICAgICAgICAgIEV4YW1wbGU6ICR0aGlzLT5pdGVtKA0KCSAqICAgICAgICAgICAgICAgICAgICAgICAgWw0KCSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2d1aWQnID0+ICd4eHh4eHh4eC14eHh4LXh4eHgteHh4eC14eHh4eHh4eHh4eHgnDQoJICogICAgICAgICAgICAgICAgICAgICAgICBdDQoJICogICAgICAgICAgICAgICAgICAgICk7DQoJICoNCgkgKiBAcGFyYW0gICBhcnJheSAgICAka2V5cyAgICAgIFRoZSBpdGVtIGtleXMNCgkgKg0KCSAqIEByZXR1cm4gIG9iamVjdHxudWxsDQoJICogQHNpbmNlIDIuMC4xDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGl0ZW0oYXJyYXkgJGtleXMpOiA/b2JqZWN0DQoJew0KCQlyZXR1cm4gJHRoaXMtPm1vZGVsLT5pdGVtKA0KCQkJJHRoaXMtPmxvYWQtPml0ZW0oDQoJCQkJWydhbGwnID0+ICdhLionXSwNCgkJCQlbJ2EnID0+ICR0aGlzLT5nZXRUYWJsZSgpXSwNCgkJCQkkdGhpcy0+cHJlZml4KCRrZXlzKQ0KCQkJKSwNCgkJCSR0aGlzLT5nZXRUYWJsZSgpDQoJCSk7DQoJfQ0KIA0KCS8qKg0KCSAqIEdldCB2YWx1ZXMgZnJvbSBhIGdpdmVuIHRhYmxlDQoJICogICAgICAgICAgRXhhbXBsZTogJHRoaXMtPml0ZW1zKA0KCSAqICAgICAgICAgICAgICAgICAgICAgICAgWw0KCSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2d1aWQnID0+IFsNCgkgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdvcGVyYXRvcicgPT4gJ0lOJywNCgkgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICd2YWx1ZScgPT4gWycneHh4eHh4eHgteHh4eC14eHh4LXh4eHgteHh4eHh4eHh4eHh4JycsICcneHh4eHh4eHgteHh4eC14eHh4LXh4eHgteHh4eHh4eHh4eHh4JyddDQoJICogICAgICAgICAgICAgICAgICAgICAgICAgICBdDQoJICogICAgICAgICAgICAgICAgICAgICAgICBdDQoJICogICAgICAgICAgICAgICAgICAgICk7DQoJICogICAgICAgICAgRXhhbXBsZTogJHRoaXMtPml0ZW1zKCRpZHMpOw0KCSAqDQoJICogQHBhcmFtICAgYXJyYXkgICAgJGtleXMgICAgVGhlIGl0ZW0ga2V5cw0KCSAqDQoJICogQHJldHVybiAgYXJyYXl8bnVsbA0KCSAqIEBzaW5jZSAyLjAuMQ0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBpdGVtcyhhcnJheSAka2V5cyk6ID9hcnJheQ0KCXsNCgkJcmV0dXJuICR0aGlzLT5tb2RlbC0+aXRlbXMoDQoJCQkkdGhpcy0+bG9hZC0+aXRlbXMoDQoJCQkJWydhbGwnID0+ICdhLionXSwgWydhJyA9PiAkdGhpcy0+Z2V0VGFibGUoKV0sICR0aGlzLT5wcmVmaXgoJGtleXMpDQoJCQkpLA0KCQkJJHRoaXMtPmdldFRhYmxlKCkNCgkJKTsNCgl9DQoNCgkvKioNCgkgKiBHZXQgdGhlIGN1cnJlbnQgYWN0aXZlIHRhYmxlDQoJICoNCgkgKiBAcmV0dXJuICBzdHJpbmcNCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZ2V0VGFibGUoKTogc3RyaW5nDQoJew0KCQlyZXR1cm4gJHRoaXMtPnRhYmxlOw0KCX0NCg0KCS8qKg0KCSAqIEFkZCBwcmVmaXggdG8gdGhlIGtleXMNCgkgKg0KCSAqIEBwYXJhbSAgIGFycmF5ICAgICRrZXlzIFRoZSBxdWVyeSBrZXlzDQoJICoNCgkgKiBAcmV0dXJuICBhcnJheQ0KCSAqIEBzaW5jZSAyLjAuMQ0KCSAqLw0KCXByaXZhdGUgZnVuY3Rpb24gcHJlZml4KGFycmF5ICYka2V5cyk6IGFycmF5DQoJew0KCQkvLyB1cGRhdGUgdGhlIGtleSB2YWx1ZXMNCgkJJGJ1Y2tldCA9IFtdOw0KCQlmb3JlYWNoICgka2V5cyBhcyAkayA9PiAkdikNCgkJew0KCQkJJGJ1Y2tldFsnYS4nIC4gJGtdID0gJHY7DQoJCX0NCgkJcmV0dXJuICRidWNrZXQ7DQoJfQ==', '{}', '{}', '', 1, '2024-06-19 10:07:37', 15, '', 1), +(747, 'a455d916-cfe4-41df-9245-bafb709aacdb', 'VDM.Data.Action.Insert', 'Insert', 'class', 'Data Insert (GUID)\r\n\r\n@since 3.2.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '{\"0\":\"03bbc8d5-86e8-4d2f-ae5f-0d44a4f7af13\"}', '', '[[[NamespacePrefix]]]\\Joomla\\Data.Action.Insert', '', '{}', '{}', '', '{\"use_selection0\":{\"use\":\"8aef58c1-3f70-4bd4-b9e4-3f29fcd41cff\",\"as\":\"Model\"},\"use_selection1\":{\"use\":\"ad12ca1c-d3ce-4e7f-88c5-c6c92bdedc48\",\"as\":\"Database\"}}', 'CS8qKg0KCSAqIE1vZGVsDQoJICoNCgkgKiBAdmFyICAgIE1vZGVsDQoJICogQHNpbmNlIDMuMi4wDQoJICovDQoJcHJvdGVjdGVkIE1vZGVsICRtb2RlbDsNCg0KCS8qKg0KCSAqIERhdGFiYXNlDQoJICoNCgkgKiBAdmFyICAgIERhdGFiYXNlDQoJICogQHNpbmNlIDMuMi4wDQoJICovDQoJcHJvdGVjdGVkIERhdGFiYXNlICRkYXRhYmFzZTsNCg0KCS8qKg0KCSAqIFRhYmxlIE5hbWUNCgkgKg0KCSAqIEB2YXIgICAgc3RyaW5nDQoJICogQHNpbmNlIDMuMi4xDQoJICovDQoJcHJvdGVjdGVkIHN0cmluZyAkdGFibGU7DQoNCgkvKioNCgkgKiBDb25zdHJ1Y3Rvcg0KCSAqDQoJICogQHBhcmFtIE1vZGVsICAgICAgICRtb2RlbCAgICAgICBUaGUgc2V0IG1vZGVsIG9iamVjdC4NCgkgKiBAcGFyYW0gRGF0YWJhc2UgICAgJGRhdGFiYXNlICAgIFRoZSBpbnNlcnQgZGF0YWJhc2Ugb2JqZWN0Lg0KCSAqIEBwYXJhbSBzdHJpbmd8bnVsbCAkdGFibGUgICAgICAgVGhlIHRhYmxlIG5hbWUuDQoJICoNCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoTW9kZWwgJG1vZGVsLCBEYXRhYmFzZSAkZGF0YWJhc2UsID9zdHJpbmcgJHRhYmxlID0gbnVsbCkNCgl7DQoJCSR0aGlzLT5tb2RlbCA9ICRtb2RlbDsNCgkJJHRoaXMtPmRhdGFiYXNlID0gJGRhdGFiYXNlOw0KCQlpZiAoJHRhYmxlICE9PSBudWxsKQ0KCQl7DQoJCQkkdGhpcy0+dGFibGUgPSAkdGFibGU7DQoJCX0NCgl9DQoNCgkvKioNCgkgKiBTZXQgdGhlIGN1cnJlbnQgYWN0aXZlIHRhYmxlDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nfG51bGwgJHRhYmxlIFRoZSB0YWJsZSB0aGF0IHNob3VsZCBiZSBhY3RpdmUNCgkgKg0KCSAqIEByZXR1cm4gc2VsZg0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiB0YWJsZSg/c3RyaW5nICR0YWJsZSk6IHNlbGYNCgl7DQoJCWlmICgkdGFibGUgIT09IG51bGwpDQoJCXsNCgkJCSR0aGlzLT50YWJsZSA9ICR0YWJsZTsNCgkJfQ0KDQoJCXJldHVybiAkdGhpczsNCgl9DQoNCgkvKioNCgkgKiBJbnNlcnQgYSB2YWx1ZSB0byBhIGdpdmVuIHRhYmxlDQoJICogICAgICAgICAgRXhhbXBsZTogJHRoaXMtPnZhbHVlKFZhbHVlLCAndmFsdWVfa2V5JywgJ0dVSUQnKTsNCgkgKg0KCSAqIEBwYXJhbSAgIG1peGVkICAgICAkdmFsdWUgICAgICBUaGUgZmllbGQgdmFsdWUNCgkgKiBAcGFyYW0gICBzdHJpbmcgICAgJGZpZWxkICAgICAgVGhlIGZpZWxkIGtleQ0KCSAqIEBwYXJhbSAgIHN0cmluZyAgICAka2V5VmFsdWUgICBUaGUga2V5IHZhbHVlDQoJICogQHBhcmFtICAgc3RyaW5nICAgICRrZXkgICAgICAgIFRoZSBrZXkgbmFtZQ0KCSAqDQoJICogQHJldHVybiAgYm9vbA0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiB2YWx1ZSgkdmFsdWUsIHN0cmluZyAkZmllbGQsIHN0cmluZyAka2V5VmFsdWUsIHN0cmluZyAka2V5ID0gJ2d1aWQnKTogYm9vbA0KCXsNCgkJLy8gYnVpbGQgdGhlIGFycmF5DQoJCSRpdGVtID0gW107DQoJCSRpdGVtWyRrZXldID0gJGtleVZhbHVlOw0KCQkkaXRlbVskZmllbGRdID0gJHZhbHVlOw0KDQoJCS8vIEluc2VydCB0aGUgY29sdW1uIG9mIHRoaXMgdGFibGUNCgkJcmV0dXJuICR0aGlzLT5yb3coJGl0ZW0pOw0KCX0NCg0KCS8qKg0KCSAqIEluc2VydCBzaW5nbGUgcm93IHdpdGggbXVsdGlwbGUgdmFsdWVzIHRvIGEgZ2l2ZW4gdGFibGUNCgkgKiAgICAgICAgICBFeGFtcGxlOiAkdGhpcy0+aXRlbShBcnJheSk7DQoJICoNCgkgKiBAcGFyYW0gICBhcnJheSAgICAkaXRlbSAgIFRoZSBpdGVtIHRvIHNhdmUNCgkgKg0KCSAqIEByZXR1cm4gIGJvb2wNCgkgKiBAc2luY2UgMy4yLjANCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gcm93KGFycmF5ICRpdGVtKTogYm9vbA0KCXsNCgkJLy8gY2hlY2sgaWYgb2JqZWN0IGNvdWxkIGJlIG1vZGVsbGVkDQoJCWlmICgoJGl0ZW0gPSAkdGhpcy0+bW9kZWwtPnJvdygkaXRlbSwgJHRoaXMtPmdldFRhYmxlKCkpKSAhPT0gbnVsbCkNCgkJew0KCQkJLy8gSW5zZXJ0IHRoZSBjb2x1bW4gb2YgdGhpcyB0YWJsZQ0KCQkJcmV0dXJuICR0aGlzLT5kYXRhYmFzZS0+cm93KCRpdGVtLCAkdGhpcy0+Z2V0VGFibGUoKSk7DQoJCX0NCgkJcmV0dXJuIGZhbHNlOw0KCX0NCg0KCS8qKg0KCSAqIEluc2VydCBtdWx0aXBsZSByb3dzIHRvIGEgZ2l2ZW4gdGFibGUNCgkgKiAgICAgICAgICBFeGFtcGxlOiAkdGhpcy0+aXRlbXMoQXJyYXkpOw0KCSAqDQoJICogQHBhcmFtICAgYXJyYXl8bnVsbCAgICRpdGVtcyAgVGhlIGl0ZW1zIHVwZGF0ZWQgaW4gZGF0YWJhc2UgKGFycmF5IG9mIGFycmF5cykNCgkgKg0KCSAqIEByZXR1cm4gIGJvb2wNCgkgKiBAc2luY2UgMy4yLjANCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gcm93cyg/YXJyYXkgJGl0ZW1zKTogYm9vbA0KCXsNCgkJLy8gY2hlY2sgaWYgb2JqZWN0IGNvdWxkIGJlIG1vZGVsbGVkDQoJCWlmICgoJGl0ZW1zID0gJHRoaXMtPm1vZGVsLT5yb3dzKCRpdGVtcywgJHRoaXMtPmdldFRhYmxlKCkpKSAhPT0gbnVsbCkNCgkJew0KCQkJLy8gSW5zZXJ0IHRoZSBjb2x1bW4gb2YgdGhpcyB0YWJsZQ0KCQkJcmV0dXJuICR0aGlzLT5kYXRhYmFzZS0+cm93cygkaXRlbXMsICR0aGlzLT5nZXRUYWJsZSgpKTsNCgkJfQ0KCQlyZXR1cm4gZmFsc2U7DQoJfQ0KDQoJLyoqDQoJICogSW5zZXJ0IHNpbmdsZSBpdGVtIHdpdGggbXVsdGlwbGUgdmFsdWVzIHRvIGEgZ2l2ZW4gdGFibGUNCgkgKiAgICAgICAgICBFeGFtcGxlOiAkdGhpcy0+aXRlbShPYmplY3QpOw0KCSAqDQoJICogQHBhcmFtICAgb2JqZWN0ICAgICRpdGVtICAgVGhlIGl0ZW0gdG8gc2F2ZQ0KCSAqDQoJICogQHJldHVybiAgYm9vbA0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBpdGVtKG9iamVjdCAkaXRlbSk6IGJvb2wNCgl7DQoJCS8vIGNoZWNrIGlmIG9iamVjdCBjb3VsZCBiZSBtb2RlbGxlZA0KCQlpZiAoKCRpdGVtID0gJHRoaXMtPm1vZGVsLT5pdGVtKCRpdGVtLCAkdGhpcy0+Z2V0VGFibGUoKSkpICE9PSBudWxsKQ0KCQl7DQoJCQkvLyBJbnNlcnQgdGhlIGNvbHVtbiBvZiB0aGlzIHRhYmxlDQoJCQlyZXR1cm4gJHRoaXMtPmRhdGFiYXNlLT5pdGVtKCRpdGVtLCAkdGhpcy0+Z2V0VGFibGUoKSk7DQoJCX0NCgkJcmV0dXJuIGZhbHNlOw0KCX0NCg0KCS8qKg0KCSAqIEluc2VydCBtdWx0aXBsZSBpdGVtcyB0byBhIGdpdmVuIHRhYmxlDQoJICogICAgICAgICAgRXhhbXBsZTogJHRoaXMtPml0ZW1zKEFycmF5KTsNCgkgKg0KCSAqIEBwYXJhbSAgIGFycmF5fG51bGwgICAkaXRlbXMgIFRoZSBpdGVtcyB1cGRhdGVkIGluIGRhdGFiYXNlIChhcnJheSBvZiBvYmplY3RzKQ0KCSAqDQoJICogQHJldHVybiAgYm9vbA0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBpdGVtcyg/YXJyYXkgJGl0ZW1zKTogYm9vbA0KCXsNCgkJLy8gY2hlY2sgaWYgb2JqZWN0IGNvdWxkIGJlIG1vZGVsbGVkDQoJCWlmICgoJGl0ZW1zID0gJHRoaXMtPm1vZGVsLT5pdGVtcygkaXRlbXMsICR0aGlzLT5nZXRUYWJsZSgpKSkgIT09IG51bGwpDQoJCXsNCgkJCS8vIFVwZGF0ZSB0aGUgY29sdW1uIG9mIHRoaXMgdGFibGUgdXNpbmcgZ3VpZCBhcyB0aGUgcHJpbWFyeSBrZXkuDQoJCQlyZXR1cm4gJHRoaXMtPmRhdGFiYXNlLT5pdGVtcygkaXRlbXMsICR0aGlzLT5nZXRUYWJsZSgpKTsNCgkJfQ0KCQlyZXR1cm4gZmFsc2U7DQoJfQ0KDQoJLyoqDQoJICogR2V0IHRoZSBjdXJyZW50IGFjdGl2ZSB0YWJsZQ0KCSAqDQoJICogQHJldHVybiAgc3RyaW5nDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGdldFRhYmxlKCk6IHN0cmluZw0KCXsNCgkJcmV0dXJuICR0aGlzLT50YWJsZTsNCgl9', '{}', '{}', '', 1, '2024-06-19 10:22:45', 10, '', 1), +(748, '8f83fb79-f92b-4f1f-952b-325f6c22d11e', 'VDM.Data.Action.Update', 'Update', 'class', 'Data Update\r\n\r\n@since 3.2.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '{\"0\":\"68a41264-64c0-441a-a3d8-8a5e557b1883\"}', '', '[[[NamespacePrefix]]]\\Joomla\\Data.Action.Update', '', '{}', '{}', '', '{\"use_selection0\":{\"use\":\"8aef58c1-3f70-4bd4-b9e4-3f29fcd41cff\",\"as\":\"Model\"},\"use_selection1\":{\"use\":\"7179fde6-1e51-4b51-8545-7ca18f74a0f4\",\"as\":\"Database\"}}', 'CS8qKg0KCSAqIE1vZGVsDQoJICoNCgkgKiBAdmFyICAgIE1vZGVsDQoJICogQHNpbmNlIDMuMi4wDQoJICovDQoJcHJvdGVjdGVkIE1vZGVsICRtb2RlbDsNCg0KCS8qKg0KCSAqIERhdGFiYXNlDQoJICoNCgkgKiBAdmFyICAgIERhdGFiYXNlDQoJICogQHNpbmNlIDMuMi4wDQoJICovDQoJcHJvdGVjdGVkIERhdGFiYXNlICRkYXRhYmFzZTsNCg0KCS8qKg0KCSAqIFRhYmxlIE5hbWUNCgkgKg0KCSAqIEB2YXIgICAgc3RyaW5nDQoJICogQHNpbmNlIDMuMi4xDQoJICovDQoJcHJvdGVjdGVkIHN0cmluZyAkdGFibGU7DQoNCgkvKioNCgkgKiBDb25zdHJ1Y3Rvcg0KCSAqDQoJICogQHBhcmFtIE1vZGVsICAgICAgICRtb2RlbCAgICAgICBUaGUgc2V0IG1vZGVsIG9iamVjdC4NCgkgKiBAcGFyYW0gRGF0YWJhc2UgICAgJGRhdGFiYXNlICAgIFRoZSB1cGRhdGUgZGF0YWJhc2Ugb2JqZWN0Lg0KCSAqIEBwYXJhbSBzdHJpbmd8bnVsbCAkdGFibGUgICAgICAgVGhlIHRhYmxlIG5hbWUuDQoJICoNCgkgKiBAc2luY2UgMy4yLjANCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoTW9kZWwgJG1vZGVsLCBEYXRhYmFzZSAkZGF0YWJhc2UsID9zdHJpbmcgJHRhYmxlID0gbnVsbCkNCgl7DQoJCSR0aGlzLT5tb2RlbCA9ICRtb2RlbDsNCgkJJHRoaXMtPmRhdGFiYXNlID0gJGRhdGFiYXNlOw0KCQlpZiAoJHRhYmxlICE9PSBudWxsKQ0KCQl7DQoJCQkkdGhpcy0+dGFibGUgPSAkdGFibGU7DQoJCX0NCgl9DQoNCgkvKioNCgkgKiBTZXQgdGhlIGN1cnJlbnQgYWN0aXZlIHRhYmxlDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nfG51bGwgJHRhYmxlIFRoZSB0YWJsZSB0aGF0IHNob3VsZCBiZSBhY3RpdmUNCgkgKg0KCSAqIEByZXR1cm4gc2VsZg0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiB0YWJsZSg/c3RyaW5nICR0YWJsZSk6IHNlbGYNCgl7DQoJCWlmICgkdGFibGUgIT09IG51bGwpDQoJCXsNCgkJCSR0aGlzLT50YWJsZSA9ICR0YWJsZTsNCgkJfQ0KDQoJCXJldHVybiAkdGhpczsNCgl9DQoNCgkvKioNCgkgKiBVcGRhdGUgYSB2YWx1ZSB0byBhIGdpdmVuIHRhYmxlDQoJICogICAgICAgICAgRXhhbXBsZTogJHRoaXMtPnZhbHVlKFZhbHVlLCAndmFsdWVfa2V5JywgJ0dVSUQnKTsNCgkgKg0KCSAqIEBwYXJhbSAgIG1peGVkICAgICAkdmFsdWUgICAgICBUaGUgZmllbGQgdmFsdWUNCgkgKiBAcGFyYW0gICBzdHJpbmcgICAgJGZpZWxkICAgICAgVGhlIGZpZWxkIGtleQ0KCSAqIEBwYXJhbSAgIHN0cmluZyAgICAka2V5VmFsdWUgICBUaGUga2V5IHZhbHVlDQoJICogQHBhcmFtICAgc3RyaW5nICAgICRrZXkgICAgICAgIFRoZSBrZXkgbmFtZQ0KCSAqDQoJICogQHJldHVybiAgYm9vbA0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiB2YWx1ZSgkdmFsdWUsIHN0cmluZyAkZmllbGQsIHN0cmluZyAka2V5VmFsdWUsIHN0cmluZyAka2V5ID0gJ2d1aWQnKTogYm9vbA0KCXsNCgkJLy8gYnVpbGQgdGhlIGFycmF5DQoJCSRpdGVtID0gW107DQoJCSRpdGVtWyRrZXldID0gJGtleVZhbHVlOw0KCQkkaXRlbVskZmllbGRdID0gJHZhbHVlOw0KDQoJCS8vIFVwZGF0ZSB0aGUgY29sdW1uIG9mIHRoaXMgdGFibGUgdXNpbmcgJGtleSBhcyB0aGUgcHJpbWFyeSBrZXkuDQoJCXJldHVybiAkdGhpcy0+cm93KCRpdGVtLCAka2V5KTsNCgl9DQoNCgkvKioNCgkgKiBVcGRhdGUgc2luZ2xlIHJvdyB3aXRoIG11bHRpcGxlIHZhbHVlcyB0byBhIGdpdmVuIHRhYmxlDQoJICogICAgICAgICAgRXhhbXBsZTogJHRoaXMtPml0ZW0oQXJyYXkpOw0KCSAqDQoJICogQHBhcmFtICAgYXJyYXkgICAgJGl0ZW0gICBUaGUgaXRlbSB0byBzYXZlDQoJICogQHBhcmFtICAgc3RyaW5nICAgJGtleSAgICBUaGUga2V5IG5hbWUNCgkgKg0KCSAqIEByZXR1cm4gIGJvb2wNCgkgKiBAc2luY2UgMy4yLjANCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gcm93KGFycmF5ICRpdGVtLCBzdHJpbmcgJGtleSA9ICdndWlkJyk6IGJvb2wNCgl7DQoJCS8vIGNoZWNrIGlmIG9iamVjdCBjb3VsZCBiZSBtb2RlbGxlZA0KCQlpZiAoKCRpdGVtID0gJHRoaXMtPm1vZGVsLT5yb3coJGl0ZW0sICR0aGlzLT5nZXRUYWJsZSgpKSkgIT09IG51bGwpDQoJCXsNCgkJCS8vIFVwZGF0ZSB0aGUgY29sdW1uIG9mIHRoaXMgdGFibGUgdXNpbmcgJGtleSBhcyB0aGUgcHJpbWFyeSBrZXkuDQoJCQlyZXR1cm4gJHRoaXMtPmRhdGFiYXNlLT5yb3coJGl0ZW0sICRrZXksICR0aGlzLT5nZXRUYWJsZSgpKTsNCgkJfQ0KCQlyZXR1cm4gZmFsc2U7DQoJfQ0KDQoJLyoqDQoJICogVXBkYXRlIG11bHRpcGxlIHJvd3MgdG8gYSBnaXZlbiB0YWJsZQ0KCSAqICAgICAgICAgIEV4YW1wbGU6ICR0aGlzLT5pdGVtcyhBcnJheSk7DQoJICoNCgkgKiBAcGFyYW0gICBhcnJheXxudWxsICAgJGl0ZW1zICBUaGUgaXRlbXMgdXBkYXRlZCBpbiBkYXRhYmFzZSAoYXJyYXkgb2YgYXJyYXlzKQ0KCSAqIEBwYXJhbSAgIHN0cmluZyAgICAgICAka2V5ICAgIFRoZSBrZXkgbmFtZQ0KCSAqDQoJICogQHJldHVybiAgYm9vbA0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiByb3dzKD9hcnJheSAkaXRlbXMsIHN0cmluZyAka2V5ID0gJ2d1aWQnKTogYm9vbA0KCXsNCgkJLy8gY2hlY2sgaWYgb2JqZWN0IGNvdWxkIGJlIG1vZGVsbGVkDQoJCWlmICgoJGl0ZW1zID0gJHRoaXMtPm1vZGVsLT5yb3dzKCRpdGVtcywgJHRoaXMtPmdldFRhYmxlKCkpKSAhPT0gbnVsbCkNCgkJew0KCQkJLy8gVXBkYXRlIHRoZSBjb2x1bW4gb2YgdGhpcyB0YWJsZSB1c2luZyAka2V5IGFzIHRoZSBwcmltYXJ5IGtleS4NCgkJCXJldHVybiAkdGhpcy0+ZGF0YWJhc2UtPnJvd3MoJGl0ZW1zLCAka2V5LCAkdGhpcy0+Z2V0VGFibGUoKSk7DQoJCX0NCgkJcmV0dXJuIGZhbHNlOw0KCX0NCg0KCS8qKg0KCSAqIFVwZGF0ZSBzaW5nbGUgaXRlbSB3aXRoIG11bHRpcGxlIHZhbHVlcyB0byBhIGdpdmVuIHRhYmxlDQoJICogICAgICAgICAgRXhhbXBsZTogJHRoaXMtPml0ZW0oT2JqZWN0KTsNCgkgKg0KCSAqIEBwYXJhbSAgIG9iamVjdCAgICAkaXRlbSAgIFRoZSBpdGVtIHRvIHNhdmUNCgkgKiBAcGFyYW0gICBzdHJpbmcgICAgJGtleSAgICBUaGUga2V5IG5hbWUNCgkgKg0KCSAqIEByZXR1cm4gIGJvb2wNCgkgKiBAc2luY2UgMy4yLjANCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gaXRlbShvYmplY3QgJGl0ZW0sIHN0cmluZyAka2V5ID0gJ2d1aWQnKTogYm9vbA0KCXsNCgkJLy8gY2hlY2sgaWYgb2JqZWN0IGNvdWxkIGJlIG1vZGVsbGVkDQoJCWlmICgoJGl0ZW0gPSAkdGhpcy0+bW9kZWwtPml0ZW0oJGl0ZW0sICR0aGlzLT5nZXRUYWJsZSgpKSkgIT09IG51bGwpDQoJCXsNCgkJCS8vIFVwZGF0ZSB0aGUgY29sdW1uIG9mIHRoaXMgdGFibGUgdXNpbmcgJGtleSBhcyB0aGUgcHJpbWFyeSBrZXkuDQoJCQlyZXR1cm4gJHRoaXMtPmRhdGFiYXNlLT5pdGVtKCRpdGVtLCAka2V5LCAkdGhpcy0+Z2V0VGFibGUoKSk7DQoJCX0NCgkJcmV0dXJuIGZhbHNlOw0KCX0NCg0KCS8qKg0KCSAqIFVwZGF0ZSBtdWx0aXBsZSBpdGVtcyB0byBhIGdpdmVuIHRhYmxlDQoJICogICAgICAgICAgRXhhbXBsZTogJHRoaXMtPml0ZW1zKEFycmF5KTsNCgkgKg0KCSAqIEBwYXJhbSAgIGFycmF5fG51bGwgICAkaXRlbXMgIFRoZSBpdGVtcyB1cGRhdGVkIGluIGRhdGFiYXNlIChhcnJheSBvZiBvYmplY3RzKQ0KCSAqIEBwYXJhbSAgIHN0cmluZyAgICAgICAka2V5ICAgIFRoZSBrZXkgbmFtZQ0KCSAqDQoJICogQHJldHVybiAgYm9vbA0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBpdGVtcyg/YXJyYXkgJGl0ZW1zLCBzdHJpbmcgJGtleSA9ICdndWlkJyk6IGJvb2wNCgl7DQoJCS8vIGNoZWNrIGlmIG9iamVjdCBjb3VsZCBiZSBtb2RlbGxlZA0KCQlpZiAoKCRpdGVtcyA9ICR0aGlzLT5tb2RlbC0+aXRlbXMoJGl0ZW1zLCAkdGhpcy0+Z2V0VGFibGUoKSkpICE9PSBudWxsKQ0KCQl7DQoJCQkvLyBVcGRhdGUgdGhlIGNvbHVtbiBvZiB0aGlzIHRhYmxlIHVzaW5nICRrZXkgYXMgdGhlIHByaW1hcnkga2V5Lg0KCQkJcmV0dXJuICR0aGlzLT5kYXRhYmFzZS0+aXRlbXMoJGl0ZW1zLCAka2V5LCAkdGhpcy0+Z2V0VGFibGUoKSk7DQoJCX0NCgkJcmV0dXJuIGZhbHNlOw0KCX0NCg0KCS8qKg0KCSAqIEdldCB0aGUgY3VycmVudCBhY3RpdmUgdGFibGUNCgkgKg0KCSAqIEByZXR1cm4gIHN0cmluZw0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBnZXRUYWJsZSgpOiBzdHJpbmcNCgl7DQoJCXJldHVybiAkdGhpcy0+dGFibGU7DQoJfQ==', '{}', '{}', '', 1, '2024-06-19 10:37:43', 10, '', 1), +(749, '3fc72954-a303-4cac-b53c-554be38b85e7', 'VDM.Data.Action.Delete', 'Delete', 'class', 'Data Delete\r\n\r\n@since 3.2.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '{\"0\":\"d8f9ba53-c490-4e8b-8e9f-6757224e069c\"}', '', '[[[NamespacePrefix]]]\\Joomla\\Data.Action.Delete', '', '{}', '{}', '', '{\"use_selection0\":{\"use\":\"9c3aa650-e536-4eea-a2d4-73cc3e184aa9\",\"as\":\"Database\"}}', 'CS8qKg0KCSAqIFRoZSBEZWxldGUgQ2xhc3MuDQoJICoNCgkgKiBAdmFyICAgRGF0YWJhc2UNCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwcm90ZWN0ZWQgRGF0YWJhc2UgJGRhdGFiYXNlOw0KDQoJLyoqDQoJICogVGFibGUgTmFtZQ0KCSAqDQoJICogQHZhciAgICBzdHJpbmcNCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwcm90ZWN0ZWQgc3RyaW5nICR0YWJsZTsNCg0KCS8qKg0KCSAqIENvbnN0cnVjdG9yLg0KCSAqDQoJICogQHBhcmFtIERhdGFiYXNlICAgJGRhdGFiYXNlICAgVGhlIERlbGV0ZSBDbGFzcy4NCgkgKiBAcGFyYW0gc3RyaW5nfG51bGwgJHRhYmxlICAgICAgIFRoZSB0YWJsZSBuYW1lLg0KCSAqDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KERhdGFiYXNlICRkYXRhYmFzZSwgP3N0cmluZyAkdGFibGUgPSBudWxsKQ0KCXsNCgkJJHRoaXMtPmRhdGFiYXNlID0gJGRhdGFiYXNlOw0KCQlpZiAoJHRhYmxlICE9PSBudWxsKQ0KCQl7DQoJCQkkdGhpcy0+dGFibGUgPSAkdGFibGU7DQoJCX0NCgl9DQoNCgkvKioNCgkgKiBTZXQgdGhlIGN1cnJlbnQgYWN0aXZlIHRhYmxlDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nfG51bGwgJHRhYmxlIFRoZSB0YWJsZSB0aGF0IHNob3VsZCBiZSBhY3RpdmUNCgkgKg0KCSAqIEByZXR1cm4gc2VsZg0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiB0YWJsZSg/c3RyaW5nICR0YWJsZSk6IHNlbGYNCgl7DQoJCWlmICgkdGFibGUgIT09IG51bGwpDQoJCXsNCgkJCSR0aGlzLT50YWJsZSA9ICR0YWJsZTsNCgkJfQ0KDQoJCXJldHVybiAkdGhpczsNCgl9DQoNCgkvKioNCgkgKiBEZWxldGUgYWxsIGl0ZW1zIGluIHRoZSBkYXRhYmFzZSB0aGF0IG1hdGNoIHRoZXNlIGNvbmRpdGlvbnMNCgkgKg0KCSAqIEBwYXJhbSAgIGFycmF5ICAgICRjb25kaXRpb25zICAgIENvbmRpdGlvbnMgYnkgd2hpY2ggdG8gZGVsZXRlIHRoZSBkYXRhIGluIGRhdGFiYXNlIFthcnJheSBvZiBhcnJheXMgKGtleSA9PiB2YWx1ZSldDQoJICoNCgkgKiBAcmV0dXJuICBib29sDQoJICogQHNpbmNlICAgMy4yLjINCgkgKiovDQoJcHVibGljIGZ1bmN0aW9uIGl0ZW1zKGFycmF5ICRjb25kaXRpb25zKTogYm9vbA0KCXsNCgkJcmV0dXJuICR0aGlzLT5kYXRhYmFzZS0+aXRlbXMoJGNvbmRpdGlvbnMsICR0aGlzLT5nZXRUYWJsZSgpKTsNCgl9DQoNCgkvKioNCgkgKiBUcnVuY2F0ZSBhIHRhYmxlDQoJICoNCgkgKiBAcmV0dXJuICB2b2lkDQoJICogQHNpbmNlICAgMy4yLjINCgkgKiovDQoJcHVibGljIGZ1bmN0aW9uIHRydW5jYXRlKCk6IHZvaWQNCgl7DQoJCSR0aGlzLT5kYXRhYmFzZS0+dHJ1bmNhdGUoJHRoaXMtPmdldFRhYmxlKCkpOw0KCX0NCg0KCS8qKg0KCSAqIEdldCB0aGUgY3VycmVudCBhY3RpdmUgdGFibGUNCgkgKg0KCSAqIEByZXR1cm4gIHN0cmluZw0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBnZXRUYWJsZSgpOiBzdHJpbmcNCgl7DQoJCXJldHVybiAkdGhpcy0+dGFibGU7DQoJfQ==', '{}', '{}', '', 1, '2024-06-19 17:58:06', 11, '', 1), +(750, 'd8f9ba53-c490-4e8b-8e9f-6757224e069c', 'VDM.Interfaces.Data.DeleteInterface', 'DeleteInterface', 'interface', 'Data Delete\r\n\r\n@since 3.2.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\Interfaces.Data.DeleteInterface', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIFNldCB0aGUgY3VycmVudCBhY3RpdmUgdGFibGUNCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmd8bnVsbCAkdGFibGUgVGhlIHRhYmxlIHRoYXQgc2hvdWxkIGJlIGFjdGl2ZQ0KCSAqDQoJICogQHJldHVybiBzZWxmDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIHRhYmxlKD9zdHJpbmcgJHRhYmxlKTogc2VsZjsNCg0KCS8qKg0KCSAqIERlbGV0ZSBhbGwgaXRlbXMgaW4gdGhlIGRhdGFiYXNlIHRoYXQgbWF0Y2ggdGhlc2UgY29uZGl0aW9ucw0KCSAqDQoJICogQHBhcmFtICAgYXJyYXkgICAgJGNvbmRpdGlvbnMgICAgQ29uZGl0aW9ucyBieSB3aGljaCB0byBkZWxldGUgdGhlIGRhdGEgaW4gZGF0YWJhc2UgW2FycmF5IG9mIGFycmF5cyAoa2V5ID0+IHZhbHVlKV0NCgkgKg0KCSAqIEByZXR1cm4gIGJvb2wNCgkgKiBAc2luY2UgICAzLjIuMg0KCSAqKi8NCglwdWJsaWMgZnVuY3Rpb24gaXRlbXMoYXJyYXkgJGNvbmRpdGlvbnMpOiBib29sOw0KDQoJLyoqDQoJICogVHJ1bmNhdGUgYSB0YWJsZQ0KCSAqDQoJICogQHBhcmFtICAgc3RyaW5nfG51bGwgICAkdGFibGUgICAgVGhlIHRhYmxlIHRoYXQgc2hvdWxkIGJlIHRydW5jYXRlZA0KCSAqDQoJICogQHJldHVybiAgdm9pZA0KCSAqIEBzaW5jZSAgIDMuMi4yDQoJICoqLw0KCXB1YmxpYyBmdW5jdGlvbiB0cnVuY2F0ZSgpOiB2b2lkOw0KDQoJLyoqDQoJICogR2V0IHRoZSBjdXJyZW50IGFjdGl2ZSB0YWJsZQ0KCSAqDQoJICogQHJldHVybiAgc3RyaW5nDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGdldFRhYmxlKCk6IHN0cmluZzs=', '{}', '{}', '', 1, '2024-06-19 18:11:57', 6, '', 1), +(753, '21bca8a4-5b28-41c4-843e-8097f0ba7cca', 'VDM.Data.Items', 'Items', 'final class', 'Data Items\r\n\r\n@since 3.2.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', 'AbstractionModel', '', '', '{\"0\":\"7212e4db-371f-4cfd-8122-32e9bb100d83\"}', '', '[[[NamespacePrefix]]]\\Joomla\\Data.Items', '', '{}', '{}', '', '{\"use_selection0\":{\"use\":\"c548640c-a461-4424-9ac5-8dfb5ed06d8d\",\"as\":\"Load\"},\"use_selection1\":{\"use\":\"03bbc8d5-86e8-4d2f-ae5f-0d44a4f7af13\",\"as\":\"Insert\"},\"use_selection2\":{\"use\":\"68a41264-64c0-441a-a3d8-8a5e557b1883\",\"as\":\"Update\"},\"use_selection3\":{\"use\":\"d8f9ba53-c490-4e8b-8e9f-6757224e069c\",\"as\":\"Delete\"},\"use_selection4\":{\"use\":\"2ad31f74-f579-499d-b98b-c4f54fd615dd\",\"as\":\"Database\"}}', 'CS8qKg0KCSAqIFRoZSBMb2FkSW50ZXJmYWNlIENsYXNzLg0KCSAqDQoJICogQHZhciAgIExvYWQNCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwcm90ZWN0ZWQgTG9hZCAkbG9hZDsNCg0KCS8qKg0KCSAqIFRoZSBJbnNlcnRJbnRlcmZhY2UgQ2xhc3MuDQoJICoNCgkgKiBAdmFyICAgSW5zZXJ0DQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHJvdGVjdGVkIEluc2VydCAkaW5zZXJ0Ow0KDQoJLyoqDQoJICogVGhlIFVwZGF0ZUludGVyZmFjZSBDbGFzcy4NCgkgKg0KCSAqIEB2YXIgICBVcGRhdGUNCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwcm90ZWN0ZWQgVXBkYXRlICR1cGRhdGU7DQoNCgkvKioNCgkgKiBUaGUgRGVsZXRlSW50ZXJmYWNlIENsYXNzLg0KCSAqDQoJICogQHZhciAgIERlbGV0ZQ0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqLw0KCXByb3RlY3RlZCBEZWxldGUgJGRlbGV0ZTsNCg0KCS8qKg0KCSAqIFRoZSBMb2FkIENsYXNzLg0KCSAqDQoJICogQHZhciAgIERhdGFiYXNlDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHJvdGVjdGVkIERhdGFiYXNlICRkYXRhYmFzZTsNCg0KCS8qKg0KCSAqIFRhYmxlIE5hbWUNCgkgKg0KCSAqIEB2YXIgICAgc3RyaW5nDQoJICogQHNpbmNlIDMuMi4xDQoJICovDQoJcHJvdGVjdGVkIHN0cmluZyAkdGFibGU7DQoNCgkvKioNCgkgKiBDb25zdHJ1Y3Rvci4NCgkgKg0KCSAqIEBwYXJhbSBMb2FkICAgICAgICAkbG9hZCAgICAgICBUaGUgTG9hZEludGVyZmFjZSBDbGFzcy4NCgkgKiBAcGFyYW0gSW5zZXJ0ICAgICAgJGluc2VydCAgICAgVGhlIEluc2VydEludGVyZmFjZSBDbGFzcy4NCgkgKiBAcGFyYW0gVXBkYXRlICAgICAgJHVwZGF0ZSAgICAgVGhlIFVwZGF0ZUludGVyZmFjZSBDbGFzcy4NCgkgKiBAcGFyYW0gRGVsZXRlICAgICAgJGRlbGV0ZSAgICAgVGhlIERlbGV0ZUludGVyZmFjZSBDbGFzcy4NCgkgKiBAcGFyYW0gRGF0YWJhc2UgICAgJGRhdGFiYXNlICAgVGhlIERhdGFiYXNlIExvYWQgQ2xhc3MuDQoJICogQHBhcmFtIHN0cmluZ3xudWxsICR0YWJsZSAgICAgIFRoZSB0YWJsZSBuYW1lLg0KCSAqDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KExvYWQgJGxvYWQsIEluc2VydCAkaW5zZXJ0LCBVcGRhdGUgJHVwZGF0ZSwgRGVsZXRlICRkZWxldGUsDQoJCURhdGFiYXNlICRkYXRhYmFzZSwgP3N0cmluZyAkdGFibGUgPSBudWxsKQ0KCXsNCgkJJHRoaXMtPmxvYWQgPSAkbG9hZDsNCgkJJHRoaXMtPmluc2VydCA9ICRpbnNlcnQ7DQoJCSR0aGlzLT51cGRhdGUgPSAkdXBkYXRlOw0KCQkkdGhpcy0+ZGVsZXRlID0gJGRlbGV0ZTsNCgkJJHRoaXMtPmRhdGFiYXNlID0gJGRhdGFiYXNlOw0KCQlpZiAoJHRhYmxlICE9PSBudWxsKQ0KCQl7DQoJCQkkdGhpcy0+dGFibGUgPSAkdGFibGU7DQoJCX0NCgl9DQoNCgkvKioNCgkgKiBTZXQgdGhlIGN1cnJlbnQgYWN0aXZlIHRhYmxlDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICR0YWJsZSBUaGUgdGFibGUgdGhhdCBzaG91bGQgYmUgYWN0aXZlDQoJICoNCgkgKiBAcmV0dXJuIHNlbGYNCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gdGFibGUoc3RyaW5nICR0YWJsZSk6IHNlbGYNCgl7DQoJCSR0aGlzLT50YWJsZSA9ICR0YWJsZTsNCg0KCQlyZXR1cm4gJHRoaXM7DQoJfQ0KDQoJLyoqDQoJICogR2V0IGxpc3Qgb2YgaXRlbXMNCgkgKg0KCSAqIEBwYXJhbSBhcnJheSAgICAgJHZhbHVlcyAgICBUaGUgaWRzIG9mIHRoZSBpdGVtcw0KCSAqIEBwYXJhbSBzdHJpbmcgICAgJGtleSAgICAgICBUaGUga2V5IG9mIHRoZSB2YWx1ZXMNCgkgKg0KCSAqIEByZXR1cm4gYXJyYXl8bnVsbCBUaGUgaXRlbSBvYmplY3Qgb3IgbnVsbA0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBnZXQoYXJyYXkgJHZhbHVlcywgc3RyaW5nICRrZXkgPSAnZ3VpZCcpOiA/YXJyYXkNCgl7DQoJCXJldHVybiAkdGhpcy0+bG9hZC0+dGFibGUoJHRoaXMtPmdldFRhYmxlKCkpLT5pdGVtcyhbDQoJCQkka2V5ID0+IFsNCgkJCQknb3BlcmF0b3InID0+ICdJTicsDQoJCQkJJ3ZhbHVlJyA9PiBhcnJheV92YWx1ZXMoJHZhbHVlcykNCgkJCV0NCgkJXSk7DQoJfQ0KDQoJLyoqDQoJICogR2V0IHRoZSB2YWx1ZXMNCgkgKg0KCSAqIEBwYXJhbSBhcnJheSAgICR2YWx1ZXMgICAgVGhlIGxpc3Qgb2YgdmFsdWVzICh0byBzZWFyY2ggYnkpLg0KCSAqIEBwYXJhbSBzdHJpbmcgICRrZXkgICAgICAgVGhlIGtleSBvbiB3aGljaCB0aGUgdmFsdWVzIGJlaW5nIHNlYXJjaGVkLg0KCSAqIEBwYXJhbSBzdHJpbmcgICRnZXQgICAgICAgVGhlIGtleSBvZiB0aGUgdmFsdWVzIHdlIHdhbnQgYmFjaw0KCSAqDQoJICogQHJldHVybiBhcnJheXxudWxsICAgVGhlIGFycmF5IG9mIGZvdW5kIHZhbHVlcy4NCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gdmFsdWVzKGFycmF5ICR2YWx1ZXMsIHN0cmluZyAka2V5ID0gJ2d1aWQnLCBzdHJpbmcgJGdldCA9ICdpZCcpOiA/YXJyYXkNCgl7DQoJCS8vIFBlcmZvcm0gdGhlIGRhdGFiYXNlIHF1ZXJ5DQoJCXJldHVybiAkdGhpcy0+bG9hZC0+dGFibGUoJHRoaXMtPmdldFRhYmxlKCkpLT52YWx1ZXMoWw0KCQkJJGtleSA9PiBbDQoJCQkJJ29wZXJhdG9yJyA9PiAnSU4nLA0KCQkJCSd2YWx1ZScgPT4gYXJyYXlfdmFsdWVzKCR2YWx1ZXMpDQoJCQldDQoJCV0sICRnZXQpOw0KCX0NCg0KCS8qKg0KCSAqIFNldCBpdGVtcw0KCSAqDQoJICogQHBhcmFtIGFycmF5ICAgICAkaXRlbXMgIFRoZSBsaXN0IG9mIGl0ZW1zDQoJICogQHBhcmFtIHN0cmluZyAgICAka2V5ICAgIFRoZSBrZXkgb24gd2hpY2ggdGhlIGl0ZW1zIHNob3VsZCBiZSBzZXQNCgkgKg0KCSAqIEByZXR1cm4gYm9vbA0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBzZXQoYXJyYXkgJGl0ZW1zLCBzdHJpbmcgJGtleSA9ICdndWlkJyk6IGJvb2wNCgl7DQoJCWlmICgoJHNldHMgPSAkdGhpcy0+c29ydCgkaXRlbXMsICRrZXkpKSAhPT0gbnVsbCkNCgkJew0KCQkJZm9yZWFjaCAoJHNldHMgYXMgJGFjdGlvbiA9PiAkaXRlbXMpDQoJCQl7DQoJCQkJJHRoaXMtPnskYWN0aW9ufSgkaXRlbXMsICRrZXkpOw0KCQkJfQ0KCQkJcmV0dXJuIHRydWU7DQoJCX0NCg0KCQlyZXR1cm4gZmFsc2U7DQoJfQ0KDQoJLyoqDQoJICogRGVsZXRlIGl0ZW1zDQoJICoNCgkgKiBAcGFyYW0gYXJyYXkgICAgJHZhbHVlcyAgVGhlIGl0ZW0ga2V5IHZhbHVlDQoJICogQHBhcmFtIHN0cmluZyAgICRrZXkgICAgIFRoZSBpdGVtIGtleQ0KCSAqDQoJICogQHJldHVybiBib29sDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGRlbGV0ZShhcnJheSAkdmFsdWVzLCBzdHJpbmcgJGtleSA9ICdndWlkJyk6IGJvb2wNCgl7DQoJCXJldHVybiAkdGhpcy0+ZGVsZXRlLT50YWJsZSgkdGhpcy0+Z2V0VGFibGUoKSktPml0ZW1zKFska2V5ID0+IFsnb3BlcmF0b3InID0+ICdJTicsICd2YWx1ZScgPT4gJHZhbHVlc11dKTsNCgl9DQoNCgkvKioNCgkgKiBHZXQgdGhlIGN1cnJlbnQgYWN0aXZlIHRhYmxlDQoJICoNCgkgKiBAcmV0dXJuICBzdHJpbmcNCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZ2V0VGFibGUoKTogc3RyaW5nDQoJew0KCQlyZXR1cm4gJHRoaXMtPnRhYmxlOw0KCX0NCg0KCS8qKg0KCSAqIEluc2VydCBhIGl0ZW0NCgkgKg0KCSAqIEBwYXJhbSBhcnJheSAgICRpdGVtcyAgVGhlIGl0ZW0NCgkgKg0KCSAqIEByZXR1cm4gYm9vbA0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqLw0KCXByaXZhdGUgZnVuY3Rpb24gaW5zZXJ0KGFycmF5ICRpdGVtcyk6IGJvb2wNCgl7DQoJCXJldHVybiAkdGhpcy0+aW5zZXJ0LT50YWJsZSgkdGhpcy0+Z2V0VGFibGUoKSktPnJvd3MoJGl0ZW1zKTsNCgl9DQoNCgkvKioNCgkgKiBVcGRhdGUgYSBpdGVtDQoJICoNCgkgKiBAcGFyYW0gb2JqZWN0ICAgJGl0ZW0gIFRoZSBpdGVtDQoJICogQHBhcmFtIHN0cmluZyAgICRrZXkgICBUaGUgaXRlbSBrZXkNCgkgKg0KCSAqIEByZXR1cm4gYm9vbA0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqLw0KCXByaXZhdGUgZnVuY3Rpb24gdXBkYXRlKGFycmF5ICRpdGVtcywgc3RyaW5nICRrZXkpOiBib29sDQoJew0KCQlyZXR1cm4gJHRoaXMtPnVwZGF0ZS0+dGFibGUoJHRoaXMtPmdldFRhYmxlKCkpLT5yb3dzKCRpdGVtcywgJGtleSk7DQoJfQ0KDQoJLyoqDQoJICogU29ydCBpdGVtcyBiZXR3ZWVuIGluc2VydCBhbmQgdXBkYXRlLg0KCSAqDQoJICogQHBhcmFtIGFycmF5ICAkaXRlbXMgVGhlIGxpc3Qgb2YgaXRlbXMuDQoJICogQHBhcmFtIHN0cmluZyAka2V5ICAgVGhlIGtleSBvbiB3aGljaCB0aGUgaXRlbXMgc2hvdWxkIGJlIHNvcnRlZC4NCgkgKg0KCSAqIEByZXR1cm4gYXJyYXl8bnVsbCBUaGUgc29ydGVkIHNldHMuDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHJpdmF0ZSBmdW5jdGlvbiBzb3J0KGFycmF5ICRpdGVtcywgc3RyaW5nICRrZXkpOiA/YXJyYXkNCgl7DQoJCS8vIEV4dHJhY3QgcmVsZXZhbnQgaXRlbXMgYmFzZWQgb24gdGhlIGtleS4NCgkJJHZhbHVlcyA9ICR0aGlzLT5leHRyYWN0VmFsdWVzKCRpdGVtcywgJGtleSk7DQoJCWlmICgkdmFsdWVzID09PSBudWxsKQ0KCQl7DQoJCQlyZXR1cm4gbnVsbDsNCgkJfQ0KDQoJCSRzZXRzID0gWw0KCQkJJ2luc2VydCcgPT4gW10sDQoJCQkndXBkYXRlJyA9PiBbXQ0KCQldOw0KDQoJCS8vIENoZWNrIGZvciBleGlzdGluZyBpdGVtcy4NCgkJJGV4aXN0aW5nSXRlbXMgPSAkdGhpcy0+ZGF0YWJhc2UtPnZhbHVlcygNCgkJCVsiYS4ka2V5IiA9PiAka2V5XSwNCgkJCVsiYSIgPT4gJHRoaXMtPmdldFRhYmxlKCldLA0KCQkJWyJhLiRrZXkiID0+IFsnb3BlcmF0b3InID0+ICdJTicsICd2YWx1ZScgPT4gJHZhbHVlc11dDQoJCSk7DQoNCgkJaWYgKCRleGlzdGluZ0l0ZW1zICE9PSBudWxsKQ0KCQl7DQoJCQkkc2V0c1sndXBkYXRlJ10gPSAkdGhpcy0+ZXh0cmFjdFNldCgkaXRlbXMsICRleGlzdGluZ0l0ZW1zLCAka2V5KSA/PyBbXTsNCgkJCSRzZXRzWydpbnNlcnQnXSA9ICR0aGlzLT5leHRyYWN0U2V0KCRpdGVtcywgJGV4aXN0aW5nSXRlbXMsICRrZXksIHRydWUpID8/IFtdOw0KCQl9DQoJCWVsc2UNCgkJew0KCQkJJHNldHNbJ2luc2VydCddID0gJGl0ZW1zOw0KCQl9DQoNCgkJLy8gSWYgZWl0aGVyIHNldCBpcyBlbXB0eSwgcmVtb3ZlIGl0IGZyb20gdGhlIHJlc3VsdC4NCgkJJHNldHMgPSBhcnJheV9maWx0ZXIoJHNldHMpOw0KDQoJCXJldHVybiAhZW1wdHkoJHNldHMpID8gJHNldHMgOiBudWxsOw0KCX0NCg0KCS8qKg0KCSAqIEV4dHJhY3RzIHZhbHVlcyBmb3IgYSBnaXZlbiBrZXkgZnJvbSBhbiBhcnJheSBvZiBpdGVtcy4NCgkgKiBJdGVtcyBjYW4gYmUgZWl0aGVyIGFycmF5cyBvciBvYmplY3RzLg0KCSAqDQoJICogQHBhcmFtIGFycmF5ICRpdGVtcyBBcnJheSBvZiBpdGVtcyAoYXJyYXlzIG9yIG9iamVjdHMpDQoJICogQHBhcmFtIHN0cmluZyAka2V5IFRoZSBrZXkgdG8gZXh0cmFjdCB2YWx1ZXMgZm9yDQoJICoNCgkgKiBAcmV0dXJuIGFycmF5fG51bGwgRXh0cmFjdGVkIHZhbHVlcw0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqLw0KCXByaXZhdGUgZnVuY3Rpb24gZXh0cmFjdFZhbHVlcyhhcnJheSAkaXRlbXMsIHN0cmluZyAka2V5KTogP2FycmF5DQoJew0KCQkkcmVzdWx0ID0gW107DQoNCgkJZm9yZWFjaCAoJGl0ZW1zIGFzICRpdGVtKQ0KCQl7DQoJCQlpZiAoaXNfYXJyYXkoJGl0ZW0pICYmICFlbXB0eSgkaXRlbVska2V5XSkpDQoJCQl7DQoJCQkJJHJlc3VsdFtdID0gJGl0ZW1bJGtleV07DQoJCQl9DQoJCQllbHNlaWYgKGlzX29iamVjdCgkaXRlbSkgJiYgIWVtcHR5KCRpdGVtLT57JGtleX0pKQ0KCQkJew0KCQkJCSRyZXN1bHRbXSA9ICRpdGVtLT57JGtleX07DQoJCQl9DQoJCX0NCg0KCQlyZXR1cm4gKCRyZXN1bHQgPT09IFtdKSA/IG51bGwgOiAkcmVzdWx0Ow0KCX0NCg0KCS8qKg0KCSAqIEV4dHJhY3RzIGl0ZW1zIGZyb20gYW4gYXJyYXkgb2YgaXRlbXMgYmFzZWQgb24gYSBzZXQuDQoJICogSXRlbXMgY2FuIGJlIGVpdGhlciBhcnJheXMgb3Igb2JqZWN0cy4NCgkgKg0KCSAqIEBwYXJhbSBhcnJheSAgJGl0ZW1zICAgQXJyYXkgb2YgaXRlbXMgKGFycmF5cyBvciBvYmplY3RzKQ0KCSAqIEBwYXJhbSBhcnJheSAgJHNldAkgVGhlIHNldCB0byBtYXRjaCB2YWx1ZXMgYWdhaW5zdA0KCSAqIEBwYXJhbSBzdHJpbmcgJGtleQkgVGhlIGtleSBvZiB0aGUgc2V0IHZhbHVlcw0KCSAqIEBwYXJhbSBib29sICAgJGludmVyc2UgV2hldGhlciB0byBleHRyYWN0IGl0ZW1zIG5vdCBpbiB0aGUgc2V0DQoJICoNCgkgKiBAcmV0dXJuIGFycmF5fG51bGwgRXh0cmFjdGVkIHZhbHVlcw0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqLw0KCXByaXZhdGUgZnVuY3Rpb24gZXh0cmFjdFNldChhcnJheSAkaXRlbXMsIGFycmF5ICRzZXQsIHN0cmluZyAka2V5LCBib29sICRpbnZlcnNlID0gZmFsc2UpOiA/YXJyYXkNCgl7DQoJCSRyZXN1bHQgPSBbXTsNCg0KCQlmb3JlYWNoICgkaXRlbXMgYXMgJGl0ZW0pDQoJCXsNCgkJCSR2YWx1ZSA9IGlzX2FycmF5KCRpdGVtKSA/ICgkaXRlbVska2V5XSA/PyBudWxsKSA6ICgkaXRlbS0+eyRrZXl9ID8/IG51bGwpOw0KDQoJCQlpZiAoJHZhbHVlICE9PSBudWxsKQ0KCQkJew0KCQkJCSRpblNldCA9IGluX2FycmF5KCR2YWx1ZSwgJHNldCk7DQoJCQkJaWYgKCgkaW5TZXQgJiYgISRpbnZlcnNlKSB8fCAoISRpblNldCAmJiAkaW52ZXJzZSkpDQoJCQkJew0KCQkJCQkkcmVzdWx0W10gPSBpc19hcnJheSgkaXRlbSkgPyAkaXRlbSA6IChhcnJheSkgJGl0ZW07IC8vIGNvbnZlcnQgYWxsIHRvIGFycmF5cw0KCQkJCX0NCgkJCX0NCgkJfQ0KDQoJCXJldHVybiBlbXB0eSgkcmVzdWx0KSA/IG51bGwgOiAkcmVzdWx0Ow0KCX0=', '{}', '{}', '', 1, '2024-06-20 08:45:53', 22, '', 1), +(754, '7212e4db-371f-4cfd-8122-32e9bb100d83', 'VDM.Interfaces.Data.ItemsInterface', 'ItemsInterface', 'interface', 'Data Items Interface\r\n\r\n@since 3.2.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\Interfaces.Data.ItemsInterface', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIFNldCB0aGUgY3VycmVudCBhY3RpdmUgdGFibGUNCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmcgJHRhYmxlIFRoZSB0YWJsZSB0aGF0IHNob3VsZCBiZSBhY3RpdmUNCgkgKg0KCSAqIEByZXR1cm4gc2VsZg0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiB0YWJsZShzdHJpbmcgJHRhYmxlKTogc2VsZjsNCg0KCS8qKg0KCSAqIEdldCBsaXN0IG9mIGl0ZW1zDQoJICoNCgkgKiBAcGFyYW0gYXJyYXkgICAgICR2YWx1ZXMgICAgVGhlIGlkcyBvZiB0aGUgaXRlbXMNCgkgKiBAcGFyYW0gc3RyaW5nICAgICRrZXkgICAgICAgVGhlIGtleSBvZiB0aGUgdmFsdWVzDQoJICoNCgkgKiBAcmV0dXJuIGFycmF5fG51bGwgVGhlIGl0ZW0gb2JqZWN0IG9yIG51bGwNCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZ2V0KGFycmF5ICR2YWx1ZXMsIHN0cmluZyAka2V5ID0gJ2d1aWQnKTogP2FycmF5Ow0KDQoJLyoqDQoJICogR2V0IHRoZSB2YWx1ZXMNCgkgKg0KCSAqIEBwYXJhbSBhcnJheSAgICR2YWx1ZXMgICAgVGhlIGxpc3Qgb2YgdmFsdWVzICh0byBzZWFyY2ggYnkpLg0KCSAqIEBwYXJhbSBzdHJpbmcgICRrZXkgICAgICAgVGhlIGtleSBvbiB3aGljaCB0aGUgdmFsdWVzIGJlaW5nIHNlYXJjaGVkLg0KCSAqIEBwYXJhbSBzdHJpbmcgICRnZXQgICAgICAgVGhlIGtleSBvZiB0aGUgdmFsdWVzIHdlIHdhbnQgYmFjaw0KCSAqDQoJICogQHJldHVybiBhcnJheXxudWxsIFRoZSBhcnJheSBvZiBmb3VuZCB2YWx1ZXMuDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIHZhbHVlcyhhcnJheSAkdmFsdWVzLCBzdHJpbmcgJGtleSA9ICdndWlkJywgc3RyaW5nICRnZXQgPSAnaWQnKTogP2FycmF5Ow0KDQoJLyoqDQoJICogU2V0IGl0ZW1zDQoJICoNCgkgKiBAcGFyYW0gYXJyYXkgICAgICRpdGVtcyAgVGhlIGxpc3Qgb2YgaXRlbXMNCgkgKiBAcGFyYW0gc3RyaW5nICAgICRrZXkgICAgVGhlIGtleSBvbiB3aGljaCB0aGUgaXRlbXMgc2hvdWxkIGJlIHNldA0KCSAqDQoJICogQHJldHVybiBib29sDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIHNldChhcnJheSAkaXRlbXMsIHN0cmluZyAka2V5ID0gJ2d1aWQnKTogYm9vbDsNCg0KCS8qKg0KCSAqIERlbGV0ZSBpdGVtcw0KCSAqDQoJICogQHBhcmFtIGFycmF5ICAgICR2YWx1ZXMgIFRoZSBpdGVtIGtleSB2YWx1ZQ0KCSAqIEBwYXJhbSBzdHJpbmcgICAka2V5ICAgICBUaGUgaXRlbSBrZXkNCgkgKg0KCSAqIEByZXR1cm4gYm9vbA0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBkZWxldGUoYXJyYXkgJHZhbHVlcywgc3RyaW5nICRrZXkgPSAnZ3VpZCcpOiBib29sOw0KDQoJLyoqDQoJICogR2V0IHRoZSBjdXJyZW50IGFjdGl2ZSB0YWJsZQ0KCSAqDQoJICogQHJldHVybiAgc3RyaW5nDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGdldFRhYmxlKCk6IHN0cmluZzs=', '{}', '{}', '', 1, '2024-06-20 13:59:15', 3, '', 1), +(755, 'a5daf189-3345-4b13-8716-c51f686f545b', 'VDM.Service.Data', 'Data', 'class', 'Data Service Provider\r\n\r\n@since 3.2.0', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', 'Registry', '', '', '{\"0\":\"-1\"}', 'ServiceProviderInterface', '[[[NamespacePrefix]]]\\Joomla\\Service.Data', 1, '{}', '{}', 'dXNlIEpvb21sYVxESVxDb250YWluZXI7DQp1c2UgSm9vbWxhXERJXFNlcnZpY2VQcm92aWRlckludGVyZmFjZTs=', '{\"use_selection0\":{\"use\":\"008d111c-9d43-427c-8dd4-2653e8b74be8\",\"as\":\"default\"},\"use_selection1\":{\"use\":\"a455d916-cfe4-41df-9245-bafb709aacdb\",\"as\":\"default\"},\"use_selection2\":{\"use\":\"8f83fb79-f92b-4f1f-952b-325f6c22d11e\",\"as\":\"default\"},\"use_selection3\":{\"use\":\"3fc72954-a303-4cac-b53c-554be38b85e7\",\"as\":\"default\"},\"use_selection4\":{\"use\":\"9206082e-a3f7-472e-98b2-de90d06cbdcd\",\"as\":\"default\"},\"use_selection5\":{\"use\":\"21bca8a4-5b28-41c4-843e-8097f0ba7cca\",\"as\":\"default\"},\"use_selection6\":{\"use\":\"85785701-07b2-4f81-bc1e-0f423700c254\",\"as\":\"default\"},\"use_selection7\":{\"use\":\"46b98346-ec98-42b3-a393-96c7d1282b1c\",\"as\":\"default\"},\"use_selection8\":{\"use\":\"e0198c3f-777a-4a0b-87b7-e6a198afc8f9\",\"as\":\"default\"},\"use_selection9\":{\"use\":\"0b746305-d34e-4c21-bc20-898c4aeac376\",\"as\":\"default\"}}', 'CS8qKg0KCSAqIFJlZ2lzdGVycyB0aGUgc2VydmljZSBwcm92aWRlciB3aXRoIGEgREkgY29udGFpbmVyLg0KCSAqDQoJICogQHBhcmFtICAgQ29udGFpbmVyICAkY29udGFpbmVyICBUaGUgREkgY29udGFpbmVyLg0KCSAqDQoJICogQHJldHVybiAgdm9pZA0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiByZWdpc3RlcihDb250YWluZXIgJGNvbnRhaW5lcikNCgl7DQoJCSRjb250YWluZXItPmFsaWFzKExvYWQ6OmNsYXNzLCAnRGF0YS5Mb2FkJykNCgkJCS0+c2hhcmUoJ0RhdGEuTG9hZCcsIFskdGhpcywgJ2dldExvYWQnXSwgdHJ1ZSk7DQoNCgkJJGNvbnRhaW5lci0+YWxpYXMoSW5zZXJ0OjpjbGFzcywgJ0RhdGEuSW5zZXJ0JykNCgkJCS0+c2hhcmUoJ0RhdGEuSW5zZXJ0JywgWyR0aGlzLCAnZ2V0SW5zZXJ0J10sIHRydWUpOw0KDQoJCSRjb250YWluZXItPmFsaWFzKFVwZGF0ZTo6Y2xhc3MsICdEYXRhLlVwZGF0ZScpDQoJCQktPnNoYXJlKCdEYXRhLlVwZGF0ZScsIFskdGhpcywgJ2dldFVwZGF0ZSddLCB0cnVlKTsNCg0KCQkkY29udGFpbmVyLT5hbGlhcyhEZWxldGU6OmNsYXNzLCAnRGF0YS5EZWxldGUnKQ0KCQkJLT5zaGFyZSgnRGF0YS5EZWxldGUnLCBbJHRoaXMsICdnZXREZWxldGUnXSwgdHJ1ZSk7DQoNCgkJJGNvbnRhaW5lci0+YWxpYXMoSXRlbTo6Y2xhc3MsICdEYXRhLkl0ZW0nKQ0KCQkJLT5zaGFyZSgnRGF0YS5JdGVtJywgWyR0aGlzLCAnZ2V0SXRlbSddLCB0cnVlKTsNCg0KCQkkY29udGFpbmVyLT5hbGlhcyhJdGVtczo6Y2xhc3MsICdEYXRhLkl0ZW1zJykNCgkJCS0+c2hhcmUoJ0RhdGEuSXRlbXMnLCBbJHRoaXMsICdnZXRJdGVtcyddLCB0cnVlKTsNCg0KCQkkY29udGFpbmVyLT5hbGlhcyhTdWJmb3JtOjpjbGFzcywgJ0RhdGEuU3ViZm9ybScpDQoJCQktPnNoYXJlKCdEYXRhLlN1YmZvcm0nLCBbJHRoaXMsICdnZXRTdWJmb3JtJ10sIHRydWUpOw0KDQoJCSRjb250YWluZXItPmFsaWFzKFVzZXJzU3ViZm9ybTo6Y2xhc3MsICdEYXRhLlVzZXJzU3ViZm9ybScpDQoJCQktPnNoYXJlKCdEYXRhLlVzZXJzU3ViZm9ybScsIFskdGhpcywgJ2dldFVzZXJzU3ViZm9ybSddLCB0cnVlKTsNCg0KCQkkY29udGFpbmVyLT5hbGlhcyhNdWx0aVN1YmZvcm06OmNsYXNzLCAnRGF0YS5NdWx0aVN1YmZvcm0nKQ0KCQkJLT5zaGFyZSgnRGF0YS5NdWx0aVN1YmZvcm0nLCBbJHRoaXMsICdnZXRNdWx0aVN1YmZvcm0nXSwgdHJ1ZSk7DQoNCgkJJGNvbnRhaW5lci0+YWxpYXMoR3VpZDo6Y2xhc3MsICdEYXRhLk1pZ3JhdG9yLkd1aWQnKQ0KCQkJLT5zaGFyZSgnRGF0YS5NaWdyYXRvci5HdWlkJywgWyR0aGlzLCAnZ2V0TWlncmF0b3JHdWlkJ10sIHRydWUpOw0KCX0NCg0KCS8qKg0KCSAqIEdldCBUaGUgTG9hZCBDbGFzcy4NCgkgKg0KCSAqIEBwYXJhbSAgIENvbnRhaW5lciAgJGNvbnRhaW5lciAgVGhlIERJIGNvbnRhaW5lci4NCgkgKg0KCSAqIEByZXR1cm4gIExvYWQNCgkgKiBAc2luY2UgMy4yLjANCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZ2V0TG9hZChDb250YWluZXIgJGNvbnRhaW5lcik6IExvYWQNCgl7DQoJCXJldHVybiBuZXcgTG9hZCgNCgkJCSRjb250YWluZXItPmdldCgnTW9kZWwuTG9hZCcpLA0KCQkJJGNvbnRhaW5lci0+Z2V0KCdMb2FkJykNCgkJKTsNCgl9DQoNCgkvKioNCgkgKiBHZXQgVGhlIEluc2VydCBDbGFzcy4NCgkgKg0KCSAqIEBwYXJhbSAgIENvbnRhaW5lciAgJGNvbnRhaW5lciAgVGhlIERJIGNvbnRhaW5lci4NCgkgKg0KCSAqIEByZXR1cm4gIEluc2VydA0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBnZXRJbnNlcnQoQ29udGFpbmVyICRjb250YWluZXIpOiBJbnNlcnQNCgl7DQoJCXJldHVybiBuZXcgSW5zZXJ0KA0KCQkJJGNvbnRhaW5lci0+Z2V0KCdNb2RlbC5VcHNlcnQnKSwNCgkJCSRjb250YWluZXItPmdldCgnSW5zZXJ0JykNCgkJKTsNCgl9DQoNCgkvKioNCgkgKiBHZXQgVGhlIFVwZGF0ZSBDbGFzcy4NCgkgKg0KCSAqIEBwYXJhbSAgIENvbnRhaW5lciAgJGNvbnRhaW5lciAgVGhlIERJIGNvbnRhaW5lci4NCgkgKg0KCSAqIEByZXR1cm4gIFVwZGF0ZQ0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBnZXRVcGRhdGUoQ29udGFpbmVyICRjb250YWluZXIpOiBVcGRhdGUNCgl7DQoJCXJldHVybiBuZXcgVXBkYXRlKA0KCQkJJGNvbnRhaW5lci0+Z2V0KCdNb2RlbC5VcHNlcnQnKSwNCgkJCSRjb250YWluZXItPmdldCgnVXBkYXRlJykNCgkJKTsNCgl9DQoNCgkvKioNCgkgKiBHZXQgVGhlIERlbGV0ZSBDbGFzcy4NCgkgKg0KCSAqIEBwYXJhbSAgIENvbnRhaW5lciAgJGNvbnRhaW5lciAgVGhlIERJIGNvbnRhaW5lci4NCgkgKg0KCSAqIEByZXR1cm4gIERlbGV0ZQ0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBnZXREZWxldGUoQ29udGFpbmVyICRjb250YWluZXIpOiBEZWxldGUNCgl7DQoJCXJldHVybiBuZXcgRGVsZXRlKA0KCQkJJGNvbnRhaW5lci0+Z2V0KCdEZWxldGUnKQ0KCQkpOw0KCX0NCg0KCS8qKg0KCSAqIEdldCBUaGUgSXRlbSBDbGFzcy4NCgkgKg0KCSAqIEBwYXJhbSAgIENvbnRhaW5lciAgJGNvbnRhaW5lciAgVGhlIERJIGNvbnRhaW5lci4NCgkgKg0KCSAqIEByZXR1cm4gIEl0ZW0NCgkgKiBAc2luY2UgMy4yLjANCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZ2V0SXRlbShDb250YWluZXIgJGNvbnRhaW5lcik6IEl0ZW0NCgl7DQoJCXJldHVybiBuZXcgSXRlbSgNCgkJCSRjb250YWluZXItPmdldCgnRGF0YS5Mb2FkJyksDQoJCQkkY29udGFpbmVyLT5nZXQoJ0RhdGEuSW5zZXJ0JyksDQoJCQkkY29udGFpbmVyLT5nZXQoJ0RhdGEuVXBkYXRlJyksDQoJCQkkY29udGFpbmVyLT5nZXQoJ0RhdGEuRGVsZXRlJyksDQoJCQkkY29udGFpbmVyLT5nZXQoJ0xvYWQnKQ0KCQkpOw0KCX0NCg0KCS8qKg0KCSAqIEdldCBUaGUgSXRlbXMgQ2xhc3MuDQoJICoNCgkgKiBAcGFyYW0gICBDb250YWluZXIgICRjb250YWluZXIgIFRoZSBESSBjb250YWluZXIuDQoJICoNCgkgKiBAcmV0dXJuICBJdGVtcw0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBnZXRJdGVtcyhDb250YWluZXIgJGNvbnRhaW5lcik6IEl0ZW1zDQoJew0KCQlyZXR1cm4gbmV3IEl0ZW1zKA0KCQkJJGNvbnRhaW5lci0+Z2V0KCdEYXRhLkxvYWQnKSwNCgkJCSRjb250YWluZXItPmdldCgnRGF0YS5JbnNlcnQnKSwNCgkJCSRjb250YWluZXItPmdldCgnRGF0YS5VcGRhdGUnKSwNCgkJCSRjb250YWluZXItPmdldCgnRGF0YS5EZWxldGUnKSwNCgkJCSRjb250YWluZXItPmdldCgnTG9hZCcpDQoJCSk7DQoJfQ0KDQoJLyoqDQoJICogR2V0IFRoZSBTdWJmb3JtIENsYXNzLg0KCSAqDQoJICogQHBhcmFtICAgQ29udGFpbmVyICAkY29udGFpbmVyICBUaGUgREkgY29udGFpbmVyLg0KCSAqDQoJICogQHJldHVybiAgU3ViZm9ybQ0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBnZXRTdWJmb3JtKENvbnRhaW5lciAkY29udGFpbmVyKTogU3ViZm9ybQ0KCXsNCgkJcmV0dXJuIG5ldyBTdWJmb3JtKA0KCQkJJGNvbnRhaW5lci0+Z2V0KCdEYXRhLkl0ZW1zJykNCgkJKTsNCgl9DQoNCgkvKioNCgkgKiBHZXQgVGhlIFVzZXJzIFN1YmZvcm0gQ2xhc3MuDQoJICoNCgkgKiBAcGFyYW0gICBDb250YWluZXIgICRjb250YWluZXIgIFRoZSBESSBjb250YWluZXIuDQoJICoNCgkgKiBAcmV0dXJuICBVc2Vyc1N1YmZvcm0NCgkgKiBAc2luY2UgIDUuMC4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGdldFVzZXJzU3ViZm9ybShDb250YWluZXIgJGNvbnRhaW5lcik6IFVzZXJzU3ViZm9ybQ0KCXsNCgkJcmV0dXJuIG5ldyBVc2Vyc1N1YmZvcm0oDQoJCQkkY29udGFpbmVyLT5nZXQoJ0RhdGEuSXRlbXMnKQ0KCQkpOw0KCX0NCg0KCS8qKg0KCSAqIEdldCBUaGUgTXVsdGlTdWJmb3JtIENsYXNzLg0KCSAqDQoJICogQHBhcmFtICAgQ29udGFpbmVyICAkY29udGFpbmVyICBUaGUgREkgY29udGFpbmVyLg0KCSAqDQoJICogQHJldHVybiAgTXVsdGlTdWJmb3JtDQoJICogQHNpbmNlIDMuMi4wDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGdldE11bHRpU3ViZm9ybShDb250YWluZXIgJGNvbnRhaW5lcik6IE11bHRpU3ViZm9ybQ0KCXsNCgkJcmV0dXJuIG5ldyBNdWx0aVN1YmZvcm0oDQoJCQkkY29udGFpbmVyLT5nZXQoJ0RhdGEuU3ViZm9ybScpDQoJCSk7DQoJfQ0KDQoJLyoqDQoJICogR2V0IFRoZSBNaWdyYXRvciBUbyBHdWlkIENsYXNzLg0KCSAqDQoJICogQHBhcmFtICAgQ29udGFpbmVyICAkY29udGFpbmVyICBUaGUgREkgY29udGFpbmVyLg0KCSAqDQoJICogQHJldHVybiAgR3VpZA0KCSAqIEBzaW5jZSA1LjAuNA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBnZXRNaWdyYXRvckd1aWQoQ29udGFpbmVyICRjb250YWluZXIpOiBHdWlkDQoJew0KCQlyZXR1cm4gbmV3IEd1aWQoDQoJCQkkY29udGFpbmVyLT5nZXQoJ0RhdGEuSXRlbXMnKSwNCgkJCSRjb250YWluZXItPmdldCgnTG9hZCcpLA0KCQkJJGNvbnRhaW5lci0+Z2V0KCdVcGRhdGUnKQ0KCQkpOw0KCX0=', '{}', '{}', '', 1, '2024-06-20 14:32:50', 15, '', 1), +(756, '2dcedd6c-c95b-4a37-9cac-95d28faedca3', 'VDM.Service.Model', 'Model', 'class', 'Model Service Provider\r\n\r\n@since 3.2.0', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', 'Registry', '', '', '{\"0\":\"-1\"}', 'ServiceProviderInterface', '[[[NamespacePrefix]]]\\Joomla\\Service.Model', 1, '{}', '{}', 'dXNlIEpvb21sYVxESVxDb250YWluZXI7DQp1c2UgSm9vbWxhXERJXFNlcnZpY2VQcm92aWRlckludGVyZmFjZTs=', '{\"use_selection0\":{\"use\":\"bb29a833-73f7-4283-9327-bc7e41f0723b\",\"as\":\"default\"},\"use_selection1\":{\"use\":\"7c1fb50f-8fb1-4627-8705-6fedf7182ca5\",\"as\":\"default\"}}', 'CS8qKg0KCSAqIFJlZ2lzdGVycyB0aGUgc2VydmljZSBwcm92aWRlciB3aXRoIGEgREkgY29udGFpbmVyLg0KCSAqDQoJICogQHBhcmFtICAgQ29udGFpbmVyICAkY29udGFpbmVyICBUaGUgREkgY29udGFpbmVyLg0KCSAqDQoJICogQHJldHVybiAgdm9pZA0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiByZWdpc3RlcihDb250YWluZXIgJGNvbnRhaW5lcikNCgl7DQoJCSRjb250YWluZXItPmFsaWFzKExvYWQ6OmNsYXNzLCAnTW9kZWwuTG9hZCcpDQoJCQktPnNoYXJlKCdNb2RlbC5Mb2FkJywgWyR0aGlzLCAnZ2V0TG9hZCddLCB0cnVlKTsNCg0KCQkkY29udGFpbmVyLT5hbGlhcyhVcHNlcnQ6OmNsYXNzLCAnTW9kZWwuVXBzZXJ0JykNCgkJCS0+c2hhcmUoJ01vZGVsLlVwc2VydCcsIFskdGhpcywgJ2dldFVwc2VydCddLCB0cnVlKTsNCgl9DQoNCgkvKioNCgkgKiBHZXQgVGhlIExvYWQgQ2xhc3MuDQoJICoNCgkgKiBAcGFyYW0gICBDb250YWluZXIgICRjb250YWluZXIgIFRoZSBESSBjb250YWluZXIuDQoJICoNCgkgKiBAcmV0dXJuICBMb2FkDQoJICogQHNpbmNlIDMuMi4wDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGdldExvYWQoQ29udGFpbmVyICRjb250YWluZXIpOiBMb2FkDQoJew0KCQlyZXR1cm4gbmV3IExvYWQoDQoJCQkkY29udGFpbmVyLT5nZXQoJ1RhYmxlJykNCgkJKTsNCgl9DQoNCgkvKioNCgkgKiBHZXQgVGhlIFVwc2VydCBDbGFzcy4NCgkgKg0KCSAqIEBwYXJhbSAgIENvbnRhaW5lciAgJGNvbnRhaW5lciAgVGhlIERJIGNvbnRhaW5lci4NCgkgKg0KCSAqIEByZXR1cm4gIFVwc2VydA0KCSAqIEBzaW5jZSAzLjIuMA0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBnZXRVcHNlcnQoQ29udGFpbmVyICRjb250YWluZXIpOiBVcHNlcnQNCgl7DQoJCXJldHVybiBuZXcgVXBzZXJ0KA0KCQkJJGNvbnRhaW5lci0+Z2V0KCdUYWJsZScpDQoJCSk7DQoJfQ==', '{}', '{}', '', 1, '2024-06-20 15:00:40', 4, '', 1), +(760, '34959721-415b-4b5e-8002-3d1fc84b3b2b', 'VDM.Interfaces.Data.SubformInterface', 'SubformInterface', 'interface', 'Data Subform Interface\r\n\r\n@since 3.2.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\Interfaces.Data.SubformInterface', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIFNldCB0aGUgY3VycmVudCBhY3RpdmUgdGFibGUNCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmcgJHRhYmxlIFRoZSB0YWJsZSB0aGF0IHNob3VsZCBiZSBhY3RpdmUNCgkgKg0KCSAqIEByZXR1cm4gc2VsZg0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiB0YWJsZShzdHJpbmcgJHRhYmxlKTogc2VsZjsNCg0KCS8qKg0KCSAqIEdldCBhIHN1YmZvcm0gaXRlbXMNCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmcgICAkbGlua1ZhbHVlICBUaGUgdmFsdWUgb2YgdGhlIGxpbmsga2V5IGluIGNoaWxkIHRhYmxlLg0KCSAqIEBwYXJhbSBzdHJpbmcgICAkbGlua0tleSAgICBUaGUgbGluayBrZXkgb24gd2hpY2ggdGhlIGl0ZW1zIHdoZXJlIGxpbmtlZCBpbiB0aGUgY2hpbGQgdGFibGUuDQoJICogQHBhcmFtIHN0cmluZyAgICRmaWVsZCAgICAgIFRoZSBwYXJlbnQgZmllbGQgbmFtZSBvZiB0aGUgc3ViZm9ybSBpbiB0aGUgcGFyZW50IHZpZXcuDQoJICogQHBhcmFtIGFycmF5ICAgICRnZXQgICAgICAgIFRoZSBhcnJheSBTRVQgb2YgdGhlIGtleXMgb2YgZWFjaCByb3cgaW4gdGhlIHN1YmZvcm0uDQoJICogQHBhcmFtIGJvb2wgICAgICRtdWx0aSAgICAgIFRoZSBzd2l0Y2ggdG8gcmV0dXJuIGEgbXVsdGlwbGUgc2V0Lg0KCSAqDQoJICogQHJldHVybiBhcnJheXxudWxsICAgVGhlIHN1YmZvcm0NCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZ2V0KHN0cmluZyAkbGlua1ZhbHVlLCBzdHJpbmcgJGxpbmtLZXksIHN0cmluZyAkZmllbGQsIGFycmF5ICRnZXQsIGJvb2wgJG11bHRpID0gdHJ1ZSk6ID9hcnJheTsNCg0KCS8qKg0KCSAqIFNldCBhIHN1YmZvcm0gaXRlbXMNCgkgKg0KCSAqIEBwYXJhbSBtaXhlZCAgICAkaXRlbXMgICAgICBUaGUgbGlzdCBvZiBpdGVtcyBmcm9tIHRoZSBzdWJmb3JtIHRvIHNldA0KCSAqIEBwYXJhbSBzdHJpbmcgICAkaW5kZXhLZXkgICBUaGUgaW5kZXgga2V5IG9uIHdoaWNoIHRoZSBpdGVtcyBzaG91bGQgYmUgb2JzZXJ2ZWQgYXMgaXQgcmVsYXRlcyB0byBpbnNlcnQvdXBkYXRlL2RlbGV0ZS4NCgkgKiBAcGFyYW0gc3RyaW5nICAgJGxpbmtLZXkgICAgVGhlIGxpbmsga2V5IG9uIHdoaWNoIHRoZSBpdGVtcyB3aGVyZSBsaW5rZWQgaW4gdGhlIGNoaWxkIHRhYmxlLg0KCSAqIEBwYXJhbSBzdHJpbmcgICAkbGlua1ZhbHVlICBUaGUgdmFsdWUgb2YgdGhlIGxpbmsga2V5IGluIGNoaWxkIHRhYmxlLg0KCSAqDQoJICogQHJldHVybiBib29sDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIHNldChtaXhlZCAkaXRlbXMsIHN0cmluZyAkaW5kZXhLZXksIHN0cmluZyAkbGlua0tleSwgc3RyaW5nICRsaW5rVmFsdWUpOiBib29sOw0KDQoJLyoqDQoJICogR2V0IHRoZSBjdXJyZW50IGFjdGl2ZSB0YWJsZQ0KCSAqDQoJICogQHJldHVybiAgc3RyaW5nDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGdldFRhYmxlKCk6IHN0cmluZzs=', '{}', '{}', '', 1, '2024-06-21 11:49:38', 6, '', 1), +(761, '9d76b8dc-3883-4755-b11c-131d19ca8a53', 'VDM.Data.Factory', 'Factory', 'abstract class', 'Data Factory\r\n\r\n@since 3.2.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '2e5bf608-de5c-4b00-a20d-47c26aa350d9', '', '', '', '{\"0\":\"caf33c5d-858c-4f9a-894f-ab302ec5445a\"}', '', '[[[NamespacePrefix]]]\\Joomla\\Data.Factory', 1, '{}', '{}', 'dXNlIEpvb21sYVxESVxDb250YWluZXI7', '{\"use_selection0\":{\"use\":\"19b2ba92-1655-4384-acfb-979c80de8b6d\",\"as\":\"default\"},\"use_selection1\":{\"use\":\"4815e1c7-a433-443d-a112-d1e03d7df84b\",\"as\":\"default\"},\"use_selection2\":{\"use\":\"2dcedd6c-c95b-4a37-9cac-95d28faedca3\",\"as\":\"default\"},\"use_selection3\":{\"use\":\"a5daf189-3345-4b13-8716-c51f686f545b\",\"as\":\"default\"}}', 'CS8qKg0KCSAqIFBhY2thZ2UgQ29udGFpbmVyDQoJICoNCgkgKiBAdmFyICAgQ29udGFpbmVyfG51bGwNCgkgKiBAc2luY2UgNS4wLjMNCgkgKiovDQoJcHJvdGVjdGVkIHN0YXRpYyA/Q29udGFpbmVyICRjb250YWluZXIgPSBudWxsOw0KDQoJLyoqDQoJICogQ3JlYXRlIGEgY29udGFpbmVyIG9iamVjdA0KCSAqDQoJICogQHJldHVybiAgQ29udGFpbmVyDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHJvdGVjdGVkIHN0YXRpYyBmdW5jdGlvbiBjcmVhdGVDb250YWluZXIoKTogQ29udGFpbmVyDQoJew0KCQlyZXR1cm4gKG5ldyBDb250YWluZXIoKSkNCgkJCS0+cmVnaXN0ZXJTZXJ2aWNlUHJvdmlkZXIobmV3IFRhYmxlKCkpDQoJCQktPnJlZ2lzdGVyU2VydmljZVByb3ZpZGVyKG5ldyBEYXRhYmFzZSgpKQ0KCQkJLT5yZWdpc3RlclNlcnZpY2VQcm92aWRlcihuZXcgTW9kZWwoKSkNCgkJCS0+cmVnaXN0ZXJTZXJ2aWNlUHJvdmlkZXIobmV3IERhdGEoKSk7DQoJfQ==', '{}', '{}', '', 1, '2024-06-23 15:19:33', 9, '', 1), +(762, '19b2ba92-1655-4384-acfb-979c80de8b6d', 'VDM.Service.Table', 'Table', 'class', 'Table Service Provider\r\n\r\n@since 3.2.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '{\"0\":\"-1\"}', 'ServiceProviderInterface', '[[[NamespacePrefix]]]\\Joomla\\Service.Table', 1, '{}', '{}', 'dXNlIEpvb21sYVxESVxDb250YWluZXI7DQp1c2UgSm9vbWxhXERJXFNlcnZpY2VQcm92aWRlckludGVyZmFjZTs=', '{\"use_selection0\":{\"use\":\"bfd1d6d5-56c1-4fe9-9fee-1c5910e1f5d8\",\"as\":\"DataTable\"},\"use_selection1\":{\"use\":\"b3d2ec33-76d4-4c3b-bb2c-86ac14a221ce\",\"as\":\"default\"},\"use_selection2\":{\"use\":\"79fd4f39-824d-4ab6-936d-959705ff24ec\",\"as\":\"default\"}}', 'CS8qKg0KCSAqIFJlZ2lzdGVycyB0aGUgc2VydmljZSBwcm92aWRlciB3aXRoIGEgREkgY29udGFpbmVyLg0KCSAqDQoJICogQHBhcmFtICAgQ29udGFpbmVyICAkY29udGFpbmVyICBUaGUgREkgY29udGFpbmVyLg0KCSAqDQoJICogQHJldHVybiAgdm9pZA0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiByZWdpc3RlcihDb250YWluZXIgJGNvbnRhaW5lcikNCgl7DQoJCSRjb250YWluZXItPmFsaWFzKERhdGFUYWJsZTo6Y2xhc3MsICdUYWJsZScpDQoJCQktPnNoYXJlKCdUYWJsZScsIFskdGhpcywgJ2dldFRhYmxlJ10sIHRydWUpOw0KDQoJCSRjb250YWluZXItPmFsaWFzKFNjaGVtYTo6Y2xhc3MsICdUYWJsZS5TY2hlbWEnKQ0KCQkJLT5zaGFyZSgnVGFibGUuU2NoZW1hJywgWyR0aGlzLCAnZ2V0U2NoZW1hJ10sIHRydWUpOw0KDQoJCSRjb250YWluZXItPmFsaWFzKFZhbGlkYXRvcjo6Y2xhc3MsICdUYWJsZS5WYWxpZGF0b3InKQ0KCQkJLT5zaGFyZSgnVGFibGUuVmFsaWRhdG9yJywgWyR0aGlzLCAnZ2V0VmFsaWRhdG9yJ10sIHRydWUpOw0KCX0NCg0KCS8qKg0KCSAqIEdldCBUaGUgW1tbQ29tcG9uZW50XV1dIERhdGEgVGFibGUgQ2xhc3MuDQoJICoNCgkgKiBAcGFyYW0gICBDb250YWluZXIgICRjb250YWluZXIgIFRoZSBESSBjb250YWluZXIuDQoJICoNCgkgKiBAcmV0dXJuICBEYXRhVGFibGUNCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZ2V0VGFibGUoQ29udGFpbmVyICRjb250YWluZXIpOiBEYXRhVGFibGUNCgl7DQoJCXJldHVybiBuZXcgRGF0YVRhYmxlKCk7DQoJfQ0KDQoJLyoqDQoJICogR2V0IFRoZSBTY2hlbWEgQ2xhc3MuDQoJICoNCgkgKiBAcGFyYW0gICBDb250YWluZXIgICRjb250YWluZXIgIFRoZSBESSBjb250YWluZXIuDQoJICoNCgkgKiBAcmV0dXJuICBTY2hlbWENCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZ2V0U2NoZW1hKENvbnRhaW5lciAkY29udGFpbmVyKTogU2NoZW1hDQoJew0KCQlyZXR1cm4gbmV3IFNjaGVtYSgNCgkJCSRjb250YWluZXItPmdldCgnVGFibGUnKQ0KCQkpOw0KCX0NCg0KCS8qKg0KCSAqIEdldCBUaGUgVmFsaWRhdG9yIENsYXNzLg0KCSAqDQoJICogQHBhcmFtICAgQ29udGFpbmVyICAkY29udGFpbmVyICBUaGUgREkgY29udGFpbmVyLg0KCSAqDQoJICogQHJldHVybiAgVmFsaWRhdG9yDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGdldFZhbGlkYXRvcihDb250YWluZXIgJGNvbnRhaW5lcik6IFZhbGlkYXRvcg0KCXsNCgkJcmV0dXJuIG5ldyBWYWxpZGF0b3IoDQoJCQkkY29udGFpbmVyLT5nZXQoJ1RhYmxlJykNCgkJKTsNCgl9', '{}', '{}', '', 1, '2024-06-23 15:24:18', 7, '', 1), +(763, '2e5bf608-de5c-4b00-a20d-47c26aa350d9', 'VDM.Factory', 'Factory', 'abstract class', '/** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** **\r\n ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** **\r\n **\r\n ** In realms of code where purists frown, the anti-pattern wears a crown,\r\n ** A paradox of chaos bright, where complex paths lose all its slight.\r\n ** For in its tangled, wild embrace, lies raw creativity\'s face,\r\n ** No rigid forms, no strict decree, just boundless, daring artistry.\r\n ** In flaws, we find the freedom\'s key, where messy code and brilliance spree,\r\n ** A dance of thought, unchained, unbound, in anti-pattern, beauty\'s found.\r\n **\r\n ** Perfect Paradox and True Nature of the Anti-Pattern by ChatGPT\r\n **\r\n ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** **\r\n ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** **\r\n **\r\n ** @since 0.0.0\r\n **/', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '{\"0\":\"caf33c5d-858c-4f9a-894f-ab302ec5445a\"}', '', '[[[NamespacePrefix]]]\\Joomla\\Abstraction.Factory', 1, '{}', '{}', 'dXNlIEpvb21sYVxESVxDb250YWluZXI7', '{}', 'CS8qKg0KCSAqIEdldCBhbnkgY2xhc3MgZnJvbSB0aGUgcGFja2FnZSBjb250YWluZXINCgkgKg0KCSAqIEBwYXJhbSAgIHN0cmluZyAgJGtleSAgVGhlIGNvbnRhaW5lciBjbGFzcyBrZXkNCgkgKg0KCSAqIEByZXR1cm4gIE1peGVkDQoJICogQHNpbmNlIDAuMC4wDQoJICovDQoJcHVibGljIHN0YXRpYyBmdW5jdGlvbiBfKCRrZXkpDQoJew0KCQlyZXR1cm4gc3RhdGljOjpnZXRDb250YWluZXIoKS0+Z2V0KCRrZXkpOw0KCX0NCg0KCS8qKg0KCSAqIEdldCB0aGUgZ2xvYmFsIHBhY2thZ2UgY29udGFpbmVyDQoJICoNCgkgKiBAcmV0dXJuICBDb250YWluZXINCgkgKiBAc2luY2UgMC4wLjANCgkgKi8NCglwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIGdldENvbnRhaW5lcigpOiBDb250YWluZXINCgl7DQoJCWlmICghc3RhdGljOjokY29udGFpbmVyKQ0KCQl7DQoJCQlzdGF0aWM6OiRjb250YWluZXIgPSBzdGF0aWM6OmNyZWF0ZUNvbnRhaW5lcigpOw0KCQl9DQoNCgkJcmV0dXJuIHN0YXRpYzo6JGNvbnRhaW5lcjsNCgl9DQoNCgkvKioNCgkgKiBDcmVhdGUgYSBjb250YWluZXIgb2JqZWN0DQoJICoNCgkgKiBAcmV0dXJuICBDb250YWluZXINCgkgKiBAc2luY2UgMC4wLjANCgkgKi8NCglhYnN0cmFjdCBwcm90ZWN0ZWQgc3RhdGljIGZ1bmN0aW9uIGNyZWF0ZUNvbnRhaW5lcigpOiBDb250YWluZXI7', '{}', '{}', '{\"source\":{\"1a1b6f3d-f16c-431a-b270-7a8a80cc7f56-settings\":\"3b35f4a543a6818ede91ddd99c46bdac2bafe2ed\",\"1a1b6f3d-f16c-431a-b270-7a8a80cc7f56-power\":\"815f85ce8cda72dcb7bb2da0c9baf7c1e0a2fbb4\",\"1a1b6f3d-f16c-431a-b270-7a8a80cc7f56-readme\":\"b44a0bc256ccb5ed3c604d2078b5c82a019c4f66\"}}', 1, '2024-06-23 16:01:42', 16, '', 1), +(764, 'e0198c3f-777a-4a0b-87b7-e6a198afc8f9', 'VDM.Data.MultiSubform', 'MultiSubform', 'final class', 'CRUD the data of multi subform to another views (tables)\r\n\r\n@since 3.2.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICAzcmQgU2VwdGVtYmVyLCAyMDIwDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '{\"0\":\"bb30f709-53d2-446a-ab3d-300fe6de0bc8\"}', '', '[[[NamespacePrefix]]]\\Joomla\\Data.MultiSubform', '', '{}', '{}', '', '{\"use_selection0\":{\"use\":\"34959721-415b-4b5e-8002-3d1fc84b3b2b\",\"as\":\"Subform\"}}', 'CS8qKg0KCSAqIFRoZSBTdWJmb3JtIENsYXNzLg0KCSAqDQoJICogQHZhciAgIFN1YmZvcm0NCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwcm90ZWN0ZWQgU3ViZm9ybSAkc3ViZm9ybTsNCg0KCS8qKg0KCSAqIENvbnN0cnVjdG9yLg0KCSAqDQoJICogQHBhcmFtIFN1YmZvcm0gICAgICRzdWJmb3JtICAgVGhlIFN1YmZvcm0gQ2xhc3MuDQoJICoNCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoU3ViZm9ybSAkc3ViZm9ybSkNCgl7DQoJCSR0aGlzLT5zdWJmb3JtID0gJHN1YmZvcm07DQoJfQ0KDQoJLyoqDQoJICogR2V0IGEgc3ViZm9ybSBpdGVtcw0KCSAqDQoJICogQHBhcmFtIGFycmF5ICAgJGdldE1hcCAgVGhlIG1hcCB0byBnZXQgdGhlIHN1YmZyb20gZGF0YQ0KCSAqDQoJICogICAgIEV4YW1wbGU6DQoJICogICAgICAgICRnZXRNYXAgPSBbDQoJICogICAgICAgIAknX2NvcmUnID0+IFsNCgkgKiAgICAgICAgCQkndGFibGUnID0+J2RhdGEnLA0KCSAqICAgICAgICAJCSdsaW5rVmFsdWUnID0+ICRpdGVtLT5ndWlkID8/ICcnLA0KCSAqICAgICAgICAJCSdsaW5rS2V5JyA9PiAnbG9vaycsDQoJICogICAgICAgIAkJJ2ZpZWxkJyA9PiAnZGF0YScsDQoJICogICAgICAgIAkJJ2dldCcgPT4gWydndWlkJywnZW1haWwnLCdpbWFnZScsJ21vYmlsZV9waG9uZScsJ3dlYnNpdGUnLCdkYXRlb2ZiaXJ0aCddDQoJICogICAgICAgIAldLA0KCSAqICAgICAgICAJJ2NvdW50cmllcycgPT4gWw0KCSAqICAgICAgICAJCSd0YWJsZScgPT4nZGF0YV9jb3VudHJ5JywNCgkgKiAgICAgICAgCQknbGlua1ZhbHVlJyA9PiAnZGF0YTpndWlkJywgLy8gY29yZXRhYmxlOmZpZWxkbmFtZQ0KCSAqICAgICAgICAJCSdsaW5rS2V5JyA9PiAnZGF0YScsDQoJICogICAgICAgIAkJJ2dldCcgPT4gWydndWlkJywnY291bnRyeScsJ2N1cnJlbmN5J10NCgkgKiAgICAgICAgCV0NCgkgKiAgICAgICAgXTsNCgkgKg0KCSAqIEByZXR1cm4gYXJyYXl8bnVsbCAgIFRoZSBzdWJmb3JtDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGdldChhcnJheSAkZ2V0TWFwKTogP2FycmF5DQoJew0KCQkvLyBWYWxpZGF0ZSB0aGUgY29yZSBtYXAgcHJlc2VuY2UgYW5kIHN0cnVjdHVyZQ0KCQlpZiAoIWlzc2V0KCRnZXRNYXBbJ19jb3JlJ10pIHx8ICFpc19hcnJheSgkZ2V0TWFwWydfY29yZSddKSB8fCAhJHRoaXMtPnZhbGlkR2V0TWFwKCRnZXRNYXBbJ19jb3JlJ10pKQ0KCQl7DQoJCQlyZXR1cm4gbnVsbDsNCgkJfQ0KDQoJCS8vIEluaXRpYWxpemUgdGhlIGNvcmUgZGF0YQ0KCQkkY29yZURhdGEgPSAkdGhpcy0+Z2V0U3ViZm9ybURhdGEoJGdldE1hcFsnX2NvcmUnXSk7DQoNCgkJLy8gUmV0dXJuIG51bGwgaWYgZmV0Y2hpbmcgY29yZSBkYXRhIGZhaWxzDQoJCWlmIChudWxsID09PSAkY29yZURhdGEpDQoJCXsNCgkJCXJldHVybiBudWxsOw0KCQl9DQoJCSR0YWJsZSA9ICRnZXRNYXBbJ19jb3JlJ11bJ3RhYmxlJ107DQoJCXVuc2V0KCRnZXRNYXBbJ19jb3JlJ10pOw0KDQoJCS8vIFJlY3Vyc2l2ZWx5IGdldCBkYXRhIGZvciBhbGwgbmVzdGVkIHN1YmZvcm1zDQoJCXJldHVybiAkdGhpcy0+Z2V0TmVzdGVkU3ViZm9ybXMoJGdldE1hcCwgJGNvcmVEYXRhLCAkdGFibGUpOw0KCX0NCg0KCS8qKg0KCSAqIFNldCBhIHN1YmZvcm0gaXRlbXMNCgkgKg0KCSAqIEBwYXJhbSBtaXhlZCAgICRpdGVtcyAgICBUaGUgbGlzdCBvZiBpdGVtcyBmcm9tIHRoZSBzdWJmb3JtIHRvIHNldA0KCSAqIEBwYXJhbSBhcnJheSAgICRzZXRNYXAgICBUaGUgbWFwIHRvIHNldCB0aGUgc3ViZnJvbSBkYXRhDQoJICoNCgkgKiAgICAgRXhhbXBsZToNCgkgKiAgICAgICAgJGl0ZW1zLA0KCSAqICAgICAgICAkc2V0TWFwID0gWw0KCSAqICAgICAgICAJJ19jb3JlJyA9PiBbDQoJICogICAgICAgIAkJJ3RhYmxlJyA9PiAnZGF0YScsDQoJICogICAgICAgIAkJJ2luZGV4S2V5JyA9PiAnZ3VpZCcsDQoJICogICAgICAgIAkJJ2xpbmtLZXknID0+ICdsb29rJywNCgkgKiAgICAgICAgCQknbGlua1ZhbHVlJyA9PiAkZGF0YVsnZ3VpZCddID8/ICcnDQoJICogICAgICAgIAldLA0KCSAqICAgICAgICAJJ2NvdW50cmllcycgPT4gWw0KCSAqICAgICAgICAJCSd0YWJsZScgPT4nZGF0YV9jb3VudHJ5JywNCgkgKiAgICAgICAgCQknaW5kZXhLZXknID0+ICdndWlkJywNCgkgKiAgICAgICAgCQknbGlua0tleScgPT4gJ2RhdGEnLA0KCSAqICAgICAgICAJCSdsaW5rVmFsdWUnID0+ICdkYXRhOmd1aWQnIC8vIGNvcmV0YWJsZTpmaWVsZG5hbWUNCgkgKiAgICAgICAgCV0NCgkgKiAgICAgICAgXTsNCgkgKg0KCSAqIEByZXR1cm4gYm9vbA0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBzZXQobWl4ZWQgJGl0ZW1zLCBhcnJheSAkc2V0TWFwKTogYm9vbA0KCXsNCgkJLy8gVmFsaWRhdGUgdGhlIGNvcmUgbWFwIHByZXNlbmNlIGFuZCBzdHJ1Y3R1cmUNCgkJaWYgKCFpc3NldCgkc2V0TWFwWydfY29yZSddKSB8fCAhaXNfYXJyYXkoJHNldE1hcFsnX2NvcmUnXSkgfHwgISR0aGlzLT52YWxpZFNldE1hcCgkc2V0TWFwWydfY29yZSddKSkNCgkJew0KCQkJcmV0dXJuIGZhbHNlOw0KCQl9DQoNCgkJLy8gY2F0Y2ggYW4gZW1wdHkgc2V0DQoJCWlmICghaXNfYXJyYXkoJGl0ZW1zKSkNCgkJew0KCQkJJGl0ZW1zID0gW107IC8vIHdpbGwgZGVsZXRlIGFsbCBleGlzdGluZyBsaW5rZWQgaXRlbXMgOiggbm90IGlkZWFsLCBidXQgcmVhbA0KCQl9DQoJCWVsc2UNCgkJew0KCQkJLy8gbWFrZSBzdXJlIHRoZSBzdWItc3ViZm9ybTpsaW5rVmFsdWVbZGF0YTpndWlkXQ0KCQkJLy8gaXMgc2V0IHdpdGggdGhlIG5lZWRlZCBrZXkgaWYgcG9zc2libGUNCgkJCS8vIHRoaXMgZW5zdXJlcyB0aGF0IG5ldyBzdWItc3ViZm9ybSBkYXRhIGlzIGNvcnJlY3RseSBsaW5rZWQNCgkJCSR0aGlzLT5wcmVwTGlua1ZhbHVlKCRpdGVtcywgJHNldE1hcCk7DQoJCX0NCg0KCQkvLyBTYXZlIHRoZSBjb3JlIGRhdGENCgkJaWYgKCEkdGhpcy0+c2V0U3ViZm9ybURhdGEoJGl0ZW1zLCAkc2V0TWFwWydfY29yZSddKSkNCgkJew0KCQkJcmV0dXJuIGZhbHNlOw0KCQl9DQoJCSR0YWJsZSA9ICRzZXRNYXBbJ19jb3JlJ11bJ3RhYmxlJ107DQoJCXVuc2V0KCRzZXRNYXBbJ19jb3JlJ10pOw0KDQoJCS8vIFJlY3Vyc2l2ZWx5IHNldCBkYXRhIGZvciBhbGwgbmVzdGVkIHN1YmZvcm1zDQoJCXJldHVybiAkdGhpcy0+c2V0TmVzdGVkU3ViZm9ybXMoJHNldE1hcCwgJGl0ZW1zLCAkdGFibGUpOw0KCX0NCg0KCS8qKg0KCSAqIEZldGNoIGRhdGEgYmFzZWQgb24gcHJvdmlkZWQgbWFwIGNvbmZpZ3VyYXRpb24uDQoJICoNCgkgKiBAcGFyYW0gYXJyYXkgICAgICAgJG1hcCAgICAgICBNYXAgY29uZmlndXJhdGlvbg0KCSAqIEBwYXJhbSBhcnJheXxudWxsICAkY29yZURhdGEgIFRoZSBjb3JlIGRhdGEgdG8gYmUgYXBwZW5kZWQgd2l0aCBzdWJmb3JtIGRhdGENCgkgKg0KCSAqIEByZXR1cm4gYXJyYXl8bnVsbCBGZXRjaGVkIGRhdGEgb3IgbnVsbCBvbiBmYWlsdXJlDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHJpdmF0ZSBmdW5jdGlvbiBnZXRTdWJmb3JtRGF0YShhcnJheSAkbWFwLCA/YXJyYXkgJGNvcmVEYXRhID0gbnVsbCk6ID9hcnJheQ0KCXsNCgkJJG1hcFsnbGlua1ZhbHVlJ10gPSAkdGhpcy0+c2V0TGlua1ZhbHVlKCRtYXBbJ2xpbmtWYWx1ZSddLCAkY29yZURhdGEpOw0KDQoJCWlmIChlbXB0eSgkbWFwWydsaW5rVmFsdWUnXSkgfHwgc3RycG9zKCRtYXBbJ2xpbmtWYWx1ZSddLCAnOicpICE9PSBmYWxzZSkNCgkJew0KCQkJcmV0dXJuIG51bGw7DQoJCX0NCg0KCQlyZXR1cm4gJHRoaXMtPnN1YmZvcm0tPnRhYmxlKCRtYXBbJ3RhYmxlJ10pLT5nZXQoDQoJCQkkbWFwWydsaW5rVmFsdWUnXSwNCgkJCSRtYXBbJ2xpbmtLZXknXSwNCgkJCSRtYXBbJ2ZpZWxkJ10sDQoJCQkkbWFwWydnZXQnXQ0KCQkpOw0KCX0NCg0KCS8qKg0KCSAqIFNldCBkYXRhIGJhc2VkIG9uIHByb3ZpZGVkIG1hcCBjb25maWd1cmF0aW9uLg0KCSAqDQoJICogQHBhcmFtIGFycmF5ICAgICAgICRpdGVtcyAgICAgVGhlIGxpc3Qgb2YgaXRlbXMgZnJvbSB0aGUgc3ViZm9ybSB0byBzZXQNCgkgKiBAcGFyYW0gYXJyYXkgICAgICAgJG1hcCAgICAgICBUaGUgbWFwIHRvIHNldCB0aGUgc3ViZnJvbSBkYXRhDQoJICogQHBhcmFtIGFycmF5fG51bGwgICRjb3JlRGF0YSAgVGhlIGNvcmUgZGF0YSB0byBiZSBhcHBlbmRlZCB3aXRoIHN1YmZvcm0gZGF0YQ0KCSAqDQoJICogQHJldHVybiBib29sDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHJpdmF0ZSBmdW5jdGlvbiBzZXRTdWJmb3JtRGF0YShhcnJheSAkaXRlbXMsIGFycmF5ICRtYXAsID9hcnJheSAkY29yZURhdGEgPSBudWxsKTogYm9vbA0KCXsNCgkJJG1hcFsnbGlua1ZhbHVlJ10gPSAkdGhpcy0+c2V0TGlua1ZhbHVlKCRtYXBbJ2xpbmtWYWx1ZSddLCAkY29yZURhdGEpOw0KDQoJCWlmIChlbXB0eSgkbWFwWydsaW5rVmFsdWUnXSkgfHwgc3RycG9zKCRtYXBbJ2xpbmtWYWx1ZSddLCAnOicpICE9PSBmYWxzZSkNCgkJew0KCQkJcmV0dXJuIGZhbHNlOw0KCQl9DQoNCgkJcmV0dXJuICR0aGlzLT5zdWJmb3JtLT50YWJsZSgkbWFwWyd0YWJsZSddKS0+c2V0KA0KCQkJJGl0ZW1zLA0KCQkJJG1hcFsnaW5kZXhLZXknXSwNCgkJCSRtYXBbJ2xpbmtLZXknXSwNCgkJCSRtYXBbJ2xpbmtWYWx1ZSddDQoJCSk7DQoJfQ0KDQoJLyoqDQoJICogU2V0IHRoZSBsaW5rZWQgdmFsdWUgaWYgbmVlZGVkLCBhbmQgcG9zaWJsZS4NCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmcgICAgICAkbGlua1ZhbHVlICAgVGhlIGN1cnJlbnQgbGlua1ZhbHVlDQoJICogQHBhcmFtIGFycmF5fG51bGwgICRkYXRhICAgICAgICBUaGUgYWxyZWFkeSBmb3VuZCBkYXRhIGFzIHRhYmxlID0+IGRhdGFTZXRbZmllbGRdID0+IHZhbHVlDQoJICoNCgkgKiBAcmV0dXJuIHN0cmluZ3xudWxsIFRoZSBhY3R1YWwgbGlua1ZhbHVlDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHJpdmF0ZSBmdW5jdGlvbiBzZXRMaW5rVmFsdWUoc3RyaW5nICRsaW5rVmFsdWUsID9hcnJheSAkZGF0YSA9IG51bGwpOiA/c3RyaW5nDQoJew0KCQlpZiAoJGRhdGEgIT09IG51bGwgJiYgc3RycG9zKCRsaW5rVmFsdWUsICc6JykgIT09IGZhbHNlKQ0KCQl7DQoJCQlbJHRhYmxlLCAkZmllbGRdID0gZXhwbG9kZSgnOicsICRsaW5rVmFsdWUpOw0KCQkJJGxpbmtWYWx1ZSA9ICRkYXRhWyR0YWJsZV1bJGZpZWxkXSA/PyBudWxsOw0KCQl9DQoNCgkJcmV0dXJuICRsaW5rVmFsdWU7DQoJfQ0KDQoJLyoqDQoJICogUmVjdXJzaXZlbHkgcHJvY2VzcyBhZGRpdGlvbmFsIHN1YmZvcm0gZGF0YS4NCgkgKg0KCSAqIEBwYXJhbSBhcnJheSAgJGdldE1hcCAgICAgICBUaGUgbmVzdGVkIG1hcCBvZiBkYXRhIHRvIHByb2Nlc3MNCgkgKiBAcGFyYW0gYXJyYXkgICRzdWJmb3JtRGF0YSAgVGhlIGNvcmUgc3ViZm9ybSBkYXRhDQoJICogQHBhcmFtIHN0cmluZyAkdGFibGUgICAgICAgIFRoZSBjb3JlIHRhYmxlDQoJICoNCgkgKiBAcmV0dXJuIGFycmF5IFRoZSBjb3JlIGRhdGEgd2l0aCBuZXN0ZWQgc3ViZm9ybXMgaW5jbHVkZWQNCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwcml2YXRlIGZ1bmN0aW9uIGdldE5lc3RlZFN1YmZvcm1zKGFycmF5ICRnZXRNYXAsIGFycmF5ICRzdWJmb3JtRGF0YSwgc3RyaW5nICR0YWJsZSk6IGFycmF5DQoJew0KCQlmb3JlYWNoICgkc3ViZm9ybURhdGEgYXMgJiRzdWJmb3JtKQ0KCQl7DQoJCQkkc3ViZm9ybSA9ICR0aGlzLT5wcm9jZXNzR2V0U3ViZm9ybSgkZ2V0TWFwLCAkc3ViZm9ybSwgJHRhYmxlKTsNCgkJfQ0KDQoJCXJldHVybiAkc3ViZm9ybURhdGE7DQoJfQ0KDQoJLyoqDQoJICogUmVjdXJzaXZlbHkgcHJvY2VzcyBhZGRpdGlvbmFsIHN1YmZvcm0gZGF0YS4NCgkgKg0KCSAqIEBwYXJhbSBhcnJheSAgJHNldE1hcCAgICAgICBUaGUgbmVzdGVkIG1hcCBvZiBkYXRhIHRvIHByb2Nlc3MNCgkgKiBAcGFyYW0gYXJyYXkgICRzdWJmb3JtRGF0YSAgVGhlIGNvcmUgc3ViZm9ybSBkYXRhDQoJICogQHBhcmFtIHN0cmluZyAkdGFibGUgICAgICAgIFRoZSBjb3JlIHRhYmxlDQoJICoNCgkgKiBAcmV0dXJuIGJvb2wNCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwcml2YXRlIGZ1bmN0aW9uIHNldE5lc3RlZFN1YmZvcm1zKGFycmF5ICRzZXRNYXAsIGFycmF5ICRzdWJmb3JtRGF0YSwgc3RyaW5nICR0YWJsZSk6IGJvb2wNCgl7DQoJCSRzdGF0dXMgPSB0cnVlOw0KCQlmb3JlYWNoICgkc3ViZm9ybURhdGEgYXMgJHN1YmZvcm0pDQoJCXsNCgkJCWlmICghJHRoaXMtPnByb2Nlc3NTZXRTdWJmb3JtKCRzZXRNYXAsICRzdWJmb3JtLCAkdGFibGUpKQ0KCQkJew0KCQkJCSRzdGF0dXMgPSBmYWxzZTsNCgkJCX0NCgkJfQ0KDQoJCXJldHVybiAkc3RhdHVzOw0KCX0NCg0KCS8qKg0KCSAqIFByb2Nlc3MgZWFjaCBzdWJmb3JtIGVudHJ5IGJhc2VkIG9uIHRoZSBtYXAuDQoJICoNCgkgKiBAcGFyYW0gYXJyYXkgICRnZXRNYXAgICAgTWFwcGluZyBkYXRhIGZvciBwcm9jZXNzaW5nIHN1YmZvcm1zDQoJICogQHBhcmFtIGFycmF5ICAkc3ViZm9ybSAgIEEgc2luZ2xlIHN1YmZvcm0gZW50cnkNCgkgKiBAcGFyYW0gc3RyaW5nICR0YWJsZSAgICAgVGhlIHRhYmxlIG5hbWUgdXNlZCBmb3IgbGlua2luZyB2YWx1ZXMNCgkgKiANCgkgKiBAcmV0dXJuIGFycmF5IFVwZGF0ZWQgc3ViZm9ybQ0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqLw0KCXByaXZhdGUgZnVuY3Rpb24gcHJvY2Vzc0dldFN1YmZvcm0oYXJyYXkgJGdldE1hcCwgYXJyYXkgJHN1YmZvcm0sIHN0cmluZyAkdGFibGUpOiBhcnJheQ0KCXsNCgkJZm9yZWFjaCAoJGdldE1hcCBhcyAka2V5ID0+ICRtYXApDQoJCXsNCgkJCWlmICghaXNfYXJyYXkoJG1hcCkgfHwgaXNzZXQoJHN1YmZvcm1bJGtleV0pKQ0KCQkJew0KCQkJCWNvbnRpbnVlOw0KCQkJfQ0KDQoJCQkkdGhpcy0+cHJvY2Vzc0dldE1hcCgkc3ViZm9ybSwgJG1hcCwgJGtleSwgJHRhYmxlKTsNCgkJfQ0KDQoJCXJldHVybiAkc3ViZm9ybTsNCgl9DQoNCgkvKioNCgkgKiBQcm9jZXNzIGVhY2ggc3ViZm9ybSBlbnRyeSBiYXNlZCBvbiB0aGUgbWFwLg0KCSAqDQoJICogQHBhcmFtIGFycmF5ICAkc2V0TWFwICAgIE1hcHBpbmcgZGF0YSBmb3IgcHJvY2Vzc2luZyBzdWJmb3Jtcw0KCSAqIEBwYXJhbSBhcnJheSAgJHN1YmZvcm0gICBBIHNpbmdsZSBzdWJmb3JtIGVudHJ5DQoJICogQHBhcmFtIHN0cmluZyAkdGFibGUgICAgIFRoZSB0YWJsZSBuYW1lIHVzZWQgZm9yIGxpbmtpbmcgdmFsdWVzDQoJICogDQoJICogQHJldHVybiBib29sDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHJpdmF0ZSBmdW5jdGlvbiBwcm9jZXNzU2V0U3ViZm9ybShhcnJheSAkc2V0TWFwLCBhcnJheSAkc3ViZm9ybSwgc3RyaW5nICR0YWJsZSk6IGJvb2wNCgl7DQoJCSRzdGF0dXMgPSB0cnVlOw0KCQlmb3JlYWNoICgkc2V0TWFwIGFzICRrZXkgPT4gJG1hcCkNCgkJew0KCQkJaWYgKCFpc19hcnJheSgkbWFwKSB8fCAhaXNzZXQoJHN1YmZvcm1bJGtleV0pKQ0KCQkJew0KCQkJCWNvbnRpbnVlOw0KCQkJfQ0KDQoJCQlpZiAoISR0aGlzLT5wcm9jZXNzU2V0TWFwKCRzdWJmb3JtLCAkbWFwLCAka2V5LCAkdGFibGUpKQ0KCQkJew0KCQkJCSRzdGF0dXMgPSBmYWxzZTsNCgkJCX0NCgkJfQ0KDQoJCXJldHVybiAkc3RhdHVzOw0KCX0NCg0KCS8qKg0KCSAqIFByb2Nlc3MgYSBnaXZlbiBtYXAgYnkgZWl0aGVyIGZldGNoaW5nIG5lc3RlZCBzdWJmb3JtcyBvciBoYW5kbGluZyB0aGVtIGRpcmVjdGx5Lg0KCSAqDQoJICogQHBhcmFtIGFycmF5ICAmJHN1YmZvcm0gUmVmZXJlbmNlIHRvIHN1YmZvcm0gZGF0YQ0KCSAqIEBwYXJhbSBhcnJheSAgJG1hcCAgICAgIE1hcCBjb25maWd1cmF0aW9uIGZvciBzdWJmb3JtIHByb2Nlc3NpbmcNCgkgKiBAcGFyYW0gc3RyaW5nICRrZXkgICAgICBLZXkgYXNzb2NpYXRlZCB3aXRoIHRoZSBtYXANCgkgKiBAcGFyYW0gc3RyaW5nICR0YWJsZSAgICBDb3JlIHRhYmxlIG5hbWUgZm9yIGxpbmtpbmcgdmFsdWVzDQoJICoNCgkgKiBAcmV0dXJuIHZvaWQNCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwcml2YXRlIGZ1bmN0aW9uIHByb2Nlc3NHZXRNYXAoYXJyYXkgJiRzdWJmb3JtLCBhcnJheSAkbWFwLCBzdHJpbmcgJGtleSwgc3RyaW5nICR0YWJsZSk6IHZvaWQNCgl7DQoJCWlmIChpc3NldCgkbWFwWydfY29yZSddKSkNCgkJew0KCQkJJHRoaXMtPmhhbmRsZUNvcmVHZXRNYXAoJHN1YmZvcm0sICRtYXAsICRrZXksICR0YWJsZSk7DQoJCX0NCgkJZWxzZQ0KCQl7DQoJCQkkdGhpcy0+aGFuZGxlUmVndWxhckdldE1hcCgkc3ViZm9ybSwgJG1hcCwgJGtleSwgJHRhYmxlKTsNCgkJfQ0KCX0NCg0KCS8qKg0KCSAqIFByb2Nlc3MgYSBnaXZlbiBtYXAgYnkgZWl0aGVyIHNldHRpbmcgbmVzdGVkIHN1YmZvcm1zIG9yIGhhbmRsaW5nIHRoZW0gZGlyZWN0bHkuDQoJICoNCgkgKiBAcGFyYW0gYXJyYXkgICRzdWJmb3JtICBTdWJmb3JtIGRhdGENCgkgKiBAcGFyYW0gYXJyYXkgICRtYXAgICAgICBNYXAgY29uZmlndXJhdGlvbiBmb3Igc3ViZm9ybSBwcm9jZXNzaW5nDQoJICogQHBhcmFtIHN0cmluZyAka2V5ICAgICAgS2V5IGFzc29jaWF0ZWQgd2l0aCB0aGUgbWFwDQoJICogQHBhcmFtIHN0cmluZyAkdGFibGUgICAgQ29yZSB0YWJsZSBuYW1lIGZvciBsaW5raW5nIHZhbHVlcw0KCSAqDQoJICogQHJldHVybiBib29sDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHJpdmF0ZSBmdW5jdGlvbiBwcm9jZXNzU2V0TWFwKGFycmF5ICRzdWJmb3JtLCBhcnJheSAkbWFwLCBzdHJpbmcgJGtleSwgc3RyaW5nICR0YWJsZSk6IGJvb2wNCgl7DQoJCWlmIChpc3NldCgkbWFwWydfY29yZSddKSkNCgkJew0KCQkJcmV0dXJuICR0aGlzLT5oYW5kbGVDb3JlU2V0TWFwKCRzdWJmb3JtLCAkbWFwLCAka2V5LCAkdGFibGUpOw0KCQl9DQoNCgkJcmV0dXJuICR0aGlzLT5oYW5kbGVSZWd1bGFyU2V0TWFwKCRzdWJmb3JtLCAkbWFwLCAka2V5LCAkdGFibGUpOw0KCX0NCg0KCS8qKg0KCSAqIEhhbmRsZSB0aGUgcHJvY2Vzc2luZyBvZiAnX2NvcmUnIG1hcHMgaW4gYSBzdWJmb3JtLg0KCSAqDQoJICogQHBhcmFtIGFycmF5ICAmJHN1YmZvcm0gUmVmZXJlbmNlIHRvIHN1YmZvcm0gZGF0YQ0KCSAqIEBwYXJhbSBhcnJheSAgJG1hcCAgICAgIE1hcCBjb25maWd1cmF0aW9uIGZvciBjb3JlIHN1YmZvcm0gcHJvY2Vzc2luZw0KCSAqIEBwYXJhbSBzdHJpbmcgJGtleSAgICAgIEtleSBhc3NvY2lhdGVkIHdpdGggdGhlIG1hcA0KCSAqIEBwYXJhbSBzdHJpbmcgJHRhYmxlICAgIENvcmUgdGFibGUgbmFtZSBmb3IgbGlua2luZyB2YWx1ZXMNCgkgKg0KCSAqIEByZXR1cm4gdm9pZA0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqLw0KCXByaXZhdGUgZnVuY3Rpb24gaGFuZGxlQ29yZUdldE1hcChhcnJheSAmJHN1YmZvcm0sIGFycmF5ICRtYXAsIHN0cmluZyAka2V5LCBzdHJpbmcgJHRhYmxlKTogdm9pZA0KCXsNCgkJaWYgKGlzX2FycmF5KCRtYXBbJ19jb3JlJ10pICYmICR0aGlzLT52YWxpZEdldE1hcCgkbWFwWydfY29yZSddKSkNCgkJew0KCQkJJG1hcFsnX2NvcmUnXVsnbGlua1ZhbHVlJ10gPSAkdGhpcy0+c2V0TGlua1ZhbHVlKCRtYXBbJ19jb3JlJ11bJ2xpbmtWYWx1ZSddLCBbJHRhYmxlID0+ICRzdWJmb3JtXSk7DQoNCgkJCSRzdWJDb3JlRGF0YSA9ICR0aGlzLT5nZXQoJG1hcCk7DQoJCQlpZiAoJHN1YkNvcmVEYXRhICE9PSBudWxsKQ0KCQkJew0KCQkJCSRzdWJmb3JtWyRrZXldID0gJHN1YkNvcmVEYXRhOw0KCQkJfQ0KCQl9DQoJfQ0KDQoJLyoqDQoJICogSGFuZGxlIHRoZSBwcm9jZXNzaW5nIG9mICdfY29yZScgbWFwcyBpbiBhIHN1YmZvcm0uDQoJICoNCgkgKiBAcGFyYW0gYXJyYXkgICRzdWJmb3JtICBTdWJmb3JtIGRhdGENCgkgKiBAcGFyYW0gYXJyYXkgICRtYXAgICAgICBNYXAgY29uZmlndXJhdGlvbiBmb3IgY29yZSBzdWJmb3JtIHByb2Nlc3NpbmcNCgkgKiBAcGFyYW0gc3RyaW5nICRrZXkgICAgICBLZXkgYXNzb2NpYXRlZCB3aXRoIHRoZSBtYXANCgkgKiBAcGFyYW0gc3RyaW5nICR0YWJsZSAgICBDb3JlIHRhYmxlIG5hbWUgZm9yIGxpbmtpbmcgdmFsdWVzDQoJICoNCgkgKiBAcmV0dXJuIGJvb2wNCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwcml2YXRlIGZ1bmN0aW9uIGhhbmRsZUNvcmVTZXRNYXAoYXJyYXkgJHN1YmZvcm0sIGFycmF5ICRtYXAsIHN0cmluZyAka2V5LCBzdHJpbmcgJHRhYmxlKTogYm9vbA0KCXsNCgkJaWYgKGlzX2FycmF5KCRtYXBbJ19jb3JlJ10pICYmICR0aGlzLT52YWxpZEdldE1hcCgkbWFwWydfY29yZSddKSkNCgkJew0KCQkJJG1hcFsnX2NvcmUnXVsnbGlua1ZhbHVlJ10gPSAkdGhpcy0+c2V0TGlua1ZhbHVlKCRtYXBbJ19jb3JlJ11bJ2xpbmtWYWx1ZSddLCBbJHRhYmxlID0+ICRzdWJmb3JtXSk7DQoNCgkJCXJldHVybiAkdGhpcy0+c2V0KCRzdWJmb3JtWyRrZXldLCAkbWFwKTsNCgkJfQ0KDQoJCXJldHVybiBmYWxzZTsNCgl9DQoNCgkvKioNCgkgKiBIYW5kbGUgdGhlIHByb2Nlc3Npbmcgb2YgcmVndWxhciBtYXBzIGluIGEgc3ViZm9ybS4NCgkgKg0KCSAqIEBwYXJhbSBhcnJheSAgICYkc3ViZm9ybSBSZWZlcmVuY2UgdG8gc3ViZm9ybSBkYXRhDQoJICogQHBhcmFtIGFycmF5ICAgJG1hcCAgICAgIE1hcCBjb25maWd1cmF0aW9uIGZvciByZWd1bGFyIHN1YmZvcm0gcHJvY2Vzc2luZw0KCSAqIEBwYXJhbSBzdHJpbmcgICRrZXkgICAgICBLZXkgYXNzb2NpYXRlZCB3aXRoIHRoZSBtYXANCgkgKiBAcGFyYW0gc3RyaW5nICAkdGFibGUgICAgQ29yZSB0YWJsZSBuYW1lIGZvciBsaW5raW5nIHZhbHVlcw0KCSAqDQoJICogQHJldHVybiB2b2lkDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHJpdmF0ZSBmdW5jdGlvbiBoYW5kbGVSZWd1bGFyR2V0TWFwKGFycmF5ICYkc3ViZm9ybSwgYXJyYXkgJG1hcCwgc3RyaW5nICRrZXksIHN0cmluZyAkdGFibGUpOiB2b2lkDQoJew0KCQkkbWFwWydmaWVsZCddID0gJGtleTsNCgkJaWYgKCR0aGlzLT52YWxpZEdldE1hcCgkbWFwKSkNCgkJew0KCQkJJHN1YmZvcm1EYXRhID0gJHRoaXMtPmdldFN1YmZvcm1EYXRhKCRtYXAsIFskdGFibGUgPT4gJHN1YmZvcm1dKTsNCgkJCWlmICgkc3ViZm9ybURhdGEgIT09IG51bGwpDQoJCQl7DQoJCQkJJHN1YmZvcm1bJGtleV0gPSAkc3ViZm9ybURhdGE7DQoJCQl9DQoJCX0NCgl9DQoNCgkvKioNCgkgKiBIYW5kbGUgdGhlIHByb2Nlc3Npbmcgb2YgcmVndWxhciBtYXBzIGluIGEgc3ViZm9ybS4NCgkgKg0KCSAqIEBwYXJhbSBhcnJheSAgICRzdWJmb3JtICBTdWJmb3JtIGRhdGENCgkgKiBAcGFyYW0gYXJyYXkgICAkbWFwICAgICAgTWFwIGNvbmZpZ3VyYXRpb24gZm9yIHJlZ3VsYXIgc3ViZm9ybSBwcm9jZXNzaW5nDQoJICogQHBhcmFtIHN0cmluZyAgJGtleSAgICAgIEtleSBhc3NvY2lhdGVkIHdpdGggdGhlIG1hcA0KCSAqIEBwYXJhbSBzdHJpbmcgICR0YWJsZSAgICBDb3JlIHRhYmxlIG5hbWUgZm9yIGxpbmtpbmcgdmFsdWVzDQoJICoNCgkgKiBAcmV0dXJuIGJvb2wNCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwcml2YXRlIGZ1bmN0aW9uIGhhbmRsZVJlZ3VsYXJTZXRNYXAoYXJyYXkgJHN1YmZvcm0sIGFycmF5ICRtYXAsIHN0cmluZyAka2V5LCBzdHJpbmcgJHRhYmxlKTogYm9vbA0KCXsNCgkJaWYgKCR0aGlzLT52YWxpZFNldE1hcCgkbWFwKSkNCgkJew0KCQkJLy8gd2lsbCBkZWxldGUgYWxsIGV4aXN0aW5nIGxpbmtlZCBpdGVtcyBbSUYgRU1QVFldIDooIG5vdCBpZGVhbCwgYnV0IHJlYWwNCgkJCSRkYXRhID0gKGVtcHR5KCRzdWJmb3JtWyRrZXldKSB8fCAhaXNfYXJyYXkoJHN1YmZvcm1bJGtleV0pKSA/IFtdIDogJHN1YmZvcm1bJGtleV07DQoNCgkJCXJldHVybiAkdGhpcy0+c2V0U3ViZm9ybURhdGEoJGRhdGEsICRtYXAsIFskdGFibGUgPT4gJHN1YmZvcm1dKTsNCgkJfQ0KDQoJCXJldHVybiBmYWxzZTsNCgl9DQoNCgkvKioNCgkgKiBWYWxpZGF0ZSB0aGUgZ2V0IG1hcCBjb25maWd1cmF0aW9uIGZvciBmZXRjaGluZyBzdWJmb3JtIGRhdGEuDQoJICogRW5zdXJlcyBhbGwgcmVxdWlyZWQga2V5cyBhcmUgcHJlc2VudCBhbmQgaGF2ZSB2YWxpZCB2YWx1ZXMuDQoJICoNCgkgKiBAcGFyYW0gYXJyYXkgICRtYXAgIFRoZSBtYXAgY29uZmlndXJhdGlvbiB0byB2YWxpZGF0ZS4NCgkgKg0KCSAqIEByZXR1cm4gYm9vbCAgUmV0dXJucyB0cnVlIGlmIHRoZSBtYXAgaXMgdmFsaWQsIGZhbHNlIG90aGVyd2lzZS4NCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwcml2YXRlIGZ1bmN0aW9uIHZhbGlkR2V0TWFwKGFycmF5ICRtYXApOiBib29sDQoJew0KCQkvLyBMaXN0IG9mIHJlcXVpcmVkIGtleXMgd2l0aCB0aGVpciBleHBlY3RlZCB0eXBlcyBvciB2YWxpZGF0aW9uIGZ1bmN0aW9ucw0KCQkkcmVxdWlyZWRLZXlzID0gWw0KCQkJJ3RhYmxlJyA9PiAnaXNfc3RyaW5nJywNCgkJCSdsaW5rVmFsdWUnID0+ICdpc19zdHJpbmcnLA0KCQkJJ2xpbmtLZXknID0+ICdpc19zdHJpbmcnLA0KCQkJJ2ZpZWxkJyA9PiAnaXNfc3RyaW5nJywNCgkJCSdnZXQnID0+ICdpc19hcnJheScNCgkJXTsNCg0KCQkvLyBJdGVyYXRlIHRocm91Z2ggZWFjaCByZXF1aXJlZCBrZXkgYW5kIHZhbGlkYXRlDQoJCWZvcmVhY2ggKCRyZXF1aXJlZEtleXMgYXMgJGtleSA9PiAkdmFsaWRhdG9yKQ0KCQl7DQoJCQlpZiAoZW1wdHkoJG1hcFska2V5XSkgfHwgISR2YWxpZGF0b3IoJG1hcFska2V5XSkpDQoJCQl7DQoJCQkJcmV0dXJuIGZhbHNlOyAvLyBLZXkgbWlzc2luZyBvciB2YWxpZGF0aW9uIGZhaWxlZA0KCQkJfQ0KCQl9DQoNCgkJcmV0dXJuIHRydWU7IC8vIEFsbCBjaGVja3MgcGFzc2VkDQoJfQ0KDQoJLyoqDQoJICogVmFsaWRhdGUgdGhlIHNldCBtYXAgY29uZmlndXJhdGlvbiBmb3IgZmV0Y2hpbmcgc3ViZm9ybSBkYXRhLg0KCSAqIEVuc3VyZXMgYWxsIHJlcXVpcmVkIGtleXMgYXJlIHByZXNlbnQgYW5kIGhhdmUgdmFsaWQgdmFsdWVzLg0KCSAqDQoJICogQHBhcmFtIGFycmF5ICAkbWFwICBUaGUgbWFwIGNvbmZpZ3VyYXRpb24gdG8gdmFsaWRhdGUuDQoJICoNCgkgKiBAcmV0dXJuIGJvb2wgIFJldHVybnMgdHJ1ZSBpZiB0aGUgbWFwIGlzIHZhbGlkLCBmYWxzZSBvdGhlcndpc2UuDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHJpdmF0ZSBmdW5jdGlvbiB2YWxpZFNldE1hcChhcnJheSAkbWFwKTogYm9vbA0KCXsNCgkJLy8gTGlzdCBvZiByZXF1aXJlZCBrZXlzIHdpdGggdGhlaXIgZXhwZWN0ZWQgdHlwZXMgb3IgdmFsaWRhdGlvbiBmdW5jdGlvbnMNCgkJJHJlcXVpcmVkS2V5cyA9IFsNCgkJCSd0YWJsZScgPT4gJ2lzX3N0cmluZycsDQoJCQknaW5kZXhLZXknID0+ICdpc19zdHJpbmcnLA0KCQkJJ2xpbmtLZXknID0+ICdpc19zdHJpbmcnLA0KCQkJJ2xpbmtWYWx1ZScgPT4gJ2lzX3N0cmluZycNCgkJXTsNCg0KCQkvLyBJdGVyYXRlIHRocm91Z2ggZWFjaCByZXF1aXJlZCBrZXkgYW5kIHZhbGlkYXRlDQoJCWZvcmVhY2ggKCRyZXF1aXJlZEtleXMgYXMgJGtleSA9PiAkdmFsaWRhdG9yKQ0KCQl7DQoJCQlpZiAoZW1wdHkoJG1hcFska2V5XSkgfHwgISR2YWxpZGF0b3IoJG1hcFska2V5XSkpDQoJCQl7DQoJCQkJcmV0dXJuIGZhbHNlOyAvLyBLZXkgbWlzc2luZyBvciB2YWxpZGF0aW9uIGZhaWxlZA0KCQkJfQ0KCQl9DQoNCgkJcmV0dXJuIHRydWU7IC8vIEFsbCBjaGVja3MgcGFzc2VkDQoJfQ0KDQoJLyoqDQoJICogUHJlcGFyZSB0aGUgbGlua1ZhbHVlIG5lZWRlZCBieSB0aGUgc3ViLXN1YmZvcm0NCgkgKg0KCSAqIEBwYXJhbSBhcnJheSAgJHN1YmZvcm0gICBUaGUgc3ViZm9ybSBkYXRhDQoJICogQHBhcmFtIGFycmF5ICAkc2V0TWFwICAgIE1hcHBpbmcgZGF0YSBmb3IgcHJvY2Vzc2luZyBzdWJmb3Jtcw0KCSAqIA0KCSAqIEByZXR1cm4gdm9pZA0KCSAqIEBzaW5jZSAgNS4wLjMNCgkgKi8NCglwcml2YXRlIGZ1bmN0aW9uIHByZXBMaW5rVmFsdWUoYXJyYXkgJiRzdWJmb3JtLCBhcnJheSAkc2V0TWFwKTogdm9pZA0KCXsNCgkJJGNvZGVfdGFibGUgPSBudWxsOw0KCQlmb3JlYWNoICgkc2V0TWFwIGFzICRrZXkgPT4gJG1hcCkNCgkJew0KCQkJaWYgKCRrZXkgPT09ICdfY29yZScpDQoJCQl7DQoJCQkJJGNvZGVfdGFibGUgPSAkbWFwWyd0YWJsZSddID8/IG51bGw7DQoJCQkJY29udGludWU7DQoJCQl9DQoNCgkJCWlmIChzdHJwb3MoJG1hcFsnbGlua1ZhbHVlJ10sICc6JykgIT09IGZhbHNlKQ0KCQkJew0KCQkJCVskdGFibGUsICRmaWVsZF0gPSBleHBsb2RlKCc6JywgJG1hcFsnbGlua1ZhbHVlJ10pOw0KCQkJCWlmICgkY29kZV90YWJsZSAhPT0gbnVsbCAmJg0KCQkJCQknZ3VpZCcgPT09ICRmaWVsZCAmJg0KCQkJCQkkdGFibGUgPT09ICRjb2RlX3RhYmxlKQ0KCQkJCXsNCgkJCQkJZm9yZWFjaCAoJHN1YmZvcm0gYXMgJiRyb3cpDQoJCQkJCXsNCgkJCQkJCWlmIChlbXB0eSgkcm93WydndWlkJ10pKQ0KCQkJCQkJew0KCQkJCQkJCSRyb3dbJ2d1aWQnXSA9ICR0aGlzLT5zdWJmb3JtLT50YWJsZSgkdGFibGUpLT5nZXRHdWlkKCRmaWVsZCk7DQoJCQkJCQl9DQoJCQkJCX0NCgkJCQl9DQoJCQl9DQoJCX0NCgl9', '{}', '{}', '', 1, '2024-06-24 12:45:46', 36, '', 1), +(765, 'bb30f709-53d2-446a-ab3d-300fe6de0bc8', 'VDM.Interfaces.Data.MultiSubformInterface', 'MultiSubformInterface', 'interface', 'Data Multi Subform Interface\r\n\r\n@since 3.2.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\Interfaces.Data.MultiSubformInterface', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIEdldCBhIHN1YmZvcm0gaXRlbXMNCgkgKg0KCSAqIEBwYXJhbSBhcnJheSAgICRnZXRNYXAgIFRoZSB0aGUgbWFwIHRvIGdldCB0aGUgc3ViZnJvbSBkYXRhDQoJICoNCgkgKiAgICAgRXhhbXBsZToNCgkgKiAgICAgICAgJGdldE1hcCA9IFsNCgkgKiAgICAgICAgCSdfY29yZScgPT4gWw0KCSAqICAgICAgICAJCSd0YWJsZScgPT4nZGF0YScsDQoJICogICAgICAgIAkJJ2xpbmtWYWx1ZScgPT4gJGl0ZW0tPmd1aWQgPz8gJycsDQoJICogICAgICAgIAkJJ2xpbmtLZXknID0+ICdsb29rJywNCgkgKiAgICAgICAgCQknZmllbGQnID0+ICdkYXRhJywNCgkgKiAgICAgICAgCQknZ2V0JyA9PiBbJ2d1aWQnLCdlbWFpbCcsJ2ltYWdlJywnbW9iaWxlX3Bob25lJywnd2Vic2l0ZScsJ2RhdGVvZmJpcnRoJ10NCgkgKiAgICAgICAgCV0sDQoJICogICAgICAgIAknY291bnRyaWVzJyA9PiBbDQoJICogICAgICAgIAkJJ3RhYmxlJyA9PidkYXRhX2NvdW50cnknLA0KCSAqICAgICAgICAJCSdsaW5rVmFsdWUnID0+ICdkYXRhOmd1aWQnLCAvLyBjb3JldGFibGU6ZmllbGRuYW1lDQoJICogICAgICAgIAkJJ2xpbmtLZXknID0+ICdkYXRhJywNCgkgKiAgICAgICAgCQknZ2V0JyA9PiBbJ2d1aWQnLCdjb3VudHJ5JywnY3VycmVuY3knXQ0KCSAqICAgICAgICAJXQ0KCSAqICAgICAgICBdOw0KCSAqDQoJICogQHJldHVybiBhcnJheXxudWxsICAgVGhlIHN1YmZvcm0NCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZ2V0KGFycmF5ICRnZXRNYXApOiA/YXJyYXk7DQoNCgkvKioNCgkgKiBTZXQgYSBzdWJmb3JtIGl0ZW1zDQoJICoNCgkgKiBAcGFyYW0gbWl4ZWQgICAkaXRlbXMgICAgVGhlIGxpc3Qgb2YgaXRlbXMgZnJvbSB0aGUgc3ViZm9ybSB0byBzZXQNCgkgKiBAcGFyYW0gYXJyYXkgICAkc2V0TWFwICAgVGhlIHRoZSBtYXAgdG8gc2V0IHRoZSBzdWJmcm9tIGRhdGENCgkgKg0KCSAqICAgICBFeGFtcGxlOg0KCSAqICAgICAgICAkaXRlbXMsDQoJICogICAgICAgICRzZXRNYXAgPSBbDQoJICogICAgICAgIAknX2NvcmUnID0+IFsNCgkgKiAgICAgICAgCQkndGFibGUnID0+J2RhdGEnLA0KCSAqICAgICAgICAJCSdpbmRleEtleScgPT4gJ2d1aWQnLA0KCSAqICAgICAgICAJCSdsaW5rS2V5JyA9PiAnbG9vaycsDQoJICogICAgICAgIAkJJ2xpbmtWYWx1ZScgPT4gJGRhdGFbJ2d1aWQnXSA/PyAnJw0KCSAqICAgICAgICAJXSwNCgkgKiAgICAgICAgCSdjb3VudHJpZXMnID0+IFsNCgkgKiAgICAgICAgCQkndGFibGUnID0+J2RhdGFfY291bnRyeScsDQoJICogICAgICAgIAkJJ2luZGV4S2V5JyA9PiAnZ3VpZCcsDQoJICogICAgICAgIAkJJ2xpbmtLZXknID0+ICdkYXRhJywNCgkgKiAgICAgICAgCQknbGlua1ZhbHVlJyA9PiAnZGF0YTpndWlkJyAvLyBjb3JldGFibGU6ZmllbGRuYW1lDQoJICogICAgICAgIAldDQoJICogICAgICAgIF07DQoJICoNCgkgKiBAcmV0dXJuIGJvb2wNCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gc2V0KG1peGVkICRpdGVtcywgYXJyYXkgJHNldE1hcCk6IGJvb2w7', '{}', '{}', '', 1, '2024-06-25 12:24:27', 3, '', 1), +(767, '5f0205fa-5c43-424a-af7d-abc943c17c8c', 'VDM.SchemaChecker', 'SchemaChecker', 'abstract class', 'Schema Checker\r\n\r\n@since 3.2.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '{\"0\":\"b6e9854c-3672-42ec-8843-26c24b4635bd\"}', '', '[[[NamespacePrefix]]]\\Joomla\\Abstraction.SchemaChecker', 1, '{}', '{}', 'dXNlIEpvb21sYVxDTVNcRmFjdG9yeTs=', '{\"use_selection0\":{\"use\":\"4dd11b9b-3c64-460b-aaa6-62ba467db7aa\",\"as\":\"Schema\"},\"use_selection1\":{\"use\":\"2da6d6c4-eb29-4d69-8bc2-36d96e916adf\",\"as\":\"Table\"},\"use_selection2\":{\"use\":\"13c2cac1-a70d-42d7-99fc-eb7ac3443069\",\"as\":\"default\"}}', 'CS8qKg0KCSAqIFRoZSBUYWJsZSBDbGFzcy4NCgkgKg0KCSAqIEB2YXIgICBUYWJsZXxudWxsDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHJvdGVjdGVkID9UYWJsZSAkdGFibGU7DQoNCgkvKioNCgkgKiBUaGUgU2NoZW1hIENsYXNzLg0KCSAqDQoJICogQHZhciAgIFNjaGVtYXxudWxsDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHJvdGVjdGVkID9TY2hlbWEgJHNjaGVtYTsNCg0KCS8qKg0KCSAqIEFwcGxpY2F0aW9uIG9iamVjdC4NCgkgKg0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqKi8NCglwcm90ZWN0ZWQgICRhcHA7DQoNCgkvKioNCgkgKiBDb25zdHJ1Y3Rvci4NCgkgKg0KCSAqIEBwYXJhbSBTY2hlbWF8bnVsbCAgICAgICAgICAgICAgICAgICAgJHNjaGVtYSAgIFRoZSBTY2hlbWEgQ2xhc3MuDQoJICogQHBhcmFtIFRhYmxlfG51bGwgICAgICAgICAgICAgICAgICAgICAkdGFibGUgICAgVGhlIFRhYmxlIENsYXNzLg0KCSAqIEBwYXJhbSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGFwcCAgICAgIFRoZSBhcHAgb2JqZWN0Lg0KCSAqDQoJICogQHRocm93cyBcRXhjZXB0aW9uDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KD9TY2hlbWEgJHNjaGVtYSA9IG51bGwsID9UYWJsZSAkdGFibGUgPSBudWxsLCAkYXBwID0gbnVsbCkNCgl7DQoJCSR0aGlzLT5zY2hlbWEgPSAkc2NoZW1hOw0KCQkkdGhpcy0+dGFibGUgPSAkdGFibGU7DQoJCSR0aGlzLT5hcHAgPSAkYXBwID86IEZhY3Rvcnk6OmdldEFwcGxpY2F0aW9uKCk7DQoNCgkJLy8gVmFsaWRhdGUgY2xhc3NlcyBhcmUgc2V0DQoJCS8vIFNpbmNlIHRoaXMgY2xhc3MgaXMgb2Z0ZW4gY2FsbGVkIGZyb20gb3V0c2lkZSBhIGNvbnRhaW5lcg0KCQkkdGhpcy0+aW5pdGlhbGl6ZUluc3RhbmNlcygpOw0KCQkvLyBJIGRvbid0IGNhcmUhIEkgaGF2ZSBtb3JlIGltcG9ydGFudCB0aGluZyB0byBkbywgbWF5YmUgbGF0ZXIuLi4gKGxhc3QgdXBkYXRlZCBpbiAxOTgzIDspDQoJfQ0KDQoJLyoqDQoJICogTWFrZSBzdXJlIHRoYXQgdGhlIGRhdGFiYXNlIHNjaGVtYSBpcyB1cC10by1kYXRlLg0KCSAqDQoJICogQHJldHVybiB2b2lkDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIHJ1bigpOiB2b2lkDQoJew0KCQlpZiAoJHRoaXMtPnNjaGVtYSA9PT0gbnVsbCkNCgkJew0KCQkJJHRoaXMtPmFwcC0+ZW5xdWV1ZU1lc3NhZ2UoJ1dlIGZhaWxlZCB0byBmaW5kL2xvYWQgdGhlIFNjaGVtYSBjbGFzcycsICd3YXJuaW5nJyk7DQoJCQlyZXR1cm47DQoJCX0NCg0KCQkvLyB0cnkgdG8gbG9hZCB0aGUgdXBkYXRlIHRoZSB0YWJsZXMgd2l0aCB0aGUgc2NoZW1hIGNsYXNzDQoJCXRyeQ0KCQl7DQoJCQkkbWVzc2FnZXMgPSAkdGhpcy0+c2NoZW1hLT51cGRhdGUoKTsNCgkJfQ0KCQljYXRjaCAoXEV4Y2VwdGlvbiAkZSkNCgkJew0KCQkJJHRoaXMtPmFwcC0+ZW5xdWV1ZU1lc3NhZ2UoJGUtPmdldE1lc3NhZ2UoKSwgJ3dhcm5pbmcnKTsNCgkJCXJldHVybjsNCgkJfQ0KDQoJCWZvcmVhY2ggKCRtZXNzYWdlcyBhcyAkbWVzc2FnZSkNCgkJew0KCQkJJHRoaXMtPmFwcC0+ZW5xdWV1ZU1lc3NhZ2UoJG1lc3NhZ2UsICdtZXNzYWdlJyk7DQoJCX0NCgl9DQoNCgkvKioNCgkgKiBJbml0aWFsaXplIHRoZSBuZWVkZWQgY2xhc3MgaW5zdGFuY2VzIGlmIG5lZWRlZA0KCSAqDQoJICogQHJldHVybiB2b2lkDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHJvdGVjdGVkIGZ1bmN0aW9uIGluaXRpYWxpemVJbnN0YW5jZXMoKTogdm9pZA0KCXsNCgkJaWYgKCR0aGlzLT5zY2hlbWEgIT09IG51bGwpDQoJCXsNCgkJCXJldHVybjsNCgkJfQ0KDQoJCWlmICgkdGhpcy0+dGFibGUgPT09IG51bGwpDQoJCXsNCgkJCSR0aGlzLT5zZXRUYWJsZUluc3RhbmNlKCk7DQoJCX0NCg0KCQkkdGhpcy0+c2V0U2NoZW1hSW5zdGFuY2UoKTsNCgl9DQoNCgkvKioNCgkgKiBzZXQgdGhlIHNjaGVtYSBjbGFzcyBpbnN0YW5jZQ0KCSAqDQoJICogQHJldHVybiB2b2lkDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHJvdGVjdGVkIGZ1bmN0aW9uIHNldFNjaGVtYUluc3RhbmNlKCk6IHZvaWQNCgl7DQoJCS8vIG1ha2Ugc3VyZSB0aGUgY2xhc3MgaXMgbG9hZGVkDQoJCWlmIChDbGFzc0hlbHBlcjo6ZXhpc3RzKA0KCQkJJHRoaXMtPmdldFNjaGVtYUNsYXNzKCksICR0aGlzLT5nZXRDb2RlKCksICR0aGlzLT5nZXRQb3dlclBhdGgoKQ0KCQkpKQ0KCQl7DQoJCQkvLyBpbnN0YW50aWF0ZSB0aGUgc2NoZW1hIGNsYXNzDQoJCQkkdGhpcy0+c2NoZW1hID0gbmV3ICgkdGhpcy0+Z2V0U2NoZW1hQ2xhc3MoKSkoJHRoaXMtPnRhYmxlKTsNCgkJfQ0KCX0NCg0KCS8qKg0KCSAqIHNldCB0aGUgdGFibGUgY2xhc3MgaW5zdGFuY2UNCgkgKg0KCSAqIEByZXR1cm4gdm9pZA0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqLw0KCXByb3RlY3RlZCBmdW5jdGlvbiBzZXRUYWJsZUluc3RhbmNlKCk6IHZvaWQNCgl7DQoJCS8vIG1ha2Ugc3VyZSB0aGUgY2xhc3MgaXMgbG9hZGVkDQoJCWlmIChDbGFzc0hlbHBlcjo6ZXhpc3RzKA0KCQkJJHRoaXMtPmdldFRhYmxlQ2xhc3MoKSwgJHRoaXMtPmdldENvZGUoKSwgJHRoaXMtPmdldFBvd2VyUGF0aCgpDQoJCSkpDQoJCXsNCgkJCS8vIGluc3RhbnRpYXRlIHRoZSB0YWJsZSBjbGFzcw0KCQkJJHRoaXMtPnRhYmxlID0gbmV3ICgkdGhpcy0+Z2V0VGFibGVDbGFzcygpKSgpOw0KCQl9DQoJfQ0KDQoJLyoqDQoJICogR2V0IHRoZSB0YXJnZXRlZCBjb21wb25lbnQgY29kZQ0KCSAqDQoJICogQHJldHVybiAgc3RyaW5nDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJYWJzdHJhY3QgcHJvdGVjdGVkIGZ1bmN0aW9uIGdldENvZGUoKTogc3RyaW5nOw0KDQoJLyoqDQoJICogR2V0IHRoZSB0YXJnZXRlZCBjb21wb25lbnQgcG93ZXIgcGF0aA0KCSAqDQoJICogQHJldHVybiAgc3RyaW5nDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJYWJzdHJhY3QgcHJvdGVjdGVkIGZ1bmN0aW9uIGdldFBvd2VyUGF0aCgpOiBzdHJpbmc7DQoNCgkvKioNCgkgKiBHZXQgdGhlIGZ1bGx5IHF1YWxpZmllZCBuYW1lIG9mIHRoZSBzY2hlbWEgY2xhc3MuDQoJICoNCgkgKiBAcmV0dXJuIHN0cmluZw0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqLw0KCWFic3RyYWN0IHByb3RlY3RlZCBmdW5jdGlvbiBnZXRTY2hlbWFDbGFzcygpOiBzdHJpbmc7DQoNCgkvKioNCgkgKiBHZXQgdGhlIGZ1bGx5IHF1YWxpZmllZCBuYW1lIG9mIHRoZSB0YWJsZSBjbGFzcy4NCgkgKg0KCSAqIEByZXR1cm4gc3RyaW5nDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJYWJzdHJhY3QgcHJvdGVjdGVkIGZ1bmN0aW9uIGdldFRhYmxlQ2xhc3MoKTogc3RyaW5nOw==', '{}', '{}', '', 1, '2024-07-12 09:58:15', 21, '', 1), +(768, 'b6e9854c-3672-42ec-8843-26c24b4635bd', 'VDM.SchemaCheckerInterface', 'SchemaCheckerInterface', 'interface', 'Schema Checker Interface\r\n\r\n@since 3.2.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\Interfaces.SchemaCheckerInterface', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIE1ha2Ugc3VyZSB0aGF0IHRoZSBkYXRhYmFzZSBzY2hlbWEgaXMgdXAtdG8tZGF0ZS4NCgkgKg0KCSAqIEByZXR1cm4gdm9pZA0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBydW4oKTogdm9pZDs=', '{}', '{}', '', 1, '2024-07-12 10:39:45', 6, '', 1), +(769, '709d7294-9a43-46e2-b64e-d16a16f0eab1', 'VDM.Table.SchemaChecker', 'SchemaChecker', 'final class', '[[[Component]]] Tables Schema Checker\r\n\r\n@since 3.2.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '2.0.0', '5f0205fa-5c43-424a-af7d-abc943c17c8c', '', '', '', '{\"0\":\"b6e9854c-3672-42ec-8843-26c24b4635bd\"}', '', '[[[NamespacePrefix]]]\\Joomla\\[[[ComponentNamespace]]].Table.SchemaChecker', '', '{}', '{}', '', '{\"use_selection0\":{\"use\":\"bfd1d6d5-56c1-4fe9-9fee-1c5910e1f5d8\",\"as\":\"default\"},\"use_selection1\":{\"use\":\"b3d2ec33-76d4-4c3b-bb2c-86ac14a221ce\",\"as\":\"default\"}}', 'CS8qKg0KCSAqIEdldCB0aGUgdGFyZ2V0ZWQgY29tcG9uZW50IGNvZGUNCgkgKg0KCSAqIEByZXR1cm4gIHN0cmluZw0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqLw0KCXByb3RlY3RlZCBmdW5jdGlvbiBnZXRDb2RlKCk6IHN0cmluZw0KCXsNCgkJcmV0dXJuICdbW1tjb21wb25lbnRdXV0nOw0KCX0NCg0KCS8qKg0KCSAqIEdldCB0aGUgdGFyZ2V0ZWQgY29tcG9uZW50IHBvd2VyIHBhdGgNCgkgKg0KCSAqIEByZXR1cm4gIHN0cmluZw0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqLw0KCXByb3RlY3RlZCBmdW5jdGlvbiBnZXRQb3dlclBhdGgoKTogc3RyaW5nDQoJew0KCQlyZXR1cm4gJ1tbW1BPV0VSTE9BREVSUEFUSF1dXSc7DQoJfQ0KDQoJLyoqDQoJICogR2V0IHRoZSBmdWxseSBxdWFsaWZpZWQgbmFtZSBvZiB0aGUgc2NoZW1hIGNsYXNzLg0KCSAqDQoJICogQHJldHVybiBzdHJpbmcNCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwcm90ZWN0ZWQgZnVuY3Rpb24gZ2V0U2NoZW1hQ2xhc3MoKTogc3RyaW5nDQoJew0KCQlyZXR1cm4gU2NoZW1hOjpjbGFzczsNCgl9DQoNCgkvKioNCgkgKiBHZXQgdGhlIGZ1bGx5IHF1YWxpZmllZCBuYW1lIG9mIHRoZSB0YWJsZSBjbGFzcy4NCgkgKg0KCSAqIEByZXR1cm4gc3RyaW5nDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHJvdGVjdGVkIGZ1bmN0aW9uIGdldFRhYmxlQ2xhc3MoKTogc3RyaW5nDQoJew0KCQlyZXR1cm4gVGFibGU6OmNsYXNzOw0KCX0=', '{}', '{}', '', 1, '2024-07-12 11:32:34', 4, '', 1), +(770, '13c2cac1-a70d-42d7-99fc-eb7ac3443069', 'Utilities Class Helper', 'ClassHelper', 'abstract class', 'Class Helper for JCB Powers\r\n\r\n@since 3.2.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIwDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\Utilities.ClassHelper', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIEVuc3VyZXMgdGhhdCBhIGNsYXNzIGluIHRoZSBuYW1lc3BhY2UgaXMgYXZhaWxhYmxlLg0KCSAqIElmIHRoZSBjbGFzcyBpcyBub3QgYWxyZWFkeSBsb2FkZWQsIGl0IGF0dGVtcHRzIHRvIGxvYWQgaXQgdmlhIHRoZSBzcGVjaWZpZWQgYXV0b2xvYWRlci4NCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmcgICRjbGFzc05hbWUgICAgICAgVGhlIGZ1bGx5IHF1YWxpZmllZCBuYW1lIG9mIHRoZSBjbGFzcyB0byBjaGVjay4NCgkgKiBAcGFyYW0gc3RyaW5nICAkY29tcG9uZW50ICAgICAgIFRoZSBjb21wb25lbnQgbmFtZSB3aGVyZSB0aGUgYXV0b2xvYWRlciByZXNpZGVzLg0KCSAqIEBwYXJhbSBzdHJpbmcgICRhdXRvbG9hZGVyUGF0aCAgVGhlIHBhdGggdG8gdGhlIGF1dG9sb2FkZXIgZmlsZSB3aXRoaW4gdGhlIGNvbXBvbmVudC4NCgkgKg0KCSAqIEByZXR1cm4gYm9vbCBUcnVlIGlmIHRoZSBjbGFzcyBleGlzdHMgb3Igd2FzIHN1Y2Nlc3NmdWxseSBsb2FkZWQsIGZhbHNlIG90aGVyd2lzZS4NCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIGV4aXN0cyhzdHJpbmcgJGNsYXNzTmFtZSwgc3RyaW5nICRjb21wb25lbnQsIHN0cmluZyAkYXV0b2xvYWRlclBhdGgpOiBib29sDQoJew0KCQlpZiAoIWNsYXNzX2V4aXN0cygkY2xhc3NOYW1lLCB0cnVlKSkNCgkJew0KCQkJLy8gQ29uc3RydWN0IHRoZSBwYXRoIHRvIHRoZSBhdXRvbG9hZGVyIGZpbGUNCgkJCSRhdXRvbG9hZGVyRmlsZSA9IEpQQVRIX0FETUlOSVNUUkFUT1IgLiAnL2NvbXBvbmVudHMvY29tXycgLiAkY29tcG9uZW50IC4gJy8nIC4gJGF1dG9sb2FkZXJQYXRoOw0KDQoJCQlpZiAoZmlsZV9leGlzdHMoJGF1dG9sb2FkZXJGaWxlKSkNCgkJCXsNCgkJCQlyZXF1aXJlX29uY2UgJGF1dG9sb2FkZXJGaWxlOw0KCQkJfQ0KDQoJCQkvLyBDaGVjayBhZ2FpbiBpZiB0aGUgY2xhc3Mgbm93IGV4aXN0cyBhZnRlciByZXF1aXJpbmcgdGhlIGF1dG9sb2FkZXINCgkJCWlmICghY2xhc3NfZXhpc3RzKCRjbGFzc05hbWUsIHRydWUpKQ0KCQkJew0KCQkJCXJldHVybiBmYWxzZTsNCgkJCX0NCgkJfQ0KCQlyZXR1cm4gdHJ1ZTsNCgl9DQo=', '{}', '{}', '', 1, '2024-07-12 11:44:53', 7, '', 1), +(781, '900456a2-feb5-48b9-9f05-c5a032a32c59', 'VDM.PHPConfigurationChecker', 'PHPConfigurationChecker', 'abstract class', 'PHP Configuration Checker\r\n\r\n@since 5.0.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '7e822c03-1b20-41d1-9427-f5b8d5836af7', '', '', '', '{\"0\":\"95c02df3-fe0a-405b-b506-b7a5b8605b66\"}', '', '[[[NamespacePrefix]]]\\Joomla\\Abstraction.PHPConfigurationChecker', 1, '{}', '{}', 'dXNlIEpvb21sYVxDTVNcRmFjdG9yeTs=', '{}', 'CS8qKg0KCSAqIFRoZSB1cGxvYWQgbWF4IGZpbGVzaXplIHZhbHVlDQoJICoNCgkgKiBAdmFyICAgIHN0cmluZw0KCSAqIEBzaW5jZSAgNS4wLjINCgkgKiovDQoJcHJvdGVjdGVkICBzdHJpbmcgJHVwbG9hZF9tYXhfZmlsZXNpemU7DQoNCgkvKioNCgkgKiBUaGUgcG9zdCBtYXggc2l6ZSB2YWx1ZQ0KCSAqDQoJICogQHZhciAgICBzdHJpbmcNCgkgKiBAc2luY2UgIDUuMC4yDQoJICoqLw0KCXByb3RlY3RlZCAgc3RyaW5nICRwb3N0X21heF9zaXplOw0KDQoJLyoqDQoJICogVGhlIG1heCBleGVjdXRpb24gdGltZSB2YWx1ZQ0KCSAqDQoJICogQHZhciAgICBpbnQNCgkgKiBAc2luY2UgIDUuMC4yDQoJICoqLw0KCXByb3RlY3RlZCAgaW50ICRtYXhfZXhlY3V0aW9uX3RpbWU7DQoNCgkvKioNCgkgKiBUaGUgbWF4IGlucHV0IHZhcnMgdmFsdWUNCgkgKg0KCSAqIEB2YXIgICAgaW50DQoJICogQHNpbmNlICA1LjAuMg0KCSAqKi8NCglwcm90ZWN0ZWQgIGludCAkbWF4X2lucHV0X3ZhcnM7DQoNCgkvKioNCgkgKiBUaGUgbWF4IGlucHV0IHRpbWUgdmFsdWUNCgkgKg0KCSAqIEB2YXIgICAgaW50DQoJICogQHNpbmNlICA1LjAuMg0KCSAqKi8NCglwcm90ZWN0ZWQgIGludCAkbWF4X2lucHV0X3RpbWU7DQoNCgkvKioNCgkgKiBUaGUgbWVtb3J5IGxpbWl0IHZhbHVlDQoJICoNCgkgKiBAdmFyICAgIHN0cmluZw0KCSAqIEBzaW5jZSAgNS4wLjINCgkgKiovDQoJcHJvdGVjdGVkICBzdHJpbmcgJG1lbW9yeV9saW1pdDsNCg0KCS8qKg0KCSAqIFRoZSByZWdpc3RyeSBhcnJheS4NCgkgKg0KCSAqIEB2YXIgICAgYXJyYXkNCgkgKiBAc2luY2UgNS4wLjINCgkgKiovDQoJcHJvdGVjdGVkIGFycmF5ICRhY3RpdmUgPSBbDQoJCSdwaHAnID0+IFsNCgkJCSd1cGxvYWRfbWF4X2ZpbGVzaXplJyA9PiBbDQoJCQkJJ3N1Y2Nlc3MnID0+ICdUaGUgdXBsb2FkX21heF9maWxlc2l6ZSBpcyBhcHByb3ByaWF0ZWx5IHNldCB0byBoYW5kbGUgbGFyZ2UgZmlsZXMsIHdoaWNoIGlzIGVzc2VudGlhbCBmb3IgdXBsb2FkaW5nIHN1YnN0YW50aWFsIGNvbXBvbmVudHMgYW5kIG1lZGlhLicsDQoJCQkJJ3dhcm5pbmcnID0+ICdUaGUgY3VycmVudCB1cGxvYWRfbWF4X2ZpbGVzaXplIG1heSBub3Qgc3VwcG9ydCBsYXJnZSBmaWxlIHVwbG9hZHMgZWZmZWN0aXZlbHksIHBvdGVudGlhbGx5IGNhdXNpbmcgZmFpbHVyZXMgZHVyaW5nIGNvbXBvbmVudCBpbnN0YWxsYXRpb24uJw0KCQkJXSwNCgkJCSdwb3N0X21heF9zaXplJyA9PiBbDQoJCQkJJ3N1Y2Nlc3MnID0+ICdUaGUgcG9zdF9tYXhfc2l6ZSBzZXR0aW5nIGlzIHN1ZmZpY2llbnQgdG8gbWFuYWdlIGxhcmdlIGRhdGEgc3VibWlzc2lvbnMsIGVuc3VyaW5nIHNtb290aCBkYXRhIHByb2Nlc3Npbmcgd2l0aGluIGZvcm1zIGFuZCB1cGxvYWRzLicsDQoJCQkJJ3dhcm5pbmcnID0+ICdBbiBpbnN1ZmZpY2llbnQgcG9zdF9tYXhfc2l6ZSBjYW4gbGVhZCB0byB0cnVuY2F0ZWQgZGF0YSBzdWJtaXNzaW9ucywgYWZmZWN0aW5nIGZvcm0gZnVuY3Rpb25hbGl0eSBhbmQgZGF0YSBpbnRlZ3JpdHkuJw0KCQkJXSwNCgkJCSdtYXhfZXhlY3V0aW9uX3RpbWUnID0+IFsNCgkJCQknc3VjY2VzcycgPT4gJ01heCBleGVjdXRpb24gdGltZSBpcyBzZXQgaGlnaCBlbm91Z2ggdG8gZXhlY3V0ZSBjb21wbGV4IG9wZXJhdGlvbnMgd2l0aG91dCBwcmVtYXR1cmUgdGVybWluYXRpb24sIHdoaWNoIGlzIGNydWNpYWwgZm9yIGxlbmd0aHkgb3BlcmF0aW9ucy4nLA0KCQkJCSd3YXJuaW5nJyA9PiAnQSBsb3cgbWF4IGV4ZWN1dGlvbiB0aW1lIGNvdWxkIGxlYWQgdG8gc2NyaXB0IHRpbWVvdXRzLCBlc3BlY2lhbGx5IGR1cmluZyBpbnRlbnNpdmUgb3BlcmF0aW9ucywgd2hpY2ggbWlnaHQgaW50ZXJydXB0IGV4ZWN1dGlvbiBhbmQgY2F1c2UgZmFpbHVyZXMgZHVyaW5nIHRoZSBjb21waWxpbmcgb2YgYSBsYXJnZSBleHRlbnNpb24uJw0KCQkJXSwNCgkJCSdtYXhfaW5wdXRfdmFycycgPT4gWw0KCQkJCSdzdWNjZXNzJyA9PiAnVGhlIG1heF9pbnB1dF92YXJzIHNldHRpbmcgc3VwcG9ydHMgYSBoaWdoIG51bWJlciBvZiBpbnB1dCB2YXJpYWJsZXMsIGZhY2lsaXRhdGluZyBjb21wbGV4IGZvcm1zIGFuZCBkZXRhaWxlZCBjb21wb25lbnQgY29uZmlndXJhdGlvbnMuJywNCgkJCQknd2FybmluZycgPT4gJ1RvbyBmZXcgbWF4X2lucHV0X3ZhcnMgbWF5IHJlc3VsdCBpbiBsb3N0IGRhdGEgZHVyaW5nIHByb2Nlc3NpbmcgY29tcGxleCBmb3Jtcywgd2hpY2ggY2FuIGxlYWQgdG8gaW5jb21wbGV0ZSBjb25maWd1cmF0aW9ucyBhbmQgb3BlcmF0aW9uYWwgaXNzdWVzLicNCgkJCV0sDQoJCQknbWF4X2lucHV0X3RpbWUnID0+IFsNCgkJCQknc3VjY2VzcycgPT4gJ01heCBpbnB1dCB0aW1lIGlzIGFkZXF1YXRlIGZvciBwcm9jZXNzaW5nIGlucHV0cyBlZmZpY2llbnRseSBkdXJpbmcgaGlnaC1sb2FkIG9wZXJhdGlvbnMsIGVuc3VyaW5nIG5vIHByZW1hdHVyZSB0aW1lb3V0cy4nLA0KCQkJCSd3YXJuaW5nJyA9PiAnQW4gaW5zdWZmaWNpZW50IG1heCBpbnB1dCB0aW1lIGNvdWxkIHJlc3VsdCBpbiBpbmNvbXBsZXRlIGRhdGEgcHJvY2Vzc2luZyBkdXJpbmcgaW5wdXQtaGVhdnkgb3BlcmF0aW9ucywgcG90ZW50aWFsbHkgbGVhZGluZyB0byBlcnJvcnMgYW5kIGRhdGEgbG9zcy4nDQoJCQldLA0KCQkJJ21lbW9yeV9saW1pdCcgPT4gWw0KCQkJCSdzdWNjZXNzJyA9PiAnVGhlIG1lbW9yeSBsaW1pdCBpcyBzZXQgaGlnaCB0byBhY2NvbW1vZGF0ZSBleHRlbnNpdmUgb3BlcmF0aW9ucyBhbmQgZGF0YSBwcm9jZXNzaW5nLCB3aGljaCBlbmhhbmNlcyBvdmVyYWxsIHBlcmZvcm1hbmNlIGFuZCBzdGFiaWxpdHkuJywNCgkJCQknd2FybmluZycgPT4gJ0EgbG93IG1lbW9yeSBsaW1pdCBjYW4gbGVhZCB0byBmcmVxdWVudCBjcmFzaGVzIGFuZCBwZXJmb3JtYW5jZSBpc3N1ZXMsIHBhcnRpY3VsYXJseSB3aGVuIHByb2Nlc3NpbmcgbGFyZ2UgYW1vdW50cyBvZiBkYXRhIG9yIGNvbXBsZXggY2FsY3VsYXRpb25zLicNCgkJCV0NCgkJXSwNCgkJJ2Vudmlyb25tZW50JyA9PiBbDQoJCQknbmFtZScgPT4gJ2V4dGVuc2lvbiBlbnZpcm9ubWVudCcsDQoJCQknb2JqZWN0aXZlJyA9PiAnVGhlc2Ugc2V0dGluZ3MgYXJlIGNydWNpYWwgZm9yIGVuc3VyaW5nIHRoZSBzdWNjZXNzZnVsIGluc3RhbGxhdGlvbiBhbmQgc3RhYmxlIGZ1bmN0aW9uYWxpdHkgb2YgdGhlIGV4dGVuc2lvbi4nLA0KCQkJJ3dpa2lfbmFtZScgPT4gJ1BIUCBTZXR0aW5ncyBXaWtpJywNCgkJCSd3aWtpX3VybCcgPT4gJyMnDQoJCV0NCgldOw0KDQoJLyoqDQoJICogQXBwbGljYXRpb24gb2JqZWN0Lg0KCSAqDQoJICogQHNpbmNlICA1LjAuMg0KCSAqKi8NCglwcm90ZWN0ZWQgICRhcHA7DQoNCgkvKioNCgkgKiBDb25zdHJ1Y3Rvci4NCgkgKg0KCSAqIEBwYXJhbSAgICAgICAkYXBwICAgICAgVGhlIGFwcCBvYmplY3QuDQoJICoNCgkgKiBAc2luY2UgIDUuMC4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KCRhcHAgPSBudWxsKQ0KCXsNCgkJJHRoaXMtPmFwcCA9ICRhcHAgPzogRmFjdG9yeTo6Z2V0QXBwbGljYXRpb24oKTsNCg0KCQkvLyBzZXQgdGhlIHJlcXVpcmVkIFBIUCBDb25maWd1cmVzDQoJCSR0aGlzLT5zZXQoJ3BocC51cGxvYWRfbWF4X2ZpbGVzaXplLnZhbHVlJywgJHRoaXMtPnVwbG9hZF9tYXhfZmlsZXNpemUpOw0KCQkkdGhpcy0+c2V0KCdwaHAucG9zdF9tYXhfc2l6ZS52YWx1ZScsICR0aGlzLT5wb3N0X21heF9zaXplKTsNCgkJJHRoaXMtPnNldCgncGhwLm1heF9leGVjdXRpb25fdGltZS52YWx1ZScsICR0aGlzLT5tYXhfZXhlY3V0aW9uX3RpbWUpOw0KCQkkdGhpcy0+c2V0KCdwaHAubWF4X2lucHV0X3ZhcnMudmFsdWUnLCAkdGhpcy0+bWF4X2lucHV0X3ZhcnMpOw0KCQkkdGhpcy0+c2V0KCdwaHAubWF4X2lucHV0X3RpbWUudmFsdWUnLCAkdGhpcy0+bWF4X2lucHV0X3RpbWUpOw0KCQkkdGhpcy0+c2V0KCdwaHAubWVtb3J5X2xpbWl0LnZhbHVlJywgJHRoaXMtPm1lbW9yeV9saW1pdCk7DQoJfQ0KDQoJLyoqDQoJICogQ2hlY2sgdGhhdCB0aGUgcmVxdWlyZWQgY29uZmlndXJhdGlvbnMgYXJlIHNldCBmb3IgUEhQDQoJICoNCgkgKiBAcmV0dXJuIHZvaWQNCgkgKiBAc2luY2UgIDUuMC4yDQoJICoqLw0KCXB1YmxpYyBmdW5jdGlvbiBydW4oKTogdm9pZA0KCXsNCgkJJHNob3dIZWxwID0gZmFsc2U7DQoNCgkJLy8gQ2hlY2sgZWFjaCBjb25maWd1cmF0aW9uIGFuZCBwcm92aWRlIGRldGFpbGVkIGZlZWRiYWNrDQoJCSRjb25maWd1cmF0aW9ucyA9ICR0aGlzLT5hY3RpdmVbJ3BocCddID8/IFtdOw0KCQlmb3JlYWNoICgkY29uZmlndXJhdGlvbnMgYXMgJGNvbmZpZ05hbWUgPT4gJGNvbmZpZ0RldGFpbHMpDQoJCXsNCgkJCSRjdXJyZW50VmFsdWUgPSBpbmlfZ2V0KCRjb25maWdOYW1lKTsNCgkJCWlmICgkY3VycmVudFZhbHVlID09PSBmYWxzZSkNCgkJCXsNCgkJCQkkdGhpcy0+YXBwLT5lbnF1ZXVlTWVzc2FnZSgiRXJyb3I6IFVuYWJsZSB0byByZXRyaWV2ZSBjdXJyZW50IHNldHRpbmcgZm9yICd7JGNvbmZpZ05hbWV9Jy4iLCAnZXJyb3InKTsNCgkJCQljb250aW51ZTsNCgkJCX0NCg0KCQkJJHJlcXVpcmVkVmFsdWUgPSAkY29uZmlnRGV0YWlsc1sndmFsdWUnXSA/PyAwOw0KCQkJJGlzTWVtb3J5VmFsdWUgPSBzdHJwYnJrKCRyZXF1aXJlZFZhbHVlLCAnS01HJykgIT09IGZhbHNlOw0KDQoJCQkkcmVxdWlyZWRWYWx1ZUJ5dGVzID0gJGlzTWVtb3J5VmFsdWUgPyAkdGhpcy0+Y29udmVydFRvQnl0ZXMoJHJlcXVpcmVkVmFsdWUpIDogKGludCkgJHJlcXVpcmVkVmFsdWU7DQoJCQkkY3VycmVudFZhbHVlQnl0ZXMgPSAkaXNNZW1vcnlWYWx1ZSA/ICR0aGlzLT5jb252ZXJ0VG9CeXRlcygkY3VycmVudFZhbHVlKSA6IChpbnQpICRjdXJyZW50VmFsdWU7DQoJCQkkY29uZGl0aW9uTWV0ID0gJGN1cnJlbnRWYWx1ZUJ5dGVzID49ICRyZXF1aXJlZFZhbHVlQnl0ZXM7DQoNCgkJCSRtZXNzYWdlVHlwZSA9ICRjb25kaXRpb25NZXQgPyAnbWVzc2FnZScgOiAnd2FybmluZyc7DQoJCQkkbWVzc2FnZVRleHQgPSAkY29uZGl0aW9uTWV0ID8NCgkJCQkiU3VjY2VzczogeyRjb25maWdOYW1lfSBpcyBzZXQgdG8geyRjdXJyZW50VmFsdWV9LiAiIC4gJGNvbmZpZ0RldGFpbHNbJ3N1Y2Nlc3MnXSA/PyAnJzoNCgkJCQkiV2FybmluZzogeyRjb25maWdOYW1lfSBjb25maWd1cmF0aW9uIHNob3VsZCBiZSBhdCBsZWFzdCB7JHJlcXVpcmVkVmFsdWV9IGJ1dCBpcyBjdXJyZW50bHkgeyRjdXJyZW50VmFsdWV9LiAiIC4gJGNvbmZpZ0RldGFpbHNbJ3dhcm5pbmcnXSA/PyAnJzsNCg0KCQkJJHNob3dIZWxwID0gKCRzaG93SGVscCB8fCAkbWVzc2FnZVR5cGUgPT09ICd3YXJuaW5nJykgPyB0cnVlIDogZmFsc2U7DQoNCgkJCSR0aGlzLT5hcHAtPmVucXVldWVNZXNzYWdlKCRtZXNzYWdlVGV4dCwgJG1lc3NhZ2VUeXBlKTsNCgkJfQ0KDQoJCWlmICgkc2hvd0hlbHApDQoJCXsNCgkJCSR0aGlzLT5hcHAtPmVucXVldWVNZXNzYWdlKCJUbyBvcHRpbWl6ZSB5b3VyIHskdGhpcy0+Z2V0KCdlbnZpcm9ubWVudC5uYW1lJywgJ2V4dGVuc2lvbicpfSwgc3BlY2lmaWMgUEhQIHNldHRpbmdzIG11c3QgYmUgZW5oYW5jZWQuPGJyPnskdGhpcy0+Z2V0KCdlbnZpcm9ubWVudC5vYmplY3RpdmUnLCAnJyl9PGJyPldlJ3ZlIGlkZW50aWZpZWQgdGhhdCBjZXJ0YWluIGNvbmZpZ3VyYXRpb25zIGN1cnJlbnRseSBkbyBub3QgbWVldCB0aGUgcmVjb21tZW5kZWQgc3RhbmRhcmRzLjxicj5UbyBhZGp1c3QgdGhlc2Ugc2V0dGluZ3MgYW5kIHByZXZlbnQgcG90ZW50aWFsIGlzc3VlcywgcGxlYXNlIGNvbnN1bHQgb3VyIGRldGFpbGVkIGd1aWRlIGF2YWlsYWJsZSBhdCA8YSBocmVmPVwiaHR0cHM6Ly97JHRoaXMtPmdldCgnZW52aXJvbm1lbnQud2lraV91cmwnLCAnIycpfVwiIHRhcmdldD1cIl9ibGFua1wiPnskdGhpcy0+Z2V0KCdlbnZpcm9ubWVudC53aWtpX25hbWUnLCAnUEhQIFNldHRpbmdzIFdpa2knKX08L2E+LiIsICdub3RpY2UnKTsNCgkJfQ0KCX0NCg0KCS8qKg0KCSAqIEhlbHBlciBmdW5jdGlvbiB0byBjb252ZXJ0IFBIUCBJTkkgbWVtb3J5IHZhbHVlcyB0byBieXRlcw0KCSAqDQoJICogQHBhcmFtICBzdHJpbmcgICR2YWx1ZSAgICAgVGhlIHZhbHVlIHRvIGNvbnZlcnQNCgkgKg0KCSAqIEByZXR1cm4gaW50ICAgICBUaGUgYnl0ZXMgdmFsdWUNCgkgKiBAc2luY2UgIDUuMC4yDQoJICovDQoJcHJvdGVjdGVkIGZ1bmN0aW9uIGNvbnZlcnRUb0J5dGVzKHN0cmluZyAkdmFsdWUpOiBpbnQNCgl7DQoJCSR2YWx1ZSA9IHRyaW0oJHZhbHVlKTsNCgkJJGxhc3RDaGFyID0gc3RydG9sb3dlcigkdmFsdWVbc3RybGVuKCR2YWx1ZSkgLSAxXSk7DQoJCSRudW1WYWx1ZSA9IHN1YnN0cigkdmFsdWUsIDAsIC0xKTsNCg0KCQlzd2l0Y2ggKCRsYXN0Q2hhcikNCgkJew0KCQkJY2FzZSAnZyc6DQoJCQkJcmV0dXJuICRudW1WYWx1ZSAqIDEwMjQgKiAxMDI0ICogMTAyNDsNCgkJCWNhc2UgJ20nOg0KCQkJCXJldHVybiAkbnVtVmFsdWUgKiAxMDI0ICogMTAyNDsNCgkJCWNhc2UgJ2snOg0KCQkJCXJldHVybiAkbnVtVmFsdWUgKiAxMDI0Ow0KCQkJZGVmYXVsdDoNCgkJCQlyZXR1cm4gKGludCkgJHZhbHVlOw0KCQl9DQoJfQ==', '{}', '{}', '', 1, '2024-07-27 10:01:40', 17, '', 1), +(782, '4b2d6f28-346e-46ec-bf24-d470319cca2d', 'VDM.Component.PHPConfigurationChecker', 'PHPConfigurationChecker', 'final class', '[[[Component]]] PHP Configuration Checker\r\n\r\n@since 5.02', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '900456a2-feb5-48b9-9f05-c5a032a32c59', '', '', '', '{\"0\":\"95c02df3-fe0a-405b-b506-b7a5b8605b66\"}', '', '[[[NamespacePrefix]]]\\Joomla\\[[[ComponentNamespace]]].PHPConfigurationChecker', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIFRoZSB1cGxvYWQgbWF4IGZpbGVzaXplIHZhbHVlDQoJICoNCgkgKiBAdmFyICAgIHN0cmluZw0KCSAqIEBzaW5jZSAgNS4wLjINCgkgKiovDQoJcHJvdGVjdGVkICBzdHJpbmcgJHVwbG9hZF9tYXhfZmlsZXNpemUgPSAnW1tbdXBsb2FkX21heF9maWxlc2l6ZV1dXSc7DQoNCgkvKioNCgkgKiBUaGUgcG9zdCBtYXggc2l6ZSB2YWx1ZQ0KCSAqDQoJICogQHZhciAgICBzdHJpbmcNCgkgKiBAc2luY2UgIDUuMC4yDQoJICoqLw0KCXByb3RlY3RlZCAgc3RyaW5nICRwb3N0X21heF9zaXplID0gJ1tbW3Bvc3RfbWF4X3NpemVdXV0nOw0KDQoJLyoqDQoJICogVGhlIG1heCBleGVjdXRpb24gdGltZSB2YWx1ZQ0KCSAqDQoJICogQHZhciAgICBpbnQNCgkgKiBAc2luY2UgIDUuMC4yDQoJICoqLw0KCXByb3RlY3RlZCAgaW50ICRtYXhfZXhlY3V0aW9uX3RpbWUgPSBbW1ttYXhfZXhlY3V0aW9uX3RpbWVdXV07DQoNCgkvKioNCgkgKiBUaGUgbWF4IGlucHV0IHZhcnMgdmFsdWUNCgkgKg0KCSAqIEB2YXIgICAgaW50DQoJICogQHNpbmNlICA1LjAuMg0KCSAqKi8NCglwcm90ZWN0ZWQgIGludCAkbWF4X2lucHV0X3ZhcnMgPSBbW1ttYXhfaW5wdXRfdmFyc11dXTsNCg0KCS8qKg0KCSAqIFRoZSBtYXggaW5wdXQgdGltZSB2YWx1ZQ0KCSAqDQoJICogQHZhciAgICBpbnQNCgkgKiBAc2luY2UgIDUuMC4yDQoJICoqLw0KCXByb3RlY3RlZCAgaW50ICRtYXhfaW5wdXRfdGltZSA9IFtbW21heF9pbnB1dF90aW1lXV1dOw0KDQoJLyoqDQoJICogVGhlIG1lbW9yeSBsaW1pdCB2YWx1ZQ0KCSAqDQoJICogQHZhciAgICBzdHJpbmcNCgkgKiBAc2luY2UgIDUuMC4yDQoJICoqLw0KCXByb3RlY3RlZCAgc3RyaW5nICRtZW1vcnlfbGltaXQgPSAnW1tbbWVtb3J5X2xpbWl0XV1dJzsNCg0KCS8qKg0KCSAqIENvbnN0cnVjdG9yLg0KCSAqDQoJICogQHNpbmNlICA1LjAuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdCgkYXBwID0gbnVsbCkNCgl7DQoJCXBhcmVudDo6X19jb25zdHJ1Y3QoJGFwcCk7DQoNCgkJLy8gc2V0IHRoZSByZXF1aXJlZCBQSFAgQ29uZmlndXJlcw0KCQkkdGhpcy0+c2V0KCdlbnZpcm9ubWVudC5uYW1lJywgJ1tbW0NvbXBvbmVudF1dXSBlbnZpcm9ubWVudCcpOw0KCQkkdGhpcy0+c2V0KCdlbnZpcm9ubWVudC53aWtpX3VybCcsICdbW1tlbnZpcm9ubWVudF93aWtpX3VybF1dXScpOw0KCX0=', '{}', '{}', '', 1, '2024-07-27 12:38:37', 4, '', 1), +(821, '7832a726-87b6-4e95-887e-7b725d3fab8f', 'Joomla.Utilities.UserHelper', 'UserHelper', 'abstract class', 'Create & Update User [Save]\r\n\r\n@since 5.0.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIwDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\[[[ComponentNamespace]]].Utilities.UserHelper', 1, '{}', '{}', 'dXNlIEpvb21sYVxDTVNcRmFjdG9yeTsNCnVzZSBKb29tbGFcQ01TXEZvcm1cRm9ybTsNCnVzZSBKb29tbGFcQ01TXExhbmd1YWdlXFRleHQ7DQp1c2UgSm9vbWxhXENNU1xVc2VyXFVzZXI7DQp1c2UgSm9vbWxhXENNU1xVc2VyXFVzZXJIZWxwZXIgYXMgSm9vbWxhVXNlckhlbHBlcjsNCnVzZSBKb29tbGFcQ01TXE1WQ1xNb2RlbFxCYXNlRGF0YWJhc2VNb2RlbDs=', '{\"use_selection0\":{\"use\":\"640b5352-fb09-425f-a26e-cd44eda03f15\",\"as\":\"Component\"},\"use_selection1\":{\"use\":\"0a59c65c-9daf-4bc9-baf4-e063ff9e6a8a\",\"as\":\"default\"},\"use_selection2\":{\"use\":\"1f28cb53-60d9-4db1-b517-3c7dc6b429ef\",\"as\":\"default\"},\"use_selection3\":{\"use\":\"1c10a5f1-204d-4f17-ad9f-0e0684f2030d\",\"as\":\"default\"}}', 'CS8qKg0KCSAqIFNhdmUgdXNlciBkZXRhaWxzIGJ5IGVpdGhlciBjcmVhdGluZyBhIG5ldyB1c2VyIG9yIHVwZGF0aW5nIGFuIGV4aXN0aW5nIHVzZXIuDQoJICoNCgkgKiBAcGFyYW0gICBhcnJheSAgJGNyZWRlbnRpYWxzICBVc2VyIGNyZWRlbnRpYWxzIGluY2x1ZGluZyAnbmFtZScsICd1c2VybmFtZScsICdlbWFpbCcsICdwYXNzd29yZCcsIGFuZCAncGFzc3dvcmQyJy4NCgkgKiBAcGFyYW0gICBpbnQgICAgJGF1dG9sb2dpbiAgICBGbGFnIHRvIGRldGVybWluZSB3aGV0aGVyIHRvIGF1dG8tbG9naW4gdGhlIHVzZXIgYWZ0ZXIgcmVnaXN0cmF0aW9uLg0KCSAqIEBwYXJhbSAgIGFycmF5ICAkcGFyYW1zICAgICAgIFBhcmFtZXRlcnMgZm9yIHVzZXIgYWN0aXZhdGlvbiwgcGFzc3dvcmQgc2VuZGluZywgYW5kIHVzZXIgcmVnaXN0cmF0aW9uIGFsbG93YW5jZS4NCgkgKiBAcGFyYW0gICBpbnQgICAgJG1vZGUgICAgICAgICBNb2RlIG9mIHJlZ2lzdHJhdGlvbjogMSA9IFNpdGUgUmVnaXN0cmF0aW9uLCAwID0gQWRtaW4gUmVnaXN0cmF0aW9uLCAyID0gQ3VzdG9tIEhlbHBlciBNZXRob2QuDQoJICoNCgkgKiBAcmV0dXJuICBpbnQgIFVzZXIgSUQgb24gc3VjY2Vzcy4NCgkgKg0KCSAqIEB0aHJvd3MgIFxJbnZhbGlkQXJndW1lbnRFeGNlcHRpb24gIElmIHJlcXVpcmVkIGNyZWRlbnRpYWxzIGFyZSBtaXNzaW5nLg0KCSAqIEB0aHJvd3MgIFxSdW50aW1lRXhjZXB0aW9uICAgICAgICAgIElmIHRoZSB1c2VyIHVwZGF0ZSBvciBjcmVhdGlvbiBmYWlscy4NCgkgKiBAdGhyb3dzICBOb1VzZXJJZEZvdW5kRXhjZXB0aW9uICAgICBJZiB0aGUgdXNlciBpcyBub3QgZm91bmQuDQoJICoNCgkgKiBAc2luY2UgICA1LjAuMw0KCSAqLw0KCXB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gc2F2ZShhcnJheSAkY3JlZGVudGlhbHMsIGludCAkYXV0b2xvZ2luID0gMCwNCgkJYXJyYXkgJHBhcmFtcyA9IFsndXNlcmFjdGl2YXRpb24nID0+IDAsICdzZW5kcGFzc3dvcmQnID0+IDFdLCBpbnQgJG1vZGUgPSAxKTogaW50DQoJew0KCQkvLyBjYW4gbm90IGNvbnRpbnVlIHdpdGhvdXQgYW4gZW1haWwNCgkJaWYgKGVtcHR5KCRjcmVkZW50aWFsc1snZW1haWwnXSkpDQoJCXsNCgkJCXRocm93IG5ldyBcSW52YWxpZEFyZ3VtZW50RXhjZXB0aW9uKFRleHQ6Ol8oJ0NhbiBub3Qgc2F2ZSB1c2VyIHdpdGhvdXQgZW1haWwgdmFsdWUuJykpOw0KCQl9DQoNCgkJLy8gRW5zdXJlIHRoZSAndXNlcm5hbWUnIGtleSBleGlzdHMgaW4gdGhlIGNyZWRlbnRpYWxzIGFycmF5LCBzZXQgdG8gYW4gZW1wdHkgc3RyaW5nIGlmIG5vdCBwcm92aWRlZC4NCgkJJHVzZXJuYW1lID0gJGNyZWRlbnRpYWxzWyd1c2VybmFtZSddID8/ICRjcmVkZW50aWFsc1snZW1haWwnXTsNCg0KCQkvLyBJZiB0aGUgdXNlcidzIElEIGlzIHNldCBhbmQgdmFsaWQsIGhhbmRsZSB0aGUgdXBkYXRlIGxvZ2ljLg0KCQlpZiAoIWVtcHR5KCRjcmVkZW50aWFsc1snaWQnXSkgJiYgJGNyZWRlbnRpYWxzWydpZCddID4gMCkNCgkJew0KCQkJJHVzZXJJZCA9ICRjcmVkZW50aWFsc1snaWQnXTsNCgkJCSRlbWFpbCA9ICRjcmVkZW50aWFsc1snZW1haWwnXTsNCg0KCQkJLy8gRmV0Y2ggZXhpc3RpbmcgdXNlciBieSBlbWFpbCBhbmQgdXNlcm5hbWUuDQoJCQkkZXhpc3RpbmdFbWFpbFVzZXJJZCA9IHN0YXRpYzo6Z2V0VXNlcklkQnlFbWFpbCgkZW1haWwpOw0KCQkJJGV4aXN0aW5nVXNlcm5hbWVJZCA9IHN0YXRpYzo6Z2V0VXNlcklkQnlVc2VybmFtZSgkdXNlcm5hbWUpOw0KDQoJCQkvLyBWYWxpZGF0ZSB0aGF0IHdlIGFyZW4ndCBhdHRlbXB0aW5nIHRvIHVwZGF0ZSBvdGhlciB1c2VycyBvciByZXVzZSBhbm90aGVyIHVzZXIncyBlbWFpbC91c2VybmFtZS4NCgkJCWlmICgNCgkJCQkoJGV4aXN0aW5nRW1haWxVc2VySWQgJiYgJGV4aXN0aW5nRW1haWxVc2VySWQgIT0gJHVzZXJJZCkgfHwNCgkJCQkoJGV4aXN0aW5nVXNlcm5hbWVJZCAmJiAkZXhpc3RpbmdVc2VybmFtZUlkICE9ICR1c2VySWQpIHx8DQoJCQkJKCRleGlzdGluZ0VtYWlsVXNlcklkICYmICRleGlzdGluZ1VzZXJuYW1lSWQgJiYgJGV4aXN0aW5nRW1haWxVc2VySWQgIT0gJGV4aXN0aW5nVXNlcm5hbWVJZCkNCgkJCSkgew0KCQkJCXRocm93IG5ldyBOb1VzZXJJZEZvdW5kRXhjZXB0aW9uKA0KCQkJCQlUZXh0OjpzcHJpbnRmKA0KCQkJCQkJJ1VzZXIgSUQgbWlzbWF0Y2ggZGV0ZWN0ZWQgd2hlbiB0cnlpbmcgdG8gc2F2ZSAlcyAoJXMpIGNyZWRlbnRpYWxzLicsDQoJCQkJCQkkdXNlcm5hbWUsDQoJCQkJCQkkZW1haWwNCgkJCQkJKQ0KCQkJCSk7DQoJCQl9DQoNCgkJCS8vIFVwZGF0ZSB0aGUgZXhpc3RpbmcgdXNlci4NCgkJCXJldHVybiBzdGF0aWM6OnVwZGF0ZSgkY3JlZGVudGlhbHMpOw0KCQl9DQoNCgkJLy8gQ3JlYXRlIGEgbmV3IHVzZXIgaWYgbm8gZXhpc3RpbmcgdXNlciBpcyBmb3VuZC4NCgkJcmV0dXJuIHN0YXRpYzo6Y3JlYXRlKCRjcmVkZW50aWFscywgJGF1dG9sb2dpbiwgJHBhcmFtcywgJG1vZGUpOw0KCX0NCg0KCS8qKg0KCSAqIENyZWF0ZSBhIHVzZXIgYW5kIHVwZGF0ZSB0aGUgZ2l2ZW4gdGFibGUuDQoJICoNCgkgKiBAcGFyYW0gICBhcnJheSAgJGNyZWRlbnRpYWxzICBVc2VyIGNyZWRlbnRpYWxzIGluY2x1ZGluZyAnbmFtZScsICd1c2VybmFtZScsICdlbWFpbCcsICdwYXNzd29yZCcsIGFuZCAncGFzc3dvcmQyJy4NCgkgKiBAcGFyYW0gICBpbnQgICAgJGF1dG9sb2dpbiAgICBGbGFnIHRvIGRldGVybWluZSB3aGV0aGVyIHRvIGF1dG8tbG9naW4gdGhlIHVzZXIgYWZ0ZXIgcmVnaXN0cmF0aW9uLg0KCSAqIEBwYXJhbSAgIGFycmF5ICAkcGFyYW1zICAgICAgIFBhcmFtZXRlcnMgZm9yIHVzZXIgYWN0aXZhdGlvbiwgcGFzc3dvcmQgc2VuZGluZywgYW5kIHVzZXIgcmVnaXN0cmF0aW9uIGFsbG93YW5jZS4NCgkgKiBAcGFyYW0gICBpbnQgICAgJG1vZGUgICAgICAgICBNb2RlIG9mIHJlZ2lzdHJhdGlvbjogMSA9IFNpdGUgUmVnaXN0cmF0aW9uLCAwID0gQWRtaW4gUmVnaXN0cmF0aW9uLCAyID0gQ3VzdG9tIEhlbHBlciBNZXRob2QuDQoJICoNCgkgKiBAcmV0dXJuICBpbnQgVXNlciBJRCBvbiBzdWNjZXNzLg0KCSAqDQoJICogQHRocm93cyAgXFJ1bnRpbWVFeGNlcHRpb24gICAgICAgSWYgdXNlciBjcmVhdGlvbiBmYWlscy4NCgkgKiBAdGhyb3dzICBOb1VzZXJJZEZvdW5kRXhjZXB0aW9uICBJZiB0aGUgdXNlciBpcyBub3QgZm91bmQuDQoJICoNCgkgKiBAc2luY2UgICA1LjAuMw0KCSAqLw0KCXB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gY3JlYXRlKGFycmF5ICRjcmVkZW50aWFscywgaW50ICRhdXRvbG9naW4gPSAwLA0KCQlhcnJheSAkcGFyYW1zID0gWyd1c2VyYWN0aXZhdGlvbicgPT4gMCwgJ3NlbmRwYXNzd29yZCcgPT4gMV0sIGludCAkbW9kZSA9IDEpOiBpbnQNCgl7DQoJCSRsYW5nID0gRmFjdG9yeTo6Z2V0TGFuZ3VhZ2UoKTsNCgkJJGxhbmctPmxvYWQoJ2NvbV91c2VycycsIEpQQVRIX1NJVEUsICdlbi1HQicsIHRydWUpOw0KDQoJCS8vIEhhbmRsZSBjdXN0b20gcmVnaXN0cmF0aW9uIG1vZGUNCgkJaWYgKCRtb2RlID09PSAyICYmIG1ldGhvZF9leGlzdHMoSm9vbWxhX19fYWViZmViOWZfZjhhM180MmJlX2EyMWRfNWRiNTZhZTMwYzFjX19fUG93ZXI6OmNsYXNzLCAncmVnaXN0ZXJVc2VyJykpDQoJCXsNCgkJCSRwYXJhbXNbJ2F1dG9sb2dpbiddID0gJGF1dG9sb2dpbjsNCgkJCSR1c2VySWQgPSBKb29tbGFfX19hZWJmZWI5Zl9mOGEzXzQyYmVfYTIxZF81ZGI1NmFlMzBjMWNfX19Qb3dlcjo6cmVnaXN0ZXJVc2VyKCRjcmVkZW50aWFscywgJHBhcmFtcyk7DQoNCgkJCWlmIChpc19udW1lcmljKCR1c2VySWQpKQ0KCQkJew0KCQkJCXJldHVybiAkdXNlcklkOw0KCQkJfQ0KDQoJCQl0aHJvdyBuZXcgTm9Vc2VySWRGb3VuZEV4Y2VwdGlvbihUZXh0OjpfKCdVc2VyIGNyZWF0aW9uIGZhaWxlZCEnKSk7DQoJCX0NCg0KCQkvLyBDaGVjayBpZiB3ZSBoYXZlIHBhcmFtcy9jb25maWcNCgkJaWYgKEFycmF5SGVscGVyOjpjaGVjaygkcGFyYW1zKSkNCgkJew0KCQkJLy8gTWFrZSBjaGFuZ2VzIHRvIHVzZXIgY29uZmlnDQoJCQlmb3JlYWNoICgkcGFyYW1zIGFzICRwYXJhbSA9PiAkc2V0KQ0KCQkJew0KCQkJCS8vIElmIHlvdSBrbm93IG9mIGEgYmV0dGVyIHBhdGgsIGxldCBtZSBrbm93DQoJCQkJJHBhcmFtc1skcGFyYW1dID0gQ29tcG9uZW50OjpzZXRQYXJhbXMoJHBhcmFtLCAkc2V0LCAnY29tX3VzZXJzJyk7DQoJCQl9DQoJCX0NCg0KCQkvLyBGYWxsYmFjayB0byBTaXRlIFJlZ2lzdHJhdGlvbnMgaWYgbW9kZSBpcyBzZXQgdG8gMiBidXQgdGhlIG1ldGhvZCBkb2Vzbid0IGV4aXN0DQoJCSRtb2RlID0gJG1vZGUgPT09IDIgPyAxIDogJG1vZGU7DQoNCgkJLy8gTG9hZCB0aGUgYXBwcm9wcmlhdGUgdXNlciBtb2RlbA0KCQkkbW9kZWwgPSBzdGF0aWM6OmdldE1vZGVsQnlNb2RlKCRtb2RlKTsNCg0KCQkvLyBTZXQgZGVmYXVsdCB2YWx1ZXMgZm9yIG1pc3NpbmcgY3JlZGVudGlhbHMNCgkJJGNyZWRlbnRpYWxzWyd1c2VybmFtZSddID0gJGNyZWRlbnRpYWxzWyd1c2VybmFtZSddID8/ICRjcmVkZW50aWFsc1snZW1haWwnXTsNCg0KCQkvLyBQcmVwYXJlIHVzZXIgZGF0YQ0KCQkkZGF0YSA9IHN0YXRpYzo6cHJlcGFyZVVzZXJEYXRhKCRjcmVkZW50aWFscywgJG1vZGUpOw0KDQoJCS8vIFNldCBmb3JtIHBhdGggKGJ1ZyBmaXggZm9yIEpvb21sYSkNCgkJc3RhdGljOjpzZXRGb3JtUGF0aEZvclVzZXJDbGFzcygkbW9kZSk7DQoNCgkJLy8gSGFuZGxlIHVzZXIgY3JlYXRpb24NCgkJJHVzZXJJZCA9ICRtb2RlID09PSAxID8gJG1vZGVsLT5yZWdpc3RlcigkZGF0YSkgOiBzdGF0aWM6OmFkbWluUmVnaXN0ZXIoJG1vZGVsLCAkZGF0YSk7DQoNCgkJLy8gQ2hlY2sgaWYgd2UgaGF2ZSBwYXJhbXMNCgkJaWYgKEFycmF5SGVscGVyOjpjaGVjaygkcGFyYW1zKSkNCgkJew0KCQkJLy8gQ2hhbmdlIHVzZXIgcGFyYW1zL2NvbmZpZyBiYWNrDQoJCQlmb3JlYWNoICgkcGFyYW1zIGFzICRwYXJhbSA9PiAkc2V0KQ0KCQkJew0KCQkJCS8vIElmIHlvdSBrbm93IG9mIGEgYmV0dGVyIHBhdGgsIGxldCBtZSBrbm93DQoJCQkJQ29tcG9uZW50OjpzZXRQYXJhbXMoJHBhcmFtLCAkc2V0LCAnY29tX3VzZXJzJyk7DQoJCQl9DQoJCX0NCg0KCQlpZiAoISR1c2VySWQpDQoJCXsNCgkJCSRjdXJyZW50X3VzZXIgPSBGYWN0b3J5OjpnZXRBcHBsaWNhdGlvbigpLT5nZXRJZGVudGl0eSgpOw0KDQoJCQkvLyBvbmx5IGFsbG93IHRob3NlIHdpdGggYWNjZXNzIHRvIFVzZXJzIHRvIGlnbm9yZSBlcnJvcnMNCgkJCWlmICgkY3VycmVudF91c2VyLT5hdXRob3Jpc2UoJ2NvcmUubWFuYWdlJywgJ2NvbV91c2VycycpKQ0KCQkJew0KCQkJCSR1c2VySWQgPSBzdGF0aWM6OmdldFVzZXJJZEJ5VXNlcm5hbWUoJGNyZWRlbnRpYWxzWyd1c2VybmFtZSddKTsNCgkJCX0NCgkJfQ0KDQoJCWlmIChpc19udW1lcmljKCR1c2VySWQpICYmICR1c2VySWQgPiAwKQ0KCQl7DQoJCQkvLyBIYW5kbGUgcG9zdC1yZWdpc3RyYXRpb24gcHJvY2Vzc2VzDQoJCQlyZXR1cm4gc3RhdGljOjpoYW5kbGVQb3N0UmVnaXN0cmF0aW9uKCR1c2VySWQsICRhdXRvbG9naW4sICRjcmVkZW50aWFscyk7DQoJCX0NCg0KCQkkZXJyb3JfbWVzc2FnZXMgPSAnJzsNCgkJaWYgKG1ldGhvZF9leGlzdHMoJG1vZGVsLCAnZ2V0RXJyb3InKSkNCgkJew0KCQkJJGVycm9ycyA9ICRtb2RlbC0+Z2V0RXJyb3IoKTsNCgkJCWlmICghZW1wdHkoJGVycm9ycykpDQoJCQl7DQoJCQkJaWYgKGlzX2FycmF5KCRlcnJvcnMpKQ0KCQkJCXsNCgkJCQkJJGVycm9yX21lc3NhZ2VzID0gJzxicj4nIC4gaW1wbG9kZSgnPGJyPicsICRlcnJvcnMpOw0KCQkJCX0NCgkJCQllbHNlaWYgKGlzX3N0cmluZygkZXJyb3JzKSkNCgkJCQl7DQoJCQkJCSRlcnJvcl9tZXNzYWdlcyA9ICc8YnI+JyAuICRlcnJvcnM7DQoJCQkJfQ0KCQkJfQ0KCQl9DQoNCgkJdGhyb3cgbmV3IE5vVXNlcklkRm91bmRFeGNlcHRpb24oDQoJCQlUZXh0OjpzcHJpbnRmKCdVc2VyICVzICglcykgY3JlYXRpb24gZmFpbGVkISVzJywNCgkJCQkoc3RyaW5nKSAkY3JlZGVudGlhbHNbJ3VzZXJuYW1lJ10sDQoJCQkJKHN0cmluZykgJGNyZWRlbnRpYWxzWydlbWFpbCddLA0KCQkJCSRlcnJvcl9tZXNzYWdlcw0KCQkJKQ0KCQkpOw0KCX0NCg0KCS8qKg0KCSAqIFVwZGF0ZSB1c2VyIGRldGFpbHMuDQoJICoNCgkgKiBAcGFyYW0gICBhcnJheSAgJHVzZXJEZXRhaWxzICBBcnJheSBjb250YWluaW5nIHVzZXIgZGV0YWlscyB0byBiZSB1cGRhdGVkLg0KCSAqDQoJICogQHJldHVybiAgaW50ICAgVXBkYXRlZCB1c2VyIElEIG9uIHN1Y2Nlc3MuDQoJICoNCgkgKiBAdGhyb3dzICBcUnVudGltZUV4Y2VwdGlvbiAgSWYgdXNlciB1cGRhdGUgZmFpbHMuDQoJICoNCgkgKiBAc2luY2UgICA1LjAuMw0KCSAqLw0KCXB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gdXBkYXRlKGFycmF5ICR1c2VyRGV0YWlscyk6IGludA0KCXsNCgkJJGxhbmcgPSBGYWN0b3J5OjpnZXRMYW5ndWFnZSgpOw0KCQkkbGFuZy0+bG9hZCgnY29tX3VzZXJzJywgSlBBVEhfQURNSU5JU1RSQVRPUiwgJ2VuLUdCJywgdHJ1ZSk7DQoNCgkJJG1vZGVsID0gQ29tcG9uZW50OjpnZXRNb2RlbCgnVXNlcicsICdBZG1pbmlzdHJhdG9yJywgJ2NvbV91c2VycycpOw0KDQoJCS8vIFNldCBkZWZhdWx0IHZhbHVlcyBmb3IgbWlzc2luZyBjcmVkZW50aWFscw0KCQkkdXNlckRldGFpbHNbJ3VzZXJuYW1lJ10gPSAkdXNlckRldGFpbHNbJ3VzZXJuYW1lJ10gPz8gJHVzZXJEZXRhaWxzWydlbWFpbCddOw0KDQoJCS8vIFByZXBhcmUgdXNlciBkYXRhIGZvciB1cGRhdGUNCgkJJGRhdGEgPSBbDQoJCQknaWQnID0+ICR1c2VyRGV0YWlsc1snaWQnXSwNCgkJCSd1c2VybmFtZScgPT4gJHVzZXJEZXRhaWxzWyd1c2VybmFtZSddLA0KCQkJJ25hbWUnID0+ICR1c2VyRGV0YWlsc1snbmFtZSddLA0KCQkJJ2VtYWlsJyA9PiAkdXNlckRldGFpbHNbJ2VtYWlsJ10sDQoJCQkncGFzc3dvcmQnID0+ICR1c2VyRGV0YWlsc1sncGFzc3dvcmQnXSA/PyBudWxsLA0KCQkJJ3Bhc3N3b3JkMicgPT4gJHVzZXJEZXRhaWxzWydwYXNzd29yZDInXSA/PyBudWxsLA0KCQkJJ2Jsb2NrJyA9PiAwDQoJCV07DQoNCgkJLy8gc2V0IGdyb3VwcyBpZiBmb3VuZA0KCQlpZiAoaXNzZXQoJHVzZXJEZXRhaWxzWydncm91cHMnXSkgJiYgQXJyYXlIZWxwZXI6OmNoZWNrKCR1c2VyRGV0YWlsc1snZ3JvdXBzJ10pKQ0KCQl7DQoJCQkkZGF0YVsnZ3JvdXBzJ10gPSAkdXNlckRldGFpbHNbJ2dyb3VwcyddOw0KCQl9DQoNCgkJLy8gVXBkYXRlIHRoZSB1c2VyDQoJCWlmICgkbW9kZWwtPnNhdmUoJGRhdGEpKQ0KCQl7DQoJCQlyZXR1cm4gJHVzZXJEZXRhaWxzWydpZCddOw0KCQl9DQoNCgkJJGVycm9yX21lc3NhZ2VzID0gJyc7DQoJCWlmIChtZXRob2RfZXhpc3RzKCRtb2RlbCwgJ2dldEVycm9yJykpDQoJCXsNCgkJCSRlcnJvcnMgPSAkbW9kZWwtPmdldEVycm9yKCk7DQoJCQlpZiAoIWVtcHR5KCRlcnJvcnMpKQ0KCQkJew0KCQkJCWlmIChpc19hcnJheSgkZXJyb3JzKSkNCgkJCQl7DQoJCQkJCSRlcnJvcl9tZXNzYWdlcyA9ICc8YnI+JyAuIGltcGxvZGUoJzxicj4nLCAkZXJyb3JzKTsNCgkJCQl9DQoJCQkJZWxzZWlmIChpc19zdHJpbmcoJGVycm9ycykpDQoJCQkJew0KCQkJCQkkZXJyb3JfbWVzc2FnZXMgPSAnPGJyPicgLiAkZXJyb3JzOw0KCQkJCX0NCgkJCX0NCgkJfQ0KDQoJCXRocm93IG5ldyBcUnVudGltZUV4Y2VwdGlvbigNCgkJCVRleHQ6OnNwcmludGYoJ1VwZGF0ZSBvZiB1c2VyICVzICglcykgZmFpbGVkISVzJywNCgkJCQkoc3RyaW5nKSAkdXNlckRldGFpbHNbJ3VzZXJuYW1lJ10sDQoJCQkJKHN0cmluZykgJHVzZXJEZXRhaWxzWydlbWFpbCddLA0KCQkJCShzdHJpbmcpICRlcnJvcl9tZXNzYWdlcw0KCQkJKQ0KCQkpOw0KCX0NCg0KCS8qKg0KCSAqIE1ldGhvZCB0byBnZXQgYW4gaW5zdGFuY2Ugb2YgYSB1c2VyIGZvciB0aGUgZ2l2ZW4gaWQuDQoJICoNCgkgKiBAcGFyYW0gICBpbnQgICRpZCAgVGhlIGlkDQoJICoNCgkgKiBAcmV0dXJuICBVc2VyDQoJICoNCgkgKiBAc2luY2UgICA1LjAuMw0KCSAqLw0KCXB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gZ2V0VXNlckJ5SWQoaW50ICRpZCk6IFVzZXINCgl7DQoJCSByZXR1cm4gbmV3IFVzZXIoJGlkKTsNCgl9DQoNCgkvKioNCgkgKiBSZXRyaWV2ZSB0aGUgdXNlciBJRCBieSB1c2VybmFtZS4NCgkgKg0KCSAqIEBwYXJhbSAgIHN0cmluZyAgJHVzZXJuYW1lICBUaGUgdXNlcm5hbWUgdG8gY2hlY2suDQoJICoNCgkgKiBAcmV0dXJuICBpbnR8bnVsbCAgVGhlIHVzZXIgSUQgaWYgdGhlIHVzZXIgZXhpc3RzLCBudWxsIG90aGVyd2lzZS4NCgkgKg0KCSAqIEBzaW5jZSAgIDUuMC4zDQoJICovDQoJcHVibGljIHN0YXRpYyBmdW5jdGlvbiBnZXRVc2VySWRCeVVzZXJuYW1lKHN0cmluZyAkdXNlcm5hbWUpOiA/aW50DQoJew0KCQkkdXNlcklkID0gSm9vbWxhVXNlckhlbHBlcjo6Z2V0VXNlcklkKCR1c2VybmFtZSk7DQoJCXJldHVybiAkdXNlcklkID86IG51bGw7DQoJfQ0KDQoJLyoqDQoJICogUmV0cmlldmUgdGhlIHVzZXIgSUQgYnkgZW1haWwuDQoJICoNCgkgKiBAcGFyYW0gICBzdHJpbmcgICRlbWFpbCAgVGhlIGVtYWlsIGFkZHJlc3MgdG8gY2hlY2suDQoJICoNCgkgKiBAcmV0dXJuICBpbnR8bnVsbCAgVGhlIHVzZXIgSUQgaWYgdGhlIHVzZXIgZXhpc3RzLCBudWxsIG90aGVyd2lzZS4NCgkgKg0KCSAqIEBzaW5jZSAgIDUuMC4zDQoJICovDQoJcHVibGljIHN0YXRpYyBmdW5jdGlvbiBnZXRVc2VySWRCeUVtYWlsKHN0cmluZyAkZW1haWwpOiA/aW50DQoJew0KCQkvLyBJbml0aWFsaXNlIHNvbWUgdmFyaWFibGVzDQoJCSRkYiA9IEZhY3Rvcnk6OmdldERibygpOw0KCQkkcXVlcnkgPSAkZGItPmdldFF1ZXJ5KHRydWUpDQoJCQktPnNlbGVjdCgkZGItPnF1b3RlTmFtZSgnaWQnKSkNCgkJCS0+ZnJvbSgkZGItPnF1b3RlTmFtZSgnI19fdXNlcnMnKSkNCgkJCS0+d2hlcmUoJGRiLT5xdW90ZU5hbWUoJ2VtYWlsJykgLiAnID0gOmVtYWlsJykNCgkJCS0+YmluZCgnOmVtYWlsJywgJGVtYWlsKQ0KCQkJLT5zZXRMaW1pdCgxKTsNCgkJJGRiLT5zZXRRdWVyeSgkcXVlcnkpOw0KDQoJCSR1c2VySWQgPSAkZGItPmxvYWRSZXN1bHQoKTsNCgkJcmV0dXJuICR1c2VySWQgPzogbnVsbDsNCgl9DQoNCgkvKioNCgkgKiBMb2FkIHRoZSBjb3JyZWN0IHVzZXIgbW9kZWwgYmFzZWQgb24gdGhlIHJlZ2lzdHJhdGlvbiBtb2RlLg0KCSAqDQoJICogQHBhcmFtICAgaW50ICAkbW9kZSAgVGhlIHJlZ2lzdHJhdGlvbiBtb2RlLg0KCSAqDQoJICogQHJldHVybiAgQmFzZURhdGFiYXNlTW9kZWwgIFRoZSBhcHByb3ByaWF0ZSB1c2VyIG1vZGVsLg0KCSAqDQoJICogQHNpbmNlICAgNS4wLjMNCgkgKi8NCglwcm90ZWN0ZWQgc3RhdGljIGZ1bmN0aW9uIGdldE1vZGVsQnlNb2RlKGludCAkbW9kZSk6IEJhc2VEYXRhYmFzZU1vZGVsDQoJew0KCQlpZiAoJG1vZGUgPT09IDEpDQoJCXsNCgkJCXJldHVybiBDb21wb25lbnQ6OmdldE1vZGVsKCdSZWdpc3RyYXRpb24nLCAnU2l0ZScsICdjb21fdXNlcnMnKTsNCgkJfQ0KDQoJCXJldHVybiBDb21wb25lbnQ6OmdldE1vZGVsKCdVc2VyJywgJ0FkbWluaXN0cmF0b3InLCAnY29tX3VzZXJzJyk7DQoJfQ0KDQoJLyoqDQoJICogUHJlcGFyZSB1c2VyIGRhdGEgYXJyYXkgZm9yIHJlZ2lzdHJhdGlvbiBvciB1cGRhdGUuDQoJICoNCgkgKiBAcGFyYW0gICBhcnJheSAgJGNyZWRlbnRpYWxzICBVc2VyIGNyZWRlbnRpYWxzLg0KCSAqIEBwYXJhbSAgIGludCAgICAkbW9kZSAgICAgICAgIFRoZSByZWdpc3RyYXRpb24gbW9kZS4NCgkgKg0KCSAqIEByZXR1cm4gIGFycmF5ICBUaGUgcHJlcGFyZWQgdXNlciBkYXRhIGFycmF5Lg0KCSAqDQoJICogQHNpbmNlICAgNS4wLjMNCgkgKi8NCglwcm90ZWN0ZWQgc3RhdGljIGZ1bmN0aW9uIHByZXBhcmVVc2VyRGF0YShhcnJheSAkY3JlZGVudGlhbHMsIGludCAkbW9kZSkNCgl7DQoJCSRkYXRhID0gWw0KCQkJJ3VzZXJuYW1lJyA9PiAkY3JlZGVudGlhbHNbJ3VzZXJuYW1lJ10sDQoJCQknbmFtZScgPT4gJGNyZWRlbnRpYWxzWyduYW1lJ10sDQoJCQknYmxvY2snID0+IDANCgkJXTsNCg0KCQlpZiAoJG1vZGUgPT09IDEpDQoJCXsNCgkJCSRkYXRhWydlbWFpbDEnXSA9ICRjcmVkZW50aWFsc1snZW1haWwnXTsNCgkJfQ0KCQllbHNlDQoJCXsNCgkJCSRkYXRhWydlbWFpbCddID0gJGNyZWRlbnRpYWxzWydlbWFpbCddOw0KCQkJJGRhdGFbJ3JlZ2lzdGVyRGF0ZSddID0gRmFjdG9yeTo6Z2V0RGF0ZSgpLT50b1NxbCgpOw0KCQl9DQoNCgkJaWYgKCRtb2RlID09PSAxICYmIGVtcHR5KCRjcmVkZW50aWFsc1sncGFzc3dvcmQnXSkpDQoJCXsNCgkJCSRjcmVkZW50aWFsc1sncGFzc3dvcmQnXSA9IFN0cmluZ0hlbHBlcjo6cmFuZG9tKDEwKTsNCgkJCSRjcmVkZW50aWFsc1sncGFzc3dvcmQyJ10gPSAkY3JlZGVudGlhbHNbJ3Bhc3N3b3JkJ107DQoJCX0NCg0KCQlpZiAoIWVtcHR5KCRjcmVkZW50aWFsc1sncGFzc3dvcmQnXSkgJiYgIWVtcHR5KCRjcmVkZW50aWFsc1sncGFzc3dvcmQyJ10pKQ0KCQl7DQoJCQkkZGF0YVsncGFzc3dvcmQxJ10gPSAkY3JlZGVudGlhbHNbJ3Bhc3N3b3JkJ107DQoJCQkkZGF0YVsncGFzc3dvcmQyJ10gPSAkY3JlZGVudGlhbHNbJ3Bhc3N3b3JkMiddOw0KCQl9DQoNCgkJaWYgKCRtb2RlID09PSAwICYmIGlzc2V0KCRjcmVkZW50aWFsc1snZ3JvdXBzJ10pICYmIEFycmF5SGVscGVyOjpjaGVjaygkY3JlZGVudGlhbHNbJ2dyb3VwcyddKSkNCgkJew0KCQkJJGRhdGFbJ2dyb3VwcyddID0gJGNyZWRlbnRpYWxzWydncm91cHMnXTsNCgkJfQ0KDQoJCXJldHVybiAkZGF0YTsNCgl9DQoNCgkvKioNCgkgKiBIYW5kbGUgdGhlIHJlZ2lzdHJhdGlvbiBwcm9jZXNzIGZvciBhZG1pbiBtb2RlLg0KCSAqDQoJICogQHBhcmFtICAgQmFzZURhdGFiYXNlTW9kZWwgICRtb2RlbCAgVGhlIHVzZXIgbW9kZWwuDQoJICogQHBhcmFtICAgYXJyYXkgICAgICAgICAgICAgICRkYXRhICAgVGhlIHVzZXIgZGF0YS4NCgkgKg0KCSAqIEByZXR1cm4gIGludCAgVGhlIElEIG9mIHRoZSBjcmVhdGVkIHVzZXIuDQoJICoNCgkgKiBAc2luY2UgICA1LjAuMw0KCSAqLw0KCXByaXZhdGUgc3RhdGljIGZ1bmN0aW9uIGFkbWluUmVnaXN0ZXIoQmFzZURhdGFiYXNlTW9kZWwgJG1vZGVsLCBhcnJheSAkZGF0YSk6IGludA0KCXsNCgkJJG1vZGVsLT5zYXZlKCRkYXRhKTsNCg0KCQlyZXR1cm4gJG1vZGVsLT5nZXRTdGF0ZSgndXNlci5pZCcsIDApOw0KCX0NCg0KCS8qKg0KCSAqIEhhbmRsZSBwb3N0LXJlZ2lzdHJhdGlvbiBwcm9jZXNzZXMgbGlrZSBhdXRvLWxvZ2luLg0KCSAqDQoJICogQHBhcmFtICAgaW50ICAgICR1c2VySWQgICAgICBUaGUgSUQgb2YgdGhlIGNyZWF0ZWQgdXNlci4NCgkgKiBAcGFyYW0gICBpbnQgICAgJGF1dG9sb2dpbiAgIEZsYWcgdG8gZGV0ZXJtaW5lIHdoZXRoZXIgdG8gYXV0by1sb2dpbiB0aGUgdXNlci4NCgkgKiBAcGFyYW0gICBhcnJheSAgJGNyZWRlbnRpYWxzIFRoZSB1c2VyIGNyZWRlbnRpYWxzLg0KCSAqDQoJICogQHJldHVybiAgaW50IFRoZSB1c2VyIElEIG9uIHN1Y2Nlc3MuDQoJICoNCgkgKiBAc2luY2UgICA1LjAuMw0KCSAqLw0KCXByaXZhdGUgc3RhdGljIGZ1bmN0aW9uIGhhbmRsZVBvc3RSZWdpc3RyYXRpb24oaW50ICR1c2VySWQsIGludCAkYXV0b2xvZ2luLCBhcnJheSAkY3JlZGVudGlhbHMpOiBpbnQNCgl7DQoJCS8vIG1ha2Ugc3VyZSB1c2VyIGlzIGl0IHRoZSBjb3JyZWN0IGdyb3Vwcw0KCQlpZiAoJHVzZXJJZCA+IDAgJiYgIWVtcHR5KCRjcmVkZW50aWFsc1snZ3JvdXBzJ10pKQ0KCQl7DQoJCQl0cnkNCgkJCXsNCgkJCQlKb29tbGFVc2VySGVscGVyOjpzZXRVc2VyR3JvdXBzKCR1c2VySWQsICRjcmVkZW50aWFsc1snZ3JvdXBzJ10pOw0KCQkJfQ0KCQkJY2F0Y2ggKFxFeGNlcHRpb24gJGUpDQoJCQl7DQoJCQkJLy8gd2UgbWlnaHQgbmVlZCBzYXkgc29tZXRoaW5nDQoJCQl9DQoJCX0NCg0KCQlpZiAoJGF1dG9sb2dpbiAmJiAhZW1wdHkoJGNyZWRlbnRpYWxzWydwYXNzd29yZCddKSkNCgkJew0KCQkJdHJ5DQoJCQl7DQoJCQkJRmFjdG9yeTo6Z2V0QXBwbGljYXRpb24oKS0+bG9naW4oJGNyZWRlbnRpYWxzKTsNCgkJCX0NCgkJCWNhdGNoIChcRXhjZXB0aW9uICRlKQ0KCQkJew0KCQkJCS8vIHdlIG1pZ2h0IG5lZWQgdG8gcmVkaXJlY3QgaGVyZT8NCgkJCX0NCgkJfQ0KDQoJCXJldHVybiAkdXNlcklkOw0KCX0NCg0KCS8qKg0KCSAqIEFkZHJlc3MgYnVnIG9uIFxKb29tbGFcQ01TXE1WQ1xNb2RlbFxGb3JtQmVoYXZpb3JUcmFpdCBMaW5lIDc2DQoJICogICBUaGUgdXNlIG9mIEpQQVRIX0NPTVBPTkVOVCBjYXVzZSBpdCB0byBsb2FkIHRoZQ0KCSAqICAgYWN0aXZlIGNvbXBvbmVudCBmb3JtcyBhbmQgZmllbGRzLCB3aGljaCBicmVha3MgdGhlIHJlZ2lzdHJhdGlvbiBtb2RlbC4NCgkgKg0KCSAqIEBwYXJhbSBpbnQgICRtb2RlDQoJICoNCgkgKiBAc2luY2UgNS4wLjMNCgkgKi8NCglwcml2YXRlIHN0YXRpYyBmdW5jdGlvbiBzZXRGb3JtUGF0aEZvclVzZXJDbGFzcyhpbnQgJG1vZGUpOiB2b2lkDQoJew0KCQlpZiAoJG1vZGUgPT0gMSkgLy8gMSA9IHVzZSBvZiB0aGUgUmVnaXN0cmF0aW9uIE1vZGVsDQoJCXsNCgkJCS8vIEdldCB0aGUgZm9ybS4NCgkJCUZvcm06OmFkZEZvcm1QYXRoKEpQQVRIX1JPT1QgLiAnL2NvbXBvbmVudHMvY29tX3VzZXJzL2Zvcm1zJyk7DQoJCX0NCgl9', '{}', '{}', '', 1, '2024-08-29 15:27:21', 45, '', 1), +(822, '46b98346-ec98-42b3-a393-96c7d1282b1c', 'VDM.Data.UsersSubform', 'UsersSubform', 'final class', 'CRUD the user data of any sub-form to another view (table)\r\n\r\n@since 5.0.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIwDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '{\"0\":\"576685fd-263c-46bb-9fdc-1f5eb234cbb6\",\"1\":\"34959721-415b-4b5e-8002-3d1fc84b3b2b\"}', '', '[[[NamespacePrefix]]]\\Joomla\\Data.UsersSubform', 1, '{}', '{}', 'dXNlIEpvb21sYVxDTVNcRmFjdG9yeTsNCnVzZSBKb29tbGFcQ01TXFVzZXJcVXNlcjs=', '{\"use_selection0\":{\"use\":\"7212e4db-371f-4cfd-8122-32e9bb100d83\",\"as\":\"Items\"},\"use_selection1\":{\"use\":\"5acded67-0e3d-4c6b-a6ea-b533b076de0c\",\"as\":\"default\"},\"use_selection2\":{\"use\":\"7832a726-87b6-4e95-887e-7b725d3fab8f\",\"as\":\"default\"},\"use_selection3\":{\"use\":\"1c10a5f1-204d-4f17-ad9f-0e0684f2030d\",\"as\":\"default\"},\"use_selection4\":{\"use\":\"640b5352-fb09-425f-a26e-cd44eda03f15\",\"as\":\"Component\"}}', 'CS8qKg0KCSAqIFRoZSBHbG9iYWxseSBVbmlxdWUgSWRlbnRpZmllci4NCgkgKg0KCSAqIEBzaW5jZSA1LjAuMg0KCSAqLw0KCXVzZSBHdWlkOw0KDQoJLyoqDQoJICogVGhlIEl0ZW1zIENsYXNzLg0KCSAqDQoJICogQHZhciAgIEl0ZW1zDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHJvdGVjdGVkIEl0ZW1zICRpdGVtczsNCg0KCS8qKg0KCSAqIFRhYmxlIE5hbWUNCgkgKg0KCSAqIEB2YXIgICAgc3RyaW5nDQoJICogQHNpbmNlIDMuMi4xDQoJICovDQoJcHJvdGVjdGVkIHN0cmluZyAkdGFibGU7DQoNCgkvKioNCgkgKiBUaGUgdXNlciBwcm9wZXJ0aWVzDQoJICoNCgkgKiBAdmFyICAgIGFycmF5DQoJICogQHNpbmNlIDUuMC4yDQoJICovDQoJcHJvdGVjdGVkIGFycmF5ICR1c2VyOw0KDQoJLyoqDQoJICogVGhlIGN1cnJlbnQgYWN0aXZlIHVzZXINCgkgKg0KCSAqIEB2YXIgICAgVXNlcg0KCSAqIEBzaW5jZSA1LjAuMg0KCSAqLw0KCXByb3RlY3RlZCBVc2VyICRpZGVudGl0eTsNCg0KCS8qKg0KCSAqIFRoZSBhY3RpdmUgdXNlcnMNCgkgKg0KCSAqIEB2YXIgICAgYXJyYXkNCgkgKiBAc2luY2UgNS4wLjINCgkgKi8NCglwcm90ZWN0ZWQgYXJyYXkgJGFjdGl2ZVVzZXJzID0gW107DQoNCgkvKioNCgkgKiBDb25zdHJ1Y3Rvci4NCgkgKg0KCSAqIEBwYXJhbSBJdGVtcyAgICAgICAkaXRlbXMgICBUaGUgaXRlbXMgQ2xhc3MuDQoJICogQHBhcmFtIHN0cmluZ3xudWxsICR0YWJsZSAgIFRoZSB0YWJsZSBuYW1lLg0KCSAqDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KEl0ZW1zICRpdGVtcywgP3N0cmluZyAkdGFibGUgPSBudWxsKQ0KCXsNCgkJJHRoaXMtPml0ZW1zID0gJGl0ZW1zOw0KCQlpZiAoJHRhYmxlICE9PSBudWxsKQ0KCQl7DQoJCQkkdGhpcy0+dGFibGUgPSAkdGFibGU7DQoJCX0NCg0KCQkkdGhpcy0+aWRlbnRpdHkgPSBGYWN0b3J5OjpnZXRBcHBsaWNhdGlvbigpLT5nZXRJZGVudGl0eSgpOw0KDQoJCS8vIFJldHJpZXZlIHRoZSB1c2VyIHByb3BlcnRpZXMNCgkJJHRoaXMtPmluaXRpYWxpemVVc2VyUHJvcGVydGllcygpOw0KCX0NCg0KCS8qKg0KCSAqIFNldCB0aGUgY3VycmVudCBhY3RpdmUgdGFibGUNCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmcgJHRhYmxlIFRoZSB0YWJsZSB0aGF0IHNob3VsZCBiZSBhY3RpdmUNCgkgKg0KCSAqIEByZXR1cm4gc2VsZg0KCSAqIEBzaW5jZSAgMy4yLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gdGFibGUoc3RyaW5nICR0YWJsZSk6IHNlbGYNCgl7DQoJCSR0aGlzLT50YWJsZSA9ICR0YWJsZTsNCg0KCQlyZXR1cm4gJHRoaXM7DQoJfQ0KDQoJLyoqDQoJICogR2V0IGEgc3ViZm9ybSBpdGVtcw0KCSAqDQoJICogQHBhcmFtIHN0cmluZyAgICRsaW5rVmFsdWUgIFRoZSB2YWx1ZSBvZiB0aGUgbGluayBrZXkgaW4gY2hpbGQgdGFibGUuDQoJICogQHBhcmFtIHN0cmluZyAgICRsaW5rS2V5ICAgIFRoZSBsaW5rIGtleSBvbiB3aGljaCB0aGUgaXRlbXMgd2hlcmUgbGlua2VkIGluIHRoZSBjaGlsZCB0YWJsZS4NCgkgKiBAcGFyYW0gc3RyaW5nICAgJGZpZWxkICAgICAgVGhlIHBhcmVudCBmaWVsZCBuYW1lIG9mIHRoZSBzdWJmb3JtIGluIHRoZSBwYXJlbnQgdmlldy4NCgkgKiBAcGFyYW0gYXJyYXkgICAgJGdldCAgICAgICAgVGhlIGFycmF5IGdldDpzZXQgb2YgdGhlIGtleXMgb2YgZWFjaCByb3cgaW4gdGhlIHN1YmZvcm0uDQoJICogQHBhcmFtIGJvb2wgICAgICRtdWx0aSAgICAgIFRoZSBzd2l0Y2ggdG8gcmV0dXJuIGEgbXVsdGlwbGUgc2V0Lg0KCSAqDQoJICogQHJldHVybiBhcnJheXxudWxsICAgVGhlIHN1YmZvcm0NCgkgKiBAc2luY2UgIDMuMi4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGdldChzdHJpbmcgJGxpbmtWYWx1ZSwgc3RyaW5nICRsaW5rS2V5LCBzdHJpbmcgJGZpZWxkLCBhcnJheSAkZ2V0LCBib29sICRtdWx0aSA9IHRydWUpOiA/YXJyYXkNCgl7DQoJCWlmICgoJGl0ZW1zID0gJHRoaXMtPml0ZW1zLT50YWJsZSgkdGhpcy0+Z2V0VGFibGUoKSktPmdldChbJGxpbmtWYWx1ZV0sICRsaW5rS2V5KSkgIT09IG51bGwpDQoJCXsNCgkJCXJldHVybiAkdGhpcy0+Y29udmVydGVyKA0KCQkJCSR0aGlzLT5nZXRVc2Vyc0RldGFpbHMoJGl0ZW1zKSwNCgkJCQkkZ2V0LA0KCQkJCSRmaWVsZCwNCgkJCQkkbXVsdGkNCgkJCSk7DQoJCX0NCg0KCQlyZXR1cm4gbnVsbDsNCgl9DQoNCgkvKioNCgkgKiBTZXQgYSBzdWJmb3JtIGl0ZW1zDQoJICoNCgkgKiBAcGFyYW0gbWl4ZWQgICAgJGl0ZW1zICAgICAgVGhlIGxpc3Qgb2YgaXRlbXMgZnJvbSB0aGUgc3ViZm9ybSB0byBzZXQNCgkgKiBAcGFyYW0gc3RyaW5nICAgJGluZGV4S2V5ICAgVGhlIGluZGV4IGtleSBvbiB3aGljaCB0aGUgaXRlbXMgc2hvdWxkIGJlIG9ic2VydmVkIGFzIGl0IHJlbGF0ZXMgdG8gaW5zZXJ0L3VwZGF0ZS9kZWxldGUuDQoJICogQHBhcmFtIHN0cmluZyAgICRsaW5rS2V5ICAgIFRoZSBsaW5rIGtleSBvbiB3aGljaCB0aGUgaXRlbXMgd2hlcmUgbGlua2VkIGluIHRoZSBjaGlsZCB0YWJsZS4NCgkgKiBAcGFyYW0gc3RyaW5nICAgJGxpbmtWYWx1ZSAgVGhlIHZhbHVlIG9mIHRoZSBsaW5rIGtleSBpbiBjaGlsZCB0YWJsZS4NCgkgKg0KCSAqIEByZXR1cm4gYm9vbA0KCSAqIEBzaW5jZSAgMy4yLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gc2V0KG1peGVkICRpdGVtcywgc3RyaW5nICRpbmRleEtleSwgc3RyaW5nICRsaW5rS2V5LCBzdHJpbmcgJGxpbmtWYWx1ZSk6IGJvb2wNCgl7DQoJCSRpdGVtcyA9ICR0aGlzLT5wcm9jZXNzKCRpdGVtcywgJGluZGV4S2V5LCAkbGlua0tleSwgJGxpbmtWYWx1ZSk7DQoNCgkJJHRoaXMtPnB1cmdlKCRpdGVtcywgJGluZGV4S2V5LCAkbGlua0tleSwgJGxpbmtWYWx1ZSk7DQoNCgkJaWYgKGVtcHR5KCRpdGVtcykpDQoJCXsNCgkJCXJldHVybiB0cnVlOyAvLyBub3RoaW5nIHRvIHNldCAoYWxyZWFkeSBwdXJnZWQpDQoJCX0NCg0KCQlyZXR1cm4gJHRoaXMtPml0ZW1zLT50YWJsZSgkdGhpcy0+Z2V0VGFibGUoKSktPnNldCgNCgkJCSRpdGVtcywgJGluZGV4S2V5DQoJCSk7DQoJfQ0KDQoJLyoqDQoJICogR2V0IHRoZSBjdXJyZW50IGFjdGl2ZSB0YWJsZQ0KCSAqDQoJICogQHJldHVybiAgc3RyaW5nDQoJICogQHNpbmNlICAgMy4yLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZ2V0VGFibGUoKTogc3RyaW5nDQoJew0KCQlyZXR1cm4gJHRoaXMtPnRhYmxlOw0KCX0NCg0KCS8qKg0KCSAqIEluaXRpYWxpemVzIHRoZSB1c2VyIHByb3BlcnRpZXMuDQoJICoNCgkgKiBAcmV0dXJuIHZvaWQNCgkgKiBAc2luY2UgIDUuMC4yDQoJICovDQoJcHJpdmF0ZSBmdW5jdGlvbiBpbml0aWFsaXplVXNlclByb3BlcnRpZXMoKTogdm9pZA0KCXsNCgkJJHVzZXIgPSBVc2VySGVscGVyOjpnZXRVc2VyQnlJZCgwKTsNCg0KCQkvLyBQb3B1bGF0ZSB1c2VyIHByb3BlcnRpZXMgYXJyYXkgZXhjbHVkaW5nIHRoZSAnaWQnDQoJCWZvcmVhY2ggKGdldF9vYmplY3RfdmFycygkdXNlcikgYXMgJHByb3BlcnR5ID0+ICR2YWx1ZSkNCgkJew0KCQkJaWYgKCRwcm9wZXJ0eSAhPT0gJ2lkJykNCgkJCXsNCgkJCQkkdGhpcy0+dXNlclskcHJvcGVydHldID0gJHByb3BlcnR5Ow0KCQkJfQ0KCQl9DQoJCSR0aGlzLT51c2VyWydwYXNzd29yZDInXSA9ICdwYXNzd29yZDInOw0KCX0NCg0KCS8qKg0KCSAqIFB1cmdlIGFsbCBpdGVtcyBubyBsb25nZXIgaW4gc3ViZm9ybQ0KCSAqDQoJICogQHBhcmFtIGFycmF5ICAgICRpdGVtcyAgICAgIFRoZSBsaXN0IG9mIGl0ZW1zIHRvIHNldC4NCgkgKiBAcGFyYW0gc3RyaW5nICAgJGluZGV4S2V5ICAgVGhlIGluZGV4IGtleSBvbiB3aGljaCB0aGUgaXRlbXMgc2hvdWxkIGJlIG9ic2VydmVkIGFzIGl0IHJlbGF0ZXMgdG8gaW5zZXJ0L3VwZGF0ZS9kZWxldGUNCgkgKiBAcGFyYW0gc3RyaW5nICAgJGxpbmtLZXkgICAgVGhlIGxpbmsga2V5IG9uIHdoaWNoIHRoZSBpdGVtcyB3aGVyZSBsaW5rZWQgaW4gdGhlIGNoaWxkIHRhYmxlLg0KCSAqIEBwYXJhbSBzdHJpbmcgICAkbGlua1ZhbHVlICBUaGUgdmFsdWUgb2YgdGhlIGxpbmsga2V5IGluIGNoaWxkIHRhYmxlLg0KCSAqDQoJICogQHJldHVybiB2b2lkDQoJICogQHNpbmNlICAzLjIuMg0KCSAqLw0KCXByaXZhdGUgZnVuY3Rpb24gcHVyZ2UoYXJyYXkgJGl0ZW1zLCBzdHJpbmcgJGluZGV4S2V5LCBzdHJpbmcgJGxpbmtLZXksIHN0cmluZyAkbGlua1ZhbHVlKTogdm9pZA0KCXsNCgkJLy8gR2V0IHRoZSBjdXJyZW50IGluZGV4IHZhbHVlcyBmcm9tIHRoZSBkYXRhYmFzZQ0KCQkkY3VycmVudEluZGV4VmFsdWVzID0gJHRoaXMtPml0ZW1zLT50YWJsZSgkdGhpcy0+Z2V0VGFibGUoKSktPnZhbHVlcyhbJGxpbmtWYWx1ZV0sICRsaW5rS2V5LCAkaW5kZXhLZXkpOw0KDQoJCWlmICgkY3VycmVudEluZGV4VmFsdWVzICE9PSBudWxsKQ0KCQl7DQoJCQkvLyBDaGVjayBpZiB0aGUgaXRlbXMgYXJyYXkgaXMgZW1wdHkNCgkJCWlmIChlbXB0eSgkaXRlbXMpKQ0KCQkJew0KCQkJCS8vIFNldCBhY3RpdmVJbmRleFZhbHVlcyB0byBhbiBlbXB0eSBhcnJheSBpZiBpdGVtcyBpcyBlbXB0eQ0KCQkJCSRhY3RpdmVJbmRleFZhbHVlcyA9IFtdOw0KCQkJfQ0KCQkJZWxzZQ0KCQkJew0KCQkJCS8vIEV4dHJhY3QgdGhlIGluZGV4IHZhbHVlcyBmcm9tIHRoZSBpdGVtcyBhcnJheQ0KCQkJCSRhY3RpdmVJbmRleFZhbHVlcyA9IGFycmF5X3ZhbHVlcyhhcnJheV9tYXAoZnVuY3Rpb24oJGl0ZW0pIHVzZSAoJGluZGV4S2V5KSB7DQoJCQkJCXJldHVybiAkaXRlbVskaW5kZXhLZXldID8/IG51bGw7DQoJCQkJfSwgJGl0ZW1zKSk7DQoJCQl9DQoNCgkJCS8vIEZpbmQgdGhlIGluZGV4IHZhbHVlcyB0aGF0IGFyZSBubyBsb25nZXIgaW4gdGhlIGl0ZW1zIGFycmF5DQoJCQkkaW5hY3RpdmVJbmRleFZhbHVlcyA9IGFycmF5X2RpZmYoJGN1cnJlbnRJbmRleFZhbHVlcywgJGFjdGl2ZUluZGV4VmFsdWVzKTsNCg0KCQkJLy8gRGVsZXRlIHRoZSBpbmFjdGl2ZSBpbmRleCB2YWx1ZXMNCgkJCWlmICghZW1wdHkoJGluYWN0aXZlSW5kZXhWYWx1ZXMpKQ0KCQkJew0KCQkJCSR0aGlzLT5pdGVtcy0+dGFibGUoJHRoaXMtPmdldFRhYmxlKCkpLT5kZWxldGUoJGluYWN0aXZlSW5kZXhWYWx1ZXMsICRpbmRleEtleSk7DQoNCgkJCQkvLyAkdGhpcy0+ZGVsZXRlVXNlcnMoJGluYWN0aXZlSW5kZXhWYWx1ZXMpOyAoc29vbikNCgkJCX0NCgkJfQ0KCX0NCg0KCS8qKg0KCSAqIEdldCB0aGUgdXNlcnMgZGV0YWlscyBmb3VuZCBpbiB0aGUgdXNlciB0YWJsZS4NCgkgKg0KCSAqIEBwYXJhbSBhcnJheSAgJGl0ZW1zICBBcnJheSBvZiBvYmplY3RzIG9yIGFycmF5cyB0byBiZSBmaWx0ZXJlZC4NCgkgKg0KCSAqIEByZXR1cm4gYXJyYXkNCgkgKiBAc2luY2UgIDUuMC4yDQoJICovDQoJcHJpdmF0ZSBmdW5jdGlvbiBnZXRVc2Vyc0RldGFpbHMoYXJyYXkgJGl0ZW1zKTogYXJyYXkNCgl7DQoJCWZvcmVhY2ggKCRpdGVtcyBhcyAkaW5kZXggPT4gJiRpdGVtKQ0KCQl7DQoJCQkkaXRlbSA9IChhcnJheSkgJGl0ZW07DQoJCQkkdGhpcy0+Z2V0VXNlckRldGFpbHMoJGl0ZW0pOw0KCQl9DQoNCgkJcmV0dXJuICRpdGVtczsNCgl9DQoNCgkvKioNCgkgKiBHZXQgdGhlIHVzZXIgZGV0YWlscyBmb3VuZCBpbiB0aGUgdXNlciB0YWJsZS4NCgkgKg0KCSAqIEBwYXJhbSBhcnJheSAgJGl0ZW0gIFRoZSB1c2VyIG1hcCBhcnJheQ0KCSAqDQoJICogQHJldHVybiB2b2lkDQoJICogQHNpbmNlICA1LjAuMg0KCSAqLw0KCXByaXZhdGUgZnVuY3Rpb24gZ2V0VXNlckRldGFpbHMoYXJyYXkgJiRpdGVtKTogdm9pZA0KCXsNCgkJLy8gVmFsaWRhdGUgdGhlIHVzZXJfaWQgYW5kIGVuc3VyZSBpdCBpcyBudW1lcmljIGFuZCBncmVhdGVyIHRoYW4gMA0KCQlpZiAoZW1wdHkoJGl0ZW1bJ3VzZXJfaWQnXSkgfHwgIWlzX251bWVyaWMoJGl0ZW1bJ3VzZXJfaWQnXSkgfHwgJGl0ZW1bJ3VzZXJfaWQnXSA8PSAwKQ0KCQl7DQoJCQlyZXR1cm47DQoJCX0NCg0KCQkvLyBSZXRyaWV2ZSB0aGUgdXNlciBieSBJRA0KCQkkdXNlciA9IFVzZXJIZWxwZXI6OmdldFVzZXJCeUlkKChpbnQpJGl0ZW1bJ3VzZXJfaWQnXSk7DQoNCgkJLy8gVmVyaWZ5IGlmIHRoZSB1c2VyIGV4aXN0cyBhbmQgdGhlIElEIG1hdGNoZXMNCgkJaWYgKCR1c2VyICYmICR1c2VyLT5pZCA9PT0gKGludCkgJGl0ZW1bJ3VzZXJfaWQnXSkNCgkJew0KCQkJLy8gSXRlcmF0ZSBvdmVyIHB1YmxpYyBwcm9wZXJ0aWVzIG9mIHRoZSB1c2VyIG9iamVjdA0KCQkJZm9yZWFjaCAoZ2V0X29iamVjdF92YXJzKCR1c2VyKSBhcyAkcHJvcGVydHkgPT4gJHZhbHVlKQ0KCQkJew0KCQkJCS8vIEF2b2lkIG92ZXJ3cml0aW5nIHRoZSBpZCBpbiB0aGUgaXRlbQ0KCQkJCWlmICgkcHJvcGVydHkgIT09ICdpZCcpDQoJCQkJew0KCQkJCQkkaXRlbVskcHJvcGVydHldID0gJHZhbHVlOw0KCQkJCX0NCgkJCX0NCgkJfQ0KCX0NCg0KCS8qKg0KCSAqIEZpbHRlcnMgdGhlIHNwZWNpZmllZCBrZXlzIGZyb20gYW4gYXJyYXkgb2Ygb2JqZWN0cyBvciBhcnJheXMsIGNvbnZlcnRzIHRoZW0gdG8gYXJyYXlzLA0KCSAqIGFuZCBzZXRzIHRoZW0gYnkgYXNzb2NpYXRpb24gd2l0aCBhIHNwZWNpZmllZCBrZXkgYW5kIGFuIGluY3JlbWVudGluZyBpbnRlZ2VyLg0KCSAqDQoJICogQHBhcmFtIGFycmF5ICAkaXRlbXMgIEFycmF5IG9mIG9iamVjdHMgb3IgYXJyYXlzIHRvIGJlIGZpbHRlcmVkLg0KCSAqIEBwYXJhbSBhcnJheSAgJGtleVNldCBBcnJheSBvZiBrZXlzIHRvIHJldGFpbiBpbiBlYWNoIGl0ZW0uDQoJICogQHBhcmFtIHN0cmluZyAkZmllbGQgIFRoZSBmaWVsZCBwcmVmaXggZm9yIHRoZSByZXN1bHRpbmcgYXNzb2NpYXRpdmUgYXJyYXkuDQoJICogQHBhcmFtIGJvb2wgICAkbXVsdGkgIFRoZSBzd2l0Y2ggdG8gcmV0dXJuIGEgbXVsdGlwbGUgc2V0Lg0KCSAqDQoJICogQHJldHVybiBhcnJheSBBcnJheSBvZiBmaWx0ZXJlZCBhcnJheXMgc2V0IGJ5IGFzc29jaWF0aW9uLg0KCSAqIEBzaW5jZSAgMy4yLjINCgkgKi8NCglwcml2YXRlIGZ1bmN0aW9uIGNvbnZlcnRlcihhcnJheSAkaXRlbXMsIGFycmF5ICRrZXlTZXQsIHN0cmluZyAkZmllbGQsIGJvb2wgJG11bHRpKTogYXJyYXkNCgl7DQoJCS8qKg0KCQkgKiBGaWx0ZXJzIGtleXMgZm9yIGEgc2luZ2xlIGl0ZW0gYW5kIGNvbnZlcnRzIGl0IHRvIGFuIGFycmF5Lg0KCQkgKg0KCQkgKiBAcGFyYW0gb2JqZWN0fGFycmF5ICRpdGVtICAgVGhlIGl0ZW0gdG8gZmlsdGVyLg0KCQkgKiBAcGFyYW0gYXJyYXkgICAgICAgICRrZXlTZXQgVGhlIGtleXMgdG8gcmV0YWluLg0KCQkgKg0KCQkgKiBAcmV0dXJuIGFycmF5IFRoZSBmaWx0ZXJlZCBhcnJheS4NCgkJICogQHNpbmNlIDMuMi4yDQoJCSAqLw0KCQkkZmlsdGVyS2V5cyA9IGZ1bmN0aW9uICgkaXRlbSwgYXJyYXkgJGtleVNldCkgew0KCQkJJGZpbHRlcmVkQXJyYXkgPSBbXTsNCgkJCWZvcmVhY2ggKCRrZXlTZXQgYXMgJGtleSkgew0KCQkJCWlmIChpc19vYmplY3QoJGl0ZW0pICYmIHByb3BlcnR5X2V4aXN0cygkaXRlbSwgJGtleSkpIHsNCgkJCQkJJGZpbHRlcmVkQXJyYXlbJGtleV0gPSAkaXRlbS0+eyRrZXl9Ow0KCQkJCX0gZWxzZWlmIChpc19hcnJheSgkaXRlbSkgJiYgYXJyYXlfa2V5X2V4aXN0cygka2V5LCAkaXRlbSkpIHsNCgkJCQkJJGZpbHRlcmVkQXJyYXlbJGtleV0gPSAkaXRlbVska2V5XTsNCgkJCQl9DQoJCQl9DQoJCQlyZXR1cm4gJGZpbHRlcmVkQXJyYXk7DQoJCX07DQoNCgkJJHJlc3VsdCA9IFtdOw0KCQlmb3JlYWNoICgkaXRlbXMgYXMgJGluZGV4ID0+ICRpdGVtKQ0KCQl7DQoJCQlpZiAoISRtdWx0aSkNCgkJCXsNCgkJCQlyZXR1cm4gJGZpbHRlcktleXMoJGl0ZW0sICRrZXlTZXQpOw0KCQkJfQ0KCQkJJGZpbHRlcmVkQXJyYXkgPSAkZmlsdGVyS2V5cygkaXRlbSwgJGtleVNldCk7DQoJCQkkcmVzdWx0WyRmaWVsZCAuICRpbmRleF0gPSAkZmlsdGVyZWRBcnJheTsNCgkJfQ0KDQoJCXJldHVybiAkcmVzdWx0Ow0KCX0NCg0KCS8qKg0KCSAqIFByb2Nlc3NlcyBhbiBhcnJheSBvZiBhcnJheXMgYmFzZWQgb24gdGhlIHNwZWNpZmllZCBrZXkuDQoJICoNCgkgKiBAcGFyYW0gbWl4ZWQgICAgJGl0ZW1zICAgICAgQXJyYXkgb2YgYXJyYXlzIHRvIGJlIHByb2Nlc3NlZC4NCgkgKiBAcGFyYW0gc3RyaW5nICAgJGluZGV4S2V5ICAgVGhlIGluZGV4IGtleSBvbiB3aGljaCB0aGUgaXRlbXMgc2hvdWxkIGJlIG9ic2VydmVkIGFzIGl0IHJlbGF0ZXMgdG8gaW5zZXJ0L3VwZGF0ZS9kZWxldGUNCgkgKiBAcGFyYW0gc3RyaW5nICAgJGxpbmtLZXkgICAgVGhlIGxpbmsga2V5IG9uIHdoaWNoIHRoZSBpdGVtcyB3aGVyZSBsaW5rZWQgaW4gdGhlIGNoaWxkIHRhYmxlLg0KCSAqIEBwYXJhbSBzdHJpbmcgICAkbGlua1ZhbHVlICBUaGUgdmFsdWUgb2YgdGhlIGxpbmsga2V5IGluIGNoaWxkIHRhYmxlLg0KCSAqDQoJICogQHJldHVybiBhcnJheSAgVGhlIHByb2Nlc3NlZCBhcnJheSBvZiBhcnJheXMuDQoJICogQHNpbmNlICAzLjIuMg0KCSAqLw0KCXByaXZhdGUgZnVuY3Rpb24gcHJvY2VzcygkaXRlbXMsIHN0cmluZyAkaW5kZXhLZXksIHN0cmluZyAkbGlua0tleSwgc3RyaW5nICRsaW5rVmFsdWUpOiBhcnJheQ0KCXsNCgkJJGl0ZW1zID0gaXNfYXJyYXkoJGl0ZW1zKSA/ICRpdGVtcyA6IFtdOw0KCQlpZiAoJGl0ZW1zICE9PSBbXSAmJiAhJHRoaXMtPmlzTXVsdGlwbGVTZXRzKCRpdGVtcykpDQoJCXsNCgkJCSRpdGVtcyA9IFskaXRlbXNdOw0KCQl9DQoNCgkJZm9yZWFjaCAoJGl0ZW1zIGFzICRuID0+ICYkaXRlbSkNCgkJew0KCQkJJHZhbHVlID0gJGl0ZW1bJGluZGV4S2V5XSA/PyAnJzsNCgkJCXN3aXRjaCAoJGluZGV4S2V5KSB7DQoJCQkJY2FzZSAnZ3VpZCc6DQoJCQkJCWlmIChlbXB0eSgkdmFsdWUpKQ0KCQkJCQl7DQoJCQkJCQkvLyBzZXQgSU5ERVgNCgkJCQkJCSRpdGVtWyRpbmRleEtleV0gPSAkdGhpcy0+Z2V0R3VpZCgkaW5kZXhLZXkpOw0KCQkJCQl9DQoJCQkJCWJyZWFrOw0KCQkJCWNhc2UgJ2lkJzoNCgkJCQkJaWYgKGVtcHR5KCR2YWx1ZSkpDQoJCQkJCXsNCgkJCQkJCSRpdGVtWyRpbmRleEtleV0gPSAwOw0KCQkJCQl9DQoJCQkJCWJyZWFrOw0KCQkJCWRlZmF1bHQ6DQoJCQkJCS8vIE5vIGFjdGlvbiBmb3Igb3RoZXIga2V5cyBpZiBlbXB0eQ0KCQkJCQlicmVhazsNCgkJCX0NCg0KCQkJLy8gc2V0IExJTksNCgkJCSRpdGVtWyRsaW5rS2V5XSA9ICRsaW5rVmFsdWU7DQoNCgkJCS8vIGNyZWF0ZS91cGRhdGUgdXNlcg0KCQkJJGl0ZW1bJ3VzZXJfaWQnXSA9ICR0aGlzLT5zZXRVc2VyRGV0YWlscygNCgkJCQkkaXRlbSwNCgkJCQkkdGhpcy0+Z2V0QWN0aXZlVXNlcnMoDQoJCQkJCSRsaW5rS2V5LA0KCQkJCQkkbGlua1ZhbHVlDQoJCQkJKQ0KCQkJKTsNCg0KCQkJLy8gcmVtb3ZlIGVtcHR5IHJvdyAobWVhbnMgbm8gdXNlciBsaW5rZWQpDQoJCQlpZiAoJGl0ZW1bJ3VzZXJfaWQnXSA9PSAwKQ0KCQkJew0KCQkJCXVuc2V0KCRpdGVtc1skbl0pOw0KCQkJfQ0KCQl9DQoNCgkJcmV0dXJuIGFycmF5X3ZhbHVlcygkaXRlbXMpOw0KCX0NCg0KCS8qKg0KCSAqIEdldCBjdXJyZW50IGFjdGl2ZSBVc2VycyBMaW5rZWQgdG8gdGhpcyBlbnRpdHkNCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmcgICAkbGlua0tleSAgICBUaGUgbGluayBrZXkgb24gd2hpY2ggdGhlIGl0ZW1zIHdoZXJlIGxpbmtlZCBpbiB0aGUgY2hpbGQgdGFibGUuDQoJICogQHBhcmFtIHN0cmluZyAgICRsaW5rVmFsdWUgIFRoZSB2YWx1ZSBvZiB0aGUgbGluayBrZXkgaW4gY2hpbGQgdGFibGUuDQoJICoNCgkgKiBAcmV0dXJuIGFycmF5ICAgVGhlIElEcyBvZiBhbGwgYWN0aXZlIHVzZXJzLg0KCSAqIEBzaW5jZSAgNS4wLjINCgkgKi8NCglwcml2YXRlIGZ1bmN0aW9uIGdldEFjdGl2ZVVzZXJzKHN0cmluZyAkbGlua0tleSwgc3RyaW5nICRsaW5rVmFsdWUpOiBhcnJheQ0KCXsNCgkJaWYgKGlzc2V0KCR0aGlzLT5hY3RpdmVVc2Vyc1skbGlua0tleSAuICRsaW5rVmFsdWVdKSkNCgkJew0KCQkJcmV0dXJuICR0aGlzLT5hY3RpdmVVc2Vyc1skbGlua0tleSAuICRsaW5rVmFsdWVdOw0KCQl9DQoNCgkJaWYgKCgkdXNlcnMgPSAkdGhpcy0+aXRlbXMtPnRhYmxlKCR0aGlzLT5nZXRUYWJsZSgpKS0+dmFsdWVzKFskbGlua1ZhbHVlXSwgJGxpbmtLZXksICd1c2VyX2lkJykpICE9PSBudWxsKQ0KCQl7DQoJCQkkdGhpcy0+YWN0aXZlVXNlcnNbJGxpbmtLZXkgLiAkbGlua1ZhbHVlXSA9ICR1c2VyczsNCgkJCXJldHVybiAkdXNlcnM7DQoJCX0NCg0KCQlyZXR1cm4gW107DQoJfQ0KDQoJLyoqDQoJICogSGFuZGxlcyBzZXR0aW5nIHVzZXIgZGV0YWlscyBhbmQgc2F2aW5nIHRoZW0uDQoJICoNCgkgKiBUaGlzIGZ1bmN0aW9uIHJldHJpZXZlcyB0aGUgdXNlciBieSBJRCwgc2V0cyB0aGUgdXNlciBkZXRhaWxzLCANCgkgKiBhbmQgYWRkcyBhcHByb3ByaWF0ZSB1c2VyIGdyb3VwcyBiZWZvcmUgc2F2aW5nIHRoZSB1c2VyLg0KCSAqDQoJICogQHBhcmFtIGFycmF5ICRpdGVtICAgICAgICBUaGUgdXNlciBkZXRhaWxzIHBhc3NlZCBieSByZWZlcmVuY2UuDQoJICogQHBhcmFtIGFycmF5ICRhY3RpdmVVc2VycyBUaGUgY3VycmVudCBhY3RpdmUgdXNlciBsaW5rZWQgdG8gdGhpcyBlbnRpdHkuDQoJICoNCgkgKiBAcmV0dXJuIGludCBUaGUgSUQgb2YgdGhlIHNhdmVkIHVzZXIsIG9yIDAgb24gZmFpbHVyZS4NCgkgKiBAc2luY2UgIDUuMC4yDQoJICovDQoJcHJpdmF0ZSBmdW5jdGlvbiBzZXRVc2VyRGV0YWlscyhhcnJheSAmJGl0ZW0sIGFycmF5ICRhY3RpdmVVc2Vycyk6IGludA0KCXsNCgkJJHVzZXIgPSAkdGhpcy0+bG9hZFVzZXIoJGl0ZW0sICRhY3RpdmVVc2Vycyk7DQoJCSRkZXRhaWxzID0gJHRoaXMtPmV4dHJhY3RVc2VyRGV0YWlscygkaXRlbSwgJHVzZXIpOw0KDQoJCWlmICgkdGhpcy0+aWRlbnRpdHktPmlkICE9ICR1c2VyLT5pZCkNCgkJew0KCQkJJHRoaXMtPmFzc2lnblVzZXJHcm91cHMoJGRldGFpbHMsICR1c2VyLCAkaXRlbSk7DQoJCX0NCg0KCQlyZXR1cm4gJHRoaXMtPnNhdmVVc2VyRGV0YWlscygkZGV0YWlscywgJGRldGFpbHNbJ2lkJ10gPz8gMCk7DQoJfQ0KDQoJLyoqDQoJICogTG9hZCB0aGUgdXNlciBiYXNlZCBvbiB0aGUgdXNlciBJRCBmcm9tIHRoZSBpdGVtIGFycmF5Lg0KCSAqDQoJICogQHBhcmFtIGFycmF5ICRpdGVtICAgICAgICAgVGhlIGFycmF5IGNvbnRhaW5pbmcgdXNlciBkZXRhaWxzLg0KCSAqIEBwYXJhbSBhcnJheSAkYWN0aXZlVXNlcnMgIFRoZSBjdXJyZW50IGFjdGl2ZSB1c2VyIGxpbmtlZCB0byB0aGlzIGVudGl0eS4NCgkgKiANCgkgKiBAcmV0dXJuIFVzZXJ8bnVsbCBUaGUgdXNlciBvYmplY3QgaWYgZm91bmQsIG51bGwgb3RoZXJ3aXNlLg0KCSAqIEBzaW5jZSAgNS4wLjINCgkgKi8NCglwcml2YXRlIGZ1bmN0aW9uIGxvYWRVc2VyKGFycmF5ICRpdGVtLCBhcnJheSAkYWN0aXZlVXNlcnMpOiA/VXNlcg0KCXsNCgkJaWYgKCFpc3NldCgkaXRlbVsndXNlcl9pZCddKSB8fCAhaXNfbnVtZXJpYygkaXRlbVsndXNlcl9pZCddKSB8fCAkaXRlbVsndXNlcl9pZCddIDw9IDApDQoJCXsNCgkJCXJldHVybiBudWxsOw0KCQl9DQoNCgkJLy8gb25seSBhbGxvdyB1cGRhdGUgdG8gbGlua2VkIHVzZXJzDQoJCWlmICghaW5fYXJyYXkoJGl0ZW1bJ3VzZXJfaWQnXSwgJGFjdGl2ZVVzZXJzKSkNCgkJew0KCQkJcmV0dXJuIG51bGw7DQoJCX0NCg0KCQkkdXNlciA9IFVzZXJIZWxwZXI6OmdldFVzZXJCeUlkKChpbnQpICRpdGVtWyd1c2VyX2lkJ10pOw0KDQoJCWlmICgkdXNlciAmJiAkdXNlci0+aWQgPT0gJGl0ZW1bJ3VzZXJfaWQnXSkNCgkJew0KCQkJcmV0dXJuICR1c2VyOw0KCQl9DQoNCgkJcmV0dXJuIG51bGw7DQoJfQ0KDQoJLyoqDQoJICogRXh0cmFjdCB1c2VyIGRldGFpbHMgZnJvbSB0aGUgaXRlbSBhcnJheSBhbmQgcHJlcGFyZSB0aGVtIGZvciBzYXZpbmcuDQoJICoNCgkgKiBAcGFyYW0gYXJyYXkgICAgICRpdGVtIFRoZSBhcnJheSBjb250YWluaW5nIHVzZXIgZGV0YWlscy4NCgkgKiBAcGFyYW0gVXNlcnxudWxsICR1c2VyIFRoZSB1c2VyIG9iamVjdCBpZiBmb3VuZCwgbnVsbCBvdGhlcndpc2UuDQoJICogDQoJICogQHJldHVybiBhcnJheSBUaGUgcHJlcGFyZWQgdXNlciBkZXRhaWxzIGFycmF5Lg0KCSAqIEBzaW5jZSAgNS4wLjINCgkgKi8NCglwcml2YXRlIGZ1bmN0aW9uIGV4dHJhY3RVc2VyRGV0YWlscyhhcnJheSAmJGl0ZW0sID9Vc2VyICR1c2VyKTogYXJyYXkNCgl7DQoJCSRkZXRhaWxzID0gW107DQoNCgkJaWYgKCR1c2VyICE9PSBudWxsKQ0KCQl7DQoJCQkkZGV0YWlsc1snaWQnXSA9IChpbnQpICRpdGVtWyd1c2VyX2lkJ107DQoJCX0NCg0KCQlmb3JlYWNoICgkdGhpcy0+dXNlciBhcyAkcHJvcGVydHkpDQoJCXsNCgkJCWlmIChpc3NldCgkaXRlbVskcHJvcGVydHldKSkNCgkJCXsNCgkJCQkkZGV0YWlsc1skcHJvcGVydHldID0gJGl0ZW1bJHByb3BlcnR5XTsNCgkJCQl1bnNldCgkaXRlbVskcHJvcGVydHldKTsNCgkJCX0NCgkJfQ0KDQoJCXJldHVybiAkZGV0YWlsczsNCgl9DQoNCgkvKioNCgkgKiBBc3NpZ25zIHVzZXIgZ3JvdXBzIGJhc2VkIG9uIGV4aXN0aW5nIGdyb3VwcyBhbmQgZW50aXR5IHR5cGUuDQoJICoNCgkgKiBAcGFyYW0gYXJyYXkgICAgICYkZGV0YWlscyBUaGUgYXJyYXkgdG8gc3RvcmUgdXNlciBkZXRhaWxzIGluY2x1ZGluZyBncm91cHMuDQoJICogQHBhcmFtIFVzZXJ8bnVsbCAkdXNlciAgICAgVGhlIHVzZXIgb2JqZWN0IGlmIGZvdW5kLCBudWxsIG90aGVyd2lzZS4NCgkgKiBAcGFyYW0gYXJyYXkgICAgICRpdGVtICAgICBUaGUgYXJyYXkgY29udGFpbmluZyBhZGRpdGlvbmFsIHVzZXIgZGV0YWlscy4NCgkgKg0KCSAqIEByZXR1cm4gdm9pZA0KCSAqIEBzaW5jZSA1LjAuMg0KCSAqLw0KCXByaXZhdGUgZnVuY3Rpb24gYXNzaWduVXNlckdyb3VwcyhhcnJheSAmJGRldGFpbHMsID9Vc2VyICR1c2VyLCBhcnJheSAkaXRlbSk6IHZvaWQNCgl7DQoJCSRncm91cHMgPSAkdXNlciAhPT0gbnVsbCA/IChhcnJheSkgJHVzZXItPmdyb3VwcyA6IFtdOw0KDQoJCWlmICghZW1wdHkoJGl0ZW1bJ2VudGl0eV90eXBlJ10pKQ0KCQl7DQoJCQkkZ2xvYmFsX2VudGl0eV9ncm91cHMgPSBDb21wb25lbnQ6OmdldFBhcmFtcygpLT5nZXQoJGl0ZW1bJ2VudGl0eV90eXBlJ10gLiAnX2dyb3VwcycsIFtdKTsNCgkJCWZvcmVhY2ggKCRnbG9iYWxfZW50aXR5X2dyb3VwcyBhcyAkZ3JvdXApDQoJCQl7DQoJCQkJaWYgKCFpbl9hcnJheSgkZ3JvdXAsICRncm91cHMpKQ0KCQkJCXsNCgkJCQkJJGdyb3Vwc1tdID0gJGdyb3VwOw0KCQkJCX0NCgkJCX0NCgkJfQ0KDQoJCS8vIEVuc3VyZSAkZGV0YWlsc1snZ3JvdXBzJ10gaXMgYW4gYXJyYXkgaWYgaXQgZXhpc3RzLCBlbHNlIGRlZmF1bHQgdG8gYW4gZW1wdHkgYXJyYXkNCgkJJGRldGFpbHNHcm91cHMgPSBpc3NldCgkZGV0YWlsc1snZ3JvdXBzJ10pID8gKGFycmF5KSAkZGV0YWlsc1snZ3JvdXBzJ10gOiBbXTsNCg0KCQkvLyBNZXJnZSB0aGUgYXJyYXlzIGFuZCByZW1vdmUgZHVwbGljYXRlcw0KCQkkbWVyZ2VkR3JvdXBzID0gYXJyYXlfdW5pcXVlKGFycmF5X21lcmdlKCRkZXRhaWxzR3JvdXBzLCAkZ3JvdXBzKSk7DQoNCgkJLy8gT25seSBzZXQgJGRldGFpbHNbJ2dyb3VwcyddIGlmIHRoZSBtZXJnZWQgYXJyYXkgaXMgbm90IGVtcHR5DQoJCWlmICghZW1wdHkoJG1lcmdlZEdyb3VwcykpDQoJCXsNCgkJCSRkZXRhaWxzWydncm91cHMnXSA9ICRtZXJnZWRHcm91cHM7DQoJCX0NCgkJZWxzZQ0KCQl7DQoJCQl1bnNldCgkZGV0YWlsc1snZ3JvdXBzJ10pOw0KCQl9DQoJfQ0KDQoJLyoqDQoJICogU2F2ZSB0aGUgdXNlciBkZXRhaWxzIHVzaW5nIFVzZXJIZWxwZXIgYW5kIGhhbmRsZSBleGNlcHRpb25zLg0KCSAqDQoJICogQHBhcmFtIGFycmF5ICRkZXRhaWxzIFRoZSBwcmVwYXJlZCB1c2VyIGRldGFpbHMgYXJyYXkuDQoJICogQHBhcmFtIGludCAgICR1c2VySWQgIFRoZSBJRCBvZiB0aGUgdXNlciBiZWluZyBwcm9jZXNzZWQuDQoJICogDQoJICogQHJldHVybiBpbnQgVGhlIElEIG9mIHRoZSBzYXZlZCB1c2VyLCBvciAwIG9uIGZhaWx1cmUuDQoJICogQHNpbmNlIDUuMC4yDQoJICovDQoJcHJpdmF0ZSBmdW5jdGlvbiBzYXZlVXNlckRldGFpbHMoYXJyYXkgJGRldGFpbHMsIGludCAkdXNlcklkKTogaW50DQoJew0KCQl0cnkgew0KCQkJcmV0dXJuIFVzZXJIZWxwZXI6OnNhdmUoJGRldGFpbHMsIDAsIFsndXNlcmFjdGl2YXRpb24nID0+IDAsICdzZW5kcGFzc3dvcmQnID0+IDEsICdhbGxvd1VzZXJSZWdpc3RyYXRpb24nID0+IDFdKTsNCgkJfSBjYXRjaCAoTm9Vc2VySWRGb3VuZEV4Y2VwdGlvbiAkZSkgew0KCQkJRmFjdG9yeTo6Z2V0QXBwbGljYXRpb24oKS0+ZW5xdWV1ZU1lc3NhZ2UoJGUtPmdldE1lc3NhZ2UoKSwgJ2Vycm9yJyk7DQoJCX0gY2F0Y2ggKFxFeGNlcHRpb24gJGUpIHsNCgkJCUZhY3Rvcnk6OmdldEFwcGxpY2F0aW9uKCktPmVucXVldWVNZXNzYWdlKCRlLT5nZXRNZXNzYWdlKCksICd3YXJuaW5nJyk7DQoJCQlyZXR1cm4gJHVzZXJJZDsNCgkJfQ0KDQoJCXJldHVybiAwOw0KCX0NCg0KCS8qKg0KCSAqIEZ1bmN0aW9uIHRvIGRldGVybWluZSBpZiB0aGUgYXJyYXkgY29uc2lzdHMgb2YgbXVsdGlwbGUgZGF0YSBzZXRzIChhcnJheXMgb2YgYXJyYXlzKS4NCgkgKiANCgkgKiBAcGFyYW0gYXJyYXkgJGFycmF5IFRoZSBpbnB1dCBhcnJheSB0byBiZSBjaGVja2VkLg0KCSAqIA0KCSAqIEByZXR1cm4gYm9vbCBUcnVlIGlmIHRoZSBhcnJheSBjb250YWlucyBvbmx5IGFycmF5cyAobXVsdGlwbGUgZGF0YSBzZXRzKSwgZmFsc2Ugb3RoZXJ3aXNlLg0KCSAqIEBzaW5jZSAgNS4wLjINCgkgKi8NCglwcml2YXRlIGZ1bmN0aW9uIGlzTXVsdGlwbGVTZXRzKGFycmF5ICRhcnJheSk6IGJvb2wNCgl7DQoJCWZvcmVhY2ggKCRhcnJheSBhcyAkZWxlbWVudCkNCgkJew0KCQkJLy8gQXMgc29vbiBhcyB3ZSBmaW5kIGEgbm9uLWFycmF5IGVsZW1lbnQsIHJldHVybiBmYWxzZQ0KCQkJaWYgKCFpc19hcnJheSgkZWxlbWVudCkpDQoJCQl7DQoJCQkJcmV0dXJuIGZhbHNlOw0KCQkJfQ0KCQl9DQoNCgkJLy8gSWYgYWxsIGVsZW1lbnRzIGFyZSBhcnJheXMsIHJldHVybiB0cnVlDQoJCXJldHVybiB0cnVlOw0KCX0=', '{}', '{}', '', 1, '2024-09-01 23:13:51', 31, '', 1), +(823, '5acded67-0e3d-4c6b-a6ea-b533b076de0c', 'VDM.Data.Guid', 'Guid', 'trait', 'Globally Unique Identifier\r\n\r\n@since 5.0.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIwDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\Data.Guid', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIFJldHVybnMgYSBHVUlEdjQgc3RyaW5nLg0KCSAqIA0KCSAqIFRoaXMgZnVuY3Rpb24gdXNlcyB0aGUgYmVzdCBjcnlwdG9ncmFwaGljYWxseSBzZWN1cmUgbWV0aG9kDQoJICogYXZhaWxhYmxlIG9uIHRoZSBwbGF0Zm9ybSB3aXRoIGEgZmFsbGJhY2sgdG8gYW4gb2xkZXIsIGxlc3Mgc2VjdXJlIHZlcnNpb24uDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICRrZXkgVGhlIGtleSB0byBjaGVjayBhbmQgbW9kaWZ5IHZhbHVlcy4NCgkgKg0KCSAqIEByZXR1cm4gc3RyaW5nIEEgR1VJRHY0IHN0cmluZy4NCgkgKg0KCSAqIEBzaW5jZSA1LjAuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBnZXRHdWlkKHN0cmluZyAka2V5KTogc3RyaW5nDQoJew0KCQkvLyBXaW5kb3dzOiBVc2UgY29tX2NyZWF0ZV9ndWlkIGlmIGF2YWlsYWJsZQ0KCQlpZiAoZnVuY3Rpb25fZXhpc3RzKCdjb21fY3JlYXRlX2d1aWQnKSkNCgkJew0KCQkJJGd1aWQgPSB0cmltKFxjb21fY3JlYXRlX2d1aWQoKSwgJ3t9Jyk7DQoJCQlyZXR1cm4gJHRoaXMtPmNoZWNrR3VpZCgkZ3VpZCwgJGtleSk7DQoJCX0NCg0KCQkvLyBVbml4LWJhc2VkIHN5c3RlbXM6IFVzZSBvcGVuc3NsX3JhbmRvbV9wc2V1ZG9fYnl0ZXMgaWYgYXZhaWxhYmxlDQoJCWlmIChmdW5jdGlvbl9leGlzdHMoJ3JhbmRvbV9ieXRlcycpKQ0KCQl7DQoJCQl0cnkgew0KCQkJCSRkYXRhID0gcmFuZG9tX2J5dGVzKDE2KTsNCgkJCX0gY2F0Y2ggKEV4Y2VwdGlvbiAkZSkgew0KCQkJCS8vIEhhbmRsZSB0aGUgZXJyb3IgYXBwcm9wcmlhdGVseSAobG9nZ2luZywgdGhyb3dpbmcsIGV0Yy4pDQoJCQkJcmV0dXJuICR0aGlzLT5mYWxsYmFja0d1aWQoJGtleSk7DQoJCQl9DQoNCgkJCS8vIFNldCB0aGUgdmVyc2lvbiB0byAwMTAwIGFuZCB0aGUgYml0cyA2LTcgdG8gMTAgYXMgcGVyIFJGQyA0MTIyDQoJCQkkZGF0YVs2XSA9IGNocihvcmQoJGRhdGFbNl0pICYgMHgwZiB8IDB4NDApOw0KCQkJJGRhdGFbOF0gPSBjaHIob3JkKCRkYXRhWzhdKSAmIDB4M2YgfCAweDgwKTsNCg0KCQkJJGd1aWQgPSB2c3ByaW50ZignJXMlcy0lcy0lcy0lcy0lcyVzJXMnLCBzdHJfc3BsaXQoYmluMmhleCgkZGF0YSksIDQpKTsNCgkJCXJldHVybiAkdGhpcy0+Y2hlY2tHdWlkKCRndWlkLCAka2V5KTsNCgkJfQ0KDQoJCS8vIEZhbGxiYWNrIHRvIG9sZGVyIG1ldGhvZHMgaWYgc2VjdXJlIG1ldGhvZHMgYXJlIG5vdCBhdmFpbGFibGUNCgkJcmV0dXJuICR0aGlzLT5mYWxsYmFja0d1aWQoJGtleSk7DQoJfQ0KDQoJLyoqDQoJICogVmFsaWRhdGUgdGhlIEdsb2JhbGx5IFVuaXF1ZSBJZGVudGlmaWVyDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICRndWlkDQoJICoNCgkgKiBAcmV0dXJuIGJvb2wNCgkgKiBAc2luY2UgIDUuMC40DQoJICovDQoJcHVibGljIHN0YXRpYyBmdW5jdGlvbiB2YWxpZGF0ZUd1aWQoJGd1aWQpDQoJew0KCQkvLyBjaGVjayBpZiB3ZSBoYXZlIGEgc3RyaW5nDQoJCWlmICghZW1wdHkoJGd1aWQpICYmIGlzX3N0cmluZygkZ3VpZCkpDQoJCXsNCgkJCXJldHVybiBwcmVnX21hdGNoKCIvXihceyk/W2EtZlxkXXs4fSgtW2EtZlxkXXs0fSl7NH1bYS1mXGRdezh9KD8oMSlcfSkkL2kiLCAkZ3VpZCk7DQoJCX0NCgkJcmV0dXJuIGZhbHNlOw0KCX0NCg0KCS8qKg0KCSAqIEdlbmVyYXRlcyBhIGZhbGxiYWNrIEdVSUR2NCB1c2luZyBsZXNzIHNlY3VyZSBtZXRob2RzLg0KCSAqDQoJICogQHBhcmFtIHN0cmluZyAka2V5IFRoZSBrZXkgdG8gY2hlY2sgYW5kIG1vZGlmeSB2YWx1ZXMuDQoJICoNCgkgKiBAcmV0dXJuIHN0cmluZyBBIEdVSUR2NCBzdHJpbmcuDQoJICoNCgkgKiBAc2luY2UgNS4wLjINCgkgKi8NCglwcml2YXRlIGZ1bmN0aW9uIGZhbGxiYWNrR3VpZChzdHJpbmcgJGtleSk6IHN0cmluZw0KCXsNCgkJJGNoYXJpZCA9IHN0cnRvbG93ZXIobWQ1KHVuaXFpZChyYW5kb21faW50KDAsIFBIUF9JTlRfTUFYKSwgdHJ1ZSkpKTsNCgkJJGd1aWR2NCA9IHNwcmludGYoDQoJCQknJXMtJXMtJXMtJXMtJXMnLA0KCQkJc3Vic3RyKCRjaGFyaWQsICAwLCA4KSwNCgkJCXN1YnN0cigkY2hhcmlkLCAgOCwgNCksDQoJCQlzdWJzdHIoJGNoYXJpZCwgMTIsIDQpLA0KCQkJc3Vic3RyKCRjaGFyaWQsIDE2LCA0KSwNCgkJCXN1YnN0cigkY2hhcmlkLCAyMCwgMTIpDQoJCSk7DQoNCgkJcmV0dXJuICR0aGlzLT5jaGVja0d1aWQoJGd1aWR2NCwgJGtleSk7DQoJfQ0KDQoJLyoqDQoJICogQ2hlY2tzIGlmIHRoZSBHVUlEIHZhbHVlIGlzIHVuaXF1ZSBhbmQgZG9lcyBub3QgYWxyZWFkeSBleGlzdC4NCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmcgJGd1aWQgVGhlIEdVSUQgdmFsdWUgdG8gY2hlY2suDQoJICogQHBhcmFtIHN0cmluZyAka2V5ICBUaGUga2V5IHRvIGNoZWNrIGFuZCBtb2RpZnkgdmFsdWVzLg0KCSAqDQoJICogQHJldHVybiBzdHJpbmcgVGhlIHVuaXF1ZSBHVUlEIHZhbHVlLg0KCSAqDQoJICogQHNpbmNlIDUuMC4yDQoJICovDQoJcHJpdmF0ZSBmdW5jdGlvbiBjaGVja0d1aWQoc3RyaW5nICRndWlkLCBzdHJpbmcgJGtleSk6IHN0cmluZw0KCXsNCgkJLy8gQ2hlY2sgdGhhdCB0aGUgR1VJRCBkb2VzIG5vdCBhbHJlYWR5IGV4aXN0DQoJCWlmICgkdGhpcy0+aXRlbXMtPnRhYmxlKCR0aGlzLT5nZXRUYWJsZSgpKS0+dmFsdWVzKFskZ3VpZF0sICRrZXkpKQ0KCQl7DQoJCQlyZXR1cm4gJHRoaXMtPmdldEd1aWQoJGtleSk7DQoJCX0NCg0KCQlyZXR1cm4gJGd1aWQ7DQoJfQ==', '{}', '{}', '', 1, '2024-09-02 00:08:44', 4, '', 1), +(824, '576685fd-263c-46bb-9fdc-1f5eb234cbb6', 'VDM.Interfaces.Data.GuidInterface', 'GuidInterface', 'interface', 'Globally Unique Identifier Interface\r\n\r\n@since 5.0.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\Interfaces.Data.GuidInterface', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIFJldHVybnMgYSBHVUlEdjQgc3RyaW5nLg0KCSAqIA0KCSAqIFRoaXMgZnVuY3Rpb24gdXNlcyB0aGUgYmVzdCBjcnlwdG9ncmFwaGljYWxseSBzZWN1cmUgbWV0aG9kDQoJICogYXZhaWxhYmxlIG9uIHRoZSBwbGF0Zm9ybSB3aXRoIGEgZmFsbGJhY2sgdG8gYW4gb2xkZXIsIGxlc3Mgc2VjdXJlIHZlcnNpb24uDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICRrZXkgVGhlIGtleSB0byBjaGVjayBhbmQgbW9kaWZ5IHZhbHVlcy4NCgkgKg0KCSAqIEByZXR1cm4gc3RyaW5nIEEgR1VJRHY0IHN0cmluZy4NCgkgKg0KCSAqIEBzaW5jZSA1LjAuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBnZXRHdWlkKHN0cmluZyAka2V5KTogc3RyaW5nOw==', '{}', '{}', '', 1, '2024-09-02 00:11:37', 3, '', 1), +(825, '1c10a5f1-204d-4f17-ad9f-0e0684f2030d', 'Joomla.Utilities.Exception.NoUserIdFoundException', 'NoUserIdFoundException', 'class', 'No User Id Found Exception\r\n\r\n@since 5.0.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIwDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', -1, '\\InvalidArgumentException', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\[[[ComponentNamespace]]].Utilities.Exception.NoUserIdFoundException', '', '{}', '{}', '', '{}', '', '{}', '{}', '', 1, '2024-09-02 23:10:09', 1, '', 1), +(831, '12a2a8de-a893-4dbb-a53d-b52de4f6cb0e', 'Joomla.File.Type', 'Type', 'final class', 'File Type Class\r\n\r\n@since 5.0.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIwDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\[[[ComponentNamespace]]].File.Type', 1, '{}', '{}', 'dXNlIEpvb21sYVxGaWxlc3lzdGVtXFBhdGg7', '{\"use_selection0\":{\"use\":\"05744dd3-4030-4cf8-8dda-a93ab809b473\",\"as\":\"Item\"}}', 'CS8qKg0KCSAqIFRoZSBJdGVtIENsYXNzLg0KCSAqDQoJICogQHZhciAgICBJdGVtDQoJICogQHNpbmNlIDUuMC4yDQoJICovDQoJcHJvdGVjdGVkIEl0ZW0gJGl0ZW07DQoNCgkvKioNCgkgKiBUaGUgRmlsZSBUeXBlcw0KCSAqDQoJICogQHZhciAgICBhcnJheQ0KCSAqIEBzaW5jZSAgNS4wLjINCgkgKi8NCglwcm90ZWN0ZWQgYXJyYXkgJGZpbGVUeXBlcyA9IFsxID0+ICdpbWFnZScgLCAyID0+ICdkb2N1bWVudCcgLCAzID0+ICdtZWRpYScsIDQgPT4gJ2ZpbGUnXTsNCg0KCS8qKg0KCSAqIENvbnN0cnVjdG9yLg0KCSAqDQoJICogQHBhcmFtIEl0ZW0gICAkaXRlbSAgIFRoZSBJdGVtIENsYXNzLg0KCSAqDQoJICogQHNpbmNlIDUuMC4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KEl0ZW0gJGl0ZW0pDQoJew0KCQkkdGhpcy0+aXRlbSA9ICRpdGVtOw0KCX0NCg0KCS8qKg0KCSAqIFJldHJpZXZlcyB0aGUgZmlsZSB0eXBlIGRldGFpbHMgKGFqYXgpDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICRndWlkICAgIFRoZSBHVUlEIChHbG9iYWxseSBVbmlxdWUgSWRlbnRpZmllcikgdXNlZCBhcyB0aGUga2V5IHRvIHJldHJpZXZlIHRoZSBmaWxlIHR5cGUNCgkgKiBAcGFyYW0gc3RyaW5nICR0YXJnZXQgIFRoZSBlbnRpdHkgdGFyZ2V0IG5hbWUuDQoJICoNCgkgKiBAcmV0dXJuIGFycmF5fG51bGwgICBUaGUgaXRlbSBvYmplY3QgaWYgZm91bmQsIG9yIG51bGwgaWYgdGhlIGl0ZW0gZG9lcyBub3QgZXhpc3QuDQoJICogQHNpbmNlICA1LjAuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBnZXQoc3RyaW5nICRndWlkLCBzdHJpbmcgJHRhcmdldCk6ID9hcnJheQ0KCXsNCgkJaWYgKCgkZmlsZVR5cGUgPSAkdGhpcy0+ZGV0YWlscygkZ3VpZCkpICE9PSBudWxsICYmDQoJCQkkdGhpcy0+dmFsaWRUYXJnZXQoJGZpbGVUeXBlLCAkdGFyZ2V0KSkNCgkJew0KCQkJcmV0dXJuIFsNCgkJCQknbmFtZScgPT4gJHRoaXMtPmdldEZpZWxkTmFtZSgkZmlsZVR5cGUpLA0KCQkJCSdhbGxvdycgPT4gJHRoaXMtPmdldEFsbG93KCRmaWxlVHlwZSksDQoJCQkJJ2FsbG93X3NwYW4nID0+ICR0aGlzLT5nZXRBbGxvd1NwYW4oJGZpbGVUeXBlKSwNCgkJCQknZmlsZV90eXBlX3NwYW4nID0+ICRmaWxlVHlwZS0+bmFtZSA/PyAnZmlsZScsDQoJCQkJJ2Rpc3BsYXlfZmllbGRzJyA9PiAkZmlsZVR5cGUtPmRpc3BsYXlfZmllbGRzID8/IG51bGwsDQoJCQkJJ3BhcmFtX2ZpZWxkcycgPT4gJGZpbGVUeXBlLT5wYXJhbV9maWVsZHMgPz8gbnVsbCwNCgkJCV07DQoJCX0NCg0KCQlyZXR1cm4gbnVsbDsNCgl9DQoNCgkvKioNCgkgKiBSZXRyaWV2ZXMgdGhlIGZpbGUgdHlwZSBkZXRhaWxzICh1cGxvYWQpDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICRndWlkICAgIFRoZSBHVUlEIChHbG9iYWxseSBVbmlxdWUgSWRlbnRpZmllcikgdXNlZCBhcyB0aGUga2V5IHRvIHJldHJpZXZlIHRoZSBmaWxlIHR5cGUNCgkgKiBAcGFyYW0gc3RyaW5nICR0YXJnZXQgIFRoZSBlbnRpdHkgdGFyZ2V0IG5hbWUuDQoJICoNCgkgKiBAcmV0dXJuIGFycmF5fG51bGwgICBUaGUgaXRlbSBvYmplY3QgaWYgZm91bmQsIG9yIG51bGwgaWYgdGhlIGl0ZW0gZG9lcyBub3QgZXhpc3QuDQoJICogQHNpbmNlICA1LjAuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBsb2FkKHN0cmluZyAkZ3VpZCwgc3RyaW5nICR0YXJnZXQpOiA/YXJyYXkNCgl7DQoJCWlmICgoJGZpbGVUeXBlID0gJHRoaXMtPmRldGFpbHMoJGd1aWQpKSAhPT0gbnVsbCAmJg0KCQkJJHRoaXMtPnZhbGlkVGFyZ2V0KCRmaWxlVHlwZSwgJHRhcmdldCkpDQoJCXsNCgkJCXJldHVybiBbDQoJCQkJJ25hbWUnID0+ICRmaWxlVHlwZS0+bmFtZSA/PyAnZmlsZXMnLA0KCQkJCSdhY2Nlc3MnID0+ICRmaWxlVHlwZS0+YWNjZXNzID8/IDEsDQoJCQkJJ2Rvd25sb2FkX2FjY2VzcycgPT4gJGZpbGVUeXBlLT5kb3dubG9hZF9hY2Nlc3MgPz8gMSwNCgkJCQknZmllbGQnID0+ICR0aGlzLT5nZXRGaWVsZE5hbWUoJGZpbGVUeXBlKSwNCgkJCQkndHlwZScgPT4gJHRoaXMtPmdldEZpZWxkTmFtZSgkZmlsZVR5cGUpLA0KCQkJCSdmb3JtYXRzJyA9PiAkdGhpcy0+Z2V0QWxsb3dGb3JtYXRzKCRmaWxlVHlwZSkgPz8gW10sDQoJCQkJJ2ZpbHRlcicgPT4gJGZpbGVUeXBlLT5maWx0ZXIgPz8gbnVsbCwNCgkJCQkncGF0aCcgPT4gJHRoaXMtPmdldEZpbGVUeXBlUGF0aCgkZmlsZVR5cGUpDQoJCQldOw0KCQl9DQoNCgkJcmV0dXJuIG51bGw7DQoJfQ0KDQoJLyoqDQoJICogUmV0cmlldmVzIHRoZSBmaWxlIHR5cGUgZGV0YWlscw0KCSAqDQoJICogQHBhcmFtIHN0cmluZyAkZ3VpZCAgIFRoZSBHVUlEIChHbG9iYWxseSBVbmlxdWUgSWRlbnRpZmllcikgdXNlZCBhcyB0aGUga2V5IHRvIHJldHJpZXZlIHRoZSBmaWxlIHR5cGUuDQoJICoNCgkgKiBAcmV0dXJuIG9iamVjdHxudWxsICAgVGhlIGl0ZW0gb2JqZWN0IGlmIGZvdW5kLCBvciBudWxsIGlmIHRoZSBpdGVtIGRvZXMgbm90IGV4aXN0Lg0KCSAqIEBzaW5jZSAgNS4wLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZGV0YWlscyhzdHJpbmcgJGd1aWQpOiA/b2JqZWN0DQoJew0KCQlyZXR1cm4gJHRoaXMtPml0ZW0tPnRhYmxlKCdmaWxlX3R5cGUnKS0+Z2V0KCRndWlkKTsNCgl9DQoNCgkvKioNCgkgKiBWYWxpZCBpZiB0aGlzIGlzIGEgY29ycmVjdCB0YXJnZXQgdHJ5aW5nIHRvIGNhbGwgdGhpcyBmaWxlIHR5cGUNCgkgKg0KCSAqIEBwYXJhbSBvYmplY3QgICRkYXRhICAgVGhlIHR5cGUgZGF0YSBhcnJheQ0KCSAqIEBwYXJhbSBzdHJpbmcgICR0YXJnZXQgVGhlIGVudGl0eSB0YXJnZXQgbmFtZS4NCgkgKg0KCSAqIEByZXR1cm4gYm9vbCAgIFRydWUgaWYgdmFsaWQgdGFyZ2V0DQoJICogQHNpbmNlICA1LjAuMg0KCSAqLw0KCXByb3RlY3RlZCBmdW5jdGlvbiB2YWxpZFRhcmdldChvYmplY3QgJGRhdGEsIHN0cmluZyAkdGFyZ2V0KTogYm9vbA0KCXsNCgkJJHRhcmdldHMgPSAkZGF0YS0+dGFyZ2V0ID8/IG51bGw7DQoJCWlmICghZW1wdHkoJHRhcmdldHMpKQ0KCQl7DQoJCQkkdGFyZ2V0cyA9IChhcnJheSkgJHRhcmdldHM7DQoJCQlyZXR1cm4gaW5fYXJyYXkoJHRhcmdldCwgJHRhcmdldHMpOw0KCQl9DQoNCgkJcmV0dXJuIGZhbHNlOw0KCX0NCg0KCS8qKg0KCSAqIFJldHJpZXZlcyB0aGUgZmllbGQgbmFtZQ0KCSAqDQoJICogQHBhcmFtIG9iamVjdCAgJGRhdGEgICBUaGUgdHlwZSBkYXRhIGFycmF5DQoJICoNCgkgKiBAcmV0dXJuIHN0cmluZyAgIFRoZSBmaWVsZCBuYW1lDQoJICogQHNpbmNlICA1LjAuMg0KCSAqLw0KCXByb3RlY3RlZCBmdW5jdGlvbiBnZXRGaWVsZE5hbWUob2JqZWN0ICRkYXRhKTogc3RyaW5nDQoJew0KCQkkdHlwZSA9ICRkYXRhLT50eXBlID8/IDQ7DQoJCWlmIChpc3NldCgkdGhpcy0+ZmlsZVR5cGVzWyR0eXBlXSkpDQoJCXsNCgkJCXJldHVybiAkdGhpcy0+ZmlsZVR5cGVzWyR0eXBlXTsNCgkJfQ0KCQlyZXR1cm4gJ2ZpbGUnOw0KCX0NCg0KCS8qKg0KCSAqIFJldHJpZXZlcyB0aGUgYWxsb3cgZm9ybWF0cyAoZm9yIHNjcmlwdCkNCgkgKg0KCSAqIEBwYXJhbSBvYmplY3QgICRkYXRhICAgVGhlIHR5cGUgZGF0YSBhcnJheQ0KCSAqDQoJICogQHJldHVybiBzdHJpbmcgICBUaGUgYWxsb3cgdmFsdWVzDQoJICogQHNpbmNlICA1LjAuMg0KCSAqLw0KCXByb3RlY3RlZCBmdW5jdGlvbiBnZXRBbGxvdyhvYmplY3QgJGRhdGEpOiBzdHJpbmcNCgl7DQoJCSRmb3JtYXRzID0gJHRoaXMtPmdldEFsbG93Rm9ybWF0cygkZGF0YSk7DQoJCWlmICghZW1wdHkoJGZvcm1hdHMpKQ0KCQl7DQoJCQlyZXR1cm4gJyouKCcgLiBpbXBsb2RlKCd8JywgJGZvcm1hdHMpIC4gJyknOw0KCQl9DQoJCXJldHVybiAnJzsNCgl9DQoNCgkvKioNCgkgKiBSZXRyaWV2ZXMgdGhlIGFsbG93IGZvcm1hdHMgKGZvciBzcGFuKQ0KCSAqDQoJICogQHBhcmFtIG9iamVjdCAgJGRhdGEgICBUaGUgdHlwZSBkYXRhIGFycmF5DQoJICoNCgkgKiBAcmV0dXJuIHN0cmluZyAgIFRoZSBhbGxvdyB2YWx1ZXMNCgkgKiBAc2luY2UgIDUuMC4yDQoJICovDQoJcHJvdGVjdGVkIGZ1bmN0aW9uIGdldEFsbG93U3BhbihvYmplY3QgJGRhdGEpOiBzdHJpbmcNCgl7DQoJCSRmb3JtYXRzID0gJHRoaXMtPmdldEFsbG93Rm9ybWF0cygkZGF0YSk7DQoJCWlmICghZW1wdHkoJGZvcm1hdHMpKQ0KCQl7DQoJCQlyZXR1cm4gJyhmb3JtYXRzIGFsbG93ZWQ6IDxiPicgLiBpbXBsb2RlKCcsICcsICRmb3JtYXRzKSAuICc8L2I+KSc7DQoJCX0NCgkJcmV0dXJuICcnOw0KCX0NCg0KCS8qKg0KCSAqIFJldHJpZXZlcyB0aGUgYWxsb3cgZm9ybWF0cw0KCSAqDQoJICogQHBhcmFtIG9iamVjdHxudWxsICAkZGF0YSAgIFRoZSB0eXBlIGRhdGEgYXJyYXkNCgkgKg0KCSAqIEByZXR1cm4gYXJyYXl8bnVsbCAgIFRoZSBhbGxvdyB2YWx1ZXMNCgkgKiBAc2luY2UgIDUuMC4yDQoJICovDQoJcHJvdGVjdGVkIGZ1bmN0aW9uIGdldEFsbG93Rm9ybWF0cyhvYmplY3QgJGRhdGEpOiA/YXJyYXkNCgl7DQoJCSR0eXBlID0gJGRhdGEtPnR5cGUgPz8gNDsNCgkJc3dpdGNoICgkdHlwZSkNCgkJew0KCQkJY2FzZSAxOg0KCQkJCSRmb3JtYXRzID0gJGRhdGEtPmltYWdlX2Zvcm1hdHMgPz8gbnVsbDsNCgkJCWJyZWFrOw0KCQkJY2FzZSAyOg0KCQkJCSRmb3JtYXRzID0gJGRhdGEtPmRvY3VtZW50X2Zvcm1hdHMgPz8gbnVsbDsNCgkJCWJyZWFrOw0KCQkJY2FzZSAzOg0KCQkJCSRmb3JtYXRzID0gJGRhdGEtPm1lZGlhX2Zvcm1hdHMgPz8gbnVsbDsNCgkJCWJyZWFrOw0KCQkJZGVmYXVsdDoNCgkJCQkkZm9ybWF0cyA9ICRkYXRhLT5maWxlX2Zvcm1hdHMgPz8gbnVsbDsNCgkJCWJyZWFrOw0KCQl9DQoNCgkJaWYgKCRmb3JtYXRzKQ0KCQl7DQoJCQlyZXR1cm4gKGFycmF5KSAkZm9ybWF0czsNCgkJfQ0KDQoJCXJldHVybiBudWxsOw0KCX0NCg0KCS8qKg0KCSAqIFJldHJpZXZlcyB0aGUgZmlsZSB0eXBlIHBhdGggYmFzZWQgb24gcHJvdmlkZWQgZGF0YS4NCgkgKg0KCSAqIFBlcmZvcm1zIHNhZmV0eSBjaGVja3MgYW5kIHJldHVybnMgZWl0aGVyIGEgY2xlYW5lZCBwYXRoIGlmIGl0IGV4aXN0cw0KCSAqIGFuZCBpcyBhIHdyaXRhYmxlIGRpcmVjdG9yeSwgb3IgY29uc3RydWN0cyBhIHJlbGF0aXZlIHBhdGggdG8gdGhlICdpbWFnZXMnIGZvbGRlcg0KCSAqIGJhc2VkIG9uIHRoZSBsYXN0IGZvbGRlciBuYW1lIGZyb20gdGhlIGdpdmVuIHBhdGguDQoJICoNCgkgKiBAcGFyYW0gb2JqZWN0ICAkZGF0YSAgVGhlIHR5cGUgZGF0YSBvYmplY3QgY29udGFpbmluZyBwYXRoIGluZm9ybWF0aW9uLg0KCSAqDQoJICogQHJldHVybiBzdHJpbmd8bnVsbCBSZXR1cm5zIHRoZSBjbGVhbmVkIGZpbGUgcGF0aCBvciBudWxsIGlmIG5vIHZhbGlkIHBhdGggaXMgZm91bmQuDQoJICogQHNpbmNlICA1LjAuMg0KCSAqLw0KCXByb3RlY3RlZCBmdW5jdGlvbiBnZXRGaWxlVHlwZVBhdGgob2JqZWN0ICRkYXRhKTogP3N0cmluZw0KCXsNCgkJLy8gVmFsaWRhdGUgdGhlIHByb3ZpZGVkIHBhdGggZGF0YQ0KCQkkcGF0aCA9IGlzc2V0KCRkYXRhLT5wYXRoKSAmJiBpc19zdHJpbmcoJGRhdGEtPnBhdGgpICYmIHRyaW0oJGRhdGEtPnBhdGgpICE9PSAnJyA/DQoJCQlQYXRoOjpjbGVhbih0cmltKCRkYXRhLT5wYXRoKSkgOiBudWxsOw0KDQoJCS8vIFJldHVybiB0aGUgcGF0aCBpZiBpdCdzIGEgdmFsaWQgZGlyZWN0b3J5IGFuZCB3cml0YWJsZQ0KCQlpZiAoJHBhdGggIT09IG51bGwgJiYgaXNfZGlyKCRwYXRoKSAmJiBpc193cml0YWJsZSgkcGF0aCkpDQoJCXsNCgkJCXJldHVybiAkcGF0aDsNCgkJfQ0KDQoJCS8vIElmIG5vIHZhbGlkIHBhdGggaXMgZm91bmQsIHRyeSB0byBkZXJpdmUgYSByZWxhdGl2ZSBwYXRoIGZyb20gdGhlICdpbWFnZXMnIGZvbGRlcg0KCQlpZiAoJHBhdGggIT09IG51bGwgJiYgKCRmb2xkZXIgPSAkdGhpcy0+Z2V0TGFzdEZvbGRlck5hbWUoJHBhdGgpKSAhPT0gbnVsbCkNCgkJew0KCQkJcmV0dXJuIEpQQVRIX1NJVEUgLiAnL2ltYWdlcy8nIC4gJGZvbGRlcjsNCgkJfQ0KDQoJCXJldHVybiBudWxsOw0KCX0NCg0KCS8qKg0KCSAqIFJlY3Vyc2l2ZWx5IHJldHJpZXZlcyB0aGUgbGFzdCBmb2xkZXIgbmFtZSBmcm9tIGEgZ2l2ZW4gcGF0aCwgaWdub3JpbmcgYW55IGZpbGUgbmFtZXMuDQoJICogSWYgdGhlIGxhc3QgcGFydCBvZiB0aGUgcGF0aCBjb250YWlucyBhIGRvdCAoaW5kaWNhdGluZyBhIGZpbGUpLCBpdCBtb3ZlcyB1cCB0aGUgZGlyZWN0b3J5IHRyZWUNCgkgKiB1bnRpbCBpdCBmaW5kcyBhIHZhbGlkIGZvbGRlciBuYW1lLiBSZXR1cm5zIG51bGwgaWYgbm8gdmFsaWQgZm9sZGVyIGlzIGZvdW5kLg0KCSAqDQoJICogQHBhcmFtIHN0cmluZyAkcGF0aCBUaGUgZmlsZSBzeXN0ZW0gcGF0aCBmcm9tIHdoaWNoIHRvIGV4dHJhY3QgdGhlIGxhc3QgZm9sZGVyIG5hbWUuDQoJICogDQoJICogQHJldHVybiBzdHJpbmd8bnVsbCBSZXR1cm5zIHRoZSBsYXN0IGZvbGRlciBuYW1lIGlmIGZvdW5kLCBvciBudWxsIGlmIG5vIHZhbGlkIGZvbGRlciBleGlzdHMuDQoJICogQHNpbmNlICA1LjAuMg0KCSAqLw0KCXByb3RlY3RlZCBmdW5jdGlvbiBnZXRMYXN0Rm9sZGVyTmFtZShzdHJpbmcgJHBhdGgpOiA/c3RyaW5nDQoJew0KCQkvLyBSZW1vdmUgYW55IHRyYWlsaW5nIHNsYXNoZXMgdG8gYXZvaWQgYW4gZW1wdHkgcmVzdWx0DQoJCSRwYXRoID0gcnRyaW0oJHBhdGgsICcvXFwnKTsNCg0KCQkvLyBJZiB0aGUgcGF0aCBiZWNvbWVzIGVtcHR5LCByZXR1cm4gbnVsbCAoYmFzZSBjYXNlKQ0KCQlpZiAoZW1wdHkoJHBhdGgpKQ0KCQl7DQoJCQlyZXR1cm4gbnVsbDsNCgkJfQ0KDQoJCS8vIEdldCB0aGUgbGFzdCBwYXJ0IG9mIHRoZSBwYXRoDQoJCSRsYXN0UGFydCA9IGJhc2VuYW1lKCRwYXRoKTsNCg0KCQkvLyBJZiB0aGUgbGFzdCBwYXJ0IGNvbnRhaW5zIGEgZG90IChhbmQgaXQncyBub3QgYSBoaWRkZW4gZm9sZGVyKSwgbW92ZSB1cCB0aGUgZGlyZWN0b3J5IHRyZWUNCgkJaWYgKHN0cnBvcygkbGFzdFBhcnQsICcuJykgPiAwKQ0KCQl7DQoJCQkvLyBJZiBpdCBjb250YWlucyBhIGRvdCwgdHJlYXQgaXQgYXMgYSBmaWxlIGFuZCBtb3ZlIHVwIG9uZSBsZXZlbA0KCQkJcmV0dXJuICR0aGlzLT5nZXRMYXN0Rm9sZGVyTmFtZShkaXJuYW1lKCRwYXRoKSk7DQoJCX0NCg0KCQkvLyBSZXR1cm4gdGhlIGxhc3QgZm9sZGVyIG5hbWUgKGlmIGl0J3MgdmFsaWQgYW5kIG5vdCBhIGZpbGUpDQoJCXJldHVybiAkbGFzdFBhcnQ7DQoJfQ==', '{}', '{}', '', 1, '2024-09-10 02:09:28', 26, '', 1), +(832, '884eca78-281f-4eab-b962-d97e355af16d', 'JCB.File.Factory', 'Factory', 'abstract class', 'File Factory\r\n\r\n@since 5.0.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '2e5bf608-de5c-4b00-a20d-47c26aa350d9', '', '', '', '{\"0\":\"caf33c5d-858c-4f9a-894f-ab302ec5445a\"}', '', '[[[NamespacePrefix]]]\\Joomla\\[[[ComponentNamespace]]].File.Factory', 1, '{}', '{}', 'dXNlIEpvb21sYVxESVxDb250YWluZXI7', '{\"use_selection0\":{\"use\":\"19b2ba92-1655-4384-acfb-979c80de8b6d\",\"as\":\"default\"},\"use_selection1\":{\"use\":\"4815e1c7-a433-443d-a112-d1e03d7df84b\",\"as\":\"default\"},\"use_selection2\":{\"use\":\"2dcedd6c-c95b-4a37-9cac-95d28faedca3\",\"as\":\"default\"},\"use_selection3\":{\"use\":\"a5daf189-3345-4b13-8716-c51f686f545b\",\"as\":\"default\"},\"use_selection4\":{\"use\":\"202ccd9e-dfcf-4cde-a0ce-bde1fd27f088\",\"as\":\"default\"}}', 'CS8qKg0KCSAqIFBhY2thZ2UgQ29udGFpbmVyDQoJICoNCgkgKiBAdmFyICAgQ29udGFpbmVyfG51bGwNCgkgKiBAc2luY2UgNS4wLjMNCgkgKiovDQoJcHJvdGVjdGVkIHN0YXRpYyA/Q29udGFpbmVyICRjb250YWluZXIgPSBudWxsOw0KDQoJLyoqDQoJICogQ3JlYXRlIGEgY29udGFpbmVyIG9iamVjdA0KCSAqDQoJICogQHJldHVybiAgQ29udGFpbmVyDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHJvdGVjdGVkIHN0YXRpYyBmdW5jdGlvbiBjcmVhdGVDb250YWluZXIoKTogQ29udGFpbmVyDQoJew0KCQlyZXR1cm4gKG5ldyBDb250YWluZXIoKSkNCgkJCS0+cmVnaXN0ZXJTZXJ2aWNlUHJvdmlkZXIobmV3IFRhYmxlKCkpDQoJCQktPnJlZ2lzdGVyU2VydmljZVByb3ZpZGVyKG5ldyBEYXRhYmFzZSgpKQ0KCQkJLT5yZWdpc3RlclNlcnZpY2VQcm92aWRlcihuZXcgTW9kZWwoKSkNCgkJCS0+cmVnaXN0ZXJTZXJ2aWNlUHJvdmlkZXIobmV3IERhdGEoKSkNCgkJCS0+cmVnaXN0ZXJTZXJ2aWNlUHJvdmlkZXIobmV3IEZpbGUoKSk7DQoJfQ==', '{}', '{}', '', 1, '2024-09-11 00:18:52', 7, '', 1), +(833, '202ccd9e-dfcf-4cde-a0ce-bde1fd27f088', 'JCB.File.Service.File', 'File', 'class', 'File Service Provider\r\n\r\n@since 5.0.3', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '{\"0\":\"-1\"}', 'ServiceProviderInterface', '[[[NamespacePrefix]]]\\Joomla\\[[[ComponentNamespace]]].File.Service.File', 1, '{}', '{}', 'dXNlIEpvb21sYVxESVxDb250YWluZXI7DQp1c2UgSm9vbWxhXERJXFNlcnZpY2VQcm92aWRlckludGVyZmFjZTs=', '{\"use_selection0\":{\"use\":\"12a2a8de-a893-4dbb-a53d-b52de4f6cb0e\",\"as\":\"default\"},\"use_selection1\":{\"use\":\"4144ad3b-2ad5-401f-af0c-a3d856c1e688\",\"as\":\"default\"},\"use_selection2\":{\"use\":\"67a5e0ca-0ff0-4979-9b41-da0b09988016\",\"as\":\"default\"},\"use_selection3\":{\"use\":\"d46c4667-378b-49e8-9782-ffb28d92415a\",\"as\":\"default\"}}', 'CS8qKg0KCSAqIFJlZ2lzdGVycyB0aGUgc2VydmljZSBwcm92aWRlciB3aXRoIGEgREkgY29udGFpbmVyLg0KCSAqDQoJICogQHBhcmFtICAgQ29udGFpbmVyICAkY29udGFpbmVyICBUaGUgREkgY29udGFpbmVyLg0KCSAqDQoJICogQHJldHVybiAgdm9pZA0KCSAqIEBzaW5jZSA1LjAuMw0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiByZWdpc3RlcihDb250YWluZXIgJGNvbnRhaW5lcikNCgl7DQoJCSRjb250YWluZXItPmFsaWFzKFR5cGU6OmNsYXNzLCAnRmlsZS5UeXBlJykNCgkJCS0+c2hhcmUoJ0ZpbGUuVHlwZScsIFskdGhpcywgJ2dldFR5cGUnXSwgdHJ1ZSk7DQoNCgkJJGNvbnRhaW5lci0+YWxpYXMoSGFuZGxlcjo6Y2xhc3MsICdGaWxlLkhhbmRsZXInKQ0KCQkJLT5zaGFyZSgnRmlsZS5IYW5kbGVyJywgWyR0aGlzLCAnZ2V0SGFuZGxlciddLCB0cnVlKTsNCg0KCQkkY29udGFpbmVyLT5hbGlhcyhNYW5hZ2VyOjpjbGFzcywgJ0ZpbGUuTWFuYWdlcicpDQoJCQktPnNoYXJlKCdGaWxlLk1hbmFnZXInLCBbJHRoaXMsICdnZXRNYW5hZ2VyJ10sIHRydWUpOw0KDQoJCSRjb250YWluZXItPmFsaWFzKERpc3BsYXk6OmNsYXNzLCAnRmlsZS5EaXNwbGF5JykNCgkJCS0+c2hhcmUoJ0ZpbGUuRGlzcGxheScsIFskdGhpcywgJ2dldERpc3BsYXknXSwgdHJ1ZSk7DQoJfQ0KDQoJLyoqDQoJICogR2V0IFRoZSBUeXBlIENsYXNzLg0KCSAqDQoJICogQHBhcmFtICAgQ29udGFpbmVyICAkY29udGFpbmVyICBUaGUgREkgY29udGFpbmVyLg0KCSAqDQoJICogQHJldHVybiAgVHlwZQ0KCSAqIEBzaW5jZSA1LjAuMw0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBnZXRUeXBlKENvbnRhaW5lciAkY29udGFpbmVyKTogVHlwZQ0KCXsNCgkJcmV0dXJuIG5ldyBUeXBlKA0KCQkJJGNvbnRhaW5lci0+Z2V0KCdEYXRhLkl0ZW0nKQ0KCQkpOw0KCX0NCg0KCS8qKg0KCSAqIEdldCBUaGUgSGFuZGxlciBDbGFzcy4NCgkgKg0KCSAqIEBwYXJhbSAgIENvbnRhaW5lciAgJGNvbnRhaW5lciAgVGhlIERJIGNvbnRhaW5lci4NCgkgKg0KCSAqIEByZXR1cm4gIEhhbmRsZXINCgkgKiBAc2luY2UgNS4wLjMNCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZ2V0SGFuZGxlcihDb250YWluZXIgJGNvbnRhaW5lcik6IEhhbmRsZXINCgl7DQoJCXJldHVybiBuZXcgSGFuZGxlcigpOw0KCX0NCg0KCS8qKg0KCSAqIEdldCBUaGUgTWFuYWdlciBDbGFzcy4NCgkgKg0KCSAqIEBwYXJhbSAgIENvbnRhaW5lciAgJGNvbnRhaW5lciAgVGhlIERJIGNvbnRhaW5lci4NCgkgKg0KCSAqIEByZXR1cm4gIE1hbmFnZXINCgkgKiBAc2luY2UgNS4wLjMNCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZ2V0TWFuYWdlcihDb250YWluZXIgJGNvbnRhaW5lcik6IE1hbmFnZXINCgl7DQoJCXJldHVybiBuZXcgTWFuYWdlcigNCgkJCSRjb250YWluZXItPmdldCgnRGF0YS5JdGVtJyksDQoJCQkkY29udGFpbmVyLT5nZXQoJ0RhdGEuSXRlbXMnKSwNCgkJCSRjb250YWluZXItPmdldCgnRmlsZS5UeXBlJyksDQoJCQkkY29udGFpbmVyLT5nZXQoJ0ZpbGUuSGFuZGxlcicpDQoJCSk7DQoJfQ0KDQoJLyoqDQoJICogR2V0IFRoZSBEaXNwbGF5IENsYXNzLg0KCSAqDQoJICogQHBhcmFtICAgQ29udGFpbmVyICAkY29udGFpbmVyICBUaGUgREkgY29udGFpbmVyLg0KCSAqDQoJICogQHJldHVybiAgRGlzcGxheQ0KCSAqIEBzaW5jZSA1LjAuMw0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBnZXREaXNwbGF5KENvbnRhaW5lciAkY29udGFpbmVyKTogRGlzcGxheQ0KCXsNCgkJcmV0dXJuIG5ldyBEaXNwbGF5KA0KCQkJJGNvbnRhaW5lci0+Z2V0KCdEYXRhLkl0ZW0nKSwNCgkJCSRjb250YWluZXItPmdldCgnRGF0YS5JdGVtcycpDQoJCSk7DQoJfQ==', '{}', '{}', '', 1, '2024-09-11 00:20:31', 16, '', 1), +(834, '4144ad3b-2ad5-401f-af0c-a3d856c1e688', 'Joomla.File.Handler', 'Handler', 'final class', 'File Handler Class\r\n\r\n@since 5.0.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIwDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', 'd7600b43-771a-4747-9f5d-952765721799', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\[[[ComponentNamespace]]].File.Handler', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIFNldCB0aGUgJHVzZVN0cmVhbXMgcHJvcGVydHkgdG8gdXNlIHN0cmVhbXMgZm9yIGZpbGUgaGFuZGxpbmcNCgkgKg0KCSAqIEBwYXJhbSAgIGJvb2wgICR1c2VTdHJlYW1zICBUcnVlIHRvIHVzZSBzdHJlYW1zLCBmYWxzZSBvdGhlcndpc2UuDQoJICoNCgkgKiBAcmV0dXJuICBzZWxmICBSZXR1cm5zIHRoZSBjdXJyZW50IGluc3RhbmNlIHRvIGFsbG93IGZvciBtZXRob2QgY2hhaW5pbmcuDQoJICogQHNpbmNlICAgNS4wLjMNCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gc2V0VXNlU3RyZWFtcyhib29sICR1c2VTdHJlYW1zKTogc2VsZg0KCXsNCgkJc3RhdGljOjokdXNlU3RyZWFtcyA9ICR1c2VTdHJlYW1zOw0KDQoJCXJldHVybiAkdGhpczsNCgl9DQoNCgkvKioNCgkgKiBTZXQgdGhlICRhbGxvd1Vuc2FmZSBwcm9wZXJ0eSB0byBhbGxvdyBvciBkaXNhbGxvdyB1bnNhZmUgZmlsZSB1cGxvYWRzLg0KCSAqDQoJICogQHBhcmFtICAgYm9vbCAgJGFsbG93VW5zYWZlICBUcnVlIHRvIGFsbG93IHVuc2FmZSBmaWxlIHVwbG9hZHMsIGZhbHNlIG90aGVyd2lzZS4NCgkgKg0KCSAqIEByZXR1cm4gIHNlbGYgIFJldHVybnMgdGhlIGN1cnJlbnQgaW5zdGFuY2UgdG8gYWxsb3cgZm9yIG1ldGhvZCBjaGFpbmluZy4NCgkgKiBAc2luY2UgICA1LjAuMw0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBzZXRBbGxvd1Vuc2FmZShib29sICRhbGxvd1Vuc2FmZSk6IHNlbGYNCgl7DQoJCXN0YXRpYzo6JGFsbG93VW5zYWZlID0gJGFsbG93VW5zYWZlOw0KDQoJCXJldHVybiAkdGhpczsNCgl9DQoNCgkvKioNCgkgKiBTZXQgdGhlICRzYWZlRmlsZU9wdGlvbnMgcHJvcGVydHkgdG8gZGVmaW5lIG9wdGlvbnMgZm9yIGZpbGUgc2FmZXR5IGNoZWNrcy4NCgkgKg0KCSAqIEBwYXJhbSAgIGFycmF5ICAkc2FmZUZpbGVPcHRpb25zICBBbiBhcnJheSBvZiBvcHRpb25zIGZvciBJbnB1dEZpbHRlcjo6aXNTYWZlRmlsZS4NCgkgKg0KCSAqIEByZXR1cm4gIHNlbGYgIFJldHVybnMgdGhlIGN1cnJlbnQgaW5zdGFuY2UgdG8gYWxsb3cgZm9yIG1ldGhvZCBjaGFpbmluZy4NCgkgKiBAc2luY2UgICA1LjAuMw0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBzZXRTYWZlRmlsZU9wdGlvbnMoYXJyYXkgJHNhZmVGaWxlT3B0aW9ucyk6IHNlbGYNCgl7DQoJCXN0YXRpYzo6JHNhZmVGaWxlT3B0aW9ucyA9ICRzYWZlRmlsZU9wdGlvbnM7DQoNCgkJcmV0dXJuICR0aGlzOw0KCX0NCg0KCS8qKg0KCSAqIFNldCB0aGUgJGVucXVldWVFcnJvciBwcm9wZXJ0eSB0byBjb250cm9sIGVycm9yIHJlcG9ydGluZyBiZWhhdmlvci4NCgkgKg0KCSAqIEBwYXJhbSAgIGJvb2wgICRlbnF1ZXVlRXJyb3IgIFRydWUgdG8gZW5xdWV1ZSBlcnJvciBtZXNzYWdlcywgZmFsc2UgdG8gc3RvcmUgdGhlbSBpbiB0aGUgaW50ZXJuYWwgZXJyb3IgYXJyYXkuDQoJICoNCgkgKiBAcmV0dXJuICBzZWxmICBSZXR1cm5zIHRoZSBjdXJyZW50IGluc3RhbmNlIHRvIGFsbG93IGZvciBtZXRob2QgY2hhaW5pbmcuDQoJICogQHNpbmNlICAgNS4wLjMNCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gc2V0RW5xdWV1ZUVycm9yKGJvb2wgJGVucXVldWVFcnJvcik6IHNlbGYNCgl7DQoJCXN0YXRpYzo6JGVucXVldWVFcnJvciA9ICRlbnF1ZXVlRXJyb3I7DQoNCgkJcmV0dXJuICR0aGlzOw0KCX0NCg0KCS8qKg0KCSAqIFNldCB0aGUgJGxlZ2FsRm9ybWF0cyBwcm9wZXJ0eSB0byBkZWZpbmUgbGVnYWwgZmlsZSBmb3JtYXRzLg0KCSAqDQoJICogQHBhcmFtICAgYXJyYXkgICRsZWdhbEZvcm1hdHMgIEFuIGFycmF5IG9mIGFsbG93ZWQgZmlsZSBmb3JtYXRzIChlLmcuLCBbJ2pwZycsICdwbmcnXSkuDQoJICoNCgkgKiBAcmV0dXJuICBzZWxmICBSZXR1cm5zIHRoZSBjdXJyZW50IGluc3RhbmNlIHRvIGFsbG93IGZvciBtZXRob2QgY2hhaW5pbmcuDQoJICogQHNpbmNlICAgNS4wLjMNCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gc2V0TGVnYWxGb3JtYXRzKGFycmF5ICRsZWdhbEZvcm1hdHMpOiBzZWxmDQoJew0KCQlzdGF0aWM6OiRsZWdhbEZvcm1hdHMgPSAkbGVnYWxGb3JtYXRzOw0KDQoJCXJldHVybiAkdGhpczsNCgl9DQoNCgkvKioNCgkgKiBHZXQgYSBmaWxlIGZyb20gdGhlIGlucHV0IGJhc2VkIG9uIGZpZWxkIG5hbWUgYW5kIGZpbGUgdHlwZSwgdGhlbiBwcm9jZXNzIGl0Lg0KCSAqDQoJICogQHBhcmFtICAgc3RyaW5nCSAgICRmaWVsZCAgIFRoZSBpbnB1dCBmaWVsZCBuYW1lIGZvciB0aGUgZmlsZSB1cGxvYWQuDQoJICogQHBhcmFtICAgc3RyaW5nCSAgICR0eXBlCVRoZSB0eXBlIG9mIGZpbGUgKGUuZy4sICdpbWFnZScsICdkb2N1bWVudCcpLg0KCSAqIEBwYXJhbSAgIHN0cmluZ3xudWxsICAkZmlsdGVyICBUaGUgZmlsdGVyIHRvIGFwcGx5IHdoZW4gdXBsb2FkaW5nIHRoZSBmaWxlLg0KCSAqIEBwYXJhbSAgIHN0cmluZ3xudWxsICAkcGF0aAlUaGUgZGlyZWN0b3J5IHBhdGggd2hlcmUgdGhlIGZpbGUgc2hvdWxkIGJlIHNhdmVkLg0KCSAqDQoJICogQHJldHVybiAgYXJyYXl8bnVsbCAgIEZpbGUgZGV0YWlscyBvciBmYWxzZSBvbiBmYWlsdXJlLg0KCSAqIEBzaW5jZSAgIDMuMC4xMQ0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBnZXRGaWxlKHN0cmluZyAkZmllbGQsIHN0cmluZyAkdHlwZSwgc3RyaW5nICRmaWx0ZXIgPSBudWxsLCBzdHJpbmcgJHBhdGggPSBudWxsKTogP2FycmF5DQoJew0KCQlyZXR1cm4gc3RhdGljOjpnZXQoJGZpZWxkLCAkdHlwZSwgJGZpbHRlciwgJHBhdGgpOw0KCX0NCg0KCS8qKg0KCSAqIEdldCB0aGUgZXJyb3IgbWVzc2FnZXMgYXMgYSBzdHJpbmcuDQoJICoNCgkgKiBAcGFyYW0gIGJvb2wgICAkdG9TdHJpbmcgIFRoZSBvcHRpb24gdG8gcmV0dXJuIGVycm9ycyBhcyBhIHN0cmluZw0KCSAqDQoJICogQHJldHVybiAgc3RyaW5nfGFycmF5ICBSZXR1cm5zIHRoZSBlcnJvciBtZXNzYWdlcyBhcyBhIHNpbmdsZSBjb25jYXRlbmF0ZWQgc3RyaW5nLg0KCSAqIEBzaW5jZSAgIDUuMC4zDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGdldEVycm9ycyhib29sICR0b1N0cmluZyA9IHRydWUpOiBzdHJpbmd8YXJyYXkNCgl7DQoJCXJldHVybiBzdGF0aWM6OmdldEVycm9yKCR0b1N0cmluZyk7DQoJfQ==', '{}', '{}', '', 1, '2024-09-11 21:08:38', 6, '', 1), +(835, '67a5e0ca-0ff0-4979-9b41-da0b09988016', 'Joomla.File.Manager', 'Manager', 'final class', 'File Manager Class\r\n\r\n@since 5.0.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIwDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\[[[ComponentNamespace]]].File.Manager', 1, '{}', '{}', 'dXNlIEpvb21sYVxDTVNcRmFjdG9yeTsNCnVzZSBKb29tbGFcQ01TXFVzZXJcVXNlcjsNCnVzZSBKb29tbGFcQ01TXExhbmd1YWdlXFRleHQ7DQp1c2UgSm9vbWxhXEZpbGVzeXN0ZW1cRmlsZTs=', '{\"use_selection0\":{\"use\":\"05744dd3-4030-4cf8-8dda-a93ab809b473\",\"as\":\"Item\"},\"use_selection1\":{\"use\":\"7212e4db-371f-4cfd-8122-32e9bb100d83\",\"as\":\"Items\"},\"use_selection2\":{\"use\":\"5acded67-0e3d-4c6b-a6ea-b533b076de0c\",\"as\":\"default\"},\"use_selection3\":{\"use\":\"12a2a8de-a893-4dbb-a53d-b52de4f6cb0e\",\"as\":\"default\"},\"use_selection4\":{\"use\":\"4144ad3b-2ad5-401f-af0c-a3d856c1e688\",\"as\":\"default\"},\"use_selection5\":{\"use\":\"f11dc790-713e-4706-9a85-a318ed3ad56e\",\"as\":\"default\"}}', 'CS8qKg0KCSAqIFRoZSBHbG9iYWxseSBVbmlxdWUgSWRlbnRpZmllci4NCgkgKg0KCSAqIEBzaW5jZSA1LjAuMg0KCSAqLw0KCXVzZSBHdWlkOw0KDQoJLyoqDQoJICogVGhlIEl0ZW0gQ2xhc3MuDQoJICoNCgkgKiBAdmFyICAgSXRlbQ0KCSAqIEBzaW5jZSA1LjAuMg0KCSAqLw0KCXByb3RlY3RlZCBJdGVtICRpdGVtOw0KDQoJLyoqDQoJICogVGhlIEl0ZW1zIENsYXNzLg0KCSAqDQoJICogQHZhciAgIEl0ZW1zDQoJICogQHNpbmNlIDUuMC4yDQoJICovDQoJcHJvdGVjdGVkIEl0ZW1zICRpdGVtczsNCg0KCS8qKg0KCSAqIFRoZSBUeXBlIENsYXNzLg0KCSAqDQoJICogQHZhciAgIFR5cGUNCgkgKiBAc2luY2UgNS4wLjINCgkgKi8NCglwcm90ZWN0ZWQgVHlwZSAkdHlwZTsNCg0KCS8qKg0KCSAqIFRoZSBIYW5kbGVyIENsYXNzLg0KCSAqDQoJICogQHZhciAgIEhhbmRsZXINCgkgKiBAc2luY2UgNS4wLjINCgkgKi8NCglwcm90ZWN0ZWQgSGFuZGxlciAkaGFuZGxlcjsNCg0KCS8qKg0KCSAqIFRoZSBhY3RpdmUgdXNlcg0KCSAqDQoJICogQHZhciAgICBVc2VyDQoJICogQHNpbmNlIDUuMC4yDQoJICovDQoJcHJvdGVjdGVkIFVzZXIgJHVzZXI7DQoNCgkvKioNCgkgKiBUYWJsZSBOYW1lDQoJICoNCgkgKiBAdmFyICAgIHN0cmluZw0KCSAqIEBzaW5jZSA1LjAuMg0KCSAqLw0KCXByb3RlY3RlZCBzdHJpbmcgJHRhYmxlID0gJ2ZpbGUnOw0KDQoJLyoqDQoJICogQ29uc3RydWN0b3IuDQoJICoNCgkgKiBAcGFyYW0gSXRlbSAgICAgICRpdGVtICAgICAgVGhlIEl0ZW0gQ2xhc3MuDQoJICogQHBhcmFtIEl0ZW1zICAgICAkaXRlbXMgICAgIFRoZSBJdGVtcyBDbGFzcy4NCgkgKiBAcGFyYW0gVHlwZSAgICAgICR0eXBlICAgICAgVGhlIFR5cGUgQ2xhc3MuDQoJICogQHBhcmFtIEhhbmRsZXIgICAkaGFuZGxlciAgIFRoZSBIYW5kbGVyIENsYXNzLg0KCSAqDQoJICogQHNpbmNlIDUuMC4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KEl0ZW0gJGl0ZW0sIEl0ZW1zICRpdGVtcywgVHlwZSAkdHlwZSwgSGFuZGxlciAkaGFuZGxlcikNCgl7DQoJCSR0aGlzLT5pdGVtID0gJGl0ZW07DQoJCSR0aGlzLT5pdGVtcyA9ICRpdGVtczsNCgkJJHRoaXMtPnR5cGUgPSAkdHlwZTsNCgkJJHRoaXMtPmhhbmRsZXIgPSAkaGFuZGxlcjsNCgkJJHRoaXMtPnVzZXIgPSBGYWN0b3J5OjpnZXRBcHBsaWNhdGlvbigpLT5nZXRJZGVudGl0eSgpOw0KCX0NCg0KCS8qKg0KCSAqIFVwbG9hZCBhIGZpbGUsIG9mIGEgZ2l2ZW4gZmlsZSB0eXBlIGFuZCBsaW5rIGl0IHRvIGFuIGVudGl0eS4NCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmcgJGd1aWQgICAgVGhlIGZpbGUgdHlwZSBndWlkDQoJICogQHBhcmFtIHN0cmluZyAkZW50aXR5ICBUaGUgZW50aXR5IGd1aWQNCgkgKiBAcGFyYW0gc3RyaW5nICR0YXJnZXQgIFRoZSB0YXJnZXQgZW50aXR5IG5hbWUNCgkgKg0KCSAqIEByZXR1cm4gdm9pZA0KCSAqIEB0aHJvd3MgXEludmFsaWRBcmd1bWVudEV4Y2VwdGlvbiBJZiB0aGUgZmlsZSB0eXBlIGlzIG5vdCB2YWxpZC4NCgkgKiBAdGhyb3dzIFxSdW50aW1lRXhjZXB0aW9uIElmIHRoZXJlIGlzIGFuIGVycm9yIGR1cmluZyBmaWxlIHVwbG9hZC4NCgkgKiBAc2luY2UgNS4wLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gdXBsb2FkKHN0cmluZyAkZ3VpZCwgc3RyaW5nICRlbnRpdHksIHN0cmluZyAkdGFyZ2V0KTogdm9pZA0KCXsNCgkJaWYgKCgkZmlsZVR5cGUgPSAkdGhpcy0+dHlwZS0+bG9hZCgkZ3VpZCwgJHRhcmdldCkpID09PSBudWxsKQ0KCQl7DQoJCQl0aHJvdyBuZXcgXEludmFsaWRBcmd1bWVudEV4Y2VwdGlvbihUZXh0OjpzcHJpbnRmKCdGaWxlIHR5cGUgbm90IHZhbGlkIGluICVzIGFyZWEuJywgJHRhcmdldCkpOw0KCQl9DQoNCgkJLy8gbWFrZSBzdXJlIHRoZSB1c2VyIGhhdmUgcGVybWlzc2lvbnMgdG8gdXBsb2FkIHRoaXMgZmlsZSB0eXBlDQoJCWlmICghaW5fYXJyYXkoJGZpbGVUeXBlWydhY2Nlc3MnXSwgJHRoaXMtPnVzZXItPmdldEF1dGhvcmlzZWRWaWV3TGV2ZWxzKCkpKQ0KCQl7DQoJCQl0aHJvdyBuZXcgXEludmFsaWRBcmd1bWVudEV4Y2VwdGlvbihUZXh0OjpzcHJpbnRmKCdZb3UgZG8gbm90IGhhdmUgcGVybWlzc2lvbnMgdG8gdXBsb2FkICglcykuJywgJGZpbGVUeXBlWyduYW1lJ10pKTsNCgkJfQ0KDQoJCSRkZXRhaWxzID0gJHRoaXMtPmhhbmRsZXINCgkJCS0+c2V0RW5xdWV1ZUVycm9yKGZhbHNlKQ0KCQkJLT5zZXRMZWdhbEZvcm1hdHMoJGZpbGVUeXBlWydmb3JtYXRzJ10pDQoJCQktPmdldEZpbGUoDQoJCQkJJGZpbGVUeXBlWydmaWVsZCddLCAgIC8vIFRoZSBpbnB1dCBmaWVsZCBuYW1lDQoJCQkJJGZpbGVUeXBlWyd0eXBlJ10sICAgIC8vIFRoZSBmaWxlIHR5cGUNCgkJCQkkZmlsZVR5cGVbJ2ZpbHRlciddLCAgLy8gVGhlIGZpbHRlciB0byB1c2Ugd2hlbiB1cGxvYWRpbmcgdGhlIGZpbGUNCgkJCQkkZmlsZVR5cGVbJ3BhdGgnXSAgICAgLy8gVGhlIHBhdGggdG8gdGhlIGRpcmVjdG9yeSB3aGVyZSB0aGUgZmlsZSBtdXN0IGJlIHBsYWNlZA0KCQkJKTsNCg0KCQlpZiAoJGRldGFpbHMgPT09IG51bGwpDQoJCXsNCgkJCS8vIFRocm93IGFuIGV4Y2VwdGlvbiBpZiBmaWxlIGRldGFpbHMgY291bGRuJ3QgYmUgcmV0cmlldmVkDQoJCQl0aHJvdyBuZXcgXFJ1bnRpbWVFeGNlcHRpb24oJHRoaXMtPmhhbmRsZXItPmdldEVycm9ycygpKTsNCgkJfQ0KDQoJCS8vIHdlIG1pZ2h0IG5lZWQgdG8gY3JvcCBpbWFnZXMNCgkJaWYgKCRmaWxlVHlwZVsndHlwZSddID09PSAnaW1hZ2UnKQ0KCQl7DQoJCQkvLyAkdGhpcy0+Y3JvcEltYWdlKCRkZXRhaWxzLCAkZ3VpZCk7DQoJCX0NCg0KCQkvLyBzdG9yZSBmaWxlIGluIHRoZSBmaWxlIHRhYmxlDQoJCSR0aGlzLT5pdGVtLT50YWJsZSgkdGhpcy0+Z2V0VGFibGUoKSktPnNldCgNCgkJCSR0aGlzLT5tb2RlbEZpbGVEZXRhaWxzKCRkZXRhaWxzLCAkZ3VpZCwgJGVudGl0eSwgJHRhcmdldCwgJGZpbGVUeXBlKQ0KCQkpOw0KCX0NCg0KCS8qKg0KCSAqIEdldCB0aGUgZmlsZSBkZXRhaWxzIGZvciBkb3dubG9hZA0KCSAqDQoJICogQHBhcmFtIHN0cmluZyAkZ3VpZCBUaGUgZmlsZSBndWlkDQoJICoNCgkgKiBAcmV0dXJuIGFycmF5fG51bGwNCgkgKiBAc2luY2UgNS4wLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZG93bmxvYWQoc3RyaW5nICRndWlkKTogP2FycmF5DQoJew0KCQlpZiAoKCRmaWxlID0gJHRoaXMtPml0ZW0tPnRhYmxlKCR0aGlzLT5nZXRUYWJsZSgpKS0+Z2V0KCRndWlkKSkgIT09IG51bGwgJiYNCgkJCWluX2FycmF5KCRmaWxlLT5hY2Nlc3MsICR0aGlzLT51c2VyLT5nZXRBdXRob3Jpc2VkVmlld0xldmVscygpKSkNCgkJew0KCQkJcmV0dXJuIChhcnJheSkgJGZpbGU7DQoJCX0NCg0KCQlyZXR1cm4gbnVsbDsNCgl9DQoNCgkvKioNCgkgKiBEZWxldGUgYSBmaWxlLg0KCSAqDQoJICogQHBhcmFtIHN0cmluZyAkZ3VpZCAgVGhlIGZpbGUgZ3VpZA0KCSAqDQoJICogQHJldHVybiB2b2lkDQoJICogQHNpbmNlIDUuMC4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGRlbGV0ZShzdHJpbmcgJGd1aWQpOiB2b2lkDQoJew0KCQlpZiAoKCRmaWxlID0gJHRoaXMtPml0ZW0tPnRhYmxlKCR0aGlzLT5nZXRUYWJsZSgpKS0+Z2V0KCRndWlkKSkgIT09IG51bGwgJiYNCgkJCWluX2FycmF5KCRmaWxlLT5hY2Nlc3MsICR0aGlzLT51c2VyLT5nZXRBdXRob3Jpc2VkVmlld0xldmVscygpKSkNCgkJew0KCQkJJHRoaXMtPml0ZW0tPnRhYmxlKCR0aGlzLT5nZXRUYWJsZSgpKS0+ZGVsZXRlKCRndWlkKTsgLy8gZnJvbSBEQg0KDQoJCQlpZiAoaXNfZmlsZSgkZmlsZS0+ZmlsZV9wYXRoKSAmJiBpc193cml0YWJsZSgkZmlsZS0+ZmlsZV9wYXRoKSkNCgkJCXsNCgkJCQlGaWxlOjpkZWxldGUoJGZpbGUtPmZpbGVfcGF0aCk7IC8vIGZyb20gZmlsZSBzeXN0ZW0NCgkJCX0NCgkJfQ0KCX0NCg0KCS8qKg0KCSAqIFNldCB0aGUgY3VycmVudCBhY3RpdmUgdGFibGUNCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmcgJHRhYmxlIFRoZSB0YWJsZSB0aGF0IHNob3VsZCBiZSBhY3RpdmUNCgkgKg0KCSAqIEByZXR1cm4gc2VsZg0KCSAqIEBzaW5jZSAgNS4wLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gdGFibGUoc3RyaW5nICR0YWJsZSk6IHNlbGYNCgl7DQoJCSR0aGlzLT50YWJsZSA9ICR0YWJsZTsNCg0KCQlyZXR1cm4gJHRoaXM7DQoJfQ0KDQoJLyoqDQoJICogR2V0IHRoZSBjdXJyZW50IGFjdGl2ZSB0YWJsZQ0KCSAqDQoJICogQHJldHVybiAgc3RyaW5nDQoJICogQHNpbmNlICAgNS4wLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZ2V0VGFibGUoKTogc3RyaW5nDQoJew0KCQlyZXR1cm4gJHRoaXMtPnRhYmxlOw0KCX0NCg0KCS8qKg0KCSAqIG1vZGVsIHRoZSBmaWxlIGRldGFpbHMgdG8gc3RvcmUgaW4gdGhlIGZpbGUgdGFibGUNCgkgKg0KCSAqIEBwYXJhbSBhcnJheSAgJGRldGFpbHMgICBUaGUgdXBsb2FkZWQgZmlsZSBkZXRhaWxzLg0KCSAqIEBwYXJhbSBzdHJpbmcgJGd1aWQgICAgICBUaGUgZmlsZSB0eXBlIGd1aWQNCgkgKiBAcGFyYW0gc3RyaW5nICRlbnRpdHkgICAgVGhlIGVudGl0eSBndWlkDQoJICogQHBhcmFtIHN0cmluZyAkdGFyZ2V0ICAgIFRoZSB0YXJnZXQgZW50aXR5IG5hbWUNCgkgKiBAcGFyYW0gYXJyYXkgJGZpbGVUeXBlICAgVGhlIGZpbGUgdHlwZQ0KCSAqDQoJICogQHJldHVybiBvYmplY3QNCgkgKiBAc2luY2UgNS4wLjINCgkgKi8NCglwcm90ZWN0ZWQgZnVuY3Rpb24gbW9kZWxGaWxlRGV0YWlscyhhcnJheSAkZGV0YWlscywgc3RyaW5nICRndWlkLCBzdHJpbmcgJGVudGl0eSwgc3RyaW5nICR0YXJnZXQsIGFycmF5ICRmaWxlVHlwZSk6IG9iamVjdA0KCXsNCgkJcmV0dXJuIChvYmplY3QpIFsNCgkJCSduYW1lJyA9PiAkZGV0YWlsc1snbmFtZSddLA0KCQkJJ2ZpbGVfdHlwZScgPT4gJGd1aWQsDQoJCQknZXh0ZW5zaW9uJyA9PiAkZGV0YWlsc1snZXh0ZW5zaW9uJ10gPz8gJ2Vycm9yJywNCgkJCSdzaXplJyA9PiAkZGV0YWlsc1snc2l6ZSddID8/IDAsDQoJCQknbWltZScgPT4gJGRldGFpbHNbJ21pbWUnXSA/PyAnJywNCgkJCSdmaWxlX3BhdGgnID0+ICRkZXRhaWxzWydmdWxsX3BhdGgnXSwNCgkJCSdlbnRpdHlfdHlwZScgPT4gJHRhcmdldCwNCgkJCSdlbnRpdHknID0+ICRlbnRpdHksDQoJCQknYWNjZXNzJyA9PiAkZmlsZVR5cGVbJ2Rvd25sb2FkX2FjY2VzcyddID8/IDEsDQoJCQknZ3VpZCcgPT4gJHRoaXMtPmdldEd1aWQoJ2d1aWQnKSwNCgkJCSdjcmVhdGVkX2J5JyA9PiAkdGhpcy0+dXNlci0+aWQNCgkJXTsNCgl9', '{}', '{}', '', 1, '2024-09-11 21:28:01', 26, '', 1), +(836, 'd46c4667-378b-49e8-9782-ffb28d92415a', 'Joomla.File.Display', 'Display', 'final class', 'File Display Class\r\n\r\n@since 5.0.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIwDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\[[[ComponentNamespace]]].File.Display', 1, '{}', '{}', 'dXNlIEpvb21sYVxDTVNcRmFjdG9yeTsNCnVzZSBKb29tbGFcQ01TXFVyaVxVcmk7DQp1c2UgSm9vbWxhXENNU1xSb3V0ZXJcUm91dGU7', '{\"use_selection0\":{\"use\":\"05744dd3-4030-4cf8-8dda-a93ab809b473\",\"as\":\"Item\"},\"use_selection1\":{\"use\":\"7212e4db-371f-4cfd-8122-32e9bb100d83\",\"as\":\"Items\"}}', 'CS8qKg0KCSAqIFRoZSBJdGVtIENsYXNzLg0KCSAqDQoJICogQHZhciAgIEl0ZW0NCgkgKiBAc2luY2UgNS4wLjINCgkgKi8NCglwcm90ZWN0ZWQgSXRlbSAkaXRlbTsNCg0KCS8qKg0KCSAqIFRoZSBJdGVtcyBDbGFzcy4NCgkgKg0KCSAqIEB2YXIgICBJdGVtcw0KCSAqIEBzaW5jZSA1LjAuMg0KCSAqLw0KCXByb3RlY3RlZCBJdGVtcyAkaXRlbXM7DQoNCgkvKioNCgkgKiBUaGUgZmlsZSBzaXRlIHVybA0KCSAqDQoJICogQHZhciAgIHN0cmluZw0KCSAqIEBzaW5jZSA1LjAuMg0KCSAqLw0KCXByb3RlY3RlZCBzdHJpbmcgJHVybDsNCg0KCS8qKg0KCSAqIFRoZSBmaWxlIHR5cGVzDQoJICoNCgkgKiBAdmFyICAgYXJyYXkNCgkgKiBAc2luY2UgNS4wLjINCgkgKi8NCglwcm90ZWN0ZWQgYXJyYXkgJGZpbGVUeXBlczsNCg0KCS8qKg0KCSAqIFRoZSBhY3RpdmUgdXNlciBhY2Nlc3MNCgkgKg0KCSAqIEB2YXIgICAgYXJyYXkNCgkgKiBAc2luY2UgNS4wLjINCgkgKi8NCglwcm90ZWN0ZWQgYXJyYXkgJGFjY2VzczsNCg0KCS8qKg0KCSAqIFRoZSBGaWxlIFR5cGUgVGFzaw0KCSAqDQoJICogQHZhciAgICBhcnJheQ0KCSAqIEBzaW5jZSAgNS4wLjINCgkgKi8NCglwcm90ZWN0ZWQgYXJyYXkgJGZpbGVUeXBlVGFza3MgPSBbMSA9PiAnaW1hZ2UnICwgMiA9PiAnZmlsZScgLCAzID0+ICdtZWRpYScsIDQgPT4gJ2ZpbGUnXTsNCg0KCS8qKg0KCSAqIENvbnN0cnVjdG9yLg0KCSAqDQoJICogQHBhcmFtIEl0ZW0gICAgJGl0ZW0gICAgVGhlIEl0ZW0gQ2xhc3MuDQoJICogQHBhcmFtIEl0ZW1zICAgJGl0ZW1zICAgVGhlIEl0ZW1zIENsYXNzLg0KCSAqDQoJICogQHNpbmNlIDUuMC4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KEl0ZW0gJGl0ZW0sIEl0ZW1zICRpdGVtcywgKQ0KCXsNCgkJJHRoaXMtPml0ZW0gPSAkaXRlbTsNCgkJJHRoaXMtPml0ZW1zID0gJGl0ZW1zOw0KCQkkdGhpcy0+dXJsID0gcnRyaW0oVXJpOjpyb290KCksICcvJyk7DQoNCgkJJHVzZXIgPSBGYWN0b3J5OjpnZXRBcHBsaWNhdGlvbigpLT5nZXRJZGVudGl0eSgpOw0KCQkkdGhpcy0+YWNjZXNzID0gJHVzZXItPmdldEF1dGhvcmlzZWRWaWV3TGV2ZWxzKCk7DQoJfQ0KDQoJLyoqDQoJICogR2V0IHRoZSBmaWxlIGRhdGEgdGhhdCBiZWxvbmcgdG8gdGhpcyBlbnRpdHkNCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmcgJGVudGl0eSAgVGhlIGVudGl0eSBndWlkDQoJICogQHBhcmFtIHN0cmluZyAkdGFyZ2V0ICBUaGUgdGFyZ2V0IGVudGl0eSBuYW1lDQoJICoNCgkgKiBAcmV0dXJuIGFycmF5fG51bGwNCgkgKiBAc2luY2UgNS4wLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZ2V0KHN0cmluZyAkZW50aXR5LCBzdHJpbmcgJHRhcmdldCk6ID9hcnJheQ0KCXsNCgkJaWYgKCgkZmlsZXMgPSAkdGhpcy0+aXRlbXMtPnRhYmxlKCdmaWxlJyktPmdldChbJGVudGl0eV0sICdlbnRpdHknKSkgIT09IG51bGwpDQoJCXsNCgkJCWZvcmVhY2ggKCRmaWxlcyBhcyAkbiA9PiAkZmlsZSkNCgkJCXsNCgkJCQlpZiAoJGZpbGUtPmVudGl0eV90eXBlICE9PSAkdGFyZ2V0IHx8DQoJCQkJCSFpbl9hcnJheSgkZmlsZS0+YWNjZXNzLCAkdGhpcy0+YWNjZXNzKSkNCgkJCQl7DQoJCQkJCXVuc2V0KCRmaWxlc1skbl0pOw0KCQkJCQljb250aW51ZTsNCgkJCQl9DQoJCQkJJHRoaXMtPnNldEZpbGVUeXBlVGFzaygkZmlsZSk7DQoJCQkJJHRoaXMtPnNldEZpbGVUeXBlTmFtZSgkZmlsZSk7DQoJCQkJJHRoaXMtPnNldEZpbGVEb3dubG9hZExpbmsoJGZpbGUpOw0KCQkJfQ0KDQoJCQkvLyBJZiB0aGUgJGZpbGVzIGFycmF5IGlzIGVtcHR5LCByZXR1cm4gbnVsbA0KCQkJcmV0dXJuICFlbXB0eSgkZmlsZXMpID8gJGZpbGVzIDogbnVsbDsNCgkJfQ0KDQoJCXJldHVybiBudWxsOw0KCX0NCg0KCS8qKg0KCSAqIEFkZCB0aGUgZmlsZSB0eXBlIG5hbWUgdG8gdGhpcyBmaWxlDQoJICoNCgkgKiBAcGFyYW0gb2JqZWN0ICRmaWxlICAgVGhlIGZpbGUgYmVpbmcgdXBkYXRlZA0KCSAqDQoJICogQHJldHVybiB2b2lkDQoJICogQHNpbmNlICA1LjAuMg0KCSAqLw0KCXByb3RlY3RlZCBmdW5jdGlvbiBzZXRGaWxlVHlwZU5hbWUob2JqZWN0ICYkZmlsZSk6IHZvaWQNCgl7DQoJCWlmICgoJGZpbGVUeXBlID0gJHRoaXMtPmdldEZpbGVUeXBlKCRmaWxlLT5maWxlX3R5cGUgPz8gbnVsbCkpICE9PSBudWxsKQ0KCQl7DQoJCQkkZmlsZS0+dHlwZV9uYW1lID0gJGZpbGVUeXBlLT5uYW1lOw0KCQl9DQoJCWVsc2UNCgkJew0KCQkJJGZpbGUtPnR5cGVfbmFtZSA9ICdlcnJvcic7DQoJCX0NCgl9DQoNCgkvKioNCgkgKiBBZGQgdGhlIGZpbGUgdHlwZSB0YXNrIHRvIHRoaXMgZmlsZQ0KCSAqDQoJICogQHBhcmFtIG9iamVjdCAkZmlsZSAgIFRoZSBmaWxlIGJlaW5nIHVwZGF0ZWQNCgkgKg0KCSAqIEByZXR1cm4gdm9pZA0KCSAqIEBzaW5jZSAgNS4wLjINCgkgKi8NCglwcm90ZWN0ZWQgZnVuY3Rpb24gc2V0RmlsZVR5cGVUYXNrKG9iamVjdCAmJGZpbGUpOiB2b2lkDQoJew0KCQlpZiAoKCRmaWxlVHlwZSA9ICR0aGlzLT5nZXRGaWxlVHlwZSgkZmlsZS0+ZmlsZV90eXBlID8/IG51bGwpKSAhPT0gbnVsbCkNCgkJew0KCQkJJGZpbGUtPnRhc2sgPSAkdGhpcy0+Z2V0RmlsZVR5cGVUYXNrKCRmaWxlVHlwZSk7DQoJCX0NCgl9DQoNCgkvKioNCgkgKiBBZGQgdGhlIGZpbGUgZG93bmxvYWQgbGluaw0KCSAqDQoJICogQHBhcmFtIG9iamVjdCAkZmlsZSAgIFRoZSBmaWxlIGJlaW5nIHVwZGF0ZWQNCgkgKg0KCSAqIEByZXR1cm4gdm9pZA0KCSAqIEBzaW5jZSAgNS4wLjINCgkgKi8NCglwcm90ZWN0ZWQgZnVuY3Rpb24gc2V0RmlsZURvd25sb2FkTGluayhvYmplY3QgJiRmaWxlKTogdm9pZA0KCXsNCgkJaWYgKGlzc2V0KCRmaWxlLT50YXNrKSkNCgkJew0KCQkJLy8gQnVpbGQgdGhlIHF1ZXJ5IHBhcmFtZXRlcnMNCgkJCSRxdWVyeVBhcmFtcyA9IFsNCgkJCQknb3B0aW9uJyA9PiAnY29tX1tbW2NvbXBvbmVudF1dXScsDQoJCQkJJ2NvbnRyb2xsZXInID0+ICdkb3dubG9hZCcsDQoJCQkJJ3Rhc2snID0+ICdkb3dubG9hZC4nIC4gJGZpbGUtPnRhc2ssDQoJCQkJJ2ZpbGUnID0+ICRmaWxlLT5ndWlkLA0KCQkJCSduYW1lJyA9PiAkZmlsZS0+bmFtZQ0KCQkJXTsNCg0KCQkJLy8gQnVpbGQgdGhlIGZ1bGwgVVJMDQoJCQkkZmlsZS0+bGluayA9ICAkdGhpcy0+dXJsIC4gUm91dGU6Ol8oJ2luZGV4LnBocD8nIC4gaHR0cF9idWlsZF9xdWVyeSgkcXVlcnlQYXJhbXMpKTsNCgkJfQ0KCX0NCg0KCS8qKg0KCSAqIFJldHJpZXZlcyB0aGUgZmlsZSB0eXBlIHRhc2sgbmFtZQ0KCSAqDQoJICogQHBhcmFtIG9iamVjdCAgJGRhdGEgICBUaGUgdHlwZSBkYXRhIGFycmF5DQoJICoNCgkgKiBAcmV0dXJuIHN0cmluZyAgIFRoZSBmaWVsZCBuYW1lDQoJICogQHNpbmNlICA1LjAuMg0KCSAqLw0KCXByb3RlY3RlZCBmdW5jdGlvbiBnZXRGaWxlVHlwZVRhc2sob2JqZWN0ICRkYXRhKTogc3RyaW5nDQoJew0KCQkkdHlwZSA9ICRkYXRhLT50eXBlID8/IDQ7DQoJCWlmIChpc3NldCgkdGhpcy0+ZmlsZVR5cGVUYXNrc1skdHlwZV0pKQ0KCQl7DQoJCQlyZXR1cm4gJHRoaXMtPmZpbGVUeXBlVGFza3NbJHR5cGVdOw0KCQl9DQoJCXJldHVybiAnZmlsZSc7DQoJfQ0KDQoJLyoqDQoJICogUmV0cmlldmVzIHRoZSBmaWxlIHR5cGUgZGV0YWlscw0KCSAqDQoJICogQHBhcmFtIHN0cmluZ3xudWxsICRndWlkICAgVGhlIEdVSUQgKEdsb2JhbGx5IFVuaXF1ZSBJZGVudGlmaWVyKSB1c2VkIGFzIHRoZSBrZXkgdG8gcmV0cmlldmUgdGhlIGZpbGUgdHlwZS4NCgkgKg0KCSAqIEByZXR1cm4gb2JqZWN0fG51bGwgICBUaGUgaXRlbSBvYmplY3QgaWYgZm91bmQsIG9yIG51bGwgaWYgdGhlIGl0ZW0gZG9lcyBub3QgZXhpc3QuDQoJICogQHNpbmNlICA1LjAuMg0KCSAqLw0KCXByb3RlY3RlZCBmdW5jdGlvbiBnZXRGaWxlVHlwZSg/c3RyaW5nICRndWlkKTogP29iamVjdA0KCXsNCgkJaWYgKCRndWlkID09PSBudWxsKQ0KCQl7DQoJCQlyZXR1cm4gbnVsbDsNCgkJfQ0KDQoJCWlmIChpc3NldCgkdGhpcy0+ZmlsZVR5cGVzWyRndWlkXSkpDQoJCXsNCgkJCXJldHVybiAkdGhpcy0+ZmlsZVR5cGVzWyRndWlkXTsNCgkJfQ0KDQoJCSR0aGlzLT5maWxlVHlwZXNbJGd1aWRdID0gICR0aGlzLT5pdGVtLT50YWJsZSgnZmlsZV90eXBlJyktPmdldCgkZ3VpZCk7DQoNCgkJcmV0dXJuICR0aGlzLT5maWxlVHlwZXNbJGd1aWRdOw0KCX0=', '{}', '{}', '', 1, '2024-09-11 23:40:45', 17, '', 1), +(839, '61d1146f-2c2e-4e42-8492-d076f945cf35', 'JCB.Interfaces.Spreadsheet.FileReaderInterface', 'FileReaderInterface', 'interface', 'Spreadsheet File Reader Interface\r\n\r\n@since 3.2.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\[[[ComponentNamespace]]].Interfaces.Spreadsheet.FileReaderInterface', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIFN0cmVhbSByb3dzIGZyb20gYSBDU1Ygb3IgRXhjZWwgZmlsZSBvbmUgYnkgb25lIHVzaW5nIHlpZWxkLg0KCSAqDQoJICogQHBhcmFtIHN0cmluZyAgJGZpbGVQYXRoICAgIFRoZSBwYXRoIHRvIHRoZSBmaWxlLg0KCSAqIEBwYXJhbSBpbnQgICAgICRzdGFydFJvdyAgICBUaGUgc3RhcnRpbmcgcm93IGluZGV4Lg0KCSAqIEBwYXJhbSBpbnQgICAgICRjaHVua1NpemUgICBUaGUgbnVtYmVyIG9mIHJvd3MgdG8gcmVhZCBwZXIgY2h1bmsuDQoJICoNCgkgKiBAcmV0dXJuIFxHZW5lcmF0b3IgICAgQSBnZW5lcmF0b3IgdGhhdCB5aWVsZHMgZWFjaCByb3cgYXMgYW4gYXJyYXkuDQoJICogQHNpbmNlIDMuMi4wDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIHJlYWQoc3RyaW5nICRmaWxlUGF0aCwgaW50ICRzdGFydFJvdywgaW50ICRjaHVua1NpemUpOiBcR2VuZXJhdG9yOw==', '{}', '{}', '', 1, '2019-04-03 07:42:37', 13, '', 1), +(840, 'dcb0e061-f337-44f7-87f2-f5c5fb9ce917', 'JCB.Spreadsheet.FileReader', 'FileReader', 'final class', 'Spreadsheet File Reader Class\r\n\r\n@since 3.2.0', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '{\"0\":\"61d1146f-2c2e-4e42-8492-d076f945cf35\"}', '', '[[[NamespacePrefix]]]\\Joomla\\[[[ComponentNamespace]]].Spreadsheet.FileReader', '', '{}', '{}', '', '{\"use_selection0\":{\"use\":\"9ae018a5-9064-40ed-ad69-9c1ed2a459f5\",\"as\":\"default\"}}', 'CS8qKg0KCSAqIFN0cmVhbSByb3dzIGZyb20gYSBDU1Ygb3IgRXhjZWwgZmlsZSBvbmUgYnkgb25lIHVzaW5nIHlpZWxkLg0KCSAqDQoJICogQHBhcmFtIHN0cmluZyAgJGZpbGVQYXRoICAgIFRoZSBwYXRoIHRvIHRoZSBmaWxlLg0KCSAqIEBwYXJhbSBpbnQgICAgICRzdGFydFJvdyAgICBUaGUgc3RhcnRpbmcgcm93IGluZGV4Lg0KCSAqIEBwYXJhbSBpbnQgICAgICRjaHVua1NpemUgICBUaGUgbnVtYmVyIG9mIHJvd3MgdG8gcmVhZCBwZXIgY2h1bmsuDQoJICoNCgkgKiBAcmV0dXJuIFxHZW5lcmF0b3IgICAgQSBnZW5lcmF0b3IgdGhhdCB5aWVsZHMgZWFjaCByb3cgYXMgYW4gYXJyYXkuDQoJICogQHRocm93cyBcSW52YWxpZEFyZ3VtZW50RXhjZXB0aW9uIElmIHRoZSBmaWxlIGRvZXMgbm90IGV4aXN0Lg0KCSAqIEB0aHJvd3MgXE91dE9mUmFuZ2VFeGNlcHRpb24gSWYgdGhlIHN0YXJ0IHJvdyBpcyBiZXlvbmQgdGhlIGhpZ2hlc3Qgcm93LCBubyByb3dzIGNhbiBiZSBwcm9jZXNzZWQuDQoJICogQHRocm93cyBSZWFkZXJFeGNlcHRpb24gSWYgdGhlcmUgaXMgYW4gZXJyb3IgaWRlbnRpZnlpbmcgb3IgcmVhZGluZyB0aGUgZmlsZS4NCgkgKiBAdGhyb3dzIFNwcmVhZHNoZWV0RXhjZXB0aW9uIElmIHRoZXJlIGlzIGFuIGVycm9yIHdvcmtpbmcgd2l0aCB0aGUgc3ByZWFkc2hlZXQuDQoJICogQHNpbmNlIDMuMi4wDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIHJlYWQoc3RyaW5nICRmaWxlUGF0aCwgaW50ICRzdGFydFJvdywgaW50ICRjaHVua1NpemUpOiBcR2VuZXJhdG9yDQoJew0KCQkvLyBDaGVjayBpZiB0aGUgZmlsZSBleGlzdHMNCgkJaWYgKCFpc19maWxlKCRmaWxlUGF0aCkpDQoJCXsNCgkJCXRocm93IG5ldyBcSW52YWxpZEFyZ3VtZW50RXhjZXB0aW9uKCJGaWxlIG5vdCBmb3VuZDogJGZpbGVQYXRoIik7DQoJCX0NCg0KCQl0cnkgew0KCQkJLy8gSWRlbnRpZnkgZmlsZSB0eXBlIGFuZCBjcmVhdGUgcmVhZGVyDQoJCQkkaW5wdXRGaWxlVHlwZSA9IElPRmFjdG9yeTo6aWRlbnRpZnkoJGZpbGVQYXRoKTsNCgkJCSRyZWFkZXIgPSBJT0ZhY3Rvcnk6OmNyZWF0ZVJlYWRlcigkaW5wdXRGaWxlVHlwZSk7DQoJCQkkcmVhZGVyLT5zZXRSZWFkRGF0YU9ubHkodHJ1ZSk7DQoNCgkJCS8vIExvYWQgdGhlIGVudGlyZSBzcHJlYWRzaGVldCB0byBkZXRlcm1pbmUgdGhlIGhpZ2hlc3Qgcm93DQoJCQkkc3ByZWFkc2hlZXQgPSAkcmVhZGVyLT5sb2FkKCRmaWxlUGF0aCk7DQoJCQkkd29ya3NoZWV0ID0gJHNwcmVhZHNoZWV0LT5nZXRBY3RpdmVTaGVldCgpOw0KCQkJJGhpZ2hlc3RSb3cgPSAkd29ya3NoZWV0LT5nZXRIaWdoZXN0Um93KCk7IC8vIEdldCB0aGUgaGlnaGVzdCByb3cgbnVtYmVyIGluIHRoZSBzaGVldA0KDQoJCQkvLyBEaXNjb25uZWN0IGFuZCBmcmVlIG1lbW9yeSBhZnRlciBmZXRjaGluZyB0aGUgaGlnaGVzdCByb3cNCgkJCSRzcHJlYWRzaGVldC0+ZGlzY29ubmVjdFdvcmtzaGVldHMoKTsNCgkJCXVuc2V0KCRzcHJlYWRzaGVldCk7DQoNCgkJCS8vIElmIHRoZSBzdGFydCByb3cgaXMgYmV5b25kIHRoZSBoaWdoZXN0IHJvdywgbm8gcm93cyBjYW4gYmUgcHJvY2Vzc2VkDQoJCQlpZiAoJHN0YXJ0Um93ID4gJGhpZ2hlc3RSb3cpDQoJCQl7DQoJCQkJdGhyb3cgbmV3IFxPdXRPZlJhbmdlRXhjZXB0aW9uKCJTdGFydCByb3cgKCRzdGFydFJvdykgaXMgYmV5b25kIGhpZ2hlc3Qgcm93ICgkaGlnaGVzdFJvdykiKTsNCgkJCX0NCg0KCQkJLy8gSW5pdGlhbGl6ZSB2YXJpYWJsZXMgZm9yIHJvdyBwcm9jZXNzaW5nDQoJCQkkdG90YWxSb3dzID0gJHN0YXJ0Um93Ow0KDQoJCQlkbyB7DQoJCQkJLy8gQ2FsY3VsYXRlIHRoZSBsYXN0IHJvdyBpbiB0aGUgY3VycmVudCBjaHVuaw0KCQkJCSRlbmRSb3cgPSBtaW4oJHRvdGFsUm93cyArICRjaHVua1NpemUgLSAxLCAkaGlnaGVzdFJvdyk7DQoNCgkJCQkvLyBTZXQgdXAgYSBuZXcgY2h1bmsgZmlsdGVyIGZvciB0aGUgY3VycmVudCBjaHVuaw0KCQkJCSRjaHVua0ZpbHRlciA9IG5ldyBDaHVua1JlYWRGaWx0ZXIoJHRvdGFsUm93cywgJGVuZFJvdyk7DQoJCQkJJHJlYWRlci0+c2V0UmVhZEZpbHRlcigkY2h1bmtGaWx0ZXIpOw0KDQoJCQkJLy8gUmVsb2FkIHRoZSBjaHVuayBpbnRvIHRoZSBzcHJlYWRzaGVldA0KCQkJCSRzcHJlYWRzaGVldCA9ICRyZWFkZXItPmxvYWQoJGZpbGVQYXRoKTsNCgkJCQkkd29ya3NoZWV0ID0gJHNwcmVhZHNoZWV0LT5nZXRBY3RpdmVTaGVldCgpOw0KDQoJCQkJLy8gSXRlcmF0ZSB0aHJvdWdoIHRoZSByb3dzIGluIHRoZSBjdXJyZW50IGNodW5rDQoJCQkJZm9yZWFjaCAoJHdvcmtzaGVldC0+Z2V0Um93SXRlcmF0b3IoJHRvdGFsUm93cywgJGVuZFJvdykgYXMgJHJvdykNCgkJCQl7DQoJCQkJCXlpZWxkICRyb3c7DQoNCgkJCQkJLy8gVXBkYXRlIHRoZSByb3cgaW5kZXggZm9yIHRoZSBuZXh0IGNodW5rDQoJCQkJCSR0b3RhbFJvd3MgPSAkcm93LT5nZXRSb3dJbmRleCgpICsgMTsNCgkJCQl9DQoNCgkJCQkvLyBEaXNjb25uZWN0IHRoZSBzcHJlYWRzaGVldCB0byBmcmVlIG1lbW9yeQ0KCQkJCSRzcHJlYWRzaGVldC0+ZGlzY29ubmVjdFdvcmtzaGVldHMoKTsNCgkJCQl1bnNldCgkc3ByZWFkc2hlZXQpOw0KDQoJCQl9IHdoaWxlICgkdG90YWxSb3dzIDw9ICRoaWdoZXN0Um93KTsgLy8gQ29udGludWUgcmVhZGluZyB3aGlsZSB3aXRoaW4gdGhlIHJvdyBsaW1pdA0KDQoJCX0gY2F0Y2ggKFJlYWRlckV4Y2VwdGlvbiAkZSkgew0KCQkJdGhyb3cgbmV3IFJlYWRlckV4Y2VwdGlvbigiRXJyb3IgcmVhZGluZyB0aGUgZmlsZTogIiAuICRlLT5nZXRNZXNzYWdlKCksICRlLT5nZXRDb2RlKCksICRlKTsNCgkJfSBjYXRjaCAoU3ByZWFkc2hlZXRFeGNlcHRpb24gJGUpIHsNCgkJCXRocm93IG5ldyBTcHJlYWRzaGVldEV4Y2VwdGlvbigiRXJyb3Igd2l0aCB0aGUgc3ByZWFkc2hlZXQ6ICIgLiAkZS0+Z2V0TWVzc2FnZSgpLCAkZS0+Z2V0Q29kZSgpLCAkZSk7DQoJCX0NCgl9', '{}', '{\"composer0\":{\"access_point\":\"phpspreadsheet\\/vendor\\/autoload.php\",\"namespace\":{\"namespace0\":{\"use\":\"PhpOffice\\\\PhpSpreadsheet\\\\IOFactory\"},\"namespace1\":{\"use\":\"PhpOffice\\\\PhpSpreadsheet\\\\Reader\\\\Exception as ReaderException\"},\"namespace2\":{\"use\":\"PhpOffice\\\\PhpSpreadsheet\\\\Exception as SpreadsheetException\"}}}}', '', 1, '2018-05-16 12:57:59', 16, '', 1), +(841, '9ae018a5-9064-40ed-ad69-9c1ed2a459f5', 'JCB.Spreadsheet.ChunkReadFilter', 'ChunkReadFilter', 'final class', 'Chunk Read Filter Class\r\n\r\n@since 3.2.0', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '{\"0\":\"-1\"}', 'IReadFilter', '[[[NamespacePrefix]]]\\Joomla\\[[[ComponentNamespace]]].Spreadsheet.ChunkReadFilter', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIFRoZSBmaXJzdCByb3cgdG8gcmVhZCBpbiB0aGUgY3VycmVudCBjaHVuay4NCgkgKg0KCSAqIEB2YXIgaW50DQoJICovDQoJcHJpdmF0ZSBpbnQgJHN0YXJ0Um93Ow0KDQoJLyoqDQoJICogVGhlIGxhc3Qgcm93IHRvIHJlYWQgaW4gdGhlIGN1cnJlbnQgY2h1bmsuDQoJICogVGhpcyBpcyBjYWxjdWxhdGVkIGFzICRzdGFydFJvdyArICRjaHVua1NpemUgLSAxLg0KCSAqDQoJICogQHZhciBpbnQNCgkgKi8NCglwcml2YXRlIGludCAkZW5kUm93Ow0KDQoJLyoqDQoJICogQ29uc3RydWN0b3IgdG8gaW5pdGlhbGl6ZSB0aGUgY2h1bmsgZmlsdGVyLg0KCSAqDQoJICogQHBhcmFtIGludCAkc3RhcnRSb3cgVGhlIHN0YXJ0aW5nIHJvdyB0byByZWFkLg0KCSAqIEBwYXJhbSBpbnQgJGNodW5rU2l6ZSBUaGUgbnVtYmVyIG9mIHJvd3MgdG8gcmVhZCBpbiBlYWNoIGNodW5rLg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdChpbnQgJHN0YXJ0Um93LCBpbnQgJGNodW5rU2l6ZSkNCgl7DQoJCSR0aGlzLT5zdGFydFJvdyA9ICRzdGFydFJvdzsNCgkJJHRoaXMtPmVuZFJvdyA9ICRzdGFydFJvdyArICRjaHVua1NpemUgLSAxOw0KCX0NCg0KCS8qKg0KCSAqIERldGVybWluZXMgd2hldGhlciBhIGNlbGwgc2hvdWxkIGJlIHJlYWQgYmFzZWQgb24gaXRzIHJvdyBhbmQgY29sdW1uLg0KCSAqDQoJICogQHBhcmFtIHN0cmluZyAkY29sdW1uIFRoZSBjb2x1bW4gaW5kZXggKGUuZy4sICdBJywgJ0InLCAnQycpLg0KCSAqIEBwYXJhbSBpbnQgJHJvdyBUaGUgcm93IGluZGV4Lg0KCSAqIEBwYXJhbSBzdHJpbmd8bnVsbCAkd29ya3NoZWV0TmFtZSBUaGUgd29ya3NoZWV0IG5hbWUgKG5vdCB1c2VkIGluIHRoaXMgY2FzZSkuDQoJICoNCgkgKiBAcmV0dXJuIGJvb2wgV2hldGhlciB0aGUgY2VsbCBzaG91bGQgYmUgcmVhZC4NCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gcmVhZENlbGwoJGNvbHVtbkFkZHJlc3MsICRyb3csICR3b3Jrc2hlZXROYW1lID0gJycpDQoJew0KCQkvLyBPbmx5IHJlYWQgcm93cyB0aGF0IGZhbGwgd2l0aGluIHRoZSBjaHVuayByYW5nZQ0KCQlpZiAoJHJvdyA+PSAkdGhpcy0+c3RhcnRSb3cgJiYgJHJvdyA8PSAkdGhpcy0+ZW5kUm93KQ0KCQl7DQoJCQlyZXR1cm4gdHJ1ZTsNCgkJfQ0KDQoJCXJldHVybiBmYWxzZTsNCgl9', '{}', '{\"composer0\":{\"access_point\":\"phpspreadsheet\\/vendor\\/autoload.php\",\"namespace\":{\"namespace0\":{\"use\":\"PhpOffice\\\\PhpSpreadsheet\\\\Reader\\\\IReadFilter\"}}}}', '', 1, '2024-10-08 01:51:02', 9, '', 1), +(842, '47a63728-cd5d-4d53-99cf-2409bd1c744c', 'Joomla.Utilities.SessionHelper', 'SessionHelper', 'abstract class', 'Simple Session\r\n\r\n@since 5.0.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIwDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\Utilities.SessionHelper', 1, '{}', '{}', 'dXNlIEpvb21sYVxDTVNcRmFjdG9yeTsNCnVzZSBKb29tbGFcQ01TXFNlc3Npb25cU2Vzc2lvbjs=', '{}', 'CS8qKg0KCSAqIFRoZSBhY3RpdmUgc2Vzc2lvbg0KCSAqDQoJICogQHZhciBTZXNzaW9ufG51bGwNCgkgKiBAc2luY2UgNS4wLjINCgkgKi8NCglwcml2YXRlIHN0YXRpYyA/U2Vzc2lvbiAkc2Vzc2lvbiA9IG51bGw7DQoNCgkvKioNCgkgKiBHZXQgdGhlIGFjdGl2ZSBzZXNzaW9uDQoJICoNCgkgKiBAcmV0dXJuIFNlc3Npb24NCgkgKiBAdGhyb3dzIFxSdW50aW1lRXhjZXB0aW9uIGlmIHRoZSBzZXNzaW9uIGNhbm5vdCBiZSBsb2FkZWQNCgkgKiBAc2luY2UgNS4wLjINCgkgKi8NCglwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIHNlc3Npb24oKTogU2Vzc2lvbg0KCXsNCgkJaWYgKHN0YXRpYzo6JHNlc3Npb24gPT09IG51bGwpDQoJCXsNCgkJCXRyeSB7DQoJCQkJc3RhdGljOjokc2Vzc2lvbiA9IEZhY3Rvcnk6OmdldEFwcGxpY2F0aW9uKCktPmdldFNlc3Npb24oKTsNCgkJCX0gY2F0Y2ggKFxFeGNlcHRpb24gJGUpIHsNCgkJCQkvLyBSZXRocm93IHRoZSBleGNlcHRpb24gYXMgYSBSdW50aW1lRXhjZXB0aW9uIHRvIHByb3BhZ2F0ZSBpdCBkb3duc3RyZWFtDQoJCQkJdGhyb3cgbmV3IFxSdW50aW1lRXhjZXB0aW9uKCdVbmFibGUgdG8gbG9hZCB0aGUgc2Vzc2lvbi4nLCAwLCAkZSk7DQoJCQl9DQoJCX0NCg0KCQlyZXR1cm4gc3RhdGljOjokc2Vzc2lvbjsNCgl9DQoNCgkvKioNCgkgKiBHZXQgZGF0YSBmcm9tIHRoZSBzZXNzaW9uIHN0b3JlDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICRuYW1lICAgICBOYW1lIG9mIGEgdmFyaWFibGUNCgkgKiBAcGFyYW0gbWl4ZWQgICRkZWZhdWx0ICBEZWZhdWx0IHZhbHVlIG9mIGEgdmFyaWFibGUgaWYgbm90IHNldA0KCSAqDQoJICogQHJldHVybiBtaXhlZCBWYWx1ZSBvZiB0aGUgdmFyaWFibGUgZnJvbSB0aGUgc2Vzc2lvbg0KCSAqIEBzaW5jZSA1LjAuMg0KCSAqLw0KCXB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gZ2V0KHN0cmluZyAkbmFtZSwgJGRlZmF1bHQgPSBudWxsKQ0KCXsNCgkJJHZhbHVlID0gc3RhdGljOjpzZXNzaW9uKCktPmdldCgkbmFtZSwgJGRlZmF1bHQpOw0KDQoJCS8vIEVuc3VyZSB0aGUgdmFsdWUgaXMgc2V0IGluIHRoZSBzZXNzaW9uIGV2ZW4gaWYgaXQgd2FzIGRlZmF1bHQNCgkJc3RhdGljOjpzZXQoJG5hbWUsICR2YWx1ZSk7DQoNCgkJcmV0dXJuICR2YWx1ZTsNCgl9DQoNCgkvKioNCgkgKiBTZXQgZGF0YSBpbnRvIHRoZSBzZXNzaW9uIHN0b3JlDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICRuYW1lICAgTmFtZSBvZiBhIHZhcmlhYmxlDQoJICogQHBhcmFtIG1peGVkICAkdmFsdWUgIFZhbHVlIG9mIGEgdmFyaWFibGUNCgkgKg0KCSAqIEByZXR1cm4gbWl4ZWQgT2xkIHZhbHVlIG9mIHRoZSB2YXJpYWJsZQ0KCSAqIEBzaW5jZSA1LjAuMg0KCSAqLw0KCXB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gc2V0KHN0cmluZyAkbmFtZSwgJHZhbHVlID0gbnVsbCkNCgl7DQoJCXJldHVybiBzdGF0aWM6OnNlc3Npb24oKS0+c2V0KCRuYW1lLCAkdmFsdWUpOw0KCX0=', '{}', '{}', '', 1, '2024-10-08 22:21:29', 6, '', 1), +(843, '993fe913-8e36-4800-a5f7-544aa728ee48', 'Utilities Date Helper', 'DateHelper', 'abstract class', 'Simple Date Helper\r\n\r\n@since 5.0.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIwDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\Utilities.DateHelper', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIENvbnZlcnQgYSBkYXRlIHRvIGEgaHVtYW4tcmVhZGFibGUgZmFuY3kgZm9ybWF0IChlLmcuLCAiMXN0IG9mIEphbnVhcnkgMjAyNCIpLg0KCSAqDQoJICogQHBhcmFtIHN0cmluZ3xpbnQgICRkYXRlICAgICAgICAgVGhlIGRhdGUgYXMgYSBzdHJpbmcgb3IgdGltZXN0YW1wLg0KCSAqIEBwYXJhbSBib29sICAgICAgICAkY2hlY2tTdGFtcCAgIFdoZXRoZXIgdG8gY2hlY2sgaWYgdGhlIGlucHV0IGlzIGEgdGltZXN0YW1wLg0KCSAqDQoJICogQHJldHVybiBzdHJpbmcgRm9ybWF0dGVkIGRhdGUuDQoJICogQHNpbmNlIDMuMC4wDQoJICovDQoJcHVibGljIHN0YXRpYyBmdW5jdGlvbiBmYW5jeURhdGUoJGRhdGUsIGJvb2wgJGNoZWNrU3RhbXAgPSB0cnVlKTogc3RyaW5nDQoJew0KCQkkZGF0ZSA9IHN0YXRpYzo6Z2V0VmFsaWRUaW1lc3RhbXAoJGRhdGUsICRjaGVja1N0YW1wKTsNCg0KCQlyZXR1cm4gZGF0ZSgnalMgXG9cZiBGIFknLCAkZGF0ZSk7DQoJfQ0KDQoJLyoqDQoJICogR2V0IGEgZm9ybWF0dGVkIGRhdGUgYmFzZWQgb24gdGhlIHRpbWUgcGVyaW9kIChkeW5hbWljIGZvcm1hdCBiYXNlZCBvbiBhZ2Ugb2YgdGhlIGRhdGUpLg0KCSAqDQoJICogQHBhcmFtIHN0cmluZ3xpbnQgICRkYXRlICAgICAgICAgVGhlIGRhdGUgYXMgYSBzdHJpbmcgb3IgdGltZXN0YW1wLg0KCSAqIEBwYXJhbSBib29sICAgICAgICAkY2hlY2tTdGFtcCAgIFdoZXRoZXIgdG8gY2hlY2sgaWYgdGhlIGlucHV0IGlzIGEgdGltZXN0YW1wLg0KCSAqDQoJICogQHJldHVybiBzdHJpbmcgRm9ybWF0dGVkIGRhdGUuDQoJICogQHNpbmNlIDMuMC4wDQoJICovDQoJcHVibGljIHN0YXRpYyBmdW5jdGlvbiBmYW5jeUR5bmFtaWNEYXRlKCRkYXRlLCBib29sICRjaGVja1N0YW1wID0gdHJ1ZSk6IHN0cmluZw0KCXsNCgkJJGRhdGUgPSBzdGF0aWM6OmdldFZhbGlkVGltZXN0YW1wKCRkYXRlLCAkY2hlY2tTdGFtcCk7DQoNCgkJLy8gSWYgb2xkZXIgdGhhbiBhIHllYXIsIHVzZSBtL2QveSBmb3JtYXQuDQoJCWlmIChkYXRlKCdZJywgJGRhdGUpIDwgZGF0ZSgnWScsIHN0cnRvdGltZSgnLTEgeWVhcicpKSkNCgkJew0KCQkJcmV0dXJuIGRhdGUoJ20vZC95JywgJGRhdGUpOw0KCQl9DQoNCgkJLy8gSWYgaXQncyB0aGUgc2FtZSBkYXksIHJldHVybiB0aGUgdGltZS4NCgkJaWYgKCRkYXRlID4gc3RydG90aW1lKCctMSBkYXknKSkNCgkJew0KCQkJcmV0dXJuIGRhdGUoJ2c6aSBBJywgJGRhdGUpOw0KCQl9DQoNCgkJLy8gT3RoZXJ3aXNlLCByZXR1cm4gdGhlIG1vbnRoIGFuZCBkYXkuDQoJCXJldHVybiBkYXRlKCdNIGonLCAkZGF0ZSk7DQoJfQ0KDQoJLyoqDQoJICogQ29udmVydCBhIGRhdGUgdG8gYSBodW1hbi1yZWFkYWJsZSBkYXksIHRpbWUsIGFuZCBkYXRlIGZvcm1hdCAoZS5nLiwgIk1vbiAxMmFtIDFzdCBvZiBKYW51YXJ5IDIwMjQiKS4NCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmd8aW50ICAkZGF0ZSAgICAgICAgIFRoZSBkYXRlIGFzIGEgc3RyaW5nIG9yIHRpbWVzdGFtcC4NCgkgKiBAcGFyYW0gYm9vbCAgICAgICAgJGNoZWNrU3RhbXAgICBXaGV0aGVyIHRvIGNoZWNrIGlmIHRoZSBpbnB1dCBpcyBhIHRpbWVzdGFtcC4NCgkgKg0KCSAqIEByZXR1cm4gc3RyaW5nIEZvcm1hdHRlZCBkYXksIHRpbWUsIGFuZCBkYXRlLg0KCSAqIEBzaW5jZSAzLjAuMA0KCSAqLw0KCXB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gZmFuY3lEYXlUaW1lRGF0ZSgkZGF0ZSwgYm9vbCAkY2hlY2tTdGFtcCA9IHRydWUpOiBzdHJpbmcNCgl7DQoJCSRkYXRlID0gc3RhdGljOjpnZXRWYWxpZFRpbWVzdGFtcCgkZGF0ZSwgJGNoZWNrU3RhbXApOw0KDQoJCXJldHVybiBkYXRlKCdEIGdBIGpTIFxvXGYgRiBZJywgJGRhdGUpOw0KCX0NCg0KCS8qKg0KCSAqIENvbnZlcnQgYSBkYXRlIHRvIGEgaHVtYW4tcmVhZGFibGUgdGltZSBhbmQgZGF0ZSBmb3JtYXQgKGUuZy4sICIoMTI6MDApIDFzdCBvZiBKYW51YXJ5IDIwMjQiKS4NCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmd8aW50ICAkZGF0ZSAgICAgICAgIFRoZSBkYXRlIGFzIGEgc3RyaW5nIG9yIHRpbWVzdGFtcC4NCgkgKiBAcGFyYW0gYm9vbCAgICAgICAgJGNoZWNrU3RhbXAgICBXaGV0aGVyIHRvIGNoZWNrIGlmIHRoZSBpbnB1dCBpcyBhIHRpbWVzdGFtcC4NCgkgKg0KCSAqIEByZXR1cm4gc3RyaW5nIEZvcm1hdHRlZCB0aW1lIGFuZCBkYXRlLg0KCSAqIEBzaW5jZSAzLjAuMA0KCSAqLw0KCXB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gZmFuY3lEYXRlVGltZSgkZGF0ZSwgYm9vbCAkY2hlY2tTdGFtcCA9IHRydWUpOiBzdHJpbmcNCgl7DQoJCSRkYXRlID0gc3RhdGljOjpnZXRWYWxpZFRpbWVzdGFtcCgkZGF0ZSwgJGNoZWNrU3RhbXApOw0KDQoJCXJldHVybiBkYXRlKCcoRzppKSBqUyBcb1xmIEYgWScsICR0aW1lKTsNCgl9DQoNCgkvKioNCgkgKiBDb252ZXJ0IGEgdGltZSB0byBhIGh1bWFuLXJlYWRhYmxlIGZvcm1hdCAoZS5nLiwgIjEyOjAwIikuDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nfGludCAgJGRhdGUgICAgICAgICBUaGUgZGF0ZSBhcyBhIHN0cmluZyBvciB0aW1lc3RhbXAuDQoJICogQHBhcmFtIGJvb2wgICAgICAgICRjaGVja1N0YW1wICAgV2hldGhlciB0byBjaGVjayBpZiB0aGUgaW5wdXQgaXMgYSB0aW1lc3RhbXAuDQoJICoNCgkgKiBAcmV0dXJuIHN0cmluZyBGb3JtYXR0ZWQgdGltZS4NCgkgKiBAc2luY2UgMy4wLjANCgkgKi8NCglwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIGZhbmN5VGltZSgkZGF0ZSwgYm9vbCAkY2hlY2tTdGFtcCA9IHRydWUpOiBzdHJpbmcNCgl7DQoJCSRkYXRlID0gc3RhdGljOjpnZXRWYWxpZFRpbWVzdGFtcCgkZGF0ZSwgJGNoZWNrU3RhbXApOw0KDQoJCXJldHVybiBkYXRlKCdHOmknLCAkZGF0ZSk7DQoJfQ0KDQoJLyoqDQoJICogQ29udmVydCBhIGRhdGUgdG8gdGhlIGRheSBuYW1lIChlLmcuLCAiU3VuZGF5IikuDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nfGludCAgJGRhdGUgICAgICAgICBUaGUgZGF0ZSBhcyBhIHN0cmluZyBvciB0aW1lc3RhbXAuDQoJICogQHBhcmFtIGJvb2wgICAgICAgICRjaGVja1N0YW1wICAgV2hldGhlciB0byBjaGVjayBpZiB0aGUgaW5wdXQgaXMgYSB0aW1lc3RhbXAuDQoJICoNCgkgKiBAcmV0dXJuIHN0cmluZyBEYXkgbmFtZS4NCgkgKiBAc2luY2UgMy4wLjANCgkgKi8NCglwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIHNldERheU5hbWUoJGRhdGUsIGJvb2wgJGNoZWNrU3RhbXAgPSB0cnVlKTogc3RyaW5nDQoJew0KCQkkZGF0ZSA9IHN0YXRpYzo6Z2V0VmFsaWRUaW1lc3RhbXAoJGRhdGUsICRjaGVja1N0YW1wKTsNCg0KCQlyZXR1cm4gZGF0ZSgnbCcsICRkYXRlKTsNCgl9DQoNCgkvKioNCgkgKiBDb252ZXJ0IGEgZGF0ZSB0byB0aGUgbW9udGggbmFtZSAoZS5nLiwgIkphbnVhcnkiKS4NCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmd8aW50ICAkZGF0ZSAgICAgICAgIFRoZSBkYXRlIGFzIGEgc3RyaW5nIG9yIHRpbWVzdGFtcC4NCgkgKiBAcGFyYW0gYm9vbCAgICAgICAgJGNoZWNrU3RhbXAgICBXaGV0aGVyIHRvIGNoZWNrIGlmIHRoZSBpbnB1dCBpcyBhIHRpbWVzdGFtcC4NCgkgKg0KCSAqIEByZXR1cm4gc3RyaW5nIE1vbnRoIG5hbWUuDQoJICogQHNpbmNlIDMuMC4wDQoJICovDQoJcHVibGljIHN0YXRpYyBmdW5jdGlvbiBzZXRNb250aE5hbWUoJGRhdGUsIGJvb2wgJGNoZWNrU3RhbXAgPSB0cnVlKTogc3RyaW5nDQoJew0KCQkkZGF0ZSA9IHN0YXRpYzo6Z2V0VmFsaWRUaW1lc3RhbXAoJGRhdGUsICRjaGVja1N0YW1wKTsNCg0KCQlyZXR1cm4gZGF0ZSgnRicsICRkYXRlKTsNCgl9DQoNCgkvKioNCgkgKiBDb252ZXJ0IGEgZGF0ZSB0byB0aGUgZGF5IHdpdGggc3VmZml4IChlLmcuLCAiMXN0IikuDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nfGludCAgJGRhdGUgICAgICAgICBUaGUgZGF0ZSBhcyBhIHN0cmluZyBvciB0aW1lc3RhbXAuDQoJICogQHBhcmFtIGJvb2wgICAgICAgICRjaGVja1N0YW1wICAgV2hldGhlciB0byBjaGVjayBpZiB0aGUgaW5wdXQgaXMgYSB0aW1lc3RhbXAuDQoJICoNCgkgKiBAcmV0dXJuIHN0cmluZyBEYXkgd2l0aCBzdWZmaXguDQoJICogQHNpbmNlIDMuMC4wDQoJICovDQoJcHVibGljIHN0YXRpYyBmdW5jdGlvbiBzZXREYXkoJGRhdGUsIGJvb2wgJGNoZWNrU3RhbXAgPSB0cnVlKTogc3RyaW5nDQoJew0KCQkkZGF0ZSA9IHN0YXRpYzo6Z2V0VmFsaWRUaW1lc3RhbXAoJGRhdGUsICRjaGVja1N0YW1wKTsNCg0KCQlyZXR1cm4gZGF0ZSgnalMnLCAkZGF0ZSk7DQoJfQ0KDQoJLyoqDQoJICogQ29udmVydCBhIGRhdGUgdG8gdGhlIG51bWVyaWMgbW9udGggKGUuZy4sICI1IikuDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nfGludCAgJGRhdGUgICAgICAgICBUaGUgZGF0ZSBhcyBhIHN0cmluZyBvciB0aW1lc3RhbXAuDQoJICogQHBhcmFtIGJvb2wgICAgICAgICRjaGVja1N0YW1wICAgV2hldGhlciB0byBjaGVjayBpZiB0aGUgaW5wdXQgaXMgYSB0aW1lc3RhbXAuDQoJICoNCgkgKiBAcmV0dXJuIHN0cmluZyBOdW1lcmljIG1vbnRoLg0KCSAqIEBzaW5jZSAzLjAuMA0KCSAqLw0KCXB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gc2V0TW9udGgoJGRhdGUsIGJvb2wgJGNoZWNrU3RhbXAgPSB0cnVlKTogc3RyaW5nDQoJew0KCQkkZGF0ZSA9IHN0YXRpYzo6Z2V0VmFsaWRUaW1lc3RhbXAoJGRhdGUsICRjaGVja1N0YW1wKTsNCg0KCQlyZXR1cm4gZGF0ZSgnbicsICRkYXRlKTsNCgl9DQoNCgkvKioNCgkgKiBDb252ZXJ0IGEgZGF0ZSB0byB0aGUgZnVsbCB5ZWFyIChlLmcuLCAiMjAyNCIpLg0KCSAqDQoJICogQHBhcmFtIHN0cmluZ3xpbnQgICRkYXRlICAgICAgICAgVGhlIGRhdGUgYXMgYSBzdHJpbmcgb3IgdGltZXN0YW1wLg0KCSAqIEBwYXJhbSBib29sICAgICAgICAkY2hlY2tTdGFtcCAgIFdoZXRoZXIgdG8gY2hlY2sgaWYgdGhlIGlucHV0IGlzIGEgdGltZXN0YW1wLg0KCSAqDQoJICogQHJldHVybiBzdHJpbmcgRnVsbCB5ZWFyLg0KCSAqIEBzaW5jZSAzLjAuMA0KCSAqLw0KCXB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gc2V0WWVhcigkZGF0ZSwgYm9vbCAkY2hlY2tTdGFtcCA9IHRydWUpOiBzdHJpbmcNCgl7DQoJCSRkYXRlID0gc3RhdGljOjpnZXRWYWxpZFRpbWVzdGFtcCgkZGF0ZSwgJGNoZWNrU3RhbXApOw0KDQoJCXJldHVybiBkYXRlKCdZJywgJGRhdGUpOw0KCX0NCg0KCS8qKg0KCSAqIENvbnZlcnQgYSBkYXRlIHRvIGEgeWVhci9tb250aCBmb3JtYXQgKGUuZy4sICIyMDI0LzA1IikuDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nfGludCAgJGRhdGUgICAgICAgICBUaGUgZGF0ZSBhcyBhIHN0cmluZyBvciB0aW1lc3RhbXAuDQoJICogQHBhcmFtIHN0cmluZyAgICAgICRzcGFjZXIgICAgICAgVGhlIHNwYWNlciBiZXR3ZWVuIHllYXIgYW5kIG1vbnRoLg0KCSAqIEBwYXJhbSBib29sICAgICAgICAkY2hlY2tTdGFtcCAgIFdoZXRoZXIgdG8gY2hlY2sgaWYgdGhlIGlucHV0IGlzIGEgdGltZXN0YW1wLg0KCSAqDQoJICogQHJldHVybiBzdHJpbmcgWWVhci9Nb250aCBmb3JtYXQuDQoJICogQHNpbmNlIDMuMC4wDQoJICovDQoJcHVibGljIHN0YXRpYyBmdW5jdGlvbiBzZXRZZWFyTW9udGgoJGRhdGUsIHN0cmluZyAkc3BhY2VyID0gJy8nLCBib29sICRjaGVja1N0YW1wID0gdHJ1ZSk6IHN0cmluZw0KCXsNCgkJJGRhdGUgPSBzdGF0aWM6OmdldFZhbGlkVGltZXN0YW1wKCRkYXRlLCAkY2hlY2tTdGFtcCk7DQoNCgkJcmV0dXJuIGRhdGUoJ1knIC4gJHNwYWNlciAuICdtJywgJGRhdGUpOw0KCX0NCg0KCS8qKg0KCSAqIENvbnZlcnQgYSBkYXRlIHRvIGEgeWVhci9tb250aC9kYXkgZm9ybWF0IChlLmcuLCAiMjAyNC8wNS8wMyIpLg0KCSAqDQoJICogQHBhcmFtIHN0cmluZ3xpbnQgICRkYXRlICAgICAgICAgVGhlIGRhdGUgYXMgYSBzdHJpbmcgb3IgdGltZXN0YW1wLg0KCSAqIEBwYXJhbSBzdHJpbmcgICAgICAkc3BhY2VyICAgICAgIFRoZSBzcGFjZXIgYmV0d2VlbiB5ZWFyIGFuZCBtb250aC4NCgkgKiBAcGFyYW0gYm9vbCAgICAgICAgJGNoZWNrU3RhbXAgICBXaGV0aGVyIHRvIGNoZWNrIGlmIHRoZSBpbnB1dCBpcyBhIHRpbWVzdGFtcC4NCgkgKg0KCSAqIEByZXR1cm4gc3RyaW5nIFllYXIvTW9udGgvRGF5IGZvcm1hdC4NCgkgKiBAc2luY2UgMy4wLjANCgkgKi8NCglwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIHNldFllYXJNb250aERheSgkZGF0ZSwgc3RyaW5nICRzcGFjZXIgPSAnLycsIGJvb2wgJGNoZWNrU3RhbXAgPSB0cnVlKTogc3RyaW5nDQoJew0KCQkkZGF0ZSA9IHN0YXRpYzo6Z2V0VmFsaWRUaW1lc3RhbXAoJGRhdGUsICRjaGVja1N0YW1wKTsNCg0KCQlyZXR1cm4gZGF0ZSgnWScgLiAkc3BhY2VyIC4gJ20nIC4gJHNwYWNlciAuICdkJywgJGRhdGUpOw0KCX0NCg0KCS8qKg0KCSAqIENvbnZlcnQgYSBkYXRlIHRvIGEgZGF5L21vbnRoL3llYXIgZm9ybWF0IChlLmcuLCAiMDMvMDUvMjAyNCIpLg0KCSAqDQoJICogQHBhcmFtIHN0cmluZ3xpbnQgICRkYXRlICAgICAgICAgVGhlIGRhdGUgYXMgYSBzdHJpbmcgb3IgdGltZXN0YW1wLg0KCSAqIEBwYXJhbSBzdHJpbmcgICAgICAkc3BhY2VyICAgICAgIFRoZSBzcGFjZXIgYmV0d2VlbiB5ZWFyIGFuZCBtb250aC4NCgkgKiBAcGFyYW0gYm9vbCAgICAgICAgJGNoZWNrU3RhbXAgICBXaGV0aGVyIHRvIGNoZWNrIGlmIHRoZSBpbnB1dCBpcyBhIHRpbWVzdGFtcC4NCgkgKg0KCSAqIEByZXR1cm4gc3RyaW5nIERheS9Nb250aC9ZZWFyIGZvcm1hdC4NCgkgKiBAc2luY2UgMy4wLjANCgkgKi8NCglwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIHNldERheU1vbnRoWWVhcigkZGF0ZSwgc3RyaW5nICRzcGFjZXIgPSAnLycsIGJvb2wgJGNoZWNrU3RhbXAgPSB0cnVlKTogc3RyaW5nDQoJew0KCQkkZGF0ZSA9IHN0YXRpYzo6Z2V0VmFsaWRUaW1lc3RhbXAoJGRhdGUsICRjaGVja1N0YW1wKTsNCg0KCQlyZXR1cm4gZGF0ZSgnZCcgLiAkc3BhY2VyIC4gJ20nIC4gJHNwYWNlciAuICdZJywgJGRhdGUpOw0KCX0NCg0KCS8qKg0KCSAqIENvbnZlcnQgYSBkYXRlIHN0cmluZyB0byBhIHZhbGlkIHRpbWVzdGFtcC4NCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmd8aW50ICAkZGF0ZSAgICAgICAgIFRoZSBkYXRlIGFzIGEgc3RyaW5nIG9yIHRpbWVzdGFtcC4NCgkgKiBAcGFyYW0gYm9vbCAgICAgICAgJGNoZWNrU3RhbXAgICBXaGV0aGVyIHRvIGNoZWNrIGlmIHRoZSBpbnB1dCBpcyBhIHRpbWVzdGFtcC4NCgkgKg0KCSAqIEByZXR1cm4gaW50IFRoZSB2YWxpZCB0aW1lc3RhbXAuDQoJICogQHNpbmNlIDMuMC4wDQoJICovDQoJcHVibGljIHN0YXRpYyBmdW5jdGlvbiBnZXRWYWxpZFRpbWVzdGFtcCgkZGF0ZSwgYm9vbCAkY2hlY2tTdGFtcCk6IGludA0KCXsNCgkJaWYgKCRjaGVja1N0YW1wICYmICFzdGF0aWM6OmlzVmFsaWRUaW1lU3RhbXAoJGRhdGUpKQ0KCQl7DQoJCQkkZGF0ZSA9IHN0cnRvdGltZSgkZGF0ZSA/PyAnTm93Jyk7DQoJCX0NCg0KCQlyZXR1cm4gKGludCkgJGRhdGU7DQoJfQ0KDQoJLyoqDQoJICogQ2hlY2sgaWYgdGhlIGlucHV0IGlzIGEgdmFsaWQgVW5peCB0aW1lc3RhbXAuDQoJICoNCgkgKiBAcGFyYW0gbWl4ZWQgJHRpbWVzdGFtcCBUaGUgdGltZXN0YW1wIHRvIHZhbGlkYXRlLg0KCSAqDQoJICogQHJldHVybiBib29sIFRydWUgaWYgdmFsaWQgdGltZXN0YW1wLCBmYWxzZSBvdGhlcndpc2UuDQoJICogQHNpbmNlIDMuMC4wDQoJICovDQoJcHVibGljIHN0YXRpYyBmdW5jdGlvbiBpc1ZhbGlkVGltZVN0YW1wKCR0aW1lc3RhbXApOiBib29sDQoJew0KCQlyZXR1cm4gKGlzX251bWVyaWMoJHRpbWVzdGFtcCkgJiYgKGludCkgJHRpbWVzdGFtcCA9PSAkdGltZXN0YW1wICYmICR0aW1lc3RhbXAgPiAwKTsNCgl9DQoNCgkvKioNCgkgKiBDaGVjayBpZiBhIHN0cmluZyBpcyBhIHZhbGlkIGRhdGUgYWNjb3JkaW5nIHRvIHRoZSBzcGVjaWZpZWQgZm9ybWF0Lg0KCSAqDQoJICogQHBhcmFtIHN0cmluZyAkZGF0ZSBUaGUgZGF0ZSBzdHJpbmcgdG8gdmFsaWRhdGUuDQoJICogQHBhcmFtIHN0cmluZyAkZm9ybWF0IFRoZSBmb3JtYXQgdG8gY2hlY2sgYWdhaW5zdCAoZGVmYXVsdCBpcyAnWS1tLWQgSDppOnMnKS4NCgkgKg0KCSAqIEByZXR1cm4gYm9vbCBUcnVlIGlmIHZhbGlkIGRhdGUsIGZhbHNlIG90aGVyd2lzZS4NCgkgKiBAc2luY2UgMy4wLjANCgkgKi8NCglwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIGlzVmFsaWRhdGVEYXRlKCRkYXRlLCBzdHJpbmcgJGZvcm1hdCA9ICdZLW0tZCBIOmk6cycpOiBib29sDQoJew0KCQkkZCA9IFxEYXRlVGltZTo6Y3JlYXRlRnJvbUZvcm1hdCgkZm9ybWF0LCAkZGF0ZSk7DQoNCgkJcmV0dXJuICRkICYmICRkLT5mb3JtYXQoJGZvcm1hdCkgPT09ICRkYXRlOw0KCX0=', '{}', '{}', '', 1, '2024-10-10 22:08:36', 3, '', 1), +(844, '9ffc54fa-a71e-412f-bc8b-064fc3b69167', 'JCB.Interfaces.Spreadsheet.RowDataProcessorInterfa', 'RowDataProcessorInterface', 'interface', 'Spreadsheet Row Data Processor Interface\r\n\r\n@since 3.2.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\[[[ComponentNamespace]]].Interfaces.Spreadsheet.RowDataProcessorInterface', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIFByb2Nlc3NlcyB0aGUgZ2l2ZW4gc3ByZWFkc2hlZXQgcm93IGFuZCByZXR1cm5zIGl0IGluIGEgc3BlY2lmaWMgZm9ybWF0Lg0KCSAqDQoJICogQHBhcmFtIFJvdyAkcm93IFRoZSByb3cgb2JqZWN0IGZyb20gdGhlIHNwcmVhZHNoZWV0IHRvIGJlIHByb2Nlc3NlZC4NCgkgKiANCgkgKiBAcmV0dXJuIG1peGVkIFByb2Nlc3NlZCByb3cgZGF0YSwgY291bGQgYmUgYW4gYXJyYXksIGNlbGwgb2JqZWN0LCBvciBvdGhlciBzdHJ1Y3R1cmVzLg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBwcm9jZXNzKFJvdyAkcm93KTogbWl4ZWQ7', '{}', '{\"composer0\":{\"access_point\":\"phpspreadsheet\\/vendor\\/autoload.php\",\"namespace\":{\"namespace0\":{\"use\":\"PhpOffice\\\\PhpSpreadsheet\\\\Worksheet\\\\Row\"}}}}', '', 1, '2024-10-15 00:03:06', 3, '', 1), +(845, '0f3f7188-3e0d-4d1a-8dee-7f8026cb65a9', 'JCB.Interfaces.Spreadsheet.ImportCliInterface', 'ImportCliInterface', 'interface', 'Spreadsheet Import Cli Interface\r\n\r\n@since 3.2.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\[[[ComponentNamespace]]].Interfaces.Spreadsheet.ImportCliInterface', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIFRoZSB0cmlnZ2VyIGZ1bmN0aW9uIGNhbGxlZCBmcm9tIHRoZSBDTEkgdG8gc3RhcnQgdGhlIGltcG9ydCBvbiBhIHNwcmVhZHNoZWV0DQoJICoNCgkgKiBAcGFyYW0gIG9iamVjdCAgJGltcG9ydCAgVGhlIHNwcmVhZHNoZWV0IGRhdGEgdG8gaW1wb3J0Lg0KCSAqDQoJICogQHJldHVybiAgdm9pZA0KCSAqIEBzaW5jZSAgNS4wLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZGF0YShvYmplY3QgJGltcG9ydCk6IHZvaWQ7DQoNCgkvKioNCgkgKiBUaGUgbWVzc2FnZSBvZiB0aGUgbGFzdCBpbXBvcnQgZXZlbnQNCgkgKg0KCSAqIEByZXR1cm4gIG9iamVjdA0KCSAqIEBzaW5jZSAgNS4wLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gbWVzc2FnZSgpOiBvYmplY3Q7', '{}', '{}', '', 1, '2024-10-15 00:28:30', 1, '', 1), +(846, '85321deb-5c3a-401b-9ce1-039a746add51', 'VDM.Abstraction.Console.Import', 'Import', 'abstract class', 'Console Import\r\n\r\n@since 5.0.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', -1, 'AbstractCommand', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\Abstraction.Console.Import', 1, '{}', '{}', 'dXNlIEpvb21sYVxDTVNcRmFjdG9yeTsNCnVzZSBKb29tbGFcQ29uc29sZVxDb21tYW5kXEFic3RyYWN0Q29tbWFuZDsNCnVzZSBTeW1mb255XENvbXBvbmVudFxDb25zb2xlXElucHV0XElucHV0SW50ZXJmYWNlOw0KdXNlIFN5bWZvbnlcQ29tcG9uZW50XENvbnNvbGVcT3V0cHV0XE91dHB1dEludGVyZmFjZTsNCnVzZSBTeW1mb255XENvbXBvbmVudFxDb25zb2xlXFN0eWxlXFN5bWZvbnlTdHlsZTs=', '{\"use_selection0\":{\"use\":\"ff8d5fdb-2d1f-4178-bd18-a43b8efd1068\",\"as\":\"ImportFactory\"},\"use_selection1\":{\"use\":\"0f3f7188-3e0d-4d1a-8dee-7f8026cb65a9\",\"as\":\"ImportEngine\"},\"use_selection2\":{\"use\":\"21bca8a4-5b28-41c4-843e-8097f0ba7cca\",\"as\":\"default\"},\"use_selection3\":{\"use\":\"640b5352-fb09-425f-a26e-cd44eda03f15\",\"as\":\"default\"}}', 'CS8qKg0KCSAqIFRoZSBJdGVtcyBDbGFzcy4NCgkgKg0KCSAqIEB2YXIgICBJdGVtcw0KCSAqIEBzaW5jZSA1LjAuMg0KCSAqLw0KCXByb3RlY3RlZCBJdGVtcyAkaXRlbXM7DQoNCgkvKioNCgkgKiBUaGUgSW1wb3J0IENsYXNzLg0KCSAqDQoJICogQHZhciAgIEltcG9ydEVuZ2luZQ0KCSAqIEBzaW5jZSA1LjAuMg0KCSAqLw0KCXByb3RlY3RlZCBJbXBvcnRFbmdpbmUgJGltcG9ydDsNCg0KCS8qKg0KCSAqIFRoZSBxdWV1ZSB0YWJsZSBuYW1lLg0KCSAqDQoJICogQHZhciBzdHJpbmcNCgkgKiBAc2luY2UgIDUuMC4yDQoJICovDQoJcHJvdGVjdGVkIHN0cmluZyAkcXVldWVUYWJsZTsNCg0KCS8qKg0KCSAqIFRoZSBxdWV1ZSBzdGF0dXMgZmllbGQNCgkgKg0KCSAqIEB2YXIgc3RyaW5nDQoJICogQHNpbmNlICA1LjAuMg0KCSAqLw0KCXByb3RlY3RlZCBzdHJpbmcgJHF1ZXVlU3RhdHVzRmllbGQ7DQoNCgkvKioNCgkgKiBUaGUgcXVldWUgYXdhaXRpbmcgc3RhdHVzDQoJICoNCgkgKiBAdmFyIGludA0KCSAqIEBzaW5jZSAgNS4wLjINCgkgKi8NCglwcm90ZWN0ZWQgaW50ICRxdWV1ZVdhaXRTdGF0ZTsNCg0KCS8qKg0KCSAqIFRoZSBxdWV1ZSBwcm9jZXNzaW5nIHN0YXR1cw0KCSAqDQoJICogQHZhciBpbnQNCgkgKiBAc2luY2UgIDUuMC4yDQoJICovDQoJcHJvdGVjdGVkIGludCAkcXVldWVQcm9jZXNzaW5nU3RhdGU7DQoNCgkvKioNCgkgKiBUaGUgbWFpbiBpbXBvcnQgdGFyZ2V0IG5hbWUuDQoJICoNCgkgKiBAdmFyIHN0cmluZw0KCSAqIEBzaW5jZSAgNS4wLjINCgkgKi8NCglwcm90ZWN0ZWQgc3RyaW5nICR0YXJnZXROYW1lOw0KDQoJLyoqDQoJICogVGhlIHRhcmdldCBpbXBvcnQgY2xhc3MuDQoJICoNCgkgKiBAdmFyIHN0cmluZw0KCSAqIEBzaW5jZSAgNS4wLjINCgkgKi8NCglwcm90ZWN0ZWQgc3RyaW5nICR0YXJnZXRJbXBvcnRDbGFzczsNCg0KCS8qKg0KCSAqIFRoZSBkZWZhdWx0IGNvbW1hbmQgbmFtZS4NCgkgKg0KCSAqIEB2YXIgc3RyaW5nDQoJICogQHNpbmNlICA1LjAuMg0KCSAqLw0KCXByb3RlY3RlZCBzdGF0aWMgJGRlZmF1bHROYW1lOw0KDQoJLyoqDQoJICogQ29uc3RydWN0b3IuDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nfG51bGwgICRuYW1lICAgICBUaGUgbmFtZSBvZiB0aGUgY29tbWFuZDsgaWYgdGhlIG5hbWUgaXMgZW1wdHkgYW5kIG5vIGRlZmF1bHQgaXMgc2V0LCBhIG5hbWUgbXVzdCBiZSBzZXQgaW4gdGhlIGNvbmZpZ3VyZSgpIG1ldGhvZA0KCSAqDQoJICogQHNpbmNlIDUuMC4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KD9zdHJpbmcgJG5hbWUgPSBudWxsKQ0KCXsNCgkJLy8gbWFrZSBzdXJlIHdlIGtub3cgd2hhdCBjb21wb25lbnQgd2UgYXJlIHdvcmtpbmcgd2l0aA0KCQlIZWxwZXI6OnNldE9wdGlvbignY29tX1tbW2NvbXBvbmVudF1dXScpOw0KDQoJCS8vIExvYWQgYWRtaW5pc3RyYXRvciBsYW5ndWFnZSBmaWxlIGZvciBiYWNrZW5kDQoJCSRsYW5nID0gRmFjdG9yeTo6Z2V0TGFuZ3VhZ2UoKTsNCgkJJGxhbmctPmxvYWQoJ2NvbV9bW1tjb21wb25lbnRdXV0nLCBKUEFUSF9BRE1JTklTVFJBVE9SKTsNCg0KCQkkdGhpcy0+aXRlbXMgPSBJbXBvcnRGYWN0b3J5OjpfKCdEYXRhLkl0ZW1zJyk7DQoJCSR0aGlzLT5pbXBvcnQgPSBJbXBvcnRGYWN0b3J5OjpfKCR0aGlzLT50YXJnZXRJbXBvcnRDbGFzcyk7DQoNCgkJcGFyZW50OjpfX2NvbnN0cnVjdCgkbmFtZSk7DQoJfQ0KDQoJLyoqDQoJICogQ29uZmlndXJlcyB0aGUgQ0xJIGNvbW1hbmQsIHNldHRpbmcgdXAgdGhlIGRlc2NyaXB0aW9uIGFuZCBoZWxwIHRleHQuDQoJICoNCgkgKiBUaGlzIGNvbW1hbmQgcGFyc2VzIHRoZSBpbXBvcnQgcXVldWUgYW5kIGltcG9ydHMgaXRlbXMgdGhhdCBhcmUgc3RpbGwgaW4gdGhlIHF1ZXVlLg0KCSAqIEl0IGlzIHVzZWZ1bCBmb3IgYXV0b21hdGljYWxseSBwcm9jZXNzaW5nIHBlbmRpbmcgaXRlbSBpbXBvcnRzIGluIHRoZSB2aXJ0dWFsIHdhcmVob3VzZS4NCgkgKg0KCSAqIEByZXR1cm4gdm9pZA0KCSAqIEBzaW5jZSAgNS4wLjINCgkgKi8NCglwcm90ZWN0ZWQgZnVuY3Rpb24gY29uZmlndXJlKCk6IHZvaWQNCgl7DQoJCSR0aGlzLT5zZXREZXNjcmlwdGlvbigiUHJvY2Vzc2VzIHRoZSBpbXBvcnQgcXVldWUgYW5kIHskdGhpcy0+dGFyZ2V0TmFtZX0gaW1wb3J0cyBhbGwgc3ByZWFkc2hlZXRzIHRoYXQgYXJlIHN0aWxsIGluIHRoZSBxdWV1ZS4iKTsNCgkJJHRoaXMtPnNldEhlbHAoDQo8PDxFT0YNClRoZSA8aW5mbz4lY29tbWFuZC5uYW1lJTwvaW5mbz4gY29tbWFuZCBwYXJzZXMgdGhlIGltcG9ydCBxdWV1ZSBhbmQgcHJvY2Vzc2VzIGFsbCB7JHRoaXMtPnRhcmdldE5hbWV9IHNwcmVhZHNoZWV0cyB0aGF0IGFyZSBzdGlsbCBwZW5kaW5nIGltcG9ydC4NClRoaXMgaXMgdXNlZnVsIGZvciBrZWVwaW5nIHRoZSBzeXN0ZW0gdXAtdG8tZGF0ZSB3aXRoIGluY29taW5nIGRhdGEuDQoNClVzYWdlOg0KPGluZm8+cGhwIGpvb21sYS5waHAgJWNvbW1hbmQubmFtZSU8L2luZm8+DQpFT0YpOw0KCX0NCg0KCS8qKg0KCSAqIEV4ZWN1dGVzIHRoZSBDTEkgY29tbWFuZCwgcHJvY2Vzc2luZyBlYWNoIHNwcmVhZHNoZWV0IGluIHRoZSBpbXBvcnQgcXVldWUuDQoJICoNCgkgKiBAcGFyYW0gICBJbnB1dEludGVyZmFjZSAgICRpbnB1dCAgIFRoZSBpbnB1dCB0byBpbmplY3QgaW50byB0aGUgY29tbWFuZC4NCgkgKiBAcGFyYW0gICBPdXRwdXRJbnRlcmZhY2UgICRvdXRwdXQgIFRoZSBvdXRwdXQgdG8gaW5qZWN0IGludG8gdGhlIGNvbW1hbmQuDQoJICoNCgkgKiBAcmV0dXJuICBpbnQgIFRoZSBjb21tYW5kIGV4aXQgY29kZSAoMCBmb3Igc3VjY2VzcykuDQoJICogQHNpbmNlICAgNS4wLjINCgkgKi8NCglwcm90ZWN0ZWQgZnVuY3Rpb24gZG9FeGVjdXRlKElucHV0SW50ZXJmYWNlICRpbnB1dCwgT3V0cHV0SW50ZXJmYWNlICRvdXRwdXQpOiBpbnQNCgl7DQoJCSRpbyA9IG5ldyBTeW1mb255U3R5bGUoJGlucHV0LCAkb3V0cHV0KTsNCg0KCQkvLyBPdXRwdXQgdGhlIHRpdGxlIGZvciB0aGUgdGFzaw0KCQkkaW8tPnRpdGxlKCIjIyNDb21wb25lbnRfbmFtZSMjIzogeyR0aGlzLT50YXJnZXROYW1lfSBpbXBvcnQgc3RhdHVzIik7DQoNCgkJLy8gR2V0IGFsbCBpbXBvcnRzIGluIHRoZSBxdWV1ZSB0aGF0IGFyZSBpbiB3YWl0aW5nIHN0YXRlDQoJCWlmICgoJHF1ZXVlID0gJHRoaXMtPml0ZW1zLT50YWJsZSgkdGhpcy0+cXVldWVUYWJsZSktPmdldChbJHRoaXMtPnF1ZXVlV2FpdFN0YXRlXSwgJHRoaXMtPnF1ZXVlU3RhdHVzRmllbGQpKSA9PT0gbnVsbCkNCgkJew0KCQkJLy8gR2V0IHRoZSBjdXJyZW50IGRhdGUgYW5kIHRpbWUNCgkJCSR0aW1lc3RhbXAgPSBkYXRlKCdZLW0tZCBIOmk6cycpOw0KDQoJCQkvLyBPdXRwdXQgdGhlIG5vdGljZSBvZiBubyBpbXBvcnRzIHRvIGJlIGRvbmUNCgkJCSRpby0+aW5mbygiTm8geyR0aGlzLT50YXJnZXROYW1lfSBpbXBvcnRzIGZvdW5kIGluIHRoZSBxdWV1ZS4gSWRsZSBhdCB7JHRpbWVzdGFtcH0uIik7DQoNCgkJCXJldHVybiAwOw0KCQl9DQoNCgkJLy8gdGFrZSBzcHJlYWRzaGVldHMgb3V0IG9mIHF1ZXVlDQoJCSR0aGlzLT5pdGVtcy0+dGFibGUoJHRoaXMtPnF1ZXVlVGFibGUpLT5zZXQoYXJyYXlfbWFwKGZ1bmN0aW9uKCRpdGVtKSB7DQoJCQlyZXR1cm4gWw0KCQkJCSdndWlkJyA9PiAkaXRlbS0+Z3VpZCwNCgkJCQkkdGhpcy0+cXVldWVTdGF0dXNGaWVsZCA9PiAkdGhpcy0+cXVldWVQcm9jZXNzaW5nU3RhdGUNCgkJCV07DQoJCX0sICRxdWV1ZSkpOw0KDQoJCS8vIHNpemUgb2YgdGhlIHF1ZXVlDQoJCSRudW1iZXJTdGVwcyA9IGNvdW50KChhcnJheSkgJHF1ZXVlKTsNCg0KCQkvLyBPdXRwdXQgaW5pdGlhbCB0YXNrIGluZm9ybWF0aW9uDQoJCSRpby0+aW5mbygiSW5pdGlhdGluZyBpbXBvcnQgZm9yIHskbnVtYmVyU3RlcHN9IHskdGhpcy0+dGFyZ2V0TmFtZX0gc3ByZWFkc2hlZXQocykgaW4gdGhlIHF1ZXVlLiIpOw0KCQkkaW8tPm5ld0xpbmUoMik7DQoNCgkJLy8gQ3JlYXRlIGEgcHJvZ3Jlc3MgYmFyIGZvciB0aGUgb3ZlcmFsbCBpbXBvcnQgcHJvY2Vzcw0KCQkkcHJvZ3Jlc3NCYXIgPSAkaW8tPmNyZWF0ZVByb2dyZXNzQmFyKCRudW1iZXJTdGVwcyk7DQoJCSRwcm9ncmVzc0Jhci0+c3RhcnQoKTsNCg0KCQkvLyBUcmFjayBzdWNjZXNzIGFuZCBmYWlsdXJlIGNvdW50cw0KCQkkc3VjY2Vzc0NvdW50ID0gMDsNCgkJJGZhaWx1cmVDb3VudCA9IDA7DQoNCgkJLy8gSW1wb3J0IG9uZSBzcHJlYWRzaGVldCBhdCBhIHRpbWUNCgkJZm9yZWFjaCAoJHF1ZXVlIGFzICRzcHJlYWRzaGVldCkNCgkJew0KCQkJJGlvLT5uZXdMaW5lKDIpOw0KDQoJCQkvLyBPdXRwdXQgdGhlIGN1cnJlbnQgc3ByZWFkc2hlZXQgYmVpbmcgcHJvY2Vzc2VkDQoJCQkkaW8tPnNlY3Rpb24oIlByb2Nlc3Npbmcgc3ByZWFkc2hlZXQgI3skc3ByZWFkc2hlZXQtPmd1aWR9Li4uIik7DQoNCgkJCS8vIEltcG9ydCB0aGUgZGF0YSBmb3VuZCBpbiB0aGUgc3ByZWFkc2hlZXQNCgkJCSR0aGlzLT5pbXBvcnQtPmRhdGEoJHNwcmVhZHNoZWV0KTsNCg0KCQkJLy8gR2V0IHRoZSBjb21wbGV0aW9uIG1lc3NhZ2UNCgkJCSRjb21wbGV0aW9uID0gJHRoaXMtPmltcG9ydC0+bWVzc2FnZSgpOw0KDQoJCQkvLyBUcmFjayBzdWNjZXNzIGJhc2VkIG9uIGNvbXBsZXRpb24gbWVzc2FnZQ0KCQkJaWYgKCRjb21wbGV0aW9uLT5tZXNzYWdlX3N1Y2Nlc3MpDQoJCQl7DQoJCQkJJHN1Y2Nlc3NDb3VudCsrOw0KDQoJCQkJLy8gT3V0cHV0IHRoZSBzdWNjZXNzIG1lc3NhZ2UgZm9yIHRoaXMgc3ByZWFkc2hlZXQNCgkJCQkkaW8tPnN1Y2Nlc3MoJGNvbXBsZXRpb24tPm1lc3NhZ2Vfc3VjY2Vzcyk7DQoJCQl9DQoNCgkJCS8vIFRyYWNrIGZhaWx1cmUgYmFzZWQgb24gY29tcGxldGlvbiBtZXNzYWdlDQoJCQlpZiAoJGNvbXBsZXRpb24tPm1lc3NhZ2VfZXJyb3IpDQoJCQl7DQoJCQkJJGZhaWx1cmVDb3VudCsrOw0KDQoJCQkJLy8gT3V0cHV0IHRoZSBlcnJvciBtZXNzYWdlIGZvciB0aGlzIHNwcmVhZHNoZWV0DQoJCQkJJGlvLT5lcnJvcigkY29tcGxldGlvbi0+bWVzc2FnZV9lcnJvcik7DQoJCQl9DQoNCgkJCS8vIEFkdmFuY2UgdGhlIG1haW4gcHJvZ3Jlc3MgYmFyIGJ5IG9uZSBzdGVwDQoJCQlzbGVlcCgxKTsNCgkJCSRwcm9ncmVzc0Jhci0+YWR2YW5jZSgpOw0KCQkJJGlvLT5uZXdMaW5lKDEpOw0KCQl9DQoNCgkJLy8gRmluaXNoIHRoZSBtYWluIHByb2dyZXNzIGJhcg0KCQkkcHJvZ3Jlc3NCYXItPmZpbmlzaCgpOw0KCQkkaW8tPm5ld0xpbmUoMik7DQoNCgkJLy8gQ2FsY3VsYXRlIHRoZSBzdWNjZXNzIGFuZCBmYWlsdXJlIHBlcmNlbnRhZ2VzDQoJCSR0b3RhbFByb2Nlc3NlZCA9ICRzdWNjZXNzQ291bnQgKyAkZmFpbHVyZUNvdW50Ow0KCQkkc3VjY2Vzc1JhdGUgPSAoJHRvdGFsUHJvY2Vzc2VkID4gMCkgPyByb3VuZCgoJHN1Y2Nlc3NDb3VudCAvICR0b3RhbFByb2Nlc3NlZCkgKiAxMDApIDogMDsNCgkJJGZhaWx1cmVSYXRlID0gKCR0b3RhbFByb2Nlc3NlZCA+IDApID8gcm91bmQoKCRmYWlsdXJlQ291bnQgLyAkdG90YWxQcm9jZXNzZWQpICogMTAwKSA6IDA7DQoNCgkJLy8gR2V0IHRoZSBjdXJyZW50IGRhdGUgYW5kIHRpbWUNCgkJJHRpbWVzdGFtcCA9IGRhdGUoJ1ktbS1kIEg6aTpzJyk7DQoNCgkJLy8gT3V0cHV0IHRoZSBzdWNjZXNzIGFuZCBmYWlsdXJlIHN1bW1hcnkgd2l0aCB0aGUgdGltZXN0YW1wDQoJCSRpby0+aW5mbygiVGhlIHskdGhpcy0+dGFyZ2V0TmFtZX0gaW1wb3J0IGZpbmlzaGVkOiB7JHN1Y2Nlc3NSYXRlfSUgc3VjY2VzcywgeyRmYWlsdXJlUmF0ZX0lIGZhaWx1cmUuIENvbXBsZXRlZCBhdCB7JHRpbWVzdGFtcH0uIik7DQoNCgkJJGlvLT5uZXdMaW5lKDEpOw0KDQoJCXJldHVybiAwOw0KCX0=', '{}', '{}', '', 1, '2024-10-15 00:56:38', 8, '', 1), +(847, '79fd4f39-824d-4ab6-936d-959705ff24ec', 'VDM.Table.Validator', 'Validator', 'final class', 'Table Value Validator\r\n\r\n@since 5.3.0', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '{\"0\":\"feb3affa-5102-4307-93db-04525f4c66f0\"}', '', '[[[NamespacePrefix]]]\\Joomla\\[[[ComponentNamespace]]].Table.Validator', '', '{}', '{}', '', '{\"use_selection0\":{\"use\":\"bfd1d6d5-56c1-4fe9-9fee-1c5910e1f5d8\",\"as\":\"default\"}}', 'CS8qKg0KCSAqIFRoZSBUYWJsZSBDbGFzcy4NCgkgKg0KCSAqIEB2YXIgICBUYWJsZQ0KCSAqIEBzaW5jZSA1LjMuMA0KCSAqLw0KCXByb3RlY3RlZCBUYWJsZSAkdGFibGU7DQoNCgkvKioNCgkgKiAgQSBtYXAgb2YgTXlTUUwgYmFzZSB0eXBlcyB0byB0aGVpciByZXNwZWN0aXZlIHZhbGlkYXRpb24gbWV0aG9kcy4NCgkgKg0KCSAqIEB2YXIgICBhcnJheQ0KCSAqIEBzaW5jZSA1LjMuMA0KCSAqLw0KCXByb3RlY3RlZCBhcnJheSAkdmFsaWRhdG9ycyA9IFtdOw0KDQoJLyoqDQoJICogIEEgbWFwIG9mIGRlZmF1bHRzIGZvciB0aGUgcmVzcGVjdGl2ZSBkYXRhdHlwZXMuDQoJICoNCgkgKiBAdmFyICAgYXJyYXkNCgkgKiBAc2luY2UgNS4zLjANCgkgKi8NCglwcm90ZWN0ZWQgYXJyYXkgJGRlZmF1bHRzID0gW107DQoNCgkvKioNCgkgKiAgQ2FjaGUgb2YgdGhlIHBhcnNlZCBkYXRhdHlwZSBkZXRhaWxzDQoJICoNCgkgKiBAdmFyICAgYXJyYXkNCgkgKiBAc2luY2UgNS4zLjANCgkgKi8NCglwcm90ZWN0ZWQgYXJyYXkgJGRhdGF0eXBlcyA9IFtdOw0KDQoJLyoqDQoJICogQ29uc3RydWN0b3IuDQoJICoNCgkgKiBAcGFyYW0gVGFibGUgICAkdGFibGUgICBUaGUgVGFibGUgQ2xhc3MuDQoJICoNCgkgKiBAc2luY2UgNS4zLjANCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoVGFibGUgJHRhYmxlKQ0KCXsNCgkJJHRoaXMtPnRhYmxlID0gJHRhYmxlOw0KDQoJCS8vIFJlZ2lzdGVyIGRhdGF0eXBlIHZhbGlkYXRvcnMgKG1hcHBpbmcgTXlTUUwgdHlwZXMgdG8gaGFuZGxlcnMpDQoJCSR0aGlzLT5yZWdpc3RlclZhbGlkYXRvcnMoKTsNCg0KCQkvLyBSZWdpc3RlciBkYXRhdHlwZSBkZWZhdWx0cw0KCQkkdGhpcy0+cmVnaXN0ZXJEZWZhdWx0cygpOw0KCX0NCg0KCS8qKg0KCSAqIFJldHVybnMgdGhlIHZhbGlkIHZhbHVlIGJhc2VkIG9uIGRhdGF0eXBlIGRlZmluaXRpb24uDQoJICogSWYgdGhlIHZhbHVlIGlzIHZhbGlkLCByZXR1cm4gaXQuIElmIG5vdCwgcmV0dXJuIHRoZSBkZWZhdWx0IHZhbHVlLA0KCSAqIE5VTEwgKGlmIGFsbG93ZWQpLCBvciBhbiBlbXB0eSBzdHJpbmcgaWYgJ0VNUFRZJyBpcyBzZXQuDQoJICoNCgkgKiBAcGFyYW0gbWl4ZWQgICR2YWx1ZSAgVGhlIHZhbHVlIHRvIHZhbGlkYXRlLg0KCSAqIEBwYXJhbSBzdHJpbmcgJGZpZWxkICBUaGUgZmllbGQgbmFtZS4NCgkgKiBAcGFyYW0gc3RyaW5nICR0YWJsZSAgVGhlIHRhYmxlIG5hbWUuDQoJICoNCgkgKiBAcmV0dXJuIG1peGVkIFJldHVybnMgdGhlIHZhbGlkIHZhbHVlLCBvciB0aGUgZGVmYXVsdCwgTlVMTCwgb3IgZW1wdHkgc3RyaW5nIGJhc2VkIG9uIHZhbGlkYXRpb24uDQoJICogQHNpbmNlIDUuMy4wDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGdldFZhbGlkKCR2YWx1ZSwgc3RyaW5nICRmaWVsZCwgc3RyaW5nICR0YWJsZSkNCgl7DQoJCS8vIEdldCB0aGUgZGF0YWJhc2UgZmllbGQgZGVmaW5pdGlvbg0KCQlpZiAoKCRkYkZpZWxkID0gJHRoaXMtPmdldERhdGFiYXNlRmllbGQoJGZpZWxkLCAkdGFibGUpKSA9PT0gbnVsbCkNCgkJew0KCQkJcmV0dXJuIG51bGw7IC8vIG5vdCBsZWdhbCBmaWVsZCBvciB0YWJsZQ0KCQl9DQoNCgkJLy8gQ2hlY2sgaWYgdGhlIHZhbHVlIGlzIHZhbGlkIGZvciB0aGUgZmllbGQNCgkJaWYgKCR0aGlzLT52YWxpZGF0ZSgkdmFsdWUsICRkYkZpZWxkKSkNCgkJew0KCQkJcmV0dXJuICR2YWx1ZTsNCgkJfQ0KDQoJCS8vIElmIGludmFsaWQsIHJldHVybiBkZWZhdWx0LCBOVUxMIChpZiBhbGxvd2VkKSwgb3IgZW1wdHkgc3RyaW5nDQoJCXJldHVybiAkdGhpcy0+Z2V0RGVmYXVsdCgkZGJGaWVsZCwgJHZhbHVlKTsNCgl9DQoNCgkvKioNCgkgKiBWYWxpZGF0ZSBpZiB0aGUgZ2l2ZW4gdmFsdWUgaXMgdmFsaWQgZm9yIHRoZSBwcm92aWRlZCBkYXRhYmFzZSBmaWVsZC4NCgkgKiBUaGlzIGlzIGEgcHJpdmF0ZSBtZXRob2QgYXMgYGdldFZhbGlkKClgIHdpbGwgaGFuZGxlIHRoZSBhY3R1YWwgbG9naWMuDQoJICoNCgkgKiBAcGFyYW0gbWl4ZWQgICR2YWx1ZQlUaGUgdmFsdWUgdG8gdmFsaWRhdGUuDQoJICogQHBhcmFtIGFycmF5ICAkZGJGaWVsZCAgVGhlIGRhdGFiYXNlIGZpZWxkIGRldGFpbHMgKHR5cGUsIGRlZmF1bHQsIG51bGxfc3dpdGNoLCBldGMuKS4NCgkgKg0KCSAqIEByZXR1cm4gYm9vbCBSZXR1cm5zIHRydWUgaWYgdGhlIHZhbHVlIGlzIHZhbGlkLCBmYWxzZSBvdGhlcndpc2UuDQoJICogQHNpbmNlIDUuMy4wDQoJICovDQoJcHJpdmF0ZSBmdW5jdGlvbiB2YWxpZGF0ZSgkdmFsdWUsIGFycmF5ICRkYkZpZWxkKTogYm9vbA0KCXsNCgkJLy8gRXh0cmFjdCBkYXRhdHlwZSBhbmQgaGFuZGxlIHRoZSB2YWxpZGF0aW9uDQoJCSR0eXBlSW5mbyA9ICR0aGlzLT5wYXJzZURhdGFUeXBlKCRkYkZpZWxkWyd0eXBlJ10pOw0KCQkkYmFzZVR5cGUgPSAkdHlwZUluZm9bJ3R5cGUnXTsNCgkJDQoJCS8vIFVzZSB0aGUgYXBwcm9wcmlhdGUgdmFsaWRhdG9yIGlmIGl0IGV4aXN0cw0KCQlpZiAoaXNzZXQoJHRoaXMtPnZhbGlkYXRvcnNbJGJhc2VUeXBlXSkpDQoJCXsNCgkJCXJldHVybiBjYWxsX3VzZXJfZnVuYygkdGhpcy0+dmFsaWRhdG9yc1skYmFzZVR5cGVdLCAkdmFsdWUsICR0eXBlSW5mbyk7DQoJCX0NCg0KCQkvLyBJZiBubyB2YWxpZGF0b3IgZXhpc3RzLCBhc3N1bWUgaW52YWxpZA0KCQlyZXR1cm4gZmFsc2U7DQoJfQ0KDQoJLyoqDQoJICogSGFuZGxlIHJldHVybmluZyB0aGUgZGVmYXVsdCB2YWx1ZSwgbnVsbCwgb3IgZW1wdHkgc3RyaW5nIGlmIHZhbGlkYXRpb24gZmFpbHMuDQoJICoNCgkgKiBAcGFyYW0gYXJyYXkgICRkYkZpZWxkICBUaGUgZGF0YWJhc2UgZmllbGQgZGV0YWlscy4NCgkgKiBAcGFyYW0gbWl4ZWQgICR2YWx1ZQlUaGUgdmFsdWUgdG8gdmFsaWRhdGUuDQoJICoNCgkgKiBAcmV0dXJuIG1peGVkIFRoZSBkZWZhdWx0IHZhbHVlLCBudWxsLCBvciBlbXB0eSBzdHJpbmcgYmFzZWQgb24gZmllbGQgc2V0dGluZ3MuDQoJICogQHNpbmNlIDUuMy4wDQoJICovDQoJcHJpdmF0ZSBmdW5jdGlvbiBnZXREZWZhdWx0KGFycmF5ICRkYkZpZWxkLCAkdmFsdWUpDQoJew0KCQkvLyBnZXQgZGVmYXVsdCB2YWx1ZSBmcm9tIGZpZWxkIGRiDQoJCSRkYl9kZWZhdWx0ID0gaXNzZXQoJGRiRmllbGRbJ2RlZmF1bHQnXSkgPyAkZGJGaWVsZFsnZGVmYXVsdCddIDogbnVsbDsNCg0KCQkvLyBJZiBhIGRlZmF1bHQgdmFsdWUgaXMgcHJvdmlkZWQsIHJldHVybiBpdA0KCQlpZiAoJGRiX2RlZmF1bHQgIT09IG51bGwpDQoJCXsNCgkJCXJldHVybiBzdHJ0b3VwcGVyKCRkYl9kZWZhdWx0KSA9PT0gJ0VNUFRZJyA/ICcnIDogJGRiX2RlZmF1bHQ7DQoJCX0NCg0KCQkvLyBDaGVjayBpZiBOVUxMIGlzIGFsbG93ZWQNCgkJaWYgKGlzc2V0KCRkYkZpZWxkWydudWxsX3N3aXRjaCddKSAmJiBzdHJ0b3VwcGVyKCRkYkZpZWxkWydudWxsX3N3aXRjaCddKSA9PT0gJ05VTEwnKQ0KCQl7DQoJCQlyZXR1cm4gbnVsbDsNCgkJfQ0KDQoJCS8vIEZhbGxiYWNrIHRvIGRhdGF0eXBlIGRlZmF1bHQNCgkJJHR5cGVJbmZvID0gJHRoaXMtPnBhcnNlRGF0YVR5cGUoJGRiRmllbGRbJ3R5cGUnXSk7DQoJCXJldHVybiAkdGhpcy0+ZGVmYXVsdHNbJHR5cGVJbmZvWyd0eXBlJ11dID8/ICcnOw0KCX0NCg0KCS8qKg0KCSAqIFBhcnNlIHRoZSBkYXRhIHR5cGUgZnJvbSB0aGUgZGF0YWJhc2UgZmllbGQgYW5kIGV4dHJhY3QgZGV0YWlscyBsaWtlIHR5cGUsIHNpemUsIGFuZCBwcmVjaXNpb24uDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICRkYXRhdHlwZSBUaGUgZnVsbCBNeVNRTCBkYXRhdHlwZSAoZS5nLiwgVkFSQ0hBUigyNTUpKS4NCgkgKg0KCSAqIEByZXR1cm4gYXJyYXkgQW4gYXJyYXkgY29udGFpbmluZyAndHlwZScsICdzaXplJywgYW5kIG90aGVyIHJlbGV2YW50IGluZm8uDQoJICogQHNpbmNlIDUuMy4wDQoJICovDQoJcHJpdmF0ZSBmdW5jdGlvbiBwYXJzZURhdGFUeXBlKHN0cmluZyAkZGF0YXR5cGUpOiBhcnJheQ0KCXsNCgkJaWYgKGlzc2V0KCR0aGlzLT5kYXRhdHlwZXNbJGRhdGF0eXBlXSkpDQoJCXsNCgkJCXJldHVybiAkdGhpcy0+ZGF0YXR5cGVzWyRkYXRhdHlwZV07DQoJCX0NCg0KCQkkcGF0dGVybiA9ICcvKD88dHlwZT5cdyspKFwoKD88c2l6ZT5cZCspKCxccyooPzxwcmVjaXNpb24+XGQrKSk/XCkpPy9pJzsNCgkJcHJlZ19tYXRjaCgkcGF0dGVybiwgJGRhdGF0eXBlLCAkbWF0Y2hlcyk7DQoJCQ0KCQkkcmVzdWx0ID0gWw0KCQkJJ3R5cGUnID0+IGlzc2V0KCRtYXRjaGVzWyd0eXBlJ10pID8gc3RydG9sb3dlcigkbWF0Y2hlc1sndHlwZSddKSA6IHN0cnRvbG93ZXIoJGRhdGF0eXBlKSwNCgkJCSdzaXplJyA9PiAkbWF0Y2hlc1snc2l6ZSddID8/IG51bGwsDQoJCQkncHJlY2lzaW9uJyA9PiAkbWF0Y2hlc1sncHJlY2lzaW9uJ10gPz8gbnVsbCwNCgkJXTsNCg0KCQlyZXR1cm4gJHRoaXMtPmRhdGF0eXBlc1skZGF0YXR5cGVdID0gJHJlc3VsdDsNCgl9DQoNCgkvKioNCgkgKiBSZXRyaWV2ZSB0aGUgZGF0YWJhc2UgZmllbGQgc3RydWN0dXJlIGZvciB0aGUgc3BlY2lmaWVkIGZpZWxkIGFuZCB0YWJsZS4NCgkgKiBJbiB5b3VyIGNhc2UsIHlvdSB1c2UgYCRkYiA9ICR0aGlzLT50YWJsZS0+Z2V0KCR0YWJsZSwgJGZpZWxkLCAnZGInKWAuDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICRmaWVsZCAgVGhlIGZpZWxkIG5hbWUuDQoJICogQHBhcmFtIHN0cmluZyAkdGFibGUgIFRoZSB0YWJsZSBuYW1lLg0KCSAqDQoJICogQHJldHVybiBhcnJheSBUaGUgZGF0YWJhc2UgZmllbGQgZGV0YWlscywgaW5jbHVkaW5nIHR5cGUsIGRlZmF1bHQsIG51bGxfc3dpdGNoLCBldGMuDQoJICogQHNpbmNlIDUuMy4wDQoJICovDQoJcHJpdmF0ZSBmdW5jdGlvbiBnZXREYXRhYmFzZUZpZWxkKHN0cmluZyAkZmllbGQsIHN0cmluZyAkdGFibGUpOiBhcnJheQ0KCXsNCgkJLy8gU2ltdWxhdGVkIHJldHJpZXZhbCBvZiBmaWVsZCBkZXRhaWxzLiBSZXBsYWNlIHdpdGggYWN0dWFsIGxvZ2ljLg0KCQlyZXR1cm4gJHRoaXMtPnRhYmxlLT5nZXQoJHRhYmxlLCAkZmllbGQsICdkYicpOw0KCX0NCg0KCS8qKg0KCSAqIFJlZ2lzdGVyIHZhbGlkYXRvcnMgZm9yIE15U1FMIGRhdGEgdHlwZXMuDQoJICoNCgkgKiBAcmV0dXJuIHZvaWQNCgkgKiBAc2luY2UgNS4zLjANCgkgKi8NCglwcml2YXRlIGZ1bmN0aW9uIHJlZ2lzdGVyVmFsaWRhdG9ycygpOiB2b2lkDQoJew0KCQkkdGhpcy0+dmFsaWRhdG9ycyA9IFsNCgkJCSdpbnQnID0+IFskdGhpcywgJ3ZhbGlkYXRlSW50ZWdlciddLA0KCQkJJ3RpbnlpbnQnID0+IFskdGhpcywgJ3ZhbGlkYXRlSW50ZWdlciddLA0KCQkJJ3NtYWxsaW50JyA9PiBbJHRoaXMsICd2YWxpZGF0ZUludGVnZXInXSwNCgkJCSdtZWRpdW1pbnQnID0+IFskdGhpcywgJ3ZhbGlkYXRlSW50ZWdlciddLA0KCQkJJ2JpZ2ludCcgPT4gWyR0aGlzLCAndmFsaWRhdGVJbnRlZ2VyJ10sDQoJCQkndmFyY2hhcicgPT4gWyR0aGlzLCAndmFsaWRhdGVTdHJpbmcnXSwNCgkJCSdjaGFyJyA9PiBbJHRoaXMsICd2YWxpZGF0ZVN0cmluZyddLA0KCQkJJ3RleHQnID0+IFskdGhpcywgJ3ZhbGlkYXRlVGV4dCddLA0KCQkJJ3Rpbnl0ZXh0JyA9PiBbJHRoaXMsICd2YWxpZGF0ZVRleHQnXSwNCgkJCSdtZWRpdW10ZXh0JyA9PiBbJHRoaXMsICd2YWxpZGF0ZVRleHQnXSwNCgkJCSdsb25ndGV4dCcgPT4gWyR0aGlzLCAndmFsaWRhdGVUZXh0J10sDQoJCQknZGVjaW1hbCcgPT4gWyR0aGlzLCAndmFsaWRhdGVEZWNpbWFsJ10sDQoJCQknZmxvYXQnID0+IFskdGhpcywgJ3ZhbGlkYXRlRmxvYXQnXSwNCgkJCSdkb3VibGUnID0+IFskdGhpcywgJ3ZhbGlkYXRlRmxvYXQnXSwNCgkJCSdkYXRlJyA9PiBbJHRoaXMsICd2YWxpZGF0ZURhdGUnXSwNCgkJCSdkYXRldGltZScgPT4gWyR0aGlzLCAndmFsaWRhdGVEYXRlJ10sDQoJCQkndGltZXN0YW1wJyA9PiBbJHRoaXMsICd2YWxpZGF0ZURhdGUnXSwNCgkJCSd0aW1lJyA9PiBbJHRoaXMsICd2YWxpZGF0ZURhdGUnXSwNCgkJCSdqc29uJyA9PiBbJHRoaXMsICd2YWxpZGF0ZUpzb24nXSwNCgkJCSdibG9iJyA9PiBbJHRoaXMsICd2YWxpZGF0ZUJsb2InXSwNCgkJCSd0aW55YmxvYicgPT4gWyR0aGlzLCAndmFsaWRhdGVCbG9iJ10sDQoJCQknbWVkaXVtYmxvYicgPT4gWyR0aGlzLCAndmFsaWRhdGVCbG9iJ10sDQoJCQknbG9uZ2Jsb2InID0+IFskdGhpcywgJ3ZhbGlkYXRlQmxvYiddLA0KCQldOw0KCX0NCg0KCS8qKg0KCSAqIFJlZ2lzdGVyIGRlZmF1bHQgdmFsdWVzIGZvciBNeVNRTCBkYXRhIHR5cGVzLg0KCSAqDQoJICogQHJldHVybiB2b2lkDQoJICogQHNpbmNlIDUuMy4wDQoJICovDQoJcHJpdmF0ZSBmdW5jdGlvbiByZWdpc3RlckRlZmF1bHRzKCk6IHZvaWQNCgl7DQoJCSR0aGlzLT5kZWZhdWx0cyA9IFsNCgkJCSdpbnQnID0+IDAsDQoJCQkndGlueWludCcgPT4gMCwNCgkJCSdzbWFsbGludCcgPT4gMCwNCgkJCSdtZWRpdW1pbnQnID0+IDAsDQoJCQknYmlnaW50JyA9PiAwLA0KCQkJJ3ZhcmNoYXInID0+ICcnLA0KCQkJJ2NoYXInID0+ICcnLA0KCQkJJ3RleHQnID0+ICcnLA0KCQkJJ3Rpbnl0ZXh0JyA9PiAnJywNCgkJCSdtZWRpdW10ZXh0JyA9PiAnJywNCgkJCSdsb25ndGV4dCcgPT4gJycsDQoJCQknZGVjaW1hbCcgPT4gMC4wLA0KCQkJJ2Zsb2F0JyA9PiAwLjAsDQoJCQknZG91YmxlJyA9PiAwLjAsDQoJCQknZGF0ZScgPT4gJzAwMDAtMDAtMDAnLA0KCQkJJ2RhdGV0aW1lJyA9PiAnMDAwMC0wMC0wMCAwMDowMDowMCcsDQoJCQkndGltZXN0YW1wJyA9PiAnMDAwMC0wMC0wMCAwMDowMDowMCcsDQoJCQkndGltZScgPT4gJzAwOjAwOjAwJywNCgkJCSdqc29uJyA9PiAne30nLA0KCQkJJ2Jsb2InID0+ICcnLA0KCQkJJ3RpbnlibG9iJyA9PiAnJywNCgkJCSdtZWRpdW1ibG9iJyA9PiAnJywNCgkJCSdsb25nYmxvYicgPT4gJycsDQoJCV07DQoJfQ0KDQoJLy8gLS0tLS0tLS0tLS0tLS0tLS0gVmFsaWRhdGlvbiBNZXRob2RzIC0tLS0tLS0tLS0tLS0tLS0tDQoNCgkvKioNCgkgKiBWYWxpZGF0ZSBpbnRlZ2VyIHR5cGVzIChpbmNsdWRpbmcgdGlueWludCwgc21hbGxpbnQsIG1lZGl1bWludCwgZXRjLikuDQoJICoNCgkgKiBAcGFyYW0gbWl4ZWQgJHZhbHVlCVRoZSB2YWx1ZSB0byB2YWxpZGF0ZS4NCgkgKiBAcGFyYW0gYXJyYXkgJHR5cGVJbmZvIFRoZSBwYXJzZWQgZGF0YSB0eXBlIGluZm9ybWF0aW9uLg0KCSAqDQoJICogQHJldHVybiBib29sIFRydWUgaWYgdmFsaWQsIGZhbHNlIG90aGVyd2lzZS4NCgkgKiBAc2luY2UgNS4zLjANCgkgKi8NCglwcml2YXRlIGZ1bmN0aW9uIHZhbGlkYXRlSW50ZWdlcigkdmFsdWUsIGFycmF5ICR0eXBlSW5mbyk6IGJvb2wNCgl7DQoJCWlmICghaXNfbnVtZXJpYygkdmFsdWUpKQ0KCQl7DQoJCQlyZXR1cm4gZmFsc2U7DQoJCX0NCg0KCQkkdmFsdWUgPSAoaW50KSR2YWx1ZTsNCgkJaWYgKGlzc2V0KCR0eXBlSW5mb1sndW5zaWduZWQnXSkgJiYgJHR5cGVJbmZvWyd1bnNpZ25lZCddICYmICR2YWx1ZSA8IDApDQoJCXsNCgkJCXJldHVybiBmYWxzZTsNCgkJfQ0KDQoJCXJldHVybiB0cnVlOw0KCX0NCg0KCS8qKg0KCSAqIFZhbGlkYXRlIHN0cmluZyB0eXBlcyBsaWtlIFZBUkNIQVIgYW5kIENIQVIuDQoJICoNCgkgKiBAcGFyYW0gbWl4ZWQgJHZhbHVlCVRoZSB2YWx1ZSB0byB2YWxpZGF0ZS4NCgkgKiBAcGFyYW0gYXJyYXkgJHR5cGVJbmZvIFRoZSBwYXJzZWQgZGF0YSB0eXBlIGluZm9ybWF0aW9uLg0KCSAqDQoJICogQHJldHVybiBib29sIFRydWUgaWYgdmFsaWQsIGZhbHNlIG90aGVyd2lzZS4NCgkgKiBAc2luY2UgNS4zLjANCgkgKi8NCglwcml2YXRlIGZ1bmN0aW9uIHZhbGlkYXRlU3RyaW5nKCR2YWx1ZSwgYXJyYXkgJHR5cGVJbmZvKTogYm9vbA0KCXsNCgkJaWYgKCFpc19zdHJpbmcoJHZhbHVlKSkNCgkJew0KCQkJcmV0dXJuIGZhbHNlOw0KCQl9DQoNCgkJLy8gQ2hlY2sgaWYgdGhlIGxlbmd0aCBleGNlZWRzIHRoZSBhbGxvd2VkIHNpemUNCgkJaWYgKCR0eXBlSW5mb1snc2l6ZSddICE9PSBudWxsICYmIHN0cmxlbigkdmFsdWUpID4gKGludCkkdHlwZUluZm9bJ3NpemUnXSkNCgkJew0KCQkJcmV0dXJuIGZhbHNlOw0KCQl9DQoNCgkJcmV0dXJuIHRydWU7DQoJfQ0KDQoJLyoqDQoJICogVmFsaWRhdGUgdGV4dCB0eXBlcyBsaWtlIFRFWFQsIFRJTllURVhULCBNRURJVU1URVhULCBMT05HVEVYVC4NCgkgKg0KCSAqIEBwYXJhbSBtaXhlZCAkdmFsdWUJVGhlIHZhbHVlIHRvIHZhbGlkYXRlLg0KCSAqIEBwYXJhbSBhcnJheSAkdHlwZUluZm8gVGhlIHBhcnNlZCBkYXRhIHR5cGUgaW5mb3JtYXRpb24uDQoJICoNCgkgKiBAcmV0dXJuIGJvb2wgVHJ1ZSBpZiB2YWxpZCwgZmFsc2Ugb3RoZXJ3aXNlLg0KCSAqIEBzaW5jZSA1LjMuMA0KCSAqLw0KCXByaXZhdGUgZnVuY3Rpb24gdmFsaWRhdGVUZXh0KCR2YWx1ZSwgYXJyYXkgJHR5cGVJbmZvKTogYm9vbA0KCXsNCgkJcmV0dXJuIGlzX3N0cmluZygkdmFsdWUpOw0KCX0NCg0KCS8qKg0KCSAqIFZhbGlkYXRlIGZsb2F0LCBkb3VibGUsIGFuZCBkZWNpbWFsIHR5cGVzLg0KCSAqDQoJICogQHBhcmFtIG1peGVkICR2YWx1ZQlUaGUgdmFsdWUgdG8gdmFsaWRhdGUuDQoJICogQHBhcmFtIGFycmF5ICR0eXBlSW5mbyBUaGUgcGFyc2VkIGRhdGEgdHlwZSBpbmZvcm1hdGlvbi4NCgkgKg0KCSAqIEByZXR1cm4gYm9vbCBUcnVlIGlmIHZhbGlkLCBmYWxzZSBvdGhlcndpc2UuDQoJICogQHNpbmNlIDUuMy4wDQoJICovDQoJcHJpdmF0ZSBmdW5jdGlvbiB2YWxpZGF0ZUZsb2F0KCR2YWx1ZSwgYXJyYXkgJHR5cGVJbmZvKTogYm9vbA0KCXsNCgkJcmV0dXJuIGlzX251bWVyaWMoJHZhbHVlKTsNCgl9DQoNCgkvKioNCgkgKiBWYWxpZGF0ZSBkZWNpbWFsIHR5cGVzIChudW1lcmljIHByZWNpc2lvbiBhbmQgc2NhbGUpLg0KCSAqDQoJICogQHBhcmFtIG1peGVkICR2YWx1ZQlUaGUgdmFsdWUgdG8gdmFsaWRhdGUuDQoJICogQHBhcmFtIGFycmF5ICR0eXBlSW5mbyBUaGUgcGFyc2VkIGRhdGEgdHlwZSBpbmZvcm1hdGlvbi4NCgkgKg0KCSAqIEByZXR1cm4gYm9vbCBUcnVlIGlmIHZhbGlkLCBmYWxzZSBvdGhlcndpc2UuDQoJICogQHNpbmNlIDUuMy4wDQoJICovDQoJcHJpdmF0ZSBmdW5jdGlvbiB2YWxpZGF0ZURlY2ltYWwoJHZhbHVlLCBhcnJheSAkdHlwZUluZm8pOiBib29sDQoJew0KCQlyZXR1cm4gaXNfbnVtZXJpYygkdmFsdWUpOw0KCX0NCg0KCS8qKg0KCSAqIFZhbGlkYXRlIGRhdGUsIGRhdGV0aW1lLCB0aW1lc3RhbXAsIGFuZCB0aW1lIHR5cGVzLg0KCSAqDQoJICogQHBhcmFtIG1peGVkICR2YWx1ZQlUaGUgdmFsdWUgdG8gdmFsaWRhdGUuDQoJICogQHBhcmFtIGFycmF5ICR0eXBlSW5mbyBUaGUgcGFyc2VkIGRhdGEgdHlwZSBpbmZvcm1hdGlvbi4NCgkgKg0KCSAqIEByZXR1cm4gYm9vbCBUcnVlIGlmIHZhbGlkLCBmYWxzZSBvdGhlcndpc2UuDQoJICogQHNpbmNlIDUuMy4wDQoJICovDQoJcHJpdmF0ZSBmdW5jdGlvbiB2YWxpZGF0ZURhdGUoJHZhbHVlLCBhcnJheSAkdHlwZUluZm8pOiBib29sDQoJew0KCQkkZm9ybWF0cyA9IFsNCgkJCSdkYXRlJyA9PiAnWS1tLWQnLA0KCQkJJ2RhdGV0aW1lJyA9PiAnWS1tLWQgSDppOnMnLA0KCQkJJ3RpbWVzdGFtcCcgPT4gJ1ktbS1kIEg6aTpzJywNCgkJCSd0aW1lJyA9PiAnSDppOnMnLA0KCQldOw0KDQoJCWlmICghaXNzZXQoJGZvcm1hdHNbJHR5cGVJbmZvWyd0eXBlJ11dKSkNCgkJew0KCQkJcmV0dXJuIGZhbHNlOw0KCQl9DQoNCgkJJGRhdGVUaW1lID0gXERhdGVUaW1lOjpjcmVhdGVGcm9tRm9ybWF0KCRmb3JtYXRzWyR0eXBlSW5mb1sndHlwZSddXSwgJHZhbHVlKTsNCgkJcmV0dXJuICRkYXRlVGltZSAmJiAkZGF0ZVRpbWUtPmZvcm1hdCgkZm9ybWF0c1skdHlwZUluZm9bJ3R5cGUnXV0pID09PSAkdmFsdWU7DQoJfQ0KDQoJLyoqDQoJICogVmFsaWRhdGUgSlNPTiB0eXBlcy4NCgkgKg0KCSAqIEBwYXJhbSBtaXhlZCAkdmFsdWUJVGhlIHZhbHVlIHRvIHZhbGlkYXRlLg0KCSAqIEBwYXJhbSBhcnJheSAkdHlwZUluZm8gVGhlIHBhcnNlZCBkYXRhIHR5cGUgaW5mb3JtYXRpb24uDQoJICoNCgkgKiBAcmV0dXJuIGJvb2wgVHJ1ZSBpZiB2YWxpZCwgZmFsc2Ugb3RoZXJ3aXNlLg0KCSAqIEBzaW5jZSA1LjMuMA0KCSAqLw0KCXByaXZhdGUgZnVuY3Rpb24gdmFsaWRhdGVKc29uKCR2YWx1ZSwgYXJyYXkgJHR5cGVJbmZvKTogYm9vbA0KCXsNCgkJanNvbl9kZWNvZGUoJHZhbHVlKTsNCgkJcmV0dXJuIGpzb25fbGFzdF9lcnJvcigpID09PSBKU09OX0VSUk9SX05PTkU7DQoJfQ0KDQoJLyoqDQoJICogVmFsaWRhdGUgQkxPQiB0eXBlcyAoaW5jbHVkaW5nIFRJTllCTE9CLCBNRURJVU1CTE9CLCBMT05HQkxPQikuDQoJICoNCgkgKiBAcGFyYW0gbWl4ZWQgJHZhbHVlCVRoZSB2YWx1ZSB0byB2YWxpZGF0ZS4NCgkgKiBAcGFyYW0gYXJyYXkgJHR5cGVJbmZvIFRoZSBwYXJzZWQgZGF0YSB0eXBlIGluZm9ybWF0aW9uLg0KCSAqDQoJICogQHJldHVybiBib29sIFRydWUgaWYgdmFsaWQsIGZhbHNlIG90aGVyd2lzZS4NCgkgKiBAc2luY2UgNS4zLjANCgkgKi8NCglwcml2YXRlIGZ1bmN0aW9uIHZhbGlkYXRlQmxvYigkdmFsdWUsIGFycmF5ICR0eXBlSW5mbyk6IGJvb2wNCgl7DQoJCXJldHVybiBpc19zdHJpbmcoJHZhbHVlKSB8fCBpc19yZXNvdXJjZSgkdmFsdWUpOw0KCX0=', '{}', '{}', '', 1, '2024-10-16 21:49:22', 9, '', 1), +(848, 'd2a859ac-3f2a-4f69-a77f-f118b2e0a459', 'JCB.Import.Status', 'Status', 'final class', 'Import Status Class\r\n\r\n@since 5.0.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '{\"0\":\"0e44d149-4863-47ec-8f0f-6a821ab3e77f\"}', '', '[[[NamespacePrefix]]]\\Joomla\\[[[ComponentNamespace]]].Import.Status', '', '{}', '{}', '', '{\"use_selection0\":{\"use\":\"05744dd3-4030-4cf8-8dda-a93ab809b473\",\"as\":\"Item\"}}', 'CS8qKg0KCSAqIFRoZSBJdGVtIENsYXNzLg0KCSAqDQoJICogQHZhciAgIEl0ZW0NCgkgKiBAc2luY2UgNS4wLjINCgkgKi8NCglwcm90ZWN0ZWQgSXRlbSAkaXRlbTsNCg0KCS8qKg0KCSAqIFRhYmxlIE5hbWUNCgkgKg0KCSAqIEB2YXIgICAgc3RyaW5nDQoJICogQHNpbmNlIDUuMC4yDQoJICovDQoJcHJvdGVjdGVkIHN0cmluZyAkdGFibGU7DQoNCgkvKioNCgkgKiBTdGF0dXMgRmllbGQgTmFtZQ0KCSAqDQoJICogQHZhciAgICBzdHJpbmcNCgkgKiBAc2luY2UgNS4wLjINCgkgKi8NCglwcm90ZWN0ZWQgc3RyaW5nICRmaWVsZE5hbWU7DQoNCgkvKioNCgkgKiBDb25zdHJ1Y3Rvci4NCgkgKg0KCSAqIEBwYXJhbSBJdGVtICAgJGl0ZW0gICBUaGUgSXRlbSBDbGFzcy4NCgkgKiBAcGFyYW0gc3RyaW5nfG51bGwgJHRhYmxlICAgIFRoZSB0YWJsZSBuYW1lDQoJICogQHBhcmFtIHN0cmluZ3xudWxsICRmaWVsZCAgICBUaGUgZmllbGQgbmFtZS4NCgkgKg0KCSAqIEBzaW5jZSA1LjAuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdChJdGVtICRpdGVtLCA/c3RyaW5nICR0YWJsZSA9IG51bGwsID9zdHJpbmcgJGZpZWxkID0gbnVsbCkNCgl7DQoJCSR0aGlzLT5pdGVtID0gJGl0ZW07DQoNCgkJaWYgKCR0YWJsZSAhPT0gbnVsbCkNCgkJew0KCQkJJHRoaXMtPnRhYmxlID0gJHRhYmxlOw0KCQl9DQoNCgkJaWYgKCRmaWVsZCAhPT0gbnVsbCkNCgkJew0KCQkJJHRoaXMtPmZpZWxkID0gJGZpZWxkOw0KCQl9DQoJfQ0KDQoJLyoqDQoJICogVXBkYXRlcyB0aGUgc3RhdHVzIGluIHRoZSBkYXRhYmFzZS4NCgkgKg0KCSAqIFRoaXMgbWV0aG9kIHVwZGF0ZXMgdGhlIGltcG9ydCBzdGF0dXMgaW4gdGhlIGRhdGFiYXNlIGJhc2VkIG9uIHRoZSByZXN1bHQgb2YgdGhlIGltcG9ydCBwcm9jZXNzLg0KCSAqIFN0YXR1cyBjb2RlczoNCgkgKiAgLSAyOiBCZWluZyBQcm9jZXNzZWQuDQoJICogIC0gMzogSW1wb3J0IGNvbXBsZXRlZCBzdWNjZXNzZnVsbHkuDQoJICogIC0gNDogSW1wb3J0IGNvbXBsZXRlZCB3aXRoIGVycm9ycy4NCgkgKg0KCSAqIEBwYXJhbSBpbnQgICAgICRzdGF0dXMgIFRoZSBzdGF0dXMgY29kZSB0byBzZXQgZm9yIHRoZSBpbXBvcnQgKDIgPT4gcHJvY2Vzc2luZywgMyA9PiBzdWNjZXNzLCA0ID0+IGVycm9ycykuDQoJICogQHBhcmFtIHN0cmluZyAgJGd1aWQgICAgVGhlIHRhcmdldCBpbXBvcnQgR1VJRA0KCSAqDQoJICogQHJldHVybiB2b2lkDQoJICogQHNpbmNlICA1LjAuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBzZXQoaW50ICRzdGF0dXMsIHN0cmluZyAkZ3VpZCk6IHZvaWQNCgl7DQoJCSR0aGlzLT5pdGVtLT50YWJsZSgkdGhpcy0+Z2V0VGFibGUoKSktPnNldCgob2JqZWN0KSBbDQoJCQknZ3VpZCcgPT4gJGd1aWQsDQoJCQkkdGhpcy0+Z2V0RmllbGQoKSA9PiAkc3RhdHVzDQoJCV0pOw0KCX0NCg0KCS8qKg0KCSAqIFNldCB0aGUgY3VycmVudCBhY3RpdmUgdGFibGUNCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmcgICR0YWJsZSBUaGUgdGFibGUgdGhhdCBzaG91bGQgYmUgYWN0aXZlDQoJICoNCgkgKiBAcmV0dXJuIHNlbGYNCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gdGFibGUoc3RyaW5nICR0YWJsZSk6IHNlbGYNCgl7DQoJCSR0aGlzLT50YWJsZSA9ICR0YWJsZTsNCg0KCQlyZXR1cm4gJHRoaXM7DQoJfQ0KDQoJLyoqDQoJICogU2V0IHRoZSBjdXJyZW50IHRhcmdldCBzdGF0dXMgZmllbGQgbmFtZQ0KCSAqDQoJICogQHBhcmFtIHN0cmluZyAgJGZpZWxkTmFtZSBUaGUgZmllbGQgbmFtZSB3aGVyZSB0aGUgc3RhdHVzIGlzIHNldA0KCSAqDQoJICogQHJldHVybiBzZWxmDQoJICogQHNpbmNlIDMuMi4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGZpZWxkKHN0cmluZyAkZmllbGROYW1lKTogc2VsZg0KCXsNCgkJJHRoaXMtPmZpZWxkTmFtZSA9ICRmaWVsZE5hbWU7DQoNCgkJcmV0dXJuICR0aGlzOw0KCX0NCg0KCS8qKg0KCSAqIEdldCB0aGUgY3VycmVudCBhY3RpdmUgdGFibGUNCgkgKg0KCSAqIEByZXR1cm4gIHN0cmluZw0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBnZXRUYWJsZSgpOiBzdHJpbmcNCgl7DQoJCXJldHVybiAkdGhpcy0+dGFibGU7DQoJfQ0KDQoJLyoqDQoJICogR2V0IHRoZSBjdXJyZW50IHRhcmdldCBzdGF0dXMgZmllbGQgbmFtZQ0KCSAqDQoJICogQHJldHVybiBzdHJpbmcNCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZ2V0RmllbGQoKTogc3RyaW5nDQoJew0KCQlyZXR1cm4gJHRoaXMtPmZpZWxkTmFtZTsNCgl9', '{}', '{}', '', 1, '2024-10-17 21:23:03', 4, '', 1), +(849, '0e44d149-4863-47ec-8f0f-6a821ab3e77f', 'VDM.ImportStatusInterface', 'ImportStatusInterface', 'interface', 'Import Status Interface\r\n\r\n@since 3.2.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\[[[ComponentNamespace]]].Interfaces.ImportStatusInterface', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIFVwZGF0ZXMgdGhlIHN0YXR1cyBpbiB0aGUgZGF0YWJhc2UuDQoJICoNCgkgKiBUaGlzIG1ldGhvZCB1cGRhdGVzIHRoZSBpbXBvcnQgc3RhdHVzIGluIHRoZSBkYXRhYmFzZSBiYXNlZCBvbiB0aGUgcmVzdWx0IG9mIHRoZSBpbXBvcnQgcHJvY2Vzcy4NCgkgKiBTdGF0dXMgY29kZXM6DQoJICogIC0gMjogQmVpbmcgUHJvY2Vzc2VkLg0KCSAqICAtIDM6IEltcG9ydCBjb21wbGV0ZWQgc3VjY2Vzc2Z1bGx5Lg0KCSAqICAtIDQ6IEltcG9ydCBjb21wbGV0ZWQgd2l0aCBlcnJvcnMuDQoJICoNCgkgKiBAcGFyYW0gaW50ICAgICAkc3RhdHVzICBUaGUgc3RhdHVzIGNvZGUgdG8gc2V0IGZvciB0aGUgaW1wb3J0ICgyID0+IHByb2Nlc3NpbmcsIDMgPT4gc3VjY2VzcywgNCA9PiBlcnJvcnMpLg0KCSAqIEBwYXJhbSBzdHJpbmcgICRndWlkICAgIFRoZSB0YXJnZXQgaW1wb3J0IEdVSUQNCgkgKg0KCSAqIEByZXR1cm4gdm9pZA0KCSAqIEBzaW5jZSAgMy4yLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gc2V0KGludCAkc3RhdHVzLCBzdHJpbmcgJGd1aWQpOiB2b2lkOw0KDQoJLyoqDQoJICogU2V0IHRoZSBjdXJyZW50IGFjdGl2ZSB0YWJsZQ0KCSAqDQoJICogQHBhcmFtIHN0cmluZyAgJHRhYmxlIFRoZSB0YWJsZSB0aGF0IHNob3VsZCBiZSBhY3RpdmUNCgkgKg0KCSAqIEByZXR1cm4gc2VsZg0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiB0YWJsZShzdHJpbmcgJHRhYmxlKTogc2VsZjsNCg0KCS8qKg0KCSAqIFNldCB0aGUgY3VycmVudCB0YXJnZXQgc3RhdHVzIGZpZWxkIG5hbWUNCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmcgICRmaWVsZE5hbWUgVGhlIGZpZWxkIG5hbWUgd2hlcmUgdGhlIHN0YXR1cyBpcyBzZXQNCgkgKg0KCSAqIEByZXR1cm4gc2VsZg0KCSAqIEBzaW5jZSAzLjIuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBmaWVsZChzdHJpbmcgJGZpZWxkTmFtZSk6IHNlbGY7DQoNCgkvKioNCgkgKiBHZXQgdGhlIGN1cnJlbnQgYWN0aXZlIHRhYmxlDQoJICoNCgkgKiBAcmV0dXJuICBzdHJpbmcNCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZ2V0VGFibGUoKTogc3RyaW5nOw0KDQoJLyoqDQoJICogR2V0IHRoZSBjdXJyZW50IHRhcmdldCBzdGF0dXMgZmllbGQgbmFtZQ0KCSAqDQoJICogQHJldHVybiBzdHJpbmcNCgkgKiBAc2luY2UgMy4yLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZ2V0RmllbGQoKTogc3RyaW5nOw==', '{}', '{}', '', 1, '2024-10-17 21:23:53', 4, '', 1), +(850, 'eef6ffc2-2af0-4336-958f-e0b9cf7c4ad0', 'JCB.Import.Message', 'Message', 'final class', 'Import Messages Class\r\n\r\n@since 5.0.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '{\"0\":\"23ad6e72-1b82-40fb-836c-50da690bb174\"}', '', '[[[NamespacePrefix]]]\\Joomla\\[[[ComponentNamespace]]].Import.Message', '', '{}', '{}', '', '{\"use_selection0\":{\"use\":\"68a41264-64c0-441a-a3d8-8a5e557b1883\",\"as\":\"Update\"},\"use_selection1\":{\"use\":\"03bbc8d5-86e8-4d2f-ae5f-0d44a4f7af13\",\"as\":\"Insert\"},\"use_selection2\":{\"use\":\"9c513baf-b279-43fd-ae29-a585c8cbc4f0\",\"as\":\"default\"}}', 'CS8qKg0KCSAqIFRoZSBVcGRhdGUgQ2xhc3MuDQoJICoNCgkgKiBAdmFyICAgVXBkYXRlDQoJICogQHNpbmNlIDUuMC4yDQoJICovDQoJcHJvdGVjdGVkIFVwZGF0ZSAkdXBkYXRlOw0KDQoJLyoqDQoJICogVGhlIEluc2VydCBDbGFzcy4NCgkgKg0KCSAqIEB2YXIgICBJbnNlcnQNCgkgKiBAc2luY2UgNS4wLjINCgkgKi8NCglwcm90ZWN0ZWQgSW5zZXJ0ICRpbnNlcnQ7DQoNCgkvKioNCgkgKiBUaGUgc3VjY2VzcyBtZXNzYWdlIGJ1cy4NCgkgKg0KCSAqIEB2YXIgICBhcnJheQ0KCSAqIEBzaW5jZSA1LjAuMg0KCSAqLw0KCXByaXZhdGUgYXJyYXkgJHN1Y2Nlc3MgPSBbXTsNCg0KCS8qKg0KCSAqIFRoZSBpbmZvIG1lc3NhZ2UgYnVzLg0KCSAqDQoJICogQHZhciAgIGFycmF5DQoJICogQHNpbmNlIDUuMC4yDQoJICovDQoJcHJpdmF0ZSBhcnJheSAkaW5mbyA9IFtdOw0KDQoJLyoqDQoJICogVGhlIGVycm9yIG1lc3NhZ2UgYnVzLg0KCSAqDQoJICogQHZhciAgIGFycmF5DQoJICogQHNpbmNlIDUuMC4yDQoJICovDQoJcHJpdmF0ZSBhcnJheSAkZXJyb3IgPSBbXTsNCg0KCS8qKg0KCSAqIFRoZSBlbnRpdHkgR1VJRCB2YWx1ZS4NCgkgKg0KCSAqIEB2YXIgICBzdHJpbmcNCgkgKiBAc2luY2UgNS4wLjINCgkgKi8NCglwcml2YXRlID9zdHJpbmcgJGd1aWQgPSBudWxsOw0KDQoJLyoqDQoJICogVGhlIGVudGl0eSB0eXBlIHZhbHVlLg0KCSAqDQoJICogQHZhciAgIHN0cmluZ3xudWxsDQoJICogQHNpbmNlIDUuMC4yDQoJICovDQoJcHJpdmF0ZSA/c3RyaW5nICRlbnRpdHkgPSBudWxsOw0KDQoJLyoqDQoJICogVGhlIGVudGl0eSB0YWJsZSB2YWx1ZS4NCgkgKg0KCSAqIEB2YXIgICBzdHJpbmd8bnVsbA0KCSAqIEBzaW5jZSA1LjAuMg0KCSAqLw0KCXByaXZhdGUgP3N0cmluZyAkdGFibGUgPSBudWxsOw0KDQoJLyoqDQoJICogQ29uc3RydWN0b3IuDQoJICoNCgkgKiBAcGFyYW0gVXBkYXRlICAgJHVwZGF0ZSAgIFRoZSBVcGRhdGUgQ2xhc3MuDQoJICogQHBhcmFtIEluc2VydCAgICRpbnNlcnQgICBUaGUgSW5zZXJ0IENsYXNzLg0KCSAqDQoJICogQHNpbmNlIDUuMC4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KFVwZGF0ZSAkdXBkYXRlLCBJbnNlcnQgJGluc2VydCkNCgl7DQoJCSR0aGlzLT51cGRhdGUgPSAkdXBkYXRlOw0KCQkkdGhpcy0+aW5zZXJ0ID0gJGluc2VydDsNCgl9DQoNCgkvKioNCgkgKiBMb2FkIGFuIGVudGl0eSB0aGF0IHRoZXNlIG1lc3NhZ2UgYmVsb25nIHRvDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICRndWlkICAgVGhlIGVudGl0eSBndWlkIHRoZXNlIG1lc3NhZ2VzIG11c3QgYmUgbGlua2VkIHRvLg0KCSAqIEBwYXJhbSBzdHJpbmcgJGVudGl0eSBUaGUgZW50aXR5IHR5cGUgdGhlc2UgbWVzc2FnZXMgbXVzdCBiZSBsaW5rZWQgdG8uDQoJICogQHBhcmFtIHN0cmluZyAkdGFibGUgIFRoZSBtZXNzYWdlcyB0YWJsZSB3aGVyZSB0aGVzZSBtZXNzYWdlIG11c3QgYmUgc3RvcmVkLg0KCSAqDQoJICogQHJldHVybiAgc2VsZg0KCSAqIEB0aHJvd3MgXEludmFsaWRBcmd1bWVudEV4Y2VwdGlvbiBpZiBhbnkgb2YgdGhlIHBhcmFtZXRlcnMgYXJlIG51bGwgb3IgZW1wdHkuDQoJICogQHNpbmNlICA1LjAuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBsb2FkKHN0cmluZyAkZ3VpZCwgc3RyaW5nICRlbnRpdHksIHN0cmluZyAkdGFibGUpOiBzZWxmDQoJew0KCQlpZiAoZW1wdHkoJGd1aWQpIHx8IGVtcHR5KCRlbnRpdHkpIHx8IGVtcHR5KCR0YWJsZSkpDQoJCXsNCgkJCXRocm93IG5ldyBcSW52YWxpZEFyZ3VtZW50RXhjZXB0aW9uKCdHVUlELCBlbnRpdHksIGFuZCB0YWJsZSBtdXN0IG5vdCBiZSBudWxsIG9yIGVtcHR5LicpOw0KCQl9DQoNCgkJLy8gc2V0IGVudGl0eSBkZXRhaWxzDQoJCSR0aGlzLT5ndWlkID0gJGd1aWQ7DQoJCSR0aGlzLT5lbnRpdHkgPSAkZW50aXR5Ow0KCQkkdGhpcy0+dGFibGUgPSAkdGFibGU7DQoNCgkJcmV0dXJuICR0aGlzOw0KCX0NCg0KCS8qKg0KCSAqIEdldCB0aGUgbWVzc2FnZXMgb2YgdGhlIGxhc3QgaW1wb3J0IGV2ZW50DQoJICoNCgkgKiBAcmV0dXJuICBvYmplY3QNCgkgKiBAc2luY2UgIDUuMC4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGdldCgpOiBvYmplY3QNCgl7DQoJCXJldHVybiAgKG9iamVjdCkgWw0KCQkJJ21lc3NhZ2Vfc3VjY2VzcycgPT4gJHRoaXMtPnN1Y2Nlc3MgPz8gbnVsbCwNCgkJCSdtZXNzYWdlX2luZm8nID0+ICR0aGlzLT5pbmZvID8/IG51bGwsDQoJCQknbWVzc2FnZV9lcnJvcicgPT4gJHRoaXMtPmVycm9yID8/IG51bGwNCgkJXTsNCgl9DQoNCgkvKioNCgkgKiBSZXNldCB0aGUgbWVzc2FnZXMgb2YgdGhlIGxhc3QgaW1wb3J0IGV2ZW50DQoJICoNCgkgKiBAcmV0dXJuICB2b2lkDQoJICogQHNpbmNlICA1LjAuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiByZXNldCgpOiB2b2lkDQoJew0KCQkvLyBjbGVhciB0aGUgbWVzc2FnZSBidXMNCgkJJHRoaXMtPnN1Y2Nlc3MgPSBbXTsNCgkJJHRoaXMtPmluZm8gPSBbXTsNCgkJJHRoaXMtPmVycm9yID0gW107DQoNCgkJJHRoaXMtPmd1aWQgPSBudWxsOw0KCQkkdGhpcy0+ZW50aXR5ID0gbnVsbDsNCgkJJHRoaXMtPnRhYmxlID0gbnVsbDsNCgl9DQoNCgkvKioNCgkgKiBBcmNoaXZlIHRoZSBtZXNzYWdlcyBpbiB0aGUgREIgb2YgdGhlIGxhc3QgaW1wb3J0IGV2ZW50DQoJICoNCgkgKiBAcmV0dXJuICBzZWxmDQoJICogQHRocm93cyBcSW52YWxpZEFyZ3VtZW50RXhjZXB0aW9uIGlmIEdVSUQsIGVudGl0eSwgb3IgdGFibGUgaXMgbnVsbC4NCgkgKiBAc2luY2UgIDUuMC4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGFyY2hpdmUoKTogc2VsZg0KCXsNCgkJaWYgKGVtcHR5KCR0aGlzLT5ndWlkKSB8fCBlbXB0eSgkdGhpcy0+ZW50aXR5KSB8fCBlbXB0eSgkdGhpcy0+dGFibGUpKQ0KCQl7DQoJCQl0aHJvdyBuZXcgXEludmFsaWRBcmd1bWVudEV4Y2VwdGlvbignR1VJRCwgZW50aXR5LCBhbmQgdGFibGUgbXVzdCBub3QgYmUgbnVsbCBvciBlbXB0eS4nKTsNCgkJfQ0KDQoJCS8vIHRyYXNoIGFsbCBtZXNzYWdlcyBmcm9tIHRoZSBwYXN0DQoJCSR0aGlzLT51cGRhdGUtPnRhYmxlKCR0aGlzLT50YWJsZSktPnJvd3MoW1snZW50aXR5JyA9PiAkdGhpcy0+Z3VpZCwgJ3B1Ymxpc2hlZCcgPT4gLTJdXSwgJ2VudGl0eScpOw0KDQoJCXJldHVybiAkdGhpczsNCgl9DQoNCgkvKioNCgkgKiBTZXQgdGhlIG1lc3NhZ2VzIGluIHRoZSBEQiBvZiB0aGUgbGFzdCBpbXBvcnQgZXZlbnQNCgkgKg0KCSAqIEByZXR1cm4gIHNlbGYNCgkgKiBAdGhyb3dzIFxJbnZhbGlkQXJndW1lbnRFeGNlcHRpb24gaWYgR1VJRCwgZW50aXR5LCBvciB0YWJsZSBpcyBudWxsLg0KCSAqIEBzaW5jZSAgNS4wLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gc2V0KCk6IHNlbGYNCgl7DQoJCWlmIChlbXB0eSgkdGhpcy0+Z3VpZCkgfHwgZW1wdHkoJHRoaXMtPmVudGl0eSkgfHwgZW1wdHkoJHRoaXMtPnRhYmxlKSkNCgkJew0KCQkJdGhyb3cgbmV3IFxJbnZhbGlkQXJndW1lbnRFeGNlcHRpb24oJ0dVSUQsIGVudGl0eSwgYW5kIHRhYmxlIG11c3Qgbm90IGJlIG51bGwgb3IgZW1wdHkuJyk7DQoJCX0NCg0KCQkvLyBzdGFydCBtZXNzYWdlIGJ1Y2tldA0KCQkkbWVzc2FnZXMgPSBbXTsNCg0KCQkvLyBzZXQgdGhlIHN1Y2Nlc3MgbWVzc2FnZXMNCgkJaWYgKCFlbXB0eSgkdGhpcy0+c3VjY2VzcykpDQoJCXsNCgkJCWZvcmVhY2ggKCR0aGlzLT5zdWNjZXNzIGFzICRtZXNzYWdlKQ0KCQkJew0KCQkJCSRtZXNzYWdlc1tdID0gWw0KCQkJCQknZ3VpZCcgPT4gR3VpZEhlbHBlcjo6Z2V0KCksDQoJCQkJCSdlbnRpdHknID0+ICR0aGlzLT5ndWlkLA0KCQkJCQknZW50aXR5X3R5cGUnID0+ICR0aGlzLT5lbnRpdHksDQoJCQkJCSdtZXNzYWdlJyA9PiAkbWVzc2FnZSwNCgkJCQkJJ21lc3NhZ2Vfc3RhdHVzJyA9PiAxDQoJCQkJXTsNCgkJCX0NCgkJfQ0KDQoJCS8vIHNldCB0aGUgaW5mbyBtZXNzYWdlcw0KCQlpZiAoIWVtcHR5KCR0aGlzLT5pbmZvKSkNCgkJew0KCQkJZm9yZWFjaCAoJHRoaXMtPmluZm8gYXMgJG1lc3NhZ2UpDQoJCQl7DQoJCQkJJG1lc3NhZ2VzW10gPSBbDQoJCQkJCSdndWlkJyA9PiBHdWlkSGVscGVyOjpnZXQoKSwNCgkJCQkJJ2VudGl0eScgPT4gJHRoaXMtPmd1aWQsDQoJCQkJCSdlbnRpdHlfdHlwZScgPT4gJHRoaXMtPmVudGl0eSwNCgkJCQkJJ21lc3NhZ2UnID0+ICRtZXNzYWdlLA0KCQkJCQknbWVzc2FnZV9zdGF0dXMnID0+IDINCgkJCQldOw0KCQkJfQ0KCQl9DQoNCgkJLy8gc2V0IHRoZSBlcnJvciBtZXNzYWdlcw0KCQlpZiAoIWVtcHR5KCR0aGlzLT5lcnJvcikpDQoJCXsNCgkJCWZvcmVhY2ggKCR0aGlzLT5lcnJvciBhcyAkbWVzc2FnZSkNCgkJCXsNCgkJCQkkbWVzc2FnZXNbXSA9IFsNCgkJCQkJJ2d1aWQnID0+IEd1aWRIZWxwZXI6OmdldCgpLA0KCQkJCQknZW50aXR5JyA9PiAkdGhpcy0+Z3VpZCwNCgkJCQkJJ2VudGl0eV90eXBlJyA9PiAkdGhpcy0+ZW50aXR5LA0KCQkJCQknbWVzc2FnZScgPT4gJG1lc3NhZ2UsDQoJCQkJCSdtZXNzYWdlX3N0YXR1cycgPT4gMw0KCQkJCV07DQoJCQl9DQoJCX0NCg0KCQkkdGhpcy0+aW5zZXJ0LT50YWJsZSgkdGhpcy0+dGFibGUpLT5yb3dzKCRtZXNzYWdlcyk7DQoNCgkJcmV0dXJuICR0aGlzOw0KCX0NCg0KCS8qKg0KCSAqIEFkZHMgYSBzdWNjZXNzIG1lc3NhZ2UgdG8gdGhlIGxvZy4NCgkgKg0KCSAqIFRoaXMgbWV0aG9kIHJlY29yZHMgYSBzdWNjZXNzIG1lc3NhZ2UgZm9yIHRoZSBpbXBvcnQgcHJvY2Vzcy4gVGhlIG1lc3NhZ2UgcHJvdmlkZXMgDQoJICogcmVsZXZhbnQgaW5mb3JtYXRpb24sIHN1Y2ggYXMgdGhlIG51bWJlciBvZiByb3dzIHByb2Nlc3NlZCBhbmQgdGhlIHN1Y2Nlc3MgcmF0ZS4NCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmcgJG1lc3NhZ2UgVGhlIHN1Y2Nlc3MgbWVzc2FnZSB0byBsb2cuDQoJICoNCgkgKiBAcmV0dXJuIHNlbGYNCgkgKiBAc2luY2UgIDUuMC4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGFkZFN1Y2Nlc3Moc3RyaW5nICRtZXNzYWdlKTogc2VsZg0KCXsNCgkJJHRoaXMtPnN1Y2Nlc3NbXSA9ICRtZXNzYWdlOw0KDQoJCXJldHVybiAkdGhpczsNCgl9DQoNCgkvKioNCgkgKiBBZGRzIGEgaW5mbyBtZXNzYWdlIHRvIHRoZSBsb2cuDQoJICoNCgkgKiBUaGlzIG1ldGhvZCByZWNvcmRzIGEgaW5mbyBtZXNzYWdlIGZvciB0aGUgaW1wb3J0IHByb2Nlc3MuIFRoZSBtZXNzYWdlIHByb3ZpZGVzIA0KCSAqIHJlbGV2YW50IGluZm9ybWF0aW9uLCBzdWNoIGFzIHRoZSBudW1iZXIgb2Ygcm93cyBwcm9jZXNzZWQgYW5kIHRoZSBpbmZvIHJhdGUuDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICRtZXNzYWdlIFRoZSBpbmZvIG1lc3NhZ2UgdG8gbG9nLg0KCSAqDQoJICogQHJldHVybiBzZWxmDQoJICogQHNpbmNlICA1LjAuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBhZGRJbmZvKHN0cmluZyAkbWVzc2FnZSk6IHNlbGYNCgl7DQoJCSR0aGlzLT5pbmZvW10gPSAkbWVzc2FnZTsNCg0KCQlyZXR1cm4gJHRoaXM7DQoJfQ0KDQoJLyoqDQoJICogQWRkcyBhbiBlcnJvciBtZXNzYWdlIHRvIHRoZSBsb2cuDQoJICoNCgkgKiBUaGlzIG1ldGhvZCByZWNvcmRzIGFuIGVycm9yIG1lc3NhZ2Ugd2hlbiB0aGUgaW1wb3J0IHByb2Nlc3MgZW5jb3VudGVycyBpc3N1ZXMuIA0KCSAqIFRoZSBtZXNzYWdlIGluY2x1ZGVzIGRldGFpbHMgYWJvdXQgdGhlIGZhaWx1cmVzLCBzdWNoIGFzIHRoZSBudW1iZXIgb2YgZmFpbGVkIHJvd3MgDQoJICogYW5kIHRoZSBjb3JyZXNwb25kaW5nIGVycm9yIHJhdGUuDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICRtZXNzYWdlIFRoZSBlcnJvciBtZXNzYWdlIHRvIGxvZy4NCgkgKg0KCSAqIEByZXR1cm4gc2VsZg0KCSAqIEBzaW5jZSAgNS4wLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gYWRkRXJyb3Ioc3RyaW5nICRtZXNzYWdlKTogc2VsZg0KCXsNCgkJJHRoaXMtPmVycm9yW10gPSAkbWVzc2FnZTsNCg0KCQlyZXR1cm4gJHRoaXM7DQoJfQ==', '{}', '{}', '', 1, '2024-10-17 22:18:05', 9, '', 1), +(851, '23ad6e72-1b82-40fb-836c-50da690bb174', 'VDM.ImportMessageInterface', 'ImportMessageInterface', 'interface', 'Import Message Interface\r\n\r\n@since 3.0.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\[[[ComponentNamespace]]].Interfaces.ImportMessageInterface', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIExvYWQgYW4gZW50aXR5IHRoYXQgdGhlc2UgbWVzc2FnZSBiZWxvbmcgdG8NCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmcgJGd1aWQgICBUaGUgZW50aXR5IGd1aWQgdGhlc2UgbWVzc2FnZXMgbXVzdCBiZSBsaW5rZWQgdG8uDQoJICogQHBhcmFtIHN0cmluZyAkZW50aXR5IFRoZSBlbnRpdHkgdHlwZSB0aGVzZSBtZXNzYWdlcyBtdXN0IGJlIGxpbmtlZCB0by4NCgkgKiBAcGFyYW0gc3RyaW5nICR0YWJsZSAgVGhlIG1lc3NhZ2VzIHRhYmxlIHdoZXJlIHRoZXNlIG1lc3NhZ2UgbXVzdCBiZSBzdG9yZWQuDQoJICoNCgkgKiBAcmV0dXJuICBzZWxmDQoJICogQHRocm93cyBcSW52YWxpZEFyZ3VtZW50RXhjZXB0aW9uIGlmIGFueSBvZiB0aGUgcGFyYW1ldGVycyBhcmUgbnVsbCBvciBlbXB0eS4NCgkgKiBAc2luY2UgIDMuMC4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGxvYWQoc3RyaW5nICRndWlkLCBzdHJpbmcgJGVudGl0eSwgc3RyaW5nICR0YWJsZSk6IHNlbGY7DQoNCgkvKioNCgkgKiBHZXQgdGhlIG1lc3NhZ2VzIG9mIHRoZSBsYXN0IGltcG9ydCBldmVudA0KCSAqDQoJICogQHJldHVybiAgb2JqZWN0DQoJICogQHNpbmNlICAzLjAuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBnZXQoKTogb2JqZWN0Ow0KDQoJLyoqDQoJICogUmVzZXQgdGhlIG1lc3NhZ2VzIG9mIHRoZSBsYXN0IGltcG9ydCBldmVudA0KCSAqDQoJICogQHJldHVybiAgdm9pZA0KCSAqIEBzaW5jZSAgMy4wLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gcmVzZXQoKTogdm9pZDsNCg0KCS8qKg0KCSAqIEFyY2hpdmUgdGhlIG1lc3NhZ2VzIGluIHRoZSBEQiBvZiB0aGUgbGFzdCBpbXBvcnQgZXZlbnQNCgkgKg0KCSAqIEByZXR1cm4gIHNlbGYNCgkgKiBAdGhyb3dzIFxJbnZhbGlkQXJndW1lbnRFeGNlcHRpb24gaWYgR1VJRCwgZW50aXR5LCBvciB0YWJsZSBpcyBudWxsLg0KCSAqIEBzaW5jZSAgMy4wLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gYXJjaGl2ZSgpOiBzZWxmOw0KDQoJLyoqDQoJICogU2V0IHRoZSBtZXNzYWdlcyBpbiB0aGUgREIgb2YgdGhlIGxhc3QgaW1wb3J0IGV2ZW50DQoJICoNCgkgKiBAcmV0dXJuICBzZWxmDQoJICogQHRocm93cyBcSW52YWxpZEFyZ3VtZW50RXhjZXB0aW9uIGlmIEdVSUQsIGVudGl0eSwgb3IgdGFibGUgaXMgbnVsbC4NCgkgKiBAc2luY2UgIDMuMC4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIHNldCgpOiBzZWxmOw0KDQoJLyoqDQoJICogQWRkcyBhIHN1Y2Nlc3MgbWVzc2FnZSB0byB0aGUgbG9nLg0KCSAqDQoJICogVGhpcyBtZXRob2QgcmVjb3JkcyBhIHN1Y2Nlc3MgbWVzc2FnZSBmb3IgdGhlIGltcG9ydCBwcm9jZXNzLiBUaGUgbWVzc2FnZSBwcm92aWRlcyANCgkgKiByZWxldmFudCBpbmZvcm1hdGlvbiwgc3VjaCBhcyB0aGUgbnVtYmVyIG9mIHJvd3MgcHJvY2Vzc2VkIGFuZCB0aGUgc3VjY2VzcyByYXRlLg0KCSAqDQoJICogQHBhcmFtIHN0cmluZyAkbWVzc2FnZSBUaGUgc3VjY2VzcyBtZXNzYWdlIHRvIGxvZy4NCgkgKg0KCSAqIEByZXR1cm4gc2VsZg0KCSAqIEBzaW5jZSAgMy4wLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gYWRkU3VjY2VzcyhzdHJpbmcgJG1lc3NhZ2UpOiBzZWxmOw0KDQoJLyoqDQoJICogQWRkcyBhIGluZm8gbWVzc2FnZSB0byB0aGUgbG9nLg0KCSAqDQoJICogVGhpcyBtZXRob2QgcmVjb3JkcyBhIGluZm8gbWVzc2FnZSBmb3IgdGhlIGltcG9ydCBwcm9jZXNzLiBUaGUgbWVzc2FnZSBwcm92aWRlcyANCgkgKiByZWxldmFudCBpbmZvcm1hdGlvbiwgc3VjaCBhcyB0aGUgbnVtYmVyIG9mIHJvd3MgcHJvY2Vzc2VkIGFuZCB0aGUgaW5mbyByYXRlLg0KCSAqDQoJICogQHBhcmFtIHN0cmluZyAkbWVzc2FnZSBUaGUgaW5mbyBtZXNzYWdlIHRvIGxvZy4NCgkgKg0KCSAqIEByZXR1cm4gc2VsZg0KCSAqIEBzaW5jZSAgMy4wLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gYWRkSW5mbyhzdHJpbmcgJG1lc3NhZ2UpOiBzZWxmOw0KDQoJLyoqDQoJICogQWRkcyBhbiBlcnJvciBtZXNzYWdlIHRvIHRoZSBsb2cuDQoJICoNCgkgKiBUaGlzIG1ldGhvZCByZWNvcmRzIGFuIGVycm9yIG1lc3NhZ2Ugd2hlbiB0aGUgaW1wb3J0IHByb2Nlc3MgZW5jb3VudGVycyBpc3N1ZXMuIA0KCSAqIFRoZSBtZXNzYWdlIGluY2x1ZGVzIGRldGFpbHMgYWJvdXQgdGhlIGZhaWx1cmVzLCBzdWNoIGFzIHRoZSBudW1iZXIgb2YgZmFpbGVkIHJvd3MgDQoJICogYW5kIHRoZSBjb3JyZXNwb25kaW5nIGVycm9yIHJhdGUuDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICRtZXNzYWdlIFRoZSBlcnJvciBtZXNzYWdlIHRvIGxvZy4NCgkgKg0KCSAqIEByZXR1cm4gc2VsZg0KCSAqIEBzaW5jZSAgMy4wLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gYWRkRXJyb3Ioc3RyaW5nICRtZXNzYWdlKTogc2VsZjs=', '{}', '{}', '', 1, '2024-10-17 23:02:58', 3, '', 1), +(852, 'afb5b891-7130-422a-b389-1934b0e4fc48', 'JCB.Import.Row', 'Row', 'final class', 'Import Row Class\r\n\r\n@since 4.0.3', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '{\"0\":\"3d3ec064-9867-41e6-a48a-964c15d753aa\"}', '', '[[[NamespacePrefix]]]\\Joomla\\[[[ComponentNamespace]]].Import.Row', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIFRoZSByb3cgYXJyYXkgb2YgdmFsdWVzLg0KCSAqDQoJICogQHZhciAgIGFycmF5DQoJICogQHNpbmNlIDUuMC4yDQoJICovDQoJcHJpdmF0ZSBhcnJheSAkdmFsdWVzOw0KDQoJLyoqDQoJICogVGhlIHJvdyBpbmRleC4NCgkgKg0KCSAqIEB2YXIgICBpbnQNCgkgKiBAc2luY2UgNS4wLjINCgkgKi8NCglwcml2YXRlIGludCAkaW5kZXg7DQoNCgkvKioNCgkgKiBBIGZsYWcgdG8gdHJhY2sgaWYgdmFsdWVzIGFuZCBpbmRleCBhcmUgc2V0Lg0KCSAqDQoJICogQHZhciAgIGJvb2wNCgkgKiBAc2luY2UgNS4wLjINCgkgKi8NCglwcml2YXRlIGJvb2wgJGlzU2V0ID0gZmFsc2U7DQoNCgkvKioNCgkgKiBTZXQgdGhlIHJvdyBkZXRhaWxzDQoJICoNCgkgKiBAcGFyYW0gICBpbnQgICAgICAgICRpbmRleCAgICBUaGUgcm93IGluZGV4DQoJICogQHBhcmFtICAgYXJyYXkgICAkdmFsdWVzICAgVGhlIHZhbHVlcw0KCSAqDQoJICogQHJldHVybiAgdm9pZA0KCSAqIEBzaW5jZSAgNS4wLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gc2V0KGludCAkaW5kZXgsIGFycmF5ICR2YWx1ZXMpOiB2b2lkDQoJew0KCQkkdGhpcy0+aW5kZXggPSAkaW5kZXg7DQoJCSR0aGlzLT52YWx1ZXMgPSAkdmFsdWVzOw0KCQkkdGhpcy0+aXNTZXQgPSB0cnVlOw0KCX0NCg0KCS8qKg0KCSAqIENsZWFyIHRoZSByb3cgZGV0YWlscw0KCSAqDQoJICogQHJldHVybiAgc2VsZg0KCSAqIEBzaW5jZSAgNS4wLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gY2xlYXIoKTogc2VsZg0KCXsNCgkJJHRoaXMtPmluZGV4ID0gMDsNCgkJJHRoaXMtPnZhbHVlcyA9IFtdOw0KCQkkdGhpcy0+aXNTZXQgPSBmYWxzZTsNCg0KCQlyZXR1cm4gJHRoaXM7DQoJfQ0KDQoJLyoqDQoJICogR2V0IEluZGV4DQoJICoNCgkgKiBAcmV0dXJuICBpbnQNCgkgKiBAdGhyb3dzIFxJbnZhbGlkQXJndW1lbnRFeGNlcHRpb24gaWYgYW55IG9mIHRoZSBwYXJhbWV0ZXJzIGFyZSBudWxsIG9yIGVtcHR5Lg0KCSAqIEBzaW5jZSAgNS4wLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZ2V0SW5kZXgoKTogaW50DQoJew0KCQlpZiAoISR0aGlzLT5pc1NldCkNCgkJew0KCQkJdGhyb3cgbmV3IFxJbnZhbGlkQXJndW1lbnRFeGNlcHRpb24oJ0luZGV4IG11c3Qgbm90IGJlIG51bGwgb3IgZW1wdHkuIFVzZSB0aGUgc2V0IG1ldGhvZCB0byBmaXJzdCBzZXQgdGhlIGluZGV4LicpOw0KCQl9DQoNCgkJcmV0dXJuICR0aGlzLT5pbmRleDsNCgl9DQoNCgkvKioNCgkgKiBHZXQgVmFsdWUNCgkgKg0KCSAqIEByZXR1cm4gIG1peGVkDQoJICogQHRocm93cyBcSW52YWxpZEFyZ3VtZW50RXhjZXB0aW9uIGlmIGFueSBvZiB0aGUgcGFyYW1ldGVycyBhcmUgbnVsbCBvciBlbXB0eS4NCgkgKiBAc2luY2UgIDUuMC4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGdldFZhbHVlKHN0cmluZyAka2V5KQ0KCXsNCgkJaWYgKCEkdGhpcy0+aXNTZXQpDQoJCXsNCgkJCXRocm93IG5ldyBcSW52YWxpZEFyZ3VtZW50RXhjZXB0aW9uKCdWYWx1ZXMgbXVzdCBiZSBzZXQgYmVmb3JlIGFjY2Vzc2luZy4gVXNlIHRoZSBzZXQgbWV0aG9kIHRvIGZpcnN0IHNldCB0aGUgdmFsdWVzLicpOw0KCQl9DQoNCgkJcmV0dXJuICR0aGlzLT52YWx1ZXNbJGtleV0gPz8gbnVsbDsNCgl9DQoNCgkvKioNCgkgKiBVbnNldCBWYWx1ZQ0KCSAqDQoJICogQHJldHVybiAgdm9pZA0KCSAqIEB0aHJvd3MgXEludmFsaWRBcmd1bWVudEV4Y2VwdGlvbiBpZiBhbnkgb2YgdGhlIHBhcmFtZXRlcnMgYXJlIG51bGwgb3IgZW1wdHkuDQoJICogQHNpbmNlICA1LjAuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiB1bnNldFZhbHVlKHN0cmluZyAka2V5KTogdm9pZA0KCXsNCgkJaWYgKCEkdGhpcy0+aXNTZXQpDQoJCXsNCgkJCXRocm93IG5ldyBcSW52YWxpZEFyZ3VtZW50RXhjZXB0aW9uKCdWYWx1ZXMgbXVzdCBiZSBzZXQgYmVmb3JlIGFjY2Vzc2luZy4gVXNlIHRoZSBzZXQgbWV0aG9kIHRvIGZpcnN0IHNldCB0aGUgdmFsdWVzLicpOw0KCQl9DQoNCgkJdW5zZXQoJHRoaXMtPnZhbHVlc1ska2V5XSk7DQoJfQ==', '{}', '{}', '', 1, '2024-10-17 23:21:15', 6, '', 1), +(853, '3d3ec064-9867-41e6-a48a-964c15d753aa', 'VDM.ImportRowInterface', 'ImportRowInterface', 'interface', 'Import Row Interface\r\n\r\n@since 3.0.3', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\[[[ComponentNamespace]]].Interfaces.ImportRowInterface', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIFNldCB0aGUgcm93IGRldGFpbHMNCgkgKg0KCSAqIEBwYXJhbSAgIGludCAgICAgICAgJGluZGV4ICAgIFRoZSByb3cgaW5kZXgNCgkgKiBAcGFyYW0gICBhcnJheSAgICR2YWx1ZXMgICBUaGUgdmFsdWVzDQoJICoNCgkgKiBAcmV0dXJuICB2b2lkDQoJICogQHNpbmNlICAzLjAuMw0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBzZXQoaW50ICRpbmRleCwgYXJyYXkgJHZhbHVlcyk6IHZvaWQ7DQoNCgkvKioNCgkgKiBDbGVhciB0aGUgcm93IGRldGFpbHMNCgkgKg0KCSAqIEByZXR1cm4gIHNlbGYNCgkgKiBAc2luY2UgIDMuMC4zDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGNsZWFyKCk6IHNlbGY7DQoNCgkvKioNCgkgKiBHZXQgSW5kZXgNCgkgKg0KCSAqIEByZXR1cm4gIGludA0KCSAqIEB0aHJvd3MgXEludmFsaWRBcmd1bWVudEV4Y2VwdGlvbiBpZiBhbnkgb2YgdGhlIHBhcmFtZXRlcnMgYXJlIG51bGwgb3IgZW1wdHkuDQoJICogQHNpbmNlICAzLjAuMw0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBnZXRJbmRleCgpOiBpbnQ7DQoNCgkvKioNCgkgKiBHZXQgVmFsdWUNCgkgKg0KCSAqIEByZXR1cm4gIG1peGVkDQoJICogQHRocm93cyBcSW52YWxpZEFyZ3VtZW50RXhjZXB0aW9uIGlmIGFueSBvZiB0aGUgcGFyYW1ldGVycyBhcmUgbnVsbCBvciBlbXB0eS4NCgkgKiBAc2luY2UgIDMuMC4zDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGdldFZhbHVlKHN0cmluZyAka2V5KTsNCg0KCS8qKg0KCSAqIFVuc2V0IFZhbHVlDQoJICoNCgkgKiBAcmV0dXJuICB2b2lkDQoJICogQHRocm93cyBcSW52YWxpZEFyZ3VtZW50RXhjZXB0aW9uIGlmIGFueSBvZiB0aGUgcGFyYW1ldGVycyBhcmUgbnVsbCBvciBlbXB0eS4NCgkgKiBAc2luY2UgIDMuMC4zDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIHVuc2V0VmFsdWUoc3RyaW5nICRrZXkpOiB2b2lkOw==', '{}', '{}', '', 1, '2024-10-17 23:23:43', 3, '', 1), +(854, '68a0f9af-265a-4db1-bae9-a4e4531f94d7', 'JCB.Import.Item', 'Item', 'final class', 'Import Item Class\r\n\r\n@since 4.0.3', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '{\"0\":\"53f55e5b-63cb-49e7-b1e6-33e7a9f97856\"}', '', '[[[NamespacePrefix]]]\\Joomla\\[[[ComponentNamespace]]].Import.Item', '', '{}', '{}', '', '{\"use_selection0\":{\"use\":\"feb3affa-5102-4307-93db-04525f4c66f0\",\"as\":\"Validator\"},\"use_selection1\":{\"use\":\"05744dd3-4030-4cf8-8dda-a93ab809b473\",\"as\":\"DataItem\"},\"use_selection2\":{\"use\":\"3d3ec064-9867-41e6-a48a-964c15d753aa\",\"as\":\"Row\"},\"use_selection3\":{\"use\":\"9c513baf-b279-43fd-ae29-a585c8cbc4f0\",\"as\":\"default\"}}', 'CS8qKg0KCSAqIFRoZSBUYWJsZSBWYWxpZGF0b3IgQ2xhc3MuDQoJICoNCgkgKiBAdmFyICAgVmFsaWRhdG9yDQoJICogQHNpbmNlIDQuMC4zDQoJICovDQoJcHJvdGVjdGVkIFZhbGlkYXRvciAkdmFsaWRhdG9yOw0KDQoJLyoqDQoJICogVGhlIEl0ZW0gQ2xhc3MuDQoJICoNCgkgKiBAdmFyICAgSXRlbQ0KCSAqIEBzaW5jZSA0LjAuMw0KCSAqLw0KCXByb3RlY3RlZCBEYXRhSXRlbSAkaXRlbTsNCg0KCS8qKg0KCSAqIFRoZSBJbXBvcnQgUm93IENsYXNzLg0KCSAqDQoJICogQHZhciAgIFJvdw0KCSAqIEBzaW5jZSA0LjAuMw0KCSAqLw0KCXByb3RlY3RlZCBSb3cgJHJvdzsNCg0KCS8qKg0KCSAqIENvbnN0cnVjdG9yLg0KCSAqDQoJICogQHBhcmFtIFZhbGlkYXRvciAgICR2YWxpZGF0b3IgICBUaGUgVGFibGUgVmFsaWRhdG9ySSBDbGFzcy4NCgkgKiBAcGFyYW0gRGF0YUl0ZW0gICAgJGl0ZW0gICAgICAgIFRoZSBJdGVtIENsYXNzLg0KCSAqIEBwYXJhbSBSb3cgICAgICAgICAkcm93ICAgICAgICAgVGhlIEltcG9ydCBSb3cgQ2xhc3MuDQoJICoNCgkgKiBAc2luY2UgNC4wLjMNCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoVmFsaWRhdG9yICR2YWxpZGF0b3IsIERhdGFJdGVtICRpdGVtLCBSb3cgJHJvdykNCgl7DQoJCSR0aGlzLT52YWxpZGF0b3IgPSAkdmFsaWRhdG9yOw0KCQkkdGhpcy0+aXRlbSA9ICRpdGVtOw0KCQkkdGhpcy0+cm93ID0gJHJvdzsNCgl9DQoNCgkvKioNCgkgKiBHZXQgdGhlIGl0ZW0gZnJvbSB0aGUgaW1wb3J0IHJvdyB2YWx1ZXMgYW5kIGVuc3VyZSBpdCBpcyB2YWxpZA0KCSAqDQoJICogQHBhcmFtICAgc3RyaW5nICAkdGFibGUgICAgVGhlIHRhYmxlIHRoZXNlIGNvbHVtbnMgYmVsb25ncyB0by4NCgkgKiBAcGFyYW0gICBhcnJheSAgICRjb2x1bW5zICBUaGUgY29sdW1ucyB0byBleHRyYWN0Lg0KCSAqDQoJICogQHJldHVybiAgYXJyYXl8bnVsbA0KCSAqIEBzaW5jZSAgNC4wLjMNCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZ2V0KHN0cmluZyAkdGFibGUsIGFycmF5ICRjb2x1bW5zKTogP2FycmF5DQoJew0KCQkkaXRlbSA9IFtdOw0KCQlmb3JlYWNoICgkY29sdW1ucyBhcyAkY29sdW1uID0+ICRtYXApDQoJCXsNCgkJCWlmICgoJHZhbHVlID0gJHRoaXMtPnJvdy0+Z2V0VmFsdWUoJGNvbHVtbikpICE9PSBudWxsICYmICFpc3NldCgkaXRlbVskbWFwWyduYW1lJ11dKSkNCgkJCXsNCgkJCQkvLyBnZXQgdGhlIHZhbGlkIGltcG9ydGFibGUgdmFsdWUNCgkJCQkkaXRlbVskbWFwWyduYW1lJ11dID0gJHRoaXMtPmdldEltcG9ydFZhbHVlKCR2YWx1ZSwgJG1hcFsnbmFtZSddLCAkdGFibGUsICRtYXBbJ2xpbmsnXSA/PyBudWxsKTsNCg0KCQkJCS8vIHJlbW92ZSB2YWx1ZSBmcm9tIGdsb2JhbCByb3cgdmFsdWVzIHNldA0KCQkJCSR0aGlzLT5yb3ctPnVuc2V0VmFsdWUoJGNvbHVtbik7DQoJCQl9DQoJCX0NCg0KCQlyZXR1cm4gJGl0ZW0gPz8gbnVsbDsNCgl9DQoNCgkvKioNCgkgKiBHZXQgdGhlIGNvcnJlY3QgdmFsdWUgbmVlZGVkIGZvciB0aGUgaW1wb3J0IG9mIHRoZSByZWxhdGVkIHJvdyAoaXRlbSkuDQoJICoNCgkgKiBAcGFyYW0gICBtaXhlZCAgICR2YWx1ZSAgIFRoZSB2YWx1ZSBmcm9tIHRoZSByb3cuDQoJICogQHBhcmFtICAgc3RyaW5nICAkZmllbGQgICBUaGUgZmllbGQgbmFtZSB3aGVyZSB0aGUgdmFsdWUgaXMgYmVpbmcgc3RvcmVkLg0KCSAqIEBwYXJhbSAgIHN0cmluZyAgJHRhYmxlICAgVGhlIHRhYmxlIHRoaXMgZmllbGQgYmVsb25ncyB0by4NCgkgKiBAcGFyYW0gICBhcnJheSAgICRsaW5rICAgIFRoZSBmaWVsZCBsaW5rIHZhbHVlcy4NCgkgKg0KCSAqIEByZXR1cm4gIG1peGVkDQoJICogQHNpbmNlICAgNC4wLjMNCgkgKi8NCglwcml2YXRlIGZ1bmN0aW9uIGdldEltcG9ydFZhbHVlKCR2YWx1ZSwgc3RyaW5nICRmaWVsZCwgc3RyaW5nICR0YWJsZSwgP2FycmF5ICRsaW5rKQ0KCXsNCgkJLy8gVmFsaWRhdGUgdGhlIGxpbmsgYXJyYXkgYW5kIHJldHVybiB0aGUgb3JpZ2luYWwgdmFsdWUgaWYgaW52YWxpZA0KCQlpZiAoZW1wdHkoJGxpbmspIHx8ICRsaW5rWyd0eXBlJ10gIT09IDEgfHwgZW1wdHkoJGxpbmtbJ3RhYmxlJ10pIHx8IGVtcHR5KCRsaW5rWydrZXknXSkgfHwgZW1wdHkoJGxpbmtbJ3ZhbHVlJ10pKQ0KCQl7DQoJCQlyZXR1cm4gJHRoaXMtPnZhbGlkSW1wb3J0VmFsdWUoJHZhbHVlLCAkZmllbGQsICR0YWJsZSk7DQoJCX0NCg0KCQkvLyBIYW5kbGUgR1VJRCBrZXkgd2l0aCB2YWxpZGF0aW9uIHZpYSBHdWlkSGVscGVyDQoJCWlmICgkbGlua1sna2V5J10gPT09ICdndWlkJyAmJiBHdWlkSGVscGVyOjppdGVtKCR2YWx1ZSwgJGxpbmtbJ3RhYmxlJ10pKQ0KCQl7DQoJCQlyZXR1cm4gJHZhbHVlOw0KCQl9DQoNCgkJLy8gSGFuZGxlIG51bWVyaWMgSUQgd2l0aCB2YWxpZGF0aW9uDQoJCWlmICgkbGlua1sna2V5J10gPT09ICdpZCcgJiYgaXNfbnVtZXJpYygkdmFsdWUpICYmICR0aGlzLT5pc1ZhbHVlRXhpc3RzKCR2YWx1ZSwgJGxpbmspKQ0KCQl7DQoJCQlyZXR1cm4gKGludCkgJHZhbHVlOw0KCQl9DQoNCgkJLy8gQXR0ZW1wdCB0byByZXRyaWV2ZSB0aGUgbG9jYWwgdmFsdWUNCgkJJGxvY2FsX3ZhbHVlID0gJHRoaXMtPmdldExvY2FsVmFsdWUoJHZhbHVlLCAkbGluayk7DQoNCgkJLy8gSWYgbm8gbG9jYWwgdmFsdWUgZXhpc3RzLCBjcmVhdGUgaXQgaWYgbmVjZXNzYXJ5DQoJCWlmICgkbG9jYWxfdmFsdWUgPT09IG51bGwpDQoJCXsNCgkJCSRsb2NhbF92YWx1ZSA9ICR0aGlzLT5zZXRMb2NhbFZhbHVlKCR2YWx1ZSwgJGxpbmspOw0KCQl9DQoNCgkJcmV0dXJuICR0aGlzLT52YWxpZEltcG9ydFZhbHVlKCRsb2NhbF92YWx1ZSwgJGZpZWxkLCAkdGFibGUpOw0KCX0NCg0KCS8qKg0KCSAqIE1ha2Ugc3VyZSB3ZSBoYXZlIGEgdmFsaWQgaW1wb3J0IHZhbHVlDQoJICoNCgkgKiBAcGFyYW0gICBtaXhlZCAgICR2YWx1ZSAgIFRoZSB2YWx1ZS4NCgkgKiBAcGFyYW0gICBzdHJpbmcgICRmaWVsZCAgIFRoZSBmaWVsZCBuYW1lIHdoZXJlIHRoZSB2YWx1ZSBpcyBiZWluZyBzdG9yZWQuDQoJICogQHBhcmFtICAgc3RyaW5nICAkdGFibGUgICBUaGUgdGFibGUgdGhpcyBmaWVsZCBiZWxvbmdzIHRvLg0KCSAqDQoJICogQHJldHVybiAgbWl4ZWQNCgkgKiBAc2luY2UgICA0LjAuMw0KCSAqLw0KCXByaXZhdGUgZnVuY3Rpb24gdmFsaWRJbXBvcnRWYWx1ZSgkdmFsdWUsIHN0cmluZyAkZmllbGQsIHN0cmluZyAkdGFibGUpDQoJew0KCQkvLyBtYWtlIHN1cmUgb3VyIHZhbHVlIHdpbGwgZml0IGluIHRoZSBkYXRhYmFzZSB0YWJsZSBkYXRhdHlwZQ0KCQlyZXR1cm4gJHRoaXMtPnZhbGlkYXRvci0+Z2V0VmFsaWQoJHZhbHVlLCAkZmllbGQsICR0YWJsZSk7DQoJfQ0KDQoJLyoqDQoJICogSGVscGVyIGZ1bmN0aW9uIHRvIGdldCB0aGUgbG9jYWwgdmFsdWUgZnJvbSB0aGUgZGF0YWJhc2UgdGFibGUuDQoJICoNCgkgKiBAcGFyYW0gICBtaXhlZCAgJHZhbHVlICBUaGUgdmFsdWUgdG8gc2VhcmNoIGZvci4NCgkgKiBAcGFyYW0gICBhcnJheSAgICRsaW5rICAgVGhlIGZpZWxkIGxpbmsgZGV0YWlscy4NCgkgKg0KCSAqIEByZXR1cm4gIG1peGVkfG51bGwgIFRoZSBsb2NhbCB2YWx1ZSBvciBudWxsIGlmIG5vdCBmb3VuZC4NCgkgKiBAc2luY2UgICA0LjAuMw0KCSAqLw0KCXByaXZhdGUgZnVuY3Rpb24gZ2V0TG9jYWxWYWx1ZSgkdmFsdWUsIGFycmF5ICRsaW5rKQ0KCXsNCgkJLy8gQXR0ZW1wdCB0byByZXRyaWV2ZSB0aGUgdmFsdWUgYmFzZWQgb24gdGhlIGxpbmtbJ3ZhbHVlJ10gYW5kIGxpbmtbJ2tleSddDQoJCSRsb2NhbF92YWx1ZSA9ICR0aGlzLT5pdGVtLT50YWJsZSgkbGlua1sndGFibGUnXSktPnZhbHVlKCR2YWx1ZSwgJGxpbmtbJ3ZhbHVlJ10sICRsaW5rWydrZXknXSk7DQoNCgkJLy8gSWYgbm90IGZvdW5kLCB0cnkgcmV0cmlldmluZyBieSBsaW5rWydrZXknXSBhbmQgbGlua1sna2V5J10NCgkJaWYgKCRsb2NhbF92YWx1ZSA9PT0gbnVsbCAmJiAkdGhpcy0+aXNWYWx1ZUV4aXN0cygkdmFsdWUsICRsaW5rKSkNCgkJew0KCQkJcmV0dXJuICR2YWx1ZTsNCgkJfQ0KDQoJCXJldHVybiAkbG9jYWxfdmFsdWU7DQoJfQ0KDQoJLyoqDQoJICogQ2hlY2sgaWYgdGhlIHZhbHVlIGV4aXN0cyBpbiB0aGUgdGFibGUgZm9yIHRoZSBnaXZlbiBsaW5rLg0KCSAqDQoJICogQHBhcmFtICAgbWl4ZWQgICR2YWx1ZSAgVGhlIHZhbHVlIHRvIGNoZWNrLg0KCSAqIEBwYXJhbSAgIGFycmF5ICAgJGxpbmsgICBUaGUgZmllbGQgbGluayBkZXRhaWxzLg0KCSAqDQoJICogQHJldHVybiAgYm9vbCAgVHJ1ZSBpZiB0aGUgdmFsdWUgZXhpc3RzLCBmYWxzZSBvdGhlcndpc2UuDQoJICogQHNpbmNlICAgNC4wLjMNCgkgKi8NCglwcml2YXRlIGZ1bmN0aW9uIGlzVmFsdWVFeGlzdHMoJHZhbHVlLCBhcnJheSAkbGluayk6IGJvb2wNCgl7DQoJCXJldHVybiAkdGhpcy0+aXRlbS0+dGFibGUoJGxpbmtbJ3RhYmxlJ10pLT52YWx1ZSgkdmFsdWUsICRsaW5rWydrZXknXSwgJGxpbmtbJ2tleSddKSAhPT0gbnVsbDsNCgl9DQoNCgkvKioNCgkgKiBDcmVhdGUgYSBuZXcgdmFsdWUgaW4gdGhlIGRhdGFiYXNlIHRhYmxlIGlmIGl0IGRvZXNuJ3QgYWxyZWFkeSBleGlzdC4NCgkgKg0KCSAqIEBwYXJhbSAgIG1peGVkICAkdmFsdWUgIFRoZSB2YWx1ZSB0byBjcmVhdGUuDQoJICogQHBhcmFtICAgYXJyYXkgICAkbGluayAgIFRoZSBmaWVsZCBsaW5rIGRldGFpbHMuDQoJICoNCgkgKiBAcmV0dXJuICBtaXhlZHxudWxsICBUaGUgbmV3bHkgY3JlYXRlZCB2YWx1ZSBvciBudWxsIGlmIGNyZWF0aW9uIGZhaWxlZC4NCgkgKiBAc2luY2UgICA0LjAuMw0KCSAqLw0KCXByaXZhdGUgZnVuY3Rpb24gc2V0TG9jYWxWYWx1ZSgkdmFsdWUsIGFycmF5ICRsaW5rKQ0KCXsNCgkJLy8gSGFuZGxlIEdVSUQgY3JlYXRpb24gaWYgdGhlIHByb3ZpZGVkIHZhbHVlIGlzIG5vdCB2YWxpZA0KCQlpZiAoJGxpbmtbJ2tleSddID09PSAnZ3VpZCcpDQoJCXsNCgkJCWlmICghR3VpZEhlbHBlcjo6dmFsaWQoJHZhbHVlKSkNCgkJCXsNCgkJCQlyZXR1cm4gJHRoaXMtPmluc2VydEl0ZW1XaXRoR3VpZCgkdmFsdWUsICRsaW5rKTsNCgkJCX0NCgkJCXJldHVybiBudWxsOw0KCQl9DQoNCgkJLy8gSGFuZGxlIElEIGNyZWF0aW9uDQoJCWlmICgkbGlua1sna2V5J10gPT09ICdpZCcpDQoJCXsNCgkJCWlmICghaXNfbnVtZXJpYygkdmFsdWUpKQ0KCQkJew0KCQkJCXJldHVybiAkdGhpcy0+aW5zZXJ0SXRlbVdpdGhJZCgkdmFsdWUsICRsaW5rKTsNCgkJCX0NCgkJCXJldHVybiBudWxsOw0KCQl9DQoNCgkJLy8gY291bGQgbm90IGNyZWF0ZSBsb2NhbCBpdGVtICh3ZSBkb24ndCBoYXZlIGVub3VnaCBkZXRhaWxzKQ0KCQlyZXR1cm4gbnVsbDsNCgl9DQoNCgkvKioNCgkgKiBJbnNlcnQgYSBuZXcgaXRlbSB3aXRoIGEgR1VJRC4NCgkgKg0KCSAqIEBwYXJhbSAgIG1peGVkICAkdmFsdWUgIFRoZSB2YWx1ZSB0byBpbnNlcnQuDQoJICogQHBhcmFtICAgYXJyYXkgICAkbGluayAgIFRoZSBmaWVsZCBsaW5rIGRldGFpbHMuDQoJICoNCgkgKiBAcmV0dXJuICBzdHJpbmd8bnVsbCAgVGhlIG5ldyBHVUlEIG9yIG51bGwgaWYgaW5zZXJ0aW9uIGZhaWxlZC4NCgkgKiBAc2luY2UgICA0LjAuMw0KCSAqLw0KCXByaXZhdGUgZnVuY3Rpb24gaW5zZXJ0SXRlbVdpdGhHdWlkKCR2YWx1ZSwgYXJyYXkgJGxpbmspOiA/c3RyaW5nDQoJew0KCQkkZ3VpZCA9IEd1aWRIZWxwZXI6OmdldCgpOw0KCQkkaXRlbSA9IChvYmplY3QpIFskbGlua1sndmFsdWUnXSA9PiAkdmFsdWUsICRsaW5rWydrZXknXSA9PiAkZ3VpZF07DQoNCgkJaWYgKCR0aGlzLT5pdGVtLT50YWJsZSgkbGlua1sndGFibGUnXSktPnNldCgkaXRlbSwgJGxpbmtbJ2tleSddLCAnaW5zZXJ0JykpDQoJCXsNCgkJCXJldHVybiAkZ3VpZDsNCgkJfQ0KDQoJCXJldHVybiBudWxsOw0KCX0NCg0KCS8qKg0KCSAqIEluc2VydCBhIG5ldyBpdGVtIHdpdGggYSBub24tbnVtZXJpYyBJRC4NCgkgKg0KCSAqIEBwYXJhbSAgIG1peGVkICAkdmFsdWUgIFRoZSB2YWx1ZSB0byBpbnNlcnQuDQoJICogQHBhcmFtICAgYXJyYXkgICAkbGluayAgIFRoZSBmaWVsZCBsaW5rIGRldGFpbHMuDQoJICoNCgkgKiBAcmV0dXJuICBtaXhlZHxudWxsICBUaGUgbmV3IElEIG9yIG51bGwgaWYgaW5zZXJ0aW9uIGZhaWxlZC4NCgkgKiBAc2luY2UgICA0LjAuMw0KCSAqLw0KCXByaXZhdGUgZnVuY3Rpb24gaW5zZXJ0SXRlbVdpdGhJZCgkdmFsdWUsIGFycmF5ICRsaW5rKQ0KCXsNCgkJJGl0ZW0gPSAob2JqZWN0KSBbJGxpbmtbJ2tleSddID0+IDAsICRsaW5rWyd2YWx1ZSddID0+ICR2YWx1ZV07DQoNCgkJaWYgKCR0aGlzLT5pdGVtLT50YWJsZSgkbGlua1sndGFibGUnXSktPnNldCgkaXRlbSwgJGxpbmtbJ2tleSddLCAnaW5zZXJ0JykpDQoJCXsNCgkJCXJldHVybiAkdGhpcy0+aXRlbS0+dGFibGUoJGxpbmtbJ3RhYmxlJ10pLT52YWx1ZSgkdmFsdWUsICRsaW5rWyd2YWx1ZSddLCAkbGlua1sna2V5J10pOw0KCQl9DQoNCgkJcmV0dXJuIG51bGw7DQoJfQ==', '{}', '{}', '', 1, '2024-10-17 23:42:31', 11, '', 1), +(855, 'feb3affa-5102-4307-93db-04525f4c66f0', 'VDM.Interfaces.TableValidatorInterface', 'TableValidatorInterface', 'interface', 'The VDM Core Table Validator Interface', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\Interfaces.TableValidatorInterface', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIFJldHVybnMgdGhlIHZhbGlkIHZhbHVlIGJhc2VkIG9uIGRhdGF0eXBlIGRlZmluaXRpb24uDQoJICogSWYgdGhlIHZhbHVlIGlzIHZhbGlkLCByZXR1cm4gaXQuIElmIG5vdCwgcmV0dXJuIHRoZSBkZWZhdWx0IHZhbHVlLA0KCSAqIE5VTEwgKGlmIGFsbG93ZWQpLCBvciBhbiBlbXB0eSBzdHJpbmcgaWYgJ0VNUFRZJyBpcyBzZXQuDQoJICoNCgkgKiBAcGFyYW0gbWl4ZWQgICR2YWx1ZSAgVGhlIHZhbHVlIHRvIHZhbGlkYXRlLg0KCSAqIEBwYXJhbSBzdHJpbmcgJGZpZWxkICBUaGUgZmllbGQgbmFtZS4NCgkgKiBAcGFyYW0gc3RyaW5nICR0YWJsZSAgVGhlIHRhYmxlIG5hbWUuDQoJICoNCgkgKiBAcmV0dXJuIG1peGVkIFJldHVybnMgdGhlIHZhbGlkIHZhbHVlLCBvciB0aGUgZGVmYXVsdCwgTlVMTCwgb3IgZW1wdHkgc3RyaW5nIGJhc2VkIG9uIHZhbGlkYXRpb24uDQoJICogQHNpbmNlIDUuMy4wDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGdldFZhbGlkKCR2YWx1ZSwgc3RyaW5nICRmaWVsZCwgc3RyaW5nICR0YWJsZSk7', '{}', '{}', '', 1, '2024-10-17 23:48:22', 3, '', 1), +(856, '21754a8b-2323-4a77-8459-378a74c1ec97', 'JCB.Import.Service.Import', 'Import', 'class', 'Import Service Provider\r\n\r\n@since 5.0.3', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '{\"0\":\"-1\"}', 'ServiceProviderInterface', '[[[NamespacePrefix]]]\\Joomla\\[[[ComponentNamespace]]].Import.Service.Import', 1, '{}', '{}', 'dXNlIEpvb21sYVxESVxDb250YWluZXI7DQp1c2UgSm9vbWxhXERJXFNlcnZpY2VQcm92aWRlckludGVyZmFjZTs=', '{\"use_selection0\":{\"use\":\"05f23281-58e3-482e-be42-2dc1355ef4ea\",\"as\":\"default\"},\"use_selection1\":{\"use\":\"90b48ea8-0930-48d1-869a-bce9c901589c\",\"as\":\"default\"},\"use_selection2\":{\"use\":\"afb5b891-7130-422a-b389-1934b0e4fc48\",\"as\":\"default\"},\"use_selection3\":{\"use\":\"68a0f9af-265a-4db1-bae9-a4e4531f94d7\",\"as\":\"default\"},\"use_selection4\":{\"use\":\"eef6ffc2-2af0-4336-958f-e0b9cf7c4ad0\",\"as\":\"default\"},\"use_selection5\":{\"use\":\"d2a859ac-3f2a-4f69-a77f-f118b2e0a459\",\"as\":\"default\"},\"use_selection6\":{\"use\":\"19a66b48-620c-439b-ab8a-3c0d43e040c3\",\"as\":\"default\"}}', 'CS8qKg0KCSAqIFJlZ2lzdGVycyB0aGUgc2VydmljZSBwcm92aWRlciB3aXRoIGEgREkgY29udGFpbmVyLg0KCSAqDQoJICogQHBhcmFtICAgQ29udGFpbmVyICAkY29udGFpbmVyICBUaGUgREkgY29udGFpbmVyLg0KCSAqDQoJICogQHJldHVybiAgdm9pZA0KCSAqIEBzaW5jZSA1LjAuMw0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiByZWdpc3RlcihDb250YWluZXIgJGNvbnRhaW5lcikNCgl7DQoJCSRjb250YWluZXItPmFsaWFzKERhdGE6OmNsYXNzLCAnSW1wb3J0LkRhdGEnKQ0KCQkJLT5zaGFyZSgnSW1wb3J0LkRhdGEnLCBbJHRoaXMsICdnZXREYXRhJ10sIHRydWUpOw0KDQoJCSRjb250YWluZXItPmFsaWFzKE1hcHBlcjo6Y2xhc3MsICdJbXBvcnQuTWFwcGVyJykNCgkJCS0+c2hhcmUoJ0ltcG9ydC5NYXBwZXInLCBbJHRoaXMsICdnZXRNYXBwZXInXSwgdHJ1ZSk7DQoNCgkJJGNvbnRhaW5lci0+YWxpYXMoUm93OjpjbGFzcywgJ0ltcG9ydC5Sb3cnKQ0KCQkJLT5zaGFyZSgnSW1wb3J0LlJvdycsIFskdGhpcywgJ2dldFJvdyddLCB0cnVlKTsNCg0KCQkkY29udGFpbmVyLT5hbGlhcyhJdGVtOjpjbGFzcywgJ0ltcG9ydC5JdGVtJykNCgkJCS0+c2hhcmUoJ0ltcG9ydC5JdGVtJywgWyR0aGlzLCAnZ2V0SXRlbSddLCB0cnVlKTsNCg0KCQkkY29udGFpbmVyLT5hbGlhcyhNZXNzYWdlOjpjbGFzcywgJ0ltcG9ydC5NZXNzYWdlJykNCgkJCS0+c2hhcmUoJ0ltcG9ydC5NZXNzYWdlJywgWyR0aGlzLCAnZ2V0TWVzc2FnZSddLCB0cnVlKTsNCg0KCQkkY29udGFpbmVyLT5hbGlhcyhTdGF0dXM6OmNsYXNzLCAnSW1wb3J0LlN0YXR1cycpDQoJCQktPnNoYXJlKCdJbXBvcnQuU3RhdHVzJywgWyR0aGlzLCAnZ2V0U3RhdHVzJ10sIHRydWUpOw0KDQoJCSRjb250YWluZXItPmFsaWFzKEFzc2Vzc29yOjpjbGFzcywgJ0ltcG9ydC5Bc3Nlc3NvcicpDQoJCQktPnNoYXJlKCdJbXBvcnQuQXNzZXNzb3InLCBbJHRoaXMsICdnZXRBc3Nlc3NvciddLCB0cnVlKTsNCgl9DQoNCgkvKioNCgkgKiBHZXQgVGhlIERhdGEgQ2xhc3MuDQoJICoNCgkgKiBAcGFyYW0gICBDb250YWluZXIgICRjb250YWluZXIgIFRoZSBESSBjb250YWluZXIuDQoJICoNCgkgKiBAcmV0dXJuICBEYXRhDQoJICogQHNpbmNlIDUuMC4zDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGdldERhdGEoQ29udGFpbmVyICRjb250YWluZXIpOiBEYXRhDQoJew0KCQlyZXR1cm4gbmV3IERhdGEoKTsNCgl9DQoNCgkvKioNCgkgKiBHZXQgVGhlIE1hcHBlciBDbGFzcy4NCgkgKg0KCSAqIEBwYXJhbSAgIENvbnRhaW5lciAgJGNvbnRhaW5lciAgVGhlIERJIGNvbnRhaW5lci4NCgkgKg0KCSAqIEByZXR1cm4gIE1hcHBlcg0KCSAqIEBzaW5jZSA1LjAuMw0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBnZXRNYXBwZXIoQ29udGFpbmVyICRjb250YWluZXIpOiBNYXBwZXINCgl7DQoJCXJldHVybiBuZXcgTWFwcGVyKA0KCQkJJGNvbnRhaW5lci0+Z2V0KCdUYWJsZScpDQoJCSk7DQoJfQ0KDQoJLyoqDQoJICogR2V0IFRoZSBSb3cgQ2xhc3MuDQoJICoNCgkgKiBAcGFyYW0gICBDb250YWluZXIgICRjb250YWluZXIgIFRoZSBESSBjb250YWluZXIuDQoJICoNCgkgKiBAcmV0dXJuICBSb3cNCgkgKiBAc2luY2UgNS4wLjMNCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZ2V0Um93KENvbnRhaW5lciAkY29udGFpbmVyKTogUm93DQoJew0KCQlyZXR1cm4gbmV3IFJvdygpOw0KCX0NCg0KCS8qKg0KCSAqIEdldCBUaGUgSXRlbSBDbGFzcy4NCgkgKg0KCSAqIEBwYXJhbSAgIENvbnRhaW5lciAgJGNvbnRhaW5lciAgVGhlIERJIGNvbnRhaW5lci4NCgkgKg0KCSAqIEByZXR1cm4gIEl0ZW0NCgkgKiBAc2luY2UgNS4wLjMNCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZ2V0SXRlbShDb250YWluZXIgJGNvbnRhaW5lcik6IEl0ZW0NCgl7DQoJCXJldHVybiBuZXcgSXRlbSgNCgkJCSRjb250YWluZXItPmdldCgnVGFibGUuVmFsaWRhdG9yJyksDQoJCQkkY29udGFpbmVyLT5nZXQoJ0RhdGEuSXRlbScpLA0KCQkJJGNvbnRhaW5lci0+Z2V0KCdJbXBvcnQuUm93JykNCgkJKTsNCgl9DQoNCgkvKioNCgkgKiBHZXQgVGhlIE1lc3NhZ2UgQ2xhc3MuDQoJICoNCgkgKiBAcGFyYW0gICBDb250YWluZXIgICRjb250YWluZXIgIFRoZSBESSBjb250YWluZXIuDQoJICoNCgkgKiBAcmV0dXJuICBNZXNzYWdlDQoJICogQHNpbmNlIDUuMC4zDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGdldE1lc3NhZ2UoQ29udGFpbmVyICRjb250YWluZXIpOiBNZXNzYWdlDQoJew0KCQlyZXR1cm4gbmV3IE1lc3NhZ2UoDQoJCQkkY29udGFpbmVyLT5nZXQoJ0RhdGEuVXBkYXRlJyksDQoJCQkkY29udGFpbmVyLT5nZXQoJ0RhdGEuSW5zZXJ0JykNCgkJKTsNCgl9DQoNCgkvKioNCgkgKiBHZXQgVGhlIFN0YXR1cyBDbGFzcy4NCgkgKg0KCSAqIEBwYXJhbSAgIENvbnRhaW5lciAgJGNvbnRhaW5lciAgVGhlIERJIGNvbnRhaW5lci4NCgkgKg0KCSAqIEByZXR1cm4gIFN0YXR1cw0KCSAqIEBzaW5jZSA1LjAuMw0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBnZXRTdGF0dXMoQ29udGFpbmVyICRjb250YWluZXIpOiBTdGF0dXMNCgl7DQoJCXJldHVybiBuZXcgU3RhdHVzKA0KCQkJJGNvbnRhaW5lci0+Z2V0KCdEYXRhLkl0ZW0nKQ0KCQkpOw0KCX0NCg0KCS8qKg0KCSAqIEdldCBUaGUgQXNzZXNzb3IgQ2xhc3MuDQoJICoNCgkgKiBAcGFyYW0gICBDb250YWluZXIgICRjb250YWluZXIgIFRoZSBESSBjb250YWluZXIuDQoJICoNCgkgKiBAcmV0dXJuICBBc3Nlc3Nvcg0KCSAqIEBzaW5jZSA1LjAuMw0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBnZXRBc3Nlc3NvcihDb250YWluZXIgJGNvbnRhaW5lcik6IEFzc2Vzc29yDQoJew0KCQlyZXR1cm4gbmV3IEFzc2Vzc29yKA0KCQkJJGNvbnRhaW5lci0+Z2V0KCdJbXBvcnQuRGF0YScpLA0KCQkJJGNvbnRhaW5lci0+Z2V0KCdJbXBvcnQuU3RhdHVzJyksDQoJCQkkY29udGFpbmVyLT5nZXQoJ0ltcG9ydC5NZXNzYWdlJykNCgkJKTsNCgl9', '{}', '{}', '', 1, '2024-10-17 23:52:01', 7, '', 1), +(857, '53f55e5b-63cb-49e7-b1e6-33e7a9f97856', 'VDM.ImportItemInterface', 'ImportItemInterface', 'interface', 'Import Item Interface\r\n\r\n@since 3.0.3', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\[[[ComponentNamespace]]].Interfaces.ImportItemInterface', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIEdldCB0aGUgaXRlbSBmcm9tIHRoZSBpbXBvcnQgcm93IHZhbHVlcyBhbmQgZW5zdXJlIGl0IGlzIHZhbGlkDQoJICoNCgkgKiBAcGFyYW0gICBzdHJpbmcgICR0YWJsZSAgICBUaGUgdGFibGUgdGhlc2UgY29sdW1ucyBiZWxvbmdzIHRvLg0KCSAqIEBwYXJhbSAgIGFycmF5ICAgJGNvbHVtbnMgIFRoZSBjb2x1bW5zIHRvIGV4dHJhY3QuDQoJICoNCgkgKiBAcmV0dXJuICBhcnJheXxudWxsDQoJICogQHNpbmNlICA0LjAuMw0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBnZXQoc3RyaW5nICR0YWJsZSwgYXJyYXkgJGNvbHVtbnMpOiA/YXJyYXk7', '{}', '{}', '', 1, '2024-10-18 00:02:02', 2, '', 1), +(858, '19a66b48-620c-439b-ab8a-3c0d43e040c3', 'JCB.Import.Assessor', 'Assessor', 'final class', 'Import Assessor Class\r\n\r\n@since 4.0.3', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '{\"0\":\"57c00d53-5581-4fd1-b3ea-080422710243\"}', '', '[[[NamespacePrefix]]]\\Joomla\\[[[ComponentNamespace]]].Import.Assessor', 1, '{}', '{}', 'dXNlIEpvb21sYVxDTVNcTGFuZ3VhZ2VcVGV4dDs=', '{\"use_selection0\":{\"use\":\"05f23281-58e3-482e-be42-2dc1355ef4ea\",\"as\":\"default\"},\"use_selection1\":{\"use\":\"0e44d149-4863-47ec-8f0f-6a821ab3e77f\",\"as\":\"Status\"},\"use_selection2\":{\"use\":\"23ad6e72-1b82-40fb-836c-50da690bb174\",\"as\":\"Message\"}}', 'CS8qKg0KCSAqIFRoZSBEYXRhIENsYXNzLg0KCSAqDQoJICogQHZhciAgIERhdGENCgkgKiBAc2luY2UgNC4wLjMNCgkgKi8NCglwcm90ZWN0ZWQgRGF0YSAkZGF0YTsNCg0KCS8qKg0KCSAqIFRoZSBJbXBvcnQgU3RhdHVzIENsYXNzLg0KCSAqDQoJICogQHZhciAgIFN0YXR1cw0KCSAqIEBzaW5jZSA0LjAuMw0KCSAqLw0KCXByb3RlY3RlZCBTdGF0dXMgJHN0YXR1czsNCg0KCS8qKg0KCSAqIFRoZSBJbXBvcnQgTWVzc2FnZSBDbGFzcy4NCgkgKg0KCSAqIEB2YXIgICBNZXNzYWdlDQoJICogQHNpbmNlIDQuMC4zDQoJICovDQoJcHJvdGVjdGVkIE1lc3NhZ2UgJG1lc3NhZ2U7DQoNCgkvKioNCgkgKiBDb25zdGFudHMgZm9yIGRlZmluaW5nIHRoZSBzdWNjZXNzIHRocmVzaG9sZA0KCSAqIE1pbmltdW0gc3VjY2VzcyByYXRlIHRvIGNvbnNpZGVyIHRoZSBpbXBvcnQgc3VjY2Vzc2Z1bA0KCSAqDQoJICogQHNpbmNlIDQuMC4zDQoJICovDQoJcHJpdmF0ZSBjb25zdCBTVUNDRVNTX1RIUkVTSE9MRCA9IDAuODA7DQoNCgkvKioNCgkgKiBDb25zdHJ1Y3Rvci4NCgkgKg0KCSAqIEBwYXJhbSBEYXRhICAgICAgJGRhdGEgICAgICBUaGUgRGF0YSBDbGFzcy4NCgkgKiBAcGFyYW0gU3RhdHVzICAgICRzdGF0dXMgICAgVGhlIEltcG9ydCBTdGF0dXMgQ2xhc3MuDQoJICogQHBhcmFtIE1lc3NhZ2UgICAkbWVzc2FnZSAgIFRoZSBJbXBvcnQgTWVzc2FnZSBDbGFzcy4NCgkgKg0KCSAqIEBzaW5jZSA0LjAuMw0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdChEYXRhICRkYXRhLCBTdGF0dXMgJHN0YXR1cywgTWVzc2FnZSAkbWVzc2FnZSkNCgl7DQoJCSR0aGlzLT5kYXRhID0gJGRhdGE7DQoJCSR0aGlzLT5zdGF0dXMgPSAkc3RhdHVzOw0KCQkkdGhpcy0+bWVzc2FnZSA9ICRtZXNzYWdlOw0KCX0NCg0KCS8qKg0KCSAqIEV2YWx1YXRlcyB0aGUgaW1wb3J0IHByb2Nlc3MgYW5kIHNldHMgdGhlIHN1Y2Nlc3MvZXJyb3IgbWVzc2FnZSBiYXNlZCBvbiB0aGUgc3VjY2VzcyByYXRlLg0KCSAqDQoJICogQHBhcmFtIGludCAkcm93Q291bnRlciAgICAgVG90YWwgbnVtYmVyIG9mIHJvd3MgcHJvY2Vzc2VkLg0KCSAqIEBwYXJhbSBpbnQgJHN1Y2Nlc3NDb3VudGVyIE51bWJlciBvZiBzdWNjZXNzZnVsbHkgcHJvY2Vzc2VkIHJvd3MuDQoJICogQHBhcmFtIGludCAkZXJyb3JDb3VudGVyICAgTnVtYmVyIG9mIHJvd3MgdGhhdCBmYWlsZWQgdG8gcHJvY2Vzcy4NCgkgKg0KCSAqIEByZXR1cm4gdm9pZA0KCSAqIEBzaW5jZSA0LjAuMw0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBldmFsdWF0ZShpbnQgJHJvd0NvdW50ZXIsIGludCAkc3VjY2Vzc0NvdW50ZXIsIGludCAkZXJyb3JDb3VudGVyKTogdm9pZA0KCXsNCgkJLy8gTm8gcm93cyBwcm9jZXNzZWQgY2FzZQ0KCQlpZiAoJHJvd0NvdW50ZXIgPT09IDApDQoJCXsNCgkJCSR0aGlzLT5tZXNzYWdlLT5hZGRFcnJvcihUZXh0OjpfKCdObyByb3dzIHdlcmUgcHJvY2Vzc2VkLicpKTsNCg0KCQkJaWYgKCgkZ3VpZCA9ICR0aGlzLT5kYXRhLT5nZXQoJ2ltcG9ydC5ndWlkJykpICE9PSBudWxsKQ0KCQkJew0KCQkJCSR0aGlzLT5zdGF0dXMtPnNldCg0LCAkZ3VpZCk7IC8vIFN0YXR1cyA0ID0+IGNvbXBsZXRlZCB3aXRoIGVycm9ycw0KCQkJfQ0KCQkJcmV0dXJuOw0KCQl9DQoNCgkJJHN1Y2Nlc3NSYXRlID0gJHN1Y2Nlc3NDb3VudGVyIC8gJHJvd0NvdW50ZXI7DQoJCSRlcnJvclJhdGUgPSAoMSAtICRzdWNjZXNzUmF0ZSkgKiAxMDA7DQoJCSRzdWNjZXNzUGVyY2VudGFnZSA9ICRzdWNjZXNzUmF0ZSAqIDEwMDsNCg0KCQkvLyBEZXRlcm1pbmUgYXBwcm9wcmlhdGUgbWVzc2FnZSBiYXNlZCBvbiBzdWNjZXNzIHJhdGUNCgkJaWYgKCRzdWNjZXNzUmF0ZSA+PSBzZWxmOjpTVUNDRVNTX1RIUkVTSE9MRCkNCgkJew0KCQkJJHRoaXMtPm1lc3NhZ2UtPmFkZFN1Y2Nlc3MoVGV4dDo6c3ByaW50ZignJWQgcm93cyBwcm9jZXNzZWQuIFN1Y2Nlc3MgcmF0ZTogJS4yZiUlLiBJbXBvcnQgc3VjY2Vzc2Z1bCEnLCANCgkJCQkkcm93Q291bnRlciwgDQoJCQkJJHN1Y2Nlc3NQZXJjZW50YWdlDQoJCQkpKTsNCgkJfQ0KCQllbHNlDQoJCXsNCgkJCSR0aGlzLT5tZXNzYWdlLT5hZGRFcnJvcihUZXh0OjpzcHJpbnRmKCdJbXBvcnQgZmFpbGVkLiAlZCByb3dzIHByb2Nlc3NlZCB3aXRoIG9ubHkgJWQgc3VjY2Vzc2VzLiBFcnJvciByYXRlOiAlLjJmJSUuJywgDQoJCQkJJHJvd0NvdW50ZXIsIA0KCQkJCSRzdWNjZXNzQ291bnRlciwgDQoJCQkJJGVycm9yUmF0ZQ0KCQkJKSk7DQoJCX0NCg0KCQlpZiAoKCRndWlkID0gJHRoaXMtPmRhdGEtPmdldCgnaW1wb3J0Lmd1aWQnKSkgIT09IG51bGwpDQoJCXsNCgkJCS8vIFVwZGF0ZSBpbXBvcnQgc3RhdHVzIGJhc2VkIG9uIHN1Y2Nlc3MgcmF0ZQ0KCQkJJGltcG9ydFN0YXR1cyA9ICgkc3VjY2Vzc1BlcmNlbnRhZ2UgPT0gMTAwKSA/IDMgOiA0OyAvLyAzID0+IGNvbXBsZXRlZCwgNCA9PiBjb21wbGV0ZWQgd2l0aCBlcnJvcnMNCgkJCSR0aGlzLT5zdGF0dXMtPnNldCgkaW1wb3J0U3RhdHVzLCAkZ3VpZCk7DQoJCX0NCgl9', '{}', '{}', '', 1, '2024-10-18 00:27:37', 8, '', 1), +(859, '05f23281-58e3-482e-be42-2dc1355ef4ea', 'JCB.Import.Data', 'Data', 'class', 'Import Data Registry\r\n\r\n@since 3.2.0', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '7e822c03-1b20-41d1-9427-f5b8d5836af7', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\[[[ComponentNamespace]]].Import.Data', '', '{}', '{}', '', '{}', '', '{}', '{}', '', 1, '2024-10-18 00:32:22', 1, '', 1), +(860, '57c00d53-5581-4fd1-b3ea-080422710243', 'VDM.ImportAssessorInterface', 'ImportAssessorInterface', 'interface', 'Import Assessor Interface\r\n\r\n@since 3.0.3', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\[[[ComponentNamespace]]].Interfaces.ImportAssessorInterface', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIEV2YWx1YXRlcyB0aGUgaW1wb3J0IHByb2Nlc3MgYW5kIHNldHMgdGhlIHN1Y2Nlc3MvZXJyb3IgbWVzc2FnZSBiYXNlZCBvbiB0aGUgc3VjY2VzcyByYXRlLg0KCSAqDQoJICogQHBhcmFtIGludCAkcm93Q291bnRlciAgICAgVG90YWwgbnVtYmVyIG9mIHJvd3MgcHJvY2Vzc2VkLg0KCSAqIEBwYXJhbSBpbnQgJHN1Y2Nlc3NDb3VudGVyIE51bWJlciBvZiBzdWNjZXNzZnVsbHkgcHJvY2Vzc2VkIHJvd3MuDQoJICogQHBhcmFtIGludCAkZXJyb3JDb3VudGVyICAgTnVtYmVyIG9mIHJvd3MgdGhhdCBmYWlsZWQgdG8gcHJvY2Vzcy4NCgkgKg0KCSAqIEByZXR1cm4gdm9pZA0KCSAqIEBzaW5jZSA0LjAuMw0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBldmFsdWF0ZShpbnQgJHJvd0NvdW50ZXIsIGludCAkc3VjY2Vzc0NvdW50ZXIsIGludCAkZXJyb3JDb3VudGVyKTogdm9pZDs=', '{}', '{}', '', 1, '2024-10-18 00:41:35', 1, '', 1), +(861, '90b48ea8-0930-48d1-869a-bce9c901589c', 'JCB.Import.Mapper', 'Mapper', 'final class', 'Import Mapper Class\r\n\r\n@since 4.0.3', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '{\"0\":\"250a7272-9ae1-4c63-a058-26bad9ad6f70\"}', '', '[[[NamespacePrefix]]]\\Joomla\\[[[ComponentNamespace]]].Import.Mapper', '', '{}', '{}', '', '{\"use_selection0\":{\"use\":\"2da6d6c4-eb29-4d69-8bc2-36d96e916adf\",\"as\":\"Table\"}}', 'CS8qKg0KCSAqIFRoZSBUYWJsZSBDbGFzcy4NCgkgKg0KCSAqIEB2YXIgICBUYWJsZQ0KCSAqIEBzaW5jZSA0LjAuMw0KCSAqLw0KCXByb3RlY3RlZCBUYWJsZSAkdGFibGU7DQoNCgkvKioNCgkgKiBUaGUgY3VycmVudCBwYXJlbnQgdGFibGUgbWFwLg0KCSAqDQoJICogQHZhciAgIGFycmF5DQoJICogQHNpbmNlIDQuMC4zDQoJICovDQoJcHJpdmF0ZSBhcnJheSAkcGFyZW50ID0gW107DQoNCgkvKioNCgkgKiBUaGUgY3VycmVudCBqb2luIHRhYmxlcyBtYXAuDQoJICoNCgkgKiBAdmFyICAgYXJyYXkNCgkgKiBAc2luY2UgNC4wLjMNCgkgKi8NCglwcml2YXRlIGFycmF5ICRqb2luID0gW107DQoNCgkvKioNCgkgKiBDb25zdHJ1Y3Rvci4NCgkgKg0KCSAqIEBwYXJhbSBUYWJsZSAgICR0YWJsZSAgIFRoZSBUYWJsZSBDbGFzcy4NCgkgKg0KCSAqIEBzaW5jZSA0LjAuMw0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdChUYWJsZSAkdGFibGUpDQoJew0KCQkkdGhpcy0+dGFibGUgPSAkdGFibGU7DQoJfQ0KDQoJLyoqDQoJICogU2V0IHRoZSB0YWJsZXMgbWFwcGVyDQoJICoNCgkgKiBAcGFyYW0gICBvYmplY3QgICRtYXAgICAgICAgICAgVGhlIGltcG9ydCBmaWxlIG1hcC4NCgkgKiBAcGFyYW0gICBzdHJpbmcgICRwYXJlbnRUYWJsZSAgVGhlIHBhcmVudCB0YWJsZSBuYW1lLg0KCSAqDQoJICogQHJldHVybiAgdm9pZA0KCSAqIEBzaW5jZSAgNC4wLjMNCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gc2V0KG9iamVjdCAkbWFwLCBzdHJpbmcgJHBhcmVudFRhYmxlKTogdm9pZA0KCXsNCgkJLy8gYWx3YXlzIHJlc2V0IHRoZXNlDQoJCSR0aGlzLT5wYXJlbnQgPSBbXTsNCgkJJHRoaXMtPmpvaW4gPSBbXTsNCg0KCQlmb3JlYWNoICgkbWFwIGFzICRyb3cpDQoJCXsNCgkJCSR0YXJnZXQgPSAkcm93LT50YXJnZXQgPz8gbnVsbDsNCg0KCQkJaWYgKGVtcHR5KCR0YXJnZXQpKQ0KCQkJew0KCQkJCWNvbnRpbnVlOw0KCQkJfQ0KDQoJCQlpZiAoKCR0bSA9ICR0aGlzLT5nZXRUYWJsZUZpZWxkKCR0YXJnZXQpKSAhPT0gbnVsbCkNCgkJCXsNCgkJCQkkZmllbGQgPSAkdGhpcy0+dGFibGUtPmdldCgkdG0tPnRhYmxlLCAkdG0tPmZpZWxkKTsNCgkJCQlpZiAoJHRtLT50YWJsZSA9PT0gJHBhcmVudFRhYmxlKQ0KCQkJCXsNCgkJCQkJJHRoaXMtPnBhcmVudFskcm93LT5jb2x1bW5dID0gJGZpZWxkOw0KCQkJCX0NCgkJCQllbHNlDQoJCQkJew0KCQkJCQkkdGhpcy0+am9pblskdG0tPnRhYmxlXVskcm93LT5jb2x1bW5dID0gJGZpZWxkOw0KCQkJCX0NCgkJCX0NCgkJfQ0KCX0NCg0KCS8qKg0KCSAqIEdldCB0aGUgcGFyZW50IHRhYmxlIGtleXMNCgkgKg0KCSAqIEByZXR1cm4gIGFycmF5DQoJICogQHNpbmNlICA0LjAuMw0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBnZXRQYXJlbnQoKTogYXJyYXkNCgl7DQoJCXJldHVybiAkdGhpcy0+cGFyZW50Ow0KCX0NCg0KCS8qKg0KCSAqIEdldCB0aGUgam9pbiB0YWJsZXMga2V5cw0KCSAqDQoJICogQHJldHVybiAgYXJyYXkNCgkgKiBAc2luY2UgIDQuMC4zDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGdldEpvaW4oKTogYXJyYXkNCgl7DQoJCXJldHVybiAkdGhpcy0+am9pbjsNCgl9DQoNCgkvKioNCgkgKiBHZXQgdGhlIHRhYmxlIGFuZCBmaWVsZCBuYW1lDQoJICoNCgkgKiBAcGFyYW0gICBzdHJpbmcgICRrZXkgIFRoZSBpbXBvcnQgZmlsZSBrZXkuDQoJICoNCgkgKiBAcmV0dXJuICBvYmplY3R8bnVsbA0KCSAqIEBzaW5jZSAgNC4wLjMNCgkgKi8NCglwcml2YXRlIGZ1bmN0aW9uIGdldFRhYmxlRmllbGQoc3RyaW5nICRrZXkpOiA/b2JqZWN0DQoJew0KCQkvLyBGaW5kIHRoZSBwb3NpdGlvbiBvZiB0aGUgZmlyc3QgZG90DQoJCSRkb3RQb3NpdGlvbiA9IHN0cnBvcygka2V5LCAnLicpOw0KDQoJCS8vIElmIG5vIGRvdCBpcyBmb3VuZCwgcmV0dXJuIHRoZSB3aG9sZSBzdHJpbmcNCgkJaWYgKCRkb3RQb3NpdGlvbiA9PT0gZmFsc2UpDQoJCXsNCgkJCXJldHVybiBudWxsOw0KCQl9DQoNCgkJLy8gRXh0cmFjdCB0aGUgdGFibGUgKGJlZm9yZSB0aGUgZG90KSBhbmQgdGhlIGZpZWxkIChhZnRlciB0aGUgZG90KQ0KCQkkdGFibGUgPSBzdWJzdHIoJGtleSwgMCwgJGRvdFBvc2l0aW9uKTsNCgkJJGZpZWxkID0gc3Vic3RyKCRrZXksICRkb3RQb3NpdGlvbiArIDEpOw0KDQoJCWlmICgkdGhpcy0+dGFibGUtPmV4aXN0KCR0YWJsZSA/PyAnX2Vycm9yJywgJGZpZWxkKSkNCgkJew0KCQkJcmV0dXJuIChvYmplY3QpIFsndGFibGUnID0+ICR0YWJsZSwgJ2ZpZWxkJyA9PiAkZmllbGRdOw0KCQl9DQoNCgkJcmV0dXJuIG51bGw7DQoJfQ==', '{}', '{}', '', 1, '2024-10-18 00:42:35', 6, '', 1), +(862, '250a7272-9ae1-4c63-a058-26bad9ad6f70', 'VDM.ImportMapperInterface', 'ImportMapperInterface', 'interface', 'Import Mapper Interface\r\n\r\n@since 3.0.3', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\[[[ComponentNamespace]]].Interfaces.ImportMapperInterface', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIFNldCB0aGUgdGFibGVzIG1hcHBlcg0KCSAqDQoJICogQHBhcmFtICAgb2JqZWN0ICAkbWFwICAgICAgICAgIFRoZSBpbXBvcnQgZmlsZSBtYXAuDQoJICogQHBhcmFtICAgc3RyaW5nICAkcGFyZW50VGFibGUgIFRoZSBwYXJlbnQgdGFibGUgbmFtZS4NCgkgKg0KCSAqIEByZXR1cm4gIHZvaWQNCgkgKiBAc2luY2UgIDQuMC4zDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIHNldChvYmplY3QgJG1hcCwgc3RyaW5nICRwYXJlbnRUYWJsZSk6IHZvaWQ7DQoNCgkvKioNCgkgKiBHZXQgdGhlIHBhcmVudCB0YWJsZSBrZXlzDQoJICoNCgkgKiBAcmV0dXJuICBhcnJheQ0KCSAqIEBzaW5jZSAgNC4wLjMNCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZ2V0UGFyZW50KCk6IGFycmF5Ow0KDQoJLyoqDQoJICogR2V0IHRoZSBqb2luIHRhYmxlcyBrZXlzDQoJICoNCgkgKiBAcmV0dXJuICBhcnJheQ0KCSAqIEBzaW5jZSAgNC4wLjMNCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZ2V0Sm9pbigpOiBhcnJheTs=', '{}', '{}', '', 1, '2024-10-18 00:58:53', 1, '', 1), +(877, '0b746305-d34e-4c21-bc20-898c4aeac376', 'VDM.Data.Migrator.Guid', 'Guid', 'final class', 'Migrator To Globally Unique Identifier\r\n\r\n@since 5.0.4', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIwDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\Data.Migrator.Guid', 1, '{}', '{}', 'dXNlIEpvb21sYVxSZWdpc3RyeVxSZWdpc3RyeTs=', '{\"use_selection0\":{\"use\":\"21bca8a4-5b28-41c4-843e-8097f0ba7cca\",\"as\":\"default\"},\"use_selection1\":{\"use\":\"06f8eada-d59b-441c-b287-0aea1793da5a\",\"as\":\"default\"},\"use_selection2\":{\"use\":\"cce56585-58b0-4f72-a92c-e2635ea52d83\",\"as\":\"default\"},\"use_selection3\":{\"use\":\"5acded67-0e3d-4c6b-a6ea-b533b076de0c\",\"as\":\"TraitGuid\"}}', 'CS8qKg0KCSAqIFRoZSBHbG9iYWxseSBVbmlxdWUgSWRlbnRpZmllci4NCgkgKg0KCSAqIEBzaW5jZSA1LjAuNA0KCSAqLw0KCXVzZSBUcmFpdEd1aWQ7DQoNCgkvKioNCgkgKiBUaGUgSXRlbXMgQ2xhc3MuDQoJICoNCgkgKiBAdmFyICAgSXRlbXMNCgkgKiBAc2luY2UgNS4wLjQNCgkgKi8NCglwcm90ZWN0ZWQgSXRlbXMgJGl0ZW1zOw0KDQoJLyoqDQoJICogVGhlIExvYWQgQ2xhc3MuDQoJICoNCgkgKiBAdmFyICAgTG9hZA0KCSAqIEBzaW5jZSA1LjAuNA0KCSAqLw0KCXByb3RlY3RlZCBMb2FkICRsb2FkOw0KDQoJLyoqDQoJICogVGhlIFVwZGF0ZSBDbGFzcy4NCgkgKg0KCSAqIEB2YXIgICBVcGRhdGUNCgkgKiBAc2luY2UgNS4wLjQNCgkgKi8NCglwcm90ZWN0ZWQgVXBkYXRlICR1cGRhdGU7DQoNCgkvKioNCgkgKiBDYWNoZSBmb3Igc3RvcmluZyBHVUlEcyB0byBtaW5pbWl6ZSByZWR1bmRhbnQgZGF0YWJhc2UgcXVlcmllcy4NCgkgKg0KCSAqIEB2YXIgYXJyYXkNCgkgKiBAc2luY2UgNS4wLjQNCgkgKi8NCglwcm90ZWN0ZWQgYXJyYXkgJGd1aWRDYWNoZSA9IFtdOw0KDQoJLyoqDQoJICogVGFibGUgTmFtZQ0KCSAqDQoJICogQHZhciAgICBzdHJpbmcNCgkgKiBAc2luY2UgNS4wLjQNCgkgKi8NCglwcm90ZWN0ZWQgc3RyaW5nICR0YWJsZTsNCg0KCS8qKg0KCSAqIENhY2hlIGFsbCBzdWNjZXNzIG1lc3NhZ2VzLg0KCSAqDQoJICogQHZhciBhcnJheQ0KCSAqIEBzaW5jZSA1LjAuNA0KCSAqLw0KCXByaXZhdGUgYXJyYXkgJHN1Y2Nlc3MgPSBbXTsNCg0KCS8qKg0KCSAqIENvbnN0cnVjdG9yLg0KCSAqDQoJICogQHBhcmFtIEl0ZW1zICAgICRpdGVtcyAgICBUaGUgSXRlbXMgQ2xhc3MuDQoJICogQHBhcmFtIExvYWQgICAgICRsb2FkICAgICBUaGUgTG9hZCBDbGFzcy4NCgkgKiBAcGFyYW0gVXBkYXRlICAgJHVwZGF0ZSAgIFRoZSBVcGRhdGUgQ2xhc3MuDQoJICoNCgkgKiBAc2luY2UgNS4wLjQNCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoSXRlbXMgJGl0ZW1zLCBMb2FkICRsb2FkLCBVcGRhdGUgJHVwZGF0ZSkNCgl7DQoJCSR0aGlzLT5pdGVtcyA9ICRpdGVtczsNCgkJJHRoaXMtPmxvYWQgPSAkbG9hZDsNCgkJJHRoaXMtPnVwZGF0ZSA9ICR1cGRhdGU7DQoJfQ0KDQoJLyoqDQoJICogUHJvY2Vzc2VzIHRoZSBjb25maWd1cmF0aW9uIHRvIG1pZ3JhdGUgSURzIHRvIEdVSURzLg0KCSAqDQoJICogQHBhcmFtIGFycmF5ICRjb25maWcgQ29uZmlndXJhdGlvbiBhcnJheSBkZWZpbmluZyB0YWJsZSBhbmQgY29sdW1uIG1hcHBpbmdzLg0KCSAqDQoJICogQHJldHVybiBhcnJheSBvZiBzdWNjZXNzIG1lc3NhZ2VzDQoJICogQHNpbmNlIDUuMC40DQoJICovDQoJcHVibGljIGZ1bmN0aW9uIHByb2Nlc3MoYXJyYXkgJGNvbmZpZyk6IGFycmF5DQoJew0KCQl0cnkgew0KCQkJJHNpemUgPSBjb3VudCgkY29uZmlnKTsNCgkJCSR0aGlzLT5zdWNjZXNzID0gWw0KCQkJCSJTdWNjZXNzOiBzY2FuIHRvIG1pZ3JhdGUgbGlua2VkIElEcyB0byBsaW5rZWQgR1VJRHMgaGFzIHN0YXJ0ZWQgb24geyRzaXplfSBmaWVsZCBhcmVhcy4iDQoJCQldOw0KDQoJCQlmb3JlYWNoICgkY29uZmlnIGFzICRtYXBwaW5nKQ0KCQkJew0KCQkJCSR0aGlzLT5wcm9jZXNzTWFwcGluZygkbWFwcGluZyk7DQoJCQl9DQoJCX0gY2F0Y2ggKFxFeGNlcHRpb24gJGUpIHsNCgkJCXRocm93IG5ldyBcRXhjZXB0aW9uKCJFcnJvcjogbWlncmF0aW5nIGxpbmtlZCBJRHMgdG8gbGlua2VkIEdVSURzLiAiIC4gJGUtPmdldE1lc3NhZ2UoKSk7DQoJCX0NCg0KCQlpZiAoY291bnQoJHRoaXMtPnN1Y2Nlc3MpID09IDEpDQoJCXsNCgkJCSR0aGlzLT5zdWNjZXNzW10gPSAiU3VjY2VzczogbWlncmF0aW9uIGNvbXBsZXRlZCBhbmQgYWxsIGxpbmtlZCBJRHMgYXJlIG5vdyBtaWdyYXRlZCB0byBsaW5rZWQgR1VJRHMgKG9uIHByZXZpb3VzIHJ1bikuIjsNCgkJfQ0KCQllbHNlDQoJCXsNCgkJCSR0aGlzLT5zdWNjZXNzW10gPSAiU3VjY2VzczogbWlncmF0aW9uIGNvbXBsZXRlZCBhbmQgYWxsIGxpbmtlZCBJRHMgYXJlIG5vdyBtaWdyYXRlZCB0byBsaW5rZWQgR1VJRHMuIjsNCgkJfQ0KDQoJCXJldHVybiAkdGhpcy0+c3VjY2VzczsNCgl9DQoNCgkvKioNCgkgKiBQcm9jZXNzZXMgYSBzaW5nbGUgbWFwcGluZyBiYXNlZCBvbiBpdHMgdHlwZS4NCgkgKg0KCSAqIEBwYXJhbSBhcnJheSAkbWFwcGluZyBDb25maWd1cmF0aW9uIGZvciB0aGUgY3VycmVudCB0YWJsZSBhbmQgY29sdW1uLg0KCSAqDQoJICogQHJldHVybiB2b2lkDQoJICogQHNpbmNlIDUuMC40DQoJICovDQoJcHJpdmF0ZSBmdW5jdGlvbiBwcm9jZXNzTWFwcGluZyhhcnJheSAkbWFwcGluZyk6IHZvaWQNCgl7DQoJCWlmICgkbWFwcGluZ1sndmFsdWVUeXBlJ10gPT0gMSkNCgkJew0KCQkJJHRoaXMtPnByb2Nlc3NCYXNpY1ZhbHVlKCRtYXBwaW5nKTsNCgkJfQ0KCQllbHNlaWYgKCRtYXBwaW5nWyd2YWx1ZVR5cGUnXSA9PSAyKQ0KCQl7DQoJCQkkdGhpcy0+cHJvY2Vzc1N1YmZvcm1WYWx1ZSgkbWFwcGluZyk7DQoJCX0NCgkJZWxzZWlmICgkbWFwcGluZ1sndmFsdWVUeXBlJ10gPT0gMykNCgkJew0KCQkJJHRoaXMtPnByb2Nlc3NTdWJTdWJmb3JtVmFsdWUoJG1hcHBpbmcpOw0KCQl9DQoJCS8vIGFsbG93IGZvciBkb3duIHN0cmVhbSBmdW5jdGlvbg0KCQllbHNlaWYgKCRtYXBwaW5nWyd2YWx1ZVR5cGUnXSA9PSA0ICYmDQoJCQlpc3NldCgkbWFwcGluZ1snZnVuY3Rpb24nXSkgJiYNCgkJCW1ldGhvZF9leGlzdHMoJHRoaXMsICRtYXBwaW5nWydmdW5jdGlvbiddKSkNCgkJew0KCQkJJHRoaXMtPnskbWFwcGluZ1snZnVuY3Rpb24nXX0oJG1hcHBpbmcpOw0KCQl9DQoJfQ0KDQoJLyoqDQoJICogUHJvY2Vzc2VzIGJhc2ljIHZhbHVlcyBpbiBhIHRhYmxlIGFuZCByZXBsYWNlcyBJRHMgd2l0aCBHVUlEcy4NCgkgKg0KCSAqIEBwYXJhbSBhcnJheSAkbWFwcGluZyBDb25maWd1cmF0aW9uIGZvciB0aGUgY3VycmVudCB0YWJsZSBhbmQgY29sdW1uLg0KCSAqDQoJICogQHJldHVybiB2b2lkDQoJICogQHNpbmNlIDUuMC40DQoJICovDQoJcHJpdmF0ZSBmdW5jdGlvbiBwcm9jZXNzQmFzaWNWYWx1ZShhcnJheSAkbWFwcGluZyk6IHZvaWQNCgl7DQoJCSR0YWJsZSA9ICRtYXBwaW5nWyd0YWJsZSddOw0KCQkkY29sdW1uID0gJG1hcHBpbmdbJ2NvbHVtbiddOw0KCQkkbGlua2VkVGFibGUgPSAkbWFwcGluZ1snbGlua2VkVGFibGUnXTsNCgkJJGxpbmtlZENvbHVtbiA9ICRtYXBwaW5nWydsaW5rZWRDb2x1bW4nXTsNCgkJJGlzQXJyYXkgPSAkbWFwcGluZ1snYXJyYXknXTsNCg0KCQkkdXBkYXRlID0gZmFsc2U7DQoNCgkJJHJvd3MgPSAkdGhpcy0+bG9hZC0+cm93cyhbImEueyRjb2x1bW59IiA9PiAkY29sdW1uLCAnYS5pZCcgPT4gJ2lkJ10sIFsnYScgPT4gJHRhYmxlXSkgPz8gW107DQoNCgkJZm9yZWFjaCAoJHJvd3MgYXMgJHJvdykNCgkJew0KCQkJJHBhcmVudElkID0gJHJvd1snaWQnXTsNCgkJCSR2YWx1ZSA9ICRyb3dbJGNvbHVtbl0gPz8gbnVsbDsNCg0KCQkJJGhhc1VwZGF0ZSA9IGZhbHNlOw0KCQkJJHVwZGF0ZWRWYWx1ZSA9IG51bGw7DQoNCgkJCWlmIChlbXB0eSgkdmFsdWUpKQ0KCQkJew0KCQkJCWNvbnRpbnVlOw0KCQkJfQ0KDQoJCQlpZiAoJGlzQXJyYXkpDQoJCQl7DQoJCQkJJHVwZGF0ZWRWYWx1ZSA9IChpc19hcnJheSgkdmFsdWUpKQ0KCQkJCQk/ICR0aGlzLT5wcm9jZXNzQXJyYXkoJHZhbHVlLCAkbGlua2VkVGFibGUsICRsaW5rZWRDb2x1bW4sICRoYXNVcGRhdGUpDQoJCQkJCTogICR0aGlzLT5wcm9jZXNzSnNvbigkdmFsdWUsICRsaW5rZWRUYWJsZSwgJGxpbmtlZENvbHVtbiwgJGhhc1VwZGF0ZSk7DQoJCQl9DQoJCQllbHNlaWYgKGlzX251bWVyaWMoJHZhbHVlKSkNCgkJCXsNCgkJCQkkZ3VpZCA9ICR0aGlzLT5nZXRJdGVtR3VpZCgkbGlua2VkVGFibGUsICRsaW5rZWRDb2x1bW4sICR2YWx1ZSk7DQoJCQkJaWYgKCRndWlkICE9PSBudWxsKQ0KCQkJCXsNCgkJCQkJJHVwZGF0ZWRWYWx1ZSA9ICRndWlkOw0KCQkJCQkkaGFzVXBkYXRlID0gdHJ1ZTsNCgkJCQl9DQoJCQl9DQoNCgkJCWlmICghJGhhc1VwZGF0ZSB8fCAkdXBkYXRlZFZhbHVlID09PSBudWxsKQ0KCQkJew0KCQkJCWNvbnRpbnVlOyAvLyBTa2lwIGlmIG5vIEdVSUQgdXBkYXRlZCBvciByZXR1cm5lZA0KCQkJfQ0KDQoJCQlpZiAoJHRoaXMtPnVwZGF0ZVZhbHVlKCR0YWJsZSwgJGNvbHVtbiwgJHVwZGF0ZWRWYWx1ZSwgJHBhcmVudElkKSkNCgkJCXsNCgkJCQkkdXBkYXRlID0gdHJ1ZTsNCgkJCX0NCgkJfQ0KDQoJCWlmICgkdXBkYXRlKQ0KCQl7DQoJCQkkdGhpcy0+c3VjY2Vzc1tdID0gIlN1Y2Nlc3M6IG1pZ3JhdGVkIHskY29sdW1ufTpmaWVsZCBpbiB7JHRhYmxlfTp0YWJsZSB0byBHVUlEcyBmcm9tIHskbGlua2VkVGFibGV9OnRhYmxlLiI7DQoJCX0NCgl9DQoNCgkvKioNCgkgKiBQcm9jZXNzZXMgc3ViZm9ybSB2YWx1ZXMgaW4gYSB0YWJsZSBhbmQgcmVwbGFjZXMgSURzIHdpdGggR1VJRHMuDQoJICoNCgkgKiBAcGFyYW0gYXJyYXkgJG1hcHBpbmcgQ29uZmlndXJhdGlvbiBmb3IgdGhlIGN1cnJlbnQgdGFibGUgYW5kIHN1YmZvcm0gY29sdW1uL2ZpZWxkLg0KCSAqDQoJICogQHJldHVybiB2b2lkDQoJICogQHNpbmNlIDUuMC40DQoJICovDQoJcHJpdmF0ZSBmdW5jdGlvbiBwcm9jZXNzU3ViZm9ybVZhbHVlKGFycmF5ICRtYXBwaW5nKTogdm9pZA0KCXsNCgkJJHRhYmxlID0gJG1hcHBpbmdbJ3RhYmxlJ107DQoJCSRjb2x1bW4gPSAkbWFwcGluZ1snY29sdW1uJ107DQoJCSRmaWVsZCA9ICRtYXBwaW5nWydmaWVsZCddOw0KCQkkbGlua2VkVGFibGUgPSAkbWFwcGluZ1snbGlua2VkVGFibGUnXTsNCgkJJGxpbmtlZENvbHVtbiA9ICRtYXBwaW5nWydsaW5rZWRDb2x1bW4nXTsNCgkJJGlzQXJyYXkgPSAkbWFwcGluZ1snYXJyYXknXTsNCg0KCQkkdXBkYXRlID0gZmFsc2U7DQoNCgkJJHJvd3MgPSAkdGhpcy0+bG9hZC0+cm93cyhbImEueyRjb2x1bW59IiA9PiAkY29sdW1uLCAnYS5pZCcgPT4gJ2lkJ10sIFsnYScgPT4gJHRhYmxlXSkgPz8gW107DQoNCgkJZm9yZWFjaCAoJHJvd3MgYXMgJHJvdykNCgkJew0KCQkJJHBhcmVudElkID0gJHJvd1snaWQnXTsNCgkJCSRqc29uRGF0YSA9ICRyb3dbJGNvbHVtbl0gPz8gbnVsbDsNCg0KCQkJaWYgKGVtcHR5KCRqc29uRGF0YSkpDQoJCQl7DQoJCQkJY29udGludWU7DQoJCQl9DQoNCgkJCSRyZWdpc3RyeSA9IG5ldyBSZWdpc3RyeSgkanNvbkRhdGEpOw0KCQkJJHN1YmZvcm1EYXRhID0gJHJlZ2lzdHJ5LT50b0FycmF5KCk7DQoNCgkJCSRoYXNVcGRhdGUgPSBmYWxzZTsNCg0KCQkJZm9yZWFjaCAoJHN1YmZvcm1EYXRhIGFzICYkaXRlbSkNCgkJCXsNCgkJCQlpZiAoIWVtcHR5KCRpdGVtWyRmaWVsZF0pKQ0KCQkJCXsNCgkJCQkJaWYgKCRpc0FycmF5KQ0KCQkJCQl7DQoJCQkJCQkkaXRlbVskZmllbGRdID0gKGlzX2FycmF5KCRpdGVtWyRmaWVsZF0pKQ0KCQkJCQkJCT8gJHRoaXMtPnByb2Nlc3NBcnJheSgkaXRlbVskZmllbGRdLCAkbGlua2VkVGFibGUsICRsaW5rZWRDb2x1bW4sICRoYXNVcGRhdGUpDQoJCQkJCQkJOiAgJHRoaXMtPnByb2Nlc3NKc29uKCRpdGVtWyRmaWVsZF0sICRsaW5rZWRUYWJsZSwgJGxpbmtlZENvbHVtbiwgJGhhc1VwZGF0ZSk7DQoJCQkJCX0NCgkJCQkJZWxzZWlmIChpc19udW1lcmljKCRpdGVtWyRmaWVsZF0pKQ0KCQkJCQl7DQoJCQkJCQkkZ3VpZCA9ICR0aGlzLT5nZXRJdGVtR3VpZCgkbGlua2VkVGFibGUsICRsaW5rZWRDb2x1bW4sICRpdGVtWyRmaWVsZF0pOw0KCQkJCQkJaWYgKCRndWlkICE9PSBudWxsKQ0KCQkJCQkJew0KCQkJCQkJCSRpdGVtWyRmaWVsZF0gPSAkZ3VpZDsNCgkJCQkJCQkkaGFzVXBkYXRlID0gdHJ1ZTsNCgkJCQkJCX0NCgkJCQkJfQ0KCQkJCX0NCgkJCX0NCg0KCQkJaWYgKCEkaGFzVXBkYXRlKQ0KCQkJew0KCQkJCWNvbnRpbnVlOyAvLyBTa2lwIGlmIG5vIEdVSUQgdXBkYXRlZA0KCQkJfQ0KDQoJCQkkdXBkYXRlZEpzb24gPSAoc3RyaW5nKSBuZXcgUmVnaXN0cnkoJHN1YmZvcm1EYXRhKTsNCg0KCQkJaWYgKCR0aGlzLT51cGRhdGVWYWx1ZSgkdGFibGUsICRjb2x1bW4sICR1cGRhdGVkSnNvbiwgJHBhcmVudElkKSkNCgkJCXsNCgkJCQkkdXBkYXRlID0gdHJ1ZTsNCgkJCX0NCgkJfQ0KDQoJCWlmICgkdXBkYXRlKQ0KCQl7DQoJCQkkdGhpcy0+c3VjY2Vzc1tdID0gIlN1Y2Nlc3M6IG1pZ3JhdGVkIHskY29sdW1ufS0+eyRmaWVsZH06ZmllbGQgaW4geyR0YWJsZX06dGFibGUgdG8gR1VJRHMgZnJvbSB7JGxpbmtlZFRhYmxlfTp0YWJsZS4iOw0KCQl9DQoJfQ0KDQoJLyoqDQoJICogUHJvY2Vzc2VzIHN1Yi1zdWJmb3JtIHZhbHVlcyBpbiBhIHRhYmxlIGFuZCByZXBsYWNlcyBJRHMgd2l0aCBHVUlEcy4NCgkgKg0KCSAqIEBwYXJhbSBhcnJheSAkbWFwcGluZyBDb25maWd1cmF0aW9uIGZvciB0aGUgY3VycmVudCB0YWJsZSBhbmQgc3ViZm9ybSBjb2x1bW4vZmllbGQuDQoJICoNCgkgKiBAcmV0dXJuIHZvaWQNCgkgKiBAc2luY2UgNS4wLjQNCgkgKi8NCglwcml2YXRlIGZ1bmN0aW9uIHByb2Nlc3NTdWJTdWJmb3JtVmFsdWUoYXJyYXkgJG1hcHBpbmcpOiB2b2lkDQoJew0KCQkkdGFibGUgPSAkbWFwcGluZ1sndGFibGUnXTsNCgkJJGNvbHVtbiA9ICRtYXBwaW5nWydjb2x1bW4nXTsNCgkJJHN1YiA9ICRtYXBwaW5nWydzdWInXTsNCgkJJGZpZWxkID0gJG1hcHBpbmdbJ2ZpZWxkJ107DQoJCSRsaW5rZWRUYWJsZSA9ICRtYXBwaW5nWydsaW5rZWRUYWJsZSddOw0KCQkkbGlua2VkQ29sdW1uID0gJG1hcHBpbmdbJ2xpbmtlZENvbHVtbiddOw0KCQkkaXNBcnJheSA9ICRtYXBwaW5nWydhcnJheSddOw0KDQoJCSR1cGRhdGUgPSBmYWxzZTsNCg0KCQkkcm93cyA9ICR0aGlzLT5sb2FkLT5yb3dzKFsiYS57JGNvbHVtbn0iID0+ICRjb2x1bW4sICdhLmlkJyA9PiAnaWQnXSwgWydhJyA9PiAkdGFibGVdKSA/PyBbXTsNCg0KCQlmb3JlYWNoICgkcm93cyBhcyAkcm93KQ0KCQl7DQoJCQkkcGFyZW50SWQgPSAkcm93WydpZCddOw0KCQkJJGpzb25EYXRhID0gJHJvd1skY29sdW1uXSA/PyBudWxsOw0KDQoJCQlpZiAoZW1wdHkoJGpzb25EYXRhKSkNCgkJCXsNCgkJCQljb250aW51ZTsNCgkJCX0NCg0KCQkJJHJlZ2lzdHJ5ID0gbmV3IFJlZ2lzdHJ5KCRqc29uRGF0YSk7DQoJCQkkc3ViZm9ybURhdGEgPSAkcmVnaXN0cnktPnRvQXJyYXkoKTsNCg0KCQkJJGhhc1VwZGF0ZSA9IGZhbHNlOw0KDQoJCQlmb3JlYWNoICgkc3ViZm9ybURhdGEgYXMgJiRpdGVtKQ0KCQkJew0KCQkJCWlmIChpc3NldCgkaXRlbVskc3ViXSkgJiYgaXNfYXJyYXkoJGl0ZW1bJHN1Yl0pKQ0KCQkJCXsNCgkJCQkJZm9yZWFjaCAoJGl0ZW1bJHN1Yl0gYXMgJiRzdWJJdGVtKQ0KCQkJCQl7DQoJCQkJCQlpZiAoIWVtcHR5KCRzdWJJdGVtWyRmaWVsZF0pKQ0KCQkJCQkJew0KCQkJCQkJCWlmICgkaXNBcnJheSkNCgkJCQkJCQl7DQoJCQkJCQkJCSRzdWJJdGVtWyRmaWVsZF0gPSAoaXNfYXJyYXkoJHN1Ykl0ZW1bJGZpZWxkXSkpDQoJCQkJCQkJCQk/ICR0aGlzLT5wcm9jZXNzQXJyYXkoJHN1Ykl0ZW1bJGZpZWxkXSwgJGxpbmtlZFRhYmxlLCAkbGlua2VkQ29sdW1uLCAkaGFzVXBkYXRlKQ0KCQkJCQkJCQkJOiAgJHRoaXMtPnByb2Nlc3NKc29uKCRzdWJJdGVtWyRmaWVsZF0sICRsaW5rZWRUYWJsZSwgJGxpbmtlZENvbHVtbiwgJGhhc1VwZGF0ZSk7DQoJCQkJCQkJfQ0KCQkJCQkJCWVsc2VpZiAoaXNfbnVtZXJpYygkc3ViSXRlbVskZmllbGRdKSkNCgkJCQkJCQl7DQoJCQkJCQkJCSRndWlkID0gJHRoaXMtPmdldEl0ZW1HdWlkKCRsaW5rZWRUYWJsZSwgJGxpbmtlZENvbHVtbiwgJHN1Ykl0ZW1bJGZpZWxkXSk7DQoJCQkJCQkJCWlmICgkZ3VpZCAhPT0gbnVsbCkNCgkJCQkJCQkJew0KCQkJCQkJCQkJJHN1Ykl0ZW1bJGZpZWxkXSA9ICRndWlkOw0KCQkJCQkJCQkJJGhhc1VwZGF0ZSA9IHRydWU7DQoJCQkJCQkJCX0NCgkJCQkJCQl9DQoJCQkJCQl9DQoJCQkJCX0NCgkJCQl9DQoJCQl9DQoNCgkJCWlmICghJGhhc1VwZGF0ZSkNCgkJCXsNCgkJCQljb250aW51ZTsgLy8gU2tpcCBpZiBubyBHVUlEIHVwZGF0ZWQNCgkJCX0NCg0KCQkJJHVwZGF0ZWRKc29uID0gKHN0cmluZykgbmV3IFJlZ2lzdHJ5KCRzdWJmb3JtRGF0YSk7DQoNCgkJCWlmICgkdGhpcy0+dXBkYXRlVmFsdWUoJHRhYmxlLCAkY29sdW1uLCAkdXBkYXRlZEpzb24sICRwYXJlbnRJZCkpDQoJCQl7DQoJCQkJJHVwZGF0ZSA9IHRydWU7DQoJCQl9DQoJCX0NCg0KCQlpZiAoJHVwZGF0ZSkNCgkJew0KCQkJJHRoaXMtPnN1Y2Nlc3NbXSA9ICJTdWNjZXNzOiBtaWdyYXRlZCB7JGNvbHVtbn0tPnskc3VifS0+eyRmaWVsZH06ZmllbGQgaW4geyR0YWJsZX06dGFibGUgdG8gR1VJRHMgZnJvbSB7JGxpbmtlZFRhYmxlfTp0YWJsZS4iOw0KCQl9DQoJfQ0KDQoJLyoqDQoJICogUmV0cmlldmVzIG9yIGNyZWF0ZXMgYSBHVUlEIGZvciBhIGdpdmVuIGxpbmtlZCB0YWJsZSBhbmQgSUQgKElURU0pLg0KCSAqDQoJICogQHBhcmFtIHN0cmluZyAkdGFibGUgIFRoZSBsaW5rZWQgdGFibGUgbmFtZS4NCgkgKiBAcGFyYW0gc3RyaW5nICRjb2x1bW4gVGhlIGNvbHVtbiBuYW1lIGluIHRoZSBsaW5rZWQgdGFibGUuDQoJICogQHBhcmFtIG1peGVkICAkdmFsdWUgIFRoZSB2YWx1ZSB0byBjaGVjayBvciBjb252ZXJ0Lg0KCSAqDQoJICogQHJldHVybiBzdHJpbmd8bnVsbCBUaGUgR1VJRCBmb3IgdGhlIGdpdmVuIHZhbHVlLCBvciBudWxsIGlmIHNraXBwZWQuDQoJICogQHRocm93cyBcRXhjZXB0aW9uIElmIHRoZSB2YWx1ZSBpcyBpbnZhbGlkLg0KCSAqIEBzaW5jZSA1LjAuNA0KCSAqLw0KCXByaXZhdGUgZnVuY3Rpb24gZ2V0SXRlbUd1aWQoc3RyaW5nICR0YWJsZSwgc3RyaW5nICRjb2x1bW4sICR2YWx1ZSk6ID9zdHJpbmcNCgl7DQoJCWlmIChpc19udW1lcmljKCR2YWx1ZSkpDQoJCXsNCgkJCS8vIENoZWNrIGlmIGFscmVhZHkgaW4gY2FjaGUNCgkJCSRjYWNoZUtleSA9ICIkdGFibGU6JGNvbHVtbjokdmFsdWUiOw0KDQoJCQlpZiAoaXNzZXQoJHRoaXMtPmd1aWRDYWNoZVskY2FjaGVLZXldKSkNCgkJCXsNCgkJCQlyZXR1cm4gJHRoaXMtPmd1aWRDYWNoZVskY2FjaGVLZXldOw0KCQkJfQ0KDQoJCQkvLyBSZXRyaWV2ZSBHVUlEIGZyb20gZGF0YWJhc2UNCgkJCSRndWlkID0gJHRoaXMtPmxvYWQtPnZhbHVlKFsnYS5ndWlkJyA9PiAnZ3VpZCddLCBbJ2EnID0+ICR0YWJsZV0sIFsiYS57JGNvbHVtbn0iID0+ICR2YWx1ZV0pOw0KDQoJCQlpZiAoISR0aGlzLT52YWxpZGF0ZUd1aWQoJGd1aWQpKQ0KCQkJew0KCQkJCS8vIENyZWF0ZSBhIG5ldyBHVUlEDQoJCQkJJHRoaXMtPnNldFRhYmxlKCR0YWJsZSk7DQoJCQkJJGd1aWQgPSAkdGhpcy0+Z2V0R3VpZCgnZ3VpZCcpOw0KCQkJCSR0aGlzLT51cGRhdGVWYWx1ZSgkdGFibGUsICdndWlkJywgJGd1aWQsICR2YWx1ZSk7DQoJCQl9DQoNCgkJCS8vIENhY2hlIHRoZSBHVUlEDQoJCQkkdGhpcy0+Z3VpZENhY2hlWyRjYWNoZUtleV0gPSAkZ3VpZDsNCg0KCQkJcmV0dXJuICRndWlkOw0KCQl9DQoNCgkJLy8gQ2hlY2sgaWYgdGhlIHZhbHVlIGlzIGFscmVhZHkgYSBHVUlEDQoJCWlmICgkdGhpcy0+dmFsaWRhdGVHdWlkKCR2YWx1ZSkpDQoJCXsNCgkJCXJldHVybiBudWxsOyAvLyBTa2lwLCBhbHJlYWR5IGEgR1VJRA0KCQl9DQoNCgkJLy8gY29udmVydCB0byB2aXNpYmxlIHJlc3VsdA0KCQkkdmFsdWVfcHJpbnRlZCA9IHZhcl9leHBvcnQoJHZhbHVlLCB0cnVlKTsNCg0KCQkvLyBSYWlzZSBhbiBleGNlcHRpb24gZm9yIGludmFsaWQgdmFsdWVzDQoJCXRocm93IG5ldyBcRXhjZXB0aW9uKCJJbnZhbGlkIHZhbHVlIGRldGVjdGVkOiAoeyR0YWJsZX06dGFibGUpLT4oeyRjb2x1bW59OmNvbHVtbiktPih7JHZhbHVlX3ByaW50ZWR9OnZhbHVlKS4gTXVzdCBiZSBlaXRoZXIgYW4gaW50ZWdlciBvciBhIHZhbGlkIEdVSUQuIik7DQoJfQ0KDQoJLyoqDQoJICogUHJvY2Vzc2VzIGFuIGpzb24tYXJyYXkgb2YgYmFzaWMgdmFsdWVzIGFuZCByZXBsYWNlcyB0aGVtIHdpdGggR1VJRHMuDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICR2YWx1ZXMJICBKU09OIHN0cmluZyBjb250YWluaW5nIHRoZSBJRHMuDQoJICogQHBhcmFtIHN0cmluZyAkbGlua2VkVGFibGUgVGhlIGxpbmtlZCB0YWJsZSBuYW1lLg0KCSAqIEBwYXJhbSBzdHJpbmcgJGxpbmtlZENvbHVtbiBUaGUgbGlua2VkIGNvbHVtbiBuYW1lLg0KCSAqIEBwYXJhbSBzdHJpbmcgJGhhc1VwZGF0ZSAgIFRoZSBzd2l0Y2ggdG8gbWFuYWdlIHVwZGF0ZXMuDQoJICoNCgkgKiBAcmV0dXJuIHN0cmluZyBKU09OIHN0cmluZyB3aXRoIHVwZGF0ZWQgR1VJRHMuDQoJICogQHNpbmNlIDUuMC40DQoJICovDQoJcHJpdmF0ZSBmdW5jdGlvbiBwcm9jZXNzSnNvbihzdHJpbmcgJHZhbHVlcywgc3RyaW5nICRsaW5rZWRUYWJsZSwgc3RyaW5nICRsaW5rZWRDb2x1bW4sIGJvb2wgJiRoYXNVcGRhdGUpOiBzdHJpbmcNCgl7DQoJCSRhcnJheSA9IGpzb25fZGVjb2RlKCR2YWx1ZXMsIHRydWUpOw0KCQkkYnVja2V0ID0gW107DQoJCWZvcmVhY2ggKCRhcnJheSBhcyAka2V5ID0+ICR2YWx1ZSkNCgkJew0KCQkJaWYgKCFlbXB0eSgkdmFsdWUpKQ0KCQkJew0KCQkJCSR2YWwgPSAkdGhpcy0+Z2V0SXRlbUd1aWQoJGxpbmtlZFRhYmxlLCAkbGlua2VkQ29sdW1uLCAkdmFsdWUpOw0KCQkJCWlmICgkdmFsICE9PSBudWxsKQ0KCQkJCXsNCgkJCQkJJGJ1Y2tldFska2V5XSA9ICR2YWw7DQoJCQkJCSRoYXNVcGRhdGUgPSB0cnVlOw0KCQkJCX0NCgkJCX0NCgkJfQ0KDQoJCXJldHVybiBqc29uX2VuY29kZSgkYnVja2V0KTsNCgl9DQoNCgkvKioNCgkgKiBQcm9jZXNzZXMgYW4gYXJyYXkgdmFsdWVzIGFuZCByZXBsYWNlcyB0aGVtIHdpdGggR1VJRHMuDQoJICoNCgkgKiBAcGFyYW0gYXJyYXkgICR2YWx1ZXMJICAgQXJyYXkgb2YgSURzIGZyb20gdGhlIHN1YmZvcm0gZmllbGQuDQoJICogQHBhcmFtIHN0cmluZyAkbGlua2VkVGFibGUgIFRoZSBsaW5rZWQgdGFibGUgbmFtZS4NCgkgKiBAcGFyYW0gc3RyaW5nICRsaW5rZWRDb2x1bW4gVGhlIGxpbmtlZCBjb2x1bW4gbmFtZS4NCgkgKiBAcGFyYW0gc3RyaW5nICRoYXNVcGRhdGUgICBUaGUgc3dpdGNoIHRvIG1hbmFnZSB1cGRhdGVzLg0KCSAqDQoJICogQHJldHVybiBhcnJheSBUaGUgdXBkYXRlZCBhcnJheSB3aXRoIEdVSURzLg0KCSAqIEBzaW5jZSA1LjAuNA0KCSAqLw0KCXByaXZhdGUgZnVuY3Rpb24gcHJvY2Vzc0FycmF5KGFycmF5ICR2YWx1ZXMsIHN0cmluZyAkbGlua2VkVGFibGUsIHN0cmluZyAkbGlua2VkQ29sdW1uLCBib29sICYkaGFzVXBkYXRlKTogYXJyYXkNCgl7DQoJCSRidWNrZXQgPSBbXTsNCgkJZm9yZWFjaCAoJHZhbHVlcyBhcyAka2V5ID0+ICR2YWx1ZSkNCgkJew0KCQkJaWYgKCFlbXB0eSgkdmFsdWUpKQ0KCQkJew0KCQkJCSR2YWwgPSAkdGhpcy0+Z2V0SXRlbUd1aWQoJGxpbmtlZFRhYmxlLCAkbGlua2VkQ29sdW1uLCAkdmFsdWUpOw0KCQkJCWlmICgkdmFsICE9PSBudWxsKQ0KCQkJCXsNCgkJCQkJJGJ1Y2tldFska2V5XSA9ICR2YWw7DQoJCQkJCSRoYXNVcGRhdGUgPSB0cnVlOw0KCQkJCX0NCgkJCX0NCgkJfQ0KDQoJCXJldHVybiAkYnVja2V0Ow0KCX0NCg0KCS8qKg0KCSAqIFVwZGF0ZXMgYSB2YWx1ZSBpbiB0aGUgZGF0YWJhc2UuDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICR0YWJsZSAgVGhlIHRhYmxlIG5hbWUuDQoJICogQHBhcmFtIHN0cmluZyAkY29sdW1uIFRoZSBjb2x1bW4gdG8gdXBkYXRlLg0KCSAqIEBwYXJhbSBzdHJpbmcgJHZhbHVlICBUaGUgdXBkYXRlZCB2YWx1ZS4NCgkgKiBAcGFyYW0gaW50CSRpZAkgVGhlIElEIG9mIHRoZSByb3cgdG8gdXBkYXRlLg0KCSAqDQoJICogQHJldHVybiBib29sDQoJICogQHNpbmNlIDUuMC40DQoJICovDQoJcHJpdmF0ZSBmdW5jdGlvbiB1cGRhdGVWYWx1ZShzdHJpbmcgJHRhYmxlLCBzdHJpbmcgJGNvbHVtbiwgc3RyaW5nICR2YWx1ZSwgaW50ICRpZCk6IGJvb2wNCgl7DQoJCXJldHVybiAkdGhpcy0+dXBkYXRlLT5yb3coWydpZCcgPT4gJGlkLCAkY29sdW1uID0+ICR2YWx1ZV0sICdpZCcsICR0YWJsZSk7DQoJfQ0KDQoJLyoqDQoJICogU2V0IHRoZSBjdXJyZW50IGFjdGl2ZSB0YWJsZQ0KCSAqDQoJICogQHBhcmFtIHN0cmluZyAkdGFibGUgVGhlIHRhYmxlIHRoYXQgc2hvdWxkIGJlIGFjdGl2ZQ0KCSAqDQoJICogQHJldHVybiB2b2lkDQoJICogQHNpbmNlICA1LjAuNA0KCSAqLw0KCXByaXZhdGUgZnVuY3Rpb24gc2V0VGFibGUoc3RyaW5nICR0YWJsZSk6IHZvaWQNCgl7DQoJCSR0aGlzLT50YWJsZSA9ICR0YWJsZTsNCgl9DQoNCgkvKioNCgkgKiBHZXQgdGhlIGN1cnJlbnQgYWN0aXZlIHRhYmxlDQoJICoNCgkgKiBAcmV0dXJuICBzdHJpbmcNCgkgKiBAc2luY2UgICA1LjAuNA0KCSAqLw0KCXByaXZhdGUgZnVuY3Rpb24gZ2V0VGFibGUoKTogc3RyaW5nDQoJew0KCQlyZXR1cm4gJHRoaXMtPnRhYmxlOw0KCX0=', '{}', '{}', '', 1, '2024-12-29 16:38:38', 25, '', 1), +(882, '2f14ec19-1b67-44be-8306-2a9e74588464', 'JCB.Item.Import', 'Import', 'final class', 'Item Import Class\r\n\r\n@since 5.0.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIwDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8=', '1.0.0', '', '', '', '', '{\"0\":\"0f3f7188-3e0d-4d1a-8dee-7f8026cb65a9\"}', '', '[[[NamespacePrefix]]]\\Joomla\\[[[ComponentNamespace]]].Item.Import', 1, '{}', '{}', 'dXNlIEpvb21sYVxDTVNcTGFuZ3VhZ2VcVGV4dDs=', '{\"use_selection0\":{\"use\":\"0e44d149-4863-47ec-8f0f-6a821ab3e77f\",\"as\":\"Status\"},\"use_selection1\":{\"use\":\"23ad6e72-1b82-40fb-836c-50da690bb174\",\"as\":\"Message\"},\"use_selection2\":{\"use\":\"250a7272-9ae1-4c63-a058-26bad9ad6f70\",\"as\":\"Mapper\"},\"use_selection3\":{\"use\":\"05f23281-58e3-482e-be42-2dc1355ef4ea\",\"as\":\"default\"},\"use_selection4\":{\"use\":\"c4169332-3914-400e-b861-972b2d465963\",\"as\":\"default\"},\"use_selection5\":{\"use\":\"36063502-2115-4c8d-b16a-0c76cc8c1ada\",\"as\":\"RowData\"},\"use_selection6\":{\"use\":\"3d3ec064-9867-41e6-a48a-964c15d753aa\",\"as\":\"Row\"},\"use_selection7\":{\"use\":\"cc923dc9-8f5c-46ea-810c-d93df2e5752b\",\"as\":\"default\"},\"use_selection8\":{\"use\":\"db00768d-c7a6-421d-8f39-577550ddf792\",\"as\":\"default\"},\"use_selection9\":{\"use\":\"57c00d53-5581-4fd1-b3ea-080422710243\",\"as\":\"Assessor\"},\"use_selection10\":{\"use\":\"05744dd3-4030-4cf8-8dda-a93ab809b473\",\"as\":\"Item\"}}', 'CS8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KCSAqIFRIRVNFIFZBTFVFUyBCRUxPVyBTSE9VTEQgQkUgVVBEQVRFIEZPUiBZT1VSIFVTRS1DQVNFDQoJICovDQoNCgkvKioNCgkgKiBUaGUgc3RhcnRpbmcgcm93Lg0KCSAqDQoJICogQHZhciAgIGludA0KCSAqIEBzaW5jZSA1LjAuMg0KCSAqLw0KCXByb3RlY3RlZCBpbnQgJHN0YXJ0aW5nUm93ID0gMjsNCg0KCS8qKg0KCSAqIFRoZSB0aGUgcGFyZW50IHRhYmxlIG9mIGVhY2ggcm93DQoJICoNCgkgKiBAdmFyICAgc3RyaW5nDQoJICogQHNpbmNlIDUuMC4yDQoJICovDQoJcHJvdGVjdGVkIHN0cmluZyAkcGFyZW50VGFibGUgPSAnbG9vayc7DQoNCgkvKioNCgkgKiBUaGUgdGhlIHBhcmVudCB0YWJsZSBrZXkgZmllbGQNCgkgKg0KCSAqIEB2YXIgICBzdHJpbmcNCgkgKiBAc2luY2UgNS4wLjINCgkgKi8NCglwcm90ZWN0ZWQgc3RyaW5nICRwYXJlbnRLZXkgPSAnZ3VpZCc7DQoNCgkvKioNCgkgKiBUaGUgdGhlIHBhcmVudCBqb2luIGtleSBmaWVsZCB0byBvdGhlciB0YWJsZXMNCgkgKg0KCSAqIEB2YXIgICBzdHJpbmcNCgkgKiBAc2luY2UgNS4wLjINCgkgKi8NCglwcm90ZWN0ZWQgc3RyaW5nICRwYXJlbnRKb2luS2V5ID0gJ2VudGl0eSc7DQoNCgkvKioNCgkgKiBUaGUgdGhlIHBhcmVudCB0YWJsZSBrZXkgZmllbGQgdG8gbGluayBhIHJvdyB0byBleGlzdGluZyBkYXRhDQoJICoNCgkgKiBAdmFyICAgc3RyaW5nDQoJICogQHNpbmNlIDUuMC4yDQoJICovDQoJcHJvdGVjdGVkIHN0cmluZyAkbGlua0ZpZWxkID0gJ2d1aWQnOw0KDQoJLyoqDQoJICogVGhlIHRoZSBpbXBvcnQgcXVldWUgdGFibGUNCgkgKg0KCSAqIEB2YXIgICBzdHJpbmcNCgkgKiBAc2luY2UgNS4wLjINCgkgKi8NCglwcm90ZWN0ZWQgc3RyaW5nICRpbXBvcnRUYWJsZSA9ICdpdGVtX2ltcG9ydCc7DQoNCgkvKioNCgkgKiBUSEVTRSBWQUxVRVMgQUJPVkUgU0hPVUxEIEJFIFVQREFURSBGT1IgWU9VUiBVU0UtQ0FTRQ0KCSAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KCS8qKg0KCSAqIFRoZSBJbXBvcnQgU3RhdHVzIENsYXNzLg0KCSAqDQoJICogQHZhciAgIFN0YXR1cw0KCSAqIEBzaW5jZSA1LjAuMg0KCSAqLw0KCXByb3RlY3RlZCBTdGF0dXMgJHN0YXR1czsNCg0KCS8qKg0KCSAqIFRoZSBJbXBvcnQgTWVzc2FnZSBDbGFzcy4NCgkgKg0KCSAqIEB2YXIgICBNZXNzYWdlDQoJICogQHNpbmNlIDUuMC4yDQoJICovDQoJcHJvdGVjdGVkIE1lc3NhZ2UgJG1lc3NhZ2U7DQoNCgkvKioNCgkgKiBUaGUgSW1wb3J0IE1hcHBlciBDbGFzcy4NCgkgKg0KCSAqIEB2YXIgICBNYXBwZXINCgkgKiBAc2luY2UgNS4wLjINCgkgKi8NCglwcm90ZWN0ZWQgTWFwcGVyICRtYXBwZXI7DQoNCgkvKioNCgkgKiBUaGUgRGF0YSBDbGFzcy4NCgkgKg0KCSAqIEB2YXIgICBEYXRhDQoJICogQHNpbmNlIDUuMC4yDQoJICovDQoJcHJvdGVjdGVkIERhdGEgJGRhdGE7DQoNCgkvKioNCgkgKiBUaGUgSW1wb3J0ZXIgQ2xhc3MuDQoJICoNCgkgKiBAdmFyICAgSW1wb3J0ZXINCgkgKiBAc2luY2UgNS4wLjINCgkgKi8NCglwcm90ZWN0ZWQgSW1wb3J0ZXIgJGltcG9ydGVyOw0KDQoJLyoqDQoJICogVGhlIFJvdyBEYXRhIEFycmF5IENsYXNzLg0KCSAqDQoJICogQHZhciAgIFJvd0RhdGENCgkgKiBAc2luY2UgNS4wLjINCgkgKi8NCglwcm90ZWN0ZWQgUm93RGF0YSAkcm93ZGF0YTsNCg0KCS8qKg0KCSAqIFRoZSBJbXBvcnQgUm93IENsYXNzLg0KCSAqDQoJICogQHZhciAgIFJvdw0KCSAqIEBzaW5jZSA1LjAuMg0KCSAqLw0KCXByb3RlY3RlZCBSb3cgJHJvdzsNCg0KCS8qKg0KCSAqIFRoZSBQYXJlbnQgVGFibGUgQ2xhc3MuDQoJICoNCgkgKiBAdmFyICAgUGFyZW50VGFibGUNCgkgKiBAc2luY2UgNS4wLjINCgkgKi8NCglwcm90ZWN0ZWQgUGFyZW50VGFibGUgJHBhcmVudFRhYmxlQ2xhc3M7DQoNCgkvKioNCgkgKiBUaGUgSm9pbiBUYWJsZXMgQ2xhc3MuDQoJICoNCgkgKiBAdmFyICAgSm9pblRhYmxlcw0KCSAqIEBzaW5jZSA1LjAuMg0KCSAqLw0KCXByb3RlY3RlZCBKb2luVGFibGVzICRqb2luVGFibGVzOw0KDQoJLyoqDQoJICogVGhlIEltcG9ydCBBc3Nlc3NvciBDbGFzcy4NCgkgKg0KCSAqIEB2YXIgICBBc3Nlc3Nvcg0KCSAqIEBzaW5jZSA1LjAuMg0KCSAqLw0KCXByb3RlY3RlZCBBc3Nlc3NvciAkYXNzZXNzb3I7DQoNCgkvKioNCgkgKiBUaGUgSXRlbSBDbGFzcy4NCgkgKg0KCSAqIEB2YXIgICBJdGVtDQoJICogQHNpbmNlIDUuMC4yDQoJICovDQoJcHJvdGVjdGVkIEl0ZW0gJGl0ZW07DQoNCgkvKioNCgkgKiBDb25zdHJ1Y3Rvci4NCgkgKg0KCSAqIEBwYXJhbSBTdGF0dXMgICAgICAgJHN0YXR1cyAgICAgICAgICAgIFRoZSBJbXBvcnQgU3RhdHVzIENsYXNzLg0KCSAqIEBwYXJhbSBNZXNzYWdlICAgICAgJG1lc3NhZ2UgICAgICAgICAgIFRoZSBJbXBvcnQgTWVzc2FnZSBDbGFzcy4NCgkgKiBAcGFyYW0gTWFwcGVyICAgICAgICRtYXBwZXIgICAgICAgICAgICBUaGUgSW1wb3J0IE1hcHBlciBDbGFzcy4NCgkgKiBAcGFyYW0gRGF0YSAgICAgICAgICRkYXRhICAgICAgICAgICAgICBUaGUgRGF0YSBDbGFzcy4NCgkgKiBAcGFyYW0gSW1wb3J0ZXIgICAgICRpbXBvcnRlciAgICAgICAgICBUaGUgSW1wb3J0ZXIgQ2xhc3MuDQoJICogQHBhcmFtIFJvd0RhdGEgICAgICAkcm93ZGF0YSAgICAgICAgICAgVGhlIFJvdyBEYXRhIEFycmF5IENsYXNzLg0KCSAqIEBwYXJhbSBSb3cgICAgICAgICAgJHJvdyAgICAgICAgICAgICAgIFRoZSBJbXBvcnQgUm93IENsYXNzLg0KCSAqIEBwYXJhbSBQYXJlbnRUYWJsZSAgJHBhcmVudFRhYmxlQ2xhc3MgIFRoZSBQYXJlbnQgQ2xhc3MuDQoJICogQHBhcmFtIEpvaW5UYWJsZXMgICAkam9pbiAgICAgICAgICAgICAgVGhlIEpvaW4gQ2xhc3MuDQoJICogQHBhcmFtIEFzc2Vzc29yICAgICAkYXNzZXNzb3IgICAgICAgICAgVGhlIEltcG9ydCBBc3Nlc3NvciBDbGFzcy4NCgkgKiBAcGFyYW0gSXRlbSAgICAgICAgICRpdGVtICAgICAgICAgICAgICBUaGUgSXRlbSBDbGFzcy4NCgkgKg0KCSAqIEBzaW5jZSA1LjAuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdChTdGF0dXMgJHN0YXR1cywgTWVzc2FnZSAkbWVzc2FnZSwgTWFwcGVyICRtYXBwZXIsDQoJCURhdGEgJGRhdGEsIEltcG9ydGVyICRpbXBvcnRlciwgUm93RGF0YSAkcm93ZGF0YSwNCgkJUm93ICRyb3csIFBhcmVudFRhYmxlICRwYXJlbnRUYWJsZUNsYXNzLCBKb2luVGFibGVzICRqb2luVGFibGVzLA0KCQlBc3Nlc3NvciAkYXNzZXNzb3IsIEl0ZW0gJGl0ZW0pDQoJew0KCQkkdGhpcy0+c3RhdHVzID0gJHN0YXR1czsNCgkJJHRoaXMtPm1lc3NhZ2UgPSAkbWVzc2FnZTsNCgkJJHRoaXMtPm1hcHBlciA9ICRtYXBwZXI7DQoJCSR0aGlzLT5kYXRhID0gJGRhdGE7DQoJCSR0aGlzLT5pbXBvcnRlciA9ICRpbXBvcnRlcjsNCgkJJHRoaXMtPnJvd2RhdGEgPSAkcm93ZGF0YTsNCgkJJHRoaXMtPnJvdyA9ICRyb3c7DQoJCSR0aGlzLT5wYXJlbnRUYWJsZUNsYXNzID0gJHBhcmVudFRhYmxlQ2xhc3M7DQoJCSR0aGlzLT5qb2luVGFibGVzID0gJGpvaW5UYWJsZXM7DQoJCSR0aGlzLT5hc3Nlc3NvciA9ICRhc3Nlc3NvcjsNCgkJJHRoaXMtPml0ZW0gPSAkaXRlbTsNCg0KCQkvLyBsb2FkIHRoZSBzdGF0dXMgdGFyZ2V0IHRhYmxlIGFuZCBmaWVsZA0KCQkkdGhpcy0+c3RhdHVzLT50YWJsZSgkdGhpcy0+aW1wb3J0VGFibGUpLT5maWVsZCgnaW1wb3J0X3N0YXR1cycpOw0KCX0NCg0KCS8qKg0KCSAqIFRoZSB0cmlnZ2VyIGZ1bmN0aW9uIGNhbGxlZCBmcm9tIHRoZSBDTEkgdG8gc3RhcnQgdGhlIGl0ZW0gaW1wb3J0IG9uIGEgc3ByZWFkc2hlZXQNCgkgKg0KCSAqIEBwYXJhbSAgb2JqZWN0ICAkaW1wb3J0ICBUaGUgc3ByZWFkc2hlZXQgZGF0YSB0byBpbXBvcnQuDQoJICoNCgkgKiBAcmV0dXJuICB2b2lkDQoJICogQHNpbmNlICA1LjAuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBkYXRhKG9iamVjdCAkaW1wb3J0KTogdm9pZA0KCXsNCgkJLy8gbW92ZSBzcHJlYWRzaGVldCBpbnRvIDI9cHJvY2Vzc2luZw0KCQkkdGhpcy0+c3RhdHVzLT5zZXQoMiwgJGltcG9ydC0+Z3VpZCk7DQoNCgkJLy8gbG9hZCBtZXNzYWdlDQoJCSR0aGlzLT5tZXNzYWdlLT5sb2FkKCRpbXBvcnQtPmd1aWQsICR0aGlzLT5pbXBvcnRUYWJsZSwgJ21lc3NhZ2VfbG9nJyk7DQoNCgkJaWYgKGVtcHR5KCRpbXBvcnQtPmZpbGUpIHx8ICgkZmlsZSA9ICR0aGlzLT5nZXRGaWxlKCRpbXBvcnQtPmZpbGUpKSA9PT0gbnVsbCkNCgkJew0KCQkJJHRoaXMtPnByZW1hdHVyZUVycm9yKCRpbXBvcnQtPmd1aWQsIFRleHQ6Ol8oJ0ZpbGUgZGF0YSBjb3VsZCBub3QgYmUgZm91bmQuJykpOw0KCQkJcmV0dXJuOw0KCQl9DQoNCgkJLy8gY2hlY2sgZmlsZSBwYXRoDQoJCWlmICghaXNfZmlsZSgkZmlsZS0+ZmlsZV9wYXRoKSkNCgkJew0KCQkJJHRoaXMtPnByZW1hdHVyZUVycm9yKCRpbXBvcnQtPmd1aWQsIFRleHQ6OnNwcmludGYoJ0ZpbGUgbm90IGZvdW5kOiAlcycsICRmaWxlLT5maWxlX3BhdGgpKTsNCgkJCXJldHVybjsNCgkJfQ0KDQoJCSR0aGlzLT5tYXBwZXItPnNldCgkaW1wb3J0LT5tYXBzLCAkdGhpcy0+cGFyZW50VGFibGUpOw0KCQl1bnNldCgkaW1wb3J0LT5tYXBzKTsNCg0KCQkkdGhpcy0+ZGF0YS0+c2V0KCdpbXBvcnQnLCAoYXJyYXkpICRpbXBvcnQpOw0KDQoJCSRyb3dDb3VudGVyID0gMDsNCgkJJHN1Y2Nlc3NDb3VudGVyID0gMDsNCgkJJGVycm9yQ291bnRlciA9IDA7DQoNCgkJdHJ5DQoJCXsNCgkJCWZvcmVhY2ggKCR0aGlzLT5pbXBvcnRlci0+cmVhZCgkZmlsZS0+ZmlsZV9wYXRoLCAkdGhpcy0+c3RhcnRpbmdSb3csIDEwMCwgJHRoaXMtPnJvd2RhdGEpIGFzICRyb3cpDQoJCQl7DQoJCQkJLy8gaWdub3JlIGVtcHR5IHJvd3MNCgkJCQlpZiAoJHJvdyA9PT0gbnVsbCB8fCBlbXB0eSgkcm93Wyd2YWx1ZXMnXSkgfHwgY291bnQoKGFycmF5KSAkcm93Wyd2YWx1ZXMnXSkgPD0gMyB8fCBlbXB0eSgkcm93WydpbmRleCddKSkNCgkJCQl7DQoJCQkJCWNvbnRpbnVlOw0KCQkJCX0NCg0KCQkJCSR0aGlzLT5yb3ctPnNldCgkcm93WydpbmRleCddLCAkcm93Wyd2YWx1ZXMnXSk7DQoNCgkJCQkkcm93Q291bnRlcisrOw0KCQkJCWlmICgoJGd1aWQgPSAkdGhpcy0+aW1wb3J0KCkpICE9PSBudWxsKQ0KCQkJCXsNCgkJCQkJLy8gVE9ETzogd2UgY2FuIGFkZCBleHRyYSBjb2RlIGhlcmUgZm9yIG1vcmUgYWRhcHRhdGlvbi9jYWxjdWxhdGlvbiBvZiBpbXBvcnQgZGF0YQ0KCQkJCQkkc3VjY2Vzc0NvdW50ZXIrKzsNCgkJCQl9DQoJCQkJZWxzZQ0KCQkJCXsNCgkJCQkJJGVycm9yQ291bnRlcisrOw0KCQkJCX0NCg0KCQkJCSR0aGlzLT5yb3ctPmNsZWFyKCk7DQoJCQl9DQoNCgkJCS8vIENoZWNrIHRoZSBzdWNjZXNzIHJhdGUgYWZ0ZXIgcHJvY2Vzc2luZyBhbGwgcm93cw0KCQkJJHRoaXMtPmFzc2Vzc29yLT5ldmFsdWF0ZSgkcm93Q291bnRlciwgJHN1Y2Nlc3NDb3VudGVyLCAkZXJyb3JDb3VudGVyKTsNCgkJfQ0KCQljYXRjaCAoXEludmFsaWRBcmd1bWVudEV4Y2VwdGlvbiAkZSkNCgkJew0KCQkJLy8gSGFuZGxlIGludmFsaWQgYXJndW1lbnQgZXhjZXB0aW9uIChlLmcuLCBmaWxlIG5vdCBmb3VuZCkNCgkJCSR0aGlzLT5tZXNzYWdlLT5hZGRFcnJvcihUZXh0OjpzcHJpbnRmKCdFcnJvcjogSW52YWxpZCBhcmd1bWVudCAtICVzJywgJGUtPmdldE1lc3NhZ2UoKSkpOw0KCQl9DQoJCWNhdGNoIChcT3V0T2ZSYW5nZUV4Y2VwdGlvbiAkZSkNCgkJew0KCQkJLy8gSGFuZGxlIG91dCBvZiByYW5nZSBleGNlcHRpb24gKGUuZy4sIHN0YXJ0IHJvdyBiZXlvbmQgaGlnaGVzdCByb3cpDQoJCQkkdGhpcy0+bWVzc2FnZS0+YWRkRXJyb3IoVGV4dDo6c3ByaW50ZignRXJyb3I6IE91dCBvZiByYW5nZSAtICVzJywgJGUtPmdldE1lc3NhZ2UoKSkpOw0KCQl9DQoJCWNhdGNoIChcRXhjZXB0aW9uICRlKQ0KCQl7DQoJCQkvLyBDYXRjaCBhbnkgb3RoZXIgZ2VuZXJhbCBleGNlcHRpb25zDQoJCQkkdGhpcy0+bWVzc2FnZS0+YWRkRXJyb3IoJGUtPmdldE1lc3NhZ2UoKSk7DQoJCX0NCgl9DQoNCgkvKioNCgkgKiBUaGUgbWVzc2FnZSBvZiB0aGUgbGFzdCBpbXBvcnQgZXZlbnQNCgkgKg0KCSAqIEByZXR1cm4gIG9iamVjdA0KCSAqIEBzaW5jZSAgNS4wLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gbWVzc2FnZSgpOiBvYmplY3QNCgl7DQoJCSRtZXNzYWdlcyA9ICR0aGlzLT5tZXNzYWdlLT5hcmNoaXZlKCktPnNldCgpLT5nZXQoKTsNCgkJJHRoaXMtPm1lc3NhZ2UtPnJlc2V0KCk7DQoJCXJldHVybiAkbWVzc2FnZXM7DQoJfQ0KDQoJLyoqDQoJICogVGhpcyBpcyB0cmlnZ2VyIG9uIHByZW1hdHVyZSBlcnJvcg0KCSAqDQoJICogQHBhcmFtIHN0cmluZyAgICRndWlkICAgICBUaGUgaW1wb3J0IGd1aWQuDQoJICogQHBhcmFtIHN0cmluZyAgICRtZXNzYWdlICBUaGUgZXJyb3IgbWVzc2FnZS4NCgkgKg0KCSAqIEByZXR1cm4gIHZvaWQNCgkgKiBAc2luY2UgIDUuMC4yDQoJICovDQoJcHJpdmF0ZSBmdW5jdGlvbiBwcmVtYXR1cmVFcnJvcihzdHJpbmcgJGd1aWQsIHN0cmluZyAkbWVzc2FnZSk6IHZvaWQNCgl7DQoJCSR0aGlzLT5zdGF0dXMtPnNldCg0LCAkZ3VpZCk7DQoJCSR0aGlzLT5tZXNzYWdlLT5hZGRFcnJvcigkbWVzc2FnZSk7DQoJfQ0KDQoJLyoqDQoJICogU2F2ZSB0aGUgaXRlbSBjYWxjdWxhdGVkIHZhbHVlcw0KCSAqDQoJICogQHJldHVybiAgc3RyaW5nfG51bGwNCgkgKiBAc2luY2UgIDUuMC4yDQoJICovDQoJcHJpdmF0ZSBmdW5jdGlvbiBpbXBvcnQoKTogP3N0cmluZw0KCXsNCgkJdHJ5IHsNCgkJCSRwYXJlbnRfZ3VpZCA9ICR0aGlzLT5wYXJlbnRUYWJsZUNsYXNzLT5zZXQoJHRoaXMtPmxpbmtGaWVsZCwgJHRoaXMtPnBhcmVudEtleSwgJHRoaXMtPnBhcmVudFRhYmxlKTsNCg0KCQkJaWYgKCRwYXJlbnRfZ3VpZCA9PT0gbnVsbCkNCgkJCXsNCgkJCQlyZXR1cm4gbnVsbDsNCgkJCX0NCg0KCQkJJHRoaXMtPmpvaW5UYWJsZXMtPnNldCgkdGhpcy0+cGFyZW50Sm9pbktleSwgJHBhcmVudF9ndWlkKTsNCg0KCQkJcmV0dXJuICRwYXJlbnRfZ3VpZDsNCg0KCQl9DQoJCWNhdGNoIChcRXhjZXB0aW9uICRlKQ0KCQl7DQoJCQkkdGhpcy0+bWVzc2FnZS0+YWRkRXJyb3IoJGUtPmdldE1lc3NhZ2UoKSk7DQoJCQlyZXR1cm4gbnVsbDsNCgkJfQ0KCX0NCg0KCS8qKg0KCSAqIEdldCB0aGUgZmlsZSBkZXRhaWxzDQoJICoNCgkgKiBAcGFyYW0gc3RyaW5nICAgJGZpbGUgICAgVGhlIGZpbGUgZ3VpZC4NCgkgKg0KCSAqIEByZXR1cm4gIG9iamVjdHxudWxsDQoJICogQHNpbmNlICA1LjAuMg0KCSAqLw0KCXByaXZhdGUgZnVuY3Rpb24gZ2V0RmlsZShzdHJpbmcgJGZpbGUpOiA/b2JqZWN0DQoJew0KCQlyZXR1cm4gJHRoaXMtPml0ZW0tPnRhYmxlKCdmaWxlJyktPmdldCgkZmlsZSk7DQoJfQ==', '{}', '{}', '', 1, '2020-02-17 11:32:07', 14, '', 1), +(883, 'cc923dc9-8f5c-46ea-810c-d93df2e5752b', 'JCB.Item.Import.ParentTable', 'ParentTable', 'final class', 'Item Import Parent Table Class\r\n\r\n@since 5.0.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIwDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8=', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\[[[ComponentNamespace]]].Item.Import.ParentTable', 1, '{}', '{}', 'dXNlIEpvb21sYVxDTVNcTGFuZ3VhZ2VcVGV4dDs=', '{\"use_selection0\":{\"use\":\"3d3ec064-9867-41e6-a48a-964c15d753aa\",\"as\":\"Row\"},\"use_selection1\":{\"use\":\"53f55e5b-63cb-49e7-b1e6-33e7a9f97856\",\"as\":\"ImportItem\"},\"use_selection2\":{\"use\":\"250a7272-9ae1-4c63-a058-26bad9ad6f70\",\"as\":\"Mapper\"},\"use_selection3\":{\"use\":\"23ad6e72-1b82-40fb-836c-50da690bb174\",\"as\":\"Message\"},\"use_selection4\":{\"use\":\"05f23281-58e3-482e-be42-2dc1355ef4ea\",\"as\":\"default\"},\"use_selection5\":{\"use\":\"9206082e-a3f7-472e-98b2-de90d06cbdcd\",\"as\":\"default\"},\"use_selection6\":{\"use\":\"06f8eada-d59b-441c-b287-0aea1793da5a\",\"as\":\"default\"},\"use_selection7\":{\"use\":\"9c513baf-b279-43fd-ae29-a585c8cbc4f0\",\"as\":\"default\"}}', 'CS8qKg0KCSAqIFRoZSBJbXBvcnQgUm93IENsYXNzLg0KCSAqDQoJICogQHZhciAgIFJvdw0KCSAqIEBzaW5jZSA1LjAuMg0KCSAqLw0KCXByb3RlY3RlZCBSb3cgJHJvdzsNCg0KCS8qKg0KCSAqIFRoZSBJbXBvcnQgSXRlbSBDbGFzcy4NCgkgKg0KCSAqIEB2YXIgICBJbXBvcnRJdGVtDQoJICogQHNpbmNlIDUuMC4yDQoJICovDQoJcHJvdGVjdGVkIEltcG9ydEl0ZW0gJGltcG9ydGl0ZW07DQoNCgkvKioNCgkgKiBUaGUgSW1wb3J0IE1hcHBlciBDbGFzcy4NCgkgKg0KCSAqIEB2YXIgICBNYXBwZXINCgkgKiBAc2luY2UgNS4wLjINCgkgKi8NCglwcm90ZWN0ZWQgTWFwcGVyICRtYXBwZXI7DQoNCgkvKioNCgkgKiBUaGUgSW1wb3J0IE1lc3NhZ2UgQ2xhc3MuDQoJICoNCgkgKiBAdmFyICAgTWVzc2FnZQ0KCSAqIEBzaW5jZSA1LjAuMg0KCSAqLw0KCXByb3RlY3RlZCBNZXNzYWdlICRtZXNzYWdlOw0KDQoJLyoqDQoJICogVGhlIERhdGEgQ2xhc3MuDQoJICoNCgkgKiBAdmFyICAgRGF0YQ0KCSAqIEBzaW5jZSA1LjAuMg0KCSAqLw0KCXByb3RlY3RlZCBEYXRhICRkYXRhOw0KDQoJLyoqDQoJICogVGhlIEl0ZW0gQ2xhc3MuDQoJICoNCgkgKiBAdmFyICAgSXRlbQ0KCSAqIEBzaW5jZSA1LjAuMg0KCSAqLw0KCXByb3RlY3RlZCBJdGVtICRpdGVtOw0KDQoJLyoqDQoJICogVGhlIExvYWQgQ2xhc3MuDQoJICoNCgkgKiBAdmFyICAgTG9hZA0KCSAqIEBzaW5jZSA1LjAuMg0KCSAqLw0KCXByb3RlY3RlZCBMb2FkICRsb2FkOw0KDQoJLyoqDQoJICogVGhlIHRoZSBwYXJlbnQgdGFibGUgb2YgZWFjaCByb3cNCgkgKg0KCSAqIEB2YXIgICBzdHJpbmcNCgkgKiBAc2luY2UgNS4wLjINCgkgKi8NCglwcm90ZWN0ZWQgc3RyaW5nICR0YWJsZTsNCg0KCS8qKg0KCSAqIFRoZSB0aGUgcGFyZW50IHRhYmxlIGtleSBmaWVsZA0KCSAqDQoJICogQHZhciAgIHN0cmluZw0KCSAqIEBzaW5jZSA1LjAuMg0KCSAqLw0KCXByb3RlY3RlZCBzdHJpbmcgJGtleTsNCg0KCS8qKg0KCSAqIFRoZSB0aGUgcGFyZW50IHRhYmxlIGxpbmtlciBmaWVsZA0KCSAqDQoJICogQHZhciAgIHN0cmluZw0KCSAqIEBzaW5jZSA1LjAuMg0KCSAqLw0KCXByb3RlY3RlZCBzdHJpbmcgJGxpbms7DQoNCgkvKioNCgkgKiBDb25zdHJ1Y3Rvci4NCgkgKg0KCSAqIEBwYXJhbSBSb3cgICAgICAgICAgJHJvdyAgICAgICAgICBUaGUgSW1wb3J0IFJvdyBDbGFzcy4NCgkgKiBAcGFyYW0gSW1wb3J0SXRlbSAgICRpbXBvcnRpdGVtICAgVGhlIEltcG9ydCBJdGVtIENsYXNzLg0KCSAqIEBwYXJhbSBNYXBwZXIgICAgICAgJG1hcHBlciAgICAgICBUaGUgSW1wb3J0IE1hcHBlciBDbGFzcy4NCgkgKiBAcGFyYW0gTWVzc2FnZSAgICAgICRtZXNzYWdlICAgICAgVGhlIEltcG9ydCBNZXNzYWdlIENsYXNzLg0KCSAqIEBwYXJhbSBEYXRhICAgICAgICAgJGRhdGEgICAgICAgICBUaGUgRGF0YSBDbGFzcy4NCgkgKiBAcGFyYW0gSXRlbSAgICAgICAgICRpdGVtICAgICAgICAgVGhlIEl0ZW0gQ2xhc3MuDQoJICogQHBhcmFtIExvYWQgICAgICAgICAkbG9hZCAgICAgICAgIFRoZSBMb2FkIENsYXNzLg0KCSAqDQoJICogQHNpbmNlIDUuMC4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KFJvdyAkcm93LCBJbXBvcnRJdGVtICRpbXBvcnRpdGVtLCBNYXBwZXIgJG1hcHBlciwNCgkJTWVzc2FnZSAkbWVzc2FnZSwgRGF0YSAkZGF0YSwgSXRlbSAkaXRlbSwgTG9hZCAkbG9hZCkNCgl7DQoJCSR0aGlzLT5yb3cgPSAkcm93Ow0KCQkkdGhpcy0+aW1wb3J0aXRlbSA9ICRpbXBvcnRpdGVtOw0KCQkkdGhpcy0+bWFwcGVyID0gJG1hcHBlcjsNCgkJJHRoaXMtPm1lc3NhZ2UgPSAkbWVzc2FnZTsNCgkJJHRoaXMtPmRhdGEgPSAkZGF0YTsNCgkJJHRoaXMtPml0ZW0gPSAkaXRlbTsNCgkJJHRoaXMtPmxvYWQgPSAkbG9hZDsNCgl9DQoNCgkvKioNCgkgKiBTZXQgdGhlIHBhcmVudCBkYXRhDQoJICoNCgkgKiBAcGFyYW0gICBzdHJpbmcgICRsaW5rS2V5ICAgICAgVGhlIHBhcmVudCBsaW5rZXIga2V5IGZpZWxkLg0KCSAqIEBwYXJhbSAgIHN0cmluZyAgJHBhcmVudEtleSAgICBUaGUgcGFyZW50IGtleSBmaWVsZC4NCgkgKiBAcGFyYW0gICBzdHJpbmcgICRwYXJlbnRUYWJsZSAgVGhlIHBhcmVudCB0YWJsZS4NCgkgKg0KCSAqIEByZXR1cm4gIHN0cmluZyAgVGhlIHBhcmVudCBndWlkDQoJICogQHNpbmNlICA1LjAuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBzZXQoc3RyaW5nICRsaW5rS2V5LCBzdHJpbmcgJHBhcmVudEtleSwgc3RyaW5nICRwYXJlbnRUYWJsZSk6ID9zdHJpbmcNCgl7DQoJCSR0aGlzLT5saW5rID0gJGxpbmtLZXk7DQoJCSR0aGlzLT5rZXkgPSAkcGFyZW50S2V5Ow0KCQkkdGhpcy0+dGFibGUgPSAkcGFyZW50VGFibGU7DQoNCgkJJHBhcmVudCA9ICR0aGlzLT5nZXRQYXJlbnQoKTsNCg0KCQlpZiAoISR0aGlzLT52YWxpZGF0ZVBhcmVudCgkcGFyZW50KSkNCgkJew0KCQkJcmV0dXJuIG51bGw7DQoJCX0NCg0KCQkkcGFyZW50X2d1aWQgPSAkdGhpcy0+cHJvY2Vzc1BhcmVudCgkcGFyZW50KTsNCg0KCQlpZiAoISR0aGlzLT52YWxpZGF0ZVBhcmVudEd1aWQoJHBhcmVudF9ndWlkKSkNCgkJew0KCQkJcmV0dXJuIG51bGw7DQoJCX0NCg0KCQlyZXR1cm4gJHBhcmVudF9ndWlkOw0KCX0NCg0KCS8qKg0KCSAqIFJldHJpZXZlIHBhcmVudCBpdGVtLg0KCSAqDQoJICogQHJldHVybiAgYXJyYXl8bnVsbA0KCSAqIEBzaW5jZSAgNS4wLjINCgkgKi8NCglwcml2YXRlIGZ1bmN0aW9uIGdldFBhcmVudCgpOiA/YXJyYXkNCgl7DQoJCXJldHVybiAkdGhpcy0+aW1wb3J0aXRlbS0+Z2V0KCR0aGlzLT50YWJsZSwgJHRoaXMtPm1hcHBlci0+Z2V0UGFyZW50KCkpOw0KCX0NCg0KCS8qKg0KCSAqIFZhbGlkYXRlIHRoZSBwYXJlbnQgaXRlbS4NCgkgKg0KCSAqIEBwYXJhbSAgIGFycmF5fG51bGwgICRwYXJlbnQgIFRoZSBwYXJlbnQgaXRlbS4NCgkgKg0KCSAqIEByZXR1cm4gIGJvb2wNCgkgKiBAc2luY2UgIDUuMC4yDQoJICovDQoJcHJpdmF0ZSBmdW5jdGlvbiB2YWxpZGF0ZVBhcmVudCg/YXJyYXkgJHBhcmVudCk6IGJvb2wNCgl7DQoJCWlmIChlbXB0eSgkcGFyZW50KSB8fCBlbXB0eSgkcGFyZW50WyR0aGlzLT5saW5rXSkpDQoJCXsNCgkJCSR0aGlzLT5tZXNzYWdlLT5hZGRFcnJvcihUZXh0OjpzcHJpbnRmKCdSb3cgJXMgbWlzc2luZyB0aGUga2V5IGZpZWxkOiAlcycsICR0aGlzLT5yb3ctPmdldEluZGV4KCksICR0aGlzLT50YWJsZSAuICc6JyAuICR0aGlzLT5saW5rKSk7DQoJCQlyZXR1cm4gZmFsc2U7DQoJCX0NCgkJcmV0dXJuIHRydWU7DQoJfQ0KDQoJLyoqDQoJICogUHJvY2VzcyBwYXJlbnQgZGF0YSwgcGVyZm9ybWluZyBpbnNlcnQgb3IgdXBkYXRlIGFzIG5lZWRlZC4NCgkgKg0KCSAqIEBwYXJhbSAgIGFycmF5ICAkcGFyZW50ICBUaGUgcGFyZW50IGl0ZW0uDQoJICoNCgkgKiBAcmV0dXJuICBzdHJpbmd8bnVsbA0KCSAqIEBzaW5jZSAgNS4wLjINCgkgKi8NCglwcml2YXRlIGZ1bmN0aW9uIHByb2Nlc3NQYXJlbnQoYXJyYXkgJiRwYXJlbnQpOiA/c3RyaW5nDQoJew0KCQkkcGFyZW50X3doZXJlID0gWw0KCQkJJ2EuJyAuICR0aGlzLT5saW5rID0+ICRwYXJlbnRbJHRoaXMtPmxpbmtdDQoJCV07DQoJCSRwYXJlbnRfdGFibGVzID0gWw0KCQkJJ2EnID0+ICR0aGlzLT50YWJsZQ0KCQldOw0KCQkkcGFyZW50X3NlbGVjdCA9IFsnYS5ndWlkJyA9PiAnZ3VpZCddOw0KDQoJCWlmICgoJHBhcmVudF9ndWlkID0gJHRoaXMtPmxvYWQtPnZhbHVlKCRwYXJlbnRfc2VsZWN0LCAkcGFyZW50X3RhYmxlcywgJHBhcmVudF93aGVyZSkpICE9PSBudWxsKQ0KCQl7DQoJCQkvLyBVcGRhdGUgZXhpc3RpbmcNCgkJCSRwYXJlbnRbJ2d1aWQnXSA9ICRwYXJlbnRfZ3VpZDsNCgkJCSRwYXJlbnRbJ21vZGlmaWVkX2J5J10gPz89ICR0aGlzLT5kYXRhLT5nZXQoJ2ltcG9ydC5jcmVhdGVkX2J5JywgMCk7IC8vIG11c3QgYmUgY3JlYXRlZCBieSA6KQ0KCQkJJHRoaXMtPml0ZW0tPnRhYmxlKCR0aGlzLT50YWJsZSktPnNldCgob2JqZWN0KSAkcGFyZW50LCAnZ3VpZCcsICd1cGRhdGUnKTsNCgkJfQ0KCQllbHNlDQoJCXsNCgkJCS8vIEluc2VydCBuZXcNCgkJCSRwYXJlbnRbJ2d1aWQnXSA/Pz0gR3VpZEhlbHBlcjo6Z2V0KCk7DQoJCQkkcGFyZW50WydhY2Nlc3MnXSA/Pz0gMTsNCgkJCSRwYXJlbnRbJ2NyZWF0ZWRfYnknXSA/Pz0gJHRoaXMtPmRhdGEtPmdldCgnaW1wb3J0LmNyZWF0ZWRfYnknLCAwKTsNCgkJCSR0aGlzLT5pdGVtLT50YWJsZSgkdGhpcy0+dGFibGUpLT5zZXQoKG9iamVjdCkkcGFyZW50LCAnZ3VpZCcpOw0KDQoJCQkkcGFyZW50X2d1aWQgPSAkcGFyZW50WydndWlkJ107DQoJCX0NCg0KCQlyZXR1cm4gJHBhcmVudF9ndWlkOw0KCX0NCg0KCS8qKg0KCSAqIFZhbGlkYXRlIHRoZSByZXRyaWV2ZWQgcGFyZW50IGd1aWQuDQoJICoNCgkgKiBAcGFyYW0gICBzdHJpbmd8bnVsbCAgJGd1aWQgIFRoZSBwYXJlbnQgZ3VpZC4NCgkgKg0KCSAqIEByZXR1cm4gIGJvb2wNCgkgKiBAc2luY2UgIDUuMC4yDQoJICovDQoJcHJpdmF0ZSBmdW5jdGlvbiB2YWxpZGF0ZVBhcmVudEd1aWQoP3N0cmluZyAkZ3VpZCk6IGJvb2wNCgl7DQoJCWlmICghR3VpZEhlbHBlcjo6dmFsaWQoJGd1aWQpKQ0KCQl7DQoJCQkkdGhpcy0+bWVzc2FnZS0+YWRkRXJyb3IoDQoJCQkJVGV4dDo6c3ByaW50ZignUm93ICVzIHdhcyB1bmFibGUgdG8gcmV0cmlldmUgYSB2YWxpZCBwYXJlbnQgWyVzXSB2YWx1ZS4nLCAkdGhpcy0+cm93LT5nZXRJbmRleCgpLCAkdGhpcy0+dGFibGUgLiAnOicgLiAkdGhpcy0+a2V5KQ0KCQkJKTsNCgkJCXJldHVybiBmYWxzZTsNCgkJfQ0KCQlyZXR1cm4gdHJ1ZTsNCgl9', '{}', '{}', '', 1, '2020-02-17 12:04:40', 4, '', 1), +(884, 'db00768d-c7a6-421d-8f39-577550ddf792', 'JCB.Item.Import.JoinTables', 'JoinTables', 'final class', 'Item Import Join Tables Class\r\n\r\n@since 5.0.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIwDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8=', '1.0.0', '', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\[[[ComponentNamespace]]].Item.Import.JoinTables', '', '{}', '{}', '', '{\"use_selection0\":{\"use\":\"250a7272-9ae1-4c63-a058-26bad9ad6f70\",\"as\":\"Mapper\"},\"use_selection1\":{\"use\":\"53f55e5b-63cb-49e7-b1e6-33e7a9f97856\",\"as\":\"ImportItem\"},\"use_selection2\":{\"use\":\"05f23281-58e3-482e-be42-2dc1355ef4ea\",\"as\":\"default\"},\"use_selection3\":{\"use\":\"9206082e-a3f7-472e-98b2-de90d06cbdcd\",\"as\":\"default\"},\"use_selection4\":{\"use\":\"06f8eada-d59b-441c-b287-0aea1793da5a\",\"as\":\"default\"},\"use_selection5\":{\"use\":\"9c513baf-b279-43fd-ae29-a585c8cbc4f0\",\"as\":\"default\"}}', 'CS8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KCSAqIFRIRVNFIFZBTFVFUyBCRUxPVyBTSE9VTEQgQkUgVVBEQVRFIEZPUiBZT1VSIFVTRS1DQVNFDQoJICovDQoNCgkvKioNCgkgKiBUaGUgY3VycmVudCBqb2luIHRhYmxlcyBrZXkgZmllbGRzIG1hcC4NCgkgKg0KCSAqIEB2YXIgICBhcnJheQ0KCSAqIEBzaW5jZSA1LjAuMg0KCSAqLw0KCXByb3RlY3RlZCBhcnJheSAka2V5RmllbGRzID0gWw0KCQknZGV0YWlsJyA9PiBbJ2xpbmtfZmllbGRzJyA9PiBbJ2VudGl0eSddXQ0KCV07DQoNCgkvKioNCgkgKiBUSEVTRSBWQUxVRVMgQUJPVkUgU0hPVUxEIEJFIFVQREFURSBGT1IgWU9VUiBVU0UtQ0FTRQ0KCSAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KCS8qKg0KCSAqIFRoZSBJbXBvcnQgTWFwcGVyIENsYXNzLg0KCSAqDQoJICogQHZhciAgIE1hcHBlcg0KCSAqIEBzaW5jZSA1LjAuMg0KCSAqLw0KCXByb3RlY3RlZCBNYXBwZXIgJG1hcHBlcjsNCg0KCS8qKg0KCSAqIFRoZSBJbXBvcnQgSXRlbSBDbGFzcy4NCgkgKg0KCSAqIEB2YXIgICBJbXBvcnRJdGVtDQoJICogQHNpbmNlIDUuMC4yDQoJICovDQoJcHJvdGVjdGVkIEltcG9ydEl0ZW0gJGltcG9ydGl0ZW07DQoNCgkvKioNCgkgKiBUaGUgRGF0YSBDbGFzcy4NCgkgKg0KCSAqIEB2YXIgICBEYXRhDQoJICogQHNpbmNlIDUuMC4yDQoJICovDQoJcHJvdGVjdGVkIERhdGEgJGRhdGE7DQoNCgkvKioNCgkgKiBUaGUgSXRlbSBDbGFzcy4NCgkgKg0KCSAqIEB2YXIgICBJdGVtDQoJICogQHNpbmNlIDUuMC4yDQoJICovDQoJcHJvdGVjdGVkIEl0ZW0gJGl0ZW07DQoNCgkvKioNCgkgKiBUaGUgTG9hZCBDbGFzcy4NCgkgKg0KCSAqIEB2YXIgICBMb2FkDQoJICogQHNpbmNlIDUuMC4yDQoJICovDQoJcHJvdGVjdGVkIExvYWQgJGxvYWQ7DQoNCgkvKioNCgkgKiBDb25zdHJ1Y3Rvci4NCgkgKg0KCSAqIEBwYXJhbSBNYXBwZXIgICAgICAgJG1hcHBlciAgICAgICBUaGUgSW1wb3J0IE1hcHBlciBDbGFzcy4NCgkgKiBAcGFyYW0gSW1wb3J0SXRlbSAgICRpbXBvcnRpdGVtICAgVGhlIEltcG9ydCBJdGVtIENsYXNzLg0KCSAqIEBwYXJhbSBEYXRhICAgICAgICAgJGRhdGEgICAgICAgICBUaGUgRGF0YSBDbGFzcy4NCgkgKiBAcGFyYW0gSXRlbSAgICAgICAgICRpdGVtICAgICAgICAgVGhlIEl0ZW0gQ2xhc3MuDQoJICogQHBhcmFtIExvYWQgICAgICAgICAkbG9hZCAgICAgICAgIFRoZSBMb2FkIENsYXNzLg0KCSAqDQoJICogQHNpbmNlIDUuMC4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KE1hcHBlciAkbWFwcGVyLCBJbXBvcnRJdGVtICRpbXBvcnRpdGVtLCBEYXRhICRkYXRhLA0KCQlJdGVtICRpdGVtLCBMb2FkICRsb2FkKQ0KCXsNCgkJJHRoaXMtPm1hcHBlciA9ICRtYXBwZXI7DQoJCSR0aGlzLT5pbXBvcnRpdGVtID0gJGltcG9ydGl0ZW07DQoJCSR0aGlzLT5kYXRhID0gJGRhdGE7DQoJCSR0aGlzLT5pdGVtID0gJGl0ZW07DQoJCSR0aGlzLT5sb2FkID0gJGxvYWQ7DQoJfQ0KDQoJLyoqDQoJICogUHJvY2VzcyB0aGUgam9pbiB0YWJsZXMgYW5kIHNhdmUgdGhlIGNvcnJlc3BvbmRpbmcgZGF0YS4NCgkgKg0KCSAqIEBwYXJhbSAgIHN0cmluZyAgJHBhcmVudEtleVZhbHVlICBUaGUgcGFyZW50IGtleS4NCgkgKg0KCSAqIEByZXR1cm4gIHZvaWQNCgkgKiBAc2luY2UgIDUuMC4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIHNldChzdHJpbmcgJHBhcmVudEpvaW5LZXksIHN0cmluZyAkcGFyZW50R3VpZCk6IHZvaWQNCgl7DQoJCWZvcmVhY2ggKCR0aGlzLT5tYXBwZXItPmdldEpvaW4oKSBhcyAkdGFibGUgPT4gJGNvbHVtbnMpDQoJCXsNCgkJCSRrZXlfZmllbGRzID0gJHRoaXMtPmtleUZpZWxkc1skdGFibGVdWydsaW5rX2ZpZWxkcyddID8/IG51bGw7DQoNCgkJCWlmICgka2V5X2ZpZWxkcyA9PT0gbnVsbCkNCgkJCXsNCgkJCQljb250aW51ZTsNCgkJCX0NCg0KCQkJd2hpbGUgKCRpdGVtID0gJHRoaXMtPmltcG9ydGl0ZW0tPmdldCgkdGFibGUsICRjb2x1bW5zKSkNCgkJCXsNCgkJCQlpZiAoZW1wdHkoJGl0ZW0pKQ0KCQkJCXsNCgkJCQkJYnJlYWs7DQoJCQkJfQ0KDQoJCQkJJGl0ZW1bJHBhcmVudEpvaW5LZXldID0gJHBhcmVudEd1aWQ7DQoNCgkJCQlpZiAoJHRoaXMtPmlzSm9pbmVkSXRlbVJlYWR5KCRpdGVtLCAka2V5X2ZpZWxkcywgJHRhYmxlKSkNCgkJCQl7DQoJCQkJCSR0aGlzLT5zYXZlSm9pbmVkSXRlbSgkaXRlbSwgJGtleV9maWVsZHMsICR0YWJsZSk7DQoJCQkJfQ0KCQkJfQ0KCQl9DQoJfQ0KDQoJLyoqDQoJICogQ2hlY2sgaWYgdGhlIGl0ZW0gaXMgcmVhZHkgdG8gYmUgcHJvY2Vzc2VkLg0KCSAqDQoJICogQHBhcmFtICAgYXJyYXkgICAkaXRlbSAgICAgICAgIFRoZSBpdGVtIHRvIGNoZWNrLg0KCSAqIEBwYXJhbSAgIGFycmF5ICAgJGtleUZpZWxkcyAgICBLZXkgZmllbGRzIGZvciB0aGUgdGFibGUuDQoJICogQHBhcmFtICAgc3RyaW5nICAkdGFibGUgICAgICAgIFRhYmxlIG5hbWUuDQoJICoNCgkgKiBAcmV0dXJuICBib29sDQoJICogQHNpbmNlICA1LjAuMg0KCSAqLw0KCXByaXZhdGUgZnVuY3Rpb24gaXNKb2luZWRJdGVtUmVhZHkoYXJyYXkgJGl0ZW0sIGFycmF5ICRrZXlGaWVsZHMsIHN0cmluZyAkdGFibGUpOiBib29sDQoJew0KCQkkcmVhZHkgPSB0cnVlOw0KDQoJCWZvcmVhY2ggKCRrZXlGaWVsZHMgYXMgJGtleV9maWVsZCkNCgkJew0KCQkJaWYgKGVtcHR5KCRpdGVtWyRrZXlfZmllbGRdKSkNCgkJCXsNCgkJCQkkcmVhZHkgPSBmYWxzZTsNCgkJCX0NCgkJfQ0KDQoJCXJldHVybiAkcmVhZHk7DQoJfQ0KDQoJLyoqDQoJICogU2F2ZSB0aGUgaXRlbSAoZWl0aGVyIGluc2VydCBvciB1cGRhdGUpLg0KCSAqDQoJICogQHBhcmFtICAgYXJyYXkgICAkaXRlbSAgICAgICAgIFRoZSBpdGVtIHRvIHNhdmUuDQoJICogQHBhcmFtICAgYXJyYXkgICAka2V5RmllbGRzICAgIEtleSBmaWVsZHMgZm9yIHRoZSB0YWJsZS4NCgkgKiBAcGFyYW0gICBzdHJpbmcgICR0YWJsZSAgICAgICAgVGhlIHRhYmxlIG5hbWUuDQoJICoNCgkgKiBAcmV0dXJuICB2b2lkDQoJICogQHNpbmNlICA1LjAuMg0KCSAqLw0KCXByaXZhdGUgZnVuY3Rpb24gc2F2ZUpvaW5lZEl0ZW0oYXJyYXkgJGl0ZW0sIGFycmF5ICRrZXlGaWVsZHMsIHN0cmluZyAkdGFibGUpOiB2b2lkDQoJew0KCQkkd2hlcmUgPSBbXTsNCgkJZm9yZWFjaCAoJGtleUZpZWxkcyBhcyAka2V5X2ZpZWxkKQ0KCSAJew0KCQkJJHdoZXJlWydhLicgLiAka2V5X2ZpZWxkXSA9ICRpdGVtWyRrZXlfZmllbGRdOw0KCQl9DQoNCgkJJGd1aWQgPSAkdGhpcy0+bG9hZC0+dmFsdWUoWydhLmd1aWQnID0+ICdndWlkJ10sIFsnYScgPT4gJHRhYmxlXSwgJHdoZXJlKTsNCg0KCQlpZiAoJGd1aWQgPT09IG51bGwpDQoJCXsNCgkJCSRndWlkID0gR3VpZEhlbHBlcjo6Z2V0KCk7DQoNCgkJCSRhY3Rpb24gPSAnaW5zZXJ0JzsNCgkJCSRpdGVtWydjcmVhdGVkX2J5J10gPz89ICR0aGlzLT5kYXRhLT5nZXQoJ2ltcG9ydC5jcmVhdGVkX2J5JywgMCk7DQoJCX0NCgkJZWxzZQ0KCQl7DQoJCQkkYWN0aW9uID0gJ3VwZGF0ZSc7DQoJCQkkaXRlbVsnbW9kaWZpZWRfYnknXSA/Pz0gJHRoaXMtPmRhdGEtPmdldCgnaW1wb3J0LmNyZWF0ZWRfYnknLCAwKTsgLy8gbXVzdCBiZSBjcmVhdGVkIGJ5IDopDQoJCX0NCg0KCQkkaXRlbVsnZ3VpZCddID0gJGd1aWQ7DQoJCSR0aGlzLT5pdGVtLT50YWJsZSgkdGFibGUpLT5zZXQoKG9iamVjdCkkaXRlbSwgJ2d1aWQnLCAkYWN0aW9uKTsNCgl9', '{}', '{}', '', 1, '2020-02-17 12:12:20', 6, '', 1), +(885, '36063502-2115-4c8d-b16a-0c76cc8c1ada', 'JCB.Spreadsheet.RowDataArray', 'RowDataArray', 'final class', 'Spreadsheet Row Data Array\r\n\r\n@since 5.0.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIwDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8=', '1.0.0', '', '', '', '', '{\"0\":\"9ffc54fa-a71e-412f-bc8b-064fc3b69167\"}', '', '[[[NamespacePrefix]]]\\Joomla\\[[[ComponentNamespace]]].Spreadsheet.RowDataArray', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIFByb2Nlc3NlcyBhIGdpdmVuIHNwcmVhZHNoZWV0IHJvdyBhbmQgcmV0dXJucyBhbiBhc3NvY2lhdGl2ZSBhcnJheSBjb250YWluaW5nIHRoZSByb3cgaW5kZXggYW5kIGNlbGwgdmFsdWVzIGluZGV4ZWQgYnkgY29sdW1uIGxldHRlcnMuDQoJICoNCgkgKiBUaGlzIG1ldGhvZCBpdGVyYXRlcyBvdmVyIGVhY2ggY2VsbCBpbiB0aGUgcHJvdmlkZWQgcm93LCByZXRyaWV2ZXMgdGhlIGNlbGwgdmFsdWVzLCBhbmQgY3JlYXRlcw0KCSAqIGFuIGFzc29jaWF0aXZlIGFycmF5IHdoZXJlICdpbmRleCcgaG9sZHMgdGhlIHJvdyBpbmRleCBhbmQgJ3ZhbHVlJyBjb250YWlucyBhbiBhc3NvY2lhdGl2ZSBhcnJheQ0KCSAqIG9mIGNvbHVtbiBsZXR0ZXJzIGFzIGtleXMgYW5kIGNlbGwgdmFsdWVzIGFzIHRoZSBjb3JyZXNwb25kaW5nIHZhbHVlcy4NCgkgKg0KCSAqIEBwYXJhbSBSb3cgJHJvdyBUaGUgcm93IG9iamVjdCBmcm9tIHRoZSBzcHJlYWRzaGVldCB0byBiZSBwcm9jZXNzZWQuDQoJICoNCgkgKiBAcmV0dXJuIG51bGx8YXJyYXk8c3RyaW5nLCBzdHJpbmc+IEFuIGFzc29jaWF0aXZlIGFycmF5IHdpdGggdGhlIGZvbGxvd2luZyBzdHJ1Y3R1cmU6DQoJICogICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gJ2luZGV4JyAoaW50KTogVGhlIHJvdyBpbmRleC4NCgkgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLSAndmFsdWVzJyAoYXJyYXk8c3RyaW5nLCBzdHJpbmc+KTogQW4gYXNzb2NpYXRpdmUgYXJyYXkgd2hlcmUga2V5cyBhcmUgdGhlIGNvbHVtbiBsZXR0ZXJzDQoJICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHN0cmluZyksIGFuZCB2YWx1ZXMgYXJlIHRoZSBjb3JyZXNwb25kaW5nIGNlbGwgdmFsdWVzIChzdHJpbmcpLg0KCSAqIEBzaW5jZSA1LjAuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiBwcm9jZXNzKFJvdyAkcm93KTogP2FycmF5DQoJew0KCQlpZiAoJHJvdy0+aXNFbXB0eSgpKQ0KCQl7DQoJCQlyZXR1cm4gbnVsbDsNCgkJfQ0KDQoJCSRyb3dEYXRhID0gWydpbmRleCcgPT4gJHJvdy0+Z2V0Um93SW5kZXgoKSwgJ3ZhbHVlcycgPT4gW11dOw0KCQkkY2VsbEl0ZXJhdG9yID0gJHJvdy0+Z2V0Q2VsbEl0ZXJhdG9yKCk7DQoJCSRjZWxsSXRlcmF0b3ItPnNldEl0ZXJhdGVPbmx5RXhpc3RpbmdDZWxscyh0cnVlKTsNCg0KCQlmb3JlYWNoICgkY2VsbEl0ZXJhdG9yIGFzICRjZWxsKQ0KCQl7DQoJCQkkcm93RGF0YVsndmFsdWVzJ11bJGNlbGwtPmdldENvbHVtbigpXSA9IChzdHJpbmcpICRjZWxsLT5nZXRWYWx1ZSgpOw0KCQl9DQoNCgkJcmV0dXJuICRyb3dEYXRhOw0KCX0=', '{}', '{\"composer0\":{\"access_point\":\"phpspreadsheet\\/vendor\\/autoload.php\",\"namespace\":{\"namespace0\":{\"use\":\"PhpOffice\\\\PhpSpreadsheet\\\\Worksheet\\\\Row\"}}}}', '', 1, '2020-02-17 12:25:47', 7, '', 1), +(886, 'b5184f80-613e-46c8-b40a-b60de779bb78', 'JCB.Service.Item.Import', 'Import', 'class', 'Item Service Provider\r\n\r\n@since 5.0.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIwDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8=', '1.0.0', '', '', '', '', '{\"0\":\"-1\"}', 'ServiceProviderInterface', '[[[NamespacePrefix]]]\\Joomla\\[[[ComponentNamespace]]].Service.Item.Import', 1, '{}', '{}', 'dXNlIEpvb21sYVxESVxDb250YWluZXI7DQp1c2UgSm9vbWxhXERJXFNlcnZpY2VQcm92aWRlckludGVyZmFjZTs=', '{\"use_selection0\":{\"use\":\"2f14ec19-1b67-44be-8306-2a9e74588464\",\"as\":\"ItemImport\"},\"use_selection1\":{\"use\":\"cc923dc9-8f5c-46ea-810c-d93df2e5752b\",\"as\":\"default\"},\"use_selection2\":{\"use\":\"db00768d-c7a6-421d-8f39-577550ddf792\",\"as\":\"default\"},\"use_selection3\":{\"use\":\"36063502-2115-4c8d-b16a-0c76cc8c1ada\",\"as\":\"default\"}}', 'CS8qKg0KCSAqIFJlZ2lzdGVycyB0aGUgc2VydmljZSBwcm92aWRlciB3aXRoIGEgREkgY29udGFpbmVyLg0KCSAqDQoJICogQHBhcmFtICAgQ29udGFpbmVyICAkY29udGFpbmVyICBUaGUgREkgY29udGFpbmVyLg0KCSAqDQoJICogQHJldHVybiAgdm9pZA0KCSAqIEBzaW5jZSA1LjAuMg0KCSAqLw0KCXB1YmxpYyBmdW5jdGlvbiByZWdpc3RlcihDb250YWluZXIgJGNvbnRhaW5lcikNCgl7DQoJCSRjb250YWluZXItPmFsaWFzKEl0ZW1JbXBvcnQ6OmNsYXNzLCAnSXRlbS5JbXBvcnQnKQ0KCQkJLT5zaGFyZSgnSXRlbS5JbXBvcnQnLCBbJHRoaXMsICdnZXRJdGVtSW1wb3J0J10sIHRydWUpOw0KDQoJCSRjb250YWluZXItPmFsaWFzKFBhcmVudFRhYmxlOjpjbGFzcywgJ0ltcG9ydC5QYXJlbnRUYWJsZScpDQoJCQktPnNoYXJlKCdJbXBvcnQuUGFyZW50VGFibGUnLCBbJHRoaXMsICdnZXRQYXJlbnRUYWJsZSddLCB0cnVlKTsNCg0KCQkkY29udGFpbmVyLT5hbGlhcyhKb2luVGFibGVzOjpjbGFzcywgJ0ltcG9ydC5Kb2luVGFibGVzJykNCgkJCS0+c2hhcmUoJ0ltcG9ydC5Kb2luVGFibGVzJywgWyR0aGlzLCAnZ2V0Sm9pblRhYmxlcyddLCB0cnVlKTsNCg0KCQkkY29udGFpbmVyLT5hbGlhcyhSb3dEYXRhQXJyYXk6OmNsYXNzLCAnSXRlbS5Sb3dEYXRhQXJyYXknKQ0KCQkJLT5zaGFyZSgnSXRlbS5Sb3dEYXRhQXJyYXknLCBbJHRoaXMsICdnZXRSb3dEYXRhQXJyYXknXSwgdHJ1ZSk7DQoJfQ0KDQoJLyoqDQoJICogR2V0IFRoZSBJbXBvcnQgQ2xhc3MuDQoJICoNCgkgKiBAcGFyYW0gICBDb250YWluZXIgICRjb250YWluZXIgIFRoZSBESSBjb250YWluZXIuDQoJICoNCgkgKiBAcmV0dXJuICBJdGVtSW1wb3J0DQoJICogQHNpbmNlIDUuMC4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGdldEl0ZW1JbXBvcnQoQ29udGFpbmVyICRjb250YWluZXIpOiBJdGVtSW1wb3J0DQoJew0KCQlyZXR1cm4gbmV3IEl0ZW1JbXBvcnQoDQoJCQkkY29udGFpbmVyLT5nZXQoJ0ltcG9ydC5TdGF0dXMnKSwNCgkJCSRjb250YWluZXItPmdldCgnSW1wb3J0Lk1lc3NhZ2UnKSwNCgkJCSRjb250YWluZXItPmdldCgnSW1wb3J0Lk1hcHBlcicpLA0KCQkJJGNvbnRhaW5lci0+Z2V0KCdJbXBvcnQuRGF0YScpLA0KCQkJJGNvbnRhaW5lci0+Z2V0KCdTcHJlYWRzaGVldC5JbXBvcnRlcicpLA0KCQkJJGNvbnRhaW5lci0+Z2V0KCdJdGVtLlJvd0RhdGFBcnJheScpLA0KCQkJJGNvbnRhaW5lci0+Z2V0KCdJbXBvcnQuUm93JyksDQoJCQkkY29udGFpbmVyLT5nZXQoJ0ltcG9ydC5QYXJlbnRUYWJsZScpLA0KCQkJJGNvbnRhaW5lci0+Z2V0KCdJbXBvcnQuSm9pblRhYmxlcycpLA0KCQkJJGNvbnRhaW5lci0+Z2V0KCdJbXBvcnQuQXNzZXNzb3InKSwNCgkJCSRjb250YWluZXItPmdldCgnRGF0YS5JdGVtJykNCgkJKTsNCgl9DQoNCgkvKioNCgkgKiBHZXQgVGhlIFBhcmVudFRhYmxlIENsYXNzLg0KCSAqDQoJICogQHBhcmFtICAgQ29udGFpbmVyICAkY29udGFpbmVyICBUaGUgREkgY29udGFpbmVyLg0KCSAqDQoJICogQHJldHVybiAgUGFyZW50VGFibGUNCgkgKiBAc2luY2UgNS4wLjINCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gZ2V0UGFyZW50VGFibGUoQ29udGFpbmVyICRjb250YWluZXIpOiBQYXJlbnRUYWJsZQ0KCXsNCgkJcmV0dXJuIG5ldyBQYXJlbnRUYWJsZSgNCgkJCSRjb250YWluZXItPmdldCgnSW1wb3J0LlJvdycpLA0KCQkJJGNvbnRhaW5lci0+Z2V0KCdJbXBvcnQuSXRlbScpLA0KCQkJJGNvbnRhaW5lci0+Z2V0KCdJbXBvcnQuTWFwcGVyJyksDQoJCQkkY29udGFpbmVyLT5nZXQoJ0ltcG9ydC5NZXNzYWdlJyksDQoJCQkkY29udGFpbmVyLT5nZXQoJ0ltcG9ydC5EYXRhJyksDQoJCQkkY29udGFpbmVyLT5nZXQoJ0RhdGEuSXRlbScpLA0KCQkJJGNvbnRhaW5lci0+Z2V0KCdMb2FkJykNCgkJKTsNCgl9DQoNCgkvKioNCgkgKiBHZXQgVGhlIEpvaW5UYWJsZXMgQ2xhc3MuDQoJICoNCgkgKiBAcGFyYW0gICBDb250YWluZXIgICRjb250YWluZXIgIFRoZSBESSBjb250YWluZXIuDQoJICoNCgkgKiBAcmV0dXJuICBKb2luVGFibGVzDQoJICogQHNpbmNlIDUuMC4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGdldEpvaW5UYWJsZXMoQ29udGFpbmVyICRjb250YWluZXIpOiBKb2luVGFibGVzDQoJew0KCQlyZXR1cm4gbmV3IEpvaW5UYWJsZXMoDQoJCQkkY29udGFpbmVyLT5nZXQoJ0ltcG9ydC5NYXBwZXInKSwNCgkJCSRjb250YWluZXItPmdldCgnSW1wb3J0Lkl0ZW0nKSwNCgkJCSRjb250YWluZXItPmdldCgnSW1wb3J0LkRhdGEnKSwNCgkJCSRjb250YWluZXItPmdldCgnRGF0YS5JdGVtJyksDQoJCQkkY29udGFpbmVyLT5nZXQoJ0xvYWQnKQ0KCQkpOw0KCX0NCg0KCS8qKg0KCSAqIEdldCBUaGUgUm93RGF0YUFycmF5IENsYXNzLg0KCSAqDQoJICogQHBhcmFtICAgQ29udGFpbmVyICAkY29udGFpbmVyICBUaGUgREkgY29udGFpbmVyLg0KCSAqDQoJICogQHJldHVybiAgUm93RGF0YUFycmF5DQoJICogQHNpbmNlIDUuMC4yDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGdldFJvd0RhdGFBcnJheShDb250YWluZXIgJGNvbnRhaW5lcik6IFJvd0RhdGFBcnJheQ0KCXsNCgkJcmV0dXJuIG5ldyBSb3dEYXRhQXJyYXkoKTsNCgl9', '{\"load_selection0\":{\"load\":\"647316a5-eb42-4bec-82dd-ca0dc2861ad3\"}}', '{}', '', 1, '2020-01-28 22:18:52', 9, '', 1), +(887, '647316a5-eb42-4bec-82dd-ca0dc2861ad3', 'JCB.Console.ItemImport', 'ItemImport', 'class', '[[[ComponentNamespace]]] Item Import\r\n\r\n@since 5.0.2', 2, 'LyoqDQogKiBAcGFja2FnZSAgICBKb29tbGEuQ29tcG9uZW50LkJ1aWxkZXINCiAqDQogKiBAY3JlYXRlZCAgICA0dGggU2VwdGVtYmVyLCAyMDIyDQogKiBAYXV0aG9yICAgICBMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZSA8aHR0cHM6Ly9kZXYudmRtLmlvPg0KICogQGdpdCAgICAgICAgSm9vbWxhIENvbXBvbmVudCBCdWlsZGVyIDxodHRwczovL2dpdC52ZG0uZGV2L2pvb21sYS9Db21wb25lbnQtQnVpbGRlcj4NCiAqIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoQykgMjAxNSBWYXN0IERldmVsb3BtZW50IE1ldGhvZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvciBsYXRlcjsgc2VlIExJQ0VOU0UudHh0DQogKi8NCg==', '1.0.0', '85321deb-5c3a-401b-9ce1-039a746add51', '', '', '', '', '', '[[[NamespacePrefix]]]\\Joomla\\[[[ComponentNamespace]]].Console.ItemImport', '', '{}', '{}', '', '{}', 'CS8qKg0KCSAqIFRoZSBxdWV1ZSBzdGF0dXMgZmllbGQNCgkgKg0KCSAqIEB2YXIgc3RyaW5nDQoJICogQHNpbmNlICA1LjAuMg0KCSAqLw0KCXByb3RlY3RlZCBzdHJpbmcgJHF1ZXVlU3RhdHVzRmllbGQgPSAnaW1wb3J0X3N0YXR1cyc7DQoNCgkvKioNCgkgKiBUaGUgcXVldWUgYXdhaXRpbmcgc3RhdHVzDQoJICoNCgkgKiBAdmFyIGludA0KCSAqIEBzaW5jZSAgNS4wLjINCgkgKi8NCglwcm90ZWN0ZWQgaW50ICRxdWV1ZVdhaXRTdGF0ZSA9IDE7DQoNCgkvKioNCgkgKiBUaGUgcXVldWUgcHJvY2Vzc2luZyBzdGF0dXMNCgkgKg0KCSAqIEB2YXIgaW50DQoJICogQHNpbmNlICA1LjAuMg0KCSAqLw0KCXByb3RlY3RlZCBpbnQgJHF1ZXVlUHJvY2Vzc2luZ1N0YXRlID0gMjsNCg0KCS8qKg0KCSAqIFRoZSBxdWV1ZSB0YWJsZSBuYW1lLg0KCSAqDQoJICogQHZhciBzdHJpbmcNCgkgKiBAc2luY2UgIDUuMC4yDQoJICovDQoJcHJvdGVjdGVkIHN0cmluZyAkcXVldWVUYWJsZSA9ICdpdGVtX2ltcG9ydCc7DQoNCgkvKioNCgkgKiBUaGUgbWFpbiBpbXBvcnQgdGFyZ2V0IG5hbWUuDQoJICoNCgkgKiBAdmFyIHN0cmluZw0KCSAqIEBzaW5jZSAgNS4wLjINCgkgKi8NCglwcm90ZWN0ZWQgc3RyaW5nICR0YXJnZXROYW1lID0gJ2l0ZW0nOw0KDQoJLyoqDQoJICogVGhlIHRhcmdldCBpbXBvcnQgY2xhc3MgdG8gYmUgcHVsbGVkIGZyb20gdGhlIEltcG9ydCBGYWN0b3J5IGNsYXNzLg0KCSAqDQoJICogQHZhciBzdHJpbmcNCgkgKiBAc2luY2UgIDUuMC4yDQoJICovDQoJcHJvdGVjdGVkIHN0cmluZyAkdGFyZ2V0SW1wb3J0Q2xhc3MgPSAnSXRlbS5JbXBvcnQnOw0KDQoJLyoqDQoJICogVGhlIGRlZmF1bHQgY29tbWFuZCBuYW1lLg0KCSAqDQoJICogQHZhciBzdHJpbmcNCgkgKiBAc2luY2UgIDUuMC4yDQoJICovDQoJcHJvdGVjdGVkIHN0YXRpYyAkZGVmYXVsdE5hbWUgPSAnW1tbY29tcG9uZW50XV1dOkl0ZW06aW1wb3J0Jzs=', '{}', '{}', '', 1, '2021-02-11 15:14:37', 6, '', 1); + -- -- Dumping data for table `#__componentbuilder_admin_view` -- @@ -2681,16 +2826,16 @@ INSERT INTO `#__componentbuilder_field` (`id`, `add_css_view`, `add_css_views`, (3434, '', '', '', '', '', '', '', '', 255, '', 'VARCHAR', 2, '', '', 'Target Field', 'NULL', '', 'dd2e1f4b-f5db-45e8-85fa-efd27bae7b6a', '\"\"', 1, '2025-02-16 18:50:25', '2025-02-21 14:26:33', 2, '', 1085, '7d613846-8f1e-43f4-8bb9-1fcdbb473fa5', '', '', '', '', ''), (3435, '', '', '', '', '', '', '', '', 'Other', 36, 'VARCHAR', 2, '', '', 'File (Importer)', 'NULL', '', 'dd2e1f4b-f5db-45e8-85fa-efd27bae7b6a', '\"\"', 1, '2025-02-16 18:54:56', '2025-02-16 19:17:19', 3, '', 1086, '91939b1a-c4d6-4531-8356-63bc4ca243fb', '', '', '', '', ''), (3436, '', '', '', '', '', '', '', '', 11, '', 'INT', 2, '', '', 'Import Status', 'NULL', '', 'a51dfc06-1b9b-4d0a-86ba-f705bcd40d4d', '\"\"', 1, '2025-02-16 19:00:55', '2025-02-16 19:01:01', 2, '', 1087, '11698dc6-8ff6-4662-b3b7-e47494463a08', '', '', '', '', ''), -(3438, '', '', '', '', '', '', '', '', 255, '', 'VARCHAR', 2, '', '', 'Country (modal)', 'NULL', '', 'a1cdb0a5-517c-425c-998a-333e92af3e32', '\"\"', 1, '2025-03-24 09:02:54', '2025-03-26 21:20:35', 11, '', 242, '8d1b9d7e-77c1-43d9-bc97-0dd021bfe779', '', '', '', '', ''), -(3439, '', '', '', '', '', '', '', '', 255, '', 'VARCHAR', 2, '', '', 'Region (modal)', 'NULL', '', 'a1cdb0a5-517c-425c-998a-333e92af3e32', '\"\"', 1, '2025-03-24 10:06:43', '2025-03-26 21:20:41', 13, '', 667, '7f3ccb20-7c57-433a-987b-b53d801004f3', '', '', '', '', ''), +(3438, '', '', '', '', '', '', '', '', 255, '', 'VARCHAR', 2, '', '', 'Country (modal)', 'NULL', '', 'a1cdb0a5-517c-425c-998a-333e92af3e32', '\"\"', 1, '2025-03-24 09:02:54', '2025-03-30 21:36:14', 13, '', 242, '8d1b9d7e-77c1-43d9-bc97-0dd021bfe779', '', '', '', '', ''), +(3439, '', '', '', '', '', '', '', '', 255, '', 'VARCHAR', 2, '', '', 'Region (modal)', 'NULL', '', 'a1cdb0a5-517c-425c-998a-333e92af3e32', '\" index.php?option=com_###component###&task=region.edit&guid={id}&layout=modal&tmpl=component&titleKey=guid\\\"\\n\\ttitleSelect=\\\"Select A Region\\\"\\n\\ttitleNew=\\\"New Region\\\"\\n\\ttitleEdit=\\\"Edit the Region\\\"\\n\\ticonSelect=\\\"icon-copy\\\"\\n\\tselect=\\\"true\\\"\\n\\tnew=\\\"true\\\"\\n\\tedit=\\\"true\\\"\\n\\tclear=\\\"true\\\"\\n\\trequired=\\\"true\\\"\\n\\tclass=\\\"input-large\\\"\\n\\tdescription=\\\"Please select the region this ###view### belongs to.\\\"\\n\\thint=\\\"Select a Region\\\"\\n\\/>\"', 1, '2025-03-24 10:06:43', '2025-03-30 21:35:52', 15, '', 667, '7f3ccb20-7c57-433a-987b-b53d801004f3', '', '', '', '', ''), (3441, '', '', '', '', '', '', '', '', '', '', 'TEXT', '', '', '', 'Countries (multisubform)', 'NULL', 6, '7139f2c8-a70a-46a6-bbe3-4eefe54ca515', '\"\"', 1, '2025-03-24 12:57:22', '2025-03-27 13:44:53', 8, '', 1088, '4d96ceea-7dd1-45c3-86fd-0d73d66332a8', 'JGdldE1hcCA9ICBbDQoJCSdfY29yZScgPT4gWw0KCQkJJ3RhYmxlJyA9Pidjb3VudHJ5JywNCgkJCSdsaW5rVmFsdWUnID0+ICRpdGVtLT5ndWlkID8/ICcnLA0KCQkJJ2xpbmtLZXknID0+ICdzdWJyZWdpb24nLA0KCQkJJ2ZpZWxkJyA9PiAnY291bnRyeScsDQoJCQknZ2V0JyA9PiBbJ2d1aWQnLCduYW1lJywnaXNvMycsJ2lzbzInLCdjYXBpdGFsJywnbmF0aXZlJywnbmF0aW9uYWxpdHknLCdjdXJyZW5jeV9uYW1lJywnY29kZXRocmVlJywnc3ltYm9sJywnbnVtZXJpY19jb2RlJywncGhvbmVjb2RlJywndGxkJywnZW1vamknLCdlbW9qaXUnLCdsYXRpdHVkZScsJ2xvbmdpdHVkZScsJ3dpa2lkYXRhaWQnXQ0KCQldLA0KCQkndGltZXpvbmVzJyA9PiBbDQoJCQkndGFibGUnID0+J3RpbWV6b25lJywNCgkJCSdsaW5rVmFsdWUnID0+ICdjb3VudHJ5Omd1aWQnLCAvLyBjb3JldGFibGU6ZmllbGRuYW1lDQoJCQknbGlua0tleScgPT4gJ2NvdW50cnknLA0KCQkJJ2dldCcgPT4gWydndWlkJywndGltZXpvbmVfbmFtZScsJ3RpbWV6b25lX2lkZW50aWZpZXInLCdnbXRfb2Zmc2V0X25hbWUnLCdnbXRfb2Zmc2V0X3NlYycsJ2FiYnJldmlhdGlvbiddDQoJCV0NCgldOw0KW1tbZmllbGRdXV0gPSBTdXBlcl9fXzlkNzZiOGRjXzM4ODNfNDc1NV9iMTFjXzEzMWQxOWNhOGE1M19fX1Bvd2VyOjpfKCdEYXRhLk11bHRpU3ViZm9ybScpLT5nZXQoJGdldE1hcCk7', 'JHNldE1hcCA9ICBbDQoJJ19jb3JlJyA9PiBbDQoJCSd0YWJsZScgPT4nY291bnRyeScsDQoJCSdpbmRleEtleScgPT4gJ2d1aWQnLA0KCQknbGlua0tleScgPT4gJ3N1YnJlZ2lvbicsDQoJCSdsaW5rVmFsdWUnID0+ICRkYXRhWydndWlkJ10gPz8gJycNCgldLA0KCSd0aW1lem9uZXMnID0+IFsNCgkJJ3RhYmxlJyA9Pid0aW1lem9uZScsDQoJCSdpbmRleEtleScgPT4gJ2d1aWQnLA0KCQknbGlua0tleScgPT4gJ2NvdW50cnknLA0KCQknbGlua1ZhbHVlJyA9PiAnY291bnRyeTpndWlkJyAvLyBjb3JldGFibGU6ZmllbGRuYW1lDQoJXQ0KXTsNClN1cGVyX19fOWQ3NmI4ZGNfMzg4M180NzU1X2IxMWNfMTMxZDE5Y2E4YTUzX19fUG93ZXI6Ol8oJ0RhdGEuTXVsdGlTdWJmb3JtJyktPnNldChbW1tmaWVsZF1dXSA/PyBbXSwgICRzZXRNYXApOw==', '', '', ''), (3442, '', '', '', '', '', '', '', '', '', '', 'TEXT', '', '', '', 'State/cities (multisubform)', 'NULL', 6, '7139f2c8-a70a-46a6-bbe3-4eefe54ca515', '\"\"', 1, '2025-03-24 14:27:41', '2025-03-27 08:28:49', 8, '', 1088, '9a21f28b-b818-4cc5-b18a-c3fa33a5876d', 'JGdldE1hcCA9ICBbDQoJCSdfY29yZScgPT4gWw0KCQkJJ3RhYmxlJyA9PidzdGF0ZScsDQoJCQknbGlua1ZhbHVlJyA9PiAkaXRlbS0+Z3VpZCA/PyAnJywNCgkJCSdsaW5rS2V5JyA9PiAnY291bnRyeScsDQoJCQknZmllbGQnID0+ICdzdGF0ZScsDQoJCQknZ2V0JyA9PiBbJ2d1aWQnLCduYW1lJywndHlwZScsJ2xhdGl0dWRlJywnbG9uZ2l0dWRlJywnaXNvMicsJ2ZpcHNfY29kZScsJ3dpa2lkYXRhaWQnXQ0KCQldLA0KCQknY2l0aWVzJyA9PiBbDQoJCQkndGFibGUnID0+J2NpdHknLA0KCQkJJ2xpbmtWYWx1ZScgPT4gJ3N0YXRlOmd1aWQnLCAvLyBjb3JldGFibGU6ZmllbGRuYW1lDQoJCQknbGlua0tleScgPT4gJ3N0YXRlJywNCgkJCSdnZXQnID0+IFsnZ3VpZCcsJ25hbWUnLCdsYXRpdHVkZScsJ2xvbmdpdHVkZScsJ3dpa2lkYXRhaWQnXQ0KCQldDQoJXTsNCltbW2ZpZWxkXV1dID0gU3VwZXJfX185ZDc2YjhkY18zODgzXzQ3NTVfYjExY18xMzFkMTljYThhNTNfX19Qb3dlcjo6XygnRGF0YS5NdWx0aVN1YmZvcm0nKS0+Z2V0KCRnZXRNYXApOw==', 'JHNldE1hcCA9ICBbDQoJJ19jb3JlJyA9PiBbDQoJCSd0YWJsZScgPT4nc3RhdGUnLA0KCQknaW5kZXhLZXknID0+ICdndWlkJywNCgkJJ2xpbmtLZXknID0+ICdjb3VudHJ5JywNCgkJJ2xpbmtWYWx1ZScgPT4gJGRhdGFbJ2d1aWQnXSA/PyAnJw0KCV0sDQoJJ2NpdGllcycgPT4gWw0KCQkndGFibGUnID0+J2NpdHknLA0KCQknaW5kZXhLZXknID0+ICdndWlkJywNCgkJJ2xpbmtLZXknID0+ICdzdGF0ZScsDQoJCSdsaW5rVmFsdWUnID0+ICdzdGF0ZTpndWlkJyAvLyBjb3JldGFibGU6ZmllbGRuYW1lDQoJXQ0KXTsNClN1cGVyX19fOWQ3NmI4ZGNfMzg4M180NzU1X2IxMWNfMTMxZDE5Y2E4YTUzX19fUG93ZXI6Ol8oJ0RhdGEuTXVsdGlTdWJmb3JtJyktPnNldChbW1tmaWVsZF1dXSA/PyBbXSwgICRzZXRNYXApOw==', '', '', ''), (3443, '', '', '', '', '', '', '', '', 'Other', '10,8', 'DECIMAL', 2, '', '', 'Latitude (decimal)', 'NULL', '', '201327fe-3067-4316-a155-3fe2a52e05c0', '\"\"', 1, '2025-03-25 09:14:48', '2025-03-26 10:09:50', 4, '', 1089, 'f7d3d78e-2d35-4884-a997-d073f853d095', '', '', '', '', ''), (3444, '', '', '', '', '', '', '', '', 'Other', '11,8', 'DECIMAL', 2, '', '', 'Longitude (decimal)', 'NULL', '', '201327fe-3067-4316-a155-3fe2a52e05c0', '\"\"', 1, '2025-03-25 09:18:39', '2025-03-26 10:10:13', 4, '', 1089, '09c22738-6c6f-48ca-a24d-d439757e8619', '', '', '', '', ''), (3446, '', '', '', '', '', '', '', '', 255, '', 'VARCHAR', 2, '', '', 'WikiDataId', 'NULL', '', '201327fe-3067-4316-a155-3fe2a52e05c0', '\"\"', 1, '2025-03-25 09:40:33', '2025-03-25 09:41:37', 2, '', 1090, 'af59b3ac-6a00-42c0-bbe2-edf90dec6081', '', '', '', '', ''), -(3447, '', '', '', '', '', '', '', '', 255, '', 'VARCHAR', '', '', '', 'State (modal)', 'NULL', '', 'a1cdb0a5-517c-425c-998a-333e92af3e32', '\"\"', 1, '2025-03-25 10:19:19', '2025-03-27 16:06:51', 10, '', 667, '1e666136-800a-486d-a8e8-13a054b7acde', '', '', '', '', ''), +(3447, '', '', '', '', '', '', '', '', 255, '', 'VARCHAR', '', '', '', 'State (modal)', 'NULL', '', 'a1cdb0a5-517c-425c-998a-333e92af3e32', '\"\"', 1, '2025-03-25 10:19:19', '2025-03-30 21:35:29', 12, '', 667, '1e666136-800a-486d-a8e8-13a054b7acde', '', '', '', '', ''), (3448, '', '', '', '', '', '', '', '', 255, '', 'VARCHAR', 2, '', '', 'Phone Code (country)', 'NULL', '', '201327fe-3067-4316-a155-3fe2a52e05c0', '\"\"', 1, '2025-03-25 10:30:37', '2025-03-25 15:00:22', 4, '', 557, '149140a8-d0a6-4b62-a880-bb796e2145d8', '', '', '', '', ''), -(3449, '', '', '', '', '', '', '', '', 255, '', 'VARCHAR', 2, '', '', 'Capital (citites-modal)', 'NULL', '', 'a1cdb0a5-517c-425c-998a-333e92af3e32', '\"\"', 1, '2025-03-25 10:43:17', '2025-03-27 13:10:58', 13, '', 667, 'baeaf484-f61b-4688-8b8a-e3ace669b7a7', '', '', '', '', ''), +(3449, '', '', '', '', '', '', '', '', 255, '', 'VARCHAR', 2, '', '', 'Capital (citites-modal)', 'NULL', '', 'a1cdb0a5-517c-425c-998a-333e92af3e32', '\"\"', 1, '2025-03-25 10:43:17', '2025-03-30 21:35:08', 15, '', 667, 'baeaf484-f61b-4688-8b8a-e3ace669b7a7', '', '', '', '', ''), (3450, '', '', '', '', '', '', '', '', 255, '', 'VARCHAR', 2, '', '', 'TLD (country)', 'NULL', '', '201327fe-3067-4316-a155-3fe2a52e05c0', '\"\"', 1, '2025-03-25 10:44:32', '2025-03-27 13:17:00', 4, '', 557, 'c4c23fad-fd03-41cc-b5db-25f60b8ee11f', '', '', '', '', ''), (3451, '', '', '', '', '', '', '', '', 255, '', 'VARCHAR', 2, '', '', 'FIPS code', 'NULL', '', '201327fe-3067-4316-a155-3fe2a52e05c0', '\"\"', 1, '2025-03-25 10:50:46', '2025-03-25 13:40:03', 5, '', 1089, 'fa0ead84-06c8-4f18-89ae-4cdf646fd961', '', '', '', '', ''), (3452, '', '', '', '', '', '', '', '', 255, '', 'VARCHAR', 2, '', '', 'Native (country)', 'NULL', '', '201327fe-3067-4316-a155-3fe2a52e05c0', '\"\"', 1, '2025-03-25 10:51:13', '2025-03-25 10:51:17', 2, '', 557, '2aad92a4-895d-46cb-b0df-751da1bdd703', '', '', '', '', ''), @@ -2698,7 +2843,7 @@ INSERT INTO `#__componentbuilder_field` (`id`, `add_css_view`, `add_css_views`, (3454, '', '', '', '', '', '', '', '', 255, '', 'VARCHAR', 2, '', '', 'Type (of state)', 'NULL', '', 'a51dfc06-1b9b-4d0a-86ba-f705bcd40d4d', '\"\"', 1, '2025-03-25 12:36:39', '2025-03-26 12:35:37', 4, '', 1089, '4321fa80-702d-4ff5-ab3c-05507d3007a9', '', '', '', '', ''), (3455, '', '', '', '', '', '', '', '', 'Other', 191, 'VARCHAR', 2, '', '', 'Flag emoji (country flag)', 'NULL', '', '201327fe-3067-4316-a155-3fe2a52e05c0', '\"\"', 1, '2025-03-25 12:45:10', '2025-03-25 12:38:41', 1, '', 557, '962ec39f-78d4-42ee-9626-7b778d2eea25', '', '', '', '', ''), (3456, '', '', '', '', '', '', '', '', 'Other', 191, 'VARCHAR', 2, '', '', 'Flag emojiU (unicode for flag)', 'NULL', '', '201327fe-3067-4316-a155-3fe2a52e05c0', '\"\"', 1, '2025-03-25 12:48:26', '2025-03-27 13:21:02', 4, '', 557, 'b71ee1ab-78ea-4cc7-aa2e-490a4d01a03f', '', '', '', '', ''), -(3457, '', '', '', '', '', '', '', '', 255, '', 'VARCHAR', 2, '', '', 'Sub-Region (modal)', 'NULL', '', 'a1cdb0a5-517c-425c-998a-333e92af3e32', '\"\"', 1, '2025-03-25 13:03:40', '2025-03-26 21:21:09', 12, '', 667, '19b4a840-cf4e-4012-8fae-b1439af74f5a', '', '', '', '', ''), +(3457, '', '', '', '', '', '', '', '', 255, '', 'VARCHAR', 2, '', '', 'Sub-Region (modal)', 'NULL', '', 'a1cdb0a5-517c-425c-998a-333e92af3e32', '\"\"', 1, '2025-03-25 13:03:40', '2025-03-30 21:34:47', 14, '', 667, '19b4a840-cf4e-4012-8fae-b1439af74f5a', '', '', '', '', ''), (3458, '', '', '', '', '', '', '', '', '', '', 'TEXT', '', '', '', 'Subregions (subform)', 'NULL', 6, '7139f2c8-a70a-46a6-bbe3-4eefe54ca515', '\"\"', 1, '2025-03-25 13:54:46', '2025-03-27 14:00:17', 10, '', 1091, 'cb04e362-61c0-4a07-8d80-d13b6939a72c', 'W1tbZmllbGRdXV0gPSBTdXBlcl9fXzlkNzZiOGRjXzM4ODNfNDc1NV9iMTFjXzEzMWQxOWNhOGE1M19fX1Bvd2VyOjpfKCdEYXRhLlN1YmZvcm0nKS0+dGFibGUoJ3N1YnJlZ2lvbicpLT5nZXQoJGl0ZW0tPmd1aWQgPz8gJycgLCdyZWdpb24nLCAnc3VicmVnaW9ucycsIFsnZ3VpZCcsJ25hbWUnLCd3aWtpZGF0YWlkJ10pOw==', 'U3VwZXJfX185ZDc2YjhkY18zODgzXzQ3NTVfYjExY18xMzFkMTljYThhNTNfX19Qb3dlcjo6XygnRGF0YS5TdWJmb3JtJyktPnRhYmxlKCdzdWJyZWdpb24nKS0+c2V0KFtbW2ZpZWxkXV1dID8/IFtdLCAnZ3VpZCcsICdyZWdpb24nLCAkZGF0YVsnZ3VpZCddID8/ICcnKTs=', '', '', ''), (3459, '', '', '', '', '', '', '', '', 64, '', 'VARCHAR', 2, '', '', 'Abbreviation (demo)', 'NULL', '', '201327fe-3067-4316-a155-3fe2a52e05c0', '\"\"', 1, '2025-03-25 13:59:37', '2025-03-26 11:09:19', 8, '', 1035, 'c35e18fa-cade-48b8-b067-6289cc7a0f60', '', '', '', '', ''), (3460, '', '', '', '', '', '', '', '', 255, '', 'VARCHAR', 2, '', '', 'Timezone Identifier (timezone)', 'NULL', '', '201327fe-3067-4316-a155-3fe2a52e05c0', '\"\"', 1, '2025-03-25 14:18:16', '2025-03-26 11:07:44', 4, '', 1092, 'c20d4692-6e97-4441-83bd-561b73730407', '', '', '', '', ''), diff --git a/componentbuilder.xml b/componentbuilder.xml index ab4363f0c..1b2e6a9b4 100644 --- a/componentbuilder.xml +++ b/componentbuilder.xml @@ -7,9 +7,9 @@ https://dev.vdm.io Copyright (C) 2015 Vast Development Method. All rights reserved. GNU General Public License version 2 or later; see LICENSE.txt - 5.1.1-alpha3 + 5.1.1-alpha4 Component Builder (v.5.1.1-alpha3) +

Component Builder (v.5.1.1-alpha4)

The Component Builder for [Joomla](https://extensions.joomla.org/extension/component-builder/) is highly advanced tool that is truly able to build extremely complex components in a fraction of the time. diff --git a/componentbuilder_update_server.xml b/componentbuilder_update_server.xml index 9e29123fe..d5804d674 100644 --- a/componentbuilder_update_server.xml +++ b/componentbuilder_update_server.xml @@ -134,7 +134,7 @@ 5.1.1-alpha https://dev.vdm.io - https://github.com/vdm-io/pkg-component-builder/archive/refs/tags/v5.1.1-alpha3.zip + https://github.com/vdm-io/pkg-component-builder/archive/refs/tags/v5.1.1-alpha4.zip alpha @@ -149,10 +149,10 @@ pkg_component_builder package site - 5.1.1-alpha3 + 5.1.1-alpha4 https://dev.vdm.io - https://github.com/vdm-io/pkg-component-builder/archive/refs/tags/v5.1.1-alpha3.zip + https://github.com/vdm-io/pkg-component-builder/archive/refs/tags/v5.1.1-alpha4.zip alpha