'(timedelta64, {int, float}) -> timedelta64
(timedelta64, timedelta64) -> float'

def generic(self, args, kws):

    (left, right) = args
    if (not isinstance(left, types.NPTimedelta)):
        return
    if isinstance(right, types.NPTimedelta):
        if (npdatetime.can_cast_timedelta_units(left.unit, right.unit) or npdatetime.can_cast_timedelta_units(right.unit, left.unit)):
            return signature(types.float64, left, right)
    elif isinstance(right, types.Float):
        return signature(left, left, right)
    elif isinstance(right, types.Integer):
        return signature(left, left, types.int64)
