marionette-rails 1.8.2 → 1.8.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 8268429e6f3f8e764d994a7e7e0817fa632fda80
4
- data.tar.gz: 049534ed91e29cd91bccf75f5703facb745ede82
3
+ metadata.gz: 5baf41ab0e5fea07f6241d7966e24a145f728ff1
4
+ data.tar.gz: 345b6cb42605f619f892950ea9e3cf646f4b86a2
5
5
  SHA512:
6
- metadata.gz: 6436eabeb6347bad7c9bfce62445088a73fb69d7f105111e85906132714946b2eac63cb1d9d71c5c2ee69e5eaa7105103e554bbca1c52ba6bb8f8eeccdc0eb5e
7
- data.tar.gz: 170522677b343fe4bf36ae5c96853d15bdab9e7c9f4629c05a68fc60ce018f2e83e5cb6878a3da3e2e10312673d68f75f1ee2a347682f0dd8e869d09102874a8
6
+ metadata.gz: 9b18e20a82211679a1b28e988661a80d772f6660cac4f940e228135f4d56afea4f9bec3c73363d97f1791b805a33c04b840c083bc1d14baf0820a0d91e880b29
7
+ data.tar.gz: d42253502b83d864fc4728ead448471e6615890d282502e69ab66980b05ac56759ea45ae91513c6dc0cedf3ee1888e3dedfc4fd084b897fa7fe5386cd6e3bee2
@@ -1,5 +1,5 @@
1
1
  module Marionette
2
2
  module Rails
3
- VERSION = '1.8.2'
3
+ VERSION = '1.8.3'
4
4
  end
5
5
  end
@@ -1,6 +1,6 @@
1
1
  // MarionetteJS (Backbone.Marionette)
2
2
  // ----------------------------------
3
- // v1.8.2
3
+ // v1.8.3
4
4
  //
5
5
  // Copyright (c)2014 Derick Bailey, Muted Solutions, LLC.
6
6
  // Distributed under MIT license
@@ -1405,10 +1405,6 @@ Marionette.View = Backbone.View.extend({
1405
1405
  constructor: function(options){
1406
1406
  _.bindAll(this, "render");
1407
1407
 
1408
- if (_.isObject(this.behaviors)) {
1409
- new Marionette.Behaviors(this);
1410
- }
1411
-
1412
1408
  // this exposes view options to the view initializer
1413
1409
  // this is a backfill since backbone removed the assignment
1414
1410
  // of this.options
@@ -1417,6 +1413,11 @@ Marionette.View = Backbone.View.extend({
1417
1413
 
1418
1414
  // parses out the @ui DSL for events
1419
1415
  this.events = this.normalizeUIKeys(_.result(this, 'events'));
1416
+
1417
+ if (_.isObject(this.behaviors)) {
1418
+ new Marionette.Behaviors(this);
1419
+ }
1420
+
1420
1421
  Backbone.View.prototype.constructor.apply(this, arguments);
1421
1422
 
1422
1423
  Marionette.MonitorDOMRefresh(this);
@@ -1 +1 @@
1
- {"version":3,"file":"lib/backbone.marionette.min.js","sources":["?"],"names":["Backbone","ChildViewContainer","_","Container","views","this","_views","_indexByModel","_indexByCustom","_updateLength","each","add","extend","prototype","view","customIndex","viewCid","cid","model","findByModel","findByModelCid","modelCid","findByCid","findByCustom","index","findByIndex","values","remove","any","key","call","method","apply","tail","arguments","args","isFunction","length","size","methods","concat","toArray","Wreqr","Marionette","Handlers","options","_wreqrHandlers","initialize","Model","Events","setHandlers","handlers","handler","name","context","isObject","callback","setHandler","config","trigger","hasHandler","getHandler","Array","slice","removeHandler","removeAllHandlers","CommandStorage","_commands","getCommands","commandName","commands","command","instances","addCommand","push","clearCommands","Commands","storageType","constructor","_initializeStorage","on","_executeCommands","execute","storage","StorageType","RequestResponse","request","EventAggregator","EA","Channel","channelName","vent","reqres","reset","off","stopListening","connectEvents","hash","_connect","connectCommands","connectRequests","type","fn","eventName","bind","radio","Radio","_channels","_proxyMethods","channel","Error","_getChannel","system","messageSystems","proxyMethod","messageSystem","global","throwError","message","error","$","getOption","target","optionName","value","undefined","normalizeMethods","normalizedHash","normalizeUIKeys","ui","keys","v","pattern","match","replace","r","actAsCollection","object","listProperty","list","result","triggerMethod","getEventName","prefix","toUpperCase","splitter","event","methodName","MonitorDOMRefresh","documentElement","handleShow","_isShown","triggerDOMRefresh","handleRender","_isRendered","isInDOM","contains","el","listenTo","document","bindFromStrings","entity","evt","methodNames","split","bindToFunction","unbindFromStrings","unbindToFunction","iterateEvents","bindings","functionCallback","stringCallback","bindEntityEvents","unbindEntityEvents","Callbacks","_deferred","Deferred","_callbacks","contextOverride","cb","ctx","done","run","resolve","callbacks","Controller","close","Region","buildRegion","regionConfig","defaultRegionType","regionIsString","isString","regionSelectorIsString","selector","regionTypeIsUndefined","isUndefined","regionType","regionIsType","RegionType","region","parentEl","getEl","find","show","ensureEl","showOptions","isViewClosed","isClosed","$el","isDifferentView","currentView","preventClose","_shouldCloseView","render","open","empty","append","attachView","RegionManager","_regions","addRegions","regionDefinitions","defaults","regions","definition","addRegion","hasSelector","_store","get","removeRegion","_remove","removeRegions","closeRegions","_setLength","TemplateCache","templateId","templateCaches","cachedTemplate","load","clear","i","compiledTemplate","template","loadTemplate","compileTemplate","html","rawTemplate","Renderer","data","templateFunc","View","bindAll","behaviors","Behaviors","events","onShowCalled","getTemplate","mixinTemplateHelpers","templateHelpers","configureTriggers","triggers","triggerEvents","hasOptions","e","prevent","preventDefault","stop","stopPropagation","shouldPrevent","shouldStop","collection","delegateEvents","_delegateDOMEvents","combinedEvents","behaviorEvents","undelegateEvents","shouldClose","unbindUIElements","bindUIElements","_uiBindings","ItemView","serializeData","toJSON","items","CollectionView","itemViewEventPrefix","_initChildViewStorage","_initialEvents","initRenderBuffer","elBuffer","createDocumentFragment","_bufferedChildren","startBuffering","isBuffering","endBuffering","appendBuffer","_triggerShowBufferedChildren","child","addChildView","removeItemView","item","closeEmptyView","getItemView","indexOf","addItemView","children","triggerBeforeRender","triggerRendered","_renderChildren","closeChildren","isEmpty","showEmptyView","showCollection","EmptyView","getEmptyView","_showingEmptyView","itemView","itemViewOptions","buildItemView","addChildViewEventForwarding","renderItemView","rootEvent","itemEvents","getItemEvents","splice","appendHtml","ItemViewType","removeChildView","checkEmpty","collectionView","buffer","appendChild","CompositeView","once","isRendered","resetItemViewContainer","renderModel","compositeView","$container","getItemViewContainer","containerView","$itemViewContainer","container","itemViewContainer","charAt","substr","Layout","_firstRender","_initializeRegions","_reInitializeRegions","regionManager","_buildRegions","getRegion","that","_initRegionManager","Behavior","parseBehaviors","wrap","setElement","b","invoke","onShow","onClose","_behaviorsEvents","viewUI","_events","behaviorUI","whitespace","join","eventKey","behaviorsLookup","getBehaviorClass","behaviorClass","map","BehaviorClass","partial","AppRouter","Router","appRoutes","controller","_getController","processAppRoutes","_processOnRoute","appRoute","route","_addAppRoute","routeName","routeArgs","routePath","invert","onRoute","routeNames","reverse","Application","_initCallbacks","submodules","addInitializer","initializer","start","_regionManager","module","moduleNames","moduleDefinition","ModuleClass","Module","getClass","unshift","create","moduleName","app","_setupInitializersAndFinalizers","startWithParent","_initializerCallbacks","addFinalizer","_finalizerCallbacks","_isInitialized","mod","addDefinition","customArgs","_runModuleDefinition","flatten","moduleDefinitions","parentModule","_getModule","_addModuleDefinition","def","moduleClass","_getDefine","_getStartWithParent","_addStartWithParent","swp","define","startWithParentIsConfigured"],"mappings":";;;;;;;;;;;;;;;;;;;;AAkCAA,SAASC,mBAAqB,SAAUD,EAAUE,GAKhD,GAAIC,GAAY,SAASC,GACvBC,KAAKC,UACLD,KAAKE,iBACLF,KAAKG,kBACLH,KAAKI,gBAELP,EAAEQ,KAAKN,EAAOC,KAAKM,IAAKN,MAM1BH,GAAEU,OAAOT,EAAUU,WAMjBF,IAAK,SAASG,EAAMC,GAClB,GAAIC,GAAUF,EAAKG,GAgBnB,OAbAZ,MAAKC,OAAOU,GAAWF,EAGnBA,EAAKI,QACPb,KAAKE,cAAcO,EAAKI,MAAMD,KAAOD,GAInCD,IACFV,KAAKG,eAAeO,GAAeC,GAGrCX,KAAKI,gBACEJ,MAKTc,YAAa,SAASD,GACpB,MAAOb,MAAKe,eAAeF,EAAMD,MAMnCG,eAAgB,SAASC,GACvB,GAAIL,GAAUX,KAAKE,cAAcc,EACjC,OAAOhB,MAAKiB,UAAUN,IAIxBO,aAAc,SAASC,GACrB,GAAIR,GAAUX,KAAKG,eAAegB,EAClC,OAAOnB,MAAKiB,UAAUN,IAKxBS,YAAa,SAASD,GACpB,MAAOtB,GAAEwB,OAAOrB,KAAKC,QAAQkB,IAI/BF,UAAW,SAASL,GAClB,MAAOZ,MAAKC,OAAOW,IAIrBU,OAAQ,SAASb,GACf,GAAIE,GAAUF,EAAKG,GAoBnB,OAjBIH,GAAKI,aACAb,MAAKE,cAAcO,EAAKI,MAAMD,KAIvCf,EAAE0B,IAAIvB,KAAKG,eAAgB,SAASS,EAAKY,GACvC,MAAIZ,KAAQD,SACHX,MAAKG,eAAeqB,IACpB,GAFT,QAICxB,YAGIA,MAAKC,OAAOU,GAGnBX,KAAKI,gBACEJ,MAMTyB,KAAM,SAASC,GACb1B,KAAK2B,MAAMD,EAAQ7B,EAAE+B,KAAKC,aAM5BF,MAAO,SAASD,EAAQI,GACtBjC,EAAEQ,KAAKL,KAAKC,OAAQ,SAASQ,GACvBZ,EAAEkC,WAAWtB,EAAKiB,KACpBjB,EAAKiB,GAAQC,MAAMlB,EAAMqB,UAM/B1B,cAAe,WACbJ,KAAKgC,OAASnC,EAAEoC,KAAKjC,KAAKC,UAS9B,IAAIiC,IAAW,UAAW,OAAQ,MAAO,OAAQ,SAAU,SACzD,SAAU,SAAU,QAAS,MAAO,OAAQ,MAAO,UACnD,WAAY,SAAU,UAAW,QAAS,UAAW,OACrD,OAAQ,UAAW,UAAW,QAWhC,OATArC,GAAEQ,KAAK6B,EAAS,SAASR,GACvB5B,EAAUU,UAAUkB,GAAU,WAC5B,GAAI3B,GAAQF,EAAEwB,OAAOrB,KAAKC,QACtB6B,GAAQ/B,GAAOoC,OAAOtC,EAAEuC,QAAQP,WACpC,OAAOhC,GAAE6B,GAAQC,MAAM9B,EAAGiC,MAKvBhC,GACNH,SAAUE,GAYbF,SAAS0C,MAAQ,SAAU1C,EAAU2C,EAAYzC,GAC/C,YACA,IAAIwC,KAiZJ,OA3YFA,GAAME,SAAW,SAAU5C,EAAUE,GAMnC,GAAI0C,GAAW,SAASC,GACtBxC,KAAKwC,QAAUA,EACfxC,KAAKyC,kBAED5C,EAAEkC,WAAW/B,KAAK0C,aACpB1C,KAAK0C,WAAWF,GAsEpB,OAlEAD,GAAShC,OAASZ,EAASgD,MAAMpC,OAKjCV,EAAEU,OAAOgC,EAAS/B,UAAWb,EAASiD,QAGpCC,YAAa,SAASC,GACpBjD,EAAEQ,KAAKyC,EAAU,SAASC,EAASC,GACjC,GAAIC,GAAU,IAEVpD,GAAEqD,SAASH,KAAalD,EAAEkC,WAAWgB,KACvCE,EAAUF,EAAQE,QAClBF,EAAUA,EAAQI,UAGpBnD,KAAKoD,WAAWJ,EAAMD,EAASE,IAC9BjD,OAKLoD,WAAY,SAASJ,EAAMD,EAASE,GAClC,GAAII,IACFF,SAAUJ,EACVE,QAASA,EAGXjD,MAAKyC,eAAeO,GAAQK,EAE5BrD,KAAKsD,QAAQ,cAAeN,EAAMD,EAASE,IAI7CM,WAAY,SAASP,GACnB,QAAUhD,KAAKyC,eAAeO,IAMhCQ,WAAY,SAASR,GACnB,GAAIK,GAASrD,KAAKyC,eAAeO,EAEjC,IAAKK,EAIL,MAAO,YACL,GAAIvB,GAAO2B,MAAMjD,UAAUkD,MAAM/B,MAAME,UACvC,OAAOwB,GAAOF,SAASxB,MAAM0B,EAAOJ,QAASnB,KAKjD6B,cAAe,SAASX,SACfhD,MAAKyC,eAAeO,IAI7BY,kBAAmB,WACjB5D,KAAKyC,qBAIFF,GACN5C,EAAUE,GAMbwC,EAAMwB,eAAiB,WAIrB,GAAIA,GAAiB,SAASrB,GAC5BxC,KAAKwC,QAAUA,EACfxC,KAAK8D,aAEDjE,EAAEkC,WAAW/B,KAAK0C,aACpB1C,KAAK0C,WAAWF,GA2CpB,OAtCA3C,GAAEU,OAAOsD,EAAerD,UAAWb,EAASiD,QAK1CmB,YAAa,SAASC,GACpB,GAAIC,GAAWjE,KAAK8D,UAAUE,EAe9B,OAZKC,KAGHA,GACEC,QAASF,EACTG,cAIFnE,KAAK8D,UAAUE,GAAeC,GAGzBA,GAKTG,WAAY,SAASJ,EAAalC,GAChC,GAAIoC,GAAUlE,KAAK+D,YAAYC,EAC/BE,GAAQC,UAAUE,KAAKvC,IAIzBwC,cAAe,SAASN,GACtB,GAAIE,GAAUlE,KAAK+D,YAAYC,EAC/BE,GAAQC,gBAILN,KAQTxB,EAAMkC,SAAW,SAAUlC,GAGzB,MAAOA,GAAME,SAAShC,QAEpBiE,YAAanC,EAAMwB,eAEnBY,YAAa,SAASjC,GACpBxC,KAAKwC,QAAUA,MAEfxC,KAAK0E,mBAAmB1E,KAAKwC,SAC7BxC,KAAK2E,GAAG,cAAe3E,KAAK4E,iBAAkB5E,KAE9C,IAAI8B,GAAO2B,MAAMjD,UAAUkD,MAAMjC,KAAKI,UACtCQ,GAAME,SAAS/B,UAAUiE,YAAY9C,MAAM3B,KAAM8B,IAInD+C,QAAS,SAAS7B,EAAMlB,GACtBkB,EAAOnB,UAAU,GACjBC,EAAO2B,MAAMjD,UAAUkD,MAAMjC,KAAKI,UAAW,GAEzC7B,KAAKuD,WAAWP,GAClBhD,KAAKwD,WAAWR,GAAMrB,MAAM3B,KAAM8B,GAElC9B,KAAK8E,QAAQV,WAAWpB,EAAMlB,IAMlC8C,iBAAkB,SAAS5B,EAAMD,EAASE,GACxC,GAAIiB,GAAUlE,KAAK8E,QAAQf,YAAYf,EAGvCnD,GAAEQ,KAAK6D,EAAQC,UAAW,SAASrC,GACjCiB,EAAQpB,MAAMsB,EAASnB,KAGzB9B,KAAK8E,QAAQR,cAActB,IAK7B0B,mBAAoB,SAASlC,GAC3B,GAAIsC,GAEAC,EAAcvC,EAAQgC,aAAexE,KAAKwE,WAE5CM,GADEjF,EAAEkC,WAAWgD,GACL,GAAIA,GAEJA,EAGZ/E,KAAK8E,QAAUA,MAIlBzC,GAOHA,EAAM2C,gBAAkB,SAAU3C,GAGhC,MAAOA,GAAME,SAAShC,QACpB0E,QAAS,WACP,GAAIjC,GAAOnB,UAAU,GACjBC,EAAO2B,MAAMjD,UAAUkD,MAAMjC,KAAKI,UAAW,EACjD,OAAI7B,MAAKuD,WAAWP,GACXhD,KAAKwD,WAAWR,GAAMrB,MAAM3B,KAAM8B,GAD3C,WAMHO,GAOHA,EAAM6C,gBAAkB,SAAUvF,EAAUE,GAE1C,GAAIsF,GAAK,YAQT,OALAA,GAAG5E,OAASZ,EAASgD,MAAMpC,OAG3BV,EAAEU,OAAO4E,EAAG3E,UAAWb,EAASiD,QAEzBuC,GACNxF,EAAUE,GAObwC,EAAM+C,QAAU,WAGd,GAAIA,GAAU,SAASC,GACrBrF,KAAKsF,KAAc,GAAI3F,GAAS0C,MAAM6C,gBACtClF,KAAKuF,OAAc,GAAI5F,GAAS0C,MAAM2C,gBACtChF,KAAKiE,SAAc,GAAItE,GAAS0C,MAAMkC,SACtCvE,KAAKqF,YAAcA,EA8CrB,OA3CAxF,GAAEU,OAAO6E,EAAQ5E,WAGfgF,MAAO,WAKL,MAJAxF,MAAKsF,KAAKG,MACVzF,KAAKsF,KAAKI,gBACV1F,KAAKuF,OAAO3B,oBACZ5D,KAAKiE,SAASL,oBACP5D,MAIT2F,cAAe,SAASC,EAAM3C,GAE5B,MADAjD,MAAK6F,SAAS,OAAQD,EAAM3C,GACrBjD,MAGT8F,gBAAiB,SAASF,EAAM3C,GAE9B,MADAjD,MAAK6F,SAAS,WAAYD,EAAM3C,GACzBjD,MAGT+F,gBAAiB,SAASH,EAAM3C,GAE9B,MADAjD,MAAK6F,SAAS,SAAUD,EAAM3C,GACvBjD,MAIT6F,SAAU,SAASG,EAAMJ,EAAM3C,GAC7B,GAAK2C,EAAL,CAIA3C,EAAUA,GAAWjD,IACrB,IAAI0B,GAAmB,SAATsE,EAAmB,KAAO,YAExCnG,GAAEQ,KAAKuF,EAAM,SAASK,EAAIC,GACxBlG,KAAKgG,GAAMtE,GAAQwE,EAAWrG,EAAEsG,KAAKF,EAAIhD,KACxCjD,UAKAoF,GACN/C,GAMHA,EAAM+D,MAAQ,SAAU/D,GAGtB,GAAIgE,GAAQ,WACVrG,KAAKsG,aACLtG,KAAKsF,QACLtF,KAAKiE,YACLjE,KAAKuF,UACLvF,KAAKuG,gBAGP1G,GAAEU,OAAO8F,EAAM7F,WAEbgG,QAAS,SAASnB,GAChB,IAAKA,EACH,KAAM,IAAIoB,OAAM,8BAGlB,OAAOzG,MAAK0G,YAAarB,IAG3BqB,YAAa,SAASrB,GACpB,GAAImB,GAAUxG,KAAKsG,UAAUjB,EAO7B,OALImB,KACFA,EAAU,GAAInE,GAAM+C,QAAQC,GAC5BrF,KAAKsG,UAAUjB,GAAemB,GAGzBA,GAGTD,cAAe,WACb1G,EAAEQ,MAAM,OAAQ,WAAY,UAAW,SAASsG,GAC9C9G,EAAEQ,KAAMuG,EAAeD,GAAS,SAASjF,GACvC1B,KAAK2G,GAAQjF,GAAUmF,EAAY7G,KAAM2G,EAAQjF,IAChD1B,OACFA,QAKP,IAAI4G,IACFtB,MACE,KACA,MACA,UACA,OACA,gBACA,WACA,gBAGFrB,UACE,UACA,aACA,cACA,gBACA,qBAGFsB,QACE,UACA,aACA,cACA,gBACA,sBAIAsB,EAAc,SAAST,EAAOO,EAAQjF,GACxC,MAAO,UAAS2D,GACd,GAAIyB,GAAgBV,EAAMM,YAAYrB,GAAasB,GAC/C7E,EAAO2B,MAAMjD,UAAUkD,MAAMjC,KAAKI,UAAW,EAEjDiF,GAAcpF,GAAQC,MAAMmF,EAAehF,IAI/C,OAAO,IAAIuE,IAEVhE,GAGMA,GACN1C,SAAUA,SAAS2C,WAAYzC,EAElC,IAAIyC,YAAa,SAAUyE,EAAQpH,EAAUE,GAC3C,YAeF,SAASmH,GAAWC,EAASjE,GAC3B,GAAIkE,GAAQ,GAAIT,OAAMQ,EAEtB,MADAC,GAAMlE,KAAOA,GAAQ,QACfkE,EAfN,GAAI5E,KACJ3C,GAAS2C,WAAaA,EAGtBA,EAAW6E,EAAIxH,EAASwH,CAM1B,IAAIzD,GAAQD,MAAMjD,UAAUkD,KA23E1B,OA/2EFpB,GAAW/B,OAASZ,EAASgD,MAAMpC,OAOnC+B,EAAW8E,UAAY,SAASC,EAAQC,GACtC,GAAKD,GAAWC,EAAhB,CACA,GAAIC,EAQJ,OALEA,GADEF,EAAO7E,SAAY8E,IAAcD,GAAO7E,SAA4CgF,SAA/BH,EAAO7E,QAAQ8E,GAC9DD,EAAO7E,QAAQ8E,GAEfD,EAAOC,KAWnBhF,EAAWmF,iBAAmB,SAAS7B,GACrC,GAAyBlE,GAArBgG,IAWJ,OAVA7H,GAAEQ,KAAKuF,EAAM,SAASK,EAAIjD,GACxBtB,EAASuE,EACJpG,EAAEkC,WAAWL,KAChBA,EAAS1B,KAAK0B,IAEXA,IAGLgG,EAAe1E,GAAQtB,IACtB1B,MACI0H,GAOTpF,EAAWqF,gBAAkB,SAAS/B,EAAMgC,GAC1C,MAAqB,mBAAX,IAIV/H,EAAEQ,KAAKR,EAAEgI,KAAKjC,GAAO,SAASkC,GAC5B,GAAIC,GAAU,qBACVD,GAAEE,MAAMD,KACVnC,EAAKkC,EAAEG,QAAQF,EAAS,SAASG,GAC/B,MAAON,GAAGM,EAAExE,MAAM,OACdkC,EAAKkC,SACJlC,GAAKkC,MAITlC,GAdP,QAqBFtD,EAAW6F,gBAAkB,SAASC,EAAQC,GAC5C,GAAInG,IAAW,UAAW,OAAQ,MAAO,OAAQ,SAAU,SACzD,SAAU,SAAU,QAAS,MAAO,OAAQ,MAAO,UACnD,WAAY,SAAU,UAAW,QAAS,UAAW,OACrD,OAAQ,UAAW,UAAW,QAEhCrC,GAAEQ,KAAK6B,EAAS,SAASR,GACvB0G,EAAO1G,GAAU,WACf,GAAI4G,GAAOzI,EAAEwB,OAAOxB,EAAE0I,OAAOvI,KAAMqI,IAC/BvG,GAAQwG,GAAMnG,OAAOtC,EAAEuC,QAAQP,WACnC,OAAOhC,GAAE6B,GAAQC,MAAM9B,EAAGiC,OAYhCQ,EAAWkG,cAAgB,WAOzB,QAASC,GAAaT,EAAOU,EAAQxC,GACnC,MAAOA,GAAUyC,cALnB,GAAIC,GAAW,cASXJ,EAAgB,SAASK,GAE3B,GAAIC,GAAa,KAAOD,EAAMZ,QAAQW,EAAUH,GAC5C/G,EAAS1B,KAAK8I,EAQlB,OALGjJ,GAAEkC,WAAW/B,KAAKsD,UACnBtD,KAAKsD,QAAQ3B,MAAM3B,KAAM6B,WAIvBhC,EAAEkC,WAAWL,GAERA,EAAOC,MAAM3B,KAAMH,EAAE+B,KAAKC,YAFnC,OAMF,OAAO2G,MAUTlG,EAAWyG,kBAAoB,SAAUC,GAGvC,QAASC,GAAWxI,GAClBA,EAAKyI,UAAW,EAChBC,EAAkB1I,GAIpB,QAAS2I,GAAa3I,GACpBA,EAAK4I,aAAc,EACnBF,EAAkB1I,GAIpB,QAAS0I,GAAkB1I,GACrBA,EAAKyI,UAAYzI,EAAK4I,aAAeC,EAAQ7I,IAC3CZ,EAAEkC,WAAWtB,EAAK+H,gBACpB/H,EAAK+H,cAAc,eAKzB,QAASc,GAAQ7I,GACf,MAAOuI,GAAgBO,SAAS9I,EAAK+I,IAIvC,MAAO,UAAS/I,GACdA,EAAKgJ,SAAShJ,EAAM,OAAQ,WAC1BwI,EAAWxI,KAGbA,EAAKgJ,SAAShJ,EAAM,SAAU,WAC5B2I,EAAa3I,OAGhBiJ,SAASV,iBAmBZ,SAAU1G,GAKR,QAASqH,GAAgBtC,EAAQuC,EAAQC,EAAK3H,GAC5C,GAAI4H,GAAc5H,EAAQ6H,MAAM,MAEhClK,GAAEQ,KAAKyJ,EAAa,SAAShB,GAE3B,GAAIpH,GAAS2F,EAAOyB,EAChBpH,IACFsF,EAAW,WAAY8B,EAAY,6DAGrCzB,EAAOoC,SAASG,EAAQC,EAAKnI,KAKjC,QAASsI,GAAe3C,EAAQuC,EAAQC,EAAKnI,GACzC2F,EAAOoC,SAASG,EAAQC,EAAKnI,GAKjC,QAASuI,GAAkB5C,EAAQuC,EAAQC,EAAK3H,GAC9C,GAAI4H,GAAc5H,EAAQ6H,MAAM,MAEhClK,GAAEQ,KAAKyJ,EAAa,SAAShB,GAC3B,GAAIpH,GAAS2F,EAAOyB,EACpBzB,GAAO3B,cAAckE,EAAQC,EAAKnI,KAKtC,QAASwI,GAAiB7C,EAAQuC,EAAQC,EAAKnI,GAC3C2F,EAAO3B,cAAckE,EAAQC,EAAKnI,GAKtC,QAASyI,GAAc9C,EAAQuC,EAAQQ,EAAUC,EAAkBC,GAC5DV,GAAWQ,IAGZvK,EAAEkC,WAAWqI,KACfA,EAAWA,EAAS3I,KAAK4F,IAI3BxH,EAAEQ,KAAK+J,EAAU,SAASlI,EAAS2H,GAI7BhK,EAAEkC,WAAWG,GACfmI,EAAiBhD,EAAQuC,EAAQC,EAAK3H,GAEtCoI,EAAejD,EAAQuC,EAAQC,EAAK3H,MAO1CI,EAAWiI,iBAAmB,SAASlD,EAAQuC,EAAQQ,GACrDD,EAAc9C,EAAQuC,EAAQQ,EAAUJ,EAAgBL,IAG1DrH,EAAWkI,mBAAqB,SAASnD,EAAQuC,EAAQQ,GACvDD,EAAc9C,EAAQuC,EAAQQ,EAAUF,EAAkBD,KAG3D3H,GASHA,EAAWmI,UAAY,WACrBzK,KAAK0K,UAAYpI,EAAW6E,EAAEwD,WAC9B3K,KAAK4K,eAGP/K,EAAEU,OAAO+B,EAAWmI,UAAUjK,WAK5BF,IAAK,SAAS6C,EAAU0H,GACtB7K,KAAK4K,WAAWvG,MAAMyG,GAAI3H,EAAU4H,IAAKF,IAEzC7K,KAAK0K,UAAUM,KAAK,SAAS/H,EAAST,GAChCqI,IAAkB5H,EAAU4H,GAChC1H,EAAS1B,KAAKwB,EAAST,MAO3ByI,IAAK,SAASzI,EAASS,GACrBjD,KAAK0K,UAAUQ,QAAQjI,EAAST,IAKlCgD,MAAO,WACL,GAAI2F,GAAYnL,KAAK4K,UACrB5K,MAAK0K,UAAYpI,EAAW6E,EAAEwD,WAC9B3K,KAAK4K,cAEL/K,EAAEQ,KAAK8K,EAAW,SAASL,GACzB9K,KAAKM,IAAIwK,EAAGA,GAAIA,EAAGC,MAClB/K,SAUPsC,EAAW8I,WAAa,SAAS5I,GAC/BxC,KAAKwI,cAAgBlG,EAAWkG,cAChCxI,KAAKwC,QAAUA,MAEX3C,EAAEkC,WAAW/B,KAAK0C,aACpB1C,KAAK0C,WAAW1C,KAAKwC,UAIzBF,EAAW8I,WAAW7K,OAAS+B,EAAW/B,OAM1CV,EAAEU,OAAO+B,EAAW8I,WAAW5K,UAAWb,EAASiD,QACjDyI,MAAO,WACLrL,KAAK0F,eACL,IAAI5D,GAAO2B,MAAMjD,UAAUkD,MAAMjC,KAAKI,UACtC7B,MAAKwI,cAAc7G,MAAM3B,MAAO,SAASmC,OAAOL,IAChD9B,KAAKyF,SAUTnD,EAAWgJ,OAAS,SAAS9I,GAQ3B,GAPAxC,KAAKwC,QAAUA,MACfxC,KAAKwJ,GAAKlH,EAAW8E,UAAUpH,KAAM,MAEhCA,KAAKwJ,IACRxC,EAAW,0CAA2C,aAGpDhH,KAAK0C,WAAW,CAClB,GAAIZ,GAAO2B,MAAMjD,UAAUkD,MAAM/B,MAAME,UACvC7B,MAAK0C,WAAWf,MAAM3B,KAAM8B,KAQhCjC,EAAEU,OAAO+B,EAAWgJ,QAgBlBC,YAAa,SAASC,EAAcC,GAClC,GAAIC,GAAiB7L,EAAE8L,SAASH,GAC5BI,EAAyB/L,EAAE8L,SAASH,EAAaK,UACjDC,EAAwBjM,EAAEkM,YAAYP,EAAaQ,YACnDC,EAAepM,EAAEkC,WAAWyJ,EAE3BS,IAAiBP,GAAmBE,GACvC5E,EAAW,mGAGb,IAAI6E,GAAUK,CAIVR,KACFG,EAAWL,GAGTA,EAAaK,WACfA,EAAWL,EAAaK,eACjBL,GAAaK,UAKlBI,IACFC,EAAaV,IAGVS,GAAgBH,IACnBI,EAAaT,GAGXD,EAAaQ,aACfE,EAAaV,EAAaQ,iBACnBR,GAAaQ,aAGlBN,GAAkBO,KACpBT,MAGFA,EAAahC,GAAKqC,CAGlB,IAAIM,GAAS,GAAID,GAAWV,EAkB5B,OAVIA,GAAaY,WACfD,EAAOE,MAAQ,SAASR,GACtB,GAAIO,GAAWZ,EAAaY,QAI5B,OAHIvM,GAAEkC,WAAWqK,KACfA,EAAWA,KAENA,EAASE,KAAKT,KAIlBM,KAQXtM,EAAEU,OAAO+B,EAAWgJ,OAAO9K,UAAWb,EAASiD,QAQ7C2J,KAAM,SAAS9L,EAAM+B,GACnBxC,KAAKwM,UAEL,IAAIC,GAAcjK,MACdkK,EAAejM,EAAKkM,UAAY9M,EAAEkM,YAAYtL,EAAKmM,KACnDC,EAAkBpM,IAAST,KAAK8M,YAChCC,IAAkBN,EAAYM,aAG9BC,GAAoBD,GAAgBF,CAEpCG,IACFhN,KAAKqL,QAGP5K,EAAKwM,SACL3K,EAAWkG,cAAc/G,KAAKzB,KAAM,cAAeS,GACnD6B,EAAWkG,cAAc/G,KAAKhB,EAAM,gBAEhCoM,GAAmBH,IACrB1M,KAAKkN,KAAKzM,GAGZT,KAAK8M,YAAcrM,EAEnB6B,EAAWkG,cAAc/G,KAAKzB,KAAM,OAAQS,GAC5C6B,EAAWkG,cAAc/G,KAAKhB,EAAM,SAGtC+L,SAAU,WACHxM,KAAK4M,KAA2B,IAApB5M,KAAK4M,IAAI5K,SACxBhC,KAAK4M,IAAM5M,KAAKqM,MAAMrM,KAAKwJ,MAM/B6C,MAAO,SAASR,GACd,MAAOvJ,GAAW6E,EAAE0E,IAKtBqB,KAAM,SAASzM,GACbT,KAAK4M,IAAIO,QAAQC,OAAO3M,EAAK+I,KAK/B6B,MAAO,WACL,GAAI5K,GAAOT,KAAK8M,WACXrM,KAAQA,EAAKkM,WAGdlM,EAAK4K,MAAS5K,EAAK4K,QACd5K,EAAKa,QAAUb,EAAKa,SAE7BgB,EAAWkG,cAAc/G,KAAKzB,KAAM,QAASS,SAEtCT,MAAK8M,cAOdO,WAAY,SAAS5M,GACnBT,KAAK8M,YAAcrM,GAOrB+E,MAAO,WACLxF,KAAKqL,cACErL,MAAK4M,OAKhBtK,EAAWgJ,OAAO/K,OAAS+B,EAAW/B,OAMtC+B,EAAWgL,cAAgB,SAAUhL,GAEnC,GAAIgL,GAAgBhL,EAAW8I,WAAW7K,QACxCkE,YAAa,SAASjC,GACpBxC,KAAKuN,YACLjL,EAAW8I,WAAW5K,UAAUiE,YAAYhD,KAAKzB,KAAMwC,IAMzDgL,WAAY,SAASC,EAAmBC,GACtC,GAAIC,KAeJ,OAbA9N,GAAEQ,KAAKoN,EAAmB,SAASG,EAAY5K,GACzCnD,EAAE8L,SAASiC,KACbA,GAAe/B,SAAU+B,IAGvBA,EAAW/B,WACb+B,EAAa/N,EAAE6N,YAAaE,EAAYF,GAG1C,IAAIvB,GAASnM,KAAK6N,UAAU7K,EAAM4K,EAClCD,GAAQ3K,GAAQmJ,GACfnM,MAEI2N,GAKTE,UAAW,SAAS7K,EAAM4K,GACxB,GAAIzB,GAEAjJ,EAAWrD,EAAEqD,SAAS0K,GACtBjC,EAAW9L,EAAE8L,SAASiC,GACtBE,IAAgBF,EAAW/B,QAY/B,OATEM,GADER,GAAazI,GAAY4K,EAClBxL,EAAWgJ,OAAOC,YAAYqC,EAAYtL,EAAWgJ,QACrDzL,EAAEkC,WAAW6L,GACbtL,EAAWgJ,OAAOC,YAAYqC,EAAYtL,EAAWgJ,QAErDsC,EAGX5N,KAAK+N,OAAO/K,EAAMmJ,GAClBnM,KAAKwI,cAAc,aAAcxF,EAAMmJ,GAChCA,GAIT6B,IAAK,SAAShL,GACZ,MAAOhD,MAAKuN,SAASvK,IAIvBiL,aAAc,SAASjL,GACrB,GAAImJ,GAASnM,KAAKuN,SAASvK,EAC3BhD,MAAKkO,QAAQlL,EAAMmJ,IAKrBgC,cAAe,WACbtO,EAAEQ,KAAKL,KAAKuN,SAAU,SAASpB,EAAQnJ,GACrChD,KAAKkO,QAAQlL,EAAMmJ,IAClBnM,OAKLoO,aAAc,WACZvO,EAAEQ,KAAKL,KAAKuN,SAAU,SAASpB,GAC7BA,EAAOd,SACNrL,OAKLqL,MAAO,WACLrL,KAAKmO,gBACL7L,EAAW8I,WAAW5K,UAAU6K,MAAM1J,MAAM3B,KAAM6B,YAIpDkM,OAAQ,SAAS/K,EAAMmJ,GACrBnM,KAAKuN,SAASvK,GAAQmJ,EACtBnM,KAAKqO,cAIPH,QAAS,SAASlL,EAAMmJ,GACtBA,EAAOd,QACPc,EAAOzG,sBACA1F,MAAKuN,SAASvK,GACrBhD,KAAKqO,aACLrO,KAAKwI,cAAc,gBAAiBxF,EAAMmJ,IAI5CkC,WAAY,WACVrO,KAAKgC,OAASnC,EAAEoC,KAAKjC,KAAKuN,YAO9B,OAFAjL,GAAW6F,gBAAgBmF,EAAc9M,UAAW,YAE7C8M,GACNhL,GAQHA,EAAWgM,cAAgB,SAASC,GAClCvO,KAAKuO,WAAaA,GAMpB1O,EAAEU,OAAO+B,EAAWgM,eAClBE,kBAKAR,IAAK,SAASO,GACZ,GAAIE,GAAiBzO,KAAKwO,eAAeD,EAOzC,OALKE,KACHA,EAAiB,GAAInM,GAAWgM,cAAcC,GAC9CvO,KAAKwO,eAAeD,GAAcE,GAG7BA,EAAeC,QAUxBC,MAAO,WACL,GAAIC,GACA9M,EAAO4B,EAAMjC,KAAKI,WAClBG,EAASF,EAAKE,MAElB,IAAIA,EAAS,EACX,IAAI4M,EAAE,EAAK5M,EAAF4M,EAAUA,UACV5O,MAAKwO,eAAe1M,EAAK8M,QAGlC5O,MAAKwO,qBAQX3O,EAAEU,OAAO+B,EAAWgM,cAAc9N,WAGhCkO,KAAM,WAEJ,GAAI1O,KAAK6O,iBACP,MAAO7O,MAAK6O,gBAId,IAAIC,GAAW9O,KAAK+O,aAAa/O,KAAKuO,WAGtC,OAFAvO,MAAK6O,iBAAmB7O,KAAKgP,gBAAgBF,GAEtC9O,KAAK6O,kBAQdE,aAAc,SAASR,GACrB,GAAIO,GAAWxM,EAAW6E,EAAEoH,GAAYU,MAMxC,OAJKH,IAAgC,IAApBA,EAAS9M,QACxBgF,EAAW,6BAA+BuH,EAAa,IAAK,mBAGvDO,GAOTE,gBAAiB,SAASE,GACxB,MAAOrP,GAAEiP,SAASI,MAStB5M,EAAW6M,UAMTlC,OAAQ,SAAS6B,EAAUM,GAEpBN,GACH9H,EAAW,kEAAmE,wBAGhF,IAAIqI,EAOJ,QALEA,EADsB,kBAAbP,GACMA,EAEAxM,EAAWgM,cAAcN,IAAIc,IAG1BM,KASxB9M,EAAWgN,KAAO3P,EAAS2P,KAAK/O,QAE9BkE,YAAa,SAASjC,GACpB3C,EAAE0P,QAAQvP,KAAM,UAEZH,EAAEqD,SAASlD,KAAKwP,YAClB,GAAIlN,GAAWmN,UAAUzP,MAO3BA,KAAKwC,QAAU3C,EAAEU,UAAWV,EAAE0I,OAAOvI,KAAM,WAAYH,EAAEkC,WAAWS,GAAWA,EAAQf,KAAKzB,MAAQwC,GAGpGxC,KAAK0P,OAAS1P,KAAK2H,gBAAgB9H,EAAE0I,OAAOvI,KAAM,WAClDL,EAAS2P,KAAK9O,UAAUiE,YAAY9C,MAAM3B,KAAM6B,WAEhDS,EAAWyG,kBAAkB/I,MAC7BA,KAAKyJ,SAASzJ,KAAM,OAAQA,KAAK2P,eAKnCnH,cAAelG,EAAWkG,cAI1Bf,iBAAkBnF,EAAWmF,iBAM7BmI,YAAa,WACX,MAAOtN,GAAW8E,UAAUpH,KAAM,aAQpC6P,qBAAsB,SAASxI,GAC7BA,EAASA,KACT,IAAIyI,GAAkBxN,EAAW8E,UAAUpH,KAAM,kBAIjD,OAHIH,GAAEkC,WAAW+N,KACfA,EAAkBA,EAAgBrO,KAAKzB,OAElCH,EAAEU,OAAO8G,EAAQyI,IAI1BnI,gBAAiB,SAAS/B,GACxB,GAAIgC,GAAK/H,EAAE0I,OAAOvI,KAAM,KACxB,OAAOsC,GAAWqF,gBAAgB/B,EAAMgC,IAK1CmI,kBAAmB,WACjB,GAAK/P,KAAKgQ,SAAV,CAEA,GAAIC,MAGAD,EAAWhQ,KAAK2H,gBAAgB9H,EAAE0I,OAAOvI,KAAM,YAqCnD,OAjCAH,GAAEQ,KAAK2P,EAAU,SAASzI,EAAO/F,GAE/B,GAAI0O,GAAarQ,EAAEqD,SAASqE,GACxBrB,EAAYgK,EAAa3I,EAAMsB,MAAQtB,CAG3C0I,GAAczO,GAAO,SAAS2O,GAG5B,GAAIA,EAAG,CACL,GAAIC,GAAUD,EAAEE,eACZC,EAAOH,EAAEI,gBAETC,EAAgBN,EAAa3I,EAAM8I,eAAiBD,EACpDK,EAAaP,EAAa3I,EAAMgJ,gBAAkBD,CAElDE,IAAiBJ,GAAWA,EAAQzO,MAAMwO,GAC1CM,GAAcH,GAAQA,EAAK3O,MAAMwO,GAIvC,GAAIrO,IACFrB,KAAMT,KACNa,MAAOb,KAAKa,MACZ6P,WAAY1Q,KAAK0Q,WAInB1Q,MAAKwI,cAActC,EAAWpE,KAG/B9B,MAEIiQ,IAKTU,eAAgB,SAASjB,GACvB1P,KAAK4Q,mBAAmBlB,GACxBpN,EAAWiI,iBAAiBvK,KAAMA,KAAKa,MAAOyB,EAAW8E,UAAUpH,KAAM,gBACzEsC,EAAWiI,iBAAiBvK,KAAMA,KAAK0Q,WAAYpO,EAAW8E,UAAUpH,KAAM,sBAIhF4Q,mBAAoB,SAASlB,GAC3BA,EAASA,GAAU1P,KAAK0P,OACpB7P,EAAEkC,WAAW2N,KAAUA,EAASA,EAAOjO,KAAKzB,MAEhD,IAAI6Q,MAGAC,EAAiBjR,EAAE0I,OAAOvI,KAAM,sBAChCgQ,EAAWhQ,KAAK+P,mBAGpBlQ,GAAEU,OAAOsQ,EAAgBC,EAAgBpB,EAAQM,GAEjDrQ,EAAS2P,KAAK9O,UAAUmQ,eAAelP,KAAKzB,KAAM6Q,IAKpDE,iBAAkB,WAChB,GAAIjP,GAAO2B,MAAMjD,UAAUkD,MAAMjC,KAAKI,UACtClC,GAAS2P,KAAK9O,UAAUuQ,iBAAiBpP,MAAM3B,KAAM8B,GAErDQ,EAAWkI,mBAAmBxK,KAAMA,KAAKa,MAAOyB,EAAW8E,UAAUpH,KAAM,gBAC3EsC,EAAWkI,mBAAmBxK,KAAMA,KAAK0Q,WAAYpO,EAAW8E,UAAUpH,KAAM,sBAIlF2P,aAAc,aAMdtE,MAAO,WACL,IAAIrL,KAAK2M,SAAT,CAEA,GAAI7K,GAAO2B,MAAMjD,UAAUkD,MAAMjC,KAAKI,WAIlCmP,EAAchR,KAAKwI,cAAc7G,MAAM3B,MAAO,gBAAgBmC,OAAOL,GACrEkP,MAAgB,IAOpBhR,KAAK2M,UAAW,EAChB3M,KAAKwI,cAAc7G,MAAM3B,MAAO,SAASmC,OAAOL,IAGhD9B,KAAKiR,mBAGLjR,KAAKsB,YAKP4P,eAAgB,WACd,GAAKlR,KAAK4H,GAAV,CAIK5H,KAAKmR,cACRnR,KAAKmR,YAAcnR,KAAK4H,GAI1B,IAAIwC,GAAWvK,EAAE0I,OAAOvI,KAAM,cAG9BA,MAAK4H,MAGL/H,EAAEQ,KAAKR,EAAEgI,KAAKuC,GAAW,SAAS5I,GAChC,GAAIqK,GAAWzB,EAAS5I,EACxBxB,MAAK4H,GAAGpG,GAAOxB,KAAKmH,EAAE0E,IACrB7L,QAILiR,iBAAkB,WACXjR,KAAK4H,IAAO5H,KAAKmR,cAGtBtR,EAAEQ,KAAKL,KAAK4H,GAAI,SAASgF,EAAK5J,SACrBhD,MAAK4H,GAAG5E,IACdhD,MAGHA,KAAK4H,GAAK5H,KAAKmR,kBACRnR,MAAKmR,gBAUhB7O,EAAW8O,SAAW9O,EAAWgN,KAAK/O,QAIpCkE,YAAa,WACXnC,EAAWgN,KAAK9O,UAAUiE,YAAY9C,MAAM3B,KAAM6B,YASpDwP,cAAe,WACb,GAAIjC,KASJ,OAPIpP,MAAKa,MACPuO,EAAOpP,KAAKa,MAAMyQ,SAEXtR,KAAK0Q,aACZtB,GAASmC,MAAOvR,KAAK0Q,WAAWY,WAG3BlC,GAQTnC,OAAQ,WACNjN,KAAK2M,UAAW,EAEhB3M,KAAKwI,cAAc,gBAAiBxI,MACpCA,KAAKwI,cAAc,qBAAsBxI,KAEzC,IAAIoP,GAAOpP,KAAKqR,eAChBjC,GAAOpP,KAAK6P,qBAAqBT,EAEjC,IAAIN,GAAW9O,KAAK4P,cAChBX,EAAO3M,EAAW6M,SAASlC,OAAO6B,EAAUM,EAQhD,OANApP,MAAK4M,IAAIqC,KAAKA,GACdjP,KAAKkR,iBAELlR,KAAKwI,cAAc,SAAUxI,MAC7BA,KAAKwI,cAAc,gBAAiBxI,MAE7BA,MAKTqL,MAAO,WACDrL,KAAK2M,WAET3M,KAAKwI,cAAc,qBAEnBlG,EAAWgN,KAAK9O,UAAU6K,MAAM1J,MAAM3B,KAAM6B,WAE5C7B,KAAKwI,cAAc,mBASvBlG,EAAWkP,eAAiBlP,EAAWgN,KAAK/O,QAG1CkR,oBAAqB,WAGrBhN,YAAa,WACXzE,KAAK0R,wBAELpP,EAAWgN,KAAK9O,UAAUiE,YAAY9C,MAAM3B,KAAM6B,WAElD7B,KAAK2R,iBACL3R,KAAK4R,oBAMPA,iBAAkB,WAChB5R,KAAK6R,SAAWnI,SAASoI,yBACzB9R,KAAK+R,sBAGPC,eAAgB,WACdhS,KAAK4R,mBACL5R,KAAKiS,aAAc,GAGrBC,aAAc,WACZlS,KAAKiS,aAAc,EACnBjS,KAAKmS,aAAanS,KAAMA,KAAK6R,UAC7B7R,KAAKoS,+BACLpS,KAAK4R,oBAGPQ,6BAA8B,WACxBpS,KAAKkJ,WACPrJ,EAAEQ,KAAKL,KAAK+R,kBAAmB,SAAUM,GACvC/P,EAAWkG,cAAc/G,KAAK4Q,EAAO,UAEvCrS,KAAK+R,uBAMTJ,eAAgB,WACV3R,KAAK0Q,aACP1Q,KAAKyJ,SAASzJ,KAAK0Q,WAAY,MAAO1Q,KAAKsS,cAC3CtS,KAAKyJ,SAASzJ,KAAK0Q,WAAY,SAAU1Q,KAAKuS,gBAC9CvS,KAAKyJ,SAASzJ,KAAK0Q,WAAY,QAAS1Q,KAAKiN,UAKjDqF,aAAc,SAASE,GACrBxS,KAAKyS,gBACL,IAAIrB,GAAWpR,KAAK0S,YAAYF,GAC5BrR,EAAQnB,KAAK0Q,WAAWiC,QAAQH,EACpCxS,MAAK4S,YAAYJ,EAAMpB,EAAUjQ,IAKnCwO,aAAc,WACZ3P,KAAK6S,SAASxS,KAAK,SAASgS,GAC1B/P,EAAWkG,cAAc/G,KAAK4Q,EAAO,WAMzCS,oBAAqB,WACnB9S,KAAKwI,cAAc,gBAAiBxI,MACpCA,KAAKwI,cAAc,2BAA4BxI,OAKjD+S,gBAAiB,WACf/S,KAAKwI,cAAc,SAAUxI,MAC7BA,KAAKwI,cAAc,sBAAuBxI,OAM5CiN,OAAQ,WAKN,MAJAjN,MAAK2M,UAAW,EAChB3M,KAAK8S,sBACL9S,KAAKgT,kBACLhT,KAAK+S,kBACE/S,MAMTgT,gBAAiB,WACfhT,KAAKgS,iBAELhS,KAAKyS,iBACLzS,KAAKiT,gBAEAjT,KAAKkT,QAAQlT,KAAK0Q,YAGrB1Q,KAAKmT,gBAFLnT,KAAKoT,iBAKPpT,KAAKkS,gBAKPkB,eAAgB,WACd,GAAIhC,EACJpR,MAAK0Q,WAAWrQ,KAAK,SAASmS,EAAMrR,GAClCiQ,EAAWpR,KAAK0S,YAAYF,GAC5BxS,KAAK4S,YAAYJ,EAAMpB,EAAUjQ,IAChCnB,OAMLmT,cAAe,WACb,GAAIE,GAAYrT,KAAKsT,cAErB,IAAID,IAAcrT,KAAKuT,kBAAkB,CACvCvT,KAAKuT,mBAAoB,CACzB,IAAI1S,GAAQ,GAAIlB,GAASgD,KACzB3C,MAAK4S,YAAY/R,EAAOwS,EAAW,KAOvCZ,eAAgB,WACVzS,KAAKuT,oBACPvT,KAAKiT,sBACEjT,MAAKuT,oBAKhBD,aAAc,WACZ,MAAOhR,GAAW8E,UAAUpH,KAAM,cAMpC0S,YAAa,WACX,GAAIc,GAAWlR,EAAW8E,UAAUpH,KAAM,WAM1C,OAJKwT,IACHxM,EAAW,kCAAmC,mBAGzCwM,GAKTZ,YAAa,SAASJ,EAAMpB,EAAUjQ,GAEpC,GAAIsS,GAAkBnR,EAAW8E,UAAUpH,KAAM,kBAC7CH,GAAEkC,WAAW0R,KACfA,EAAkBA,EAAgBhS,KAAKzB,KAAMwS,EAAMrR,GAIrD,IAAIV,GAAOT,KAAK0T,cAAclB,EAAMpB,EAAUqC,EAwB9C,OArBAzT,MAAK2T,4BAA4BlT,GAGjCT,KAAKwI,cAAc,oBAAqB/H,GAIxCT,KAAK6S,SAASvS,IAAIG,GAGlBT,KAAK4T,eAAenT,EAAMU,GAItBnB,KAAKkJ,WAAalJ,KAAKiS,aACzB3P,EAAWkG,cAAc/G,KAAKhB,EAAM,QAItCT,KAAKwI,cAAc,mBAAoB/H,GAEhCA,GAKTkT,4BAA6B,SAASlT,GACpC,GAAIiI,GAASpG,EAAW8E,UAAUpH,KAAM,sBAIxCA,MAAKyJ,SAAShJ,EAAM,MAAO,WACzB,GAAIqB,GAAO4B,EAAMjC,KAAKI,WAClBgS,EAAY/R,EAAK,GACjBgS,EAAa9T,KAAKyH,iBAAiBzH,KAAK+T,gBAE5CjS,GAAK,GAAK4G,EAAS,IAAMmL,EACzB/R,EAAKkS,OAAO,EAAG,EAAGvT,GAGQ,mBAAfqT,IAA8BjU,EAAEkC,WAAW+R,EAAWD,KAC/DC,EAAWD,GAAWlS,MAAM3B,KAAM8B,GAGpCQ,EAAWkG,cAAc7G,MAAM3B,KAAM8B,IACpC9B,OAIL+T,cAAe,WACb,MAAIlU,GAAEkC,WAAW/B,KAAK8T,YACb9T,KAAK8T,WAAWrS,KAAKzB,MAGvBA,KAAK8T,YAIdF,eAAgB,SAASnT,EAAMU,GAC7BV,EAAKwM,SACLjN,KAAKiU,WAAWjU,KAAMS,EAAMU,IAI9BuS,cAAe,SAASlB,EAAM0B,EAAcT,GAC1C,GAAIjR,GAAU3C,EAAEU,QAAQM,MAAO2R,GAAOiB,EACtC,OAAO,IAAIS,GAAa1R,IAI1B+P,eAAgB,SAASC,GACvB,GAAI/R,GAAOT,KAAK6S,SAAS/R,YAAY0R,EACrCxS,MAAKmU,gBAAgB1T,GACrBT,KAAKoU,cAIPD,gBAAiB,SAAS1T,GAIpBA,IAEEA,EAAK4K,MAAS5K,EAAK4K,QACd5K,EAAKa,QAAUb,EAAKa,SAE7BtB,KAAK0F,cAAcjF,GACnBT,KAAK6S,SAASvR,OAAOb,IAGvBT,KAAKwI,cAAc,eAAgB/H,IAIrCyS,QAAS,WAEP,OAAQlT,KAAK0Q,YAAyC,IAA3B1Q,KAAK0Q,WAAW1O,QAI7CoS,WAAY,WACNpU,KAAKkT,QAAQlT,KAAK0Q,aACpB1Q,KAAKmT,iBAKThB,aAAc,SAASkC,EAAgBC,GACrCD,EAAezH,IAAIQ,OAAOkH,IAM5BL,WAAY,SAASI,EAAgBb,GAC/Ba,EAAepC,aAIjBoC,EAAexC,SAAS0C,YAAYf,EAAShK,IAC7C6K,EAAetC,kBAAkB1N,KAAKmP,IAKtCa,EAAezH,IAAIQ,OAAOoG,EAAShK,KAMvCkI,sBAAuB,WACrB1R,KAAK6S,SAAW,GAAIlT,GAASC,oBAK/ByL,MAAO,WACDrL,KAAK2M,WAET3M,KAAKwI,cAAc,2BACnBxI,KAAKiT,gBACLjT,KAAKwI,cAAc,qBAEnBlG,EAAWgN,KAAK9O,UAAU6K,MAAM1J,MAAM3B,KAAM6B,aAK9CoR,cAAe,WACbjT,KAAK6S,SAASxS,KAAK,SAASgS,GAC1BrS,KAAKmU,gBAAgB9B,IACpBrS,MACHA,KAAKoU,gBAUT9R,EAAWkS,cAAgBlS,EAAWkP,eAAejR,QAInDkE,YAAa,WACXnC,EAAWkP,eAAehR,UAAUiE,YAAY9C,MAAM3B,KAAM6B,YAM9D8P,eAAgB,WAId3R,KAAKyU,KAAK,SAAU,WACdzU,KAAK0Q,aACP1Q,KAAKyJ,SAASzJ,KAAK0Q,WAAY,MAAO1Q,KAAKsS,cAC3CtS,KAAKyJ,SAASzJ,KAAK0Q,WAAY,SAAU1Q,KAAKuS,gBAC9CvS,KAAKyJ,SAASzJ,KAAK0Q,WAAY,QAAS1Q,KAAKgT,qBAUnDN,YAAa,WACX,GAAIc,GAAWlR,EAAW8E,UAAUpH,KAAM,aAAeA,KAAKyE,WAM9D,OAJK+O,IACHxM,EAAW,kCAAmC,mBAGzCwM,GAMTnC,cAAe,WACb,GAAIjC,KAMJ,OAJIpP,MAAKa,QACPuO,EAAOpP,KAAKa,MAAMyQ,UAGblC,GAMTnC,OAAQ,WACNjN,KAAK0U,YAAa,EAClB1U,KAAK2M,UAAW,EAChB3M,KAAK2U,yBAEL3U,KAAK8S,qBACL,IAAI7D,GAAOjP,KAAK4U,aAYhB,OAXA5U,MAAK4M,IAAIqC,KAAKA,GAIdjP,KAAKkR,iBACLlR,KAAKwI,cAAc,4BAEnBxI,KAAKgT,kBAELhT,KAAKwI,cAAc,sBACnBxI,KAAK+S,kBACE/S,MAGTgT,gBAAiB,WACXhT,KAAK0U,aACP1U,KAAKwI,cAAc,sCACnBlG,EAAWkP,eAAehR,UAAUwS,gBAAgBvR,KAAKzB,MACzDA,KAAKwI,cAAc,mCAOvBoM,YAAa,WACX,GAAIxF,KACJA,GAAOpP,KAAKqR,gBACZjC,EAAOpP,KAAK6P,qBAAqBT,EAEjC,IAAIN,GAAW9O,KAAK4P,aACpB,OAAOtN,GAAW6M,SAASlC,OAAO6B,EAAUM,IAK9C+C,aAAc,SAAS0C,EAAeP,GACpC,GAAIQ,GAAa9U,KAAK+U,qBAAqBF,EAC3CC,GAAW1H,OAAOkH,IAOpBL,WAAY,SAASY,EAAerB,GAClC,GAAIqB,EAAc5C,YAChB4C,EAAchD,SAAS0C,YAAYf,EAAShK,IAC5CqL,EAAc9C,kBAAkB1N,KAAKmP,OAElC,CAGH,GAAIsB,GAAa9U,KAAK+U,qBAAqBF,EAC3CC,GAAW1H,OAAOoG,EAAShK,MAM/BuL,qBAAsB,SAASC,GAC7B,GAAI,sBAAwBA,GAC1B,MAAOA,GAAcC,kBAGvB,IAAIC,GACAC,EAAoB7S,EAAW8E,UAAU4N,EAAe,oBAC5D,IAAIG,EAAkB,CAEpB,GAAItJ,GAAWhM,EAAEkC,WAAWoT,GAAqBA,EAAkB1T,KAAKuT,GAAiBG,CAGvFD,GADyB,MAAvBrJ,EAASuJ,OAAO,IAAcJ,EAAcpN,GAClCoN,EAAcpN,GAAGiE,EAASwJ,OAAO,IAEjCL,EAAc7N,EAAE0E,GAG1BqJ,EAAUlT,QAAU,GACtBgF,EAAW,oDAAsDgO,EAAcG,kBAAmB,qCAIpGD,GAAYF,EAAcpI,GAI5B,OADAoI,GAAcC,mBAAqBC,EAC5BA,GAITP,uBAAwB,WAClB3U,KAAKiV,0BACAjV,MAAKiV,sBAclB3S,EAAWgT,OAAShT,EAAW8O,SAAS7Q,QACtCyL,WAAY1J,EAAWgJ,OAIvB7G,YAAa,SAAUjC,GACrBA,EAAUA,MAEVxC,KAAKuV,cAAe,EACpBvV,KAAKwV,mBAAmBhT,GAExBF,EAAW8O,SAAS5Q,UAAUiE,YAAYhD,KAAKzB,KAAMwC,IAOvDyK,OAAQ,WAiBN,MAfIjN,MAAK2M,UAGP3M,KAAKwV,qBAEHxV,KAAKuV,aAGPvV,KAAKuV,cAAe,EACVvV,KAAK2M,UAGf3M,KAAKyV,uBAGAnT,EAAW8O,SAAS5Q,UAAUyM,OAAOtL,MAAM3B,KAAM6B,YAI1DwJ,MAAO,WACDrL,KAAK2M,WACT3M,KAAK0V,cAAcrK,QACnB/I,EAAW8O,SAAS5Q,UAAU6K,MAAM1J,MAAM3B,KAAM6B,aAIlDgM,UAAW,SAAS7K,EAAM4K,GACxB,GAAID,KAEJ,OADAA,GAAQ3K,GAAQ4K,EACT5N,KAAK2V,cAAchI,GAAS3K,IAIrCwK,WAAY,SAASG,GAEnB,MADA3N,MAAK2N,QAAU9N,EAAEU,UAAWP,KAAK2N,QAASA,GACnC3N,KAAK2V,cAAchI,IAI5BM,aAAc,SAASjL,GAErB,aADOhD,MAAK2N,QAAQ3K,GACbhD,KAAK0V,cAAczH,aAAajL,IAMzC4S,UAAW,SAASzJ,GAClB,MAAOnM,MAAK0V,cAAc1H,IAAI7B,IAIhCwJ,cAAe,SAAShI,GACtB,GAAIkI,GAAO7V,KAEP0N,GACF1B,WAAY1J,EAAW8E,UAAUpH,KAAM,cACvCoM,SAAU,WAAY,MAAOyJ,GAAKjJ,KAGpC,OAAO5M,MAAK0V,cAAclI,WAAWG,EAASD,IAKhD8H,mBAAoB,SAAUhT,GAC5B,GAAImL,EACJ3N,MAAK8V,qBAGHnI,EADE9N,EAAEkC,WAAW/B,KAAK2N,SACV3N,KAAK2N,QAAQnL,GAEbxC,KAAK2N,YAGjB3N,KAAKwN,WAAWG,IAKlB8H,qBAAsB,WACpBzV,KAAK0V,cAActH,eACnBpO,KAAK0V,cAAcrV,KAAK,SAAS8L,GAC/BA,EAAO3G,WAMXsQ,mBAAoB,WAClB9V,KAAK0V,cAAgB,GAAIpT,GAAWgL,cAEpCtN,KAAKyJ,SAASzJ,KAAK0V,cAAe,aAAc,SAAS1S,EAAMmJ,GAC7DnM,KAAKgD,GAAQmJ,EACbnM,KAAKsD,QAAQ,aAAcN,EAAMmJ,KAGnCnM,KAAKyJ,SAASzJ,KAAK0V,cAAe,gBAAiB,SAAS1S,EAAMmJ,SACzDnM,MAAKgD,GACZhD,KAAKsD,QAAQ,gBAAiBN,EAAMmJ,QAc1C7J,EAAWyT,SAAW,SAAUlW,EAAGF,GACjC,QAASoW,GAASvT,EAAS/B,GAKzBT,KAAKS,KAAOA,EACZT,KAAK0N,SAAW7N,EAAE0I,OAAOvI,KAAM,gBAC/BA,KAAKwC,QAAW3C,EAAEU,UAAWP,KAAK0N,SAAUlL,GAK5CxC,KAAKmH,EAAI,WACP,MAAOnH,MAAKS,KAAK0G,EAAExF,MAAM3B,KAAKS,KAAMoB,YAKtC7B,KAAK0C,WAAWf,MAAM3B,KAAM6B,WAqB9B,MAlBAhC,GAAEU,OAAOwV,EAASvV,UAAWb,EAASiD,QACpCF,WAAY,aAGZ2I,MAAO,WACLrL,KAAK0F,iBAIP8C,cAAelG,EAAWkG,gBAO5BuN,EAASxV,OAAS+B,EAAW/B,OAEtBwV,GACNlW,EAAGF,GAWN2C,EAAWmN,UAAY,SAAUnN,EAAYzC,GAE3C,QAAS4P,GAAUhP,GAGjBT,KAAKwP,UAAYC,EAAUuG,eAAevV,EAAMZ,EAAE0I,OAAO9H,EAAM,cAK/DgP,EAAUwG,KAAKxV,EAAMT,KAAKwP,WACxB,iBAAkB,mBAClB,iBAAkB,mBAClB,SAAU,UACV,iBAAkB,gBAClB,aAAc,UAIlB,GAAItN,IACFgU,WAAY,SAASA,EAAY1G,GAC/B0G,EAAWvU,MAAM3B,KAAMH,EAAE+B,KAAKC,UAAW,IAKzChC,EAAEQ,KAAKmP,EAAW,SAAS2G,GACzBA,EAAEvJ,IAAM5M,KAAK4M,KACZ5M,OAGLqL,MAAO,SAASA,EAAOmE,GACrB,GAAI1N,GAAOjC,EAAE+B,KAAKC,UAAW,EAC7BwJ,GAAM1J,MAAM3B,KAAM8B,GAMlBjC,EAAEuW,OAAO5G,EAAW,QAAS1N,IAG/BuU,OAAQ,SAASA,EAAQ7G,GACvB,GAAI1N,GAAOjC,EAAE+B,KAAKC,UAAW,EAE7BhC,GAAEQ,KAAKmP,EAAW,SAAS2G,GACzB7T,EAAWkG,cAAc7G,MAAMwU,GAAI,QAAQhU,OAAOL,MAGhDjC,EAAEkC,WAAWsU,IACfA,EAAO1U,MAAM3B,KAAM8B,IAIvBwU,QAAS,SAASA,EAAS9G,GACzB,GAAI1N,GAAOjC,EAAE+B,KAAKC,UAAW,EAE7BhC,GAAEQ,KAAKmP,EAAW,SAAS2G,GACzB7T,EAAWkG,cAAc7G,MAAMwU,GAAI,SAAShU,OAAOL,MAGjDjC,EAAEkC,WAAWuU,IACfA,EAAQ3U,MAAM3B,KAAM8B,IAIxBoP,eAAgB,SAASA,EAAgB1B,GACvC0B,EAAevP,MAAM3B,MACrBH,EAAEuW,OAAO5G,EAAW0B,IAGtBD,iBAAkB,SAASA,EAAkBzB,GAC3CyB,EAAiBtP,MAAM3B,MACvBH,EAAEuW,OAAO5G,EAAWyB,IAGtBzI,cAAe,SAASA,EAAegH,GACrC,GAAI1N,GAAOjC,EAAE+B,KAAKC,UAAW,EAC7B2G,GAAc7G,MAAM3B,KAAM8B,GAE1BjC,EAAEQ,KAAKmP,EAAW,SAAS2G,GACzB3N,EAAc7G,MAAMwU,EAAGrU,MAI3B6O,eAAgB,SAASA,EAAgBnB,GACvC,GAAI1N,GAAOjC,EAAE+B,KAAKC,UAAW,EAC7B8O,GAAehP,MAAM3B,KAAM8B,GAE3BjC,EAAEQ,KAAKmP,EAAW,SAAS2G,GACzB7T,EAAWiI,iBAAiB4L,EAAGnW,KAAKa,MAAOyB,EAAW8E,UAAU+O,EAAG,gBACnE7T,EAAWiI,iBAAiB4L,EAAGnW,KAAK0Q,WAAYpO,EAAW8E,UAAU+O,EAAG,sBACvEnW,OAGL+Q,iBAAkB,SAASA,EAAkBvB,GAC3C,GAAI1N,GAAOjC,EAAE+B,KAAKC,UAAW,EAC7BkP,GAAiBpP,MAAM3B,KAAM8B,GAE7BjC,EAAEQ,KAAKmP,EAAW,SAAS2G,GACzB7T,EAAWkI,mBAAmB2L,EAAGnW,KAAKa,MAAOyB,EAAW8E,UAAU+O,EAAG,gBACrE7T,EAAWkI,mBAAmB2L,EAAGnW,KAAK0Q,WAAYpO,EAAW8E,UAAU+O,EAAG,sBACzEnW,OAGL8Q,eAAgB,SAASA,EAAgBtB,GACvC,GAAI+G,MACAC,EAAS3W,EAAE0I,OAAOvI,KAAM,KAkC5B,OAhCAH,GAAEQ,KAAKmP,EAAW,SAAS2G,EAAGvH,GAC5B,GAAI6H,MACA3F,EAAiBjR,EAAE0I,OAAO4N,EAAG,cAC7BO,EAAa7W,EAAE0I,OAAO4N,EAAG,MAOzBvO,EAAK/H,EAAEU,UAAWiW,EAAQE,EAI9B5F,GAAiBxO,EAAWqF,gBAAgBmJ,EAAgBlJ,GAE5D/H,EAAEQ,KAAKR,EAAEgI,KAAKiJ,GAAiB,SAAStP,GAMtC,GAAImV,GAAa,GAAKlT,OAAMmL,EAAE,GAAIgI,KAAK,KACnCC,EAAarV,EAAMmV,EACnB5T,EAAalD,EAAEkC,WAAW+O,EAAetP,IAAQsP,EAAetP,GAAO2U,EAAErF,EAAetP,GAE5FiV,GAAQI,GAAYhX,EAAEsG,KAAKpD,EAASoT,KAGtCI,EAAmB1W,EAAEU,OAAOgW,EAAkBE,KAGzCF,GAqDX,OAjDA1W,GAAEU,OAAOkP,GASPqH,gBAAiB,WACf,KAAM,IAAIrQ,OAAM,sKAQlBsQ,iBAAkB,SAASvU,EAAShB,GAClC,MAAIgB,GAAQwU,cACHxU,EAAQwU,cAIVnX,EAAEkC,WAAW0N,EAAUqH,iBAAmBrH,EAAUqH,gBAAgBnV,MAAM3B,KAAM6B,WAAWL,GAAOiO,EAAUqH,gBAAgBtV,IAMrIwU,eAAgB,SAASvV,EAAM+O,GAC7B,MAAO3P,GAAEoX,IAAIzH,EAAW,SAAShN,EAAShB,GACxC,GAAI0V,GAAgBzH,EAAUsH,iBAAiBvU,EAAShB,EACxD,OAAO,IAAI0V,GAAc1U,EAAS/B,MAStCwV,KAAM,SAASxV,EAAM+O,EAAW1F,GAC9BjK,EAAEQ,KAAKyJ,EAAa,SAAShB,GAC3BrI,EAAKqI,GAAcjJ,EAAEsX,QAAQjV,EAAQ4G,GAAarI,EAAKqI,GAAa0G,QAKnEC,GAENnN,EAAYzC,GAqBfyC,EAAW8U,UAAYzX,EAAS0X,OAAO9W,QAErCkE,YAAa,SAASjC,GACpB7C,EAAS0X,OAAO7W,UAAUiE,YAAY9C,MAAM3B,KAAM6B,WAElD7B,KAAKwC,QAAUA,KAEf,IAAI8U,GAAYhV,EAAW8E,UAAUpH,KAAM,aACvCuX,EAAavX,KAAKwX,gBACtBxX,MAAKyX,iBAAiBF,EAAYD,GAClCtX,KAAK2E,GAAG,QAAS3E,KAAK0X,gBAAiB1X,OAKzC2X,SAAU,SAASC,EAAO9O,GACxB,GAAIyO,GAAavX,KAAKwX,gBACtBxX,MAAK6X,aAAaN,EAAYK,EAAO9O,IAKvC4O,gBAAiB,SAASI,EAAWC,GAEnC,GAAIC,GAAYnY,EAAEoY,OAAOjY,KAAKsX,WAAWQ,EAGrCjY,GAAEkC,WAAW/B,KAAKkY,UACpBlY,KAAKkY,QAAQJ,EAAWE,EAAWD,IAOvCN,iBAAkB,SAASF,EAAYD,GACrC,GAAKA,EAAL,CAEA,GAAIa,GAAatY,EAAEgI,KAAKyP,GAAWc,SAEnCvY,GAAEQ,KAAK8X,EAAY,SAASP,GAC1B5X,KAAK6X,aAAaN,EAAYK,EAAON,EAAUM,KAC9C5X,QAGLwX,eAAgB,WACd,MAAOlV,GAAW8E,UAAUpH,KAAM,eAGpC6X,aAAc,SAASN,EAAYK,EAAO9O,GACxC,GAAIpH,GAAS6V,EAAWzO,EAEnBpH,IACHsF,EAAW,WAAa8B,EAAa,qCAGvC9I,KAAK4X,MAAMA,EAAO9O,EAAYjJ,EAAEsG,KAAKzE,EAAQ6V,OAUjDjV,EAAW+V,YAAc,SAAS7V,GAChCxC,KAAK8V,qBACL9V,KAAKsY,eAAiB,GAAIhW,GAAWmI,UACrCzK,KAAKsF,KAAO,GAAI3F,GAAS0C,MAAM6C,gBAC/BlF,KAAKiE,SAAW,GAAItE,GAAS0C,MAAMkC,SACnCvE,KAAKuF,OAAS,GAAI5F,GAAS0C,MAAM2C,gBACjChF,KAAKuY,cAEL1Y,EAAEU,OAAOP,KAAMwC,GAEfxC,KAAKwI,cAAgBlG,EAAWkG,eAGlC3I,EAAEU,OAAO+B,EAAW+V,YAAY7X,UAAWb,EAASiD,QAElDiC,QAAS,WACP7E,KAAKiE,SAASY,QAAQlD,MAAM3B,KAAKiE,SAAUpC,YAI7CoD,QAAS,WACP,MAAOjF,MAAKuF,OAAON,QAAQtD,MAAM3B,KAAKuF,OAAQ1D,YAMhD2W,eAAgB,SAASC,GACvBzY,KAAKsY,eAAehY,IAAImY,IAM1BC,MAAO,SAASlW,GACdxC,KAAKwI,cAAc,oBAAqBhG,GACxCxC,KAAKsY,eAAerN,IAAIzI,EAASxC,MACjCA,KAAKwI,cAAc,mBAAoBhG,GAEvCxC,KAAKwI,cAAc,QAAShG,IAO9BgL,WAAY,SAASG,GACnB,MAAO3N,MAAK2Y,eAAenL,WAAWG,IAIxCS,aAAc,WACZpO,KAAK2Y,eAAevK,gBAMtBH,aAAc,SAAS9B,GACrBnM,KAAK2Y,eAAe1K,aAAa9B,IAMnCyJ,UAAW,SAASzJ,GAClB,MAAOnM,MAAK2Y,eAAe3K,IAAI7B,IAIjCyM,OAAQ,SAASC,EAAaC,GAG5B,GAAIC,GAAczW,EAAW0W,OAAOC,SAASH,GAIzChX,EAAO4B,EAAMjC,KAAKI,UAItB,OAHAC,GAAKoX,QAAQlZ,MAGN+Y,EAAYI,OAAOxX,MAAMoX,EAAajX,IAI/CgU,mBAAoB,WAClB9V,KAAK2Y,eAAiB,GAAIrW,GAAWgL,cAErCtN,KAAKyJ,SAASzJ,KAAK2Y,eAAgB,aAAc,SAAS3V,EAAMmJ,GAC9DnM,KAAKgD,GAAQmJ,IAGfnM,KAAKyJ,SAASzJ,KAAK2Y,eAAgB,gBAAiB,SAAS3V,SACpDhD,MAAKgD,QAMlBV,EAAW+V,YAAY9X,OAAS+B,EAAW/B,OAO3C+B,EAAW0W,OAAS,SAASI,EAAYC,EAAK7W,GAC5CxC,KAAKoZ,WAAaA,EAClBpZ,KAAKwC,QAAU3C,EAAEU,UAAWP,KAAKwC,QAASA,GAG1CxC,KAAK0C,WAAaF,EAAQE,YAAc1C,KAAK0C,WAG7C1C,KAAKuY,cAELvY,KAAKsZ,kCAILtZ,KAAKqZ,IAAMA,EAGXrZ,KAAKuZ,iBAAkB,EAGvBvZ,KAAKwI,cAAgBlG,EAAWkG,cAE5B3I,EAAEkC,WAAW/B,KAAK0C,aACpB1C,KAAK0C,WAAW1C,KAAKwC,QAAS4W,EAAYC,IAI9C/W,EAAW0W,OAAOzY,OAAS+B,EAAW/B,OAItCV,EAAEU,OAAO+B,EAAW0W,OAAOxY,UAAWb,EAASiD,QAI7CF,WAAY,aAIZ8V,eAAgB,SAASrV,GACvBnD,KAAKwZ,sBAAsBlZ,IAAI6C,IAMjCsW,aAAc,SAAStW,GACrBnD,KAAK0Z,oBAAoBpZ,IAAI6C,IAI/BuV,MAAO,SAASlW,GAEVxC,KAAK2Z,iBAGT9Z,EAAEQ,KAAKL,KAAKuY,WAAY,SAASqB,GAE3BA,EAAIL,iBACNK,EAAIlB,MAAMlW,KAKdxC,KAAKwI,cAAc,eAAgBhG,GAEnCxC,KAAKwZ,sBAAsBvO,IAAIzI,EAASxC,MACxCA,KAAK2Z,gBAAiB,EAEtB3Z,KAAKwI,cAAc,QAAShG,KAK9B8N,KAAM,WAECtQ,KAAK2Z,iBACV3Z,KAAK2Z,gBAAiB,EAEtBrX,EAAWkG,cAAc/G,KAAKzB,KAAM,eAIpCH,EAAEQ,KAAKL,KAAKuY,WAAY,SAASqB,GAAMA,EAAItJ,SAG3CtQ,KAAK0Z,oBAAoBzO,IAAIzD,OAAUxH,MAGvCA,KAAKwZ,sBAAsBhU,QAC3BxF,KAAK0Z,oBAAoBlU,QAEzBlD,EAAWkG,cAAc/G,KAAKzB,KAAM,UAKtC6Z,cAAe,SAASf,EAAkBgB,GACxC9Z,KAAK+Z,qBAAqBjB,EAAkBgB,IAK9CC,qBAAsB,SAASnM,EAAYkM,GAEzC,GAAKlM,EAAL,CAGA,GAAI9L,GAAOjC,EAAEma,SACXha,KACAA,KAAKqZ,IACL1Z,EACA2C,EACAA,EAAW6E,EAAGtH,EACdia,GAGFlM,GAAWjM,MAAM3B,KAAM8B,KAMzBwX,gCAAiC,WAC/BtZ,KAAKwZ,sBAAwB,GAAIlX,GAAWmI,UAC5CzK,KAAK0Z,oBAAsB,GAAIpX,GAAWmI,aAK9C5K,EAAEU,OAAO+B,EAAW0W,QAGlBG,OAAQ,SAASE,EAAKR,EAAaC,GACjC,GAAIF,GAASS,EAITS,EAAapW,EAAMjC,KAAKI,UAC5BiY,GAAW9F,OAAO,EAAG,GAKrB6E,EAAcA,EAAY9O,MAAM,IAChC,IAAI/H,GAAS6W,EAAY7W,OAGrBiY,IAWJ,OAVAA,GAAkBjY,EAAO,GAAK8W,EAG9BjZ,EAAEQ,KAAKwY,EAAa,SAASO,EAAYxK,GACvC,GAAIsL,GAAetB,CACnBA,GAAS5Y,KAAKma,WAAWD,EAAcd,EAAYC,EAAKP,GACxD9Y,KAAKoa,qBAAqBF,EAActB,EAAQqB,EAAkBrL,GAAIkL,IACrE9Z,MAGI4Y,GAGTuB,WAAY,SAASD,EAAcd,EAAYC,EAAKgB,GAClD,GAAI7X,GAAU3C,EAAEU,UAAW8Z,GACvBtB,EAAc/Y,KAAKiZ,SAASoB,GAG5BzB,EAASsB,EAAad,EAU1B,OARKR,KAEHA,EAAS,GAAIG,GAAYK,EAAYC,EAAK7W,GAC1C0X,EAAad,GAAcR,EAE3BsB,EAAa3B,WAAWa,GAAcR,GAGjCA,GASTK,SAAU,SAASH,GACjB,GAAIC,GAAczW,EAAW0W,MAE7B,OAAKF,GAMDA,EAAiBtY,oBAAqBuY,GACjCD,EAGFA,EAAiBwB,aAAevB,EAT9BA,GAeXqB,qBAAsB,SAASF,EAActB,EAAQyB,EAAKvY,GACxD,GAAImE,GAAKjG,KAAKua,WAAWF,GACrBd,EAAkBvZ,KAAKwa,oBAAoBH,EAAKzB,EAEhD3S,IACF2S,EAAOiB,cAAc5T,EAAInE,GAG3B9B,KAAKya,oBAAoBP,EAActB,EAAQW,IAGjDiB,oBAAqB,SAASH,EAAKzB,GACjC,GAAI8B,EAEJ,OAAI7a,GAAEkC,WAAWsY,IAASA,EAAI7Z,oBAAqB8B,GAAW0W,QAC5D0B,EAAM9B,EAAOnU,YAAYjE,UAAU+Y,gBAC5B1Z,EAAEkM,YAAY2O,IAAO,EAAOA,GAGjC7a,EAAEqD,SAASmX,IACbK,EAAML,EAAId,gBACH1Z,EAAEkM,YAAY2O,IAAO,EAAOA,IAG9B,GAGTH,WAAY,SAASF,GACnB,OAAIxa,EAAEkC,WAAWsY,IAAUA,EAAI7Z,oBAAqB8B,GAAW0W,OAI3DnZ,EAAEqD,SAASmX,GACNA,EAAIM,OAGN,KAPEN,GAUXI,oBAAqB,SAASP,EAActB,EAAQW,GAClDX,EAAOW,gBAAkBX,EAAOW,iBAAmBA,EAE9CX,EAAOW,kBAAqBX,EAAOgC,8BAIxChC,EAAOgC,6BAA8B,EAErCV,EAAa1B,eAAe,SAAShW,GAC/BoW,EAAOW,iBACTX,EAAOF,MAAMlW,SAOZF,GACNtC,KAAML,SAAUE"}
1
+ {"version":3,"file":"lib/backbone.marionette.min.js","sources":["?"],"names":["Backbone","ChildViewContainer","_","Container","views","this","_views","_indexByModel","_indexByCustom","_updateLength","each","add","extend","prototype","view","customIndex","viewCid","cid","model","findByModel","findByModelCid","modelCid","findByCid","findByCustom","index","findByIndex","values","remove","any","key","call","method","apply","tail","arguments","args","isFunction","length","size","methods","concat","toArray","Wreqr","Marionette","Handlers","options","_wreqrHandlers","initialize","Model","Events","setHandlers","handlers","handler","name","context","isObject","callback","setHandler","config","trigger","hasHandler","getHandler","Array","slice","removeHandler","removeAllHandlers","CommandStorage","_commands","getCommands","commandName","commands","command","instances","addCommand","push","clearCommands","Commands","storageType","constructor","_initializeStorage","on","_executeCommands","execute","storage","StorageType","RequestResponse","request","EventAggregator","EA","Channel","channelName","vent","reqres","reset","off","stopListening","connectEvents","hash","_connect","connectCommands","connectRequests","type","fn","eventName","bind","radio","Radio","_channels","_proxyMethods","channel","Error","_getChannel","system","messageSystems","proxyMethod","messageSystem","global","throwError","message","error","$","getOption","target","optionName","value","undefined","normalizeMethods","normalizedHash","normalizeUIKeys","ui","keys","v","pattern","match","replace","r","actAsCollection","object","listProperty","list","result","triggerMethod","getEventName","prefix","toUpperCase","splitter","event","methodName","MonitorDOMRefresh","documentElement","handleShow","_isShown","triggerDOMRefresh","handleRender","_isRendered","isInDOM","contains","el","listenTo","document","bindFromStrings","entity","evt","methodNames","split","bindToFunction","unbindFromStrings","unbindToFunction","iterateEvents","bindings","functionCallback","stringCallback","bindEntityEvents","unbindEntityEvents","Callbacks","_deferred","Deferred","_callbacks","contextOverride","cb","ctx","done","run","resolve","callbacks","Controller","close","Region","buildRegion","regionConfig","defaultRegionType","regionIsString","isString","regionSelectorIsString","selector","regionTypeIsUndefined","isUndefined","regionType","regionIsType","RegionType","region","parentEl","getEl","find","show","ensureEl","showOptions","isViewClosed","isClosed","$el","isDifferentView","currentView","preventClose","_shouldCloseView","render","open","empty","append","attachView","RegionManager","_regions","addRegions","regionDefinitions","defaults","regions","definition","addRegion","hasSelector","_store","get","removeRegion","_remove","removeRegions","closeRegions","_setLength","TemplateCache","templateId","templateCaches","cachedTemplate","load","clear","i","compiledTemplate","template","loadTemplate","compileTemplate","html","rawTemplate","Renderer","data","templateFunc","View","bindAll","events","behaviors","Behaviors","onShowCalled","getTemplate","mixinTemplateHelpers","templateHelpers","configureTriggers","triggers","triggerEvents","hasOptions","e","prevent","preventDefault","stop","stopPropagation","shouldPrevent","shouldStop","collection","delegateEvents","_delegateDOMEvents","combinedEvents","behaviorEvents","undelegateEvents","shouldClose","unbindUIElements","bindUIElements","_uiBindings","ItemView","serializeData","toJSON","items","CollectionView","itemViewEventPrefix","_initChildViewStorage","_initialEvents","initRenderBuffer","elBuffer","createDocumentFragment","_bufferedChildren","startBuffering","isBuffering","endBuffering","appendBuffer","_triggerShowBufferedChildren","child","addChildView","removeItemView","item","closeEmptyView","getItemView","indexOf","addItemView","children","triggerBeforeRender","triggerRendered","_renderChildren","closeChildren","isEmpty","showEmptyView","showCollection","EmptyView","getEmptyView","_showingEmptyView","itemView","itemViewOptions","buildItemView","addChildViewEventForwarding","renderItemView","rootEvent","itemEvents","getItemEvents","splice","appendHtml","ItemViewType","removeChildView","checkEmpty","collectionView","buffer","appendChild","CompositeView","once","isRendered","resetItemViewContainer","renderModel","compositeView","$container","getItemViewContainer","containerView","$itemViewContainer","container","itemViewContainer","charAt","substr","Layout","_firstRender","_initializeRegions","_reInitializeRegions","regionManager","_buildRegions","getRegion","that","_initRegionManager","Behavior","parseBehaviors","wrap","setElement","b","invoke","onShow","onClose","_behaviorsEvents","viewUI","_events","behaviorUI","whitespace","join","eventKey","behaviorsLookup","getBehaviorClass","behaviorClass","map","BehaviorClass","partial","AppRouter","Router","appRoutes","controller","_getController","processAppRoutes","_processOnRoute","appRoute","route","_addAppRoute","routeName","routeArgs","routePath","invert","onRoute","routeNames","reverse","Application","_initCallbacks","submodules","addInitializer","initializer","start","_regionManager","module","moduleNames","moduleDefinition","ModuleClass","Module","getClass","unshift","create","moduleName","app","_setupInitializersAndFinalizers","startWithParent","_initializerCallbacks","addFinalizer","_finalizerCallbacks","_isInitialized","mod","addDefinition","customArgs","_runModuleDefinition","flatten","moduleDefinitions","parentModule","_getModule","_addModuleDefinition","def","moduleClass","_getDefine","_getStartWithParent","_addStartWithParent","swp","define","startWithParentIsConfigured"],"mappings":";;;;;;;;;;;;;;;;;;;;AAkCAA,SAASC,mBAAqB,SAAUD,EAAUE,GAKhD,GAAIC,GAAY,SAASC,GACvBC,KAAKC,UACLD,KAAKE,iBACLF,KAAKG,kBACLH,KAAKI,gBAELP,EAAEQ,KAAKN,EAAOC,KAAKM,IAAKN,MAM1BH,GAAEU,OAAOT,EAAUU,WAMjBF,IAAK,SAASG,EAAMC,GAClB,GAAIC,GAAUF,EAAKG,GAgBnB,OAbAZ,MAAKC,OAAOU,GAAWF,EAGnBA,EAAKI,QACPb,KAAKE,cAAcO,EAAKI,MAAMD,KAAOD,GAInCD,IACFV,KAAKG,eAAeO,GAAeC,GAGrCX,KAAKI,gBACEJ,MAKTc,YAAa,SAASD,GACpB,MAAOb,MAAKe,eAAeF,EAAMD,MAMnCG,eAAgB,SAASC,GACvB,GAAIL,GAAUX,KAAKE,cAAcc,EACjC,OAAOhB,MAAKiB,UAAUN,IAIxBO,aAAc,SAASC,GACrB,GAAIR,GAAUX,KAAKG,eAAegB,EAClC,OAAOnB,MAAKiB,UAAUN,IAKxBS,YAAa,SAASD,GACpB,MAAOtB,GAAEwB,OAAOrB,KAAKC,QAAQkB,IAI/BF,UAAW,SAASL,GAClB,MAAOZ,MAAKC,OAAOW,IAIrBU,OAAQ,SAASb,GACf,GAAIE,GAAUF,EAAKG,GAoBnB,OAjBIH,GAAKI,aACAb,MAAKE,cAAcO,EAAKI,MAAMD,KAIvCf,EAAE0B,IAAIvB,KAAKG,eAAgB,SAASS,EAAKY,GACvC,MAAIZ,KAAQD,SACHX,MAAKG,eAAeqB,IACpB,GAFT,QAICxB,YAGIA,MAAKC,OAAOU,GAGnBX,KAAKI,gBACEJ,MAMTyB,KAAM,SAASC,GACb1B,KAAK2B,MAAMD,EAAQ7B,EAAE+B,KAAKC,aAM5BF,MAAO,SAASD,EAAQI,GACtBjC,EAAEQ,KAAKL,KAAKC,OAAQ,SAASQ,GACvBZ,EAAEkC,WAAWtB,EAAKiB,KACpBjB,EAAKiB,GAAQC,MAAMlB,EAAMqB,UAM/B1B,cAAe,WACbJ,KAAKgC,OAASnC,EAAEoC,KAAKjC,KAAKC,UAS9B,IAAIiC,IAAW,UAAW,OAAQ,MAAO,OAAQ,SAAU,SACzD,SAAU,SAAU,QAAS,MAAO,OAAQ,MAAO,UACnD,WAAY,SAAU,UAAW,QAAS,UAAW,OACrD,OAAQ,UAAW,UAAW,QAWhC,OATArC,GAAEQ,KAAK6B,EAAS,SAASR,GACvB5B,EAAUU,UAAUkB,GAAU,WAC5B,GAAI3B,GAAQF,EAAEwB,OAAOrB,KAAKC,QACtB6B,GAAQ/B,GAAOoC,OAAOtC,EAAEuC,QAAQP,WACpC,OAAOhC,GAAE6B,GAAQC,MAAM9B,EAAGiC,MAKvBhC,GACNH,SAAUE,GAYbF,SAAS0C,MAAQ,SAAU1C,EAAU2C,EAAYzC,GAC/C,YACA,IAAIwC,KAiZJ,OA3YFA,GAAME,SAAW,SAAU5C,EAAUE,GAMnC,GAAI0C,GAAW,SAASC,GACtBxC,KAAKwC,QAAUA,EACfxC,KAAKyC,kBAED5C,EAAEkC,WAAW/B,KAAK0C,aACpB1C,KAAK0C,WAAWF,GAsEpB,OAlEAD,GAAShC,OAASZ,EAASgD,MAAMpC,OAKjCV,EAAEU,OAAOgC,EAAS/B,UAAWb,EAASiD,QAGpCC,YAAa,SAASC,GACpBjD,EAAEQ,KAAKyC,EAAU,SAASC,EAASC,GACjC,GAAIC,GAAU,IAEVpD,GAAEqD,SAASH,KAAalD,EAAEkC,WAAWgB,KACvCE,EAAUF,EAAQE,QAClBF,EAAUA,EAAQI,UAGpBnD,KAAKoD,WAAWJ,EAAMD,EAASE,IAC9BjD,OAKLoD,WAAY,SAASJ,EAAMD,EAASE,GAClC,GAAII,IACFF,SAAUJ,EACVE,QAASA,EAGXjD,MAAKyC,eAAeO,GAAQK,EAE5BrD,KAAKsD,QAAQ,cAAeN,EAAMD,EAASE,IAI7CM,WAAY,SAASP,GACnB,QAAUhD,KAAKyC,eAAeO,IAMhCQ,WAAY,SAASR,GACnB,GAAIK,GAASrD,KAAKyC,eAAeO,EAEjC,IAAKK,EAIL,MAAO,YACL,GAAIvB,GAAO2B,MAAMjD,UAAUkD,MAAM/B,MAAME,UACvC,OAAOwB,GAAOF,SAASxB,MAAM0B,EAAOJ,QAASnB,KAKjD6B,cAAe,SAASX,SACfhD,MAAKyC,eAAeO,IAI7BY,kBAAmB,WACjB5D,KAAKyC,qBAIFF,GACN5C,EAAUE,GAMbwC,EAAMwB,eAAiB,WAIrB,GAAIA,GAAiB,SAASrB,GAC5BxC,KAAKwC,QAAUA,EACfxC,KAAK8D,aAEDjE,EAAEkC,WAAW/B,KAAK0C,aACpB1C,KAAK0C,WAAWF,GA2CpB,OAtCA3C,GAAEU,OAAOsD,EAAerD,UAAWb,EAASiD,QAK1CmB,YAAa,SAASC,GACpB,GAAIC,GAAWjE,KAAK8D,UAAUE,EAe9B,OAZKC,KAGHA,GACEC,QAASF,EACTG,cAIFnE,KAAK8D,UAAUE,GAAeC,GAGzBA,GAKTG,WAAY,SAASJ,EAAalC,GAChC,GAAIoC,GAAUlE,KAAK+D,YAAYC,EAC/BE,GAAQC,UAAUE,KAAKvC,IAIzBwC,cAAe,SAASN,GACtB,GAAIE,GAAUlE,KAAK+D,YAAYC,EAC/BE,GAAQC,gBAILN,KAQTxB,EAAMkC,SAAW,SAAUlC,GAGzB,MAAOA,GAAME,SAAShC,QAEpBiE,YAAanC,EAAMwB,eAEnBY,YAAa,SAASjC,GACpBxC,KAAKwC,QAAUA,MAEfxC,KAAK0E,mBAAmB1E,KAAKwC,SAC7BxC,KAAK2E,GAAG,cAAe3E,KAAK4E,iBAAkB5E,KAE9C,IAAI8B,GAAO2B,MAAMjD,UAAUkD,MAAMjC,KAAKI,UACtCQ,GAAME,SAAS/B,UAAUiE,YAAY9C,MAAM3B,KAAM8B,IAInD+C,QAAS,SAAS7B,EAAMlB,GACtBkB,EAAOnB,UAAU,GACjBC,EAAO2B,MAAMjD,UAAUkD,MAAMjC,KAAKI,UAAW,GAEzC7B,KAAKuD,WAAWP,GAClBhD,KAAKwD,WAAWR,GAAMrB,MAAM3B,KAAM8B,GAElC9B,KAAK8E,QAAQV,WAAWpB,EAAMlB,IAMlC8C,iBAAkB,SAAS5B,EAAMD,EAASE,GACxC,GAAIiB,GAAUlE,KAAK8E,QAAQf,YAAYf,EAGvCnD,GAAEQ,KAAK6D,EAAQC,UAAW,SAASrC,GACjCiB,EAAQpB,MAAMsB,EAASnB,KAGzB9B,KAAK8E,QAAQR,cAActB,IAK7B0B,mBAAoB,SAASlC,GAC3B,GAAIsC,GAEAC,EAAcvC,EAAQgC,aAAexE,KAAKwE,WAE5CM,GADEjF,EAAEkC,WAAWgD,GACL,GAAIA,GAEJA,EAGZ/E,KAAK8E,QAAUA,MAIlBzC,GAOHA,EAAM2C,gBAAkB,SAAU3C,GAGhC,MAAOA,GAAME,SAAShC,QACpB0E,QAAS,WACP,GAAIjC,GAAOnB,UAAU,GACjBC,EAAO2B,MAAMjD,UAAUkD,MAAMjC,KAAKI,UAAW,EACjD,OAAI7B,MAAKuD,WAAWP,GACXhD,KAAKwD,WAAWR,GAAMrB,MAAM3B,KAAM8B,GAD3C,WAMHO,GAOHA,EAAM6C,gBAAkB,SAAUvF,EAAUE,GAE1C,GAAIsF,GAAK,YAQT,OALAA,GAAG5E,OAASZ,EAASgD,MAAMpC,OAG3BV,EAAEU,OAAO4E,EAAG3E,UAAWb,EAASiD,QAEzBuC,GACNxF,EAAUE,GAObwC,EAAM+C,QAAU,WAGd,GAAIA,GAAU,SAASC,GACrBrF,KAAKsF,KAAc,GAAI3F,GAAS0C,MAAM6C,gBACtClF,KAAKuF,OAAc,GAAI5F,GAAS0C,MAAM2C,gBACtChF,KAAKiE,SAAc,GAAItE,GAAS0C,MAAMkC,SACtCvE,KAAKqF,YAAcA,EA8CrB,OA3CAxF,GAAEU,OAAO6E,EAAQ5E,WAGfgF,MAAO,WAKL,MAJAxF,MAAKsF,KAAKG,MACVzF,KAAKsF,KAAKI,gBACV1F,KAAKuF,OAAO3B,oBACZ5D,KAAKiE,SAASL,oBACP5D,MAIT2F,cAAe,SAASC,EAAM3C,GAE5B,MADAjD,MAAK6F,SAAS,OAAQD,EAAM3C,GACrBjD,MAGT8F,gBAAiB,SAASF,EAAM3C,GAE9B,MADAjD,MAAK6F,SAAS,WAAYD,EAAM3C,GACzBjD,MAGT+F,gBAAiB,SAASH,EAAM3C,GAE9B,MADAjD,MAAK6F,SAAS,SAAUD,EAAM3C,GACvBjD,MAIT6F,SAAU,SAASG,EAAMJ,EAAM3C,GAC7B,GAAK2C,EAAL,CAIA3C,EAAUA,GAAWjD,IACrB,IAAI0B,GAAmB,SAATsE,EAAmB,KAAO,YAExCnG,GAAEQ,KAAKuF,EAAM,SAASK,EAAIC,GACxBlG,KAAKgG,GAAMtE,GAAQwE,EAAWrG,EAAEsG,KAAKF,EAAIhD,KACxCjD,UAKAoF,GACN/C,GAMHA,EAAM+D,MAAQ,SAAU/D,GAGtB,GAAIgE,GAAQ,WACVrG,KAAKsG,aACLtG,KAAKsF,QACLtF,KAAKiE,YACLjE,KAAKuF,UACLvF,KAAKuG,gBAGP1G,GAAEU,OAAO8F,EAAM7F,WAEbgG,QAAS,SAASnB,GAChB,IAAKA,EACH,KAAM,IAAIoB,OAAM,8BAGlB,OAAOzG,MAAK0G,YAAarB,IAG3BqB,YAAa,SAASrB,GACpB,GAAImB,GAAUxG,KAAKsG,UAAUjB,EAO7B,OALImB,KACFA,EAAU,GAAInE,GAAM+C,QAAQC,GAC5BrF,KAAKsG,UAAUjB,GAAemB,GAGzBA,GAGTD,cAAe,WACb1G,EAAEQ,MAAM,OAAQ,WAAY,UAAW,SAASsG,GAC9C9G,EAAEQ,KAAMuG,EAAeD,GAAS,SAASjF,GACvC1B,KAAK2G,GAAQjF,GAAUmF,EAAY7G,KAAM2G,EAAQjF,IAChD1B,OACFA,QAKP,IAAI4G,IACFtB,MACE,KACA,MACA,UACA,OACA,gBACA,WACA,gBAGFrB,UACE,UACA,aACA,cACA,gBACA,qBAGFsB,QACE,UACA,aACA,cACA,gBACA,sBAIAsB,EAAc,SAAST,EAAOO,EAAQjF,GACxC,MAAO,UAAS2D,GACd,GAAIyB,GAAgBV,EAAMM,YAAYrB,GAAasB,GAC/C7E,EAAO2B,MAAMjD,UAAUkD,MAAMjC,KAAKI,UAAW,EAEjDiF,GAAcpF,GAAQC,MAAMmF,EAAehF,IAI/C,OAAO,IAAIuE,IAEVhE,GAGMA,GACN1C,SAAUA,SAAS2C,WAAYzC,EAElC,IAAIyC,YAAa,SAAUyE,EAAQpH,EAAUE,GAC3C,YAeF,SAASmH,GAAWC,EAASjE,GAC3B,GAAIkE,GAAQ,GAAIT,OAAMQ,EAEtB,MADAC,GAAMlE,KAAOA,GAAQ,QACfkE,EAfN,GAAI5E,KACJ3C,GAAS2C,WAAaA,EAGtBA,EAAW6E,EAAIxH,EAASwH,CAM1B,IAAIzD,GAAQD,MAAMjD,UAAUkD,KA43E1B,OAh3EFpB,GAAW/B,OAASZ,EAASgD,MAAMpC,OAOnC+B,EAAW8E,UAAY,SAASC,EAAQC,GACtC,GAAKD,GAAWC,EAAhB,CACA,GAAIC,EAQJ,OALEA,GADEF,EAAO7E,SAAY8E,IAAcD,GAAO7E,SAA4CgF,SAA/BH,EAAO7E,QAAQ8E,GAC9DD,EAAO7E,QAAQ8E,GAEfD,EAAOC,KAWnBhF,EAAWmF,iBAAmB,SAAS7B,GACrC,GAAyBlE,GAArBgG,IAWJ,OAVA7H,GAAEQ,KAAKuF,EAAM,SAASK,EAAIjD,GACxBtB,EAASuE,EACJpG,EAAEkC,WAAWL,KAChBA,EAAS1B,KAAK0B,IAEXA,IAGLgG,EAAe1E,GAAQtB,IACtB1B,MACI0H,GAOTpF,EAAWqF,gBAAkB,SAAS/B,EAAMgC,GAC1C,MAAqB,mBAAX,IAIV/H,EAAEQ,KAAKR,EAAEgI,KAAKjC,GAAO,SAASkC,GAC5B,GAAIC,GAAU,qBACVD,GAAEE,MAAMD,KACVnC,EAAKkC,EAAEG,QAAQF,EAAS,SAASG,GAC/B,MAAON,GAAGM,EAAExE,MAAM,OACdkC,EAAKkC,SACJlC,GAAKkC,MAITlC,GAdP,QAqBFtD,EAAW6F,gBAAkB,SAASC,EAAQC,GAC5C,GAAInG,IAAW,UAAW,OAAQ,MAAO,OAAQ,SAAU,SACzD,SAAU,SAAU,QAAS,MAAO,OAAQ,MAAO,UACnD,WAAY,SAAU,UAAW,QAAS,UAAW,OACrD,OAAQ,UAAW,UAAW,QAEhCrC,GAAEQ,KAAK6B,EAAS,SAASR,GACvB0G,EAAO1G,GAAU,WACf,GAAI4G,GAAOzI,EAAEwB,OAAOxB,EAAE0I,OAAOvI,KAAMqI,IAC/BvG,GAAQwG,GAAMnG,OAAOtC,EAAEuC,QAAQP,WACnC,OAAOhC,GAAE6B,GAAQC,MAAM9B,EAAGiC,OAYhCQ,EAAWkG,cAAgB,WAOzB,QAASC,GAAaT,EAAOU,EAAQxC,GACnC,MAAOA,GAAUyC,cALnB,GAAIC,GAAW,cASXJ,EAAgB,SAASK,GAE3B,GAAIC,GAAa,KAAOD,EAAMZ,QAAQW,EAAUH,GAC5C/G,EAAS1B,KAAK8I,EAQlB,OALGjJ,GAAEkC,WAAW/B,KAAKsD,UACnBtD,KAAKsD,QAAQ3B,MAAM3B,KAAM6B,WAIvBhC,EAAEkC,WAAWL,GAERA,EAAOC,MAAM3B,KAAMH,EAAE+B,KAAKC,YAFnC,OAMF,OAAO2G,MAUTlG,EAAWyG,kBAAoB,SAAUC,GAGvC,QAASC,GAAWxI,GAClBA,EAAKyI,UAAW,EAChBC,EAAkB1I,GAIpB,QAAS2I,GAAa3I,GACpBA,EAAK4I,aAAc,EACnBF,EAAkB1I,GAIpB,QAAS0I,GAAkB1I,GACrBA,EAAKyI,UAAYzI,EAAK4I,aAAeC,EAAQ7I,IAC3CZ,EAAEkC,WAAWtB,EAAK+H,gBACpB/H,EAAK+H,cAAc,eAKzB,QAASc,GAAQ7I,GACf,MAAOuI,GAAgBO,SAAS9I,EAAK+I,IAIvC,MAAO,UAAS/I,GACdA,EAAKgJ,SAAShJ,EAAM,OAAQ,WAC1BwI,EAAWxI,KAGbA,EAAKgJ,SAAShJ,EAAM,SAAU,WAC5B2I,EAAa3I,OAGhBiJ,SAASV,iBAmBZ,SAAU1G,GAKR,QAASqH,GAAgBtC,EAAQuC,EAAQC,EAAK3H,GAC5C,GAAI4H,GAAc5H,EAAQ6H,MAAM,MAEhClK,GAAEQ,KAAKyJ,EAAa,SAAShB,GAE3B,GAAIpH,GAAS2F,EAAOyB,EAChBpH,IACFsF,EAAW,WAAY8B,EAAY,6DAGrCzB,EAAOoC,SAASG,EAAQC,EAAKnI,KAKjC,QAASsI,GAAe3C,EAAQuC,EAAQC,EAAKnI,GACzC2F,EAAOoC,SAASG,EAAQC,EAAKnI,GAKjC,QAASuI,GAAkB5C,EAAQuC,EAAQC,EAAK3H,GAC9C,GAAI4H,GAAc5H,EAAQ6H,MAAM,MAEhClK,GAAEQ,KAAKyJ,EAAa,SAAShB,GAC3B,GAAIpH,GAAS2F,EAAOyB,EACpBzB,GAAO3B,cAAckE,EAAQC,EAAKnI,KAKtC,QAASwI,GAAiB7C,EAAQuC,EAAQC,EAAKnI,GAC3C2F,EAAO3B,cAAckE,EAAQC,EAAKnI,GAKtC,QAASyI,GAAc9C,EAAQuC,EAAQQ,EAAUC,EAAkBC,GAC5DV,GAAWQ,IAGZvK,EAAEkC,WAAWqI,KACfA,EAAWA,EAAS3I,KAAK4F,IAI3BxH,EAAEQ,KAAK+J,EAAU,SAASlI,EAAS2H,GAI7BhK,EAAEkC,WAAWG,GACfmI,EAAiBhD,EAAQuC,EAAQC,EAAK3H,GAEtCoI,EAAejD,EAAQuC,EAAQC,EAAK3H,MAO1CI,EAAWiI,iBAAmB,SAASlD,EAAQuC,EAAQQ,GACrDD,EAAc9C,EAAQuC,EAAQQ,EAAUJ,EAAgBL,IAG1DrH,EAAWkI,mBAAqB,SAASnD,EAAQuC,EAAQQ,GACvDD,EAAc9C,EAAQuC,EAAQQ,EAAUF,EAAkBD,KAG3D3H,GASHA,EAAWmI,UAAY,WACrBzK,KAAK0K,UAAYpI,EAAW6E,EAAEwD,WAC9B3K,KAAK4K,eAGP/K,EAAEU,OAAO+B,EAAWmI,UAAUjK,WAK5BF,IAAK,SAAS6C,EAAU0H,GACtB7K,KAAK4K,WAAWvG,MAAMyG,GAAI3H,EAAU4H,IAAKF,IAEzC7K,KAAK0K,UAAUM,KAAK,SAAS/H,EAAST,GAChCqI,IAAkB5H,EAAU4H,GAChC1H,EAAS1B,KAAKwB,EAAST,MAO3ByI,IAAK,SAASzI,EAASS,GACrBjD,KAAK0K,UAAUQ,QAAQjI,EAAST,IAKlCgD,MAAO,WACL,GAAI2F,GAAYnL,KAAK4K,UACrB5K,MAAK0K,UAAYpI,EAAW6E,EAAEwD,WAC9B3K,KAAK4K,cAEL/K,EAAEQ,KAAK8K,EAAW,SAASL,GACzB9K,KAAKM,IAAIwK,EAAGA,GAAIA,EAAGC,MAClB/K,SAUPsC,EAAW8I,WAAa,SAAS5I,GAC/BxC,KAAKwI,cAAgBlG,EAAWkG,cAChCxI,KAAKwC,QAAUA,MAEX3C,EAAEkC,WAAW/B,KAAK0C,aACpB1C,KAAK0C,WAAW1C,KAAKwC,UAIzBF,EAAW8I,WAAW7K,OAAS+B,EAAW/B,OAM1CV,EAAEU,OAAO+B,EAAW8I,WAAW5K,UAAWb,EAASiD,QACjDyI,MAAO,WACLrL,KAAK0F,eACL,IAAI5D,GAAO2B,MAAMjD,UAAUkD,MAAMjC,KAAKI,UACtC7B,MAAKwI,cAAc7G,MAAM3B,MAAO,SAASmC,OAAOL,IAChD9B,KAAKyF,SAUTnD,EAAWgJ,OAAS,SAAS9I,GAQ3B,GAPAxC,KAAKwC,QAAUA,MACfxC,KAAKwJ,GAAKlH,EAAW8E,UAAUpH,KAAM,MAEhCA,KAAKwJ,IACRxC,EAAW,0CAA2C,aAGpDhH,KAAK0C,WAAW,CAClB,GAAIZ,GAAO2B,MAAMjD,UAAUkD,MAAM/B,MAAME,UACvC7B,MAAK0C,WAAWf,MAAM3B,KAAM8B,KAQhCjC,EAAEU,OAAO+B,EAAWgJ,QAgBlBC,YAAa,SAASC,EAAcC,GAClC,GAAIC,GAAiB7L,EAAE8L,SAASH,GAC5BI,EAAyB/L,EAAE8L,SAASH,EAAaK,UACjDC,EAAwBjM,EAAEkM,YAAYP,EAAaQ,YACnDC,EAAepM,EAAEkC,WAAWyJ,EAE3BS,IAAiBP,GAAmBE,GACvC5E,EAAW,mGAGb,IAAI6E,GAAUK,CAIVR,KACFG,EAAWL,GAGTA,EAAaK,WACfA,EAAWL,EAAaK,eACjBL,GAAaK,UAKlBI,IACFC,EAAaV,IAGVS,GAAgBH,IACnBI,EAAaT,GAGXD,EAAaQ,aACfE,EAAaV,EAAaQ,iBACnBR,GAAaQ,aAGlBN,GAAkBO,KACpBT,MAGFA,EAAahC,GAAKqC,CAGlB,IAAIM,GAAS,GAAID,GAAWV,EAkB5B,OAVIA,GAAaY,WACfD,EAAOE,MAAQ,SAASR,GACtB,GAAIO,GAAWZ,EAAaY,QAI5B,OAHIvM,GAAEkC,WAAWqK,KACfA,EAAWA,KAENA,EAASE,KAAKT,KAIlBM,KAQXtM,EAAEU,OAAO+B,EAAWgJ,OAAO9K,UAAWb,EAASiD,QAQ7C2J,KAAM,SAAS9L,EAAM+B,GACnBxC,KAAKwM,UAEL,IAAIC,GAAcjK,MACdkK,EAAejM,EAAKkM,UAAY9M,EAAEkM,YAAYtL,EAAKmM,KACnDC,EAAkBpM,IAAST,KAAK8M,YAChCC,IAAkBN,EAAYM,aAG9BC,GAAoBD,GAAgBF,CAEpCG,IACFhN,KAAKqL,QAGP5K,EAAKwM,SACL3K,EAAWkG,cAAc/G,KAAKzB,KAAM,cAAeS,GACnD6B,EAAWkG,cAAc/G,KAAKhB,EAAM,gBAEhCoM,GAAmBH,IACrB1M,KAAKkN,KAAKzM,GAGZT,KAAK8M,YAAcrM,EAEnB6B,EAAWkG,cAAc/G,KAAKzB,KAAM,OAAQS,GAC5C6B,EAAWkG,cAAc/G,KAAKhB,EAAM,SAGtC+L,SAAU,WACHxM,KAAK4M,KAA2B,IAApB5M,KAAK4M,IAAI5K,SACxBhC,KAAK4M,IAAM5M,KAAKqM,MAAMrM,KAAKwJ,MAM/B6C,MAAO,SAASR,GACd,MAAOvJ,GAAW6E,EAAE0E,IAKtBqB,KAAM,SAASzM,GACbT,KAAK4M,IAAIO,QAAQC,OAAO3M,EAAK+I,KAK/B6B,MAAO,WACL,GAAI5K,GAAOT,KAAK8M,WACXrM,KAAQA,EAAKkM,WAGdlM,EAAK4K,MAAS5K,EAAK4K,QACd5K,EAAKa,QAAUb,EAAKa,SAE7BgB,EAAWkG,cAAc/G,KAAKzB,KAAM,QAASS,SAEtCT,MAAK8M,cAOdO,WAAY,SAAS5M,GACnBT,KAAK8M,YAAcrM,GAOrB+E,MAAO,WACLxF,KAAKqL,cACErL,MAAK4M,OAKhBtK,EAAWgJ,OAAO/K,OAAS+B,EAAW/B,OAMtC+B,EAAWgL,cAAgB,SAAUhL,GAEnC,GAAIgL,GAAgBhL,EAAW8I,WAAW7K,QACxCkE,YAAa,SAASjC,GACpBxC,KAAKuN,YACLjL,EAAW8I,WAAW5K,UAAUiE,YAAYhD,KAAKzB,KAAMwC,IAMzDgL,WAAY,SAASC,EAAmBC,GACtC,GAAIC,KAeJ,OAbA9N,GAAEQ,KAAKoN,EAAmB,SAASG,EAAY5K,GACzCnD,EAAE8L,SAASiC,KACbA,GAAe/B,SAAU+B,IAGvBA,EAAW/B,WACb+B,EAAa/N,EAAE6N,YAAaE,EAAYF,GAG1C,IAAIvB,GAASnM,KAAK6N,UAAU7K,EAAM4K,EAClCD,GAAQ3K,GAAQmJ,GACfnM,MAEI2N,GAKTE,UAAW,SAAS7K,EAAM4K,GACxB,GAAIzB,GAEAjJ,EAAWrD,EAAEqD,SAAS0K,GACtBjC,EAAW9L,EAAE8L,SAASiC,GACtBE,IAAgBF,EAAW/B,QAY/B,OATEM,GADER,GAAazI,GAAY4K,EAClBxL,EAAWgJ,OAAOC,YAAYqC,EAAYtL,EAAWgJ,QACrDzL,EAAEkC,WAAW6L,GACbtL,EAAWgJ,OAAOC,YAAYqC,EAAYtL,EAAWgJ,QAErDsC,EAGX5N,KAAK+N,OAAO/K,EAAMmJ,GAClBnM,KAAKwI,cAAc,aAAcxF,EAAMmJ,GAChCA,GAIT6B,IAAK,SAAShL,GACZ,MAAOhD,MAAKuN,SAASvK,IAIvBiL,aAAc,SAASjL,GACrB,GAAImJ,GAASnM,KAAKuN,SAASvK,EAC3BhD,MAAKkO,QAAQlL,EAAMmJ,IAKrBgC,cAAe,WACbtO,EAAEQ,KAAKL,KAAKuN,SAAU,SAASpB,EAAQnJ,GACrChD,KAAKkO,QAAQlL,EAAMmJ,IAClBnM,OAKLoO,aAAc,WACZvO,EAAEQ,KAAKL,KAAKuN,SAAU,SAASpB,GAC7BA,EAAOd,SACNrL,OAKLqL,MAAO,WACLrL,KAAKmO,gBACL7L,EAAW8I,WAAW5K,UAAU6K,MAAM1J,MAAM3B,KAAM6B,YAIpDkM,OAAQ,SAAS/K,EAAMmJ,GACrBnM,KAAKuN,SAASvK,GAAQmJ,EACtBnM,KAAKqO,cAIPH,QAAS,SAASlL,EAAMmJ,GACtBA,EAAOd,QACPc,EAAOzG,sBACA1F,MAAKuN,SAASvK,GACrBhD,KAAKqO,aACLrO,KAAKwI,cAAc,gBAAiBxF,EAAMmJ,IAI5CkC,WAAY,WACVrO,KAAKgC,OAASnC,EAAEoC,KAAKjC,KAAKuN,YAO9B,OAFAjL,GAAW6F,gBAAgBmF,EAAc9M,UAAW,YAE7C8M,GACNhL,GAQHA,EAAWgM,cAAgB,SAASC,GAClCvO,KAAKuO,WAAaA,GAMpB1O,EAAEU,OAAO+B,EAAWgM,eAClBE,kBAKAR,IAAK,SAASO,GACZ,GAAIE,GAAiBzO,KAAKwO,eAAeD,EAOzC,OALKE,KACHA,EAAiB,GAAInM,GAAWgM,cAAcC,GAC9CvO,KAAKwO,eAAeD,GAAcE,GAG7BA,EAAeC,QAUxBC,MAAO,WACL,GAAIC,GACA9M,EAAO4B,EAAMjC,KAAKI,WAClBG,EAASF,EAAKE,MAElB,IAAIA,EAAS,EACX,IAAI4M,EAAE,EAAK5M,EAAF4M,EAAUA,UACV5O,MAAKwO,eAAe1M,EAAK8M,QAGlC5O,MAAKwO,qBAQX3O,EAAEU,OAAO+B,EAAWgM,cAAc9N,WAGhCkO,KAAM,WAEJ,GAAI1O,KAAK6O,iBACP,MAAO7O,MAAK6O,gBAId,IAAIC,GAAW9O,KAAK+O,aAAa/O,KAAKuO,WAGtC,OAFAvO,MAAK6O,iBAAmB7O,KAAKgP,gBAAgBF,GAEtC9O,KAAK6O,kBAQdE,aAAc,SAASR,GACrB,GAAIO,GAAWxM,EAAW6E,EAAEoH,GAAYU,MAMxC,OAJKH,IAAgC,IAApBA,EAAS9M,QACxBgF,EAAW,6BAA+BuH,EAAa,IAAK,mBAGvDO,GAOTE,gBAAiB,SAASE,GACxB,MAAOrP,GAAEiP,SAASI,MAStB5M,EAAW6M,UAMTlC,OAAQ,SAAS6B,EAAUM,GAEpBN,GACH9H,EAAW,kEAAmE,wBAGhF,IAAIqI,EAOJ,QALEA,EADsB,kBAAbP,GACMA,EAEAxM,EAAWgM,cAAcN,IAAIc,IAG1BM,KASxB9M,EAAWgN,KAAO3P,EAAS2P,KAAK/O,QAE9BkE,YAAa,SAASjC,GACpB3C,EAAE0P,QAAQvP,KAAM,UAMhBA,KAAKwC,QAAU3C,EAAEU,UAAWV,EAAE0I,OAAOvI,KAAM,WAAYH,EAAEkC,WAAWS,GAAWA,EAAQf,KAAKzB,MAAQwC,GAGpGxC,KAAKwP,OAASxP,KAAK2H,gBAAgB9H,EAAE0I,OAAOvI,KAAM,WAE9CH,EAAEqD,SAASlD,KAAKyP,YAClB,GAAInN,GAAWoN,UAAU1P,MAG3BL,EAAS2P,KAAK9O,UAAUiE,YAAY9C,MAAM3B,KAAM6B,WAEhDS,EAAWyG,kBAAkB/I,MAC7BA,KAAKyJ,SAASzJ,KAAM,OAAQA,KAAK2P,eAKnCnH,cAAelG,EAAWkG,cAI1Bf,iBAAkBnF,EAAWmF,iBAM7BmI,YAAa,WACX,MAAOtN,GAAW8E,UAAUpH,KAAM,aAQpC6P,qBAAsB,SAASxI,GAC7BA,EAASA,KACT,IAAIyI,GAAkBxN,EAAW8E,UAAUpH,KAAM,kBAIjD,OAHIH,GAAEkC,WAAW+N,KACfA,EAAkBA,EAAgBrO,KAAKzB,OAElCH,EAAEU,OAAO8G,EAAQyI,IAI1BnI,gBAAiB,SAAS/B,GACxB,GAAIgC,GAAK/H,EAAE0I,OAAOvI,KAAM,KACxB,OAAOsC,GAAWqF,gBAAgB/B,EAAMgC,IAK1CmI,kBAAmB,WACjB,GAAK/P,KAAKgQ,SAAV,CAEA,GAAIC,MAGAD,EAAWhQ,KAAK2H,gBAAgB9H,EAAE0I,OAAOvI,KAAM,YAqCnD,OAjCAH,GAAEQ,KAAK2P,EAAU,SAASzI,EAAO/F,GAE/B,GAAI0O,GAAarQ,EAAEqD,SAASqE,GACxBrB,EAAYgK,EAAa3I,EAAMsB,MAAQtB,CAG3C0I,GAAczO,GAAO,SAAS2O,GAG5B,GAAIA,EAAG,CACL,GAAIC,GAAUD,EAAEE,eACZC,EAAOH,EAAEI,gBAETC,EAAgBN,EAAa3I,EAAM8I,eAAiBD,EACpDK,EAAaP,EAAa3I,EAAMgJ,gBAAkBD,CAElDE,IAAiBJ,GAAWA,EAAQzO,MAAMwO,GAC1CM,GAAcH,GAAQA,EAAK3O,MAAMwO,GAIvC,GAAIrO,IACFrB,KAAMT,KACNa,MAAOb,KAAKa,MACZ6P,WAAY1Q,KAAK0Q,WAInB1Q,MAAKwI,cAActC,EAAWpE,KAG/B9B,MAEIiQ,IAKTU,eAAgB,SAASnB,GACvBxP,KAAK4Q,mBAAmBpB,GACxBlN,EAAWiI,iBAAiBvK,KAAMA,KAAKa,MAAOyB,EAAW8E,UAAUpH,KAAM,gBACzEsC,EAAWiI,iBAAiBvK,KAAMA,KAAK0Q,WAAYpO,EAAW8E,UAAUpH,KAAM,sBAIhF4Q,mBAAoB,SAASpB,GAC3BA,EAASA,GAAUxP,KAAKwP,OACpB3P,EAAEkC,WAAWyN,KAAUA,EAASA,EAAO/N,KAAKzB,MAEhD,IAAI6Q,MAGAC,EAAiBjR,EAAE0I,OAAOvI,KAAM,sBAChCgQ,EAAWhQ,KAAK+P,mBAGpBlQ,GAAEU,OAAOsQ,EAAgBC,EAAgBtB,EAAQQ,GAEjDrQ,EAAS2P,KAAK9O,UAAUmQ,eAAelP,KAAKzB,KAAM6Q,IAKpDE,iBAAkB,WAChB,GAAIjP,GAAO2B,MAAMjD,UAAUkD,MAAMjC,KAAKI,UACtClC,GAAS2P,KAAK9O,UAAUuQ,iBAAiBpP,MAAM3B,KAAM8B,GAErDQ,EAAWkI,mBAAmBxK,KAAMA,KAAKa,MAAOyB,EAAW8E,UAAUpH,KAAM,gBAC3EsC,EAAWkI,mBAAmBxK,KAAMA,KAAK0Q,WAAYpO,EAAW8E,UAAUpH,KAAM,sBAIlF2P,aAAc,aAMdtE,MAAO,WACL,IAAIrL,KAAK2M,SAAT,CAEA,GAAI7K,GAAO2B,MAAMjD,UAAUkD,MAAMjC,KAAKI,WAIlCmP,EAAchR,KAAKwI,cAAc7G,MAAM3B,MAAO,gBAAgBmC,OAAOL,GACrEkP,MAAgB,IAOpBhR,KAAK2M,UAAW,EAChB3M,KAAKwI,cAAc7G,MAAM3B,MAAO,SAASmC,OAAOL,IAGhD9B,KAAKiR,mBAGLjR,KAAKsB,YAKP4P,eAAgB,WACd,GAAKlR,KAAK4H,GAAV,CAIK5H,KAAKmR,cACRnR,KAAKmR,YAAcnR,KAAK4H,GAI1B,IAAIwC,GAAWvK,EAAE0I,OAAOvI,KAAM,cAG9BA,MAAK4H,MAGL/H,EAAEQ,KAAKR,EAAEgI,KAAKuC,GAAW,SAAS5I,GAChC,GAAIqK,GAAWzB,EAAS5I,EACxBxB,MAAK4H,GAAGpG,GAAOxB,KAAKmH,EAAE0E,IACrB7L,QAILiR,iBAAkB,WACXjR,KAAK4H,IAAO5H,KAAKmR,cAGtBtR,EAAEQ,KAAKL,KAAK4H,GAAI,SAASgF,EAAK5J,SACrBhD,MAAK4H,GAAG5E,IACdhD,MAGHA,KAAK4H,GAAK5H,KAAKmR,kBACRnR,MAAKmR,gBAUhB7O,EAAW8O,SAAW9O,EAAWgN,KAAK/O,QAIpCkE,YAAa,WACXnC,EAAWgN,KAAK9O,UAAUiE,YAAY9C,MAAM3B,KAAM6B,YASpDwP,cAAe,WACb,GAAIjC,KASJ,OAPIpP,MAAKa,MACPuO,EAAOpP,KAAKa,MAAMyQ,SAEXtR,KAAK0Q,aACZtB,GAASmC,MAAOvR,KAAK0Q,WAAWY,WAG3BlC,GAQTnC,OAAQ,WACNjN,KAAK2M,UAAW,EAEhB3M,KAAKwI,cAAc,gBAAiBxI,MACpCA,KAAKwI,cAAc,qBAAsBxI,KAEzC,IAAIoP,GAAOpP,KAAKqR,eAChBjC,GAAOpP,KAAK6P,qBAAqBT,EAEjC,IAAIN,GAAW9O,KAAK4P,cAChBX,EAAO3M,EAAW6M,SAASlC,OAAO6B,EAAUM,EAQhD,OANApP,MAAK4M,IAAIqC,KAAKA,GACdjP,KAAKkR,iBAELlR,KAAKwI,cAAc,SAAUxI,MAC7BA,KAAKwI,cAAc,gBAAiBxI,MAE7BA,MAKTqL,MAAO,WACDrL,KAAK2M,WAET3M,KAAKwI,cAAc,qBAEnBlG,EAAWgN,KAAK9O,UAAU6K,MAAM1J,MAAM3B,KAAM6B,WAE5C7B,KAAKwI,cAAc,mBASvBlG,EAAWkP,eAAiBlP,EAAWgN,KAAK/O,QAG1CkR,oBAAqB,WAGrBhN,YAAa,WACXzE,KAAK0R,wBAELpP,EAAWgN,KAAK9O,UAAUiE,YAAY9C,MAAM3B,KAAM6B,WAElD7B,KAAK2R,iBACL3R,KAAK4R,oBAMPA,iBAAkB,WAChB5R,KAAK6R,SAAWnI,SAASoI,yBACzB9R,KAAK+R,sBAGPC,eAAgB,WACdhS,KAAK4R,mBACL5R,KAAKiS,aAAc,GAGrBC,aAAc,WACZlS,KAAKiS,aAAc,EACnBjS,KAAKmS,aAAanS,KAAMA,KAAK6R,UAC7B7R,KAAKoS,+BACLpS,KAAK4R,oBAGPQ,6BAA8B,WACxBpS,KAAKkJ,WACPrJ,EAAEQ,KAAKL,KAAK+R,kBAAmB,SAAUM,GACvC/P,EAAWkG,cAAc/G,KAAK4Q,EAAO,UAEvCrS,KAAK+R,uBAMTJ,eAAgB,WACV3R,KAAK0Q,aACP1Q,KAAKyJ,SAASzJ,KAAK0Q,WAAY,MAAO1Q,KAAKsS,cAC3CtS,KAAKyJ,SAASzJ,KAAK0Q,WAAY,SAAU1Q,KAAKuS,gBAC9CvS,KAAKyJ,SAASzJ,KAAK0Q,WAAY,QAAS1Q,KAAKiN,UAKjDqF,aAAc,SAASE,GACrBxS,KAAKyS,gBACL,IAAIrB,GAAWpR,KAAK0S,YAAYF,GAC5BrR,EAAQnB,KAAK0Q,WAAWiC,QAAQH,EACpCxS,MAAK4S,YAAYJ,EAAMpB,EAAUjQ,IAKnCwO,aAAc,WACZ3P,KAAK6S,SAASxS,KAAK,SAASgS,GAC1B/P,EAAWkG,cAAc/G,KAAK4Q,EAAO,WAMzCS,oBAAqB,WACnB9S,KAAKwI,cAAc,gBAAiBxI,MACpCA,KAAKwI,cAAc,2BAA4BxI,OAKjD+S,gBAAiB,WACf/S,KAAKwI,cAAc,SAAUxI,MAC7BA,KAAKwI,cAAc,sBAAuBxI,OAM5CiN,OAAQ,WAKN,MAJAjN,MAAK2M,UAAW,EAChB3M,KAAK8S,sBACL9S,KAAKgT,kBACLhT,KAAK+S,kBACE/S,MAMTgT,gBAAiB,WACfhT,KAAKgS,iBAELhS,KAAKyS,iBACLzS,KAAKiT,gBAEAjT,KAAKkT,QAAQlT,KAAK0Q,YAGrB1Q,KAAKmT,gBAFLnT,KAAKoT,iBAKPpT,KAAKkS,gBAKPkB,eAAgB,WACd,GAAIhC,EACJpR,MAAK0Q,WAAWrQ,KAAK,SAASmS,EAAMrR,GAClCiQ,EAAWpR,KAAK0S,YAAYF,GAC5BxS,KAAK4S,YAAYJ,EAAMpB,EAAUjQ,IAChCnB,OAMLmT,cAAe,WACb,GAAIE,GAAYrT,KAAKsT,cAErB,IAAID,IAAcrT,KAAKuT,kBAAkB,CACvCvT,KAAKuT,mBAAoB,CACzB,IAAI1S,GAAQ,GAAIlB,GAASgD,KACzB3C,MAAK4S,YAAY/R,EAAOwS,EAAW,KAOvCZ,eAAgB,WACVzS,KAAKuT,oBACPvT,KAAKiT,sBACEjT,MAAKuT,oBAKhBD,aAAc,WACZ,MAAOhR,GAAW8E,UAAUpH,KAAM,cAMpC0S,YAAa,WACX,GAAIc,GAAWlR,EAAW8E,UAAUpH,KAAM,WAM1C,OAJKwT,IACHxM,EAAW,kCAAmC,mBAGzCwM,GAKTZ,YAAa,SAASJ,EAAMpB,EAAUjQ,GAEpC,GAAIsS,GAAkBnR,EAAW8E,UAAUpH,KAAM,kBAC7CH,GAAEkC,WAAW0R,KACfA,EAAkBA,EAAgBhS,KAAKzB,KAAMwS,EAAMrR,GAIrD,IAAIV,GAAOT,KAAK0T,cAAclB,EAAMpB,EAAUqC,EAwB9C,OArBAzT,MAAK2T,4BAA4BlT,GAGjCT,KAAKwI,cAAc,oBAAqB/H,GAIxCT,KAAK6S,SAASvS,IAAIG,GAGlBT,KAAK4T,eAAenT,EAAMU,GAItBnB,KAAKkJ,WAAalJ,KAAKiS,aACzB3P,EAAWkG,cAAc/G,KAAKhB,EAAM,QAItCT,KAAKwI,cAAc,mBAAoB/H,GAEhCA,GAKTkT,4BAA6B,SAASlT,GACpC,GAAIiI,GAASpG,EAAW8E,UAAUpH,KAAM,sBAIxCA,MAAKyJ,SAAShJ,EAAM,MAAO,WACzB,GAAIqB,GAAO4B,EAAMjC,KAAKI,WAClBgS,EAAY/R,EAAK,GACjBgS,EAAa9T,KAAKyH,iBAAiBzH,KAAK+T,gBAE5CjS,GAAK,GAAK4G,EAAS,IAAMmL,EACzB/R,EAAKkS,OAAO,EAAG,EAAGvT,GAGQ,mBAAfqT,IAA8BjU,EAAEkC,WAAW+R,EAAWD,KAC/DC,EAAWD,GAAWlS,MAAM3B,KAAM8B,GAGpCQ,EAAWkG,cAAc7G,MAAM3B,KAAM8B,IACpC9B,OAIL+T,cAAe,WACb,MAAIlU,GAAEkC,WAAW/B,KAAK8T,YACb9T,KAAK8T,WAAWrS,KAAKzB,MAGvBA,KAAK8T,YAIdF,eAAgB,SAASnT,EAAMU,GAC7BV,EAAKwM,SACLjN,KAAKiU,WAAWjU,KAAMS,EAAMU,IAI9BuS,cAAe,SAASlB,EAAM0B,EAAcT,GAC1C,GAAIjR,GAAU3C,EAAEU,QAAQM,MAAO2R,GAAOiB,EACtC,OAAO,IAAIS,GAAa1R,IAI1B+P,eAAgB,SAASC,GACvB,GAAI/R,GAAOT,KAAK6S,SAAS/R,YAAY0R,EACrCxS,MAAKmU,gBAAgB1T,GACrBT,KAAKoU,cAIPD,gBAAiB,SAAS1T,GAIpBA,IAEEA,EAAK4K,MAAS5K,EAAK4K,QACd5K,EAAKa,QAAUb,EAAKa,SAE7BtB,KAAK0F,cAAcjF,GACnBT,KAAK6S,SAASvR,OAAOb,IAGvBT,KAAKwI,cAAc,eAAgB/H,IAIrCyS,QAAS,WAEP,OAAQlT,KAAK0Q,YAAyC,IAA3B1Q,KAAK0Q,WAAW1O,QAI7CoS,WAAY,WACNpU,KAAKkT,QAAQlT,KAAK0Q,aACpB1Q,KAAKmT,iBAKThB,aAAc,SAASkC,EAAgBC,GACrCD,EAAezH,IAAIQ,OAAOkH,IAM5BL,WAAY,SAASI,EAAgBb,GAC/Ba,EAAepC,aAIjBoC,EAAexC,SAAS0C,YAAYf,EAAShK,IAC7C6K,EAAetC,kBAAkB1N,KAAKmP,IAKtCa,EAAezH,IAAIQ,OAAOoG,EAAShK,KAMvCkI,sBAAuB,WACrB1R,KAAK6S,SAAW,GAAIlT,GAASC,oBAK/ByL,MAAO,WACDrL,KAAK2M,WAET3M,KAAKwI,cAAc,2BACnBxI,KAAKiT,gBACLjT,KAAKwI,cAAc,qBAEnBlG,EAAWgN,KAAK9O,UAAU6K,MAAM1J,MAAM3B,KAAM6B,aAK9CoR,cAAe,WACbjT,KAAK6S,SAASxS,KAAK,SAASgS,GAC1BrS,KAAKmU,gBAAgB9B,IACpBrS,MACHA,KAAKoU,gBAUT9R,EAAWkS,cAAgBlS,EAAWkP,eAAejR,QAInDkE,YAAa,WACXnC,EAAWkP,eAAehR,UAAUiE,YAAY9C,MAAM3B,KAAM6B,YAM9D8P,eAAgB,WAId3R,KAAKyU,KAAK,SAAU,WACdzU,KAAK0Q,aACP1Q,KAAKyJ,SAASzJ,KAAK0Q,WAAY,MAAO1Q,KAAKsS,cAC3CtS,KAAKyJ,SAASzJ,KAAK0Q,WAAY,SAAU1Q,KAAKuS,gBAC9CvS,KAAKyJ,SAASzJ,KAAK0Q,WAAY,QAAS1Q,KAAKgT,qBAUnDN,YAAa,WACX,GAAIc,GAAWlR,EAAW8E,UAAUpH,KAAM,aAAeA,KAAKyE,WAM9D,OAJK+O,IACHxM,EAAW,kCAAmC,mBAGzCwM,GAMTnC,cAAe,WACb,GAAIjC,KAMJ,OAJIpP,MAAKa,QACPuO,EAAOpP,KAAKa,MAAMyQ,UAGblC,GAMTnC,OAAQ,WACNjN,KAAK0U,YAAa,EAClB1U,KAAK2M,UAAW,EAChB3M,KAAK2U,yBAEL3U,KAAK8S,qBACL,IAAI7D,GAAOjP,KAAK4U,aAYhB,OAXA5U,MAAK4M,IAAIqC,KAAKA,GAIdjP,KAAKkR,iBACLlR,KAAKwI,cAAc,4BAEnBxI,KAAKgT,kBAELhT,KAAKwI,cAAc,sBACnBxI,KAAK+S,kBACE/S,MAGTgT,gBAAiB,WACXhT,KAAK0U,aACP1U,KAAKwI,cAAc,sCACnBlG,EAAWkP,eAAehR,UAAUwS,gBAAgBvR,KAAKzB,MACzDA,KAAKwI,cAAc,mCAOvBoM,YAAa,WACX,GAAIxF,KACJA,GAAOpP,KAAKqR,gBACZjC,EAAOpP,KAAK6P,qBAAqBT,EAEjC,IAAIN,GAAW9O,KAAK4P,aACpB,OAAOtN,GAAW6M,SAASlC,OAAO6B,EAAUM,IAK9C+C,aAAc,SAAS0C,EAAeP,GACpC,GAAIQ,GAAa9U,KAAK+U,qBAAqBF,EAC3CC,GAAW1H,OAAOkH,IAOpBL,WAAY,SAASY,EAAerB,GAClC,GAAIqB,EAAc5C,YAChB4C,EAAchD,SAAS0C,YAAYf,EAAShK,IAC5CqL,EAAc9C,kBAAkB1N,KAAKmP,OAElC,CAGH,GAAIsB,GAAa9U,KAAK+U,qBAAqBF,EAC3CC,GAAW1H,OAAOoG,EAAShK,MAM/BuL,qBAAsB,SAASC,GAC7B,GAAI,sBAAwBA,GAC1B,MAAOA,GAAcC,kBAGvB,IAAIC,GACAC,EAAoB7S,EAAW8E,UAAU4N,EAAe,oBAC5D,IAAIG,EAAkB,CAEpB,GAAItJ,GAAWhM,EAAEkC,WAAWoT,GAAqBA,EAAkB1T,KAAKuT,GAAiBG,CAGvFD,GADyB,MAAvBrJ,EAASuJ,OAAO,IAAcJ,EAAcpN,GAClCoN,EAAcpN,GAAGiE,EAASwJ,OAAO,IAEjCL,EAAc7N,EAAE0E,GAG1BqJ,EAAUlT,QAAU,GACtBgF,EAAW,oDAAsDgO,EAAcG,kBAAmB,qCAIpGD,GAAYF,EAAcpI,GAI5B,OADAoI,GAAcC,mBAAqBC,EAC5BA,GAITP,uBAAwB,WAClB3U,KAAKiV,0BACAjV,MAAKiV,sBAclB3S,EAAWgT,OAAShT,EAAW8O,SAAS7Q,QACtCyL,WAAY1J,EAAWgJ,OAIvB7G,YAAa,SAAUjC,GACrBA,EAAUA,MAEVxC,KAAKuV,cAAe,EACpBvV,KAAKwV,mBAAmBhT,GAExBF,EAAW8O,SAAS5Q,UAAUiE,YAAYhD,KAAKzB,KAAMwC,IAOvDyK,OAAQ,WAiBN,MAfIjN,MAAK2M,UAGP3M,KAAKwV,qBAEHxV,KAAKuV,aAGPvV,KAAKuV,cAAe,EACVvV,KAAK2M,UAGf3M,KAAKyV,uBAGAnT,EAAW8O,SAAS5Q,UAAUyM,OAAOtL,MAAM3B,KAAM6B,YAI1DwJ,MAAO,WACDrL,KAAK2M,WACT3M,KAAK0V,cAAcrK,QACnB/I,EAAW8O,SAAS5Q,UAAU6K,MAAM1J,MAAM3B,KAAM6B,aAIlDgM,UAAW,SAAS7K,EAAM4K,GACxB,GAAID,KAEJ,OADAA,GAAQ3K,GAAQ4K,EACT5N,KAAK2V,cAAchI,GAAS3K,IAIrCwK,WAAY,SAASG,GAEnB,MADA3N,MAAK2N,QAAU9N,EAAEU,UAAWP,KAAK2N,QAASA,GACnC3N,KAAK2V,cAAchI,IAI5BM,aAAc,SAASjL,GAErB,aADOhD,MAAK2N,QAAQ3K,GACbhD,KAAK0V,cAAczH,aAAajL,IAMzC4S,UAAW,SAASzJ,GAClB,MAAOnM,MAAK0V,cAAc1H,IAAI7B,IAIhCwJ,cAAe,SAAShI,GACtB,GAAIkI,GAAO7V,KAEP0N,GACF1B,WAAY1J,EAAW8E,UAAUpH,KAAM,cACvCoM,SAAU,WAAY,MAAOyJ,GAAKjJ,KAGpC,OAAO5M,MAAK0V,cAAclI,WAAWG,EAASD,IAKhD8H,mBAAoB,SAAUhT,GAC5B,GAAImL,EACJ3N,MAAK8V,qBAGHnI,EADE9N,EAAEkC,WAAW/B,KAAK2N,SACV3N,KAAK2N,QAAQnL,GAEbxC,KAAK2N,YAGjB3N,KAAKwN,WAAWG,IAKlB8H,qBAAsB,WACpBzV,KAAK0V,cAActH,eACnBpO,KAAK0V,cAAcrV,KAAK,SAAS8L,GAC/BA,EAAO3G,WAMXsQ,mBAAoB,WAClB9V,KAAK0V,cAAgB,GAAIpT,GAAWgL,cAEpCtN,KAAKyJ,SAASzJ,KAAK0V,cAAe,aAAc,SAAS1S,EAAMmJ,GAC7DnM,KAAKgD,GAAQmJ,EACbnM,KAAKsD,QAAQ,aAAcN,EAAMmJ,KAGnCnM,KAAKyJ,SAASzJ,KAAK0V,cAAe,gBAAiB,SAAS1S,EAAMmJ,SACzDnM,MAAKgD,GACZhD,KAAKsD,QAAQ,gBAAiBN,EAAMmJ,QAc1C7J,EAAWyT,SAAW,SAAUlW,EAAGF,GACjC,QAASoW,GAASvT,EAAS/B,GAKzBT,KAAKS,KAAOA,EACZT,KAAK0N,SAAW7N,EAAE0I,OAAOvI,KAAM,gBAC/BA,KAAKwC,QAAW3C,EAAEU,UAAWP,KAAK0N,SAAUlL,GAK5CxC,KAAKmH,EAAI,WACP,MAAOnH,MAAKS,KAAK0G,EAAExF,MAAM3B,KAAKS,KAAMoB,YAKtC7B,KAAK0C,WAAWf,MAAM3B,KAAM6B,WAqB9B,MAlBAhC,GAAEU,OAAOwV,EAASvV,UAAWb,EAASiD,QACpCF,WAAY,aAGZ2I,MAAO,WACLrL,KAAK0F,iBAIP8C,cAAelG,EAAWkG,gBAO5BuN,EAASxV,OAAS+B,EAAW/B,OAEtBwV,GACNlW,EAAGF,GAWN2C,EAAWoN,UAAY,SAAUpN,EAAYzC,GAE3C,QAAS6P,GAAUjP,GAGjBT,KAAKyP,UAAYC,EAAUsG,eAAevV,EAAMZ,EAAE0I,OAAO9H,EAAM,cAK/DiP,EAAUuG,KAAKxV,EAAMT,KAAKyP,WACxB,iBAAkB,mBAClB,iBAAkB,mBAClB,SAAU,UACV,iBAAkB,gBAClB,aAAc,UAIlB,GAAIvN,IACFgU,WAAY,SAASA,EAAYzG,GAC/ByG,EAAWvU,MAAM3B,KAAMH,EAAE+B,KAAKC,UAAW,IAKzChC,EAAEQ,KAAKoP,EAAW,SAAS0G,GACzBA,EAAEvJ,IAAM5M,KAAK4M,KACZ5M,OAGLqL,MAAO,SAASA,EAAOoE,GACrB,GAAI3N,GAAOjC,EAAE+B,KAAKC,UAAW,EAC7BwJ,GAAM1J,MAAM3B,KAAM8B,GAMlBjC,EAAEuW,OAAO3G,EAAW,QAAS3N,IAG/BuU,OAAQ,SAASA,EAAQ5G,GACvB,GAAI3N,GAAOjC,EAAE+B,KAAKC,UAAW,EAE7BhC,GAAEQ,KAAKoP,EAAW,SAAS0G,GACzB7T,EAAWkG,cAAc7G,MAAMwU,GAAI,QAAQhU,OAAOL,MAGhDjC,EAAEkC,WAAWsU,IACfA,EAAO1U,MAAM3B,KAAM8B,IAIvBwU,QAAS,SAASA,EAAS7G,GACzB,GAAI3N,GAAOjC,EAAE+B,KAAKC,UAAW,EAE7BhC,GAAEQ,KAAKoP,EAAW,SAAS0G,GACzB7T,EAAWkG,cAAc7G,MAAMwU,GAAI,SAAShU,OAAOL,MAGjDjC,EAAEkC,WAAWuU,IACfA,EAAQ3U,MAAM3B,KAAM8B,IAIxBoP,eAAgB,SAASA,EAAgBzB,GACvCyB,EAAevP,MAAM3B,MACrBH,EAAEuW,OAAO3G,EAAWyB,IAGtBD,iBAAkB,SAASA,EAAkBxB,GAC3CwB,EAAiBtP,MAAM3B,MACvBH,EAAEuW,OAAO3G,EAAWwB,IAGtBzI,cAAe,SAASA,EAAeiH,GACrC,GAAI3N,GAAOjC,EAAE+B,KAAKC,UAAW,EAC7B2G,GAAc7G,MAAM3B,KAAM8B,GAE1BjC,EAAEQ,KAAKoP,EAAW,SAAS0G,GACzB3N,EAAc7G,MAAMwU,EAAGrU,MAI3B6O,eAAgB,SAASA,EAAgBlB,GACvC,GAAI3N,GAAOjC,EAAE+B,KAAKC,UAAW,EAC7B8O,GAAehP,MAAM3B,KAAM8B,GAE3BjC,EAAEQ,KAAKoP,EAAW,SAAS0G,GACzB7T,EAAWiI,iBAAiB4L,EAAGnW,KAAKa,MAAOyB,EAAW8E,UAAU+O,EAAG,gBACnE7T,EAAWiI,iBAAiB4L,EAAGnW,KAAK0Q,WAAYpO,EAAW8E,UAAU+O,EAAG,sBACvEnW,OAGL+Q,iBAAkB,SAASA,EAAkBtB,GAC3C,GAAI3N,GAAOjC,EAAE+B,KAAKC,UAAW,EAC7BkP,GAAiBpP,MAAM3B,KAAM8B,GAE7BjC,EAAEQ,KAAKoP,EAAW,SAAS0G,GACzB7T,EAAWkI,mBAAmB2L,EAAGnW,KAAKa,MAAOyB,EAAW8E,UAAU+O,EAAG,gBACrE7T,EAAWkI,mBAAmB2L,EAAGnW,KAAK0Q,WAAYpO,EAAW8E,UAAU+O,EAAG,sBACzEnW,OAGL8Q,eAAgB,SAASA,EAAgBrB,GACvC,GAAI8G,MACAC,EAAS3W,EAAE0I,OAAOvI,KAAM,KAkC5B,OAhCAH,GAAEQ,KAAKoP,EAAW,SAAS0G,EAAGvH,GAC5B,GAAI6H,MACA3F,EAAiBjR,EAAE0I,OAAO4N,EAAG,cAC7BO,EAAa7W,EAAE0I,OAAO4N,EAAG,MAOzBvO,EAAK/H,EAAEU,UAAWiW,EAAQE,EAI9B5F,GAAiBxO,EAAWqF,gBAAgBmJ,EAAgBlJ,GAE5D/H,EAAEQ,KAAKR,EAAEgI,KAAKiJ,GAAiB,SAAStP,GAMtC,GAAImV,GAAa,GAAKlT,OAAMmL,EAAE,GAAIgI,KAAK,KACnCC,EAAarV,EAAMmV,EACnB5T,EAAalD,EAAEkC,WAAW+O,EAAetP,IAAQsP,EAAetP,GAAO2U,EAAErF,EAAetP,GAE5FiV,GAAQI,GAAYhX,EAAEsG,KAAKpD,EAASoT,KAGtCI,EAAmB1W,EAAEU,OAAOgW,EAAkBE,KAGzCF,GAqDX,OAjDA1W,GAAEU,OAAOmP,GASPoH,gBAAiB,WACf,KAAM,IAAIrQ,OAAM,sKAQlBsQ,iBAAkB,SAASvU,EAAShB,GAClC,MAAIgB,GAAQwU,cACHxU,EAAQwU,cAIVnX,EAAEkC,WAAW2N,EAAUoH,iBAAmBpH,EAAUoH,gBAAgBnV,MAAM3B,KAAM6B,WAAWL,GAAOkO,EAAUoH,gBAAgBtV,IAMrIwU,eAAgB,SAASvV,EAAMgP,GAC7B,MAAO5P,GAAEoX,IAAIxH,EAAW,SAASjN,EAAShB,GACxC,GAAI0V,GAAgBxH,EAAUqH,iBAAiBvU,EAAShB,EACxD,OAAO,IAAI0V,GAAc1U,EAAS/B,MAStCwV,KAAM,SAASxV,EAAMgP,EAAW3F,GAC9BjK,EAAEQ,KAAKyJ,EAAa,SAAShB,GAC3BrI,EAAKqI,GAAcjJ,EAAEsX,QAAQjV,EAAQ4G,GAAarI,EAAKqI,GAAa2G,QAKnEC,GAENpN,EAAYzC,GAqBfyC,EAAW8U,UAAYzX,EAAS0X,OAAO9W,QAErCkE,YAAa,SAASjC,GACpB7C,EAAS0X,OAAO7W,UAAUiE,YAAY9C,MAAM3B,KAAM6B,WAElD7B,KAAKwC,QAAUA,KAEf,IAAI8U,GAAYhV,EAAW8E,UAAUpH,KAAM,aACvCuX,EAAavX,KAAKwX,gBACtBxX,MAAKyX,iBAAiBF,EAAYD,GAClCtX,KAAK2E,GAAG,QAAS3E,KAAK0X,gBAAiB1X,OAKzC2X,SAAU,SAASC,EAAO9O,GACxB,GAAIyO,GAAavX,KAAKwX,gBACtBxX,MAAK6X,aAAaN,EAAYK,EAAO9O,IAKvC4O,gBAAiB,SAASI,EAAWC,GAEnC,GAAIC,GAAYnY,EAAEoY,OAAOjY,KAAKsX,WAAWQ,EAGrCjY,GAAEkC,WAAW/B,KAAKkY,UACpBlY,KAAKkY,QAAQJ,EAAWE,EAAWD,IAOvCN,iBAAkB,SAASF,EAAYD,GACrC,GAAKA,EAAL,CAEA,GAAIa,GAAatY,EAAEgI,KAAKyP,GAAWc,SAEnCvY,GAAEQ,KAAK8X,EAAY,SAASP,GAC1B5X,KAAK6X,aAAaN,EAAYK,EAAON,EAAUM,KAC9C5X,QAGLwX,eAAgB,WACd,MAAOlV,GAAW8E,UAAUpH,KAAM,eAGpC6X,aAAc,SAASN,EAAYK,EAAO9O,GACxC,GAAIpH,GAAS6V,EAAWzO,EAEnBpH,IACHsF,EAAW,WAAa8B,EAAa,qCAGvC9I,KAAK4X,MAAMA,EAAO9O,EAAYjJ,EAAEsG,KAAKzE,EAAQ6V,OAUjDjV,EAAW+V,YAAc,SAAS7V,GAChCxC,KAAK8V,qBACL9V,KAAKsY,eAAiB,GAAIhW,GAAWmI,UACrCzK,KAAKsF,KAAO,GAAI3F,GAAS0C,MAAM6C,gBAC/BlF,KAAKiE,SAAW,GAAItE,GAAS0C,MAAMkC,SACnCvE,KAAKuF,OAAS,GAAI5F,GAAS0C,MAAM2C,gBACjChF,KAAKuY,cAEL1Y,EAAEU,OAAOP,KAAMwC,GAEfxC,KAAKwI,cAAgBlG,EAAWkG,eAGlC3I,EAAEU,OAAO+B,EAAW+V,YAAY7X,UAAWb,EAASiD,QAElDiC,QAAS,WACP7E,KAAKiE,SAASY,QAAQlD,MAAM3B,KAAKiE,SAAUpC,YAI7CoD,QAAS,WACP,MAAOjF,MAAKuF,OAAON,QAAQtD,MAAM3B,KAAKuF,OAAQ1D,YAMhD2W,eAAgB,SAASC,GACvBzY,KAAKsY,eAAehY,IAAImY,IAM1BC,MAAO,SAASlW,GACdxC,KAAKwI,cAAc,oBAAqBhG,GACxCxC,KAAKsY,eAAerN,IAAIzI,EAASxC,MACjCA,KAAKwI,cAAc,mBAAoBhG,GAEvCxC,KAAKwI,cAAc,QAAShG,IAO9BgL,WAAY,SAASG,GACnB,MAAO3N,MAAK2Y,eAAenL,WAAWG,IAIxCS,aAAc,WACZpO,KAAK2Y,eAAevK,gBAMtBH,aAAc,SAAS9B,GACrBnM,KAAK2Y,eAAe1K,aAAa9B,IAMnCyJ,UAAW,SAASzJ,GAClB,MAAOnM,MAAK2Y,eAAe3K,IAAI7B,IAIjCyM,OAAQ,SAASC,EAAaC,GAG5B,GAAIC,GAAczW,EAAW0W,OAAOC,SAASH,GAIzChX,EAAO4B,EAAMjC,KAAKI,UAItB,OAHAC,GAAKoX,QAAQlZ,MAGN+Y,EAAYI,OAAOxX,MAAMoX,EAAajX,IAI/CgU,mBAAoB,WAClB9V,KAAK2Y,eAAiB,GAAIrW,GAAWgL,cAErCtN,KAAKyJ,SAASzJ,KAAK2Y,eAAgB,aAAc,SAAS3V,EAAMmJ,GAC9DnM,KAAKgD,GAAQmJ,IAGfnM,KAAKyJ,SAASzJ,KAAK2Y,eAAgB,gBAAiB,SAAS3V,SACpDhD,MAAKgD,QAMlBV,EAAW+V,YAAY9X,OAAS+B,EAAW/B,OAO3C+B,EAAW0W,OAAS,SAASI,EAAYC,EAAK7W,GAC5CxC,KAAKoZ,WAAaA,EAClBpZ,KAAKwC,QAAU3C,EAAEU,UAAWP,KAAKwC,QAASA,GAG1CxC,KAAK0C,WAAaF,EAAQE,YAAc1C,KAAK0C,WAG7C1C,KAAKuY,cAELvY,KAAKsZ,kCAILtZ,KAAKqZ,IAAMA,EAGXrZ,KAAKuZ,iBAAkB,EAGvBvZ,KAAKwI,cAAgBlG,EAAWkG,cAE5B3I,EAAEkC,WAAW/B,KAAK0C,aACpB1C,KAAK0C,WAAW1C,KAAKwC,QAAS4W,EAAYC,IAI9C/W,EAAW0W,OAAOzY,OAAS+B,EAAW/B,OAItCV,EAAEU,OAAO+B,EAAW0W,OAAOxY,UAAWb,EAASiD,QAI7CF,WAAY,aAIZ8V,eAAgB,SAASrV,GACvBnD,KAAKwZ,sBAAsBlZ,IAAI6C,IAMjCsW,aAAc,SAAStW,GACrBnD,KAAK0Z,oBAAoBpZ,IAAI6C,IAI/BuV,MAAO,SAASlW,GAEVxC,KAAK2Z,iBAGT9Z,EAAEQ,KAAKL,KAAKuY,WAAY,SAASqB,GAE3BA,EAAIL,iBACNK,EAAIlB,MAAMlW,KAKdxC,KAAKwI,cAAc,eAAgBhG,GAEnCxC,KAAKwZ,sBAAsBvO,IAAIzI,EAASxC,MACxCA,KAAK2Z,gBAAiB,EAEtB3Z,KAAKwI,cAAc,QAAShG,KAK9B8N,KAAM,WAECtQ,KAAK2Z,iBACV3Z,KAAK2Z,gBAAiB,EAEtBrX,EAAWkG,cAAc/G,KAAKzB,KAAM,eAIpCH,EAAEQ,KAAKL,KAAKuY,WAAY,SAASqB,GAAMA,EAAItJ,SAG3CtQ,KAAK0Z,oBAAoBzO,IAAIzD,OAAUxH,MAGvCA,KAAKwZ,sBAAsBhU,QAC3BxF,KAAK0Z,oBAAoBlU,QAEzBlD,EAAWkG,cAAc/G,KAAKzB,KAAM,UAKtC6Z,cAAe,SAASf,EAAkBgB,GACxC9Z,KAAK+Z,qBAAqBjB,EAAkBgB,IAK9CC,qBAAsB,SAASnM,EAAYkM,GAEzC,GAAKlM,EAAL,CAGA,GAAI9L,GAAOjC,EAAEma,SACXha,KACAA,KAAKqZ,IACL1Z,EACA2C,EACAA,EAAW6E,EAAGtH,EACdia,GAGFlM,GAAWjM,MAAM3B,KAAM8B,KAMzBwX,gCAAiC,WAC/BtZ,KAAKwZ,sBAAwB,GAAIlX,GAAWmI,UAC5CzK,KAAK0Z,oBAAsB,GAAIpX,GAAWmI,aAK9C5K,EAAEU,OAAO+B,EAAW0W,QAGlBG,OAAQ,SAASE,EAAKR,EAAaC,GACjC,GAAIF,GAASS,EAITS,EAAapW,EAAMjC,KAAKI,UAC5BiY,GAAW9F,OAAO,EAAG,GAKrB6E,EAAcA,EAAY9O,MAAM,IAChC,IAAI/H,GAAS6W,EAAY7W,OAGrBiY,IAWJ,OAVAA,GAAkBjY,EAAO,GAAK8W,EAG9BjZ,EAAEQ,KAAKwY,EAAa,SAASO,EAAYxK,GACvC,GAAIsL,GAAetB,CACnBA,GAAS5Y,KAAKma,WAAWD,EAAcd,EAAYC,EAAKP,GACxD9Y,KAAKoa,qBAAqBF,EAActB,EAAQqB,EAAkBrL,GAAIkL,IACrE9Z,MAGI4Y,GAGTuB,WAAY,SAASD,EAAcd,EAAYC,EAAKgB,GAClD,GAAI7X,GAAU3C,EAAEU,UAAW8Z,GACvBtB,EAAc/Y,KAAKiZ,SAASoB,GAG5BzB,EAASsB,EAAad,EAU1B,OARKR,KAEHA,EAAS,GAAIG,GAAYK,EAAYC,EAAK7W,GAC1C0X,EAAad,GAAcR,EAE3BsB,EAAa3B,WAAWa,GAAcR,GAGjCA,GASTK,SAAU,SAASH,GACjB,GAAIC,GAAczW,EAAW0W,MAE7B,OAAKF,GAMDA,EAAiBtY,oBAAqBuY,GACjCD,EAGFA,EAAiBwB,aAAevB,EAT9BA,GAeXqB,qBAAsB,SAASF,EAActB,EAAQyB,EAAKvY,GACxD,GAAImE,GAAKjG,KAAKua,WAAWF,GACrBd,EAAkBvZ,KAAKwa,oBAAoBH,EAAKzB,EAEhD3S,IACF2S,EAAOiB,cAAc5T,EAAInE,GAG3B9B,KAAKya,oBAAoBP,EAActB,EAAQW,IAGjDiB,oBAAqB,SAASH,EAAKzB,GACjC,GAAI8B,EAEJ,OAAI7a,GAAEkC,WAAWsY,IAASA,EAAI7Z,oBAAqB8B,GAAW0W,QAC5D0B,EAAM9B,EAAOnU,YAAYjE,UAAU+Y,gBAC5B1Z,EAAEkM,YAAY2O,IAAO,EAAOA,GAGjC7a,EAAEqD,SAASmX,IACbK,EAAML,EAAId,gBACH1Z,EAAEkM,YAAY2O,IAAO,EAAOA,IAG9B,GAGTH,WAAY,SAASF,GACnB,OAAIxa,EAAEkC,WAAWsY,IAAUA,EAAI7Z,oBAAqB8B,GAAW0W,OAI3DnZ,EAAEqD,SAASmX,GACNA,EAAIM,OAGN,KAPEN,GAUXI,oBAAqB,SAASP,EAActB,EAAQW,GAClDX,EAAOW,gBAAkBX,EAAOW,iBAAmBA,EAE9CX,EAAOW,kBAAqBX,EAAOgC,8BAIxChC,EAAOgC,6BAA8B,EAErCV,EAAa1B,eAAe,SAAShW,GAC/BoW,EAAOW,iBACTX,EAAOF,MAAMlW,SAOZF,GACNtC,KAAML,SAAUE"}
@@ -1,6 +1,6 @@
1
1
  // MarionetteJS (Backbone.Marionette)
2
2
  // ----------------------------------
3
- // v1.8.2
3
+ // v1.8.3
4
4
  //
5
5
  // Copyright (c)2014 Derick Bailey, Muted Solutions, LLC.
6
6
  // Distributed under MIT license
@@ -18,5 +18,5 @@
18
18
 
19
19
 
20
20
 
21
- Backbone.ChildViewContainer=function(a,b){var c=function(a){this._views={},this._indexByModel={},this._indexByCustom={},this._updateLength(),b.each(a,this.add,this)};b.extend(c.prototype,{add:function(a,b){var c=a.cid;return this._views[c]=a,a.model&&(this._indexByModel[a.model.cid]=c),b&&(this._indexByCustom[b]=c),this._updateLength(),this},findByModel:function(a){return this.findByModelCid(a.cid)},findByModelCid:function(a){var b=this._indexByModel[a];return this.findByCid(b)},findByCustom:function(a){var b=this._indexByCustom[a];return this.findByCid(b)},findByIndex:function(a){return b.values(this._views)[a]},findByCid:function(a){return this._views[a]},remove:function(a){var c=a.cid;return a.model&&delete this._indexByModel[a.model.cid],b.any(this._indexByCustom,function(a,b){return a===c?(delete this._indexByCustom[b],!0):void 0},this),delete this._views[c],this._updateLength(),this},call:function(a){this.apply(a,b.tail(arguments))},apply:function(a,c){b.each(this._views,function(d){b.isFunction(d[a])&&d[a].apply(d,c||[])})},_updateLength:function(){this.length=b.size(this._views)}});var d=["forEach","each","map","find","detect","filter","select","reject","every","all","some","any","include","contains","invoke","toArray","first","initial","rest","last","without","isEmpty","pluck"];return b.each(d,function(a){c.prototype[a]=function(){var c=b.values(this._views),d=[c].concat(b.toArray(arguments));return b[a].apply(b,d)}}),c}(Backbone,_),Backbone.Wreqr=function(a,b,c){"use strict";var d={};return d.Handlers=function(a,b){var c=function(a){this.options=a,this._wreqrHandlers={},b.isFunction(this.initialize)&&this.initialize(a)};return c.extend=a.Model.extend,b.extend(c.prototype,a.Events,{setHandlers:function(a){b.each(a,function(a,c){var d=null;b.isObject(a)&&!b.isFunction(a)&&(d=a.context,a=a.callback),this.setHandler(c,a,d)},this)},setHandler:function(a,b,c){var d={callback:b,context:c};this._wreqrHandlers[a]=d,this.trigger("handler:add",a,b,c)},hasHandler:function(a){return!!this._wreqrHandlers[a]},getHandler:function(a){var b=this._wreqrHandlers[a];if(b)return function(){var a=Array.prototype.slice.apply(arguments);return b.callback.apply(b.context,a)}},removeHandler:function(a){delete this._wreqrHandlers[a]},removeAllHandlers:function(){this._wreqrHandlers={}}}),c}(a,c),d.CommandStorage=function(){var b=function(a){this.options=a,this._commands={},c.isFunction(this.initialize)&&this.initialize(a)};return c.extend(b.prototype,a.Events,{getCommands:function(a){var b=this._commands[a];return b||(b={command:a,instances:[]},this._commands[a]=b),b},addCommand:function(a,b){var c=this.getCommands(a);c.instances.push(b)},clearCommands:function(a){var b=this.getCommands(a);b.instances=[]}}),b}(),d.Commands=function(a){return a.Handlers.extend({storageType:a.CommandStorage,constructor:function(b){this.options=b||{},this._initializeStorage(this.options),this.on("handler:add",this._executeCommands,this);var c=Array.prototype.slice.call(arguments);a.Handlers.prototype.constructor.apply(this,c)},execute:function(a,b){a=arguments[0],b=Array.prototype.slice.call(arguments,1),this.hasHandler(a)?this.getHandler(a).apply(this,b):this.storage.addCommand(a,b)},_executeCommands:function(a,b,d){var e=this.storage.getCommands(a);c.each(e.instances,function(a){b.apply(d,a)}),this.storage.clearCommands(a)},_initializeStorage:function(a){var b,d=a.storageType||this.storageType;b=c.isFunction(d)?new d:d,this.storage=b}})}(d),d.RequestResponse=function(a){return a.Handlers.extend({request:function(){var a=arguments[0],b=Array.prototype.slice.call(arguments,1);return this.hasHandler(a)?this.getHandler(a).apply(this,b):void 0}})}(d),d.EventAggregator=function(a,b){var c=function(){};return c.extend=a.Model.extend,b.extend(c.prototype,a.Events),c}(a,c),d.Channel=function(){var b=function(b){this.vent=new a.Wreqr.EventAggregator,this.reqres=new a.Wreqr.RequestResponse,this.commands=new a.Wreqr.Commands,this.channelName=b};return c.extend(b.prototype,{reset:function(){return this.vent.off(),this.vent.stopListening(),this.reqres.removeAllHandlers(),this.commands.removeAllHandlers(),this},connectEvents:function(a,b){return this._connect("vent",a,b),this},connectCommands:function(a,b){return this._connect("commands",a,b),this},connectRequests:function(a,b){return this._connect("reqres",a,b),this},_connect:function(a,b,d){if(b){d=d||this;var e="vent"===a?"on":"setHandler";c.each(b,function(b,f){this[a][e](f,c.bind(b,d))},this)}}}),b}(d),d.radio=function(a){var b=function(){this._channels={},this.vent={},this.commands={},this.reqres={},this._proxyMethods()};c.extend(b.prototype,{channel:function(a){if(!a)throw new Error("Channel must receive a name");return this._getChannel(a)},_getChannel:function(b){var c=this._channels[b];return c||(c=new a.Channel(b),this._channels[b]=c),c},_proxyMethods:function(){c.each(["vent","commands","reqres"],function(a){c.each(d[a],function(b){this[a][b]=e(this,a,b)},this)},this)}});var d={vent:["on","off","trigger","once","stopListening","listenTo","listenToOnce"],commands:["execute","setHandler","setHandlers","removeHandler","removeAllHandlers"],reqres:["request","setHandler","setHandlers","removeHandler","removeAllHandlers"]},e=function(a,b,c){return function(d){var e=a._getChannel(d)[b],f=Array.prototype.slice.call(arguments,1);e[c].apply(e,f)}};return new b}(d),d}(Backbone,Backbone.Marionette,_);var Marionette=function(a,b,c){"use strict";function d(a,b){var c=new Error(a);throw c.name=b||"Error",c}var e={};b.Marionette=e,e.$=b.$;var f=Array.prototype.slice;return e.extend=b.Model.extend,e.getOption=function(a,b){if(a&&b){var c;return c=a.options&&b in a.options&&void 0!==a.options[b]?a.options[b]:a[b]}},e.normalizeMethods=function(a){var b,d={};return c.each(a,function(a,e){b=a,c.isFunction(b)||(b=this[b]),b&&(d[e]=b)},this),d},e.normalizeUIKeys=function(a,b){return"undefined"!=typeof a?(c.each(c.keys(a),function(c){var d=/@ui.[a-zA-Z_$0-9]*/g;c.match(d)&&(a[c.replace(d,function(a){return b[a.slice(4)]})]=a[c],delete a[c])}),a):void 0},e.actAsCollection=function(a,b){var d=["forEach","each","map","find","detect","filter","select","reject","every","all","some","any","include","contains","invoke","toArray","first","initial","rest","last","without","isEmpty","pluck"];c.each(d,function(d){a[d]=function(){var a=c.values(c.result(this,b)),e=[a].concat(c.toArray(arguments));return c[d].apply(c,e)}})},e.triggerMethod=function(){function a(a,b,c){return c.toUpperCase()}var b=/(^|:)(\w)/gi,d=function(d){var e="on"+d.replace(b,a),f=this[e];return c.isFunction(this.trigger)&&this.trigger.apply(this,arguments),c.isFunction(f)?f.apply(this,c.tail(arguments)):void 0};return d}(),e.MonitorDOMRefresh=function(a){function b(a){a._isShown=!0,e(a)}function d(a){a._isRendered=!0,e(a)}function e(a){a._isShown&&a._isRendered&&f(a)&&c.isFunction(a.triggerMethod)&&a.triggerMethod("dom:refresh")}function f(b){return a.contains(b.el)}return function(a){a.listenTo(a,"show",function(){b(a)}),a.listenTo(a,"render",function(){d(a)})}}(document.documentElement),function(a){function b(a,b,e,f){var g=f.split(/\s+/);c.each(g,function(c){var f=a[c];f||d("Method '"+c+"' was configured as an event handler, but does not exist."),a.listenTo(b,e,f)})}function e(a,b,c,d){a.listenTo(b,c,d)}function f(a,b,d,e){var f=e.split(/\s+/);c.each(f,function(c){var e=a[c];a.stopListening(b,d,e)})}function g(a,b,c,d){a.stopListening(b,c,d)}function h(a,b,d,e,f){b&&d&&(c.isFunction(d)&&(d=d.call(a)),c.each(d,function(d,g){c.isFunction(d)?e(a,b,g,d):f(a,b,g,d)}))}a.bindEntityEvents=function(a,c,d){h(a,c,d,e,b)},a.unbindEntityEvents=function(a,b,c){h(a,b,c,g,f)}}(e),e.Callbacks=function(){this._deferred=e.$.Deferred(),this._callbacks=[]},c.extend(e.Callbacks.prototype,{add:function(a,b){this._callbacks.push({cb:a,ctx:b}),this._deferred.done(function(c,d){b&&(c=b),a.call(c,d)})},run:function(a,b){this._deferred.resolve(b,a)},reset:function(){var a=this._callbacks;this._deferred=e.$.Deferred(),this._callbacks=[],c.each(a,function(a){this.add(a.cb,a.ctx)},this)}}),e.Controller=function(a){this.triggerMethod=e.triggerMethod,this.options=a||{},c.isFunction(this.initialize)&&this.initialize(this.options)},e.Controller.extend=e.extend,c.extend(e.Controller.prototype,b.Events,{close:function(){this.stopListening();var a=Array.prototype.slice.call(arguments);this.triggerMethod.apply(this,["close"].concat(a)),this.off()}}),e.Region=function(a){if(this.options=a||{},this.el=e.getOption(this,"el"),this.el||d("An 'el' must be specified for a region.","NoElError"),this.initialize){var b=Array.prototype.slice.apply(arguments);this.initialize.apply(this,b)}},c.extend(e.Region,{buildRegion:function(a,b){var e=c.isString(a),f=c.isString(a.selector),g=c.isUndefined(a.regionType),h=c.isFunction(a);h||e||f||d("Region must be specified as a Region type, a selector string or an object with selector property");var i,j;e&&(i=a),a.selector&&(i=a.selector,delete a.selector),h&&(j=a),!h&&g&&(j=b),a.regionType&&(j=a.regionType,delete a.regionType),(e||h)&&(a={}),a.el=i;var k=new j(a);return a.parentEl&&(k.getEl=function(b){var d=a.parentEl;return c.isFunction(d)&&(d=d()),d.find(b)}),k}}),c.extend(e.Region.prototype,b.Events,{show:function(a,b){this.ensureEl();var d=b||{},f=a.isClosed||c.isUndefined(a.$el),g=a!==this.currentView,h=!!d.preventClose,i=!h&&g;i&&this.close(),a.render(),e.triggerMethod.call(this,"before:show",a),e.triggerMethod.call(a,"before:show"),(g||f)&&this.open(a),this.currentView=a,e.triggerMethod.call(this,"show",a),e.triggerMethod.call(a,"show")},ensureEl:function(){this.$el&&0!==this.$el.length||(this.$el=this.getEl(this.el))},getEl:function(a){return e.$(a)},open:function(a){this.$el.empty().append(a.el)},close:function(){var a=this.currentView;a&&!a.isClosed&&(a.close?a.close():a.remove&&a.remove(),e.triggerMethod.call(this,"close",a),delete this.currentView)},attachView:function(a){this.currentView=a},reset:function(){this.close(),delete this.$el}}),e.Region.extend=e.extend,e.RegionManager=function(a){var b=a.Controller.extend({constructor:function(b){this._regions={},a.Controller.prototype.constructor.call(this,b)},addRegions:function(a,b){var d={};return c.each(a,function(a,e){c.isString(a)&&(a={selector:a}),a.selector&&(a=c.defaults({},a,b));var f=this.addRegion(e,a);d[e]=f},this),d},addRegion:function(b,d){var e,f=c.isObject(d),g=c.isString(d),h=!!d.selector;return e=g||f&&h?a.Region.buildRegion(d,a.Region):c.isFunction(d)?a.Region.buildRegion(d,a.Region):d,this._store(b,e),this.triggerMethod("region:add",b,e),e},get:function(a){return this._regions[a]},removeRegion:function(a){var b=this._regions[a];this._remove(a,b)},removeRegions:function(){c.each(this._regions,function(a,b){this._remove(b,a)},this)},closeRegions:function(){c.each(this._regions,function(a){a.close()},this)},close:function(){this.removeRegions(),a.Controller.prototype.close.apply(this,arguments)},_store:function(a,b){this._regions[a]=b,this._setLength()},_remove:function(a,b){b.close(),b.stopListening(),delete this._regions[a],this._setLength(),this.triggerMethod("region:remove",a,b)},_setLength:function(){this.length=c.size(this._regions)}});return a.actAsCollection(b.prototype,"_regions"),b}(e),e.TemplateCache=function(a){this.templateId=a},c.extend(e.TemplateCache,{templateCaches:{},get:function(a){var b=this.templateCaches[a];return b||(b=new e.TemplateCache(a),this.templateCaches[a]=b),b.load()},clear:function(){var a,b=f.call(arguments),c=b.length;if(c>0)for(a=0;c>a;a++)delete this.templateCaches[b[a]];else this.templateCaches={}}}),c.extend(e.TemplateCache.prototype,{load:function(){if(this.compiledTemplate)return this.compiledTemplate;var a=this.loadTemplate(this.templateId);return this.compiledTemplate=this.compileTemplate(a),this.compiledTemplate},loadTemplate:function(a){var b=e.$(a).html();return b&&0!==b.length||d("Could not find template: '"+a+"'","NoTemplateError"),b},compileTemplate:function(a){return c.template(a)}}),e.Renderer={render:function(a,b){a||d("Cannot render the template since it's false, null or undefined.","TemplateNotFoundError");var c;return(c="function"==typeof a?a:e.TemplateCache.get(a))(b)}},e.View=b.View.extend({constructor:function(a){c.bindAll(this,"render"),c.isObject(this.behaviors)&&new e.Behaviors(this),this.options=c.extend({},c.result(this,"options"),c.isFunction(a)?a.call(this):a),this.events=this.normalizeUIKeys(c.result(this,"events")),b.View.prototype.constructor.apply(this,arguments),e.MonitorDOMRefresh(this),this.listenTo(this,"show",this.onShowCalled)},triggerMethod:e.triggerMethod,normalizeMethods:e.normalizeMethods,getTemplate:function(){return e.getOption(this,"template")},mixinTemplateHelpers:function(a){a=a||{};var b=e.getOption(this,"templateHelpers");return c.isFunction(b)&&(b=b.call(this)),c.extend(a,b)},normalizeUIKeys:function(a){var b=c.result(this,"ui");return e.normalizeUIKeys(a,b)},configureTriggers:function(){if(this.triggers){var a={},b=this.normalizeUIKeys(c.result(this,"triggers"));return c.each(b,function(b,d){var e=c.isObject(b),f=e?b.event:b;a[d]=function(a){if(a){var c=a.preventDefault,d=a.stopPropagation,g=e?b.preventDefault:c,h=e?b.stopPropagation:d;g&&c&&c.apply(a),h&&d&&d.apply(a)}var i={view:this,model:this.model,collection:this.collection};this.triggerMethod(f,i)}},this),a}},delegateEvents:function(a){this._delegateDOMEvents(a),e.bindEntityEvents(this,this.model,e.getOption(this,"modelEvents")),e.bindEntityEvents(this,this.collection,e.getOption(this,"collectionEvents"))},_delegateDOMEvents:function(a){a=a||this.events,c.isFunction(a)&&(a=a.call(this));var d={},e=c.result(this,"behaviorEvents")||{},f=this.configureTriggers();c.extend(d,e,a,f),b.View.prototype.delegateEvents.call(this,d)},undelegateEvents:function(){var a=Array.prototype.slice.call(arguments);b.View.prototype.undelegateEvents.apply(this,a),e.unbindEntityEvents(this,this.model,e.getOption(this,"modelEvents")),e.unbindEntityEvents(this,this.collection,e.getOption(this,"collectionEvents"))},onShowCalled:function(){},close:function(){if(!this.isClosed){var a=Array.prototype.slice.call(arguments),b=this.triggerMethod.apply(this,["before:close"].concat(a));b!==!1&&(this.isClosed=!0,this.triggerMethod.apply(this,["close"].concat(a)),this.unbindUIElements(),this.remove())}},bindUIElements:function(){if(this.ui){this._uiBindings||(this._uiBindings=this.ui);var a=c.result(this,"_uiBindings");this.ui={},c.each(c.keys(a),function(b){var c=a[b];this.ui[b]=this.$(c)},this)}},unbindUIElements:function(){this.ui&&this._uiBindings&&(c.each(this.ui,function(a,b){delete this.ui[b]},this),this.ui=this._uiBindings,delete this._uiBindings)}}),e.ItemView=e.View.extend({constructor:function(){e.View.prototype.constructor.apply(this,arguments)},serializeData:function(){var a={};return this.model?a=this.model.toJSON():this.collection&&(a={items:this.collection.toJSON()}),a},render:function(){this.isClosed=!1,this.triggerMethod("before:render",this),this.triggerMethod("item:before:render",this);var a=this.serializeData();a=this.mixinTemplateHelpers(a);var b=this.getTemplate(),c=e.Renderer.render(b,a);return this.$el.html(c),this.bindUIElements(),this.triggerMethod("render",this),this.triggerMethod("item:rendered",this),this},close:function(){this.isClosed||(this.triggerMethod("item:before:close"),e.View.prototype.close.apply(this,arguments),this.triggerMethod("item:closed"))}}),e.CollectionView=e.View.extend({itemViewEventPrefix:"itemview",constructor:function(){this._initChildViewStorage(),e.View.prototype.constructor.apply(this,arguments),this._initialEvents(),this.initRenderBuffer()},initRenderBuffer:function(){this.elBuffer=document.createDocumentFragment(),this._bufferedChildren=[]},startBuffering:function(){this.initRenderBuffer(),this.isBuffering=!0},endBuffering:function(){this.isBuffering=!1,this.appendBuffer(this,this.elBuffer),this._triggerShowBufferedChildren(),this.initRenderBuffer()},_triggerShowBufferedChildren:function(){this._isShown&&(c.each(this._bufferedChildren,function(a){e.triggerMethod.call(a,"show")}),this._bufferedChildren=[])},_initialEvents:function(){this.collection&&(this.listenTo(this.collection,"add",this.addChildView),this.listenTo(this.collection,"remove",this.removeItemView),this.listenTo(this.collection,"reset",this.render))},addChildView:function(a){this.closeEmptyView();var b=this.getItemView(a),c=this.collection.indexOf(a);this.addItemView(a,b,c)},onShowCalled:function(){this.children.each(function(a){e.triggerMethod.call(a,"show")})},triggerBeforeRender:function(){this.triggerMethod("before:render",this),this.triggerMethod("collection:before:render",this)},triggerRendered:function(){this.triggerMethod("render",this),this.triggerMethod("collection:rendered",this)},render:function(){return this.isClosed=!1,this.triggerBeforeRender(),this._renderChildren(),this.triggerRendered(),this},_renderChildren:function(){this.startBuffering(),this.closeEmptyView(),this.closeChildren(),this.isEmpty(this.collection)?this.showEmptyView():this.showCollection(),this.endBuffering()},showCollection:function(){var a;this.collection.each(function(b,c){a=this.getItemView(b),this.addItemView(b,a,c)},this)},showEmptyView:function(){var a=this.getEmptyView();if(a&&!this._showingEmptyView){this._showingEmptyView=!0;var c=new b.Model;this.addItemView(c,a,0)}},closeEmptyView:function(){this._showingEmptyView&&(this.closeChildren(),delete this._showingEmptyView)},getEmptyView:function(){return e.getOption(this,"emptyView")},getItemView:function(){var a=e.getOption(this,"itemView");return a||d("An `itemView` must be specified","NoItemViewError"),a},addItemView:function(a,b,d){var f=e.getOption(this,"itemViewOptions");c.isFunction(f)&&(f=f.call(this,a,d));var g=this.buildItemView(a,b,f);return this.addChildViewEventForwarding(g),this.triggerMethod("before:item:added",g),this.children.add(g),this.renderItemView(g,d),this._isShown&&!this.isBuffering&&e.triggerMethod.call(g,"show"),this.triggerMethod("after:item:added",g),g},addChildViewEventForwarding:function(a){var b=e.getOption(this,"itemViewEventPrefix");this.listenTo(a,"all",function(){var d=f.call(arguments),g=d[0],h=this.normalizeMethods(this.getItemEvents());d[0]=b+":"+g,d.splice(1,0,a),"undefined"!=typeof h&&c.isFunction(h[g])&&h[g].apply(this,d),e.triggerMethod.apply(this,d)},this)},getItemEvents:function(){return c.isFunction(this.itemEvents)?this.itemEvents.call(this):this.itemEvents},renderItemView:function(a,b){a.render(),this.appendHtml(this,a,b)},buildItemView:function(a,b,d){var e=c.extend({model:a},d);return new b(e)},removeItemView:function(a){var b=this.children.findByModel(a);this.removeChildView(b),this.checkEmpty()},removeChildView:function(a){a&&(a.close?a.close():a.remove&&a.remove(),this.stopListening(a),this.children.remove(a)),this.triggerMethod("item:removed",a)},isEmpty:function(){return!this.collection||0===this.collection.length},checkEmpty:function(){this.isEmpty(this.collection)&&this.showEmptyView()},appendBuffer:function(a,b){a.$el.append(b)},appendHtml:function(a,b){a.isBuffering?(a.elBuffer.appendChild(b.el),a._bufferedChildren.push(b)):a.$el.append(b.el)},_initChildViewStorage:function(){this.children=new b.ChildViewContainer},close:function(){this.isClosed||(this.triggerMethod("collection:before:close"),this.closeChildren(),this.triggerMethod("collection:closed"),e.View.prototype.close.apply(this,arguments))},closeChildren:function(){this.children.each(function(a){this.removeChildView(a)},this),this.checkEmpty()}}),e.CompositeView=e.CollectionView.extend({constructor:function(){e.CollectionView.prototype.constructor.apply(this,arguments)},_initialEvents:function(){this.once("render",function(){this.collection&&(this.listenTo(this.collection,"add",this.addChildView),this.listenTo(this.collection,"remove",this.removeItemView),this.listenTo(this.collection,"reset",this._renderChildren))})},getItemView:function(){var a=e.getOption(this,"itemView")||this.constructor;return a||d("An `itemView` must be specified","NoItemViewError"),a},serializeData:function(){var a={};return this.model&&(a=this.model.toJSON()),a},render:function(){this.isRendered=!0,this.isClosed=!1,this.resetItemViewContainer(),this.triggerBeforeRender();var a=this.renderModel();return this.$el.html(a),this.bindUIElements(),this.triggerMethod("composite:model:rendered"),this._renderChildren(),this.triggerMethod("composite:rendered"),this.triggerRendered(),this},_renderChildren:function(){this.isRendered&&(this.triggerMethod("composite:collection:before:render"),e.CollectionView.prototype._renderChildren.call(this),this.triggerMethod("composite:collection:rendered"))},renderModel:function(){var a={};a=this.serializeData(),a=this.mixinTemplateHelpers(a);var b=this.getTemplate();return e.Renderer.render(b,a)},appendBuffer:function(a,b){var c=this.getItemViewContainer(a);c.append(b)},appendHtml:function(a,b){if(a.isBuffering)a.elBuffer.appendChild(b.el),a._bufferedChildren.push(b);else{var c=this.getItemViewContainer(a);c.append(b.el)}},getItemViewContainer:function(a){if("$itemViewContainer"in a)return a.$itemViewContainer;var b,f=e.getOption(a,"itemViewContainer");if(f){var g=c.isFunction(f)?f.call(a):f;b="@"===g.charAt(0)&&a.ui?a.ui[g.substr(4)]:a.$(g),b.length<=0&&d("The specified `itemViewContainer` was not found: "+a.itemViewContainer,"ItemViewContainerMissingError")}else b=a.$el;return a.$itemViewContainer=b,b},resetItemViewContainer:function(){this.$itemViewContainer&&delete this.$itemViewContainer}}),e.Layout=e.ItemView.extend({regionType:e.Region,constructor:function(a){a=a||{},this._firstRender=!0,this._initializeRegions(a),e.ItemView.prototype.constructor.call(this,a)},render:function(){return this.isClosed&&this._initializeRegions(),this._firstRender?this._firstRender=!1:this.isClosed||this._reInitializeRegions(),e.ItemView.prototype.render.apply(this,arguments)},close:function(){this.isClosed||(this.regionManager.close(),e.ItemView.prototype.close.apply(this,arguments))},addRegion:function(a,b){var c={};return c[a]=b,this._buildRegions(c)[a]},addRegions:function(a){return this.regions=c.extend({},this.regions,a),this._buildRegions(a)},removeRegion:function(a){return delete this.regions[a],this.regionManager.removeRegion(a)},getRegion:function(a){return this.regionManager.get(a)},_buildRegions:function(a){var b=this,c={regionType:e.getOption(this,"regionType"),parentEl:function(){return b.$el}};return this.regionManager.addRegions(a,c)},_initializeRegions:function(a){var b;this._initRegionManager(),b=c.isFunction(this.regions)?this.regions(a):this.regions||{},this.addRegions(b)},_reInitializeRegions:function(){this.regionManager.closeRegions(),this.regionManager.each(function(a){a.reset()})},_initRegionManager:function(){this.regionManager=new e.RegionManager,this.listenTo(this.regionManager,"region:add",function(a,b){this[a]=b,this.trigger("region:add",a,b)}),this.listenTo(this.regionManager,"region:remove",function(a,b){delete this[a],this.trigger("region:remove",a,b)})}}),e.Behavior=function(a,b){function c(b,c){this.view=c,this.defaults=a.result(this,"defaults")||{},this.options=a.extend({},this.defaults,b),this.$=function(){return this.view.$.apply(this.view,arguments)},this.initialize.apply(this,arguments)}return a.extend(c.prototype,b.Events,{initialize:function(){},close:function(){this.stopListening()},triggerMethod:e.triggerMethod}),c.extend=e.extend,c}(c,b),e.Behaviors=function(a,b){function c(a){this.behaviors=c.parseBehaviors(a,b.result(a,"behaviors")),c.wrap(a,this.behaviors,["bindUIElements","unbindUIElements","delegateEvents","undelegateEvents","onShow","onClose","behaviorEvents","triggerMethod","setElement","close"])}var d={setElement:function(a,c){a.apply(this,b.tail(arguments,2)),b.each(c,function(a){a.$el=this.$el},this)},close:function(a,c){var d=b.tail(arguments,2);a.apply(this,d),b.invoke(c,"close",d)},onShow:function(c,d){var e=b.tail(arguments,2);b.each(d,function(b){a.triggerMethod.apply(b,["show"].concat(e))}),b.isFunction(c)&&c.apply(this,e)},onClose:function(c,d){var e=b.tail(arguments,2);b.each(d,function(b){a.triggerMethod.apply(b,["close"].concat(e))}),b.isFunction(c)&&c.apply(this,e)},bindUIElements:function(a,c){a.apply(this),b.invoke(c,a)},unbindUIElements:function(a,c){a.apply(this),b.invoke(c,a)},triggerMethod:function(a,c){var d=b.tail(arguments,2);a.apply(this,d),b.each(c,function(b){a.apply(b,d)})},delegateEvents:function(c,d){var e=b.tail(arguments,2);c.apply(this,e),b.each(d,function(b){a.bindEntityEvents(b,this.model,a.getOption(b,"modelEvents")),a.bindEntityEvents(b,this.collection,a.getOption(b,"collectionEvents"))},this)},undelegateEvents:function(c,d){var e=b.tail(arguments,2);c.apply(this,e),b.each(d,function(b){a.unbindEntityEvents(b,this.model,a.getOption(b,"modelEvents")),a.unbindEntityEvents(b,this.collection,a.getOption(b,"collectionEvents"))},this)},behaviorEvents:function(c,d){var e={},f=b.result(this,"ui");return b.each(d,function(c,d){var g={},h=b.result(c,"events")||{},i=b.result(c,"ui"),j=b.extend({},f,i);h=a.normalizeUIKeys(h,j),b.each(b.keys(h),function(a){var e=new Array(d+2).join(" "),f=a+e,i=b.isFunction(h[a])?h[a]:c[h[a]];g[f]=b.bind(i,c)}),e=b.extend(e,g)}),e}};return b.extend(c,{behaviorsLookup:function(){throw new Error("You must define where your behaviors are stored. See https://github.com/marionettejs/backbone.marionette/blob/master/docs/marionette.behaviors.md#behaviorslookup")},getBehaviorClass:function(a,d){return a.behaviorClass?a.behaviorClass:b.isFunction(c.behaviorsLookup)?c.behaviorsLookup.apply(this,arguments)[d]:c.behaviorsLookup[d]},parseBehaviors:function(a,d){return b.map(d,function(b,d){var e=c.getBehaviorClass(b,d);return new e(b,a)})},wrap:function(a,c,e){b.each(e,function(e){a[e]=b.partial(d[e],a[e],c)})}}),c}(e,c),e.AppRouter=b.Router.extend({constructor:function(a){b.Router.prototype.constructor.apply(this,arguments),this.options=a||{};var c=e.getOption(this,"appRoutes"),d=this._getController();this.processAppRoutes(d,c),this.on("route",this._processOnRoute,this)},appRoute:function(a,b){var c=this._getController();this._addAppRoute(c,a,b)},_processOnRoute:function(a,b){var d=c.invert(this.appRoutes)[a];c.isFunction(this.onRoute)&&this.onRoute(a,d,b)},processAppRoutes:function(a,b){if(b){var d=c.keys(b).reverse();c.each(d,function(c){this._addAppRoute(a,c,b[c])},this)}},_getController:function(){return e.getOption(this,"controller")},_addAppRoute:function(a,b,e){var f=a[e];f||d("Method '"+e+"' was not found on the controller"),this.route(b,e,c.bind(f,a))}}),e.Application=function(a){this._initRegionManager(),this._initCallbacks=new e.Callbacks,this.vent=new b.Wreqr.EventAggregator,this.commands=new b.Wreqr.Commands,this.reqres=new b.Wreqr.RequestResponse,this.submodules={},c.extend(this,a),this.triggerMethod=e.triggerMethod},c.extend(e.Application.prototype,b.Events,{execute:function(){this.commands.execute.apply(this.commands,arguments)},request:function(){return this.reqres.request.apply(this.reqres,arguments)},addInitializer:function(a){this._initCallbacks.add(a)},start:function(a){this.triggerMethod("initialize:before",a),this._initCallbacks.run(a,this),this.triggerMethod("initialize:after",a),this.triggerMethod("start",a)},addRegions:function(a){return this._regionManager.addRegions(a)},closeRegions:function(){this._regionManager.closeRegions()},removeRegion:function(a){this._regionManager.removeRegion(a)},getRegion:function(a){return this._regionManager.get(a)},module:function(a,b){var c=e.Module.getClass(b),d=f.call(arguments);return d.unshift(this),c.create.apply(c,d)},_initRegionManager:function(){this._regionManager=new e.RegionManager,this.listenTo(this._regionManager,"region:add",function(a,b){this[a]=b}),this.listenTo(this._regionManager,"region:remove",function(a){delete this[a]})}}),e.Application.extend=e.extend,e.Module=function(a,b,d){this.moduleName=a,this.options=c.extend({},this.options,d),this.initialize=d.initialize||this.initialize,this.submodules={},this._setupInitializersAndFinalizers(),this.app=b,this.startWithParent=!0,this.triggerMethod=e.triggerMethod,c.isFunction(this.initialize)&&this.initialize(this.options,a,b)},e.Module.extend=e.extend,c.extend(e.Module.prototype,b.Events,{initialize:function(){},addInitializer:function(a){this._initializerCallbacks.add(a)},addFinalizer:function(a){this._finalizerCallbacks.add(a)},start:function(a){this._isInitialized||(c.each(this.submodules,function(b){b.startWithParent&&b.start(a)}),this.triggerMethod("before:start",a),this._initializerCallbacks.run(a,this),this._isInitialized=!0,this.triggerMethod("start",a))},stop:function(){this._isInitialized&&(this._isInitialized=!1,e.triggerMethod.call(this,"before:stop"),c.each(this.submodules,function(a){a.stop()}),this._finalizerCallbacks.run(void 0,this),this._initializerCallbacks.reset(),this._finalizerCallbacks.reset(),e.triggerMethod.call(this,"stop"))},addDefinition:function(a,b){this._runModuleDefinition(a,b)},_runModuleDefinition:function(a,d){if(a){var f=c.flatten([this,this.app,b,e,e.$,c,d]);a.apply(this,f)}},_setupInitializersAndFinalizers:function(){this._initializerCallbacks=new e.Callbacks,this._finalizerCallbacks=new e.Callbacks}}),c.extend(e.Module,{create:function(a,b,d){var e=a,g=f.call(arguments);g.splice(0,3),b=b.split(".");var h=b.length,i=[];return i[h-1]=d,c.each(b,function(b,c){var f=e;e=this._getModule(f,b,a,d),this._addModuleDefinition(f,e,i[c],g)},this),e},_getModule:function(a,b,d,e){var f=c.extend({},e),g=this.getClass(e),h=a[b];return h||(h=new g(b,d,f),a[b]=h,a.submodules[b]=h),h},getClass:function(a){var b=e.Module;return a?a.prototype instanceof b?a:a.moduleClass||b:b},_addModuleDefinition:function(a,b,c,d){var e=this._getDefine(c),f=this._getStartWithParent(c,b);e&&b.addDefinition(e,d),this._addStartWithParent(a,b,f)},_getStartWithParent:function(a,b){var d;return c.isFunction(a)&&a.prototype instanceof e.Module?(d=b.constructor.prototype.startWithParent,c.isUndefined(d)?!0:d):c.isObject(a)?(d=a.startWithParent,c.isUndefined(d)?!0:d):!0},_getDefine:function(a){return!c.isFunction(a)||a.prototype instanceof e.Module?c.isObject(a)?a.define:null:a},_addStartWithParent:function(a,b,c){b.startWithParent=b.startWithParent&&c,b.startWithParent&&!b.startWithParentIsConfigured&&(b.startWithParentIsConfigured=!0,a.addInitializer(function(a){b.startWithParent&&b.start(a)}))}}),e}(this,Backbone,_);
21
+ Backbone.ChildViewContainer=function(a,b){var c=function(a){this._views={},this._indexByModel={},this._indexByCustom={},this._updateLength(),b.each(a,this.add,this)};b.extend(c.prototype,{add:function(a,b){var c=a.cid;return this._views[c]=a,a.model&&(this._indexByModel[a.model.cid]=c),b&&(this._indexByCustom[b]=c),this._updateLength(),this},findByModel:function(a){return this.findByModelCid(a.cid)},findByModelCid:function(a){var b=this._indexByModel[a];return this.findByCid(b)},findByCustom:function(a){var b=this._indexByCustom[a];return this.findByCid(b)},findByIndex:function(a){return b.values(this._views)[a]},findByCid:function(a){return this._views[a]},remove:function(a){var c=a.cid;return a.model&&delete this._indexByModel[a.model.cid],b.any(this._indexByCustom,function(a,b){return a===c?(delete this._indexByCustom[b],!0):void 0},this),delete this._views[c],this._updateLength(),this},call:function(a){this.apply(a,b.tail(arguments))},apply:function(a,c){b.each(this._views,function(d){b.isFunction(d[a])&&d[a].apply(d,c||[])})},_updateLength:function(){this.length=b.size(this._views)}});var d=["forEach","each","map","find","detect","filter","select","reject","every","all","some","any","include","contains","invoke","toArray","first","initial","rest","last","without","isEmpty","pluck"];return b.each(d,function(a){c.prototype[a]=function(){var c=b.values(this._views),d=[c].concat(b.toArray(arguments));return b[a].apply(b,d)}}),c}(Backbone,_),Backbone.Wreqr=function(a,b,c){"use strict";var d={};return d.Handlers=function(a,b){var c=function(a){this.options=a,this._wreqrHandlers={},b.isFunction(this.initialize)&&this.initialize(a)};return c.extend=a.Model.extend,b.extend(c.prototype,a.Events,{setHandlers:function(a){b.each(a,function(a,c){var d=null;b.isObject(a)&&!b.isFunction(a)&&(d=a.context,a=a.callback),this.setHandler(c,a,d)},this)},setHandler:function(a,b,c){var d={callback:b,context:c};this._wreqrHandlers[a]=d,this.trigger("handler:add",a,b,c)},hasHandler:function(a){return!!this._wreqrHandlers[a]},getHandler:function(a){var b=this._wreqrHandlers[a];if(b)return function(){var a=Array.prototype.slice.apply(arguments);return b.callback.apply(b.context,a)}},removeHandler:function(a){delete this._wreqrHandlers[a]},removeAllHandlers:function(){this._wreqrHandlers={}}}),c}(a,c),d.CommandStorage=function(){var b=function(a){this.options=a,this._commands={},c.isFunction(this.initialize)&&this.initialize(a)};return c.extend(b.prototype,a.Events,{getCommands:function(a){var b=this._commands[a];return b||(b={command:a,instances:[]},this._commands[a]=b),b},addCommand:function(a,b){var c=this.getCommands(a);c.instances.push(b)},clearCommands:function(a){var b=this.getCommands(a);b.instances=[]}}),b}(),d.Commands=function(a){return a.Handlers.extend({storageType:a.CommandStorage,constructor:function(b){this.options=b||{},this._initializeStorage(this.options),this.on("handler:add",this._executeCommands,this);var c=Array.prototype.slice.call(arguments);a.Handlers.prototype.constructor.apply(this,c)},execute:function(a,b){a=arguments[0],b=Array.prototype.slice.call(arguments,1),this.hasHandler(a)?this.getHandler(a).apply(this,b):this.storage.addCommand(a,b)},_executeCommands:function(a,b,d){var e=this.storage.getCommands(a);c.each(e.instances,function(a){b.apply(d,a)}),this.storage.clearCommands(a)},_initializeStorage:function(a){var b,d=a.storageType||this.storageType;b=c.isFunction(d)?new d:d,this.storage=b}})}(d),d.RequestResponse=function(a){return a.Handlers.extend({request:function(){var a=arguments[0],b=Array.prototype.slice.call(arguments,1);return this.hasHandler(a)?this.getHandler(a).apply(this,b):void 0}})}(d),d.EventAggregator=function(a,b){var c=function(){};return c.extend=a.Model.extend,b.extend(c.prototype,a.Events),c}(a,c),d.Channel=function(){var b=function(b){this.vent=new a.Wreqr.EventAggregator,this.reqres=new a.Wreqr.RequestResponse,this.commands=new a.Wreqr.Commands,this.channelName=b};return c.extend(b.prototype,{reset:function(){return this.vent.off(),this.vent.stopListening(),this.reqres.removeAllHandlers(),this.commands.removeAllHandlers(),this},connectEvents:function(a,b){return this._connect("vent",a,b),this},connectCommands:function(a,b){return this._connect("commands",a,b),this},connectRequests:function(a,b){return this._connect("reqres",a,b),this},_connect:function(a,b,d){if(b){d=d||this;var e="vent"===a?"on":"setHandler";c.each(b,function(b,f){this[a][e](f,c.bind(b,d))},this)}}}),b}(d),d.radio=function(a){var b=function(){this._channels={},this.vent={},this.commands={},this.reqres={},this._proxyMethods()};c.extend(b.prototype,{channel:function(a){if(!a)throw new Error("Channel must receive a name");return this._getChannel(a)},_getChannel:function(b){var c=this._channels[b];return c||(c=new a.Channel(b),this._channels[b]=c),c},_proxyMethods:function(){c.each(["vent","commands","reqres"],function(a){c.each(d[a],function(b){this[a][b]=e(this,a,b)},this)},this)}});var d={vent:["on","off","trigger","once","stopListening","listenTo","listenToOnce"],commands:["execute","setHandler","setHandlers","removeHandler","removeAllHandlers"],reqres:["request","setHandler","setHandlers","removeHandler","removeAllHandlers"]},e=function(a,b,c){return function(d){var e=a._getChannel(d)[b],f=Array.prototype.slice.call(arguments,1);e[c].apply(e,f)}};return new b}(d),d}(Backbone,Backbone.Marionette,_);var Marionette=function(a,b,c){"use strict";function d(a,b){var c=new Error(a);throw c.name=b||"Error",c}var e={};b.Marionette=e,e.$=b.$;var f=Array.prototype.slice;return e.extend=b.Model.extend,e.getOption=function(a,b){if(a&&b){var c;return c=a.options&&b in a.options&&void 0!==a.options[b]?a.options[b]:a[b]}},e.normalizeMethods=function(a){var b,d={};return c.each(a,function(a,e){b=a,c.isFunction(b)||(b=this[b]),b&&(d[e]=b)},this),d},e.normalizeUIKeys=function(a,b){return"undefined"!=typeof a?(c.each(c.keys(a),function(c){var d=/@ui.[a-zA-Z_$0-9]*/g;c.match(d)&&(a[c.replace(d,function(a){return b[a.slice(4)]})]=a[c],delete a[c])}),a):void 0},e.actAsCollection=function(a,b){var d=["forEach","each","map","find","detect","filter","select","reject","every","all","some","any","include","contains","invoke","toArray","first","initial","rest","last","without","isEmpty","pluck"];c.each(d,function(d){a[d]=function(){var a=c.values(c.result(this,b)),e=[a].concat(c.toArray(arguments));return c[d].apply(c,e)}})},e.triggerMethod=function(){function a(a,b,c){return c.toUpperCase()}var b=/(^|:)(\w)/gi,d=function(d){var e="on"+d.replace(b,a),f=this[e];return c.isFunction(this.trigger)&&this.trigger.apply(this,arguments),c.isFunction(f)?f.apply(this,c.tail(arguments)):void 0};return d}(),e.MonitorDOMRefresh=function(a){function b(a){a._isShown=!0,e(a)}function d(a){a._isRendered=!0,e(a)}function e(a){a._isShown&&a._isRendered&&f(a)&&c.isFunction(a.triggerMethod)&&a.triggerMethod("dom:refresh")}function f(b){return a.contains(b.el)}return function(a){a.listenTo(a,"show",function(){b(a)}),a.listenTo(a,"render",function(){d(a)})}}(document.documentElement),function(a){function b(a,b,e,f){var g=f.split(/\s+/);c.each(g,function(c){var f=a[c];f||d("Method '"+c+"' was configured as an event handler, but does not exist."),a.listenTo(b,e,f)})}function e(a,b,c,d){a.listenTo(b,c,d)}function f(a,b,d,e){var f=e.split(/\s+/);c.each(f,function(c){var e=a[c];a.stopListening(b,d,e)})}function g(a,b,c,d){a.stopListening(b,c,d)}function h(a,b,d,e,f){b&&d&&(c.isFunction(d)&&(d=d.call(a)),c.each(d,function(d,g){c.isFunction(d)?e(a,b,g,d):f(a,b,g,d)}))}a.bindEntityEvents=function(a,c,d){h(a,c,d,e,b)},a.unbindEntityEvents=function(a,b,c){h(a,b,c,g,f)}}(e),e.Callbacks=function(){this._deferred=e.$.Deferred(),this._callbacks=[]},c.extend(e.Callbacks.prototype,{add:function(a,b){this._callbacks.push({cb:a,ctx:b}),this._deferred.done(function(c,d){b&&(c=b),a.call(c,d)})},run:function(a,b){this._deferred.resolve(b,a)},reset:function(){var a=this._callbacks;this._deferred=e.$.Deferred(),this._callbacks=[],c.each(a,function(a){this.add(a.cb,a.ctx)},this)}}),e.Controller=function(a){this.triggerMethod=e.triggerMethod,this.options=a||{},c.isFunction(this.initialize)&&this.initialize(this.options)},e.Controller.extend=e.extend,c.extend(e.Controller.prototype,b.Events,{close:function(){this.stopListening();var a=Array.prototype.slice.call(arguments);this.triggerMethod.apply(this,["close"].concat(a)),this.off()}}),e.Region=function(a){if(this.options=a||{},this.el=e.getOption(this,"el"),this.el||d("An 'el' must be specified for a region.","NoElError"),this.initialize){var b=Array.prototype.slice.apply(arguments);this.initialize.apply(this,b)}},c.extend(e.Region,{buildRegion:function(a,b){var e=c.isString(a),f=c.isString(a.selector),g=c.isUndefined(a.regionType),h=c.isFunction(a);h||e||f||d("Region must be specified as a Region type, a selector string or an object with selector property");var i,j;e&&(i=a),a.selector&&(i=a.selector,delete a.selector),h&&(j=a),!h&&g&&(j=b),a.regionType&&(j=a.regionType,delete a.regionType),(e||h)&&(a={}),a.el=i;var k=new j(a);return a.parentEl&&(k.getEl=function(b){var d=a.parentEl;return c.isFunction(d)&&(d=d()),d.find(b)}),k}}),c.extend(e.Region.prototype,b.Events,{show:function(a,b){this.ensureEl();var d=b||{},f=a.isClosed||c.isUndefined(a.$el),g=a!==this.currentView,h=!!d.preventClose,i=!h&&g;i&&this.close(),a.render(),e.triggerMethod.call(this,"before:show",a),e.triggerMethod.call(a,"before:show"),(g||f)&&this.open(a),this.currentView=a,e.triggerMethod.call(this,"show",a),e.triggerMethod.call(a,"show")},ensureEl:function(){this.$el&&0!==this.$el.length||(this.$el=this.getEl(this.el))},getEl:function(a){return e.$(a)},open:function(a){this.$el.empty().append(a.el)},close:function(){var a=this.currentView;a&&!a.isClosed&&(a.close?a.close():a.remove&&a.remove(),e.triggerMethod.call(this,"close",a),delete this.currentView)},attachView:function(a){this.currentView=a},reset:function(){this.close(),delete this.$el}}),e.Region.extend=e.extend,e.RegionManager=function(a){var b=a.Controller.extend({constructor:function(b){this._regions={},a.Controller.prototype.constructor.call(this,b)},addRegions:function(a,b){var d={};return c.each(a,function(a,e){c.isString(a)&&(a={selector:a}),a.selector&&(a=c.defaults({},a,b));var f=this.addRegion(e,a);d[e]=f},this),d},addRegion:function(b,d){var e,f=c.isObject(d),g=c.isString(d),h=!!d.selector;return e=g||f&&h?a.Region.buildRegion(d,a.Region):c.isFunction(d)?a.Region.buildRegion(d,a.Region):d,this._store(b,e),this.triggerMethod("region:add",b,e),e},get:function(a){return this._regions[a]},removeRegion:function(a){var b=this._regions[a];this._remove(a,b)},removeRegions:function(){c.each(this._regions,function(a,b){this._remove(b,a)},this)},closeRegions:function(){c.each(this._regions,function(a){a.close()},this)},close:function(){this.removeRegions(),a.Controller.prototype.close.apply(this,arguments)},_store:function(a,b){this._regions[a]=b,this._setLength()},_remove:function(a,b){b.close(),b.stopListening(),delete this._regions[a],this._setLength(),this.triggerMethod("region:remove",a,b)},_setLength:function(){this.length=c.size(this._regions)}});return a.actAsCollection(b.prototype,"_regions"),b}(e),e.TemplateCache=function(a){this.templateId=a},c.extend(e.TemplateCache,{templateCaches:{},get:function(a){var b=this.templateCaches[a];return b||(b=new e.TemplateCache(a),this.templateCaches[a]=b),b.load()},clear:function(){var a,b=f.call(arguments),c=b.length;if(c>0)for(a=0;c>a;a++)delete this.templateCaches[b[a]];else this.templateCaches={}}}),c.extend(e.TemplateCache.prototype,{load:function(){if(this.compiledTemplate)return this.compiledTemplate;var a=this.loadTemplate(this.templateId);return this.compiledTemplate=this.compileTemplate(a),this.compiledTemplate},loadTemplate:function(a){var b=e.$(a).html();return b&&0!==b.length||d("Could not find template: '"+a+"'","NoTemplateError"),b},compileTemplate:function(a){return c.template(a)}}),e.Renderer={render:function(a,b){a||d("Cannot render the template since it's false, null or undefined.","TemplateNotFoundError");var c;return(c="function"==typeof a?a:e.TemplateCache.get(a))(b)}},e.View=b.View.extend({constructor:function(a){c.bindAll(this,"render"),this.options=c.extend({},c.result(this,"options"),c.isFunction(a)?a.call(this):a),this.events=this.normalizeUIKeys(c.result(this,"events")),c.isObject(this.behaviors)&&new e.Behaviors(this),b.View.prototype.constructor.apply(this,arguments),e.MonitorDOMRefresh(this),this.listenTo(this,"show",this.onShowCalled)},triggerMethod:e.triggerMethod,normalizeMethods:e.normalizeMethods,getTemplate:function(){return e.getOption(this,"template")},mixinTemplateHelpers:function(a){a=a||{};var b=e.getOption(this,"templateHelpers");return c.isFunction(b)&&(b=b.call(this)),c.extend(a,b)},normalizeUIKeys:function(a){var b=c.result(this,"ui");return e.normalizeUIKeys(a,b)},configureTriggers:function(){if(this.triggers){var a={},b=this.normalizeUIKeys(c.result(this,"triggers"));return c.each(b,function(b,d){var e=c.isObject(b),f=e?b.event:b;a[d]=function(a){if(a){var c=a.preventDefault,d=a.stopPropagation,g=e?b.preventDefault:c,h=e?b.stopPropagation:d;g&&c&&c.apply(a),h&&d&&d.apply(a)}var i={view:this,model:this.model,collection:this.collection};this.triggerMethod(f,i)}},this),a}},delegateEvents:function(a){this._delegateDOMEvents(a),e.bindEntityEvents(this,this.model,e.getOption(this,"modelEvents")),e.bindEntityEvents(this,this.collection,e.getOption(this,"collectionEvents"))},_delegateDOMEvents:function(a){a=a||this.events,c.isFunction(a)&&(a=a.call(this));var d={},e=c.result(this,"behaviorEvents")||{},f=this.configureTriggers();c.extend(d,e,a,f),b.View.prototype.delegateEvents.call(this,d)},undelegateEvents:function(){var a=Array.prototype.slice.call(arguments);b.View.prototype.undelegateEvents.apply(this,a),e.unbindEntityEvents(this,this.model,e.getOption(this,"modelEvents")),e.unbindEntityEvents(this,this.collection,e.getOption(this,"collectionEvents"))},onShowCalled:function(){},close:function(){if(!this.isClosed){var a=Array.prototype.slice.call(arguments),b=this.triggerMethod.apply(this,["before:close"].concat(a));b!==!1&&(this.isClosed=!0,this.triggerMethod.apply(this,["close"].concat(a)),this.unbindUIElements(),this.remove())}},bindUIElements:function(){if(this.ui){this._uiBindings||(this._uiBindings=this.ui);var a=c.result(this,"_uiBindings");this.ui={},c.each(c.keys(a),function(b){var c=a[b];this.ui[b]=this.$(c)},this)}},unbindUIElements:function(){this.ui&&this._uiBindings&&(c.each(this.ui,function(a,b){delete this.ui[b]},this),this.ui=this._uiBindings,delete this._uiBindings)}}),e.ItemView=e.View.extend({constructor:function(){e.View.prototype.constructor.apply(this,arguments)},serializeData:function(){var a={};return this.model?a=this.model.toJSON():this.collection&&(a={items:this.collection.toJSON()}),a},render:function(){this.isClosed=!1,this.triggerMethod("before:render",this),this.triggerMethod("item:before:render",this);var a=this.serializeData();a=this.mixinTemplateHelpers(a);var b=this.getTemplate(),c=e.Renderer.render(b,a);return this.$el.html(c),this.bindUIElements(),this.triggerMethod("render",this),this.triggerMethod("item:rendered",this),this},close:function(){this.isClosed||(this.triggerMethod("item:before:close"),e.View.prototype.close.apply(this,arguments),this.triggerMethod("item:closed"))}}),e.CollectionView=e.View.extend({itemViewEventPrefix:"itemview",constructor:function(){this._initChildViewStorage(),e.View.prototype.constructor.apply(this,arguments),this._initialEvents(),this.initRenderBuffer()},initRenderBuffer:function(){this.elBuffer=document.createDocumentFragment(),this._bufferedChildren=[]},startBuffering:function(){this.initRenderBuffer(),this.isBuffering=!0},endBuffering:function(){this.isBuffering=!1,this.appendBuffer(this,this.elBuffer),this._triggerShowBufferedChildren(),this.initRenderBuffer()},_triggerShowBufferedChildren:function(){this._isShown&&(c.each(this._bufferedChildren,function(a){e.triggerMethod.call(a,"show")}),this._bufferedChildren=[])},_initialEvents:function(){this.collection&&(this.listenTo(this.collection,"add",this.addChildView),this.listenTo(this.collection,"remove",this.removeItemView),this.listenTo(this.collection,"reset",this.render))},addChildView:function(a){this.closeEmptyView();var b=this.getItemView(a),c=this.collection.indexOf(a);this.addItemView(a,b,c)},onShowCalled:function(){this.children.each(function(a){e.triggerMethod.call(a,"show")})},triggerBeforeRender:function(){this.triggerMethod("before:render",this),this.triggerMethod("collection:before:render",this)},triggerRendered:function(){this.triggerMethod("render",this),this.triggerMethod("collection:rendered",this)},render:function(){return this.isClosed=!1,this.triggerBeforeRender(),this._renderChildren(),this.triggerRendered(),this},_renderChildren:function(){this.startBuffering(),this.closeEmptyView(),this.closeChildren(),this.isEmpty(this.collection)?this.showEmptyView():this.showCollection(),this.endBuffering()},showCollection:function(){var a;this.collection.each(function(b,c){a=this.getItemView(b),this.addItemView(b,a,c)},this)},showEmptyView:function(){var a=this.getEmptyView();if(a&&!this._showingEmptyView){this._showingEmptyView=!0;var c=new b.Model;this.addItemView(c,a,0)}},closeEmptyView:function(){this._showingEmptyView&&(this.closeChildren(),delete this._showingEmptyView)},getEmptyView:function(){return e.getOption(this,"emptyView")},getItemView:function(){var a=e.getOption(this,"itemView");return a||d("An `itemView` must be specified","NoItemViewError"),a},addItemView:function(a,b,d){var f=e.getOption(this,"itemViewOptions");c.isFunction(f)&&(f=f.call(this,a,d));var g=this.buildItemView(a,b,f);return this.addChildViewEventForwarding(g),this.triggerMethod("before:item:added",g),this.children.add(g),this.renderItemView(g,d),this._isShown&&!this.isBuffering&&e.triggerMethod.call(g,"show"),this.triggerMethod("after:item:added",g),g},addChildViewEventForwarding:function(a){var b=e.getOption(this,"itemViewEventPrefix");this.listenTo(a,"all",function(){var d=f.call(arguments),g=d[0],h=this.normalizeMethods(this.getItemEvents());d[0]=b+":"+g,d.splice(1,0,a),"undefined"!=typeof h&&c.isFunction(h[g])&&h[g].apply(this,d),e.triggerMethod.apply(this,d)},this)},getItemEvents:function(){return c.isFunction(this.itemEvents)?this.itemEvents.call(this):this.itemEvents},renderItemView:function(a,b){a.render(),this.appendHtml(this,a,b)},buildItemView:function(a,b,d){var e=c.extend({model:a},d);return new b(e)},removeItemView:function(a){var b=this.children.findByModel(a);this.removeChildView(b),this.checkEmpty()},removeChildView:function(a){a&&(a.close?a.close():a.remove&&a.remove(),this.stopListening(a),this.children.remove(a)),this.triggerMethod("item:removed",a)},isEmpty:function(){return!this.collection||0===this.collection.length},checkEmpty:function(){this.isEmpty(this.collection)&&this.showEmptyView()},appendBuffer:function(a,b){a.$el.append(b)},appendHtml:function(a,b){a.isBuffering?(a.elBuffer.appendChild(b.el),a._bufferedChildren.push(b)):a.$el.append(b.el)},_initChildViewStorage:function(){this.children=new b.ChildViewContainer},close:function(){this.isClosed||(this.triggerMethod("collection:before:close"),this.closeChildren(),this.triggerMethod("collection:closed"),e.View.prototype.close.apply(this,arguments))},closeChildren:function(){this.children.each(function(a){this.removeChildView(a)},this),this.checkEmpty()}}),e.CompositeView=e.CollectionView.extend({constructor:function(){e.CollectionView.prototype.constructor.apply(this,arguments)},_initialEvents:function(){this.once("render",function(){this.collection&&(this.listenTo(this.collection,"add",this.addChildView),this.listenTo(this.collection,"remove",this.removeItemView),this.listenTo(this.collection,"reset",this._renderChildren))})},getItemView:function(){var a=e.getOption(this,"itemView")||this.constructor;return a||d("An `itemView` must be specified","NoItemViewError"),a},serializeData:function(){var a={};return this.model&&(a=this.model.toJSON()),a},render:function(){this.isRendered=!0,this.isClosed=!1,this.resetItemViewContainer(),this.triggerBeforeRender();var a=this.renderModel();return this.$el.html(a),this.bindUIElements(),this.triggerMethod("composite:model:rendered"),this._renderChildren(),this.triggerMethod("composite:rendered"),this.triggerRendered(),this},_renderChildren:function(){this.isRendered&&(this.triggerMethod("composite:collection:before:render"),e.CollectionView.prototype._renderChildren.call(this),this.triggerMethod("composite:collection:rendered"))},renderModel:function(){var a={};a=this.serializeData(),a=this.mixinTemplateHelpers(a);var b=this.getTemplate();return e.Renderer.render(b,a)},appendBuffer:function(a,b){var c=this.getItemViewContainer(a);c.append(b)},appendHtml:function(a,b){if(a.isBuffering)a.elBuffer.appendChild(b.el),a._bufferedChildren.push(b);else{var c=this.getItemViewContainer(a);c.append(b.el)}},getItemViewContainer:function(a){if("$itemViewContainer"in a)return a.$itemViewContainer;var b,f=e.getOption(a,"itemViewContainer");if(f){var g=c.isFunction(f)?f.call(a):f;b="@"===g.charAt(0)&&a.ui?a.ui[g.substr(4)]:a.$(g),b.length<=0&&d("The specified `itemViewContainer` was not found: "+a.itemViewContainer,"ItemViewContainerMissingError")}else b=a.$el;return a.$itemViewContainer=b,b},resetItemViewContainer:function(){this.$itemViewContainer&&delete this.$itemViewContainer}}),e.Layout=e.ItemView.extend({regionType:e.Region,constructor:function(a){a=a||{},this._firstRender=!0,this._initializeRegions(a),e.ItemView.prototype.constructor.call(this,a)},render:function(){return this.isClosed&&this._initializeRegions(),this._firstRender?this._firstRender=!1:this.isClosed||this._reInitializeRegions(),e.ItemView.prototype.render.apply(this,arguments)},close:function(){this.isClosed||(this.regionManager.close(),e.ItemView.prototype.close.apply(this,arguments))},addRegion:function(a,b){var c={};return c[a]=b,this._buildRegions(c)[a]},addRegions:function(a){return this.regions=c.extend({},this.regions,a),this._buildRegions(a)},removeRegion:function(a){return delete this.regions[a],this.regionManager.removeRegion(a)},getRegion:function(a){return this.regionManager.get(a)},_buildRegions:function(a){var b=this,c={regionType:e.getOption(this,"regionType"),parentEl:function(){return b.$el}};return this.regionManager.addRegions(a,c)},_initializeRegions:function(a){var b;this._initRegionManager(),b=c.isFunction(this.regions)?this.regions(a):this.regions||{},this.addRegions(b)},_reInitializeRegions:function(){this.regionManager.closeRegions(),this.regionManager.each(function(a){a.reset()})},_initRegionManager:function(){this.regionManager=new e.RegionManager,this.listenTo(this.regionManager,"region:add",function(a,b){this[a]=b,this.trigger("region:add",a,b)}),this.listenTo(this.regionManager,"region:remove",function(a,b){delete this[a],this.trigger("region:remove",a,b)})}}),e.Behavior=function(a,b){function c(b,c){this.view=c,this.defaults=a.result(this,"defaults")||{},this.options=a.extend({},this.defaults,b),this.$=function(){return this.view.$.apply(this.view,arguments)},this.initialize.apply(this,arguments)}return a.extend(c.prototype,b.Events,{initialize:function(){},close:function(){this.stopListening()},triggerMethod:e.triggerMethod}),c.extend=e.extend,c}(c,b),e.Behaviors=function(a,b){function c(a){this.behaviors=c.parseBehaviors(a,b.result(a,"behaviors")),c.wrap(a,this.behaviors,["bindUIElements","unbindUIElements","delegateEvents","undelegateEvents","onShow","onClose","behaviorEvents","triggerMethod","setElement","close"])}var d={setElement:function(a,c){a.apply(this,b.tail(arguments,2)),b.each(c,function(a){a.$el=this.$el},this)},close:function(a,c){var d=b.tail(arguments,2);a.apply(this,d),b.invoke(c,"close",d)},onShow:function(c,d){var e=b.tail(arguments,2);b.each(d,function(b){a.triggerMethod.apply(b,["show"].concat(e))}),b.isFunction(c)&&c.apply(this,e)},onClose:function(c,d){var e=b.tail(arguments,2);b.each(d,function(b){a.triggerMethod.apply(b,["close"].concat(e))}),b.isFunction(c)&&c.apply(this,e)},bindUIElements:function(a,c){a.apply(this),b.invoke(c,a)},unbindUIElements:function(a,c){a.apply(this),b.invoke(c,a)},triggerMethod:function(a,c){var d=b.tail(arguments,2);a.apply(this,d),b.each(c,function(b){a.apply(b,d)})},delegateEvents:function(c,d){var e=b.tail(arguments,2);c.apply(this,e),b.each(d,function(b){a.bindEntityEvents(b,this.model,a.getOption(b,"modelEvents")),a.bindEntityEvents(b,this.collection,a.getOption(b,"collectionEvents"))},this)},undelegateEvents:function(c,d){var e=b.tail(arguments,2);c.apply(this,e),b.each(d,function(b){a.unbindEntityEvents(b,this.model,a.getOption(b,"modelEvents")),a.unbindEntityEvents(b,this.collection,a.getOption(b,"collectionEvents"))},this)},behaviorEvents:function(c,d){var e={},f=b.result(this,"ui");return b.each(d,function(c,d){var g={},h=b.result(c,"events")||{},i=b.result(c,"ui"),j=b.extend({},f,i);h=a.normalizeUIKeys(h,j),b.each(b.keys(h),function(a){var e=new Array(d+2).join(" "),f=a+e,i=b.isFunction(h[a])?h[a]:c[h[a]];g[f]=b.bind(i,c)}),e=b.extend(e,g)}),e}};return b.extend(c,{behaviorsLookup:function(){throw new Error("You must define where your behaviors are stored. See https://github.com/marionettejs/backbone.marionette/blob/master/docs/marionette.behaviors.md#behaviorslookup")},getBehaviorClass:function(a,d){return a.behaviorClass?a.behaviorClass:b.isFunction(c.behaviorsLookup)?c.behaviorsLookup.apply(this,arguments)[d]:c.behaviorsLookup[d]},parseBehaviors:function(a,d){return b.map(d,function(b,d){var e=c.getBehaviorClass(b,d);return new e(b,a)})},wrap:function(a,c,e){b.each(e,function(e){a[e]=b.partial(d[e],a[e],c)})}}),c}(e,c),e.AppRouter=b.Router.extend({constructor:function(a){b.Router.prototype.constructor.apply(this,arguments),this.options=a||{};var c=e.getOption(this,"appRoutes"),d=this._getController();this.processAppRoutes(d,c),this.on("route",this._processOnRoute,this)},appRoute:function(a,b){var c=this._getController();this._addAppRoute(c,a,b)},_processOnRoute:function(a,b){var d=c.invert(this.appRoutes)[a];c.isFunction(this.onRoute)&&this.onRoute(a,d,b)},processAppRoutes:function(a,b){if(b){var d=c.keys(b).reverse();c.each(d,function(c){this._addAppRoute(a,c,b[c])},this)}},_getController:function(){return e.getOption(this,"controller")},_addAppRoute:function(a,b,e){var f=a[e];f||d("Method '"+e+"' was not found on the controller"),this.route(b,e,c.bind(f,a))}}),e.Application=function(a){this._initRegionManager(),this._initCallbacks=new e.Callbacks,this.vent=new b.Wreqr.EventAggregator,this.commands=new b.Wreqr.Commands,this.reqres=new b.Wreqr.RequestResponse,this.submodules={},c.extend(this,a),this.triggerMethod=e.triggerMethod},c.extend(e.Application.prototype,b.Events,{execute:function(){this.commands.execute.apply(this.commands,arguments)},request:function(){return this.reqres.request.apply(this.reqres,arguments)},addInitializer:function(a){this._initCallbacks.add(a)},start:function(a){this.triggerMethod("initialize:before",a),this._initCallbacks.run(a,this),this.triggerMethod("initialize:after",a),this.triggerMethod("start",a)},addRegions:function(a){return this._regionManager.addRegions(a)},closeRegions:function(){this._regionManager.closeRegions()},removeRegion:function(a){this._regionManager.removeRegion(a)},getRegion:function(a){return this._regionManager.get(a)},module:function(a,b){var c=e.Module.getClass(b),d=f.call(arguments);return d.unshift(this),c.create.apply(c,d)},_initRegionManager:function(){this._regionManager=new e.RegionManager,this.listenTo(this._regionManager,"region:add",function(a,b){this[a]=b}),this.listenTo(this._regionManager,"region:remove",function(a){delete this[a]})}}),e.Application.extend=e.extend,e.Module=function(a,b,d){this.moduleName=a,this.options=c.extend({},this.options,d),this.initialize=d.initialize||this.initialize,this.submodules={},this._setupInitializersAndFinalizers(),this.app=b,this.startWithParent=!0,this.triggerMethod=e.triggerMethod,c.isFunction(this.initialize)&&this.initialize(this.options,a,b)},e.Module.extend=e.extend,c.extend(e.Module.prototype,b.Events,{initialize:function(){},addInitializer:function(a){this._initializerCallbacks.add(a)},addFinalizer:function(a){this._finalizerCallbacks.add(a)},start:function(a){this._isInitialized||(c.each(this.submodules,function(b){b.startWithParent&&b.start(a)}),this.triggerMethod("before:start",a),this._initializerCallbacks.run(a,this),this._isInitialized=!0,this.triggerMethod("start",a))},stop:function(){this._isInitialized&&(this._isInitialized=!1,e.triggerMethod.call(this,"before:stop"),c.each(this.submodules,function(a){a.stop()}),this._finalizerCallbacks.run(void 0,this),this._initializerCallbacks.reset(),this._finalizerCallbacks.reset(),e.triggerMethod.call(this,"stop"))},addDefinition:function(a,b){this._runModuleDefinition(a,b)},_runModuleDefinition:function(a,d){if(a){var f=c.flatten([this,this.app,b,e,e.$,c,d]);a.apply(this,f)}},_setupInitializersAndFinalizers:function(){this._initializerCallbacks=new e.Callbacks,this._finalizerCallbacks=new e.Callbacks}}),c.extend(e.Module,{create:function(a,b,d){var e=a,g=f.call(arguments);g.splice(0,3),b=b.split(".");var h=b.length,i=[];return i[h-1]=d,c.each(b,function(b,c){var f=e;e=this._getModule(f,b,a,d),this._addModuleDefinition(f,e,i[c],g)},this),e},_getModule:function(a,b,d,e){var f=c.extend({},e),g=this.getClass(e),h=a[b];return h||(h=new g(b,d,f),a[b]=h,a.submodules[b]=h),h},getClass:function(a){var b=e.Module;return a?a.prototype instanceof b?a:a.moduleClass||b:b},_addModuleDefinition:function(a,b,c,d){var e=this._getDefine(c),f=this._getStartWithParent(c,b);e&&b.addDefinition(e,d),this._addStartWithParent(a,b,f)},_getStartWithParent:function(a,b){var d;return c.isFunction(a)&&a.prototype instanceof e.Module?(d=b.constructor.prototype.startWithParent,c.isUndefined(d)?!0:d):c.isObject(a)?(d=a.startWithParent,c.isUndefined(d)?!0:d):!0},_getDefine:function(a){return!c.isFunction(a)||a.prototype instanceof e.Module?c.isObject(a)?a.define:null:a},_addStartWithParent:function(a,b,c){b.startWithParent=b.startWithParent&&c,b.startWithParent&&!b.startWithParentIsConfigured&&(b.startWithParentIsConfigured=!0,a.addInitializer(function(a){b.startWithParent&&b.start(a)}))}}),e}(this,Backbone,_);
22
22
  //# sourceMappingURL=backbone.marionette.map
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: marionette-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.8.2
4
+ version: 1.8.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Godfrey Chan
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-04-18 00:00:00.000000000 Z
12
+ date: 2014-04-30 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: railties