From 5370b07c366d813543337907c58c1673495ac286 Mon Sep 17 00:00:00 2001 From: feng Date: Thu, 2 Jan 2025 10:36:40 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8D=87=E7=BA=A7=E8=87=B3=203.8=20=E7=89=88?= =?UTF-8?q?=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Plugin.php | 2 +- Service/Base.php | 6 +- Service/Memory.php | 254 ++++ Service/Monitor.php | 344 +++-- Service/Setting.php | 138 +- Service/Super.php | 59 +- Service/Update.php | 0 assets/css/setting.css | 3 + assets/images/qr-banner.jpg | Bin 0 -> 48213 bytes assets/images/website-banner.jpg | Bin 29467 -> 48110 bytes framework/assets/css/style-rtl.min.css | 0 framework/assets/css/style.min.css | 0 framework/assets/images/checkerboard.png | Bin framework/assets/images/wp-logo.svg | 0 framework/assets/images/wp-plugin-logo.svg | 0 framework/assets/js/main.min.js | 0 framework/assets/js/plugins.min.js | 0 framework/classes/abstract.class.php | 0 framework/classes/admin-options.class.php | 0 framework/classes/fields.class.php | 0 framework/fields/accordion/accordion.php | 0 framework/fields/background/background.php | 0 framework/fields/backup/backup.php | 0 framework/fields/border/border.php | 0 framework/fields/button_set/button_set.php | 0 framework/fields/callback/callback.php | 0 framework/fields/checkbox/checkbox.php | 0 framework/fields/code_editor/code_editor.php | 0 framework/fields/color/color.php | 0 framework/fields/color_group/color_group.php | 0 framework/fields/content/content.php | 0 framework/fields/date/date.php | 0 framework/fields/datetime/datetime.php | 0 framework/fields/dimensions/dimensions.php | 0 framework/fields/fieldset/fieldset.php | 0 framework/fields/gallery/gallery.php | 0 framework/fields/group/group.php | 0 framework/fields/heading/heading.php | 0 framework/fields/icon/fa4-icons.php | 0 framework/fields/icon/fa5-icons.php | 0 framework/fields/icon/icon.php | 0 .../fields/image_select/image_select.php | 0 framework/fields/index.php | 0 framework/fields/link/link.php | 0 framework/fields/link_color/link_color.php | 0 framework/fields/map/map.php | 0 framework/fields/media/media.php | 0 framework/fields/notice/notice.php | 0 framework/fields/number/number.php | 0 framework/fields/palette/palette.php | 0 framework/fields/radio/radio.php | 0 framework/fields/repeater/repeater.php | 0 framework/fields/select/select.php | 0 framework/fields/slider/slider.php | 0 framework/fields/sortable/sortable.php | 0 framework/fields/sorter/sorter.php | 0 framework/fields/spacing/spacing.php | 0 framework/fields/spinner/spinner.php | 0 framework/fields/subheading/subheading.php | 0 framework/fields/submessage/submessage.php | 0 framework/fields/switcher/switcher.php | 0 framework/fields/tabbed/tabbed.php | 0 framework/fields/text/text.php | 0 framework/fields/textarea/textarea.php | 0 framework/fields/typography/google-fonts.php | 0 framework/fields/typography/typography.php | 0 framework/fields/upload/upload.php | 0 framework/fields/wp_editor/wp_editor.php | 0 framework/functions/actions.php | 0 framework/functions/customize.php | 0 framework/functions/helpers.php | 0 framework/functions/sanitize.php | 0 framework/functions/validate.php | 0 framework/functions/walker.php | 0 framework/index.php | 0 framework/languages/zh_CN.mo | Bin framework/languages/zh_CN.po | 1344 ++++++++--------- helpers.php | 1 + 78 files changed, 1261 insertions(+), 890 deletions(-) mode change 100644 => 100755 Plugin.php mode change 100644 => 100755 Service/Base.php create mode 100755 Service/Memory.php mode change 100644 => 100755 Service/Monitor.php mode change 100644 => 100755 Service/Super.php mode change 100644 => 100755 Service/Update.php create mode 100755 assets/images/qr-banner.jpg mode change 100644 => 100755 framework/assets/css/style-rtl.min.css mode change 100644 => 100755 framework/assets/css/style.min.css mode change 100644 => 100755 framework/assets/images/checkerboard.png mode change 100644 => 100755 framework/assets/images/wp-logo.svg mode change 100644 => 100755 framework/assets/images/wp-plugin-logo.svg mode change 100644 => 100755 framework/assets/js/main.min.js mode change 100644 => 100755 framework/assets/js/plugins.min.js mode change 100644 => 100755 framework/classes/abstract.class.php mode change 100644 => 100755 framework/classes/admin-options.class.php mode change 100644 => 100755 framework/classes/fields.class.php mode change 100644 => 100755 framework/fields/accordion/accordion.php mode change 100644 => 100755 framework/fields/background/background.php mode change 100644 => 100755 framework/fields/backup/backup.php mode change 100644 => 100755 framework/fields/border/border.php mode change 100644 => 100755 framework/fields/button_set/button_set.php mode change 100644 => 100755 framework/fields/callback/callback.php mode change 100644 => 100755 framework/fields/checkbox/checkbox.php mode change 100644 => 100755 framework/fields/code_editor/code_editor.php mode change 100644 => 100755 framework/fields/color/color.php mode change 100644 => 100755 framework/fields/color_group/color_group.php mode change 100644 => 100755 framework/fields/content/content.php mode change 100644 => 100755 framework/fields/date/date.php mode change 100644 => 100755 framework/fields/datetime/datetime.php mode change 100644 => 100755 framework/fields/dimensions/dimensions.php mode change 100644 => 100755 framework/fields/fieldset/fieldset.php mode change 100644 => 100755 framework/fields/gallery/gallery.php mode change 100644 => 100755 framework/fields/group/group.php mode change 100644 => 100755 framework/fields/heading/heading.php mode change 100644 => 100755 framework/fields/icon/fa4-icons.php mode change 100644 => 100755 framework/fields/icon/fa5-icons.php mode change 100644 => 100755 framework/fields/icon/icon.php mode change 100644 => 100755 framework/fields/image_select/image_select.php mode change 100644 => 100755 framework/fields/index.php mode change 100644 => 100755 framework/fields/link/link.php mode change 100644 => 100755 framework/fields/link_color/link_color.php mode change 100644 => 100755 framework/fields/map/map.php mode change 100644 => 100755 framework/fields/media/media.php mode change 100644 => 100755 framework/fields/notice/notice.php mode change 100644 => 100755 framework/fields/number/number.php mode change 100644 => 100755 framework/fields/palette/palette.php mode change 100644 => 100755 framework/fields/radio/radio.php mode change 100644 => 100755 framework/fields/repeater/repeater.php mode change 100644 => 100755 framework/fields/select/select.php mode change 100644 => 100755 framework/fields/slider/slider.php mode change 100644 => 100755 framework/fields/sortable/sortable.php mode change 100644 => 100755 framework/fields/sorter/sorter.php mode change 100644 => 100755 framework/fields/spacing/spacing.php mode change 100644 => 100755 framework/fields/spinner/spinner.php mode change 100644 => 100755 framework/fields/subheading/subheading.php mode change 100644 => 100755 framework/fields/submessage/submessage.php mode change 100644 => 100755 framework/fields/switcher/switcher.php mode change 100644 => 100755 framework/fields/tabbed/tabbed.php mode change 100644 => 100755 framework/fields/text/text.php mode change 100644 => 100755 framework/fields/textarea/textarea.php mode change 100644 => 100755 framework/fields/typography/google-fonts.php mode change 100644 => 100755 framework/fields/typography/typography.php mode change 100644 => 100755 framework/fields/upload/upload.php mode change 100644 => 100755 framework/fields/wp_editor/wp_editor.php mode change 100644 => 100755 framework/functions/actions.php mode change 100644 => 100755 framework/functions/customize.php mode change 100644 => 100755 framework/functions/helpers.php mode change 100644 => 100755 framework/functions/sanitize.php mode change 100644 => 100755 framework/functions/validate.php mode change 100644 => 100755 framework/functions/walker.php mode change 100644 => 100755 framework/index.php mode change 100644 => 100755 framework/languages/zh_CN.mo mode change 100644 => 100755 framework/languages/zh_CN.po mode change 100644 => 100755 helpers.php diff --git a/Plugin.php b/Plugin.php old mode 100644 new mode 100755 index 4723162..c7801a3 --- a/Plugin.php +++ b/Plugin.php @@ -45,7 +45,7 @@ class Plugin { */ add_filter( sprintf( '%splugin_action_links', is_multisite() ? 'network_admin_' : '' ), function ( $links, $plugin = '' ) { $links[] = '参与翻译'; - $links[] = '去广告'; + $links[] = '去广告'; return $links; }, 10, 2 ); diff --git a/Service/Base.php b/Service/Base.php old mode 100644 new mode 100755 index 5938a15..4da50cc --- a/Service/Base.php +++ b/Service/Base.php @@ -16,11 +16,13 @@ class Base { new Super(); // 监控服务 new Monitor(); + // 内存服务 + new Memory(); // 更新服务 new Update(); if ( is_admin() ) { - // 设置服务 - new Setting(); + // 设置服务 + new Setting(); } } } diff --git a/Service/Memory.php b/Service/Memory.php new file mode 100755 index 0000000..23a1115 --- /dev/null +++ b/Service/Memory.php @@ -0,0 +1,254 @@ +' . __('WP_DEBUG', 'wp-china-yes') . ''; + } + return '' . __('WP_DEBUG', 'wp-china-yes') . ''; + } + + /** + * 获取 CPU 使用率 + */ + private function get_cpu_usage() { + if (function_exists('sys_getloadavg') && is_callable('sys_getloadavg')) { + $load = sys_getloadavg(); + return round($load[0] * 100 / 4, 2); // 假设是4核CPU + } + return false; + } + + /** + * 获取 MySQL 版本 + */ + private function get_mysql_version() { + global $wpdb; + return $wpdb->get_var("SELECT VERSION()"); + } + + /** + * 检查 PHP 内存限制 + */ + public function check_memory_limit() { + $this->memory['limit'] = (int) ini_get('memory_limit'); + } + + /** + * 检查内存使用情况 + */ + private function check_memory_usage() { + $this->memory['usage'] = function_exists('memory_get_peak_usage') + ? round(memory_get_peak_usage(true) / 1024 / 1024, 2) + : 0; + + if (!empty($this->memory['usage']) && !empty($this->memory['limit'])) { + $this->memory['percent'] = round($this->memory['usage'] / $this->memory['limit'] * 100, 0); + $this->memory['color'] = $this->get_memory_color($this->memory['percent']); + } + } + + /** + * 获取内存使用率的颜色 + */ + private function get_memory_color($percent) { + if ($percent > 90) { + return 'font-weight:bold;color:red'; + } elseif ($percent > 75) { + return 'font-weight:bold;color:#E66F00'; + } + return 'font-weight:normal;'; + } + + /** + * 格式化 WordPress 内存限制 + */ + private function format_wp_limit($size) { + $unit = strtoupper(substr($size, -1)); + $value = (int) substr($size, 0, -1); + + switch ($unit) { + case 'P': $value *= 1024; + case 'T': $value *= 1024; + case 'G': $value *= 1024; + case 'M': $value *= 1024; + case 'K': $value *= 1024; + } + return $value; + } + + /** + * 获取 WordPress 内存限制 + */ + private function check_wp_limit() { + $memory = $this->format_wp_limit(WP_MEMORY_LIMIT); + return $memory ? size_format($memory) : __('N/A', 'wp-china-yes'); + } + + /** + * 添加信息到管理界面页脚 + */ +public function add_footer($content) { + $settings = get_settings(); + // 确保 memory_display 是数组,如果不是则使用空数组 + $display_options = is_array($settings['memory_display'] ?? []) ? $settings['memory_display'] : []; + + // 如果 memory 设置未启用,直接返回原始内容 + if (empty($settings['memory'])) { + return $content; + } + + $this->check_memory_usage(); + $this->server_ip_address = $_SERVER['SERVER_ADDR'] ?? ($_SERVER['LOCAL_ADDR'] ?? ''); + $this->os_info = $this->get_os_info(); + + $footer_parts = []; + + // 内存使用量 + if (in_array('memory_usage', $display_options)) { + $footer_parts[] = sprintf('%s: %s %s %s MB (%s%%)', + __('Memory', 'wp-china-yes'), + $this->memory['usage'], + __('of', 'wp-china-yes'), + $this->memory['limit'], + $this->memory['color'], + $this->memory['percent'] + ); + } + + // WP内存限制 + if (in_array('wp_limit', $display_options)) { + $footer_parts[] = sprintf('%s: %s', + __('WP LIMIT', 'wp-china-yes'), + $this->check_wp_limit() + ); + } + + // 服务器IP和主机名 + if (in_array('server_ip', $display_options)) { + $hostname_part = in_array('hostname', $display_options) ? " (" . gethostname() . ")" : ""; + $footer_parts[] = sprintf('IP: %s%s', + $this->server_ip_address, + $hostname_part + ); + } + + // 操作系统信息 + if (in_array('os_info', $display_options)) { + $footer_parts[] = sprintf('OS: %s', $this->os_info); + } + + // PHP信息 + if (in_array('php_info', $display_options)) { + $footer_parts[] = sprintf('PHP: %s @%sBitOS', + PHP_VERSION, + PHP_INT_SIZE * 8 + ); + } + + // Debug状态 + if (in_array('debug_status', $display_options)) { + $footer_parts[] = $this->get_debug_status(); + } + + // CPU使用率 + if (in_array('cpu_usage', $display_options)) { + $cpu_usage = $this->get_cpu_usage(); + if ($cpu_usage !== false) { + $footer_parts[] = sprintf('CPU: %s%%', $cpu_usage); + } + } + + // MySQL版本 + if (in_array('mysql_version', $display_options)) { + $footer_parts[] = sprintf('MySQL: %s', $this->get_mysql_version()); + } + + if (!empty($footer_parts)) { + $content .= ' | WPCY - ' . implode(' | ', $footer_parts); + } + + return $content; +} + + + /** + * 检查 PHP 版本 + */ + public function check_php_version() { + if (version_compare(PHP_VERSION, '7.0', '<')) { + deactivate_plugins(plugin_basename(CHINA_YES_PLUGIN_FILE)); + wp_die( + sprintf( + '

%s

%s

', + __('插件无法激活:PHP 版本过低', 'wp-china-yes'), + __('请升级 PHP 至 7.0 或更高版本。', 'wp-china-yes') + ), + __('PHP 版本错误', 'wp-china-yes'), + ['back_link' => true] + ); + } + } +} diff --git a/Service/Monitor.php b/Service/Monitor.php old mode 100644 new mode 100755 index b2be08e..c6d3b44 --- a/Service/Monitor.php +++ b/Service/Monitor.php @@ -1,173 +1,171 @@ -settings = get_settings(); - wp_clear_scheduled_hook( 'wp_china_yes_maybe_check_store' ); // TODO 下个版本移除 - wp_clear_scheduled_hook( 'wp_china_yes_maybe_check_cravatar' ); // TODO 下个版本移除 - wp_clear_scheduled_hook( 'wp_china_yes_maybe_check_admincdn' ); // TODO 下个版本移除 - if ( $this->settings['monitor'] ) { - // 站点网络下只在主站运行 - if ( is_main_site() ) { - add_action( 'init', [ $this, 'init' ] ); - add_action( 'wp_china_yes_monitor', [ - $this, - 'run_monitor' - ] ); - } - } else { - if ( wp_get_scheduled_event( 'wp_china_yes_monitor' ) ) { - wp_clear_scheduled_hook( 'wp_china_yes_monitor' ); - } - } - } - - /** - * 初始化 - */ - public function init() { - if ( ! wp_next_scheduled( 'wp_china_yes_monitor' ) ) { - wp_schedule_event( time(), 'hourly', 'wp_china_yes_monitor' ); - } - } - - /** - * 运行监控 - */ - public function run_monitor() { - if ( $this->settings['store'] != 'off' ) { - $this->maybe_check_store(); - } - if ( $this->settings['cravatar'] != 'off' ) { - $this->maybe_check_cravatar(); - } - if ( ! empty( $this->settings['admincdn'] ) ) { - $this->maybe_check_admincdn(); - } - } - - /** - * 检查应用市场可用性 - */ - public function maybe_check_store() { - $test_url = 'https://api.wenpai.net/china-yes/version-check'; - if ( $this->settings['store'] == 'proxy' ) { - $test_url = 'https://api.wpmirror.com/core/version-check/1.7/'; - } - $response = wp_remote_get( $test_url ); - if ( is_wp_error( $response ) || wp_remote_retrieve_response_code( $response ) != 200 ) { - if ( $this->settings['store'] == 'wenpai' ) { - $this->settings['store'] = 'proxy'; - } elseif ( $this->settings['store'] == 'proxy' ) { - $this->settings['store'] = 'off'; - } - $this->update_settings(); - } - } - - /** - * 检查初认头像可用性 - */ - public function maybe_check_cravatar() { - $test_url = 'https://cn.cravatar.com/avatar/'; - switch ( $this->settings['cravatar'] ) { - case 'global': - $test_url = 'https://en.cravatar.com/avatar/'; - break; - case 'weavatar': - $test_url = 'https://weavatar.com/avatar/'; - break; - } - $response = wp_remote_get( $test_url ); - if ( is_wp_error( $response ) || wp_remote_retrieve_response_code( $response ) != 200 ) { - if ( $this->settings['cravatar'] == 'cn' ) { - $this->settings['cravatar'] = 'global'; - } elseif ( $this->settings['cravatar'] == 'global' ) { - $this->settings['cravatar'] = 'weavatar'; - } elseif ( $this->settings['cravatar'] == 'weavatar' ) { - $this->settings['cravatar'] = 'cn'; - } - $this->update_settings(); - } - } - - /** - * 检查萌芽加速可用性 - */ - public function maybe_check_admincdn() { - // 后台加速 - if ( in_array( 'admin', $this->settings['admincdn'] ) ) { - $response = wp_remote_get( 'https://wpstatic.admincdn.com/6.7/wp-includes/js/wp-sanitize.min.js' ); - if ( is_wp_error( $response ) || wp_remote_retrieve_response_code( $response ) != 200 ) { - $this->settings['admincdn'] = array_values( array_diff( $this->settings['admincdn'], [ 'admin' ] ) ); - $this->update_settings(); - } - } - // 前台加速 - if ( in_array( 'frontend', $this->settings['admincdn'] ) ) { - $url = network_site_url( '/wp-includes/js/wp-sanitize.min.js' ); - $response = wp_remote_get( 'https://public.admincdn.com/' . $url ); - if ( is_wp_error( $response ) || wp_remote_retrieve_response_code( $response ) != 200 ) { - $this->settings['admincdn'] = array_values( array_diff( $this->settings['admincdn'], [ 'frontend' ] ) ); - $this->update_settings(); - } - } - // Google 字体 - if ( in_array( 'googlefonts', $this->settings['admincdn'] ) ) { - $response = wp_remote_get( 'https://googlefonts.admincdn.com/css?family=Roboto:400,700' ); - if ( is_wp_error( $response ) || wp_remote_retrieve_response_code( $response ) != 200 ) { - $this->settings['admincdn'] = array_values( array_diff( $this->settings['admincdn'], [ 'googlefonts' ] ) ); - $this->update_settings(); - } - } - // Google 前端公共库 - if ( in_array( 'googleajax', $this->settings['admincdn'] ) ) { - $response = wp_remote_get( 'https://googleajax.admincdn.com/ajax/libs/jquery/3.7.1/jquery.slim.min.js' ); - if ( is_wp_error( $response ) || wp_remote_retrieve_response_code( $response ) != 200 ) { - $this->settings['admincdn'] = array_values( array_diff( $this->settings['admincdn'], [ 'googleajax' ] ) ); - $this->update_settings(); - } - } - // CDNJS 前端公共库 - if ( in_array( 'cdnjs', $this->settings['admincdn'] ) ) { - $response = wp_remote_get( 'https://cdnjs.admincdn.com/jquery/3.7.1/jquery.slim.min.js' ); - if ( is_wp_error( $response ) || wp_remote_retrieve_response_code( $response ) != 200 ) { - $this->settings['admincdn'] = array_values( array_diff( $this->settings['admincdn'], [ 'cdnjs' ] ) ); - $this->update_settings(); - } - } - // jsDelivr 公共库 - if ( in_array( 'jsdelivr', $this->settings['admincdn'] ) ) { - $response = wp_remote_get( 'https://jsd.admincdn.com/npm/jquery@3.7.1/dist/jquery.slim.min.js' ); - if ( is_wp_error( $response ) || wp_remote_retrieve_response_code( $response ) != 200 ) { - $this->settings['admincdn'] = array_values( array_diff( $this->settings['admincdn'], [ 'jsdelivr' ] ) ); - $this->update_settings(); - } - } - } - - /** - * 更新设置 - */ - private function update_settings() { - if ( is_multisite() ) { - update_site_option( 'wp_china_yes', $this->settings ); - } else { - update_option( 'wp_china_yes', $this->settings, true ); - } - } -} +settings = get_settings(); + wp_clear_scheduled_hook( 'wp_china_yes_maybe_check_store' ); // TODO 下个版本移除 + wp_clear_scheduled_hook( 'wp_china_yes_maybe_check_cravatar' ); // TODO 下个版本移除 + wp_clear_scheduled_hook( 'wp_china_yes_maybe_check_admincdn' ); // TODO 下个版本移除 + if ( $this->settings['monitor'] ) { + // 站点网络下只在主站运行 + if ( is_main_site() ) { + add_action( 'init', [ $this, 'init' ] ); + add_action( 'wp_china_yes_monitor', [ + $this, + 'run_monitor' + ] ); + } + } else { + wp_clear_scheduled_hook( 'wp_china_yes_monitor' ); + } + } + + /** + * 初始化 + */ + public function init() { + if ( ! wp_next_scheduled( 'wp_china_yes_monitor' ) ) { + wp_schedule_event( time(), 'hourly', 'wp_china_yes_monitor' ); + } + } + + /** + * 运行监控 + */ + public function run_monitor() { + if ( $this->settings['store'] != 'off' ) { + $this->maybe_check_store(); + } + if ( $this->settings['cravatar'] != 'off' ) { + $this->maybe_check_cravatar(); + } + if ( ! empty( $this->settings['admincdn'] ) ) { + $this->maybe_check_admincdn(); + } + } + + /** + * 检查应用市场可用性 + */ + public function maybe_check_store() { + $test_url = 'https://api.wenpai.net/china-yes/version-check'; + if ( $this->settings['store'] == 'proxy' ) { + $test_url = 'https://api.wpmirror.com/core/version-check/1.7/'; + } + $response = wp_remote_get( $test_url ); + if ( is_wp_error( $response ) || wp_remote_retrieve_response_code( $response ) != 200 ) { + if ( $this->settings['store'] == 'wenpai' ) { + $this->settings['store'] = 'proxy'; + } elseif ( $this->settings['store'] == 'proxy' ) { + $this->settings['store'] = 'off'; + } + $this->update_settings(); + } + } + + /** + * 检查初认头像可用性 + */ + public function maybe_check_cravatar() { + $test_url = 'https://cn.cravatar.com/avatar/'; + switch ( $this->settings['cravatar'] ) { + case 'global': + $test_url = 'https://en.cravatar.com/avatar/'; + break; + case 'weavatar': + $test_url = 'https://weavatar.com/avatar/'; + break; + } + $response = wp_remote_get( $test_url ); + if ( is_wp_error( $response ) || wp_remote_retrieve_response_code( $response ) != 200 ) { + if ( $this->settings['cravatar'] == 'cn' ) { + $this->settings['cravatar'] = 'global'; + } elseif ( $this->settings['cravatar'] == 'global' ) { + $this->settings['cravatar'] = 'weavatar'; + } elseif ( $this->settings['cravatar'] == 'weavatar' ) { + $this->settings['cravatar'] = 'cn'; + } + $this->update_settings(); + } + } + + /** + * 检查萌芽加速可用性 + */ + public function maybe_check_admincdn() { + // 后台加速 + if ( in_array( 'admin', $this->settings['admincdn'] ) ) { + $response = wp_remote_get( 'https://wpstatic.admincdn.com/6.7/wp-includes/js/wp-sanitize.min.js' ); + if ( is_wp_error( $response ) || wp_remote_retrieve_response_code( $response ) != 200 ) { + $this->settings['admincdn'] = array_values( array_diff( $this->settings['admincdn'], [ 'admin' ] ) ); + $this->update_settings(); + } + } + // 前台加速 + if ( in_array( 'frontend', $this->settings['admincdn'] ) ) { + $url = network_site_url( '/wp-includes/js/wp-sanitize.min.js' ); + $response = wp_remote_get( 'https://public.admincdn.com/' . $url ); + if ( is_wp_error( $response ) || wp_remote_retrieve_response_code( $response ) != 200 ) { + $this->settings['admincdn'] = array_values( array_diff( $this->settings['admincdn'], [ 'frontend' ] ) ); + $this->update_settings(); + } + } + // Google 字体 + if ( in_array( 'googlefonts', $this->settings['admincdn'] ) ) { + $response = wp_remote_get( 'https://googlefonts.admincdn.com/css?family=Roboto:400,700' ); + if ( is_wp_error( $response ) || wp_remote_retrieve_response_code( $response ) != 200 ) { + $this->settings['admincdn'] = array_values( array_diff( $this->settings['admincdn'], [ 'googlefonts' ] ) ); + $this->update_settings(); + } + } + // Google 前端公共库 + if ( in_array( 'googleajax', $this->settings['admincdn'] ) ) { + $response = wp_remote_get( 'https://googleajax.admincdn.com/ajax/libs/jquery/3.7.1/jquery.slim.min.js' ); + if ( is_wp_error( $response ) || wp_remote_retrieve_response_code( $response ) != 200 ) { + $this->settings['admincdn'] = array_values( array_diff( $this->settings['admincdn'], [ 'googleajax' ] ) ); + $this->update_settings(); + } + } + // CDNJS 前端公共库 + if ( in_array( 'cdnjs', $this->settings['admincdn'] ) ) { + $response = wp_remote_get( 'https://cdnjs.admincdn.com/jquery/3.7.1/jquery.slim.min.js' ); + if ( is_wp_error( $response ) || wp_remote_retrieve_response_code( $response ) != 200 ) { + $this->settings['admincdn'] = array_values( array_diff( $this->settings['admincdn'], [ 'cdnjs' ] ) ); + $this->update_settings(); + } + } + // jsDelivr 公共库 + if ( in_array( 'jsdelivr', $this->settings['admincdn'] ) ) { + $response = wp_remote_get( 'https://jsd.admincdn.com/npm/jquery@3.7.1/dist/jquery.slim.min.js' ); + if ( is_wp_error( $response ) || wp_remote_retrieve_response_code( $response ) != 200 ) { + $this->settings['admincdn'] = array_values( array_diff( $this->settings['admincdn'], [ 'jsdelivr' ] ) ); + $this->update_settings(); + } + } + } + + /** + * 更新设置 + */ + private function update_settings() { + if ( is_multisite() ) { + update_site_option( 'wp_china_yes', $this->settings ); + } else { + update_option( 'wp_china_yes', $this->settings, true ); + } + } +} diff --git a/Service/Setting.php b/Service/Setting.php index 376bbc6..99b06d0 100755 --- a/Service/Setting.php +++ b/Service/Setting.php @@ -25,6 +25,19 @@ class Setting { self::admin_init(); } + +/** + * 动态获取设置页面的 URL + * + * @return string + */ +private function get_settings_page_url() { + if ( is_multisite() ) { + return network_admin_url( 'settings.php?page=wp-china-yes' ); + } + return admin_url( 'options-general.php?page=wp-china-yes' ); +} + /** * 挂载设置项 */ @@ -55,7 +68,7 @@ class Setting { 'type' => 'content', 'content' => <<

原生体验

文派叶子🍃(WP-China-Yes)是一款不可多得的 WordPress 系统底层优化和生态基础设施软件。

网站加速

优化加速插件多如牛毛,为何文派叶子如此与众不同?

进一步了解 ↗

翻译推送

高质量翻译中文本地化翻译由文派开源官方提供,欢迎参与改进。

本地化改进 ↗

广告屏蔽

呈现清爽整洁的网站后台,清除侵入式后台广告、无用信息。

获取广告规则 ↗

加入我们

关注文派茶馆 WPTEA.com 公众号以及订阅我们的时事通讯即可接收独家内容、提示和更新。

+

原生体验

文派叶子🍃(WP-China-Yes)是一款不可多得的 WordPress 系统底层优化和生态基础设施软件。

网站加速

优化加速插件多如牛毛,为何文派叶子如此与众不同?

进一步了解 ↗

翻译推送

高质量翻译中文本地化翻译由文派开源官方提供,欢迎参与改进。

本地化改进 ↗

广告屏蔽

呈现清爽整洁的网站后台,清除侵入式后台广告、无用信息。

获取广告规则 ↗

加入我们

关注文派茶馆 WPTEA.com 公众号以及订阅我们的时事通讯即可接收独家内容、提示和更新。

HTML, ] ], @@ -71,13 +84,13 @@ HTML, 'title' => __( '应用市场', 'wp-china-yes' ), 'inline' => true, 'options' => [ + 'wenpai' => '文派开源', 'proxy' => '官方镜像', - 'wenpai' => '文派开源', 'off' => '不启用' ], 'default' => 'wenpai', 'subtitle' => '是否启用市场加速', - 'desc' => __( '官方加速源(WPMirror)直接从 .org 反代至大陆分发;文派开源(WenPai.org)中国境内自建托管仓库,同时集成文派翻译平台。可参考源站说明。', + 'desc' => __( '文派开源(WenPai.org)中国境内自建托管仓库,同时集成文派翻译平台。官方加速源(WPMirror)直接从 .org 反代至大陆分发;可参考源站说明。', 'wp-china-yes' ), ], [ @@ -86,20 +99,36 @@ HTML, 'title' => __( '萌芽加速', 'wp-china-yes' ), 'inline' => true, 'options' => [ - 'admin' => '后台加速', - 'frontend' => '前台加速', 'googlefonts' => 'Google 字体', 'googleajax' => 'Google 前端库', 'cdnjs' => 'CDNJS 前端库', - 'jsdelivr' => 'jsDelivr 前端库' + 'jsdelivr' => 'jsDelivr 前端库', + 'bootstrapcdn' => 'Bootstrap 前端库' ], 'default' => [ 'admin' => 'admin', ], 'subtitle' => '是否启用萌芽加速', - 'desc' => __( '萌芽加速(adminCDN)将 WordPress 依赖的静态文件切换为公共资源,加快网站访问速度。您可按需启用需要加速的项目,更多细节控制和功能,请查看推荐设置。', + 'desc' => __( '萌芽加速(adminCDN)将 WordPress 插件依赖的静态文件切换为公共资源,解决卡顿、加载慢等问题。您可按需启用加速项目,更多细节控制和功能,请查看推荐设置。', 'wp-china-yes' ), ], + [ + 'id' => 'admincdn', + 'type' => 'checkbox', + 'title' => __( '文件加速', 'wp-china-yes' ), + 'inline' => true, + 'options' => [ + 'admin' => '后台加速', + 'frontend' => '前台加速', + ], + 'default' => [ + 'admin' => 'admin', + ], + 'subtitle' => '是否启用文件加速', + 'desc' => __( '专为 WordPress 系统内置依赖的静态资源进行加速,加快网站访问速度,如遇异常请停用对应选项。', + 'wp-china-yes' ), + ], + [ 'id' => 'cravatar', 'type' => 'radio', @@ -148,10 +177,12 @@ HTML, 'corner' => '直角括号', 'space' => '文本空格', 'punctuation' => '标点显示', + 'indent' => '段首缩进', + 'align' => '两端对齐', ], 'default' => '', 'subtitle' => '是否启用排印优化', - 'desc' => __( '排印优化可提升中文网页的视觉美感,适用于中文字体的网站。', + 'desc' => __( '文风字体排印优化可提升中文网页的视觉美感,适用于正式内容的网站。', 'wp-china-yes' ), 'dependency' => [ 'windfonts', @@ -261,7 +292,7 @@ HTML, ], 'default' => 'off', 'subtitle' => '是否启用后台广告屏蔽', - 'desc' => __( '文派叶子🍃(WP-China-Yes)独家特色功能,让您拥有清爽整洁的 WordPress 后台,清除各类常用插件侵入式后台广告、通知及无用信息,拿回您的后台控制权。', + 'desc' => __( '文派叶子🍃(WPCY)独家特色功能,让您拥有清爽整洁的 WordPress 后台,清除各类常用插件侵入式后台广告、通知及无用信息,拿回后台控制权。', 'wp-china-yes' ), ], [ @@ -360,10 +391,10 @@ HTML, ], [ 'id' => 'url', - 'type' => 'text', + 'type' => 'textarea', 'title' => __( 'URL', 'wp-china-yes' ), 'subtitle' => 'URL', - 'desc' => __( '设置需要屏蔽的 URL 关键词', + 'desc' => __( '填入需要屏蔽的 URL 链接,一行一条,注意不要串行', 'wp-china-yes' ), 'default' => '', 'placeholder' => 'example.com', @@ -382,25 +413,64 @@ HTML, ] ); - WP_CHINA_YES::createSection( $this->prefix, [ - 'title' => '节点监控', - 'icon' => 'icon icon-story', - 'fields' => [ - [ - 'id' => 'monitor', - 'type' => 'switcher', - 'default' => true, - 'title' => '节点监控', - 'subtitle' => '自动监控加速节点可用性', - 'desc' => __( '脉云维护(MainCloud)支持自动监控各加速节点可用性,当节点不可用时自动切换至可用节点或关闭加速,以保证您的网站正常访问', - 'wp-china-yes' ), - ], - [ - 'type' => 'content', - 'content' => '启用隐藏设置前请务必的保存或收藏当前设置页面 URL,否则您将无法再次进入插件设置页面', - ], - ], - ] ); +WP_CHINA_YES::createSection( $this->prefix, [ + 'title' => '脉云维护', + 'icon' => 'icon icon-story', + 'fields' => [ + [ + 'id' => 'monitor', + 'type' => 'switcher', + 'default' => true, + 'title' => '节点监控', + 'subtitle' => '自动监控加速节点可用性', + 'desc' => __( '脉云维护(MainCloud)支持自动监控各加速节点可用性,当节点不可用时自动切换至可用节点或关闭加速,以保证您的网站正常访问', + 'wp-china-yes' ), + ], + [ + 'id' => 'memory', + 'type' => 'switcher', + 'default' => true, + 'title' => '系统监控', + 'subtitle' => '自动监控站点系统运行状态', + 'desc' => __( '支持在管理后台页脚中显示系统运行状态,包括内存使用、CPU负载、MySQL版本、调试状态等信息', + 'wp-china-yes' ), + ], + [ + 'id' => 'memory_display', + 'type' => 'checkbox', + 'title' => __( '显示参数', 'wp-china-yes' ), + 'inline' => true, + 'options' => [ + 'memory_usage' => '内存使用量', + 'wp_limit' => 'WP内存限制', + 'server_ip' => '服务器IP', + 'hostname' => '主机名', + 'os_info' => '操作系统', + 'php_info' => 'PHP信息', + 'cpu_usage' => 'CPU使用率', + 'debug_status' => '调试状态', + 'mysql_version'=> 'MySQL版本' + ], + 'default' => [ + 'memory_usage', + 'wp_limit', + 'server_ip', + 'os_info', + 'php_info', + 'cpu_usage', + 'debug_status', + 'mysql_version' + ], + 'subtitle' => '选择页脚要显示的信息', + 'desc' => __( '为网站维护人员提供参考依据,无需登录服务器即可查看相关信息参数','wp-china-yes' ), + 'dependency' => ['memory', '==', 'true'], + ], + [ + 'type' => 'content', + 'content' => '启用隐藏设置前请务必的保存或收藏当前设置页面 URL,否则您将无法再次进入插件设置页面', + ], + ], +] ); WP_CHINA_YES::createSection( $this->prefix, [ 'title' => '品牌白标', @@ -448,7 +518,7 @@ HTML, 'type' => 'content', 'content' => <<

开源建站

文派寻鹿🦌(WP Deer)建站套件是由文派科技官方提供的企业建站产品集合,代码均为 100% GPL 开源,无任何加密隐藏。

SEO 优化技巧

WPXYZ.com ↗

网站政策合规

WPICP.com ↗

软件开发工具

WPSDK.com ↗
+

开源建站

文派寻鹿🦌(WP Deer)建站套件是由文派科技官方提供的企业建站产品集合,代码均为 100% GPL 开源,无任何加密隐藏。

SEO 优化技巧

WPXYZ.com ↗

网站政策合规

WPICP.com ↗

软件开发工具

WPSDK.com ↗
HTML, ] ], @@ -468,9 +538,7 @@ HTML,

项目简介

文派(WordPress)中国本土化项目始于 2019 年,由 文派叶子🍃(WPCY) 插件开启,其前身为 WP-China-Yes。

2023 年 5 月,文派科技完成对该项目的收购,并对其进行了全面的品牌重塑。

-

赞助支持

特别感谢以下企业品牌对文派项目提供的资金资源支持。早期伙伴未来有机会共享文派生态资源,期待社会各界参与。

赞助支持

特别感谢以下企业品牌对文派项目提供的资金资源支持。早期伙伴未来有机会共享文派生态资源,期待社会各界参与。

开发 & 贡献者

100% 开源代码,诚邀您一起参与文派 (WordPress) 软件国产化进程,打造属于自己的开源自助建站程序。

+
推广名单 ↗参与贡献 ↗
HTML, ] ], diff --git a/Service/Super.php b/Service/Super.php old mode 100644 new mode 100755 index c0e10d0..7f664ca --- a/Service/Super.php +++ b/Service/Super.php @@ -55,9 +55,7 @@ HTML; | 翻译平台 | - 文章投稿 - | - 自选新闻源 + 订阅推送

'; + } ); + } + // 支持中文排版两端对齐 + if ( in_array( 'align', (array) $this->settings['windfonts_typography'] ) ) { + add_action( 'wp_head', function () { + echo ''; + } ); + } + } /** diff --git a/Service/Update.php b/Service/Update.php old mode 100644 new mode 100755 diff --git a/assets/css/setting.css b/assets/css/setting.css index 1ad5486..f69d956 100755 --- a/assets/css/setting.css +++ b/assets/css/setting.css @@ -90,6 +90,9 @@ box-shadow: 0 0 0 1px #ccd0d4, 0 1px 1px 1px rgba(0, 0, 0, .04); } +.wp_china_yes-field-checkbox .wp_china_yes--inline-list li, .wp_china_yes-field-radio .wp_china_yes--inline-list li { + margin-right: 20px; +} .wp_china_yes-section { margin: 50px auto; diff --git a/assets/images/qr-banner.jpg b/assets/images/qr-banner.jpg new file mode 100755 index 0000000000000000000000000000000000000000..4620f3bd9d344aa6435ee5041d506af5fcc9dd07 GIT binary patch literal 48213 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�BUe+<*ymH6+F5i1`muI1Q-|6A60V^dNLlK7M&k@46n>|cT z3%hp6KjI)tGs;)cS9tSf35L5C&4c_r-<+rYK<9ckZ&*Gdt-|eCn}@X@J>ommh3sz!pCUyHvX*7{dq)%kMVQcyu&rr zv|h~ktw;P<$~N=czkqIi!=g_$N;u0WF?x@kcrG7ZPXVtk)ft)}RyWWm5_Zz7$&+oy zTJr8c9}?Hvv}Q#2@yFnfntJfJRn!|iL|$cB zyd89aVqfNVeYaxTekr(rM*aO1r5FMzsxPQEjIS5I>v_wZL^9|uDpda?JsA8f?@ zDG7fRe4L|<->MW8|Jt=f@%+Q4z|YEK{f_<}(kKJ}kAB@O$F}dOmCv_wB7eSS7y4gZ z71B|C_9MzW5Xlb2TndF%X03SeQClXM#qzY+C~}#V8synD>8BQ--7xWxP#~^spSZ)* zlS5DdFX!+638}M;D=!0IoO0ZGss0yG_2Q6@Tl-HMCMotMiZh@Bx}W)uWWfihJGDx}V{lb~0ZGRg4Fu*Tn<`E7U&1+RM{j+&8~+ zL*0D6K@oM=Uwn;`0IW~%;0*)!Q8l+D{D!^p*+~)J>VfMyNiyq-t3p2l{DpcrV%%p$ zha7?Z^6peWdCWH}BDvY;)*`&bP73NNe^mP@c%KotEyumcLejPS1W4ye;ML7b+xGkg_z8+oexh@FSL+FD<4Nj%a4}ie{tw)I0<)d%A^!)3CVKxu<9fO3 zJ1$(3JDaaXulBW|M%J!EZ5CrzD!qIed8TCAn&iG{B1Em0G#js;#7BQOmC-97%gi)Z zje5pRBh3pifaJy5k>1BW!pe1O$+_sf3(0iGip5xnV(h>-UuPl6)0F$QSZPCmKnv$T za3%SLO4Dd8(<|zQ@K)c;xbZ_*{DLvSK|svOmsiL>H7H5M&e4ew;y`0GMN8H_{KXzoR{xv^;0fjJClIiaQcTWF7d#QeB9K0)4=rf($P$bB-ilhms z>uk@u0AX4l>pzyb1YO@v|A9^PAYKR7R?2qUs@mU4hCSAGzm$40`J?mFjJf#Kh=}Mv z5Hx*o%?W$ZF3qc4+9^x5%$QSL{oBN699Q(X1jVbZ;xUD;QG=lCJBCI46H@>h`{ASy zd+l!g_c+3@*fwm%;=Vjx@lnv*IsT1bz5K>-+k43Uplc;N@Jg8UJ;Hd8(vUK^!Sb%5 z<@t8bQ?;L<@IuMm#z^)8Lvb@vwOawMAWZ2;&*|JuL|cM>RTuDZ&C8MyLk%!F{r>2t z8SWE6>blj(DI@I^k5iv2r8At-|F25*KL=v4Ff3R+EHJESR2SVb^P%SvzH^a8dmLNI z+nl;U^&I@@K4+)nZ;wGa)8Z-;Fozs1vQdPs^q+-40cQSn@(6n|ERw$?f7-}k`zd>nAr?|p=eKUoE( z(NTAPAq}q&3o)t(#SC=6f0zeC=`lY_)*DDA+bLUML`SYWOKCPc(=cSj%mDW`Zhr}L zMBjR_)aT;#5Nn>Zo+15wT4R@*51FAZLY^D=BIl{F-Zy787SMIeg;jsZ*^^>FNz<}h zyZg*TfSPDFRp&+aL~SdL~!X(m%28IhItj0c)$#%?chf~Z6FL7@@Rj|+kF$xLJs^lH=SBwYf+-<_j z&tEL`WYT}E-(pF9(<9$-zXY=DIsaAaGnlyIM+~TbrN024aj)Ab4`Ql&GIVays}hF)uoEr2V5VLR z%cwLqzOc@B|Zk;DDeR;lU0E^UXo8ZIT7t55bB7raq2nCv5rvt<9GX5D-0}ZXSx95nT zlv+O_B5hHiP!1pmWEJ!wgyb{g^VOw}aN$3>4j(l7xXf{}(#xrrnn7W!(LrCaE{G`+ z)|i#tuvJ-k#YYWN!*89_D)KEBkd}qA4WqG$1B7{K!RU2e{7V~#CE!Zw?8*k`u;xek zak|;^6S0=DZwmG2N$AoSm8J<4z+Vi*Z-Aw_r?(D=p57!<;5BJL7G`^hdtZnievH13 z?vuxLVgO{&kQy$T>bD{xiRx_ZmSNf;`s6zK8R!{&_HfXWgCa4AQkS8d0li)p$o664 zW%RyIS*cz?u3)XfGOF1p-&>=qcgn!X*{p4abzqKNg^^jKf>#>)A_7Tn2$W8at1Sc3 zF^!HQ{d%6D*U{Lcf+};}?QCfFc9b#L8bZ&9DAL`D$ zo!B&QL|9|gl?u@B=rjbS@MN_R8x7H2M%vKYFgsPWd7|Ttf0RM8 z-afJLWEKFLusxxA&O2g!aMes)ohvcaQkhZ{$}Ait#~$X+MSTI^9obKpnl@(m+~~iL z8dA$+3;g$Lwv&A-vB0-JATNW(M{vY^#6p`PauBq^0)x()q|}R64_a&D^8dQS&@fLq zEZ%rv#jsJ)hGotzv;s%(;S)3FsxB=-;HWd&xQL9Z-^Ew2S>xGSoeSObE%vH4BM7c`cfI59iE!xRs%|GU9#Ik9$Y&K6fjZ^pc>i387%NS1W#~1G8ctF-WO7lf$+Y1Q+ZjrKoJ{Gn$N+l$egVP8$PI z$D*1Q)mm~?he$cd;j@H1{cjHQNW4$w&rTId`dgR?m9N=%mfszsMhce}EQ)IWg~_^^ zP6SLiw(|$FD< zOpYoSbuhCB3!gQJo?Yo0HuknfXiaVJt5q>EDJmMg*P+7o-_eMtmmYC$hTDmoKh@Wq zz4M)jBywx$qU%sE_;qE6g}=T`3pevXn|#qK9RtJO!XLaQa2pp=*OB1`T5iKDaU^!T zdbY}G?Gng!qVD)KgC_f6s*+p243pgk>$c2ynEn2+%H*v6@)J4^zST0(2v+`~nsjp5 zlJwcM)R-Mvd@?#oD#ECH%41tL76}%idItOrJOxekDrV!Ww1U=W>}uku*s+ahLkGtq zhTMLx9zK2`$rk&UvJFb!y7w;@s=O@<%}gDdegeD9Mzge>Y0^?x22&GA4`9I^`rY+4 z=$X3CcC6xsFIyuko3XB#S{P!-mI|iAS9a-sQ4l!|-Zya8K!!iR?l0 zWuh?|EweDKBZaDNk71s-w7aoKijdBu(5%}CT+Qrm{vpO) zxkB_E85hWo<}2wqJDw)prn0?amK}XrxI;n1j%DP1m{C!c3(vq zPoAv`TDKw>Y<`wot#89y!aJHa$9*jW7yaOwB0w^v*Sw8OP6P0f)Xu}Dtn2$U)T2gS zHDc5fuMV1()p0<)Iiu&3fEN)3ro$Rw@q#G?K@j+Ao~-ky_^9Js^&?p=VcFo=idsv< zIcc{-m|$Ov_2s#KGK#5i=t=rvP;6uS;sJ&seSM?SNHfBGKfbV6EYUsZk;M*1Hx00d zqSuV9*aUKUrrJu^SPsRbFIbXh@XHdke2FzPrt(e9QiVfM9zO8i`8Fg+I<%$N40XtUlx8BcCx2p^ zEjS6F$%?I;MEd^NZUlXFy;S-4W|B~6otGxTiS3`Qn=6_Y-%EKI_0+(6)ycvuI5tja zGbha9fDYC87}IY-+>}ya=EfwHHP>HVl28aS5M~<5=$CR;i(-f+<`t5 zMRj)|nhul7PHSb_-Q&#`%MF+_bl(RvVST40O3s|@$*2to*}0pLopY{Uv+46Yg@2zO zH21VvtXHmBI{j3#SZv_s2Nfw_pyQ>0sL12Iv3LqXAU5dMG#ebsjWcn|nF(n|AxLlj zzkwM3Par;B0t&Z!i+Rl1g+=xlYUd7WX$8~y*a%9aMfHSv%=9$k=283qH;*3#mJIA( z3%b7uN~|*Uc=sxX+?B6%88u`p`Sc|F$-&A9Y22g8urr#Dy&2V}qcQM6`6rJYjT%fq zWOcGV?LTVi6+)q<>6q5r@w^5HfBgJYo?64p8l#;onRBn%w7C;@3HI7H#>)=fvf%>L7@8>(_s z=R!~&dEFrw<83aKX%>ltB!l^Xwj1t`An*lKCjGR4NI@rrApc(*FFbcH4%LA@@!K)9 z%L9aWYJgAabV%$pP;oGVHS)&2(+X9BZz2TdLgNy%&s<4d8GA>M)6_gjPPY1CVcy$Q zMxyhQ!qYvbQPFb}P_hx7i&Ijmie;n5Rkc+u@CrvpYx+Uerrw}L`cd$N-!prxgcZgS z7$2Y{YN*L{m*5p03sFnMChFzrRfrBxRp3C3XV1Y3KO*g|&uJ$hts*|q+qaSx-x34W zQno3(=1Sx}#@&tDCE4WL)CpD+P^9P0msQgYpgiq*GEt1N60DD2wDnMA3~0o@be^(% zK(qFt4N6Z^mmxJ0i17!d#fs2O(6a$xdNUs`@*H+8W@|AIKI<;k+7&O5f$oP(mx0Xc zEQjn=;AD7*&%dL99Cb|{m=@;h;0zVJD>{j*@+c)H5zdl;J;GZE3SPCs)+@GKJ2x&s z;Nkz3!a+QG1HZ84W*WtM^^=9ubBgI*A$w)ch{t3DB{ogFD6Gv$adRbaPMDuKpR{BL5+@-kyH_WoiEYQuV*0ByNOH`Z;(WN#zq!tifN0k%dC`? z*-IfkzU%AA{j9UyhUk(tL$*nWjC?AhNpGPg-Ynw!Po+FEx9XTuv z@fUE{_lh7o5iL=BV)6Q?rD^BYaJXSz#nDR>L5c<2C}TJgVM~n*xZlC@%t&l0F~!6V zH^j_WeLZ6d z+jZd-fdd95RMNQvWdvH)((DuM4tA06QHW}D_A>OQd49UNjyV9Z2-jC_l%yiV91wWKQ~_Q z$CfP<>AXmd;$p&xP~?P^CYz4DpOdB;AWu+o9&%~zT_-ubec#3277H6>BR zWlUGY^08s%94I2oR}mJSfO(_$=DqZ;j*!nd&TYhWQ^MAyT5b>|KGQyu*o<@Fyifih zYN-Cr&E`YvM%1fIo3(}%wQrigC0Xl_FfG;iY;2~wRQ}s1yTgI3vbjieN6u*8X=MZ8 z@y4IG_PGjlxiGROw}I_1*vVKsBD)IkpZuTAsA? z^3W|-&>&uslvroA6dbl|uFp?uWVZ&4d!6%247n})S|7JuU4!@8}UkIR^P6ENh*PVwQL z_x@Hi^CJ0->TPpnfO95ON}ZC&!3&FdsxFJozW~0;M*XFeJ?bRi##(VJzfw-7p%_^_ zWhR-hXhNI)3eM_PPOj(1t!}#O5uzzh=Y0jfN1t{kYpU0KKHqq!W12(Xjo-~Z{G(e1 ze9=+=18@2B8a?5)p;8ulkX~4GFwEm1CSAOS zBtF|^&BScJcD0Vo3CV2GqeK(%Q?o|TWeK?U>9N}M0MohAVIPZ0mz+9rU(hq&SwXND zaCcsk?OZ8fH{+P9_t^}j%TLQF=S;@4CFSk4DY% zDVomS|1n;4o66mrjj5j=m3(Py|DTW|IGo9yRIQLbbph25&T0kTUe;a7J+1K9^qJ3U zNj=5QzyhMis&QoQ@i`h_4?|s-QDf)C)K?_!*9pd;>@&Gw_6|{MLYo$ChJ0->SD_|n?aPj z*={JiyU^|o%({#WN|A+RLJEA;EOAjswUsEI2hZs=AAV}1w*Dlp6s6}%q7z+;qX|GW zhy?virDG1Q++zPVd`xtw3247@kmUVvTFX=ZWJZO_nyqxC(;>aBf|o`bxJxd=VJGn4 z%6ymucR=@H=?{J1NK25pZ=l|6mG{(5KiwC6|6famvM77Kk=OR0oQSn4)?gY*i zC^+uIA@GH-laH1JpIKrCC4X;rNg02SMBYBL+0I!BFXzc$fZHPXq^5Y8c*e3NwAFAYvq*G?wZAYR6#0JvDyE3d}Dg zJT5cU5aAy79W_CdB??e?*n{CuJ2hueXH-|91921S91M+V{8c(V84cxfwxd)~&E1@A z@vaJkQYYpIpu*=g9zTp9~Y3v6pn34MnQOHW98?QCX&0NhJ4bZa61)S zY0dM_I{}0~O&bDt!pqMEe%dKYd=Gv;I#g$~(oCr9+Vc%y8i|#tY@(5bC(@xBe6Ky; zoV|7^)x0y=nGsX@eo3@ToevOvQ$UJ}Ulj$TJ4z;bGWKAi)zJN}I=g7K8dQ0kkqvjN z`wI|c#b|_R^J5pw{0op7B$zt=(IJ}|9$E6hht;I?;*}|;xfI)?(GsXW-fZJhh2KTv z2vAt_{+Te)V)N|->x~-N9D5r%R7)(j;9I4KNc^$u;w-d!f}lbf!d>)HS#69Sa?bd2 z`ZbQP(&4{#9qoDS&AdBPhVWhZTpM1$eT64)WPfav4)Q}AvoIW)LXoq?0^8_FI(8n8 zK$nS)VariUXAP0n19wheRucdtImdBmc-r;LqK7UZ^|2TE`AT_rK2DMN-2p7O`@acGgk0xrbhnB% zec~G(%KLhubnm&&#^nUj^ z5O**Ie_Zd=@b4|j{84oDt!xSLD@EB!l}nNx^tpxB-SK(I!g9<9(*-VI01-awBjAH7 zNGQiB1iZbX*hC$+GTmie|2_(PR|&Wf4~nAe7eAN##Z86U0+%uk~md( zq9)?OP(Wdc;@cSC?l<~4>fdnUs%Sr%Wb32XYnBtx_htq}xJtrfmvc8%v0_U5sMZ#$#{AU}Duvur1+&j77Pb-<)3V&rF)pRCi!b5X>azkw`{z*{Bi zmn0!L$=kjNTav3gPn3AhOv7XN7w}wJZ)Z+bxw+6;$qTjnXpm=RCvxyk9dIMi(qX2t z-g;A6i)o%eb);Ms#Zv;v(yTlIudFzqo?Cr z{rJ^b&k+#M)SFuvPCy%8CbA8_w*lpAQH!R9IpbL=q?flA>O6isy1$$^0ry~7iu;m! zb1AD0R(@!IZOTEkz#g!@5UEP3Gb7{)G?w{Z!oTtaZ#Q4u97d-~d(Sk-nwWbl*2gur z(n*bIQQ&z3z3n%| zKfq=#<*SRWnW6~?vqOg^sH~iN0|iarst6HRQ5{Fd=kmi6v09!S`u=;Amz~W`=IZ-W zZe-bZFg=w?(Hi4)-SdpB5_vCex_QH*O+%b`Q-m`SM$Uj5$vUR=T~Y zWTz!L{mK3sEAlQ9;c6iba5-Zb(Rek}u^dC-ghVdY{tf|i9VY4qd})T+DjKoWrFaYO zP)sM8Nq;tbL_?8Q0-zAe50g#!59#~ff^X)B(dr3GG+;==w5aC zI``^3eX*6m;#-`3A@-in#*~_oZY`i>A{i~HXpt+QgbodD9ega|ZYyR;i#m;k`c`(W zcQBIOhFO7Gdb(zy3K?N`Lni@rOh$<%&oYtB%Ae+f@Tovl8#EF6C;9JU%fAs!K&4sp z=RPs#%cw-&)e|)K!44<2kd;Km`-!+S&?^y@$dTT(brgTG({&N>jU}1*-iWPUyVT*! zu_g_J#?)mqMwe0>v@=2Z2gOK(@>H92lviaQUvv$AI?gpA@En_rpJuyJI?QdZe;Bm* z&GG$h(^pRg2H3?VB3oCe&)hIgS4N;T(WVGwk9xVVT)&ZI_|?@9c>{wvOZ{fT|13jU zvqxu;!$dEgC>%=FdWw6n!dG=w^3;#OMv{Dt-urZ~+(VGKQpv(o%3vb-q$3;oD3}Q{ z(5ED?6Ey?O_F>=XJPRqcd;}jjs#v?LpU$v@ps9}S2Qk4XZ+>!_rwIaq0|TCJJ-$$`VT~V)>meVqM zeqnWWo#^hO1BT%+6axJV&_o!VVE^@D+2Rxzm^^v-r^SbqW=&$umWpJQqzo%&VTtT6 zqB>kc3yt7{`0l-hFRD}5W`!hw1{G&l27;K}vNzfd@+EY>J$DNr0Lo6v_EJ(zUBMK*$Pyiy431xSeyhwFJ%u0JlC;8-OvpqA^~0WwpH4m^*1NItcU9w zM@Rr2+C<}XR;@7!L0SEZ=hd-4aVD(8`J68Tox5RgA8t>$h0|NM8ln=!%D z7r|JC=32gr^&E2;bj-*?r2Rf8=avrySs{)iFYO2+qggmarSOl@SUh^e4qeP3Z2o6BED^}(4p$T-;nE&UwK<| zDlfk4;)-~(Ruc%tBSl0jO42%GSwzSN!#&rPL?OBJDJ- zG7jVtTxtYgzLAy-R9F^u-0$hqo>r((sm!jd5MPc?(Sr(CYUVi%MXKgf15^FXvtNvw zu=C<;7oEy^BFPy2Bl9KYN^?0X6xc|( zs~qFh{lS&CE=e|vjl|X##^x{)9XT#L$pMv2R_dh;|CV=Y81nIbtdc>#q0RxC5Si!` zX-*VK2pWafqZx#S%?~qLv986;$`W&lB%SGX_8w}8*hx`V$nNk3ki)c&4e$HUtOdU9 zfYwYW7-LwUTVo{B8GwAw2-&PbPR&NxK4EHJh$+s_eVSQ{F6=>kuC7Bg1=MzGBM>0q zqNs^Tyf;DrF;AU6s8F!CJ=T9AElH0kAC=c@`A!}3rHU6J!yZ`9w>%7~&YA>(7o{vj z$PSNST0Jt-bA8p^RBaz{s{b=|8?%)*_>fi`DmQe(fj)so*O6JoN;~1x1yUKoZ0d#6 z-0hSa|Fry z09{J7Eh<=LpUjAwn1)hwN9k!~YP%J%dwN@|m}$U;ni8L;pgC8Ch5C1r?w@MpKBd-_E4*0Ntcye7?V7!ZFjQP;@o1IKCOh3Qaz z%X5qJqjgWGSgoeNx+l+6pgZFsglhQnfDZV^RGTh9?IRI)W}b95U;auSqQkbuZX8wM zvRepgyhq6Y45}QFCyA79U8-deoiFr%Pm_MZiEBXPeanTw?!6>wP1zpOJaTN-6GGckE%5|j?7F;<5%41nh2S<>666TSNRyUa+IE52pbO|@^XUlyEh`%h;gheu-{tJiz0uv-xYzJo| zI$#xMNB8P?$GGzpsIwHwX^eUMwE=*IM$q2Y&`GDbm2~QNe6=_ts0U8}z>J8(QMlcB z@vhxLo(4!|xP>J%>rgqxm$%t)tETCRi@`%RYLE0cCI-ejM1l)oY+%^BBun_njd(h@ z&Rt6{iZb28ukumz4q0$gH29Xo&4lnTO6*AW0^eYys=QKFPAF@lt#=^odeGcTk;1T$1RdZ{h$1tm zSfYnHsoag9AB1Ubp}}~G0J1zSGp@Tzt*5yJJ&8piTf#|8SNuM+rFi#fiWW0F^9@}( z*jI2T0-g4`wu~2;ysDre{MI$$M^eLA0V4cQ`j5ve?GfMS9J<;(ibBOWV=#Ln_EIA% zVF>#|(l%d*2!Ed$M(p_E&t#}5Q=h?*Ae|CyjQ|qxsY0Ytn8#i3ZgC*Q?c1P7q7L64 z`a_m+He1L32pK(r%lhl zfG$E!^6WhKPuSEsA%YHiPVW{xz%`8K#8=Xyb%;RlvAHD*Dy0UJ!?!6b(t4sb`)CzS4YA=(2FvJaG;C zUYe5vuStX>Ql>IyrEWMQkGq{=e-1vt=^iF&FSg`z7yBa9(bDE7HgG!Xe`9ytMP;T; zY9C2$|9cw=ePuN6b?p80ylz#nJO84>|3_1Cm^N5y+LKalbS%s7bf-zLr+F5HP2^n9M0cH|oVx~9EoMlH#23VSR0uzF~wCM(-m4>{6H#2f3x<;OY;x~KX2 zd$4J4=AIx;?f3lpy5Z;X5m#DcBYrydT!}hpC@T@H^93X~>aG)sHjy*zt@5RyeRtz>K$vvQ#)P-ju$}|~W zb*M^Y=VYi0T6-0shZ%g7bZqYC(or;wPf%3J52%R62BXG)p0tyF>;3wyicZfw?h!!c z`yoJfRjGRoTYfvgPbf~tsXr?rHa;HxAaU3`-HCAlXlQvBCu%+Y%(}-oWh!ibpD?i$ zrp%@ZvAz7S0R$z@lr)Pz3=PIPRXs- zTEp%MkwV^(Xwwz0#qS1lt4n2(Hu&B<;K+=>RQp+Au_o((n{DD@X!lIHZHi^En{3rG z>fljh!3jKa$;(N9^hF*WqAnEl3D`nA?NIP zeb}sm)8w+l;qUbsW3!z%e2GwUa4@c)0S!_PW-SFK9$AGPlqu>`X1x0OYSYwHU11lK zKB7ASFDU^G`Eld<*}t-nszS4cmaFenHPi$gHkq62Tv7?hXJ(aw`I%sLH*X6jORL@z zTau&5euH%B>%u7?-E(VnPwS*&lu9-RkWnxEHx~3SX339D?oxRP76ZFPzabX@alV#*RsV~!aa8zv{GfK1vVI|zIYeDg|I5K zfgw?3u|vFyl-R1P{NqKl-xH{d7;W^-Ua&0d#8T~1MSHxw&pcYWpH3tz(MB0V zVUjb?#85eU(@)D>YLc05+Q3uH}4mCAjS@84z{T~B zpTPz`sI*HUz7^Mkfp!ZowG9P*o>|(a+!Louwd}Dd3$h0Ld6-jFzm$$<549`yG}{z^ z%~79}Udz7m9l0~dtXy`Xk^9wSW=M|!u_1bid1FI}NFTe5=DfV%6RYZ(H6{d8A&KIa z+WUbS&IXfEA7hVHcNcYxKob*-G{~XMSUw#gd!S%c1ElJouMv_RXdPaBR&B0ZCTHQ% zX%pfJaz@l-83t1Y>`nru*l=!deT=ox0?heni@jfc7+(eeZv_NB_)-%H*kt+LvJ(`Z z)+YG4PU#*E2W7y!0C?=CC@n^Zf>l`bFpK0>qOtz8lUo{w(_R7M?hGY08*| z=J`ml5DuF0twri!#0{|)n30EVbi|A84>~>45XO?gczYmu7EY4EbgJ4#gtg9?Ay)`Q zo}mH$2@#d>JhY0gcAlhbaW~}Z7Sy5X5FNbRLA&Cyp z)5$2Fq!`vr@3~2px7pwg{OP>#)rjC^JD}u_sEXzSkSmSha}CwR*O~D5Md5VpQ`u1F zVXgjSc58&q)E9PaXQkE&lYu(HY#3k%EeImG4bK%4kN(%{qU!n|Ef&LyLByou#lq(v zeqdUoLZMjkw(A$s+oYRG4s*w07b3C@LY3<9u{U~HRC*AaQNhhlS&4(uR`JY&d^x@> z9jj$L8Vb#JkLEMJeR}#t5_0Q+W5hzH>7+>LOPx|sk#0%77`^lWJPnW1D|gF(rtcnVmC%b)Ch)rR z%ZfHAb1U$3(ZrQdF|P)=ma}}z9zf?Z?DJ)E3e~FQ{r)k@`?uUPM=XbvPCZH%71Cna zNMD*pD5+DAC6bj^SUOjppvP^njI_n8ch(jlk^fI+?-|xq*KUm_bdX-8V?cWERW$S> zodl#wuhOf6Kmd`BlmMX`S|FiF??^zJp-Pt~C?MTJ6Gfhr$M^mAd-n5P*WTy+n?I73 ztTpd>uQ~5=k1;&ZdA4ZwaOi@GhVGfCNwEkL2$T(ea zjVc>F@kAM#svOR4*}xK@c%R^8j?`4(9TxEW&&$3k@v2EFQc_ zSAXPJ>BEzZsuJ9qY{%sY5g;?@t-B)nVdyy%w9$mP(hA72@xMJ_|f zM_%f^&Z=#CD7*345XW!*^d4PLNy&?mn*`^lU2pDjL~JC3RmB^oM!0_PWYFBNmH9UE znyiA@Gsgo;?I4_5v$RFAU#tUu(5o`*k0MSDfB-7*&XQ!4ERh?=2-Bc@xb#pf)5LrsoOi%{Js4yJtbDNxKoqxVer1Xe@9x-1?`5H=a0Lf?%J@Y5jS5 z{Y{tZO~!Y-x)*zCm@u{)-udM#X`W>D>Myb^zrek~iZ~$fwDXP3OO}g%Mp)CHC7<+8 zbJD{~#7@;5Td~EkNts5HCW@+(E3FiG@{7_=Ho}sBx}IVn!Kk2L%V=Yd7NQ88HkBSN zZHdq!yKy1{%|9VFcGMjqa5whw%3t~3OHGT+s$9#{d+~u9xeIIV^dDIiOL9~!TNUEX z-WC>7<~B89608W$64Eqa7myusAw~n=^!h1t=KFSZJaRWxeq_!MHOM5^m@toZ&D6NM zO+*rc`$E4%*Q-<_Uszf93Dau8b?sSEkFC6~{raa<68^1UA4wOaF!=t5wLjbUmp=3F z27Qhy$-p&LU@_UZ2L(@cWr%_g@*-Ycu8mSIrUw+y$NN5$IN0O0S*e{h?b>gJ)I*6m zGR%zhvOUfdyh&b+C`FBpx>es?whGZMAiq)flV9KFcew2S-jx+nNuf`&V|}c{5@~6x zY*eC>$2WdvP2 zJOg;wtcZ^)k+L~a5+=6#c#t{FGviRUQ8zZI=>)9N5kzLKRJA@Y#vs?BQHm5EZU2sxcmgZC z%sKfG9PubR>oyRz66EvT%sWf{+int>*^8az5CCZ?;oH5C=TVA(2Tr){=F4=|uUepc zIZs;Nq*MfxeLHT|=M^mwnsLYgTRiZ~y(;x`!7=q)c+bIiD5~8_4c}5b2u+(xW@>mG zDS|y}6X0S7QA6biY0xa+Gt)nLLK$c0EGeOlg`IplO!BdBfj*M|o{Sk{Ch-Uo&CilQ zea1Zu_RW|n4aMpq|2vomgt*u8p9q#}>9s8&I;!a_Lb!wvIrtG3017(ky&3*{+FwxqjPqk}D<3uo%zJHjv6oq=46WsGdjydK zLkv)voV!NWl|a5XPa7ctN5^TSy^(COo}eb4rL^(PXHfC{eTKsF1=yF*wX_$4on^J_ z^~It>n*JIDiTOSe-weR&I=q$LFia%rBQ6VtuQFGnq~|Y$&qSjdC0dUe?aMt8BFPQ6 zol&l1MqGlX!m*{WSR`Ks6*v4RNOkd&irU4LGTPYXkx%F_MaLWm2Pfl@H$h@$H@6vU zVPer)2sm2y=Q|}w?%f>5=bu#vL1%J>FUZJZZ^hCl8Qt(IK~MT~b@woyD0JL4b+An?%qVgS(zlNNCFm^fq_3Kk*SK#dFhw|*kQ$y_D`@53G_CHJ*dQ`?AQRW3H zl`53h7^;N2hl^BqLV*N=1>wOlj+8{*u%u*;PqQ>GKU=|t*G3zQSEyP)OShS-$a z@<>kF73E(5JOhTa_Q`_}*r~4#%q6r#>5Z+ZkIz0L^)nY9hdFe4CW8Tiv<1OQFD@0y z?LJ-Iw!Q3K>?y!|Hs9_uY53BnpnN#~Ti)eC*<1oqs?T?AKI4G*93?L2sbhl|NoSU+mEw^HZ!ltgIN!Egrep5XBp>?oa*uo`JZo%R88rg`tN% zm6LI?W>y{HE);XyOu#N}b1?g3>3J01xzjPB@ljDuu!NeQDWB}FjOlKDnNu|xKgM%+ zhD5;VXV6Os$z;D`%z{)I1YIxeg3kYy)hV1*As7Q@An>GR;EJSWRVgsOYk8}7Y)cUA z_xwY7 zuKZEQN`Ad+hJ7v@#hN`SimT4RkN|Y|_5eaj;@AF+dB`(o-0(F?bUf_cIbTU@^NYPU zOnvg61(g=Mm=P~mreo2yT5lX0-aC<(zyR|Ro<)(ueB^}J(nWES9BpC;lhS+2h zpbAJdb$Rci6O*PCNgnR#zf7yIsJmd~^U{Hq`2h!fDKY?pLD@!`+&>i}WnhWsPv$FL zSGTy>K>I28T;36;G*PxE5KP+Cqp`M6LI)oHZuqdgdq;$ri<2;}JOd&WCPMe{l&Dvk zZx*OwzVt$5SmkHZYdG-?AlAi~gX>f5Q6j?l_2R4Oc_DqmHLl0i*LsRy2c9yLB)2_s zsb2}kyr;Xlg^^L)vq6A|4LEqAvgC0NNg?|FOwsb|u9$muG8Y@LiN_3z(nISi%(6LN zaTc2`z6-)CuWv;t?Q?&wiTJ&HgYOs=_HvN}F^nn(_G$tfJyUqy1whSL00dMh3pkI8 zJRYS|^E0Q>N1A)Oo7_|(sg{#QvVlJ)yMhn|&O&%8hdv-=r|5i&`E_M$fVLU>lWY#8 z$}q6JJlHAMjGilK9%%F84kRg>{Lg`L9ydK95y;CuJwfo`wv#U za&75&N9H8n)uloaO^*tzQ(F=)P)}qe)~G_MJ5Ti#ZHO8~<6MnCx9%>gEAUVyndqh` zFHIN)2t4X#Ac%jd6G&*Wb$>!cdO-+vYIWHXfBL>D-j}Q3$(g1<+ zkFM=Pqf||mL{FW<#3`w9)wjN?GzbAXZ!Z_^NHWXQ3{5t+B0s`*{?0MsaZG*B0~YS#YM*HOyMN?}_SWnFe1s&g zdq3T4iMkaUXqGdfzTm$XSS1PK^m+o9WF*pbmGOoR{8;2&Y}_8G3{A{-EfHKjqSSFw znw>6944@_8lq#B~?w}%doM8{*ou7C6CG}ppeNIGPt2_~;!QbIWDNL}jrMaBaq)yAB zQX_ANaO*i>v#xuugtS?vcpIMVh1tdKN%xqC2g5bv_&8Vy^$45sHP;~te#P1iQs%Ry zLXT_CKKs7_en5#~+t=?O?DzC~J>UL0xhgLsle3KGRDD0GMFb|xa>jU)+7jJDq&r9$ z1U+sjH(8OiD#rwH3A!g?g1%68y-fsULf#m`<1mDR7RT-vT8FLuCOmq*=sUv4WH54b zLY972kfS8b`+$Y&FF^hm<+_|S5d}FuS!lKSkI1(i@Dbgx$t=y~WDVN2{W!5+Nv1yW z{Ey#9FQ_bv?YxH=Sz1J%8BEBTOBO*1LZ9sm(q~}p8#q!%erR`|M7(+;OFFeG;5;Ld znr76tzb~Fm>SBxIY)sYyn`z>1YAYE%%sP4xY?Jb(Z)wELGkJ(})q3Td-AN?nC(iIFi7?pOoM7B?db=ya`KTx)^$6`46Thvp6RML zzhG;vVoNe4l_k1q$`?P{>W40+bdE);nTJ{>?!td|Aq5{(nU9YA+r)beqQx8E~}I>8QqJ)m;@$LX1fbOY(rml6G>4~7C+M1`&Xmh0ZylIALz;-tKip>*tKm? z<)kmt~yLsP9dmjz8L6vmB#)9`kUb@Djgx$p#U2VONng|`EzxLfkgLSjYrZ*MS2 z3O@-s+#ny;FZsU75g0+EtYj1+bm~C8vx#4O^fl!BJvh;`oFDj_q6@mtm`!$CD)p-Y zRH3Y+a}GepYyeZ<;OC0}QS<5SC7Iu^JH&PtJJBF3s7|gAU$K-mw51FFoB}^J^=^j- zVl&bx;X$EvUIU^5V!%rXsrDqUoh!6nApI4ibxY}M?ls|F(FCngPNbhMvGRz&9(kOf z6M@)x`puSaXt8fd#qf@K;%TK%jD~u?3f8i|v-!VY zWnObLuEq+NoLh2)XfV|rH+eu$@4G`nkLaqrrX-2%JruqtAsc9Kp`OxP)A^t!hrR}p z(oV#|IL3j6kgfhaQxHvnRH|k$9NRX{k7WtwB+PGF^VE=PssY?IP^LoJbIPs7R;e4( z?f^$1m|U*G1C z;+Cp4qwQ9JE`ksz7NrV6!SHld6Q)=HQR49zt@jM%YgeyWft&|7H#(@xYiVUZz$M8A zBlH{ZtM+QaX0Jvsv$`Tn|2DNrk&3eF_|~g;r2Z^UYw>BK!UHZkEec{G>;~UjF?Z3M zZeWX2#M_XoBp0Q6OM35=K`)9HA#2(#}l3I+~5H=*k0@g%?hUJ5U~=OFe$$6IWx+`ijp6U3FiWb;@g zh+MmSgn3w1VlWcG@~er!wIlDzEDf_pK(gXJ0{TG2%>Tp@vTpL znBa#Tu2`ic>*UU1V5G*YW>@b}RZ2c1cAr3jdk%LjW^yM?tsP4Q59{MWpaUXYMpih^ zH%$X5v|Vu6aa`o2Ux)p1MiEoeaX%5?m@{pttkFbFl?@y9L&#RUR~c~e-jEFm7EXC) zsKhBJOkmFF%Dqeoj0loS{5DjRY7A}P)ivJ-oORi%yO|gwf3}i(>`*nqPCHrtk6$eD zw?M~n*TDJtTKq=!E?S&OcoHIwbS7{mxEXF_vSbDe21mKx^vQQTKxb?A^G{UMWUBE@ zY8lEW2;Cb80O@lU1@^`z?vn6vnsqt(VTn4X{Xb~5Nz<#m{)?&3~jl|GF_TfTccK!lcSK9M$$yffa9_=*(uh!n_14)@-jJF z<4HiLHKNrc&BDv6vSRehX%dNMQOhB${c_^OVDWS4`qv&3gO_Cdtj<-0&F_uRYw&XiIZNJG54#-0Zsbvj^Fh-yAv ziqWEjlNj%Kv@?BpYQ8T|!)#x9+rY3pFIdWSB~VEuKHVifba@mCNTwYyUEv1q!ihCb zZ^=e|>Uhff<;+3!u6^xQ#s>)#rVfw!;N5NJr=}m;1F2%Ya|!&2&33<>;vxeNV9SQ+ zadsA?_f5Ji{kK`A8DsIrnIKwL6^A-r5+zFY3>Y}OevMu=R9Or#LNr>$4 zT?~-;xI_NBrh}GAQC7`eV8$rhcdXjQ>J&%Vu)^tz>gurZ?Rwt%XiX+mZ>%g_mjS+^ z#02%D(3ow&piLakBn7MI-{xwW#lR>{>2K-9I>_MLeDo*m)LG?jDJr`Ig+^VCKp+(& zA|eL~>iazhkh`t{-%-K`w#$jxfj!Oxf1>A zA!wr1#^uK~wH95q$#VgJ!O>Gp0LC|c% ze>waGpdfs5!ndQncMiV`ffKX7CH-bN@iY1El_UpO(9^?~%hL9~SHQ9WE^q_gaA>jA z#K`^IGc)gzHFBItirB(3xVf~Oe4TZhCmtIgkHoky#Wu_&=zR3Td*KGh@ng$A5(np} zRiNR<4W(^%CQLfQdO}VRak*DcR1Mju);UQB08#zUZ0Ry2uegFk0Dsf|>^n)==E=>O z!>&LjOq;s#0bI>xOo^;UKb#C3(0 zh(#OKea%|`y3cbE(o@vx$*?zH5%~n{!sRA)w)z)9bPlgF-hPZ8SgYo5=JzV5qt)!H za7pAt&=`;u)JkEfNdt$vL#{keT}<`xPR)uRzTzu(a24yb!#slx$;yWb*}Jtrmb=*| zluD2S^m_`rRn_=r0uBlWR`6pF_*IIXAyhDJe_nH%R`|1P&>=5foFmkYDrjp0JgH;m=zk26i zVABtzhfyGj=RqtqW=ZaAIdf3!B<)CZEe7CC)4~u-AxdsZLJC*e=O$cf`uS#+uc7gJ znDLh&&<#0%4PG=6n365gpO6R(#+SOeR#@%gm~N?7F0wU(3+98H#AkJ%{c`5O5(8i_ zetd8J)j!oObchWWT9`Nq;&F%X+v&Gt@vjySkk#*2$hLYgFw$^mRtZuaB|LatwOJTh zxU=8#I9^e|IV90#p1a$IQUkzJet>llepJ(hI^$=Yf2kVYk;pUOxnOFZ2ta@ zWQVX>j&hreHR;28bfEcu>a+?06X6`ae?Dd8SIU%L08kcx_BX?V{!y3ze{Zh;TiU;q z_L*eoa{ddB2FM9puuYG4U*}qV^TiT|eo}F=W`CVxkN4B86}fe~^zVH#i|@e5h1i+3 zD%+Zt+y_+5Dk8ZWlG4qcY))OSD~NaPNTg>!j{k6$r7+ByCPf)h6ZCQGn4TRr2_;(dp_}fk5#_P^(K(S6#K@Hfo3H7U?ly>t_{KRde5ndXH& zoVTcM1$Bd3O=VZ$1HmX0&QH$IOAu6aKC7~0>CbST_m$vyCOmN=$2L8Su5S`N^ckr> z5NQ9QbC&Bt4t)25p>p~uhA&W^H#RvhG>8SMoJ_w5!umfrfhIic#cQHoXxrhQY0;-> z!HD)*DD0Y!Q;8FvtV2YUKLps<3kG}ErK)4fT%?}^O*Yie@3+5}1Y4}t1@;GMU%lxXvwmg_Z9!K}EBZ%S8-E=m>C4j|Hz^1E2&a0kVn zZu`)q%uIq#f6+3=uWnrg!P(NN1!SJCr}&2*tk0d0+{2#uPc-G?O!h;CB@*FD@ABwg zg^4*Zl;X!H3D)`XotGQK)l&4g}4Feg?_1yr|OTQerdnUHV^zk-^LNrIM zb9UYGZfZfoneS*7F#_bkZPhqn<)zIDyKnfHDBB*=g4G=zrd7)u%EV#^Il{&{s|p53 zIoz7x=`s-gpj}vt!+(!ee4ztRe!YHr)K^4vkqq__5AA~q+N+Sh&4CSPa81bk(yMA0 zxabF-66Q-tD;T$wey>0ZPU_xE_Vt@Hz1W0p{HI<)EmuA^YzVF7`XVC#NrS!=vi?oz z(WZv}fDc2_DQN@{bGYspkh2*e-@fa|A!Zgz!AdXq9)bg9xtYvL#j3prVYQWzLzcN} zu70<@+w}VP_B&PT_6K!zg(29iMWHD$R;MxTFM!YH4O`Jv7$)_YpuT)ltH~|ca4d{-8p-rco*#hg=gdG;m6y6cPn15$UUdgA0)k!cjg?#~{(x?qB+W zwt=$1o*tcg$X|f%0ALMBRe0MmjXw2f!`1L@wm=Hy;6S*MgC2d-B*HvZv_-5GSR z4S4F@Y$|r~sLq5rQKH+lD~Va%!N;zgsIM5fv=#A-`rx#bK!rlJHoU->#pn1x(hY$^{`r4F&ZE7Dn1J7hVMV(*?o>*cQMqN zo#hV?O1MGSg%T#GYdqsc#-#AkNfP~R!+Ne3`Yee2=xX+xH5bm&seK&G zpoEQQQjq~F9#Y4^-dGWm+n-a3^%`w?#ZqyKQ)NouN1@}@xL=6zv5x7H;sN6=gwFo= zHqM6%@>AFES;*5?#-EEIpKL9N^DHC3u!_BXz0YHwnd|FZP~b~zgv|uI{&tx zt~v*p!XHTc2M7H}3UZ;It3&XI5;avv`H^+`vUYB-q40hF(kfSZl4B3M1x?R<{_lq^%VINXj$vD%C9#+nwyG zkm#RcQTjzBjkVFU&Qm{>jL#jgZpQ{!M@pBaQ+?dPaQ9kbv$yls<~upTo|RRgG7=s% ztD0ibh9?X@l&49eGKewq%xhI`O5&50y0k1h(qAnwxc;}(6FHn$X zCbv*Mx?Je@W18?B=Z@{V{#OMxWwt*1ylhfda)Rwj)D3Ykh!L`g2*8%8Z|6@@m-{I{ zjJOwVl;o>W$tYOmvRk(GSy^3N%S71;44@4qhIb)lAKq!rZ51t0?P`wgvOuiXO>V@~ z!#_T35KK%2>mq3xjRLlZ(OKeiB6W{E%(Jx$e29rnm7mjbPez&xrCj1WE$=_E@e{r6 zhv~FM>(}v4A5)kL83}d@5n)Xc&$fY0otP6ooAcq9!bXIGj;Vrw0R+XMdX=Wa4l}r< zN#P3Dkl2s@GVHf7cl5<_=exz z&<_Wne+_};&cg;@1^RRwSIAaZ8mcH1S>-@w1pkFV3g#Vc2;EZq6^F|$p{&C5`O`Xi zJLm$lKIpSiA8z02aJ^R`^Xu`ASO05Trn;AE#d=NC&XTc_zc$T|gc9)+GqJ^hHC6Sn z7Knr#+(bgu>~R>=&X-IVEnMhZWFX7R7IlX1fFmHIB$DKt#CN@t)V*7({tc zkQZ(Cu9JXz4eUAf1ehB1P|rP6!nC76%B&=#RjUDs#+9OS(FLvq&+xX)pVK>A%G#@J zZoYW8$Zy4qn2DcOG}c8_@~}@R|J~=eA+Wl9nOl9`HuWKvpkwRNx4aj1#`w^I&1Y~# z;GWg>dsvnsl2jT1O!j8(W`2TW)YBxtNtPve-DCFinpfO0+Px1@izFDI{2 zKB~U1E7h4~Lh|N|+aH#~><`2uk8~-b3!?8Tke;$WO=2OR<k_2UF(Pto2wh>45LmF6QME1_63VF0!+C`ieRR7pTy8OR=4eoCQ7i`| zPKDbzW{}e52Xd;L2pX3W&VF{E_)YWK;ZnMRNt|qlD=+mZ?=&pfbzk^SxOl%yE|05_ z7VqrrZN`;oQbqE(N!$H=$C-T298U@xo1({C=mVY*h$iZAR|@A8lh8azOE2n(OY<7< z6Jl1rAaqYMhbT=hC2~Ahh+#dZe<#uY> z9pST)+|6o6i{P_m&VlrJ9nabjxoR^;br-1g*jLASpvdVA?q0XY^~N9MBiHozip~Y; z-++j0(~INfdmW0u%LvN){JiRpg1b9~(Pb&0kqF^JCj^>gPa0(h3gTEJKE_58w(q7r zT8hor2n|9l)c7Ia_Rr7~QxrbeGWe(_$sz|}cfmRciOgWjzkkyeyKu#H?{~+i=qt-P z)46TL#patMC}M10K49&1QQj6hgvI^zbd^|}`-52$t3^HxQJFc241$_#37i29EDReB zAaTK&bmAFG>Aq)@MI$JJb?RX0L;%3t<2xYlqwUi>L^=XNq))c2DHyF+w8>>k&w3yq@PC1TQ{tUFU*0m~K|out zp)N{mrU5*hQ1Leis5?-WOjMyddgGWNy{FT&k)+0|kND{R@D?@1 zP13rFF$dI@CThv?Rp}aRoA50kgY}+d4lK0E+z1;K=Tc;AXCM4lW$=Boo$U`2lrH=E zZZ(a@trMxp2Mf(MUKzNe=9|wUd)3=~sny9iRt*DPjO&*)JT5r>naG+k#mAuQ{n)3~ zRI9YPY$&6y)s4BCPcbsI=p4hzQ@#pDLeJ~qbFAgv0;~HMA-7gJ{s!A-aQ5BReWG&14pG2e&sHN<{>WD@*$km6%LGX}NW3DXA3m;bt+o6c3%@UTeN_G{+}S`cO|z0`UqR0a1JI&CdNR}oo@OW``JZO|1z=qLP+k7z4KUPY((bS) zAwb|^-JNRCk^GAddsweL_d+L5{9Cczq?iT~y3ZBt1 z!H_;SLrlNGaHQz!jj@~;(Mwt#BI5gkz07#Bw;YsS0MC;R{Tl$r^JMuRYUZYEM#W2N znc19$=#Sd!4mh}Msi__p%ak0->6xgXia~6*5(#LtSEXhB|tpA#NCO5Ptd{XH?|D zc2JeJibaNw?rcMDbfpGcshK2uP#;P6ZytvEa?2m)a1!yi9K-9E1S>!9S-BglA?gcb zOfmQA3_Xq1WH8A4t*fxlAIG;toh@=mTKH>=1k6n3ESZz41Aw|^CbQk95^V>tbo<3# zi;J!j+g6uMt&?e8CVWoNj0?;(`;!y!kYmFw-MXpGef#~yi1!Ylr~NLN^E-{x_3!As zyIXISO%H~e7ppEOVg9r%%*(#1CuH8f(;2W;5XU?}e8i6FzYR*V%GeTw@60K;Cz!Y^ z-sqJWF^Up z`oMr~HV*tH@g3b4InHZ^QBy$MRgV7k$4zY~Tq{Q`N@Xiv{szq91yzAAIDi9_K>-?X z#j%JKOU1AnN2A~>7t~oEZG`;Q<&oam4y(xyqWP@jPJQ&Gj|YAsv=I_ zyvS~cz5Zw6o3lr1JO2qCTHMPzM7oI~#l!^146do55yQ86!S-Nj;Yypvd^Qo~FP_2v z{|p;gq&)glLPckZtYvi*6*QYO84QqSi~>?iCU8>ugXX%zHiWg^AU5YF5u_%Em}nbd z0&{}Tg5aURVS?McpX2Z3_#CI-r3e0RLjp^W_c!Za8e6>dnSE>M(lxLNF_#)Af#{o& zce_bmR0x9oF-!Lt=MV4zC3^^|oPz$BRVAqfLQbP%bz(*4U(@s{$*X0yaCiK>L%p}M z``w_NB7!3FJ+73Wk3RiP2A&D|!sFu#$<*WSF|X7dxiR>K2qqscnJ+2HZtOjLKt^sr znzUkZyj(lq57a&;bICObr_{ioB3Q$~4kA-JqC#6We!&4>Gw4O`u`MllrNi4ih0LkH zl3DT_;MgDV^Y8)JS$?x6lo1#L?fbBbQOL`&i`=o0;%>-62LxhEgl97*?7>Pt=w}f#Zfx_K^e@%SZUjTBzY0yB4e%poCH9g^4nZu!}2BxjXtZt5N&g$jk_x(l< zhy*wa;G7t80TTFUCleSX60EVB#@G#7P*_?XV1I)cG^ z14;QB!tBJt1qXNRNUhyz%-ep1n;gV=JDAd?91 zcB@ZAMw_^SvJC;KIr*d`06#I$bX-W|-c3g$|()wIs^0y8k3O7lXgA}b^2aX%U}6jrKZK&BkETF%nX9;UU>=QcW8T;;tyS#4?1`LPkh}fNq=nq)?$74 z(n9pUW!`B;Lj!PH$nUhXT4hO9!I-#7L~3B9wa13<_zR|wI53>_!+2YS#(eY z^uBhI=v01oXv?76y=V5X{)Xy1JwDb(y7yU^`n)qm_1JN%LGeX723~%`qzHG(`=$T~ zK7U&41**Zbt{P0M*_ztC*5;6MO-B*h1(nh( oRaJ&gm|_1i@}%+q8QA-0d(i)dQUAkF^B)D`|K;oV{(Ara03q=w4*&oF literal 0 HcmV?d00001 diff --git a/assets/images/website-banner.jpg b/assets/images/website-banner.jpg index 475afd7c3cfa94a9b262deecb33615eb9419067f..d212bdc2696fc432f25476e8ab3c4c2de6cc5c76 100755 GIT binary patch literal 48110 zcmeFY2UL^K)-N1HK&4ygO{xl^_bMHvDJU%zArNXpN$6k!DbkD5n?3p>4I++KsXa~AM z004dc8-R0w|Dcmi0Hc;4*dqu)1~_|~tPB90%#$a$A`sq+Vq!43sDqQ2qq8X33n~`q z;4LO0DlP_4RtxlY0DCwicpRNw++Zra+s*HJdEA^-cr9d%#ErZ)on77Zf_GQ8-F&&AdDggwGi%amxDTq4AJ4wsQNJ%S*@JNbFN{NX}iAhQUC8QL^WfY}lc>W;X z(*}K=Ad041I)5~G`liDBN529B0z?C(M7?}n#3U3H6vV_O#Uv$xryM|d5DeiE2!z4; z{;WaE84mV!^G3LN!FYbv=-}w(hfv`?754XDK)sEO{;K$&4j2^rt82e;!x5&={~^Xd z<%Zu4@^%(8b%uNS`GTEK+4=q~d^&vp>xO@4-N=Qop9U&6pKnPeuT0vS|R$5-d;m>;hS$Pe49SM0Y zX$ehv1qBHSZ5?$j87XZINlkSP2@NR)4e3A2>cij&2N>A-&$iu8+y0}h`2Vu3qNcC2 z1H#Mqu9uhRpNeqX)eGSTclGk-k(3sd2f`YSxw6nY%P)fo<4(K2&?Fdwmb#eweNlJ@5OM&I2oWz}Z#ZE;O`=vL3 z)1yC=PL=c5<6jfw^yROqU)_|gXv2u zUwDm~H2=vofQI~35JqxFfEwW2tuy~G5;go5k*PXiobLyN5rF(v!EK%*qkVMOF6_&& zw0)?jz3et8x%PjR0FXRdEK)lG7|keB#%(9W5ebWhu5I6^+Mxe8;s5jF!Ritf1r?3| zEOs9_x)E;sk>cy={Qqwe6ZhAt2gWAoPUc~T|9x`ZWnXl4@MQ$=G=_L6VIKj*t;lWI z7IhkbqNVf0*C}eB7Y+2IvT+cH#2*{LY{P|_Gw05-MRYRMXZ@0zNvti>X9xB}`~O%! zLVxRrPgup$_NHu$s!@=jFzPLTZw!KyzI04togpEzfW0g{C%S ztY)-R`mmKgurmeC3R4K4_oUCz7wG)DQI#qq4_b8mZz{b2&dgV*VNJurZnO9a8otuoAu+Y6|Alw?sa<9T1gj} zHJGH&;}_U)uP~CHr0Ik0&5R1YSHC<^Jb25)66cSD(D=);@CSvaiXUe-%@@i(+iIwz zyE+C168st}tML8aNVHWZIF>XT-78Xq)AS|oSkDw$;vP+BeBpZ;qj>ipRgT=64N*AH z8BMy3yVbKD^L(<#guOtR0$7*EanFOZ+d{8c>G_2~zPQF{`|G(wPex=8zb>R|6rXqB z-8%@Hi)_FK8Poq%;VecgvPETc)w^lU!0yDNhO{3_RTW>HZn$)Q?EKl`;X0Y3DRtCM zbytpgDCqlxod zv_dgAasHriT%RhciCMXQltPW?-gNYWQ3v8tFoW+tODmRNAjM8mj@6bYK%ChZbI!@{ z(@o7)+xEOAP7#hzXG5pqh(u@kgu9DB-#SIQQ`V|@J#RoJD#H&>qVc!}BKf(5%9vN^yA9HA*C zx|$VhI2m0(4c^;Y?Dpi)xyW9#S)9s?WC6^!nP~lpjwtlr5>>5|m6C$BO}(;} z0``{$dB)_`c~(z^q+~e&2_5$Lry>;Yk8h>vmE~T4bsN<iuUZYEabi$nK{-QtW{_tYL~W3^#6WQRFC@W#t@f<-F+vNs>@bcbs#CT)M;H zq5Z(*mX<|7HC`3di*q|RZU-i=@aCm6<`h^uoRS~5s){qdUf~hB&dtsad9vb{sb;qo zjkEU~5InU3wf@hS>nn;UnEE_G%nEz{Td0_B#vp-1)>6GOBb)1;g-)`t(O&q2cO6*5 z(-LN>^Dn?1L{CRiaKz)XMktNUniu&;%D(Br!7*i!I>#AZsvbVq`|t=&GU+p=25hsI zXPJ}#H<8=2?eI!>@B5i&{}$-~Lt~Z?M;#6nRCXEcZ~nWa?s&9n!7X?K2)_OASMo>W z>JF!#P4v>ze!qIysr&iw5k=hg3!BiKpKJe(I{s*xBKoH+cUs!4#DBxW{ca___KW`; zb^HO?e^~q9t>iy^$AA6hAC<=q<-h#_D#DM=UB&@L7Uo9w0c-ptHhl5ir+6sss=hqX zyFX6w>S;cn{%EC{=tUXkh%L#Qd9#F}25tDLzxg^sve?WO$|0NpEc>PU?*}n<# ze;fGgJN^G|i0&N;QU9iChbXXGFvw`}d4v~Ci3uzv$B&#?II}JI{3n{SrLo^n@y6m^ zZvX$|5UIX0+ZKUWQfq(5Ra7&;AN+FK{ed)>(!UG9H*c!@Pi!rWth491abEtSQkkg3 zrclz#^Mt$99wBy3(6F?+%upQ#~EE@*G5nfC~;I;E;)rARHz)$|f z$bQkH+?x`u*}(JYHv#(3R*3qe)4Hn zo~1_wzjUR09g>MC-wSXeFn-aI-nEF$SbvGlEJ5%3ZX4tZstRwvwTCmHM-IYVHw(UF#bbubN8+sPMyvOj_mh!>262Yq zV#uvk6A$(*{yRt`33ZY3bUV5=K=5<3=Y)M*Pa`)u&-TDkPi>y}cbEpQ*TT@VQVo?P zph#u8NKtd*rn~ALIA<2vKr`oa;aK+9049#|n4A*PY_peb#asRDf_z?C5f1NJRjGuY z<$ok)u)>#&>yYV6MbcZ0J6M|dtFIbI>vP?7&C3K1744zbYT3e8?K%E?!mLw<{SWMw z*qNuH#YBynK~LM|*V%fT%MEbyqBtH>C`LCq7`*%)T4r=_d+Q($;<(}R(Dr@V=jn2H z$GXe{#AnAD|JPH#0TXw?i@=(^y~8arzQ-eqa;{?&OwAEXWvt!h+KPd~Si(3`Gz)j7 zefq#hbZlfTHrUG7KPNsG2RML2oG1L{3^6=3X}atz2Ct_g`YT0?tS7!sv;c18bNhL{ znunYK4yFp0w1L?VAUZv>@dVk70NQt{bD!lpit*(*)Hs-XyvekgvK6q#LH?Mb z>Df1>^>kN3xM&R|w~io%%>O$0u!GsmE2H{d*S3L2Z&i*;bNNE|bhn@PN`uOhLh%U8 z;(dWnQpPDlnmvj)D9l9$_;HN-6_9*e6?RkwBtUxPS$hQ?6_NvD284oD;?sR*8f2#f z^m@;&FfI*b%YG{gog0%&P%8FZ39y|2NnNrIQInDX6gyyJxQScltSYPodHxq*^q-tQ z^_BN+Nne>R9lZWIbC*ly_rmI74V!V1Z=kQ1QJu(MJj&E@atF^Vy}@w&rZga&CIYp) zsO^(+zt3h0*OO)z51sf4EGa5(F`+vL?27I;;z?wu&T^8Fos*Qe+h^hIs`*ryM^{CK z;Cbl@)1e-9ka_jVKAg>SDPc3a@(KVw$JxpDl?Mf^7z5I0Go!mNPPCG)77wh^3Oz1; z9Yc&A4W8!zvs3C1+S`w=hR`NFp>Jww3{0dBj4EyIZWv~8?nTP+8|T%4MJ+d6S^d0e zoLs|iQ}YJ|RgQn8tUg;ffS%iBmEYp;w!-*v7WokruijzTgV(FITx$>a%@jf35O(u5 zPqo$!9E6rF6<(Ag$Ugb39{wl-9Eoe(T&mTMewTf0;17541dhLWvNpCAd*K;l@@bY| zJoEnd1Cl4qh6p0uYM+`RDh$A_x5CvO)GOB(7;e$@o3jHmnq>pa6sjsaxW&?N?^+M} zu7uPjN|R91bEMLm--=}R58TL! zv(TFYDf=|`OUkd&(w)g?roTPXdW}yeynk++-8r*1y`9v5QT9AKgGuR;pAtGo{Pypj zWxx@&lY``x%aX5#mEA$XWgql0$a?C-g6nzy3{ksUi?ECx+{fjR?KY_zsUk7a6pm{7 zF8`(tSdZ+tfx3P3?;DL!(wm{@Y4TB%Ng+uO!^aa~p;U>W?EbudG zG1I~0^L~Y2C&ZF0H^K8v@j#Uk)unY| z-hB^-##@FiS?tTES4e>HI*>%WmYRO+&ueeEZPvZ?MsMYFb`{(!$GjJXKFzBpmeN@6 z)QH9{xRj2J+WE^gIHR0h;*&q*gECdSBhw{JIbH@ zcIC_tV&%>DS_GWM@;k86~=UM}8VZm68HgzE!^- z!}`@S%9+r`d!Ri!251z5EVL%vmY3}&a)hvZYfW(yFf>}VuBjoTU>V97v&Ao6E;znD z&wb`>p2}HZd@Ibx*YE@oud~Iej1Ru@{?rDP9B%*M6kM1_?Kg)H@zLfh@ws?73zT{8 zC_ZvZN=YJ0ru5HJs;B@e3=@oySlNDp=fHSH+k?yn%!9lAUA%(4atG-(?DldY^($Sn zm`hG8wjI*`x8cgEdf=4Q*3`8`A@?A+%Jet2cbprm!@P2ZSaCIA8W%?)Q3y5`L}RGa z(PudW-BUrf=_i2sTN@JfH48+H3NkKxD-=JD55vXT*}n~cB9fJjgT<||5o%p9R$1#P zNEevbF-I{3;)j$NbJH*50P^}Me94$mD)(FT3uyS zdfQ!};5MSzRT=QQdU*pHSDE$ndu1i*c~yE>DX*KScajmy)IdZYveU&e@)MS@#D_%I zQm$LYU423awpZedBoXg@aD!^JK~SPzH7+bjh|7gw;Tu*d2(7K`+ufeDLtYs*jj2S+ zX^@R1L?%NH7S^I+<&-)j*g)CWD^vZd7f%(fk@Kw)?%5?+%K_{@7n3z_`~;VRF!cM9 zE8)0wBs#DJ-4RPACEEt#`VHeOm`E$qA>nQqiz&U<~- zP>u8TdlNZ}Qf^z7gp$S0z0ib&=kcDk*&JcH!|ME>Bod`;R1(Hm&`c8LG0LCUd^ne* z`D~eN<-i=H?EAU}3Cft+6p*9*z2^>flE_RvHe3%X=9~M`!-YH_=SsF-J(yhA%b)FL zVVVGtNTBuN2+GcZ<#<@d`S+6wIwq0M9=;{QO2W&_9q|0=*5?p$tY**<%IP*iT?)!4 z%3wHAhqO9JOO(}d=V+^@eCGXP9`$;gT?$w%x--kKV) zeSnm$V52Z5A-+&FOg_8u17*^ddCV-I;pQT39`PnD_x`(gDWB}{tMOfD6L?sb(+Y|c z&py`mF<)MNCfatqoME1xgb&;!EU`JgLrIA1E3wHiYYc|j0T#`R`JTkj^5P%5s}rM- zePg@N=4&?`k3|g7|5z&brvEF$T%IZgrdH3ht9b%Y5auB7L2*wf2fa7}0Xx9%y;oeW4_5@hkAj#Mk4)*M)pk>>KPbof{Cq=|&3({oImfG6P!l=Y zD=qh_+X8dR5h3a7`eyml&Y7*xD%YPRPIPeNK#Exe#p74tBKe3BBzDob%YU< zs=96nBltI|O1kVv@=@8Nb)F(Q&0bDbqzYSbe05DMiP)FqiL4ms_wI&$x1L)`5D_cW z4bElo{R9iFLfKC$V7$M>Fj;9#L`}XNVFP<%d*P*ra*1!(bwpO%JoEL7aanmUx2S0< z232P-r8V?8mP0%J%bSukNkidaH(E%^nk&yp>o=w@wrQH2a%2!G4wi+^8D%nY)TFJ; z*Mc;`skeC%_C-$Nf>GU9^y%o5ea5cObFEsZW#q|p)Aqxkzs}06WUpSEC0af(aL=;b z!{UOZ=28~Mx~`=P*N}moGTGWxLS1Lr}&ix0yc!i*D$12;aJ3{;JGE?g`LV_nf7&sgR5@DXK4k(Am21dbUBo!mH3|TEL-=jj-rko1(osl{L}Fz1 z5<8}qh~}5nG#1aZrSU0B%w~JsMG-fE$!zvZD=tV>#arX(#K;~sq|RRr6jK~9sn%kv zJIl$`H`^Qmu{Q~MB7VLS%rLObcs|>b?yZ{-d1*0)g6%=0Wag1g*jV)e@L9`|xunEc zn9brm^IiFtG49(40E4Sj%8uR|zheH5&Em})Ca#XM=RC(VYqvc1(y{#XKh-5NkK(M@`__3i8l8)R1Urx|VybM%tCTAPs1eX$99 zpuL-A8QaArbwnAV`cuo^InA%uQ-@`9VXHc?$l=SoA=*kvr!Ktx{sG&9_Vsa@vM~QI zKd8<7TQ)olT)3j8g!rs7E-@|7CiV5UlFZw;Lfn=HEG0d3dT;^g&m*7sq?HQ44todO z%BdL2dYa=x7iEa?o9s7So&|ZBL?>Q=g_w5Z7Yfk^+3#fcDm~_s6~fKa&#+HYwJfAT z5IClRTD?{6Jr5WrPDpfJ7ZYb6(E2VQDPi9VXO(vu8YOv{_$g*V0PO>LX2gv(Np~hontwzNt-0 zXEiDW3_7>8Ogdabo%4w+{HpOwN6)DM|G8%gNLKvAEC1a$XJ8z4@;M}kv{ z{UrQ{?zPtG2~ur`yuM)Od_oi0BinXzc`Q96;8vJ^_p72R%aK1$Xz{%CdYravvY?(2 zbpmjy{+TZpc$rWKx%RI?=5M(9ul!@Yd0RSh=gQyz{y5C>KOHA3Ou&}Q)e}HtAdMLe z*wy0Qv_3=GxZU76C@5#pTbMA?`aE{l?Dfb>%lE7P2rKgw0N2qQ8SE$HD_;qp7}=+T z<5u#gIxrZz{F3OJgB|9a{OS2wdsUAjfk8WuxTu`KY=V!aHjnF1C4?rwS877pG`%*{ zWS};3x&PscUi-9;R1GXYp<052MN(Mq1dxsoep$DHl?mfrL2SL=f+PY9LX_{c4kY>$ zEbH`!UAf3h=*S4tyk#k{f*X#4aA1qj{!@_h3Q?ivFtmXfrH-Bh zvKNg7iu5*w4pcXI#Nt?o#mx`MA23=(wYO~*Kj4QM zduf#mhn$k#FbcRlgQjl>;bUrcyBvJ{M7-)#r)Pq4&W^AwGh*I+oaQU?Ftb}&aYgLm z3Ji#>E=C^WKlv>+kfqDBzEv%C``9Jt^* zDI)Q)UC%%!`gS6Rg)a`8`MvC{oSWuxdb|Z(|N4AYsWOd`(a({$ z){Ea5&&SntXJ~vfTFWRb@x5zTNHls`Gz(c;?eG-EpoNdy@wHW{P_$x68C>31(Y#kw zmf5xe&KD&d1i22SM7pG>Oj-4uim50Id&@ziWH?KjwN=%t~kndpJf zUqEtKpEctB4?rB6UgeuO>Y7Q1sVOfW`Y4092J^jqQvw^uNw>GoSlG+Dq)%aTMB6e< zmQV{hE-Wb8Pu4y~#?$7IpqEo62kp%(xR2v|IU#&CfzYbx9%qr701*+yL?rPXiLL#B zTflPBM+JvQx{YQ|CaZE-E zZ#cdt9dv!`YDfGhaJXzF>=3!raB*td=H^=A6*FjkHm`HMU|)*8K#WBK4f=glN^;H4 z@|XOft}FR8Fdh31HQ>_6(zM>?U0dsoaqFG2QPF4Rdk+LfDq$AiTpt9@?u_~VV(%=^ z#aFEl|JZ%MTqc^bj3u`ktA~ zwbWvvdkC1-f_h%l+0Av|!3Ug8%tn|elDQk(bXvgqZ^g?UX(w%d3HeawKURDB)Z|bz z&uTOr$Q_OR+J`?wuk!Qj!@_q31G-x~gL)Ria3-NMYy-{r72@p%Ii z1~P$`2k@QVmwO7l0-u`3zeFLi)eWg=9rBRFhDraB_V1a?G02`10O#zF_xA$Eqa=9? zn54Q1AK$f1?_+7`l-N`H+K9x#g&E?)cMY`S98Qm)>{DWqA5-k;lx4*j2(w7ADo!P%MLqoRovG*dDTieTi!&S1q12@ zdmt=7;Di;<39|5V+SOA@beEq1ECEfd!NoJaoEED*UQT+N_!b$s zDYzDnK4c&0gjJTtOZLqpy)|%-WNe-Hn={>YpSX3raOfZG%X*6J(>dMDg}kZ36nRee z5BFlFnHH$#YxbEkXr5;T7&n2%iW*v-A8x!#w03Lc{}Mv2t4l}b*&WnBnLm|T%v(SU z{3-u1Nvqm8=gA_@0+iHcC<1isAL6n*#QvC=X*;*@lSjw^%QD77tQ#q;5Z>j>hV(2y zC76dmvqLSbB|=O`Mm#sRa&dbuupe&&Aqm9^_oL)NjBaBb!@OJj7fCDJF&k zVb|gtDn`|ow_YY->bHFN8*n(ov@a;jYHw(MPnP&a8|_|tU|QLjn;(VJTf|{Zjp$QU zwrFwa=v|2Ou4&q>kk^yYinRQ8r;MSQu02*I?cq12D=wG)ZA5GOEo$X0gUpBg9j4tOt< zx&NZA?xiwJND;j&|6Nl}^pgOMDNHsBsPgEb51kP5>nxJH8=Ao`3B)R`}DGp6}X(?#k+!)MLm@MBTm_o_RmDoKqn7_3$CZb!E%xT5hWY?sVPKw86>VMcZJv`8PyN zaZs4rWBr9**+%y;g#vM9KaPWkrK8^k)4JRjj=xm zhCTFlc$VBfaZT3_7n;&eu0_sUHR)LxEzGeFW3IEK{ zeB$0}`}bK}$&JYoMXEUv>)zmu#D$K{@(_O45Du=6VPbZ~ca1Tts7`z>;ycWyPySX)drvMyq%AdG%hL}>TUQOj%P zFs%zbch1D{#$3MnlJeOFp4eY+m;Yf(|CcZ7RK@ReXVDA~3f0!${m9Kfi1|$?d3Y8p z_mQ`TBtp(k?W>MV%xU%|D%i@S7+CXy%%f#CMLCew;Z02@-dg%fmWCwLhrE|CC`rbi z)y0%}nvm=*L}H?B{d_(nqu#=~d7a6Q3)+FlBffHSvgULj1~=C56SnE+L1*a@_}aJn zyiiT634XeKuD6*Q6)SC0Q;=oaC}o=_w8y!^r1bqPc7NOcprXa~aB1Z84f=cLZSNh& zzJ*xc_D@T9CPY?@*K!?T1RBz3t{Xz@oOW;on~Me!XH6JoBRlh~qs{9wOEX?vqTwiT zZ;qu_-X(o`Gz1ngd>5Lc-y_~+cef^^zB`}DT<3ba)ZV}AZ6x6(tGYixBzgPVW6wGD zYWg3QQ0lWU>;#DG>`Qzb;o{by4IGZp4i0`^RRI@kk(yxd1UsNm&7FEv^F%UX{-|}G zjQZ4GUGX~f$Z=V4QRyr5=hJl^X-JY;Xz$aDHRwUl_*9Lam%ywFv1iF(-g?){^!n~3 zeV}ZG1Mz718RsPtIR9(pb}=HLp(|dZ|s-`TGtGeyIt(I{`zTE0m0Pq z^dy5l+P^Bd3H3fTL{JNQ7CPdPu0Y;WlqTG7?Bg?Dkz4Y4(t6T_AtB{@W_Nx1)-XzI z(h`le?2@S%x{8vjk8Dq~Jy5bE_-YW{U44f4#*0hpIZR~_yt8zOW3aql4?%~?y?4H( zx|)e|1_VA)frOHo3nOW}Hhbd(v?J?@eC27@h?HAjrGqL*0)Taa0oK+U*pj#tKnt$F zyKxxbx!0u(9G*84^Vw)vEu^fIF+0AChpmAL{snEo`2ho2#^mn%UfR#9Vqs=K(ig5x zt#R2XRwiuufkxY7+w7hl1mAdfJRb0Bsy}QzQFU5hl-L9fGE-JS9_r-Z4tyT1569%; zIWL6uxJ>z%W)~oqHeKpa5%f+15_Ub9OiX4^e0;_|j!C)K#N-*7)o=Ib*8CrAwDxoY z;f7JTYaBgwH|<~SwxyWtuZ>Gnj^HhESdP!76x>e%?J&Ww+!!*6AY zPEVR+qb+PVi|mL|pQ)Z+sIDgQ9sp zOmOLkiW~B6X((T21rE;V-!PV#xR~q%5L2b4&)R5ZVrgZCgua%6;|t!udDFB3CxEZ^ zKTmC@4CseW*IiKh^!YsY;)E)M@gys6aV6()1$6hyE0R|G!dpuPtWX?n2>&JaAS-G- zc6xZB??MJ;Q(>~=jSASOoy~Nq&;=h!XTyv5B@CM*s;g+jc&iw1`+~zF8lw<&UU+*wC@YX5P`A9t z&5R>ENd3-e0$m(cP*}j}LD{!<_$+CsD!BeQYivclY`KdixrJy{_JiwH85xZR&wq}n zZBthcb9%+~4Y@_sJ;EBQm1^Fi(-Zg*KkNz5+DKK8|jCjfmPp4jtRW(+Hh#d8-V z+sF+X_AjdEz1*B6SWm~tX?Jb&^%jXFGY8o!Z~}ic#XfY;25U6j3%S~c%vYRVCmvnp zV8EWP`n5lHc3-=)QD4{~o9oATE8y;Bke4gF{$ON68^x%soXksw8wx`b=t-1uiNc^8 zo6U`9H=_KbYdO6Fyz$Q<91l_g=O***N}0}Bv)jsWUAb;7^Wx6kPijXIb!R{0+J5Nz z`LIJ03H`~pz@f*+lWwDSlGzWvGzvt=GmhAq$CFX8Ey9MbnN~ZPK6J+zF9mR6P1ar@j zS~7tjdlLBdCM4TRyu?rQoz55IqZ-ubWX_4_P0RLs8mC|d6PW30;ne&@>L`F=XsaUT z^?EFwN++vk5VTh0PTV^~l1Gs@7-PW6`n-}~_Hh%Nk;z#W8j_q-Q|C-G9|n05$!QV` z$@6lN$g{mtlr=$BShy;Ir4~teW-%f8v;xLndENRP9p{w=vMm8hBeI(#!qz^E-IHs7 zm~HjPAt}!@4Byoz)XeI$7jL9aErN~nym(9F5&)bxKCv%3hB>4%4K?`@WkjpMRB#Ka&$jusV%&+C#;eh|L35b$DA{FPT^1yTprodgw&aK)NvwHu;gl z{bwWmIxBq(5;)lL3E;Y#FdHTy>(yCzV2CSQ-`CdhB3;CrK1|cm0?rX-_!7b^EEeMu z098q1D^g|?yZ6)LMs*hAt8S&u*5~G(j`Yo< z0FY;He@d6j*}(FaPw_cL_ni{F*ClTg_gTy0!c29qjBXn*VTNj8H41P(mU)#++YUYB zww@zC^=r$!D2F6bop#}d@}-7^46`$ij~b{N=vKXMWgCC;|2-UkTjJd;iAk-tYx_(N z@}GK@??bm&mH+T6e<9g#K=<<8DYO}#LR;}4KIXZbFHg53PIYtc@y9=sC>XAV|Au|1 zC4QYM{b$7U6}6l5y`6rH>K_l#b1XGeU-;SnYN;sw= zgvbunaV4$KrvXV;ZWiTMql7`9^80IB0KkQ7+2sRM#IbC{&=G^+ja(G;O+sj}N0+q_Tah29tbv#H(iaOB40a`bX5o%-Ub(E!<7>|(s$9=XGYtp0 z5pGMH`kU1q_%q^aK<0}DBI)fya>k8zb~Z$nN{_mRZ|?H^4pRu$vVQ zOm$Z%=em@w#;kEi#>r;S>v3a?AASU%wG<9=%jH6EB)WoNKdmk0cNSe=zc5z07SH5) z1jMCJM2(Nk*q{ya4ukNE7CMd_ZZwlRN=BS_v~vAZqR?hainu#%GnR`fwI9iW+^S7& zuHZ+w`kGYvZ}gnfZ_d2&ms#VxfRLfxw0D!D^SNUba+%T`&&rooo|cXFjfjYle-Il# zI`>GP*2dIlXJ=aT^+)J;?{~GcJW{EMjR=?Rzm%_w;`Yrj_|;19B;R+AWCcEji!?6?UP< zIBZl#n>{Gx`n0K+vgo!*1FI)(X7|*CEVQVB^`0Ea$RL+pxM4COaNJ^jKv4dfKQ)`y zA5m$R1Ma<}s?>+AH^8pnPXMqiNkT2s$4F);BkqlEfKeTf^pB+q;gJ)7RWEVO_Td_8 zGWu-=&~L1UFTPDI5Y5Q`b^VzEOH3@4J3PYrM##69dyRNxxAayQrlwXp8t)Go?1dWY zL(9v12rk9ROHjTL(t$mk8lX zcXUQxh*uoaU?r~>lX?PZ<&EGUajLI=nqu-nazWH7aYdT`?6Cn3?>+w^a^qpy=<2M= z_$J)%bca!~Kov=!idF^374Y3S-AqPtZ@&H7XeRyC&9;6W_`b0qs7~Bh>oaC!LsnJ4 zKvz~!YZwa&-1>xPQ>x?}w-?{0RT~|HfSN=LJ`#H0XZPes`oqu$lsbJMD@E&@BGc?z z8b^kFE|-hJXKq$zd{Yc|2LOQjm6t>k|JZ)COhx~>j=lh!mii~rY_+i6hlQUD2B=P> z**jF1e|^D=kA49kPx1{0<7bS;XWed|!rw0d{LQyx{Dp~Uf5$kEQw5Xf@jeB?)5Jeq zzTY^1!@<*d&R-NUGCSzCcuwv1?-z6b%d0w;`G*tdvuKijN*6ZCPgCb=x|x!zufFYt z-J8?~JMqF|?jx6rr1*a{1_@&0>6i75)VKK&0kNpjY#8YYT&l1YnQzg-o+K;I@f}ZX zLtdt-OE#))P_u;;RuYgv+&X-zb@p<%w5dh<-h2I`x@6ZdYo0e}m6N*}N622%$(!V$ zULh@f`&YmC%&HEm5Bhc1`wVxhbfnuGDa-qOV{+FyzUH}iJlEWue$A_&V)7kz^Lc1} z4F01!zi!q9QA@9i>~=84g^E41`}Mg6*MazI%|K`cPkNsMZ$iPVzdONmPAjvNg%aElmE~<83k8`2yqq z{tZ&Wk6qrB8o?RQu*bDKm^8HAQy<@we@)w?@ zylPvd1J(0TX)_HQEVNjfEe;`H-TjJuBeM;!vqF3P34Ek%_xXlxy~sa{P|b!8tr`mL zs{e{mMf{pKzhY9qc@n2n=}~y$B0*g!&WKhXv7a24Q=9AJh|BO?@$%ZMzz5(!7jZwH zBrh#56MEV89s-Nz8WSOJeTrQpgoM4ON~CJa?Y<(hm+<-xm9Xkh)0nh;eV`Vv`R-zx zKJ4A<^c=O?1v+YK)E6pe*$uhyo|?nMEj*O;@qDtSZT%!o)WS&cy?CH&$^hJT{jmMT zH_vUyul#1w3hCslTvJt>j+#mG z@&e&C#k&DeEOkMgT!Cd2D3X2s8`9}dk>kg{Db3aov3oKZE0~a)u78X zE}Lfi=X+5>Qr5y8dLdqHCqq6#(-2YicIF*lLwL?WZKEd?=p|Ooj6`M(E@N$syhJ>+ zzLmt_i3!H@!wg~6wUvD`psjM`ar=^pPlF+UBelFJt4vOD?qsTFjGOnmyjfddA>m_P zGxM}cCY1JLTXhgex(i&=?W-l8rRQnY*racNik#llFNaHoBYWdmfqXn6J-u0S;&8A1 z^h%(VB$&WXY^Z%AU%iz~R<8TO=b`#*^$(cZfF}yV$~IFXPZX3N(Y>oqoiI02GU2@Q zu8x`RU@PFZLk;qKdgjnAet2|nToVEio^)^n>{g{#}mikll=bAtUa+Ilb8==lP67eP`YD2`bD zv4+|lhm%QVnk4urpP`}czzPmD9d&DCw^WsKjp>NzUY%jywV8}lyZ#{B(2gWFs$t~1 zZ5B=q#1gW5UBJm5oA^EBzSC8l?9cb<%cSz+!~RFwEuUnWS-u5uT6-^QF*RFn;-HpL z(sMXUJatZrwYh8)rqjOn)u@Cx;REnYYuSlj6P{!P-MUA~^=;EP6oRSm%iI(XYO$?F z&!I8T!xunrG#@4GC0CEE`6S&&gl zacKGq@_)g5`PgdqUV6FblO)a!Cgru5)eJLW@0pSZ)nxx+G~2LE zR%{)7ABAH6j&8Z{8~FX>MZ7MzxVp+4dg-)#)YDsUyaLClM*X=Raujkxd^ns4js!LBg5;SaJRGM}9-rYvJ?;4;9|W^ZdN|kM|SRdu;p@Tquv?T-mR4Drf7ad&KK- zd?yH7TN^j6CJ=_u=?k_Iey9M>#NdeqV*hdC^wz>aXZHBS4wDD>=N4Kcm5F3Cgvn*E zB7+PP*AROPNw#_ORjNm&OE5PV7EmZblK0~CH_R+3s5 zhwL*p!>`>>UN2O%nVMOV8IxHpeVbDAid4kz;~(etgpf&S20lyEPgyRw;j!q!cd-Wy zDQQ^$9PPuCp2mvHzi`a)Y@pk=n@bS{QC7-$U9&Z(&Jo%4_JcbIc|(2@b-0eelu7zB zt_@qghwf3jU ze28?5bYH#u*Uh2df;8%n;a;3wM=w(gS;*+zin8a9>D;y$YO$d>XK+%rer#WQZ^nyy zIF&dX^>JnRkl)LC;=>Ljm6^l~5XlpO?DpvQ&tEe)ZBeMindNF-YhV0|0=g0&7iqId z5HLR?Zg?o0G3rA^gwH-YFZjrZzwnFDj8J_Tu0gJA5dW^Z5!q>_fc&%w%_Z)ZJmfSz zH{j$m25_5GdhGWV%LIZtC$5FQoxIwNeBg(k@#yDrA6U%n>-Cc2{4k=!=FQhIufc@J z!JLGvx9K`U3{+lt3VXI`vvca`eLT-JNV5Up4TuzD=yP zEV9r`8=q#kqREM=R+ZhSE7Vc^howqf+W;=i0?R)rq_JbQ5RQ2wGjm9RT%$m(Krt4pDj{p8ctfiITT$sgT|A5TN^RNJO6KhJT;?bRA8j*YEV6g}dFDl|oR z@*xh6W$zjbtAJ^;f;2sMkIX7-^vI^=4o;>-YUfzOB+_>!QEaeon=QQ;bCtV>kNBf} z?qjt>?n@cYwICRx%Uaz8!W2$!1{|DE!+}g9c4 z1j?NKeY)nheOwU~iJ`6uZ3Rklv=?r{hTqBc**S>R@O2}*N4qhT5Q8yeKRt^8c&L9b zE8y}2<|zIi#s9%r)F~DzBH~ZD2oPN;fLRFON51OXJ>2_rr6!nWf!39i6e0y!FU`Tz zb}aj)9*1TN$^@fr>&^=ws(W6cJE_=34+Se@;yGx~)P2qRoP%v%(e&*ol;L9oldUR8 z`vi4-Q$5&twIWEvmdFsp?Blk9J!)KpU(mi4O6rh?=8`tF&#W?gf#@p5Tujo0?$+=$ z`LmjOHRA!`Pp2TkO(L~{&e1Gp==C1kL=Qlg^q>}D{f7%S)wShjhvu7ob<-#PbHybL zHR0m3a8)LDrp{wX9S!=8!|Q@?hV|_dW>&3^^uZEy!Ur)t1f8=hc63IH%5_C~ZhZKZ zYWt7YOx7D12Injx0X@O*aPH?3>sbm@AENR`oiY3S|;cI-|aCiSr9chM5e;#?bW3DPM3Fe3-L1?V%=6mm7A>E*{)$vkXbTtSpzs zq##70FcoEt@C)0=bF~cHY2v`OWNzy>Vz#+*x|QpG5MxP>P70eL<>M)<94n?kld1If zGpJ9Wk0bo%zRBsa;a+NEso7K&mKsxoqbY0Ihh`92;%+eX!5N(CJyuNfr4p0~!7{IL zgX0H)2{Jj#rvzA!O}n+1URcrwm=e^)s9y$n_s$+^A#u)a-Ypc(L-QPSV*BiPNe>Rn z5(eUp5u%275j!Y-NhxXv)DigJ%>-i{eSn0p)m>g5HZ(OfE(ji?Ih)&jyS8KDfFn68 zkf*JSq0k8Rk8jB>wvaXUGcikEEVoK+syV)O311K-SUjV;WnQ#of)pm$;+zgus>qrJ z#b!?KIjD(YDaWF}S%kJ!9Fy~;`;-1 z6}Q5W#C_ohCDEG0ba=S{!}$(Ek(~fuVq}-d5)y$7R1G|VmW6~olFM} zs|+S(X`f5mBHpYD0^4(tW9X4)D~r(bq{p`MHTQh+n9)z}CT1xvkJi~Ndn?dG%^Tfj ze*DkDyvKKVYh0d$zDOyDy`wj(hO$rkA5+4oBA0ScXjS z-wM}Bmr$9%?d``IN?Tkh>lr)-fKJ%XK*Fnl?)iB~t8$ud1BvBtr+1SPn?&NBo4a0& zk6Cu>TAK#BR+Q7#kU-U!o65eT*8r$Kcn8J1MOYmHNO~%!KP)$w}p6VSG@Rqx)?G zMd#J#3nvj!LR62{hl9^{euoATBi6mi>Za({PB4D^9{J@m0iuMM`Q#Q2JkU=hXyXAwa~GeIaL86aBBqZQ&()VTlQmvulDk2z zRxx(-?5QAYbo;tHFf{h5y~A)%LP36AK~4iBwX@=LmPZf&`so~A(r`&Ly|;*4iYMl6 z<$!RP@Sw}Sw&&1{3a+K&&?oTNpipinU3KnPjQ~#h=&JSrZ;BX7v!R3JyH|dWhV4BE z&bmp5i^3yT5uDo98g&QPm-|uk+HSKwwtM+UY}?jw!I*;8=>9Gqso_8Z=|_5br|tn6 z*_N;#aW^YB8#8N&srm+xnt8&*>+>~1R)}EI26XHJEw^)1-d#jbtci^`kGz~ww&Phv zN-(hJWH0AQHO|pXI9VclhHVVUZA?Zo1-=YVc&t`m009FDVZT7Y7H?trh3-#W{TP(@9tCDg?QTvOZN^{fV0Vg?`@$sO3d?R;nK zg!3{Kr7Ik>cOLtUU)4<_F$Zr*N^K^Fua^H#pp$R+@!`piRBMV#dX?kaG8lz@w3#uP zRL?BAAS|f%+q;ux?X~Z(lVaW^YgkE>l{L3N>HG5h_0!kg`W$hSHhWSBlFhE~6qtFs zmwJZatCevyny12pXX3bmvf|~cB^CoJx2<41eBW6Bn)0s?JCdh2 z@YJ!z>j^YCU36nU?=x&Q@TPPQPBh;rcII6$gr$#ILl@i{sz0iu2$FLV1tIKYG zpM5D?-XL88K4LMVD{+L5_>v~`Rtx6CBXmu#oN<>4;bNfqz~$ryC#uaD43pxqzklcv zipPpo+IWj^o@UIPK(~3wq!p418b)HlPds##4!Nsj0#UG1YRFpXRjt| z_}pRR{OuK3ggz)kFMXw7bqP~tayRnAX?fWXa1~rE(ZQ2l7G@0reV^K8m}j>uVQJ8( zCTE14Wl2(V8(+C9C_}Fs6RTO@y5B;jli%c!4PDl(Mecv<|Pl7_UYR^={ul z9UTRI$A)Vf0Xb_S zs?MG{?Cwkz<~A3=g)Cl4T@m&^u(^G<3ontC2C+*sE0!B;>m@PpNM&2eXm{k7P?RC_ zB$wJ5@XD>VEbuFi6xp)jYTEjkf2a!669>_HlZ-(@RrA7mM;_^)Te=PgHdWiA;`mFl z*SnaryT?aK49w<7CFPZy3owEXW~y=<6c&&a1PUye!*M#_5%FcrEM4X_9^Q&MJ_K(H zV)P&C>=dg><>RyX2JpuF&XhG-yDHe$;P%-F#p99Ny#`MA9QP_}i-P=A!TvV661q}n zQ!C`Dyvd0OowUhaBoGr{P#0gv2`C%3^m)zYg25U*=-|ep-<;bg=A1Yo23zk*6w3P$?NNOOIkP zYLWIBl;3?B-oWnUOd6^+VIDA#NmS@Ok1lJUThXjs-`F#vGtLj~hZTE-5qVHic_|Ye zH^EQmcY1Z$w^%}q4kANMRGRStw!5=)mbhhAPquD`UX2%mBs~BkLun8FDyl+%%%S&qXo)5*=o)}n>C#%v&yk7eP(+!vZ zB}wekIb+(07tu-B8M3hW!aWQ^gI#VG7++Ub8AT%4o*lhJ8{LIiAM^*+=a={LJL&_H z`5&mhKLUdP^^L?WB{nQ=*|{!3VryPPeH?`rg|f%{*$Lir*1o!LZ_CD|9j7JQRD|1F zVFa@yvZ7w;ToI67L_Vn8O7}fk1gbznmdlCFjL_m{LCnK?@+6(@_pIbJnT8YVa)uVw z=9~32RWgSg)kc2H4Q`b~Cl+blT8l)(>=ObEYE4Bo)t}>)su>)-?L#qQDkZhFtN6lY zO2>==kfeWeD=fOYGWZ9~h>Sb~5clS<7MY6aTYqB5)=3x(55f5x_a89%>WA^8@x$vO~L}wt=H9m2j+eQVgKYVpgbmff!c;N$w;EWsPGCEnHo`(Pjg{Y zL{4B=&Q4}!0zK8Sa;z&wU{ZJ;e8|xor9tzp4fWdcO*y6W?qzO*#t9#c$0A?QP1HZSB{H%%RZh-W zKgqyRzu9KhRD%MwS1qaHP;$QWZRjOzy&E-wf8?CeL_x|p0$PGW)RDgUOC@wy!yHYeR=%{gy}2x`lm3$NHVQljI0$%Nl}Okk{<;R7Gd>= zKC)PI=O7=A!IM!~mSYuK0{8N=iyd1^oYt+fDqO&LhQHezA5R2H5H833`#^0fj9#wU ziZe5A6b&o>T|Eg^3;h^0vY*-$_qu}L_bp{~U!k}+_2gGcY(ElodeddDHgJ7x3G9#^ zbws5fw3yMC*ndbG&mf%K{`;bFPc>nLtc)?ATc*5@FKVLCaPw0`LxGJkG1$brnz!DS zLU?;stq=Hwm@^Bja&J49Q0(no3>Os+wM|1%j@E*21{$zB7@44IUW)B zEBUC>CQ;5Ebv-S}T~=&*oWGp@YbR)x_t^V>vnInaI-n;| zF*ADsNvY+9*~=d=+I{ybu2?uN{#5r{yg|ohd}G}yT6}AZt4jAy3>RA4LJ|+yh2usp z_mKd>o$F!Vt5pA?u<7S_;p}iX79dR#&8PVkcy4`15LI-WYAm0`l^9_2oZcew{t4bJ!g@59 z`PaLFC0)EVaUsF`_ls8aJcBgaua^0N)7X-~Hmxw+9IEU#jQ;$78lWSC@;ddTgpuAo zaQySOQfls}R}x=UFD5dUcy?&K~tODrsUHgis~yL^=vz%>_XE~~3s ze9z-GSzR(^m;9UXi=pY-a_9z56?ui=HnrJb{P5(`k(!6#hDKckg~a}Rv~r4Np7S%z zyCm4or~*Egp-=ISs~i<*pP8)*m0PPWr!1zHs7vk0^N!7FYZVmY!Dp|R#&)-46A2+W zyprUR-)|DmY*%khSR8lfof$8A#Ho%4-K!moIP`CZvoV4MOmq$G&)(R*p1t+iEU4qZ zk}#Lw?9typJ6Dd~mYrVy{;9}iFuCZPT-w1Eo+Yc{b3dMFY&-1(gi4ya*EVR| zJUjN)8W(luX{tp~bBTjWo3ET4MsXFBx4inKA`APs7H#2;X&tvi zOkKq=SBkb}5c02_JV3dwS`)xmkp3xbY%N`=26tzA2;ub6F>Pd)zvW71)7w^fB7V7XULF}GR&miE1o?}F9jtxu8}iDKw$Xl zwFZVo_3eU!akQqAR;K~L%Y7_Zf;l&gCNBwc4*YCn$?p`^AhxF< z--EJd=aKD9Y~Hx#dz)$cs?u?Z48HRiLQ078A;)LEfO*1G2>Pd7r2?wuE#8tXB`vPn z^9Vmg%xT`#X3E_V7mJm0tT<&8e`1pB>?lR?1$o~ca1t1Xx6$`Ou$mnD@pF0i%K>Ss zo~Ck$43~uTo8rWYdTC89HSVS@C3$!}26NKX%PWOz;Vg2;dt13_!KB4P4XJ?;KWB-y zu~Dvbs)4G55yv*}&XKa71%X2($N~y63mGL%4%_mvc$H`^a6K%y22g?;WtF(N>9NJx zKt#DS+WLWH?8(ch>8WP9_IZ1JqART;OSA?4j&=6$w}ZfZRHJgEGq%f#88pcSWuuT6 zq@I&0SRe>^DE`#9zbxn{e=(|mGpuaHR)LhK_y_sldbsrOdRQnLV)URid~^8&ra_`< z$=>U(+U4GMc~4~j8xQMl8RS%-(g`^R%0b`hA{*aoW0!FA17@e8K*km2@gYLIMs5QS zOZI+gyat7`zJ|(2xA~IkWZ1}VN%&Q_2LnTo2HNoR=tSqTjj1eWg=5WI!5SX6>fJ7u z+y@+qsrf>B)?iNqUTDEVLrPfj4C}^F4PIQ;^w?B@>N$7z?j8(^1=2gNn;h9xNTNjr zk)G^>_66&t1}CYt9lz|>M~}$nCiJ-Z-5)TN7UotNU`|?Ib}9X2as3I^4U>)Ck^{tseS4!J^2?)Z9nzHJ_O;IE zgaE0v@~voC`q0qGRL#JN#-71=N`pGaP;~n`Tb3s&$%0m>P24GrWsUGSf7b|*ogood z)wIh}ETVNO+2h3Z%}@)kobf>9Nc5Ujbe6U0Tqb>~lGq9Y z;JD7NJL?_|UO>u4U3!u$RAgY0Pl%PmOr{$8Dl$s?F708OFMD0m2064ZR}w>>Od{f` zTjUPQJyN0*mPij~9r&-PFytcYj+PhUag^GWzN-vP)!)&(wq-X{jP(9N(nT#&u=2y52(s=V@$@TE(s20qb(xM*Pgc}+iTeme#C0=m=n$6q#TsL z!C_;&4?Kk2dX(=vIjyJF%*LnxQDK4P=}EPUTZ!a?Wbw&tC(-g&wa@s#TZss)6_sL^ z7md|e1PfYo>(Nr_6SQf7FV-0cc46E@mm@*;Nl14dQ6Xn8th9&Zth`U)Ac-BrK?!uk`eVNAbgR zbTRWpO0vbw_c0acfC(t9aod-#xN4MA`mZDr;s(A{QPTGH*!eFdNGx$i+kF_MjO~`P z(Oaph(f9q5G5YPC%>^2Fc4ZGCJs1ps7?${AlB%8HQE2+{)R|(ag#GFyi1ncR?SYv# zrPO+TZ5$yIZy-_H#I8LXtizbYn6O-fL2Rhr{)w9L2>J(oC)Ty;$^;&MQ>0n}{U0!> zAvQ%eN^ zBsU5cDy6fPbk7Lk{^S|UG`-MTZBKIvuV)!+4l80^+ zW;c>hvi*Cftu4Q`!?KXUYGLrY8m&VH%9RW}mz44_s)J3Z{3JH}mwE)8yqXHrMj7{I&EJ^GZb{VO}d z6mA^%%6r3GC(%6)LVD#`%LdlxHMipB2g#MC^i3V=!tv1+F?*kLqKty}6uaZ2vvHpp zS2<{{rKaOpocX&X+Ez{*4C#^#wtP%Y*|2ruX9^+Kt7~wHvq9)Ad)|A<>KM=<#VRCA zU|w=Psb;Q$=Wi3FctD{wq5k~-A735!`z%%dKfm7;8@Zk7rw*K_>XSN)VKFl3-mu$UbiRpr+>d)^ZA8CSl7HX7UhS%C0 z*{Xqlz;sbb&C!fBRS3$P@RpEq^%#2uJZcWPcLnGskDHwM>PH$xjJ}k9JQ~_`LAN z=F6}V10f@mVJp!wit;yqr@9yX7dD&GfcXV~CwYtV5Ie?p=90gc2BoV^cp2h;Q3qhzK`?cTn= zvd}`E%!%isl3bOwDsiH0XCCkHLqGXEhqc4ueNx>j+>%YsZA4MCELPQ0)`;bh)2V_H zHc!hgT#8|R7oDAi|6kW!F+JsR+HW?LCnIL*&|8-`1LircYt^F}?*lfI;%AJek_9Yy z_}QUkRm1Cz-CFan0-58S)5)xO*f}>=d8sWiwqada zS+`yXMLLy7Fmo}fG+*g6TKyc!3A5QlDo!L+04FvEg1%1x(~vP}Ev!SmvDc1yBMIQWrrMcJ2ie4Wy+sBgHU zk&m?0T9{zxEaw~1NY5MB@i=3bochprsJa5?^s!+!QnZI5=Zcus9qlTZD?Dy)=5o;OZBsJ&askdKo zc2Y3TmwkHIGiS85_F59hba~S%%OStYB89`ZZ_7UO5M2m4tcU^!$%i4ZAonSp37I*V zr@Kw!Ibx-gH$JLw_CEk+VB^1F${Sw)fRtatWB&mpGnq96&Vkf_;)Op)raU|*GBQ4} z!~$NA^x?VdHfvl)b`?AU@B;T5nFY|8$m70T8NpO0AQA;+;Q7Ze2ZW#hubJ{B=qaE> ze+~aXROKJvgn(<0HEh+4EGoD3YYn%5q>7l?5}|wSV6m+C6_1NZ0d=41P7+ddS|_); zkg}by3pE`n=*t0Ptg?T!Cty%)blP?v%Jub~y>$UvoFEgPksbVrwDl1kTqNFlkwqqJ zNd#h6e%F-nWInU^j__Mk?lgN@L-138r zVBzSvL{i0PP*BY7$*KZ*dD&sJ!4DV_t7l+1)1C&IK-%MRb&VXT_G6l<*9SWU&~GOa zZcib!KHpbm6RE*0n2uk$hph_(zQ~v@#}Jcx8P6@tbor0-Jk8!*kXUY~I1mski4Y?f z!nRWQiyiYn+x)wo;|_Ne{ZFX{)B;4n{%xrc61fE)Qx*L5GXZ<&FN8CxhgClg&SD?v zqTgP|&klq)0d1!@Sn1s&Ihx<@Uv6}V=FGLk4HIp;b-tBEBXTX)OP;n%lV+F(UAVZx z?sE{9MI96}E>UM&xJOmiM!$y9UmN!$bELlVw9`EC>yG;tafKE*ij6|`5Z^eipkH%% zKWmr0!D~K8Z2y@Hg>EWi5=kj>)MVVZMbfg%>rQ#*?#yctv|+i#ql{(f7~=G~wR@Yr zq{{b{)QEosM?mZ2pk9hhrLsV9+G8o%GBpeHOOa`Vlt(g%Bh+DF_i_G>VY?(0dVkE_ zv#Y%d!=0Q-_ao632Ro0+W{coqoY$_2Z)QmyWl5fA-u0iJS1T3Df65IE6D$x-Ouflb zJ@T;MZ$9k3V)_9CNqLNN<3GyxJQdH{X4^_$KJV+b%bih~)#I6mhFcn-G+_7q7+<-j zIF0j;*>#vmoAvt#OQ+pf)}vH&Sq6?H$vR8fu*!|Fu~54wtner_b{+F>{^XLGZ_FyP zD0CO^r!}~5qJ{BZyQV*30cgHjwAD>FBy2Bk*mHm>^lNhboIrrCpz_Bbga2(d_+tW^ z!L*{}gDtdV*{x%39NZ8`)m7VBi|K;;#?ZKw$YQIiX@RMi43Vu7c=|*an zC`FsKi6_my(Rku|ZkS)N)JjcO$)+Pfhg4fn_BCK2Zb9TOHdKkH(s;cgn)0#XVUq%k z%Nle**y^<7+GIMr$I%dypzZzct?r5;GHtgIe4vIJ1QG%tzJ z)O1cduZ{BS7ImFrzc0}YsO765HlFb|RX2N@c|?N!u6wE&f>8vMtYN#z^1K^F1|oTM z8gG$S=N`_9c6dLrXU}&4ar-bJA!$ByP2|L!NC&@bVnrg5!qgr@mw0CJl$3N%c#Y>( zt*3V4Rk_^#pfPpzabThr@AE*su2r##o(%p*w;Y{o6??YTnd7jk%WtO|g$!;U8@`OI zUR01BmMsi`1;8D{x0@BdvYPMd4&~MzK0+&PNJef?@vvYb0c|fMNFTunC=>V(tRQ|G zp~-0Kq*SOaRlV6a2j>Bj)0gq*6OgjM((#^B!~c2*`sMfF`DJqei{QL$M!ws;UG_WQ z_?J@r|Ab)w*SG#1Sc{v-posE^F9l=};!eEqT?O)_QN&h#6<$9=P{5W1PUjuajxi*n*MU<6px3wix!&A4zEnR3@C|82tlgBQab! zxf>*XKv@YSl(7Iru|*D4uPe&R(m($~{sFT99&fp;Vc)87?&ZJDKP)*ksBcJZiIatV<~YI$rAwa7_-j#I4~NVI5?jCMcMGN=$T zL2YgvzR$8dE4iHXKyR5K4|ethzIu4%rtM3}Ic)u}pNob9~l;7+ z;mg>O;Rc9&X8eubx8r-jm`+W<_*7RxoTzKBxU|sB8!QZtoup}W&JRs~Vn)!TJ8fLf zlGLpg$qrP_^3gYs`ITr1^dn$beu9Ok%Fgfy)bl^o4{vMm>&aib zL*^xcg#lBYAWecmx~MY1g3Stw>cFpW6gKekbFeb{A|pSgMxgy2ss1U-ei_Cf>1~iS z@?TtQY!K*|%<)I{C)mvO`7P-Fx*XzvAl&|X=)VX$Zx4WwWc>#r>B+AHVYomFjL*cx z3Q&+5eG4+)1N}f1Aq7&fK0F2~0$#tLUT|6lL^Rtb6jxSz-Rcv>o`4)z98%EOKeS( zsZqYG2w5x__{t_QmW6ndDOLftJzYTJt`j}7 zvGT5X=dM~f*(!Z5C^m0Jt~L!WBSfFOV`4QK3P1#rlS5CW$SjoxrAjto$1JUEU?&zkDuu zcJ3u^H*jm1;uZH67Ju`ndq<9!U$@a4$xLvKWn@?9mvcTC& z*NZANUFUmb<6O{h-M{#K$FdiGz~pKF?uF#^3$)+85N-F6`DZWK{eZdr)j6PW6P7`z zv9gWUJ@m-%Qu|R~RE#n!Twt0;{dP`pUSfOuPF?`I^Yc$XoagU;_`k0ymnZh;4+zLy zCw=2FTayT;l9E4JS$hMmfu z2u9!6-tIDBqckzpp^faObE~|7lYKgKEWNgH^q7l?w_%#}O$^bFxgjBE_qE@%(U;~4 z?N}74nq)9*FA9lrKVmG^#&^IEnz$=zaZDu5aD6kwcp|Gc?U09j^qBFv;2CjzORqZ5 zQ5e)arQYiu#sRK}~@7LpBD)uc?x|eQi{*ezI^ye{H zAkYUdg;%#PJ%Rhn*SEfJ6KB=b90M{V=k5nlnQ~DeGh}B>wRl)4zkcFyD?a#W_fsil zrZCpAE8mxAy?%}sd!P5011_SZBWBiJ#e<^b3*VC=AaGH{d@&s|d_63)rCKhl!V>ys z6J{5Ykif4X$yM@|>6h9uFsDWGHPeY=QN(7NFKQgi6 zw^=M_@p(iDXl#Q6pqRSf<+=Z%kLB(;Q)V1j2q;TBfyd5k2u*K+LOUEA5 z@{!~?vWjK!UgU))OC5Zts``#QW7;&*Xn4O!m6B7+(x#!b_kp$yvp!EF% zJxj;dQ;@$U9Cr(?|Iq6931hWJqi3LUmE4|7dp93 zrtql`+8V>?eg^aUj&a{4J&doH0~mAboWC1&Z=uk;**m-`9<{IW&gyZ(26_8oJ!}hM=3sH^N$(0Jh3b%*5fe0yY`RiYa)i|w!`_m6LjjY@ zldHx=kT|^4vElLkdc>wVUAawc?W}(2ZYckH=MFT(EDL6m6sR@;mD*v*WUz9~WPJl9 z{OblItKAStlFHCJo8;D>qjK%;k-wa@mO8zR>aVIg5aFjj4S_tJrK3==H%4TCer!DM zIy&97<#hA1o$ia{{K2Q0x(ZA~K8r&(|5;1(ToC>vNkMTxU`Z2}EPI=aDLvhZs$ggX zU2BHufi$Qt8dv z+0z>_*Q>NBrBc$DZySbj=ZIE*9T+J3lw!GbV7t_NSHTPczX>D!6!pl^YC9yQ^?Qfv zVpc%3lA`ly{u1&+Sv2InT$I=b1N^pZN!EFeNJzxxHC2g!z8t+V{eWm5oWE0izVZ$ zQs>0(+#MwrHT0OIc@avj_8v?;1m@Rv@0zPZyZ`h^34xEh<=@9Wb=0tsbG}i}5{RqAl(kag?23yP8QNJ)@y8 zt^USYk*hP0LOnQQQlPxVSG^K8uKVHh35<(3kCs8}$@Y#ay#t>4n!emYipOBgK#`|K zv65b!K=;`@m6Ih*=Q8S=SN?T_r$&O=ToT-S#SYeoMN@;D;RA1&Dn|CdL=vpkcrB0A z8FujpT`ON3ejKX9-9GhuUTfYCCJFTY?sHMNqhhcC2 zQ0Dkfv!(Ysw9ZVnhR=9%o?v%t8|&a!@agFUd9ulo^7r!S*VCnPjy&|_2^M3| zog>u4UdVzT@ba}ZT>);Bx)=S8jiY^wB{}(}4wi|Fm4y?R4OCu-LGP0$NWj^8MXAjW zg8sC|aK5I-e0*rYr~H&?>*X9;uA~jLoVr^SSom3BbE^Cs4JyvoCm1&`{Nf&=bGnZlHYhuAnda z0*@p@toOp2i*2WjJ}&b4?j$$+YKC%Cd+sN-Q+4&;2mOfdtMR0TQCYz$YO&gB_Sn(U z`J^P&cjrIz6v#Xu95)cBW~C43pV%2Rg2(Ck%IRwfhg7N-W)LUQY`X4;!PH@OM@~ZB z)3Qw)N-wpnxQ5y53F^rO=0`PQ?G|?TNF-6Ydj*&sUCkOBYp?VUKZ2Q@OAz+U5>~yq z;4(WSNfFQV?)o+NNf0&4oPhwL?es-}nD zd~|Om97>SzjK5PNG^ko6Y=YYB#i2#x%>{G>&gcfIUFXv$b%9R~oZjxagpF_)CbipF z)&p*QL02RmXIE)-P6g{;NsYy=Ocf;k&+PRHKK(b_D?KKfBG{=>wZww;;xtum)voHh9gJEcbE7Ml9lK zw(cby(S=P%dS8FZz~XY=Ga-3zdwa#iM#`Z}A5EF$D4)n{VwqawN`61RSlz(Fs~|2o zhnE2);F1qG`7a_hKs7ZSI4%1Ux|q}crg5?U(zJ-%yq%F5nn4W zG5F1pP!Ej>ydhswyQ$c!H;kbChW<;Fqti^0u_Zw=-GNvX>UK0zWo@ zAI7drU6oi4^NI!e8L7NwVEg54_l$-w#8o-ccYL0`D$5yf)bH5{7PuTdFDO;VuKv6W z-rUYlTnes;Ns^*era&=^{h!9wzaU7hBG)>jwSUn4aQ-+9p2F9+^#_bs_+`*N5I6T0 z+o28bc!?w7R(c?oB|LMP@iuMmR)KNE;XV)FsQzIRFB?ZezT6K+hOJw04kR?^$-dZ+ z#G@1HRPHkrzec{FVQ28Y$BmKf|M(rgdFwH~quQ&_o-yra+|5J1uHo44=C`imsfwWt zGk~v4l|hvQ3*(RNJ2cYvhf6}Rcsqkuad2SkV#8h?J6vrQ-81A^19PH0X`O9gVZs%^ z%eqk>n`5IpJRDkER7WXIG2ApPJ|rJnF9Mr)?WX=f9Y5|Wb?I<7$4lfG7F zfYnX3*clzg^vT*65pH2Rsl|^B!}16n6+G5+gL4ZIL$QYs?&QpFpSPXdsb)v16sYxw-cPrk6N;b4IkW4xtAVki|e~6&Zv8fW!U-CGy)X zolEZ6Zgxj3_cUSmjb7Oo3lA+X=_`9`8_$qnt9{PuxcyP`TiH?mYBfMhFFq+W&yjcax%cMOp7v zE}V_^BpfO_M=_2RDS4Q_A8rEIn{_3BDOu^W{`U6kEzP{x|Fi{yt!ki1d(|*4&bYG; z<5ORP{w*Y2m`5=eroLDIuN(c3PfL%#UVC#oGuJyU29L14;w*3tbX`~f1LhP_@49N_ zh!te>ONUd#0vWstFM!cwxU~#0Mt=?*r~g9+4iIhv9@sLKX^f0kx92)+lmHP!Awo|w ztPH&B7Vu(v#1pFJ{z{mz<-0FM9s>3awF(A* z@kM3^j>|o5#6niot~*XL?iT)Hc-0?9?`7n`;{&(lr=<=8nXY?=+{prxsz&5=X`F8f z(sLuPH3G;7PcQSEmCQv-OM&|%zEa(_p#QD{^#96dyrjH04JfxBH8;iTNk?T~2Mv=0 zkyk8xfmMVf+ChLA>NVHJ^l@fU z*@|yWwrf5+%n_)Ue}Q4feAOaePS6a8Sn^gh8~6R;G7^&H)K{-y3@`!Ng2Ee)E9`~g zoostdp8%d}TrY_pxbYPzBMIs(#Lu9js<1oOSp}Fz!gW`150Tvui=yMMhh93jXSYT( z7?{VmHZw;qU2cSA|2WzIa0663*D^IL4>@R=GM$|92>AhHv6!nFUT38#oY(C7b2U>e zp!lxnKMEq?{)#^WashK&q#Tv>;hu1y2MF^{0!2r)#=`3Q7F1tSmdx@EaC+l}2|uYS zmMrpxcAr5mm!wli$=RF3!`2EpuWi!8`$cE{*wE6t3=gvFy5(4@f>j_*%Q(_BT-Ixg zpl^UeK<4&=Ij2-Z>`R05_~0j=Rt6;`Hg~UW=!WPWbU@vRY2IajXMrh$;vZ#Wa5-yF zgf%5Nni344^Ws3Kif!T~18udDLt(!ZAK5#-ctI`#tr^r3Nh^7bKIF3fh#(bf~cpR zP?QtZ=llbw!#3Oat|rQt@#?tfZsq%^r=?}-olnAph28Bygtn9P#i*jf3uG}sjpGAR z9>AsY`WfW8+*;JQktDqZ=-SeIb@yIJBM0f4T!I}3JvvQWkM}ig{yEzIvn|9m!yhmz zA4RRIf55yiRMNU+yRUIgv=!NCvcCLsy*CEP2BG__!3Y0#FD}Z4e!pI+pV9&tu2g}} z0NYB&Yw63i^G}C3z;{qt*+%#%7*1n1i7keyD9+!LhHvY@MBFB z?I^)Sx(H?LWxl53VldIrWnjr}xKTecMUDc!z7%H*m8IJ*IQ7_hs0avYCaKl=1N6yR25KoVh!iS6W^$ zWU_C<$T3IVn)d=rd~45$5<%>Xt;-a8v{EA&O)NV*$j@#d1a$1Az5E%b%$ppQN8@=< z*4TrqVHUK-v02=`nmw#VJ~{t zK&HUzQ$?api0bHq?f{Q@)y%kr#K^aC7OGqywyenwo1X>6MCN#T%!fNiA_kMhXHW4- zsQkTBT6b_=E9|&*#%owRv3x4b>x*{^3VR`rBm&A@QDO+KHjlEIUR4N2DriDT6qQLv zF~69Nt0ZPQW{exBBl zKJ#$*Fn7@*-YBx*aQpvM_T5oU^jox8KtVu2nt-4JDk7mn=%Vy4O&}EMC82~CItmJc z^iB{^ssaHiNq`_7LMQYR2u(n$bfo&?{ciidch|f3%^x%QWzCwkCTntLpMCb(hX6Hi z!xAs6WAlQGi30sD+{f>;!o$lnS4FRUcug1a4=VdFN8M%7oYFhF^*(p$cV~aLpWM;p zD*7T%5~|~ORfn7I-(H!2`ZxudSzW)saWJ!rbOP765lx?e=mC_c(539d7BYT!E?l^h zU4NAQ&$do-;v;Qv@e}d;%Ti6mSO@y|SVyU)MLB)8e%KC{iW{IpJ^*PQeP7+9l98EA zVn+LWh>GYcllje4>52{jMN2)b!QJo3rHS(<%!U+LH4Ks$^Yp}4H^yR9o~w=3>8YEk zDGh9brsUx-U;5F2FJ2%yqwY-=8UlIqAibpthC~zCZ^gb0j|4JOhiuqT9~zB? zTxGRzd8;7z9F#UWe^AvvqzrTfFl@#ZtGY32bc41lFH40D582zqj>pI7-N_s>r?9&->KM$?r3#CFRjJ4hm52WmCi=N zew0;gnPIp#VHvJ-Q~bNPAc2H&J@}~UXl-91&}l@k(djn(e8&A$OCXvN1Ez)83ABRx zZJ;Wmz-XFN*2nk5lC#bX4s|Ol>XSJEjA8xwkI_*kLD6|M%}3XKU`;R%1JF?o2D~bp zS=@^^va7C%V@v=)J{&6e%8*mCS_ym~hxV%45*H_%S9cwfR90I?_A&V5KelckK7@?g zf#@R|-&emkoTwDr<%&_l(|pfnE6JVK)In?5C7;IQ5Ry|95m@Iysb_l#m(kqYzZ11k z3;yQLqqd9uZ|s+^w}#O{K#38o<@b)0{LhBP5GL|jO$oo1AU5PjK*tv(z5 zb?Chq@q_L2#4!(I>*Y)~Ubfl+7LJc;@bBXtub#h1ImO5~5wIjhHzA>PzQpUnuNC&S zQKAtxIT=@OZx<*9XxM8rtRR4Mfb}J3{jZvhUJ$h1tbAi>|wUQ5f+4$zorkNk!@1K>mUH;iO7hMPlvR=LU+| zQrOb2GFS$7_NnIS?GHr{YBy=vQWlCs}2`EI#Pff(L)4`+mr zZ;+qjeh;I(O$3a$UlXrE^MlwO#`CY_2IRDwHa+Diz#0n z-Vdi|whu58yM6TN2lM=BB5O|WtAM%>1o(|3rSK;CsusIDUHDFEo!(2<$pegi)70FV zxQ9OUH^2WCX$Q0*sn+VYSuxi_@D-Eo>v{Zg`_PfP#$$>Gok5YZr_+*DvM!28>E*B{ zscMn^n`pcz$c0$fa4;)ZenjhQ$lX^HG1UIli1lNF`?T&dI;M146IhxAa|yAsOHb33 zVVG^%-}PhU+z>~R-z??XcE{?9BFhI6THsJn7 zF1aZqOjCRAjag6LUq&1(3;lIWGlYb$V?N=;@g_dpO$aP@104 zH{B3fnNHJP-9HKX8U^36rB4uI-RV_%pa)b4mQ z>hEuKJF#5gM%uH({Z{QYVJk5+ZL|SUi*SBd;ZjzHslLEsuO5Qt)!D1`eDf;O7xO2C z=}VMkcoj$NCc1?SatX_V+d_sYB{G@()~(xmv7gElU|3ca7bBXY#f$sL8OY zke>X7Pn`4tuV%=umMJejkDSCjx7bDp=f?=G)a!RwF8F(*IlY?-#I6tOhqZ15-mhI4 z^zX6;37(7nm~K4|-sIdR&)CcXCjKk?{S5?(WW$3r%M;D!GeQgNFP^rTNB0%{5( zK}P!E>Z9p^{}HR0Rbgr>F(EsnS_UH}QCS3etVVpbMBxMl8pNc~x}Mb9qiMN^$-<$Q z)R`Q4xsfdv#@c)>+m&;(b#JkN^jlOVCAOsYjvnfJaH$ei2i|CxaG~x3!TO0vL;keg z9xt!;CXD1eJD`TAAV#laJt~ZY`V=r*-92M63WUtCL2SQPB?p9P(zZWsX?ZGt|77F@ z%`e%#xm>}Af^BDwc!?W}VfjW<`>{_NQP=Ey>3mps*Uw`E#(ggGl5KWGqwtVLbfv+;_4gBLAV1k-V3gl=rY7y#LY*}L+RMfwHCZq~*S8>m(4JNLv-TK! zg{Ico^1^@K{+Ep9sF}=le|twn24pd>7aIA+Ze^n$3-fBIPd(NR!FS1>HReHtdDe#K}%Ff)b`~}ibM`(;{0E^9o4exYv0w5 zfqm&`P!@4};BNc#@Pu+(4-TZ45IXfg3-kHh%SLe6BO#Y*lv=&F+C~8=%Kr-^B7}niGqW>L{pv8j_P6hB9Wu*?=T|O$<}?A# zNf`mIb5Y%mgutC!F^roUjF!y;J;NK17FVIx)b&QWNVh`MZ7;ctlTjz)6YS7Ie*=(=(5z>CWXaCiV-%3`2t%-vMo4nDBy)*sj{qD}f3i zVTYJ(HR8PVFj{YnYdIlJv_i^`zP!_HVnga&!Q^aEnN3#~FE~y;m_l=axu;20Vf0V{ zC^modHk5%XJtiuC=EAH#7tyZ4NkiiSaj59U3MLDC|C>H3qdq;(*W+Y)SWKEd!=-fS z9i<=o7nKKAR#+oljA!$|m`bK>?uf07AT!RE(UDELikA6-p?75&j%>B43DzvqfT5V1Z7k+?8FefxBm>Wz^2O;Vi#Aq+-x8Y+pj)a(nmct7Lq6o~6WsgP*z)~gpRMUzmqHs0z25p~3-F)McfT?G$0#Jye| z8RND>1tp=A>bm08RK!pl(-gHOf@D=ecv zianR~p86vx?7qK6SiQ}QH<|7g2x0ZjuZD$Q;`GlG`5{1MF`nqDU}*P1L6tlI+cP0Y zL_s96x7WRsmB=d8v9TE?vIaWq_5ANemkwlwqQ9(|Ia4WA%43 zCG;5>eH+~&xm^iN=p>qcexdF4^^fpj$$a8tKt|8Xbc?dQi=Ut4k!6WvKwFFYtRYJFd|3<%J{tNvo zA0M02%-Zp-!=(107r8Wv6-0Zi0(A|Mi&fHo4E*m3cp!s5gY~cRf~Fwelj%a3!wJNE zDr@YH1jKu&Gcm#YN=+k)wWo&T$Us|jCNH&Fdbw!r&x~Mand0fdq~;m*Rp_FS&zkYN zu`f8G=Zc3Qt#((blRB^!me9vC&B8pI=B%2Vhuge|G*z$IsQ3LWHgRsjWp?B^BnRJQ zaK(!>BQX@7J^q~brbs*$Dpg8~{Z^c9lx`D@bbk+)Gcj5zyAcz;v&O#@%o`&^Ehyq7 z!s4KM6NyAix-GR&yj?_CWpM7hZ?whUvx3YW71w6UcA-x$&L3;8)C;+yfospF8%0b7 z2X5N3G%f8Q_upfgFxnWCTD)^qR57?$Br^l!FWoa?aE$KjXzKJHa)o!gpai45+EBtb z7Jp>rDUIg^eV!VVj@AUfBVlLIe1P`PS$ou#IplR({{u{2fiJD)iEXj)51(YrS@WKA z?xX^jS$e!zArZUpp~`g_%A{ui0~ieLbgKh+J(V?N&ysqS<0jLiUUQELnvbh{POx%? zsK&knUgZ$ObzqyF6vuk{-M;tl8ars$NgOgG#uxN}6$jVCc9@re| z1y%Wu2&4^N=KV7C2eSUhKJZcna{&Ysc03&$ILw%`g-~E%U$?# z#k6!UEkC8Nv)1oR^nO!i-szAG`>^c?%Fp`T?jkdL6(@`L z_Nlk00LqjG?;RZb<*WZf1d8#?R3h(-sGD&6k8 ziuGoJg5v-wqaC*j$**47E;3Z?_+F5FwRnskr>it^dR3=W=i(x`_RjlHkF3EQH>SBg zYeOFQ%Gd+>qE6G_*A+Xb!9gb0VMmxCcBjp^hTZeRfb`W1L918A?2GRor_nZHHMF&qO&=tB1w_%XByHY?e>8_v(Yu>W_9&CjT`U- zWA7kFsdzRfz*qlFXUaiSg?Ubo)_Ap9+yR-oTKpUxuq1QHM#*cqUBX8%Y<#DQ1yh{L zfVc2p=*HFL{ONV~x5fYGJ5Ps31G|Mxs!cRy(*o(V{OLEkI|?r zqX8gmt{daz?8@o!zMUyjvLJWDXpz6acWn}I9vI)Y&8HMe!rQNH&>d&aHoOZkGR-vm!aShS1*njPo*G>b%MZ$!4cE=CAx~88$HB!pP zT;sZ2CgSc^AcH)RkvV)kB^4@KwL56%4)c|`(;*ty=_`_06D=STH>P6xxD0BReCXf* zQnvckfzQ~-bwB*@L$`dlk+5gfri!F5S0uajhZ`bd6Q?+;I%pj3$G}V9m|>qSJzL(G zX5*d=SXhsRv%@m7eCMh80kZEG$;fBPXqkReq}VshX#6h{GRY}zu`NfiB@ss?46cYu zi)WU`kg%gNi9RPO`1pDk{P$lZ3Fy7MT?;-^JU3kV_>7~ahaSauXheTJqoI-p#**`+ zITL*CHX(9!_g44B-#v@_1G&nVrOw%$&cFJX6r$muN{E2HB>E5ezl9J)lHdW6IE@Yc zJ8?Sm--y$TS4BRSDFVmpLSA(awPJK02!c#f~gnqxtt+92G&;gukrf}ew9LBr$+^`{R#2ft3<{`{XRF#kjG zMfR8jXQaK9OZ3$A*(YXpmqX^JiYSPYfivVPEF{o|EV#a9XZyE4h>DalJtlek<;Jt2 zXOG-mIo#(jnf;{rPkDOmnZ?#G5+;eaeihoKNkNMd`Taoy&Utx?vVD?eC@?3FZS$!oug9Pru8 z1U=;GF}88xU!QTjV`DfL1>cB@t4ybj?sW@F71wcgVp)x~)B`x@?Ygxf97~rPgrnCF zKqCqEY$}etCaduLf%@2u&|^g?WN)&GNFVr;--x z3s$r+_KgYsEhRbEgG5+(RX1uCxR7F}2)38`9=86hk2t%6?Q(Q%-YOeUo8d`~Rgs-V zCuCYsSc}$p-OBcdzZt3_Vbacqst1slsLWbuy*9f7<5zX{dr#M0lk=&oXBh>^Yx8Nl zU*5LF-PN5`o5W$wwM-j6W8Fwpbf%++so9jLC8iy~IEu-Tl z#hAV@)vB#Ilqp5>VXBUxg4^xCNcg4LETkFEyizHtz1a;@RX>J;%nWzBkr)+8rH=(~ zo_{w!Ug!$QTgsve6Ixx`?2_1Y&a@X^E1LKw(fhHG4){m{rHIzO4+oY(Mv}_&{(Eo; eB+%~To=~X$A+O6PW(sb+%pBXoL{-bLiT?w1omN-? literal 29467 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%0AaD z^x)tFZE$&HJUa|pRr&AB{=b_N90z`KY#ZL-f#=T&+PT2HyE_ZkMd^SQaPVRAbBy1r z*6>T3VmIgeZ_%2TQTPBEgB+2838c*7x$I)tJEOT2`Jk*=#cEuIx*>YYc3{|Xw=!9h zth=dXRY<8;L0(bX)V*Fka_6|BpFMt_z z$92U*wPr(SuJ?(Pe5JpWKdY{Wy_DOw_6Uxsk-gb$IG{~>*6l(T!>y;Q2mIMYo zPq!gu9pnmNN`V4J6gdyMmCuZ^&59P>hZw<>ove0%6%=)$B$8CUU(4#5Yf(AU0lbr) zHc#1On$eku9oLsfmisN^`>x(&j!-)=ICYIkNXU+-SnuBFvf=nd3243yOKs&2w%XT6 zT6v)EvUo(Kdh1r_rZsl${wib7A`1~8u7;igQaBzq($EI_@F@Tx40^@tod6^Z#!SV#W=WH~7YElp}v^!wbC$#7jSFZ2Bqe0*7UE$9)1ZpGa(cso~O zBvN1;?FR`DZso+r>0?wuIqa37fYZ{T-Zo>Yi=>gC>3hC+3568T+d+R;EBz%f^cLCz z(OP)apF}=jY0TGebECd+*owc*THbr(_wd~3W?k0Z+dqiGH2E7iIr$kBc}01Nmy(w= zvvY&z8=|D4wtaewh9%j-#=-vQxOlPzF^RUXv6a0MFX%GAFLY0v!5&ZEA_4P6DFCG zVNZVx8X;gsH)Y#xm*rAdPM~9_zeg_rad0k*E1tK9C8>}G4w6lNb5|%Owf2c6-q4=0 zJRk9E z8=i6et?{S&YohfU~g!sj3BEMd|?js_eb zt^_>^O<9A!x&NbrGODIe-3>4>E3lF4d{9Kuv7?6_@AofatW*C=tcJSoM6%{{Yk3<`xZni#9IV)#N{0-?H=Y zeCx-%ziJIl>*)zO6E>+kgq%Vx)3oEE7_x`rfdhbR%R~Wd1o)AFhuUzcdkxRI$z4L2QPCyNQHgRv_j@SfnL z-;#(dey^L=qy$8G`Q0q~o`Eh*YLR0ac*U%oePN?Qtb{5 zczpjgz7wUjqYDK&lNYJhXKjCKd_M_jYJ`~X;_w`rL0EVdp0jw9Zt;q2=k{tz?DT6f zqQ1p#`|Z+;$dV0y{w?4RDb77BW{+3dytSAO{O>B%h-~V`AdijwUk@80+{O|RskzB2 zh1R$Nfy((cW0}PnLBN>0%*j3)@5uP(G{KzNp7t&W{fTM4^l3G~FNcO9J{#JHQ5ee? zp_eT*uE0J0LOTa|tUDbV3y|maZPMLQVHW=y-@}l&y?uxa1&$Vxjor}Sm!7oAA%=+@ z9!AUSqu1Z@ifkhx$MTX2z{vUVfqW8@n5+!?QZ};*mo39Eh?EM(Bo6+zVm5WIOO?a+ zO88D%4t%bS?Sy}yAFqxms?@|VnN*DQMq`^=gf1f$8N|E4yrjm{ji@GMyY{?A+cbE# zzEASyX>7*? z$nz@BQF0>gjnEcq>NOAyq`rIEptTKuVR?>UI6jDCgT9*3;@YCsqy7f4{#~{;{bGF` zMey?;IN<4DKNFSk73=@y(Eo+byiWB7^6nNbvmT{8(P3*l<+%oK+Z0~+d(V%VWVZe_ zn~xzRRHxnKt=#EoQyx><$ypdVu32jt80nKKxMW{2ze`mxwm#9#_}+>H6-aq_@j3cy zVd|Wn>Ru}F@R;Lz>l(a-${!Qk8yaC)BzJagcYC9WLB;r9;A{J-!mro?kPjj(R4i=5 zgDG#}Gcz-Y((RqW3`}`pAlh9Z8xgq&vqvsaNXP>eTRofZbumT*6VE6;t!ErF7^M9o z{putK7kXeHncWh&H1FsVsFpxAYxp)LU9E+#c%IzPlJzObl-?hkNgmzbp_uAE73K=L zdz@8~XIqdaV{@SAqp;V3pd{wgYV<1H(T%Uj!22VA%qq&X5VCV^1ON^vQ9G3=fD4iW%>T$TV-Wk`R)Nb+jz2Of1Dieae+P} z#AI*LTud@r8c)3~1tjK{yIJQvt906NuSFBL=Y*OP1YOv;=M#>+Q}D1)^J zdeXto)QD~HKcYLWa0qjYO``>jhDMPx#3p>6CF8;w?mvl^Jg{5>lL4f zh<;bf=AUxgrioun`R7dXwqLbux(OJ0-rJZ`)^`)a*Viv%>DuvajDm3v_z5D$w!h?x zEJZz?#jB0mG%uq?YF-qv4y(onkvainNgAN!sK-NQ`< zEL+=9rpVq$dJqYt&5jo*elsV|uf^VY#SJ3t4at0y`X)J+V{#qP@N3%91_qdi)y#?Q zwN^fTNRm06++G`|oxo9s0@c=AGzgZXDzO6G}rrd@<~^ z=Wt~-+#2mGbTT}ABYBp(WRg6*>*{skk;I4)Bwy|TJE+jkY9xt5sAN6w%d)?=TzMN7 z_=qHqfU3uGc+~3wo#U44*_w>)mHO74xQAWHIaQVIn1>=~QY+$7C0jMLzmrPwjV@Dn z7ezeTsCXF@j;gED4sjwY_cLv#TrTI*!Kk09b&dlL=iqb^IeNOWasEs5!AqZ=dtNc1 zfAA);G#%!3WyDYQ$ep^)+QqzK0YXs=L@8`mGSh4m%JfsuCQP&J#);k9BIc@))d>r& zhFu$TfFYkyXZN2XjL?wI!eg`dwU=AC%Z=YFBp)B`mT+Yv>y)T8{w9 zFU^Fi+BEtZ8p~B+SBNquO%6jFVai-h^EC-4jqxZ1rC`l zi|{pEM)oXolh6`3R>s#_?#@$lL4l>v10^}H$r(4~r_vY(v)6}JbIqCveO0h3-C)^D zFkTJ|QB1rAg{d`Ze4-`S++)Xbk*0pGe6TrSj<3GIFLEZ{Z7xC4q0)tP$%J*RldqY? z5JaDfzp@#kfTIh~sr>g-9)ES;UOpVFf+-8mg!ZWP?uO{qv`2;5?sE70z+idj!) zF?YAXbBS&c&#IX)PQ$~E@BeBfc#s715q%xjX7Jb=%l5T7`snLO-6%O-lkTpBT^1K1f)R4PmFbR z4yvOuYDWLAs=Qe1ODfWhoxz6x7B>}ymV(RVj3J)4glEGA%vGmh@G>c z?kleEt$Dahl7O&>OEzK~(+ye^h(pv94k zW?7Qn9%^(ER|NDkZz=;SN+1TVQ%Yl19h2)cbF%(SZvJ);R#TEhS9Tsrn1j~{I@FvP zte;=#*Z3N8EGi9?_SYfJ!Fy?s(_QP82DAk^x;>0iTff$sIWUGGJ~U#yA6Q`_?LkDt zGg1^k10)IXyFRBbX&d<6S9W*a{`qN+d;CH1*dA? z#EpJ#6!kp_S4y;udrHsUL50)UN4&wkMAZA!fWn!Md#X`=*m3^Eb=d%+fFp*ZK$O`b zL2+H3J^JE_aPda7^z7Dtr;;-Hz_@bKq&fA6J(sXwq0HYppure^&*Wh{(?9o4@v{$@LV&jd1pbFbe$&WFmHcWJ z4>as8FCXMCm}IGQSli#|k5fSbypK27xOwu5PIBu5M*bLtYF8PUAvVB}4hU)oaVxKIbV%(x;qWH!NF9#2b z;oLK%9zY6&5ek|6le9E?C~31m#GrO{U^XzD7Up0hjQ0h`?y))8V(F7@%0kLOore;m zPb+uD>niV}v_m4RhXK7Q?{MFXc_v;^EJl77wus1bNsh6FQ|1P)iGUNHbb?=9g&AeE zB_E@C#ni588B<%qVLJwWR(|O*@yc1rlCXy! zehDsW`YI~h%oDi)+rfv)a}hSiHwFb_kWimmsOT0rt{myL&Rr=N6kT>r_pni~Z%(r& z-(KbUX!9p&Ba*m`$gF@(aWbR4>aBx8C+$|hJst&nw^6bXX%ro@wCfo@7Rg~(pW#bF z8%6bd=xTbx%}$L~n`24>Jk))|gw@EkpXpV~?l<{`n(nj$5l^=Lw72LIXfxt5g!mFd z(SfeaZ=Q!{Pb_Au<}58V?e#^Lb+}KTo;$s!P*OInH1Wu4ssNN$5LUyzW8b`(^vrP| za|x1_%Z>`t4#|}e2VBiL>n+Y`cXlC++8o%RpWDoLqHJLu{O6i|1_FXYq_TWQ-PUYG z!;~B5_gGj&3F3&eh4;<(4-90J287M)&g#@(0!!y8Jq3p(OBi|=izr@@p$Y>S)7_l zm+Z?2PLmP(G^ae;^v-B)*V579T^Kh@rKifwG*}Q&402+!*kb3AUQn8Fc&$87mngKH zwp8YEi#8IiJW3Y9RXBe>Qxy~i$S+-{@mz?0w?*bYhF6MS)PM8=oh(MnV^y0TSAKMc z0*s7wsIVv&^3mEd3MIrq#x~P^ZLodOb;S({ROs5&sSjTU#!+<|_V(1OXJ(25pI8p` zrTG#VYfYDxSt(b49F&=YvqjsvSN$*1?f;cH7K=rqj_>Q`a5$KJpGKHV>OGt7%(V9eYJtt zVTY5z>)=M>n0@m{Xig|arn3cwbs`5G3(K1>Qexwdd2cxzcH&~pRd7>*J9Su<h32CFZGXI&AzV0hOZqv z2{ESB#>^c@WCuTI6zvRR)rpzB7Qs-P?KGiK6uDZcFvjx%6m?`N0t3zEnacRNvij9I$N2H4%6 zaJQCc?s$ijDzrO?GXc6akVC$wNS}R=A=Q&HLJtD zv^iq_rcmO@K$U75c}To=i}c;$;)Dt;Md%SALV5gQlP%1=%J%sgVGO)wJ6Y8McfRK? zN#7C=OR$L|=}{rUy~#E_1HBGf($jO#f^EJCPZTqq?>RN|ohXqFa&rgMBo8BColf0! T9S5<@vmHI@;eVa*yPf$TYTP0d diff --git a/framework/assets/css/style-rtl.min.css b/framework/assets/css/style-rtl.min.css old mode 100644 new mode 100755 diff --git a/framework/assets/css/style.min.css b/framework/assets/css/style.min.css old mode 100644 new mode 100755 diff --git a/framework/assets/images/checkerboard.png b/framework/assets/images/checkerboard.png old mode 100644 new mode 100755 diff --git a/framework/assets/images/wp-logo.svg b/framework/assets/images/wp-logo.svg old mode 100644 new mode 100755 diff --git a/framework/assets/images/wp-plugin-logo.svg b/framework/assets/images/wp-plugin-logo.svg old mode 100644 new mode 100755 diff --git a/framework/assets/js/main.min.js b/framework/assets/js/main.min.js old mode 100644 new mode 100755 diff --git a/framework/assets/js/plugins.min.js b/framework/assets/js/plugins.min.js old mode 100644 new mode 100755 diff --git a/framework/classes/abstract.class.php b/framework/classes/abstract.class.php old mode 100644 new mode 100755 diff --git a/framework/classes/admin-options.class.php b/framework/classes/admin-options.class.php old mode 100644 new mode 100755 diff --git a/framework/classes/fields.class.php b/framework/classes/fields.class.php old mode 100644 new mode 100755 diff --git a/framework/fields/accordion/accordion.php b/framework/fields/accordion/accordion.php old mode 100644 new mode 100755 diff --git a/framework/fields/background/background.php b/framework/fields/background/background.php old mode 100644 new mode 100755 diff --git a/framework/fields/backup/backup.php b/framework/fields/backup/backup.php old mode 100644 new mode 100755 diff --git a/framework/fields/border/border.php b/framework/fields/border/border.php old mode 100644 new mode 100755 diff --git a/framework/fields/button_set/button_set.php b/framework/fields/button_set/button_set.php old mode 100644 new mode 100755 diff --git a/framework/fields/callback/callback.php b/framework/fields/callback/callback.php old mode 100644 new mode 100755 diff --git a/framework/fields/checkbox/checkbox.php b/framework/fields/checkbox/checkbox.php old mode 100644 new mode 100755 diff --git a/framework/fields/code_editor/code_editor.php b/framework/fields/code_editor/code_editor.php old mode 100644 new mode 100755 diff --git a/framework/fields/color/color.php b/framework/fields/color/color.php old mode 100644 new mode 100755 diff --git a/framework/fields/color_group/color_group.php b/framework/fields/color_group/color_group.php old mode 100644 new mode 100755 diff --git a/framework/fields/content/content.php b/framework/fields/content/content.php old mode 100644 new mode 100755 diff --git a/framework/fields/date/date.php b/framework/fields/date/date.php old mode 100644 new mode 100755 diff --git a/framework/fields/datetime/datetime.php b/framework/fields/datetime/datetime.php old mode 100644 new mode 100755 diff --git a/framework/fields/dimensions/dimensions.php b/framework/fields/dimensions/dimensions.php old mode 100644 new mode 100755 diff --git a/framework/fields/fieldset/fieldset.php b/framework/fields/fieldset/fieldset.php old mode 100644 new mode 100755 diff --git a/framework/fields/gallery/gallery.php b/framework/fields/gallery/gallery.php old mode 100644 new mode 100755 diff --git a/framework/fields/group/group.php b/framework/fields/group/group.php old mode 100644 new mode 100755 diff --git a/framework/fields/heading/heading.php b/framework/fields/heading/heading.php old mode 100644 new mode 100755 diff --git a/framework/fields/icon/fa4-icons.php b/framework/fields/icon/fa4-icons.php old mode 100644 new mode 100755 diff --git a/framework/fields/icon/fa5-icons.php b/framework/fields/icon/fa5-icons.php old mode 100644 new mode 100755 diff --git a/framework/fields/icon/icon.php b/framework/fields/icon/icon.php old mode 100644 new mode 100755 diff --git a/framework/fields/image_select/image_select.php b/framework/fields/image_select/image_select.php old mode 100644 new mode 100755 diff --git a/framework/fields/index.php b/framework/fields/index.php old mode 100644 new mode 100755 diff --git a/framework/fields/link/link.php b/framework/fields/link/link.php old mode 100644 new mode 100755 diff --git a/framework/fields/link_color/link_color.php b/framework/fields/link_color/link_color.php old mode 100644 new mode 100755 diff --git a/framework/fields/map/map.php b/framework/fields/map/map.php old mode 100644 new mode 100755 diff --git a/framework/fields/media/media.php b/framework/fields/media/media.php old mode 100644 new mode 100755 diff --git a/framework/fields/notice/notice.php b/framework/fields/notice/notice.php old mode 100644 new mode 100755 diff --git a/framework/fields/number/number.php b/framework/fields/number/number.php old mode 100644 new mode 100755 diff --git a/framework/fields/palette/palette.php b/framework/fields/palette/palette.php old mode 100644 new mode 100755 diff --git a/framework/fields/radio/radio.php b/framework/fields/radio/radio.php old mode 100644 new mode 100755 diff --git a/framework/fields/repeater/repeater.php b/framework/fields/repeater/repeater.php old mode 100644 new mode 100755 diff --git a/framework/fields/select/select.php b/framework/fields/select/select.php old mode 100644 new mode 100755 diff --git a/framework/fields/slider/slider.php b/framework/fields/slider/slider.php old mode 100644 new mode 100755 diff --git a/framework/fields/sortable/sortable.php b/framework/fields/sortable/sortable.php old mode 100644 new mode 100755 diff --git a/framework/fields/sorter/sorter.php b/framework/fields/sorter/sorter.php old mode 100644 new mode 100755 diff --git a/framework/fields/spacing/spacing.php b/framework/fields/spacing/spacing.php old mode 100644 new mode 100755 diff --git a/framework/fields/spinner/spinner.php b/framework/fields/spinner/spinner.php old mode 100644 new mode 100755 diff --git a/framework/fields/subheading/subheading.php b/framework/fields/subheading/subheading.php old mode 100644 new mode 100755 diff --git a/framework/fields/submessage/submessage.php b/framework/fields/submessage/submessage.php old mode 100644 new mode 100755 diff --git a/framework/fields/switcher/switcher.php b/framework/fields/switcher/switcher.php old mode 100644 new mode 100755 diff --git a/framework/fields/tabbed/tabbed.php b/framework/fields/tabbed/tabbed.php old mode 100644 new mode 100755 diff --git a/framework/fields/text/text.php b/framework/fields/text/text.php old mode 100644 new mode 100755 diff --git a/framework/fields/textarea/textarea.php b/framework/fields/textarea/textarea.php old mode 100644 new mode 100755 diff --git a/framework/fields/typography/google-fonts.php b/framework/fields/typography/google-fonts.php old mode 100644 new mode 100755 diff --git a/framework/fields/typography/typography.php b/framework/fields/typography/typography.php old mode 100644 new mode 100755 diff --git a/framework/fields/upload/upload.php b/framework/fields/upload/upload.php old mode 100644 new mode 100755 diff --git a/framework/fields/wp_editor/wp_editor.php b/framework/fields/wp_editor/wp_editor.php old mode 100644 new mode 100755 diff --git a/framework/functions/actions.php b/framework/functions/actions.php old mode 100644 new mode 100755 diff --git a/framework/functions/customize.php b/framework/functions/customize.php old mode 100644 new mode 100755 diff --git a/framework/functions/helpers.php b/framework/functions/helpers.php old mode 100644 new mode 100755 diff --git a/framework/functions/sanitize.php b/framework/functions/sanitize.php old mode 100644 new mode 100755 diff --git a/framework/functions/validate.php b/framework/functions/validate.php old mode 100644 new mode 100755 diff --git a/framework/functions/walker.php b/framework/functions/walker.php old mode 100644 new mode 100755 diff --git a/framework/index.php b/framework/index.php old mode 100644 new mode 100755 diff --git a/framework/languages/zh_CN.mo b/framework/languages/zh_CN.mo old mode 100644 new mode 100755 diff --git a/framework/languages/zh_CN.po b/framework/languages/zh_CN.po old mode 100644 new mode 100755 index 4121676..6c4bfc3 --- a/framework/languages/zh_CN.po +++ b/framework/languages/zh_CN.po @@ -1,672 +1,672 @@ -# Copyright (C) 2021 Wp_china_yes -# This file is distributed under the same license as the Wp_china_yes Framework package. -msgid "" -msgstr "" -"POT-Creation-Date: 2021-06-25 12:32:35+00:00\n" -"PO-Revision-Date: 2021-08-19 12:18+0800\n" -"Last-Translator: Seaton Jiang \n" -"Language-Team: \n" -"Language: zh_CN\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 2.4.3\n" -"Project-Id-Version: \n" - -#: classes/admin-options.class.php:226 -msgid "Error while saving the changes." -msgstr "保存失败" - -#: classes/admin-options.class.php:286 -msgid "Settings successfully imported." -msgstr "导入成功" - -#: classes/admin-options.class.php:298 classes/admin-options.class.php:314 -msgid "Default settings restored." -msgstr "恢复完成" - -#: classes/admin-options.class.php:385 -msgid "Settings saved." -msgstr "保存成功" - -#: classes/admin-options.class.php:565 -msgid "You have unsaved changes, save your changes!" -msgstr "配置发生改变,请勿忘记保存!" - -#: classes/admin-options.class.php:567 -msgid "show all settings" -msgstr "显示所有设置" - -#: classes/admin-options.class.php:569 fields/icon/icon.php:57 -#: fields/map/map.php:23 -msgid "Search..." -msgstr "请输入关键词" - -#: classes/admin-options.class.php:572 classes/admin-options.class.php:695 -msgid "Save" -msgstr "保存配置" - -#: classes/admin-options.class.php:572 classes/admin-options.class.php:695 -msgid "Saving..." -msgstr "正在保存" - -#: classes/admin-options.class.php:573 classes/admin-options.class.php:696 -msgid "Reset Section" -msgstr "恢复此页" - -#: classes/admin-options.class.php:573 classes/admin-options.class.php:696 -msgid "Are you sure to reset this section options?" -msgstr "单击「确定」进行恢复,当前页面的配置将会丢失!" - -#: classes/admin-options.class.php:574 classes/admin-options.class.php:697 -msgid "Reset All" -msgstr "恢复全部" - -#: classes/admin-options.class.php:574 classes/admin-options.class.php:697 -#: classes/comment-options.class.php:216 classes/metabox-options.class.php:294 -#: fields/backup/backup.php:31 -msgid "Reset" -msgstr "恢复默认" - -#: classes/admin-options.class.php:574 classes/admin-options.class.php:697 -msgid "Are you sure you want to reset all settings to default values?" -msgstr "单击「确定」进行恢复,所有页面的配置都将丢失!" - -#: classes/admin-options.class.php:672 classes/comment-options.class.php:199 -#: classes/metabox-options.class.php:277 fields/button_set/button_set.php:56 -#: fields/checkbox/checkbox.php:76 fields/radio/radio.php:75 -#: fields/select/select.php:113 functions/actions.php:41 -msgid "No data available." -msgstr "没有可用数据" - -#: classes/comment-options.class.php:217 classes/metabox-options.class.php:295 -msgid "update post" -msgstr "更新文章" - -#: classes/comment-options.class.php:217 classes/metabox-options.class.php:295 -msgid "Cancel" -msgstr "取消" - -#: classes/setup.class.php:592 -msgid "Are you sure?" -msgstr "单击「确定」进行下一步操作,该操作可能会丢失部分配置!" - -#: classes/setup.class.php:593 -msgid "Please enter %s or more characters" -msgstr "请输入 %s 或更多字符" - -#: classes/setup.class.php:594 -msgid "Searching..." -msgstr "搜索中..." - -#: classes/setup.class.php:595 -msgid "No results found." -msgstr "未找到结果。" - -#: classes/setup.class.php:696 -msgid "Oops! Not allowed." -msgstr "哎呀!不允许。" - -#: classes/setup.class.php:768 classes/setup.class.php:772 -msgid "Field not found!" -msgstr "没有找到任何数据" - -#: classes/shortcode-options.class.php:253 fields/group/group.php:23 -msgid "Add New" -msgstr "新增" - -#: classes/shortcode-options.class.php:290 functions/actions.php:16 -#: functions/actions.php:68 functions/actions.php:106 functions/actions.php:141 -#: functions/actions.php:170 -msgid "Error: Invalid nonce verification." -msgstr "错误: 无效的nonce验证。" - -#: fields/background/background.php:36 fields/media/media.php:59 -msgid "Not selected" -msgstr "未选择" - -#: fields/background/background.php:72 fields/date/date.php:31 -msgid "From" -msgstr "从" - -#: fields/background/background.php:90 fields/date/date.php:32 -msgid "To" -msgstr "到" - -#: fields/background/background.php:108 -msgid "Direction" -msgstr "方向" - -#: fields/background/background.php:114 -msgid "Gradient Direction" -msgstr "渐变方向" - -#: fields/background/background.php:115 -msgid "⇓ top to bottom" -msgstr "⇓ 从上到下" - -#: fields/background/background.php:116 -msgid "⇒ left to right" -msgstr "⇒从左到右" - -#: fields/background/background.php:117 -msgid "⇘ corner top to right" -msgstr "⇘ 右上角" - -#: fields/background/background.php:118 -msgid "⇙ corner top to left" -msgstr "⇘ 左上角" - -#: fields/background/background.php:161 -msgid "Background Position" -msgstr "背景位置" - -#: fields/background/background.php:162 -msgid "Left Top" -msgstr "左上" - -#: fields/background/background.php:163 -msgid "Left Center" -msgstr "左中" - -#: fields/background/background.php:164 -msgid "Left Bottom" -msgstr "左下" - -#: fields/background/background.php:165 -msgid "Center Top" -msgstr "中上" - -#: fields/background/background.php:166 -msgid "Center Center" -msgstr "居中" - -#: fields/background/background.php:167 -msgid "Center Bottom" -msgstr "中下" - -#: fields/background/background.php:168 -msgid "Right Top" -msgstr "右上" - -#: fields/background/background.php:169 -msgid "Right Center" -msgstr "右中" - -#: fields/background/background.php:170 -msgid "Right Bottom" -msgstr "右下" - -#: fields/background/background.php:184 -msgid "Background Repeat" -msgstr "背景重复" - -#: fields/background/background.php:185 -msgid "Repeat" -msgstr "重复" - -#: fields/background/background.php:186 -msgid "No Repeat" -msgstr "不重复" - -#: fields/background/background.php:187 -msgid "Repeat Horizontally" -msgstr "水平重复" - -#: fields/background/background.php:188 -msgid "Repeat Vertically" -msgstr "垂直重复" - -#: fields/background/background.php:202 -msgid "Background Attachment" -msgstr "背景附件" - -#: fields/background/background.php:203 -msgid "Scroll" -msgstr "滚动" - -#: fields/background/background.php:204 -msgid "Fixed" -msgstr "固定" - -#: fields/background/background.php:218 -msgid "Background Size" -msgstr "背景大小" - -#: fields/background/background.php:219 -msgid "Cover" -msgstr "覆盖" - -#: fields/background/background.php:220 -msgid "Contain" -msgstr "包含" - -#: fields/background/background.php:221 -msgid "Auto" -msgstr "自动" - -#: fields/background/background.php:235 -msgid "Background Origin" -msgstr "背景起源" - -#: fields/background/background.php:236 fields/background/background.php:254 -msgid "Padding Box" -msgstr "框内边距" - -#: fields/background/background.php:237 fields/background/background.php:253 -msgid "Border Box" -msgstr "边框" - -#: fields/background/background.php:238 fields/background/background.php:255 -msgid "Content Box" -msgstr "内容框" - -#: fields/background/background.php:252 -msgid "Background Clip" -msgstr "背景剪辑" - -#: fields/background/background.php:269 -msgid "Background Blend Mode" -msgstr "背景混合模式" - -#: fields/background/background.php:270 fields/link_color/link_color.php:36 -#: fields/typography/typography.php:186 -msgid "Normal" -msgstr "正常" - -#: fields/background/background.php:271 -msgid "Multiply" -msgstr "乘" - -#: fields/background/background.php:272 -msgid "Screen" -msgstr "屏幕" - -#: fields/background/background.php:273 -msgid "Overlay" -msgstr "覆盖" - -#: fields/background/background.php:274 -msgid "Darken" -msgstr "变黑" - -#: fields/background/background.php:275 -msgid "Lighten" -msgstr "减轻" - -#: fields/background/background.php:276 -msgid "Color Dodge" -msgstr "颜色减淡" - -#: fields/background/background.php:277 -msgid "Saturation" -msgstr "饱和度" - -#: fields/background/background.php:278 -msgid "Color" -msgstr "颜色" - -#: fields/background/background.php:279 -msgid "Luminosity" -msgstr "光度" - -#: fields/backup/backup.php:26 -msgid "Import" -msgstr "导入" - -#: fields/backup/backup.php:29 -msgid "Export & Download" -msgstr "导出和下载" - -#: fields/border/border.php:25 fields/spacing/spacing.php:25 -msgid "top" -msgstr "顶部" - -#: fields/border/border.php:26 fields/spacing/spacing.php:26 -msgid "right" -msgstr "右" - -#: fields/border/border.php:27 fields/spacing/spacing.php:27 -msgid "bottom" -msgstr "底部" - -#: fields/border/border.php:28 fields/spacing/spacing.php:28 -msgid "left" -msgstr "左" - -#: fields/border/border.php:29 fields/spacing/spacing.php:29 -msgid "all" -msgstr "所有" - -#: fields/border/border.php:51 fields/typography/typography.php:214 -msgid "Solid" -msgstr "实线" - -#: fields/border/border.php:52 fields/typography/typography.php:217 -msgid "Dashed" -msgstr "虚线" - -#: fields/border/border.php:53 fields/typography/typography.php:216 -msgid "Dotted" -msgstr "点线" - -#: fields/border/border.php:54 fields/typography/typography.php:215 -msgid "Double" -msgstr "双线" - -#: fields/border/border.php:55 -msgid "Inset" -msgstr "插入" - -#: fields/border/border.php:56 -msgid "Outset" -msgstr "开始" - -#: fields/border/border.php:57 -msgid "Groove" -msgstr "凹槽" - -#: fields/border/border.php:58 -msgid "ridge" -msgstr "凸出" - -#: fields/border/border.php:59 fields/typography/typography.php:199 -#: fields/typography/typography.php:213 -msgid "None" -msgstr "无" - -#: fields/dimensions/dimensions.php:22 -msgid "width" -msgstr "宽度" - -#: fields/dimensions/dimensions.php:23 -msgid "height" -msgstr "高度" - -#: fields/gallery/gallery.php:20 -msgid "Add Gallery" -msgstr "添加图库" - -#: fields/gallery/gallery.php:21 -msgid "Edit Gallery" -msgstr "编辑图库" - -#: fields/gallery/gallery.php:22 -msgid "Clear" -msgstr "清除" - -#: fields/group/group.php:35 fields/repeater/repeater.php:27 -msgid "Error: Field ID conflict." -msgstr "错误:字段ID冲突。" - -#: fields/group/group.php:46 fields/group/group.php:87 -#: fields/repeater/repeater.php:48 fields/repeater/repeater.php:76 -msgid "Are you sure to delete this item?" -msgstr "确定要删除这个项目吗?" - -#: fields/group/group.php:121 fields/repeater/repeater.php:89 -msgid "You cannot add more." -msgstr "无法添加更多" - -#: fields/group/group.php:122 fields/repeater/repeater.php:90 -msgid "You cannot remove more." -msgstr "无法删除更多" - -#: fields/icon/icon.php:20 fields/icon/icon.php:53 -msgid "Add Icon" -msgstr "添加图标" - -#: fields/icon/icon.php:21 -msgid "Remove Icon" -msgstr "删除图标" - -#: fields/link/link.php:20 -msgid "Add Link" -msgstr "添加链接" - -#: fields/link/link.php:21 -msgid "Edit Link" -msgstr "编辑链接" - -#: fields/link/link.php:22 -msgid "Remove Link" -msgstr "移除链接" - -#: fields/link_color/link_color.php:37 -msgid "Hover" -msgstr "悬停" - -#: fields/link_color/link_color.php:38 -msgid "Active" -msgstr "启用" - -#: fields/link_color/link_color.php:39 -msgid "Visited" -msgstr "访问" - -#: fields/link_color/link_color.php:40 -msgid "Focus" -msgstr "焦点" - -#: fields/map/map.php:24 -msgid "Latitude" -msgstr "纬度" - -#: fields/map/map.php:25 -msgid "Longitude" -msgstr "经度" - -#: fields/media/media.php:25 fields/upload/upload.php:25 -msgid "Upload" -msgstr "上传" - -#: fields/media/media.php:26 fields/upload/upload.php:26 -msgid "Remove" -msgstr "删除" - -#: fields/sorter/sorter.php:21 -msgid "Enabled" -msgstr "启用" - -#: fields/sorter/sorter.php:22 -msgid "Disabled" -msgstr "禁用" - -#: fields/switcher/switcher.php:20 -msgid "On" -msgstr "启用" - -#: fields/switcher/switcher.php:21 -msgid "Off" -msgstr "禁用" - -#: fields/typography/typography.php:96 -msgid "Font Family" -msgstr "字体" - -#: fields/typography/typography.php:97 -msgid "Select a font" -msgstr "选择字体" - -#: fields/typography/typography.php:105 -msgid "Backup Font Family" -msgstr "备份字体系列" - -#: fields/typography/typography.php:119 fields/typography/typography.php:132 -#: fields/typography/typography.php:145 fields/typography/typography.php:160 -#: fields/typography/typography.php:176 fields/typography/typography.php:189 -#: fields/typography/typography.php:203 fields/typography/typography.php:221 -msgid "Default" -msgstr "默认" - -#: fields/typography/typography.php:130 -msgid "Font Style" -msgstr "字体样式" - -#: fields/typography/typography.php:144 fields/typography/typography.php:145 -msgid "Load Extra Styles" -msgstr "加载额外样式" - -#: fields/typography/typography.php:158 -msgid "Subset" -msgstr "子集" - -#: fields/typography/typography.php:168 -msgid "Text Align" -msgstr "文本对齐" - -#: fields/typography/typography.php:170 -msgid "Inherit" -msgstr "继承" - -#: fields/typography/typography.php:171 -msgid "Left" -msgstr "左侧" - -#: fields/typography/typography.php:172 -msgid "Center" -msgstr "居中" - -#: fields/typography/typography.php:173 -msgid "Right" -msgstr "右侧" - -#: fields/typography/typography.php:174 -msgid "Justify" -msgstr "两端对齐" - -#: fields/typography/typography.php:175 -msgid "Initial" -msgstr "初始" - -#: fields/typography/typography.php:184 -msgid "Font Variant" -msgstr "字体变体" - -#: fields/typography/typography.php:187 -msgid "Small Caps" -msgstr "小写" - -#: fields/typography/typography.php:188 -msgid "All Small Caps" -msgstr "所有字母小写" - -#: fields/typography/typography.php:197 -msgid "Text Transform" -msgstr "文本转换" - -#: fields/typography/typography.php:200 -msgid "Capitalize" -msgstr "大写" - -#: fields/typography/typography.php:201 -msgid "Uppercase" -msgstr "大写" - -#: fields/typography/typography.php:202 -msgid "Lowercase" -msgstr "小写" - -#: fields/typography/typography.php:211 -msgid "Text Decoration" -msgstr "文本装饰" - -#: fields/typography/typography.php:218 -msgid "Wavy" -msgstr "波浪" - -#: fields/typography/typography.php:219 -msgid "Overline" -msgstr "上划线" - -#: fields/typography/typography.php:220 -msgid "Line-through" -msgstr "删除线" - -#: fields/typography/typography.php:233 -msgid "Font Size" -msgstr "字体大小" - -#: fields/typography/typography.php:245 -msgid "Line Height" -msgstr "线高度" - -#: fields/typography/typography.php:257 -msgid "Letter Spacing" -msgstr "字母间距" - -#: fields/typography/typography.php:269 -msgid "Word Spacing" -msgstr "字间距" - -#: fields/typography/typography.php:284 -msgid "Font Color" -msgstr "字体颜色" - -#: fields/typography/typography.php:295 -msgid "Custom Style" -msgstr "自定义样式" - -#: fields/typography/typography.php:362 -msgid "Custom Web Fonts" -msgstr "自定义 Web 字体" - -#: fields/typography/typography.php:368 -msgid "Safe Web Fonts" -msgstr "Web 安全字体" - -#: fields/typography/typography.php:388 -msgid "Google Web Fonts" -msgstr "Google Web 字体" - -#: functions/actions.php:72 functions/actions.php:110 -msgid "Error: Invalid key." -msgstr "错误:无效密钥。" - -#: functions/actions.php:114 -msgid "Error: The response is not a valid JSON response." -msgstr "错误:响应不是有效的 JSON 响应。" - -#: functions/actions.php:174 -msgid "Error: Invalid term ID." -msgstr "错误:无效的项目ID。" - -#: functions/actions.php:180 -msgid "Error: You do not have permission to do that." -msgstr "错误:您无权这样做。" - -#: functions/validate.php:14 functions/validate.php:86 -msgid "Please enter a valid email address." -msgstr "请输入正确的电子邮件地址。" - -#: functions/validate.php:32 functions/validate.php:106 -msgid "Please enter a valid number." -msgstr "请输入有效的数字" - -#: functions/validate.php:50 functions/validate.php:126 -msgid "This field is required." -msgstr "这是必填栏。" - -#: functions/validate.php:68 functions/validate.php:146 -msgid "Please enter a valid URL." -msgstr "请输入有效网址" - -#. Plugin Name of the plugin/theme -msgid "Wp_china_yes Framework" -msgstr "Wp_china_yes Framework" - -#. Plugin URI of the plugin/theme -msgid "http://wp_china_yesframework.com/" -msgstr "http://wp_china_yesframework.com/" - -#. Description of the plugin/theme -msgid "A Simple and Lightweight WordPress Option Framework for Themes and Plugins" -msgstr "一个简单且轻量的 WordPress 主题和插件选项框架" - -#. Author of the plugin/theme -msgid "Wp_china_yes" -msgstr "Wp_china_yes" - -#. Author URI of the plugin/theme -msgid "http://wp_china_yesthemes.com/" -msgstr "http://wp_china_yesthemes.com/" +# Copyright (C) 2021 Wp_china_yes +# This file is distributed under the same license as the Wp_china_yes Framework package. +msgid "" +msgstr "" +"POT-Creation-Date: 2021-06-25 12:32:35+00:00\n" +"PO-Revision-Date: 2021-08-19 12:18+0800\n" +"Last-Translator: Seaton Jiang \n" +"Language-Team: \n" +"Language: zh_CN\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 2.4.3\n" +"Project-Id-Version: \n" + +#: classes/admin-options.class.php:226 +msgid "Error while saving the changes." +msgstr "保存失败" + +#: classes/admin-options.class.php:286 +msgid "Settings successfully imported." +msgstr "导入成功" + +#: classes/admin-options.class.php:298 classes/admin-options.class.php:314 +msgid "Default settings restored." +msgstr "恢复完成" + +#: classes/admin-options.class.php:385 +msgid "Settings saved." +msgstr "保存成功" + +#: classes/admin-options.class.php:565 +msgid "You have unsaved changes, save your changes!" +msgstr "配置发生改变,请勿忘记保存!" + +#: classes/admin-options.class.php:567 +msgid "show all settings" +msgstr "显示所有设置" + +#: classes/admin-options.class.php:569 fields/icon/icon.php:57 +#: fields/map/map.php:23 +msgid "Search..." +msgstr "请输入关键词" + +#: classes/admin-options.class.php:572 classes/admin-options.class.php:695 +msgid "Save" +msgstr "保存配置" + +#: classes/admin-options.class.php:572 classes/admin-options.class.php:695 +msgid "Saving..." +msgstr "正在保存" + +#: classes/admin-options.class.php:573 classes/admin-options.class.php:696 +msgid "Reset Section" +msgstr "恢复此页" + +#: classes/admin-options.class.php:573 classes/admin-options.class.php:696 +msgid "Are you sure to reset this section options?" +msgstr "单击「确定」进行恢复,当前页面的配置将会丢失!" + +#: classes/admin-options.class.php:574 classes/admin-options.class.php:697 +msgid "Reset All" +msgstr "恢复全部" + +#: classes/admin-options.class.php:574 classes/admin-options.class.php:697 +#: classes/comment-options.class.php:216 classes/metabox-options.class.php:294 +#: fields/backup/backup.php:31 +msgid "Reset" +msgstr "恢复默认" + +#: classes/admin-options.class.php:574 classes/admin-options.class.php:697 +msgid "Are you sure you want to reset all settings to default values?" +msgstr "单击「确定」进行恢复,所有页面的配置都将丢失!" + +#: classes/admin-options.class.php:672 classes/comment-options.class.php:199 +#: classes/metabox-options.class.php:277 fields/button_set/button_set.php:56 +#: fields/checkbox/checkbox.php:76 fields/radio/radio.php:75 +#: fields/select/select.php:113 functions/actions.php:41 +msgid "No data available." +msgstr "没有可用数据" + +#: classes/comment-options.class.php:217 classes/metabox-options.class.php:295 +msgid "update post" +msgstr "更新文章" + +#: classes/comment-options.class.php:217 classes/metabox-options.class.php:295 +msgid "Cancel" +msgstr "取消" + +#: classes/setup.class.php:592 +msgid "Are you sure?" +msgstr "单击「确定」进行下一步操作,该操作可能会丢失部分配置!" + +#: classes/setup.class.php:593 +msgid "Please enter %s or more characters" +msgstr "请输入 %s 或更多字符" + +#: classes/setup.class.php:594 +msgid "Searching..." +msgstr "搜索中..." + +#: classes/setup.class.php:595 +msgid "No results found." +msgstr "未找到结果。" + +#: classes/setup.class.php:696 +msgid "Oops! Not allowed." +msgstr "哎呀!不允许。" + +#: classes/setup.class.php:768 classes/setup.class.php:772 +msgid "Field not found!" +msgstr "没有找到任何数据" + +#: classes/shortcode-options.class.php:253 fields/group/group.php:23 +msgid "Add New" +msgstr "新增" + +#: classes/shortcode-options.class.php:290 functions/actions.php:16 +#: functions/actions.php:68 functions/actions.php:106 functions/actions.php:141 +#: functions/actions.php:170 +msgid "Error: Invalid nonce verification." +msgstr "错误: 无效的nonce验证。" + +#: fields/background/background.php:36 fields/media/media.php:59 +msgid "Not selected" +msgstr "未选择" + +#: fields/background/background.php:72 fields/date/date.php:31 +msgid "From" +msgstr "从" + +#: fields/background/background.php:90 fields/date/date.php:32 +msgid "To" +msgstr "到" + +#: fields/background/background.php:108 +msgid "Direction" +msgstr "方向" + +#: fields/background/background.php:114 +msgid "Gradient Direction" +msgstr "渐变方向" + +#: fields/background/background.php:115 +msgid "⇓ top to bottom" +msgstr "⇓ 从上到下" + +#: fields/background/background.php:116 +msgid "⇒ left to right" +msgstr "⇒从左到右" + +#: fields/background/background.php:117 +msgid "⇘ corner top to right" +msgstr "⇘ 右上角" + +#: fields/background/background.php:118 +msgid "⇙ corner top to left" +msgstr "⇘ 左上角" + +#: fields/background/background.php:161 +msgid "Background Position" +msgstr "背景位置" + +#: fields/background/background.php:162 +msgid "Left Top" +msgstr "左上" + +#: fields/background/background.php:163 +msgid "Left Center" +msgstr "左中" + +#: fields/background/background.php:164 +msgid "Left Bottom" +msgstr "左下" + +#: fields/background/background.php:165 +msgid "Center Top" +msgstr "中上" + +#: fields/background/background.php:166 +msgid "Center Center" +msgstr "居中" + +#: fields/background/background.php:167 +msgid "Center Bottom" +msgstr "中下" + +#: fields/background/background.php:168 +msgid "Right Top" +msgstr "右上" + +#: fields/background/background.php:169 +msgid "Right Center" +msgstr "右中" + +#: fields/background/background.php:170 +msgid "Right Bottom" +msgstr "右下" + +#: fields/background/background.php:184 +msgid "Background Repeat" +msgstr "背景重复" + +#: fields/background/background.php:185 +msgid "Repeat" +msgstr "重复" + +#: fields/background/background.php:186 +msgid "No Repeat" +msgstr "不重复" + +#: fields/background/background.php:187 +msgid "Repeat Horizontally" +msgstr "水平重复" + +#: fields/background/background.php:188 +msgid "Repeat Vertically" +msgstr "垂直重复" + +#: fields/background/background.php:202 +msgid "Background Attachment" +msgstr "背景附件" + +#: fields/background/background.php:203 +msgid "Scroll" +msgstr "滚动" + +#: fields/background/background.php:204 +msgid "Fixed" +msgstr "固定" + +#: fields/background/background.php:218 +msgid "Background Size" +msgstr "背景大小" + +#: fields/background/background.php:219 +msgid "Cover" +msgstr "覆盖" + +#: fields/background/background.php:220 +msgid "Contain" +msgstr "包含" + +#: fields/background/background.php:221 +msgid "Auto" +msgstr "自动" + +#: fields/background/background.php:235 +msgid "Background Origin" +msgstr "背景起源" + +#: fields/background/background.php:236 fields/background/background.php:254 +msgid "Padding Box" +msgstr "框内边距" + +#: fields/background/background.php:237 fields/background/background.php:253 +msgid "Border Box" +msgstr "边框" + +#: fields/background/background.php:238 fields/background/background.php:255 +msgid "Content Box" +msgstr "内容框" + +#: fields/background/background.php:252 +msgid "Background Clip" +msgstr "背景剪辑" + +#: fields/background/background.php:269 +msgid "Background Blend Mode" +msgstr "背景混合模式" + +#: fields/background/background.php:270 fields/link_color/link_color.php:36 +#: fields/typography/typography.php:186 +msgid "Normal" +msgstr "正常" + +#: fields/background/background.php:271 +msgid "Multiply" +msgstr "乘" + +#: fields/background/background.php:272 +msgid "Screen" +msgstr "屏幕" + +#: fields/background/background.php:273 +msgid "Overlay" +msgstr "覆盖" + +#: fields/background/background.php:274 +msgid "Darken" +msgstr "变黑" + +#: fields/background/background.php:275 +msgid "Lighten" +msgstr "减轻" + +#: fields/background/background.php:276 +msgid "Color Dodge" +msgstr "颜色减淡" + +#: fields/background/background.php:277 +msgid "Saturation" +msgstr "饱和度" + +#: fields/background/background.php:278 +msgid "Color" +msgstr "颜色" + +#: fields/background/background.php:279 +msgid "Luminosity" +msgstr "光度" + +#: fields/backup/backup.php:26 +msgid "Import" +msgstr "导入" + +#: fields/backup/backup.php:29 +msgid "Export & Download" +msgstr "导出和下载" + +#: fields/border/border.php:25 fields/spacing/spacing.php:25 +msgid "top" +msgstr "顶部" + +#: fields/border/border.php:26 fields/spacing/spacing.php:26 +msgid "right" +msgstr "右" + +#: fields/border/border.php:27 fields/spacing/spacing.php:27 +msgid "bottom" +msgstr "底部" + +#: fields/border/border.php:28 fields/spacing/spacing.php:28 +msgid "left" +msgstr "左" + +#: fields/border/border.php:29 fields/spacing/spacing.php:29 +msgid "all" +msgstr "所有" + +#: fields/border/border.php:51 fields/typography/typography.php:214 +msgid "Solid" +msgstr "实线" + +#: fields/border/border.php:52 fields/typography/typography.php:217 +msgid "Dashed" +msgstr "虚线" + +#: fields/border/border.php:53 fields/typography/typography.php:216 +msgid "Dotted" +msgstr "点线" + +#: fields/border/border.php:54 fields/typography/typography.php:215 +msgid "Double" +msgstr "双线" + +#: fields/border/border.php:55 +msgid "Inset" +msgstr "插入" + +#: fields/border/border.php:56 +msgid "Outset" +msgstr "开始" + +#: fields/border/border.php:57 +msgid "Groove" +msgstr "凹槽" + +#: fields/border/border.php:58 +msgid "ridge" +msgstr "凸出" + +#: fields/border/border.php:59 fields/typography/typography.php:199 +#: fields/typography/typography.php:213 +msgid "None" +msgstr "无" + +#: fields/dimensions/dimensions.php:22 +msgid "width" +msgstr "宽度" + +#: fields/dimensions/dimensions.php:23 +msgid "height" +msgstr "高度" + +#: fields/gallery/gallery.php:20 +msgid "Add Gallery" +msgstr "添加图库" + +#: fields/gallery/gallery.php:21 +msgid "Edit Gallery" +msgstr "编辑图库" + +#: fields/gallery/gallery.php:22 +msgid "Clear" +msgstr "清除" + +#: fields/group/group.php:35 fields/repeater/repeater.php:27 +msgid "Error: Field ID conflict." +msgstr "错误:字段ID冲突。" + +#: fields/group/group.php:46 fields/group/group.php:87 +#: fields/repeater/repeater.php:48 fields/repeater/repeater.php:76 +msgid "Are you sure to delete this item?" +msgstr "确定要删除这个项目吗?" + +#: fields/group/group.php:121 fields/repeater/repeater.php:89 +msgid "You cannot add more." +msgstr "无法添加更多" + +#: fields/group/group.php:122 fields/repeater/repeater.php:90 +msgid "You cannot remove more." +msgstr "无法删除更多" + +#: fields/icon/icon.php:20 fields/icon/icon.php:53 +msgid "Add Icon" +msgstr "添加图标" + +#: fields/icon/icon.php:21 +msgid "Remove Icon" +msgstr "删除图标" + +#: fields/link/link.php:20 +msgid "Add Link" +msgstr "添加链接" + +#: fields/link/link.php:21 +msgid "Edit Link" +msgstr "编辑链接" + +#: fields/link/link.php:22 +msgid "Remove Link" +msgstr "移除链接" + +#: fields/link_color/link_color.php:37 +msgid "Hover" +msgstr "悬停" + +#: fields/link_color/link_color.php:38 +msgid "Active" +msgstr "启用" + +#: fields/link_color/link_color.php:39 +msgid "Visited" +msgstr "访问" + +#: fields/link_color/link_color.php:40 +msgid "Focus" +msgstr "焦点" + +#: fields/map/map.php:24 +msgid "Latitude" +msgstr "纬度" + +#: fields/map/map.php:25 +msgid "Longitude" +msgstr "经度" + +#: fields/media/media.php:25 fields/upload/upload.php:25 +msgid "Upload" +msgstr "上传" + +#: fields/media/media.php:26 fields/upload/upload.php:26 +msgid "Remove" +msgstr "删除" + +#: fields/sorter/sorter.php:21 +msgid "Enabled" +msgstr "启用" + +#: fields/sorter/sorter.php:22 +msgid "Disabled" +msgstr "禁用" + +#: fields/switcher/switcher.php:20 +msgid "On" +msgstr "启用" + +#: fields/switcher/switcher.php:21 +msgid "Off" +msgstr "禁用" + +#: fields/typography/typography.php:96 +msgid "Font Family" +msgstr "字体" + +#: fields/typography/typography.php:97 +msgid "Select a font" +msgstr "选择字体" + +#: fields/typography/typography.php:105 +msgid "Backup Font Family" +msgstr "备份字体系列" + +#: fields/typography/typography.php:119 fields/typography/typography.php:132 +#: fields/typography/typography.php:145 fields/typography/typography.php:160 +#: fields/typography/typography.php:176 fields/typography/typography.php:189 +#: fields/typography/typography.php:203 fields/typography/typography.php:221 +msgid "Default" +msgstr "默认" + +#: fields/typography/typography.php:130 +msgid "Font Style" +msgstr "字体样式" + +#: fields/typography/typography.php:144 fields/typography/typography.php:145 +msgid "Load Extra Styles" +msgstr "加载额外样式" + +#: fields/typography/typography.php:158 +msgid "Subset" +msgstr "子集" + +#: fields/typography/typography.php:168 +msgid "Text Align" +msgstr "文本对齐" + +#: fields/typography/typography.php:170 +msgid "Inherit" +msgstr "继承" + +#: fields/typography/typography.php:171 +msgid "Left" +msgstr "左侧" + +#: fields/typography/typography.php:172 +msgid "Center" +msgstr "居中" + +#: fields/typography/typography.php:173 +msgid "Right" +msgstr "右侧" + +#: fields/typography/typography.php:174 +msgid "Justify" +msgstr "两端对齐" + +#: fields/typography/typography.php:175 +msgid "Initial" +msgstr "初始" + +#: fields/typography/typography.php:184 +msgid "Font Variant" +msgstr "字体变体" + +#: fields/typography/typography.php:187 +msgid "Small Caps" +msgstr "小写" + +#: fields/typography/typography.php:188 +msgid "All Small Caps" +msgstr "所有字母小写" + +#: fields/typography/typography.php:197 +msgid "Text Transform" +msgstr "文本转换" + +#: fields/typography/typography.php:200 +msgid "Capitalize" +msgstr "大写" + +#: fields/typography/typography.php:201 +msgid "Uppercase" +msgstr "大写" + +#: fields/typography/typography.php:202 +msgid "Lowercase" +msgstr "小写" + +#: fields/typography/typography.php:211 +msgid "Text Decoration" +msgstr "文本装饰" + +#: fields/typography/typography.php:218 +msgid "Wavy" +msgstr "波浪" + +#: fields/typography/typography.php:219 +msgid "Overline" +msgstr "上划线" + +#: fields/typography/typography.php:220 +msgid "Line-through" +msgstr "删除线" + +#: fields/typography/typography.php:233 +msgid "Font Size" +msgstr "字体大小" + +#: fields/typography/typography.php:245 +msgid "Line Height" +msgstr "线高度" + +#: fields/typography/typography.php:257 +msgid "Letter Spacing" +msgstr "字母间距" + +#: fields/typography/typography.php:269 +msgid "Word Spacing" +msgstr "字间距" + +#: fields/typography/typography.php:284 +msgid "Font Color" +msgstr "字体颜色" + +#: fields/typography/typography.php:295 +msgid "Custom Style" +msgstr "自定义样式" + +#: fields/typography/typography.php:362 +msgid "Custom Web Fonts" +msgstr "自定义 Web 字体" + +#: fields/typography/typography.php:368 +msgid "Safe Web Fonts" +msgstr "Web 安全字体" + +#: fields/typography/typography.php:388 +msgid "Google Web Fonts" +msgstr "Google Web 字体" + +#: functions/actions.php:72 functions/actions.php:110 +msgid "Error: Invalid key." +msgstr "错误:无效密钥。" + +#: functions/actions.php:114 +msgid "Error: The response is not a valid JSON response." +msgstr "错误:响应不是有效的 JSON 响应。" + +#: functions/actions.php:174 +msgid "Error: Invalid term ID." +msgstr "错误:无效的项目ID。" + +#: functions/actions.php:180 +msgid "Error: You do not have permission to do that." +msgstr "错误:您无权这样做。" + +#: functions/validate.php:14 functions/validate.php:86 +msgid "Please enter a valid email address." +msgstr "请输入正确的电子邮件地址。" + +#: functions/validate.php:32 functions/validate.php:106 +msgid "Please enter a valid number." +msgstr "请输入有效的数字" + +#: functions/validate.php:50 functions/validate.php:126 +msgid "This field is required." +msgstr "这是必填栏。" + +#: functions/validate.php:68 functions/validate.php:146 +msgid "Please enter a valid URL." +msgstr "请输入有效网址" + +#. Plugin Name of the plugin/theme +msgid "Wp_china_yes Framework" +msgstr "Wp_china_yes Framework" + +#. Plugin URI of the plugin/theme +msgid "http://wp_china_yesframework.com/" +msgstr "http://wp_china_yesframework.com/" + +#. Description of the plugin/theme +msgid "A Simple and Lightweight WordPress Option Framework for Themes and Plugins" +msgstr "一个简单且轻量的 WordPress 主题和插件选项框架" + +#. Author of the plugin/theme +msgid "Wp_china_yes" +msgstr "Wp_china_yes" + +#. Author URI of the plugin/theme +msgid "http://wp_china_yesthemes.com/" +msgstr "http://wp_china_yesthemes.com/" diff --git a/helpers.php b/helpers.php old mode 100644 new mode 100755 index c5fa9c0..2b770f1 --- a/helpers.php +++ b/helpers.php @@ -20,6 +20,7 @@ function get_settings() { 'plane' => 'off', 'plane_rule' => [], 'monitor' => true, + 'memory' => true, 'hide' => false, 'custom_name' => 'WP-China-Yes', ] );