code: def rollback(self, date):
          
          if self.onOffset(date):
              return date
          else:
              return date - QuarterEnd(month=self.month)
docs: Roll date backward to nearest end of quarter