diff --git a/README.md b/README.md index a693fb86..cd312b80 100644 --- a/README.md +++ b/README.md @@ -14,7 +14,7 @@ Tags: salesforce, sync, crm Requires at least: 6.3 Tested up to: 6.5 Requires PHP: 5.6.20 -Stable tag: 2.2.8 +Stable tag: 2.2.9 License: GPLv2 or later License URI: http://www.gnu.org/licenses/gpl-2.0.html diff --git a/changelog.md b/changelog.md index 2d1fc439..e45374f9 100644 --- a/changelog.md +++ b/changelog.md @@ -1,13 +1,14 @@ Changelog ========= -* 2.2.9 (TBD) - * Plugin status: as before, this plugin doesn't have any official maintainers. I'll try to check in if anyone submits pull requests or major issues, and will give updates if/when that status changes. +* 2.2.9 (2024-03-18) + * Plugin status: Plugin status: as before, this plugin doesn't have any official maintainers. I try to check in occasionally if anyone submits pull requests or major issues and merge them if I can do so rather quickly. Updates will be given within the plugin if/when that status changes. * Bug fix: Prevent error on blank WordPress install caused by a string instead of an integer. Thanks to GitHub user @federicojacobi for the pull request. * Maintenance: Remove all uses of `FILTER_SANITIZE_STRING`, since it's deprecated in newer PHP versions. * Maintenance: Update required versions of WordPress to match those [specified by Action Scheduler](https://github.com/woocommerce/action-scheduler/blob/trunk/readme.txt). This has been in effect since Woocommerce made [this 2023 decision](https://developer.woocommerce.com/2023/10/24/action-scheduler-to-adopt-l-2-dependency-version-policy/), but this plugin was not previously clear about that requirement. * Maintenance: Update installed version of Action Scheduler to 3.7.4. * Maintenance: Test plugin in WordPress 6.5 and update compatibility. + * Maintenance: Fix a couple of deprecated warnings that appear in logs in newer php versions * 2.2.8 (2024-01-26) * Plugin status: as before, this plugin doesn't have any official maintainers. I'll try to check in if anyone submits pull requests or major issues, and will give updates if/when that status changes. diff --git a/changelog.txt b/changelog.txt index 2d1fc439..e45374f9 100644 --- a/changelog.txt +++ b/changelog.txt @@ -1,13 +1,14 @@ Changelog ========= -* 2.2.9 (TBD) - * Plugin status: as before, this plugin doesn't have any official maintainers. I'll try to check in if anyone submits pull requests or major issues, and will give updates if/when that status changes. +* 2.2.9 (2024-03-18) + * Plugin status: Plugin status: as before, this plugin doesn't have any official maintainers. I try to check in occasionally if anyone submits pull requests or major issues and merge them if I can do so rather quickly. Updates will be given within the plugin if/when that status changes. * Bug fix: Prevent error on blank WordPress install caused by a string instead of an integer. Thanks to GitHub user @federicojacobi for the pull request. * Maintenance: Remove all uses of `FILTER_SANITIZE_STRING`, since it's deprecated in newer PHP versions. * Maintenance: Update required versions of WordPress to match those [specified by Action Scheduler](https://github.com/woocommerce/action-scheduler/blob/trunk/readme.txt). This has been in effect since Woocommerce made [this 2023 decision](https://developer.woocommerce.com/2023/10/24/action-scheduler-to-adopt-l-2-dependency-version-policy/), but this plugin was not previously clear about that requirement. * Maintenance: Update installed version of Action Scheduler to 3.7.4. * Maintenance: Test plugin in WordPress 6.5 and update compatibility. + * Maintenance: Fix a couple of deprecated warnings that appear in logs in newer php versions * 2.2.8 (2024-01-26) * Plugin status: as before, this plugin doesn't have any official maintainers. I'll try to check in if anyone submits pull requests or major issues, and will give updates if/when that status changes. diff --git a/docs/code/descriptors/0/G/+7VgjXfAKQKoaA6CfrMA b/docs/code/descriptors/0/G/+7VgjXfAKQKoaA6CfrMA index 61717d97..9242532f 100644 Binary files a/docs/code/descriptors/0/G/+7VgjXfAKQKoaA6CfrMA and b/docs/code/descriptors/0/G/+7VgjXfAKQKoaA6CfrMA differ diff --git a/docs/code/descriptors/3/O/TO6iusJoGxFz+Q5t8lGg b/docs/code/descriptors/3/O/TO6iusJoGxFz+Q5t8lGg index 5b8c48b9..ad02d332 100644 Binary files a/docs/code/descriptors/3/O/TO6iusJoGxFz+Q5t8lGg and b/docs/code/descriptors/3/O/TO6iusJoGxFz+Q5t8lGg differ diff --git a/docs/code/descriptors/5/T/S4bgd5GlnP9FPukjJoKw b/docs/code/descriptors/5/T/S4bgd5GlnP9FPukjJoKw index 1f3852b9..7cc1b382 100644 Binary files a/docs/code/descriptors/5/T/S4bgd5GlnP9FPukjJoKw and b/docs/code/descriptors/5/T/S4bgd5GlnP9FPukjJoKw differ diff --git a/docs/code/descriptors/8/B/YUUawcRPu8iqa0H4uRzA b/docs/code/descriptors/8/B/YUUawcRPu8iqa0H4uRzA index 87bba782..14dc82cf 100644 Binary files a/docs/code/descriptors/8/B/YUUawcRPu8iqa0H4uRzA and b/docs/code/descriptors/8/B/YUUawcRPu8iqa0H4uRzA differ diff --git a/docs/code/descriptors/B/-/1+ZFQIQCW6ewPhwya+7A b/docs/code/descriptors/B/-/1+ZFQIQCW6ewPhwya+7A index 112623a7..c30627fd 100644 Binary files a/docs/code/descriptors/B/-/1+ZFQIQCW6ewPhwya+7A and b/docs/code/descriptors/B/-/1+ZFQIQCW6ewPhwya+7A differ diff --git a/docs/code/descriptors/C/C/kht7TWrAW3Zyu5uTdcQQ b/docs/code/descriptors/C/C/kht7TWrAW3Zyu5uTdcQQ index c727e60b..55b142da 100644 Binary files a/docs/code/descriptors/C/C/kht7TWrAW3Zyu5uTdcQQ and b/docs/code/descriptors/C/C/kht7TWrAW3Zyu5uTdcQQ differ diff --git a/docs/code/descriptors/C/P/QzamooI5tyvbw57Vo4UA b/docs/code/descriptors/C/P/QzamooI5tyvbw57Vo4UA index 9aa43fc0..ea3a8cd8 100644 Binary files a/docs/code/descriptors/C/P/QzamooI5tyvbw57Vo4UA and b/docs/code/descriptors/C/P/QzamooI5tyvbw57Vo4UA differ diff --git a/docs/code/descriptors/D/D/m0G1Z9xVFKtNtCQFoi5w b/docs/code/descriptors/D/D/m0G1Z9xVFKtNtCQFoi5w index 83c7afb4..811c6aca 100644 --- a/docs/code/descriptors/D/D/m0G1Z9xVFKtNtCQFoi5w +++ b/docs/code/descriptors/D/D/m0G1Z9xVFKtNtCQFoi5w @@ -1,3 +1,3 @@ -1747557215 +1747619881 gFFBC%2BJB4H%3AphpDocumentor-projectDescriptor-filelist a:20:{i:0;s:70:"phpDocumentor-projectDescriptor-files-a197e16b2a6efaafc88a9ced4787a498";i:1;s:70:"phpDocumentor-projectDescriptor-files-c54f0561f508342becf326dd573d67f1";i:2;s:70:"phpDocumentor-projectDescriptor-files-cbc33ccccab98f739916428912712005";i:3;s:70:"phpDocumentor-projectDescriptor-files-c23130d9f2401a6b3d8e8cc0b318d5f5";i:4;s:70:"phpDocumentor-projectDescriptor-files-ac31461483f378c45fd79a3bc4a278f7";i:5;s:70:"phpDocumentor-projectDescriptor-files-0b92437b7c3d65a3e524d59bb5f365fc";i:6;s:70:"phpDocumentor-projectDescriptor-files-00b003fcb5ae23fd23d218064bc156a0";i:7;s:70:"phpDocumentor-projectDescriptor-files-71cb9101900faab78d5e042d4c7be950";i:8;s:70:"phpDocumentor-projectDescriptor-files-9e2f10484fc8232b68f4b08936085e38";i:9;s:70:"phpDocumentor-projectDescriptor-files-d2d3e6048fdf494850552cc81e1da9b0";i:10;s:70:"phpDocumentor-projectDescriptor-files-8a2841e07bdce0d0d65a7570f61e7f2c";i:11;s:70:"phpDocumentor-projectDescriptor-files-a3d429d347a190e48f8b25b9e931be13";i:12;s:70:"phpDocumentor-projectDescriptor-files-04a7ed2e6fb0a3a9667314412e25c5de";i:13;s:70:"phpDocumentor-projectDescriptor-files-f9be6a4d427bb37703a7c421b734254a";i:14;s:70:"phpDocumentor-projectDescriptor-files-9661ac8873f1e1c9f12dbaea51266d62";i:15;s:70:"phpDocumentor-projectDescriptor-files-27205ab2caa20f664d8b13529d7b6f8b";i:16;s:70:"phpDocumentor-projectDescriptor-files-45763d6b2355a3b1ce455dad3cacbc75";i:17;s:70:"phpDocumentor-projectDescriptor-files-0db900c722f7e7efe25b2dd3f780ac94";i:18;s:70:"phpDocumentor-projectDescriptor-files-86b47aa138dc286c582dd6d52721ec27";i:19;s:70:"phpDocumentor-projectDescriptor-files-1e6eb137ec04d15b065e6fc5822ca51c";} \ No newline at end of file diff --git a/docs/code/descriptors/D/Z/M+Ras2gGnth7Tav5HLMw b/docs/code/descriptors/D/Z/M+Ras2gGnth7Tav5HLMw index 4d27260c..d90517a0 100644 Binary files a/docs/code/descriptors/D/Z/M+Ras2gGnth7Tav5HLMw and b/docs/code/descriptors/D/Z/M+Ras2gGnth7Tav5HLMw differ diff --git a/docs/code/descriptors/I/2/Lzc4Rv8B36jFwSeAdvOw b/docs/code/descriptors/I/2/Lzc4Rv8B36jFwSeAdvOw index 79e21934..51ea6a12 100644 Binary files a/docs/code/descriptors/I/2/Lzc4Rv8B36jFwSeAdvOw and b/docs/code/descriptors/I/2/Lzc4Rv8B36jFwSeAdvOw differ diff --git a/docs/code/descriptors/I/P/IsZ+pa6gN2Lk1CPVVTag b/docs/code/descriptors/I/P/IsZ+pa6gN2Lk1CPVVTag index ac019368..dcbc1112 100644 Binary files a/docs/code/descriptors/I/P/IsZ+pa6gN2Lk1CPVVTag and b/docs/code/descriptors/I/P/IsZ+pa6gN2Lk1CPVVTag differ diff --git a/docs/code/descriptors/K/Q/5wyEdhMAa8gmNSqb5hxQ b/docs/code/descriptors/K/Q/5wyEdhMAa8gmNSqb5hxQ index 6483655a..8157cea7 100644 Binary files a/docs/code/descriptors/K/Q/5wyEdhMAa8gmNSqb5hxQ and b/docs/code/descriptors/K/Q/5wyEdhMAa8gmNSqb5hxQ differ diff --git a/docs/code/descriptors/L/K/gmm8kpZ97JfNG1Atj-3g b/docs/code/descriptors/L/K/gmm8kpZ97JfNG1Atj-3g index b3a5ca66..73eb8745 100644 Binary files a/docs/code/descriptors/L/K/gmm8kpZ97JfNG1Atj-3g and b/docs/code/descriptors/L/K/gmm8kpZ97JfNG1Atj-3g differ diff --git a/docs/code/descriptors/L/W/IhoQA4tk2+AJ66PYubTw b/docs/code/descriptors/L/W/IhoQA4tk2+AJ66PYubTw index 60da77e2..e32f4037 100644 Binary files a/docs/code/descriptors/L/W/IhoQA4tk2+AJ66PYubTw and b/docs/code/descriptors/L/W/IhoQA4tk2+AJ66PYubTw differ diff --git a/docs/code/descriptors/M/O/-K+YQ-4Nbl8DuVY65zbA b/docs/code/descriptors/M/O/-K+YQ-4Nbl8DuVY65zbA index 45832a9e..80c083ca 100644 Binary files a/docs/code/descriptors/M/O/-K+YQ-4Nbl8DuVY65zbA and b/docs/code/descriptors/M/O/-K+YQ-4Nbl8DuVY65zbA differ diff --git a/docs/code/descriptors/N/K/Y016h91Dbee8CwXjhvng b/docs/code/descriptors/N/K/Y016h91Dbee8CwXjhvng index 6cbc1a5d..2efa7701 100644 Binary files a/docs/code/descriptors/N/K/Y016h91Dbee8CwXjhvng and b/docs/code/descriptors/N/K/Y016h91Dbee8CwXjhvng differ diff --git a/docs/code/descriptors/O/R/8hCFVjL2Mft4c+KHvO2g b/docs/code/descriptors/O/R/8hCFVjL2Mft4c+KHvO2g index cffd6b20..21cd5063 100644 Binary files a/docs/code/descriptors/O/R/8hCFVjL2Mft4c+KHvO2g and b/docs/code/descriptors/O/R/8hCFVjL2Mft4c+KHvO2g differ diff --git a/docs/code/descriptors/V/X/BlA7hbhOXKDmRnbkVcaQ b/docs/code/descriptors/V/X/BlA7hbhOXKDmRnbkVcaQ index 0e067d30..d2e8fa34 100644 Binary files a/docs/code/descriptors/V/X/BlA7hbhOXKDmRnbkVcaQ and b/docs/code/descriptors/V/X/BlA7hbhOXKDmRnbkVcaQ differ diff --git a/docs/code/descriptors/W/F/bL0cpVWs5Zk+-ryT1CXw b/docs/code/descriptors/W/F/bL0cpVWs5Zk+-ryT1CXw index e76a28f2..b2210b90 100644 Binary files a/docs/code/descriptors/W/F/bL0cpVWs5Zk+-ryT1CXw and b/docs/code/descriptors/W/F/bL0cpVWs5Zk+-ryT1CXw differ diff --git a/docs/code/descriptors/X/1/9WEmmzoHqbtqWEq7XVeQ b/docs/code/descriptors/X/1/9WEmmzoHqbtqWEq7XVeQ index f7fd29ad..faf2e347 100644 Binary files a/docs/code/descriptors/X/1/9WEmmzoHqbtqWEq7XVeQ and b/docs/code/descriptors/X/1/9WEmmzoHqbtqWEq7XVeQ differ diff --git a/docs/code/descriptors/X/V/WxXrMkRMavVIyynhUhfg b/docs/code/descriptors/X/V/WxXrMkRMavVIyynhUhfg index b2517cfc..e61f02c3 100644 Binary files a/docs/code/descriptors/X/V/WxXrMkRMavVIyynhUhfg and b/docs/code/descriptors/X/V/WxXrMkRMavVIyynhUhfg differ diff --git a/docs/code/descriptors/Y/X/QOO+wTwFKqCrRIHZ8bKw b/docs/code/descriptors/Y/X/QOO+wTwFKqCrRIHZ8bKw index 02163702..b1adb443 100644 Binary files a/docs/code/descriptors/Y/X/QOO+wTwFKqCrRIHZ8bKw and b/docs/code/descriptors/Y/X/QOO+wTwFKqCrRIHZ8bKw differ diff --git a/docs/code/files/9/3/Jq6NNFY46w2JIl8QRDSw b/docs/code/files/9/3/Jq6NNFY46w2JIl8QRDSw new file mode 100644 index 00000000..9192113b --- /dev/null +++ b/docs/code/files/9/3/Jq6NNFY46w2JIl8QRDSw @@ -0,0 +1,3 @@ +1747619702 +waR3U4bTeM%3A1e6eb137ec04d15b065e6fc5822ca51c-8472973981dc85566e94b2d6b9ed6488 +s:20744:"TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlIjoxNDp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6MTQ5OiJQbHVnaW4gTmFtZTogT2JqZWN0IFN5bmMgZm9yIFNhbGVzZm9yY2UKRGVzY3JpcHRpb246IE9iamVjdCBTeW5jIGZvciBTYWxlc2ZvcmNlIG1hcHMgYW5kIHN5bmNzIGRhdGEgYmV0d2VlbiBTYWxlc2ZvcmNlIG9iamVjdHMgYW5kIFdvcmRQcmVzcyBvYmplY3RzLiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoxNzk6IlZlcnNpb246IDIuMi45CkF1dGhvcjogTWlublBvc3QKQXV0aG9yIFVSSTogaHR0cHM6Ly9jb2RlLm1pbm5wb3N0LmNvbQpMaWNlbnNlOiBHUEwyKwpMaWNlbnNlIFVSSTogaHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwtMi4wLmh0bWwKVGV4dCBEb21haW46IG9iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXEdlbmVyaWMiOjI6e3M6NzoiACoAbmFtZSI7czo3OiJwYWNrYWdlIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoyMjoiT2JqZWN0X1N5bmNfU2FsZXNmb3JjZSI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAaGFzaCI7czozMjoiODQ3Mjk3Mzk4MWRjODU1NjZlOTRiMmQ2YjllZDY0ODgiO3M6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAbmFtZSI7czozMDoib2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UucGhwIjtzOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAHBhdGgiO3M6MzA6Im9iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlLnBocCI7czo0MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBzb3VyY2UiO3M6MTUwOToiPD9waHAKLyoqCiAqIFBsdWdpbiBOYW1lOiBPYmplY3QgU3luYyBmb3IgU2FsZXNmb3JjZQogKiBEZXNjcmlwdGlvbjogT2JqZWN0IFN5bmMgZm9yIFNhbGVzZm9yY2UgbWFwcyBhbmQgc3luY3MgZGF0YSBiZXR3ZWVuIFNhbGVzZm9yY2Ugb2JqZWN0cyBhbmQgV29yZFByZXNzIG9iamVjdHMuCiAqIFZlcnNpb246IDIuMi45CiAqIEF1dGhvcjogTWlublBvc3QKICogQXV0aG9yIFVSSTogaHR0cHM6Ly9jb2RlLm1pbm5wb3N0LmNvbQogKiBMaWNlbnNlOiBHUEwyKwogKiBMaWNlbnNlIFVSSTogaHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwtMi4wLmh0bWwKICogVGV4dCBEb21haW46IG9iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlCiAqCiAqIEBwYWNrYWdlIE9iamVjdF9TeW5jX1NhbGVzZm9yY2UKICovCgovKiBFeGl0IGlmIGFjY2Vzc2VkIGRpcmVjdGx5ICovCmlmICggISBkZWZpbmVkKCAnQUJTUEFUSCcgKSApIHsKCXJldHVybjsKfQoKLyoqCiAqIFRoZSBmdWxsIHBhdGggdG8gdGhlIG1haW4gZmlsZSBvZiB0aGlzIHBsdWdpbgogKgogKiBUaGlzIGNhbiBsYXRlciBiZSBwYXNzZWQgdG8gZnVuY3Rpb25zIHN1Y2ggYXMKICogcGx1Z2luX2Rpcl9wYXRoKCksIHBsdWdpbnNfdXJsKCkgYW5kIHBsdWdpbl9iYXNlbmFtZSgpCiAqIHRvIHJldHJpZXZlIGluZm9ybWF0aW9uIGFib3V0IHBsdWdpbiBwYXRocwogKgogKiBAc2luY2UgMi4wLjAKICogQHZhciBzdHJpbmcKICovCmRlZmluZSggJ09CSkVDVF9TWU5DX1NGX0ZJTEUnLCBfX0ZJTEVfXyApOwoKLyoqCiAqIFRoZSBwbHVnaW4ncyBjdXJyZW50IHZlcnNpb24KICoKICogQHNpbmNlIDIuMC4wCiAqIEB2YXIgc3RyaW5nCiAqLwpkZWZpbmUoICdPQkpFQ1RfU1lOQ19TRl9WRVJTSU9OJywgJzIuMi45JyApOwoKLyoqCiAqIFRoZSBkZWZhdWx0IFNhbGVzZm9yY2UgQVBJIHZlcnNpb24sIHVubGVzcyBpdCBoYXMgYmVlbiBvdmVycmlkZGVuIGJ5IHByZS1leGlzdGluZyBvcHRpb24gb3IgYnkgZGV2ZWxvcGVycwogKgogKiBAc2luY2UgMi4wLjAKICogQHZhciBzdHJpbmcKICovCmRlZmluZSggJ09CSkVDVF9TWU5DX1NGX0RFRkFVTFRfQVBJX1ZFUlNJT04nLCAnNjAuMCcgKTsKCi8vIExvYWQgdGhlIGF1dG9sb2FkZXIuCnJlcXVpcmVfb25jZSAnbGliL2F1dG9sb2FkZXIucGhwJzsKCi8qKgogKiBSZXRyaWV2ZSB0aGUgaW5zdGFuY2Ugb2YgdGhlIG1haW4gcGx1Z2luIGNsYXNzCiAqCiAqIEBzaW5jZSAyLjAuMAogKiBAcmV0dXJuIE9iamVjdF9TeW5jX1NhbGVzZm9yY2UKICovCmZ1bmN0aW9uIG9iamVjdF9zeW5jX2Zvcl9zYWxlc2ZvcmNlKCkgewoJc3RhdGljICRwbHVnaW47CgoJaWYgKCBpc19udWxsKCAkcGx1Z2luICkgKSB7CgkJJHBsdWdpbiA9IG5ldyBPYmplY3RfU3luY19TYWxlc2ZvcmNlKCBPQkpFQ1RfU1lOQ19TRl9WRVJTSU9OLCBPQkpFQ1RfU1lOQ19TRl9GSUxFICk7Cgl9CgoJcmV0dXJuICRwbHVnaW47Cn0KCm9iamVjdF9zeW5jX2Zvcl9zYWxlc2ZvcmNlKCktPmluaXQoKTsKIjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAG5hbWVzcGFjZXMiO2E6MDp7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAaW5jbHVkZXMiO2E6MDp7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAZnVuY3Rpb25zIjthOjE6e3M6Mjk6IlxvYmplY3Rfc3luY19mb3Jfc2FsZXNmb3JjZSgpIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZ1bmN0aW9uXyI6ODp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRnVuY3Rpb25fAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6Mjk6IlxvYmplY3Rfc3luY19mb3Jfc2FsZXNmb3JjZSgpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MjY6Im9iamVjdF9zeW5jX2Zvcl9zYWxlc2ZvcmNlIjt9czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRnVuY3Rpb25fAGFyZ3VtZW50cyI7YTowOnt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRnVuY3Rpb25fAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo0NjoiUmV0cmlldmUgdGhlIGluc3RhbmNlIG9mIHRoZSBtYWluIHBsdWdpbiBjbGFzcyI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToyOntpOjA7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcU2luY2UiOjM6e3M6NzoiACoAbmFtZSI7czo1OiJzaW5jZSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjUzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcU2luY2UAdmVyc2lvbiI7czo1OiIyLjAuMCI7fWk6MTtPOjQ2OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xSZXR1cm5fIjozOntzOjc6IgAqAG5hbWUiO3M6NjoicmV0dXJuIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjIzOiJcT2JqZWN0X1N5bmNfU2FsZXNmb3JjZSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjIyOiJPYmplY3RfU3luY19TYWxlc2ZvcmNlIjt9fX19czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGdW5jdGlvbl8AbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjU3O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZ1bmN0aW9uXwBlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NjU7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRnVuY3Rpb25fAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjYwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGdW5jdGlvbl8AaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGdW5jdGlvbl8AbWV0YWRhdGEiO2E6MDp7fX19czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBjb25zdGFudHMiO2E6Mzp7czoyMDoiXE9CSkVDVF9TWU5DX1NGX0ZJTEUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQiOjg6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MjA6IlxPQkpFQ1RfU1lOQ19TRl9GSUxFIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTk6Ik9CSkVDVF9TWU5DX1NGX0ZJTEUiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6NDU6IlRoZSBmdWxsIHBhdGggdG8gdGhlIG1haW4gZmlsZSBvZiB0aGlzIHBsdWdpbiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoxNDM6IlRoaXMgY2FuIGxhdGVyIGJlIHBhc3NlZCB0byBmdW5jdGlvbnMgc3VjaCBhcwpwbHVnaW5fZGlyX3BhdGgoKSwgcGx1Z2luc191cmwoKSBhbmQgcGx1Z2luX2Jhc2VuYW1lKCkKdG8gcmV0cmlldmUgaW5mb3JtYXRpb24gYWJvdXQgcGx1Z2luIHBhdGhzIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6Mjp7aTowO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFNpbmNlIjozOntzOjc6IgAqAG5hbWUiO3M6NToic2luY2UiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo1MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFNpbmNlAHZlcnNpb24iO3M6NToiMi4wLjAiO31pOjE7Tzo0MzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcVmFyXyI6NDp7czo3OiIAKgBuYW1lIjtzOjM6InZhciI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czoxNToiACoAdmFyaWFibGVOYW1lIjtzOjA6IiI7fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AHZhbHVlIjtzOjg6Il9fRklMRV9fIjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MzA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjMwO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AGZpbmFsIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAbWV0YWRhdGEiO2E6MDp7fX1zOjIzOiJcT0JKRUNUX1NZTkNfU0ZfVkVSU0lPTiI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudCI6ODp7czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czoyMzoiXE9CSkVDVF9TWU5DX1NGX1ZFUlNJT04iO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoyMjoiT0JKRUNUX1NZTkNfU0ZfVkVSU0lPTiI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czoyODoiVGhlIHBsdWdpbidzIGN1cnJlbnQgdmVyc2lvbiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToyOntpOjA7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcU2luY2UiOjM6e3M6NzoiACoAbmFtZSI7czo1OiJzaW5jZSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjUzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcU2luY2UAdmVyc2lvbiI7czo1OiIyLjAuMCI7fWk6MTtPOjQzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xWYXJfIjo0OntzOjc6IgAqAG5hbWUiO3M6MzoidmFyIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjE1OiIAKgB2YXJpYWJsZU5hbWUiO3M6MDoiIjt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAdmFsdWUiO3M6NzoiJzIuMi45JyI7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjM4O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTozODtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABmaW5hbCI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AG1ldGFkYXRhIjthOjA6e319czozNToiXE9CSkVDVF9TWU5DX1NGX0RFRkFVTFRfQVBJX1ZFUlNJT04iO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQiOjg6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MzU6IlxPQkpFQ1RfU1lOQ19TRl9ERUZBVUxUX0FQSV9WRVJTSU9OIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MzQ6Ik9CSkVDVF9TWU5DX1NGX0RFRkFVTFRfQVBJX1ZFUlNJT04iO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6MTA1OiJUaGUgZGVmYXVsdCBTYWxlc2ZvcmNlIEFQSSB2ZXJzaW9uLCB1bmxlc3MgaXQgaGFzIGJlZW4gb3ZlcnJpZGRlbiBieSBwcmUtZXhpc3Rpbmcgb3B0aW9uIG9yIGJ5IGRldmVsb3BlcnMiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6Mjp7aTowO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFNpbmNlIjozOntzOjc6IgAqAG5hbWUiO3M6NToic2luY2UiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo1MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFNpbmNlAHZlcnNpb24iO3M6NToiMi4wLjAiO31pOjE7Tzo0MzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcVmFyXyI6NDp7czo3OiIAKgBuYW1lIjtzOjM6InZhciI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czoxNToiACoAdmFyaWFibGVOYW1lIjtzOjA6IiI7fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AHZhbHVlIjtzOjY6Iic2MC4wJyI7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjQ2O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo0NjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABmaW5hbCI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AG1ldGFkYXRhIjthOjA6e319fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAY2xhc3NlcyI7YTowOnt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBpbnRlcmZhY2VzIjthOjA6e31zOjQxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAHRyYWl0cyI7YTowOnt9czo0MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBlbnVtcyI7YTowOnt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBtZXRhZGF0YSI7YTowOnt9fQ=="; \ No newline at end of file diff --git a/docs/code/files/E/-/fKHykXn5mVTHM8edNpdA b/docs/code/files/E/-/fKHykXn5mVTHM8edNpdA new file mode 100644 index 00000000..bb8f32df --- /dev/null +++ b/docs/code/files/E/-/fKHykXn5mVTHM8edNpdA @@ -0,0 +1,3 @@ +1747619881 +waR3U4bTeM%3A1e6eb137ec04d15b065e6fc5822ca51c-661cc0fc45e9ec32f0e4fa99aff9aee5 +s:20744:"TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlIjoxNDp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6MTQ5OiJQbHVnaW4gTmFtZTogT2JqZWN0IFN5bmMgZm9yIFNhbGVzZm9yY2UKRGVzY3JpcHRpb246IE9iamVjdCBTeW5jIGZvciBTYWxlc2ZvcmNlIG1hcHMgYW5kIHN5bmNzIGRhdGEgYmV0d2VlbiBTYWxlc2ZvcmNlIG9iamVjdHMgYW5kIFdvcmRQcmVzcyBvYmplY3RzLiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoxNzk6IlZlcnNpb246IDIuMi45CkF1dGhvcjogTWlublBvc3QKQXV0aG9yIFVSSTogaHR0cHM6Ly9jb2RlLm1pbm5wb3N0LmNvbQpMaWNlbnNlOiBHUEwyKwpMaWNlbnNlIFVSSTogaHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwtMi4wLmh0bWwKVGV4dCBEb21haW46IG9iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXEdlbmVyaWMiOjI6e3M6NzoiACoAbmFtZSI7czo3OiJwYWNrYWdlIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoyMjoiT2JqZWN0X1N5bmNfU2FsZXNmb3JjZSI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAaGFzaCI7czozMjoiNjYxY2MwZmM0NWU5ZWMzMmYwZTRmYTk5YWZmOWFlZTUiO3M6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAbmFtZSI7czozMDoib2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UucGhwIjtzOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAHBhdGgiO3M6MzA6Im9iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlLnBocCI7czo0MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBzb3VyY2UiO3M6MTUwOToiPD9waHAKLyoqCiAqIFBsdWdpbiBOYW1lOiBPYmplY3QgU3luYyBmb3IgU2FsZXNmb3JjZQogKiBEZXNjcmlwdGlvbjogT2JqZWN0IFN5bmMgZm9yIFNhbGVzZm9yY2UgbWFwcyBhbmQgc3luY3MgZGF0YSBiZXR3ZWVuIFNhbGVzZm9yY2Ugb2JqZWN0cyBhbmQgV29yZFByZXNzIG9iamVjdHMuCiAqIFZlcnNpb246IDIuMi45CiAqIEF1dGhvcjogTWlublBvc3QKICogQXV0aG9yIFVSSTogaHR0cHM6Ly9jb2RlLm1pbm5wb3N0LmNvbQogKiBMaWNlbnNlOiBHUEwyKwogKiBMaWNlbnNlIFVSSTogaHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwtMi4wLmh0bWwKICogVGV4dCBEb21haW46IG9iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlCiAqCiAqIEBwYWNrYWdlIE9iamVjdF9TeW5jX1NhbGVzZm9yY2UKICovCgovKiBFeGl0IGlmIGFjY2Vzc2VkIGRpcmVjdGx5ICovCmlmICggISBkZWZpbmVkKCAnQUJTUEFUSCcgKSApIHsKCXJldHVybjsKfQoKLyoqCiAqIFRoZSBmdWxsIHBhdGggdG8gdGhlIG1haW4gZmlsZSBvZiB0aGlzIHBsdWdpbgogKgogKiBUaGlzIGNhbiBsYXRlciBiZSBwYXNzZWQgdG8gZnVuY3Rpb25zIHN1Y2ggYXMKICogcGx1Z2luX2Rpcl9wYXRoKCksIHBsdWdpbnNfdXJsKCkgYW5kIHBsdWdpbl9iYXNlbmFtZSgpCiAqIHRvIHJldHJpZXZlIGluZm9ybWF0aW9uIGFib3V0IHBsdWdpbiBwYXRocwogKgogKiBAc2luY2UgMi4wLjAKICogQHZhciBzdHJpbmcKICovCmRlZmluZSggJ09CSkVDVF9TWU5DX1NGX0ZJTEUnLCBfX0ZJTEVfXyApOwoKLyoqCiAqIFRoZSBwbHVnaW4ncyBjdXJyZW50IHZlcnNpb24KICoKICogQHNpbmNlIDIuMC4wCiAqIEB2YXIgc3RyaW5nCiAqLwpkZWZpbmUoICdPQkpFQ1RfU1lOQ19TRl9WRVJTSU9OJywgJzIuMi45JyApOwoKLyoqCiAqIFRoZSBkZWZhdWx0IFNhbGVzZm9yY2UgQVBJIHZlcnNpb24sIHVubGVzcyBpdCBoYXMgYmVlbiBvdmVycmlkZGVuIGJ5IHByZS1leGlzdGluZyBvcHRpb24gb3IgYnkgZGV2ZWxvcGVycwogKgogKiBAc2luY2UgMi4wLjAKICogQHZhciBzdHJpbmcKICovCmRlZmluZSggJ09CSkVDVF9TWU5DX1NGX0RFRkFVTFRfQVBJX1ZFUlNJT04nLCAnNTUuMCcgKTsKCi8vIExvYWQgdGhlIGF1dG9sb2FkZXIuCnJlcXVpcmVfb25jZSAnbGliL2F1dG9sb2FkZXIucGhwJzsKCi8qKgogKiBSZXRyaWV2ZSB0aGUgaW5zdGFuY2Ugb2YgdGhlIG1haW4gcGx1Z2luIGNsYXNzCiAqCiAqIEBzaW5jZSAyLjAuMAogKiBAcmV0dXJuIE9iamVjdF9TeW5jX1NhbGVzZm9yY2UKICovCmZ1bmN0aW9uIG9iamVjdF9zeW5jX2Zvcl9zYWxlc2ZvcmNlKCkgewoJc3RhdGljICRwbHVnaW47CgoJaWYgKCBpc19udWxsKCAkcGx1Z2luICkgKSB7CgkJJHBsdWdpbiA9IG5ldyBPYmplY3RfU3luY19TYWxlc2ZvcmNlKCBPQkpFQ1RfU1lOQ19TRl9WRVJTSU9OLCBPQkpFQ1RfU1lOQ19TRl9GSUxFICk7Cgl9CgoJcmV0dXJuICRwbHVnaW47Cn0KCm9iamVjdF9zeW5jX2Zvcl9zYWxlc2ZvcmNlKCktPmluaXQoKTsKIjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAG5hbWVzcGFjZXMiO2E6MDp7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAaW5jbHVkZXMiO2E6MDp7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAZnVuY3Rpb25zIjthOjE6e3M6Mjk6IlxvYmplY3Rfc3luY19mb3Jfc2FsZXNmb3JjZSgpIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZ1bmN0aW9uXyI6ODp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRnVuY3Rpb25fAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6Mjk6IlxvYmplY3Rfc3luY19mb3Jfc2FsZXNmb3JjZSgpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MjY6Im9iamVjdF9zeW5jX2Zvcl9zYWxlc2ZvcmNlIjt9czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRnVuY3Rpb25fAGFyZ3VtZW50cyI7YTowOnt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRnVuY3Rpb25fAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo0NjoiUmV0cmlldmUgdGhlIGluc3RhbmNlIG9mIHRoZSBtYWluIHBsdWdpbiBjbGFzcyI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToyOntpOjA7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcU2luY2UiOjM6e3M6NzoiACoAbmFtZSI7czo1OiJzaW5jZSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjUzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcU2luY2UAdmVyc2lvbiI7czo1OiIyLjAuMCI7fWk6MTtPOjQ2OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xSZXR1cm5fIjozOntzOjc6IgAqAG5hbWUiO3M6NjoicmV0dXJuIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjIzOiJcT2JqZWN0X1N5bmNfU2FsZXNmb3JjZSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjIyOiJPYmplY3RfU3luY19TYWxlc2ZvcmNlIjt9fX19czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGdW5jdGlvbl8AbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjU3O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZ1bmN0aW9uXwBlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NjU7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRnVuY3Rpb25fAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjYwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGdW5jdGlvbl8AaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGdW5jdGlvbl8AbWV0YWRhdGEiO2E6MDp7fX19czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBjb25zdGFudHMiO2E6Mzp7czoyMDoiXE9CSkVDVF9TWU5DX1NGX0ZJTEUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQiOjg6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MjA6IlxPQkpFQ1RfU1lOQ19TRl9GSUxFIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTk6Ik9CSkVDVF9TWU5DX1NGX0ZJTEUiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6NDU6IlRoZSBmdWxsIHBhdGggdG8gdGhlIG1haW4gZmlsZSBvZiB0aGlzIHBsdWdpbiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoxNDM6IlRoaXMgY2FuIGxhdGVyIGJlIHBhc3NlZCB0byBmdW5jdGlvbnMgc3VjaCBhcwpwbHVnaW5fZGlyX3BhdGgoKSwgcGx1Z2luc191cmwoKSBhbmQgcGx1Z2luX2Jhc2VuYW1lKCkKdG8gcmV0cmlldmUgaW5mb3JtYXRpb24gYWJvdXQgcGx1Z2luIHBhdGhzIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6Mjp7aTowO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFNpbmNlIjozOntzOjc6IgAqAG5hbWUiO3M6NToic2luY2UiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo1MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFNpbmNlAHZlcnNpb24iO3M6NToiMi4wLjAiO31pOjE7Tzo0MzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcVmFyXyI6NDp7czo3OiIAKgBuYW1lIjtzOjM6InZhciI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czoxNToiACoAdmFyaWFibGVOYW1lIjtzOjA6IiI7fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AHZhbHVlIjtzOjg6Il9fRklMRV9fIjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MzA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjMwO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AGZpbmFsIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAbWV0YWRhdGEiO2E6MDp7fX1zOjIzOiJcT0JKRUNUX1NZTkNfU0ZfVkVSU0lPTiI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudCI6ODp7czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czoyMzoiXE9CSkVDVF9TWU5DX1NGX1ZFUlNJT04iO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoyMjoiT0JKRUNUX1NZTkNfU0ZfVkVSU0lPTiI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czoyODoiVGhlIHBsdWdpbidzIGN1cnJlbnQgdmVyc2lvbiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToyOntpOjA7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcU2luY2UiOjM6e3M6NzoiACoAbmFtZSI7czo1OiJzaW5jZSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjUzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcU2luY2UAdmVyc2lvbiI7czo1OiIyLjAuMCI7fWk6MTtPOjQzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xWYXJfIjo0OntzOjc6IgAqAG5hbWUiO3M6MzoidmFyIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjE1OiIAKgB2YXJpYWJsZU5hbWUiO3M6MDoiIjt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAdmFsdWUiO3M6NzoiJzIuMi45JyI7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjM4O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTozODtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABmaW5hbCI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AG1ldGFkYXRhIjthOjA6e319czozNToiXE9CSkVDVF9TWU5DX1NGX0RFRkFVTFRfQVBJX1ZFUlNJT04iO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQiOjg6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MzU6IlxPQkpFQ1RfU1lOQ19TRl9ERUZBVUxUX0FQSV9WRVJTSU9OIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MzQ6Ik9CSkVDVF9TWU5DX1NGX0RFRkFVTFRfQVBJX1ZFUlNJT04iO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6MTA1OiJUaGUgZGVmYXVsdCBTYWxlc2ZvcmNlIEFQSSB2ZXJzaW9uLCB1bmxlc3MgaXQgaGFzIGJlZW4gb3ZlcnJpZGRlbiBieSBwcmUtZXhpc3Rpbmcgb3B0aW9uIG9yIGJ5IGRldmVsb3BlcnMiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6Mjp7aTowO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFNpbmNlIjozOntzOjc6IgAqAG5hbWUiO3M6NToic2luY2UiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo1MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFNpbmNlAHZlcnNpb24iO3M6NToiMi4wLjAiO31pOjE7Tzo0MzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcVmFyXyI6NDp7czo3OiIAKgBuYW1lIjtzOjM6InZhciI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czoxNToiACoAdmFyaWFibGVOYW1lIjtzOjA6IiI7fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AHZhbHVlIjtzOjY6Iic1NS4wJyI7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjQ2O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo0NjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABmaW5hbCI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AG1ldGFkYXRhIjthOjA6e319fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAY2xhc3NlcyI7YTowOnt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBpbnRlcmZhY2VzIjthOjA6e31zOjQxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAHRyYWl0cyI7YTowOnt9czo0MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBlbnVtcyI7YTowOnt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBtZXRhZGF0YSI7YTowOnt9fQ=="; \ No newline at end of file diff --git a/docs/code/files/object-sync-for-salesforce.html b/docs/code/files/object-sync-for-salesforce.html index dd3319a0..d26030ed 100644 --- a/docs/code/files/object-sync-for-salesforce.html +++ b/docs/code/files/object-sync-for-salesforce.html @@ -93,7 +93,7 @@

object-sync-for-salesforce.php

Plugin Name: Object Sync for Salesforce Description: Object Sync for Salesforce maps and syncs data between Salesforce objects and WordPress objects.

-

Version: 2.2.8 +

Version: 2.2.9 Author: MinnPost Author URI: https://code.minnpost.com License: GPL2+ @@ -131,7 +131,7 @@

OBJECT_SYNC_SF_VERSION -  = '2.2.8' +  = '2.2.9'
The plugin's current version
@@ -259,7 +259,7 @@

public string OBJECT_SYNC_SF_VERSION - = '2.2.8' + = '2.2.9' diff --git a/docs/code/index.html b/docs/code/index.html index 3cc5098f..1e8ac5bd 100644 --- a/docs/code/index.html +++ b/docs/code/index.html @@ -167,7 +167,7 @@

OBJECT_SYNC_SF_VERSION -  = '2.2.8' +  = '2.2.9'
The plugin's current version
@@ -293,7 +293,7 @@

public string OBJECT_SYNC_SF_VERSION - = '2.2.8' + = '2.2.9' diff --git a/docs/code/namespaces/default.html b/docs/code/namespaces/default.html index 98cb12f6..7a59c765 100644 --- a/docs/code/namespaces/default.html +++ b/docs/code/namespaces/default.html @@ -162,7 +162,7 @@

OBJECT_SYNC_SF_VERSION -  = '2.2.8' +  = '2.2.9'
The plugin's current version
@@ -288,7 +288,7 @@

public string OBJECT_SYNC_SF_VERSION - = '2.2.8' + = '2.2.9' diff --git a/docs/code/packages/Object-Sync-Salesforce.html b/docs/code/packages/Object-Sync-Salesforce.html index 115b8b9d..3307ccf6 100644 --- a/docs/code/packages/Object-Sync-Salesforce.html +++ b/docs/code/packages/Object-Sync-Salesforce.html @@ -164,7 +164,7 @@

OBJECT_SYNC_SF_VERSION -  = '2.2.8' +  = '2.2.9'
The plugin's current version
@@ -290,7 +290,7 @@

public string OBJECT_SYNC_SF_VERSION - = '2.2.8' + = '2.2.9' diff --git a/object-sync-for-salesforce.php b/object-sync-for-salesforce.php index fe39886b..8b2aaaa4 100755 --- a/object-sync-for-salesforce.php +++ b/object-sync-for-salesforce.php @@ -2,7 +2,7 @@ /** * Plugin Name: Object Sync for Salesforce * Description: Object Sync for Salesforce maps and syncs data between Salesforce objects and WordPress objects. - * Version: 2.2.8 + * Version: 2.2.9 * Author: MinnPost * Author URI: https://code.minnpost.com * License: GPL2+ @@ -35,7 +35,7 @@ * @since 2.0.0 * @var string */ -define( 'OBJECT_SYNC_SF_VERSION', '2.2.8' ); +define( 'OBJECT_SYNC_SF_VERSION', '2.2.9' ); /** * The default Salesforce API version, unless it has been overridden by pre-existing option or by developers diff --git a/package-lock.json b/package-lock.json index 4237702e..f4f618cb 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "object-sync-for-salesforce", - "version": "2.2.8", + "version": "2.2.9", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "object-sync-for-salesforce", - "version": "2.2.8", + "version": "2.2.9", "license": "GPL-2.0", "devDependencies": { "@babel/core": "^7.24.5", diff --git a/package.json b/package.json index 5be6b848..e44823bc 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "object-sync-for-salesforce", "title": "Object Sync for Salesforce", "description": "Object Sync for Salesforce is a WordPress plugin that maps and syncs data between Salesforce objects and WordPress objects.", - "version": "2.2.8", + "version": "2.2.9", "main": "Gulpfile.js", "repository": { "type": "git", diff --git a/readme.txt b/readme.txt index f41c44af..3352ee26 100644 --- a/readme.txt +++ b/readme.txt @@ -5,7 +5,7 @@ Tags: salesforce, sync, crm Requires at least: 6.3 Tested up to: 6.5 Requires PHP: 5.6.20 -Stable tag: 2.2.8 +Stable tag: 2.2.9 License: GPLv2 or later License URI: http://www.gnu.org/licenses/gpl-2.0.html