     /// - completionHandler: The optional callback that gets executed upon completion with a boolean param indicating if the operation has finished.
     public func seekToSeekableRangeEnd(padding: TimeInterval, completionHandler: ((Bool) -> Void)? = nil) {
         guard let range = currentItemSeekableRange,
-            let player = self.player else {
+            let player = player else {
                 completionHandler?(false)
                 return
         }

            let latest = currentItemSeekableRange?.latest else {
                //In case we don't have a valid `seekableRange`, although this *shouldn't* happen
                //let's just call `AVPlayer.seek(to:)` with given values.
                if let player = self.player {
                    player.seek(to: CMTime(timeInterval: time), toleranceBefore: toleranceBefore, toleranceAfter: toleranceAfter) { [weak self] finished in
                        completionHandler?(finished)
                        self?.updateNowPlayingInfoCenter()

    /// - completionHandler: The optional callback that gets executed upon completion with a boolean param indicating if the operation has finished.
    public func seekToSeekableRangeStart(padding: TimeInterval, completionHandler: ((Bool) -> Void)? = nil) {
        guard let range = currentItemSeekableRange,
            let player = player else {
                completionHandler?(false)
                return
        }
