def _get_overlap_public_nat_methods(klass, as_tuple=False):
nat_names = dir(NaT)<EOL>klass_names = dir(klass)<EOL>overlap = [x for x in nat_names if x in klass_names and<EOL>not x.startswith("<STR_LIT:_>") and<EOL>callable(getattr(klass, x))]<EOL>if klass is Timedelta:<EOL><INDENT>ts_names = dir(Timestamp)<EOL>overlap = [x for x in overlap if x not in ts_names]<EOL><DEDENT>if as_tuple:<EOL><INDENT>overlap = [(klass, method) for method in overlap]<EOL><DEDENT>overlap.sort()<EOL>return overlap<EOL>
Get overlapping public methods between NaT and another class.

Parameters
----------
klass : type
    The class to compare with NaT
as_tuple : bool, default False
    Whether to return a list of tuples of the form (klass, method).

Returns
-------
overlap : list