{"version":3,"file":"js-data-localforage.min.js","sources":["js-data-localforage.js"],"names":["root","factory","exports","module","require","define","amd","this","__WEBPACK_EXTERNAL_MODULE_1__","__WEBPACK_EXTERNAL_MODULE_2__","modules","__webpack_require__","moduleId","installedModules","id","loaded","call","m","c","p","_defineProperty","obj","key","value","Object","defineProperty","enumerable","configurable","writable","_classCallCheck","instance","Constructor","TypeError","enqueue","task","queue","push","dequeue","length","taskInProcess","queueTask","createTask","fn","DSUtils","Promise","then","result","shift","setTimeout","err","reject","_createClass","defineProperties","target","props","i","descriptor","protoProps","staticProps","prototype","JSData","localforage","guid","unique","map","emptyStore","DS","filter","defaults","defaultFilter","Defaults","basePath","DSLocalForageAdapter","options","deepMixIn","resourceConfig","makePath","name","endpoint","idsPath","getPath","resolve","getItem","ids","setItem","v","keysPath","_this","getIds","saveKeys","_this2","removeCircular","GET","item","removeItem","_this3","undefined","getIdPath","Error","_instance","tasks","forEach","relationList","def","relationName","relation","relationDef","getResource","containedName","contains","localField","__options","orig","slice","_","remove","indexOf","substr","type","foreignKey","localKeys","itemKeys","Array","isArray","keys","concat","findAll","where","idAttribute","in","x","relatedItems","set","localKey","find","get","relatedItem","==","all","params","_this4","items","idsArray","allowSimpleWhere","_items","attached","attrs","_this5","PUT","omit","relationFields","ensureId","_this6","_this7","update","_this8","DEL","removeId","_this9","destroy","randHex","choice","arr","compare","isEqual","n","a","b","callback","thisObj","makeIterator","results","len","size","str","_chars","split","arguments","randInt","src","identity","val","deepMatches","prop","min","max","MIN_INT","MAX_INT","Math","round","rand","isKind","containsMatch","array","pattern","matchArray","patternLength","matchObject","forOwn","random","kind","kindOf","forIn","hasOwn","UNDEF","_rKind","exec","_toString","toString","hasOwnProperty","checkDontEnum","_dontEnums","_hasDontEnumBug","ctor","constructor","isProto"],"mappings":";;;;;;;;;;CASA,SAA2CA,EAAMC,GAC1B,gBAAZC,UAA0C,gBAAXC,QACxCA,OAAOD,QAAUD,EAAQG,QAAQ,WAAYA,QAAQ,gBAC5B,kBAAXC,SAAyBA,OAAOC,IAC9CD,QAAQ,UAAW,eAAgBJ,GACT,gBAAZC,SACdA,QAA8B,qBAAID,EAAQG,QAAQ,WAAYA,QAAQ,gBAEtEJ,EAA2B,qBAAIC,EAAQD,EAAa,OAAGA,EAAkB,cACxEO,KAAM,SAASC,EAA+BC,GACjD,MAAgB,UAAUC,GAKhB,QAASC,GAAoBC,GAG5B,GAAGC,EAAiBD,GACnB,MAAOC,GAAiBD,GAAUV,OAGnC,IAAIC,GAASU,EAAiBD,IAC7BV,WACAY,GAAIF,EACJG,QAAQ,EAUT,OANAL,GAAQE,GAAUI,KAAKb,EAAOD,QAASC,EAAQA,EAAOD,QAASS,GAG/DR,EAAOY,QAAS,EAGTZ,EAAOD,QAvBf,GAAIW,KAqCJ,OATAF,GAAoBM,EAAIP,EAGxBC,EAAoBO,EAAIL,EAGxBF,EAAoBQ,EAAI,GAGjBR,EAAoB,KAK/B,SAASR,EAAQD,EAASS,GAI/B,QAASS,GAAgBC,EAAKC,EAAKC,GAAiK,MAApJD,KAAOD,GAAOG,OAAOC,eAAeJ,EAAKC,GAAOC,MAAOA,EAAOG,YAAY,EAAMC,cAAc,EAAMC,UAAU,IAAkBP,EAAIC,GAAOC,EAAgBF,EAE3M,QAASQ,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIC,WAAU,qCAsBhH,QAASC,GAAQC,GACfC,EAAMC,KAAKF,GAGb,QAASG,KACHF,EAAMG,SAAWC,IACnBA,GAAgB,EAChBJ,EAAM,MAIV,QAASK,GAAUN,GACZC,EAAMG,OAITL,EAAQC,IAHRD,EAAQC,GACRG,KAMJ,QAASI,GAAWC,GAClB,MAAO,IAAIC,GAAQC,QAAQF,GAAIG,KAAK,SAAUC,GAI5C,MAHAP,IAAgB,EAChBJ,EAAMY,QACNC,WAAWX,EAAS,GACbS,GACN,SAAUG,GAIX,MAHAV,IAAgB,EAChBJ,EAAMY,QACNC,WAAWX,EAAS,GACbM,EAAQC,QAAQM,OAAOD,KAxDlC,GAAIE,GAAe,WAAe,QAASC,GAAiBC,EAAQC,GAAS,IAAK,GAAIC,GAAI,EAAGA,EAAID,EAAMhB,OAAQiB,IAAK,CAAE,GAAIC,GAAaF,EAAMC,EAAIC,GAAW9B,WAAa8B,EAAW9B,aAAc,EAAO8B,EAAW7B,cAAe,EAAU,SAAW6B,KAAYA,EAAW5B,UAAW,GAAMJ,OAAOC,eAAe4B,EAAQG,EAAWlC,IAAKkC,IAAiB,MAAO,UAAUzB,EAAa0B,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBrB,EAAY4B,UAAWF,GAAiBC,GAAaN,EAAiBrB,EAAa2B,GAAqB3B,MAM7hB6B,EAASjD,EAAoB,GAC7BkD,EAAclD,EAAoB,GAClCmD,EAAOnD,EAAoB,GAC3BoD,EAASpD,EAAoB,GAC7BqD,EAAMrD,EAAoB,GAE1BsD,EAAa,GAAIL,GAAOM,GACxBvB,EAAUiB,EAAOjB,QAEjBwB,EAASF,EAAWG,SAASC,cAE7BC,EAAW,QAASA,KACtBzC,EAAgBtB,KAAM+D,GAGxBA,GAASX,UAAUY,SAAW,EAE9B,IAAIpC,MACAI,GAAgB,EAoChBiC,EAAuB,WACzB,QAASA,GAAqBC,GAC5B5C,EAAgBtB,KAAMiE,GAEtBC,EAAUA,MACVlE,KAAK6D,SAAW,GAAIE,GACpB3B,EAAQ+B,UAAUnE,KAAK6D,SAAUK,GA6ZnC,MA1ZAtB,GAAaqB,IACXlD,IAAK,UACLC,MAAO,SAAiBoD,EAAgBF,GACtC,MAAO9B,GAAQiC,SAASH,EAAQF,UAAYhE,KAAK6D,SAASG,UAAYI,EAAeJ,SAAUI,EAAeE,SAGhHvD,IAAK,YACLC,MAAO,SAAmBoD,EAAgBF,EAAS3D,GACjD,MAAO6B,GAAQiC,SAASH,EAAQF,UAAYhE,KAAK6D,SAASG,UAAYI,EAAeJ,SAAUI,EAAeG,SAAUhE,MAG1HQ,IAAK,SACLC,MAAO,SAAgBoD,EAAgBF,GACrC,GAAIM,GAAUxE,KAAKyE,QAAQL,EAAgBF,EAC3C,OAAO,IAAI9B,GAAQC,QAAQ,SAAUqC,EAAS/B,GAC5CW,EAAYqB,QAAQH,EAAS,SAAU9B,EAAKkC,GAC1C,MAAIlC,GACKC,EAAOD,GACLkC,EACFF,EAAQE,GAERtB,EAAYuB,QAAQL,KAAa,SAAU9B,EAAKoC,GACjDpC,EACFC,EAAOD,GAEPgC,EAAQI,YAQpB/D,IAAK,WACLC,MAAO,SAAkB4D,EAAKR,EAAgBF,GAC5C,GAAIa,GAAW/E,KAAKyE,QAAQL,EAAgBF,EAC5C,OAAO,IAAI9B,GAAQC,QAAQ,SAAUqC,EAAS/B,GAC5CW,EAAYuB,QAAQE,EAAUH,EAAK,SAAUlC,EAAKoC,GAC5CpC,EACFC,EAAOD,GAEPgC,EAAQI,UAMhB/D,IAAK,WACLC,MAAO,SAAkBT,EAAI6D,EAAgBF,GAC3C,GAAIc,GAAQhF,IAEZ,OAAOA,MAAKiF,OAAOb,EAAgBF,GAAS5B,KAAK,SAAUsC,GAEzD,MADAA,GAAIrE,GAAM,EACHyE,EAAME,SAASN,EAAKR,EAAgBF,QAI/CnD,IAAK,WACLC,MAAO,SAAkBT,EAAI6D,EAAgBF,GAC3C,GAAIiB,GAASnF,IAEb,OAAOA,MAAKiF,OAAOb,EAAgBF,GAAS5B,KAAK,SAAUsC,GAEzD,aADOA,GAAIrE,GACJ4E,EAAOD,SAASN,EAAKR,EAAgBF,QAIhDnD,IAAK,MACLC,MAAO,SAAaD,GAClB,MAAO,IAAIqB,GAAQC,QAAQ,SAAUqC,EAAS/B,GAC5CW,EAAYqB,QAAQ5D,EAAK,SAAU2B,EAAKoC,GAClCpC,EACFC,EAAOD,GAEPgC,EAAQI,UAMhB/D,IAAK,MACLC,MAAO,SAAaD,EAAKC,GAEvB,MADAA,GAAQoB,EAAQgD,eAAepE,GACxBhB,KAAKqF,IAAItE,GAAKuB,KAAK,SAAUgD,GAIlC,MAHIA,IACFlD,EAAQ+B,UAAUmB,EAAMtE,GAEnB,GAAIoB,GAAQC,QAAQ,SAAUqC,EAAS/B,GAC5CW,EAAYuB,QAAQ9D,EAAKuE,GAAQtE,EAAO,SAAU0B,EAAKoC,GACrD,MAAOpC,GAAMC,EAAOD,GAAOgC,EAAQI,YAM3C/D,IAAK,MACLC,MAAO,SAAaD,GAClB,MAAO,IAAIqB,GAAQC,QAAQ,SAAUqC,GACnC,MAAOpB,GAAYiC,WAAWxE,EAAK2D,QAIvC3D,IAAK,OACLC,MAAO,SAAcoD,EAAgB7D,EAAI2D,GACvC,GAAIsB,GAASxF,KAETuB,EAAWkE,MACf,OAAO,IAAIrD,GAAQC,QAAQ,SAAUqC,EAAS/B,GAC5CuB,EAAUA,MACVA,EAAQ,QAAUA,EAAQ,YAC1BsB,EAAOH,IAAIG,EAAOE,UAAUtB,EAAgBF,EAAS3D,IAAK+B,KAAK,SAAUgD,GAClEA,EAGHZ,EAAQY,GAFR3C,EAAO,GAAIgD,OAAM,gBAIlBhD,KACFL,KAAK,SAAUsD,GAChBrE,EAAWqE,CACX,IAAIC,KAqEJ,OAnEAzD,GAAQ0D,QAAQ1B,EAAe2B,aAAc,SAAUC,GACrD,GAAIC,GAAeD,EAAIE,SACnBC,EAAc/B,EAAegC,YAAYH,GACzCI,EAAgB,IAChBjE,GAAQkE,SAASpC,EAAQ,QAAS+B,GACpCI,EAAgBJ,EACP7D,EAAQkE,SAASpC,EAAQ,QAAS8B,EAAIO,cAC/CF,EAAgBL,EAAIO,YAElBF,IACF,WACE,GAAIG,GAAYpE,EAAQ+B,aAAcD,EAAQuC,KAAOvC,EAAQuC,OAASvC,EACtEsC,GAAU,QAAUtC,EAAQ,QAAQwC,QACpCF,EAAYpE,EAAQuE,EAAER,EAAaK,GACnCpE,EAAQwE,OAAOJ,EAAU,QAASH,GAClCjE,EAAQ0D,QAAQU,EAAU,QAAS,SAAUN,EAAUlD,GACjDkD,GAAgD,IAApCA,EAASW,QAAQR,IAAwBH,EAASnE,QAAUsE,EAActE,QAA6C,MAAnCmE,EAASG,EAActE,QACzHyE,EAAU,QAAQxD,GAAKkD,EAASY,OAAOT,EAActE,OAAS,GAE9DyE,EAAU,QAAQxD,GAAK,IAI3B,IAAIrB,GAAO8D,MAEX,IAAkB,WAAbO,EAAIe,MAAkC,YAAbf,EAAIe,OAAuBf,EAAIgB,WAatD,GAAiB,YAAbhB,EAAIe,MAAsBf,EAAIiB,UAAW,CAClD,GAAIA,MACAC,EAAW3F,EAASyE,EAAIiB,cAC5BC,GAAWC,MAAMC,QAAQF,GAAYA,EAAW9E,EAAQiF,KAAKH,GAC7DD,EAAYA,EAAUK,OAAOJ,OAC7BvF,EAAO6D,EAAO+B,QAAQnD,EAAegC,YAAYH,IAC/CuB,MAAO3G,KAAoBsF,EAAYsB,aACrCC,KAAMtF,EAAQwB,OAAOJ,EAAOyD,GAAY,SAAUU,GAChD,MAAOA,QAGVnB,GAAWlE,KAAK,SAAUsF,GAE3B,MADAxF,GAAQyF,IAAItG,EAAUyE,EAAIO,WAAYqB,GAC/BA,SAEa,cAAb5B,EAAIe,MAAqC,WAAbf,EAAIe,MAAqBf,EAAI8B,YAClEnG,EAAO6D,EAAOuC,KAAK3D,EAAegC,YAAYH,GAAe7D,EAAQ4F,IAAIzG,EAAUyE,EAAI8B,UAAWtB,GAAWlE,KAAK,SAAU2F,GAE1H,MADA7F,GAAQyF,IAAItG,EAAUyE,EAAIO,WAAY0B,GAC/BA,SA9BTtG,GAAO6D,EAAO+B,QAAQnD,EAAegC,YAAYH,IAC/CuB,MAAO3G,KAAoBmF,EAAIgB,YAC7BkB,KAAM3G,EAAS6C,EAAeqD,gBAE/BjB,GAAWlE,KAAK,SAAUsF,GAM3B,MALiB,WAAb5B,EAAIe,MAAqBa,EAAa7F,OACxCK,EAAQyF,IAAItG,EAAUyE,EAAIO,WAAYqB,EAAa,IAEnDxF,EAAQyF,IAAItG,EAAUyE,EAAIO,WAAYqB,GAEjCA,GAwBPjG,IACFkE,EAAMhE,KAAKF,QAMZS,EAAQC,QAAQ8F,IAAItC,KAC1BvD,KAAK,WACN,MAAOf,QAIXR,IAAK,UACLC,MAAO,SAAiBoD,EAAgBgE,EAAQlE,GAC9C,GAAImE,GAASrI,KAETsI,EAAQ,IACZ,OAAO,IAAIlG,GAAQC,QAAQ,SAAUqC,EAAS/B,GAC5CuB,EAAUA,MACVA,EAAQ,QAAUA,EAAQ,YAC1BmE,EAAOpD,OAAOb,EAAgBF,GAAS5B,KAAK,SAAUsC,GACpD,GAAI2D,GAAWnG,EAAQiF,KAAKzC,EACtB,qBAAsBV,KAC1BA,EAAQsE,kBAAmB,EAE7B,IAAI3C,KAIJ,OAHAzD,GAAQ0D,QAAQyC,EAAU,SAAUhI,GAClCsF,EAAMhE,KAAKwG,EAAOhD,IAAIgD,EAAO3C,UAAUtB,EAAgBF,EAAS3D,OAE3D6B,EAAQC,QAAQ8F,IAAItC,KAC1BvD,KAAK,SAAUgG,GAChB,MAAO1E,GAAOnD,KAAKiD,EAAY4E,EAAOlE,EAAeE,KAAM8D,EAAQlE,KAClE5B,KAAKoC,EAAS/B,KAChBL,KAAK,SAAUmG,GAChBH,EAAQG,CACR,IAAI5C,KA2GJ,OA1GAzD,GAAQ0D,QAAQ1B,EAAe2B,aAAc,SAAUC,GACrD,GAAIC,GAAeD,EAAIE,SACnBC,EAAc/B,EAAegC,YAAYH,GACzCI,EAAgB,IAChBjE,GAAQkE,SAASpC,EAAQ,QAAS+B,GACpCI,EAAgBJ,EACP7D,EAAQkE,SAASpC,EAAQ,QAAS8B,EAAIO,cAC/CF,EAAgBL,EAAIO,YAElBF,IACF,WACE,GAAIG,GAAYpE,EAAQ+B,aAAcD,EAAQuC,KAAOvC,EAAQuC,OAASvC,EACtEsC,GAAU,QAAUtC,EAAQ,QAAQwC,QACpCF,EAAYpE,EAAQuE,EAAER,EAAaK,GACnCpE,EAAQwE,OAAOJ,EAAU,QAASH,GAClCjE,EAAQ0D,QAAQU,EAAU,QAAS,SAAUN,EAAUlD,GACjDkD,GAAgD,IAApCA,EAASW,QAAQR,IAAwBH,EAASnE,QAAUsE,EAActE,QAA6C,MAAnCmE,EAASG,EAActE,QACzHyE,EAAU,QAAQxD,GAAKkD,EAASY,OAAOT,EAActE,OAAS,GAE9DyE,EAAU,QAAQxD,GAAK,IAI3B,IAAIrB,GAAO8D,MAEO,YAAbO,EAAIe,MAAkC,YAAbf,EAAIe,OAAuBf,EAAIgB,WAyBrC,YAAbhB,EAAIe,MAAsBf,EAAIiB,WACvC,WACE,GAAIA,KACJ7E,GAAQ0D,QAAQwC,EAAO,SAAUhD,GAC/B,GAAI4B,GAAW5B,EAAKU,EAAIiB,cACxBC,GAAWC,MAAMC,QAAQF,GAAYA,EAAW9E,EAAQiF,KAAKH,GAC7DD,EAAYA,EAAUK,OAAOJ,SAE/BvF,EAAO0G,EAAOd,QAAQnD,EAAegC,YAAYH,IAC/CuB,MAAO3G,KAAoBsF,EAAYsB,aACrCC,KAAMtF,EAAQwB,OAAOJ,EAAOyD,GAAY,SAAUU,GAChD,MAAOA,QAGVnB,GAAWlE,KAAK,SAAUsF,GAY3B,MAXAxF,GAAQ0D,QAAQwC,EAAO,SAAUhD,GAC/B,GAAIoD,MACAxB,EAAW5B,EAAKU,EAAIiB,cACxBC,GAAWC,MAAMC,QAAQF,GAAYA,EAAW9E,EAAQiF,KAAKH,GAC7D9E,EAAQ0D,QAAQ8B,EAAc,SAAUK,GAClCf,GAAY9E,EAAQkE,SAASY,EAAUe,EAAY9B,EAAYsB,eACjEiB,EAAS7G,KAAKoG,KAGlB7F,EAAQyF,IAAIvC,EAAMU,EAAIO,WAAYmC,KAE7Bd,QAGW,cAAb5B,EAAIe,MAAqC,WAAbf,EAAIe,MAAqBf,EAAI8B,YAClEnG,EAAO0G,EAAOd,QAAQnD,EAAegC,YAAYH,IAC/CuB,MAAO3G,KAAoBsF,EAAYsB,aACrCC,KAAMtF,EAAQwB,OAAOH,EAAI6E,EAAO,SAAUhD,GACxC,MAAOlD,GAAQ4F,IAAI1C,EAAMU,EAAI8B,YAC3B,SAAUH,GACZ,MAAOA,QAGVnB,GAAWlE,KAAK,SAAUsF,GAQ3B,MAPAxF,GAAQ0D,QAAQwC,EAAO,SAAUhD,GAC/BlD,EAAQ0D,QAAQ8B,EAAc,SAAUK,GAClCA,EAAY9B,EAAYsB,eAAiBnC,EAAKU,EAAI8B,WACpD1F,EAAQyF,IAAIvC,EAAMU,EAAIO,WAAY0B,OAIjCL,KAtETjG,EAAO0G,EAAOd,QAAQnD,EAAegC,YAAYH,IAC/CuB,MAAO3G,KAAoBmF,EAAIgB,YAC7BU,KAAMtF,EAAQwB,OAAOH,EAAI6E,EAAO,SAAUhD,GACxC,MAAOlD,GAAQ4F,IAAI1C,EAAMlB,EAAeqD,eACtC,SAAUE,GACZ,MAAOA,QAGVnB,GAAWlE,KAAK,SAAUsF,GAc3B,MAbAxF,GAAQ0D,QAAQwC,EAAO,SAAUhD,GAC/B,GAAIoD,KACJtG,GAAQ0D,QAAQ8B,EAAc,SAAUK,GAClC7F,EAAQ4F,IAAIC,EAAajC,EAAIgB,cAAgB1B,EAAKlB,EAAeqD,cACnEiB,EAAS7G,KAAKoG,KAGD,WAAbjC,EAAIe,MAAqB2B,EAAS3G,OACpCK,EAAQyF,IAAIvC,EAAMU,EAAIO,WAAYmC,EAAS,IAE3CtG,EAAQyF,IAAIvC,EAAMU,EAAIO,WAAYmC,KAG/Bd,IAoDPjG,GACFkE,EAAMhE,KAAKF,QAKZS,EAAQC,QAAQ8F,IAAItC,KAC1BvD,KAAK,WACN,MAAOgG,QAIXvH,IAAK,SACLC,MAAO,SAAgBoD,EAAgBuE,EAAOzE,GAC5C,GAAI0E,GAAS5I,IAEb,OAAOkC,GAAW,SAAUwC,EAAS/B,GACnCV,EAAU,WACR,GAAIe,GAAIyC,MACRkD,GAAMvE,EAAeqD,aAAekB,EAAMvE,EAAeqD,cAAgBlE,IACzEW,EAAUA,MACV0E,EAAOC,IAAIzG,EAAQiC,SAASuE,EAAOlD,UAAUtB,EAAgBF,EAASyE,EAAMvE,EAAeqD,eAAgBrF,EAAQ0G,KAAKH,EAAOvE,EAAe2E,qBAAuBzG,KAAK,SAAUgD,GAElL,MADAtC,GAAIsC,EACGsD,EAAOI,SAAS1D,EAAKlB,EAAeqD,aAAcrD,EAAgBF,KACxE5B,KAAK,WACNoC,EAAQ1B,IACPL,UAKT5B,IAAK,SACLC,MAAO,SAAgBoD,EAAgB7D,EAAIoI,EAAOzE,GAChD,GAAI+E,GAASjJ,IAEb,OAAOkC,GAAW,SAAUwC,EAAS/B,GACnCV,EAAU,WACR,GAAIe,GAAIyC,MACRvB,GAAUA,MACV+E,EAAOJ,IAAII,EAAOvD,UAAUtB,EAAgBF,EAAS3D,GAAK6B,EAAQ0G,KAAKH,EAAOvE,EAAe2E,qBAAuBzG,KAAK,SAAUgD,GAEjI,MADAtC,GAAIsC,EACG2D,EAAOD,SAAS1D,EAAKlB,EAAeqD,aAAcrD,EAAgBF,KACxE5B,KAAK,WACN,MAAOoC,GAAQ1B,IACdL,UAKT5B,IAAK,YACLC,MAAO,SAAmBoD,EAAgBuE,EAAOP,EAAQlE,GACvD,GAAIgF,GAASlJ,IAEb,OAAOA,MAAKuH,QAAQnD,EAAgBgE,EAAQlE,GAAS5B,KAAK,SAAUgG,GAClE,GAAIzC,KAIJ,OAHAzD,GAAQ0D,QAAQwC,EAAO,SAAUhD,GAC/BO,EAAMhE,KAAKqH,EAAOC,OAAO/E,EAAgBkB,EAAKlB,EAAeqD,aAAcrF,EAAQ0G,KAAKH,EAAOvE,EAAe2E,oBAAuB7E,MAEhI9B,EAAQC,QAAQ8F,IAAItC,QAI/B9E,IAAK,UACLC,MAAO,SAAiBoD,EAAgB7D,EAAI2D,GAC1C,GAAIkF,GAASpJ,IAEb,OAAOkC,GAAW,SAAUwC,EAAS/B,GACnCV,EAAU,WACRiC,EAAUA,MACVkF,EAAOC,IAAID,EAAO1D,UAAUtB,EAAgBF,EAAS3D,IAAK+B,KAAK,WAC7D,MAAO8G,GAAOE,SAAS/I,EAAI6D,EAAgBF,KAC1C5B,KAAK,WACN,MAAOoC,GAAQ,OACd/B,UAKT5B,IAAK,aACLC,MAAO,SAAoBoD,EAAgBgE,EAAQlE,GACjD,GAAIqF,GAASvJ,IAEb,OAAOA,MAAKuH,QAAQnD,EAAgBgE,EAAQlE,GAAS5B,KAAK,SAAUgG,GAClE,GAAIzC,KAIJ,OAHAzD,GAAQ0D,QAAQwC,EAAO,SAAUhD,GAC/BO,EAAMhE,KAAK0H,EAAOC,QAAQpF,EAAgBkB,EAAKlB,EAAeqD,aAAcvD,MAEvE9B,EAAQC,QAAQ8F,IAAItC,SAK1B5B,IAGTrE,GAAOD,QAAUsE,GAIZ,SAASrE,EAAQD,EAASS,GAE/BR,EAAOD,QAAUM,GAIZ,SAASL,EAAQD,EAASS,GAE/BR,EAAOD,QAAUO,GAIZ,SAASN,EAAQD,EAASS,GAY7B,QAASmD,KACP,MACIkG,GAAQ,GAAG,IACXA,EAAQ,GAAG,KAGLA,EAAQ,GAAI,IAElBC,EAAO,EAAG,EAAG,IAAK,KAAOD,EAAQ,GAAG,IACpCA,EAAQ,IAnBhB,GAAIA,GAAUrJ,EAAoB,GAC9BsJ,EAAStJ,EAAoB,EAqB/BR,GAAOD,QAAU4D,GAMd,SAAS3D,EAAQD,EAASS,GAO3B,QAASoD,GAAOmG,EAAKC,GAEjB,MADAA,GAAUA,GAAWC,EACdjG,EAAO+F,EAAK,SAASrE,EAAMtC,EAAG2G,GAEjC,IADA,GAAIG,GAAIH,EAAI5H,SACHiB,EAAI8G,GACT,GAAKF,EAAQtE,EAAMqE,EAAI3G,IACnB,OAAO,CAGf,QAAO,IAIf,QAAS6G,GAAQE,EAAGC,GAChB,MAAOD,KAAMC,EAnBrB,GAAIpG,GAASxD,EAAoB,EAsB7BR,GAAOD,QAAU6D,GAOhB,SAAS5D,EAAQD,EAASS,GAO3B,QAASqD,GAAIkG,EAAKM,EAAUC,GACxBD,EAAWE,EAAaF,EAAUC,EAClC,IAAIE,KACJ,IAAW,MAAPT,EACA,MAAOS,EAIX,KADA,GAAIpH,GAAI,GAAIqH,EAAMV,EAAI5H,SACbiB,EAAIqH,GACTD,EAAQpH,GAAKiH,EAASN,EAAI3G,GAAIA,EAAG2G,EAGrC,OAAOS,GAjBf,GAAID,GAAe/J,EAAoB,EAoBlCR,GAAOD,QAAU8D,GAMjB,SAAS7D,EAAQD,EAASS,GAS3B,QAASqJ,GAAQa,GACbA,EAAOA,GAAQA,EAAO,EAAGA,EAAO,CAEhC,KADA,GAAIC,GAAM,GACHD,KACHC,GAAOb,EAAOc,EAElB,OAAOD,GAbf,GAAIb,GAAStJ,EAAoB,GAEzBoK,EAAS,mBAAmBC,MAAM,GActC7K,GAAOD,QAAU8J,GAOhB,SAAS7J,EAAQD,EAASS,GAS3B,QAASsJ,GAAOpB,GACZ,GAAIxF,GAA+B,IAArB4H,UAAU3I,QAAgBqF,EAAQkB,GAASA,EAAQoC,SACjE,OAAO5H,GAAQ6H,EAAQ,EAAG7H,EAAOf,OAAS,IATlD,GAAI4I,GAAUvK,EAAoB,IAC9BgH,EAAUhH,EAAoB,GAW9BR,GAAOD,QAAU+J,GAOhB,SAAS9J,EAAQD,EAASS,GAO3B,QAASwD,GAAO+F,EAAKM,EAAUC,GAC3BD,EAAWE,EAAaF,EAAUC,EAClC,IAAIE,KACJ,IAAW,MAAPT,EACA,MAAOS,EAIX,KADA,GAA8BpJ,GAA1BgC,EAAI,GAAIqH,EAAMV,EAAI5H,SACbiB,EAAIqH,GACTrJ,EAAQ2I,EAAI3G,GACRiH,EAASjJ,EAAOgC,EAAG2G,IACnBS,EAAQvI,KAAKb,EAIrB,OAAOoJ,GApBf,GAAID,GAAe/J,EAAoB,EAuBnCR,GAAOD,QAAUiE,GAOhB,SAAShE,EAAQD,EAASS,GAW3B,QAAS+J,GAAaS,EAAKV,GACvB,GAAW,MAAPU,EACA,MAAOC,EAEX,cAAcD,IACV,IAAK,WAID,MAA2B,mBAAZV,GAA0B,SAASY,EAAK9H,EAAG2G,GACtD,MAAOiB,GAAInK,KAAKyJ,EAASY,EAAK9H,EAAG2G,IACjCiB,CACR,KAAK,SACD,MAAO,UAASE,GACZ,MAAOC,GAAYD,EAAKF,GAEhC,KAAK,SACL,IAAK,SACD,MAAOI,GAAKJ,IA3B5B,GAAIC,GAAWzK,EAAoB,IAC/B4K,EAAO5K,EAAoB,IAC3B2K,EAAc3K,EAAoB,GA6BlCR,GAAOD,QAAUwK,GAOhB,SAASvK,EAAQD,EAASS,GAS3B,QAASuK,GAAQM,EAAKC,GAMlB,MALAD,GAAa,MAAPA,EAAaE,IAAYF,EAC/BC,EAAa,MAAPA,EAAaE,IAAYF,EAIxBG,KAAKC,MAAOC,EAAKN,EAAM,GAAKC,EAAM,gBAbjD,GAAIC,GAAU/K,EAAoB,IAC9BgL,EAAUhL,EAAoB,IAC9BmL,EAAOnL,EAAoB,GAc3BR,GAAOD,QAAUgL,GAMhB,SAAS/K,EAAQD,EAASS,GAE/B,GAAIoL,GAASpL,EAAoB,IAGzBgH,EAAUD,MAAMC,SAAW,SAAU0D,GACrC,MAAOU,GAAOV,EAAK,SAEvBlL,GAAOD,QAAUyH,GAMhB,SAASxH,EAAQD,EAASS,GAO3B,QAASyK,GAASC,GACd,MAAOA,GAGXlL,EAAOD,QAAUkL,GAOhB,SAASjL,EAAQD,EAASS,GAO3B,QAAS4K,GAAK1G,GACV,MAAO,UAASxD,GACZ,MAAOA,GAAIwD,IAInB1E,EAAOD,QAAUqL,GAOhB,SAASpL,EAAQD,EAASS,GAK3B,QAASqL,GAAcC,EAAOC,GAE1B,IADA,GAAI3I,GAAI,GAAIjB,EAAS2J,EAAM3J,SAClBiB,EAAIjB,GACT,GAAIgJ,EAAYW,EAAM1I,GAAI2I,GACtB,OAAO,CAIf,QAAO,EAGX,QAASC,GAAW9I,EAAQ6I,GAExB,IADA,GAAI3I,GAAI,GAAI6I,EAAgBF,EAAQ5J,SAC3BiB,EAAI6I,GACT,IAAKJ,EAAc3I,EAAQ6I,EAAQ3I,IAC/B,OAAO,CAIf,QAAO,EAGX,QAAS8I,GAAYhJ,EAAQ6I,GACzB,GAAIpJ,IAAS,CAQb,OAPAwJ,GAAOJ,EAAS,SAASb,EAAK/J,GAC1B,MAAKgK,GAAYjI,EAAO/B,GAAM+J,GAA9B,OAEYvI,GAAS,IAIlBA,EAMX,QAASwI,GAAYjI,EAAQ6I,GACzB,MAAI7I,IAA4B,gBAAXA,GACbsE,EAAQtE,IAAWsE,EAAQuE,GACpBC,EAAW9I,EAAQ6I,GAEnBG,EAAYhJ,EAAQ6I,GAGxB7I,IAAW6I,EAhD9B,GAAII,GAAS3L,EAAoB,IAC7BgH,EAAUhH,EAAoB,GAmD9BR,GAAOD,QAAUoL,GAOhB,SAASnL,EAAQD,EAASS,GAM3BR,EAAOD,QAAU,aAMhB,SAASC,EAAQD,EAASS,GAM3BR,EAAOD,QAAU,YAMhB,SAASC,EAAQD,EAASS,GAS3B,QAASmL,GAAKN,EAAKC,GAGf,MAFAD,GAAa,MAAPA,EAAaE,EAAUF,EAC7BC,EAAa,MAAPA,EAAaE,EAAUF,EACtBD,GAAOC,EAAMD,GAAOe,IAVnC,GAAIA,GAAS5L,EAAoB,IAC7B+K,EAAU/K,EAAoB,IAC9BgL,EAAUhL,EAAoB,GAW9BR,GAAOD,QAAU4L,GAMhB,SAAS3L,EAAQD,EAASS,GAM3B,QAASoL,GAAOV,EAAKmB,GACjB,MAAOC,GAAOpB,KAASmB,EAL/B,GAAIC,GAAS9L,EAAoB,GAO7BR,GAAOD,QAAU6L,GAMhB,SAAS5L,EAAQD,EAASS,GAU3B,QAAS2L,GAAOjL,EAAKqB,EAAI+H,GACrBiC,EAAMrL,EAAK,SAASgK,EAAK/J,GACrB,MAAIqL,GAAOtL,EAAKC,GACLoB,EAAG1B,KAAKyJ,EAASpJ,EAAIC,GAAMA,EAAKD,GAD3C,SAVZ,GAAIsL,GAAShM,EAAoB,IAC7B+L,EAAQ/L,EAAoB,GAe5BR,GAAOD,QAAUoM,GAOhB,SAASnM,EAAQD,EAASS,GAU3B,QAAS4L,KACL,MAAOA,GAAOhE,MAIlBgE,EAAOhE,IAAMqD,KAAKW,OAElBpM,EAAOD,QAAUqM,GAOhB,SAASpM,EAAQD,EAASS,GAW3B,QAAS8L,GAAOpB,GACZ,MAAY,QAARA,EACO,OACAA,IAAQuB,EACR,YAEAC,EAAOC,KAAMC,EAAU/L,KAAKqK,IAAO,GAblD,GAEIuB,GAFAC,EAAS,oBACTE,EAAYvL,OAAOmC,UAAUqJ,QAejC7M,GAAOD,QAAUuM,GAMhB,SAAStM,EAAQD,EAASS,GAO1B,QAASgM,GAAOtL,EAAKkK,GACjB,MAAO/J,QAAOmC,UAAUsJ,eAAejM,KAAKK,EAAKkK,GAGrDpL,EAAOD,QAAUyM,GAOjB,SAASxM,EAAQD,EAASS,GAO3B,QAASuM,KACLC,GACQ,WACA,iBACA,UACA,iBACA,gBACA,uBACA,eAGRC,GAAkB,CAElB,KAAK,GAAI9L,MAAQ0L,SAAY,MACzBI,GAAkB,EAS1B,QAASV,GAAMrL,EAAKqB,EAAI+H,GACpB,GAAInJ,GAAKiC,EAAI,CAKU,OAAnB6J,GAAyBF,GAE7B,KAAK5L,IAAOD,GACR,GAAIyL,EAAKpK,EAAIrB,EAAKC,EAAKmJ,MAAa,EAChC,KAKR,IAAI2C,EAIA,IAHA,GAAIC,GAAOhM,EAAIiM,YACXC,IAAYF,GAAQhM,IAAQgM,EAAK1J,WAE9BrC,EAAM6L,EAAW5J,QAUP,gBAARjC,IACKiM,IAAWZ,EAAOtL,EAAKC,KAC7BD,EAAIC,KAASE,OAAOmC,UAAUrC,IAE1BwL,EAAKpK,EAAIrB,EAAKC,EAAKmJ,MAAa,MAQpD,QAASqC,GAAKpK,EAAIrB,EAAKC,EAAKmJ,GACxB,MAAO/H,GAAG1B,KAAKyJ,EAASpJ,EAAIC,GAAMA,EAAKD,GAtE/C,GAEQ+L,GACAD,EAHJR,EAAShM,EAAoB,GAyE7BR,GAAOD,QAAUwM"}