   
   // MARK: Setters
   
-  public func set(_ value: Int, forKey key: String, accessibility: Accessibility = .default) throws {
+  public func set(_ value: Int, forKey key: String, accessibility: Accessibility? = nil) throws {
     try set(NSNumber(value: value), forKey: key, accessibility: accessibility)
   }
   
-  public func set(_ value: Float, forKey key: String, accessibility: Accessibility = .default) throws {
+  public func set(_ value: Float, forKey key: String, accessibility: Accessibility? = nil) throws {
     try set(NSNumber(value: value), forKey: key, accessibility: accessibility)
   }
   
-  public func set(_ value: Double, forKey key: String, accessibility: Accessibility = .default) throws {
+  public func set(_ value: Double, forKey key: String, accessibility: Accessibility? = nil) throws {
     try set(NSNumber(value: value), forKey: key, accessibility: accessibility)
   }
   
-  public func set(_ value: Bool, forKey key: String, accessibility: Accessibility = .default) throws {
+  public func set(_ value: Bool, forKey key: String, accessibility: Accessibility? = nil) throws {
     try set(NSNumber(value: value), forKey: key, accessibility: accessibility)
   }
   

     */
    @available(iOS 4, *)
    case whenUnlockedThisDeviceOnly
    
    
    public static var `default`: Accessibility { return .whenUnlocked }
    
    
    fileprivate var keychainAttrValue: CFString {

  /// Keychain Access Group this entry belongs to. This allows you to use the
  /// KeychainWrapper with shared keychain access between different applications.
  private let accessGroup: String?
  
  /// This is the accessibility that is used when setting or deleting a value if none is specified.
  private let defaultAccessibility: Accessibility
  
  
  // MARK: - Private Methods
