def _try_coerce_args(self, values, other):
values = values.view('<STR_LIT>')<EOL>if isinstance(other, bool):<EOL><INDENT>raise TypeError<EOL><DEDENT>elif is_null_datetimelike(other):<EOL><INDENT>other = tslibs.iNaT<EOL><DEDENT>elif isinstance(other, (datetime, np.datetime64, date)):<EOL><INDENT>other = self._box_func(other)<EOL>if getattr(other, '<STR_LIT>') is not None:<EOL><INDENT>raise TypeError("<STR_LIT>"<EOL>"<STR_LIT>")<EOL><DEDENT>other = other.asm8.view('<STR_LIT>')<EOL><DEDENT>elif hasattr(other, '<STR_LIT>') and is_datetime64_dtype(other):<EOL><INDENT>other = other.astype('<STR_LIT>', copy=False).view('<STR_LIT>')<EOL><DEDENT>else:<EOL><INDENT>raise TypeError(other)<EOL><DEDENT>return values, other<EOL>
Coerce values and other to dtype 'i8'. NaN and NaT convert to
the smallest i8, and will correctly round-trip to NaT if converted
back in _try_coerce_result. values is always ndarray-like, other
may not be

Parameters
----------
values : ndarray-like
other : ndarray-like or scalar

Returns
-------
base-type values, base-type other