@extends(pm.nodetypes.Shot)
    @property
    @contextmanager
    def include_handles(self):
        """includes the handle values to the shot range, primarily done for
        taking playblasts with handles
        """
        try:
            handle = self.handle.get()
        except AttributeError:
            # no handle is created probably the shot setup has not been done
            # correctly
            self.set_handle()
            handle = self.handle.get()

        track = self.track.get()
        self.startFrame.set(
            self.startFrame.get() - handle
        )
        self.endFrame.set(
            self.endFrame.get() + handle
        )
        self.sequenceStartFrame.set(
            self.sequenceStartFrame.get() - handle
        )
        try:
            yield None
        finally:
            self.startFrame.set(
                self.startFrame.get() + handle
            )
            self.endFrame.set(
                self.endFrame.get() - handle
            )
            self.sequenceStartFrame.set(
                self.sequenceStartFrame.get() + handle
            )
            self.track.set(track)
dataset/ETHPy150Open eoyilmaz/anima/anima/env/mayaEnv/extension.py/ShotExtension.include_handles/original