{"version":3,"file":"app-BxZmawMg.js","sources":["../../../node_modules/axios/lib/helpers/bind.js","../../../node_modules/axios/lib/utils.js","../../../node_modules/axios/lib/core/AxiosError.js","../../../node_modules/axios/lib/helpers/null.js","../../../node_modules/axios/lib/helpers/toFormData.js","../../../node_modules/axios/lib/helpers/AxiosURLSearchParams.js","../../../node_modules/axios/lib/helpers/buildURL.js","../../../node_modules/axios/lib/core/InterceptorManager.js","../../../node_modules/axios/lib/defaults/transitional.js","../../../node_modules/axios/lib/platform/browser/classes/URLSearchParams.js","../../../node_modules/axios/lib/platform/browser/classes/FormData.js","../../../node_modules/axios/lib/platform/browser/classes/Blob.js","../../../node_modules/axios/lib/platform/browser/index.js","../../../node_modules/axios/lib/platform/common/utils.js","../../../node_modules/axios/lib/platform/index.js","../../../node_modules/axios/lib/helpers/toURLEncodedForm.js","../../../node_modules/axios/lib/helpers/formDataToJSON.js","../../../node_modules/axios/lib/defaults/index.js","../../../node_modules/axios/lib/helpers/parseHeaders.js","../../../node_modules/axios/lib/core/AxiosHeaders.js","../../../node_modules/axios/lib/core/transformData.js","../../../node_modules/axios/lib/cancel/isCancel.js","../../../node_modules/axios/lib/cancel/CanceledError.js","../../../node_modules/axios/lib/core/settle.js","../../../node_modules/axios/lib/helpers/parseProtocol.js","../../../node_modules/axios/lib/helpers/speedometer.js","../../../node_modules/axios/lib/helpers/throttle.js","../../../node_modules/axios/lib/helpers/progressEventReducer.js","../../../node_modules/axios/lib/helpers/isURLSameOrigin.js","../../../node_modules/axios/lib/helpers/cookies.js","../../../node_modules/axios/lib/helpers/isAbsoluteURL.js","../../../node_modules/axios/lib/helpers/combineURLs.js","../../../node_modules/axios/lib/core/buildFullPath.js","../../../node_modules/axios/lib/core/mergeConfig.js","../../../node_modules/axios/lib/helpers/resolveConfig.js","../../../node_modules/axios/lib/adapters/xhr.js","../../../node_modules/axios/lib/helpers/composeSignals.js","../../../node_modules/axios/lib/helpers/trackStream.js","../../../node_modules/axios/lib/adapters/fetch.js","../../../node_modules/axios/lib/adapters/adapters.js","../../../node_modules/axios/lib/core/dispatchRequest.js","../../../node_modules/axios/lib/env/data.js","../../../node_modules/axios/lib/helpers/validator.js","../../../node_modules/axios/lib/core/Axios.js","../../../node_modules/axios/lib/cancel/CancelToken.js","../../../node_modules/axios/lib/helpers/spread.js","../../../node_modules/axios/lib/helpers/isAxiosError.js","../../../node_modules/axios/lib/helpers/HttpStatusCode.js","../../../node_modules/axios/lib/axios.js","../../../resources/js/bootstrap.js","../../../node_modules/openchemlib/dist/openchemlib-full.js","../../../node_modules/openchemlib/lib/canvas_editor/clipboard_handler.js","../../../node_modules/openchemlib/lib/canvas_editor/utils.js","../../../node_modules/openchemlib/lib/canvas_editor/draw_context.js","../../../node_modules/openchemlib/lib/canvas_editor/editor_area.js","../../../node_modules/openchemlib/lib/canvas_editor/editor_stylesheet.js","../../../node_modules/openchemlib/lib/canvas_editor/events.js","../../../node_modules/openchemlib/lib/canvas_editor/toolbar.js","../../../node_modules/openchemlib/lib/canvas_editor/cursors_24px.js","../../../node_modules/openchemlib/lib/canvas_editor/cursor_manager_24.js","../../../node_modules/openchemlib/lib/canvas_editor/editor_dialog.js","../../../node_modules/openchemlib/lib/canvas_editor/editor_image.js","../../../node_modules/openchemlib/lib/canvas_editor/ui_helper.js","../../../node_modules/openchemlib/lib/canvas_editor/create_editor.js","../../../node_modules/openchemlib/lib/canvas_editor/init/canvas_editor.js","../../../node_modules/openchemlib/lib/canvas_editor/init/canvas_editor_element.js","../../../node_modules/openchemlib/lib/canvas_editor/init/index.js","../../../node_modules/openchemlib/full.js","../../../resources/js/app.js"],"sourcesContent":["'use strict';\n\nexport default function bind(fn, thisArg) {\n return function wrap() {\n return fn.apply(thisArg, arguments);\n };\n}\n","'use strict';\n\nimport bind from './helpers/bind.js';\n\n// utils is a library of generic helper functions non-specific to axios\n\nconst {toString} = Object.prototype;\nconst {getPrototypeOf} = Object;\n\nconst kindOf = (cache => thing => {\n const str = toString.call(thing);\n return cache[str] || (cache[str] = str.slice(8, -1).toLowerCase());\n})(Object.create(null));\n\nconst kindOfTest = (type) => {\n type = type.toLowerCase();\n return (thing) => kindOf(thing) === type\n}\n\nconst typeOfTest = type => thing => typeof thing === type;\n\n/**\n * Determine if a value is an Array\n *\n * @param {Object} val The value to test\n *\n * @returns {boolean} True if value is an Array, otherwise false\n */\nconst {isArray} = Array;\n\n/**\n * Determine if a value is undefined\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if the value is undefined, otherwise false\n */\nconst isUndefined = typeOfTest('undefined');\n\n/**\n * Determine if a value is a Buffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Buffer, otherwise false\n */\nfunction isBuffer(val) {\n return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor)\n && isFunction(val.constructor.isBuffer) && val.constructor.isBuffer(val);\n}\n\n/**\n * Determine if a value is an ArrayBuffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is an ArrayBuffer, otherwise false\n */\nconst isArrayBuffer = kindOfTest('ArrayBuffer');\n\n\n/**\n * Determine if a value is a view on an ArrayBuffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false\n */\nfunction isArrayBufferView(val) {\n let result;\n if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {\n result = ArrayBuffer.isView(val);\n } else {\n result = (val) && (val.buffer) && (isArrayBuffer(val.buffer));\n }\n return result;\n}\n\n/**\n * Determine if a value is a String\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a String, otherwise false\n */\nconst isString = typeOfTest('string');\n\n/**\n * Determine if a value is a Function\n *\n * @param {*} val The value to test\n * @returns {boolean} True if value is a Function, otherwise false\n */\nconst isFunction = typeOfTest('function');\n\n/**\n * Determine if a value is a Number\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Number, otherwise false\n */\nconst isNumber = typeOfTest('number');\n\n/**\n * Determine if a value is an Object\n *\n * @param {*} thing The value to test\n *\n * @returns {boolean} True if value is an Object, otherwise false\n */\nconst isObject = (thing) => thing !== null && typeof thing === 'object';\n\n/**\n * Determine if a value is a Boolean\n *\n * @param {*} thing The value to test\n * @returns {boolean} True if value is a Boolean, otherwise false\n */\nconst isBoolean = thing => thing === true || thing === false;\n\n/**\n * Determine if a value is a plain Object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a plain Object, otherwise false\n */\nconst isPlainObject = (val) => {\n if (kindOf(val) !== 'object') {\n return false;\n }\n\n const prototype = getPrototypeOf(val);\n return (prototype === null || prototype === Object.prototype || Object.getPrototypeOf(prototype) === null) && !(Symbol.toStringTag in val) && !(Symbol.iterator in val);\n}\n\n/**\n * Determine if a value is a Date\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Date, otherwise false\n */\nconst isDate = kindOfTest('Date');\n\n/**\n * Determine if a value is a File\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a File, otherwise false\n */\nconst isFile = kindOfTest('File');\n\n/**\n * Determine if a value is a Blob\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Blob, otherwise false\n */\nconst isBlob = kindOfTest('Blob');\n\n/**\n * Determine if a value is a FileList\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a File, otherwise false\n */\nconst isFileList = kindOfTest('FileList');\n\n/**\n * Determine if a value is a Stream\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Stream, otherwise false\n */\nconst isStream = (val) => isObject(val) && isFunction(val.pipe);\n\n/**\n * Determine if a value is a FormData\n *\n * @param {*} thing The value to test\n *\n * @returns {boolean} True if value is an FormData, otherwise false\n */\nconst isFormData = (thing) => {\n let kind;\n return thing && (\n (typeof FormData === 'function' && thing instanceof FormData) || (\n isFunction(thing.append) && (\n (kind = kindOf(thing)) === 'formdata' ||\n // detect form-data instance\n (kind === 'object' && isFunction(thing.toString) && thing.toString() === '[object FormData]')\n )\n )\n )\n}\n\n/**\n * Determine if a value is a URLSearchParams object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a URLSearchParams object, otherwise false\n */\nconst isURLSearchParams = kindOfTest('URLSearchParams');\n\nconst [isReadableStream, isRequest, isResponse, isHeaders] = ['ReadableStream', 'Request', 'Response', 'Headers'].map(kindOfTest);\n\n/**\n * Trim excess whitespace off the beginning and end of a string\n *\n * @param {String} str The String to trim\n *\n * @returns {String} The String freed of excess whitespace\n */\nconst trim = (str) => str.trim ?\n str.trim() : str.replace(/^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g, '');\n\n/**\n * Iterate over an Array or an Object invoking a function for each item.\n *\n * If `obj` is an Array callback will be called passing\n * the value, index, and complete array for each item.\n *\n * If 'obj' is an Object callback will be called passing\n * the value, key, and complete object for each property.\n *\n * @param {Object|Array} obj The object to iterate\n * @param {Function} fn The callback to invoke for each item\n *\n * @param {Boolean} [allOwnKeys = false]\n * @returns {any}\n */\nfunction forEach(obj, fn, {allOwnKeys = false} = {}) {\n // Don't bother if no value provided\n if (obj === null || typeof obj === 'undefined') {\n return;\n }\n\n let i;\n let l;\n\n // Force an array if not already something iterable\n if (typeof obj !== 'object') {\n /*eslint no-param-reassign:0*/\n obj = [obj];\n }\n\n if (isArray(obj)) {\n // Iterate over array values\n for (i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n // Iterate over object keys\n const keys = allOwnKeys ? Object.getOwnPropertyNames(obj) : Object.keys(obj);\n const len = keys.length;\n let key;\n\n for (i = 0; i < len; i++) {\n key = keys[i];\n fn.call(null, obj[key], key, obj);\n }\n }\n}\n\nfunction findKey(obj, key) {\n key = key.toLowerCase();\n const keys = Object.keys(obj);\n let i = keys.length;\n let _key;\n while (i-- > 0) {\n _key = keys[i];\n if (key === _key.toLowerCase()) {\n return _key;\n }\n }\n return null;\n}\n\nconst _global = (() => {\n /*eslint no-undef:0*/\n if (typeof globalThis !== \"undefined\") return globalThis;\n return typeof self !== \"undefined\" ? self : (typeof window !== 'undefined' ? window : global)\n})();\n\nconst isContextDefined = (context) => !isUndefined(context) && context !== _global;\n\n/**\n * Accepts varargs expecting each argument to be an object, then\n * immutably merges the properties of each object and returns result.\n *\n * When multiple objects contain the same key the later object in\n * the arguments list will take precedence.\n *\n * Example:\n *\n * ```js\n * var result = merge({foo: 123}, {foo: 456});\n * console.log(result.foo); // outputs 456\n * ```\n *\n * @param {Object} obj1 Object to merge\n *\n * @returns {Object} Result of all merge properties\n */\nfunction merge(/* obj1, obj2, obj3, ... */) {\n const {caseless} = isContextDefined(this) && this || {};\n const result = {};\n const assignValue = (val, key) => {\n const targetKey = caseless && findKey(result, key) || key;\n if (isPlainObject(result[targetKey]) && isPlainObject(val)) {\n result[targetKey] = merge(result[targetKey], val);\n } else if (isPlainObject(val)) {\n result[targetKey] = merge({}, val);\n } else if (isArray(val)) {\n result[targetKey] = val.slice();\n } else {\n result[targetKey] = val;\n }\n }\n\n for (let i = 0, l = arguments.length; i < l; i++) {\n arguments[i] && forEach(arguments[i], assignValue);\n }\n return result;\n}\n\n/**\n * Extends object a by mutably adding to it the properties of object b.\n *\n * @param {Object} a The object to be extended\n * @param {Object} b The object to copy properties from\n * @param {Object} thisArg The object to bind function to\n *\n * @param {Boolean} [allOwnKeys]\n * @returns {Object} The resulting value of object a\n */\nconst extend = (a, b, thisArg, {allOwnKeys}= {}) => {\n forEach(b, (val, key) => {\n if (thisArg && isFunction(val)) {\n a[key] = bind(val, thisArg);\n } else {\n a[key] = val;\n }\n }, {allOwnKeys});\n return a;\n}\n\n/**\n * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM)\n *\n * @param {string} content with BOM\n *\n * @returns {string} content value without BOM\n */\nconst stripBOM = (content) => {\n if (content.charCodeAt(0) === 0xFEFF) {\n content = content.slice(1);\n }\n return content;\n}\n\n/**\n * Inherit the prototype methods from one constructor into another\n * @param {function} constructor\n * @param {function} superConstructor\n * @param {object} [props]\n * @param {object} [descriptors]\n *\n * @returns {void}\n */\nconst inherits = (constructor, superConstructor, props, descriptors) => {\n constructor.prototype = Object.create(superConstructor.prototype, descriptors);\n constructor.prototype.constructor = constructor;\n Object.defineProperty(constructor, 'super', {\n value: superConstructor.prototype\n });\n props && Object.assign(constructor.prototype, props);\n}\n\n/**\n * Resolve object with deep prototype chain to a flat object\n * @param {Object} sourceObj source object\n * @param {Object} [destObj]\n * @param {Function|Boolean} [filter]\n * @param {Function} [propFilter]\n *\n * @returns {Object}\n */\nconst toFlatObject = (sourceObj, destObj, filter, propFilter) => {\n let props;\n let i;\n let prop;\n const merged = {};\n\n destObj = destObj || {};\n // eslint-disable-next-line no-eq-null,eqeqeq\n if (sourceObj == null) return destObj;\n\n do {\n props = Object.getOwnPropertyNames(sourceObj);\n i = props.length;\n while (i-- > 0) {\n prop = props[i];\n if ((!propFilter || propFilter(prop, sourceObj, destObj)) && !merged[prop]) {\n destObj[prop] = sourceObj[prop];\n merged[prop] = true;\n }\n }\n sourceObj = filter !== false && getPrototypeOf(sourceObj);\n } while (sourceObj && (!filter || filter(sourceObj, destObj)) && sourceObj !== Object.prototype);\n\n return destObj;\n}\n\n/**\n * Determines whether a string ends with the characters of a specified string\n *\n * @param {String} str\n * @param {String} searchString\n * @param {Number} [position= 0]\n *\n * @returns {boolean}\n */\nconst endsWith = (str, searchString, position) => {\n str = String(str);\n if (position === undefined || position > str.length) {\n position = str.length;\n }\n position -= searchString.length;\n const lastIndex = str.indexOf(searchString, position);\n return lastIndex !== -1 && lastIndex === position;\n}\n\n\n/**\n * Returns new array from array like object or null if failed\n *\n * @param {*} [thing]\n *\n * @returns {?Array}\n */\nconst toArray = (thing) => {\n if (!thing) return null;\n if (isArray(thing)) return thing;\n let i = thing.length;\n if (!isNumber(i)) return null;\n const arr = new Array(i);\n while (i-- > 0) {\n arr[i] = thing[i];\n }\n return arr;\n}\n\n/**\n * Checking if the Uint8Array exists and if it does, it returns a function that checks if the\n * thing passed in is an instance of Uint8Array\n *\n * @param {TypedArray}\n *\n * @returns {Array}\n */\n// eslint-disable-next-line func-names\nconst isTypedArray = (TypedArray => {\n // eslint-disable-next-line func-names\n return thing => {\n return TypedArray && thing instanceof TypedArray;\n };\n})(typeof Uint8Array !== 'undefined' && getPrototypeOf(Uint8Array));\n\n/**\n * For each entry in the object, call the function with the key and value.\n *\n * @param {Object} obj - The object to iterate over.\n * @param {Function} fn - The function to call for each entry.\n *\n * @returns {void}\n */\nconst forEachEntry = (obj, fn) => {\n const generator = obj && obj[Symbol.iterator];\n\n const iterator = generator.call(obj);\n\n let result;\n\n while ((result = iterator.next()) && !result.done) {\n const pair = result.value;\n fn.call(obj, pair[0], pair[1]);\n }\n}\n\n/**\n * It takes a regular expression and a string, and returns an array of all the matches\n *\n * @param {string} regExp - The regular expression to match against.\n * @param {string} str - The string to search.\n *\n * @returns {Array}\n */\nconst matchAll = (regExp, str) => {\n let matches;\n const arr = [];\n\n while ((matches = regExp.exec(str)) !== null) {\n arr.push(matches);\n }\n\n return arr;\n}\n\n/* Checking if the kindOfTest function returns true when passed an HTMLFormElement. */\nconst isHTMLForm = kindOfTest('HTMLFormElement');\n\nconst toCamelCase = str => {\n return str.toLowerCase().replace(/[-_\\s]([a-z\\d])(\\w*)/g,\n function replacer(m, p1, p2) {\n return p1.toUpperCase() + p2;\n }\n );\n};\n\n/* Creating a function that will check if an object has a property. */\nconst hasOwnProperty = (({hasOwnProperty}) => (obj, prop) => hasOwnProperty.call(obj, prop))(Object.prototype);\n\n/**\n * Determine if a value is a RegExp object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a RegExp object, otherwise false\n */\nconst isRegExp = kindOfTest('RegExp');\n\nconst reduceDescriptors = (obj, reducer) => {\n const descriptors = Object.getOwnPropertyDescriptors(obj);\n const reducedDescriptors = {};\n\n forEach(descriptors, (descriptor, name) => {\n let ret;\n if ((ret = reducer(descriptor, name, obj)) !== false) {\n reducedDescriptors[name] = ret || descriptor;\n }\n });\n\n Object.defineProperties(obj, reducedDescriptors);\n}\n\n/**\n * Makes all methods read-only\n * @param {Object} obj\n */\n\nconst freezeMethods = (obj) => {\n reduceDescriptors(obj, (descriptor, name) => {\n // skip restricted props in strict mode\n if (isFunction(obj) && ['arguments', 'caller', 'callee'].indexOf(name) !== -1) {\n return false;\n }\n\n const value = obj[name];\n\n if (!isFunction(value)) return;\n\n descriptor.enumerable = false;\n\n if ('writable' in descriptor) {\n descriptor.writable = false;\n return;\n }\n\n if (!descriptor.set) {\n descriptor.set = () => {\n throw Error('Can not rewrite read-only method \\'' + name + '\\'');\n };\n }\n });\n}\n\nconst toObjectSet = (arrayOrString, delimiter) => {\n const obj = {};\n\n const define = (arr) => {\n arr.forEach(value => {\n obj[value] = true;\n });\n }\n\n isArray(arrayOrString) ? define(arrayOrString) : define(String(arrayOrString).split(delimiter));\n\n return obj;\n}\n\nconst noop = () => {}\n\nconst toFiniteNumber = (value, defaultValue) => {\n return value != null && Number.isFinite(value = +value) ? value : defaultValue;\n}\n\nconst ALPHA = 'abcdefghijklmnopqrstuvwxyz'\n\nconst DIGIT = '0123456789';\n\nconst ALPHABET = {\n DIGIT,\n ALPHA,\n ALPHA_DIGIT: ALPHA + ALPHA.toUpperCase() + DIGIT\n}\n\nconst generateString = (size = 16, alphabet = ALPHABET.ALPHA_DIGIT) => {\n let str = '';\n const {length} = alphabet;\n while (size--) {\n str += alphabet[Math.random() * length|0]\n }\n\n return str;\n}\n\n/**\n * If the thing is a FormData object, return true, otherwise return false.\n *\n * @param {unknown} thing - The thing to check.\n *\n * @returns {boolean}\n */\nfunction isSpecCompliantForm(thing) {\n return !!(thing && isFunction(thing.append) && thing[Symbol.toStringTag] === 'FormData' && thing[Symbol.iterator]);\n}\n\nconst toJSONObject = (obj) => {\n const stack = new Array(10);\n\n const visit = (source, i) => {\n\n if (isObject(source)) {\n if (stack.indexOf(source) >= 0) {\n return;\n }\n\n if(!('toJSON' in source)) {\n stack[i] = source;\n const target = isArray(source) ? [] : {};\n\n forEach(source, (value, key) => {\n const reducedValue = visit(value, i + 1);\n !isUndefined(reducedValue) && (target[key] = reducedValue);\n });\n\n stack[i] = undefined;\n\n return target;\n }\n }\n\n return source;\n }\n\n return visit(obj, 0);\n}\n\nconst isAsyncFn = kindOfTest('AsyncFunction');\n\nconst isThenable = (thing) =>\n thing && (isObject(thing) || isFunction(thing)) && isFunction(thing.then) && isFunction(thing.catch);\n\n// original code\n// https://github.com/DigitalBrainJS/AxiosPromise/blob/16deab13710ec09779922131f3fa5954320f83ab/lib/utils.js#L11-L34\n\nconst _setImmediate = ((setImmediateSupported, postMessageSupported) => {\n if (setImmediateSupported) {\n return setImmediate;\n }\n\n return postMessageSupported ? ((token, callbacks) => {\n _global.addEventListener(\"message\", ({source, data}) => {\n if (source === _global && data === token) {\n callbacks.length && callbacks.shift()();\n }\n }, false);\n\n return (cb) => {\n callbacks.push(cb);\n _global.postMessage(token, \"*\");\n }\n })(`axios@${Math.random()}`, []) : (cb) => setTimeout(cb);\n})(\n typeof setImmediate === 'function',\n isFunction(_global.postMessage)\n);\n\nconst asap = typeof queueMicrotask !== 'undefined' ?\n queueMicrotask.bind(_global) : ( typeof process !== 'undefined' && process.nextTick || _setImmediate);\n\n// *********************\n\nexport default {\n isArray,\n isArrayBuffer,\n isBuffer,\n isFormData,\n isArrayBufferView,\n isString,\n isNumber,\n isBoolean,\n isObject,\n isPlainObject,\n isReadableStream,\n isRequest,\n isResponse,\n isHeaders,\n isUndefined,\n isDate,\n isFile,\n isBlob,\n isRegExp,\n isFunction,\n isStream,\n isURLSearchParams,\n isTypedArray,\n isFileList,\n forEach,\n merge,\n extend,\n trim,\n stripBOM,\n inherits,\n toFlatObject,\n kindOf,\n kindOfTest,\n endsWith,\n toArray,\n forEachEntry,\n matchAll,\n isHTMLForm,\n hasOwnProperty,\n hasOwnProp: hasOwnProperty, // an alias to avoid ESLint no-prototype-builtins detection\n reduceDescriptors,\n freezeMethods,\n toObjectSet,\n toCamelCase,\n noop,\n toFiniteNumber,\n findKey,\n global: _global,\n isContextDefined,\n ALPHABET,\n generateString,\n isSpecCompliantForm,\n toJSONObject,\n isAsyncFn,\n isThenable,\n setImmediate: _setImmediate,\n asap\n};\n","'use strict';\n\nimport utils from '../utils.js';\n\n/**\n * Create an Error with the specified message, config, error code, request and response.\n *\n * @param {string} message The error message.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [config] The config.\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n *\n * @returns {Error} The created error.\n */\nfunction AxiosError(message, code, config, request, response) {\n Error.call(this);\n\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, this.constructor);\n } else {\n this.stack = (new Error()).stack;\n }\n\n this.message = message;\n this.name = 'AxiosError';\n code && (this.code = code);\n config && (this.config = config);\n request && (this.request = request);\n if (response) {\n this.response = response;\n this.status = response.status ? response.status : null;\n }\n}\n\nutils.inherits(AxiosError, Error, {\n toJSON: function toJSON() {\n return {\n // Standard\n message: this.message,\n name: this.name,\n // Microsoft\n description: this.description,\n number: this.number,\n // Mozilla\n fileName: this.fileName,\n lineNumber: this.lineNumber,\n columnNumber: this.columnNumber,\n stack: this.stack,\n // Axios\n config: utils.toJSONObject(this.config),\n code: this.code,\n status: this.status\n };\n }\n});\n\nconst prototype = AxiosError.prototype;\nconst descriptors = {};\n\n[\n 'ERR_BAD_OPTION_VALUE',\n 'ERR_BAD_OPTION',\n 'ECONNABORTED',\n 'ETIMEDOUT',\n 'ERR_NETWORK',\n 'ERR_FR_TOO_MANY_REDIRECTS',\n 'ERR_DEPRECATED',\n 'ERR_BAD_RESPONSE',\n 'ERR_BAD_REQUEST',\n 'ERR_CANCELED',\n 'ERR_NOT_SUPPORT',\n 'ERR_INVALID_URL'\n// eslint-disable-next-line func-names\n].forEach(code => {\n descriptors[code] = {value: code};\n});\n\nObject.defineProperties(AxiosError, descriptors);\nObject.defineProperty(prototype, 'isAxiosError', {value: true});\n\n// eslint-disable-next-line func-names\nAxiosError.from = (error, code, config, request, response, customProps) => {\n const axiosError = Object.create(prototype);\n\n utils.toFlatObject(error, axiosError, function filter(obj) {\n return obj !== Error.prototype;\n }, prop => {\n return prop !== 'isAxiosError';\n });\n\n AxiosError.call(axiosError, error.message, code, config, request, response);\n\n axiosError.cause = error;\n\n axiosError.name = error.name;\n\n customProps && Object.assign(axiosError, customProps);\n\n return axiosError;\n};\n\nexport default AxiosError;\n","// eslint-disable-next-line strict\nexport default null;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosError from '../core/AxiosError.js';\n// temporary hotfix to avoid circular references until AxiosURLSearchParams is refactored\nimport PlatformFormData from '../platform/node/classes/FormData.js';\n\n/**\n * Determines if the given thing is a array or js object.\n *\n * @param {string} thing - The object or array to be visited.\n *\n * @returns {boolean}\n */\nfunction isVisitable(thing) {\n return utils.isPlainObject(thing) || utils.isArray(thing);\n}\n\n/**\n * It removes the brackets from the end of a string\n *\n * @param {string} key - The key of the parameter.\n *\n * @returns {string} the key without the brackets.\n */\nfunction removeBrackets(key) {\n return utils.endsWith(key, '[]') ? key.slice(0, -2) : key;\n}\n\n/**\n * It takes a path, a key, and a boolean, and returns a string\n *\n * @param {string} path - The path to the current key.\n * @param {string} key - The key of the current object being iterated over.\n * @param {string} dots - If true, the key will be rendered with dots instead of brackets.\n *\n * @returns {string} The path to the current key.\n */\nfunction renderKey(path, key, dots) {\n if (!path) return key;\n return path.concat(key).map(function each(token, i) {\n // eslint-disable-next-line no-param-reassign\n token = removeBrackets(token);\n return !dots && i ? '[' + token + ']' : token;\n }).join(dots ? '.' : '');\n}\n\n/**\n * If the array is an array and none of its elements are visitable, then it's a flat array.\n *\n * @param {Array} arr - The array to check\n *\n * @returns {boolean}\n */\nfunction isFlatArray(arr) {\n return utils.isArray(arr) && !arr.some(isVisitable);\n}\n\nconst predicates = utils.toFlatObject(utils, {}, null, function filter(prop) {\n return /^is[A-Z]/.test(prop);\n});\n\n/**\n * Convert a data object to FormData\n *\n * @param {Object} obj\n * @param {?Object} [formData]\n * @param {?Object} [options]\n * @param {Function} [options.visitor]\n * @param {Boolean} [options.metaTokens = true]\n * @param {Boolean} [options.dots = false]\n * @param {?Boolean} [options.indexes = false]\n *\n * @returns {Object}\n **/\n\n/**\n * It converts an object into a FormData object\n *\n * @param {Object} obj - The object to convert to form data.\n * @param {string} formData - The FormData object to append to.\n * @param {Object} options\n *\n * @returns\n */\nfunction toFormData(obj, formData, options) {\n if (!utils.isObject(obj)) {\n throw new TypeError('target must be an object');\n }\n\n // eslint-disable-next-line no-param-reassign\n formData = formData || new (PlatformFormData || FormData)();\n\n // eslint-disable-next-line no-param-reassign\n options = utils.toFlatObject(options, {\n metaTokens: true,\n dots: false,\n indexes: false\n }, false, function defined(option, source) {\n // eslint-disable-next-line no-eq-null,eqeqeq\n return !utils.isUndefined(source[option]);\n });\n\n const metaTokens = options.metaTokens;\n // eslint-disable-next-line no-use-before-define\n const visitor = options.visitor || defaultVisitor;\n const dots = options.dots;\n const indexes = options.indexes;\n const _Blob = options.Blob || typeof Blob !== 'undefined' && Blob;\n const useBlob = _Blob && utils.isSpecCompliantForm(formData);\n\n if (!utils.isFunction(visitor)) {\n throw new TypeError('visitor must be a function');\n }\n\n function convertValue(value) {\n if (value === null) return '';\n\n if (utils.isDate(value)) {\n return value.toISOString();\n }\n\n if (!useBlob && utils.isBlob(value)) {\n throw new AxiosError('Blob is not supported. Use a Buffer instead.');\n }\n\n if (utils.isArrayBuffer(value) || utils.isTypedArray(value)) {\n return useBlob && typeof Blob === 'function' ? new Blob([value]) : Buffer.from(value);\n }\n\n return value;\n }\n\n /**\n * Default visitor.\n *\n * @param {*} value\n * @param {String|Number} key\n * @param {Array} path\n * @this {FormData}\n *\n * @returns {boolean} return true to visit the each prop of the value recursively\n */\n function defaultVisitor(value, key, path) {\n let arr = value;\n\n if (value && !path && typeof value === 'object') {\n if (utils.endsWith(key, '{}')) {\n // eslint-disable-next-line no-param-reassign\n key = metaTokens ? key : key.slice(0, -2);\n // eslint-disable-next-line no-param-reassign\n value = JSON.stringify(value);\n } else if (\n (utils.isArray(value) && isFlatArray(value)) ||\n ((utils.isFileList(value) || utils.endsWith(key, '[]')) && (arr = utils.toArray(value))\n )) {\n // eslint-disable-next-line no-param-reassign\n key = removeBrackets(key);\n\n arr.forEach(function each(el, index) {\n !(utils.isUndefined(el) || el === null) && formData.append(\n // eslint-disable-next-line no-nested-ternary\n indexes === true ? renderKey([key], index, dots) : (indexes === null ? key : key + '[]'),\n convertValue(el)\n );\n });\n return false;\n }\n }\n\n if (isVisitable(value)) {\n return true;\n }\n\n formData.append(renderKey(path, key, dots), convertValue(value));\n\n return false;\n }\n\n const stack = [];\n\n const exposedHelpers = Object.assign(predicates, {\n defaultVisitor,\n convertValue,\n isVisitable\n });\n\n function build(value, path) {\n if (utils.isUndefined(value)) return;\n\n if (stack.indexOf(value) !== -1) {\n throw Error('Circular reference detected in ' + path.join('.'));\n }\n\n stack.push(value);\n\n utils.forEach(value, function each(el, key) {\n const result = !(utils.isUndefined(el) || el === null) && visitor.call(\n formData, el, utils.isString(key) ? key.trim() : key, path, exposedHelpers\n );\n\n if (result === true) {\n build(el, path ? path.concat(key) : [key]);\n }\n });\n\n stack.pop();\n }\n\n if (!utils.isObject(obj)) {\n throw new TypeError('data must be an object');\n }\n\n build(obj);\n\n return formData;\n}\n\nexport default toFormData;\n","'use strict';\n\nimport toFormData from './toFormData.js';\n\n/**\n * It encodes a string by replacing all characters that are not in the unreserved set with\n * their percent-encoded equivalents\n *\n * @param {string} str - The string to encode.\n *\n * @returns {string} The encoded string.\n */\nfunction encode(str) {\n const charMap = {\n '!': '%21',\n \"'\": '%27',\n '(': '%28',\n ')': '%29',\n '~': '%7E',\n '%20': '+',\n '%00': '\\x00'\n };\n return encodeURIComponent(str).replace(/[!'()~]|%20|%00/g, function replacer(match) {\n return charMap[match];\n });\n}\n\n/**\n * It takes a params object and converts it to a FormData object\n *\n * @param {Object} params - The parameters to be converted to a FormData object.\n * @param {Object} options - The options object passed to the Axios constructor.\n *\n * @returns {void}\n */\nfunction AxiosURLSearchParams(params, options) {\n this._pairs = [];\n\n params && toFormData(params, this, options);\n}\n\nconst prototype = AxiosURLSearchParams.prototype;\n\nprototype.append = function append(name, value) {\n this._pairs.push([name, value]);\n};\n\nprototype.toString = function toString(encoder) {\n const _encode = encoder ? function(value) {\n return encoder.call(this, value, encode);\n } : encode;\n\n return this._pairs.map(function each(pair) {\n return _encode(pair[0]) + '=' + _encode(pair[1]);\n }, '').join('&');\n};\n\nexport default AxiosURLSearchParams;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosURLSearchParams from '../helpers/AxiosURLSearchParams.js';\n\n/**\n * It replaces all instances of the characters `:`, `$`, `,`, `+`, `[`, and `]` with their\n * URI encoded counterparts\n *\n * @param {string} val The value to be encoded.\n *\n * @returns {string} The encoded value.\n */\nfunction encode(val) {\n return encodeURIComponent(val).\n replace(/%3A/gi, ':').\n replace(/%24/g, '$').\n replace(/%2C/gi, ',').\n replace(/%20/g, '+').\n replace(/%5B/gi, '[').\n replace(/%5D/gi, ']');\n}\n\n/**\n * Build a URL by appending params to the end\n *\n * @param {string} url The base of the url (e.g., http://www.google.com)\n * @param {object} [params] The params to be appended\n * @param {?(object|Function)} options\n *\n * @returns {string} The formatted url\n */\nexport default function buildURL(url, params, options) {\n /*eslint no-param-reassign:0*/\n if (!params) {\n return url;\n }\n \n const _encode = options && options.encode || encode;\n\n if (utils.isFunction(options)) {\n options = {\n serialize: options\n };\n } \n\n const serializeFn = options && options.serialize;\n\n let serializedParams;\n\n if (serializeFn) {\n serializedParams = serializeFn(params, options);\n } else {\n serializedParams = utils.isURLSearchParams(params) ?\n params.toString() :\n new AxiosURLSearchParams(params, options).toString(_encode);\n }\n\n if (serializedParams) {\n const hashmarkIndex = url.indexOf(\"#\");\n\n if (hashmarkIndex !== -1) {\n url = url.slice(0, hashmarkIndex);\n }\n url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;\n }\n\n return url;\n}\n","'use strict';\n\nimport utils from './../utils.js';\n\nclass InterceptorManager {\n constructor() {\n this.handlers = [];\n }\n\n /**\n * Add a new interceptor to the stack\n *\n * @param {Function} fulfilled The function to handle `then` for a `Promise`\n * @param {Function} rejected The function to handle `reject` for a `Promise`\n *\n * @return {Number} An ID used to remove interceptor later\n */\n use(fulfilled, rejected, options) {\n this.handlers.push({\n fulfilled,\n rejected,\n synchronous: options ? options.synchronous : false,\n runWhen: options ? options.runWhen : null\n });\n return this.handlers.length - 1;\n }\n\n /**\n * Remove an interceptor from the stack\n *\n * @param {Number} id The ID that was returned by `use`\n *\n * @returns {Boolean} `true` if the interceptor was removed, `false` otherwise\n */\n eject(id) {\n if (this.handlers[id]) {\n this.handlers[id] = null;\n }\n }\n\n /**\n * Clear all interceptors from the stack\n *\n * @returns {void}\n */\n clear() {\n if (this.handlers) {\n this.handlers = [];\n }\n }\n\n /**\n * Iterate over all the registered interceptors\n *\n * This method is particularly useful for skipping over any\n * interceptors that may have become `null` calling `eject`.\n *\n * @param {Function} fn The function to call for each interceptor\n *\n * @returns {void}\n */\n forEach(fn) {\n utils.forEach(this.handlers, function forEachHandler(h) {\n if (h !== null) {\n fn(h);\n }\n });\n }\n}\n\nexport default InterceptorManager;\n","'use strict';\n\nexport default {\n silentJSONParsing: true,\n forcedJSONParsing: true,\n clarifyTimeoutError: false\n};\n","'use strict';\n\nimport AxiosURLSearchParams from '../../../helpers/AxiosURLSearchParams.js';\nexport default typeof URLSearchParams !== 'undefined' ? URLSearchParams : AxiosURLSearchParams;\n","'use strict';\n\nexport default typeof FormData !== 'undefined' ? FormData : null;\n","'use strict'\n\nexport default typeof Blob !== 'undefined' ? Blob : null\n","import URLSearchParams from './classes/URLSearchParams.js'\nimport FormData from './classes/FormData.js'\nimport Blob from './classes/Blob.js'\n\nexport default {\n isBrowser: true,\n classes: {\n URLSearchParams,\n FormData,\n Blob\n },\n protocols: ['http', 'https', 'file', 'blob', 'url', 'data']\n};\n","const hasBrowserEnv = typeof window !== 'undefined' && typeof document !== 'undefined';\n\nconst _navigator = typeof navigator === 'object' && navigator || undefined;\n\n/**\n * Determine if we're running in a standard browser environment\n *\n * This allows axios to run in a web worker, and react-native.\n * Both environments support XMLHttpRequest, but not fully standard globals.\n *\n * web workers:\n * typeof window -> undefined\n * typeof document -> undefined\n *\n * react-native:\n * navigator.product -> 'ReactNative'\n * nativescript\n * navigator.product -> 'NativeScript' or 'NS'\n *\n * @returns {boolean}\n */\nconst hasStandardBrowserEnv = hasBrowserEnv &&\n (!_navigator || ['ReactNative', 'NativeScript', 'NS'].indexOf(_navigator.product) < 0);\n\n/**\n * Determine if we're running in a standard browser webWorker environment\n *\n * Although the `isStandardBrowserEnv` method indicates that\n * `allows axios to run in a web worker`, the WebWorker will still be\n * filtered out due to its judgment standard\n * `typeof window !== 'undefined' && typeof document !== 'undefined'`.\n * This leads to a problem when axios post `FormData` in webWorker\n */\nconst hasStandardBrowserWebWorkerEnv = (() => {\n return (\n typeof WorkerGlobalScope !== 'undefined' &&\n // eslint-disable-next-line no-undef\n self instanceof WorkerGlobalScope &&\n typeof self.importScripts === 'function'\n );\n})();\n\nconst origin = hasBrowserEnv && window.location.href || 'http://localhost';\n\nexport {\n hasBrowserEnv,\n hasStandardBrowserWebWorkerEnv,\n hasStandardBrowserEnv,\n _navigator as navigator,\n origin\n}\n","import platform from './node/index.js';\nimport * as utils from './common/utils.js';\n\nexport default {\n ...utils,\n ...platform\n}\n","'use strict';\n\nimport utils from '../utils.js';\nimport toFormData from './toFormData.js';\nimport platform from '../platform/index.js';\n\nexport default function toURLEncodedForm(data, options) {\n return toFormData(data, new platform.classes.URLSearchParams(), Object.assign({\n visitor: function(value, key, path, helpers) {\n if (platform.isNode && utils.isBuffer(value)) {\n this.append(key, value.toString('base64'));\n return false;\n }\n\n return helpers.defaultVisitor.apply(this, arguments);\n }\n }, options));\n}\n","'use strict';\n\nimport utils from '../utils.js';\n\n/**\n * It takes a string like `foo[x][y][z]` and returns an array like `['foo', 'x', 'y', 'z']\n *\n * @param {string} name - The name of the property to get.\n *\n * @returns An array of strings.\n */\nfunction parsePropPath(name) {\n // foo[x][y][z]\n // foo.x.y.z\n // foo-x-y-z\n // foo x y z\n return utils.matchAll(/\\w+|\\[(\\w*)]/g, name).map(match => {\n return match[0] === '[]' ? '' : match[1] || match[0];\n });\n}\n\n/**\n * Convert an array to an object.\n *\n * @param {Array} arr - The array to convert to an object.\n *\n * @returns An object with the same keys and values as the array.\n */\nfunction arrayToObject(arr) {\n const obj = {};\n const keys = Object.keys(arr);\n let i;\n const len = keys.length;\n let key;\n for (i = 0; i < len; i++) {\n key = keys[i];\n obj[key] = arr[key];\n }\n return obj;\n}\n\n/**\n * It takes a FormData object and returns a JavaScript object\n *\n * @param {string} formData The FormData object to convert to JSON.\n *\n * @returns {Object | null} The converted object.\n */\nfunction formDataToJSON(formData) {\n function buildPath(path, value, target, index) {\n let name = path[index++];\n\n if (name === '__proto__') return true;\n\n const isNumericKey = Number.isFinite(+name);\n const isLast = index >= path.length;\n name = !name && utils.isArray(target) ? target.length : name;\n\n if (isLast) {\n if (utils.hasOwnProp(target, name)) {\n target[name] = [target[name], value];\n } else {\n target[name] = value;\n }\n\n return !isNumericKey;\n }\n\n if (!target[name] || !utils.isObject(target[name])) {\n target[name] = [];\n }\n\n const result = buildPath(path, value, target[name], index);\n\n if (result && utils.isArray(target[name])) {\n target[name] = arrayToObject(target[name]);\n }\n\n return !isNumericKey;\n }\n\n if (utils.isFormData(formData) && utils.isFunction(formData.entries)) {\n const obj = {};\n\n utils.forEachEntry(formData, (name, value) => {\n buildPath(parsePropPath(name), value, obj, 0);\n });\n\n return obj;\n }\n\n return null;\n}\n\nexport default formDataToJSON;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosError from '../core/AxiosError.js';\nimport transitionalDefaults from './transitional.js';\nimport toFormData from '../helpers/toFormData.js';\nimport toURLEncodedForm from '../helpers/toURLEncodedForm.js';\nimport platform from '../platform/index.js';\nimport formDataToJSON from '../helpers/formDataToJSON.js';\n\n/**\n * It takes a string, tries to parse it, and if it fails, it returns the stringified version\n * of the input\n *\n * @param {any} rawValue - The value to be stringified.\n * @param {Function} parser - A function that parses a string into a JavaScript object.\n * @param {Function} encoder - A function that takes a value and returns a string.\n *\n * @returns {string} A stringified version of the rawValue.\n */\nfunction stringifySafely(rawValue, parser, encoder) {\n if (utils.isString(rawValue)) {\n try {\n (parser || JSON.parse)(rawValue);\n return utils.trim(rawValue);\n } catch (e) {\n if (e.name !== 'SyntaxError') {\n throw e;\n }\n }\n }\n\n return (encoder || JSON.stringify)(rawValue);\n}\n\nconst defaults = {\n\n transitional: transitionalDefaults,\n\n adapter: ['xhr', 'http', 'fetch'],\n\n transformRequest: [function transformRequest(data, headers) {\n const contentType = headers.getContentType() || '';\n const hasJSONContentType = contentType.indexOf('application/json') > -1;\n const isObjectPayload = utils.isObject(data);\n\n if (isObjectPayload && utils.isHTMLForm(data)) {\n data = new FormData(data);\n }\n\n const isFormData = utils.isFormData(data);\n\n if (isFormData) {\n return hasJSONContentType ? JSON.stringify(formDataToJSON(data)) : data;\n }\n\n if (utils.isArrayBuffer(data) ||\n utils.isBuffer(data) ||\n utils.isStream(data) ||\n utils.isFile(data) ||\n utils.isBlob(data) ||\n utils.isReadableStream(data)\n ) {\n return data;\n }\n if (utils.isArrayBufferView(data)) {\n return data.buffer;\n }\n if (utils.isURLSearchParams(data)) {\n headers.setContentType('application/x-www-form-urlencoded;charset=utf-8', false);\n return data.toString();\n }\n\n let isFileList;\n\n if (isObjectPayload) {\n if (contentType.indexOf('application/x-www-form-urlencoded') > -1) {\n return toURLEncodedForm(data, this.formSerializer).toString();\n }\n\n if ((isFileList = utils.isFileList(data)) || contentType.indexOf('multipart/form-data') > -1) {\n const _FormData = this.env && this.env.FormData;\n\n return toFormData(\n isFileList ? {'files[]': data} : data,\n _FormData && new _FormData(),\n this.formSerializer\n );\n }\n }\n\n if (isObjectPayload || hasJSONContentType ) {\n headers.setContentType('application/json', false);\n return stringifySafely(data);\n }\n\n return data;\n }],\n\n transformResponse: [function transformResponse(data) {\n const transitional = this.transitional || defaults.transitional;\n const forcedJSONParsing = transitional && transitional.forcedJSONParsing;\n const JSONRequested = this.responseType === 'json';\n\n if (utils.isResponse(data) || utils.isReadableStream(data)) {\n return data;\n }\n\n if (data && utils.isString(data) && ((forcedJSONParsing && !this.responseType) || JSONRequested)) {\n const silentJSONParsing = transitional && transitional.silentJSONParsing;\n const strictJSONParsing = !silentJSONParsing && JSONRequested;\n\n try {\n return JSON.parse(data);\n } catch (e) {\n if (strictJSONParsing) {\n if (e.name === 'SyntaxError') {\n throw AxiosError.from(e, AxiosError.ERR_BAD_RESPONSE, this, null, this.response);\n }\n throw e;\n }\n }\n }\n\n return data;\n }],\n\n /**\n * A timeout in milliseconds to abort a request. If set to 0 (default) a\n * timeout is not created.\n */\n timeout: 0,\n\n xsrfCookieName: 'XSRF-TOKEN',\n xsrfHeaderName: 'X-XSRF-TOKEN',\n\n maxContentLength: -1,\n maxBodyLength: -1,\n\n env: {\n FormData: platform.classes.FormData,\n Blob: platform.classes.Blob\n },\n\n validateStatus: function validateStatus(status) {\n return status >= 200 && status < 300;\n },\n\n headers: {\n common: {\n 'Accept': 'application/json, text/plain, */*',\n 'Content-Type': undefined\n }\n }\n};\n\nutils.forEach(['delete', 'get', 'head', 'post', 'put', 'patch'], (method) => {\n defaults.headers[method] = {};\n});\n\nexport default defaults;\n","'use strict';\n\nimport utils from './../utils.js';\n\n// RawAxiosHeaders whose duplicates are ignored by node\n// c.f. https://nodejs.org/api/http.html#http_message_headers\nconst ignoreDuplicateOf = utils.toObjectSet([\n 'age', 'authorization', 'content-length', 'content-type', 'etag',\n 'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since',\n 'last-modified', 'location', 'max-forwards', 'proxy-authorization',\n 'referer', 'retry-after', 'user-agent'\n]);\n\n/**\n * Parse headers into an object\n *\n * ```\n * Date: Wed, 27 Aug 2014 08:58:49 GMT\n * Content-Type: application/json\n * Connection: keep-alive\n * Transfer-Encoding: chunked\n * ```\n *\n * @param {String} rawHeaders Headers needing to be parsed\n *\n * @returns {Object} Headers parsed into an object\n */\nexport default rawHeaders => {\n const parsed = {};\n let key;\n let val;\n let i;\n\n rawHeaders && rawHeaders.split('\\n').forEach(function parser(line) {\n i = line.indexOf(':');\n key = line.substring(0, i).trim().toLowerCase();\n val = line.substring(i + 1).trim();\n\n if (!key || (parsed[key] && ignoreDuplicateOf[key])) {\n return;\n }\n\n if (key === 'set-cookie') {\n if (parsed[key]) {\n parsed[key].push(val);\n } else {\n parsed[key] = [val];\n }\n } else {\n parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;\n }\n });\n\n return parsed;\n};\n","'use strict';\n\nimport utils from '../utils.js';\nimport parseHeaders from '../helpers/parseHeaders.js';\n\nconst $internals = Symbol('internals');\n\nfunction normalizeHeader(header) {\n return header && String(header).trim().toLowerCase();\n}\n\nfunction normalizeValue(value) {\n if (value === false || value == null) {\n return value;\n }\n\n return utils.isArray(value) ? value.map(normalizeValue) : String(value);\n}\n\nfunction parseTokens(str) {\n const tokens = Object.create(null);\n const tokensRE = /([^\\s,;=]+)\\s*(?:=\\s*([^,;]+))?/g;\n let match;\n\n while ((match = tokensRE.exec(str))) {\n tokens[match[1]] = match[2];\n }\n\n return tokens;\n}\n\nconst isValidHeaderName = (str) => /^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(str.trim());\n\nfunction matchHeaderValue(context, value, header, filter, isHeaderNameFilter) {\n if (utils.isFunction(filter)) {\n return filter.call(this, value, header);\n }\n\n if (isHeaderNameFilter) {\n value = header;\n }\n\n if (!utils.isString(value)) return;\n\n if (utils.isString(filter)) {\n return value.indexOf(filter) !== -1;\n }\n\n if (utils.isRegExp(filter)) {\n return filter.test(value);\n }\n}\n\nfunction formatHeader(header) {\n return header.trim()\n .toLowerCase().replace(/([a-z\\d])(\\w*)/g, (w, char, str) => {\n return char.toUpperCase() + str;\n });\n}\n\nfunction buildAccessors(obj, header) {\n const accessorName = utils.toCamelCase(' ' + header);\n\n ['get', 'set', 'has'].forEach(methodName => {\n Object.defineProperty(obj, methodName + accessorName, {\n value: function(arg1, arg2, arg3) {\n return this[methodName].call(this, header, arg1, arg2, arg3);\n },\n configurable: true\n });\n });\n}\n\nclass AxiosHeaders {\n constructor(headers) {\n headers && this.set(headers);\n }\n\n set(header, valueOrRewrite, rewrite) {\n const self = this;\n\n function setHeader(_value, _header, _rewrite) {\n const lHeader = normalizeHeader(_header);\n\n if (!lHeader) {\n throw new Error('header name must be a non-empty string');\n }\n\n const key = utils.findKey(self, lHeader);\n\n if(!key || self[key] === undefined || _rewrite === true || (_rewrite === undefined && self[key] !== false)) {\n self[key || _header] = normalizeValue(_value);\n }\n }\n\n const setHeaders = (headers, _rewrite) =>\n utils.forEach(headers, (_value, _header) => setHeader(_value, _header, _rewrite));\n\n if (utils.isPlainObject(header) || header instanceof this.constructor) {\n setHeaders(header, valueOrRewrite)\n } else if(utils.isString(header) && (header = header.trim()) && !isValidHeaderName(header)) {\n setHeaders(parseHeaders(header), valueOrRewrite);\n } else if (utils.isHeaders(header)) {\n for (const [key, value] of header.entries()) {\n setHeader(value, key, rewrite);\n }\n } else {\n header != null && setHeader(valueOrRewrite, header, rewrite);\n }\n\n return this;\n }\n\n get(header, parser) {\n header = normalizeHeader(header);\n\n if (header) {\n const key = utils.findKey(this, header);\n\n if (key) {\n const value = this[key];\n\n if (!parser) {\n return value;\n }\n\n if (parser === true) {\n return parseTokens(value);\n }\n\n if (utils.isFunction(parser)) {\n return parser.call(this, value, key);\n }\n\n if (utils.isRegExp(parser)) {\n return parser.exec(value);\n }\n\n throw new TypeError('parser must be boolean|regexp|function');\n }\n }\n }\n\n has(header, matcher) {\n header = normalizeHeader(header);\n\n if (header) {\n const key = utils.findKey(this, header);\n\n return !!(key && this[key] !== undefined && (!matcher || matchHeaderValue(this, this[key], key, matcher)));\n }\n\n return false;\n }\n\n delete(header, matcher) {\n const self = this;\n let deleted = false;\n\n function deleteHeader(_header) {\n _header = normalizeHeader(_header);\n\n if (_header) {\n const key = utils.findKey(self, _header);\n\n if (key && (!matcher || matchHeaderValue(self, self[key], key, matcher))) {\n delete self[key];\n\n deleted = true;\n }\n }\n }\n\n if (utils.isArray(header)) {\n header.forEach(deleteHeader);\n } else {\n deleteHeader(header);\n }\n\n return deleted;\n }\n\n clear(matcher) {\n const keys = Object.keys(this);\n let i = keys.length;\n let deleted = false;\n\n while (i--) {\n const key = keys[i];\n if(!matcher || matchHeaderValue(this, this[key], key, matcher, true)) {\n delete this[key];\n deleted = true;\n }\n }\n\n return deleted;\n }\n\n normalize(format) {\n const self = this;\n const headers = {};\n\n utils.forEach(this, (value, header) => {\n const key = utils.findKey(headers, header);\n\n if (key) {\n self[key] = normalizeValue(value);\n delete self[header];\n return;\n }\n\n const normalized = format ? formatHeader(header) : String(header).trim();\n\n if (normalized !== header) {\n delete self[header];\n }\n\n self[normalized] = normalizeValue(value);\n\n headers[normalized] = true;\n });\n\n return this;\n }\n\n concat(...targets) {\n return this.constructor.concat(this, ...targets);\n }\n\n toJSON(asStrings) {\n const obj = Object.create(null);\n\n utils.forEach(this, (value, header) => {\n value != null && value !== false && (obj[header] = asStrings && utils.isArray(value) ? value.join(', ') : value);\n });\n\n return obj;\n }\n\n [Symbol.iterator]() {\n return Object.entries(this.toJSON())[Symbol.iterator]();\n }\n\n toString() {\n return Object.entries(this.toJSON()).map(([header, value]) => header + ': ' + value).join('\\n');\n }\n\n get [Symbol.toStringTag]() {\n return 'AxiosHeaders';\n }\n\n static from(thing) {\n return thing instanceof this ? thing : new this(thing);\n }\n\n static concat(first, ...targets) {\n const computed = new this(first);\n\n targets.forEach((target) => computed.set(target));\n\n return computed;\n }\n\n static accessor(header) {\n const internals = this[$internals] = (this[$internals] = {\n accessors: {}\n });\n\n const accessors = internals.accessors;\n const prototype = this.prototype;\n\n function defineAccessor(_header) {\n const lHeader = normalizeHeader(_header);\n\n if (!accessors[lHeader]) {\n buildAccessors(prototype, _header);\n accessors[lHeader] = true;\n }\n }\n\n utils.isArray(header) ? header.forEach(defineAccessor) : defineAccessor(header);\n\n return this;\n }\n}\n\nAxiosHeaders.accessor(['Content-Type', 'Content-Length', 'Accept', 'Accept-Encoding', 'User-Agent', 'Authorization']);\n\n// reserved names hotfix\nutils.reduceDescriptors(AxiosHeaders.prototype, ({value}, key) => {\n let mapped = key[0].toUpperCase() + key.slice(1); // map `set` => `Set`\n return {\n get: () => value,\n set(headerValue) {\n this[mapped] = headerValue;\n }\n }\n});\n\nutils.freezeMethods(AxiosHeaders);\n\nexport default AxiosHeaders;\n","'use strict';\n\nimport utils from './../utils.js';\nimport defaults from '../defaults/index.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\n\n/**\n * Transform the data for a request or a response\n *\n * @param {Array|Function} fns A single function or Array of functions\n * @param {?Object} response The response object\n *\n * @returns {*} The resulting transformed data\n */\nexport default function transformData(fns, response) {\n const config = this || defaults;\n const context = response || config;\n const headers = AxiosHeaders.from(context.headers);\n let data = context.data;\n\n utils.forEach(fns, function transform(fn) {\n data = fn.call(config, data, headers.normalize(), response ? response.status : undefined);\n });\n\n headers.normalize();\n\n return data;\n}\n","'use strict';\n\nexport default function isCancel(value) {\n return !!(value && value.__CANCEL__);\n}\n","'use strict';\n\nimport AxiosError from '../core/AxiosError.js';\nimport utils from '../utils.js';\n\n/**\n * A `CanceledError` is an object that is thrown when an operation is canceled.\n *\n * @param {string=} message The message.\n * @param {Object=} config The config.\n * @param {Object=} request The request.\n *\n * @returns {CanceledError} The created error.\n */\nfunction CanceledError(message, config, request) {\n // eslint-disable-next-line no-eq-null,eqeqeq\n AxiosError.call(this, message == null ? 'canceled' : message, AxiosError.ERR_CANCELED, config, request);\n this.name = 'CanceledError';\n}\n\nutils.inherits(CanceledError, AxiosError, {\n __CANCEL__: true\n});\n\nexport default CanceledError;\n","'use strict';\n\nimport AxiosError from './AxiosError.js';\n\n/**\n * Resolve or reject a Promise based on response status.\n *\n * @param {Function} resolve A function that resolves the promise.\n * @param {Function} reject A function that rejects the promise.\n * @param {object} response The response.\n *\n * @returns {object} The response.\n */\nexport default function settle(resolve, reject, response) {\n const validateStatus = response.config.validateStatus;\n if (!response.status || !validateStatus || validateStatus(response.status)) {\n resolve(response);\n } else {\n reject(new AxiosError(\n 'Request failed with status code ' + response.status,\n [AxiosError.ERR_BAD_REQUEST, AxiosError.ERR_BAD_RESPONSE][Math.floor(response.status / 100) - 4],\n response.config,\n response.request,\n response\n ));\n }\n}\n","'use strict';\n\nexport default function parseProtocol(url) {\n const match = /^([-+\\w]{1,25})(:?\\/\\/|:)/.exec(url);\n return match && match[1] || '';\n}\n","'use strict';\n\n/**\n * Calculate data maxRate\n * @param {Number} [samplesCount= 10]\n * @param {Number} [min= 1000]\n * @returns {Function}\n */\nfunction speedometer(samplesCount, min) {\n samplesCount = samplesCount || 10;\n const bytes = new Array(samplesCount);\n const timestamps = new Array(samplesCount);\n let head = 0;\n let tail = 0;\n let firstSampleTS;\n\n min = min !== undefined ? min : 1000;\n\n return function push(chunkLength) {\n const now = Date.now();\n\n const startedAt = timestamps[tail];\n\n if (!firstSampleTS) {\n firstSampleTS = now;\n }\n\n bytes[head] = chunkLength;\n timestamps[head] = now;\n\n let i = tail;\n let bytesCount = 0;\n\n while (i !== head) {\n bytesCount += bytes[i++];\n i = i % samplesCount;\n }\n\n head = (head + 1) % samplesCount;\n\n if (head === tail) {\n tail = (tail + 1) % samplesCount;\n }\n\n if (now - firstSampleTS < min) {\n return;\n }\n\n const passed = startedAt && now - startedAt;\n\n return passed ? Math.round(bytesCount * 1000 / passed) : undefined;\n };\n}\n\nexport default speedometer;\n","/**\n * Throttle decorator\n * @param {Function} fn\n * @param {Number} freq\n * @return {Function}\n */\nfunction throttle(fn, freq) {\n let timestamp = 0;\n let threshold = 1000 / freq;\n let lastArgs;\n let timer;\n\n const invoke = (args, now = Date.now()) => {\n timestamp = now;\n lastArgs = null;\n if (timer) {\n clearTimeout(timer);\n timer = null;\n }\n fn.apply(null, args);\n }\n\n const throttled = (...args) => {\n const now = Date.now();\n const passed = now - timestamp;\n if ( passed >= threshold) {\n invoke(args, now);\n } else {\n lastArgs = args;\n if (!timer) {\n timer = setTimeout(() => {\n timer = null;\n invoke(lastArgs)\n }, threshold - passed);\n }\n }\n }\n\n const flush = () => lastArgs && invoke(lastArgs);\n\n return [throttled, flush];\n}\n\nexport default throttle;\n","import speedometer from \"./speedometer.js\";\nimport throttle from \"./throttle.js\";\nimport utils from \"../utils.js\";\n\nexport const progressEventReducer = (listener, isDownloadStream, freq = 3) => {\n let bytesNotified = 0;\n const _speedometer = speedometer(50, 250);\n\n return throttle(e => {\n const loaded = e.loaded;\n const total = e.lengthComputable ? e.total : undefined;\n const progressBytes = loaded - bytesNotified;\n const rate = _speedometer(progressBytes);\n const inRange = loaded <= total;\n\n bytesNotified = loaded;\n\n const data = {\n loaded,\n total,\n progress: total ? (loaded / total) : undefined,\n bytes: progressBytes,\n rate: rate ? rate : undefined,\n estimated: rate && total && inRange ? (total - loaded) / rate : undefined,\n event: e,\n lengthComputable: total != null,\n [isDownloadStream ? 'download' : 'upload']: true\n };\n\n listener(data);\n }, freq);\n}\n\nexport const progressEventDecorator = (total, throttled) => {\n const lengthComputable = total != null;\n\n return [(loaded) => throttled[0]({\n lengthComputable,\n total,\n loaded\n }), throttled[1]];\n}\n\nexport const asyncDecorator = (fn) => (...args) => utils.asap(() => fn(...args));\n","import platform from '../platform/index.js';\n\nexport default platform.hasStandardBrowserEnv ? ((origin, isMSIE) => (url) => {\n url = new URL(url, platform.origin);\n\n return (\n origin.protocol === url.protocol &&\n origin.host === url.host &&\n (isMSIE || origin.port === url.port)\n );\n})(\n new URL(platform.origin),\n platform.navigator && /(msie|trident)/i.test(platform.navigator.userAgent)\n) : () => true;\n","import utils from './../utils.js';\nimport platform from '../platform/index.js';\n\nexport default platform.hasStandardBrowserEnv ?\n\n // Standard browser envs support document.cookie\n {\n write(name, value, expires, path, domain, secure) {\n const cookie = [name + '=' + encodeURIComponent(value)];\n\n utils.isNumber(expires) && cookie.push('expires=' + new Date(expires).toGMTString());\n\n utils.isString(path) && cookie.push('path=' + path);\n\n utils.isString(domain) && cookie.push('domain=' + domain);\n\n secure === true && cookie.push('secure');\n\n document.cookie = cookie.join('; ');\n },\n\n read(name) {\n const match = document.cookie.match(new RegExp('(^|;\\\\s*)(' + name + ')=([^;]*)'));\n return (match ? decodeURIComponent(match[3]) : null);\n },\n\n remove(name) {\n this.write(name, '', Date.now() - 86400000);\n }\n }\n\n :\n\n // Non-standard browser env (web workers, react-native) lack needed support.\n {\n write() {},\n read() {\n return null;\n },\n remove() {}\n };\n\n","'use strict';\n\n/**\n * Determines whether the specified URL is absolute\n *\n * @param {string} url The URL to test\n *\n * @returns {boolean} True if the specified URL is absolute, otherwise false\n */\nexport default function isAbsoluteURL(url) {\n // A URL is considered absolute if it begins with \"://\" or \"//\" (protocol-relative URL).\n // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed\n // by any combination of letters, digits, plus, period, or hyphen.\n return /^([a-z][a-z\\d+\\-.]*:)?\\/\\//i.test(url);\n}\n","'use strict';\n\n/**\n * Creates a new URL by combining the specified URLs\n *\n * @param {string} baseURL The base URL\n * @param {string} relativeURL The relative URL\n *\n * @returns {string} The combined URL\n */\nexport default function combineURLs(baseURL, relativeURL) {\n return relativeURL\n ? baseURL.replace(/\\/?\\/$/, '') + '/' + relativeURL.replace(/^\\/+/, '')\n : baseURL;\n}\n","'use strict';\n\nimport isAbsoluteURL from '../helpers/isAbsoluteURL.js';\nimport combineURLs from '../helpers/combineURLs.js';\n\n/**\n * Creates a new URL by combining the baseURL with the requestedURL,\n * only when the requestedURL is not already an absolute URL.\n * If the requestURL is absolute, this function returns the requestedURL untouched.\n *\n * @param {string} baseURL The base URL\n * @param {string} requestedURL Absolute or relative URL to combine\n *\n * @returns {string} The combined full path\n */\nexport default function buildFullPath(baseURL, requestedURL) {\n if (baseURL && !isAbsoluteURL(requestedURL)) {\n return combineURLs(baseURL, requestedURL);\n }\n return requestedURL;\n}\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosHeaders from \"./AxiosHeaders.js\";\n\nconst headersToObject = (thing) => thing instanceof AxiosHeaders ? { ...thing } : thing;\n\n/**\n * Config-specific merge-function which creates a new config-object\n * by merging two configuration objects together.\n *\n * @param {Object} config1\n * @param {Object} config2\n *\n * @returns {Object} New object resulting from merging config2 to config1\n */\nexport default function mergeConfig(config1, config2) {\n // eslint-disable-next-line no-param-reassign\n config2 = config2 || {};\n const config = {};\n\n function getMergedValue(target, source, prop, caseless) {\n if (utils.isPlainObject(target) && utils.isPlainObject(source)) {\n return utils.merge.call({caseless}, target, source);\n } else if (utils.isPlainObject(source)) {\n return utils.merge({}, source);\n } else if (utils.isArray(source)) {\n return source.slice();\n }\n return source;\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDeepProperties(a, b, prop , caseless) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(a, b, prop , caseless);\n } else if (!utils.isUndefined(a)) {\n return getMergedValue(undefined, a, prop , caseless);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function valueFromConfig2(a, b) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(undefined, b);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function defaultToConfig2(a, b) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(undefined, b);\n } else if (!utils.isUndefined(a)) {\n return getMergedValue(undefined, a);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDirectKeys(a, b, prop) {\n if (prop in config2) {\n return getMergedValue(a, b);\n } else if (prop in config1) {\n return getMergedValue(undefined, a);\n }\n }\n\n const mergeMap = {\n url: valueFromConfig2,\n method: valueFromConfig2,\n data: valueFromConfig2,\n baseURL: defaultToConfig2,\n transformRequest: defaultToConfig2,\n transformResponse: defaultToConfig2,\n paramsSerializer: defaultToConfig2,\n timeout: defaultToConfig2,\n timeoutMessage: defaultToConfig2,\n withCredentials: defaultToConfig2,\n withXSRFToken: defaultToConfig2,\n adapter: defaultToConfig2,\n responseType: defaultToConfig2,\n xsrfCookieName: defaultToConfig2,\n xsrfHeaderName: defaultToConfig2,\n onUploadProgress: defaultToConfig2,\n onDownloadProgress: defaultToConfig2,\n decompress: defaultToConfig2,\n maxContentLength: defaultToConfig2,\n maxBodyLength: defaultToConfig2,\n beforeRedirect: defaultToConfig2,\n transport: defaultToConfig2,\n httpAgent: defaultToConfig2,\n httpsAgent: defaultToConfig2,\n cancelToken: defaultToConfig2,\n socketPath: defaultToConfig2,\n responseEncoding: defaultToConfig2,\n validateStatus: mergeDirectKeys,\n headers: (a, b , prop) => mergeDeepProperties(headersToObject(a), headersToObject(b),prop, true)\n };\n\n utils.forEach(Object.keys(Object.assign({}, config1, config2)), function computeConfigValue(prop) {\n const merge = mergeMap[prop] || mergeDeepProperties;\n const configValue = merge(config1[prop], config2[prop], prop);\n (utils.isUndefined(configValue) && merge !== mergeDirectKeys) || (config[prop] = configValue);\n });\n\n return config;\n}\n","import platform from \"../platform/index.js\";\nimport utils from \"../utils.js\";\nimport isURLSameOrigin from \"./isURLSameOrigin.js\";\nimport cookies from \"./cookies.js\";\nimport buildFullPath from \"../core/buildFullPath.js\";\nimport mergeConfig from \"../core/mergeConfig.js\";\nimport AxiosHeaders from \"../core/AxiosHeaders.js\";\nimport buildURL from \"./buildURL.js\";\n\nexport default (config) => {\n const newConfig = mergeConfig({}, config);\n\n let {data, withXSRFToken, xsrfHeaderName, xsrfCookieName, headers, auth} = newConfig;\n\n newConfig.headers = headers = AxiosHeaders.from(headers);\n\n newConfig.url = buildURL(buildFullPath(newConfig.baseURL, newConfig.url), config.params, config.paramsSerializer);\n\n // HTTP basic authentication\n if (auth) {\n headers.set('Authorization', 'Basic ' +\n btoa((auth.username || '') + ':' + (auth.password ? unescape(encodeURIComponent(auth.password)) : ''))\n );\n }\n\n let contentType;\n\n if (utils.isFormData(data)) {\n if (platform.hasStandardBrowserEnv || platform.hasStandardBrowserWebWorkerEnv) {\n headers.setContentType(undefined); // Let the browser set it\n } else if ((contentType = headers.getContentType()) !== false) {\n // fix semicolon duplication issue for ReactNative FormData implementation\n const [type, ...tokens] = contentType ? contentType.split(';').map(token => token.trim()).filter(Boolean) : [];\n headers.setContentType([type || 'multipart/form-data', ...tokens].join('; '));\n }\n }\n\n // Add xsrf header\n // This is only done if running in a standard browser environment.\n // Specifically not if we're in a web worker, or react-native.\n\n if (platform.hasStandardBrowserEnv) {\n withXSRFToken && utils.isFunction(withXSRFToken) && (withXSRFToken = withXSRFToken(newConfig));\n\n if (withXSRFToken || (withXSRFToken !== false && isURLSameOrigin(newConfig.url))) {\n // Add xsrf header\n const xsrfValue = xsrfHeaderName && xsrfCookieName && cookies.read(xsrfCookieName);\n\n if (xsrfValue) {\n headers.set(xsrfHeaderName, xsrfValue);\n }\n }\n }\n\n return newConfig;\n}\n\n","import utils from './../utils.js';\nimport settle from './../core/settle.js';\nimport transitionalDefaults from '../defaults/transitional.js';\nimport AxiosError from '../core/AxiosError.js';\nimport CanceledError from '../cancel/CanceledError.js';\nimport parseProtocol from '../helpers/parseProtocol.js';\nimport platform from '../platform/index.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nimport {progressEventReducer} from '../helpers/progressEventReducer.js';\nimport resolveConfig from \"../helpers/resolveConfig.js\";\n\nconst isXHRAdapterSupported = typeof XMLHttpRequest !== 'undefined';\n\nexport default isXHRAdapterSupported && function (config) {\n return new Promise(function dispatchXhrRequest(resolve, reject) {\n const _config = resolveConfig(config);\n let requestData = _config.data;\n const requestHeaders = AxiosHeaders.from(_config.headers).normalize();\n let {responseType, onUploadProgress, onDownloadProgress} = _config;\n let onCanceled;\n let uploadThrottled, downloadThrottled;\n let flushUpload, flushDownload;\n\n function done() {\n flushUpload && flushUpload(); // flush events\n flushDownload && flushDownload(); // flush events\n\n _config.cancelToken && _config.cancelToken.unsubscribe(onCanceled);\n\n _config.signal && _config.signal.removeEventListener('abort', onCanceled);\n }\n\n let request = new XMLHttpRequest();\n\n request.open(_config.method.toUpperCase(), _config.url, true);\n\n // Set the request timeout in MS\n request.timeout = _config.timeout;\n\n function onloadend() {\n if (!request) {\n return;\n }\n // Prepare the response\n const responseHeaders = AxiosHeaders.from(\n 'getAllResponseHeaders' in request && request.getAllResponseHeaders()\n );\n const responseData = !responseType || responseType === 'text' || responseType === 'json' ?\n request.responseText : request.response;\n const response = {\n data: responseData,\n status: request.status,\n statusText: request.statusText,\n headers: responseHeaders,\n config,\n request\n };\n\n settle(function _resolve(value) {\n resolve(value);\n done();\n }, function _reject(err) {\n reject(err);\n done();\n }, response);\n\n // Clean up request\n request = null;\n }\n\n if ('onloadend' in request) {\n // Use onloadend if available\n request.onloadend = onloadend;\n } else {\n // Listen for ready state to emulate onloadend\n request.onreadystatechange = function handleLoad() {\n if (!request || request.readyState !== 4) {\n return;\n }\n\n // The request errored out and we didn't get a response, this will be\n // handled by onerror instead\n // With one exception: request that using file: protocol, most browsers\n // will return status as 0 even though it's a successful request\n if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {\n return;\n }\n // readystate handler is calling before onerror or ontimeout handlers,\n // so we should call onloadend on the next 'tick'\n setTimeout(onloadend);\n };\n }\n\n // Handle browser request cancellation (as opposed to a manual cancellation)\n request.onabort = function handleAbort() {\n if (!request) {\n return;\n }\n\n reject(new AxiosError('Request aborted', AxiosError.ECONNABORTED, config, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle low level network errors\n request.onerror = function handleError() {\n // Real errors are hidden from us by the browser\n // onerror should only fire if it's a network error\n reject(new AxiosError('Network Error', AxiosError.ERR_NETWORK, config, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle timeout\n request.ontimeout = function handleTimeout() {\n let timeoutErrorMessage = _config.timeout ? 'timeout of ' + _config.timeout + 'ms exceeded' : 'timeout exceeded';\n const transitional = _config.transitional || transitionalDefaults;\n if (_config.timeoutErrorMessage) {\n timeoutErrorMessage = _config.timeoutErrorMessage;\n }\n reject(new AxiosError(\n timeoutErrorMessage,\n transitional.clarifyTimeoutError ? AxiosError.ETIMEDOUT : AxiosError.ECONNABORTED,\n config,\n request));\n\n // Clean up request\n request = null;\n };\n\n // Remove Content-Type if data is undefined\n requestData === undefined && requestHeaders.setContentType(null);\n\n // Add headers to the request\n if ('setRequestHeader' in request) {\n utils.forEach(requestHeaders.toJSON(), function setRequestHeader(val, key) {\n request.setRequestHeader(key, val);\n });\n }\n\n // Add withCredentials to request if needed\n if (!utils.isUndefined(_config.withCredentials)) {\n request.withCredentials = !!_config.withCredentials;\n }\n\n // Add responseType to request if needed\n if (responseType && responseType !== 'json') {\n request.responseType = _config.responseType;\n }\n\n // Handle progress if needed\n if (onDownloadProgress) {\n ([downloadThrottled, flushDownload] = progressEventReducer(onDownloadProgress, true));\n request.addEventListener('progress', downloadThrottled);\n }\n\n // Not all browsers support upload events\n if (onUploadProgress && request.upload) {\n ([uploadThrottled, flushUpload] = progressEventReducer(onUploadProgress));\n\n request.upload.addEventListener('progress', uploadThrottled);\n\n request.upload.addEventListener('loadend', flushUpload);\n }\n\n if (_config.cancelToken || _config.signal) {\n // Handle cancellation\n // eslint-disable-next-line func-names\n onCanceled = cancel => {\n if (!request) {\n return;\n }\n reject(!cancel || cancel.type ? new CanceledError(null, config, request) : cancel);\n request.abort();\n request = null;\n };\n\n _config.cancelToken && _config.cancelToken.subscribe(onCanceled);\n if (_config.signal) {\n _config.signal.aborted ? onCanceled() : _config.signal.addEventListener('abort', onCanceled);\n }\n }\n\n const protocol = parseProtocol(_config.url);\n\n if (protocol && platform.protocols.indexOf(protocol) === -1) {\n reject(new AxiosError('Unsupported protocol ' + protocol + ':', AxiosError.ERR_BAD_REQUEST, config));\n return;\n }\n\n\n // Send the request\n request.send(requestData || null);\n });\n}\n","import CanceledError from \"../cancel/CanceledError.js\";\nimport AxiosError from \"../core/AxiosError.js\";\nimport utils from '../utils.js';\n\nconst composeSignals = (signals, timeout) => {\n const {length} = (signals = signals ? signals.filter(Boolean) : []);\n\n if (timeout || length) {\n let controller = new AbortController();\n\n let aborted;\n\n const onabort = function (reason) {\n if (!aborted) {\n aborted = true;\n unsubscribe();\n const err = reason instanceof Error ? reason : this.reason;\n controller.abort(err instanceof AxiosError ? err : new CanceledError(err instanceof Error ? err.message : err));\n }\n }\n\n let timer = timeout && setTimeout(() => {\n timer = null;\n onabort(new AxiosError(`timeout ${timeout} of ms exceeded`, AxiosError.ETIMEDOUT))\n }, timeout)\n\n const unsubscribe = () => {\n if (signals) {\n timer && clearTimeout(timer);\n timer = null;\n signals.forEach(signal => {\n signal.unsubscribe ? signal.unsubscribe(onabort) : signal.removeEventListener('abort', onabort);\n });\n signals = null;\n }\n }\n\n signals.forEach((signal) => signal.addEventListener('abort', onabort));\n\n const {signal} = controller;\n\n signal.unsubscribe = () => utils.asap(unsubscribe);\n\n return signal;\n }\n}\n\nexport default composeSignals;\n","\nexport const streamChunk = function* (chunk, chunkSize) {\n let len = chunk.byteLength;\n\n if (!chunkSize || len < chunkSize) {\n yield chunk;\n return;\n }\n\n let pos = 0;\n let end;\n\n while (pos < len) {\n end = pos + chunkSize;\n yield chunk.slice(pos, end);\n pos = end;\n }\n}\n\nexport const readBytes = async function* (iterable, chunkSize) {\n for await (const chunk of readStream(iterable)) {\n yield* streamChunk(chunk, chunkSize);\n }\n}\n\nconst readStream = async function* (stream) {\n if (stream[Symbol.asyncIterator]) {\n yield* stream;\n return;\n }\n\n const reader = stream.getReader();\n try {\n for (;;) {\n const {done, value} = await reader.read();\n if (done) {\n break;\n }\n yield value;\n }\n } finally {\n await reader.cancel();\n }\n}\n\nexport const trackStream = (stream, chunkSize, onProgress, onFinish) => {\n const iterator = readBytes(stream, chunkSize);\n\n let bytes = 0;\n let done;\n let _onFinish = (e) => {\n if (!done) {\n done = true;\n onFinish && onFinish(e);\n }\n }\n\n return new ReadableStream({\n async pull(controller) {\n try {\n const {done, value} = await iterator.next();\n\n if (done) {\n _onFinish();\n controller.close();\n return;\n }\n\n let len = value.byteLength;\n if (onProgress) {\n let loadedBytes = bytes += len;\n onProgress(loadedBytes);\n }\n controller.enqueue(new Uint8Array(value));\n } catch (err) {\n _onFinish(err);\n throw err;\n }\n },\n cancel(reason) {\n _onFinish(reason);\n return iterator.return();\n }\n }, {\n highWaterMark: 2\n })\n}\n","import platform from \"../platform/index.js\";\nimport utils from \"../utils.js\";\nimport AxiosError from \"../core/AxiosError.js\";\nimport composeSignals from \"../helpers/composeSignals.js\";\nimport {trackStream} from \"../helpers/trackStream.js\";\nimport AxiosHeaders from \"../core/AxiosHeaders.js\";\nimport {progressEventReducer, progressEventDecorator, asyncDecorator} from \"../helpers/progressEventReducer.js\";\nimport resolveConfig from \"../helpers/resolveConfig.js\";\nimport settle from \"../core/settle.js\";\n\nconst isFetchSupported = typeof fetch === 'function' && typeof Request === 'function' && typeof Response === 'function';\nconst isReadableStreamSupported = isFetchSupported && typeof ReadableStream === 'function';\n\n// used only inside the fetch adapter\nconst encodeText = isFetchSupported && (typeof TextEncoder === 'function' ?\n ((encoder) => (str) => encoder.encode(str))(new TextEncoder()) :\n async (str) => new Uint8Array(await new Response(str).arrayBuffer())\n);\n\nconst test = (fn, ...args) => {\n try {\n return !!fn(...args);\n } catch (e) {\n return false\n }\n}\n\nconst supportsRequestStream = isReadableStreamSupported && test(() => {\n let duplexAccessed = false;\n\n const hasContentType = new Request(platform.origin, {\n body: new ReadableStream(),\n method: 'POST',\n get duplex() {\n duplexAccessed = true;\n return 'half';\n },\n }).headers.has('Content-Type');\n\n return duplexAccessed && !hasContentType;\n});\n\nconst DEFAULT_CHUNK_SIZE = 64 * 1024;\n\nconst supportsResponseStream = isReadableStreamSupported &&\n test(() => utils.isReadableStream(new Response('').body));\n\n\nconst resolvers = {\n stream: supportsResponseStream && ((res) => res.body)\n};\n\nisFetchSupported && (((res) => {\n ['text', 'arrayBuffer', 'blob', 'formData', 'stream'].forEach(type => {\n !resolvers[type] && (resolvers[type] = utils.isFunction(res[type]) ? (res) => res[type]() :\n (_, config) => {\n throw new AxiosError(`Response type '${type}' is not supported`, AxiosError.ERR_NOT_SUPPORT, config);\n })\n });\n})(new Response));\n\nconst getBodyLength = async (body) => {\n if (body == null) {\n return 0;\n }\n\n if(utils.isBlob(body)) {\n return body.size;\n }\n\n if(utils.isSpecCompliantForm(body)) {\n const _request = new Request(platform.origin, {\n method: 'POST',\n body,\n });\n return (await _request.arrayBuffer()).byteLength;\n }\n\n if(utils.isArrayBufferView(body) || utils.isArrayBuffer(body)) {\n return body.byteLength;\n }\n\n if(utils.isURLSearchParams(body)) {\n body = body + '';\n }\n\n if(utils.isString(body)) {\n return (await encodeText(body)).byteLength;\n }\n}\n\nconst resolveBodyLength = async (headers, body) => {\n const length = utils.toFiniteNumber(headers.getContentLength());\n\n return length == null ? getBodyLength(body) : length;\n}\n\nexport default isFetchSupported && (async (config) => {\n let {\n url,\n method,\n data,\n signal,\n cancelToken,\n timeout,\n onDownloadProgress,\n onUploadProgress,\n responseType,\n headers,\n withCredentials = 'same-origin',\n fetchOptions\n } = resolveConfig(config);\n\n responseType = responseType ? (responseType + '').toLowerCase() : 'text';\n\n let composedSignal = composeSignals([signal, cancelToken && cancelToken.toAbortSignal()], timeout);\n\n let request;\n\n const unsubscribe = composedSignal && composedSignal.unsubscribe && (() => {\n composedSignal.unsubscribe();\n });\n\n let requestContentLength;\n\n try {\n if (\n onUploadProgress && supportsRequestStream && method !== 'get' && method !== 'head' &&\n (requestContentLength = await resolveBodyLength(headers, data)) !== 0\n ) {\n let _request = new Request(url, {\n method: 'POST',\n body: data,\n duplex: \"half\"\n });\n\n let contentTypeHeader;\n\n if (utils.isFormData(data) && (contentTypeHeader = _request.headers.get('content-type'))) {\n headers.setContentType(contentTypeHeader)\n }\n\n if (_request.body) {\n const [onProgress, flush] = progressEventDecorator(\n requestContentLength,\n progressEventReducer(asyncDecorator(onUploadProgress))\n );\n\n data = trackStream(_request.body, DEFAULT_CHUNK_SIZE, onProgress, flush);\n }\n }\n\n if (!utils.isString(withCredentials)) {\n withCredentials = withCredentials ? 'include' : 'omit';\n }\n\n // Cloudflare Workers throws when credentials are defined\n // see https://github.com/cloudflare/workerd/issues/902\n const isCredentialsSupported = \"credentials\" in Request.prototype;\n request = new Request(url, {\n ...fetchOptions,\n signal: composedSignal,\n method: method.toUpperCase(),\n headers: headers.normalize().toJSON(),\n body: data,\n duplex: \"half\",\n credentials: isCredentialsSupported ? withCredentials : undefined\n });\n\n let response = await fetch(request);\n\n const isStreamResponse = supportsResponseStream && (responseType === 'stream' || responseType === 'response');\n\n if (supportsResponseStream && (onDownloadProgress || (isStreamResponse && unsubscribe))) {\n const options = {};\n\n ['status', 'statusText', 'headers'].forEach(prop => {\n options[prop] = response[prop];\n });\n\n const responseContentLength = utils.toFiniteNumber(response.headers.get('content-length'));\n\n const [onProgress, flush] = onDownloadProgress && progressEventDecorator(\n responseContentLength,\n progressEventReducer(asyncDecorator(onDownloadProgress), true)\n ) || [];\n\n response = new Response(\n trackStream(response.body, DEFAULT_CHUNK_SIZE, onProgress, () => {\n flush && flush();\n unsubscribe && unsubscribe();\n }),\n options\n );\n }\n\n responseType = responseType || 'text';\n\n let responseData = await resolvers[utils.findKey(resolvers, responseType) || 'text'](response, config);\n\n !isStreamResponse && unsubscribe && unsubscribe();\n\n return await new Promise((resolve, reject) => {\n settle(resolve, reject, {\n data: responseData,\n headers: AxiosHeaders.from(response.headers),\n status: response.status,\n statusText: response.statusText,\n config,\n request\n })\n })\n } catch (err) {\n unsubscribe && unsubscribe();\n\n if (err && err.name === 'TypeError' && /fetch/i.test(err.message)) {\n throw Object.assign(\n new AxiosError('Network Error', AxiosError.ERR_NETWORK, config, request),\n {\n cause: err.cause || err\n }\n )\n }\n\n throw AxiosError.from(err, err && err.code, config, request);\n }\n});\n\n\n","import utils from '../utils.js';\nimport httpAdapter from './http.js';\nimport xhrAdapter from './xhr.js';\nimport fetchAdapter from './fetch.js';\nimport AxiosError from \"../core/AxiosError.js\";\n\nconst knownAdapters = {\n http: httpAdapter,\n xhr: xhrAdapter,\n fetch: fetchAdapter\n}\n\nutils.forEach(knownAdapters, (fn, value) => {\n if (fn) {\n try {\n Object.defineProperty(fn, 'name', {value});\n } catch (e) {\n // eslint-disable-next-line no-empty\n }\n Object.defineProperty(fn, 'adapterName', {value});\n }\n});\n\nconst renderReason = (reason) => `- ${reason}`;\n\nconst isResolvedHandle = (adapter) => utils.isFunction(adapter) || adapter === null || adapter === false;\n\nexport default {\n getAdapter: (adapters) => {\n adapters = utils.isArray(adapters) ? adapters : [adapters];\n\n const {length} = adapters;\n let nameOrAdapter;\n let adapter;\n\n const rejectedReasons = {};\n\n for (let i = 0; i < length; i++) {\n nameOrAdapter = adapters[i];\n let id;\n\n adapter = nameOrAdapter;\n\n if (!isResolvedHandle(nameOrAdapter)) {\n adapter = knownAdapters[(id = String(nameOrAdapter)).toLowerCase()];\n\n if (adapter === undefined) {\n throw new AxiosError(`Unknown adapter '${id}'`);\n }\n }\n\n if (adapter) {\n break;\n }\n\n rejectedReasons[id || '#' + i] = adapter;\n }\n\n if (!adapter) {\n\n const reasons = Object.entries(rejectedReasons)\n .map(([id, state]) => `adapter ${id} ` +\n (state === false ? 'is not supported by the environment' : 'is not available in the build')\n );\n\n let s = length ?\n (reasons.length > 1 ? 'since :\\n' + reasons.map(renderReason).join('\\n') : ' ' + renderReason(reasons[0])) :\n 'as no adapter specified';\n\n throw new AxiosError(\n `There is no suitable adapter to dispatch the request ` + s,\n 'ERR_NOT_SUPPORT'\n );\n }\n\n return adapter;\n },\n adapters: knownAdapters\n}\n","'use strict';\n\nimport transformData from './transformData.js';\nimport isCancel from '../cancel/isCancel.js';\nimport defaults from '../defaults/index.js';\nimport CanceledError from '../cancel/CanceledError.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nimport adapters from \"../adapters/adapters.js\";\n\n/**\n * Throws a `CanceledError` if cancellation has been requested.\n *\n * @param {Object} config The config that is to be used for the request\n *\n * @returns {void}\n */\nfunction throwIfCancellationRequested(config) {\n if (config.cancelToken) {\n config.cancelToken.throwIfRequested();\n }\n\n if (config.signal && config.signal.aborted) {\n throw new CanceledError(null, config);\n }\n}\n\n/**\n * Dispatch a request to the server using the configured adapter.\n *\n * @param {object} config The config that is to be used for the request\n *\n * @returns {Promise} The Promise to be fulfilled\n */\nexport default function dispatchRequest(config) {\n throwIfCancellationRequested(config);\n\n config.headers = AxiosHeaders.from(config.headers);\n\n // Transform request data\n config.data = transformData.call(\n config,\n config.transformRequest\n );\n\n if (['post', 'put', 'patch'].indexOf(config.method) !== -1) {\n config.headers.setContentType('application/x-www-form-urlencoded', false);\n }\n\n const adapter = adapters.getAdapter(config.adapter || defaults.adapter);\n\n return adapter(config).then(function onAdapterResolution(response) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n response.data = transformData.call(\n config,\n config.transformResponse,\n response\n );\n\n response.headers = AxiosHeaders.from(response.headers);\n\n return response;\n }, function onAdapterRejection(reason) {\n if (!isCancel(reason)) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n if (reason && reason.response) {\n reason.response.data = transformData.call(\n config,\n config.transformResponse,\n reason.response\n );\n reason.response.headers = AxiosHeaders.from(reason.response.headers);\n }\n }\n\n return Promise.reject(reason);\n });\n}\n","export const VERSION = \"1.7.9\";","'use strict';\n\nimport {VERSION} from '../env/data.js';\nimport AxiosError from '../core/AxiosError.js';\n\nconst validators = {};\n\n// eslint-disable-next-line func-names\n['object', 'boolean', 'number', 'function', 'string', 'symbol'].forEach((type, i) => {\n validators[type] = function validator(thing) {\n return typeof thing === type || 'a' + (i < 1 ? 'n ' : ' ') + type;\n };\n});\n\nconst deprecatedWarnings = {};\n\n/**\n * Transitional option validator\n *\n * @param {function|boolean?} validator - set to false if the transitional option has been removed\n * @param {string?} version - deprecated version / removed since version\n * @param {string?} message - some message with additional info\n *\n * @returns {function}\n */\nvalidators.transitional = function transitional(validator, version, message) {\n function formatMessage(opt, desc) {\n return '[Axios v' + VERSION + '] Transitional option \\'' + opt + '\\'' + desc + (message ? '. ' + message : '');\n }\n\n // eslint-disable-next-line func-names\n return (value, opt, opts) => {\n if (validator === false) {\n throw new AxiosError(\n formatMessage(opt, ' has been removed' + (version ? ' in ' + version : '')),\n AxiosError.ERR_DEPRECATED\n );\n }\n\n if (version && !deprecatedWarnings[opt]) {\n deprecatedWarnings[opt] = true;\n // eslint-disable-next-line no-console\n console.warn(\n formatMessage(\n opt,\n ' has been deprecated since v' + version + ' and will be removed in the near future'\n )\n );\n }\n\n return validator ? validator(value, opt, opts) : true;\n };\n};\n\nvalidators.spelling = function spelling(correctSpelling) {\n return (value, opt) => {\n // eslint-disable-next-line no-console\n console.warn(`${opt} is likely a misspelling of ${correctSpelling}`);\n return true;\n }\n};\n\n/**\n * Assert object's properties type\n *\n * @param {object} options\n * @param {object} schema\n * @param {boolean?} allowUnknown\n *\n * @returns {object}\n */\n\nfunction assertOptions(options, schema, allowUnknown) {\n if (typeof options !== 'object') {\n throw new AxiosError('options must be an object', AxiosError.ERR_BAD_OPTION_VALUE);\n }\n const keys = Object.keys(options);\n let i = keys.length;\n while (i-- > 0) {\n const opt = keys[i];\n const validator = schema[opt];\n if (validator) {\n const value = options[opt];\n const result = value === undefined || validator(value, opt, options);\n if (result !== true) {\n throw new AxiosError('option ' + opt + ' must be ' + result, AxiosError.ERR_BAD_OPTION_VALUE);\n }\n continue;\n }\n if (allowUnknown !== true) {\n throw new AxiosError('Unknown option ' + opt, AxiosError.ERR_BAD_OPTION);\n }\n }\n}\n\nexport default {\n assertOptions,\n validators\n};\n","'use strict';\n\nimport utils from './../utils.js';\nimport buildURL from '../helpers/buildURL.js';\nimport InterceptorManager from './InterceptorManager.js';\nimport dispatchRequest from './dispatchRequest.js';\nimport mergeConfig from './mergeConfig.js';\nimport buildFullPath from './buildFullPath.js';\nimport validator from '../helpers/validator.js';\nimport AxiosHeaders from './AxiosHeaders.js';\n\nconst validators = validator.validators;\n\n/**\n * Create a new instance of Axios\n *\n * @param {Object} instanceConfig The default config for the instance\n *\n * @return {Axios} A new instance of Axios\n */\nclass Axios {\n constructor(instanceConfig) {\n this.defaults = instanceConfig;\n this.interceptors = {\n request: new InterceptorManager(),\n response: new InterceptorManager()\n };\n }\n\n /**\n * Dispatch a request\n *\n * @param {String|Object} configOrUrl The config specific for this request (merged with this.defaults)\n * @param {?Object} config\n *\n * @returns {Promise} The Promise to be fulfilled\n */\n async request(configOrUrl, config) {\n try {\n return await this._request(configOrUrl, config);\n } catch (err) {\n if (err instanceof Error) {\n let dummy = {};\n\n Error.captureStackTrace ? Error.captureStackTrace(dummy) : (dummy = new Error());\n\n // slice off the Error: ... line\n const stack = dummy.stack ? dummy.stack.replace(/^.+\\n/, '') : '';\n try {\n if (!err.stack) {\n err.stack = stack;\n // match without the 2 top stack lines\n } else if (stack && !String(err.stack).endsWith(stack.replace(/^.+\\n.+\\n/, ''))) {\n err.stack += '\\n' + stack\n }\n } catch (e) {\n // ignore the case where \"stack\" is an un-writable property\n }\n }\n\n throw err;\n }\n }\n\n _request(configOrUrl, config) {\n /*eslint no-param-reassign:0*/\n // Allow for axios('example/url'[, config]) a la fetch API\n if (typeof configOrUrl === 'string') {\n config = config || {};\n config.url = configOrUrl;\n } else {\n config = configOrUrl || {};\n }\n\n config = mergeConfig(this.defaults, config);\n\n const {transitional, paramsSerializer, headers} = config;\n\n if (transitional !== undefined) {\n validator.assertOptions(transitional, {\n silentJSONParsing: validators.transitional(validators.boolean),\n forcedJSONParsing: validators.transitional(validators.boolean),\n clarifyTimeoutError: validators.transitional(validators.boolean)\n }, false);\n }\n\n if (paramsSerializer != null) {\n if (utils.isFunction(paramsSerializer)) {\n config.paramsSerializer = {\n serialize: paramsSerializer\n }\n } else {\n validator.assertOptions(paramsSerializer, {\n encode: validators.function,\n serialize: validators.function\n }, true);\n }\n }\n\n validator.assertOptions(config, {\n baseUrl: validators.spelling('baseURL'),\n withXsrfToken: validators.spelling('withXSRFToken')\n }, true);\n\n // Set config.method\n config.method = (config.method || this.defaults.method || 'get').toLowerCase();\n\n // Flatten headers\n let contextHeaders = headers && utils.merge(\n headers.common,\n headers[config.method]\n );\n\n headers && utils.forEach(\n ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'],\n (method) => {\n delete headers[method];\n }\n );\n\n config.headers = AxiosHeaders.concat(contextHeaders, headers);\n\n // filter out skipped interceptors\n const requestInterceptorChain = [];\n let synchronousRequestInterceptors = true;\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n if (typeof interceptor.runWhen === 'function' && interceptor.runWhen(config) === false) {\n return;\n }\n\n synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous;\n\n requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected);\n });\n\n const responseInterceptorChain = [];\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\n responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);\n });\n\n let promise;\n let i = 0;\n let len;\n\n if (!synchronousRequestInterceptors) {\n const chain = [dispatchRequest.bind(this), undefined];\n chain.unshift.apply(chain, requestInterceptorChain);\n chain.push.apply(chain, responseInterceptorChain);\n len = chain.length;\n\n promise = Promise.resolve(config);\n\n while (i < len) {\n promise = promise.then(chain[i++], chain[i++]);\n }\n\n return promise;\n }\n\n len = requestInterceptorChain.length;\n\n let newConfig = config;\n\n i = 0;\n\n while (i < len) {\n const onFulfilled = requestInterceptorChain[i++];\n const onRejected = requestInterceptorChain[i++];\n try {\n newConfig = onFulfilled(newConfig);\n } catch (error) {\n onRejected.call(this, error);\n break;\n }\n }\n\n try {\n promise = dispatchRequest.call(this, newConfig);\n } catch (error) {\n return Promise.reject(error);\n }\n\n i = 0;\n len = responseInterceptorChain.length;\n\n while (i < len) {\n promise = promise.then(responseInterceptorChain[i++], responseInterceptorChain[i++]);\n }\n\n return promise;\n }\n\n getUri(config) {\n config = mergeConfig(this.defaults, config);\n const fullPath = buildFullPath(config.baseURL, config.url);\n return buildURL(fullPath, config.params, config.paramsSerializer);\n }\n}\n\n// Provide aliases for supported request methods\nutils.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, config) {\n return this.request(mergeConfig(config || {}, {\n method,\n url,\n data: (config || {}).data\n }));\n };\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n /*eslint func-names:0*/\n\n function generateHTTPMethod(isForm) {\n return function httpMethod(url, data, config) {\n return this.request(mergeConfig(config || {}, {\n method,\n headers: isForm ? {\n 'Content-Type': 'multipart/form-data'\n } : {},\n url,\n data\n }));\n };\n }\n\n Axios.prototype[method] = generateHTTPMethod();\n\n Axios.prototype[method + 'Form'] = generateHTTPMethod(true);\n});\n\nexport default Axios;\n","'use strict';\n\nimport CanceledError from './CanceledError.js';\n\n/**\n * A `CancelToken` is an object that can be used to request cancellation of an operation.\n *\n * @param {Function} executor The executor function.\n *\n * @returns {CancelToken}\n */\nclass CancelToken {\n constructor(executor) {\n if (typeof executor !== 'function') {\n throw new TypeError('executor must be a function.');\n }\n\n let resolvePromise;\n\n this.promise = new Promise(function promiseExecutor(resolve) {\n resolvePromise = resolve;\n });\n\n const token = this;\n\n // eslint-disable-next-line func-names\n this.promise.then(cancel => {\n if (!token._listeners) return;\n\n let i = token._listeners.length;\n\n while (i-- > 0) {\n token._listeners[i](cancel);\n }\n token._listeners = null;\n });\n\n // eslint-disable-next-line func-names\n this.promise.then = onfulfilled => {\n let _resolve;\n // eslint-disable-next-line func-names\n const promise = new Promise(resolve => {\n token.subscribe(resolve);\n _resolve = resolve;\n }).then(onfulfilled);\n\n promise.cancel = function reject() {\n token.unsubscribe(_resolve);\n };\n\n return promise;\n };\n\n executor(function cancel(message, config, request) {\n if (token.reason) {\n // Cancellation has already been requested\n return;\n }\n\n token.reason = new CanceledError(message, config, request);\n resolvePromise(token.reason);\n });\n }\n\n /**\n * Throws a `CanceledError` if cancellation has been requested.\n */\n throwIfRequested() {\n if (this.reason) {\n throw this.reason;\n }\n }\n\n /**\n * Subscribe to the cancel signal\n */\n\n subscribe(listener) {\n if (this.reason) {\n listener(this.reason);\n return;\n }\n\n if (this._listeners) {\n this._listeners.push(listener);\n } else {\n this._listeners = [listener];\n }\n }\n\n /**\n * Unsubscribe from the cancel signal\n */\n\n unsubscribe(listener) {\n if (!this._listeners) {\n return;\n }\n const index = this._listeners.indexOf(listener);\n if (index !== -1) {\n this._listeners.splice(index, 1);\n }\n }\n\n toAbortSignal() {\n const controller = new AbortController();\n\n const abort = (err) => {\n controller.abort(err);\n };\n\n this.subscribe(abort);\n\n controller.signal.unsubscribe = () => this.unsubscribe(abort);\n\n return controller.signal;\n }\n\n /**\n * Returns an object that contains a new `CancelToken` and a function that, when called,\n * cancels the `CancelToken`.\n */\n static source() {\n let cancel;\n const token = new CancelToken(function executor(c) {\n cancel = c;\n });\n return {\n token,\n cancel\n };\n }\n}\n\nexport default CancelToken;\n","'use strict';\n\n/**\n * Syntactic sugar for invoking a function and expanding an array for arguments.\n *\n * Common use case would be to use `Function.prototype.apply`.\n *\n * ```js\n * function f(x, y, z) {}\n * var args = [1, 2, 3];\n * f.apply(null, args);\n * ```\n *\n * With `spread` this example can be re-written.\n *\n * ```js\n * spread(function(x, y, z) {})([1, 2, 3]);\n * ```\n *\n * @param {Function} callback\n *\n * @returns {Function}\n */\nexport default function spread(callback) {\n return function wrap(arr) {\n return callback.apply(null, arr);\n };\n}\n","'use strict';\n\nimport utils from './../utils.js';\n\n/**\n * Determines whether the payload is an error thrown by Axios\n *\n * @param {*} payload The value to test\n *\n * @returns {boolean} True if the payload is an error thrown by Axios, otherwise false\n */\nexport default function isAxiosError(payload) {\n return utils.isObject(payload) && (payload.isAxiosError === true);\n}\n","const HttpStatusCode = {\n Continue: 100,\n SwitchingProtocols: 101,\n Processing: 102,\n EarlyHints: 103,\n Ok: 200,\n Created: 201,\n Accepted: 202,\n NonAuthoritativeInformation: 203,\n NoContent: 204,\n ResetContent: 205,\n PartialContent: 206,\n MultiStatus: 207,\n AlreadyReported: 208,\n ImUsed: 226,\n MultipleChoices: 300,\n MovedPermanently: 301,\n Found: 302,\n SeeOther: 303,\n NotModified: 304,\n UseProxy: 305,\n Unused: 306,\n TemporaryRedirect: 307,\n PermanentRedirect: 308,\n BadRequest: 400,\n Unauthorized: 401,\n PaymentRequired: 402,\n Forbidden: 403,\n NotFound: 404,\n MethodNotAllowed: 405,\n NotAcceptable: 406,\n ProxyAuthenticationRequired: 407,\n RequestTimeout: 408,\n Conflict: 409,\n Gone: 410,\n LengthRequired: 411,\n PreconditionFailed: 412,\n PayloadTooLarge: 413,\n UriTooLong: 414,\n UnsupportedMediaType: 415,\n RangeNotSatisfiable: 416,\n ExpectationFailed: 417,\n ImATeapot: 418,\n MisdirectedRequest: 421,\n UnprocessableEntity: 422,\n Locked: 423,\n FailedDependency: 424,\n TooEarly: 425,\n UpgradeRequired: 426,\n PreconditionRequired: 428,\n TooManyRequests: 429,\n RequestHeaderFieldsTooLarge: 431,\n UnavailableForLegalReasons: 451,\n InternalServerError: 500,\n NotImplemented: 501,\n BadGateway: 502,\n ServiceUnavailable: 503,\n GatewayTimeout: 504,\n HttpVersionNotSupported: 505,\n VariantAlsoNegotiates: 506,\n InsufficientStorage: 507,\n LoopDetected: 508,\n NotExtended: 510,\n NetworkAuthenticationRequired: 511,\n};\n\nObject.entries(HttpStatusCode).forEach(([key, value]) => {\n HttpStatusCode[value] = key;\n});\n\nexport default HttpStatusCode;\n","'use strict';\n\nimport utils from './utils.js';\nimport bind from './helpers/bind.js';\nimport Axios from './core/Axios.js';\nimport mergeConfig from './core/mergeConfig.js';\nimport defaults from './defaults/index.js';\nimport formDataToJSON from './helpers/formDataToJSON.js';\nimport CanceledError from './cancel/CanceledError.js';\nimport CancelToken from './cancel/CancelToken.js';\nimport isCancel from './cancel/isCancel.js';\nimport {VERSION} from './env/data.js';\nimport toFormData from './helpers/toFormData.js';\nimport AxiosError from './core/AxiosError.js';\nimport spread from './helpers/spread.js';\nimport isAxiosError from './helpers/isAxiosError.js';\nimport AxiosHeaders from \"./core/AxiosHeaders.js\";\nimport adapters from './adapters/adapters.js';\nimport HttpStatusCode from './helpers/HttpStatusCode.js';\n\n/**\n * Create an instance of Axios\n *\n * @param {Object} defaultConfig The default config for the instance\n *\n * @returns {Axios} A new instance of Axios\n */\nfunction createInstance(defaultConfig) {\n const context = new Axios(defaultConfig);\n const instance = bind(Axios.prototype.request, context);\n\n // Copy axios.prototype to instance\n utils.extend(instance, Axios.prototype, context, {allOwnKeys: true});\n\n // Copy context to instance\n utils.extend(instance, context, null, {allOwnKeys: true});\n\n // Factory for creating new instances\n instance.create = function create(instanceConfig) {\n return createInstance(mergeConfig(defaultConfig, instanceConfig));\n };\n\n return instance;\n}\n\n// Create the default instance to be exported\nconst axios = createInstance(defaults);\n\n// Expose Axios class to allow class inheritance\naxios.Axios = Axios;\n\n// Expose Cancel & CancelToken\naxios.CanceledError = CanceledError;\naxios.CancelToken = CancelToken;\naxios.isCancel = isCancel;\naxios.VERSION = VERSION;\naxios.toFormData = toFormData;\n\n// Expose AxiosError class\naxios.AxiosError = AxiosError;\n\n// alias for CanceledError for backward compatibility\naxios.Cancel = axios.CanceledError;\n\n// Expose all/spread\naxios.all = function all(promises) {\n return Promise.all(promises);\n};\n\naxios.spread = spread;\n\n// Expose isAxiosError\naxios.isAxiosError = isAxiosError;\n\n// Expose mergeConfig\naxios.mergeConfig = mergeConfig;\n\naxios.AxiosHeaders = AxiosHeaders;\n\naxios.formToJSON = thing => formDataToJSON(utils.isHTMLForm(thing) ? new FormData(thing) : thing);\n\naxios.getAdapter = adapters.getAdapter;\n\naxios.HttpStatusCode = HttpStatusCode;\n\naxios.default = axios;\n\n// this module should only have a default export\nexport default axios\n","/**\n * We'll load the axios HTTP library which allows us to easily issue requests\n * to our Laravel back-end. This library automatically handles sending the\n * CSRF token as a header based on the value of the \"XSRF\" token cookie.\n */\n\nimport axios from \"axios\";\nwindow.axios = axios;\n\nwindow.axios.defaults.headers.common[\"X-Requested-With\"] = \"XMLHttpRequest\";\n\n/**\n * Echo exposes an expressive API for subscribing to channels and listening\n * for events that are broadcast by Laravel. Echo and event broadcasting\n * allows your team to easily build robust real-time web applications.\n */\n\n// import Echo from 'laravel-echo';\n\n// import Pusher from 'pusher-js';\n// window.Pusher = Pusher;\n\n// window.Echo = new Echo({\n// broadcaster: 'pusher',\n// key: import.meta.env.VITE_PUSHER_APP_KEY,\n// cluster: import.meta.env.VITE_PUSHER_APP_CLUSTER ?? 'mt1',\n// wsHost: import.meta.env.VITE_PUSHER_HOST ? import.meta.env.VITE_PUSHER_HOST : `ws-${import.meta.env.VITE_PUSHER_APP_CLUSTER}.pusher.com`,\n// wsPort: import.meta.env.VITE_PUSHER_PORT ?? 80,\n// wssPort: import.meta.env.VITE_PUSHER_PORT ?? 443,\n// forceTLS: (import.meta.env.VITE_PUSHER_SCHEME ?? 'https') === 'https',\n// enabledTransports: ['ws', 'wss'],\n// });\n","/**\n * openchemlib - Manipulate molecules\n * @version v8.17.0\n * @date 2024-11-06T15:08:46.586Z\n * @link https://github.com/cheminfo/openchemlib-js\n * @license BSD-3-Clause\n*/\n(function (root) {\n 'use strict';\n\n function getExports($wnd) {\n\n var $doc = $wnd.document;\n var $gwt = {};\n var navigator = {\n userAgent: 'webkit'\n };\n\n function noop(){}\n\n var __gwtModuleFunction = noop;\n __gwtModuleFunction.__moduleStartupDone = noop;\n var $sendStats = noop;\n var $moduleName, $moduleBase;\n\n // Start GWT code \nvar Yac='object',Zac='anonymous',$ac='fnStack',_ac='\\n',abc={4:1,9:1,5:1,8:1},bbc='Unknown',cbc='boolean',dbc='number',ebc='string',fbc='function',gbc=2147483647,hbc='For input string: \"',ibc='null',jbc='__noinit__',kbc={4:1,5:1,8:1},lbc={4:1,16:1,29:1},mbc=' (copy)',nbc={4:1,9:1,15:1,5:1,11:1,8:1,14:1},obc=65536,pbc=65535,qbc=10000,rbc='fromIndex: ',sbc=' > toIndex: ',tbc=', toIndex: ',ubc=', length: ',vbc='Index: ',wbc=', Size: ',xbc={12:1,4:1,5:1},ybc={4:1},zbc={7:1,4:1,5:1},Abc=16777215,Bbc=65280,Cbc=0.30000001192092896,Dbc=545460846592,Ebc=4294967296,Fbc=8589934592,Gbc=17179869184,Hbc=34359738368,Ibc=68719476736,Jbc=137438953472,Kbc=274877906944,Lbc={13:1,4:1,5:1},Mbc=536870912,Nbc=2.617993878,Obc=3.665191429,Pbc=6.283185307179586,Qbc=3.141592653589793,Rbc=1.5707963267948966,Sbc=16384,Tbc=-8355712,Ubc=4096,Vbc={l:0,m:0,h:1},Wbc={l:0,m:0,h:2},Xbc={l:0,m:0,h:4},Ybc=1920,Zbc=1792,$bc=1664,_bc=1024,acc=234881024,bcc=167772160,ccc=100663296,dcc=201326592,ecc=114688,fcc=98304,gcc=81920,hcc=49152,icc=4063232,jcc=3801088,kcc=3538944,lcc=3014656,mcc=3145728,ncc=2097152,occ=393216,pcc=917504,qcc=1966080,rcc=17042430230528,scc=16492674416640,tcc=15942918602752,ucc=14843406974976,vcc=12644383719424,wcc=15393162788864,xcc=13194139533312,ycc=8796093022208,zcc=549755813888,Acc=1649267441664,Bcc=3848290697216,Ccc=8246337208320,Dcc=13743895347200,Ecc=9345848836096,Fcc=10445360463872,Gcc=29360128,Hcc=268435456,Icc=8192,Jcc=2048,Kcc=-1.5707963267948966,Lcc=130560,Mcc=6291456,Ncc=-2.0943951023931953,Occ=1.0471975511965976,Pcc=0.5235987755982988,Qcc=786432,Rcc=524288,Scc=262144,Tcc=-16777216,Ucc=-65536,Vcc=-32768,Wcc='<\\/DrawingObject>',Ycc={4:1,5:1,17:1},Zcc={4:1,5:1},$cc='unsupported atomicNo:',_cc=2.8415926535897933,adc={41:1,4:1,9:1,5:1,8:1},bdc={4:1,5:1,11:1,8:1},cdc={10:1,4:1,5:1},ddc=131072,edc=196608,fdc={l:6,m:0,h:4},gdc=1048576,hdc=3221225472,idc={l:0,m:0,h:3},jdc=8388608,kdc='text',ldc={32:1,56:1,61:1},mdc={32:1,56:1,100:1,61:1,115:1},ndc={4:1,5:1,32:1,56:1,100:1,20:1,61:1,115:1,181:1},odc=1.7976931348623157E308,pdc=-1.7976931348623157E308,qdc={77:1,73:1,83:1,4:1,9:1,5:1,8:1},rdc='??',sdc=2013265920,tdc=32505856,udc=31744,vdc=122880,wdc={162:1,4:1,9:1,5:1,11:1,8:1},xdc=33554432,ydc=67108864,zdc=32768,Adc=-131073,Bdc=-33554433,Cdc=-33292289,Ddc=-3.141592653589793,Edc=4194303,Fdc=3072,Gdc={63:1,4:1,5:1},Hdc=0.7853981633974483,Idc=3.061592653589793,Jdc=1073741824,Kdc=541165879296,Ldc={18:1,4:1,5:1,8:1},Mdc=281.17,Ndc=289.19,Odc=294.21,Pdc='0.0000',Qdc='M END\\n',Rdc='ATOMS',Sdc=-2147483648,Tdc='M END',Udc='$$$$',Vdc='M V30 ',Wdc='M V30 COUNTS ',Xdc=')\\n',Ydc='M V30 MDLV30/STEREL',Zdc='M V30 MDLV30/STERAC',$dc=3.4028234663852886E38,_dc={l:2,m:0,h:4},aec=4194304,bec={l:4179966,m:4063288,h:7},cec={l:4194302,m:4193343,h:7},dec='\" ',eec='stroke=\"',fec='stroke-width=\"',gec='\" />',hec='class=\"event\" ',iec='opacity=\"0\" />',jec=16711680,kec=\"' position:\",lec=\"'. Position:\",mec=1099511627776,nec=2199023255552,oec=4398046511104,pec=\"', position:\",qec='Assignment of aromatic double bonds failed',rec={128:1,4:1},sec='Members of ESR groups must only be stereo centers with known configuration.',tec='Over- or under-specified stereo feature or more than one racemic type bond',uec='Ambiguous configuration at stereo center because of 2 parallel bonds',vec={108:1,109:1,23:1,4:1},wec=100000,xec=1.399999976158142,yec='style',zec=3.1415927410125732,Aec=1.5707963705062866,Bec=0.029999999329447746,Cec=6.2831854820251465,Dec=1.9106119871139526,Eec=2.2639999389648438,Fec=2.16759991645813,Gec=2.0662999153137207,Hec=2.3561999797821045,Iec=2.2844998836517334,Jec=1.9106120066311025,Kec=2.094395160675049,Lec=0.6000000238418579,Mec=1.7999999523162842,Nec=0.05000000074505806,Oec={4:1,9:1,5:1,8:1,49:1},Pec=0.2617993950843811,Qec=2.0943951023931953,Rec=1.2000000476837158,Sec=1.4299999475479126,Tec=1.659999966621399,Uec=1.4600000381469727,Vec=1.8200000524520874,Wec=2.4600000381469727,Xec=2.4200000762939453,Yec=2.450000047683716,Zec=2.440000057220459,$ec=2.4000000953674316,_ec=2.319999933242798,afc=2.2899999618530273,bfc=1.8600000143051147,cfc=2.5299999713897705,dfc=2.490000009536743,efc=2.4700000286102295,ffc=2.880000114440918,gfc=2.9200000762939453,hfc=2.869999885559082,ifc=2.8299999237060547,jfc=2.7899999618530273,kfc=2.809999942779541,lfc=2.799999952316284,mfc=3.049999952316284,nfc=0.3199999928474426,ofc=1.3300000429153442,pfc=0.8500000238418579,qfc=1.600000023841858,rfc=1.3899999856948853,sfc=1.159999966621399,tfc=1.1100000143051147,ufc=1.0700000524520874,vfc=1.9600000381469727,wfc=1.7100000381469727,xfc=1.3600000143051147,yfc=1.340000033378601,zfc=1.2200000286102295,Afc=1.2400000095367432,Bfc=1.2100000381469727,Cfc=1.850000023841858,Dfc=1.6299999952316284,Efc=1.4700000286102295,Ffc=1.2799999713897705,Gfc=1.440000057220459,Hfc=1.7599999904632568,Ifc=1.7300000190734863,Jfc=1.7200000286102295,Kfc=1.6799999475479126,Lfc=1.690000057220459,Mfc=1.6699999570846558,Nfc=1.649999976158142,Ofc=1.7000000476837158,Pfc=1.6200000047683716,Qfc=1.3700000047683716,Rfc=1.2899999618530273,Sfc=1.4500000476837158,Tfc=1.5700000524520874,Ufc=-0.5235987755982988,Vfc=-1.0471975511965976,Wfc=-0.7853981633974483,Xfc=0.017453292519943295,Yfc=0.17453292519943295,Zfc=1.0E-4,$fc={183:1},_fc=57.29577951308232,agc=0.021922173386725217,bgc=1.0E-8,cgc=2.5120960256267386,dgc=1.0E-5,egc='MMFF94s+',fgc='nonbonded cutoff',ggc='dielectric constant',hgc='dielectric model',igc='angle bend',jgc='bond stretch',kgc='electrostatic',lgc='out of plane',mgc='stretch bend',ngc='torsion angle',ogc='van der waals',pgc={4:1,9:1,5:1,11:1,8:1},qgc=0.07000000000000006,rgc=0.1200000000000001,sgc=-7.840000000000001,tgc='OCL_RXN_V1.0:',ugc=\"'$MOL' tag not found\",vgc=\"'M END' not found\",wgc='\\nActelion Java MolfileCreator 2.0\\n\\n 0 0 0 0 0 0 0 V3000\\n',xgc='M V30 END CTAB',ygc=2475109711874,zgc=2475109711875,Agc=2887426572290,Bgc=2887426572291,Cgc=2887627898882,Dgc=2887627898883,Egc=2887627997186,Fgc=3437182386178,Ggc=3437182386179,Hgc=3437383712770,Igc=3437383811074,Jgc=3437652148226,Kgc=3437652377602,Lgc=4674132967426,Mgc=4674334294018,Ngc=4674334392322,Ogc=4674602729474,Pgc=4674602958850,Qgc=5086449827842,Rgc=5086449827848,Sgc=5086651154434,Tgc=5086651252738,Ugc=5086651252743,Vgc=5086919589890,Wgc=5086919688194,Xgc=5636406968322,Ygc=5636407066626,Zgc=5636675502082,$gc={l:589826,m:590112,h:4},_gc={l:589827,m:590112,h:4},ahc={l:589826,m:590160,h:4},bhc={l:589827,m:590160,h:4},chc={l:688130,m:590160,h:4},dhc={l:589826,m:590224,h:4},ehc={l:589827,m:590224,h:4},fhc={l:819203,m:590224,h:4},ghc={l:589826,m:590368,h:4},hhc={l:688130,m:590368,h:4},ihc={l:819202,m:590368,h:4},jhc={l:819208,m:590368,h:4},khc={l:589826,m:590416,h:4},lhc={l:589832,m:590416,h:4},mhc={l:688130,m:590416,h:4},nhc={l:819202,m:590416,h:4},ohc={l:589826,m:598304,h:4},phc={l:589827,m:598304,h:4},qhc={l:688130,m:598304,h:4},rhc={l:1114114,m:598304,h:4},shc={l:1212418,m:598304,h:4},thc={l:589826,m:598308,h:4},uhc={l:589826,m:688416,h:4},vhc={l:589826,m:688464,h:4},whc={l:589826,m:688720,h:4},xhc={l:688130,m:688720,h:4},yhc={l:589826,m:590112,h:288},zhc={l:589826,m:590112,h:336},Ahc={l:589826,m:688416,h:336},Bhc={l:589826,m:688464,h:336},Chc={l:688130,m:688464,h:336},Dhc={l:589826,m:590112,h:400},Ehc={l:589826,m:688416,h:400},Fhc={l:589826,m:688464,h:400},Ghc={l:688130,m:688464,h:400},Hhc={l:589826,m:819488,h:400},Ihc={l:589826,m:819536,h:400},Jhc={l:589826,m:819600,h:400},Khc={l:688130,m:819600,h:400},Lhc={l:819202,m:819600,h:400},Mhc={l:589831,m:688416,h:592},Nhc={l:589831,m:688464,h:592},Ohc={l:688135,m:688464,h:592},Phc={l:589831,m:819536,h:592},Qhc={l:688135,m:819536,h:592},Rhc={l:688135,m:819600,h:592},Shc={l:589832,m:1212704,h:592},Thc={l:589832,m:1212752,h:592},Uhc={l:688136,m:1212752,h:592},Vhc={l:589831,m:688464,h:656},Whc={l:589826,m:590112,h:8480},Xhc={l:589826,m:688416,h:8480},Yhc={l:589826,m:688464,h:8480},Zhc={l:688130,m:688464,h:8480},$hc={l:819202,m:819600,h:8480},_hc={l:688135,m:1212752,h:8480},aic={l:589832,m:1213008,h:8480},bic={l:688136,m:1213008,h:8480},cic={l:589826,m:590112,h:8484},dic={l:589826,m:590160,h:8484},eic={l:688130,m:598304,h:8484},fic=0.6262000203132629,gic=-1.3825000524520874,hic=0.33169999718666077,iic=-1.4915000200271606,jic=0.3540000021457672,kic=0.38179999589920044,lic=-0.6019999980926514,mic=0.07999999821186066,nic=-0.7379999756813049,oic='Atom-types are 64-bit numbers describing atoms and their near surrounding.',pic='Recognized atom types and their contributions are:',qic='Druglikeness predictor not properly initialized.',ric=3.009999990463257,sic=-0.17000000178813934,tic=-0.1809999942779541,uic=-0.2029999941587448,vic=2147483648,wic='any',xic='is not in a ring',yic='Excluded atoms:',zic='is aromatic',Aic='is not aromatic',Bic='has negative charge',Cic='has positive charge',Dic='exactly 1',Eic='exactly 2',Fic='less than 3',Gic='less than 4',Hic='at least 1',Iic='at least 2',Jic='at least 3',Kic='at least 4',Lic='1 or 2',Mic='less than 2',Nic='none',Oic='prohibit further substitution',Pic='require further substitution',Qic='match stereo center',Ric='is part of exclude group',Sic='Allowed atoms:',Tic={169:1},Uic='Delocalized',Vic='Coordinate (0-order)',Wic='any ring state',Xic='is any ring bond',Yic='is non-aromatic ring bond',Zic='is aromatic bond',$ic='any ring size',_ic='is in 3-membered ring',ajc='is in 4-membered ring',bjc='is in 5-membered ring',cjc='is in 6-membered ring',djc='is in 7-membered ring',ejc='Match Stereo Configuration',fjc='Is atom bridge between',gjc='One electron (duplet)',hjc='Two electrons (triplet)',ijc='Two electrons (singulet)',jjc='Atom Properties',kjc=-8346432,ljc='/html/editor/editor.html',mjc='Structure Editor Help',njc='Dummy look and feel',ojc='Substance Graphite',pjc='Radiance Graphite',qjc='Radiance Night',rjc=0.6499999761581421,sjc=0.3499999940395355,tjc=-2.6179938779914944,ujc=2.6179938779914944,vjc='editorButtons.png',wjc='esrButtons.png',xjc=0.800000011920929,yjc=-1774190527,zjc=-1438646166,Ajc=-1433403286,Bjc=-1431655766,Cjc=-1448432982,Djc=1073741866,Ejc=1073741930,Fjc='MMFF94',Gjc='MMFF94s',Hjc='117\\nint,int,int,int,float\\n0,2,0,0,0.020\\n1,2,1,2,0.030\\n1,2,2,2,0.027\\n1,2,2,3,0.026\\n1,2,2,5,0.013\\n1,2,2,37,0.032\\n2,2,2,5,0.013\\n2,2,3,5,0.012\\n2,2,5,5,0.006\\n2,2,5,6,0.027\\n2,2,5,37,0.017\\n2,2,5,40,0.012\\n2,2,5,41,0.008\\n0,3,0,0,0.130\\n1,3,1,7,0.146\\n1,3,2,7,0.138\\n1,3,3,7,0.134\\n1,3,5,7,0.122\\n1,3,6,7,0.141\\n1,3,7,10,0.129\\n1,3,7,37,0.138\\n2,3,5,7,0.113\\n2,3,5,9,0.081\\n2,3,6,7,0.127\\n2,3,7,10,0.116\\n3,3,5,7,0.113\\n3,3,6,7,0.127\\n5,3,5,7,0.103\\n5,3,5,9,0.074\\n5,3,5,54,0.078\\n5,3,6,7,0.119\\n5,3,7,10,0.102\\n5,3,9,40,0.067\\n6,3,7,37,0.127\\n7,3,10,10,0.113\\n7,3,20,20,0.151\\n9,3,40,40,0.057\\n0,8,0,0,0.000\\n0,10,0,0,0.015\\n1,10,1,3,0.015\\n1,10,3,6,0.015\\n1,10,3,28,0.015\\n3,10,3,28,0.015\\n3,10,28,28,0.015\\n0,17,0,0,0.000\\n0,26,0,0,0.000\\n0,30,0,0,0.010\\n5,30,20,30,0.008\\n0,37,0,0,0.035\\n1,37,37,37,0.040\\n2,37,37,37,0.031\\n3,37,37,37,0.027\\n5,37,37,37,0.015\\n5,37,37,38,0.046\\n5,37,37,63,0.008\\n5,37,37,64,0.012\\n5,37,37,69,0.016\\n5,37,38,38,0.084\\n6,37,37,37,0.048\\n15,37,37,37,0.025\\n37,37,37,40,0.046\\n0,39,0,0,0.020\\n1,39,63,63,0.012\\n23,39,63,63,-0.014\\n23,39,63,65,0.021\\n23,39,65,65,0.062\\n0,40,0,0,0.030\\n1,40,28,37,0.030\\n2,40,28,28,0.030\\n3,40,28,28,0.030\\n28,40,28,37,0.030\\n0,41,0,0,0.180\\n1,41,32,32,0.178\\n2,41,32,32,0.161\\n5,41,32,32,0.158\\n0,43,0,0,0.000\\n0,45,0,0,0.150\\n0,49,0,0,0.000\\n50,49,50,50,0.000\\n0,54,0,0,0.020\\n1,54,3,36,0.016\\n3,54,36,36,0.018\\n0,55,0,0,0.020\\n1,55,36,57,0.020\\n36,55,36,57,0.020\\n0,56,0,0,0.020\\n1,56,36,57,0.020\\n36,56,36,57,0.020\\n0,57,0,0,0.080\\n5,57,55,55,0.038\\n56,57,56,56,0.158\\n0,58,0,0,0.025\\n0,63,0,0,0.050\\n5,63,39,64,0.019\\n5,63,39,66,0.068\\n5,63,44,64,0.014\\n5,63,44,66,0.055\\n5,63,59,64,0.033\\n5,63,59,66,0.085\\n37,63,39,64,0.010\\n0,64,0,0,0.040\\n5,64,63,64,0.006\\n5,64,63,66,0.043\\n5,64,64,65,0.052\\n5,64,65,66,0.094\\n37,64,63,64,-0.01\\n0,67,0,0,0.070\\n0,69,0,0,0.070\\n32,69,37,37,0.067\\n0,73,0,0,0.000\\n0,78,0,0,0.045\\n5,78,78,81,0.046\\n0,80,0,0,0.080\\n5,80,81,81,0.057\\n0,81,0,0,0.025\\n36,81,78,80,0.016\\n0,82,0,0,0.000\\n',Ijc={217:1,4:1,5:1,8:1},Jjc='div',Kjc='position:absolute;left:',Ljc='px;',Mjc='rgba(',Njc=4278190080,Ojc='px',Pjc={224:1},Qjc={408:1,26:1},Rjc={409:1,26:1},Sjc='position:absolute;width:',Tjc='px;height:',Ujc={47:1,4:1,5:1,8:1},Vjc=22.5,Wjc=21.176470588235293,Xjc={226:1,26:1},Yjc={227:1,26:1},Zjc={274:1,26:1},$jc={395:1,26:1},_jc='true',akc='data-idcode',bkc='MutationObserver',ckc='Parse exception ',dkc='error setting idcode data ',ekc={272:1,26:1},fkc={113:1,26:1},gkc='data:image/gif;base64,R0lGODlhHABGANUAAISChPLx8ubl5uDf4NLR0s/OzwAA//Hx8tHR0svLzMXFxuvs7OXm5t/g4MvMzAD/APf49+vs6+Xm5dfY18vMy/j49/Ly8enp6ODg38bGxdbTzv8AAPj39+zr68bFxcC/v/////39/fr6+vf39/T09PHx8e7u7uzs7Obm5uPj4+Dg4N3d3dra2tfX19TU1NHR0czMzMvLy8nJycbGxsPDw8DAwL29vbq6uqqqqiEhIQAAAAAAAAAAAAAAAAAAAAAAACwAAAAAHABGAAAG/0CQcEgsGo0AkGbJbDqfzqQGQK1ar1iqUgrIeb/gsFi33eZAp7R6zV6Tp+bTzfahzWSUAsLVYq02KQIXEThvXDknNjU0GTIxBS98fhuUFwsmhWVTiIsKjpCSf5SUJhaZcJsnNJ4OeqEqo6Mkp4cnHp+RE36wsaO0cTIwrn0rDb2jIr+pCQUEoQPHlCIhyl0nw34DKccc0yDViLl+GNu9I97fhnGv5bHdIUPgJ8Qq5To6GyTn8PHqqbspJFC6pw9dP03Wit27t2GhDngO0yFEVI9BQx0H7omIeBCVtRQoHJK4F+IeiIVC5Am4Z+IeBJMmhZiUd8Ghjo0oOco7YeIACf8IBo9I9IgIh9GjSJMi9ddFjFOnTM+0mdomqhw6dvBgW2Eg0CB5ihjhCmWgrCVMVjuNJVa2bSl5q2S02kOvbdtZVm89ErdChV278oJtbfC3bTKrzJwRG1C47DR5W7UVfje0Fl9yhfeltMpuskF59FL8Lchv88QTACXYJV1EXrFAq1GenGm1YlufJGGSqRwH5IWyAfTpnm2a6AlBHUyU+ImTeEyaPJdX8Cb7uVWePoGWFipPqXelUZ+K/xIVDdXzJ6zOqXMnD10/D7wSshq20d5QD/Kflaf2PrH8AL5lVVxzvQIggHidphcouvR14IGBCfNeMQ8CeNhpiT1TYX6PWRVvWQoVUibPZSA+qBlvqbAT4mdWhfbgSLKhaE1qB8JY0m4yIvKaADUCFWOOJ1QEoE/n/Aikb/kFVyQZNgGJnHLM3SiTdaddEB0J0/FjE22nYRelUB3V8t2YRjG15Zlo+gPmmkWgAsWbcMKRxZx0VhEEADs=',hkc='data:image/gif;base64,R0lGODlhHABGANUAAISChH59fnt6e3h3eHRzdMTDxLi3uJiXmAAAw3d3eLe3uKamp5eXmI+PkIaGh4ODhH1+fsPExLe4uJGSkgDDAM/Qz8DBwHh4d76+vZ6enZiYl4qKidbTzsMAANDPz8fGxqSjo5KRkYqJiYSDg////9LS0svLy76+vru7u7i4uLW1tbKysq+vr6ysrKmpqaOjo6GhoZubm5iYmJWVlZKSko+Pj4yMjImJiYSEhIODg4CAgHh4eG9vb19fXyEhIQAAACwAAAAAHABGAAAG/0CScEgsGo0AEmfJbDqfziQHQK1ar1iqUgrweb/gsPi33YrPaF956qXx3vC4PL7u+t4EQkIQ0AEcNzY1NB0HMRkwPXVePHk7fDojgIKEHR2IL4pTZncEAwIQOjkOIpSWpyALmlyMF5A4k4Mzp6cuq5w8kA+xNLO0p7dsd6GjgbK/pyzBdjyRvL7ILCvLjLvGEzMayC3SKtR3DhuCITMy290p3zzGvQznKyoKKOqU2ZY/Px0u3PAGKCfqGvSSEePej33d/J2woK4XPnwdHv6AJ7GAunIF8S3Ax0IiBgsFPqjTEEOiC3wr8KF4+MGEupI/XuBrgU8FvoUR8LlcdCeDxP8fHR9ikGjCgzoYLxYghCcBxceQJkxUKKGuh9WrWLNi5Zmmq5pNwtzMGSuHJx49kP6wQ2AIkTpHkCStRYAA09tHxEhRoss3lTpXfWCxm8GXry2zup4VLqwu7+DFfJWZdfYYMgJp6qwJwqYBMj9vZsONK+cZnbrBDErDk0dPVufCS1UoDDgwBuzPChmarQ37oYoUDy2axchXKUqV+EKOPERXKc0fNn+cwNfyJSbnQQ3gs6BzJ1hmiFLFfghSp1GzSLEzdQqypVSqZrXK18rVKxqeYsnqN9sIbR+1lFDQViJmwdWHXAFSQIFdBX6SVymDKCihX2YBpoNg9Ugo4WHfMZKO2GAaatiYKM+EKKFkHd5BWYYmUoCZWZrVwJmJn6kjWg3kyECjaWahtuNq85hVjwYhnvTQbGYJhJGGRqb0wz+6pchDbUxy8xB7wkm5pILYXfmUSGaRlAGXCOEDHFHWpbeUStN1p0546v32Ez7nSanmZ019GdVUy/xwx3yAWrXGEYQWChYUiCa6SRaMNlpFEAA7',ikc=21.333333333333332,jkc={260:1,26:1},kkc='width',lkc='height',mkc='offsetHeight',nkc='offsetWidth',okc='Null widget handle. If you are creating a composite, ensure that initWidget() has been called.',pkc='Style names cannot be empty',qkc='aria-hidden',rkc={45:1,40:1,44:1,43:1,46:1,38:1,36:1},skc={45:1,40:1,44:1,43:1,46:1,38:1,36:1,32:1},tkc='left',ukc='visibility',vkc='hidden',wkc='visible',xkc='popupContent',ykc=1281818470,zkc={25:1},Akc={182:1,25:1},Bkc=23.333333333333332,Ckc=4294967295,Dkc='font: 12px sans-serif',Ekc='cellPadding',Fkc='Cancel',Gkc='excluded atoms:',Hkc='allowed atoms:',Ikc='200px',Jkc={349:1,26:1},Kkc='disabled',Lkc='px Helvetica',Mkc='Helvetica',Nkc='canvas',Okc='undefined',Pkc=0.08726646502812703,Qkc=4278190335,Rkc=4.9E-324,Skc={77:1,73:1,4:1,9:1,5:1,8:1},Tkc=0.003921568859368563,Ukc='CENTER',Vkc='position',Wkc='absolute',Xkc='CSS1Compat',Ykc={42:1,33:1,4:1,19:1,22:1},Zkc={39:1,33:1,4:1,19:1,22:1},$kc={33:1,95:1,4:1,19:1,22:1},_kc={62:1,4:1,19:1,22:1},alc='load',blc='touchcancel',clc='touchstart',dlc={156:1,4:1,16:1,29:1},elc='Too many percent/per mille characters in pattern \"',flc=1048575,glc=17592186044416,hlc=1000000000,ilc=-17592186044416,jlc=16777216,klc='__gwtLastUnhandledEvent',llc='__uiObjectID',mlc='cellSpacing',nlc='Column index: ',olc=', Column size: ',plc='Row index: ',qlc=', Row size: ',rlc='overflow',slc={45:1,40:1,44:1,43:1,46:1,203:1,38:1,36:1,32:1},tlc={99:1,4:1,19:1,22:1},ulc=5.56,vlc=11.12,wlc=13.34,xlc=14.44,ylc=0.3010299956639812,zlc='BigInteger divide by zero',Alc={l:0,m:0,h:524288},Blc={19:1,144:1},Clc={160:1},Dlc={32:1,56:1,61:1,142:1},Elc={4:1,32:1,56:1,100:1,61:1,115:1,181:1},Flc='delete',Glc=15525485,Hlc=5.960464477539063E-8,Ilc={4:1,160:1},Jlc={4:1,19:1,22:1,102:1},Klc='Invalid UTF8 sequence',Llc=0.20000000298023224,Mlc=' distance:',Nlc='gGP`@dfyjidNcGI[WQCP`<',Olc={68:1};var Q9b={};var R9b={};var S9b={};var T9b={};var U9b={};var V9b={};var W9b={};var X9b={};var Y9b={};var Z9b={};var $9b={};var _9b={};var aac={};var bac={};var cac={};var dac={};var eac={};var fac={};var gac={};var hac={};var iac={};var jac={};var kac={};var lac={};var mac={};var nac={};var oac={};var pac={};var qac={};var rac={};var sac={};var tac={};var uac={};var vac={};var wac={};var xac={};var yac={};var zac={};var Aac={};var Bac={};var Cac={};var Dac={};var Eac={};var Fac={};var Gac={};var Hac={};var Iac={};var Jac={};var Kac={};var Lac={};var Mac={};var Nac={};var Oac={};var Pac={};var Qac={};var Rac={};var Sac={};var Tac={};var Uac={};var Vac={};var Wac={};var Xac={};var _;var TJb;var NJb;var aJb=-1;Q9b.bJb=function bJb(){};function SJb(a,b){typeof window===Yac&&typeof window['$gwt']===Yac&&(window['$gwt'][a]=b)}\nfunction RJb(b,c,d,e){Q9b.QJb();var f=NJb;$moduleName=c;$moduleBase=d;aJb=e;function g(){for(var a=0;a=0;d--){if(R9b.hUb(a[d].d,b)||R9b.hUb(a[d].d,c)){a.length>=d+1&&U9b.E5b(a).splice(0,d+1);break}}return a};T9b.Akb=function Akb(a){var b=/function(?:\\s+([\\w$]+))?\\s*\\(/;var c=b.exec(a);return c&&c[1]||Zac};T9b.Bkb=function Bkb(a){T9b.wkb();return a&&a[$ac]?a[$ac]:[]};T9b.Ckb=function Ckb(a){T9b.wkb();return a.name||(a.name=T9b.Akb(a.toString()))};T9b.Dkb=function Dkb(a){T9b.wkb();return parseInt(a)||-1};T9b.Ekb=function Ekb(a){T9b.wkb();var b=a.backingJsObject;if(b&&b.stack){var c=b.stack;var d=b+_ac;c.substring(0,d.length)==d&&(c=c.substring(d.length));return c.split(_ac)}return []};T9b.Fkb=function Fkb(){if(Error.stackTraceLimit>0){$wnd.Error.stackTraceLimit=Error.stackTraceLimit=64;return true}return 'stack' in new Error};WJb(711,1,{});T9b.Gkb=function Gkb(){};WJb(432,711,{},T9b.Gkb);_.ae=function Hkb(a){var b={};var c=[];a[$ac]=c;var d=arguments.callee.caller;while(d){var e=T9b.Ckb(d);c.push(e);var f=':'+e;var g=b[f];if(g){var h,i;for(h=0,i=g.length;h1?(b.c=R9b.DSb(this,a-1)):(b.c=this);return b};_.se=function CSb(){R9b.rSb(this);return this.b};_.te=function ESb(){return R9b.sSb(this)};_.ue=function GSb(){R9b.rSb(this);return this.j};_.ve=function ISb(){return R9b.tSb(this)};_.we=function JSb(){return R9b.uSb(this)};_.pb=function MSb(){return ((this.f&2)!=0?'interface ':(this.f&1)!=0?'':'class ')+(R9b.rSb(this),this.n)};_.f=0;_.i=0;var pSb=1;R9b.QSb=function QSb(a){return R9b.hUb(dbc,typeof(a))||twb(a,$wnd.java.lang.Number$impl)};R9b.RSb=function RSb(a){R9b.PSb==null&&(R9b.PSb=new RegExp('^\\\\s*[+-]?(NaN|Infinity|((\\\\d+\\\\.?\\\\d*)|(\\\\.\\\\d+))([eE][+-]?\\\\d+)?[dDfF]?)\\\\s*$'));if(!R9b.PSb.test(a)){throw eJb(new R9b.WTb(hbc+a+'\"'))}return parseFloat(a)};R9b.SSb=function SSb(a,b,c){var d,e,f,g,h;if(a==null){throw eJb(new R9b.WTb(ibc))}f=U9b.E5b(a).length;g=f>0&&(U9b.z5b(0,U9b.E5b(a).length),U9b.E5b(a).charCodeAt(0)==45||(U9b.z5b(0,U9b.E5b(a).length),U9b.E5b(a).charCodeAt(0)==43))?1:0;for(d=g;dc){throw eJb(new R9b.WTb(hbc+a+'\"'))}return h};R9b.TSb=function TSb(a){return rwb(a)?R9b.XSb(a):a.xe()};R9b.USb=function USb(a){return rwb(a)?R9b._Sb(a):a.ye()};WJb(153,1,{4:1,153:1});R9b.VSb=function VSb(a,b){return bTb(U9b.G5b((U9b.s5b(a),a)),U9b.G5b((U9b.s5b(b),b)))};R9b.WSb=function WSb(a,b){return R9b.VSb(a,b)};R9b.XSb=function XSb(a){return U9b.G5b((U9b.s5b(a),a))};R9b.YSb=function YSb(a,b){return U9b.s5b(a),xwb(a)===xwb(b)};R9b.ZSb=function ZSb(){return Q9b.OGb};R9b.$Sb=function $Sb(a){return ywb(U9b.G5b((U9b.s5b(a),a)))};\nR9b._Sb=function _Sb(a){return ywb(U9b.G5b((U9b.s5b(a),a)))};function aTb(a){return R9b.hUb(dbc,typeof(a))}\nfunction bTb(a,b){if(ab){return 1}if(a==b){return a==0?bTb(1/a,1/b):0}return isNaN(a)?isNaN(b)?0:1:-1}\nfunction cTb(a){if(isNaN(a)){return {l:0,m:0,h:524160}}return U9b.A5b(a)}\nkwb={4:1,19:1,430:1,153:1};R9b.dB=function dB(a){a.i=ivb(Q9b.bHb,abc,106,0,0,1)};R9b.eB=function eB(a,b){U9b.t5b(b,'Cannot suppress a null exception.');U9b.m5b(b!=a,'Exception can not suppress itself.');if(a.g){return}a.j==null?(a.j=qvb(cvb(Q9b.gHb,1),abc,29,0,[b])):(a.j[a.j.length]=b)};R9b.fB=function fB(a){T9b.xkb(a)};R9b.gB=function gB(a){return T9b.ykb(a)};R9b.hB=function hB(a){if(a.k){a.backingJsObject!==jbc&&a.mc();a.i=null}return a};R9b.iB=function iB(a){return a.e};R9b.jB=function jB(d,b){if(b instanceof Object){try{b.__java$exception=d;if(navigator.userAgent.toLowerCase().indexOf('msie')!=-1&&$doc.documentMode<9){return}var c=d;Object.defineProperties(b,{cause:{get:function(){var a=c.kc();return a&&a.ic()}},suppressed:{get:function(){return c.jc()}}})}catch(a){}}};R9b.kB=function kB(a,b,c){var d,e,f,g,h;String.fromCharCode(10);R9b.lB(a);for(e=(a.j==null&&(a.j=ivb(Q9b.gHb,abc,29,0,0,1)),a.j),f=0,g=e.length;f0){e=i.length;while(e>0&&i[e-1]==''){--e}ed&&(U9b.z5b(b-1,U9b.E5b(a).length),U9b.E5b(a).charCodeAt(b-1)<=32)){--b}return d>0||b=obc){b=55296+(a-obc>>10&1023)&pbc;c=56320+(a-obc&1023)&pbc;return String.fromCharCode(b)+(''+String.fromCharCode(c))}else{return String.fromCharCode(a&pbc)}}\nR9b.AUb=function AUb(a){var b,c,d,e,f;f=new X9b.P2b;for(c=a,d=0,e=c.length;db){throw eJb(new R9b.fTb(rbc+a+sbc+b))}if(a<0||b>c){throw eJb(new R9b.KRb(rbc+a+tbc+b+ubc+c))}};U9b.o5b=function o5b(a){if(a<0){throw eJb(new R9b.RTb('Negative array size: '+a))}};U9b.p5b=function p5b(a,b){if(a!=b){throw eJb(new X9b.P0b)}};U9b.q5b=function q5b(a){if(!a){throw eJb(new X9b._1b)}};U9b.r5b=function r5b(a,b){if(a<0||a>=b){throw eJb(new R9b.IRb(vbc+a+wbc+b))}};U9b.s5b=function s5b(a){if(a==null){throw eJb(new R9b.STb)}return a};U9b.t5b=function t5b(a,b){if(a==null){throw eJb(new R9b.UTb(b))}};U9b.u5b=function u5b(a,b){if(a<0||a>b){throw eJb(new R9b.IRb(vbc+a+wbc+b))}};U9b.v5b=function v5b(a,b,c){if(a<0||b>c){throw eJb(new R9b.IRb(rbc+a+tbc+b+', size: '+c))}if(a>b){throw eJb(new R9b.fTb(rbc+a+sbc+b))}};U9b.w5b=function w5b(a){if(!a){throw eJb(new R9b.gTb)}};U9b.x5b=function x5b(a){if(!a){throw eJb(new R9b.hTb('Unable to add element to queue'))}};U9b.y5b=function y5b(a,b,c){if(a<0||b>c||b=b){throw eJb(new R9b.UUb(vbc+a+wbc+b))}};U9b.A5b=function A5b(a){var b,c;b=new ArrayBuffer(8);U9b.E5b(new Float64Array(b))[0]=a;c=U9b.E5b(new Uint32Array(b));return U9b.H5b(c[0]|0,c[1]|0)};U9b.B5b=function B5b(a,b){return a[b]};U9b.C5b=function C5b(a){return a===undefined};U9b.D5b=function D5b(a){return a>>>0};U9b.E5b=function E5b(a){return a};U9b.F5b=function F5b(a){return a};U9b.G5b=function G5b(a){return a};WJb(710,1,{});Q9b._Gb=ySb(1);Q9b.LCb=ySb(0);Q9b.UCb=ySb(711);Q9b.RCb=ySb(432);Q9b.TCb=ySb(712);Q9b.SCb=ySb(433);Q9b.LGb=ySb(410);Q9b.NGb=ySb(261);Q9b.$Gb=ySb(153);Q9b.OGb=ySb(430);Q9b.gHb=ySb(29);Q9b.QGb=ySb(16);Q9b.aHb=ySb(58);Q9b.TGb=ySb(59);Q9b.VGb=ySb(161);Q9b.YGb=ySb(81);Q9b.fHb=ySb(2);Q9b.eHb=ySb(289);Q9b.vIb=ySb(709);Q9b.wIb=ySb(710);V9b.Sc=function Sc(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,A,B,C,D,F,G,H,I,J,K,L,M,N,O,P,Q;this.c=a.length;this.d=a[0].length;G=$wnd.Math.min(this.c,this.d);this.e=ivb(Q9b.Bwb,xbc,6,$wnd.Math.min(this.c+1,this.d),15,1);this.a=gvb(Q9b.Bwb,[abc,xbc],[12,6],15,[this.c,G],2);this.b=gvb(Q9b.Bwb,[abc,xbc],[12,6],15,[this.d,this.d],2);e=ivb(Q9b.Bwb,xbc,6,this.d,15,1);Q=ivb(Q9b.Bwb,xbc,6,this.c,15,1);D=$wnd.Math.min(this.c-1,this.d);F=$wnd.Math.max(0,$wnd.Math.min(this.d-2,this.c));for(v=0;v<$wnd.Math.max(D,F);v++){if(v=0;w--){if(this.e[w]!=0){for(p=w+1;p=0;A--){if(A0){for(u=H-2;u>=-1;u--){if(u==-1){break}if($wnd.Math.abs(e[u])<=h*($wnd.Math.abs(this.e[u])+$wnd.Math.abs(this.e[u+1]))){e[u]=0;break}}if(u==H-2){B=4}else{for(C=H-1;C>=u;C--){if(C==u){break}P=(C!=H?$wnd.Math.abs(e[C]):0)+(C!=u+1?$wnd.Math.abs(e[C-1]):0);if($wnd.Math.abs(this.e[C])<=h*P){this.e[C]=0;break}}if(C==u){B=3}else if(C==H-1){B=1}else{B=2;u=C}}++u;switch(B){case 1:{i=e[H-2];e[H-2]=0;for(p=H-2;p>=u;p--){P=V9b.Tc(this.e[p],i);d=this.e[p]/P;M=i/P;this.e[p]=P;if(p!=u){i=-M*e[p-1];e[p-1]=d*e[p-1]}for(k=0;k=this.e[u+1]){break}P=this.e[u];this.e[u]=this.e[u+1];this.e[u+1]=P;if(u$wnd.Math.abs(b)){c=b/a;c=$wnd.Math.abs(a)*$wnd.Math.sqrt(1+c*c)}else if(b!=0){c=a/b;c=$wnd.Math.abs(b)*$wnd.Math.sqrt(1+c*c)}else{c=0}return c};WJb(253,1,ybc,V9b.Sc);_.c=0;_.d=0;Q9b.Fwb=ySb(253);W9b.Vc=function Vc(){W9b.Vc=YJb;W9b.Uc=qvb(cvb(Q9b.Dwb,1),zbc,6,15,[0,Abc,14286847,13402367,12779264,16758197,9474192,3166456,16715021,9494608,11789301,11230450,9109248,12560038,15780000,16744448,16777008,2093087,8442339,9388244,4062976,15132390,12567239,10921643,9083335,10255047,14706227,15765664,5296208,13140019,8224944,12750735,6721423,12419299,16752896,10889513,6076625,7351984,Bbc,9764863,9756896,7586505,5551541,3907230,2396047,687500,27013,12632256,16767375,10909043,6717568,10380213,13924864,9699476,4366000,5707663,51456,7394559,16777159,14286791,13107143,10747847,9437127,6422471,4587463,3211207,2097095,65436,58997,54354,48952,43812,5096191,5089023,2200790,2522539,2516630,1528967,13684960,16765219,12105936,10900557,5724513,10375093,11230208,7688005,4358806,4325478,32000,7384058,47871,41471,36863,33023,27647,5528818,7888099,9064419,10565332,11739092,11739066,11734438,12389767,13041766,13369433,13697103,14221381,14680120,15073326,15400998,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,13158600,1334015,56540,15075850,15132160,56540,15075850,15461355,8553170,1016335,1016335,1334015,15132160,3289770,14456450,16422400,16422400,11819700,3289770,1016335])};W9b.Wc=function Wc(a){a.w=new iac.fM};W9b.Xc=function Xc(a){var b,c;if((a.H&32)!=0)return;c=W9b.Gv(a.M);if(c!=null){if(a.A.a==0&&a.A.b==0){b=a.S.c*W9b.Fl(a.M);a.w=W9b.Ud(a);W9b.hd(a,b);W9b.Pd(a,null,b,0)}a.Db(ywb(a.B));a.M.O!=1&&W9b.Qd(a,448);a.tb(c,a.A.a,a.A.b+Cbc*a.B)}};W9b.Yc=function Yc(a,b){return a==null?b:b==null?a:a+','+b};W9b.Zc=function Zc(a,b){W9b.hi(b,a.S);W9b.ki(b,a.w);W9b.ji(b,a.A)};W9b.$c=function $c(a){var b;b=a.S.c*(a.r!=0?a.r:W9b.Fl(a.M));a.Z=b*0.06;a.U=b*0.15;a.T=b*0.38;a.X=b*0.47;a.Y=ywb(b*a.K*0.6+0.5);a.W=b*0.12;a.$=b*0.4;a.B=b*0.5+0.5};W9b._c=function _c(a){var b,c;a=gJb(a,Dbc);for(c=0;c<(hac.VI(),hac.UI).length;c++)if(qJb(a,hac.UI[c]))return hac.TI[c];b=new R9b.TUb('R');BJb(gJb(a,Ebc),0)&&(b.a+='0',b);BJb(gJb(a,Fbc),0)&&(b.a+='3',b);BJb(gJb(a,Gbc),0)&&(b.a+='4',b);BJb(gJb(a,Hbc),0)&&(b.a+='5',b);BJb(gJb(a,Ibc),0)&&(b.a+='6',b);BJb(gJb(a,Jbc),0)&&(b.a+='7',b);BJb(gJb(a,Kbc),0)&&(b.a+='8',b);return b.a};W9b.ad=function ad(a,b,c,d){var e,f;e=new W9b.fe;f=new W9b.fe;e.a=b.a;e.c=b.c;e.b=(b.a+b.b)/2;e.d=(b.c+b.d)/2;f.a=e.b;f.c=e.d;f.b=b.b;f.d=b.d;if(W9b.Ld(a,e)){W9b.Qd(a,a.p[c]);a.qb(e)}if(W9b.Ld(a,f)){W9b.Qd(a,a.p[d]);a.qb(f)}W9b.Qd(a,a.R)};W9b.bd=function bd(a,b,c,d){var e,f,g,h,i;h=(b.b-b.a)/10;i=(b.d-b.c)/10;e=new W9b.fe;if(W9b.pm(a.M,W9b.Ho(a.M,c,d))){f=-3;g=-3}else{f=a.p[c];g=a.p[d]}W9b.Qd(a,f);e.a=b.a;e.c=b.c;e.b=b.a+h*2;e.d=b.c+i*2;a.qb(e);e.a=b.a+h*4;e.c=b.c+i*4;e.b=b.a+h*5;e.d=b.c+i*5;a.qb(e);W9b.Qd(a,g);e.a=b.a+h*5;e.c=b.c+i*5;e.b=b.a+h*6;e.d=b.c+i*6;a.qb(e);e.a=b.a+h*8;e.c=b.c+i*8;e.b=b.b;e.d=b.d;a.qb(e);W9b.Qd(a,a.R)};W9b.cd=function cd(a,b,c){a.ub(b-a.W/2,c-a.W/2,a.W)};W9b.dd=function dd(a,b,c,d){if(W9b.pm(a.M,W9b.Ho(a.M,c,d))){W9b.Qd(a,-3);a.qb(b);W9b.Qd(a,a.R)}else if(a.p[c]!=a.p[d]){W9b.ad(a,b,c,d)}else if(a.p[c]!=0){W9b.Qd(a,a.p[c]);a.qb(b);W9b.Qd(a,a.R)}else{a.qb(b)}};W9b.ed=function ed(a,b,c,d,e,f,g){g.a=b.a+e;g.c=b.c+f;g.b=b.b+e;g.d=b.d+f;W9b.dd(a,g,c,d)};W9b.fd=function fd(a,b,c,d){var e,f,g,h,i,j,k,l,m,n,o,p;l=b.b-b.a;o=b.d-b.c;i=$wnd.Math.sqrt(l*l+o*o);j=2*KJb(rJb($wnd.Math.round(i/(4*a.Z))));m=l/(j-1);p=o/(j-1);if(W9b.pm(a.M,W9b.Ho(a.M,c,d))){e=-3;f=-3}else{e=a.p[c];f=a.p[d]}k=b.a-a.Z/2;n=b.c-a.Z/2;W9b.Qd(a,e);for(h=0;h<(j/2|0);h++){a.ub(k,n,a.Z);k+=m;n+=p}W9b.Qd(a,f);for(g=0;g<(j/2|0);g++){a.ub(k,n,a.Z);k+=m;n+=p}W9b.Qd(a,a.R)};W9b.gd=function gd(a,b,c,d){var e,f,g,h,i,j,k,l,m,n,o,p,q,r;i=(b.c-b.d)/9;n=(b.b-b.a)/9;j=b.b+i;o=b.d+n;k=b.b-i;p=b.d-n;l=(b.a+j)/2;q=(b.c+o)/2;m=(b.a+k)/2;r=(b.c+p)/2;g=new iac._L(3);h=new iac._L(4);iac.WL(g,b.a,b.c);iac.WL(g,l,q);iac.WL(g,m,r);iac.WL(h,m,r);iac.WL(h,l,q);iac.WL(h,j,o);iac.WL(h,k,p);if(W9b.pm(a.M,W9b.Ho(a.M,c,d))){e=-3;f=-3}else{e=a.p[c];f=a.p[d];if(a.M.O!=1){f=W9b.kd(a,c);e==W9b.ol(a.M,c)&&(e=f)}}W9b.Qd(a,e);a.sb(g);W9b.Qd(a,f);a.sb(h);W9b.Qd(a,a.R)};W9b.hd=function hd(a,b){var c,d;for(d=0;d0?(f=Nbc):(f=Obc);o=W9b.Jl(a.M,b,c);for(k=0;k0){iNbc&&(i=Nbc);i<0.523598776&&(i=0.523598776);if(i<=f){f=i;j=a.U*$wnd.Math.tan(f-Rbc)/2;e.a=-(j*$wnd.Math.sin(h));e.b=-(j*$wnd.Math.cos(h))}}else{i>=Qbc&&(m=true);i5.759586531&&(i=5.759586531);if(i>=f){f=i;j=a.U*$wnd.Math.tan(4.712388981-f)/2;e.a=-(j*$wnd.Math.sin(h));e.b=-(j*$wnd.Math.cos(h))}}}return m};W9b.ud=function ud(a,b,c,d){var e;if(b==0){c<0?(d.a=a.U):(d.a=-a.U);d.b=0;return}e=$wnd.Math.atan(c/b);b<0&&(e+=Qbc);d.a=-(a.U*$wnd.Math.sin(e));d.b=a.U*$wnd.Math.cos(e)};W9b.vd=function vd(a,b,c,d){var e,f,g,h,i,j,k,l,m,n,o,p;e=new W9b.fe;i=new W9b.fe;k=new iac.TL;j=new iac.TL;g=W9b.Kl(a.M,0,c);h=W9b.Kl(a.M,1,c);if(d){m=b.a;b.a=b.b;b.b=m;m=b.c;b.c=b.d;b.d=m;n=g;g=h;h=n}if(!W9b.Ld(a,b))return;if(W9b.Rp(a.M,c)){e.a=b.a;e.c=b.c;e.b=b.b;e.d=b.d;l=d?-W9b.mp(a.M,c):W9b.mp(a.M,c);l==0&&(l=1);W9b.ud(a,b.b-b.a,b.d-b.c,k);if(l>0){i.a=b.a+k.a;i.c=b.c+k.b;i.b=b.b+k.a;i.d=b.d+k.b;if(W9b.td(a,g,h,1,j)||W9b.Ko(a.M,g)>1){i.a+=j.a+k.b;i.c+=j.b-k.a}}else{i.a=b.a-k.a;i.c=b.c-k.b;i.b=b.b-k.a;i.d=b.d-k.b;if(W9b.td(a,g,h,-1,j)||W9b.Ko(a.M,g)>1){i.a+=j.a+k.b;i.c+=j.b-k.a}}W9b.Vl(a.M,c)==386&&W9b.Kd(e,i);W9b.Ld(a,e)&&W9b.dd(a,e,g,h);W9b.Vl(a.M,c)==64?W9b.Ld(a,i)&&W9b.bd(a,i,g,h):W9b.Ld(a,i)&&W9b.dd(a,i,g,h)}else{W9b.ud(a,b.b-b.a,b.d-b.c,k);o=k.a/2;p=k.b/2;f=false;e.a=b.a+o;e.c=b.c+p;e.b=b.b+o;e.d=b.d+p;if(W9b.Ko(a.M,g)>1){if(W9b.td(a,g,h,1,j)){e.a+=j.a;e.c+=j.b;if(W9b.Ko(a.M,g)==2){if(j.a!=0||j.b!=0){e.a+=k.b;e.c-=k.a}}}else{a.o[g]=new iac.UL(e.a,e.c)}}i.a=b.a-o;i.c=b.c-p;i.b=b.b-o;i.d=b.d-p;if(W9b.Ko(a.M,g)>1){if(W9b.td(a,g,h,0,j)){i.a+=j.a;i.c+=j.b;if(W9b.Ko(a.M,g)==2){if(j.a!=0||j.b!=0){i.a+=k.b;i.c-=k.a}}}else{a.o[g]=new iac.UL(i.a,i.c);f=true}}W9b.Vl(a.M,c)==386&&W9b.Kd(e,i);if(W9b.Vl(a.M,c)==64){if(f){W9b.bd(a,e,g,h);W9b.dd(a,i,g,h)}else{W9b.dd(a,e,g,h);W9b.bd(a,i,g,h)}}else{W9b.dd(a,e,g,h);W9b.dd(a,i,g,h)}}};W9b.wd=function wd(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o;k=a.R;l=a.G;if((a.H&Sbc)!=0){a.R=-6;a.G=Tbc;W9b.Qd(a,1)}a.o=ivb(Q9b.qzb,kbc,35,a.M.q,0,1);for(i=0;i1)&&(W9b.Nl(a.M,h)==1?(e=W9b.Sl(a.M,h)==2?'E':W9b.rm(a.M,h)?'p':'P'):(e=W9b.Sl(a.M,h)==2?'Z':W9b.rm(a.M,h)?'m':'M')):(e='?');if(e!=null){a.Db((a.Y*2+1)/3|0);W9b.Qd(a,W9b.pm(a.M,h)?-3:a.M.O==1||(a.H&Ubc)!=0?a.R:448);c=W9b.Kl(a.M,0,h);d=W9b.Kl(a.M,1,h);n=(W9b.ni(a.S,W9b.Bl(a.M,c))+W9b.ni(a.S,W9b.Bl(a.M,d)))/2;o=(W9b.oi(a.S,W9b.Cl(a.M,c))+W9b.oi(a.S,W9b.Cl(a.M,d)))/2;f=(W9b.ni(a.S,W9b.Bl(a.M,c))-W9b.ni(a.S,W9b.Bl(a.M,d)))/3;g=(W9b.oi(a.S,W9b.Cl(a.M,c))-W9b.oi(a.S,W9b.Cl(a.M,d)))/3;W9b.Cd(a,n+g,o-f,e,true);W9b.Qd(a,a.R);a.Db(a.Y)}}}}if((a.H&4)!=0){a.Db((a.Y*2+1)/3|0);W9b.Qd(a,384);for(h=0;h0&&(M=W9b.Yc(M,a.t[b]));D=null;N=W9b.zl(a.M,b);if(lJb(N,0)!=0){BJb(gJb(N,Vbc),0)&&(D=D==null?'*':D+','+'*');BJb(gJb(N,Wbc),0)&&(D=D==null?'!*':D+','+'!*');BJb(gJb(N,Xbc),0)?(D=D==null?'ha':D+','+'ha'):BJb(gJb(N,2),0)?(D=D==null?'a':D+','+'a'):BJb(gJb(N,4),0)&&(D=D==null?'!a':D+','+'!a');BJb(gJb(N,Ubc),0)&&(D=D==null?'s':D+','+'s');if(BJb(gJb(N,Ybc),0)){w=gJb(N,Ybc);lJb(w,Zbc)==0?(D=D==null?'h0':D+','+'h0'):lJb(w,$bc)==0?(D=D==null?'h1':D+','+'h1'):lJb(w,1408)==0?(D=D==null?'h2':D+','+'h2'):lJb(w,128)==0?(D=D==null?'h>0':D+','+'h>0'):lJb(w,384)==0?(D=D==null?'h>1':D+','+'h>1'):lJb(w,896)==0?(D=D==null?'h>2':D+','+'h>2'):lJb(w,_bc)==0?(D=D==null?'h<3':D+','+'h<3'):lJb(w,1536)==0?(D=D==null?'h<2':D+','+'h<2'):lJb(w,1152)==0&&(D=D==null?'h1-2':D+','+'h1-2')}if(BJb(gJb(N,acc),0)){i=gJb(N,acc);lJb(i,bcc)==0?(D=D==null?'c0':D+','+'c0'):lJb(i,ccc)==0?(D=D==null?'c+':D+','+'c+'):lJb(i,dcc)==0&&(D=D==null?'c-':D+','+'c-')}if(BJb(gJb(N,ecc),0)){L=gJb(N,ecc);lJb(L,fcc)==0?(D=D==null?'pi0':D+','+'pi0'):lJb(L,gcc)==0?(D=D==null?'pi1':D+','+'pi1'):lJb(L,hcc)==0?(D=D==null?'pi2':D+','+'pi2'):lJb(L,Sbc)==0&&(D=D==null?'pi>0':D+','+'pi>0')}if(BJb(gJb(N,icc),0)){K=gJb(N,icc);lJb(K,jcc)==0?(D=D==null?'n1':D+','+'n1'):lJb(K,kcc)==0?(D=D==null?'n2':D+','+'n2'):lJb(K,lcc)==0?(D=D==null?'n3':D+','+'n3'):lJb(K,mcc)==0?(D=D==null?'n<3':D+','+'n<3'):lJb(K,ncc)==0?(D=D==null?'n<4':D+','+'n<4'):lJb(K,occ)==0?(D=D==null?'n>1':D+','+'n>1'):lJb(K,pcc)==0?(D=D==null?'n>2':D+','+'n>2'):lJb(K,qcc)==0?(D=D==null?'n>3':D+','+'n>3'):lJb(K,3276800)==0?(D=D==null?'n1-2':D+','+'n1-2'):lJb(K,2228224)==0?(D=D==null?'n1-3':D+','+'n1-3'):lJb(K,2490368)==0&&(D=D==null?'n2-3':D+','+'n2-3')}if(BJb(gJb(N,rcc),0)){o=gJb(N,rcc);lJb(o,scc)==0?(D=D==null?'e0':D+','+'e0'):lJb(o,tcc)==0?(D=D==null?'e1':D+','+'e1'):lJb(o,ucc)==0?(D=D==null?'e2':D+','+'e2'):lJb(o,vcc)==0?(D=D==null?'e3':D+','+'e3'):lJb(o,wcc)==0?(D=D==null?'e<2':D+','+'e<2'):lJb(o,xcc)==0?(D=D==null?'e<3':D+','+'e<3'):lJb(o,ycc)==0?(D=D==null?'e<4':D+','+'e<4'):lJb(o,zcc)==0?(D=D==null?'e>0':D+','+'e>0'):lJb(o,Acc)==0?(D=D==null?'e>1':D+','+'e>1'):lJb(o,Bcc)==0?(D=D==null?'e>2':D+','+'e>2'):lJb(o,Ccc)==0?(D=D==null?'e>3':D+','+'e>3'):lJb(o,Dcc)==0?(D=D==null?'e1-2':D+','+'e1-2'):lJb(o,Ecc)==0?(D=D==null?'e1-3':D+','+'e1-3'):lJb(o,Fcc)==0&&(D=D==null?'e2-3':D+','+'e2-3')}if(BJb(gJb(N,120),0)){O=gJb(N,120);lJb(O,112)==0?(D=D==null?'!r':D+','+'!r'):lJb(O,8)==0?(D=D==null?'r':D+','+'r'):lJb(O,96)==0?(D=D==null?'rb<3':D+','+'rb<3'):lJb(O,104)==0?(D=D==null?'rb2':D+','+'rb2'):lJb(O,88)==0?(D=D==null?'rb3':D+','+'rb3'):lJb(O,56)==0&&(D=D==null?'rb4':D+','+'rb4')}BJb(gJb(N,Gcc),0)&&(D=D==null?'r'+LJb(FJb(gJb(N,Gcc),22)):D+','+('r'+LJb(FJb(gJb(N,Gcc),22))));BJb(gJb(N,Dbc),0)&&(D=W9b.Yc(D,W9b._c(N)));BJb(gJb(N,Hcc),0)&&(D=D==null?'f':D+','+'f')}W9b.xl(a.M,b)!=0&&(D=W9b.Yc(D,''+W9b.xl(a.M,b)));R=0;if(W9b.Al(a.M,b)!=0){switch(W9b.Al(a.M,b)){case 16:M=M==null?'|':M+','+'|';break;case 32:R=1;break;case 48:R=2;}}l=null;if((a.H&64)==0){if(W9b.im(a.M,b))l='?';else if(W9b.ml(a.M,b)!=0){if(W9b.sl(a.M,b)==0||c==null||c[W9b.sl(a.M,b)][W9b.rl(a.M,b)]>1){if(W9b.Ko(a.M,b)==2){switch(W9b.ml(a.M,b)){case 2:l=W9b.km(a.M,b)?'p':'P';break;case 1:l=W9b.km(a.M,b)?'m':'M';break;default:l='*';}}else{switch(W9b.ml(a.M,b)){case 1:l=W9b.km(a.M,b)?'r':'R';break;case 2:l=W9b.km(a.M,b)?'s':'S';break;default:l='*';}}}}}(a.H&768)!=0&&(l=W9b.Yc(l,''+W9b.Ov(a.M,b)));I=null;(a.H&16)!=0&&W9b.wl(a.M,b)!=0&&(I=''+W9b.wl(a.M,b));q=null;if(W9b.rp(a.M,b)!=-1){p=W9b.ld(a,b);p!=-1&&(q=p==0?'abs':((p&255)==1?'&':'or')+(1+(p>>8)))}A=0;(a.H&Icc)==0&&(a.M.K?BJb(gJb(W9b.zl(a.M,b),Jcc),0)&&(A=W9b.$o(a.M,b)):(W9b.El(a.M,b)!=6||W9b.xl(a.M,b)!=0||!a.q[b]||W9b.Al(a.M,b)!=0)&&(A=W9b.$o(a.M,b)));H=false;f=W9b.pl(a.M,b);if(f!=null&&R9b.hUb(U9b.E5b(f).substr(0,1),']')){D=W9b.Yc((U9b.z5b(1,U9b.E5b(f).length+1),U9b.E5b(f).substr(1)),D);f=null;H=true}if(f!=null){A=0}else if(W9b.ul(a.M,b)!=null){e=BJb(gJb(W9b.zl(a.M,b),1),0)?'[!':'[';f=e+W9b.vl(a.M,b)+']';U9b.E5b(f).length>5&&(f=e+W9b.ul(a.M,b).length+']');BJb(gJb(W9b.zl(a.M,b),Jcc),0)&&(A=-1)}else if(BJb(gJb(W9b.zl(a.M,b),1),0)){f='?';BJb(gJb(W9b.zl(a.M,b),Jcc),0)&&(A=-1)}else (W9b.El(a.M,b)!=6||M!=null||D!=null||A>0||!a.q[b])&&(f=W9b.tl(a.M,b));G=0;!W9b.Am(a.M,b)&BJb(gJb(W9b.zl(a.M,b),Mbc),0)&&W9b.Qd(a,-8);if(f!=null){G=a.vb(f);W9b.Cd(a,W9b.ni(a.S,W9b.Bl(a.M,b)),W9b.oi(a.S,W9b.Cl(a.M,b)),f,true);a.s[b]=true}else W9b.sd(a,b)&&W9b.Bd(a,W9b.ni(a.S,W9b.Bl(a.M,b)),W9b.oi(a.S,W9b.Cl(a.M,b)),b);if(M!=null){a.Db((a.Y*2+1)/3|0);T=W9b.ni(a.S,W9b.Bl(a.M,b))+((G+a.vb(M))/2+1);V=W9b.oi(a.S,W9b.Cl(a.M,b))-((a.wb()*4-4)/8|0);W9b.Cd(a,T,V,M,true);a.Db(a.Y)}(a.H&2)!=0&&(D=''+b);if(D!=null){H?a.Db((a.Y*5+1)/6|0):a.Db((a.Y*2+1)/3|0);T=W9b.ni(a.S,W9b.Bl(a.M,b))-(G+a.vb(D))/2;V=W9b.oi(a.S,W9b.Cl(a.M,b))-((a.wb()*4-4)/8|0);W9b.Cd(a,T,V,D,true);a.Db(a.Y)}if(l!=null){a.Db((a.Y*2+1)/3|0);T=W9b.ni(a.S,W9b.Bl(a.M,b))-(G+a.vb(l))/2;V=W9b.oi(a.S,W9b.Cl(a.M,b))+((a.wb()*4+4)/8|0);Q=a.D;a.M.O!=1&&(a.H&Ubc)==0&&W9b.Qd(a,448);W9b.Cd(a,T,V,l,false);W9b.Qd(a,Q);a.Db(a.Y)}if(I!=null){a.Db((a.Y*2+1)/3|0);T=W9b.ni(a.S,W9b.Bl(a.M,b))+((G+a.vb(I))/2+1);V=W9b.oi(a.S,W9b.Cl(a.M,b))+((a.wb()*4+4)/8|0);Q=a.D;W9b.Qd(a,W9b.mm(a.M,b)?384:448);W9b.Cd(a,T,V,I,true);W9b.Qd(a,Q);a.Db(a.Y)}if(q!=null){d=W9b.Gd(a,b);a.Db((a.Y*2+1)/3|0);T=W9b.ni(a.S,W9b.Bl(a.M,b))+0.7*a.wb()*$wnd.Math.sin(d);V=W9b.oi(a.S,W9b.Cl(a.M,b))+0.7*a.wb()*$wnd.Math.cos(d);Q=a.D;!a.L&&a.M.O!=1&&W9b.Qd(a,W9b.kd(a,b));W9b.Cd(a,T,V,q,false);W9b.Qd(a,Q);a.Db(a.Y)}if(A==0&&R==0){a.D==-8&&W9b.Qd(a,-9);return}u=ivb(Q9b.Bwb,xbc,6,4,15,1);for(C=0;C1){s=''+A;a.Db((a.Y*2+1)/3|0);t=a.vb(s)}if(u[1]<0.6||u[3]<0.6){k=W9b.oi(a.S,W9b.Cl(a.M,b));if(u[1]<=u[3]){u[1]+=10;j=W9b.ni(a.S,W9b.Bl(a.M,b))+(G+v)/2}else{u[3]+=10;j=W9b.ni(a.S,W9b.Bl(a.M,b))-(G+v)/2-t}}else{j=W9b.ni(a.S,W9b.Bl(a.M,b));if(u[0]0){T=j+(v+t)/2;V=k+((a.wb()*4+4)/8|0);W9b.Cd(a,T,V,s,true);a.Db(a.Y)}W9b.Cd(a,j,k,'H',true)}g=0;if(R!=0){J=50;m=0;for(B=0;B<4;B++){n=B>1?B-2:B+2;if(u[B]m){g=B;m=u[n]}}}switch(g){case 0:j=W9b.ni(a.S,W9b.Bl(a.M,b));k=W9b.oi(a.S,W9b.Cl(a.M,b))-a.W-G/2;break;case 1:j=W9b.ni(a.S,W9b.Bl(a.M,b))+a.W+G/2;k=W9b.oi(a.S,W9b.Cl(a.M,b));break;case 2:j=W9b.ni(a.S,W9b.Bl(a.M,b));k=W9b.oi(a.S,W9b.Cl(a.M,b))+a.W+G/2;break;default:j=W9b.ni(a.S,W9b.Bl(a.M,b))-a.W-G/2;k=W9b.oi(a.S,W9b.Cl(a.M,b));}if(R==1){X9b.hj(a._,new iac.gM(j-a.W,k-a.W,2*a.W,2*a.W));a.L||X9b.hj(a.V,new W9b.ee(j,k,W9b.qd(a,b)?-3:a.p[b]))}else{switch(g){case 2:case 0:U=2*a.W;W=0;j-=a.W;break;case 1:U=0;W=2*a.W;k-=a.W;break;default:U=0;W=2*a.W;k-=a.W;}X9b.hj(a._,new iac.gM(j-a.W,k-a.W,2*a.W,2*a.W));a.L||X9b.hj(a.V,new W9b.ee(j,k,W9b.qd(a,b)?-3:a.p[b]));X9b.hj(a._,new iac.gM(j+U-a.W,k+W-a.W,2*a.W,2*a.W));a.L||X9b.hj(a.V,new W9b.ee(j+U,k+W,W9b.qd(a,b)?-3:a.p[b]))}}a.D==-8&&W9b.Qd(a,-9)};W9b.zd=function zd(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v;t=new W9b.fe;c=new W9b.fe;g=new W9b.fe;q=new iac.TL;p=new iac.TL;e=W9b.Kl(a.M,0,b);f=W9b.Kl(a.M,1,b);a.zb(b,W9b.ni(a.S,W9b.Bl(a.M,e)),W9b.oi(a.S,W9b.Cl(a.M,e)),W9b.ni(a.S,W9b.Bl(a.M,f)),W9b.oi(a.S,W9b.Cl(a.M,f)));!W9b.Am(a.M,e)&&!W9b.Am(a.M,f)&&BJb(gJb(DJb(W9b.zl(a.M,e),W9b.zl(a.M,f)),Mbc),0)&&W9b.Qd(a,-8);if(!a.o[e]){t.a=W9b.ni(a.S,W9b.Bl(a.M,e));t.c=W9b.oi(a.S,W9b.Cl(a.M,e))}else{t.a=a.o[e].a;t.c=a.o[e].b}if(!a.o[f]){t.b=W9b.ni(a.S,W9b.Bl(a.M,f));t.d=W9b.oi(a.S,W9b.Cl(a.M,f))}else{t.b=a.o[f].a;t.d=a.o[f].b}if((W9b.Ul(a.M,b)&Lcc)!=0){W9b.Ld(a,t)&&a.rb(t);W9b.Qd(a,-9);return}h=W9b.Vl(a.M,b)==64?0:W9b.Vl(a.M,b)==32?1:W9b.Sl(a.M,b);switch(h){case 1:i=W9b.Vl(a.M,b);if((a.H&128)!=0&&(i==257||i==129)){s=W9b.Kl(a.M,0,b);n=W9b.sl(a.M,s);if(n!=0){m=W9b.rl(a.M,s);l=0;for(d=0;d0){g.a=t.a+q.a;g.c=t.c+q.b;g.b=t.b+q.a;g.d=t.d+q.b;if(W9b.td(a,e,f,1,p)||W9b.Ko(a.M,e)>1){g.a+=p.a+q.b;g.c+=p.b-q.a}if(W9b.td(a,f,e,-1,p)||W9b.Ko(a.M,f)>1){g.b+=p.a-q.b;g.d+=p.b+q.a}}else{g.a=t.a-q.a;g.c=t.c-q.b;g.b=t.b-q.a;g.d=t.d-q.b;if(W9b.td(a,e,f,-1,p)||W9b.Ko(a.M,e)>1){g.a+=p.a+q.b;g.c+=p.b-q.a}if(W9b.td(a,f,e,1,p)||W9b.Ko(a.M,f)>1){g.b+=p.a-q.b;g.d+=p.b+q.a}}W9b.Vl(a.M,b)==386&&W9b.Kd(c,g);W9b.Ld(a,c)&&W9b.dd(a,c,e,f);h==2?W9b.Ld(a,g)&&W9b.dd(a,g,e,f):W9b.Ld(a,g)&&W9b.bd(a,g,e,f)}break;case 3:if(W9b.Ld(a,t)){W9b.dd(a,t,e,f);W9b.ud(a,t.b-t.a,t.d-t.c,q);W9b.ed(a,t,e,f,q.a,q.b,c);W9b.ed(a,t,e,f,-q.a,-q.b,c)}break;case 4:if(W9b.Ld(a,t)){W9b.ud(a,t.b-t.a,t.d-t.c,q);W9b.ed(a,t,e,f,1.5*q.a,1.5*q.b,c);W9b.ed(a,t,e,f,0.5*q.a,0.5*q.b,c);W9b.ed(a,t,e,f,-0.5*q.a,-0.5*q.b,c);W9b.ed(a,t,e,f,-1.5*q.a,-1.5*q.b,c)}break;case 5:if(W9b.Ld(a,t)){W9b.dd(a,t,e,f);W9b.ud(a,t.b-t.a,t.d-t.c,q);W9b.ed(a,t,e,f,2*q.a,2*q.b,c);W9b.ed(a,t,e,f,q.a,q.b,c);W9b.ed(a,t,e,f,-q.a,-q.b,c);W9b.ed(a,t,e,f,-2*q.a,-2*q.b,c)}}a.D==-8&&W9b.Qd(a,-9)};W9b.Ad=function Ad(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;n=false;for(d=0;d>17;m!=0&&(j=(j==null?'':j)+m);if(j!=null){b=W9b.Kl(a.M,0,d);c=W9b.Kl(a.M,1,d);if(!n){a.Db((a.Y*2+1)/3|0);n=true}o=(W9b.ni(a.S,W9b.Bl(a.M,b))+W9b.ni(a.S,W9b.Bl(a.M,c)))/2;p=(W9b.oi(a.S,W9b.Cl(a.M,b))+W9b.oi(a.S,W9b.Cl(a.M,c)))/2;f=W9b.ni(a.S,W9b.Bl(a.M,c))-W9b.ni(a.S,W9b.Bl(a.M,b));g=W9b.oi(a.S,W9b.Cl(a.M,c))-W9b.oi(a.S,W9b.Cl(a.M,b));e=$wnd.Math.sqrt(f*f+g*g);i=0.6*a.vb(j);h=0.55*a.wb();e!=0&&(f>0?W9b.Cd(a,o+i*g/e,p-h*f/e,j,true):W9b.Cd(a,o-i*g/e,p+h*f/e,j,true))}}n&&a.Db(a.Y)};W9b.Bd=function Bd(a,b,c,d){X9b.hj(a._,new iac.gM(b-a.W,c-a.W,2*a.W,2*a.W));a.L||X9b.hj(a.V,new W9b.ee(b,c,W9b.qd(a,d)?-3:a.p[d]))};W9b.Cd=function Cd(a,b,c,d,e){var f,g,h;if(e){f=a.vb(d);g=f/2+(a.wb()/8|0);h=a.wb()/2|0;(d=='+'||d=='-')&&(h=h*2/3);X9b.hj(a._,new iac.gM(b-g,c-h,2*g,2*h))}a.L||a.tb(d,b,c)};W9b.Dd=function Dd(a){var b;b=a.a;a.a=a.b;a.b=b;b=a.c;a.c=a.d;a.d=b};W9b.Ed=function Ed(a,b,c){var d;d=b==0?Pbc+a[0]-a[a.length-1]:a[b]-a[b-1];c>Ncc&&c0)return (a[b]+a[b-1])/2;c=Qbc+(a[0]+a[a.length-1])/2;return c>Qbc?c-Pbc:c};W9b.Id=function Id(a,b,c,d){var e,f,g,h;h=new W9b.fe;if(b.a==b.b&&b.c==b.d)return;h.a=b.a;h.c=b.c;h.b=b.b;h.d=b.d;g=W9b.Fd(h);for(e=0;eg.c+g.b||f.d>g.d+g.a||g.c>f.c+f.b||g.d>f.d+f.a)continue;if(W9b.Jd(a,h.a,h.c,e)){if(W9b.Jd(a,h.b,h.d,e))return;W9b.Md(a,h,0,e);W9b.Id(a,h,c,d);return}if(W9b.Jd(a,h.b,h.d,e)){W9b.Md(a,h,1,e);W9b.Id(a,h,c,d);return}}W9b.gd(a,h,c,d)};W9b.Jd=function Jd(a,b,c,d){var e;if((a.H&1)!=0)return false;e=X9b.mj(a._,d);return b>e.c&&be.d&&cb.b){W9b.Dd(b);c=true}for(d=0;dh.c+h.b||f.d>h.d+h.a||h.c>f.c+f.b||h.d>f.d+f.a)continue;if(W9b.Jd(a,b.a,b.c,d)){if(W9b.Jd(a,b.b,b.d,d)){c&&W9b.Dd(b);return false}W9b.Md(a,b,0,d);e=W9b.Ld(a,b);c&&W9b.Dd(b);return e}if(W9b.Jd(a,b.b,b.d,d)){W9b.Md(a,b,1,d);e=W9b.Ld(a,b);c&&W9b.Dd(b);return e}}c&&W9b.Dd(b);return true};W9b.Md=function Md(a,b,c,d){var e,f,g,h,i,j,k,l,m,n,o;if(c==0){l=b.a;n=b.c;m=b.b;o=b.d}else{l=b.b;n=b.d;m=b.a;o=b.c}k=X9b.mj(a._,d);i=m>l?k.c+k.b:k.c;j=o>n?k.d+k.a:k.d;e=m-l;f=o-n;if($wnd.Math.abs(e)>$wnd.Math.abs(f)){if(n==o){g=i;h=n}else{g=l+e*(j-n)/f;if(m>l==i>g){h=j}else{g=i;h=n+f*(i-l)/e}}}else{if(l==m){g=l;h=j}else{h=n+f*(i-l)/e;if(o>n==j>h){g=i}else{g=l+e*(j-n)/f;h=j}}}if(c==0){b.a=g;b.c=h}else{b.b=g;b.d=h}};W9b.Nd=function Nd(a,b){var c,d,e,f,g,h;if(a.M.q==0)return;W9b.Dv(a.M,(a.H&256)!=0?63:(a.H&512)!=0?95:31);a.C=b;W9b.$c(a);e=W9b.Iv(a.M);f=false;a.p=ivb(Q9b.Dwb,zbc,6,a.M.q,15,1);for(c=0;cb.d+b.a-e&&(a.A.b=b.d+b.a-e);break;case Rcc:if(b){a.A.a=b.c+b.b/2;a.A.b=b.d+e;break}case Scc:a.A.a=a.w.c+a.w.b/2;a.A.b=a.w.d-e;!!b&&a.A.bW9b.ni(a.S,W9b.Bl(a.M,b))&&(e=W9b.ni(a.S,W9b.Bl(a.M,b)));cW9b.oi(a.S,W9b.Cl(a.M,b))&&(f=W9b.oi(a.S,W9b.Cl(a.M,b)));dthis.i[c].a){b.b+=b.c-this.i[c].a;b.c=this.i[c].a}else b.bthis.i[c].b){b.a+=b.d-this.i[c].b;b.d=this.i[c].b}else b.a1){if(!W9b.xe(a,c,false)){Q=false;break}}else{S=V==5?W9b.ue(a,c,false):W9b.ve(a,c,false);if(W9b.xe(a,c,false)){if(N0){W9b.we(a,O,true);W9b.Ie(a,O)}}}}}};W9b.ue=function ue(a,b,c){if(W9b.El(a.f,b)==7){if(W9b.vo(a.f,b)==3)return 6;else if(W9b.Ko(a.f,b)==2)return 4}else if(W9b.El(a.f,b)==8){return 10}else if(W9b.El(a.f,b)==15||W9b.El(a.f,b)==33){if(W9b.Ko(a.f,b)==3)return 8}else if(W9b.El(a.f,b)==16||W9b.El(a.f,b)==34||W9b.El(a.f,b)==52){if(W9b.Ko(a.f,b)==2)return 12}else if(W9b.El(a.f,b)==6){c&&W9b.Vm(a.f,b,-1);return W9b.vo(a.f,b)!=W9b.wo(a.f,b)?2:3}return 0};W9b.ve=function ve(a,b,c){if(a.a){if(W9b.vo(a.f,b)!=3)return 0}else{if(W9b.vo(a.f,b)>3)return 0}if(W9b.El(a.f,b)==6){c&&W9b.Vm(a.f,b,1);return 2}if(W9b.El(a.f,b)==5){return 4}return 0};W9b.we=function we(a,b,c){if(W9b.nl(a.f,b)!=0)return 0;if(a.a){if(W9b.El(a.f,b)==5){if(W9b.fp(a.f,b)!=2)return 0;c&&W9b.Vm(a.f,b,1);return 1}if(W9b.El(a.f,b)==7){if(W9b.fp(a.f,b)!=2)return 0;c&&W9b.Vm(a.f,b,-1);return W9b.ze(a,b)?6:3}if(W9b.El(a.f,b)==8){if(W9b.fp(a.f,b)!=1)return 0;c&&W9b.Vm(a.f,b,-1);return W9b.ze(a,b)?7:4}if(W9b.El(a.f,b)==16){if(W9b.fp(a.f,b)!=1)return 0;c&&W9b.Vm(a.f,b,-1);return W9b.ze(a,b)?5:2}if(W9b.El(a.f,b)==34){if(W9b.fp(a.f,b)!=1)return 0;c&&W9b.Vm(a.f,b,-1);return W9b.ze(a,b)?4:1}}else{if(W9b.El(a.f,b)==5){if(W9b.fp(a.f,b)>2)return 0;c&&W9b.Vm(a.f,b,1);return 1}if(W9b.El(a.f,b)==7){if(W9b.fp(a.f,b)>2)return 0;c&&W9b.Vm(a.f,b,-1);return W9b.ze(a,b)?5:3}if(W9b.El(a.f,b)==8){if(W9b.fp(a.f,b)>1)return 0;c&&W9b.Vm(a.f,b,-1);return W9b.ze(a,b)?7:4}if(W9b.El(a.f,b)==16){if(W9b.fp(a.f,b)>1)return 0;c&&W9b.Vm(a.f,b,-1);return W9b.ze(a,b)?5:2}}return 0};W9b.xe=function xe(a,b,c){var d,e,f;d=W9b.El(a.f,b);if(d>=5&&d<=8||d==15||d==16||d==33||d==34||d==52){f=W9b._o(a.f,b);if(f!=0)return true;e=W9b.nl(a.f,b);if(d==5&&e>=0){c&&W9b.Vm(a.f,b,e-1);return true}if(d!=5&&e<=0){c&&W9b.Vm(a.f,b,e+1);return true}}return false};W9b.ye=function ye(a,b,c,d){var e;for(e=0;e1)return true;return false};W9b.Be=function Be(a,b){var c;for(c=0;c0)&&W9b.Ie(a,c)};W9b.Le=function Le(a,b){var c,d,e,f,g,h,i,j,k,l,m,n;for(k=0;k3)return false;if(b0}break}}return false}if(a.o[b]>1)return false;if(a.o[b]==1){m=-1;A=0;for(i=0;i=0}for(h=0;h3&&(o=3);(c&512)==0&&o>1&&(o=1);g=DJb(g,Q9b.oJb(o<<6))}(c&_bc)!=0&&(a.u[e]&8)!=0&&(g=DJb(g,256));(c&Jcc)!=0&&ek;l--)n[l]=n[l-1];n[k]=g;++m}m>4&&(m=4);d=0;for(j=0;j9&&(q=9);q>2&&(q-=2);d=DJb(d,Q9b.oJb(q<<4))}else (c&1)!=0&&(a.u[b]&8)!=0&&(d=DJb(d,64));(c&4)!=0&&b>f),e)}}};W9b.$e=function $e(a){var b,c,d,e,f,g;while(true){f=ivb(Q9b._Ib,Lbc,6,a.T+1,16,1);d=-1;for(c=0;c3||W9b.vo(a.Q,f)>3)return false;g=new W9b.bk(a.Q,a.e,b,e);if(g.f&&c==1)return false;h=new W9b.bk(a.Q,a.e,b,f);if(h.f&&c==1)return false;if(g.f&&h.f)return false;if(c==3){g.f&&g.c&&(a.V[b]=true);h.f&&h.c&&(a.V[b]=true)}d=a.ib?W9b.df(a,g,h):W9b.cf(g,h);if(c==1){a.cb[b]=d}else if(c==2){g.f&&(d==1?W9b.Qg(a.d[g.b],sJb(a.e[e])):W9b.Qg(a.d[g.d],sJb(a.e[e])));h.f&&(d==2?W9b.Qg(a.d[h.b],sJb(a.e[f])):W9b.Qg(a.d[h.d],sJb(a.e[f])))}return true};W9b.cf=function cf(a,b){var c,d,e;d=W9b.ak(a);e=W9b.ak(b);if(d==-1||e==-1||(d+e&1)==0)return 3;c=0;switch(d+e){case 3:case 7:c=2;break;case 5:c=1;}return c};W9b.df=function df(a,b,c){var d,e;d=ivb(Q9b.Dwb,zbc,6,4,15,1);d[0]=b.b;d[1]=b.a;d[2]=c.a;d[3]=c.b;e=W9b.Sk(a.Q,d);if($wnd.Math.abs(e)<0.3||$wnd.Math.abs(e)>_cc)return 3;return e<0?2:1};W9b.ef=function ef(a,b,c){var d,e,f,g,h;if(!W9b.Ep(a.Q,b))return false;d=W9b.Kl(a.Q,0,b);e=W9b.Kl(a.Q,1,b);g=new W9b.bk(a.Q,a.e,d,e);if(g.f&&c==1)return false;h=new W9b.bk(a.Q,a.e,e,d);if(h.f&&c==1)return false;if(g.f&&h.f)return false;if(c==3){g.f&&(a.U[b]=W9b.kg(a,e));h.f&&(a.U[b]=W9b.kg(a,d))}f=a.ib?W9b.gf(a,g,h):W9b.ff(g,h);if(c==1){a.n[b]=f}else if(c==2){g.f&&(f==2?W9b.Qg(a.d[g.b],sJb(a.e[e])):W9b.Qg(a.d[g.d],sJb(a.e[e])));h.f&&(f==2?W9b.Qg(a.d[h.b],sJb(a.e[d])):W9b.Qg(a.d[h.d],sJb(a.e[d])))}return true};W9b.ff=function ff(a,b){var c,d,e;d=W9b.ak(a);e=W9b.ak(b);if(d==-1||e==-1||(d+e&1)==0)return 3;c=0;switch(d+e){case 3:case 7:c=1;break;case 5:c=2;}return c};W9b.gf=function gf(a,b,c){var d,e;d=ivb(Q9b.Dwb,zbc,6,4,15,1);d[0]=b.b;d[1]=b.a;d[2]=c.a;d[3]=c.b;e=W9b.Sk(a.Q,d);if($wnd.Math.abs(e)<0.3||$wnd.Math.abs(e)>_cc)return 3;return e<0?1:2};W9b.hf=function hf(a,b,c){var d,e,f,g,h,i,j,k;if(a.n[b]!=0)return false;if(a.Q.K){for(j=0;j<2;j++){d=W9b.Kl(a.Q,j,b);for(k=0;k3||W9b.Ko(a.Q,g)>3)return false;if(W9b.Ao(a.Q,f)==2||W9b.Ao(a.Q,g)==2)return false;h=new W9b.bk(a.Q,a.e,g,f);if(h.f&&c==1)return false;i=new W9b.bk(a.Q,a.e,f,g);if(i.f&&c==1)return false;if(h.f&&i.f)return false;if(c==3){h.f&&h.c&&(a.U[b]=true);i.f&&i.c&&(a.U[b]=true)}e=W9b.sm(a.Q,b)?3:a.ib?W9b.kf(a,h,i):W9b.jf(h,i);if(c==1){a.n[b]=e}else if(c==2){h.f&&(e==1?W9b.Qg(a.d[h.b],sJb(a.e[f])):e==2&&W9b.Qg(a.d[h.d],sJb(a.e[f])));i.f&&(e==1?W9b.Qg(a.d[i.b],sJb(a.e[g])):e==2&&W9b.Qg(a.d[i.d],sJb(a.e[g])))}return true};W9b.jf=function jf(a,b){if(W9b.ak(a)==-1||W9b.ak(b)==-1)return 3;if(((W9b.ak(a)|W9b.ak(b))&1)!=0)return 3;return W9b.ak(a)==W9b.ak(b)?1:2};W9b.kf=function kf(a,b,c){var d,e,f,g,h,i,j;f=ivb(Q9b.Bwb,xbc,6,3,15,1);f[0]=W9b.Bl(a.Q,c.a)-W9b.Bl(a.Q,b.a);f[1]=W9b.Cl(a.Q,c.a)-W9b.Cl(a.Q,b.a);f[2]=W9b.Dl(a.Q,c.a)-W9b.Dl(a.Q,b.a);i=ivb(Q9b.Bwb,xbc,6,3,15,1);i[0]=W9b.Bl(a.Q,b.b)-W9b.Bl(a.Q,b.a);i[1]=W9b.Cl(a.Q,b.b)-W9b.Cl(a.Q,b.a);i[2]=W9b.Dl(a.Q,b.b)-W9b.Dl(a.Q,b.a);j=ivb(Q9b.Bwb,xbc,6,3,15,1);j[0]=W9b.Bl(a.Q,c.b)-W9b.Bl(a.Q,c.a);j[1]=W9b.Cl(a.Q,c.b)-W9b.Cl(a.Q,c.a);j[2]=W9b.Dl(a.Q,c.b)-W9b.Dl(a.Q,c.a);g=ivb(Q9b.Bwb,xbc,6,3,15,1);g[0]=f[1]*i[2]-f[2]*i[1];g[1]=f[2]*i[0]-f[0]*i[2];g[2]=f[0]*i[1]-f[1]*i[0];h=ivb(Q9b.Bwb,xbc,6,3,15,1);h[0]=f[1]*g[2]-f[2]*g[1];h[1]=f[2]*g[0]-f[0]*g[2];h[2]=f[0]*g[1]-f[1]*g[0];d=(i[0]*h[0]+i[1]*h[1]+i[2]*h[2])/($wnd.Math.sqrt(i[0]*i[0]+i[1]*i[1]+i[2]*i[2])*$wnd.Math.sqrt(h[0]*h[0]+h[1]*h[1]+h[2]*h[2]));e=(j[0]*h[0]+j[1]*h[1]+j[2]*h[2])/($wnd.Math.sqrt(j[0]*j[0]+j[1]*j[1]+j[2]*j[2])*$wnd.Math.sqrt(h[0]*h[0]+h[1]*h[1]+h[2]*h[2]));return d<0^e<0?1:2};W9b.lf=function lf(a,b){var c,d,e,f;c=W9b.ll(a.Q,b);d=W9b.Yo(a.Q,b,false);e=W9b.Yo(a.Q,b,true);f=-1;if(d!=e){c!=-1&&c>d?(f=c<<24>>24):(f=d<<24>>24)}else if(c!=-1){(c>e||c=W9b.fp(a.Q,b))&&(f=c<<24>>24)}else if(!W9b.jq(a.Q,b)&&W9b.Oo(a.Q,b)!=0){f=W9b.fp(a.Q,b);f-=W9b.$l(a.Q,b,f)}W9b.Hf(a,b,f);return f};W9b.mf=function mf(a){var b,c,d,e,f,g,h,i,j,k,l;d=ivb(Q9b.Dwb,zbc,6,a.N,15,1);for(b=0;b=W9b.vo(a.Q,b)){l=2*a.e[W9b.Jo(a.Q,b,f)];c=W9b.Lo(a.Q,b,f);W9b.Sl(a.Q,c)==2&&(W9b.Dp(a.Q,c)||++l);for(h=0;hh;i--)d[i]=d[i-1];d[h]=l;++j}}W9b.Sg(a.d[b],b);W9b.Pg(a.d[b],a.c,sJb(a.e[b]));for(g=k;g4)return false;if(W9b.nl(a.Q,b)>0&&W9b.El(a.Q,b)==6)return false;if(W9b.El(a.Q,b)==5&&W9b.vo(a.Q,b)!=4)return false;if(a.Q.K){if(BJb(gJb(W9b.zl(a.Q,b),Mbc),0))return false;for(h=0;h>24;if(j!=3)return j;k=0;l=0;for(h=0;hd[2]&&d[1]-d[2]>Qbc)&&(l=3-l);break;case 1:d[2]-d[0]>Qbc&&(l=3-l);break;case 2:d[1]-d[0]0?1:2};W9b.qf=function qf(a){var b,c;b=0;X9b.T_b(a.d);for(c=0;c1){W9b.rf(a);a.S=0;for(h=new X9b.s_b(a.w);h.aB?(A<<16)+B:(B<<16)+A;if(a.n[g.b[p]]==1||a.n[g.b[p]]==2){++w;v=true;if(i0;l--){j=0;i=null;for(d=0;d<32;d++){if(c[d]!=null){if(i==null||i.length=0;h--){if(i[h]>4));if(a.Q.K){W9b.Pg(a.d[e],46,W9b.zl(a.Q,e));W9b.ul(a.Q,e)!=null&&(h=true)}}a.T=W9b.Af(a);if(a.Tm.length;p--)W9b.Pg(a.d[b],a.c+5,0);for(n=m.length-1;n>=0;n--)W9b.Pg(a.d[b],a.c+5,Q9b.oJb(m[n]))}a.T=W9b.Af(a)}if(h&&a.Ts;o--)W9b.Pg(a.d[b],8,0);for(n=s-1;n>=0;n--)W9b.Pg(a.d[b],8,Q9b.oJb(g[n]))}a.T=W9b.Af(a)}if(l&&a.T=W9b.vo(a.Q,b)){k[q]=sJb(a.e[W9b.Jo(a.Q,b,o)]);k[q]=EJb(k[q],23);k[q]=DJb(k[q],sJb(W9b.Ul(a.Q,W9b.Lo(a.Q,b,o))));++q}}U9b.Z4b(k,U9b.E5b(ZJb(X9b.$_b.prototype.He,X9b.$_b,[])));for(p=a.N;p>k.length;p--)W9b.Pg(a.d[b],a.c+23,0);for(n=k.length-1;n>=0;n--)W9b.Pg(a.d[b],a.c+23,k[n])}a.T=W9b.Af(a)}if((a.P&8)!=0&&a.T>24;a._[c]=W9b.rl(a.Q,c)<<24>>24}a.k=ivb(Q9b.zwb,cdc,6,a.Q.g,15,1);a.j=ivb(Q9b.zwb,cdc,6,a.Q.g,15,1);for(d=0;d>24;a.j[d]=W9b.Ol(a.Q,d)<<24>>24}W9b.Df(a);a.Y=false;a.L=ivb(Q9b._Ib,Lbc,6,a.Q.f,16,1);for(b=0;b>24};W9b.If=function If(b,c){var d,e,f,g,h,i;if((b.n[c]==1||b.n[c]==2)&&!W9b.Up(b.Q,c)){h=false;try{for(g=0;g<2;g++){d=W9b.Kl(b.Q,g,c);if(W9b.Ko(b.Q,d)==3){e=ivb(Q9b.Dwb,zbc,6,2,15,1);f=0;for(i=0;ib.e[e[1]]^W9b.Kf(b,d,e[0],e[1])&&(h=!h)}}}catch(a){a=dJb(a);if(pwb(a,16)){b.g[c]=3;return}else throw eJb(a)}b.n[c]==1^h?(b.g[c]=1):(b.g[c]=2)}};W9b.Jf=function Jf(b,c){var d,e,f,g,h,i,j;if(b.cb[c]==1||b.cb[c]==2){i=false;if(W9b.Ao(b.Q,c)==2&&W9b.Ko(b.Q,c)==2){try{for(h=0;h<2;h++){d=W9b.Jo(b.Q,c,h);if(W9b.Ko(b.Q,d)==3){f=ivb(Q9b.Dwb,zbc,6,2,15,1);g=0;for(j=0;jb.e[f[1]]^W9b.Kf(b,d,f[0],f[1])&&(i=!i)}}}catch(a){a=dJb(a);if(pwb(a,16)){b.Z[c]=3;return}else throw eJb(a)}}else{try{e=W9b.Mf(b,c)}catch(a){a=dJb(a);if(pwb(a,16)){b.Z[c]=3;return}else throw eJb(a)}for(h=1;hW9b.El(a.Q,d);if(W9b.xl(a.Q,c)!=W9b.xl(a.Q,d)){H=W9b.xm(a.Q,c)?(W9b.Fk(),W9b.Dk)[W9b.El(a.Q,c)]:W9b.xl(a.Q,c);I=W9b.xm(a.Q,d)?(W9b.Fk(),W9b.Dk)[W9b.El(a.Q,d)]:W9b.xl(a.Q,d);return H>I}w=a.Q.f;s=ivb(Q9b.Dwb,zbc,6,w,15,1);u=ivb(Q9b.Dwb,zbc,6,w,15,1);v=ivb(Q9b.Dwb,zbc,6,w,15,1);t=ivb(Q9b._Ib,Lbc,6,w,16,1);i=ivb(Q9b._Ib,Lbc,6,a.Q.q,16,1);s[0]=b;s[1]=c;s[2]=d;u[0]=-1;u[1]=0;u[2]=0;i[b]=true;i[c]=true;i[d]=true;m=1;A=2;G=ivb(Q9b.Dwb,zbc,6,64,15,1);G[1]=1;G[2]=3;o=2;while(m<=A){while(m=w){w+=a.Q.f;s=W9b.tg(s,w);u=W9b.tg(u,w);v=W9b.tg(v,w);t=W9b.ug(t,w)}if(W9b.Hp(a.Q,W9b.Lo(a.Q,n,C))){++p;q+=W9b.El(a.Q,k)}else if(k!=b){for(F=1;Fv[2];o>1&&W9b.Lf(v,u,G,o);++o}l=ivb(Q9b.Dwb,zbc,6,a.Q.f,15,1);D=false;for(f=0;fv[2]}X9b.J_b(l,l.length,0);r=false;for(j=0;jv[2];X9b.J_b(l,l.length,0);L=false;for(e=0;ev[2];throw eJb(new R9b.DB('no distinction applying CIP rules'))};W9b.Lf=function Lf(a,b,c,d){var e,f,g,h,i,j,k,l,m;l=c[d];g=c[d+1]-l;m=ivb(Q9b.Nwb,kbc,236,g,0,1);for(i=0;i1;k--){for(j=0;j1;d--){c=false;for(f=1;f1&&W9b.Lf(c,d,g,j)}return false};W9b.Of=function Of(a,b,c,d,e,f,g){var h,i,j,k,l,m,n,o,p,q,r;for(l=g;l>1;l--){p=f[l]-f[l-1];r=ivb(Q9b.Lwb,kbc,235,p,0,1);h=f[l];for(o=0;o>1),4);o=0;for(i=1;i1&&o==0){a.r='';return}g=1<>1)-1);p=o+0.5*m;for(k=1;k15){W9b.Rf(a,1,1);W9b.Rf(a,15,4);b-=16;++a.v}W9b.Rf(a,1,1);W9b.Rf(a,Q9b.oJb(b),4)};W9b.Xf=function Xf(a){var b,c,d,e,f,g;if(a.Q.f==0){a.M='';return}f=0;d=false;e=false;for(c=0;ca.e[v]&&(v=c);d=ivb(Q9b._Ib,Lbc,6,a.Q.f,16,1);g=ivb(Q9b._Ib,Lbc,6,a.Q.g,16,1);a.G=ivb(Q9b.Dwb,zbc,6,a.Q.f,15,1);a.A=ivb(Q9b.Dwb,zbc,6,a.Q.f,15,1);a.D=ivb(Q9b.Dwb,zbc,6,a.Q.f,15,1);a.B=ivb(Q9b.Dwb,zbc,6,a.Q.g,15,1);a.A[0]=v;a.G[v]=0;d[v]=true;e=1;i=0;j=1;k=0;while(i=W9b.vo(a.Q,b)){h=W9b.Jo(a.Q,b,q);if(!d[h]&&a.e[h]>m){o=h;p=W9b.Lo(a.Q,b,q);m=a.e[h]}}}if(m==-1)break;a.G[o]=j;a.D[j]=i;a.A[j++]=o;a.B[k++]=p;d[o]=true;g[p]=true}++i}else{n=0;m=-1;for(b=0;bm){n=b;m=a.e[b]}}++e;a.G[n]=j;a.D[j]=-1;a.A[j++]=n;d[n]=true}}a.C=ivb(Q9b.Dwb,zbc,6,2*(a.Q.g-k),15,1);while(true){s=a.Q.M;t=a.Q.M;u=-1;for(f=0;fa.A[n[g]]){k=a.A[n[g]];j=g}}while(f>0){i[n[j]]=true;j=W9b.zg(j+2,m.length);f-=2}}else{h=0;while(W9b.lg(a,m[h]))++h;while(!W9b.lg(a,m[h]))h=W9b.zg(h+1,m.length);while(f>0){i[n[h]]=true;h=W9b.zg(h+2,m.length);f-=2;while(!W9b.lg(a,m[h]))h=W9b.zg(h+1,m.length)}}}}}return i};W9b.ag=function ag(a,b){return a.n[b]};W9b.bg=function bg(a){return W9b.cg(a,a.ib)};W9b.cg=function cg(a,b){if(a.r==null){W9b.$f(a);W9b.Uf(a,b,a.Q.J)}return a.r};W9b.dg=function dg(a){if(a.M==null){W9b.$f(a);W9b.Xf(a)}return a.M};W9b.eg=function eg(a){if(a.I==null){W9b.$f(a);if((a.P&Jcc)==0){W9b.ng(a);W9b.og(a,1);W9b.og(a,2)}W9b.mg(a)}return a.I};W9b.fg=function fg(a,b,c,d,e){var f,g,h;f=c==-1?$wnd.Math.abs(e[b].a-e[a.A[0]].a)/8:$wnd.Math.abs(e[b].a-e[c].a);d1};W9b.mg=function mg(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,A,B,C,D,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,$,ab,bb;W9b.Tf(a,false);W9b.Rf(a,9,4);Y=$wnd.Math.max(W9b.Cg(a.Q.f),W9b.Cg(a.Q.g));W9b.Rf(a,Q9b.oJb(Y),4);if(Y==0){W9b.Rf(a,sJb(a.Q.K?1:0),1);W9b.Rf(a,0,1);a.I=W9b.Sf(a);return}Z=ab=$=H=0;for(i=0;i0){W9b.Wf(a,8);W9b.Rf(a,Q9b.oJb(K),Y);for(t=0;t>4),2)}}}if(a.Q.K){W9b.Ye(a,22,Y,Hcc,1,-1);W9b.Ze(a,23,Y,gdc,1,-1);W9b.Ze(a,24,Y,Mcc,2,21)}if((a.P&16)!=0){for(h=0;ha.e[k[1]]^a.G[k[0]]a.e[g]&&(i=!i);a.G[f]a.e[k[1]]&&(i=!i);a.G[k[0]]>24}for(c=0;c=a.Q.f)return false;if(a.cb[c]==1||a.cb[c]==2)return true;if(a.cb[c]==3)return false;d=W9b.ro(a.Q,c);if(d!=-1)return a.n[d]==1||a.n[d]==2;for(e=0;ea.e[k[1]]^k[0]a.e[g]&&(i=!i);fa.e[k[1]]&&(i=!i);k[0]0){a>>=1;++b}return b};WJb(48,1,{},W9b.Ag,W9b.Bg);_.b=false;_.c=0;_.q=false;_.s=0;_.u=0;_.v=0;_.F=false;_.H=0;_.J=false;_.K=false;_.N=0;_.P=0;_.S=0;_.T=0;_.Y=false;_.ib=false;Q9b.Vwb=ySb(48);W9b.Dg=function Dg(a,b){var c,d,e,f;if(a.d!=b.d)return a.d>b.d?1:-1;e=a.a.length;f=b.a.length;c=$wnd.Math.min(e,f);for(d=0;db.a[f]?1:-1}if(e!=f)return e>f?1:-1;if(a.b!=b.b)return a.b>b.b?1:-1;return 0};W9b.Eg=function Eg(a,b){return W9b.Dg(a,b)};W9b.Fg=function Fg(){};WJb(434,1,{},W9b.Fg);_.Sb=function Gg(a,b){return W9b.Eg(a,b)};_.mb=function Hg(a){return this===a};Q9b.Mwb=ySb(434);W9b.Ig=function Ig(){};WJb(235,1,{235:1},W9b.Ig);_.b=0;_.c=0;_.d=0;Q9b.Lwb=ySb(235);W9b.Jg=function Jg(a,b){if(a.c!=b.c)return a.c>b.c?1:-1;return 0};W9b.Kg=function Kg(a,b){return W9b.Jg(a,b)};W9b.Lg=function Lg(){};WJb(435,1,{},W9b.Lg);_.Sb=function Mg(a,b){return W9b.Kg(a,b)};_.mb=function Ng(a){return this===a};Q9b.Owb=ySb(435);W9b.Og=function Og(){};WJb(236,1,{236:1},W9b.Og);_.a=0;_.b=0;_.c=0;Q9b.Nwb=ySb(236);W9b.Pg=function Pg(a,b,c){if(a.b==0){++a.c;a.b=63}if(a.b==63){a.d[a.c]=DJb(a.d[a.c],c);a.b-=b}else{if(a.b>=b){a.d[a.c]=EJb(a.d[a.c],b);a.d[a.c]=DJb(a.d[a.c],c);a.b-=b}else{a.d[a.c]=EJb(a.d[a.c],a.b);a.d[a.c]=DJb(a.d[a.c],FJb(c,b-a.b));b-=a.b;++a.c;a.b=63-b;a.d[a.c]=DJb(a.d[a.c],gJb(c,Q9b.oJb((1<b.b?-1:1;if(a.c!=b.c)return a.c>b.c?-1:1;return 0};W9b.Wg=function Wg(a,b,c){this.b=$wnd.Math.max(a,b);this.c=$wnd.Math.min(a,b);this.a=c};WJb(234,1,{234:1,19:1},W9b.Wg);_.Tb=function Xg(a){return W9b.Vg(this,a)};_.a=0;_.b=0;_.c=0;Q9b.Qwb=ySb(234);W9b.Yg=function Yg(a,b,c,d){this.a=(U9b.o5b(b),X9b.B_b(a,ivb(Q9b.Dwb,zbc,6,b,15,1),0,b));this.b=(U9b.o5b(d),X9b.B_b(c,ivb(Q9b.Dwb,zbc,6,d,15,1),0,d))};WJb(283,1,{283:1},W9b.Yg);Q9b.Rwb=ySb(283);W9b.Zg=function Zg(a,b){var c,d;for(d=0;d2){for(g=1;g>24;a.j[g]=c<<24>>24}else if(a.k[g]==d&&a.j[g]==c){a.k[g]=0;a.j[g]=-1}}}}return true};W9b.hh=function hh(a,b){var c,d,e,f,g,h;if(!a.b)return false;e=false;for(f=a.b.a.length-1;f>=0;f--){d=false;g=X9b.mj(a.b,f);g.a==2?(d=W9b.gh(a,g.b,g.c,g.d,b)):g.a==1&&(d=W9b.lh(a,g.b,b));if(d){X9b.uj(a.b,g);for(h=0;h0){if(c){W9b.jh(a,e,g.i+g.g++,2);++h}X9b.hj(a.b,new W9b._j(e,1,-1,-1))}else if(b>0){c&&W9b.jh(a,e,g.a+g.f++,1);X9b.hj(a.b,new W9b._j(e,1,-1,-1))}else if(c){W9b.jh(a,e,g.a+g.f++,1);X9b.hj(a.b,new W9b._j(e,1,-1,-1))}}else if(d==1){if(W9b.Zg(a,e)){f=W9b.sh(g,e);i=W9b.uh(g,e);X9b.hj(a.b,new W9b._j(e,2,f,i))}else{W9b.ph(g,e);X9b.hj(a.b,new W9b._j(e,1,-1,-1))}}}}};W9b.jh=function jh(a,b,c,d){var e,f;for(f=0;f>24;a.j[e]=c<<24>>24}}};W9b.kh=function kh(a,b,c){var d,e;for(e=0;e>24}}};W9b.lh=function lh(a,b,c){var d,e,f,g,h,i,j,k;f=a.g[b];e=1;for(i=0;i2||W9b.El(a.i,d)==16&&W9b.Ko(a.i,d)>2)&&W9b.Ko(a.i,d)>2){h=false;for(p=1;p>24)}}}}}};W9b.qh=function qh(a,b,c){var d,e,f,g,h;h=false;g=1;b[c]=g;d=true;while(d){d=false;for(e=0;ea.j.a[d]+(f==1?obc:0)){k=a.j.a[d]+(f==1?obc:0);i=e;l=f;j=b[h]}}}}}for(c=0;c=-1){f=ivb(Q9b.Dwb,zbc,6,this.b,15,1);if(W9b.qh(this,f,b)){for(l=0;l=1)return 0;if(c<=-1)return Qbc;return $wnd.Math.acos(c)};W9b.Vh=function Vh(a,b){var c,d,e;c=a.a;d=a.b;e=a.c;a.a=c*b[0][0]+d*b[1][0]+e*b[2][0];a.b=c*b[0][1]+d*b[1][1]+e*b[2][1];a.c=c*b[0][2]+d*b[1][2]+e*b[2][2];return a};W9b.Wh=function Wh(a,b){a.a*=b;a.b*=b;a.c*=b;return a};W9b.Xh=function Xh(a,b,c,d){a.a=b;a.b=c;a.c=d};W9b.Yh=function Yh(a,b){W9b.Xh(a,b.a,b.b,b.c);return a};W9b.Zh=function Zh(a,b){a.a-=b.a;a.b-=b.b;a.c-=b.c;return a};W9b.$h=function $h(a,b){return new W9b.bi(a.a-b.a,a.b-b.b,a.c-b.c)};W9b._h=function _h(a){var b;b=$wnd.Math.sqrt(a.a*a.a+a.b*a.b+a.c*a.c);if(b==0){R9b.WUb();String.fromCharCode(10);a.a=1;a.b=0;a.c=0;return a}a.a/=b;a.b/=b;a.c/=b;return a};W9b.ai=function ai(){};W9b.bi=function bi(a,b,c){this.a=a;this.b=b;this.c=c};W9b.ci=function ci(a){W9b.bi.call(this,a.a,a.b,a.c)};WJb(34,1,{34:1,4:1,19:1},W9b.ai,W9b.bi,W9b.ci);_.Tb=function di(a){return W9b.Qh(this,a)};_.mb=function ei(a){return W9b.Th(this,a)};_.pb=function fi(){var a;a=new Uac.MXb('0.00');return '['+Uac.KXb(a,this.a)+', '+Uac.KXb(a,this.b)+', '+Uac.KXb(a,this.c)+']'};_.a=0;_.b=0;_.c=0;Q9b.Wwb=ySb(34);W9b.gi=function gi(a,b){b.Ob(a.c);W9b.he(b,a.a,a.b)};W9b.hi=function hi(a,b){b.c*=a.c;b.a=b.a*a.c+a.a;b.b=b.b*a.c+a.b};W9b.ii=function ii(a,b){W9b.Qm(b,a.c);W9b.Mn(b,a.a,a.b)};W9b.ji=function ji(a,b){b.a=b.a*a.c+a.a;b.b=b.b*a.c+a.b};W9b.ki=function ki(a,b){b.c=b.c*a.c+a.a;b.d=b.d*a.c+a.b;b.b*=a.c;b.a*=a.c};W9b.li=function li(a){a.a=0;a.b=0;a.c=1};W9b.mi=function mi(a){return a.c==1&&a.a==0&&a.b==0};W9b.ni=function ni(a,b){return b*a.c+a.a};W9b.oi=function oi(a,b){return b*a.c+a.b};W9b.pi=function pi(){W9b.li(this)};W9b.qi=function qi(a,b){this.c=1;this.a=a;this.b=b};W9b.ri=function ri(a,b,c,d){var e,f,g,h;W9b.li(this);if(b){if((d&edc)==0){if(!(iac.bM(b,a.c,a.d)&&iac.bM(b,a.c+a.b,a.d+a.a))){if(a.b>b.b||a.a>b.a){f=b.b/a.b;h=b.a/a.a;this.c=$wnd.Math.min(f,h)}a.c*this.cb.c+b.b&&(this.a=b.c+b.b-(a.c+a.b)*this.c);a.d*this.cb.d+b.a&&(this.b=b.d+b.a-(a.d+a.a)*this.c)}}else{f=b.b/a.b;h=b.a/a.a;g=d&pbc;g==0?(g=24):(d&ddc)!=0&&(g/=256);e=g/c;this.c=$wnd.Math.min(e,$wnd.Math.min(f,h));this.a=b.c+b.b/2-this.c*(a.c+a.b/2);this.b=b.d+b.a/2-this.c*(a.d+a.a/2)}}else if((d&obc)!=0){g=(d&pbc)!=0?d&pbc:24;this.c=g/c}};WJb(79,1,{},W9b.pi,W9b.qi,W9b.ri);_.pb=function si(){return 'DepictorTransformation Offset: '+this.a+','+this.b+' Scaling: '+this.c};_.a=0;_.b=0;_.c=0;Q9b.Xwb=ySb(79);W9b.ti=function ti(a){var b,c,d,e;if(!R9b.hUb(U9b.E5b(a).substr(0,21),Wcc)||(d=U9b.E5b(Xcc).length,!R9b.hUb(U9b.E5b(a).substr(U9b.E5b(a).length-d,d),Xcc)))return null;c=R9b.nUb(a,zUb(34),21);if(c==-1)return null;e=(U9b.y5b(21,c,U9b.E5b(a).length),U9b.E5b(a).substr(21,c-21));b=R9b.wUb(a,21+U9b.E5b(e).length+1,U9b.E5b(a).length-17);if(R9b.hUb(e,'arrow'))return new gac.UH(b);if(R9b.hUb(e,kdc))return new W9b.Dw(b);return null};X9b.ui=function ui(a,b){var c,d,e;U9b.s5b(b);c=false;for(e=b.Ub();e.me();){d=e.ne();c=c|a.add(d)}return c};X9b.vi=function vi(a,b,c){var d,e;for(e=a.Ub();e.me();){d=e.ne();if(xwb(b)===xwb(d)||b!=null&&R9b.Lc(b,d)){c&&e.oe();return true}}return false};X9b.wi=function wi(a,b){var c,d;U9b.s5b(b);for(d=b.Ub();d.me();){c=d.ne();if(!a.contains(c)){return false}}return true};X9b.xi=function xi(a,b){var c,d,e;U9b.s5b(b);c=false;for(d=a.Ub();d.me();){e=d.ne();if(b.contains(e)){d.oe();c=true}}return c};X9b.yi=function yi(a,b){var c,d,e;U9b.s5b(b);c=false;for(d=a.Ub();d.me();){e=d.ne();if(!b.contains(e)){d.oe();c=true}}return c};X9b.zi=function zi(a){return a.Vb(ivb(Q9b._Gb,kbc,1,a.size(),5,1))};X9b.Ai=function Ai(a,b){var c,d,e,f;f=a.size();b.lengthf&&Q9b.lvb(b,f,null);return b};X9b.Bi=function Bi(a){var b,c,d;d=new X9b.Q2b(', ','[',']');for(c=a.Ub();c.me();){b=c.ne();X9b.N2b(d,xwb(b)===xwb(a)?'(this Collection)':b==null?ibc:bKb(b))}return !d.a?d.c:U9b.E5b(d.e).length==0?d.a.a:d.a.a+(''+d.e)};WJb(56,1,ldc);_.add=function Ci(a){throw eJb(new R9b.$Ub('Add not supported on this collection'))};_.addAll=function Di(a){return X9b.ui(this,a)};_.clear=function Ei(){var a;for(a=this.Ub();a.me();){a.ne();a.oe()}};_.contains=function Fi(a){return X9b.vi(this,a,false)};_.containsAll=function Gi(a){return X9b.wi(this,a)};_.isEmpty=function Hi(){return this.size()==0};_.remove=function Ii(a){return X9b.vi(this,a,true)};_.removeAll=function Ji(a){return X9b.xi(this,a)};_.retainAll=function Ki(a){return X9b.yi(this,a)};_.toArray=function Li(){return X9b.zi(this)};_.Vb=function Mi(a){return X9b.Ai(this,a)};_.pb=function Ni(){return X9b.Bi(this)};Q9b.pHb=ySb(56);X9b.Oi=function Oi(a,b){var c,d;for(c=0,d=a.size();c-1;--b){if(X9b.a2b(a,this.getAtIndex(b))){return b}}return -1};_.Wb=function _i(){return X9b.Pi(this)};_.Xb=function aj(a){return X9b.Qi(this,a)};_.removeAtIndex=function bj(a){throw eJb(new R9b.$Ub('Remove not supported on this list'))};_.Yb=function cj(a,b){var c,d;d=new X9b.oZb(this,a);for(c=a;c=0;--c){if(X9b.a2b(b,a.a[c])){return c}}return -1};X9b.tj=function tj(a,b){var c;c=(U9b.r5b(b,a.a.length),a.a[b]);U9b.X4b(a.a,b,1);return c};X9b.uj=function uj(a,b){var c;c=X9b.oj(a,b,0);if(c==-1){return false}X9b.tj(a,c);return true};X9b.vj=function vj(a,b,c){var d;U9b.v5b(b,c,a.a.length);d=c-b;U9b.X4b(a.a,b,d)};X9b.wj=function wj(a,b,c){var d;d=(U9b.r5b(b,a.a.length),a.a[b]);a.a[b]=c;return d};X9b.xj=function xj(a){return a.a.length};X9b.yj=function yj(a,b){X9b.U_b(a.a,a.a.length,b)};X9b.zj=function zj(a){return U9b.Q4b(a.a)};X9b.Aj=function Aj(a,b){var c,d;d=a.a.length;b.lengthd&&Q9b.lvb(b,d,null);return b};X9b.Bj=function Bj(){X9b.fj(this)};X9b.Cj=function Cj(a){X9b.fj(this);U9b.m5b(a>=0,'Initial capacity must not be negative')};X9b.Dj=function Dj(a){X9b.fj(this);U9b.U4b(this.a,0,X9b.Ai(a,ivb(Q9b._Gb,kbc,1,X9b.AYb(a.a),5,1)))};WJb(20,100,ndc,X9b.Bj,X9b.Cj,X9b.Dj);_.addAtIndex=function Ej(a,b){X9b.gj(this,a,b)};_.add=function Fj(a){return X9b.hj(this,a)};_.addAllAtIndex=function Gj(a,b){return X9b.ij(this,a,b)};_.addAll=function Hj(a){return X9b.jj(this,a)};_.clear=function Ij(){X9b.kj(this)};_.contains=function Jj(a){return X9b.lj(this,a)};_.getAtIndex=function Kj(a){return X9b.mj(this,a)};_.indexOf=function Lj(a){return X9b.nj(this,a)};_.isEmpty=function Mj(){return X9b.pj(this)};_.Ub=function Nj(){return X9b.qj(this)};_.lastIndexOf=function Oj(a){return X9b.rj(this,a)};_.removeAtIndex=function Pj(a){return X9b.tj(this,a)};_.remove=function Qj(a){return X9b.uj(this,a)};_.Yb=function Rj(a,b){X9b.vj(this,a,b)};_.setAtIndex=function Sj(a,b){return X9b.wj(this,a,b)};_.size=function Tj(){return X9b.xj(this)};_.toArray=function Uj(){return X9b.zj(this)};_.Vb=function Vj(a){return X9b.Aj(this,a)};Q9b.OHb=ySb(20);W9b.Wj=function Wj(a){var b,c,d;d=new R9b.RUb;for(c=new X9b.s_b(a);c.a3.0915926535897933&&c<3.191592653589793){a.j=-1;return a.j}a.j=cU9b.G5b((U9b.s5b(b),b))?-1:U9b.G5b((U9b.s5b(a),a))=a.M&&W9b.Cn(a,a.M*2);a.C[a.q]=0;W9b.nn(a,a.q,b);a.s[a.q]=0;a.u[a.q]=0;a.B[a.q]=0;a.w[a.q]=0;W9b.Xh(a.J[a.q],0,0,0);a.v!=null&&(a.v[a.q]=null);a.t!=null&&(a.t[a.q]=null);a.T=0;return a.q++};W9b.Ik=function Ik(a,b,c){return W9b.Jk(a,b,c,W9b.wm(a,b)||W9b.wm(a,c)?32:1)};W9b.Jk=function Jk(a,b,c,d){var e;if(b==c)return -1;for(e=0;e=a.N&&W9b.Dn(a,a.N*2);a.D[0][a.r]=b;a.D[1][a.r]=c;a.H[a.r]=d;a.F[a.r]=0;a.G[a.r]=0;a.T=0;return a.r++};W9b.Kk=function Kk(a,b){return W9b.Lk(a,b,b.q,b.r)};W9b.Lk=function Lk(a,b,c,d){var e,f,g,h,i;a.K=a.K|b.K;f=ivb(Q9b.Dwb,zbc,6,b.q,15,1);h=W9b.Pm(a,1);i=W9b.Pm(a,2);for(e=0;e=a.M&&W9b.Cn(a,a.M*2);i=W9b.Hk(a,d);W9b.Xh(a.J[i],b,c,0);a.A[i]=e;W9b.Tm(a,i,f);W9b.gn(a,i,g);W9b.Ym(a,i,h);return true}j=W9b.Tk(a,i,d,e,f,g);W9b.Ym(a,i,h);return j};W9b.Nk=function Nk(a,b,c,d){var e;for(e=0;e=a.N&&W9b.Dn(a,a.N*2);a.D[0][a.r]=b;a.D[1][a.r]=c;a.H[a.r]=d;a.F[a.r]=0;a.G[a.r]=0;a.T=0;return a.r++};W9b.Ok=function Ok(a,b,c,d,e,f){var g,h,i;while(a.q+d>a.M)W9b.Cn(a,a.M*2);while(a.r+d>a.N)W9b.Dn(a,a.N*2);g=W9b.jl(a,b,c);if(g!=-1)return W9b.Pk(a,g,d,e,f);h=W9b.kl(a,b,c);if(h!=-1)return W9b.Qk(a,h,d,e,f);g=W9b.Gk(a,b,c,0);i=Qbc*(d-2)/d;W9b.Hm(a,g,d,g,e,0,Qbc-i,f);a.T=0;return true};W9b.Pk=function Pk(a,b,c,d,e){var f,g,h,i,j,k;if(d&&W9b.fp(a,b)>1||!d&&W9b.fp(a,b)>2)return false;g=0;f=ivb(Q9b.Bwb,xbc,6,4,15,1);for(i=0;iQbc?(f[0]+f[1])/2:(f[0]+f[1])/2+Qbc;h=Qbc*(c-2)/c;W9b.Hm(a,b,c,b,d,k-h/2,Qbc-h,e);a.T=0;return true};W9b.Qk=function Qk(a,b,c,d,e){var f,g,h,i,j,k,l,m,n,o,p;j=ivb(Q9b.Dwb,zbc,6,2,15,1);i=ivb(Q9b.Bwb,xbc,6,2,15,1);j[0]=a.D[0][b];j[1]=a.D[1][b];if(W9b.fp(a,j[0])>3)return false;if(W9b.fp(a,j[1])>3)return false;g=0;f=ivb(Q9b.Bwb,xbc,6,4,15,1);for(m=0;mi[0]&&f[l]0?1-h:h;k=Qbc*(c-2)/c;W9b.Hm(a,j[h],c-1,j[1-h],d,i[p>0?0:1]+Qbc-k,Qbc-k,e);a.T=0;return true};W9b.Rk=function Rk(a,b,c){var d,e,f,g,h,i,j,k,l,m,n,o,p;e=ivb(Q9b.Dwb,zbc,6,b.q,15,1);i=W9b.Pm(a,1);j=W9b.Pm(a,2);for(d=0;d1)return false;a.B[b]=gJb(a.B[b],-2);a.v!=null&&(a.v[b]=null);a.t!=null&&(a.t[b]=null);if(c==a.C[b]&&d==a.A[b]&&e==((a.u[b]&sdc)>>>27)-1&&f==(a.u[b]&48))return false;if(c==151||c==152){d=c-149;c=1}a.u[b]&=960;a.C[b]=c;a.A[b]=d;a.s[b]=0;a.B[b]=0;W9b.Tm(a,b,e);W9b.gn(a,b,f);W9b.Nm(a,a.w[b]);a.T=0;return true};W9b.Uk=function Uk(a,b,c,d){var e;e=W9b.jl(a,b,c);return e!=-1&&W9b.Vk(a,e,d)};W9b.Vk=function Vk(a,b,c){if(c){if(a.s[b]>8)return false;++a.s[b]}else{if(a.s[b]<-8)return false;--a.s[b]}a.T=0;return true};W9b.Wk=function Wk(a,b,c){var d,e,f,g,h;f=false;g=a.H[b];if(c==511){f=W9b.em(a,b)}else if(W9b.nq(a,b,c)){if(c==257||c==129){d=W9b.Im(a,b,a.D[0][b]);e=W9b.Im(a,b,a.D[1][b]);if(c==g){if(d==e||e){h=a.D[0][b];a.D[0][b]=a.D[1][b];a.D[1][b]=h;f=true}}else{if(!d&&e){h=a.D[0][b];a.D[0][b]=a.D[1][b];a.D[1][b]=h}a.H[b]=c;f=true}}else{a.H[b]=c;f=true}}if(f){a.T=(g&127)==(c&127)?a.T&7:0;a.G[b]=0}return f};W9b.Xk=function Xk(a){a.q=0;a.r=0;a.K=false;a.L=false;a.I=0;a.v=null;a.t=null;a.P=null;a.T=0};W9b.Yk=function Yk(a){var b,c,d,e,f,g,h,i;for(g=0;g=b.M&&W9b.Cn(b,b.M*2);h=(a.u[c]&Qcc)>>18;g=-1;h==1?d==-1?(g=W9b.Pm(b,h)):(g=$wnd.Math.min(31,d+((a.u[c]&Qcc)>>18!=1&&(a.u[c]&Qcc)>>18!=2?-1:(a.u[c]&tdc)>>20))):h==2&&(e==-1?(g=W9b.Pm(b,h)):(g=$wnd.Math.min(31,e+((a.u[c]&Qcc)>>18!=1&&(a.u[c]&Qcc)>>18!=2?-1:(a.u[c]&tdc)>>20))));b.C[f]=a.C[c];b.s[f]=a.s[c];b.A[f]=a.A[c];b.u[f]=a.u[c];b.B[f]=b.K?a.B[c]:0;W9b.Yh(b.J[f],a.J[c]);b.w[f]=a.w[c];b.v!=null&&(b.v[f]=null);if(a.v!=null&&a.v[c]!=null&&b.K){b.v==null&&(b.v=ivb(Q9b.Dwb,adc,7,b.C.length,0,2));b.v[f]=X9b.z_b(a.v[c],a.v[c].length)}b.t!=null&&(b.t[f]=null);if(a.t!=null&&a.t[c]!=null){b.t==null&&(b.t=ivb(Q9b.zwb,abc,10,b.C.length,0,2));b.t[f]=X9b.x_b(a.t[c],a.t[c].length)}if(g!=-1){b.u[f]&=-32505857;b.u[f]|=g<<20}++b.q;b.T=0;return f};W9b.$k=function $k(a,b,c,d,e,f,g,h){var i,j,k,l;j=b.r;j>=b.N&&W9b.Dn(b,b.N*2);l=(a.F[c]&768)>>8;k=-1;l==1&&(d==-1?(k=W9b.Pm(b,l)):(k=$wnd.Math.min(32,d+((a.F[c]&768)>>8!=1&&(a.F[c]&768)>>8!=2?-1:(a.F[c]&udc)>>10))));l==2&&(e==-1?(k=W9b.Pm(b,l)):(k=$wnd.Math.min(32,e+((a.F[c]&768)>>8!=1&&(a.F[c]&768)>>8!=2?-1:(a.F[c]&udc)>>10))));b.D[0][j]=f;b.D[1][j]=g;i=h&&a.$b(c)?64:a.H[c];b.H[j]=i;b.F[j]=a.F[c];b.G[j]=b.K?a.G[c]:0;if(k!=-1){b.F[j]&=-31745;b.F[j]|=k<<10}++b.r;b.T=0;return j};W9b._k=function _k(a,b,c,d,e,f,g){return W9b.$k(a,b,c,d,e,f==null?a.D[0][c]:f[a.D[0][c]],f==null?a.D[1][c]:f[a.D[1][c]],g)};W9b.al=function al(a,b){var c,d;b.v=null;b.t=null;b.K=a.K;b.q=0;for(c=0;ce/2)continue;if(q==p)j=$wnd.Math.abs(p-b);else{h=(s-r)/(p-q);i=-h*p-r;j=$wnd.Math.abs((h*b+c+i)/$wnd.Math.sqrt(h*h+1))}if(j>>27)-1};W9b.ml=function ml(a,b){return (a.u[b]&hcc)>>14};W9b.nl=function nl(a,b){return a.s[b]};W9b.ol=function ol(a,b){return a.u[b]&448};W9b.pl=function pl(a,b){var c;return a.t==null?null:a.t[b]==null?null:R9b.fUb((c=a.t[b],Tac.JXb(),c))};W9b.ql=function ql(a,b){return a.t==null?null:a.t[b]};W9b.rl=function rl(a,b){return (a.u[b]&Qcc)>>18!=1&&(a.u[b]&Qcc)>>18!=2?-1:(a.u[b]&tdc)>>20};W9b.sl=function sl(a,b){return (a.u[b]&Qcc)>>18};W9b.tl=function tl(a,b){return W9b.zk[a.C[b]]};W9b.ul=function ul(a,b){return a.v==null?null:a.v[b]};W9b.vl=function vl(a,b){var c,d,e;if(a.v==null||a.v[b]==null)return BJb(gJb(a.B[b],1),0)?'':W9b.zk[a.C[b]];e='';for(d=0;d0&&(e=(U9b.s5b(e),e+(U9b.s5b(','),',')));c=a.v[b][d];e=R9b.dUb(e,W9b.zk[c])}return e};W9b.wl=function wl(a,b){return $wnd.Math.abs(a.w[b])};W9b.xl=function xl(a,b){return a.A[b]};W9b.yl=function yl(a,b){return a.u[b]&3};W9b.zl=function zl(a,b){return a.B[b]};W9b.Al=function Al(a,b){return a.u[b]&48};W9b.Bl=function Bl(a,b){return a.J[b].a};W9b.Cl=function Cl(a,b){return a.J[b].b};W9b.Dl=function Dl(a,b){return a.J[b].c};W9b.El=function El(a,b){return a.C[b]};W9b.Fl=function Fl(a){return W9b.Hl(a,a.q,a.r,W9b.Ek)};W9b.Gl=function Gl(a,b){return W9b.Hl(a,a.q,a.r,b)};W9b.Hl=function Hl(a,b,c,d){return W9b.Il(a,b,c,d,a.J)};W9b.Il=function Il(a,b,c,d,e){var f,g,h,i,j,k,l,m,n,o;l=false;m=0;for(j=0;j0&&n>9)+((a.G[b]&vdc)>>13)};W9b.Ml=function Ml(a,b){return (a.G[b]&7680)>>9};W9b.Nl=function Nl(a,b){return (a.F[b]&48)>>4};W9b.Ol=function Ol(a,b){return (a.F[b]&768)>>8!=1&&(a.F[b]&768)>>8!=2?-1:(a.F[b]&udc)>>10};W9b.Pl=function Pl(a,b){return (a.F[b]&768)>>8};W9b.Ql=function Ql(a,b){var c,d,e,f;c=a.D[0][b];d=a.D[1][b];e=a.J[d].a-a.J[c].a;f=a.J[d].b-a.J[c].b;return $wnd.Math.sqrt(e*e+f*f)};W9b.Rl=function Rl(a,b,c){var d;for(d=0;da.J[c].a?(d=a.J[c].a):ea.J[c].b?(f=a.J[c].b):g=171&&d<=190)return 0;f=0;(a.u[b]&48)==32&&(f-=1);((a.u[b]&48)==16||(a.u[b]&48)==48)&&(f-=2);e=a.s[b];if(e==0&&a.K){qJb(gJb(a.B[b],acc),dcc)&&(e=-1);qJb(gJb(a.B[b],acc),ccc)&&(e=1)}d==7||d==8||d==9?(f+=e):d==6||d==14||d==32?(f-=$wnd.Math.abs(e)):d==15||d==33?c-f-e<=3?(f+=e):(f-=e):d==16||d==34||d==52?c-f-e<=4?(f+=e):(f-=$wnd.Math.abs(e)):d==17||d==35||d==53?c-f-e<=5?(f+=e):(f-=$wnd.Math.abs(e)):(f-=e);return f};W9b.am=function am(a,b){var c;c=W9b.bm(a,b);return c+W9b._l(a,b,c,a.C[b])};W9b.bm=function bm(a,b){var c,d;c=((a.u[b]&sdc)>>>27)-1;c==-1&&(c=(d=a.C[b]e&&(f=e)}return f};W9b.dm=function dm(a,b){return (a.u[b]&obc)!=0};W9b.em=function em(a,b){var c,d,e;d=W9b.cm(a,b);c=W9b.wm(a,a.D[0][b])||W9b.wm(a,a.D[1][b]);e=c?32:1;if(a.H[b]==16){a.H[b]=e;a.T=0;return true}if(a.H[b]==8){a.H[b]=d>4?16:e;a.T=0;return true}if(a.H[b]==4){a.H[b]=d>3?8:e;a.T=0;return true}if(a.H[b]==2){a.H[b]=386;a.T&=7;if((a.F[b]&128)==0)return true}if(a.H[b]==386){d>2?(a.H[b]=4):(a.H[b]=e);a.T=0;return true}if((384&a.H[b])!=0){a.H[b]=1;a.T&=7;return true}if(!c&&d<2)return false;if(a.H[b]==1){a.H[b]=2;a.T=0;return true}if(d<1)return false;if(a.H[b]==32){a.H[b]=1;a.T=0;return true}return false};W9b.fm=function fm(a){var b;a.T=0;a.C=ivb(Q9b.Dwb,zbc,6,a.M,15,1);a.s=ivb(Q9b.Dwb,zbc,6,a.M,15,1);a.w=ivb(Q9b.Dwb,zbc,6,a.M,15,1);a.J=ivb(Q9b.Wwb,wdc,34,a.M,0,1);for(b=0;b=3&&c<=4||c>=11&&c<=13||c>=19&&c<=31||c>=37&&c<=51||c>=55&&c<=84||c>=87&&c<=112))return false}}return W9b.co(a.C[b])};W9b.xm=function xm(a,b){return a.A[b]==0};W9b.ym=function ym(a,b){var c,d,e,f;if(a.K){if(BJb(gJb(a.B[b],1),0))return false;if(a.v!=null&&a.v[b]!=null)for(d=a.v[b],e=0,f=d.length;e=5&&c<=9||c>=14&&c<=17||c>=32&&c<=35||c>=52&&c<=53))return false}}return W9b.eo(a.C[b])};W9b.zm=function zm(a){var b;for(b=0;b=21&&c<=30||c>=39&&c<=48||c==57||c>=72&&c<=80||c==89||c>=104&&c<=112))return false}}return W9b.fo(a.C[b])};W9b.Fm=function Fm(a,b){a.C[b]=-1};W9b.Gm=function Gm(a,b){a.H[b]=512};W9b.Hm=function Hm(a,b,c,d,e,f,g,h){var i,j,k,l,m,n,o,p,q,r;if(b!=d){q=a.J[b].a-a.J[d].a;r=a.J[b].b-a.J[d].b;h=$wnd.Math.sqrt(q*q+r*r)}i=b;k=W9b.Hn(a,b)!=3;for(p=1;p>18==b){h==null&&(h=ivb(Q9b._Ib,Lbc,6,32,16,1));h[(a.u[d]&Qcc)>>18!=1&&(a.u[d]&Qcc)>>18!=2?-1:(a.u[d]&tdc)>>20]=true}}for(f=0;f>8==b){h==null&&(h=ivb(Q9b._Ib,Lbc,6,32,16,1));h[(a.F[f]&768)>>8!=1&&(a.F[f]&768)>>8!=2?-1:(a.F[f]&udc)>>10]=true}}k=0;if(h!=null){j=ivb(Q9b.Dwb,zbc,6,32,15,1);for(i=0;i<32;i++)h[i]&&(j[i]=k++);for(c=0;c>18==b){g=j[(a.u[c]&Qcc)>>18!=1&&(a.u[c]&Qcc)>>18!=2?-1:(a.u[c]&tdc)>>20];a.u[c]&=-32505857;a.u[c]|=g<<20}}for(e=0;e>8==b){g=j[(a.F[e]&768)>>8!=1&&(a.F[e]&768)>>8!=2?-1:(a.F[e]&udc)>>10];a.F[e]&=-31745;a.F[e]|=g<<10}}}return k};W9b.Qm=function Qm(a,b){var c;for(c=0;c=-1&&c<=14){a.u[b]&=-2013265921;a.u[b]|=1+c<<27;if(a.C[b]==6){if(c==-1||c==0||c==2||c==4){a.u[b]&=-49;c==2&&(a.u[b]|=16)}}}};W9b.Um=function Um(a,b,c){a.u[b]&=-49153;a.u[b]|=c<<14};W9b.Vm=function Vm(a,b,c){a.s[b]=c;a.T=0};W9b.Wm=function Wm(a,b,c){a.u[b]&=-449;a.u[b]|=c};W9b.Xm=function Xm(a,b,c){c?(a.u[b]|=xdc):(a.u[b]&=Bdc);a.T&=7};W9b.Ym=function Ym(a,b,c){var d,e;if(c!=null){if(U9b.E5b(c).length==0)c=null;else{d=W9b._n(c,321);if(d!=0&&R9b.hUb(c,W9b.zk[d])||R9b.hUb(c,'?')){W9b.nn(a,b,d);c=null}}}if(c==null){a.t!=null&&(a.t[b]=null)}else{a.t==null&&(a.t=ivb(Q9b.zwb,abc,10,a.M,0,2));a.t[b]=U9b.e5b((e=c,Tac.JXb(),e))}};W9b.Zm=function Zm(a,b,c){c!=null&&c.length==0&&(c=null);if(c==null){a.t!=null&&(a.t[b]=null)}else{a.t==null&&(a.t=ivb(Q9b.zwb,abc,10,a.M,0,2));a.t[b]=c}};W9b.$m=function $m(a,b,c,d){var e,f,g;if(c==0){a.u[b]&=Cdc;a.u[b]|=c<<18}else{if(d>=32)return;if(d==-1){g=-1;for(f=0;f>18&&g<((a.u[f]&Qcc)>>18!=1&&(a.u[f]&Qcc)>>18!=2?-1:(a.u[f]&tdc)>>20)&&(g=(a.u[f]&Qcc)>>18!=1&&(a.u[f]&Qcc)>>18!=2?-1:(a.u[f]&tdc)>>20);for(e=0;e>8&&g<((a.F[e]&768)>>8!=1&&(a.F[e]&768)>>8!=2?-1:(a.F[e]&udc)>>10)&&(g=(a.F[e]&768)>>8!=1&&(a.F[e]&768)>>8!=2?-1:(a.F[e]&udc)>>10);d=g+1;if(d>=32)return}a.u[b]&=Cdc;a.u[b]|=c<<18|d<<20}a.T&=7};W9b._m=function _m(a,b,c){a.v==null&&(a.v=ivb(Q9b.Dwb,adc,7,a.M,0,2));c!=null&&U9b.Z4b(c,U9b.E5b(ZJb(X9b.l0b.prototype.Ge,X9b.l0b,[])));a.v[b]=c;a.T=0;a.K=true};W9b.an=function an(a,b,c,d){var e;if(c==null){a.v!=null&&(a.v[b]=null);return}if(c.length==1&&!d){e=c[0];a.C[b]!=e&&W9b.Tk(a,b,e,0,-1,0);a.v!=null&&(a.v[b]=null);return}a.v==null&&(a.v=ivb(Q9b.Dwb,adc,7,a.M,0,2));a.v[b]=c;d&&(a.B[b]=DJb(a.B[b],1));a.T=0;a.K=true};W9b.bn=function bn(a,b,c,d){a.w[b]=d?-c:c};W9b.cn=function cn(a,b,c){c?(a.u[b]|=ddc):(a.u[b]&=Adc)};W9b.dn=function dn(a,b,c){a.A[b]=c;a.T&=a.C[b]==1?0:7};W9b.en=function en(a,b,c,d){a.u[b]&=-8;c!=3&&(a.u[b]&=Bdc);a.u[b]|=c;d&&(a.u[b]|=4)};W9b.fn=function fn(a,b,c,d){d?(a.B[b]=DJb(a.B[b],c)):(a.B[b]=gJb(a.B[b],CJb(c)));a.T=0;a.K=true};W9b.gn=function gn(a,b,c){a.u[b]&=-49;a.u[b]|=c;a.T&=7};W9b.hn=function hn(a,b,c){c?(a.u[b]|=512):(a.u[b]&=-513)};W9b.jn=function jn(a,b,c){a.u[b]&=-67108865;c&&(a.u[b]|=ydc)};W9b.kn=function kn(a,b,c){a.J[b].a=c;a.T&=7};W9b.ln=function ln(a,b,c){a.J[b].b=c;a.T&=7};W9b.mn=function mn(a,b,c){a.J[b].c=c;a.T&=7};W9b.nn=function nn(a,b,c){if(c>=0&&c<=190){if(c==151||c==152){a.C[b]=1;a.A[b]=c-149}else{a.C[b]=c;a.A[b]=0}a.u[b]&=-2013265921;a.T=0}};W9b.on=function on(a,b,c,d){a.D[b][c]=d;a.T=0};W9b.pn=function pn(a,b,c){c?(a.F[b]|=zdc):(a.F[b]&=-32769)};W9b.qn=function qn(a,b,c){a.F[b]&=-49;a.F[b]|=c<<4};W9b.rn=function rn(a,b,c,d){var e,f,g;if(c==0){a.F[b]&=-32513;a.F[b]|=c<<8}else{if(d>=32)return;if(d==-1){g=-1;for(f=0;f>18&&g<((a.u[f]&Qcc)>>18!=1&&(a.u[f]&Qcc)>>18!=2?-1:(a.u[f]&tdc)>>20)&&(g=(a.u[f]&Qcc)>>18!=1&&(a.u[f]&Qcc)>>18!=2?-1:(a.u[f]&tdc)>>20);for(e=0;e>8&&g<((a.F[e]&768)>>8!=1&&(a.F[e]&768)>>8!=2?-1:(a.F[e]&udc)>>10)&&(g=(a.F[e]&768)>>8!=1&&(a.F[e]&768)>>8!=2?-1:(a.F[e]&udc)>>10);d=g+1;if(d>=32)return}a.F[b]&=-32513;a.F[b]|=c<<8|d<<10}a.T&=7};W9b.sn=function sn(a,b,c){c?(a.F[b]|=obc):(a.F[b]&=-65537)};W9b.tn=function tn(a,b,c){a.H[b]=c==1?1:c==2?2:c==3?4:32;a.T=0};W9b.un=function un(a,b,c,d){a.F[b]&=-131080;a.F[b]|=c;d&&(a.F[b]|=4)};W9b.vn=function vn(a,b){a.F[b]|=ddc};W9b.wn=function wn(a,b,c,d){d?(a.G[b]|=c):(a.G[b]&=~c);a.T=0;d&&c!=0&&(a.K=true)};W9b.xn=function xn(a,b,c){a.H[b]=c;a.T=0};W9b.yn=function yn(a,b){a.I=b};W9b.zn=function zn(a,b){if(a.K!=b){a.K=b;b||W9b.Om(a);a.T=0}};W9b.An=function An(a,b){a.T=b};W9b.Bn=function Bn(a,b){a.S=b};W9b.Cn=function Cn(a,b){var c,d;a.C=W9b.Tn(a.C,b);a.s=W9b.Tn(a.s,b);a.w=W9b.Tn(a.w,b);d=a.J.length;a.J=W9b.Vn(a.J,b);for(c=d;c=1;case 2:return d>=2;case 4:return d>=3;case 8:return d>=4;case 16:return d>=5;case 32:return true;default:return false;}};W9b.On=function On(a,b,c,d){var e,f,g;for(e=0;e=0&&a=171&&a<=190?W9b.yk:W9b.Ck};W9b.Zn=function Zn(a,b,c,d){W9b.Fk();var e,f,g;f=c-a;g=d-b;if(g!=0){e=$wnd.Math.atan(f/g);g<0&&(f<0?(e-=Qbc):(e+=Qbc))}else e=f>0?Rbc:Kcc;return e};W9b.$n=function $n(a,b){W9b.Fk();var c;c=a-b;while(cQbc)c-=Pbc;return c};W9b._n=function _n(a,b){W9b.Fk();var c,d,e,f,g;if((b&256)!=0&&R9b.hUb(a,'?'))return 0;for(d=1;d<=128;d++)if(!R9b.hUb(a,rdc)&&R9b.iUb(a,W9b.zk[d]))return d;if((b&2)!=0)for(e=129;e<=144;e++)if(R9b.iUb(a,W9b.zk[e]))return e;if((b&4)!=0)for(f=146;f<=148;f++)if(R9b.iUb(a,W9b.zk[f]))return f;if((b&1)!=0)for(g=151;g<=152;g++)if(R9b.iUb(a,W9b.zk[g]))return g;if((b&32)!=0)if(R9b.iUb(a,W9b.zk[153]))return 153;if((b&8)!=0)if(R9b.iUb(a,W9b.zk[154]))return 154;if((b&16)!=0)if(R9b.iUb(a,W9b.zk[145]))return 145;if((b&128)!=0)if(R9b.iUb(a,W9b.zk[159]))return 159;if((b&64)!=0)for(c=171;c<=190;c++)if(R9b.iUb(a,W9b.zk[c]))return c;return 0};W9b.ao=function ao(a){W9b.Fk();switch(a){case 7:case 8:case 9:case 15:case 16:case 17:case 33:case 34:case 35:case 52:case 53:return true;}return false};W9b.bo=function bo(a){W9b.Fk();if(a==1||a==6)return false;if(W9b.ao(a))return false;if(a==2||a==10||a==18||a==36||a==54)return false;if(a>103)return false;return true};W9b.co=function co(a){return a>=3&&a<=4||a>=11&&a<=13||a>=19&&a<=31||a>=37&&a<=51||a>=55&&a<=84||a>=87&&a<=112};W9b.eo=function eo(a){return a==1||a>=5&&a<=9||a>=14&&a<=17||a>=32&&a<=35||a>=52&&a<=53};W9b.fo=function fo(a){return a>=21&&a<=30||a>=39&&a<=48||a==57||a>=72&&a<=80||a==89||a>=104&&a<=112};WJb(109,1,{109:1,4:1},W9b.Qn);_.Zb=function Sn(a){W9b.bl(this,a)};_.$b=function go(a){return this.H[a]==64};_.q=0;_.r=0;_.I=0;_.K=false;_.L=false;_.M=0;_.N=0;_.O=0;_.S=false;_.T=0;_.U=0;_.V=0;W9b.Ek=24;Q9b.ixb=ySb(109);W9b.ho=function ho(a,b,c,d){var e,f,g,h,i,j,k,l,m;W9b.Dv(b,1);d==null&&(d=ivb(Q9b.Dwb,zbc,6,b.q,15,1));h=W9b.Pm(a,1);i=W9b.Pm(a,2);m=ivb(Q9b._Ib,Lbc,6,b.q,16,1);j=ivb(Q9b.Dwb,zbc,6,b.q,15,1);j[0]=c;m[c]=true;d[c]=W9b.Zk(b,a,c,h,i);g=0;k=0;while(g<=k){for(l=0;l1?(a.o[c]+=m-1):a.H[h]==64&&(a.o[c]=1))}}for(i=a.g;i0&&a.s[a.D[1][i]]<0){f=a.D[0][i];g=a.D[1][i]}else if(a.s[a.D[0][i]]<0&&a.s[a.D[1][i]]>0){f=a.D[1][i];g=a.D[0][i]}else continue;if(W9b.wm(a,f)||W9b.wm(a,g))continue;if(a.C[f]<9&&W9b.fp(a,f)>3||a.C[g]<9&&W9b.fp(a,g)>3)continue;l=W9b.$o(a,f)!=0;a.s[f]-=1;a.s[g]+=1;if(!l){s=a.H[i];j==1?(a.H[i]=2):(a.H[i]=4);if(s==129||s==257){w=a.D[0][i];r=W9b.$p(a,w,false);if(a.D[0][r]!=w){a.D[1][r]=a.D[0][r];a.D[1][r]=w}}}a.T=0}}t=0;p=0;n=0;for(e=0;e0){if(!W9b.xp(a,h)&&W9b.tm(a,h)){k=$wnd.Math.min(W9b.$o(a,h),a.s[h]);if(k!=0&&v>=k){t-=k;u-=k;v-=k;a.s[h]-=k;a.T&=1}}}}q=c?t:u;if(q<0){o=ivb(Q9b.Dwb,zbc,6,p,15,1);p=0;for(f=0;f=o.length-p;m--){d=o[m]&Edc;if(W9b.tm(a,d)){k=$wnd.Math.min(-q,-a.s[d]);t+=k;q+=k;a.s[d]+=k;a.T&=1}}}return t};W9b.ko=function ko(a){var b,c,d,e,f,g,h,i,j,k,l,m,n;for(c=0;c0){if(qJb(gJb(a.B[b],Jcc),0)){k=qJb(gJb(a.B[b],Ybc),896)?3:qJb(gJb(a.B[b],Ybc),384)?2:qJb(gJb(a.B[b],128),128)?1:0;i=(n=W9b.bm(a,b),n+W9b._l(a,b,n,a.C[b])-W9b.fp(a,b));a.s[b]==0&&qJb(gJb(a.B[b],acc),0)&&a.C[b]!=6&&++i;l=h;l>3-k&&(l=3-k);l>i+h-k&&(l=i+h-k);if(l>0){m=k==0?0:EJb(gJb(a.B[b],Ybc),l);m=DJb(m,Q9b.oJb((l==3?7:h==2?3:1)<<7));a.B[b]=gJb(a.B[b],-1921);a.B[b]=DJb(a.B[b],gJb(Ybc,m))}}for(j=a.j[b];j=15){for(e=0;e1){for(l=0;l1){for(l=0;l1&&(a.C[a.i[h][l]]==6?(a.u[e]|=Ubc):!W9b.Dp(a,a.k[h][l])&&W9b.tm(a,a.i[h][l])&&(a.u[e]|=Icc))}}}while(true){j=false;for(c=0;c0&&(a.u[c]&Icc)!=0&&!W9b.Ss(a.p,c)){for(k=0;k1){h=a.i[c][k];i=a.k[c][k];for(l=0;l=5)for(c=0;c3&&(a.u[c]|=Fdc)}for(j=0;j4)return false;i=ivb(Q9b._Ib,Lbc,6,4,16,1);for(h=0;h0.0872664675116539)return false;e[h]=3&ywb(f/Rbc);if(i[e[h]])return false;i[e[h]]=true;if((e[h]&1)==0){if(a.H[a.k[b][c[h]]]!=1)return false}else{if(!W9b.Dm(a,a.k[b][c[h]],b))return false}}return i[0]&&i[2]};W9b.Qo=function Qo(a,b,c,d,e){var f,g,h,i,j,k,l,m;if((!!a.p&&b24)return 3;f=a.e[b];e==null&&(e=ivb(Q9b.Dwb,zbc,6,f,15,1));if(!W9b.Po(a,b,c,d,e))return 3;i=-1;for(j=0;j=0&&b[e]);for(c=0;c=e)return f[d];return e};W9b.Zo=function Zo(a){var b,c;if(a.K)return 0;W9b.Dv(a,1);c=0;for(b=0;b>1}h-=W9b._l(a,b,h,a.C[b]);g=((a.u[b]&sdc)>>>27)-1;if(g==-1){i=W9b.Yn(a.C[b]);g=i[0];for(d=1;g>>27)-1;if(g==-1){h=W9b.Yn(a.C[b]);e=0;while(f>h[e]+d&&e=171&&a.C[b]<=190){c=a.e[b];c>2&&(e-=(c-2)*W9b.Dk[1])}}return e};W9b.dp=function dp(a,b){var c,d;c=a.j[b];for(d=0;d1&&(g=true);c=a.k[b][e];a.H[c]==64&&(d=true)}}d&&!g&&++h;return h};W9b.gp=function gp(a,b,c){var d,e,f;e=0;for(f=0;f2&&++e}return e};W9b.hp=function hp(a,b,c,d,e,f,g){var h,i,j,k,l,m,n,o,p;if(c==d){b[0]=c;return 0}a._b(1);k=ivb(Q9b.Dwb,zbc,6,a.q,15,1);j=ivb(Q9b.Dwb,zbc,6,a.q,15,1);p=ivb(Q9b.Dwb,zbc,6,a.q,15,1);j[0]=c;k[c]=1;i=0;l=0;while(i<=l&&k[j[i]]<=e){o=j[i];for(m=0;m0){b[n-1]=p[b[n]];--n}return k[o]}if(k[h]==0&&(f==null||f.length<=h||!f[h])){j[++l]=h;k[h]=k[o]+1;p[h]=o}}}++i}return -1};W9b.ip=function ip(a,b,c,d){var e,f;W9b.Dv(a,1);for(e=0;ef[0]&&c[j]1&&!(e2&&++g}g==2&&++e}}return e};W9b.qp=function qp(a,b){var c,d,e,f;c=a.e[b];f=ivb(Q9b.Dwb,zbc,6,c,15,1);for(e=0;el)h=f;else{h=l;l=f}}}if(a.j[d]==2){if(a.j[e]==2)return n==2?l:-1;return n==2?l:h}else{if(a.j[e]==2)return n==2^b=0&&g[i]);for(b=0;b=0&&h[j]);for(e=0;e0)return true;return false};W9b.zp=function zp(a,b){var c;c=a.C[b];return c==3||c==11||c==19||c==37||c==55};W9b.Ap=function Ap(a,b){return (a.u[b]&Ubc)!=0};W9b.Bp=function Bp(a,b){var c,d,e,f,g,h;W9b.Dv(a,1);for(g=0;g<2;g++){c=a.D[g][b];if(a.C[c]==7){d=a.D[1-g][b];for(h=0;h=2)return true}}}return false};W9b.Cp=function Cp(a,b){return b5&&(!!a.p&&d5)return e+f>2;g=W9b.pp(a,c,d);h=W9b.pp(a,d,c);if(e==2&&h>=1)return true;if(f==2&&g>=1)return true;if(g==2&&(f>=1||h>=1))return true;if(h==2&&(e>=1||g>=1))return true;return false};W9b.Fp=function Fp(a,b){return a.o[b]==2&&a.j[b]==2&&a.n[b][0]==2&&a.n[b][1]==2&&a.C[b]<=7};W9b.Gp=function Gp(a,b){var c;c=a.C[b];return c==8||c==16||c==34||c==52};W9b.Hp=function Hp(a,b){return b=5){p=0;for(m=0;m=3&&++p}n=W9b.dp(a,b);if(p==2&&n>=2||p==1&&n==3)continue}return !c||!W9b.Pp(a,b)}for(l=0;l=3){r=W9b.Ls(a.p,c);for(l=0;l<6;l++){if(b==r[l]){q=W9b.dt(a.p,c,h==r[W9b.dt(a.p,c,l+2)]?l-2:l+2);p=r[q];k=a.u[p]&Fdc;if((k==0?0:k==_bc?2:k==Jcc?3:4)>=3&&W9b.kp(a,n[1],p,2,null)==2)return true;break}}}}i=a.o[h]==1||h7)return false;f=0;while(f=_bc&&f==a.p.i.a.length)return false;for(e=0;eIdc){g=0;h=0;for(q=0;q>>27)-1;(e==-1||e3&&(a.u[h]&ydc)!=0){p=0;m=-1;l=-1;for(k=0;k=3){f=W9b.Zn(a.J[h].a,a.J[h].b,a.J[l].a,a.J[l].b);n=10;o=-1;for(j=0;jg){n=g;o=a.k[h][j]}}}if(o!=-1){i=e[o];W9b.xn(b,i,a.H[o]==257?129:257);if(a.D[0][o]!=h){W9b.on(b,1,i,d[a.D[0][o]]);W9b.on(b,0,i,d[h])}}}}}};W9b.cq=function cq(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,A;if(a.j[b]!=2||a.n[b][0]!=2||a.n[b][1]!=2||a.j[a.i[b][0]]<2||a.j[a.i[b][1]]<2||a.o[a.i[b][0]]!=1||a.o[a.i[b][1]]!=1){W9b.en(a,b,0,false);return}v=-1;u=-1;t=-1;q=-1;f=0;for(l=0;l<2;l++){d=a.i[b][l];for(o=0;og&&(i=g)}r=ivb(Q9b.Dwb,zbc,6,2,15,1);s=0;for(k=0;kr[1]){A=r[0];r[0]=r[1];r[1]=A}j=W9b.$n(c,W9b.Jl(a,q,r[0]));p=W9b.$n(c,W9b.Jl(a,q,r[1]));e=j-p}else{e=W9b.$n(c,W9b.Jl(a,q,r[0]))}e<0^(a.u[b]&3)==1^i==u?(a.H[v]=257):(a.H[v]=129)};W9b.dq=function dq(a,b,c,d){var e,f,g,h,i,j;e=a.e[b];h=ivb(Q9b.Dwb,zbc,6,e,15,1);j=W9b.Qo(a,b,c,d,h);if(j==3)return false;g=(a.u[b]&3)==j?257:129;for(i=0;i4){W9b.en(a,b,0,false);return}c=a.e[b];o=false;for(g=0;gd[2]&&d[1]-d[2]>Qbc;break;case 1:k=d[2]-d[0]>Qbc;break;case 2:k=d[1]-d[0]g&&(i=g)}q=ivb(Q9b.Dwb,zbc,6,2,15,1);r=0;for(k=0;kq[1]){A=q[0];q[0]=q[1];q[1]=A}j=W9b.$n(f,W9b.Jl(a,s,q[0]));p=W9b.$n(f,W9b.Jl(a,s,q[1]));c=j-p}else{c=W9b.$n(f,W9b.Jl(a,s,q[0]))}c<0^(a.F[b]&3)==2^i==t?(a.H[v]=257):(a.H[v]=129)};W9b.hq=function hq(a){var b,c,d,e;W9b.Dv(a,7);for(d=0;d=171};W9b.kq=function kq(a){var b,c,d,e,f,g,h,i,j,k;f=W9b.Hl(a,a.q,a.r,W9b.Ek);g=f*f/16;for(d=1;d(h=W9b.bm(a,c),h+W9b._l(a,c,h,a.C[c])))throw eJb(new R9b.DB('atom valence exceeded'));b+=a.s[c]}if(b!=0)throw eJb(new R9b.DB('unbalanced atom charge'))};W9b.lq=function lq(a){var b,c;if(!a.K)return;W9b.Dv(a,7);for(b=0;b>16-c+b;a.f<<=1;--b;--a.d}return d};W9b.vq=function vq(a,b,c){a.d=6;a.e=c;a.c=b;a.f=(b[a.e]&63)<<11};W9b.wq=function wq(a,b){var c,d,e,f;d=b/2|0;e=a>=d;e&&(a-=d);f=b/32;c=f*a/(d-a);return e?-c:c};W9b.xq=function xq(a,b){var c;return b==null||U9b.E5b(b).length==0?null:W9b.zq(a,U9b.e5b((c=b,Tac.JXb(),c)))};W9b.yq=function yq(a,b,c){var d,e;return b==null?null:W9b.Aq(a,U9b.e5b((e=b,Tac.JXb(),e)),c==null?null:U9b.e5b((d=c,d)),0)};W9b.zq=function zq(a,b){var c;if(b==null||b.length==0)return null;for(c=2;c8&&(e=h);f=W9b.uq(a,e);g=W9b.uq(a,h);i=new W9b.Wv(f,g);W9b.Eq(a,i,b,c,d);return i};W9b.Bq=function Bq(a,b,c){var d,e,f,g;if(c==null||U9b.E5b(c).length==0){W9b.Dq(a,b,null,null);return}d=R9b.mUb(c,zUb(32));d>0&&d=d.length)return;b.g=c;zc=8;e!=null&&(f<0||f>=e.length)&&(e=null);W9b.vq(b,d,0);i=W9b.uq(b,4);B=W9b.uq(b,4);if(i>8){zc=i;i=B}if(i==0){W9b.zn(b.g,W9b.uq(b,1)==1);return}j=W9b.uq(b,i);k=W9b.uq(b,B);mc=W9b.uq(b,i);qc=W9b.uq(b,i);pc=W9b.uq(b,i);O=W9b.uq(b,i);for(o=0;o=39;yc=0;Bc=0;Dc=0;Fc=0;S=false;T=false;if(X){if(e.length>2*j-2&&e[2*j-2]==39||e.length>3*j-3&&e[3*j-3]==39){T=true;S=e.length==3*j-3+9;dc=S?3*j-3:2*j-2;w=86*(e[dc+1]-40)+e[dc+2]-40;yc=$wnd.Math.pow(10,w/2000-1);dc+=2;Ac=86*(e[dc+1]-40)+e[dc+2]-40;Bc=$wnd.Math.pow(10,Ac/1500-1);dc+=2;Cc=86*(e[dc+1]-40)+e[dc+2]-40;Dc=$wnd.Math.pow(10,Cc/1500-1);if(S){dc+=2;Ec=86*(e[dc+1]-40)+e[dc+2]-40;Fc=$wnd.Math.pow(10,Ec/1500-1)}}else{S=e.length==3*j-3}}if(b.ac()&&S){e=null;X=false}for(Vb=1;Vb>24;W9b.Ym(b.g,n,R9b.fUb((hc=gc,Tac.JXb(),hc)))}break;case 19:nc=W9b.uq(b,i);for(Gb=0;Gbb.e+1&&(d[b.e+1]==32||d[b.e+1]==9)){e=d;f=b.e+2}if(e!=null){try{if(e[f]==33||e[f]==35){W9b.vq(b,e,f+1);S=W9b.uq(b,1)==1;T=W9b.uq(b,1)==1;tc=2*W9b.uq(b,4);C=1<>1));Z=gb*(W9b.uq(b,tc)+1-(C>>1));W9b.kn(b.g,p,W9b.Bl(b.g,hb)+Y);W9b.ln(b.g,p,W9b.Cl(b.g,hb)+Z);S&&W9b.mn(b.g,p,W9b.Dl(b.g,hb)+gb*(W9b.uq(b,tc)+1-(C>>1)))}if(e[f]==35){lb=0;ib=ivb(Q9b.Dwb,zbc,6,j,15,1);for(q=0;q>1)));W9b.ln(b.g,kb,W9b.Cl(b.g,n)+(W9b.uq(b,tc)+1-(C>>1)));S&&W9b.mn(b.g,kb,W9b.Dl(b.g,n)+(W9b.uq(b,tc)+1-(C>>1)));wc!=null&&(wc[n]&1<0)||W9b.Cp(a.k,e)&&W9b.Ao(a.k,e)==0&&(a.j&4)==0||g!=0||k!=0||m!=0||W9b.ll(a.k,e)!=-1||W9b.Al(a.k,e)!=0||o!=null;r&&(c.a+='[',c);k!=0&&(c.a+=k,c);c.a+=''+l;(W9b.yl(a.k,e)==1||W9b.yl(a.k,e)==2)&&(p=W9b.sl(a.k,e)-1,!(p!=-1&&a.i[p][W9b.rl(a.k,e)]<=1))&&(W9b.El(a.k,e)!=7||W9b.nl(a.k,e)>0)&&R9b.OUb(c,W9b.$q(a,e,n));if((a.j&1)==0&&r){i=W9b.lp(a.k,e);i==1?(c.a+='H',c):i>1&&(c.a+='H'+i,c)}if(g!=0){c.a+=String.fromCharCode(g>0?43:45);$wnd.Math.abs(g)>1&&R9b.LUb(c,$wnd.Math.abs(g))}o!=null&&(c.a+=''+o,c);if(m!=0){c.a+=':';c.a+=m}r&&(c.a+=']',c);W9b.Tq(a,b,c);b.e&&(c.a+=')',c)};W9b.Pq=function Pq(a,b,c){var d,e,f,g,h;f=true;h=X9b.mj(a.g,b).a;g=W9b.cr(a,h);while(g!=-1){d=W9b.Jo(a.k,h,g);e=W9b.Lo(a.k,h,g);g=W9b.cr(a,d);W9b.Rq(a,new W9b.Cu(d,e,h,c&&f,c&&g==-1),++b);h=d;f=false}};W9b.Qq=function Qq(a,b,c){var d,e,f,g;for(e=b,f=0,g=e.length;f')}}}if(i==U9b.E5b(d.a).length&&(!W9b.Dp(a.k,b)||(a.j&4)!=0)){e=W9b.Vl(a.k,b)&127;e==1?W9b.Cp(a.k,W9b.Kl(a.k,0,b))&&W9b.Cp(a.k,W9b.Kl(a.k,1,b))&&(a.j&4)==0&&a.f[b]==0&&(d.a+='-',d):e==2?(d.a+='=',d):e==4?(d.a+='#',d):e==8?(d.a+='$',d):e==16?(d.a+='$',d):e==64?(d.a+=':',d):e==32&&R9b.OUb(d,W9b.wm(a.k,c)?'<-':'->')}if(a.j==1){g=i==U9b.E5b(d.a).length?'':';';h=W9b.Ul(a.k,b)&384;h==256?(d.a+=g+'@',d):h==128&&(d.a+=g+'!@',d)}};W9b.Tq=function Tq(a,b,c){var d,e,f;if(b.c!=null){for(e=0;e9&&(c.a+='%',c);R9b.LUb(c,a.e[d])}}}}};W9b.Uq=function Uq(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,A,B,C,D,F,G,H,I,J,K,L,M,N,O;M=new X9b.Bj;for(r=new X9b.s_b(a.g);r.a=0;C--){c=(U9b.r5b(C,M.a.length),M.a[C]);J=0;F=false;k=false;for(f=c,g=0,h=f.length;gk&&(d.a+=R9b.CUb(ivb(Q9b.Awb,Zcc,6,-k,15,1)));i=W9b.Cp(a.k,b)&&(a.j&4)==0;for(f=c,g=0,h=f.length;gc){e=c;d=b}}}return d};W9b.Zq=function Zq(a){var b,c,d,e,f;a.a=a.d.e;a.b=ivb(Q9b._Ib,Lbc,6,a.k.f,16,1);a.c=ivb(Q9b._Ib,Lbc,6,a.k.g,16,1);a.g=new X9b.Bj;b=W9b.Yq(a);while(b!=-1){c=a.g.a.length;W9b.Rq(a,new W9b.Cu(b,-1,-1,false,false),c);if(W9b.Ko(a.k,b)!=0){W9b.Pq(a,c,false);while(ch&&(c.a+=R9b.CUb(ivb(Q9b.Awb,Zcc,6,-h,15,1)));i=W9b.zl(a.k,b);e=KJb(FJb(gJb(i,acc),3));switch(e){case 20971520:c.a+='+0';break;case 25165824:W9b.nl(a.k,b)==0&&(c.a+='-',c);break;case 12582912:W9b.nl(a.k,b)==0&&(c.a+='+',c);}d=gJb(i,fdc);lJb(d,2)==0?(c.a+=';a',c):lJb(d,4)==0&&(c.a+=';A',c);f=gJb(i,Ybc);lJb(f,0)!=0&&(lJb(f,Zbc)==0?(c.a+=';H0',c):lJb(f,$bc)==0?(c.a+=';H1',c):lJb(f,1408)==0?(c.a+=';H2',c):lJb(f,896)==0?(c.a+=';H3',c):lJb(f,128)==0?(c.a+=';!H0',c):lJb(f,384)==0?(c.a+=';!H0;!H1',c):lJb(f,1536)==0?(c.a+=';!H2;!H3',c):lJb(f,_bc)==0&&(c.a+=';!H3',c));k=gJb(i,120);lJb(k,8)==0?(c.a+=';!R0',c):lJb(k,16)==0?(c.a+=';!R1',c):lJb(k,32)==0?(c.a+=';!R2',c):lJb(k,64)==0?(c.a+=';!R3',c):lJb(k,112)==0?(c.a+=';R0',c):lJb(k,104)==0?(c.a+=';R1',c):lJb(k,88)==0?(c.a+=';R2',c):lJb(k,56)==0&&(c.a+=';R3',c);j=gJb(i,Dbc);if(lJb(j,Ebc)==0)c.a+=';!r'+LJb(j);else if(lJb(j,Kdc)==0)c.a+=';r'+LJb(j);else if(lJb(j,0)!=0){if(BJb(gJb(j,Kbc),0)){qJb(gJb(j,Ebc),0)&&(c.a+=';!r0'+LJb(j),c);qJb(gJb(j,Fbc),0)&&(c.a+=';!r3'+LJb(j),c);qJb(gJb(j,Gbc),0)&&(c.a+=';!r4'+LJb(j),c);qJb(gJb(j,Hbc),0)&&(c.a+=';!r5'+LJb(j),c);qJb(gJb(j,Ibc),0)&&(c.a+=';!r6'+LJb(j),c);qJb(gJb(j,Jbc),0)&&(c.a+=';!r7'+LJb(j),c)}else{c.a+=';';BJb(gJb(j,Ebc),0)&&(c.a+='r0,'+LJb(j),c);BJb(gJb(j,Fbc),0)&&(c.a+='r3,'+LJb(j),c);BJb(gJb(j,Gbc),0)&&(c.a+='r4,'+LJb(j),c);BJb(gJb(j,Hbc),0)&&(c.a+='r5,'+LJb(j),c);BJb(gJb(j,Ibc),0)&&(c.a+='r6,'+LJb(j),c);BJb(gJb(j,Jbc),0)&&(c.a+='r7,'+LJb(j),c);R9b.CRb(c,U9b.E5b(c.a).length-1)}}if(lJb(j,0)==0){j=FJb(gJb(i,Gcc),22);lJb(j,0)!=0&&(c.a+=';r'+LJb(j),c)}g=gJb(i,icc);lJb(g,jcc)==0&&(c.a+=';D1',c);lJb(g,kcc)==0&&(c.a+=';D2',c);lJb(g,lcc)==0&&(c.a+=';D3',c);lJb(g,mcc)==0&&(c.a+=';!D3;!D4',c);lJb(g,ncc)==0&&(c.a+=';!D4',c);lJb(g,occ)==0&&(c.a+=';!D0;!D1',c);lJb(g,pcc)==0&&(c.a+=';!D0;!D1;!D2',c);lJb(g,qcc)==0&&(c.a+=';!D0;!D1;!D2;!D3',c);BJb(gJb(i,Jcc),0)&&R9b.OUb(c,';D'+W9b.Ko(a.k,b));BJb(gJb(i,Ubc),0)&&R9b.OUb(c,';!D'+W9b.Ko(a.k,b));return U9b.E5b(c.a).length==0?null:c.a};W9b.ar=function ar(a){a.p==null&&(a.p=W9b.Wq(a));return a.p};W9b.br=function br(a,b,c){var d,e,f,g,h;d=W9b.Lo(a.k,b,c);g=W9b.Jo(a.k,b,c);if(a.e[d]!=0){h=8*a.q[b]+1;e=X9b.mj(a.g,a.q[b]).c;for(f=0;fa[c]&&(d=!d);b[e]>b[c]&&(d=!d)}}return d};W9b.gr=function gr(a){return a>=5&&a<=9||a>=15&&a<=17||a==35||a==53};W9b.hr=function hr(a){W9b.jr.call(this,a)};W9b.ir=function ir(a,b){this.k=a;this.j=b};W9b.jr=function jr(a){W9b.ir.call(this,a,0)};W9b.kr=function kr(a){var b,c,d,e;e=new R9b.RUb;for(c=0;c1&&R9b.FUb(b,a.b[c])}return b.a};W9b.Ar=function Ar(a){var b,c;c=a.d;for(b=0;b=171&&a.C[d]<=190?(e[1]+=2-W9b.fp(a,d)):(e[1]+=W9b.$o(a,d));h=0;for(j=1;j<=190;j++)e[j]!=0&&++h;this.b=ivb(Q9b.Dwb,zbc,6,h,15,1);this.c=ivb(Q9b.Dwb,zbc,6,h,15,1);h=0;for(i=0;i0&&R9b.bUb(l,(W9b.Fk(),W9b.zk)[g])>0){l=(W9b.Fk(),W9b.zk)[g];k=g}if(k==-1)break;this.b[h]=e[k];this.c[h]=k;++h;e[k]=0}this.a=0;this.d=0;for(b=0;bW9b.Dr(W9b.El(a,v[o]))){u=W9b.Dr(W9b.El(a,v[o]));t=v[o]}}}if(t!=-1){B-=a.s[t];a.s[t]=0;a.T=0}}}else{B-=a.s[i];a.s[i]=0;a.T=0}}}}B>0&&(B=W9b.Fr(a,B));return B};W9b.Fr=function Fr(a,b){var c,d,e,f;b>0&&(b=W9b.Ir(a,b,9));b>0&&(b=W9b.Ir(a,b,17));b>0&&(b=W9b.Ir(a,b,35));b>0&&(b=W9b.Ir(a,b,53));if(b>0){for(c=0;c0){e=false;for(f=0;f0){a.s[d]=-1;a.T=0;--b;if(b==0)return 0;e=true;break}}if(e)continue}}}b>0&&(b=W9b.Gr(a,b,8,16));b>0&&(b=W9b.Gr(a,b,8,15));b>0&&(b=W9b.Gr(a,b,8,6));b>0&&(b=W9b.Gr(a,b,7,16));return b};W9b.Gr=function Gr(a,b,c,d){var e,f,g,h,i,j,k,l;for(e=0;e0){h=false;for(j=0;j999){R9b.OUb(a.a,' ?');return}c=false;for(d=0;d<3;d++){e=b/100|0;if(e==0){d==2||c?R9b.KUb(a.a,48):R9b.KUb(a.a,32)}else{R9b.KUb(a.a,48+e&pbc);c=true}b=10*(b%100)}};W9b.Lr=function Lr(a,b){Rac.wRb(b,a.a.a)};W9b.Mr=function Mr(a){W9b.Nr.call(this,a)};W9b.Nr=function Nr(a){W9b.Pr.call(this,a,new R9b.SUb)};W9b.Or=function Or(a,b,c){var d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,A,B,C,D,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z;this.b=new Uac.NXb((N=Pdc,N));W9b.Dv(a,15);L=true;for(e=0;e>18!=1){L=false;break}}O=-1;if(L){F=ivb(Q9b.Dwb,zbc,6,32,15,1);P=0;for(f=0;f>18==1){H=(a.u[f]&Qcc)>>18!=1&&(a.u[f]&Qcc)>>18!=2?-1:(a.u[f]&tdc)>>20;++F[H];if(P3)&&(G=1.5/s)}else{Q=odc;for(f=1;fA&&(Q=A)}}G=3/Q}}}for(j=0;j=129&&a.C[j]<=144||a.C[j]==154)R9b.OUb(this.a,' R# ');else{p=(W9b.Fk(),W9b.zk)[a.C[j]];R9b.OUb(this.a,' '+p);U9b.E5b(p).length==1?R9b.OUb(this.a,' '):U9b.E5b(p).length==2&&R9b.OUb(this.a,' ')}R9b.OUb(this.a,' 0 0 0');J=gJb(Ybc,a.B[j]);lJb(J,0)==0?R9b.OUb(this.a,' 0'):lJb(J,384)==0?R9b.OUb(this.a,' 3'):lJb(J,128)==0?R9b.OUb(this.a,' 2'):lJb(J,Zbc)==0?R9b.OUb(this.a,' 1'):lJb(J,$bc)==0&&R9b.OUb(this.a,' 2');R9b.OUb(this.a,BJb(gJb(a.B[j],Icc),0)?' 1':' 0');Z=((a.u[j]&sdc)>>>27)-1;Z==-1?R9b.OUb(this.a,' 0'):Z==0?R9b.OUb(this.a,' 15'):W9b.Kr(this,Z);R9b.OUb(this.a,' 0 0 0');W9b.Kr(this,$wnd.Math.abs(a.w[j]));R9b.OUb(this.a,' 0 0\\n')}for(t=0;t>18==2?(W=0):(a.u[f]&Qcc)>>18==1&&((a.u[f]&Qcc)>>18!=1&&(a.u[f]&Qcc)>>18!=2?-1:(a.u[f]&tdc)>>20)!=O&&(W=4)}u=a.G[t]&31;u!=0&&(u==8?(T=4):u==3?(T=5):u==9?(T=6):u==10?(T=7):(T=8));V=a.G[t]&384;Y=V==0?0:V==256?1:2;W9b.Kr(this,1+a.D[0][t]);W9b.Kr(this,1+a.D[1][t]);W9b.Kr(this,T);W9b.Kr(this,W);R9b.OUb(this.a,' 0');W9b.Kr(this,Y);R9b.OUb(this.a,' 0\\n')}S=0;for(k=0;k=129&&a.C[n]<=144||a.C[n]==154)&&++S;if(S!=0){w=0;for(d=0;d=129&&r<=144||r==154){if(w==0){R9b.OUb(this.a,'M RGP');W9b.Kr(this,$wnd.Math.min(8,S))}R9b.OUb(this.a,' ');W9b.Kr(this,d+1);R9b.OUb(this.a,' ');W9b.Kr(this,r==154?0:r>=142?r-141:r-125);--S;if(++w==8||S==0){w=0;R9b.OUb(this.a,_ac)}}}}if(a.K){S=0;for(f=0;f4){switch(d){case 5:i|=3;break;case 6:i|=9;break;case 7:i|=10;break;case 8:j!=32&&(i|=31);}}f==1&&(i|=256);f==2&&(i|=128);i!=0&&W9b.wn(a.j,g,i,true);return g};W9b.Rr=function Rr(a){var b,c,d,e,f,g,h,i,j,k,l;g=ivb(Q9b.Dwb,zbc,6,a.j.q,15,1);for(c=0;c0&&W9b.Vl(a.j,e)==32&&W9b.Kl(a.j,1-j,e)==b){l=W9b.Kl(a.j,j,e);if(W9b.wm(a.j,l)){k=W9b.Tr(a,l);f=W9b.nl(a.j,l);if(f=0&&W9b.Tm(a.j,c,0):b[c]!=W9b.am(a.j,c)&&W9b.Tm(a.j,c,b[c]-d)}}}};W9b.Xr=function Xr(a,b){var c;if(b==-1){return -1}for(c=b+1;c0){w=0;for(f=0;fw&&W9b.fn(a.j,c,Ubc,true)}}else if(R9b.hUb(n,'RBCNT')){switch(B){case 3:case -1:W9b.fn(a.j,c,112,true);break;case 1:W9b.fn(a.j,c,8,true);break;case 2:W9b.fn(a.j,c,104,true);break;case 4:W9b.fn(a.j,c,56,true);}}}};W9b._r=function _r(a){var b,c,d,e,f,g,h,i;h=null;c=U9b.E5b(a).indexOf('[');d=U9b.E5b(a).indexOf(']',c);if(c>=0&&d>0){b=ivb(Q9b.Dwb,zbc,6,16,15,1);i=(U9b.y5b(c+1,d,U9b.E5b(a).length),U9b.E5b(a).substr(c+1,d-(c+1)));e=0;g=true;while(g&&e<16){c=U9b.E5b(i).indexOf(',');f=null;if(c==-1){f=i;g=false}else{f=(U9b.y5b(0,c,U9b.E5b(i).length),U9b.E5b(i).substr(0,c));i=(U9b.z5b(c+1,U9b.E5b(i).length+1),U9b.E5b(i).substr(c+1))}b[e++]=W9b._n(f,1)}h=ivb(Q9b.Dwb,zbc,6,e,15,1);R9b.XUb(b,0,h,0,e)}return h};W9b.as=function as(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t;o=0;p=(i=W9b.Yr(b,o+1),i==-1?U9b.E5b(b).length:i);f=R9b.SSb((U9b.y5b(o,p,U9b.E5b(b).length),U9b.E5b(b).substr(o,p-o)),Sdc,gbc);o=W9b.Xr(b,p);p=(j=W9b.Yr(b,o+1),j==-1?U9b.E5b(b).length:j);g=R9b.SSb((U9b.y5b(o,p,U9b.E5b(b).length),U9b.E5b(b).substr(o,p-o)),Sdc,gbc);o=W9b.Xr(b,p);p=(k=W9b.Yr(b,o+1),k==-1?U9b.E5b(b).length:k);c=W9b.Ur(a,R9b.SSb((U9b.y5b(o,p,U9b.E5b(b).length),U9b.E5b(b).substr(o,p-o)),Sdc,gbc));o=W9b.Xr(b,p);p=(l=W9b.Yr(b,o+1),l==-1?U9b.E5b(b).length:l);d=W9b.Ur(a,R9b.SSb((U9b.y5b(o,p,U9b.E5b(b).length),U9b.E5b(b).substr(o,p-o)),Sdc,gbc));r=0;s=0;while((o=W9b.Xr(b,p))!=-1){p=(h=W9b.Yr(b,o+1),h==-1?U9b.E5b(b).length:h);q=(U9b.y5b(o,p,U9b.E5b(b).length),U9b.E5b(b).substr(o,p-o));n=R9b.mUb(q,zUb(61));m=(U9b.y5b(0,n,U9b.E5b(q).length),U9b.E5b(q).substr(0,n));t=R9b.SSb((U9b.z5b(n+1,U9b.E5b(q).length+1),U9b.E5b(q).substr(n+1)),Sdc,gbc);if(R9b.hUb(m,'CFG')){switch(t){case 1:r=1;break;case 2:r=g==2?3:4;break;case 3:r=6;}}else R9b.hUb(m,'TOPO')?(s=t):undefined}e=W9b.Qr(a,c,d,g,r,s);e+1!=f&&(!a.c&&(a.c=new X9b.g3b),X9b.$2b(a.c,new R9b.lTb(f),new R9b.lTb(e)))};W9b.bs=function bs(a,b){var c,d,e,f,g,h;h=W9b.Zr(b);if(h!=null){g=W9b.ds(b,h);if(R9b.hUb(U9b.E5b(b).substr(0,13),'MDLV30/STEABS')){if(R9b.hUb(h,Rdc))for(f=0;fg)&&(e=g);h[d]=R9b.SSb((U9b.y5b(f,e,U9b.E5b(a).length),U9b.E5b(a).substr(f,e-f)),Sdc,gbc)}return h};W9b.es=function es(a){var b,c,d,e,f,g,h,i,j;i=ivb(Q9b.Dwb,zbc,6,a.j.q,15,1);for(d=0;dW9b.am(a.j,b)){W9b.xn(a.j,c,32);continue}}}}}};W9b.fs=function fs(a){var b,c;if(U9b.E5b(a).indexOf('[')>=0){b=U9b.E5b(a).indexOf(' NOT[');c=U9b.E5b(a).indexOf(']',b);if(b>=0&&c>0){return -(c+1)}else{b=U9b.E5b(a).indexOf(' [');c=U9b.E5b(a).indexOf(']',b);if(b>=0&&c>0){return c+1}}b=U9b.E5b(a).indexOf(\" 'NOT[\");c=U9b.E5b(a).indexOf(\"]'\",b);if(b>=0&&c>0){return -(c+2)}else{b=U9b.E5b(a).indexOf(\" '[\");c=U9b.E5b(a).indexOf(\"]'\",b);if(b>=0&&c>0){return c+2}}R9b.WUb();String.fromCharCode(10)}return 0};W9b.gs=function gs(a,b,c){a.j=b;return W9b.is(a,c)};W9b.hs=function hs(a){return U9b.E5b(a).length==0?0:R9b.SSb(a,Sdc,gbc)};W9b.is=function is(b,c){var d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,A,B,C,D,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X;T=null;try{b.f=null;if(b.j){W9b.Bv(b.j);W9b.zn(b.j,false)}D=v=Rac.qRb(c);if(null==D){return false}if(null==(v=Rac.qRb(c))){return false}if(null==(v=Rac.qRb(c))){return false}b.k=U9b.E5b(v).indexOf(\"From CSD data. Using bond type 'Any'\")!=-1;b.e=U9b.E5b(v).indexOf('From CSD data.')!=-1;if(null==(v=Rac.qRb(c))){return false}b.g=false;b.d=b.a;try{F=R9b.SSb(R9b.xUb((U9b.y5b(0,3,U9b.E5b(v).length),U9b.E5b(v).substr(0,3))),Sdc,gbc);G=R9b.SSb(R9b.xUb((U9b.y5b(3,6,U9b.E5b(v).length),U9b.E5b(v).substr(3,3))),Sdc,gbc);H=W9b.hs(R9b.xUb((U9b.y5b(6,9,U9b.E5b(v).length),U9b.E5b(v).substr(6,3))));b.d=b.d|1==W9b.hs(R9b.xUb((U9b.y5b(12,15,U9b.E5b(v).length),U9b.E5b(v).substr(12,3))));b.g=U9b.E5b(v).length>=39&&R9b.hUb(U9b.E5b(v).substr(34,U9b.E5b('V3000').length),'V3000')}catch(a){a=dJb(a);if(pwb(a,16)){return false}else throw eJb(a)}if(b.g){K=W9b.js(b,c);W9b.Fn(b.j,D);return K}!b.j&&(b.j=new W9b.Wv(F,G));W9b.Fn(b.j,D);b.d||(b.j.L=true);if(0==F){while(v!=null&&!(R9b.hUb(v,Tdc)||R9b.hUb(v,Udc)||R9b.hUb((U9b.z5b(1,U9b.E5b(v).length+1),U9b.E5b(v).substr(1)),'$'))){v=Rac.qRb(c)}return true}for(q=0;q=48&&(U9b.z5b(47,U9b.E5b(v).length),U9b.E5b(v).charCodeAt(47)==49)&&W9b.fn(b.j,e,Icc,true);S=U9b.E5b(v).length<51?0:W9b.hs(R9b.xUb((U9b.y5b(48,51,U9b.E5b(v).length),U9b.E5b(v).substr(48,3))));if(S!=0){T==null&&(T=ivb(Q9b.Dwb,zbc,6,F,15,1));T[e]=S}}for(r=0;r0){d=10;U=14;for(t=1;t<=s;++t,d+=8,U+=8){e=R9b.SSb(R9b.xUb((U9b.y5b(d,d+3,U9b.E5b(v).length),U9b.E5b(v).substr(d,d+3-d))),Sdc,gbc)-1;l=R9b.SSb(R9b.xUb((U9b.y5b(U,U+3,U9b.E5b(v).length),U9b.E5b(v).substr(U,U+3-U))),Sdc,gbc);W9b.Vm(b.j,e,l)}}}if(R9b.hUb(U9b.E5b(v).substr(0,6),'M ISO')){s=R9b.SSb(R9b.xUb((U9b.y5b(6,9,U9b.E5b(v).length),U9b.E5b(v).substr(6,3))),Sdc,gbc);if(s>0){d=10;U=14;for(t=1;t<=s;++t,d+=8,U+=8){e=R9b.SSb(R9b.xUb((U9b.y5b(d,d+3,U9b.E5b(v).length),U9b.E5b(v).substr(d,d+3-d))),Sdc,gbc)-1;B=R9b.SSb(R9b.xUb((U9b.y5b(U,U+3,U9b.E5b(v).length),U9b.E5b(v).substr(U,U+3-U))),Sdc,gbc);W9b.dn(b.j,e,B)}}}if(R9b.hUb(U9b.E5b(v).substr(0,6),'M RAD')){s=R9b.SSb(R9b.xUb((U9b.y5b(6,9,U9b.E5b(v).length),U9b.E5b(v).substr(6,3))),Sdc,gbc);if(s>0){d=10;U=14;for(t=1;t<=s;++t,d+=8,U+=8){e=R9b.SSb(R9b.xUb((U9b.y5b(d,d+3,U9b.E5b(v).length),U9b.E5b(v).substr(d,d+3-d))),Sdc,gbc)-1;J=R9b.SSb(R9b.xUb((U9b.y5b(U,U+3,U9b.E5b(v).length),U9b.E5b(v).substr(U,U+3-U))),Sdc,gbc);switch(J){case 1:W9b.gn(b.j,e,16);break;case 2:W9b.gn(b.j,e,32);break;case 3:W9b.gn(b.j,e,48);}}}}if(R9b.hUb(U9b.E5b(v).substr(0,6),'M RBC')||R9b.hUb(U9b.E5b(v).substr(0,6),'M RBD')){s=R9b.SSb(R9b.xUb((U9b.y5b(6,9,U9b.E5b(v).length),U9b.E5b(v).substr(6,3))),Sdc,gbc);if(s>0){d=10;U=14;for(t=1;t<=s;++t,d+=8,U+=8){e=R9b.SSb(R9b.xUb((U9b.y5b(d,d+3,U9b.E5b(v).length),U9b.E5b(v).substr(d,d+3-d))),Sdc,gbc)-1;L=R9b.SSb(R9b.xUb((U9b.y5b(U,U+3,U9b.E5b(v).length),U9b.E5b(v).substr(U,U+3-U))),Sdc,gbc);switch(L){case 3:case -1:W9b.fn(b.j,e,112,true);break;case 1:W9b.fn(b.j,e,8,true);break;case 2:W9b.fn(b.j,e,104,true);break;case 4:W9b.fn(b.j,e,56,true);}}}}if(R9b.hUb(U9b.E5b(v).substr(0,6),'M ALS')){e=R9b.SSb(R9b.xUb((U9b.y5b(7,10,U9b.E5b(v).length),U9b.E5b(v).substr(7,3))),Sdc,gbc)-1;if(e>=0){I=R9b.SSb(R9b.xUb((U9b.y5b(10,13,U9b.E5b(v).length),U9b.E5b(v).substr(10,3))),Sdc,gbc);i=(U9b.z5b(14,U9b.E5b(v).length),U9b.E5b(v).charCodeAt(14)==84);S=ivb(Q9b.Dwb,zbc,6,I,15,1);d=16;for(t=0;t0){d=10;U=14;for(t=1;t<=s;++t,d+=8,U+=8){e=R9b.SSb(R9b.xUb((U9b.y5b(d,d+3,U9b.E5b(v).length),U9b.E5b(v).substr(d,d+3-d))),Sdc,gbc)-1;O=R9b.SSb(R9b.xUb((U9b.y5b(U,U+3,U9b.E5b(v).length),U9b.E5b(v).substr(U,U+3-U))),Sdc,gbc);if(O==-2){W9b.fn(b.j,e,Jcc,true)}else if(O>0){P=0;for(j=0;jP&&W9b.fn(b.j,e,Ubc,true)}}}}if(R9b.hUb(U9b.E5b(v).substr(0,6),'M RGP')){s=R9b.SSb(R9b.xUb((U9b.y5b(6,9,U9b.E5b(v).length),U9b.E5b(v).substr(6,3))),Sdc,gbc);if(s>0){d=10;U=14;for(t=1;t<=s;++t,d+=8,U+=8){e=R9b.SSb(R9b.xUb((U9b.y5b(d,d+3,U9b.E5b(v).length),U9b.E5b(v).substr(d,d+3-d))),Sdc,gbc)-1;M=R9b.SSb(R9b.xUb((U9b.y5b(U,U+3,U9b.E5b(v).length),U9b.E5b(v).substr(U,U+3-U))),Sdc,gbc);M>=1&&M<=20&&W9b.nn(b.j,e,W9b._n('R'+M,2))}}}v=Rac.qRb(c)}}catch(a){a=dJb(a);if(pwb(a,16)){n=a;R9b.kB(n,(R9b.WUb(),R9b.VUb),'');String.fromCharCode(10);return false}else throw eJb(a)}if(b.e){W9b.es(b);W9b.Rr(b)}(b.i&1)!=0&&(b.f=W9b.Xo(b.j));W9b.Wr(b,T);W9b.Dv(b.j,15);return true};\nW9b.js=function js(a,b){var c,d,e,f,g;!!a.b&&X9b.T2b(a.b);!!a.c&&X9b.T2b(a.c);e=0;d=Rac.qRb(b);while(d!=null&&R9b.hUb(U9b.E5b(d).substr(0,7),Vdc)){d=R9b.xUb((U9b.z5b(7,U9b.E5b(d).length+1),U9b.E5b(d).substr(7)));while(g=U9b.E5b('-').length,R9b.hUb(U9b.E5b(d).substr(U9b.E5b(d).length-g,g),'-')){c=Rac.qRb(b);if(!R9b.hUb(U9b.E5b(c).substr(0,7),Vdc)){return false}d=R9b.xUb(R9b.dUb(R9b.wUb(d,0,U9b.E5b(d).length-1),(U9b.z5b(7,U9b.E5b(c).length+1),U9b.E5b(c).substr(7))))}if(R9b.hUb(U9b.E5b(d).substr(0,5),'BEGIN')){f=R9b.xUb((U9b.z5b(6,U9b.E5b(d).length+1),U9b.E5b(d).substr(6)));if(R9b.hUb(U9b.E5b(f).substr(0,4),'CTAB')){e=1}else if(R9b.hUb(U9b.E5b(f).substr(0,4),'ATOM')){e=2}else if(R9b.hUb(U9b.E5b(f).substr(0,4),'BOND')){e=3}else if(R9b.hUb(U9b.E5b(f).substr(0,10),'COLLECTION')){e=4}else{return false}}else if(R9b.hUb(U9b.E5b(d).substr(0,3),'END')){e=0}else if(e==1){W9b.cs(a,d)}else if(e==2){W9b.$r(a,d)}else if(e==3){W9b.as(a,d)}else if(e==4){W9b.bs(a,d)}else{return false}d=Rac.qRb(b)}while(d!=null&&!(R9b.hUb(U9b.E5b(d).substr(0,6),Tdc)||R9b.hUb(d,Udc))){d=Rac.qRb(b)}return true};W9b.ks=function ks(){this.i=0};W9b.ls=function ls(){this.i=1};WJb(123,1,{},W9b.ks,W9b.ls);_.a=false;_.d=false;_.e=false;_.g=false;_.i=0;_.k=false;Q9b.kxb=ySb(123);W9b.ms=function ms(a){};W9b.ns=function ns(a,b,c){var d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,A,B,C,D,F,G,H,I,J;R9b.OUb(a.a,'M V30 BEGIN CTAB\\n');R9b.OUb(a.a,Wdc+b.q+' '+b.r+' 0 0 0'+_ac);R9b.OUb(a.a,'M V30 BEGIN ATOM\\n');for(i=0;i0&&R9b.OUb(a.a,',');t=(W9b.Fk(),W9b.zk)[k[s]];switch(U9b.E5b(t).length){case 2:case 3:case 1:R9b.OUb(a.a,t);break;default:R9b.OUb(a.a,'?');}}R9b.OUb(a.a,']')}else BJb(gJb(b.B[i],1),0)?R9b.OUb(a.a,' A'):b.C[i]>=129&&b.C[i]<=144||b.C[i]==154?R9b.OUb(a.a,' R#'):R9b.OUb(a.a,' '+(W9b.Fk(),W9b.zk)[b.C[i]]);if(c){R9b.OUb(a.a,' '+ywb(qbc*a.b*b.J[i].a)/qbc);R9b.OUb(a.a,' '+ywb(qbc*a.b*-b.J[i].b)/qbc);R9b.OUb(a.a,' '+ywb(qbc*a.b*-b.J[i].c)/qbc)}else{R9b.OUb(a.a,' 0 0 0')}R9b.OUb(a.a,' '+$wnd.Math.abs(b.w[i]));b.s[i]!=0&&R9b.OUb(a.a,' CHG='+b.s[i]);if((b.u[i]&48)!=0){R9b.OUb(a.a,' RAD=');switch(b.u[i]&48){case 16:R9b.OUb(a.a,'1');break;case 32:R9b.OUb(a.a,'2');break;case 48:R9b.OUb(a.a,'3');}}if((b.u[i]&3)==1||(b.u[i]&3)==2){R9b.OUb(a.a,' CFG=');(b.u[i]&3)==1?R9b.OUb(a.a,'1'):R9b.OUb(a.a,'2')}b.A[i]!=0&&R9b.OUb(a.a,' MASS='+b.A[i]);J=((b.u[i]&sdc)>>>27)-1;J!=-1&&R9b.OUb(a.a,' VAL='+(J==0?'-1':R9b.xTb(J)));l=b.C[i];(l>=129&&l<=144||l==154)&&R9b.OUb(a.a,' RGROUPS=(1 '+(l==154?0:l>=142?l-141:l-125)+')');r=gJb(Ybc,b.B[i]);lJb(r,384)==0?R9b.OUb(a.a,' HCOUNT=2'):lJb(r,128)==0?R9b.OUb(a.a,' HCOUNT=1'):lJb(r,Zbc)==0?R9b.OUb(a.a,' HCOUNT=-1'):lJb(r,$bc)==0&&R9b.OUb(a.a,' HCOUNT=1');G=gJb(b.B[i],6144);lJb(G,0)!=0&&(BJb(gJb(G,Ubc),0)?R9b.OUb(a.a,' SUBST='+(b.e[i]+1)):R9b.OUb(a.a,' SUBST=-1'));C=gJb(b.B[i],120);lJb(C,0)!=0&&(lJb(C,112)==0?R9b.OUb(a.a,' RBCNT=-1'):lJb(C,8)==0?R9b.OUb(a.a,' RBCNT=2'):lJb(C,104)==0?R9b.OUb(a.a,' RBCNT=2'):lJb(C,88)==0?R9b.OUb(a.a,' RBCNT=3'):lJb(C,56)==0&&R9b.OUb(a.a,' RBCNT=4'));R9b.OUb(a.a,_ac)}R9b.OUb(a.a,'M V30 END ATOM\\n');R9b.OUb(a.a,'M V30 BEGIN BOND\\n');for(n=0;n>18;I==1?++f[(b.u[j]&Qcc)>>18!=1&&(b.u[j]&Qcc)>>18!=2?-1:(b.u[j]&tdc)>>20]:I==2?++v[(b.u[j]&Qcc)>>18!=1&&(b.u[j]&Qcc)>>18!=2?-1:(b.u[j]&tdc)>>20]:++d}}e=0;w=ivb(Q9b.Dwb,zbc,6,32,15,1);g=ivb(Q9b.Dwb,zbc,6,32,15,1);for(o=0;o>8;I==1?++g[(b.F[o]&768)>>8!=1&&(b.F[o]&768)>>8!=2?-1:(b.F[o]&udc)>>10]:I==2?++w[(b.F[o]&768)>>8!=1&&(b.F[o]&768)>>8!=2?-1:(b.F[o]&udc)>>10]:++e}}if(B){R9b.OUb(a.a,'M V30 BEGIN COLLECTION\\n');if(d!=0){R9b.OUb(a.a,'M V30 MDLV30/STEABS ATOMS=('+d);for(h=0;h>18==0&&R9b.OUb(a.a,' '+(h+1))}R9b.OUb(a.a,Xdc)}if(e!=0){R9b.OUb(a.a,'M V30 MDLV30/STEABS BONDS=('+e);for(m=0;m>8==0&&R9b.OUb(a.a,' '+(m+1))}R9b.OUb(a.a,Xdc)}for(q=0;q<32;q++){if(v[q]!=0){R9b.OUb(a.a,Ydc+(q+1)+' ATOMS=('+v[q]);for(h=0;h>18==2&&((b.u[h]&Qcc)>>18!=1&&(b.u[h]&Qcc)>>18!=2?-1:(b.u[h]&tdc)>>20)==q&&R9b.OUb(a.a,' '+(h+1))}R9b.OUb(a.a,Xdc)}if(f[q]!=0){R9b.OUb(a.a,Zdc+(q+1)+' ATOMS=('+f[q]);for(h=0;h>18==1&&((b.u[h]&Qcc)>>18!=1&&(b.u[h]&Qcc)>>18!=2?-1:(b.u[h]&tdc)>>20)==q&&R9b.OUb(a.a,' '+(h+1))}R9b.OUb(a.a,Xdc)}if(w[q]!=0){R9b.OUb(a.a,Ydc+(q+1)+' BONDS=('+w[q]);for(m=0;m>8==2&&((b.F[m]&768)>>8!=1&&(b.F[m]&768)>>8!=2?-1:(b.F[m]&udc)>>10)==q&&R9b.OUb(a.a,' '+(m+1))}R9b.OUb(a.a,Xdc)}if(g[q]!=0){R9b.OUb(a.a,Zdc+(q+1)+' BONDS=('+g[q]);for(m=0;m>8==1&&((b.F[m]&768)>>8!=1&&(b.F[m]&768)>>8!=2?-1:(b.F[m]&udc)>>10)==q&&R9b.OUb(a.a,' '+(m+1))}R9b.OUb(a.a,Xdc)}}R9b.OUb(a.a,'M V30 END COLLECTION\\n')}R9b.OUb(a.a,'M V30 END CTAB\\n')};W9b.os=function os(){W9b.ms(this);this.a=new R9b.SUb};W9b.ps=function ps(a){W9b.qs.call(this,a)};W9b.qs=function qs(a){W9b.rs.call(this,a,new R9b.SUb)};W9b.rs=function rs(a,b){var c,d;W9b.ms(this);W9b.Dv(a,15);this.a=b;d=a.P!=null?a.P:'';R9b.OUb(this.a,d+_ac);R9b.OUb(this.a,'Actelion Java MolfileCreator 2.0\\n\\n');R9b.OUb(this.a,' 0 0 0 0 0 0 0 V3000\\n');this.b=1;c=W9b.ts(a);c&&(this.b=W9b.ss(a));W9b.ns(this,a,c);R9b.OUb(this.a,Qdc)};W9b.ss=function ss(a){var b,c,d,e,f,g,h,i,j;j=1;d=W9b.Hl(a,a.q,a.r,(W9b.Fk(),W9b.Ek));if(d!=0){(d<1||d>3)&&(j=1.5/d)}else{i=$dc;for(b=1;be&&(i=e)}}j=3/$wnd.Math.max(0.75,i)}return j};W9b.ts=function ts(a){var b;if(a.q==1)return true;for(b=1;bb[f]){k=b[f];l=f}}p=ivb(Q9b.Dwb,zbc,6,c,15,1);j=l>0?l-1:c-1;m=l=1){++g[h];if(g[h]==W9b.Ko(a.g,i[h])){j[i[h]]=false;--h;continue}f=W9b.Jo(a.g,i[h],g[h]);if(j[f]||c[f])continue;if(f==d&&h>1){W9b.Bs(a,i,h+1);if(a.i.a.length>=_bc)return;continue}if(h+1=5&&o.length<=7){for(i=0;i0){f[p[h]>>>16][p[h]&32767]=n;f[n][i]=p[h]>>>16}else{p[h]=(n<<16)+zdc+i}}}}}g=ivb(Q9b._Ib,Lbc,6,a.i.a.length,16,1);q=0;l=-1;while(q>l){l=q;for(m=0;m1&&g==e){o=ivb(Q9b.Dwb,zbc,6,j[i[h]],15,1);d=i[h];for(n=0;n1||W9b.Vl(a.g,b)==64};W9b.bt=function bt(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q;for(q=0;qg){a.a[b[f]]&=Ucc;a.a[b[f]]|=g}}for(e=0;eg){a.b[c[e]]&=Ucc;a.b[c[e]]|=g}}};W9b.dt=function dt(a,b,c){var d;d=X9b.mj(a.j,b).length;while(c>=d)c-=d;while(c<0)c+=d;return c};W9b.et=function et(a,b){W9b.ft.call(this,a,b)};W9b.ft=function ft(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s;this.g=a;this.f=7;this.i=new X9b.Bj;this.j=new X9b.Bj;this.a=ivb(Q9b.Dwb,zbc,6,this.g.f,15,1);this.b=ivb(Q9b.Dwb,zbc,6,this.g.g,15,1);this.g._b(1);m=ivb(Q9b._Ib,Lbc,6,this.g.f,16,1);n=ivb(Q9b._Ib,Lbc,6,this.g.g,16,1);do{g=false;for(c=0;cj){for(c=0;ch)return false;j=W9b.zl(a.G,b);f=W9b.zl(a.g,c);e=W9b.ul(a.g,c);i=W9b.ul(a.G,b);if(BJb(gJb(f,1),0)){if(e!=null){if(BJb(gJb(j,1),0)){if(i==null)return false;if(!W9b.zt(e,i))return false}else{if(i!=null){if(W9b.Bt(i,e))return false}else{if(W9b.yt(W9b.El(a.G,b),e))return false}}}}else{if(BJb(gJb(j,1),0))return false;if(e!=null){if(i!=null){if(!W9b.zt(i,e))return false}else{if(!W9b.yt(W9b.El(a.G,b),e))return false}}else{if(i!=null)return false;if(a.I[b]!=a.j[c])return false}}if(BJb(DJb(j,f),0)){if(BJb(gJb(f,Jcc),0)){if(a.G.K&&qJb(gJb(j,Jcc),0))return false;else if(d!=h)return false}if(BJb(gJb(f,Ubc),0)){if(d>=h&&qJb(gJb(j,Ubc),0))return false}}if(BJb(gJb(a.H[b],CJb(a.i[c])),0))return false;if(BJb(gJb(a.A[c],CJb(a.L[b])),0))return false;g=gJb(f,Dbc);if(a.G.K){k=gJb(f,Dbc);if(lJb(k,0)!=0&&(lJb(g,0)==0||BJb(gJb(g,CJb(k)),0)))return false}else{if(lJb(g,0)!=0&&qJb(gJb(g,a.L[b]),0))return false}if(W9b.nl(a.g,c)!=0&&W9b.nl(a.g,c)!=W9b.nl(a.G,b))return false;if(W9b.xl(a.g,c)!=0&&W9b.xl(a.g,c)!=W9b.xl(a.G,b))return false;if(W9b.Al(a.g,c)!=0&&W9b.Al(a.g,c)!=W9b.Al(a.G,b))return false;l=KJb(FJb(gJb(W9b.zl(a.g,c),Gcc),22));if(l!=0){if(a.G.K){m=KJb(FJb(gJb(W9b.zl(a.G,b),Gcc),22));if(l!=m)return false}else{if(W9b.Eo(a.G,b)!=l)return false}}return true};W9b.jt=function jt(a,b,c){var d,e,f,g,h,i,j,k,l,m;j=a.J[b];g=a.k[c];if((W9b.Ul(a.g,c)&jdc)!=0){i=W9b.Wl(a.G,b);e=W9b.Wl(a.g,c);f=W9b.Ul(a.g,c)&31;if(i!=e&&!(i==1&&(f&1)!=0)&&!(i==2&&(f&2)!=0)&&!(i==4&&(f&4)!=0)&&!(i==8&&(f&32)!=0)&&!(i==16&&(f&64)!=0)&&!(i==32&&(f&16)!=0)&&!(i==64&&(f&8)!=0))return false;j&=-32;g&=-32}if((j&~g)!=0)return false;m=(W9b.Ul(a.g,c)&pcc)>>17;if(m!=0){if(a.G.K&&m==(W9b.Ul(a.G,c)&pcc)>>17)return true;if(m<=2){k=W9b.Io(a.G,b);return m==1?k>=8&&k<=12:k>=12}d=false;l=W9b.np(a.G);for(h=0;hc&&(i[e]=c)}}g=0;W9b.Us(j,h,i[0])&&++g;W9b.Us(j,h,i[1])&&++g;if(g==2)return 2;if(g==1)return 1;return 2}}return 0};W9b.nt=function nt(a,b,c){var d,e,f,g,h;if(a.b){a.B=ivb(Q9b._Ib,Lbc,6,b.length,16,1);for(e=new X9b.s_b(a.b);e.ad.c)return false;for(g=1;g<=f;g++)a.B[h[g]]=true}}}return true};W9b.ot=function ot(a,b){var c,d,e,f,g,h,i,j;for(e=0;ea.G.f||a.g.g-a.p>a.G.g)return 0;if(a.g.f==0)return 0;b==6&&(a.M=63);W9b.Ft(a,c);d=ivb(Q9b._Ib,Lbc,6,a.G.f,16,1);a.F=ivb(Q9b.Dwb,zbc,6,a.g.f,15,1);X9b.D_b(a.F);h=ivb(Q9b.Dwb,zbc,6,a.w,15,1);X9b.J_b(h,h.length,-1);f=0;while(!a.O){if(a.v!=0){j=a.t[f]==-1?a.G.f:W9b.wo(a.G,a.F[a.t[f]]);++h[f];if(h[f]==j){h[f]=-1;if(f==0)break;--f;a.s[f]||(d[a.F[a.r[f]]]=false);continue}if(a.t[f]==-1){if(!d[h[f]]){if(a.cc(h[f],a.r[f])){a.F[a.r[f]]=h[f];d[h[f]]=true;++f}}}else{if(W9b.Jo(a.G,a.F[a.t[f]],h[f])>=a.G.f)continue;e=W9b.Jo(a.G,a.F[a.t[f]],h[f]);if(a.s[f]){e==a.F[a.r[f]]&&a.dc(W9b.Lo(a.G,a.F[a.t[f]],h[f]),a.u[f])&&++f}else{if(!d[e]){if(a.cc(e,a.r[f])&&a.dc(W9b.Lo(a.G,a.F[a.t[f]],h[f]),a.u[f])){d[e]=true;a.F[a.r[f]]=e;++f}}}}}if(f==a.v){if(W9b.pt(a,-1)&&W9b.ot(a,-1)&&W9b.nt(a,d,-1)){i=false;for(g=0;g2&&(i=DJb(i,16));j>3&&(i=DJb(i,32))}c=a.s[b];c<0?(i=DJb(i,dcc)):c>0&&(i=DJb(i,ccc));g=a.j[b];switch(g){case 0:break;case 1:i=DJb(i,ddc);break;case 2:i=DJb(i,occ);break;case 3:i=DJb(i,pcc);break;default:i=DJb(i,qcc);}d=W9b.zo(a,b);switch(d){case 0:break;case 1:i=DJb(i,zcc);break;case 2:i=DJb(i,Acc);break;case 3:i=DJb(i,Bcc);break;default:i=DJb(i,Ccc);}h=a.o[b];h>0&&(i=DJb(i,Sbc));h>1&&(i=DJb(i,zdc))}else{b0&&(i=DJb(i,ccc));f=a.e[b]-W9b.dp(a,b)+W9b.$o(a,b);switch(f){case 0:i=DJb(i,Zbc);break;case 1:i=DJb(i,$bc);break;case 2:i=DJb(i,1408);break;default:i=DJb(i,896);}g=a.j[b];switch(g){case 0:i=DJb(i,3932160);break;case 1:i=DJb(i,jcc);break;case 2:i=DJb(i,kcc);break;case 3:i=DJb(i,lcc);break;default:i=DJb(i,qcc);}d=W9b.zo(a,b);switch(d){case 0:i=DJb(i,scc);break;case 1:i=DJb(i,tcc);break;case 2:i=DJb(i,ucc);break;case 3:i=DJb(i,vcc);break;default:i=DJb(i,Ccc);}h=a.o[b];switch(h){case 0:i=DJb(i,fcc);break;case 1:i=DJb(i,gcc);break;default:i=DJb(i,hcc);}}return i};W9b.st=function st(a,b){var c;c=0;if(b2){m=W9b.Kl(a.g,1-e,b);i=gbc;for(h=0;hd&&(i=d)}n=a.F[m];j=gbc;for(g=0;gl&&(j=l)}a.F[i]!=j&&(f=!f)}}return f};W9b.wt=function wt(a,b,c,d){var e,f,g,h,i,j,k,l;h=a.e[d];i=h+1;while(i=a.G.f){++c[g];continue}f=W9b.Jo(a.G,a.F[a.t[g]],c[g]);if(a.s[g]){f==a.F[a.r[g]]&&a.dc(W9b.Lo(a.G,a.F[a.t[g]],c[g]),a.u[g])&&++g}else{if(!b[f]){if(a.cc(f,a.r[g])&&a.dc(W9b.Lo(a.G,a.F[a.t[g]],c[g]),a.u[g])){b[f]=true;a.F[a.r[g]]=f;++g}}}}if(g==i){if(W9b.pt(a,d)&&W9b.ot(a,d)&&W9b.nt(a,b,d)){for(j=h;j0};W9b.yt=function yt(a,b){var c;for(c=0;cc)return false}return true};W9b.At=function At(a,b){var c,d,e,f,g,h,i,j;g=false;if(W9b.Ao(a.g,b)==0){for(f=1;fa.F[e]^d>e&&(g=!g)}}}else{for(f=0;fa.F[i[1]]^i[0]>i[1]&&(g=!g)}}return g};W9b.Bt=function Bt(a,b){var c,d,e,f;e=0;f=0;while(e7&&(a.L[c]=DJb(a.L[c],Kbc))}l=a.G.g;a.J=ivb(Q9b.Dwb,zbc,6,l,15,1);for(i=0;i0&&(d[c/32|0]|=1<<31-c%32)}return d};W9b.Vt=function Vt(a,b){var c,d;if(!b)return null;d=ivb(Q9b.Ewb,Zcc,6,(W9b.Rt.length+63)/64|0,14,1);b=W9b.Zt(b);W9b.Et(a.g,b);for(c=0;c0&&(d[c/64|0]=DJb(d[c/64|0],EJb(1,63-c%64)))}return d};W9b.Wt=function Wt(){var a,b;if(W9b.St==null){b=new W9b.Lq(false);W9b.St=ivb(Q9b.Bxb,qdc,23,W9b.Rt.length,0,1);for(a=0;a=0;e--){c=g&15;c>9&&(c+=7);b[d*8+e]=48+c<<24>>24;g>>=4}}return R9b.fUb((f=b,Tac.JXb(),f))};W9b.cu=function cu(a){W9b.Tt();var b,c,d,e;if(U9b.E5b(a).length==0||(U9b.E5b(a).length&7)!=0)return null;d=ivb(Q9b.Dwb,zbc,6,U9b.E5b(a).length/8|0,15,1);for(c=0;c16&&(b-=7);d[e]<<=4;d[e]+=b}return d};W9b.du=function du(a,b){W9b.Tt();var c,d,e,f;f=0;d=0;e=0;for(c=0;c\\n';g=a.i?'