public static function instance()
 {
     if (!isset(self::$instance) && !self::$instance instanceof MPCE_Cherry4) {
         self::$instance = new MPCE_Cherry4();
     }
     return self::$instance;
 }
 public function mpce_custom_cherry_shortcodes_library_extend($motopressCELibrary)
 {
     if (!class_exists('Cherry_Shortcodes_Data') || !class_exists('MPCE_Cherry4')) {
         return;
     }
     $shortcodes = Cherry_Shortcodes_Data::shortcodes();
     $grid_shortcodes = array('row', 'row_inner', 'col', 'col_inner');
     $prefix = CHERRY_SHORTCODES_PREFIX;
     foreach ($grid_shortcodes as $shortcode) {
         $mp_object =& $motopressCELibrary->getObject($prefix . $shortcode);
         foreach ($mp_object->parameters['bg_type']['list'] as $bg_type_key => $bg_type_label) {
             $mpce_cherry4 = MPCE_Cherry4::instance();
             $mp_object_new_parameters = $mpce_cherry4->cherry_attributes_to_parameters($this->get_bg_type($bg_type_key));
             foreach ($mp_object_new_parameters as $parameter_key => &$parameter_value) {
                 $parameter_value['dependency'] = array('parameter' => 'bg_type', 'value' => $bg_type_key);
             }
             $mp_object->parameters = array_merge($mp_object->parameters, $mp_object_new_parameters);
         }
     }
 }