github-pages-deploy-action/node_modules/pretty-format/build-es5/index.js.map
James Ives 8fcf8339ce 3.4.9
2020-04-30 08:40:07 -04:00

1 line
182 KiB
Plaintext

{"version":3,"sources":["webpack://prettyFormat/webpack/universalModuleDefinition","webpack://prettyFormat/webpack/bootstrap","webpack://prettyFormat/./node_modules/ansi-regex/index.js","webpack://prettyFormat/./node_modules/ansi-styles/index.js","webpack://prettyFormat/./node_modules/ansi-styles/node_modules/color-convert/conversions.js","webpack://prettyFormat/./node_modules/ansi-styles/node_modules/color-convert/index.js","webpack://prettyFormat/./node_modules/ansi-styles/node_modules/color-convert/route.js","webpack://prettyFormat/./node_modules/color-name/index.js","webpack://prettyFormat/./node_modules/react-is/cjs/react-is.development.js","webpack://prettyFormat/./node_modules/react-is/index.js","webpack://prettyFormat/(webpack)/buildin/module.js","webpack://prettyFormat/./packages/pretty-format/src/collections.ts","webpack://prettyFormat/./packages/pretty-format/src/index.ts","webpack://prettyFormat/./packages/pretty-format/src/plugins/AsymmetricMatcher.ts","webpack://prettyFormat/./packages/pretty-format/src/plugins/ConvertAnsi.ts","webpack://prettyFormat/./packages/pretty-format/src/plugins/DOMCollection.ts","webpack://prettyFormat/./packages/pretty-format/src/plugins/DOMElement.ts","webpack://prettyFormat/./packages/pretty-format/src/plugins/Immutable.ts","webpack://prettyFormat/./packages/pretty-format/src/plugins/ReactElement.ts","webpack://prettyFormat/./packages/pretty-format/src/plugins/ReactTestComponent.ts","webpack://prettyFormat/./packages/pretty-format/src/plugins/lib/escapeHTML.ts","webpack://prettyFormat/./packages/pretty-format/src/plugins/lib/markup.ts"],"names":["module","exports","onlyFirst","pattern","join","RegExp","undefined","wrapAnsi16","fn","offset","code","wrapAnsi256","wrapAnsi16m","rgb","ansi2ansi","n","rgb2rgb","r","g","b","setLazyProperty","object","property","get","Object","defineProperty","value","enumerable","configurable","colorConvert","makeDynamicStyles","wrap","targetSpace","identity","isBackground","require","styles","entries","sourceSpace","suite","name","assembleStyles","codes","Map","modifier","reset","bold","dim","italic","underline","inverse","hidden","strikethrough","color","black","red","green","yellow","blue","magenta","cyan","white","blackBright","redBright","greenBright","yellowBright","blueBright","magentaBright","cyanBright","whiteBright","bgColor","bgBlack","bgRed","bgGreen","bgYellow","bgBlue","bgMagenta","bgCyan","bgWhite","bgBlackBright","bgRedBright","bgGreenBright","bgYellowBright","bgBlueBright","bgMagentaBright","bgCyanBright","bgWhiteBright","gray","bgGray","grey","bgGrey","groupName","group","styleName","style","open","close","set","cssKeywords","reverseKeywords","keys","key","convert","channels","labels","hsl","hsv","hwb","cmyk","xyz","lab","lch","hex","keyword","ansi16","ansi256","hcg","apple","model","Error","length","min","Math","max","delta","h","s","l","rdif","gdif","bdif","v","diff","diffc","c","w","k","m","y","comparativeDistance","x","reversed","currentClosestDistance","Infinity","currentClosestKeyword","distance","z","a","t2","t3","val","t1","i","smin","lmin","sv","hi","floor","f","p","q","t","vmin","sl","wh","bl","ratio","y2","x2","z2","hr","atan2","PI","sqrt","cos","sin","args","saturation","round","ansi","mult","rem","integer","string","toString","toUpperCase","substring","match","colorString","split","map","char","parseInt","chroma","grayscale","hue","pure","mg","conversions","route","models","wrapRaw","wrappedFn","arg0","conversion","wrapRounded","result","len","forEach","fromModel","routes","routeModels","toModel","raw","buildGraph","graph","parent","deriveBFS","queue","current","pop","adjacents","adjacent","node","unshift","link","from","to","wrapConversion","path","cur","process","hasSymbol","Symbol","for","REACT_ELEMENT_TYPE","REACT_PORTAL_TYPE","REACT_FRAGMENT_TYPE","REACT_STRICT_MODE_TYPE","REACT_PROFILER_TYPE","REACT_PROVIDER_TYPE","REACT_CONTEXT_TYPE","REACT_ASYNC_MODE_TYPE","REACT_CONCURRENT_MODE_TYPE","REACT_FORWARD_REF_TYPE","REACT_SUSPENSE_TYPE","REACT_SUSPENSE_LIST_TYPE","REACT_MEMO_TYPE","REACT_LAZY_TYPE","REACT_BLOCK_TYPE","REACT_FUNDAMENTAL_TYPE","REACT_RESPONDER_TYPE","REACT_SCOPE_TYPE","isValidElementType","type","$$typeof","typeOf","$$typeofType","AsyncMode","ConcurrentMode","ContextConsumer","ContextProvider","Element","ForwardRef","Fragment","Lazy","Memo","Portal","Profiler","StrictMode","Suspense","hasWarnedAboutDeprecatedIsAsyncMode","isAsyncMode","console","isConcurrentMode","isContextConsumer","isContextProvider","isElement","isForwardRef","isFragment","isLazy","isMemo","isPortal","isProfiler","isStrictMode","isSuspense","webpackPolyfill","deprecate","paths","children","getKeysOfEnumerableProperties","sort","getOwnPropertySymbols","symbol","getOwnPropertyDescriptor","push","printIteratorEntries","iterator","config","indentation","depth","refs","printer","separator","next","done","spacingOuter","indentationNext","indent","spacingInner","printIteratorValues","printListItems","list","printObjectProperties","prototype","toISOString","Date","errorToString","regExpToString","getConstructorName","constructor","isWindow","window","SYMBOL_REGEXP","NEWLINE_REGEXP","PrettyFormatPluginError","message","stack","isToStringedArrayType","toStringed","printNumber","is","String","printBigInt","printFunction","printFunctionName","printSymbol","replace","printError","call","printBasicValue","escapeRegex","escapeString","isNaN","printComplexValue","hasCalledToJSON","indexOf","slice","hitMaxDepth","maxDepth","callToJSON","toJSON","values","isNewPlugin","plugin","serialize","printPlugin","printed","print","valChild","str","edgeSpacing","spacing","colors","error","findPlugin","plugins","test","basicResult","DEFAULT_THEME","comment","content","prop","tag","DEFAULT_THEME_KEYS","DEFAULT_OPTIONS","highlight","theme","validateOptions","options","hasOwnProperty","getColorsHighlight","reduce","create","getColorsEmpty","getPrintFunctionName","getEscapeRegex","getEscapeString","getConfig","createIndent","Array","prettyFormat","AsymmetricMatcher","ConvertAnsi","DOMCollection","DOMElement","Immutable","ReactElement","ReactTestComponent","asymmetricMatcher","SPACE","stringedValue","sample","toAsymmetricMatcher","toHumanReadableAnsi","text","OBJECT_NAMES","ARRAY_REGEXP","testName","isNamedNodeMap","collection","props","attribute","ELEMENT_NODE","TEXT_NODE","COMMENT_NODE","FRAGMENT_NODE","ELEMENT_REGEXP","testNode","nodeType","nodeIsText","nodeIsComment","nodeIsFragment","data","tagName","toLowerCase","attributes","attr","childNodes","IS_ITERABLE_SENTINEL","IS_LIST_SENTINEL","IS_KEYED_SENTINEL","IS_MAP_SENTINEL","IS_ORDERED_SENTINEL","IS_RECORD_SENTINEL","IS_SEQ_SENTINEL","IS_SET_SENTINEL","IS_STACK_SENTINEL","getImmutableName","printAsLeaf","LAZY","printImmutableEntries","getRecordEntries","_keys","printImmutableRecord","_name","printImmutableSeq","_iter","_object","_array","_collection","_iterable","printImmutableValues","getChildren","arg","isArray","item","getType","element","displayName","ReactIs","functionName","render","getPropKeys","filter","testSymbol","escapeHTML","printProps","printChildren","child","printText","contentColor","printComment","commentColor","printElement","printedProps","printedChildren","tagColor","printElementAsLeaf"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD,O;QCVA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;;;QAGA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA,0CAA0C,gCAAgC;QAC1E;QACA;;QAEA;QACA;QACA;QACA,wDAAwD,kBAAkB;QAC1E;QACA,iDAAiD,cAAc;QAC/D;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA,yCAAyC,iCAAiC;QAC1E,gHAAgH,mBAAmB,EAAE;QACrI;QACA;;QAEA;QACA;QACA;QACA,2BAA2B,0BAA0B,EAAE;QACvD,iCAAiC,eAAe;QAChD;QACA;QACA;;QAEA;QACA,sDAAsD,+DAA+D;;QAErH;QACA;;;QAGA;QACA;;;;;;;;;;;;;AClFa;;AAEbA,MAAM,CAACC,OAAP,GAAiB,YAA8B;AAAA,iFAAP,EAAO;AAAA,4BAA5BC,SAA4B;AAAA,MAA5BA,SAA4B,+BAAhB,KAAgB;;AAC9C,MAAMC,OAAO,GAAG,CACf,6FADe,EAEf,0DAFe,EAGdC,IAHc,CAGT,GAHS,CAAhB;AAKA,SAAO,IAAIC,MAAJ,CAAWF,OAAX,EAAoBD,SAAS,GAAGI,SAAH,GAAe,GAA5C,CAAP;AACA,CAPD,C;;;;;;;;;;;;ACFA,8CAAa;;;;;;;;;;;;;;;;AAEb,IAAMC,UAAU,GAAG,SAAbA,UAAa,CAACC,EAAD,EAAKC,MAAL;AAAA,SAAgB,YAAa;AAC/C,QAAMC,IAAI,GAAGF,EAAE,MAAF,mBAAb;AACA,0BAAiBE,IAAI,GAAGD,MAAxB;AACA,GAHkB;AAAA,CAAnB;;AAKA,IAAME,WAAW,GAAG,SAAdA,WAAc,CAACH,EAAD,EAAKC,MAAL;AAAA,SAAgB,YAAa;AAChD,QAAMC,IAAI,GAAGF,EAAE,MAAF,mBAAb;AACA,0BAAiB,KAAKC,MAAtB,gBAAkCC,IAAlC;AACA,GAHmB;AAAA,CAApB;;AAKA,IAAME,WAAW,GAAG,SAAdA,WAAc,CAACJ,EAAD,EAAKC,MAAL;AAAA,SAAgB,YAAa;AAChD,QAAMI,GAAG,GAAGL,EAAE,MAAF,mBAAZ;AACA,0BAAiB,KAAKC,MAAtB,gBAAkCI,GAAG,CAAC,CAAD,CAArC,cAA4CA,GAAG,CAAC,CAAD,CAA/C,cAAsDA,GAAG,CAAC,CAAD,CAAzD;AACA,GAHmB;AAAA,CAApB;;AAKA,IAAMC,SAAS,GAAG,SAAZA,SAAY,CAAAC,CAAC;AAAA,SAAIA,CAAJ;AAAA,CAAnB;;AACA,IAAMC,OAAO,GAAG,SAAVA,OAAU,CAACC,CAAD,EAAIC,CAAJ,EAAOC,CAAP;AAAA,SAAa,CAACF,CAAD,EAAIC,CAAJ,EAAOC,CAAP,CAAb;AAAA,CAAhB;;AAEA,IAAMC,eAAe,GAAG,SAAlBA,eAAkB,CAACC,MAAD,EAASC,QAAT,EAAmBC,IAAnB,EAA2B;AAClDC,QAAM,CAACC,cAAP,CAAsBJ,MAAtB,EAA8BC,QAA9B,EAAwC;AACvCC,OAAG,EAAE,eAAM;AACV,UAAMG,KAAK,GAAGH,IAAG,EAAjB;;AAEAC,YAAM,CAACC,cAAP,CAAsBJ,MAAtB,EAA8BC,QAA9B,EAAwC;AACvCI,aAAK,EAALA,KADuC;AAEvCC,kBAAU,EAAE,IAF2B;AAGvCC,oBAAY,EAAE;AAHyB,OAAxC;AAMA,aAAOF,KAAP;AACA,KAXsC;AAYvCC,cAAU,EAAE,IAZ2B;AAavCC,gBAAY,EAAE;AAbyB,GAAxC;AAeA,CAhBD;AAkBA;;;AACA,IAAIC,YAAJ;;AACA,IAAMC,iBAAiB,GAAG,SAApBA,iBAAoB,CAACC,IAAD,EAAOC,WAAP,EAAoBC,QAApB,EAA8BC,YAA9B,EAA+C;AACxE,MAAIL,YAAY,KAAKvB,SAArB,EAAgC;AAC/BuB,gBAAY,GAAGM,mBAAO,CAAC,qFAAD,CAAtB;AACA;;AAED,MAAM1B,MAAM,GAAGyB,YAAY,GAAG,EAAH,GAAQ,CAAnC;AACA,MAAME,MAAM,GAAG,EAAf;;AAEA,qCAAmCZ,MAAM,CAACa,OAAP,CAAeR,YAAf,CAAnC,qCAAiE;AAAA;AAAA,QAArDS,WAAqD;AAAA,QAAxCC,KAAwC;;AAChE,QAAMC,IAAI,GAAGF,WAAW,KAAK,QAAhB,GAA2B,MAA3B,GAAoCA,WAAjD;;AACA,QAAIA,WAAW,KAAKN,WAApB,EAAiC;AAChCI,YAAM,CAACI,IAAD,CAAN,GAAeT,IAAI,CAACE,QAAD,EAAWxB,MAAX,CAAnB;AACA,KAFD,MAEO,IAAI,QAAO8B,KAAP,MAAiB,QAArB,EAA+B;AACrCH,YAAM,CAACI,IAAD,CAAN,GAAeT,IAAI,CAACQ,KAAK,CAACP,WAAD,CAAN,EAAqBvB,MAArB,CAAnB;AACA;AACD;;AAED,SAAO2B,MAAP;AACA,CAlBD;;AAoBA,SAASK,cAAT,GAA0B;AACzB,MAAMC,KAAK,GAAG,IAAIC,GAAJ,EAAd;AACA,MAAMP,MAAM,GAAG;AACdQ,YAAQ,EAAE;AACTC,WAAK,EAAE,CAAC,CAAD,EAAI,CAAJ,CADE;AAET;AACAC,UAAI,EAAE,CAAC,CAAD,EAAI,EAAJ,CAHG;AAITC,SAAG,EAAE,CAAC,CAAD,EAAI,EAAJ,CAJI;AAKTC,YAAM,EAAE,CAAC,CAAD,EAAI,EAAJ,CALC;AAMTC,eAAS,EAAE,CAAC,CAAD,EAAI,EAAJ,CANF;AAOTC,aAAO,EAAE,CAAC,CAAD,EAAI,EAAJ,CAPA;AAQTC,YAAM,EAAE,CAAC,CAAD,EAAI,EAAJ,CARC;AASTC,mBAAa,EAAE,CAAC,CAAD,EAAI,EAAJ;AATN,KADI;AAYdC,SAAK,EAAE;AACNC,WAAK,EAAE,CAAC,EAAD,EAAK,EAAL,CADD;AAENC,SAAG,EAAE,CAAC,EAAD,EAAK,EAAL,CAFC;AAGNC,WAAK,EAAE,CAAC,EAAD,EAAK,EAAL,CAHD;AAINC,YAAM,EAAE,CAAC,EAAD,EAAK,EAAL,CAJF;AAKNC,UAAI,EAAE,CAAC,EAAD,EAAK,EAAL,CALA;AAMNC,aAAO,EAAE,CAAC,EAAD,EAAK,EAAL,CANH;AAONC,UAAI,EAAE,CAAC,EAAD,EAAK,EAAL,CAPA;AAQNC,WAAK,EAAE,CAAC,EAAD,EAAK,EAAL,CARD;AAUN;AACAC,iBAAW,EAAE,CAAC,EAAD,EAAK,EAAL,CAXP;AAYNC,eAAS,EAAE,CAAC,EAAD,EAAK,EAAL,CAZL;AAaNC,iBAAW,EAAE,CAAC,EAAD,EAAK,EAAL,CAbP;AAcNC,kBAAY,EAAE,CAAC,EAAD,EAAK,EAAL,CAdR;AAeNC,gBAAU,EAAE,CAAC,EAAD,EAAK,EAAL,CAfN;AAgBNC,mBAAa,EAAE,CAAC,EAAD,EAAK,EAAL,CAhBT;AAiBNC,gBAAU,EAAE,CAAC,EAAD,EAAK,EAAL,CAjBN;AAkBNC,iBAAW,EAAE,CAAC,EAAD,EAAK,EAAL;AAlBP,KAZO;AAgCdC,WAAO,EAAE;AACRC,aAAO,EAAE,CAAC,EAAD,EAAK,EAAL,CADD;AAERC,WAAK,EAAE,CAAC,EAAD,EAAK,EAAL,CAFC;AAGRC,aAAO,EAAE,CAAC,EAAD,EAAK,EAAL,CAHD;AAIRC,cAAQ,EAAE,CAAC,EAAD,EAAK,EAAL,CAJF;AAKRC,YAAM,EAAE,CAAC,EAAD,EAAK,EAAL,CALA;AAMRC,eAAS,EAAE,CAAC,EAAD,EAAK,EAAL,CANH;AAORC,YAAM,EAAE,CAAC,EAAD,EAAK,EAAL,CAPA;AAQRC,aAAO,EAAE,CAAC,EAAD,EAAK,EAAL,CARD;AAUR;AACAC,mBAAa,EAAE,CAAC,GAAD,EAAM,EAAN,CAXP;AAYRC,iBAAW,EAAE,CAAC,GAAD,EAAM,EAAN,CAZL;AAaRC,mBAAa,EAAE,CAAC,GAAD,EAAM,EAAN,CAbP;AAcRC,oBAAc,EAAE,CAAC,GAAD,EAAM,EAAN,CAdR;AAeRC,kBAAY,EAAE,CAAC,GAAD,EAAM,EAAN,CAfN;AAgBRC,qBAAe,EAAE,CAAC,GAAD,EAAM,EAAN,CAhBT;AAiBRC,kBAAY,EAAE,CAAC,GAAD,EAAM,EAAN,CAjBN;AAkBRC,mBAAa,EAAE,CAAC,GAAD,EAAM,EAAN;AAlBP;AAhCK,GAAf,CAFyB,CAwDzB;;AACAlD,QAAM,CAACiB,KAAP,CAAakC,IAAb,GAAoBnD,MAAM,CAACiB,KAAP,CAAaS,WAAjC;AACA1B,QAAM,CAACkC,OAAP,CAAekB,MAAf,GAAwBpD,MAAM,CAACkC,OAAP,CAAeS,aAAvC;AACA3C,QAAM,CAACiB,KAAP,CAAaoC,IAAb,GAAoBrD,MAAM,CAACiB,KAAP,CAAaS,WAAjC;AACA1B,QAAM,CAACkC,OAAP,CAAeoB,MAAf,GAAwBtD,MAAM,CAACkC,OAAP,CAAeS,aAAvC;;AAEA,uCAAiCvD,MAAM,CAACa,OAAP,CAAeD,MAAf,CAAjC,wCAAyD;AAAA;AAAA,QAA7CuD,SAA6C;AAAA,QAAlCC,KAAkC;;AACxD,yCAAiCpE,MAAM,CAACa,OAAP,CAAeuD,KAAf,CAAjC,wCAAwD;AAAA;AAAA,UAA5CC,SAA4C;AAAA,UAAjCC,KAAiC;;AACvD1D,YAAM,CAACyD,SAAD,CAAN,GAAoB;AACnBE,YAAI,iBAAYD,KAAK,CAAC,CAAD,CAAjB,MADe;AAEnBE,aAAK,iBAAYF,KAAK,CAAC,CAAD,CAAjB;AAFc,OAApB;AAKAF,WAAK,CAACC,SAAD,CAAL,GAAmBzD,MAAM,CAACyD,SAAD,CAAzB;AAEAnD,WAAK,CAACuD,GAAN,CAAUH,KAAK,CAAC,CAAD,CAAf,EAAoBA,KAAK,CAAC,CAAD,CAAzB;AACA;;AAEDtE,UAAM,CAACC,cAAP,CAAsBW,MAAtB,EAA8BuD,SAA9B,EAAyC;AACxCjE,WAAK,EAAEkE,KADiC;AAExCjE,gBAAU,EAAE;AAF4B,KAAzC;AAIA;;AAEDH,QAAM,CAACC,cAAP,CAAsBW,MAAtB,EAA8B,OAA9B,EAAuC;AACtCV,SAAK,EAAEgB,KAD+B;AAEtCf,cAAU,EAAE;AAF0B,GAAvC;AAKAS,QAAM,CAACiB,KAAP,CAAa2C,KAAb,GAAqB,UAArB;AACA5D,QAAM,CAACkC,OAAP,CAAe0B,KAAf,GAAuB,UAAvB;AAEA5E,iBAAe,CAACgB,MAAM,CAACiB,KAAR,EAAe,MAAf,EAAuB;AAAA,WAAMvB,iBAAiB,CAACvB,UAAD,EAAa,QAAb,EAAuBO,SAAvB,EAAkC,KAAlC,CAAvB;AAAA,GAAvB,CAAf;AACAM,iBAAe,CAACgB,MAAM,CAACiB,KAAR,EAAe,SAAf,EAA0B;AAAA,WAAMvB,iBAAiB,CAACnB,WAAD,EAAc,SAAd,EAAyBG,SAAzB,EAAoC,KAApC,CAAvB;AAAA,GAA1B,CAAf;AACAM,iBAAe,CAACgB,MAAM,CAACiB,KAAR,EAAe,SAAf,EAA0B;AAAA,WAAMvB,iBAAiB,CAAClB,WAAD,EAAc,KAAd,EAAqBI,OAArB,EAA8B,KAA9B,CAAvB;AAAA,GAA1B,CAAf;AACAI,iBAAe,CAACgB,MAAM,CAACkC,OAAR,EAAiB,MAAjB,EAAyB;AAAA,WAAMxC,iBAAiB,CAACvB,UAAD,EAAa,QAAb,EAAuBO,SAAvB,EAAkC,IAAlC,CAAvB;AAAA,GAAzB,CAAf;AACAM,iBAAe,CAACgB,MAAM,CAACkC,OAAR,EAAiB,SAAjB,EAA4B;AAAA,WAAMxC,iBAAiB,CAACnB,WAAD,EAAc,SAAd,EAAyBG,SAAzB,EAAoC,IAApC,CAAvB;AAAA,GAA5B,CAAf;AACAM,iBAAe,CAACgB,MAAM,CAACkC,OAAR,EAAiB,SAAjB,EAA4B;AAAA,WAAMxC,iBAAiB,CAAClB,WAAD,EAAc,KAAd,EAAqBI,OAArB,EAA8B,IAA9B,CAAvB;AAAA,GAA5B,CAAf;AAEA,SAAOoB,MAAP;AACA,C,CAED;;;AACAZ,MAAM,CAACC,cAAP,CAAsBzB,MAAtB,EAA8B,SAA9B,EAAyC;AACxC2B,YAAU,EAAE,IAD4B;AAExCJ,KAAG,EAAEkB;AAFmC,CAAzC,E;;;;;;;;;;;;;;;;;;;;;;;;;;;AC/JA;;AACA;AACA,IAAMyD,WAAW,GAAG/D,mBAAO,CAAC,sDAAD,CAA3B,C,CAEA;AACA;AACA;;;AAEA,IAAMgE,eAAe,GAAG,EAAxB;;AACA,gCAAkB3E,MAAM,CAAC4E,IAAP,CAAYF,WAAZ,CAAlB,kCAA4C;AAAvC,MAAMG,GAAG,mBAAT;AACJF,iBAAe,CAACD,WAAW,CAACG,GAAD,CAAZ,CAAf,GAAoCA,GAApC;AACA;;AAED,IAAMC,OAAO,GAAG;AACfzF,KAAG,EAAE;AAAC0F,YAAQ,EAAE,CAAX;AAAcC,UAAM,EAAE;AAAtB,GADU;AAEfC,KAAG,EAAE;AAACF,YAAQ,EAAE,CAAX;AAAcC,UAAM,EAAE;AAAtB,GAFU;AAGfE,KAAG,EAAE;AAACH,YAAQ,EAAE,CAAX;AAAcC,UAAM,EAAE;AAAtB,GAHU;AAIfG,KAAG,EAAE;AAACJ,YAAQ,EAAE,CAAX;AAAcC,UAAM,EAAE;AAAtB,GAJU;AAKfI,MAAI,EAAE;AAACL,YAAQ,EAAE,CAAX;AAAcC,UAAM,EAAE;AAAtB,GALS;AAMfK,KAAG,EAAE;AAACN,YAAQ,EAAE,CAAX;AAAcC,UAAM,EAAE;AAAtB,GANU;AAOfM,KAAG,EAAE;AAACP,YAAQ,EAAE,CAAX;AAAcC,UAAM,EAAE;AAAtB,GAPU;AAQfO,KAAG,EAAE;AAACR,YAAQ,EAAE,CAAX;AAAcC,UAAM,EAAE;AAAtB,GARU;AASfQ,KAAG,EAAE;AAACT,YAAQ,EAAE,CAAX;AAAcC,UAAM,EAAE,CAAC,KAAD;AAAtB,GATU;AAUfS,SAAO,EAAE;AAACV,YAAQ,EAAE,CAAX;AAAcC,UAAM,EAAE,CAAC,SAAD;AAAtB,GAVM;AAWfU,QAAM,EAAE;AAACX,YAAQ,EAAE,CAAX;AAAcC,UAAM,EAAE,CAAC,QAAD;AAAtB,GAXO;AAYfW,SAAO,EAAE;AAACZ,YAAQ,EAAE,CAAX;AAAcC,UAAM,EAAE,CAAC,SAAD;AAAtB,GAZM;AAafY,KAAG,EAAE;AAACb,YAAQ,EAAE,CAAX;AAAcC,UAAM,EAAE,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX;AAAtB,GAbU;AAcfa,OAAK,EAAE;AAACd,YAAQ,EAAE,CAAX;AAAcC,UAAM,EAAE,CAAC,KAAD,EAAQ,KAAR,EAAe,KAAf;AAAtB,GAdQ;AAefjB,MAAI,EAAE;AAACgB,YAAQ,EAAE,CAAX;AAAcC,UAAM,EAAE,CAAC,MAAD;AAAtB;AAfS,CAAhB;AAkBAxG,MAAM,CAACC,OAAP,GAAiBqG,OAAjB,C,CAEA;;AACA,kCAAoB9E,MAAM,CAAC4E,IAAP,CAAYE,OAAZ,CAApB,qCAA0C;AAArC,MAAMgB,KAAK,qBAAX;;AACJ,MAAI,EAAE,cAAchB,OAAO,CAACgB,KAAD,CAAvB,CAAJ,EAAqC;AACpC,UAAM,IAAIC,KAAJ,CAAU,gCAAgCD,KAA1C,CAAN;AACA;;AAED,MAAI,EAAE,YAAYhB,OAAO,CAACgB,KAAD,CAArB,CAAJ,EAAmC;AAClC,UAAM,IAAIC,KAAJ,CAAU,sCAAsCD,KAAhD,CAAN;AACA;;AAED,MAAIhB,OAAO,CAACgB,KAAD,CAAP,CAAed,MAAf,CAAsBgB,MAAtB,KAAiClB,OAAO,CAACgB,KAAD,CAAP,CAAef,QAApD,EAA8D;AAC7D,UAAM,IAAIgB,KAAJ,CAAU,wCAAwCD,KAAlD,CAAN;AACA;;AAXwC,uBAadhB,OAAO,CAACgB,KAAD,CAbO;AAAA,MAalCf,QAbkC,kBAalCA,QAbkC;AAAA,MAaxBC,MAbwB,kBAaxBA,MAbwB;AAczC,SAAOF,OAAO,CAACgB,KAAD,CAAP,CAAef,QAAtB;AACA,SAAOD,OAAO,CAACgB,KAAD,CAAP,CAAed,MAAtB;AACAhF,QAAM,CAACC,cAAP,CAAsB6E,OAAO,CAACgB,KAAD,CAA7B,EAAsC,UAAtC,EAAkD;AAAC5F,SAAK,EAAE6E;AAAR,GAAlD;AACA/E,QAAM,CAACC,cAAP,CAAsB6E,OAAO,CAACgB,KAAD,CAA7B,EAAsC,QAAtC,EAAgD;AAAC5F,SAAK,EAAE8E;AAAR,GAAhD;AACA;;AAEDF,OAAO,CAACzF,GAAR,CAAY4F,GAAZ,GAAkB,UAAU5F,GAAV,EAAe;AAChC,MAAMI,CAAC,GAAGJ,GAAG,CAAC,CAAD,CAAH,GAAS,GAAnB;AACA,MAAMK,CAAC,GAAGL,GAAG,CAAC,CAAD,CAAH,GAAS,GAAnB;AACA,MAAMM,CAAC,GAAGN,GAAG,CAAC,CAAD,CAAH,GAAS,GAAnB;AACA,MAAM4G,GAAG,GAAGC,IAAI,CAACD,GAAL,CAASxG,CAAT,EAAYC,CAAZ,EAAeC,CAAf,CAAZ;AACA,MAAMwG,GAAG,GAAGD,IAAI,CAACC,GAAL,CAAS1G,CAAT,EAAYC,CAAZ,EAAeC,CAAf,CAAZ;AACA,MAAMyG,KAAK,GAAGD,GAAG,GAAGF,GAApB;AACA,MAAII,CAAJ;AACA,MAAIC,CAAJ;;AAEA,MAAIH,GAAG,KAAKF,GAAZ,EAAiB;AAChBI,KAAC,GAAG,CAAJ;AACA,GAFD,MAEO,IAAI5G,CAAC,KAAK0G,GAAV,EAAe;AACrBE,KAAC,GAAG,CAAC3G,CAAC,GAAGC,CAAL,IAAUyG,KAAd;AACA,GAFM,MAEA,IAAI1G,CAAC,KAAKyG,GAAV,EAAe;AACrBE,KAAC,GAAG,IAAI,CAAC1G,CAAC,GAAGF,CAAL,IAAU2G,KAAlB;AACA,GAFM,MAEA,IAAIzG,CAAC,KAAKwG,GAAV,EAAe;AACrBE,KAAC,GAAG,IAAI,CAAC5G,CAAC,GAAGC,CAAL,IAAU0G,KAAlB;AACA;;AAEDC,GAAC,GAAGH,IAAI,CAACD,GAAL,CAASI,CAAC,GAAG,EAAb,EAAiB,GAAjB,CAAJ;;AAEA,MAAIA,CAAC,GAAG,CAAR,EAAW;AACVA,KAAC,IAAI,GAAL;AACA;;AAED,MAAME,CAAC,GAAG,CAACN,GAAG,GAAGE,GAAP,IAAc,CAAxB;;AAEA,MAAIA,GAAG,KAAKF,GAAZ,EAAiB;AAChBK,KAAC,GAAG,CAAJ;AACA,GAFD,MAEO,IAAIC,CAAC,IAAI,GAAT,EAAc;AACpBD,KAAC,GAAGF,KAAK,IAAID,GAAG,GAAGF,GAAV,CAAT;AACA,GAFM,MAEA;AACNK,KAAC,GAAGF,KAAK,IAAI,IAAID,GAAJ,GAAUF,GAAd,CAAT;AACA;;AAED,SAAO,CAACI,CAAD,EAAIC,CAAC,GAAG,GAAR,EAAaC,CAAC,GAAG,GAAjB,CAAP;AACA,CArCD;;AAuCAzB,OAAO,CAACzF,GAAR,CAAY6F,GAAZ,GAAkB,UAAU7F,GAAV,EAAe;AAChC,MAAImH,IAAJ;AACA,MAAIC,IAAJ;AACA,MAAIC,IAAJ;AACA,MAAIL,CAAJ;AACA,MAAIC,CAAJ;AAEA,MAAM7G,CAAC,GAAGJ,GAAG,CAAC,CAAD,CAAH,GAAS,GAAnB;AACA,MAAMK,CAAC,GAAGL,GAAG,CAAC,CAAD,CAAH,GAAS,GAAnB;AACA,MAAMM,CAAC,GAAGN,GAAG,CAAC,CAAD,CAAH,GAAS,GAAnB;AACA,MAAMsH,CAAC,GAAGT,IAAI,CAACC,GAAL,CAAS1G,CAAT,EAAYC,CAAZ,EAAeC,CAAf,CAAV;AACA,MAAMiH,IAAI,GAAGD,CAAC,GAAGT,IAAI,CAACD,GAAL,CAASxG,CAAT,EAAYC,CAAZ,EAAeC,CAAf,CAAjB;;AACA,MAAMkH,KAAK,GAAG,SAARA,KAAQ,CAAUC,CAAV,EAAa;AAC1B,WAAO,CAACH,CAAC,GAAGG,CAAL,IAAU,CAAV,GAAcF,IAAd,GAAqB,IAAI,CAAhC;AACA,GAFD;;AAIA,MAAIA,IAAI,KAAK,CAAb,EAAgB;AACfP,KAAC,GAAG,CAAJ;AACAC,KAAC,GAAG,CAAJ;AACA,GAHD,MAGO;AACNA,KAAC,GAAGM,IAAI,GAAGD,CAAX;AACAH,QAAI,GAAGK,KAAK,CAACpH,CAAD,CAAZ;AACAgH,QAAI,GAAGI,KAAK,CAACnH,CAAD,CAAZ;AACAgH,QAAI,GAAGG,KAAK,CAAClH,CAAD,CAAZ;;AAEA,QAAIF,CAAC,KAAKkH,CAAV,EAAa;AACZN,OAAC,GAAGK,IAAI,GAAGD,IAAX;AACA,KAFD,MAEO,IAAI/G,CAAC,KAAKiH,CAAV,EAAa;AACnBN,OAAC,GAAI,IAAI,CAAL,GAAUG,IAAV,GAAiBE,IAArB;AACA,KAFM,MAEA,IAAI/G,CAAC,KAAKgH,CAAV,EAAa;AACnBN,OAAC,GAAI,IAAI,CAAL,GAAUI,IAAV,GAAiBD,IAArB;AACA;;AAED,QAAIH,CAAC,GAAG,CAAR,EAAW;AACVA,OAAC,IAAI,CAAL;AACA,KAFD,MAEO,IAAIA,CAAC,GAAG,CAAR,EAAW;AACjBA,OAAC,IAAI,CAAL;AACA;AACD;;AAED,SAAO,CACNA,CAAC,GAAG,GADE,EAENC,CAAC,GAAG,GAFE,EAGNK,CAAC,GAAG,GAHE,CAAP;AAKA,CA7CD;;AA+CA7B,OAAO,CAACzF,GAAR,CAAY8F,GAAZ,GAAkB,UAAU9F,GAAV,EAAe;AAChC,MAAMI,CAAC,GAAGJ,GAAG,CAAC,CAAD,CAAb;AACA,MAAMK,CAAC,GAAGL,GAAG,CAAC,CAAD,CAAb;AACA,MAAIM,CAAC,GAAGN,GAAG,CAAC,CAAD,CAAX;AACA,MAAMgH,CAAC,GAAGvB,OAAO,CAACzF,GAAR,CAAY4F,GAAZ,CAAgB5F,GAAhB,EAAqB,CAArB,CAAV;AACA,MAAM0H,CAAC,GAAG,IAAI,GAAJ,GAAUb,IAAI,CAACD,GAAL,CAASxG,CAAT,EAAYyG,IAAI,CAACD,GAAL,CAASvG,CAAT,EAAYC,CAAZ,CAAZ,CAApB;AAEAA,GAAC,GAAG,IAAI,IAAI,GAAJ,GAAUuG,IAAI,CAACC,GAAL,CAAS1G,CAAT,EAAYyG,IAAI,CAACC,GAAL,CAASzG,CAAT,EAAYC,CAAZ,CAAZ,CAAlB;AAEA,SAAO,CAAC0G,CAAD,EAAIU,CAAC,GAAG,GAAR,EAAapH,CAAC,GAAG,GAAjB,CAAP;AACA,CAVD;;AAYAmF,OAAO,CAACzF,GAAR,CAAY+F,IAAZ,GAAmB,UAAU/F,GAAV,EAAe;AACjC,MAAMI,CAAC,GAAGJ,GAAG,CAAC,CAAD,CAAH,GAAS,GAAnB;AACA,MAAMK,CAAC,GAAGL,GAAG,CAAC,CAAD,CAAH,GAAS,GAAnB;AACA,MAAMM,CAAC,GAAGN,GAAG,CAAC,CAAD,CAAH,GAAS,GAAnB;AAEA,MAAM2H,CAAC,GAAGd,IAAI,CAACD,GAAL,CAAS,IAAIxG,CAAb,EAAgB,IAAIC,CAApB,EAAuB,IAAIC,CAA3B,CAAV;AACA,MAAMmH,CAAC,GAAG,CAAC,IAAIrH,CAAJ,GAAQuH,CAAT,KAAe,IAAIA,CAAnB,KAAyB,CAAnC;AACA,MAAMC,CAAC,GAAG,CAAC,IAAIvH,CAAJ,GAAQsH,CAAT,KAAe,IAAIA,CAAnB,KAAyB,CAAnC;AACA,MAAME,CAAC,GAAG,CAAC,IAAIvH,CAAJ,GAAQqH,CAAT,KAAe,IAAIA,CAAnB,KAAyB,CAAnC;AAEA,SAAO,CAACF,CAAC,GAAG,GAAL,EAAUG,CAAC,GAAG,GAAd,EAAmBC,CAAC,GAAG,GAAvB,EAA4BF,CAAC,GAAG,GAAhC,CAAP;AACA,CAXD;;AAaA,SAASG,mBAAT,CAA6BC,CAA7B,EAAgCF,CAAhC,EAAmC;AAClC;;;AAGA,SACC,SAAEE,CAAC,CAAC,CAAD,CAAD,GAAOF,CAAC,CAAC,CAAD,CAAV,EAAkB,CAAlB,aACEE,CAAC,CAAC,CAAD,CAAD,GAAOF,CAAC,CAAC,CAAD,CADV,EACkB,CADlB,aAEEE,CAAC,CAAC,CAAD,CAAD,GAAOF,CAAC,CAAC,CAAD,CAFV,EAEkB,CAFlB,CADD;AAKA;;AAEDpC,OAAO,CAACzF,GAAR,CAAYoG,OAAZ,GAAsB,UAAUpG,GAAV,EAAe;AACpC,MAAMgI,QAAQ,GAAG1C,eAAe,CAACtF,GAAD,CAAhC;;AACA,MAAIgI,QAAJ,EAAc;AACb,WAAOA,QAAP;AACA;;AAED,MAAIC,sBAAsB,GAAGC,QAA7B;AACA,MAAIC,qBAAJ;;AAEA,oCAAsBxH,MAAM,CAAC4E,IAAP,CAAYF,WAAZ,CAAtB,qCAAgD;AAA3C,QAAMe,OAAO,qBAAb;AACJ,QAAMvF,KAAK,GAAGwE,WAAW,CAACe,OAAD,CAAzB,CAD+C,CAG/C;;AACA,QAAMgC,QAAQ,GAAGN,mBAAmB,CAAC9H,GAAD,EAAMa,KAAN,CAApC,CAJ+C,CAM/C;;AACA,QAAIuH,QAAQ,GAAGH,sBAAf,EAAuC;AACtCA,4BAAsB,GAAGG,QAAzB;AACAD,2BAAqB,GAAG/B,OAAxB;AACA;AACD;;AAED,SAAO+B,qBAAP;AACA,CAvBD;;AAyBA1C,OAAO,CAACW,OAAR,CAAgBpG,GAAhB,GAAsB,UAAUoG,OAAV,EAAmB;AACxC,SAAOf,WAAW,CAACe,OAAD,CAAlB;AACA,CAFD;;AAIAX,OAAO,CAACzF,GAAR,CAAYgG,GAAZ,GAAkB,UAAUhG,GAAV,EAAe;AAChC,MAAII,CAAC,GAAGJ,GAAG,CAAC,CAAD,CAAH,GAAS,GAAjB;AACA,MAAIK,CAAC,GAAGL,GAAG,CAAC,CAAD,CAAH,GAAS,GAAjB;AACA,MAAIM,CAAC,GAAGN,GAAG,CAAC,CAAD,CAAH,GAAS,GAAjB,CAHgC,CAKhC;;AACAI,GAAC,GAAGA,CAAC,GAAG,OAAJ,YAAgB,CAACA,CAAC,GAAG,KAAL,IAAc,KAA9B,EAAwC,GAAxC,IAAgDA,CAAC,GAAG,KAAxD;AACAC,GAAC,GAAGA,CAAC,GAAG,OAAJ,YAAgB,CAACA,CAAC,GAAG,KAAL,IAAc,KAA9B,EAAwC,GAAxC,IAAgDA,CAAC,GAAG,KAAxD;AACAC,GAAC,GAAGA,CAAC,GAAG,OAAJ,YAAgB,CAACA,CAAC,GAAG,KAAL,IAAc,KAA9B,EAAwC,GAAxC,IAAgDA,CAAC,GAAG,KAAxD;AAEA,MAAMyH,CAAC,GAAI3H,CAAC,GAAG,MAAL,GAAgBC,CAAC,GAAG,MAApB,GAA+BC,CAAC,GAAG,MAA7C;AACA,MAAMuH,CAAC,GAAIzH,CAAC,GAAG,MAAL,GAAgBC,CAAC,GAAG,MAApB,GAA+BC,CAAC,GAAG,MAA7C;AACA,MAAM+H,CAAC,GAAIjI,CAAC,GAAG,MAAL,GAAgBC,CAAC,GAAG,MAApB,GAA+BC,CAAC,GAAG,MAA7C;AAEA,SAAO,CAACyH,CAAC,GAAG,GAAL,EAAUF,CAAC,GAAG,GAAd,EAAmBQ,CAAC,GAAG,GAAvB,CAAP;AACA,CAfD;;AAiBA5C,OAAO,CAACzF,GAAR,CAAYiG,GAAZ,GAAkB,UAAUjG,GAAV,EAAe;AAChC,MAAMgG,GAAG,GAAGP,OAAO,CAACzF,GAAR,CAAYgG,GAAZ,CAAgBhG,GAAhB,CAAZ;AACA,MAAI+H,CAAC,GAAG/B,GAAG,CAAC,CAAD,CAAX;AACA,MAAI6B,CAAC,GAAG7B,GAAG,CAAC,CAAD,CAAX;AACA,MAAIqC,CAAC,GAAGrC,GAAG,CAAC,CAAD,CAAX;AAEA+B,GAAC,IAAI,MAAL;AACAF,GAAC,IAAI,GAAL;AACAQ,GAAC,IAAI,OAAL;AAEAN,GAAC,GAAGA,CAAC,GAAG,QAAJ,YAAgBA,CAAhB,EAAsB,IAAI,CAA1B,IAAiC,QAAQA,CAAT,GAAe,KAAK,GAAxD;AACAF,GAAC,GAAGA,CAAC,GAAG,QAAJ,YAAgBA,CAAhB,EAAsB,IAAI,CAA1B,IAAiC,QAAQA,CAAT,GAAe,KAAK,GAAxD;AACAQ,GAAC,GAAGA,CAAC,GAAG,QAAJ,YAAgBA,CAAhB,EAAsB,IAAI,CAA1B,IAAiC,QAAQA,CAAT,GAAe,KAAK,GAAxD;AAEA,MAAMnB,CAAC,GAAI,MAAMW,CAAP,GAAY,EAAtB;AACA,MAAMS,CAAC,GAAG,OAAOP,CAAC,GAAGF,CAAX,CAAV;AACA,MAAMvH,CAAC,GAAG,OAAOuH,CAAC,GAAGQ,CAAX,CAAV;AAEA,SAAO,CAACnB,CAAD,EAAIoB,CAAJ,EAAOhI,CAAP,CAAP;AACA,CAnBD;;AAqBAmF,OAAO,CAACG,GAAR,CAAY5F,GAAZ,GAAkB,UAAU4F,GAAV,EAAe;AAChC,MAAMoB,CAAC,GAAGpB,GAAG,CAAC,CAAD,CAAH,GAAS,GAAnB;AACA,MAAMqB,CAAC,GAAGrB,GAAG,CAAC,CAAD,CAAH,GAAS,GAAnB;AACA,MAAMsB,CAAC,GAAGtB,GAAG,CAAC,CAAD,CAAH,GAAS,GAAnB;AACA,MAAI2C,EAAJ;AACA,MAAIC,EAAJ;AACA,MAAIC,GAAJ;;AAEA,MAAIxB,CAAC,KAAK,CAAV,EAAa;AACZwB,OAAG,GAAGvB,CAAC,GAAG,GAAV;AACA,WAAO,CAACuB,GAAD,EAAMA,GAAN,EAAWA,GAAX,CAAP;AACA;;AAED,MAAIvB,CAAC,GAAG,GAAR,EAAa;AACZqB,MAAE,GAAGrB,CAAC,IAAI,IAAID,CAAR,CAAN;AACA,GAFD,MAEO;AACNsB,MAAE,GAAGrB,CAAC,GAAGD,CAAJ,GAAQC,CAAC,GAAGD,CAAjB;AACA;;AAED,MAAMyB,EAAE,GAAG,IAAIxB,CAAJ,GAAQqB,EAAnB;AAEA,MAAMvI,GAAG,GAAG,CAAC,CAAD,EAAI,CAAJ,EAAO,CAAP,CAAZ;;AACA,OAAK,IAAI2I,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAG,CAApB,EAAuBA,CAAC,EAAxB,EAA4B;AAC3BH,MAAE,GAAGxB,CAAC,GAAG,IAAI,CAAJ,GAAQ,EAAE2B,CAAC,GAAG,CAAN,CAAjB;;AACA,QAAIH,EAAE,GAAG,CAAT,EAAY;AACXA,QAAE;AACF;;AAED,QAAIA,EAAE,GAAG,CAAT,EAAY;AACXA,QAAE;AACF;;AAED,QAAI,IAAIA,EAAJ,GAAS,CAAb,EAAgB;AACfC,SAAG,GAAGC,EAAE,GAAG,CAACH,EAAE,GAAGG,EAAN,IAAY,CAAZ,GAAgBF,EAA3B;AACA,KAFD,MAEO,IAAI,IAAIA,EAAJ,GAAS,CAAb,EAAgB;AACtBC,SAAG,GAAGF,EAAN;AACA,KAFM,MAEA,IAAI,IAAIC,EAAJ,GAAS,CAAb,EAAgB;AACtBC,SAAG,GAAGC,EAAE,GAAG,CAACH,EAAE,GAAGG,EAAN,KAAa,IAAI,CAAJ,GAAQF,EAArB,IAA2B,CAAtC;AACA,KAFM,MAEA;AACNC,SAAG,GAAGC,EAAN;AACA;;AAED1I,OAAG,CAAC2I,CAAD,CAAH,GAASF,GAAG,GAAG,GAAf;AACA;;AAED,SAAOzI,GAAP;AACA,CA9CD;;AAgDAyF,OAAO,CAACG,GAAR,CAAYC,GAAZ,GAAkB,UAAUD,GAAV,EAAe;AAChC,MAAMoB,CAAC,GAAGpB,GAAG,CAAC,CAAD,CAAb;AACA,MAAIqB,CAAC,GAAGrB,GAAG,CAAC,CAAD,CAAH,GAAS,GAAjB;AACA,MAAIsB,CAAC,GAAGtB,GAAG,CAAC,CAAD,CAAH,GAAS,GAAjB;AACA,MAAIgD,IAAI,GAAG3B,CAAX;AACA,MAAM4B,IAAI,GAAGhC,IAAI,CAACC,GAAL,CAASI,CAAT,EAAY,IAAZ,CAAb;AAEAA,GAAC,IAAI,CAAL;AACAD,GAAC,IAAKC,CAAC,IAAI,CAAN,GAAWA,CAAX,GAAe,IAAIA,CAAxB;AACA0B,MAAI,IAAIC,IAAI,IAAI,CAAR,GAAYA,IAAZ,GAAmB,IAAIA,IAA/B;AACA,MAAMvB,CAAC,GAAG,CAACJ,CAAC,GAAGD,CAAL,IAAU,CAApB;AACA,MAAM6B,EAAE,GAAG5B,CAAC,KAAK,CAAN,GAAW,IAAI0B,IAAL,IAAcC,IAAI,GAAGD,IAArB,CAAV,GAAwC,IAAI3B,CAAL,IAAWC,CAAC,GAAGD,CAAf,CAAlD;AAEA,SAAO,CAACD,CAAD,EAAI8B,EAAE,GAAG,GAAT,EAAcxB,CAAC,GAAG,GAAlB,CAAP;AACA,CAdD;;AAgBA7B,OAAO,CAACI,GAAR,CAAY7F,GAAZ,GAAkB,UAAU6F,GAAV,EAAe;AAChC,MAAMmB,CAAC,GAAGnB,GAAG,CAAC,CAAD,CAAH,GAAS,EAAnB;AACA,MAAMoB,CAAC,GAAGpB,GAAG,CAAC,CAAD,CAAH,GAAS,GAAnB;AACA,MAAIyB,CAAC,GAAGzB,GAAG,CAAC,CAAD,CAAH,GAAS,GAAjB;AACA,MAAMkD,EAAE,GAAGlC,IAAI,CAACmC,KAAL,CAAWhC,CAAX,IAAgB,CAA3B;AAEA,MAAMiC,CAAC,GAAGjC,CAAC,GAAGH,IAAI,CAACmC,KAAL,CAAWhC,CAAX,CAAd;AACA,MAAMkC,CAAC,GAAG,MAAM5B,CAAN,IAAW,IAAIL,CAAf,CAAV;AACA,MAAMkC,CAAC,GAAG,MAAM7B,CAAN,IAAW,IAAKL,CAAC,GAAGgC,CAApB,CAAV;AACA,MAAMG,CAAC,GAAG,MAAM9B,CAAN,IAAW,IAAKL,CAAC,IAAI,IAAIgC,CAAR,CAAjB,CAAV;AACA3B,GAAC,IAAI,GAAL;;AAEA,UAAQyB,EAAR;AACC,SAAK,CAAL;AACC,aAAO,CAACzB,CAAD,EAAI8B,CAAJ,EAAOF,CAAP,CAAP;;AACD,SAAK,CAAL;AACC,aAAO,CAACC,CAAD,EAAI7B,CAAJ,EAAO4B,CAAP,CAAP;;AACD,SAAK,CAAL;AACC,aAAO,CAACA,CAAD,EAAI5B,CAAJ,EAAO8B,CAAP,CAAP;;AACD,SAAK,CAAL;AACC,aAAO,CAACF,CAAD,EAAIC,CAAJ,EAAO7B,CAAP,CAAP;;AACD,SAAK,CAAL;AACC,aAAO,CAAC8B,CAAD,EAAIF,CAAJ,EAAO5B,CAAP,CAAP;;AACD,SAAK,CAAL;AACC,aAAO,CAACA,CAAD,EAAI4B,CAAJ,EAAOC,CAAP,CAAP;AAZF;AAcA,CA1BD;;AA4BA1D,OAAO,CAACI,GAAR,CAAYD,GAAZ,GAAkB,UAAUC,GAAV,EAAe;AAChC,MAAMmB,CAAC,GAAGnB,GAAG,CAAC,CAAD,CAAb;AACA,MAAMoB,CAAC,GAAGpB,GAAG,CAAC,CAAD,CAAH,GAAS,GAAnB;AACA,MAAMyB,CAAC,GAAGzB,GAAG,CAAC,CAAD,CAAH,GAAS,GAAnB;AACA,MAAMwD,IAAI,GAAGxC,IAAI,CAACC,GAAL,CAASQ,CAAT,EAAY,IAAZ,CAAb;AACA,MAAIgC,EAAJ;AACA,MAAIpC,CAAJ;AAEAA,GAAC,GAAG,CAAC,IAAID,CAAL,IAAUK,CAAd;AACA,MAAMuB,IAAI,GAAG,CAAC,IAAI5B,CAAL,IAAUoC,IAAvB;AACAC,IAAE,GAAGrC,CAAC,GAAGoC,IAAT;AACAC,IAAE,IAAKT,IAAI,IAAI,CAAT,GAAcA,IAAd,GAAqB,IAAIA,IAA/B;AACAS,IAAE,GAAGA,EAAE,IAAI,CAAX;AACApC,GAAC,IAAI,CAAL;AAEA,SAAO,CAACF,CAAD,EAAIsC,EAAE,GAAG,GAAT,EAAcpC,CAAC,GAAG,GAAlB,CAAP;AACA,CAhBD,C,CAkBA;;;AACAzB,OAAO,CAACK,GAAR,CAAY9F,GAAZ,GAAkB,UAAU8F,GAAV,EAAe;AAChC,MAAMkB,CAAC,GAAGlB,GAAG,CAAC,CAAD,CAAH,GAAS,GAAnB;AACA,MAAIyD,EAAE,GAAGzD,GAAG,CAAC,CAAD,CAAH,GAAS,GAAlB;AACA,MAAI0D,EAAE,GAAG1D,GAAG,CAAC,CAAD,CAAH,GAAS,GAAlB;AACA,MAAM2D,KAAK,GAAGF,EAAE,GAAGC,EAAnB;AACA,MAAIP,CAAJ,CALgC,CAOhC;;AACA,MAAIQ,KAAK,GAAG,CAAZ,EAAe;AACdF,MAAE,IAAIE,KAAN;AACAD,MAAE,IAAIC,KAAN;AACA;;AAED,MAAMd,CAAC,GAAG9B,IAAI,CAACmC,KAAL,CAAW,IAAIhC,CAAf,CAAV;AACA,MAAMM,CAAC,GAAG,IAAIkC,EAAd;AACAP,GAAC,GAAG,IAAIjC,CAAJ,GAAQ2B,CAAZ;;AAEA,MAAI,CAACA,CAAC,GAAG,IAAL,MAAe,CAAnB,EAAsB;AACrBM,KAAC,GAAG,IAAIA,CAAR;AACA;;AAED,MAAM/I,CAAC,GAAGqJ,EAAE,GAAGN,CAAC,IAAI3B,CAAC,GAAGiC,EAAR,CAAhB,CArBgC,CAqBH;;AAE7B,MAAInJ,CAAJ;AACA,MAAIC,CAAJ;AACA,MAAIC,CAAJ;AACA;;AACA,UAAQqI,CAAR;AACC;AACA,SAAK,CAAL;AACA,SAAK,CAAL;AAAQvI,OAAC,GAAGkH,CAAJ;AAAQjH,OAAC,GAAGH,CAAJ;AAAQI,OAAC,GAAGiJ,EAAJ;AAAQ;;AAChC,SAAK,CAAL;AAAQnJ,OAAC,GAAGF,CAAJ;AAAQG,OAAC,GAAGiH,CAAJ;AAAQhH,OAAC,GAAGiJ,EAAJ;AAAQ;;AAChC,SAAK,CAAL;AAAQnJ,OAAC,GAAGmJ,EAAJ;AAAQlJ,OAAC,GAAGiH,CAAJ;AAAQhH,OAAC,GAAGJ,CAAJ;AAAO;;AAC/B,SAAK,CAAL;AAAQE,OAAC,GAAGmJ,EAAJ;AAAQlJ,OAAC,GAAGH,CAAJ;AAAQI,OAAC,GAAGgH,CAAJ;AAAO;;AAC/B,SAAK,CAAL;AAAQlH,OAAC,GAAGF,CAAJ;AAAQG,OAAC,GAAGkJ,EAAJ;AAAQjJ,OAAC,GAAGgH,CAAJ;AAAO;;AAC/B,SAAK,CAAL;AAAQlH,OAAC,GAAGkH,CAAJ;AAAQjH,OAAC,GAAGkJ,EAAJ;AAAQjJ,OAAC,GAAGJ,CAAJ;AAAO;AARhC;AAUA;;;AAEA,SAAO,CAACE,CAAC,GAAG,GAAL,EAAUC,CAAC,GAAG,GAAd,EAAmBC,CAAC,GAAG,GAAvB,CAAP;AACA,CAxCD;;AA0CAmF,OAAO,CAACM,IAAR,CAAa/F,GAAb,GAAmB,UAAU+F,IAAV,EAAgB;AAClC,MAAM0B,CAAC,GAAG1B,IAAI,CAAC,CAAD,CAAJ,GAAU,GAApB;AACA,MAAM6B,CAAC,GAAG7B,IAAI,CAAC,CAAD,CAAJ,GAAU,GAApB;AACA,MAAM8B,CAAC,GAAG9B,IAAI,CAAC,CAAD,CAAJ,GAAU,GAApB;AACA,MAAM4B,CAAC,GAAG5B,IAAI,CAAC,CAAD,CAAJ,GAAU,GAApB;AAEA,MAAM3F,CAAC,GAAG,IAAIyG,IAAI,CAACD,GAAL,CAAS,CAAT,EAAYa,CAAC,IAAI,IAAIE,CAAR,CAAD,GAAcA,CAA1B,CAAd;AACA,MAAMtH,CAAC,GAAG,IAAIwG,IAAI,CAACD,GAAL,CAAS,CAAT,EAAYgB,CAAC,IAAI,IAAID,CAAR,CAAD,GAAcA,CAA1B,CAAd;AACA,MAAMrH,CAAC,GAAG,IAAIuG,IAAI,CAACD,GAAL,CAAS,CAAT,EAAYiB,CAAC,IAAI,IAAIF,CAAR,CAAD,GAAcA,CAA1B,CAAd;AAEA,SAAO,CAACvH,CAAC,GAAG,GAAL,EAAUC,CAAC,GAAG,GAAd,EAAmBC,CAAC,GAAG,GAAvB,CAAP;AACA,CAXD;;AAaAmF,OAAO,CAACO,GAAR,CAAYhG,GAAZ,GAAkB,UAAUgG,GAAV,EAAe;AAChC,MAAM+B,CAAC,GAAG/B,GAAG,CAAC,CAAD,CAAH,GAAS,GAAnB;AACA,MAAM6B,CAAC,GAAG7B,GAAG,CAAC,CAAD,CAAH,GAAS,GAAnB;AACA,MAAMqC,CAAC,GAAGrC,GAAG,CAAC,CAAD,CAAH,GAAS,GAAnB;AACA,MAAI5F,CAAJ;AACA,MAAIC,CAAJ;AACA,MAAIC,CAAJ;AAEAF,GAAC,GAAI2H,CAAC,GAAG,MAAL,GAAgBF,CAAC,GAAG,CAAC,MAArB,GAAgCQ,CAAC,GAAG,CAAC,MAAzC;AACAhI,GAAC,GAAI0H,CAAC,GAAG,CAAC,MAAN,GAAiBF,CAAC,GAAG,MAArB,GAAgCQ,CAAC,GAAG,MAAxC;AACA/H,GAAC,GAAIyH,CAAC,GAAG,MAAL,GAAgBF,CAAC,GAAG,CAAC,MAArB,GAAgCQ,CAAC,GAAG,MAAxC,CAVgC,CAYhC;;AACAjI,GAAC,GAAGA,CAAC,GAAG,SAAJ,GACC,iBAASA,CAAT,EAAe,MAAM,GAArB,CAAD,GAA+B,KAD/B,GAEDA,CAAC,GAAG,KAFP;AAIAC,GAAC,GAAGA,CAAC,GAAG,SAAJ,GACC,iBAASA,CAAT,EAAe,MAAM,GAArB,CAAD,GAA+B,KAD/B,GAEDA,CAAC,GAAG,KAFP;AAIAC,GAAC,GAAGA,CAAC,GAAG,SAAJ,GACC,iBAASA,CAAT,EAAe,MAAM,GAArB,CAAD,GAA+B,KAD/B,GAEDA,CAAC,GAAG,KAFP;AAIAF,GAAC,GAAGyG,IAAI,CAACD,GAAL,CAASC,IAAI,CAACC,GAAL,CAAS,CAAT,EAAY1G,CAAZ,CAAT,EAAyB,CAAzB,CAAJ;AACAC,GAAC,GAAGwG,IAAI,CAACD,GAAL,CAASC,IAAI,CAACC,GAAL,CAAS,CAAT,EAAYzG,CAAZ,CAAT,EAAyB,CAAzB,CAAJ;AACAC,GAAC,GAAGuG,IAAI,CAACD,GAAL,CAASC,IAAI,CAACC,GAAL,CAAS,CAAT,EAAYxG,CAAZ,CAAT,EAAyB,CAAzB,CAAJ;AAEA,SAAO,CAACF,CAAC,GAAG,GAAL,EAAUC,CAAC,GAAG,GAAd,EAAmBC,CAAC,GAAG,GAAvB,CAAP;AACA,CA9BD;;AAgCAmF,OAAO,CAACO,GAAR,CAAYC,GAAZ,GAAkB,UAAUD,GAAV,EAAe;AAChC,MAAI+B,CAAC,GAAG/B,GAAG,CAAC,CAAD,CAAX;AACA,MAAI6B,CAAC,GAAG7B,GAAG,CAAC,CAAD,CAAX;AACA,MAAIqC,CAAC,GAAGrC,GAAG,CAAC,CAAD,CAAX;AAEA+B,GAAC,IAAI,MAAL;AACAF,GAAC,IAAI,GAAL;AACAQ,GAAC,IAAI,OAAL;AAEAN,GAAC,GAAGA,CAAC,GAAG,QAAJ,YAAgBA,CAAhB,EAAsB,IAAI,CAA1B,IAAiC,QAAQA,CAAT,GAAe,KAAK,GAAxD;AACAF,GAAC,GAAGA,CAAC,GAAG,QAAJ,YAAgBA,CAAhB,EAAsB,IAAI,CAA1B,IAAiC,QAAQA,CAAT,GAAe,KAAK,GAAxD;AACAQ,GAAC,GAAGA,CAAC,GAAG,QAAJ,YAAgBA,CAAhB,EAAsB,IAAI,CAA1B,IAAiC,QAAQA,CAAT,GAAe,KAAK,GAAxD;AAEA,MAAMnB,CAAC,GAAI,MAAMW,CAAP,GAAY,EAAtB;AACA,MAAMS,CAAC,GAAG,OAAOP,CAAC,GAAGF,CAAX,CAAV;AACA,MAAMvH,CAAC,GAAG,OAAOuH,CAAC,GAAGQ,CAAX,CAAV;AAEA,SAAO,CAACnB,CAAD,EAAIoB,CAAJ,EAAOhI,CAAP,CAAP;AACA,CAlBD;;AAoBAmF,OAAO,CAACQ,GAAR,CAAYD,GAAZ,GAAkB,UAAUC,GAAV,EAAe;AAChC,MAAMiB,CAAC,GAAGjB,GAAG,CAAC,CAAD,CAAb;AACA,MAAMqC,CAAC,GAAGrC,GAAG,CAAC,CAAD,CAAb;AACA,MAAM3F,CAAC,GAAG2F,GAAG,CAAC,CAAD,CAAb;AACA,MAAI8B,CAAJ;AACA,MAAIF,CAAJ;AACA,MAAIQ,CAAJ;AAEAR,GAAC,GAAG,CAACX,CAAC,GAAG,EAAL,IAAW,GAAf;AACAa,GAAC,GAAGO,CAAC,GAAG,GAAJ,GAAUT,CAAd;AACAQ,GAAC,GAAGR,CAAC,GAAGvH,CAAC,GAAG,GAAZ;AAEA,MAAMoJ,EAAE,YAAG7B,CAAH,EAAQ,CAAR,CAAR;AACA,MAAM8B,EAAE,YAAG5B,CAAH,EAAQ,CAAR,CAAR;AACA,MAAM6B,EAAE,YAAGvB,CAAH,EAAQ,CAAR,CAAR;AACAR,GAAC,GAAG6B,EAAE,GAAG,QAAL,GAAgBA,EAAhB,GAAqB,CAAC7B,CAAC,GAAG,KAAK,GAAV,IAAiB,KAA1C;AACAE,GAAC,GAAG4B,EAAE,GAAG,QAAL,GAAgBA,EAAhB,GAAqB,CAAC5B,CAAC,GAAG,KAAK,GAAV,IAAiB,KAA1C;AACAM,GAAC,GAAGuB,EAAE,GAAG,QAAL,GAAgBA,EAAhB,GAAqB,CAACvB,CAAC,GAAG,KAAK,GAAV,IAAiB,KAA1C;AAEAN,GAAC,IAAI,MAAL;AACAF,GAAC,IAAI,GAAL;AACAQ,GAAC,IAAI,OAAL;AAEA,SAAO,CAACN,CAAD,EAAIF,CAAJ,EAAOQ,CAAP,CAAP;AACA,CAxBD;;AA0BA5C,OAAO,CAACQ,GAAR,CAAYC,GAAZ,GAAkB,UAAUD,GAAV,EAAe;AAChC,MAAMiB,CAAC,GAAGjB,GAAG,CAAC,CAAD,CAAb;AACA,MAAMqC,CAAC,GAAGrC,GAAG,CAAC,CAAD,CAAb;AACA,MAAM3F,CAAC,GAAG2F,GAAG,CAAC,CAAD,CAAb;AACA,MAAIe,CAAJ;AAEA,MAAM6C,EAAE,GAAGhD,IAAI,CAACiD,KAAL,CAAWxJ,CAAX,EAAcgI,CAAd,CAAX;AACAtB,GAAC,GAAG6C,EAAE,GAAG,GAAL,GAAW,CAAX,GAAehD,IAAI,CAACkD,EAAxB;;AAEA,MAAI/C,CAAC,GAAG,CAAR,EAAW;AACVA,KAAC,IAAI,GAAL;AACA;;AAED,MAAMS,CAAC,GAAGZ,IAAI,CAACmD,IAAL,CAAU1B,CAAC,GAAGA,CAAJ,GAAQhI,CAAC,GAAGA,CAAtB,CAAV;AAEA,SAAO,CAAC4G,CAAD,EAAIO,CAAJ,EAAOT,CAAP,CAAP;AACA,CAhBD;;AAkBAvB,OAAO,CAACS,GAAR,CAAYD,GAAZ,GAAkB,UAAUC,GAAV,EAAe;AAChC,MAAMgB,CAAC,GAAGhB,GAAG,CAAC,CAAD,CAAb;AACA,MAAMuB,CAAC,GAAGvB,GAAG,CAAC,CAAD,CAAb;AACA,MAAMc,CAAC,GAAGd,GAAG,CAAC,CAAD,CAAb;AAEA,MAAM2D,EAAE,GAAG7C,CAAC,GAAG,GAAJ,GAAU,CAAV,GAAcH,IAAI,CAACkD,EAA9B;AACA,MAAMzB,CAAC,GAAGb,CAAC,GAAGZ,IAAI,CAACoD,GAAL,CAASJ,EAAT,CAAd;AACA,MAAMvJ,CAAC,GAAGmH,CAAC,GAAGZ,IAAI,CAACqD,GAAL,CAASL,EAAT,CAAd;AAEA,SAAO,CAAC3C,CAAD,EAAIoB,CAAJ,EAAOhI,CAAP,CAAP;AACA,CAVD;;AAYAmF,OAAO,CAACzF,GAAR,CAAYqG,MAAZ,GAAqB,UAAU8D,IAAV,EAAmC;AAAA,MAAnBC,UAAmB,uEAAN,IAAM;;AAAA,6BACrCD,IADqC;AAAA,MAChD/J,CADgD;AAAA,MAC7CC,CAD6C;AAAA,MAC1CC,CAD0C;;AAEvD,MAAIO,KAAK,GAAGuJ,UAAU,KAAK,IAAf,GAAsB3E,OAAO,CAACzF,GAAR,CAAY6F,GAAZ,CAAgBsE,IAAhB,EAAsB,CAAtB,CAAtB,GAAiDC,UAA7D,CAFuD,CAEkB;;AAEzEvJ,OAAK,GAAGgG,IAAI,CAACwD,KAAL,CAAWxJ,KAAK,GAAG,EAAnB,CAAR;;AAEA,MAAIA,KAAK,KAAK,CAAd,EAAiB;AAChB,WAAO,EAAP;AACA;;AAED,MAAIyJ,IAAI,GAAG,MACNzD,IAAI,CAACwD,KAAL,CAAW/J,CAAC,GAAG,GAAf,KAAuB,CAAxB,GACAuG,IAAI,CAACwD,KAAL,CAAWhK,CAAC,GAAG,GAAf,KAAuB,CADvB,GAEDwG,IAAI,CAACwD,KAAL,CAAWjK,CAAC,GAAG,GAAf,CAHQ,CAAX;;AAKA,MAAIS,KAAK,KAAK,CAAd,EAAiB;AAChByJ,QAAI,IAAI,EAAR;AACA;;AAED,SAAOA,IAAP;AACA,CApBD;;AAsBA7E,OAAO,CAACI,GAAR,CAAYQ,MAAZ,GAAqB,UAAU8D,IAAV,EAAgB;AACpC;AACA;AACA,SAAO1E,OAAO,CAACzF,GAAR,CAAYqG,MAAZ,CAAmBZ,OAAO,CAACI,GAAR,CAAY7F,GAAZ,CAAgBmK,IAAhB,CAAnB,EAA0CA,IAAI,CAAC,CAAD,CAA9C,CAAP;AACA,CAJD;;AAMA1E,OAAO,CAACzF,GAAR,CAAYsG,OAAZ,GAAsB,UAAU6D,IAAV,EAAgB;AACrC,MAAM/J,CAAC,GAAG+J,IAAI,CAAC,CAAD,CAAd;AACA,MAAM9J,CAAC,GAAG8J,IAAI,CAAC,CAAD,CAAd;AACA,MAAM7J,CAAC,GAAG6J,IAAI,CAAC,CAAD,CAAd,CAHqC,CAKrC;AACA;;AACA,MAAI/J,CAAC,KAAKC,CAAN,IAAWA,CAAC,KAAKC,CAArB,EAAwB;AACvB,QAAIF,CAAC,GAAG,CAAR,EAAW;AACV,aAAO,EAAP;AACA;;AAED,QAAIA,CAAC,GAAG,GAAR,EAAa;AACZ,aAAO,GAAP;AACA;;AAED,WAAOyG,IAAI,CAACwD,KAAL,CAAY,CAACjK,CAAC,GAAG,CAAL,IAAU,GAAX,GAAkB,EAA7B,IAAmC,GAA1C;AACA;;AAED,MAAMkK,IAAI,GAAG,KACT,KAAKzD,IAAI,CAACwD,KAAL,CAAWjK,CAAC,GAAG,GAAJ,GAAU,CAArB,CADI,GAET,IAAIyG,IAAI,CAACwD,KAAL,CAAWhK,CAAC,GAAG,GAAJ,GAAU,CAArB,CAFK,GAGVwG,IAAI,CAACwD,KAAL,CAAW/J,CAAC,GAAG,GAAJ,GAAU,CAArB,CAHH;AAKA,SAAOgK,IAAP;AACA,CAzBD;;AA2BA7E,OAAO,CAACY,MAAR,CAAerG,GAAf,GAAqB,UAAUmK,IAAV,EAAgB;AACpC,MAAI3H,KAAK,GAAG2H,IAAI,GAAG,EAAnB,CADoC,CAGpC;;AACA,MAAI3H,KAAK,KAAK,CAAV,IAAeA,KAAK,KAAK,CAA7B,EAAgC;AAC/B,QAAI2H,IAAI,GAAG,EAAX,EAAe;AACd3H,WAAK,IAAI,GAAT;AACA;;AAEDA,SAAK,GAAGA,KAAK,GAAG,IAAR,GAAe,GAAvB;AAEA,WAAO,CAACA,KAAD,EAAQA,KAAR,EAAeA,KAAf,CAAP;AACA;;AAED,MAAM+H,IAAI,GAAG,CAAC,CAAC,EAAEJ,IAAI,GAAG,EAAT,CAAD,GAAgB,CAAjB,IAAsB,GAAnC;AACA,MAAM/J,CAAC,GAAI,CAACoC,KAAK,GAAG,CAAT,IAAc+H,IAAf,GAAuB,GAAjC;AACA,MAAMlK,CAAC,GAAI,CAAEmC,KAAK,IAAI,CAAV,GAAe,CAAhB,IAAqB+H,IAAtB,GAA8B,GAAxC;AACA,MAAMjK,CAAC,GAAI,CAAEkC,KAAK,IAAI,CAAV,GAAe,CAAhB,IAAqB+H,IAAtB,GAA8B,GAAxC;AAEA,SAAO,CAACnK,CAAD,EAAIC,CAAJ,EAAOC,CAAP,CAAP;AACA,CApBD;;AAsBAmF,OAAO,CAACa,OAAR,CAAgBtG,GAAhB,GAAsB,UAAUmK,IAAV,EAAgB;AACrC;AACA,MAAIA,IAAI,IAAI,GAAZ,EAAiB;AAChB,QAAM1C,CAAC,GAAG,CAAC0C,IAAI,GAAG,GAAR,IAAe,EAAf,GAAoB,CAA9B;AACA,WAAO,CAAC1C,CAAD,EAAIA,CAAJ,EAAOA,CAAP,CAAP;AACA;;AAED0C,MAAI,IAAI,EAAR;AAEA,MAAIK,GAAJ;AACA,MAAMpK,CAAC,GAAGyG,IAAI,CAACmC,KAAL,CAAWmB,IAAI,GAAG,EAAlB,IAAwB,CAAxB,GAA4B,GAAtC;AACA,MAAM9J,CAAC,GAAGwG,IAAI,CAACmC,KAAL,CAAW,CAACwB,GAAG,GAAGL,IAAI,GAAG,EAAd,IAAoB,CAA/B,IAAoC,CAApC,GAAwC,GAAlD;AACA,MAAM7J,CAAC,GAAIkK,GAAG,GAAG,CAAP,GAAY,CAAZ,GAAgB,GAA1B;AAEA,SAAO,CAACpK,CAAD,EAAIC,CAAJ,EAAOC,CAAP,CAAP;AACA,CAfD;;AAiBAmF,OAAO,CAACzF,GAAR,CAAYmG,GAAZ,GAAkB,UAAUgE,IAAV,EAAgB;AACjC,MAAMM,OAAO,GAAG,CAAC,CAAC5D,IAAI,CAACwD,KAAL,CAAWF,IAAI,CAAC,CAAD,CAAf,IAAsB,IAAvB,KAAgC,EAAjC,KACZ,CAACtD,IAAI,CAACwD,KAAL,CAAWF,IAAI,CAAC,CAAD,CAAf,IAAsB,IAAvB,KAAgC,CADpB,KAEZtD,IAAI,CAACwD,KAAL,CAAWF,IAAI,CAAC,CAAD,CAAf,IAAsB,IAFV,CAAhB;AAIA,MAAMO,MAAM,GAAGD,OAAO,CAACE,QAAR,CAAiB,EAAjB,EAAqBC,WAArB,EAAf;AACA,SAAO,SAASC,SAAT,CAAmBH,MAAM,CAAC/D,MAA1B,IAAoC+D,MAA3C;AACA,CAPD;;AASAjF,OAAO,CAACU,GAAR,CAAYnG,GAAZ,GAAkB,UAAUmK,IAAV,EAAgB;AACjC,MAAMW,KAAK,GAAGX,IAAI,CAACQ,QAAL,CAAc,EAAd,EAAkBG,KAAlB,CAAwB,0BAAxB,CAAd;;AACA,MAAI,CAACA,KAAL,EAAY;AACX,WAAO,CAAC,CAAD,EAAI,CAAJ,EAAO,CAAP,CAAP;AACA;;AAED,MAAIC,WAAW,GAAGD,KAAK,CAAC,CAAD,CAAvB;;AAEA,MAAIA,KAAK,CAAC,CAAD,CAAL,CAASnE,MAAT,KAAoB,CAAxB,EAA2B;AAC1BoE,eAAW,GAAGA,WAAW,CAACC,KAAZ,CAAkB,EAAlB,EAAsBC,GAAtB,CAA0B,UAAAC,IAAI,EAAI;AAC/C,aAAOA,IAAI,GAAGA,IAAd;AACA,KAFa,EAEX3L,IAFW,CAEN,EAFM,CAAd;AAGA;;AAED,MAAMkL,OAAO,GAAGU,QAAQ,CAACJ,WAAD,EAAc,EAAd,CAAxB;AACA,MAAM3K,CAAC,GAAIqK,OAAO,IAAI,EAAZ,GAAkB,IAA5B;AACA,MAAMpK,CAAC,GAAIoK,OAAO,IAAI,CAAZ,GAAiB,IAA3B;AACA,MAAMnK,CAAC,GAAGmK,OAAO,GAAG,IAApB;AAEA,SAAO,CAACrK,CAAD,EAAIC,CAAJ,EAAOC,CAAP,CAAP;AACA,CApBD;;AAsBAmF,OAAO,CAACzF,GAAR,CAAYuG,GAAZ,GAAkB,UAAUvG,GAAV,EAAe;AAChC,MAAMI,CAAC,GAAGJ,GAAG,CAAC,CAAD,CAAH,GAAS,GAAnB;AACA,MAAMK,CAAC,GAAGL,GAAG,CAAC,CAAD,CAAH,GAAS,GAAnB;AACA,MAAMM,CAAC,GAAGN,GAAG,CAAC,CAAD,CAAH,GAAS,GAAnB;AACA,MAAM8G,GAAG,GAAGD,IAAI,CAACC,GAAL,CAASD,IAAI,CAACC,GAAL,CAAS1G,CAAT,EAAYC,CAAZ,CAAT,EAAyBC,CAAzB,CAAZ;AACA,MAAMsG,GAAG,GAAGC,IAAI,CAACD,GAAL,CAASC,IAAI,CAACD,GAAL,CAASxG,CAAT,EAAYC,CAAZ,CAAT,EAAyBC,CAAzB,CAAZ;AACA,MAAM8K,MAAM,GAAItE,GAAG,GAAGF,GAAtB;AACA,MAAIyE,SAAJ;AACA,MAAIC,GAAJ;;AAEA,MAAIF,MAAM,GAAG,CAAb,EAAgB;AACfC,aAAS,GAAGzE,GAAG,IAAI,IAAIwE,MAAR,CAAf;AACA,GAFD,MAEO;AACNC,aAAS,GAAG,CAAZ;AACA;;AAED,MAAID,MAAM,IAAI,CAAd,EAAiB;AAChBE,OAAG,GAAG,CAAN;AACA,GAFD,MAGA,IAAIxE,GAAG,KAAK1G,CAAZ,EAAe;AACdkL,OAAG,GAAI,CAACjL,CAAC,GAAGC,CAAL,IAAU8K,MAAX,GAAqB,CAA3B;AACA,GAFD,MAGA,IAAItE,GAAG,KAAKzG,CAAZ,EAAe;AACdiL,OAAG,GAAG,IAAI,CAAChL,CAAC,GAAGF,CAAL,IAAUgL,MAApB;AACA,GAFD,MAEO;AACNE,OAAG,GAAG,IAAI,CAAClL,CAAC,GAAGC,CAAL,IAAU+K,MAApB;AACA;;AAEDE,KAAG,IAAI,CAAP;AACAA,KAAG,IAAI,CAAP;AAEA,SAAO,CAACA,GAAG,GAAG,GAAP,EAAYF,MAAM,GAAG,GAArB,EAA0BC,SAAS,GAAG,GAAtC,CAAP;AACA,CAhCD;;AAkCA5F,OAAO,CAACG,GAAR,CAAYW,GAAZ,GAAkB,UAAUX,GAAV,EAAe;AAChC,MAAMqB,CAAC,GAAGrB,GAAG,CAAC,CAAD,CAAH,GAAS,GAAnB;AACA,MAAMsB,CAAC,GAAGtB,GAAG,CAAC,CAAD,CAAH,GAAS,GAAnB;AAEA,MAAM6B,CAAC,GAAGP,CAAC,GAAG,GAAJ,GAAW,MAAMD,CAAN,GAAUC,CAArB,GAA2B,MAAMD,CAAN,IAAW,MAAMC,CAAjB,CAArC;AAEA,MAAI+B,CAAC,GAAG,CAAR;;AACA,MAAIxB,CAAC,GAAG,GAAR,EAAa;AACZwB,KAAC,GAAG,CAAC/B,CAAC,GAAG,MAAMO,CAAX,KAAiB,MAAMA,CAAvB,CAAJ;AACA;;AAED,SAAO,CAAC7B,GAAG,CAAC,CAAD,CAAJ,EAAS6B,CAAC,GAAG,GAAb,EAAkBwB,CAAC,GAAG,GAAtB,CAAP;AACA,CAZD;;AAcAxD,OAAO,CAACI,GAAR,CAAYU,GAAZ,GAAkB,UAAUV,GAAV,EAAe;AAChC,MAAMoB,CAAC,GAAGpB,GAAG,CAAC,CAAD,CAAH,GAAS,GAAnB;AACA,MAAMyB,CAAC,GAAGzB,GAAG,CAAC,CAAD,CAAH,GAAS,GAAnB;AAEA,MAAM4B,CAAC,GAAGR,CAAC,GAAGK,CAAd;AACA,MAAI2B,CAAC,GAAG,CAAR;;AAEA,MAAIxB,CAAC,GAAG,GAAR,EAAa;AACZwB,KAAC,GAAG,CAAC3B,CAAC,GAAGG,CAAL,KAAW,IAAIA,CAAf,CAAJ;AACA;;AAED,SAAO,CAAC5B,GAAG,CAAC,CAAD,CAAJ,EAAS4B,CAAC,GAAG,GAAb,EAAkBwB,CAAC,GAAG,GAAtB,CAAP;AACA,CAZD;;AAcAxD,OAAO,CAACc,GAAR,CAAYvG,GAAZ,GAAkB,UAAUuG,GAAV,EAAe;AAChC,MAAMS,CAAC,GAAGT,GAAG,CAAC,CAAD,CAAH,GAAS,GAAnB;AACA,MAAMkB,CAAC,GAAGlB,GAAG,CAAC,CAAD,CAAH,GAAS,GAAnB;AACA,MAAMlG,CAAC,GAAGkG,GAAG,CAAC,CAAD,CAAH,GAAS,GAAnB;;AAEA,MAAIkB,CAAC,KAAK,GAAV,EAAe;AACd,WAAO,CAACpH,CAAC,GAAG,GAAL,EAAUA,CAAC,GAAG,GAAd,EAAmBA,CAAC,GAAG,GAAvB,CAAP;AACA;;AAED,MAAMkL,IAAI,GAAG,CAAC,CAAD,EAAI,CAAJ,EAAO,CAAP,CAAb;AACA,MAAMxC,EAAE,GAAI/B,CAAC,GAAG,CAAL,GAAU,CAArB;AACA,MAAMM,CAAC,GAAGyB,EAAE,GAAG,CAAf;AACA,MAAMrB,CAAC,GAAG,IAAIJ,CAAd;AACA,MAAIkE,EAAE,GAAG,CAAT;AAEA;;AACA,UAAQ3E,IAAI,CAACmC,KAAL,CAAWD,EAAX,CAAR;AACC,SAAK,CAAL;AACCwC,UAAI,CAAC,CAAD,CAAJ,GAAU,CAAV;AAAaA,UAAI,CAAC,CAAD,CAAJ,GAAUjE,CAAV;AAAaiE,UAAI,CAAC,CAAD,CAAJ,GAAU,CAAV;AAAa;;AACxC,SAAK,CAAL;AACCA,UAAI,CAAC,CAAD,CAAJ,GAAU7D,CAAV;AAAa6D,UAAI,CAAC,CAAD,CAAJ,GAAU,CAAV;AAAaA,UAAI,CAAC,CAAD,CAAJ,GAAU,CAAV;AAAa;;AACxC,SAAK,CAAL;AACCA,UAAI,CAAC,CAAD,CAAJ,GAAU,CAAV;AAAaA,UAAI,CAAC,CAAD,CAAJ,GAAU,CAAV;AAAaA,UAAI,CAAC,CAAD,CAAJ,GAAUjE,CAAV;AAAa;;AACxC,SAAK,CAAL;AACCiE,UAAI,CAAC,CAAD,CAAJ,GAAU,CAAV;AAAaA,UAAI,CAAC,CAAD,CAAJ,GAAU7D,CAAV;AAAa6D,UAAI,CAAC,CAAD,CAAJ,GAAU,CAAV;AAAa;;AACxC,SAAK,CAAL;AACCA,UAAI,CAAC,CAAD,CAAJ,GAAUjE,CAAV;AAAaiE,UAAI,CAAC,CAAD,CAAJ,GAAU,CAAV;AAAaA,UAAI,CAAC,CAAD,CAAJ,GAAU,CAAV;AAAa;;AACxC;AACCA,UAAI,CAAC,CAAD,CAAJ,GAAU,CAAV;AAAaA,UAAI,CAAC,CAAD,CAAJ,GAAU,CAAV;AAAaA,UAAI,CAAC,CAAD,CAAJ,GAAU7D,CAAV;AAZ5B;AAcA;;;AAEA8D,IAAE,GAAG,CAAC,MAAM/D,CAAP,IAAYpH,CAAjB;AAEA,SAAO,CACN,CAACoH,CAAC,GAAG8D,IAAI,CAAC,CAAD,CAAR,GAAcC,EAAf,IAAqB,GADf,EAEN,CAAC/D,CAAC,GAAG8D,IAAI,CAAC,CAAD,CAAR,GAAcC,EAAf,IAAqB,GAFf,EAGN,CAAC/D,CAAC,GAAG8D,IAAI,CAAC,CAAD,CAAR,GAAcC,EAAf,IAAqB,GAHf,CAAP;AAKA,CAvCD;;AAyCA/F,OAAO,CAACc,GAAR,CAAYV,GAAZ,GAAkB,UAAUU,GAAV,EAAe;AAChC,MAAMkB,CAAC,GAAGlB,GAAG,CAAC,CAAD,CAAH,GAAS,GAAnB;AACA,MAAMlG,CAAC,GAAGkG,GAAG,CAAC,CAAD,CAAH,GAAS,GAAnB;AAEA,MAAMe,CAAC,GAAGG,CAAC,GAAGpH,CAAC,IAAI,MAAMoH,CAAV,CAAf;AACA,MAAIwB,CAAC,GAAG,CAAR;;AAEA,MAAI3B,CAAC,GAAG,GAAR,EAAa;AACZ2B,KAAC,GAAGxB,CAAC,GAAGH,CAAR;AACA;;AAED,SAAO,CAACf,GAAG,CAAC,CAAD,CAAJ,EAAS0C,CAAC,GAAG,GAAb,EAAkB3B,CAAC,GAAG,GAAtB,CAAP;AACA,CAZD;;AAcA7B,OAAO,CAACc,GAAR,CAAYX,GAAZ,GAAkB,UAAUW,GAAV,EAAe;AAChC,MAAMkB,CAAC,GAAGlB,GAAG,CAAC,CAAD,CAAH,GAAS,GAAnB;AACA,MAAMlG,CAAC,GAAGkG,GAAG,CAAC,CAAD,CAAH,GAAS,GAAnB;AAEA,MAAMW,CAAC,GAAG7G,CAAC,IAAI,MAAMoH,CAAV,CAAD,GAAgB,MAAMA,CAAhC;AACA,MAAIR,CAAC,GAAG,CAAR;;AAEA,MAAIC,CAAC,GAAG,GAAJ,IAAWA,CAAC,GAAG,GAAnB,EAAwB;AACvBD,KAAC,GAAGQ,CAAC,IAAI,IAAIP,CAAR,CAAL;AACA,GAFD,MAGA,IAAIA,CAAC,IAAI,GAAL,IAAYA,CAAC,GAAG,GAApB,EAAyB;AACxBD,KAAC,GAAGQ,CAAC,IAAI,KAAK,IAAIP,CAAT,CAAJ,CAAL;AACA;;AAED,SAAO,CAACX,GAAG,CAAC,CAAD,CAAJ,EAASU,CAAC,GAAG,GAAb,EAAkBC,CAAC,GAAG,GAAtB,CAAP;AACA,CAfD;;AAiBAzB,OAAO,CAACc,GAAR,CAAYT,GAAZ,GAAkB,UAAUS,GAAV,EAAe;AAChC,MAAMkB,CAAC,GAAGlB,GAAG,CAAC,CAAD,CAAH,GAAS,GAAnB;AACA,MAAMlG,CAAC,GAAGkG,GAAG,CAAC,CAAD,CAAH,GAAS,GAAnB;AACA,MAAMe,CAAC,GAAGG,CAAC,GAAGpH,CAAC,IAAI,MAAMoH,CAAV,CAAf;AACA,SAAO,CAAClB,GAAG,CAAC,CAAD,CAAJ,EAAS,CAACe,CAAC,GAAGG,CAAL,IAAU,GAAnB,EAAwB,CAAC,IAAIH,CAAL,IAAU,GAAlC,CAAP;AACA,CALD;;AAOA7B,OAAO,CAACK,GAAR,CAAYS,GAAZ,GAAkB,UAAUT,GAAV,EAAe;AAChC,MAAM4B,CAAC,GAAG5B,GAAG,CAAC,CAAD,CAAH,GAAS,GAAnB;AACA,MAAMxF,CAAC,GAAGwF,GAAG,CAAC,CAAD,CAAH,GAAS,GAAnB;AACA,MAAMwB,CAAC,GAAG,IAAIhH,CAAd;AACA,MAAMmH,CAAC,GAAGH,CAAC,GAAGI,CAAd;AACA,MAAIrH,CAAC,GAAG,CAAR;;AAEA,MAAIoH,CAAC,GAAG,CAAR,EAAW;AACVpH,KAAC,GAAG,CAACiH,CAAC,GAAGG,CAAL,KAAW,IAAIA,CAAf,CAAJ;AACA;;AAED,SAAO,CAAC3B,GAAG,CAAC,CAAD,CAAJ,EAAS2B,CAAC,GAAG,GAAb,EAAkBpH,CAAC,GAAG,GAAtB,CAAP;AACA,CAZD;;AAcAoF,OAAO,CAACe,KAAR,CAAcxG,GAAd,GAAoB,UAAUwG,KAAV,EAAiB;AACpC,SAAO,CAAEA,KAAK,CAAC,CAAD,CAAL,GAAW,KAAZ,GAAqB,GAAtB,EAA4BA,KAAK,CAAC,CAAD,CAAL,GAAW,KAAZ,GAAqB,GAAhD,EAAsDA,KAAK,CAAC,CAAD,CAAL,GAAW,KAAZ,GAAqB,GAA1E,CAAP;AACA,CAFD;;AAIAf,OAAO,CAACzF,GAAR,CAAYwG,KAAZ,GAAoB,UAAUxG,GAAV,EAAe;AAClC,SAAO,CAAEA,GAAG,CAAC,CAAD,CAAH,GAAS,GAAV,GAAiB,KAAlB,EAA0BA,GAAG,CAAC,CAAD,CAAH,GAAS,GAAV,GAAiB,KAA1C,EAAkDA,GAAG,CAAC,CAAD,CAAH,GAAS,GAAV,GAAiB,KAAlE,CAAP;AACA,CAFD;;AAIAyF,OAAO,CAACf,IAAR,CAAa1E,GAAb,GAAmB,UAAUmK,IAAV,EAAgB;AAClC,SAAO,CAACA,IAAI,CAAC,CAAD,CAAJ,GAAU,GAAV,GAAgB,GAAjB,EAAsBA,IAAI,CAAC,CAAD,CAAJ,GAAU,GAAV,GAAgB,GAAtC,EAA2CA,IAAI,CAAC,CAAD,CAAJ,GAAU,GAAV,GAAgB,GAA3D,CAAP;AACA,CAFD;;AAIA1E,OAAO,CAACf,IAAR,CAAakB,GAAb,GAAmB,UAAUuE,IAAV,EAAgB;AAClC,SAAO,CAAC,CAAD,EAAI,CAAJ,EAAOA,IAAI,CAAC,CAAD,CAAX,CAAP;AACA,CAFD;;AAIA1E,OAAO,CAACf,IAAR,CAAamB,GAAb,GAAmBJ,OAAO,CAACf,IAAR,CAAakB,GAAhC;;AAEAH,OAAO,CAACf,IAAR,CAAaoB,GAAb,GAAmB,UAAUpB,IAAV,EAAgB;AAClC,SAAO,CAAC,CAAD,EAAI,GAAJ,EAASA,IAAI,CAAC,CAAD,CAAb,CAAP;AACA,CAFD;;AAIAe,OAAO,CAACf,IAAR,CAAaqB,IAAb,GAAoB,UAAUrB,IAAV,EAAgB;AACnC,SAAO,CAAC,CAAD,EAAI,CAAJ,EAAO,CAAP,EAAUA,IAAI,CAAC,CAAD,CAAd,CAAP;AACA,CAFD;;AAIAe,OAAO,CAACf,IAAR,CAAauB,GAAb,GAAmB,UAAUvB,IAAV,EAAgB;AAClC,SAAO,CAACA,IAAI,CAAC,CAAD,CAAL,EAAU,CAAV,EAAa,CAAb,CAAP;AACA,CAFD;;AAIAe,OAAO,CAACf,IAAR,CAAayB,GAAb,GAAmB,UAAUzB,IAAV,EAAgB;AAClC,MAAM+D,GAAG,GAAG5B,IAAI,CAACwD,KAAL,CAAW3F,IAAI,CAAC,CAAD,CAAJ,GAAU,GAAV,GAAgB,GAA3B,IAAkC,IAA9C;AACA,MAAM+F,OAAO,GAAG,CAAChC,GAAG,IAAI,EAAR,KAAeA,GAAG,IAAI,CAAtB,IAA2BA,GAA3C;AAEA,MAAMiC,MAAM,GAAGD,OAAO,CAACE,QAAR,CAAiB,EAAjB,EAAqBC,WAArB,EAAf;AACA,SAAO,SAASC,SAAT,CAAmBH,MAAM,CAAC/D,MAA1B,IAAoC+D,MAA3C;AACA,CAND;;AAQAjF,OAAO,CAACzF,GAAR,CAAY0E,IAAZ,GAAmB,UAAU1E,GAAV,EAAe;AACjC,MAAMyI,GAAG,GAAG,CAACzI,GAAG,CAAC,CAAD,CAAH,GAASA,GAAG,CAAC,CAAD,CAAZ,GAAkBA,GAAG,CAAC,CAAD,CAAtB,IAA6B,CAAzC;AACA,SAAO,CAACyI,GAAG,GAAG,GAAN,GAAY,GAAb,CAAP;AACA,CAHD,C;;;;;;;;;;;;;;;;ACn0BA,IAAMgD,WAAW,GAAGnK,mBAAO,CAAC,2FAAD,CAA3B;;AACA,IAAMoK,KAAK,GAAGpK,mBAAO,CAAC,+EAAD,CAArB;;AAEA,IAAMmE,OAAO,GAAG,EAAhB;AAEA,IAAMkG,MAAM,GAAGhL,MAAM,CAAC4E,IAAP,CAAYkG,WAAZ,CAAf;;AAEA,SAASG,OAAT,CAAiBjM,EAAjB,EAAqB;AACpB,MAAMkM,SAAS,GAAG,SAAZA,SAAY,GAAmB;AAAA,sCAAN1B,IAAM;AAANA,UAAM;AAAA;;AACpC,QAAM2B,IAAI,GAAG3B,IAAI,CAAC,CAAD,CAAjB;;AACA,QAAI2B,IAAI,KAAKrM,SAAT,IAAsBqM,IAAI,KAAK,IAAnC,EAAyC;AACxC,aAAOA,IAAP;AACA;;AAED,QAAIA,IAAI,CAACnF,MAAL,GAAc,CAAlB,EAAqB;AACpBwD,UAAI,GAAG2B,IAAP;AACA;;AAED,WAAOnM,EAAE,CAACwK,IAAD,CAAT;AACA,GAXD,CADoB,CAcpB;;;AACA,MAAI,gBAAgBxK,EAApB,EAAwB;AACvBkM,aAAS,CAACE,UAAV,GAAuBpM,EAAE,CAACoM,UAA1B;AACA;;AAED,SAAOF,SAAP;AACA;;AAED,SAASG,WAAT,CAAqBrM,EAArB,EAAyB;AACxB,MAAMkM,SAAS,GAAG,SAAZA,SAAY,GAAmB;AAAA,uCAAN1B,IAAM;AAANA,UAAM;AAAA;;AACpC,QAAM2B,IAAI,GAAG3B,IAAI,CAAC,CAAD,CAAjB;;AAEA,QAAI2B,IAAI,KAAKrM,SAAT,IAAsBqM,IAAI,KAAK,IAAnC,EAAyC;AACxC,aAAOA,IAAP;AACA;;AAED,QAAIA,IAAI,CAACnF,MAAL,GAAc,CAAlB,EAAqB;AACpBwD,UAAI,GAAG2B,IAAP;AACA;;AAED,QAAMG,MAAM,GAAGtM,EAAE,CAACwK,IAAD,CAAjB,CAXoC,CAapC;AACA;AACA;;AACA,QAAI,QAAO8B,MAAP,MAAkB,QAAtB,EAAgC;AAC/B,WAAK,IAAIC,GAAG,GAAGD,MAAM,CAACtF,MAAjB,EAAyBgC,CAAC,GAAG,CAAlC,EAAqCA,CAAC,GAAGuD,GAAzC,EAA8CvD,CAAC,EAA/C,EAAmD;AAClDsD,cAAM,CAACtD,CAAD,CAAN,GAAY9B,IAAI,CAACwD,KAAL,CAAW4B,MAAM,CAACtD,CAAD,CAAjB,CAAZ;AACA;AACD;;AAED,WAAOsD,MAAP;AACA,GAvBD,CADwB,CA0BxB;;;AACA,MAAI,gBAAgBtM,EAApB,EAAwB;AACvBkM,aAAS,CAACE,UAAV,GAAuBpM,EAAE,CAACoM,UAA1B;AACA;;AAED,SAAOF,SAAP;AACA;;AAEDF,MAAM,CAACQ,OAAP,CAAe,UAAAC,SAAS,EAAI;AAC3B3G,SAAO,CAAC2G,SAAD,CAAP,GAAqB,EAArB;AAEAzL,QAAM,CAACC,cAAP,CAAsB6E,OAAO,CAAC2G,SAAD,CAA7B,EAA0C,UAA1C,EAAsD;AAACvL,SAAK,EAAE4K,WAAW,CAACW,SAAD,CAAX,CAAuB1G;AAA/B,GAAtD;AACA/E,QAAM,CAACC,cAAP,CAAsB6E,OAAO,CAAC2G,SAAD,CAA7B,EAA0C,QAA1C,EAAoD;AAACvL,SAAK,EAAE4K,WAAW,CAACW,SAAD,CAAX,CAAuBzG;AAA/B,GAApD;AAEA,MAAM0G,MAAM,GAAGX,KAAK,CAACU,SAAD,CAApB;AACA,MAAME,WAAW,GAAG3L,MAAM,CAAC4E,IAAP,CAAY8G,MAAZ,CAApB;AAEAC,aAAW,CAACH,OAAZ,CAAoB,UAAAI,OAAO,EAAI;AAC9B,QAAM5M,EAAE,GAAG0M,MAAM,CAACE,OAAD,CAAjB;AAEA9G,WAAO,CAAC2G,SAAD,CAAP,CAAmBG,OAAnB,IAA8BP,WAAW,CAACrM,EAAD,CAAzC;AACA8F,WAAO,CAAC2G,SAAD,CAAP,CAAmBG,OAAnB,EAA4BC,GAA5B,GAAkCZ,OAAO,CAACjM,EAAD,CAAzC;AACA,GALD;AAMA,CAfD;AAiBAR,MAAM,CAACC,OAAP,GAAiBqG,OAAjB,C;;;;;;;;;;;;;;AChFA,IAAMgG,WAAW,GAAGnK,mBAAO,CAAC,2FAAD,CAA3B;AAEA;;;;;;;;;;;;AAWA,SAASmL,UAAT,GAAsB;AACrB,MAAMC,KAAK,GAAG,EAAd,CADqB,CAErB;;AACA,MAAMf,MAAM,GAAGhL,MAAM,CAAC4E,IAAP,CAAYkG,WAAZ,CAAf;;AAEA,OAAK,IAAIS,GAAG,GAAGP,MAAM,CAAChF,MAAjB,EAAyBgC,CAAC,GAAG,CAAlC,EAAqCA,CAAC,GAAGuD,GAAzC,EAA8CvD,CAAC,EAA/C,EAAmD;AAClD+D,SAAK,CAACf,MAAM,CAAChD,CAAD,CAAP,CAAL,GAAmB;AAClB;AACA;AACAP,cAAQ,EAAE,CAAC,CAHO;AAIlBuE,YAAM,EAAE;AAJU,KAAnB;AAMA;;AAED,SAAOD,KAAP;AACA,C,CAED;;;AACA,SAASE,SAAT,CAAmBR,SAAnB,EAA8B;AAC7B,MAAMM,KAAK,GAAGD,UAAU,EAAxB;AACA,MAAMI,KAAK,GAAG,CAACT,SAAD,CAAd,CAF6B,CAEF;;AAE3BM,OAAK,CAACN,SAAD,CAAL,CAAiBhE,QAAjB,GAA4B,CAA5B;;AAEA,SAAOyE,KAAK,CAAClG,MAAb,EAAqB;AACpB,QAAMmG,OAAO,GAAGD,KAAK,CAACE,GAAN,EAAhB;AACA,QAAMC,SAAS,GAAGrM,MAAM,CAAC4E,IAAP,CAAYkG,WAAW,CAACqB,OAAD,CAAvB,CAAlB;;AAEA,SAAK,IAAIZ,GAAG,GAAGc,SAAS,CAACrG,MAApB,EAA4BgC,CAAC,GAAG,CAArC,EAAwCA,CAAC,GAAGuD,GAA5C,EAAiDvD,CAAC,EAAlD,EAAsD;AACrD,UAAMsE,QAAQ,GAAGD,SAAS,CAACrE,CAAD,CAA1B;AACA,UAAMuE,IAAI,GAAGR,KAAK,CAACO,QAAD,CAAlB;;AAEA,UAAIC,IAAI,CAAC9E,QAAL,KAAkB,CAAC,CAAvB,EAA0B;AACzB8E,YAAI,CAAC9E,QAAL,GAAgBsE,KAAK,CAACI,OAAD,CAAL,CAAe1E,QAAf,GAA0B,CAA1C;AACA8E,YAAI,CAACP,MAAL,GAAcG,OAAd;AACAD,aAAK,CAACM,OAAN,CAAcF,QAAd;AACA;AACD;AACD;;AAED,SAAOP,KAAP;AACA;;AAED,SAASU,IAAT,CAAcC,IAAd,EAAoBC,EAApB,EAAwB;AACvB,SAAO,UAAUnD,IAAV,EAAgB;AACtB,WAAOmD,EAAE,CAACD,IAAI,CAAClD,IAAD,CAAL,CAAT;AACA,GAFD;AAGA;;AAED,SAASoD,cAAT,CAAwBhB,OAAxB,EAAiCG,KAAjC,EAAwC;AACvC,MAAMc,IAAI,GAAG,CAACd,KAAK,CAACH,OAAD,CAAL,CAAeI,MAAhB,EAAwBJ,OAAxB,CAAb;AACA,MAAI5M,EAAE,GAAG8L,WAAW,CAACiB,KAAK,CAACH,OAAD,CAAL,CAAeI,MAAhB,CAAX,CAAmCJ,OAAnC,CAAT;AAEA,MAAIkB,GAAG,GAAGf,KAAK,CAACH,OAAD,CAAL,CAAeI,MAAzB;;AACA,SAAOD,KAAK,CAACe,GAAD,CAAL,CAAWd,MAAlB,EAA0B;AACzBa,QAAI,CAACL,OAAL,CAAaT,KAAK,CAACe,GAAD,CAAL,CAAWd,MAAxB;AACAhN,MAAE,GAAGyN,IAAI,CAAC3B,WAAW,CAACiB,KAAK,CAACe,GAAD,CAAL,CAAWd,MAAZ,CAAX,CAA+Bc,GAA/B,CAAD,EAAsC9N,EAAtC,CAAT;AACA8N,OAAG,GAAGf,KAAK,CAACe,GAAD,CAAL,CAAWd,MAAjB;AACA;;AAEDhN,IAAE,CAACoM,UAAH,GAAgByB,IAAhB;AACA,SAAO7N,EAAP;AACA;;AAEDR,MAAM,CAACC,OAAP,GAAiB,UAAUgN,SAAV,EAAqB;AACrC,MAAMM,KAAK,GAAGE,SAAS,CAACR,SAAD,CAAvB;AACA,MAAML,UAAU,GAAG,EAAnB;AAEA,MAAMJ,MAAM,GAAGhL,MAAM,CAAC4E,IAAP,CAAYmH,KAAZ,CAAf;;AACA,OAAK,IAAIR,GAAG,GAAGP,MAAM,CAAChF,MAAjB,EAAyBgC,CAAC,GAAG,CAAlC,EAAqCA,CAAC,GAAGuD,GAAzC,EAA8CvD,CAAC,EAA/C,EAAmD;AAClD,QAAM4D,OAAO,GAAGZ,MAAM,CAAChD,CAAD,CAAtB;AACA,QAAMuE,IAAI,GAAGR,KAAK,CAACH,OAAD,CAAlB;;AAEA,QAAIW,IAAI,CAACP,MAAL,KAAgB,IAApB,EAA0B;AACzB;AACA;AACA;;AAEDZ,cAAU,CAACQ,OAAD,CAAV,GAAsBgB,cAAc,CAAChB,OAAD,EAAUG,KAAV,CAApC;AACA;;AAED,SAAOX,UAAP;AACA,CAlBD,C;;;;;;;;;;;;AC7EA;;AAEA5M,MAAM,CAACC,OAAP,GAAiB;AAChB,eAAa,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CADG;AAEhB,kBAAgB,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAFA;AAGhB,UAAQ,CAAC,CAAD,EAAI,GAAJ,EAAS,GAAT,CAHQ;AAIhB,gBAAc,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAJE;AAKhB,WAAS,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CALO;AAMhB,WAAS,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CANO;AAOhB,YAAU,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAPM;AAQhB,WAAS,CAAC,CAAD,EAAI,CAAJ,EAAO,CAAP,CARO;AAShB,oBAAkB,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CATF;AAUhB,UAAQ,CAAC,CAAD,EAAI,CAAJ,EAAO,GAAP,CAVQ;AAWhB,gBAAc,CAAC,GAAD,EAAM,EAAN,EAAU,GAAV,CAXE;AAYhB,WAAS,CAAC,GAAD,EAAM,EAAN,EAAU,EAAV,CAZO;AAahB,eAAa,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAbG;AAchB,eAAa,CAAC,EAAD,EAAK,GAAL,EAAU,GAAV,CAdG;AAehB,gBAAc,CAAC,GAAD,EAAM,GAAN,EAAW,CAAX,CAfE;AAgBhB,eAAa,CAAC,GAAD,EAAM,GAAN,EAAW,EAAX,CAhBG;AAiBhB,WAAS,CAAC,GAAD,EAAM,GAAN,EAAW,EAAX,CAjBO;AAkBhB,oBAAkB,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAlBF;AAmBhB,cAAY,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAnBI;AAoBhB,aAAW,CAAC,GAAD,EAAM,EAAN,EAAU,EAAV,CApBK;AAqBhB,UAAQ,CAAC,CAAD,EAAI,GAAJ,EAAS,GAAT,CArBQ;AAsBhB,cAAY,CAAC,CAAD,EAAI,CAAJ,EAAO,GAAP,CAtBI;AAuBhB,cAAY,CAAC,CAAD,EAAI,GAAJ,EAAS,GAAT,CAvBI;AAwBhB,mBAAiB,CAAC,GAAD,EAAM,GAAN,EAAW,EAAX,CAxBD;AAyBhB,cAAY,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAzBI;AA0BhB,eAAa,CAAC,CAAD,EAAI,GAAJ,EAAS,CAAT,CA1BG;AA2BhB,cAAY,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CA3BI;AA4BhB,eAAa,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CA5BG;AA6BhB,iBAAe,CAAC,GAAD,EAAM,CAAN,EAAS,GAAT,CA7BC;AA8BhB,oBAAkB,CAAC,EAAD,EAAK,GAAL,EAAU,EAAV,CA9BF;AA+BhB,gBAAc,CAAC,GAAD,EAAM,GAAN,EAAW,CAAX,CA/BE;AAgChB,gBAAc,CAAC,GAAD,EAAM,EAAN,EAAU,GAAV,CAhCE;AAiChB,aAAW,CAAC,GAAD,EAAM,CAAN,EAAS,CAAT,CAjCK;AAkChB,gBAAc,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAlCE;AAmChB,kBAAgB,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAnCA;AAoChB,mBAAiB,CAAC,EAAD,EAAK,EAAL,EAAS,GAAT,CApCD;AAqChB,mBAAiB,CAAC,EAAD,EAAK,EAAL,EAAS,EAAT,CArCD;AAsChB,mBAAiB,CAAC,EAAD,EAAK,EAAL,EAAS,EAAT,CAtCD;AAuChB,mBAAiB,CAAC,CAAD,EAAI,GAAJ,EAAS,GAAT,CAvCD;AAwChB,gBAAc,CAAC,GAAD,EAAM,CAAN,EAAS,GAAT,CAxCE;AAyChB,cAAY,CAAC,GAAD,EAAM,EAAN,EAAU,GAAV,CAzCI;AA0ChB,iBAAe,CAAC,CAAD,EAAI,GAAJ,EAAS,GAAT,CA1CC;AA2ChB,aAAW,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CA3CK;AA4ChB,aAAW,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CA5CK;AA6ChB,gBAAc,CAAC,EAAD,EAAK,GAAL,EAAU,GAAV,CA7CE;AA8ChB,eAAa,CAAC,GAAD,EAAM,EAAN,EAAU,EAAV,CA9CG;AA+ChB,iBAAe,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CA/CC;AAgDhB,iBAAe,CAAC,EAAD,EAAK,GAAL,EAAU,EAAV,CAhDC;AAiDhB,aAAW,CAAC,GAAD,EAAM,CAAN,EAAS,GAAT,CAjDK;AAkDhB,eAAa,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAlDG;AAmDhB,gBAAc,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAnDE;AAoDhB,UAAQ,CAAC,GAAD,EAAM,GAAN,EAAW,CAAX,CApDQ;AAqDhB,eAAa,CAAC,GAAD,EAAM,GAAN,EAAW,EAAX,CArDG;AAsDhB,UAAQ,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAtDQ;AAuDhB,WAAS,CAAC,CAAD,EAAI,GAAJ,EAAS,CAAT,CAvDO;AAwDhB,iBAAe,CAAC,GAAD,EAAM,GAAN,EAAW,EAAX,CAxDC;AAyDhB,UAAQ,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAzDQ;AA0DhB,cAAY,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CA1DI;AA2DhB,aAAW,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CA3DK;AA4DhB,eAAa,CAAC,GAAD,EAAM,EAAN,EAAU,EAAV,CA5DG;AA6DhB,YAAU,CAAC,EAAD,EAAK,CAAL,EAAQ,GAAR,CA7DM;AA8DhB,WAAS,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CA9DO;AA+DhB,WAAS,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CA/DO;AAgEhB,cAAY,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAhEI;AAiEhB,mBAAiB,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAjED;AAkEhB,eAAa,CAAC,GAAD,EAAM,GAAN,EAAW,CAAX,CAlEG;AAmEhB,kBAAgB,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAnEA;AAoEhB,eAAa,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CApEG;AAqEhB,gBAAc,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CArEE;AAsEhB,eAAa,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAtEG;AAuEhB,0BAAwB,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAvER;AAwEhB,eAAa,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAxEG;AAyEhB,gBAAc,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAzEE;AA0EhB,eAAa,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CA1EG;AA2EhB,eAAa,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CA3EG;AA4EhB,iBAAe,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CA5EC;AA6EhB,mBAAiB,CAAC,EAAD,EAAK,GAAL,EAAU,GAAV,CA7ED;AA8EhB,kBAAgB,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CA9EA;AA+EhB,oBAAkB,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CA/EF;AAgFhB,oBAAkB,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAhFF;AAiFhB,oBAAkB,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAjFF;AAkFhB,iBAAe,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAlFC;AAmFhB,UAAQ,CAAC,CAAD,EAAI,GAAJ,EAAS,CAAT,CAnFQ;AAoFhB,eAAa,CAAC,EAAD,EAAK,GAAL,EAAU,EAAV,CApFG;AAqFhB,WAAS,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CArFO;AAsFhB,aAAW,CAAC,GAAD,EAAM,CAAN,EAAS,GAAT,CAtFK;AAuFhB,YAAU,CAAC,GAAD,EAAM,CAAN,EAAS,CAAT,CAvFM;AAwFhB,sBAAoB,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAxFJ;AAyFhB,gBAAc,CAAC,CAAD,EAAI,CAAJ,EAAO,GAAP,CAzFE;AA0FhB,kBAAgB,CAAC,GAAD,EAAM,EAAN,EAAU,GAAV,CA1FA;AA2FhB,kBAAgB,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CA3FA;AA4FhB,oBAAkB,CAAC,EAAD,EAAK,GAAL,EAAU,GAAV,CA5FF;AA6FhB,qBAAmB,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CA7FH;AA8FhB,uBAAqB,CAAC,CAAD,EAAI,GAAJ,EAAS,GAAT,CA9FL;AA+FhB,qBAAmB,CAAC,EAAD,EAAK,GAAL,EAAU,GAAV,CA/FH;AAgGhB,qBAAmB,CAAC,GAAD,EAAM,EAAN,EAAU,GAAV,CAhGH;AAiGhB,kBAAgB,CAAC,EAAD,EAAK,EAAL,EAAS,GAAT,CAjGA;AAkGhB,eAAa,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAlGG;AAmGhB,eAAa,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAnGG;AAoGhB,cAAY,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CApGI;AAqGhB,iBAAe,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CArGC;AAsGhB,UAAQ,CAAC,CAAD,EAAI,CAAJ,EAAO,GAAP,CAtGQ;AAuGhB,aAAW,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAvGK;AAwGhB,WAAS,CAAC,GAAD,EAAM,GAAN,EAAW,CAAX,CAxGO;AAyGhB,eAAa,CAAC,GAAD,EAAM,GAAN,EAAW,EAAX,CAzGG;AA0GhB,YAAU,CAAC,GAAD,EAAM,GAAN,EAAW,CAAX,CA1GM;AA2GhB,eAAa,CAAC,GAAD,EAAM,EAAN,EAAU,CAAV,CA3GG;AA4GhB,YAAU,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CA5GM;AA6GhB,mBAAiB,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CA7GD;AA8GhB,eAAa,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CA9GG;AA+GhB,mBAAiB,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CA/GD;AAgHhB,mBAAiB,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAhHD;AAiHhB,gBAAc,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAjHE;AAkHhB,eAAa,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAlHG;AAmHhB,UAAQ,CAAC,GAAD,EAAM,GAAN,EAAW,EAAX,CAnHQ;AAoHhB,UAAQ,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CApHQ;AAqHhB,UAAQ,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CArHQ;AAsHhB,gBAAc,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAtHE;AAuHhB,YAAU,CAAC,GAAD,EAAM,CAAN,EAAS,GAAT,CAvHM;AAwHhB,mBAAiB,CAAC,GAAD,EAAM,EAAN,EAAU,GAAV,CAxHD;AAyHhB,SAAO,CAAC,GAAD,EAAM,CAAN,EAAS,CAAT,CAzHS;AA0HhB,eAAa,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CA1HG;AA2HhB,eAAa,CAAC,EAAD,EAAK,GAAL,EAAU,GAAV,CA3HG;AA4HhB,iBAAe,CAAC,GAAD,EAAM,EAAN,EAAU,EAAV,CA5HC;AA6HhB,YAAU,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CA7HM;AA8HhB,gBAAc,CAAC,GAAD,EAAM,GAAN,EAAW,EAAX,CA9HE;AA+HhB,cAAY,CAAC,EAAD,EAAK,GAAL,EAAU,EAAV,CA/HI;AAgIhB,cAAY,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAhII;AAiIhB,YAAU,CAAC,GAAD,EAAM,EAAN,EAAU,EAAV,CAjIM;AAkIhB,YAAU,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAlIM;AAmIhB,aAAW,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAnIK;AAoIhB,eAAa,CAAC,GAAD,EAAM,EAAN,EAAU,GAAV,CApIG;AAqIhB,eAAa,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CArIG;AAsIhB,eAAa,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAtIG;AAuIhB,UAAQ,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAvIQ;AAwIhB,iBAAe,CAAC,CAAD,EAAI,GAAJ,EAAS,GAAT,CAxIC;AAyIhB,eAAa,CAAC,EAAD,EAAK,GAAL,EAAU,GAAV,CAzIG;AA0IhB,SAAO,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CA1IS;AA2IhB,UAAQ,CAAC,CAAD,EAAI,GAAJ,EAAS,GAAT,CA3IQ;AA4IhB,aAAW,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CA5IK;AA6IhB,YAAU,CAAC,GAAD,EAAM,EAAN,EAAU,EAAV,CA7IM;AA8IhB,eAAa,CAAC,EAAD,EAAK,GAAL,EAAU,GAAV,CA9IG;AA+IhB,YAAU,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CA/IM;AAgJhB,WAAS,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAhJO;AAiJhB,WAAS,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAjJO;AAkJhB,gBAAc,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAlJE;AAmJhB,YAAU,CAAC,GAAD,EAAM,GAAN,EAAW,CAAX,CAnJM;AAoJhB,iBAAe,CAAC,GAAD,EAAM,GAAN,EAAW,EAAX;AApJC,CAAjB,C;;;;;;;;;;;;ACFA;;;;;;;;AASa;;;;AAIb,IAAIsO,IAAJ,EAA2C;AACzC,GAAC,YAAW;AACd,iBADc,CAGd;AACA;;AACA,QAAIC,SAAS,GAAG,OAAOC,MAAP,KAAkB,UAAlB,IAAgCA,MAAM,CAACC,GAAvD;AACA,QAAIC,kBAAkB,GAAGH,SAAS,GAAGC,MAAM,CAACC,GAAP,CAAW,eAAX,CAAH,GAAiC,MAAnE;AACA,QAAIE,iBAAiB,GAAGJ,SAAS,GAAGC,MAAM,CAACC,GAAP,CAAW,cAAX,CAAH,GAAgC,MAAjE;AACA,QAAIG,mBAAmB,GAAGL,SAAS,GAAGC,MAAM,CAACC,GAAP,CAAW,gBAAX,CAAH,GAAkC,MAArE;AACA,QAAII,sBAAsB,GAAGN,SAAS,GAAGC,MAAM,CAACC,GAAP,CAAW,mBAAX,CAAH,GAAqC,MAA3E;AACA,QAAIK,mBAAmB,GAAGP,SAAS,GAAGC,MAAM,CAACC,GAAP,CAAW,gBAAX,CAAH,GAAkC,MAArE;AACA,QAAIM,mBAAmB,GAAGR,SAAS,GAAGC,MAAM,CAACC,GAAP,CAAW,gBAAX,CAAH,GAAkC,MAArE;AACA,QAAIO,kBAAkB,GAAGT,SAAS,GAAGC,MAAM,CAACC,GAAP,CAAW,eAAX,CAAH,GAAiC,MAAnE,CAZc,CAY6D;AAC3E;;AAEA,QAAIQ,qBAAqB,GAAGV,SAAS,GAAGC,MAAM,CAACC,GAAP,CAAW,kBAAX,CAAH,GAAoC,MAAzE;AACA,QAAIS,0BAA0B,GAAGX,SAAS,GAAGC,MAAM,CAACC,GAAP,CAAW,uBAAX,CAAH,GAAyC,MAAnF;AACA,QAAIU,sBAAsB,GAAGZ,SAAS,GAAGC,MAAM,CAACC,GAAP,CAAW,mBAAX,CAAH,GAAqC,MAA3E;AACA,QAAIW,mBAAmB,GAAGb,SAAS,GAAGC,MAAM,CAACC,GAAP,CAAW,gBAAX,CAAH,GAAkC,MAArE;AACA,QAAIY,wBAAwB,GAAGd,SAAS,GAAGC,MAAM,CAACC,GAAP,CAAW,qBAAX,CAAH,GAAuC,MAA/E;AACA,QAAIa,eAAe,GAAGf,SAAS,GAAGC,MAAM,CAACC,GAAP,CAAW,YAAX,CAAH,GAA8B,MAA7D;AACA,QAAIc,eAAe,GAAGhB,SAAS,GAAGC,MAAM,CAACC,GAAP,CAAW,YAAX,CAAH,GAA8B,MAA7D;AACA,QAAIe,gBAAgB,GAAGjB,SAAS,GAAGC,MAAM,CAACC,GAAP,CAAW,aAAX,CAAH,GAA+B,MAA/D;AACA,QAAIgB,sBAAsB,GAAGlB,SAAS,GAAGC,MAAM,CAACC,GAAP,CAAW,mBAAX,CAAH,GAAqC,MAA3E;AACA,QAAIiB,oBAAoB,GAAGnB,SAAS,GAAGC,MAAM,CAACC,GAAP,CAAW,iBAAX,CAAH,GAAmC,MAAvE;AACA,QAAIkB,gBAAgB,GAAGpB,SAAS,GAAGC,MAAM,CAACC,GAAP,CAAW,aAAX,CAAH,GAA+B,MAA/D;;AAEA,aAASmB,kBAAT,CAA4BC,IAA5B,EAAkC;AAChC,aAAO,OAAOA,IAAP,KAAgB,QAAhB,IAA4B,OAAOA,IAAP,KAAgB,UAA5C,IAA0D;AACjEA,UAAI,KAAKjB,mBADF,IACyBiB,IAAI,KAAKX,0BADlC,IACgEW,IAAI,KAAKf,mBADzE,IACgGe,IAAI,KAAKhB,sBADzG,IACmIgB,IAAI,KAAKT,mBAD5I,IACmKS,IAAI,KAAKR,wBAD5K,IACwM,QAAOQ,IAAP,MAAgB,QAAhB,IAA4BA,IAAI,KAAK,IAArC,KAA8CA,IAAI,CAACC,QAAL,KAAkBP,eAAlB,IAAqCM,IAAI,CAACC,QAAL,KAAkBR,eAAvD,IAA0EO,IAAI,CAACC,QAAL,KAAkBf,mBAA5F,IAAmHc,IAAI,CAACC,QAAL,KAAkBd,kBAArI,IAA2Ja,IAAI,CAACC,QAAL,KAAkBX,sBAA7K,IAAuMU,IAAI,CAACC,QAAL,KAAkBL,sBAAzN,IAAmPI,IAAI,CAACC,QAAL,KAAkBJ,oBAArQ,IAA6RG,IAAI,CAACC,QAAL,KAAkBH,gBAA/S,IAAmUE,IAAI,CAACC,QAAL,KAAkBN,gBAAnY,CAD/M;AAED;;AAED,aAASO,MAAT,CAAgB3O,MAAhB,EAAwB;AACtB,UAAI,QAAOA,MAAP,MAAkB,QAAlB,IAA8BA,MAAM,KAAK,IAA7C,EAAmD;AACjD,YAAI0O,QAAQ,GAAG1O,MAAM,CAAC0O,QAAtB;;AAEA,gBAAQA,QAAR;AACE,eAAKpB,kBAAL;AACE,gBAAImB,IAAI,GAAGzO,MAAM,CAACyO,IAAlB;;AAEA,oBAAQA,IAAR;AACE,mBAAKZ,qBAAL;AACA,mBAAKC,0BAAL;AACA,mBAAKN,mBAAL;AACA,mBAAKE,mBAAL;AACA,mBAAKD,sBAAL;AACA,mBAAKO,mBAAL;AACE,uBAAOS,IAAP;;AAEF;AACE,oBAAIG,YAAY,GAAGH,IAAI,IAAIA,IAAI,CAACC,QAAhC;;AAEA,wBAAQE,YAAR;AACE,uBAAKhB,kBAAL;AACA,uBAAKG,sBAAL;AACA,uBAAKI,eAAL;AACA,uBAAKD,eAAL;AACA,uBAAKP,mBAAL;AACE,2BAAOiB,YAAP;;AAEF;AACE,2BAAOF,QAAP;AATJ;;AAZJ;;AA0BF,eAAKnB,iBAAL;AACE,mBAAOmB,QAAP;AA/BJ;AAiCD;;AAED,aAAOzP,SAAP;AACD,KAxEa,CAwEZ;;;AAEF,QAAI4P,SAAS,GAAGhB,qBAAhB;AACA,QAAIiB,cAAc,GAAGhB,0BAArB;AACA,QAAIiB,eAAe,GAAGnB,kBAAtB;AACA,QAAIoB,eAAe,GAAGrB,mBAAtB;AACA,QAAIsB,OAAO,GAAG3B,kBAAd;AACA,QAAI4B,UAAU,GAAGnB,sBAAjB;AACA,QAAIoB,QAAQ,GAAG3B,mBAAf;AACA,QAAI4B,IAAI,GAAGjB,eAAX;AACA,QAAIkB,IAAI,GAAGnB,eAAX;AACA,QAAIoB,MAAM,GAAG/B,iBAAb;AACA,QAAIgC,QAAQ,GAAG7B,mBAAf;AACA,QAAI8B,UAAU,GAAG/B,sBAAjB;AACA,QAAIgC,QAAQ,GAAGzB,mBAAf;AACA,QAAI0B,mCAAmC,GAAG,KAA1C,CAvFc,CAuFmC;;AAEjD,aAASC,WAAT,CAAqB3P,MAArB,EAA6B;AAC3B;AACE,YAAI,CAAC0P,mCAAL,EAA0C;AACxCA,6CAAmC,GAAG,IAAtC,CADwC,CACI;;AAE5CE,iBAAO,CAAC,MAAD,CAAP,CAAgB,0DAA0D,4DAA1D,GAAyH,gEAAzI;AACD;AACF;AAED,aAAOC,gBAAgB,CAAC7P,MAAD,CAAhB,IAA4B2O,MAAM,CAAC3O,MAAD,CAAN,KAAmB6N,qBAAtD;AACD;;AACD,aAASgC,gBAAT,CAA0B7P,MAA1B,EAAkC;AAChC,aAAO2O,MAAM,CAAC3O,MAAD,CAAN,KAAmB8N,0BAA1B;AACD;;AACD,aAASgC,iBAAT,CAA2B9P,MAA3B,EAAmC;AACjC,aAAO2O,MAAM,CAAC3O,MAAD,CAAN,KAAmB4N,kBAA1B;AACD;;AACD,aAASmC,iBAAT,CAA2B/P,MAA3B,EAAmC;AACjC,aAAO2O,MAAM,CAAC3O,MAAD,CAAN,KAAmB2N,mBAA1B;AACD;;AACD,aAASqC,SAAT,CAAmBhQ,MAAnB,EAA2B;AACzB,aAAO,QAAOA,MAAP,MAAkB,QAAlB,IAA8BA,MAAM,KAAK,IAAzC,IAAiDA,MAAM,CAAC0O,QAAP,KAAoBpB,kBAA5E;AACD;;AACD,aAAS2C,YAAT,CAAsBjQ,MAAtB,EAA8B;AAC5B,aAAO2O,MAAM,CAAC3O,MAAD,CAAN,KAAmB+N,sBAA1B;AACD;;AACD,aAASmC,UAAT,CAAoBlQ,MAApB,EAA4B;AAC1B,aAAO2O,MAAM,CAAC3O,MAAD,CAAN,KAAmBwN,mBAA1B;AACD;;AACD,aAAS2C,MAAT,CAAgBnQ,MAAhB,EAAwB;AACtB,aAAO2O,MAAM,CAAC3O,MAAD,CAAN,KAAmBmO,eAA1B;AACD;;AACD,aAASiC,MAAT,CAAgBpQ,MAAhB,EAAwB;AACtB,aAAO2O,MAAM,CAAC3O,MAAD,CAAN,KAAmBkO,eAA1B;AACD;;AACD,aAASmC,QAAT,CAAkBrQ,MAAlB,EAA0B;AACxB,aAAO2O,MAAM,CAAC3O,MAAD,CAAN,KAAmBuN,iBAA1B;AACD;;AACD,aAAS+C,UAAT,CAAoBtQ,MAApB,EAA4B;AAC1B,aAAO2O,MAAM,CAAC3O,MAAD,CAAN,KAAmB0N,mBAA1B;AACD;;AACD,aAAS6C,YAAT,CAAsBvQ,MAAtB,EAA8B;AAC5B,aAAO2O,MAAM,CAAC3O,MAAD,CAAN,KAAmByN,sBAA1B;AACD;;AACD,aAAS+C,UAAT,CAAoBxQ,MAApB,EAA4B;AAC1B,aAAO2O,MAAM,CAAC3O,MAAD,CAAN,KAAmBgO,mBAA1B;AACD;;AAEDpP,WAAO,CAACiQ,SAAR,GAAoBA,SAApB;AACAjQ,WAAO,CAACkQ,cAAR,GAAyBA,cAAzB;AACAlQ,WAAO,CAACmQ,eAAR,GAA0BA,eAA1B;AACAnQ,WAAO,CAACoQ,eAAR,GAA0BA,eAA1B;AACApQ,WAAO,CAACqQ,OAAR,GAAkBA,OAAlB;AACArQ,WAAO,CAACsQ,UAAR,GAAqBA,UAArB;AACAtQ,WAAO,CAACuQ,QAAR,GAAmBA,QAAnB;AACAvQ,WAAO,CAACwQ,IAAR,GAAeA,IAAf;AACAxQ,WAAO,CAACyQ,IAAR,GAAeA,IAAf;AACAzQ,WAAO,CAAC0Q,MAAR,GAAiBA,MAAjB;AACA1Q,WAAO,CAAC2Q,QAAR,GAAmBA,QAAnB;AACA3Q,WAAO,CAAC4Q,UAAR,GAAqBA,UAArB;AACA5Q,WAAO,CAAC6Q,QAAR,GAAmBA,QAAnB;AACA7Q,WAAO,CAAC+Q,WAAR,GAAsBA,WAAtB;AACA/Q,WAAO,CAACiR,gBAAR,GAA2BA,gBAA3B;AACAjR,WAAO,CAACkR,iBAAR,GAA4BA,iBAA5B;AACAlR,WAAO,CAACmR,iBAAR,GAA4BA,iBAA5B;AACAnR,WAAO,CAACoR,SAAR,GAAoBA,SAApB;AACApR,WAAO,CAACqR,YAAR,GAAuBA,YAAvB;AACArR,WAAO,CAACsR,UAAR,GAAqBA,UAArB;AACAtR,WAAO,CAACuR,MAAR,GAAiBA,MAAjB;AACAvR,WAAO,CAACwR,MAAR,GAAiBA,MAAjB;AACAxR,WAAO,CAACyR,QAAR,GAAmBA,QAAnB;AACAzR,WAAO,CAAC0R,UAAR,GAAqBA,UAArB;AACA1R,WAAO,CAAC2R,YAAR,GAAuBA,YAAvB;AACA3R,WAAO,CAAC4R,UAAR,GAAqBA,UAArB;AACA5R,WAAO,CAAC4P,kBAAR,GAA6BA,kBAA7B;AACA5P,WAAO,CAAC+P,MAAR,GAAiBA,MAAjB;AACG,GArKD;AAsKD,C;;;;;;;;;;;;ACpLY;;AAEb,IAAIzB,KAAJ,EAA2C,EAA3C,MAEO;AACLvO,QAAM,CAACC,OAAP,GAAiBkC,mBAAO,CAAC,0FAAD,CAAxB;AACD,C;;;;;;;;;;;;;;ACNDnC,MAAM,CAACC,OAAP,GAAiB,UAASD,MAAT,EAAiB;AACjC,MAAI,CAACA,MAAM,CAAC8R,eAAZ,EAA6B;AAC5B9R,UAAM,CAAC+R,SAAP,GAAmB,YAAW,CAAE,CAAhC;;AACA/R,UAAM,CAACgS,KAAP,GAAe,EAAf,CAF4B,CAG5B;;AACA,QAAI,CAAChS,MAAM,CAACiS,QAAZ,EAAsBjS,MAAM,CAACiS,QAAP,GAAkB,EAAlB;AACtBzQ,UAAM,CAACC,cAAP,CAAsBzB,MAAtB,EAA8B,QAA9B,EAAwC;AACvC2B,gBAAU,EAAE,IAD2B;AAEvCJ,SAAG,EAAE,eAAW;AACf,eAAOvB,MAAM,CAAC+H,CAAd;AACA;AAJsC,KAAxC;AAMAvG,UAAM,CAACC,cAAP,CAAsBzB,MAAtB,EAA8B,IAA9B,EAAoC;AACnC2B,gBAAU,EAAE,IADuB;AAEnCJ,SAAG,EAAE,eAAW;AACf,eAAOvB,MAAM,CAACwJ,CAAd;AACA;AAJkC,KAApC;AAMAxJ,UAAM,CAAC8R,eAAP,GAAyB,CAAzB;AACA;;AACD,SAAO9R,MAAP;AACA,CArBD,C;;;;;;;;;;;;;;;;;;;;;;ACAA;;;;;;;AAUA,IAAMkS,6BAA6B,GAAG,SAAhCA,6BAAgC,CAAC7Q,MAAD,EAAiC;AACrE,MAAM+E,IAA4B,GAAG5E,MAAM,CAAC4E,IAAP,CAAY/E,MAAZ,EAAoB8Q,IAApB,EAArC;;AAEA,MAAI3Q,MAAM,CAAC4Q,qBAAX,EAAkC;AAChC5Q,UAAM,CAAC4Q,qBAAP,CAA6B/Q,MAA7B,EAAqC2L,OAArC,CAA6C,UAAAqF,MAAM,EAAI;AACrD,UAAI7Q,MAAM,CAAC8Q,wBAAP,CAAgCjR,MAAhC,EAAwCgR,MAAxC,EAAiD1Q,UAArD,EAAiE;AAC/DyE,YAAI,CAACmM,IAAL,CAAUF,MAAV;AACD;AACF,KAJD;AAKD;;AAED,SAAOjM,IAAP;AACD,CAZD;AAcA;;;;;;;AAKO,SAASoM,oBAAT,CACLC,QADK,EAELC,MAFK,EAGLC,WAHK,EAILC,KAJK,EAKLC,IALK,EAMLC,OANK,EAWG;AAAA,MADRC,SACQ,uEADY,IACZ;AACR,MAAIjG,MAAM,GAAG,EAAb;AACA,MAAIa,OAAO,GAAG8E,QAAQ,CAACO,IAAT,EAAd;;AAEA,MAAI,CAACrF,OAAO,CAACsF,IAAb,EAAmB;AACjBnG,UAAM,IAAI4F,MAAM,CAACQ,YAAjB;AAEA,QAAMC,eAAe,GAAGR,WAAW,GAAGD,MAAM,CAACU,MAA7C;;AAEA,WAAO,CAACzF,OAAO,CAACsF,IAAhB,EAAsB;AACpB,UAAMzQ,IAAI,GAAGsQ,OAAO,CAClBnF,OAAO,CAACjM,KAAR,CAAc,CAAd,CADkB,EAElBgR,MAFkB,EAGlBS,eAHkB,EAIlBP,KAJkB,EAKlBC,IALkB,CAApB;AAOA,UAAMnR,KAAK,GAAGoR,OAAO,CACnBnF,OAAO,CAACjM,KAAR,CAAc,CAAd,CADmB,EAEnBgR,MAFmB,EAGnBS,eAHmB,EAInBP,KAJmB,EAKnBC,IALmB,CAArB;AAQA/F,YAAM,IAAIqG,eAAe,GAAG3Q,IAAlB,GAAyBuQ,SAAzB,GAAqCrR,KAA/C;AAEAiM,aAAO,GAAG8E,QAAQ,CAACO,IAAT,EAAV;;AAEA,UAAI,CAACrF,OAAO,CAACsF,IAAb,EAAmB;AACjBnG,cAAM,IAAI,MAAM4F,MAAM,CAACW,YAAvB;AACD,OAFD,MAEO,IAAI,CAACX,MAAM,CAACjL,GAAZ,EAAiB;AACtBqF,cAAM,IAAI,GAAV;AACD;AACF;;AAEDA,UAAM,IAAI4F,MAAM,CAACQ,YAAP,GAAsBP,WAAhC;AACD;;AAED,SAAO7F,MAAP;AACD;AAED;;;;;;;AAKO,SAASwG,mBAAT,CACLb,QADK,EAELC,MAFK,EAGLC,WAHK,EAILC,KAJK,EAKLC,IALK,EAMLC,OANK,EAOG;AACR,MAAIhG,MAAM,GAAG,EAAb;AACA,MAAIa,OAAO,GAAG8E,QAAQ,CAACO,IAAT,EAAd;;AAEA,MAAI,CAACrF,OAAO,CAACsF,IAAb,EAAmB;AACjBnG,UAAM,IAAI4F,MAAM,CAACQ,YAAjB;AAEA,QAAMC,eAAe,GAAGR,WAAW,GAAGD,MAAM,CAACU,MAA7C;;AAEA,WAAO,CAACzF,OAAO,CAACsF,IAAhB,EAAsB;AACpBnG,YAAM,IACJqG,eAAe,GACfL,OAAO,CAACnF,OAAO,CAACjM,KAAT,EAAgBgR,MAAhB,EAAwBS,eAAxB,EAAyCP,KAAzC,EAAgDC,IAAhD,CAFT;AAIAlF,aAAO,GAAG8E,QAAQ,CAACO,IAAT,EAAV;;AAEA,UAAI,CAACrF,OAAO,CAACsF,IAAb,EAAmB;AACjBnG,cAAM,IAAI,MAAM4F,MAAM,CAACW,YAAvB;AACD,OAFD,MAEO,IAAI,CAACX,MAAM,CAACjL,GAAZ,EAAiB;AACtBqF,cAAM,IAAI,GAAV;AACD;AACF;;AAEDA,UAAM,IAAI4F,MAAM,CAACQ,YAAP,GAAsBP,WAAhC;AACD;;AAED,SAAO7F,MAAP;AACD;AAED;;;;;;;AAKO,SAASyG,cAAT,CACLC,IADK,EAELd,MAFK,EAGLC,WAHK,EAILC,KAJK,EAKLC,IALK,EAMLC,OANK,EAOG;AACR,MAAIhG,MAAM,GAAG,EAAb;;AAEA,MAAI0G,IAAI,CAAChM,MAAT,EAAiB;AACfsF,UAAM,IAAI4F,MAAM,CAACQ,YAAjB;AAEA,QAAMC,eAAe,GAAGR,WAAW,GAAGD,MAAM,CAACU,MAA7C;;AAEA,SAAK,IAAI5J,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGgK,IAAI,CAAChM,MAAzB,EAAiCgC,CAAC,EAAlC,EAAsC;AACpCsD,YAAM,IACJqG,eAAe,GACfL,OAAO,CAACU,IAAI,CAAChK,CAAD,CAAL,EAAUkJ,MAAV,EAAkBS,eAAlB,EAAmCP,KAAnC,EAA0CC,IAA1C,CAFT;;AAIA,UAAIrJ,CAAC,GAAGgK,IAAI,CAAChM,MAAL,GAAc,CAAtB,EAAyB;AACvBsF,cAAM,IAAI,MAAM4F,MAAM,CAACW,YAAvB;AACD,OAFD,MAEO,IAAI,CAACX,MAAM,CAACjL,GAAZ,EAAiB;AACtBqF,cAAM,IAAI,GAAV;AACD;AACF;;AAEDA,UAAM,IAAI4F,MAAM,CAACQ,YAAP,GAAsBP,WAAhC;AACD;;AAED,SAAO7F,MAAP;AACD;AAED;;;;;;;AAKO,SAAS2G,qBAAT,CACLnK,GADK,EAELoJ,MAFK,EAGLC,WAHK,EAILC,KAJK,EAKLC,IALK,EAMLC,OANK,EAOG;AACR,MAAIhG,MAAM,GAAG,EAAb;AACA,MAAM1G,IAAI,GAAG8L,6BAA6B,CAAC5I,GAAD,CAA1C;;AAEA,MAAIlD,IAAI,CAACoB,MAAT,EAAiB;AACfsF,UAAM,IAAI4F,MAAM,CAACQ,YAAjB;AAEA,QAAMC,eAAe,GAAGR,WAAW,GAAGD,MAAM,CAACU,MAA7C;;AAEA,SAAK,IAAI5J,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGpD,IAAI,CAACoB,MAAzB,EAAiCgC,CAAC,EAAlC,EAAsC;AACpC,UAAMnD,GAAG,GAAGD,IAAI,CAACoD,CAAD,CAAhB;AACA,UAAMhH,IAAI,GAAGsQ,OAAO,CAACzM,GAAD,EAAMqM,MAAN,EAAcS,eAAd,EAA+BP,KAA/B,EAAsCC,IAAtC,CAApB;AACA,UAAMnR,KAAK,GAAGoR,OAAO,CAACxJ,GAAG,CAACjD,GAAD,CAAJ,EAAWqM,MAAX,EAAmBS,eAAnB,EAAoCP,KAApC,EAA2CC,IAA3C,CAArB;AAEA/F,YAAM,IAAIqG,eAAe,GAAG3Q,IAAlB,GAAyB,IAAzB,GAAgCd,KAA1C;;AAEA,UAAI8H,CAAC,GAAGpD,IAAI,CAACoB,MAAL,GAAc,CAAtB,EAAyB;AACvBsF,cAAM,IAAI,MAAM4F,MAAM,CAACW,YAAvB;AACD,OAFD,MAEO,IAAI,CAACX,MAAM,CAACjL,GAAZ,EAAiB;AACtBqF,cAAM,IAAI,GAAV;AACD;AACF;;AAEDA,UAAM,IAAI4F,MAAM,CAACQ,YAAP,GAAsBP,WAAhC;AACD;;AAED,SAAO7F,MAAP;AACD,C;;;;;;;;;;;;;;;;AC9LD;;AAOA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,IAAMtB,QAAQ,GAAGhK,MAAM,CAACkS,SAAP,CAAiBlI,QAAlC;AACA,IAAMmI,WAAW,GAAGC,IAAI,CAACF,SAAL,CAAeC,WAAnC;AACA,IAAME,aAAa,GAAGtM,KAAK,CAACmM,SAAN,CAAgBlI,QAAtC;AACA,IAAMsI,cAAc,GAAGzT,MAAM,CAACqT,SAAP,CAAiBlI,QAAxC;AAEA;;;;;AAIA,IAAMuI,kBAAkB,GAAG,SAArBA,kBAAqB,CAACzK,GAAD;AAAA,SACxB,OAAOA,GAAG,CAAC0K,WAAX,KAA2B,UAA3B,IAAyC1K,GAAG,CAAC0K,WAAJ,CAAgBxR,IAA1D,IAAmE,QAD1C;AAAA,CAA3B;AAGA;;AACA;;;AACA,IAAMyR,QAAQ,GAAG,SAAXA,QAAW,CAAC3K,GAAD;AAAA,SAAc,OAAO4K,MAAP,KAAkB,WAAlB,IAAiC5K,GAAG,KAAK4K,MAAvD;AAAA,CAAjB;;AAEA,IAAMC,aAAa,GAAG,sBAAtB;AACA,IAAMC,cAAc,GAAG,MAAvB;;IAEMC,uB;;;;;AACJ,mCAAYC,OAAZ,EAA6BC,KAA7B,EAA4C;AAAA;;AAAA;;AAC1C,8BAAMD,OAAN;AACA,UAAKC,KAAL,GAAaA,KAAb;AACA,UAAK/R,IAAL,GAAY,MAAKwR,WAAL,CAAiBxR,IAA7B;AAH0C;AAI3C;;;iCALmC+E,K;;AAQtC,SAASiN,qBAAT,CAA+BC,UAA/B,EAA4D;AAC1D,SACEA,UAAU,KAAK,gBAAf,IACAA,UAAU,KAAK,sBADf,IAEAA,UAAU,KAAK,mBAFf,IAGAA,UAAU,KAAK,uBAHf,IAIAA,UAAU,KAAK,uBAJf,IAKAA,UAAU,KAAK,oBALf,IAMAA,UAAU,KAAK,qBANf,IAOAA,UAAU,KAAK,qBAPf,IAQAA,UAAU,KAAK,qBARf,IASAA,UAAU,KAAK,4BATf,IAUAA,UAAU,KAAK,sBAVf,IAWAA,UAAU,KAAK,sBAZjB;AAcD;;AAED,SAASC,WAAT,CAAqBpL,GAArB,EAA0C;AACxC,SAAO9H,MAAM,CAACmT,EAAP,CAAUrL,GAAV,EAAe,CAAC,CAAhB,IAAqB,IAArB,GAA4BsL,MAAM,CAACtL,GAAD,CAAzC;AACD;;AAED,SAASuL,WAAT,CAAqBvL,GAArB,EAA0C;AACxC,SAAOsL,MAAM,WAAItL,GAAJ,OAAb;AACD;;AAED,SAASwL,aAAT,CAAuBxL,GAAvB,EAAsCyL,iBAAtC,EAA0E;AACxE,MAAI,CAACA,iBAAL,EAAwB;AACtB,WAAO,YAAP;AACD;;AACD,SAAO,gBAAgBzL,GAAG,CAAC9G,IAAJ,IAAY,WAA5B,IAA2C,GAAlD;AACD;;AAED,SAASwS,WAAT,CAAqB1L,GAArB,EAA0C;AACxC,SAAOsL,MAAM,CAACtL,GAAD,CAAN,CAAY2L,OAAZ,CAAoBd,aAApB,EAAmC,YAAnC,CAAP;AACD;;AAED,SAASe,UAAT,CAAoB5L,GAApB,EAAwC;AACtC,SAAO,MAAMuK,aAAa,CAACsB,IAAd,CAAmB7L,GAAnB,CAAN,GAAgC,GAAvC;AACD;AAED;;;;;;AAIA,SAAS8L,eAAT,CACE9L,GADF,EAEEyL,iBAFF,EAGEM,WAHF,EAIEC,YAJF,EAKiB;AACf,MAAIhM,GAAG,KAAK,IAAR,IAAgBA,GAAG,KAAK,KAA5B,EAAmC;AACjC,WAAO,KAAKA,GAAZ;AACD;;AACD,MAAIA,GAAG,KAAKhJ,SAAZ,EAAuB;AACrB,WAAO,WAAP;AACD;;AACD,MAAIgJ,GAAG,KAAK,IAAZ,EAAkB;AAChB,WAAO,MAAP;AACD;;AAED,MAAM0G,MAAM,WAAU1G,GAAV,CAAZ;;AAEA,MAAI0G,MAAM,KAAK,QAAf,EAAyB;AACvB,WAAO0E,WAAW,CAACpL,GAAD,CAAlB;AACD;;AACD,MAAI0G,MAAM,KAAK,QAAf,EAAyB;AACvB,WAAO6E,WAAW,CAACvL,GAAD,CAAlB;AACD;;AACD,MAAI0G,MAAM,KAAK,QAAf,EAAyB;AACvB,QAAIsF,YAAJ,EAAkB;AAChB,aAAO,MAAMhM,GAAG,CAAC2L,OAAJ,CAAY,OAAZ,EAAqB,MAArB,CAAN,GAAqC,GAA5C;AACD;;AACD,WAAO,MAAM3L,GAAN,GAAY,GAAnB;AACD;;AACD,MAAI0G,MAAM,KAAK,UAAf,EAA2B;AACzB,WAAO8E,aAAa,CAACxL,GAAD,EAAMyL,iBAAN,CAApB;AACD;;AACD,MAAI/E,MAAM,KAAK,QAAf,EAAyB;AACvB,WAAOgF,WAAW,CAAC1L,GAAD,CAAlB;AACD;;AAED,MAAMmL,UAAU,GAAGjJ,QAAQ,CAAC2J,IAAT,CAAc7L,GAAd,CAAnB;;AAEA,MAAImL,UAAU,KAAK,kBAAnB,EAAuC;AACrC,WAAO,YAAP;AACD;;AACD,MAAIA,UAAU,KAAK,kBAAnB,EAAuC;AACrC,WAAO,YAAP;AACD;;AACD,MACEA,UAAU,KAAK,mBAAf,IACAA,UAAU,KAAK,4BAFjB,EAGE;AACA,WAAOK,aAAa,CAACxL,GAAD,EAAMyL,iBAAN,CAApB;AACD;;AACD,MAAIN,UAAU,KAAK,iBAAnB,EAAsC;AACpC,WAAOO,WAAW,CAAC1L,GAAD,CAAlB;AACD;;AACD,MAAImL,UAAU,KAAK,eAAnB,EAAoC;AAClC,WAAOc,KAAK,CAAC,CAACjM,GAAF,CAAL,GAAc,cAAd,GAA+BqK,WAAW,CAACwB,IAAZ,CAAiB7L,GAAjB,CAAtC;AACD;;AACD,MAAImL,UAAU,KAAK,gBAAnB,EAAqC;AACnC,WAAOS,UAAU,CAAC5L,GAAD,CAAjB;AACD;;AACD,MAAImL,UAAU,KAAK,iBAAnB,EAAsC;AACpC,QAAIY,WAAJ,EAAiB;AACf;AACA,aAAOvB,cAAc,CAACqB,IAAf,CAAoB7L,GAApB,EAAyB2L,OAAzB,CAAiC,qBAAjC,EAAwD,MAAxD,CAAP;AACD;;AACD,WAAOnB,cAAc,CAACqB,IAAf,CAAoB7L,GAApB,CAAP;AACD;;AAED,MAAIA,GAAG,YAAY/B,KAAnB,EAA0B;AACxB,WAAO2N,UAAU,CAAC5L,GAAD,CAAjB;AACD;;AAED,SAAO,IAAP;AACD;AAED;;;;;;AAIA,SAASkM,iBAAT,CACElM,GADF,EAEEoJ,MAFF,EAGEC,WAHF,EAIEC,KAJF,EAKEC,IALF,EAME4C,eANF,EAOU;AACR,MAAI5C,IAAI,CAAC6C,OAAL,CAAapM,GAAb,MAAsB,CAAC,CAA3B,EAA8B;AAC5B,WAAO,YAAP;AACD;;AACDuJ,MAAI,GAAGA,IAAI,CAAC8C,KAAL,EAAP;AACA9C,MAAI,CAACN,IAAL,CAAUjJ,GAAV;AAEA,MAAMsM,WAAW,GAAG,EAAEhD,KAAF,GAAUF,MAAM,CAACmD,QAArC;AACA,MAAMpO,GAAG,GAAGiL,MAAM,CAACjL,GAAnB;;AAEA,MACEiL,MAAM,CAACoD,UAAP,IACA,CAACF,WADD,IAEAtM,GAAG,CAACyM,MAFJ,IAGA,OAAOzM,GAAG,CAACyM,MAAX,KAAsB,UAHtB,IAIA,CAACN,eALH,EAME;AACA,WAAO3C,OAAO,CAACxJ,GAAG,CAACyM,MAAJ,EAAD,EAAerD,MAAf,EAAuBC,WAAvB,EAAoCC,KAApC,EAA2CC,IAA3C,EAAiD,IAAjD,CAAd;AACD;;AAED,MAAM4B,UAAU,GAAGjJ,QAAQ,CAAC2J,IAAT,CAAc7L,GAAd,CAAnB;;AACA,MAAImL,UAAU,KAAK,oBAAnB,EAAyC;AACvC,WAAOmB,WAAW,GACd,aADc,GAEd,CAACnO,GAAG,GAAG,EAAH,GAAQ,YAAZ,IACE,GADF,GAEE,iCAAe6B,GAAf,EAAoBoJ,MAApB,EAA4BC,WAA5B,EAAyCC,KAAzC,EAAgDC,IAAhD,EAAsDC,OAAtD,CAFF,GAGE,GALN;AAMD;;AACD,MAAI0B,qBAAqB,CAACC,UAAD,CAAzB,EAAuC;AACrC,WAAOmB,WAAW,GACd,MAAMtM,GAAG,CAAC0K,WAAJ,CAAgBxR,IAAtB,GAA6B,GADf,GAEd,CAACiF,GAAG,GAAG,EAAH,GAAQ6B,GAAG,CAAC0K,WAAJ,CAAgBxR,IAAhB,GAAuB,GAAnC,IACE,GADF,GAEE,iCAAe8G,GAAf,EAAoBoJ,MAApB,EAA4BC,WAA5B,EAAyCC,KAAzC,EAAgDC,IAAhD,EAAsDC,OAAtD,CAFF,GAGE,GALN;AAMD;;AACD,MAAI2B,UAAU,KAAK,cAAnB,EAAmC;AACjC,WAAOmB,WAAW,GACd,OADc,GAEd,UACE,uCACEtM,GAAG,CAACjH,OAAJ,EADF,EAEEqQ,MAFF,EAGEC,WAHF,EAIEC,KAJF,EAKEC,IALF,EAMEC,OANF,EAOE,MAPF,CADF,GAUE,GAZN;AAaD;;AACD,MAAI2B,UAAU,KAAK,cAAnB,EAAmC;AACjC,WAAOmB,WAAW,GACd,OADc,GAEd,UACE,sCACEtM,GAAG,CAAC0M,MAAJ,EADF,EAEEtD,MAFF,EAGEC,WAHF,EAIEC,KAJF,EAKEC,IALF,EAMEC,OANF,CADF,GASE,GAXN;AAYD,GAjEO,CAmER;AACA;;;AACA,SAAO8C,WAAW,IAAI3B,QAAQ,CAAC3K,GAAD,CAAvB,GACH,MAAMyK,kBAAkB,CAACzK,GAAD,CAAxB,GAAgC,GAD7B,GAEH,CAAC7B,GAAG,GAAG,EAAH,GAAQsM,kBAAkB,CAACzK,GAAD,CAAlB,GAA0B,GAAtC,IACE,GADF,GAEE,wCAAsBA,GAAtB,EAA2BoJ,MAA3B,EAAmCC,WAAnC,EAAgDC,KAAhD,EAAuDC,IAAvD,EAA6DC,OAA7D,CAFF,GAGE,GALN;AAMD;;AAED,SAASmD,WAAT,CACEC,MADF,EAEoC;AAClC,SAAQA,MAAD,CAAmCC,SAAnC,IAAgD,IAAvD;AACD;;AAED,SAASC,WAAT,CACEF,MADF,EAEE5M,GAFF,EAGEoJ,MAHF,EAIEC,WAJF,EAKEC,KALF,EAMEC,IANF,EAOU;AACR,MAAIwD,OAAJ;;AAEA,MAAI;AACFA,WAAO,GAAGJ,WAAW,CAACC,MAAD,CAAX,GACNA,MAAM,CAACC,SAAP,CAAiB7M,GAAjB,EAAsBoJ,MAAtB,EAA8BC,WAA9B,EAA2CC,KAA3C,EAAkDC,IAAlD,EAAwDC,OAAxD,CADM,GAENoD,MAAM,CAACI,KAAP,CACEhN,GADF,EAEE,UAAAiN,QAAQ;AAAA,aAAIzD,OAAO,CAACyD,QAAD,EAAW7D,MAAX,EAAmBC,WAAnB,EAAgCC,KAAhC,EAAuCC,IAAvC,CAAX;AAAA,KAFV,EAGE,UAAA2D,GAAG,EAAI;AACL,UAAMrD,eAAe,GAAGR,WAAW,GAAGD,MAAM,CAACU,MAA7C;AACA,aACED,eAAe,GACfqD,GAAG,CAACvB,OAAJ,CAAYb,cAAZ,EAA4B,OAAOjB,eAAnC,CAFF;AAID,KATH,EAUE;AACEsD,iBAAW,EAAE/D,MAAM,CAACQ,YADtB;AAEEzL,SAAG,EAAEiL,MAAM,CAACjL,GAFd;AAGEiP,aAAO,EAAEhE,MAAM,CAACW;AAHlB,KAVF,EAeEX,MAAM,CAACiE,MAfT,CAFJ;AAmBD,GApBD,CAoBE,OAAOC,KAAP,EAAc;AACd,UAAM,IAAIvC,uBAAJ,CAA4BuC,KAAK,CAACtC,OAAlC,EAA2CsC,KAAK,CAACrC,KAAjD,CAAN;AACD;;AACD,MAAI,OAAO8B,OAAP,KAAmB,QAAvB,EAAiC;AAC/B,UAAM,IAAI9O,KAAJ,4FAC4E8O,OAD5E,UAAN;AAGD;;AACD,SAAOA,OAAP;AACD;;AAED,SAASQ,UAAT,CAAoBC,OAApB,EAAmDxN,GAAnD,EAA6D;AAC3D,OAAK,IAAIS,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAG+M,OAAO,CAACtP,MAA5B,EAAoCuC,CAAC,EAArC,EAAyC;AACvC,QAAI;AACF,UAAI+M,OAAO,CAAC/M,CAAD,CAAP,CAAWgN,IAAX,CAAgBzN,GAAhB,CAAJ,EAA0B;AACxB,eAAOwN,OAAO,CAAC/M,CAAD,CAAd;AACD;AACF,KAJD,CAIE,OAAO6M,KAAP,EAAc;AACd,YAAM,IAAIvC,uBAAJ,CAA4BuC,KAAK,CAACtC,OAAlC,EAA2CsC,KAAK,CAACrC,KAAjD,CAAN;AACD;AACF;;AAED,SAAO,IAAP;AACD;;AAED,SAASzB,OAAT,CACExJ,GADF,EAEEoJ,MAFF,EAGEC,WAHF,EAIEC,KAJF,EAKEC,IALF,EAME4C,eANF,EAOU;AACR,MAAMS,MAAM,GAAGW,UAAU,CAACnE,MAAM,CAACoE,OAAR,EAAiBxN,GAAjB,CAAzB;;AACA,MAAI4M,MAAM,KAAK,IAAf,EAAqB;AACnB,WAAOE,WAAW,CAACF,MAAD,EAAS5M,GAAT,EAAcoJ,MAAd,EAAsBC,WAAtB,EAAmCC,KAAnC,EAA0CC,IAA1C,CAAlB;AACD;;AAED,MAAMmE,WAAW,GAAG5B,eAAe,CACjC9L,GADiC,EAEjCoJ,MAAM,CAACqC,iBAF0B,EAGjCrC,MAAM,CAAC2C,WAH0B,EAIjC3C,MAAM,CAAC4C,YAJ0B,CAAnC;;AAMA,MAAI0B,WAAW,KAAK,IAApB,EAA0B;AACxB,WAAOA,WAAP;AACD;;AAED,SAAOxB,iBAAiB,CACtBlM,GADsB,EAEtBoJ,MAFsB,EAGtBC,WAHsB,EAItBC,KAJsB,EAKtBC,IALsB,EAMtB4C,eANsB,CAAxB;AAQD;;AAED,IAAMwB,aAAiC,GAAG;AACxCC,SAAO,EAAE,MAD+B;AAExCC,SAAO,EAAE,OAF+B;AAGxCC,MAAI,EAAE,QAHkC;AAIxCC,KAAG,EAAE,MAJmC;AAKxC3V,OAAK,EAAE;AALiC,CAA1C;AAQA,IAAM4V,kBAAkB,GAAG9V,MAAM,CAAC4E,IAAP,CAAY6Q,aAAZ,CAA3B;AAIA,IAAMM,eAAqC,GAAG;AAC5CzB,YAAU,EAAE,IADgC;AAE5CT,aAAW,EAAE,KAF+B;AAG5CC,cAAY,EAAE,IAH8B;AAI5CkC,WAAS,EAAE,KAJiC;AAK5CpE,QAAM,EAAE,CALoC;AAM5CyC,UAAQ,EAAE9M,QANkC;AAO5CtB,KAAG,EAAE,KAPuC;AAQ5CqP,SAAO,EAAE,EARmC;AAS5C/B,mBAAiB,EAAE,IATyB;AAU5C0C,OAAK,EAAER;AAVqC,CAA9C;;AAaA,SAASS,eAAT,CAAyBC,OAAzB,EAAgE;AAC9DnW,QAAM,CAAC4E,IAAP,CAAYuR,OAAZ,EAAqB3K,OAArB,CAA6B,UAAA3G,GAAG,EAAI;AAClC,QAAI,CAACkR,eAAe,CAACK,cAAhB,CAA+BvR,GAA/B,CAAL,EAA0C;AACxC,YAAM,IAAIkB,KAAJ,2CAA4ClB,GAA5C,SAAN;AACD;AACF,GAJD;;AAMA,MAAIsR,OAAO,CAAClQ,GAAR,IAAekQ,OAAO,CAACvE,MAAR,KAAmB9S,SAAlC,IAA+CqX,OAAO,CAACvE,MAAR,KAAmB,CAAtE,EAAyE;AACvE,UAAM,IAAI7L,KAAJ,CACJ,oEADI,CAAN;AAGD;;AAED,MAAIoQ,OAAO,CAACF,KAAR,KAAkBnX,SAAtB,EAAiC;AAC/B,QAAIqX,OAAO,CAACF,KAAR,KAAkB,IAAtB,EAA4B;AAC1B,YAAM,IAAIlQ,KAAJ,qDAAN;AACD;;AAED,QAAI,QAAOoQ,OAAO,CAACF,KAAf,MAAyB,QAA7B,EAAuC;AACrC,YAAM,IAAIlQ,KAAJ,qGACmFoQ,OAAO,CAACF,KAD3F,UAAN;AAGD;AACF;AACF;;AAED,IAAMI,kBAAkB,GAAG,SAArBA,kBAAqB,CACzBF,OADyB;AAAA,SAGzBL,kBAAkB,CAACQ,MAAnB,CAA0B,UAACnB,MAAD,EAAStQ,GAAT,EAAiB;AACzC,QAAM3E,KAAK,GACTiW,OAAO,CAACF,KAAR,IAAiBE,OAAO,CAACF,KAAR,CAAcpR,GAAd,MAAuB/F,SAAxC,GACIqX,OAAO,CAACF,KAAR,CAAcpR,GAAd,CADJ,GAEI4Q,aAAa,CAAC5Q,GAAD,CAHnB;AAIA,QAAMhD,KAAK,GAAG3B,KAAK,IAAKoE,mBAAD,CAAepE,KAAf,CAAvB;;AACA,QACE2B,KAAK,IACL,OAAOA,KAAK,CAAC2C,KAAb,KAAuB,QADvB,IAEA,OAAO3C,KAAK,CAAC0C,IAAb,KAAsB,QAHxB,EAIE;AACA4Q,YAAM,CAACtQ,GAAD,CAAN,GAAchD,KAAd;AACD,KAND,MAMO;AACL,YAAM,IAAIkE,KAAJ,uDACwClB,GADxC,8BAC6D3E,KAD7D,qCAAN;AAGD;;AACD,WAAOiV,MAAP;AACD,GAlBD,EAkBGnV,MAAM,CAACuW,MAAP,CAAc,IAAd,CAlBH,CAHyB;AAAA,CAA3B;;AAuBA,IAAMC,cAAc,GAAG,SAAjBA,cAAiB;AAAA,SACrBV,kBAAkB,CAACQ,MAAnB,CAA0B,UAACnB,MAAD,EAAStQ,GAAT,EAAiB;AACzCsQ,UAAM,CAACtQ,GAAD,CAAN,GAAc;AAACL,WAAK,EAAE,EAAR;AAAYD,UAAI,EAAE;AAAlB,KAAd;AACA,WAAO4Q,MAAP;AACD,GAHD,EAGGnV,MAAM,CAACuW,MAAP,CAAc,IAAd,CAHH,CADqB;AAAA,CAAvB;;AAMA,IAAME,oBAAoB,GAAG,SAAvBA,oBAAuB,CAACN,OAAD;AAAA,SAC3BA,OAAO,IAAIA,OAAO,CAAC5C,iBAAR,KAA8BzU,SAAzC,GACIqX,OAAO,CAAC5C,iBADZ,GAEIwC,eAAe,CAACxC,iBAHO;AAAA,CAA7B;;AAKA,IAAMmD,cAAc,GAAG,SAAjBA,cAAiB,CAACP,OAAD;AAAA,SACrBA,OAAO,IAAIA,OAAO,CAACtC,WAAR,KAAwB/U,SAAnC,GACIqX,OAAO,CAACtC,WADZ,GAEIkC,eAAe,CAAClC,WAHC;AAAA,CAAvB;;AAKA,IAAM8C,eAAe,GAAG,SAAlBA,eAAkB,CAACR,OAAD;AAAA,SACtBA,OAAO,IAAIA,OAAO,CAACrC,YAAR,KAAyBhV,SAApC,GACIqX,OAAO,CAACrC,YADZ,GAEIiC,eAAe,CAACjC,YAHE;AAAA,CAAxB;;AAKA,IAAM8C,SAAS,GAAG,SAAZA,SAAY,CAChBT,OADgB;AAAA,SAES;AACzB7B,cAAU,EACR6B,OAAO,IAAIA,OAAO,CAAC7B,UAAR,KAAuBxV,SAAlC,GACIqX,OAAO,CAAC7B,UADZ,GAEIyB,eAAe,CAACzB,UAJG;AAKzBa,UAAM,EACJgB,OAAO,IAAIA,OAAO,CAACH,SAAnB,GACIK,kBAAkB,CAACF,OAAD,CADtB,GAEIK,cAAc,EARK;AASzB3C,eAAW,EAAE6C,cAAc,CAACP,OAAD,CATF;AAUzBrC,gBAAY,EAAE6C,eAAe,CAACR,OAAD,CAVJ;AAWzBvE,UAAM,EACJuE,OAAO,IAAIA,OAAO,CAAClQ,GAAnB,GACI,EADJ,GAEI4Q,YAAY,CACVV,OAAO,IAAIA,OAAO,CAACvE,MAAR,KAAmB9S,SAA9B,GACIqX,OAAO,CAACvE,MADZ,GAEImE,eAAe,CAACnE,MAHV,CAdO;AAmBzByC,YAAQ,EACN8B,OAAO,IAAIA,OAAO,CAAC9B,QAAR,KAAqBvV,SAAhC,GACIqX,OAAO,CAAC9B,QADZ,GAEI0B,eAAe,CAAC1B,QAtBG;AAuBzBpO,OAAG,EAAEkQ,OAAO,IAAIA,OAAO,CAAClQ,GAAR,KAAgBnH,SAA3B,GAAuCqX,OAAO,CAAClQ,GAA/C,GAAqD8P,eAAe,CAAC9P,GAvBjD;AAwBzBqP,WAAO,EACLa,OAAO,IAAIA,OAAO,CAACb,OAAR,KAAoBxW,SAA/B,GACIqX,OAAO,CAACb,OADZ,GAEIS,eAAe,CAACT,OA3BG;AA4BzB/B,qBAAiB,EAAEkD,oBAAoB,CAACN,OAAD,CA5Bd;AA6BzBtE,gBAAY,EAAEsE,OAAO,IAAIA,OAAO,CAAClQ,GAAnB,GAAyB,GAAzB,GAA+B,IA7BpB;AA8BzByL,gBAAY,EAAEyE,OAAO,IAAIA,OAAO,CAAClQ,GAAnB,GAAyB,EAAzB,GAA8B;AA9BnB,GAFT;AAAA,CAAlB;;AAmCA,SAAS4Q,YAAT,CAAsBjF,MAAtB,EAA8C;AAC5C,SAAO,IAAIkF,KAAJ,CAAUlF,MAAM,GAAG,CAAnB,EAAsBhT,IAAtB,CAA2B,GAA3B,CAAP;AACD;AAED;;;;;;;AAKA,SAASmY,YAAT,CACEjP,GADF,EAEEqO,OAFF,EAGU;AACR,MAAIA,OAAJ,EAAa;AACXD,mBAAe,CAACC,OAAD,CAAf;;AACA,QAAIA,OAAO,CAACb,OAAZ,EAAqB;AACnB,UAAMZ,MAAM,GAAGW,UAAU,CAACc,OAAO,CAACb,OAAT,EAAkBxN,GAAlB,CAAzB;;AACA,UAAI4M,MAAM,KAAK,IAAf,EAAqB;AACnB,eAAOE,WAAW,CAACF,MAAD,EAAS5M,GAAT,EAAc8O,SAAS,CAACT,OAAD,CAAvB,EAAkC,EAAlC,EAAsC,CAAtC,EAAyC,EAAzC,CAAlB;AACD;AACF;AACF;;AAED,MAAMX,WAAW,GAAG5B,eAAe,CACjC9L,GADiC,EAEjC2O,oBAAoB,CAACN,OAAD,CAFa,EAGjCO,cAAc,CAACP,OAAD,CAHmB,EAIjCQ,eAAe,CAACR,OAAD,CAJkB,CAAnC;;AAMA,MAAIX,WAAW,KAAK,IAApB,EAA0B;AACxB,WAAOA,WAAP;AACD;;AAED,SAAOxB,iBAAiB,CAAClM,GAAD,EAAM8O,SAAS,CAACT,OAAD,CAAf,EAA0B,EAA1B,EAA8B,CAA9B,EAAiC,EAAjC,CAAxB;AACD;;AAEDY,YAAY,CAACzB,OAAb,GAAuB;AACrB0B,mBAAiB,EAAjBA,0BADqB;AAErBC,aAAW,EAAXA,oBAFqB;AAGrBC,eAAa,EAAbA,sBAHqB;AAIrBC,YAAU,EAAVA,mBAJqB;AAKrBC,WAAS,EAATA,kBALqB;AAMrBC,cAAY,EAAZA,qBANqB;AAOrBC,oBAAkB,EAAlBA;AAPqB,CAAvB,C,CAUA;;iBAcSP,Y;;;;;;;;;;;;;;;;;;;ACthBT;;AATA;;;;;;AAWA,IAAMQ,iBAAiB,GACrB,OAAOtK,MAAP,KAAkB,UAAlB,IAAgCA,MAAM,CAACC,GAAvC,GACID,MAAM,CAACC,GAAP,CAAW,wBAAX,CADJ,GAEI,QAHN;AAIA,IAAMsK,KAAK,GAAG,GAAd;;AAEO,IAAM7C,SAAiC,GAAG,SAApCA,SAAoC,CAC/C7M,GAD+C,EAE/CoJ,MAF+C,EAG/CC,WAH+C,EAI/CC,KAJ+C,EAK/CC,IAL+C,EAM/CC,OAN+C,EAO5C;AACH,MAAMmG,aAAa,GAAG3P,GAAG,CAACkC,QAAJ,EAAtB;;AAEA,MACEyN,aAAa,KAAK,iBAAlB,IACAA,aAAa,KAAK,oBAFpB,EAGE;AACA,QAAI,EAAErG,KAAF,GAAUF,MAAM,CAACmD,QAArB,EAA+B;AAC7B,aAAO,MAAMoD,aAAN,GAAsB,GAA7B;AACD;;AACD,WACEA,aAAa,GACbD,KADA,GAEA,GAFA,GAGA,iCAAe1P,GAAG,CAAC4P,MAAnB,EAA2BxG,MAA3B,EAAmCC,WAAnC,EAAgDC,KAAhD,EAAuDC,IAAvD,EAA6DC,OAA7D,CAHA,GAIA,GALF;AAOD;;AAED,MACEmG,aAAa,KAAK,kBAAlB,IACAA,aAAa,KAAK,qBAFpB,EAGE;AACA,QAAI,EAAErG,KAAF,GAAUF,MAAM,CAACmD,QAArB,EAA+B;AAC7B,aAAO,MAAMoD,aAAN,GAAsB,GAA7B;AACD;;AACD,WACEA,aAAa,GACbD,KADA,GAEA,GAFA,GAGA,wCACE1P,GAAG,CAAC4P,MADN,EAEExG,MAFF,EAGEC,WAHF,EAIEC,KAJF,EAKEC,IALF,EAMEC,OANF,CAHA,GAWA,GAZF;AAcD;;AAED,MACEmG,aAAa,KAAK,gBAAlB,IACAA,aAAa,KAAK,mBAFpB,EAGE;AACA,WACEA,aAAa,GACbD,KADA,GAEAlG,OAAO,CAACxJ,GAAG,CAAC4P,MAAL,EAAaxG,MAAb,EAAqBC,WAArB,EAAkCC,KAAlC,EAAyCC,IAAzC,CAHT;AAKD;;AAED,MACEoG,aAAa,KAAK,kBAAlB,IACAA,aAAa,KAAK,qBAFpB,EAGE;AACA,WACEA,aAAa,GACbD,KADA,GAEAlG,OAAO,CAACxJ,GAAG,CAAC4P,MAAL,EAAaxG,MAAb,EAAqBC,WAArB,EAAkCC,KAAlC,EAAyCC,IAAzC,CAHT;AAKD;;AAED,SAAOvJ,GAAG,CAAC6P,mBAAJ,EAAP;AACD,CAxEM;;;;AA0EA,IAAMpC,IAAuB,GAAG,SAA1BA,IAA0B,CAACzN,GAAD;AAAA,SACrCA,GAAG,IAAIA,GAAG,CAACyG,QAAJ,KAAiBgJ,iBADa;AAAA,CAAhC;;;AAGP,IAAM7C,MAAiB,GAAG;AAACC,WAAS,EAATA,SAAD;AAAYY,MAAI,EAAJA;AAAZ,CAA1B;eAEeb,M;;;;;;;;;;;;;;;;;;;;;;;;;;AChGf;;;;;;AAWA,IAAMkD,mBAAmB,GAAG,SAAtBA,mBAAsB,CAACC,IAAD;AAAA,SAC1BA,IAAI,CAACpE,OAAL,CAAa,yBAAb,EAA0B,UAAAtJ,KAAK,EAAI;AACjC,YAAQA,KAAR;AACE,WAAK7F,oBAAMvC,GAAN,CAAUyC,KAAf;AACA,WAAKF,oBAAMtC,KAAN,CAAYwC,KAAjB;AACA,WAAKF,oBAAMlC,IAAN,CAAWoC,KAAhB;AACA,WAAKF,oBAAMP,IAAN,CAAWS,KAAhB;AACA,WAAKF,oBAAMjC,KAAN,CAAYmC,KAAjB;AACA,WAAKF,oBAAMrC,MAAN,CAAauC,KAAlB;AACA,WAAKF,oBAAMtB,KAAN,CAAYwB,KAAjB;AACA,WAAKF,oBAAMrB,OAAN,CAAcuB,KAAnB;AACA,WAAKF,oBAAMpB,QAAN,CAAesB,KAApB;AACA,WAAKF,oBAAM5C,OAAN,CAAc8C,KAAnB;AACA,WAAKF,oBAAM/C,GAAN,CAAUiD,KAAf;AACA,WAAKF,oBAAMhD,IAAN,CAAWkD,KAAhB;AACA,WAAKF,oBAAMjD,KAAN,CAAYkD,IAAjB;AACA,WAAKD,oBAAMjD,KAAN,CAAYmD,KAAjB;AACE,eAAO,KAAP;;AACF,WAAKF,oBAAMvC,GAAN,CAAUwC,IAAf;AACE,eAAO,OAAP;;AACF,WAAKD,oBAAMtC,KAAN,CAAYuC,IAAjB;AACE,eAAO,SAAP;;AACF,WAAKD,oBAAMlC,IAAN,CAAWmC,IAAhB;AACE,eAAO,QAAP;;AACF,WAAKD,oBAAMP,IAAN,CAAWQ,IAAhB;AACE,eAAO,QAAP;;AACF,WAAKD,oBAAMjC,KAAN,CAAYkC,IAAjB;AACE,eAAO,SAAP;;AACF,WAAKD,oBAAMrC,MAAN,CAAasC,IAAlB;AACE,eAAO,UAAP;;AACF,WAAKD,oBAAMtB,KAAN,CAAYuB,IAAjB;AACE,eAAO,SAAP;;AACF,WAAKD,oBAAMrB,OAAN,CAAcsB,IAAnB;AACE,eAAO,WAAP;;AACF,WAAKD,oBAAMpB,QAAN,CAAeqB,IAApB;AACE,eAAO,YAAP;;AACF,WAAKD,oBAAM5C,OAAN,CAAc6C,IAAnB;AACE,eAAO,WAAP;;AACF,WAAKD,oBAAM/C,GAAN,CAAUgD,IAAf;AACE,eAAO,OAAP;;AACF,WAAKD,oBAAMhD,IAAN,CAAWiD,IAAhB;AACE,eAAO,QAAP;;AACF;AACE,eAAO,EAAP;AAzCJ;AA2CD,GA5CD,CAD0B;AAAA,CAA5B;;AA+CO,IAAMgR,IAAuB,GAAG,SAA1BA,IAA0B,CAACzN,GAAD;AAAA,SACrC,OAAOA,GAAP,KAAe,QAAf,IAA2B,CAAC,CAACA,GAAG,CAACqC,KAAJ,CAAU,yBAAV,CADQ;AAAA,CAAhC;;;;AAGA,IAAMwK,SAAiC,GAAG,SAApCA,SAAoC,CAC/C7M,GAD+C,EAE/CoJ,MAF+C,EAG/CC,WAH+C,EAI/CC,KAJ+C,EAK/CC,IAL+C,EAM/CC,OAN+C;AAAA,SAO5CA,OAAO,CAACsG,mBAAmB,CAAC9P,GAAD,CAApB,EAA2BoJ,MAA3B,EAAmCC,WAAnC,EAAgDC,KAAhD,EAAuDC,IAAvD,CAPqC;AAAA,CAA1C;;;AASP,IAAMqD,MAAiB,GAAG;AAACC,WAAS,EAATA,SAAD;AAAYY,MAAI,EAAJA;AAAZ,CAA1B;eAEeb,M;;;;;;;;;;;;;;;;;;;;AC/Df;;;;;;;;AAEA,IAAM8C,KAAK,GAAG,GAAd;AAEA,IAAMM,YAAY,GAAG,CAAC,cAAD,EAAiB,cAAjB,CAArB;AACA,IAAMC,YAAY,GAAG,gCAArB;;AAEA,IAAMC,QAAQ,GAAG,SAAXA,QAAW,CAAChX,IAAD;AAAA,SACf8W,YAAY,CAAC5D,OAAb,CAAqBlT,IAArB,MAA+B,CAAC,CAAhC,IAAqC+W,YAAY,CAACxC,IAAb,CAAkBvU,IAAlB,CADtB;AAAA,CAAjB;;AAGO,IAAMuU,IAAuB,GAAG,SAA1BA,IAA0B,CAACzN,GAAD;AAAA,SACrCA,GAAG,IACHA,GAAG,CAAC0K,WADJ,IAEA,CAAC,CAAC1K,GAAG,CAAC0K,WAAJ,CAAgBxR,IAFlB,IAGAgX,QAAQ,CAAClQ,GAAG,CAAC0K,WAAJ,CAAgBxR,IAAjB,CAJ6B;AAAA,CAAhC;;;;AAMP,IAAMiX,cAAc,GAAG,SAAjBA,cAAiB,CAACC,UAAD;AAAA,SACrBA,UAAU,CAAC1F,WAAX,CAAuBxR,IAAvB,KAAgC,cADX;AAAA,CAAvB;;AAGO,IAAM2T,SAAiC,GAAG,SAApCA,SAAoC,CAC/CuD,UAD+C,EAE/ChH,MAF+C,EAG/CC,WAH+C,EAI/CC,KAJ+C,EAK/CC,IAL+C,EAM/CC,OAN+C,EAO5C;AACH,MAAMtQ,IAAI,GAAGkX,UAAU,CAAC1F,WAAX,CAAuBxR,IAApC;;AACA,MAAI,EAAEoQ,KAAF,GAAUF,MAAM,CAACmD,QAArB,EAA+B;AAC7B,WAAO,MAAMrT,IAAN,GAAa,GAApB;AACD;;AAED,SACE,CAACkQ,MAAM,CAACjL,GAAP,GAAa,EAAb,GAAkBjF,IAAI,GAAGwW,KAA1B,KACCM,YAAY,CAAC5D,OAAb,CAAqBlT,IAArB,MAA+B,CAAC,CAAhC,GACG,MACA,wCACEiX,cAAc,CAACC,UAAD,CAAd,GACIpB,KAAK,CAACpK,IAAN,CAAWwL,UAAX,EAAuB5B,MAAvB,CACE,UAAC6B,KAAD,EAAQC,SAAR,EAAsB;AACpBD,SAAK,CAACC,SAAS,CAACpX,IAAX,CAAL,GAAwBoX,SAAS,CAAClY,KAAlC;AACA,WAAOiY,KAAP;AACD,GAJH,EAKE,EALF,CADJ,qBAQQD,UARR,CADF,EAUEhH,MAVF,EAWEC,WAXF,EAYEC,KAZF,EAaEC,IAbF,EAcEC,OAdF,CADA,GAiBA,GAlBH,GAmBG,MACA,iCACEwF,KAAK,CAACpK,IAAN,CAAWwL,UAAX,CADF,EAEEhH,MAFF,EAGEC,WAHF,EAIEC,KAJF,EAKEC,IALF,EAMEC,OANF,CADA,GASA,GA7BJ,CADF;AAgCD,CA7CM;;;AA+CP,IAAMoD,MAAiB,GAAG;AAACC,WAAS,EAATA,SAAD;AAAYY,MAAI,EAAJA;AAAZ,CAA1B;eAEeb,M;;;;;;;;;;;;;;;;;;;;ACpEf;;AATA;;;;;;AAkBA,IAAM2D,YAAY,GAAG,CAArB;AACA,IAAMC,SAAS,GAAG,CAAlB;AACA,IAAMC,YAAY,GAAG,CAArB;AACA,IAAMC,aAAa,GAAG,EAAtB;AAEA,IAAMC,cAAc,GAAG,2BAAvB;;AAEA,IAAMC,QAAQ,GAAG,SAAXA,QAAW,CAACC,QAAD,EAAmB3X,IAAnB;AAAA,SACd2X,QAAQ,KAAKN,YAAb,IAA6BI,cAAc,CAAClD,IAAf,CAAoBvU,IAApB,CAA9B,IACC2X,QAAQ,KAAKL,SAAb,IAA0BtX,IAAI,KAAK,MADpC,IAEC2X,QAAQ,KAAKJ,YAAb,IAA6BvX,IAAI,KAAK,SAFvC,IAGC2X,QAAQ,KAAKH,aAAb,IAA8BxX,IAAI,KAAK,kBAJzB;AAAA,CAAjB;;AAMO,IAAMuU,IAAuB,GAAG,SAA1BA,IAA0B,CAACzN,GAAD;AAAA,SACrCA,GAAG,IACHA,GAAG,CAAC0K,WADJ,IAEA1K,GAAG,CAAC0K,WAAJ,CAAgBxR,IAFhB,IAGA0X,QAAQ,CAAC5Q,GAAG,CAAC6Q,QAAL,EAAe7Q,GAAG,CAAC0K,WAAJ,CAAgBxR,IAA/B,CAJ6B;AAAA,CAAhC;;;;AAQP,SAAS4X,UAAT,CAAoBrM,IAApB,EAAqD;AACnD,SAAOA,IAAI,CAACoM,QAAL,KAAkBL,SAAzB;AACD;;AAED,SAASO,aAAT,CAAuBtM,IAAvB,EAA2D;AACzD,SAAOA,IAAI,CAACoM,QAAL,KAAkBJ,YAAzB;AACD;;AAED,SAASO,cAAT,CAAwBvM,IAAxB,EAAqE;AACnE,SAAOA,IAAI,CAACoM,QAAL,KAAkBH,aAAzB;AACD;;AAEM,IAAM7D,SAAiC,GAAG,SAApCA,SAAoC,CAC/CpI,IAD+C,EAE/C2E,MAF+C,EAG/CC,WAH+C,EAI/CC,KAJ+C,EAK/CC,IAL+C,EAM/CC,OAN+C,EAO5C;AACH,MAAIsH,UAAU,CAACrM,IAAD,CAAd,EAAsB;AACpB,WAAO,uBAAUA,IAAI,CAACwM,IAAf,EAAqB7H,MAArB,CAAP;AACD;;AAED,MAAI2H,aAAa,CAACtM,IAAD,CAAjB,EAAyB;AACvB,WAAO,0BAAaA,IAAI,CAACwM,IAAlB,EAAwB7H,MAAxB,CAAP;AACD;;AAED,MAAM5C,IAAI,GAAGwK,cAAc,CAACvM,IAAD,CAAd,wBAETA,IAAI,CAACyM,OAAL,CAAaC,WAAb,EAFJ;;AAIA,MAAI,EAAE7H,KAAF,GAAUF,MAAM,CAACmD,QAArB,EAA+B;AAC7B,WAAO,gCAAmB/F,IAAnB,EAAyB4C,MAAzB,CAAP;AACD;;AAED,SAAO,0BACL5C,IADK,EAEL,wBACEwK,cAAc,CAACvM,IAAD,CAAd,GACI,EADJ,GAEIuK,KAAK,CAACpK,IAAN,CAAWH,IAAI,CAAC2M,UAAhB,EACG5O,GADH,CACO,UAAA6O,IAAI;AAAA,WAAIA,IAAI,CAACnY,IAAT;AAAA,GADX,EAEG2P,IAFH,EAHN,EAMEmI,cAAc,CAACvM,IAAD,CAAd,GACI,EADJ,GAEIuK,KAAK,CAACpK,IAAN,CAAWH,IAAI,CAAC2M,UAAhB,EAA4B5C,MAA5B,CACE,UAAC6B,KAAD,EAAQC,SAAR,EAAsB;AACpBD,SAAK,CAACC,SAAS,CAACpX,IAAX,CAAL,GAAwBoX,SAAS,CAAClY,KAAlC;AACA,WAAOiY,KAAP;AACD,GAJH,EAKE,EALF,CARN,EAeEjH,MAfF,EAgBEC,WAAW,GAAGD,MAAM,CAACU,MAhBvB,EAiBER,KAjBF,EAkBEC,IAlBF,EAmBEC,OAnBF,CAFK,EAuBL,2BACEwF,KAAK,CAAC5E,SAAN,CAAgBiC,KAAhB,CAAsBR,IAAtB,CAA2BpH,IAAI,CAAC6M,UAAL,IAAmB7M,IAAI,CAACkE,QAAnD,CADF,EAEES,MAFF,EAGEC,WAAW,GAAGD,MAAM,CAACU,MAHvB,EAIER,KAJF,EAKEC,IALF,EAMEC,OANF,CAvBK,EA+BLJ,MA/BK,EAgCLC,WAhCK,CAAP;AAkCD,CA1DM;;;AA4DP,IAAMuD,MAAiB,GAAG;AAACC,WAAS,EAATA,SAAD;AAAYY,MAAI,EAAJA;AAAZ,CAA1B;eAEeb,M;;;;;;;;;;;;;;;;;;;;ACzGf;;AARA;;;;;;AAUA;AACA,IAAM2E,oBAAoB,GAAG,4BAA7B;AACA,IAAMC,gBAAgB,GAAG,wBAAzB;AACA,IAAMC,iBAAiB,GAAG,yBAA1B;AACA,IAAMC,eAAe,GAAG,uBAAxB;AACA,IAAMC,mBAAmB,GAAG,2BAA5B;AACA,IAAMC,kBAAkB,GAAG,0BAA3B,C,CAAuD;;AACvD,IAAMC,eAAe,GAAG,uBAAxB;AACA,IAAMC,eAAe,GAAG,uBAAxB;AACA,IAAMC,iBAAiB,GAAG,yBAA1B;;AAEA,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAmB,CAAC9Y,IAAD;AAAA,SAAkB,eAAeA,IAAjC;AAAA,CAAzB;;AACA,IAAM+Y,WAAW,GAAG,SAAdA,WAAc,CAAC/Y,IAAD;AAAA,SAAkB,MAAMA,IAAN,GAAa,GAA/B;AAAA,CAApB;;AACA,IAAMwW,KAAK,GAAG,GAAd;AACA,IAAMwC,IAAI,GAAG,GAAb,C,CAAkB;;AAElB,IAAMC,qBAAqB,GAAG,SAAxBA,qBAAwB,CAC5BnS,GAD4B,EAE5BoJ,MAF4B,EAG5BC,WAH4B,EAI5BC,KAJ4B,EAK5BC,IAL4B,EAM5BC,OAN4B,EAO5BhD,IAP4B;AAAA,SAS5B,EAAE8C,KAAF,GAAUF,MAAM,CAACmD,QAAjB,GACI0F,WAAW,CAACD,gBAAgB,CAACxL,IAAD,CAAjB,CADf,GAEIwL,gBAAgB,CAACxL,IAAD,CAAhB,GACAkJ,KADA,GAEA,GAFA,GAGA,uCACE1P,GAAG,CAACjH,OAAJ,EADF,EAEEqQ,MAFF,EAGEC,WAHF,EAIEC,KAJF,EAKEC,IALF,EAMEC,OANF,CAHA,GAWA,GAtBwB;AAAA,CAA9B,C,CAwBA;AACA;;;AACA,SAAS4I,gBAAT,CAA0BpS,GAA1B,EAAmD;AACjD,MAAIE,CAAC,GAAG,CAAR;AACA,SAAO;AACLwJ,QADK,kBACE;AACL,UAAIxJ,CAAC,GAAGF,GAAG,CAACqS,KAAJ,CAAUnU,MAAlB,EAA0B;AACxB,YAAMnB,GAAG,GAAGiD,GAAG,CAACqS,KAAJ,CAAUnS,CAAC,EAAX,CAAZ;AACA,eAAO;AAACyJ,cAAI,EAAE,KAAP;AAAcvR,eAAK,EAAE,CAAC2E,GAAD,EAAMiD,GAAG,CAAC/H,GAAJ,CAAQ8E,GAAR,CAAN;AAArB,SAAP;AACD;;AACD,aAAO;AAAC4M,YAAI,EAAE,IAAP;AAAavR,aAAK,EAAEpB;AAApB,OAAP;AACD;AAPI,GAAP;AASD;;AAED,IAAMsb,oBAAoB,GAAG,SAAvBA,oBAAuB,CAC3BtS,GAD2B,EAE3BoJ,MAF2B,EAG3BC,WAH2B,EAI3BC,KAJ2B,EAK3BC,IAL2B,EAM3BC,OAN2B,EAOhB;AACX;AACA;AACA,MAAMtQ,IAAI,GAAG8Y,gBAAgB,CAAChS,GAAG,CAACuS,KAAJ,IAAa,QAAd,CAA7B;AACA,SAAO,EAAEjJ,KAAF,GAAUF,MAAM,CAACmD,QAAjB,GACH0F,WAAW,CAAC/Y,IAAD,CADR,GAEHA,IAAI,GACFwW,KADF,GAEE,GAFF,GAGE,uCACE0C,gBAAgB,CAACpS,GAAD,CADlB,EAEEoJ,MAFF,EAGEC,WAHF,EAIEC,KAJF,EAKEC,IALF,EAMEC,OANF,CAHF,GAWE,GAbN;AAcD,CAzBD;;AA2BA,IAAMgJ,iBAAiB,GAAG,SAApBA,iBAAoB,CACxBxS,GADwB,EAExBoJ,MAFwB,EAGxBC,WAHwB,EAIxBC,KAJwB,EAKxBC,IALwB,EAMxBC,OANwB,EAOb;AACX,MAAMtQ,IAAI,GAAG8Y,gBAAgB,CAAC,KAAD,CAA7B;;AAEA,MAAI,EAAE1I,KAAF,GAAUF,MAAM,CAACmD,QAArB,EAA+B;AAC7B,WAAO0F,WAAW,CAAC/Y,IAAD,CAAlB;AACD;;AAED,MAAI8G,GAAG,CAACyR,iBAAD,CAAP,EAA4B;AAC1B,WACEvY,IAAI,GACJwW,KADA,GAEA,GAFA,KAGA;AACC1P,OAAG,CAACyS,KAAJ,IAAazS,GAAG,CAAC0S,OAAjB,GACG,uCACE1S,GAAG,CAACjH,OAAJ,EADF,EAEEqQ,MAFF,EAGEC,WAHF,EAIEC,KAJF,EAKEC,IALF,EAMEC,OANF,CADH,GASG0I,IAbJ,IAcA,GAfF;AAiBD;;AAED,SACEhZ,IAAI,GACJwW,KADA,GAEA,GAFA,IAGC1P,GAAG,CAACyS,KAAJ,IAAa;AACdzS,KAAG,CAAC2S,MADH,IACa;AACd3S,KAAG,CAAC4S,WAFH,IAEkB;AACnB5S,KAAG,CAAC6S,SAHH,CAGa;AAHb,IAIG,sCACE7S,GAAG,CAAC0M,MAAJ,EADF,EAEEtD,MAFF,EAGEC,WAHF,EAIEC,KAJF,EAKEC,IALF,EAMEC,OANF,CAJH,GAYG0I,IAfJ,IAgBA,GAjBF;AAmBD,CArDD;;AAuDA,IAAMY,oBAAoB,GAAG,SAAvBA,oBAAuB,CAC3B9S,GAD2B,EAE3BoJ,MAF2B,EAG3BC,WAH2B,EAI3BC,KAJ2B,EAK3BC,IAL2B,EAM3BC,OAN2B,EAO3BhD,IAP2B;AAAA,SAS3B,EAAE8C,KAAF,GAAUF,MAAM,CAACmD,QAAjB,GACI0F,WAAW,CAACD,gBAAgB,CAACxL,IAAD,CAAjB,CADf,GAEIwL,gBAAgB,CAACxL,IAAD,CAAhB,GACAkJ,KADA,GAEA,GAFA,GAGA,sCACE1P,GAAG,CAAC0M,MAAJ,EADF,EAEEtD,MAFF,EAGEC,WAHF,EAIEC,KAJF,EAKEC,IALF,EAMEC,OANF,CAHA,GAWA,GAtBuB;AAAA,CAA7B;;AAwBO,IAAMqD,SAAiC,GAAG,SAApCA,SAAoC,CAC/C7M,GAD+C,EAE/CoJ,MAF+C,EAG/CC,WAH+C,EAI/CC,KAJ+C,EAK/CC,IAL+C,EAM/CC,OAN+C,EAO5C;AACH,MAAIxJ,GAAG,CAAC0R,eAAD,CAAP,EAA0B;AACxB,WAAOS,qBAAqB,CAC1BnS,GAD0B,EAE1BoJ,MAF0B,EAG1BC,WAH0B,EAI1BC,KAJ0B,EAK1BC,IAL0B,EAM1BC,OAN0B,EAO1BxJ,GAAG,CAAC2R,mBAAD,CAAH,GAA2B,YAA3B,GAA0C,KAPhB,CAA5B;AASD;;AAED,MAAI3R,GAAG,CAACwR,gBAAD,CAAP,EAA2B;AACzB,WAAOsB,oBAAoB,CACzB9S,GADyB,EAEzBoJ,MAFyB,EAGzBC,WAHyB,EAIzBC,KAJyB,EAKzBC,IALyB,EAMzBC,OANyB,EAOzB,MAPyB,CAA3B;AASD;;AACD,MAAIxJ,GAAG,CAAC8R,eAAD,CAAP,EAA0B;AACxB,WAAOgB,oBAAoB,CACzB9S,GADyB,EAEzBoJ,MAFyB,EAGzBC,WAHyB,EAIzBC,KAJyB,EAKzBC,IALyB,EAMzBC,OANyB,EAOzBxJ,GAAG,CAAC2R,mBAAD,CAAH,GAA2B,YAA3B,GAA0C,KAPjB,CAA3B;AASD;;AACD,MAAI3R,GAAG,CAAC+R,iBAAD,CAAP,EAA4B;AAC1B,WAAOe,oBAAoB,CACzB9S,GADyB,EAEzBoJ,MAFyB,EAGzBC,WAHyB,EAIzBC,KAJyB,EAKzBC,IALyB,EAMzBC,OANyB,EAOzB,OAPyB,CAA3B;AASD;;AAED,MAAIxJ,GAAG,CAAC6R,eAAD,CAAP,EAA0B;AACxB,WAAOW,iBAAiB,CAACxS,GAAD,EAAMoJ,MAAN,EAAcC,WAAd,EAA2BC,KAA3B,EAAkCC,IAAlC,EAAwCC,OAAxC,CAAxB;AACD,GAjDE,CAmDH;;;AACA,SAAO8I,oBAAoB,CAACtS,GAAD,EAAMoJ,MAAN,EAAcC,WAAd,EAA2BC,KAA3B,EAAkCC,IAAlC,EAAwCC,OAAxC,CAA3B;AACD,CA5DM,C,CA8DP;AACA;;;;;AACO,IAAMiE,IAAuB,GAAG,SAA1BA,IAA0B,CAACzN,GAAD;AAAA,SACrCA,GAAG,KACFA,GAAG,CAACuR,oBAAD,CAAH,KAA8B,IAA9B,IAAsCvR,GAAG,CAAC4R,kBAAD,CAAH,KAA4B,IADhE,CADkC;AAAA,CAAhC;;;AAIP,IAAMhF,MAAiB,GAAG;AAACC,WAAS,EAATA,SAAD;AAAYY,MAAI,EAAJA;AAAZ,CAA1B;eAEeb,M;;;;;;;;;;;;;;;;;;;;AC1Of;;AAGA;;;;;;;;AAOA;AACA;AACA,IAAMmG,WAAW,GAAG,SAAdA,WAAc,CAACC,GAAD,EAAwC;AAAA,MAAlBrK,QAAkB,uEAAP,EAAO;;AAC1D,MAAIqG,KAAK,CAACiE,OAAN,CAAcD,GAAd,CAAJ,EAAwB;AACtBA,OAAG,CAACtP,OAAJ,CAAY,UAAAwP,IAAI,EAAI;AAClBH,iBAAW,CAACG,IAAD,EAAOvK,QAAP,CAAX;AACD,KAFD;AAGD,GAJD,MAIO,IAAIqK,GAAG,IAAI,IAAP,IAAeA,GAAG,KAAK,KAA3B,EAAkC;AACvCrK,YAAQ,CAACM,IAAT,CAAc+J,GAAd;AACD;;AACD,SAAOrK,QAAP;AACD,CATD;;AAWA,IAAMwK,OAAO,GAAG,SAAVA,OAAU,CAACC,OAAD,EAAkB;AAChC,MAAM5M,IAAI,GAAG4M,OAAO,CAAC5M,IAArB;;AACA,MAAI,OAAOA,IAAP,KAAgB,QAApB,EAA8B;AAC5B,WAAOA,IAAP;AACD;;AACD,MAAI,OAAOA,IAAP,KAAgB,UAApB,EAAgC;AAC9B,WAAOA,IAAI,CAAC6M,WAAL,IAAoB7M,IAAI,CAACtN,IAAzB,IAAiC,SAAxC;AACD;;AAED,MAAIoa,OAAO,CAACrL,UAAR,CAAmBmL,OAAnB,CAAJ,EAAiC;AAC/B,WAAO,gBAAP;AACD;;AACD,MAAIE,OAAO,CAAC/K,UAAR,CAAmB6K,OAAnB,CAAJ,EAAiC;AAC/B,WAAO,gBAAP;AACD;;AACD,MAAI,QAAO5M,IAAP,MAAgB,QAAhB,IAA4BA,IAAI,KAAK,IAAzC,EAA+C;AAC7C,QAAI8M,OAAO,CAACxL,iBAAR,CAA0BsL,OAA1B,CAAJ,EAAwC;AACtC,aAAO,kBAAP;AACD;;AAED,QAAIE,OAAO,CAACzL,iBAAR,CAA0BuL,OAA1B,CAAJ,EAAwC;AACtC,aAAO,kBAAP;AACD;;AAED,QAAIE,OAAO,CAACtL,YAAR,CAAqBoL,OAArB,CAAJ,EAAmC;AACjC,UAAI5M,IAAI,CAAC6M,WAAT,EAAsB;AACpB,eAAO7M,IAAI,CAAC6M,WAAZ;AACD;;AAED,UAAME,YAAY,GAAG/M,IAAI,CAACgN,MAAL,CAAYH,WAAZ,IAA2B7M,IAAI,CAACgN,MAAL,CAAYta,IAAvC,IAA+C,EAApE;AAEA,aAAOqa,YAAY,KAAK,EAAjB,GACH,gBAAgBA,YAAhB,GAA+B,GAD5B,GAEH,YAFJ;AAGD;;AAED,QAAID,OAAO,CAACnL,MAAR,CAAeiL,OAAf,CAAJ,EAA6B;AAC3B,UAAMG,aAAY,GAChB/M,IAAI,CAAC6M,WAAL,IAAoB7M,IAAI,CAACA,IAAL,CAAU6M,WAA9B,IAA6C7M,IAAI,CAACA,IAAL,CAAUtN,IAAvD,IAA+D,EADjE;;AAGA,aAAOqa,aAAY,KAAK,EAAjB,GAAsB,UAAUA,aAAV,GAAyB,GAA/C,GAAqD,MAA5D;AACD;AACF;;AACD,SAAO,WAAP;AACD,CA5CD;;AA8CA,IAAME,WAAW,GAAG,SAAdA,WAAc,CAACL,OAAD,EAAkB;AAAA,MAC7B/C,KAD6B,GACpB+C,OADoB,CAC7B/C,KAD6B;AAGpC,SAAOnY,MAAM,CAAC4E,IAAP,CAAYuT,KAAZ,EACJqD,MADI,CACG,UAAA3W,GAAG;AAAA,WAAIA,GAAG,KAAK,UAAR,IAAsBsT,KAAK,CAACtT,GAAD,CAAL,KAAe/F,SAAzC;AAAA,GADN,EAEJ6R,IAFI,EAAP;AAGD,CAND;;AAQO,IAAMgE,SAAiC,GAAG,SAApCA,SAAoC,CAC/CuG,OAD+C,EAE/ChK,MAF+C,EAG/CC,WAH+C,EAI/CC,KAJ+C,EAK/CC,IAL+C,EAM/CC,OAN+C;AAAA,SAQ/C,EAAEF,KAAF,GAAUF,MAAM,CAACmD,QAAjB,GACI,gCAAmB4G,OAAO,CAACC,OAAD,CAA1B,EAAqChK,MAArC,CADJ,GAEI,0BACE+J,OAAO,CAACC,OAAD,CADT,EAEE,wBACEK,WAAW,CAACL,OAAD,CADb,EAEEA,OAAO,CAAC/C,KAFV,EAGEjH,MAHF,EAIEC,WAAW,GAAGD,MAAM,CAACU,MAJvB,EAKER,KALF,EAMEC,IANF,EAOEC,OAPF,CAFF,EAWE,2BACEuJ,WAAW,CAACK,OAAO,CAAC/C,KAAR,CAAc1H,QAAf,CADb,EAEES,MAFF,EAGEC,WAAW,GAAGD,MAAM,CAACU,MAHvB,EAIER,KAJF,EAKEC,IALF,EAMEC,OANF,CAXF,EAmBEJ,MAnBF,EAoBEC,WApBF,CAV2C;AAAA,CAA1C;;;;AAiCA,IAAMoE,IAAuB,GAAG,SAA1BA,IAA0B,CAACzN,GAAD;AAAA,SACrCA,GAAG,IAAIsT,OAAO,CAACvL,SAAR,CAAkB/H,GAAlB,CAD8B;AAAA,CAAhC;;;AAGP,IAAM4M,MAAiB,GAAG;AAACC,WAAS,EAATA,SAAD;AAAYY,MAAI,EAAJA;AAAZ,CAA1B;eAEeb,M;;;;;;;;;;;;;;;;;;;;ACvGf;;AAnBA;;;;;;AAgBA;AAUA,IAAM+G,UAAU,GACd,OAAOxO,MAAP,KAAkB,UAAlB,IAAgCA,MAAM,CAACC,GAAvC,GACID,MAAM,CAACC,GAAP,CAAW,iBAAX,CADJ,GAEI,SAHN;;AAKA,IAAMqO,WAAW,GAAG,SAAdA,WAAc,CAAC1b,MAAD,EAA6B;AAAA,MACxCsY,KADwC,GAC/BtY,MAD+B,CACxCsY,KADwC;AAG/C,SAAOA,KAAK,GACRnY,MAAM,CAAC4E,IAAP,CAAYuT,KAAZ,EACGqD,MADH,CACU,UAAA3W,GAAG;AAAA,WAAIsT,KAAK,CAACtT,GAAD,CAAL,KAAe/F,SAAnB;AAAA,GADb,EAEG6R,IAFH,EADQ,GAIR,EAJJ;AAKD,CARD;;AAUO,IAAMgE,SAAiC,GAAG,SAApCA,SAAoC,CAC/C9U,MAD+C,EAE/CqR,MAF+C,EAG/CC,WAH+C,EAI/CC,KAJ+C,EAK/CC,IAL+C,EAM/CC,OAN+C;AAAA,SAQ/C,EAAEF,KAAF,GAAUF,MAAM,CAACmD,QAAjB,GACI,gCAAmBxU,MAAM,CAACyO,IAA1B,EAAgC4C,MAAhC,CADJ,GAEI,0BACErR,MAAM,CAACyO,IADT,EAEEzO,MAAM,CAACsY,KAAP,GACI,wBACEoD,WAAW,CAAC1b,MAAD,CADb,EAEEA,MAAM,CAACsY,KAFT,EAGEjH,MAHF,EAIEC,WAAW,GAAGD,MAAM,CAACU,MAJvB,EAKER,KALF,EAMEC,IANF,EAOEC,OAPF,CADJ,GAUI,EAZN,EAaEzR,MAAM,CAAC4Q,QAAP,GACI,2BACE5Q,MAAM,CAAC4Q,QADT,EAEES,MAFF,EAGEC,WAAW,GAAGD,MAAM,CAACU,MAHvB,EAIER,KAJF,EAKEC,IALF,EAMEC,OANF,CADJ,GASI,EAtBN,EAuBEJ,MAvBF,EAwBEC,WAxBF,CAV2C;AAAA,CAA1C;;;;AAqCA,IAAMoE,IAAuB,GAAG,SAA1BA,IAA0B,CAAAzN,GAAG;AAAA,SACxCA,GAAG,IAAIA,GAAG,CAACyG,QAAJ,KAAiBkN,UADgB;AAAA,CAAnC;;;AAGP,IAAM/G,MAAiB,GAAG;AAACC,WAAS,EAATA,SAAD;AAAYY,MAAI,EAAJA;AAAZ,CAA1B;eAEeb,M;;;;;;;;;;;;;;;;;;;;ACnFf;;;;;;AAOe,SAASgH,UAAT,CAAoB1G,GAApB,EAAyC;AACtD,SAAOA,GAAG,CAACvB,OAAJ,CAAY,IAAZ,EAAkB,MAAlB,EAA0BA,OAA1B,CAAkC,IAAlC,EAAwC,MAAxC,CAAP;AACD,C;;;;;;;;;;;;;;;;;;;ACAD;;;;AATA;;;;;;AAWA;AACO,IAAMkI,UAAU,GAAG,SAAbA,UAAa,CACxB/W,IADwB,EAExBuT,KAFwB,EAGxBjH,MAHwB,EAIxBC,WAJwB,EAKxBC,KALwB,EAMxBC,IANwB,EAOxBC,OAPwB,EAQb;AACX,MAAMK,eAAe,GAAGR,WAAW,GAAGD,MAAM,CAACU,MAA7C;AACA,MAAMuD,MAAM,GAAGjE,MAAM,CAACiE,MAAtB;AACA,SAAOvQ,IAAI,CACR0F,GADI,CACA,UAAAzF,GAAG,EAAI;AACV,QAAM3E,KAAK,GAAGiY,KAAK,CAACtT,GAAD,CAAnB;AACA,QAAIgQ,OAAO,GAAGvD,OAAO,CAACpR,KAAD,EAAQgR,MAAR,EAAgBS,eAAhB,EAAiCP,KAAjC,EAAwCC,IAAxC,CAArB;;AAEA,QAAI,OAAOnR,KAAP,KAAiB,QAArB,EAA+B;AAC7B,UAAI2U,OAAO,CAACX,OAAR,CAAgB,IAAhB,MAA0B,CAAC,CAA/B,EAAkC;AAChCW,eAAO,GACL3D,MAAM,CAACQ,YAAP,GACAC,eADA,GAEAkD,OAFA,GAGA3D,MAAM,CAACQ,YAHP,GAIAP,WALF;AAMD;;AACD0D,aAAO,GAAG,MAAMA,OAAN,GAAgB,GAA1B;AACD;;AAED,WACE3D,MAAM,CAACW,YAAP,GACAV,WADA,GAEAgE,MAAM,CAACS,IAAP,CAAYrR,IAFZ,GAGAM,GAHA,GAIAsQ,MAAM,CAACS,IAAP,CAAYpR,KAJZ,GAKA,GALA,GAMA2Q,MAAM,CAACjV,KAAP,CAAaqE,IANb,GAOAsQ,OAPA,GAQAM,MAAM,CAACjV,KAAP,CAAasE,KATf;AAWD,GA5BI,EA6BJ5F,IA7BI,CA6BC,EA7BD,CAAP;AA8BD,CAzCM,C,CA2CP;;;;;AACO,IAAMgd,aAAa,GAAG,SAAhBA,aAAgB,CAC3BnL,QAD2B,EAE3BS,MAF2B,EAG3BC,WAH2B,EAI3BC,KAJ2B,EAK3BC,IAL2B,EAM3BC,OAN2B;AAAA,SAQ3Bb,QAAQ,CACLnG,GADH,CAEI,UAAAuR,KAAK;AAAA,WACH3K,MAAM,CAACQ,YAAP,GACAP,WADA,IAEC,OAAO0K,KAAP,KAAiB,QAAjB,GACGC,SAAS,CAACD,KAAD,EAAQ3K,MAAR,CADZ,GAEGI,OAAO,CAACuK,KAAD,EAAQ3K,MAAR,EAAgBC,WAAhB,EAA6BC,KAA7B,EAAoCC,IAApC,CAJX,CADG;AAAA,GAFT,EASGzS,IATH,CASQ,EATR,CAR2B;AAAA,CAAtB;;;;AAmBA,IAAMkd,SAAS,GAAG,SAAZA,SAAY,CAACjE,IAAD,EAAe3G,MAAf,EAA0C;AACjE,MAAM6K,YAAY,GAAG7K,MAAM,CAACiE,MAAP,CAAcQ,OAAnC;AACA,SAAOoG,YAAY,CAACxX,IAAb,GAAoB,yBAAWsT,IAAX,CAApB,GAAuCkE,YAAY,CAACvX,KAA3D;AACD,CAHM;;;;AAKA,IAAMwX,YAAY,GAAG,SAAfA,YAAe,CAACtG,OAAD,EAAkBxE,MAAlB,EAA6C;AACvE,MAAM+K,YAAY,GAAG/K,MAAM,CAACiE,MAAP,CAAcO,OAAnC;AACA,SACEuG,YAAY,CAAC1X,IAAb,GACA,MADA,GAEA,yBAAWmR,OAAX,CAFA,GAGA,KAHA,GAIAuG,YAAY,CAACzX,KALf;AAOD,CATM,C,CAWP;AACA;AACA;AACA;;;;;AACO,IAAM0X,YAAY,GAAG,SAAfA,YAAe,CAC1B5N,IAD0B,EAE1B6N,YAF0B,EAG1BC,eAH0B,EAI1BlL,MAJ0B,EAK1BC,WAL0B,EAMf;AACX,MAAMkL,QAAQ,GAAGnL,MAAM,CAACiE,MAAP,CAAcU,GAA/B;AACA,SACEwG,QAAQ,CAAC9X,IAAT,GACA,GADA,GAEA+J,IAFA,IAGC6N,YAAY,IACXE,QAAQ,CAAC7X,KAAT,GACE2X,YADF,GAEEjL,MAAM,CAACQ,YAFT,GAGEP,WAHF,GAIEkL,QAAQ,CAAC9X,IARb,KASC6X,eAAe,GACZ,MACAC,QAAQ,CAAC7X,KADT,GAEA4X,eAFA,GAGAlL,MAAM,CAACQ,YAHP,GAIAP,WAJA,GAKAkL,QAAQ,CAAC9X,IALT,GAMA,IANA,GAOA+J,IARY,GASZ,CAAC6N,YAAY,IAAI,CAACjL,MAAM,CAACjL,GAAxB,GAA8B,EAA9B,GAAmC,GAApC,IAA2C,GAlB/C,IAmBA,GAnBA,GAoBAoW,QAAQ,CAAC7X,KArBX;AAuBD,CA/BM;;;;AAiCA,IAAM8X,kBAAkB,GAAG,SAArBA,kBAAqB,CAAChO,IAAD,EAAe4C,MAAf,EAA0C;AAC1E,MAAMmL,QAAQ,GAAGnL,MAAM,CAACiE,MAAP,CAAcU,GAA/B;AACA,SACEwG,QAAQ,CAAC9X,IAAT,GACA,GADA,GAEA+J,IAFA,GAGA+N,QAAQ,CAAC7X,KAHT,GAIA,IAJA,GAKA6X,QAAQ,CAAC9X,IALT,GAMA,KANA,GAOA8X,QAAQ,CAAC7X,KARX;AAUD,CAZM","file":"index.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"prettyFormat\"] = factory();\n\telse\n\t\troot[\"prettyFormat\"] = factory();\n})(window, function() {\nreturn "," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = \"./packages/pretty-format/src/index.ts\");\n","'use strict';\n\nmodule.exports = ({onlyFirst = false} = {}) => {\n\tconst pattern = [\n\t\t'[\\\\u001B\\\\u009B][[\\\\]()#;?]*(?:(?:(?:[a-zA-Z\\\\d]*(?:;[-a-zA-Z\\\\d\\\\/#&.:=?%@~_]*)*)?\\\\u0007)',\n\t\t'(?:(?:\\\\d{1,4}(?:;\\\\d{0,4})*)?[\\\\dA-PR-TZcf-ntqry=><~]))'\n\t].join('|');\n\n\treturn new RegExp(pattern, onlyFirst ? undefined : 'g');\n};\n","'use strict';\n\nconst wrapAnsi16 = (fn, offset) => (...args) => {\n\tconst code = fn(...args);\n\treturn `\\u001B[${code + offset}m`;\n};\n\nconst wrapAnsi256 = (fn, offset) => (...args) => {\n\tconst code = fn(...args);\n\treturn `\\u001B[${38 + offset};5;${code}m`;\n};\n\nconst wrapAnsi16m = (fn, offset) => (...args) => {\n\tconst rgb = fn(...args);\n\treturn `\\u001B[${38 + offset};2;${rgb[0]};${rgb[1]};${rgb[2]}m`;\n};\n\nconst ansi2ansi = n => n;\nconst rgb2rgb = (r, g, b) => [r, g, b];\n\nconst setLazyProperty = (object, property, get) => {\n\tObject.defineProperty(object, property, {\n\t\tget: () => {\n\t\t\tconst value = get();\n\n\t\t\tObject.defineProperty(object, property, {\n\t\t\t\tvalue,\n\t\t\t\tenumerable: true,\n\t\t\t\tconfigurable: true\n\t\t\t});\n\n\t\t\treturn value;\n\t\t},\n\t\tenumerable: true,\n\t\tconfigurable: true\n\t});\n};\n\n/** @type {typeof import('color-convert')} */\nlet colorConvert;\nconst makeDynamicStyles = (wrap, targetSpace, identity, isBackground) => {\n\tif (colorConvert === undefined) {\n\t\tcolorConvert = require('color-convert');\n\t}\n\n\tconst offset = isBackground ? 10 : 0;\n\tconst styles = {};\n\n\tfor (const [sourceSpace, suite] of Object.entries(colorConvert)) {\n\t\tconst name = sourceSpace === 'ansi16' ? 'ansi' : sourceSpace;\n\t\tif (sourceSpace === targetSpace) {\n\t\t\tstyles[name] = wrap(identity, offset);\n\t\t} else if (typeof suite === 'object') {\n\t\t\tstyles[name] = wrap(suite[targetSpace], offset);\n\t\t}\n\t}\n\n\treturn styles;\n};\n\nfunction assembleStyles() {\n\tconst codes = new Map();\n\tconst styles = {\n\t\tmodifier: {\n\t\t\treset: [0, 0],\n\t\t\t// 21 isn't widely supported and 22 does the same thing\n\t\t\tbold: [1, 22],\n\t\t\tdim: [2, 22],\n\t\t\titalic: [3, 23],\n\t\t\tunderline: [4, 24],\n\t\t\tinverse: [7, 27],\n\t\t\thidden: [8, 28],\n\t\t\tstrikethrough: [9, 29]\n\t\t},\n\t\tcolor: {\n\t\t\tblack: [30, 39],\n\t\t\tred: [31, 39],\n\t\t\tgreen: [32, 39],\n\t\t\tyellow: [33, 39],\n\t\t\tblue: [34, 39],\n\t\t\tmagenta: [35, 39],\n\t\t\tcyan: [36, 39],\n\t\t\twhite: [37, 39],\n\n\t\t\t// Bright color\n\t\t\tblackBright: [90, 39],\n\t\t\tredBright: [91, 39],\n\t\t\tgreenBright: [92, 39],\n\t\t\tyellowBright: [93, 39],\n\t\t\tblueBright: [94, 39],\n\t\t\tmagentaBright: [95, 39],\n\t\t\tcyanBright: [96, 39],\n\t\t\twhiteBright: [97, 39]\n\t\t},\n\t\tbgColor: {\n\t\t\tbgBlack: [40, 49],\n\t\t\tbgRed: [41, 49],\n\t\t\tbgGreen: [42, 49],\n\t\t\tbgYellow: [43, 49],\n\t\t\tbgBlue: [44, 49],\n\t\t\tbgMagenta: [45, 49],\n\t\t\tbgCyan: [46, 49],\n\t\t\tbgWhite: [47, 49],\n\n\t\t\t// Bright color\n\t\t\tbgBlackBright: [100, 49],\n\t\t\tbgRedBright: [101, 49],\n\t\t\tbgGreenBright: [102, 49],\n\t\t\tbgYellowBright: [103, 49],\n\t\t\tbgBlueBright: [104, 49],\n\t\t\tbgMagentaBright: [105, 49],\n\t\t\tbgCyanBright: [106, 49],\n\t\t\tbgWhiteBright: [107, 49]\n\t\t}\n\t};\n\n\t// Alias bright black as gray (and grey)\n\tstyles.color.gray = styles.color.blackBright;\n\tstyles.bgColor.bgGray = styles.bgColor.bgBlackBright;\n\tstyles.color.grey = styles.color.blackBright;\n\tstyles.bgColor.bgGrey = styles.bgColor.bgBlackBright;\n\n\tfor (const [groupName, group] of Object.entries(styles)) {\n\t\tfor (const [styleName, style] of Object.entries(group)) {\n\t\t\tstyles[styleName] = {\n\t\t\t\topen: `\\u001B[${style[0]}m`,\n\t\t\t\tclose: `\\u001B[${style[1]}m`\n\t\t\t};\n\n\t\t\tgroup[styleName] = styles[styleName];\n\n\t\t\tcodes.set(style[0], style[1]);\n\t\t}\n\n\t\tObject.defineProperty(styles, groupName, {\n\t\t\tvalue: group,\n\t\t\tenumerable: false\n\t\t});\n\t}\n\n\tObject.defineProperty(styles, 'codes', {\n\t\tvalue: codes,\n\t\tenumerable: false\n\t});\n\n\tstyles.color.close = '\\u001B[39m';\n\tstyles.bgColor.close = '\\u001B[49m';\n\n\tsetLazyProperty(styles.color, 'ansi', () => makeDynamicStyles(wrapAnsi16, 'ansi16', ansi2ansi, false));\n\tsetLazyProperty(styles.color, 'ansi256', () => makeDynamicStyles(wrapAnsi256, 'ansi256', ansi2ansi, false));\n\tsetLazyProperty(styles.color, 'ansi16m', () => makeDynamicStyles(wrapAnsi16m, 'rgb', rgb2rgb, false));\n\tsetLazyProperty(styles.bgColor, 'ansi', () => makeDynamicStyles(wrapAnsi16, 'ansi16', ansi2ansi, true));\n\tsetLazyProperty(styles.bgColor, 'ansi256', () => makeDynamicStyles(wrapAnsi256, 'ansi256', ansi2ansi, true));\n\tsetLazyProperty(styles.bgColor, 'ansi16m', () => makeDynamicStyles(wrapAnsi16m, 'rgb', rgb2rgb, true));\n\n\treturn styles;\n}\n\n// Make the export immutable\nObject.defineProperty(module, 'exports', {\n\tenumerable: true,\n\tget: assembleStyles\n});\n","/* MIT license */\n/* eslint-disable no-mixed-operators */\nconst cssKeywords = require('color-name');\n\n// NOTE: conversions should only return primitive values (i.e. arrays, or\n// values that give correct `typeof` results).\n// do not use box values types (i.e. Number(), String(), etc.)\n\nconst reverseKeywords = {};\nfor (const key of Object.keys(cssKeywords)) {\n\treverseKeywords[cssKeywords[key]] = key;\n}\n\nconst convert = {\n\trgb: {channels: 3, labels: 'rgb'},\n\thsl: {channels: 3, labels: 'hsl'},\n\thsv: {channels: 3, labels: 'hsv'},\n\thwb: {channels: 3, labels: 'hwb'},\n\tcmyk: {channels: 4, labels: 'cmyk'},\n\txyz: {channels: 3, labels: 'xyz'},\n\tlab: {channels: 3, labels: 'lab'},\n\tlch: {channels: 3, labels: 'lch'},\n\thex: {channels: 1, labels: ['hex']},\n\tkeyword: {channels: 1, labels: ['keyword']},\n\tansi16: {channels: 1, labels: ['ansi16']},\n\tansi256: {channels: 1, labels: ['ansi256']},\n\thcg: {channels: 3, labels: ['h', 'c', 'g']},\n\tapple: {channels: 3, labels: ['r16', 'g16', 'b16']},\n\tgray: {channels: 1, labels: ['gray']}\n};\n\nmodule.exports = convert;\n\n// Hide .channels and .labels properties\nfor (const model of Object.keys(convert)) {\n\tif (!('channels' in convert[model])) {\n\t\tthrow new Error('missing channels property: ' + model);\n\t}\n\n\tif (!('labels' in convert[model])) {\n\t\tthrow new Error('missing channel labels property: ' + model);\n\t}\n\n\tif (convert[model].labels.length !== convert[model].channels) {\n\t\tthrow new Error('channel and label counts mismatch: ' + model);\n\t}\n\n\tconst {channels, labels} = convert[model];\n\tdelete convert[model].channels;\n\tdelete convert[model].labels;\n\tObject.defineProperty(convert[model], 'channels', {value: channels});\n\tObject.defineProperty(convert[model], 'labels', {value: labels});\n}\n\nconvert.rgb.hsl = function (rgb) {\n\tconst r = rgb[0] / 255;\n\tconst g = rgb[1] / 255;\n\tconst b = rgb[2] / 255;\n\tconst min = Math.min(r, g, b);\n\tconst max = Math.max(r, g, b);\n\tconst delta = max - min;\n\tlet h;\n\tlet s;\n\n\tif (max === min) {\n\t\th = 0;\n\t} else if (r === max) {\n\t\th = (g - b) / delta;\n\t} else if (g === max) {\n\t\th = 2 + (b - r) / delta;\n\t} else if (b === max) {\n\t\th = 4 + (r - g) / delta;\n\t}\n\n\th = Math.min(h * 60, 360);\n\n\tif (h < 0) {\n\t\th += 360;\n\t}\n\n\tconst l = (min + max) / 2;\n\n\tif (max === min) {\n\t\ts = 0;\n\t} else if (l <= 0.5) {\n\t\ts = delta / (max + min);\n\t} else {\n\t\ts = delta / (2 - max - min);\n\t}\n\n\treturn [h, s * 100, l * 100];\n};\n\nconvert.rgb.hsv = function (rgb) {\n\tlet rdif;\n\tlet gdif;\n\tlet bdif;\n\tlet h;\n\tlet s;\n\n\tconst r = rgb[0] / 255;\n\tconst g = rgb[1] / 255;\n\tconst b = rgb[2] / 255;\n\tconst v = Math.max(r, g, b);\n\tconst diff = v - Math.min(r, g, b);\n\tconst diffc = function (c) {\n\t\treturn (v - c) / 6 / diff + 1 / 2;\n\t};\n\n\tif (diff === 0) {\n\t\th = 0;\n\t\ts = 0;\n\t} else {\n\t\ts = diff / v;\n\t\trdif = diffc(r);\n\t\tgdif = diffc(g);\n\t\tbdif = diffc(b);\n\n\t\tif (r === v) {\n\t\t\th = bdif - gdif;\n\t\t} else if (g === v) {\n\t\t\th = (1 / 3) + rdif - bdif;\n\t\t} else if (b === v) {\n\t\t\th = (2 / 3) + gdif - rdif;\n\t\t}\n\n\t\tif (h < 0) {\n\t\t\th += 1;\n\t\t} else if (h > 1) {\n\t\t\th -= 1;\n\t\t}\n\t}\n\n\treturn [\n\t\th * 360,\n\t\ts * 100,\n\t\tv * 100\n\t];\n};\n\nconvert.rgb.hwb = function (rgb) {\n\tconst r = rgb[0];\n\tconst g = rgb[1];\n\tlet b = rgb[2];\n\tconst h = convert.rgb.hsl(rgb)[0];\n\tconst w = 1 / 255 * Math.min(r, Math.min(g, b));\n\n\tb = 1 - 1 / 255 * Math.max(r, Math.max(g, b));\n\n\treturn [h, w * 100, b * 100];\n};\n\nconvert.rgb.cmyk = function (rgb) {\n\tconst r = rgb[0] / 255;\n\tconst g = rgb[1] / 255;\n\tconst b = rgb[2] / 255;\n\n\tconst k = Math.min(1 - r, 1 - g, 1 - b);\n\tconst c = (1 - r - k) / (1 - k) || 0;\n\tconst m = (1 - g - k) / (1 - k) || 0;\n\tconst y = (1 - b - k) / (1 - k) || 0;\n\n\treturn [c * 100, m * 100, y * 100, k * 100];\n};\n\nfunction comparativeDistance(x, y) {\n\t/*\n\t\tSee https://en.m.wikipedia.org/wiki/Euclidean_distance#Squared_Euclidean_distance\n\t*/\n\treturn (\n\t\t((x[0] - y[0]) ** 2) +\n\t\t((x[1] - y[1]) ** 2) +\n\t\t((x[2] - y[2]) ** 2)\n\t);\n}\n\nconvert.rgb.keyword = function (rgb) {\n\tconst reversed = reverseKeywords[rgb];\n\tif (reversed) {\n\t\treturn reversed;\n\t}\n\n\tlet currentClosestDistance = Infinity;\n\tlet currentClosestKeyword;\n\n\tfor (const keyword of Object.keys(cssKeywords)) {\n\t\tconst value = cssKeywords[keyword];\n\n\t\t// Compute comparative distance\n\t\tconst distance = comparativeDistance(rgb, value);\n\n\t\t// Check if its less, if so set as closest\n\t\tif (distance < currentClosestDistance) {\n\t\t\tcurrentClosestDistance = distance;\n\t\t\tcurrentClosestKeyword = keyword;\n\t\t}\n\t}\n\n\treturn currentClosestKeyword;\n};\n\nconvert.keyword.rgb = function (keyword) {\n\treturn cssKeywords[keyword];\n};\n\nconvert.rgb.xyz = function (rgb) {\n\tlet r = rgb[0] / 255;\n\tlet g = rgb[1] / 255;\n\tlet b = rgb[2] / 255;\n\n\t// Assume sRGB\n\tr = r > 0.04045 ? (((r + 0.055) / 1.055) ** 2.4) : (r / 12.92);\n\tg = g > 0.04045 ? (((g + 0.055) / 1.055) ** 2.4) : (g / 12.92);\n\tb = b > 0.04045 ? (((b + 0.055) / 1.055) ** 2.4) : (b / 12.92);\n\n\tconst x = (r * 0.4124) + (g * 0.3576) + (b * 0.1805);\n\tconst y = (r * 0.2126) + (g * 0.7152) + (b * 0.0722);\n\tconst z = (r * 0.0193) + (g * 0.1192) + (b * 0.9505);\n\n\treturn [x * 100, y * 100, z * 100];\n};\n\nconvert.rgb.lab = function (rgb) {\n\tconst xyz = convert.rgb.xyz(rgb);\n\tlet x = xyz[0];\n\tlet y = xyz[1];\n\tlet z = xyz[2];\n\n\tx /= 95.047;\n\ty /= 100;\n\tz /= 108.883;\n\n\tx = x > 0.008856 ? (x ** (1 / 3)) : (7.787 * x) + (16 / 116);\n\ty = y > 0.008856 ? (y ** (1 / 3)) : (7.787 * y) + (16 / 116);\n\tz = z > 0.008856 ? (z ** (1 / 3)) : (7.787 * z) + (16 / 116);\n\n\tconst l = (116 * y) - 16;\n\tconst a = 500 * (x - y);\n\tconst b = 200 * (y - z);\n\n\treturn [l, a, b];\n};\n\nconvert.hsl.rgb = function (hsl) {\n\tconst h = hsl[0] / 360;\n\tconst s = hsl[1] / 100;\n\tconst l = hsl[2] / 100;\n\tlet t2;\n\tlet t3;\n\tlet val;\n\n\tif (s === 0) {\n\t\tval = l * 255;\n\t\treturn [val, val, val];\n\t}\n\n\tif (l < 0.5) {\n\t\tt2 = l * (1 + s);\n\t} else {\n\t\tt2 = l + s - l * s;\n\t}\n\n\tconst t1 = 2 * l - t2;\n\n\tconst rgb = [0, 0, 0];\n\tfor (let i = 0; i < 3; i++) {\n\t\tt3 = h + 1 / 3 * -(i - 1);\n\t\tif (t3 < 0) {\n\t\t\tt3++;\n\t\t}\n\n\t\tif (t3 > 1) {\n\t\t\tt3--;\n\t\t}\n\n\t\tif (6 * t3 < 1) {\n\t\t\tval = t1 + (t2 - t1) * 6 * t3;\n\t\t} else if (2 * t3 < 1) {\n\t\t\tval = t2;\n\t\t} else if (3 * t3 < 2) {\n\t\t\tval = t1 + (t2 - t1) * (2 / 3 - t3) * 6;\n\t\t} else {\n\t\t\tval = t1;\n\t\t}\n\n\t\trgb[i] = val * 255;\n\t}\n\n\treturn rgb;\n};\n\nconvert.hsl.hsv = function (hsl) {\n\tconst h = hsl[0];\n\tlet s = hsl[1] / 100;\n\tlet l = hsl[2] / 100;\n\tlet smin = s;\n\tconst lmin = Math.max(l, 0.01);\n\n\tl *= 2;\n\ts *= (l <= 1) ? l : 2 - l;\n\tsmin *= lmin <= 1 ? lmin : 2 - lmin;\n\tconst v = (l + s) / 2;\n\tconst sv = l === 0 ? (2 * smin) / (lmin + smin) : (2 * s) / (l + s);\n\n\treturn [h, sv * 100, v * 100];\n};\n\nconvert.hsv.rgb = function (hsv) {\n\tconst h = hsv[0] / 60;\n\tconst s = hsv[1] / 100;\n\tlet v = hsv[2] / 100;\n\tconst hi = Math.floor(h) % 6;\n\n\tconst f = h - Math.floor(h);\n\tconst p = 255 * v * (1 - s);\n\tconst q = 255 * v * (1 - (s * f));\n\tconst t = 255 * v * (1 - (s * (1 - f)));\n\tv *= 255;\n\n\tswitch (hi) {\n\t\tcase 0:\n\t\t\treturn [v, t, p];\n\t\tcase 1:\n\t\t\treturn [q, v, p];\n\t\tcase 2:\n\t\t\treturn [p, v, t];\n\t\tcase 3:\n\t\t\treturn [p, q, v];\n\t\tcase 4:\n\t\t\treturn [t, p, v];\n\t\tcase 5:\n\t\t\treturn [v, p, q];\n\t}\n};\n\nconvert.hsv.hsl = function (hsv) {\n\tconst h = hsv[0];\n\tconst s = hsv[1] / 100;\n\tconst v = hsv[2] / 100;\n\tconst vmin = Math.max(v, 0.01);\n\tlet sl;\n\tlet l;\n\n\tl = (2 - s) * v;\n\tconst lmin = (2 - s) * vmin;\n\tsl = s * vmin;\n\tsl /= (lmin <= 1) ? lmin : 2 - lmin;\n\tsl = sl || 0;\n\tl /= 2;\n\n\treturn [h, sl * 100, l * 100];\n};\n\n// http://dev.w3.org/csswg/css-color/#hwb-to-rgb\nconvert.hwb.rgb = function (hwb) {\n\tconst h = hwb[0] / 360;\n\tlet wh = hwb[1] / 100;\n\tlet bl = hwb[2] / 100;\n\tconst ratio = wh + bl;\n\tlet f;\n\n\t// Wh + bl cant be > 1\n\tif (ratio > 1) {\n\t\twh /= ratio;\n\t\tbl /= ratio;\n\t}\n\n\tconst i = Math.floor(6 * h);\n\tconst v = 1 - bl;\n\tf = 6 * h - i;\n\n\tif ((i & 0x01) !== 0) {\n\t\tf = 1 - f;\n\t}\n\n\tconst n = wh + f * (v - wh); // Linear interpolation\n\n\tlet r;\n\tlet g;\n\tlet b;\n\t/* eslint-disable max-statements-per-line,no-multi-spaces */\n\tswitch (i) {\n\t\tdefault:\n\t\tcase 6:\n\t\tcase 0: r = v; g = n; b = wh; break;\n\t\tcase 1: r = n; g = v; b = wh; break;\n\t\tcase 2: r = wh; g = v; b = n; break;\n\t\tcase 3: r = wh; g = n; b = v; break;\n\t\tcase 4: r = n; g = wh; b = v; break;\n\t\tcase 5: r = v; g = wh; b = n; break;\n\t}\n\t/* eslint-enable max-statements-per-line,no-multi-spaces */\n\n\treturn [r * 255, g * 255, b * 255];\n};\n\nconvert.cmyk.rgb = function (cmyk) {\n\tconst c = cmyk[0] / 100;\n\tconst m = cmyk[1] / 100;\n\tconst y = cmyk[2] / 100;\n\tconst k = cmyk[3] / 100;\n\n\tconst r = 1 - Math.min(1, c * (1 - k) + k);\n\tconst g = 1 - Math.min(1, m * (1 - k) + k);\n\tconst b = 1 - Math.min(1, y * (1 - k) + k);\n\n\treturn [r * 255, g * 255, b * 255];\n};\n\nconvert.xyz.rgb = function (xyz) {\n\tconst x = xyz[0] / 100;\n\tconst y = xyz[1] / 100;\n\tconst z = xyz[2] / 100;\n\tlet r;\n\tlet g;\n\tlet b;\n\n\tr = (x * 3.2406) + (y * -1.5372) + (z * -0.4986);\n\tg = (x * -0.9689) + (y * 1.8758) + (z * 0.0415);\n\tb = (x * 0.0557) + (y * -0.2040) + (z * 1.0570);\n\n\t// Assume sRGB\n\tr = r > 0.0031308\n\t\t? ((1.055 * (r ** (1.0 / 2.4))) - 0.055)\n\t\t: r * 12.92;\n\n\tg = g > 0.0031308\n\t\t? ((1.055 * (g ** (1.0 / 2.4))) - 0.055)\n\t\t: g * 12.92;\n\n\tb = b > 0.0031308\n\t\t? ((1.055 * (b ** (1.0 / 2.4))) - 0.055)\n\t\t: b * 12.92;\n\n\tr = Math.min(Math.max(0, r), 1);\n\tg = Math.min(Math.max(0, g), 1);\n\tb = Math.min(Math.max(0, b), 1);\n\n\treturn [r * 255, g * 255, b * 255];\n};\n\nconvert.xyz.lab = function (xyz) {\n\tlet x = xyz[0];\n\tlet y = xyz[1];\n\tlet z = xyz[2];\n\n\tx /= 95.047;\n\ty /= 100;\n\tz /= 108.883;\n\n\tx = x > 0.008856 ? (x ** (1 / 3)) : (7.787 * x) + (16 / 116);\n\ty = y > 0.008856 ? (y ** (1 / 3)) : (7.787 * y) + (16 / 116);\n\tz = z > 0.008856 ? (z ** (1 / 3)) : (7.787 * z) + (16 / 116);\n\n\tconst l = (116 * y) - 16;\n\tconst a = 500 * (x - y);\n\tconst b = 200 * (y - z);\n\n\treturn [l, a, b];\n};\n\nconvert.lab.xyz = function (lab) {\n\tconst l = lab[0];\n\tconst a = lab[1];\n\tconst b = lab[2];\n\tlet x;\n\tlet y;\n\tlet z;\n\n\ty = (l + 16) / 116;\n\tx = a / 500 + y;\n\tz = y - b / 200;\n\n\tconst y2 = y ** 3;\n\tconst x2 = x ** 3;\n\tconst z2 = z ** 3;\n\ty = y2 > 0.008856 ? y2 : (y - 16 / 116) / 7.787;\n\tx = x2 > 0.008856 ? x2 : (x - 16 / 116) / 7.787;\n\tz = z2 > 0.008856 ? z2 : (z - 16 / 116) / 7.787;\n\n\tx *= 95.047;\n\ty *= 100;\n\tz *= 108.883;\n\n\treturn [x, y, z];\n};\n\nconvert.lab.lch = function (lab) {\n\tconst l = lab[0];\n\tconst a = lab[1];\n\tconst b = lab[2];\n\tlet h;\n\n\tconst hr = Math.atan2(b, a);\n\th = hr * 360 / 2 / Math.PI;\n\n\tif (h < 0) {\n\t\th += 360;\n\t}\n\n\tconst c = Math.sqrt(a * a + b * b);\n\n\treturn [l, c, h];\n};\n\nconvert.lch.lab = function (lch) {\n\tconst l = lch[0];\n\tconst c = lch[1];\n\tconst h = lch[2];\n\n\tconst hr = h / 360 * 2 * Math.PI;\n\tconst a = c * Math.cos(hr);\n\tconst b = c * Math.sin(hr);\n\n\treturn [l, a, b];\n};\n\nconvert.rgb.ansi16 = function (args, saturation = null) {\n\tconst [r, g, b] = args;\n\tlet value = saturation === null ? convert.rgb.hsv(args)[2] : saturation; // Hsv -> ansi16 optimization\n\n\tvalue = Math.round(value / 50);\n\n\tif (value === 0) {\n\t\treturn 30;\n\t}\n\n\tlet ansi = 30\n\t\t+ ((Math.round(b / 255) << 2)\n\t\t| (Math.round(g / 255) << 1)\n\t\t| Math.round(r / 255));\n\n\tif (value === 2) {\n\t\tansi += 60;\n\t}\n\n\treturn ansi;\n};\n\nconvert.hsv.ansi16 = function (args) {\n\t// Optimization here; we already know the value and don't need to get\n\t// it converted for us.\n\treturn convert.rgb.ansi16(convert.hsv.rgb(args), args[2]);\n};\n\nconvert.rgb.ansi256 = function (args) {\n\tconst r = args[0];\n\tconst g = args[1];\n\tconst b = args[2];\n\n\t// We use the extended greyscale palette here, with the exception of\n\t// black and white. normal palette only has 4 greyscale shades.\n\tif (r === g && g === b) {\n\t\tif (r < 8) {\n\t\t\treturn 16;\n\t\t}\n\n\t\tif (r > 248) {\n\t\t\treturn 231;\n\t\t}\n\n\t\treturn Math.round(((r - 8) / 247) * 24) + 232;\n\t}\n\n\tconst ansi = 16\n\t\t+ (36 * Math.round(r / 255 * 5))\n\t\t+ (6 * Math.round(g / 255 * 5))\n\t\t+ Math.round(b / 255 * 5);\n\n\treturn ansi;\n};\n\nconvert.ansi16.rgb = function (args) {\n\tlet color = args % 10;\n\n\t// Handle greyscale\n\tif (color === 0 || color === 7) {\n\t\tif (args > 50) {\n\t\t\tcolor += 3.5;\n\t\t}\n\n\t\tcolor = color / 10.5 * 255;\n\n\t\treturn [color, color, color];\n\t}\n\n\tconst mult = (~~(args > 50) + 1) * 0.5;\n\tconst r = ((color & 1) * mult) * 255;\n\tconst g = (((color >> 1) & 1) * mult) * 255;\n\tconst b = (((color >> 2) & 1) * mult) * 255;\n\n\treturn [r, g, b];\n};\n\nconvert.ansi256.rgb = function (args) {\n\t// Handle greyscale\n\tif (args >= 232) {\n\t\tconst c = (args - 232) * 10 + 8;\n\t\treturn [c, c, c];\n\t}\n\n\targs -= 16;\n\n\tlet rem;\n\tconst r = Math.floor(args / 36) / 5 * 255;\n\tconst g = Math.floor((rem = args % 36) / 6) / 5 * 255;\n\tconst b = (rem % 6) / 5 * 255;\n\n\treturn [r, g, b];\n};\n\nconvert.rgb.hex = function (args) {\n\tconst integer = ((Math.round(args[0]) & 0xFF) << 16)\n\t\t+ ((Math.round(args[1]) & 0xFF) << 8)\n\t\t+ (Math.round(args[2]) & 0xFF);\n\n\tconst string = integer.toString(16).toUpperCase();\n\treturn '000000'.substring(string.length) + string;\n};\n\nconvert.hex.rgb = function (args) {\n\tconst match = args.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);\n\tif (!match) {\n\t\treturn [0, 0, 0];\n\t}\n\n\tlet colorString = match[0];\n\n\tif (match[0].length === 3) {\n\t\tcolorString = colorString.split('').map(char => {\n\t\t\treturn char + char;\n\t\t}).join('');\n\t}\n\n\tconst integer = parseInt(colorString, 16);\n\tconst r = (integer >> 16) & 0xFF;\n\tconst g = (integer >> 8) & 0xFF;\n\tconst b = integer & 0xFF;\n\n\treturn [r, g, b];\n};\n\nconvert.rgb.hcg = function (rgb) {\n\tconst r = rgb[0] / 255;\n\tconst g = rgb[1] / 255;\n\tconst b = rgb[2] / 255;\n\tconst max = Math.max(Math.max(r, g), b);\n\tconst min = Math.min(Math.min(r, g), b);\n\tconst chroma = (max - min);\n\tlet grayscale;\n\tlet hue;\n\n\tif (chroma < 1) {\n\t\tgrayscale = min / (1 - chroma);\n\t} else {\n\t\tgrayscale = 0;\n\t}\n\n\tif (chroma <= 0) {\n\t\thue = 0;\n\t} else\n\tif (max === r) {\n\t\thue = ((g - b) / chroma) % 6;\n\t} else\n\tif (max === g) {\n\t\thue = 2 + (b - r) / chroma;\n\t} else {\n\t\thue = 4 + (r - g) / chroma;\n\t}\n\n\thue /= 6;\n\thue %= 1;\n\n\treturn [hue * 360, chroma * 100, grayscale * 100];\n};\n\nconvert.hsl.hcg = function (hsl) {\n\tconst s = hsl[1] / 100;\n\tconst l = hsl[2] / 100;\n\n\tconst c = l < 0.5 ? (2.0 * s * l) : (2.0 * s * (1.0 - l));\n\n\tlet f = 0;\n\tif (c < 1.0) {\n\t\tf = (l - 0.5 * c) / (1.0 - c);\n\t}\n\n\treturn [hsl[0], c * 100, f * 100];\n};\n\nconvert.hsv.hcg = function (hsv) {\n\tconst s = hsv[1] / 100;\n\tconst v = hsv[2] / 100;\n\n\tconst c = s * v;\n\tlet f = 0;\n\n\tif (c < 1.0) {\n\t\tf = (v - c) / (1 - c);\n\t}\n\n\treturn [hsv[0], c * 100, f * 100];\n};\n\nconvert.hcg.rgb = function (hcg) {\n\tconst h = hcg[0] / 360;\n\tconst c = hcg[1] / 100;\n\tconst g = hcg[2] / 100;\n\n\tif (c === 0.0) {\n\t\treturn [g * 255, g * 255, g * 255];\n\t}\n\n\tconst pure = [0, 0, 0];\n\tconst hi = (h % 1) * 6;\n\tconst v = hi % 1;\n\tconst w = 1 - v;\n\tlet mg = 0;\n\n\t/* eslint-disable max-statements-per-line */\n\tswitch (Math.floor(hi)) {\n\t\tcase 0:\n\t\t\tpure[0] = 1; pure[1] = v; pure[2] = 0; break;\n\t\tcase 1:\n\t\t\tpure[0] = w; pure[1] = 1; pure[2] = 0; break;\n\t\tcase 2:\n\t\t\tpure[0] = 0; pure[1] = 1; pure[2] = v; break;\n\t\tcase 3:\n\t\t\tpure[0] = 0; pure[1] = w; pure[2] = 1; break;\n\t\tcase 4:\n\t\t\tpure[0] = v; pure[1] = 0; pure[2] = 1; break;\n\t\tdefault:\n\t\t\tpure[0] = 1; pure[1] = 0; pure[2] = w;\n\t}\n\t/* eslint-enable max-statements-per-line */\n\n\tmg = (1.0 - c) * g;\n\n\treturn [\n\t\t(c * pure[0] + mg) * 255,\n\t\t(c * pure[1] + mg) * 255,\n\t\t(c * pure[2] + mg) * 255\n\t];\n};\n\nconvert.hcg.hsv = function (hcg) {\n\tconst c = hcg[1] / 100;\n\tconst g = hcg[2] / 100;\n\n\tconst v = c + g * (1.0 - c);\n\tlet f = 0;\n\n\tif (v > 0.0) {\n\t\tf = c / v;\n\t}\n\n\treturn [hcg[0], f * 100, v * 100];\n};\n\nconvert.hcg.hsl = function (hcg) {\n\tconst c = hcg[1] / 100;\n\tconst g = hcg[2] / 100;\n\n\tconst l = g * (1.0 - c) + 0.5 * c;\n\tlet s = 0;\n\n\tif (l > 0.0 && l < 0.5) {\n\t\ts = c / (2 * l);\n\t} else\n\tif (l >= 0.5 && l < 1.0) {\n\t\ts = c / (2 * (1 - l));\n\t}\n\n\treturn [hcg[0], s * 100, l * 100];\n};\n\nconvert.hcg.hwb = function (hcg) {\n\tconst c = hcg[1] / 100;\n\tconst g = hcg[2] / 100;\n\tconst v = c + g * (1.0 - c);\n\treturn [hcg[0], (v - c) * 100, (1 - v) * 100];\n};\n\nconvert.hwb.hcg = function (hwb) {\n\tconst w = hwb[1] / 100;\n\tconst b = hwb[2] / 100;\n\tconst v = 1 - b;\n\tconst c = v - w;\n\tlet g = 0;\n\n\tif (c < 1) {\n\t\tg = (v - c) / (1 - c);\n\t}\n\n\treturn [hwb[0], c * 100, g * 100];\n};\n\nconvert.apple.rgb = function (apple) {\n\treturn [(apple[0] / 65535) * 255, (apple[1] / 65535) * 255, (apple[2] / 65535) * 255];\n};\n\nconvert.rgb.apple = function (rgb) {\n\treturn [(rgb[0] / 255) * 65535, (rgb[1] / 255) * 65535, (rgb[2] / 255) * 65535];\n};\n\nconvert.gray.rgb = function (args) {\n\treturn [args[0] / 100 * 255, args[0] / 100 * 255, args[0] / 100 * 255];\n};\n\nconvert.gray.hsl = function (args) {\n\treturn [0, 0, args[0]];\n};\n\nconvert.gray.hsv = convert.gray.hsl;\n\nconvert.gray.hwb = function (gray) {\n\treturn [0, 100, gray[0]];\n};\n\nconvert.gray.cmyk = function (gray) {\n\treturn [0, 0, 0, gray[0]];\n};\n\nconvert.gray.lab = function (gray) {\n\treturn [gray[0], 0, 0];\n};\n\nconvert.gray.hex = function (gray) {\n\tconst val = Math.round(gray[0] / 100 * 255) & 0xFF;\n\tconst integer = (val << 16) + (val << 8) + val;\n\n\tconst string = integer.toString(16).toUpperCase();\n\treturn '000000'.substring(string.length) + string;\n};\n\nconvert.rgb.gray = function (rgb) {\n\tconst val = (rgb[0] + rgb[1] + rgb[2]) / 3;\n\treturn [val / 255 * 100];\n};\n","const conversions = require('./conversions');\nconst route = require('./route');\n\nconst convert = {};\n\nconst models = Object.keys(conversions);\n\nfunction wrapRaw(fn) {\n\tconst wrappedFn = function (...args) {\n\t\tconst arg0 = args[0];\n\t\tif (arg0 === undefined || arg0 === null) {\n\t\t\treturn arg0;\n\t\t}\n\n\t\tif (arg0.length > 1) {\n\t\t\targs = arg0;\n\t\t}\n\n\t\treturn fn(args);\n\t};\n\n\t// Preserve .conversion property if there is one\n\tif ('conversion' in fn) {\n\t\twrappedFn.conversion = fn.conversion;\n\t}\n\n\treturn wrappedFn;\n}\n\nfunction wrapRounded(fn) {\n\tconst wrappedFn = function (...args) {\n\t\tconst arg0 = args[0];\n\n\t\tif (arg0 === undefined || arg0 === null) {\n\t\t\treturn arg0;\n\t\t}\n\n\t\tif (arg0.length > 1) {\n\t\t\targs = arg0;\n\t\t}\n\n\t\tconst result = fn(args);\n\n\t\t// We're assuming the result is an array here.\n\t\t// see notice in conversions.js; don't use box types\n\t\t// in conversion functions.\n\t\tif (typeof result === 'object') {\n\t\t\tfor (let len = result.length, i = 0; i < len; i++) {\n\t\t\t\tresult[i] = Math.round(result[i]);\n\t\t\t}\n\t\t}\n\n\t\treturn result;\n\t};\n\n\t// Preserve .conversion property if there is one\n\tif ('conversion' in fn) {\n\t\twrappedFn.conversion = fn.conversion;\n\t}\n\n\treturn wrappedFn;\n}\n\nmodels.forEach(fromModel => {\n\tconvert[fromModel] = {};\n\n\tObject.defineProperty(convert[fromModel], 'channels', {value: conversions[fromModel].channels});\n\tObject.defineProperty(convert[fromModel], 'labels', {value: conversions[fromModel].labels});\n\n\tconst routes = route(fromModel);\n\tconst routeModels = Object.keys(routes);\n\n\trouteModels.forEach(toModel => {\n\t\tconst fn = routes[toModel];\n\n\t\tconvert[fromModel][toModel] = wrapRounded(fn);\n\t\tconvert[fromModel][toModel].raw = wrapRaw(fn);\n\t});\n});\n\nmodule.exports = convert;\n","const conversions = require('./conversions');\n\n/*\n\tThis function routes a model to all other models.\n\n\tall functions that are routed have a property `.conversion` attached\n\tto the returned synthetic function. This property is an array\n\tof strings, each with the steps in between the 'from' and 'to'\n\tcolor models (inclusive).\n\n\tconversions that are not possible simply are not included.\n*/\n\nfunction buildGraph() {\n\tconst graph = {};\n\t// https://jsperf.com/object-keys-vs-for-in-with-closure/3\n\tconst models = Object.keys(conversions);\n\n\tfor (let len = models.length, i = 0; i < len; i++) {\n\t\tgraph[models[i]] = {\n\t\t\t// http://jsperf.com/1-vs-infinity\n\t\t\t// micro-opt, but this is simple.\n\t\t\tdistance: -1,\n\t\t\tparent: null\n\t\t};\n\t}\n\n\treturn graph;\n}\n\n// https://en.wikipedia.org/wiki/Breadth-first_search\nfunction deriveBFS(fromModel) {\n\tconst graph = buildGraph();\n\tconst queue = [fromModel]; // Unshift -> queue -> pop\n\n\tgraph[fromModel].distance = 0;\n\n\twhile (queue.length) {\n\t\tconst current = queue.pop();\n\t\tconst adjacents = Object.keys(conversions[current]);\n\n\t\tfor (let len = adjacents.length, i = 0; i < len; i++) {\n\t\t\tconst adjacent = adjacents[i];\n\t\t\tconst node = graph[adjacent];\n\n\t\t\tif (node.distance === -1) {\n\t\t\t\tnode.distance = graph[current].distance + 1;\n\t\t\t\tnode.parent = current;\n\t\t\t\tqueue.unshift(adjacent);\n\t\t\t}\n\t\t}\n\t}\n\n\treturn graph;\n}\n\nfunction link(from, to) {\n\treturn function (args) {\n\t\treturn to(from(args));\n\t};\n}\n\nfunction wrapConversion(toModel, graph) {\n\tconst path = [graph[toModel].parent, toModel];\n\tlet fn = conversions[graph[toModel].parent][toModel];\n\n\tlet cur = graph[toModel].parent;\n\twhile (graph[cur].parent) {\n\t\tpath.unshift(graph[cur].parent);\n\t\tfn = link(conversions[graph[cur].parent][cur], fn);\n\t\tcur = graph[cur].parent;\n\t}\n\n\tfn.conversion = path;\n\treturn fn;\n}\n\nmodule.exports = function (fromModel) {\n\tconst graph = deriveBFS(fromModel);\n\tconst conversion = {};\n\n\tconst models = Object.keys(graph);\n\tfor (let len = models.length, i = 0; i < len; i++) {\n\t\tconst toModel = models[i];\n\t\tconst node = graph[toModel];\n\n\t\tif (node.parent === null) {\n\t\t\t// No possible conversion, or this node is the source model.\n\t\t\tcontinue;\n\t\t}\n\n\t\tconversion[toModel] = wrapConversion(toModel, graph);\n\t}\n\n\treturn conversion;\n};\n\n","'use strict'\r\n\r\nmodule.exports = {\r\n\t\"aliceblue\": [240, 248, 255],\r\n\t\"antiquewhite\": [250, 235, 215],\r\n\t\"aqua\": [0, 255, 255],\r\n\t\"aquamarine\": [127, 255, 212],\r\n\t\"azure\": [240, 255, 255],\r\n\t\"beige\": [245, 245, 220],\r\n\t\"bisque\": [255, 228, 196],\r\n\t\"black\": [0, 0, 0],\r\n\t\"blanchedalmond\": [255, 235, 205],\r\n\t\"blue\": [0, 0, 255],\r\n\t\"blueviolet\": [138, 43, 226],\r\n\t\"brown\": [165, 42, 42],\r\n\t\"burlywood\": [222, 184, 135],\r\n\t\"cadetblue\": [95, 158, 160],\r\n\t\"chartreuse\": [127, 255, 0],\r\n\t\"chocolate\": [210, 105, 30],\r\n\t\"coral\": [255, 127, 80],\r\n\t\"cornflowerblue\": [100, 149, 237],\r\n\t\"cornsilk\": [255, 248, 220],\r\n\t\"crimson\": [220, 20, 60],\r\n\t\"cyan\": [0, 255, 255],\r\n\t\"darkblue\": [0, 0, 139],\r\n\t\"darkcyan\": [0, 139, 139],\r\n\t\"darkgoldenrod\": [184, 134, 11],\r\n\t\"darkgray\": [169, 169, 169],\r\n\t\"darkgreen\": [0, 100, 0],\r\n\t\"darkgrey\": [169, 169, 169],\r\n\t\"darkkhaki\": [189, 183, 107],\r\n\t\"darkmagenta\": [139, 0, 139],\r\n\t\"darkolivegreen\": [85, 107, 47],\r\n\t\"darkorange\": [255, 140, 0],\r\n\t\"darkorchid\": [153, 50, 204],\r\n\t\"darkred\": [139, 0, 0],\r\n\t\"darksalmon\": [233, 150, 122],\r\n\t\"darkseagreen\": [143, 188, 143],\r\n\t\"darkslateblue\": [72, 61, 139],\r\n\t\"darkslategray\": [47, 79, 79],\r\n\t\"darkslategrey\": [47, 79, 79],\r\n\t\"darkturquoise\": [0, 206, 209],\r\n\t\"darkviolet\": [148, 0, 211],\r\n\t\"deeppink\": [255, 20, 147],\r\n\t\"deepskyblue\": [0, 191, 255],\r\n\t\"dimgray\": [105, 105, 105],\r\n\t\"dimgrey\": [105, 105, 105],\r\n\t\"dodgerblue\": [30, 144, 255],\r\n\t\"firebrick\": [178, 34, 34],\r\n\t\"floralwhite\": [255, 250, 240],\r\n\t\"forestgreen\": [34, 139, 34],\r\n\t\"fuchsia\": [255, 0, 255],\r\n\t\"gainsboro\": [220, 220, 220],\r\n\t\"ghostwhite\": [248, 248, 255],\r\n\t\"gold\": [255, 215, 0],\r\n\t\"goldenrod\": [218, 165, 32],\r\n\t\"gray\": [128, 128, 128],\r\n\t\"green\": [0, 128, 0],\r\n\t\"greenyellow\": [173, 255, 47],\r\n\t\"grey\": [128, 128, 128],\r\n\t\"honeydew\": [240, 255, 240],\r\n\t\"hotpink\": [255, 105, 180],\r\n\t\"indianred\": [205, 92, 92],\r\n\t\"indigo\": [75, 0, 130],\r\n\t\"ivory\": [255, 255, 240],\r\n\t\"khaki\": [240, 230, 140],\r\n\t\"lavender\": [230, 230, 250],\r\n\t\"lavenderblush\": [255, 240, 245],\r\n\t\"lawngreen\": [124, 252, 0],\r\n\t\"lemonchiffon\": [255, 250, 205],\r\n\t\"lightblue\": [173, 216, 230],\r\n\t\"lightcoral\": [240, 128, 128],\r\n\t\"lightcyan\": [224, 255, 255],\r\n\t\"lightgoldenrodyellow\": [250, 250, 210],\r\n\t\"lightgray\": [211, 211, 211],\r\n\t\"lightgreen\": [144, 238, 144],\r\n\t\"lightgrey\": [211, 211, 211],\r\n\t\"lightpink\": [255, 182, 193],\r\n\t\"lightsalmon\": [255, 160, 122],\r\n\t\"lightseagreen\": [32, 178, 170],\r\n\t\"lightskyblue\": [135, 206, 250],\r\n\t\"lightslategray\": [119, 136, 153],\r\n\t\"lightslategrey\": [119, 136, 153],\r\n\t\"lightsteelblue\": [176, 196, 222],\r\n\t\"lightyellow\": [255, 255, 224],\r\n\t\"lime\": [0, 255, 0],\r\n\t\"limegreen\": [50, 205, 50],\r\n\t\"linen\": [250, 240, 230],\r\n\t\"magenta\": [255, 0, 255],\r\n\t\"maroon\": [128, 0, 0],\r\n\t\"mediumaquamarine\": [102, 205, 170],\r\n\t\"mediumblue\": [0, 0, 205],\r\n\t\"mediumorchid\": [186, 85, 211],\r\n\t\"mediumpurple\": [147, 112, 219],\r\n\t\"mediumseagreen\": [60, 179, 113],\r\n\t\"mediumslateblue\": [123, 104, 238],\r\n\t\"mediumspringgreen\": [0, 250, 154],\r\n\t\"mediumturquoise\": [72, 209, 204],\r\n\t\"mediumvioletred\": [199, 21, 133],\r\n\t\"midnightblue\": [25, 25, 112],\r\n\t\"mintcream\": [245, 255, 250],\r\n\t\"mistyrose\": [255, 228, 225],\r\n\t\"moccasin\": [255, 228, 181],\r\n\t\"navajowhite\": [255, 222, 173],\r\n\t\"navy\": [0, 0, 128],\r\n\t\"oldlace\": [253, 245, 230],\r\n\t\"olive\": [128, 128, 0],\r\n\t\"olivedrab\": [107, 142, 35],\r\n\t\"orange\": [255, 165, 0],\r\n\t\"orangered\": [255, 69, 0],\r\n\t\"orchid\": [218, 112, 214],\r\n\t\"palegoldenrod\": [238, 232, 170],\r\n\t\"palegreen\": [152, 251, 152],\r\n\t\"paleturquoise\": [175, 238, 238],\r\n\t\"palevioletred\": [219, 112, 147],\r\n\t\"papayawhip\": [255, 239, 213],\r\n\t\"peachpuff\": [255, 218, 185],\r\n\t\"peru\": [205, 133, 63],\r\n\t\"pink\": [255, 192, 203],\r\n\t\"plum\": [221, 160, 221],\r\n\t\"powderblue\": [176, 224, 230],\r\n\t\"purple\": [128, 0, 128],\r\n\t\"rebeccapurple\": [102, 51, 153],\r\n\t\"red\": [255, 0, 0],\r\n\t\"rosybrown\": [188, 143, 143],\r\n\t\"royalblue\": [65, 105, 225],\r\n\t\"saddlebrown\": [139, 69, 19],\r\n\t\"salmon\": [250, 128, 114],\r\n\t\"sandybrown\": [244, 164, 96],\r\n\t\"seagreen\": [46, 139, 87],\r\n\t\"seashell\": [255, 245, 238],\r\n\t\"sienna\": [160, 82, 45],\r\n\t\"silver\": [192, 192, 192],\r\n\t\"skyblue\": [135, 206, 235],\r\n\t\"slateblue\": [106, 90, 205],\r\n\t\"slategray\": [112, 128, 144],\r\n\t\"slategrey\": [112, 128, 144],\r\n\t\"snow\": [255, 250, 250],\r\n\t\"springgreen\": [0, 255, 127],\r\n\t\"steelblue\": [70, 130, 180],\r\n\t\"tan\": [210, 180, 140],\r\n\t\"teal\": [0, 128, 128],\r\n\t\"thistle\": [216, 191, 216],\r\n\t\"tomato\": [255, 99, 71],\r\n\t\"turquoise\": [64, 224, 208],\r\n\t\"violet\": [238, 130, 238],\r\n\t\"wheat\": [245, 222, 179],\r\n\t\"white\": [255, 255, 255],\r\n\t\"whitesmoke\": [245, 245, 245],\r\n\t\"yellow\": [255, 255, 0],\r\n\t\"yellowgreen\": [154, 205, 50]\r\n};\r\n","/** @license React v16.13.1\n * react-is.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\n\n\nif (process.env.NODE_ENV !== \"production\") {\n (function() {\n'use strict';\n\n// The Symbol used to tag the ReactElement-like types. If there is no native Symbol\n// nor polyfill, then a plain number is used for performance.\nvar hasSymbol = typeof Symbol === 'function' && Symbol.for;\nvar REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for('react.element') : 0xeac7;\nvar REACT_PORTAL_TYPE = hasSymbol ? Symbol.for('react.portal') : 0xeaca;\nvar REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for('react.fragment') : 0xeacb;\nvar REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for('react.strict_mode') : 0xeacc;\nvar REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;\nvar REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;\nvar REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary\n// (unstable) APIs that have been removed. Can we remove the symbols?\n\nvar REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf;\nvar REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;\nvar REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;\nvar REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;\nvar REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;\nvar REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;\nvar REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;\nvar REACT_BLOCK_TYPE = hasSymbol ? Symbol.for('react.block') : 0xead9;\nvar REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;\nvar REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;\nvar REACT_SCOPE_TYPE = hasSymbol ? Symbol.for('react.scope') : 0xead7;\n\nfunction isValidElementType(type) {\n return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.\n type === REACT_FRAGMENT_TYPE || type === REACT_CONCURRENT_MODE_TYPE || type === REACT_PROFILER_TYPE || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || typeof type === 'object' && type !== null && (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || type.$$typeof === REACT_FUNDAMENTAL_TYPE || type.$$typeof === REACT_RESPONDER_TYPE || type.$$typeof === REACT_SCOPE_TYPE || type.$$typeof === REACT_BLOCK_TYPE);\n}\n\nfunction typeOf(object) {\n if (typeof object === 'object' && object !== null) {\n var $$typeof = object.$$typeof;\n\n switch ($$typeof) {\n case REACT_ELEMENT_TYPE:\n var type = object.type;\n\n switch (type) {\n case REACT_ASYNC_MODE_TYPE:\n case REACT_CONCURRENT_MODE_TYPE:\n case REACT_FRAGMENT_TYPE:\n case REACT_PROFILER_TYPE:\n case REACT_STRICT_MODE_TYPE:\n case REACT_SUSPENSE_TYPE:\n return type;\n\n default:\n var $$typeofType = type && type.$$typeof;\n\n switch ($$typeofType) {\n case REACT_CONTEXT_TYPE:\n case REACT_FORWARD_REF_TYPE:\n case REACT_LAZY_TYPE:\n case REACT_MEMO_TYPE:\n case REACT_PROVIDER_TYPE:\n return $$typeofType;\n\n default:\n return $$typeof;\n }\n\n }\n\n case REACT_PORTAL_TYPE:\n return $$typeof;\n }\n }\n\n return undefined;\n} // AsyncMode is deprecated along with isAsyncMode\n\nvar AsyncMode = REACT_ASYNC_MODE_TYPE;\nvar ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;\nvar ContextConsumer = REACT_CONTEXT_TYPE;\nvar ContextProvider = REACT_PROVIDER_TYPE;\nvar Element = REACT_ELEMENT_TYPE;\nvar ForwardRef = REACT_FORWARD_REF_TYPE;\nvar Fragment = REACT_FRAGMENT_TYPE;\nvar Lazy = REACT_LAZY_TYPE;\nvar Memo = REACT_MEMO_TYPE;\nvar Portal = REACT_PORTAL_TYPE;\nvar Profiler = REACT_PROFILER_TYPE;\nvar StrictMode = REACT_STRICT_MODE_TYPE;\nvar Suspense = REACT_SUSPENSE_TYPE;\nvar hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated\n\nfunction isAsyncMode(object) {\n {\n if (!hasWarnedAboutDeprecatedIsAsyncMode) {\n hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint\n\n console['warn']('The ReactIs.isAsyncMode() alias has been deprecated, ' + 'and will be removed in React 17+. Update your code to use ' + 'ReactIs.isConcurrentMode() instead. It has the exact same API.');\n }\n }\n\n return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;\n}\nfunction isConcurrentMode(object) {\n return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;\n}\nfunction isContextConsumer(object) {\n return typeOf(object) === REACT_CONTEXT_TYPE;\n}\nfunction isContextProvider(object) {\n return typeOf(object) === REACT_PROVIDER_TYPE;\n}\nfunction isElement(object) {\n return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;\n}\nfunction isForwardRef(object) {\n return typeOf(object) === REACT_FORWARD_REF_TYPE;\n}\nfunction isFragment(object) {\n return typeOf(object) === REACT_FRAGMENT_TYPE;\n}\nfunction isLazy(object) {\n return typeOf(object) === REACT_LAZY_TYPE;\n}\nfunction isMemo(object) {\n return typeOf(object) === REACT_MEMO_TYPE;\n}\nfunction isPortal(object) {\n return typeOf(object) === REACT_PORTAL_TYPE;\n}\nfunction isProfiler(object) {\n return typeOf(object) === REACT_PROFILER_TYPE;\n}\nfunction isStrictMode(object) {\n return typeOf(object) === REACT_STRICT_MODE_TYPE;\n}\nfunction isSuspense(object) {\n return typeOf(object) === REACT_SUSPENSE_TYPE;\n}\n\nexports.AsyncMode = AsyncMode;\nexports.ConcurrentMode = ConcurrentMode;\nexports.ContextConsumer = ContextConsumer;\nexports.ContextProvider = ContextProvider;\nexports.Element = Element;\nexports.ForwardRef = ForwardRef;\nexports.Fragment = Fragment;\nexports.Lazy = Lazy;\nexports.Memo = Memo;\nexports.Portal = Portal;\nexports.Profiler = Profiler;\nexports.StrictMode = StrictMode;\nexports.Suspense = Suspense;\nexports.isAsyncMode = isAsyncMode;\nexports.isConcurrentMode = isConcurrentMode;\nexports.isContextConsumer = isContextConsumer;\nexports.isContextProvider = isContextProvider;\nexports.isElement = isElement;\nexports.isForwardRef = isForwardRef;\nexports.isFragment = isFragment;\nexports.isLazy = isLazy;\nexports.isMemo = isMemo;\nexports.isPortal = isPortal;\nexports.isProfiler = isProfiler;\nexports.isStrictMode = isStrictMode;\nexports.isSuspense = isSuspense;\nexports.isValidElementType = isValidElementType;\nexports.typeOf = typeOf;\n })();\n}\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.min.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n","module.exports = function(module) {\n\tif (!module.webpackPolyfill) {\n\t\tmodule.deprecate = function() {};\n\t\tmodule.paths = [];\n\t\t// module.parent = undefined by default\n\t\tif (!module.children) module.children = [];\n\t\tObject.defineProperty(module, \"loaded\", {\n\t\t\tenumerable: true,\n\t\t\tget: function() {\n\t\t\t\treturn module.l;\n\t\t\t}\n\t\t});\n\t\tObject.defineProperty(module, \"id\", {\n\t\t\tenumerable: true,\n\t\t\tget: function() {\n\t\t\t\treturn module.i;\n\t\t\t}\n\t\t});\n\t\tmodule.webpackPolyfill = 1;\n\t}\n\treturn module;\n};\n","/**\n * Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\nimport type {Config, Printer, Refs} from './types';\n\nconst getKeysOfEnumerableProperties = (object: Record<string, any>) => {\n const keys: Array<string | symbol> = Object.keys(object).sort();\n\n if (Object.getOwnPropertySymbols) {\n Object.getOwnPropertySymbols(object).forEach(symbol => {\n if (Object.getOwnPropertyDescriptor(object, symbol)!.enumerable) {\n keys.push(symbol);\n }\n });\n }\n\n return keys as Array<string>;\n};\n\n/**\n * Return entries (for example, of a map)\n * with spacing, indentation, and comma\n * without surrounding punctuation (for example, braces)\n */\nexport function printIteratorEntries(\n iterator: Iterator<[unknown, unknown]>,\n config: Config,\n indentation: string,\n depth: number,\n refs: Refs,\n printer: Printer,\n // Too bad, so sad that separator for ECMAScript Map has been ' => '\n // What a distracting diff if you change a data structure to/from\n // ECMAScript Object or Immutable.Map/OrderedMap which use the default.\n separator: string = ': ',\n): string {\n let result = '';\n let current = iterator.next();\n\n if (!current.done) {\n result += config.spacingOuter;\n\n const indentationNext = indentation + config.indent;\n\n while (!current.done) {\n const name = printer(\n current.value[0],\n config,\n indentationNext,\n depth,\n refs,\n );\n const value = printer(\n current.value[1],\n config,\n indentationNext,\n depth,\n refs,\n );\n\n result += indentationNext + name + separator + value;\n\n current = iterator.next();\n\n if (!current.done) {\n result += ',' + config.spacingInner;\n } else if (!config.min) {\n result += ',';\n }\n }\n\n result += config.spacingOuter + indentation;\n }\n\n return result;\n}\n\n/**\n * Return values (for example, of a set)\n * with spacing, indentation, and comma\n * without surrounding punctuation (braces or brackets)\n */\nexport function printIteratorValues(\n iterator: Iterator<unknown>,\n config: Config,\n indentation: string,\n depth: number,\n refs: Refs,\n printer: Printer,\n): string {\n let result = '';\n let current = iterator.next();\n\n if (!current.done) {\n result += config.spacingOuter;\n\n const indentationNext = indentation + config.indent;\n\n while (!current.done) {\n result +=\n indentationNext +\n printer(current.value, config, indentationNext, depth, refs);\n\n current = iterator.next();\n\n if (!current.done) {\n result += ',' + config.spacingInner;\n } else if (!config.min) {\n result += ',';\n }\n }\n\n result += config.spacingOuter + indentation;\n }\n\n return result;\n}\n\n/**\n * Return items (for example, of an array)\n * with spacing, indentation, and comma\n * without surrounding punctuation (for example, brackets)\n **/\nexport function printListItems(\n list: ArrayLike<unknown>,\n config: Config,\n indentation: string,\n depth: number,\n refs: Refs,\n printer: Printer,\n): string {\n let result = '';\n\n if (list.length) {\n result += config.spacingOuter;\n\n const indentationNext = indentation + config.indent;\n\n for (let i = 0; i < list.length; i++) {\n result +=\n indentationNext +\n printer(list[i], config, indentationNext, depth, refs);\n\n if (i < list.length - 1) {\n result += ',' + config.spacingInner;\n } else if (!config.min) {\n result += ',';\n }\n }\n\n result += config.spacingOuter + indentation;\n }\n\n return result;\n}\n\n/**\n * Return properties of an object\n * with spacing, indentation, and comma\n * without surrounding punctuation (for example, braces)\n */\nexport function printObjectProperties(\n val: Record<string, unknown>,\n config: Config,\n indentation: string,\n depth: number,\n refs: Refs,\n printer: Printer,\n): string {\n let result = '';\n const keys = getKeysOfEnumerableProperties(val);\n\n if (keys.length) {\n result += config.spacingOuter;\n\n const indentationNext = indentation + config.indent;\n\n for (let i = 0; i < keys.length; i++) {\n const key = keys[i];\n const name = printer(key, config, indentationNext, depth, refs);\n const value = printer(val[key], config, indentationNext, depth, refs);\n\n result += indentationNext + name + ': ' + value;\n\n if (i < keys.length - 1) {\n result += ',' + config.spacingInner;\n } else if (!config.min) {\n result += ',';\n }\n }\n\n result += config.spacingOuter + indentation;\n }\n\n return result;\n}\n","/**\n * Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport style = require('ansi-styles');\nimport type * as PrettyFormat from './types';\n\nimport {\n printIteratorEntries,\n printIteratorValues,\n printListItems,\n printObjectProperties,\n} from './collections';\n\nimport AsymmetricMatcher from './plugins/AsymmetricMatcher';\nimport ConvertAnsi from './plugins/ConvertAnsi';\nimport DOMCollection from './plugins/DOMCollection';\nimport DOMElement from './plugins/DOMElement';\nimport Immutable from './plugins/Immutable';\nimport ReactElement from './plugins/ReactElement';\nimport ReactTestComponent from './plugins/ReactTestComponent';\n\nconst toString = Object.prototype.toString;\nconst toISOString = Date.prototype.toISOString;\nconst errorToString = Error.prototype.toString;\nconst regExpToString = RegExp.prototype.toString;\n\n/**\n * Explicitly comparing typeof constructor to function avoids undefined as name\n * when mock identity-obj-proxy returns the key as the value for any key.\n */\nconst getConstructorName = (val: new (...args: Array<any>) => any) =>\n (typeof val.constructor === 'function' && val.constructor.name) || 'Object';\n\n/* global window */\n/** Is val is equal to global window object? Works even if it does not exist :) */\nconst isWindow = (val: any) => typeof window !== 'undefined' && val === window;\n\nconst SYMBOL_REGEXP = /^Symbol\\((.*)\\)(.*)$/;\nconst NEWLINE_REGEXP = /\\n/gi;\n\nclass PrettyFormatPluginError extends Error {\n constructor(message: string, stack: string) {\n super(message);\n this.stack = stack;\n this.name = this.constructor.name;\n }\n}\n\nfunction isToStringedArrayType(toStringed: string): boolean {\n return (\n toStringed === '[object Array]' ||\n toStringed === '[object ArrayBuffer]' ||\n toStringed === '[object DataView]' ||\n toStringed === '[object Float32Array]' ||\n toStringed === '[object Float64Array]' ||\n toStringed === '[object Int8Array]' ||\n toStringed === '[object Int16Array]' ||\n toStringed === '[object Int32Array]' ||\n toStringed === '[object Uint8Array]' ||\n toStringed === '[object Uint8ClampedArray]' ||\n toStringed === '[object Uint16Array]' ||\n toStringed === '[object Uint32Array]'\n );\n}\n\nfunction printNumber(val: number): string {\n return Object.is(val, -0) ? '-0' : String(val);\n}\n\nfunction printBigInt(val: bigint): string {\n return String(`${val}n`);\n}\n\nfunction printFunction(val: Function, printFunctionName: boolean): string {\n if (!printFunctionName) {\n return '[Function]';\n }\n return '[Function ' + (val.name || 'anonymous') + ']';\n}\n\nfunction printSymbol(val: symbol): string {\n return String(val).replace(SYMBOL_REGEXP, 'Symbol($1)');\n}\n\nfunction printError(val: Error): string {\n return '[' + errorToString.call(val) + ']';\n}\n\n/**\n * The first port of call for printing an object, handles most of the\n * data-types in JS.\n */\nfunction printBasicValue(\n val: any,\n printFunctionName: boolean,\n escapeRegex: boolean,\n escapeString: boolean,\n): string | null {\n if (val === true || val === false) {\n return '' + val;\n }\n if (val === undefined) {\n return 'undefined';\n }\n if (val === null) {\n return 'null';\n }\n\n const typeOf = typeof val;\n\n if (typeOf === 'number') {\n return printNumber(val);\n }\n if (typeOf === 'bigint') {\n return printBigInt(val);\n }\n if (typeOf === 'string') {\n if (escapeString) {\n return '\"' + val.replace(/\"|\\\\/g, '\\\\$&') + '\"';\n }\n return '\"' + val + '\"';\n }\n if (typeOf === 'function') {\n return printFunction(val, printFunctionName);\n }\n if (typeOf === 'symbol') {\n return printSymbol(val);\n }\n\n const toStringed = toString.call(val);\n\n if (toStringed === '[object WeakMap]') {\n return 'WeakMap {}';\n }\n if (toStringed === '[object WeakSet]') {\n return 'WeakSet {}';\n }\n if (\n toStringed === '[object Function]' ||\n toStringed === '[object GeneratorFunction]'\n ) {\n return printFunction(val, printFunctionName);\n }\n if (toStringed === '[object Symbol]') {\n return printSymbol(val);\n }\n if (toStringed === '[object Date]') {\n return isNaN(+val) ? 'Date { NaN }' : toISOString.call(val);\n }\n if (toStringed === '[object Error]') {\n return printError(val);\n }\n if (toStringed === '[object RegExp]') {\n if (escapeRegex) {\n // https://github.com/benjamingr/RegExp.escape/blob/master/polyfill.js\n return regExpToString.call(val).replace(/[\\\\^$*+?.()|[\\]{}]/g, '\\\\$&');\n }\n return regExpToString.call(val);\n }\n\n if (val instanceof Error) {\n return printError(val);\n }\n\n return null;\n}\n\n/**\n * Handles more complex objects ( such as objects with circular references.\n * maps and sets etc )\n */\nfunction printComplexValue(\n val: any,\n config: PrettyFormat.Config,\n indentation: string,\n depth: number,\n refs: PrettyFormat.Refs,\n hasCalledToJSON?: boolean,\n): string {\n if (refs.indexOf(val) !== -1) {\n return '[Circular]';\n }\n refs = refs.slice();\n refs.push(val);\n\n const hitMaxDepth = ++depth > config.maxDepth;\n const min = config.min;\n\n if (\n config.callToJSON &&\n !hitMaxDepth &&\n val.toJSON &&\n typeof val.toJSON === 'function' &&\n !hasCalledToJSON\n ) {\n return printer(val.toJSON(), config, indentation, depth, refs, true);\n }\n\n const toStringed = toString.call(val);\n if (toStringed === '[object Arguments]') {\n return hitMaxDepth\n ? '[Arguments]'\n : (min ? '' : 'Arguments ') +\n '[' +\n printListItems(val, config, indentation, depth, refs, printer) +\n ']';\n }\n if (isToStringedArrayType(toStringed)) {\n return hitMaxDepth\n ? '[' + val.constructor.name + ']'\n : (min ? '' : val.constructor.name + ' ') +\n '[' +\n printListItems(val, config, indentation, depth, refs, printer) +\n ']';\n }\n if (toStringed === '[object Map]') {\n return hitMaxDepth\n ? '[Map]'\n : 'Map {' +\n printIteratorEntries(\n val.entries(),\n config,\n indentation,\n depth,\n refs,\n printer,\n ' => ',\n ) +\n '}';\n }\n if (toStringed === '[object Set]') {\n return hitMaxDepth\n ? '[Set]'\n : 'Set {' +\n printIteratorValues(\n val.values(),\n config,\n indentation,\n depth,\n refs,\n printer,\n ) +\n '}';\n }\n\n // Avoid failure to serialize global window object in jsdom test environment.\n // For example, not even relevant if window is prop of React element.\n return hitMaxDepth || isWindow(val)\n ? '[' + getConstructorName(val) + ']'\n : (min ? '' : getConstructorName(val) + ' ') +\n '{' +\n printObjectProperties(val, config, indentation, depth, refs, printer) +\n '}';\n}\n\nfunction isNewPlugin(\n plugin: PrettyFormat.Plugin,\n): plugin is PrettyFormat.NewPlugin {\n return (plugin as PrettyFormat.NewPlugin).serialize != null;\n}\n\nfunction printPlugin(\n plugin: PrettyFormat.Plugin,\n val: any,\n config: PrettyFormat.Config,\n indentation: string,\n depth: number,\n refs: PrettyFormat.Refs,\n): string {\n let printed;\n\n try {\n printed = isNewPlugin(plugin)\n ? plugin.serialize(val, config, indentation, depth, refs, printer)\n : plugin.print(\n val,\n valChild => printer(valChild, config, indentation, depth, refs),\n str => {\n const indentationNext = indentation + config.indent;\n return (\n indentationNext +\n str.replace(NEWLINE_REGEXP, '\\n' + indentationNext)\n );\n },\n {\n edgeSpacing: config.spacingOuter,\n min: config.min,\n spacing: config.spacingInner,\n },\n config.colors,\n );\n } catch (error) {\n throw new PrettyFormatPluginError(error.message, error.stack);\n }\n if (typeof printed !== 'string') {\n throw new Error(\n `pretty-format: Plugin must return type \"string\" but instead returned \"${typeof printed}\".`,\n );\n }\n return printed;\n}\n\nfunction findPlugin(plugins: PrettyFormat.Plugins, val: any) {\n for (let p = 0; p < plugins.length; p++) {\n try {\n if (plugins[p].test(val)) {\n return plugins[p];\n }\n } catch (error) {\n throw new PrettyFormatPluginError(error.message, error.stack);\n }\n }\n\n return null;\n}\n\nfunction printer(\n val: any,\n config: PrettyFormat.Config,\n indentation: string,\n depth: number,\n refs: PrettyFormat.Refs,\n hasCalledToJSON?: boolean,\n): string {\n const plugin = findPlugin(config.plugins, val);\n if (plugin !== null) {\n return printPlugin(plugin, val, config, indentation, depth, refs);\n }\n\n const basicResult = printBasicValue(\n val,\n config.printFunctionName,\n config.escapeRegex,\n config.escapeString,\n );\n if (basicResult !== null) {\n return basicResult;\n }\n\n return printComplexValue(\n val,\n config,\n indentation,\n depth,\n refs,\n hasCalledToJSON,\n );\n}\n\nconst DEFAULT_THEME: PrettyFormat.Theme = {\n comment: 'gray',\n content: 'reset',\n prop: 'yellow',\n tag: 'cyan',\n value: 'green',\n};\n\nconst DEFAULT_THEME_KEYS = Object.keys(DEFAULT_THEME) as Array<\n keyof typeof DEFAULT_THEME\n>;\n\nconst DEFAULT_OPTIONS: PrettyFormat.Options = {\n callToJSON: true,\n escapeRegex: false,\n escapeString: true,\n highlight: false,\n indent: 2,\n maxDepth: Infinity,\n min: false,\n plugins: [],\n printFunctionName: true,\n theme: DEFAULT_THEME,\n};\n\nfunction validateOptions(options: PrettyFormat.OptionsReceived) {\n Object.keys(options).forEach(key => {\n if (!DEFAULT_OPTIONS.hasOwnProperty(key)) {\n throw new Error(`pretty-format: Unknown option \"${key}\".`);\n }\n });\n\n if (options.min && options.indent !== undefined && options.indent !== 0) {\n throw new Error(\n 'pretty-format: Options \"min\" and \"indent\" cannot be used together.',\n );\n }\n\n if (options.theme !== undefined) {\n if (options.theme === null) {\n throw new Error(`pretty-format: Option \"theme\" must not be null.`);\n }\n\n if (typeof options.theme !== 'object') {\n throw new Error(\n `pretty-format: Option \"theme\" must be of type \"object\" but instead received \"${typeof options.theme}\".`,\n );\n }\n }\n}\n\nconst getColorsHighlight = (\n options: PrettyFormat.OptionsReceived,\n): PrettyFormat.Colors =>\n DEFAULT_THEME_KEYS.reduce((colors, key) => {\n const value =\n options.theme && options.theme[key] !== undefined\n ? options.theme[key]\n : DEFAULT_THEME[key];\n const color = value && (style as any)[value];\n if (\n color &&\n typeof color.close === 'string' &&\n typeof color.open === 'string'\n ) {\n colors[key] = color;\n } else {\n throw new Error(\n `pretty-format: Option \"theme\" has a key \"${key}\" whose value \"${value}\" is undefined in ansi-styles.`,\n );\n }\n return colors;\n }, Object.create(null));\n\nconst getColorsEmpty = (): PrettyFormat.Colors =>\n DEFAULT_THEME_KEYS.reduce((colors, key) => {\n colors[key] = {close: '', open: ''};\n return colors;\n }, Object.create(null));\n\nconst getPrintFunctionName = (options?: PrettyFormat.OptionsReceived) =>\n options && options.printFunctionName !== undefined\n ? options.printFunctionName\n : DEFAULT_OPTIONS.printFunctionName;\n\nconst getEscapeRegex = (options?: PrettyFormat.OptionsReceived) =>\n options && options.escapeRegex !== undefined\n ? options.escapeRegex\n : DEFAULT_OPTIONS.escapeRegex;\n\nconst getEscapeString = (options?: PrettyFormat.OptionsReceived) =>\n options && options.escapeString !== undefined\n ? options.escapeString\n : DEFAULT_OPTIONS.escapeString;\n\nconst getConfig = (\n options?: PrettyFormat.OptionsReceived,\n): PrettyFormat.Config => ({\n callToJSON:\n options && options.callToJSON !== undefined\n ? options.callToJSON\n : DEFAULT_OPTIONS.callToJSON,\n colors:\n options && options.highlight\n ? getColorsHighlight(options)\n : getColorsEmpty(),\n escapeRegex: getEscapeRegex(options),\n escapeString: getEscapeString(options),\n indent:\n options && options.min\n ? ''\n : createIndent(\n options && options.indent !== undefined\n ? options.indent\n : DEFAULT_OPTIONS.indent,\n ),\n maxDepth:\n options && options.maxDepth !== undefined\n ? options.maxDepth\n : DEFAULT_OPTIONS.maxDepth,\n min: options && options.min !== undefined ? options.min : DEFAULT_OPTIONS.min,\n plugins:\n options && options.plugins !== undefined\n ? options.plugins\n : DEFAULT_OPTIONS.plugins,\n printFunctionName: getPrintFunctionName(options),\n spacingInner: options && options.min ? ' ' : '\\n',\n spacingOuter: options && options.min ? '' : '\\n',\n});\n\nfunction createIndent(indent: number): string {\n return new Array(indent + 1).join(' ');\n}\n\n/**\n * Returns a presentation string of your `val` object\n * @param val any potential JavaScript object\n * @param options Custom settings\n */\nfunction prettyFormat(\n val: unknown,\n options?: PrettyFormat.OptionsReceived,\n): string {\n if (options) {\n validateOptions(options);\n if (options.plugins) {\n const plugin = findPlugin(options.plugins, val);\n if (plugin !== null) {\n return printPlugin(plugin, val, getConfig(options), '', 0, []);\n }\n }\n }\n\n const basicResult = printBasicValue(\n val,\n getPrintFunctionName(options),\n getEscapeRegex(options),\n getEscapeString(options),\n );\n if (basicResult !== null) {\n return basicResult;\n }\n\n return printComplexValue(val, getConfig(options), '', 0, []);\n}\n\nprettyFormat.plugins = {\n AsymmetricMatcher,\n ConvertAnsi,\n DOMCollection,\n DOMElement,\n Immutable,\n ReactElement,\n ReactTestComponent,\n};\n\n// eslint-disable-next-line no-redeclare\nnamespace prettyFormat {\n export type Colors = PrettyFormat.Colors;\n export type Config = PrettyFormat.Config;\n export type Options = PrettyFormat.Options;\n export type OptionsReceived = PrettyFormat.OptionsReceived;\n export type OldPlugin = PrettyFormat.OldPlugin;\n export type NewPlugin = PrettyFormat.NewPlugin;\n export type Plugin = PrettyFormat.Plugin;\n export type Plugins = PrettyFormat.Plugins;\n export type Refs = PrettyFormat.Refs;\n export type Theme = PrettyFormat.Theme;\n}\n\nexport = prettyFormat;\n","/**\n * Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport type {Config, NewPlugin, Printer, Refs} from '../types';\n\nimport {printListItems, printObjectProperties} from '../collections';\n\nconst asymmetricMatcher =\n typeof Symbol === 'function' && Symbol.for\n ? Symbol.for('jest.asymmetricMatcher')\n : 0x1357a5;\nconst SPACE = ' ';\n\nexport const serialize: NewPlugin['serialize'] = (\n val: any,\n config: Config,\n indentation: string,\n depth: number,\n refs: Refs,\n printer: Printer,\n) => {\n const stringedValue = val.toString();\n\n if (\n stringedValue === 'ArrayContaining' ||\n stringedValue === 'ArrayNotContaining'\n ) {\n if (++depth > config.maxDepth) {\n return '[' + stringedValue + ']';\n }\n return (\n stringedValue +\n SPACE +\n '[' +\n printListItems(val.sample, config, indentation, depth, refs, printer) +\n ']'\n );\n }\n\n if (\n stringedValue === 'ObjectContaining' ||\n stringedValue === 'ObjectNotContaining'\n ) {\n if (++depth > config.maxDepth) {\n return '[' + stringedValue + ']';\n }\n return (\n stringedValue +\n SPACE +\n '{' +\n printObjectProperties(\n val.sample,\n config,\n indentation,\n depth,\n refs,\n printer,\n ) +\n '}'\n );\n }\n\n if (\n stringedValue === 'StringMatching' ||\n stringedValue === 'StringNotMatching'\n ) {\n return (\n stringedValue +\n SPACE +\n printer(val.sample, config, indentation, depth, refs)\n );\n }\n\n if (\n stringedValue === 'StringContaining' ||\n stringedValue === 'StringNotContaining'\n ) {\n return (\n stringedValue +\n SPACE +\n printer(val.sample, config, indentation, depth, refs)\n );\n }\n\n return val.toAsymmetricMatcher();\n};\n\nexport const test: NewPlugin['test'] = (val: any) =>\n val && val.$$typeof === asymmetricMatcher;\n\nconst plugin: NewPlugin = {serialize, test};\n\nexport default plugin;\n","/**\n * Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport ansiRegex = require('ansi-regex');\nimport style = require('ansi-styles');\nimport type {Config, NewPlugin, Printer, Refs} from '../types';\n\nconst toHumanReadableAnsi = (text: string) =>\n text.replace(ansiRegex(), match => {\n switch (match) {\n case style.red.close:\n case style.green.close:\n case style.cyan.close:\n case style.gray.close:\n case style.white.close:\n case style.yellow.close:\n case style.bgRed.close:\n case style.bgGreen.close:\n case style.bgYellow.close:\n case style.inverse.close:\n case style.dim.close:\n case style.bold.close:\n case style.reset.open:\n case style.reset.close:\n return '</>';\n case style.red.open:\n return '<red>';\n case style.green.open:\n return '<green>';\n case style.cyan.open:\n return '<cyan>';\n case style.gray.open:\n return '<gray>';\n case style.white.open:\n return '<white>';\n case style.yellow.open:\n return '<yellow>';\n case style.bgRed.open:\n return '<bgRed>';\n case style.bgGreen.open:\n return '<bgGreen>';\n case style.bgYellow.open:\n return '<bgYellow>';\n case style.inverse.open:\n return '<inverse>';\n case style.dim.open:\n return '<dim>';\n case style.bold.open:\n return '<bold>';\n default:\n return '';\n }\n });\n\nexport const test: NewPlugin['test'] = (val: unknown) =>\n typeof val === 'string' && !!val.match(ansiRegex());\n\nexport const serialize: NewPlugin['serialize'] = (\n val: string,\n config: Config,\n indentation: string,\n depth: number,\n refs: Refs,\n printer: Printer,\n) => printer(toHumanReadableAnsi(val), config, indentation, depth, refs);\n\nconst plugin: NewPlugin = {serialize, test};\n\nexport default plugin;\n","/**\n * Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport type {Config, NewPlugin, Printer, Refs} from '../types';\n\nimport {printListItems, printObjectProperties} from '../collections';\n\nconst SPACE = ' ';\n\nconst OBJECT_NAMES = ['DOMStringMap', 'NamedNodeMap'];\nconst ARRAY_REGEXP = /^(HTML\\w*Collection|NodeList)$/;\n\nconst testName = (name: any) =>\n OBJECT_NAMES.indexOf(name) !== -1 || ARRAY_REGEXP.test(name);\n\nexport const test: NewPlugin['test'] = (val: object) =>\n val &&\n val.constructor &&\n !!val.constructor.name &&\n testName(val.constructor.name);\n\nconst isNamedNodeMap = (collection: object): collection is NamedNodeMap =>\n collection.constructor.name === 'NamedNodeMap';\n\nexport const serialize: NewPlugin['serialize'] = (\n collection: any | NamedNodeMap,\n config: Config,\n indentation: string,\n depth: number,\n refs: Refs,\n printer: Printer,\n) => {\n const name = collection.constructor.name;\n if (++depth > config.maxDepth) {\n return '[' + name + ']';\n }\n\n return (\n (config.min ? '' : name + SPACE) +\n (OBJECT_NAMES.indexOf(name) !== -1\n ? '{' +\n printObjectProperties(\n isNamedNodeMap(collection)\n ? Array.from(collection).reduce<Record<string, string>>(\n (props, attribute) => {\n props[attribute.name] = attribute.value;\n return props;\n },\n {},\n )\n : {...collection},\n config,\n indentation,\n depth,\n refs,\n printer,\n ) +\n '}'\n : '[' +\n printListItems(\n Array.from(collection),\n config,\n indentation,\n depth,\n refs,\n printer,\n ) +\n ']')\n );\n};\n\nconst plugin: NewPlugin = {serialize, test};\n\nexport default plugin;\n","/**\n * Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport type {Config, NewPlugin, Printer, Refs} from '../types';\n\nimport {\n printChildren,\n printComment,\n printElement,\n printElementAsLeaf,\n printProps,\n printText,\n} from './lib/markup';\n\nconst ELEMENT_NODE = 1;\nconst TEXT_NODE = 3;\nconst COMMENT_NODE = 8;\nconst FRAGMENT_NODE = 11;\n\nconst ELEMENT_REGEXP = /^((HTML|SVG)\\w*)?Element$/;\n\nconst testNode = (nodeType: number, name: string) =>\n (nodeType === ELEMENT_NODE && ELEMENT_REGEXP.test(name)) ||\n (nodeType === TEXT_NODE && name === 'Text') ||\n (nodeType === COMMENT_NODE && name === 'Comment') ||\n (nodeType === FRAGMENT_NODE && name === 'DocumentFragment');\n\nexport const test: NewPlugin['test'] = (val: any) =>\n val &&\n val.constructor &&\n val.constructor.name &&\n testNode(val.nodeType, val.constructor.name);\n\ntype HandledType = Element | Text | Comment | DocumentFragment;\n\nfunction nodeIsText(node: HandledType): node is Text {\n return node.nodeType === TEXT_NODE;\n}\n\nfunction nodeIsComment(node: HandledType): node is Comment {\n return node.nodeType === COMMENT_NODE;\n}\n\nfunction nodeIsFragment(node: HandledType): node is DocumentFragment {\n return node.nodeType === FRAGMENT_NODE;\n}\n\nexport const serialize: NewPlugin['serialize'] = (\n node: HandledType,\n config: Config,\n indentation: string,\n depth: number,\n refs: Refs,\n printer: Printer,\n) => {\n if (nodeIsText(node)) {\n return printText(node.data, config);\n }\n\n if (nodeIsComment(node)) {\n return printComment(node.data, config);\n }\n\n const type = nodeIsFragment(node)\n ? `DocumentFragment`\n : node.tagName.toLowerCase();\n\n if (++depth > config.maxDepth) {\n return printElementAsLeaf(type, config);\n }\n\n return printElement(\n type,\n printProps(\n nodeIsFragment(node)\n ? []\n : Array.from(node.attributes)\n .map(attr => attr.name)\n .sort(),\n nodeIsFragment(node)\n ? {}\n : Array.from(node.attributes).reduce<Record<string, string>>(\n (props, attribute) => {\n props[attribute.name] = attribute.value;\n return props;\n },\n {},\n ),\n config,\n indentation + config.indent,\n depth,\n refs,\n printer,\n ),\n printChildren(\n Array.prototype.slice.call(node.childNodes || node.children),\n config,\n indentation + config.indent,\n depth,\n refs,\n printer,\n ),\n config,\n indentation,\n );\n};\n\nconst plugin: NewPlugin = {serialize, test};\n\nexport default plugin;\n","/**\n * Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport type {Config, NewPlugin, Printer, Refs} from '../types';\nimport {printIteratorEntries, printIteratorValues} from '../collections';\n\n// SENTINEL constants are from https://github.com/facebook/immutable-js\nconst IS_ITERABLE_SENTINEL = '@@__IMMUTABLE_ITERABLE__@@';\nconst IS_LIST_SENTINEL = '@@__IMMUTABLE_LIST__@@';\nconst IS_KEYED_SENTINEL = '@@__IMMUTABLE_KEYED__@@';\nconst IS_MAP_SENTINEL = '@@__IMMUTABLE_MAP__@@';\nconst IS_ORDERED_SENTINEL = '@@__IMMUTABLE_ORDERED__@@';\nconst IS_RECORD_SENTINEL = '@@__IMMUTABLE_RECORD__@@'; // immutable v4\nconst IS_SEQ_SENTINEL = '@@__IMMUTABLE_SEQ__@@';\nconst IS_SET_SENTINEL = '@@__IMMUTABLE_SET__@@';\nconst IS_STACK_SENTINEL = '@@__IMMUTABLE_STACK__@@';\n\nconst getImmutableName = (name: string) => 'Immutable.' + name;\nconst printAsLeaf = (name: string) => '[' + name + ']';\nconst SPACE = ' ';\nconst LAZY = '…'; // Seq is lazy if it calls a method like filter\n\nconst printImmutableEntries = (\n val: any,\n config: Config,\n indentation: string,\n depth: number,\n refs: Refs,\n printer: Printer,\n type: string,\n): string =>\n ++depth > config.maxDepth\n ? printAsLeaf(getImmutableName(type))\n : getImmutableName(type) +\n SPACE +\n '{' +\n printIteratorEntries(\n val.entries(),\n config,\n indentation,\n depth,\n refs,\n printer,\n ) +\n '}';\n\n// Record has an entries method because it is a collection in immutable v3.\n// Return an iterator for Immutable Record from version v3 or v4.\nfunction getRecordEntries(val: any): Iterator<any> {\n let i = 0;\n return {\n next() {\n if (i < val._keys.length) {\n const key = val._keys[i++];\n return {done: false, value: [key, val.get(key)]};\n }\n return {done: true, value: undefined};\n },\n };\n}\n\nconst printImmutableRecord = (\n val: any,\n config: Config,\n indentation: string,\n depth: number,\n refs: Refs,\n printer: Printer,\n): string => {\n // _name property is defined only for an Immutable Record instance\n // which was constructed with a second optional descriptive name arg\n const name = getImmutableName(val._name || 'Record');\n return ++depth > config.maxDepth\n ? printAsLeaf(name)\n : name +\n SPACE +\n '{' +\n printIteratorEntries(\n getRecordEntries(val),\n config,\n indentation,\n depth,\n refs,\n printer,\n ) +\n '}';\n};\n\nconst printImmutableSeq = (\n val: any,\n config: Config,\n indentation: string,\n depth: number,\n refs: Refs,\n printer: Printer,\n): string => {\n const name = getImmutableName('Seq');\n\n if (++depth > config.maxDepth) {\n return printAsLeaf(name);\n }\n\n if (val[IS_KEYED_SENTINEL]) {\n return (\n name +\n SPACE +\n '{' +\n // from Immutable collection of entries or from ECMAScript object\n (val._iter || val._object\n ? printIteratorEntries(\n val.entries(),\n config,\n indentation,\n depth,\n refs,\n printer,\n )\n : LAZY) +\n '}'\n );\n }\n\n return (\n name +\n SPACE +\n '[' +\n (val._iter || // from Immutable collection of values\n val._array || // from ECMAScript array\n val._collection || // from ECMAScript collection in immutable v4\n val._iterable // from ECMAScript collection in immutable v3\n ? printIteratorValues(\n val.values(),\n config,\n indentation,\n depth,\n refs,\n printer,\n )\n : LAZY) +\n ']'\n );\n};\n\nconst printImmutableValues = (\n val: any,\n config: Config,\n indentation: string,\n depth: number,\n refs: Refs,\n printer: Printer,\n type: string,\n): string =>\n ++depth > config.maxDepth\n ? printAsLeaf(getImmutableName(type))\n : getImmutableName(type) +\n SPACE +\n '[' +\n printIteratorValues(\n val.values(),\n config,\n indentation,\n depth,\n refs,\n printer,\n ) +\n ']';\n\nexport const serialize: NewPlugin['serialize'] = (\n val: any,\n config: Config,\n indentation: string,\n depth: number,\n refs: Refs,\n printer: Printer,\n) => {\n if (val[IS_MAP_SENTINEL]) {\n return printImmutableEntries(\n val,\n config,\n indentation,\n depth,\n refs,\n printer,\n val[IS_ORDERED_SENTINEL] ? 'OrderedMap' : 'Map',\n );\n }\n\n if (val[IS_LIST_SENTINEL]) {\n return printImmutableValues(\n val,\n config,\n indentation,\n depth,\n refs,\n printer,\n 'List',\n );\n }\n if (val[IS_SET_SENTINEL]) {\n return printImmutableValues(\n val,\n config,\n indentation,\n depth,\n refs,\n printer,\n val[IS_ORDERED_SENTINEL] ? 'OrderedSet' : 'Set',\n );\n }\n if (val[IS_STACK_SENTINEL]) {\n return printImmutableValues(\n val,\n config,\n indentation,\n depth,\n refs,\n printer,\n 'Stack',\n );\n }\n\n if (val[IS_SEQ_SENTINEL]) {\n return printImmutableSeq(val, config, indentation, depth, refs, printer);\n }\n\n // For compatibility with immutable v3 and v4, let record be the default.\n return printImmutableRecord(val, config, indentation, depth, refs, printer);\n};\n\n// Explicitly comparing sentinel properties to true avoids false positive\n// when mock identity-obj-proxy returns the key as the value for any key.\nexport const test: NewPlugin['test'] = (val: any) =>\n val &&\n (val[IS_ITERABLE_SENTINEL] === true || val[IS_RECORD_SENTINEL] === true);\n\nconst plugin: NewPlugin = {serialize, test};\n\nexport default plugin;\n","/**\n * Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport * as ReactIs from 'react-is';\nimport type {Config, NewPlugin, Printer, Refs} from '../types';\n\nimport {\n printChildren,\n printElement,\n printElementAsLeaf,\n printProps,\n} from './lib/markup';\n\n// Given element.props.children, or subtree during recursive traversal,\n// return flattened array of children.\nconst getChildren = (arg: Array<unknown>, children = []) => {\n if (Array.isArray(arg)) {\n arg.forEach(item => {\n getChildren(item, children);\n });\n } else if (arg != null && arg !== false) {\n children.push(arg);\n }\n return children;\n};\n\nconst getType = (element: any) => {\n const type = element.type;\n if (typeof type === 'string') {\n return type;\n }\n if (typeof type === 'function') {\n return type.displayName || type.name || 'Unknown';\n }\n\n if (ReactIs.isFragment(element)) {\n return 'React.Fragment';\n }\n if (ReactIs.isSuspense(element)) {\n return 'React.Suspense';\n }\n if (typeof type === 'object' && type !== null) {\n if (ReactIs.isContextProvider(element)) {\n return 'Context.Provider';\n }\n\n if (ReactIs.isContextConsumer(element)) {\n return 'Context.Consumer';\n }\n\n if (ReactIs.isForwardRef(element)) {\n if (type.displayName) {\n return type.displayName;\n }\n\n const functionName = type.render.displayName || type.render.name || '';\n\n return functionName !== ''\n ? 'ForwardRef(' + functionName + ')'\n : 'ForwardRef';\n }\n\n if (ReactIs.isMemo(element)) {\n const functionName =\n type.displayName || type.type.displayName || type.type.name || '';\n\n return functionName !== '' ? 'Memo(' + functionName + ')' : 'Memo';\n }\n }\n return 'UNDEFINED';\n};\n\nconst getPropKeys = (element: any) => {\n const {props} = element;\n\n return Object.keys(props)\n .filter(key => key !== 'children' && props[key] !== undefined)\n .sort();\n};\n\nexport const serialize: NewPlugin['serialize'] = (\n element: any,\n config: Config,\n indentation: string,\n depth: number,\n refs: Refs,\n printer: Printer,\n) =>\n ++depth > config.maxDepth\n ? printElementAsLeaf(getType(element), config)\n : printElement(\n getType(element),\n printProps(\n getPropKeys(element),\n element.props,\n config,\n indentation + config.indent,\n depth,\n refs,\n printer,\n ),\n printChildren(\n getChildren(element.props.children),\n config,\n indentation + config.indent,\n depth,\n refs,\n printer,\n ),\n config,\n indentation,\n );\n\nexport const test: NewPlugin['test'] = (val: unknown) =>\n val && ReactIs.isElement(val);\n\nconst plugin: NewPlugin = {serialize, test};\n\nexport default plugin;\n","/**\n * Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport type {Config, NewPlugin, Printer, Refs} from '../types';\n\nexport type ReactTestObject = {\n $$typeof: symbol;\n type: string;\n props?: Record<string, unknown>;\n children?: null | Array<ReactTestChild>;\n};\n\n// Child can be `number` in Stack renderer but not in Fiber renderer.\ntype ReactTestChild = ReactTestObject | string | number;\n\nimport {\n printChildren,\n printElement,\n printElementAsLeaf,\n printProps,\n} from './lib/markup';\n\nconst testSymbol =\n typeof Symbol === 'function' && Symbol.for\n ? Symbol.for('react.test.json')\n : 0xea71357;\n\nconst getPropKeys = (object: ReactTestObject) => {\n const {props} = object;\n\n return props\n ? Object.keys(props)\n .filter(key => props[key] !== undefined)\n .sort()\n : [];\n};\n\nexport const serialize: NewPlugin['serialize'] = (\n object: ReactTestObject,\n config: Config,\n indentation: string,\n depth: number,\n refs: Refs,\n printer: Printer,\n) =>\n ++depth > config.maxDepth\n ? printElementAsLeaf(object.type, config)\n : printElement(\n object.type,\n object.props\n ? printProps(\n getPropKeys(object),\n object.props,\n config,\n indentation + config.indent,\n depth,\n refs,\n printer,\n )\n : '',\n object.children\n ? printChildren(\n object.children,\n config,\n indentation + config.indent,\n depth,\n refs,\n printer,\n )\n : '',\n config,\n indentation,\n );\n\nexport const test: NewPlugin['test'] = val =>\n val && val.$$typeof === testSymbol;\n\nconst plugin: NewPlugin = {serialize, test};\n\nexport default plugin;\n","/**\n * Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nexport default function escapeHTML(str: string): string {\n return str.replace(/</g, '&lt;').replace(/>/g, '&gt;');\n}\n","/**\n * Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport type {Config, Printer, Refs} from '../../types';\n\nimport escapeHTML from './escapeHTML';\n\n// Return empty string if keys is empty.\nexport const printProps = (\n keys: Array<string>,\n props: Record<string, unknown>,\n config: Config,\n indentation: string,\n depth: number,\n refs: Refs,\n printer: Printer,\n): string => {\n const indentationNext = indentation + config.indent;\n const colors = config.colors;\n return keys\n .map(key => {\n const value = props[key];\n let printed = printer(value, config, indentationNext, depth, refs);\n\n if (typeof value !== 'string') {\n if (printed.indexOf('\\n') !== -1) {\n printed =\n config.spacingOuter +\n indentationNext +\n printed +\n config.spacingOuter +\n indentation;\n }\n printed = '{' + printed + '}';\n }\n\n return (\n config.spacingInner +\n indentation +\n colors.prop.open +\n key +\n colors.prop.close +\n '=' +\n colors.value.open +\n printed +\n colors.value.close\n );\n })\n .join('');\n};\n\n// Return empty string if children is empty.\nexport const printChildren = (\n children: Array<any>,\n config: Config,\n indentation: string,\n depth: number,\n refs: Refs,\n printer: Printer,\n): string =>\n children\n .map(\n child =>\n config.spacingOuter +\n indentation +\n (typeof child === 'string'\n ? printText(child, config)\n : printer(child, config, indentation, depth, refs)),\n )\n .join('');\n\nexport const printText = (text: string, config: Config): string => {\n const contentColor = config.colors.content;\n return contentColor.open + escapeHTML(text) + contentColor.close;\n};\n\nexport const printComment = (comment: string, config: Config): string => {\n const commentColor = config.colors.comment;\n return (\n commentColor.open +\n '<!--' +\n escapeHTML(comment) +\n '-->' +\n commentColor.close\n );\n};\n\n// Separate the functions to format props, children, and element,\n// so a plugin could override a particular function, if needed.\n// Too bad, so sad: the traditional (but unnecessary) space\n// in a self-closing tagColor requires a second test of printedProps.\nexport const printElement = (\n type: string,\n printedProps: string,\n printedChildren: string,\n config: Config,\n indentation: string,\n): string => {\n const tagColor = config.colors.tag;\n return (\n tagColor.open +\n '<' +\n type +\n (printedProps &&\n tagColor.close +\n printedProps +\n config.spacingOuter +\n indentation +\n tagColor.open) +\n (printedChildren\n ? '>' +\n tagColor.close +\n printedChildren +\n config.spacingOuter +\n indentation +\n tagColor.open +\n '</' +\n type\n : (printedProps && !config.min ? '' : ' ') + '/') +\n '>' +\n tagColor.close\n );\n};\n\nexport const printElementAsLeaf = (type: string, config: Config): string => {\n const tagColor = config.colors.tag;\n return (\n tagColor.open +\n '<' +\n type +\n tagColor.close +\n ' …' +\n tagColor.open +\n ' />' +\n tagColor.close\n );\n};\n"],"sourceRoot":""}