"v4.1.6 Geetest Inc."; (function (window) { "use strict"; if (typeof window === "undefined") { throw new Error("Geetest requires browser environment"); } var document = window.document; var Math = window.Math; var head = document.getElementsByTagName("head")[0]; var TIMEOUT = 10000; function _Object(obj) { this._obj = obj; } _Object.prototype = { _each: function (process) { var _obj = this._obj; for (var k in _obj) { if (_obj.hasOwnProperty(k)) { process(k, _obj[k]); } } return this; }, _extend: function (obj) { var self = this; new _Object(obj)._each(function (key, value) { self._obj[key] = value; }); }, }; var uuid = function () { return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, function (c) { var r = (Math.random() * 16) | 0; var v = c === "x" ? r : (r & 0x3) | 0x8; return v.toString(16); }); }; function Config(config) { var self = this; new _Object(config)._each(function (key, value) { self[key] = value; }); } Config.prototype = { apiServers: ["gcaptcha4.geetest.com", "gcaptcha4.geevisit.com", "gcaptcha4.gsensebot.com"], staticServers: ["static.geetest.com", "static.geevisit.com", "dn-staticdown.qbox.me"], protocol: "http://", typePath: "/load", fallback_config: { bypass: { staticServers: ["static.geetest.com", "static.geevisit.com", "dn-staticdown.qbox.me"], type: "bypass", bypass: "/v4/bypass.js", }, }, _get_fallback_config: function () { var self = this; if (isString(self.type)) { return self.fallback_config[self.type]; } else { return self.fallback_config.bypass; } }, _extend: function (obj) { var self = this; new _Object(obj)._each(function (key, value) { self[key] = value; }); }, }; var isNumber = function (value) { return typeof value === "number"; }; var isString = function (value) { return typeof value === "string"; }; var isBoolean = function (value) { return typeof value === "boolean"; }; var isObject = function (value) { return typeof value === "object" && value !== null; }; var isFunction = function (value) { return typeof value === "function"; }; var MOBILE = /Mobi/i.test(navigator.userAgent); var callbacks = {}; var status = {}; var random = function () { return parseInt(Math.random() * 10000) + new Date().valueOf(); }; // bind 鍑芥暟polify, 涓嶅甫new鍔熻兘鐨刡ind var bind = function (target, context) { if (typeof target !== "function") { return; } var args = Array.prototype.slice.call(arguments, 2); if (Function.prototype.bind) { return target.bind(context, args); } else { return function () { var _args = Array.prototype.slice.call(arguments); return target.apply(context, args.concat(_args)); }; } }; var toString = Object.prototype.toString; var _isFunction = function (obj) { return typeof obj === "function"; }; var _isObject = function (obj) { return obj === Object(obj); }; var _isArray = function (obj) { return toString.call(obj) == "[object Array]"; }; var _isDate = function (obj) { return toString.call(obj) == "[object Date]"; }; var _isRegExp = function (obj) { return toString.call(obj) == "[object RegExp]"; }; var _isBoolean = function (obj) { return toString.call(obj) == "[object Boolean]"; }; function resolveKey(input) { return input.replace(/(\S)(_([a-zA-Z]))/g, function (match, $1, $2, $3) { return $1 + $3.toUpperCase() || ""; }); } function camelizeKeys(input, convert) { if ( !_isObject(input) || _isDate(input) || _isRegExp(input) || _isBoolean(input) || _isFunction(input) ) { return convert ? resolveKey(input) : input; } if (_isArray(input)) { var temp = []; for (var i = 0; i < inp