/** * 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(); } Discover the Adventure of Free Online Live Roulette Gamings – Cig2o

Discover the Adventure of Free Online Live Roulette Gamings

Are you all set to embark on an amazing trip right into the world of on the internet roulette? If you have actually always been interested by the spinning wheel and the thrill of putting bets, after that cost-free online roulette video games are the excellent method to indulge your passion without investing a penny. In this article, we will certainly explore the ins and outs of complimentary online roulette video games, including where to play, just how to play, and why they are a superb choice for both novices and seasoned players.

What is Free Online Roulette?

Free online roulette is an online version of the timeless casino site video game. It offers all the excitement and gameplay of traditional live roulette, but without the need to wager actual money. Rather, gamers are given online chips to position their bets, enabling them to experience the adventure of the game without any monetary risk. Free on the internet roulette video games are readily available in numerous layouts, including European, American, and French live roulette, so you can choose the one that matches your choice.

Playing free online roulette is not only a terrific way to enjoy, but it additionally serves as an excellent method device. Whether you’re a newbie gamer that wishes to find out the essentials or a knowledgeable casino player wanting to refine your method, complimentary vulkan vegas online roulette games provide the ideal chance to refine your skills without any stress.

Now, let’s take a closer consider the advantages of playing free online roulette games:

  • No economic danger: Among one of the most significant advantages of playing cost-free online live roulette is that you don’t have to bother with losing real money. This permits you to explore different betting strategies and gain from your errors.
  • Accessibility: Free on the internet roulette games are readily available on different systems, consisting of desktop computer and smart phones. You can play whenever and anywhere you desire, as long as you have a web link.
  • Ease: Unlike land-based casino sites, where you may need to wait for a totally free table, free online roulette games are always within your reaches. There are no queues or wait times, allowing you to jump right into the action.
  • Discovering opportunity: Free on the internet live roulette games give a superb understanding possibility for newbies. You can familiarize yourself with the policies, chances, and different sorts of wagers without running the risk of any cash. This expertise can then be applied when betting real money.
  • Fun and amusement: Last but not least, complimentary online roulette games are simply a fun and entertaining method to waste time. The immersive graphics and practical sound results make you feel like you’re resting at a real live roulette table, including in the overall pleasure.

Where to Play Free Online Live Roulette?

Since you understand the benefits of playing complimentary online roulette video games, you’re possibly questioning where to find them. Fortunately, there are many trusted on-line casino sites and pc gaming sites that supply cost-free live roulette video games. These platforms supply a secure and safe atmosphere for players to appreciate their favored casino games with no economic threat.

When picking an online casino site or video gaming web site, it is essential to take into consideration elements such as the website’s credibility, customer evaluations, video game selection, and customer support. Seek platforms that are qualified and regulated by credible gambling authorities to ensure a fair and clear gaming experience. In addition, examine if the website provides a variety of totally free online live roulette video games to make sure that you can attempt various variants.

How to Play Free Online Roulette?

Playing totally free online roulette is extremely easy and requires no prior experience. Below’s a step-by-step overview to obtain you started:

  1. Choose a credible online gambling enterprise or pc gaming site that supplies complimentary live roulette video games.
  2. Produce an account by giving the needed information. This normally includes your name, email address, and age confirmation.
  3. Navigate to the roulette game section and select the variant you wish to play.
  4. As soon as the video game lots, you will certainly be offered online chips to place your wagers. Select the chip value and click the betting location to put your wager.
  5. After positioning your wagers, click the “Rotate” button to begin the wheel. The online croupier will certainly spin the wheel, and the round will certainly be launched in the contrary direction.
  6. If the round lands on a number or color that represents your bet, you win! The game will after that display your earnings, and you can pick to proceed playing or begin a new round.

Bear in mind that complimentary online live roulette games run making use of an arbitrary number generator (RNG), ensuring reasonable and objective end results. While you won’t be able to withdraw any type of jackpots from free games, the experience gained can be invaluable when betting genuine money.

Conclusion

Free online live roulette games are a great method to enjoy the excitement of the gambling kasyno vegas enterprise without any financial threat. With a variety of variations offered and the ease of playing from anywhere, these video games supply unlimited enjoyment and discovering possibilities. Whether you’re an amateur gamer aiming to learn the ropes or a skilled bettor wishing to check new methods, totally free online roulette games provide something for everyone. So why not offer it a spin and see where the wheel takes you?

Keep in mind, when playing any kind of gambling enterprise game, always wager responsibly and establish restrictions to guarantee your pc gaming experience stays enjoyable.

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]