   }
   
   func updateCurrentList(list: IDFYOptionList) {
-    let fetchResult : [IDFYManagedOptionList] = fetchLastUsedManagedOptionList()
+    let fetchResult : [IDFYManagedOptionList] = fetchManagedOptionListWithName(getLastUsedListName()!)
     if 0 < fetchResult.count {
       let managedOptionList = fetchResult[0]
       managedOptionList.name = list.name

  
  
  // MARK: - Private methods
  
  private func fetchLastUsedManagedOptionList() -> [IDFYManagedOptionList] {
    if nil != getLastUsedListName() {
      return fetchManagedOptionListWithPredicate(NSPredicate(format: "name == '" + getLastUsedListName()! + "'"))
    } else {
      let managedOptionList : IDFYManagedOptionList = NSEntityDescription.insertNewObjectForEntityForName(managedOptionListEntityName, inManagedObjectContext:managedObjectContext!) as! IDFYManagedOptionList
      managedOptionList.name = ""
      managedOptionList.options = [String]()
      setLastUsedListName("")
      return [managedOptionList]
    }
  }
  
  private func fetchManagedOptionListWithName(listName: String) -> [IDFYManagedOptionList] {
    return fetchManagedOptionListWithPredicate(NSPredicate(format: "name == '" + listName + "'"))

  // MARK: - IDFYDataManagerInterface
  
  func getCurrentList() -> IDFYOptionList {
    
    if let lastUsedListName = getLastUsedListName() {
      let listOfLastUsedManagedOptionLists = fetchManagedOptionListWithName(lastUsedListName)
      if 0 < listOfLastUsedManagedOptionLists.count {
        let managedOptionList : IDFYManagedOptionList = listOfLastUsedManagedOptionLists[0]
        return IDFYOptionList(name: managedOptionList.name, options: managedOptionList.options)
      } else {
        // This case must not be possible. If it is, further investigation is needed.
        abort()
      }
    } else {
      let entityDescriptionForNewList = NSEntityDescription.entityForName(managedOptionListEntityName, inManagedObjectContext: managedObjectContext!)
      var managedOptionList = IDFYManagedOptionList(entity: entityDescriptionForNewList!, insertIntoManagedObjectContext: managedObjectContext)
      managedOptionList.name = ""
      managedOptionList.options = [String]()
      setLastUsedListName("")
