Returns a new MayaDT object modified by the given instruction.

        Powered by snaptime.  See https://github.com/zartstrom/snaptime
        for a complete documentation about the snaptime instructions.

def snap(self, instruction):
        """
        Returns a new MayaDT object modified by the given instruction.

        Powered by snaptime.  See https://github.com/zartstrom/snaptime
        for a complete documentation about the snaptime instructions.
        """
        return self.from_datetime(snaptime.snap(self.datetime(), instruction))