         }
     }
 
+    /**
+     Before adding the CloudKitOperation instance to a queue, set a completion block
+     to collect the results in the successful case. Setting this completion block also
+     ensures that error handling gets triggered.
+
+     - parameter block: a CloudKitOperation<T>.FetchNotificationChangesCompletionBlock block
+     */
     public func setFetchNotificationChangesCompletionBlock(block: CloudKitOperation<T>.FetchNotificationChangesCompletionBlock) {
         addConfigureBlock { $0.setFetchNotificationChangesCompletionBlock(block) }
     }


extension CloudKitOperation where T: CKDesiredKeys {

    public var desiredKeys: [String]? {
        get { return operation.desiredKeys }
        set {

        }
    }

    /// - returns: a block for each record fetched
    public var recordFetchedBlock: QueryRecordFetchedBlock? {
        get { return operation.recordFetchedBlock }
        set {
