def _addsub_int_array(self, other, op):
<EOL>assert not is_period_dtype(self)<EOL>assert op in [operator.add, operator.sub]<EOL>if self.freq is None:<EOL><INDENT>raise NullFrequencyError("<STR_LIT>")<EOL><DEDENT>elif isinstance(self.freq, Tick):<EOL><INDENT>td = Timedelta(self.freq)<EOL>return op(self, td * other)<EOL><DEDENT>assert not is_timedelta64_dtype(self)<EOL>return op(self, np.array(other) * self.freq)<EOL>
Add or subtract array-like of integers equivalent to applying
`_time_shift` pointwise.

Parameters
----------
other : Index, ExtensionArray, np.ndarray
    integer-dtype
op : {operator.add, operator.sub}

Returns
-------
result : same class as self