/** * LearnDash Compatibility File. * * @package Astra * @since 1.3.0 */ // If plugin - 'LearnDash' not exist then return. if ( ! class_exists( 'SFWD_LMS' ) ) { return; } /** * Astra LearnDash Compatibility */ if ( ! class_exists( 'Astra_LearnDash' ) ) : /** * Astra LearnDash Compatibility * * @since 1.3.0 */ class Astra_LearnDash { /** * Member Variable * * @var object instance */ private static $instance; /** * Initiator */ public static function get_instance() { if ( ! isset( self::$instance ) ) { self::$instance = new self(); } return self::$instance; } /** * Constructor */ public function __construct() { add_filter( 'astra_theme_assets', array( $this, 'add_styles' ) ); add_filter( 'astra_dynamic_theme_css', array( $this, 'add_dynamic_styles' ) ); add_action( 'customize_register', array( $this, 'customize_register' ), 2 ); add_filter( 'astra_theme_defaults', array( $this, 'theme_defaults' ) ); // Sidebar Layout. add_filter( 'astra_page_layout', array( $this, 'sidebar_layout' ) ); // Content Layout. add_filter( 'astra_get_content_layout', array( $this, 'content_layout' ) ); } /** * Enqueue styles * * @param String $dynamic_css Astra Dynamic CSS. * @param String $dynamic_css_filtered Astra Dynamic CSS Filters. * @since 1.3.0 * @return String Dynamic CSS. */ public function add_dynamic_styles( $dynamic_css, $dynamic_css_filtered = '' ) { $active_ld_theme = ''; if ( is_callable( 'LearnDash_Theme_Register::get_active_theme_key' ) ) { $active_ld_theme = LearnDash_Theme_Register::get_active_theme_key(); } if ( 'ld30' === $active_ld_theme ) { return $dynamic_css; } $dynamic_css .= self::ld_static_css(); /** * - Variable Declaration */ $is_site_rtl = is_rtl(); $link_color = astra_get_option( 'link-color' ); $theme_color = astra_get_option( 'theme-color' ); $text_color = astra_get_option( 'text-color' ); $link_h_color = astra_get_option( 'link-h-color' ); $body_font_family = astra_body_font_family(); $link_forground_color = astra_get_foreground_color( $link_color ); $theme_forground_color = astra_get_foreground_color( $theme_color ); $btn_color = astra_get_option( 'button-color' ); if ( empty( $btn_color ) ) { $btn_color = $link_forground_color; } $btn_h_color = astra_get_option( 'button-h-color' ); if ( empty( $btn_h_color ) ) { $btn_h_color = astra_get_foreground_color( $link_h_color ); } $btn_bg_color = astra_get_option( 'button-bg-color', '', $theme_color ); $btn_bg_h_color = astra_get_option( 'button-bg-h-color', '', $link_h_color ); $btn_border_radius_fields = astra_get_option( 'button-radius-fields' ); $archive_post_title_font_size = astra_get_option( 'font-size-page-title' ); $css_output = array( 'body #learndash_lessons a, body #learndash_quizzes a, body .expand_collapse a, body .learndash_topic_dots a, body .learndash_topic_dots a > span, body #learndash_lesson_topics_list span a, body #learndash_profile a, body #learndash_profile a span' => array( 'font-family' => astra_get_font_family( $body_font_family ), ), 'body #ld_course_list .btn, body a.btn-blue, body a.btn-blue:visited, body a#quiz_continue_link, body .btn-join, body .learndash_checkout_buttons input.btn-join[type="button"], body #btn-join, body .learndash_checkout_buttons input.btn-join[type="submit"], body .wpProQuiz_content .wpProQuiz_button2' => array( 'color' => $btn_color, 'border-color' => $btn_bg_color, 'background-color' => $btn_bg_color, 'border-top-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'top', 'desktop' ), 'border-top-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'right', 'desktop' ), 'border-bottom-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'bottom', 'desktop' ), 'border-bottom-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'left', 'desktop' ), ), 'body #ld_course_list .btn:hover, body #ld_course_list .btn:focus, body a.btn-blue:hover, body a.btn-blue:focus, body a#quiz_continue_link:hover, body a#quiz_continue_link:focus, body .btn-join:hover, body .learndash_checkout_buttons input.btn-join[type="button"]:hover, body .btn-join:focus, body .learndash_checkout_buttons input.btn-join[type="button"]:focus, .wpProQuiz_content .wpProQuiz_button2:hover, .wpProQuiz_content .wpProQuiz_button2:focus, body #btn-join:hover, body .learndash_checkout_buttons input.btn-join[type="submit"]:hover, body #btn-join:focus, body .learndash_checkout_buttons input.btn-join[type="submit"]:focus' => array( 'color' => $btn_h_color, 'border-color' => $btn_bg_h_color, 'background-color' => $btn_bg_h_color, ), 'body dd.course_progress div.course_progress_blue, body .wpProQuiz_content .wpProQuiz_time_limit .wpProQuiz_progress' => array( 'background-color' => $theme_color, ), 'body #learndash_lessons a, body #learndash_quizzes a, body .expand_collapse a, body .learndash_topic_dots a, body .learndash_topic_dots a > span, body #learndash_lesson_topics_list span a, body #learndash_profile a, #learndash_profile .profile_edit_profile a, body #learndash_profile .expand_collapse a, body #learndash_profile a span, #lessons_list .list-count, #quiz_list .list-count' => array( 'color' => $link_color, ), '.learndash .notcompleted:before, #learndash_profile .notcompleted:before, .learndash_topic_dots ul .topic-notcompleted span:before, .learndash_navigation_lesson_topics_list .topic-notcompleted span:before, .learndash_navigation_lesson_topics_list ul .topic-notcompleted span:before, .learndash .topic-notcompleted span:before' => array( 'color' => astra_hex_to_rgba( $text_color, .5 ), ), 'body .thumbnail.course .ld_course_grid_price, body .thumbnail.course .ld_course_grid_price.ribbon-enrolled, body #learndash_lessons #lesson_heading, body #learndash_profile .learndash_profile_heading, body #learndash_quizzes #quiz_heading, body #learndash_lesson_topics_list div > strong, body .learndash-pager span a, body #learndash_profile .learndash_profile_quiz_heading' => array( 'background-color' => $theme_color, 'color' => $theme_forground_color, ), '.learndash .completed:before, #learndash_profile .completed:before, .learndash_topic_dots ul .topic-completed span:before, .learndash_navigation_lesson_topics_list .topic-completed span:before, .learndash_navigation_lesson_topics_list ul .topic-completed span:before, .learndash .topic-completed span:before, body .list_arrow.lesson_completed:before' => array( 'color' => $theme_color, ), 'body .thumbnail.course .ld_course_grid_price:before' => array( 'border-top-color' => astra_hex_to_rgba( $theme_color, .75 ), 'border-right-color' => astra_hex_to_rgba( $theme_color, .75 ), ), 'body .wpProQuiz_loadQuiz, body .wpProQuiz_lock' => array( 'border-color' => astra_hex_to_rgba( $link_color, .5 ), 'background-color' => astra_hex_to_rgba( $link_color, .1 ), ), '#ld_course_list .entry-title' => array( 'font-size' => astra_responsive_font( $archive_post_title_font_size, 'desktop' ), ), ); if ( ! astra_get_option( 'learndash-lesson-serial-number' ) ) { $css_output['body #course_list .list-count, body #lessons_list .list-count, body #quiz_list .list-count'] = array( 'display' => 'none', ); $css_output['body #course_list > div h4 > a, body #lessons_list > div h4 > a, body #quiz_list > div h4 > a, body #learndash_course_content .learndash_topic_dots ul > li a'] = array( 'padding-left' => '.75em', 'margin-left' => 'auto', ); } if ( ! astra_get_option( 'learndash-differentiate-rows' ) ) { $css_output['body #course_list > div:nth-of-type(odd), body #lessons_list > div:nth-of-type(odd), body #quiz_list > div:nth-of-type(odd), body #learndash_lesson_topics_list .learndash_topic_dots ul > li.nth-of-type-odd'] = array( 'background' => 'none', ); } /* Parse CSS from array() */ $css_output = astra_parse_css( $css_output ); $tablet_typography = array( 'body #ld_course_list .btn, body a.btn-blue, body a.btn-blue:visited, body a#quiz_continue_link, body .btn-join, body .learndash_checkout_buttons input.btn-join[type="button"], body #btn-join, body .learndash_checkout_buttons input.btn-join[type="submit"], body .wpProQuiz_content .wpProQuiz_button2' => array( 'border-top-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'top', 'tablet' ), 'border-top-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'right', 'tablet' ), 'border-bottom-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'bottom', 'tablet' ), 'border-bottom-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'left', 'tablet' ), ), '#ld_course_list .entry-title' => array( 'font-size' => astra_responsive_font( $archive_post_title_font_size, 'tablet', 30 ), ), ); /* Parse CSS from array()*/ $css_output .= astra_parse_css( $tablet_typography, '', astra_get_tablet_breakpoint() ); if ( $is_site_rtl ) { $mobile_min_width_css = array( 'body #learndash_profile .profile_edit_profile' => array( 'position' => 'absolute', 'top' => '15px', 'left' => '15px', ), ); } else { $mobile_min_width_css = array( 'body #learndash_profile .profile_edit_profile' => array( 'position' => 'absolute', 'top' => '15px', 'right' => '15px', ), ); } /* Parse CSS from array() -> min-width: (mobile-breakpoint + 1) px */ $css_output .= astra_parse_css( $mobile_min_width_css, astra_get_mobile_breakpoint( '', 1 ) ); $mobile_typography = array( 'body #ld_course_list .btn, body a.btn-blue, body a.btn-blue:visited, body a#quiz_continue_link, body .btn-join, body .learndash_checkout_buttons input.btn-join[type="button"], body #btn-join, body .learndash_checkout_buttons input.btn-join[type="submit"], body .wpProQuiz_content .wpProQuiz_button2' => array( 'border-top-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'top', 'mobile' ), 'border-top-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'right', 'mobile' ), 'border-bottom-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'bottom', 'mobile' ), 'border-bottom-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'left', 'mobile' ), ), '#ld_course_list .entry-title' => array( 'font-size' => astra_responsive_font( $archive_post_title_font_size, 'mobile', 30 ), ), '#learndash_next_prev_link a' => array( 'width' => '100%', ), '#learndash_next_prev_link a.prev-link' => array( 'margin-bottom' => '1em', ), '#ld_course_info_mycourses_list .ld-course-info-my-courses .ld-entry-title' => array( 'margin' => '0 0 20px', ), ); /* Parse CSS from array() -> max-width: (mobile-breakpoint) px */ $css_output .= astra_parse_css( $mobile_typography, '', astra_get_mobile_breakpoint() ); if ( $is_site_rtl ) { $mobile_typography_lang_direction_css = array( '#ld_course_info_mycourses_list .ld-course-info-my-courses img' => array( 'display' => 'block', 'margin-right' => 'initial', 'max-width' => '100%', 'margin' => '10px 0', ), ); } else { $mobile_typography_lang_direction_css = array( '#ld_course_info_mycourses_list .ld-course-info-my-courses img' => array( 'display' => 'block', 'margin-left' => 'initial', 'max-width' => '100%', 'margin' => '10px 0', ), ); } /* Parse CSS from array() -> max-width: (mobile-breakpoint) px */ $css_output .= astra_parse_css( $mobile_typography_lang_direction_css, '', astra_get_mobile_breakpoint() ); $dynamic_css .= apply_filters( 'astra_theme_learndash_dynamic_css', $css_output ); return $dynamic_css; } /** * Register Customizer sections and panel for learndash. * * @since 1.3.0 * @param WP_Customize_Manager $wp_customize Theme Customizer object. */ public function customize_register( $wp_customize ) { $active_ld_theme = ''; if ( is_callable( 'LearnDash_Theme_Register::get_active_theme_key' ) ) { $active_ld_theme = LearnDash_Theme_Register::get_active_theme_key(); } // @codingStandardsIgnoreStart WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound /** * Register Sections & Panels */ require ASTRA_THEME_DIR . 'inc/compatibility/learndash/customizer/class-astra-customizer-register-learndash-section.php'; /** * Sections */ require ASTRA_THEME_DIR . 'inc/compatibility/learndash/customizer/sections/class-astra-learndash-container-configs.php'; require ASTRA_THEME_DIR . 'inc/compatibility/learndash/customizer/sections/class-astra-learndash-sidebar-configs.php'; if ( 'ld30' !== $active_ld_theme ) { require ASTRA_THEME_DIR . 'inc/compatibility/learndash/customizer/sections/layout/class-astra-learndash-general-configs.php'; } // @codingStandardsIgnoreEnd WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound } /** * Theme Defaults. * * @since 1.3.0 * @param array $defaults Array of options value. * @return array */ public function theme_defaults( $defaults ) { // General. $defaults['learndash-lesson-serial-number'] = false; $defaults['learndash-differentiate-rows'] = true; // Container. $defaults['learndash-ast-content-layout'] = 'normal-width-container'; // Sidebar. $defaults['learndash-sidebar-layout'] = 'default'; return $defaults; } /** * Add assets in theme * * @since 1.3.0 * @param array $assets list of theme assets (JS & CSS). * @return array List of updated assets. */ public function add_styles( $assets ) { $assets['css']['astra-learndash'] = 'compatibility/learndash'; return $assets; } /** * LeanDash Sidebar * * @since 1.3.0 * @param string $layout Layout type. * @return string $layout Layout type. */ public function sidebar_layout( $layout ) { if ( is_singular( 'sfwd-courses' ) || is_singular( 'sfwd-lessons' ) || is_singular( 'sfwd-topic' ) || is_singular( 'sfwd-quiz' ) || is_singular( 'sfwd-certificates' ) || is_singular( 'sfwd-assignment' ) ) { $learndash_sidebar = astra_get_option( 'learndash-sidebar-layout' ); if ( 'default' !== $learndash_sidebar ) { $layout = $learndash_sidebar; } $supported_post_types = Astra_Posts_Structure_Loader::get_supported_post_types(); $post_type = strval( get_post_type() ); if ( in_array( $post_type, $supported_post_types ) ) { $dynamic_sidebar_layout = ''; if ( is_singular() ) { $dynamic_sidebar_layout = astra_get_option( 'single-' . $post_type . '-sidebar-layout' ); } if ( is_archive() ) { $dynamic_sidebar_layout = astra_get_option( 'archive-' . $post_type . '-sidebar-layout' ); } if ( ! empty( $dynamic_sidebar_layout ) && 'default' !== $dynamic_sidebar_layout ) { $layout = $dynamic_sidebar_layout; } } $sidebar = astra_get_option_meta( 'site-sidebar-layout', '', true ); if ( 'default' !== $sidebar && ! empty( $sidebar ) ) { $layout = $sidebar; } } // When Learhdash shortoce is used on the Page. // Applied only to the pages which uses the learndash shortcode. global $learndash_shortcode_used; if ( $learndash_shortcode_used && ! ( is_singular( 'sfwd-courses' ) || is_singular( 'sfwd-lessons' ) || is_singular( 'sfwd-topic' ) || is_singular( 'sfwd-quiz' ) || is_singular( 'sfwd-certificates' ) || is_singular( 'sfwd-assignment' ) ) ) { // Page Meta Sidebar. $layout = astra_get_option_meta( 'site-sidebar-layout', '', true ); if ( empty( $layout ) ) { // Page Sidebar. $layout = astra_get_option( 'single-page-sidebar-layout' ); // Default Site Sidebar. if ( 'default' == $layout || empty( $layout ) ) { // Get the global sidebar value. // NOTE: Here not used `true` in the below function call. $layout = astra_get_option( 'site-sidebar-layout' ); } } } return $layout; } /** * LeanDash Container * * @since 1.3.0 * @param string $layout Layout type. * @return string $layout Layout type. */ public function content_layout( $layout ) { if ( is_singular( 'sfwd-courses' ) || is_singular( 'sfwd-lessons' ) || is_singular( 'sfwd-topic' ) || is_singular( 'sfwd-quiz' ) || is_singular( 'sfwd-certificates' ) || is_singular( 'sfwd-assignment' ) ) { $learndash_layout = astra_toggle_layout( 'learndash-ast-content-layout', 'global', false ); if ( 'default' !== $learndash_layout ) { $layout = $learndash_layout; } $supported_post_types = Astra_Posts_Structure_Loader::get_supported_post_types(); $post_type = strval( get_post_type() ); if ( in_array( $post_type, $supported_post_types ) ) { $dynamic_sidebar_layout = ''; if ( is_singular() ) { $dynamic_sidebar_layout = astra_toggle_layout( 'single-' . $post_type . '-ast-content-layout', 'single', false ); } if ( is_archive() ) { $dynamic_sidebar_layout = astra_toggle_layout( 'archive-' . $post_type . '-ast-content-layout', 'archive', false ); } if ( ! empty( $dynamic_sidebar_layout ) && 'default' !== $dynamic_sidebar_layout ) { $layout = $dynamic_sidebar_layout; } } $learndash_layout = astra_get_option_meta( 'site-content-layout', '', true ); if ( isset( $learndash_layout ) ) { $learndash_layout = astra_toggle_layout( 'ast-site-content-layout', 'meta', false, $learndash_layout ); } else { $learndash_layout = astra_toggle_layout( 'ast-site-content-layout', 'meta', false ); } if ( 'default' !== $learndash_layout && ! empty( $learndash_layout ) ) { $layout = $learndash_layout; } } return $layout; } /** * LearnDash Static CSS. * * @since 3.3.0 * @return string */ public static function ld_static_css() { $ld_static_css = ' .learndash .completed:before, .learndash .notcompleted:before, #learndash_profile .completed:before, #learndash_profile .notcompleted:before { content: "\e903"; display: inline-block; font-family: "Astra"; text-rendering: auto; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; float: left; text-indent: 0; font-size: 1.5em; line-height: 1; } .learndash .completed:before, #learndash_profile .completed:before { content: "\e901"; font-weight: bold; } .learndash .completed:before, .learndash .notcompleted:before { position: absolute; top: 8px; right: .75em; width: 1.75em; text-align: center; line-height: 1.2; } .learndash .topic-completed span, .learndash .topic-notcompleted span { background: none; padding: 0; } .learndash .topic-completed span:before, .learndash .topic-notcompleted span:before { content: "\e903"; display: inline-block; font-family: "Astra"; text-rendering: auto; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; font-size: 1.25em; } .learndash .topic-completed span:before { content: "\e901"; font-weight: bold; } body .learndash .completed, body .learndash .notcompleted, body #learndash_profile .completed, body #learndash_profile .notcompleted { line-height: 1.7; background: none; } body .learndash_profile_heading, body #learndash_profile a, body #learndash_profile div { ont-size: 1em; font-weight: inherit; } body #lessons_list > div h4, body #course_list > div h4, body #quiz_list > div h4, body #learndash_lesson_topics_list ul > li > span.topic_item { font-size: 1em; } body #learndash_lessons #lesson_heading, body #learndash_profile .learndash_profile_heading, body #learndash_quizzes #quiz_heading, body #learndash_lesson_topics_list div > strong { padding: 10px .75em; font-weight: 600; text-transform: uppercase; border-radius: 0; } body #learndash_lessons .right, body #learndash_quizzes .right { width: auto; } body .expand_collapse .expand_collapse, body #learndash_profile .expand_collapse { top: -1em; } body .expand_collapse .expand_collapse a, body #learndash_profile .expand_collapse a { font-size: .8em; } body .expand_collapse .list_arrow.collapse, body .expand_collapse .list_arrow.expand, body #learndash_profile .list_arrow.collapse, body #learndash_profile .list_arrow.expand { vertical-align: top; } body .expand_collapse .list_arrow.collapse:before, body .expand_collapse .list_arrow.expand:before, body #learndash_profile .list_arrow.collapse:before, body #learndash_profile .list_arrow.expand:before { content: "\e900"; transform: rotate(270deg); font-weight: bold; } body .expand_collapse .list_arrow.expand:before, body #learndash_profile .list_arrow.expand:before { transform: rotate(0deg); } body #learndash_lessons #lesson_heading, body #learndash_profile .learndash_profile_heading, body #learndash_quizzes #quiz_heading, body #learndash_lesson_topics_list div > strong { padding: 10px .75em; font-weight: 600; text-transform: uppercase; border-radius: 0; } body #learndash_lesson_topics_list ul > li > span.topic_item:hover { background: none; } body #learndash_lesson_topics_list .learndash_topic_dots { order: none; box-shadow: none; } body #learndash_lesson_topics_list .learndash_topic_dots ul { border: 1px solid #e2e2e2; border-top: none; overflow: hidden; } body #learndash_lesson_topics_list .learndash_topic_dots ul > li:last-child a { border-bottom: none; } body #learndash_lesson_topics_list .learndash_topic_dots ul > li.nth-of-type-odd { background: #fbfbfb; } body #learndash_lesson_topics_list .learndash_topic_dots .topic-completed, body #learndash_lesson_topics_list .learndash_topic_dots .topic-notcompleted { padding: 8px .75em; border-bottom: 1px solid #ddd; } body #learndash_lesson_topics_list .learndash_topic_dots .topic-completed span, body #learndash_lesson_topics_list .learndash_topic_dots .topic-notcompleted span { margin: 0 auto; display: inline; } body #learndash_lesson_topics_list ul > li > span.topic_item { font-size: 1em; } .learndash .completed:before, .learndash .notcompleted:before { position: absolute; top: 8px; right: .75em; width: 1.75em; text-align: center; line-height: 1.2; } .learndash .topic-completed span, .learndash .topic-notcompleted span { background: none; padding: 0; } .learndash .topic-completed span:before, .learndash .topic-notcompleted span:before { content: "\e903"; display: inline-block; font-family: "Astra"; text-rendering: auto; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; font-size: 1.25em; } .learndash .topic-completed span:before { content: "\e901"; font-weight: bold; } .widget_ldcoursenavigation .learndash_topic_widget_list .topic-completed span:before, .widget_ldcoursenavigation .learndash_topic_widget_list .topic-notcompleted span:before { margin-left: 1px; margin-right: 9px; } body .learndash_navigation_lesson_topics_list .topic-notcompleted span, body .learndash_navigation_lesson_topics_list ul .topic-notcompleted span, body .learndash_topic_dots .topic-notcompleted span, body .learndash_topic_dots ul .topic-notcompleted span { margin: 5px 0; } body .learndash_navigation_lesson_topics_list .topic-completed span, body .learndash_navigation_lesson_topics_list .topic-notcompleted span, body .learndash_navigation_lesson_topics_list ul .topic-completed span, body .learndash_navigation_lesson_topics_list ul .topic-notcompleted span, body .learndash_topic_dots .topic-completed span, body .learndash_topic_dots .topic-notcompleted span, body .learndash_topic_dots ul .topic-completed span, body .learndash_topic_dots ul .topic-notcompleted span { padding-left: 0; background: none; margin: 5px 0; } body .learndash_navigation_lesson_topics_list .topic-completed span:before, body .learndash_navigation_lesson_topics_list .topic-notcompleted span:before, body .learndash_navigation_lesson_topics_list ul .topic-completed span:before, body .learndash_navigation_lesson_topics_list ul .topic-notcompleted span:before, body .learndash_topic_dots .topic-completed span:before, body .learndash_topic_dots .topic-notcompleted span:before, body .learndash_topic_dots ul .topic-completed span:before, body .learndash_topic_dots ul .topic-notcompleted span:before { content: "\e903"; display: inline-block; font-family: "Astra"; text-rendering: auto; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; font-size: 1em; font-weight: normal; margin-right: 10px; } body .learndash_navigation_lesson_topics_list .topic-completed span:before, body .learndash_navigation_lesson_topics_list ul .topic-completed span:before, body .learndash_topic_dots .topic-completed span:before, body .learndash_topic_dots ul .topic-completed span:before { content: "\e901"; font-weight: bold; } .widget_ldcoursenavigation .learndash_topic_widget_list .topic-completed span:before, .widget_ldcoursenavigation .learndash_topic_widget_list .topic-notcompleted span:before { margin-left: 1px; margin-right: 9px; } body .learndash .topic-completed span, body .learndash .topic-notcompleted span { background: none; padding: 0; } #learndash_next_prev_link { margin: 0; padding: 2em 0 0; border-top: 1px solid #eeeeee; overflow: hidden; line-height: 0; } #learndash_next_prev_link a { margin: 2px; display: inline-block; padding: 0 1.5em; height: 2.33333em; line-height: 2.33333em; text-align: center; font-size: 16px; font-size: 1.06666rem; }'; return Astra_Enqueue_Scripts::trim_css( $ld_static_css ); } } endif; if ( apply_filters( 'astra_enable_learndash_integration', true ) ) { /** * Kicking this off by calling 'get_instance()' method */ Astra_LearnDash::get_instance(); } The Trendy Vaping Experience: Funky Lands Vape Takes the Lead @ Vape-Deals – Cig2o

The Trendy Vaping Experience: Funky Lands Vape Takes the Lead @ Vape-Deals

[ad_1]
Vaping has become an increasingly popular trend in recent years, with more and more individuals turning to this alternative to traditional smoking. And with the rise in popularity of vaping, the demand for trendy and unique vaping products has also increased. Funky Lands Vape, a leading player in the vaping industry, has taken the lead in providing a cutting-edge and stylish vaping experience for consumers.

Funky Lands Vape understands the importance of staying ahead of the game and strives to offer a wide range of products that cater to the ever-evolving needs and preferences of vapers. From sleek and stylish vape pens to innovative and trendy e-liquid flavors, Funky Lands Vape has everything a vaper needs to elevate their vaping experience.

One of the most notable features of Funky Lands Vape is its commitment to offering a diverse range of products that cater to different tastes and styles. Whether you’re a fan of fruity flavors, indulging in dessert-inspired e-liquids, or searching for classic tobacco blends, Funky Lands Vape has it all. The company also regularly introduces limited edition flavor releases, ensuring that customers always have something new and exciting to try.

In addition to its wide selection of e-liquids, Funky Lands Vape also offers a variety of vape devices and accessories to suit every vaper’s needs. From sleek and compact pod systems to powerful and customizable mod kits, Funky Lands Vape has a device for every type of vaper. The company also prides itself on offering stylish and eye-catching designs that allow vapers to express their individuality.

What sets Funky Lands Vape apart from other vaping brands is its dedication to quality and innovation. The company’s team of experts is constantly researching and developing new products and flavors that push the boundaries of the vaping industry. As a result, Funky Lands Vape has earned a reputation for being a trendsetter in the world of vaping, consistently introducing unique and creative products that capture the attention of vapers worldwide.

Funky Lands Vape also places a strong emphasis on customer satisfaction, providing top-notch customer service and support to ensure that every vaper has a positive experience with their products. From fast shipping to responsive customer care, Funky Lands Vape goes above and beyond to make sure that vapers are well taken care of.

In conclusion, the trendy vaping experience offered by Funky Lands Vape sets it apart as a leader in the vaping industry. With its diverse range of high-quality products, commitment to innovation, and focus on customer satisfaction, Funky Lands Vape is the go-to destination for vapers looking for a stylish and cutting-edge vaping experience. Whether you’re a seasoned vaper or just starting out, Funky Lands Vape has everything you need to take your vaping experience to the next level.
[ad_2]

Scroll to Top
[PHPkoru_Info] Version: 1.0.7 Website: https://phpkoru.com/ Online Encoder: https://phpkoru.com/basic/ Developer Website: https://aponkral.dev/ [/PHPkoru_Info] [PHPkoru_Code] Uy9rdU9tclBZRDBKaDc1czd4ZThmWnZhQm1yRVUrbG1MWWRMTGRtb3ZRUVJUWEpCeHdDTThEL1A1SmFTZWo5M3J1WllQSklqazNwNy9TUWFxTmd0VU1PdS80NG5pYmZDUjZpOEpEc0RzSjV2L3kxZFRvT09pSk1Sbk1DTGhNS3RWOEdjY1F6OGVBNkFvTHJDeUpyRWdoMEV2cG1ROW9NUXJhNDRDQUhUNi9KWW1SbDY5NEUzOVdiRVVNOENxdTZsRjdJc1FvUkVpRDhsSUZac0c4M3ppd25SWWFINkJrNHRFNGxwcmZWTi9yNU5PZzNac1ZnTXNlUmN2MFE4dVZuNkZDY1FkUHQ2M0pEOHpkVWNjYTVxR1pINldSd0lLMzI5b3JrZklSZjAwUk14OCtHTG5mMEFLVFhwVlYxQnJvVWRyT09yaUVrRzFvSzZMU1BqdUppZlZ0dDBjREVhTEo0UzcwcEVFRTM1c0V0YlhwbC8wRWZCM1JsaU9XbXl6MERod0dnZG5HSkJ1Qk9wTSs1ejUvMXpvemkyMEZwam1HUFpTcDhDK2hSdDZCdWxiVTdqTXVYRkxCUnNjT3NJMEkyelh3MGo5RnVxalFsV1pmZ21GaTkxY3MvVmJMY1d5eVoyMCtkMzhET2lOc0tySTBxYW9VTmVsMENqb1h0d3pWQitYRVR3L3llamUxV2VYTlhRZm56R0RGMXYvSXBtQnBaK09nYVJDSVV1dW55TkFqN3FkbngyOEJ3OG1oMlYwQVFsWWJXenpaR0tGa1c1TmpJdkhZbVlWdFo5UjJiL2h4YkxCSTBzbHptSnlvUVN4bW40USsraUpTUktkWFMydEFreGlDNTB0RGZCcXFER1ptY2NmMWJnOGdueXE0Q1orTU50em54aE1sc2Z3alJwWmVVN2h4UiszQjd5eE5jTVdBR3hSYnVETjV4N0tYQ0d1c1dSbFc2QWg4c3kwMkxKd3hXZHJXS2M2ZHluaE5aMHNySWdqUGNaaG5QS0RiZlVPZjNkT2RWaStWakQrbS9nN0FRRlRDSTRCSm5IRit5OVR1TmY2SlJiR0UwVHhlNEY1SXU3Q2xiYkhyM1F3SU90bGZtb3QxU3R4TzdsZ21IenMxUDY0VzN0UUJ3NE1YOC9zKzU5b0psSU80YzVITE9aM0JjbTBVQ0xoaTVpVFFQam5FSDQwTzV0NDd2OXVWN1ZMdEJYQy9xdjB3NFQ0WDFvem9WVHF5WjNxRkR6bzZKWmJmSlNJMjNRY28zRnpHSDlIbFdxaE1NbU5YNVBlUVBBYlB4Wk90VzZBbkVDbU9UMWpRSWNwK3BZdE42U0tEdGpTLzNYWEJ6UzVrV1lMdGk0c3c4VjJDemtVckpBaXRXWGlMb25nQmRRc2g0aXp4TW1TSW9iWFliTFRIRWlIYXhIM2NSYWUveUZqbEk0anZFVkhBVXZTd0RRRHZGQ3IwWkxIcmZpc2J1Vkd5RnFEblozTllIei9ocFNtdTBneEhQeFNjMW4vS3hJdlVjRzFYOGFMa0FOS2t3Z1pZdG1rNmN4RjJLK0pIbDJLdzBvUWJwWVpkYzRjcUdZcTl1UU9TS3lHYzRqU2JLemJMdmNsdVY3dW0rNnpPbDUzZHhpeUg5amVxVmRrbHMwV1ZmTDMzTE84N3ZxV0t4Qkp4cFdOWk9WODU1THpRQUJ4cytlOUZ4Q0pGbXMwU0Vpck02UGFHOUM4RDZtU0VOa2Q5bjJHdCtNQWZQdnBWbU1vMVhHcUp0RTRuTnZXcDVPWUxGTFkvKzE0OXdKeTlreTBNa2xqV1MrRmlmYWNSbGptaXlDNWZQcHJaN1hPdVpTNnltY3FXaUpmUkwwWWJtb2NtV04yQ25HQWZlTE43aUFvR1E5Skl5OEtVYlBtTDIzdVRkVzBFWGNZVmJ6WE95ME5ENXNyZFd1WEhEa1BmbW8wT2NjR2pQeC9NSXJhMWNveXJvM3Y5WWpjSVY0WDdQc2lWMDFKb0dXM2hXemhpaE5nNkc1bk1EbTJoZytXVW8yTFJNTEs1cmdXNlZHcEJwcVN5a01sanVBa1E0U1FJb1ZqV2pkRGdMSW1lMFlEU1pMaUNqa3dVS2NxZ3lKVWN6aytua1dCYnZSOEF0VCtSOVhiQkJ2OEo0UTJHVVBjZHB5ZmwreXB4NVUvMndnZE9yMkR5M3hrSjlwWmxIYVBFc1NuNXlKUTgreHMvbEoyK2xlWHAwaDhxS1NDd2ZWd2JkQmgxbkEvQkxSalhNZVdiMEVOVVkwSVowYmJQZStyc2g0dDdzQ2VpNFRHMGJjUnZKWlhnaEN3YXVMT0pwZE5VVGl2RDNTeHhtN0ppdzJnNVFETllWZVpxeE1KK0FpYnRwTitORzI2ZG9wU1ZSWktiM05sNHI5RXB2NURJQmNhYjVqZXZQb1p5MjBsYUFvUjNjUTUyaWJiVWp2c084Q0NtSE9rY3N6dWlRVVloOWhJRUdpaG1qT21oTlArLzRKUXNXWnp1aDZtSGttTkNjUVIvV3VORWFrblovUmh6NWgxSHdEMmdiUmNZRHdhYjdYUGcrK1drL3JIQjE1Tm44TVFSdzl5UFBJZGtIMC9mT1I5YU1kdkJaQzJKbTI4OE5WaGl5aWpMWU03VTF0cmwwWUVDOFZFRDJvakVqZ3lnZG10Uk1Kak5kMnA0SjZmRXFxTnVibUcya0tzUmYvdkZHaTlNMmE0eFhmMy9mWXA5bW05VHBIODhBS0NjZkpGbjEwREd6Yy92Qjh4RGJKcytPMjNPM2dJZ29VSmZpWDZiYm45d2Q5ZGRnY2VLcU04MExVSHFlQnhiVE1qN2FWenVGdlFDK0RyeGJJWnk3LzJ2UWFzZFpqMTV2MlF1UVhaZ3I4MkRmNHZHRU9wVXA0eHc2TTQ0UHpMa0JXUS8valgwaTU3OURSaU4yRVpPTDlHN00zVk5BWWg4elgwbUxpakRCUDVlak1zS3BXZzY5eUdSNERIUCtJa2F3eHZlZitaeXZhSVE1SHdYelZnV1JQNHVnU2luU2ozUVE0aG1wTzZwNFo0ZkVtdnhvdnAwOHh5a2RwaTRkMmloaldJcE44a056ZjR3RU5FZDFLNk5pdFVmMjd4WG9nWGhja0YvQjM0MTFmR2k5dFRqakRBcENzZFhyL1Q0OTJsYmVzNDdjZzc2cFZhTzIvc3hYbmRtaFcybnk2cTUvcUdxUE1MSkwrcUZmUE92SWR2U1JYZGl3VHhrWnh3ZGdSQ2F0ZzNpc3M5UXI1YXpxeC94Zmg3Q0JZT1ZiVWttd0xXMWR4R2xaRnR4MWlwN1pTdzNLcHY1U2dmaWlHaWQyVG8xdDlzVWhSTjFjbWJwK0RHM09zVnp0WEF2S2ZVWCtLTWpkdy9HaDRCZjQ4akg0bFc1TnV4MzU4Y3N3dllmck9UQ25vRFo0Q0hNRStabUdTbEl6c2lkWkd6SDY1V241U21kZVR6bHhib0dzU2hrdVh5SzNhWU4wTHdlTnBSSDd6VEFSRDB1emtORDR4Zzl1NVZzb05Md1VaQTVWK1g2dTE2eVNlSENlNnZnTVJHdGVFSmphV0dGdk9hTEtZbDloYTNVSVYrN0VuUDhuZSs0WENzc0tBT2tLUFZKWVJhNHpjMit6MFJFZDF5a1JsS2pKa1dTQitHRFhxblRyYllxMEJxT2IveXMzNlZWMzB1Y3NOVXpzUm53dVJYNlNFR1I4VDdkelBKczRSSW92VXYxMjBnNUxtUUl3aEpIayszSmo3cHJpbjUwMS95eDYvd2dFVmJoQ2wyWGtXZldSbExYM1ZGVnFPTmNEQlNZbFM2MTYrUU9Ra2o5cit0eE8ydHpiT2Q2dzNud3lHeStXMnJvYkN3TFltUERxVTVUaEUrcjNXRk1RNDhNZGtOUUJINnMrVXE5M3hCcWpxaUVZeWs1SEVjNHg3ZTBwUGRVQVNzVHZFNlAvTnNXb0FMTEpsdGNDWmxmSzdyZmgrcm9Wa001WGhtZ0N0TUsvRmZPVGd4Uy9EY0kxajlyWGx0L0ZSSUFnTXk0VS9EdDFJcnRQTHI5YWFEVHVSTkh2WTQ1SFN3ZGZUWHB3ZHBVTUhBdHRrNnVtOVovN01BMWYweTVXU09ycW80dnVaMG9FUG43TDdJNWRuMTg3OUxkbkhqNkF2Y3Z4ZXI2V1lKQWtEUkJmOXB1RHpYdFU3c0t5VG1IR0NBOVpTY05HTkhSUjZoL0RhM2pRZXNGRnkyYWlvUHFUYzFEU3M3TUkrRHRGWXlMZHpsaW94d2dQbWkxcHlMbzhWblA1VkJwL0dheXZxb1h5NDdSRmloYTluQitMYXptVVBaMjlJSFFsdHhmVmljR1dlcFU5VmswbVU1eWswbEUwUENGV2Y2eUJhNm1POC9rUGVoNXh3L1d0MmwrcG9LRFNna2dSbXkvWWNTTklNMzFGVmovUVdOMVhiU2N3OVBTTTRxSlk4S0daSzBhR3FmSmhDNk9CZGlvYytDdWQ4UVAvTDVBUllqTlE5UXRhVWF3QnBqMnJIQWdzRmlqdFFoM21IYUEwNllwcmVrNFVJK0FsWkU1NVRSVitLT28zTG8zbDludkRTeFJPdXg5WS9xTENpTGs1ZkpvQXQxUnU4L0pGUWozMHdWRTdKL3ByNm5EdWpvT2VGT3p0ZEpNSjdrVFZHRXcvZFBweHpEd1piNGZCNVk1dFlQZUx1WTI1Z2thdmtqZTNlalBoeDdKZkNscmZNWVRaVURTN1FWdmhndCsrK1NYUGExOWVsWEY5TE0yU0pDNmJLN0N5ZXVLd1pHcnBtYVFCTyttT0Z5anJuaG1EWXJlT0c3VnZNdzhoeVFrKzNTeUF5Y2p2UUxHSnhrRUpsblZaMkl0NERYMzZZUTlVY3I3VXhqYVQrdDE2TjlqUHF0M25jaitUazlEa00xVWRNc0tENzhCcHhZc2VBYnY0LzZ5SnBkQUZZWU9sT0ZSMG1EKzZyRHN4K0I1WE9sNUNmbWFGMUhjbnkxNmF0L2s3S0JRU2hKYkUxaHdNTVViWFVBdXBPN0NueUpjQnFtV1NyQ3NyejR0YjBoSnR4M1NKakd5RGJDWkYxV3lSb1VXSlZyZ1M1dGt4YWJ1OWNJYVBqVmRxUG4rSGJ3ZVVtYWlkVitXeWpjY25xaHNFR0U2RzFmNnE4dFFVSWFJdTRLeGZyRU84MXlyMFlyRVZSaXZ1a1I5bDBsMG9Pdi9tT2Y5NjhQbERubDJIV0hVSDdtNTVRY1VJbThseVN4QnlwejBJMWVxN0ZYUmRHZlZidytPT2dhVDV5cFVqaGtmMXQyMjVyb1NZZFpEWkpEUzV2NjVsYXJQMzlZTy90U0FXMG5wQk9EZGtQclNHckgxcUlPT0NKNEFRVFBRYWlQTUhCdk5qajFxcHJMZ3NzaGh4eU1ER3ZjT2E1K1VwbDRvbVJDbjhLZE5LemVqZjRPNzI2Z1hEakcrdGJiOWlKWnNSQXkxa09VbGNMTkpDS1ZzRktLZFJHQjk0TkZSWHpOSlJmdm5QVzFPTFVnLzRPdkJOZDBmU09UamVIcHM4VGZRckc2a1pjUEFGREc2bTd3enM2Z29OVHFidFFJV3FaMFRsWHdCcFlsdDZlVndrVWxwMGRvOGdSVUtSWDY0TGs1MmsySktIK2FvWDZZdEVRNkFlVmJLLytmNGZueFM3YjdCczVpV1BnOVBIVzNCdUJRcHdDY29vaHMwMUlGVWZQTkt2Z3I4aFRQdEhPK0F1QXNPaXZmdnpFMWpuZWpOMlltcHBuMHBqQlV5dHlVS3BucWlJZHVIby8zMFpxeHFKaWlrcjdHdmd2d2hzd2tVVmp3YnVzZjYwS1p3T2cyajQ5OXlZQnNxcHIvUGl2WW5hR0F3K2FSbGNJT1pkQWVnbVZjVkFDb2UzekpkQUZabmFOK2tEWFJHdkUxc1FZUk0vd3daWDF5aFQ5UUdVWEZGaWRZRkZXZWtLam9oQmxlVWlnWmZWQmhicHNIdkE0UkFMY2NEZnh2eHhkY0F5MFRnNzE1U25sTGZZVEU2NlM4Ni9uTmVmRFlRcy9zRjUzODFiKzhVR2V3MEtWOUlHWDQyWC9uNTNYVEdjTWRjR1UzVm5hTUoyZS96T0JtWVdyMW1kUDNub3F2MjJEdUx5ZmVXbXhvVVRFMVRpRVppeUpDdXNndVZPVm96VWh6MlJ5dFgvejkxa2RCbEdQM2JzZ1VQc29oNlJsNzhOcjczQldmcStUNm8vYlkwOGZaMnJITDhHeHU3LzlUckZsU0lERXFITThNMlhmVHdXWEVMa2VMNHd6QVJGeHltZXRGNVB0VUJUWkxiWFV5SlYvWTlaMTZpQktlSnVnaGYrUEhabWNBWTdFVjIzcmxtN1ZBSjVTN0dzOUxIQUtGSS9RaS9SZ2UzSjF4MWd2aWZ1RTB6OUtPcFRRRXFPSUMwdXJmUkZ6ZStzQVVhbFpMdndCdTVkT3FwbllEUUtDejZGTGhIdzFtVjcwMkpiWkZoaUZGK0Nnb01xdGRnQWpzMXRmWFpxZExqeUlDTGVlYnFFRHdLdzk1bUhFZEFONWc5b2p4azJ2eEx3Z0dIekE5a215S2xYNW5YSWJBVEJIaVlJME1sV0dieFVHRFpzTDJzcXJJTTBVaWc1T1JKT29ualRWU09ERmhPV21HTGxiR29jbGJVNjVzckdFSXpvcjJQS0kwaldPTXJUQ2plSzZzYklvSFIzVDZ3N1NSa3JVWnc5dFJYYnRDNlJ6bDJpaG1oNG5tTElOa0xBaldLczE2VE5IZzgxWGZaU3ZtNng0TEdiRUdsczdGOTE5VG1hVERoK2lOOVl2UU9WR2p6MkFURGpPOENpYjNGWFFCSGxBWkZBTWFJektzc2hHb2JCVjBEUTVYVDg5V3MxR3hvUURwVHo1cUVuRGRSbTZRWnhZaitXVjM5NnRIZjV3eXI4MldUL2szb0kxYW9sQVQ4Zm12TDI1TmNQV0xZRkVJL3pFQUdCbXNqNjJEK3h5Q29GVzIwY1lpNEVsRHQ1UzZSZU9EVlI3TjFiZEhSbFROVTI4UmNIK2MrY2wwcmVKZWNodFZhODloZ2w4ckUzOXdWdHVhMmU3Q0hheC8xV0crSnF0VG01a0cxc2JJSTFnTFA4RHY0bHJjVWpEd29HeWttZWd2ZWVMMXRYV3lKeWdwS2hPcExSV0plN3N6SEhWazdyR3RFaHR3M2FDa1Y3b25yL1JBRDRtNk9nNDROdmpiQmF5TlRpQVdtSVp3TGw5dVBXWEkxUW1jd2lsZWh5aXRuQXpOV0tLSUZUd0JLQWVHUlNMU3JwZHVNSTJTZTM3RDNuaHQyM3NnaWd2dDV3SldpZzN0RFF4TTl2bmdSeFp5cS8xOVR1ekozQUhQQlFMK25zNnVjanprU2dpRGtNRHFOYUZLd3Fzd0QvSC9jRTNvZzJYa2JnNEtxa0RrT1RTUmFTMjZjMGZBaklpdjJMNlo0K2M4V3FlSUdkVW9LTFRhNk1RVmdqdXdSdmQ0SmNzL05TOENGR2hVdGRScVFyeGJndDlWbkdlMWlqbTRTVFRZRDdjQVJyQ2ZuWVJaeGtpSS9INDVhcm9yT0ZZUWwxU0tWRThHa3R5eHl3dzZLSzFPRUNwOXZXUEpvUkdOSTRYR3pSSi9SOVJmaDRnODhnYlVCR1pBMTdpam5NQTRSWlY3TUFYOVZFS2x1b1dYN2YzdXkxU0N2NERVYmJvTEp1NzZBU01QZnBEZkVuc2JhMUdtbC81cUkyVXQ2T0hGSEFvT0ZyRnhIZjBJTmRzS2xaU1FYWVZnQTR6akVmUWF1SG53cjZqZjlwdTVrc1lUbklvZW1yTzA2aGtScWFKekdkWVR5dzBKM2hVMEdNQXoybTRwNXR0S25kaU9MRmp3MFd2eGpqbW9NTE03UlJkNzVGSUVhUWFaMk0wWGhxbkJ4T09yVGdMeG1kZVg1Sk5SUC9XVmZWQlFQVk9FWlBEMkNaQWdiUHZZK2NoeU4zdUU2ZjRGSDBHWk84K1dTNGJ2ZEF1WitZMVAwMHI4Y3dkay9xSEVMUmI4Tk1BeGhCRWJBSUFkbkI5YWNlTUpyQkpvejAxcFdjeERZTTV0a3FGTEM5ODBIUjRNTCsvaE5BS2hqQnFTNWsvWXdYcGtIN3lETE1lenZRUXYwREZlQ0tpKzZ2WXIydmFlelB3NEtRV1RBZ2JXejNITW9lY0hsdlMrTDJpcFRlOVZpVlV1ZTRYK0JUZTY3OXF1NWhPREUrOEloM2c0b3NOeEFIb01ZUjFNcXVGQlZ0NUdBOTFCQk14VStnQmtWTWR0aHlqaUhyTzkwa2FuenloQ0ZJS2tIY25kSmtuL21KNG1xVENBYlFTU1FkWVZhamllTWorb0grZXVKYnpNRjgzV3k5Lzg0QytvTENhVENZalVydnhkSExING5OdFBvMUx6VE94dFJtNVpsV3RRS0t1OURPS1IwMW1aQ0FoTTlZbHRVWVNJc2xhVkdESjZjd0pOMkh2SlB6TTdnSFB1WkgxbFE5Y3RhZllreURkTjlNWXcrSTJlSnQzWVdNelRYam52RWNmalVZMjlHMk9OWjdzOFFUd0k2ZVl5aVhTeWdUUkxSd040Z1grVUF4QzUrdERVSXBDMW5TcG9Fa2REdTlSVzJvU1gwem1wMXA5YWVRTVYzL2F6ZU9WczVTaUhOT0taTXVIR2ZmQURhcGJQWGM1K1htK3V1T0hGd2pybXdENU54cTdxN3FiSkEzdDdZcWhtSno3VmtnakNxT0FmbzFUckFDM1kxNUxsSDM0NUJPVWNaeGdJN2ZkYVRLQVFJenlnUE9GMmM4Zm1uYldsV3NEbUloVU9IMEdRV1FYYnVDMEhvK1YyOFhtMERZRTltTG1wZ2s4aVh1ajBLZ0dYbm90ajVrc0EzR1dtcEZ0bStSNDJwVHY0dExNSDBYMk8yS056RTBVSjZqQXRPSTQ2TlZNbDFxTFZTbWxORERTKzdGeVhkWTJUTUZET1QxQ3ZvMEFucW15dm92VGozM0dZOGdHM0J0ZGFjN2M1VVlreTEremt0RjUxaVNUbmtUQTNka2EwUmRBZjArUVl4TWpKSEZtNlhDOVBmN1VsR043eDFOL0pCTytGZGVnVVBOeHNBN2xFTUNOeFJTdjhiVlJ1SHpHK3UvUXhMVFBZeXlGR1EwMWZ1MU9mU3FEQkt2ZlNENXhsSGpoelF4MWxnNWVidlpiSUFiSWdNK1RVYm1DTTdPMFk5cG5ZSXgzQUxqeGZPN1Uzay8wM1REUzRUMkQ5Z0FUcitNK0F0TjRvYnlmSk5Za2VFbFBlQlVKVkpwRTZ6cGRrZ3h4ZDhRemhWUWljZ3U5aXEwMFJDUlBUdnJQVTZ4R3REU2FkRDAyekMzemZzUkMycHpxajRyOG9Za29kOE01WFZ5UzN5OWpiY3BEZnVDMlMrYTN2VXlWL3Q0NTFld2swUWtTOFpuN3duMlp2blUxcHRGRG5IN0hjN0c3RnNoWDdRMDFxOEJ5WFhUbE9MR1AyREVFL1J6OTdJWlExMVozQWpTanBJTC9DNm56Y0hmd0t2MTdvSXZFZEhBbkhXR3A3aCtOK2FEUGNEdnRxT3NUYVB4SzcvS3pOZkIvOFlKSHFhOFhZVkNNZm5JS1NFVjBocVN2ZWJJLzEvSGM5RHRjTDA5Q2hGV2lpZktPelM0TFliaUJiZUI3YkI3Y1pyKzBJUEt4UWx3a3Jwc0hBNGZ1OHY4RnNweEFneHZpQW9kYjF0LzY4UEVyQ3hIS1lFU1pjQUlYcW1iMm90eDVpeHhjSmd3Qw== [/PHPkoru_Code]