                 }
                 temp.append([k.name:key as AnyObject, k.list:list as AnyObject])
             }
-            UserDefaults.standard.set(temp, forKey: UserSettings.Playlists.keyPath)
+            UserDefaults.standard.set(temp, forKey: UserSettings.Playlists.default)
             UserDefaults.standard.synchronize()
             break
             
         case "h2w":
             let dict = NSDictionary.init()
-            dict.setValue(playlists, forKey: UserSettings.Playlists.keyPath)
-            dict.setValue(settings, forKey: UserSettings.PlayPrefs.keyPath)
+            dict.setValue(playlists, forKey: UserSettings.Playlists.default)
+            dict.setValue(settings, forKey: UserSettings.PlayPrefs.default)
             dict.write(to: url, atomically: true)
             break
             

            break

        case "h2w":
            let data = try Data.init(contentsOf: url)
            do {
                try! self.read(from: data, ofType: typeName)

        
        switch typeName {
        case "DocumentType":
            if let playArray = UserDefaults.standard.array(forKey: UserSettings.Playlists.default) {
                for playlist in playArray {
                    let play = playlist as! Dictionary<String,AnyObject>
                    let items = play[k.list] as! [Dictionary <String,AnyObject>]
                    var list : [PlayItem] = [PlayItem]()
                    for playitem in items {
                        let item = playitem as Dictionary <String,AnyObject>
                        let name = item[k.name] as! String
                        let path = item[k.link] as! String
                        let time = item[k.time] as? TimeInterval
                        let link = URL.init(string: path)
                        let rank = item[k.rank] as! Int
                        let temp = PlayItem(name:name, link:link!, time:time!, rank:rank)
                        list.append(temp)
                    }
                    let name = play[k.name] as? String
                    if let items = playlists[name!] {
                        for item in items as! [PlayItem] {
                            list.append(item)
                        }
                    }
                    playlists[name!] = list
                }
                break
            }
            
        case "h2w":
            if let dict = NSDictionary(contentsOf: url) {
                if let lists = dict.value(forKey: UserSettings.Playlists.default) {
                    playlists = lists as! Dictionary<String, Any>
                }
                if let setup = dict.value(forKey: UserSettings.PlayPrefs.default) {
                    settings = setup as! Settings
                }
                if let fileURL = dict.value(forKey: "fileURL") {
                    self.fileURL = URL.init(string: fileURL as! String)
                    self.fileType = self.fileURL?.pathExtension
                    break;
                }
            }
            
            //  Since we didn't have a fileURL use url given
            self.fileType = typeName
            self.fileURL = url
            break

        default:
            //  Record url and type, caller will load via notification
            do {
                self.fileURL = url
                self.fileType = url.pathExtension
                break
            }
        }
   }
    
    override func read(from url: URL, ofType typeName: String) throws {
        switch typeName {
        case "DocumentType":
            if let playArray = UserDefaults.standard.array(forKey: UserSettings.Playlists.default) {
                
                for playlist in playArray {
                    let play = playlist as! Dictionary<String,AnyObject>
