     }
 }
 
-open class Preference<T:NSSecureCoding> {
+open class Preference<T:Any> {
     
     public init() {
         

        return UserDefaults.standard
    }
    
    open func setPreference(_ object:NSSecureCoding?, key:String) {
        if let objectToSet:NSSecureCoding = object {
            self.userDefaults.set(objectToSet, forKey: key)
            self.userDefaults.synchronize()
        }

        }
    }
    
    open func preference(_ key:String) -> Any? {
        return self.userDefaults.object(forKey: key) as Any?
    }
    
    open func boolValue(_ key:String, defaultValue:Bool) -> Bool {
