def asinh(x):
 np = import_module('numpy')
 if isinstance(x, (int, float)):
  return interval(np.arcsinh(x))
 elif isinstance(x, interval):
  start = np.arcsinh(x.start)
  end = np.arcsinh(x.end)
  return interval(start, end, is_valid=x.is_valid)
 else:
  return NotImplementedError

def asinh ( x ) : np = import_module ( 'numpy' ) if isinstance ( x , ( int , float ) ) : return interval ( np . arcsinh ( x ) ) elif isinstance ( x , interval ) : start = np . arcsinh ( x . start ) end = np . arcsinh ( x . end ) return interval ( start , end , is_valid = x . is_valid ) else : return NotImplementedError
evaluates the inverse hyperbolic sine of an interval .