api-console-assets
Version:
This repo only exists to publish api console components to npm
98 lines (86 loc) • 107 kB
HTML
<!--
@license
Copyright 2016 The Advanced REST client authors <arc@mulesoft.com>
Licensed under the Apache License, Version 2.0 (the "License"); you may not
use this file except in compliance with the License. You may obtain a copy of
the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
License for the specific language governing permissions and limitations under
the License.
-->
<link rel="import" href="../polymer/polymer.html">
<!--
The `<raml-json-enhance>` enhaces the JSON output from the RAML parser so it can
be used in the ARC elements (which expects enhanced data structure).
The work is asynchronous. After the `json` property is set/changed it will call the
worker automatically and report the result via the `raml-json-enhance-ready` event.
Polymer application can bind to the `result` property which will notify the change.
### Example
```
<raml-json-enhance json="{...}"></raml-json-enhance>
window.addEventListener('raml-json-enhance-ready', function(e) {
console.log(e.detail.json);
// equals to
console.log(e.target.result);
});
```
**Note** This element MUST be used to enhance parser JSON output in order to use
any RAML related ARC element. Enhancer creates common data structure and
expands RAML types. Element expects the JSON object to contain complete data
about method / endpoint / type / security scheme and so on. It will not look for
the data in the root of raml definition. Thanks to this, you can push just a part
of the JSON object to a specific element to make it work.
For example, the `<raml-docs-method-viewer>` viewer expects the `raml` propety to
be a method definition only (without of the rest of the RAML structure). If
enhanced with the library, the JSON object describing the method will contain
all required information to render the view.
The element contains a set of Polyfills so it will work in IE11+ browsers.
### Biuld process
This element uses web workers to expand JSON result (normalize it).
The element will attempty to load following scitps from the same location where
this script resides:
- polyfills.js
- browser/index.js
- raml2object.js
Build scripts should ensure that this resources are included in the final build.
## Affected properties
- `types`, `traits`, `resourceTypes`, `annotationTypes`, `securitySchemes` - Becomes an object instead of array, keys are object name (with library variable name if applicable)
- `responses`, `body`, `queryParameters`, `headers`, `properties`, `baseUriParameters`, `annotations`, `uriParameters` are recusively transformed into the arrays
- types/{object} - Expanded form for a RAML type and a canonical form with computed inheritance and pushed unions to the top level of the type structure. See documantaion for the [expansion library](https://github.com/raml-org/raml-parser-toolbelt/tree/master/tools/datatype-expansion).
- resource/parentUrl - a full URL of the parent resource
- resource/allUriParameters - list of all URI parameters that apply to this resource (computed from the root down to current resource)
- resource/securedBy - Replaces security schema name with schema's definition.
- method/allUriParameters - The same as for a resource but applied to a method that is direct child of the resource.
- method/absoluteUri - Full, absolute URL to the method containg URI parametes in their RAML's form, eg `/{fileId}`
- method/securedBy - The same as for the resource
- method/*/headers - Full list of all possible headers compured from traits, security schemes etc
- method/*/queryParameters - Full list of all possible queryParameters compured from traits, security schemes etc
- method/responses - Full list of all possible response compured from traits, security schemes etc
- type/properties/items - replaces type name with type definition
- */example(s) - always produces `examples` as an array of example contents
- */structuredExample - content is moved to the *.example array
## Developing this element
Unlike other web components this component has to be build. Make any
changes to the `raml-json-enhance-template.html`. After making a change call
`npm run build`. It will concatenate all required files
and insert generated web worker contentnt into the element's body.
The `raml-json-enhance.html` will be regenerated each time you call build
script.
@group RAML Elements
@element raml-json-enhance
@demo demo/index.html
-->
<dom-module id="raml-json-enhance">
<template>
<style>
:host {
display: none;
}
</style>
<script id="normalizer" type="javascript/worker">
"function"!=typeof Object.assign&&(Object.assign=function(target){"use strict";if(null===target)throw new TypeError("Cannot convert undefined or null to object");for(var to=Object(target),index=1;index<arguments.length;index++){var nextSource=arguments[index];if(null!==nextSource)for(var nextKey in nextSource)Object.prototype.hasOwnProperty.call(nextSource,nextKey)&&(to[nextKey]=nextSource[nextKey])}return to}),Object.keys||(Object.keys=function(){"use strict";var hasOwnProperty=Object.prototype.hasOwnProperty,hasDontEnumBug=!{toString:null}.propertyIsEnumerable("toString"),dontEnums=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],dontEnumsLength=dontEnums.length;return function(obj){if("function"!=typeof obj&&("object"!=typeof obj||null===obj))throw new TypeError("Object.keys called on non-object");var prop,i,result=[];for(prop in obj)hasOwnProperty.call(obj,prop)&&result.push(prop);if(hasDontEnumBug)for(i=0;i<dontEnumsLength;i++)hasOwnProperty.call(obj,dontEnums[i])&&result.push(dontEnums[i]);return result}}()),Array.isArray||(Array.isArray=function(arg){return"[object Array]"===Object.prototype.toString.call(arg)}),String.prototype.endsWith||(String.prototype.endsWith=function(searchStr,Position){return Position<this.length?Position|=0:Position=this.length,this.substr(Position-searchStr.length,searchStr.length)===searchStr});
function MakePromise(asap){function Promise(fn){if("object"!=typeof this||"function"!=typeof fn)throw new TypeError;this._state=null,this._value=null,this._deferreds=[],doResolve(fn,resolve.bind(this),reject.bind(this))}function handle(deferred){var me=this;if(null===this._state)return void this._deferreds.push(deferred);asap(function(){var cb=me._state?deferred.onFulfilled:deferred.onRejected;if("function"!=typeof cb)return void(me._state?deferred.resolve:deferred.reject)(me._value);var ret;try{ret=cb(me._value)}catch(e){return void deferred.reject(e)}deferred.resolve(ret)})}function resolve(newValue){try{if(newValue===this)throw new TypeError;if(newValue&&("object"==typeof newValue||"function"==typeof newValue)){var then=newValue.then;if("function"==typeof then)return void doResolve(then.bind(newValue),resolve.bind(this),reject.bind(this))}this._state=!0,this._value=newValue,finale.call(this)}catch(e){reject.call(this,e)}}function reject(newValue){this._state=!1,this._value=newValue,finale.call(this)}function finale(){for(var i=0,len=this._deferreds.length;i<len;i++)handle.call(this,this._deferreds[i]);this._deferreds=null}function doResolve(fn,onFulfilled,onRejected){var done=!1;try{fn(function(value){done||(done=!0,onFulfilled(value))},function(reason){done||(done=!0,onRejected(reason))})}catch(ex){if(done)return;done=!0,onRejected(ex)}}return Promise.prototype.catch=function(onRejected){return this.then(null,onRejected)},Promise.prototype.then=function(onFulfilled,onRejected){var me=this;return new Promise(function(resolve,reject){handle.call(me,{onFulfilled:onFulfilled,onRejected:onRejected,resolve:resolve,reject:reject})})},Promise.resolve=function(value){return value&&"object"==typeof value&&value.constructor===Promise?value:new Promise(function(resolve){resolve(value)})},Promise.reject=function(value){return new Promise(function(resolve,reject){reject(value)})},Promise}"undefined"!=typeof module&&(module.exports=MakePromise);
var expansion=function(){"use strict";function n(n,t){return t={exports:{}},n(t,t.exports),t.exports}function t(n,i,o,f){if(f=f||"any","string"==typeof(n=l.cloneDeep(n)))try{JSON.parse(n),n={type:"json",content:n}}catch(n){}if("string"==typeof n){if(/^\(.+\)$/.test(n)&&(n=n.match(/^\((.+)\)$/)[1]),_(n)||"object"===n||"array"===n)return{type:n};if(n.endsWith("?")&&_(n.replace("?","")))return u({type:"union",anyOf:[{type:n.replace("?","")},{type:"nil"}]},i,o);if(n.endsWith("[]")){return{type:"array",items:t(n.match(/^(.+)\[]$/)[1],i,o)}}if(/^[^\s|]*(?:\s*\|\s*[^\s|]*)+$/.test(n)){return u({anyOf:n.split("|").map(function(n){return n.trim()}),type:"union"},i,o)}if(n in i)return-1!==o.indexOf(n)?{type:"$recur"}:t(i[n],i,o.concat([n]));throw new Error("could not resolve: "+n)}if("object"===(void 0===n?"undefined":v(n))){if(n.type=n.type||n.properties&&"object"||n.items&&"array"||f,"string"==typeof n.type){if("array"===n.type)return r(n,i,o);if("object"===n.type)return e(n,i,o);if("union"===n.type)return u(n,i,o);"string"==typeof n.type&&n.type in i?(void 0!==n.properties&&(n=e(n,i,o)),n.type=t(n.type,i,o)):n=Object.assign(n,t(n.type,i,o))}else Array.isArray(n.type)?(n.type=n.type.map(function(n){return t(n,i,o)}),void 0!==n.properties&&(n=e(n,i,o)),void 0!==n.items&&(n=r(n,i,o))):"object"===v(n.type)?(void 0!==n.properties&&(n=e(n,i,o)),void 0!==n.anyOf&&(n=u(n,i,o)),void 0!==n.items&&(n=r(n,i,o)),n.type=t(n.type,i,o)):n=Object.assign(n,t(n.type,i,o));return null!=n.facets&&l.each(n.facets,function(r,e){n.facets[e]=t(r,i,o)}),n}throw new Error("form can only be a string or an object")}function r(n,r,e){return n.items=t(n.items||"any",r,e),n}function e(n,r,e){var u=n.properties;for(var i in u)if(u.hasOwnProperty(i)){var o=t(u[i]||"any",r,e);i.endsWith("?")&&(delete u[i],i=i.slice(0,-1),o.required=!1),void 0===o.required&&(o.required=!0),u[i]=o}return void 0===n.additionalProperties&&(n.additionalProperties=!0),n}function u(n,r,e){return n.anyOf=n.anyOf.map(function(n){return t(n,r,e)}),n}function i(n,t){var r=(n=l.cloneDeep(n)).type;if(m(r))return d(n);if("array"===r){var e=i(n.items||{type:"any"},t),u=d(n),f=e.type;return"array"===f?(u.items=e,d(u)):"union"===f?(e.anyOf=e.anyOf.map(function(n){var t=l.cloneDeep(u);return t.items=n,t}),"boolean"==typeof n.required&&(e.required=n.required),e):(u.items=e,d(u))}if("object"===r){var a=n.properties,c=[l.cloneDeep(n)];if(c[0].properties={},l.each(a,function(r,e){var u=i(r,t);if("union"===u.type&&!1!==t.hoistUnions){var o=[];u.anyOf.forEach(function(t){"boolean"==typeof n.required&&(t.required=u.required);var r=!0,i=!1,f=void 0;try{for(var a,s=c[Symbol.iterator]();!(r=(a=s.next()).done);r=!0){var p=a.value;p=l.cloneDeep(p);var h=Object.assign({},u,t);delete h.anyOf,p.properties[e]=h,o.push(p)}}catch(n){i=!0,f=n}finally{try{!r&&s.return&&s.return()}finally{if(i)throw f}}}),c=o}else c=c.map(function(n){return n.properties[e]=u,n})}),1===c.length)return d(c[0]);if(c.length>1)return n.type="union",delete n.properties,delete n.additionalProperties,n.anyOf=c,d(n)}else if("object"===(void 0===r?"undefined":v(r))){var s=o(n),p=l.cloneDeep(n);switch(p.type=s,s){case"object":p.properties=p.properties||{};break;case"array":p.items=p.items||{type:"any"};break;case"union":p.anyOf=p.anyOf||[]}if(Array.isArray(r)){return p=l.cloneDeep(r).map(function(n){return i(n,t)}).reduce(function(n,t){return g(t,n)},i(p,t))}var h=i(r,t);return g(h,i(p,t))}return n}function o(n){if(void 0!==n.properties)return"object";if(void 0!==n.items)return"array";if("string"==typeof n.type)return n.type;if("object"===v(n.type)){if(!Array.isArray(n.type))return o(n.type);var t=n.type.map(function(n){try{return o(n)}catch(n){return null}}).filter(function(n){return null!==n})[0];if(void 0!==t)return t}throw new Error("Cannot find top level class for node, not in expanded form")}var f="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},a=n(function(n,t){(function(){function r(n,t){return n.set(t[0],t[1]),n}function e(n,t){return n.add(t),n}function u(n,t,r){switch(r.length){case 0:return n.call(t);case 1:return n.call(t,r[0]);case 2:return n.call(t,r[0],r[1]);case 3:return n.call(t,r[0],r[1],r[2])}return n.apply(t,r)}function i(n,t){for(var r=-1,e=null==n?0:n.length;++r<e&&!1!==t(n[r],r,n););return n}function o(n,t){for(var r=-1,e=null==n?0:n.length;++r<e;)if(!t(n[r],r,n))return!1;return!0}function a(n,t){for(var r=-1,e=null==n?0:n.length,u=0,i=[];++r<e;){var o=n[r];t(o,r,n)&&(i[u++]=o)}return i}function c(n,t){return!!(null==n?0:n.length)&&g(n,t,0)>-1}function l(n,t,r){for(var e=-1,u=null==n?0:n.length;++e<u;)if(r(t,n[e]))return!0;return!1}function s(n,t){for(var r=-1,e=null==n?0:n.length,u=Array(e);++r<e;)u[r]=t(n[r],r,n);return u}function p(n,t){for(var r=-1,e=t.length,u=n.length;++r<e;)n[u+r]=t[r];return n}function h(n,t,r,e){var u=-1,i=null==n?0:n.length;for(e&&i&&(r=n[++u]);++u<i;)r=t(r,n[u],u,n);return r}function v(n,t){for(var r=-1,e=null==n?0:n.length;++r<e;)if(t(n[r],r,n))return!0;return!1}function _(n,t,r){var e;return r(n,function(n,r,u){if(t(n,r,u))return e=r,!1}),e}function y(n,t,r,e){for(var u=n.length,i=r+(e?1:-1);e?i--:++i<u;)if(t(n[i],i,n))return i;return-1}function g(n,t,r){return t==t?function(n,t,r){var e=r-1,u=n.length;for(;++e<u;)if(n[e]===t)return e;return-1}(n,t,r):y(n,d,r)}function d(n){return n!=n}function m(n,t){var r=null==n?0:n.length;return r?j(n,t)/r:yn}function b(n){return function(t){return null==t?B:t[n]}}function w(n){return function(t){return null==n?B:n[t]}}function x(n,t,r,e,u){return u(n,function(n,u,i){r=e?(e=!1,n):t(r,n,u,i)}),r}function j(n,t){for(var r,e=-1,u=n.length;++e<u;){var i=t(n[e]);i!==B&&(r=r===B?i:r+i)}return r}function O(n,t){for(var r=-1,e=Array(n);++r<n;)e[r]=t(r);return e}function A(n){return function(t){return n(t)}}function k(n,t){return s(t,function(t){return n[t]})}function E(n,t){return n.has(t)}function I(n,t){for(var r=-1,e=n.length;++r<e&&g(t,n[r],0)>-1;);return r}function S(n,t){for(var r=n.length;r--&&g(t,n[r],0)>-1;);return r}function R(n){return"\\"+dr[n]}function z(n){return pr.test(n)}function L(n){var t=-1,r=Array(n.size);return n.forEach(function(n,e){r[++t]=[e,n]}),r}function W(n,t){return function(r){return n(t(r))}}function C(n,t){for(var r=-1,e=n.length,u=0,i=[];++r<e;){var o=n[r];o!==t&&o!==N||(n[r]=N,i[u++]=r)}return i}function D(n){var t=-1,r=Array(n.size);return n.forEach(function(n){r[++t]=n}),r}function U(n){return z(n)?function(n){var t=lr.lastIndex=0;for(;lr.test(n);)++t;return t}(n):Dr(n)}function $(n){return z(n)?function(n){return n.match(lr)||[]}(n):function(n){return n.split("")}(n)}var B,T=200,P="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",M="Expected a function",q="__lodash_hash_undefined__",F=500,N="__lodash_placeholder__",Z=1,V=2,K=4,G=1,J=2,H=1,Y=2,Q=4,X=8,nn=16,tn=32,rn=64,en=128,un=256,on=512,fn=30,an="...",cn=800,ln=16,sn=1,pn=2,hn=1/0,vn=9007199254740991,_n=1.7976931348623157e308,yn=NaN,gn=4294967295,dn=gn-1,mn=gn>>>1,bn=[["ary",en],["bind",H],["bindKey",Y],["curry",X],["curryRight",nn],["flip",on],["partial",tn],["partialRight",rn],["rearg",un]],wn="[object Arguments]",xn="[object Array]",jn="[object AsyncFunction]",On="[object Boolean]",An="[object Date]",kn="[object DOMException]",En="[object Error]",In="[object Function]",Sn="[object GeneratorFunction]",Rn="[object Map]",zn="[object Number]",Ln="[object Null]",Wn="[object Object]",Cn="[object Promise]",Dn="[object Proxy]",Un="[object RegExp]",$n="[object Set]",Bn="[object String]",Tn="[object Symbol]",Pn="[object Undefined]",Mn="[object WeakMap]",qn="[object WeakSet]",Fn="[object ArrayBuffer]",Nn="[object DataView]",Zn="[object Float32Array]",Vn="[object Float64Array]",Kn="[object Int8Array]",Gn="[object Int16Array]",Jn="[object Int32Array]",Hn="[object Uint8Array]",Yn="[object Uint8ClampedArray]",Qn="[object Uint16Array]",Xn="[object Uint32Array]",nt=/\b__p \+= '';/g,tt=/\b(__p \+=) '' \+/g,rt=/(__e\(.*?\)|\b__t\)) \+\n'';/g,et=/&(?:amp|lt|gt|quot|#39);/g,ut=/[&<>"']/g,it=RegExp(et.source),ot=RegExp(ut.source),ft=/<%-([\s\S]+?)%>/g,at=/<%([\s\S]+?)%>/g,ct=/<%=([\s\S]+?)%>/g,lt=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,st=/^\w*$/,pt=/^\./,ht=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,vt=/[\\^$.*+?()[\]{}|]/g,_t=RegExp(vt.source),yt=/^\s+|\s+$/g,gt=/^\s+/,dt=/\s+$/,mt=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,bt=/\{\n\/\* \[wrapped with (.+)\] \*/,wt=/,? & /,xt=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,jt=/\\(\\)?/g,Ot=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,At=/\w*$/,kt=/^[-+]0x[0-9a-f]+$/i,Et=/^0b[01]+$/i,It=/^\[object .+?Constructor\]$/,St=/^0o[0-7]+$/i,Rt=/^(?:0|[1-9]\d*)$/,zt=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Lt=/($^)/,Wt=/['\n\r\u2028\u2029\\]/g,Ct="\\ud800-\\udfff",Dt="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",Ut="\\u2700-\\u27bf",$t="a-z\\xdf-\\xf6\\xf8-\\xff",Bt="A-Z\\xc0-\\xd6\\xd8-\\xde",Tt="\\ufe0e\\ufe0f",Pt="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Mt="["+Ct+"]",qt="["+Pt+"]",Ft="["+Dt+"]",Nt="\\d+",Zt="["+Ut+"]",Vt="["+$t+"]",Kt="[^"+Ct+Pt+Nt+Ut+$t+Bt+"]",Gt="\\ud83c[\\udffb-\\udfff]",Jt="[^"+Ct+"]",Ht="(?:\\ud83c[\\udde6-\\uddff]){2}",Yt="[\\ud800-\\udbff][\\udc00-\\udfff]",Qt="["+Bt+"]",Xt="(?:"+Vt+"|"+Kt+")",nr="(?:"+Qt+"|"+Kt+")",tr="(?:['’](?:d|ll|m|re|s|t|ve))?",rr="(?:['’](?:D|LL|M|RE|S|T|VE))?",er="(?:"+Ft+"|"+Gt+")"+"?",ur="["+Tt+"]?",ir=ur+er+("(?:\\u200d(?:"+[Jt,Ht,Yt].join("|")+")"+ur+er+")*"),or="(?:"+[Zt,Ht,Yt].join("|")+")"+ir,fr="(?:"+[Jt+Ft+"?",Ft,Ht,Yt,Mt].join("|")+")",ar=RegExp("['’]","g"),cr=RegExp(Ft,"g"),lr=RegExp(Gt+"(?="+Gt+")|"+fr+ir,"g"),sr=RegExp([Qt+"?"+Vt+"+"+tr+"(?="+[qt,Qt,"$"].join("|")+")",nr+"+"+rr+"(?="+[qt,Qt+Xt,"$"].join("|")+")",Qt+"?"+Xt+"+"+tr,Qt+"+"+rr,"\\d*(?:(?:1ST|2ND|3RD|(?![123])\\dTH)\\b)","\\d*(?:(?:1st|2nd|3rd|(?![123])\\dth)\\b)",Nt,or].join("|"),"g"),pr=RegExp("[\\u200d"+Ct+Dt+Tt+"]"),hr=/[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,vr=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],_r=-1,yr={};yr[Zn]=yr[Vn]=yr[Kn]=yr[Gn]=yr[Jn]=yr[Hn]=yr[Yn]=yr[Qn]=yr[Xn]=!0,yr[wn]=yr[xn]=yr[Fn]=yr[On]=yr[Nn]=yr[An]=yr[En]=yr[In]=yr[Rn]=yr[zn]=yr[Wn]=yr[Un]=yr[$n]=yr[Bn]=yr[Mn]=!1;var gr={};gr[wn]=gr[xn]=gr[Fn]=gr[Nn]=gr[On]=gr[An]=gr[Zn]=gr[Vn]=gr[Kn]=gr[Gn]=gr[Jn]=gr[Rn]=gr[zn]=gr[Wn]=gr[Un]=gr[$n]=gr[Bn]=gr[Tn]=gr[Hn]=gr[Yn]=gr[Qn]=gr[Xn]=!0,gr[En]=gr[In]=gr[Mn]=!1;var dr={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},mr=parseFloat,br=parseInt,wr="object"==typeof f&&f&&f.Object===Object&&f,xr="object"==typeof self&&self&&self.Object===Object&&self,jr=wr||xr||Function("return this")(),Or=t&&!t.nodeType&&t,Ar=Or&&n&&!n.nodeType&&n,kr=Ar&&Ar.exports===Or,Er=kr&&wr.process,Ir=function(){try{return Er&&Er.binding&&Er.binding("util")}catch(n){}}(),Sr=Ir&&Ir.isArrayBuffer,Rr=Ir&&Ir.isDate,zr=Ir&&Ir.isMap,Lr=Ir&&Ir.isRegExp,Wr=Ir&&Ir.isSet,Cr=Ir&&Ir.isTypedArray,Dr=b("length"),Ur=w({"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","Ç":"C","ç":"c","Ð":"D","ð":"d","È":"E","É":"E","Ê":"E","Ë":"E","è":"e","é":"e","ê":"e","ë":"e","Ì":"I","Í":"I","Î":"I","Ï":"I","ì":"i","í":"i","î":"i","ï":"i","Ñ":"N","ñ":"n","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","Ù":"U","Ú":"U","Û":"U","Ü":"U","ù":"u","ú":"u","û":"u","ü":"u","Ý":"Y","ý":"y","ÿ":"y","Æ":"Ae","æ":"ae","Þ":"Th","þ":"th","ß":"ss","Ā":"A","Ă":"A","Ą":"A","ā":"a","ă":"a","ą":"a","Ć":"C","Ĉ":"C","Ċ":"C","Č":"C","ć":"c","ĉ":"c","ċ":"c","č":"c","Ď":"D","Đ":"D","ď":"d","đ":"d","Ē":"E","Ĕ":"E","Ė":"E","Ę":"E","Ě":"E","ē":"e","ĕ":"e","ė":"e","ę":"e","ě":"e","Ĝ":"G","Ğ":"G","Ġ":"G","Ģ":"G","ĝ":"g","ğ":"g","ġ":"g","ģ":"g","Ĥ":"H","Ħ":"H","ĥ":"h","ħ":"h","Ĩ":"I","Ī":"I","Ĭ":"I","Į":"I","İ":"I","ĩ":"i","ī":"i","ĭ":"i","į":"i","ı":"i","Ĵ":"J","ĵ":"j","Ķ":"K","ķ":"k","ĸ":"k","Ĺ":"L","Ļ":"L","Ľ":"L","Ŀ":"L","Ł":"L","ĺ":"l","ļ":"l","ľ":"l","ŀ":"l","ł":"l","Ń":"N","Ņ":"N","Ň":"N","Ŋ":"N","ń":"n","ņ":"n","ň":"n","ŋ":"n","Ō":"O","Ŏ":"O","Ő":"O","ō":"o","ŏ":"o","ő":"o","Ŕ":"R","Ŗ":"R","Ř":"R","ŕ":"r","ŗ":"r","ř":"r","Ś":"S","Ŝ":"S","Ş":"S","Š":"S","ś":"s","ŝ":"s","ş":"s","š":"s","Ţ":"T","Ť":"T","Ŧ":"T","ţ":"t","ť":"t","ŧ":"t","Ũ":"U","Ū":"U","Ŭ":"U","Ů":"U","Ű":"U","Ų":"U","ũ":"u","ū":"u","ŭ":"u","ů":"u","ű":"u","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","Ż":"Z","Ž":"Z","ź":"z","ż":"z","ž":"z","IJ":"IJ","ij":"ij","Œ":"Oe","œ":"oe","ʼn":"'n","ſ":"s"}),$r=w({"&":"&","<":"<",">":">",'"':""","'":"'"}),Br=w({"&":"&","<":"<",">":">",""":'"',"'":"'"}),Tr=function n(t){function f(n){if(ni(n)&&!Zf(n)&&!(n instanceof Dt)){if(n instanceof Ct)return n;if(Fi.call(n,"__wrapped__"))return Ou(n)}return new Ct(n)}function w(){}function Ct(n,t){this.__wrapped__=n,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=B}function Dt(n){this.__wrapped__=n,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=gn,this.__views__=[]}function Ut(n){var t=-1,r=null==n?0:n.length;for(this.clear();++t<r;){var e=n[t];this.set(e[0],e[1])}}function $t(n){var t=-1,r=null==n?0:n.length;for(this.clear();++t<r;){var e=n[t];this.set(e[0],e[1])}}function Bt(n){var t=-1,r=null==n?0:n.length;for(this.clear();++t<r;){var e=n[t];this.set(e[0],e[1])}}function Tt(n){var t=-1,r=null==n?0:n.length;for(this.__data__=new Bt;++t<r;)this.add(n[t])}function Pt(n){var t=this.__data__=new $t(n);this.size=t.size}function Mt(n,t){var r=Zf(n),e=!r&&Nf(n),u=!r&&!e&&Kf(n),i=!r&&!e&&!u&&Qf(n),o=r||e||u||i,f=o?O(n.length,Ui):[],a=f.length;for(var c in n)!t&&!Fi.call(n,c)||o&&("length"==c||u&&("offset"==c||"parent"==c)||i&&("buffer"==c||"byteLength"==c||"byteOffset"==c)||lu(c,a))||f.push(c);return f}function qt(n){var t=n.length;return t?n[Xr(0,t-1)]:B}function Ft(n,t,r){(r===B||Vu(n[t],r))&&(r!==B||t in n)||Kt(n,t,r)}function Nt(n,t,r){var e=n[t];Fi.call(n,t)&&Vu(e,r)&&(r!==B||t in n)||Kt(n,t,r)}function Zt(n,t){for(var r=n.length;r--;)if(Vu(n[r][0],t))return r;return-1}function Vt(n,t){return n&&Ee(t,vi(t),n)}function Kt(n,t,r){"__proto__"==t&&fo?fo(n,t,{configurable:!0,enumerable:!0,value:r,writable:!0}):n[t]=r}function Gt(n,t){for(var r=-1,e=t.length,u=Si(e),i=null==n;++r<e;)u[r]=i?B:pi(n,t[r]);return u}function Jt(n,t,r){return n==n&&(r!==B&&(n=n<=r?n:r),t!==B&&(n=n>=t?n:t)),n}function Ht(n,t,u,o,f,a){var c,l=t&Z,s=t&V,p=t&K;if(u&&(c=f?u(n,o,f,a):u(n)),c!==B)return c;if(!Xu(n))return n;var v=Zf(n);if(v){if(c=function(n){var t=n.length,r=n.constructor(t);return t&&"string"==typeof n[0]&&Fi.call(n,"index")&&(r.index=n.index,r.input=n.input),r}(n),!l)return ke(n,c)}else{var _=nf(n),y=_==In||_==Sn;if(Kf(n))return be(n,l);if(_==Wn||_==wn||y&&!f){if(c=s||y?{}:au(n),!l)return s?function(n,t){return Ee(n,Xo(n),t)}(n,function(n,t){return n&&Ee(t,_i(t),n)}(c,n)):function(n,t){return Ee(n,Qo(n),t)}(n,Vt(c,n))}else{if(!gr[_])return f?n:{};c=function(n,t,u,i){var o=n.constructor;switch(t){case Fn:return we(n);case On:case An:return new o(+n);case Nn:return function(n,t){var r=t?we(n.buffer):n.buffer;return new n.constructor(r,n.byteOffset,n.byteLength)}(n,i);case Zn:case Vn:case Kn:case Gn:case Jn:case Hn:case Yn:case Qn:case Xn:return xe(n,i);case Rn:return function(n,t,e){return h(t?e(L(n),Z):L(n),r,new n.constructor)}(n,i,u);case zn:case Bn:return new o(n);case Un:return function(n){var t=new n.constructor(n.source,At.exec(n));return t.lastIndex=n.lastIndex,t}(n);case $n:return function(n,t,r){return h(t?r(D(n),Z):D(n),e,new n.constructor)}(n,i,u);case Tn:return function(n){return To?Ci(To.call(n)):{}}(n)}}(n,_,Ht,l)}}a||(a=new Pt);var g=a.get(n);if(g)return g;a.set(n,c);var d=v?B:(p?s?nu:Xe:s?_i:vi)(n);return i(d||n,function(r,e){d&&(r=n[e=r]),Nt(c,e,Ht(r,t,u,e,n,a))}),c}function Yt(n,t,r){var e=r.length;if(null==n)return!e;for(n=Ci(n);e--;){var u=r[e],i=t[u],o=n[u];if(o===B&&!(u in n)||!i(o))return!1}return!0}function Qt(n,t,r){if("function"!=typeof n)throw new $i(M);return ef(function(){n.apply(B,r)},t)}function Xt(n,t,r,e){var u=-1,i=c,o=!0,f=n.length,a=[],p=t.length;if(!f)return a;r&&(t=s(t,A(r))),e?(i=l,o=!1):t.length>=T&&(i=E,o=!1,t=new Tt(t));n:for(;++u<f;){var h=n[u],v=null==r?h:r(h);if(h=e||0!==h?h:0,o&&v==v){for(var _=p;_--;)if(t[_]===v)continue n;a.push(h)}else i(t,v,e)||a.push(h)}return a}function nr(n,t,r){for(var e=-1,u=n.length;++e<u;){var i=n[e],o=t(i);if(null!=o&&(f===B?o==o&&!ui(o):r(o,f)))var f=o,a=i}return a}function tr(n,t){var r=[];return qo(n,function(n,e,u){t(n,e,u)&&r.push(n)}),r}function rr(n,t,r,e,u){var i=-1,o=n.length;for(r||(r=cu),u||(u=[]);++i<o;){var f=n[i];t>0&&r(f)?t>1?rr(f,t-1,r,e,u):p(u,f):e||(u[u.length]=f)}return u}function er(n,t){return n&&No(n,t,vi)}function ur(n,t){return n&&Zo(n,t,vi)}function ir(n,t){return a(t,function(t){return Hu(n[t])})}function or(n,t){for(var r=0,e=(t=de(t,n)).length;null!=n&&r<e;)n=n[xu(t[r++])];return r&&r==e?n:B}function fr(n,t,r){var e=t(n);return Zf(n)?e:p(e,r(n))}function lr(n){return null==n?n===B?Pn:Ln:oo&&oo in Ci(n)?function(n){var t=Fi.call(n,oo),r=n[oo];try{n[oo]=B;var e=!0}catch(n){}var u=Vi.call(n);return e&&(t?n[oo]=r:delete n[oo]),u}(n):function(n){return Vi.call(n)}(n)}function pr(n,t){return n>t}function dr(n,t){return null!=n&&Fi.call(n,t)}function wr(n,t){return null!=n&&t in Ci(n)}function xr(n,t,r){for(var e=r?l:c,u=n[0].length,i=n.length,o=i,f=Si(i),a=1/0,p=[];o--;){var h=n[o];o&&t&&(h=s(h,A(t))),a=bo(h.length,a),f[o]=!r&&(t||u>=120&&h.length>=120)?new Tt(o&&h):B}h=n[0];var v=-1,_=f[0];n:for(;++v<u&&p.length<a;){var y=h[v],g=t?t(y):y;if(y=r||0!==y?y:0,!(_?E(_,g):e(p,g,r))){for(o=i;--o;){var d=f[o];if(!(d?E(d,g):e(n[o],g,r)))continue n}_&&_.push(g),p.push(y)}}return p}function Or(n,t,r){var e=null==(n=du(n,t=de(t,n)))?n:n[xu(Su(t))];return null==e?B:u(e,n,r)}function Ar(n){return ni(n)&&lr(n)==wn}function Er(n,t,r,e,u){return n===t||(null==n||null==t||!ni(n)&&!ni(t)?n!=n&&t!=t:function(n,t,r,e,u,i){var o=Zf(n),f=Zf(t),a=o?xn:nf(n),c=f?xn:nf(t),l=(a=a==wn?Wn:a)==Wn,s=(c=c==wn?Wn:c)==Wn,p=a==c;if(p&&Kf(n)){if(!Kf(t))return!1;o=!0,l=!1}if(p&&!l)return i||(i=new Pt),o||Qf(n)?Ye(n,t,r,e,u,i):function(n,t,r,e,u,i,o){switch(r){case Nn:if(n.byteLength!=t.byteLength||n.byteOffset!=t.byteOffset)return!1;n=n.buffer,t=t.buffer;case Fn:return!(n.byteLength!=t.byteLength||!i(new Qi(n),new Qi(t)));case On:case An:case zn:return Vu(+n,+t);case En:return n.name==t.name&&n.message==t.message;case Un:case Bn:return n==t+"";case Rn:var f=L;case $n:var a=e&G;if(f||(f=D),n.size!=t.size&&!a)return!1;var c=o.get(n);if(c)return c==t;e|=J,o.set(n,t);var l=Ye(f(n),f(t),e,u,i,o);return o.delete(n),l;case Tn:if(To)return To.call(n)==To.call(t)}return!1}(n,t,a,r,e,u,i);if(!(r&G)){var h=l&&Fi.call(n,"__wrapped__"),v=s&&Fi.call(t,"__wrapped__");if(h||v){var _=h?n.value():n,y=v?t.value():t;return i||(i=new Pt),u(_,y,r,e,i)}}return!!p&&(i||(i=new Pt),function(n,t,r,e,u,i){var o=r&G,f=Xe(n),a=f.length,c=Xe(t).length;if(a!=c&&!o)return!1;for(var l=a;l--;){var s=f[l];if(!(o?s in t:Fi.call(t,s)))return!1}var p=i.get(n);if(p&&i.get(t))return p==t;var h=!0;i.set(n,t),i.set(t,n);for(var v=o;++l<a;){s=f[l];var _=n[s],y=t[s];if(e)var g=o?e(y,_,s,t,n,i):e(_,y,s,n,t,i);if(!(g===B?_===y||u(_,y,r,e,i):g)){h=!1;break}v||(v="constructor"==s)}if(h&&!v){var d=n.constructor,m=t.constructor;d!=m&&"constructor"in n&&"constructor"in t&&!("function"==typeof d&&d instanceof d&&"function"==typeof m&&m instanceof m)&&(h=!1)}return i.delete(n),i.delete(t),h}(n,t,r,e,u,i))}(n,t,r,e,Er,u))}function Ir(n,t,r,e){var u=r.length,i=u,o=!e;if(null==n)return!i;for(n=Ci(n);u--;){var f=r[u];if(o&&f[2]?f[1]!==n[f[0]]:!(f[0]in n))return!1}for(;++u<i;){var a=(f=r[u])[0],c=n[a],l=f[1];if(o&&f[2]){if(c===B&&!(a in n))return!1}else{var s=new Pt;if(e)var p=e(c,l,a,n,t,s);if(!(p===B?Er(l,c,G|J,e,s):p))return!1}}return!0}function Dr(n){return!(!Xu(n)||function(n){return!!Zi&&Zi in n}(n))&&(Hu(n)?Ji:It).test(ju(n))}function Pr(n){return"function"==typeof n?n:null==n?xi:"object"==typeof n?Zf(n)?Vr(n[0],n[1]):Zr(n):ki(n)}function Mr(n){if(!vu(n))return go(n);var t=[];for(var r in Ci(n))Fi.call(n,r)&&"constructor"!=r&&t.push(r);return t}function qr(n){if(!Xu(n))return function(n){var t=[];if(null!=n)for(var r in Ci(n))t.push(r);return t}(n);var t=vu(n),r=[];for(var e in n)("constructor"!=e||!t&&Fi.call(n,e))&&r.push(e);return r}function Fr(n,t){return n<t}function Nr(n,t){var r=-1,e=Ku(n)?Si(n.length):[];return qo(n,function(n,u,i){e[++r]=t(n,u,i)}),e}function Zr(n){var t=iu(n);return 1==t.length&&t[0][2]?yu(t[0][0],t[0][1]):function(r){return r===n||Ir(r,n,t)}}function Vr(n,t){return pu(n)&&_u(t)?yu(xu(n),t):function(r){var e=pi(r,n);return e===B&&e===t?hi(r,n):Er(t,e,G|J)}}function Kr(n,t,r,e,u){n!==t&&No(t,function(i,o){if(Xu(i))u||(u=new Pt),function(n,t,r,e,u,i,o){var f=n[r],a=t[r],c=o.get(a);if(c)Ft(n,r,c);else{var l=i?i(f,a,r+"",n,t,o):B,s=l===B;if(s){var p=Zf(a),h=!p&&Kf(a),v=!p&&!h&&Qf(a);l=a,p||h||v?Zf(f)?l=f:Gu(f)?l=ke(f):h?(s=!1,l=be(a,!0)):v?(s=!1,l=xe(a,!0)):l=[]:ri(a)||Nf(a)?(l=f,Nf(f)?l=li(f):(!Xu(f)||e&&Hu(f))&&(l=au(a))):s=!1}s&&(o.set(a,l),u(l,a,e,i,o),o.delete(a)),Ft(n,r,l)}}(n,t,o,r,Kr,e,u);else{var f=e?e(n[o],i,o+"",n,t,u):B;f===B&&(f=i),Ft(n,o,f)}},_i)}function Gr(n,t){var r=n.length;if(r)return t+=t<0?r:0,lu(t,r)?n[t]:B}function Jr(n,t,r){var e=-1;return t=s(t.length?t:[xi],A(eu())),function(n,t){var r=n.length;for(n.sort(t);r--;)n[r]=n[r].value;return n}(Nr(n,function(n,r,u){return{criteria:s(t,function(t){return t(n)}),index:++e,value:n}}),function(n,t){return function(n,t,r){for(var e=-1,u=n.criteria,i=t.criteria,o=u.length,f=r.length;++e<o;){var a=je(u[e],i[e]);if(a){if(e>=f)return a;var c=r[e];return a*("desc"==c?-1:1)}}return n.index-t.index}(n,t,r)})}function Hr(n,t,r){for(var e=-1,u=t.length,i={};++e<u;){var o=t[e],f=or(n,o);r(f,o)&&re(i,de(o,n),f)}return i}function Yr(n,t,r,e){var u=e?function(n,t,r,e){for(var u=r-1,i=n.length;++u<i;)if(e(n[u],t))return u;return-1}:g,i=-1,o=t.length,f=n;for(n===t&&(t=ke(t)),r&&(f=s(n,A(r)));++i<o;)for(var a=0,c=t[i],l=r?r(c):c;(a=u(f,l,a,e))>-1;)f!==n&&eo.call(f,a,1),eo.call(n,a,1);return n}function Qr(n,t){for(var r=n?t.length:0,e=r-1;r--;){var u=t[r];if(r==e||u!==i){var i=u;lu(u)?eo.call(n,u,1):le(n,u)}}return n}function Xr(n,t){return n+po(jo()*(t-n+1))}function ne(n,t){var r="";if(!n||t<1||t>vn)return r;do{t%2&&(r+=n),(t=po(t/2))&&(n+=n)}while(t);return r}function te(n,t){return uf(gu(n,t,xi),n+"")}function re(n,t,r,e){if(!Xu(n))return n;for(var u=-1,i=(t=de(t,n)).length,o=i-1,f=n;null!=f&&++u<i;){var a=xu(t[u]),c=r;if(u!=o){var l=f[a];(c=e?e(l,a,f):B)===B&&(c=Xu(l)?l:lu(t[u+1])?[]:{})}Nt(f,a,c),f=f[a]}return n}function ee(n,t,r){var e=-1,u=n.length;t<0&&(t=-t>u?0:u+t),(r=r>u?u:r)<0&&(r+=u),u=t>r?0:r-t>>>0,t>>>=0;for(var i=Si(u);++e<u;)i[e]=n[e+t];return i}function ue(n,t,r){var e=0,u=null==n?e:n.length;if("number"==typeof t&&t==t&&u<=mn){for(;e<u;){var i=e+u>>>1,o=n[i];null!==o&&!ui(o)&&(r?o<=t:o<t)?e=i+1:u=i}return u}return ie(n,t,xi,r)}function ie(n,t,r,e){t=r(t);for(var u=0,i=null==n?0:n.length,o=t!=t,f=null===t,a=ui(t),c=t===B;u<i;){var l=po((u+i)/2),s=r(n[l]),p=s!==B,h=null===s,v=s==s,_=ui(s);if(o)var y=e||v;else y=c?v&&(e||p):f?v&&p&&(e||!h):a?v&&p&&!h&&(e||!_):!h&&!_&&(e?s<=t:s<t);y?u=l+1:i=l}return bo(i,dn)}function oe(n,t){for(var r=-1,e=n.length,u=0,i=[];++r<e;){var o=n[r],f=t?t(o):o;if(!r||!Vu(f,a)){var a=f;i[u++]=0===o?0:o}}return i}function fe(n){return"number"==typeof n?n:ui(n)?yn:+n}function ae(n){if("string"==typeof n)return n;if(Zf(n))return s(n,ae)+"";if(ui(n))return Po?Po.call(n):"";var t=n+"";return"0"==t&&1/n==-hn?"-0":t}function ce(n,t,r){var e=-1,u=c,i=n.length,o=!0,f=[],a=f;if(r)o=!1,u=l;else if(i>=T){var s=t?null:Ho(n);if(s)return D(s);o=!1,u=E,a=new Tt}else a=t?[]:f;n:for(;++e<i;){var p=n[e],h=t?t(p):p;if(p=r||0!==p?p:0,o&&h==h){for(var v=a.length;v--;)if(a[v]===h)continue n;t&&a.push(h),f.push(p)}else u(a,h,r)||(a!==f&&a.push(h),f.push(p))}return f}function le(n,t){return t=de(t,n),null==(n=du(n,t))||delete n[xu(Su(t))]}function se(n,t,r,e){return re(n,t,r(or(n,t)),e)}function pe(n,t,r,e){for(var u=n.length,i=e?u:-1;(e?i--:++i<u)&&t(n[i],i,n););return r?ee(n,e?0:i,e?i+1:u):ee(n,e?i+1:0,e?u:i)}function he(n,t){var r=n;return r instanceof Dt&&(r=r.value()),h(t,function(n,t){return t.func.apply(t.thisArg,p([n],t.args))},r)}function ve(n,t,r){var e=n.length;if(e<2)return e?ce(n[0]):[];for(var u=-1,i=Si(e);++u<e;)for(var o=n[u],f=-1;++f<e;)f!=u&&(i[u]=Xt(i[u]||o,n[f],t,r));return ce(rr(i,1),t,r)}function _e(n,t,r){for(var e=-1,u=n.length,i=t.length,o={};++e<u;){var f=e<i?t[e]:B;r(o,n[e],f)}return o}function ye(n){return Gu(n)?n:[]}function ge(n){return"function"==typeof n?n:xi}function de(n,t){return Zf(n)?n:pu(n,t)?[n]:of(si(n))}function me(n,t,r){var e=n.length;return r=r===B?e:r,!t&&r>=e?n:ee(n,t,r)}function be(n,t){if(t)return n.slice();var r=n.length,e=Xi?Xi(r):new n.constructor(r);return n.copy(e),e}function we(n){var t=new n.constructor(n.byteLength);return new Qi(t).set(new Qi(n)),t}function xe(n,t){var r=t?we(n.buffer):n.buffer;return new n.constructor(r,n.byteOffset,n.length)}function je(n,t){if(n!==t){var r=n!==B,e=null===n,u=n==n,i=ui(n),o=t!==B,f=null===t,a=t==t,c=ui(t);if(!f&&!c&&!i&&n>t||i&&o&&a&&!f&&!c||e&&o&&a||!r&&a||!u)return 1;if(!e&&!i&&!c&&n<t||c&&r&&u&&!e&&!i||f&&r&&u||!o&&u||!a)return-1}return 0}function Oe(n,t,r,e){for(var u=-1,i=n.length,o=r.length,f=-1,a=t.length,c=mo(i-o,0),l=Si(a+c),s=!e;++f<a;)l[f]=t[f];for(;++u<o;)(s||u<i)&&(l[r[u]]=n[u]);for(;c--;)l[f++]=n[u++];return l}function Ae(n,t,r,e){for(var u=-1,i=n.length,o=-1,f=r.length,a=-1,c=t.length,l=mo(i-f,0),s=Si(l+c),p=!e;++u<l;)s[u]=n[u];for(var h=u;++a<c;)s[h+a]=t[a];for(;++o<f;)(p||u<i)&&(s[h+r[o]]=n[u++]);return s}function ke(n,t){var r=-1,e=n.length;for(t||(t=Si(e));++r<e;)t[r]=n[r];return t}function Ee(n,t,r,e){var u=!r;r||(r={});for(var i=-1,o=t.length;++i<o;){var f=t[i],a=e?e(r[f],n[f],f,r,n):B;a===B&&(a=n[f]),u?Kt(r,f,a):Nt(r,f,a)}return r}function Ie(n,t){return function(r,e){var u=Zf(r)?function(n,t,r,e){for(var u=-1,i=null==n?0:n.length;++u<i;){var o=n[u];t(e,o,r(o),n)}return e}:function(n,t,r,e){return qo(n,function(n,u,i){t(e,n,r(n),i)}),e},i=t?t():{};return u(r,n,eu(e,2),i)}}function Se(n){return te(function(t,r){var e=-1,u=r.length,i=u>1?r[u-1]:B,o=u>2?r[2]:B;for(i=n.length>3&&"function"==typeof i?(u--,i):B,o&&su(r[0],r[1],o)&&(i=u<3?B:i,u=1),t=Ci(t);++e<u;){var f=r[e];f&&n(t,f,e,i)}return t})}function Re(n,t){return function(r,e){if(null==r)return r;if(!Ku(r))return n(r,e);for(var u=r.length,i=t?u:-1,o=Ci(r);(t?i--:++i<u)&&!1!==e(o[i],i,o););return r}}function ze(n){return function(t,r,e){for(var u=-1,i=Ci(t),o=e(t),f=o.length;f--;){var a=o[n?f:++u];if(!1===r(i[a],a,i))break}return t}}function Le(n){return function(t){var r=z(t=si(t))?$(t):B,e=r?r[0]:t.charAt(0),u=r?me(r,1).join(""):t.slice(1);return e[n]()+u}}function We(n){return function(t){return h(bi(mi(t).replace(ar,"")),n,"")}}function Ce(n){return function(){var t=arguments;switch(t.length){case 0:return new n;case 1:return new n(t[0]);case 2:return new n(t[0],t[1]);case 3:return new n(t[0],t[1],t[2]);case 4:return new n(t[0],t[1],t[2],t[3]);case 5:return new n(t[0],t[1],t[2],t[3],t[4]);case 6:return new n(t[0],t[1],t[2],t[3],t[4],t[5]);case 7:return new n(t[0],t[1],t[2],t[3],t[4],t[5],t[6])}var r=Mo(n.prototype),e=n.apply(r,t);return Xu(e)?e:r}}function De(n){return function(t,r,e){var u=Ci(t);if(!Ku(t)){var i=eu(r,3);t=vi(t),r=function(n){return i(u[n],n,u)}}var o=n(t,r,e);return o>-1?u[i?t[o]:o]:B}}function Ue(n){return Qe(function(t){var r=t.length,e=r,u=Ct.prototype.thru;for(n&&t.reverse();e--;){var i=t[e];if("function"!=typeof i)throw new $i(M);if(u&&!o&&"wrapper"==tu(i))var o=new Ct([],!0)}for(e=o?e:r;++e<r;){var f=tu(i=t[e]),a="wrapper"==f?Yo(i):B;o=a&&hu(a[0])&&a[1]==(en|X|tn|un)&&!a[4].length&&1==a[9]?o[tu(a[0])].apply(o,a[3]):1==i.length&&hu(i)?o[f]():o.thru(i)}return function(){var n=arguments,e=n[0];if(o&&1==n.length&&Zf(e))return o.plant(e).value();for(var u=0,i=r?t[u].apply(this,n):e;++u<r;)i=t[u].call(this,i);return i}})}function $e(n,t,r,e,u,i,o,f,a,c){function l(){for(var g=arguments.length,d=Si(g),m=g;m--;)d[m]=arguments[m];if(v)var b=ru(l),w=function(n,t){for(var r=n.length,e=0;r--;)n[r]===t&&++e;return e}(d,b);if(e&&(d=Oe(d,e,u,v)),i&&(d=Ae(d,i,o,v)),g-=w,v&&g<c){var x=C(d,b);return Ne(n,t,$e,l.placeholder,r,d,x,f,a,c-g)}var j=p?r:this,O=h?j[n]:n;return g=d.length,f?d=function(n,t){for(var r=n.length,e=bo(t.length,r),u=ke(n);e--;){var i=t[e];n[e]=lu(i,r)?u[i]:B}return n}(d,f):_&&g>1&&d.reverse(),s&&a<g&&(d.length=a),this&&this!==jr&&this instanceof l&&(O=y||Ce(O)),O.apply(j,d)}var s=t&en,p=t&H,h=t&Y,v=t&(X|nn),_=t&on,y=h?B:Ce(n);return l}function Be(n,t){return function(r,e){return function(n,t,r,e){return er(n,function(n,u,i){t(e,r(n),u,i)}),e}(r,n,t(e),{})}}function Te(n,t){return function(r,e){var u;if(r===B&&e===B)return t;if(r!==B&&(u=r),e!==B){if(u===B)return e;"string"==typeof r||"string"==typeof e?(r=ae(r),e=ae(e)):(r=fe(r),e=fe(e)),u=n(r,e)}return u}}function Pe(n){return Qe(function(t){return t=s(t,A(eu())),te(function(r){var e=this;return n(t,function(n){return u(n,e,r)})})})}function Me(n,t){var r=(t=t===B?" ":ae(t)).length;if(r<2)return r?ne(t,n):t;var e=ne(t,so(n/U(t)));return z(t)?me($(e),0,n).join(""):e.slice(0,n)}function qe(n){return function(t,r,e){return e&&"number"!=typeof e&&su(t,r,e)&&(r=e=B),t=oi(t),r===B?(r=t,t=0):r=oi(r),e=e===B?t<r?1:-1:oi(e),function(n,t,r,e){for(var u=-1,i=mo(so((t-n)/(r||1)),0),o=Si(i);i--;)o[e?i:++u]=n,n+=r;return o}(t,r,e,n)}}function Fe(n){return function(t,r){return"string"==typeof t&&"string"==typeof r||(t=ci(t),r=ci(r)),n(t,r)}}function Ne(n,t,r,e,u,i,o,f,a,c){var l=t&X;t|=l?tn:rn,(t&=~(l?rn:tn))&Q||(t&=~(H|Y));var s=[n,t,u,l?i:B,l?o:B,l?B:i,l?B:o,f,a,c],p=r.apply(B,s);return hu(n)&&rf(p,s),p.placeholder=e,mu(p,n,t)}function Ze(n){var t=Wi[n];return function(n,r){if(n=ci(n),r=null==r?0:bo(fi(r),292)){var e=(si(n)+"e").split("e");return+((e=(si(t(e[0]+"e"+(+e[1]+r)))+"e").split("e"))[0]+"e"+(+e[1]-r))}return t(n)}}function Ve(n){return function(t){var r=nf(t);return r==Rn?L(t):r==$n?function(n){var t=-1,r=Array(n.size);return n.forEach(function(n){r[++t]=[n,n]}),r}(t):function(n,t){return s(t,function(t){return[t,n[t]]})}(t,n(t))}}function Ke(n,t,r,e,i,o,f,a){var c=t&Y;if(!c&&"function"!=typeof n)throw new $i(M);var l=e?e.length:0;if(l||(t&=~(tn|rn),e=i=B),f=f===B?f:mo(fi(f),0),a=a===B?a:fi(a),l-=i?i.length:0,t&rn){var s=e,p=i;e=i=B}var h=c?B:Yo(n),v=[n,t,r,e,i,s,p,o,f,a];if(h&&function(n,t){var r=n[1],e=t[1],u=r|e,i=u<(H|Y|en),o=e==en&&r==X||e==en&&r==un&&n[7].length<=t[8]||e==(en|un)&&t[7].length<=t[8]&&r==X;if(!i&&!o)return n;e&H&&(n[2]=t[2],u|=r&H?0:Q);var f=t[3];if(f){var a=n[3];n[3]=a?Oe(a,f,t[4]):f,n[4]=a?C(n[3],N):t[4]}(f=t[5])&&(a=n[5],n[5]=a?Ae(a,f,t[6]):f,n[6]=a?C(n[5],N):t[6]),(f=t[7])&&(n[7]=f),e&en&&(n[8]=null==n[8]?t[8]:bo(n[8],t[8])),null==n[9]&&(n[9]=t[9]),n[0]=t[0],n[1]=u}(v,h),n=v[0],t=v[1],r=v[2],e=v[3],i=v[4],!(a=v[9]=v[9]===B?c?0:n.length:mo(v[9]-l,0))&&t&(X|nn)&&(t&=~(X|nn)),t&&t!=H)_=t==X||t==nn?function(n,t,r){function e(){for(var o=arguments.length,f=Si(o),a=o,c=ru(e);a--;)f[a]=arguments[a];var l=o<3&&f[0]!==c&&f[o-1]!==c?[]:C(f,c);return(o-=l.length)<r?Ne(n,t,$e,e.placeholder,B,f,l,B,B,r-o):u(this&&this!==jr&&this instanceof e?i:n,this,f)}var i=Ce(n);return e}(n,t,a):t!=tn&&t!=(H|tn)||i.length?$e.apply(B,v):function(n,t,r,e){function i(){for(var t=-1,a=arguments.length,c=-1,l=e.length,s=Si(l+a),p=this&&this!==jr&&this instanceof i?f:n;++c<l;)s[c]=e[c];for(;a--;)s[c++]=arguments[++t];return u(p,o?r:this,s)}var o=t&H,f=Ce(n);return i}(n,t,r,e);else var _=function(n,t,r){function e(){return(this&&this!==jr&&this instanceof e?i:n).apply(u?r:this,arguments)}var u=t&H,i=Ce(n);return e}(n,t,r);return mu((h?Vo:rf)(_,v),n,t)}function Ge(n,t,r,e){return n===B||Vu(n,Pi[r])&&!Fi.call(e,r)?t:n}function Je(n,t,r,e,u,i){return Xu(n)&&Xu(t)&&(i.set(t,n),Kr(n,t,B,Je,i),i.delete(t)),n}function He(n){return ri(n)?B:n}function Ye(n,t,r,e,u,i){var o=r&G,f=n.length,a=t.length;if(f!=a&&!(o&&a>f))return!1;var c=i.get(n);if(c&&i.get(t))return c==t;var l=-1,s=!0,p=r&J?new Tt:B;for(i.set(n,t),i.set(t,n);++l<f;){var h=n[l],_=t[l];if(e)var y=o?e(_,h,l,t,n,i):e(h,_,l,n,t,i);if(y!==B){if(y)continue;s=!1;break}if(p){if(!v(t,function(n,t){if(!E(p,t)&&(h===n||u(h,n,r,e,i)))return p.push(t)})){s=!1;break}}else if(h!==_&&!u(h,_,r,e,i)){s=!1;break}}return i.delete(n),i.delete(t),s}function Qe(n){return uf(gu(n,B,Eu),n+"")}function Xe(n){return fr(n,vi,Qo)}function nu(n){return fr(n,_i,Xo)}function tu(n){for(var t=n.name+"",r=Lo[t],e=Fi.call(Lo,t)?r.length:0;e--;){var u=r[e],i=u.func;if(null==i||i==n)return u.name}return t}function ru(n){return(Fi.call(f,"placeholder")?f:n).placeholder}function eu(){var n=f.iteratee||ji;return n=n===ji?Pr:n,arguments.length?n(arguments[0],arguments[1]):n}function uu(n,t){var r=n.__data__;return function(n){var t=typeof n;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==n:null===n}(t)?r["string"==typeof t?"string":"hash"]:r.map}function iu(n){for(var t=vi(n),r=t.length;r--;){var e=t[r],u=n[e];t[r]=[e,u,_u(u)]}return t}function ou(n,t){var r=function(n,t){return null==n?B:n[t]}(n,t);return Dr(r)?r:B}function fu(n,t,r){for(var e=-1,u=(t=de(t,n)).length,i=!1;++e<u;){var o=xu(t[e]);if(!(i=null!=n&&r(n,o)))break;n=n[o]}return i||++e!=u?i:!!(u=null==n?0:n.length)&&Qu(u)&&lu(o,u)&&(Zf(n)||Nf(n))}function au(n){return"function"!=typeof n.constructor||vu(n)?{}:Mo(no(n))}function cu(n){return Zf(n)||Nf(n)||!!(uo&&n&&n[uo])}function lu(n,t){return!!(t=null==t?vn:t)&&("number"==typeof n||Rt.test(n))&&n>-1&&n%1==0&&n<t}function su(n,t,r){if(!Xu(r))return!1;var e=typeof t;return!!("number"==e?Ku(r)&&lu(t,r.length):"string"==e&&t in r)&&Vu(r[t],n)}function pu(n,t){if(Zf(n))return!1;var r=typeof n;return!("number"!=r&&"symbol"!=r&&"boolean"!=r&&null!=n&&!ui(n))||st.test(n)||!lt.test(n)||null!=t&&n in Ci(t)}function hu(n){var t=tu(n),r=f[t];if("function"!=typeof r||!(t in Dt.prototype))return!1;if(n===r)return!0;var e=Yo(r);return!!e&&n===e[0]}function vu(n){var t=n&&n.constructor;return n===("function"==typeof t&&t.prototype||Pi)}function _u(n){return n==n&&!Xu(n)}function yu(n,t){return function(r){return null!=r&&r[n]===t&&(t!==B||n in Ci(r))}}function gu(n,t,r){return t=mo(t===B?n.length-1:t,0),function(){for(var e=arguments,i=-1,o=mo(e.length-t,0),f=Si(o);++i<o;)f[i]=e[t+i];i=-1;for(var a=Si(t+1);++i<t;)a[i]=e[i];return a[t]=r(f),u(n,this,a)}}function du(n,t){return t.length<2?n:or(n,ee(t,0,-1))}function mu(n,t,r){var e=t+"";return uf(n,function(n,t){var r=t.length;if(!r)return n;var e=r-1;return t[e]=(r>1?"& ":"")+t[e],t=t.join(r>2?", ":" "),n.replace(mt,"{\n/* [wrapped with "+t+"] */\n")}(e,function(n,t){return i(bn,function(r){var e="_."+r[0];t&r[1]&&!c(n,e)&&n.push(e)}),n.sort()}(function(n){var t=n.match(bt);return t?t[1].split(wt):[]}(e),r)))}function bu(n){var t=0,r=0;return function(){var e=wo(),u=ln-(e-r);if(r=e,u>0){if(++t>=cn)return arguments[0]}else t=0;return n.apply(B,arguments)}}function wu(n,t){var r=-1,e=n.length,u=e-1;for(t=t===B?e:t;++r<t;){var i=Xr(r,u),o=n[i];n[i]=n[r],n[r]=o}return n.length=t,n}function xu(n){if("string"==typeof n||ui(n))return n;var t=n+"";return"0"==t&&1/n==-hn?"-0":t}function ju(n){if(null!=n){try{return qi.call(n)}catch(n){}try{return n+""}catch(n){}}return""}function Ou(n){if(n instanceof Dt)return n.clone();var t=new Ct(n.__wrapped__,n.__chain__);return t.__actions__=ke(n.__actions__),t.__index__=n.__index__,t.__values__=n.__values__,t}function Au(n,t,r){var e=null==n?0:n.length;if(!e)return-1;var u=null==r?0:fi(r);return u<0&&(u=mo(e+u,0)),y(n,eu(t,3),u)}function ku(n,t,r){var e=null==n?0:n.length;if(!e)return-1;var u=e-1;return r!==B&&(u=fi(r),u=r<0?mo(e+u,0):bo(u,e-1)),y(n,eu(t,3),u,!0)}function Eu(n){return null!=n&&n.length?rr(n,1):[]}function Iu(n){return n&&n.length?n[0]:B}function Su(n){var t=null==n?0:n.length;return t?n[t-1]:B}function Ru(n,t){return n&&n.length&&t&&t.length?Yr(n,t):n}function zu(n){return null==n?n:Oo.call(n)}function Lu(n){if(!n||!n.length)return[];var t=0;return n=a(n,function(n){if(Gu(n))return t=mo(n.length,t),!0}),O(t,function(t){return s(n,b(t))})}function Wu(n,t){if(!n||!n.length)return[];var r=Lu(n);return null==t?r:s(r,function(n){return u(t,B,n)})}function Cu(n){var t=f(n);return t.__chain__=!0,t}function Du(n,t){return t(n)}function Uu(n,t){return(Zf(n)?i:qo)(n,eu(t,3))}function $u(n,t){return(Zf(n)?function(n,t){for(var r=null==n?0:n.length;r--&&!1!==t(n[r],r,n););return n}:Fo)(n,eu(t,3))}function Bu(n,t){return(Zf(n)?s:Nr)(n,eu(t,3))}function Tu(n,t,r){return t=r?B:t,t=n&&null==t?n.length:t,Ke(n,en,B,B,B,B,t)}function Pu(n,t){var r;if("function"!=typeof t)throw new $i(M);return n=fi(n),function(){return--n>0&&(r=t.apply(this,arguments)),n<=1&&(t=B),r}}function Mu(n,t,r){var e=Ke(n,X,B,B,B,B,B,t=r?B:t);return e.placeholder=Mu.placeholder,e}function qu(n,t,r){var e=Ke(n,nn,B,B,B,B,B,t=r?B:t);return e.placeholder=qu.placeholder,e}function Fu(n,t,r){function e(t){var r=a,e=c;return a=c=B,v=t,s=n.apply(e,r)}function u(n){var r=n-h;return h===B||r>=t||r<0||y&&n-v>=l}function i(){var n=Wf();if(u(n))return o(n);p=ef(i,function(n){var r=t-(n-h);return y?bo(r,l-(n-v)):r}(n))}function o(n){return p=B,g&&a?e(n):(a=c=B,s)}function f(){var n=Wf(),r=u(n);if(a=arguments,c=this,h=n,r){if(p===B)return function(n){return v=n,p=ef(i,t),_?e(n):s}(h);if(y)return p=ef(i,t),e(h)}return p===B&&(p=ef(i,t)),s}var a,c,l,s,p,h,v=0,_=!1,y=!1,g=!0;if("function"!=typeof n)throw new $i(M);return t=ci(t)||0,Xu(r)&&(_=!!r.leading,l=(y="maxWait"in r)?mo(ci(r.maxWait)||0,t):l,g="trailing"in r?!!r.trailing:g),f.cancel=function(){p!==B&&Jo(p),v=0,a=h=c=p=B},f.flush=function(){return p===B?s:o(Wf())},f}function Nu(n,t){if("function"!=typeof n||null!=t&&"function"!=typeof t)throw new $i(M);var r=function(){var e=arguments,u=t?t.apply(this,e):e[0],i=r.cache;if(i.has(u))return i.get(u);var o=n.apply(this,e);return r.cache=i.set(u,o)||i,o};return r.cache=new(Nu.Cache||Bt),r}function Zu(n){if("function"!=typeof n)throw new $i(M);return function(){var t=arguments;switch(t.length){case 0:return!n.call(this);case 1:return!n.call(this,t[0]);case 2:return!n.call(this,t[0],t[1]);case 3:return!n.call(this,t[0],t[1],t[2])}return!n.apply(this,t)}}function Vu(n,t){return n===t||n!=n&&t!=t}function Ku(n){return null!=n&&Qu(n.length)&&!Hu(n)}function Gu(n){return ni(n)&&Ku(n)}function Ju(n){if(!ni(n))return!1;var t=lr(n);return t==En||t==kn||"string"==typeof n.message&&"string"==typeof n.name&&!ri(n)}function Hu(n){if(!Xu(n))return!1;var t=lr(n);return t==In||t==Sn||t==jn||t==Dn}function Yu(n){return"number"==typeof n&&n==fi(n)}function Qu(n){return"number"==typeof n&&n>-1&&n%1==0&&n<=vn}function Xu(n){var t=typeof n;return null!=n&&("object"==t||"function"==t)}function ni(n){return null!=n&&"object"==typeof n}function ti(n){return"number"==typeof n||ni(n)&&lr(n)==zn}function ri(n){if(!ni(n)||lr(n)!=Wn)return!1;var t=no(n);if(null===t)return!0;var r=Fi.call(t,"constructor")&&t.constructor;return"function"==typeof r&&r instanceof r&&qi.call(r)==Ki}function ei(n){return"string"==typeof n||!Zf(n)&&ni(n)&&lr(n)==Bn}function ui(n){return"symbol"==typeof n||ni(n)&&lr(n)==Tn}function ii(n){if(!n)return[];if(Ku(n))return ei(n)?$(n):ke(n);if(io&&n[io])return function(n){for(var t,r=[];!(t=n.next()).done;)r.push(t.value);return r}(n[io]());var t=nf(n);return(t==Rn?L:t==$n?D:gi)(n)}function oi(n){return n?(n=ci(n))===hn||n===-hn?(n<0?-1:1)*_n:n==n?n:0:0===n?n:0}function fi(n){var t=oi(n),r=t%1;return t==t?r?t-r:t:0}function ai(n){return n?Jt(fi(n),0,gn):0}function ci(n){if("number"==typeof n)return n;if(ui(n))return yn;if(Xu(n)){var t="function"==typeof n.valueOf?n.valueOf():n;n=Xu(t)?t+"":t}if("string"!=typeof n)return 0===n?n:+n;n=n.replace(yt,"");var r=Et.test(n);return r||St.test(n)?br(n.slice(2),r?2:8):kt.test(n)?yn:+n}function li(n){return Ee(n,_i(n))}function si(n){return null==n?"":ae(n)}function pi(n,t,r){var e=null==n?B:or(n,t);return e===B?r:e}function hi(n,t){return null!=n&&fu(n,t,wr)}function vi(n){return Ku(n)?Mt(n):Mr(n)}function _i(n){return Ku(n)?Mt(n,!0):qr(n)}function yi(n,t){if(null==n)return{};var r=s(nu(n),function(n){return[n]});return t=eu(t),Hr(n,r,function(n,r){return t(n,r[0])})}function gi(n){return null==n?[]:k(n,vi(n))}function di(n){return Oa(si(n).toLowerCase())}function mi(n){return(n=si(n))&&n.replace(zt,Ur).replace(cr,"")}function bi(n,t,r){return n=si(n),(t=r?B:t)===B?function(n){return hr.test(n)}(n)?function(n){return n.match(sr)||[]}(n):function(n){return n.match(xt)||[]}(n):n.match(t)||[]}function wi(n){return function(){return n}}function xi(n){return n}function ji(n){return Pr("function"==typeof n?n:Ht(n,Z))}function Oi(n,t,r){var e=vi(t),u=ir(t,e);null!=r||Xu(t)&&(u.length||!e.length)||(r=t,t=n,n=this,u=ir(t,vi(t)));var o=!(Xu(r)&&"chain"in r&&!r.chain),f=Hu(n);return i(u,function(r){var e=t[r];n[r]=e,f&&(n.prototype[r]=function(){var t=this.__chain__;if(o||t){var r=n(this.__wrapped__);return(r.__actions__=ke(this.__actions__)).push({func:e,args:arguments,thisArg:n}),r.__chain__=t,r}return e.apply(n,p([this.value()],arguments))})}),n}function Ai(){}function ki(n){return pu(n)?b(xu(n)):function(n){return function(t){return or(t,n)}}(n)}function Ei(){return[]}function Ii(){return!1}var Si=(t=null==t?jr:Tr.defa