1'use strict';
2var $export = require('./_export');
3var $fails = require('./_fails');
4var aNumberValue = require('./_a-number-value');
5var $toPrecision = 1.0.toPrecision;
6
7$export($export.P + $export.F * ($fails(function () {
8  // IE7-
9  return $toPrecision.call(1, undefined) !== '1';
10}) || !$fails(function () {
11  // V8 ~ Android 4.3-
12  $toPrecision.call({});
13})), 'Number', {
14  toPrecision: function toPrecision(precision) {
15    var that = aNumberValue(this, 'Number#toPrecision: incorrect invocation!');
16    return precision === undefined ? $toPrecision.call(that) : $toPrecision.call(that, precision);
17  }
18});
19