     /// load theme dict in which objects are property list ready.
     func settingDictionary(name: String) -> ThemeDictionary? {
         
-        guard
-            let themeURL = self.urlForUsedSetting(name: name),
-            let themeDictionary = try? self.loadSettingDictionary(at: themeURL)
-            else { return nil }
-        
-        return themeDictionary
+        guard let themeURL = self.urlForUsedSetting(name: name) else { return nil }
+        
+        return try? self.loadSettingDictionary(at: themeURL)
     }
     
     

        super.init()
        
        // cache bundled theme names
        let themeURLs = Bundle.main.urls(forResourcesWithExtension: self.filePathExtension, subdirectory: self.directoryName) ?? []
        self.bundledThemeNames = themeURLs.lazy
            .filter { !$0.lastPathComponent.hasPrefix("_") }
            .map { self.settingName(from: $0) }
            .sorted { $0.localizedCaseInsensitiveCompare($1) == .orderedAscending }

    /// load theme names in user domain
    override func loadUserSettings() {
        
        // load user themes if exists
        let userThemeNames = self.userSettingFileURLs.map { self.settingName(from: $0) }
        
        self.themeNames = OrderedSet(self.bundledSettingNames + userThemeNames).array
        
        // reset user default if not found
        if !self.themeNames.contains(UserDefaults.standard[.theme]!) {
            UserDefaults.standard.restore(key: .theme)
        }
    }
    
