/**
  * parse theme config data
  * @return object
  */
 public static function parse_theme_config($config = '')
 {
     //static $theme_config;
     //if(!empty(self::$theme_config[$config])) return self::$theme_config[$config];
     if (!$config) {
         $config = self::get_config_file();
     }
     if (file_exists($config)) {
         if (!isset(self::$theme_config[$config])) {
             self::$theme_config[$config] = new self(null);
         }
         //because call the hook of after_setup_theme before do init hook we open all which to call this method
         //and after_setup_theme cause data load a half so data must tobe refresh, all i know about that
         if (1 || !HW_TGM_Module_Activation::is_complete_load() || empty(self::$theme_config[$config]->configuration)) {
             self::$theme_config[$config]->configuration = self::$theme_config[$config]->parse($config);
         }
     }
     return self::valid_theme_config(self::$theme_config[$config]->configuration) ? self::$theme_config[$config] : null;
 }