| 'use strict'; | 
| var $ = require('../internals/export'); | 
| var log1p = require('../internals/math-log1p'); | 
|   | 
| // eslint-disable-next-line es/no-math-acosh -- required for testing | 
| var $acosh = Math.acosh; | 
| var log = Math.log; | 
| var sqrt = Math.sqrt; | 
| var LN2 = Math.LN2; | 
|   | 
| var FORCED = !$acosh | 
|   // V8 bug: https://code.google.com/p/v8/issues/detail?id=3509 | 
|   || Math.floor($acosh(Number.MAX_VALUE)) !== 710 | 
|   // Tor Browser bug: Math.acosh(Infinity) -> NaN | 
|   || $acosh(Infinity) !== Infinity; | 
|   | 
| // `Math.acosh` method | 
| // https://tc39.es/ecma262/#sec-math.acosh | 
| $({ target: 'Math', stat: true, forced: FORCED }, { | 
|   acosh: function acosh(x) { | 
|     var n = +x; | 
|     return n < 1 ? NaN : n > 94906265.62425156 | 
|       ? log(n) + LN2 | 
|       : log1p(n - 1 + sqrt(n - 1) * sqrt(n + 1)); | 
|   } | 
| }); |