{"version":3,"sources":["jsdelivr-header.js","/gh/gassets/dochay.me@2.1.0/js/main.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,ACNA,GAAI,EAAE,EAAG,KACD,iBAAmB,QAAU,iBAAmB,OAAO,QAAU,OAAO,QAAU,EAAE,SAAW,EAAE,GAAG,GAAM,SAAS,GAC/G,GAAI,EAAE,SAAU,OAAO,EAAE,GACzB,MAAM,IAAI,MAAM,2CACpB,EAAI,EAAE,EACT,EALD,CAKG,oBAAsB,OAAS,OAAS,MAAM,SAAS,EAAG,GACzD,SAAS,EAAE,EAAG,GACV,OAAO,EAAE,aACb,CACA,IACI,GADA,EAAI,IACE,MACN,EAAI,EAAE,OACN,EAAI,EAAE,KACN,EAAI,EAAE,QACN,EAAI,CAAC,EACL,EAAI,EAAE,SACN,EAAI,EAAE,eACN,EAAI,CAAC,EACL,EAAI,EAAE,SACN,EAAI,QACJ,EAAI,SAAS,EAAG,GACZ,OAAO,IAAI,EAAE,GAAG,KAAK,EAAG,EAC5B,EACA,EAAI,qCACJ,EAAI,QACJ,EAAI,eAER,SAAS,EAAE,GACP,IAAI,EAAI,EAAE,OACN,EAAI,EAAE,KAAK,GACf,MAAO,aAAe,IAAM,EAAE,SAAS,OAAS,IAAM,EAAE,WAAa,IAAM,UAAY,GAAK,IAAM,GAAK,iBAAmB,GAAK,EAAI,GAAK,EAAI,KAAK,EACrJ,CACA,EAAE,GAAK,EAAE,UAAY,CACjB,OAAQ,EACR,YAAa,EACb,SAAU,GACV,OAAQ,EACR,QAAS,WACL,OAAO,EAAE,KAAK,KAClB,EACA,IAAK,SAAS,GACV,OAAO,MAAQ,EAAI,EAAI,EAAI,KAAK,EAAI,KAAK,QAAU,KAAK,GAAK,EAAE,KAAK,KACxE,EACA,UAAW,SAAS,GAEhB,OADA,EAAI,EAAE,MAAM,KAAK,cAAe,IACvB,WAAa,KAAM,EAAE,QAAU,KAAK,QAAS,CAC1D,EACA,KAAM,SAAS,EAAG,GACd,OAAO,EAAE,KAAK,KAAM,EAAG,EAC3B,EACA,IAAK,SAAS,GACV,OAAO,KAAK,UAAU,EAAE,IAAI,MAAM,SAAS,EAAG,GAC1C,OAAO,EAAE,KAAK,EAAG,EAAG,EACxB,IACJ,EACA,MAAO,WACH,OAAO,KAAK,UAAU,EAAE,MAAM,KAAM,WACxC,EACA,MAAO,WACH,OAAO,KAAK,GAAG,EACnB,EACA,KAAM,WACF,OAAO,KAAK,IAAI,EACpB,EACA,GAAI,SAAS,GACT,IAAI,EAAI,KAAK,OACT,GAAK,GAAK,EAAI,EAAI,EAAI,GAC1B,OAAO,KAAK,UAAU,GAAK,GAAK,EAAI,EAAI,CAAC,KAAK,IAAM,GACxD,EACA,IAAK,WACD,OAAO,KAAK,YAAc,KAAK,YAAY,KAC/C,EACA,KAAM,EACN,KAAM,EAAE,KACR,OAAQ,EAAE,QACX,EAAE,OAAS,EAAE,GAAG,OAAS,WACxB,IAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,UAAU,IAAM,CAAC,EACpC,EAAI,EACJ,EAAI,UAAU,OACd,GAAI,EACR,IAAK,kBAAoB,IAAM,EAAI,EAAG,EAAI,UAAU,IAAM,CAAC,EAAG,KAAM,iBAAmB,GAAK,EAAE,WAAW,KAAO,EAAI,CAAC,GAAI,IAAM,IAAM,EAAI,KAAM,KAAM,EAAI,EAAG,IACxJ,GAAI,OAAS,EAAI,UAAU,IACvB,IAAK,KAAK,EAAG,EAAI,EAAE,GAAc,KAAV,EAAI,EAAE,MAAgB,GAAK,IAAM,EAAE,cAAc,KAAO,EAAI,EAAE,QAAQ,MAAQ,EAAI,GAAK,GAAI,EAAI,GAAK,EAAE,QAAQ,GAAK,EAAI,IAAM,GAAK,EAAE,cAAc,GAAK,EAAI,CAAC,EAAG,EAAE,GAAK,EAAE,OAAO,EAAG,EAAG,SAAM,IAAW,IAAM,EAAE,GAAK,IAClP,OAAO,CACX,EAAG,EAAE,OAAO,CACR,QAAS,UAAY,EAAI,KAAK,UAAU,QAAQ,MAAO,IACvD,SAAS,EACT,MAAO,SAAS,GACZ,MAAM,IAAI,MAAM,EACpB,EACA,KAAM,WAAY,EAClB,WAAY,SAAS,GACjB,MAAO,aAAe,EAAE,KAAK,EACjC,EACA,QAAS,MAAM,QACf,SAAU,SAAS,GACf,OAAO,MAAQ,GAAK,IAAM,EAAE,MAChC,EACA,UAAW,SAAS,GAChB,OAAQ,EAAE,QAAQ,IAAM,GAAK,EAAI,WAAW,EAChD,EACA,cAAe,SAAS,GACpB,QAAS,WAAa,EAAE,KAAK,IAAM,EAAE,UAAY,EAAE,SAAS,IAAM,EAAE,cAAgB,EAAE,KAAK,EAAE,YAAY,UAAW,iBACxH,EACA,cAAe,SAAS,GACpB,IAAK,IAAI,KAAK,EAAG,OAAO,EACxB,OAAO,CACX,EACA,KAAM,SAAS,GACX,OAAO,MAAQ,EAAI,EAAI,GAAK,iBAAmB,GAAK,mBAAqB,EAAI,EAAE,EAAE,KAAK,KAAO,gBAAkB,CACnH,EACA,WAAY,SAAS,GACjB,IAAI,EAAG,EAAI,MACV,EAAI,EAAE,KAAK,MAAQ,IAAM,EAAE,QAAQ,gBAAkB,EAAI,EAAE,cAAc,WAAW,KAAO,EAAG,EAAE,KAAK,YAAY,GAAG,WAAW,YAAY,IAAM,EAAE,GACxJ,EACA,UAAW,SAAS,GAChB,OAAO,EAAE,QAAQ,EAAG,OAAO,QAAQ,EAAG,EAC1C,EACA,SAAU,SAAS,EAAG,GAClB,OAAO,EAAE,UAAY,EAAE,SAAS,gBAAkB,EAAE,aACxD,EACA,KAAM,SAAS,EAAG,EAAG,GACjB,IAAO,EAAI,EACP,EAAI,EAAE,OACN,EAAI,EAAE,GACV,GAAI,GACA,GAAI,EACA,KAAO,EAAI,IAAK,IAAY,EAAE,MAAM,EAAE,GAAI,GAAK,UAE/C,IAAK,KAAK,EACN,IAA0B,IAAlB,EAAE,MAAM,EAAE,GAAI,GAAc,WACzC,GAAI,EACP,KAAO,EAAI,IAAK,IAAY,EAAE,KAAK,EAAE,GAAI,EAAG,EAAE,IAAM,UAEpD,IAAK,KAAK,EACN,IAA+B,IAAvB,EAAE,KAAK,EAAE,GAAI,EAAG,EAAE,IAAe,MACjD,OAAO,CACX,EACA,KAAM,SAAS,GACX,OAAO,MAAQ,EAAI,IAAM,EAAI,IAAI,QAAQ,EAAG,GAChD,EACA,UAAW,SAAS,EAAG,GAEnB,OADA,EAAI,GAAK,GACF,MAAQ,IAAM,EAAE,OAAO,IAAM,EAAE,MAAM,EAAG,iBAAmB,EAAI,CAAC,GAAK,GAAK,EAAE,KAAK,EAAG,IAAK,CACpG,EACA,QAAS,SAAS,EAAG,EAAG,GACpB,OAAO,MAAQ,GAAK,EAAI,EAAE,KAAK,EAAG,EAAG,EACzC,EACA,MAAO,SAAS,EAAG,GACf,IAAK,IAAI,GAAK,EAAE,OAAQ,EAAI,EAAG,EAAI,EAAE,OAAQ,EAAI,EAAG,IAAK,EAAE,KAAO,EAAE,GACpE,OAAO,EAAE,OAAS,EAAG,CACzB,EACA,KAAM,SAAS,EAAG,EAAG,GACjB,IAAK,IAAI,EAAI,GAAI,EAAI,EAAG,EAAI,EAAE,OAAQ,GAAK,EAAG,EAAI,EAAG,KAAM,EAAE,EAAE,GAAI,IAAM,GAAK,EAAE,KAAK,EAAE,IACvF,OAAO,CACX,EACA,IAAK,SAAS,EAAG,EAAG,GAChB,IAAI,EAAG,EAAI,EACP,EAAI,EAAE,OACN,EAAI,GACR,GAAI,EAAE,GACF,KAAO,EAAI,EAAG,IAAK,OAAS,EAAI,EAAE,EAAE,GAAI,EAAG,KAAO,EAAE,KAAK,QAEzD,IAAK,KAAK,EAAsB,OAAnB,EAAI,EAAE,EAAE,GAAI,EAAG,KAAiB,EAAE,KAAK,GACxD,OAAO,EAAE,MAAM,GAAI,EACvB,EACA,KAAM,EACN,MAAO,SAAS,EAAG,GACf,IAAI,EAAG,EACP,MAAO,iBAAmB,IAAM,EAAI,EAAE,GAAI,EAAI,EAAG,EAAI,GAAI,EAAE,WAAW,IAAM,EAAI,EAAE,KAAK,UAAW,IAAK,EAAI,WACvG,OAAO,EAAE,MAAM,GAAK,KAAM,EAAE,OAAO,EAAE,KAAK,YAC9C,GAAG,KAAO,EAAE,KAAO,EAAE,MAAQ,EAAE,OAAQ,QAAK,CAChD,EACA,IAAK,KAAK,IACV,QAAS,IACT,EAAE,KAAK,gEAAgE,MAAM,MAAM,SAAS,EAAG,GAC/F,EAAE,WAAa,EAAI,KAAO,EAAE,aAChC,IACA,IAAI,EAAI,CAAC,IACD,SAAS,EAAE,EAAG,EAAG,GACb,IAAI,EAAI,KAAO,EAAI,MACnB,OAAO,GAAK,GAAK,EAAI,EAAI,EAAI,EAAI,OAAO,aAAa,MAAQ,GAAK,OAAO,aAAa,GAAK,GAAK,MAAO,KAAO,EAAI,MACtH,CACA,IAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,UAAY,IAAI,KAC7E,EAAI,EAAE,SACN,EAAI,EACJ,EAAI,EACJ,EAAI,KACJ,EAAI,KACJ,EAAI,KACJ,EAAI,SAAS,EAAG,GACZ,OAAO,IAAM,IAAM,GAAI,GAAK,CAChC,EACA,EAAI,YACJ,EAAI,CAAC,EAAE,eACP,EAAI,GACJ,EAAI,EAAE,IACN,EAAI,EAAE,KACN,EAAI,EAAE,KACN,EAAI,EAAE,MACN,EAAI,EAAE,SAAW,SAAS,GACtB,IAAK,IAAI,EAAI,EAAG,EAAI,KAAK,OAAQ,EAAI,EAAG,IACpC,GAAI,KAAK,KAAO,EAAG,OAAO,EAC9B,OAAQ,CACZ,EACA,EAAI,6HACJ,EAAI,sBACJ,EAAI,mCACJ,EAAI,EAAE,QAAQ,IAAK,MACnB,EAAI,MAAQ,EAAI,KAAO,EAAI,OAAS,EAAI,gBAAkB,EAAI,2DAA6D,EAAI,OAAS,EAAI,OAC5I,EAAI,KAAO,EAAI,wFAA0F,EAAI,eAC7G,EAAI,IAAI,OAAO,IAAM,EAAI,8BAAgC,EAAI,KAAM,KACnE,EAAI,IAAI,OAAO,IAAM,EAAI,KAAO,EAAI,KACpC,EAAK,IAAI,OAAO,IAAM,EAAI,WAAa,EAAI,IAAM,EAAI,KACrD,EAAK,IAAI,OAAO,IAAM,EAAI,iBAAmB,EAAI,OAAQ,KACzD,EAAK,IAAI,OAAO,GAChB,EAAK,IAAI,OAAO,IAAM,EAAI,KAC1B,EAAI,CACA,GAAI,IAAI,OAAO,MAAQ,EAAI,KAC3B,MAAO,IAAI,OAAO,QAAU,EAAI,KAChC,IAAK,IAAI,OAAO,KAAO,EAAE,QAAQ,IAAK,MAAQ,KAC9C,KAAM,IAAI,OAAO,IAAM,GACvB,OAAQ,IAAI,OAAO,IAAM,GACzB,MAAO,IAAI,OAAO,yDAA2D,EAAI,+BAAiC,EAAI,cAAgB,EAAI,aAAe,EAAI,SAAU,KACvK,KAAM,IAAI,OAAO,OAAS,EAAI,KAAM,KACpC,aAAc,IAAI,OAAO,IAAM,EAAI,mDAAqD,EAAI,mBAAqB,EAAI,mBAAoB,MAE7I,EAAK,sCACL,EAAK,SACL,EAAI,yBACJ,EAAK,mCACL,GAAK,OACL,GAAK,QACL,GAAI,IAAI,OAAO,qBAAuB,EAAI,MAAQ,EAAI,OAAQ,MAClE,IACI,EAAE,MAAM,EAAI,EAAE,KAAK,EAAE,YAAa,EAAE,YAAa,EAAE,EAAE,WAAW,QAAQ,QAC5E,CAAE,MAAO,GACL,EAAI,CACA,MAAO,EAAE,OAAS,SAAS,EAAG,GAC1B,EAAE,MAAM,EAAG,EAAE,KAAK,GACtB,EAAI,SAAS,EAAG,GACZ,IAAK,IAAI,EAAI,EAAE,OAAQ,EAAI,EAAG,EAAE,KAAO,EAAE,OACzC,EAAE,OAAS,EAAI,CACnB,EAER,CAEA,SAAS,GAAE,EAAG,EAAG,EAAG,GAChB,IAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EACtB,IAAK,EAAI,EAAE,eAAiB,EAAI,KAAO,GAAK,EAAE,GAAI,EAAI,GAAK,IAAK,GAAK,iBAAmB,EAAG,OAAO,EAClG,GAAI,KAAO,GAAK,EAAI,GAAK,GAAG,WAAa,IAAM,EAAG,MAAO,GACzD,GAAI,IAAM,EAAG,CACT,GAAI,EAAI,EAAG,KAAK,GACZ,GAAI,EAAI,EAAE,IACN,GAAI,IAAM,EAAG,CACT,KAAM,EAAI,EAAE,eAAe,MAAQ,EAAE,WAAY,OAAO,EACxD,GAAI,EAAE,KAAO,EAAG,OAAO,EAAE,KAAK,GAAI,CACtC,MAAO,GAAI,EAAE,gBAAkB,EAAI,EAAE,cAAc,eAAe,KAAO,EAAE,EAAG,IAAM,EAAE,KAAO,EAAG,OAAO,EAAE,KAAK,GAAI,MAC/G,CACH,GAAI,EAAE,GAAI,OAAO,EAAE,MAAM,EAAG,EAAE,qBAAqB,IAAK,EACxD,IAAK,EAAI,EAAE,KAAO,EAAE,wBAA0B,EAAE,uBAAwB,OAAO,EAAE,MAAM,EAAG,EAAE,uBAAuB,IAAK,CAC5H,CAAE,GAAI,EAAE,OAAS,IAAM,EAAE,KAAK,IAAK,CACnC,GAAI,EAAI,EAAI,EAAG,EAAI,EAAG,EAAI,IAAM,GAAK,EAAG,IAAM,GAAK,WAAa,EAAE,SAAS,cAAe,CACtF,IAAK,EAAI,EAAE,IAAK,EAAI,EAAE,aAAa,OAAS,EAAI,EAAE,QAAQ,GAAI,QAAU,EAAE,aAAa,KAAM,GAAI,EAAI,QAAU,EAAI,MAAO,EAAI,EAAE,OAAQ,KAAM,EAAE,GAAK,EAAI,GAAE,EAAE,IAC7J,EAAI,GAAG,KAAK,IAAM,GAAG,EAAE,aAAe,EAAG,EAAI,EAAE,KAAK,IACxD,CACA,GAAI,EAAG,IACH,OAAO,EAAE,MAAM,EAAG,EAAE,iBAAiB,IAAK,CAC9C,CAAE,MAAO,GAAI,CAAE,QACX,GAAK,EAAE,gBAAgB,KAC3B,CACJ,CACJ,CACA,OAAO,EAAE,EAAE,QAAQ,EAAG,MAAO,EAAG,EAAG,EACvC,CAEA,SAAS,KACL,IAAI,EAAI,GAKR,OAHA,SAAS,EAAE,EAAG,GACV,OAAO,EAAE,KAAK,EAAI,KAAO,EAAE,oBAAsB,EAAE,EAAE,SAAU,EAAE,EAAI,KAAO,CAChF,CAEJ,CAEA,SAAS,GAAE,GACP,OAAO,EAAE,IAAK,EAAI,CACtB,CAEA,SAAS,GAAE,GACP,IAAI,EAAI,EAAE,cAAc,OACxB,IACI,QAAS,EAAE,EACf,CAAE,MAAO,GACL,OAAO,CACX,CAAE,QACE,EAAE,YAAc,EAAE,WAAW,YAAY,EAC7C,CACJ,CAEA,SAAS,GAAG,EAAG,GACX,IAAK,IAAI,EAAI,EAAE,MAAM,KAAM,EAAI,EAAE,OAAQ,KAAM,EAAE,WAAW,EAAE,IAAM,CACxE,CAEA,SAAS,GAAG,EAAG,GACX,IAAI,EAAI,GAAK,EACT,EAAI,GAAK,IAAM,EAAE,UAAY,IAAM,EAAE,YAAc,EAAE,aAAe,GAAK,MAAQ,EAAE,aAAe,GAAK,IAC3G,GAAI,EAAG,OAAO,EACd,GAAI,EACA,KAAO,EAAI,EAAE,aACT,GAAI,IAAM,EAAG,OAAQ,EAC7B,OAAO,EAAI,GAAK,CACpB,CAEA,SAAS,GAAE,GACP,OAAO,IAAE,SAAS,GACd,OAAO,GAAK,EAAG,IAAE,SAAS,EAAG,GACzB,IAAK,IAAI,EAAG,EAAI,EAAE,GAAI,EAAE,OAAQ,GAAI,EAAI,EAAE,OAAQ,KAAM,EAAE,EAAI,EAAE,MAAQ,EAAE,KAAO,EAAE,GAAK,EAAE,IAC9F,GACJ,GACJ,CAEA,SAAS,GAAG,GACR,OAAO,UAAY,EAAE,uBAAyB,GAAK,CACvD,CACA,IAAK,KAAK,EAAI,GAAE,QAAU,CAAC,EAAG,EAAI,GAAE,MAAQ,SAAS,GAE7C,SADA,EAAI,IAAM,EAAE,eAAiB,GAAG,kBAClB,SAAW,EAAE,QAC/B,EAAG,EAAI,GAAE,YAAc,SAAS,GAC5B,IAAI,EAAI,EAAI,EAAE,eAAiB,EAAI,EAC/B,EAAI,EAAE,YACV,OAAO,IAAM,GAAK,IAAM,EAAE,UAAY,EAAE,iBAAmB,GAAK,EAAI,GAAG,gBAAiB,GAAK,EAAE,GAAI,GAAK,IAAM,EAAE,MAAQ,EAAE,iBAAmB,EAAE,iBAAiB,UAAU,WACtK,GACJ,IAAG,GAAM,EAAE,aAAe,EAAE,YAAY,YAAY,WAChD,GACJ,KAAK,EAAE,WAAa,IAAE,SAAS,GAC3B,OAAO,EAAE,UAAY,KAAM,EAAE,aAAa,YAC9C,IAAI,EAAE,qBAAuB,IAAE,SAAS,GACpC,OAAO,EAAE,YAAY,EAAE,cAAc,MAAO,EAAE,qBAAqB,KAAK,MAC5E,IAAI,EAAE,uBAAyB,EAAE,KAAK,EAAE,yBAA2B,IAAE,SAAS,GAC1E,OAAO,EAAE,UAAY,+CAAgD,EAAE,WAAW,UAAY,IAAK,IAAM,EAAE,uBAAuB,KAAK,MAC3I,IAAI,EAAE,QAAU,IAAE,SAAS,GACvB,OAAO,EAAE,YAAY,GAAG,GAAK,GAAI,EAAE,oBAAsB,EAAE,kBAAkB,GAAG,MACpF,IAAI,EAAE,SAAW,EAAE,KAAK,GAAK,SAAS,EAAG,GACrC,UAAW,EAAE,iBAAmB,GAAK,EAAG,OAAQ,EAAI,EAAE,eAAe,KAAO,EAAE,WAAa,CAAC,GAAK,EACrG,EAAG,EAAE,OAAO,GAAK,SAAS,GACtB,IAAI,EAAI,EAAE,QAAQ,GAAG,GACrB,OAAO,SAAS,GACZ,OAAO,EAAE,aAAa,QAAU,CACpC,CACJ,WAAa,EAAE,KAAK,GAAI,EAAE,OAAO,GAAK,SAAS,GAC3C,IAAI,EAAI,EAAE,QAAQ,GAAG,GACrB,OAAO,SAAS,GAEZ,OADA,SAAW,EAAE,mBAAqB,GAAK,EAAE,iBAAiB,QAC9C,EAAE,QAAU,CAC5B,CACJ,GAAI,EAAE,KAAK,IAAM,EAAE,qBAAuB,SAAS,EAAG,GAClD,cAAc,EAAE,uBAAyB,EAAI,EAAE,qBAAqB,QAAK,CAC7E,EAAI,SAAS,EAAG,GACZ,IAAI,EAAG,EAAI,GACP,EAAI,EACJ,EAAI,EAAE,qBAAqB,GAC/B,GAAI,MAAQ,EAAG,OAAO,EACtB,KAAO,EAAI,EAAE,MAAO,IAAM,EAAE,UAAY,EAAE,KAAK,GAC/C,OAAO,CACX,EAAG,EAAE,KAAK,MAAQ,EAAE,wBAA0B,SAAS,EAAG,GACtD,cAAc,EAAE,yBAA2B,GAAK,EAAI,EAAE,uBAAuB,QAAK,CACtF,EAAG,EAAI,GAAI,EAAI,IAAK,EAAE,IAAM,EAAE,KAAK,EAAE,qBAAuB,IAAE,SAAS,GACnE,EAAE,UAAY,gEAAiE,EAAE,iBAAiB,qBAAqB,QAAU,EAAE,KAAK,SAAW,EAAI,gBAAiB,EAAE,iBAAiB,cAAc,QAAU,EAAE,KAAK,MAAQ,EAAI,aAAe,EAAI,KAAM,EAAE,iBAAiB,YAAY,QAAU,EAAE,KAAK,WACnT,IAAI,IAAE,SAAS,GACX,IAAI,EAAI,EAAE,cAAc,SACxB,EAAE,aAAa,OAAQ,UAAW,EAAE,YAAY,GAAG,aAAa,OAAQ,KAAM,EAAE,iBAAiB,YAAY,QAAU,EAAE,KAAK,OAAS,EAAI,eAAgB,EAAE,iBAAiB,YAAY,QAAU,EAAE,KAAK,WAAY,aAAc,EAAE,iBAAiB,QAAS,EAAE,KAAK,OAC5Q,MAAM,EAAE,gBAAkB,EAAE,KAAK,EAAI,EAAE,SAAW,EAAE,uBAAyB,EAAE,oBAAsB,EAAE,kBAAoB,EAAE,qBAAuB,IAAE,SAAS,GAC3J,EAAE,kBAAoB,EAAE,KAAK,EAAG,OAAQ,EAAE,KAAK,EAAG,aAAc,EAAE,KAAK,KAAM,EACjF,IAAI,EAAI,EAAE,QAAU,IAAI,OAAO,EAAE,KAAK,MAAO,EAAI,EAAE,QAAU,IAAI,OAAO,EAAE,KAAK,MAAO,EAAI,EAAE,KAAK,EAAE,yBAA0B,EAAI,GAAK,EAAE,KAAK,EAAE,UAAY,SAAS,EAAG,GACnK,IAAI,EAAI,IAAM,EAAE,SAAW,EAAE,gBAAkB,EAE/C,OAAO,KADH,EAAI,GAAK,EAAE,gBACM,GAAK,IAAM,EAAE,YAAc,EAAE,SAAW,EAAE,SAAS,GAAK,EAAE,yBAA2B,GAAK,EAAE,wBAAwB,IAC7I,EAAI,SAAS,EAAG,GACZ,GAAI,EACA,KAAO,EAAI,EAAE,YACT,GAAI,IAAM,EAAG,OAAO,EAC5B,OAAO,CACX,EAAG,EAAI,EAAI,SAAS,EAAG,GACnB,IAAI,EACJ,OAAO,IAAM,GAAK,GAAI,EAAI,IAAM,GAAK,EAAE,yBAA2B,EAAE,2BAA6B,GAAK,GAAK,EAAE,eAAiB,MAAQ,EAAE,eAAiB,GAAK,EAAE,wBAAwB,GAAK,KAAO,EAAE,cAAgB,EAAE,wBAAwB,KAAO,EAAI,IAAM,GAAK,EAAE,gBAAkB,GAAK,EAAE,EAAG,IAAM,EAAI,IAAM,GAAK,EAAE,gBAAkB,GAAK,EAAE,EAAG,GAAK,EAAI,EAAI,EAAE,KAAK,EAAG,GAAK,EAAE,KAAK,EAAG,GAAK,EAAI,EAAI,GAAK,EAAI,EACvZ,EAAI,SAAS,EAAG,GACZ,GAAI,IAAM,EAAG,OAAO,GAAI,EAAI,EAC5B,IAAI,EAAG,EAAI,EACP,EAAI,EAAE,WACN,EAAI,EAAE,WACN,EAAI,CAAC,GACL,EAAI,CAAC,GACT,IAAK,IAAM,EAAG,OAAO,IAAM,GAAK,EAAI,IAAM,EAAI,EAAI,GAAK,EAAI,EAAI,EAAI,EAAI,EAAE,KAAK,EAAG,GAAK,EAAE,KAAK,EAAG,GAAK,EACrG,GAAI,IAAM,EAAG,OAAO,GAAG,EAAG,GAC1B,IAAK,EAAI,EAAG,EAAI,EAAE,YAAa,EAAE,QAAQ,GACzC,IAAK,EAAI,EAAG,EAAI,EAAE,YAAa,EAAE,QAAQ,GACzC,KAAO,EAAE,KAAO,EAAE,IAAK,IACvB,OAAO,EAAI,GAAG,EAAE,GAAI,EAAE,IAAM,EAAE,KAAO,GAAK,EAAI,EAAE,KAAO,EAAI,EAAI,CACnE,EAAG,GAAK,CACZ,EAAG,GAAE,QAAU,SAAS,EAAG,GACvB,OAAO,GAAE,EAAG,KAAM,KAAM,EAC5B,EAAG,GAAE,gBAAkB,SAAS,EAAG,GAC/B,IAAK,EAAE,eAAiB,KAAO,GAAK,EAAE,GAAI,EAAI,EAAE,QAAQ,EAAI,aAAc,EAAE,kBAAoB,GAAK,GAAK,EAAE,KAAK,IAAM,GAAK,EAAE,KAAK,IAAK,IACpI,IAAI,EAAI,EAAE,KAAK,EAAG,GAClB,GAAI,GAAK,EAAE,mBAAqB,EAAE,UAAY,KAAO,EAAE,SAAS,SAAU,OAAO,CACrF,CAAE,MAAO,GAAI,CACb,OAAO,EAAI,GAAE,EAAG,EAAG,KAAM,CAAC,IAAI,MAClC,EAAG,GAAE,SAAW,SAAS,EAAG,GACxB,OAAQ,EAAE,eAAiB,KAAO,GAAK,EAAE,GAAI,EAAE,EAAG,EACtD,EAAG,GAAE,KAAO,SAAS,EAAG,GAEpB,IACI,EACJ,OAHC,EAAE,eAAiB,KAAO,GAAK,EAAE,QAG3B,KADH,GADA,EAAI,EAAE,WAAW,EAAE,iBACV,EAAE,KAAK,EAAE,WAAY,EAAE,eAAiB,EAAE,EAAG,GAAI,QAAK,GAC7C,EAAI,EAAE,aAAe,EAAI,EAAE,aAAa,IAAM,EAAI,EAAE,iBAAiB,KAAO,EAAE,UAAY,EAAE,MAAQ,IAC9H,EAAG,GAAE,MAAQ,SAAS,GAClB,MAAM,IAAI,MAAM,0CAA4C,EAChE,EAAG,GAAE,WAAa,SAAS,GACvB,IAAI,EAAG,EAAI,GACP,EAAI,EACJ,EAAI,EACR,GAAI,GAAK,EAAE,iBAAkB,GAAK,EAAE,YAAc,EAAE,MAAM,GAAI,EAAE,KAAK,GAAI,EAAG,CACxE,KAAO,EAAI,EAAE,MAAO,IAAM,EAAE,KAAO,EAAI,EAAE,KAAK,IAC9C,KAAO,KAAM,EAAE,OAAO,EAAE,GAAI,EAChC,CACA,OAAO,EAAI,KAAM,CACrB,EAAG,EAAI,GAAE,QAAU,SAAS,GACxB,IAAI,EAAG,EAAI,GACP,EAAI,EACJ,EAAI,EAAE,SACV,GAAI,GACA,GAAI,IAAM,GAAK,IAAM,GAAK,KAAO,EAAG,CAChC,GAAI,iBAAmB,EAAE,YAAa,OAAO,EAAE,YAC/C,IAAK,EAAI,EAAE,WAAY,EAAG,EAAI,EAAE,YAAa,GAAK,EAAE,EACxD,MAAO,GAAI,IAAM,GAAK,IAAM,EAAG,OAAO,EAAE,eAExC,KAAO,EAAI,EAAE,MAAO,GAAK,EAAE,GAC/B,OAAO,CACX,GAAI,EAAI,GAAE,UAAY,CAClB,YAAa,GACb,aAAc,GACd,MAAO,EACP,WAAY,CAAC,EACb,KAAM,CAAC,EACP,SAAU,CACN,IAAK,CACD,IAAK,aACL,OAAO,GAEX,IAAK,CACD,IAAK,cAET,IAAK,CACD,IAAK,kBACL,OAAO,GAEX,IAAK,CACD,IAAK,oBAGb,UAAW,CACP,KAAM,SAAS,GACX,OAAO,EAAE,GAAK,EAAE,GAAG,QAAQ,GAAG,GAAI,EAAE,IAAM,EAAE,IAAM,EAAE,IAAM,EAAE,IAAM,IAAI,QAAQ,GAAG,GAAI,OAAS,EAAE,KAAO,EAAE,GAAK,IAAM,EAAE,GAAK,KAAM,EAAE,MAAM,EAAG,EAChJ,EACA,MAAO,SAAS,GACZ,OAAO,EAAE,GAAK,EAAE,GAAG,cAAe,QAAU,EAAE,GAAG,MAAM,EAAG,IAAM,EAAE,IAAM,GAAE,MAAM,EAAE,IAAK,EAAE,KAAO,EAAE,GAAK,EAAE,IAAM,EAAE,IAAM,GAAK,GAAK,SAAW,EAAE,IAAM,QAAU,EAAE,KAAM,EAAE,KAAO,EAAE,GAAK,EAAE,IAAM,QAAU,EAAE,KAAO,EAAE,IAAM,GAAE,MAAM,EAAE,IAAK,CAC5O,EACA,OAAQ,SAAS,GACb,IAAI,EAAG,GAAK,EAAE,IAAM,EAAE,GACtB,OAAO,EAAE,MAAM,KAAK,EAAE,IAAM,MAAQ,EAAE,GAAK,EAAE,GAAK,EAAE,IAAM,EAAE,IAAM,GAAK,GAAK,EAAG,KAAK,KAAO,GAAK,EAAI,EAAE,GAAG,KAAQ,EAAE,QAAQ,IAAK,EAAE,OAAS,GAAK,EAAE,UAAY,EAAE,GAAK,EAAE,GAAG,MAAM,EAAG,GAAI,EAAE,GAAK,EAAE,MAAM,EAAG,IAAK,EAAE,MAAM,EAAG,GAC7N,GAEJ,OAAQ,CACJ,IAAK,SAAS,GACV,IAAI,EAAI,EAAE,QAAQ,GAAG,GAAG,cACxB,MAAO,MAAQ,EAAI,WACf,OAAO,CACX,EAAI,SAAS,GACT,OAAO,EAAE,UAAY,EAAE,SAAS,gBAAkB,CACtD,CACJ,EACA,MAAO,SAAS,GACZ,IAAI,EAAI,EAAE,EAAI,KACd,OAAO,IAAM,EAAI,IAAI,OAAO,MAAQ,EAAI,IAAM,EAAI,IAAM,EAAI,SAAW,EAAE,GAAG,SAAS,GACjF,OAAO,EAAE,KAAK,iBAAmB,EAAE,WAAa,EAAE,kBAAoB,EAAE,eAAiB,GAAK,EAAE,aAAa,UAAY,GAC7H,GACJ,EACA,KAAM,SAAS,EAAG,EAAG,GACjB,OAAO,SAAS,GAEZ,OAAO,OADP,EAAI,GAAE,KAAK,EAAG,IACK,OAAS,GAAK,IAAM,GAAK,GAAI,MAAQ,EAAI,IAAM,EAAI,OAAS,EAAI,IAAM,EAAI,OAAS,EAAI,GAAK,IAAM,EAAE,QAAQ,GAAK,OAAS,EAAI,IAAM,EAAI,EAAE,QAAQ,GAAK,OAAS,EAAI,GAAK,EAAE,OAAO,EAAE,UAAY,EAAI,OAAS,GAAK,GAAK,IAAM,EAAI,KAAK,QAAQ,GAAK,OAAS,IAAM,IAAM,GAAK,EAAE,MAAM,EAAG,EAAE,OAAS,KAAO,EAAI,KACrU,CACJ,EACA,MAAO,SAAS,EAAG,EAAG,EAAG,EAAG,GACxB,IAAI,EAAI,QAAU,EAAE,MAAM,EAAG,GACzB,EAAI,SAAW,EAAE,OAAO,GACxB,EAAI,YAAc,EACtB,OAAO,IAAM,GAAK,IAAM,EAAI,SAAS,GACjC,QAAS,EAAE,UACf,EAAI,SAAS,EAAG,EAAG,GACf,IAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,GAAK,EAAI,cAAgB,kBAC/C,EAAI,EAAE,WACN,EAAI,GAAK,EAAE,SAAS,cACpB,GAAK,IAAM,EACf,GAAI,EAAG,CACH,GAAI,EAAG,CACH,KAAO,GAAI,CACP,IAAK,EAAI,EAAG,EAAI,EAAE,IACd,GAAI,EAAI,EAAE,SAAS,gBAAkB,EAAI,IAAM,EAAE,SAAU,OAAO,EACtE,EAAI,EAAI,SAAW,IAAM,GAAK,aAClC,CACA,OAAO,CACX,CACA,GAAI,EAAI,CAAC,EAAI,EAAE,WAAa,EAAE,WAAY,GAAK,GAC3C,IAAK,GAAK,GAAK,EAAI,EAAE,KAAO,EAAE,GAAK,CAAC,IAAI,IAAM,IAAI,KAAO,GAAK,EAAE,GAAI,EAAI,EAAE,KAAO,GAAK,EAAE,GAAI,EAAI,GAAK,EAAE,WAAW,GAAI,IAAM,GAAK,GAAK,EAAE,KAAO,EAAI,EAAI,EAAG,EAAE,QACxJ,GAAI,IAAM,EAAE,YAAc,GAAK,IAAM,EAAG,CACpC,EAAE,GAAK,CAAC,EAAG,EAAG,GACd,KACJ,OACD,GAAI,IAAM,GAAK,EAAE,KAAO,EAAE,GAAK,CAAC,IAAI,KAAO,EAAE,KAAO,EAAG,EAAI,EAAE,QAEhE,MACK,IAAM,GAAK,GAAK,EAAE,KAAO,EAAI,EAAI,EAAG,EAAE,WAAa,EAAI,EAAE,SAAS,gBAAkB,EAAI,IAAM,EAAE,cAAgB,IAAM,KAAO,EAAE,KAAO,EAAE,GAAK,CAAC,IAAI,GAAK,CAAC,EAAG,IAAK,IAAM,MAC/K,OAAQ,GAAK,KAAO,GAAK,EAAI,GAAK,GAAK,GAAK,EAAI,CACpD,CACJ,CACJ,EACA,OAAQ,SAAS,EAAG,GAChB,IAAI,EAAG,EAAI,EAAE,QAAQ,IAAM,EAAE,WAAW,EAAE,gBAAkB,GAAE,MAAM,uBAAyB,GAC7F,OAAO,EAAE,GAAK,EAAE,GAAK,EAAI,EAAE,QAAU,EAAI,CAAC,EAAG,EAAG,GAAI,GAAI,EAAE,WAAW,eAAe,EAAE,eAAiB,IAAE,SAAS,EAAG,GACjH,IAAK,IAAI,EAAG,EAAI,EAAE,EAAG,GAAI,EAAI,EAAE,OAAQ,KAAM,EAAE,EAAI,EAAE,KAAK,EAAG,EAAE,OAAS,EAAE,GAAK,EAAE,GACrF,IAAK,SAAS,GACV,OAAO,EAAE,EAAG,EAAG,EACnB,GAAK,CACT,GAEJ,QAAS,CACL,IAAK,IAAE,SAAS,GACZ,IAAI,EAAI,GACJ,EAAI,GACJ,EAAI,EAAE,EAAE,QAAQ,EAAG,OACvB,OAAO,EAAE,GAAK,IAAE,SAAS,EAAG,EAAG,EAAG,GAC9B,IAAK,IAAI,EAAG,EAAI,EAAE,EAAG,KAAM,EAAG,IAAK,EAAI,EAAE,OAAQ,MAAM,EAAI,EAAE,MAAQ,EAAE,KAAO,EAAE,GAAK,GACzF,IAAK,SAAS,EAAG,EAAG,GAChB,OAAO,EAAE,GAAK,EAAG,EAAE,EAAG,KAAM,EAAG,IAAK,EAAE,KAC1C,CACJ,IACA,IAAK,IAAE,SAAS,GACZ,OAAO,SAAS,GACZ,OAAO,EAAI,GAAE,EAAG,GAAG,MACvB,CACJ,IACA,SAAU,IAAE,SAAS,GACjB,OAAO,SAAS,GACZ,OAAQ,GAAK,EAAE,aAAe,EAAE,WAAa,EAAE,IAAI,QAAQ,EAC/D,CACJ,IACA,KAAM,IAAE,SAAS,GACb,OAAO,EAAG,KAAK,GAAK,KAAO,GAAE,MAAM,qBAAuB,GAAI,EAAI,EAAE,QAAQ,GAAG,GAAG,cAC9E,SAAS,GACL,IAAI,EACJ,GACI,GAAI,EAAI,EAAI,EAAE,KAAO,EAAE,aAAa,aAAe,EAAE,aAAa,QAAS,OAAQ,EAAI,EAAE,iBAAmB,GAAK,IAAM,EAAE,QAAQ,EAAI,YAC/H,EAAI,EAAE,aAAe,IAAM,EAAE,UACvC,OAAO,CACX,CACR,IACA,OAAQ,SAAS,GACb,IAAI,EAAI,EAAE,UAAY,EAAE,SAAS,KACjC,OAAO,GAAK,EAAE,MAAM,KAAO,EAAE,EACjC,EACA,KAAM,SAAS,GACX,OAAO,IAAM,CACjB,EACA,MAAO,SAAS,GACZ,OAAO,IAAM,EAAE,iBAAmB,EAAE,UAAY,EAAE,gBAAkB,EAAE,MAAQ,EAAE,OAAS,EAAE,SAC/F,EACA,QAAS,SAAS,GACd,OAAO,IAAO,EAAE,QACpB,EACA,SAAU,SAAS,GACf,OAAO,IAAO,EAAE,QACpB,EACA,QAAS,SAAS,GACd,IAAI,EAAI,EAAE,SAAS,cACnB,MAAO,UAAY,KAAO,EAAE,SAAW,WAAa,KAAO,EAAE,QACjE,EACA,SAAU,SAAS,GACf,OAAO,EAAE,YAAc,EAAE,WAAW,eAAe,IAAO,EAAE,QAChE,EACA,MAAO,SAAS,GACZ,IAAK,EAAI,EAAE,WAAY,EAAG,EAAI,EAAE,YAC5B,GAAI,EAAE,SAAW,EAAG,OAAO,EAC/B,OAAO,CACX,EACA,OAAQ,SAAS,GACb,OAAQ,EAAE,QAAQ,MAAM,EAC5B,EACA,OAAQ,SAAS,GACb,OAAO,EAAG,KAAK,EAAE,SACrB,EACA,MAAO,SAAS,GACZ,OAAO,EAAG,KAAK,EAAE,SACrB,EACA,OAAQ,SAAS,GACb,IAAI,EAAI,EAAE,SAAS,cACnB,MAAO,UAAY,GAAK,WAAa,EAAE,MAAQ,WAAa,CAChE,EACA,KAAM,SAAS,GACX,MAAO,UAAY,EAAE,SAAS,eAAiB,SAAW,EAAE,OAAS,OAAS,EAAI,EAAE,aAAa,UAAY,SAAW,EAAE,cAC9H,EACA,MAAO,IAAE,WACL,MAAO,CAAC,EACZ,IACA,KAAM,IAAE,SAAS,EAAG,GAChB,MAAO,CAAC,EAAI,EAChB,IACA,GAAI,IAAE,SAAS,EAAG,EAAG,GACjB,MAAO,CAAC,EAAI,EAAI,EAAI,EAAI,EAC5B,IACA,KAAM,IAAE,SAAS,EAAG,GAChB,IAAK,IAAI,EAAI,EAAG,EAAI,EAAG,GAAK,EAAG,EAAE,KAAK,GACtC,OAAO,CACX,IACA,IAAK,IAAE,SAAS,EAAG,GACf,IAAK,IAAI,EAAI,EAAG,EAAI,EAAG,GAAK,EAAG,EAAE,KAAK,GACtC,OAAO,CACX,IACA,GAAI,IAAE,SAAS,EAAG,EAAG,GACjB,IAAK,IAAI,EAAI,EAAI,EAAI,EAAI,EAAI,EAAG,KAAO,GAAI,EAAE,KAAK,GAClD,OAAO,CACX,IACA,GAAI,IAAE,SAAS,EAAG,EAAG,GACjB,IAAK,IAAI,EAAI,EAAI,EAAI,EAAI,EAAI,IAAK,EAAI,GAAI,EAAE,KAAK,GACjD,OAAO,CACX,OAEL,QAAQ,IAAM,EAAE,QAAQ,GAAI,CAC3B,OAAO,EACP,UAAU,EACV,MAAM,EACN,UAAU,EACV,OAAO,GACR,EAAE,QAAQ,GAAK,CAAC,GAAK,SAAS,GACjC,MAAO,UAAY,EAAE,SAAS,eAAiB,EAAE,OAAS,CAC9D,EAFsB,CAEnB,GACH,IAAK,IAAK,CACF,QAAQ,EACR,OAAO,GACR,EAAE,QAAQ,GAAK,CAAC,GAAK,SAAS,GACjC,IAAI,EAAI,EAAE,SAAS,cACnB,OAAQ,UAAY,GAAK,WAAa,IAAM,EAAE,OAAS,CAC3D,EAHsB,CAGnB,GAEH,SAAS,KAAM,CAEf,SAAS,GAAE,GACP,IAAK,IAAI,EAAI,EAAG,EAAI,EAAE,OAAQ,EAAI,GAAI,EAAI,EAAG,IAAK,GAAK,EAAE,GAAG,MAC5D,OAAO,CACX,CAEA,SAAS,GAAG,EAAG,EAAG,GACd,IAAI,EAAI,EAAE,IACN,EAAI,GAAK,eAAiB,EAC1B,EAAI,IACR,OAAO,EAAE,MAAQ,SAAS,EAAG,EAAG,GAC5B,KAAO,EAAI,EAAE,IACT,GAAI,IAAM,EAAE,UAAY,EAAG,OAAO,EAAE,EAAG,EAAG,EAClD,EAAI,SAAS,EAAG,EAAG,GACf,IAAI,EAAG,EAAG,EAAI,CAAC,EAAG,GAClB,GAAI,GACA,KAAO,EAAI,EAAE,IACT,IAAK,IAAM,EAAE,UAAY,IAAM,EAAE,EAAG,EAAG,GAAI,OAAO,OAEtD,KAAO,EAAI,EAAE,IACT,GAAI,IAAM,EAAE,UAAY,EAAG,CACvB,IAAK,GAAK,EAAI,EAAE,KAAO,EAAE,GAAK,CAAC,IAAI,KAAO,EAAE,KAAO,GAAK,EAAE,KAAO,EAAG,OAAO,EAAE,GAAK,EAAE,GACpF,IAAK,EAAE,GAAK,GAAG,GAAK,EAAE,EAAG,EAAG,GAAI,OAAO,CAC3C,CACZ,CACJ,CAEA,SAAS,GAAG,GACR,OAAO,EAAI,EAAE,OAAS,SAAS,EAAG,EAAG,GACjC,IAAK,IAAI,EAAI,EAAE,OAAQ,KACnB,IAAK,EAAE,GAAG,EAAG,EAAG,GAAI,OAAO,EAC/B,OAAO,CACX,EAAI,EAAE,EACV,CAEA,SAAS,GAAE,EAAG,EAAG,EAAG,EAAG,GACnB,IAAK,IAAI,EAAG,EAAI,GAAI,EAAI,EAAG,EAAI,EAAE,OAAQ,EAAI,MAAQ,EAAG,EAAI,EAAG,KAAK,EAAI,EAAE,OAAS,GAAK,EAAE,EAAG,EAAG,MAAQ,EAAE,KAAK,GAAI,IAAM,EAAE,KAAK,GAChI,OAAO,CACX,CAEA,SAAS,GAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GACvB,OAAO,IAAM,EAAE,KAAO,EAAI,GAAG,IAAK,IAAM,EAAE,KAAO,EAAI,GAAG,EAAG,IAAK,IAAE,SAAS,EAAG,EAAG,EAAG,GAChF,IAAI,EAAG,EAAG,EAAG,EAAI,GACb,EAAI,GACJ,EAAI,EAAE,OACN,EAAI,GAAK,EAAE,EAAG,EAAG,KACb,IAAK,IAAI,EAAI,EAAG,EAAI,EAAE,OAAQ,EAAI,EAAG,IAAK,GAAE,EAAG,EAAE,GAAI,GACrD,OAAO,CACV,EAHQ,CAGN,GAAK,IAAK,EAAE,SAAW,CAAC,GAAK,EAAG,IACnC,GAAK,IAAM,GAAK,EAAI,EAAI,GAAE,EAAG,EAAG,EAAG,EAAG,GACtC,EAAI,EAAI,IAAM,EAAI,EAAI,GAAK,GAAK,GAAK,EAAI,EAC7C,GAAI,GAAK,EAAE,EAAG,EAAG,EAAG,GAAI,EACpB,IAAK,EAAI,GAAE,EAAG,GAAI,EAAE,EAAG,GAAI,EAAG,GAAI,EAAI,EAAE,OAAQ,MAAM,EAAI,EAAE,MAAQ,EAAE,EAAE,MAAQ,EAAE,EAAE,IAAM,IAC9F,GAAI,GACA,GAAI,GAAK,EAAG,CACR,GAAI,EAAG,CACH,IAAK,EAAI,GAAI,EAAI,EAAE,OAAQ,MAAM,EAAI,EAAE,KAAO,EAAE,KAAK,EAAE,GAAK,GAC5D,EAAE,KAAM,EAAI,GAAI,EAAG,EACvB,CACA,IAAK,EAAI,EAAE,OAAQ,MAAM,EAAI,EAAE,MAAQ,GAAK,EAAI,EAAI,EAAE,KAAK,EAAG,GAAK,EAAE,MAAQ,EAAE,KAAO,EAAE,GAAK,GACjG,OACG,EAAI,GAAE,IAAM,EAAI,EAAE,OAAO,EAAG,EAAE,QAAU,GAAI,EAAI,EAAE,KAAM,EAAG,EAAG,GAAK,EAAE,MAAM,EAAG,EACzF,GACJ,CAqCA,OAAO,GAAG,UAAY,EAAE,QAAU,EAAE,QAAS,EAAE,WAAa,IAAI,GAAI,EAAI,GAAE,SAAW,SAAS,EAAG,GAC7F,IAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAAE,EAAI,KACnC,GAAI,EAAG,OAAO,EAAI,EAAI,EAAE,MAAM,GAC9B,IAAK,EAAI,EAAG,EAAI,GAAI,EAAI,EAAE,UAAW,GAAI,CACrC,IAAK,KAAK,KAAO,EAAI,EAAE,KAAK,MAAQ,IAAM,EAAI,EAAE,MAAM,EAAE,GAAG,SAAW,GAAI,EAAE,KAAK,EAAI,KAAM,GAAI,GAAK,EAAI,EAAG,KAAK,MAAQ,EAAI,EAAE,QAAS,EAAE,KAAK,CACtI,MAAO,EACP,KAAM,EAAE,GAAG,QAAQ,EAAG,OACtB,EAAI,EAAE,MAAM,EAAE,SAAU,EAAE,SAAU,EAAI,EAAE,GAAG,KAAK,KAAO,EAAE,MAAQ,EAAI,EAAE,GAAG,MAAQ,EAAI,EAAE,QAAS,EAAE,KAAK,CAC9G,MAAO,EACP,KAAM,EACN,QAAS,IACT,EAAI,EAAE,MAAM,EAAE,SAClB,IAAK,EAAG,KACZ,CACA,OAAO,EAAI,EAAE,OAAS,EAAI,GAAE,MAAM,GAAK,EAAE,EAAG,GAAG,MAAM,EACzD,EAAG,EAAI,GAAE,QAAU,SAAS,EAAG,GAC3B,IAAI,EAAG,EAAI,GACP,EAAI,GACJ,EAAI,EAAE,EAAI,KACd,IAAK,EAAG,CACJ,IAAK,GAAK,EAAI,GAAK,EAAE,IAAI,OAAQ,OAAO,EAAI,SAAS,EAAE,GACnD,IAAK,IAAI,EAAG,EAAG,EAAG,EAAI,EAAE,OAAQ,EAAI,EAAE,SAAS,EAAE,GAAG,MAAO,EAAI,GAAK,EAAE,SAAS,KAAM,EAAI,EAAI,EAAI,EAAG,EAAI,IAAG,SAAS,GAC5G,OAAO,IAAM,CACjB,GAAG,GAAG,GAAK,EAAI,IAAG,SAAS,GACvB,OAAQ,EAAI,EAAE,KAAK,EAAG,EAC1B,GAAG,GAAG,GAAK,EAAI,CAAC,SAAS,EAAG,EAAG,GAC3B,OAAQ,IAAM,GAAK,IAAM,MAAQ,EAAI,GAAG,SAAW,EAAI,GAAG,EAAG,EAAG,EACpE,GAAI,EAAI,EAAG,IACX,GAAI,EAAI,EAAE,SAAS,EAAE,GAAG,MAAO,EAAI,CAAC,GAAG,GAAG,GAAI,QACzC,CACD,IAAK,EAAI,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,KAAM,EAAE,GAAG,UAAU,GAAI,CACxD,IAAK,IAAM,EAAG,EAAI,IAAM,EAAE,SAAS,EAAE,GAAG,MAAO,KAC/C,OAAO,GAAG,EAAI,GAAK,GAAG,GAAI,EAAI,GAAK,GAAE,EAAE,MAAM,EAAG,EAAI,GAAG,OAAO,CAC1D,MAAO,MAAQ,EAAE,EAAI,GAAG,KAAO,IAAM,MACrC,QAAQ,EAAG,MAAO,EAAG,EAAI,GAAK,EAAE,EAAE,MAAM,EAAG,IAAK,EAAI,GAAK,EAAE,EAAI,EAAE,MAAM,IAAK,EAAI,GAAK,GAAE,GAC/F,CACA,EAAE,KAAK,EACX,CAAE,OAAO,GAAG,EACpB,CAlB4C,CAkB1C,EAAE,KAAK,GAAK,EAAI,GAAG,KAAK,IACzB,EAAI,EAAE,EA1Ef,SAAY,EAAG,GACX,SAAS,EAAE,EAAG,EAAG,EAAG,EAAG,GACnB,IAAI,EAAG,EAAG,EAAG,EAAI,EACb,EAAI,IACJ,EAAI,GAAK,GACT,EAAI,GACJ,EAAI,EACJ,EAAI,GAAK,GAAK,EAAE,KAAK,IAAI,IAAK,GAC9B,EAAI,GAAK,MAAQ,EAAI,EAAI,KAAK,UAAY,GAC1C,EAAI,EAAE,OACV,IAAK,IAAM,EAAI,IAAM,GAAK,GAAI,IAAM,GAAK,OAAS,EAAI,EAAE,IAAK,IAAK,CAC9D,GAAI,GAAK,EAAG,CACR,IAAK,EAAI,EAAG,EAAI,EAAE,MACd,GAAI,EAAE,EAAG,EAAG,GAAI,CACZ,EAAE,KAAK,GACP,KACJ,CAAE,IAAM,EAAI,EACpB,CACA,KAAO,GAAK,GAAK,IAAM,IAAK,IAAM,EAAE,KAAK,EAC7C,CACA,GAAI,GAAK,EAAG,GAAK,IAAM,EAAG,CACtB,IAAK,EAAI,EAAG,EAAI,EAAE,MAAO,EAAE,EAAG,EAAG,EAAG,GACpC,GAAI,EAAG,CACH,GAAI,EAAI,EACJ,KAAO,KAAM,EAAE,IAAM,EAAE,KAAO,EAAE,GAAK,EAAE,KAAK,IAChD,EAAI,GAAE,EACV,CACA,EAAE,MAAM,EAAG,GAAI,IAAM,GAAK,EAAI,EAAE,QAAU,EAAI,EAAI,EAAE,QAAU,GAAE,WAAW,EAC/E,CACA,OAAO,IAAM,EAAI,EAAG,EAAI,GAAI,CAChC,CACA,IAAI,EAAI,EAAI,EAAE,OACV,EAAI,EAAI,EAAE,OACd,OAAO,EAAI,GAAE,GAAK,CACtB,CAwCkB,CAAG,EAAG,KAAK,SAAW,CACpC,CACA,OAAO,CACX,EAAG,EAAI,GAAE,OAAS,SAAS,EAAG,EAAG,EAAG,GAChC,IAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,mBAAqB,GAAK,EAC7C,GAAK,GAAK,EAAE,EAAI,EAAE,UAAY,GAClC,GAAI,EAAI,GAAK,GAAI,IAAM,EAAE,OAAQ,CAC7B,GAAI,GAAK,EAAI,EAAE,GAAK,EAAE,GAAG,MAAM,IAAI,QAAU,QAAU,EAAI,EAAE,IAAI,MAAQ,EAAE,SAAW,IAAM,EAAE,UAAY,GAAK,EAAE,SAAS,EAAE,GAAG,MAAO,CAClI,KAAM,GAAK,EAAE,KAAK,GAAG,EAAE,QAAQ,GAAG,QAAQ,GAAG,GAAI,IAAM,IAAI,IAAK,OAAO,EACvE,IAAM,EAAI,EAAE,YAAa,EAAI,EAAE,MAAM,EAAE,QAAQ,MAAM,OACzD,CACA,IAAK,EAAI,EAAE,aAAa,KAAK,GAAK,EAAI,EAAE,OAAQ,MAAQ,EAAI,EAAE,IAAK,EAAE,SAAS,EAAI,EAAE,QAChF,IAAK,EAAI,EAAE,KAAK,MAAQ,EAAI,EAAE,EAAE,QAAQ,GAAG,QAAQ,GAAG,GAAI,GAAG,KAAK,EAAE,GAAG,OAAS,GAAG,EAAE,aAAe,IAAK,CACrG,GAAI,EAAE,OAAO,EAAG,GAAI,EAAI,EAAE,QAAU,GAAE,GAAI,MAC1C,OAAO,EAAE,MAAM,EAAG,GAAI,CAC1B,CACR,CACA,OAAQ,GAAK,EAAE,EAAG,IAAI,EAAG,GAAI,EAAG,EAAG,GAAG,KAAK,IAAM,GAAG,EAAE,aAAe,GAAI,CAC7E,EAAG,EAAE,WAAa,EAAE,MAAM,IAAI,KAAK,GAAG,KAAK,MAAQ,EAAG,EAAE,mBAAqB,EAAG,IAAK,EAAE,aAAe,IAAE,SAAS,GAC7G,OAAO,EAAI,EAAE,wBAAwB,EAAE,cAAc,OACzD,IAAI,IAAE,SAAS,GACX,OAAO,EAAE,UAAY,mBAAoB,MAAQ,EAAE,WAAW,aAAa,OAC/E,KAAM,GAAG,0BAA0B,SAAS,EAAG,EAAG,GAC9C,OAAO,OAAI,EAAS,EAAE,aAAa,EAAG,SAAW,EAAE,cAAgB,EAAI,EAC3E,IAAI,EAAE,YAAc,IAAE,SAAS,GAC3B,OAAO,EAAE,UAAY,WAAY,EAAE,WAAW,aAAa,QAAS,IAAK,KAAO,EAAE,WAAW,aAAa,QAC9G,KAAM,GAAG,SAAS,SAAS,EAAG,EAAG,GAC7B,OAAO,GAAK,UAAY,EAAE,SAAS,mBAAgB,EAAS,EAAE,YAClE,IAAI,IAAE,SAAS,GACX,OAAO,MAAQ,EAAE,aAAa,WAClC,KAAM,GAAG,GAAG,SAAS,EAAG,EAAG,GACvB,OAAO,OAAI,GAAS,IAAO,EAAE,GAAK,EAAE,eAAiB,EAAI,EAAE,iBAAiB,KAAO,EAAE,UAAY,EAAE,MAAQ,IAC/G,IAAI,EACP,EAzoBG,CAyoBD,GACH,GAAK,EAAE,KAAO,EAAG,EAAE,KAAO,EAAE,UAAW,EAAE,KAAK,KAAO,EAAE,KAAK,QAAS,EAAE,OAAS,EAAE,WAAY,EAAE,KAAO,EAAE,QAAS,EAAE,SAAW,EAAE,MAAO,EAAE,SAAW,EAAE,SAAU,EAAE,KAAK,MAAM,cAC9K,EAAI,6BACJ,EAAI,iBAER,SAAS,EAAE,EAAG,EAAG,GACb,GAAI,EAAE,WAAW,GAAI,OAAO,EAAE,KAAK,GAAG,SAAS,EAAG,GAC9C,QAAS,EAAE,KAAK,EAAG,EAAG,KAAO,CACjC,IACA,GAAI,EAAE,SAAU,OAAO,EAAE,KAAK,GAAG,SAAS,GACtC,OAAO,IAAM,IAAM,CACvB,IACA,GAAI,iBAAmB,EAAG,CACtB,GAAI,EAAE,KAAK,GAAI,OAAO,EAAE,OAAO,EAAG,EAAG,GACrC,EAAI,EAAE,OAAO,EAAG,EACpB,CACA,OAAO,EAAE,KAAK,GAAG,SAAS,GACtB,OAAO,GAAK,EAAE,KAAK,EAAG,KAAO,CACjC,GACJ,CACA,EAAE,OAAS,SAAS,EAAG,EAAG,GACtB,IAAI,EAAI,EAAE,GACV,OAAO,IAAM,EAAI,QAAU,EAAI,KAAM,IAAM,EAAE,QAAU,IAAM,EAAE,SAAW,EAAE,KAAK,gBAAgB,EAAG,GAAK,CAAC,GAAK,GAAK,EAAE,KAAK,QAAQ,EAAG,EAAE,KAAK,GAAG,SAAS,GACrJ,OAAO,IAAM,EAAE,QACnB,IACJ,EAAG,EAAE,GAAG,OAAO,CACX,KAAM,SAAS,GACX,IAAI,EAAG,EAAI,KAAK,OACZ,EAAI,GACJ,EAAI,KACR,GAAI,iBAAmB,EAAG,OAAO,KAAK,UAAU,EAAE,GAAG,QAAO,WACxD,IAAK,EAAI,EAAG,EAAI,EAAG,IACf,GAAI,EAAE,SAAS,EAAE,GAAI,MAAO,OAAO,CAC3C,KACA,IAAK,EAAI,EAAG,EAAI,EAAG,IAAK,EAAE,KAAK,EAAG,EAAE,GAAI,GACxC,OAAQ,EAAI,KAAK,UAAU,EAAI,EAAI,EAAE,OAAO,GAAK,IAAI,SAAW,KAAK,SAAW,KAAK,SAAW,IAAM,EAAI,EAAG,CACjH,EACA,OAAQ,SAAS,GACb,OAAO,KAAK,UAAU,EAAE,KAAM,GAAK,IAAI,GAC3C,EACA,IAAK,SAAS,GACV,OAAO,KAAK,UAAU,EAAE,KAAM,GAAK,IAAI,GAC3C,EACA,GAAI,SAAS,GACT,QAAS,EAAE,KAAM,iBAAmB,GAAK,EAAE,KAAK,GAAK,EAAE,GAAK,GAAK,IAAI,GAAI,MAC7E,IAEJ,IAAI,EAAG,EAAI,sCACP,IAAM,EAAE,GAAG,KAAO,SAAS,EAAG,GAC1B,IAAI,EAAG,EACP,GAAI,EAAG,CACH,GAAI,iBAAmB,EAAG,OAAO,EAAE,UAAY,KAAK,QAAU,KAAK,GAAK,EAAG,KAAK,OAAS,EAAG,MAAQ,EAAE,WAAW,QAAK,IAAW,EAAE,MAAQ,EAAE,MAAM,GAAK,EAAE,SAAM,IAAW,EAAE,WAAa,KAAK,SAAW,EAAE,SAAU,KAAK,QAAU,EAAE,SAAU,EAAE,UAAU,EAAG,OAChQ,KAAM,EAAI,MAAQ,EAAE,IAAM,MAAQ,EAAE,EAAE,OAAS,IAAM,GAAK,EAAE,OAAS,CAAC,KAAM,EAAG,MAAQ,EAAE,KAAK,MAAQ,EAAE,IAAM,EAAG,QAAS,GAAK,EAAE,OAAS,GAAK,EAAI,KAAK,YAAY,IAAI,KAAK,GAC7K,GAAI,EAAE,IACF,GAAI,EAAI,aAAa,EAAI,EAAE,GAAK,EAAG,EAAE,MAAM,KAAM,EAAE,UAAU,EAAE,GAAI,GAAK,EAAE,SAAW,EAAE,eAAiB,EAAI,GAAG,IAAM,EAAE,KAAK,EAAE,KAAO,EAAE,cAAc,GACjJ,IAAK,KAAK,EAAG,EAAE,WAAW,KAAK,IAAM,KAAK,GAAG,EAAE,IAAM,KAAK,KAAK,EAAG,EAAE,SACrE,EAAI,EAAE,eAAe,EAAE,MAAQ,EAAE,aAAe,KAAK,OAAS,EAAG,KAAK,GAAK,GAAI,KAAK,QAAU,EAAG,KAAK,SAAW,CAC5H,CACA,OAAO,IACX,GAAG,UAAY,EAAE,GAAI,EAAI,EAAE,GAAI,kCAC/B,EAAI,CACA,UAAU,EACV,UAAU,EACV,MAAM,EACN,MAAM,GAGd,SAAS,EAAE,EAAG,GACV,MACK,EAAI,EAAE,KAAO,IAAM,EAAE,WAC1B,OAAO,CACX,CACA,EAAE,OAAO,CACL,IAAK,SAAS,EAAG,EAAG,GAChB,IAAK,IAAI,EAAI,GAAI,OAAI,IAAW,GAC3B,EAAI,EAAE,KAAO,IAAM,EAAE,UACtB,GAAI,IAAM,EAAE,SAAU,CAClB,GAAI,GAAK,EAAE,GAAG,GAAG,GAAI,MACrB,EAAE,KAAK,EACX,CAAE,OAAO,CACjB,EACA,QAAS,SAAS,EAAG,GACjB,IAAK,IAAI,EAAI,GAAI,EAAG,EAAI,EAAE,YAAa,IAAM,EAAE,UAAY,IAAM,GAAK,EAAE,KAAK,GAC7E,OAAO,CACX,IACA,EAAE,GAAG,OAAO,CACZ,IAAK,SAAS,GACV,IAAI,EAAI,EAAE,EAAG,MACT,EAAI,EAAE,OACV,OAAO,KAAK,QAAO,WACf,IAAK,IAAI,EAAI,EAAG,EAAI,EAAG,IACnB,GAAI,EAAE,SAAS,KAAM,EAAE,IAAK,OAAO,CAC3C,GACJ,EACA,QAAS,SAAS,EAAG,GACjB,IAAK,IAAI,EAAG,EAAI,EAAG,EAAI,KAAK,OAAQ,EAAI,GAAI,EAAI,EAAE,KAAK,IAAM,iBAAmB,EAAI,EAAE,EAAG,GAAK,KAAK,SAAW,EAAG,EAAI,EAAG,IACpH,IAAK,EAAI,KAAK,GAAI,GAAK,IAAM,EAAG,EAAI,EAAE,WAClC,GAAI,EAAE,SAAW,KAAO,GAAK,EAAI,EAAE,MAAM,GAAK,IAAM,EAAE,UAAY,EAAE,KAAK,gBAAgB,EAAG,IAAK,CAC7F,EAAE,KAAK,GACP,KACJ,CAAE,OAAO,KAAK,UAAU,EAAI,EAAE,OAAS,EAAE,OAAO,GAAK,EACjE,EACA,MAAO,SAAS,GACZ,OAAO,EAAI,iBAAmB,EAAI,EAAE,KAAK,EAAE,GAAI,KAAK,IAAM,EAAE,KAAK,KAAM,EAAE,OAAS,EAAE,GAAK,GAAK,KAAK,IAAM,KAAK,GAAG,WAAa,KAAK,QAAQ,UAAU,QAAU,CACnK,EACA,IAAK,SAAS,EAAG,GACb,OAAO,KAAK,UAAU,EAAE,OAAO,EAAE,MAAM,KAAK,MAAO,EAAE,EAAG,KAC5D,EACA,QAAS,SAAS,GACd,OAAO,KAAK,IAAI,MAAQ,EAAI,KAAK,WAAa,KAAK,WAAW,OAAO,GACzE,IACA,EAAE,KAAK,CACP,OAAQ,SAAS,GAEb,OADA,EAAI,EAAE,aACM,KAAO,EAAE,SAAW,EAAI,IACxC,EACA,QAAS,SAAS,GACd,OAAO,EAAE,IAAI,EAAG,aACpB,EACA,aAAc,SAAS,EAAG,EAAG,GACzB,OAAO,EAAE,IAAI,EAAG,aAAc,EAClC,EACA,KAAM,SAAS,GACX,OAAO,EAAE,EAAG,cAChB,EACA,KAAM,SAAS,GACX,OAAO,EAAE,EAAG,kBAChB,EACA,QAAS,SAAS,GACd,OAAO,EAAE,IAAI,EAAG,cACpB,EACA,QAAS,SAAS,GACd,OAAO,EAAE,IAAI,EAAG,kBACpB,EACA,UAAW,SAAS,EAAG,EAAG,GACtB,OAAO,EAAE,IAAI,EAAG,cAAe,EACnC,EACA,UAAW,SAAS,EAAG,EAAG,GACtB,OAAO,EAAE,IAAI,EAAG,kBAAmB,EACvC,EACA,SAAU,SAAS,GACf,OAAO,EAAE,SAAS,EAAE,YAAc,CAAC,GAAG,WAAY,EACtD,EACA,SAAU,SAAS,GACf,OAAO,EAAE,QAAQ,EAAE,WACvB,EACA,SAAU,SAAS,GACf,OAAO,EAAE,iBAAmB,EAAE,MAAM,GAAI,EAAE,WAC9C,IACD,SAAS,EAAG,GACX,EAAE,GAAG,GAAK,SAAS,EAAG,GAClB,IAAI,EAAI,EAAE,IAAI,KAAM,EAAG,GACvB,OAAQ,EAAI,UAAY,EAAE,OAAO,GAAK,EAAI,IAAM,iBAAmB,IAAM,EAAI,EAAE,OAAO,EAAG,IAAK,EAAI,KAAK,SAAW,EAAE,IAAM,EAAE,OAAO,GAAI,EAAE,KAAK,KAAO,EAAE,UAAW,KAAK,UAAU,EACrL,CACJ,IACA,IAAI,EAAG,EAAI,OACP,EAAK,CAAC,EAEV,SAAS,IACL,EAAE,oBAAoB,mBAAoB,GAAG,GAAK,EAAE,oBAAoB,OAAQ,GAAG,GAAK,EAAE,OAC9F,CACA,EAAE,UAAY,SAAS,GACnB,IAAI,EAAG,EAKP,SAAS,EAAE,GACP,IAAK,EAAI,EAAE,QAAU,EAAG,GAAI,EAAI,EAAI,GAAK,EAAG,EAAI,EAAG,EAAI,EAAE,OAAQ,GAAI,EAAI,GAAK,EAAI,EAAG,IACjF,IAAI,IAAO,EAAE,GAAG,MAAM,EAAE,GAAI,EAAE,KAAO,EAAE,YAAa,CAChD,GAAI,EACJ,KACJ,CAAE,GAAI,EAAI,IAAM,EAAI,EAAE,QAAU,EAAE,EAAE,SAAW,EAAI,EAAI,GAAK,EAAE,UACtE,CAVA,EAAI,iBAAmB,EAAI,EAAG,KAAO,EAAI,EAAG,EAAI,GAAK,CAAC,EAAG,EAAE,KAAK,EAAE,MAAM,IAAM,IAAI,SAAS,EAAG,GAC1F,EAAE,IAAK,CACX,IAAI,GAAK,EAAE,OAAO,CAAC,EAAG,GAStB,IAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,GACtB,GAAK,EAAE,MAAQ,GACf,EAAI,CACA,IAAK,WACD,IAAI,EACJ,OAAO,IAAM,EAAI,EAAE,OAAQ,SAAS,EAAE,GAClC,EAAE,KAAK,GAAG,SAAS,EAAG,GAClB,IAAI,EAAI,EAAE,KAAK,GACf,aAAe,EAAI,EAAE,QAAU,EAAE,IAAI,IAAM,EAAE,KAAK,GAAK,GAAK,EAAE,QAAU,WAAa,GAAK,EAAE,EAChG,GACJ,CAL2B,CAKzB,WAAY,EAAI,EAAI,EAAE,OAAS,IAAM,EAAI,EAAG,EAAE,KAAM,IAC1D,EACA,OAAQ,WACJ,OAAO,GAAK,EAAE,KAAK,WAAW,SAAS,EAAG,GACtC,IAAK,IAAI,GAAK,GAAK,EAAI,EAAE,QAAQ,EAAG,EAAG,KAAM,EAAE,OAAO,EAAG,GAAI,IAAM,GAAK,GAAK,IAAK,GAAK,IAAM,GACjG,IAAI,IACR,EACA,IAAK,SAAS,GACV,OAAO,GAAK,EAAI,EAAE,QAAQ,EAAG,MAAQ,IAAM,EAAE,OACjD,EACA,MAAO,WACH,OAAO,EAAI,GAAI,EAAI,EAAG,IAC1B,EACA,QAAS,WACL,OAAO,EAAI,EAAI,OAAI,EAAQ,IAC/B,EACA,SAAU,WACN,OAAQ,CACZ,EACA,KAAM,WACF,OAAO,OAAI,EAAQ,GAAK,EAAE,UAAW,IACzC,EACA,OAAQ,WACJ,OAAQ,CACZ,EACA,SAAU,SAAS,EAAG,GAClB,OAAQ,GAAK,IAAM,IAAM,EAAI,CAAC,GAAI,EAAI,GAAK,IAAI,MAAQ,EAAE,QAAU,GAAI,EAAI,EAAE,KAAK,GAAK,EAAE,IAAK,IAClG,EACA,KAAM,WACF,OAAO,EAAE,SAAS,KAAM,WAAY,IACxC,EACA,MAAO,WACH,QAAS,CACb,GAER,OAAO,CACX,EAAG,EAAE,OAAO,CACR,SAAU,SAAS,GACf,IAAI,EAAI,CACA,CAAC,UAAW,OAAQ,EAAE,UAAU,eAAgB,YAChD,CAAC,SAAU,OAAQ,EAAE,UAAU,eAAgB,YAC/C,CAAC,SAAU,WAAY,EAAE,UAAU,YAEvC,EAAI,UACJ,EAAI,CACA,MAAO,WACH,OAAO,CACX,EACA,OAAQ,WACJ,OAAO,EAAE,KAAK,WAAW,KAAK,WAAY,IAC9C,EACA,KAAM,WACF,IAAI,EAAI,UACR,OAAO,EAAE,UAAS,SAAS,GACvB,EAAE,KAAK,GAAG,SAAS,EAAG,GAClB,IAAI,EAAI,EAAE,WAAW,EAAE,KAAO,EAAE,GAChC,EAAE,EAAE,KAAI,WACJ,IAAI,EAAI,GAAK,EAAE,MAAM,KAAM,WAC3B,GAAK,EAAE,WAAW,EAAE,SAAW,EAAE,UAAU,KAAK,EAAE,SAAS,KAAK,EAAE,QAAQ,SAAS,EAAE,QAAU,EAAE,EAAE,GAAK,QAAQ,OAAS,EAAI,EAAE,UAAY,KAAM,EAAI,CAAC,GAAK,UAC/J,GACJ,IAAI,EAAI,IACZ,IAAG,SACP,EACA,QAAS,SAAS,GACd,OAAO,MAAQ,EAAI,EAAE,OAAO,EAAG,GAAK,CACxC,GAEJ,EAAI,CAAC,EACT,OAAO,EAAE,KAAO,EAAE,KAAM,EAAE,KAAK,GAAG,SAAS,EAAG,GAC1C,IAAI,EAAI,EAAE,GACN,EAAI,EAAE,GACV,EAAE,EAAE,IAAM,EAAE,IAAK,GAAK,EAAE,KAAI,WACxB,EAAI,CACR,GAAG,EAAE,EAAI,GAAG,GAAG,QAAS,EAAE,GAAG,GAAG,MAAO,EAAE,EAAE,IAAM,WAC7C,OAAO,EAAE,EAAE,GAAK,QAAQ,OAAS,EAAI,EAAI,KAAM,WAAY,IAC/D,EAAG,EAAE,EAAE,GAAK,QAAU,EAAE,QAC5B,IAAI,EAAE,QAAQ,GAAI,GAAK,EAAE,KAAK,EAAG,GAAI,CACzC,EACA,KAAM,SAAS,GACX,SAAS,EAAE,EAAG,EAAG,GACb,OAAO,SAAS,GACZ,EAAE,GAAK,KAAM,EAAE,GAAK,EAAI,UAAU,OAAS,EAAE,KAAK,WAAa,EAAG,IAAM,EAAI,EAAE,WAAW,EAAG,KAAO,GAAK,EAAE,YAAY,EAAG,EAC7H,CACJ,CACA,IAAI,EAAG,EAAG,EAAG,EAAI,EACb,EAAI,EAAE,KAAK,WACX,EAAI,EAAE,OACN,EAAI,IAAM,GAAK,GAAK,EAAE,WAAW,EAAE,SAAW,EAAI,EAClD,EAAI,IAAM,EAAI,EAAI,EAAE,WACxB,GAAI,EAAI,EACJ,IAAK,EAAI,IAAI,MAAM,GAAI,EAAI,IAAI,MAAM,GAAI,EAAI,IAAI,MAAM,GAAI,EAAI,EAAG,IAAK,EAAE,IAAM,EAAE,WAAW,EAAE,GAAG,SAAW,EAAE,GAAG,UAAU,KAAK,EAAE,EAAG,EAAG,IAAI,KAAK,EAAE,QAAQ,SAAS,EAAE,EAAG,EAAG,MAAQ,EACxL,OAAO,GAAK,EAAE,YAAY,EAAG,GAAI,EAAE,SACvC,IACA,EAAE,GAAG,MAAQ,SAAS,GACtB,OAAO,EAAE,MAAM,UAAU,KAAK,GAAI,IACtC,EAAG,EAAE,OAAO,CACR,SAAS,EACT,UAAW,EACX,UAAW,SAAS,GAChB,EAAI,EAAE,YAAc,EAAE,OAAM,EAChC,EACA,MAAO,SAAS,KACX,IAAO,IAAM,EAAE,UAAY,EAAE,WAAa,EAAE,SAAU,KAAQ,GAAK,IAAM,EAAE,YAAc,EAAE,YAAY,EAAG,CAAC,IAAK,EAAE,GAAG,iBAAmB,EAAE,GAAG,eAAe,SAAU,EAAE,GAAG,IAAI,UACpL,IACA,EAAE,MAAM,QAAU,SAAS,GAC3B,OAAO,IAAM,EAAI,EAAE,WAAY,aAAe,EAAE,WAAa,WAAW,EAAE,QAAU,EAAE,iBAAiB,mBAAoB,GAAG,GAAK,EAAE,iBAAiB,OAAQ,GAAG,KAAO,EAAE,QAAQ,EACtL,EAAG,EAAE,MAAM,UACX,IAAI,EAAI,EAAE,OAAS,SAAS,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAC1C,IAAI,EAAI,EACJ,EAAI,EAAE,OACN,EAAI,MAAQ,EAChB,GAAI,WAAa,EAAE,KAAK,GACpB,IAAK,KAAK,GAAI,EAAI,EAAG,EAAE,OAAO,EAAG,EAAG,EAAG,EAAE,IAAI,EAAI,EAAG,QACnD,QAAI,IAAW,IAAM,GAAI,EAAI,EAAE,WAAW,KAAO,GAAI,GAAK,EAAI,EAAI,GAAK,EAAE,KAAK,EAAG,GAAI,OAAS,EAAI,EAAG,SAAS,EAAG,EAAG,GACjH,OAAO,EAAE,KAAK,EAAE,GAAI,EACxB,GAAK,GACL,KAAO,EAAI,EAAG,IAAK,EAAE,EAAE,GAAI,EAAG,EAAI,EAAI,EAAE,KAAK,EAAE,GAAI,EAAG,EAAE,EAAE,GAAI,KAClE,OAAO,EAAI,EAAI,EAAI,EAAE,KAAK,GAAK,EAAI,EAAE,EAAE,GAAI,GAAK,CACpD,EAEA,SAAS,IACL,OAAO,eAAe,KAAK,MAAQ,CAAC,EAAG,EAAG,CACtC,IAAK,WACD,MAAO,CAAC,CACZ,IACA,KAAK,QAAU,EAAE,QAAU,KAAK,QACxC,CACA,EAAE,WAAa,SAAS,GACpB,OAAO,IAAM,EAAE,UAAY,IAAM,EAAE,YAAc,EAAE,QACvD,EAAG,EAAE,IAAM,EAAG,EAAE,QAAU,EAAE,WAAY,EAAE,UAAY,CAClD,IAAK,SAAS,GACV,IAAK,EAAE,QAAQ,GAAI,OAAO,EAC1B,IAAI,EAAI,CAAC,EACL,EAAI,EAAE,KAAK,SACf,IAAK,EAAG,CACJ,EAAI,EAAE,MACN,IACI,EAAE,KAAK,SAAW,CACd,MAAO,GACR,OAAO,iBAAiB,EAAG,EAClC,CAAE,MAAO,GACL,EAAE,KAAK,SAAW,EAAG,EAAE,OAAO,EAAG,EACrC,CACJ,CACA,OAAO,KAAK,MAAM,KAAO,KAAK,MAAM,GAAK,CAAC,GAAI,CAClD,EACA,IAAK,SAAS,EAAG,EAAG,GACT,EAAI,KAAK,IAAI,GAApB,IAAI,EACA,EAAI,KAAK,MAAM,GACnB,GAAI,iBAAmB,EAAG,EAAE,GAAK,OAC5B,GAAI,EAAE,cAAc,GAAI,EAAE,OAAO,KAAK,MAAM,GAAI,QAEjD,IAAK,KAAK,EAAG,EAAE,GAAK,EAAE,GAC1B,OAAO,CACX,EACA,IAAK,SAAS,EAAG,GAEb,OADA,EAAI,KAAK,MAAM,KAAK,IAAI,SACjB,IAAW,EAAI,EAAI,EAAE,EAChC,EACA,OAAQ,SAAS,EAAG,EAAG,GACnB,IAAI,EACJ,YAAO,IAAW,GAAK,GAAK,iBAAmB,QAAK,IAAW,OAAI,KAAY,EAAI,KAAK,IAAI,EAAG,IAAM,EAAI,KAAK,IAAI,EAAG,EAAE,UAAU,KAAO,KAAK,IAAI,EAAG,EAAG,QAAI,IAAW,EAAI,EAAI,EAClL,EACA,OAAQ,SAAS,EAAG,GACN,EAAI,KAAK,IAAI,GAAvB,IAAI,EAAG,EACH,EAAI,KAAK,MAAM,GACnB,QAAI,IAAW,EAAG,KAAK,MAAM,GAAK,CAAC,MAC9B,CACD,GAAK,EAAI,EAAE,QAAQ,GAAK,EAAE,OAAO,EAAE,IAAI,EAAE,aAAe,EAAI,EAAE,UAAU,GAAI,KAAK,EAAI,CAAC,EAAG,IAAM,EAAI,KAAM,EAAI,CAAC,GAAK,EAAE,MAAM,IAAM,KAAK,OACtI,KAAO,YAAa,EAAE,EAAE,GAC5B,CACJ,EACA,QAAS,SAAS,GACd,OAAQ,EAAE,cAAc,KAAK,MAAM,EAAE,KAAK,WAAa,CAAC,EAC5D,EACA,QAAS,SAAS,GACd,EAAE,KAAK,iBAAmB,KAAK,MAAM,EAAE,KAAK,SAChD,GAEJ,IAAI,EAAI,IAAI,EACR,EAAI,IAAI,EACR,EAAK,gCACL,EAAK,WAET,SAAS,EAAG,EAAG,EAAG,GACd,IAAI,EACJ,QAAI,IAAW,GAAK,IAAM,EAAE,SACxB,GAAI,EAAI,QAAU,EAAE,QAAQ,EAAI,OAAO,cAAe,iBAAmB,EAAI,EAAE,aAAa,IAAK,CAC7F,IACI,EAAI,SAAW,GAAK,UAAY,IAAM,SAAW,EAAI,MAAQ,EAAI,KAAO,GAAK,EAAI,EAAG,KAAK,GAAK,EAAE,UAAU,GAAK,EACnH,CAAE,MAAO,GAAI,CACb,EAAE,IAAI,EAAG,EAAG,EAChB,MAAO,OAAI,EACf,OAAO,CACX,CA8FA,SAAS,EAAE,EAAG,GACV,MAAO,SAAW,EAAE,IAAI,EAAI,GAAK,EAAG,aAAe,EAAE,SAAS,EAAE,cAAe,EACnF,CA/FA,EAAE,OAAO,CACL,QAAS,SAAS,GACd,OAAO,EAAE,QAAQ,IAAM,EAAE,QAAQ,EACrC,EACA,KAAM,SAAS,EAAG,EAAG,GACjB,OAAO,EAAE,OAAO,EAAG,EAAG,EAC1B,EACA,WAAY,SAAS,EAAG,GACpB,EAAE,OAAO,EAAG,EAChB,EACA,MAAO,SAAS,EAAG,EAAG,GAClB,OAAO,EAAE,OAAO,EAAG,EAAG,EAC1B,EACA,YAAa,SAAS,EAAG,GACrB,EAAE,OAAO,EAAG,EAChB,IACA,EAAE,GAAG,OAAO,CACZ,KAAM,SAAS,EAAG,GACd,IAAI,EAAG,EAAG,EAAG,EAAI,KAAK,GAClB,EAAI,GAAK,EAAE,WACf,QAAI,IAAW,EAAG,MAAO,iBAAmB,EAAI,KAAK,MAAK,WACtD,EAAE,IAAI,KAAM,EAChB,IAAK,EAAE,MAAM,SAAS,GAClB,IAAI,EAAG,EAAI,EAAE,UAAU,GACvB,GAAI,QAAK,IAAW,EAAG,YAAO,KAAY,EAAI,EAAE,IAAI,EAAG,UAAO,KAAY,EAAI,EAAE,IAAI,EAAG,UAAO,KAAY,EAAI,EAAG,EAAG,OAAG,IAAW,OAAI,EACtI,KAAK,MAAK,WACN,IAAI,EAAI,EAAE,IAAI,KAAM,GACpB,EAAE,IAAI,KAAM,EAAG,IAAK,IAAM,EAAE,QAAQ,WAAQ,IAAW,GAAK,EAAE,IAAI,KAAM,EAAG,EAC/E,GACJ,GAAG,KAAM,EAAG,EAAI,UAAU,OAAQ,MAAM,GACxC,GAAI,KAAK,SAAW,EAAI,EAAE,IAAI,GAAI,IAAM,EAAE,YAAc,EAAE,IAAI,EAAG,gBAAiB,CAC9E,IAAK,EAAI,EAAE,OAAQ,KAAM,EAAE,IAAM,KAAO,EAAI,EAAE,GAAG,MAAM,QAAQ,WAAa,EAAI,EAAE,UAAU,EAAE,MAAM,IAAK,EAAG,EAAG,EAAG,EAAE,KACpH,EAAE,IAAI,EAAG,gBAAgB,EAC7B,CACA,OAAO,CACX,EACA,WAAY,SAAS,GACjB,OAAO,KAAK,MAAK,WACb,EAAE,OAAO,KAAM,EACnB,GACJ,IACA,EAAE,OAAO,CACT,MAAO,SAAS,EAAG,EAAG,GAClB,IAAI,EACJ,OAAO,GAAK,EAAI,EAAE,IAAI,EAAG,GAAK,GAAK,MAAQ,SAAU,KAAO,GAAK,EAAE,QAAQ,GAAK,EAAI,EAAE,OAAO,EAAG,EAAG,EAAE,UAAU,IAAM,EAAE,KAAK,IAAK,GAAK,SAAM,CAChJ,EACA,QAAS,SAAS,EAAG,GACjB,EAAI,GAAK,KACT,IAAI,EAAI,EAAE,MAAM,EAAG,GACf,EAAI,EAAE,OACN,EAAI,EAAE,QACN,EAAI,EAAE,YAAY,EAAG,GACzB,eAAiB,IAAM,EAAI,EAAE,QAAS,KAAM,IAAM,OAAS,GAAK,EAAE,QAAQ,qBAAsB,EAAE,KAAM,EAAE,KAAK,GAAG,WAC9G,EAAE,QAAQ,EAAG,EACjB,GAAG,KAAM,GAAK,GAAK,EAAE,MAAM,MAC/B,EACA,YAAa,SAAS,EAAG,GACrB,IAAI,EAAI,EAAI,aACZ,OAAO,EAAE,IAAI,EAAG,IAAM,EAAE,OAAO,EAAG,EAAG,CACjC,MAAO,EAAE,UAAU,eAAe,KAAI,WAClC,EAAE,OAAO,EAAG,CAAC,EAAI,QAAS,GAC9B,KAER,IACA,EAAE,GAAG,OAAO,CACZ,MAAO,SAAS,EAAG,GACf,IAAI,EAAI,EACR,MAAO,iBAAmB,IAAM,EAAI,EAAG,EAAI,KAAM,KAAM,UAAU,OAAS,EAAI,EAAE,MAAM,KAAK,GAAI,QAAK,IAAW,EAAI,KAAO,KAAK,MAAK,WAChI,IAAI,EAAI,EAAE,MAAM,KAAM,EAAG,GACzB,EAAE,YAAY,KAAM,GAAI,OAAS,GAAK,eAAiB,EAAE,IAAM,EAAE,QAAQ,KAAM,EACnF,GACJ,EACA,QAAS,SAAS,GACd,OAAO,KAAK,MAAK,WACb,EAAE,QAAQ,KAAM,EACpB,GACJ,EACA,WAAY,SAAS,GACjB,OAAO,KAAK,MAAM,GAAK,KAAM,GACjC,EACA,QAAS,SAAS,EAAG,GACjB,SAAS,MACH,GAAK,EAAE,YAAY,EAAG,CAAC,GAC7B,CACA,IAAI,EAAG,EAAI,EACP,EAAI,EAAE,WACN,EAAI,KACJ,EAAI,KAAK,OACb,IAAK,iBAAmB,IAAM,EAAI,EAAG,OAAI,GAAS,EAAI,GAAK,KAAM,MAAM,EAAI,EAAE,IAAI,EAAE,GAAI,EAAI,gBAAkB,EAAE,QAAU,IAAK,EAAE,MAAM,IAAI,IAC1I,OAAO,IAAK,EAAE,QAAQ,EAC1B,IAMA,EAAI,sCAAsC,OAA9C,IACI,EAAI,CAAC,MAAO,QAAS,SAAU,QAC/B,EAAK,wBACL,GAAK,EAAI,EAAE,yBAAyB,YAAY,EAAE,cAAc,SAAU,GAAI,EAAE,cAAc,UAAU,aAAa,OAAQ,SAAU,GAAE,aAAa,UAAW,WAAY,GAAE,aAAa,OAAQ,KAAM,EAAE,YAAY,IAAI,EAAE,WAAa,EAAE,WAAU,GAAI,WAAU,GAAI,UAAU,QAAS,EAAE,UAAY,yBAA0B,EAAE,iBAAmB,EAAE,WAAU,GAAI,UAAU,aAAc,aACjY,GAAM,EAAE,eAAiB,cAAe,EAAG,QAC3C,EAAK,uCACL,EAAK,kCACL,EAAK,uBAET,SAAS,IACL,OAAO,CACX,CAEA,SAAS,IACL,OAAO,CACX,CAEA,SAAS,IACL,IACI,OAAO,EAAE,aACb,CAAE,MAAO,GAAI,CACjB,CACA,EAAE,MAAQ,CACN,OAAQ,CAAC,EACT,IAAK,SAAS,EAAG,EAAG,EAAG,EAAG,GACtB,IAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAAE,IAAI,GACzC,GAAI,EACA,IAAK,EAAE,UAAY,GAAK,EAAI,GAAG,QAAS,EAAI,EAAE,UAAW,EAAE,OAAS,EAAE,KAAO,EAAE,QAAS,GAAK,EAAI,EAAE,UAAY,EAAE,OAAS,CAAC,GAAI,GAAK,EAAI,EAAE,UAAY,EAAE,OAAS,SAAS,GAClK,cAAc,GAAK,GAAK,EAAE,MAAM,YAAc,EAAE,KAAO,EAAE,MAAM,SAAS,MAAM,EAAG,gBAAa,CAClG,GAAI,GAAK,GAAK,GAAK,IAAI,MAAM,IAAM,CAAC,KAAK,OAAQ,KAAM,EAAI,GAAK,EAAI,EAAG,KAAK,EAAE,KAAO,IAAI,GAAI,GAAK,EAAE,IAAM,IAAI,MAAM,KAAK,OAAQ,IAAM,EAAI,EAAE,MAAM,QAAQ,IAAM,CAAC,EAAG,GAAK,EAAI,EAAE,aAAe,EAAE,WAAa,EAAG,EAAI,EAAE,MAAM,QAAQ,IAAM,CAAC,EAAG,EAAI,EAAE,OAAO,CAC5P,KAAM,EACN,SAAU,EACV,KAAM,EACN,QAAS,EACT,KAAM,EAAE,KACR,SAAU,EACV,aAAc,GAAK,EAAE,KAAK,MAAM,aAAa,KAAK,GAClD,UAAW,EAAE,KAAK,MACnB,IAAK,EAAI,EAAE,OAAS,EAAI,EAAE,GAAK,IAAI,cAAgB,EAAG,EAAE,QAAS,IAAO,EAAE,MAAM,KAAK,EAAG,EAAG,EAAG,KAAO,EAAE,kBAAoB,EAAE,iBAAiB,EAAG,GAAG,GAAK,EAAE,MAAQ,EAAE,IAAI,KAAK,EAAG,GAAI,EAAE,QAAQ,OAAS,EAAE,QAAQ,KAAO,EAAE,OAAQ,EAAI,EAAE,OAAO,EAAE,gBAAiB,EAAG,GAAK,EAAE,KAAK,GAAI,EAAE,MAAM,OAAO,IAAK,EACrT,EACA,OAAQ,SAAS,EAAG,EAAG,EAAG,EAAG,GACzB,IAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAAE,QAAQ,IAAM,EAAE,IAAI,GAC/D,GAAI,IAAM,EAAI,EAAE,QAAS,CACrB,IAAK,GAAK,GAAK,GAAK,IAAI,MAAM,IAAM,CAAC,KAAK,OAAQ,KAC9C,GAAI,EAAI,GAAK,EAAI,EAAG,KAAK,EAAE,KAAO,IAAI,GAAI,GAAK,EAAE,IAAM,IAAI,MAAM,KAAK,OAAQ,EAAG,CAC7E,IAAK,EAAI,EAAE,MAAM,QAAQ,IAAM,CAAC,EAAG,EAAI,EAAE,GAAK,EAAI,EAAE,aAAe,EAAE,WAAa,IAAM,GAAI,EAAI,EAAE,IAAM,IAAI,OAAO,UAAY,EAAE,KAAK,iBAAmB,WAAY,EAAI,EAAI,EAAE,OAAQ,KAAM,EAAI,EAAE,IAAK,GAAK,IAAM,EAAE,UAAY,GAAK,EAAE,OAAS,EAAE,MAAQ,IAAM,EAAE,KAAK,EAAE,YAAc,GAAK,IAAM,EAAE,WAAa,OAAS,IAAM,EAAE,YAAc,EAAE,OAAO,EAAG,GAAI,EAAE,UAAY,EAAE,gBAAiB,EAAE,QAAU,EAAE,OAAO,KAAK,EAAG,IAC/Z,IAAM,EAAE,SAAW,EAAE,WAAY,IAAO,EAAE,SAAS,KAAK,EAAG,EAAG,EAAE,SAAW,EAAE,YAAY,EAAG,EAAG,EAAE,eAAgB,EAAE,GACvH,MACI,IAAK,KAAK,EAAG,EAAE,MAAM,OAAO,EAAG,EAAI,EAAE,GAAI,EAAG,GAAG,GACvD,EAAE,cAAc,YAAc,EAAE,OAAQ,EAAE,OAAO,EAAG,UACxD,CACJ,EACA,QAAS,SAAS,EAAG,EAAG,EAAG,GACvB,IAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,CAAC,GAAK,GAC5B,EAAI,EAAE,KAAK,EAAG,QAAU,EAAE,KAAO,EACjC,EAAI,EAAE,KAAK,EAAG,aAAe,EAAE,UAAU,MAAM,KAAO,GACtD,EAAI,EAAI,EAAI,GAAK,EACrB,GAAI,IAAM,EAAE,UAAY,IAAM,EAAE,WAAa,EAAG,KAAK,EAAI,EAAE,MAAM,aAAe,GAAK,EAAE,QAAQ,OAAS,GAAK,EAAI,EAAE,MAAM,MAAM,QAAS,EAAE,QAAS,EAAI,EAAE,QAAQ,KAAO,GAAK,KAAO,GAAI,EAAI,EAAE,EAAE,SAAW,EAAI,IAAI,EAAE,MAAM,EAAG,iBAAmB,GAAK,IAAI,UAAY,EAAI,EAAI,EAAG,EAAE,UAAY,EAAE,KAAK,KAAM,EAAE,aAAe,EAAE,UAAY,IAAI,OAAO,UAAY,EAAE,KAAK,iBAAmB,WAAa,KAAM,EAAE,YAAS,EAAQ,EAAE,SAAW,EAAE,OAAS,GAAI,EAAI,MAAQ,EAAI,CAAC,GAAK,EAAE,UAAU,EAAG,CAAC,IAAK,EAAI,EAAE,MAAM,QAAQ,IAAM,CAAC,EAAG,IAAM,EAAE,UAAW,IAAO,EAAE,QAAQ,MAAM,EAAG,IAAK,CACrjB,IAAK,IAAM,EAAE,WAAa,EAAE,SAAS,GAAI,CACrC,IAAK,EAAI,EAAE,cAAgB,EAAG,EAAG,KAAK,EAAI,KAAO,EAAI,EAAE,YAAa,EAAG,EAAI,EAAE,WAAY,EAAE,KAAK,GAAI,EAAI,EACxG,KAAO,EAAE,eAAiB,IAAM,EAAE,KAAK,EAAE,aAAe,EAAE,cAAgB,EAC9E,CACA,IAAK,EAAI,GACJ,EAAI,EAAE,QAAU,EAAE,wBAAyB,EAAE,KAAO,EAAI,EAAI,EAAI,EAAE,UAAY,GAAI,GAAK,EAAE,IAAI,EAAG,WAAa,CAAC,GAAG,EAAE,OAAS,EAAE,IAAI,EAAG,YAAc,EAAE,MAAM,EAAG,IAAK,EAAI,GAAK,EAAE,KAAO,EAAE,OAAS,EAAE,WAAW,KAAO,EAAE,OAAS,EAAE,MAAM,EAAG,IAAI,IAAO,EAAE,SAAW,EAAE,iBACzQ,OAAO,EAAE,KAAO,EAAG,GAAK,EAAE,sBAAwB,EAAE,WAAY,IAAO,EAAE,SAAS,MAAM,EAAE,MAAO,KAAO,EAAE,WAAW,IAAM,GAAK,EAAE,WAAW,EAAE,MAAQ,EAAE,SAAS,MAAQ,EAAI,EAAE,MAAQ,EAAE,GAAK,MAAO,EAAE,EAAE,MAAM,UAAY,KAAM,EAAE,MAAM,eAAY,EAAQ,KAAO,EAAE,GAAK,GAAI,EAAE,MACtR,CACJ,EACA,SAAU,SAAS,GACf,EAAI,EAAE,MAAM,IAAI,GAChB,IAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAAE,KAAK,WAC1B,GAAK,EAAE,IAAI,KAAM,WAAa,CAAC,GAAG,EAAE,OAAS,GAC7C,EAAI,EAAE,MAAM,QAAQ,EAAE,OAAS,CAAC,EACpC,IAAK,EAAE,GAAK,GAAG,eAAiB,MAAO,EAAE,cAAe,IAAO,EAAE,YAAY,KAAK,KAAM,GAAI,CACxF,IAAK,EAAI,EAAE,MAAM,SAAS,KAAK,KAAM,EAAG,GAAI,EAAI,GAC3C,EAAI,EAAE,QAAU,EAAE,wBACnB,IAAK,EAAE,cAAgB,EAAE,KAAM,EAAI,GAC9B,EAAI,EAAE,SAAS,QAAU,EAAE,iCAAkC,EAAE,eAAiB,EAAE,aAAa,KAAK,EAAE,aAAe,EAAE,UAAY,EAAG,EAAE,KAAO,EAAE,UAAM,KAAY,IAAM,EAAE,MAAM,QAAQ,EAAE,WAAa,CAAC,GAAG,QAAU,EAAE,SAAS,MAAM,EAAE,KAAM,OAAQ,KAAQ,EAAE,OAAS,KAAO,EAAE,iBAAkB,EAAE,mBAChT,OAAO,EAAE,cAAgB,EAAE,aAAa,KAAK,KAAM,GAAI,EAAE,MAC7D,CACJ,EACA,SAAU,SAAS,EAAG,GAClB,IAAI,EAAG,EAAG,EAAG,EAAG,EAAI,GAChB,EAAI,EAAE,cACN,EAAI,EAAE,OACV,GAAI,GAAK,EAAE,YAAc,EAAE,QAAU,UAAY,EAAE,MAC/C,KAAO,IAAM,KAAM,EAAI,EAAE,YAAc,KACnC,IAAI,IAAO,EAAE,UAAY,UAAY,EAAE,KAAM,CACzC,IAAK,EAAI,GAAI,EAAI,EAAG,EAAI,EAAG,SAAK,IAAW,EAAE,GAAK,EAAI,EAAE,IAAI,SAAW,OAAS,EAAE,GAAK,EAAE,aAAe,GAAK,EAAE,EAAG,MAAM,MAAM,GAAK,EAAE,KAAK,EAAG,KAAM,KAAM,CAAC,IAAI,QAAS,EAAE,IAAM,EAAE,KAAK,GACtL,EAAE,QAAU,EAAE,KAAK,CACf,KAAM,EACN,SAAU,GAElB,CAAE,OAAO,EAAI,EAAE,QAAU,EAAE,KAAK,CACpC,KAAM,KACN,SAAU,EAAE,MAAM,KAClB,CACR,EACA,MAAO,wHAAwH,MAAM,KACrI,SAAU,CAAC,EACX,SAAU,CACN,MAAO,4BAA4B,MAAM,KACzC,OAAQ,SAAS,EAAG,GAChB,OAAO,MAAQ,EAAE,QAAU,EAAE,MAAQ,MAAQ,EAAE,SAAW,EAAE,SAAW,EAAE,SAAU,CACvF,GAEJ,WAAY,CACR,MAAO,uFAAuF,MAAM,KACpG,OAAQ,SAAS,EAAG,GAChB,IAAI,EAAG,EAAG,EAAI,EAAE,OAChB,OAAO,MAAQ,EAAE,OAAS,MAAQ,EAAE,UAAY,GAAK,EAAI,EAAE,OAAO,eAAiB,GAAG,gBAAiB,EAAI,EAAE,KAAM,EAAE,MAAQ,EAAE,SAAW,GAAK,EAAE,YAAc,GAAK,EAAE,YAAc,IAAM,GAAK,EAAE,YAAc,GAAK,EAAE,YAAc,GAAI,EAAE,MAAQ,EAAE,SAAW,GAAK,EAAE,WAAa,GAAK,EAAE,WAAa,IAAM,GAAK,EAAE,WAAa,GAAK,EAAE,WAAa,IAAK,EAAE,YAAS,IAAW,IAAM,EAAE,MAAQ,EAAI,EAAI,EAAI,EAAI,EAAI,EAAI,EAAI,EAAI,EAAI,GAAI,CAC5a,GAEJ,IAAK,SAAS,GACV,GAAI,EAAE,EAAE,SAAU,OAAO,EACzB,IAAI,EAAG,EAAG,EAAG,EAAI,EAAE,KACf,EAAI,EACJ,EAAI,KAAK,SAAS,GACtB,IAAK,IAAM,KAAK,SAAS,GAAK,EAAI,EAAG,KAAK,GAAK,KAAK,WAAa,EAAG,KAAK,GAAK,KAAK,SAAW,CAAC,GAAI,EAAI,EAAE,MAAQ,KAAK,MAAM,OAAO,EAAE,OAAS,KAAK,MAAO,EAAI,IAAI,EAAE,MAAM,GAAI,EAAI,EAAE,OAAQ,KAAM,EAAE,EAAI,EAAE,IAAM,EAAE,GAClN,OAAO,EAAE,SAAW,EAAE,OAAS,GAAI,IAAM,EAAE,OAAO,WAAa,EAAE,OAAS,EAAE,OAAO,YAAa,EAAE,OAAS,EAAE,OAAO,EAAG,GAAK,CAChI,EACA,QAAS,CACL,KAAM,CACF,UAAU,GAEd,MAAO,CACH,QAAS,WACL,OAAO,OAAS,KAAQ,KAAK,OAAS,KAAK,SAAS,QAAM,CAC9D,EACA,aAAc,WAElB,KAAM,CACF,QAAS,WACL,OAAO,OAAS,KAAQ,KAAK,MAAQ,KAAK,QAAQ,QAAM,CAC5D,EACA,aAAc,YAElB,MAAO,CACH,QAAS,WACL,MAAO,aAAe,KAAK,MAAQ,KAAK,OAAS,EAAE,SAAS,KAAM,UAAY,KAAK,SAAS,QAAM,CACtG,EACA,SAAU,SAAS,GACf,OAAO,EAAE,SAAS,EAAE,OAAQ,IAChC,GAEJ,aAAc,CACV,aAAc,SAAS,QACnB,IAAW,EAAE,QAAU,EAAE,gBAAkB,EAAE,cAAc,YAAc,EAAE,OAC/E,IAGR,SAAU,SAAS,EAAG,EAAG,EAAG,GACxB,EAAI,EAAE,OAAO,IAAI,EAAE,MAAO,EAAG,CACzB,KAAM,EACN,aAAa,EACb,cAAe,CAAC,IAEpB,EAAI,EAAE,MAAM,QAAQ,EAAG,KAAM,GAAK,EAAE,MAAM,SAAS,KAAK,EAAG,GAAI,EAAE,sBAAwB,EAAE,gBAC/F,GACD,EAAE,YAAc,SAAS,EAAG,EAAG,GAC9B,EAAE,qBAAuB,EAAE,oBAAoB,EAAG,GAAG,EACzD,EAAG,EAAE,MAAQ,SAAS,EAAG,GACrB,OAAO,gBAAgB,EAAE,OAAS,GAAK,EAAE,MAAQ,KAAK,cAAgB,EAAG,KAAK,KAAO,EAAE,KAAM,KAAK,mBAAqB,EAAE,uBAAoB,IAAW,EAAE,mBAAoB,IAAO,EAAE,YAAc,EAAI,GAAK,KAAK,KAAO,EAAG,GAAK,EAAE,OAAO,KAAM,GAAI,KAAK,UAAY,GAAK,EAAE,WAAa,EAAE,WAAY,KAAK,EAAE,UAAW,IAAO,IAAI,EAAE,MAAM,EAAG,EACpV,EAAG,EAAE,MAAM,UAAY,CACnB,mBAAoB,EACpB,qBAAsB,EACtB,8BAA+B,EAC/B,eAAgB,WACZ,IAAI,EAAI,KAAK,cACb,KAAK,mBAAqB,EAAG,GAAK,EAAE,gBAAkB,EAAE,gBAC5D,EACA,gBAAiB,WACb,IAAI,EAAI,KAAK,cACb,KAAK,qBAAuB,EAAG,GAAK,EAAE,iBAAmB,EAAE,iBAC/D,EACA,yBAA0B,WACtB,IAAI,EAAI,KAAK,cACb,KAAK,8BAAgC,EAAG,GAAK,EAAE,0BAA4B,EAAE,2BAA4B,KAAK,iBAClH,GACD,EAAE,KAAK,CACN,WAAY,YACZ,WAAY,WACZ,aAAc,cACd,aAAc,eACf,SAAS,EAAG,GACX,EAAE,MAAM,QAAQ,GAAK,CACjB,aAAc,EACd,SAAU,EACV,OAAQ,SAAS,GACb,IAAI,EAAG,EAAI,EAAE,cACT,EAAI,EAAE,UACV,OAAO,IAAM,IAAM,MAAQ,EAAE,SAAS,KAAM,MAAQ,EAAE,KAAO,EAAE,SAAU,EAAI,EAAE,QAAQ,MAAM,KAAM,WAAY,EAAE,KAAO,GAAI,CAChI,EAER,IAAI,EAAE,gBAAkB,EAAE,KAAK,CAC3B,MAAO,UACP,KAAM,aACP,SAAS,EAAG,GACX,SAAS,EAAE,GACP,EAAE,MAAM,SAAS,EAAG,EAAE,OAAQ,EAAE,MAAM,IAAI,IAAI,EAClD,CACA,EAAE,MAAM,QAAQ,GAAK,CACjB,MAAO,WACH,IAAI,EAAI,KAAK,eAAiB,KAC1B,EAAI,EAAE,OAAO,EAAG,GACpB,GAAK,EAAE,iBAAiB,EAAG,GAAG,GAAK,EAAE,OAAO,EAAG,GAAI,GAAK,GAAK,EACjE,EACA,SAAU,WACN,IAAI,EAAI,KAAK,eAAiB,KAC1B,EAAI,EAAE,OAAO,EAAG,GAAK,EACzB,EAAI,EAAE,OAAO,EAAG,EAAG,IAAM,EAAE,oBAAoB,EAAG,GAAG,GAAK,EAAE,OAAO,EAAG,GAC1E,EAER,IAAI,EAAE,GAAG,OAAO,CACZ,GAAI,SAAS,EAAG,EAAG,EAAG,EAAG,GACrB,IAAI,EAAG,EACP,GAAI,iBAAmB,EAAG,CACtB,IAAK,IAAK,iBAAmB,IAAM,EAAI,GAAK,EAAG,OAAI,GAAS,EAAG,KAAK,GAAG,EAAG,EAAG,EAAG,EAAE,GAAI,GACtF,OAAO,IACX,CACA,GAAI,MAAQ,GAAK,MAAQ,GAAK,EAAI,EAAG,EAAI,OAAI,GAAU,MAAQ,IAAM,iBAAmB,GAAK,EAAI,EAAG,OAAI,IAAW,EAAI,EAAG,EAAI,EAAG,OAAI,KAAU,IAAO,EAAG,EAAI,OACxJ,IAAK,EAAG,OAAO,KACpB,OAAO,IAAM,IAAM,EAAI,GAAI,EAAI,SAAS,GACpC,OAAO,IAAI,IAAI,GAAI,EAAE,MAAM,KAAM,UACrC,GAAG,KAAO,EAAE,OAAS,EAAE,KAAO,EAAE,SAAU,KAAK,MAAK,WAChD,EAAE,MAAM,IAAI,KAAM,EAAG,EAAG,EAAG,EAC/B,GACJ,EACA,IAAK,SAAS,EAAG,EAAG,EAAG,GACnB,OAAO,KAAK,GAAG,EAAG,EAAG,EAAG,EAAG,EAC/B,EACA,IAAK,SAAS,EAAG,EAAG,GAChB,IAAI,EAAG,EACP,GAAI,GAAK,EAAE,gBAAkB,EAAE,UAAW,EAAI,EAAE,UAAW,EAAE,EAAE,gBAAgB,IAAI,EAAE,UAAY,EAAE,SAAW,IAAM,EAAE,UAAY,EAAE,SAAU,EAAE,SAAU,EAAE,aACvJ,CACD,GAAI,iBAAmB,EAAG,OAAO,IAAO,GAAK,mBAAqB,IAAM,EAAI,EAAG,OAAI,IAAS,IAAO,IAAM,EAAI,GAAI,KAAK,MAAK,WACvH,EAAE,MAAM,OAAO,KAAM,EAAG,EAAG,EAC/B,IACA,IAAK,KAAK,EAAG,KAAK,IAAI,EAAG,EAAG,EAAE,GAClC,CACA,OAAO,IACX,EACA,QAAS,SAAS,EAAG,GACjB,OAAO,KAAK,MAAK,WACb,EAAE,MAAM,QAAQ,EAAG,EAAG,KAC1B,GACJ,EACA,eAAgB,SAAS,EAAG,GACxB,IAAI,EAAI,KAAK,GACb,OAAO,EAAI,EAAE,MAAM,QAAQ,EAAG,EAAG,GAAG,QAAM,CAC9C,IAEJ,IAAI,EAAK,0EACL,EAAK,YACL,EAAK,YACL,EAAK,0BACL,GAAK,oCACL,GAAK,4BACL,GAAK,cACL,GAAK,2CACL,GAAI,CACA,OAAQ,CAAC,EAAG,+BAAgC,aAC5C,MAAO,CAAC,EAAG,UAAW,YACtB,IAAK,CAAC,EAAG,oBAAqB,uBAC9B,GAAI,CAAC,EAAG,iBAAkB,oBAC1B,GAAI,CAAC,EAAG,qBAAsB,yBAC9B,SAAU,CAAC,EAAG,GAAI,KAG1B,SAAS,GAAG,EAAG,GACX,OAAO,EAAE,SAAS,EAAG,UAAY,EAAE,SAAS,KAAO,EAAE,SAAW,EAAI,EAAE,WAAY,MAAQ,EAAE,qBAAqB,SAAS,IAAM,EAAE,YAAY,EAAE,cAAc,cAAc,UAAY,CAC5L,CAEA,SAAS,GAAG,GACR,OAAO,EAAE,MAAQ,OAAS,EAAE,aAAa,SAAW,IAAM,EAAE,KAAM,CACtE,CAEA,SAAS,GAAG,GACR,IAAI,EAAI,GAAG,KAAK,EAAE,MAClB,OAAO,EAAI,EAAE,KAAO,EAAE,GAAK,EAAE,gBAAgB,QAAS,CAC1D,CAEA,SAAS,GAAG,EAAG,GACX,IAAK,IAAI,EAAI,EAAG,EAAI,EAAE,OAAQ,EAAI,EAAG,IAAK,EAAE,IAAI,EAAE,GAAI,cAAe,GAAK,EAAE,IAAI,EAAE,GAAI,cAC1F,CAEA,SAAS,GAAG,EAAG,GACX,IAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EACnB,GAAI,IAAM,EAAE,SAAU,CAClB,GAAI,EAAE,QAAQ,KAAO,EAAI,EAAE,OAAO,GAAI,EAAI,EAAE,IAAI,EAAG,GAAI,EAAI,EAAE,QACzD,IAAK,YAAY,EAAE,OAAQ,EAAE,OAAS,CAAC,EAAG,EACtC,IAAK,EAAI,EAAG,EAAI,EAAE,GAAG,OAAQ,EAAI,EAAG,IAAK,EAAE,MAAM,IAAI,EAAG,EAAG,EAAE,GAAG,IACxE,EAAE,QAAQ,KAAO,EAAI,EAAE,OAAO,GAAI,EAAI,EAAE,OAAO,CAAC,EAAG,GAAI,EAAE,IAAI,EAAG,GACpE,CACJ,CAEA,SAAS,GAAE,EAAG,GACV,IAAI,EAAI,EAAE,qBAAuB,EAAE,qBAAqB,GAAK,KAAO,EAAE,iBAAmB,EAAE,iBAAiB,GAAK,KAAO,GACxH,YAAO,IAAW,GAAK,GAAK,EAAE,SAAS,EAAG,GAAK,EAAE,MAAM,CAAC,GAAI,GAAK,CACrE,CACA,GAAE,SAAW,GAAE,OAAQ,GAAE,MAAQ,GAAE,MAAQ,GAAE,SAAW,GAAE,QAAU,GAAE,MAAO,GAAE,GAAK,GAAE,GAAI,EAAE,OAAO,CAC/F,MAAO,SAAS,EAAG,EAAG,GAClB,IAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAAE,WAAU,GACrC,EAAI,EAAE,SAAS,EAAE,cAAe,GACpC,KAAM,EAAE,gBAAkB,IAAM,EAAE,UAAY,KAAO,EAAE,UAAY,EAAE,SAAS,IAC1E,IAAK,EAAI,GAAE,GAAI,EAAI,EAAG,GAAK,EAAI,GAAE,IAAI,OAAQ,EAAI,EAAG,IAAK,EAAI,EAAE,QAAkB,EAAQ,WAAa,GAAnC,EAAI,EAAE,IAAmC,SAAS,gBAAkB,EAAG,KAAK,EAAE,MAAQ,EAAE,QAAU,EAAE,QAAU,UAAY,GAAK,aAAe,IAAM,EAAE,aAAe,EAAE,cAC9O,GAAI,EACA,GAAI,EACA,IAAK,EAAI,GAAK,GAAE,GAAI,EAAI,GAAK,GAAE,GAAI,EAAI,EAAG,EAAI,EAAE,OAAQ,EAAI,EAAG,IAAK,GAAG,EAAE,GAAI,EAAE,SAC9E,GAAG,EAAG,GACf,OAAO,GAAK,EAAI,GAAE,EAAG,WAAW,QAAU,GAAG,GAAI,GAAK,GAAE,EAAG,WAAY,CAC3E,EACA,cAAe,SAAS,EAAG,EAAG,EAAG,GAC7B,IAAK,IAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAAE,yBAA0B,EAAI,GAAI,EAAI,EAAG,EAAI,EAAE,OAAQ,EAAI,EAAG,IACxF,IAAK,EAAI,EAAE,KAAO,IAAM,EACpB,GAAI,WAAa,EAAE,KAAK,GAAI,EAAE,MAAM,EAAG,EAAE,SAAW,CAAC,GAAK,QACrD,GAAI,EAAG,KAAK,GAAI,CACzB,IAAK,EAAI,GAAK,EAAE,YAAY,EAAE,cAAc,QAAS,GAAK,EAAG,KAAK,IAAM,CAAC,GAAI,KAAK,GAAG,cAAe,EAAE,WAAa,EAAI,GAAE,IAAM,GAAE,UAAU,GAAK,EAAE,QAAQ,EAAI,aAAe,EAAE,GAAI,EAAI,EAAE,GAAI,KAAM,EAAI,EAAE,UACzM,EAAE,MAAM,EAAG,EAAE,aAAc,EAAI,EAAE,YAAY,YAAc,EAC/D,MAAO,EAAE,KAAK,EAAE,eAAe,IAC/B,IAAK,EAAE,YAAc,GAAI,EAAI,EAAG,EAAI,EAAE,MAClC,KAAM,IAAM,IAAM,EAAE,QAAQ,EAAG,MAAQ,EAAI,EAAE,SAAS,EAAE,cAAe,GAAI,EAAI,GAAE,EAAE,YAAY,GAAI,UAAW,GAAK,GAAG,GAAI,GACtH,IAAK,EAAI,EAAG,EAAI,EAAE,MAAO,GAAG,KAAK,EAAE,MAAQ,KAAO,EAAE,KAAK,GACjE,OAAO,CACX,EACA,UAAW,SAAS,GAChB,IAAK,IAAI,EAAG,EAAG,EAAG,EAAG,EAAI,EAAE,MAAM,QAAS,EAAI,OAAG,KAAY,EAAI,EAAE,IAAK,IAAK,CACzE,GAAI,EAAE,WAAW,KAAO,EAAI,EAAE,EAAE,YAAc,EAAI,EAAE,MAAM,IAAK,CAC3D,GAAI,EAAE,OACF,IAAK,KAAK,EAAE,OAAQ,EAAE,GAAK,EAAE,MAAM,OAAO,EAAG,GAAK,EAAE,YAAY,EAAG,EAAG,EAAE,QAC5E,EAAE,MAAM,WAAa,EAAE,MAAM,EACjC,QACO,EAAE,MAAM,EAAE,EAAE,SACvB,CACJ,IACA,EAAE,GAAG,OAAO,CACZ,KAAM,SAAS,GACX,OAAO,EAAE,MAAM,SAAS,GACpB,YAAO,IAAW,EAAI,EAAE,KAAK,MAAQ,KAAK,QAAQ,MAAK,WACnD,IAAM,KAAK,UAAY,KAAO,KAAK,UAAY,IAAM,KAAK,WAAa,KAAK,YAAc,EAC9F,GACJ,GAAG,KAAM,EAAG,UAAU,OAC1B,EACA,OAAQ,WACJ,OAAO,KAAK,SAAS,WAAW,SAAS,GACrC,IAAM,KAAK,UAAY,KAAO,KAAK,UAAY,IAAM,KAAK,UAAY,GAAG,KAAM,GAAG,YAAY,EAClG,GACJ,EACA,QAAS,WACL,OAAO,KAAK,SAAS,WAAW,SAAS,GACrC,IAAI,EACJ,IAAM,KAAK,UAAY,KAAO,KAAK,UAAY,IAAM,KAAK,WAAa,EAAI,GAAG,KAAM,IAAI,aAAa,EAAG,EAAE,WAC9G,GACJ,EACA,OAAQ,WACJ,OAAO,KAAK,SAAS,WAAW,SAAS,GACrC,KAAK,YAAc,KAAK,WAAW,aAAa,EAAG,KACvD,GACJ,EACA,MAAO,WACH,OAAO,KAAK,SAAS,WAAW,SAAS,GACrC,KAAK,YAAc,KAAK,WAAW,aAAa,EAAG,KAAK,YAC5D,GACJ,EACA,OAAQ,SAAS,EAAG,GAChB,IAAK,IAAI,EAAG,EAAI,EAAI,EAAE,OAAO,EAAG,MAAQ,KAAM,EAAI,EAAG,OAAS,EAAI,EAAE,IAAK,IAAK,GAAK,IAAM,EAAE,UAAY,EAAE,UAAU,GAAE,IAAK,EAAE,aAAe,GAAK,EAAE,SAAS,EAAE,cAAe,IAAM,GAAG,GAAE,EAAG,WAAY,EAAE,WAAW,YAAY,IAC/N,OAAO,IACX,EACA,MAAO,WACH,IAAK,IAAI,EAAG,EAAI,EAAG,OAAS,EAAI,KAAK,IAAK,IAAK,IAAM,EAAE,WAAa,EAAE,UAAU,GAAE,GAAG,IAAM,EAAE,YAAc,IAC3G,OAAO,IACX,EACA,MAAO,SAAS,EAAG,GACf,OAAO,EAAI,MAAQ,GAAK,EAAG,EAAI,MAAQ,EAAI,EAAI,EAAG,KAAK,KAAI,WACvD,OAAO,EAAE,MAAM,KAAM,EAAG,EAC5B,GACJ,EACA,KAAM,SAAS,GACX,OAAO,EAAE,MAAM,SAAS,GACpB,IAAI,EAAI,KAAK,IAAM,CAAC,EAChB,EAAI,EACJ,EAAI,KAAK,OACb,QAAI,IAAW,GAAK,IAAM,EAAE,SAAU,OAAO,EAAE,UAC/C,GAAI,iBAAmB,IAAM,EAAG,KAAK,KAAO,IAAG,EAAG,KAAK,IAAM,CAAC,GAAI,KAAK,GAAG,eAAgB,CACtF,EAAI,EAAE,QAAQ,EAAI,aAClB,IACI,KAAO,EAAI,EAAG,IAAK,KAAO,EAAI,KAAK,IAAM,CAAC,GAAG,WAAa,EAAE,UAAU,GAAE,GAAG,IAAM,EAAE,UAAY,GAC/F,EAAI,CACR,CAAE,MAAO,GAAI,CACjB,CACA,GAAK,KAAK,QAAQ,OAAO,EAC7B,GAAG,KAAM,EAAG,UAAU,OAC1B,EACA,YAAa,WACT,IAAI,EAAI,UAAU,GAClB,OAAO,KAAK,SAAS,WAAW,SAAS,GACrC,EAAI,KAAK,WAAY,EAAE,UAAU,GAAE,OAAQ,GAAK,EAAE,aAAa,EAAG,KACtE,IAAI,IAAM,EAAE,QAAU,EAAE,UAAY,KAAO,KAAK,QACpD,EACA,OAAQ,SAAS,GACb,OAAO,KAAK,OAAO,GAAG,EAC1B,EACA,SAAU,SAAS,EAAG,GAClB,EAAI,EAAE,MAAM,GAAI,GAChB,IAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EACtB,EAAI,KAAK,OACT,EAAI,KACJ,EAAI,EAAI,EACR,EAAI,EAAE,GACN,EAAI,EAAE,WAAW,GACrB,GAAI,GAAK,EAAI,GAAK,iBAAmB,IAAM,EAAE,YAAc,GAAG,KAAK,GAAI,OAAO,KAAK,MAAK,SAAS,GAC7F,IAAI,EAAI,EAAE,GAAG,GACb,IAAM,EAAE,GAAK,EAAE,KAAK,KAAM,EAAG,EAAE,SAAU,EAAE,SAAS,EAAG,EAC3D,IACA,GAAI,IAAM,GAAK,EAAI,EAAE,cAAc,EAAG,KAAK,GAAG,eAAe,EAAI,OAAO,WAAY,IAAM,EAAE,WAAW,SAAW,EAAI,GAAI,GAAI,CAC1H,IAAK,GAAK,EAAI,EAAE,IAAI,GAAE,EAAG,UAAW,KAAK,OAAQ,EAAI,EAAG,IAAK,EAAI,EAAG,IAAM,IAAM,EAAI,EAAE,MAAM,GAAG,GAAI,GAAK,IAAM,EAAE,MAAM,EAAG,GAAE,EAAG,WAAY,EAAE,KAAK,KAAK,GAAI,EAAG,GAC7J,GAAI,EACA,IAAK,EAAI,EAAE,EAAE,OAAS,GAAG,cAAe,EAAE,IAAI,EAAG,IAAK,EAAI,EAAG,EAAI,EAAG,IAAK,EAAI,EAAE,GAAI,GAAG,KAAK,EAAE,MAAQ,MAAQ,EAAE,OAAO,EAAG,eAAiB,EAAE,SAAS,EAAG,KAAO,EAAE,IAAM,EAAE,UAAY,EAAE,SAAS,EAAE,KAAO,EAAE,WAAW,EAAE,YAAY,QAAQ,GAAI,KACxP,CACA,OAAO,IACX,IACA,EAAE,KAAK,CACP,SAAU,SACV,UAAW,UACX,aAAc,SACd,YAAa,QACb,WAAY,gBACb,SAAS,EAAG,GACX,EAAE,GAAG,GAAK,SAAS,GACf,IAAK,IAAI,EAAG,EAAI,GAAI,EAAI,EAAE,GAAI,EAAI,EAAE,OAAS,EAAG,EAAI,EAAG,GAAK,EAAG,IAAK,EAAI,IAAM,EAAI,KAAO,KAAK,OAAM,GAAK,EAAE,EAAE,IAAI,GAAG,GAAI,EAAE,MAAM,EAAG,EAAE,OACrI,OAAO,KAAK,UAAU,EAC1B,CACJ,IACA,IAAI,GAAI,GAAK,CAAC,EAEd,SAAS,GAAG,EAAG,GAEX,OADA,EAAI,EAAE,EAAE,cAAc,IAAI,SAAS,EAAE,MAAO,EAAI,EAAE,0BAA4B,EAAI,EAAE,wBAAwB,EAAE,KAAO,EAAE,QAAU,EAAE,IAAI,EAAE,GAAI,WACtI,EAAE,SAAU,CACvB,CAEA,SAAS,GAAG,GACR,IAAI,EAAI,EACJ,EAAI,GAAG,GACX,OAAO,IAAM,UAAY,EAAI,GAAG,EAAG,KAAO,KAAO,GAAK,IAAM,IAAM,EAAE,mDAAmD,SAAS,EAAE,kBAAkB,GAAG,iBAAiB,QAAS,EAAE,QAAS,EAAI,GAAG,EAAG,GAAI,GAAG,UAAW,GAAG,GAAK,GAAI,CACxO,CAEA,SAAS,GAAG,GACR,OAAO,EAAE,cAAc,YAAY,iBAAiB,EAAG,KAC3D,CACA,IAAI,GAAI,GAAI,GAAG,GAAG,GAAG,GAAK,UACtB,GAAK,IAAI,OAAO,KAAO,EAAI,kBAAmB,KAElD,SAAS,GAAE,EAAG,EAAG,GACb,IAAI,EAAG,EAAG,EAAI,EAAE,MAChB,OAAQ,EAAI,GAAK,GAAG,MAAQ,EAAI,EAAE,iBAAiB,IAAM,EAAE,IAAK,IAAM,KAAO,GAAK,EAAE,SAAS,EAAE,cAAe,KAAO,EAAI,EAAE,MAAM,EAAG,IAAK,GAAG,KAAK,KAAO,GAAG,KAAK,KAAO,EAAI,EAAE,MAAO,EAAI,EAAE,SAAU,EAAI,EAAE,SAAU,EAAE,SAAW,EAAE,SAAW,EAAE,MAAQ,EAAG,EAAI,EAAE,MAAO,EAAE,MAAQ,EAAG,EAAE,SAAW,EAAG,EAAE,SAAW,QAAI,IAAW,EAAI,EAAI,GAAK,CAClV,CAEA,SAAS,GAAG,EAAG,GACX,MAAO,CACH,IAAK,WACD,OAAO,gBAAkB,KAAK,KAAO,KAAK,IAAM,GAAG,MAAM,KAAM,UACnE,EAER,CAEA,SAAS,KACL,GAAE,MAAM,QAAU,uKAAwK,GAAE,UAAY,GAAI,GAAE,YAAY,IAC1N,IAAI,EAAI,EAAE,iBAAiB,GAAG,MAC9B,GAAK,OAAS,EAAE,IAAK,GAAK,QAAU,EAAE,MAAO,GAAE,YAAY,GAC/D,CACA,GAAI,EAAE,gBAAiB,GAAI,EAAE,cAAc,QAAS,GAAI,EAAE,cAAc,QAAQ,QAAU,GAAE,MAAM,eAAiB,cAAe,GAAE,WAAU,GAAI,MAAM,eAAiB,GAAI,EAAE,gBAAkB,gBAAkB,GAAE,MAAM,eAAgB,GAAE,MAAM,QAAU,gFAAiF,GAAE,YAAY,IAAI,EAAE,mBAAqB,EAAE,OAAO,EAAG,CAC/X,cAAe,WACX,OAAO,KAAM,EACjB,EACA,kBAAmB,WACf,OAAO,MAAQ,IAAM,KAAM,EAC/B,EACA,oBAAqB,WACjB,IAAI,EAAI,GAAE,YAAY,EAAE,cAAc,QACtC,OAAO,EAAE,MAAM,QAAU,GAAE,MAAM,QAAU,8HAA+H,EAAE,MAAM,YAAc,EAAE,MAAM,MAAQ,IAAK,GAAE,MAAM,MAAQ,MAAO,GAAE,YAAY,IAAI,GAAK,WAAW,EAAE,iBAAiB,EAAG,MAAM,aAAc,GAAE,YAAY,IAAI,CAC9U,IACA,EAAE,KAAO,SAAS,EAAG,EAAG,EAAG,GAC3B,IAAI,EAAG,EAAI,CAAC,EACZ,IAAK,KAAK,EAAG,EAAE,GAAK,EAAE,MAAM,GAAI,EAAE,MAAM,GAAK,EAAE,GAC/C,IAAK,KAAK,EAAI,EAAE,MAAM,EAAG,GAAK,IAAK,EAAG,EAAE,MAAM,GAAK,EAAE,GACrD,OAAO,CACX,EACA,IAAI,GAAK,4BACL,GAAK,IAAI,OAAO,KAAO,EAAI,SAAU,KACrC,GAAK,IAAI,OAAO,YAAc,EAAI,IAAK,KACvC,GAAK,CACD,SAAU,WACV,WAAY,SACZ,QAAS,SAEb,GAAK,CACD,cAAe,IACf,WAAY,OAEhB,GAAK,CAAC,SAAU,IAAK,MAAO,MAEhC,SAAS,GAAG,EAAG,GACX,GAAI,KAAK,EAAG,OAAO,EACnB,IAAK,IAAI,EAAI,EAAE,GAAG,cAAgB,EAAE,MAAM,GAAI,EAAI,EAAG,EAAI,GAAG,OAAQ,KAChE,IAAK,EAAI,GAAG,GAAK,KAAM,EAAG,OAAO,EACrC,OAAO,CACX,CAEA,SAAS,GAAG,EAAG,EAAG,GACd,IAAI,EAAI,GAAG,KAAK,GAChB,OAAO,EAAI,KAAK,IAAI,EAAG,EAAE,IAAM,GAAK,KAAO,EAAE,IAAM,MAAQ,CAC/D,CAEA,SAAS,GAAG,EAAG,EAAG,EAAG,EAAG,GACpB,IAAK,IAAI,EAAI,KAAO,EAAI,SAAW,WAAa,EAAI,UAAY,EAAI,EAAI,EAAG,EAAI,EAAG,EAAI,EAAG,GAAK,EAAG,WAAa,IAAM,GAAK,EAAE,IAAI,EAAG,EAAI,EAAE,IAAI,EAAI,IAAK,GAAK,YAAc,IAAM,GAAK,EAAE,IAAI,EAAG,UAAY,EAAE,IAAI,EAAI,IAAK,WAAa,IAAM,GAAK,EAAE,IAAI,EAAG,SAAW,EAAE,GAAK,SAAS,EAAI,MAAQ,GAAK,EAAE,IAAI,EAAG,UAAY,EAAE,IAAI,EAAI,GAAI,YAAc,IAAM,GAAK,EAAE,IAAI,EAAG,SAAW,EAAE,GAAK,SAAS,EAAI,KACxY,OAAO,CACX,CAEA,SAAS,GAAG,EAAG,EAAG,GACd,IAAI,GAAI,EACJ,EAAI,UAAY,EAAI,EAAE,YAAc,EAAE,aACtC,EAAI,GAAG,GACP,EAAI,eAAiB,EAAE,IAAI,EAAG,aAAa,EAAI,GACnD,GAAI,GAAK,GAAK,MAAQ,EAAG,CACrB,KAAM,EAAI,GAAE,EAAG,EAAG,IAAM,GAAK,MAAQ,KAAO,EAAI,EAAE,MAAM,IAAK,GAAG,KAAK,GAAI,OAAO,EAChF,EAAI,IAAM,EAAE,qBAAuB,IAAM,EAAE,MAAM,IAAK,EAAI,WAAW,IAAM,CAC/E,CACA,OAAO,EAAI,GAAG,EAAG,EAAG,IAAM,EAAI,SAAW,WAAY,EAAG,GAAK,IACjE,CAEA,SAAS,GAAG,EAAG,GACX,IAAK,IAAI,EAAG,EAAG,EAAG,EAAI,GAAI,EAAI,EAAG,EAAI,EAAE,OAAQ,EAAI,EAAG,KAAK,EAAI,EAAE,IAAI,QAAU,EAAE,GAAK,EAAE,IAAI,EAAG,cAAe,EAAI,EAAE,MAAM,QAAS,GAAK,EAAE,IAAM,SAAW,IAAM,EAAE,MAAM,QAAU,IAAK,KAAO,EAAE,MAAM,SAAW,EAAE,KAAO,EAAE,GAAK,EAAE,OAAO,EAAG,aAAc,GAAG,EAAE,cAAgB,EAAI,EAAE,GAAI,SAAW,GAAK,GAAK,EAAE,IAAI,EAAG,aAAc,EAAI,EAAI,EAAE,IAAI,EAAG,cACxV,IAAK,EAAI,EAAG,EAAI,EAAG,MAAO,EAAI,EAAE,IAAI,OAAS,GAAK,SAAW,EAAE,MAAM,SAAW,KAAO,EAAE,MAAM,UAAY,EAAE,MAAM,QAAU,EAAI,EAAE,IAAM,GAAK,QAC9I,OAAO,CACX,CAEA,SAAS,GAAE,EAAG,EAAG,EAAG,EAAG,GACnB,OAAO,IAAI,GAAE,UAAU,KAAK,EAAG,EAAG,EAAG,EAAG,EAC5C,CACA,EAAE,OAAO,CACL,SAAU,CACN,QAAS,CACL,IAAK,SAAS,EAAG,GACb,GAAI,EAAG,MAAO,MAAQ,EAAI,GAAE,EAAG,YAAc,IAAM,CACvD,IAGR,UAAW,CACP,aAAa,EACb,aAAa,EACb,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,OAAO,EACP,SAAS,EACT,QAAQ,EACR,QAAQ,EACR,MAAM,GAEV,SAAU,CACN,MAAO,YAEX,MAAO,SAAS,EAAG,EAAG,EAAG,GACrB,IAAI,EAAG,EAAG,EAAG,EAAG,EAChB,GAAI,GAAK,IAAM,EAAE,UAAY,IAAM,EAAE,UAAY,EAAE,MAAO,OAAO,EAAI,EAAE,UAAU,GAAI,EAAI,EAAE,MAAO,EAAI,EAAE,SAAS,KAAO,EAAE,SAAS,GAAK,GAAG,EAAG,IAAK,EAAI,EAAE,SAAS,IAAM,EAAE,SAAS,QAAI,IAAW,EAAI,GAAK,QAAS,QAAK,KAAY,EAAI,EAAE,IAAI,GAAG,EAAI,IAAM,EAAI,EAAE,IAAM,WAAc,SAAW,KAAO,EAAI,GAAG,KAAK,MAAQ,GAAK,EAAE,GAAK,GAAK,EAAE,GAAK,WAAW,EAAE,IAAI,EAAG,IAAK,EAAI,eAAgB,MAAQ,GAAK,GAAK,IAAM,WAAa,GAAK,EAAE,UAAU,KAAO,GAAK,MAAO,EAAE,iBAAmB,KAAO,GAAK,IAAM,EAAE,QAAQ,gBAAkB,EAAE,GAAK,WAAY,GAAK,QAAS,QAAK,KAAY,EAAI,EAAE,IAAI,EAAG,EAAG,MAAQ,EAAE,GAAK,KAClmB,EACA,IAAK,SAAS,EAAG,EAAG,EAAG,GACnB,IAAI,EAAG,EAAI,EAAE,UAAU,GACvB,OAAO,EAAI,EAAE,SAAS,KAAO,EAAE,SAAS,GAAK,GAAG,EAAE,MAAO,IAAK,YAAc,OAAI,KAAY,GAAK,EAAI,EAAE,SAAS,IAAM,EAAE,SAAS,KAAO,QAAS,EAAI,EAAE,IAAI,GAAG,EAAI,GAAK,GAAK,GAAE,EAAG,EAAG,GAAK,IAAM,KAAK,KAAO,EAAI,GAAG,KAAM,KAAO,GAAK,KAAO,EAAI,WAAW,IAAI,IAAO,GAAK,EAAE,UAAU,IAAM,GAAK,EAAI,CACzS,IACA,EAAE,KAAK,CAAC,SAAU,UAAU,SAAS,EAAG,GACxC,EAAE,SAAS,GAAK,CACZ,IAAK,SAAS,EAAG,EAAG,GAChB,OAAO,EAAI,GAAG,KAAK,EAAE,IAAI,EAAG,aAAe,IAAM,EAAE,YAAc,EAAE,KAAK,EAAG,IAAI,WAC3E,OAAO,GAAG,EAAG,EAAG,EACpB,IAAK,GAAG,EAAG,EAAG,QAAK,CACvB,EACA,IAAK,SAAS,EAAG,EAAG,GAChB,IAAI,EAAI,GAAK,GAAG,GAChB,OAAO,GAAG,EAAG,EAAG,EAAI,GAAG,EAAG,EAAG,EAAG,eAAiB,EAAE,IAAI,EAAG,aAAa,EAAI,GAAI,GAAK,EACxF,EAER,IAAI,EAAE,SAAS,YAAc,GAAG,EAAE,qBAAqB,SAAS,EAAG,GAC/D,OAAO,EAAI,EAAE,KAAK,EAAG,CACjB,QAAS,gBACV,GAAG,CAAC,EAAG,qBAAkB,CAChC,IAAI,EAAE,KAAK,CACP,OAAQ,GACR,QAAS,GACT,OAAQ,UACT,SAAS,EAAG,GACX,EAAE,SAAS,EAAI,GAAK,CAChB,OAAQ,SAAS,GACb,IAAK,IAAI,EAAI,EAAG,EAAI,CAAC,EAAG,EAAI,iBAAmB,EAAI,EAAE,MAAM,KAAO,CAAC,GAAI,EAAI,EAAG,IAAK,EAAE,EAAI,EAAE,GAAK,GAAK,EAAE,IAAM,EAAE,EAAI,IAAM,EAAE,GAC3H,OAAO,CACX,GACD,GAAG,KAAK,KAAO,EAAE,SAAS,EAAI,GAAG,IAAM,GAC9C,IAAI,EAAE,GAAG,OAAO,CACZ,IAAK,SAAS,EAAG,GACb,OAAO,EAAE,MAAM,SAAS,EAAG,EAAG,GAC1B,IAAI,EAAG,EAAG,EAAI,CAAC,EACX,EAAI,EACR,GAAI,EAAE,QAAQ,GAAI,CACd,IAAK,EAAI,GAAG,GAAI,EAAI,EAAE,OAAQ,EAAI,EAAG,IAAK,EAAE,EAAE,IAAM,EAAE,IAAI,EAAG,EAAE,IAAI,EAAI,GACvE,OAAO,CACX,CACA,YAAO,IAAW,EAAI,EAAE,MAAM,EAAG,EAAG,GAAK,EAAE,IAAI,EAAG,EACtD,GAAG,EAAG,EAAG,EAAI,UAAU,OAC3B,EACA,KAAM,WACF,OAAO,GAAG,MAAM,EACpB,EACA,KAAM,WACF,OAAO,GAAG,KACd,EACA,OAAQ,SAAS,GACb,MAAO,kBAAoB,EAAI,EAAI,KAAK,OAAS,KAAK,OAAS,KAAK,MAAK,WACrE,EAAE,MAAQ,EAAE,MAAM,OAAS,EAAE,MAAM,MACvC,GACJ,MACE,EAAE,MAAQ,IAAG,UAAY,CAC3B,YAAa,GACb,KAAM,SAAS,EAAG,EAAG,EAAG,EAAG,EAAG,GAC1B,KAAK,KAAO,EAAG,KAAK,KAAO,EAAG,KAAK,OAAS,GAAK,QAAS,KAAK,QAAU,EAAG,KAAK,MAAQ,KAAK,IAAM,KAAK,MAAO,KAAK,IAAM,EAAG,KAAK,KAAO,IAAM,EAAE,UAAU,GAAK,GAAK,KAC1K,EACA,IAAK,WACD,IAAI,EAAI,GAAE,UAAU,KAAK,MACzB,OAAQ,GAAK,EAAE,IAAM,EAAI,GAAE,UAAU,UAAU,IAAI,KACvD,EACA,IAAK,SAAS,GACV,IAAI,EAAI,GAAE,UAAU,KAAK,MACzB,OAAO,KAAK,IAAM,EAAI,KAAK,QAAQ,SAAW,EAAE,OAAO,KAAK,QAAQ,EAAG,KAAK,QAAQ,SAAW,EAAG,EAAG,EAAG,KAAK,QAAQ,UAAY,EAAG,KAAK,KAAO,KAAK,IAAM,KAAK,OAAS,EAAI,KAAK,MAAO,KAAK,QAAQ,MAAQ,KAAK,QAAQ,KAAK,KAAK,KAAK,KAAM,KAAK,IAAK,OAAQ,GAAK,EAAE,IAAM,EAAI,GAAE,UAAU,UAAU,IAAI,MAAO,IACxT,IACD,KAAK,UAAY,GAAE,WAAY,GAAE,UAAY,CAC5C,SAAU,CACN,IAAK,SAAS,GACV,IAAI,EACJ,OAAO,MAAQ,EAAE,KAAK,EAAE,OAAS,EAAE,KAAK,OAAS,MAAQ,EAAE,KAAK,MAAM,EAAE,OAAS,EAAI,EAAE,IAAI,EAAE,KAAM,EAAE,KAAM,MAAQ,SAAW,EAAI,EAAI,EAAI,EAAE,KAAK,EAAE,KACvJ,EACA,IAAK,SAAS,GACV,EAAE,GAAG,KAAK,EAAE,MAAQ,EAAE,GAAG,KAAK,EAAE,MAAM,GAAK,EAAE,KAAK,QAAU,MAAQ,EAAE,KAAK,MAAM,EAAE,SAAS,EAAE,QAAU,EAAE,SAAS,EAAE,OAAS,EAAE,MAAM,EAAE,KAAM,EAAE,KAAM,EAAE,IAAM,EAAE,MAAQ,EAAE,KAAK,EAAE,MAAQ,EAAE,GAC/L,KAEL,UAAY,GAAE,UAAU,WAAa,CACpC,IAAK,SAAS,GACV,EAAE,KAAK,UAAY,EAAE,KAAK,aAAe,EAAE,KAAK,EAAE,MAAQ,EAAE,IAChE,GACD,EAAE,OAAS,CACV,OAAQ,SAAS,GACb,OAAO,CACX,EACA,MAAO,SAAS,GACZ,MAAO,GAAK,KAAK,IAAI,EAAI,KAAK,IAAM,CACxC,GACD,EAAE,GAAK,GAAE,UAAU,KAAM,EAAE,GAAG,KAAO,CAAC,EACzC,IAAI,GAAG,GAAI,GAAG,GAAK,yBACf,GAAK,IAAI,OAAO,iBAAmB,EAAI,cAAe,KACtD,GAAK,cACL,GAAK,CAAC,SAAS,EAAG,EAAG,GACjB,IAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,KACzB,EAAI,CAAC,EACL,EAAI,EAAE,MACN,EAAI,EAAE,UAAY,EAAE,GACpB,EAAI,EAAE,IAAI,EAAG,UACjB,IAAK,KAAK,EAAE,QAAU,OAAS,EAAI,EAAE,YAAY,EAAG,OAAO,WAAa,EAAE,SAAW,EAAG,EAAI,EAAE,MAAM,KAAM,EAAE,MAAM,KAAO,WACjH,EAAE,UAAY,GAClB,GAAI,EAAE,WAAY,EAAE,QAAO,WACvB,EAAE,QAAO,WACL,EAAE,WAAY,EAAE,MAAM,EAAG,MAAM,QAAU,EAAE,MAAM,MACrD,GACJ,KAAK,IAAM,EAAE,WAAa,WAAY,GAAK,UAAW,KAAO,EAAE,SAAW,CAAC,EAAE,SAAU,EAAE,UAAW,EAAE,WAAqC,YAAc,UAAvC,EAAI,EAAE,IAAI,EAAG,YAAyC,EAAE,IAAI,EAAG,eAAiB,GAAG,EAAE,UAAY,KAAO,SAAW,EAAE,IAAI,EAAG,WAAa,EAAE,QAAU,gBAAiB,EAAE,WAAa,EAAE,SAAW,SAAU,EAAE,QAAO,WACnU,EAAE,SAAW,EAAE,SAAS,GAAI,EAAE,UAAY,EAAE,SAAS,GAAI,EAAE,UAAY,EAAE,SAAS,EACtF,KAAK,EACL,GAAI,EAAI,EAAE,GAAI,GAAG,KAAK,GAAI,CACtB,UAAW,EAAE,GAAI,EAAI,GAAK,WAAa,EAAG,KAAO,EAAI,OAAS,QAAS,CACnE,GAAI,SAAW,IAAM,QAAK,IAAW,EAAE,GAAI,SAC3C,GAAI,CACR,CACA,EAAE,GAAK,GAAK,EAAE,IAAM,EAAE,MAAM,EAAG,EACnC,MAAO,OAAI,EACf,GAAI,EAAE,cAAc,GAAI,YAAc,SAAW,EAAI,GAAG,EAAE,UAAY,KAAO,EAAE,QAAU,QAErF,IAAK,KAAK,EAAI,WAAY,IAAM,EAAI,EAAE,QAAU,EAAI,EAAE,OAAO,EAAG,SAAU,CAAC,GAAI,IAAM,EAAE,QAAU,GAAI,EAAI,EAAE,GAAG,OAAS,EAAE,MAAK,WACtH,EAAE,GAAG,MACT,IAAI,EAAE,MAAK,WACP,IAAK,IAAI,KAAK,EAAE,OAAO,EAAG,UAAW,EAAG,EAAE,MAAM,EAAG,EAAG,EAAE,GAC5D,IAAI,EAAG,EAAI,GAAG,EAAI,EAAE,GAAK,EAAG,EAAG,GAAI,KAAK,IAAM,EAAE,GAAK,EAAE,MAAO,IAAM,EAAE,IAAM,EAAE,MAAO,EAAE,MAAQ,UAAY,GAAK,WAAa,EAAI,EAAI,GACjJ,GACA,GAAI,CACA,IAAK,CAAC,SAAS,EAAG,GACd,IAAI,EAAI,KAAK,YAAY,EAAG,GACxB,EAAI,EAAE,MAEN,GADA,EAAI,GAAG,KAAK,KACH,EAAE,KAAO,EAAE,UAAU,GAAK,GAAK,MACxC,GAAK,EAAE,UAAU,IAAM,OAAS,IAAM,IAAM,GAAG,KAAK,EAAE,IAAI,EAAE,KAAM,IAClE,EAAI,EACJ,EAAI,GACR,GAAI,GAAK,EAAE,KAAO,EACd,IAAK,EAAI,GAAK,EAAE,GAAI,EAAI,GAAK,GAAI,GAAK,GAAK,EAAG,EAAE,MAAM,EAAE,KAAM,GAAI,GAAK,EAAI,GAAK,MAAQ,GAAI,KAAO,EAAI,EAAE,MAAQ,IAAM,IAAM,KAAO,IACxI,OAAO,IAAM,EAAI,EAAE,OAAS,IAAM,GAAK,EAAG,EAAE,KAAO,EAAG,EAAE,IAAM,EAAE,GAAK,GAAK,EAAE,GAAK,GAAK,EAAE,IAAM,EAAE,IAAK,CACzG,IAGR,SAAS,KACL,OAAO,YAAW,WACd,QAAI,CACR,IAAI,GAAI,EAAE,KACd,CAEA,SAAS,GAAG,EAAG,GACX,IAAI,EAAG,EAAI,EACP,EAAI,CACA,OAAQ,GAEhB,IAAK,EAAI,EAAI,EAAI,EAAG,EAAI,EAAG,GAAK,EAAI,EAAG,EAAE,UAAY,EAAI,EAAE,KAAO,EAAE,UAAY,GAAK,EACrF,OAAO,IAAM,EAAE,QAAU,EAAE,MAAQ,GAAI,CAC3C,CAEA,SAAS,GAAG,EAAG,EAAG,GACd,IAAK,IAAI,EAAG,GAAK,GAAE,IAAM,IAAI,OAAO,GAAE,MAAO,EAAI,EAAG,EAAI,EAAE,OAAQ,EAAI,EAAG,IACrE,GAAI,EAAI,EAAE,GAAG,KAAK,EAAG,EAAG,GAAI,OAAO,CAC3C,CAEA,SAAS,GAAG,EAAG,EAAG,GACd,IAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EACzB,EAAI,GAAG,OACP,EAAI,EAAE,WAAW,QAAO,kBACb,EAAE,IACb,IACA,EAAI,WACA,GAAI,EAAG,OAAO,EACd,IAAK,IAAI,EAAI,IAAK,KAAqD,EAAI,IAAnD,EAAI,KAAK,IAAI,EAAG,EAAE,UAAY,EAAE,SAAW,IAAiB,EAAE,UAAY,GAAI,EAAI,EAAG,EAAI,EAAE,OAAO,OAAQ,EAAI,EAAG,IAAK,EAAE,OAAO,GAAG,IAAI,GAC9J,OAAO,EAAE,WAAW,EAAG,CAAC,EAAG,EAAG,IAAK,EAAI,GAAK,EAAI,GAAK,EAAE,YAAY,EAAG,CAAC,KAAK,EAChF,EACA,EAAI,EAAE,QAAQ,CACV,KAAM,EACN,MAAO,EAAE,OAAO,CAAC,EAAG,GACpB,KAAM,EAAE,QAAO,EAAI,CACf,cAAe,CAAC,GACjB,GACH,mBAAoB,EACpB,gBAAiB,EACjB,UAAW,IAAK,KAChB,SAAU,EAAE,SACZ,OAAQ,GACR,YAAa,SAAS,EAAG,GAErB,OADA,EAAI,EAAE,MAAM,EAAG,EAAE,KAAM,EAAG,EAAG,EAAE,KAAK,cAAc,IAAM,EAAE,KAAK,QACxD,EAAE,OAAO,KAAK,GAAI,CAC7B,EACA,KAAM,SAAS,GACX,IAAI,EAAI,EACJ,EAAI,EAAI,EAAE,OAAO,OAAS,EAC9B,IAAK,EAAG,CACJ,IAAK,GAAI,EAAI,EAAI,EAAG,IAAK,EAAE,OAAO,GAAG,IAAI,GACzC,EAAI,EAAE,YAAY,EAAG,CAAC,EAAG,IAAM,EAAE,WAAW,EAAG,CAAC,EAAG,GACvD,CACA,OAAO,IACX,IAEJ,EAAI,EAAE,MACN,EAAI,EACJ,EAAI,EAAE,KAAK,cACf,IAAK,KAAK,EACN,GAAwB,EAAI,EAAxB,EAAI,EAAE,UAAU,IAAc,EAAI,EAAE,GAAI,EAAE,QAAQ,KAAO,EAAI,EAAE,GAAI,EAAI,EAAE,GAAK,EAAE,IAAK,IAAM,IAAM,EAAE,GAAK,SAAU,EAAE,KAAK,EAAI,EAAE,SAAS,KAAS,WAAY,EAC7J,IAAK,KAAK,EAAI,EAAE,OAAO,UAAW,EAAE,GAAI,EAAG,KAAK,IAAM,EAAE,GAAK,EAAE,GAAI,EAAE,GAAK,QACzE,EAAE,GAAK,EAChB,KAAO,EAAI,EAAG,IACV,GAAI,EAAI,GAAG,GAAG,KAAK,EAAG,EAAG,EAAG,EAAE,MAAO,OAAO,EAChD,OAAO,EAAE,IAAI,EAAG,GAAI,GAAI,EAAE,WAAW,EAAE,KAAK,QAAU,EAAE,KAAK,MAAM,KAAK,EAAG,GAAI,EAAE,GAAG,MAAM,EAAE,OAAO,EAAG,CAClG,KAAM,EACN,KAAM,EACN,MAAO,EAAE,KAAK,SACb,EAAE,SAAS,EAAE,KAAK,UAAU,KAAK,EAAE,KAAK,KAAM,EAAE,KAAK,UAAU,KAAK,EAAE,KAAK,MAAM,OAAO,EAAE,KAAK,OACxG,CACA,EAAE,UAAY,EAAE,OAAO,GAAI,CACvB,QAAS,SAAS,EAAG,GACjB,IAAK,IAAI,EAAG,EAAI,EAAG,GAAK,EAAI,EAAE,WAAW,IAAM,EAAI,EAAG,CAAC,MAAQ,EAAE,MAAM,MAAM,OAAQ,EAAI,EAAG,IAAK,EAAI,EAAE,GAAI,GAAE,GAAK,GAAE,IAAM,GAAI,GAAE,GAAG,QAAQ,EAC/I,EACA,UAAW,SAAS,EAAG,GACnB,EAAI,GAAG,QAAQ,GAAK,GAAG,KAAK,EAChC,IACA,EAAE,MAAQ,SAAS,EAAG,EAAG,GACzB,IAAI,EAAI,GAAK,iBAAmB,EAAI,EAAE,OAAO,CAAC,EAAG,GAAK,CAClD,SAAU,IAAM,GAAK,GAAK,EAAE,WAAW,IAAM,EAC7C,SAAU,EACV,OAAQ,GAAK,GAAK,IAAM,EAAE,WAAW,IAAM,GAE/C,OAAO,EAAE,SAAW,EAAE,GAAG,IAAM,EAAI,iBAAmB,EAAE,SAAW,EAAE,SAAW,EAAE,YAAY,EAAE,GAAG,OAAS,EAAE,GAAG,OAAO,EAAE,UAAY,EAAE,GAAG,OAAO,SAAU,MAAQ,EAAE,QAAS,IAAO,EAAE,QAAU,EAAE,MAAQ,MAAO,EAAE,IAAM,EAAE,SAAU,EAAE,SAAW,WAChP,EAAE,WAAW,EAAE,MAAQ,EAAE,IAAI,KAAK,MAAO,EAAE,OAAS,EAAE,QAAQ,KAAM,EAAE,MAC1E,EAAG,CACP,EAAG,EAAE,GAAG,OAAO,CACX,OAAQ,SAAS,EAAG,EAAG,EAAG,GACtB,OAAO,KAAK,OAAO,GAAG,IAAI,UAAW,GAAG,OAAO,MAAM,QAAQ,CACzD,QAAS,GACV,EAAG,EAAG,EACb,EACA,QAAS,SAAS,EAAG,EAAG,EAAG,GACvB,SAAS,IACL,IAAI,EAAI,GAAG,KAAM,EAAE,OAAO,CAAC,EAAG,GAAI,IACjC,GAAK,EAAE,IAAI,KAAM,YAAc,EAAE,MAAK,EAC3C,CACA,IAAI,EAAI,EAAE,cAAc,GACpB,EAAI,EAAE,MAAM,EAAG,EAAG,GACtB,OAAO,EAAE,OAAS,EAAG,IAAK,IAAO,EAAE,MAAQ,KAAK,KAAK,GAAK,KAAK,MAAM,EAAE,MAAO,EAClF,EACA,KAAM,SAAS,EAAG,EAAG,GACjB,SAAS,EAAE,GACP,IAAI,EAAI,EAAE,YACH,EAAE,KAAM,EAAE,EACrB,CACA,MAAO,iBAAmB,IAAM,EAAI,EAAG,EAAI,EAAG,OAAI,GAAS,IAAK,IAAO,GAAK,KAAK,MAAM,GAAK,KAAM,IAAK,KAAK,MAAK,WAC7G,IAAI,GAAI,EACJ,EAAI,MAAQ,GAAK,EAAI,aACrB,EAAI,EAAE,OACN,EAAI,EAAE,IAAI,MACd,GAAI,EAAG,EAAE,IAAM,EAAE,GAAG,MAAQ,EAAE,EAAE,SAE5B,IAAK,KAAK,EAAG,EAAE,IAAM,EAAE,GAAG,MAAQ,GAAG,KAAK,IAAM,EAAE,EAAE,IACxD,IAAK,EAAI,EAAE,OAAQ,KAAM,EAAE,GAAG,OAAS,MAAQ,MAAQ,GAAK,EAAE,GAAG,QAAU,IAAM,EAAE,GAAG,KAAK,KAAK,GAAI,GAAI,EAAI,EAAE,OAAO,EAAG,KACvH,GAAK,GAAK,EAAE,QAAQ,KAAM,EAC/B,GACJ,EACA,OAAQ,SAAS,GACb,OAAO,IAAO,IAAM,EAAI,GAAK,MAAO,KAAK,MAAK,WAC1C,IAAI,EAAG,EAAI,EAAE,IAAI,MACb,EAAI,EAAE,EAAI,SACV,EAAI,EAAE,EAAI,cACV,EAAI,EAAE,OACN,EAAI,EAAI,EAAE,OAAS,EACvB,IAAK,EAAE,QAAS,EAAI,EAAE,MAAM,KAAM,EAAG,IAAK,GAAK,EAAE,MAAQ,EAAE,KAAK,KAAK,MAAM,GAAK,EAAI,EAAE,OAAQ,KAAM,EAAE,GAAG,OAAS,MAAQ,EAAE,GAAG,QAAU,IAAM,EAAE,GAAG,KAAK,MAAK,GAAK,EAAE,OAAO,EAAG,IAC/K,IAAK,EAAI,EAAG,EAAI,EAAG,IAAK,EAAE,IAAM,EAAE,GAAG,QAAU,EAAE,GAAG,OAAO,KAAK,aACzD,EAAE,MACb,GACJ,IACA,EAAE,KAAK,CAAC,SAAU,OAAQ,SAAS,SAAS,EAAG,GAC/C,IAAI,EAAI,EAAE,GAAG,GACb,EAAE,GAAG,GAAK,SAAS,EAAG,EAAG,GACrB,OAAO,MAAQ,GAAK,kBAAoB,EAAI,EAAE,MAAM,KAAM,WAAa,KAAK,QAAQ,GAAG,GAAG,GAAK,EAAG,EAAG,EACzG,CACJ,IAAI,EAAE,KAAK,CACP,UAAW,GAAG,QACd,QAAS,GAAG,QACZ,YAAa,GAAG,UAChB,OAAQ,CACJ,QAAS,QAEb,QAAS,CACL,QAAS,QAEb,WAAY,CACR,QAAS,YAEd,SAAS,EAAG,GACX,EAAE,GAAG,GAAK,SAAS,EAAG,EAAG,GACrB,OAAO,KAAK,QAAQ,EAAG,EAAG,EAAG,EACjC,CACJ,IAAI,EAAE,OAAS,GAAI,EAAE,GAAG,KAAO,WAC3B,IAAI,EAAG,EAAI,EACP,EAAI,EAAE,OACV,IAAK,GAAI,EAAE,MAAO,EAAI,EAAE,OAAQ,KAAK,EAAI,EAAE,OAAS,EAAE,KAAO,GAAK,EAAE,OAAO,IAAK,GAChF,EAAE,QAAU,EAAE,GAAG,OAAQ,QAAI,CACjC,EAAG,EAAE,GAAG,MAAQ,SAAS,GACrB,EAAE,OAAO,KAAK,GAAI,IAAM,EAAE,GAAG,QAAU,EAAE,OAAO,KACpD,EAAG,EAAE,GAAG,SAAW,GAAI,EAAE,GAAG,MAAQ,WAChC,GAAK,IAAM,YAAY,EAAE,GAAG,KAAM,EAAE,GAAG,SAC3C,EAAG,EAAE,GAAG,KAAO,WACX,cAAc,IAAK,GAAK,IAC5B,EAAG,EAAE,GAAG,OAAS,CACb,KAAM,IACN,KAAM,IACN,SAAU,KACX,EAAE,GAAG,MAAQ,SAAS,EAAG,GACxB,OAAO,EAAI,EAAE,IAAM,EAAE,GAAG,OAAO,IAAM,EAAG,KAAK,MAAM,EAAI,GAAK,MAAM,SAAS,EAAG,GAC1E,IAAI,EAAI,WAAW,EAAG,GACtB,EAAE,KAAO,WACL,aAAa,EACjB,CACJ,GACJ,EAAG,GAAI,EAAE,cAAc,SAAyC,GAA/B,EAAI,EAAE,cAAc,WAAiB,YAAY,EAAE,cAAc,WAAY,GAAE,KAAO,WAAY,EAAE,QAAU,KAAO,GAAE,MAAO,EAAE,YAAc,EAAE,SAAU,EAAE,UAAW,EAAI,EAAE,aAAe,EAAE,UAAW,GAAI,EAAE,cAAc,UAAU,MAAQ,IAAK,GAAE,KAAO,QAAS,EAAE,WAAa,MAAQ,GAAE,MAChU,IAAI,GAAI,GAAI,EAAE,KAAK,WACf,IAAM,EAAE,GAAG,OAAO,CACd,KAAM,SAAS,EAAG,GACd,OAAO,EAAE,KAAM,EAAE,KAAM,EAAG,EAAG,EAAI,UAAU,OAC/C,EACA,WAAY,SAAS,GACjB,OAAO,KAAK,MAAK,WACb,EAAE,WAAW,KAAM,EACvB,GACJ,IACA,EAAE,OAAO,CACT,KAAM,SAAS,EAAG,EAAG,GACjB,IAAI,EAAG,EAAG,EAAI,EAAE,SAChB,GAAI,GAAK,IAAM,GAAK,IAAM,GAAK,IAAM,EAAG,cAAc,EAAE,cAAgB,EAAI,EAAE,KAAK,EAAG,EAAG,IAAM,IAAM,GAAK,EAAE,SAAS,KAAO,EAAI,EAAE,cAAe,EAAI,EAAE,UAAU,KAAO,EAAE,KAAK,MAAM,KAAK,KAAK,GAAK,QAAK,SAAU,IAAW,EAAM,GAAK,QAAS,GAAK,QAAU,EAAI,EAAE,IAAI,EAAG,KAAQ,OAAS,EAAI,EAAE,KAAK,KAAK,EAAG,IAAe,OAAT,EAAa,OAAS,EAAI,GAAK,QAAS,QAAK,KAAY,EAAI,EAAE,IAAI,EAAG,EAAG,IAAM,GAAK,EAAE,aAAa,EAAG,EAAI,IAAK,QAAU,EAAE,WAAW,EAAG,GACrc,EACA,WAAY,SAAS,EAAG,GACpB,IAAI,EAAG,EAAG,EAAI,EACV,EAAI,GAAK,EAAE,MAAM,GACrB,GAAI,GAAK,IAAM,EAAE,SACb,KAAO,EAAI,EAAE,MAAO,EAAI,EAAE,QAAQ,IAAM,EAAG,EAAE,KAAK,MAAM,KAAK,KAAK,KAAO,EAAE,IAAK,GAAK,EAAE,gBAAgB,EAC/G,EACA,UAAW,CACP,KAAM,CACF,IAAK,SAAS,EAAG,GACb,IAAI,EACJ,IAAK,EAAE,YAAc,UAAY,GAAK,EAAE,SAAS,EAAG,SAAU,OAAO,EAAI,EAAE,MAAO,EAAE,aAAa,OAAQ,GAAI,IAAM,EAAE,MAAQ,GAAI,CACrI,MAGR,GAAK,CACL,IAAK,SAAS,EAAG,EAAG,GAChB,OAAO,IAAO,EAAI,EAAE,WAAW,EAAG,GAAK,EAAE,aAAa,EAAG,GAAI,CACjE,GACD,EAAE,KAAK,EAAE,KAAK,MAAM,KAAK,OAAO,MAAM,SAAS,SAAS,EAAG,GAC1D,IAAI,EAAI,GAAE,IAAM,EAAE,KAAK,KACvB,GAAE,GAAK,SAAS,EAAG,EAAG,GAClB,IAAI,EAAG,EACP,OAAO,IAAM,EAAI,GAAE,GAAI,GAAE,GAAK,EAAG,EAAI,MAAQ,EAAE,EAAG,EAAG,GAAK,EAAE,cAAgB,KAAM,GAAE,GAAK,GAAI,CACjG,CACJ,IAAI,uCACJ,IAAM,EAAE,GAAG,OAAO,CACd,KAAM,SAAS,EAAG,GACd,OAAO,EAAE,KAAM,EAAE,KAAM,EAAG,EAAG,EAAI,UAAU,OAC/C,EACA,WAAY,SAAS,GACjB,OAAO,KAAK,MAAK,kBACN,KAAK,EAAE,QAAQ,IAAM,EAChC,GACJ,IACA,EAAE,OAAO,CACT,QAAS,CACL,IAAK,UACL,MAAO,aAEX,KAAM,SAAS,EAAG,EAAG,GACjB,IAAI,EAAG,EAAG,EAAI,EAAE,SAChB,GAAI,GAAK,IAAM,GAAK,IAAM,GAAK,IAAM,EAAG,OAAQ,IAAM,IAAM,EAAE,SAAS,MAAQ,EAAI,EAAE,QAAQ,IAAM,EAAG,EAAI,EAAE,UAAU,SAAK,IAAW,EAAI,GAAK,QAAS,QAAK,KAAY,EAAI,EAAE,IAAI,EAAG,EAAG,IAAM,EAAI,EAAE,GAAK,EAAI,GAAK,QAAS,GAAK,QAAU,EAAI,EAAE,IAAI,EAAG,IAAM,EAAI,EAAE,EACxQ,EACA,UAAW,CACP,SAAU,CACN,IAAK,SAAS,GACV,OAAO,EAAE,aAAa,aAAe,GAAG,KAAK,EAAE,WAAa,EAAE,KAAO,EAAE,UAAY,CACvF,MAGR,EAAE,cAAgB,EAAE,UAAU,SAAW,CACzC,IAAK,SAAS,GAEV,OADA,EAAI,EAAE,aACM,EAAE,YAAc,EAAE,WAAW,cAAe,IAC5D,IACA,EAAE,KAAK,CAAC,WAAY,WAAY,YAAa,cAAe,cAAe,UAAW,UAAW,SAAU,cAAe,oBAAoB,WAC9I,EAAE,QAAQ,KAAK,eAAiB,IACpC,IAAI,eACJ,IAAM,EAAE,GAAG,OAAO,CACd,SAAU,SAAS,GACf,IAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,iBAAmB,GAAK,EAC9C,EAAI,EACJ,EAAI,KAAK,OACb,GAAI,EAAE,WAAW,GAAI,OAAO,KAAK,MAAK,SAAS,GAC3C,EAAE,MAAM,SAAS,EAAE,KAAK,KAAM,EAAG,KAAK,WAC1C,IACA,GAAI,EACA,IAAK,GAAK,GAAK,IAAI,MAAM,IAAM,GAAI,EAAI,EAAG,IACtC,GAAI,EAAI,KAAO,EAAI,KAAK,IAAI,WAAa,EAAE,WAAa,IAAM,EAAE,UAAY,KAAK,QAAQ,GAAI,KAAO,KAAM,CACtG,IAAK,EAAI,EAAG,EAAI,EAAE,MAAO,EAAE,QAAQ,IAAM,EAAI,KAAO,IAAM,GAAK,EAAI,KACnE,EAAI,EAAE,KAAK,GAAI,EAAE,YAAc,IAAM,EAAE,UAAY,EACvD,CAAE,OAAO,IACrB,EACA,YAAa,SAAS,GAClB,IAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,IAAM,UAAU,QAAU,iBAAmB,GAAK,EACxE,EAAI,EACJ,EAAI,KAAK,OACb,GAAI,EAAE,WAAW,GAAI,OAAO,KAAK,MAAK,SAAS,GAC3C,EAAE,MAAM,YAAY,EAAE,KAAK,KAAM,EAAG,KAAK,WAC7C,IACA,GAAI,EACA,IAAK,GAAK,GAAK,IAAI,MAAM,IAAM,GAAI,EAAI,EAAG,IACtC,GAAI,EAAI,KAAO,EAAI,KAAK,IAAI,WAAa,EAAE,WAAa,IAAM,EAAE,UAAY,KAAK,QAAQ,GAAI,KAAO,IAAK,CACrG,IAAK,EAAI,EAAG,EAAI,EAAE,MACd,KAAO,GAAK,EAAE,QAAQ,IAAM,EAAI,MAAO,EAAI,EAAE,QAAQ,IAAM,EAAI,IAAK,KACxE,EAAI,EAAI,EAAE,KAAK,GAAK,GAAI,EAAE,YAAc,IAAM,EAAE,UAAY,EAChE,CAAE,OAAO,IACrB,EACA,YAAa,SAAS,EAAG,GACrB,IAAI,SAAW,EACf,MAAO,kBAAoB,GAAK,UAAY,EAAI,EAAI,KAAK,SAAS,GAAK,KAAK,YAAY,GAAK,KAAK,KAAK,EAAE,WAAW,GAAK,SAAS,GAC9H,EAAE,MAAM,YAAY,EAAE,KAAK,KAAM,EAAG,KAAK,UAAW,GAAI,EAC5D,EAAI,WACA,GAAI,UAAY,EACZ,IAAK,IAAI,EAAG,EAAI,EAAG,EAAI,EAAE,MAAO,EAAI,EAAE,MAAM,IAAM,GAAI,EAAI,EAAE,MAAO,EAAE,SAAS,GAAK,EAAE,YAAY,GAAK,EAAE,SAAS,QAChH,GAAK,GAAK,WAAa,IAAM,KAAK,WAAa,EAAE,IAAI,KAAM,gBAAiB,KAAK,WAAY,KAAK,WAAa,KAAK,YAAa,IAAO,GAAK,EAAE,IAAI,KAAM,kBAAoB,GACtL,EACJ,EACA,SAAU,SAAS,GACf,IAAK,IAAI,EAAI,IAAM,EAAI,IAAK,EAAI,EAAG,EAAI,KAAK,OAAQ,EAAI,EAAG,IACvD,GAAI,IAAM,KAAK,GAAG,UAAY,IAAM,IAAM,KAAK,GAAG,UAAY,KAAK,QAAQ,GAAI,KAAK,QAAQ,GAAI,OAAO,EAC3G,OAAO,CACX,IACA,OACJ,IAAM,EAAE,GAAG,OAAO,CACd,IAAK,SAAS,GACV,IAAI,EAAG,EAAG,EAAG,EAAI,KAAK,GACtB,OAAO,UAAU,QAAU,EAAI,EAAE,WAAW,GAAI,KAAK,MAAK,SAAS,GAC/D,IAAM,KAAK,WAAa,OAAS,EAAI,EAAI,EAAE,KAAK,KAAM,EAAG,EAAE,MAAM,OAAS,GAAK,EAAI,GAAK,iBAAmB,EAAI,GAAK,GAAK,EAAE,QAAQ,KAAO,EAAI,EAAE,IAAI,GAAG,SAAS,GAC5J,OAAO,MAAQ,EAAI,GAAK,EAAI,EAChC,MAAM,EAAI,EAAE,SAAS,KAAK,OAAS,EAAE,SAAS,KAAK,SAAS,iBAAmB,QAAS,QAAK,IAAW,EAAE,IAAI,KAAM,EAAG,WAAa,KAAK,MAAQ,GACrJ,KAAM,GAAK,EAAI,EAAE,SAAS,EAAE,OAAS,EAAE,SAAS,EAAE,SAAS,iBAAmB,QAAS,QAAK,KAAY,EAAI,EAAE,IAAI,EAAG,UAAY,EAAI,iBAAmB,EAAI,EAAE,OAAS,EAAE,QAAQ,GAAI,IAAM,MAAQ,EAAI,GAAK,OAAI,CACpN,IACA,EAAE,OAAO,CACT,SAAU,CACN,OAAQ,CACJ,IAAK,SAAS,GACV,IAAI,EAAI,EAAE,KAAK,KAAK,EAAG,SACvB,OAAO,MAAQ,EAAI,EAAI,EAAE,KAAK,EAAE,KAAK,GACzC,GAEJ,OAAQ,CACJ,IAAK,SAAS,GACV,IAAK,IAAI,EAAG,EAAI,EAAE,QAAS,EAAI,EAAE,cAAe,EAAI,eAAiB,EAAE,MAAQ,EAAI,EAAG,EAAI,EAAI,KAAO,GAAI,EAAI,EAAI,EAAI,EAAI,EAAE,OAAQ,EAAI,EAAI,EAAI,EAAI,EAAI,EAAI,EAAG,EAAI,EAAG,IACjK,OAAQ,EAAI,EAAE,IAAI,UAAY,IAAM,IAAM,EAAE,YAAc,EAAE,SAAW,OAAS,EAAE,aAAa,cAAgB,EAAE,WAAW,UAAY,EAAE,SAAS,EAAE,WAAY,aAAc,CAC3K,GAAI,EAAI,EAAE,GAAG,MAAO,EAAG,OAAO,EAC9B,EAAE,KAAK,EACX,CAAE,OAAO,CACjB,EACA,IAAK,SAAS,EAAG,GACb,IAAK,IAAI,EAAG,EAAG,EAAI,EAAE,QAAS,EAAI,EAAE,UAAU,GAAI,EAAI,EAAE,OAAQ,OAAO,EAAI,EAAE,IAAI,SAAW,GAAK,EAAE,QAAQ,EAAE,MAAO,MAAQ,GAAI,GAChI,OAAO,IAAM,EAAE,eAAiB,GAAI,CACxC,MAGR,EAAE,KAAK,CAAC,QAAS,aAAa,WAC9B,EAAE,SAAS,MAAQ,CACf,IAAK,SAAS,EAAG,GACb,OAAO,EAAE,QAAQ,GAAK,EAAE,QAAU,GAAK,EAAE,QAAQ,EAAE,GAAG,MAAO,QAAK,CACtE,GACD,EAAE,UAAY,EAAE,SAAS,MAAM,IAAM,SAAS,GAC7C,OAAO,OAAS,EAAE,aAAa,SAAW,KAAO,EAAE,KACvD,EACJ,IAAI,EAAE,KAAK,0MAA0M,MAAM,MAAM,SAAS,EAAG,GACzO,EAAE,GAAG,GAAK,SAAS,EAAG,GAClB,OAAO,EAAI,UAAU,OAAS,KAAK,GAAG,EAAG,KAAM,EAAG,GAAK,KAAK,QAAQ,EACxE,CACJ,IAAI,EAAE,GAAG,OAAO,CACZ,MAAO,SAAS,EAAG,GACf,OAAO,KAAK,WAAW,GAAG,WAAW,GAAK,EAC9C,EACA,KAAM,SAAS,EAAG,EAAG,GACjB,OAAO,KAAK,GAAG,EAAG,KAAM,EAAG,EAC/B,EACA,OAAQ,SAAS,EAAG,GAChB,OAAO,KAAK,IAAI,EAAG,KAAM,EAC7B,EACA,SAAU,SAAS,EAAG,EAAG,EAAG,GACxB,OAAO,KAAK,GAAG,EAAG,EAAG,EAAG,EAC5B,EACA,WAAY,SAAS,EAAG,EAAG,GACvB,OAAO,IAAM,UAAU,OAAS,KAAK,IAAI,EAAG,MAAQ,KAAK,IAAI,EAAG,GAAK,KAAM,EAC/E,IACA,EAAE,OACN,GAAK,KACT,EAAE,UAAY,SAAS,GACnB,OAAO,KAAK,MAAM,EAAI,GAC1B,EAAG,EAAE,SAAW,SAAS,GACrB,IAAI,EACJ,IAAK,GAAK,iBAAmB,EAAG,OAAO,KACvC,IACI,GAAI,IAAK,WAAW,gBAAgB,EAAG,WAC3C,CAAE,MAAO,GACL,OAAI,CACR,CACA,OAAO,IAAM,EAAE,qBAAqB,eAAe,QAAU,EAAE,MAAM,gBAAkB,GAAI,CAC/F,EACA,IAAI,GAAG,GAAG,GAAK,OACX,GAAK,gBACL,GAAK,6BACL,GAAK,iBACL,GAAK,QACL,GAAK,4DACL,GAAK,CAAC,EACN,GAAK,CAAC,EACN,GAAK,KAAK,OAAO,KACrB,IACI,GAAI,SAAS,IACjB,CAAE,MAAO,IACJ,GAAI,EAAE,cAAc,MAAM,KAAO,GAAI,GAAI,GAAE,IAChD,CAEA,SAAS,GAAG,GACR,OAAO,SAAS,EAAG,GACf,iBAAmB,IAAM,EAAI,EAAG,EAAI,KACpC,IAAI,EAAG,EAAI,EACP,EAAI,EAAE,cAAc,MAAM,IAAM,GACpC,GAAI,EAAE,WAAW,GACb,KAAO,EAAI,EAAE,MAAO,MAAQ,EAAE,IAAM,EAAI,EAAE,MAAM,IAAM,KAAM,EAAE,GAAK,EAAE,IAAM,IAAI,QAAQ,KAAO,EAAE,GAAK,EAAE,IAAM,IAAI,KAAK,EAC9H,CACJ,CAEA,SAAS,GAAG,EAAG,EAAG,EAAG,GACjB,IAAI,EAAI,CAAC,EACL,EAAI,IAAM,GAEd,SAAS,EAAE,GACP,IAAI,EACJ,OAAO,EAAE,IAAK,EAAI,EAAE,KAAK,EAAE,IAAM,IAAI,SAAS,EAAG,GAE7C,MAAO,iBADP,EAAI,EAAE,EAAG,EAAG,KACmB,GAAK,EAAE,GAAK,IAAM,EAAI,QAAK,GAAU,EAAE,UAAU,QAAQ,GAAI,EAAE,IAAI,EACtG,IAAI,CACR,CACA,OAAO,EAAE,EAAE,UAAU,MAAQ,EAAE,MAAQ,EAAE,IAC7C,CAEA,SAAS,GAAG,EAAG,GACX,IAAI,EAAG,EAAG,EAAI,EAAE,aAAa,aAAe,CAAC,EAC7C,IAAK,KAAK,OAAG,IAAW,EAAE,MAAQ,EAAE,GAAK,EAAI,EAAI,GAAK,CAAC,GAAG,GAAK,EAAE,IACjE,OAAO,GAAK,EAAE,QAAO,EAAI,EAAG,GAAI,CACpC,CACA,GAAI,GAAG,KAAK,GAAE,gBAAkB,GAAI,EAAE,OAAO,CACzC,OAAQ,EACR,aAAc,CAAC,EACf,KAAM,CAAC,EACP,aAAc,CACV,IAAK,GACL,KAAM,MACN,QAAS,4DAA4D,KAAK,GAAE,IAC5E,QAAQ,EACR,aAAa,EACb,OAAO,EACP,YAAa,mDACb,QAAS,CACL,IAAK,GACL,KAAM,aACN,KAAM,YACN,IAAK,4BACL,KAAM,qCAEV,SAAU,CACN,IAAK,MACL,KAAM,OACN,KAAM,QAEV,eAAgB,CACZ,IAAK,cACL,KAAM,eACN,KAAM,gBAEV,WAAY,CACR,SAAU,OACV,aAAa,EACb,YAAa,EAAE,UACf,WAAY,EAAE,UAElB,YAAa,CACT,KAAK,EACL,SAAS,IAGjB,UAAW,SAAS,EAAG,GACnB,OAAO,EAAI,GAAG,GAAG,EAAG,EAAE,cAAe,GAAK,GAAG,EAAE,aAAc,EACjE,EACA,cAAe,GAAG,IAClB,cAAe,GAAG,IAClB,KAAM,SAAS,EAAG,GACd,iBAAmB,IAAM,EAAI,EAAG,OAAI,GACpC,IAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAAE,UAAU,CAAC,EAAG,EAAI,GAAK,CAAC,GACnD,EAAI,EAAE,SAAW,EACjB,EAAI,EAAE,UAAY,EAAE,UAAY,EAAE,QAAU,EAAE,GAAK,EAAE,MACrD,EAAI,EAAE,WACN,EAAI,EAAE,UAAU,eAChB,EAAI,EAAE,YAAc,CAAC,EACrB,EAAI,CAAC,EACL,EAAI,CAAC,EACL,EAAI,EACJ,EAAI,WACJ,EAAI,CACA,WAAY,EACZ,kBAAmB,SAAS,GACxB,IAAI,EACJ,GAAI,IAAM,EAAG,CACT,IAAK,EACD,IAAK,EAAI,CAAC,EAAG,EAAI,GAAG,KAAK,IAAK,EAAE,EAAE,GAAG,eAAiB,EAAE,GAC5D,EAAI,EAAE,EAAE,cACZ,CACA,OAAO,MAAQ,EAAI,KAAO,CAC9B,EACA,sBAAuB,WACnB,OAAO,IAAM,EAAI,EAAI,IACzB,EACA,iBAAkB,SAAS,EAAG,GAC1B,IAAI,EAAI,EAAE,cACV,OAAO,IAAM,EAAI,EAAE,GAAK,EAAE,IAAM,EAAG,EAAE,GAAK,GAAI,IAClD,EACA,iBAAkB,SAAS,GACvB,OAAO,IAAM,EAAE,SAAW,GAAI,IAClC,EACA,WAAY,SAAS,GACjB,GAAI,EACA,GAAI,EAAI,EACJ,IAAK,IAAI,KAAK,EAAG,EAAE,GAAK,CAAC,EAAE,GAAI,EAAE,SAChC,EAAE,OAAO,EAAE,EAAE,SACtB,OAAO,IACX,EACA,MAAO,SAAS,GAEZ,OADA,EAAI,GAAK,EACF,GAAK,EAAE,MAAM,GAAI,EAAE,EAAG,GAAI,IACrC,GAER,GAAI,EAAE,QAAQ,GAAG,SAAW,EAAE,IAAK,EAAE,QAAU,EAAE,KAAM,EAAE,MAAQ,EAAE,KAAM,EAAE,MAAQ,GAAK,EAAE,KAAO,IAAK,IAAI,QAAQ,GAAI,IAAI,QAAQ,GAAI,GAAE,GAAK,MAAO,EAAE,KAAO,EAAE,QAAU,EAAE,MAAQ,EAAE,QAAU,EAAE,KAAM,EAAE,UAAY,EAAE,KAAK,EAAE,UAAY,KAAK,cAAc,MAAM,IAAM,CAAC,IAAK,MAAQ,EAAE,cAAgB,EAAI,GAAG,KAAK,EAAE,IAAI,eAAgB,EAAE,eAAiB,GAAK,EAAE,KAAO,GAAE,IAAM,EAAE,KAAO,GAAE,KAAO,EAAE,KAAO,UAAY,EAAE,GAAK,KAAO,WAAa,GAAE,KAAO,UAAY,GAAE,GAAK,KAAO,UAAW,EAAE,MAAQ,EAAE,aAAe,iBAAmB,EAAE,OAAS,EAAE,KAAO,EAAE,MAAM,EAAE,KAAM,EAAE,cAAe,GAAG,GAAI,EAAG,EAAG,GAAI,IAAM,EAAG,CAC7lB,IAAK,KAAM,EAAI,EAAE,SAAW,GAAK,EAAE,UAAY,EAAE,MAAM,QAAQ,aAAc,EAAE,KAAO,EAAE,KAAK,cAAe,EAAE,YAAc,GAAG,KAAK,EAAE,MAAO,EAAI,EAAE,IAAK,EAAE,aAAe,EAAE,OAAS,EAAI,EAAE,MAAQ,GAAG,KAAK,GAAK,IAAM,KAAO,EAAE,YAAa,EAAE,OAAO,IAAO,EAAE,QAAU,EAAE,IAAM,GAAG,KAAK,GAAK,EAAE,QAAQ,GAAI,OAAS,MAAQ,GAAK,GAAG,KAAK,GAAK,IAAM,KAAO,KAAO,OAAQ,EAAE,aAAe,EAAE,aAAa,IAAM,EAAE,iBAAiB,oBAAqB,EAAE,aAAa,IAAK,EAAE,KAAK,KAAO,EAAE,iBAAiB,gBAAiB,EAAE,KAAK,KAAM,EAAE,MAAQ,EAAE,aAAc,IAAO,EAAE,aAAe,EAAE,cAAgB,EAAE,iBAAiB,eAAgB,EAAE,aAAc,EAAE,iBAAiB,SAAU,EAAE,UAAU,IAAM,EAAE,QAAQ,EAAE,UAAU,IAAM,EAAE,QAAQ,EAAE,UAAU,KAAO,MAAQ,EAAE,UAAU,GAAK,KAAO,GAAK,WAAa,IAAM,EAAE,QAAQ,MAAO,EAAE,QAAS,EAAE,iBAAiB,EAAG,EAAE,QAAQ,IAC71B,GAAI,EAAE,cAAe,IAAO,EAAE,WAAW,KAAK,EAAG,EAAG,IAAM,IAAM,GAAI,OAAO,EAAE,QAC7E,IAAK,KAAK,EAAI,QAAS,CACf,QAAS,EACT,MAAO,EACP,SAAU,GACX,EAAE,GAAG,EAAE,IACd,GAAI,EAAI,GAAG,GAAI,EAAG,EAAG,GAAI,CACrB,EAAE,WAAa,EAAG,GAAK,EAAE,QAAQ,WAAY,CAAC,EAAG,IAAK,EAAE,OAAS,EAAI,EAAE,UAAY,EAAI,YAAW,WAC9F,EAAE,MAAM,UACZ,GAAG,EAAE,UACL,IACI,EAAI,EAAG,EAAE,KAAK,EAAG,EACrB,CAAE,MAAO,GACL,KAAM,EAAI,GAAI,MAAM,EACpB,GAAG,EAAG,EACV,CACJ,MAAO,GAAG,EAAG,eACjB,CACA,OAAO,EAEP,SAAS,EAAE,EAAG,EAAG,EAAG,GAChB,IAAI,EAAG,EAAG,EAAG,EAAI,EACjB,IAAM,IAAM,EAAI,EAAG,GAAK,aAAa,GAAI,OAAI,EAAQ,EAAI,GAAK,GAAI,EAAE,WAAa,EAAI,EAAI,EAAI,EAAG,EAAI,KAAO,GAAK,EAAI,KAAO,MAAQ,EAAG,IAAM,EAAI,EAAE,EAAG,EAAG,KACpJ,IAAK,IAAI,EAAG,EAAG,EAAG,EAAG,EAAI,EAAE,SAAU,EAAI,EAAE,UACvC,MAAQ,EAAE,IAAK,EAAE,aAAS,IAAW,IAAM,EAAI,EAAE,UAAY,EAAE,kBAAkB,iBACrF,GAAI,EACA,IAAK,KAAK,EACN,GAAI,EAAE,IAAM,EAAE,GAAG,KAAK,GAAI,CACtB,EAAE,QAAQ,GACV,KACJ,CAAE,GAAI,EAAE,KAAM,EAAG,EAAI,EAAE,OAC1B,CACD,IAAK,KAAK,EAAG,CACT,IAAK,EAAE,IAAM,EAAE,WAAW,EAAI,IAAM,EAAE,IAAK,CACvC,EAAI,EACJ,KACJ,CACA,EAAI,GAAK,CACb,CACA,EAAI,GAAK,CACb,CACA,OAAO,GAAK,IAAM,EAAE,IAAM,EAAE,QAAQ,GAAI,EAAE,SAAM,CACnD,EApB+I,CAoB7I,EAAG,EAAG,IAAK,EAAI,EAAE,EAAG,EAAG,EAAG,KACzB,IAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,CAAC,EACpB,EAAI,EAAE,UAAU,QACpB,GAAI,EAAE,GACF,IAAK,KAAK,EAAE,WAAY,EAAE,EAAE,eAAiB,EAAE,WAAW,GAC9D,IAAK,EAAI,EAAE,QAAS,GAChB,GAAI,EAAE,eAAe,KAAO,EAAE,EAAE,eAAe,IAAM,IAAK,GAAK,GAAK,EAAE,aAAe,EAAI,EAAE,WAAW,EAAG,EAAE,WAAY,EAAI,EAAG,EAAI,EAAE,QAChI,GAAI,MAAQ,EAAG,EAAI,OACd,GAAI,MAAQ,GAAK,IAAM,EAAG,CACnC,KAAM,EAAI,EAAE,EAAI,IAAM,IAAM,EAAE,KAAO,IACjC,IAAK,KAAK,EACN,IAAI,EAAI,EAAE,MAAM,MAAQ,KAAO,IAAM,EAAI,EAAE,EAAI,IAAM,EAAE,KAAO,EAAE,KAAO,EAAE,KAAM,EAC3E,IAAO,EAAI,EAAI,EAAE,IAAK,IAAO,EAAE,KAAO,EAAI,EAAE,GAAI,EAAE,QAAQ,EAAE,KAC5D,KACJ,CAAE,IAAI,IAAO,EACjB,GAAI,GAAK,EAAE,OAAQ,EAAI,EAAE,QACpB,IACD,EAAI,EAAE,EACV,CAAE,MAAO,GACL,MAAO,CACH,MAAO,cACP,MAAO,EAAI,EAAI,sBAAwB,EAAI,OAAS,EAE5D,CACR,CACA,MAAO,CACH,MAAO,UACP,KAAM,EAEb,EA7BiB,CA6Bf,EAAG,EAAG,EAAG,GAAI,GAAK,EAAE,cAAgB,EAAI,EAAE,kBAAkB,oBAAsB,EAAE,aAAa,GAAK,GAAI,EAAI,EAAE,kBAAkB,WAAa,EAAE,KAAK,GAAK,GAAI,MAAQ,GAAK,SAAW,EAAE,KAAO,EAAI,YAAc,MAAQ,EAAI,EAAI,eAAiB,EAAI,EAAE,MAAO,EAAI,EAAE,KAAM,IAAM,EAAI,EAAE,UAAY,EAAI,GAAI,IAAM,KAAO,EAAI,QAAS,EAAI,KAAO,EAAI,IAAK,EAAE,OAAS,EAAG,EAAE,YAAc,GAAK,GAAK,GAAI,EAAI,EAAE,YAAY,EAAG,CAAC,EAAG,EAAG,IAAM,EAAE,WAAW,EAAG,CAAC,EAAG,EAAG,IAAK,EAAE,WAAW,GAAI,OAAI,EAAQ,GAAK,EAAE,QAAQ,EAAI,cAAgB,YAAa,CAAC,EAAG,EAAG,EAAI,EAAI,IAAK,EAAE,SAAS,EAAG,CAAC,EAAG,IAAK,KAAO,EAAE,QAAQ,eAAgB,CAAC,EAAG,MAAO,EAAE,QAAU,EAAE,MAAM,QAAQ,YAC3oB,CACJ,EACA,QAAS,SAAS,EAAG,EAAG,GACpB,OAAO,EAAE,IAAI,EAAG,EAAG,EAAG,OAC1B,EACA,UAAW,SAAS,EAAG,GACnB,OAAO,EAAE,IAAI,OAAG,EAAQ,EAAG,SAC/B,IACA,EAAE,KAAK,CAAC,MAAO,SAAS,SAAS,EAAG,GACpC,EAAE,GAAK,SAAS,EAAG,EAAG,EAAG,GACrB,OAAO,EAAE,WAAW,KAAO,EAAI,GAAK,EAAG,EAAI,EAAG,OAAI,GAAS,EAAE,KAAK,CAC9D,IAAK,EACL,KAAM,EACN,SAAU,EACV,KAAM,EACN,QAAS,GAEjB,CACJ,IAAI,EAAE,KAAK,CAAC,YAAa,WAAY,eAAgB,YAAa,cAAe,aAAa,SAAS,EAAG,GACtG,EAAE,GAAG,GAAK,SAAS,GACf,OAAO,KAAK,GAAG,EAAG,EACtB,CACJ,IAAI,EAAE,SAAW,SAAS,GACtB,OAAO,EAAE,KAAK,CACV,IAAK,EACL,KAAM,MACN,SAAU,SACV,OAAO,EACP,QAAQ,EACR,QAAQ,GAEhB,EAAG,EAAE,GAAG,OAAO,CACX,QAAS,SAAS,GACd,IAAI,EACJ,OAAO,EAAE,WAAW,GAAK,KAAK,MAAK,SAAS,GACxC,EAAE,MAAM,QAAQ,EAAE,KAAK,KAAM,GACjC,KAAM,KAAK,KAAO,EAAI,EAAE,EAAG,KAAK,GAAG,eAAe,GAAG,GAAG,OAAM,GAAK,KAAK,GAAG,YAAc,EAAE,aAAa,KAAK,IAAK,EAAE,KAAI,WACpH,IAAK,IAAI,EAAI,KAAM,EAAE,mBAAoB,EAAI,EAAE,kBAC/C,OAAO,CACX,IAAG,OAAO,OAAQ,KACtB,EACA,UAAW,SAAS,GAChB,OAAO,KAAK,KAAK,EAAE,WAAW,GAAK,SAAS,GACxC,EAAE,MAAM,UAAU,EAAE,KAAK,KAAM,GACnC,EAAI,WACA,IAAI,EAAI,EAAE,MACN,EAAI,EAAE,WACV,EAAE,OAAS,EAAE,QAAQ,GAAK,EAAE,OAAO,EACvC,EACJ,EACA,KAAM,SAAS,GACX,IAAI,EAAI,EAAE,WAAW,GACrB,OAAO,KAAK,MAAK,SAAS,GACtB,EAAE,MAAM,QAAQ,EAAI,EAAE,KAAK,KAAM,GAAK,EAC1C,GACJ,EACA,OAAQ,WACJ,OAAO,KAAK,SAAS,MAAK,WACtB,EAAE,SAAS,KAAM,SAAW,EAAE,MAAM,YAAY,KAAK,WACzD,IAAG,KACP,IACA,EAAE,KAAK,QAAQ,OAAS,SAAS,GACjC,OAAO,EAAE,aAAe,GAAK,EAAE,cAAgB,CACnD,EAAG,EAAE,KAAK,QAAQ,QAAU,SAAS,GACjC,OAAQ,EAAE,KAAK,QAAQ,OAAO,EAClC,EACA,IAAI,GAAK,OACL,GAAK,QACL,GAAK,SACL,GAAK,wCACL,GAAK,qCACT,EAAE,MAAQ,SAAS,EAAG,GAClB,SAAS,EAAE,EAAG,GACV,EAAI,EAAE,WAAW,GAAK,IAAM,MAAQ,EAAI,GAAK,EAAG,EAAE,EAAE,QAAU,mBAAmB,GAAK,IAAM,mBAAmB,EACnH,CACA,IAAI,EAAG,EAAI,GACX,QAAI,IAAW,IAAM,EAAI,EAAE,cAAgB,EAAE,aAAa,aAAc,EAAE,QAAQ,IAAM,EAAE,SAAW,EAAE,cAAc,GAAI,EAAE,KAAK,GAAG,WAC/H,EAAE,KAAK,KAAM,KAAK,MACtB,SAEI,IAAK,KAAK,GAAK,SAAS,EAAE,EAAG,EAAG,EAAG,GAC/B,GAAI,EAAE,QAAQ,GAAI,EAAE,KAAK,GAAG,SAAS,EAAG,GACpC,GAAK,GAAG,KAAK,GAAK,EAAE,EAAG,GAAK,EAAE,EAAI,KAAO,iBAAmB,EAAI,EAAI,IAAM,IAAK,EAAG,EAAG,EACzF,SACK,GAAI,GAAK,WAAa,EAAE,KAAK,GAAI,EAAE,EAAG,QAEvC,IAAK,IAAI,KAAK,EAAG,EAAE,EAAI,IAAM,EAAI,IAAK,EAAE,GAAI,EAAG,EACvD,CAPe,CAOb,EAAG,EAAE,GAAI,EAAG,GAClB,OAAO,EAAE,KAAK,KAAK,QAAQ,GAAI,IACnC,EAAG,EAAE,GAAG,OAAO,CACX,UAAW,WACP,OAAO,EAAE,MAAM,KAAK,iBACxB,EACA,eAAgB,WACZ,OAAO,KAAK,KAAI,WACZ,IAAI,EAAI,EAAE,KAAK,KAAM,YACrB,OAAO,EAAI,EAAE,UAAU,GAAK,IAChC,IAAG,QAAO,WACN,IAAI,EAAI,KAAK,KACb,OAAO,KAAK,OAAS,EAAE,MAAM,GAAG,cAAgB,GAAG,KAAK,KAAK,YAAc,GAAG,KAAK,KAAO,KAAK,UAAY,EAAG,KAAK,GACvH,IAAG,KAAI,SAAS,EAAG,GACf,IAAI,EAAI,EAAE,MAAM,MAChB,OAAO,MAAQ,EAAI,KAAO,EAAE,QAAQ,GAAK,EAAE,IAAI,GAAG,SAAS,GACvD,MAAO,CACH,KAAM,EAAE,KACR,MAAO,EAAE,QAAQ,GAAI,QAE7B,IAAK,CACD,KAAM,EAAE,KACR,MAAO,EAAE,QAAQ,GAAI,QAE7B,IAAG,KACP,IACA,EAAE,aAAa,IAAM,WACrB,IACI,OAAO,IAAI,cACf,CAAE,MAAO,GAAI,CACjB,EACA,IAAI,GAAK,EACL,GAAK,CAAC,EACN,GAAK,CACD,EAAG,IACH,KAAM,KAEV,GAAI,EAAE,aAAa,MACnB,IAAM,EAAE,eAAiB,EAAE,GAAG,GAAG,UAAU,WACvC,IAAK,IAAI,KAAK,GAAI,GAAG,IACzB,IAAI,EAAE,OAAS,IAAK,oBAAqB,GAAG,EAAE,KAAO,KAAM,GAAG,EAAE,eAAc,SAAS,GACnF,IAAI,EACJ,OAAO,EAAE,MAAQ,KAAM,EAAE,YAAc,CACnC,KAAM,SAAS,EAAG,GACd,IAAI,EAAG,EAAI,EAAE,MACT,IAAM,GACV,GAAI,EAAE,KAAK,EAAE,KAAM,EAAE,IAAK,EAAE,MAAO,EAAE,SAAU,EAAE,UAAW,EAAE,UAC1D,IAAK,KAAK,EAAE,UAAW,EAAE,GAAK,EAAE,UAAU,GAC9C,IAAK,KAAK,EAAE,UAAY,EAAE,kBAAoB,EAAE,iBAAiB,EAAE,UAAW,EAAE,aAAe,EAAE,sBAAwB,EAAE,oBAAsB,kBAAmB,EAAG,EAAE,iBAAiB,EAAG,EAAE,IAC/L,EAAI,SAAS,GACT,OAAO,WACH,WAAa,GAAG,GAAI,EAAI,EAAE,OAAS,EAAE,QAAU,KAAM,UAAY,EAAI,EAAE,QAAU,UAAY,EAAI,EAAE,EAAE,OAAQ,EAAE,YAAc,EAAE,GAAG,EAAE,SAAW,EAAE,OAAQ,EAAE,WAAY,iBAAmB,EAAE,aAAe,CACvM,KAAM,EAAE,mBACR,EAAQ,EAAE,yBAClB,CACJ,EAAG,EAAE,OAAS,IAAK,EAAE,QAAU,EAAE,SAAU,EAAI,GAAG,GAAK,EAAE,SACzD,IACI,EAAE,KAAK,EAAE,YAAc,EAAE,MAAQ,KACrC,CAAE,MAAO,GACL,GAAI,EAAG,MAAM,CACjB,CACJ,EACA,MAAO,WACH,GAAK,GACT,QACA,CACR,IAAI,EAAE,UAAU,CACZ,QAAS,CACL,OAAQ,6FAEZ,SAAU,CACN,OAAQ,uBAEZ,WAAY,CACR,cAAe,SAAS,GACpB,OAAO,EAAE,WAAW,GAAI,CAC5B,KAEJ,EAAE,cAAc,UAAU,SAAS,QACnC,IAAW,EAAE,QAAU,EAAE,OAAQ,GAAK,EAAE,cAAgB,EAAE,KAAO,MACrE,IAAI,EAAE,cAAc,UAAU,SAAS,GACnC,IAAI,EAAG,EACP,GAAI,EAAE,YAAa,MAAO,CACtB,KAAM,SAAS,EAAG,GACd,EAAI,EAAE,YAAY,KAAK,CACnB,OAAO,EACP,QAAS,EAAE,cACX,IAAK,EAAE,MACR,GAAG,aAAc,EAAI,SAAS,GAC7B,EAAE,SAAU,EAAI,KAAM,GAAK,EAAE,UAAY,EAAE,KAAO,IAAM,IAAK,EAAE,KACnE,GAAI,EAAE,KAAK,YAAY,EAAE,GAC7B,EACA,MAAO,WACH,GAAK,GACT,EAER,IAAI,IACJ,GAAK,oBACL,IAAM,EAAE,UAAU,CACd,MAAO,WACP,cAAe,WACX,IAAI,EAAI,GAAG,OAAS,EAAE,QAAU,IAAM,KACtC,OAAO,KAAK,IAAK,EAAI,CACzB,IACA,EAAE,cAAc,cAAc,SAAS,EAAG,EAAG,GAC7C,IAAI,EAAG,EAAG,EAAG,GAAI,IAAO,EAAE,QAAU,GAAG,KAAK,EAAE,KAAO,MAAQ,iBAAmB,EAAE,QAAU,EAAE,aAAe,IAAI,QAAQ,sCAAwC,GAAG,KAAK,EAAE,OAAS,QACpL,OAAO,GAAK,UAAY,EAAE,UAAU,IAAM,EAAI,EAAE,cAAgB,EAAE,WAAW,EAAE,eAAiB,EAAE,gBAAkB,EAAE,cAAe,EAAI,EAAE,GAAK,EAAE,GAAG,QAAQ,GAAI,KAAO,IAAK,IAAO,EAAE,QAAU,EAAE,MAAQ,GAAG,KAAK,EAAE,KAAO,IAAM,KAAO,EAAE,MAAQ,IAAM,GAAI,EAAE,WAAW,eAAiB,WACtR,OAAO,GAAK,EAAE,MAAM,EAAI,mBAAoB,EAAE,EAClD,EAAG,EAAE,UAAU,GAAK,OAAQ,EAAI,EAAE,GAAI,EAAE,GAAK,WACzC,EAAI,SACR,EAAG,EAAE,QAAO,WACR,EAAE,GAAK,EAAG,EAAE,KAAO,EAAE,cAAgB,EAAE,cAAe,GAAG,KAAK,IAAK,GAAK,EAAE,WAAW,IAAM,EAAE,EAAE,IAAK,EAAI,OAAI,CAChH,IAAI,eAAY,CACpB,IAAI,EAAE,UAAY,SAAS,EAAG,EAAG,GAC7B,IAAK,GAAK,iBAAmB,EAAG,OAAO,KACvC,kBAAoB,IAAM,EAAI,EAAG,GAAI,GAAK,EAAI,GAAK,EACnD,IAAI,EAAI,EAAE,KAAK,GACX,GAAK,GAAK,GACd,OAAO,EAAI,CAAC,EAAE,cAAc,EAAE,MAAQ,EAAI,EAAE,cAAc,CAAC,GAAI,EAAG,GAAI,GAAK,EAAE,QAAU,EAAE,GAAG,SAAU,EAAE,MAAM,GAAI,EAAE,YACxH,EAAG,EAAE,GAAG,MACR,IAAM,EAAE,GAAG,KAAO,SAAS,EAAG,EAAG,GAC7B,IAAI,EAAG,EAAG,EAAG,EAAG,EAChB,MAAO,iBAAmB,GAAK,GAAK,GAAG,MAAM,KAAM,YAAc,EAAI,KAAM,IAAM,EAAI,EAAE,QAAQ,QAAU,EAAI,EAAE,KAAK,EAAE,MAAM,IAAK,EAAI,EAAE,MAAM,EAAG,IAAK,EAAE,WAAW,IAAM,EAAI,EAAG,OAAI,GAAU,GAAK,iBAAmB,IAAM,EAAI,QAAS,EAAI,EAAE,QAAU,EAAE,KAAK,CAC3P,IAAK,EACL,KAAM,EACN,SAAU,OACV,KAAM,IACP,MAAK,SAAS,GACb,EAAI,UAAW,EAAE,KAAK,EAAI,EAAE,SAAS,OAAO,EAAE,UAAU,IAAI,KAAK,GAAK,EAC1E,IAAG,SAAS,GAAK,SAAS,EAAG,GACzB,EAAE,KAAK,EAAG,GAAK,CAAC,EAAE,aAAc,EAAG,GACvC,GAAI,KACR,EAAG,EAAE,KAAK,QAAQ,SAAW,SAAS,GAClC,OAAO,EAAE,KAAK,EAAE,QAAQ,SAAS,GAC7B,OAAO,IAAM,EAAE,IACnB,IAAG,MACP,EAAG,EAAE,SAAS,iBAElB,SAAS,GAAG,GACR,OAAO,EAAE,SAAS,GAAK,EAAI,IAAM,EAAE,UAAY,EAAE,WACrD,CACA,EAAE,OAAS,CACP,UAAW,SAAS,EAAG,EAAG,GACtB,IAAI,EAAG,EAAG,EAAG,EAAG,EAAI,EAAE,IAAI,EAAG,YACzB,EAAI,EAAE,GACN,EAAI,CAAC,EACT,WAAa,IAAM,EAAE,MAAM,SAAW,YAAa,EAAI,EAAE,SAAU,EAAI,EAAE,IAAI,EAAG,OAAQ,EAAI,EAAE,IAAI,EAAG,QAAS,GAAK,aAAe,GAAK,UAAY,KAAO,GAAK,EAAI,GAAG,QAAQ,SAAW,GAAK,EAAI,EAAE,YAAY,IAAK,EAAE,OAAS,EAAI,WAAW,IAAM,EAAG,WAAW,IAAM,GAAI,OAAS,EAAI,EAAE,WAAW,GAAK,EAAE,KAAK,EAAG,EAAG,GAAK,GAAG,MAAQ,EAAE,IAAM,EAAE,IAAM,EAAE,IAAM,GAAI,MAAQ,EAAE,OAAS,EAAE,KAAO,EAAE,KAAO,EAAE,KAAO,GAAI,UAAW,EAAI,EAAE,MAAM,KAAK,EAAG,GAAK,EAAE,IAAI,EACrc,GACD,EAAE,GAAG,OAAO,CACX,OAAQ,SAAS,GACb,IAAI,EAAG,EAAG,EAAG,EACb,OAAO,UAAU,YAAS,IAAW,EAAI,KAAO,KAAK,MAAK,SAAS,GAC/D,EAAE,OAAO,UAAU,KAAM,EAAG,EAChC,KAAM,EAAI,CACN,IAAK,EACL,KAAM,IACN,GAAK,EAAI,KAAK,KAAO,EAAE,gBAAkB,EAAI,EAAE,gBAAiB,EAAE,SAAS,EAAG,WAAa,EAAE,uBAAyB,IAAM,EAAI,EAAE,yBAA0B,EAAI,GAAG,GAAI,CACvK,IAAK,EAAE,IAAM,EAAE,YAAc,EAAE,UAC/B,KAAM,EAAE,KAAO,EAAE,YAAc,EAAE,aAChC,QAAK,EACd,EACA,SAAU,WACN,IAAI,EAAG,EAAG,EAAG,EACb,GAAI,KAAK,GAAI,OAAO,EAAI,KAAK,GAAI,EAAI,CACjC,IAAK,EACL,KAAM,GACP,UAAY,EAAE,IAAI,EAAG,YAAc,EAAI,EAAE,yBAA2B,EAAI,KAAK,eAAgB,EAAI,KAAK,UAAW,EAAI,EAAE,SAAS,EAAE,GAAI,QAAU,EAAI,EAAE,UAAU,KAAO,EAAE,IAAI,EAAE,GAAI,kBAAkB,GAAK,EAAE,MAAQ,EAAE,IAAI,EAAE,GAAI,mBAAmB,IAAM,CACxP,IAAK,EAAE,IAAM,EAAE,IAAM,EAAE,IAAI,EAAG,aAAa,GAC3C,KAAM,EAAE,KAAO,EAAE,KAAO,EAAE,IAAI,EAAG,cAAc,GAEvD,EACA,aAAc,WACV,OAAO,KAAK,KAAI,WACZ,IAAK,IAAI,EAAI,KAAK,cAAgB,GAAI,IAAM,EAAE,SAAS,EAAG,SAAW,WAAa,EAAE,IAAI,EAAG,aAAc,EAAI,EAAE,aAC/G,OAAO,GAAK,EAChB,GACJ,IACA,EAAE,KAAK,CACP,WAAY,cACZ,UAAW,gBACZ,SAAS,EAAG,GACX,IAAI,EAAI,gBAAkB,EAC1B,EAAE,GAAG,GAAK,SAAS,GACf,OAAO,EAAE,MAAM,SAAS,EAAG,EAAG,GAC1B,IAAI,EAAI,GAAG,GACX,YAAO,IAAW,EAAI,EAAI,EAAE,GAAK,EAAE,QAAU,EAAI,EAAE,SAAS,EAAI,EAAE,YAAc,EAAG,EAAI,EAAI,EAAE,aAAe,EAAE,GAAK,EACvH,GAAG,EAAG,EAAG,UAAU,OAAQ,KAC/B,CACJ,IAAI,EAAE,KAAK,CAAC,MAAO,SAAS,SAAS,EAAG,GACpC,EAAE,SAAS,GAAK,GAAG,EAAE,eAAe,SAAS,EAAG,GAC5C,OAAO,GAAK,EAAI,GAAE,EAAG,GAAI,GAAG,KAAK,GAAK,EAAE,GAAG,WAAW,GAAK,KAAO,QAAK,CAC3E,GACJ,IAAI,EAAE,KAAK,CACP,OAAQ,SACR,MAAO,UACR,SAAS,EAAG,GACX,EAAE,KAAK,CACH,QAAS,QAAU,EACnB,QAAS,EACT,GAAI,QAAU,IACf,SAAS,EAAG,GACX,EAAE,GAAG,GAAK,SAAS,EAAG,GAClB,IAAI,EAAI,UAAU,SAAW,GAAK,kBAAoB,GAClD,EAAI,KAAM,IAAO,IAAK,IAAO,EAAI,SAAW,UAChD,OAAO,EAAE,MAAM,SAAS,EAAG,EAAG,GAC1B,IAAI,EACJ,OAAO,EAAE,SAAS,GAAK,EAAE,SAAS,gBAAgB,SAAW,GAAK,IAAM,EAAE,UAAY,EAAI,EAAE,gBAAiB,KAAK,IAAI,EAAE,KAAK,SAAW,GAAI,EAAE,SAAW,GAAI,EAAE,KAAK,SAAW,GAAI,EAAE,SAAW,GAAI,EAAE,SAAW,UAAO,IAAW,EAAI,EAAE,IAAI,EAAG,EAAG,GAAK,EAAE,MAAM,EAAG,EAAG,EAAG,EAC7Q,GAAG,EAAG,EAAI,OAAI,EAAQ,EAAG,KAC7B,CACJ,GACJ,IAAI,EAAE,GAAG,KAAO,WACZ,OAAO,KAAK,MAChB,EAAG,EAAE,GAAG,QAAU,EAAE,GAAG,QAAS,mBAAqB,QAAU,OAAO,KAAO,OAAO,SAAU,IAAI,WAC9F,OAAO,CACX,IACA,IAAI,GAAK,EAAE,OACP,GAAK,EAAE,EACX,OAAO,EAAE,WAAa,SAAS,GAC3B,OAAO,EAAE,IAAM,IAAM,EAAE,EAAI,IAAK,GAAK,EAAE,SAAW,IAAM,EAAE,OAAS,IAAK,CAC5E,SAAU,GAAK,IAAM,EAAE,OAAS,EAAE,EAAI,GAAI,CAC9C,IAAI,CAAC,IACD,mBAAqB,QAAU,OAAO,IAAM,OAAO,CAAC,UAAW,GAAK,iBAAmB,QAAU,EAAE,QAAQ,WAAa,EAAE,OAC7H,EAFG,EAED,SAAS,GACR,IAAI,EAAI,MAER,SAAS,EAAE,GACP,OAAO,EAAE,IAAM,EAAI,mBAAmB,EAC1C,CAEA,SAAS,EAAE,EAAG,GAOV,OANA,EAAI,EAAE,IAAM,EAAI,CAAC,IACb,IAAM,EAAE,QAAQ,OAAS,EAAI,EAAE,MAAM,GAAI,GAAG,QAAQ,OAAQ,KAAK,QAAQ,QAAS,OAClF,IACI,OAAO,EAAI,mBAAmB,EAAE,QAAQ,EAAG,MAAO,EAAE,KAAO,KAAK,MAAM,GAAK,CAC/E,CAAE,MAAO,GAAI,CAChB,EALe,CAKb,GACI,EAAE,WAAW,GAAK,EAAE,GAAK,CACpC,CACA,IAAI,EAAI,EAAE,OAAS,SAAS,EAAG,EAAG,GAC9B,IAAI,EAAG,EACP,QAAI,IAAW,IAAM,EAAE,WAAW,GAAI,MAAO,iBAAmB,EAAI,EAAE,OAAO,CAAC,EAAG,EAAE,SAAU,IAAI,UAAY,EAAI,EAAE,SAAU,EAAI,EAAE,QAAU,IAAI,MAAM,SAAS,EAAI,MAAQ,IAAK,SAAS,OAAS,CAAC,EAAE,GAAI,KAAM,EAAI,EAAG,EAAE,EAAE,KAAO,KAAK,UAAU,GAAK,OAAO,KAAM,EAAE,QAAU,aAAe,EAAE,QAAQ,cAAgB,GAAI,EAAE,KAAO,UAAY,EAAE,KAAO,GAAI,EAAE,OAAS,YAAc,EAAE,OAAS,GAAI,EAAE,OAAS,WAAa,IAAI,KAAK,IACva,IAAK,IAAI,EAAI,OAAI,EAAS,CAAC,EAAG,EAAI,SAAS,OAAS,SAAS,OAAO,MAAM,MAAQ,GAAI,EAAI,EAAG,EAAI,EAAE,OAAQ,EAAI,EAAG,IAAK,CACnH,IACI,GAAK,GADL,EAAI,EAAE,GAAG,MAAM,MACJ,QAAS,EAAE,IAAM,EAAI,mBAAmB,IACnD,EAAI,EAAE,KAAK,KACf,GAAI,GAAK,IAAM,EAAG,CACd,EAAI,EAAE,EAAG,GACT,KACJ,CACA,QAAK,KAAY,EAAI,EAAE,MAAQ,EAAE,GAAK,EAC1C,CACA,OAAO,CACX,EACA,EAAE,SAAW,CAAC,EAAG,EAAE,aAAe,SAAS,EAAG,GAC1C,YAAO,IAAW,EAAE,OAAO,KAAO,EAAE,OAAO,EAAG,GAAI,EAAE,OAAO,CAAC,EAAG,EAAG,CAC9D,SAAU,MACR,EAAE,OAAO,GACnB,CACJ,IAAI,oBAAsB,OAAQ,MAAM,IAAI,MAAM,0CACtD,IAAI,iBAEJ,SAAS,SAAS,GACd,OAAQ,MAAM,WAAW,KAAO,SAAS,EAC7C,CAEA,SAAS,SAAS,EAAG,GACjB,OAAO,KAAK,MAAM,KAAK,UAAY,EAAI,EAAI,GAAK,EACpD,CAEA,SAAS,gBAAgB,EAAG,EAAG,EAAG,EAAG,GACjC,EAAE,6BAA6B,YAAY,GAAI,EAAE,sBAAsB,KAAK,GAAI,EAAE,cAAc,QAAQ,CACpG,UAAW,EAAE,iBAAiB,SAAS,KACxC,QAAS,OAAO,QAAQ,UAAU,CACjC,KAAM,YACN,YAAa,EACb,aAAc,EACd,KAAM,GACP,UAAY,EAAI,YAAc,EAAG,IAAM,EAAI,UAAY,EAAI,iBAAkB,SAAS,MAAQ,UAAY,EAAI,YAAc,CACnI,CAEA,SAAS,UAAU,EAAG,GAClB,EAAI,EAAE,IAAM,EAAI,wBAAwB,YAAY,sBAAsB,SAAS,gBAAgB,KAAK,IAAM,EAAE,uBAAuB,YAAY,sBAAsB,SAAS,gBAAgB,KAAK,GAAI,EAAE,cAAc,QAAQ,CAC/N,UAAW,EAAE,uBAAuB,SAAS,KAC9C,QACP,CAEA,SAAS,YAAY,EAAG,GACpB,EAAI,EAAE,IAAM,EAAI,wBAAwB,YAAY,qBAAqB,SAAS,iBAAiB,KAAK,IAAM,EAAE,uBAAuB,YAAY,qBAAqB,SAAS,iBAAiB,KAAK,GAAI,EAAE,cAAc,QAAQ,CAC/N,UAAW,EAAE,uBAAuB,SAAS,KAC9C,QACP,CAEA,SAAS,YAAY,GACjB,EAAE,EAAI,WAAW,KAAK,YAAY,EACtC,CAEA,SAAS,WAAW,GAChB,EAAE,EAAI,WAAW,KAAK,YAAY,EACtC,CAEA,SAAS,cAAc,GACnB,OAAO,EAAE,MAAM,iBACnB,CAEA,SAAS,iBAAiB,GACtB,GAAI,EAAE,MAAM,oCAAsC,IAAM,EAAI,EAAE,SAAW,GAAK,GAAI,MAAO,IAC7F,CAEA,SAAS,iBAAiB,GACtB,GAAI,IAAM,EAAI,EAAE,SAAW,GAAK,IAAK,MAAO,IAChD,CAEA,SAAS,aAAa,GAClB,EAAE,IAAI,0CAA2C,CAC7C,KAAM,eACN,IAAK,IACN,MAAK,SAAS,GACb,EAAE,oBAAoB,KAAK,EAC/B,GACJ,CAEA,SAAS,aAAa,EAAG,GACrB,EAAE,KAAK,0CAA2C,CAC9C,KAAM,eACN,IAAK,EACL,IAAK,EACL,GAAG,IAAK,MAAM,WAEtB,CAEA,SAAS,iBACL,IAAI,EAAI,EAAE,cAAc,OACxB,EAAE,KAAK,CACH,gBAAiB,MACjB,WAAY,WACZ,YAAa,YACb,gBAAiB,MACjB,iBAAkB,MAClB,gBAAiB,MACjB,oBAAqB,OACrB,oBAAqB,OACrB,gBAAiB,MACjB,iBAAkB,MAClB,eAAgB,MAChB,gBAAiB,MACjB,eAAgB,MAChB,kBAAmB,MACnB,kBAAmB,MACnB,eAAgB,MAChB,gBAAiB,MACjB,WAAY,KACZ,iBAAkB,MAClB,aAAc,MACd,gBAAiB,MACjB,aAAc,MACd,gBAAiB,MACjB,eAAgB,MAChB,kBAAmB,MACnB,iBAAkB,MAClB,UAAW,KACX,kBAAmB,OACnB,kBAAmB,OACnB,cAAe,OACf,gBAAiB,OACjB,mBAAoB,MACpB,eAAgB,MAChB,iBAAkB,MAClB,kBAAmB,MACnB,eAAgB,MAChB,aAAc,MACd,aAAc,MACd,cAAe,MACf,eAAgB,MAChB,cAAe,MACf,mBAAoB,MACpB,kBAAmB,MACnB,WAAY,KACZ,mBAAoB,MACpB,qBAAsB,OACtB,mBAAoB,MACpB,mBAAoB,MACpB,oBAAqB,MACrB,iBAAkB,MAClB,kBAAmB,MACnB,eAAgB,MAChB,uBAAwB,OACxB,cAAe,MACf,cAAe,MACf,aAAc,MACd,gBAAiB,MACjB,gBAAiB,MACjB,cAAe,MACf,eAAgB,MAChB,eAAgB,MAChB,eAAgB,MAChB,eAAgB,MAChB,cAAe,MACf,gBAAiB,MACjB,eAAgB,MAChB,gBAAiB,MACjB,gBAAiB,MACjB,eAAgB,MAChB,eAAgB,MAChB,gBAAiB,MACjB,aAAc,MACd,gBAAiB,MACjB,aAAc,MACd,cAAe,MACf,eAAgB,MAChB,gBAAiB,MACjB,eAAgB,MAChB,cAAe,MACf,cAAe,MACf,cAAe,KACf,kBAAmB,MACnB,kBAAmB,MACnB,gBAAiB,MACjB,gBAAiB,MACjB,oBAAqB,MACrB,gBAAiB,MACjB,eAAgB,MAChB,eAAgB,MAChB,gBAAiB,MACjB,kBAAmB,MACnB,kBAAmB,MACnB,kBAAmB,MACnB,oBAAqB,MACrB,oBAAqB,MACrB,kBAAmB,MACnB,iBAAkB,MAClB,mBAAoB,MACpB,kBAAmB,MACnB,kBAAmB,MACnB,kBAAmB,MACnB,mBAAoB,MACpB,mBAAoB,MACpB,mBAAoB,MACpB,mBAAoB,MACpB,kBAAmB,MACnB,mBAAoB,MACpB,mBAAoB,MACpB,iBAAkB,MAClB,oBAAqB,MACrB,mBAAoB,MACpB,oBAAqB,MACrB,mBAAoB,MACpB,mBAAoB,MACpB,qBAAsB,MACtB,oBAAqB,MACrB,mBAAoB,MACpB,mBAAoB,MACpB,mBAAoB,MACpB,oBAAqB,MACrB,oBAAqB,MACrB,qBAAsB,MACtB,mBAAoB,MACpB,oBAAqB,MACrB,kBAAmB,MACnB,mBAAoB,MACpB,oBAAqB,OACrB,mBAAoB,MACpB,kBAAmB,MACnB,kBAAmB,MACnB,qBAAsB,MACtB,sBAAuB,MACvB,kBAAmB,MACnB,kBAAmB,MACnB,iBAAkB,MAClB,kBAAmB,MACnB,kBAAmB,MACnB,iBAAkB,MAClB,iBAAkB,MAClB,mBAAoB,MACpB,mBAAoB,MACpB,iBAAkB,MAClB,oBAAqB,MACrB,iBAAkB,MAClB,mBAAoB,MACpB,oBAAqB,MACrB,iBAAkB,MAClB,iBAAkB,MAClB,eAAgB,MAChB,gBAAiB,MACjB,eAAgB,MAChB,kBAAmB,MACnB,iBAAkB,MAClB,qBAAsB,OACtB,kBAAmB,MACnB,kBAAmB,MACnB,iBAAkB,MAClB,iBAAkB,MAClB,eAAgB,MAChB,kBAAmB,MACnB,iBAAkB,MAClB,kBAAmB,KACnB,gBAAiB,MACjB,iBAAkB,MAClB,SAAU,KACV,cAAe,MACf,gBAAiB,MACjB,iBAAkB,MAClB,eAAgB,MAChB,iBAAkB,MAClB,iBAAkB,MAClB,oBAAqB,MACrB,kBAAmB,MACnB,eAAgB,MAChB,gBAAiB,MACjB,iBAAkB,MAClB,oBAAqB,MACrB,iBAAkB,MAClB,gBAAiB,MACjB,eAAgB,MAChB,eAAgB,MAChB,eAAgB,MAChB,iBAAkB,MAClB,kBAAmB,MACnB,kBAAmB,MACnB,kBAAmB,MACnB,YAAa,KACb,iBAAkB,MAClB,WAAY,WACZ,YAAa,YACb,WAAY,SACZ,gBAAiB,MACjB,kBAAmB,OACnB,cAAe,MACf,gBAAiB,MACjB,eAAgB,MAChB,aAAc,MACd,YAAa,MACb,cAAe,MACf,aAAc,MACd,gBAAiB,MACjB,iBAAkB,MAClB,sBAAuB,UACxB,SAAS,EAAG,GACX,EAAI,IAAI,OAAO,EAAG,MAClB,EAAI,EAAE,QAAQ,EAAG,EACrB,IAAI,EAAE,cAAc,KAAK,EAC7B,CAAC,MACG,IAAI,EAAI,OAAO,GAAG,OAAO,MAAM,KAAK,GAAG,MAAM,KAC7C,GAAI,EAAE,GAAK,GAAK,EAAE,GAAK,GAAK,GAAK,EAAE,IAAM,GAAK,EAAE,IAAM,EAAE,GAAK,GAAK,EAAI,EAAE,GAAI,MAAM,IAAI,MAAM,2FAC/F,EAHA,GAGK,CAAC,IACH,SAAS,EAAE,GACP,IACI,EACJ,OADI,GAAK,GADL,EAAI,EAAE,KAAK,kBACO,EAAI,EAAE,KAAK,UAAY,YAAY,KAAK,IAAM,EAAE,QAAQ,iBAAkB,MAAQ,EAAE,KAC9F,EAAE,OAAS,EAAI,EAAE,QACjC,CAEA,SAAS,EAAE,GACP,GAAK,IAAM,EAAE,QAAU,EAAE,sBAAsB,SAAU,EAAE,GAAG,MAAK,WAC/D,IAAI,EAAI,EAAE,MACN,EAAI,EAAE,GACN,EAAI,CACA,cAAe,OAEtB,EAAE,SAAS,SAAW,GAAK,SAAW,EAAE,MAAQ,kBAAkB,KAAK,EAAE,OAAO,UAAY,EAAE,SAAS,EAAE,GAAI,EAAE,UAAY,EAAE,QAAQ,EAAI,EAAE,MAAM,mBAAoB,IAAK,EAAE,wBAA0B,EAAE,KAAK,gBAAiB,SAAU,EAAE,YAAY,QAAQ,QAAQ,EAAE,MAAM,qBAAsB,IACzS,IACJ,CAEA,SAAS,EAAE,GACP,EAAE,GAAG,GAAG,oBAAqB,KAAK,OACtC,CACA,IAAI,EAAI,2BACJ,GAAK,EAAE,QAAU,QAAS,EAAE,UAAU,OAAS,SAAS,GACpD,IAAI,EAAI,EAAE,MACV,IAAK,EAAE,GAAG,wBAAyB,CAC/B,IAAI,EAAI,EAAE,GACN,EAAI,EAAE,SAAS,QACnB,GAAI,KAAM,EAAG,CAKT,GAJA,iBAAkB,SAAS,kBAAoB,EAAE,QAAQ,eAAe,QAAU,EAAE,SAAS,cAAc,QAAQ,SAAS,qBAAqB,YAAY,EAAE,OAAO,GAAG,QAAS,GAClL,EAAI,CACA,cAAe,MAEf,EAAE,QAAQ,EAAI,EAAE,MAAM,mBAAoB,IAAK,EAAE,qBAAsB,OAC3E,EAAE,QAAQ,SAAS,KAAK,gBAAiB,QAAS,EAAE,YAAY,QAAQ,QAAQ,EAAE,MAAM,oBAAqB,GACjH,CACA,OAAO,CACX,CACJ,EAAG,EAAE,UAAU,QAAU,SAAS,GAC9B,GAAI,gBAAgB,KAAK,EAAE,SAAW,kBAAkB,KAAK,EAAE,OAAO,SAAU,CAC5E,IAAI,EAAI,EAAE,MACV,GAAI,EAAE,iBAAkB,EAAE,mBAAoB,EAAE,GAAG,wBAAyB,CACxE,IAAI,EAAI,EAAE,GACN,EAAI,EAAE,SAAS,QACnB,IAAK,GAAK,IAAM,EAAE,OAAS,GAAK,IAAM,EAAE,MAAO,OAAO,IAAM,EAAE,OAAS,EAAE,KAAK,GAAG,QAAQ,SAAU,EAAE,QAAQ,UAC7G,EAAI,EAAE,KAAK,+CACT,SAAW,EAAI,EAAE,MAAM,EAAE,QAAS,IAAM,EAAE,OAAS,EAAI,GAAK,IAAK,IAAM,EAAE,OAAS,EAAI,EAAE,OAAS,GAAK,IAAK,EAAE,GAAG,GAAK,EAAI,EAAI,GAAG,QAAQ,SAC9I,CACJ,CACJ,EAAG,EAAE,GAAG,UACZ,EAAE,GAAG,SAAW,SAAS,GACrB,OAAO,KAAK,MAAK,WACb,IAAI,EAAI,EAAE,MACN,EAAI,EAAE,KAAK,eACf,GAAK,EAAE,KAAK,cAAe,EAAI,IAAI,EAAE,OAAQ,iBAAmB,GAAK,EAAE,GAAG,KAAK,EACnF,GACJ,EAAG,EAAE,GAAG,SAAS,YAAc,EAAG,EAAE,GAAG,SAAS,WAAa,WACzD,OAAO,EAAE,GAAG,SAAW,EAAG,IAC9B,EAAG,EAAE,UAAU,GAAG,6BAA8B,GAAG,GAAG,6BAA8B,kBAAkB,SAAS,GAC3G,EAAE,iBACN,IAAG,GAAG,6BAA8B,EAAG,EAAE,UAAU,QAAQ,GAAG,+BAAgC,EAAG,EAAE,UAAU,SAAS,GAAG,+BAAgC,iBAAkB,EAAE,UAAU,QAC1L,EA5DK,CA4DH,QAAS,CAAC,IACT,SAAS,EAAE,GAEP,OADA,EAAI,EAAE,KAAK,iBAAmB,EAAI,EAAE,KAAK,UAAY,EAAE,QAAQ,iBAAkB,IAC1E,EAAE,EACb,CAEA,SAAS,EAAE,GACP,OAAO,KAAK,MAAK,WACb,IAAI,EAAI,EAAE,MACN,EAAI,EAAE,KAAK,eACX,EAAI,EAAE,OAAO,CAAC,EAAG,EAAE,SAAU,EAAE,OAAQ,iBAAmB,GAAK,IAClE,GAAK,EAAE,QAAU,YAAY,KAAK,KAAO,EAAE,QAAS,GAAK,GAAK,EAAE,KAAK,cAAe,EAAI,IAAI,EAAE,KAAM,IAAK,iBAAmB,GAAK,EAAE,IACxI,GACJ,CAEA,SAAS,EAAE,EAAG,GACV,KAAK,SAAW,EAAE,GAAI,KAAK,QAAU,EAAE,OAAO,CAAC,EAAG,EAAE,SAAU,GAAI,KAAK,SAAW,EAAE,mCAAqC,EAAE,GAAK,6CAA+C,EAAE,GAAK,MAAO,KAAK,cAAgB,KAAM,KAAK,QAAQ,OAAS,KAAK,QAAU,KAAK,YAAc,KAAK,yBAAyB,KAAK,SAAU,KAAK,UAAW,KAAK,QAAQ,QAAU,KAAK,QAC7W,CACA,EAAE,QAAU,QAAS,EAAE,oBAAsB,IAAK,EAAE,SAAW,CAC3D,QAAQ,GACT,EAAE,UAAU,UAAY,WACvB,OAAO,KAAK,SAAS,SAAS,SAAW,QAAU,QACvD,EAAG,EAAE,UAAU,KAAO,WAClB,IAAK,KAAK,gBAAkB,KAAK,SAAS,SAAS,MAAO,CACtD,IAAI,EAAI,KAAK,SAAW,KAAK,QAAQ,SAAS,UAAU,SAAS,oBACjE,KAAM,GAAK,EAAE,SAAW,EAAI,EAAE,KAAK,iBAAmB,EAAE,eAAgB,CACpE,IAAI,EAAI,EAAE,MAAM,oBAChB,GAAI,KAAK,SAAS,QAAQ,IAAK,EAAE,qBAAsB,CACnD,GAAK,EAAE,SAAW,EAAE,KAAK,EAAG,QAAS,GAAK,EAAE,KAAK,cAAe,OAChE,IAAI,EAAI,KAAK,YACT,GAAK,KAAK,SAAS,YAAY,YAAY,SAAS,cAAc,GAAG,GAAG,KAAK,iBAAiB,GAAK,KAAK,SAAS,YAAY,aAAa,KAAK,iBAAiB,GAAK,KAAK,cAAgB,EAAG,WACzL,KAAK,SAAS,YAAY,cAAc,SAAS,eAAe,GAAG,IAAK,KAAK,cAAgB,EAAG,KAAK,SAAS,QAAQ,oBAC1H,GACJ,IAAK,EAAE,QAAQ,WAAY,OAAO,EAAE,KAAK,MACzC,IAAI,EAAI,EAAE,UAAU,CAAC,SAAU,GAAG,KAAK,MACvC,KAAK,SAAS,IAAI,kBAAmB,EAAE,MAAM,EAAG,OAAO,qBAAqB,EAAE,qBAAqB,GAAG,KAAK,SAAS,GAAG,GAC3H,CACJ,CACJ,CACJ,EAAG,EAAE,UAAU,KAAO,WAClB,IAAK,KAAK,eAAiB,KAAK,SAAS,SAAS,MAAO,CACrD,IAAI,EAAG,EAAI,EAAE,MAAM,oBACnB,GAAI,KAAK,SAAS,QAAQ,IAAK,EAAE,qBAAsB,OAAO,EAAI,KAAK,YAAa,KAAK,SAAS,GAAG,KAAK,SAAS,MAAM,GAAG,aAAc,KAAK,SAAS,SAAS,cAAc,YAAY,eAAe,KAAK,iBAAiB,GAAK,KAAK,SAAS,SAAS,aAAa,KAAK,iBAAiB,GAAK,KAAK,cAAgB,EAAG,EAAI,WAC5T,KAAK,cAAgB,EAAG,KAAK,SAAS,YAAY,cAAc,SAAS,YAAY,QAAQ,qBACjG,EAAG,EAAE,QAAQ,gBAAkB,KAAK,SAAS,GAAG,GAAG,IAAI,kBAAmB,EAAE,MAAM,EAAG,OAAO,qBAAqB,EAAE,qBAAuB,EAAE,KAAK,KACrJ,CACJ,EAAG,EAAE,UAAU,OAAS,WACpB,KAAK,KAAK,SAAS,SAAS,MAAQ,OAAS,SACjD,EAAG,EAAE,UAAU,UAAY,WACvB,OAAO,EAAE,KAAK,QAAQ,QAAQ,KAAK,yCAA2C,KAAK,QAAQ,OAAS,MAAM,KAAK,EAAE,OAAM,SAAS,EAAG,GAC/H,EAAI,EAAE,GACN,KAAK,yBAAyB,EAAE,GAAI,EACxC,GAAG,OAAO,KACd,EAAG,EAAE,UAAU,yBAA2B,SAAS,EAAG,GAClD,IAAI,EAAI,EAAE,SAAS,MACnB,EAAE,KAAK,gBAAiB,GAAI,EAAE,YAAY,aAAc,GAAG,KAAK,gBAAiB,EACrF,EACA,IAAI,EAAI,EAAE,GAAG,SACb,EAAE,GAAG,SAAW,EAAG,EAAE,GAAG,SAAS,YAAc,EAAG,EAAE,GAAG,SAAS,WAAa,WACzE,OAAO,EAAE,GAAG,SAAW,EAAG,IAC9B,EAAG,EAAE,UAAU,GAAG,6BAA8B,4BAA4B,SAAS,GACjF,IAEI,GADA,IADA,EAAI,EAAE,OACC,KAAK,gBAAkB,EAAE,iBAAkB,EAAE,KAC9C,KAAK,eAAiB,SAAW,EAAE,OAC7C,EAAE,KAAK,EAAG,EACd,GACH,EAlEW,CAkET,QAAS,CAAC,IACT,EAAE,GAAG,qBAAuB,SAAS,GACjC,IAAI,GAAI,EACJ,EAAI,KAIR,OAHA,EAAE,MAAM,IAAI,mBAAmB,WAC3B,GAAI,CACR,IACO,YAAW,WACd,GAAK,EAAE,GAAG,QAAQ,EAAE,QAAQ,WAAW,IAC3C,GAAG,GAAI,IACX,EAAG,GAAE,WACD,EAAE,QAAQ,WAAa,MACnB,IAAI,EAAG,EAAI,SAAS,cAAc,aAC9B,EAAI,CACA,iBAAkB,sBAClB,cAAe,gBACf,YAAa,gCACb,WAAY,iBAEpB,IAAK,KAAK,EACN,QAAI,IAAW,EAAE,MAAM,GAAI,MAAO,CAC9B,IAAK,EAAE,IAEf,OAAO,CACV,EAbsB,GAajB,EAAE,QAAQ,aAAe,EAAE,MAAM,QAAQ,gBAAkB,CAC7D,SAAU,EAAE,QAAQ,WAAW,IAC/B,aAAc,EAAE,QAAQ,WAAW,IACnC,OAAQ,SAAS,GACb,OAAO,EAAE,EAAE,QAAQ,GAAG,MAAQ,EAAE,UAAU,QAAQ,MAAM,KAAM,gBAAa,CAC/E,GAER,GACH,EAhCW,CAgCT,QAAS,CAAC,IACT,IAAI,EAAI,CACJ,KAAM,SAAS,GACX,OAAO,KAAK,MAAK,WACb,KAAK,KAAO,EAAE,MAAO,EAAE,QAAQ,KAAK,KAAK,MAAO,KAAK,IAAM,EAAE,QAAO,EAAI,CAAC,EAAG,EAAE,GAAG,KAAK,SAAU,GAAI,EAAE,gBAAgB,KAAK,MAAO,EAAE,cAAc,KAAK,MAAO,EAAE,aAAa,KAAK,MAAO,KAAK,IAAI,MAAQ,EAAE,eAAe,KAAK,KAAM,KAAK,IAAI,OAAQ,QAAU,KAAK,IAAI,UAAY,EAAE,gBAAgB,KAAK,MAAO,EAAE,YAAY,KAAK,MAAO,EAAE,aAAa,KAAK,MAAO,KAAK,IAAI,QAAU,EAAE,cAAc,KAAK,MAAO,KAAK,IAAI,WAAa,EAAE,iBAAiB,KAAK,MAAO,EAAE,aAAa,KAAK,MAAO,EAAE,OAAO,KAAK,KAAM,KAAK,IAAI,OAAQ,EAAE,UAAU,KAAK,KAAM,KAAK,IAAI,OAAQ,EAAE,QAAQ,KAAK,KAAM,KAAK,IAAI,QAAS,KAAK,IAAI,SAAW,EAAE,OAAS,KAAK,MAAM,OAAS,UAAW,EAAE,SAAS,KAAK,KAC9qB,GACJ,EACA,gBAAiB,WACb,IAAK,IAAI,EAAI,CAAC,SAAU,WAAY,QAAS,YAAa,UAAW,EAAI,EAAG,EAAI,EAAE,OAAQ,IAAK,mBAAqB,KAAK,IAAI,EAAE,MAAQ,KAAK,IAAI,EAAE,IAAM,KAAK,IAAI,EAAE,IAAI,KAAK,MAChL,EACA,eAAgB,SAAS,GACrB,OAAO,GAAK,EAAE,SAAS,EAAG,EAAG,KAAK,IAAI,OAC1C,EACA,aAAc,WACV,GAAI,KAAK,IAAI,QAAU,KAAK,IAAI,MAAQ,IAAK,KAAK,IAAI,UAAY,KAAK,IAAI,KACvE,IAAK,IAAI,EAAI,KAAK,IAAI,UAAY,GAAK,EAAG,EAAI,EAAG,EAAI,KAAK,IAAI,OAAQ,IAAK,CACvE,IAAI,EAAI,KAAK,IAAI,MAAM,GACvB,mBAAqB,OAAO,UAAU,SAAS,KAAK,KAAO,EAAI,CAAC,IAAK,KAAK,IAAI,MAAM,GAAK,GACzF,IAAK,IAAI,EAAI,EAAG,EAAI,EAAG,IAAK,CACxB,IAAI,EAAI,EAAE,GACN,EAAI,EAAE,EAAE,OAAS,QACrB,IAAW,IAAM,EAAI,MAAO,KAAK,IAAI,MAAM,GAAG,QAAK,IAAW,EAAI,EAAI,CAC1E,CACJ,CACR,EACA,cAAe,WACX,KAAK,IAAI,OAAS,EAAE,SAAS,KAAK,IAAI,OAAQ,EAAG,KAAK,IAAI,UAC9D,EACA,YAAa,WACT,KAAK,IAAI,KAAO,KAAK,IAAI,MAAQ,GAAI,KAAK,IAAI,MAAQ,MAAQ,KAAK,IAAI,KAAK,OAAO,KAAK,IAAI,KAAK,OAAS,KAAO,KAAK,IAAI,MAAQ,IACtI,EACA,iBAAkB,WACd,KAAK,IAAI,MAAO,CACpB,EACA,gBAAiB,WACb,IAAI,EAAI,CAAC,YAAa,WAAY,WAAY,UAAW,UACzD,KAAK,IAAI,KAAO,GAChB,IAAK,IAAI,EAAI,EAAG,EAAI,EAAE,OAAQ,IAAK,KAAK,IAAI,EAAE,IAAM,KAAK,IAAI,EAAE,IAAI,QAAQ,IAAK,IACpF,EACA,OAAQ,SAAS,GACb,EAAE,MAAM,KAAK,KAAM,GAAI,IAAM,EAAI,GAAK,KAAK,MAAM,IAAI,GAAI,EAAE,YAAY,KAAK,KAAM,GACtF,EACA,SAAU,SAAS,EAAG,EAAG,GACrB,OAAO,KAAK,IAAI,KAAK,IAAI,WAAW,GAAI,GAAI,EAChD,EACA,OAAQ,WACJ,KAAK,SAAW,EAAE,gBAAgB,KAAK,MAAO,EAAE,iBAAiB,KAAK,MAAO,EAAE,eAAe,KAAK,OAAQ,EAAE,UAAU,KAAK,MAAO,EAAE,WAAW,KAAK,MAAO,EAAE,SAAS,KAAK,KAChL,EACA,WAAY,WACR,IAAI,EAAI,KACR,EAAE,MAAM,GAAG,cAAc,SAAS,GAC9B,IAAI,GAAI,EACJ,EAAI,EAAE,IAAI,MAAQ,EAAE,IAAI,UAAY,EAAE,KAAK,KAAK,SAAW,KAAK,KAAO,EAAE,MAAM,KAAK,SACtF,EAAI,EAAE,IAAI,MAAQ,EAAE,IAAI,MAAM,KAAK,GAAI,EAAG,GAAK,SAAM,IAAW,IAAM,EAAE,IAAI,OAAS,EAAE,IAAI,YAAc,EAAI,EAAE,gBAAgB,KAAK,EAAG,IAAK,EAAE,OAAO,KAAK,EAAG,GACnK,GACJ,EACA,iBAAkB,WACd,IAAI,EAAI,KACR,EAAE,OAAO,GAAG,cAAc,SAAS,GAC/B,EAAE,MAAM,WAAW,SAAU,EAAE,IAAI,OAAS,EAAE,IAAI,MAAM,KAAK,EAAG,KAAM,EAC1E,GACJ,EACA,SAAU,WACN,IAAI,EAAI,KACR,EAAE,KAAK,GAAG,mBAAmB,SAAS,GAClC,IAAI,GAAK,EAAE,MAAM,YAAS,EAC1B,EAAE,OAAO,KAAK,EAAG,GAAI,EAAE,QAAQ,KAAK,EAAG,EAAG,GAAI,EAAE,YAAY,KAAK,GAAI,EAAE,IAAI,UAAY,EAAE,IAAI,SAAS,KAAK,EAAG,EAAG,EACrH,GACJ,EACA,eAAgB,WACZ,IAAI,EAAI,KACR,EAAE,OAAO,GAAG,mBAAmB,SAAS,GACpC,IAAI,EAAI,EAAE,IAAI,UACd,QAAU,EAAE,IAAI,WAAa,EAAI,EAAE,IAAI,YAAc,IAAM,GAAI,EAAE,SAAS,KAAK,EAAG,KAAM,GAAI,EAAE,IAAI,WAAa,GAAK,EAAE,MAAM,YAAS,EAAQ,EAAE,IAAI,SAAS,KAAK,EAAG,EAAG,GAC3K,GACJ,EACA,UAAW,WACP,IAAI,EAAI,KACJ,EAAI,EAAE,IAAI,KAAO,iBAAmB,iBACxC,EAAE,MAAM,GAAG,GAAG,SAAS,GACnB,IAAI,EAAI,EAAE,oBAAoB,KAAK,EAAG,EAAG,MACzC,EAAE,MAAM,KAAK,EAAG,GAAI,EAAE,IAAI,OAAS,EAAE,YAAY,KAAK,EAAG,EAAG,GAAI,EAAE,UAAU,KAAK,EAAG,EAAG,GAAI,EAAE,KAAK,KAAK,QAAS,IAAK,EAAE,QAAQ,KAAK,EAAG,EAAG,GAAI,EAAE,IAAI,WAAa,EAAE,IAAI,UAAU,KAAK,EAAG,EAAG,EAChM,GACJ,EACA,gBAAiB,WACb,IAAI,EAAI,KACR,EAAE,OAAO,GAAG,kBAAkB,SAAS,GACnC,IAAI,EAAI,EAAE,IAAI,KAAO,EAAE,IAAI,QACvB,EAAI,EAAE,IAAI,SACd,QAAU,EAAE,IAAI,SAAW,EAAE,MAAM,KAAK,MAAO,IAAM,EAAI,EAAE,IAAI,YAAc,IAAM,EAAG,EAAE,MAAM,KAAK,QAAS,IAAK,EAAE,SAAS,KAAK,EAAG,KAAM,GAAI,EAAE,QAAQ,KAAK,EAAG,KAAM,GAAI,EAAE,IAAI,WAAa,EAAE,IAAI,UAAU,KAAK,EAAG,KACzN,GACJ,EACA,iBAAkB,WACd,OAAO,EAAE,YAAa,CAClB,KAAM,KAAK,IAAI,UACf,KAAM,WACP,SAAS,KAChB,EACA,cAAe,WACX,IAAI,EAAI,KAAK,IAAI,KAAO,KAAK,IAAI,UAC7B,EAAI,EAAE,IAAM,KAAK,IAAI,SAAW,MAAO,CACnC,MAAO,KAAK,IAAI,WAChB,MAAO,KAAK,IAAI,cAExB,QAAU,KAAK,IAAI,SAAW,EAAE,KAAK,CACjC,IAAK,EACL,IAAK,MACJ,EAAE,KAAK,WAAY,KAAK,SAAS,GAAI,SAAW,KAAK,IAAI,YAAc,KAAK,KAAK,QAAQ,UAAU,QAAQ,GAAK,KAAK,KAAK,OAAO,UAAU,OAAO,GAAI,KAAK,OAAS,CAC7K,EACA,aAAc,WACV,IAAI,EAAI,EAAE,KAAK,IAAI,aACnB,KAAK,MAAQ,EAAE,OAAS,EAAI,EAAE,iBAAiB,KAAK,KACxD,EACA,aAAc,WACV,IAAK,IAAI,EAAI,EAAG,GAAK,KAAK,IAAI,OAAQ,IAAK,CACvC,IAAI,EAAI,EAAE,cAAc,KAAK,KAAM,GAC/B,EAAI,CACA,IAAK,EACL,IAAK,KAAK,IAAI,KAAO,KAAK,IAAI,KAErC,EAAI,QAAU,KAAK,IAAI,SAAW,CAC/B,WAAY,EACZ,MAAO,EAAE,KACT,GAAG,MAAQ,EAAE,SAAS,KAAK,KAAM,GAAI,EAAE,IAAM,KAAK,IAAI,SAAW,MAAO,GAAG,SAAS,MAAO,KAAK,IAAI,OAAS,KAAK,KAAK,OAAO,EAAI,KAAK,IAAI,OAAS,SAAW,GACvK,CACA,KAAK,MAAQ,KAAK,KAAK,SAAS,KAAK,IAAI,SAC7C,EACA,OAAQ,SAAS,GACb,EAAE,MAAM,KAAK,GAAI,EAAE,MAAM,EAC7B,EACA,MAAO,SAAS,GACZ,IAAK,IAAI,EAAI,EAAG,EAAI,EAAG,GAAK,KAAK,MAAM,OAAQ,IAAK,CAChD,IAAI,EAAG,EAAG,EAAI,KAAK,MAAM,EAAI,GACzB,EAAI,EAAE,QAAQ,KAAK,KAAM,EAAG,GAChC,KAAK,IAAI,WAAa,KAAK,IAAI,UAAU,OAAS,GAAK,EAAI,KAAK,IAAI,UAAU,GAAI,EAAI,EAAE,cAAc,KAAK,KAAM,EAAG,GAAI,GAAK,EAAE,OAAS,EAAE,SAAS,KAAK,KAAM,EAAG,GAAI,IAAM,EAAE,OAAS,MAAQ,EAAI,KAAK,IAAI,EAAI,SAAW,WAAY,EAAE,SAAS,KAAK,KAAM,EAAG,GACnQ,CACJ,EACA,iBAAkB,SAAS,GACvB,IACI,EAAI,EACR,OAFI,EAAI,EAAE,WAAW,MAAM,KAAK,MAEnB,EAAI,SAAS,EAAE,OAAO,GAAI,IAAK,SAAW,EAAE,MAAM,EAAG,KAAO,IAAK,CAClF,EACA,cAAe,SAAS,EAAG,GACvB,OAAO,EAAI,EAAE,IAAM,KAAK,IAAI,OAAS,EAAE,KAAO,KAAK,IAAI,OAC3D,EACA,oBAAqB,SAAS,EAAG,GAC7B,IAAI,EAAG,EAAI,SAAS,EAAE,KAAO,EAAE,aAAa,YAAa,IACzD,OAAO,KAAK,IAAI,OAAS,EAAI,EAAE,UAAU,KAAK,MAAO,EAAI,EAAI,EAAI,YAAY,EAAE,MAAQ,EAAE,GAAG,SAAS,MAAQ,IAAK,CACtH,EACA,SAAU,SAAS,EAAG,GAClB,IAAI,EAAG,EAAG,EACV,OAAO,IAAM,GAAK,GAAK,EAAI,EAAE,iBAAiB,KAAK,KAAM,GAAI,EAAI,KAAK,KAAK,GAAI,EAAI,EAAI,KAAK,IAAI,OAAO,GAAK,GAAK,GAAI,GAAK,GAAK,KAAK,KAAM,KAAK,IAAI,UAAY,EAAI,EAAE,EAAI,EAAI,IAAM,EAAI,EAAI,EAAI,EAAI,IAAM,KAAK,IAAI,UAAY,KAAK,IAAI,QAAU,EAAI,EAAE,EAAI,GAAK,IAAM,GAAK,EAAI,EAAI,EAAI,IAAK,KAAO,EAAI,GAAK,GAAK,GAAK,KAAK,IAAI,UACnU,EACA,UAAW,WACP,IAAI,EAAI,KAAK,MAAM,GAAG,OAAS,WAAW,KAAK,MAAM,GAAG,GAAG,IAAI,cAC/D,OAAO,GAAK,EAAE,OAAO,KAAK,KAAM,iCAAkC,CACtE,EACA,MAAO,WACH,IAAI,EAAI,EAAE,SAAS,KAAK,KAAM,KAAK,MAAM,OACzC,KAAK,MAAM,OAAS,GAAI,KAAK,MAAQ,EAAG,KAAK,MAAM,KAAK,YAAY,GAAK,KAAK,MAAM,KAAK,QAAS,GAAI,KAAK,QAAU,KAAK,OAAO,OAAQ,KAAK,KAAK,KAAK,YAAY,EACxK,EACA,cAAe,SAAS,GACpB,OAAO,KAAK,IAAI,OAAS,KAAK,IAAI,OAAS,EAAI,SAAW,SAC9D,EACA,YAAa,SAAS,GAClB,IAAK,IAAI,EAAI,EAAG,EAAI,KAAK,IAAI,OAAQ,IAAK,KAAK,MAAM,GAAG,MAAQ,EAAE,SAAS,KAAK,KAAM,EAAI,EAC9F,EACA,gBAAiB,SAAS,GAGtB,OAFQ,SAAS,EAAG,KAEJ,KADZ,EAAI,EAAE,iBAAiB,KAAK,KAAM,IACZ,EAAI,EAAI,EAAI,GAAK,EAC/C,EACA,YAAa,SAAS,EAAG,GACrB,IAAI,EAAG,GAAK,EAAI,GAAG,QAAQ,GAC3B,GAAK,KAAK,KAAO,EAAI,GAAK,EAAI,SAAW,WAAa,EAAI,KAAK,IAAI,MAAM,OAAS,EAAI,SAAU,KAAK,IAAI,UAAY,EAAI,KAAK,IAAI,MAAM,GAAK,EAAI,WAAa,EAAI,KAAK,IAAI,MAAM,OAAS,EAAI,YAAa,IAAM,EAAI,KAAK,IAAI,GAAI,EAAI,KAAK,MAAM,KAAK,KAAK,GAAK,GAAI,EAAE,SAAS,KAAK,KAAM,EAAG,GACjS,EACA,SAAU,SAAS,EAAG,GAClB,EAAE,QAAU,KAAK,IAAI,SAAW,MAAQ,aAAe,KAAK,IAAI,KAAO,CAC3E,EACA,WAAY,SAAS,EAAG,GACpB,EAAI,GAAK,KAAK,IAAI,aAAa,WAAW,QAAQ,UAAW,GAAI,EAAE,GAAG,UAAY,EAAE,IAAI,GAAK,EAAE,KAAK,EACxG,EACA,UAAW,SAAS,EAAG,GACnB,IAAI,EACJ,IAAM,EAAI,SAAS,KAAK,KAAK,GAAI,IAAK,KAAK,MAAM,EAAI,GAAG,MAAQ,EAAE,SAAS,KAAK,KAAM,EAAG,GAC7F,EACA,QAAS,SAAS,EAAG,GACjB,IAAI,EAAG,EACP,KAAK,IAAI,UAAY,EAAI,EAAE,KAAK,IAAI,SAAS,QAAU,EAAE,OAAO,KAAK,KAAM,uCAAwC,EAAI,GAAK,cAAgB,EAAE,UAAM,IAAW,EAAI,EAAI,KAAK,IAAI,WAAa,OAAS,EAAI,EAAI,EAAI,KAAK,IAAI,WAAa,KAAK,IAAI,YAAc,SAAW,KAAK,IAAI,WAAa,EAAI,EAAE,SAAS,KAAK,KAAM,EAAG,GAAK,KAAK,IAAI,YAAc,EAAI,WAAW,GAAG,QAAQ,IAAK,EAAI,GAAK,cAAgB,EAAE,KAAM,GAAK,GAAK,KAAK,IAAI,aAAe,EAAI,KAAK,IAAI,aAAc,EAAE,WAAW,KAAK,KAAM,EAAG,GACrf,EACA,QAAS,SAAS,EAAG,GACjB,OAAO,KAAK,IAAI,OAAS,IAAM,EAAI,GAAK,CAC5C,EACA,QAAS,WACL,KAAK,MAAM,OAAS,UAAW,KAAK,gBAAgB,SAAU,KAAK,MAAM,WAAW,YAAa,KAAK,KAAK,KAAK,YAAY,GAC5H,IAAK,IAAI,EAAI,EAAG,EAAI,KAAK,IAAI,OAAQ,IAAK,KAAK,MAAM,GAAG,MAAQ,EAAE,SAAS,KAAK,KAAM,EAAI,GAC1F,KAAK,QAAU,KAAK,OAAO,IAAI,UAAW,GAC9C,EACA,OAAQ,SAAS,GACb,OAAO,KAAK,MAAK,WACb,IAAI,EAAI,EAAE,OACV,IAAO,EAAE,KAAK,cAAgB,EAAE,EAAI,QAAU,SAAS,KAAK,EAAG,MAAO,KAAK,MAAM,WAAW,SAChG,GACJ,EACA,MAAO,SAAS,GACZ,OAAO,KAAK,MAAK,YACb,IAAO,EAAE,MAAM,KAAK,cAAgB,EAAI,EAAE,eAAe,KAAK,KAAM,GAAI,EAAE,OAAO,KAAK,KAAM,GAAI,KAAK,IAAI,OAAS,KAAK,IAAI,MAAM,KAAK,KAAM,EAAG,EAAE,MAAM,UAAW,EAAE,QAAQ,KAAK,KAAM,GAC3L,GACJ,EACA,QAAS,WACL,OAAO,KAAK,MAAK,WACb,IAAI,EAAI,EAAE,MACN,EAAI,EAAE,KAAK,OACf,EAAI,EAAE,IAAI,SAAS,QAAQ,IAAI,CAC3B,OAAQ,EAAE,MAAM,SACjB,WAAW,YAAc,EAAE,KAAK,MAAO,EAAE,QAAQ,GACxD,GACJ,EACA,SAAU,WACN,IAAI,EAAG,EAAI,GACX,OAAO,KAAK,MAAK,WACb,EAAI,KAAK,MAAM,MAAO,EAAE,KAAK,GAAK,OAAI,EAC1C,IAAI,EAAI,EAAE,OAAS,EAAI,EAAE,EAC7B,EACA,KAAM,SAAS,GACX,OAAO,KAAK,MAAK,WACb,IAAI,EAAI,SAAS,EAAG,IAChB,EAAI,EAAE,iBAAiB,KAAK,KAAM,GACtC,GAAK,KAAK,IAAI,SAAW,EAAI,KAAK,IAAI,OAAS,EAAG,EAAI,IACtD,IAAI,EAAI,EAAE,UAAU,KAAK,MAAQ,GAE7B,GADA,EAAI,EAAE,KAAK,MAAM,KACX,SAAS,KAAO,EAAI,EAC1B,EAAI,EAAE,MAAM,YAAa,CACrB,MAAO,IAEf,KAAK,MAAO,EAAI,EAAE,QAAQ,GAAI,KAAK,MAAO,CAC9C,GACJ,EACA,SAAU,SAAS,GACf,OAAO,KAAK,MAAK,WACb,IAAI,EAAI,EAAE,MACV,EAAE,KAAK,cAAgB,KAAO,GAAK,EAAE,IAAI,SAAS,SAAS,OAAO,IAAI,SAAU,EAAE,QAAU,EAAE,OAAO,KAAK,MAAO,EAAE,UAAU,KAAK,MAAO,EAAE,KAAK,WAAY,GAChK,GACJ,EACA,OAAQ,WACJ,OAAO,EAAE,IAAI,KAAK,KAAM,CAAC,EAC7B,EACA,MAAO,WACH,IAAI,EAAI,EAAE,MACV,OAAO,UAAU,OAAS,EAAE,SAAS,MAAM,EAAG,WAAa,EAAE,SAAS,KAAK,EAC/E,EACA,IAAK,SAAS,GACV,OAAO,KAAK,MAAK,WACb,EAAE,MAAM,KAAK,EAAE,OAAO,CAAC,EAAG,KAAK,IAAK,GACxC,GACJ,EACA,SAAU,SAAS,GACf,OAAO,KAAK,MAAK,YACb,IAAO,EAAE,MAAM,KAAK,cAAgB,EAAI,EAAE,eAAe,KAAK,KAAM,GAAI,EAAE,OAAO,KAAK,KAAM,GAAI,EAAE,QAAQ,KAAK,KAAM,GACzH,GACJ,GAEJ,EAAE,GAAG,KAAO,SAAS,GACjB,OAAO,EAAE,GAAK,EAAE,GAAG,MAAM,KAAM,MAAM,UAAU,MAAM,KAAK,UAAW,IAAM,iBAAmB,GAAK,OAAS,EAAE,MAAM,UAAY,EAAI,oBAAsB,EAAE,KAAK,MAAM,KAAM,UACjL,EAAG,EAAE,GAAG,KAAK,SAAW,CACpB,QAAQ,EACR,YAAa,cACb,WAAY,sBACZ,UAAW,iBACX,SAAU,gBACV,YAAa,OACb,WAAO,EACP,MAAM,EACN,UAAU,EACV,MAAO,CAAC,MAAO,OAAQ,UAAW,OAAQ,YAC1C,eAAW,EACX,cAAU,EACV,eAAW,EACX,WAAY,iBACZ,OAAQ,EACR,UAAW,GACX,UAAM,EACN,WAAW,EACX,UAAU,EACV,MAAO,CACH,KAAM,IACN,KAAM,GACN,GAAI,KAER,WAAO,EACP,UAAW,QACX,QAAQ,EACR,OAAO,EACP,SAAU,gBACV,QAAS,eACT,OAAQ,cACR,SAAU,MACV,YAAQ,EACR,aAAc,UACd,YAAY,EACZ,iBAAa,EACb,WAAY,GACZ,WAAY,OAEnB,EAhTW,CAgTT,QAAS,CAAC,KACR,OAAO,QAAU,OAAO,SAAW,CAAC,GAAG,OAAS,sUAAsU,KAAK,IAAM,0kDAA0kD,KAAK,EAAE,OAAO,EAAG,GACh+D,EAFW,CAET,UAAU,WAAa,UAAU,QAAU,OAAO,OAAQ,CAAC,IAC1D,EAAE,KAAK,KAAK,SAAW,SAAS,GAC5B,IAEI,EADA,GADA,EAAI,EAAE,SACA,YAEN,EAAI,GADJ,EAAI,EAAE,UAGN,GADA,EAAI,EAAE,IACA,SAAS,IAEf,EAAI,GADJ,EAAI,EAAE,UAEV,OAAO,GAAK,GAAK,EAAI,GAAK,EAAI,GAAK,GAAK,GAAK,EAAI,GAAK,GAAK,GAAK,GAAK,CACzE,CACH,EAZ4D,CAY1D,QAAS,EAAE,EAAG,KACb,iBAAmB,SAAW,iBAAmB,OAAS,OAAO,QAAU,IAAM,mBAAqB,QAAU,OAAO,IAAM,OAAO,GAAI,GAAK,iBAAmB,QAAU,QAAQ,WAAa,IAAM,EAAE,WAAa,GACvN,EAFW,CAET,MAAM,WACL,OAAO,EAAI,CAAC,SAAS,EAAG,EAAG,GAEnB,GADA,EAAI,EAAE,KACS,EAAE,WAAa,EAAI,CAC9B,QAAS,GAEjB,EAAE,QAAU,EAAE,OAClB,EAAG,SAAS,EAAG,EAAG,GACd,SAAS,IAAK,CAEd,SAAS,IACL,IAAI,EAAG,EAAI,EAAE,QACb,KAAO,EAAI,EAAE,KAAK,IAAI,eAAgB,EAAE,OAAS,SAAS,EAAG,EAAG,GAC5D,SAAS,EAAE,GACP,EAAI,EAAE,YAAY,GAAI,EAAE,MAAM,GAAI,EAAE,WAAW,EACnD,EAAE,EAAI,IAAI,EAAE,QAAQ,EAAG,IAAI,GAAK,IAAK,EAAE,KAAO,EAAE,MAAQ,EAAE,GAAI,EAAE,QAAQ,EAAE,MAAQ,EAClF,IAAI,EAAI,EAAE,cACN,EAAI,CACA,MAAO,EAAE,MACT,KAAM,EAAE,KACR,MAAO,EAAE,MACT,QAAS,EAAE,SAEf,GAAK,EAAE,EAAG,CACN,MAAO,EACP,KAAM,EACN,MAAO,WACH,IAAK,IAAI,EAAI,UAAU,OAAQ,EAAI,MAAM,GAAI,EAAI,EAAG,EAAI,EAAG,IAAK,EAAE,GAAK,UAAU,GACjF,OAAO,EAAE,EAAE,KAAK,IACpB,EACA,QAAS,WACL,IAAK,IAAI,EAAI,UAAU,OAAQ,EAAI,MAAM,GAAI,EAAI,EAAG,EAAI,EAAG,IAAK,EAAE,GAAK,UAAU,GACjF,OAAO,EAAE,EAAE,KAAK,IAAM,KAC1B,IACA,EAAE,IAAI,SAAW,GACzB,OAAO,EAAE,IAAI,QAAU,SAAS,EAAG,EAAG,GAClC,EAAE,MAAM,CACJ,IAAK,EAAI,MAAQ,EAAI,KAAO,IAC5B,EAAE,MAAM,EAAE,IAAK,CAAC,EAAG,EAAG,GAC9B,EAAG,EAAE,MAAM,GAAG,WACV,EAAE,EAAG,GAAI,EAAE,IAAI,QAAU,EAAG,EAAE,OAAQ,EAAI,KAAM,GACpD,IAAI,CACR,EAAE,WAAM,EAAQ,GAAI,EAAE,mBAC1B,CAEA,SAAS,EAAE,EAAG,EAAG,GACb,GAAI,EAAE,WAAW,GAAI,EAAI,CACrB,KAAM,QAEL,GAAI,UAAY,EAAG,OAAO,EAAI,GAAI,EAAI,UAAW,EAAI,GAC1D,EAAI,EAAE,SAAS,EAAG,GAClB,IAAI,EAAI,CAAC,EAAI,KAAK,KAAK,GAAK,OAAO,SAAS,eAAe,EAAE,OAAO,IAAM,EAAE,OAAS,EAAE,GAAK,EAAG,EAAG,GAClG,OAAO,EAAE,WAAa,CAClB,OAAQ,WACJ,EAAE,OAAS,EAAE,OAAO,QAAU,EAAE,GAAK,CACzC,GACD,EAAE,cAAc,GAAI,EAAE,KAAK,GAAI,GAAK,IAAK,EAAE,UAClD,CACA,EAAE,YAAa,EACf,IAAI,EAAI,OAAO,QAAU,SAAS,GAC1B,IAAK,IAAI,EAAI,EAAG,EAAI,UAAU,OAAQ,IAAK,CACvC,IAAI,EAAG,EAAI,UAAU,GACrB,IAAK,KAAK,EAAG,OAAO,UAAU,eAAe,KAAK,EAAG,KAAO,EAAE,GAAK,EAAE,GACzE,CACA,OAAO,CACX,EAEA,GADA,GAAK,EAAE,QAAU,EAAG,EAAE,MACP,EAAE,WAAa,EAAI,CAC9B,QAAS,GAEb,EAAI,CAAC,IACD,GAAI,GAAK,EAAE,WAAY,OAAO,EAC9B,IAAI,EAAI,CAAC,EACT,GAAI,MAAQ,EACR,IAAK,IAAI,KAAK,EAAG,OAAO,UAAU,eAAe,KAAK,EAAG,KAAO,EAAE,GAAK,EAAE,IAC7E,OAAO,EAAE,QAAU,EAAG,CACzB,EANG,CAMD,EAAE,IACL,EAAI,CACA,WAAY,EACZ,aAAc,EACd,iBAAkB,EAClB,WAAY,EACZ,SAAS,EACT,cAAe,EACf,iBAAkB,SAAS,GACvB,OAAO,CACX,EACA,YAAa,SAAS,GAClB,OAAO,CACX,EACA,KAAM,EACN,MAAO,SAAS,GACZ,MAAM,IAAI,MAAM,EAAE,IACtB,EACA,cAAc,GAElB,EAAI,EACJ,EAAI,GACJ,EAAI,KACR,EAAE,EAAG,CACD,QAAS,CAAC,EACV,MAAO,EACP,YAAa,EAAE,SAEvB,EAAG,SAAS,EAAG,EAAG,GACd,SAAS,EAAE,EAAG,GAEV,OADA,EAAI,EAAE,aAAa,EAAI,GAChB,EAAE,OAAO,GAAK,OAAO,GAAK,CACrC,CAEA,SAAS,EAAE,EAAG,EAAG,GACb,EAAI,EAAI,UAAU,aAAU,IAAW,EAAI,EAAI,KAAM,EAAI,EAAI,EAC7D,EAAE,OAAO,IAAM,KAAO,EAAI,EAAE,aAAa,EAAG,GAAK,EAAE,gBAAgB,EACvE,CACA,EAAE,YAAa,EACf,IAAI,EAAI,OAAO,QAAU,SAAS,GAC1B,IAAK,IAAI,EAAI,EAAG,EAAI,UAAU,OAAQ,IAAK,CACvC,IAAI,EAAG,EAAI,UAAU,GACrB,IAAK,KAAK,EAAG,OAAO,UAAU,eAAe,KAAK,EAAG,KAAO,EAAE,GAAK,EAAE,GACzE,CACA,OAAO,CACX,EACA,EAAI,EAAE,GACN,EAAS,GAAM,EAAE,WAAa,EAAI,CAC9B,QAAS,GAEb,EAAI,CAAC,IACD,GAAI,GAAK,EAAE,WAAY,OAAO,EAC9B,IAAI,EAAI,CAAC,EACT,GAAI,MAAQ,EACR,IAAK,IAAI,KAAK,EAAG,OAAO,UAAU,eAAe,KAAK,EAAG,KAAO,EAAE,GAAK,EAAE,IAC7E,OAAO,EAAE,QAAU,EAAG,CACzB,EANG,CAMD,EAAE,IACL,EAAI,WACJ,EAAI,WACJ,EAAI,YAER,SAAS,EAAE,GACP,IAAI,EAAI,EAAI,UAAU,aAAU,IAAW,UAAU,GAAK,UAAU,GAAK,CAAC,EAG1E,KAFQ,gBACA,GACe,MAAM,IAAI,UAAU,qCAC3C,KAAK,KAAO,EAAG,KAAK,QAAU,EAAG,KAAK,IAAM,EAAE,cAAe,KAAK,IAAM,KAAK,IAAI,aAAe,KAAK,IAAI,aAAc,KAAK,OAAS,IAAI,EAAE,QAAQ,GAAI,CACnJ,QAAS,EAAE,UACX,KAAK,QAAU,CAAC,GAAI,KAAK,aAAe,GAAI,KAAK,UAAY,KAAK,IAAI,cAAc,EAAE,UAAW,KAAK,YAAc,GAAI,KAAK,WAAa,GAAI,EAAE,KAAK,UAAW,UAAW,EACnL,CACA,EAAE,UAAU,MAAQ,WAChB,IAAI,EACJ,KAAM,EAAI,KAAK,YAAY,KAAK,MAAM,EAAG,YAAa,KAAK,gBAAkB,KAAK,WAAW,QAAS,CAClG,IAAI,EAAI,KAAK,WAAW,QACxB,EAAE,WAAW,GAAK,KAAK,cAAc,GAAK,KAAK,WAAW,EAC9D,CACJ,EAAG,EAAE,UAAU,cAAgB,SAAS,GACpC,IAAI,EAAI,CACJ,KAAM,WACN,MAAO,EAAE,MAAQ,EAAE,YAEvB,KAAK,eAAe,GAAI,EAAE,KAAK,KAAK,IAAK,KAAK,KAAM,KAAK,cAAc,EAC3E,EAAG,EAAE,UAAU,WAAa,SAAS,GACjC,KAAK,OAAO,OAAO,GACnB,IAAK,IAAI,OAAI,EAAQ,OAAI,EAAQ,OAAI,EAAQ,EAAI,IAC5C,EAAI,KAAK,OAAO,gBAAkB,EAAI,EAAE,SAAS,OAAS,EAAI,EAAE,QAAQ,MAAM,EAAI,KAAK,QAAQ,iBAAiB,KAAO,EAAE,KAAK,GACnI,EAAI,EAAE,QAAU,KAAK,mBAAmB,GAAI,GAAK,KAAK,mBAAmB,GAAI,GAAK,KAAK,kBAAkB,EAC7G,EAAG,EAAE,UAAU,mBAAqB,SAAS,GAEzC,OADA,EAAI,KAAK,YAAY,IACZ,QAAU,EAAE,KAAO,KAAK,aAAe,EAAE,OAAQ,KAAK,cAAgB,EAAE,MAAO,KAAK,UAAU,UAAY,EAAE,KAAM,KAAK,aAAc,GAAK,IACvJ,EAAG,EAAE,UAAU,YAAc,SAAS,GAClC,IAAK,IAAI,EAAI,KAAK,QAAQ,OAAQ,EAAI,GAAI,EAAI,GAAI,EAAI,GAAI,EAAI,EAAE,OAAQ,EAAI,EAAG,EAAI,EAAG,IAAK,CACvF,IAAI,EAAG,EAAI,EAAE,GACT,EAAI,EAAE,WACV,EAAE,KAAK,GAAI,EAAE,MAAQ,cAAc,KAAK,EAAE,WAAa,EAAI,IAAK,EAAE,KAAK,EAAE,QAAQ,SAAU,IAAM,EAAI,MAAQ,EAAI,QAAS,EAAE,MAAM,KAAO,GAAK,EAAE,MAAM,KAAO,GAAK,EAAE,KAAK,cAAgB,EAAE,KAAO,GAAK,IAAM,EAAE,QAAU,IAAM,EAAI,WAAa,GAAK,EAAE,MAAQ,MAAQ,QAAU,EAAE,KAAK,GAAI,EAAE,KAAK,WAAa,EAAE,KAAO,EAAI,IACjU,CACA,MAAO,CACH,OAAQ,EACR,IAAK,EAAE,KAAK,IACZ,OAAQ,EAAE,KAAK,IACf,MAAO,EAAE,KAAK,IAEtB,EAAG,EAAE,UAAU,WAAa,WACxB,IAAK,IAAI,EAAG,EAAI,CAAC,KAAK,WAAY,EAAE,OAAO,EAAI,EAAE,UAAW,CACxD,IAAI,EAAI,IAAM,EAAE,WACd,GAAK,EAAE,EAAG,cAAgB,GAAK,EAAE,KAAK,QAAQ,EAAE,EAAG,OAAS,EAAG,MAAO,EAAI,EAAE,YAAc,EAAE,EAAE,WAAY,aAAe,KAAK,QAAQ,GAAG,YAAY,GAAI,EAAE,QAAQ,MAAM,EAAG,EAAE,QAAQ,EAAE,YAC9L,CACJ,EAAG,EAAE,UAAU,mBAAqB,SAAS,GACzC,IAAI,EAAI,KACJ,EAAI,KAAK,OAAO,QACpB,GAAK,KAAK,WAAW,QAAQ,GAAI,EAAE,IAAM,EAAE,MAAM,KAAO,EAAE,MAAM,KAAM,EAAI,KAAK,QAAQ,iBAAiB,MAAQ,EAAE,KAAO,KAAK,YAAY,OAAS,KAAK,eAAiB,EAAI,KAAK,eAAe,GAAI,KAAK,kBAAkB,GAAG,WAC3N,EAAE,cAAc,EACpB,IACJ,EAAG,EAAE,UAAU,kBAAoB,SAAS,GACxC,IAAI,EAAI,KAAK,OAAO,QACpB,GAAK,KAAK,WAAW,QAAQ,GAAI,EAAE,KAAO,EAAE,MAAM,MAAQ,EAAE,MAAM,MAAQ,YAAa,EAAI,KAAK,QAAQ,iBAAiB,KAAO,KAAK,iBAAiB,GAAI,GAAK,KAAK,OACxK,EAAG,EAAE,UAAU,iBAAmB,SAAS,GACvC,IAAI,EAAI,KAAK,YAAY,GACzB,KAAK,cAAc,EAAG,GAAI,EAAE,UAAY,EAAE,aAAe,EAAE,MAAQ,EAAE,WAAW,QAAU,EAAE,QAAU,EAAE,YAAY,KAAK,IAAI,eAAe,EAAE,UAClJ,EAAG,EAAE,UAAU,YAAc,SAAS,GAClC,IAAI,EAAI,KAAK,IAAI,cAAc,EAAE,SACjC,OAAO,EAAE,aAAa,OAAQ,EAAE,MAAO,EAAE,QAAQ,EAAE,OAAO,SAAS,EAAG,GAClE,EAAE,aAAa,EAAG,EACtB,IAAI,CACR,EAAG,EAAE,UAAU,cAAgB,SAAS,EAAG,GACvC,KAAK,WAAW,aAAe,EAAI,QACnC,EAAI,KAAK,IAAI,eAAe,KACvB,EAAE,WAAW,aAAa,EAAG,EACtC,EAAG,EAAE,UAAU,eAAiB,SAAS,GACrC,EAAE,YAAc,KAAK,WAAY,KAAK,WAAa,GAAI,KAAK,YAAY,QAAQ,EACpF,EAAG,EAAE,UAAU,cAAgB,SAAS,GACpC,OAAO,IAAM,KAAK,YAAY,QAAU,KAAK,QAAQ,MAAM,CACvD,IAAK,iDACH,KAAK,YAAY,QAAS,KAAK,MAAM,MAAM,KAAM,EAAE,mBAAoB,KAAK,YAAY,QAAU,KAAK,iBAAmB,KAAK,eAAe,KAAK,gBAAiB,KAAK,eAAiB,OACpM,EAAG,EAAE,UAAU,kBAAoB,SAAS,EAAG,GAC3C,IAAI,EAAI,KAAK,aAAa,GACtB,EAAI,KAAK,eAAe,GACxB,EAAI,KAAK,QAAQ,WACrB,EAAE,MAAQ,EAAE,IAAM,EAAE,IAAK,KAAK,mBAAmB,EAAG,EAAI,EAAI,WACxD,IAAK,GACT,IACA,IACI,KAAK,cAAc,EAAG,GAAI,EAAE,MAAQ,GAAK,GAC7C,CAAE,MAAO,GACL,KAAK,QAAQ,MAAM,GAAI,GAC3B,CACJ,EAAG,EAAE,UAAU,aAAe,SAAS,GACnC,IAAI,EAAI,KAAK,IAAI,cAAc,EAAE,SACjC,OAAO,EAAE,QAAQ,EAAE,OAAO,SAAS,EAAG,GAClC,EAAE,aAAa,EAAG,EACtB,IAAI,EAAE,UAAY,EAAE,KAAO,EAAE,SAAU,CAC3C,EAAG,EAAE,UAAU,mBAAqB,SAAS,EAAG,GAC5C,SAAS,IACL,EAAI,EAAE,OAAS,EAAE,mBAAqB,EAAE,QAAU,IACtD,CAEA,SAAS,IACL,IAAK,MAAQ,GAAK,IAAK,EAAI,IAC/B,CAEA,SAAS,EAAE,GACP,IAAK,EAAE,GAAI,MAAQ,GAAK,IAAK,EAAI,IACrC,CAEA,SAAS,EAAE,EAAG,GACV,IAAI,EAAI,EAAE,KAAO,GACjB,MAAQ,IAAM,EAAE,MAAQ,GAAK,EACjC,CACA,IAAI,EAAI,KAAK,QAAQ,MACrB,EAAE,EAAG,QAAS,EAAE,EAAG,SAAU,EAAE,EAAG,CAC9B,OAAQ,WACJ,GAAI,EAAE,QAAS,IACX,EAAE,QAAQ,MAAM,KAAM,MAAM,UAAU,MAAM,KAAK,UAAW,GAChE,CAAE,MAAO,GACL,EAAE,CACE,IAAK,yBAA2B,EAAI,MAAQ,EAAE,KAEtD,CACA,GACJ,EACA,QAAS,WACL,GAAI,EAAE,SAAU,IACZ,EAAE,SAAS,MAAM,KAAM,MAAM,UAAU,MAAM,KAAK,UAAW,GACjE,CAAE,MAAO,GACL,YAAY,EAAE,CACV,IAAK,0BAA4B,EAAI,MAAQ,EAAE,KAEvD,CACA,EAAE,CACE,IAAK,wBAA0B,EAAE,KAEzC,EACA,mBAAoB,WAChB,sBAAsB,KAAK,EAAE,aAAe,GAChD,GAER,EAAG,EAAE,UAAU,eAAiB,SAAS,GACrC,OAAQ,YAAY,KAAK,EAAE,cAAgB,KAAK,QAAQ,cAAgB,EAAE,KAAO,EAAE,aAAa,SACpG,EAAG,EAAE,QAAU,CACnB,EAAG,SAAS,EAAG,EAAG,GACd,SAAS,EAAE,GACP,IAAI,EACJ,OAAQ,EAAE,KAAO,EAAI,EAAE,GAAK,CACxB,QAAS,CAAC,EACV,GAAI,EACJ,QAAQ,GACT,EAAE,GAAG,KAAK,EAAE,QAAS,EAAG,EAAE,QAAS,GAAI,EAAE,QAAS,EAAI,IAAI,OACjE,CACA,IAAI,EAAG,EACP,EAAE,SAAW,EAAI,CAAC,SAAS,EAAG,EAAG,GAEzB,GADA,EAAI,EAAE,KACS,EAAE,WAAa,EAAI,CAC9B,QAAS,GAEjB,EAAE,QAAU,EAAE,OAClB,EAAG,SAAS,EAAG,EAAG,GACd,SAAS,EAAE,GACP,GAAI,GAAK,EAAE,WAAY,OAAO,EAC9B,IAAI,EAAI,CAAC,EACT,GAAI,MAAQ,EACR,IAAK,IAAI,KAAK,EAAG,OAAO,UAAU,eAAe,KAAK,EAAG,KAAO,EAAE,GAAK,EAAE,IAC7E,OAAO,EAAE,QAAU,EAAG,CAC1B,CACA,EAAE,YAAa,EACf,IAAI,EAAG,EAAI,EAAE,EAAE,IACX,EAAI,EAAE,EAAE,IACR,EAAI,EAAE,GACN,EAAS,GAAM,EAAE,WAAa,EAAI,CAC9B,QAAS,GAEb,EAAI,EAAE,GACN,EAAI,CACA,QAAS,QACT,OAAQ,OACR,UAAW,uDACX,SAAU,KACV,MAAO,SAEX,GAAK,EAAE,UAAU,OAAS,SAAS,GAC/B,KAAK,QAAU,CACnB,EAAG,EAAE,UAAU,QAAU,SAAS,GAC9B,KAAK,OAAS,EAAI,KAAK,MAC3B,EAAG,EAAE,UAAU,eAAiB,WAC5B,IAAI,EAAI,KAAK,iBACb,GAAI,EAAG,OAAO,KAAK,OAAS,KAAK,OAAO,MAAM,EAAE,QAAS,CAC7D,EAAG,EAAE,UAAU,eAAiB,WAC5B,IAAK,IAAI,KAAK,EACV,GAAI,EAAE,eAAe,IAAM,EAAE,GAAG,KAAK,KAAK,UACtC,EAAI,EAAE,GAAG,KAAK,SACP,MAAO,aAAe,EAAE,MAAQ,gBAAgB,KAAK,EAAE,SAAW,MAAQ,EAAE,KAAO,KAAK,OAAO,OAAO,EAAG,EAAE,QAAS,EAEvI,EAAG,EAAE,UAAU,UAAY,WACvB,OAAO,KAAK,YAChB,EAAG,EAAE,UAAU,UAAY,WACvB,OAAO,KAAK,YAChB,EAAG,EAAE,UAAU,WAAa,SAAS,GACjC,IAAK,IAAI,EAAG,EAAI,KAAK,aACjB,GAAI,EAAE,EAAE,QAAS,IAAO,EAAE,EAAE,MAAM,GAAI,MAC9C,EAAG,EAAE,UAAU,MAAQ,WACnB,IAAI,EAAI,KAAK,OACb,OAAO,KAAK,OAAS,GAAI,CAC7B,EAAG,EAAE,UAAU,KAAO,WAClB,OAAO,KAAK,MAChB,EAAG,GAEP,SAAS,IACL,IAAI,EAAI,KACJ,EAAI,EAAI,UAAU,aAAU,IAAW,UAAU,GAAK,UAAU,GAAK,GACrE,EAAI,EAAI,UAAU,aAAU,IAAW,UAAU,GAAK,UAAU,GAAK,CAAC,EAG1E,KAFQ,gBACA,GACe,MAAM,IAAI,UAAU,qCAC3C,KAAK,OAAS,EACd,IAAI,EAAG,GAAI,EACP,EAAI,CAAC,EACT,IAAK,KAAK,EAAG,EAAE,eAAe,KAAO,EAAE,UAAY,EAAE,EAAI,QAAS,GAAK,EAAI,GAAK,EAAE,EAAI,QACtF,GAAK,KAAK,YAAa,EAAI,EAAE,SAAS,KAAM,GAAG,WAC3C,OAAO,EAAE,gBACb,IAAI,KAAK,YAAa,EAAI,EAAE,SAAS,KAAM,GAAG,WAC1C,OAAO,EAAE,gBACb,MAAO,KAAK,WAAa,KAAK,eAAgB,KAAK,WAAa,KAAK,eACzE,CACA,IAAK,KAAM,EAAE,QAAU,GAAG,cAAgB,SAAS,GAC3C,OAAO,EAAE,UACb,EAAG,EAAE,iBAAmB,SAAS,GAC7B,IAAI,EAAG,EAAI,CAAC,EACZ,IAAK,KAAK,EAAG,EAAE,eAAe,KAAO,EAAE,IAAK,EAAI,EAAE,cAAc,EAAE,GAAI,OACtE,OAAO,CACX,EAAG,EAAE,SAAW,EAAG,EAAE,eAAe,KAAO,EAAE,eAAiB,EAAE,iBAAmB,EAAE,IAAM,EACnG,EAAG,SAAS,EAAG,GACX,IAAI,IAAM,EAAE,YAAa,GACrB,GAAI,EACJ,EAAI,OAAO,SAAS,cAAc,OACtC,IACI,IAAI,EAAI,iBACR,EAAE,UAAY,EAAG,EAAE,QAAU,EAAI,EAAE,YAAc,CACrD,CAAE,MAAO,GACL,EAAE,QAAU,GAAI,CACpB,CACA,IACI,EAAE,UAAY,wBAAyB,EAAE,UAAY,EAAI,IAAM,EAAE,WAAW,MAChF,CAAE,MAAO,GACL,EAAE,UAAY,GAAI,CACtB,CACA,EAAI,KAAM,EAAE,QAAU,EAAG,EAAE,UAAY,CAC3C,EAAG,SAAS,EAAG,EAAG,GACd,SAAS,EAAE,GACP,IAAI,EAAG,EAAG,EACV,IAAK,IAAM,EAAE,QAAQ,OACjB,EAAI,EAAE,MAAM,EAAE,aAEV,EAAI,CAAC,EAAG,EAAI,CAAC,EAAG,EAAI,EAAE,GAAI,EAAE,GAAG,QAAQ,EAAE,MAAM,SAAS,EAAG,GACvD,UAAU,IAAM,UAAU,IAAM,UAAU,IAAM,UAAU,GAAK,UAAU,IAAM,EAAE,UAAU,IAAM,GAAI,EAAE,UAAU,KAAM,GAAM,EAAE,GAAK,UAAU,IAAM,UAAU,IAAM,UAAU,IAAM,EAAE,SAAS,KAAK,IAAM,GAAK,GAAK,EAAE,GAAK,GAAI,EAAI,EAAE,QAAQ,EAAG,GACpP,IAII,iBAAc,KAHlB,EAAI,CACA,EAAG,IAAI,EAAE,cAAc,EAAE,GAAI,EAAE,GAAG,OAAQ,EAAG,IAAK,EAAE,GAAI,EAAE,QAAQ,qCAAsC,OAE3E,YAAc,EAAE,KAAK,OAAO,EAAE,CAG3E,CACA,EAAE,YAAa,EACf,IAAI,EAAI,mBAAqB,QAAU,iBAAmB,OAAO,SAAW,SAAS,GAC7E,cAAc,CAClB,EAAI,SAAS,GACT,OAAO,GAAK,mBAAqB,QAAU,EAAE,cAAgB,QAAU,IAAM,OAAO,UAAY,gBAAkB,CACtH,EACA,GAAK,EAAE,QAAU,SAAS,GACtB,IAAI,EAAI,EAAE,QAAQ,UAClB,GAAI,GAAK,EAAG,OAAO,IAAI,EAAE,aAAa,EAAE,OAAO,EAAG,EAAI,GAAI,EAAI,EAClE,EAAG,EAAE,MAAQ,SAAS,GAClB,IAAI,EAAI,EAAE,QAAQ,KAClB,OAAO,IAAI,EAAE,WAAW,GAAK,EAAI,EAAI,EAAE,OAC3C,EAAG,EAAE,SAAW,EAAG,EAAE,UAAY,SAAS,GACtC,IAAI,EAAI,EAAE,GACV,GAAI,IACA,EAAI,EAAE,MAAM,EAAE,SACR,MAAM,IAAI,OAAO,SAAW,EAAE,QAAU,QAAS,QACnD,EAAI,EAAE,MAAM,IAAI,OAAO,qBAAuB,EAAE,QAAU,QAAS,OAC5D,OAAO,IAAI,EAAE,eAAe,EAAE,QAAS,EAAE,GAAG,OAAS,EAAE,OAAQ,EAAE,MAAO,EAAE,aAAc,EAAE,GAG7G,EAAG,EAAE,OAAS,SAAS,GACnB,GAAI,EAAI,EAAE,MAAM,EAAE,QAAS,OAAO,IAAI,EAAE,YAAY,EAAE,GAAI,EAAE,GAAG,OACnE,EAAG,EAAE,IACL,EAAI,CACA,SAAU,gGACV,OAAQ,8BACR,KAAM,sHACN,SAAU,8GAEtB,EAAG,SAAS,EAAG,EAAG,GACd,SAAS,EAAE,EAAG,GACV,KAAM,aAAa,GAAI,MAAM,IAAI,UAAU,oCAC/C,CACA,EAAE,YAAa,EAAI,EAAE,YAAc,EAAE,eAAiB,EAAE,cAAgB,EAAE,SAAW,EAAE,WAAa,EAAE,aAAe,EAAE,WAAQ,EAC/H,IAAI,EAAI,EAAE,GACN,GAAK,EAAE,MAAQ,SAAS,EAAE,EAAG,GACzB,EAAE,KAAM,GAAI,KAAK,KAAO,EAAG,KAAK,OAAS,EAAG,KAAK,KAAO,EAC5D,EAAG,EAAE,cAAgB,EAAE,UAAU,SAAW,WACxC,MAAO,UAAY,KAAK,OAC5B,EAAG,GAAI,EAAE,YAAc,EAAE,UAAU,SAAW,WAC1C,OAAO,KAAK,IAChB,EAAG,GAAI,EAAE,UAAY,EAAE,UAAY,SAAS,GACxC,IAAI,EAAG,EAAG,EAAI,EAAI,UAAU,aAAU,IAAW,UAAU,GAAK,UAAU,GAAK,KAC3E,EAAI,IAAM,EAAE,QAChB,IAAK,KAAK,EAAE,MAAO,EAAE,MAAM,eAAe,KAAO,GAAK,IAAM,EAAG,EAAI,EAAE,MAAM,QAAI,IAAW,EAAE,mBAAgB,IAAW,EAAE,aAAa,KAAO,GAAK,MAAO,EAAI,EAAE,cAAc,GAAK,MAClL,OAAO,EAAE,OAAS,GAAK,IAAM,EAAE,MAAO,GAAK,EAAE,QAAU,EAAE,WAAa,KAAO,IAAK,MAAQ,IAAM,GAAK,EAAI,KAAO,EAAE,QAAU,KAAM,CACtI,EAAG,IAEP,SAAS,EAAE,EAAG,EAAG,EAAG,EAAG,GACnB,EAAE,KAAM,GAAI,KAAK,KAAO,EAAG,KAAK,OAAS,EAAG,KAAK,KAAO,GAAI,KAAK,QAAU,EAAG,KAAK,MAAQ,EAAG,KAAK,aAAe,EAAG,KAAK,OAAQ,EAAI,KAAK,YAAa,CAC5J,CAEA,SAAS,EAAE,GACP,EAAE,KAAM,GAAI,KAAK,KAAO,QAAS,KAAK,OAAS,EAAG,KAAK,KAAO,EAClE,CAEA,SAAS,EAAE,EAAG,GACV,EAAE,KAAM,GAAI,KAAK,KAAO,UAAW,KAAK,OAAS,IAAM,EAAI,EAAE,OAAS,GAAI,KAAK,KAAO,GAAI,KAAK,QAAU,CAC7G,CAEA,SAAS,EAAE,EAAG,GACV,EAAE,KAAM,GAAI,KAAK,KAAO,SAAU,KAAK,OAAS,EAAG,KAAK,KAAO,GAAI,KAAK,QAAU,CACtF,CAEA,SAAS,EAAE,EAAG,EAAG,EAAG,EAAG,GACnB,EAAE,KAAM,GAAI,KAAK,KAAO,YAAa,KAAK,OAAS,EAAG,KAAK,KAAO,GAAI,KAAK,QAAU,EAAG,KAAK,MAAQ,EAAG,KAAK,aAAe,EAAG,KAAK,OAAQ,EAAI,KAAK,YAAa,EAAI,KAAK,QAAU,CACzL,CAEA,SAAS,EAAE,EAAG,EAAG,EAAG,EAAG,EAAG,GACtB,EAAE,KAAM,GAAI,KAAK,KAAO,WAAY,KAAK,OAAS,EAAG,KAAK,KAAO,GAAI,KAAK,QAAU,EAAG,KAAK,MAAQ,EAAG,KAAK,aAAe,EAAG,KAAK,YAAa,EAAI,KAAK,MAAQ,EAAG,KAAK,KAAO,CACpL,CACA,EAAE,eAAiB,EAAE,UAAU,SAAW,WACtC,OAAO,EAAE,UAAU,KACvB,EAAG,GAAI,EAAE,gBAAkB,EAAE,UAAU,SAAW,WAC9C,OAAO,EAAE,UAAU,KAAM,KAAK,QAClC,EAAG,GAAI,EAAE,aAAe,EAAE,UAAU,SAAW,WAC3C,MAAO,KAAO,KAAK,QAAU,GACjC,EAAG,EACP,EAAG,SAAS,EAAG,GACX,EAAE,YAAa,EAAI,EAAE,aAAe,SAAS,GACzC,IAAI,EAAI,EAAI,UAAU,aAAU,IAAW,UAAU,GAAK,UAAU,GAAK,GACzE,OAAO,EAAI,EAAE,QAAQ,aAAa,SAAS,EAAG,GAC1C,MAAO,KAAK,KAAK,GAAK,EAAI,IAAM,EAAI,KACxC,IAAK,CACT,CACJ,EAAG,SAAS,EAAG,GACX,SAAS,EAAE,GACP,OAAO,GAAK,aAAe,EAAE,OAAS,EAAE,MAAQ,EAAE,KAAK,EAAE,UAAY,EAAE,MAAO,EAAE,YAAc,OAAO,KAAK,EAAE,OAAQ,CACxH,CAEA,SAAS,EAAE,EAAG,GACV,EAAI,EAAE,MACN,EAAE,QAAQ,KAAO,EAAE,QAAU,IACjC,CACA,EAAE,YAAa,EAAI,EAAE,QAAU,SAAS,EAAG,EAAG,GAC1C,SAAS,IACL,IAAI,EAAG,EAAG,EACH,GAAK,EAAI,GAAG,OAAQ,EAAI,EAAE,KAAM,EAAE,OAAS,EAAG,GAAK,EAAE,EAAE,OAAS,EAAE,EAAE,MAAM,EACrF,EAAE,EAAI,IAAI,KAAO,WACb,OAAO,KAAK,KAAK,OAAS,EAC9B,EAAG,EAAE,cAAgB,SAAS,GAC1B,IAAI,EAAI,KAAK,OACb,OAAO,GAAK,EAAE,SAAW,EAAE,QAAQ,gBAAkB,EAAE,aAC3D,EAAG,EAAE,gBAAkB,SAAS,GAC5B,IAAK,IAAI,EAAG,EAAI,EAAG,EAAI,KAAK,GAAI,IAC5B,GAAI,EAAE,UAAY,EAAG,OAAO,EAChC,OAAO,CACX,EACA,IAAI,EAAG,EAAI,EACP,EAAI,CACA,SAAU,SAAS,GACf,IAAI,EAAI,EAAE,QACV,OAAS,EAAE,eAAiB,EAAE,cAAc,UAAY,EAAE,QAAQ,WAAY,KAAO,EAAE,cAAgB,EAAE,KAAK,IAAM,EAAE,gBAAgB,GAAK,EAAE,cAAc,GAAK,EAAE,EAAG,IAAM,EAAE,QAAQ,KAAO,EAAE,QAAU,KAAM,KAAO,EAAE,OAAS,EAAE,KAAK,EAC3O,EACA,OAAQ,SAAS,GACb,EAAE,OAAS,EAAE,aAAe,EAAE,cAAc,EAAE,SAAW,EAAE,EAAG,GAAK,EAAE,MAAQ,EAAE,aAAe,IAAK,IACvG,GAER,OAAO,WACH,OAAO,IAAK,EAAE,IAClB,CACJ,EACA,IAAI,EAAI,kFACJ,EAAI,uDACZ,GAAI,EAAI,CAAC,EAAG,EAAE,EAAI,EAAG,EAAE,EAAI,EAAG,EAAE,EAAI,GAAI,EAAE,GAC9C,EAAG,SAAS,EAAG,GACX,SAAS,EAAE,GACP,OAAO,MAAQ,CACnB,CAEA,SAAS,EAAE,EAAG,EAAG,GACR,IAAI,OAAI,EAAQ,EAAI,GAAK,EAAE,QAAU,EAA1C,IAA6C,EAAI,EAAG,EAAI,EAAG,IAAK,EAAE,KAAK,EAAG,EAAE,GAAI,EACpF,CAEA,SAAS,EAAE,EAAG,EAAG,GACb,IAAK,IAAI,KAAK,EAAG,EAAE,eAAe,IAAM,EAAE,KAAK,EAAG,EAAG,EAAE,GAC3D,CAEA,SAAS,EAAE,EAAG,GACV,SAAU,GAAK,aAAe,EAAE,MAAQ,cAAgB,EAAE,QAAU,YAAa,MAAQ,EAAE,QAAQ,cAAc,QAAQ,GAC7H,CACA,EAAE,YAAa,EACf,IAAI,EAAI,mBAAqB,QAAU,iBAAmB,OAAO,SAAW,SAAS,GACjF,cAAc,CAClB,EAAI,SAAS,GACT,OAAO,GAAK,mBAAqB,QAAU,EAAE,cAAgB,QAAU,IAAM,OAAO,UAAY,gBAAkB,CACtH,EACA,EAAE,OAAS,EAAG,EAAE,WAAa,SAAS,GAClC,MAAO,mBAAqB,CAChC,EAAG,EAAE,KAAO,EAAG,EAAE,QAAU,EAAG,EAAE,SAAW,SAAS,EAAG,GACnD,OAAO,EAAI,GAAK,CAAC,EAAG,EAAE,GAAG,SAAS,EAAG,GACjC,EAAE,EAAE,MAAQ,EAAE,GAAK,EACvB,IAAI,CACR,EAAG,EAAE,QAAU,SAAS,GACpB,IACI,OAAO,MAAM,UAAU,MAAM,KAAK,EACtC,CAAE,MAAO,GAOL,GANA,EAAI,GAAI,EAAE,GAAG,SAAS,GAClB,EAAE,KAAK,EACX,IAII,iBAAc,KAHlB,EAAI,CACA,EAAG,IAE0B,YAAc,EAAE,IAAK,OAAO,EAAE,CACnE,CACA,IAAI,CACR,EAAG,EAAE,KAAO,SAAS,GACjB,OAAO,EAAE,EAAE,OAAS,EACxB,EAAG,EAAE,MAAQ,EAAG,EAAE,SAAW,SAAS,GAClC,OAAO,EAAE,EAAG,SAChB,EAAG,EAAE,QAAU,SAAS,GACpB,OAAO,EAAE,EAAG,QAChB,CACJ,GAAI,EAAI,CAAC,EAAG,EAAE,EAAI,EAAG,EAAE,EAAI,EAAG,EAAE,EAAI,GAAI,EAAE,GAE1C,SAAS,EAAE,GACP,IAAI,EACJ,OAAQ,EAAE,KAAO,EAAI,EAAE,GAAK,CACxB,QAAS,CAAC,EACV,GAAI,EACJ,QAAQ,GACT,EAAE,GAAG,KAAK,EAAE,QAAS,EAAG,EAAE,QAAS,GAAI,EAAE,QAAS,EAAI,IAAI,OACjE,CACA,IAAI,EAAG,CACX,IAAI,EAAE,UAAU,OAAM,WAClB,IAAI,EAAG,EAAG,EAAG,EACb,EAAE,aAAa,OAAM,WACjB,IAAI,EAAI,EAAE,MAAM,KAAK,UACrB,GAAK,EAAE,QAAU,EAAE,GAAG,SAAS,SACnC,IAAI,EAAE,oBAAoB,OAAM,WAC5B,EAAE,MAAM,QAAQ,UAAU,YAAY,SAC1C,IAAI,EAAE,uBAAuB,OAAM,SAAS,GACxC,MAAQ,EAAE,QAAU,EAAE,MAAM,YAAY,SAC5C,IAAI,EAAE,QAAQ,GAAG,gBAAkB,EAAI,EAAE,gBAAgB,QAAS,EAAI,EAAE,gBAAgB,SAAU,EAAI,EAAE,gBAAgB,SAAS,IAAK,EAAI,EAAE,gBAAgB,SAAS,KAAO,SAAS,EAAE,gBAAgB,IAAI,iBAAkB,EAAE,sBAAsB,MAAK,WACtP,IAAI,EAAI,EAAE,MACN,EAAI,EAAE,MAAO,MACb,EAAI,EAAE,GAAG,QACT,EAAI,EAAE,GAAG,SACT,EAAI,EAAE,GAAG,SAAS,KACrB,EAAI,EAAE,GAAG,SAAS,OAAS,GAAK,GAAK,GAAK,EAAI,GAAK,EAAI,GAAK,EAAI,GAAK,EAAI,EAAI,IAAM,EAAE,KAAK,MAAO,EAAE,KAAK,YAAa,EAAE,KAAK,UAAW,IAC5I,MAAM,EAAE,QAAQ,GAAG,iBAAmB,EAAE,QAAQ,QAAU,MACtD,IAAI,EAAG,EAAG,EAAI,SAAS,cAAc,KACjC,EAAI,CACA,gBAAiB,oBACjB,WAAY,eACZ,YAAa,gBACb,aAAc,iBACd,UAAW,aAEnB,IAAK,KAAK,SAAS,KAAK,aAAa,EAAG,MAAO,EAAG,EAAE,eAAe,SAAM,IAAW,EAAE,MAAM,KAAO,EAAE,MAAM,GAAK,2BAA4B,EAAI,OAAO,iBAAiB,GAAG,iBAAiB,EAAE,KAC9L,OAAO,SAAS,KAAK,YAAY,QAAI,IAAW,GAAK,EAAI,EAAE,QAAU,SAAW,CACnF,EAXyD,IAWlD,EAAE,WAAW,YAAY,mBACjC,IAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAAE,iBAAiB,MAC5C,EAAI,EAAE,eAAe,MACrB,EAAI,EAAE,cAAc,MACpB,GAAK,EAAE,QAAQ,GAAG,iBAAmB,aAAa,EAAG,UAAW,EAAE,+BAA+B,GAAG,QAAS,eAAe,WACxH,EAAE,4BAA4B,SAAS,QAAS,EAAE,wCAAwC,YAAY,OAC1G,IAAI,EAAE,+BAA+B,GAAG,QAAS,kBAAkB,WAC/D,EAAE,4BAA4B,SAAS,QAAS,EAAE,2CAA2C,YAAY,OAC7G,IAAI,EAAE,sBAAsB,GAAG,QAAS,gBAAgB,WACpD,EAAE,4BAA4B,SAAS,QAAS,EAAE,qCAAqC,KAAK,sBAAwB,EAAE,gBAAgB,MAAQ,qCAAsC,EAAE,yCAAyC,YAAY,OAC/O,IAAI,EAAE,WAAW,GAAG,QAAS,gBAAgB,WACzC,EAAE,KAAK,aAAc,CACjB,KAAM,SACN,KAAM,EAAE,gBAAgB,KAAK,UAC9B,MAAK,SAAS,GAEb,GAAI,YADJ,EAAI,EAAI,KAAK,MAAM,GAAK,MACL,OAAQ,YAAW,WAClC,SAAS,QACb,GAAG,UACE,GAAI,SAAW,EAAE,OAAQ,OAAO,MAAM,sDAAsD,CACrG,GACJ,IAAI,EAAE,gBAAgB,OAAM,WACxB,EAAE,gDAAgD,SAAS,OAC/D,IAAI,IAAM,EAAE,mBAAmB,MAAO,EAAE,OAAO,mBAC/C,GAAK,GAAK,WAAa,GAAK,EAAE,sBAAsB,IAAI,GAAI,EAAE,sBAAsB,GAAG,UAAU,WAC7F,IAAI,EAAI,KAAK,MACb,EAAI,UAAY,EAAI,EAAE,QAAQ,IAAI,CAC9B,mBAAoB,UACpB,mBAAoB,8DACpB,oBAAqB,WACtB,YAAY,cAAgB,UAAY,EAAI,EAAE,QAAQ,IAAI,CACzD,mBAAoB,UACpB,mBAAoB,mEACpB,oBAAqB,WACtB,YAAY,cAAgB,WAAa,EAAI,EAAE,QAAQ,IAAI,CAC1D,mBAAoB,EACpB,mBAAoB,gEACpB,oBAAqB,WACtB,SAAS,cAAgB,EAAE,QAAQ,IAAI,CACtC,mBAAoB,EACpB,mBAAoB,SACrB,YAAY,cAAgB,WAAa,EAAI,EAAE,QAAQ,SAAS,cAAgB,EAAE,QAAQ,YAAY,cAAe,EAAE,OAAO,iBAAkB,EAAG,CAClJ,QAAS,IACT,KAAM,KAEd,IAAI,IAAM,EAAI,EAAE,OAAO,eAAgB,EAAI,EAAE,OAAO,eAAgB,EAAI,EAAE,OAAO,qBAAsB,EAAI,EAAE,OAAO,uBAAwB,EAAI,EAAE,OAAO,0BAA2B,EAAI,EAAE,iBAAiB,MAAO,EAAI,EAAE,gBAAgB,MAAO,EAAE,gBAAgB,MAAO,EAAI,EAAE,aAAa,IAAI,GAAK,EAAE,QAAQ,QAAU,EAAE,aAAa,IAAI,qBAAsB,EAAI,EAAE,aAAa,IAAI,GAAK,EAAE,QAAQ,QAAU,EAAE,aAAa,IAAI,QAAS,GAAK,QAAU,EAAI,EAAE,gBAAgB,IAAI,GAAK,EAAE,gBAAgB,IAAI,QAAS,GAAK,IAAM,EAAE,aAAa,KAAK,WAAW,GAAK,EAAE,cAAc,KAAK,WAAW,IAAM,GAAK,GAAK,EAAE,gBAAgB,KAAK,WAAW,GAAK,EAAE,iBAAiB,KAAK,WAAW,IAAO,iBAAmB,EAAE,cAAc,OAAQ,EAAE,aAAa,GAAG,UAAU,WAC7uB,IAAI,EAAI,KAAK,MACb,EAAE,cAAc,IAAI,cAAe,GAAI,EAAE,OAAO,cAAe,EAAG,CAC9D,QAAS,IACT,KAAM,KAEd,IAAI,EAAE,aAAa,GAAG,UAAU,WAC5B,IAAI,EAAI,KAAK,MACb,EAAE,cAAc,IAAI,YAAa,GAAI,EAAE,OAAO,cAAe,EAAG,CAC5D,QAAS,IACT,KAAM,KAEd,IAAI,EAAE,gBAAgB,GAAG,UAAU,WAC/B,IAAI,EAAI,KAAK,MACb,EAAE,cAAc,IAAI,cAAe,GAAI,EAAE,OAAO,oBAAqB,EAAG,CACpE,QAAS,IACT,KAAM,KAEd,IAAI,EAAE,SAAS,MAAM,GAAG,QAAS,6BAA6B,WAC1D,GAAK,EAAE,OAAO,mBAAqB,EAAE,WAAW,UAAU,KAAM,EAAE,MAAM,KAAK,qDAAsD,EAAE,YAAY,IAAI,aAAc,KAAM,EAAE,aAAa,iBAAkB,CACtM,KAAM,QACH,EAAE,WAAW,QAAQ,KAAM,EAAE,MAAM,KAAK,uDAAwD,EAAE,YAAY,IAAI,aAAc,QAAS,EAAE,OAAO,iBAAkB,EAAG,CAC1K,QAAS,IACT,KAAM,MAEd,IAAI,EAAE,8BAA8B,OAAM,WACtC,OAAS,KAAK,OAAS,EAAE,YAAY,YAAY,aAAa,SAAS,mBAAoB,EAAE,OAAO,sBAAuB,EAAG,CAC1H,QAAS,IACT,KAAM,QACH,EAAE,YAAY,YAAY,mBAAmB,SAAS,aAAc,EAAE,aAAa,sBAAuB,CAC7G,KAAM,MAEd,IAAI,EAAE,iCAAiC,OAAM,WACzC,OAAS,KAAK,OAAS,EAAE,cAAc,KAAK,EAAE,cAAc,OAAO,QAAQ,oCAAqC,SAAU,EAAE,OAAO,yBAA0B,EAAG,CAC5J,QAAS,IACT,KAAM,QACH,kBAAoB,EAAE,cAAc,KAAK,kBAAmB,EAAE,aAAa,yBAA0B,CACxG,KAAM,MAEd,IAAI,EAAE,UAAU,SAAQ,SAAS,IAC7B,IAAO,EAAE,4CAA4C,GAAG,WAAa,EAAE,UAAY,IAAM,EAAE,OAAS,IAAM,EAAE,MAAQ,EAAE,cAAc,GAAG,QAAU,IAAM,EAAE,OAAS,IAAM,EAAE,MAAQ,EAAE,cAAc,GAAG,QAAU,IAAM,EAAE,OAAS,EAAI,EAAE,QAAQ,YAAa,EAAE,QAAQ,UAAU,EAAI,KAAO,IAAM,EAAE,QAAU,EAAI,EAAE,QAAQ,YAAa,EAAE,QAAQ,UAAU,EAAI,KACnW,IAAI,EAAE,gBAAgB,GAAG,QAAS,uBAAuB,WACrD,EAAE,uBAAuB,KAAK,YAAY,GAAK,EAAE,IAAI,0CAA2C,CAC5F,KAAM,iBACN,KAAM,IACP,MAAK,SAAS,GACb,IAAI,EAAI,EAAI,SAAW,EAAI,IAAM,GACjC,EAAI,EAAE,QAAQ,IAAI,OAAO,EAAI,UAAY,EAAI,KAAM,KAAM,EAAI,UAAY,EAAI,eAAgB,EAAE,iBAAiB,YAAY,EAChI,GACJ,IAAI,EAAE,gBAAgB,GAAG,QAAS,wBAAwB,WACtD,IAAI,EAAI,OAAO,qBAAsB,IACrC,GAAI,OAAS,IAAK,IAAO,EAAG,OAAO,EACnC,KAAO,EAAI,MAAM,mDAAqD,EAAE,wBAAwB,SAAS,QAAS,EAAE,KAAK,0CAA2C,CAChK,KAAM,gBACN,GAAI,EAAE,eAAe,MACrB,QAAS,IACT,MAAM,0BACd,IAAI,EAAI,EAAE,iBAAiB,OAAQ,EAAE,KAAK,0CAA2C,CACjF,KAAM,uBACN,IAAK,EACL,QAAS,EACT,IAAK,EACL,KAAM,EACN,IAAK,EACL,GAAG,IAAK,MAAM,YACd,+HAAiI,EAAE,cAAc,SAAW,EAAE,cAAc,SAAS,SAAU,EAAE,eAAe,GAAG,YAAa,kBAAkB,WAClP,EAAE,MAAM,OAAO,SAAS,WAAa,EAAE,MAAM,SAAS,KAAK,IAAI,CAC3D,eAAgB,IAChB,gBAAiB,QAEzB,KAAK,MACT,EAAE,iBAAiB,OAAM,WACrB,IAAI,EACJ,aAAa,GAAI,IAAM,EAAI,EAAE,MAAM,OAAO,OAAS,EAAE,oBAAoB,KAAK,IAAI,SAAS,QAAU,GAAK,EAAE,SAAW,EAAE,oBAAoB,KAAK,2FAA2F,YAAY,QAAS,EAAI,YAAW,WAC7Q,aAAa,EACjB,GAAG,KACP,IAAI,EAAE,iBAAiB,KAAK,SAAS,WACjC,aAAa,GACb,IAAI,EAAI,KACR,YAAW,WACP,IAAI,EAAI,EAAE,GAAG,MACb,GAAK,EAAE,OAAS,EAAE,oBAAoB,KAAK,IAAI,SAAS,QAAU,GAAK,EAAE,SAAW,EAAE,oBAAoB,KAAK,2FAA2F,YAAY,QAAS,EAAI,YAAW,WAC1O,aAAa,EACjB,GAAG,KACP,GAAG,EACP,IAAI,EAAE,QAAQ,OAAM,SAAS,GACzB,iBAAmB,EAAE,OAAO,IAAM,EAAE,oBAAoB,KAAK,IAAI,SAAS,OAC9E,IAAI,EAAE,YAAY,GAAG,QAAS,OAAO,WACjC,IAAI,EAAI,EAAE,MACN,EAAI,EAAE,KAAK,aACX,EAAI,EAAE,SAAS,KAAK,cACpB,EAAI,EAAE,SAAS,KAAK,YACxB,GAAI,EAAE,SAAS,UAAW,OAAO,EACjC,EAAE,IAAI,CACF,OAAQ,UACR,iBAAkB,OAClB,QAAS,QACT,EAAE,IAAI,0CAA2C,CACjD,KAAM,aACN,UAAW,EACX,WAAY,EACZ,SAAU,IACX,MAAK,SAAS,GACb,EAAE,gBAAgB,YAAY,UAAW,EAAE,SAAS,UAAW,EAAE,IAAI,CACjE,OAAQ,UACR,iBAAkB,OAClB,QAAS,MACT,EAAE,aAAa,SAAU,EAAE,YAAY,MAAM,GAAI,EAAE,aAAa,OAAO,OAAO,IACtF,GACJ,IAAI,EAAE,cAAc,KAAK,gBAAkB,EAAE,cAAc,UAAY,EAAE,kBAAkB,YAAY,QAAS,EAAE,iCAAiC,GAAG,QAAS,QAAQ,SAAS,GAC5K,EAAE,iBACN,IAAI,EAAE,iBAAiB,GAAG,SAAU,cAAc,SAAS,GACvD,EAAE,iBACF,IAAI,EAAI,EAAE,cAAc,KAAK,yBACzB,EAAI,EAAE,MAAM,OACZ,GAAK,EAAI,EAAE,eAAe,MAAO,SAAS,EAAE,sBAAsB,MAAO,KAC7E,SAAS,EAAI,EAAI,EAAI,EAAI,IAAM,GAAK,EAAI,IAAM,EAAE,IAAI,CAChD,OAAQ,UACR,iBAAkB,OAClB,QAAS,QACT,EAAE,IAAI,0CAA2C,CACjD,KAAM,eACN,IAAK,EACL,OAAQ,EACR,MAAO,EACP,KAAM,EACN,OAAQ,IACT,MAAK,SAAS,GACb,EAAI,EAAI,KAAK,MAAM,GAAK,KACxB,gBAAgB,EAAG,EAAG,EAAG,EAAE,UAAW,EAAE,WAAY,EAAE,IAAI,CACtD,OAAQ,UACR,iBAAkB,OAClB,QAAS,KAEjB,IACJ,IAAI,EAAE,iBAAiB,GAAG,QAAS,oBAAoB,SAAS,GAC5D,IAAI,EAAG,EAAG,EAAI,EAAE,MACZ,EAAI,EAAE,MAAM,KAAK,QACrB,sBAAwB,IAAM,EAAE,iBAAkB,EAAE,IAAI,CACpD,OAAQ,UACR,iBAAkB,OAClB,QAAS,QACT,EAAI,EAAE,MAAM,OAAQ,EAAI,EAAE,eAAe,MAAO,EAAI,GAAK,qBAAuB,EAAI,gBAAkB,GAAK,EAAI,EAAE,MAAM,kBAAkB,GAAI,EAAE,IAAI,0CAA2C,CAC9L,KAAM,eACN,IAAK,EACL,OAAQ,EACR,MAAO,EACP,KAAM,EACN,OAAQ,IACT,MAAK,SAAS,GACb,EAAI,EAAI,KAAK,MAAM,GAAK,KACxB,gBAAgB,EAAG,EAAG,EAAG,EAAE,UAAW,EAAE,WAAY,EAAE,IAAI,CACtD,OAAQ,UACR,iBAAkB,OAClB,QAAS,KAEjB,IACJ,IAAI,EAAE,cAAc,SAAW,EAAE,IAAI,0CAA2C,CAC5E,KAAM,eACN,GAAG,IAAK,MAAM,YACf,MAAK,SAAS,IACb,EAAI,EAAI,KAAK,MAAM,GAAK,QAClB,EAAE,mBAAmB,YAAY,EAAE,MAAO,EAAE,wBAAwB,YAAY,EAAE,MAC5F,IAAI,EAAE,eAAe,GAAG,UAAU,WAC9B,IAAI,EAAI,EAAE,MAAM,KAAK,aAAa,MAClC,EAAE,IAAI,0CAA2C,CAC7C,KAAM,aACN,GAAI,IACL,MAAK,SAAS,GACb,EAAE,gBAAgB,OAAO,KAAK,GAAG,QACrC,GACJ,KAAK,EAAE,eAAe,GAAG,UAAU,WAC/B,IAAI,EAAI,EAAE,MAAM,KAAK,aAAa,MAClC,EAAE,IAAI,0CAA2C,CAC7C,KAAM,aACN,GAAI,IACL,MAAK,SAAS,GACb,EAAE,kBAAkB,SAAU,EAAE,yBAAyB,MAAM,GAAI,EAAE,kBAAkB,OAAO,QAClG,GACJ,IAAI,EAAE,iBAAiB,QAAO,SAAS,GACnC,EAAE,iBAAkB,EAAI,EAAE,iBAAiB,MAC3C,IAAI,EAAI,EAAE,kBAAkB,MACxB,EAAI,EAAE,oBAAoB,MAC1B,EAAI,EAAE,oBAAoB,MAC1B,EAAI,EAAE,mBAAmB,MAC7B,IAAK,IAAM,IAAM,EAAG,OAAO,UAAU,0CAA2C,sBAAsB,EACtG,YAAY,qBAAsB,YAAY,sGAAuG,qBAAsB,EAAE,KAAK,0CAA2C,CACzN,KAAM,UACN,KAAM,EACN,MAAO,EACP,QAAS,EACT,QAAS,EACT,OAAQ,IACT,MAAK,SAAS,GACb,EAAI,EAAI,KAAK,MAAM,GAAK,KACxB,WAAW,qBAAsB,WAAa,EAAE,QAAU,YAAY,gFAAiF,qBAAsB,EAAE,iBAAiB,QAAQ,SAAU,EAAE,mBAAmB,IAAI,EAAE,QAAU,UAAU,qLAAsL,oBAC3b,GACJ,IAAI,EAAE,yBAAyB,GAAG,SAAU,cAAc,SAAS,GAC/D,EAAE,iBAAkB,EAAI,EAAE,2BAA2B,MACrD,IAAI,EAAI,EAAE,sBAAsB,MAC5B,EAAI,EAAE,wBAAwB,MAClC,EAAI,SAAS,IAAM,GAAK,EAAI,IAAM,OAAO,SAAS,KAAO,qBAAuB,EAAI,IAAM,EAAI,EAAI,UAAY,EAAI,KAAO,SAAS,IAAM,GAAK,EAAI,IAAM,OAAO,SAAS,KAAO,qBAAuB,EAAI,UAAY,EAAI,gBAC7N,IAAI,EAAE,sCAAsC,GAAG,SAAU,iBAAiB,WACtE,EAAE,kBAAmB,MACrB,IAAI,EAAI,KAAK,MACb,GAAK,IAAM,OAAO,SAAS,KAAO,qBAAuB,EAAI,IAAM,EAAI,IAC3E,IAAI,EAAE,WAAW,GAAG,QAAS,kBAAkB,SAAS,GACpD,EAAE,iBAAkB,EAAE,cAAc,IAAI,SAAU,QAAS,EAAE,aAAa,IAAI,SAAU,GAAI,EAAE,MAAM,SAAS,OACjH,IAAI,EAAE,gBAAgB,KAAK,CACvB,OAAQ,GACR,KAAM,kDACN,WAAY,cACZ,MAAO,gGAAgG,MAAM,KAC7G,OAAQ,aACR,MAAO,WACH,OAAO,EAAE,MAAM,KAAK,aACxB,EACA,MAAO,SAAS,GACZ,EAAE,gBAAgB,KAAK,YAAY,GAAK,EAAE,KAAK,0CAA2C,CACtF,KAAM,OACN,KAAM,EACN,GAAI,IACJ,aAAa,QAAQ,EAAG,SAAU,MAAM,iCAChD,EACA,SAAU,WACN,GAAI,SAAW,aAAa,QAAQ,GAAI,OAAO,CACnD,IACA,SAAS,EAAG,GAAI,EAAE,eAAe,UAAY,EAAI,WACjD,EAAE,eAAe,MAAK,WAClB,IAAI,EAAG,EAAG,EACV,EAAE,MAAM,GAAG,eAAiB,EAAI,EAAE,QAAQ,OAAS,EAAE,MAAM,KAAK,SAAW,EAAE,MAAM,KAAK,cAAe,EAAI,EAAE,MAAM,KAAK,aAAc,EAAI,EAAE,MAAM,KAAK,OAAQ,EAAI,EAAI,aAAe,EAAI,YAAc,EAAI,UAAY,EAAI,KAAO,aAAe,EAAI,UAAY,EAAI,KAAM,EAAE,MAAM,YAAY,GACpS,GACJ,KAAM,EAAE,QAAQ,QAAO,WACnB,GACJ,KAAK,EAAE,QAAQ,QAAU,EAAE,oBAAoB,SAAS,WAC5D,IAAI,CAAC,KACD,WACI,GAAI,oBAAsB,QAAU,OAAO,QAAS,OAAO,SAAS,GAChE,OAAO,QAAU,GACrB,EACA,GAAI,mBAAqB,QAAU,OAAO,IAAK,OAAO,OACtD,GAAI,oBAAsB,OAAQ,OAAO,SAAS,GAC9C,OAAO,aAAe,GAC1B,EACA,MAAM,IAAI,MAAM,sBACnB,CATD,IASK,WACD,SAAS,EAAE,EAAG,GACV,OAAO,MAAQ,GAAK,MAAQ,GAAK,EAAE,gBAAkB,EAAE,aAC3D,CAEA,SAAS,EAAE,EAAG,GACV,IAAI,EAAG,EAAG,EAAI,EAAE,OAChB,GAAI,GAAK,EACL,IAAK,EAAI,EAAE,cAAe,EAAI,EAAG,EAAI,IAAK,EACtC,GAAI,IAAM,EAAE,GAAG,cAAe,OAAO,EAC7C,OAAO,CACX,CAEA,SAAS,EAAE,GACP,IAAK,IAAI,KAAK,EAAG,EAAE,KAAK,EAAG,KAAO,EAAE,GAAK,IAAI,OAAO,EAAE,GAAI,KAC9D,CAEA,SAAS,EAAE,EAAG,GACV,KAAK,IAAM,GAAK,IAAI,OAAO,EAAG,KAAM,KAAK,OAAS,CAAC,EAAG,KAAK,cAAgB,GAAK,GACpF,CACA,IAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,CAClB,kBAAmB,CACf,OAAQ,CACJ,OAAQ,0BACR,WAAY,2FACZ,MAAO,gBACP,IAAK,6RACL,MAAO,0FACP,KAAM,6GACN,SAAU,grBACV,QAAS,m1KACT,GAAI,4hBACJ,KAAM,+IACN,KAAM,+BACN,OAAQ,sKACR,WAAY,mBACZ,SAAU,gHACV,KAAM,kBACN,MAAO,4GACP,QAAS,yaACT,IAAK,oHACL,KAAM,6OACN,QAAS,sCACT,UAAW,sHACX,SAAU,kEACV,QAAS,UACT,SAAU,wBACV,KAAM,OACN,IAAK,MACL,QAAS,UACT,aAAc,0LAElB,QAAS,CACL,KAAM,oBACN,YAAa,+BACb,aAAc,mBACd,cAAe,88DACf,OAAQ,wNACR,cAAe,4CACf,SAAU,6FACV,WAAY,ubACZ,iBAAkB,sBAClB,UAAW,mFACX,eAAgB,mGAChB,WAAY,uGACZ,WAAY,0OACZ,cAAe,0GACf,SAAU,+EACV,cAAe,qDACf,gBAAiB,gaACjB,aAAc,ipBACd,WAAY,wDACZ,aAAc,ifACd,aAAc,6DACd,aAAc,4GACd,cAAe,mDACf,UAAW,UACX,cAAe,8CACf,YAAa,kDACb,cAAe,2EACf,aAAc,kLACd,YAAa,qEACb,iBAAkB,aAClB,WAAY,gUACZ,cAAe,uFACf,WAAY,iFACZ,WAAY,0KACZ,UAAW,0QACX,UAAW,8IACX,WAAY,yEACZ,eAAgB,yDAChB,UAAW,mBACX,SAAU,6KACV,aAAc,gJACd,UAAW,oBACX,cAAe,iBACf,cAAe,iCACf,aAAc,mCACd,WAAY,wCACZ,eAAgB,kCAChB,WAAY,mBACZ,WAAY,wDACZ,YAAa,0EACb,YAAa,0mBACb,kBAAmB,+BACnB,eAAgB,2GAChB,gBAAiB,6GACjB,YAAa,iIACb,eAAgB,qIAChB,cAAe,qCACf,eAAgB,yEAChB,cAAe,kEACf,cAAe,mFACf,cAAe,4XACf,YAAa,yGACb,eAAgB,2UAChB,SAAU,+BACV,kBAAmB,2UACnB,cAAe,6IACf,UAAW,4HACX,UAAW,yBACX,cAAe,8DACf,aAAc,gHACd,eAAgB,oCAChB,eAAgB,sCAChB,eAAgB,wcAChB,cAAe,kRACf,aAAc,gRACd,UAAW,+BACX,aAAc,kDACd,eAAgB,kEAChB,iBAAkB,2CAClB,eAAgB,2EAChB,cAAe,kBACf,aAAc,kCACd,iBAAkB,gCAClB,WAAY,iBACZ,UAAW,qCACX,YAAa,sBACb,UAAW,wOACX,WAAY,wfACZ,UAAW,qBACX,WAAY,0VACZ,gBAAiB,2GACjB,cAAe,gDACf,WAAY,uHACZ,cAAe,cACf,cAAe,iKACf,cAAe,04BACf,WAAY,qUACZ,cAAe,YACf,gBAAiB,iCACjB,YAAa,oGACb,aAAc,sFACd,WAAY,iDACZ,UAAW,kEACX,YAAa,6QACb,aAAc,uFACd,aAAc,0RACd,eAAgB,mFAChB,SAAU,gCACV,aAAc,+BACd,WAAY,iGACZ,aAAc,+IACd,eAAgB,mBAChB,iBAAkB,aAClB,aAAc,kBACd,cAAe,sBACf,KAAM,oBACN,cAAe,SACf,cAAe,+RAEnB,IAAK,CACD,UAAW,UACX,aAAc,sCACd,OAAQ,yDACR,UAAW,wDACX,gBAAiB,kGACjB,eAAgB,iHAChB,IAAK,mDACL,OAAQ,YACR,WAAY,WACZ,QAAS,QACT,QAAS,QACT,OAAQ,8BACR,MAAO,cACP,OAAQ,aACR,OAAQ,QAEZ,IAAK,CACD,OAAQ,qDACR,OAAQ,eACR,MAAO,4EACP,QAAS,UACT,KAAM,0CACN,GAAI,sBACJ,QAAS,uEACT,KAAM,OACN,SAAU,WACV,OAAQ,SACR,OAAQ,wEACR,OAAQ,uBACR,UAAW,oBACX,YAAa,cACb,aAAc,eACd,aAAc,eACd,QAAS,gBACT,aAAc,QACd,SAAU,aACV,eAAgB,sIAChB,SAAU,sCAEd,MAAO,CACH,OAAQ,eACR,MAAO,cACP,QAAS,gBACT,SAAU,iBACV,KAAM,wBACN,OAAQ,0BACR,KAAM,wBACN,OAAQ,eACR,OAAQ,CAAC,eAAgB,cAAe,cACxC,MAAO,CAAC,eACR,OAAQ,eACR,QAAS,CAAC,gBAAiB,eAC3B,OAAQ,eACR,KAAM,aACN,GAAI,CAAC,kBAAmB,iBAAkB,cAAe,8BACzD,SAAU,iBACV,aAAc,qBACd,MAAO,CAAC,aAAc,mBAAoB,iBAC1C,aAAc,mBACd,aAAc,gBACd,UAAW,CAAC,aAAc,qBAC1B,WAAY,mBACZ,eAAgB,uBAChB,YAAa,oBACb,aAAc,qBACd,eAAgB,uBAChB,KAAM,aACN,OAAQ,CAAC,gBAAiB,gBAC1B,QAAS,gBACT,MAAO,cACP,OAAQ,kBACR,SAAU,iBACV,gBAAiB,wBACjB,MAAO,cACP,QAAS,gBACT,OAAQ,eACR,OAAQ,eACR,IAAK,2BACL,QAAS,gBACT,SAAU,iBACV,WAAY,CAAC,yBAA0B,4BAA6B,iBACpE,KAAM,aACN,KAAM,aACN,mBAAoB,CAAC,yBAA0B,uBAC/C,gBAAiB,sBACjB,aAAc,mBACd,aAAc,mBACd,QAAS,CAAC,kBAAmB,iBAC7B,MAAO,CAAC,cAAe,iBAE3B,MAAO,CACH,IAAK,4UACL,UAAW,8DACX,YAAa,YACb,GAAI,gBACJ,OAAQ,wBACR,QAAS,+EACT,MAAO,YAGf,qBAAsB,CAClB,YAAa,2TACb,aAAc,0kDACd,cAAe,gCAGvB,EAAI,OAAO,UAAU,eACrB,GAAK,EAAE,eAAiB,eAAgB,EAAE,gBAAkB,gBAAiB,EAAE,gBAAkB,gBAAiB,YAAa,MAAQ,MAAM,QAAU,SAAS,GAC5J,MAAO,mBAAqB,OAAO,UAAU,SAAS,KAAK,EAC/D,GACA,EAAI,EAAE,kBACV,IAAK,KAAK,EAAE,MACR,GAAI,EAAE,KAAK,EAAE,MAAO,GAAI,CACpB,IAAqB,GAAK,EAAI,EAAzB,EAAI,EAAE,MAAM,IAAoB,EAAI,CAAC,IAAI,OAAQ,EAAI,EAAG,EAAI,IAAK,EAAG,IAAM,GAAK,EAAI,EAAE,IAAI,QAAQ,YAAc,EAAI,EAAE,UAAU,EAAG,GAAK,gBAAkB,EAAE,UAAU,EAAI,IAAK,EAAE,GAAK,IAAI,OAAO,EAAG,KACxM,EAAE,MAAM,GAAK,CACjB,CAAE,OAAO,EAAE,EAAE,KAAM,EAAE,EAAE,QAAS,EAAE,EAAE,SAAU,EAAE,EAAE,KAAM,EAAE,EAAE,OAAQ,EAAE,KAAO,CAC7E,eAAgB,EAAE,IAAI,eACtB,gBAAiB,EAAE,IAAI,iBACxB,EAAE,UAAY,SAAS,EAAG,GACzB,IAAK,IAAI,KAAK,EACV,GAAI,EAAE,KAAK,EAAG,IAAM,EAAE,GAAG,KAAK,GAAI,OAAO,EAC7C,OAAO,IACX,EAAG,EAAE,YAAc,SAAS,EAAG,GAC3B,IAAI,EAAG,EAAI,GACX,IAAK,KAAK,EAAG,EAAE,KAAK,EAAG,IAAM,EAAE,GAAG,KAAK,IAAM,EAAE,KAAK,GACpD,OAAO,CACX,EAAG,EAAE,cAAgB,SAAS,EAAG,GAC7B,IAAI,EAAG,EAAG,EAAG,EAAG,EAAI,EAAE,kBAAkB,MACxC,GAAI,EAAE,KAAK,EAAG,GACV,IAAK,GAAK,EAAI,EAAE,IAAI,OAAQ,EAAI,EAAG,EAAI,IAAK,EACxC,GAAI,QAAU,EAAI,EAAE,GAAG,KAAK,IAAK,OAAO,EAAE,GAClD,OAAO,IACX,EAAG,EAAE,WAAa,SAAS,EAAG,GAE1B,OADA,EAAI,EAAE,cAAc,EAAG,IACZ,EAAE,iBAAiB,GAAK,GACvC,EAAG,EAAE,iBAAmB,SAAS,GAC7B,IAAI,EAAI,EAAE,MAAM,iBAChB,OAAO,IAAM,EAAE,SAAW,EAAI,EAAE,IAAK,EAAI,EAAE,SAAW,EAAI,EAAE,GAAK,IAAK,EAAE,QAAS,GAAK,EAAE,KAAK,KAAM,OAAO,EAC9G,EAAG,EAAE,iBAAmB,SAAS,GAC7B,OAAO,EAAE,qBAAqB,YAAY,KAAK,IAAM,EAAE,qBAAqB,aAAa,KAAK,EAAE,OAAO,EAAG,GAC9G,EAAG,EAAE,iBAAmB,SAAS,GAC7B,OAAO,EAAE,qBAAqB,cAAc,KAAK,EACrD,EAAG,EAAE,sBAAwB,SAAS,EAAG,EAAG,GACxC,IAAI,EACJ,GAAI,EAAE,SAAW,EAAG,OAAQ,EAAI,EAAE,UAAU,EAAE,kBAAkB,QAAS,KAAO,EAAE,OAAS,EAAE,OAAS,OAAQ,EAAE,MAAQ,QAAU,EAAI,EAAE,UAAU,EAAE,kBAAkB,OAAQ,KAAO,EAAE,OAAS,EAAE,MAAQ,OAAQ,EAAE,OAAS,YAAc,EAAE,iBAAiB,IAAM,EAAI,EAAE,aAAa,MAAQ,GAAK,EAAE,OAAS,EAAE,gBAAiB,EAAE,OAAS,EAAE,MAAQ,MAAQ,GAAK,EAAE,OAAS,EAAE,MAAQ,EAAE,eAAgB,EAAE,OAAS,OAAS,EAAE,OAAS,EAAE,OAAS,EAAE,gBAAiB,EAAE,MAAQ,MAAQ,EAAE,iBAAiB,IAAM,EAAE,OAAS,EAAE,OAAS,EAAE,gBAAiB,EAAE,MAAQ,MAAQ,EAAE,OAAS,EAAE,OAAS,EAAE,MAAQ,KACllB,EAAG,EAAE,YAAc,SAAS,GACxB,IAAI,EAAI,OAAS,EAAE,SACnB,OAAO,EAAE,GAAG,QAAU,KAAO,EAAE,QAAQ,SAAW,EAAE,GAAG,QAAU,KAAO,EAAE,QAAQ,WAAa,EAAE,GAAG,QAAU,KAAO,EAAE,QAAQ,SAAW,IAAM,EAAE,QAAQ,YAAc,EAAE,GAAG,WAAa,GAAK,EAAE,QAAQ,qBAAuB,EAAE,GAAG,eAAiB,GAAK,EAAE,QAAQ,eAAiB,EAAE,MAAM,qBAAuB,KAAO,EAAE,QAAQ,UAAY,EAAE,MAAM,kBAAoB,EAAE,MAAM,iBAAmB,EAAE,GAAG,YAAc,IAAM,EAAE,QAAQ,YAAc,EAAE,GAAG,WAAa,EAAE,GAAG,cAAgB,GAAK,EAAE,QAAQ,YAAc,EAAE,GAAG,YAAc,KAAO,EAAE,QAAQ,YAAc,EAAE,GAAG,cAAgB,KAAO,EAAE,QAAQ,YAAc,EAAE,GAAG,UAAY,GAAK,EAAE,QAAQ,eAAiB,EAAE,GAAG,cAAgB,EAAE,GAAG,YAAc,EAAE,GAAG,UAAY,EAAE,GAAG,WAAa,GAAK,EAAE,QAAQ,UAAY,EAAE,GAAG,eAAiB,EAAE,GAAG,YAAc,KAAO,EAAE,QAAQ,YAAc,EAAE,MAAM,gBAAkB,EAAE,GAAG,WAAa,GAAK,EAAE,QAAQ,WAAa,EAAE,GAAG,cAAgB,EAAE,GAAG,eAAiB,IAAM,EAAE,QAAQ,YAAc,GAAK,GAAK,EAAE,QAAQ,YAAc,GAAK,GAAK,EAAE,QAAQ,aAAe,GAAK,GAAK,EAAE,QAAQ,UAAY,GAAK,IAAM,EAAE,QAAQ,WAAa,EAAI,IAAM,EAAE,GAAG,QAAU,EAAE,QAAQ,QAAU,KAAO,EAAE,GAAG,QAAU,EAAE,QAAQ,UAAY,KAAO,EAAE,GAAG,QAAU,EAAE,QAAQ,QAAU,KAAO,EAAE,GAAG,eAAiB,GAAK,EAAE,QAAQ,eAAiB,EAAE,QAAQ,cAAgB,GAAK,GAAK,EAAE,QAAQ,eAAiB,EAAE,QAAQ,eAAiB,MAAQ,KAAO,EAAE,QAAQ,YAAc,EAAE,GAAG,SAAW,EAAE,MAAM,4CAA8C,IAAM,EAAE,QAAQ,eAAiB,EAAE,GAAG,aAAe,KAAO,EAAE,QAAQ,cAAgB,GAAK,EAAE,MAAM,kCAAoC,EAAE,QAAQ,kBAAmB,IAC1oD,EAAG,EAAE,SAAW,SAAS,GACrB,OAAO,EAAE,UAAU,EAAE,kBAAkB,KAAM,IAAM,EAAE,UAAU,EAAE,kBAAkB,IAAK,EAC5F,EAAG,EAAE,qBAAuB,WACxB,OAAO,OAAO,OAAO,MAAQ,OAAO,OAAO,OAAS,OAAO,OAAO,MAAQ,OAAO,OAAO,MAC5F,EAAG,EAAE,UAAY,CACb,YAAa,EACb,OAAQ,WACJ,OAAO,EAAE,sBAAsB,KAAK,OAAQ,KAAK,GAAI,KAAK,eAAgB,KAAK,OAAO,MAC1F,EACA,MAAO,WACH,OAAO,EAAE,sBAAsB,KAAK,OAAQ,KAAK,GAAI,KAAK,eAAgB,KAAK,OAAO,KAC1F,EACA,OAAQ,WACJ,OAAO,EAAE,sBAAsB,KAAK,OAAQ,KAAK,GAAI,KAAK,eAAgB,KAAK,OAAO,MAC1F,EACA,UAAW,WACP,OAAO,KAAK,OAAO,YAAc,IAAM,KAAK,OAAO,UAAY,EAAE,UAAU,EAAE,kBAAkB,IAAK,KAAK,KAAM,KAAK,OAAO,SAC/H,EACA,WAAY,WACR,OAAO,KAAK,OAAO,aAAe,IAAM,KAAK,OAAO,WAAa,EAAE,YAAY,EAAE,kBAAkB,IAAK,KAAK,KAAM,KAAK,OAAO,UACnI,EACA,GAAI,WACA,OAAO,KAAK,OAAO,KAAO,IAAM,KAAK,OAAO,GAAK,EAAE,SAAS,KAAK,KAAM,KAAK,OAAO,EACvF,EACA,QAAS,SAAS,GACd,OAAO,EAAE,WAAW,EAAG,KAAK,GAChC,EACA,WAAY,SAAS,GACjB,OAAO,EAAE,cAAc,EAAG,KAAK,GACnC,EACA,GAAI,SAAS,GACT,OAAO,EAAE,KAAK,aAAc,IAAM,EAAE,EAAG,KAAK,OAAS,EAAE,EAAG,KAAK,UAAY,EAAE,EAAG,KAAK,WAAa,EAAE,EAAE,YAAY,EAAE,kBAAkB,MAAO,KAAK,IAAK,EAC3J,EACA,MAAO,SAAS,GACZ,OAAQ,EAAI,aAAa,OAAS,EAAI,IAAI,OAAO,EAAG,MAAM,KAAK,KAAK,GACxE,EACA,aAAc,SAAS,GACnB,OAAO,EAAE,aAAa,GAAK,KAAK,cACpC,EACA,YAAa,WACT,OAAO,KAAK,OAAO,QAAU,IAAM,KAAK,OAAO,MAAQ,EAAE,YAAY,OAAQ,KAAK,OAAO,KAC7F,GACD,oBAAsB,QAAU,OAAO,OAAS,EAAE,aAAe,SAAS,GACzE,OAAO,EAAI,EAAI,EAAI,EAAE,wBAA0B,CACnD,EAAI,EAAE,aAAe,WAAY,EAAG,EAAE,MAAQ,EAAG,EAAE,QAAU,mBAAoB,CACrF,GACH,EAzXG,GAyXE,MACF,SAAS,EAAE,GACP,IAAK,SAAS,QAAU,SAAS,iBAAmB,SAAS,OAAS,GAAK,EAAE,OAAS,GAAK,EAAE,OAAQ,OAAO,CAChH,CACA,SAAS,QAAU,SAAS,cAAc,MAAM,WAAY,SAAS,YAAc,IAAM,SAAS,UAAY,EAAG,SAAS,cAAgB,WACtI,GAAI,SAAS,IAAK,OAAO,CAC7B,GAAI,SAAS,UAAY,SAAS,GAC9B,GAAI,EAAE,SAAW,KAAO,EAAE,SAAW,MAAQ,EAAE,QAAS,OAAO,CACnE,CACH,EATK,GASA,CAAC,IACH,SAAS,IACL,IAAI,EAAI,EAAE,cACN,EAAI,EAAE,qBACV,IAAM,EAAE,QAAU,IAAM,EAAE,QAAU,EAAE,KAAK,CACvC,IAAK,OAAO,GAAG,QACf,KAAM,OACN,KAAM,CACF,OAAQ,oBAEZ,QAAS,SAAS,GACd,EAAE,UAAY,EAAI,EAAE,SAAW,EAAE,KAAK,EAAE,KAAK,MAAO,EAAE,YAAY,sBAAuB,EAAI,EAAE,SAAW,EAAE,KAAK,EAAE,KAAK,aAAc,EAAE,YAAY,sBAAuB,OAAO,KAAO,EAAE,KAAK,KAAK,SAAS,SAAW,EAAE,KAAK,YAAY,SAAS,UAAY,EAAE,KAAK,CACpQ,IAAK,OAAO,GAAG,QACf,KAAM,OACN,KAAM,CACF,OAAQ,eAEb,MAAK,SAAS,GACb,EAAE,UAAY,OAAO,GAAG,MAAQ,EAAE,KAAK,MAC3C,IAAI,EAAE,OAAQ,EAAE,OAAQ,EAAE,iBAAiB,MAAK,WAC5C,IAAI,EAAI,EAAE,MACN,EAAI,EAAE,KAAK,SAAS,MAAM,mBAC9B,IAAM,EAAE,IAAI,QAAS,MAAO,YAAW,WACnC,EAAE,IAAI,QAAS,EAAE,GACrB,GAAG,KACP,IACJ,EACA,MAAO,WACH,IAAI,EAAI,oEACR,EAAI,EAAE,SAAW,EAAE,KAAK,GAAI,EAAE,YAAY,sBAAuB,EAAI,EAAE,SAAW,EAAE,KAAK,GAAI,EAAE,YAAY,qBAC/G,GAER,CACA,IAAI,EAAI,CACA,KAAM,WACF,EAAE,uBAAuB,OAAM,WAC3B,IAAI,EAAI,EAAE,MAAM,KAAK,OACrB,EAAE,uBAAuB,YAAY,UAAW,EAAE,MAAM,SAAS,UAAW,EAAE,gBAAgB,OAAQ,EAAE,YAAc,EAAI,QAAQ,OAAQ,EAAE,wBAAwB,MACxK,IAAI,EAAE,qBAAqB,QAAO,SAAS,GACvC,EAAE,iBACF,IACI,GADA,EAAI,EAAE,OACA,KAAK,yBACX,EAAI,EAAE,OACV,EAAE,SAAS,eAAe,KAAK,6DAA8D,EAAE,KAAK,CAChG,IAAK,OAAO,GAAG,QACf,KAAM,OACN,KAAM,CACF,OAAQ,aACR,SAAU,EAAE,KAAK,0BAA0B,MAC3C,SAAU,EAAE,KAAK,0BAA0B,MAC3C,SAAU,EAAE,KAAK,0BAA0B,GAAG,YAC9C,MAAO,OAAO,GAAG,OAErB,QAAS,SAAS,GACd,EAAE,SAAW,EAAE,UAAU,UAAW,EAAE,KAAK,SAAU,KAAO,EAAE,UAAU,QAAS,EAAE,KAAK,QAC5F,EACA,MAAO,WACH,EAAE,UAAU,QAAS,mCACzB,EACA,SAAU,WACN,EAAE,YAAY,eAAe,KAAK,EACtC,GAER,IAAI,EAAE,wBAAwB,QAAO,SAAS,GAC1C,EAAE,iBACF,IAAI,EAAI,EAAE,MACN,EAAI,EAAE,KAAK,yBACX,EAAI,EAAE,OACV,EAAE,SAAS,eAAe,KAAK,6DAA8D,EAAE,KAAK,CAChG,IAAK,OAAO,GAAG,QACf,KAAM,OACN,KAAM,CACF,OAAQ,gBACR,SAAU,EAAE,KAAK,0BAA0B,MAC3C,MAAO,EAAE,KAAK,uBAAuB,MACrC,SAAU,EAAE,KAAK,0BAA0B,MAC3C,iBAAkB,EAAE,KAAK,kCAAkC,MAC3D,MAAO,OAAO,GAAG,OAErB,QAAS,SAAS,GACd,EAAE,SAAW,EAAE,UAAU,UAAW,EAAE,KAAK,SAAU,YAAW,WAC5D,EAAE,8BAA8B,QAAS,EAAE,GAAG,OAClD,GAAG,MAAQ,EAAE,UAAU,QAAS,EAAE,KAAK,QAC3C,EACA,MAAO,WACH,EAAE,UAAU,QAAS,mCACzB,EACA,SAAU,WACN,EAAE,YAAY,eAAe,KAAK,EACtC,GAER,GACJ,EACA,UAAW,SAAS,EAAG,GACnB,EAAI,YAAc,EAAI,gBAAkB,cACxC,EAAE,wBAAwB,YAAY,6BAA6B,SAAS,GAAG,KAAK,GAAG,MAC3F,GAEJ,EAAI,CACA,KAAM,WACF,EAAE,mBAAmB,OAAM,WACvB,EAAE,oBAAoB,OAAQ,EAAE,yBAAyB,MAC7D,IAAI,EAAE,sBAAsB,OAAM,WAC9B,EAAE,uBAAuB,OAAQ,EAAE,yBAAyB,MAChE,IAAI,EAAE,qBAAqB,OAAM,WAC7B,EAAE,gBAAgB,OAAQ,EAAE,yBAAyB,OAAQ,EAAE,uBAAuB,MAC1F,IAAI,EAAE,2BAA2B,QAAO,SAAS,GAC7C,EAAE,iBACF,IACI,GADA,EAAI,EAAE,OACA,KAAK,yBACX,EAAI,EAAE,OACV,EAAE,SAAS,eAAe,KAAK,6DAA8D,EAAE,KAAK,CAChG,IAAK,OAAO,GAAG,QACf,KAAM,OACN,KAAM,CACF,OAAQ,aACR,SAAU,EAAE,KAAK,0BAA0B,MAC3C,SAAU,EAAE,KAAK,0BAA0B,MAC3C,SAAU,EAAE,KAAK,0BAA0B,GAAG,YAC9C,MAAO,OAAO,GAAG,OAErB,QAAS,SAAS,GACd,EAAE,SAAW,EAAE,UAAU,UAAW,EAAE,KAAK,SAAU,KAAO,EAAE,UAAU,QAAS,EAAE,KAAK,QAC5F,EACA,MAAO,WACH,EAAE,UAAU,QAAS,mCACzB,EACA,SAAU,WACN,EAAE,YAAY,eAAe,KAAK,EACtC,GAER,IAAI,EAAE,8BAA8B,QAAO,SAAS,GAChD,EAAE,iBACF,IAAI,EAAI,EAAE,MACN,EAAI,EAAE,KAAK,yBACX,EAAI,EAAE,OACV,EAAE,SAAS,eAAe,KAAK,6DAA8D,EAAE,KAAK,CAChG,IAAK,OAAO,GAAG,QACf,KAAM,OACN,KAAM,CACF,OAAQ,gBACR,SAAU,EAAE,KAAK,0BAA0B,MAC3C,MAAO,EAAE,KAAK,uBAAuB,MACrC,SAAU,EAAE,KAAK,0BAA0B,MAC3C,iBAAkB,EAAE,KAAK,kCAAkC,MAC3D,MAAO,OAAO,GAAG,OAErB,QAAS,SAAS,GACd,EAAE,SAAW,EAAE,UAAU,UAAW,EAAE,KAAK,SAAU,YAAW,WAC5D,EAAE,gBAAgB,OAAQ,EAAE,yBAAyB,OAAQ,EAAE,GAAG,OACtE,GAAG,MAAQ,EAAE,UAAU,QAAS,EAAE,KAAK,QAC3C,EACA,MAAO,WACH,EAAE,UAAU,QAAS,mCACzB,EACA,SAAU,WACN,EAAE,YAAY,eAAe,KAAK,EACtC,GAER,GACJ,EACA,UAAW,SAAS,EAAG,GACnB,EAAI,YAAc,EAAI,gBAAkB,cACxC,EAAE,uBAAuB,YAAY,6BAA6B,SAAS,GAAG,KAAK,GAAG,MAC1F,GAEJ,EAAI,CACA,KAAM,WACF,EAAE,iBAAiB,OAAM,SAAS,GAC9B,EAAE,iBAAkB,EAAE,cAAc,OAAQ,EAAE,iBAAiB,OAAQ,EAAE,oBAAoB,KAAK,WAAY,EAAE,iBAAiB,MACrI,IAAI,EAAE,cAAc,OAAM,SAAS,GAC/B,EAAE,iBAAkB,EAAE,iBAAiB,OAAQ,EAAE,cAAc,OAAQ,EAAE,oBAAoB,KAAK,aAAc,EAAE,iBAAiB,MACvI,IAAI,EAAE,kBAAkB,QAAO,SAAS,GACpC,EAAE,iBACF,IAAI,EAAI,EAAE,MAAM,KAAK,yBACjB,EAAI,EAAE,OACV,EAAE,KAAK,YAAY,GAAI,KAAK,iBAAkB,EAAE,KAAK,CACjD,IAAK,OAAO,GAAG,QACf,KAAM,OACN,KAAM,CACF,OAAQ,aACR,SAAU,EAAE,kBAAkB,MAC9B,SAAU,EAAE,kBAAkB,MAC9B,SAAU,EAAE,eAAe,GAAG,YAC9B,MAAO,OAAO,GAAG,OAErB,QAAS,SAAS,GACd,EAAE,SAAW,EAAE,UAAU,UAAW,EAAE,KAAK,SAAU,IAAK,YAAW,WACjE,EAAE,eAAe,MAAM,OAC3B,GAAG,OAAS,EAAE,UAAU,SAAU,EAAE,KAAK,QAC7C,EACA,MAAO,WACH,EAAE,UAAU,SAAU,mCAC1B,EACA,SAAU,WACN,EAAE,KAAK,YAAY,GAAI,KAAK,EAChC,GAER,IAAI,EAAE,qBAAqB,QAAO,SAAS,GACvC,EAAE,iBACF,IAAI,EAAI,EAAE,MAAM,KAAK,yBACjB,EAAI,EAAE,OACV,EAAE,KAAK,YAAY,GAAI,KAAK,iBAAkB,EAAE,KAAK,CACjD,IAAK,OAAO,GAAG,QACf,KAAM,OACN,KAAM,CACF,OAAQ,gBACR,SAAU,EAAE,qBAAqB,MACjC,MAAO,EAAE,kBAAkB,MAC3B,SAAU,EAAE,qBAAqB,MACjC,iBAAkB,EAAE,oBAAoB,MACxC,MAAO,OAAO,GAAG,OAErB,QAAS,SAAS,GACd,EAAE,SAAW,EAAE,UAAU,UAAW,EAAE,KAAK,SAAU,YAAW,WAC5D,EAAE,cAAc,QAAS,EAAE,qBAAqB,GAAG,OACvD,GAAG,MAAQ,EAAE,UAAU,SAAU,EAAE,KAAK,QAC5C,EACA,MAAO,WACH,EAAE,UAAU,SAAU,mCAC1B,EACA,SAAU,WACN,EAAE,KAAK,YAAY,GAAI,KAAK,EAChC,GAER,IAAI,EAAE,eAAe,GAAG,mBAAmB,WACvC,EAAE,kBAAkB,GAAG,QAAS,EAAE,qBAAqB,GAAG,QAAS,EAAE,iBAAiB,OAAQ,EAAE,iBAAiB,OAAQ,EAAE,cAAc,OAAQ,EAAE,oBAAoB,KAAK,YAChL,GACJ,EACA,UAAW,SAAS,EAAG,GACnB,EAAI,qCACc,2DACtB,iHAII,EAAE,iBAAiB,KAAK,GAAG,MAC/B,GAER,EAAE,UAAU,OAAM,WACd,IAAK,EAAE,OAAQ,EAAE,MACrB,GACH,EAlPK,CAkPH,QAAS,OAAO,UAAU,OAAM,SAAS,GACxC,EAAE,oBAAoB,GAAG,SAAS,WAC9B,EAAE,MAAM,KAAK,YAAY,GAAI,KAAK,6DAA8D,EAAE,KAAK,CACnG,IAAK,OAAO,GAAG,QACf,KAAM,OACN,KAAM,CACF,OAAQ,gBACR,MAAO,OAAO,GAAG,OAErB,QAAS,SAAS,GACd,EAAE,SAAW,MAAM,EAAE,KAAK,SAAU,SAAS,WAAa,MAAM,EAAE,KAAK,SAAU,EAAE,oBAAoB,KAAK,YAAY,GAAI,KAAK,oEACrI,EACA,MAAO,WACH,MAAM,wCAAyC,EAAE,oBAAoB,KAAK,YAAY,GAAI,KAAK,mEACnG,GAER,GACJ,IAAI,CAAC,IACD,SAAS,IACL,EAAE,iCAAiC,MAAK,WACpC,IAAI,EAAI,EAAE,MACN,EAAI,EAAE,KAAK,SACf,GAAK,EAAE,QAAQ,CACX,MAAO,EACP,UAAW,MACX,UAAW,QAEnB,GACJ,CACA,EAAE,UAAU,OAAM,WACd,IAAI,EACJ,IAAK,EAAI,EAAE,6BAA6B,SAAW,EAAI,EAAE,6BAA6B,KAAK,YAAc,EAAG,EAAE,KAAK,CAC/G,IAAK,cAAc,QACnB,KAAM,OACN,KAAM,CACF,OAAQ,kBACR,MAAO,cAAc,MACrB,QAAS,GAAK,GAElB,QAAS,SAAS,GACd,EAAE,UAAY,EAAE,6BAA6B,KAAK,EAAE,KAAK,MAAO,IAAK,EAAE,UAAU,QAAQ,mBAAoB,CAAC,EAAE,KAAK,SACzH,IAER,GACH,EA3BG,CA2BD,QAAS,CAAC,IACT,EAAE,UAAU,OAAM,WACd,EAAE,eAAe,GAAG,UAAU,WAC1B,IAAI,EAAI,EAAE,MAAM,MAChB,GAAK,QAAQ,IAAI,0BAA4B,EACjD,IAAI,EAAE,gBAAgB,GAAG,UAAU,WAC/B,IAAI,EAAI,EAAE,MAAM,MAChB,GAAK,QAAQ,IAAI,mBAAqB,EAC1C,GACJ,GACH,EAVW,CAUT,QAAS,CAAC,IACT,IAAI,EAAI,CACJ,gBAAgB,EAChB,YAAa,EACb,aAAc,KACd,iBAAkB,EAClB,cAAe,EACf,aAAc,EACd,OAAQ,GAAG,cACX,sBAAsB,EACtB,KAAM,WACF,EAAE,eAAiB,GAAG,aAAe,KAAK,sBAAuB,KAAK,cAAgB,EAAE,cAAc,SAAU,KAAK,aAAe,EAAE,QAAQ,SAAU,KAAK,oBAAqB,EAAE,QAAQ,GAAG,SAAU,WACrM,KAAK,qBACT,EAAE,KAAK,OAAQ,EAAE,QAAQ,GAAG,eAAgB,KAAK,oBAAoB,KAAK,OAAQ,EAAE,qCAAqC,GAAG,QAAS,KAAK,gBAAgB,KAAK,OAAQ,KAAK,sBAChL,EACA,oBAAqB,WACjB,IAAI,EAAI,mBAAqB,KAAK,QAC9B,EAAI,aAAa,QAAQ,OACtB,EAAI,KAAK,MAAM,IAAI,aAAe,KAAK,YAAc,EAAE,UAAY,EAAG,KAAK,iBAAmB,EAAE,eAAiB,EAC5H,EACA,oBAAqB,WACjB,IAAI,EAAI,mBAAqB,KAAK,OAC9B,EAAI,CACA,SAAU,KAAK,YACf,cAAe,KAAK,iBACpB,UAAU,IAAK,MAAM,cACrB,YAAY,GAEpB,aAAa,QAAQ,EAAG,KAAK,UAAU,GAC3C,EACA,eAAgB,WACZ,IAAI,EAAI,mBAAqB,KAAK,OAC9B,EAAI,aAAa,QAAQ,GAC7B,KAAO,EAAI,KAAK,MAAM,IAAI,YAAa,EAAI,aAAa,QAAQ,EAAG,KAAK,UAAU,IACtF,EACA,kBAAmB,WACf,KAAK,iBAAmB,KAAK,gBAAiB,EAAI,KAAK,aAAe,YAAY,WAC9E,KAAK,cAAe,KAAK,YAAc,IAAM,GAAK,KAAK,qBAC3D,EAAE,KAAK,MAAO,KAClB,EACA,oBAAqB,WACjB,IAAI,EACJ,KAAK,iBAAmB,EAAI,EAAE,QAAQ,aAAe,EAAE,UAAU,SAAW,KAAK,cAAgB,KAAO,KAAK,kBAAoB,IAAM,KAAK,iBAAmB,KAAO,KAAK,uBAAyB,KAAK,sBAAuB,EAAI,KAAK,kBAC7O,EACA,gBAAiB,WACb,KAAK,cAAgB,cAAc,KAAK,cACxC,IAAI,EAAI,KAAK,uBACb,GAAI,KAAK,aAAe,GAAK,IAAM,KAAK,iBAAkB,KAAK,sBAC1D,CACD,IAAI,EAAI,GACR,EAAI,KAAK,YAAc,EAAI,iDAAmD,wCAClF,CACJ,EACA,qBAAsB,WAClB,IAAI,EAAI,EAAE,cAAc,OAAO,OAAO,MAAM,OAAO,OACnD,OAAO,KAAK,IAAI,GAAI,GAAK,KAAK,KAAK,EAAI,KAC3C,EACA,gBAAiB,WACb,EAAE,KAAK,CACH,IAAK,GAAG,QACR,KAAM,OACN,KAAM,CACF,OAAQ,oBACR,QAAS,KAAK,OACd,UAAW,KAAK,YAChB,eAAgB,KAAK,iBACrB,MAAO,GAAG,OAEd,QAAS,SAAS,GACd,EAAE,SAAW,KAAK,gBACtB,EAAE,KAAK,OAEf,EACA,oBAAqB,WACjB,EAAE,uBAAuB,OAAO,2LAI5B,EAAE,iBAAiB,GAAG,QAAS,SAAS,GACxC,EAAE,iBAAkB,KAAK,iBAC7B,EAAE,KAAK,MACX,GAEJ,EAAE,UAAU,OAAM,WACd,EAAE,MACN,GACH,EAtFW,CAsFT,QAAS,CAAC,IACT,IAAI,EAAI,CACJ,OAAQ,KACR,YAAa,EACb,YAAa,MACb,WAAW,EACX,SAAS,EACT,cAAe,EACf,kBAAmB,GACnB,KAAM,CACF,UAAW,UACX,SAAU,QACV,UAAW,WACX,WAAY,oBACZ,WAAY,kBACZ,gBAAiB,wBACjB,WAAY,0DACZ,eAAgB,mDAChB,OAAQ,gBACR,IAAK,WACL,OAAQ,WACR,OAAQ,UACR,OAAQ,eACR,cAAe,YACf,SAAU,uBASlB,SAAS,EAAE,GACP,IAAI,EAAI,IAAM,GAAG,WACb,EAAI,EAAE,KAAK,WACX,EAAI,EAAE,KAAK,cACX,EAAI,+LAIyC,EAAE,KAAK,4BACpD,GAAK,EAAI,gGACoC,4CAE5C,kFAGK,EAAE,KAAK,gGAES,EAAE,KAAK,oDACJ,EAAE,KAAK,uDACP,EAAE,KAAK,yIAMlC,EAAI,IAAM,mCAAmC,EAAE,KAAK,2LAM/C,EAAE,KAAK,yNAMV,EAAE,KAAK,8DAKX,EAAE,KAAK,EACX,CAEA,SAAS,EAAE,EAAI,MACX,IAAI,EAAI,EAAI,EAAE,KAAK,WAAa,EAAE,KAAK,WACnC,EAAI,EAAI,oBAAsB,GAC9B,EAAI,EAAI,mBAAmB,KAAO,GACtC,MAAO,uBACK,EAAI,mBAAqB,kFAEvB,EAAE,+JAGyB,mBAAmB,2FACM,0EAE5D,EAAE,KAAK,qEAKjB,CAEA,SAAS,EAAE,EAAI,EAAG,EAAI,OAClB,IAAI,EAAI,EAAE,eACN,EAAI,EAAE,KAAK,uBACf,EAAE,YAAc,EAAE,WAAY,EAAI,EAAE,YAAc,EAAG,EAAE,YAAc,EAAG,IAAM,GAAK,EAAE,KAAK,uGAGnF,EAAE,KAAK,+CAEZ,EAAE,KAAK,CACL,IAAK,GAAG,QACR,KAAM,OACN,KAAM,CACF,OAAQ,qBACR,QAAS,EAAE,OACX,KAAM,EACN,KAAM,GAEV,QAAS,SAAS,GACd,GAAI,EAAE,QAAS,CACX,IAAI,EAAI,EAAE,KACV,GAAI,EAAE,QAAU,EAAE,SAAU,EAAE,cAAgB,EAAE,MAAO,EAAE,KAAK,0BAA0B,KAAK,EAAE,OAAQ,IAAM,EAAI,IAAM,EAAE,SAAS,OAAS,EAAE,KAAK,kCAAkC,EAAE,KAAK,qBAAuB,EAAE,QAAS,EAAE,SAAS,SAAQ,GAAK,EAAE,OAAO,EAAE,OAAQ,EAAE,SAAS,SAAQ,GAAK,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,6BAA6B,OAAO,EAAE,UAAW,EAAE,cAAgB,IAAM,GAAG,WAAY,CAC5Y,EAAI,EAAE,SACN,IAAI,EAAI,SAAS,GAAG,QAAU,GAC1B,EAAI,IACA,IAAK,IAAI,KAAK,EAAG,CACb,GAAI,EAAE,OAAO,KAAO,EAAG,OAAO,EAAE,kBAAoB,EAAE,OAAO,OAAQ,KAAK,EAC1E,GAAI,EAAE,SAAW,EAAE,QAAQ,QAAU,EAAE,EAAE,SAAU,OAAO,CAC9D,CACA,OAAO,CAAC,EAEhB,EAAE,EACN,CACJ,MAAO,QAAQ,MAAM,yBAA0B,EAAE,KAAK,QAC1D,EACA,MAAO,SAAS,EAAG,EAAG,GAClB,QAAQ,MAAM,YAAa,EAC/B,EACA,SAAU,WACN,EAAE,WAAY,EAAI,EAAE,KAAK,2BAA2B,QACxD,IAER,CAEA,SAAS,IACL,EAAE,4EAA4E,KAAK,MAAO,EAAE,kBAChG,CAEA,SAAS,EAAE,GACP,IAAI,EAAG,EAAI,EAAI,EAAE,UACb,EAAI,EAAI,4BAA8B,gBACtC,EAAI,EAAE,WAAa,EAAE,KAAK,UAAY,EAAE,KAAK,SAC7C,EAAI,EAAE,WAAa,6BAA+B,uBAClD,EAAI,EAAE,UAAY,MAAQ,EAAE,KAAK,OAAS,GAC1C,EAAI,EAAE,WAAa,8CAA8C,GAAG,YAAY,MAAM,OAAO,IAAI,gBAAkB,GACvH,IAAI,EAAI,GACJ,GAAK,EAAE,OAAO,iBAAgD,EAAI,+DAAjC,EAAI,EAAE,OAAO,gBAAoF,kBAAkB,EAAE,qBAAqB,EAAE,SAAS,EAAE,eAAgB,mBACpM,kBAAkB,EAAE,gBAAgB,EAAE,iEAEpC,EAAE,OAAO,gBAAgB,EAAE,OAAO,gKAKxC,EAAE,OAAO,mBACT,EAAE,OAAO,SAAW,WAAW,EAAE,OAAO,oBAAsB,sDACzB,EAAE,OAAO,2BAC9C,gBACA,8DAE8B,EAAE,gGAGrB,0CAA0C,EAAE,mBACvD,KAAK,EAAI,EAAE,MAAQ,KAAO,EAAE,MAAQ,gCAEtC,EAAI,GAAK,2EAA2E,EAAE,OAAO,EAAE,KAAK,gEACnE,EAAE,aAAa,8BAGlD,OAAO,EAAE,SAAW,EAAI,EAAE,QAAQ,SAAW,GAAK,sCAAuC,EAAE,QAAQ,SAAQ,IACvG,GAAK,EAAE,EAAC,IACR,GAAK,UAAW,IAAM,GAAK,0DAA0D,EAAE,qCAAsC,GAAK,cAC1I,CAEA,SAAS,IACL,IAAI,EAAI,EAAE,eACV,EAAE,GAAG,SAAU,sBAAsB,WACjC,EAAE,EAAG,EAAE,MAAM,MACjB,IAAI,EAAE,GAAG,QAAS,uBAAuB,YACpC,EAAE,WAAa,EAAE,SAAW,EAAE,EAAE,YAAc,EAAG,EAAE,YACxD,IAAI,EAAE,GAAG,UAAW,wBAAwB,SAAS,GACjD,EAAE,kBAAmB,KAAO,EAAE,SAAW,EAAE,WAAa,EAAE,iBAAkB,EAAE,MAAM,QAAQ,gCAAgC,KAAK,yBAAyB,QAC9J,IAAI,EAAE,GAAG,QAAS,yBAAyB,WACvC,GAAI,IAAM,GAAG,WAAY,CACrB,IAAI,EAAI,EAAE,MACN,EAAI,EAAE,QAAQ,gCAAgC,KAAK,wBACvD,IAAI,EAAI,EAAE,MAAM,OAChB,GAAI,EAAG,CACH,EAAE,KAAK,YAAY,GACnB,EAAI,CACA,OAAQ,oBACR,QAAS,EACT,QAAS,EAAE,OACX,QAAS,EAAE,eAAe,KAAK,YAAc,GAEjD,IAAI,EAAI,EAAE,KAAK,aACf,IAAM,EAAE,UAAY,GAAI,EAAE,KAAK,CAC3B,IAAK,GAAG,QACR,KAAM,OACN,KAAM,EACN,QAAS,SAAS,GACd,GAAI,EAAE,QAAS,CACX,EAAE,IAAI,IACN,IAAI,EAAI,EAAE,KAAK,QACf,GAAI,EAAE,OAAO,KAAO,SAAS,GAAG,QAAU,KAAO,EAAE,kBAAoB,EAAE,OAAO,OAAQ,KAAM,EAAG,CAC7F,IAAI,EAAI,EAAE,YAAc,GACxB,IAAI,EAAI,EAAE,KAAK,0BACf,EAAE,SAAW,EAAE,KAAK,0BAA0B,OAAO,6CAA8C,EAAI,EAAE,KAAK,2BAA4B,EAAE,OAAO,EAAE,IAAK,EAAE,eAAiB,GAAG,MACpL,MACI,EAAI,EAAE,KAAK,wBACT,KAAK,sBAAsB,SAAU,EAAE,QAAQ,EAAE,IAEvD,EAAE,gBAAiB,EAAE,KAAK,0BAA0B,KAAK,EAAE,cAC/D,MAAO,MAAM,EAAE,KAAK,QACxB,EACA,MAAO,WACH,MAAM,mCACV,EACA,SAAU,WACN,EAAE,KAAK,YAAY,EACvB,GAER,CACJ,MAAO,EAAE,eAAe,MAAM,OAClC,IAAI,EAAE,GAAG,QAAS,6CAA6C,WAC3D,GAAI,IAAM,GAAG,WAAY,CACrB,IAAI,EAAI,EAAE,MACV,IAAI,EAAI,EAAE,KAAK,cACf,EAAE,KAAK,CACH,IAAK,GAAG,QACR,KAAM,OACN,KAAM,CACF,OAAQ,qBACR,WAAY,GAEhB,QAAS,SAAS,GACd,IAAI,EACJ,EAAE,UAAY,EAAI,UAAY,EAAE,KAAK,OAAQ,EAAI,EAAI,EAAE,KAAK,MAAQ,MAAQ,EAAE,KAAK,MAAQ,GAAI,EAAE,YAAY,QAAS,GAAI,EAAE,MAAM,EAAI,EAAE,KAAK,UAAY,EAAE,KAAK,UAAY,GAChL,GAER,MAAO,EAAE,eAAe,MAAM,OAClC,IAAI,EAAE,GAAG,QAAS,8CAA8C,WAC5D,IAAI,EAAG,EACP,IAAM,GAAG,YAAc,EAAI,EAAE,MAAM,KAAK,eAAgB,EAAI,EAAE,eAAiB,IAAI,GAAG,YAAc,EAAE,QAAU,EAAE,+BAA+B,OAAQ,EAAE,KAAK,EAAE,IAAI,OAAQ,EAAE,KAAK,wBAAwB,UAAY,EAAE,eAAe,MAAM,OACpP,GACJ,CACA,EAAE,UAAU,OAlOZ,WACI,IAAI,EAAI,EAAE,eACV,EAAE,SAAW,EAAE,OAAS,EAAE,KAAK,WAAY,EAAE,QAAU,IAAM,GAAG,aAAe,EAAE,kBAAoB,GAAG,mBAAqB,GAAG,eAAiB,iDAAkD,EAAE,KAAK,aAAe,EAAE,GAAI,IAAK,MAAQ,QAAQ,MAAM,sCAC9P,IA+NsB,EAAE,gBAAgB,GAAG,QAAS,0BAA0B,SAAS,GACnF,EAAE,iBAAkB,EAAE,EAAE,gBAAiB,IAAK,GAClD,GACH,EAjQW,CAiQT,QAAS,MACR,kBAAmB,WAAa,OAAO,iBAAiB,QAAQ,WAC5D,UAAU,cAAc,SAAS,sBAAsB,MAAK,SAAS,GACjE,QAAQ,IAAI,qDAAsD,EAAE,MACxE,IAAG,OAAM,SAAS,GACd,QAAQ,IAAI,sCAAuC,EACvD,GACJ,IACA,IAAI,EAAG,GAAI,EACP,GAAK,OAAO,iBAAiB,uBAAuB,SAAS,GACzD,GAAI,EAAE,iBAAkB,EAAI,EAAG,OAAO,YAAc,MAAQ,EAAG,CAC3D,IAAI,EAAI,SAAS,eAAe,sBAChC,IAAM,aAAa,QAAQ,0BAA4B,YAAW,WAC9D,EAAE,MAAM,QAAU,QAAS,YAAW,WAClC,EAAE,MAAM,UAAY,eACxB,GAAG,GACP,GAAG,KAAM,GAAI,GAAK,EAAI,SAAS,eAAe,qBAAuB,EAAE,iBAAiB,SAAS,WAC7F,EAAE,MAAM,UAAY,mBAAoB,YAAW,WAC/C,EAAE,MAAM,QAAU,MACtB,GAAG,KAAM,IAAM,EAAE,SAAU,EAAE,WAAW,MAAK,SAAS,GAClD,aAAe,EAAE,SAAW,QAAQ,IAAI,oCAAqC,EAAE,kCAAmC,YAAc,QAAQ,IAAI,qCAAsC,EAAI,IAC1L,IACJ,KAAK,EAAI,SAAS,eAAe,qBAAuB,EAAE,iBAAiB,SAAS,WAChF,EAAE,MAAM,UAAY,mBAAoB,YAAW,WAC/C,EAAE,MAAM,QAAU,MACtB,GAAG,KAAM,aAAa,QAAQ,uBAAwB,KAAK,MAC/D,KAAK,EAAI,SAAS,eAAe,mBAAqB,EAAE,iBAAiB,SAAS,WAC9E,EAAE,MAAM,UAAY,mBAAoB,YAAW,WAC/C,EAAE,MAAM,QAAU,MACtB,GAAG,KAAM,aAAa,QAAQ,uBAAwB,KAAK,MAC/D,IAAI,YAAW,WACX,SAAW,EAAE,MAAM,UAAY,EAAE,MAAM,UAAY,mBAAoB,YAAW,WAC9E,EAAE,MAAM,QAAU,MACtB,GAAG,KACP,GAAG,MACP,CACJ,KAAK,EAAI,aAAa,QAAQ,0BAA4B,GAAK,KAAK,MAAQ,GAAK,OAAS,aAAa,WAAW,wBAAyB,OAAO,iBAAiB,gBAAgB,SAAS,GACxL,QAAQ,IAAI,qBACZ,IAAI,EAAI,SAAS,eAAe,sBAChC,IAAM,EAAE,MAAM,UAAY,mBAAoB,YAAW,WACrD,EAAE,MAAM,QAAU,MACtB,GAAG,KACP,IAAI,UAAU,QACd,EAAI,KAER,SAAS,IACL,OAAO,IAAI,SAAQ,IACf,GAAI,UAAU,OAAQ,CAClB,IAAI,EAAI,IAAI,gBACR,EAAI,YAAW,IAAM,EAAE,SAAS,KACpC,MAAM,iBAAkB,CACpB,OAAQ,OACR,MAAO,WACP,OAAQ,EAAE,SACX,MAAK,KACJ,aAAa,GAAI,GAAE,EAAE,IACtB,OAAM,KACL,aAAa,GAAI,GAAE,EAAE,GAE7B,MAAO,GAAE,EAAE,GAEnB,CAEA,SAAS,EAAE,GAAI,GACX,GAAK,EAAI,GAAI,EAAI,UAAU,UAAY,EAAI,IAAI,MAAK,IAChD,EAAE,EAAC,IACF,EAAE,IAAM,IAAI,MAAK,IAClB,EAAE,EAAI,EAAC,GAEf,CAEA,SAAS,EAAE,GACP,IAAI,EAAI,SAAS,KAAK,UAAU,SAAS,WACzC,GAAK,SAAS,KAAK,UAAU,OAAO,WAAY,IAAM,EAAE,sBAAuB,WAAY,SAAS,KAAK,UAAU,OAAO,iBAAmB,IAAM,SAAS,KAAK,UAAU,IAAI,WAAY,SAAS,KAAK,UAAU,IAAI,eAAgB,EAAE,qDAAsD,WACnS,CAEA,SAAS,EAAE,EAAG,EAAI,QACd,IAAI,EAAI,SAAS,cAAc,OAC/B,EAAE,MAAM,QAAU,oWAaN,YAAc,EAAI,UAAY,YAAc,EAAI,UAAY,mBACzE,EAAE,YAAc,EAAG,SAAS,KAAK,YAAY,GAAI,YAAW,WACvD,EAAE,MAAM,UAAY,eACxB,GAAG,IAAK,YAAW,WACf,EAAE,MAAM,UAAY,mBAAoB,YAAW,WAC/C,EAAE,QACN,GAAG,IACP,GAAG,IACP,CACA,OAAO,iBAAiB,UAAU,IAAM,GAAE,KAAM,OAAO,iBAAiB,WAAW,IAAM,GAAE,KAAM,IAC7F,SAAS,IACL,GAAK,aAAa,GAAI,IAAM,EAAI,YAAW,KACvC,IAAK,GAAE,GACR,KACP,CAJA,GAKJ,IAAI,EAAG,EAAI,SAAS,cAAc,SAClC,EAAE,YAAc,8ZAmBf,SAAS,KAAK,YAAY,GAAI,kBAAmB,WAAa,gBAAiB,QAAU,SAAS,iBAAiB,UAAU,SAAS,GACnI,IAAI,EAAG,EAAI,EAAE,OACb,GAAI,SAAW,EAAE,QAAQ,UAAY,EAAG,CACpC,EAAE,iBACE,EAAI,IAAI,SAAS,GACrB,IAAI,EAAI,CAAC,EACT,EAAE,SAAQ,SAAS,EAAG,GAClB,EAAE,GAAK,CACX,IAAI,EAAI,EAAE,OAAQ,EAAI,EAAG,EAAI,EAAE,OAAQ,QAAQ,IAAI,8BAA+B,EAAG,EAAG,GAAI,UAAU,cAAc,MAAM,MAAK,SAAS,GACpI,EAAE,KAAK,SAAS,kBACpB,IAAI,EAAE,2CAA4C,OACtD,CACJ,IAAI,OAAO,cAAgB,WACvB,kBAAmB,WAAa,UAAU,cAAc,MAAM,MAAK,IAC/D,IAAI,EAAI,IAAI,eACZ,EAAE,MAAM,UAAY,IAChB,EAAE,MAAQ,EAAE,KAAK,QAAU,EAAE,0BAA2B,WAAa,EAAE,sBAAuB,UAAS,EACxG,EAAE,OAAO,YAAY,CACpB,KAAM,eACP,CAAC,EAAE,OAAM,GAEpB,EAAG,EAAI,aAAa,QAAQ,kBAAmB,EAAI,KAAK,MAAO,aAAa,QAAQ,iBAAkB,GAAI,GAAK,IAAM,EAAI,GAAK,KAAO,EAAE,8BAA+B,OACzK,EApJW","file":"/gh/gassets/dochay.me@2.1.0/js/main.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /gh/gassets/dochay.me@2.1.0/js/main.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","if (((e, t) => {\n        \"object\" == typeof module && \"object\" == typeof module.exports ? module.exports = e.document ? t(e, !0) : function(e) {\n            if (e.document) return t(e);\n            throw new Error(\"jQuery requires a window with a document\")\n        } : t(e)\n    })(\"undefined\" != typeof window ? window : this, function(f, L) {\n        function _(e, t) {\n            return t.toUpperCase()\n        }\n        var e = [],\n            u = e.slice,\n            V = e.concat,\n            O = e.push,\n            o = e.indexOf,\n            n = {},\n            $ = n.toString,\n            F = n.hasOwnProperty,\n            m = {},\n            g = f.document,\n            t = \"2.1.1\",\n            S = function(e, t) {\n                return new S.fn.init(e, t)\n            },\n            R = /^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g,\n            j = /^-ms-/,\n            X = /-([\\da-z])/gi;\n\n        function W(e) {\n            var t = e.length,\n                n = S.type(e);\n            return \"function\" !== n && !S.isWindow(e) && (!(1 !== e.nodeType || !t) || \"array\" === n || 0 === t || \"number\" == typeof t && 0 < t && t - 1 in e)\n        }\n        S.fn = S.prototype = {\n            jquery: t,\n            constructor: S,\n            selector: \"\",\n            length: 0,\n            toArray: function() {\n                return u.call(this)\n            },\n            get: function(e) {\n                return null != e ? e < 0 ? this[e + this.length] : this[e] : u.call(this)\n            },\n            pushStack: function(e) {\n                e = S.merge(this.constructor(), e);\n                return e.prevObject = this, e.context = this.context, e\n            },\n            each: function(e, t) {\n                return S.each(this, e, t)\n            },\n            map: function(n) {\n                return this.pushStack(S.map(this, function(e, t) {\n                    return n.call(e, t, e)\n                }))\n            },\n            slice: function() {\n                return this.pushStack(u.apply(this, arguments))\n            },\n            first: function() {\n                return this.eq(0)\n            },\n            last: function() {\n                return this.eq(-1)\n            },\n            eq: function(e) {\n                var t = this.length,\n                    e = +e + (e < 0 ? t : 0);\n                return this.pushStack(0 <= e && e < t ? [this[e]] : [])\n            },\n            end: function() {\n                return this.prevObject || this.constructor(null)\n            },\n            push: O,\n            sort: e.sort,\n            splice: e.splice\n        }, S.extend = S.fn.extend = function() {\n            var e, t, n, i, o, r = arguments[0] || {},\n                a = 1,\n                s = arguments.length,\n                l = !1;\n            for (\"boolean\" == typeof r && (l = r, r = arguments[a] || {}, a++), \"object\" == typeof r || S.isFunction(r) || (r = {}), a === s && (r = this, a--); a < s; a++)\n                if (null != (e = arguments[a]))\n                    for (t in e) o = r[t], n = e[t], r !== n && (l && n && (S.isPlainObject(n) || (i = S.isArray(n))) ? (o = i ? (i = !1, o && S.isArray(o) ? o : []) : o && S.isPlainObject(o) ? o : {}, r[t] = S.extend(l, o, n)) : void 0 !== n && (r[t] = n));\n            return r\n        }, S.extend({\n            expando: \"jQuery\" + (t + Math.random()).replace(/\\D/g, \"\"),\n            isReady: !0,\n            error: function(e) {\n                throw new Error(e)\n            },\n            noop: function() {},\n            isFunction: function(e) {\n                return \"function\" === S.type(e)\n            },\n            isArray: Array.isArray,\n            isWindow: function(e) {\n                return null != e && e === e.window\n            },\n            isNumeric: function(e) {\n                return !S.isArray(e) && 0 <= e - parseFloat(e)\n            },\n            isPlainObject: function(e) {\n                return !(\"object\" !== S.type(e) || e.nodeType || S.isWindow(e) || e.constructor && !F.call(e.constructor.prototype, \"isPrototypeOf\"))\n            },\n            isEmptyObject: function(e) {\n                for (var t in e) return !1;\n                return !0\n            },\n            type: function(e) {\n                return null == e ? e + \"\" : \"object\" == typeof e || \"function\" == typeof e ? n[$.call(e)] || \"object\" : typeof e\n            },\n            globalEval: function(e) {\n                var t, n = eval;\n                (e = S.trim(e)) && (1 === e.indexOf(\"use strict\") ? ((t = g.createElement(\"script\")).text = e, g.head.appendChild(t).parentNode.removeChild(t)) : n(e))\n            },\n            camelCase: function(e) {\n                return e.replace(j, \"ms-\").replace(X, _)\n            },\n            nodeName: function(e, t) {\n                return e.nodeName && e.nodeName.toLowerCase() === t.toLowerCase()\n            },\n            each: function(e, t, n) {\n                var i, o = 0,\n                    r = e.length,\n                    a = W(e);\n                if (n) {\n                    if (a)\n                        for (; o < r && !1 !== (i = t.apply(e[o], n)); o++);\n                    else\n                        for (o in e)\n                            if (i = t.apply(e[o], n), !1 === i) break\n                } else if (a)\n                    for (; o < r && !1 !== (i = t.call(e[o], o, e[o])); o++);\n                else\n                    for (o in e)\n                        if (i = t.call(e[o], o, e[o]), !1 === i) break;\n                return e\n            },\n            trim: function(e) {\n                return null == e ? \"\" : (e + \"\").replace(R, \"\")\n            },\n            makeArray: function(e, t) {\n                t = t || [];\n                return null != e && (W(Object(e)) ? S.merge(t, \"string\" == typeof e ? [e] : e) : O.call(t, e)), t\n            },\n            inArray: function(e, t, n) {\n                return null == t ? -1 : o.call(t, e, n)\n            },\n            merge: function(e, t) {\n                for (var n = +t.length, i = 0, o = e.length; i < n; i++) e[o++] = t[i];\n                return e.length = o, e\n            },\n            grep: function(e, t, n) {\n                for (var i = [], o = 0, r = e.length, a = !n; o < r; o++) !t(e[o], o) != a && i.push(e[o]);\n                return i\n            },\n            map: function(e, t, n) {\n                var i, o = 0,\n                    r = e.length,\n                    a = [];\n                if (W(e))\n                    for (; o < r; o++) null != (i = t(e[o], o, n)) && a.push(i);\n                else\n                    for (o in e) i = t(e[o], o, n), null != i && a.push(i);\n                return V.apply([], a)\n            },\n            guid: 1,\n            proxy: function(e, t) {\n                var n, i;\n                return \"string\" == typeof t && (i = e[t], t = e, e = i), S.isFunction(e) ? (n = u.call(arguments, 2), (i = function() {\n                    return e.apply(t || this, n.concat(u.call(arguments)))\n                }).guid = e.guid = e.guid || S.guid++, i) : void 0\n            },\n            now: Date.now,\n            support: m\n        }), S.each(\"Boolean Number String Function Array Date RegExp Object Error\".split(\" \"), function(e, t) {\n            n[\"[object \" + t + \"]\"] = t.toLowerCase()\n        });\n        var e = (L => {\n                function d(e, t, n) {\n                    var i = \"0x\" + t - 65536;\n                    return i != i || n ? t : i < 0 ? String.fromCharCode(65536 + i) : String.fromCharCode(i >> 10 | 55296, 1023 & i | 56320)\n                }\n                var e, h, v, r, _, p, V, O, S, c, u, f, w, t, m, g, i, o, T, y = \"sizzle\" + -new Date,\n                    b = L.document,\n                    A = 0,\n                    $ = 0,\n                    F = ce(),\n                    R = ce(),\n                    j = ce(),\n                    X = function(e, t) {\n                        return e === t && (u = !0), 0\n                    },\n                    n = \"undefined\",\n                    W = {}.hasOwnProperty,\n                    a = [],\n                    U = a.pop,\n                    K = a.push,\n                    P = a.push,\n                    Q = a.slice,\n                    M = a.indexOf || function(e) {\n                        for (var t = 0, n = this.length; t < n; t++)\n                            if (this[t] === e) return t;\n                        return -1\n                    },\n                    q = \"checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped\",\n                    s = \"[\\\\x20\\\\t\\\\r\\\\n\\\\f]\",\n                    l = \"(?:\\\\\\\\.|[\\\\w-]|[^\\\\x00-\\\\xa0])+\",\n                    z = l.replace(\"w\", \"w#\"),\n                    Y = \"\\\\[\" + s + \"*(\" + l + \")(?:\" + s + \"*([*^$|!~]?=)\" + s + \"*(?:'((?:\\\\\\\\.|[^\\\\\\\\'])*)'|\\\"((?:\\\\\\\\.|[^\\\\\\\\\\\"])*)\\\"|(\" + z + \"))|)\" + s + \"*\\\\]\",\n                    J = \":(\" + l + \")(?:\\\\((('((?:\\\\\\\\.|[^\\\\\\\\'])*)'|\\\"((?:\\\\\\\\.|[^\\\\\\\\\\\"])*)\\\")|((?:\\\\\\\\.|[^\\\\\\\\()[\\\\]]|\" + Y + \")*)|.*)\\\\)|)\",\n                    C = new RegExp(\"^\" + s + \"+|((?:^|[^\\\\\\\\])(?:\\\\\\\\.)*)\" + s + \"+$\", \"g\"),\n                    Z = new RegExp(\"^\" + s + \"*,\" + s + \"*\"),\n                    ee = new RegExp(\"^\" + s + \"*([>+~]|\" + s + \")\" + s + \"*\"),\n                    te = new RegExp(\"=\" + s + \"*([^\\\\]'\\\"]*?)\" + s + \"*\\\\]\", \"g\"),\n                    ne = new RegExp(J),\n                    ie = new RegExp(\"^\" + z + \"$\"),\n                    x = {\n                        ID: new RegExp(\"^#(\" + l + \")\"),\n                        CLASS: new RegExp(\"^\\\\.(\" + l + \")\"),\n                        TAG: new RegExp(\"^(\" + l.replace(\"w\", \"w*\") + \")\"),\n                        ATTR: new RegExp(\"^\" + Y),\n                        PSEUDO: new RegExp(\"^\" + J),\n                        CHILD: new RegExp(\"^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\\\(\" + s + \"*(even|odd|(([+-]|)(\\\\d*)n|)\" + s + \"*(?:([+-]|)\" + s + \"*(\\\\d+)|))\" + s + \"*\\\\)|)\", \"i\"),\n                        bool: new RegExp(\"^(?:\" + q + \")$\", \"i\"),\n                        needsContext: new RegExp(\"^\" + s + \"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\\\(\" + s + \"*((?:-\\\\d)?\\\\d*)\" + s + \"*\\\\)|)(?=[^-]|$)\", \"i\")\n                    },\n                    oe = /^(?:input|select|textarea|button)$/i,\n                    re = /^h\\d$/i,\n                    H = /^[^{]+\\{\\s*\\[native \\w/,\n                    ae = /^(?:#([\\w-]+)|(\\w+)|\\.([\\w-]+))$/,\n                    se = /[+~]/,\n                    le = /'|\\\\/g,\n                    G = new RegExp(\"\\\\\\\\([\\\\da-f]{1,6}\" + s + \"?|(\" + s + \")|.)\", \"ig\");\n                try {\n                    P.apply(a = Q.call(b.childNodes), b.childNodes), a[b.childNodes.length].nodeType\n                } catch (e) {\n                    P = {\n                        apply: a.length ? function(e, t) {\n                            K.apply(e, Q.call(t))\n                        } : function(e, t) {\n                            for (var n = e.length, i = 0; e[n++] = t[i++];);\n                            e.length = n - 1\n                        }\n                    }\n                }\n\n                function N(e, t, n, i) {\n                    var o, r, a, s, l, c, u;\n                    if ((t ? t.ownerDocument || t : b) !== w && f(t), n = n || [], !e || \"string\" != typeof e) return n;\n                    if (1 !== (o = (t = t || w).nodeType) && 9 !== o) return [];\n                    if (m && !i) {\n                        if (c = ae.exec(e))\n                            if (u = c[1]) {\n                                if (9 === o) {\n                                    if (!(s = t.getElementById(u)) || !s.parentNode) return n;\n                                    if (s.id === u) return n.push(s), n\n                                } else if (t.ownerDocument && (s = t.ownerDocument.getElementById(u)) && T(t, s) && s.id === u) return n.push(s), n\n                            } else {\n                                if (c[2]) return P.apply(n, t.getElementsByTagName(e)), n;\n                                if ((u = c[3]) && h.getElementsByClassName && t.getElementsByClassName) return P.apply(n, t.getElementsByClassName(u)), n\n                            } if (h.qsa && (!g || !g.test(e))) {\n                            if (l = s = y, c = t, u = 9 === o && e, 1 === o && \"object\" !== t.nodeName.toLowerCase()) {\n                                for (a = p(e), (s = t.getAttribute(\"id\")) ? l = s.replace(le, \"\\\\$&\") : t.setAttribute(\"id\", l), l = \"[id='\" + l + \"'] \", r = a.length; r--;) a[r] = l + D(a[r]);\n                                c = se.test(e) && he(t.parentNode) || t, u = a.join(\",\")\n                            }\n                            if (u) try {\n                                return P.apply(n, c.querySelectorAll(u)), n\n                            } catch (e) {} finally {\n                                s || t.removeAttribute(\"id\")\n                            }\n                        }\n                    }\n                    return O(e.replace(C, \"$1\"), t, n, i)\n                }\n\n                function ce() {\n                    var n = [];\n\n                    function i(e, t) {\n                        return n.push(e + \" \") > v.cacheLength && delete i[n.shift()], i[e + \" \"] = t\n                    }\n                    return i\n                }\n\n                function E(e) {\n                    return e[y] = !0, e\n                }\n\n                function B(e) {\n                    var t = w.createElement(\"div\");\n                    try {\n                        return !!e(t)\n                    } catch (e) {\n                        return !1\n                    } finally {\n                        t.parentNode && t.parentNode.removeChild(t)\n                    }\n                }\n\n                function ue(e, t) {\n                    for (var n = e.split(\"|\"), i = e.length; i--;) v.attrHandle[n[i]] = t\n                }\n\n                function de(e, t) {\n                    var n = t && e,\n                        i = n && 1 === e.nodeType && 1 === t.nodeType && (~t.sourceIndex || 1 << 31) - (~e.sourceIndex || 1 << 31);\n                    if (i) return i;\n                    if (n)\n                        for (; n = n.nextSibling;)\n                            if (n === t) return -1;\n                    return e ? 1 : -1\n                }\n\n                function k(a) {\n                    return E(function(r) {\n                        return r = +r, E(function(e, t) {\n                            for (var n, i = a([], e.length, r), o = i.length; o--;) e[n = i[o]] && (e[n] = !(t[n] = e[n]))\n                        })\n                    })\n                }\n\n                function he(e) {\n                    return e && typeof e.getElementsByTagName !== n && e\n                }\n                for (e in h = N.support = {}, _ = N.isXML = function(e) {\n                        e = e && (e.ownerDocument || e).documentElement;\n                        return !!e && \"HTML\" !== e.nodeName\n                    }, f = N.setDocument = function(e) {\n                        var l = e ? e.ownerDocument || e : b,\n                            e = l.defaultView;\n                        return l !== w && 9 === l.nodeType && l.documentElement ? (t = (w = l).documentElement, m = !_(l), e && e !== e.top && (e.addEventListener ? e.addEventListener(\"unload\", function() {\n                            f()\n                        }, !1) : e.attachEvent && e.attachEvent(\"onunload\", function() {\n                            f()\n                        })), h.attributes = B(function(e) {\n                            return e.className = \"i\", !e.getAttribute(\"className\")\n                        }), h.getElementsByTagName = B(function(e) {\n                            return e.appendChild(l.createComment(\"\")), !e.getElementsByTagName(\"*\").length\n                        }), h.getElementsByClassName = H.test(l.getElementsByClassName) && B(function(e) {\n                            return e.innerHTML = \"<div class='a'></div><div class='a i'></div>\", e.firstChild.className = \"i\", 2 === e.getElementsByClassName(\"i\").length\n                        }), h.getById = B(function(e) {\n                            return t.appendChild(e).id = y, !l.getElementsByName || !l.getElementsByName(y).length\n                        }), h.getById ? (v.find.ID = function(e, t) {\n                            if (typeof t.getElementById !== n && m) return (t = t.getElementById(e)) && t.parentNode ? [t] : []\n                        }, v.filter.ID = function(e) {\n                            var t = e.replace(G, d);\n                            return function(e) {\n                                return e.getAttribute(\"id\") === t\n                            }\n                        }) : (delete v.find.ID, v.filter.ID = function(e) {\n                            var t = e.replace(G, d);\n                            return function(e) {\n                                e = typeof e.getAttributeNode !== n && e.getAttributeNode(\"id\");\n                                return e && e.value === t\n                            }\n                        }), v.find.TAG = h.getElementsByTagName ? function(e, t) {\n                            return typeof t.getElementsByTagName !== n ? t.getElementsByTagName(e) : void 0\n                        } : function(e, t) {\n                            var n, i = [],\n                                o = 0,\n                                r = t.getElementsByTagName(e);\n                            if (\"*\" !== e) return r;\n                            for (; n = r[o++];) 1 === n.nodeType && i.push(n);\n                            return i\n                        }, v.find.CLASS = h.getElementsByClassName && function(e, t) {\n                            return typeof t.getElementsByClassName !== n && m ? t.getElementsByClassName(e) : void 0\n                        }, i = [], g = [], (h.qsa = H.test(l.querySelectorAll)) && (B(function(e) {\n                            e.innerHTML = \"<select msallowclip=''><option selected=''></option></select>\", e.querySelectorAll(\"[msallowclip^='']\").length && g.push(\"[*^$]=\" + s + \"*(?:''|\\\"\\\")\"), e.querySelectorAll(\"[selected]\").length || g.push(\"\\\\[\" + s + \"*(?:value|\" + q + \")\"), e.querySelectorAll(\":checked\").length || g.push(\":checked\")\n                        }), B(function(e) {\n                            var t = l.createElement(\"input\");\n                            t.setAttribute(\"type\", \"hidden\"), e.appendChild(t).setAttribute(\"name\", \"D\"), e.querySelectorAll(\"[name=d]\").length && g.push(\"name\" + s + \"*[*^$|!~]?=\"), e.querySelectorAll(\":enabled\").length || g.push(\":enabled\", \":disabled\"), e.querySelectorAll(\"*,:x\"), g.push(\",.*:\")\n                        })), (h.matchesSelector = H.test(o = t.matches || t.webkitMatchesSelector || t.mozMatchesSelector || t.oMatchesSelector || t.msMatchesSelector)) && B(function(e) {\n                            h.disconnectedMatch = o.call(e, \"div\"), o.call(e, \"[s!='']:x\"), i.push(\"!=\", J)\n                        }), g = g.length && new RegExp(g.join(\"|\")), i = i.length && new RegExp(i.join(\"|\")), e = H.test(t.compareDocumentPosition), T = e || H.test(t.contains) ? function(e, t) {\n                            var n = 9 === e.nodeType ? e.documentElement : e,\n                                t = t && t.parentNode;\n                            return e === t || !(!t || 1 !== t.nodeType || !(n.contains ? n.contains(t) : e.compareDocumentPosition && 16 & e.compareDocumentPosition(t)))\n                        } : function(e, t) {\n                            if (t)\n                                for (; t = t.parentNode;)\n                                    if (t === e) return !0;\n                            return !1\n                        }, X = e ? function(e, t) {\n                            var n;\n                            return e === t ? (u = !0, 0) : (n = !e.compareDocumentPosition - !t.compareDocumentPosition) || (1 & (n = (e.ownerDocument || e) === (t.ownerDocument || t) ? e.compareDocumentPosition(t) : 1) || !h.sortDetached && t.compareDocumentPosition(e) === n ? e === l || e.ownerDocument === b && T(b, e) ? -1 : t === l || t.ownerDocument === b && T(b, t) ? 1 : c ? M.call(c, e) - M.call(c, t) : 0 : 4 & n ? -1 : 1)\n                        } : function(e, t) {\n                            if (e === t) return u = !0, 0;\n                            var n, i = 0,\n                                o = e.parentNode,\n                                r = t.parentNode,\n                                a = [e],\n                                s = [t];\n                            if (!o || !r) return e === l ? -1 : t === l ? 1 : o ? -1 : r ? 1 : c ? M.call(c, e) - M.call(c, t) : 0;\n                            if (o === r) return de(e, t);\n                            for (n = e; n = n.parentNode;) a.unshift(n);\n                            for (n = t; n = n.parentNode;) s.unshift(n);\n                            for (; a[i] === s[i];) i++;\n                            return i ? de(a[i], s[i]) : a[i] === b ? -1 : s[i] === b ? 1 : 0\n                        }, l) : w\n                    }, N.matches = function(e, t) {\n                        return N(e, null, null, t)\n                    }, N.matchesSelector = function(e, t) {\n                        if ((e.ownerDocument || e) !== w && f(e), t = t.replace(te, \"='$1']\"), !(!h.matchesSelector || !m || i && i.test(t) || g && g.test(t))) try {\n                            var n = o.call(e, t);\n                            if (n || h.disconnectedMatch || e.document && 11 !== e.document.nodeType) return n\n                        } catch (e) {}\n                        return 0 < N(t, w, null, [e]).length\n                    }, N.contains = function(e, t) {\n                        return (e.ownerDocument || e) !== w && f(e), T(e, t)\n                    }, N.attr = function(e, t) {\n                        (e.ownerDocument || e) !== w && f(e);\n                        var n = v.attrHandle[t.toLowerCase()],\n                            n = n && W.call(v.attrHandle, t.toLowerCase()) ? n(e, t, !m) : void 0;\n                        return void 0 !== n ? n : h.attributes || !m ? e.getAttribute(t) : (n = e.getAttributeNode(t)) && n.specified ? n.value : null\n                    }, N.error = function(e) {\n                        throw new Error(\"Syntax error, unrecognized expression: \" + e)\n                    }, N.uniqueSort = function(e) {\n                        var t, n = [],\n                            i = 0,\n                            o = 0;\n                        if (u = !h.detectDuplicates, c = !h.sortStable && e.slice(0), e.sort(X), u) {\n                            for (; t = e[o++];) t === e[o] && (i = n.push(o));\n                            for (; i--;) e.splice(n[i], 1)\n                        }\n                        return c = null, e\n                    }, r = N.getText = function(e) {\n                        var t, n = \"\",\n                            i = 0,\n                            o = e.nodeType;\n                        if (o) {\n                            if (1 === o || 9 === o || 11 === o) {\n                                if (\"string\" == typeof e.textContent) return e.textContent;\n                                for (e = e.firstChild; e; e = e.nextSibling) n += r(e)\n                            } else if (3 === o || 4 === o) return e.nodeValue\n                        } else\n                            for (; t = e[i++];) n += r(t);\n                        return n\n                    }, (v = N.selectors = {\n                        cacheLength: 50,\n                        createPseudo: E,\n                        match: x,\n                        attrHandle: {},\n                        find: {},\n                        relative: {\n                            \">\": {\n                                dir: \"parentNode\",\n                                first: !0\n                            },\n                            \" \": {\n                                dir: \"parentNode\"\n                            },\n                            \"+\": {\n                                dir: \"previousSibling\",\n                                first: !0\n                            },\n                            \"~\": {\n                                dir: \"previousSibling\"\n                            }\n                        },\n                        preFilter: {\n                            ATTR: function(e) {\n                                return e[1] = e[1].replace(G, d), e[3] = (e[3] || e[4] || e[5] || \"\").replace(G, d), \"~=\" === e[2] && (e[3] = \" \" + e[3] + \" \"), e.slice(0, 4)\n                            },\n                            CHILD: function(e) {\n                                return e[1] = e[1].toLowerCase(), \"nth\" === e[1].slice(0, 3) ? (e[3] || N.error(e[0]), e[4] = +(e[4] ? e[5] + (e[6] || 1) : 2 * (\"even\" === e[3] || \"odd\" === e[3])), e[5] = +(e[7] + e[8] || \"odd\" === e[3])) : e[3] && N.error(e[0]), e\n                            },\n                            PSEUDO: function(e) {\n                                var t, n = !e[6] && e[2];\n                                return x.CHILD.test(e[0]) ? null : (e[3] ? e[2] = e[4] || e[5] || \"\" : n && ne.test(n) && (t = (t = p(n, !0)) && n.indexOf(\")\", n.length - t) - n.length) && (e[0] = e[0].slice(0, t), e[2] = n.slice(0, t)), e.slice(0, 3))\n                            }\n                        },\n                        filter: {\n                            TAG: function(e) {\n                                var t = e.replace(G, d).toLowerCase();\n                                return \"*\" === e ? function() {\n                                    return !0\n                                } : function(e) {\n                                    return e.nodeName && e.nodeName.toLowerCase() === t\n                                }\n                            },\n                            CLASS: function(e) {\n                                var t = F[e + \" \"];\n                                return t || (t = new RegExp(\"(^|\" + s + \")\" + e + \"(\" + s + \"|$)\")) && F(e, function(e) {\n                                    return t.test(\"string\" == typeof e.className && e.className || typeof e.getAttribute !== n && e.getAttribute(\"class\") || \"\")\n                                })\n                            },\n                            ATTR: function(t, n, i) {\n                                return function(e) {\n                                    e = N.attr(e, t);\n                                    return null == e ? \"!=\" === n : !n || (e += \"\", \"=\" === n ? e === i : \"!=\" === n ? e !== i : \"^=\" === n ? i && 0 === e.indexOf(i) : \"*=\" === n ? i && -1 < e.indexOf(i) : \"$=\" === n ? i && e.slice(-i.length) === i : \"~=\" === n ? -1 < (\" \" + e + \" \").indexOf(i) : \"|=\" === n && (e === i || e.slice(0, i.length + 1) === i + \"-\"))\n                                }\n                            },\n                            CHILD: function(p, e, t, f, m) {\n                                var g = \"nth\" !== p.slice(0, 3),\n                                    T = \"last\" !== p.slice(-4),\n                                    b = \"of-type\" === e;\n                                return 1 === f && 0 === m ? function(e) {\n                                    return !!e.parentNode\n                                } : function(e, t, n) {\n                                    var i, o, r, a, s, l, c = g != T ? \"nextSibling\" : \"previousSibling\",\n                                        u = e.parentNode,\n                                        d = b && e.nodeName.toLowerCase(),\n                                        h = !n && !b;\n                                    if (u) {\n                                        if (g) {\n                                            for (; c;) {\n                                                for (r = e; r = r[c];)\n                                                    if (b ? r.nodeName.toLowerCase() === d : 1 === r.nodeType) return !1;\n                                                l = c = \"only\" === p && !l && \"nextSibling\"\n                                            }\n                                            return !0\n                                        }\n                                        if (l = [T ? u.firstChild : u.lastChild], T && h) {\n                                            for (s = (i = (o = u[y] || (u[y] = {}))[p] || [])[0] === A && i[1], a = i[0] === A && i[2], r = s && u.childNodes[s]; r = ++s && r && r[c] || (a = s = 0, l.pop());)\n                                                if (1 === r.nodeType && ++a && r === e) {\n                                                    o[p] = [A, s, a];\n                                                    break\n                                                }\n                                        } else if (h && (i = (e[y] || (e[y] = {}))[p]) && i[0] === A) a = i[1];\n                                        else\n                                            for (;\n                                                (r = ++s && r && r[c] || (a = s = 0, l.pop())) && ((b ? r.nodeName.toLowerCase() !== d : 1 !== r.nodeType) || !++a || (h && ((r[y] || (r[y] = {}))[p] = [A, a]), r !== e)););\n                                        return (a -= m) === f || a % f == 0 && 0 <= a / f\n                                    }\n                                }\n                            },\n                            PSEUDO: function(e, r) {\n                                var t, a = v.pseudos[e] || v.setFilters[e.toLowerCase()] || N.error(\"unsupported pseudo: \" + e);\n                                return a[y] ? a(r) : 1 < a.length ? (t = [e, e, \"\", r], v.setFilters.hasOwnProperty(e.toLowerCase()) ? E(function(e, t) {\n                                    for (var n, i = a(e, r), o = i.length; o--;) e[n = M.call(e, i[o])] = !(t[n] = i[o])\n                                }) : function(e) {\n                                    return a(e, 0, t)\n                                }) : a\n                            }\n                        },\n                        pseudos: {\n                            not: E(function(e) {\n                                var i = [],\n                                    o = [],\n                                    s = V(e.replace(C, \"$1\"));\n                                return s[y] ? E(function(e, t, n, i) {\n                                    for (var o, r = s(e, null, i, []), a = e.length; a--;)(o = r[a]) && (e[a] = !(t[a] = o))\n                                }) : function(e, t, n) {\n                                    return i[0] = e, s(i, null, n, o), !o.pop()\n                                }\n                            }),\n                            has: E(function(t) {\n                                return function(e) {\n                                    return 0 < N(t, e).length\n                                }\n                            }),\n                            contains: E(function(t) {\n                                return function(e) {\n                                    return -1 < (e.textContent || e.innerText || r(e)).indexOf(t)\n                                }\n                            }),\n                            lang: E(function(n) {\n                                return ie.test(n || \"\") || N.error(\"unsupported lang: \" + n), n = n.replace(G, d).toLowerCase(),\n                                    function(e) {\n                                        var t;\n                                        do {\n                                            if (t = m ? e.lang : e.getAttribute(\"xml:lang\") || e.getAttribute(\"lang\")) return (t = t.toLowerCase()) === n || 0 === t.indexOf(n + \"-\")\n                                        } while ((e = e.parentNode) && 1 === e.nodeType);\n                                        return !1\n                                    }\n                            }),\n                            target: function(e) {\n                                var t = L.location && L.location.hash;\n                                return t && t.slice(1) === e.id\n                            },\n                            root: function(e) {\n                                return e === t\n                            },\n                            focus: function(e) {\n                                return e === w.activeElement && (!w.hasFocus || w.hasFocus()) && !!(e.type || e.href || ~e.tabIndex)\n                            },\n                            enabled: function(e) {\n                                return !1 === e.disabled\n                            },\n                            disabled: function(e) {\n                                return !0 === e.disabled\n                            },\n                            checked: function(e) {\n                                var t = e.nodeName.toLowerCase();\n                                return \"input\" === t && !!e.checked || \"option\" === t && !!e.selected\n                            },\n                            selected: function(e) {\n                                return e.parentNode && e.parentNode.selectedIndex, !0 === e.selected\n                            },\n                            empty: function(e) {\n                                for (e = e.firstChild; e; e = e.nextSibling)\n                                    if (e.nodeType < 6) return !1;\n                                return !0\n                            },\n                            parent: function(e) {\n                                return !v.pseudos.empty(e)\n                            },\n                            header: function(e) {\n                                return re.test(e.nodeName)\n                            },\n                            input: function(e) {\n                                return oe.test(e.nodeName)\n                            },\n                            button: function(e) {\n                                var t = e.nodeName.toLowerCase();\n                                return \"input\" === t && \"button\" === e.type || \"button\" === t\n                            },\n                            text: function(e) {\n                                return \"input\" === e.nodeName.toLowerCase() && \"text\" === e.type && (null == (e = e.getAttribute(\"type\")) || \"text\" === e.toLowerCase())\n                            },\n                            first: k(function() {\n                                return [0]\n                            }),\n                            last: k(function(e, t) {\n                                return [t - 1]\n                            }),\n                            eq: k(function(e, t, n) {\n                                return [n < 0 ? n + t : n]\n                            }),\n                            even: k(function(e, t) {\n                                for (var n = 0; n < t; n += 2) e.push(n);\n                                return e\n                            }),\n                            odd: k(function(e, t) {\n                                for (var n = 1; n < t; n += 2) e.push(n);\n                                return e\n                            }),\n                            lt: k(function(e, t, n) {\n                                for (var i = n < 0 ? n + t : n; 0 <= --i;) e.push(i);\n                                return e\n                            }),\n                            gt: k(function(e, t, n) {\n                                for (var i = n < 0 ? n + t : n; ++i < t;) e.push(i);\n                                return e\n                            })\n                        }\n                    }).pseudos.nth = v.pseudos.eq, {\n                        radio: !0,\n                        checkbox: !0,\n                        file: !0,\n                        password: !0,\n                        image: !0\n                    }) v.pseudos[e] = (t => function(e) {\n                    return \"input\" === e.nodeName.toLowerCase() && e.type === t\n                })(e);\n                for (e in {\n                        submit: !0,\n                        reset: !0\n                    }) v.pseudos[e] = (n => function(e) {\n                    var t = e.nodeName.toLowerCase();\n                    return (\"input\" === t || \"button\" === t) && e.type === n\n                })(e);\n\n                function pe() {}\n\n                function D(e) {\n                    for (var t = 0, n = e.length, i = \"\"; t < n; t++) i += e[t].value;\n                    return i\n                }\n\n                function fe(a, e, t) {\n                    var s = e.dir,\n                        l = t && \"parentNode\" === s,\n                        c = $++;\n                    return e.first ? function(e, t, n) {\n                        for (; e = e[s];)\n                            if (1 === e.nodeType || l) return a(e, t, n)\n                    } : function(e, t, n) {\n                        var i, o, r = [A, c];\n                        if (n) {\n                            for (; e = e[s];)\n                                if ((1 === e.nodeType || l) && a(e, t, n)) return !0\n                        } else\n                            for (; e = e[s];)\n                                if (1 === e.nodeType || l) {\n                                    if ((i = (o = e[y] || (e[y] = {}))[s]) && i[0] === A && i[1] === c) return r[2] = i[2];\n                                    if ((o[s] = r)[2] = a(e, t, n)) return !0\n                                }\n                    }\n                }\n\n                function me(o) {\n                    return 1 < o.length ? function(e, t, n) {\n                        for (var i = o.length; i--;)\n                            if (!o[i](e, t, n)) return !1;\n                        return !0\n                    } : o[0]\n                }\n\n                function I(e, t, n, i, o) {\n                    for (var r, a = [], s = 0, l = e.length, c = null != t; s < l; s++)(r = e[s]) && (!n || n(r, i, o)) && (a.push(r), c) && t.push(s);\n                    return a\n                }\n\n                function ge(p, f, m, g, T, e) {\n                    return g && !g[y] && (g = ge(g)), T && !T[y] && (T = ge(T, e)), E(function(e, t, n, i) {\n                        var o, r, a, s = [],\n                            l = [],\n                            c = t.length,\n                            u = e || ((e, t, n) => {\n                                for (var i = 0, o = t.length; i < o; i++) N(e, t[i], n);\n                                return n\n                            })(f || \"*\", n.nodeType ? [n] : n, []),\n                            d = !p || !e && f ? u : I(u, s, p, n, i),\n                            h = m ? T || (e ? p : c || g) ? [] : t : d;\n                        if (m && m(d, h, n, i), g)\n                            for (o = I(h, l), g(o, [], n, i), r = o.length; r--;)(a = o[r]) && (h[l[r]] = !(d[l[r]] = a));\n                        if (e) {\n                            if (T || p) {\n                                if (T) {\n                                    for (o = [], r = h.length; r--;)(a = h[r]) && o.push(d[r] = a);\n                                    T(null, h = [], o, i)\n                                }\n                                for (r = h.length; r--;)(a = h[r]) && -1 < (o = T ? M.call(e, a) : s[r]) && (e[o] = !(t[o] = a))\n                            }\n                        } else h = I(h === t ? h.splice(c, h.length) : h), T ? T(null, t, h, i) : P.apply(t, h)\n                    })\n                }\n\n                function Te(g, T) {\n                    function e(e, t, n, i, o) {\n                        var r, a, s, l = 0,\n                            c = \"0\",\n                            u = e && [],\n                            d = [],\n                            h = S,\n                            p = e || y && v.find.TAG(\"*\", o),\n                            f = A += null == h ? 1 : Math.random() || .1,\n                            m = p.length;\n                        for (o && (S = t !== w && t); c !== m && null != (r = p[c]); c++) {\n                            if (y && r) {\n                                for (a = 0; s = g[a++];)\n                                    if (s(r, t, n)) {\n                                        i.push(r);\n                                        break\n                                    } o && (A = f)\n                            }\n                            b && ((r = !s && r) && l--, e) && u.push(r)\n                        }\n                        if (l += c, b && c !== l) {\n                            for (a = 0; s = T[a++];) s(u, d, t, n);\n                            if (e) {\n                                if (0 < l)\n                                    for (; c--;) u[c] || d[c] || (d[c] = U.call(i));\n                                d = I(d)\n                            }\n                            P.apply(i, d), o && !e && 0 < d.length && 1 < l + T.length && N.uniqueSort(i)\n                        }\n                        return o && (A = f, S = h), u\n                    }\n                    var b = 0 < T.length,\n                        y = 0 < g.length;\n                    return b ? E(e) : e\n                }\n                return pe.prototype = v.filters = v.pseudos, v.setFilters = new pe, p = N.tokenize = function(e, t) {\n                    var n, i, o, r, a, s, l, c = R[e + \" \"];\n                    if (c) return t ? 0 : c.slice(0);\n                    for (a = e, s = [], l = v.preFilter; a;) {\n                        for (r in n && !(i = Z.exec(a)) || (i && (a = a.slice(i[0].length) || a), s.push(o = [])), n = !1, (i = ee.exec(a)) && (n = i.shift(), o.push({\n                                value: n,\n                                type: i[0].replace(C, \" \")\n                            }), a = a.slice(n.length)), v.filter) !(i = x[r].exec(a)) || l[r] && !(i = l[r](i)) || (n = i.shift(), o.push({\n                            value: n,\n                            type: r,\n                            matches: i\n                        }), a = a.slice(n.length));\n                        if (!n) break\n                    }\n                    return t ? a.length : a ? N.error(e) : R(e, s).slice(0)\n                }, V = N.compile = function(e, t) {\n                    var n, i = [],\n                        o = [],\n                        r = j[e + \" \"];\n                    if (!r) {\n                        for (n = (t = t || p(e)).length; n--;)((r = function e(t) {\n                            for (var i, n, o, r = t.length, a = v.relative[t[0].type], s = a || v.relative[\" \"], l = a ? 1 : 0, c = fe(function(e) {\n                                    return e === i\n                                }, s, !0), u = fe(function(e) {\n                                    return -1 < M.call(i, e)\n                                }, s, !0), d = [function(e, t, n) {\n                                    return !a && (n || t !== S) || ((i = t).nodeType ? c : u)(e, t, n)\n                                }]; l < r; l++)\n                                if (n = v.relative[t[l].type]) d = [fe(me(d), n)];\n                                else {\n                                    if ((n = v.filter[t[l].type].apply(null, t[l].matches))[y]) {\n                                        for (o = ++l; o < r && !v.relative[t[o].type]; o++);\n                                        return ge(1 < l && me(d), 1 < l && D(t.slice(0, l - 1).concat({\n                                            value: \" \" === t[l - 2].type ? \"*\" : \"\"\n                                        })).replace(C, \"$1\"), n, l < o && e(t.slice(l, o)), o < r && e(t = t.slice(o)), o < r && D(t))\n                                    }\n                                    d.push(n)\n                                } return me(d)\n                        }(t[n]))[y] ? i : o).push(r);\n                        (r = j(e, Te(o, i))).selector = e\n                    }\n                    return r\n                }, O = N.select = function(e, t, n, i) {\n                    var o, r, a, s, l, c = \"function\" == typeof e && e,\n                        u = !i && p(e = c.selector || e);\n                    if (n = n || [], 1 === u.length) {\n                        if (2 < (r = u[0] = u[0].slice(0)).length && \"ID\" === (a = r[0]).type && h.getById && 9 === t.nodeType && m && v.relative[r[1].type]) {\n                            if (!(t = (v.find.ID(a.matches[0].replace(G, d), t) || [])[0])) return n;\n                            c && (t = t.parentNode), e = e.slice(r.shift().value.length)\n                        }\n                        for (o = x.needsContext.test(e) ? 0 : r.length; o-- && (a = r[o], !v.relative[s = a.type]);)\n                            if ((l = v.find[s]) && (i = l(a.matches[0].replace(G, d), se.test(r[0].type) && he(t.parentNode) || t))) {\n                                if (r.splice(o, 1), e = i.length && D(r)) break;\n                                return P.apply(n, i), n\n                            }\n                    }\n                    return (c || V(e, u))(i, t, !m, n, se.test(e) && he(t.parentNode) || t), n\n                }, h.sortStable = y.split(\"\").sort(X).join(\"\") === y, h.detectDuplicates = !!u, f(), h.sortDetached = B(function(e) {\n                    return 1 & e.compareDocumentPosition(w.createElement(\"div\"))\n                }), B(function(e) {\n                    return e.innerHTML = \"<a href='#'></a>\", \"#\" === e.firstChild.getAttribute(\"href\")\n                }) || ue(\"type|href|height|width\", function(e, t, n) {\n                    return n ? void 0 : e.getAttribute(t, \"type\" === t.toLowerCase() ? 1 : 2)\n                }), h.attributes && B(function(e) {\n                    return e.innerHTML = \"<input/>\", e.firstChild.setAttribute(\"value\", \"\"), \"\" === e.firstChild.getAttribute(\"value\")\n                }) || ue(\"value\", function(e, t, n) {\n                    return n || \"input\" !== e.nodeName.toLowerCase() ? void 0 : e.defaultValue\n                }), B(function(e) {\n                    return null == e.getAttribute(\"disabled\")\n                }) || ue(q, function(e, t, n) {\n                    return n ? void 0 : !0 === e[t] ? t.toLowerCase() : (n = e.getAttributeNode(t)) && n.specified ? n.value : null\n                }), N\n            })(f),\n            U = (S.find = e, S.expr = e.selectors, S.expr[\":\"] = S.expr.pseudos, S.unique = e.uniqueSort, S.text = e.getText, S.isXMLDoc = e.isXML, S.contains = e.contains, S.expr.match.needsContext),\n            K = /^<(\\w+)\\s*\\/?>(?:<\\/\\1>|)$/,\n            Q = /^.[^:#\\[\\.,]*$/;\n\n        function q(e, n, i) {\n            if (S.isFunction(n)) return S.grep(e, function(e, t) {\n                return !!n.call(e, t, e) !== i\n            });\n            if (n.nodeType) return S.grep(e, function(e) {\n                return e === n !== i\n            });\n            if (\"string\" == typeof n) {\n                if (Q.test(n)) return S.filter(n, e, i);\n                n = S.filter(n, e)\n            }\n            return S.grep(e, function(e) {\n                return 0 <= o.call(n, e) !== i\n            })\n        }\n        S.filter = function(e, t, n) {\n            var i = t[0];\n            return n && (e = \":not(\" + e + \")\"), 1 === t.length && 1 === i.nodeType ? S.find.matchesSelector(i, e) ? [i] : [] : S.find.matches(e, S.grep(t, function(e) {\n                return 1 === e.nodeType\n            }))\n        }, S.fn.extend({\n            find: function(e) {\n                var t, n = this.length,\n                    i = [],\n                    o = this;\n                if (\"string\" != typeof e) return this.pushStack(S(e).filter(function() {\n                    for (t = 0; t < n; t++)\n                        if (S.contains(o[t], this)) return !0\n                }));\n                for (t = 0; t < n; t++) S.find(e, o[t], i);\n                return (i = this.pushStack(1 < n ? S.unique(i) : i)).selector = this.selector ? this.selector + \" \" + e : e, i\n            },\n            filter: function(e) {\n                return this.pushStack(q(this, e || [], !1))\n            },\n            not: function(e) {\n                return this.pushStack(q(this, e || [], !0))\n            },\n            is: function(e) {\n                return !!q(this, \"string\" == typeof e && U.test(e) ? S(e) : e || [], !1).length\n            }\n        });\n        var r, z = /^(?:\\s*(<[\\w\\W]+>)[^>]*|#([\\w-]*))$/,\n            Y = ((S.fn.init = function(e, t) {\n                var n, i;\n                if (e) {\n                    if (\"string\" != typeof e) return e.nodeType ? (this.context = this[0] = e, this.length = 1, this) : S.isFunction(e) ? void 0 !== r.ready ? r.ready(e) : e(S) : (void 0 !== e.selector && (this.selector = e.selector, this.context = e.context), S.makeArray(e, this));\n                    if (!(n = \"<\" === e[0] && \">\" === e[e.length - 1] && 3 <= e.length ? [null, e, null] : z.exec(e)) || !n[1] && t) return (!t || t.jquery ? t || r : this.constructor(t)).find(e);\n                    if (n[1]) {\n                        if (t = t instanceof S ? t[0] : t, S.merge(this, S.parseHTML(n[1], t && t.nodeType ? t.ownerDocument || t : g, !0)), K.test(n[1]) && S.isPlainObject(t))\n                            for (n in t) S.isFunction(this[n]) ? this[n](t[n]) : this.attr(n, t[n])\n                    } else(i = g.getElementById(n[2])) && i.parentNode && (this.length = 1, this[0] = i), this.context = g, this.selector = e\n                }\n                return this\n            }).prototype = S.fn, r = S(g), /^(?:parents|prev(?:Until|All))/),\n            J = {\n                children: !0,\n                contents: !0,\n                next: !0,\n                prev: !0\n            };\n\n        function Z(e, t) {\n            for (;\n                (e = e[t]) && 1 !== e.nodeType;);\n            return e\n        }\n        S.extend({\n            dir: function(e, t, n) {\n                for (var i = [], o = void 0 !== n;\n                    (e = e[t]) && 9 !== e.nodeType;)\n                    if (1 === e.nodeType) {\n                        if (o && S(e).is(n)) break;\n                        i.push(e)\n                    } return i\n            },\n            sibling: function(e, t) {\n                for (var n = []; e; e = e.nextSibling) 1 === e.nodeType && e !== t && n.push(e);\n                return n\n            }\n        }), S.fn.extend({\n            has: function(e) {\n                var t = S(e, this),\n                    n = t.length;\n                return this.filter(function() {\n                    for (var e = 0; e < n; e++)\n                        if (S.contains(this, t[e])) return !0\n                })\n            },\n            closest: function(e, t) {\n                for (var n, i = 0, o = this.length, r = [], a = U.test(e) || \"string\" != typeof e ? S(e, t || this.context) : 0; i < o; i++)\n                    for (n = this[i]; n && n !== t; n = n.parentNode)\n                        if (n.nodeType < 11 && (a ? -1 < a.index(n) : 1 === n.nodeType && S.find.matchesSelector(n, e))) {\n                            r.push(n);\n                            break\n                        } return this.pushStack(1 < r.length ? S.unique(r) : r)\n            },\n            index: function(e) {\n                return e ? \"string\" == typeof e ? o.call(S(e), this[0]) : o.call(this, e.jquery ? e[0] : e) : this[0] && this[0].parentNode ? this.first().prevAll().length : -1\n            },\n            add: function(e, t) {\n                return this.pushStack(S.unique(S.merge(this.get(), S(e, t))))\n            },\n            addBack: function(e) {\n                return this.add(null == e ? this.prevObject : this.prevObject.filter(e))\n            }\n        }), S.each({\n            parent: function(e) {\n                e = e.parentNode;\n                return e && 11 !== e.nodeType ? e : null\n            },\n            parents: function(e) {\n                return S.dir(e, \"parentNode\")\n            },\n            parentsUntil: function(e, t, n) {\n                return S.dir(e, \"parentNode\", n)\n            },\n            next: function(e) {\n                return Z(e, \"nextSibling\")\n            },\n            prev: function(e) {\n                return Z(e, \"previousSibling\")\n            },\n            nextAll: function(e) {\n                return S.dir(e, \"nextSibling\")\n            },\n            prevAll: function(e) {\n                return S.dir(e, \"previousSibling\")\n            },\n            nextUntil: function(e, t, n) {\n                return S.dir(e, \"nextSibling\", n)\n            },\n            prevUntil: function(e, t, n) {\n                return S.dir(e, \"previousSibling\", n)\n            },\n            siblings: function(e) {\n                return S.sibling((e.parentNode || {}).firstChild, e)\n            },\n            children: function(e) {\n                return S.sibling(e.firstChild)\n            },\n            contents: function(e) {\n                return e.contentDocument || S.merge([], e.childNodes)\n            }\n        }, function(i, o) {\n            S.fn[i] = function(e, t) {\n                var n = S.map(this, o, e);\n                return (t = \"Until\" !== i.slice(-5) ? e : t) && \"string\" == typeof t && (n = S.filter(t, n)), 1 < this.length && (J[i] || S.unique(n), Y.test(i)) && n.reverse(), this.pushStack(n)\n            }\n        });\n        var i, w = /\\S+/g,\n            ee = {};\n\n        function a() {\n            g.removeEventListener(\"DOMContentLoaded\", a, !1), f.removeEventListener(\"load\", a, !1), S.ready()\n        }\n        S.Callbacks = function(o) {\n            var e, n;\n            o = \"string\" == typeof o ? ee[o] || (n = ee[e = o] = {}, S.each(e.match(w) || [], function(e, t) {\n                n[t] = !0\n            }), n) : S.extend({}, o);\n\n            function i(e) {\n                for (t = o.memory && e, r = !0, c = s || 0, s = 0, l = u.length, a = !0; u && c < l; c++)\n                    if (!1 === u[c].apply(e[0], e[1]) && o.stopOnFalse) {\n                        t = !1;\n                        break\n                    } a = !1, u && (d ? d.length && i(d.shift()) : t ? u = [] : h.disable())\n            }\n            var t, r, a, s, l, c, u = [],\n                d = !o.once && [],\n                h = {\n                    add: function() {\n                        var e;\n                        return u && (e = u.length, function i(e) {\n                            S.each(e, function(e, t) {\n                                var n = S.type(t);\n                                \"function\" === n ? o.unique && h.has(t) || u.push(t) : t && t.length && \"string\" !== n && i(t)\n                            })\n                        }(arguments), a ? l = u.length : t && (s = e, i(t))), this\n                    },\n                    remove: function() {\n                        return u && S.each(arguments, function(e, t) {\n                            for (var n; - 1 < (n = S.inArray(t, u, n));) u.splice(n, 1), a && (n <= l && l--, n <= c) && c--\n                        }), this\n                    },\n                    has: function(e) {\n                        return e ? -1 < S.inArray(e, u) : !(!u || !u.length)\n                    },\n                    empty: function() {\n                        return u = [], l = 0, this\n                    },\n                    disable: function() {\n                        return u = d = t = void 0, this\n                    },\n                    disabled: function() {\n                        return !u\n                    },\n                    lock: function() {\n                        return d = void 0, t || h.disable(), this\n                    },\n                    locked: function() {\n                        return !d\n                    },\n                    fireWith: function(e, t) {\n                        return !u || r && !d || (t = [e, (t = t || []).slice ? t.slice() : t], a ? d.push(t) : i(t)), this\n                    },\n                    fire: function() {\n                        return h.fireWith(this, arguments), this\n                    },\n                    fired: function() {\n                        return !!r\n                    }\n                };\n            return h\n        }, S.extend({\n            Deferred: function(e) {\n                var r = [\n                        [\"resolve\", \"done\", S.Callbacks(\"once memory\"), \"resolved\"],\n                        [\"reject\", \"fail\", S.Callbacks(\"once memory\"), \"rejected\"],\n                        [\"notify\", \"progress\", S.Callbacks(\"memory\")]\n                    ],\n                    o = \"pending\",\n                    a = {\n                        state: function() {\n                            return o\n                        },\n                        always: function() {\n                            return s.done(arguments).fail(arguments), this\n                        },\n                        then: function() {\n                            var o = arguments;\n                            return S.Deferred(function(i) {\n                                S.each(r, function(e, t) {\n                                    var n = S.isFunction(o[e]) && o[e];\n                                    s[t[1]](function() {\n                                        var e = n && n.apply(this, arguments);\n                                        e && S.isFunction(e.promise) ? e.promise().done(i.resolve).fail(i.reject).progress(i.notify) : i[t[0] + \"With\"](this === a ? i.promise() : this, n ? [e] : arguments)\n                                    })\n                                }), o = null\n                            }).promise()\n                        },\n                        promise: function(e) {\n                            return null != e ? S.extend(e, a) : a\n                        }\n                    },\n                    s = {};\n                return a.pipe = a.then, S.each(r, function(e, t) {\n                    var n = t[2],\n                        i = t[3];\n                    a[t[1]] = n.add, i && n.add(function() {\n                        o = i\n                    }, r[1 ^ e][2].disable, r[2][2].lock), s[t[0]] = function() {\n                        return s[t[0] + \"With\"](this === s ? a : this, arguments), this\n                    }, s[t[0] + \"With\"] = n.fireWith\n                }), a.promise(s), e && e.call(s, s), s\n            },\n            when: function(e) {\n                function t(t, n, i) {\n                    return function(e) {\n                        n[t] = this, i[t] = 1 < arguments.length ? u.call(arguments) : e, i === o ? c.notifyWith(n, i) : --l || c.resolveWith(n, i)\n                    }\n                }\n                var o, n, i, r = 0,\n                    a = u.call(arguments),\n                    s = a.length,\n                    l = 1 !== s || e && S.isFunction(e.promise) ? s : 0,\n                    c = 1 === l ? e : S.Deferred();\n                if (1 < s)\n                    for (o = new Array(s), n = new Array(s), i = new Array(s); r < s; r++) a[r] && S.isFunction(a[r].promise) ? a[r].promise().done(t(r, i, a)).fail(c.reject).progress(t(r, n, o)) : --l;\n                return l || c.resolveWith(i, a), c.promise()\n            }\n        }), S.fn.ready = function(e) {\n            return S.ready.promise().done(e), this\n        }, S.extend({\n            isReady: !1,\n            readyWait: 1,\n            holdReady: function(e) {\n                e ? S.readyWait++ : S.ready(!0)\n            },\n            ready: function(e) {\n                (!0 === e ? --S.readyWait : S.isReady) || (S.isReady = !0) !== e && 0 < --S.readyWait || (i.resolveWith(g, [S]), S.fn.triggerHandler && (S(g).triggerHandler(\"ready\"), S(g).off(\"ready\")))\n            }\n        }), S.ready.promise = function(e) {\n            return i || (i = S.Deferred(), \"complete\" === g.readyState ? setTimeout(S.ready) : (g.addEventListener(\"DOMContentLoaded\", a, !1), f.addEventListener(\"load\", a, !1))), i.promise(e)\n        }, S.ready.promise();\n        var s = S.access = function(e, t, n, i, o, r, a) {\n            var s = 0,\n                l = e.length,\n                c = null == n;\n            if (\"object\" === S.type(n))\n                for (s in o = !0, n) S.access(e, t, s, n[s], !0, r, a);\n            else if (void 0 !== i && (o = !0, S.isFunction(i) || (a = !0), t = c ? a ? (t.call(e, i), null) : (c = t, function(e, t, n) {\n                    return c.call(S(e), n)\n                }) : t))\n                for (; s < l; s++) t(e[s], n, a ? i : i.call(e[s], s, t(e[s], n)));\n            return o ? e : c ? t.call(e) : l ? t(e[0], n) : r\n        };\n\n        function l() {\n            Object.defineProperty(this.cache = {}, 0, {\n                get: function() {\n                    return {}\n                }\n            }), this.expando = S.expando + Math.random()\n        }\n        S.acceptData = function(e) {\n            return 1 === e.nodeType || 9 === e.nodeType || !+e.nodeType\n        }, l.uid = 1, l.accepts = S.acceptData, l.prototype = {\n            key: function(t) {\n                if (!l.accepts(t)) return 0;\n                var n = {},\n                    i = t[this.expando];\n                if (!i) {\n                    i = l.uid++;\n                    try {\n                        n[this.expando] = {\n                            value: i\n                        }, Object.defineProperties(t, n)\n                    } catch (e) {\n                        n[this.expando] = i, S.extend(t, n)\n                    }\n                }\n                return this.cache[i] || (this.cache[i] = {}), i\n            },\n            set: function(e, t, n) {\n                var i, e = this.key(e),\n                    o = this.cache[e];\n                if (\"string\" == typeof t) o[t] = n;\n                else if (S.isEmptyObject(o)) S.extend(this.cache[e], t);\n                else\n                    for (i in t) o[i] = t[i];\n                return o\n            },\n            get: function(e, t) {\n                e = this.cache[this.key(e)];\n                return void 0 === t ? e : e[t]\n            },\n            access: function(e, t, n) {\n                var i;\n                return void 0 === t || t && \"string\" == typeof t && void 0 === n ? void 0 !== (i = this.get(e, t)) ? i : this.get(e, S.camelCase(t)) : (this.set(e, t, n), void 0 !== n ? n : t)\n            },\n            remove: function(e, t) {\n                var n, i, e = this.key(e),\n                    o = this.cache[e];\n                if (void 0 === t) this.cache[e] = {};\n                else {\n                    n = (i = S.isArray(t) ? t.concat(t.map(S.camelCase)) : (e = S.camelCase(t), t in o ? [t, e] : (i = e) in o ? [i] : i.match(w) || [])).length;\n                    for (; n--;) delete o[i[n]]\n                }\n            },\n            hasData: function(e) {\n                return !S.isEmptyObject(this.cache[e[this.expando]] || {})\n            },\n            discard: function(e) {\n                e[this.expando] && delete this.cache[e[this.expando]]\n            }\n        };\n        var T = new l,\n            c = new l,\n            te = /^(?:\\{[\\w\\W]*\\}|\\[[\\w\\W]*\\])$/,\n            ne = /([A-Z])/g;\n\n        function ie(e, t, n) {\n            var i;\n            if (void 0 === n && 1 === e.nodeType)\n                if (i = \"data-\" + t.replace(ne, \"-$1\").toLowerCase(), \"string\" == typeof(n = e.getAttribute(i))) {\n                    try {\n                        n = \"true\" === n || \"false\" !== n && (\"null\" === n ? null : +n + \"\" === n ? +n : te.test(n) ? S.parseJSON(n) : n)\n                    } catch (e) {}\n                    c.set(e, t, n)\n                } else n = void 0;\n            return n\n        }\n        S.extend({\n            hasData: function(e) {\n                return c.hasData(e) || T.hasData(e)\n            },\n            data: function(e, t, n) {\n                return c.access(e, t, n)\n            },\n            removeData: function(e, t) {\n                c.remove(e, t)\n            },\n            _data: function(e, t, n) {\n                return T.access(e, t, n)\n            },\n            _removeData: function(e, t) {\n                T.remove(e, t)\n            }\n        }), S.fn.extend({\n            data: function(i, e) {\n                var t, n, o, r = this[0],\n                    a = r && r.attributes;\n                if (void 0 !== i) return \"object\" == typeof i ? this.each(function() {\n                    c.set(this, i)\n                }) : s(this, function(t) {\n                    var e, n = S.camelCase(i);\n                    if (r && void 0 === t) return void 0 !== (e = c.get(r, i)) || void 0 !== (e = c.get(r, n)) || void 0 !== (e = ie(r, n, void 0)) ? e : void 0;\n                    this.each(function() {\n                        var e = c.get(this, n);\n                        c.set(this, n, t), -1 !== i.indexOf(\"-\") && void 0 !== e && c.set(this, i, t)\n                    })\n                }, null, e, 1 < arguments.length, null, !0);\n                if (this.length && (o = c.get(r), 1 === r.nodeType) && !T.get(r, \"hasDataAttrs\")) {\n                    for (t = a.length; t--;) a[t] && 0 === (n = a[t].name).indexOf(\"data-\") && (n = S.camelCase(n.slice(5)), ie(r, n, o[n]));\n                    T.set(r, \"hasDataAttrs\", !0)\n                }\n                return o\n            },\n            removeData: function(e) {\n                return this.each(function() {\n                    c.remove(this, e)\n                })\n            }\n        }), S.extend({\n            queue: function(e, t, n) {\n                var i;\n                return e ? (i = T.get(e, t = (t || \"fx\") + \"queue\"), n && (!i || S.isArray(n) ? i = T.access(e, t, S.makeArray(n)) : i.push(n)), i || []) : void 0\n            },\n            dequeue: function(e, t) {\n                t = t || \"fx\";\n                var n = S.queue(e, t),\n                    i = n.length,\n                    o = n.shift(),\n                    r = S._queueHooks(e, t);\n                \"inprogress\" === o && (o = n.shift(), i--), o && (\"fx\" === t && n.unshift(\"inprogress\"), delete r.stop, o.call(e, function() {\n                    S.dequeue(e, t)\n                }, r)), !i && r && r.empty.fire()\n            },\n            _queueHooks: function(e, t) {\n                var n = t + \"queueHooks\";\n                return T.get(e, n) || T.access(e, n, {\n                    empty: S.Callbacks(\"once memory\").add(function() {\n                        T.remove(e, [t + \"queue\", n])\n                    })\n                })\n            }\n        }), S.fn.extend({\n            queue: function(t, n) {\n                var e = 2;\n                return \"string\" != typeof t && (n = t, t = \"fx\", e--), arguments.length < e ? S.queue(this[0], t) : void 0 === n ? this : this.each(function() {\n                    var e = S.queue(this, t, n);\n                    S._queueHooks(this, t), \"fx\" === t && \"inprogress\" !== e[0] && S.dequeue(this, t)\n                })\n            },\n            dequeue: function(e) {\n                return this.each(function() {\n                    S.dequeue(this, e)\n                })\n            },\n            clearQueue: function(e) {\n                return this.queue(e || \"fx\", [])\n            },\n            promise: function(e, t) {\n                function n() {\n                    --o || r.resolveWith(a, [a])\n                }\n                var i, o = 1,\n                    r = S.Deferred(),\n                    a = this,\n                    s = this.length;\n                for (\"string\" != typeof e && (t = e, e = void 0), e = e || \"fx\"; s--;)(i = T.get(a[s], e + \"queueHooks\")) && i.empty && (o++, i.empty.add(n));\n                return n(), r.promise(t)\n            }\n        });\n\n        function b(e, t) {\n            return \"none\" === S.css(e = t || e, \"display\") || !S.contains(e.ownerDocument, e)\n        }\n        var t = /[+-]?(?:\\d*\\.|)\\d+(?:[eE][+-]?\\d+|)/.source,\n            d = [\"Top\", \"Right\", \"Bottom\", \"Left\"],\n            oe = /^(?:checkbox|radio)$/i,\n            y = (e = g.createDocumentFragment().appendChild(g.createElement(\"div\")), (N = g.createElement(\"input\")).setAttribute(\"type\", \"radio\"), N.setAttribute(\"checked\", \"checked\"), N.setAttribute(\"name\", \"t\"), e.appendChild(N), m.checkClone = e.cloneNode(!0).cloneNode(!0).lastChild.checked, e.innerHTML = \"<textarea>x</textarea>\", m.noCloneChecked = !!e.cloneNode(!0).lastChild.defaultValue, \"undefined\"),\n            re = (m.focusinBubbles = \"onfocusin\" in f, /^key/),\n            ae = /^(?:mouse|pointer|contextmenu)|click/,\n            se = /^(?:focusinfocus|focusoutblur)$/,\n            le = /^([^.]*)(?:\\.(.+)|)$/;\n\n        function h() {\n            return !0\n        }\n\n        function p() {\n            return !1\n        }\n\n        function ce() {\n            try {\n                return g.activeElement\n            } catch (e) {}\n        }\n        S.event = {\n            global: {},\n            add: function(t, e, n, i, o) {\n                var r, a, s, l, c, u, d, h, p, f = T.get(t);\n                if (f)\n                    for (n.handler && (n = (r = n).handler, o = r.selector), n.guid || (n.guid = S.guid++), s = (s = f.events) || (f.events = {}), a = (a = f.handle) || (f.handle = function(e) {\n                            return typeof S != y && S.event.triggered !== e.type ? S.event.dispatch.apply(t, arguments) : void 0\n                        }), l = (e = (e || \"\").match(w) || [\"\"]).length; l--;) d = p = (h = le.exec(e[l]) || [])[1], h = (h[2] || \"\").split(\".\").sort(), d && (c = S.event.special[d] || {}, d = (o ? c.delegateType : c.bindType) || d, c = S.event.special[d] || {}, p = S.extend({\n                        type: d,\n                        origType: p,\n                        data: i,\n                        handler: n,\n                        guid: n.guid,\n                        selector: o,\n                        needsContext: o && S.expr.match.needsContext.test(o),\n                        namespace: h.join(\".\")\n                    }, r), (u = s[d]) || ((u = s[d] = []).delegateCount = 0, c.setup && !1 !== c.setup.call(t, i, h, a)) || t.addEventListener && t.addEventListener(d, a, !1), c.add && (c.add.call(t, p), p.handler.guid || (p.handler.guid = n.guid)), o ? u.splice(u.delegateCount++, 0, p) : u.push(p), S.event.global[d] = !0)\n            },\n            remove: function(e, t, n, i, o) {\n                var r, a, s, l, c, u, d, h, p, f, m, g = T.hasData(e) && T.get(e);\n                if (g && (l = g.events)) {\n                    for (c = (t = (t || \"\").match(w) || [\"\"]).length; c--;)\n                        if (p = m = (s = le.exec(t[c]) || [])[1], f = (s[2] || \"\").split(\".\").sort(), p) {\n                            for (d = S.event.special[p] || {}, h = l[p = (i ? d.delegateType : d.bindType) || p] || [], s = s[2] && new RegExp(\"(^|\\\\.)\" + f.join(\"\\\\.(?:.*\\\\.|)\") + \"(\\\\.|$)\"), a = r = h.length; r--;) u = h[r], !o && m !== u.origType || n && n.guid !== u.guid || s && !s.test(u.namespace) || i && i !== u.selector && (\"**\" !== i || !u.selector) || (h.splice(r, 1), u.selector && h.delegateCount--, d.remove && d.remove.call(e, u));\n                            a && !h.length && (d.teardown && !1 !== d.teardown.call(e, f, g.handle) || S.removeEvent(e, p, g.handle), delete l[p])\n                        } else\n                            for (p in l) S.event.remove(e, p + t[c], n, i, !0);\n                    S.isEmptyObject(l) && (delete g.handle, T.remove(e, \"events\"))\n                }\n            },\n            trigger: function(e, t, n, i) {\n                var o, r, a, s, l, c, u = [n || g],\n                    d = F.call(e, \"type\") ? e.type : e,\n                    h = F.call(e, \"namespace\") ? e.namespace.split(\".\") : [],\n                    p = r = n = n || g;\n                if (3 !== n.nodeType && 8 !== n.nodeType && !se.test(d + S.event.triggered) && (0 <= d.indexOf(\".\") && (d = (h = d.split(\".\")).shift(), h.sort()), s = d.indexOf(\":\") < 0 && \"on\" + d, (e = e[S.expando] ? e : new S.Event(d, \"object\" == typeof e && e)).isTrigger = i ? 2 : 3, e.namespace = h.join(\".\"), e.namespace_re = e.namespace ? new RegExp(\"(^|\\\\.)\" + h.join(\"\\\\.(?:.*\\\\.|)\") + \"(\\\\.|$)\") : null, e.result = void 0, e.target || (e.target = n), t = null == t ? [e] : S.makeArray(t, [e]), c = S.event.special[d] || {}, i || !c.trigger || !1 !== c.trigger.apply(n, t))) {\n                    if (!i && !c.noBubble && !S.isWindow(n)) {\n                        for (a = c.delegateType || d, se.test(a + d) || (p = p.parentNode); p; p = p.parentNode) u.push(p), r = p;\n                        r === (n.ownerDocument || g) && u.push(r.defaultView || r.parentWindow || f)\n                    }\n                    for (o = 0;\n                        (p = u[o++]) && !e.isPropagationStopped();) e.type = 1 < o ? a : c.bindType || d, (l = (T.get(p, \"events\") || {})[e.type] && T.get(p, \"handle\")) && l.apply(p, t), (l = s && p[s]) && l.apply && S.acceptData(p) && (e.result = l.apply(p, t), !1 === e.result) && e.preventDefault();\n                    return e.type = d, i || e.isDefaultPrevented() || c._default && !1 !== c._default.apply(u.pop(), t) || !S.acceptData(n) || s && S.isFunction(n[d]) && !S.isWindow(n) && ((r = n[s]) && (n[s] = null), n[S.event.triggered = d](), S.event.triggered = void 0, r) && (n[s] = r), e.result\n                }\n            },\n            dispatch: function(e) {\n                e = S.event.fix(e);\n                var t, n, i, o, r, a = u.call(arguments),\n                    s = (T.get(this, \"events\") || {})[e.type] || [],\n                    l = S.event.special[e.type] || {};\n                if ((a[0] = e).delegateTarget = this, !l.preDispatch || !1 !== l.preDispatch.call(this, e)) {\n                    for (r = S.event.handlers.call(this, e, s), t = 0;\n                        (i = r[t++]) && !e.isPropagationStopped();)\n                        for (e.currentTarget = i.elem, n = 0;\n                            (o = i.handlers[n++]) && !e.isImmediatePropagationStopped();) e.namespace_re && !e.namespace_re.test(o.namespace) || (e.handleObj = o, e.data = o.data, void 0 === (o = ((S.event.special[o.origType] || {}).handle || o.handler).apply(i.elem, a))) || !1 !== (e.result = o) || (e.preventDefault(), e.stopPropagation());\n                    return l.postDispatch && l.postDispatch.call(this, e), e.result\n                }\n            },\n            handlers: function(e, t) {\n                var n, i, o, r, a = [],\n                    s = t.delegateCount,\n                    l = e.target;\n                if (s && l.nodeType && (!e.button || \"click\" !== e.type))\n                    for (; l !== this; l = l.parentNode || this)\n                        if (!0 !== l.disabled || \"click\" !== e.type) {\n                            for (i = [], n = 0; n < s; n++) void 0 === i[o = (r = t[n]).selector + \" \"] && (i[o] = r.needsContext ? 0 <= S(o, this).index(l) : S.find(o, this, null, [l]).length), i[o] && i.push(r);\n                            i.length && a.push({\n                                elem: l,\n                                handlers: i\n                            })\n                        } return s < t.length && a.push({\n                    elem: this,\n                    handlers: t.slice(s)\n                }), a\n            },\n            props: \"altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which\".split(\" \"),\n            fixHooks: {},\n            keyHooks: {\n                props: \"char charCode key keyCode\".split(\" \"),\n                filter: function(e, t) {\n                    return null == e.which && (e.which = null != t.charCode ? t.charCode : t.keyCode), e\n                }\n            },\n            mouseHooks: {\n                props: \"button buttons clientX clientY offsetX offsetY pageX pageY screenX screenY toElement\".split(\" \"),\n                filter: function(e, t) {\n                    var n, i, o = t.button;\n                    return null == e.pageX && null != t.clientX && (n = (i = e.target.ownerDocument || g).documentElement, i = i.body, e.pageX = t.clientX + (n && n.scrollLeft || i && i.scrollLeft || 0) - (n && n.clientLeft || i && i.clientLeft || 0), e.pageY = t.clientY + (n && n.scrollTop || i && i.scrollTop || 0) - (n && n.clientTop || i && i.clientTop || 0)), e.which || void 0 === o || (e.which = 1 & o ? 1 : 2 & o ? 3 : 4 & o ? 2 : 0), e\n                }\n            },\n            fix: function(e) {\n                if (e[S.expando]) return e;\n                var t, n, i, o = e.type,\n                    r = e,\n                    a = this.fixHooks[o];\n                for (a || (this.fixHooks[o] = a = ae.test(o) ? this.mouseHooks : re.test(o) ? this.keyHooks : {}), i = a.props ? this.props.concat(a.props) : this.props, e = new S.Event(r), t = i.length; t--;) e[n = i[t]] = r[n];\n                return e.target || (e.target = g), 3 === e.target.nodeType && (e.target = e.target.parentNode), a.filter ? a.filter(e, r) : e\n            },\n            special: {\n                load: {\n                    noBubble: !0\n                },\n                focus: {\n                    trigger: function() {\n                        return this !== ce() && this.focus ? (this.focus(), !1) : void 0\n                    },\n                    delegateType: \"focusin\"\n                },\n                blur: {\n                    trigger: function() {\n                        return this === ce() && this.blur ? (this.blur(), !1) : void 0\n                    },\n                    delegateType: \"focusout\"\n                },\n                click: {\n                    trigger: function() {\n                        return \"checkbox\" === this.type && this.click && S.nodeName(this, \"input\") ? (this.click(), !1) : void 0\n                    },\n                    _default: function(e) {\n                        return S.nodeName(e.target, \"a\")\n                    }\n                },\n                beforeunload: {\n                    postDispatch: function(e) {\n                        void 0 !== e.result && e.originalEvent && (e.originalEvent.returnValue = e.result)\n                    }\n                }\n            },\n            simulate: function(e, t, n, i) {\n                e = S.extend(new S.Event, n, {\n                    type: e,\n                    isSimulated: !0,\n                    originalEvent: {}\n                });\n                i ? S.event.trigger(e, null, t) : S.event.dispatch.call(t, e), e.isDefaultPrevented() && n.preventDefault()\n            }\n        }, S.removeEvent = function(e, t, n) {\n            e.removeEventListener && e.removeEventListener(t, n, !1)\n        }, S.Event = function(e, t) {\n            return this instanceof S.Event ? (e && e.type ? (this.originalEvent = e, this.type = e.type, this.isDefaultPrevented = e.defaultPrevented || void 0 === e.defaultPrevented && !1 === e.returnValue ? h : p) : this.type = e, t && S.extend(this, t), this.timeStamp = e && e.timeStamp || S.now(), void(this[S.expando] = !0)) : new S.Event(e, t)\n        }, S.Event.prototype = {\n            isDefaultPrevented: p,\n            isPropagationStopped: p,\n            isImmediatePropagationStopped: p,\n            preventDefault: function() {\n                var e = this.originalEvent;\n                this.isDefaultPrevented = h, e && e.preventDefault && e.preventDefault()\n            },\n            stopPropagation: function() {\n                var e = this.originalEvent;\n                this.isPropagationStopped = h, e && e.stopPropagation && e.stopPropagation()\n            },\n            stopImmediatePropagation: function() {\n                var e = this.originalEvent;\n                this.isImmediatePropagationStopped = h, e && e.stopImmediatePropagation && e.stopImmediatePropagation(), this.stopPropagation()\n            }\n        }, S.each({\n            mouseenter: \"mouseover\",\n            mouseleave: \"mouseout\",\n            pointerenter: \"pointerover\",\n            pointerleave: \"pointerout\"\n        }, function(e, o) {\n            S.event.special[e] = {\n                delegateType: o,\n                bindType: o,\n                handle: function(e) {\n                    var t, n = e.relatedTarget,\n                        i = e.handleObj;\n                    return n && (n === this || S.contains(this, n)) || (e.type = i.origType, t = i.handler.apply(this, arguments), e.type = o), t\n                }\n            }\n        }), m.focusinBubbles || S.each({\n            focus: \"focusin\",\n            blur: \"focusout\"\n        }, function(n, i) {\n            function o(e) {\n                S.event.simulate(i, e.target, S.event.fix(e), !0)\n            }\n            S.event.special[i] = {\n                setup: function() {\n                    var e = this.ownerDocument || this,\n                        t = T.access(e, i);\n                    t || e.addEventListener(n, o, !0), T.access(e, i, (t || 0) + 1)\n                },\n                teardown: function() {\n                    var e = this.ownerDocument || this,\n                        t = T.access(e, i) - 1;\n                    t ? T.access(e, i, t) : (e.removeEventListener(n, o, !0), T.remove(e, i))\n                }\n            }\n        }), S.fn.extend({\n            on: function(e, t, n, i, o) {\n                var r, a;\n                if (\"object\" == typeof e) {\n                    for (a in \"string\" != typeof t && (n = n || t, t = void 0), e) this.on(a, t, n, e[a], o);\n                    return this\n                }\n                if (null == n && null == i ? (i = t, n = t = void 0) : null == i && (\"string\" == typeof t ? (i = n, n = void 0) : (i = n, n = t, t = void 0)), !1 === i) i = p;\n                else if (!i) return this;\n                return 1 === o && (r = i, (i = function(e) {\n                    return S().off(e), r.apply(this, arguments)\n                }).guid = r.guid || (r.guid = S.guid++)), this.each(function() {\n                    S.event.add(this, e, i, n, t)\n                })\n            },\n            one: function(e, t, n, i) {\n                return this.on(e, t, n, i, 1)\n            },\n            off: function(e, t, n) {\n                var i, o;\n                if (e && e.preventDefault && e.handleObj) i = e.handleObj, S(e.delegateTarget).off(i.namespace ? i.origType + \".\" + i.namespace : i.origType, i.selector, i.handler);\n                else {\n                    if (\"object\" != typeof e) return !1 !== t && \"function\" != typeof t || (n = t, t = void 0), !1 === n && (n = p), this.each(function() {\n                        S.event.remove(this, e, n, t)\n                    });\n                    for (o in e) this.off(o, t, e[o])\n                }\n                return this\n            },\n            trigger: function(e, t) {\n                return this.each(function() {\n                    S.event.trigger(e, t, this)\n                })\n            },\n            triggerHandler: function(e, t) {\n                var n = this[0];\n                return n ? S.event.trigger(e, t, n, !0) : void 0\n            }\n        });\n        var ue = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\\w:]+)[^>]*)\\/>/gi,\n            de = /<([\\w:]+)/,\n            he = /<|&#?\\w+;/,\n            pe = /<(?:script|style|link)/i,\n            fe = /checked\\s*(?:[^=]|=\\s*.checked.)/i,\n            me = /^$|\\/(?:java|ecma)script/i,\n            ge = /^true\\/(.*)/,\n            Te = /^\\s*<!(?:\\[CDATA\\[|--)|(?:\\]\\]|--)>\\s*$/g,\n            v = {\n                option: [1, \"<select multiple='multiple'>\", \"</select>\"],\n                thead: [1, \"<table>\", \"</table>\"],\n                col: [2, \"<table><colgroup>\", \"</colgroup></table>\"],\n                tr: [2, \"<table><tbody>\", \"</tbody></table>\"],\n                td: [3, \"<table><tbody><tr>\", \"</tr></tbody></table>\"],\n                _default: [0, \"\", \"\"]\n            };\n\n        function be(e, t) {\n            return S.nodeName(e, \"table\") && S.nodeName(11 !== t.nodeType ? t : t.firstChild, \"tr\") ? e.getElementsByTagName(\"tbody\")[0] || e.appendChild(e.ownerDocument.createElement(\"tbody\")) : e\n        }\n\n        function ye(e) {\n            return e.type = (null !== e.getAttribute(\"type\")) + \"/\" + e.type, e\n        }\n\n        function ve(e) {\n            var t = ge.exec(e.type);\n            return t ? e.type = t[1] : e.removeAttribute(\"type\"), e\n        }\n\n        function Se(e, t) {\n            for (var n = 0, i = e.length; n < i; n++) T.set(e[n], \"globalEval\", !t || T.get(t[n], \"globalEval\"))\n        }\n\n        function we(e, t) {\n            var n, i, o, r, a, s;\n            if (1 === t.nodeType) {\n                if (T.hasData(e) && (r = T.access(e), a = T.set(t, r), s = r.events))\n                    for (o in delete a.handle, a.events = {}, s)\n                        for (n = 0, i = s[o].length; n < i; n++) S.event.add(t, o, s[o][n]);\n                c.hasData(e) && (r = c.access(e), a = S.extend({}, r), c.set(t, a))\n            }\n        }\n\n        function A(e, t) {\n            var n = e.getElementsByTagName ? e.getElementsByTagName(t || \"*\") : e.querySelectorAll ? e.querySelectorAll(t || \"*\") : [];\n            return void 0 === t || t && S.nodeName(e, t) ? S.merge([e], n) : n\n        }\n        v.optgroup = v.option, v.tbody = v.tfoot = v.colgroup = v.caption = v.thead, v.th = v.td, S.extend({\n            clone: function(e, t, n) {\n                var i, o, r, a, s, l, c, u = e.cloneNode(!0),\n                    d = S.contains(e.ownerDocument, e);\n                if (!(m.noCloneChecked || 1 !== e.nodeType && 11 !== e.nodeType || S.isXMLDoc(e)))\n                    for (a = A(u), i = 0, o = (r = A(e)).length; i < o; i++) s = r[i], l = a[i], c = void 0, \"input\" === (c = l.nodeName.toLowerCase()) && oe.test(s.type) ? l.checked = s.checked : \"input\" !== c && \"textarea\" !== c || (l.defaultValue = s.defaultValue);\n                if (t)\n                    if (n)\n                        for (r = r || A(e), a = a || A(u), i = 0, o = r.length; i < o; i++) we(r[i], a[i]);\n                    else we(e, u);\n                return 0 < (a = A(u, \"script\")).length && Se(a, !d && A(e, \"script\")), u\n            },\n            buildFragment: function(e, t, n, i) {\n                for (var o, r, a, s, l, c = t.createDocumentFragment(), u = [], d = 0, h = e.length; d < h; d++)\n                    if ((o = e[d]) || 0 === o)\n                        if (\"object\" === S.type(o)) S.merge(u, o.nodeType ? [o] : o);\n                        else if (he.test(o)) {\n                    for (r = r || c.appendChild(t.createElement(\"div\")), a = (de.exec(o) || [\"\", \"\"])[1].toLowerCase(), r.innerHTML = (a = v[a] || v._default)[1] + o.replace(ue, \"<$1></$2>\") + a[2], l = a[0]; l--;) r = r.lastChild;\n                    S.merge(u, r.childNodes), (r = c.firstChild).textContent = \"\"\n                } else u.push(t.createTextNode(o));\n                for (c.textContent = \"\", d = 0; o = u[d++];)\n                    if ((!i || -1 === S.inArray(o, i)) && (s = S.contains(o.ownerDocument, o), r = A(c.appendChild(o), \"script\"), s && Se(r), n))\n                        for (l = 0; o = r[l++];) me.test(o.type || \"\") && n.push(o);\n                return c\n            },\n            cleanData: function(e) {\n                for (var t, n, i, o, r = S.event.special, a = 0; void 0 !== (n = e[a]); a++) {\n                    if (S.acceptData(n) && (o = n[T.expando]) && (t = T.cache[o])) {\n                        if (t.events)\n                            for (i in t.events) r[i] ? S.event.remove(n, i) : S.removeEvent(n, i, t.handle);\n                        T.cache[o] && delete T.cache[o]\n                    }\n                    delete c.cache[n[c.expando]]\n                }\n            }\n        }), S.fn.extend({\n            text: function(e) {\n                return s(this, function(e) {\n                    return void 0 === e ? S.text(this) : this.empty().each(function() {\n                        1 !== this.nodeType && 11 !== this.nodeType && 9 !== this.nodeType || (this.textContent = e)\n                    })\n                }, null, e, arguments.length)\n            },\n            append: function() {\n                return this.domManip(arguments, function(e) {\n                    1 !== this.nodeType && 11 !== this.nodeType && 9 !== this.nodeType || be(this, e).appendChild(e)\n                })\n            },\n            prepend: function() {\n                return this.domManip(arguments, function(e) {\n                    var t;\n                    1 !== this.nodeType && 11 !== this.nodeType && 9 !== this.nodeType || (t = be(this, e)).insertBefore(e, t.firstChild)\n                })\n            },\n            before: function() {\n                return this.domManip(arguments, function(e) {\n                    this.parentNode && this.parentNode.insertBefore(e, this)\n                })\n            },\n            after: function() {\n                return this.domManip(arguments, function(e) {\n                    this.parentNode && this.parentNode.insertBefore(e, this.nextSibling)\n                })\n            },\n            remove: function(e, t) {\n                for (var n, i = e ? S.filter(e, this) : this, o = 0; null != (n = i[o]); o++) t || 1 !== n.nodeType || S.cleanData(A(n)), n.parentNode && (t && S.contains(n.ownerDocument, n) && Se(A(n, \"script\")), n.parentNode.removeChild(n));\n                return this\n            },\n            empty: function() {\n                for (var e, t = 0; null != (e = this[t]); t++) 1 === e.nodeType && (S.cleanData(A(e, !1)), e.textContent = \"\");\n                return this\n            },\n            clone: function(e, t) {\n                return e = null != e && e, t = null == t ? e : t, this.map(function() {\n                    return S.clone(this, e, t)\n                })\n            },\n            html: function(e) {\n                return s(this, function(e) {\n                    var t = this[0] || {},\n                        n = 0,\n                        i = this.length;\n                    if (void 0 === e && 1 === t.nodeType) return t.innerHTML;\n                    if (\"string\" == typeof e && !pe.test(e) && !v[(de.exec(e) || [\"\", \"\"])[1].toLowerCase()]) {\n                        e = e.replace(ue, \"<$1></$2>\");\n                        try {\n                            for (; n < i; n++) 1 === (t = this[n] || {}).nodeType && (S.cleanData(A(t, !1)), t.innerHTML = e);\n                            t = 0\n                        } catch (e) {}\n                    }\n                    t && this.empty().append(e)\n                }, null, e, arguments.length)\n            },\n            replaceWith: function() {\n                var t = arguments[0];\n                return this.domManip(arguments, function(e) {\n                    t = this.parentNode, S.cleanData(A(this)), t && t.replaceChild(e, this)\n                }), t && (t.length || t.nodeType) ? this : this.remove()\n            },\n            detach: function(e) {\n                return this.remove(e, !0)\n            },\n            domManip: function(n, i) {\n                n = V.apply([], n);\n                var e, t, o, r, a, s, l = 0,\n                    c = this.length,\n                    u = this,\n                    d = c - 1,\n                    h = n[0],\n                    p = S.isFunction(h);\n                if (p || 1 < c && \"string\" == typeof h && !m.checkClone && fe.test(h)) return this.each(function(e) {\n                    var t = u.eq(e);\n                    p && (n[0] = h.call(this, e, t.html())), t.domManip(n, i)\n                });\n                if (c && (t = (e = S.buildFragment(n, this[0].ownerDocument, !1, this)).firstChild, 1 === e.childNodes.length && (e = t), t)) {\n                    for (r = (o = S.map(A(e, \"script\"), ye)).length; l < c; l++) a = e, l !== d && (a = S.clone(a, !0, !0), r) && S.merge(o, A(a, \"script\")), i.call(this[l], a, l);\n                    if (r)\n                        for (s = o[o.length - 1].ownerDocument, S.map(o, ve), l = 0; l < r; l++) a = o[l], me.test(a.type || \"\") && !T.access(a, \"globalEval\") && S.contains(s, a) && (a.src ? S._evalUrl && S._evalUrl(a.src) : S.globalEval(a.textContent.replace(Te, \"\")))\n                }\n                return this\n            }\n        }), S.each({\n            appendTo: \"append\",\n            prependTo: \"prepend\",\n            insertBefore: \"before\",\n            insertAfter: \"after\",\n            replaceAll: \"replaceWith\"\n        }, function(e, a) {\n            S.fn[e] = function(e) {\n                for (var t, n = [], i = S(e), o = i.length - 1, r = 0; r <= o; r++) t = r === o ? this : this.clone(!0), S(i[r])[a](t), O.apply(n, t.get());\n                return this.pushStack(n)\n            }\n        });\n        var Ae, Pe = {};\n\n        function Me(e, t) {\n            e = S(t.createElement(e)).appendTo(t.body), t = f.getDefaultComputedStyle && (t = f.getDefaultComputedStyle(e[0])) ? t.display : S.css(e[0], \"display\");\n            return e.detach(), t\n        }\n\n        function Ce(e) {\n            var t = g,\n                n = Pe[e];\n            return n || (\"none\" !== (n = Me(e, t)) && n || ((t = (Ae = (Ae || S(\"<iframe frameborder='0' width='0' height='0'/>\")).appendTo(t.documentElement))[0].contentDocument).write(), t.close(), n = Me(e, t), Ae.detach()), Pe[e] = n), n\n        }\n\n        function xe(e) {\n            return e.ownerDocument.defaultView.getComputedStyle(e, null)\n        }\n        var He, Ge, P, M, C, Ne = /^margin/,\n            Ee = new RegExp(\"^(\" + t + \")(?!px)[a-z%]+$\", \"i\");\n\n        function x(e, t, n) {\n            var i, o, r = e.style;\n            return (n = n || xe(e)) && (o = n.getPropertyValue(t) || n[t]), n && (\"\" !== o || S.contains(e.ownerDocument, e) || (o = S.style(e, t)), Ee.test(o)) && Ne.test(t) && (e = r.width, t = r.minWidth, i = r.maxWidth, r.minWidth = r.maxWidth = r.width = o, o = n.width, r.width = e, r.minWidth = t, r.maxWidth = i), void 0 !== o ? o + \"\" : o\n        }\n\n        function Be(e, t) {\n            return {\n                get: function() {\n                    return e() ? void delete this.get : (this.get = t).apply(this, arguments)\n                }\n            }\n        }\n\n        function ke() {\n            C.style.cssText = \"-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;display:block;margin-top:1%;top:1%;border:1px;padding:1px;width:4px;position:absolute\", C.innerHTML = \"\", P.appendChild(M);\n            var e = f.getComputedStyle(C, null);\n            He = \"1%\" !== e.top, Ge = \"4px\" === e.width, P.removeChild(M)\n        }\n        P = g.documentElement, M = g.createElement(\"div\"), (C = g.createElement(\"div\")).style && (C.style.backgroundClip = \"content-box\", C.cloneNode(!0).style.backgroundClip = \"\", m.clearCloneStyle = \"content-box\" === C.style.backgroundClip, M.style.cssText = \"border:0;width:0;height:0;top:0;left:-9999px;margin-top:1px;position:absolute\", M.appendChild(C), f.getComputedStyle) && S.extend(m, {\n            pixelPosition: function() {\n                return ke(), He\n            },\n            boxSizingReliable: function() {\n                return null == Ge && ke(), Ge\n            },\n            reliableMarginRight: function() {\n                var e = C.appendChild(g.createElement(\"div\"));\n                return e.style.cssText = C.style.cssText = \"-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:0\", e.style.marginRight = e.style.width = \"0\", C.style.width = \"1px\", P.appendChild(M), e = !parseFloat(f.getComputedStyle(e, null).marginRight), P.removeChild(M), e\n            }\n        }), S.swap = function(e, t, n, i) {\n            var o, r = {};\n            for (o in t) r[o] = e.style[o], e.style[o] = t[o];\n            for (o in n = n.apply(e, i || []), t) e.style[o] = r[o];\n            return n\n        };\n        var De = /^(none|table(?!-c[ea]).+)/,\n            Ie = new RegExp(\"^(\" + t + \")(.*)$\", \"i\"),\n            Le = new RegExp(\"^([+-])=(\" + t + \")\", \"i\"),\n            _e = {\n                position: \"absolute\",\n                visibility: \"hidden\",\n                display: \"block\"\n            },\n            Ve = {\n                letterSpacing: \"0\",\n                fontWeight: \"400\"\n            },\n            Oe = [\"Webkit\", \"O\", \"Moz\", \"ms\"];\n\n        function $e(e, t) {\n            if (t in e) return t;\n            for (var n = t[0].toUpperCase() + t.slice(1), i = t, o = Oe.length; o--;)\n                if ((t = Oe[o] + n) in e) return t;\n            return i\n        }\n\n        function Fe(e, t, n) {\n            var i = Ie.exec(t);\n            return i ? Math.max(0, i[1] - (n || 0)) + (i[2] || \"px\") : t\n        }\n\n        function Re(e, t, n, i, o) {\n            for (var r = n === (i ? \"border\" : \"content\") ? 4 : \"width\" === t ? 1 : 0, a = 0; r < 4; r += 2) \"margin\" === n && (a += S.css(e, n + d[r], !0, o)), i ? (\"content\" === n && (a -= S.css(e, \"padding\" + d[r], !0, o)), \"margin\" !== n && (a -= S.css(e, \"border\" + d[r] + \"Width\", !0, o))) : (a += S.css(e, \"padding\" + d[r], !0, o), \"padding\" !== n && (a += S.css(e, \"border\" + d[r] + \"Width\", !0, o)));\n            return a\n        }\n\n        function je(e, t, n) {\n            var i = !0,\n                o = \"width\" === t ? e.offsetWidth : e.offsetHeight,\n                r = xe(e),\n                a = \"border-box\" === S.css(e, \"boxSizing\", !1, r);\n            if (o <= 0 || null == o) {\n                if (((o = x(e, t, r)) < 0 || null == o) && (o = e.style[t]), Ee.test(o)) return o;\n                i = a && (m.boxSizingReliable() || o === e.style[t]), o = parseFloat(o) || 0\n            }\n            return o + Re(e, t, n || (a ? \"border\" : \"content\"), i, r) + \"px\"\n        }\n\n        function Xe(e, t) {\n            for (var n, i, o, r = [], a = 0, s = e.length; a < s; a++)(i = e[a]).style && (r[a] = T.get(i, \"olddisplay\"), n = i.style.display, t ? (r[a] || \"none\" !== n || (i.style.display = \"\"), \"\" === i.style.display && b(i) && (r[a] = T.access(i, \"olddisplay\", Ce(i.nodeName)))) : (o = b(i), \"none\" === n && o || T.set(i, \"olddisplay\", o ? n : S.css(i, \"display\"))));\n            for (a = 0; a < s; a++) !(i = e[a]).style || t && \"none\" !== i.style.display && \"\" !== i.style.display || (i.style.display = t ? r[a] || \"\" : \"none\");\n            return e\n        }\n\n        function H(e, t, n, i, o) {\n            return new H.prototype.init(e, t, n, i, o)\n        }\n        S.extend({\n            cssHooks: {\n                opacity: {\n                    get: function(e, t) {\n                        if (t) return \"\" === (t = x(e, \"opacity\")) ? \"1\" : t\n                    }\n                }\n            },\n            cssNumber: {\n                columnCount: !0,\n                fillOpacity: !0,\n                flexGrow: !0,\n                flexShrink: !0,\n                fontWeight: !0,\n                lineHeight: !0,\n                opacity: !0,\n                order: !0,\n                orphans: !0,\n                widows: !0,\n                zIndex: !0,\n                zoom: !0\n            },\n            cssProps: {\n                float: \"cssFloat\"\n            },\n            style: function(e, t, n, i) {\n                var o, r, a, s, l;\n                if (e && 3 !== e.nodeType && 8 !== e.nodeType && e.style) return s = S.camelCase(t), l = e.style, t = S.cssProps[s] || (S.cssProps[s] = $e(l, s)), a = S.cssHooks[t] || S.cssHooks[s], void 0 === n ? a && \"get\" in a && void 0 !== (o = a.get(e, !1, i)) ? o : l[t] : (\"string\" === (r = typeof n) && (o = Le.exec(n)) && (n = (o[1] + 1) * o[2] + parseFloat(S.css(e, t)), r = \"number\"), void(null != n && n == n && (\"number\" !== r || S.cssNumber[s] || (n += \"px\"), m.clearCloneStyle || \"\" !== n || 0 !== t.indexOf(\"background\") || (l[t] = \"inherit\"), a && \"set\" in a && void 0 === (n = a.set(e, n, i)) || (l[t] = n))))\n            },\n            css: function(e, t, n, i) {\n                var o, r = S.camelCase(t);\n                return t = S.cssProps[r] || (S.cssProps[r] = $e(e.style, r)), \"normal\" === (o = void 0 === (o = (r = S.cssHooks[t] || S.cssHooks[r]) && \"get\" in r ? r.get(e, !0, n) : o) ? x(e, t, i) : o) && t in Ve && (o = Ve[t]), (\"\" === n || n) && (r = parseFloat(o), !0 === n || S.isNumeric(r)) ? r || 0 : o\n            }\n        }), S.each([\"height\", \"width\"], function(e, o) {\n            S.cssHooks[o] = {\n                get: function(e, t, n) {\n                    return t ? De.test(S.css(e, \"display\")) && 0 === e.offsetWidth ? S.swap(e, _e, function() {\n                        return je(e, o, n)\n                    }) : je(e, o, n) : void 0\n                },\n                set: function(e, t, n) {\n                    var i = n && xe(e);\n                    return Fe(0, t, n ? Re(e, o, n, \"border-box\" === S.css(e, \"boxSizing\", !1, i), i) : 0)\n                }\n            }\n        }), S.cssHooks.marginRight = Be(m.reliableMarginRight, function(e, t) {\n            return t ? S.swap(e, {\n                display: \"inline-block\"\n            }, x, [e, \"marginRight\"]) : void 0\n        }), S.each({\n            margin: \"\",\n            padding: \"\",\n            border: \"Width\"\n        }, function(o, r) {\n            S.cssHooks[o + r] = {\n                expand: function(e) {\n                    for (var t = 0, n = {}, i = \"string\" == typeof e ? e.split(\" \") : [e]; t < 4; t++) n[o + d[t] + r] = i[t] || i[t - 2] || i[0];\n                    return n\n                }\n            }, Ne.test(o) || (S.cssHooks[o + r].set = Fe)\n        }), S.fn.extend({\n            css: function(e, t) {\n                return s(this, function(e, t, n) {\n                    var i, o, r = {},\n                        a = 0;\n                    if (S.isArray(t)) {\n                        for (i = xe(e), o = t.length; a < o; a++) r[t[a]] = S.css(e, t[a], !1, i);\n                        return r\n                    }\n                    return void 0 !== n ? S.style(e, t, n) : S.css(e, t)\n                }, e, t, 1 < arguments.length)\n            },\n            show: function() {\n                return Xe(this, !0)\n            },\n            hide: function() {\n                return Xe(this)\n            },\n            toggle: function(e) {\n                return \"boolean\" == typeof e ? e ? this.show() : this.hide() : this.each(function() {\n                    b(this) ? S(this).show() : S(this).hide()\n                })\n            }\n        }), ((S.Tween = H).prototype = {\n            constructor: H,\n            init: function(e, t, n, i, o, r) {\n                this.elem = e, this.prop = n, this.easing = o || \"swing\", this.options = t, this.start = this.now = this.cur(), this.end = i, this.unit = r || (S.cssNumber[n] ? \"\" : \"px\")\n            },\n            cur: function() {\n                var e = H.propHooks[this.prop];\n                return (e && e.get ? e : H.propHooks._default).get(this)\n            },\n            run: function(e) {\n                var t = H.propHooks[this.prop];\n                return this.pos = e = this.options.duration ? S.easing[this.easing](e, this.options.duration * e, 0, 1, this.options.duration) : e, this.now = (this.end - this.start) * e + this.start, this.options.step && this.options.step.call(this.elem, this.now, this), (t && t.set ? t : H.propHooks._default).set(this), this\n            }\n        }).init.prototype = H.prototype, (H.propHooks = {\n            _default: {\n                get: function(e) {\n                    var t;\n                    return null == e.elem[e.prop] || e.elem.style && null != e.elem.style[e.prop] ? (t = S.css(e.elem, e.prop, \"\")) && \"auto\" !== t ? t : 0 : e.elem[e.prop]\n                },\n                set: function(e) {\n                    S.fx.step[e.prop] ? S.fx.step[e.prop](e) : e.elem.style && (null != e.elem.style[S.cssProps[e.prop]] || S.cssHooks[e.prop]) ? S.style(e.elem, e.prop, e.now + e.unit) : e.elem[e.prop] = e.now\n                }\n            }\n        }).scrollTop = H.propHooks.scrollLeft = {\n            set: function(e) {\n                e.elem.nodeType && e.elem.parentNode && (e.elem[e.prop] = e.now)\n            }\n        }, S.easing = {\n            linear: function(e) {\n                return e\n            },\n            swing: function(e) {\n                return .5 - Math.cos(e * Math.PI) / 2\n            }\n        }, S.fx = H.prototype.init, S.fx.step = {};\n        var G, We, N, Ue = /^(?:toggle|show|hide)$/,\n            Ke = new RegExp(\"^(?:([+-])=|)(\" + t + \")([a-z%]*)$\", \"i\"),\n            Qe = /queueHooks$/,\n            qe = [function(t, e, n) {\n                var i, o, r, a, s, l, c, u = this,\n                    d = {},\n                    h = t.style,\n                    p = t.nodeType && b(t),\n                    f = T.get(t, \"fxshow\");\n                for (i in n.queue || (null == (s = S._queueHooks(t, \"fx\")).unqueued && (s.unqueued = 0, l = s.empty.fire, s.empty.fire = function() {\n                        s.unqueued || l()\n                    }), s.unqueued++, u.always(function() {\n                        u.always(function() {\n                            s.unqueued--, S.queue(t, \"fx\").length || s.empty.fire()\n                        })\n                    })), 1 === t.nodeType && (\"height\" in e || \"width\" in e) && (n.overflow = [h.overflow, h.overflowX, h.overflowY], c = S.css(t, \"display\"), \"inline\" === (\"none\" === c ? T.get(t, \"olddisplay\") || Ce(t.nodeName) : c)) && \"none\" === S.css(t, \"float\") && (h.display = \"inline-block\"), n.overflow && (h.overflow = \"hidden\", u.always(function() {\n                        h.overflow = n.overflow[0], h.overflowX = n.overflow[1], h.overflowY = n.overflow[2]\n                    })), e)\n                    if (o = e[i], Ue.exec(o)) {\n                        if (delete e[i], r = r || \"toggle\" === o, o === (p ? \"hide\" : \"show\")) {\n                            if (\"show\" !== o || !f || void 0 === f[i]) continue;\n                            p = !0\n                        }\n                        d[i] = f && f[i] || S.style(t, i)\n                    } else c = void 0;\n                if (S.isEmptyObject(d)) \"inline\" === (\"none\" === c ? Ce(t.nodeName) : c) && (h.display = c);\n                else\n                    for (i in f ? \"hidden\" in f && (p = f.hidden) : f = T.access(t, \"fxshow\", {}), r && (f.hidden = !p), p ? S(t).show() : u.done(function() {\n                            S(t).hide()\n                        }), u.done(function() {\n                            for (var e in T.remove(t, \"fxshow\"), d) S.style(t, e, d[e])\n                        }), d) a = Je(p ? f[i] : 0, i, u), i in f || (f[i] = a.start, p && (a.end = a.start, a.start = \"width\" === i || \"height\" === i ? 1 : 0))\n            }],\n            E = {\n                \"*\": [function(e, t) {\n                    var n = this.createTween(e, t),\n                        i = n.cur(),\n                        t = Ke.exec(t),\n                        o = t && t[3] || (S.cssNumber[e] ? \"\" : \"px\"),\n                        r = (S.cssNumber[e] || \"px\" !== o && +i) && Ke.exec(S.css(n.elem, e)),\n                        a = 1,\n                        s = 20;\n                    if (r && r[3] !== o)\n                        for (o = o || r[3], t = t || [], r = +i || 1; S.style(n.elem, e, (r /= a = a || \".5\") + o), a !== (a = n.cur() / i) && 1 !== a && --s;);\n                    return t && (r = n.start = +r || +i || 0, n.unit = o, n.end = t[1] ? r + (t[1] + 1) * t[2] : +t[2]), n\n                }]\n            };\n\n        function ze() {\n            return setTimeout(function() {\n                G = void 0\n            }), G = S.now()\n        }\n\n        function Ye(e, t) {\n            var n, i = 0,\n                o = {\n                    height: e\n                };\n            for (t = t ? 1 : 0; i < 4; i += 2 - t) o[\"margin\" + (n = d[i])] = o[\"padding\" + n] = e;\n            return t && (o.opacity = o.width = e), o\n        }\n\n        function Je(e, t, n) {\n            for (var i, o = (E[t] || []).concat(E[\"*\"]), r = 0, a = o.length; r < a; r++)\n                if (i = o[r].call(n, t, e)) return i\n        }\n\n        function Ze(o, e, t) {\n            var n, r, i, a, s, l, c, u = 0,\n                d = qe.length,\n                h = S.Deferred().always(function() {\n                    delete p.elem\n                }),\n                p = function() {\n                    if (r) return !1;\n                    for (var e = G || ze(), e = Math.max(0, f.startTime + f.duration - e), t = 1 - (e / f.duration || 0), n = 0, i = f.tweens.length; n < i; n++) f.tweens[n].run(t);\n                    return h.notifyWith(o, [f, t, e]), t < 1 && i ? e : (h.resolveWith(o, [f]), !1)\n                },\n                f = h.promise({\n                    elem: o,\n                    props: S.extend({}, e),\n                    opts: S.extend(!0, {\n                        specialEasing: {}\n                    }, t),\n                    originalProperties: e,\n                    originalOptions: t,\n                    startTime: G || ze(),\n                    duration: t.duration,\n                    tweens: [],\n                    createTween: function(e, t) {\n                        t = S.Tween(o, f.opts, e, t, f.opts.specialEasing[e] || f.opts.easing);\n                        return f.tweens.push(t), t\n                    },\n                    stop: function(e) {\n                        var t = 0,\n                            n = e ? f.tweens.length : 0;\n                        if (!r) {\n                            for (r = !0; t < n; t++) f.tweens[t].run(1);\n                            e ? h.resolveWith(o, [f, e]) : h.rejectWith(o, [f, e])\n                        }\n                        return this\n                    }\n                }),\n                m = f.props,\n                g = m,\n                T = f.opts.specialEasing;\n            for (i in g)\n                if (a = S.camelCase(i), s = T[a], l = g[i], S.isArray(l) && (s = l[1], l = g[i] = l[0]), i !== a && (g[a] = l, delete g[i]), c = S.cssHooks[a], c && \"expand\" in c)\n                    for (i in l = c.expand(l), delete g[a], l) i in g || (g[i] = l[i], T[i] = s);\n                else T[a] = s;\n            for (; u < d; u++)\n                if (n = qe[u].call(f, o, m, f.opts)) return n;\n            return S.map(m, Je, f), S.isFunction(f.opts.start) && f.opts.start.call(o, f), S.fx.timer(S.extend(p, {\n                elem: o,\n                anim: f,\n                queue: f.opts.queue\n            })), f.progress(f.opts.progress).done(f.opts.done, f.opts.complete).fail(f.opts.fail).always(f.opts.always)\n        }\n        S.Animation = S.extend(Ze, {\n            tweener: function(e, t) {\n                for (var n, i = 0, o = (e = S.isFunction(e) ? (t = e, [\"*\"]) : e.split(\" \")).length; i < o; i++) n = e[i], E[n] = E[n] || [], E[n].unshift(t)\n            },\n            prefilter: function(e, t) {\n                t ? qe.unshift(e) : qe.push(e)\n            }\n        }), S.speed = function(e, t, n) {\n            var i = e && \"object\" == typeof e ? S.extend({}, e) : {\n                complete: n || !n && t || S.isFunction(e) && e,\n                duration: e,\n                easing: n && t || t && !S.isFunction(t) && t\n            };\n            return i.duration = S.fx.off ? 0 : \"number\" == typeof i.duration ? i.duration : i.duration in S.fx.speeds ? S.fx.speeds[i.duration] : S.fx.speeds._default, null != i.queue && !0 !== i.queue || (i.queue = \"fx\"), i.old = i.complete, i.complete = function() {\n                S.isFunction(i.old) && i.old.call(this), i.queue && S.dequeue(this, i.queue)\n            }, i\n        }, S.fn.extend({\n            fadeTo: function(e, t, n, i) {\n                return this.filter(b).css(\"opacity\", 0).show().end().animate({\n                    opacity: t\n                }, e, n, i)\n            },\n            animate: function(t, e, n, i) {\n                function o() {\n                    var e = Ze(this, S.extend({}, t), a);\n                    (r || T.get(this, \"finish\")) && e.stop(!0)\n                }\n                var r = S.isEmptyObject(t),\n                    a = S.speed(e, n, i);\n                return o.finish = o, r || !1 === a.queue ? this.each(o) : this.queue(a.queue, o)\n            },\n            stop: function(o, e, r) {\n                function a(e) {\n                    var t = e.stop;\n                    delete e.stop, t(r)\n                }\n                return \"string\" != typeof o && (r = e, e = o, o = void 0), e && !1 !== o && this.queue(o || \"fx\", []), this.each(function() {\n                    var e = !0,\n                        t = null != o && o + \"queueHooks\",\n                        n = S.timers,\n                        i = T.get(this);\n                    if (t) i[t] && i[t].stop && a(i[t]);\n                    else\n                        for (t in i) i[t] && i[t].stop && Qe.test(t) && a(i[t]);\n                    for (t = n.length; t--;) n[t].elem !== this || null != o && n[t].queue !== o || (n[t].anim.stop(r), e = !1, n.splice(t, 1));\n                    !e && r || S.dequeue(this, o)\n                })\n            },\n            finish: function(a) {\n                return !1 !== a && (a = a || \"fx\"), this.each(function() {\n                    var e, t = T.get(this),\n                        n = t[a + \"queue\"],\n                        i = t[a + \"queueHooks\"],\n                        o = S.timers,\n                        r = n ? n.length : 0;\n                    for (t.finish = !0, S.queue(this, a, []), i && i.stop && i.stop.call(this, !0), e = o.length; e--;) o[e].elem === this && o[e].queue === a && (o[e].anim.stop(!0), o.splice(e, 1));\n                    for (e = 0; e < r; e++) n[e] && n[e].finish && n[e].finish.call(this);\n                    delete t.finish\n                })\n            }\n        }), S.each([\"toggle\", \"show\", \"hide\"], function(e, i) {\n            var o = S.fn[i];\n            S.fn[i] = function(e, t, n) {\n                return null == e || \"boolean\" == typeof e ? o.apply(this, arguments) : this.animate(Ye(i, !0), e, t, n)\n            }\n        }), S.each({\n            slideDown: Ye(\"show\"),\n            slideUp: Ye(\"hide\"),\n            slideToggle: Ye(\"toggle\"),\n            fadeIn: {\n                opacity: \"show\"\n            },\n            fadeOut: {\n                opacity: \"hide\"\n            },\n            fadeToggle: {\n                opacity: \"toggle\"\n            }\n        }, function(e, i) {\n            S.fn[e] = function(e, t, n) {\n                return this.animate(i, e, t, n)\n            }\n        }), S.timers = [], S.fx.tick = function() {\n            var e, t = 0,\n                n = S.timers;\n            for (G = S.now(); t < n.length; t++)(e = n[t])() || n[t] !== e || n.splice(t--, 1);\n            n.length || S.fx.stop(), G = void 0\n        }, S.fx.timer = function(e) {\n            S.timers.push(e), e() ? S.fx.start() : S.timers.pop()\n        }, S.fx.interval = 13, S.fx.start = function() {\n            We = We || setInterval(S.fx.tick, S.fx.interval)\n        }, S.fx.stop = function() {\n            clearInterval(We), We = null\n        }, S.fx.speeds = {\n            slow: 600,\n            fast: 200,\n            _default: 400\n        }, S.fn.delay = function(i, e) {\n            return i = S.fx && S.fx.speeds[i] || i, this.queue(e = e || \"fx\", function(e, t) {\n                var n = setTimeout(e, i);\n                t.stop = function() {\n                    clearTimeout(n)\n                }\n            })\n        }, N = g.createElement(\"input\"), e = g.createElement(\"select\"), t = e.appendChild(g.createElement(\"option\")), N.type = \"checkbox\", m.checkOn = \"\" !== N.value, m.optSelected = t.selected, e.disabled = !0, m.optDisabled = !t.disabled, (N = g.createElement(\"input\")).value = \"t\", N.type = \"radio\", m.radioValue = \"t\" === N.value;\n        var et, B = S.expr.attrHandle,\n            tt = (S.fn.extend({\n                attr: function(e, t) {\n                    return s(this, S.attr, e, t, 1 < arguments.length)\n                },\n                removeAttr: function(e) {\n                    return this.each(function() {\n                        S.removeAttr(this, e)\n                    })\n                }\n            }), S.extend({\n                attr: function(e, t, n) {\n                    var i, o, r = e.nodeType;\n                    if (e && 3 !== r && 8 !== r && 2 !== r) return typeof e.getAttribute == y ? S.prop(e, t, n) : (1 === r && S.isXMLDoc(e) || (t = t.toLowerCase(), i = S.attrHooks[t] || (S.expr.match.bool.test(t) ? et : void 0)), void 0 === n ? !(i && \"get\" in i && null !== (o = i.get(e, t))) && null == (o = S.find.attr(e, t)) ? void 0 : o : null !== n ? i && \"set\" in i && void 0 !== (o = i.set(e, n, t)) ? o : (e.setAttribute(t, n + \"\"), n) : void S.removeAttr(e, t))\n                },\n                removeAttr: function(e, t) {\n                    var n, i, o = 0,\n                        r = t && t.match(w);\n                    if (r && 1 === e.nodeType)\n                        for (; n = r[o++];) i = S.propFix[n] || n, S.expr.match.bool.test(n) && (e[i] = !1), e.removeAttribute(n)\n                },\n                attrHooks: {\n                    type: {\n                        set: function(e, t) {\n                            var n;\n                            if (!m.radioValue && \"radio\" === t && S.nodeName(e, \"input\")) return n = e.value, e.setAttribute(\"type\", t), n && (e.value = n), t\n                        }\n                    }\n                }\n            }), et = {\n                set: function(e, t, n) {\n                    return !1 === t ? S.removeAttr(e, n) : e.setAttribute(n, n), n\n                }\n            }, S.each(S.expr.match.bool.source.match(/\\w+/g), function(e, t) {\n                var r = B[t] || S.find.attr;\n                B[t] = function(e, t, n) {\n                    var i, o;\n                    return n || (o = B[t], B[t] = i, i = null != r(e, t, n) ? t.toLowerCase() : null, B[t] = o), i\n                }\n            }), /^(?:input|select|textarea|button)$/i),\n            nt = (S.fn.extend({\n                prop: function(e, t) {\n                    return s(this, S.prop, e, t, 1 < arguments.length)\n                },\n                removeProp: function(e) {\n                    return this.each(function() {\n                        delete this[S.propFix[e] || e]\n                    })\n                }\n            }), S.extend({\n                propFix: {\n                    for: \"htmlFor\",\n                    class: \"className\"\n                },\n                prop: function(e, t, n) {\n                    var i, o, r = e.nodeType;\n                    if (e && 3 !== r && 8 !== r && 2 !== r) return (1 !== r || !S.isXMLDoc(e)) && (t = S.propFix[t] || t, o = S.propHooks[t]), void 0 !== n ? o && \"set\" in o && void 0 !== (i = o.set(e, n, t)) ? i : e[t] = n : o && \"get\" in o && null !== (i = o.get(e, t)) ? i : e[t]\n                },\n                propHooks: {\n                    tabIndex: {\n                        get: function(e) {\n                            return e.hasAttribute(\"tabindex\") || tt.test(e.nodeName) || e.href ? e.tabIndex : -1\n                        }\n                    }\n                }\n            }), m.optSelected || (S.propHooks.selected = {\n                get: function(e) {\n                    e = e.parentNode;\n                    return e && e.parentNode && e.parentNode.selectedIndex, null\n                }\n            }), S.each([\"tabIndex\", \"readOnly\", \"maxLength\", \"cellSpacing\", \"cellPadding\", \"rowSpan\", \"colSpan\", \"useMap\", \"frameBorder\", \"contentEditable\"], function() {\n                S.propFix[this.toLowerCase()] = this\n            }), /[\\t\\r\\n\\f]/g),\n            it = (S.fn.extend({\n                addClass: function(t) {\n                    var e, n, i, o, r, a, s = \"string\" == typeof t && t,\n                        l = 0,\n                        c = this.length;\n                    if (S.isFunction(t)) return this.each(function(e) {\n                        S(this).addClass(t.call(this, e, this.className))\n                    });\n                    if (s)\n                        for (e = (t || \"\").match(w) || []; l < c; l++)\n                            if (i = 1 === (n = this[l]).nodeType && (n.className ? (\" \" + n.className + \" \").replace(nt, \" \") : \" \")) {\n                                for (r = 0; o = e[r++];) i.indexOf(\" \" + o + \" \") < 0 && (i += o + \" \");\n                                a = S.trim(i), n.className !== a && (n.className = a)\n                            } return this\n                },\n                removeClass: function(t) {\n                    var e, n, i, o, r, a, s = 0 === arguments.length || \"string\" == typeof t && t,\n                        l = 0,\n                        c = this.length;\n                    if (S.isFunction(t)) return this.each(function(e) {\n                        S(this).removeClass(t.call(this, e, this.className))\n                    });\n                    if (s)\n                        for (e = (t || \"\").match(w) || []; l < c; l++)\n                            if (i = 1 === (n = this[l]).nodeType && (n.className ? (\" \" + n.className + \" \").replace(nt, \" \") : \"\")) {\n                                for (r = 0; o = e[r++];)\n                                    for (; 0 <= i.indexOf(\" \" + o + \" \");) i = i.replace(\" \" + o + \" \", \" \");\n                                a = t ? S.trim(i) : \"\", n.className !== a && (n.className = a)\n                            } return this\n                },\n                toggleClass: function(o, t) {\n                    var r = typeof o;\n                    return \"boolean\" == typeof t && \"string\" == r ? t ? this.addClass(o) : this.removeClass(o) : this.each(S.isFunction(o) ? function(e) {\n                        S(this).toggleClass(o.call(this, e, this.className, t), t)\n                    } : function() {\n                        if (\"string\" == r)\n                            for (var e, t = 0, n = S(this), i = o.match(w) || []; e = i[t++];) n.hasClass(e) ? n.removeClass(e) : n.addClass(e);\n                        else r != y && \"boolean\" != r || (this.className && T.set(this, \"__className__\", this.className), this.className = !this.className && !1 !== o && T.get(this, \"__className__\") || \"\")\n                    })\n                },\n                hasClass: function(e) {\n                    for (var t = \" \" + e + \" \", n = 0, i = this.length; n < i; n++)\n                        if (1 === this[n].nodeType && 0 <= (\" \" + this[n].className + \" \").replace(nt, \" \").indexOf(t)) return !0;\n                    return !1\n                }\n            }), /\\r/g),\n            ot = (S.fn.extend({\n                val: function(t) {\n                    var n, e, i, o = this[0];\n                    return arguments.length ? (i = S.isFunction(t), this.each(function(e) {\n                        1 === this.nodeType && (null == (e = i ? t.call(this, e, S(this).val()) : t) ? e = \"\" : \"number\" == typeof e ? e += \"\" : S.isArray(e) && (e = S.map(e, function(e) {\n                            return null == e ? \"\" : e + \"\"\n                        })), (n = S.valHooks[this.type] || S.valHooks[this.nodeName.toLowerCase()]) && \"set\" in n && void 0 !== n.set(this, e, \"value\") || (this.value = e))\n                    })) : o ? (n = S.valHooks[o.type] || S.valHooks[o.nodeName.toLowerCase()]) && \"get\" in n && void 0 !== (e = n.get(o, \"value\")) ? e : \"string\" == typeof(e = o.value) ? e.replace(it, \"\") : null == e ? \"\" : e : void 0\n                }\n            }), S.extend({\n                valHooks: {\n                    option: {\n                        get: function(e) {\n                            var t = S.find.attr(e, \"value\");\n                            return null != t ? t : S.trim(S.text(e))\n                        }\n                    },\n                    select: {\n                        get: function(e) {\n                            for (var t, n = e.options, i = e.selectedIndex, o = \"select-one\" === e.type || i < 0, r = o ? null : [], a = o ? i + 1 : n.length, s = i < 0 ? a : o ? i : 0; s < a; s++)\n                                if (!(!(t = n[s]).selected && s !== i || (m.optDisabled ? t.disabled : null !== t.getAttribute(\"disabled\")) || t.parentNode.disabled && S.nodeName(t.parentNode, \"optgroup\"))) {\n                                    if (t = S(t).val(), o) return t;\n                                    r.push(t)\n                                } return r\n                        },\n                        set: function(e, t) {\n                            for (var n, i, o = e.options, r = S.makeArray(t), a = o.length; a--;)((i = o[a]).selected = 0 <= S.inArray(i.value, r)) && (n = !0);\n                            return n || (e.selectedIndex = -1), r\n                        }\n                    }\n                }\n            }), S.each([\"radio\", \"checkbox\"], function() {\n                S.valHooks[this] = {\n                    set: function(e, t) {\n                        return S.isArray(t) ? e.checked = 0 <= S.inArray(S(e).val(), t) : void 0\n                    }\n                }, m.checkOn || (S.valHooks[this].get = function(e) {\n                    return null === e.getAttribute(\"value\") ? \"on\" : e.value\n                })\n            }), S.each(\"blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu\".split(\" \"), function(e, n) {\n                S.fn[n] = function(e, t) {\n                    return 0 < arguments.length ? this.on(n, null, e, t) : this.trigger(n)\n                }\n            }), S.fn.extend({\n                hover: function(e, t) {\n                    return this.mouseenter(e).mouseleave(t || e)\n                },\n                bind: function(e, t, n) {\n                    return this.on(e, null, t, n)\n                },\n                unbind: function(e, t) {\n                    return this.off(e, null, t)\n                },\n                delegate: function(e, t, n, i) {\n                    return this.on(t, e, n, i)\n                },\n                undelegate: function(e, t, n) {\n                    return 1 === arguments.length ? this.off(e, \"**\") : this.off(t, e || \"**\", n)\n                }\n            }), S.now()),\n            rt = /\\?/;\n        S.parseJSON = function(e) {\n            return JSON.parse(e + \"\")\n        }, S.parseXML = function(e) {\n            var t;\n            if (!e || \"string\" != typeof e) return null;\n            try {\n                t = (new DOMParser).parseFromString(e, \"text/xml\")\n            } catch (e) {\n                t = void 0\n            }\n            return t && !t.getElementsByTagName(\"parsererror\").length || S.error(\"Invalid XML: \" + e), t\n        };\n        var k, D, at = /#.*$/,\n            st = /([?&])_=[^&]*/,\n            lt = /^(.*?):[ \\t]*([^\\r\\n]*)$/gm,\n            ct = /^(?:GET|HEAD)$/,\n            ut = /^\\/\\//,\n            dt = /^([\\w.+-]+:)(?:\\/\\/(?:[^\\/?#]*@|)([^\\/?#:]*)(?::(\\d+)|)|)/,\n            ht = {},\n            pt = {},\n            ft = \"*/\".concat(\"*\");\n        try {\n            D = location.href\n        } catch (e) {\n            (D = g.createElement(\"a\")).href = \"\", D = D.href\n        }\n\n        function mt(r) {\n            return function(e, t) {\n                \"string\" != typeof e && (t = e, e = \"*\");\n                var n, i = 0,\n                    o = e.toLowerCase().match(w) || [];\n                if (S.isFunction(t))\n                    for (; n = o[i++];) \"+\" === n[0] ? (n = n.slice(1) || \"*\", (r[n] = r[n] || []).unshift(t)) : (r[n] = r[n] || []).push(t)\n            }\n        }\n\n        function gt(t, i, o, r) {\n            var a = {},\n                s = t === pt;\n\n            function l(e) {\n                var n;\n                return a[e] = !0, S.each(t[e] || [], function(e, t) {\n                    t = t(i, o, r);\n                    return \"string\" != typeof t || s || a[t] ? s ? !(n = t) : void 0 : (i.dataTypes.unshift(t), l(t), !1)\n                }), n\n            }\n            return l(i.dataTypes[0]) || !a[\"*\"] && l(\"*\")\n        }\n\n        function Tt(e, t) {\n            var n, i, o = S.ajaxSettings.flatOptions || {};\n            for (n in t) void 0 !== t[n] && ((o[n] ? e : i = i || {})[n] = t[n]);\n            return i && S.extend(!0, e, i), e\n        }\n        k = dt.exec(D.toLowerCase()) || [], S.extend({\n            active: 0,\n            lastModified: {},\n            etag: {},\n            ajaxSettings: {\n                url: D,\n                type: \"GET\",\n                isLocal: /^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(k[1]),\n                global: !0,\n                processData: !0,\n                async: !0,\n                contentType: \"application/x-www-form-urlencoded; charset=UTF-8\",\n                accepts: {\n                    \"*\": ft,\n                    text: \"text/plain\",\n                    html: \"text/html\",\n                    xml: \"application/xml, text/xml\",\n                    json: \"application/json, text/javascript\"\n                },\n                contents: {\n                    xml: /xml/,\n                    html: /html/,\n                    json: /json/\n                },\n                responseFields: {\n                    xml: \"responseXML\",\n                    text: \"responseText\",\n                    json: \"responseJSON\"\n                },\n                converters: {\n                    \"* text\": String,\n                    \"text html\": !0,\n                    \"text json\": S.parseJSON,\n                    \"text xml\": S.parseXML\n                },\n                flatOptions: {\n                    url: !0,\n                    context: !0\n                }\n            },\n            ajaxSetup: function(e, t) {\n                return t ? Tt(Tt(e, S.ajaxSettings), t) : Tt(S.ajaxSettings, e)\n            },\n            ajaxPrefilter: mt(ht),\n            ajaxTransport: mt(pt),\n            ajax: function(e, t) {\n                \"object\" == typeof e && (t = e, e = void 0);\n                var l, c, u, n, d, h, i, p = S.ajaxSetup({}, t = t || {}),\n                    f = p.context || p,\n                    m = p.context && (f.nodeType || f.jquery) ? S(f) : S.event,\n                    g = S.Deferred(),\n                    T = S.Callbacks(\"once memory\"),\n                    b = p.statusCode || {},\n                    o = {},\n                    r = {},\n                    y = 0,\n                    a = \"canceled\",\n                    v = {\n                        readyState: 0,\n                        getResponseHeader: function(e) {\n                            var t;\n                            if (2 === y) {\n                                if (!n)\n                                    for (n = {}; t = lt.exec(u);) n[t[1].toLowerCase()] = t[2];\n                                t = n[e.toLowerCase()]\n                            }\n                            return null == t ? null : t\n                        },\n                        getAllResponseHeaders: function() {\n                            return 2 === y ? u : null\n                        },\n                        setRequestHeader: function(e, t) {\n                            var n = e.toLowerCase();\n                            return y || (e = r[n] = r[n] || e, o[e] = t), this\n                        },\n                        overrideMimeType: function(e) {\n                            return y || (p.mimeType = e), this\n                        },\n                        statusCode: function(e) {\n                            if (e)\n                                if (y < 2)\n                                    for (var t in e) b[t] = [b[t], e[t]];\n                                else v.always(e[v.status]);\n                            return this\n                        },\n                        abort: function(e) {\n                            e = e || a;\n                            return l && l.abort(e), s(0, e), this\n                        }\n                    };\n                if (g.promise(v).complete = T.add, v.success = v.done, v.error = v.fail, p.url = ((e || p.url || D) + \"\").replace(at, \"\").replace(ut, k[1] + \"//\"), p.type = t.method || t.type || p.method || p.type, p.dataTypes = S.trim(p.dataType || \"*\").toLowerCase().match(w) || [\"\"], null == p.crossDomain && (e = dt.exec(p.url.toLowerCase()), p.crossDomain = !(!e || e[1] === k[1] && e[2] === k[2] && (e[3] || (\"http:\" === e[1] ? \"80\" : \"443\")) === (k[3] || (\"http:\" === k[1] ? \"80\" : \"443\")))), p.data && p.processData && \"string\" != typeof p.data && (p.data = S.param(p.data, p.traditional)), gt(ht, p, t, v), 2 !== y) {\n                    for (i in (h = p.global) && 0 == S.active++ && S.event.trigger(\"ajaxStart\"), p.type = p.type.toUpperCase(), p.hasContent = !ct.test(p.type), c = p.url, p.hasContent || (p.data && (c = p.url += (rt.test(c) ? \"&\" : \"?\") + p.data, delete p.data), !1 === p.cache && (p.url = st.test(c) ? c.replace(st, \"$1_=\" + ot++) : c + (rt.test(c) ? \"&\" : \"?\") + \"_=\" + ot++)), p.ifModified && (S.lastModified[c] && v.setRequestHeader(\"If-Modified-Since\", S.lastModified[c]), S.etag[c]) && v.setRequestHeader(\"If-None-Match\", S.etag[c]), (p.data && p.hasContent && !1 !== p.contentType || t.contentType) && v.setRequestHeader(\"Content-Type\", p.contentType), v.setRequestHeader(\"Accept\", p.dataTypes[0] && p.accepts[p.dataTypes[0]] ? p.accepts[p.dataTypes[0]] + (\"*\" !== p.dataTypes[0] ? \", \" + ft + \"; q=0.01\" : \"\") : p.accepts[\"*\"]), p.headers) v.setRequestHeader(i, p.headers[i]);\n                    if (p.beforeSend && (!1 === p.beforeSend.call(f, v, p) || 2 === y)) return v.abort();\n                    for (i in a = \"abort\", {\n                            success: 1,\n                            error: 1,\n                            complete: 1\n                        }) v[i](p[i]);\n                    if (l = gt(pt, p, t, v)) {\n                        v.readyState = 1, h && m.trigger(\"ajaxSend\", [v, p]), p.async && 0 < p.timeout && (d = setTimeout(function() {\n                            v.abort(\"timeout\")\n                        }, p.timeout));\n                        try {\n                            y = 1, l.send(o, s)\n                        } catch (e) {\n                            if (!(y < 2)) throw e;\n                            s(-1, e)\n                        }\n                    } else s(-1, \"No Transport\")\n                }\n                return v;\n\n                function s(e, t, n, i) {\n                    var o, r, a, s = t;\n                    2 !== y && (y = 2, d && clearTimeout(d), l = void 0, u = i || \"\", v.readyState = 0 < e ? 4 : 0, i = 200 <= e && e < 300 || 304 === e, n && (a = ((e, t, n) => {\n                        for (var i, o, r, a, s = e.contents, l = e.dataTypes;\n                            \"*\" === l[0];) l.shift(), void 0 === i && (i = e.mimeType || t.getResponseHeader(\"Content-Type\"));\n                        if (i)\n                            for (o in s)\n                                if (s[o] && s[o].test(i)) {\n                                    l.unshift(o);\n                                    break\n                                } if (l[0] in n) r = l[0];\n                        else {\n                            for (o in n) {\n                                if (!l[0] || e.converters[o + \" \" + l[0]]) {\n                                    r = o;\n                                    break\n                                }\n                                a = a || o\n                            }\n                            r = r || a\n                        }\n                        return r ? (r !== l[0] && l.unshift(r), n[r]) : void 0\n                    })(p, v, n)), a = ((e, t, n, i) => {\n                        var o, r, a, s, l, c = {},\n                            u = e.dataTypes.slice();\n                        if (u[1])\n                            for (a in e.converters) c[a.toLowerCase()] = e.converters[a];\n                        for (r = u.shift(); r;)\n                            if (e.responseFields[r] && (n[e.responseFields[r]] = t), !l && i && e.dataFilter && (t = e.dataFilter(t, e.dataType)), l = r, r = u.shift())\n                                if (\"*\" === r) r = l;\n                                else if (\"*\" !== l && l !== r) {\n                            if (!(a = c[l + \" \" + r] || c[\"* \" + r]))\n                                for (o in c)\n                                    if (s = o.split(\" \"), s[1] === r && (a = c[l + \" \" + s[0]] || c[\"* \" + s[0]])) {\n                                        !0 === a ? a = c[o] : !0 !== c[o] && (r = s[0], u.unshift(s[1]));\n                                        break\n                                    } if (!0 !== a)\n                                if (a && e.throws) t = a(t);\n                                else try {\n                                    t = a(t)\n                                } catch (e) {\n                                    return {\n                                        state: \"parsererror\",\n                                        error: a ? e : \"No conversion from \" + l + \" to \" + r\n                                    }\n                                }\n                        }\n                        return {\n                            state: \"success\",\n                            data: t\n                        }\n                    })(p, a, v, i), i ? (p.ifModified && ((n = v.getResponseHeader(\"Last-Modified\")) && (S.lastModified[c] = n), n = v.getResponseHeader(\"etag\")) && (S.etag[c] = n), 204 === e || \"HEAD\" === p.type ? s = \"nocontent\" : 304 === e ? s = \"notmodified\" : (s = a.state, o = a.data, i = !(r = a.error))) : (r = s, (e || !s) && (s = \"error\", e < 0) && (e = 0)), v.status = e, v.statusText = (t || s) + \"\", i ? g.resolveWith(f, [o, s, v]) : g.rejectWith(f, [v, s, r]), v.statusCode(b), b = void 0, h && m.trigger(i ? \"ajaxSuccess\" : \"ajaxError\", [v, p, i ? o : r]), T.fireWith(f, [v, s]), h) && (m.trigger(\"ajaxComplete\", [v, p]), --S.active || S.event.trigger(\"ajaxStop\"))\n                }\n            },\n            getJSON: function(e, t, n) {\n                return S.get(e, t, n, \"json\")\n            },\n            getScript: function(e, t) {\n                return S.get(e, void 0, t, \"script\")\n            }\n        }), S.each([\"get\", \"post\"], function(e, o) {\n            S[o] = function(e, t, n, i) {\n                return S.isFunction(t) && (i = i || n, n = t, t = void 0), S.ajax({\n                    url: e,\n                    type: o,\n                    dataType: i,\n                    data: t,\n                    success: n\n                })\n            }\n        }), S.each([\"ajaxStart\", \"ajaxStop\", \"ajaxComplete\", \"ajaxError\", \"ajaxSuccess\", \"ajaxSend\"], function(e, t) {\n            S.fn[t] = function(e) {\n                return this.on(t, e)\n            }\n        }), S._evalUrl = function(e) {\n            return S.ajax({\n                url: e,\n                type: \"GET\",\n                dataType: \"script\",\n                async: !1,\n                global: !1,\n                throws: !0\n            })\n        }, S.fn.extend({\n            wrapAll: function(t) {\n                var e;\n                return S.isFunction(t) ? this.each(function(e) {\n                    S(this).wrapAll(t.call(this, e))\n                }) : (this[0] && (e = S(t, this[0].ownerDocument).eq(0).clone(!0), this[0].parentNode && e.insertBefore(this[0]), e.map(function() {\n                    for (var e = this; e.firstElementChild;) e = e.firstElementChild;\n                    return e\n                }).append(this)), this)\n            },\n            wrapInner: function(n) {\n                return this.each(S.isFunction(n) ? function(e) {\n                    S(this).wrapInner(n.call(this, e))\n                } : function() {\n                    var e = S(this),\n                        t = e.contents();\n                    t.length ? t.wrapAll(n) : e.append(n)\n                })\n            },\n            wrap: function(t) {\n                var n = S.isFunction(t);\n                return this.each(function(e) {\n                    S(this).wrapAll(n ? t.call(this, e) : t)\n                })\n            },\n            unwrap: function() {\n                return this.parent().each(function() {\n                    S.nodeName(this, \"body\") || S(this).replaceWith(this.childNodes)\n                }).end()\n            }\n        }), S.expr.filters.hidden = function(e) {\n            return e.offsetWidth <= 0 && e.offsetHeight <= 0\n        }, S.expr.filters.visible = function(e) {\n            return !S.expr.filters.hidden(e)\n        };\n        var bt = /%20/g,\n            yt = /\\[\\]$/,\n            vt = /\\r?\\n/g,\n            St = /^(?:submit|button|image|reset|file)$/i,\n            wt = /^(?:input|select|textarea|keygen)/i;\n        S.param = function(e, t) {\n            function n(e, t) {\n                t = S.isFunction(t) ? t() : null == t ? \"\" : t, o[o.length] = encodeURIComponent(e) + \"=\" + encodeURIComponent(t)\n            }\n            var i, o = [];\n            if (void 0 === t && (t = S.ajaxSettings && S.ajaxSettings.traditional), S.isArray(e) || e.jquery && !S.isPlainObject(e)) S.each(e, function() {\n                n(this.name, this.value)\n            });\n            else\n                for (i in e) ! function n(i, e, o, r) {\n                    if (S.isArray(e)) S.each(e, function(e, t) {\n                        o || yt.test(i) ? r(i, t) : n(i + \"[\" + (\"object\" == typeof t ? e : \"\") + \"]\", t, o, r)\n                    });\n                    else if (o || \"object\" !== S.type(e)) r(i, e);\n                    else\n                        for (var t in e) n(i + \"[\" + t + \"]\", e[t], o, r)\n                }(i, e[i], t, n);\n            return o.join(\"&\").replace(bt, \"+\")\n        }, S.fn.extend({\n            serialize: function() {\n                return S.param(this.serializeArray())\n            },\n            serializeArray: function() {\n                return this.map(function() {\n                    var e = S.prop(this, \"elements\");\n                    return e ? S.makeArray(e) : this\n                }).filter(function() {\n                    var e = this.type;\n                    return this.name && !S(this).is(\":disabled\") && wt.test(this.nodeName) && !St.test(e) && (this.checked || !oe.test(e))\n                }).map(function(e, t) {\n                    var n = S(this).val();\n                    return null == n ? null : S.isArray(n) ? S.map(n, function(e) {\n                        return {\n                            name: t.name,\n                            value: e.replace(vt, \"\\r\\n\")\n                        }\n                    }) : {\n                        name: t.name,\n                        value: n.replace(vt, \"\\r\\n\")\n                    }\n                }).get()\n            }\n        }), S.ajaxSettings.xhr = function() {\n            try {\n                return new XMLHttpRequest\n            } catch (e) {}\n        };\n        var At = 0,\n            Pt = {},\n            Mt = {\n                0: 200,\n                1223: 204\n            },\n            I = S.ajaxSettings.xhr(),\n            Ct = (f.ActiveXObject && S(f).on(\"unload\", function() {\n                for (var e in Pt) Pt[e]()\n            }), m.cors = !!I && \"withCredentials\" in I, m.ajax = I = !!I, S.ajaxTransport(function(r) {\n                var a;\n                return m.cors || I && !r.crossDomain ? {\n                    send: function(e, t) {\n                        var n, i = r.xhr(),\n                            o = ++At;\n                        if (i.open(r.type, r.url, r.async, r.username, r.password), r.xhrFields)\n                            for (n in r.xhrFields) i[n] = r.xhrFields[n];\n                        for (n in r.mimeType && i.overrideMimeType && i.overrideMimeType(r.mimeType), r.crossDomain || e[\"X-Requested-With\"] || (e[\"X-Requested-With\"] = \"XMLHttpRequest\"), e) i.setRequestHeader(n, e[n]);\n                        a = function(e) {\n                            return function() {\n                                a && (delete Pt[o], a = i.onload = i.onerror = null, \"abort\" === e ? i.abort() : \"error\" === e ? t(i.status, i.statusText) : t(Mt[i.status] || i.status, i.statusText, \"string\" == typeof i.responseText ? {\n                                    text: i.responseText\n                                } : void 0, i.getAllResponseHeaders()))\n                            }\n                        }, i.onload = a(), i.onerror = a(\"error\"), a = Pt[o] = a(\"abort\");\n                        try {\n                            i.send(r.hasContent && r.data || null)\n                        } catch (e) {\n                            if (a) throw e\n                        }\n                    },\n                    abort: function() {\n                        a && a()\n                    }\n                } : void 0\n            }), S.ajaxSetup({\n                accepts: {\n                    script: \"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript\"\n                },\n                contents: {\n                    script: /(?:java|ecma)script/\n                },\n                converters: {\n                    \"text script\": function(e) {\n                        return S.globalEval(e), e\n                    }\n                }\n            }), S.ajaxPrefilter(\"script\", function(e) {\n                void 0 === e.cache && (e.cache = !1), e.crossDomain && (e.type = \"GET\")\n            }), S.ajaxTransport(\"script\", function(n) {\n                var i, o;\n                if (n.crossDomain) return {\n                    send: function(e, t) {\n                        i = S(\"<script>\").prop({\n                            async: !0,\n                            charset: n.scriptCharset,\n                            src: n.url\n                        }).on(\"load error\", o = function(e) {\n                            i.remove(), o = null, e && t(\"error\" === e.type ? 404 : 200, e.type)\n                        }), g.head.appendChild(i[0])\n                    },\n                    abort: function() {\n                        o && o()\n                    }\n                }\n            }), []),\n            xt = /(=)\\?(?=&|$)|\\?\\?/,\n            Ht = (S.ajaxSetup({\n                jsonp: \"callback\",\n                jsonpCallback: function() {\n                    var e = Ct.pop() || S.expando + \"_\" + ot++;\n                    return this[e] = !0, e\n                }\n            }), S.ajaxPrefilter(\"json jsonp\", function(e, t, n) {\n                var i, o, r, a = !1 !== e.jsonp && (xt.test(e.url) ? \"url\" : \"string\" == typeof e.data && !(e.contentType || \"\").indexOf(\"application/x-www-form-urlencoded\") && xt.test(e.data) && \"data\");\n                return a || \"jsonp\" === e.dataTypes[0] ? (i = e.jsonpCallback = S.isFunction(e.jsonpCallback) ? e.jsonpCallback() : e.jsonpCallback, a ? e[a] = e[a].replace(xt, \"$1\" + i) : !1 !== e.jsonp && (e.url += (rt.test(e.url) ? \"&\" : \"?\") + e.jsonp + \"=\" + i), e.converters[\"script json\"] = function() {\n                    return r || S.error(i + \" was not called\"), r[0]\n                }, e.dataTypes[0] = \"json\", o = f[i], f[i] = function() {\n                    r = arguments\n                }, n.always(function() {\n                    f[i] = o, e[i] && (e.jsonpCallback = t.jsonpCallback, Ct.push(i)), r && S.isFunction(o) && o(r[0]), r = o = void 0\n                }), \"script\") : void 0\n            }), S.parseHTML = function(e, t, n) {\n                if (!e || \"string\" != typeof e) return null;\n                \"boolean\" == typeof t && (n = t, t = !1), t = t || g;\n                var i = K.exec(e),\n                    n = !n && [];\n                return i ? [t.createElement(i[1])] : (i = S.buildFragment([e], t, n), n && n.length && S(n).remove(), S.merge([], i.childNodes))\n            }, S.fn.load),\n            Gt = (S.fn.load = function(e, t, n) {\n                var i, o, r, a, s;\n                return \"string\" != typeof e && Ht ? Ht.apply(this, arguments) : (a = this, 0 <= (s = e.indexOf(\" \")) && (i = S.trim(e.slice(s)), e = e.slice(0, s)), S.isFunction(t) ? (n = t, t = void 0) : t && \"object\" == typeof t && (o = \"POST\"), 0 < a.length && S.ajax({\n                    url: e,\n                    type: o,\n                    dataType: \"html\",\n                    data: t\n                }).done(function(e) {\n                    r = arguments, a.html(i ? S(\"<div>\").append(S.parseHTML(e)).find(i) : e)\n                }).complete(n && function(e, t) {\n                    a.each(n, r || [e.responseText, t, e])\n                }), this)\n            }, S.expr.filters.animated = function(t) {\n                return S.grep(S.timers, function(e) {\n                    return t === e.elem\n                }).length\n            }, f.document.documentElement);\n\n        function Nt(e) {\n            return S.isWindow(e) ? e : 9 === e.nodeType && e.defaultView\n        }\n        S.offset = {\n            setOffset: function(e, t, n) {\n                var i, o, r, a, s = S.css(e, \"position\"),\n                    l = S(e),\n                    c = {};\n                \"static\" === s && (e.style.position = \"relative\"), r = l.offset(), i = S.css(e, \"top\"), a = S.css(e, \"left\"), s = (\"absolute\" === s || \"fixed\" === s) && -1 < (i + a).indexOf(\"auto\") ? (o = (s = l.position()).top, s.left) : (o = parseFloat(i) || 0, parseFloat(a) || 0), null != (t = S.isFunction(t) ? t.call(e, n, r) : t).top && (c.top = t.top - r.top + o), null != t.left && (c.left = t.left - r.left + s), \"using\" in t ? t.using.call(e, c) : l.css(c)\n            }\n        }, S.fn.extend({\n            offset: function(t) {\n                var e, n, i, o;\n                return arguments.length ? void 0 === t ? this : this.each(function(e) {\n                    S.offset.setOffset(this, t, e)\n                }) : (i = {\n                    top: 0,\n                    left: 0\n                }, (o = (n = this[0]) && n.ownerDocument) ? (e = o.documentElement, S.contains(e, n) ? (typeof n.getBoundingClientRect != y && (i = n.getBoundingClientRect()), n = Nt(o), {\n                    top: i.top + n.pageYOffset - e.clientTop,\n                    left: i.left + n.pageXOffset - e.clientLeft\n                }) : i) : void 0)\n            },\n            position: function() {\n                var e, t, n, i;\n                if (this[0]) return n = this[0], i = {\n                    top: 0,\n                    left: 0\n                }, \"fixed\" === S.css(n, \"position\") ? t = n.getBoundingClientRect() : (e = this.offsetParent(), t = this.offset(), (i = S.nodeName(e[0], \"html\") ? i : e.offset()).top += S.css(e[0], \"borderTopWidth\", !0), i.left += S.css(e[0], \"borderLeftWidth\", !0)), {\n                    top: t.top - i.top - S.css(n, \"marginTop\", !0),\n                    left: t.left - i.left - S.css(n, \"marginLeft\", !0)\n                }\n            },\n            offsetParent: function() {\n                return this.map(function() {\n                    for (var e = this.offsetParent || Gt; e && !S.nodeName(e, \"html\") && \"static\" === S.css(e, \"position\");) e = e.offsetParent;\n                    return e || Gt\n                })\n            }\n        }), S.each({\n            scrollLeft: \"pageXOffset\",\n            scrollTop: \"pageYOffset\"\n        }, function(t, o) {\n            var r = \"pageYOffset\" === o;\n            S.fn[t] = function(e) {\n                return s(this, function(e, t, n) {\n                    var i = Nt(e);\n                    return void 0 === n ? i ? i[o] : e[t] : void(i ? i.scrollTo(r ? f.pageXOffset : n, r ? n : f.pageYOffset) : e[t] = n)\n                }, t, e, arguments.length, null)\n            }\n        }), S.each([\"top\", \"left\"], function(e, n) {\n            S.cssHooks[n] = Be(m.pixelPosition, function(e, t) {\n                return t ? (t = x(e, n), Ee.test(t) ? S(e).position()[n] + \"px\" : t) : void 0\n            })\n        }), S.each({\n            Height: \"height\",\n            Width: \"width\"\n        }, function(r, a) {\n            S.each({\n                padding: \"inner\" + r,\n                content: a,\n                \"\": \"outer\" + r\n            }, function(i, e) {\n                S.fn[e] = function(e, t) {\n                    var n = arguments.length && (i || \"boolean\" != typeof e),\n                        o = i || (!0 === e || !0 === t ? \"margin\" : \"border\");\n                    return s(this, function(e, t, n) {\n                        var i;\n                        return S.isWindow(e) ? e.document.documentElement[\"client\" + r] : 9 === e.nodeType ? (i = e.documentElement, Math.max(e.body[\"scroll\" + r], i[\"scroll\" + r], e.body[\"offset\" + r], i[\"offset\" + r], i[\"client\" + r])) : void 0 === n ? S.css(e, t, o) : S.style(e, t, n, o)\n                    }, a, n ? e : void 0, n, null)\n                }\n            })\n        }), S.fn.size = function() {\n            return this.length\n        }, S.fn.andSelf = S.fn.addBack, \"function\" == typeof define && define.amd && define(\"jquery\", [], function() {\n            return S\n        });\n        var Et = f.jQuery,\n            Bt = f.$;\n        return S.noConflict = function(e) {\n            return f.$ === S && (f.$ = Bt), e && f.jQuery === S && (f.jQuery = Et), S\n        }, typeof L == y && (f.jQuery = f.$ = S), S\n    }), (e => {\n        \"function\" == typeof define && define.amd ? define([\"jquery\"], e) : \"object\" == typeof exports ? e(require(\"jquery\")) : e(jQuery)\n    })(function(d) {\n        var n = /\\+/g;\n\n        function h(e) {\n            return f.raw ? e : encodeURIComponent(e)\n        }\n\n        function p(e, t) {\n            e = f.raw ? e : (e => {\n                0 === e.indexOf('\"') && (e = e.slice(1, -1).replace(/\\\\\"/g, '\"').replace(/\\\\\\\\/g, \"\\\\\"));\n                try {\n                    return e = decodeURIComponent(e.replace(n, \" \")), f.json ? JSON.parse(e) : e\n                } catch (e) {}\n            })(e);\n            return d.isFunction(t) ? t(e) : e\n        }\n        var f = d.cookie = function(e, t, n) {\n            var i, o;\n            if (void 0 !== t && !d.isFunction(t)) return \"number\" == typeof(n = d.extend({}, f.defaults, n)).expires && (i = n.expires, (o = n.expires = new Date).setTime(+o + 864e5 * i)), document.cookie = [h(e), \"=\", (o = t, h(f.json ? JSON.stringify(o) : String(o))), n.expires ? \"; expires=\" + n.expires.toUTCString() : \"\", n.path ? \"; path=\" + n.path : \"\", n.domain ? \"; domain=\" + n.domain : \"\", n.secure ? \"; secure\" : \"\"].join(\"\");\n            for (var r = e ? void 0 : {}, a = document.cookie ? document.cookie.split(\"; \") : [], s = 0, l = a.length; s < l; s++) {\n                var c = a[s].split(\"=\"),\n                    u = (u = c.shift(), f.raw ? u : decodeURIComponent(u)),\n                    c = c.join(\"=\");\n                if (e && e === u) {\n                    r = p(c, t);\n                    break\n                }\n                e || void 0 === (c = p(c)) || (r[u] = c)\n            }\n            return r\n        };\n        f.defaults = {}, d.removeCookie = function(e, t) {\n            return void 0 !== d.cookie(e) && (d.cookie(e, \"\", d.extend({}, t, {\n                expires: -1\n            })), !d.cookie(e))\n        }\n    }), \"undefined\" == typeof jQuery) throw new Error(\"Bootstrap's JavaScript requires jQuery\");\nvar original_content;\n\nfunction isNumber(e) {\n    return !isNaN(parseFloat(e)) && isFinite(e)\n}\n\nfunction randomso(e, t) {\n    return Math.floor(Math.random() * (t - e + 1) + e)\n}\n\nfunction ListChapProcess(e, t, n, i, o) {\n    $(\"#list-chapter .pagination\").replaceWith(i), $(\"#list-chapter>.row\").html(o), $(\"html, body\").animate({\n        scrollTop: $(\"#list-chapter\").offset().top\n    }, \"slow\"), window.history.pushState({\n        type: \"list_chap\",\n        truyen_name: e,\n        truyen_ascii: t,\n        page: n\n    }, \"Truyện \" + e + \" - Trang \" + n, \"/\" + t + \"?trang-\" + n + \"#list-chapter\"), document.title = \"Truyện \" + e + \" - Trang \" + n\n}\n\nfunction FormError(e, t) {\n    t ? $(\"#\" + t + \" .single-page-status\").removeClass(\"alert-success hide\").addClass(\"alert-danger\").html(e) : ($(\".single-page-status\").removeClass(\"alert-success hide\").addClass(\"alert-danger\").html(e), $(\"html, body\").animate({\n        scrollTop: $(\".single-page-status\").offset().top\n    }, \"slow\"))\n}\n\nfunction FormSuccess(e, t) {\n    t ? $(\"#\" + t + \" .single-page-status\").removeClass(\"alert-danger hide\").addClass(\"alert-success\").html(e) : ($(\".single-page-status\").removeClass(\"alert-danger hide\").addClass(\"alert-success\").html(e), $(\"html, body\").animate({\n        scrollTop: $(\".single-page-status\").offset().top\n    }, \"slow\"))\n}\n\nfunction FormDisable(e) {\n    $(e + \" :input\").attr(\"disabled\", !0)\n}\n\nfunction FormEnable(e) {\n    $(e + \" :input\").attr(\"disabled\", !1)\n}\n\nfunction EmailValidate(e) {\n    return e.match(/^\\S+@\\S+\\.\\S+$/)\n}\n\nfunction UsernameValidate(e) {\n    if (e.match(/^[a-z][a-z0-9]*[_\\.]?[a-z0-9]+$/) && 3 <= (e = e.length) && e <= 18) return \"ok\"\n}\n\nfunction PasswordValidate(e) {\n    if (6 <= (e = e.length) && e <= 128) return \"ok\"\n}\n\nfunction quick_search(e) {\n    $.get(\"/wp-admin/admin-ajax.php?action=tw_ajax\", {\n        type: \"quick_search\",\n        str: e\n    }).done(function(e) {\n        $(\".list-search-res\").html(e)\n    })\n}\n\nfunction update_views(e, t) {\n    $.post(\"/wp-admin/admin-ajax.php?action=tw_ajax\", {\n        type: \"update_views\",\n        tid: e,\n        add: t,\n        t: (new Date).getTime()\n    })\n}\n\nfunction chapter_filter() {\n    var n = $(\".chapter-c\").html();\n    $.each({\n        \"An Đình Doanh\": \"AĐD\",\n        \"bán nước\": \"b*n n**c\",\n        \"biển Đông\": \"bi*n đ*ng\",\n        \"Bùi Minh Châu\": \"BMC\",\n        \"Bùi Nhật Quang\": \"BNQ\",\n        \"Bùi Thanh Sơn\": \"BTS\",\n        \"Bùi Thị Minh Hoài\": \"BTMH\",\n        \"Bùi Thị Quỳnh Vân\": \"BTQV\",\n        \"Bùi Văn Cường\": \"BVC\",\n        \"Bùi Văn Nghiêm\": \"BVN\",\n        \"Chẩu Văn Lâm\": \"CVL\",\n        \"Châu Văn Minh\": \"CVM\",\n        \"Chu Ngọc Anh\": \"CAN\",\n        \"Đặng Quốc Khánh\": \"ĐQK\",\n        \"Đặng Xuân Phong\": \"ĐXP\",\n        \"Đào Hồng Lan\": \"ĐHL\",\n        \"Đào Ngọc Dung\": \"ĐND\",\n        \"Điểu Kré\": \"ĐK\",\n        \"Đinh Tiến Dũng\": \"ĐTD\",\n        \"Đỗ Đức Duy\": \"ĐĐD\",\n        \"Đỗ Thanh Bình\": \"ĐTB\",\n        \"Đỗ Tiến Sỹ\": \"ĐTS\",\n        \"Đỗ Trọng Hưng\": \"ĐTH\",\n        \"Đỗ Văn Chiến\": \"ĐVC\",\n        \"Đoàn Hồng Phong\": \"ĐHP\",\n        \"Đoàn Minh Huấn\": \"ĐMH\",\n        \"Đông Sa\": \"ĐS\",\n        \"đường chín đoạn\": \"đlb*\",\n        \"đường chín khúc\": \"đlb*\",\n        \"đường chữ U\": \"đlb*\",\n        \"đường lưỡi bò\": \"đlb*\",\n        \"Dương Thanh Bình\": \"DTB\",\n        \"Dương Văn An\": \"DVA\",\n        \"Dương Văn Thái\": \"DVT\",\n        \"Dương Văn Trang\": \"DVT\",\n        \"Giàng Páo Mỷ\": \"GPM\",\n        \"Hà Thị Nga\": \"HTN\",\n        \"Hầu A Lềnh\": \"HAL\",\n        \"Hồ Đức Phớc\": \"HĐP\",\n        \"Hồ Quốc Dũng\": \"HQD\",\n        \"Hồ Văn Niên\": \"HVN\",\n        \"Hoàng Đăng Quang\": \"HĐQ\",\n        \"Hoàng Duy Chinh\": \"HDC\",\n        \"Hoàng Sa\": \"HS\",\n        \"Hoàng Thanh Tùng\": \"HTT\",\n        \"Hoàng Thị Thúy Lan\": \"HTTL\",\n        \"Hoàng Trung Dũng\": \"HTD\",\n        \"Hoàng Xuân Chiến\": \"HXC\",\n        \"Huỳnh Chiến Thắng\": \"HCT\",\n        \"Huỳnh Tấn Việt\": \"HTV\",\n        \"Huỳnh Thành Đạt\": \"HTĐ\",\n        \"Lại Xuân Môn\": \"LXM\",\n        \"Lâm Thị Phương Thanh\": \"LTPT\",\n        \"Lâm Văn Mẫn\": \"LVM\",\n        \"Lê Đức Thái\": \"LĐT\",\n        \"Lê Đức Thọ\": \"LĐT\",\n        \"Lê Hoài Trung\": \"LHT\",\n        \"Lê Hồng Quang\": \"LHQ\",\n        \"Lê Huy Vịnh\": \"LHV\",\n        \"Lê Khánh Hải\": \"LKH\",\n        \"Lê Minh Hoan\": \"LMH\",\n        \"Lê Minh Hưng\": \"LMH\",\n        \"Lê Minh Khái\": \"LMK\",\n        \"Lê Minh Trí\": \"LMT\",\n        \"Lê Ngọc Quang\": \"LNQ\",\n        \"Lê Quang Huy\": \"LQH\",\n        \"Lê Quang Mạnh\": \"LQM\",\n        \"Lê Quang Tùng\": \"LQT\",\n        \"Lê Quốc Hùng\": \"LQH\",\n        \"Lê Quốc Minh\": \"LQM\",\n        \"Lê Quốc Phong\": \"LQP\",\n        \"Lê Tấn Tới\": \"LTT\",\n        \"Lê Thành Long\": \"LTL\",\n        \"Lê Thị Nga\": \"LTN\",\n        \"Lê Thị Thủy\": \"LTT\",\n        \"Lê Tiến Châu\": \"LTC\",\n        \"Lê Trường Lưu\": \"LTL\",\n        \"Lê Văn Thành\": \"LVT\",\n        \"Lê Vĩnh Tân\": \"LVT\",\n        \"Lữ Văn Hùng\": \"LVH\",\n        \"Lương Cường\": \"LC\",\n        \"Lương Quốc Đoàn\": \"LQĐ\",\n        \"Lương Tam Quang\": \"LTQ\",\n        \"Mai Tiến Dũng\": \"MTD\",\n        \"Mai Văn Chính\": \"MVC\",\n        \"Nghiêm Xuân Thành\": \"NXT\",\n        \"Ngô Chí Cường\": \"NCC\",\n        \"Ngô Đông Hải\": \"NĐH\",\n        \"Ngô Văn Tuấn\": \"NVT\",\n        \"Ngô Xuân Lịch\": \"NXL\",\n        \"Nguyễn Anh Tuấn\": \"NAT\",\n        \"Nguyễn Chí Dũng\": \"NCD\",\n        \"Nguyễn Đắc Vinh\": \"NĐV\",\n        \"Nguyễn Đình Khang\": \"NĐK\",\n        \"Nguyễn Đình Trung\": \"NĐT\",\n        \"Nguyễn Doãn Anh\": \"NDA\",\n        \"Nguyễn Đức Hải\": \"NĐH\",\n        \"Nguyễn Đức Thanh\": \"NĐT\",\n        \"Nguyễn Duy Ngọc\": \"NDN\",\n        \"Nguyễn Hải Ninh\": \"NHN\",\n        \"Nguyễn Hòa Bình\": \"NHB\",\n        \"Nguyễn Hoàng Anh\": \"NHA\",\n        \"Nguyễn Hồng Diên\": \"NHD\",\n        \"Nguyễn Hồng Lĩnh\": \"NHL\",\n        \"Nguyễn Hồng Thái\": \"NHT\",\n        \"Nguyễn Hữu Đông\": \"NHĐ\",\n        \"Nguyễn Hữu Nghĩa\": \"NHN\",\n        \"Nguyễn Khắc Định\": \"NKĐ\",\n        \"Nguyễn Kim Sơn\": \"NKS\",\n        \"Nguyễn Mạnh Cường\": \"NMC\",\n        \"Nguyễn Mạnh Hùng\": \"NMH\",\n        \"Nguyễn Ngọc Thiện\": \"NNT\",\n        \"Nguyễn Phú Cường\": \"NPC\",\n        \"Nguyễn Phú Trọng\": \"NPT\",\n        \"Nguyễn Quang Dương\": \"NQD\",\n        \"Nguyễn Quang Ngọc\": \"NQN\",\n        \"Nguyễn Quốc Đoàn\": \"NQĐ\",\n        \"Nguyễn Tân Cương\": \"NTC\",\n        \"Nguyễn Thanh Hải\": \"NTH\",\n        \"Nguyễn Thanh Long\": \"NTL\",\n        \"Nguyễn Thanh Nghị\": \"NTN\",\n        \"Nguyễn Thành Phong\": \"NTP\",\n        \"Nguyễn Thành Tâm\": \"NTT\",\n        \"Nguyễn Thanh Thủy\": \"NTT\",\n        \"Nguyễn Thị Hồng\": \"NTH\",\n        \"Nguyễn Thị Thanh\": \"NTT\",\n        \"Nguyễn Thị Thu Hà\": \"NTTH\",\n        \"Nguyễn Thị Tuyến\": \"NTT\",\n        \"Nguyễn Thúy Anh\": \"NTA\",\n        \"Nguyễn Tiến Hải\": \"NTH\",\n        \"Nguyễn Trọng Nghĩa\": \"NTN\",\n        \"Nguyễn Trường Thắng\": \"NTT\",\n        \"Nguyễn Văn Danh\": \"NVD\",\n        \"Nguyễn Văn Được\": \"NVĐ\",\n        \"Nguyễn Văn Gấu\": \"NVG\",\n        \"Nguyễn Văn Hiền\": \"NVH\",\n        \"Nguyễn Văn Hùng\": \"NVH\",\n        \"Nguyễn Văn Lợi\": \"NVL\",\n        \"Nguyễn Văn Nên\": \"NVN\",\n        \"Nguyễn Văn Quảng\": \"NVQ\",\n        \"Nguyễn Văn Thắng\": \"NVT\",\n        \"Nguyễn Văn Thể\": \"NVT\",\n        \"Nguyễn Xuân Cường\": \"NXC\",\n        \"Nguyễn Xuân Ký\": \"NXK\",\n        \"Nguyễn Xuân Phúc\": \"NXP\",\n        \"Nguyễn Xuân Thắng\": \"NXT\",\n        \"Phạm Bình Minh\": \"PBM\",\n        \"Phạm Đại Dương\": \"PĐD\",\n        \"Phạm Gia Túc\": \"PGT\",\n        \"Phạm Hoài Nam\": \"PHN\",\n        \"Phạm Hồng Hà\": \"PHH\",\n        \"Phạm Minh Chính\": \"PMC\",\n        \"Phạm Tất Thắng\": \"PTT\",\n        \"Phạm Thị Thanh Trà\": \"PTTT\",\n        \"Phạm Viết Thanh\": \"PVT\",\n        \"Phạm Xuân Thăng\": \"PXT\",\n        \"Phan Đình Trạc\": \"PĐT\",\n        \"Phan Văn Giang\": \"PVG\",\n        \"Phan Văn Mãi\": \"PVM\",\n        \"Phan Việt Cường\": \"PVC\",\n        \"Phùng Xuân Nhạ\": \"PXN\",\n        \"South China Sea\": \"NH\",\n        \"Thái Đại Ngọc\": \"TDN\",\n        \"Thái Thanh Quý\": \"TTQ\",\n        \"Tô Lâm\": \"TL\",\n        \"Trần Cẩm Tú\": \"TCT\",\n        \"Trần Đức Quận\": \"TĐQ\",\n        \"Trần Đức Thắng\": \"TĐT\",\n        \"Trần Hồng Hà\": \"THH\",\n        \"Trần Hồng Minh\": \"THM\",\n        \"Trần Lưu Quang\": \"TLQ\",\n        \"Trần Quang Phương\": \"TQP\",\n        \"Trần Quốc Cường\": \"TQC\",\n        \"Trần Quốc Tỏ\": \"TQT\",\n        \"Trần Sỹ Thanh\": \"TST\",\n        \"Trần Thanh Mẫn\": \"TTM\",\n        \"Trần Thanh Nghiêm\": \"TTN\",\n        \"Trần Tiến Hưng\": \"TTH\",\n        \"Trần Tuấn Anh\": \"TTA\",\n        \"Trần Văn Nam\": \"TVN\",\n        \"Trần Văn Rón\": \"TVR\",\n        \"Trần Văn Sơn\": \"TVS\",\n        \"Trần Việt Khoa\": \"TVK\",\n        \"Trịnh Đình Dũng\": \"TĐD\",\n        \"Trịnh Văn Quyết\": \"TVQ\",\n        \"Trương Hòa Bình\": \"THB\",\n        \"Trường Sa\": \"TS\",\n        \"Trương Thị Mai\": \"TTM\",\n        \"việt tân\": \"v*** t**\",\n        \"việt cộng\": \"v*** c***\",\n        \"việt [+]\": \"v*** +\",\n        \"Võ Minh Lương\": \"VML\",\n        \"Võ Thị Ánh Xuân\": \"VTAX\",\n        \"Võ Văn Dũng\": \"VVD\",\n        \"Võ Văn Thưởng\": \"VVT\",\n        \"Vũ Đại Thắng\": \"VĐT\",\n        \"Vũ Đức Đam\": \"VĐĐ\",\n        \"Vũ Hải Hà\": \"VHH\",\n        \"Vũ Hải Quân\": \"VHQ\",\n        \"Vũ Hải Sản\": \"VHS\",\n        \"Vũ Hồng Thanh\": \"VHT\",\n        \"Vương Đình Huệ\": \"VĐH\",\n        \"Y Thanh Hà Niê Kdăm\": \"YTHNK\"\n    }, function(e, t) {\n        e = new RegExp(e, \"ig\");\n        n = n.replace(e, t)\n    }), $(\".chapter-c\").html(n)\n}(() => {\n    var e = jQuery.fn.jquery.split(\" \")[0].split(\".\");\n    if (e[0] < 2 && e[1] < 9 || 1 == e[0] && 9 == e[1] && e[2] < 1 || 3 < e[0]) throw new Error(\"Bootstrap's JavaScript requires jQuery version 1.9.1 or higher, but lower than version 4\")\n})(), (o => {\n    function r(e) {\n        var t = e.attr(\"data-target\"),\n            t = (t = t ? t : (t = e.attr(\"href\")) && /#[A-Za-z]/.test(t) && t.replace(/.*(?=#[^\\s]*$)/, \"\")) && o(t);\n        return t && t.length ? t : e.parent()\n    }\n\n    function a(i) {\n        i && 3 === i.which || (o(\".dropdown-backdrop\").remove(), o(s).each(function() {\n            var e = o(this),\n                t = r(e),\n                n = {\n                    relatedTarget: this\n                };\n            !t.hasClass(\"open\") || i && \"click\" == i.type && /input|textarea/i.test(i.target.tagName) && o.contains(t[0], i.target) || (t.trigger(i = o.Event(\"hide.bs.dropdown\", n)), i.isDefaultPrevented()) || (e.attr(\"aria-expanded\", \"false\"), t.removeClass(\"open\").trigger(o.Event(\"hidden.bs.dropdown\", n)))\n        }))\n    }\n\n    function i(e) {\n        o(e).on(\"click.bs.dropdown\", this.toggle)\n    }\n    var s = '[data-toggle=\"dropdown\"]',\n        e = (i.VERSION = \"3.3.7\", i.prototype.toggle = function(e) {\n            var t = o(this);\n            if (!t.is(\".disabled, :disabled\")) {\n                var n = r(t),\n                    i = n.hasClass(\"open\");\n                if (a(), !i) {\n                    \"ontouchstart\" in document.documentElement && !n.closest(\".navbar-nav\").length && o(document.createElement(\"div\")).addClass(\"dropdown-backdrop\").insertAfter(o(this)).on(\"click\", a);\n                    i = {\n                        relatedTarget: this\n                    };\n                    if (n.trigger(e = o.Event(\"show.bs.dropdown\", i)), e.isDefaultPrevented()) return;\n                    t.trigger(\"focus\").attr(\"aria-expanded\", \"true\"), n.toggleClass(\"open\").trigger(o.Event(\"shown.bs.dropdown\", i))\n                }\n                return !1\n            }\n        }, i.prototype.keydown = function(e) {\n            if (/(38|40|27|32)/.test(e.which) && !/input|textarea/i.test(e.target.tagName)) {\n                var t = o(this);\n                if (e.preventDefault(), e.stopPropagation(), !t.is(\".disabled, :disabled\")) {\n                    var n = r(t),\n                        i = n.hasClass(\"open\");\n                    if (!i && 27 != e.which || i && 27 == e.which) return 27 == e.which && n.find(s).trigger(\"focus\"), t.trigger(\"click\");\n                    i = n.find(\".dropdown-menu li:not(.disabled):visible a\");\n                    i.length && (t = i.index(e.target), 38 == e.which && 0 < t && t--, 40 == e.which && t < i.length - 1 && t++, i.eq(t = ~t ? t : 0).trigger(\"focus\"))\n                }\n            }\n        }, o.fn.dropdown);\n    o.fn.dropdown = function(n) {\n        return this.each(function() {\n            var e = o(this),\n                t = e.data(\"bs.dropdown\");\n            t || e.data(\"bs.dropdown\", t = new i(this)), \"string\" == typeof n && t[n].call(e)\n        })\n    }, o.fn.dropdown.Constructor = i, o.fn.dropdown.noConflict = function() {\n        return o.fn.dropdown = e, this\n    }, o(document).on(\"click.bs.dropdown.data-api\", a).on(\"click.bs.dropdown.data-api\", \".dropdown form\", function(e) {\n        e.stopPropagation()\n    }).on(\"click.bs.dropdown.data-api\", s, i.prototype.toggle).on(\"keydown.bs.dropdown.data-api\", s, i.prototype.keydown).on(\"keydown.bs.dropdown.data-api\", \".dropdown-menu\", i.prototype.keydown)\n})(jQuery), (o => {\n    function n(e) {\n        e = e.attr(\"data-target\") || (e = e.attr(\"href\")) && e.replace(/.*(?=#[^\\s]+$)/, \"\");\n        return o(e)\n    }\n\n    function r(i) {\n        return this.each(function() {\n            var e = o(this),\n                t = e.data(\"bs.collapse\"),\n                n = o.extend({}, a.DEFAULTS, e.data(), \"object\" == typeof i && i);\n            !t && n.toggle && /show|hide/.test(i) && (n.toggle = !1), t || e.data(\"bs.collapse\", t = new a(this, n)), \"string\" == typeof i && t[i]()\n        })\n    }\n\n    function a(e, t) {\n        this.$element = o(e), this.options = o.extend({}, a.DEFAULTS, t), this.$trigger = o('[data-toggle=\"collapse\"][href=\"#' + e.id + '\"],[data-toggle=\"collapse\"][data-target=\"#' + e.id + '\"]'), this.transitioning = null, this.options.parent ? this.$parent = this.getParent() : this.addAriaAndCollapsedClass(this.$element, this.$trigger), this.options.toggle && this.toggle()\n    }\n    a.VERSION = \"3.3.7\", a.TRANSITION_DURATION = 350, a.DEFAULTS = {\n        toggle: !0\n    }, a.prototype.dimension = function() {\n        return this.$element.hasClass(\"width\") ? \"width\" : \"height\"\n    }, a.prototype.show = function() {\n        if (!this.transitioning && !this.$element.hasClass(\"in\")) {\n            var e = this.$parent && this.$parent.children(\".panel\").children(\".in, .collapsing\");\n            if (!(e && e.length && (i = e.data(\"bs.collapse\")) && i.transitioning)) {\n                var t = o.Event(\"show.bs.collapse\");\n                if (this.$element.trigger(t), !t.isDefaultPrevented()) {\n                    e && e.length && (r.call(e, \"hide\"), i || e.data(\"bs.collapse\", null));\n                    var n = this.dimension(),\n                        t = (this.$element.removeClass(\"collapse\").addClass(\"collapsing\")[n](0).attr(\"aria-expanded\", !0), this.$trigger.removeClass(\"collapsed\").attr(\"aria-expanded\", !0), this.transitioning = 1, function() {\n                            this.$element.removeClass(\"collapsing\").addClass(\"collapse in\")[n](\"\"), this.transitioning = 0, this.$element.trigger(\"shown.bs.collapse\")\n                        });\n                    if (!o.support.transition) return t.call(this);\n                    var i = o.camelCase([\"scroll\", n].join(\"-\"));\n                    this.$element.one(\"bsTransitionEnd\", o.proxy(t, this)).emulateTransitionEnd(a.TRANSITION_DURATION)[n](this.$element[0][i])\n                }\n            }\n        }\n    }, a.prototype.hide = function() {\n        if (!this.transitioning && this.$element.hasClass(\"in\")) {\n            var e, t = o.Event(\"hide.bs.collapse\");\n            if (this.$element.trigger(t), !t.isDefaultPrevented()) return t = this.dimension(), this.$element[t](this.$element[t]())[0].offsetHeight, this.$element.addClass(\"collapsing\").removeClass(\"collapse in\").attr(\"aria-expanded\", !1), this.$trigger.addClass(\"collapsed\").attr(\"aria-expanded\", !1), this.transitioning = 1, e = function() {\n                this.transitioning = 0, this.$element.removeClass(\"collapsing\").addClass(\"collapse\").trigger(\"hidden.bs.collapse\")\n            }, o.support.transition ? void this.$element[t](0).one(\"bsTransitionEnd\", o.proxy(e, this)).emulateTransitionEnd(a.TRANSITION_DURATION) : e.call(this)\n        }\n    }, a.prototype.toggle = function() {\n        this[this.$element.hasClass(\"in\") ? \"hide\" : \"show\"]()\n    }, a.prototype.getParent = function() {\n        return o(this.options.parent).find('[data-toggle=\"collapse\"][data-parent=\"' + this.options.parent + '\"]').each(o.proxy(function(e, t) {\n            t = o(t);\n            this.addAriaAndCollapsedClass(n(t), t)\n        }, this)).end()\n    }, a.prototype.addAriaAndCollapsedClass = function(e, t) {\n        var n = e.hasClass(\"in\");\n        e.attr(\"aria-expanded\", n), t.toggleClass(\"collapsed\", !n).attr(\"aria-expanded\", n)\n    };\n    var e = o.fn.collapse;\n    o.fn.collapse = r, o.fn.collapse.Constructor = a, o.fn.collapse.noConflict = function() {\n        return o.fn.collapse = e, this\n    }, o(document).on(\"click.bs.collapse.data-api\", '[data-toggle=\"collapse\"]', function(e) {\n        var t = o(this),\n            e = (t.attr(\"data-target\") || e.preventDefault(), n(t)),\n            t = e.data(\"bs.collapse\") ? \"toggle\" : t.data();\n        r.call(e, t)\n    })\n})(jQuery), (i => {\n    i.fn.emulateTransitionEnd = function(e) {\n        var t = !1,\n            n = this;\n        i(this).one(\"bsTransitionEnd\", function() {\n            t = !0\n        });\n        return setTimeout(function() {\n            t || i(n).trigger(i.support.transition.end)\n        }, e), this\n    }, i(function() {\n        i.support.transition = (() => {\n            var e, t = document.createElement(\"bootstrap\"),\n                n = {\n                    WebkitTransition: \"webkitTransitionEnd\",\n                    MozTransition: \"transitionend\",\n                    OTransition: \"oTransitionEnd otransitionend\",\n                    transition: \"transitionend\"\n                };\n            for (e in n)\n                if (void 0 !== t.style[e]) return {\n                    end: n[e]\n                };\n            return !1\n        })(), i.support.transition && (i.event.special.bsTransitionEnd = {\n            bindType: i.support.transition.end,\n            delegateType: i.support.transition.end,\n            handle: function(e) {\n                return i(e.target).is(this) ? e.handleObj.handler.apply(this, arguments) : void 0\n            }\n        })\n    })\n})(jQuery), (o => {\n    var s = {\n        init: function(e) {\n            return this.each(function() {\n                this.self = o(this), s.destroy.call(this.self), this.opt = o.extend(!0, {}, o.fn.raty.defaults, e), s._adjustCallback.call(this), s._adjustNumber.call(this), s._adjustHints.call(this), this.opt.score = s._adjustedScore.call(this, this.opt.score), \"img\" !== this.opt.starType && s._adjustStarType.call(this), s._adjustPath.call(this), s._createStars.call(this), this.opt.cancel && s._createCancel.call(this), this.opt.precision && s._adjustPrecision.call(this), s._createScore.call(this), s._apply.call(this, this.opt.score), s._setTitle.call(this, this.opt.score), s._target.call(this, this.opt.score), (this.opt.readOnly ? s._lock : (this.style.cursor = \"pointer\", s._binds)).call(this)\n            })\n        },\n        _adjustCallback: function() {\n            for (var e = [\"number\", \"readOnly\", \"score\", \"scoreName\", \"target\"], t = 0; t < e.length; t++) \"function\" == typeof this.opt[e[t]] && (this.opt[e[t]] = this.opt[e[t]].call(this))\n        },\n        _adjustedScore: function(e) {\n            return e && s._between(e, 0, this.opt.number)\n        },\n        _adjustHints: function() {\n            if (this.opt.hints || (this.opt.hints = []), this.opt.halfShow || this.opt.half)\n                for (var e = this.opt.precision ? 10 : 2, t = 0; t < this.opt.number; t++) {\n                    var n = this.opt.hints[t];\n                    \"[object Array]\" !== Object.prototype.toString.call(n) && (n = [n]), this.opt.hints[t] = [];\n                    for (var i = 0; i < e; i++) {\n                        var o = n[i],\n                            r = n[n.length - 1];\n                        void 0 === r && (r = null), this.opt.hints[t][i] = void 0 === o ? r : o\n                    }\n                }\n        },\n        _adjustNumber: function() {\n            this.opt.number = s._between(this.opt.number, 1, this.opt.numberMax)\n        },\n        _adjustPath: function() {\n            this.opt.path = this.opt.path || \"\", this.opt.path && \"/\" !== this.opt.path.charAt(this.opt.path.length - 1) && (this.opt.path += \"/\")\n        },\n        _adjustPrecision: function() {\n            this.opt.half = !0\n        },\n        _adjustStarType: function() {\n            var e = [\"cancelOff\", \"cancelOn\", \"starHalf\", \"starOff\", \"starOn\"];\n            this.opt.path = \"\";\n            for (var t = 0; t < e.length; t++) this.opt[e[t]] = this.opt[e[t]].replace(\".\", \"-\")\n        },\n        _apply: function(e) {\n            s._fill.call(this, e), e && (0 < e && this.score.val(e), s._roundStars.call(this, e))\n        },\n        _between: function(e, t, n) {\n            return Math.min(Math.max(parseFloat(e), t), n)\n        },\n        _binds: function() {\n            this.cancel && (s._bindOverCancel.call(this), s._bindClickCancel.call(this), s._bindOutCancel.call(this)), s._bindOver.call(this), s._bindClick.call(this), s._bindOut.call(this)\n        },\n        _bindClick: function() {\n            var i = this;\n            i.stars.on(\"click.raty\", function(e) {\n                var t = !0,\n                    n = i.opt.half || i.opt.precision ? i.self.data(\"score\") : this.alt || o(this).data(\"alt\");\n                !(t = i.opt.click ? i.opt.click.call(i, +n, e) : t) && void 0 !== t || (i.opt.half && !i.opt.precision && (n = s._roundHalfScore.call(i, n)), s._apply.call(i, n))\n            })\n        },\n        _bindClickCancel: function() {\n            var t = this;\n            t.cancel.on(\"click.raty\", function(e) {\n                t.score.removeAttr(\"value\"), t.opt.click && t.opt.click.call(t, null, e)\n            })\n        },\n        _bindOut: function() {\n            var n = this;\n            n.self.on(\"mouseleave.raty\", function(e) {\n                var t = +n.score.val() || void 0;\n                s._apply.call(n, t), s._target.call(n, t, e), s._resetTitle.call(n), n.opt.mouseout && n.opt.mouseout.call(n, t, e)\n            })\n        },\n        _bindOutCancel: function() {\n            var n = this;\n            n.cancel.on(\"mouseleave.raty\", function(e) {\n                var t = n.opt.cancelOff;\n                \"img\" !== n.opt.starType && (t = n.opt.cancelClass + \" \" + t), s._setIcon.call(n, this, t), n.opt.mouseout && (t = +n.score.val() || void 0, n.opt.mouseout.call(n, t, e))\n            })\n        },\n        _bindOver: function() {\n            var n = this,\n                e = n.opt.half ? \"mousemove.raty\" : \"mouseover.raty\";\n            n.stars.on(e, function(e) {\n                var t = s._getScoreByPosition.call(n, e, this);\n                s._fill.call(n, t), n.opt.half && (s._roundStars.call(n, t, e), s._setTitle.call(n, t, e), n.self.data(\"score\", t)), s._target.call(n, t, e), n.opt.mouseover && n.opt.mouseover.call(n, t, e)\n            })\n        },\n        _bindOverCancel: function() {\n            var i = this;\n            i.cancel.on(\"mouseover.raty\", function(e) {\n                var t = i.opt.path + i.opt.starOff,\n                    n = i.opt.cancelOn;\n                \"img\" === i.opt.starType ? i.stars.attr(\"src\", t) : (n = i.opt.cancelClass + \" \" + n, i.stars.attr(\"class\", t)), s._setIcon.call(i, this, n), s._target.call(i, null, e), i.opt.mouseover && i.opt.mouseover.call(i, null)\n            })\n        },\n        _buildScoreField: function() {\n            return o(\"<input />\", {\n                name: this.opt.scoreName,\n                type: \"hidden\"\n            }).appendTo(this)\n        },\n        _createCancel: function() {\n            var e = this.opt.path + this.opt.cancelOff,\n                t = o(\"<\" + this.opt.starType + \" />\", {\n                    title: this.opt.cancelHint,\n                    class: this.opt.cancelClass\n                });\n            \"img\" === this.opt.starType ? t.attr({\n                src: e,\n                alt: \"x\"\n            }) : t.attr(\"data-alt\", \"x\").addClass(e), \"left\" === this.opt.cancelPlace ? this.self.prepend(\"&#160;\").prepend(t) : this.self.append(\"&#160;\").append(t), this.cancel = t\n        },\n        _createScore: function() {\n            var e = o(this.opt.targetScore);\n            this.score = e.length ? e : s._buildScoreField.call(this)\n        },\n        _createStars: function() {\n            for (var e = 1; e <= this.opt.number; e++) {\n                var t = s._nameForIndex.call(this, e),\n                    t = {\n                        alt: e,\n                        src: this.opt.path + this.opt[t]\n                    };\n                (t = \"img\" !== this.opt.starType ? {\n                    \"data-alt\": e,\n                    class: t.src\n                } : t).title = s._getHint.call(this, e), o(\"<\" + this.opt.starType + \" />\", t).appendTo(this), this.opt.space && this.self.append(e < this.opt.number ? \"&#160;\" : \"\")\n            }\n            this.stars = this.self.children(this.opt.starType)\n        },\n        _error: function(e) {\n            o(this).text(e), o.error(e)\n        },\n        _fill: function(e) {\n            for (var t = 0, n = 1; n <= this.stars.length; n++) {\n                var i, o, r = this.stars[n - 1],\n                    a = s._turnOn.call(this, n, e);\n                this.opt.iconRange && this.opt.iconRange.length > t ? (i = this.opt.iconRange[t], o = s._getRangeIcon.call(this, i, a), n <= i.range && s._setIcon.call(this, r, o), n === i.range && t++) : (o = this.opt[a ? \"starOn\" : \"starOff\"], s._setIcon.call(this, r, o))\n            }\n        },\n        _getFirstDecimal: function(e) {\n            var e = e.toString().split(\".\")[1],\n                t = 0;\n            return e && (t = parseInt(e.charAt(0), 10), \"9999\" === e.slice(1, 5)) && t++, t\n        },\n        _getRangeIcon: function(e, t) {\n            return t ? e.on || this.opt.starOn : e.off || this.opt.starOff\n        },\n        _getScoreByPosition: function(e, t) {\n            var n, i = parseInt(t.alt || t.getAttribute(\"data-alt\"), 10);\n            return this.opt.half && (n = s._getWidth.call(this), i = i - 1 + parseFloat((e.pageX - o(t).offset().left) / n)), i\n        },\n        _getHint: function(e, t) {\n            var n, i, o;\n            return 0 === e || e ? (n = s._getFirstDecimal.call(this, e), i = Math.ceil(e), o = i = this.opt.hints[(i || 1) - 1], t = !t || this.move, this.opt.precision ? o = i[n = t ? 0 === n ? 9 : n - 1 : n] : (this.opt.halfShow || this.opt.half) && (o = i[n = t && 0 === n || 5 < n ? 1 : 0]), \"\" === o ? \"\" : o || e) : this.opt.noRatedMsg\n        },\n        _getWidth: function() {\n            var e = this.stars[0].width || parseFloat(this.stars.eq(0).css(\"font-size\"));\n            return e || s._error.call(this, \"Could not get the icon width!\"), e\n        },\n        _lock: function() {\n            var e = s._getHint.call(this, this.score.val());\n            this.style.cursor = \"\", this.title = e, this.score.prop(\"readonly\", !0), this.stars.prop(\"title\", e), this.cancel && this.cancel.hide(), this.self.data(\"readonly\", !0)\n        },\n        _nameForIndex: function(e) {\n            return this.opt.score && this.opt.score >= e ? \"starOn\" : \"starOff\"\n        },\n        _resetTitle: function(e) {\n            for (var t = 0; t < this.opt.number; t++) this.stars[t].title = s._getHint.call(this, t + 1)\n        },\n        _roundHalfScore: function(e) {\n            var t = parseInt(e, 10),\n                e = s._getFirstDecimal.call(this, e);\n            return t + (e = 0 !== e ? 5 < e ? 1 : .5 : e)\n        },\n        _roundStars: function(e, t) {\n            var n, i = (e % 1).toFixed(2);\n            t || this.move ? n = .5 < i ? \"starOn\" : \"starHalf\" : i > this.opt.round.down && (n = \"starOn\", this.opt.halfShow && i < this.opt.round.up ? n = \"starHalf\" : i < this.opt.round.full && (n = \"starOff\")), n && (t = this.opt[n], i = this.stars[Math.ceil(e) - 1], s._setIcon.call(this, i, t))\n        },\n        _setIcon: function(e, t) {\n            e[\"img\" === this.opt.starType ? \"src\" : \"className\"] = this.opt.path + t\n        },\n        _setTarget: function(e, t) {\n            t = t && this.opt.targetFormat.toString().replace(\"{score}\", t), e.is(\":input\") ? e.val(t) : e.html(t)\n        },\n        _setTitle: function(e, t) {\n            var n;\n            e && (n = parseInt(Math.ceil(e), 10), this.stars[n - 1].title = s._getHint.call(this, e, t))\n        },\n        _target: function(e, t) {\n            var n, i;\n            this.opt.target && ((n = o(this.opt.target)).length || s._error.call(this, \"Target selector invalid or missing!\"), i = t && \"mouseover\" === t.type, void 0 === e ? e = this.opt.targetText : null === e ? e = i ? this.opt.cancelHint : this.opt.targetText : (\"hint\" === this.opt.targetType ? e = s._getHint.call(this, e, t) : this.opt.precision && (e = parseFloat(e).toFixed(1)), t = t && \"mousemove\" === t.type, i || t || this.opt.targetKeep || (e = this.opt.targetText)), s._setTarget.call(this, n, e))\n        },\n        _turnOn: function(e, t) {\n            return this.opt.single ? e === t : e <= t\n        },\n        _unlock: function() {\n            this.style.cursor = \"pointer\", this.removeAttribute(\"title\"), this.score.removeAttr(\"readonly\"), this.self.data(\"readonly\", !1);\n            for (var e = 0; e < this.opt.number; e++) this.stars[e].title = s._getHint.call(this, e + 1);\n            this.cancel && this.cancel.css(\"display\", \"\")\n        },\n        cancel: function(t) {\n            return this.each(function() {\n                var e = o(this);\n                !0 !== e.data(\"readonly\") && (s[t ? \"click\" : \"score\"].call(e, null), this.score.removeAttr(\"value\"))\n            })\n        },\n        click: function(e) {\n            return this.each(function() {\n                !0 !== o(this).data(\"readonly\") && (e = s._adjustedScore.call(this, e), s._apply.call(this, e), this.opt.click && this.opt.click.call(this, e, o.Event(\"click\")), s._target.call(this, e))\n            })\n        },\n        destroy: function() {\n            return this.each(function() {\n                var e = o(this),\n                    t = e.data(\"raw\");\n                t ? e.off(\".raty\").empty().css({\n                    cursor: t.style.cursor\n                }).removeData(\"readonly\") : e.data(\"raw\", e.clone()[0])\n            })\n        },\n        getScore: function() {\n            var e, t = [];\n            return this.each(function() {\n                e = this.score.val(), t.push(e ? +e : void 0)\n            }), 1 < t.length ? t : t[0]\n        },\n        move: function(i) {\n            return this.each(function() {\n                var e = parseInt(i, 10),\n                    t = s._getFirstDecimal.call(this, i);\n                e >= this.opt.number && (e = this.opt.number - 1, t = 10);\n                var n = s._getWidth.call(this) / 10,\n                    e = o(this.stars[e]),\n                    n = e.offset().left + n * t,\n                    t = o.Event(\"mousemove\", {\n                        pageX: n\n                    });\n                this.move = !0, e.trigger(t), this.move = !1\n            })\n        },\n        readOnly: function(t) {\n            return this.each(function() {\n                var e = o(this);\n                e.data(\"readonly\") !== t && ((t ? (e.off(\".raty\").children(\"img\").off(\".raty\"), s._lock) : (s._binds.call(this), s._unlock)).call(this), e.data(\"readonly\", t))\n            })\n        },\n        reload: function() {\n            return s.set.call(this, {})\n        },\n        score: function() {\n            var e = o(this);\n            return arguments.length ? s.setScore.apply(e, arguments) : s.getScore.call(e)\n        },\n        set: function(e) {\n            return this.each(function() {\n                o(this).raty(o.extend({}, this.opt, e))\n            })\n        },\n        setScore: function(e) {\n            return this.each(function() {\n                !0 !== o(this).data(\"readonly\") && (e = s._adjustedScore.call(this, e), s._apply.call(this, e), s._target.call(this, e))\n            })\n        }\n    };\n    o.fn.raty = function(e) {\n        return s[e] ? s[e].apply(this, Array.prototype.slice.call(arguments, 1)) : \"object\" != typeof e && e ? void o.error(\"Method \" + e + \" does not exist!\") : s.init.apply(this, arguments)\n    }, o.fn.raty.defaults = {\n        cancel: !1,\n        cancelClass: \"raty-cancel\",\n        cancelHint: \"Cancel this rating!\",\n        cancelOff: \"cancel-off.png\",\n        cancelOn: \"cancel-on.png\",\n        cancelPlace: \"left\",\n        click: void 0,\n        half: !1,\n        halfShow: !0,\n        hints: [\"bad\", \"poor\", \"regular\", \"good\", \"gorgeous\"],\n        iconRange: void 0,\n        mouseout: void 0,\n        mouseover: void 0,\n        noRatedMsg: \"Not rated yet!\",\n        number: 5,\n        numberMax: 20,\n        path: void 0,\n        precision: !1,\n        readOnly: !1,\n        round: {\n            down: .25,\n            full: .6,\n            up: .76\n        },\n        score: void 0,\n        scoreName: \"score\",\n        single: !1,\n        space: !0,\n        starHalf: \"star-half.png\",\n        starOff: \"star-off.png\",\n        starOn: \"star-on.png\",\n        starType: \"img\",\n        target: void 0,\n        targetFormat: \"{score}\",\n        targetKeep: !1,\n        targetScore: void 0,\n        targetText: \"\",\n        targetType: \"hint\"\n    }\n})(jQuery), (e => {\n    (jQuery.browser = jQuery.browser || {}).mobile = /(android|bb\\d+|meego).+mobile|avantgo|bada\\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(ad|hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i.test(e) || /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\\-(n|u)|c55\\/|capi|ccwa|cdm\\-|cell|chtm|cldc|cmd\\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\\-s|devi|dica|dmob|do(c|p)o|ds(12|\\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\\-|_)|g1 u|g560|gene|gf\\-5|g\\-mo|go(\\.w|od)|gr(ad|un)|haie|hcit|hd\\-(m|p|t)|hei\\-|hi(pt|ta)|hp( i|ip)|hs\\-c|ht(c(\\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\\-(20|go|ma)|i230|iac( |\\-|\\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\\/)|klon|kpt |kwc\\-|kyo(c|k)|le(no|xi)|lg( g|\\/(k|l|u)|50|54|\\-[a-w])|libw|lynx|m1\\-w|m3ga|m50\\/|ma(te|ui|xo)|mc(01|21|ca)|m\\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\\-2|po(ck|rt|se)|prox|psio|pt\\-g|qa\\-a|qc(07|12|21|32|60|\\-[2-7]|i\\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\\-|oo|p\\-)|sdk\\/|se(c(\\-|0|1)|47|mc|nd|ri)|sgh\\-|shar|sie(\\-|m)|sk\\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\\-|v\\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\\-|tdg\\-|tel(i|m)|tim\\-|t\\-mo|to(pl|sh)|ts(70|m\\-|m3|m5)|tx\\-9|up(\\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\\-|your|zeto|zte\\-/i.test(e.substr(0, 4))\n})(navigator.userAgent || navigator.vendor || window.opera), (a => {\n    a.expr[\":\"].onScreen = function(e) {\n        var t = a(window),\n            n = t.scrollTop(),\n            t = t.height(),\n            i = n + t,\n            e = a(e),\n            o = e.offset().top,\n            e = e.height(),\n            r = o + e;\n        return n <= o && o < i || n < r && r <= i || t < e && o <= n && i <= r\n    }\n})(jQuery), ((e, t) => {\n    \"object\" == typeof exports && \"object\" == typeof module ? module.exports = t() : \"function\" == typeof define && define.amd ? define([], t) : \"object\" == typeof exports ? exports.postscribe = t() : e.postscribe = t()\n})(this, function() {\n    return i = [function(e, t, n) {\n        var n = n(1),\n            n = (n = n) && n.__esModule ? n : {\n                default: n\n            };\n        e.exports = n.default\n    }, function(e, t, n) {\n        function s() {}\n\n        function l() {\n            var e, t = a.shift();\n            t && ((e = o.last(t)).afterDequeue(), t.stream = function(e, t, i) {\n                function o(e) {\n                    e = i.beforeWrite(e), p.write(e), i.afterWrite(e)\n                }(p = new d.default(e, i)).id = h++, p.name = i.name || p.id, c.streams[p.name] = p;\n                var n = e.ownerDocument,\n                    r = {\n                        close: n.close,\n                        open: n.open,\n                        write: n.write,\n                        writeln: n.writeln\n                    },\n                    a = (u(n, {\n                        close: s,\n                        open: s,\n                        write: function() {\n                            for (var e = arguments.length, t = Array(e), n = 0; n < e; n++) t[n] = arguments[n];\n                            return o(t.join(\"\"))\n                        },\n                        writeln: function() {\n                            for (var e = arguments.length, t = Array(e), n = 0; n < e; n++) t[n] = arguments[n];\n                            return o(t.join(\"\") + \"\\n\")\n                        }\n                    }), p.win.onerror || s);\n                return p.win.onerror = function(e, t, n) {\n                    i.error({\n                        msg: e + \" - \" + t + \": \" + n\n                    }), a.apply(p.win, [e, t, n])\n                }, p.write(t, function() {\n                    u(n, r), p.win.onerror = a, i.done(), p = null, l()\n                }), p\n            }.apply(void 0, t), e.afterStreamStart())\n        }\n\n        function c(e, t, n) {\n            if (o.isFunction(n)) n = {\n                done: n\n            };\n            else if (\"clear\" === n) return a = [], p = null, void(h = 0);\n            n = o.defaults(n, r);\n            var i = [e = /^#/.test(e) ? window.document.getElementById(e.substr(1)) : e.jquery ? e[0] : e, t, n];\n            return e.postscribe = {\n                cancel: function() {\n                    i.stream ? i.stream.abort() : i[1] = s\n                }\n            }, n.beforeEnqueue(i), a.push(i), p || l(), e.postscribe\n        }\n        t.__esModule = !0;\n        var u = Object.assign || function(e) {\n                for (var t = 1; t < arguments.length; t++) {\n                    var n, i = arguments[t];\n                    for (n in i) Object.prototype.hasOwnProperty.call(i, n) && (e[n] = i[n])\n                }\n                return e\n            },\n            t = (t.default = c, n(2)),\n            d = (t = t) && t.__esModule ? t : {\n                default: t\n            },\n            o = (e => {\n                if (e && e.__esModule) return e;\n                var t = {};\n                if (null != e)\n                    for (var n in e) Object.prototype.hasOwnProperty.call(e, n) && (t[n] = e[n]);\n                return t.default = e, t\n            })(n(4)),\n            r = {\n                afterAsync: s,\n                afterDequeue: s,\n                afterStreamStart: s,\n                afterWrite: s,\n                autoFix: !0,\n                beforeEnqueue: s,\n                beforeWriteToken: function(e) {\n                    return e\n                },\n                beforeWrite: function(e) {\n                    return e\n                },\n                done: s,\n                error: function(e) {\n                    throw new Error(e.msg)\n                },\n                releaseAsync: !1\n            },\n            h = 0,\n            a = [],\n            p = null;\n        u(c, {\n            streams: {},\n            queue: a,\n            WriteStream: d.default\n        })\n    }, function(e, t, n) {\n        function i(e, t) {\n            e = e.getAttribute(u + t);\n            return l.existy(e) ? String(e) : e\n        }\n\n        function o(e, t, n) {\n            n = 2 < arguments.length && void 0 !== n ? n : null, t = u + t;\n            l.existy(n) && \"\" !== n ? e.setAttribute(t, n) : e.removeAttribute(t)\n        }\n        t.__esModule = !0;\n        var s = Object.assign || function(e) {\n                for (var t = 1; t < arguments.length; t++) {\n                    var n, i = arguments[t];\n                    for (n in i) Object.prototype.hasOwnProperty.call(i, n) && (e[n] = i[n])\n                }\n                return e\n            },\n            r = n(3),\n            a = (r = r) && r.__esModule ? r : {\n                default: r\n            },\n            l = (e => {\n                if (e && e.__esModule) return e;\n                var t = {};\n                if (null != e)\n                    for (var n in e) Object.prototype.hasOwnProperty.call(e, n) && (t[n] = e[n]);\n                return t.default = e, t\n            })(n(4)),\n            u = \"data-ps-\",\n            d = \"ps-style\",\n            h = \"ps-script\";\n\n        function c(e) {\n            var t = 1 < arguments.length && void 0 !== arguments[1] ? arguments[1] : {},\n                n = this,\n                i = c;\n            if (!(n instanceof i)) throw new TypeError(\"Cannot call a class as a function\");\n            this.root = e, this.options = t, this.doc = e.ownerDocument, this.win = this.doc.defaultView || this.doc.parentWindow, this.parser = new a.default(\"\", {\n                autoFix: t.autoFix\n            }), this.actuals = [e], this.proxyHistory = \"\", this.proxyRoot = this.doc.createElement(e.nodeName), this.scriptStack = [], this.writeQueue = [], o(this.proxyRoot, \"proxyof\", 0)\n        }\n        c.prototype.write = function() {\n            var e;\n            for ((e = this.writeQueue).push.apply(e, arguments); !this.deferredRemote && this.writeQueue.length;) {\n                var t = this.writeQueue.shift();\n                l.isFunction(t) ? this._callFunction(t) : this._writeImpl(t)\n            }\n        }, c.prototype._callFunction = function(e) {\n            var t = {\n                type: \"function\",\n                value: e.name || e.toString()\n            };\n            this._onScriptStart(t), e.call(this.win, this.doc), this._onScriptDone(t)\n        }, c.prototype._writeImpl = function(e) {\n            this.parser.append(e);\n            for (var t = void 0, n = void 0, i = void 0, o = [];\n                (t = this.parser.readToken()) && !(n = l.isScript(t)) && !(i = l.isStyle(t));)(t = this.options.beforeWriteToken(t)) && o.push(t);\n            0 < o.length && this._writeStaticTokens(o), n && this._handleScriptToken(t), i && this._handleStyleToken(t)\n        }, c.prototype._writeStaticTokens = function(e) {\n            e = this._buildChunk(e);\n            return e.actual ? (e.html = this.proxyHistory + e.actual, this.proxyHistory += e.proxy, this.proxyRoot.innerHTML = e.html, this._walkChunk(), e) : null\n        }, c.prototype._buildChunk = function(e) {\n            for (var t = this.actuals.length, n = [], i = [], o = [], r = e.length, a = 0; a < r; a++) {\n                var s, l = e[a],\n                    c = l.toString();\n                n.push(c), l.attrs ? /^noscript$/i.test(l.tagName) || (s = t++, i.push(c.replace(/(\\/?>)/, \" \" + u + \"id=\" + s + \" $1\")), l.attrs.id !== h && l.attrs.id !== d && o.push(\"atomicTag\" === l.type ? \"\" : \"<\" + l.tagName + \" \" + u + \"proxyof=\" + s + (l.unary ? \" />\" : \">\"))) : (i.push(c), o.push(\"endTag\" === l.type ? c : \"\"))\n            }\n            return {\n                tokens: e,\n                raw: n.join(\"\"),\n                actual: i.join(\"\"),\n                proxy: o.join(\"\")\n            }\n        }, c.prototype._walkChunk = function() {\n            for (var e, t = [this.proxyRoot]; l.existy(e = t.shift());) {\n                var n = 1 === e.nodeType;\n                !(n && i(e, \"proxyof\")) && (n && o(this.actuals[i(e, \"id\")] = e, \"id\"), n = e.parentNode && i(e.parentNode, \"proxyof\")) && this.actuals[n].appendChild(e), t.unshift.apply(t, l.toArray(e.childNodes))\n            }\n        }, c.prototype._handleScriptToken = function(e) {\n            var t = this,\n                n = this.parser.clear();\n            n && this.writeQueue.unshift(n), e.src = e.attrs.src || e.attrs.SRC, (e = this.options.beforeWriteToken(e)) && (e.src && this.scriptStack.length ? this.deferredRemote = e : this._onScriptStart(e), this._writeScriptToken(e, function() {\n                t._onScriptDone(e)\n            }))\n        }, c.prototype._handleStyleToken = function(e) {\n            var t = this.parser.clear();\n            t && this.writeQueue.unshift(t), e.type = e.attrs.type || e.attrs.TYPE || \"text/css\", (e = this.options.beforeWriteToken(e)) && this._writeStyleToken(e), t && this.write()\n        }, c.prototype._writeStyleToken = function(e) {\n            var t = this._buildStyle(e);\n            this._insertCursor(t, d), e.content && (t.styleSheet && !t.sheet ? t.styleSheet.cssText = e.content : t.appendChild(this.doc.createTextNode(e.content)))\n        }, c.prototype._buildStyle = function(e) {\n            var n = this.doc.createElement(e.tagName);\n            return n.setAttribute(\"type\", e.type), l.eachKey(e.attrs, function(e, t) {\n                n.setAttribute(e, t)\n            }), n\n        }, c.prototype._insertCursor = function(e, t) {\n            this._writeImpl('<span id=\"' + t + '\"/>');\n            t = this.doc.getElementById(t);\n            t && t.parentNode.replaceChild(e, t)\n        }, c.prototype._onScriptStart = function(e) {\n            e.outerWrites = this.writeQueue, this.writeQueue = [], this.scriptStack.unshift(e)\n        }, c.prototype._onScriptDone = function(e) {\n            return e !== this.scriptStack[0] ? void this.options.error({\n                msg: \"Bad script nesting or script finished twice\"\n            }) : (this.scriptStack.shift(), this.write.apply(this, e.outerWrites), void(!this.scriptStack.length && this.deferredRemote && (this._onScriptStart(this.deferredRemote), this.deferredRemote = null)))\n        }, c.prototype._writeScriptToken = function(e, t) {\n            var n = this._buildScript(e),\n                i = this._shouldRelease(n),\n                o = this.options.afterAsync;\n            e.src && (n.src = e.src, this._scriptLoadHandler(n, i ? o : function() {\n                t(), o()\n            }));\n            try {\n                this._insertCursor(n, h), n.src && !i || t()\n            } catch (e) {\n                this.options.error(e), t()\n            }\n        }, c.prototype._buildScript = function(e) {\n            var n = this.doc.createElement(e.tagName);\n            return l.eachKey(e.attrs, function(e, t) {\n                n.setAttribute(e, t)\n            }), e.content && (n.text = e.content), n\n        }, c.prototype._scriptLoadHandler = function(t, n) {\n            function i() {\n                t = t.onload = t.onreadystatechange = t.onerror = null\n            }\n\n            function e() {\n                i(), null != n && n(), n = null\n            }\n\n            function o(e) {\n                i(), a(e), null != n && n(), n = null\n            }\n\n            function r(e, t) {\n                var n = e[\"on\" + t];\n                null != n && (e[\"_on\" + t] = n)\n            }\n            var a = this.options.error;\n            r(t, \"load\"), r(t, \"error\"), s(t, {\n                onload: function() {\n                    if (t._onload) try {\n                        t._onload.apply(this, Array.prototype.slice.call(arguments, 0))\n                    } catch (e) {\n                        o({\n                            msg: \"onload handler failed \" + e + \" @ \" + t.src\n                        })\n                    }\n                    e()\n                },\n                onerror: function() {\n                    if (t._onerror) try {\n                        t._onerror.apply(this, Array.prototype.slice.call(arguments, 0))\n                    } catch (e) {\n                        return void o({\n                            msg: \"onerror handler failed \" + e + \" @ \" + t.src\n                        })\n                    }\n                    o({\n                        msg: \"remote script failed \" + t.src\n                    })\n                },\n                onreadystatechange: function() {\n                    /^(loaded|complete)$/.test(t.readyState) && e()\n                }\n            })\n        }, c.prototype._shouldRelease = function(e) {\n            return !/^script$/i.test(e.nodeName) || !!(this.options.releaseAsync && e.src && e.hasAttribute(\"async\"))\n        }, t.default = c\n    }, function(e, t, n) {\n        function i(e) {\n            var t;\n            return (r[e] || (t = r[e] = {\n                exports: {},\n                id: e,\n                loaded: !1\n            }, o[e].call(t.exports, t, t.exports, i), t.loaded = !0, t)).exports\n        }\n        var o, r;\n        e.exports = (o = [function(e, t, n) {\n            var n = n(1),\n                n = (n = n) && n.__esModule ? n : {\n                    default: n\n                };\n            e.exports = n.default\n        }, function(e, t, n) {\n            function i(e) {\n                if (e && e.__esModule) return e;\n                var t = {};\n                if (null != e)\n                    for (var n in e) Object.prototype.hasOwnProperty.call(e, n) && (t[n] = e[n]);\n                return t.default = e, t\n            }\n            t.__esModule = !0;\n            var o, l = i(n(2)),\n                r = i(n(3)),\n                a = n(6),\n                c = (a = a) && a.__esModule ? a : {\n                    default: a\n                },\n                s = n(5),\n                u = {\n                    comment: /^<!--/,\n                    endTag: /^<\\//,\n                    atomicTag: /^<\\s*(script|style|noscript|iframe|textarea)[\\s\\/>]/i,\n                    startTag: /^</,\n                    chars: /^[^<]/\n                },\n                d = (h.prototype.append = function(e) {\n                    this.stream += e\n                }, h.prototype.prepend = function(e) {\n                    this.stream = e + this.stream\n                }, h.prototype._readTokenImpl = function() {\n                    var e = this._peekTokenImpl();\n                    if (e) return this.stream = this.stream.slice(e.length), e\n                }, h.prototype._peekTokenImpl = function() {\n                    for (var e in u)\n                        if (u.hasOwnProperty(e) && u[e].test(this.stream)) {\n                            e = r[e](this.stream);\n                            if (e) return \"startTag\" === e.type && /script|style/i.test(e.tagName) ? null : (e.text = this.stream.substr(0, e.length), e)\n                        }\n                }, h.prototype.peekToken = function() {\n                    return this._peekToken()\n                }, h.prototype.readToken = function() {\n                    return this._readToken()\n                }, h.prototype.readTokens = function(e) {\n                    for (var t; t = this.readToken();)\n                        if (e[t.type] && !1 === e[t.type](t)) return\n                }, h.prototype.clear = function() {\n                    var e = this.stream;\n                    return this.stream = \"\", e\n                }, h.prototype.rest = function() {\n                    return this.stream\n                }, h);\n\n            function h() {\n                var e = this,\n                    t = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : \"\",\n                    n = 1 < arguments.length && void 0 !== arguments[1] ? arguments[1] : {},\n                    i = this,\n                    o = h;\n                if (!(i instanceof o)) throw new TypeError(\"Cannot call a class as a function\");\n                this.stream = t;\n                var r, a = !1,\n                    s = {};\n                for (r in l) l.hasOwnProperty(r) && (n.autoFix && (s[r + \"Fix\"] = !0), a = a || s[r + \"Fix\"]);\n                a ? (this._readToken = (0, c.default)(this, s, function() {\n                    return e._readTokenImpl()\n                }), this._peekToken = (0, c.default)(this, s, function() {\n                    return e._peekTokenImpl()\n                })) : (this._readToken = this._readTokenImpl, this._peekToken = this._peekTokenImpl)\n            }\n            for (o in (t.default = d).tokenToString = function(e) {\n                    return e.toString()\n                }, d.escapeAttributes = function(e) {\n                    var t, n = {};\n                    for (t in e) e.hasOwnProperty(t) && (n[t] = (0, s.escapeQuotes)(e[t], null));\n                    return n\n                }, d.supports = l) l.hasOwnProperty(o) && (d.browserHasFlaw = d.browserHasFlaw || !l[o] && o)\n        }, function(e, t) {\n            var n = !(t.__esModule = !0),\n                i = !1,\n                o = window.document.createElement(\"div\");\n            try {\n                var r = \"<P><I></P></I>\";\n                o.innerHTML = r, t.tagSoup = n = o.innerHTML !== r\n            } catch (e) {\n                t.tagSoup = n = !1\n            }\n            try {\n                o.innerHTML = \"<P><i><P></P></i></P>\", t.selfClose = i = 2 === o.childNodes.length\n            } catch (e) {\n                t.selfClose = i = !1\n            }\n            o = null, t.tagSoup = n, t.selfClose = i\n        }, function(e, t, n) {\n            function i(e) {\n                var n, i, o;\n                if (-1 !== e.indexOf(\">\")) {\n                    e = e.match(s.startTag);\n                    if (e) {\n                        n = {}, i = {}, o = e[2], e[2].replace(s.attr, function(e, t) {\n                            arguments[2] || arguments[3] || arguments[4] || arguments[5] ? arguments[5] ? (n[arguments[5]] = \"\", i[arguments[5]] = !0) : n[t] = arguments[2] || arguments[3] || arguments[4] || s.fillAttr.test(t) && t || \"\" : n[t] = \"\", o = o.replace(e, \"\")\n                        });\n                        e = {\n                            v: new a.StartTagToken(e[1], e[0].length, n, i, !!e[3], o.replace(/^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g, \"\"))\n                        };\n                        if (\"object\" === (void 0 === e ? \"undefined\" : r(e))) return e.v\n                    }\n                }\n            }\n            t.__esModule = !0;\n            var r = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function(e) {\n                    return typeof e\n                } : function(e) {\n                    return e && \"function\" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? \"symbol\" : typeof e\n                },\n                a = (t.comment = function(e) {\n                    var t = e.indexOf(\"--\\x3e\");\n                    if (0 <= t) return new a.CommentToken(e.substr(4, t - 1), t + 3)\n                }, t.chars = function(e) {\n                    var t = e.indexOf(\"<\");\n                    return new a.CharsToken(0 <= t ? t : e.length)\n                }, t.startTag = i, t.atomicTag = function(e) {\n                    var t = i(e);\n                    if (t) {\n                        e = e.slice(t.length);\n                        if (e.match(new RegExp(\"</\\\\s*\" + t.tagName + \"\\\\s*>\", \"i\"))) {\n                            e = e.match(new RegExp(\"([\\\\s\\\\S]*?)</\\\\s*\" + t.tagName + \"\\\\s*>\", \"i\"));\n                            if (e) return new a.AtomicTagToken(t.tagName, e[0].length + t.length, t.attrs, t.booleanAttrs, e[1])\n                        }\n                    }\n                }, t.endTag = function(e) {\n                    if (e = e.match(s.endTag)) return new a.EndTagToken(e[1], e[0].length)\n                }, n(4)),\n                s = {\n                    startTag: /^<([\\-A-Za-z0-9_]+)((?:\\s+[\\w\\-]+(?:\\s*=?\\s*(?:(?:\"[^\"]*\")|(?:'[^']*')|[^>\\s]+))?)*)\\s*(\\/?)>/,\n                    endTag: /^<\\/([\\-A-Za-z0-9_]+)[^>]*>/,\n                    attr: /(?:([\\-A-Za-z0-9_]+)\\s*=\\s*(?:(?:\"((?:\\\\.|[^\"])*)\")|(?:'((?:\\\\.|[^'])*)')|([^>\\s]+)))|(?:([\\-A-Za-z0-9_]+)(\\s|$)+)/g,\n                    fillAttr: /^(checked|compact|declare|defer|disabled|ismap|multiple|nohref|noresize|noshade|nowrap|readonly|selected)$/i\n                }\n        }, function(e, t, n) {\n            function a(e, t) {\n                if (!(e instanceof t)) throw new TypeError(\"Cannot call a class as a function\")\n            }\n            t.__esModule = !0, t.EndTagToken = t.AtomicTagToken = t.StartTagToken = t.TagToken = t.CharsToken = t.CommentToken = t.Token = void 0;\n            var r = n(5),\n                i = (t.Token = function e(t, n) {\n                    a(this, e), this.type = t, this.length = n, this.text = \"\"\n                }, t.CommentToken = (l.prototype.toString = function() {\n                    return \"\\x3c!--\" + this.content\n                }, l), t.CharsToken = (o.prototype.toString = function() {\n                    return this.text\n                }, o), t.TagToken = (s.formatTag = function(e) {\n                    var t, n, i = 1 < arguments.length && void 0 !== arguments[1] ? arguments[1] : null,\n                        o = \"<\" + e.tagName;\n                    for (t in e.attrs) e.attrs.hasOwnProperty(t) && (o += \" \" + t, n = e.attrs[t], void 0 !== e.booleanAttrs && void 0 !== e.booleanAttrs[t] || (o += '=\"' + (0, r.escapeQuotes)(n) + '\"'));\n                    return e.rest && (o += \" \" + e.rest), o += e.unary && !e.html5Unary ? \"/>\" : \">\", null != i && (o += i + \"</\" + e.tagName + \">\"), o\n                }, s));\n\n            function s(e, t, n, i, o) {\n                a(this, s), this.type = e, this.length = n, this.text = \"\", this.tagName = t, this.attrs = i, this.booleanAttrs = o, this.unary = !1, this.html5Unary = !1\n            }\n\n            function o(e) {\n                a(this, o), this.type = \"chars\", this.length = e, this.text = \"\"\n            }\n\n            function l(e, t) {\n                a(this, l), this.type = \"comment\", this.length = t || (e ? e.length : 0), this.text = \"\", this.content = e\n            }\n\n            function c(e, t) {\n                a(this, c), this.type = \"endTag\", this.length = t, this.text = \"\", this.tagName = e\n            }\n\n            function u(e, t, n, i, o) {\n                a(this, u), this.type = \"atomicTag\", this.length = t, this.text = \"\", this.tagName = e, this.attrs = n, this.booleanAttrs = i, this.unary = !1, this.html5Unary = !1, this.content = o\n            }\n\n            function d(e, t, n, i, o, r) {\n                a(this, d), this.type = \"startTag\", this.length = t, this.text = \"\", this.tagName = e, this.attrs = n, this.booleanAttrs = i, this.html5Unary = !1, this.unary = o, this.rest = r\n            }\n            t.StartTagToken = (d.prototype.toString = function() {\n                return i.formatTag(this)\n            }, d), t.AtomicTagToken = (u.prototype.toString = function() {\n                return i.formatTag(this, this.content)\n            }, u), t.EndTagToken = (c.prototype.toString = function() {\n                return \"</\" + this.tagName + \">\"\n            }, c)\n        }, function(e, t) {\n            t.__esModule = !0, t.escapeQuotes = function(e) {\n                var t = 1 < arguments.length && void 0 !== arguments[1] ? arguments[1] : \"\";\n                return e ? e.replace(/([^\"]*)\"/g, function(e, t) {\n                    return /\\\\/.test(t) ? t + '\"' : t + '\\\\\"'\n                }) : t\n            }\n        }, function(e, t) {\n            function l(e) {\n                return e && \"startTag\" === e.type && (e.unary = n.test(e.tagName) || e.unary, e.html5Unary = !/\\/>$/.test(e.text)), e\n            }\n\n            function c(e, t) {\n                t = t.pop();\n                e.prepend(\"</\" + t.tagName + \">\")\n            }\n            t.__esModule = !0, t.default = function(i, n, o) {\n                function r() {\n                    var e, t, n;\n                    t = o, n = (e = i).stream, t = l(o()), e.stream = n, t && s[t.type] && s[t.type](t)\n                }(e = []).last = function() {\n                    return this[this.length - 1]\n                }, e.lastTagNameEq = function(e) {\n                    var t = this.last();\n                    return t && t.tagName && t.tagName.toUpperCase() === e.toUpperCase()\n                }, e.containsTagName = function(e) {\n                    for (var t, n = 0; t = this[n]; n++)\n                        if (t.tagName === e) return !0;\n                    return !1\n                };\n                var e, a = e,\n                    s = {\n                        startTag: function(e) {\n                            var t = e.tagName;\n                            \"TR\" === t.toUpperCase() && a.lastTagNameEq(\"TABLE\") ? (i.prepend(\"<TBODY>\"), r()) : n.selfCloseFix && u.test(t) && a.containsTagName(t) ? a.lastTagNameEq(t) ? c(i, a) : (i.prepend(\"</\" + e.tagName + \">\"), r()) : e.unary || a.push(e)\n                        },\n                        endTag: function(e) {\n                            a.last() ? n.tagSoupFix && !a.lastTagNameEq(e.tagName) ? c(i, a) : a.pop() : n.tagSoupFix && (o(), r())\n                        }\n                    };\n                return function() {\n                    return r(), l(o())\n                }\n            };\n            var n = /^(AREA|BASE|BASEFONT|BR|COL|FRAME|HR|IMG|INPUT|ISINDEX|LINK|META|PARAM|EMBED)$/i,\n                u = /^(COLGROUP|DD|DT|LI|OPTIONS|P|TD|TFOOT|TH|THEAD|TR)$/i\n        }], r = {}, i.m = o, i.c = r, i.p = \"\", i(0))\n    }, function(e, t) {\n        function i(e) {\n            return null != e\n        }\n\n        function o(e, t, n) {\n            for (var i = void 0, o = e && e.length || 0, i = 0; i < o; i++) t.call(n, e[i], i)\n        }\n\n        function r(e, t, n) {\n            for (var i in e) e.hasOwnProperty(i) && t.call(n, i, e[i])\n        }\n\n        function n(e, t) {\n            return !(!e || \"startTag\" !== e.type && \"atomicTag\" !== e.type || !(\"tagName\" in e) || !~e.tagName.toLowerCase().indexOf(t))\n        }\n        t.__esModule = !0;\n        var a = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function(e) {\n            return typeof e\n        } : function(e) {\n            return e && \"function\" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? \"symbol\" : typeof e\n        };\n        t.existy = i, t.isFunction = function(e) {\n            return \"function\" == typeof e\n        }, t.each = o, t.eachKey = r, t.defaults = function(n, e) {\n            return n = n || {}, r(e, function(e, t) {\n                i(n[e]) || (n[e] = t)\n            }), n\n        }, t.toArray = function(t) {\n            try {\n                return Array.prototype.slice.call(t)\n            } catch (e) {\n                n = [], o(t, function(e) {\n                    n.push(e)\n                });\n                t = {\n                    v: n\n                };\n                if (\"object\" === (void 0 === t ? \"undefined\" : a(t))) return t.v\n            }\n            var n\n        }, t.last = function(e) {\n            return e[e.length - 1]\n        }, t.isTag = n, t.isScript = function(e) {\n            return n(e, \"script\")\n        }, t.isStyle = function(e) {\n            return n(e, \"style\")\n        }\n    }], o = {}, n.m = i, n.c = o, n.p = \"\", n(0);\n\n    function n(e) {\n        var t;\n        return (o[e] || (t = o[e] = {\n            exports: {},\n            id: e,\n            loaded: !1\n        }, i[e].call(t.exports, t, t.exports, n), t.loaded = !0, t)).exports\n    }\n    var i, o\n}), $(document).ready(function() {\n    var r, a, s, l;\n    $(\".btnModal\").click(function() {\n        var e = $(this).data(\"target\");\n        e && e.length && $(e).addClass(\"d-flex\")\n    }), $(\".btn-modal-close\").click(function() {\n        $(this).closest(\".modal\").removeClass(\"d-flex\")\n    }), $(\"#modalTrungCauYKien\").click(function(e) {\n        this == e.target && $(this).removeClass(\"d-flex\")\n    }), $(\"body\").is(\"#body_home\") && (r = $(\"#intro-index\").width(), a = $(\"#intro-index\").height(), s = $(\"#intro-index\").offset().top, l = $(\"#intro-index\").offset().left + parseInt($(\"#intro-index\").css(\"padding-left\")), $(\".index-intro .item\").each(function() {\n        var e = $(this),\n            t = $(\"img\", this),\n            n = $(e).width(),\n            i = $(e).height(),\n            o = $(e).offset().top;\n        (e = $(e).offset().left) >= l && s <= o && e + n <= l + r && o + i <= s + a + 1 && (t.attr(\"src\", t.attr(\"lazysrc\")), t.attr(\"lazysrc\", \"\"))\n    })), !$(\"body\").is(\"#body_truyen\") || $.browser.mobile || (() => {\n        var e, t, n = document.createElement(\"p\"),\n            i = {\n                webkitTransform: \"-webkit-transform\",\n                OTransform: \"-o-transform\",\n                msTransform: \"-ms-transform\",\n                MozTransform: \"-moz-transform\",\n                transform: \"transform\"\n            };\n        for (e in document.body.insertBefore(n, null), i) i.hasOwnProperty(e) && void 0 !== n.style[e] && (n.style[e] = \"translate3d(1px,1px,1px)\", t = window.getComputedStyle(n).getPropertyValue(i[e]));\n        return document.body.removeChild(n), void 0 !== t && 0 < t.length && \"none\" !== t\n    })() || $(\"#truyen\").removeClass(\"csstransforms3d\");\n    var e, t, n, i, o, c, u, d = $(\"#truyen-ascii\").val(),\n        h = $(\"#ten-truyen\").val(),\n        p = $(\"#truyen-id\").val(),\n        f = ($(\"body\").is(\"#body_truyen\") && update_views(p, \"truyen\"), $(\".navbar, .overlay-container\").on(\"click\", \".login-link\", function() {\n            $(\".overlay-container > div\").addClass(\"hide\"), $(\".overlay-container, .login-container\").removeClass(\"hide\")\n        }), $(\".navbar, .overlay-container\").on(\"click\", \".register-link\", function() {\n            $(\".overlay-container > div\").addClass(\"hide\"), $(\".overlay-container, .register-container\").removeClass(\"hide\")\n        }), $(\".overlay-container\").on(\"click\", \".forgot-link\", function() {\n            $(\".overlay-container > div\").addClass(\"hide\"), $(\".forgot-container .captcha-holder\").html('<img src=\"/captcha/' + $(\"#form-secure\").val() + '\" id=\"captcha-img\" alt=\"captcha\">'), $(\".overlay-container, .forgot-container\").removeClass(\"hide\")\n        }), $(\".navbar\").on(\"click\", \".logout-link\", function() {\n            $.post(\"/login.php\", {\n                type: \"logout\",\n                hash: $(\".logout-link\").data(\"hash\")\n            }).done(function(e) {\n                e = e ? JSON.parse(e) : null;\n                if (\"success\" == e.status) setTimeout(function() {\n                    location.reload()\n                }, 1e3);\n                else if (\"error\" == e.status) return alert(\"Có lỗi xảy ra, vui lòng báo cho admin nếu có thể.\"), !1\n            })\n        }), $(\".modal-close\").click(function() {\n            $(\".overlay-container, .overlay-container > div\").addClass(\"hide\")\n        }), p && ($(\"#truyen-comment\").val(), $.cookie(\"bgcolor-cookie\")),\n        m = (f && \"#F4F4F4\" != f && $(\"#truyen-background\").val(f), $(\"#truyen-background\").on(\"change\", function() {\n            var e = this.value;\n            h ? \"hatsan\" == e ? $(\"body\").css({\n                \"background-color\": \"#f2f2f2\",\n                \"background-image\": \"url('/wp-content/themes/dochay.me/assets/images/bg_op.png')\",\n                \"background-repeat\": \"repeat\"\n            }).removeClass(\"dark-theme\") : \"sachcu\" == e ? $(\"body\").css({\n                \"background-color\": \"#c2b49b\",\n                \"background-image\": \"url('/wp-content/themes/dochay.me/assets/images/bg_book_op.png')\",\n                \"background-repeat\": \"repeat\"\n            }).removeClass(\"dark-theme\") : \"#232323\" == e ? $(\"body\").css({\n                \"background-color\": e,\n                \"background-image\": \"url('/wp-content/themes/dochay.me/assets/images/bg_dark.gif')\",\n                \"background-repeat\": \"repeat\"\n            }).addClass(\"dark-theme\") : $(\"body\").css({\n                \"background-color\": e,\n                \"background-image\": \"none\"\n            }).removeClass(\"dark-theme\") : \"#232323\" == e ? $(\"body\").addClass(\"dark-theme\") : $(\"body\").removeClass(\"dark-theme\"), $.cookie(\"bgcolor-cookie\", e, {\n                expires: 365,\n                path: \"/\"\n            })\n        }), h && (f = $.cookie(\"font-cookie\"), e = $.cookie(\"size-cookie\"), t = $.cookie(\"lineheight-cookie\"), n = $.cookie(\"fluid-switch-cookie\"), i = $.cookie(\"onebreak-switch-cookie\"), o = $(\"#chapter-bnum\").val(), c = $(\"#chapter-num\").val(), $(\"#chapter-sac\").val(), f ? $(\"#font-chu\").val(f) : $.browser.mobile && $(\"#font-chu\").val(\"Arial, sans-serif\"), e ? $(\"#size-chu\").val(e) : $.browser.mobile || $(\"#size-chu\").val(\"22px\"), t && \"180%\" != t ? $(\"#line-height\").val(t) : $(\"#line-height\").val(\"180%\"), 1 == n && ($(\"#fluid-no\").attr(\"checked\", !1), $(\"#fluid-yes\").attr(\"checked\", !0)), 1 == i ? ($(\"#onebreak-no\").attr(\"checked\", !1), $(\"#onebreak-yes\").attr(\"checked\", !0)) : original_content = $(\".chapter-c\").html(), $(\"#font-chu\").on(\"change\", function() {\n            var e = this.value;\n            $(\".chapter-c\").css(\"font-family\", e), $.cookie(\"font-cookie\", e, {\n                expires: 365,\n                path: \"/\"\n            })\n        }), $(\"#size-chu\").on(\"change\", function() {\n            var e = this.value;\n            $(\".chapter-c\").css(\"font-size\", e), $.cookie(\"size-cookie\", e, {\n                expires: 365,\n                path: \"/\"\n            })\n        }), $(\"#line-height\").on(\"change\", function() {\n            var e = this.value;\n            $(\".chapter-c\").css(\"line-height\", e), $.cookie(\"lineheight-cookie\", e, {\n                expires: 365,\n                path: \"/\"\n            })\n        }), $(document.body).on(\"click\", \".chapter .toggle-nav-open\", function() {\n            1 == $.cookie(\"hidenav-cookie\") ? ($(\".navbar\").slideDown(300), $(this).html('<span class=\"glyphicon glyphicon-menu-up\"></span>'), $(\".chapter\").css(\"margin-top\", \"0\"), $.removeCookie(\"hidenav-cookie\", {\n                path: \"/\"\n            })) : ($(\".navbar\").slideUp(300), $(this).html('<span class=\"glyphicon glyphicon-menu-down\"></span>'), $(\".chapter\").css(\"margin-top\", \"10px\"), $.cookie(\"hidenav-cookie\", 1, {\n                expires: 365,\n                path: \"/\"\n            }))\n        }), $('input[name=\"fluid-switch\"]').click(function() {\n            \"yes\" == this.value ? ($(\".chapter\").removeClass(\"container\").addClass(\"container-fluid\"), $.cookie(\"fluid-switch-cookie\", 1, {\n                expires: 365,\n                path: \"/\"\n            })) : ($(\".chapter\").removeClass(\"container-fluid\").addClass(\"container\"), $.removeCookie(\"fluid-switch-cookie\", {\n                path: \"/\"\n            }))\n        }), $('input[name=\"onebreak-switch\"]').click(function() {\n            \"yes\" == this.value ? ($(\".chapter-c\").html($(\".chapter-c\").html().replace(/(<br\\s*\\/?>\\s*\\n?(&nbsp;)?){2,}/gi, \"<br>\")), $.cookie(\"onebreak-switch-cookie\", 1, {\n                expires: 365,\n                path: \"/\"\n            })) : (original_content && $(\".chapter-c\").html(original_content), $.removeCookie(\"onebreak-switch-cookie\", {\n                path: \"/\"\n            }))\n        }), $(document).keydown(function(e) {\n            !1 !== $(\"input[type='text'], input[type='search']\").is(\":focus\") || e.ctrlKey || (37 == e.which || 65 == e.which ? $(\"#prev_chap\")[0].click() : 39 == e.which || 68 == e.which ? $(\"#next_chap\")[0].click() : 83 == e.which ? (e = $(window).scrollTop(), $(window).scrollTop(e + 37)) : 87 == e.which && (e = $(window).scrollTop(), $(window).scrollTop(e - 37)))\n        }), $(\".chapter-nav\").on(\"click\", \"button.chapter_jump\", function() {\n            $(\"button.chapter_jump\").attr(\"disabled\", !0), $.get(\"/wp-admin/admin-ajax.php?action=tw_ajax\", {\n                type: \"chapter_option\",\n                data: p\n            }).done(function(e) {\n                var t = o ? \"quyen-\" + o + \"-\" : \"\";\n                e = e.replace(new RegExp(t + \"chuong-\" + c + '\">', \"g\"), t + \"chuong-\" + c + '\" selected>'), $(\".chapter_jump\").replaceWith(e)\n            })\n        }), $(\".chapter-nav\").on(\"click\", \"button#chapter_error\", function() {\n            var e = prompt(\"Vui lòng mô tả lỗi\", \"\");\n            if (null === e || !1 === e) return !1;\n            \"\" === e ? alert(\"Bạn chưa nhập mô tả. Báo lỗi không thành công.\") : ($(\"button#chapter_error\").addClass(\"hide\"), $.post(\"/wp-admin/admin-ajax.php?action=tw_ajax\", {\n                type: \"chapter_error\",\n                id: $(\"#chapter-id\").val(),\n                message: e\n            }), alert(\"Cảm ơn bạn đã báo nha.\"))\n        }), f = $(\".truyen-title\").text(), $.post(\"/wp-admin/admin-ajax.php?action=tw_ajax\", {\n            type: \"chapter_view_history\",\n            tid: p,\n            tenfull: f,\n            ten: h,\n            bnum: o,\n            num: c,\n            t: (new Date).getTime()\n        }), \"*Chương này có nội dung ảnh, nếu bạn không thấy nội dung chương, vui lòng bật chế độ hiện hình ảnh của trình duyệt để đọc.\" === $(\".chapter-c\").text()) && $(\".chapter-c\").addClass(\"no-br\"), $(\".dark-theme\").on(\"mouseover\", \".pagination li\", function() {\n            $(this).next().hasClass(\"active\") && $(this).children(\"a\").css({\n                \"border-right\": \"0\",\n                \"padding-right\": \"10px\"\n            })\n        })), null);\n    $(\"#search-input\").keyup(function() {\n        var e;\n        clearTimeout(m), 0 == (e = $(this).val()).length ? $(\".list-search-res\").html(\"\").addClass(\"hide\") : 3 <= e.length && ($(\".list-search-res\").html('<img src=\"/wp-content/themes/dochay.me/assets/images/loading-search.gif\" alt=\"loading\">').removeClass(\"hide\"), m = setTimeout(function() {\n            quick_search(e)\n        }, 500))\n    }), $(\"#search-input\").bind(\"paste\", function() {\n        clearTimeout(m);\n        var t = this;\n        setTimeout(function() {\n            var e = $(t).val();\n            0 == e.length ? $(\".list-search-res\").html(\"\").addClass(\"hide\") : 3 <= e.length && ($(\".list-search-res\").html('<img src=\"/wp-content/themes/dochay.me/assets/images/loading-search.gif\" alt=\"loading\">').removeClass(\"hide\"), m = setTimeout(function() {\n                quick_search(e)\n            }, 500))\n        }, 0)\n    }), $(\"html\").click(function(e) {\n        \"#search-input\" != e.target.id && $(\".list-search-res\").html(\"\").addClass(\"hide\")\n    }), $(\".top-nav\").on(\"click\", \"div\", function() {\n        var t = $(this),\n            e = t.attr(\"data-type\"),\n            n = t.parent().attr(\"data-limit\"),\n            i = t.parent().attr(\"data-cat\");\n        if (t.hasClass(\"active\")) return !1;\n        t.css({\n            cursor: \"default\",\n            \"pointer-events\": \"none\",\n            opacity: \"0.6\"\n        }), $.get(\"/wp-admin/admin-ajax.php?action=tw_ajax\", {\n            type: \"top_switch\",\n            data_type: e,\n            data_limit: n,\n            data_cat: i\n        }).done(function(e) {\n            $(\".top-nav div\").removeClass(\"active\"), t.addClass(\"active\"), t.css({\n                cursor: \"pointer\",\n                \"pointer-events\": \"auto\",\n                opacity: \"1\"\n            }), $(\".top-item\").remove(), $(\".top-nav\").after(e), $(\".top-item\").hide().fadeIn(300)\n        })\n    }), $(\".desc-text\").prop(\"scrollHeight\") > $(\".desc-text\").height() && $(\".showmore .btn\").removeClass(\"hide\"), $(\".dropdown-menu, #list-chapter\").on(\"click\", \"form\", function(e) {\n        e.stopPropagation()\n    }), $(\"#list-chapter\").on(\"submit\", \"#page_jump\", function(e) {\n        e.preventDefault();\n        var t = $(\"#page_jump\").find(\"button[type='submit']\"),\n            n = $(\"h1\").text(),\n            i = (e = $(\"#total-page\").val(), parseInt($(\"input[name='page']\").val(), 10));\n        isNumber(i = e < i ? e : i) && 0 == i % 1 && (t.css({\n            cursor: \"default\",\n            \"pointer-events\": \"none\",\n            opacity: \"0.6\"\n        }), $.get(\"/wp-admin/admin-ajax.php?action=tw_ajax\", {\n            type: \"list_chapter\",\n            tid: p,\n            tascii: d,\n            tname: n,\n            page: i,\n            totalp: e\n        }).done(function(e) {\n            e = e ? JSON.parse(e) : null;\n            ListChapProcess(n, d, i, e.page_list, e.chap_list), t.css({\n                cursor: \"pointer\",\n                \"pointer-events\": \"auto\",\n                opacity: \"1\"\n            })\n        }))\n    }), $(\"#list-chapter\").on(\"click\", \".pagination li a\", function(e) {\n        var t, n, i = $(this),\n            o = $(this).attr(\"href\");\n        \"javascript:void(0)\" != o && (e.preventDefault(), i.css({\n            cursor: \"default\",\n            \"pointer-events\": \"none\",\n            opacity: \"0.6\"\n        }), t = $(\"h1\").text(), e = $(\"#total-page\").val(), n = o == \"https://dochay.me/\" + d + \"#list-chapter\" ? 1 : (n = o.match(/(\\d+)(?!.*\\d)/))[1], $.get(\"/wp-admin/admin-ajax.php?action=tw_ajax\", {\n            type: \"list_chapter\",\n            tid: p,\n            tascii: d,\n            tname: t,\n            page: n,\n            totalp: e\n        }).done(function(e) {\n            e = e ? JSON.parse(e) : null;\n            ListChapProcess(t, d, n, e.page_list, e.chap_list), i.css({\n                cursor: \"pointer\",\n                \"pointer-events\": \"auto\",\n                opacity: \"1\"\n            })\n        }))\n    }), $(\"#body_home\").length && ($.get(\"/wp-admin/admin-ajax.php?action=tw_ajax\", {\n        type: \"read_history\",\n        t: (new Date).getTime()\n    }).done(function(e) {\n        e = e ? JSON.parse(e) : null;\n        e && ($(\"#history-holder\").replaceWith(e.main), $(\"#history-holder-side\").replaceWith(e.side))\n    }), $(\"#hot-select\").on(\"change\", function() {\n        var e = $(this).find(\":selected\").val();\n        $.get(\"/wp-admin/admin-ajax.php?action=tw_ajax\", {\n            type: \"hot_select\",\n            id: e\n        }).done(function(e) {\n            $(\".index-intro\").hide().html(e).fadeIn()\n        })\n    })), $(\"#new-select\").on(\"change\", function() {\n        var e = $(this).find(\":selected\").val();\n        $.get(\"/wp-admin/admin-ajax.php?action=tw_ajax\", {\n            type: \"new_select\",\n            id: e\n        }).done(function(e) {\n            $(\".list-new .row\").remove(), $(\".list-new .title-list\").after(e), $(\".list-new .row\").hide().fadeIn()\n        })\n    }), $(\"#contact-form\").submit(function(e) {\n        e.preventDefault(), e = $(\"#contact-name\").val();\n        var t = $(\"#contact-email\").val(),\n            n = $(\"#contact-subject\").val(),\n            i = $(\"#contact-message\").val(),\n            o = $(\"#contact-secure\").val();\n        if (!e || !n || !i) return FormError(\"Bạn vui lòng điền đủ thông tin liên hệ.\", \"contact-container\"), !1;\n        FormDisable(\".single-page-form\"), FormSuccess('<span class=\"glyphicon glyphicon-refresh glyphicon-refresh-animate\"></span> Chờ tí / Please wait...', \"contact-container\"), $.post(\"/wp-admin/admin-ajax.php?action=tw_ajax\", {\n            type: \"contact\",\n            name: e,\n            email: t,\n            subject: n,\n            message: i,\n            secure: o\n        }).done(function(e) {\n            e = e ? JSON.parse(e) : null;\n            FormEnable(\".single-page-form\"), \"success\" == e.status ? (FormSuccess(\"Bạn đã gửi nội dung liên hệ thành công! / Your message was sent successfully!\", \"contact-container\"), $(\"#contact-form\").trigger(\"reset\"), $(\"#contact-secure\").val(e.token)) : FormError(\"Gửi nội dung liên hệ thất bại, bạn vui lòng thử lại sau hoặc gửi email trực tiếp đến contact@dochay.me / Error, please try again later or send email directly to contact@dochay.me\", \"contact-container\")\n        })\n    }), $(\".pagination-container\").on(\"submit\", \"#page_jump\", function(e) {\n        e.preventDefault(), e = $(\"input[name='page_type']\").val();\n        var t = $(\"input[name='page']\").val(),\n            n = $(\"input[name='filter']\").val();\n        e ? isNumber(t) && 0 == t % 1 && (window.location.href = \"https://dochay.me/\" + e + \"/\" + d + n + \"?trang-\" + t + \"/\") : isNumber(t) && 0 == t % 1 && (window.location.href = \"https://dochay.me/\" + d + \"?trang-\" + t + \"#list-chapter\")\n    }), $(\"#chapter-nav-top, #chapter-nav-bot\").on(\"change\", \".chapter_jump\", function() {\n        $(\"option:selected\", this);\n        var e = this.value;\n        e && h && (window.location.href = \"https://dochay.me/\" + h + \"/\" + e + \"/\")\n    }), $(\"#truyen\").on(\"click\", \".showmore .btn\", function(e) {\n        e.preventDefault(), $(\".desc-text\").css(\"height\", \"auto\"), $(\".showmore\").css(\"height\", 0), $(this).addClass(\"hide\")\n    }), $(\".rate-holder\").raty({\n        number: 10,\n        path: \"/wp-content/themes/dochay.me/assets/images/raty\",\n        noRatedMsg: \"Đã đánh giá\",\n        hints: \"Không còn gì để nói...;WTF;Cái gì thế này ?!;Haizz;Tạm;Cũng được;Khá đấy;Được;Hay;Tuyệt đỉnh!\".split(\";\"),\n        target: \".rate-text\",\n        score: function() {\n            return $(this).attr(\"data-score\")\n        },\n        click: function(e) {\n            $(\".rate-holder\").raty(\"readOnly\", !0), $.post(\"/wp-admin/admin-ajax.php?action=tw_ajax\", {\n                type: \"rate\",\n                data: e,\n                id: p\n            }), localStorage.setItem(p, \"rated\"), alert(\"Cảm ơn bạn đã đánh giá truyện!\")\n        },\n        readOnly: function() {\n            if (\"rated\" == localStorage.getItem(p)) return !0\n        }\n    }), randomso(1, 8), $(\"div.lazyimg\").length && ((u = function() {\n        $(\"div.lazyimg\").each(function() {\n            var e, t, n;\n            $(this).is(\":onScreen\") && (n = $.browser.mobile ? $(this).data(\"image\") : $(this).data(\"desk-image\"), e = $(this).data(\"classname\"), t = $(this).data(\"alt\"), n = e ? '<img src=\"' + n + '\" class=\"' + e + '\" alt=\"' + t + '\">' : '<img src=\"' + n + '\" alt=\"' + t + '\">', $(this).replaceWith(n))\n        })\n    })(), $(window).scroll(function() {\n        u()\n    })), $.browser.mobile && $(\".col-truyen-main\").addClass(\"no-hover\")\n}), (f => {\n    (function() {\n        if (\"undefined\" != typeof module && module.exports) return function(e) {\n            module.exports = e()\n        };\n        if (\"function\" == typeof define && define.amd) return define;\n        if (\"undefined\" != typeof window) return function(e) {\n            window.MobileDetect = e()\n        };\n        throw new Error(\"unknown environment\")\n    })()(function() {\n        function t(e, t) {\n            return null != e && null != t && e.toLowerCase() === t.toLowerCase()\n        }\n\n        function n(e, t) {\n            var n, i, o = e.length;\n            if (o && t)\n                for (n = t.toLowerCase(), i = 0; i < o; ++i)\n                    if (n === e[i].toLowerCase()) return !0;\n            return !1\n        }\n\n        function e(e) {\n            for (var t in e) d.call(e, t) && (e[t] = new RegExp(e[t], \"i\"))\n        }\n\n        function o(e, t) {\n            this.ua = (e || \"\").substr(0, 500), this._cache = {}, this.maxPhoneWidth = t || 600\n        }\n        var i, r, a, s, l, c, u = {\n                mobileDetectRules: {\n                    phones: {\n                        iPhone: \"\\\\biPhone\\\\b|\\\\biPod\\\\b\",\n                        BlackBerry: \"BlackBerry|\\\\bBB10\\\\b|rim[0-9]+|\\\\b(BBA100|BBB100|BBD100|BBE100|BBF100|STH100)\\\\b-[0-9]+\",\n                        Pixel: \"; \\\\bPixel\\\\b\",\n                        HTC: \"HTC|HTC.*(Sensation|Evo|Vision|Explorer|6800|8100|8900|A7272|S510e|C110e|Legend|Desire|T8282)|APX515CKT|Qtek9090|APA9292KT|HD_mini|Sensation.*Z710e|PG86100|Z715e|Desire.*(A8181|HD)|ADR6200|ADR6400L|ADR6425|001HT|Inspire 4G|Android.*\\\\bEVO\\\\b|T-Mobile G1|Z520m|Android [0-9.]+; Pixel\",\n                        Nexus: \"Nexus One|Nexus S|Galaxy.*Nexus|Android.*Nexus.*Mobile|Nexus 4|Nexus 5|Nexus 5X|Nexus 6\",\n                        Dell: \"Dell[;]? (Streak|Aero|Venue|Venue Pro|Flash|Smoke|Mini 3iX)|XCD28|XCD35|\\\\b001DL\\\\b|\\\\b101DL\\\\b|\\\\bGS01\\\\b\",\n                        Motorola: \"Motorola|DROIDX|DROID BIONIC|\\\\bDroid\\\\b.*Build|Android.*Xoom|HRI39|MOT-|A1260|A1680|A555|A853|A855|A953|A955|A956|Motorola.*ELECTRIFY|Motorola.*i1|i867|i940|MB200|MB300|MB501|MB502|MB508|MB511|MB520|MB525|MB526|MB611|MB612|MB632|MB810|MB855|MB860|MB861|MB865|MB870|ME501|ME502|ME511|ME525|ME600|ME632|ME722|ME811|ME860|ME863|ME865|MT620|MT710|MT716|MT720|MT810|MT870|MT917|Motorola.*TITANIUM|WX435|WX445|XT300|XT301|XT311|XT316|XT317|XT319|XT320|XT390|XT502|XT530|XT531|XT532|XT535|XT603|XT610|XT611|XT615|XT681|XT701|XT702|XT711|XT720|XT800|XT806|XT860|XT862|XT875|XT882|XT883|XT894|XT901|XT907|XT909|XT910|XT912|XT928|XT926|XT915|XT919|XT925|XT1021|\\\\bMoto E\\\\b|XT1068|XT1092|XT1052\",\n                        Samsung: \"\\\\bSamsung\\\\b|SM-G950F|SM-G955F|SM-G9250|GT-19300|SGH-I337|BGT-S5230|GT-B2100|GT-B2700|GT-B2710|GT-B3210|GT-B3310|GT-B3410|GT-B3730|GT-B3740|GT-B5510|GT-B5512|GT-B5722|GT-B6520|GT-B7300|GT-B7320|GT-B7330|GT-B7350|GT-B7510|GT-B7722|GT-B7800|GT-C3010|GT-C3011|GT-C3060|GT-C3200|GT-C3212|GT-C3212I|GT-C3262|GT-C3222|GT-C3300|GT-C3300K|GT-C3303|GT-C3303K|GT-C3310|GT-C3322|GT-C3330|GT-C3350|GT-C3500|GT-C3510|GT-C3530|GT-C3630|GT-C3780|GT-C5010|GT-C5212|GT-C6620|GT-C6625|GT-C6712|GT-E1050|GT-E1070|GT-E1075|GT-E1080|GT-E1081|GT-E1085|GT-E1087|GT-E1100|GT-E1107|GT-E1110|GT-E1120|GT-E1125|GT-E1130|GT-E1160|GT-E1170|GT-E1175|GT-E1180|GT-E1182|GT-E1200|GT-E1210|GT-E1225|GT-E1230|GT-E1390|GT-E2100|GT-E2120|GT-E2121|GT-E2152|GT-E2220|GT-E2222|GT-E2230|GT-E2232|GT-E2250|GT-E2370|GT-E2550|GT-E2652|GT-E3210|GT-E3213|GT-I5500|GT-I5503|GT-I5700|GT-I5800|GT-I5801|GT-I6410|GT-I6420|GT-I7110|GT-I7410|GT-I7500|GT-I8000|GT-I8150|GT-I8160|GT-I8190|GT-I8320|GT-I8330|GT-I8350|GT-I8530|GT-I8700|GT-I8703|GT-I8910|GT-I9000|GT-I9001|GT-I9003|GT-I9010|GT-I9020|GT-I9023|GT-I9070|GT-I9082|GT-I9100|GT-I9103|GT-I9220|GT-I9250|GT-I9300|GT-I9305|GT-I9500|GT-I9505|GT-M3510|GT-M5650|GT-M7500|GT-M7600|GT-M7603|GT-M8800|GT-M8910|GT-N7000|GT-S3110|GT-S3310|GT-S3350|GT-S3353|GT-S3370|GT-S3650|GT-S3653|GT-S3770|GT-S3850|GT-S5210|GT-S5220|GT-S5229|GT-S5230|GT-S5233|GT-S5250|GT-S5253|GT-S5260|GT-S5263|GT-S5270|GT-S5300|GT-S5330|GT-S5350|GT-S5360|GT-S5363|GT-S5369|GT-S5380|GT-S5380D|GT-S5560|GT-S5570|GT-S5600|GT-S5603|GT-S5610|GT-S5620|GT-S5660|GT-S5670|GT-S5690|GT-S5750|GT-S5780|GT-S5830|GT-S5839|GT-S6102|GT-S6500|GT-S7070|GT-S7200|GT-S7220|GT-S7230|GT-S7233|GT-S7250|GT-S7500|GT-S7530|GT-S7550|GT-S7562|GT-S7710|GT-S8000|GT-S8003|GT-S8500|GT-S8530|GT-S8600|SCH-A310|SCH-A530|SCH-A570|SCH-A610|SCH-A630|SCH-A650|SCH-A790|SCH-A795|SCH-A850|SCH-A870|SCH-A890|SCH-A930|SCH-A950|SCH-A970|SCH-A990|SCH-I100|SCH-I110|SCH-I400|SCH-I405|SCH-I500|SCH-I510|SCH-I515|SCH-I600|SCH-I730|SCH-I760|SCH-I770|SCH-I830|SCH-I910|SCH-I920|SCH-I959|SCH-LC11|SCH-N150|SCH-N300|SCH-R100|SCH-R300|SCH-R351|SCH-R400|SCH-R410|SCH-T300|SCH-U310|SCH-U320|SCH-U350|SCH-U360|SCH-U365|SCH-U370|SCH-U380|SCH-U410|SCH-U430|SCH-U450|SCH-U460|SCH-U470|SCH-U490|SCH-U540|SCH-U550|SCH-U620|SCH-U640|SCH-U650|SCH-U660|SCH-U700|SCH-U740|SCH-U750|SCH-U810|SCH-U820|SCH-U900|SCH-U940|SCH-U960|SCS-26UC|SGH-A107|SGH-A117|SGH-A127|SGH-A137|SGH-A157|SGH-A167|SGH-A177|SGH-A187|SGH-A197|SGH-A227|SGH-A237|SGH-A257|SGH-A437|SGH-A517|SGH-A597|SGH-A637|SGH-A657|SGH-A667|SGH-A687|SGH-A697|SGH-A707|SGH-A717|SGH-A727|SGH-A737|SGH-A747|SGH-A767|SGH-A777|SGH-A797|SGH-A817|SGH-A827|SGH-A837|SGH-A847|SGH-A867|SGH-A877|SGH-A887|SGH-A897|SGH-A927|SGH-B100|SGH-B130|SGH-B200|SGH-B220|SGH-C100|SGH-C110|SGH-C120|SGH-C130|SGH-C140|SGH-C160|SGH-C170|SGH-C180|SGH-C200|SGH-C207|SGH-C210|SGH-C225|SGH-C230|SGH-C417|SGH-C450|SGH-D307|SGH-D347|SGH-D357|SGH-D407|SGH-D415|SGH-D780|SGH-D807|SGH-D980|SGH-E105|SGH-E200|SGH-E315|SGH-E316|SGH-E317|SGH-E335|SGH-E590|SGH-E635|SGH-E715|SGH-E890|SGH-F300|SGH-F480|SGH-I200|SGH-I300|SGH-I320|SGH-I550|SGH-I577|SGH-I600|SGH-I607|SGH-I617|SGH-I627|SGH-I637|SGH-I677|SGH-I700|SGH-I717|SGH-I727|SGH-i747M|SGH-I777|SGH-I780|SGH-I827|SGH-I847|SGH-I857|SGH-I896|SGH-I897|SGH-I900|SGH-I907|SGH-I917|SGH-I927|SGH-I937|SGH-I997|SGH-J150|SGH-J200|SGH-L170|SGH-L700|SGH-M110|SGH-M150|SGH-M200|SGH-N105|SGH-N500|SGH-N600|SGH-N620|SGH-N625|SGH-N700|SGH-N710|SGH-P107|SGH-P207|SGH-P300|SGH-P310|SGH-P520|SGH-P735|SGH-P777|SGH-Q105|SGH-R210|SGH-R220|SGH-R225|SGH-S105|SGH-S307|SGH-T109|SGH-T119|SGH-T139|SGH-T209|SGH-T219|SGH-T229|SGH-T239|SGH-T249|SGH-T259|SGH-T309|SGH-T319|SGH-T329|SGH-T339|SGH-T349|SGH-T359|SGH-T369|SGH-T379|SGH-T409|SGH-T429|SGH-T439|SGH-T459|SGH-T469|SGH-T479|SGH-T499|SGH-T509|SGH-T519|SGH-T539|SGH-T559|SGH-T589|SGH-T609|SGH-T619|SGH-T629|SGH-T639|SGH-T659|SGH-T669|SGH-T679|SGH-T709|SGH-T719|SGH-T729|SGH-T739|SGH-T746|SGH-T749|SGH-T759|SGH-T769|SGH-T809|SGH-T819|SGH-T839|SGH-T919|SGH-T929|SGH-T939|SGH-T959|SGH-T989|SGH-U100|SGH-U200|SGH-U800|SGH-V205|SGH-V206|SGH-X100|SGH-X105|SGH-X120|SGH-X140|SGH-X426|SGH-X427|SGH-X475|SGH-X495|SGH-X497|SGH-X507|SGH-X600|SGH-X610|SGH-X620|SGH-X630|SGH-X700|SGH-X820|SGH-X890|SGH-Z130|SGH-Z150|SGH-Z170|SGH-ZX10|SGH-ZX20|SHW-M110|SPH-A120|SPH-A400|SPH-A420|SPH-A460|SPH-A500|SPH-A560|SPH-A600|SPH-A620|SPH-A660|SPH-A700|SPH-A740|SPH-A760|SPH-A790|SPH-A800|SPH-A820|SPH-A840|SPH-A880|SPH-A900|SPH-A940|SPH-A960|SPH-D600|SPH-D700|SPH-D710|SPH-D720|SPH-I300|SPH-I325|SPH-I330|SPH-I350|SPH-I500|SPH-I600|SPH-I700|SPH-L700|SPH-M100|SPH-M220|SPH-M240|SPH-M300|SPH-M305|SPH-M320|SPH-M330|SPH-M350|SPH-M360|SPH-M370|SPH-M380|SPH-M510|SPH-M540|SPH-M550|SPH-M560|SPH-M570|SPH-M580|SPH-M610|SPH-M620|SPH-M630|SPH-M800|SPH-M810|SPH-M850|SPH-M900|SPH-M910|SPH-M920|SPH-M930|SPH-N100|SPH-N200|SPH-N240|SPH-N300|SPH-N400|SPH-Z400|SWC-E100|SCH-i909|GT-N7100|GT-N7105|SCH-I535|SM-N900A|SGH-I317|SGH-T999L|GT-S5360B|GT-I8262|GT-S6802|GT-S6312|GT-S6310|GT-S5312|GT-S5310|GT-I9105|GT-I8510|GT-S6790N|SM-G7105|SM-N9005|GT-S5301|GT-I9295|GT-I9195|SM-C101|GT-S7392|GT-S7560|GT-B7610|GT-I5510|GT-S7582|GT-S7530E|GT-I8750|SM-G9006V|SM-G9008V|SM-G9009D|SM-G900A|SM-G900D|SM-G900F|SM-G900H|SM-G900I|SM-G900J|SM-G900K|SM-G900L|SM-G900M|SM-G900P|SM-G900R4|SM-G900S|SM-G900T|SM-G900V|SM-G900W8|SHV-E160K|SCH-P709|SCH-P729|SM-T2558|GT-I9205|SM-G9350|SM-J120F|SM-G920F|SM-G920V|SM-G930F|SM-N910C|SM-A310F|GT-I9190|SM-J500FN|SM-G903F|SM-J330F|SM-G610F|SM-G981B|SM-G892A|SM-A530F\",\n                        LG: \"\\\\bLG\\\\b;|LG[- ]?(C800|C900|E400|E610|E900|E-900|F160|F180K|F180L|F180S|730|855|L160|LS740|LS840|LS970|LU6200|MS690|MS695|MS770|MS840|MS870|MS910|P500|P700|P705|VM696|AS680|AS695|AX840|C729|E970|GS505|272|C395|E739BK|E960|L55C|L75C|LS696|LS860|P769BK|P350|P500|P509|P870|UN272|US730|VS840|VS950|LN272|LN510|LS670|LS855|LW690|MN270|MN510|P509|P769|P930|UN200|UN270|UN510|UN610|US670|US740|US760|UX265|UX840|VN271|VN530|VS660|VS700|VS740|VS750|VS910|VS920|VS930|VX9200|VX11000|AX840A|LW770|P506|P925|P999|E612|D955|D802|MS323|M257)|LM-G710\",\n                        Sony: \"SonyST|SonyLT|SonyEricsson|SonyEricssonLT15iv|LT18i|E10i|LT28h|LT26w|SonyEricssonMT27i|C5303|C6902|C6903|C6906|C6943|D2533|SOV34|601SO|F8332\",\n                        Asus: \"Asus.*Galaxy|PadFone.*Mobile\",\n                        Xiaomi: \"^(?!.*\\\\bx11\\\\b).*xiaomi.*$|POCOPHONE F1|MI 8|Redmi Note 9S|Redmi Note 5A Prime|N2G47H|M2001J2G|M2001J2I|M1805E10A|M2004J11G|M1902F1G|M2002J9G|M2004J19G|M2003J6A1G\",\n                        NokiaLumia: \"Lumia [0-9]{3,4}\",\n                        Micromax: \"Micromax.*\\\\b(A210|A92|A88|A72|A111|A110Q|A115|A116|A110|A90S|A26|A51|A35|A54|A25|A27|A89|A68|A65|A57|A90)\\\\b\",\n                        Palm: \"PalmSource|Palm\",\n                        Vertu: \"Vertu|Vertu.*Ltd|Vertu.*Ascent|Vertu.*Ayxta|Vertu.*Constellation(F|Quest)?|Vertu.*Monika|Vertu.*Signature\",\n                        Pantech: \"PANTECH|IM-A850S|IM-A840S|IM-A830L|IM-A830K|IM-A830S|IM-A820L|IM-A810K|IM-A810S|IM-A800S|IM-T100K|IM-A725L|IM-A780L|IM-A775C|IM-A770K|IM-A760S|IM-A750K|IM-A740S|IM-A730S|IM-A720L|IM-A710K|IM-A690L|IM-A690S|IM-A650S|IM-A630K|IM-A600S|VEGA PTL21|PT003|P8010|ADR910L|P6030|P6020|P9070|P4100|P9060|P5000|CDM8992|TXT8045|ADR8995|IS11PT|P2030|P6010|P8000|PT002|IS06|CDM8999|P9050|PT001|TXT8040|P2020|P9020|P2000|P7040|P7000|C790\",\n                        Fly: \"IQ230|IQ444|IQ450|IQ440|IQ442|IQ441|IQ245|IQ256|IQ236|IQ255|IQ235|IQ245|IQ275|IQ240|IQ285|IQ280|IQ270|IQ260|IQ250\",\n                        Wiko: \"KITE 4G|HIGHWAY|GETAWAY|STAIRWAY|DARKSIDE|DARKFULL|DARKNIGHT|DARKMOON|SLIDE|WAX 4G|RAINBOW|BLOOM|SUNSET|GOA(?!nna)|LENNY|BARRY|IGGY|OZZY|CINK FIVE|CINK PEAX|CINK PEAX 2|CINK SLIM|CINK SLIM 2|CINK +|CINK KING|CINK PEAX|CINK SLIM|SUBLIM\",\n                        iMobile: \"i-mobile (IQ|i-STYLE|idea|ZAA|Hitz)\",\n                        SimValley: \"\\\\b(SP-80|XT-930|SX-340|XT-930|SX-310|SP-360|SP60|SPT-800|SP-120|SPT-800|SP-140|SPX-5|SPX-8|SP-100|SPX-8|SPX-12)\\\\b\",\n                        Wolfgang: \"AT-B24D|AT-AS50HD|AT-AS40W|AT-AS55HD|AT-AS45q2|AT-B26D|AT-AS50Q\",\n                        Alcatel: \"Alcatel\",\n                        Nintendo: \"Nintendo (3DS|Switch)\",\n                        Amoi: \"Amoi\",\n                        INQ: \"INQ\",\n                        OnePlus: \"ONEPLUS\",\n                        GenericPhone: \"Tapatalk|PDA;|SAGEM|\\\\bmmp\\\\b|pocket|\\\\bpsp\\\\b|symbian|Smartphone|smartfon|treo|up.browser|up.link|vodafone|\\\\bwap\\\\b|nokia|Series40|Series60|S60|SonyEricsson|N900|MAUI.*WAP.*Browser\"\n                    },\n                    tablets: {\n                        iPad: \"iPad|iPad.*Mobile\",\n                        NexusTablet: \"Android.*Nexus[\\\\s]+(7|9|10)\",\n                        GoogleTablet: \"Android.*Pixel C\",\n                        SamsungTablet: \"SAMSUNG.*Tablet|Galaxy.*Tab|SC-01C|GT-P1000|GT-P1003|GT-P1010|GT-P3105|GT-P6210|GT-P6800|GT-P6810|GT-P7100|GT-P7300|GT-P7310|GT-P7500|GT-P7510|SCH-I800|SCH-I815|SCH-I905|SGH-I957|SGH-I987|SGH-T849|SGH-T859|SGH-T869|SPH-P100|GT-P3100|GT-P3108|GT-P3110|GT-P5100|GT-P5110|GT-P6200|GT-P7320|GT-P7511|GT-N8000|GT-P8510|SGH-I497|SPH-P500|SGH-T779|SCH-I705|SCH-I915|GT-N8013|GT-P3113|GT-P5113|GT-P8110|GT-N8010|GT-N8005|GT-N8020|GT-P1013|GT-P6201|GT-P7501|GT-N5100|GT-N5105|GT-N5110|SHV-E140K|SHV-E140L|SHV-E140S|SHV-E150S|SHV-E230K|SHV-E230L|SHV-E230S|SHW-M180K|SHW-M180L|SHW-M180S|SHW-M180W|SHW-M300W|SHW-M305W|SHW-M380K|SHW-M380S|SHW-M380W|SHW-M430W|SHW-M480K|SHW-M480S|SHW-M480W|SHW-M485W|SHW-M486W|SHW-M500W|GT-I9228|SCH-P739|SCH-I925|GT-I9200|GT-P5200|GT-P5210|GT-P5210X|SM-T311|SM-T310|SM-T310X|SM-T210|SM-T210R|SM-T211|SM-P600|SM-P601|SM-P605|SM-P900|SM-P901|SM-T217|SM-T217A|SM-T217S|SM-P6000|SM-T3100|SGH-I467|XE500|SM-T110|GT-P5220|GT-I9200X|GT-N5110X|GT-N5120|SM-P905|SM-T111|SM-T2105|SM-T315|SM-T320|SM-T320X|SM-T321|SM-T520|SM-T525|SM-T530NU|SM-T230NU|SM-T330NU|SM-T900|XE500T1C|SM-P605V|SM-P905V|SM-T337V|SM-T537V|SM-T707V|SM-T807V|SM-P600X|SM-P900X|SM-T210X|SM-T230|SM-T230X|SM-T325|GT-P7503|SM-T531|SM-T330|SM-T530|SM-T705|SM-T705C|SM-T535|SM-T331|SM-T800|SM-T700|SM-T537|SM-T807|SM-P907A|SM-T337A|SM-T537A|SM-T707A|SM-T807A|SM-T237|SM-T807P|SM-P607T|SM-T217T|SM-T337T|SM-T807T|SM-T116NQ|SM-T116BU|SM-P550|SM-T350|SM-T550|SM-T9000|SM-P9000|SM-T705Y|SM-T805|GT-P3113|SM-T710|SM-T810|SM-T815|SM-T360|SM-T533|SM-T113|SM-T335|SM-T715|SM-T560|SM-T670|SM-T677|SM-T377|SM-T567|SM-T357T|SM-T555|SM-T561|SM-T713|SM-T719|SM-T813|SM-T819|SM-T580|SM-T355Y?|SM-T280|SM-T817A|SM-T820|SM-W700|SM-P580|SM-T587|SM-P350|SM-P555M|SM-P355M|SM-T113NU|SM-T815Y|SM-T585|SM-T285|SM-T825|SM-W708|SM-T835|SM-T830|SM-T837V|SM-T720|SM-T510|SM-T387V|SM-P610|SM-T290|SM-T515|SM-T590|SM-T595|SM-T725|SM-T817P|SM-P585N0|SM-T395|SM-T295|SM-T865|SM-P610N|SM-P615|SM-T970|SM-T380|SM-T5950|SM-T905|SM-T231|SM-T500|SM-T860\",\n                        Kindle: \"Kindle|Silk.*Accelerated|Android.*\\\\b(KFOT|KFTT|KFJWI|KFJWA|KFOTE|KFSOWI|KFTHWI|KFTHWA|KFAPWI|KFAPWA|WFJWAE|KFSAWA|KFSAWI|KFASWI|KFARWI|KFFOWI|KFGIWI|KFMEWI)\\\\b|Android.*Silk/[0-9.]+ like Chrome/[0-9.]+ (?!Mobile)\",\n                        SurfaceTablet: \"Windows NT [0-9.]+; ARM;.*(Tablet|ARMBJS)\",\n                        HPTablet: \"HP Slate (7|8|10)|HP ElitePad 900|hp-tablet|EliteBook.*Touch|HP 8|Slate 21|HP SlateBook 10\",\n                        AsusTablet: \"^.*PadFone((?!Mobile).)*$|Transformer|TF101|TF101G|TF300T|TF300TG|TF300TL|TF700T|TF700KL|TF701T|TF810C|ME171|ME301T|ME302C|ME371MG|ME370T|ME372MG|ME172V|ME173X|ME400C|Slider SL101|\\\\bK00F\\\\b|\\\\bK00C\\\\b|\\\\bK00E\\\\b|\\\\bK00L\\\\b|TX201LA|ME176C|ME102A|\\\\bM80TA\\\\b|ME372CL|ME560CG|ME372CG|ME302KL| K010 | K011 | K017 | K01E |ME572C|ME103K|ME170C|ME171C|\\\\bME70C\\\\b|ME581C|ME581CL|ME8510C|ME181C|P01Y|PO1MA|P01Z|\\\\bP027\\\\b|\\\\bP024\\\\b|\\\\bP00C\\\\b\",\n                        BlackBerryTablet: \"PlayBook|RIM Tablet\",\n                        HTCtablet: \"HTC_Flyer_P512|HTC Flyer|HTC Jetstream|HTC-P715a|HTC EVO View 4G|PG41200|PG09410\",\n                        MotorolaTablet: \"xoom|sholest|MZ615|MZ605|MZ505|MZ601|MZ602|MZ603|MZ604|MZ606|MZ607|MZ608|MZ609|MZ615|MZ616|MZ617\",\n                        NookTablet: \"Android.*Nook|NookColor|nook browser|BNRV200|BNRV200A|BNTV250|BNTV250A|BNTV400|BNTV600|LogicPD Zoom2\",\n                        AcerTablet: \"Android.*; \\\\b(A100|A101|A110|A200|A210|A211|A500|A501|A510|A511|A700|A701|W500|W500P|W501|W501P|W510|W511|W700|G100|G100W|B1-A71|B1-710|B1-711|A1-810|A1-811|A1-830)\\\\b|W3-810|\\\\bA3-A10\\\\b|\\\\bA3-A11\\\\b|\\\\bA3-A20\\\\b|\\\\bA3-A30|A3-A40\",\n                        ToshibaTablet: \"Android.*(AT100|AT105|AT200|AT205|AT270|AT275|AT300|AT305|AT1S5|AT500|AT570|AT700|AT830)|TOSHIBA.*FOLIO\",\n                        LGTablet: \"\\\\bL-06C|LG-V909|LG-V900|LG-V700|LG-V510|LG-V500|LG-V410|LG-V400|LG-VK810\\\\b\",\n                        FujitsuTablet: \"Android.*\\\\b(F-01D|F-02F|F-05E|F-10D|M532|Q572)\\\\b\",\n                        PrestigioTablet: \"PMP3170B|PMP3270B|PMP3470B|PMP7170B|PMP3370B|PMP3570C|PMP5870C|PMP3670B|PMP5570C|PMP5770D|PMP3970B|PMP3870C|PMP5580C|PMP5880D|PMP5780D|PMP5588C|PMP7280C|PMP7280C3G|PMP7280|PMP7880D|PMP5597D|PMP5597|PMP7100D|PER3464|PER3274|PER3574|PER3884|PER5274|PER5474|PMP5097CPRO|PMP5097|PMP7380D|PMP5297C|PMP5297C_QUAD|PMP812E|PMP812E3G|PMP812F|PMP810E|PMP880TD|PMT3017|PMT3037|PMT3047|PMT3057|PMT7008|PMT5887|PMT5001|PMT5002\",\n                        LenovoTablet: \"Lenovo TAB|Idea(Tab|Pad)( A1|A10| K1|)|ThinkPad([ ]+)?Tablet|YT3-850M|YT3-X90L|YT3-X90F|YT3-X90X|Lenovo.*(S2109|S2110|S5000|S6000|K3011|A3000|A3500|A1000|A2107|A2109|A1107|A5500|A7600|B6000|B8000|B8080)(-|)(FL|F|HV|H|)|TB-X103F|TB-X304X|TB-X304F|TB-X304L|TB-X505F|TB-X505L|TB-X505X|TB-X605F|TB-X605L|TB-8703F|TB-8703X|TB-8703N|TB-8704N|TB-8704F|TB-8704X|TB-8704V|TB-7304F|TB-7304I|TB-7304X|Tab2A7-10F|Tab2A7-20F|TB2-X30L|YT3-X50L|YT3-X50F|YT3-X50M|YT-X705F|YT-X703F|YT-X703L|YT-X705L|YT-X705X|TB2-X30F|TB2-X30L|TB2-X30M|A2107A-F|A2107A-H|TB3-730F|TB3-730M|TB3-730X|TB-7504F|TB-7504X|TB-X704F|TB-X104F|TB3-X70F|TB-X705F|TB-8504F|TB3-X70L|TB3-710F|TB-X704L\",\n                        DellTablet: \"Venue 11|Venue 8|Venue 7|Dell Streak 10|Dell Streak 7\",\n                        YarvikTablet: \"Android.*\\\\b(TAB210|TAB211|TAB224|TAB250|TAB260|TAB264|TAB310|TAB360|TAB364|TAB410|TAB411|TAB420|TAB424|TAB450|TAB460|TAB461|TAB464|TAB465|TAB467|TAB468|TAB07-100|TAB07-101|TAB07-150|TAB07-151|TAB07-152|TAB07-200|TAB07-201-3G|TAB07-210|TAB07-211|TAB07-212|TAB07-214|TAB07-220|TAB07-400|TAB07-485|TAB08-150|TAB08-200|TAB08-201-3G|TAB08-201-30|TAB09-100|TAB09-211|TAB09-410|TAB10-150|TAB10-201|TAB10-211|TAB10-400|TAB10-410|TAB13-201|TAB274EUK|TAB275EUK|TAB374EUK|TAB462EUK|TAB474EUK|TAB9-200)\\\\b\",\n                        MedionTablet: \"Android.*\\\\bOYO\\\\b|LIFE.*(P9212|P9514|P9516|S9512)|LIFETAB\",\n                        ArnovaTablet: \"97G4|AN10G2|AN7bG3|AN7fG3|AN8G3|AN8cG3|AN7G3|AN9G3|AN7dG3|AN7dG3ST|AN7dG3ChildPad|AN10bG3|AN10bG3DT|AN9G2\",\n                        IntensoTablet: \"INM8002KP|INM1010FP|INM805ND|Intenso Tab|TAB1004\",\n                        IRUTablet: \"M702pro\",\n                        MegafonTablet: \"MegaFon V9|\\\\bZTE V9\\\\b|Android.*\\\\bMT7A\\\\b\",\n                        EbodaTablet: \"E-Boda (Supreme|Impresspeed|Izzycomm|Essential)\",\n                        AllViewTablet: \"Allview.*(Viva|Alldro|City|Speed|All TV|Frenzy|Quasar|Shine|TX1|AX1|AX2)\",\n                        ArchosTablet: \"\\\\b(101G9|80G9|A101IT)\\\\b|Qilive 97R|Archos5|\\\\bARCHOS (70|79|80|90|97|101|FAMILYPAD|)(b|c|)(G10| Cobalt| TITANIUM(HD|)| Xenon| Neon|XSK| 2| XS 2| PLATINUM| CARBON|GAMEPAD)\\\\b\",\n                        AinolTablet: \"NOVO7|NOVO8|NOVO10|Novo7Aurora|Novo7Basic|NOVO7PALADIN|novo9-Spark\",\n                        NokiaLumiaTablet: \"Lumia 2520\",\n                        SonyTablet: \"Sony.*Tablet|Xperia Tablet|Sony Tablet S|SO-03E|SGPT12|SGPT13|SGPT114|SGPT121|SGPT122|SGPT123|SGPT111|SGPT112|SGPT113|SGPT131|SGPT132|SGPT133|SGPT211|SGPT212|SGPT213|SGP311|SGP312|SGP321|EBRD1101|EBRD1102|EBRD1201|SGP351|SGP341|SGP511|SGP512|SGP521|SGP541|SGP551|SGP621|SGP641|SGP612|SOT31|SGP771|SGP611|SGP612|SGP712\",\n                        PhilipsTablet: \"\\\\b(PI2010|PI3000|PI3100|PI3105|PI3110|PI3205|PI3210|PI3900|PI4010|PI7000|PI7100)\\\\b\",\n                        CubeTablet: \"Android.*(K8GT|U9GT|U10GT|U16GT|U17GT|U18GT|U19GT|U20GT|U23GT|U30GT)|CUBE U8GT\",\n                        CobyTablet: \"MID1042|MID1045|MID1125|MID1126|MID7012|MID7014|MID7015|MID7034|MID7035|MID7036|MID7042|MID7048|MID7127|MID8042|MID8048|MID8127|MID9042|MID9740|MID9742|MID7022|MID7010\",\n                        MIDTablet: \"M9701|M9000|M9100|M806|M1052|M806|T703|MID701|MID713|MID710|MID727|MID760|MID830|MID728|MID933|MID125|MID810|MID732|MID120|MID930|MID800|MID731|MID900|MID100|MID820|MID735|MID980|MID130|MID833|MID737|MID960|MID135|MID860|MID736|MID140|MID930|MID835|MID733|MID4X10\",\n                        MSITablet: \"MSI \\\\b(Primo 73K|Primo 73L|Primo 81L|Primo 77|Primo 93|Primo 75|Primo 76|Primo 73|Primo 81|Primo 91|Primo 90|Enjoy 71|Enjoy 7|Enjoy 10)\\\\b\",\n                        SMiTTablet: \"Android.*(\\\\bMID\\\\b|MID-560|MTV-T1200|MTV-PND531|MTV-P1101|MTV-PND530)\",\n                        RockChipTablet: \"Android.*(RK2818|RK2808A|RK2918|RK3066)|RK2738|RK2808A\",\n                        FlyTablet: \"IQ310|Fly Vision\",\n                        bqTablet: \"Android.*(bq)?.*\\\\b(Elcano|Curie|Edison|Maxwell|Kepler|Pascal|Tesla|Hypatia|Platon|Newton|Livingstone|Cervantes|Avant|Aquaris ([E|M]10|M8))\\\\b|Maxwell.*Lite|Maxwell.*Plus\",\n                        HuaweiTablet: \"MediaPad|MediaPad 7 Youth|IDEOS S7|S7-201c|S7-202u|S7-101|S7-103|S7-104|S7-105|S7-106|S7-201|S7-Slim|M2-A01L|BAH-L09|BAH-W09|AGS-L09|CMR-AL19\",\n                        NecTablet: \"\\\\bN-06D|\\\\bN-08D\",\n                        PantechTablet: \"Pantech.*P4100\",\n                        BronchoTablet: \"Broncho.*(N701|N708|N802|a710)\",\n                        VersusTablet: \"TOUCHPAD.*[78910]|\\\\bTOUCHTAB\\\\b\",\n                        ZyncTablet: \"z1000|Z99 2G|z930|z990|z909|Z919|z900\",\n                        PositivoTablet: \"TB07STA|TB10STA|TB07FTA|TB10FTA\",\n                        NabiTablet: \"Android.*\\\\bNabi\",\n                        KoboTablet: \"Kobo Touch|\\\\bK080\\\\b|\\\\bVox\\\\b Build|\\\\bArc\\\\b Build\",\n                        DanewTablet: \"DSlide.*\\\\b(700|701R|702|703R|704|802|970|971|972|973|974|1010|1012)\\\\b\",\n                        TexetTablet: \"NaviPad|TB-772A|TM-7045|TM-7055|TM-9750|TM-7016|TM-7024|TM-7026|TM-7041|TM-7043|TM-7047|TM-8041|TM-9741|TM-9747|TM-9748|TM-9751|TM-7022|TM-7021|TM-7020|TM-7011|TM-7010|TM-7023|TM-7025|TM-7037W|TM-7038W|TM-7027W|TM-9720|TM-9725|TM-9737W|TM-1020|TM-9738W|TM-9740|TM-9743W|TB-807A|TB-771A|TB-727A|TB-725A|TB-719A|TB-823A|TB-805A|TB-723A|TB-715A|TB-707A|TB-705A|TB-709A|TB-711A|TB-890HD|TB-880HD|TB-790HD|TB-780HD|TB-770HD|TB-721HD|TB-710HD|TB-434HD|TB-860HD|TB-840HD|TB-760HD|TB-750HD|TB-740HD|TB-730HD|TB-722HD|TB-720HD|TB-700HD|TB-500HD|TB-470HD|TB-431HD|TB-430HD|TB-506|TB-504|TB-446|TB-436|TB-416|TB-146SE|TB-126SE\",\n                        PlaystationTablet: \"Playstation.*(Portable|Vita)\",\n                        TrekstorTablet: \"ST10416-1|VT10416-1|ST70408-1|ST702xx-1|ST702xx-2|ST80208|ST97216|ST70104-2|VT10416-2|ST10216-2A|SurfTab\",\n                        PyleAudioTablet: \"\\\\b(PTBL10CEU|PTBL10C|PTBL72BC|PTBL72BCEU|PTBL7CEU|PTBL7C|PTBL92BC|PTBL92BCEU|PTBL9CEU|PTBL9CUK|PTBL9C)\\\\b\",\n                        AdvanTablet: \"Android.* \\\\b(E3A|T3X|T5C|T5B|T3E|T3C|T3B|T1J|T1F|T2A|T1H|T1i|E1C|T1-E|T5-A|T4|E1-B|T2Ci|T1-B|T1-D|O1-A|E1-A|T1-A|T3A|T4i)\\\\b \",\n                        DanyTechTablet: \"Genius Tab G3|Genius Tab S2|Genius Tab Q3|Genius Tab G4|Genius Tab Q4|Genius Tab G-II|Genius TAB GII|Genius TAB GIII|Genius Tab S1\",\n                        GalapadTablet: \"Android [0-9.]+; [a-z-]+; \\\\bG1\\\\b\",\n                        MicromaxTablet: \"Funbook|Micromax.*\\\\b(P250|P560|P360|P362|P600|P300|P350|P500|P275)\\\\b\",\n                        KarbonnTablet: \"Android.*\\\\b(A39|A37|A34|ST8|ST10|ST7|Smart Tab3|Smart Tab2)\\\\b\",\n                        AllFineTablet: \"Fine7 Genius|Fine7 Shine|Fine7 Air|Fine8 Style|Fine9 More|Fine10 Joy|Fine11 Wide\",\n                        PROSCANTablet: \"\\\\b(PEM63|PLT1023G|PLT1041|PLT1044|PLT1044G|PLT1091|PLT4311|PLT4311PL|PLT4315|PLT7030|PLT7033|PLT7033D|PLT7035|PLT7035D|PLT7044K|PLT7045K|PLT7045KB|PLT7071KG|PLT7072|PLT7223G|PLT7225G|PLT7777G|PLT7810K|PLT7849G|PLT7851G|PLT7852G|PLT8015|PLT8031|PLT8034|PLT8036|PLT8080K|PLT8082|PLT8088|PLT8223G|PLT8234G|PLT8235G|PLT8816K|PLT9011|PLT9045K|PLT9233G|PLT9735|PLT9760G|PLT9770G)\\\\b\",\n                        YONESTablet: \"BQ1078|BC1003|BC1077|RK9702|BC9730|BC9001|IT9001|BC7008|BC7010|BC708|BC728|BC7012|BC7030|BC7027|BC7026\",\n                        ChangJiaTablet: \"TPC7102|TPC7103|TPC7105|TPC7106|TPC7107|TPC7201|TPC7203|TPC7205|TPC7210|TPC7708|TPC7709|TPC7712|TPC7110|TPC8101|TPC8103|TPC8105|TPC8106|TPC8203|TPC8205|TPC8503|TPC9106|TPC9701|TPC97101|TPC97103|TPC97105|TPC97106|TPC97111|TPC97113|TPC97203|TPC97603|TPC97809|TPC97205|TPC10101|TPC10103|TPC10106|TPC10111|TPC10203|TPC10205|TPC10503\",\n                        GUTablet: \"TX-A1301|TX-M9002|Q702|kf026\",\n                        PointOfViewTablet: \"TAB-P506|TAB-navi-7-3G-M|TAB-P517|TAB-P-527|TAB-P701|TAB-P703|TAB-P721|TAB-P731N|TAB-P741|TAB-P825|TAB-P905|TAB-P925|TAB-PR945|TAB-PL1015|TAB-P1025|TAB-PI1045|TAB-P1325|TAB-PROTAB[0-9]+|TAB-PROTAB25|TAB-PROTAB26|TAB-PROTAB27|TAB-PROTAB26XL|TAB-PROTAB2-IPS9|TAB-PROTAB30-IPS9|TAB-PROTAB25XXL|TAB-PROTAB26-IPS10|TAB-PROTAB30-IPS10\",\n                        OvermaxTablet: \"OV-(SteelCore|NewBase|Basecore|Baseone|Exellen|Quattor|EduTab|Solution|ACTION|BasicTab|TeddyTab|MagicTab|Stream|TB-08|TB-09)|Qualcore 1027\",\n                        HCLTablet: \"HCL.*Tablet|Connect-3G-2.0|Connect-2G-2.0|ME Tablet U1|ME Tablet U2|ME Tablet G1|ME Tablet X1|ME Tablet Y2|ME Tablet Sync\",\n                        DPSTablet: \"DPS Dream 9|DPS Dual 7\",\n                        VistureTablet: \"V97 HD|i75 3G|Visture V4( HD)?|Visture V5( HD)?|Visture V10\",\n                        CrestaTablet: \"CTP(-)?810|CTP(-)?818|CTP(-)?828|CTP(-)?838|CTP(-)?888|CTP(-)?978|CTP(-)?980|CTP(-)?987|CTP(-)?988|CTP(-)?989\",\n                        MediatekTablet: \"\\\\bMT8125|MT8389|MT8135|MT8377\\\\b\",\n                        ConcordeTablet: \"Concorde([ ]+)?Tab|ConCorde ReadMan\",\n                        GoCleverTablet: \"GOCLEVER TAB|A7GOCLEVER|M1042|M7841|M742|R1042BK|R1041|TAB A975|TAB A7842|TAB A741|TAB A741L|TAB M723G|TAB M721|TAB A1021|TAB I921|TAB R721|TAB I720|TAB T76|TAB R70|TAB R76.2|TAB R106|TAB R83.2|TAB M813G|TAB I721|GCTA722|TAB I70|TAB I71|TAB S73|TAB R73|TAB R74|TAB R93|TAB R75|TAB R76.1|TAB A73|TAB A93|TAB A93.2|TAB T72|TAB R83|TAB R974|TAB R973|TAB A101|TAB A103|TAB A104|TAB A104.2|R105BK|M713G|A972BK|TAB A971|TAB R974.2|TAB R104|TAB R83.3|TAB A1042\",\n                        ModecomTablet: \"FreeTAB 9000|FreeTAB 7.4|FreeTAB 7004|FreeTAB 7800|FreeTAB 2096|FreeTAB 7.5|FreeTAB 1014|FreeTAB 1001 |FreeTAB 8001|FreeTAB 9706|FreeTAB 9702|FreeTAB 7003|FreeTAB 7002|FreeTAB 1002|FreeTAB 7801|FreeTAB 1331|FreeTAB 1004|FreeTAB 8002|FreeTAB 8014|FreeTAB 9704|FreeTAB 1003\",\n                        VoninoTablet: \"\\\\b(Argus[ _]?S|Diamond[ _]?79HD|Emerald[ _]?78E|Luna[ _]?70C|Onyx[ _]?S|Onyx[ _]?Z|Orin[ _]?HD|Orin[ _]?S|Otis[ _]?S|SpeedStar[ _]?S|Magnet[ _]?M9|Primus[ _]?94[ _]?3G|Primus[ _]?94HD|Primus[ _]?QS|Android.*\\\\bQ8\\\\b|Sirius[ _]?EVO[ _]?QS|Sirius[ _]?QS|Spirit[ _]?S)\\\\b\",\n                        ECSTablet: \"V07OT2|TM105A|S10OT1|TR10CS1\",\n                        StorexTablet: \"eZee[_']?(Tab|Go)[0-9]+|TabLC7|Looney Tunes Tab\",\n                        VodafoneTablet: \"SmartTab([ ]+)?[0-9]+|SmartTabII10|SmartTabII7|VF-1497|VFD 1400\",\n                        EssentielBTablet: \"Smart[ ']?TAB[ ]+?[0-9]+|Family[ ']?TAB2\",\n                        RossMoorTablet: \"RM-790|RM-997|RMD-878G|RMD-974R|RMT-705A|RMT-701|RME-601|RMT-501|RMT-711\",\n                        iMobileTablet: \"i-mobile i-note\",\n                        TolinoTablet: \"tolino tab [0-9.]+|tolino shine\",\n                        AudioSonicTablet: \"\\\\bC-22Q|T7-QC|T-17B|T-17P\\\\b\",\n                        AMPETablet: \"Android.* A78 \",\n                        SkkTablet: \"Android.* (SKYPAD|PHOENIX|CYCLOPS)\",\n                        TecnoTablet: \"TECNO P9|TECNO DP8D\",\n                        JXDTablet: \"Android.* \\\\b(F3000|A3300|JXD5000|JXD3000|JXD2000|JXD300B|JXD300|S5800|S7800|S602b|S5110b|S7300|S5300|S602|S603|S5100|S5110|S601|S7100a|P3000F|P3000s|P101|P200s|P1000m|P200m|P9100|P1000s|S6600b|S908|P1000|P300|S18|S6600|S9100)\\\\b\",\n                        iJoyTablet: \"Tablet (Spirit 7|Essentia|Galatea|Fusion|Onix 7|Landa|Titan|Scooby|Deox|Stella|Themis|Argon|Unique 7|Sygnus|Hexen|Finity 7|Cream|Cream X2|Jade|Neon 7|Neron 7|Kandy|Scape|Saphyr 7|Rebel|Biox|Rebel|Rebel 8GB|Myst|Draco 7|Myst|Tab7-004|Myst|Tadeo Jones|Tablet Boing|Arrow|Draco Dual Cam|Aurix|Mint|Amity|Revolution|Finity 9|Neon 9|T9w|Amity 4GB Dual Cam|Stone 4GB|Stone 8GB|Andromeda|Silken|X2|Andromeda II|Halley|Flame|Saphyr 9,7|Touch 8|Planet|Triton|Unique 10|Hexen 10|Memphis 4GB|Memphis 8GB|Onix 10)\",\n                        FX2Tablet: \"FX2 PAD7|FX2 PAD10\",\n                        XoroTablet: \"KidsPAD 701|PAD[ ]?712|PAD[ ]?714|PAD[ ]?716|PAD[ ]?717|PAD[ ]?718|PAD[ ]?720|PAD[ ]?721|PAD[ ]?722|PAD[ ]?790|PAD[ ]?792|PAD[ ]?900|PAD[ ]?9715D|PAD[ ]?9716DR|PAD[ ]?9718DR|PAD[ ]?9719QR|PAD[ ]?9720QR|TelePAD1030|Telepad1032|TelePAD730|TelePAD731|TelePAD732|TelePAD735Q|TelePAD830|TelePAD9730|TelePAD795|MegaPAD 1331|MegaPAD 1851|MegaPAD 2151\",\n                        ViewsonicTablet: \"ViewPad 10pi|ViewPad 10e|ViewPad 10s|ViewPad E72|ViewPad7|ViewPad E100|ViewPad 7e|ViewSonic VB733|VB100a\",\n                        VerizonTablet: \"QTAQZ3|QTAIR7|QTAQTZ3|QTASUN1|QTASUN2|QTAXIA1\",\n                        OdysTablet: \"LOOX|XENO10|ODYS[ -](Space|EVO|Xpress|NOON)|\\\\bXELIO\\\\b|Xelio10Pro|XELIO7PHONETAB|XELIO10EXTREME|XELIOPT2|NEO_QUAD10\",\n                        CaptivaTablet: \"CAPTIVA PAD\",\n                        IconbitTablet: \"NetTAB|NT-3702|NT-3702S|NT-3702S|NT-3603P|NT-3603P|NT-0704S|NT-0704S|NT-3805C|NT-3805C|NT-0806C|NT-0806C|NT-0909T|NT-0909T|NT-0907S|NT-0907S|NT-0902S|NT-0902S\",\n                        TeclastTablet: \"T98 4G|\\\\bP80\\\\b|\\\\bX90HD\\\\b|X98 Air|X98 Air 3G|\\\\bX89\\\\b|P80 3G|\\\\bX80h\\\\b|P98 Air|\\\\bX89HD\\\\b|P98 3G|\\\\bP90HD\\\\b|P89 3G|X98 3G|\\\\bP70h\\\\b|P79HD 3G|G18d 3G|\\\\bP79HD\\\\b|\\\\bP89s\\\\b|\\\\bA88\\\\b|\\\\bP10HD\\\\b|\\\\bP19HD\\\\b|G18 3G|\\\\bP78HD\\\\b|\\\\bA78\\\\b|\\\\bP75\\\\b|G17s 3G|G17h 3G|\\\\bP85t\\\\b|\\\\bP90\\\\b|\\\\bP11\\\\b|\\\\bP98t\\\\b|\\\\bP98HD\\\\b|\\\\bG18d\\\\b|\\\\bP85s\\\\b|\\\\bP11HD\\\\b|\\\\bP88s\\\\b|\\\\bA80HD\\\\b|\\\\bA80se\\\\b|\\\\bA10h\\\\b|\\\\bP89\\\\b|\\\\bP78s\\\\b|\\\\bG18\\\\b|\\\\bP85\\\\b|\\\\bA70h\\\\b|\\\\bA70\\\\b|\\\\bG17\\\\b|\\\\bP18\\\\b|\\\\bA80s\\\\b|\\\\bA11s\\\\b|\\\\bP88HD\\\\b|\\\\bA80h\\\\b|\\\\bP76s\\\\b|\\\\bP76h\\\\b|\\\\bP98\\\\b|\\\\bA10HD\\\\b|\\\\bP78\\\\b|\\\\bP88\\\\b|\\\\bA11\\\\b|\\\\bA10t\\\\b|\\\\bP76a\\\\b|\\\\bP76t\\\\b|\\\\bP76e\\\\b|\\\\bP85HD\\\\b|\\\\bP85a\\\\b|\\\\bP86\\\\b|\\\\bP75HD\\\\b|\\\\bP76v\\\\b|\\\\bA12\\\\b|\\\\bP75a\\\\b|\\\\bA15\\\\b|\\\\bP76Ti\\\\b|\\\\bP81HD\\\\b|\\\\bA10\\\\b|\\\\bT760VE\\\\b|\\\\bT720HD\\\\b|\\\\bP76\\\\b|\\\\bP73\\\\b|\\\\bP71\\\\b|\\\\bP72\\\\b|\\\\bT720SE\\\\b|\\\\bC520Ti\\\\b|\\\\bT760\\\\b|\\\\bT720VE\\\\b|T720-3GE|T720-WiFi\",\n                        OndaTablet: \"\\\\b(V975i|Vi30|VX530|V701|Vi60|V701s|Vi50|V801s|V719|Vx610w|VX610W|V819i|Vi10|VX580W|Vi10|V711s|V813|V811|V820w|V820|Vi20|V711|VI30W|V712|V891w|V972|V819w|V820w|Vi60|V820w|V711|V813s|V801|V819|V975s|V801|V819|V819|V818|V811|V712|V975m|V101w|V961w|V812|V818|V971|V971s|V919|V989|V116w|V102w|V973|Vi40)\\\\b[\\\\s]+|V10 \\\\b4G\\\\b\",\n                        JaytechTablet: \"TPC-PA762\",\n                        BlaupunktTablet: \"Endeavour 800NG|Endeavour 1010\",\n                        DigmaTablet: \"\\\\b(iDx10|iDx9|iDx8|iDx7|iDxD7|iDxD8|iDsQ8|iDsQ7|iDsQ8|iDsD10|iDnD7|3TS804H|iDsQ11|iDj7|iDs10)\\\\b\",\n                        EvolioTablet: \"ARIA_Mini_wifi|Aria[ _]Mini|Evolio X10|Evolio X7|Evolio X8|\\\\bEvotab\\\\b|\\\\bNeura\\\\b\",\n                        LavaTablet: \"QPAD E704|\\\\bIvoryS\\\\b|E-TAB IVORY|\\\\bE-TAB\\\\b\",\n                        AocTablet: \"MW0811|MW0812|MW0922|MTK8382|MW1031|MW0831|MW0821|MW0931|MW0712\",\n                        MpmanTablet: \"MP11 OCTA|MP10 OCTA|MPQC1114|MPQC1004|MPQC994|MPQC974|MPQC973|MPQC804|MPQC784|MPQC780|\\\\bMPG7\\\\b|MPDCG75|MPDCG71|MPDC1006|MP101DC|MPDC9000|MPDC905|MPDC706HD|MPDC706|MPDC705|MPDC110|MPDC100|MPDC99|MPDC97|MPDC88|MPDC8|MPDC77|MP709|MID701|MID711|MID170|MPDC703|MPQC1010\",\n                        CelkonTablet: \"CT695|CT888|CT[\\\\s]?910|CT7 Tab|CT9 Tab|CT3 Tab|CT2 Tab|CT1 Tab|C820|C720|\\\\bCT-1\\\\b\",\n                        WolderTablet: \"miTab \\\\b(DIAMOND|SPACE|BROOKLYN|NEO|FLY|MANHATTAN|FUNK|EVOLUTION|SKY|GOCAR|IRON|GENIUS|POP|MINT|EPSILON|BROADWAY|JUMP|HOP|LEGEND|NEW AGE|LINE|ADVANCE|FEEL|FOLLOW|LIKE|LINK|LIVE|THINK|FREEDOM|CHICAGO|CLEVELAND|BALTIMORE-GH|IOWA|BOSTON|SEATTLE|PHOENIX|DALLAS|IN 101|MasterChef)\\\\b\",\n                        MediacomTablet: \"M-MPI10C3G|M-SP10EG|M-SP10EGP|M-SP10HXAH|M-SP7HXAH|M-SP10HXBH|M-SP8HXAH|M-SP8MXA\",\n                        MiTablet: \"\\\\bMI PAD\\\\b|\\\\bHM NOTE 1W\\\\b\",\n                        NibiruTablet: \"Nibiru M1|Nibiru Jupiter One\",\n                        NexoTablet: \"NEXO NOVA|NEXO 10|NEXO AVIO|NEXO FREE|NEXO GO|NEXO EVO|NEXO 3G|NEXO SMART|NEXO KIDDO|NEXO MOBI\",\n                        LeaderTablet: \"TBLT10Q|TBLT10I|TBL-10WDKB|TBL-10WDKBO2013|TBL-W230V2|TBL-W450|TBL-W500|SV572|TBLT7I|TBA-AC7-8G|TBLT79|TBL-8W16|TBL-10W32|TBL-10WKB|TBL-W100\",\n                        UbislateTablet: \"UbiSlate[\\\\s]?7C\",\n                        PocketBookTablet: \"Pocketbook\",\n                        KocasoTablet: \"\\\\b(TB-1207)\\\\b\",\n                        HisenseTablet: \"\\\\b(F5281|E2371)\\\\b\",\n                        Hudl: \"Hudl HT7S3|Hudl 2\",\n                        TelstraTablet: \"T-Hub2\",\n                        GenericTablet: \"Android.*\\\\b97D\\\\b|Tablet(?!.*PC)|BNTV250A|MID-WCDMA|LogicPD Zoom2|\\\\bA7EB\\\\b|CatNova8|A1_07|CT704|CT1002|\\\\bM721\\\\b|rk30sdk|\\\\bEVOTAB\\\\b|M758A|ET904|ALUMIUM10|Smartfren Tab|Endeavour 1010|Tablet-PC-4|Tagi Tab|\\\\bM6pro\\\\b|CT1020W|arc 10HD|\\\\bTP750\\\\b|\\\\bQTAQZ3\\\\b|WVT101|TM1088|KT107\"\n                    },\n                    oss: {\n                        AndroidOS: \"Android\",\n                        BlackBerryOS: \"blackberry|\\\\bBB10\\\\b|rim tablet os\",\n                        PalmOS: \"PalmOS|avantgo|blazer|elaine|hiptop|palm|plucker|xiino\",\n                        SymbianOS: \"Symbian|SymbOS|Series60|Series40|SYB-[0-9]+|\\\\bS60\\\\b\",\n                        WindowsMobileOS: \"Windows CE.*(PPC|Smartphone|Mobile|[0-9]{3}x[0-9]{3})|Windows Mobile|Windows Phone [0-9.]+|WCE;\",\n                        WindowsPhoneOS: \"Windows Phone 10.0|Windows Phone 8.1|Windows Phone 8.0|Windows Phone OS|XBLWP7|ZuneWP7|Windows NT 6.[23]; ARM;\",\n                        iOS: \"\\\\biPhone.*Mobile|\\\\biPod|\\\\biPad|AppleCoreMedia\",\n                        iPadOS: \"CPU OS 13\",\n                        SailfishOS: \"Sailfish\",\n                        MeeGoOS: \"MeeGo\",\n                        MaemoOS: \"Maemo\",\n                        JavaOS: \"J2ME/|\\\\bMIDP\\\\b|\\\\bCLDC\\\\b\",\n                        webOS: \"webOS|hpwOS\",\n                        badaOS: \"\\\\bBada\\\\b\",\n                        BREWOS: \"BREW\"\n                    },\n                    uas: {\n                        Chrome: \"\\\\bCrMo\\\\b|CriOS|Android.*Chrome/[.0-9]* (Mobile)?\",\n                        Dolfin: \"\\\\bDolfin\\\\b\",\n                        Opera: \"Opera.*Mini|Opera.*Mobi|Android.*Opera|Mobile.*OPR/[0-9.]+$|Coast/[0-9.]+\",\n                        Skyfire: \"Skyfire\",\n                        Edge: \"\\\\bEdgiOS\\\\b|Mobile Safari/[.0-9]* Edge\",\n                        IE: \"IEMobile|MSIEMobile\",\n                        Firefox: \"fennec|firefox.*maemo|(Mobile|Tablet).*Firefox|Firefox.*Mobile|FxiOS\",\n                        Bolt: \"bolt\",\n                        TeaShark: \"teashark\",\n                        Blazer: \"Blazer\",\n                        Safari: \"Version((?!\\\\bEdgiOS\\\\b).)*Mobile.*Safari|Safari.*Mobile|MobileSafari\",\n                        WeChat: \"\\\\bMicroMessenger\\\\b\",\n                        UCBrowser: \"UC.*Browser|UCWEB\",\n                        baiduboxapp: \"baiduboxapp\",\n                        baidubrowser: \"baidubrowser\",\n                        DiigoBrowser: \"DiigoBrowser\",\n                        Mercury: \"\\\\bMercury\\\\b\",\n                        ObigoBrowser: \"Obigo\",\n                        NetFront: \"NF-Browser\",\n                        GenericBrowser: \"NokiaBrowser|OviBrowser|OneBrowser|TwonkyBeamBrowser|SEMC.*Browser|FlyFlow|Minimo|NetFront|Novarra-Vision|MQQBrowser|MicroMessenger\",\n                        PaleMoon: \"Android.*PaleMoon|Mobile.*PaleMoon\"\n                    },\n                    props: {\n                        Mobile: \"Mobile/[VER]\",\n                        Build: \"Build/[VER]\",\n                        Version: \"Version/[VER]\",\n                        VendorID: \"VendorID/[VER]\",\n                        iPad: \"iPad.*CPU[a-z ]+[VER]\",\n                        iPhone: \"iPhone.*CPU[a-z ]+[VER]\",\n                        iPod: \"iPod.*CPU[a-z ]+[VER]\",\n                        Kindle: \"Kindle/[VER]\",\n                        Chrome: [\"Chrome/[VER]\", \"CriOS/[VER]\", \"CrMo/[VER]\"],\n                        Coast: [\"Coast/[VER]\"],\n                        Dolfin: \"Dolfin/[VER]\",\n                        Firefox: [\"Firefox/[VER]\", \"FxiOS/[VER]\"],\n                        Fennec: \"Fennec/[VER]\",\n                        Edge: \"Edge/[VER]\",\n                        IE: [\"IEMobile/[VER];\", \"IEMobile [VER]\", \"MSIE [VER];\", \"Trident/[0-9.]+;.*rv:[VER]\"],\n                        NetFront: \"NetFront/[VER]\",\n                        NokiaBrowser: \"NokiaBrowser/[VER]\",\n                        Opera: [\" OPR/[VER]\", \"Opera Mini/[VER]\", \"Version/[VER]\"],\n                        \"Opera Mini\": \"Opera Mini/[VER]\",\n                        \"Opera Mobi\": \"Version/[VER]\",\n                        UCBrowser: [\"UCWEB[VER]\", \"UC.*Browser/[VER]\"],\n                        MQQBrowser: \"MQQBrowser/[VER]\",\n                        MicroMessenger: \"MicroMessenger/[VER]\",\n                        baiduboxapp: \"baiduboxapp/[VER]\",\n                        baidubrowser: \"baidubrowser/[VER]\",\n                        SamsungBrowser: \"SamsungBrowser/[VER]\",\n                        Iron: \"Iron/[VER]\",\n                        Safari: [\"Version/[VER]\", \"Safari/[VER]\"],\n                        Skyfire: \"Skyfire/[VER]\",\n                        Tizen: \"Tizen/[VER]\",\n                        Webkit: \"webkit[ /][VER]\",\n                        PaleMoon: \"PaleMoon/[VER]\",\n                        SailfishBrowser: \"SailfishBrowser/[VER]\",\n                        Gecko: \"Gecko/[VER]\",\n                        Trident: \"Trident/[VER]\",\n                        Presto: \"Presto/[VER]\",\n                        Goanna: \"Goanna/[VER]\",\n                        iOS: \" \\\\bi?OS\\\\b [VER][ ;]{1}\",\n                        Android: \"Android [VER]\",\n                        Sailfish: \"Sailfish [VER]\",\n                        BlackBerry: [\"BlackBerry[\\\\w]+/[VER]\", \"BlackBerry.*Version/[VER]\", \"Version/[VER]\"],\n                        BREW: \"BREW [VER]\",\n                        Java: \"Java/[VER]\",\n                        \"Windows Phone OS\": [\"Windows Phone OS [VER]\", \"Windows Phone [VER]\"],\n                        \"Windows Phone\": \"Windows Phone [VER]\",\n                        \"Windows CE\": \"Windows CE/[VER]\",\n                        \"Windows NT\": \"Windows NT [VER]\",\n                        Symbian: [\"SymbianOS/[VER]\", \"Symbian/[VER]\"],\n                        webOS: [\"webOS/[VER]\", \"hpwOS/[VER];\"]\n                    },\n                    utils: {\n                        Bot: \"Googlebot|facebookexternalhit|Google-AMPHTML|s~amp-validator|AdsBot-Google|Google Keyword Suggestion|Facebot|YandexBot|YandexMobileBot|bingbot|ia_archiver|AhrefsBot|Ezooms|GSLFbot|WBSearchBot|Twitterbot|TweetmemeBot|Twikle|PaperLiBot|Wotbox|UnwindFetchor|Exabot|MJ12bot|YandexImages|TurnitinBot|Pingdom|contentkingapp|AspiegelBot\",\n                        MobileBot: \"Googlebot-Mobile|AdsBot-Google-Mobile|YahooSeeker/M1A1-R2D2\",\n                        DesktopMode: \"WPDesktop\",\n                        TV: \"SonyDTV|HbbTV\",\n                        WebKit: \"(webkit)[ /]([\\\\w.]+)\",\n                        Console: \"\\\\b(Nintendo|Nintendo WiiU|Nintendo 3DS|Nintendo Switch|PLAYSTATION|Xbox)\\\\b\",\n                        Watch: \"SM-V700\"\n                    }\n                },\n                detectMobileBrowsers: {\n                    fullPattern: /(android|bb\\d+|meego).+mobile|avantgo|bada\\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i,\n                    shortPattern: /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\\-(n|u)|c55\\/|capi|ccwa|cdm\\-|cell|chtm|cldc|cmd\\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\\-s|devi|dica|dmob|do(c|p)o|ds(12|\\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\\-|_)|g1 u|g560|gene|gf\\-5|g\\-mo|go(\\.w|od)|gr(ad|un)|haie|hcit|hd\\-(m|p|t)|hei\\-|hi(pt|ta)|hp( i|ip)|hs\\-c|ht(c(\\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\\-(20|go|ma)|i230|iac( |\\-|\\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\\/)|klon|kpt |kwc\\-|kyo(c|k)|le(no|xi)|lg( g|\\/(k|l|u)|50|54|\\-[a-w])|libw|lynx|m1\\-w|m3ga|m50\\/|ma(te|ui|xo)|mc(01|21|ca)|m\\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\\-2|po(ck|rt|se)|prox|psio|pt\\-g|qa\\-a|qc(07|12|21|32|60|\\-[2-7]|i\\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\\-|oo|p\\-)|sdk\\/|se(c(\\-|0|1)|47|mc|nd|ri)|sgh\\-|shar|sie(\\-|m)|sk\\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\\-|v\\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\\-|tdg\\-|tel(i|m)|tim\\-|t\\-mo|to(pl|sh)|ts(70|m\\-|m3|m5)|tx\\-9|up(\\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\\-|your|zeto|zte\\-/i,\n                    tabletPattern: /android|ipad|playbook|silk/i\n                }\n            },\n            d = Object.prototype.hasOwnProperty,\n            h = (u.FALLBACK_PHONE = \"UnknownPhone\", u.FALLBACK_TABLET = \"UnknownTablet\", u.FALLBACK_MOBILE = \"UnknownMobile\", \"isArray\" in Array ? Array.isArray : function(e) {\n                return \"[object Array]\" === Object.prototype.toString.call(e)\n            }),\n            p = u.mobileDetectRules;\n        for (i in p.props)\n            if (d.call(p.props, i)) {\n                for (r = p.props[i], l = (r = h(r) ? r : [r]).length, s = 0; s < l; ++s) 0 <= (c = (a = r[s]).indexOf(\"[VER]\")) && (a = a.substring(0, c) + \"([\\\\w._\\\\+]+)\" + a.substring(c + 5)), r[s] = new RegExp(a, \"i\");\n                p.props[i] = r\n            } return e(p.oss), e(p.phones), e(p.tablets), e(p.uas), e(p.utils), p.oss0 = {\n            WindowsPhoneOS: p.oss.WindowsPhoneOS,\n            WindowsMobileOS: p.oss.WindowsMobileOS\n        }, u.findMatch = function(e, t) {\n            for (var n in e)\n                if (d.call(e, n) && e[n].test(t)) return n;\n            return null\n        }, u.findMatches = function(e, t) {\n            var n, i = [];\n            for (n in e) d.call(e, n) && e[n].test(t) && i.push(n);\n            return i\n        }, u.getVersionStr = function(e, t) {\n            var n, i, o, r, a = u.mobileDetectRules.props;\n            if (d.call(a, e))\n                for (o = (n = a[e]).length, i = 0; i < o; ++i)\n                    if (null !== (r = n[i].exec(t))) return r[1];\n            return null\n        }, u.getVersion = function(e, t) {\n            e = u.getVersionStr(e, t);\n            return e ? u.prepareVersionNo(e) : NaN\n        }, u.prepareVersionNo = function(e) {\n            var t = e.split(/[a-z._ \\/\\-]/i);\n            return 1 === t.length && (e = t[0]), 1 < t.length && (e = t[0] + \".\", t.shift(), e += t.join(\"\")), Number(e)\n        }, u.isMobileFallback = function(e) {\n            return u.detectMobileBrowsers.fullPattern.test(e) || u.detectMobileBrowsers.shortPattern.test(e.substr(0, 4))\n        }, u.isTabletFallback = function(e) {\n            return u.detectMobileBrowsers.tabletPattern.test(e)\n        }, u.prepareDetectionCache = function(e, t, n) {\n            var i;\n            if (e.mobile === f) return (i = u.findMatch(u.mobileDetectRules.tablets, t)) ? (e.mobile = e.tablet = i, void(e.phone = null)) : (i = u.findMatch(u.mobileDetectRules.phones, t)) ? (e.mobile = e.phone = i, void(e.tablet = null)) : void(u.isMobileFallback(t) ? (i = o.isPhoneSized(n)) === f ? (e.mobile = u.FALLBACK_MOBILE, e.tablet = e.phone = null) : i ? (e.mobile = e.phone = u.FALLBACK_PHONE, e.tablet = null) : (e.mobile = e.tablet = u.FALLBACK_TABLET, e.phone = null) : u.isTabletFallback(t) ? (e.mobile = e.tablet = u.FALLBACK_TABLET, e.phone = null) : e.mobile = e.tablet = e.phone = null)\n        }, u.mobileGrade = function(e) {\n            var t = null !== e.mobile();\n            return e.os(\"iOS\") && 4.3 <= e.version(\"iPad\") || e.os(\"iOS\") && 3.1 <= e.version(\"iPhone\") || e.os(\"iOS\") && 3.1 <= e.version(\"iPod\") || 2.1 < e.version(\"Android\") && e.is(\"Webkit\") || 7 <= e.version(\"Windows Phone OS\") || e.is(\"BlackBerry\") && 6 <= e.version(\"BlackBerry\") || e.match(\"Playbook.*Tablet\") || 1.4 <= e.version(\"webOS\") && e.match(\"Palm|Pre|Pixi\") || e.match(\"hp.*TouchPad\") || e.is(\"Firefox\") && 12 <= e.version(\"Firefox\") || e.is(\"Chrome\") && e.is(\"AndroidOS\") && 4 <= e.version(\"Android\") || e.is(\"Skyfire\") && 4.1 <= e.version(\"Skyfire\") && e.is(\"AndroidOS\") && 2.3 <= e.version(\"Android\") || e.is(\"Opera\") && 11 < e.version(\"Opera Mobi\") && e.is(\"AndroidOS\") || e.is(\"MeeGoOS\") || e.is(\"Tizen\") || e.is(\"Dolfin\") && 2 <= e.version(\"Bada\") || (e.is(\"UC Browser\") || e.is(\"Dolfin\")) && 2.3 <= e.version(\"Android\") || e.match(\"Kindle Fire\") || e.is(\"Kindle\") && 3 <= e.version(\"Kindle\") || e.is(\"AndroidOS\") && e.is(\"NookTablet\") || 11 <= e.version(\"Chrome\") && !t || 5 <= e.version(\"Safari\") && !t || 4 <= e.version(\"Firefox\") && !t || 7 <= e.version(\"MSIE\") && !t || 10 <= e.version(\"Opera\") && !t ? \"A\" : e.os(\"iOS\") && e.version(\"iPad\") < 4.3 || e.os(\"iOS\") && e.version(\"iPhone\") < 3.1 || e.os(\"iOS\") && e.version(\"iPod\") < 3.1 || e.is(\"Blackberry\") && 5 <= e.version(\"BlackBerry\") && e.version(\"BlackBerry\") < 6 || 5 <= e.version(\"Opera Mini\") && e.version(\"Opera Mini\") <= 6.5 && (2.3 <= e.version(\"Android\") || e.is(\"iOS\")) || e.match(\"NokiaN8|NokiaC7|N97.*Series60|Symbian/3\") || 11 <= e.version(\"Opera Mobi\") && e.is(\"SymbianOS\") ? \"B\" : (e.version(\"BlackBerry\") < 5 || e.match(\"MSIEMobile|Windows CE.*Mobile\") || e.version(\"Windows Mobile\"), \"C\")\n        }, u.detectOS = function(e) {\n            return u.findMatch(u.mobileDetectRules.oss0, e) || u.findMatch(u.mobileDetectRules.oss, e)\n        }, u.getDeviceSmallerSide = function() {\n            return window.screen.width < window.screen.height ? window.screen.width : window.screen.height\n        }, o.prototype = {\n            constructor: o,\n            mobile: function() {\n                return u.prepareDetectionCache(this._cache, this.ua, this.maxPhoneWidth), this._cache.mobile\n            },\n            phone: function() {\n                return u.prepareDetectionCache(this._cache, this.ua, this.maxPhoneWidth), this._cache.phone\n            },\n            tablet: function() {\n                return u.prepareDetectionCache(this._cache, this.ua, this.maxPhoneWidth), this._cache.tablet\n            },\n            userAgent: function() {\n                return this._cache.userAgent === f && (this._cache.userAgent = u.findMatch(u.mobileDetectRules.uas, this.ua)), this._cache.userAgent\n            },\n            userAgents: function() {\n                return this._cache.userAgents === f && (this._cache.userAgents = u.findMatches(u.mobileDetectRules.uas, this.ua)), this._cache.userAgents\n            },\n            os: function() {\n                return this._cache.os === f && (this._cache.os = u.detectOS(this.ua)), this._cache.os\n            },\n            version: function(e) {\n                return u.getVersion(e, this.ua)\n            },\n            versionStr: function(e) {\n                return u.getVersionStr(e, this.ua)\n            },\n            is: function(e) {\n                return n(this.userAgents(), e) || t(e, this.os()) || t(e, this.phone()) || t(e, this.tablet()) || n(u.findMatches(u.mobileDetectRules.utils, this.ua), e)\n            },\n            match: function(e) {\n                return (e = e instanceof RegExp ? e : new RegExp(e, \"i\")).test(this.ua)\n            },\n            isPhoneSized: function(e) {\n                return o.isPhoneSized(e || this.maxPhoneWidth)\n            },\n            mobileGrade: function() {\n                return this._cache.grade === f && (this._cache.grade = u.mobileGrade(this)), this._cache.grade\n            }\n        }, \"undefined\" != typeof window && window.screen ? o.isPhoneSized = function(e) {\n            return e < 0 ? f : u.getDeviceSmallerSide() <= e\n        } : o.isPhoneSized = function() {}, o._impl = u, o.version = \"1.4.5 2021-03-13\", o\n    })\n})(), (() => {\n    function e(e) {\n        if ((document.layers || document.getElementById && !document.all) && (2 == e.which || 3 == e.which)) return !1\n    }\n    document.layers ? (document.captureEvents(Event.MOUSEDOWN), document.onmousedown = e) : (document.onmouseup = e, document.oncontextmenu = function() {\n        if (document.all) return !1\n    }), document.onkeydown = function(e) {\n        if (e.ctrlKey && 85 === e.keyCode || 123 === e.keyCode) return !1\n    }\n})(), (o => {\n    function i() {\n        var t = o(\"#user-info\"),\n            n = o(\"#user-info-mobile\");\n        0 === t.length && 0 === n.length || o.ajax({\n            url: window.wp.ajaxUrl,\n            type: \"POST\",\n            data: {\n                action: \"get_user_sidebar\"\n            },\n            success: function(e) {\n                e.success && (0 < t.length && (t.html(e.data.html), t.removeClass(\"loading-user-info\")), 0 < n.length && (n.html(e.data.mobile_html), n.removeClass(\"loading-user-info\")), window.wp && (e.data.html.includes(\"form\") || e.data.mobile_html.includes(\"form\")) && o.ajax({\n                    url: window.wp.ajaxUrl,\n                    type: \"POST\",\n                    data: {\n                        action: \"get_nonce\"\n                    }\n                }).then(function(e) {\n                    e.success && (window.wp.nonce = e.data.nonce)\n                }), r.init(), a.init(), o(\".progress-bar\").each(function() {\n                    var e = o(this),\n                        t = e.attr(\"style\").match(/width:\\s*(\\d+)%/);\n                    t && (e.css(\"width\", \"0%\"), setTimeout(function() {\n                        e.css(\"width\", t[0])\n                    }, 500))\n                }))\n            },\n            error: function() {\n                var e = '<div class=\"alert-error\">Không thể tải thông tin người dùng</div>';\n                0 < t.length && (t.html(e), t.removeClass(\"loading-user-info\")), 0 < n.length && (n.html(e), n.removeClass(\"loading-user-info\"))\n            }\n        })\n    }\n    var r = {\n            init: function() {\n                o(\".form-tabs .tab-btn\").click(function() {\n                    var e = o(this).data(\"tab\");\n                    o(\".form-tabs .tab-btn\").removeClass(\"active\"), o(this).addClass(\"active\"), o(\".tab-content\").hide(), o(\"#sidebar-\" + e + \"-tab\").show(), o(\"#sidebarAlertMessage\").hide()\n                }), o(\"#sidebarLoginForm\").submit(function(e) {\n                    e.preventDefault();\n                    var e = o(this),\n                        t = e.find('button[type=\"submit\"]'),\n                        n = t.html();\n                    t.addClass(\"btn-loading\").html('<i class=\"glyphicon glyphicon-refresh\"></i> Đang xử lý...'), o.ajax({\n                        url: window.wp.ajaxUrl,\n                        type: \"POST\",\n                        data: {\n                            action: \"user_login\",\n                            username: e.find('input[name=\"username\"]').val(),\n                            password: e.find('input[name=\"password\"]').val(),\n                            remember: e.find('input[name=\"remember\"]').is(\":checked\"),\n                            nonce: window.wp.nonce\n                        },\n                        success: function(e) {\n                            e.success ? (r.showAlert(\"success\", e.data.message), i()) : r.showAlert(\"error\", e.data.message)\n                        },\n                        error: function() {\n                            r.showAlert(\"error\", \"Có lỗi xảy ra. Vui lòng thử lại!\")\n                        },\n                        complete: function() {\n                            t.removeClass(\"btn-loading\").html(n)\n                        }\n                    })\n                }), o(\"#sidebarRegisterForm\").submit(function(e) {\n                    e.preventDefault();\n                    var t = o(this),\n                        n = t.find('button[type=\"submit\"]'),\n                        i = n.html();\n                    n.addClass(\"btn-loading\").html('<i class=\"glyphicon glyphicon-refresh\"></i> Đang xử lý...'), o.ajax({\n                        url: window.wp.ajaxUrl,\n                        type: \"POST\",\n                        data: {\n                            action: \"user_register\",\n                            username: t.find('input[name=\"username\"]').val(),\n                            email: t.find('input[name=\"email\"]').val(),\n                            password: t.find('input[name=\"password\"]').val(),\n                            confirm_password: t.find('input[name=\"confirm_password\"]').val(),\n                            nonce: window.wp.nonce\n                        },\n                        success: function(e) {\n                            e.success ? (r.showAlert(\"success\", e.data.message), setTimeout(function() {\n                                o('.tab-btn[data-tab=\"login\"]').click(), t[0].reset()\n                            }, 2e3)) : r.showAlert(\"error\", e.data.message)\n                        },\n                        error: function() {\n                            r.showAlert(\"error\", \"Có lỗi xảy ra. Vui lòng thử lại!\")\n                        },\n                        complete: function() {\n                            n.removeClass(\"btn-loading\").html(i)\n                        }\n                    })\n                })\n            },\n            showAlert: function(e, t) {\n                e = \"success\" === e ? \"alert-success\" : \"alert-error\";\n                o(\"#sidebarAlertMessage\").removeClass(\"alert-success alert-error\").addClass(e).html(t).show()\n            }\n        },\n        a = {\n            init: function() {\n                o(\"#mobileLoginBtn\").click(function() {\n                    o(\"#mobileLoginForm\").show(), o(\".mobile-login-buttons\").hide()\n                }), o(\"#mobileRegisterBtn\").click(function() {\n                    o(\"#mobileRegisterForm\").show(), o(\".mobile-login-buttons\").hide()\n                }), o(\".mobile-form-back\").click(function() {\n                    o(\".mobile-form\").hide(), o(\".mobile-login-buttons\").show(), o(\"#mobileAlertMessage\").hide()\n                }), o(\"#mobileSidebarLoginForm\").submit(function(e) {\n                    e.preventDefault();\n                    var e = o(this),\n                        t = e.find('button[type=\"submit\"]'),\n                        n = t.html();\n                    t.addClass(\"btn-loading\").html('<i class=\"glyphicon glyphicon-refresh\"></i> Đang xử lý...'), o.ajax({\n                        url: window.wp.ajaxUrl,\n                        type: \"POST\",\n                        data: {\n                            action: \"user_login\",\n                            username: e.find('input[name=\"username\"]').val(),\n                            password: e.find('input[name=\"password\"]').val(),\n                            remember: e.find('input[name=\"remember\"]').is(\":checked\"),\n                            nonce: window.wp.nonce\n                        },\n                        success: function(e) {\n                            e.success ? (a.showAlert(\"success\", e.data.message), i()) : a.showAlert(\"error\", e.data.message)\n                        },\n                        error: function() {\n                            a.showAlert(\"error\", \"Có lỗi xảy ra. Vui lòng thử lại!\")\n                        },\n                        complete: function() {\n                            t.removeClass(\"btn-loading\").html(n)\n                        }\n                    })\n                }), o(\"#mobileSidebarRegisterForm\").submit(function(e) {\n                    e.preventDefault();\n                    var t = o(this),\n                        n = t.find('button[type=\"submit\"]'),\n                        i = n.html();\n                    n.addClass(\"btn-loading\").html('<i class=\"glyphicon glyphicon-refresh\"></i> Đang xử lý...'), o.ajax({\n                        url: window.wp.ajaxUrl,\n                        type: \"POST\",\n                        data: {\n                            action: \"user_register\",\n                            username: t.find('input[name=\"username\"]').val(),\n                            email: t.find('input[name=\"email\"]').val(),\n                            password: t.find('input[name=\"password\"]').val(),\n                            confirm_password: t.find('input[name=\"confirm_password\"]').val(),\n                            nonce: window.wp.nonce\n                        },\n                        success: function(e) {\n                            e.success ? (a.showAlert(\"success\", e.data.message), setTimeout(function() {\n                                o(\".mobile-form\").hide(), o(\".mobile-login-buttons\").show(), t[0].reset()\n                            }, 2e3)) : a.showAlert(\"error\", e.data.message)\n                        },\n                        error: function() {\n                            a.showAlert(\"error\", \"Có lỗi xảy ra. Vui lòng thử lại!\")\n                        },\n                        complete: function() {\n                            n.removeClass(\"btn-loading\").html(i)\n                        }\n                    })\n                })\n            },\n            showAlert: function(e, t) {\n                e = \"success\" === e ? \"alert-success\" : \"alert-error\";\n                o(\"#mobileAlertMessage\").removeClass(\"alert-success alert-error\").addClass(e).html(t).show()\n            }\n        },\n        s = {\n            init: function() {\n                o(\"#showRegister\").click(function(e) {\n                    e.preventDefault(), o(\"#loginForm\").hide(), o(\"#registerForm\").show(), o(\"#loginModalLabel\").text(\"Đăng ký\"), o(\"#alertMessage\").hide()\n                }), o(\"#showLogin\").click(function(e) {\n                    e.preventDefault(), o(\"#registerForm\").hide(), o(\"#loginForm\").show(), o(\"#loginModalLabel\").text(\"Đăng nhập\"), o(\"#alertMessage\").hide()\n                }), o(\"#userLoginForm\").submit(function(e) {\n                    e.preventDefault();\n                    var t = o(this).find('button[type=\"submit\"]'),\n                        n = t.text();\n                    t.prop(\"disabled\", !0).text(\"Đang xử lý...\"), o.ajax({\n                        url: window.wp.ajaxUrl,\n                        type: \"POST\",\n                        data: {\n                            action: \"user_login\",\n                            username: o(\"#loginUsername\").val(),\n                            password: o(\"#loginPassword\").val(),\n                            remember: o(\"#rememberMe\").is(\":checked\"),\n                            nonce: window.wp.nonce\n                        },\n                        success: function(e) {\n                            e.success ? (s.showAlert(\"success\", e.data.message), i(), setTimeout(function() {\n                                o(\"#loginModal\").modal(\"hide\")\n                            }, 1500)) : s.showAlert(\"danger\", e.data.message)\n                        },\n                        error: function() {\n                            s.showAlert(\"danger\", \"Có lỗi xảy ra. Vui lòng thử lại!\")\n                        },\n                        complete: function() {\n                            t.prop(\"disabled\", !1).text(n)\n                        }\n                    })\n                }), o(\"#userRegisterForm\").submit(function(e) {\n                    e.preventDefault();\n                    var t = o(this).find('button[type=\"submit\"]'),\n                        n = t.text();\n                    t.prop(\"disabled\", !0).text(\"Đang xử lý...\"), o.ajax({\n                        url: window.wp.ajaxUrl,\n                        type: \"POST\",\n                        data: {\n                            action: \"user_register\",\n                            username: o(\"#registerUsername\").val(),\n                            email: o(\"#registerEmail\").val(),\n                            password: o(\"#registerPassword\").val(),\n                            confirm_password: o(\"#confirmPassword\").val(),\n                            nonce: window.wp.nonce\n                        },\n                        success: function(e) {\n                            e.success ? (s.showAlert(\"success\", e.data.message), setTimeout(function() {\n                                o(\"#showLogin\").click(), o(\"#userRegisterForm\")[0].reset()\n                            }, 2e3)) : s.showAlert(\"danger\", e.data.message)\n                        },\n                        error: function() {\n                            s.showAlert(\"danger\", \"Có lỗi xảy ra. Vui lòng thử lại!\")\n                        },\n                        complete: function() {\n                            t.prop(\"disabled\", !1).text(n)\n                        }\n                    })\n                }), o(\"#loginModal\").on(\"hidden.bs.modal\", function() {\n                    o(\"#userLoginForm\")[0].reset(), o(\"#userRegisterForm\")[0].reset(), o(\"#alertMessage\").hide(), o(\"#registerForm\").hide(), o(\"#loginForm\").show(), o(\"#loginModalLabel\").text(\"Đăng nhập\")\n                })\n            },\n            showAlert: function(e, t) {\n                e = `\n        <div class=\"alert alert-${e} alert-dismissible fade show\" role=\"alert\">\n          ${t}\n          <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"alert\"></button>\n        </div>\n      `;\n                o(\"#alertMessage\").html(e).show()\n            }\n        };\n    o(document).ready(function() {\n        i(), s.init(), a.init()\n    })\n})(jQuery), jQuery(document).ready(function(t) {\n    t(\"#dailyCheckinBtn\").on(\"click\", function() {\n        t(this).prop(\"disabled\", !0).html('<i class=\"glyphicon glyphicon-refresh\"></i> Đang xử lý...'), t.ajax({\n            url: window.wp.ajaxUrl,\n            type: \"POST\",\n            data: {\n                action: \"daily_checkin\",\n                nonce: window.wp.nonce\n            },\n            success: function(e) {\n                e.success ? (alert(e.data.message), location.reload()) : (alert(e.data.message), t(\"#dailyCheckinBtn\").prop(\"disabled\", !1).html('<i class=\"glyphicon glyphicon-calendar\"></i> Điểm danh hàng ngày'))\n            },\n            error: function() {\n                alert(\"Có lỗi xảy ra. Vui lòng thử lại sau.\"), t(\"#dailyCheckinBtn\").prop(\"disabled\", !1).html('<i class=\"glyphicon glyphicon-calendar\"></i> Điểm danh hàng ngày')\n            }\n        })\n    })\n}), (n => {\n    function t() {\n        n(\".tw-badge, .tw-featured-badge\").each(function() {\n            var e = n(this),\n                t = e.attr(\"title\");\n            t && e.tooltip({\n                title: t,\n                placement: \"top\",\n                container: \"body\"\n            })\n        })\n    }\n    n(document).ready(function() {\n        var e;\n        t(), 0 < n(\".tw-user-badges-container\").length && (e = n(\".tw-user-badges-container\").data(\"user-id\") || 0, n.ajax({\n            url: twBadgeSystem.ajaxUrl,\n            type: \"POST\",\n            data: {\n                action: \"get_user_badges\",\n                nonce: twBadgeSystem.nonce,\n                user_id: e || 0\n            },\n            success: function(e) {\n                e.success && (n(\".tw-user-badges-container\").html(e.data.html), t(), n(document).trigger(\"tw_badges_loaded\", [e.data.badges]))\n            }\n        }))\n    })\n})(jQuery), (t => {\n    t(document).ready(function() {\n        t(\"#badge_type\").on(\"change\", function() {\n            var e = t(this).val();\n            e && console.log(\"Đã chọn loại huy hiệu: \" + e)\n        }), t(\"#badge_level\").on(\"change\", function() {\n            var e = t(this).val();\n            e && console.log(\"Đã chọn cấp độ: \" + e)\n        })\n    })\n})(jQuery), (t => {\n    var e = {\n        readingStarted: !1,\n        readingTime: 0,\n        readingTimer: null,\n        maxScrollPercent: 0,\n        contentHeight: 0,\n        windowHeight: 0,\n        postId: wp.currentPostId,\n        expAwardedForTesting: !1,\n        init: function() {\n            t(\"#chapter-c\") && wp.isLoggedIn && (this.checkReadingHistory(), this.contentHeight = t(\"#chapter-c\").height(), this.windowHeight = t(window).height(), this.startReadingTimer(), t(window).on(\"scroll\", function() {\n                this.trackScrollPosition()\n            }.bind(this)), t(window).on(\"beforeunload\", this.saveReadingProgress.bind(this)), t(\".chapter-navigation .next-chapter\").on(\"click\", this.completeReading.bind(this)), this.addMarkAsReadButton())\n        },\n        checkReadingHistory: function() {\n            var e = \"reading_history_\" + this.postId,\n                e = localStorage.getItem(e);\n            e && !(e = JSON.parse(e)).expAwarded && (this.readingTime = e.readTime || 0, this.maxScrollPercent = e.scrollPercent || 0)\n        },\n        saveReadingProgress: function() {\n            var e = \"reading_history_\" + this.postId,\n                t = {\n                    readTime: this.readingTime,\n                    scrollPercent: this.maxScrollPercent,\n                    lastRead: (new Date).toISOString(),\n                    expAwarded: !1\n                };\n            localStorage.setItem(e, JSON.stringify(t))\n        },\n        markExpAwarded: function() {\n            var e = \"reading_history_\" + this.postId,\n                t = localStorage.getItem(e);\n            t && ((t = JSON.parse(t)).expAwarded = !0, localStorage.setItem(e, JSON.stringify(t)))\n        },\n        startReadingTimer: function() {\n            this.readingStarted || (this.readingStarted = !0, this.readingTimer = setInterval(function() {\n                this.readingTime++, this.readingTime % 30 == 0 && this.saveReadingProgress()\n            }.bind(this), 1e3))\n        },\n        trackScrollPosition: function() {\n            var e;\n            this.readingStarted && (e = t(window).scrollTop() / (t(document).height() - this.windowHeight) * 100) > this.maxScrollPercent && 50 < (this.maxScrollPercent = e) && !this.expAwardedForTesting && (this.expAwardedForTesting = !0, this.awardExperience())\n        },\n        completeReading: function() {\n            this.readingTimer && clearInterval(this.readingTimer);\n            var t = this.calculateMinReadTime();\n            if (this.readingTime >= t && 80 <= this.maxScrollPercent) this.awardExperience();\n            else {\n                let e = \"\";\n                e = this.readingTime < t ? \"Bạn cần dành thêm thời gian để đọc chương này.\" : \"Bạn cần đọc hết chương để nhận thưởng.\"\n            }\n        },\n        calculateMinReadTime: function() {\n            var e = t(\"#chapter-c\").text().trim().split(/\\s+/).length;\n            return Math.max(30, 60 * Math.ceil(e / 200))\n        },\n        awardExperience: function() {\n            t.ajax({\n                url: wp.ajaxUrl,\n                type: \"POST\",\n                data: {\n                    action: \"award_reading_exp\",\n                    post_id: this.postId,\n                    read_time: this.readingTime,\n                    scroll_percent: this.maxScrollPercent,\n                    nonce: wp.nonce\n                },\n                success: function(e) {\n                    e.success && this.markExpAwarded()\n                }.bind(this)\n            })\n        },\n        addMarkAsReadButton: function() {\n            t(\".chapter-navigation\").append(`\n                <button class=\"btn btn-primary mark-as-read\">\n                    <i class=\"glyphicon glyphicon-check\"></i> Đánh dấu đã đọc\n                </button>\n            `), t(\".mark-as-read\").on(\"click\", function(e) {\n                e.preventDefault(), this.completeReading()\n            }.bind(this))\n        }\n    };\n    t(document).ready(function() {\n        e.init()\n    })\n})(jQuery), (a => {\n    let u = {\n        postId: null,\n        currentPage: 1,\n        currentSort: \"top\",\n        isLoading: !1,\n        hasMore: !1,\n        totalComments: 0,\n        currentUserAvatar: \"\",\n        i18n: {\n            replyText: \"Trả lời\",\n            likeText: \"Thích\",\n            likedText: \"Đã thích\",\n            addComment: \"Thêm bình luận...\",\n            writeReply: \"Viết trả lời...\",\n            loadingComments: \"Đang tải bình luận...\",\n            noComments: \"Chưa có bình luận nào. Hãy là người đầu tiên bình luận!\",\n            loginToComment: 'Vui lòng <a href=\"/\">đăng nhập</a> để bình luận.',\n            sortBy: \"Sắp xếp theo:\",\n            top: \"Hàng đầu\",\n            newest: \"Mới nhất\",\n            oldest: \"Cũ nhất\",\n            edited: \"Đã chỉnh sửa\",\n            commentsCount: \"Bình luận\",\n            loadMore: \"Tải thêm bình luận\"\n        }\n    };\n\n    function e() {\n        var e = a(\"#fb-comment\");\n        e.length && (u.postId = e.data(\"post-id\"), u.postId ? (wp && wp.isLoggedIn && (u.currentUserAvatar = wp.currentUserAvatar || wp.defaultAvatar || \"https://secure.gravatar.com/avatar/?s=40&d=mm\"), e.data(\"chap-id\") || (t(e), n(), i())) : console.error(\"Không có ID bài viết cho bình luận\"))\n    }\n\n    function t(e) {\n        var t = wp && wp.isLoggedIn,\n            n = e.data(\"chap-id\"),\n            i = e.data(\"chap-title\"),\n            n = `\n    <div class=\"tw-fb-comments-container\">\n      <div class=\"tw-fb-comments-header\">\n        <div class=\"tw-fb-comments-count\">\n          <span class=\"comments-count-number\">0</span> ${u.i18n.commentsCount}\n          ${n && i ? ` | <span class=\"tw-fb-chapter-info\">\n              <span class=\"tw-fb-chapter-title\">Chương ${i}</span>\n            </span>\n          `: \"\"}\n        </div>\n        <div class=\"tw-fb-comments-sort\">\n          <span>${u.i18n.sortBy}</span>\n          <select class=\"tw-fb-sort-select\">\n            <option value=\"top\">${u.i18n.top}</option>\n            <option value=\"newest\">${u.i18n.newest}</option>\n            <option value=\"oldest\">${u.i18n.oldest}</option>\n          </select>\n        </div>\n      </div>\n      \n      <div class=\"tw-fb-comment-form-container\">\n        ${t ? o() : `<div class=\"tw-fb-login-prompt\">${u.i18n.loginToComment}</div>`}\n      </div>\n      \n      <div class=\"tw-fb-comment-list\">\n        <div class=\"tw-fb-comments-loading\">\n          <div class=\"spinner\"></div>\n          <p>${u.i18n.loadingComments}</p>\n        </div>\n      </div>\n      \n      <div class=\"tw-fb-comments-load-more\" style=\"display: none;\">\n        <button class=\"btn btn-outline-primary btn-sm load-more-comments\">\n          ${u.i18n.loadMore}\n        </button>\n      </div>\n    </div>\n    `;\n        e.html(n)\n    }\n\n    function o(e = null) {\n        var t = e ? u.i18n.writeReply : u.i18n.addComment,\n            n = e ? \"tw-fb-reply-input\" : \"\",\n            i = e ? `data-parent-id=\"${e}\"` : \"\";\n        return `\n      <div class=\"${e ? \"tw-fb-reply-form\" : \"tw-fb-comment-form\"}\">\n        <div class=\"user-avatar\">\n          <img src=\"${u.currentUserAvatar}\" alt=\"Avatar của bạn\">\n        </div>\n        <div class=\"tw-fb-comment-input-wrapper\">\n          <textarea class=\"tw-fb-comment-input ${n}\" placeholder=\"${t}\"></textarea>\n          <button type=\"button\" class=\"tw-fb-comment-submit btn btn-sm\" ${i}>\n            <i class=\"glyphicon glyphicon-send\"></i> \n            ${u.i18n.addComment}\n          </button>\n        </div>\n      </div>\n    `\n    }\n\n    function n(n = 1, e = \"top\") {\n        let i = a(\"#fb-comment\"),\n            o = i.find(\".tw-fb-comment-list\");\n        u.isLoading || (u.isLoading = !0, u.currentPage = n, u.currentSort = e, 1 === n && o.html(`\n        <div class=\"tw-fb-comments-loading\">\n          <div class=\"spinner\"></div>\n          <p>${u.i18n.loadingComments}</p>\n        </div>\n      `), a.ajax({\n            url: wp.ajaxUrl,\n            type: \"POST\",\n            data: {\n                action: \"tw_get_fb_comments\",\n                post_id: u.postId,\n                page: n,\n                sort: e\n            },\n            success: function(e) {\n                if (e.success) {\n                    var t = e.data;\n                    if (u.hasMore = t.has_more, u.totalComments = t.total, i.find(\".comments-count-number\").text(t.total), 1 === n ? 0 === t.comments.length ? o.html(`<div class=\"tw-fb-no-comments\">${u.i18n.noComments}</div>`) : (o.empty(), t.comments.forEach(e => o.append(d(e)))) : t.comments.forEach(e => o.append(d(e))), i.find(\".tw-fb-comments-load-more\").toggle(t.has_more), t.is_logged_in && wp && wp.isLoggedIn) {\n                        t = t.comments;\n                        let n = parseInt(wp.userId || 0),\n                            i = e => {\n                                for (var t of e) {\n                                    if (t.author.id === n) return u.currentUserAvatar = t.author.avatar, s(), !0;\n                                    if (t.replies && t.replies.length && i(t.replies)) return !0\n                                }\n                                return !1\n                            };\n                        i(t)\n                    }\n                } else console.error(\"Lỗi khi tải bình luận:\", e.data.message)\n            },\n            error: function(e, t, n) {\n                console.error(\"Lỗi AJAX:\", n)\n            },\n            complete: function() {\n                u.isLoading = !1, i.find(\".tw-fb-comments-loading\").remove()\n            }\n        }))\n    }\n\n    function s() {\n        a(\".tw-fb-comment-form .user-avatar img, .tw-fb-reply-form .user-avatar img\").attr(\"src\", u.currentUserAvatar)\n    }\n\n    function d(e) {\n        var t, n = 0 < e.parent_id,\n            i = n ? \"tw-fb-comment tw-fb-reply\" : \"tw-fb-comment\",\n            o = e.user_liked ? u.i18n.likedText : u.i18n.likeText,\n            r = e.user_liked ? \"tw-fb-comment-action liked\" : \"tw-fb-comment-action\",\n            a = e.is_edited ? \" · \" + u.i18n.edited : \"\",\n            s = e.chap_title ? `<span class=\"tw-fb-comment-chapter\">Chương ${e?.chap_title?.split(\":\")?.[0]?.trim()}</span>` : \"\";\n        let l = \"\",\n            c = (e.author.featured_badge && (t = e.author.featured_badge, l = `<span class=\"tw-fb-comment-badge\" style=\"background-color: ${t.color};\" title=\"${t.badge_type_name} - ${t.name}\">${t.name}</span>`), `\n  <div class=\"${i}\" id=\"comment-${e.id}\" data-id=\"${e.id}\">\n    <div class=\"tw-fb-comment-avatar\">\n      <img src=\"${e.author.avatar}\" alt=\"${e.author.name}\">\n    </div>\n    <div class=\"tw-fb-comment-content\">\n      <div class=\"tw-fb-comment-bubble\">\n        <div class=\"tw-fb-comment-author\">\n          ${e.author.name}\n          ${e.author.position ? `<small>(${e.author.position})</small>` : \"\"}\n          <span class=\"tw-fb-comment-level\">Lv.${e.author.level}</span>\n          ${l}\n          ${s}\n        </div>\n        <div class=\"tw-fb-comment-text\">${e.content}</div>\n      </div>\n      <div class=\"tw-fb-comment-actions\">\n        <span class=\"${r}\" data-action=\"like\" data-comment-id=\"${e.id}\">\n          ${o} ${0 < e.likes ? \"· \" + e.likes : \"\"}\n        </span>\n        ${n ? \"\" : `<span class=\"tw-fb-comment-action\" data-action=\"reply\" data-comment-id=\"${e.id}\">${u.i18n.replyText}</span>`}\n        <span class=\"tw-fb-comment-time\">${e.date} trước${a}</span>\n      </div>\n  `);\n        return e.replies && 0 < e.replies.length && (c += '<div class=\"tw-fb-comment-replies\">', e.replies.forEach(e => {\n            c += d(e)\n        }), c += \"</div>\"), n || (c += `<div class=\"tw-fb-reply-form-container\" id=\"reply-form-${e.id}\" style=\"display: none;\"></div>`), c += \"</div></div>\"\n    }\n\n    function i() {\n        let r = a(\"#fb-comment\");\n        r.on(\"change\", \".tw-fb-sort-select\", function() {\n            n(1, a(this).val())\n        }), r.on(\"click\", \".load-more-comments\", function() {\n            !u.isLoading && u.hasMore && n(u.currentPage + 1, u.currentSort)\n        }), r.on(\"keydown\", \".tw-fb-comment-input\", function(e) {\n            e.stopPropagation(), 13 !== e.keyCode || e.shiftKey || (e.preventDefault(), a(this).closest(\".tw-fb-comment-input-wrapper\").find(\".tw-fb-comment-submit\").click())\n        }), r.on(\"click\", \".tw-fb-comment-submit\", function() {\n            if (wp && wp.isLoggedIn) {\n                let e = a(this),\n                    o = e.closest(\".tw-fb-comment-input-wrapper\").find(\".tw-fb-comment-input\");\n                var t = o.val().trim();\n                if (t) {\n                    e.prop(\"disabled\", !0);\n                    t = {\n                        action: \"tw_add_fb_comment\",\n                        content: t,\n                        post_id: u.postId,\n                        chap_id: a(\"#fb-comment\").data(\"chap-id\") || 0\n                    };\n                    let i = e.data(\"parent-id\");\n                    i && (t.parent_id = i), a.ajax({\n                        url: wp.ajaxUrl,\n                        type: \"POST\",\n                        data: t,\n                        success: function(e) {\n                            if (e.success) {\n                                o.val(\"\");\n                                var t = e.data.comment;\n                                if (t.author.id === parseInt(wp.userId || 0) && (u.currentUserAvatar = t.author.avatar, s()), i) {\n                                    var n = a(\"#comment-\" + i);\n                                    let e = n.find(\".tw-fb-comment-replies\");\n                                    e.length || (n.find(\".tw-fb-comment-content\").append('<div class=\"tw-fb-comment-replies\"></div>'), e = n.find(\".tw-fb-comment-replies\")), e.append(d(t)), a(\"#reply-form-\" + i).hide()\n                                } else {\n                                    n = r.find(\".tw-fb-comment-list\");\n                                    n.find(\".tw-fb-no-comments\").remove(), n.prepend(d(t))\n                                }\n                                u.totalComments++, r.find(\".comments-count-number\").text(u.totalComments)\n                            } else alert(e.data.message)\n                        },\n                        error: function() {\n                            alert(\"Đã xảy ra lỗi. Vui lòng thử lại.\")\n                        },\n                        complete: function() {\n                            e.prop(\"disabled\", !1)\n                        }\n                    })\n                }\n            } else a(\"#loginModal\").modal(\"show\")\n        }), r.on(\"click\", '.tw-fb-comment-action[data-action=\"like\"]', function() {\n            if (wp && wp.isLoggedIn) {\n                let n = a(this);\n                var e = n.data(\"comment-id\");\n                a.ajax({\n                    url: wp.ajaxUrl,\n                    type: \"POST\",\n                    data: {\n                        action: \"tw_like_fb_comment\",\n                        comment_id: e\n                    },\n                    success: function(e) {\n                        var t;\n                        e.success && (t = \"liked\" === e.data.action, e = 0 < e.data.likes ? \" · \" + e.data.likes : \"\", n.toggleClass(\"liked\", t), n.html((t ? u.i18n.likedText : u.i18n.likeText) + e))\n                    }\n                })\n            } else a(\"#loginModal\").modal(\"show\")\n        }), r.on(\"click\", '.tw-fb-comment-action[data-action=\"reply\"]', function() {\n            var e, t;\n            wp && wp.isLoggedIn ? (e = a(this).data(\"comment-id\"), (t = a(\"#reply-form-\" + e)).is(\":visible\") ? t.hide() : (a(\".tw-fb-reply-form-container\").hide(), t.html(o(e)).show(), t.find(\".tw-fb-comment-input\").focus())) : a(\"#loginModal\").modal(\"show\")\n        })\n    }\n    a(document).ready(e), a(\".chapter-nav\").on(\"click\", \"button#chapter_comment\", function(e) {\n        e.preventDefault(), t(a(\"#fb-comment\")), n(), i()\n    })\n})(jQuery), (() => {\n    \"serviceWorker\" in navigator && window.addEventListener(\"load\", function() {\n        navigator.serviceWorker.register(\"/service-worker.js\").then(function(e) {\n            console.log(\"ServiceWorker registration successful with scope: \", e.scope)\n        }).catch(function(e) {\n            console.log(\"ServiceWorker registration failed: \", e)\n        })\n    });\n    let n, i = !1,\n        o = (window.addEventListener(\"beforeinstallprompt\", function(t) {\n            if (t.preventDefault(), n = t, window.innerWidth <= 768 && !i) {\n                let e = document.getElementById(\"pwa-install-prompt\");\n                e && !localStorage.getItem(\"pwa-prompt-dismissed\") && (setTimeout(function() {\n                    e.style.display = \"block\", setTimeout(function() {\n                        e.style.transform = \"translateY(0)\"\n                    }, 10)\n                }, 2e3), i = !0, (t = document.getElementById(\"pwa-install-btn\")) && t.addEventListener(\"click\", function() {\n                    e.style.transform = \"translateY(100%)\", setTimeout(function() {\n                        e.style.display = \"none\"\n                    }, 300), n && (n.prompt(), n.userChoice.then(function(e) {\n                        \"accepted\" === e.outcome ? (console.log(\"User accepted the install prompt\"), l(\"Cảm ơn bạn đã cài đặt ứng dụng!\", \"success\")) : console.log(\"User dismissed the install prompt\"), n = null\n                    }))\n                }), (t = document.getElementById(\"pwa-dismiss-btn\")) && t.addEventListener(\"click\", function() {\n                    e.style.transform = \"translateY(100%)\", setTimeout(function() {\n                        e.style.display = \"none\"\n                    }, 300), localStorage.setItem(\"pwa-prompt-dismissed\", Date.now())\n                }), (t = document.getElementById(\"pwa-close-btn\")) && t.addEventListener(\"click\", function() {\n                    e.style.transform = \"translateY(100%)\", setTimeout(function() {\n                        e.style.display = \"none\"\n                    }, 300), localStorage.setItem(\"pwa-prompt-dismissed\", Date.now())\n                }), setTimeout(function() {\n                    \"none\" !== e.style.display && (e.style.transform = \"translateY(100%)\", setTimeout(function() {\n                        e.style.display = \"none\"\n                    }, 300))\n                }, 15e3))\n            }\n        }), (c = localStorage.getItem(\"pwa-prompt-dismissed\")) && 7 < (Date.now() - c) / 864e5 && localStorage.removeItem(\"pwa-prompt-dismissed\"), window.addEventListener(\"appinstalled\", function(e) {\n            console.log(\"PWA was installed\");\n            let t = document.getElementById(\"pwa-install-prompt\");\n            t && (t.style.transform = \"translateY(100%)\", setTimeout(function() {\n                t.style.display = \"none\"\n            }, 300))\n        }), navigator.onLine),\n        t = null;\n\n    function r() {\n        return new Promise(n => {\n            if (navigator.onLine) {\n                let e = new AbortController,\n                    t = setTimeout(() => e.abort(), 3e3);\n                fetch(\"/manifest.json\", {\n                    method: \"HEAD\",\n                    cache: \"no-cache\",\n                    signal: e.signal\n                }).then(() => {\n                    clearTimeout(t), n(!0)\n                }).catch(() => {\n                    clearTimeout(t), n(!1)\n                })\n            } else n(!1)\n        })\n    }\n\n    function a(e = !1) {\n        e ? (e = o, (o = navigator.onLine) && !e ? r().then(e => {\n            s(e)\n        }) : s(o)) : r().then(e => {\n            s(o = e)\n        })\n    }\n\n    function s(e) {\n        var t = document.body.classList.contains(\"offline\");\n        e ? (document.body.classList.remove(\"offline\"), t && (l(\"Đã kết nối internet\", \"success\"), document.body.classList.remove(\"was-offline\"))) : t || (document.body.classList.add(\"offline\"), document.body.classList.add(\"was-offline\"), l(\"Mất kết nối internet - Đang sử dụng chế độ offline\", \"warning\"))\n    }\n\n    function l(e, t = \"info\") {\n        let n = document.createElement(\"div\");\n        n.style.cssText = `\n      position: fixed;\n      top: 20px;\n      right: 20px;\n      padding: 12px 20px;\n      border-radius: 8px;\n      color: white;\n      z-index: 10000;\n      font-size: 14px;\n      max-width: 300px;\n      box-shadow: 0 4px 12px rgba(0,0,0,0.15);\n      transform: translateX(120%);\n      transition: transform 0.3s ease;\n      background: ${\"success\" === t ? \"#4CAF50\" : \"warning\" === t ? \"#FF9800\" : \"#2196F3\"};\n    `, n.textContent = e, document.body.appendChild(n), setTimeout(function() {\n            n.style.transform = \"translateX(0)\"\n        }, 10), setTimeout(function() {\n            n.style.transform = \"translateX(120%)\", setTimeout(function() {\n                n.remove()\n            }, 300)\n        }, 3e3)\n    }\n    window.addEventListener(\"online\", () => a(!0)), window.addEventListener(\"offline\", () => a(!0)), a(),\n        function e() {\n            t && clearTimeout(t), o || (t = setTimeout(() => {\n                a(), e()\n            }, 1e4))\n        }();\n    var e, c = document.createElement(\"style\");\n    c.textContent = `\n    .offline {\n      filter: grayscale(0.3);\n    }\n    .offline::before {\n      content: \"Chế độ Offline\";\n      position: fixed;\n      top: 0;\n      left: 0;\n      right: 0;\n      background: #f44336;\n      color: white;\n      text-align: center;\n      padding: 8px;\n      z-index: 9999;\n      font-size: 14px;\n      font-weight: bold;\n      box-shadow: 0 2px 10px rgba(0,0,0,0.2);\n    }\n  `, document.head.appendChild(c), \"serviceWorker\" in navigator && \"SyncManager\" in window && document.addEventListener(\"submit\", function(e) {\n        var t, i = e.target;\n        if (\"true\" === i.dataset.pwasync && !o) {\n            e.preventDefault();\n            var e = new FormData(i);\n            let n = {};\n            e.forEach(function(e, t) {\n                n[t] = e\n            }), e = i.action, t = n, i = i.method, console.log(\"Saving form data for later:\", e, t, i), navigator.serviceWorker.ready.then(function(e) {\n                e.sync.register(\"form-submission\")\n            }), l(\"Form sẽ được gửi khi có kết nối internet\", \"info\")\n        }\n    }), window.clearPWACache = function() {\n        \"serviceWorker\" in navigator && navigator.serviceWorker.ready.then(e => {\n            var t = new MessageChannel;\n            t.port1.onmessage = e => {\n                e.data && e.data.success ? l(\"Đã xóa cache thành công\", \"success\") : l(\"Không thể xóa cache\", \"warning\")\n            }, e.active.postMessage({\n                type: \"CLEAR_CACHE\"\n            }, [t.port2])\n        })\n    }, c = localStorage.getItem(\"pwa-last-visit\"), e = Date.now(), localStorage.setItem(\"pwa-last-visit\", e), c && 30 < (e - c) / 6e4 && l(\"Chào mừng bạn quay trở lại!\", \"info\")\n})();\n"]}