                                  contentMode: PHImageContentMode = .aspectFit,
                                  completeBlock: @escaping (_ image: UIImage?, _ info: [AnyHashable: Any]?) -> Void) {
         if self.originalAsset != nil {
-            self.requestID = getImageDataManager().fetchImage(for: self, size: size, options: options, contentMode: contentMode, completeBlock: completeBlock)
+            self.add(requestID: getImageDataManager().fetchImage(for: self, size: size, options: options, contentMode: contentMode, completeBlock: completeBlock))
         } else {
             completeBlock(self.image, nil)
         }

     Fetch an AVAsset with a completeBlock and PHVideoRequestOptions.
     */
    @objc public func fetchAVAsset(options: PHVideoRequestOptions? = nil, completeBlock: @escaping (_ AVAsset: AVAsset?, _ info: [AnyHashable: Any]?) -> Void) {
        self.requestID = getImageDataManager().fetchAVAsset(for: self, options: options, completeBlock: completeBlock)
    }

    @objc public func cancelCurrentRequest() {
        if self.requestID != DKImageInvalidRequestID {
            getImageDataManager().cancelRequest(requestID: self.requestID)
            self.requestID = DKImageInvalidRequestID
        }
    }
    

     */
    @objc public func fetchImageData(options: PHImageRequestOptions? = nil, completeBlock: @escaping (_ imageData: Data?, _ info: [AnyHashable: Any]?) -> Void) {
        if self.originalAsset != nil {
            self.add(requestID: getImageDataManager().fetchImageData(for: self, options: options, completeBlock: completeBlock))
        } else {
            if let image = self.image {
                if self.hasAlphaChannel(image: image) {
